bibledit-gtk-4.9/000755 000766 000024 00000000000 12517415766 014071 5ustar00teusstaff000000 000000 bibledit-gtk-4.9/acinclude.m4000664 000766 000024 00000000000 12221507124 016230 0ustar00teusstaff000000 000000 bibledit-gtk-4.9/aclocal.m4000644 000766 000024 00000172267 12517415673 015745 0ustar00teusstaff000000 000000 # generated automatically by aclocal 1.15 -*- Autoconf -*- # Copyright (C) 1996-2014 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])]) m4_ifndef([AC_AUTOCONF_VERSION], [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.69],, [m4_warning([this file was generated for autoconf 2.69. You have another version of autoconf. It may work, but is not guaranteed to. If you have problems, you may need to regenerate the build system entirely. To do so, use the procedure documented by the package, typically 'autoreconf'.])]) # ============================================================================ # http://www.gnu.org/software/autoconf-archive/ax_cxx_compile_stdcxx_11.html # ============================================================================ # # SYNOPSIS # # AX_CXX_COMPILE_STDCXX_11([ext|noext],[mandatory|optional]) # # DESCRIPTION # # Check for baseline language coverage in the compiler for the C++11 # standard; if necessary, add switches to CXXFLAGS to enable support. # # The first argument, if specified, indicates whether you insist on an # extended mode (e.g. -std=gnu++11) or a strict conformance mode (e.g. # -std=c++11). If neither is specified, you get whatever works, with # preference for an extended mode. # # The second argument, if specified 'mandatory' or if left unspecified, # indicates that baseline C++11 support is required and that the macro # should error out if no mode with that support is found. If specified # 'optional', then configuration proceeds regardless, after defining # HAVE_CXX11 if and only if a supporting mode is found. # # LICENSE # # Copyright (c) 2008 Benjamin Kosnik # Copyright (c) 2012 Zack Weinberg # Copyright (c) 2013 Roy Stogner # Copyright (c) 2014 Alexey Sokolov # # Copying and distribution of this file, with or without modification, are # permitted in any medium without royalty provided the copyright notice # and this notice are preserved. This file is offered as-is, without any # warranty. #serial 4 m4_define([_AX_CXX_COMPILE_STDCXX_11_testbody], [[ template struct check { static_assert(sizeof(int) <= sizeof(T), "not big enough"); }; struct Base { virtual void f() {} }; struct Child : public Base { virtual void f() override {} }; typedef check> right_angle_brackets; int a; decltype(a) b; typedef check check_type; check_type c; check_type&& cr = static_cast(c); auto d = a; auto l = [](){}; ]]) AC_DEFUN([AX_CXX_COMPILE_STDCXX_11], [dnl m4_if([$1], [], [], [$1], [ext], [], [$1], [noext], [], [m4_fatal([invalid argument `$1' to AX_CXX_COMPILE_STDCXX_11])])dnl m4_if([$2], [], [ax_cxx_compile_cxx11_required=true], [$2], [mandatory], [ax_cxx_compile_cxx11_required=true], [$2], [optional], [ax_cxx_compile_cxx11_required=false], [m4_fatal([invalid second argument `$2' to AX_CXX_COMPILE_STDCXX_11])]) AC_LANG_PUSH([C++])dnl ac_success=no AC_CACHE_CHECK(whether $CXX supports C++11 features by default, ax_cv_cxx_compile_cxx11, [AC_COMPILE_IFELSE([AC_LANG_SOURCE([_AX_CXX_COMPILE_STDCXX_11_testbody])], [ax_cv_cxx_compile_cxx11=yes], [ax_cv_cxx_compile_cxx11=no])]) if test x$ax_cv_cxx_compile_cxx11 = xyes; then ac_success=yes fi m4_if([$1], [noext], [], [dnl if test x$ac_success = xno; then for switch in -std=gnu++11 -std=gnu++0x; do cachevar=AS_TR_SH([ax_cv_cxx_compile_cxx11_$switch]) AC_CACHE_CHECK(whether $CXX supports C++11 features with $switch, $cachevar, [ac_save_CXXFLAGS="$CXXFLAGS" CXXFLAGS="$CXXFLAGS $switch" AC_COMPILE_IFELSE([AC_LANG_SOURCE([_AX_CXX_COMPILE_STDCXX_11_testbody])], [eval $cachevar=yes], [eval $cachevar=no]) CXXFLAGS="$ac_save_CXXFLAGS"]) if eval test x\$$cachevar = xyes; then CXXFLAGS="$CXXFLAGS $switch" ac_success=yes break fi done fi]) m4_if([$1], [ext], [], [dnl if test x$ac_success = xno; then for switch in -std=c++11 -std=c++0x; do cachevar=AS_TR_SH([ax_cv_cxx_compile_cxx11_$switch]) AC_CACHE_CHECK(whether $CXX supports C++11 features with $switch, $cachevar, [ac_save_CXXFLAGS="$CXXFLAGS" CXXFLAGS="$CXXFLAGS $switch" AC_COMPILE_IFELSE([AC_LANG_SOURCE([_AX_CXX_COMPILE_STDCXX_11_testbody])], [eval $cachevar=yes], [eval $cachevar=no]) CXXFLAGS="$ac_save_CXXFLAGS"]) if eval test x\$$cachevar = xyes; then CXXFLAGS="$CXXFLAGS $switch" ac_success=yes break fi done fi]) AC_LANG_POP([C++]) if test x$ax_cxx_compile_cxx11_required = xtrue; then if test x$ac_success = xno; then AC_MSG_ERROR([*** A compiler with support for C++11 language features is required.]) fi else if test x$ac_success = xno; then HAVE_CXX11=0 AC_MSG_NOTICE([No compiler with C++11 support was found]) else HAVE_CXX11=1 AC_DEFINE(HAVE_CXX11,1, [define if the compiler supports basic C++11 syntax]) fi AC_SUBST(HAVE_CXX11) fi ]) # Configure paths for LIBXML2 # Mike Hommey 2004-06-19 # use CPPFLAGS instead of CFLAGS # Toshio Kuratomi 2001-04-21 # Adapted from: # Configure paths for GLIB # Owen Taylor 97-11-3 dnl AM_PATH_XML2([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]]) dnl Test for XML, and define XML_CPPFLAGS and XML_LIBS dnl AC_DEFUN([AM_PATH_XML2],[ AC_ARG_WITH(xml-prefix, [ --with-xml-prefix=PFX Prefix where libxml is installed (optional)], xml_config_prefix="$withval", xml_config_prefix="") AC_ARG_WITH(xml-exec-prefix, [ --with-xml-exec-prefix=PFX Exec prefix where libxml is installed (optional)], xml_config_exec_prefix="$withval", xml_config_exec_prefix="") AC_ARG_ENABLE(xmltest, [ --disable-xmltest Do not try to compile and run a test LIBXML program],, enable_xmltest=yes) if test x$xml_config_exec_prefix != x ; then xml_config_args="$xml_config_args" if test x${XML2_CONFIG+set} != xset ; then XML2_CONFIG=$xml_config_exec_prefix/bin/xml2-config fi fi if test x$xml_config_prefix != x ; then xml_config_args="$xml_config_args --prefix=$xml_config_prefix" if test x${XML2_CONFIG+set} != xset ; then XML2_CONFIG=$xml_config_prefix/bin/xml2-config fi fi AC_PATH_PROG(XML2_CONFIG, xml2-config, no) min_xml_version=ifelse([$1], ,2.0.0,[$1]) AC_MSG_CHECKING(for libxml - version >= $min_xml_version) no_xml="" if test "$XML2_CONFIG" = "no" ; then no_xml=yes else XML_CPPFLAGS=`$XML2_CONFIG $xml_config_args --cflags` XML_LIBS=`$XML2_CONFIG $xml_config_args --libs` xml_config_major_version=`$XML2_CONFIG $xml_config_args --version | \ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'` xml_config_minor_version=`$XML2_CONFIG $xml_config_args --version | \ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'` xml_config_micro_version=`$XML2_CONFIG $xml_config_args --version | \ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'` if test "x$enable_xmltest" = "xyes" ; then ac_save_CPPFLAGS="$CPPFLAGS" ac_save_LIBS="$LIBS" CPPFLAGS="$CPPFLAGS $XML_CPPFLAGS" LIBS="$XML_LIBS $LIBS" dnl dnl Now check if the installed libxml is sufficiently new. dnl (Also sanity checks the results of xml2-config to some extent) dnl rm -f conf.xmltest AC_TRY_RUN([ #include #include #include #include int main() { int xml_major_version, xml_minor_version, xml_micro_version; int major, minor, micro; char *tmp_version; system("touch conf.xmltest"); /* Capture xml2-config output via autoconf/configure variables */ /* HP/UX 9 (%@#!) writes to sscanf strings */ tmp_version = (char *)strdup("$min_xml_version"); if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, µ) != 3) { printf("%s, bad version string from xml2-config\n", "$min_xml_version"); exit(1); } free(tmp_version); /* Capture the version information from the header files */ tmp_version = (char *)strdup(LIBXML_DOTTED_VERSION); if (sscanf(tmp_version, "%d.%d.%d", &xml_major_version, &xml_minor_version, &xml_micro_version) != 3) { printf("%s, bad version string from libxml includes\n", "LIBXML_DOTTED_VERSION"); exit(1); } free(tmp_version); /* Compare xml2-config output to the libxml headers */ if ((xml_major_version != $xml_config_major_version) || (xml_minor_version != $xml_config_minor_version) || (xml_micro_version != $xml_config_micro_version)) { printf("*** libxml header files (version %d.%d.%d) do not match\n", xml_major_version, xml_minor_version, xml_micro_version); printf("*** xml2-config (version %d.%d.%d)\n", $xml_config_major_version, $xml_config_minor_version, $xml_config_micro_version); return 1; } /* Compare the headers to the library to make sure we match */ /* Less than ideal -- doesn't provide us with return value feedback, * only exits if there's a serious mismatch between header and library. */ LIBXML_TEST_VERSION; /* Test that the library is greater than our minimum version */ if ((xml_major_version > major) || ((xml_major_version == major) && (xml_minor_version > minor)) || ((xml_major_version == major) && (xml_minor_version == minor) && (xml_micro_version >= micro))) { return 0; } else { printf("\n*** An old version of libxml (%d.%d.%d) was found.\n", xml_major_version, xml_minor_version, xml_micro_version); printf("*** You need a version of libxml newer than %d.%d.%d. The latest version of\n", major, minor, micro); printf("*** libxml is always available from ftp://ftp.xmlsoft.org.\n"); printf("***\n"); printf("*** If you have already installed a sufficiently new version, this error\n"); printf("*** probably means that the wrong copy of the xml2-config shell script is\n"); printf("*** being found. The easiest way to fix this is to remove the old version\n"); printf("*** of LIBXML, but you can also set the XML2_CONFIG environment to point to the\n"); printf("*** correct copy of xml2-config. (In this case, you will have to\n"); printf("*** modify your LD_LIBRARY_PATH enviroment variable, or edit /etc/ld.so.conf\n"); printf("*** so that the correct libraries are found at run-time))\n"); } return 1; } ],, no_xml=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"]) CPPFLAGS="$ac_save_CPPFLAGS" LIBS="$ac_save_LIBS" fi fi if test "x$no_xml" = x ; then AC_MSG_RESULT(yes (version $xml_config_major_version.$xml_config_minor_version.$xml_config_micro_version)) ifelse([$2], , :, [$2]) else AC_MSG_RESULT(no) if test "$XML2_CONFIG" = "no" ; then echo "*** The xml2-config script installed by LIBXML could not be found" echo "*** If libxml was installed in PREFIX, make sure PREFIX/bin is in" echo "*** your path, or set the XML2_CONFIG environment variable to the" echo "*** full path to xml2-config." else if test -f conf.xmltest ; then : else echo "*** Could not run libxml test program, checking why..." CPPFLAGS="$CPPFLAGS $XML_CPPFLAGS" LIBS="$LIBS $XML_LIBS" AC_TRY_LINK([ #include #include ], [ LIBXML_TEST_VERSION; return 0;], [ echo "*** The test program compiled, but did not run. This usually means" echo "*** that the run-time linker is not finding LIBXML or finding the wrong" echo "*** version of LIBXML. If it is not finding LIBXML, you'll need to set your" echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point" echo "*** to the installed location Also, make sure you have run ldconfig if that" echo "*** is required on your system" echo "***" echo "*** If you have an old version installed, it is best to remove it, although" echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH" ], [ echo "*** The test program failed to compile or link. See the file config.log for the" echo "*** exact error that occured. This usually means LIBXML was incorrectly installed" echo "*** or that you have moved LIBXML since it was installed. In the latter case, you" echo "*** may want to edit the xml2-config script: $XML2_CONFIG" ]) CPPFLAGS="$ac_save_CPPFLAGS" LIBS="$ac_save_LIBS" fi fi XML_CPPFLAGS="" XML_LIBS="" ifelse([$3], , :, [$3]) fi AC_SUBST(XML_CPPFLAGS) AC_SUBST(XML_LIBS) rm -f conf.xmltest ]) # pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*- # serial 1 (pkg-config-0.24) # # Copyright © 2004 Scott James Remnant . # # 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. # PKG_PROG_PKG_CONFIG([MIN-VERSION]) # ---------------------------------- AC_DEFUN([PKG_PROG_PKG_CONFIG], [m4_pattern_forbid([^_?PKG_[A-Z_]+$]) m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$]) m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$]) AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility]) AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path]) AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path]) if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then AC_PATH_TOOL([PKG_CONFIG], [pkg-config]) fi if test -n "$PKG_CONFIG"; then _pkg_min_version=m4_default([$1], [0.9.0]) AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version]) if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then AC_MSG_RESULT([yes]) else AC_MSG_RESULT([no]) PKG_CONFIG="" fi fi[]dnl ])# PKG_PROG_PKG_CONFIG # PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) # # Check to see whether a particular set of modules exists. Similar # to PKG_CHECK_MODULES(), but does not set variables or print errors. # # Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG]) # only at the first occurence in configure.ac, so if the first place # it's called might be skipped (such as if it is within an "if", you # have to call PKG_CHECK_EXISTS manually # -------------------------------------------------------------- AC_DEFUN([PKG_CHECK_EXISTS], [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl if test -n "$PKG_CONFIG" && \ AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then m4_default([$2], [:]) m4_ifvaln([$3], [else $3])dnl fi]) # _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES]) # --------------------------------------------- m4_define([_PKG_CONFIG], [if test -n "$$1"; then pkg_cv_[]$1="$$1" elif test -n "$PKG_CONFIG"; then PKG_CHECK_EXISTS([$3], [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes ], [pkg_failed=yes]) else pkg_failed=untried fi[]dnl ])# _PKG_CONFIG # _PKG_SHORT_ERRORS_SUPPORTED # ----------------------------- AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED], [AC_REQUIRE([PKG_PROG_PKG_CONFIG]) if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi[]dnl ])# _PKG_SHORT_ERRORS_SUPPORTED # PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND], # [ACTION-IF-NOT-FOUND]) # # # Note that if there is a possibility the first call to # PKG_CHECK_MODULES might not happen, you should be sure to include an # explicit call to PKG_PROG_PKG_CONFIG in your configure.ac # # # -------------------------------------------------------------- AC_DEFUN([PKG_CHECK_MODULES], [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl pkg_failed=no AC_MSG_CHECKING([for $1]) _PKG_CONFIG([$1][_CFLAGS], [cflags], [$2]) _PKG_CONFIG([$1][_LIBS], [libs], [$2]) m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS and $1[]_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details.]) if test $pkg_failed = yes; then AC_MSG_RESULT([no]) _PKG_SHORT_ERRORS_SUPPORTED if test $_pkg_short_errors_supported = yes; then $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$2" 2>&1` else $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$2" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD m4_default([$4], [AC_MSG_ERROR( [Package requirements ($2) were not met: $$1_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. _PKG_TEXT])[]dnl ]) elif test $pkg_failed = untried; then AC_MSG_RESULT([no]) m4_default([$4], [AC_MSG_FAILURE( [The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. _PKG_TEXT To get pkg-config, see .])[]dnl ]) else $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS $1[]_LIBS=$pkg_cv_[]$1[]_LIBS AC_MSG_RESULT([yes]) $3 fi[]dnl ])# PKG_CHECK_MODULES # PKG_INSTALLDIR(DIRECTORY) # ------------------------- # Substitutes the variable pkgconfigdir as the location where a module # should install pkg-config .pc files. By default the directory is # $libdir/pkgconfig, but the default can be changed by passing # DIRECTORY. The user can override through the --with-pkgconfigdir # parameter. AC_DEFUN([PKG_INSTALLDIR], [m4_pushdef([pkg_default], [m4_default([$1], ['${libdir}/pkgconfig'])]) m4_pushdef([pkg_description], [pkg-config installation directory @<:@]pkg_default[@:>@]) AC_ARG_WITH([pkgconfigdir], [AS_HELP_STRING([--with-pkgconfigdir], pkg_description)],, [with_pkgconfigdir=]pkg_default) AC_SUBST([pkgconfigdir], [$with_pkgconfigdir]) m4_popdef([pkg_default]) m4_popdef([pkg_description]) ]) dnl PKG_INSTALLDIR # PKG_NOARCH_INSTALLDIR(DIRECTORY) # ------------------------- # Substitutes the variable noarch_pkgconfigdir as the location where a # module should install arch-independent pkg-config .pc files. By # default the directory is $datadir/pkgconfig, but the default can be # changed by passing DIRECTORY. The user can override through the # --with-noarch-pkgconfigdir parameter. AC_DEFUN([PKG_NOARCH_INSTALLDIR], [m4_pushdef([pkg_default], [m4_default([$1], ['${datadir}/pkgconfig'])]) m4_pushdef([pkg_description], [pkg-config arch-independent installation directory @<:@]pkg_default[@:>@]) AC_ARG_WITH([noarch-pkgconfigdir], [AS_HELP_STRING([--with-noarch-pkgconfigdir], pkg_description)],, [with_noarch_pkgconfigdir=]pkg_default) AC_SUBST([noarch_pkgconfigdir], [$with_noarch_pkgconfigdir]) m4_popdef([pkg_default]) m4_popdef([pkg_description]) ]) dnl PKG_NOARCH_INSTALLDIR # PKG_CHECK_VAR(VARIABLE, MODULE, CONFIG-VARIABLE, # [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) # ------------------------------------------- # Retrieves the value of the pkg-config variable for the given module. AC_DEFUN([PKG_CHECK_VAR], [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl AC_ARG_VAR([$1], [value of $3 for $2, overriding pkg-config])dnl _PKG_CONFIG([$1], [variable="][$3]["], [$2]) AS_VAR_COPY([$1], [pkg_cv_][$1]) AS_VAR_IF([$1], [""], [$5], [$4])dnl ])# PKG_CHECK_VAR # Copyright (C) 2002-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_AUTOMAKE_VERSION(VERSION) # ---------------------------- # Automake X.Y traces this macro to ensure aclocal.m4 has been # generated from the m4 files accompanying Automake X.Y. # (This private macro should not be called outside this file.) AC_DEFUN([AM_AUTOMAKE_VERSION], [am__api_version='1.15' dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to dnl require some minimum version. Point them to the right macro. m4_if([$1], [1.15], [], [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl ]) # _AM_AUTOCONF_VERSION(VERSION) # ----------------------------- # aclocal traces this macro to find the Autoconf version. # This is a private macro too. Using m4_define simplifies # the logic in aclocal, which can simply ignore this definition. m4_define([_AM_AUTOCONF_VERSION], []) # AM_SET_CURRENT_AUTOMAKE_VERSION # ------------------------------- # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced. # This function is AC_REQUIREd by AM_INIT_AUTOMAKE. AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], [AM_AUTOMAKE_VERSION([1.15])dnl m4_ifndef([AC_AUTOCONF_VERSION], [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))]) # AM_AUX_DIR_EXPAND -*- Autoconf -*- # Copyright (C) 2001-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets # $ac_aux_dir to '$srcdir/foo'. In other projects, it is set to # '$srcdir', '$srcdir/..', or '$srcdir/../..'. # # Of course, Automake must honor this variable whenever it calls a # tool from the auxiliary directory. The problem is that $srcdir (and # therefore $ac_aux_dir as well) can be either absolute or relative, # depending on how configure is run. This is pretty annoying, since # it makes $ac_aux_dir quite unusable in subdirectories: in the top # source directory, any form will work fine, but in subdirectories a # relative path needs to be adjusted first. # # $ac_aux_dir/missing # fails when called from a subdirectory if $ac_aux_dir is relative # $top_srcdir/$ac_aux_dir/missing # fails if $ac_aux_dir is absolute, # fails when called from a subdirectory in a VPATH build with # a relative $ac_aux_dir # # The reason of the latter failure is that $top_srcdir and $ac_aux_dir # are both prefixed by $srcdir. In an in-source build this is usually # harmless because $srcdir is '.', but things will broke when you # start a VPATH build or use an absolute $srcdir. # # So we could use something similar to $top_srcdir/$ac_aux_dir/missing, # iff we strip the leading $srcdir from $ac_aux_dir. That would be: # am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"` # and then we would define $MISSING as # MISSING="\${SHELL} $am_aux_dir/missing" # This will work as long as MISSING is not called from configure, because # unfortunately $(top_srcdir) has no meaning in configure. # However there are other variables, like CC, which are often used in # configure, and could therefore not use this "fixed" $ac_aux_dir. # # Another solution, used here, is to always expand $ac_aux_dir to an # absolute PATH. The drawback is that using absolute paths prevent a # configured tree to be moved without reconfiguration. AC_DEFUN([AM_AUX_DIR_EXPAND], [AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl # Expand $ac_aux_dir to an absolute path. am_aux_dir=`cd "$ac_aux_dir" && pwd` ]) # AM_CONDITIONAL -*- Autoconf -*- # Copyright (C) 1997-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_CONDITIONAL(NAME, SHELL-CONDITION) # ------------------------------------- # Define a conditional. AC_DEFUN([AM_CONDITIONAL], [AC_PREREQ([2.52])dnl m4_if([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])], [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl AC_SUBST([$1_TRUE])dnl AC_SUBST([$1_FALSE])dnl _AM_SUBST_NOTMAKE([$1_TRUE])dnl _AM_SUBST_NOTMAKE([$1_FALSE])dnl m4_define([_AM_COND_VALUE_$1], [$2])dnl if $2; then $1_TRUE= $1_FALSE='#' else $1_TRUE='#' $1_FALSE= fi AC_CONFIG_COMMANDS_PRE( [if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then AC_MSG_ERROR([[conditional "$1" was never defined. Usually this means the macro was only invoked conditionally.]]) fi])]) # Copyright (C) 1999-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # There are a few dirty hacks below to avoid letting 'AC_PROG_CC' be # written in clear, in which case automake, when reading aclocal.m4, # will think it sees a *use*, and therefore will trigger all it's # C support machinery. Also note that it means that autoscan, seeing # CC etc. in the Makefile, will ask for an AC_PROG_CC use... # _AM_DEPENDENCIES(NAME) # ---------------------- # See how the compiler implements dependency checking. # NAME is "CC", "CXX", "OBJC", "OBJCXX", "UPC", or "GJC". # We try a few techniques and use that to set a single cache variable. # # We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was # modified to invoke _AM_DEPENDENCIES(CC); we would have a circular # dependency, and given that the user is not expected to run this macro, # just rely on AC_PROG_CC. AC_DEFUN([_AM_DEPENDENCIES], [AC_REQUIRE([AM_SET_DEPDIR])dnl AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl AC_REQUIRE([AM_MAKE_INCLUDE])dnl AC_REQUIRE([AM_DEP_TRACK])dnl m4_if([$1], [CC], [depcc="$CC" am_compiler_list=], [$1], [CXX], [depcc="$CXX" am_compiler_list=], [$1], [OBJC], [depcc="$OBJC" am_compiler_list='gcc3 gcc'], [$1], [OBJCXX], [depcc="$OBJCXX" am_compiler_list='gcc3 gcc'], [$1], [UPC], [depcc="$UPC" am_compiler_list=], [$1], [GCJ], [depcc="$GCJ" am_compiler_list='gcc3 gcc'], [depcc="$$1" am_compiler_list=]) AC_CACHE_CHECK([dependency style of $depcc], [am_cv_$1_dependencies_compiler_type], [if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then # We make a subdir and do the tests there. Otherwise we can end up # making bogus files that we don't know about and never remove. For # instance it was reported that on HP-UX the gcc test will end up # making a dummy file named 'D' -- because '-MD' means "put the output # in D". rm -rf conftest.dir mkdir conftest.dir # Copy depcomp to subdir because otherwise we won't find it if we're # using a relative directory. cp "$am_depcomp" conftest.dir cd conftest.dir # We will build objects and dependencies in a subdirectory because # it helps to detect inapplicable dependency modes. For instance # both Tru64's cc and ICC support -MD to output dependencies as a # side effect of compilation, but ICC will put the dependencies in # the current directory while Tru64 will put them in the object # directory. mkdir sub am_cv_$1_dependencies_compiler_type=none if test "$am_compiler_list" = ""; then am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp` fi am__universal=false m4_case([$1], [CC], [case " $depcc " in #( *\ -arch\ *\ -arch\ *) am__universal=true ;; esac], [CXX], [case " $depcc " in #( *\ -arch\ *\ -arch\ *) am__universal=true ;; esac]) for depmode in $am_compiler_list; do # Setup a source with many dependencies, because some compilers # like to wrap large dependency lists on column 80 (with \), and # we should not choose a depcomp mode which is confused by this. # # We need to recreate these files for each test, as the compiler may # overwrite some of them when testing with obscure command lines. # This happens at least with the AIX C compiler. : > sub/conftest.c for i in 1 2 3 4 5 6; do echo '#include "conftst'$i'.h"' >> sub/conftest.c # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with # Solaris 10 /bin/sh. echo '/* dummy */' > sub/conftst$i.h done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf # We check with '-c' and '-o' for the sake of the "dashmstdout" # mode. It turns out that the SunPro C++ compiler does not properly # handle '-M -o', and we need to detect this. Also, some Intel # versions had trouble with output in subdirs. am__obj=sub/conftest.${OBJEXT-o} am__minus_obj="-o $am__obj" case $depmode in gcc) # This depmode causes a compiler race in universal mode. test "$am__universal" = false || continue ;; nosideeffect) # After this tag, mechanisms are not by side-effect, so they'll # only be used when explicitly requested. if test "x$enable_dependency_tracking" = xyes; then continue else break fi ;; msvc7 | msvc7msys | msvisualcpp | msvcmsys) # This compiler won't grok '-c -o', but also, the minuso test has # not run yet. These depmodes are late enough in the game, and # so weak that their functioning should not be impacted. am__obj=conftest.${OBJEXT-o} am__minus_obj= ;; none) break ;; esac if depmode=$depmode \ source=sub/conftest.c object=$am__obj \ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ >/dev/null 2>conftest.err && grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && grep $am__obj sub/conftest.Po > /dev/null 2>&1 && ${MAKE-make} -s -f confmf > /dev/null 2>&1; then # icc doesn't choke on unknown options, it will just issue warnings # or remarks (even with -Werror). So we grep stderr for any message # that says an option was ignored or not supported. # When given -MP, icc 7.0 and 7.1 complain thusly: # icc: Command line warning: ignoring option '-M'; no argument required # The diagnosis changed in icc 8.0: # icc: Command line remark: option '-MP' not supported if (grep 'ignoring option' conftest.err || grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else am_cv_$1_dependencies_compiler_type=$depmode break fi fi done cd .. rm -rf conftest.dir else am_cv_$1_dependencies_compiler_type=none fi ]) AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type]) AM_CONDITIONAL([am__fastdep$1], [ test "x$enable_dependency_tracking" != xno \ && test "$am_cv_$1_dependencies_compiler_type" = gcc3]) ]) # AM_SET_DEPDIR # ------------- # Choose a directory name for dependency files. # This macro is AC_REQUIREd in _AM_DEPENDENCIES. AC_DEFUN([AM_SET_DEPDIR], [AC_REQUIRE([AM_SET_LEADING_DOT])dnl AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl ]) # AM_DEP_TRACK # ------------ AC_DEFUN([AM_DEP_TRACK], [AC_ARG_ENABLE([dependency-tracking], [dnl AS_HELP_STRING( [--enable-dependency-tracking], [do not reject slow dependency extractors]) AS_HELP_STRING( [--disable-dependency-tracking], [speeds up one-time build])]) if test "x$enable_dependency_tracking" != xno; then am_depcomp="$ac_aux_dir/depcomp" AMDEPBACKSLASH='\' am__nodep='_no' fi AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno]) AC_SUBST([AMDEPBACKSLASH])dnl _AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl AC_SUBST([am__nodep])dnl _AM_SUBST_NOTMAKE([am__nodep])dnl ]) # Generate code to set up dependency tracking. -*- Autoconf -*- # Copyright (C) 1999-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # _AM_OUTPUT_DEPENDENCY_COMMANDS # ------------------------------ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS], [{ # Older Autoconf quotes --file arguments for eval, but not when files # are listed without --file. Let's play safe and only enable the eval # if we detect the quoting. case $CONFIG_FILES in *\'*) eval set x "$CONFIG_FILES" ;; *) set x $CONFIG_FILES ;; esac shift for mf do # Strip MF so we end up with the name of the file. mf=`echo "$mf" | sed -e 's/:.*$//'` # Check whether this is an Automake generated Makefile or not. # We used to match only the files named 'Makefile.in', but # some people rename them; so instead we look at the file content. # Grep'ing the first line is not enough: some people post-process # each Makefile.in and add a new line on top of each file to say so. # Grep'ing the whole file is not good either: AIX grep has a line # limit of 2048, but all sed's we know have understand at least 4000. if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then dirpart=`AS_DIRNAME("$mf")` else continue fi # Extract the definition of DEPDIR, am__include, and am__quote # from the Makefile without running 'make'. DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` test -z "$DEPDIR" && continue am__include=`sed -n 's/^am__include = //p' < "$mf"` test -z "$am__include" && continue am__quote=`sed -n 's/^am__quote = //p' < "$mf"` # Find all dependency output files, they are included files with # $(DEPDIR) in their names. We invoke sed twice because it is the # simplest approach to changing $(DEPDIR) to its actual value in the # expansion. for file in `sed -n " s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do # Make sure the directory exists. test -f "$dirpart/$file" && continue fdir=`AS_DIRNAME(["$file"])` AS_MKDIR_P([$dirpart/$fdir]) # echo "creating $dirpart/$file" echo '# dummy' > "$dirpart/$file" done done } ])# _AM_OUTPUT_DEPENDENCY_COMMANDS # AM_OUTPUT_DEPENDENCY_COMMANDS # ----------------------------- # This macro should only be invoked once -- use via AC_REQUIRE. # # This code is only required when automatic dependency tracking # is enabled. FIXME. This creates each '.P' file that we will # need in order to bootstrap the dependency handling code. AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS], [AC_CONFIG_COMMANDS([depfiles], [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS], [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"]) ]) # Do all the work for Automake. -*- Autoconf -*- # Copyright (C) 1996-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This macro actually does too much. Some checks are only needed if # your package does certain things. But this isn't really a big deal. dnl Redefine AC_PROG_CC to automatically invoke _AM_PROG_CC_C_O. m4_define([AC_PROG_CC], m4_defn([AC_PROG_CC]) [_AM_PROG_CC_C_O ]) # AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE]) # AM_INIT_AUTOMAKE([OPTIONS]) # ----------------------------------------------- # The call with PACKAGE and VERSION arguments is the old style # call (pre autoconf-2.50), which is being phased out. PACKAGE # and VERSION should now be passed to AC_INIT and removed from # the call to AM_INIT_AUTOMAKE. # We support both call styles for the transition. After # the next Automake release, Autoconf can make the AC_INIT # arguments mandatory, and then we can depend on a new Autoconf # release and drop the old call support. AC_DEFUN([AM_INIT_AUTOMAKE], [AC_PREREQ([2.65])dnl dnl Autoconf wants to disallow AM_ names. We explicitly allow dnl the ones we care about. m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl AC_REQUIRE([AC_PROG_INSTALL])dnl if test "`cd $srcdir && pwd`" != "`pwd`"; then # Use -I$(srcdir) only when $(srcdir) != ., so that make's output # is not polluted with repeated "-I." AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl # test to see if srcdir already configured if test -f $srcdir/config.status; then AC_MSG_ERROR([source directory already configured; run "make distclean" there first]) fi fi # test whether we have cygpath if test -z "$CYGPATH_W"; then if (cygpath --version) >/dev/null 2>/dev/null; then CYGPATH_W='cygpath -w' else CYGPATH_W=echo fi fi AC_SUBST([CYGPATH_W]) # Define the identity of the package. dnl Distinguish between old-style and new-style calls. m4_ifval([$2], [AC_DIAGNOSE([obsolete], [$0: two- and three-arguments forms are deprecated.]) m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl AC_SUBST([PACKAGE], [$1])dnl AC_SUBST([VERSION], [$2])], [_AM_SET_OPTIONS([$1])dnl dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT. m4_if( m4_ifdef([AC_PACKAGE_NAME], [ok]):m4_ifdef([AC_PACKAGE_VERSION], [ok]), [ok:ok],, [m4_fatal([AC_INIT should be called with package and version arguments])])dnl AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl _AM_IF_OPTION([no-define],, [AC_DEFINE_UNQUOTED([PACKAGE], ["$PACKAGE"], [Name of package]) AC_DEFINE_UNQUOTED([VERSION], ["$VERSION"], [Version number of package])])dnl # Some tools Automake needs. AC_REQUIRE([AM_SANITY_CHECK])dnl AC_REQUIRE([AC_ARG_PROGRAM])dnl AM_MISSING_PROG([ACLOCAL], [aclocal-${am__api_version}]) AM_MISSING_PROG([AUTOCONF], [autoconf]) AM_MISSING_PROG([AUTOMAKE], [automake-${am__api_version}]) AM_MISSING_PROG([AUTOHEADER], [autoheader]) AM_MISSING_PROG([MAKEINFO], [makeinfo]) AC_REQUIRE([AM_PROG_INSTALL_SH])dnl AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl AC_REQUIRE([AC_PROG_MKDIR_P])dnl # For better backward compatibility. To be removed once Automake 1.9.x # dies out for good. For more background, see: # # AC_SUBST([mkdir_p], ['$(MKDIR_P)']) # We need awk for the "check" target (and possibly the TAP driver). The # system "awk" is bad on some platforms. AC_REQUIRE([AC_PROG_AWK])dnl AC_REQUIRE([AC_PROG_MAKE_SET])dnl AC_REQUIRE([AM_SET_LEADING_DOT])dnl _AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])], [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])], [_AM_PROG_TAR([v7])])]) _AM_IF_OPTION([no-dependencies],, [AC_PROVIDE_IFELSE([AC_PROG_CC], [_AM_DEPENDENCIES([CC])], [m4_define([AC_PROG_CC], m4_defn([AC_PROG_CC])[_AM_DEPENDENCIES([CC])])])dnl AC_PROVIDE_IFELSE([AC_PROG_CXX], [_AM_DEPENDENCIES([CXX])], [m4_define([AC_PROG_CXX], m4_defn([AC_PROG_CXX])[_AM_DEPENDENCIES([CXX])])])dnl AC_PROVIDE_IFELSE([AC_PROG_OBJC], [_AM_DEPENDENCIES([OBJC])], [m4_define([AC_PROG_OBJC], m4_defn([AC_PROG_OBJC])[_AM_DEPENDENCIES([OBJC])])])dnl AC_PROVIDE_IFELSE([AC_PROG_OBJCXX], [_AM_DEPENDENCIES([OBJCXX])], [m4_define([AC_PROG_OBJCXX], m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])dnl ]) AC_REQUIRE([AM_SILENT_RULES])dnl dnl The testsuite driver may need to know about EXEEXT, so add the dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This dnl macro is hooked onto _AC_COMPILER_EXEEXT early, see below. AC_CONFIG_COMMANDS_PRE(dnl [m4_provide_if([_AM_COMPILER_EXEEXT], [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl # POSIX will say in a future version that running "rm -f" with no argument # is OK; and we want to be able to make that assumption in our Makefile # recipes. So use an aggressive probe to check that the usage we want is # actually supported "in the wild" to an acceptable degree. # See automake bug#10828. # To make any issue more visible, cause the running configure to be aborted # by default if the 'rm' program in use doesn't match our expectations; the # user can still override this though. if rm -f && rm -fr && rm -rf; then : OK; else cat >&2 <<'END' Oops! Your 'rm' program seems unable to run without file operands specified on the command line, even when the '-f' option is present. This is contrary to the behaviour of most rm programs out there, and not conforming with the upcoming POSIX standard: Please tell bug-automake@gnu.org about your system, including the value of your $PATH and any error possibly output before this message. This can help us improve future automake versions. END if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then echo 'Configuration will proceed anyway, since you have set the' >&2 echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2 echo >&2 else cat >&2 <<'END' Aborting the configuration process, to ensure you take notice of the issue. You can download and install GNU coreutils to get an 'rm' implementation that behaves properly: . If you want to complete the configuration process using your problematic 'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM to "yes", and re-run configure. END AC_MSG_ERROR([Your 'rm' program is bad, sorry.]) fi fi dnl The trailing newline in this macro's definition is deliberate, for dnl backward compatibility and to allow trailing 'dnl'-style comments dnl after the AM_INIT_AUTOMAKE invocation. See automake bug#16841. ]) dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion. Do not dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further dnl mangled by Autoconf and run in a shell conditional statement. m4_define([_AC_COMPILER_EXEEXT], m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])]) # When config.status generates a header, we must update the stamp-h file. # This file resides in the same directory as the config header # that is generated. The stamp files are numbered to have different names. # Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the # loop where config.status creates the headers, so we can generate # our stamp files there. AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK], [# Compute $1's index in $config_headers. _am_arg=$1 _am_stamp_count=1 for _am_header in $config_headers :; do case $_am_header in $_am_arg | $_am_arg:* ) break ;; * ) _am_stamp_count=`expr $_am_stamp_count + 1` ;; esac done echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count]) # Copyright (C) 2001-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_PROG_INSTALL_SH # ------------------ # Define $install_sh. AC_DEFUN([AM_PROG_INSTALL_SH], [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl if test x"${install_sh+set}" != xset; then case $am_aux_dir in *\ * | *\ *) install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;; *) install_sh="\${SHELL} $am_aux_dir/install-sh" esac fi AC_SUBST([install_sh])]) # Copyright (C) 2003-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # Check whether the underlying file-system supports filenames # with a leading dot. For instance MS-DOS doesn't. AC_DEFUN([AM_SET_LEADING_DOT], [rm -rf .tst 2>/dev/null mkdir .tst 2>/dev/null if test -d .tst; then am__leading_dot=. else am__leading_dot=_ fi rmdir .tst 2>/dev/null AC_SUBST([am__leading_dot])]) # Check to see how 'make' treats includes. -*- Autoconf -*- # Copyright (C) 2001-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_MAKE_INCLUDE() # ----------------- # Check to see how make treats includes. AC_DEFUN([AM_MAKE_INCLUDE], [am_make=${MAKE-make} cat > confinc << 'END' am__doit: @echo this is the am__doit target .PHONY: am__doit END # If we don't find an include directive, just comment out the code. AC_MSG_CHECKING([for style of include used by $am_make]) am__include="#" am__quote= _am_result=none # First try GNU make style include. echo "include confinc" > confmf # Ignore all kinds of additional output from 'make'. case `$am_make -s -f confmf 2> /dev/null` in #( *the\ am__doit\ target*) am__include=include am__quote= _am_result=GNU ;; esac # Now try BSD make style include. if test "$am__include" = "#"; then echo '.include "confinc"' > confmf case `$am_make -s -f confmf 2> /dev/null` in #( *the\ am__doit\ target*) am__include=.include am__quote="\"" _am_result=BSD ;; esac fi AC_SUBST([am__include]) AC_SUBST([am__quote]) AC_MSG_RESULT([$_am_result]) rm -f confinc confmf ]) # Fake the existence of programs that GNU maintainers use. -*- Autoconf -*- # Copyright (C) 1997-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_MISSING_PROG(NAME, PROGRAM) # ------------------------------ AC_DEFUN([AM_MISSING_PROG], [AC_REQUIRE([AM_MISSING_HAS_RUN]) $1=${$1-"${am_missing_run}$2"} AC_SUBST($1)]) # AM_MISSING_HAS_RUN # ------------------ # Define MISSING if not defined so far and test if it is modern enough. # If it is, set am_missing_run to use it, otherwise, to nothing. AC_DEFUN([AM_MISSING_HAS_RUN], [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl AC_REQUIRE_AUX_FILE([missing])dnl if test x"${MISSING+set}" != xset; then case $am_aux_dir in *\ * | *\ *) MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;; *) MISSING="\${SHELL} $am_aux_dir/missing" ;; esac fi # Use eval to expand $SHELL if eval "$MISSING --is-lightweight"; then am_missing_run="$MISSING " else am_missing_run= AC_MSG_WARN(['missing' script is too old or missing]) fi ]) # Helper functions for option handling. -*- Autoconf -*- # Copyright (C) 2001-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # _AM_MANGLE_OPTION(NAME) # ----------------------- AC_DEFUN([_AM_MANGLE_OPTION], [[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])]) # _AM_SET_OPTION(NAME) # -------------------- # Set option NAME. Presently that only means defining a flag for this option. AC_DEFUN([_AM_SET_OPTION], [m4_define(_AM_MANGLE_OPTION([$1]), [1])]) # _AM_SET_OPTIONS(OPTIONS) # ------------------------ # OPTIONS is a space-separated list of Automake options. AC_DEFUN([_AM_SET_OPTIONS], [m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])]) # _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET]) # ------------------------------------------- # Execute IF-SET if OPTION is set, IF-NOT-SET otherwise. AC_DEFUN([_AM_IF_OPTION], [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])]) # Copyright (C) 1999-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # _AM_PROG_CC_C_O # --------------- # Like AC_PROG_CC_C_O, but changed for automake. We rewrite AC_PROG_CC # to automatically call this. AC_DEFUN([_AM_PROG_CC_C_O], [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl AC_REQUIRE_AUX_FILE([compile])dnl AC_LANG_PUSH([C])dnl AC_CACHE_CHECK( [whether $CC understands -c and -o together], [am_cv_prog_cc_c_o], [AC_LANG_CONFTEST([AC_LANG_PROGRAM([])]) # Make sure it works both with $CC and with simple cc. # Following AC_PROG_CC_C_O, we do the test twice because some # compilers refuse to overwrite an existing .o file with -o, # though they will create one. am_cv_prog_cc_c_o=yes for am_i in 1 2; do if AM_RUN_LOG([$CC -c conftest.$ac_ext -o conftest2.$ac_objext]) \ && test -f conftest2.$ac_objext; then : OK else am_cv_prog_cc_c_o=no break fi done rm -f core conftest* unset am_i]) if test "$am_cv_prog_cc_c_o" != yes; then # Losing compiler, so override with the script. # FIXME: It is wrong to rewrite CC. # But if we don't then we get into trouble of one sort or another. # A longer-term fix would be to have automake use am__CC in this case, # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)" CC="$am_aux_dir/compile $CC" fi AC_LANG_POP([C])]) # For backward compatibility. AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])]) # Copyright (C) 2001-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_RUN_LOG(COMMAND) # ------------------- # Run COMMAND, save the exit status in ac_status, and log it. # (This has been adapted from Autoconf's _AC_RUN_LOG macro.) AC_DEFUN([AM_RUN_LOG], [{ echo "$as_me:$LINENO: $1" >&AS_MESSAGE_LOG_FD ($1) >&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD (exit $ac_status); }]) # Check to make sure that the build environment is sane. -*- Autoconf -*- # Copyright (C) 1996-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_SANITY_CHECK # --------------- AC_DEFUN([AM_SANITY_CHECK], [AC_MSG_CHECKING([whether build environment is sane]) # Reject unsafe characters in $srcdir or the absolute working directory # name. Accept space and tab only in the latter. am_lf=' ' case `pwd` in *[[\\\"\#\$\&\'\`$am_lf]]*) AC_MSG_ERROR([unsafe absolute working directory name]);; esac case $srcdir in *[[\\\"\#\$\&\'\`$am_lf\ \ ]]*) AC_MSG_ERROR([unsafe srcdir value: '$srcdir']);; esac # Do 'set' in a subshell so we don't clobber the current shell's # arguments. Must try -L first in case configure is actually a # symlink; some systems play weird games with the mod time of symlinks # (eg FreeBSD returns the mod time of the symlink's containing # directory). if ( am_has_slept=no for am_try in 1 2; do echo "timestamp, slept: $am_has_slept" > conftest.file set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null` if test "$[*]" = "X"; then # -L didn't work. set X `ls -t "$srcdir/configure" conftest.file` fi if test "$[*]" != "X $srcdir/configure conftest.file" \ && test "$[*]" != "X conftest.file $srcdir/configure"; then # If neither matched, then we have a broken ls. This can happen # if, for instance, CONFIG_SHELL is bash and it inherits a # broken ls alias from the environment. This has actually # happened. Such a system could not be considered "sane". AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken alias in your environment]) fi if test "$[2]" = conftest.file || test $am_try -eq 2; then break fi # Just in case. sleep 1 am_has_slept=yes done test "$[2]" = conftest.file ) then # Ok. : else AC_MSG_ERROR([newly created file is older than distributed files! Check your system clock]) fi AC_MSG_RESULT([yes]) # If we didn't sleep, we still need to ensure time stamps of config.status and # generated files are strictly newer. am_sleep_pid= if grep 'slept: no' conftest.file >/dev/null 2>&1; then ( sleep 1 ) & am_sleep_pid=$! fi AC_CONFIG_COMMANDS_PRE( [AC_MSG_CHECKING([that generated files are newer than configure]) if test -n "$am_sleep_pid"; then # Hide warnings about reused PIDs. wait $am_sleep_pid 2>/dev/null fi AC_MSG_RESULT([done])]) rm -f conftest.file ]) # Copyright (C) 2009-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_SILENT_RULES([DEFAULT]) # -------------------------- # Enable less verbose build rules; with the default set to DEFAULT # ("yes" being less verbose, "no" or empty being verbose). AC_DEFUN([AM_SILENT_RULES], [AC_ARG_ENABLE([silent-rules], [dnl AS_HELP_STRING( [--enable-silent-rules], [less verbose build output (undo: "make V=1")]) AS_HELP_STRING( [--disable-silent-rules], [verbose build output (undo: "make V=0")])dnl ]) case $enable_silent_rules in @%:@ ((( yes) AM_DEFAULT_VERBOSITY=0;; no) AM_DEFAULT_VERBOSITY=1;; *) AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1]);; esac dnl dnl A few 'make' implementations (e.g., NonStop OS and NextStep) dnl do not support nested variable expansions. dnl See automake bug#9928 and bug#10237. am_make=${MAKE-make} AC_CACHE_CHECK([whether $am_make supports nested variables], [am_cv_make_support_nested_variables], [if AS_ECHO([['TRUE=$(BAR$(V)) BAR0=false BAR1=true V=1 am__doit: @$(TRUE) .PHONY: am__doit']]) | $am_make -f - >/dev/null 2>&1; then am_cv_make_support_nested_variables=yes else am_cv_make_support_nested_variables=no fi]) if test $am_cv_make_support_nested_variables = yes; then dnl Using '$V' instead of '$(V)' breaks IRIX make. AM_V='$(V)' AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' else AM_V=$AM_DEFAULT_VERBOSITY AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY fi AC_SUBST([AM_V])dnl AM_SUBST_NOTMAKE([AM_V])dnl AC_SUBST([AM_DEFAULT_V])dnl AM_SUBST_NOTMAKE([AM_DEFAULT_V])dnl AC_SUBST([AM_DEFAULT_VERBOSITY])dnl AM_BACKSLASH='\' AC_SUBST([AM_BACKSLASH])dnl _AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl ]) # Copyright (C) 2001-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_PROG_INSTALL_STRIP # --------------------- # One issue with vendor 'install' (even GNU) is that you can't # specify the program used to strip binaries. This is especially # annoying in cross-compiling environments, where the build's strip # is unlikely to handle the host's binaries. # Fortunately install-sh will honor a STRIPPROG variable, so we # always use install-sh in "make install-strip", and initialize # STRIPPROG with the value of the STRIP variable (set by the user). AC_DEFUN([AM_PROG_INSTALL_STRIP], [AC_REQUIRE([AM_PROG_INSTALL_SH])dnl # Installed binaries are usually stripped using 'strip' when the user # run "make install-strip". However 'strip' might not be the right # tool to use in cross-compilation environments, therefore Automake # will honor the 'STRIP' environment variable to overrule this program. dnl Don't test for $cross_compiling = yes, because it might be 'maybe'. if test "$cross_compiling" != no; then AC_CHECK_TOOL([STRIP], [strip], :) fi INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" AC_SUBST([INSTALL_STRIP_PROGRAM])]) # Copyright (C) 2006-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # _AM_SUBST_NOTMAKE(VARIABLE) # --------------------------- # Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in. # This macro is traced by Automake. AC_DEFUN([_AM_SUBST_NOTMAKE]) # AM_SUBST_NOTMAKE(VARIABLE) # -------------------------- # Public sister of _AM_SUBST_NOTMAKE. AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)]) # Check how to create a tarball. -*- Autoconf -*- # Copyright (C) 2004-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # _AM_PROG_TAR(FORMAT) # -------------------- # Check how to create a tarball in format FORMAT. # FORMAT should be one of 'v7', 'ustar', or 'pax'. # # Substitute a variable $(am__tar) that is a command # writing to stdout a FORMAT-tarball containing the directory # $tardir. # tardir=directory && $(am__tar) > result.tar # # Substitute a variable $(am__untar) that extract such # a tarball read from stdin. # $(am__untar) < result.tar # AC_DEFUN([_AM_PROG_TAR], [# Always define AMTAR for backward compatibility. Yes, it's still used # in the wild :-( We should find a proper way to deprecate it ... AC_SUBST([AMTAR], ['$${TAR-tar}']) # We'll loop over all known methods to create a tar archive until one works. _am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none' m4_if([$1], [v7], [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'], [m4_case([$1], [ustar], [# The POSIX 1988 'ustar' format is defined with fixed-size fields. # There is notably a 21 bits limit for the UID and the GID. In fact, # the 'pax' utility can hang on bigger UID/GID (see automake bug#8343 # and bug#13588). am_max_uid=2097151 # 2^21 - 1 am_max_gid=$am_max_uid # The $UID and $GID variables are not portable, so we need to resort # to the POSIX-mandated id(1) utility. Errors in the 'id' calls # below are definitely unexpected, so allow the users to see them # (that is, avoid stderr redirection). am_uid=`id -u || echo unknown` am_gid=`id -g || echo unknown` AC_MSG_CHECKING([whether UID '$am_uid' is supported by ustar format]) if test $am_uid -le $am_max_uid; then AC_MSG_RESULT([yes]) else AC_MSG_RESULT([no]) _am_tools=none fi AC_MSG_CHECKING([whether GID '$am_gid' is supported by ustar format]) if test $am_gid -le $am_max_gid; then AC_MSG_RESULT([yes]) else AC_MSG_RESULT([no]) _am_tools=none fi], [pax], [], [m4_fatal([Unknown tar format])]) AC_MSG_CHECKING([how to create a $1 tar archive]) # Go ahead even if we have the value already cached. We do so because we # need to set the values for the 'am__tar' and 'am__untar' variables. _am_tools=${am_cv_prog_tar_$1-$_am_tools} for _am_tool in $_am_tools; do case $_am_tool in gnutar) for _am_tar in tar gnutar gtar; do AM_RUN_LOG([$_am_tar --version]) && break done am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"' am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"' am__untar="$_am_tar -xf -" ;; plaintar) # Must skip GNU tar: if it does not support --format= it doesn't create # ustar tarball either. (tar --version) >/dev/null 2>&1 && continue am__tar='tar chf - "$$tardir"' am__tar_='tar chf - "$tardir"' am__untar='tar xf -' ;; pax) am__tar='pax -L -x $1 -w "$$tardir"' am__tar_='pax -L -x $1 -w "$tardir"' am__untar='pax -r' ;; cpio) am__tar='find "$$tardir" -print | cpio -o -H $1 -L' am__tar_='find "$tardir" -print | cpio -o -H $1 -L' am__untar='cpio -i -H $1 -d' ;; none) am__tar=false am__tar_=false am__untar=false ;; esac # If the value was cached, stop now. We just wanted to have am__tar # and am__untar set. test -n "${am_cv_prog_tar_$1}" && break # tar/untar a dummy directory, and stop if the command works. rm -rf conftest.dir mkdir conftest.dir echo GrepMe > conftest.dir/file AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar]) rm -rf conftest.dir if test -s conftest.tar; then AM_RUN_LOG([$am__untar /dev/null 2>&1 && break fi done rm -rf conftest.dir AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool]) AC_MSG_RESULT([$am_cv_prog_tar_$1])]) AC_SUBST([am__tar]) AC_SUBST([am__untar]) ]) # _AM_PROG_TAR m4_include([acinclude.m4]) bibledit-gtk-4.9/AUTHORS000664 000766 000024 00000000361 12517415674 015141 0ustar00teusstaff000000 000000 Authors of Bibledit The following contributions warranted legal paper exchanges with Teus Benschop (teusjannette@gmail.com). Also see files ChangeLog and THANKS Teus Benschop: entire files -> all files modifications -> no files bibledit-gtk-4.9/ChangeLog000664 000766 000024 00000000053 12517415674 015641 0ustar00teusstaff000000 000000 See doc/changelog.html or the online help. bibledit-gtk-4.9/compile000755 000766 000024 00000016245 12477300071 015442 0ustar00teusstaff000000 000000 #! /bin/sh # Wrapper for compilers which do not understand '-c -o'. scriptversion=2012-10-14.11; # UTC # Copyright (C) 1999-2014 Free Software Foundation, Inc. # Written by Tom Tromey . # # 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. If not, see . # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. # This file is maintained in Automake, please report # bugs to or send patches to # . nl=' ' # We need space, tab and new line, in precisely that order. Quoting is # there to prevent tools from complaining about whitespace usage. IFS=" "" $nl" file_conv= # func_file_conv build_file lazy # Convert a $build file to $host form and store it in $file # Currently only supports Windows hosts. If the determined conversion # type is listed in (the comma separated) LAZY, no conversion will # take place. func_file_conv () { file=$1 case $file in / | /[!/]*) # absolute file, and not a UNC file if test -z "$file_conv"; then # lazily determine how to convert abs files case `uname -s` in MINGW*) file_conv=mingw ;; CYGWIN*) file_conv=cygwin ;; *) file_conv=wine ;; esac fi case $file_conv/,$2, in *,$file_conv,*) ;; mingw/*) file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'` ;; cygwin/*) file=`cygpath -m "$file" || echo "$file"` ;; wine/*) file=`winepath -w "$file" || echo "$file"` ;; esac ;; esac } # func_cl_dashL linkdir # Make cl look for libraries in LINKDIR func_cl_dashL () { func_file_conv "$1" if test -z "$lib_path"; then lib_path=$file else lib_path="$lib_path;$file" fi linker_opts="$linker_opts -LIBPATH:$file" } # func_cl_dashl library # Do a library search-path lookup for cl func_cl_dashl () { lib=$1 found=no save_IFS=$IFS IFS=';' for dir in $lib_path $LIB do IFS=$save_IFS if $shared && test -f "$dir/$lib.dll.lib"; then found=yes lib=$dir/$lib.dll.lib break fi if test -f "$dir/$lib.lib"; then found=yes lib=$dir/$lib.lib break fi if test -f "$dir/lib$lib.a"; then found=yes lib=$dir/lib$lib.a break fi done IFS=$save_IFS if test "$found" != yes; then lib=$lib.lib fi } # func_cl_wrapper cl arg... # Adjust compile command to suit cl func_cl_wrapper () { # Assume a capable shell lib_path= shared=: linker_opts= for arg do if test -n "$eat"; then eat= else case $1 in -o) # configure might choose to run compile as 'compile cc -o foo foo.c'. eat=1 case $2 in *.o | *.[oO][bB][jJ]) func_file_conv "$2" set x "$@" -Fo"$file" shift ;; *) func_file_conv "$2" set x "$@" -Fe"$file" shift ;; esac ;; -I) eat=1 func_file_conv "$2" mingw set x "$@" -I"$file" shift ;; -I*) func_file_conv "${1#-I}" mingw set x "$@" -I"$file" shift ;; -l) eat=1 func_cl_dashl "$2" set x "$@" "$lib" shift ;; -l*) func_cl_dashl "${1#-l}" set x "$@" "$lib" shift ;; -L) eat=1 func_cl_dashL "$2" ;; -L*) func_cl_dashL "${1#-L}" ;; -static) shared=false ;; -Wl,*) arg=${1#-Wl,} save_ifs="$IFS"; IFS=',' for flag in $arg; do IFS="$save_ifs" linker_opts="$linker_opts $flag" done IFS="$save_ifs" ;; -Xlinker) eat=1 linker_opts="$linker_opts $2" ;; -*) set x "$@" "$1" shift ;; *.cc | *.CC | *.cxx | *.CXX | *.[cC]++) func_file_conv "$1" set x "$@" -Tp"$file" shift ;; *.c | *.cpp | *.CPP | *.lib | *.LIB | *.Lib | *.OBJ | *.obj | *.[oO]) func_file_conv "$1" mingw set x "$@" "$file" shift ;; *) set x "$@" "$1" shift ;; esac fi shift done if test -n "$linker_opts"; then linker_opts="-link$linker_opts" fi exec "$@" $linker_opts exit 1 } eat= case $1 in '') echo "$0: No command. Try '$0 --help' for more information." 1>&2 exit 1; ;; -h | --h*) cat <<\EOF Usage: compile [--help] [--version] PROGRAM [ARGS] Wrapper for compilers which do not understand '-c -o'. Remove '-o dest.o' from ARGS, run PROGRAM with the remaining arguments, and rename the output as expected. If you are trying to build a whole package this is not the right script to run: please start by reading the file 'INSTALL'. Report bugs to . EOF exit $? ;; -v | --v*) echo "compile $scriptversion" exit $? ;; cl | *[/\\]cl | cl.exe | *[/\\]cl.exe ) func_cl_wrapper "$@" # Doesn't return... ;; esac ofile= cfile= for arg do if test -n "$eat"; then eat= else case $1 in -o) # configure might choose to run compile as 'compile cc -o foo foo.c'. # So we strip '-o arg' only if arg is an object. eat=1 case $2 in *.o | *.obj) ofile=$2 ;; *) set x "$@" -o "$2" shift ;; esac ;; *.c) cfile=$1 set x "$@" "$1" shift ;; *) set x "$@" "$1" shift ;; esac fi shift done if test -z "$ofile" || test -z "$cfile"; then # If no '-o' option was seen then we might have been invoked from a # pattern rule where we don't need one. That is ok -- this is a # normal compilation that the losing compiler can handle. If no # '.c' file was seen then we are probably linking. That is also # ok. exec "$@" fi # Name of file we expect compiler to create. cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'` # Create the lock directory. # Note: use '[/\\:.-]' here to ensure that we don't use the same name # that we are using for the .o file. Also, base the name on the expected # object file name, since that is what matters with a parallel build. lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d while true; do if mkdir "$lockdir" >/dev/null 2>&1; then break fi sleep 1 done # FIXME: race condition here if user kills between mkdir and trap. trap "rmdir '$lockdir'; exit 1" 1 2 15 # Run the compile. "$@" ret=$? if test -f "$cofile"; then test "$cofile" = "$ofile" || mv "$cofile" "$ofile" elif test -f "${cofile}bj"; then test "${cofile}bj" = "$ofile" || mv "${cofile}bj" "$ofile" fi rmdir "$lockdir" exit $ret # Local Variables: # mode: shell-script # sh-indentation: 2 # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-time-zone: "UTC" # time-stamp-end: "; # UTC" # End: bibledit-gtk-4.9/config.guess000775 000766 000024 00000125023 12221507125 016375 0ustar00teusstaff000000 000000 #! /bin/sh # Attempt to guess a canonical system name. # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, # 2000, 2001, 2002, 2003 Free Software Foundation, Inc. timestamp='2004-03-03' # This file 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. # # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. # Originally written by Per Bothner . # Please send patches to . Submit a context # diff and a properly formatted ChangeLog entry. # # This script attempts to guess a canonical system name similar to # config.sub. If it succeeds, it prints the system name on stdout, and # exits with 0. Otherwise, it exits with 1. # # The plan is that this can be called by configure scripts if you # don't specify an explicit build system type. me=`echo "$0" | sed -e 's,.*/,,'` usage="\ Usage: $0 [OPTION] Output the configuration name of the system \`$me' is run on. Operation modes: -h, --help print this help, then exit -t, --time-stamp print date of last modification, then exit -v, --version print version number, then exit Report bugs and patches to ." version="\ GNU config.guess ($timestamp) Originally written by Per Bothner. Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." help=" Try \`$me --help' for more information." # Parse command line while test $# -gt 0 ; do case $1 in --time-stamp | --time* | -t ) echo "$timestamp" ; exit 0 ;; --version | -v ) echo "$version" ; exit 0 ;; --help | --h* | -h ) echo "$usage"; exit 0 ;; -- ) # Stop option processing shift; break ;; - ) # Use stdin as input. break ;; -* ) echo "$me: invalid option $1$help" >&2 exit 1 ;; * ) break ;; esac done if test $# != 0; then echo "$me: too many arguments$help" >&2 exit 1 fi trap 'exit 1' 1 2 15 # CC_FOR_BUILD -- compiler used by this script. Note that the use of a # compiler to aid in system detection is discouraged as it requires # temporary files to be created and, as you can see below, it is a # headache to deal with in a portable fashion. # Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still # use `HOST_CC' if defined, but it is deprecated. # Portable tmp directory creation inspired by the Autoconf team. set_cc_for_build=' trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; : ${TMPDIR=/tmp} ; { tmp=`(umask 077 && mktemp -d -q "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; dummy=$tmp/dummy ; tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; case $CC_FOR_BUILD,$HOST_CC,$CC in ,,) echo "int x;" > $dummy.c ; for c in cc gcc c89 c99 ; do if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then CC_FOR_BUILD="$c"; break ; fi ; done ; if test x"$CC_FOR_BUILD" = x ; then CC_FOR_BUILD=no_compiler_found ; fi ;; ,,*) CC_FOR_BUILD=$CC ;; ,*,*) CC_FOR_BUILD=$HOST_CC ;; esac ;' # This is needed to find uname on a Pyramid OSx when run in the BSD universe. # (ghazi@noc.rutgers.edu 1994-08-24) if (test -f /.attbin/uname) >/dev/null 2>&1 ; then PATH=$PATH:/.attbin ; export PATH fi UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown # Note: order is significant - the case branches are not exclusive. case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in *:NetBSD:*:*) # NetBSD (nbsd) targets should (where applicable) match one or # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*, # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently # switched to ELF, *-*-netbsd* would select the old # object file format. This provides both forward # compatibility and a consistent mechanism for selecting the # object file format. # # Note: NetBSD doesn't particularly care about the vendor # portion of the name. We always set it to "unknown". sysctl="sysctl -n hw.machine_arch" UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \ /usr/sbin/$sysctl 2>/dev/null || echo unknown)` case "${UNAME_MACHINE_ARCH}" in armeb) machine=armeb-unknown ;; arm*) machine=arm-unknown ;; sh3el) machine=shl-unknown ;; sh3eb) machine=sh-unknown ;; *) machine=${UNAME_MACHINE_ARCH}-unknown ;; esac # The Operating System including object format, if it has switched # to ELF recently, or will in the future. case "${UNAME_MACHINE_ARCH}" in arm*|i386|m68k|ns32k|sh3*|sparc|vax) eval $set_cc_for_build if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ | grep __ELF__ >/dev/null then # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). # Return netbsd for either. FIX? os=netbsd else os=netbsdelf fi ;; *) os=netbsd ;; esac # The OS release # Debian GNU/NetBSD machines have a different userland, and # thus, need a distinct triplet. However, they do not need # kernel version information, so it can be replaced with a # suitable tag, in the style of linux-gnu. case "${UNAME_VERSION}" in Debian*) release='-gnu' ;; *) release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` ;; esac # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: # contains redundant information, the shorter form: # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. echo "${machine}-${os}${release}" exit 0 ;; amd64:OpenBSD:*:*) echo x86_64-unknown-openbsd${UNAME_RELEASE} exit 0 ;; amiga:OpenBSD:*:*) echo m68k-unknown-openbsd${UNAME_RELEASE} exit 0 ;; arc:OpenBSD:*:*) echo mipsel-unknown-openbsd${UNAME_RELEASE} exit 0 ;; cats:OpenBSD:*:*) echo arm-unknown-openbsd${UNAME_RELEASE} exit 0 ;; hp300:OpenBSD:*:*) echo m68k-unknown-openbsd${UNAME_RELEASE} exit 0 ;; mac68k:OpenBSD:*:*) echo m68k-unknown-openbsd${UNAME_RELEASE} exit 0 ;; macppc:OpenBSD:*:*) echo powerpc-unknown-openbsd${UNAME_RELEASE} exit 0 ;; mvme68k:OpenBSD:*:*) echo m68k-unknown-openbsd${UNAME_RELEASE} exit 0 ;; mvme88k:OpenBSD:*:*) echo m88k-unknown-openbsd${UNAME_RELEASE} exit 0 ;; mvmeppc:OpenBSD:*:*) echo powerpc-unknown-openbsd${UNAME_RELEASE} exit 0 ;; pegasos:OpenBSD:*:*) echo powerpc-unknown-openbsd${UNAME_RELEASE} exit 0 ;; pmax:OpenBSD:*:*) echo mipsel-unknown-openbsd${UNAME_RELEASE} exit 0 ;; sgi:OpenBSD:*:*) echo mipseb-unknown-openbsd${UNAME_RELEASE} exit 0 ;; sun3:OpenBSD:*:*) echo m68k-unknown-openbsd${UNAME_RELEASE} exit 0 ;; wgrisc:OpenBSD:*:*) echo mipsel-unknown-openbsd${UNAME_RELEASE} exit 0 ;; *:OpenBSD:*:*) echo ${UNAME_MACHINE}-unknown-openbsd${UNAME_RELEASE} exit 0 ;; *:ekkoBSD:*:*) echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} exit 0 ;; macppc:MirBSD:*:*) echo powerppc-unknown-mirbsd${UNAME_RELEASE} exit 0 ;; *:MirBSD:*:*) echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} exit 0 ;; alpha:OSF1:*:*) case $UNAME_RELEASE in *4.0) UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` ;; *5.*) UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` ;; esac # According to Compaq, /usr/sbin/psrinfo has been available on # OSF/1 and Tru64 systems produced since 1995. I hope that # covers most systems running today. This code pipes the CPU # types through head -n 1, so we only detect the type of CPU 0. ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` case "$ALPHA_CPU_TYPE" in "EV4 (21064)") UNAME_MACHINE="alpha" ;; "EV4.5 (21064)") UNAME_MACHINE="alpha" ;; "LCA4 (21066/21068)") UNAME_MACHINE="alpha" ;; "EV5 (21164)") UNAME_MACHINE="alphaev5" ;; "EV5.6 (21164A)") UNAME_MACHINE="alphaev56" ;; "EV5.6 (21164PC)") UNAME_MACHINE="alphapca56" ;; "EV5.7 (21164PC)") UNAME_MACHINE="alphapca57" ;; "EV6 (21264)") UNAME_MACHINE="alphaev6" ;; "EV6.7 (21264A)") UNAME_MACHINE="alphaev67" ;; "EV6.8CB (21264C)") UNAME_MACHINE="alphaev68" ;; "EV6.8AL (21264B)") UNAME_MACHINE="alphaev68" ;; "EV6.8CX (21264D)") UNAME_MACHINE="alphaev68" ;; "EV6.9A (21264/EV69A)") UNAME_MACHINE="alphaev69" ;; "EV7 (21364)") UNAME_MACHINE="alphaev7" ;; "EV7.9 (21364A)") UNAME_MACHINE="alphaev79" ;; esac # A Pn.n version is a patched version. # A Vn.n version is a released version. # A Tn.n version is a released field test version. # A Xn.n version is an unreleased experimental baselevel. # 1.2 uses "1.2" for uname -r. echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` exit 0 ;; Alpha*:OpenVMS:*:*) echo alpha-hp-vms exit 0 ;; Alpha\ *:Windows_NT*:*) # How do we know it's Interix rather than the generic POSIX subsystem? # Should we change UNAME_MACHINE based on the output of uname instead # of the specific Alpha model? echo alpha-pc-interix exit 0 ;; 21064:Windows_NT:50:3) echo alpha-dec-winnt3.5 exit 0 ;; Amiga*:UNIX_System_V:4.0:*) echo m68k-unknown-sysv4 exit 0;; *:[Aa]miga[Oo][Ss]:*:*) echo ${UNAME_MACHINE}-unknown-amigaos exit 0 ;; *:[Mm]orph[Oo][Ss]:*:*) echo ${UNAME_MACHINE}-unknown-morphos exit 0 ;; *:OS/390:*:*) echo i370-ibm-openedition exit 0 ;; *:OS400:*:*) echo powerpc-ibm-os400 exit 0 ;; arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) echo arm-acorn-riscix${UNAME_RELEASE} exit 0;; SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) echo hppa1.1-hitachi-hiuxmpp exit 0;; Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. if test "`(/bin/universe) 2>/dev/null`" = att ; then echo pyramid-pyramid-sysv3 else echo pyramid-pyramid-bsd fi exit 0 ;; NILE*:*:*:dcosx) echo pyramid-pyramid-svr4 exit 0 ;; DRS?6000:unix:4.0:6*) echo sparc-icl-nx6 exit 0 ;; DRS?6000:UNIX_SV:4.2*:7*) case `/usr/bin/uname -p` in sparc) echo sparc-icl-nx7 && exit 0 ;; esac ;; sun4H:SunOS:5.*:*) echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit 0 ;; sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit 0 ;; i86pc:SunOS:5.*:*) echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit 0 ;; sun4*:SunOS:6*:*) # According to config.sub, this is the proper way to canonicalize # SunOS6. Hard to guess exactly what SunOS6 will be like, but # it's likely to be more like Solaris than SunOS4. echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit 0 ;; sun4*:SunOS:*:*) case "`/usr/bin/arch -k`" in Series*|S4*) UNAME_RELEASE=`uname -v` ;; esac # Japanese Language versions have a version number like `4.1.3-JL'. echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` exit 0 ;; sun3*:SunOS:*:*) echo m68k-sun-sunos${UNAME_RELEASE} exit 0 ;; sun*:*:4.2BSD:*) UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 case "`/bin/arch`" in sun3) echo m68k-sun-sunos${UNAME_RELEASE} ;; sun4) echo sparc-sun-sunos${UNAME_RELEASE} ;; esac exit 0 ;; aushp:SunOS:*:*) echo sparc-auspex-sunos${UNAME_RELEASE} exit 0 ;; # The situation for MiNT is a little confusing. The machine name # can be virtually everything (everything which is not # "atarist" or "atariste" at least should have a processor # > m68000). The system name ranges from "MiNT" over "FreeMiNT" # to the lowercase version "mint" (or "freemint"). Finally # the system name "TOS" denotes a system which is actually not # MiNT. But MiNT is downward compatible to TOS, so this should # be no problem. atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) echo m68k-atari-mint${UNAME_RELEASE} exit 0 ;; atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) echo m68k-atari-mint${UNAME_RELEASE} exit 0 ;; *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) echo m68k-atari-mint${UNAME_RELEASE} exit 0 ;; milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) echo m68k-milan-mint${UNAME_RELEASE} exit 0 ;; hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) echo m68k-hades-mint${UNAME_RELEASE} exit 0 ;; *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) echo m68k-unknown-mint${UNAME_RELEASE} exit 0 ;; m68k:machten:*:*) echo m68k-apple-machten${UNAME_RELEASE} exit 0 ;; powerpc:machten:*:*) echo powerpc-apple-machten${UNAME_RELEASE} exit 0 ;; RISC*:Mach:*:*) echo mips-dec-mach_bsd4.3 exit 0 ;; RISC*:ULTRIX:*:*) echo mips-dec-ultrix${UNAME_RELEASE} exit 0 ;; VAX*:ULTRIX*:*:*) echo vax-dec-ultrix${UNAME_RELEASE} exit 0 ;; 2020:CLIX:*:* | 2430:CLIX:*:*) echo clipper-intergraph-clix${UNAME_RELEASE} exit 0 ;; mips:*:*:UMIPS | mips:*:*:RISCos) eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c #ifdef __cplusplus #include /* for printf() prototype */ int main (int argc, char *argv[]) { #else int main (argc, argv) int argc; char *argv[]; { #endif #if defined (host_mips) && defined (MIPSEB) #if defined (SYSTYPE_SYSV) printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); #endif #if defined (SYSTYPE_SVR4) printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); #endif #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); #endif #endif exit (-1); } EOF $CC_FOR_BUILD -o $dummy $dummy.c \ && $dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \ && exit 0 echo mips-mips-riscos${UNAME_RELEASE} exit 0 ;; Motorola:PowerMAX_OS:*:*) echo powerpc-motorola-powermax exit 0 ;; Motorola:*:4.3:PL8-*) echo powerpc-harris-powermax exit 0 ;; Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) echo powerpc-harris-powermax exit 0 ;; Night_Hawk:Power_UNIX:*:*) echo powerpc-harris-powerunix exit 0 ;; m88k:CX/UX:7*:*) echo m88k-harris-cxux7 exit 0 ;; m88k:*:4*:R4*) echo m88k-motorola-sysv4 exit 0 ;; m88k:*:3*:R3*) echo m88k-motorola-sysv3 exit 0 ;; AViiON:dgux:*:*) # DG/UX returns AViiON for all architectures UNAME_PROCESSOR=`/usr/bin/uname -p` if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] then if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ [ ${TARGET_BINARY_INTERFACE}x = x ] then echo m88k-dg-dgux${UNAME_RELEASE} else echo m88k-dg-dguxbcs${UNAME_RELEASE} fi else echo i586-dg-dgux${UNAME_RELEASE} fi exit 0 ;; M88*:DolphinOS:*:*) # DolphinOS (SVR3) echo m88k-dolphin-sysv3 exit 0 ;; M88*:*:R3*:*) # Delta 88k system running SVR3 echo m88k-motorola-sysv3 exit 0 ;; XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) echo m88k-tektronix-sysv3 exit 0 ;; Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) echo m68k-tektronix-bsd exit 0 ;; *:IRIX*:*:*) echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` exit 0 ;; ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id exit 0 ;; # Note that: echo "'`uname -s`'" gives 'AIX ' i*86:AIX:*:*) echo i386-ibm-aix exit 0 ;; ia64:AIX:*:*) if [ -x /usr/bin/oslevel ] ; then IBM_REV=`/usr/bin/oslevel` else IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} fi echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} exit 0 ;; *:AIX:2:3) if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c #include main() { if (!__power_pc()) exit(1); puts("powerpc-ibm-aix3.2.5"); exit(0); } EOF $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0 echo rs6000-ibm-aix3.2.5 elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then echo rs6000-ibm-aix3.2.4 else echo rs6000-ibm-aix3.2 fi exit 0 ;; *:AIX:*:[45]) IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then IBM_ARCH=rs6000 else IBM_ARCH=powerpc fi if [ -x /usr/bin/oslevel ] ; then IBM_REV=`/usr/bin/oslevel` else IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} fi echo ${IBM_ARCH}-ibm-aix${IBM_REV} exit 0 ;; *:AIX:*:*) echo rs6000-ibm-aix exit 0 ;; ibmrt:4.4BSD:*|romp-ibm:BSD:*) echo romp-ibm-bsd4.4 exit 0 ;; ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to exit 0 ;; # report: romp-ibm BSD 4.3 *:BOSX:*:*) echo rs6000-bull-bosx exit 0 ;; DPX/2?00:B.O.S.:*:*) echo m68k-bull-sysv3 exit 0 ;; 9000/[34]??:4.3bsd:1.*:*) echo m68k-hp-bsd exit 0 ;; hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) echo m68k-hp-bsd4.4 exit 0 ;; 9000/[34678]??:HP-UX:*:*) HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` case "${UNAME_MACHINE}" in 9000/31? ) HP_ARCH=m68000 ;; 9000/[34]?? ) HP_ARCH=m68k ;; 9000/[678][0-9][0-9]) if [ -x /usr/bin/getconf ]; then sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` case "${sc_cpu_version}" in 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 532) # CPU_PA_RISC2_0 case "${sc_kernel_bits}" in 32) HP_ARCH="hppa2.0n" ;; 64) HP_ARCH="hppa2.0w" ;; '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 esac ;; esac fi if [ "${HP_ARCH}" = "" ]; then eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c #define _HPUX_SOURCE #include #include int main () { #if defined(_SC_KERNEL_BITS) long bits = sysconf(_SC_KERNEL_BITS); #endif long cpu = sysconf (_SC_CPU_VERSION); switch (cpu) { case CPU_PA_RISC1_0: puts ("hppa1.0"); break; case CPU_PA_RISC1_1: puts ("hppa1.1"); break; case CPU_PA_RISC2_0: #if defined(_SC_KERNEL_BITS) switch (bits) { case 64: puts ("hppa2.0w"); break; case 32: puts ("hppa2.0n"); break; default: puts ("hppa2.0"); break; } break; #else /* !defined(_SC_KERNEL_BITS) */ puts ("hppa2.0"); break; #endif default: puts ("hppa1.0"); break; } exit (0); } EOF (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` test -z "$HP_ARCH" && HP_ARCH=hppa fi ;; esac if [ ${HP_ARCH} = "hppa2.0w" ] then # avoid double evaluation of $set_cc_for_build test -n "$CC_FOR_BUILD" || eval $set_cc_for_build if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E -) | grep __LP64__ >/dev/null then HP_ARCH="hppa2.0w" else HP_ARCH="hppa64" fi fi echo ${HP_ARCH}-hp-hpux${HPUX_REV} exit 0 ;; ia64:HP-UX:*:*) HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` echo ia64-hp-hpux${HPUX_REV} exit 0 ;; 3050*:HI-UX:*:*) eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c #include int main () { long cpu = sysconf (_SC_CPU_VERSION); /* The order matters, because CPU_IS_HP_MC68K erroneously returns true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct results, however. */ if (CPU_IS_PA_RISC (cpu)) { switch (cpu) { case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; default: puts ("hppa-hitachi-hiuxwe2"); break; } } else if (CPU_IS_HP_MC68K (cpu)) puts ("m68k-hitachi-hiuxwe2"); else puts ("unknown-hitachi-hiuxwe2"); exit (0); } EOF $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0 echo unknown-hitachi-hiuxwe2 exit 0 ;; 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) echo hppa1.1-hp-bsd exit 0 ;; 9000/8??:4.3bsd:*:*) echo hppa1.0-hp-bsd exit 0 ;; *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) echo hppa1.0-hp-mpeix exit 0 ;; hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) echo hppa1.1-hp-osf exit 0 ;; hp8??:OSF1:*:*) echo hppa1.0-hp-osf exit 0 ;; i*86:OSF1:*:*) if [ -x /usr/sbin/sysversion ] ; then echo ${UNAME_MACHINE}-unknown-osf1mk else echo ${UNAME_MACHINE}-unknown-osf1 fi exit 0 ;; parisc*:Lites*:*:*) echo hppa1.1-hp-lites exit 0 ;; C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) echo c1-convex-bsd exit 0 ;; C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) if getsysinfo -f scalar_acc then echo c32-convex-bsd else echo c2-convex-bsd fi exit 0 ;; C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) echo c34-convex-bsd exit 0 ;; C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) echo c38-convex-bsd exit 0 ;; C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) echo c4-convex-bsd exit 0 ;; CRAY*Y-MP:*:*:*) echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' exit 0 ;; CRAY*[A-Z]90:*:*:*) echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ -e 's/\.[^.]*$/.X/' exit 0 ;; CRAY*TS:*:*:*) echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' exit 0 ;; CRAY*T3E:*:*:*) echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' exit 0 ;; CRAY*SV1:*:*:*) echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' exit 0 ;; *:UNICOS/mp:*:*) echo nv1-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' exit 0 ;; F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" exit 0 ;; 5000:UNIX_System_V:4.*:*) FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" exit 0 ;; i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} exit 0 ;; sparc*:BSD/OS:*:*) echo sparc-unknown-bsdi${UNAME_RELEASE} exit 0 ;; *:BSD/OS:*:*) echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} exit 0 ;; *:FreeBSD:*:*) # Determine whether the default compiler uses glibc. eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c #include #if __GLIBC__ >= 2 LIBC=gnu #else LIBC= #endif EOF eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=` # GNU/KFreeBSD systems have a "k" prefix to indicate we are using # FreeBSD's kernel, but not the complete OS. case ${LIBC} in gnu) kernel_only='k' ;; esac echo ${UNAME_MACHINE}-unknown-${kernel_only}freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`${LIBC:+-$LIBC} exit 0 ;; i*:CYGWIN*:*) echo ${UNAME_MACHINE}-pc-cygwin exit 0 ;; i*:MINGW*:*) echo ${UNAME_MACHINE}-pc-mingw32 exit 0 ;; i*:PW*:*) echo ${UNAME_MACHINE}-pc-pw32 exit 0 ;; x86:Interix*:[34]*) echo i586-pc-interix${UNAME_RELEASE}|sed -e 's/\..*//' exit 0 ;; [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) echo i${UNAME_MACHINE}-pc-mks exit 0 ;; i*:Windows_NT*:* | Pentium*:Windows_NT*:*) # How do we know it's Interix rather than the generic POSIX subsystem? # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we # UNAME_MACHINE based on the output of uname instead of i386? echo i586-pc-interix exit 0 ;; i*:UWIN*:*) echo ${UNAME_MACHINE}-pc-uwin exit 0 ;; p*:CYGWIN*:*) echo powerpcle-unknown-cygwin exit 0 ;; prep*:SunOS:5.*:*) echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit 0 ;; *:GNU:*:*) # the GNU system echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` exit 0 ;; *:GNU/*:*:*) # other systems with GNU libc and userland echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu exit 0 ;; i*86:Minix:*:*) echo ${UNAME_MACHINE}-pc-minix exit 0 ;; arm*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit 0 ;; cris:Linux:*:*) echo cris-axis-linux-gnu exit 0 ;; ia64:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit 0 ;; m68*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit 0 ;; mips:Linux:*:*) eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c #undef CPU #undef mips #undef mipsel #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) CPU=mipsel #else #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) CPU=mips #else CPU= #endif #endif EOF eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=` test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0 ;; mips64:Linux:*:*) eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c #undef CPU #undef mips64 #undef mips64el #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) CPU=mips64el #else #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) CPU=mips64 #else CPU= #endif #endif EOF eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=` test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0 ;; ppc:Linux:*:*) echo powerpc-unknown-linux-gnu exit 0 ;; ppc64:Linux:*:*) echo powerpc64-unknown-linux-gnu exit 0 ;; alpha:Linux:*:*) case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in EV5) UNAME_MACHINE=alphaev5 ;; EV56) UNAME_MACHINE=alphaev56 ;; PCA56) UNAME_MACHINE=alphapca56 ;; PCA57) UNAME_MACHINE=alphapca56 ;; EV6) UNAME_MACHINE=alphaev6 ;; EV67) UNAME_MACHINE=alphaev67 ;; EV68*) UNAME_MACHINE=alphaev68 ;; esac objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} exit 0 ;; parisc:Linux:*:* | hppa:Linux:*:*) # Look for CPU level case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in PA7*) echo hppa1.1-unknown-linux-gnu ;; PA8*) echo hppa2.0-unknown-linux-gnu ;; *) echo hppa-unknown-linux-gnu ;; esac exit 0 ;; parisc64:Linux:*:* | hppa64:Linux:*:*) echo hppa64-unknown-linux-gnu exit 0 ;; s390:Linux:*:* | s390x:Linux:*:*) echo ${UNAME_MACHINE}-ibm-linux exit 0 ;; sh64*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit 0 ;; sh*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit 0 ;; sparc:Linux:*:* | sparc64:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit 0 ;; x86_64:Linux:*:*) echo x86_64-unknown-linux-gnu exit 0 ;; i*86:Linux:*:*) # The BFD linker knows what the default object file format is, so # first see if it will tell us. cd to the root directory to prevent # problems with other programs or directories called `ld' in the path. # Set LC_ALL=C to ensure ld outputs messages in English. ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \ | sed -ne '/supported targets:/!d s/[ ][ ]*/ /g s/.*supported targets: *// s/ .*// p'` case "$ld_supported_targets" in elf32-i386) TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu" ;; a.out-i386-linux) echo "${UNAME_MACHINE}-pc-linux-gnuaout" exit 0 ;; coff-i386) echo "${UNAME_MACHINE}-pc-linux-gnucoff" exit 0 ;; "") # Either a pre-BFD a.out linker (linux-gnuoldld) or # one that does not give us useful --help. echo "${UNAME_MACHINE}-pc-linux-gnuoldld" exit 0 ;; esac # Determine whether the default compiler is a.out or elf eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c #include #ifdef __ELF__ # ifdef __GLIBC__ # if __GLIBC__ >= 2 LIBC=gnu # else LIBC=gnulibc1 # endif # else LIBC=gnulibc1 # endif #else #ifdef __INTEL_COMPILER LIBC=gnu #else LIBC=gnuaout #endif #endif #ifdef __dietlibc__ LIBC=dietlibc #endif EOF eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=` test x"${LIBC}" != x && echo "${UNAME_MACHINE}-pc-linux-${LIBC}" && exit 0 test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0 ;; i*86:DYNIX/ptx:4*:*) # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. # earlier versions are messed up and put the nodename in both # sysname and nodename. echo i386-sequent-sysv4 exit 0 ;; i*86:UNIX_SV:4.2MP:2.*) # Unixware is an offshoot of SVR4, but it has its own version # number series starting with 2... # I am not positive that other SVR4 systems won't match this, # I just have to hope. -- rms. # Use sysv4.2uw... so that sysv4* matches it. echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} exit 0 ;; i*86:OS/2:*:*) # If we were able to find `uname', then EMX Unix compatibility # is probably installed. echo ${UNAME_MACHINE}-pc-os2-emx exit 0 ;; i*86:XTS-300:*:STOP) echo ${UNAME_MACHINE}-unknown-stop exit 0 ;; i*86:atheos:*:*) echo ${UNAME_MACHINE}-unknown-atheos exit 0 ;; i*86:syllable:*:*) echo ${UNAME_MACHINE}-pc-syllable exit 0 ;; i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*) echo i386-unknown-lynxos${UNAME_RELEASE} exit 0 ;; i*86:*DOS:*:*) echo ${UNAME_MACHINE}-pc-msdosdjgpp exit 0 ;; i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} else echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} fi exit 0 ;; i*86:*:5:[78]*) case `/bin/uname -X | grep "^Machine"` in *486*) UNAME_MACHINE=i486 ;; *Pentium) UNAME_MACHINE=i586 ;; *Pent*|*Celeron) UNAME_MACHINE=i686 ;; esac echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} exit 0 ;; i*86:*:3.2:*) if test -f /usr/options/cb.name; then UNAME_REL=`sed -n 's/.*Version //p' /dev/null >/dev/null ; then UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ && UNAME_MACHINE=i586 (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ && UNAME_MACHINE=i686 (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ && UNAME_MACHINE=i686 echo ${UNAME_MACHINE}-pc-sco$UNAME_REL else echo ${UNAME_MACHINE}-pc-sysv32 fi exit 0 ;; pc:*:*:*) # Left here for compatibility: # uname -m prints for DJGPP always 'pc', but it prints nothing about # the processor, so we play safe by assuming i386. echo i386-pc-msdosdjgpp exit 0 ;; Intel:Mach:3*:*) echo i386-pc-mach3 exit 0 ;; paragon:*:*:*) echo i860-intel-osf1 exit 0 ;; i860:*:4.*:*) # i860-SVR4 if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 else # Add other i860-SVR4 vendors below as they are discovered. echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 fi exit 0 ;; mini*:CTIX:SYS*5:*) # "miniframe" echo m68010-convergent-sysv exit 0 ;; mc68k:UNIX:SYSTEM5:3.51m) echo m68k-convergent-sysv exit 0 ;; M680?0:D-NIX:5.3:*) echo m68k-diab-dnix exit 0 ;; M68*:*:R3V[567]*:*) test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;; 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0) OS_REL='' test -r /etc/.relid \ && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ && echo i486-ncr-sysv4.3${OS_REL} && exit 0 /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ && echo i586-ncr-sysv4.3${OS_REL} && exit 0 ;; 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ && echo i486-ncr-sysv4 && exit 0 ;; m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) echo m68k-unknown-lynxos${UNAME_RELEASE} exit 0 ;; mc68030:UNIX_System_V:4.*:*) echo m68k-atari-sysv4 exit 0 ;; TSUNAMI:LynxOS:2.*:*) echo sparc-unknown-lynxos${UNAME_RELEASE} exit 0 ;; rs6000:LynxOS:2.*:*) echo rs6000-unknown-lynxos${UNAME_RELEASE} exit 0 ;; PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*) echo powerpc-unknown-lynxos${UNAME_RELEASE} exit 0 ;; SM[BE]S:UNIX_SV:*:*) echo mips-dde-sysv${UNAME_RELEASE} exit 0 ;; RM*:ReliantUNIX-*:*:*) echo mips-sni-sysv4 exit 0 ;; RM*:SINIX-*:*:*) echo mips-sni-sysv4 exit 0 ;; *:SINIX-*:*:*) if uname -p 2>/dev/null >/dev/null ; then UNAME_MACHINE=`(uname -p) 2>/dev/null` echo ${UNAME_MACHINE}-sni-sysv4 else echo ns32k-sni-sysv fi exit 0 ;; PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort # says echo i586-unisys-sysv4 exit 0 ;; *:UNIX_System_V:4*:FTX*) # From Gerald Hewes . # How about differentiating between stratus architectures? -djm echo hppa1.1-stratus-sysv4 exit 0 ;; *:*:*:FTX*) # From seanf@swdc.stratus.com. echo i860-stratus-sysv4 exit 0 ;; *:VOS:*:*) # From Paul.Green@stratus.com. echo hppa1.1-stratus-vos exit 0 ;; mc68*:A/UX:*:*) echo m68k-apple-aux${UNAME_RELEASE} exit 0 ;; news*:NEWS-OS:6*:*) echo mips-sony-newsos6 exit 0 ;; R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) if [ -d /usr/nec ]; then echo mips-nec-sysv${UNAME_RELEASE} else echo mips-unknown-sysv${UNAME_RELEASE} fi exit 0 ;; BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. echo powerpc-be-beos exit 0 ;; BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. echo powerpc-apple-beos exit 0 ;; BePC:BeOS:*:*) # BeOS running on Intel PC compatible. echo i586-pc-beos exit 0 ;; SX-4:SUPER-UX:*:*) echo sx4-nec-superux${UNAME_RELEASE} exit 0 ;; SX-5:SUPER-UX:*:*) echo sx5-nec-superux${UNAME_RELEASE} exit 0 ;; SX-6:SUPER-UX:*:*) echo sx6-nec-superux${UNAME_RELEASE} exit 0 ;; Power*:Rhapsody:*:*) echo powerpc-apple-rhapsody${UNAME_RELEASE} exit 0 ;; *:Rhapsody:*:*) echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} exit 0 ;; *:Darwin:*:*) case `uname -p` in *86) UNAME_PROCESSOR=i686 ;; powerpc) UNAME_PROCESSOR=powerpc ;; esac echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} exit 0 ;; *:procnto*:*:* | *:QNX:[0123456789]*:*) UNAME_PROCESSOR=`uname -p` if test "$UNAME_PROCESSOR" = "x86"; then UNAME_PROCESSOR=i386 UNAME_MACHINE=pc fi echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} exit 0 ;; *:QNX:*:4*) echo i386-pc-qnx exit 0 ;; NSR-?:NONSTOP_KERNEL:*:*) echo nsr-tandem-nsk${UNAME_RELEASE} exit 0 ;; *:NonStop-UX:*:*) echo mips-compaq-nonstopux exit 0 ;; BS2000:POSIX*:*:*) echo bs2000-siemens-sysv exit 0 ;; DS/*:UNIX_System_V:*:*) echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} exit 0 ;; *:Plan9:*:*) # "uname -m" is not consistent, so use $cputype instead. 386 # is converted to i386 for consistency with other x86 # operating systems. if test "$cputype" = "386"; then UNAME_MACHINE=i386 else UNAME_MACHINE="$cputype" fi echo ${UNAME_MACHINE}-unknown-plan9 exit 0 ;; *:TOPS-10:*:*) echo pdp10-unknown-tops10 exit 0 ;; *:TENEX:*:*) echo pdp10-unknown-tenex exit 0 ;; KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) echo pdp10-dec-tops20 exit 0 ;; XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) echo pdp10-xkl-tops20 exit 0 ;; *:TOPS-20:*:*) echo pdp10-unknown-tops20 exit 0 ;; *:ITS:*:*) echo pdp10-unknown-its exit 0 ;; SEI:*:*:SEIUX) echo mips-sei-seiux${UNAME_RELEASE} exit 0 ;; *:DragonFly:*:*) echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` exit 0 ;; esac #echo '(No uname command or uname output not recognized.)' 1>&2 #echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 eval $set_cc_for_build cat >$dummy.c < # include #endif main () { #if defined (sony) #if defined (MIPSEB) /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, I don't know.... */ printf ("mips-sony-bsd\n"); exit (0); #else #include printf ("m68k-sony-newsos%s\n", #ifdef NEWSOS4 "4" #else "" #endif ); exit (0); #endif #endif #if defined (__arm) && defined (__acorn) && defined (__unix) printf ("arm-acorn-riscix"); exit (0); #endif #if defined (hp300) && !defined (hpux) printf ("m68k-hp-bsd\n"); exit (0); #endif #if defined (NeXT) #if !defined (__ARCHITECTURE__) #define __ARCHITECTURE__ "m68k" #endif int version; version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; if (version < 4) printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); else printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); exit (0); #endif #if defined (MULTIMAX) || defined (n16) #if defined (UMAXV) printf ("ns32k-encore-sysv\n"); exit (0); #else #if defined (CMU) printf ("ns32k-encore-mach\n"); exit (0); #else printf ("ns32k-encore-bsd\n"); exit (0); #endif #endif #endif #if defined (__386BSD__) printf ("i386-pc-bsd\n"); exit (0); #endif #if defined (sequent) #if defined (i386) printf ("i386-sequent-dynix\n"); exit (0); #endif #if defined (ns32000) printf ("ns32k-sequent-dynix\n"); exit (0); #endif #endif #if defined (_SEQUENT_) struct utsname un; uname(&un); if (strncmp(un.version, "V2", 2) == 0) { printf ("i386-sequent-ptx2\n"); exit (0); } if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ printf ("i386-sequent-ptx1\n"); exit (0); } printf ("i386-sequent-ptx\n"); exit (0); #endif #if defined (vax) # if !defined (ultrix) # include # if defined (BSD) # if BSD == 43 printf ("vax-dec-bsd4.3\n"); exit (0); # else # if BSD == 199006 printf ("vax-dec-bsd4.3reno\n"); exit (0); # else printf ("vax-dec-bsd\n"); exit (0); # endif # endif # else printf ("vax-dec-bsd\n"); exit (0); # endif # else printf ("vax-dec-ultrix\n"); exit (0); # endif #endif #if defined (alliant) && defined (i860) printf ("i860-alliant-bsd\n"); exit (0); #endif exit (1); } EOF $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && $dummy && exit 0 # Apollos put the system type in the environment. test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit 0; } # Convex versions that predate uname can use getsysinfo(1) if [ -x /usr/convex/getsysinfo ] then case `getsysinfo -f cpu_type` in c1*) echo c1-convex-bsd exit 0 ;; c2*) if getsysinfo -f scalar_acc then echo c32-convex-bsd else echo c2-convex-bsd fi exit 0 ;; c34*) echo c34-convex-bsd exit 0 ;; c38*) echo c38-convex-bsd exit 0 ;; c4*) echo c4-convex-bsd exit 0 ;; esac fi cat >&2 < in order to provide the needed information to handle your system. config.guess timestamp = $timestamp uname -m = `(uname -m) 2>/dev/null || echo unknown` uname -r = `(uname -r) 2>/dev/null || echo unknown` uname -s = `(uname -s) 2>/dev/null || echo unknown` uname -v = `(uname -v) 2>/dev/null || echo unknown` /usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` /bin/uname -X = `(/bin/uname -X) 2>/dev/null` hostinfo = `(hostinfo) 2>/dev/null` /bin/universe = `(/bin/universe) 2>/dev/null` /usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` /bin/arch = `(/bin/arch) 2>/dev/null` /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` UNAME_MACHINE = ${UNAME_MACHINE} UNAME_RELEASE = ${UNAME_RELEASE} UNAME_SYSTEM = ${UNAME_SYSTEM} UNAME_VERSION = ${UNAME_VERSION} EOF exit 1 # Local variables: # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "timestamp='" # time-stamp-format: "%:y-%02m-%02d" # time-stamp-end: "'" # End: bibledit-gtk-4.9/config.h.in000644 000766 000024 00000003376 12517415763 016122 0ustar00teusstaff000000 000000 /* config.h.in. Generated from configure.ac by autoheader. */ /* DARWIN */ #undef DARWIN /* Define to 1 if pango >= 1.8.0. */ #undef FIXED_PANGO /* define if the compiler supports basic C++11 syntax */ #undef HAVE_CXX11 /* Define to 1 if you have the header file. */ #undef HAVE_INTTYPES_H /* Define to 1 if you have the header file. */ #undef HAVE_MEMORY_H /* Define to 1 if PANGO_UNDERLINE_ERROR is available. */ #undef HAVE_PANGO_UNDERLINE_ERROR /* Define to 1 if you have the header file. */ #undef HAVE_STDINT_H /* Define to 1 if you have the header file. */ #undef HAVE_STDLIB_H /* Define to 1 if you have the header file. */ #undef HAVE_STRINGS_H /* Define to 1 if you have the header file. */ #undef HAVE_STRING_H /* Define to 1 if you have the header file. */ #undef HAVE_SYS_STAT_H /* Define to 1 if you have the header file. */ #undef HAVE_SYS_TYPES_H /* Define to 1 if you have the header file. */ #undef HAVE_UNISTD_H /* LINUX */ #undef LINUX /* Name of package */ #undef PACKAGE /* Define to the address where bug reports for this package should be sent. */ #undef PACKAGE_BUGREPORT /* PACKAGE_DATA_DIR */ #undef PACKAGE_DATA_DIR /* Define to the full name of this package. */ #undef PACKAGE_NAME /* Define to the full name and version of this package. */ #undef PACKAGE_STRING /* Define to the one symbol short name of this package. */ #undef PACKAGE_TARNAME /* Define to the home page for this package. */ #undef PACKAGE_URL /* Define to the version of this package. */ #undef PACKAGE_VERSION /* Define to 1 if you have the ANSI C header files. */ #undef STDC_HEADERS /* Version number of package */ #undef VERSION /* WIN32 */ #undef WIN32 bibledit-gtk-4.9/config.sub000664 000766 000024 00000074604 12221507124 016044 0ustar00teusstaff000000 000000 #! /bin/sh # Configuration validation subroutine script. # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, # 2000, 2001, 2002, 2003 Free Software Foundation, Inc. timestamp='2004-02-23' # This file is (in principle) common to ALL GNU software. # The presence of a machine in this file suggests that SOME GNU software # can handle that machine. It does not imply ALL GNU software can. # # This file 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., 59 Temple Place - Suite 330, # Boston, MA 02111-1307, USA. # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. # Please send patches to . Submit a context # diff and a properly formatted ChangeLog entry. # # Configuration subroutine to validate and canonicalize a configuration type. # Supply the specified configuration type as an argument. # If it is invalid, we print an error message on stderr and exit with code 1. # Otherwise, we print the canonical config type on stdout and succeed. # This file is supposed to be the same for all GNU packages # and recognize all the CPU types, system types and aliases # that are meaningful with *any* GNU software. # Each package is responsible for reporting which valid configurations # it does not support. The user should be able to distinguish # a failure to support a valid configuration from a meaningless # configuration. # The goal of this file is to map all the various variations of a given # machine specification into a single specification in the form: # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM # or in some cases, the newer four-part form: # CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM # It is wrong to echo any other type of specification. me=`echo "$0" | sed -e 's,.*/,,'` usage="\ Usage: $0 [OPTION] CPU-MFR-OPSYS $0 [OPTION] ALIAS Canonicalize a configuration name. Operation modes: -h, --help print this help, then exit -t, --time-stamp print date of last modification, then exit -v, --version print version number, then exit Report bugs and patches to ." version="\ GNU config.sub ($timestamp) Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." help=" Try \`$me --help' for more information." # Parse command line while test $# -gt 0 ; do case $1 in --time-stamp | --time* | -t ) echo "$timestamp" ; exit 0 ;; --version | -v ) echo "$version" ; exit 0 ;; --help | --h* | -h ) echo "$usage"; exit 0 ;; -- ) # Stop option processing shift; break ;; - ) # Use stdin as input. break ;; -* ) echo "$me: invalid option $1$help" exit 1 ;; *local*) # First pass through any local machine types. echo $1 exit 0;; * ) break ;; esac done case $# in 0) echo "$me: missing argument$help" >&2 exit 1;; 1) ;; *) echo "$me: too many arguments$help" >&2 exit 1;; esac # Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). # Here we must recognize all the valid KERNEL-OS combinations. maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` case $maybe_os in nto-qnx* | linux-gnu* | linux-dietlibc | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | \ kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*) os=-$maybe_os basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` ;; *) basic_machine=`echo $1 | sed 's/-[^-]*$//'` if [ $basic_machine != $1 ] then os=`echo $1 | sed 's/.*-/-/'` else os=; fi ;; esac ### Let's recognize common machines as not being operating systems so ### that things like config.sub decstation-3100 work. We also ### recognize some manufacturers as not being operating systems, so we ### can provide default operating systems below. case $os in -sun*os*) # Prevent following clause from handling this invalid input. ;; -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ -apple | -axis) os= basic_machine=$1 ;; -sim | -cisco | -oki | -wec | -winbond) os= basic_machine=$1 ;; -scout) ;; -wrs) os=-vxworks basic_machine=$1 ;; -chorusos*) os=-chorusos basic_machine=$1 ;; -chorusrdb) os=-chorusrdb basic_machine=$1 ;; -hiux*) os=-hiuxwe2 ;; -sco5) os=-sco3.2v5 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -sco4) os=-sco3.2v4 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -sco3.2.[4-9]*) os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -sco3.2v[4-9]*) # Don't forget version if it is 3.2v4 or newer. basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -sco*) os=-sco3.2v2 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -udk*) basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -isc) os=-isc2.2 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -clix*) basic_machine=clipper-intergraph ;; -isc*) basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -lynx*) os=-lynxos ;; -ptx*) basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` ;; -windowsnt*) os=`echo $os | sed -e 's/windowsnt/winnt/'` ;; -psos*) os=-psos ;; -mint | -mint[0-9]*) basic_machine=m68k-atari os=-mint ;; esac # Decode aliases for certain CPU-COMPANY combinations. case $basic_machine in # Recognize the basic CPU types without company name. # Some are omitted here because they have special meanings below. 1750a | 580 \ | a29k \ | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ | am33_2.0 \ | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \ | c4x | clipper \ | d10v | d30v | dlx | dsp16xx \ | fr30 | frv \ | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ | i370 | i860 | i960 | ia64 \ | ip2k | iq2000 \ | m32r | m68000 | m68k | m88k | mcore \ | mips | mipsbe | mipseb | mipsel | mipsle \ | mips16 \ | mips64 | mips64el \ | mips64vr | mips64vrel \ | mips64orion | mips64orionel \ | mips64vr4100 | mips64vr4100el \ | mips64vr4300 | mips64vr4300el \ | mips64vr5000 | mips64vr5000el \ | mipsisa32 | mipsisa32el \ | mipsisa32r2 | mipsisa32r2el \ | mipsisa64 | mipsisa64el \ | mipsisa64r2 | mipsisa64r2el \ | mipsisa64sb1 | mipsisa64sb1el \ | mipsisa64sr71k | mipsisa64sr71kel \ | mipstx39 | mipstx39el \ | mn10200 | mn10300 \ | msp430 \ | ns16k | ns32k \ | openrisc | or32 \ | pdp10 | pdp11 | pj | pjl \ | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ | pyramid \ | sh | sh[1234] | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \ | sh64 | sh64le \ | sparc | sparc64 | sparc86x | sparclet | sparclite | sparcv9 | sparcv9b \ | strongarm \ | tahoe | thumb | tic4x | tic80 | tron \ | v850 | v850e \ | we32k \ | x86 | xscale | xstormy16 | xtensa \ | z8k) basic_machine=$basic_machine-unknown ;; m6811 | m68hc11 | m6812 | m68hc12) # Motorola 68HC11/12. basic_machine=$basic_machine-unknown os=-none ;; m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) ;; # We use `pc' rather than `unknown' # because (1) that's what they normally are, and # (2) the word "unknown" tends to confuse beginning users. i*86 | x86_64) basic_machine=$basic_machine-pc ;; # Object if more than one company name word. *-*-*) echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 exit 1 ;; # Recognize the basic CPU types with company name. 580-* \ | a29k-* \ | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ | avr-* \ | bs2000-* \ | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \ | clipper-* | cydra-* \ | d10v-* | d30v-* | dlx-* \ | elxsi-* \ | f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \ | h8300-* | h8500-* \ | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ | i*86-* | i860-* | i960-* | ia64-* \ | ip2k-* | iq2000-* \ | m32r-* \ | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ | m88110-* | m88k-* | mcore-* \ | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ | mips16-* \ | mips64-* | mips64el-* \ | mips64vr-* | mips64vrel-* \ | mips64orion-* | mips64orionel-* \ | mips64vr4100-* | mips64vr4100el-* \ | mips64vr4300-* | mips64vr4300el-* \ | mips64vr5000-* | mips64vr5000el-* \ | mipsisa32-* | mipsisa32el-* \ | mipsisa32r2-* | mipsisa32r2el-* \ | mipsisa64-* | mipsisa64el-* \ | mipsisa64r2-* | mipsisa64r2el-* \ | mipsisa64sb1-* | mipsisa64sb1el-* \ | mipsisa64sr71k-* | mipsisa64sr71kel-* \ | mipstx39-* | mipstx39el-* \ | msp430-* \ | none-* | np1-* | nv1-* | ns16k-* | ns32k-* \ | orion-* \ | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ | pyramid-* \ | romp-* | rs6000-* \ | sh-* | sh[1234]-* | sh[23]e-* | sh[34]eb-* | shbe-* \ | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ | sparc-* | sparc64-* | sparc86x-* | sparclet-* | sparclite-* \ | sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \ | tahoe-* | thumb-* \ | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ | tron-* \ | v850-* | v850e-* | vax-* \ | we32k-* \ | x86-* | x86_64-* | xps100-* | xscale-* | xstormy16-* \ | xtensa-* \ | ymp-* \ | z8k-*) ;; # Recognize the various machine names and aliases which stand # for a CPU type and a company and sometimes even an OS. 386bsd) basic_machine=i386-unknown os=-bsd ;; 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) basic_machine=m68000-att ;; 3b*) basic_machine=we32k-att ;; a29khif) basic_machine=a29k-amd os=-udi ;; abacus) basic_machine=abacus-unknown ;; adobe68k) basic_machine=m68010-adobe os=-scout ;; alliant | fx80) basic_machine=fx80-alliant ;; altos | altos3068) basic_machine=m68k-altos ;; am29k) basic_machine=a29k-none os=-bsd ;; amd64) basic_machine=x86_64-pc ;; amd64-*) basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` ;; amdahl) basic_machine=580-amdahl os=-sysv ;; amiga | amiga-*) basic_machine=m68k-unknown ;; amigaos | amigados) basic_machine=m68k-unknown os=-amigaos ;; amigaunix | amix) basic_machine=m68k-unknown os=-sysv4 ;; apollo68) basic_machine=m68k-apollo os=-sysv ;; apollo68bsd) basic_machine=m68k-apollo os=-bsd ;; aux) basic_machine=m68k-apple os=-aux ;; balance) basic_machine=ns32k-sequent os=-dynix ;; c90) basic_machine=c90-cray os=-unicos ;; convex-c1) basic_machine=c1-convex os=-bsd ;; convex-c2) basic_machine=c2-convex os=-bsd ;; convex-c32) basic_machine=c32-convex os=-bsd ;; convex-c34) basic_machine=c34-convex os=-bsd ;; convex-c38) basic_machine=c38-convex os=-bsd ;; cray | j90) basic_machine=j90-cray os=-unicos ;; cr16c) basic_machine=cr16c-unknown os=-elf ;; crds | unos) basic_machine=m68k-crds ;; cris | cris-* | etrax*) basic_machine=cris-axis ;; crx) basic_machine=crx-unknown os=-elf ;; da30 | da30-*) basic_machine=m68k-da30 ;; decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) basic_machine=mips-dec ;; decsystem10* | dec10*) basic_machine=pdp10-dec os=-tops10 ;; decsystem20* | dec20*) basic_machine=pdp10-dec os=-tops20 ;; delta | 3300 | motorola-3300 | motorola-delta \ | 3300-motorola | delta-motorola) basic_machine=m68k-motorola ;; delta88) basic_machine=m88k-motorola os=-sysv3 ;; dpx20 | dpx20-*) basic_machine=rs6000-bull os=-bosx ;; dpx2* | dpx2*-bull) basic_machine=m68k-bull os=-sysv3 ;; ebmon29k) basic_machine=a29k-amd os=-ebmon ;; elxsi) basic_machine=elxsi-elxsi os=-bsd ;; encore | umax | mmax) basic_machine=ns32k-encore ;; es1800 | OSE68k | ose68k | ose | OSE) basic_machine=m68k-ericsson os=-ose ;; fx2800) basic_machine=i860-alliant ;; genix) basic_machine=ns32k-ns ;; gmicro) basic_machine=tron-gmicro os=-sysv ;; go32) basic_machine=i386-pc os=-go32 ;; h3050r* | hiux*) basic_machine=hppa1.1-hitachi os=-hiuxwe2 ;; h8300hms) basic_machine=h8300-hitachi os=-hms ;; h8300xray) basic_machine=h8300-hitachi os=-xray ;; h8500hms) basic_machine=h8500-hitachi os=-hms ;; harris) basic_machine=m88k-harris os=-sysv3 ;; hp300-*) basic_machine=m68k-hp ;; hp300bsd) basic_machine=m68k-hp os=-bsd ;; hp300hpux) basic_machine=m68k-hp os=-hpux ;; hp3k9[0-9][0-9] | hp9[0-9][0-9]) basic_machine=hppa1.0-hp ;; hp9k2[0-9][0-9] | hp9k31[0-9]) basic_machine=m68000-hp ;; hp9k3[2-9][0-9]) basic_machine=m68k-hp ;; hp9k6[0-9][0-9] | hp6[0-9][0-9]) basic_machine=hppa1.0-hp ;; hp9k7[0-79][0-9] | hp7[0-79][0-9]) basic_machine=hppa1.1-hp ;; hp9k78[0-9] | hp78[0-9]) # FIXME: really hppa2.0-hp basic_machine=hppa1.1-hp ;; hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) # FIXME: really hppa2.0-hp basic_machine=hppa1.1-hp ;; hp9k8[0-9][13679] | hp8[0-9][13679]) basic_machine=hppa1.1-hp ;; hp9k8[0-9][0-9] | hp8[0-9][0-9]) basic_machine=hppa1.0-hp ;; hppa-next) os=-nextstep3 ;; hppaosf) basic_machine=hppa1.1-hp os=-osf ;; hppro) basic_machine=hppa1.1-hp os=-proelf ;; i370-ibm* | ibm*) basic_machine=i370-ibm ;; # I'm not sure what "Sysv32" means. Should this be sysv3.2? i*86v32) basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` os=-sysv32 ;; i*86v4*) basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` os=-sysv4 ;; i*86v) basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` os=-sysv ;; i*86sol2) basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` os=-solaris2 ;; i386mach) basic_machine=i386-mach os=-mach ;; i386-vsta | vsta) basic_machine=i386-unknown os=-vsta ;; iris | iris4d) basic_machine=mips-sgi case $os in -irix*) ;; *) os=-irix4 ;; esac ;; isi68 | isi) basic_machine=m68k-isi os=-sysv ;; m88k-omron*) basic_machine=m88k-omron ;; magnum | m3230) basic_machine=mips-mips os=-sysv ;; merlin) basic_machine=ns32k-utek os=-sysv ;; mingw32) basic_machine=i386-pc os=-mingw32 ;; miniframe) basic_machine=m68000-convergent ;; *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) basic_machine=m68k-atari os=-mint ;; mips3*-*) basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` ;; mips3*) basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown ;; mmix*) basic_machine=mmix-knuth os=-mmixware ;; monitor) basic_machine=m68k-rom68k os=-coff ;; morphos) basic_machine=powerpc-unknown os=-morphos ;; msdos) basic_machine=i386-pc os=-msdos ;; mvs) basic_machine=i370-ibm os=-mvs ;; ncr3000) basic_machine=i486-ncr os=-sysv4 ;; netbsd386) basic_machine=i386-unknown os=-netbsd ;; netwinder) basic_machine=armv4l-rebel os=-linux ;; news | news700 | news800 | news900) basic_machine=m68k-sony os=-newsos ;; news1000) basic_machine=m68030-sony os=-newsos ;; news-3600 | risc-news) basic_machine=mips-sony os=-newsos ;; necv70) basic_machine=v70-nec os=-sysv ;; next | m*-next ) basic_machine=m68k-next case $os in -nextstep* ) ;; -ns2*) os=-nextstep2 ;; *) os=-nextstep3 ;; esac ;; nh3000) basic_machine=m68k-harris os=-cxux ;; nh[45]000) basic_machine=m88k-harris os=-cxux ;; nindy960) basic_machine=i960-intel os=-nindy ;; mon960) basic_machine=i960-intel os=-mon960 ;; nonstopux) basic_machine=mips-compaq os=-nonstopux ;; np1) basic_machine=np1-gould ;; nv1) basic_machine=nv1-cray os=-unicosmp ;; nsr-tandem) basic_machine=nsr-tandem ;; op50n-* | op60c-*) basic_machine=hppa1.1-oki os=-proelf ;; or32 | or32-*) basic_machine=or32-unknown os=-coff ;; os400) basic_machine=powerpc-ibm os=-os400 ;; OSE68000 | ose68000) basic_machine=m68000-ericsson os=-ose ;; os68k) basic_machine=m68k-none os=-os68k ;; pa-hitachi) basic_machine=hppa1.1-hitachi os=-hiuxwe2 ;; paragon) basic_machine=i860-intel os=-osf ;; pbd) basic_machine=sparc-tti ;; pbb) basic_machine=m68k-tti ;; pc532 | pc532-*) basic_machine=ns32k-pc532 ;; pentium | p5 | k5 | k6 | nexgen | viac3) basic_machine=i586-pc ;; pentiumpro | p6 | 6x86 | athlon | athlon_*) basic_machine=i686-pc ;; pentiumii | pentium2 | pentiumiii | pentium3) basic_machine=i686-pc ;; pentium4) basic_machine=i786-pc ;; pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` ;; pentiumpro-* | p6-* | 6x86-* | athlon-*) basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` ;; pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` ;; pentium4-*) basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` ;; pn) basic_machine=pn-gould ;; power) basic_machine=power-ibm ;; ppc) basic_machine=powerpc-unknown ;; ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` ;; ppcle | powerpclittle | ppc-le | powerpc-little) basic_machine=powerpcle-unknown ;; ppcle-* | powerpclittle-*) basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` ;; ppc64) basic_machine=powerpc64-unknown ;; ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` ;; ppc64le | powerpc64little | ppc64-le | powerpc64-little) basic_machine=powerpc64le-unknown ;; ppc64le-* | powerpc64little-*) basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` ;; ps2) basic_machine=i386-ibm ;; pw32) basic_machine=i586-unknown os=-pw32 ;; rom68k) basic_machine=m68k-rom68k os=-coff ;; rm[46]00) basic_machine=mips-siemens ;; rtpc | rtpc-*) basic_machine=romp-ibm ;; s390 | s390-*) basic_machine=s390-ibm ;; s390x | s390x-*) basic_machine=s390x-ibm ;; sa29200) basic_machine=a29k-amd os=-udi ;; sb1) basic_machine=mipsisa64sb1-unknown ;; sb1el) basic_machine=mipsisa64sb1el-unknown ;; sei) basic_machine=mips-sei os=-seiux ;; sequent) basic_machine=i386-sequent ;; sh) basic_machine=sh-hitachi os=-hms ;; sh64) basic_machine=sh64-unknown ;; sparclite-wrs | simso-wrs) basic_machine=sparclite-wrs os=-vxworks ;; sps7) basic_machine=m68k-bull os=-sysv2 ;; spur) basic_machine=spur-unknown ;; st2000) basic_machine=m68k-tandem ;; stratus) basic_machine=i860-stratus os=-sysv4 ;; sun2) basic_machine=m68000-sun ;; sun2os3) basic_machine=m68000-sun os=-sunos3 ;; sun2os4) basic_machine=m68000-sun os=-sunos4 ;; sun3os3) basic_machine=m68k-sun os=-sunos3 ;; sun3os4) basic_machine=m68k-sun os=-sunos4 ;; sun4os3) basic_machine=sparc-sun os=-sunos3 ;; sun4os4) basic_machine=sparc-sun os=-sunos4 ;; sun4sol2) basic_machine=sparc-sun os=-solaris2 ;; sun3 | sun3-*) basic_machine=m68k-sun ;; sun4) basic_machine=sparc-sun ;; sun386 | sun386i | roadrunner) basic_machine=i386-sun ;; sv1) basic_machine=sv1-cray os=-unicos ;; symmetry) basic_machine=i386-sequent os=-dynix ;; t3e) basic_machine=alphaev5-cray os=-unicos ;; t90) basic_machine=t90-cray os=-unicos ;; tic54x | c54x*) basic_machine=tic54x-unknown os=-coff ;; tic55x | c55x*) basic_machine=tic55x-unknown os=-coff ;; tic6x | c6x*) basic_machine=tic6x-unknown os=-coff ;; tx39) basic_machine=mipstx39-unknown ;; tx39el) basic_machine=mipstx39el-unknown ;; toad1) basic_machine=pdp10-xkl os=-tops20 ;; tower | tower-32) basic_machine=m68k-ncr ;; tpf) basic_machine=s390x-ibm os=-tpf ;; udi29k) basic_machine=a29k-amd os=-udi ;; ultra3) basic_machine=a29k-nyu os=-sym1 ;; v810 | necv810) basic_machine=v810-nec os=-none ;; vaxv) basic_machine=vax-dec os=-sysv ;; vms) basic_machine=vax-dec os=-vms ;; vpp*|vx|vx-*) basic_machine=f301-fujitsu ;; vxworks960) basic_machine=i960-wrs os=-vxworks ;; vxworks68) basic_machine=m68k-wrs os=-vxworks ;; vxworks29k) basic_machine=a29k-wrs os=-vxworks ;; w65*) basic_machine=w65-wdc os=-none ;; w89k-*) basic_machine=hppa1.1-winbond os=-proelf ;; xps | xps100) basic_machine=xps100-honeywell ;; ymp) basic_machine=ymp-cray os=-unicos ;; z8k-*-coff) basic_machine=z8k-unknown os=-sim ;; none) basic_machine=none-none os=-none ;; # Here we handle the default manufacturer of certain CPU types. It is in # some cases the only manufacturer, in others, it is the most popular. w89k) basic_machine=hppa1.1-winbond ;; op50n) basic_machine=hppa1.1-oki ;; op60c) basic_machine=hppa1.1-oki ;; romp) basic_machine=romp-ibm ;; rs6000) basic_machine=rs6000-ibm ;; vax) basic_machine=vax-dec ;; pdp10) # there are many clones, so DEC is not a safe bet basic_machine=pdp10-unknown ;; pdp11) basic_machine=pdp11-dec ;; we32k) basic_machine=we32k-att ;; sh3 | sh4 | sh[34]eb | sh[1234]le | sh[23]ele) basic_machine=sh-unknown ;; sh64) basic_machine=sh64-unknown ;; sparc | sparcv9 | sparcv9b) basic_machine=sparc-sun ;; cydra) basic_machine=cydra-cydrome ;; orion) basic_machine=orion-highlevel ;; orion105) basic_machine=clipper-highlevel ;; mac | mpw | mac-mpw) basic_machine=m68k-apple ;; pmac | pmac-mpw) basic_machine=powerpc-apple ;; *-unknown) # Make sure to match an already-canonicalized machine name. ;; *) echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 exit 1 ;; esac # Here we canonicalize certain aliases for manufacturers. case $basic_machine in *-digital*) basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` ;; *-commodore*) basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` ;; *) ;; esac # Decode manufacturer-specific aliases for certain operating systems. if [ x"$os" != x"" ] then case $os in # First match some system type aliases # that might get confused with valid system types. # -solaris* is a basic system type, with this one exception. -solaris1 | -solaris1.*) os=`echo $os | sed -e 's|solaris1|sunos4|'` ;; -solaris) os=-solaris2 ;; -svr4*) os=-sysv4 ;; -unixware*) os=-sysv4.2uw ;; -gnu/linux*) os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` ;; # First accept the basic system types. # The portable systems comes first. # Each alternative MUST END IN A *, to match a version number. # -sysv* is not here because it comes later, after sysvr4. -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\ | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \ | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ | -aos* \ | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* | -openbsd* \ | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ | -chorusos* | -chorusrdb* \ | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ | -mingw32* | -linux-gnu* | -linux-uclibc* | -uxpv* | -beos* | -mpeix* | -udk* \ | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly*) # Remember, each alternative MUST END IN *, to match a version number. ;; -qnx*) case $basic_machine in x86-* | i*86-*) ;; *) os=-nto$os ;; esac ;; -nto-qnx*) ;; -nto*) os=`echo $os | sed -e 's|nto|nto-qnx|'` ;; -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ | -windows* | -osx | -abug | -netware* | -os9* | -beos* \ | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) ;; -mac*) os=`echo $os | sed -e 's|mac|macos|'` ;; -linux-dietlibc) os=-linux-dietlibc ;; -linux*) os=`echo $os | sed -e 's|linux|linux-gnu|'` ;; -sunos5*) os=`echo $os | sed -e 's|sunos5|solaris2|'` ;; -sunos6*) os=`echo $os | sed -e 's|sunos6|solaris3|'` ;; -opened*) os=-openedition ;; -os400*) os=-os400 ;; -wince*) os=-wince ;; -osfrose*) os=-osfrose ;; -osf*) os=-osf ;; -utek*) os=-bsd ;; -dynix*) os=-bsd ;; -acis*) os=-aos ;; -atheos*) os=-atheos ;; -syllable*) os=-syllable ;; -386bsd) os=-bsd ;; -ctix* | -uts*) os=-sysv ;; -nova*) os=-rtmk-nova ;; -ns2 ) os=-nextstep2 ;; -nsk*) os=-nsk ;; # Preserve the version number of sinix5. -sinix5.*) os=`echo $os | sed -e 's|sinix|sysv|'` ;; -sinix*) os=-sysv4 ;; -tpf*) os=-tpf ;; -triton*) os=-sysv3 ;; -oss*) os=-sysv3 ;; -svr4) os=-sysv4 ;; -svr3) os=-sysv3 ;; -sysvr4) os=-sysv4 ;; # This must come after -sysvr4. -sysv*) ;; -ose*) os=-ose ;; -es1800*) os=-ose ;; -xenix) os=-xenix ;; -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) os=-mint ;; -aros*) os=-aros ;; -kaos*) os=-kaos ;; -none) ;; *) # Get rid of the `-' at the beginning of $os. os=`echo $os | sed 's/[^-]*-//'` echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 exit 1 ;; esac else # Here we handle the default operating systems that come with various machines. # The value should be what the vendor currently ships out the door with their # machine or put another way, the most popular os provided with the machine. # Note that if you're going to try to match "-MANUFACTURER" here (say, # "-sun"), then you have to tell the case statement up towards the top # that MANUFACTURER isn't an operating system. Otherwise, code above # will signal an error saying that MANUFACTURER isn't an operating # system, and we'll never get to this point. case $basic_machine in *-acorn) os=-riscix1.2 ;; arm*-rebel) os=-linux ;; arm*-semi) os=-aout ;; c4x-* | tic4x-*) os=-coff ;; # This must come before the *-dec entry. pdp10-*) os=-tops20 ;; pdp11-*) os=-none ;; *-dec | vax-*) os=-ultrix4.2 ;; m68*-apollo) os=-domain ;; i386-sun) os=-sunos4.0.2 ;; m68000-sun) os=-sunos3 # This also exists in the configure program, but was not the # default. # os=-sunos4 ;; m68*-cisco) os=-aout ;; mips*-cisco) os=-elf ;; mips*-*) os=-elf ;; or32-*) os=-coff ;; *-tti) # must be before sparc entry or we get the wrong os. os=-sysv3 ;; sparc-* | *-sun) os=-sunos4.1.1 ;; *-be) os=-beos ;; *-ibm) os=-aix ;; *-wec) os=-proelf ;; *-winbond) os=-proelf ;; *-oki) os=-proelf ;; *-hp) os=-hpux ;; *-hitachi) os=-hiux ;; i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) os=-sysv ;; *-cbm) os=-amigaos ;; *-dg) os=-dgux ;; *-dolphin) os=-sysv3 ;; m68k-ccur) os=-rtu ;; m88k-omron*) os=-luna ;; *-next ) os=-nextstep ;; *-sequent) os=-ptx ;; *-crds) os=-unos ;; *-ns) os=-genix ;; i370-*) os=-mvs ;; *-next) os=-nextstep3 ;; *-gould) os=-sysv ;; *-highlevel) os=-bsd ;; *-encore) os=-bsd ;; *-sgi) os=-irix ;; *-siemens) os=-sysv4 ;; *-masscomp) os=-rtu ;; f30[01]-fujitsu | f700-fujitsu) os=-uxpv ;; *-rom68k) os=-coff ;; *-*bug) os=-coff ;; *-apple) os=-macos ;; *-atari*) os=-mint ;; *) os=-none ;; esac fi # Here we handle the case where we know the os, and the CPU type, but not the # manufacturer. We pick the logical manufacturer. vendor=unknown case $basic_machine in *-unknown) case $os in -riscix*) vendor=acorn ;; -sunos*) vendor=sun ;; -aix*) vendor=ibm ;; -beos*) vendor=be ;; -hpux*) vendor=hp ;; -mpeix*) vendor=hp ;; -hiux*) vendor=hitachi ;; -unos*) vendor=crds ;; -dgux*) vendor=dg ;; -luna*) vendor=omron ;; -genix*) vendor=ns ;; -mvs* | -opened*) vendor=ibm ;; -os400*) vendor=ibm ;; -ptx*) vendor=sequent ;; -tpf*) vendor=ibm ;; -vxsim* | -vxworks* | -windiss*) vendor=wrs ;; -aux*) vendor=apple ;; -hms*) vendor=hitachi ;; -mpw* | -macos*) vendor=apple ;; -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) vendor=atari ;; -vos*) vendor=stratus ;; esac basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` ;; esac echo $basic_machine$os exit 0 # Local variables: # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "timestamp='" # time-stamp-format: "%:y-%02m-%02d" # time-stamp-end: "'" # End: bibledit-gtk-4.9/configure000755 000766 000024 00001131131 12517415674 015777 0ustar00teusstaff000000 000000 #! /bin/sh # Guess values for system-dependent variables and create Makefiles. # Generated by GNU Autoconf 2.69 for bibledit-gtk 4.9. # # Report bugs to . # # # Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc. # # # This configure script is free software; the Free Software Foundation # gives unlimited permission to copy, distribute and modify it. ## -------------------- ## ## M4sh Initialization. ## ## -------------------- ## # Be more Bourne compatible DUALCASE=1; export DUALCASE # for MKS sh if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : emulate sh NULLCMD=: # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which # is contrary to our usage. Disable this feature. alias -g '${1+"$@"}'='"$@"' setopt NO_GLOB_SUBST else case `(set -o) 2>/dev/null` in #( *posix*) : set -o posix ;; #( *) : ;; esac fi as_nl=' ' export as_nl # Printing a long string crashes Solaris 7 /usr/bin/printf. as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo # Prefer a ksh shell builtin over an external printf program on Solaris, # but without wasting forks for bash or zsh. if test -z "$BASH_VERSION$ZSH_VERSION" \ && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then as_echo='print -r --' as_echo_n='print -rn --' elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then as_echo='printf %s\n' as_echo_n='printf %s' else if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' as_echo_n='/usr/ucb/echo -n' else as_echo_body='eval expr "X$1" : "X\\(.*\\)"' as_echo_n_body='eval arg=$1; case $arg in #( *"$as_nl"*) expr "X$arg" : "X\\(.*\\)$as_nl"; arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; esac; expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" ' export as_echo_n_body as_echo_n='sh -c $as_echo_n_body as_echo' fi export as_echo_body as_echo='sh -c $as_echo_body as_echo' fi # The user is always right. if test "${PATH_SEPARATOR+set}" != set; then PATH_SEPARATOR=: (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || PATH_SEPARATOR=';' } fi # IFS # We need space, tab and new line, in precisely that order. Quoting is # there to prevent editors from complaining about space-tab. # (If _AS_PATH_WALK were called with IFS unset, it would disable word # splitting by setting IFS to empty value.) IFS=" "" $as_nl" # Find who we are. Look in the path if we contain no directory separator. as_myself= case $0 in #(( *[\\/]* ) as_myself=$0 ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break done IFS=$as_save_IFS ;; esac # We did not find ourselves, most probably we were run as `sh COMMAND' # in which case we are not to be found in the path. if test "x$as_myself" = x; then as_myself=$0 fi if test ! -f "$as_myself"; then $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 exit 1 fi # Unset variables that we do not need and which cause bugs (e.g. in # pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" # suppresses any "Segmentation fault" message there. '((' could # trigger a bug in pdksh 5.2.14. for as_var in BASH_ENV ENV MAIL MAILPATH do eval test x\${$as_var+set} = xset \ && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : done PS1='$ ' PS2='> ' PS4='+ ' # NLS nuisances. LC_ALL=C export LC_ALL LANGUAGE=C export LANGUAGE # CDPATH. (unset CDPATH) >/dev/null 2>&1 && unset CDPATH # Use a proper internal environment variable to ensure we don't fall # into an infinite loop, continuously re-executing ourselves. if test x"${_as_can_reexec}" != xno && test "x$CONFIG_SHELL" != x; then _as_can_reexec=no; export _as_can_reexec; # We cannot yet assume a decent shell, so we have to provide a # neutralization value for shells without unset; and this also # works around shells that cannot unset nonexistent variables. # Preserve -v and -x to the replacement shell. BASH_ENV=/dev/null ENV=/dev/null (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV case $- in # (((( *v*x* | *x*v* ) as_opts=-vx ;; *v* ) as_opts=-v ;; *x* ) as_opts=-x ;; * ) as_opts= ;; esac exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"} # Admittedly, this is quite paranoid, since all the known shells bail # out after a failed `exec'. $as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2 as_fn_exit 255 fi # We don't want this to propagate to other subprocesses. { _as_can_reexec=; unset _as_can_reexec;} if test "x$CONFIG_SHELL" = x; then as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then : emulate sh NULLCMD=: # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which # is contrary to our usage. Disable this feature. alias -g '\${1+\"\$@\"}'='\"\$@\"' setopt NO_GLOB_SUBST else case \`(set -o) 2>/dev/null\` in #( *posix*) : set -o posix ;; #( *) : ;; esac fi " as_required="as_fn_return () { (exit \$1); } as_fn_success () { as_fn_return 0; } as_fn_failure () { as_fn_return 1; } as_fn_ret_success () { return 0; } as_fn_ret_failure () { return 1; } exitcode=0 as_fn_success || { exitcode=1; echo as_fn_success failed.; } as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; } as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; } as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; } if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then : else exitcode=1; echo positional parameters were not saved. fi test x\$exitcode = x0 || exit 1 test -x / || exit 1" as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" && test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1 test \$(( 1 + 1 )) = 2 || exit 1" if (eval "$as_required") 2>/dev/null; then : as_have_required=yes else as_have_required=no fi if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then : else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR as_found=false for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. as_found=: case $as_dir in #( /*) for as_base in sh bash ksh sh5; do # Try only shells that exist, to save several forks. as_shell=$as_dir/$as_base if { test -f "$as_shell" || test -f "$as_shell.exe"; } && { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then : CONFIG_SHELL=$as_shell as_have_required=yes if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then : break 2 fi fi done;; esac as_found=false done $as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } && { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then : CONFIG_SHELL=$SHELL as_have_required=yes fi; } IFS=$as_save_IFS if test "x$CONFIG_SHELL" != x; then : export CONFIG_SHELL # We cannot yet assume a decent shell, so we have to provide a # neutralization value for shells without unset; and this also # works around shells that cannot unset nonexistent variables. # Preserve -v and -x to the replacement shell. BASH_ENV=/dev/null ENV=/dev/null (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV case $- in # (((( *v*x* | *x*v* ) as_opts=-vx ;; *v* ) as_opts=-v ;; *x* ) as_opts=-x ;; * ) as_opts= ;; esac exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"} # Admittedly, this is quite paranoid, since all the known shells bail # out after a failed `exec'. $as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2 exit 255 fi if test x$as_have_required = xno; then : $as_echo "$0: This script requires a shell more modern than all" $as_echo "$0: the shells that I found on your system." if test x${ZSH_VERSION+set} = xset ; then $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should" $as_echo "$0: be upgraded to zsh 4.3.4 or later." else $as_echo "$0: Please tell bug-autoconf@gnu.org and $0: http://www.nongnu.org/bibledit about your system, $0: including any error possibly output before this $0: message. Then install a modern shell, or manually run $0: the script under such a shell if you do have one." fi exit 1 fi fi fi SHELL=${CONFIG_SHELL-/bin/sh} export SHELL # Unset more variables known to interfere with behavior of common tools. CLICOLOR_FORCE= GREP_OPTIONS= unset CLICOLOR_FORCE GREP_OPTIONS ## --------------------- ## ## M4sh Shell Functions. ## ## --------------------- ## # as_fn_unset VAR # --------------- # Portably unset VAR. as_fn_unset () { { eval $1=; unset $1;} } as_unset=as_fn_unset # as_fn_set_status STATUS # ----------------------- # Set $? to STATUS, without forking. as_fn_set_status () { return $1 } # as_fn_set_status # as_fn_exit STATUS # ----------------- # Exit the shell with STATUS, even in a "trap 0" or "set -e" context. as_fn_exit () { set +e as_fn_set_status $1 exit $1 } # as_fn_exit # as_fn_mkdir_p # ------------- # Create "$as_dir" as a directory, including parents if necessary. as_fn_mkdir_p () { case $as_dir in #( -*) as_dir=./$as_dir;; esac test -d "$as_dir" || eval $as_mkdir_p || { as_dirs= while :; do case $as_dir in #( *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( *) as_qdir=$as_dir;; esac as_dirs="'$as_qdir' $as_dirs" as_dir=`$as_dirname -- "$as_dir" || $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$as_dir" : 'X\(//\)[^/]' \| \ X"$as_dir" : 'X\(//\)$' \| \ X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || $as_echo X"$as_dir" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` test -d "$as_dir" && break done test -z "$as_dirs" || eval "mkdir $as_dirs" } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" } # as_fn_mkdir_p # as_fn_executable_p FILE # ----------------------- # Test if FILE is an executable regular file. as_fn_executable_p () { test -f "$1" && test -x "$1" } # as_fn_executable_p # as_fn_append VAR VALUE # ---------------------- # Append the text in VALUE to the end of the definition contained in VAR. Take # advantage of any shell optimizations that allow amortized linear growth over # repeated appends, instead of the typical quadratic growth present in naive # implementations. if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : eval 'as_fn_append () { eval $1+=\$2 }' else as_fn_append () { eval $1=\$$1\$2 } fi # as_fn_append # as_fn_arith ARG... # ------------------ # Perform arithmetic evaluation on the ARGs, and store the result in the # global $as_val. Take advantage of shells that can avoid forks. The arguments # must be portable across $(()) and expr. if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : eval 'as_fn_arith () { as_val=$(( $* )) }' else as_fn_arith () { as_val=`expr "$@" || test $? -eq 1` } fi # as_fn_arith # as_fn_error STATUS ERROR [LINENO LOG_FD] # ---------------------------------------- # Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are # provided, also output the error to LOG_FD, referencing LINENO. Then exit the # script with STATUS, using 1 if that was 0. as_fn_error () { as_status=$1; test $as_status -eq 0 && as_status=1 if test "$4"; then as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 fi $as_echo "$as_me: error: $2" >&2 as_fn_exit $as_status } # as_fn_error if expr a : '\(a\)' >/dev/null 2>&1 && test "X`expr 00001 : '.*\(...\)'`" = X001; then as_expr=expr else as_expr=false fi if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then as_basename=basename else as_basename=false fi if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then as_dirname=dirname else as_dirname=false fi as_me=`$as_basename -- "$0" || $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ X"$0" : 'X\(//\)$' \| \ X"$0" : 'X\(/\)' \| . 2>/dev/null || $as_echo X/"$0" | sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/ q } /^X\/\(\/\/\)$/{ s//\1/ q } /^X\/\(\/\).*/{ s//\1/ q } s/.*/./; q'` # Avoid depending upon Character Ranges. as_cr_letters='abcdefghijklmnopqrstuvwxyz' as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' as_cr_Letters=$as_cr_letters$as_cr_LETTERS as_cr_digits='0123456789' as_cr_alnum=$as_cr_Letters$as_cr_digits as_lineno_1=$LINENO as_lineno_1a=$LINENO as_lineno_2=$LINENO as_lineno_2a=$LINENO eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" && test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || { # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-) sed -n ' p /[$]LINENO/= ' <$as_myself | sed ' s/[$]LINENO.*/&-/ t lineno b :lineno N :loop s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ t loop s/-\n.*// ' >$as_me.lineno && chmod +x "$as_me.lineno" || { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; } # If we had to re-execute with $CONFIG_SHELL, we're ensured to have # already done that, so ensure we don't try to do so again and fall # in an infinite loop. This has already happened in practice. _as_can_reexec=no; export _as_can_reexec # Don't try to exec as it changes $[0], causing all sort of problems # (the dirname of $[0] is not the place where we might find the # original and so on. Autoconf is especially sensitive to this). . "./$as_me.lineno" # Exit status is that of the last command. exit } ECHO_C= ECHO_N= ECHO_T= case `echo -n x` in #((((( -n*) case `echo 'xy\c'` in *c*) ECHO_T=' ';; # ECHO_T is single tab character. xy) ECHO_C='\c';; *) echo `echo ksh88 bug on AIX 6.1` > /dev/null ECHO_T=' ';; esac;; *) ECHO_N='-n';; esac rm -f conf$$ conf$$.exe conf$$.file if test -d conf$$.dir; then rm -f conf$$.dir/conf$$.file else rm -f conf$$.dir mkdir conf$$.dir 2>/dev/null fi if (echo >conf$$.file) 2>/dev/null; then if ln -s conf$$.file conf$$ 2>/dev/null; then as_ln_s='ln -s' # ... but there are two gotchas: # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. # In both cases, we have to default to `cp -pR'. ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || as_ln_s='cp -pR' elif ln conf$$.file conf$$ 2>/dev/null; then as_ln_s=ln else as_ln_s='cp -pR' fi else as_ln_s='cp -pR' fi rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file rmdir conf$$.dir 2>/dev/null if mkdir -p . 2>/dev/null; then as_mkdir_p='mkdir -p "$as_dir"' else test -d ./-p && rmdir ./-p as_mkdir_p=false fi as_test_x='test -x' as_executable_p=as_fn_executable_p # Sed expression to map a string onto a valid CPP name. as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" # Sed expression to map a string onto a valid variable name. as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" test -n "$DJDIR" || exec 7<&0 &1 # Name of the host. # hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status, # so uname gets run too. ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` # # Initializations. # ac_default_prefix=/usr/local ac_clean_files= ac_config_libobj_dir=. LIBOBJS= cross_compiling=no subdirs= MFLAGS= MAKEFLAGS= # Identity of this package. PACKAGE_NAME='bibledit-gtk' PACKAGE_TARNAME='bibledit-gtk' PACKAGE_VERSION='4.9' PACKAGE_STRING='bibledit-gtk 4.9' PACKAGE_BUGREPORT='http://www.nongnu.org/bibledit' PACKAGE_URL='' ac_unique_file="src" # Factoring default headers for most tests. ac_includes_default="\ #include #ifdef HAVE_SYS_TYPES_H # include #endif #ifdef HAVE_SYS_STAT_H # include #endif #ifdef STDC_HEADERS # include # include #else # ifdef HAVE_STDLIB_H # include # endif #endif #ifdef HAVE_STRING_H # if !defined STDC_HEADERS && defined HAVE_MEMORY_H # include # endif # include #endif #ifdef HAVE_STRINGS_H # include #endif #ifdef HAVE_INTTYPES_H # include #endif #ifdef HAVE_STDINT_H # include #endif #ifdef HAVE_UNISTD_H # include #endif" ac_subst_vars='am__EXEEXT_FALSE am__EXEEXT_TRUE LTLIBOBJS LIBOBJS packagedatadir WIN32_FALSE WIN32_TRUE DARWIN_FALSE DARWIN_TRUE LINUX_FALSE LINUX_TRUE LIBSOUP_LIBS LIBSOUP_CFLAGS WEBKIT_LIBS WEBKIT_CFLAGS GTKSOURCEVIEW_LIBS GTKSOURCEVIEW_CFLAGS PANGO_LIBS PANGO_CFLAGS ENCHANT_LIBS ENCHANT_CFLAGS XML_LIBS XML_CPPFLAGS XML2_CONFIG SQLITE_LIBS SQLITE_CFLAGS GOBJECT_LIBS GOBJECT_CFLAGS GTHREAD_LIBS GTHREAD_CFLAGS GLIB_LIBS GLIB_CFLAGS FIND_CURL FIND_TAR FIND_MERGE FIND_PATCH FIND_DIFF FIND_GPP FIND_XARGS FIND_PATH MAKE_PATH HEAD_PATH SORT_PATH CAT_PATH STRINGS_PATH ICONV_PATH GUNZIP_PATH GZIP_PATH TAIL_PATH DATE_PATH TEE_TOUCH GREP_PATH GTK_LIBS GTK_CFLAGS PKG_CONFIG_LIBDIR PKG_CONFIG_PATH PKG_CONFIG EGREP GREP CXXCPP HAVE_CXX11 am__fastdepCXX_FALSE am__fastdepCXX_TRUE CXXDEPMODE ac_ct_CXX CXXFLAGS CXX CPP am__fastdepCC_FALSE am__fastdepCC_TRUE CCDEPMODE am__nodep AMDEPBACKSLASH AMDEP_FALSE AMDEP_TRUE am__quote am__include DEPDIR OBJEXT EXEEXT ac_ct_CC CPPFLAGS LDFLAGS CFLAGS CC AM_BACKSLASH AM_DEFAULT_VERBOSITY AM_DEFAULT_V AM_V am__untar am__tar AMTAR am__leading_dot SET_MAKE AWK mkdir_p MKDIR_P INSTALL_STRIP_PROGRAM STRIP install_sh MAKEINFO AUTOHEADER AUTOMAKE AUTOCONF ACLOCAL VERSION PACKAGE CYGPATH_W am__isrc INSTALL_DATA INSTALL_SCRIPT INSTALL_PROGRAM target_os target_vendor target_cpu target host_os host_vendor host_cpu host build_os build_vendor build_cpu build target_alias host_alias build_alias LIBS ECHO_T ECHO_N ECHO_C DEFS mandir localedir libdir psdir pdfdir dvidir htmldir infodir docdir oldincludedir includedir localstatedir sharedstatedir sysconfdir datadir datarootdir libexecdir sbindir bindir program_transform_name prefix exec_prefix PACKAGE_URL PACKAGE_BUGREPORT PACKAGE_STRING PACKAGE_VERSION PACKAGE_TARNAME PACKAGE_NAME PATH_SEPARATOR SHELL' ac_subst_files='' ac_user_opts=' enable_option_checking enable_silent_rules enable_dependency_tracking with_xml_prefix with_xml_exec_prefix enable_xmltest ' ac_precious_vars='build_alias host_alias target_alias CC CFLAGS LDFLAGS LIBS CPPFLAGS CPP CXX CXXFLAGS CCC CXXCPP PKG_CONFIG PKG_CONFIG_PATH PKG_CONFIG_LIBDIR GTK_CFLAGS GTK_LIBS GLIB_CFLAGS GLIB_LIBS GTHREAD_CFLAGS GTHREAD_LIBS GOBJECT_CFLAGS GOBJECT_LIBS SQLITE_CFLAGS SQLITE_LIBS ENCHANT_CFLAGS ENCHANT_LIBS PANGO_CFLAGS PANGO_LIBS GTKSOURCEVIEW_CFLAGS GTKSOURCEVIEW_LIBS WEBKIT_CFLAGS WEBKIT_LIBS LIBSOUP_CFLAGS LIBSOUP_LIBS' # Initialize some variables set by options. ac_init_help= ac_init_version=false ac_unrecognized_opts= ac_unrecognized_sep= # The variables have the same names as the options, with # dashes changed to underlines. cache_file=/dev/null exec_prefix=NONE no_create= no_recursion= prefix=NONE program_prefix=NONE program_suffix=NONE program_transform_name=s,x,x, silent= site= srcdir= verbose= x_includes=NONE x_libraries=NONE # Installation directory options. # These are left unexpanded so users can "make install exec_prefix=/foo" # and all the variables that are supposed to be based on exec_prefix # by default will actually change. # Use braces instead of parens because sh, perl, etc. also accept them. # (The list follows the same order as the GNU Coding Standards.) bindir='${exec_prefix}/bin' sbindir='${exec_prefix}/sbin' libexecdir='${exec_prefix}/libexec' datarootdir='${prefix}/share' datadir='${datarootdir}' sysconfdir='${prefix}/etc' sharedstatedir='${prefix}/com' localstatedir='${prefix}/var' includedir='${prefix}/include' oldincludedir='/usr/include' docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' infodir='${datarootdir}/info' htmldir='${docdir}' dvidir='${docdir}' pdfdir='${docdir}' psdir='${docdir}' libdir='${exec_prefix}/lib' localedir='${datarootdir}/locale' mandir='${datarootdir}/man' ac_prev= ac_dashdash= for ac_option do # If the previous option needs an argument, assign it. if test -n "$ac_prev"; then eval $ac_prev=\$ac_option ac_prev= continue fi case $ac_option in *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;; *=) ac_optarg= ;; *) ac_optarg=yes ;; esac # Accept the important Cygnus configure options, so we can diagnose typos. case $ac_dashdash$ac_option in --) ac_dashdash=yes ;; -bindir | --bindir | --bindi | --bind | --bin | --bi) ac_prev=bindir ;; -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) bindir=$ac_optarg ;; -build | --build | --buil | --bui | --bu) ac_prev=build_alias ;; -build=* | --build=* | --buil=* | --bui=* | --bu=*) build_alias=$ac_optarg ;; -cache-file | --cache-file | --cache-fil | --cache-fi \ | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) ac_prev=cache_file ;; -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) cache_file=$ac_optarg ;; --config-cache | -C) cache_file=config.cache ;; -datadir | --datadir | --datadi | --datad) ac_prev=datadir ;; -datadir=* | --datadir=* | --datadi=* | --datad=*) datadir=$ac_optarg ;; -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \ | --dataroo | --dataro | --datar) ac_prev=datarootdir ;; -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \ | --dataroot=* | --dataroo=* | --dataro=* | --datar=*) datarootdir=$ac_optarg ;; -disable-* | --disable-*) ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && as_fn_error $? "invalid feature name: $ac_useropt" ac_useropt_orig=$ac_useropt ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in *" "enable_$ac_useropt" "*) ;; *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig" ac_unrecognized_sep=', ';; esac eval enable_$ac_useropt=no ;; -docdir | --docdir | --docdi | --doc | --do) ac_prev=docdir ;; -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*) docdir=$ac_optarg ;; -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv) ac_prev=dvidir ;; -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*) dvidir=$ac_optarg ;; -enable-* | --enable-*) ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && as_fn_error $? "invalid feature name: $ac_useropt" ac_useropt_orig=$ac_useropt ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in *" "enable_$ac_useropt" "*) ;; *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig" ac_unrecognized_sep=', ';; esac eval enable_$ac_useropt=\$ac_optarg ;; -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ | --exec | --exe | --ex) ac_prev=exec_prefix ;; -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ | --exec=* | --exe=* | --ex=*) exec_prefix=$ac_optarg ;; -gas | --gas | --ga | --g) # Obsolete; use --with-gas. with_gas=yes ;; -help | --help | --hel | --he | -h) ac_init_help=long ;; -help=r* | --help=r* | --hel=r* | --he=r* | -hr*) ac_init_help=recursive ;; -help=s* | --help=s* | --hel=s* | --he=s* | -hs*) ac_init_help=short ;; -host | --host | --hos | --ho) ac_prev=host_alias ;; -host=* | --host=* | --hos=* | --ho=*) host_alias=$ac_optarg ;; -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht) ac_prev=htmldir ;; -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \ | --ht=*) htmldir=$ac_optarg ;; -includedir | --includedir | --includedi | --included | --include \ | --includ | --inclu | --incl | --inc) ac_prev=includedir ;; -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ | --includ=* | --inclu=* | --incl=* | --inc=*) includedir=$ac_optarg ;; -infodir | --infodir | --infodi | --infod | --info | --inf) ac_prev=infodir ;; -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) infodir=$ac_optarg ;; -libdir | --libdir | --libdi | --libd) ac_prev=libdir ;; -libdir=* | --libdir=* | --libdi=* | --libd=*) libdir=$ac_optarg ;; -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ | --libexe | --libex | --libe) ac_prev=libexecdir ;; -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ | --libexe=* | --libex=* | --libe=*) libexecdir=$ac_optarg ;; -localedir | --localedir | --localedi | --localed | --locale) ac_prev=localedir ;; -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*) localedir=$ac_optarg ;; -localstatedir | --localstatedir | --localstatedi | --localstated \ | --localstate | --localstat | --localsta | --localst | --locals) ac_prev=localstatedir ;; -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*) localstatedir=$ac_optarg ;; -mandir | --mandir | --mandi | --mand | --man | --ma | --m) ac_prev=mandir ;; -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) mandir=$ac_optarg ;; -nfp | --nfp | --nf) # Obsolete; use --without-fp. with_fp=no ;; -no-create | --no-create | --no-creat | --no-crea | --no-cre \ | --no-cr | --no-c | -n) no_create=yes ;; -no-recursion | --no-recursion | --no-recursio | --no-recursi \ | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) no_recursion=yes ;; -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ | --oldin | --oldi | --old | --ol | --o) ac_prev=oldincludedir ;; -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) oldincludedir=$ac_optarg ;; -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) ac_prev=prefix ;; -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) prefix=$ac_optarg ;; -program-prefix | --program-prefix | --program-prefi | --program-pref \ | --program-pre | --program-pr | --program-p) ac_prev=program_prefix ;; -program-prefix=* | --program-prefix=* | --program-prefi=* \ | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) program_prefix=$ac_optarg ;; -program-suffix | --program-suffix | --program-suffi | --program-suff \ | --program-suf | --program-su | --program-s) ac_prev=program_suffix ;; -program-suffix=* | --program-suffix=* | --program-suffi=* \ | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) program_suffix=$ac_optarg ;; -program-transform-name | --program-transform-name \ | --program-transform-nam | --program-transform-na \ | --program-transform-n | --program-transform- \ | --program-transform | --program-transfor \ | --program-transfo | --program-transf \ | --program-trans | --program-tran \ | --progr-tra | --program-tr | --program-t) ac_prev=program_transform_name ;; -program-transform-name=* | --program-transform-name=* \ | --program-transform-nam=* | --program-transform-na=* \ | --program-transform-n=* | --program-transform-=* \ | --program-transform=* | --program-transfor=* \ | --program-transfo=* | --program-transf=* \ | --program-trans=* | --program-tran=* \ | --progr-tra=* | --program-tr=* | --program-t=*) program_transform_name=$ac_optarg ;; -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd) ac_prev=pdfdir ;; -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*) pdfdir=$ac_optarg ;; -psdir | --psdir | --psdi | --psd | --ps) ac_prev=psdir ;; -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*) psdir=$ac_optarg ;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil) silent=yes ;; -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) ac_prev=sbindir ;; -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ | --sbi=* | --sb=*) sbindir=$ac_optarg ;; -sharedstatedir | --sharedstatedir | --sharedstatedi \ | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ | --sharedst | --shareds | --shared | --share | --shar \ | --sha | --sh) ac_prev=sharedstatedir ;; -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ | --sha=* | --sh=*) sharedstatedir=$ac_optarg ;; -site | --site | --sit) ac_prev=site ;; -site=* | --site=* | --sit=*) site=$ac_optarg ;; -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) ac_prev=srcdir ;; -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) srcdir=$ac_optarg ;; -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ | --syscon | --sysco | --sysc | --sys | --sy) ac_prev=sysconfdir ;; -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) sysconfdir=$ac_optarg ;; -target | --target | --targe | --targ | --tar | --ta | --t) ac_prev=target_alias ;; -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) target_alias=$ac_optarg ;; -v | -verbose | --verbose | --verbos | --verbo | --verb) verbose=yes ;; -version | --version | --versio | --versi | --vers | -V) ac_init_version=: ;; -with-* | --with-*) ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && as_fn_error $? "invalid package name: $ac_useropt" ac_useropt_orig=$ac_useropt ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in *" "with_$ac_useropt" "*) ;; *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig" ac_unrecognized_sep=', ';; esac eval with_$ac_useropt=\$ac_optarg ;; -without-* | --without-*) ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && as_fn_error $? "invalid package name: $ac_useropt" ac_useropt_orig=$ac_useropt ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in *" "with_$ac_useropt" "*) ;; *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig" ac_unrecognized_sep=', ';; esac eval with_$ac_useropt=no ;; --x) # Obsolete; use --with-x. with_x=yes ;; -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ | --x-incl | --x-inc | --x-in | --x-i) ac_prev=x_includes ;; -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) x_includes=$ac_optarg ;; -x-libraries | --x-libraries | --x-librarie | --x-librari \ | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) ac_prev=x_libraries ;; -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) x_libraries=$ac_optarg ;; -*) as_fn_error $? "unrecognized option: \`$ac_option' Try \`$0 --help' for more information" ;; *=*) ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` # Reject names that are not valid shell variable names. case $ac_envvar in #( '' | [0-9]* | *[!_$as_cr_alnum]* ) as_fn_error $? "invalid variable name: \`$ac_envvar'" ;; esac eval $ac_envvar=\$ac_optarg export $ac_envvar ;; *) # FIXME: should be removed in autoconf 3.0. $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2 expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2 : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}" ;; esac done if test -n "$ac_prev"; then ac_option=--`echo $ac_prev | sed 's/_/-/g'` as_fn_error $? "missing argument to $ac_option" fi if test -n "$ac_unrecognized_opts"; then case $enable_option_checking in no) ;; fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;; *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;; esac fi # Check all directory arguments for consistency. for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ datadir sysconfdir sharedstatedir localstatedir includedir \ oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ libdir localedir mandir do eval ac_val=\$$ac_var # Remove trailing slashes. case $ac_val in */ ) ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'` eval $ac_var=\$ac_val;; esac # Be sure to have absolute directory names. case $ac_val in [\\/$]* | ?:[\\/]* ) continue;; NONE | '' ) case $ac_var in *prefix ) continue;; esac;; esac as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val" done # There might be people who depend on the old broken behavior: `$host' # used to hold the argument of --host etc. # FIXME: To remove some day. build=$build_alias host=$host_alias target=$target_alias # FIXME: To remove some day. if test "x$host_alias" != x; then if test "x$build_alias" = x; then cross_compiling=maybe elif test "x$build_alias" != "x$host_alias"; then cross_compiling=yes fi fi ac_tool_prefix= test -n "$host_alias" && ac_tool_prefix=$host_alias- test "$silent" = yes && exec 6>/dev/null ac_pwd=`pwd` && test -n "$ac_pwd" && ac_ls_di=`ls -di .` && ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` || as_fn_error $? "working directory cannot be determined" test "X$ac_ls_di" = "X$ac_pwd_ls_di" || as_fn_error $? "pwd does not report name of working directory" # Find the source files, if location was not specified. if test -z "$srcdir"; then ac_srcdir_defaulted=yes # Try the directory containing this script, then the parent directory. ac_confdir=`$as_dirname -- "$as_myself" || $as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$as_myself" : 'X\(//\)[^/]' \| \ X"$as_myself" : 'X\(//\)$' \| \ X"$as_myself" : 'X\(/\)' \| . 2>/dev/null || $as_echo X"$as_myself" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` srcdir=$ac_confdir if test ! -r "$srcdir/$ac_unique_file"; then srcdir=.. fi else ac_srcdir_defaulted=no fi if test ! -r "$srcdir/$ac_unique_file"; then test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .." as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir" fi ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work" ac_abs_confdir=`( cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg" pwd)` # When building in place, set srcdir=. if test "$ac_abs_confdir" = "$ac_pwd"; then srcdir=. fi # Remove unnecessary trailing slashes from srcdir. # Double slashes in file names in object file debugging info # mess up M-x gdb in Emacs. case $srcdir in */) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;; esac for ac_var in $ac_precious_vars; do eval ac_env_${ac_var}_set=\${${ac_var}+set} eval ac_env_${ac_var}_value=\$${ac_var} eval ac_cv_env_${ac_var}_set=\${${ac_var}+set} eval ac_cv_env_${ac_var}_value=\$${ac_var} done # # Report the --help message. # 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 bibledit-gtk 4.9 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... To assign environment variables (e.g., CC, CFLAGS...), specify them as VAR=VALUE. See below for descriptions of some of the useful variables. Defaults for the options are specified in brackets. Configuration: -h, --help display this help and exit --help=short display options specific to this package --help=recursive display the short help of all the included packages -V, --version display version information and exit -q, --quiet, --silent do not print \`checking ...' messages --cache-file=FILE cache test results in FILE [disabled] -C, --config-cache alias for \`--cache-file=config.cache' -n, --no-create do not create output files --srcdir=DIR find the sources in DIR [configure dir or \`..'] Installation directories: --prefix=PREFIX install architecture-independent files in PREFIX [$ac_default_prefix] --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX [PREFIX] By default, \`make install' will install all the files in \`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify an installation prefix other than \`$ac_default_prefix' using \`--prefix', for instance \`--prefix=\$HOME'. For better control, use the options below. Fine tuning of the installation directories: --bindir=DIR user executables [EPREFIX/bin] --sbindir=DIR system admin executables [EPREFIX/sbin] --libexecdir=DIR program executables [EPREFIX/libexec] --sysconfdir=DIR read-only single-machine data [PREFIX/etc] --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] --localstatedir=DIR modifiable single-machine data [PREFIX/var] --libdir=DIR object code libraries [EPREFIX/lib] --includedir=DIR C header files [PREFIX/include] --oldincludedir=DIR C header files for non-gcc [/usr/include] --datarootdir=DIR read-only arch.-independent data root [PREFIX/share] --datadir=DIR read-only architecture-independent data [DATAROOTDIR] --infodir=DIR info documentation [DATAROOTDIR/info] --localedir=DIR locale-dependent data [DATAROOTDIR/locale] --mandir=DIR man documentation [DATAROOTDIR/man] --docdir=DIR documentation root [DATAROOTDIR/doc/bibledit-gtk] --htmldir=DIR html documentation [DOCDIR] --dvidir=DIR dvi documentation [DOCDIR] --pdfdir=DIR pdf documentation [DOCDIR] --psdir=DIR ps documentation [DOCDIR] _ACEOF cat <<\_ACEOF Program names: --program-prefix=PREFIX prepend PREFIX to installed program names --program-suffix=SUFFIX append SUFFIX to installed program names --program-transform-name=PROGRAM run sed PROGRAM on installed program names System types: --build=BUILD configure for building on BUILD [guessed] --host=HOST cross-compile to build programs to run on HOST [BUILD] --target=TARGET configure for building compilers for TARGET [HOST] _ACEOF fi if test -n "$ac_init_help"; then case $ac_init_help in short | recursive ) echo "Configuration of bibledit-gtk 4.9:";; esac cat <<\_ACEOF Optional Features: --disable-option-checking ignore unrecognized --enable/--with options --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) --enable-FEATURE[=ARG] include FEATURE [ARG=yes] --enable-silent-rules less verbose build output (undo: "make V=1") --disable-silent-rules verbose build output (undo: "make V=0") --enable-dependency-tracking do not reject slow dependency extractors --disable-dependency-tracking speeds up one-time build --disable-xmltest Do not try to compile and run a test LIBXML program Optional Packages: --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) --with-xml-prefix=PFX Prefix where libxml is installed (optional) --with-xml-exec-prefix=PFX Exec prefix where libxml is installed (optional) Some influential environment variables: CC C compiler command CFLAGS C compiler flags LDFLAGS linker flags, e.g. -L if you have libraries in a nonstandard directory LIBS libraries to pass to the linker, e.g. -l CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I if you have headers in a nonstandard directory CPP C preprocessor CXX C++ compiler command CXXFLAGS C++ compiler flags CXXCPP C++ preprocessor PKG_CONFIG path to pkg-config utility PKG_CONFIG_PATH directories to add to pkg-config's search path PKG_CONFIG_LIBDIR path overriding pkg-config's built-in search path GTK_CFLAGS C compiler flags for GTK, overriding pkg-config GTK_LIBS linker flags for GTK, overriding pkg-config GLIB_CFLAGS C compiler flags for GLIB, overriding pkg-config GLIB_LIBS linker flags for GLIB, overriding pkg-config GTHREAD_CFLAGS C compiler flags for GTHREAD, overriding pkg-config GTHREAD_LIBS linker flags for GTHREAD, overriding pkg-config GOBJECT_CFLAGS C compiler flags for GOBJECT, overriding pkg-config GOBJECT_LIBS linker flags for GOBJECT, overriding pkg-config SQLITE_CFLAGS C compiler flags for SQLITE, overriding pkg-config SQLITE_LIBS linker flags for SQLITE, overriding pkg-config ENCHANT_CFLAGS C compiler flags for ENCHANT, overriding pkg-config ENCHANT_LIBS linker flags for ENCHANT, overriding pkg-config PANGO_CFLAGS C compiler flags for PANGO, overriding pkg-config PANGO_LIBS linker flags for PANGO, overriding pkg-config GTKSOURCEVIEW_CFLAGS C compiler flags for GTKSOURCEVIEW, overriding pkg-config GTKSOURCEVIEW_LIBS linker flags for GTKSOURCEVIEW, overriding pkg-config WEBKIT_CFLAGS C compiler flags for WEBKIT, overriding pkg-config WEBKIT_LIBS linker flags for WEBKIT, overriding pkg-config LIBSOUP_CFLAGS C compiler flags for LIBSOUP, overriding pkg-config LIBSOUP_LIBS linker flags for LIBSOUP, overriding pkg-config Use these variables to override the choices made by `configure' or to help it to find libraries and programs with nonstandard names/locations. Report bugs to . _ACEOF ac_status=$? fi if test "$ac_init_help" = "recursive"; then # If there are subdirs, report their specific --help. for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue test -d "$ac_dir" || { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } || continue ac_builddir=. case "$ac_dir" in .) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; *) ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` # A ".." for each directory in $ac_dir_suffix. ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` case $ac_top_builddir_sub in "") ac_top_builddir_sub=. ac_top_build_prefix= ;; *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; esac ;; esac ac_abs_top_builddir=$ac_pwd ac_abs_builddir=$ac_pwd$ac_dir_suffix # for backward compatibility: ac_top_builddir=$ac_top_build_prefix case $srcdir in .) # We are building in place. ac_srcdir=. ac_top_srcdir=$ac_top_builddir_sub ac_abs_top_srcdir=$ac_pwd ;; [\\/]* | ?:[\\/]* ) # Absolute name. ac_srcdir=$srcdir$ac_dir_suffix; ac_top_srcdir=$srcdir ac_abs_top_srcdir=$srcdir ;; *) # Relative name. ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix ac_top_srcdir=$ac_top_build_prefix$srcdir ac_abs_top_srcdir=$ac_pwd/$srcdir ;; esac ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix cd "$ac_dir" || { ac_status=$?; continue; } # Check for guested configure. if test -f "$ac_srcdir/configure.gnu"; then echo && $SHELL "$ac_srcdir/configure.gnu" --help=recursive elif test -f "$ac_srcdir/configure"; then echo && $SHELL "$ac_srcdir/configure" --help=recursive else $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 fi || ac_status=$? cd "$ac_pwd" || { ac_status=$?; break; } done fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF bibledit-gtk configure 4.9 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. This configure script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it. _ACEOF exit fi ## ------------------------ ## ## Autoconf initialization. ## ## ------------------------ ## # ac_fn_c_try_compile LINENO # -------------------------- # Try to compile conftest.$ac_ext, and return whether this succeeded. ac_fn_c_try_compile () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack rm -f conftest.$ac_objext if { { ac_try="$ac_compile" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_compile") 2>conftest.err ac_status=$? if test -s conftest.err; then grep -v '^ *+' conftest.err >conftest.er1 cat conftest.er1 >&5 mv -f conftest.er1 conftest.err fi $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then : ac_retval=0 else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=1 fi eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno as_fn_set_status $ac_retval } # ac_fn_c_try_compile # ac_fn_c_try_cpp LINENO # ---------------------- # Try to preprocess conftest.$ac_ext, and return whether this succeeded. ac_fn_c_try_cpp () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack if { { ac_try="$ac_cpp conftest.$ac_ext" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err ac_status=$? if test -s conftest.err; then grep -v '^ *+' conftest.err >conftest.er1 cat conftest.er1 >&5 mv -f conftest.er1 conftest.err fi $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } > conftest.i && { test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || test ! -s conftest.err }; then : ac_retval=0 else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=1 fi eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno as_fn_set_status $ac_retval } # ac_fn_c_try_cpp # ac_fn_cxx_try_compile LINENO # ---------------------------- # Try to compile conftest.$ac_ext, and return whether this succeeded. ac_fn_cxx_try_compile () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack rm -f conftest.$ac_objext if { { ac_try="$ac_compile" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_compile") 2>conftest.err ac_status=$? if test -s conftest.err; then grep -v '^ *+' conftest.err >conftest.er1 cat conftest.er1 >&5 mv -f conftest.er1 conftest.err fi $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && { test -z "$ac_cxx_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then : ac_retval=0 else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=1 fi eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno as_fn_set_status $ac_retval } # ac_fn_cxx_try_compile # ac_fn_cxx_try_cpp LINENO # ------------------------ # Try to preprocess conftest.$ac_ext, and return whether this succeeded. ac_fn_cxx_try_cpp () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack if { { ac_try="$ac_cpp conftest.$ac_ext" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err ac_status=$? if test -s conftest.err; then grep -v '^ *+' conftest.err >conftest.er1 cat conftest.er1 >&5 mv -f conftest.er1 conftest.err fi $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } > conftest.i && { test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" || test ! -s conftest.err }; then : ac_retval=0 else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=1 fi eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno as_fn_set_status $ac_retval } # ac_fn_cxx_try_cpp # ac_fn_cxx_try_run LINENO # ------------------------ # Try to link conftest.$ac_ext, and return whether this succeeded. Assumes # that executables *can* be run. ac_fn_cxx_try_run () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack if { { ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_link") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && { ac_try='./conftest$ac_exeext' { { case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_try") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; }; then : ac_retval=0 else $as_echo "$as_me: program exited with status $ac_status" >&5 $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=$ac_status fi rm -rf conftest.dSYM conftest_ipa8_conftest.oo eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno as_fn_set_status $ac_retval } # ac_fn_cxx_try_run # ac_fn_cxx_try_link LINENO # ------------------------- # Try to link conftest.$ac_ext, and return whether this succeeded. ac_fn_cxx_try_link () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack rm -f conftest.$ac_objext conftest$ac_exeext if { { ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_link") 2>conftest.err ac_status=$? if test -s conftest.err; then grep -v '^ *+' conftest.err >conftest.er1 cat conftest.er1 >&5 mv -f conftest.er1 conftest.err fi $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && { test -z "$ac_cxx_werror_flag" || test ! -s conftest.err } && test -s conftest$ac_exeext && { test "$cross_compiling" = yes || test -x conftest$ac_exeext }; then : ac_retval=0 else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=1 fi # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would # interfere with the next link command; also delete a directory that is # left behind by Apple's compiler. We do this before executing the actions. rm -rf conftest.dSYM conftest_ipa8_conftest.oo eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno as_fn_set_status $ac_retval } # ac_fn_cxx_try_link # ac_fn_cxx_check_header_mongrel LINENO HEADER VAR INCLUDES # --------------------------------------------------------- # Tests whether HEADER exists, giving a warning if it cannot be compiled using # the include files in INCLUDES and setting the cache variable VAR # accordingly. ac_fn_cxx_check_header_mongrel () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack if eval \${$3+:} false; then : { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 $as_echo_n "checking for $2... " >&6; } if eval \${$3+:} false; then : $as_echo_n "(cached) " >&6 fi eval ac_res=\$$3 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } else # Is the header compilable? { $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5 $as_echo_n "checking $2 usability... " >&6; } cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $4 #include <$2> _ACEOF if ac_fn_cxx_try_compile "$LINENO"; then : ac_header_compiler=yes else ac_header_compiler=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5 $as_echo "$ac_header_compiler" >&6; } # Is the header present? { $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5 $as_echo_n "checking $2 presence... " >&6; } cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include <$2> _ACEOF if ac_fn_cxx_try_cpp "$LINENO"; then : ac_header_preproc=yes else ac_header_preproc=no fi rm -f conftest.err conftest.i conftest.$ac_ext { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5 $as_echo "$ac_header_preproc" >&6; } # So? What about this header? case $ac_header_compiler:$ac_header_preproc:$ac_cxx_preproc_warn_flag in #(( yes:no: ) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5 $as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 $as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} ;; no:yes:* ) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5 $as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: check for missing prerequisite headers?" >&5 $as_echo "$as_me: WARNING: $2: check for missing prerequisite headers?" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5 $as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&5 $as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 $as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} ( $as_echo "## --------------------------------------------- ## ## Report this to http://www.nongnu.org/bibledit ## ## --------------------------------------------- ##" ) | sed "s/^/$as_me: WARNING: /" >&2 ;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 $as_echo_n "checking for $2... " >&6; } if eval \${$3+:} false; then : $as_echo_n "(cached) " >&6 else eval "$3=\$ac_header_compiler" fi eval ac_res=\$$3 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } fi eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno } # ac_fn_cxx_check_header_mongrel # ac_fn_cxx_check_header_compile LINENO HEADER VAR INCLUDES # --------------------------------------------------------- # Tests whether HEADER exists and can be compiled using the include files in # INCLUDES, setting the cache variable VAR accordingly. ac_fn_cxx_check_header_compile () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 $as_echo_n "checking for $2... " >&6; } if eval \${$3+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $4 #include <$2> _ACEOF if ac_fn_cxx_try_compile "$LINENO"; then : eval "$3=yes" else eval "$3=no" fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi eval ac_res=\$$3 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno } # ac_fn_cxx_check_header_compile 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 bibledit-gtk $as_me 4.9, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ _ACEOF exec 5>>config.log { cat <<_ASUNAME ## --------- ## ## Platform. ## ## --------- ## hostname = `(hostname || uname -n) 2>/dev/null | sed 1q` uname -m = `(uname -m) 2>/dev/null || echo unknown` uname -r = `(uname -r) 2>/dev/null || echo unknown` uname -s = `(uname -s) 2>/dev/null || echo unknown` uname -v = `(uname -v) 2>/dev/null || echo unknown` /usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown` /bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown` /bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` /usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` /usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown` /bin/machine = `(/bin/machine) 2>/dev/null || echo unknown` /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` /bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` _ASUNAME as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. $as_echo "PATH: $as_dir" done IFS=$as_save_IFS } >&5 cat >&5 <<_ACEOF ## ----------- ## ## Core tests. ## ## ----------- ## _ACEOF # Keep a trace of the command line. # Strip out --no-create and --no-recursion so they do not pile up. # Strip out --silent because we don't want to record it for future runs. # Also quote any args containing shell meta-characters. # Make two passes to allow for proper duplicate-argument suppression. ac_configure_args= ac_configure_args0= ac_configure_args1= ac_must_keep_next=false for ac_pass in 1 2 do for ac_arg do case $ac_arg in -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil) continue ;; *\'*) ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; esac case $ac_pass in 1) as_fn_append ac_configure_args0 " '$ac_arg'" ;; 2) as_fn_append ac_configure_args1 " '$ac_arg'" if test $ac_must_keep_next = true; then ac_must_keep_next=false # Got value, back to normal. else case $ac_arg in *=* | --config-cache | -C | -disable-* | --disable-* \ | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ | -with-* | --with-* | -without-* | --without-* | --x) case "$ac_configure_args0 " in "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; esac ;; -* ) ac_must_keep_next=true ;; esac fi as_fn_append ac_configure_args " '$ac_arg'" ;; esac done done { ac_configure_args0=; unset ac_configure_args0;} { ac_configure_args1=; unset ac_configure_args1;} # When interrupted or exit'd, cleanup temporary files, and complete # config.log. We remove comments because anyway the quotes in there # would cause problems or look ugly. # WARNING: Use '\'' to represent an apostrophe within the trap. # WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug. trap 'exit_status=$? # Save into config.log some information that might help in debugging. { echo $as_echo "## ---------------- ## ## Cache variables. ## ## ---------------- ##" echo # The following way of writing the cache mishandles newlines in values, ( for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do eval ac_val=\$$ac_var case $ac_val in #( *${as_nl}*) case $ac_var in #( *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; esac case $ac_var in #( _ | IFS | as_nl) ;; #( BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( *) { eval $ac_var=; unset $ac_var;} ;; esac ;; esac done (set) 2>&1 | case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #( *${as_nl}ac_space=\ *) sed -n \ "s/'\''/'\''\\\\'\'''\''/g; s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p" ;; #( *) sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" ;; esac | sort ) echo $as_echo "## ----------------- ## ## Output variables. ## ## ----------------- ##" echo for ac_var in $ac_subst_vars do eval ac_val=\$$ac_var case $ac_val in *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; esac $as_echo "$ac_var='\''$ac_val'\''" done | sort echo if test -n "$ac_subst_files"; then $as_echo "## ------------------- ## ## File substitutions. ## ## ------------------- ##" echo for ac_var in $ac_subst_files do eval ac_val=\$$ac_var case $ac_val in *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; esac $as_echo "$ac_var='\''$ac_val'\''" done | sort echo fi if test -s confdefs.h; then $as_echo "## ----------- ## ## confdefs.h. ## ## ----------- ##" echo cat confdefs.h echo fi test "$ac_signal" != 0 && $as_echo "$as_me: caught signal $ac_signal" $as_echo "$as_me: exit $exit_status" } >&5 rm -f core *.core core.conftest.* && rm -f -r conftest* confdefs* conf$$* $ac_clean_files && exit $exit_status ' 0 for ac_signal in 1 2 13 15; do trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal done ac_signal=0 # confdefs.h avoids OS command line length limits that DEFS can exceed. rm -f -r conftest* confdefs.h $as_echo "/* confdefs.h */" > confdefs.h # Predefined preprocessor variables. cat >>confdefs.h <<_ACEOF #define PACKAGE_NAME "$PACKAGE_NAME" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_TARNAME "$PACKAGE_TARNAME" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_VERSION "$PACKAGE_VERSION" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_STRING "$PACKAGE_STRING" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_URL "$PACKAGE_URL" _ACEOF # Let the site file select an alternate cache file if it wants to. # Prefer an explicitly selected file to automatically selected ones. ac_site_file1=NONE ac_site_file2=NONE if test -n "$CONFIG_SITE"; then # We do not want a PATH search for config.site. case $CONFIG_SITE in #(( -*) ac_site_file1=./$CONFIG_SITE;; */*) ac_site_file1=$CONFIG_SITE;; *) ac_site_file1=./$CONFIG_SITE;; esac elif test "x$prefix" != xNONE; then ac_site_file1=$prefix/share/config.site ac_site_file2=$prefix/etc/config.site else ac_site_file1=$ac_default_prefix/share/config.site ac_site_file2=$ac_default_prefix/etc/config.site fi for ac_site_file in "$ac_site_file1" "$ac_site_file2" do test "x$ac_site_file" = xNONE && continue if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5 $as_echo "$as_me: loading site script $ac_site_file" >&6;} sed 's/^/| /' "$ac_site_file" >&5 . "$ac_site_file" \ || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "failed to load site script $ac_site_file See \`config.log' for more details" "$LINENO" 5; } fi done if test -r "$cache_file"; then # Some versions of bash will fail to source /dev/null (special files # actually), so we avoid doing that. DJGPP emulates it as a regular file. if test /dev/null != "$cache_file" && test -f "$cache_file"; then { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5 $as_echo "$as_me: loading cache $cache_file" >&6;} case $cache_file in [\\/]* | ?:[\\/]* ) . "$cache_file";; *) . "./$cache_file";; esac fi else { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5 $as_echo "$as_me: creating cache $cache_file" >&6;} >$cache_file fi # Check that the precious variables saved in the cache have kept the same # value. ac_cache_corrupted=false for ac_var in $ac_precious_vars; do eval ac_old_set=\$ac_cv_env_${ac_var}_set eval ac_new_set=\$ac_env_${ac_var}_set eval ac_old_val=\$ac_cv_env_${ac_var}_value eval ac_new_val=\$ac_env_${ac_var}_value case $ac_old_set,$ac_new_set in set,) { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 $as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} ac_cache_corrupted=: ;; ,set) { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5 $as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} ac_cache_corrupted=: ;; ,);; *) if test "x$ac_old_val" != "x$ac_new_val"; then # differences in whitespace do not lead to failure. ac_old_val_w=`echo x $ac_old_val` ac_new_val_w=`echo x $ac_new_val` if test "$ac_old_val_w" != "$ac_new_val_w"; then { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5 $as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} ac_cache_corrupted=: else { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5 $as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;} eval $ac_var=\$ac_old_val fi { $as_echo "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5 $as_echo "$as_me: former value: \`$ac_old_val'" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5 $as_echo "$as_me: current value: \`$ac_new_val'" >&2;} fi;; esac # Pass precious variables to config.status. if test "$ac_new_set" = set; then case $ac_new_val in *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; *) ac_arg=$ac_var=$ac_new_val ;; esac case " $ac_configure_args " in *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. *) as_fn_append ac_configure_args " '$ac_arg'" ;; esac fi done if $ac_cache_corrupted; then { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5 $as_echo "$as_me: error: changes in the environment can compromise the build" >&2;} as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5 fi ## -------------------- ## ## Main body of script. ## ## -------------------- ## ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu ac_aux_dir= for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do if test -f "$ac_dir/install-sh"; then ac_aux_dir=$ac_dir ac_install_sh="$ac_aux_dir/install-sh -c" break elif test -f "$ac_dir/install.sh"; then ac_aux_dir=$ac_dir ac_install_sh="$ac_aux_dir/install.sh -c" break elif test -f "$ac_dir/shtool"; then ac_aux_dir=$ac_dir ac_install_sh="$ac_aux_dir/shtool install -c" break fi done if test -z "$ac_aux_dir"; then as_fn_error $? "cannot find install-sh, install.sh, or shtool in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" "$LINENO" 5 fi # These three variables are undocumented and unsupported, # and are intended to be withdrawn in a future Autoconf release. # They can cause serious problems if a builder's source tree is in a directory # whose full name contains unusual characters. ac_config_guess="$SHELL $ac_aux_dir/config.guess" # Please don't use this var. ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var. ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var. # Make sure we can run config.sub. $SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 || as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5 { $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5 $as_echo_n "checking build system type... " >&6; } if ${ac_cv_build+:} false; then : $as_echo_n "(cached) " >&6 else ac_build_alias=$build_alias test "x$ac_build_alias" = x && ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"` test "x$ac_build_alias" = x && as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5 ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` || as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5 fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5 $as_echo "$ac_cv_build" >&6; } case $ac_cv_build in *-*-*) ;; *) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;; esac build=$ac_cv_build ac_save_IFS=$IFS; IFS='-' set x $ac_cv_build shift build_cpu=$1 build_vendor=$2 shift; shift # Remember, the first character of IFS is used to create $*, # except with old shells: build_os=$* IFS=$ac_save_IFS case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5 $as_echo_n "checking host system type... " >&6; } if ${ac_cv_host+:} false; then : $as_echo_n "(cached) " >&6 else if test "x$host_alias" = x; then ac_cv_host=$ac_cv_build else ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` || as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5 fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5 $as_echo "$ac_cv_host" >&6; } case $ac_cv_host in *-*-*) ;; *) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;; esac host=$ac_cv_host ac_save_IFS=$IFS; IFS='-' set x $ac_cv_host shift host_cpu=$1 host_vendor=$2 shift; shift # Remember, the first character of IFS is used to create $*, # except with old shells: host_os=$* IFS=$ac_save_IFS case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: checking target system type" >&5 $as_echo_n "checking target system type... " >&6; } if ${ac_cv_target+:} false; then : $as_echo_n "(cached) " >&6 else if test "x$target_alias" = x; then ac_cv_target=$ac_cv_host else ac_cv_target=`$SHELL "$ac_aux_dir/config.sub" $target_alias` || as_fn_error $? "$SHELL $ac_aux_dir/config.sub $target_alias failed" "$LINENO" 5 fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_target" >&5 $as_echo "$ac_cv_target" >&6; } case $ac_cv_target in *-*-*) ;; *) as_fn_error $? "invalid value of canonical target" "$LINENO" 5;; esac target=$ac_cv_target ac_save_IFS=$IFS; IFS='-' set x $ac_cv_target shift target_cpu=$1 target_vendor=$2 shift; shift # Remember, the first character of IFS is used to create $*, # except with old shells: target_os=$* IFS=$ac_save_IFS case $target_os in *\ *) target_os=`echo "$target_os" | sed 's/ /-/g'`;; esac # The aliases save the names the user supplied, while $host etc. # will get canonicalized. test -n "$target_alias" && test "$program_prefix$program_suffix$program_transform_name" = \ NONENONEs,x,x, && program_prefix=${target_alias}- ac_default_prefix=/usr am__api_version='1.15' # Find a good install program. We prefer a C program (faster), # so one script is as good as another. But avoid the broken or # incompatible versions: # SysV /etc/install, /usr/sbin/install # SunOS /usr/etc/install # IRIX /sbin/install # AIX /bin/install # AmigaOS /C/install, which installs bootblocks on floppy discs # AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag # AFS /usr/afsws/bin/install, which mishandles nonexistent args # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" # OS/2's system install, which has a completely different semantic # ./install, which can be erroneously created by make from ./install.sh. # Reject install programs that cannot install multiple files. { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5 $as_echo_n "checking for a BSD-compatible install... " >&6; } if test -z "$INSTALL"; then if ${ac_cv_path_install+:} false; then : $as_echo_n "(cached) " >&6 else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. # Account for people who put trailing slashes in PATH elements. case $as_dir/ in #(( ./ | .// | /[cC]/* | \ /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \ ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \ /usr/ucb/* ) ;; *) # OSF1 and SCO ODT 3.0 have their own names for install. # Don't use installbsd from OSF since it installs stuff as root # by default. for ac_prog in ginstall scoinst install; do for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then if test $ac_prog = install && grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then # AIX install. It has an incompatible calling convention. : elif test $ac_prog = install && grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then # program-specific install script used by HP pwplus--don't use. : else rm -rf conftest.one conftest.two conftest.dir echo one > conftest.one echo two > conftest.two mkdir conftest.dir if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" && test -s conftest.one && test -s conftest.two && test -s conftest.dir/conftest.one && test -s conftest.dir/conftest.two then ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" break 3 fi fi fi done done ;; esac done IFS=$as_save_IFS rm -rf conftest.one conftest.two conftest.dir fi if test "${ac_cv_path_install+set}" = set; then INSTALL=$ac_cv_path_install else # As a last resort, use the slow shell script. Don't cache a # value for INSTALL within a source directory, because that will # break other packages using the cache if that directory is # removed, or if the value is a relative name. INSTALL=$ac_install_sh fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5 $as_echo "$INSTALL" >&6; } # Use test -z because SunOS4 sh mishandles braces in ${var-val}. # It thinks the first close brace ends the variable substitution. test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}' test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5 $as_echo_n "checking whether build environment is sane... " >&6; } # Reject unsafe characters in $srcdir or the absolute working directory # name. Accept space and tab only in the latter. am_lf=' ' case `pwd` in *[\\\"\#\$\&\'\`$am_lf]*) as_fn_error $? "unsafe absolute working directory name" "$LINENO" 5;; esac case $srcdir in *[\\\"\#\$\&\'\`$am_lf\ \ ]*) as_fn_error $? "unsafe srcdir value: '$srcdir'" "$LINENO" 5;; esac # Do 'set' in a subshell so we don't clobber the current shell's # arguments. Must try -L first in case configure is actually a # symlink; some systems play weird games with the mod time of symlinks # (eg FreeBSD returns the mod time of the symlink's containing # directory). if ( am_has_slept=no for am_try in 1 2; do echo "timestamp, slept: $am_has_slept" > conftest.file set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null` if test "$*" = "X"; then # -L didn't work. set X `ls -t "$srcdir/configure" conftest.file` fi if test "$*" != "X $srcdir/configure conftest.file" \ && test "$*" != "X conftest.file $srcdir/configure"; then # If neither matched, then we have a broken ls. This can happen # if, for instance, CONFIG_SHELL is bash and it inherits a # broken ls alias from the environment. This has actually # happened. Such a system could not be considered "sane". as_fn_error $? "ls -t appears to fail. Make sure there is not a broken alias in your environment" "$LINENO" 5 fi if test "$2" = conftest.file || test $am_try -eq 2; then break fi # Just in case. sleep 1 am_has_slept=yes done test "$2" = conftest.file ) then # Ok. : else as_fn_error $? "newly created file is older than distributed files! Check your system clock" "$LINENO" 5 fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } # If we didn't sleep, we still need to ensure time stamps of config.status and # generated files are strictly newer. am_sleep_pid= if grep 'slept: no' conftest.file >/dev/null 2>&1; then ( sleep 1 ) & am_sleep_pid=$! fi rm -f conftest.file test "$program_prefix" != NONE && program_transform_name="s&^&$program_prefix&;$program_transform_name" # Use a double $ so make ignores it. test "$program_suffix" != NONE && program_transform_name="s&\$&$program_suffix&;$program_transform_name" # Double any \ or $. # By default was `s,x,x', remove it if useless. ac_script='s/[\\$]/&&/g;s/;s,x,x,$//' program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"` # Expand $ac_aux_dir to an absolute path. am_aux_dir=`cd "$ac_aux_dir" && pwd` if test x"${MISSING+set}" != xset; then case $am_aux_dir in *\ * | *\ *) MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;; *) MISSING="\${SHELL} $am_aux_dir/missing" ;; esac fi # Use eval to expand $SHELL if eval "$MISSING --is-lightweight"; then am_missing_run="$MISSING " else am_missing_run= { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: 'missing' script is too old or missing" >&5 $as_echo "$as_me: WARNING: 'missing' script is too old or missing" >&2;} fi if test x"${install_sh+set}" != xset; then case $am_aux_dir in *\ * | *\ *) install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;; *) install_sh="\${SHELL} $am_aux_dir/install-sh" esac fi # Installed binaries are usually stripped using 'strip' when the user # run "make install-strip". However 'strip' might not be the right # tool to use in cross-compilation environments, therefore Automake # will honor the 'STRIP' environment variable to overrule this program. if test "$cross_compiling" != no; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. set dummy ${ac_tool_prefix}strip; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_STRIP+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$STRIP"; then ac_cv_prog_STRIP="$STRIP" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_STRIP="${ac_tool_prefix}strip" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi STRIP=$ac_cv_prog_STRIP if test -n "$STRIP"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5 $as_echo "$STRIP" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_STRIP"; then ac_ct_STRIP=$STRIP # Extract the first word of "strip", so it can be a program name with args. set dummy strip; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_STRIP+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_STRIP"; then ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_STRIP="strip" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP if test -n "$ac_ct_STRIP"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5 $as_echo "$ac_ct_STRIP" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_STRIP" = x; then STRIP=":" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac STRIP=$ac_ct_STRIP fi else STRIP="$ac_cv_prog_STRIP" fi fi INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a thread-safe mkdir -p" >&5 $as_echo_n "checking for a thread-safe mkdir -p... " >&6; } if test -z "$MKDIR_P"; then if ${ac_cv_path_mkdir+:} false; then : $as_echo_n "(cached) " >&6 else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH$PATH_SEPARATOR/opt/sfw/bin do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_prog in mkdir gmkdir; do for ac_exec_ext in '' $ac_executable_extensions; do as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext" || continue case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #( 'mkdir (GNU coreutils) '* | \ 'mkdir (coreutils) '* | \ 'mkdir (fileutils) '4.1*) ac_cv_path_mkdir=$as_dir/$ac_prog$ac_exec_ext break 3;; esac done done done IFS=$as_save_IFS fi test -d ./--version && rmdir ./--version if test "${ac_cv_path_mkdir+set}" = set; then MKDIR_P="$ac_cv_path_mkdir -p" else # As a last resort, use the slow shell script. Don't cache a # value for MKDIR_P within a source directory, because that will # break other packages using the cache if that directory is # removed, or if the value is a relative name. MKDIR_P="$ac_install_sh -d" fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5 $as_echo "$MKDIR_P" >&6; } for ac_prog in gawk mawk nawk awk do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_AWK+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$AWK"; then ac_cv_prog_AWK="$AWK" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_AWK="$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi AWK=$ac_cv_prog_AWK if test -n "$AWK"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5 $as_echo "$AWK" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$AWK" && break done { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5 $as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; } set x ${MAKE-make} ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'` if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then : $as_echo_n "(cached) " >&6 else cat >conftest.make <<\_ACEOF SHELL = /bin/sh all: @echo '@@@%%%=$(MAKE)=@@@%%%' _ACEOF # GNU make sometimes prints "make[1]: Entering ...", which would confuse us. case `${MAKE-make} -f conftest.make 2>/dev/null` in *@@@%%%=?*=@@@%%%*) eval ac_cv_prog_make_${ac_make}_set=yes;; *) eval ac_cv_prog_make_${ac_make}_set=no;; esac rm -f conftest.make fi if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } SET_MAKE= else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } SET_MAKE="MAKE=${MAKE-make}" fi rm -rf .tst 2>/dev/null mkdir .tst 2>/dev/null if test -d .tst; then am__leading_dot=. else am__leading_dot=_ fi rmdir .tst 2>/dev/null # Check whether --enable-silent-rules was given. if test "${enable_silent_rules+set}" = set; then : enableval=$enable_silent_rules; fi case $enable_silent_rules in # ((( yes) AM_DEFAULT_VERBOSITY=0;; no) AM_DEFAULT_VERBOSITY=1;; *) AM_DEFAULT_VERBOSITY=1;; esac am_make=${MAKE-make} { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5 $as_echo_n "checking whether $am_make supports nested variables... " >&6; } if ${am_cv_make_support_nested_variables+:} false; then : $as_echo_n "(cached) " >&6 else if $as_echo 'TRUE=$(BAR$(V)) BAR0=false BAR1=true V=1 am__doit: @$(TRUE) .PHONY: am__doit' | $am_make -f - >/dev/null 2>&1; then am_cv_make_support_nested_variables=yes else am_cv_make_support_nested_variables=no fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_make_support_nested_variables" >&5 $as_echo "$am_cv_make_support_nested_variables" >&6; } if test $am_cv_make_support_nested_variables = yes; then AM_V='$(V)' AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' else AM_V=$AM_DEFAULT_VERBOSITY AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY fi AM_BACKSLASH='\' if test "`cd $srcdir && pwd`" != "`pwd`"; then # Use -I$(srcdir) only when $(srcdir) != ., so that make's output # is not polluted with repeated "-I." am__isrc=' -I$(srcdir)' # test to see if srcdir already configured if test -f $srcdir/config.status; then as_fn_error $? "source directory already configured; run \"make distclean\" there first" "$LINENO" 5 fi fi # test whether we have cygpath if test -z "$CYGPATH_W"; then if (cygpath --version) >/dev/null 2>/dev/null; then CYGPATH_W='cygpath -w' else CYGPATH_W=echo fi fi # Define the identity of the package. PACKAGE='bibledit-gtk' VERSION='4.9' cat >>confdefs.h <<_ACEOF #define PACKAGE "$PACKAGE" _ACEOF cat >>confdefs.h <<_ACEOF #define VERSION "$VERSION" _ACEOF # Some tools Automake needs. ACLOCAL=${ACLOCAL-"${am_missing_run}aclocal-${am__api_version}"} AUTOCONF=${AUTOCONF-"${am_missing_run}autoconf"} AUTOMAKE=${AUTOMAKE-"${am_missing_run}automake-${am__api_version}"} AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"} MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"} # For better backward compatibility. To be removed once Automake 1.9.x # dies out for good. For more background, see: # # mkdir_p='$(MKDIR_P)' # We need awk for the "check" target (and possibly the TAP driver). The # system "awk" is bad on some platforms. # Always define AMTAR for backward compatibility. Yes, it's still used # in the wild :-( We should find a proper way to deprecate it ... AMTAR='$${TAR-tar}' # We'll loop over all known methods to create a tar archive until one works. _am_tools='gnutar plaintar pax cpio none' # The POSIX 1988 'ustar' format is defined with fixed-size fields. # There is notably a 21 bits limit for the UID and the GID. In fact, # the 'pax' utility can hang on bigger UID/GID (see automake bug#8343 # and bug#13588). am_max_uid=2097151 # 2^21 - 1 am_max_gid=$am_max_uid # The $UID and $GID variables are not portable, so we need to resort # to the POSIX-mandated id(1) utility. Errors in the 'id' calls # below are definitely unexpected, so allow the users to see them # (that is, avoid stderr redirection). am_uid=`id -u || echo unknown` am_gid=`id -g || echo unknown` { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether UID '$am_uid' is supported by ustar format" >&5 $as_echo_n "checking whether UID '$am_uid' is supported by ustar format... " >&6; } if test $am_uid -le $am_max_uid; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } _am_tools=none fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether GID '$am_gid' is supported by ustar format" >&5 $as_echo_n "checking whether GID '$am_gid' is supported by ustar format... " >&6; } if test $am_gid -le $am_max_gid; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } _am_tools=none fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to create a ustar tar archive" >&5 $as_echo_n "checking how to create a ustar tar archive... " >&6; } # Go ahead even if we have the value already cached. We do so because we # need to set the values for the 'am__tar' and 'am__untar' variables. _am_tools=${am_cv_prog_tar_ustar-$_am_tools} for _am_tool in $_am_tools; do case $_am_tool in gnutar) for _am_tar in tar gnutar gtar; do { echo "$as_me:$LINENO: $_am_tar --version" >&5 ($_am_tar --version) >&5 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && break done am__tar="$_am_tar --format=ustar -chf - "'"$$tardir"' am__tar_="$_am_tar --format=ustar -chf - "'"$tardir"' am__untar="$_am_tar -xf -" ;; plaintar) # Must skip GNU tar: if it does not support --format= it doesn't create # ustar tarball either. (tar --version) >/dev/null 2>&1 && continue am__tar='tar chf - "$$tardir"' am__tar_='tar chf - "$tardir"' am__untar='tar xf -' ;; pax) am__tar='pax -L -x ustar -w "$$tardir"' am__tar_='pax -L -x ustar -w "$tardir"' am__untar='pax -r' ;; cpio) am__tar='find "$$tardir" -print | cpio -o -H ustar -L' am__tar_='find "$tardir" -print | cpio -o -H ustar -L' am__untar='cpio -i -H ustar -d' ;; none) am__tar=false am__tar_=false am__untar=false ;; esac # If the value was cached, stop now. We just wanted to have am__tar # and am__untar set. test -n "${am_cv_prog_tar_ustar}" && break # tar/untar a dummy directory, and stop if the command works. rm -rf conftest.dir mkdir conftest.dir echo GrepMe > conftest.dir/file { echo "$as_me:$LINENO: tardir=conftest.dir && eval $am__tar_ >conftest.tar" >&5 (tardir=conftest.dir && eval $am__tar_ >conftest.tar) >&5 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } rm -rf conftest.dir if test -s conftest.tar; then { echo "$as_me:$LINENO: $am__untar &5 ($am__untar &5 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } { echo "$as_me:$LINENO: cat conftest.dir/file" >&5 (cat conftest.dir/file) >&5 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } grep GrepMe conftest.dir/file >/dev/null 2>&1 && break fi done rm -rf conftest.dir if ${am_cv_prog_tar_ustar+:} false; then : $as_echo_n "(cached) " >&6 else am_cv_prog_tar_ustar=$_am_tool fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_tar_ustar" >&5 $as_echo "$am_cv_prog_tar_ustar" >&6; } # POSIX will say in a future version that running "rm -f" with no argument # is OK; and we want to be able to make that assumption in our Makefile # recipes. So use an aggressive probe to check that the usage we want is # actually supported "in the wild" to an acceptable degree. # See automake bug#10828. # To make any issue more visible, cause the running configure to be aborted # by default if the 'rm' program in use doesn't match our expectations; the # user can still override this though. if rm -f && rm -fr && rm -rf; then : OK; else cat >&2 <<'END' Oops! Your 'rm' program seems unable to run without file operands specified on the command line, even when the '-f' option is present. This is contrary to the behaviour of most rm programs out there, and not conforming with the upcoming POSIX standard: Please tell bug-automake@gnu.org about your system, including the value of your $PATH and any error possibly output before this message. This can help us improve future automake versions. END if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then echo 'Configuration will proceed anyway, since you have set the' >&2 echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2 echo >&2 else cat >&2 <<'END' Aborting the configuration process, to ensure you take notice of the issue. You can download and install GNU coreutils to get an 'rm' implementation that behaves properly: . If you want to complete the configuration process using your problematic 'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM to "yes", and re-run configure. END as_fn_error $? "Your 'rm' program is bad, sorry." "$LINENO" 5 fi fi ac_config_headers="$ac_config_headers config.h" CXXFLAGS="-g -O2 ${CXXFLAGS}" ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. set dummy ${ac_tool_prefix}gcc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CC="${ac_tool_prefix}gcc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_CC"; then ac_ct_CC=$CC # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC="gcc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 $as_echo "$ac_ct_CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_CC" = x; then CC="" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac CC=$ac_ct_CC fi else CC="$ac_cv_prog_CC" fi if test -z "$CC"; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. set dummy ${ac_tool_prefix}cc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CC="${ac_tool_prefix}cc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi fi if test -z "$CC"; then # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else ac_prog_rejected=no as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then ac_prog_rejected=yes continue fi ac_cv_prog_CC="cc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS if test $ac_prog_rejected = yes; then # We found a bogon in the path, so make sure we never use it. set dummy $ac_cv_prog_CC shift if test $# != 0; then # We chose a different compiler from the bogus one. # However, it has the same basename, so the bogon will be chosen # first if we set CC to just the basename; use the full file name. shift ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" fi fi fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$CC"; then if test -n "$ac_tool_prefix"; then for ac_prog in cl.exe do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CC="$ac_tool_prefix$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$CC" && break done fi if test -z "$CC"; then ac_ct_CC=$CC for ac_prog in cl.exe do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC="$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 $as_echo "$ac_ct_CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$ac_ct_CC" && break done if test "x$ac_ct_CC" = x; then CC="" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac CC=$ac_ct_CC fi fi fi test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "no acceptable C compiler found in \$PATH See \`config.log' for more details" "$LINENO" 5; } # Provide some information about the compiler. $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 set X $ac_compile ac_compiler=$2 for ac_option in --version -v -V -qversion; do { { ac_try="$ac_compiler $ac_option >&5" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_compiler $ac_option >&5") 2>conftest.err ac_status=$? if test -s conftest.err; then sed '10a\ ... rest of stderr output deleted ... 10q' conftest.err >conftest.er1 cat conftest.er1 >&5 fi rm -f conftest.er1 conftest.err $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } done cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF ac_clean_files_save=$ac_clean_files ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out" # Try to create an executable without -o first, disregard a.out. # It will help us diagnose broken compilers, and finding out an intuition # of exeext. { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5 $as_echo_n "checking whether the C compiler works... " >&6; } ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` # The possible output files: ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*" ac_rmfiles= for ac_file in $ac_files do case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; * ) ac_rmfiles="$ac_rmfiles $ac_file";; esac done rm -f $ac_rmfiles if { { ac_try="$ac_link_default" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_link_default") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then : # Autoconf-2.13 could set the ac_cv_exeext variable to `no'. # So ignore a value of `no', otherwise this would lead to `EXEEXT = no' # in a Makefile. We should not override ac_cv_exeext if it was cached, # so that the user can short-circuit this test for compilers unknown to # Autoconf. for ac_file in $ac_files '' do test -f "$ac_file" || continue case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; [ab].out ) # We found the default executable, but exeext='' is most # certainly right. break;; *.* ) if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no; then :; else ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` fi # We set ac_cv_exeext here because the later test for it is not # safe: cross compilers may not add the suffix if given an `-o' # argument, so we may need to know it at that point already. # Even if this section looks crufty: it has the advantage of # actually working. break;; * ) break;; esac done test "$ac_cv_exeext" = no && ac_cv_exeext= else ac_file='' fi if test -z "$ac_file"; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error 77 "C compiler cannot create executables See \`config.log' for more details" "$LINENO" 5; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5 $as_echo_n "checking for C compiler default output file name... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5 $as_echo "$ac_file" >&6; } ac_exeext=$ac_cv_exeext rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out ac_clean_files=$ac_clean_files_save { $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5 $as_echo_n "checking for suffix of executables... " >&6; } if { { ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_link") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then : # If both `conftest.exe' and `conftest' are `present' (well, observable) # catch `conftest.exe'. For instance with Cygwin, `ls conftest' will # work properly (i.e., refer to `conftest.exe'), while it won't with # `rm'. for ac_file in conftest.exe conftest conftest.*; do test -f "$ac_file" || continue case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` break;; * ) break;; esac done else { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "cannot compute suffix of executables: cannot compile and link See \`config.log' for more details" "$LINENO" 5; } fi rm -f conftest conftest$ac_cv_exeext { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5 $as_echo "$ac_cv_exeext" >&6; } rm -f conftest.$ac_ext EXEEXT=$ac_cv_exeext ac_exeext=$EXEEXT cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int main () { FILE *f = fopen ("conftest.out", "w"); return ferror (f) || fclose (f) != 0; ; return 0; } _ACEOF ac_clean_files="$ac_clean_files conftest.out" # Check that the compiler produces executables we can run. If not, either # the compiler is broken, or we cross compile. { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5 $as_echo_n "checking whether we are cross compiling... " >&6; } if test "$cross_compiling" != yes; then { { ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_link") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } if { ac_try='./conftest$ac_cv_exeext' { { case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_try") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; }; then cross_compiling=no else if test "$cross_compiling" = maybe; then cross_compiling=yes else { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "cannot run C compiled programs. If you meant to cross compile, use \`--host'. See \`config.log' for more details" "$LINENO" 5; } fi fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5 $as_echo "$cross_compiling" >&6; } rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out ac_clean_files=$ac_clean_files_save { $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5 $as_echo_n "checking for suffix of object files... " >&6; } if ${ac_cv_objext+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF rm -f conftest.o conftest.obj if { { ac_try="$ac_compile" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_compile") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then : for ac_file in conftest.o conftest.obj conftest.*; do test -f "$ac_file" || continue; case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;; *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` break;; esac done else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "cannot compute suffix of object files: cannot compile See \`config.log' for more details" "$LINENO" 5; } fi rm -f conftest.$ac_cv_objext conftest.$ac_ext fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5 $as_echo "$ac_cv_objext" >&6; } OBJEXT=$ac_cv_objext ac_objext=$OBJEXT { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5 $as_echo_n "checking whether we are using the GNU C compiler... " >&6; } if ${ac_cv_c_compiler_gnu+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { #ifndef __GNUC__ choke me #endif ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_compiler_gnu=yes else ac_compiler_gnu=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_cv_c_compiler_gnu=$ac_compiler_gnu fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5 $as_echo "$ac_cv_c_compiler_gnu" >&6; } if test $ac_compiler_gnu = yes; then GCC=yes else GCC= fi ac_test_CFLAGS=${CFLAGS+set} ac_save_CFLAGS=$CFLAGS { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5 $as_echo_n "checking whether $CC accepts -g... " >&6; } if ${ac_cv_prog_cc_g+:} false; then : $as_echo_n "(cached) " >&6 else ac_save_c_werror_flag=$ac_c_werror_flag ac_c_werror_flag=yes ac_cv_prog_cc_g=no CFLAGS="-g" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_g=yes else CFLAGS="" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : else ac_c_werror_flag=$ac_save_c_werror_flag CFLAGS="-g" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_g=yes fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_c_werror_flag=$ac_save_c_werror_flag fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5 $as_echo "$ac_cv_prog_cc_g" >&6; } if test "$ac_test_CFLAGS" = set; then CFLAGS=$ac_save_CFLAGS elif test $ac_cv_prog_cc_g = yes; then if test "$GCC" = yes; then CFLAGS="-g -O2" else CFLAGS="-g" fi else if test "$GCC" = yes; then CFLAGS="-O2" else CFLAGS= fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5 $as_echo_n "checking for $CC option to accept ISO C89... " >&6; } if ${ac_cv_prog_cc_c89+:} false; then : $as_echo_n "(cached) " >&6 else ac_cv_prog_cc_c89=no ac_save_CC=$CC cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include struct stat; /* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ struct buf { int x; }; FILE * (*rcsopen) (struct buf *, struct stat *, int); static char *e (p, i) char **p; int i; { return p[i]; } static char *f (char * (*g) (char **, int), char **p, ...) { char *s; va_list v; va_start (v,p); s = g (p, va_arg (v,int)); va_end (v); return s; } /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has function prototypes and stuff, but not '\xHH' hex character constants. These don't provoke an error unfortunately, instead are silently treated as 'x'. The following induces an error, until -std is added to get proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an array size at least. It's necessary to write '\x00'==0 to get something that's true only with -std. */ int osf4_cc_array ['\x00' == 0 ? 1 : -1]; /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters inside strings and character constants. */ #define FOO(x) 'x' int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1]; int test (int i, double x); struct s1 {int (*f) (int a);}; struct s2 {int (*f) (double a);}; int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); int argc; char **argv; int main () { return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; ; return 0; } _ACEOF for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \ -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" do CC="$ac_save_CC $ac_arg" if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_c89=$ac_arg fi rm -f core conftest.err conftest.$ac_objext test "x$ac_cv_prog_cc_c89" != "xno" && break done rm -f conftest.$ac_ext CC=$ac_save_CC fi # AC_CACHE_VAL case "x$ac_cv_prog_cc_c89" in x) { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 $as_echo "none needed" >&6; } ;; xno) { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 $as_echo "unsupported" >&6; } ;; *) CC="$CC $ac_cv_prog_cc_c89" { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5 $as_echo "$ac_cv_prog_cc_c89" >&6; } ;; esac if test "x$ac_cv_prog_cc_c89" != xno; then : fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC understands -c and -o together" >&5 $as_echo_n "checking whether $CC understands -c and -o together... " >&6; } if ${am_cv_prog_cc_c_o+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF # Make sure it works both with $CC and with simple cc. # Following AC_PROG_CC_C_O, we do the test twice because some # compilers refuse to overwrite an existing .o file with -o, # though they will create one. am_cv_prog_cc_c_o=yes for am_i in 1 2; do if { echo "$as_me:$LINENO: $CC -c conftest.$ac_ext -o conftest2.$ac_objext" >&5 ($CC -c conftest.$ac_ext -o conftest2.$ac_objext) >&5 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } \ && test -f conftest2.$ac_objext; then : OK else am_cv_prog_cc_c_o=no break fi done rm -f core conftest* unset am_i fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&5 $as_echo "$am_cv_prog_cc_c_o" >&6; } if test "$am_cv_prog_cc_c_o" != yes; then # Losing compiler, so override with the script. # FIXME: It is wrong to rewrite CC. # But if we don't then we get into trouble of one sort or another. # A longer-term fix would be to have automake use am__CC in this case, # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)" CC="$am_aux_dir/compile $CC" fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu DEPDIR="${am__leading_dot}deps" ac_config_commands="$ac_config_commands depfiles" am_make=${MAKE-make} cat > confinc << 'END' am__doit: @echo this is the am__doit target .PHONY: am__doit END # If we don't find an include directive, just comment out the code. { $as_echo "$as_me:${as_lineno-$LINENO}: checking for style of include used by $am_make" >&5 $as_echo_n "checking for style of include used by $am_make... " >&6; } am__include="#" am__quote= _am_result=none # First try GNU make style include. echo "include confinc" > confmf # Ignore all kinds of additional output from 'make'. case `$am_make -s -f confmf 2> /dev/null` in #( *the\ am__doit\ target*) am__include=include am__quote= _am_result=GNU ;; esac # Now try BSD make style include. if test "$am__include" = "#"; then echo '.include "confinc"' > confmf case `$am_make -s -f confmf 2> /dev/null` in #( *the\ am__doit\ target*) am__include=.include am__quote="\"" _am_result=BSD ;; esac fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $_am_result" >&5 $as_echo "$_am_result" >&6; } rm -f confinc confmf # Check whether --enable-dependency-tracking was given. if test "${enable_dependency_tracking+set}" = set; then : enableval=$enable_dependency_tracking; fi if test "x$enable_dependency_tracking" != xno; then am_depcomp="$ac_aux_dir/depcomp" AMDEPBACKSLASH='\' am__nodep='_no' fi if test "x$enable_dependency_tracking" != xno; then AMDEP_TRUE= AMDEP_FALSE='#' else AMDEP_TRUE='#' AMDEP_FALSE= fi depcc="$CC" am_compiler_list= { $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 $as_echo_n "checking dependency style of $depcc... " >&6; } if ${am_cv_CC_dependencies_compiler_type+:} false; then : $as_echo_n "(cached) " >&6 else if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then # We make a subdir and do the tests there. Otherwise we can end up # making bogus files that we don't know about and never remove. For # instance it was reported that on HP-UX the gcc test will end up # making a dummy file named 'D' -- because '-MD' means "put the output # in D". rm -rf conftest.dir mkdir conftest.dir # Copy depcomp to subdir because otherwise we won't find it if we're # using a relative directory. cp "$am_depcomp" conftest.dir cd conftest.dir # We will build objects and dependencies in a subdirectory because # it helps to detect inapplicable dependency modes. For instance # both Tru64's cc and ICC support -MD to output dependencies as a # side effect of compilation, but ICC will put the dependencies in # the current directory while Tru64 will put them in the object # directory. mkdir sub am_cv_CC_dependencies_compiler_type=none if test "$am_compiler_list" = ""; then am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` fi am__universal=false case " $depcc " in #( *\ -arch\ *\ -arch\ *) am__universal=true ;; esac for depmode in $am_compiler_list; do # Setup a source with many dependencies, because some compilers # like to wrap large dependency lists on column 80 (with \), and # we should not choose a depcomp mode which is confused by this. # # We need to recreate these files for each test, as the compiler may # overwrite some of them when testing with obscure command lines. # This happens at least with the AIX C compiler. : > sub/conftest.c for i in 1 2 3 4 5 6; do echo '#include "conftst'$i'.h"' >> sub/conftest.c # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with # Solaris 10 /bin/sh. echo '/* dummy */' > sub/conftst$i.h done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf # We check with '-c' and '-o' for the sake of the "dashmstdout" # mode. It turns out that the SunPro C++ compiler does not properly # handle '-M -o', and we need to detect this. Also, some Intel # versions had trouble with output in subdirs. am__obj=sub/conftest.${OBJEXT-o} am__minus_obj="-o $am__obj" case $depmode in gcc) # This depmode causes a compiler race in universal mode. test "$am__universal" = false || continue ;; nosideeffect) # After this tag, mechanisms are not by side-effect, so they'll # only be used when explicitly requested. if test "x$enable_dependency_tracking" = xyes; then continue else break fi ;; msvc7 | msvc7msys | msvisualcpp | msvcmsys) # This compiler won't grok '-c -o', but also, the minuso test has # not run yet. These depmodes are late enough in the game, and # so weak that their functioning should not be impacted. am__obj=conftest.${OBJEXT-o} am__minus_obj= ;; none) break ;; esac if depmode=$depmode \ source=sub/conftest.c object=$am__obj \ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ >/dev/null 2>conftest.err && grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && grep $am__obj sub/conftest.Po > /dev/null 2>&1 && ${MAKE-make} -s -f confmf > /dev/null 2>&1; then # icc doesn't choke on unknown options, it will just issue warnings # or remarks (even with -Werror). So we grep stderr for any message # that says an option was ignored or not supported. # When given -MP, icc 7.0 and 7.1 complain thusly: # icc: Command line warning: ignoring option '-M'; no argument required # The diagnosis changed in icc 8.0: # icc: Command line remark: option '-MP' not supported if (grep 'ignoring option' conftest.err || grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else am_cv_CC_dependencies_compiler_type=$depmode break fi fi done cd .. rm -rf conftest.dir else am_cv_CC_dependencies_compiler_type=none fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5 $as_echo "$am_cv_CC_dependencies_compiler_type" >&6; } CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type if test "x$enable_dependency_tracking" != xno \ && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then am__fastdepCC_TRUE= am__fastdepCC_FALSE='#' else am__fastdepCC_TRUE='#' am__fastdepCC_FALSE= fi case $ac_cv_prog_cc_stdc in #( no) : ac_cv_prog_cc_c99=no; ac_cv_prog_cc_c89=no ;; #( *) : { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C99" >&5 $as_echo_n "checking for $CC option to accept ISO C99... " >&6; } if ${ac_cv_prog_cc_c99+:} false; then : $as_echo_n "(cached) " >&6 else ac_cv_prog_cc_c99=no ac_save_CC=$CC cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include #include #include #include // Check varargs macros. These examples are taken from C99 6.10.3.5. #define debug(...) fprintf (stderr, __VA_ARGS__) #define showlist(...) puts (#__VA_ARGS__) #define report(test,...) ((test) ? puts (#test) : printf (__VA_ARGS__)) static void test_varargs_macros (void) { int x = 1234; int y = 5678; debug ("Flag"); debug ("X = %d\n", x); showlist (The first, second, and third items.); report (x>y, "x is %d but y is %d", x, y); } // Check long long types. #define BIG64 18446744073709551615ull #define BIG32 4294967295ul #define BIG_OK (BIG64 / BIG32 == 4294967297ull && BIG64 % BIG32 == 0) #if !BIG_OK your preprocessor is broken; #endif #if BIG_OK #else your preprocessor is broken; #endif static long long int bignum = -9223372036854775807LL; static unsigned long long int ubignum = BIG64; struct incomplete_array { int datasize; double data[]; }; struct named_init { int number; const wchar_t *name; double average; }; typedef const char *ccp; static inline int test_restrict (ccp restrict text) { // See if C++-style comments work. // Iterate through items via the restricted pointer. // Also check for declarations in for loops. for (unsigned int i = 0; *(text+i) != '\0'; ++i) continue; return 0; } // Check varargs and va_copy. static void test_varargs (const char *format, ...) { va_list args; va_start (args, format); va_list args_copy; va_copy (args_copy, args); const char *str; int number; float fnumber; while (*format) { switch (*format++) { case 's': // string str = va_arg (args_copy, const char *); break; case 'd': // int number = va_arg (args_copy, int); break; case 'f': // float fnumber = va_arg (args_copy, double); break; default: break; } } va_end (args_copy); va_end (args); } int main () { // Check bool. _Bool success = false; // Check restrict. if (test_restrict ("String literal") == 0) success = true; char *restrict newvar = "Another string"; // Check varargs. test_varargs ("s, d' f .", "string", 65, 34.234); test_varargs_macros (); // Check flexible array members. struct incomplete_array *ia = malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10)); ia->datasize = 10; for (int i = 0; i < ia->datasize; ++i) ia->data[i] = i * 1.234; // Check named initializers. struct named_init ni = { .number = 34, .name = L"Test wide string", .average = 543.34343, }; ni.number = 58; int dynamic_array[ni.number]; dynamic_array[ni.number - 1] = 543; // work around unused variable warnings return (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x' || dynamic_array[ni.number - 1] != 543); ; return 0; } _ACEOF for ac_arg in '' -std=gnu99 -std=c99 -c99 -AC99 -D_STDC_C99= -qlanglvl=extc99 do CC="$ac_save_CC $ac_arg" if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_c99=$ac_arg fi rm -f core conftest.err conftest.$ac_objext test "x$ac_cv_prog_cc_c99" != "xno" && break done rm -f conftest.$ac_ext CC=$ac_save_CC fi # AC_CACHE_VAL case "x$ac_cv_prog_cc_c99" in x) { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 $as_echo "none needed" >&6; } ;; xno) { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 $as_echo "unsupported" >&6; } ;; *) CC="$CC $ac_cv_prog_cc_c99" { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c99" >&5 $as_echo "$ac_cv_prog_cc_c99" >&6; } ;; esac if test "x$ac_cv_prog_cc_c99" != xno; then : ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c99 else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5 $as_echo_n "checking for $CC option to accept ISO C89... " >&6; } if ${ac_cv_prog_cc_c89+:} false; then : $as_echo_n "(cached) " >&6 else ac_cv_prog_cc_c89=no ac_save_CC=$CC cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include struct stat; /* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ struct buf { int x; }; FILE * (*rcsopen) (struct buf *, struct stat *, int); static char *e (p, i) char **p; int i; { return p[i]; } static char *f (char * (*g) (char **, int), char **p, ...) { char *s; va_list v; va_start (v,p); s = g (p, va_arg (v,int)); va_end (v); return s; } /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has function prototypes and stuff, but not '\xHH' hex character constants. These don't provoke an error unfortunately, instead are silently treated as 'x'. The following induces an error, until -std is added to get proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an array size at least. It's necessary to write '\x00'==0 to get something that's true only with -std. */ int osf4_cc_array ['\x00' == 0 ? 1 : -1]; /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters inside strings and character constants. */ #define FOO(x) 'x' int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1]; int test (int i, double x); struct s1 {int (*f) (int a);}; struct s2 {int (*f) (double a);}; int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); int argc; char **argv; int main () { return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; ; return 0; } _ACEOF for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \ -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" do CC="$ac_save_CC $ac_arg" if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_c89=$ac_arg fi rm -f core conftest.err conftest.$ac_objext test "x$ac_cv_prog_cc_c89" != "xno" && break done rm -f conftest.$ac_ext CC=$ac_save_CC fi # AC_CACHE_VAL case "x$ac_cv_prog_cc_c89" in x) { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 $as_echo "none needed" >&6; } ;; xno) { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 $as_echo "unsupported" >&6; } ;; *) CC="$CC $ac_cv_prog_cc_c89" { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5 $as_echo "$ac_cv_prog_cc_c89" >&6; } ;; esac if test "x$ac_cv_prog_cc_c89" != xno; then : ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c89 else ac_cv_prog_cc_stdc=no fi fi ;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO Standard C" >&5 $as_echo_n "checking for $CC option to accept ISO Standard C... " >&6; } if ${ac_cv_prog_cc_stdc+:} false; then : $as_echo_n "(cached) " >&6 fi case $ac_cv_prog_cc_stdc in #( no) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 $as_echo "unsupported" >&6; } ;; #( '') : { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 $as_echo "none needed" >&6; } ;; #( *) : { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_stdc" >&5 $as_echo "$ac_cv_prog_cc_stdc" >&6; } ;; esac ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5 $as_echo_n "checking how to run the C preprocessor... " >&6; } # On Suns, sometimes $CPP names a directory. if test -n "$CPP" && test -d "$CPP"; then CPP= fi if test -z "$CPP"; then if ${ac_cv_prog_CPP+:} false; then : $as_echo_n "(cached) " >&6 else # Double quotes because CPP needs to be expanded for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" do ac_preproc_ok=false for ac_c_preproc_warn_flag in '' yes do # Use a header file that comes with gcc, so configuring glibc # with a fresh cross-compiler works. # Prefer to if __STDC__ is defined, since # exists even on freestanding compilers. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifdef __STDC__ # include #else # include #endif Syntax error _ACEOF if ac_fn_c_try_cpp "$LINENO"; then : else # Broken: fails on valid input. continue fi rm -f conftest.err conftest.i conftest.$ac_ext # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if ac_fn_c_try_cpp "$LINENO"; then : # Broken: success on invalid input. continue else # Passes both tests. ac_preproc_ok=: break fi rm -f conftest.err conftest.i conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.i conftest.err conftest.$ac_ext if $ac_preproc_ok; then : break fi done ac_cv_prog_CPP=$CPP fi CPP=$ac_cv_prog_CPP else ac_cv_prog_CPP=$CPP fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5 $as_echo "$CPP" >&6; } ac_preproc_ok=false for ac_c_preproc_warn_flag in '' yes do # Use a header file that comes with gcc, so configuring glibc # with a fresh cross-compiler works. # Prefer to if __STDC__ is defined, since # exists even on freestanding compilers. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifdef __STDC__ # include #else # include #endif Syntax error _ACEOF if ac_fn_c_try_cpp "$LINENO"; then : else # Broken: fails on valid input. continue fi rm -f conftest.err conftest.i conftest.$ac_ext # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if ac_fn_c_try_cpp "$LINENO"; then : # Broken: success on invalid input. continue else # Passes both tests. ac_preproc_ok=: break fi rm -f conftest.err conftest.i conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.i conftest.err conftest.$ac_ext if $ac_preproc_ok; then : else { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "C preprocessor \"$CPP\" fails sanity check See \`config.log' for more details" "$LINENO" 5; } fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_cxx_compiler_gnu ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_cxx_compiler_gnu if test -z "$CXX"; then if test -n "$CCC"; then CXX=$CCC else if test -n "$ac_tool_prefix"; then for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_CXX+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CXX"; then ac_cv_prog_CXX="$CXX" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CXX="$ac_tool_prefix$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CXX=$ac_cv_prog_CXX if test -n "$CXX"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CXX" >&5 $as_echo "$CXX" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$CXX" && break done fi if test -z "$CXX"; then ac_ct_CXX=$CXX for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_CXX+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CXX"; then ac_cv_prog_ac_ct_CXX="$ac_ct_CXX" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CXX="$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_CXX=$ac_cv_prog_ac_ct_CXX if test -n "$ac_ct_CXX"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CXX" >&5 $as_echo "$ac_ct_CXX" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$ac_ct_CXX" && break done if test "x$ac_ct_CXX" = x; then CXX="g++" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac CXX=$ac_ct_CXX fi fi fi fi # Provide some information about the compiler. $as_echo "$as_me:${as_lineno-$LINENO}: checking for C++ compiler version" >&5 set X $ac_compile ac_compiler=$2 for ac_option in --version -v -V -qversion; do { { ac_try="$ac_compiler $ac_option >&5" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_compiler $ac_option >&5") 2>conftest.err ac_status=$? if test -s conftest.err; then sed '10a\ ... rest of stderr output deleted ... 10q' conftest.err >conftest.er1 cat conftest.er1 >&5 fi rm -f conftest.er1 conftest.err $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } done { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C++ compiler" >&5 $as_echo_n "checking whether we are using the GNU C++ compiler... " >&6; } if ${ac_cv_cxx_compiler_gnu+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { #ifndef __GNUC__ choke me #endif ; return 0; } _ACEOF if ac_fn_cxx_try_compile "$LINENO"; then : ac_compiler_gnu=yes else ac_compiler_gnu=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_cv_cxx_compiler_gnu=$ac_compiler_gnu fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cxx_compiler_gnu" >&5 $as_echo "$ac_cv_cxx_compiler_gnu" >&6; } if test $ac_compiler_gnu = yes; then GXX=yes else GXX= fi ac_test_CXXFLAGS=${CXXFLAGS+set} ac_save_CXXFLAGS=$CXXFLAGS { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX accepts -g" >&5 $as_echo_n "checking whether $CXX accepts -g... " >&6; } if ${ac_cv_prog_cxx_g+:} false; then : $as_echo_n "(cached) " >&6 else ac_save_cxx_werror_flag=$ac_cxx_werror_flag ac_cxx_werror_flag=yes ac_cv_prog_cxx_g=no CXXFLAGS="-g" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_cxx_try_compile "$LINENO"; then : ac_cv_prog_cxx_g=yes else CXXFLAGS="" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_cxx_try_compile "$LINENO"; then : else ac_cxx_werror_flag=$ac_save_cxx_werror_flag CXXFLAGS="-g" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_cxx_try_compile "$LINENO"; then : ac_cv_prog_cxx_g=yes fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_cxx_werror_flag=$ac_save_cxx_werror_flag fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cxx_g" >&5 $as_echo "$ac_cv_prog_cxx_g" >&6; } if test "$ac_test_CXXFLAGS" = set; then CXXFLAGS=$ac_save_CXXFLAGS elif test $ac_cv_prog_cxx_g = yes; then if test "$GXX" = yes; then CXXFLAGS="-g -O2" else CXXFLAGS="-g" fi else if test "$GXX" = yes; then CXXFLAGS="-O2" else CXXFLAGS= fi fi ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_cxx_compiler_gnu depcc="$CXX" am_compiler_list= { $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 $as_echo_n "checking dependency style of $depcc... " >&6; } if ${am_cv_CXX_dependencies_compiler_type+:} false; then : $as_echo_n "(cached) " >&6 else if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then # We make a subdir and do the tests there. Otherwise we can end up # making bogus files that we don't know about and never remove. For # instance it was reported that on HP-UX the gcc test will end up # making a dummy file named 'D' -- because '-MD' means "put the output # in D". rm -rf conftest.dir mkdir conftest.dir # Copy depcomp to subdir because otherwise we won't find it if we're # using a relative directory. cp "$am_depcomp" conftest.dir cd conftest.dir # We will build objects and dependencies in a subdirectory because # it helps to detect inapplicable dependency modes. For instance # both Tru64's cc and ICC support -MD to output dependencies as a # side effect of compilation, but ICC will put the dependencies in # the current directory while Tru64 will put them in the object # directory. mkdir sub am_cv_CXX_dependencies_compiler_type=none if test "$am_compiler_list" = ""; then am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` fi am__universal=false case " $depcc " in #( *\ -arch\ *\ -arch\ *) am__universal=true ;; esac for depmode in $am_compiler_list; do # Setup a source with many dependencies, because some compilers # like to wrap large dependency lists on column 80 (with \), and # we should not choose a depcomp mode which is confused by this. # # We need to recreate these files for each test, as the compiler may # overwrite some of them when testing with obscure command lines. # This happens at least with the AIX C compiler. : > sub/conftest.c for i in 1 2 3 4 5 6; do echo '#include "conftst'$i'.h"' >> sub/conftest.c # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with # Solaris 10 /bin/sh. echo '/* dummy */' > sub/conftst$i.h done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf # We check with '-c' and '-o' for the sake of the "dashmstdout" # mode. It turns out that the SunPro C++ compiler does not properly # handle '-M -o', and we need to detect this. Also, some Intel # versions had trouble with output in subdirs. am__obj=sub/conftest.${OBJEXT-o} am__minus_obj="-o $am__obj" case $depmode in gcc) # This depmode causes a compiler race in universal mode. test "$am__universal" = false || continue ;; nosideeffect) # After this tag, mechanisms are not by side-effect, so they'll # only be used when explicitly requested. if test "x$enable_dependency_tracking" = xyes; then continue else break fi ;; msvc7 | msvc7msys | msvisualcpp | msvcmsys) # This compiler won't grok '-c -o', but also, the minuso test has # not run yet. These depmodes are late enough in the game, and # so weak that their functioning should not be impacted. am__obj=conftest.${OBJEXT-o} am__minus_obj= ;; none) break ;; esac if depmode=$depmode \ source=sub/conftest.c object=$am__obj \ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ >/dev/null 2>conftest.err && grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && grep $am__obj sub/conftest.Po > /dev/null 2>&1 && ${MAKE-make} -s -f confmf > /dev/null 2>&1; then # icc doesn't choke on unknown options, it will just issue warnings # or remarks (even with -Werror). So we grep stderr for any message # that says an option was ignored or not supported. # When given -MP, icc 7.0 and 7.1 complain thusly: # icc: Command line warning: ignoring option '-M'; no argument required # The diagnosis changed in icc 8.0: # icc: Command line remark: option '-MP' not supported if (grep 'ignoring option' conftest.err || grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else am_cv_CXX_dependencies_compiler_type=$depmode break fi fi done cd .. rm -rf conftest.dir else am_cv_CXX_dependencies_compiler_type=none fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CXX_dependencies_compiler_type" >&5 $as_echo "$am_cv_CXX_dependencies_compiler_type" >&6; } CXXDEPMODE=depmode=$am_cv_CXX_dependencies_compiler_type if test "x$enable_dependency_tracking" != xno \ && test "$am_cv_CXX_dependencies_compiler_type" = gcc3; then am__fastdepCXX_TRUE= am__fastdepCXX_FALSE='#' else am__fastdepCXX_TRUE='#' am__fastdepCXX_FALSE= fi ax_cxx_compile_cxx11_required=true ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_cxx_compiler_gnu ac_success=no { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX supports C++11 features by default" >&5 $as_echo_n "checking whether $CXX supports C++11 features by default... " >&6; } if ${ax_cv_cxx_compile_cxx11+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ template struct check { static_assert(sizeof(int) <= sizeof(T), "not big enough"); }; struct Base { virtual void f() {} }; struct Child : public Base { virtual void f() override {} }; typedef check> right_angle_brackets; int a; decltype(a) b; typedef check check_type; check_type c; check_type&& cr = static_cast(c); auto d = a; auto l = [](){}; _ACEOF if ac_fn_cxx_try_compile "$LINENO"; then : ax_cv_cxx_compile_cxx11=yes else ax_cv_cxx_compile_cxx11=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_cxx_compile_cxx11" >&5 $as_echo "$ax_cv_cxx_compile_cxx11" >&6; } if test x$ax_cv_cxx_compile_cxx11 = xyes; then ac_success=yes fi if test x$ac_success = xno; then for switch in -std=c++11 -std=c++0x; do cachevar=`$as_echo "ax_cv_cxx_compile_cxx11_$switch" | $as_tr_sh` { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX supports C++11 features with $switch" >&5 $as_echo_n "checking whether $CXX supports C++11 features with $switch... " >&6; } if eval \${$cachevar+:} false; then : $as_echo_n "(cached) " >&6 else ac_save_CXXFLAGS="$CXXFLAGS" CXXFLAGS="$CXXFLAGS $switch" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ template struct check { static_assert(sizeof(int) <= sizeof(T), "not big enough"); }; struct Base { virtual void f() {} }; struct Child : public Base { virtual void f() override {} }; typedef check> right_angle_brackets; int a; decltype(a) b; typedef check check_type; check_type c; check_type&& cr = static_cast(c); auto d = a; auto l = [](){}; _ACEOF if ac_fn_cxx_try_compile "$LINENO"; then : eval $cachevar=yes else eval $cachevar=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext CXXFLAGS="$ac_save_CXXFLAGS" fi eval ac_res=\$$cachevar { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } if eval test x\$$cachevar = xyes; then CXXFLAGS="$CXXFLAGS $switch" ac_success=yes break fi done fi ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_cxx_compiler_gnu if test x$ax_cxx_compile_cxx11_required = xtrue; then if test x$ac_success = xno; then as_fn_error $? "*** A compiler with support for C++11 language features is required." "$LINENO" 5 fi else if test x$ac_success = xno; then HAVE_CXX11=0 { $as_echo "$as_me:${as_lineno-$LINENO}: No compiler with C++11 support was found" >&5 $as_echo "$as_me: No compiler with C++11 support was found" >&6;} else HAVE_CXX11=1 $as_echo "#define HAVE_CXX11 1" >>confdefs.h fi fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. set dummy ${ac_tool_prefix}gcc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CC="${ac_tool_prefix}gcc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_CC"; then ac_ct_CC=$CC # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC="gcc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 $as_echo "$ac_ct_CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_CC" = x; then CC="" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac CC=$ac_ct_CC fi else CC="$ac_cv_prog_CC" fi if test -z "$CC"; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. set dummy ${ac_tool_prefix}cc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CC="${ac_tool_prefix}cc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi fi if test -z "$CC"; then # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else ac_prog_rejected=no as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then ac_prog_rejected=yes continue fi ac_cv_prog_CC="cc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS if test $ac_prog_rejected = yes; then # We found a bogon in the path, so make sure we never use it. set dummy $ac_cv_prog_CC shift if test $# != 0; then # We chose a different compiler from the bogus one. # However, it has the same basename, so the bogon will be chosen # first if we set CC to just the basename; use the full file name. shift ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" fi fi fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$CC"; then if test -n "$ac_tool_prefix"; then for ac_prog in cl.exe do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CC="$ac_tool_prefix$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$CC" && break done fi if test -z "$CC"; then ac_ct_CC=$CC for ac_prog in cl.exe do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC="$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 $as_echo "$ac_ct_CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$ac_ct_CC" && break done if test "x$ac_ct_CC" = x; then CC="" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac CC=$ac_ct_CC fi fi fi test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "no acceptable C compiler found in \$PATH See \`config.log' for more details" "$LINENO" 5; } # Provide some information about the compiler. $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 set X $ac_compile ac_compiler=$2 for ac_option in --version -v -V -qversion; do { { ac_try="$ac_compiler $ac_option >&5" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_compiler $ac_option >&5") 2>conftest.err ac_status=$? if test -s conftest.err; then sed '10a\ ... rest of stderr output deleted ... 10q' conftest.err >conftest.er1 cat conftest.er1 >&5 fi rm -f conftest.er1 conftest.err $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } done { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5 $as_echo_n "checking whether we are using the GNU C compiler... " >&6; } if ${ac_cv_c_compiler_gnu+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { #ifndef __GNUC__ choke me #endif ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_compiler_gnu=yes else ac_compiler_gnu=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_cv_c_compiler_gnu=$ac_compiler_gnu fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5 $as_echo "$ac_cv_c_compiler_gnu" >&6; } if test $ac_compiler_gnu = yes; then GCC=yes else GCC= fi ac_test_CFLAGS=${CFLAGS+set} ac_save_CFLAGS=$CFLAGS { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5 $as_echo_n "checking whether $CC accepts -g... " >&6; } if ${ac_cv_prog_cc_g+:} false; then : $as_echo_n "(cached) " >&6 else ac_save_c_werror_flag=$ac_c_werror_flag ac_c_werror_flag=yes ac_cv_prog_cc_g=no CFLAGS="-g" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_g=yes else CFLAGS="" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : else ac_c_werror_flag=$ac_save_c_werror_flag CFLAGS="-g" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_g=yes fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_c_werror_flag=$ac_save_c_werror_flag fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5 $as_echo "$ac_cv_prog_cc_g" >&6; } if test "$ac_test_CFLAGS" = set; then CFLAGS=$ac_save_CFLAGS elif test $ac_cv_prog_cc_g = yes; then if test "$GCC" = yes; then CFLAGS="-g -O2" else CFLAGS="-g" fi else if test "$GCC" = yes; then CFLAGS="-O2" else CFLAGS= fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5 $as_echo_n "checking for $CC option to accept ISO C89... " >&6; } if ${ac_cv_prog_cc_c89+:} false; then : $as_echo_n "(cached) " >&6 else ac_cv_prog_cc_c89=no ac_save_CC=$CC cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include struct stat; /* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ struct buf { int x; }; FILE * (*rcsopen) (struct buf *, struct stat *, int); static char *e (p, i) char **p; int i; { return p[i]; } static char *f (char * (*g) (char **, int), char **p, ...) { char *s; va_list v; va_start (v,p); s = g (p, va_arg (v,int)); va_end (v); return s; } /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has function prototypes and stuff, but not '\xHH' hex character constants. These don't provoke an error unfortunately, instead are silently treated as 'x'. The following induces an error, until -std is added to get proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an array size at least. It's necessary to write '\x00'==0 to get something that's true only with -std. */ int osf4_cc_array ['\x00' == 0 ? 1 : -1]; /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters inside strings and character constants. */ #define FOO(x) 'x' int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1]; int test (int i, double x); struct s1 {int (*f) (int a);}; struct s2 {int (*f) (double a);}; int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); int argc; char **argv; int main () { return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; ; return 0; } _ACEOF for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \ -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" do CC="$ac_save_CC $ac_arg" if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_c89=$ac_arg fi rm -f core conftest.err conftest.$ac_objext test "x$ac_cv_prog_cc_c89" != "xno" && break done rm -f conftest.$ac_ext CC=$ac_save_CC fi # AC_CACHE_VAL case "x$ac_cv_prog_cc_c89" in x) { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 $as_echo "none needed" >&6; } ;; xno) { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 $as_echo "unsupported" >&6; } ;; *) CC="$CC $ac_cv_prog_cc_c89" { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5 $as_echo "$ac_cv_prog_cc_c89" >&6; } ;; esac if test "x$ac_cv_prog_cc_c89" != xno; then : fi ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_cxx_compiler_gnu ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC understands -c and -o together" >&5 $as_echo_n "checking whether $CC understands -c and -o together... " >&6; } if ${am_cv_prog_cc_c_o+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF # Make sure it works both with $CC and with simple cc. # Following AC_PROG_CC_C_O, we do the test twice because some # compilers refuse to overwrite an existing .o file with -o, # though they will create one. am_cv_prog_cc_c_o=yes for am_i in 1 2; do if { echo "$as_me:$LINENO: $CC -c conftest.$ac_ext -o conftest2.$ac_objext" >&5 ($CC -c conftest.$ac_ext -o conftest2.$ac_objext) >&5 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } \ && test -f conftest2.$ac_objext; then : OK else am_cv_prog_cc_c_o=no break fi done rm -f core conftest* unset am_i fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&5 $as_echo "$am_cv_prog_cc_c_o" >&6; } if test "$am_cv_prog_cc_c_o" != yes; then # Losing compiler, so override with the script. # FIXME: It is wrong to rewrite CC. # But if we don't then we get into trouble of one sort or another. # A longer-term fix would be to have automake use am__CC in this case, # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)" CC="$am_aux_dir/compile $CC" fi ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_cxx_compiler_gnu depcc="$CC" am_compiler_list= { $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 $as_echo_n "checking dependency style of $depcc... " >&6; } if ${am_cv_CC_dependencies_compiler_type+:} false; then : $as_echo_n "(cached) " >&6 else if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then # We make a subdir and do the tests there. Otherwise we can end up # making bogus files that we don't know about and never remove. For # instance it was reported that on HP-UX the gcc test will end up # making a dummy file named 'D' -- because '-MD' means "put the output # in D". rm -rf conftest.dir mkdir conftest.dir # Copy depcomp to subdir because otherwise we won't find it if we're # using a relative directory. cp "$am_depcomp" conftest.dir cd conftest.dir # We will build objects and dependencies in a subdirectory because # it helps to detect inapplicable dependency modes. For instance # both Tru64's cc and ICC support -MD to output dependencies as a # side effect of compilation, but ICC will put the dependencies in # the current directory while Tru64 will put them in the object # directory. mkdir sub am_cv_CC_dependencies_compiler_type=none if test "$am_compiler_list" = ""; then am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` fi am__universal=false case " $depcc " in #( *\ -arch\ *\ -arch\ *) am__universal=true ;; esac for depmode in $am_compiler_list; do # Setup a source with many dependencies, because some compilers # like to wrap large dependency lists on column 80 (with \), and # we should not choose a depcomp mode which is confused by this. # # We need to recreate these files for each test, as the compiler may # overwrite some of them when testing with obscure command lines. # This happens at least with the AIX C compiler. : > sub/conftest.c for i in 1 2 3 4 5 6; do echo '#include "conftst'$i'.h"' >> sub/conftest.c # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with # Solaris 10 /bin/sh. echo '/* dummy */' > sub/conftst$i.h done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf # We check with '-c' and '-o' for the sake of the "dashmstdout" # mode. It turns out that the SunPro C++ compiler does not properly # handle '-M -o', and we need to detect this. Also, some Intel # versions had trouble with output in subdirs. am__obj=sub/conftest.${OBJEXT-o} am__minus_obj="-o $am__obj" case $depmode in gcc) # This depmode causes a compiler race in universal mode. test "$am__universal" = false || continue ;; nosideeffect) # After this tag, mechanisms are not by side-effect, so they'll # only be used when explicitly requested. if test "x$enable_dependency_tracking" = xyes; then continue else break fi ;; msvc7 | msvc7msys | msvisualcpp | msvcmsys) # This compiler won't grok '-c -o', but also, the minuso test has # not run yet. These depmodes are late enough in the game, and # so weak that their functioning should not be impacted. am__obj=conftest.${OBJEXT-o} am__minus_obj= ;; none) break ;; esac if depmode=$depmode \ source=sub/conftest.c object=$am__obj \ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ >/dev/null 2>conftest.err && grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && grep $am__obj sub/conftest.Po > /dev/null 2>&1 && ${MAKE-make} -s -f confmf > /dev/null 2>&1; then # icc doesn't choke on unknown options, it will just issue warnings # or remarks (even with -Werror). So we grep stderr for any message # that says an option was ignored or not supported. # When given -MP, icc 7.0 and 7.1 complain thusly: # icc: Command line warning: ignoring option '-M'; no argument required # The diagnosis changed in icc 8.0: # icc: Command line remark: option '-MP' not supported if (grep 'ignoring option' conftest.err || grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else am_cv_CC_dependencies_compiler_type=$depmode break fi fi done cd .. rm -rf conftest.dir else am_cv_CC_dependencies_compiler_type=none fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5 $as_echo "$am_cv_CC_dependencies_compiler_type" >&6; } CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type if test "x$enable_dependency_tracking" != xno \ && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then am__fastdepCC_TRUE= am__fastdepCC_FALSE='#' else am__fastdepCC_TRUE='#' am__fastdepCC_FALSE= fi ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_cxx_compiler_gnu { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C++ preprocessor" >&5 $as_echo_n "checking how to run the C++ preprocessor... " >&6; } if test -z "$CXXCPP"; then if ${ac_cv_prog_CXXCPP+:} false; then : $as_echo_n "(cached) " >&6 else # Double quotes because CXXCPP needs to be expanded for CXXCPP in "$CXX -E" "/lib/cpp" do ac_preproc_ok=false for ac_cxx_preproc_warn_flag in '' yes do # Use a header file that comes with gcc, so configuring glibc # with a fresh cross-compiler works. # Prefer to if __STDC__ is defined, since # exists even on freestanding compilers. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifdef __STDC__ # include #else # include #endif Syntax error _ACEOF if ac_fn_cxx_try_cpp "$LINENO"; then : else # Broken: fails on valid input. continue fi rm -f conftest.err conftest.i conftest.$ac_ext # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if ac_fn_cxx_try_cpp "$LINENO"; then : # Broken: success on invalid input. continue else # Passes both tests. ac_preproc_ok=: break fi rm -f conftest.err conftest.i conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.i conftest.err conftest.$ac_ext if $ac_preproc_ok; then : break fi done ac_cv_prog_CXXCPP=$CXXCPP fi CXXCPP=$ac_cv_prog_CXXCPP else ac_cv_prog_CXXCPP=$CXXCPP fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CXXCPP" >&5 $as_echo "$CXXCPP" >&6; } ac_preproc_ok=false for ac_cxx_preproc_warn_flag in '' yes do # Use a header file that comes with gcc, so configuring glibc # with a fresh cross-compiler works. # Prefer to if __STDC__ is defined, since # exists even on freestanding compilers. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifdef __STDC__ # include #else # include #endif Syntax error _ACEOF if ac_fn_cxx_try_cpp "$LINENO"; then : else # Broken: fails on valid input. continue fi rm -f conftest.err conftest.i conftest.$ac_ext # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if ac_fn_cxx_try_cpp "$LINENO"; then : # Broken: success on invalid input. continue else # Passes both tests. ac_preproc_ok=: break fi rm -f conftest.err conftest.i conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.i conftest.err conftest.$ac_ext if $ac_preproc_ok; then : else { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "C++ preprocessor \"$CXXCPP\" fails sanity check See \`config.log' for more details" "$LINENO" 5; } fi ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_cxx_compiler_gnu { $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5 $as_echo_n "checking for grep that handles long lines and -e... " >&6; } if ${ac_cv_path_GREP+:} false; then : $as_echo_n "(cached) " >&6 else if test -z "$GREP"; then ac_path_GREP_found=false # Loop through the user's path and test for each of PROGNAME-LIST as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_prog in grep ggrep; do for ac_exec_ext in '' $ac_executable_extensions; do ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext" as_fn_executable_p "$ac_path_GREP" || continue # Check for GNU ac_path_GREP and select it if it is found. # Check for GNU $ac_path_GREP case `"$ac_path_GREP" --version 2>&1` in *GNU*) ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;; *) ac_count=0 $as_echo_n 0123456789 >"conftest.in" while : do cat "conftest.in" "conftest.in" >"conftest.tmp" mv "conftest.tmp" "conftest.in" cp "conftest.in" "conftest.nl" $as_echo 'GREP' >> "conftest.nl" "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break as_fn_arith $ac_count + 1 && ac_count=$as_val if test $ac_count -gt ${ac_path_GREP_max-0}; then # Best one so far, save it but keep looking for a better one ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_max=$ac_count fi # 10*(2^10) chars as input seems more than enough test $ac_count -gt 10 && break done rm -f conftest.in conftest.tmp conftest.nl conftest.out;; esac $ac_path_GREP_found && break 3 done done done IFS=$as_save_IFS if test -z "$ac_cv_path_GREP"; then as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 fi else ac_cv_path_GREP=$GREP fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5 $as_echo "$ac_cv_path_GREP" >&6; } GREP="$ac_cv_path_GREP" { $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5 $as_echo_n "checking for egrep... " >&6; } if ${ac_cv_path_EGREP+:} false; then : $as_echo_n "(cached) " >&6 else if echo a | $GREP -E '(a|b)' >/dev/null 2>&1 then ac_cv_path_EGREP="$GREP -E" else if test -z "$EGREP"; then ac_path_EGREP_found=false # Loop through the user's path and test for each of PROGNAME-LIST as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_prog in egrep; do for ac_exec_ext in '' $ac_executable_extensions; do ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext" as_fn_executable_p "$ac_path_EGREP" || continue # Check for GNU ac_path_EGREP and select it if it is found. # Check for GNU $ac_path_EGREP case `"$ac_path_EGREP" --version 2>&1` in *GNU*) ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;; *) ac_count=0 $as_echo_n 0123456789 >"conftest.in" while : do cat "conftest.in" "conftest.in" >"conftest.tmp" mv "conftest.tmp" "conftest.in" cp "conftest.in" "conftest.nl" $as_echo 'EGREP' >> "conftest.nl" "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break as_fn_arith $ac_count + 1 && ac_count=$as_val if test $ac_count -gt ${ac_path_EGREP_max-0}; then # Best one so far, save it but keep looking for a better one ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_max=$ac_count fi # 10*(2^10) chars as input seems more than enough test $ac_count -gt 10 && break done rm -f conftest.in conftest.tmp conftest.nl conftest.out;; esac $ac_path_EGREP_found && break 3 done done done IFS=$as_save_IFS if test -z "$ac_cv_path_EGREP"; then as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 fi else ac_cv_path_EGREP=$EGREP fi fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5 $as_echo "$ac_cv_path_EGREP" >&6; } EGREP="$ac_cv_path_EGREP" { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 $as_echo_n "checking for ANSI C header files... " >&6; } if ${ac_cv_header_stdc+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include #include #include int main () { ; return 0; } _ACEOF if ac_fn_cxx_try_compile "$LINENO"; then : ac_cv_header_stdc=yes else ac_cv_header_stdc=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext if test $ac_cv_header_stdc = yes; then # SunOS 4.x string.h does not declare mem*, contrary to ANSI. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | $EGREP "memchr" >/dev/null 2>&1; then : else ac_cv_header_stdc=no fi rm -f conftest* fi if test $ac_cv_header_stdc = yes; then # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | $EGREP "free" >/dev/null 2>&1; then : else ac_cv_header_stdc=no fi rm -f conftest* fi if test $ac_cv_header_stdc = yes; then # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. if test "$cross_compiling" = yes; then : : else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include #if ((' ' & 0x0FF) == 0x020) # define ISLOWER(c) ('a' <= (c) && (c) <= 'z') # define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) #else # define ISLOWER(c) \ (('a' <= (c) && (c) <= 'i') \ || ('j' <= (c) && (c) <= 'r') \ || ('s' <= (c) && (c) <= 'z')) # define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) #endif #define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) int main () { int i; for (i = 0; i < 256; i++) if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) return 2; return 0; } _ACEOF if ac_fn_cxx_try_run "$LINENO"; then : else ac_cv_header_stdc=no fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5 $as_echo "$ac_cv_header_stdc" >&6; } if test $ac_cv_header_stdc = yes; then $as_echo "#define STDC_HEADERS 1" >>confdefs.h fi if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args. set dummy ${ac_tool_prefix}pkg-config; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_PKG_CONFIG+:} false; then : $as_echo_n "(cached) " >&6 else case $PKG_CONFIG in [\\/]* | ?:[\\/]*) ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi PKG_CONFIG=$ac_cv_path_PKG_CONFIG if test -n "$PKG_CONFIG"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5 $as_echo "$PKG_CONFIG" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_path_PKG_CONFIG"; then ac_pt_PKG_CONFIG=$PKG_CONFIG # Extract the first word of "pkg-config", so it can be a program name with args. set dummy pkg-config; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_ac_pt_PKG_CONFIG+:} false; then : $as_echo_n "(cached) " >&6 else case $ac_pt_PKG_CONFIG in [\\/]* | ?:[\\/]*) ac_cv_path_ac_pt_PKG_CONFIG="$ac_pt_PKG_CONFIG" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_ac_pt_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG if test -n "$ac_pt_PKG_CONFIG"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKG_CONFIG" >&5 $as_echo "$ac_pt_PKG_CONFIG" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_pt_PKG_CONFIG" = x; then PKG_CONFIG="" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac PKG_CONFIG=$ac_pt_PKG_CONFIG fi else PKG_CONFIG="$ac_cv_path_PKG_CONFIG" fi fi if test -n "$PKG_CONFIG"; then _pkg_min_version=0.9.0 { $as_echo "$as_me:${as_lineno-$LINENO}: checking pkg-config is at least version $_pkg_min_version" >&5 $as_echo_n "checking pkg-config is at least version $_pkg_min_version... " >&6; } if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } PKG_CONFIG="" fi fi pkg_failed=no { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GTK" >&5 $as_echo_n "checking for GTK... " >&6; } if test -n "$GTK_CFLAGS"; then pkg_cv_GTK_CFLAGS="$GTK_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gtk+-2.0 gdk-2.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "gtk+-2.0 gdk-2.0") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GTK_CFLAGS=`$PKG_CONFIG --cflags "gtk+-2.0 gdk-2.0" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$GTK_LIBS"; then pkg_cv_GTK_LIBS="$GTK_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gtk+-2.0 gdk-2.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "gtk+-2.0 gdk-2.0") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GTK_LIBS=`$PKG_CONFIG --libs "gtk+-2.0 gdk-2.0" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then GTK_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "gtk+-2.0 gdk-2.0" 2>&1` else GTK_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "gtk+-2.0 gdk-2.0" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$GTK_PKG_ERRORS" >&5 as_fn_error $? "Gtk2 development version is needed." "$LINENO" 5 elif test $pkg_failed = untried; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } as_fn_error $? "Gtk2 development version is needed." "$LINENO" 5 else GTK_CFLAGS=$pkg_cv_GTK_CFLAGS GTK_LIBS=$pkg_cv_GTK_LIBS { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } fi if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args. set dummy ${ac_tool_prefix}pkg-config; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_PKG_CONFIG+:} false; then : $as_echo_n "(cached) " >&6 else case $PKG_CONFIG in [\\/]* | ?:[\\/]*) ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi PKG_CONFIG=$ac_cv_path_PKG_CONFIG if test -n "$PKG_CONFIG"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5 $as_echo "$PKG_CONFIG" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_path_PKG_CONFIG"; then ac_pt_PKG_CONFIG=$PKG_CONFIG # Extract the first word of "pkg-config", so it can be a program name with args. set dummy pkg-config; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_ac_pt_PKG_CONFIG+:} false; then : $as_echo_n "(cached) " >&6 else case $ac_pt_PKG_CONFIG in [\\/]* | ?:[\\/]*) ac_cv_path_ac_pt_PKG_CONFIG="$ac_pt_PKG_CONFIG" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_ac_pt_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG if test -n "$ac_pt_PKG_CONFIG"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKG_CONFIG" >&5 $as_echo "$ac_pt_PKG_CONFIG" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_pt_PKG_CONFIG" = x; then PKG_CONFIG="" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac PKG_CONFIG=$ac_pt_PKG_CONFIG fi else PKG_CONFIG="$ac_cv_path_PKG_CONFIG" fi fi if test -n "$PKG_CONFIG"; then _pkg_min_version=0.9.0 { $as_echo "$as_me:${as_lineno-$LINENO}: checking pkg-config is at least version $_pkg_min_version" >&5 $as_echo_n "checking pkg-config is at least version $_pkg_min_version... " >&6; } if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } PKG_CONFIG="" fi fi # Extract the first word of "pkg-config", so it can be a program name with args. set dummy pkg-config; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_PKG_CONFIG_PATH+:} false; then : $as_echo_n "(cached) " >&6 else case $PKG_CONFIG_PATH in [\\/]* | ?:[\\/]*) ac_cv_path_PKG_CONFIG_PATH="$PKG_CONFIG_PATH" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_PKG_CONFIG_PATH="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS test -z "$ac_cv_path_PKG_CONFIG_PATH" && ac_cv_path_PKG_CONFIG_PATH="no" ;; esac fi PKG_CONFIG_PATH=$ac_cv_path_PKG_CONFIG_PATH if test -n "$PKG_CONFIG_PATH"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG_PATH" >&5 $as_echo "$PKG_CONFIG_PATH" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test x$PKG_CONFIG_PATH = xno; then as_fn_error $? "Program \"pkg-config\" is needed. Install this first." "$LINENO" 5 fi # Extract the first word of "grep", so it can be a program name with args. set dummy grep; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_GREP_PATH+:} false; then : $as_echo_n "(cached) " >&6 else case $GREP_PATH in [\\/]* | ?:[\\/]*) ac_cv_path_GREP_PATH="$GREP_PATH" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_GREP_PATH="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS test -z "$ac_cv_path_GREP_PATH" && ac_cv_path_GREP_PATH="no" ;; esac fi GREP_PATH=$ac_cv_path_GREP_PATH if test -n "$GREP_PATH"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GREP_PATH" >&5 $as_echo "$GREP_PATH" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test x$GREP_PATH = xno; then as_fn_error $? "Program \"grep\" is needed. Install this first." "$LINENO" 5 fi # Extract the first word of "touch", so it can be a program name with args. set dummy touch; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_TEE_TOUCH+:} false; then : $as_echo_n "(cached) " >&6 else case $TEE_TOUCH in [\\/]* | ?:[\\/]*) ac_cv_path_TEE_TOUCH="$TEE_TOUCH" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_TEE_TOUCH="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS test -z "$ac_cv_path_TEE_TOUCH" && ac_cv_path_TEE_TOUCH="no" ;; esac fi TEE_TOUCH=$ac_cv_path_TEE_TOUCH if test -n "$TEE_TOUCH"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $TEE_TOUCH" >&5 $as_echo "$TEE_TOUCH" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test x$TOUCH_PATH = xno; then as_fn_error $? "Program \"touch\" is needed. Install this first." "$LINENO" 5 fi # Extract the first word of "date", so it can be a program name with args. set dummy date; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_DATE_PATH+:} false; then : $as_echo_n "(cached) " >&6 else case $DATE_PATH in [\\/]* | ?:[\\/]*) ac_cv_path_DATE_PATH="$DATE_PATH" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_DATE_PATH="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS test -z "$ac_cv_path_DATE_PATH" && ac_cv_path_DATE_PATH="no" ;; esac fi DATE_PATH=$ac_cv_path_DATE_PATH if test -n "$DATE_PATH"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DATE_PATH" >&5 $as_echo "$DATE_PATH" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test x$DATE_PATH = xno; then as_fn_error $? "Program \"date\" is needed. Install this first." "$LINENO" 5 fi # Extract the first word of "tail", so it can be a program name with args. set dummy tail; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_TAIL_PATH+:} false; then : $as_echo_n "(cached) " >&6 else case $TAIL_PATH in [\\/]* | ?:[\\/]*) ac_cv_path_TAIL_PATH="$TAIL_PATH" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_TAIL_PATH="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS test -z "$ac_cv_path_TAIL_PATH" && ac_cv_path_TAIL_PATH="no" ;; esac fi TAIL_PATH=$ac_cv_path_TAIL_PATH if test -n "$TAIL_PATH"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $TAIL_PATH" >&5 $as_echo "$TAIL_PATH" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test x$TAIL_PATH = xno; then as_fn_error $? "Program \"tail\" is needed. Install this first." "$LINENO" 5 fi # Extract the first word of "gzip", so it can be a program name with args. set dummy gzip; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_GZIP_PATH+:} false; then : $as_echo_n "(cached) " >&6 else case $GZIP_PATH in [\\/]* | ?:[\\/]*) ac_cv_path_GZIP_PATH="$GZIP_PATH" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_GZIP_PATH="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS test -z "$ac_cv_path_GZIP_PATH" && ac_cv_path_GZIP_PATH="no" ;; esac fi GZIP_PATH=$ac_cv_path_GZIP_PATH if test -n "$GZIP_PATH"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GZIP_PATH" >&5 $as_echo "$GZIP_PATH" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test x$GZIP_PATH = xno; then as_fn_error $? "Program \"gzip\" is needed. Install this first." "$LINENO" 5 fi # Extract the first word of "gunzip", so it can be a program name with args. set dummy gunzip; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_GUNZIP_PATH+:} false; then : $as_echo_n "(cached) " >&6 else case $GUNZIP_PATH in [\\/]* | ?:[\\/]*) ac_cv_path_GUNZIP_PATH="$GUNZIP_PATH" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_GUNZIP_PATH="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS test -z "$ac_cv_path_GUNZIP_PATH" && ac_cv_path_GUNZIP_PATH="no" ;; esac fi GUNZIP_PATH=$ac_cv_path_GUNZIP_PATH if test -n "$GUNZIP_PATH"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GUNZIP_PATH" >&5 $as_echo "$GUNZIP_PATH" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test x$GUNZIP_PATH = xno; then as_fn_error $? "Program \"gunzip\" is needed. Install this first." "$LINENO" 5 fi # Extract the first word of "iconv", so it can be a program name with args. set dummy iconv; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_ICONV_PATH+:} false; then : $as_echo_n "(cached) " >&6 else case $ICONV_PATH in [\\/]* | ?:[\\/]*) ac_cv_path_ICONV_PATH="$ICONV_PATH" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_ICONV_PATH="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS test -z "$ac_cv_path_ICONV_PATH" && ac_cv_path_ICONV_PATH="no" ;; esac fi ICONV_PATH=$ac_cv_path_ICONV_PATH if test -n "$ICONV_PATH"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ICONV_PATH" >&5 $as_echo "$ICONV_PATH" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test x$ICONV_PATH = xno; then as_fn_error $? "Program \"iconv\" is needed. Install this first." "$LINENO" 5 fi # Extract the first word of "strings", so it can be a program name with args. set dummy strings; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_STRINGS_PATH+:} false; then : $as_echo_n "(cached) " >&6 else case $STRINGS_PATH in [\\/]* | ?:[\\/]*) ac_cv_path_STRINGS_PATH="$STRINGS_PATH" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_STRINGS_PATH="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS test -z "$ac_cv_path_STRINGS_PATH" && ac_cv_path_STRINGS_PATH="no" ;; esac fi STRINGS_PATH=$ac_cv_path_STRINGS_PATH if test -n "$STRINGS_PATH"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRINGS_PATH" >&5 $as_echo "$STRINGS_PATH" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test x$STRINGS_PATH = xno; then as_fn_error $? "Program \"strings\" is needed. Install this first." "$LINENO" 5 fi # Extract the first word of "cat", so it can be a program name with args. set dummy cat; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_CAT_PATH+:} false; then : $as_echo_n "(cached) " >&6 else case $CAT_PATH in [\\/]* | ?:[\\/]*) ac_cv_path_CAT_PATH="$CAT_PATH" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_CAT_PATH="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS test -z "$ac_cv_path_CAT_PATH" && ac_cv_path_CAT_PATH="no" ;; esac fi CAT_PATH=$ac_cv_path_CAT_PATH if test -n "$CAT_PATH"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CAT_PATH" >&5 $as_echo "$CAT_PATH" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test x$CAT_PATH = xno; then as_fn_error $? "Program \"cat\" is needed. Install this first." "$LINENO" 5 fi # Extract the first word of "sort", so it can be a program name with args. set dummy sort; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_SORT_PATH+:} false; then : $as_echo_n "(cached) " >&6 else case $SORT_PATH in [\\/]* | ?:[\\/]*) ac_cv_path_SORT_PATH="$SORT_PATH" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_SORT_PATH="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS test -z "$ac_cv_path_SORT_PATH" && ac_cv_path_SORT_PATH="no" ;; esac fi SORT_PATH=$ac_cv_path_SORT_PATH if test -n "$SORT_PATH"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $SORT_PATH" >&5 $as_echo "$SORT_PATH" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test x$SORT_PATH = xno; then as_fn_error $? "Program \"sort\" is needed. Install this first." "$LINENO" 5 fi # Extract the first word of "head", so it can be a program name with args. set dummy head; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_HEAD_PATH+:} false; then : $as_echo_n "(cached) " >&6 else case $HEAD_PATH in [\\/]* | ?:[\\/]*) ac_cv_path_HEAD_PATH="$HEAD_PATH" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_HEAD_PATH="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS test -z "$ac_cv_path_HEAD_PATH" && ac_cv_path_HEAD_PATH="no" ;; esac fi HEAD_PATH=$ac_cv_path_HEAD_PATH if test -n "$HEAD_PATH"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $HEAD_PATH" >&5 $as_echo "$HEAD_PATH" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test x$HEAD_PATH = xno; then as_fn_error $? "Program \"head\" is needed. Install this first." "$LINENO" 5 fi # Extract the first word of "make", so it can be a program name with args. set dummy make; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_MAKE_PATH+:} false; then : $as_echo_n "(cached) " >&6 else case $MAKE_PATH in [\\/]* | ?:[\\/]*) ac_cv_path_MAKE_PATH="$MAKE_PATH" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_MAKE_PATH="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS test -z "$ac_cv_path_MAKE_PATH" && ac_cv_path_MAKE_PATH="no" ;; esac fi MAKE_PATH=$ac_cv_path_MAKE_PATH if test -n "$MAKE_PATH"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAKE_PATH" >&5 $as_echo "$MAKE_PATH" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test x$MAKE_PATH = xno; then as_fn_error $? "Program \"make\" is needed. Install this first." "$LINENO" 5 fi # Extract the first word of "find", so it can be a program name with args. set dummy find; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_FIND_PATH+:} false; then : $as_echo_n "(cached) " >&6 else case $FIND_PATH in [\\/]* | ?:[\\/]*) ac_cv_path_FIND_PATH="$FIND_PATH" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_FIND_PATH="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS test -z "$ac_cv_path_FIND_PATH" && ac_cv_path_FIND_PATH="no" ;; esac fi FIND_PATH=$ac_cv_path_FIND_PATH if test -n "$FIND_PATH"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $FIND_PATH" >&5 $as_echo "$FIND_PATH" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test x$FIND_PATH = xno; then as_fn_error $? "Program \"find\" is needed. Install this first." "$LINENO" 5 fi # Extract the first word of "xargs", so it can be a program name with args. set dummy xargs; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_FIND_XARGS+:} false; then : $as_echo_n "(cached) " >&6 else case $FIND_XARGS in [\\/]* | ?:[\\/]*) ac_cv_path_FIND_XARGS="$FIND_XARGS" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_FIND_XARGS="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS test -z "$ac_cv_path_FIND_XARGS" && ac_cv_path_FIND_XARGS="no" ;; esac fi FIND_XARGS=$ac_cv_path_FIND_XARGS if test -n "$FIND_XARGS"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $FIND_XARGS" >&5 $as_echo "$FIND_XARGS" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test x$FIND_XARGS = xno; then as_fn_error $? "Program \"xargs\" is needed. Install this first." "$LINENO" 5 fi # Extract the first word of "g++", so it can be a program name with args. set dummy g++; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_FIND_GPP+:} false; then : $as_echo_n "(cached) " >&6 else case $FIND_GPP in [\\/]* | ?:[\\/]*) ac_cv_path_FIND_GPP="$FIND_GPP" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_FIND_GPP="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS test -z "$ac_cv_path_FIND_GPP" && ac_cv_path_FIND_GPP="no" ;; esac fi FIND_GPP=$ac_cv_path_FIND_GPP if test -n "$FIND_GPP"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $FIND_GPP" >&5 $as_echo "$FIND_GPP" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test x$FIND_GPP = xno; then as_fn_error $? "Program \"g++\" is needed. Install this first." "$LINENO" 5 fi # Extract the first word of "diff", so it can be a program name with args. set dummy diff; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_FIND_DIFF+:} false; then : $as_echo_n "(cached) " >&6 else case $FIND_DIFF in [\\/]* | ?:[\\/]*) ac_cv_path_FIND_DIFF="$FIND_DIFF" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_FIND_DIFF="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS test -z "$ac_cv_path_FIND_DIFF" && ac_cv_path_FIND_DIFF="no" ;; esac fi FIND_DIFF=$ac_cv_path_FIND_DIFF if test -n "$FIND_DIFF"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $FIND_DIFF" >&5 $as_echo "$FIND_DIFF" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test x$FIND_DIFF = xno; then as_fn_error $? "Program \"diff\" is needed. Install this first." "$LINENO" 5 fi # Extract the first word of "patch", so it can be a program name with args. set dummy patch; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_FIND_PATCH+:} false; then : $as_echo_n "(cached) " >&6 else case $FIND_PATCH in [\\/]* | ?:[\\/]*) ac_cv_path_FIND_PATCH="$FIND_PATCH" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_FIND_PATCH="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS test -z "$ac_cv_path_FIND_PATCH" && ac_cv_path_FIND_PATCH="no" ;; esac fi FIND_PATCH=$ac_cv_path_FIND_PATCH if test -n "$FIND_PATCH"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $FIND_PATCH" >&5 $as_echo "$FIND_PATCH" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test x$FIND_PATCH = xno; then as_fn_error $? "Program \"patch\" is needed. Install this first." "$LINENO" 5 fi # Extract the first word of "merge", so it can be a program name with args. set dummy merge; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_FIND_MERGE+:} false; then : $as_echo_n "(cached) " >&6 else case $FIND_MERGE in [\\/]* | ?:[\\/]*) ac_cv_path_FIND_MERGE="$FIND_MERGE" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_FIND_MERGE="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS test -z "$ac_cv_path_FIND_MERGE" && ac_cv_path_FIND_MERGE="no" ;; esac fi FIND_MERGE=$ac_cv_path_FIND_MERGE if test -n "$FIND_MERGE"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $FIND_MERGE" >&5 $as_echo "$FIND_MERGE" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test x$FIND_MERGE = xno; then as_fn_error $? "Program \"merge\" (in package rcs) is needed. Install this first." "$LINENO" 5 fi # Extract the first word of "tar", so it can be a program name with args. set dummy tar; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_FIND_TAR+:} false; then : $as_echo_n "(cached) " >&6 else case $FIND_TAR in [\\/]* | ?:[\\/]*) ac_cv_path_FIND_TAR="$FIND_TAR" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_FIND_TAR="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS test -z "$ac_cv_path_FIND_TAR" && ac_cv_path_FIND_TAR="no" ;; esac fi FIND_TAR=$ac_cv_path_FIND_TAR if test -n "$FIND_TAR"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $FIND_TAR" >&5 $as_echo "$FIND_TAR" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test x$FIND_TAR = xno; then as_fn_error $? "Program \"tar\" is needed. Install this first." "$LINENO" 5 fi # Extract the first word of "curl", so it can be a program name with args. set dummy curl; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_FIND_CURL+:} false; then : $as_echo_n "(cached) " >&6 else case $FIND_CURL in [\\/]* | ?:[\\/]*) ac_cv_path_FIND_CURL="$FIND_CURL" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_FIND_CURL="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS test -z "$ac_cv_path_FIND_CURL" && ac_cv_path_FIND_CURL="no" ;; esac fi FIND_CURL=$ac_cv_path_FIND_CURL if test -n "$FIND_CURL"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $FIND_CURL" >&5 $as_echo "$FIND_CURL" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test x$FIND_CURL = xno; then as_fn_error $? "Program \"curl\" is needed. Install this first." "$LINENO" 5 fi pkg_failed=no { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GLIB" >&5 $as_echo_n "checking for GLIB... " >&6; } if test -n "$GLIB_CFLAGS"; then pkg_cv_GLIB_CFLAGS="$GLIB_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= 2.16.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "glib-2.0 >= 2.16.0") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GLIB_CFLAGS=`$PKG_CONFIG --cflags "glib-2.0 >= 2.16.0" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$GLIB_LIBS"; then pkg_cv_GLIB_LIBS="$GLIB_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= 2.16.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "glib-2.0 >= 2.16.0") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GLIB_LIBS=`$PKG_CONFIG --libs "glib-2.0 >= 2.16.0" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then GLIB_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "glib-2.0 >= 2.16.0" 2>&1` else GLIB_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "glib-2.0 >= 2.16.0" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$GLIB_PKG_ERRORS" >&5 as_fn_error $? "glib development version >= 2.16.0 is needed." "$LINENO" 5 elif test $pkg_failed = untried; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } as_fn_error $? "glib development version >= 2.16.0 is needed." "$LINENO" 5 else GLIB_CFLAGS=$pkg_cv_GLIB_CFLAGS GLIB_LIBS=$pkg_cv_GLIB_LIBS { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } fi pkg_failed=no { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GTK" >&5 $as_echo_n "checking for GTK... " >&6; } if test -n "$GTK_CFLAGS"; then pkg_cv_GTK_CFLAGS="$GTK_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gtk+-2.0 >= 2.12.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "gtk+-2.0 >= 2.12.0") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GTK_CFLAGS=`$PKG_CONFIG --cflags "gtk+-2.0 >= 2.12.0" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$GTK_LIBS"; then pkg_cv_GTK_LIBS="$GTK_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gtk+-2.0 >= 2.12.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "gtk+-2.0 >= 2.12.0") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GTK_LIBS=`$PKG_CONFIG --libs "gtk+-2.0 >= 2.12.0" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then GTK_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "gtk+-2.0 >= 2.12.0" 2>&1` else GTK_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "gtk+-2.0 >= 2.12.0" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$GTK_PKG_ERRORS" >&5 as_fn_error $? "gtk+ development version >= 2.12.0 is needed." "$LINENO" 5 elif test $pkg_failed = untried; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } as_fn_error $? "gtk+ development version >= 2.12.0 is needed." "$LINENO" 5 else GTK_CFLAGS=$pkg_cv_GTK_CFLAGS GTK_LIBS=$pkg_cv_GTK_LIBS { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } fi pkg_failed=no { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GTHREAD" >&5 $as_echo_n "checking for GTHREAD... " >&6; } if test -n "$GTHREAD_CFLAGS"; then pkg_cv_GTHREAD_CFLAGS="$GTHREAD_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gthread-2.0 >= 2.16.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "gthread-2.0 >= 2.16.0") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GTHREAD_CFLAGS=`$PKG_CONFIG --cflags "gthread-2.0 >= 2.16.0" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$GTHREAD_LIBS"; then pkg_cv_GTHREAD_LIBS="$GTHREAD_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gthread-2.0 >= 2.16.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "gthread-2.0 >= 2.16.0") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GTHREAD_LIBS=`$PKG_CONFIG --libs "gthread-2.0 >= 2.16.0" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then GTHREAD_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "gthread-2.0 >= 2.16.0" 2>&1` else GTHREAD_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "gthread-2.0 >= 2.16.0" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$GTHREAD_PKG_ERRORS" >&5 as_fn_error $? "gthread development version >= 2.16.0 is needed." "$LINENO" 5 elif test $pkg_failed = untried; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } as_fn_error $? "gthread development version >= 2.16.0 is needed." "$LINENO" 5 else GTHREAD_CFLAGS=$pkg_cv_GTHREAD_CFLAGS GTHREAD_LIBS=$pkg_cv_GTHREAD_LIBS { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } fi pkg_failed=no { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GOBJECT" >&5 $as_echo_n "checking for GOBJECT... " >&6; } if test -n "$GOBJECT_CFLAGS"; then pkg_cv_GOBJECT_CFLAGS="$GOBJECT_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gobject-2.0 >= 2.16.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "gobject-2.0 >= 2.16.0") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GOBJECT_CFLAGS=`$PKG_CONFIG --cflags "gobject-2.0 >= 2.16.0" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$GOBJECT_LIBS"; then pkg_cv_GOBJECT_LIBS="$GOBJECT_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gobject-2.0 >= 2.16.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "gobject-2.0 >= 2.16.0") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GOBJECT_LIBS=`$PKG_CONFIG --libs "gobject-2.0 >= 2.16.0" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then GOBJECT_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "gobject-2.0 >= 2.16.0" 2>&1` else GOBJECT_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "gobject-2.0 >= 2.16.0" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$GOBJECT_PKG_ERRORS" >&5 as_fn_error $? "gobject development version >= 2.16.0 is needed." "$LINENO" 5 elif test $pkg_failed = untried; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } as_fn_error $? "gobject development version >= 2.16.0 is needed." "$LINENO" 5 else GOBJECT_CFLAGS=$pkg_cv_GOBJECT_CFLAGS GOBJECT_LIBS=$pkg_cv_GOBJECT_LIBS { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } fi pkg_failed=no { $as_echo "$as_me:${as_lineno-$LINENO}: checking for SQLITE" >&5 $as_echo_n "checking for SQLITE... " >&6; } if test -n "$SQLITE_CFLAGS"; then pkg_cv_SQLITE_CFLAGS="$SQLITE_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"sqlite3 >= 3.0.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "sqlite3 >= 3.0.0") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_SQLITE_CFLAGS=`$PKG_CONFIG --cflags "sqlite3 >= 3.0.0" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$SQLITE_LIBS"; then pkg_cv_SQLITE_LIBS="$SQLITE_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"sqlite3 >= 3.0.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "sqlite3 >= 3.0.0") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_SQLITE_LIBS=`$PKG_CONFIG --libs "sqlite3 >= 3.0.0" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then SQLITE_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "sqlite3 >= 3.0.0" 2>&1` else SQLITE_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "sqlite3 >= 3.0.0" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$SQLITE_PKG_ERRORS" >&5 as_fn_error $? "sqlite development version >= 3.0.0 is needed." "$LINENO" 5 elif test $pkg_failed = untried; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } as_fn_error $? "sqlite development version >= 3.0.0 is needed." "$LINENO" 5 else SQLITE_CFLAGS=$pkg_cv_SQLITE_CFLAGS SQLITE_LIBS=$pkg_cv_SQLITE_LIBS { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } fi # Check whether --with-xml-prefix was given. if test "${with_xml_prefix+set}" = set; then : withval=$with_xml_prefix; xml_config_prefix="$withval" else xml_config_prefix="" fi # Check whether --with-xml-exec-prefix was given. if test "${with_xml_exec_prefix+set}" = set; then : withval=$with_xml_exec_prefix; xml_config_exec_prefix="$withval" else xml_config_exec_prefix="" fi # Check whether --enable-xmltest was given. if test "${enable_xmltest+set}" = set; then : enableval=$enable_xmltest; else enable_xmltest=yes fi if test x$xml_config_exec_prefix != x ; then xml_config_args="$xml_config_args" if test x${XML2_CONFIG+set} != xset ; then XML2_CONFIG=$xml_config_exec_prefix/bin/xml2-config fi fi if test x$xml_config_prefix != x ; then xml_config_args="$xml_config_args --prefix=$xml_config_prefix" if test x${XML2_CONFIG+set} != xset ; then XML2_CONFIG=$xml_config_prefix/bin/xml2-config fi fi # Extract the first word of "xml2-config", so it can be a program name with args. set dummy xml2-config; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_XML2_CONFIG+:} false; then : $as_echo_n "(cached) " >&6 else case $XML2_CONFIG in [\\/]* | ?:[\\/]*) ac_cv_path_XML2_CONFIG="$XML2_CONFIG" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_XML2_CONFIG="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS test -z "$ac_cv_path_XML2_CONFIG" && ac_cv_path_XML2_CONFIG="no" ;; esac fi XML2_CONFIG=$ac_cv_path_XML2_CONFIG if test -n "$XML2_CONFIG"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $XML2_CONFIG" >&5 $as_echo "$XML2_CONFIG" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi min_xml_version=2.5.0 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libxml - version >= $min_xml_version" >&5 $as_echo_n "checking for libxml - version >= $min_xml_version... " >&6; } no_xml="" if test "$XML2_CONFIG" = "no" ; then no_xml=yes else XML_CPPFLAGS=`$XML2_CONFIG $xml_config_args --cflags` XML_LIBS=`$XML2_CONFIG $xml_config_args --libs` xml_config_major_version=`$XML2_CONFIG $xml_config_args --version | \ sed 's/\([0-9]*\).\([0-9]*\).\([0-9]*\)/\1/'` xml_config_minor_version=`$XML2_CONFIG $xml_config_args --version | \ sed 's/\([0-9]*\).\([0-9]*\).\([0-9]*\)/\2/'` xml_config_micro_version=`$XML2_CONFIG $xml_config_args --version | \ sed 's/\([0-9]*\).\([0-9]*\).\([0-9]*\)/\3/'` if test "x$enable_xmltest" = "xyes" ; then ac_save_CPPFLAGS="$CPPFLAGS" ac_save_LIBS="$LIBS" CPPFLAGS="$CPPFLAGS $XML_CPPFLAGS" LIBS="$XML_LIBS $LIBS" rm -f conf.xmltest if test "$cross_compiling" = yes; then : echo $ac_n "cross compiling; assumed OK... $ac_c" else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include #include #include int main() { int xml_major_version, xml_minor_version, xml_micro_version; int major, minor, micro; char *tmp_version; system("touch conf.xmltest"); /* Capture xml2-config output via autoconf/configure variables */ /* HP/UX 9 (%@#!) writes to sscanf strings */ tmp_version = (char *)strdup("$min_xml_version"); if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, µ) != 3) { printf("%s, bad version string from xml2-config\n", "$min_xml_version"); exit(1); } free(tmp_version); /* Capture the version information from the header files */ tmp_version = (char *)strdup(LIBXML_DOTTED_VERSION); if (sscanf(tmp_version, "%d.%d.%d", &xml_major_version, &xml_minor_version, &xml_micro_version) != 3) { printf("%s, bad version string from libxml includes\n", "LIBXML_DOTTED_VERSION"); exit(1); } free(tmp_version); /* Compare xml2-config output to the libxml headers */ if ((xml_major_version != $xml_config_major_version) || (xml_minor_version != $xml_config_minor_version) || (xml_micro_version != $xml_config_micro_version)) { printf("*** libxml header files (version %d.%d.%d) do not match\n", xml_major_version, xml_minor_version, xml_micro_version); printf("*** xml2-config (version %d.%d.%d)\n", $xml_config_major_version, $xml_config_minor_version, $xml_config_micro_version); return 1; } /* Compare the headers to the library to make sure we match */ /* Less than ideal -- doesn't provide us with return value feedback, * only exits if there's a serious mismatch between header and library. */ LIBXML_TEST_VERSION; /* Test that the library is greater than our minimum version */ if ((xml_major_version > major) || ((xml_major_version == major) && (xml_minor_version > minor)) || ((xml_major_version == major) && (xml_minor_version == minor) && (xml_micro_version >= micro))) { return 0; } else { printf("\n*** An old version of libxml (%d.%d.%d) was found.\n", xml_major_version, xml_minor_version, xml_micro_version); printf("*** You need a version of libxml newer than %d.%d.%d. The latest version of\n", major, minor, micro); printf("*** libxml is always available from ftp://ftp.xmlsoft.org.\n"); printf("***\n"); printf("*** If you have already installed a sufficiently new version, this error\n"); printf("*** probably means that the wrong copy of the xml2-config shell script is\n"); printf("*** being found. The easiest way to fix this is to remove the old version\n"); printf("*** of LIBXML, but you can also set the XML2_CONFIG environment to point to the\n"); printf("*** correct copy of xml2-config. (In this case, you will have to\n"); printf("*** modify your LD_LIBRARY_PATH enviroment variable, or edit /etc/ld.so.conf\n"); printf("*** so that the correct libraries are found at run-time))\n"); } return 1; } _ACEOF if ac_fn_cxx_try_run "$LINENO"; then : else no_xml=yes fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi CPPFLAGS="$ac_save_CPPFLAGS" LIBS="$ac_save_LIBS" fi fi if test "x$no_xml" = x ; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes (version $xml_config_major_version.$xml_config_minor_version.$xml_config_micro_version)" >&5 $as_echo "yes (version $xml_config_major_version.$xml_config_minor_version.$xml_config_micro_version)" >&6; } : else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } if test "$XML2_CONFIG" = "no" ; then echo "*** The xml2-config script installed by LIBXML could not be found" echo "*** If libxml was installed in PREFIX, make sure PREFIX/bin is in" echo "*** your path, or set the XML2_CONFIG environment variable to the" echo "*** full path to xml2-config." else if test -f conf.xmltest ; then : else echo "*** Could not run libxml test program, checking why..." CPPFLAGS="$CPPFLAGS $XML_CPPFLAGS" LIBS="$LIBS $XML_LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include int main () { LIBXML_TEST_VERSION; return 0; ; return 0; } _ACEOF if ac_fn_cxx_try_link "$LINENO"; then : echo "*** The test program compiled, but did not run. This usually means" echo "*** that the run-time linker is not finding LIBXML or finding the wrong" echo "*** version of LIBXML. If it is not finding LIBXML, you'll need to set your" echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point" echo "*** to the installed location Also, make sure you have run ldconfig if that" echo "*** is required on your system" echo "***" echo "*** If you have an old version installed, it is best to remove it, although" echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH" else echo "*** The test program failed to compile or link. See the file config.log for the" echo "*** exact error that occured. This usually means LIBXML was incorrectly installed" echo "*** or that you have moved LIBXML since it was installed. In the latter case, you" echo "*** may want to edit the xml2-config script: $XML2_CONFIG" fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext CPPFLAGS="$ac_save_CPPFLAGS" LIBS="$ac_save_LIBS" fi fi XML_CPPFLAGS="" XML_LIBS="" as_fn_error $? "Library libxml2-dev is needed. Install this first." "$LINENO" 5 fi rm -f conf.xmltest pkg_failed=no { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ENCHANT" >&5 $as_echo_n "checking for ENCHANT... " >&6; } if test -n "$ENCHANT_CFLAGS"; then pkg_cv_ENCHANT_CFLAGS="$ENCHANT_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"enchant >= 1.2.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "enchant >= 1.2.0") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_ENCHANT_CFLAGS=`$PKG_CONFIG --cflags "enchant >= 1.2.0" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$ENCHANT_LIBS"; then pkg_cv_ENCHANT_LIBS="$ENCHANT_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"enchant >= 1.2.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "enchant >= 1.2.0") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_ENCHANT_LIBS=`$PKG_CONFIG --libs "enchant >= 1.2.0" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then ENCHANT_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "enchant >= 1.2.0" 2>&1` else ENCHANT_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "enchant >= 1.2.0" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$ENCHANT_PKG_ERRORS" >&5 as_fn_error $? "Package requirements (enchant >= 1.2.0) were not met: $ENCHANT_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the environment variables ENCHANT_CFLAGS and ENCHANT_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details." "$LINENO" 5 elif test $pkg_failed = untried; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. Alternatively, you may set the environment variables ENCHANT_CFLAGS and ENCHANT_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. To get pkg-config, see . See \`config.log' for more details" "$LINENO" 5; } else ENCHANT_CFLAGS=$pkg_cv_ENCHANT_CFLAGS ENCHANT_LIBS=$pkg_cv_ENCHANT_LIBS { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } fi pkg_failed=no { $as_echo "$as_me:${as_lineno-$LINENO}: checking for PANGO" >&5 $as_echo_n "checking for PANGO... " >&6; } if test -n "$PANGO_CFLAGS"; then pkg_cv_PANGO_CFLAGS="$PANGO_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"pango >= 1.3.5\""; } >&5 ($PKG_CONFIG --exists --print-errors "pango >= 1.3.5") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_PANGO_CFLAGS=`$PKG_CONFIG --cflags "pango >= 1.3.5" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$PANGO_LIBS"; then pkg_cv_PANGO_LIBS="$PANGO_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"pango >= 1.3.5\""; } >&5 ($PKG_CONFIG --exists --print-errors "pango >= 1.3.5") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_PANGO_LIBS=`$PKG_CONFIG --libs "pango >= 1.3.5" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then PANGO_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "pango >= 1.3.5" 2>&1` else PANGO_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "pango >= 1.3.5" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$PANGO_PKG_ERRORS" >&5 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Disabling new error underlining since pango < 1.3.5" >&5 $as_echo "$as_me: WARNING: Disabling new error underlining since pango < 1.3.5" >&2;} elif test $pkg_failed = untried; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Disabling new error underlining since pango < 1.3.5" >&5 $as_echo "$as_me: WARNING: Disabling new error underlining since pango < 1.3.5" >&2;} else PANGO_CFLAGS=$pkg_cv_PANGO_CFLAGS PANGO_LIBS=$pkg_cv_PANGO_LIBS { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } $as_echo "#define HAVE_PANGO_UNDERLINE_ERROR 1" >>confdefs.h fi pkg_failed=no { $as_echo "$as_me:${as_lineno-$LINENO}: checking for PANGO" >&5 $as_echo_n "checking for PANGO... " >&6; } if test -n "$PANGO_CFLAGS"; then pkg_cv_PANGO_CFLAGS="$PANGO_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"pango >= 1.8.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "pango >= 1.8.0") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_PANGO_CFLAGS=`$PKG_CONFIG --cflags "pango >= 1.8.0" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$PANGO_LIBS"; then pkg_cv_PANGO_LIBS="$PANGO_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"pango >= 1.8.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "pango >= 1.8.0") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_PANGO_LIBS=`$PKG_CONFIG --libs "pango >= 1.8.0" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then PANGO_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "pango >= 1.8.0" 2>&1` else PANGO_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "pango >= 1.8.0" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$PANGO_PKG_ERRORS" >&5 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Enabling word-breaking workarounds since pango < 1.8.0" >&5 $as_echo "$as_me: WARNING: Enabling word-breaking workarounds since pango < 1.8.0" >&2;} elif test $pkg_failed = untried; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Enabling word-breaking workarounds since pango < 1.8.0" >&5 $as_echo "$as_me: WARNING: Enabling word-breaking workarounds since pango < 1.8.0" >&2;} else PANGO_CFLAGS=$pkg_cv_PANGO_CFLAGS PANGO_LIBS=$pkg_cv_PANGO_LIBS { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } $as_echo "#define FIXED_PANGO 1" >>confdefs.h fi pkg_failed=no { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GTKSOURCEVIEW" >&5 $as_echo_n "checking for GTKSOURCEVIEW... " >&6; } if test -n "$GTKSOURCEVIEW_CFLAGS"; then pkg_cv_GTKSOURCEVIEW_CFLAGS="$GTKSOURCEVIEW_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gtksourceview-2.0 >= 2.2.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "gtksourceview-2.0 >= 2.2.0") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GTKSOURCEVIEW_CFLAGS=`$PKG_CONFIG --cflags "gtksourceview-2.0 >= 2.2.0" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$GTKSOURCEVIEW_LIBS"; then pkg_cv_GTKSOURCEVIEW_LIBS="$GTKSOURCEVIEW_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gtksourceview-2.0 >= 2.2.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "gtksourceview-2.0 >= 2.2.0") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GTKSOURCEVIEW_LIBS=`$PKG_CONFIG --libs "gtksourceview-2.0 >= 2.2.0" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then GTKSOURCEVIEW_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "gtksourceview-2.0 >= 2.2.0" 2>&1` else GTKSOURCEVIEW_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "gtksourceview-2.0 >= 2.2.0" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$GTKSOURCEVIEW_PKG_ERRORS" >&5 as_fn_error $? "Package requirements (gtksourceview-2.0 >= 2.2.0) were not met: $GTKSOURCEVIEW_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the environment variables GTKSOURCEVIEW_CFLAGS and GTKSOURCEVIEW_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details." "$LINENO" 5 elif test $pkg_failed = untried; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. Alternatively, you may set the environment variables GTKSOURCEVIEW_CFLAGS and GTKSOURCEVIEW_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. To get pkg-config, see . See \`config.log' for more details" "$LINENO" 5; } else GTKSOURCEVIEW_CFLAGS=$pkg_cv_GTKSOURCEVIEW_CFLAGS GTKSOURCEVIEW_LIBS=$pkg_cv_GTKSOURCEVIEW_LIBS { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } fi pkg_failed=no { $as_echo "$as_me:${as_lineno-$LINENO}: checking for WEBKIT" >&5 $as_echo_n "checking for WEBKIT... " >&6; } if test -n "$WEBKIT_CFLAGS"; then pkg_cv_WEBKIT_CFLAGS="$WEBKIT_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"webkit-1.0 >= 1.0.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "webkit-1.0 >= 1.0.0") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_WEBKIT_CFLAGS=`$PKG_CONFIG --cflags "webkit-1.0 >= 1.0.0" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$WEBKIT_LIBS"; then pkg_cv_WEBKIT_LIBS="$WEBKIT_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"webkit-1.0 >= 1.0.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "webkit-1.0 >= 1.0.0") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_WEBKIT_LIBS=`$PKG_CONFIG --libs "webkit-1.0 >= 1.0.0" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then WEBKIT_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "webkit-1.0 >= 1.0.0" 2>&1` else WEBKIT_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "webkit-1.0 >= 1.0.0" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$WEBKIT_PKG_ERRORS" >&5 as_fn_error $? "libwebkit development version >= 1.0.0 is needed." "$LINENO" 5 elif test $pkg_failed = untried; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } as_fn_error $? "libwebkit development version >= 1.0.0 is needed." "$LINENO" 5 else WEBKIT_CFLAGS=$pkg_cv_WEBKIT_CFLAGS WEBKIT_LIBS=$pkg_cv_WEBKIT_LIBS { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } fi pkg_failed=no { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LIBSOUP" >&5 $as_echo_n "checking for LIBSOUP... " >&6; } if test -n "$LIBSOUP_CFLAGS"; then pkg_cv_LIBSOUP_CFLAGS="$LIBSOUP_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsoup-2.4 >= 2.4\""; } >&5 ($PKG_CONFIG --exists --print-errors "libsoup-2.4 >= 2.4") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_LIBSOUP_CFLAGS=`$PKG_CONFIG --cflags "libsoup-2.4 >= 2.4" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$LIBSOUP_LIBS"; then pkg_cv_LIBSOUP_LIBS="$LIBSOUP_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsoup-2.4 >= 2.4\""; } >&5 ($PKG_CONFIG --exists --print-errors "libsoup-2.4 >= 2.4") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_LIBSOUP_LIBS=`$PKG_CONFIG --libs "libsoup-2.4 >= 2.4" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then LIBSOUP_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libsoup-2.4 >= 2.4" 2>&1` else LIBSOUP_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libsoup-2.4 >= 2.4" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$LIBSOUP_PKG_ERRORS" >&5 as_fn_error $? "libsoup-2.4 development version >= 2.4 is needed." "$LINENO" 5 elif test $pkg_failed = untried; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } as_fn_error $? "libsoup-2.4 development version >= 2.4 is needed." "$LINENO" 5 else LIBSOUP_CFLAGS=$pkg_cv_LIBSOUP_CFLAGS LIBSOUP_LIBS=$pkg_cv_LIBSOUP_LIBS { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } fi # On IRIX 5.3, sys/types and inttypes.h are conflicting. for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ inttypes.h stdint.h unistd.h do : as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` ac_fn_cxx_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default " if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : cat >>confdefs.h <<_ACEOF #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 _ACEOF fi done ac_fn_cxx_check_header_mongrel "$LINENO" "sqlite3.h" "ac_cv_header_sqlite3_h" "$ac_includes_default" if test "x$ac_cv_header_sqlite3_h" = xyes; then : else as_fn_error $? "Header file sqlite3.h was not found. Usually this is in libsqlite3-dev." "$LINENO" 5 fi # This code is kept to learn from. # AC_CHECK_HEADER(aspell.h, [AC_DEFINE(HAVE_ASPELL_H,1, # [Define to 1 if you have the header file.] )] ) # AC_CHECK_HEADER(pspell/pspell.h, [AC_DEFINE(HAVE_PSPELL_H,1, # [Define to 1 if you have the header file.] )] ) # AC_SUBST(SPELLER_LIB) if test "x${prefix}" = "xNONE"; then packageprefix=${ac_default_prefix} else packageprefix=${prefix} fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable LINUX specific flags" >&5 $as_echo_n "checking whether to enable LINUX specific flags... " >&6; } case "$host_os" in *linux*) linux=true { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } cat >>confdefs.h <<_ACEOF #define LINUX "1" _ACEOF ;; *) linux=false { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } ;; esac if test x$linux = xtrue; then LINUX_TRUE= LINUX_FALSE='#' else LINUX_TRUE='#' LINUX_FALSE= fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable DARWIN specific flags" >&5 $as_echo_n "checking whether to enable DARWIN specific flags... " >&6; } case "$host_os" in *darwin*) darwin=true { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } cat >>confdefs.h <<_ACEOF #define DARWIN "1" _ACEOF ;; *) darwin=false { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } ;; esac if test x$darwin = xtrue; then DARWIN_TRUE= DARWIN_FALSE='#' else DARWIN_TRUE='#' DARWIN_FALSE= fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable WIN32 specific flags" >&5 $as_echo_n "checking whether to enable WIN32 specific flags... " >&6; } case "$host_os" in *mingw*) win32=true { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } cat >>confdefs.h <<_ACEOF #define WIN32 "1" _ACEOF ;; *) win32=false { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } ;; esac if test x$win32 = xtrue; then WIN32_TRUE= WIN32_FALSE='#' else WIN32_TRUE='#' WIN32_FALSE= fi packagedatadir=share/${PACKAGE} packagedocdir=doc/${PACKAGE} packagepixmapsdir=${packagedatadir}/pixmaps packagehelpdir=${packagedatadir}/help packagemenudir=${packagedatadir} packagelocalstatedir=var/${PACKAGE} if test "x${datarootdir}" = 'x${prefix}/share'; then if test "x${prefix}" = "xNONE"; then cat >>confdefs.h <<_ACEOF #define PACKAGE_DATA_DIR "${ac_default_prefix}/share/${PACKAGE}" _ACEOF else cat >>confdefs.h <<_ACEOF #define PACKAGE_DATA_DIR "${prefix}/share/${PACKAGE}" _ACEOF fi else cat >>confdefs.h <<_ACEOF #define PACKAGE_DATA_DIR "${datarootdir}/${PACKAGE}" _ACEOF fi ac_config_files="$ac_config_files Makefile man/Makefile pix/Makefile doc/Makefile src/Makefile scripts/Makefile templates/Makefile olpc/Makefile desktop/Makefile windows/Makefile tests/Makefile shutdown/Makefile usfm/Makefile kjv/Makefile xetex/Makefile git/Makefile php/Makefile" cat >confcache <<\_ACEOF # This file is a shell script that caches the results of configure # tests run on this system so they can be shared between configure # scripts and configure runs, see configure's option --config-cache. # It is not useful on other systems. If it contains results you don't # want to keep, you may remove or edit it. # # config.status only pays attention to the cache file if you give it # the --recheck option to rerun configure. # # `ac_cv_env_foo' variables (set or unset) will be overridden when # loading this file, other *unset* `ac_cv_foo' will be assigned the # following values. _ACEOF # The following way of writing the cache mishandles newlines in values, # but we know of no workaround that is simple, portable, and efficient. # So, we kill variables containing newlines. # Ultrix sh set writes to stderr and can't be redirected directly, # and sets the high bit in the cache file unless we assign to the vars. ( for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do eval ac_val=\$$ac_var case $ac_val in #( *${as_nl}*) case $ac_var in #( *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; esac case $ac_var in #( _ | IFS | as_nl) ;; #( BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( *) { eval $ac_var=; unset $ac_var;} ;; esac ;; esac done (set) 2>&1 | case $as_nl`(ac_space=' '; set) 2>&1` in #( *${as_nl}ac_space=\ *) # `set' does not quote correctly, so add quotes: double-quote # substitution turns \\\\ into \\, and sed turns \\ into \. sed -n \ "s/'/'\\\\''/g; s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" ;; #( *) # `set' quotes correctly as required by POSIX, so do not add quotes. sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" ;; esac | sort ) | sed ' /^ac_cv_env_/b end t clear :clear s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ t end s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ :end' >>confcache if diff "$cache_file" confcache >/dev/null 2>&1; then :; else if test -w "$cache_file"; then if test "x$cache_file" != "x/dev/null"; then { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5 $as_echo "$as_me: updating cache $cache_file" >&6;} if test ! -f "$cache_file" || test -h "$cache_file"; then cat confcache >"$cache_file" else case $cache_file in #( */* | ?:*) mv -f confcache "$cache_file"$$ && mv -f "$cache_file"$$ "$cache_file" ;; #( *) mv -f confcache "$cache_file" ;; esac fi fi else { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5 $as_echo "$as_me: not updating unwritable cache $cache_file" >&6;} fi fi rm -f confcache test "x$prefix" = xNONE && prefix=$ac_default_prefix # Let make expand exec_prefix. test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' DEFS=-DHAVE_CONFIG_H ac_libobjs= ac_ltlibobjs= U= for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue # 1. Remove the extension, and $U if already installed. ac_script='s/\$U\././;s/\.o$//;s/\.obj$//' ac_i=`$as_echo "$ac_i" | sed "$ac_script"` # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR # will be set to the directory where LIBOBJS objects are built. as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext" as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo' done LIBOBJS=$ac_libobjs LTLIBOBJS=$ac_ltlibobjs { $as_echo "$as_me:${as_lineno-$LINENO}: checking that generated files are newer than configure" >&5 $as_echo_n "checking that generated files are newer than configure... " >&6; } if test -n "$am_sleep_pid"; then # Hide warnings about reused PIDs. wait $am_sleep_pid 2>/dev/null fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: done" >&5 $as_echo "done" >&6; } if test -n "$EXEEXT"; then am__EXEEXT_TRUE= am__EXEEXT_FALSE='#' else am__EXEEXT_TRUE='#' am__EXEEXT_FALSE= fi if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then as_fn_error $? "conditional \"AMDEP\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then as_fn_error $? "conditional \"am__fastdepCC\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${am__fastdepCXX_TRUE}" && test -z "${am__fastdepCXX_FALSE}"; then as_fn_error $? "conditional \"am__fastdepCXX\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then as_fn_error $? "conditional \"am__fastdepCC\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${LINUX_TRUE}" && test -z "${LINUX_FALSE}"; then as_fn_error $? "conditional \"LINUX\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${DARWIN_TRUE}" && test -z "${DARWIN_FALSE}"; then as_fn_error $? "conditional \"DARWIN\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${WIN32_TRUE}" && test -z "${WIN32_FALSE}"; then as_fn_error $? "conditional \"WIN32\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi : "${CONFIG_STATUS=./config.status}" ac_write_fail=0 ac_clean_files_save=$ac_clean_files ac_clean_files="$ac_clean_files $CONFIG_STATUS" { $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5 $as_echo "$as_me: creating $CONFIG_STATUS" >&6;} as_write_fail=0 cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1 #! $SHELL # Generated by $as_me. # Run this file to recreate the current configuration. # Compiler output produced by configure, useful for debugging # configure, is in config.log if it exists. debug=false ac_cs_recheck=false ac_cs_silent=false SHELL=\${CONFIG_SHELL-$SHELL} export SHELL _ASEOF cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1 ## -------------------- ## ## M4sh Initialization. ## ## -------------------- ## # Be more Bourne compatible DUALCASE=1; export DUALCASE # for MKS sh if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : emulate sh NULLCMD=: # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which # is contrary to our usage. Disable this feature. alias -g '${1+"$@"}'='"$@"' setopt NO_GLOB_SUBST else case `(set -o) 2>/dev/null` in #( *posix*) : set -o posix ;; #( *) : ;; esac fi as_nl=' ' export as_nl # Printing a long string crashes Solaris 7 /usr/bin/printf. as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo # Prefer a ksh shell builtin over an external printf program on Solaris, # but without wasting forks for bash or zsh. if test -z "$BASH_VERSION$ZSH_VERSION" \ && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then as_echo='print -r --' as_echo_n='print -rn --' elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then as_echo='printf %s\n' as_echo_n='printf %s' else if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' as_echo_n='/usr/ucb/echo -n' else as_echo_body='eval expr "X$1" : "X\\(.*\\)"' as_echo_n_body='eval arg=$1; case $arg in #( *"$as_nl"*) expr "X$arg" : "X\\(.*\\)$as_nl"; arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; esac; expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" ' export as_echo_n_body as_echo_n='sh -c $as_echo_n_body as_echo' fi export as_echo_body as_echo='sh -c $as_echo_body as_echo' fi # The user is always right. if test "${PATH_SEPARATOR+set}" != set; then PATH_SEPARATOR=: (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || PATH_SEPARATOR=';' } fi # IFS # We need space, tab and new line, in precisely that order. Quoting is # there to prevent editors from complaining about space-tab. # (If _AS_PATH_WALK were called with IFS unset, it would disable word # splitting by setting IFS to empty value.) IFS=" "" $as_nl" # Find who we are. Look in the path if we contain no directory separator. as_myself= case $0 in #(( *[\\/]* ) as_myself=$0 ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break done IFS=$as_save_IFS ;; esac # We did not find ourselves, most probably we were run as `sh COMMAND' # in which case we are not to be found in the path. if test "x$as_myself" = x; then as_myself=$0 fi if test ! -f "$as_myself"; then $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 exit 1 fi # Unset variables that we do not need and which cause bugs (e.g. in # pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" # suppresses any "Segmentation fault" message there. '((' could # trigger a bug in pdksh 5.2.14. for as_var in BASH_ENV ENV MAIL MAILPATH do eval test x\${$as_var+set} = xset \ && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : done PS1='$ ' PS2='> ' PS4='+ ' # NLS nuisances. LC_ALL=C export LC_ALL LANGUAGE=C export LANGUAGE # CDPATH. (unset CDPATH) >/dev/null 2>&1 && unset CDPATH # as_fn_error STATUS ERROR [LINENO LOG_FD] # ---------------------------------------- # Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are # provided, also output the error to LOG_FD, referencing LINENO. Then exit the # script with STATUS, using 1 if that was 0. as_fn_error () { as_status=$1; test $as_status -eq 0 && as_status=1 if test "$4"; then as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 fi $as_echo "$as_me: error: $2" >&2 as_fn_exit $as_status } # as_fn_error # as_fn_set_status STATUS # ----------------------- # Set $? to STATUS, without forking. as_fn_set_status () { return $1 } # as_fn_set_status # as_fn_exit STATUS # ----------------- # Exit the shell with STATUS, even in a "trap 0" or "set -e" context. as_fn_exit () { set +e as_fn_set_status $1 exit $1 } # as_fn_exit # as_fn_unset VAR # --------------- # Portably unset VAR. as_fn_unset () { { eval $1=; unset $1;} } as_unset=as_fn_unset # as_fn_append VAR VALUE # ---------------------- # Append the text in VALUE to the end of the definition contained in VAR. Take # advantage of any shell optimizations that allow amortized linear growth over # repeated appends, instead of the typical quadratic growth present in naive # implementations. if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : eval 'as_fn_append () { eval $1+=\$2 }' else as_fn_append () { eval $1=\$$1\$2 } fi # as_fn_append # as_fn_arith ARG... # ------------------ # Perform arithmetic evaluation on the ARGs, and store the result in the # global $as_val. Take advantage of shells that can avoid forks. The arguments # must be portable across $(()) and expr. if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : eval 'as_fn_arith () { as_val=$(( $* )) }' else as_fn_arith () { as_val=`expr "$@" || test $? -eq 1` } fi # as_fn_arith if expr a : '\(a\)' >/dev/null 2>&1 && test "X`expr 00001 : '.*\(...\)'`" = X001; then as_expr=expr else as_expr=false fi if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then as_basename=basename else as_basename=false fi if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then as_dirname=dirname else as_dirname=false fi as_me=`$as_basename -- "$0" || $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ X"$0" : 'X\(//\)$' \| \ X"$0" : 'X\(/\)' \| . 2>/dev/null || $as_echo X/"$0" | sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/ q } /^X\/\(\/\/\)$/{ s//\1/ q } /^X\/\(\/\).*/{ s//\1/ q } s/.*/./; q'` # Avoid depending upon Character Ranges. as_cr_letters='abcdefghijklmnopqrstuvwxyz' as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' as_cr_Letters=$as_cr_letters$as_cr_LETTERS as_cr_digits='0123456789' as_cr_alnum=$as_cr_Letters$as_cr_digits ECHO_C= ECHO_N= ECHO_T= case `echo -n x` in #((((( -n*) case `echo 'xy\c'` in *c*) ECHO_T=' ';; # ECHO_T is single tab character. xy) ECHO_C='\c';; *) echo `echo ksh88 bug on AIX 6.1` > /dev/null ECHO_T=' ';; esac;; *) ECHO_N='-n';; esac rm -f conf$$ conf$$.exe conf$$.file if test -d conf$$.dir; then rm -f conf$$.dir/conf$$.file else rm -f conf$$.dir mkdir conf$$.dir 2>/dev/null fi if (echo >conf$$.file) 2>/dev/null; then if ln -s conf$$.file conf$$ 2>/dev/null; then as_ln_s='ln -s' # ... but there are two gotchas: # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. # In both cases, we have to default to `cp -pR'. ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || as_ln_s='cp -pR' elif ln conf$$.file conf$$ 2>/dev/null; then as_ln_s=ln else as_ln_s='cp -pR' fi else as_ln_s='cp -pR' fi rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file rmdir conf$$.dir 2>/dev/null # as_fn_mkdir_p # ------------- # Create "$as_dir" as a directory, including parents if necessary. as_fn_mkdir_p () { case $as_dir in #( -*) as_dir=./$as_dir;; esac test -d "$as_dir" || eval $as_mkdir_p || { as_dirs= while :; do case $as_dir in #( *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( *) as_qdir=$as_dir;; esac as_dirs="'$as_qdir' $as_dirs" as_dir=`$as_dirname -- "$as_dir" || $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$as_dir" : 'X\(//\)[^/]' \| \ X"$as_dir" : 'X\(//\)$' \| \ X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || $as_echo X"$as_dir" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` test -d "$as_dir" && break done test -z "$as_dirs" || eval "mkdir $as_dirs" } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" } # as_fn_mkdir_p if mkdir -p . 2>/dev/null; then as_mkdir_p='mkdir -p "$as_dir"' else test -d ./-p && rmdir ./-p as_mkdir_p=false fi # as_fn_executable_p FILE # ----------------------- # Test if FILE is an executable regular file. as_fn_executable_p () { test -f "$1" && test -x "$1" } # as_fn_executable_p as_test_x='test -x' as_executable_p=as_fn_executable_p # Sed expression to map a string onto a valid CPP name. as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" # Sed expression to map a string onto a valid variable name. as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" exec 6>&1 ## ----------------------------------- ## ## Main body of $CONFIG_STATUS script. ## ## ----------------------------------- ## _ASEOF test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1 cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # Save the log message, to keep $0 and so on meaningful, and to # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" This file was extended by bibledit-gtk $as_me 4.9, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES CONFIG_HEADERS = $CONFIG_HEADERS CONFIG_LINKS = $CONFIG_LINKS CONFIG_COMMANDS = $CONFIG_COMMANDS $ $0 $@ on `(hostname || uname -n) 2>/dev/null | sed 1q` " _ACEOF case $ac_config_files in *" "*) set x $ac_config_files; shift; ac_config_files=$*;; esac case $ac_config_headers in *" "*) set x $ac_config_headers; shift; ac_config_headers=$*;; esac cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 # Files that config.status was made for. config_files="$ac_config_files" config_headers="$ac_config_headers" config_commands="$ac_config_commands" _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 ac_cs_usage="\ \`$as_me' instantiates files and other configuration actions from templates according to the current configuration. Unless the files and actions are specified as TAGs, all are instantiated by default. Usage: $0 [OPTION]... [TAG]... -h, --help print this help, then exit -V, --version print version number and configuration settings, then exit --config print configuration, then exit -q, --quiet, --silent do not print progress messages -d, --debug don't remove temporary files --recheck update $as_me by reconfiguring in the same conditions --file=FILE[:TEMPLATE] instantiate the configuration file FILE --header=FILE[:TEMPLATE] instantiate the configuration header FILE Configuration files: $config_files Configuration headers: $config_headers Configuration commands: $config_commands Report bugs to ." _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ bibledit-gtk config.status 4.9 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" Copyright (C) 2012 Free Software Foundation, Inc. This config.status script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it." ac_pwd='$ac_pwd' srcdir='$srcdir' INSTALL='$INSTALL' MKDIR_P='$MKDIR_P' AWK='$AWK' test -n "\$AWK" || AWK=awk _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # The default lists apply if the user does not specify any file. ac_need_defaults=: while test $# != 0 do case $1 in --*=?*) ac_option=`expr "X$1" : 'X\([^=]*\)='` ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` ac_shift=: ;; --*=) ac_option=`expr "X$1" : 'X\([^=]*\)='` ac_optarg= ac_shift=: ;; *) ac_option=$1 ac_optarg=$2 ac_shift=shift ;; esac case $ac_option in # Handling of the options. -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) ac_cs_recheck=: ;; --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) $as_echo "$ac_cs_version"; exit ;; --config | --confi | --conf | --con | --co | --c ) $as_echo "$ac_cs_config"; exit ;; --debug | --debu | --deb | --de | --d | -d ) debug=: ;; --file | --fil | --fi | --f ) $ac_shift case $ac_optarg in *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; '') as_fn_error $? "missing file argument" ;; esac as_fn_append CONFIG_FILES " '$ac_optarg'" ac_need_defaults=false;; --header | --heade | --head | --hea ) $ac_shift case $ac_optarg in *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; esac as_fn_append CONFIG_HEADERS " '$ac_optarg'" ac_need_defaults=false;; --he | --h) # Conflict between --help and --header as_fn_error $? "ambiguous option: \`$1' Try \`$0 --help' for more information.";; --help | --hel | -h ) $as_echo "$ac_cs_usage"; exit ;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil | --si | --s) ac_cs_silent=: ;; # This is an error. -*) as_fn_error $? "unrecognized option: \`$1' Try \`$0 --help' for more information." ;; *) as_fn_append ac_config_targets " $1" ac_need_defaults=false ;; esac shift done ac_configure_extra_args= if $ac_cs_silent; then exec 6>/dev/null ac_configure_extra_args="$ac_configure_extra_args --silent" fi _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 if \$ac_cs_recheck; then set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion shift \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6 CONFIG_SHELL='$SHELL' export CONFIG_SHELL exec "\$@" fi _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 exec 5>>config.log { echo sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX ## Running $as_me. ## _ASBOX $as_echo "$ac_log" } >&5 _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 # # INIT-COMMANDS # AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir" _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # Handling of arguments. for ac_config_target in $ac_config_targets do case $ac_config_target in "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; "man/Makefile") CONFIG_FILES="$CONFIG_FILES man/Makefile" ;; "pix/Makefile") CONFIG_FILES="$CONFIG_FILES pix/Makefile" ;; "doc/Makefile") CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;; "src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;; "scripts/Makefile") CONFIG_FILES="$CONFIG_FILES scripts/Makefile" ;; "templates/Makefile") CONFIG_FILES="$CONFIG_FILES templates/Makefile" ;; "olpc/Makefile") CONFIG_FILES="$CONFIG_FILES olpc/Makefile" ;; "desktop/Makefile") CONFIG_FILES="$CONFIG_FILES desktop/Makefile" ;; "windows/Makefile") CONFIG_FILES="$CONFIG_FILES windows/Makefile" ;; "tests/Makefile") CONFIG_FILES="$CONFIG_FILES tests/Makefile" ;; "shutdown/Makefile") CONFIG_FILES="$CONFIG_FILES shutdown/Makefile" ;; "usfm/Makefile") CONFIG_FILES="$CONFIG_FILES usfm/Makefile" ;; "kjv/Makefile") CONFIG_FILES="$CONFIG_FILES kjv/Makefile" ;; "xetex/Makefile") CONFIG_FILES="$CONFIG_FILES xetex/Makefile" ;; "git/Makefile") CONFIG_FILES="$CONFIG_FILES git/Makefile" ;; "php/Makefile") CONFIG_FILES="$CONFIG_FILES php/Makefile" ;; *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;; esac done # If the user did not use the arguments to specify the items to instantiate, # then the envvar interface is used. Set only those that are not. # We use the long form for the default assignment because of an extremely # bizarre bug on SunOS 4.1.3. if $ac_need_defaults; then test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands fi # Have a temporary directory for convenience. Make it in the build tree # simply because there is no reason against having it here, and in addition, # creating and moving files from /tmp can sometimes cause problems. # Hook for its removal unless debugging. # Note that there is a small window in which the directory will not be cleaned: # after its creation but before its name has been assigned to `$tmp'. $debug || { tmp= ac_tmp= trap 'exit_status=$? : "${ac_tmp:=$tmp}" { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status ' 0 trap 'as_fn_exit 1' 1 2 13 15 } # Create a (secure) tmp directory for tmp files. { tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && test -d "$tmp" } || { tmp=./conf$$-$RANDOM (umask 077 && mkdir "$tmp") } || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5 ac_tmp=$tmp # Set up the scripts for CONFIG_FILES section. # No need to generate them if there are no CONFIG_FILES. # This happens for instance with `./config.status config.h'. if test -n "$CONFIG_FILES"; then ac_cr=`echo X | tr X '\015'` # On cygwin, bash can eat \r inside `` if the user requested igncr. # But we know of no other shell where ac_cr would be empty at this # point, so we can use a bashism as a fallback. if test "x$ac_cr" = x; then eval ac_cr=\$\'\\r\' fi ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' /dev/null` if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then ac_cs_awk_cr='\\r' else ac_cs_awk_cr=$ac_cr fi echo 'BEGIN {' >"$ac_tmp/subs1.awk" && _ACEOF { echo "cat >conf$$subs.awk <<_ACEOF" && echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' && echo "_ACEOF" } >conf$$subs.sh || as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'` ac_delim='%!_!# ' for ac_last_try in false false false false false :; do . ./conf$$subs.sh || as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X` if test $ac_delim_n = $ac_delim_num; then break elif $ac_last_try; then as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 else ac_delim="$ac_delim!$ac_delim _$ac_delim!! " fi done rm -f conf$$subs.sh cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK && _ACEOF sed -n ' h s/^/S["/; s/!.*/"]=/ p g s/^[^!]*!// :repl t repl s/'"$ac_delim"'$// t delim :nl h s/\(.\{148\}\)..*/\1/ t more1 s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/ p n b repl :more1 s/["\\]/\\&/g; s/^/"/; s/$/"\\/ p g s/.\{148\}// t nl :delim h s/\(.\{148\}\)..*/\1/ t more2 s/["\\]/\\&/g; s/^/"/; s/$/"/ p b :more2 s/["\\]/\\&/g; s/^/"/; s/$/"\\/ p g s/.\{148\}// t delim ' >$CONFIG_STATUS || ac_write_fail=1 rm -f conf$$subs.awk cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 _ACAWK cat >>"\$ac_tmp/subs1.awk" <<_ACAWK && for (key in S) S_is_set[key] = 1 FS = "" } { line = $ 0 nfields = split(line, field, "@") substed = 0 len = length(field[1]) for (i = 2; i < nfields; i++) { key = field[i] keylen = length(key) if (S_is_set[key]) { value = S[key] line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3) len += length(value) + length(field[++i]) substed = 1 } else len += 1 + keylen } print line } _ACAWK _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g" else cat fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \ || as_fn_error $? "could not setup config files machinery" "$LINENO" 5 _ACEOF # VPATH may cause trouble with some makes, so we remove sole $(srcdir), # ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and # trailing colons and then remove the whole line if VPATH becomes empty # (actually we leave an empty line to preserve line numbers). if test "x$srcdir" = x.; then ac_vpsub='/^[ ]*VPATH[ ]*=[ ]*/{ h s/// s/^/:/ s/[ ]*$/:/ s/:\$(srcdir):/:/g s/:\${srcdir}:/:/g s/:@srcdir@:/:/g s/^:*// s/:*$// x s/\(=[ ]*\).*/\1/ G s/\n// s/^[^=]*=[ ]*$// }' fi cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 fi # test -n "$CONFIG_FILES" # Set up the scripts for CONFIG_HEADERS section. # No need to generate them if there are no CONFIG_HEADERS. # This happens for instance with `./config.status Makefile'. if test -n "$CONFIG_HEADERS"; then cat >"$ac_tmp/defines.awk" <<\_ACAWK || BEGIN { _ACEOF # Transform confdefs.h into an awk script `defines.awk', embedded as # here-document in config.status, that substitutes the proper values into # config.h.in to produce config.h. # Create a delimiter string that does not exist in confdefs.h, to ease # handling of long lines. ac_delim='%!_!# ' for ac_last_try in false false :; do ac_tt=`sed -n "/$ac_delim/p" confdefs.h` if test -z "$ac_tt"; then break elif $ac_last_try; then as_fn_error $? "could not make $CONFIG_HEADERS" "$LINENO" 5 else ac_delim="$ac_delim!$ac_delim _$ac_delim!! " fi done # For the awk script, D is an array of macro values keyed by name, # likewise P contains macro parameters if any. Preserve backslash # newline sequences. ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]* sed -n ' s/.\{148\}/&'"$ac_delim"'/g t rset :rset s/^[ ]*#[ ]*define[ ][ ]*/ / t def d :def s/\\$// t bsnl s/["\\]/\\&/g s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\ D["\1"]=" \3"/p s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2"/p d :bsnl s/["\\]/\\&/g s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\ D["\1"]=" \3\\\\\\n"\\/p t cont s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2\\\\\\n"\\/p t cont d :cont n s/.\{148\}/&'"$ac_delim"'/g t clear :clear s/\\$// t bsnlc s/["\\]/\\&/g; s/^/"/; s/$/"/p d :bsnlc s/["\\]/\\&/g; s/^/"/; s/$/\\\\\\n"\\/p b cont ' >$CONFIG_STATUS || ac_write_fail=1 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 for (key in D) D_is_set[key] = 1 FS = "" } /^[\t ]*#[\t ]*(define|undef)[\t ]+$ac_word_re([\t (]|\$)/ { line = \$ 0 split(line, arg, " ") if (arg[1] == "#") { defundef = arg[2] mac1 = arg[3] } else { defundef = substr(arg[1], 2) mac1 = arg[2] } split(mac1, mac2, "(") #) macro = mac2[1] prefix = substr(line, 1, index(line, defundef) - 1) if (D_is_set[macro]) { # Preserve the white space surrounding the "#". print prefix "define", macro P[macro] D[macro] next } else { # Replace #undef with comments. This is necessary, for example, # in the case of _POSIX_SOURCE, which is predefined and required # on some systems where configure will not decide to define it. if (defundef == "undef") { print "/*", prefix defundef, macro, "*/" next } } } { print } _ACAWK _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 as_fn_error $? "could not setup config headers machinery" "$LINENO" 5 fi # test -n "$CONFIG_HEADERS" eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS" shift for ac_tag do case $ac_tag in :[FHLC]) ac_mode=$ac_tag; continue;; esac case $ac_mode$ac_tag in :[FHL]*:*);; :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;; :[FH]-) ac_tag=-:-;; :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; esac ac_save_IFS=$IFS IFS=: set x $ac_tag IFS=$ac_save_IFS shift ac_file=$1 shift case $ac_mode in :L) ac_source=$1;; :[FH]) ac_file_inputs= for ac_f do case $ac_f in -) ac_f="$ac_tmp/stdin";; *) # Look for the file first in the build tree, then in the source tree # (if the path is not absolute). The absolute path cannot be DOS-style, # because $ac_f cannot contain `:'. test -f "$ac_f" || case $ac_f in [\\/$]*) false;; *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; esac || as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;; esac case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac as_fn_append ac_file_inputs " '$ac_f'" done # Let's still pretend it is `configure' which instantiates (i.e., don't # use $as_me), people would be surprised to read: # /* config.h. Generated by config.status. */ configure_input='Generated from '` $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g' `' by configure.' if test x"$ac_file" != x-; then configure_input="$ac_file. $configure_input" { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5 $as_echo "$as_me: creating $ac_file" >&6;} fi # Neutralize special characters interpreted by sed in replacement strings. case $configure_input in #( *\&* | *\|* | *\\* ) ac_sed_conf_input=`$as_echo "$configure_input" | sed 's/[\\\\&|]/\\\\&/g'`;; #( *) ac_sed_conf_input=$configure_input;; esac case $ac_tag in *:-:* | *:-) cat >"$ac_tmp/stdin" \ || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; esac ;; esac ac_dir=`$as_dirname -- "$ac_file" || $as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$ac_file" : 'X\(//\)[^/]' \| \ X"$ac_file" : 'X\(//\)$' \| \ X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || $as_echo X"$ac_file" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` as_dir="$ac_dir"; as_fn_mkdir_p ac_builddir=. case "$ac_dir" in .) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; *) ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` # A ".." for each directory in $ac_dir_suffix. ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` case $ac_top_builddir_sub in "") ac_top_builddir_sub=. ac_top_build_prefix= ;; *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; esac ;; esac ac_abs_top_builddir=$ac_pwd ac_abs_builddir=$ac_pwd$ac_dir_suffix # for backward compatibility: ac_top_builddir=$ac_top_build_prefix case $srcdir in .) # We are building in place. ac_srcdir=. ac_top_srcdir=$ac_top_builddir_sub ac_abs_top_srcdir=$ac_pwd ;; [\\/]* | ?:[\\/]* ) # Absolute name. ac_srcdir=$srcdir$ac_dir_suffix; ac_top_srcdir=$srcdir ac_abs_top_srcdir=$srcdir ;; *) # Relative name. ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix ac_top_srcdir=$ac_top_build_prefix$srcdir ac_abs_top_srcdir=$ac_pwd/$srcdir ;; esac ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix case $ac_mode in :F) # # CONFIG_FILE # case $INSTALL in [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; esac ac_MKDIR_P=$MKDIR_P case $MKDIR_P in [\\/$]* | ?:[\\/]* ) ;; */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;; esac _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # If the template does not know about datarootdir, expand it. # FIXME: This hack should be removed a few years after 2.60. ac_datarootdir_hack=; ac_datarootdir_seen= ac_sed_dataroot=' /datarootdir/ { p q } /@datadir@/p /@docdir@/p /@infodir@/p /@localedir@/p /@mandir@/p' case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in *datarootdir*) ac_datarootdir_seen=yes;; *@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 $as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_datarootdir_hack=' s&@datadir@&$datadir&g s&@docdir@&$docdir&g s&@infodir@&$infodir&g s&@localedir@&$localedir&g s&@mandir@&$mandir&g s&\\\${datarootdir}&$datarootdir&g' ;; esac _ACEOF # Neutralize VPATH when `$srcdir' = `.'. # Shell code in configure.ac might set extrasub. # FIXME: do we really want to maintain this feature? cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_sed_extra="$ac_vpsub $extrasub _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 :t /@[a-zA-Z_][a-zA-Z_0-9]*@/!b s|@configure_input@|$ac_sed_conf_input|;t t s&@top_builddir@&$ac_top_builddir_sub&;t t s&@top_build_prefix@&$ac_top_build_prefix&;t t s&@srcdir@&$ac_srcdir&;t t s&@abs_srcdir@&$ac_abs_srcdir&;t t s&@top_srcdir@&$ac_top_srcdir&;t t s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t s&@builddir@&$ac_builddir&;t t s&@abs_builddir@&$ac_abs_builddir&;t t s&@abs_top_builddir@&$ac_abs_top_builddir&;t t s&@INSTALL@&$ac_INSTALL&;t t s&@MKDIR_P@&$ac_MKDIR_P&;t t $ac_datarootdir_hack " eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \ >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5 test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } && { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \ "$ac_tmp/out"`; test -z "$ac_out"; } && { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' which seems to be undefined. Please make sure it is defined" >&5 $as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' which seems to be undefined. Please make sure it is defined" >&2;} rm -f "$ac_tmp/stdin" case $ac_file in -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";; *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";; esac \ || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; :H) # # CONFIG_HEADER # if test x"$ac_file" != x-; then { $as_echo "/* $configure_input */" \ && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" } >"$ac_tmp/config.h" \ || as_fn_error $? "could not create $ac_file" "$LINENO" 5 if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5 $as_echo "$as_me: $ac_file is unchanged" >&6;} else rm -f "$ac_file" mv "$ac_tmp/config.h" "$ac_file" \ || as_fn_error $? "could not create $ac_file" "$LINENO" 5 fi else $as_echo "/* $configure_input */" \ && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \ || as_fn_error $? "could not create -" "$LINENO" 5 fi # Compute "$ac_file"'s index in $config_headers. _am_arg="$ac_file" _am_stamp_count=1 for _am_header in $config_headers :; do case $_am_header in $_am_arg | $_am_arg:* ) break ;; * ) _am_stamp_count=`expr $_am_stamp_count + 1` ;; esac done echo "timestamp for $_am_arg" >`$as_dirname -- "$_am_arg" || $as_expr X"$_am_arg" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$_am_arg" : 'X\(//\)[^/]' \| \ X"$_am_arg" : 'X\(//\)$' \| \ X"$_am_arg" : 'X\(/\)' \| . 2>/dev/null || $as_echo X"$_am_arg" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'`/stamp-h$_am_stamp_count ;; :C) { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5 $as_echo "$as_me: executing $ac_file commands" >&6;} ;; esac case $ac_file$ac_mode in "depfiles":C) test x"$AMDEP_TRUE" != x"" || { # Older Autoconf quotes --file arguments for eval, but not when files # are listed without --file. Let's play safe and only enable the eval # if we detect the quoting. case $CONFIG_FILES in *\'*) eval set x "$CONFIG_FILES" ;; *) set x $CONFIG_FILES ;; esac shift for mf do # Strip MF so we end up with the name of the file. mf=`echo "$mf" | sed -e 's/:.*$//'` # Check whether this is an Automake generated Makefile or not. # We used to match only the files named 'Makefile.in', but # some people rename them; so instead we look at the file content. # Grep'ing the first line is not enough: some people post-process # each Makefile.in and add a new line on top of each file to say so. # Grep'ing the whole file is not good either: AIX grep has a line # limit of 2048, but all sed's we know have understand at least 4000. if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then dirpart=`$as_dirname -- "$mf" || $as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$mf" : 'X\(//\)[^/]' \| \ X"$mf" : 'X\(//\)$' \| \ X"$mf" : 'X\(/\)' \| . 2>/dev/null || $as_echo X"$mf" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` else continue fi # Extract the definition of DEPDIR, am__include, and am__quote # from the Makefile without running 'make'. DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` test -z "$DEPDIR" && continue am__include=`sed -n 's/^am__include = //p' < "$mf"` test -z "$am__include" && continue am__quote=`sed -n 's/^am__quote = //p' < "$mf"` # Find all dependency output files, they are included files with # $(DEPDIR) in their names. We invoke sed twice because it is the # simplest approach to changing $(DEPDIR) to its actual value in the # expansion. for file in `sed -n " s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do # Make sure the directory exists. test -f "$dirpart/$file" && continue fdir=`$as_dirname -- "$file" || $as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$file" : 'X\(//\)[^/]' \| \ X"$file" : 'X\(//\)$' \| \ X"$file" : 'X\(/\)' \| . 2>/dev/null || $as_echo X"$file" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` as_dir=$dirpart/$fdir; as_fn_mkdir_p # echo "creating $dirpart/$file" echo '# dummy' > "$dirpart/$file" done done } ;; esac done # for ac_tag as_fn_exit 0 _ACEOF ac_clean_files=$ac_clean_files_save test $ac_write_fail = 0 || as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5 # configure is writing to config.log, and then calls config.status. # config.status does its own redirection, appending to config.log. # Unfortunately, on DOS this fails, as config.log is still kept open # by configure, so config.status won't be able to write to it; its # output is simply discarded. So we exec the FD to /dev/null, # effectively closing config.log, so it can be properly (re)opened and # appended to by config.status. When coming back to configure, we # need to make the FD available again. if test "$no_create" != yes; then ac_cs_success=: ac_config_status_args= test "$silent" = yes && ac_config_status_args="$ac_config_status_args --quiet" exec 5>/dev/null $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false exec 5>>config.log # Use ||, not &&, to avoid exiting from the if with $? = 1, which # would make configure fail if this is the last instruction. $ac_cs_success || as_fn_exit 1 fi if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5 $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;} fi echo " Bibledit-Gtk $VERSION configuration summary: Host operating system : ${host_os} Version : ${PACKAGE_VERSION} Installation prefix : ${prefix} " bibledit-gtk-4.9/._configure.ac000644 000766 000024 00000000253 12517415574 016571 0ustar00teusstaff000000 000000 Mac OS X  2yATTRcom.apple.TextEncodingutf-8;134217984bibledit-gtk-4.9/configure.ac000644 000766 000024 00000017247 12517415574 016367 0ustar00teusstaff000000 000000 # -*- Autoconf -*- # Process this file with autoconf to produce a configure script. AC_PREREQ(2.63) AC_INIT([bibledit-gtk],[4.9],[http://www.nongnu.org/bibledit]) AC_CANONICAL_TARGET AC_CANONICAL_SYSTEM ac_default_prefix=/usr AC_CONFIG_SRCDIR([src]) AM_INIT_AUTOMAKE([1.9 tar-ustar]) AC_CONFIG_HEADERS([config.h]) CXXFLAGS="-g -O2 ${CXXFLAGS}" AC_PROG_CC AC_PROG_CC_STDC AC_PROG_CPP AC_LANG([C++]) AC_PROG_CXX AX_CXX_COMPILE_STDCXX_11([noext],[mandatory]) AC_PROG_CC AC_HEADER_STDC PKG_CHECK_MODULES(GTK, gtk+-2.0 gdk-2.0,,AC_MSG_ERROR(Gtk2 development version is needed.)) AC_SUBST(GTK_LIBS) AC_SUBST(GTK_CFLAGS) PKG_PROG_PKG_CONFIG AC_PATH_PROG(PKG_CONFIG_PATH, pkg-config, no) if test x$PKG_CONFIG_PATH = xno; then AC_MSG_ERROR(Program "pkg-config" is needed. Install this first.) fi AC_PATH_PROG(GREP_PATH, grep, no) if test x$GREP_PATH = xno; then AC_MSG_ERROR(Program "grep" is needed. Install this first.) fi AC_PATH_PROG(TEE_TOUCH, touch, no) if test x$TOUCH_PATH = xno; then AC_MSG_ERROR(Program "touch" is needed. Install this first.) fi AC_PATH_PROG(DATE_PATH, date, no) if test x$DATE_PATH = xno; then AC_MSG_ERROR(Program "date" is needed. Install this first.) fi AC_PATH_PROG(TAIL_PATH, tail, no) if test x$TAIL_PATH = xno; then AC_MSG_ERROR(Program "tail" is needed. Install this first.) fi AC_PATH_PROG(GZIP_PATH, gzip, no) if test x$GZIP_PATH = xno; then AC_MSG_ERROR(Program "gzip" is needed. Install this first.) fi AC_PATH_PROG(GUNZIP_PATH, gunzip, no) if test x$GUNZIP_PATH = xno; then AC_MSG_ERROR(Program "gunzip" is needed. Install this first.) fi AC_PATH_PROG(ICONV_PATH, iconv, no) if test x$ICONV_PATH = xno; then AC_MSG_ERROR(Program "iconv" is needed. Install this first.) fi AC_PATH_PROG(STRINGS_PATH, strings, no) if test x$STRINGS_PATH = xno; then AC_MSG_ERROR(Program "strings" is needed. Install this first.) fi AC_PATH_PROG(CAT_PATH, cat, no) if test x$CAT_PATH = xno; then AC_MSG_ERROR(Program "cat" is needed. Install this first.) fi AC_PATH_PROG(SORT_PATH, sort, no) if test x$SORT_PATH = xno; then AC_MSG_ERROR(Program "sort" is needed. Install this first.) fi AC_PATH_PROG(HEAD_PATH, head, no) if test x$HEAD_PATH = xno; then AC_MSG_ERROR(Program "head" is needed. Install this first.) fi AC_PATH_PROG(MAKE_PATH, make, no) if test x$MAKE_PATH = xno; then AC_MSG_ERROR(Program "make" is needed. Install this first.) fi AC_PATH_PROG(FIND_PATH, find, no) if test x$FIND_PATH = xno; then AC_MSG_ERROR(Program "find" is needed. Install this first.) fi AC_PATH_PROG(FIND_XARGS, xargs, no) if test x$FIND_XARGS = xno; then AC_MSG_ERROR(Program "xargs" is needed. Install this first.) fi AC_PATH_PROG(FIND_GPP, g++, no) if test x$FIND_GPP = xno; then AC_MSG_ERROR(Program "g++" is needed. Install this first.) fi AC_PATH_PROG(FIND_DIFF, diff, no) if test x$FIND_DIFF = xno; then AC_MSG_ERROR(Program "diff" is needed. Install this first.) fi AC_PATH_PROG(FIND_PATCH, patch, no) if test x$FIND_PATCH = xno; then AC_MSG_ERROR(Program "patch" is needed. Install this first.) fi AC_PATH_PROG(FIND_MERGE, merge, no) if test x$FIND_MERGE = xno; then AC_MSG_ERROR(Program "merge" (in package rcs) is needed. Install this first.) fi AC_PATH_PROG(FIND_TAR, tar, no) if test x$FIND_TAR = xno; then AC_MSG_ERROR(Program "tar" is needed. Install this first.) fi AC_PATH_PROG(FIND_CURL, curl, no) if test x$FIND_CURL = xno; then AC_MSG_ERROR(Program "curl" is needed. Install this first.) fi PKG_CHECK_MODULES(GLIB, glib-2.0 >= 2.16.0,,AC_MSG_ERROR(glib development version >= 2.16.0 is needed.)) AC_SUBST(GLIB_CFLAGS) AC_SUBST(GLIB_LIBS) PKG_CHECK_MODULES(GTK, gtk+-2.0 >= 2.12.0,,AC_MSG_ERROR(gtk+ development version >= 2.12.0 is needed.)) AC_SUBST(GTK_CFLAGS) AC_SUBST(GTK_LIBS) PKG_CHECK_MODULES(GTHREAD, gthread-2.0 >= 2.16.0,,AC_MSG_ERROR(gthread development version >= 2.16.0 is needed.)) AC_SUBST(GTHREAD_CFLAGS) AC_SUBST(GTHREAD_LIBS) PKG_CHECK_MODULES(GOBJECT, gobject-2.0 >= 2.16.0,,AC_MSG_ERROR(gobject development version >= 2.16.0 is needed.)) AC_SUBST(GOBJECT_CFLAGS) AC_SUBST(GOBJECT_LIBS) PKG_CHECK_MODULES(SQLITE, sqlite3 >= 3.0.0,,AC_MSG_ERROR(sqlite development version >= 3.0.0 is needed.)) AC_SUBST(SQLITE_CFLAGS) AC_SUBST(SQLITE_LIBS) AM_PATH_XML2(2.5.0, , AC_MSG_ERROR(Library libxml2-dev is needed. Install this first.)) PKG_CHECK_MODULES(ENCHANT, enchant >= 1.2.0) AC_SUBST(ENCHANT_CFLAGS) AC_SUBST(ENCHANT_LIBS) PKG_CHECK_MODULES(PANGO, [pango >= 1.3.5], [AC_DEFINE(HAVE_PANGO_UNDERLINE_ERROR, 1, [Define to 1 if PANGO_UNDERLINE_ERROR is available.])], [AC_MSG_WARN([Disabling new error underlining since pango < 1.3.5])]) PKG_CHECK_MODULES(PANGO, [pango >= 1.8.0], [AC_DEFINE(FIXED_PANGO, 1, [Define to 1 if pango >= 1.8.0.])], [AC_MSG_WARN([Enabling word-breaking workarounds since pango < 1.8.0])]) PKG_CHECK_MODULES(GTKSOURCEVIEW, gtksourceview-2.0 >= 2.2.0) AC_SUBST(GTKSOURCEVIEW_CFLAGS) AC_SUBST(GTKSOURCEVIEW_LIBS) PKG_CHECK_MODULES(WEBKIT, webkit-1.0 >= 1.0.0,,AC_MSG_ERROR(libwebkit development version >= 1.0.0 is needed.)) AC_SUBST(WEBKIT_CFLAGS) AC_SUBST(WEBKIT_LIBS) PKG_CHECK_MODULES(LIBSOUP, libsoup-2.4 >= 2.4,,AC_MSG_ERROR(libsoup-2.4 development version >= 2.4 is needed.)) AC_SUBST(LIBSOUP_CFLAGS) AC_SUBST(LIBSOUP_LIBS) AC_CHECK_HEADER(sqlite3.h, , AC_MSG_ERROR([Header file sqlite3.h was not found. Usually this is in libsqlite3-dev.])) # This code is kept to learn from. # AC_CHECK_HEADER(aspell.h, [AC_DEFINE(HAVE_ASPELL_H,1, # [Define to 1 if you have the header file.] )] ) # AC_CHECK_HEADER(pspell/pspell.h, [AC_DEFINE(HAVE_PSPELL_H,1, # [Define to 1 if you have the header file.] )] ) # AC_SUBST(SPELLER_LIB) if test "x${prefix}" = "xNONE"; then packageprefix=${ac_default_prefix} else packageprefix=${prefix} fi AC_MSG_CHECKING([whether to enable LINUX specific flags]) case "$host_os" in *linux*) linux=true AC_MSG_RESULT([yes]) AC_DEFINE_UNQUOTED(LINUX, "1",[LINUX]) ;; *) linux=false AC_MSG_RESULT([no]) ;; esac AM_CONDITIONAL(LINUX, test x$linux = xtrue) AC_MSG_CHECKING([whether to enable DARWIN specific flags]) case "$host_os" in *darwin*) darwin=true AC_MSG_RESULT([yes]) AC_DEFINE_UNQUOTED(DARWIN, "1",[DARWIN]) ;; *) darwin=false AC_MSG_RESULT([no]) ;; esac AM_CONDITIONAL(DARWIN, test x$darwin = xtrue) AC_MSG_CHECKING([whether to enable WIN32 specific flags]) case "$host_os" in *mingw*) win32=true AC_MSG_RESULT([yes]) AC_DEFINE_UNQUOTED(WIN32, "1",[WIN32]) ;; *) win32=false AC_MSG_RESULT([no]) ;; esac AM_CONDITIONAL(WIN32, test x$win32 = xtrue) packagedatadir=share/${PACKAGE} packagedocdir=doc/${PACKAGE} AC_SUBST(packagedatadir) packagepixmapsdir=${packagedatadir}/pixmaps packagehelpdir=${packagedatadir}/help packagemenudir=${packagedatadir} packagelocalstatedir=var/${PACKAGE} if test "x${datarootdir}" = 'x${prefix}/share'; then if test "x${prefix}" = "xNONE"; then AC_DEFINE_UNQUOTED(PACKAGE_DATA_DIR, "${ac_default_prefix}/share/${PACKAGE}",[PACKAGE_DATA_DIR]) else AC_DEFINE_UNQUOTED(PACKAGE_DATA_DIR, "${prefix}/share/${PACKAGE}",[PACKAGE_DATA_DIR]) fi else AC_DEFINE_UNQUOTED(PACKAGE_DATA_DIR, "${datarootdir}/${PACKAGE}",[PACKAGE_DATA_DIR]) fi AC_CONFIG_FILES([Makefile man/Makefile pix/Makefile doc/Makefile src/Makefile scripts/Makefile templates/Makefile olpc/Makefile desktop/Makefile windows/Makefile tests/Makefile shutdown/Makefile usfm/Makefile kjv/Makefile xetex/Makefile git/Makefile php/Makefile ]) AC_OUTPUT echo " Bibledit-Gtk $VERSION configuration summary: Host operating system : ${host_os} Version : ${PACKAGE_VERSION} Installation prefix : ${prefix} " bibledit-gtk-4.9/COPYING000664 000766 000024 00000104461 12221507124 015112 0ustar00teusstaff000000 000000 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 Copyright (©) 2003-2008 Teus Benschop. Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The GNU General Public License is a free, copyleft license for software and other kinds of works. The licenses for most software and other practical works are designed to take away your freedom to share and change the works. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change all versions of a program--to make sure it remains free software for all its users. We, the Free Software Foundation, use the GNU General Public License for most of our software; it applies also to any other work released this way by its authors. You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things. To protect your rights, we need to prevent others from denying you these rights or asking you to surrender the rights. Therefore, you have certain responsibilities if you distribute copies of the software, or if you modify it: responsibilities to respect the freedom of others. For example, if you distribute copies of such a program, whether gratis or for a fee, you must pass on to the recipients the same freedoms that you received. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. Developers that use the GNU GPL protect your rights with two steps: (1) assert copyright on the software, and (2) offer you this License giving you legal permission to copy, distribute and/or modify it. For the developers' and authors' protection, the GPL clearly explains that there is no warranty for this free software. For both users' and authors' sake, the GPL requires that modified versions be marked as changed, so that their problems will not be attributed erroneously to authors of previous versions. Some devices are designed to deny users access to install or run modified versions of the software inside them, although the manufacturer can do so. This is fundamentally incompatible with the aim of protecting users' freedom to change the software. The systematic pattern of such abuse occurs in the area of products for individuals to use, which is precisely where it is most unacceptable. Therefore, we have designed this version of the GPL to prohibit the practice for those products. If such problems arise substantially in other domains, we stand ready to extend this provision to those domains in future versions of the GPL, as needed to protect the freedom of users. Finally, every program is threatened constantly by software patents. States should not allow patents to restrict development and use of software on general-purpose computers, but in those that do, we wish to avoid the special danger that patents applied to a free program could make it effectively proprietary. To prevent this, the GPL assures that patents cannot be used to render the program non-free. The precise terms and conditions for copying, distribution and modification follow. TERMS AND CONDITIONS 0. Definitions. "This License" refers to version 3 of the GNU General Public License. "Copyright" also means copyright-like laws that apply to other kinds of works, such as semiconductor masks. "The Program" refers to any copyrightable work licensed under this License. Each licensee is addressed as "you". "Licensees" and "recipients" may be individuals or organizations. To "modify" a work means to copy from or adapt all or part of the work in a fashion requiring copyright permission, other than the making of an exact copy. The resulting work is called a "modified version" of the earlier work or a work "based on" the earlier work. A "covered work" means either the unmodified Program or a work based on the Program. To "propagate" a work means to do anything with it that, without permission, would make you directly or secondarily liable for infringement under applicable copyright law, except executing it on a computer or modifying a private copy. Propagation includes copying, distribution (with or without modification), making available to the public, and in some countries other activities as well. To "convey" a work means any kind of propagation that enables other parties to make or receive copies. Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying. An interactive user interface displays "Appropriate Legal Notices" to the extent that it includes a convenient and prominently visible feature that (1) displays an appropriate copyright notice, and (2) tells the user that there is no warranty for the work (except to the extent that warranties are provided), that licensees may convey the work under this License, and how to view a copy of this License. If the interface presents a list of user commands or options, such as a menu, a prominent item in the list meets this criterion. 1. Source Code. The "source code" for a work means the preferred form of the work for making modifications to it. "Object code" means any non-source form of a work. A "Standard Interface" means an interface that either is an official standard defined by a recognized standards body, or, in the case of interfaces specified for a particular programming language, one that is widely used among developers working in that language. The "System Libraries" of an executable work include anything, other than the work as a whole, that (a) is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and (b) serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to the public in source code form. A "Major Component", in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it. The "Corresponding Source" for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities. However, it does not include the work's System Libraries, or general-purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work. For example, Corresponding Source includes interface definition files associated with source files for the work, and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to require, such as by intimate data communication or control flow between those subprograms and other parts of the work. The Corresponding Source need not include anything that users can regenerate automatically from other parts of the Corresponding Source. The Corresponding Source for a work in source code form is that same work. 2. Basic Permissions. All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated conditions are met. This License explicitly affirms your unlimited permission to run the unmodified Program. The output from running a covered work is covered by this License only if the output, given its content, constitutes a covered work. This License acknowledges your rights of fair use or other equivalent, as provided by copyright law. You may make, run and propagate covered works that you do not convey, without conditions so long as your license otherwise remains in force. You may convey covered works to others for the sole purpose of having them make modifications exclusively for you, or provide you with facilities for running those works, provided that you comply with the terms of this License in conveying all material for which you do not control copyright. Those thus making or running the covered works for you must do so exclusively on your behalf, under your direction and control, on terms that prohibit them from making any copies of your copyrighted material outside their relationship with you. Conveying under any other circumstances is permitted solely under the conditions stated below. Sublicensing is not allowed; section 10 makes it unnecessary. 3. Protecting Users' Legal Rights From Anti-Circumvention Law. No covered work shall be deemed part of an effective technological measure under any applicable law fulfilling obligations under article 11 of the WIPO copyright treaty adopted on 20 December 1996, or similar laws prohibiting or restricting circumvention of such measures. When you convey a covered work, you waive any legal power to forbid circumvention of technological measures to the extent such circumvention is effected by exercising rights under this License with respect to the covered work, and you disclaim any intention to limit operation or modification of the work as a means of enforcing, against the work's users, your or third parties' legal rights to forbid circumvention of technological measures. 4. Conveying Verbatim Copies. You may convey verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice; keep intact all notices stating that this License and any non-permissive terms added in accord with section 7 apply to the code; keep intact all notices of the absence of any warranty; and give all recipients a copy of this License along with the Program. You may charge any price or no price for each copy that you convey, and you may offer support or warranty protection for a fee. 5. Conveying Modified Source Versions. You may convey a work based on the Program, or the modifications to produce it from the Program, in the form of source code under the terms of section 4, provided that you also meet all of these conditions: a) The work must carry prominent notices stating that you modified it, and giving a relevant date. b) The work must carry prominent notices stating that it is released under this License and any conditions added under section 7. This requirement modifies the requirement in section 4 to "keep intact all notices". c) You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy. This License will therefore apply, along with any applicable section 7 additional terms, to the whole of the work, and all its parts, regardless of how they are packaged. This License gives no permission to license the work in any other way, but it does not invalidate such permission if you have separately received it. d) If the work has interactive user interfaces, each must display Appropriate Legal Notices; however, if the Program has interactive interfaces that do not display Appropriate Legal Notices, your work need not make them do so. A compilation of a covered work with other separate and independent works, which are not by their nature extensions of the covered work, and which are not combined with it such as to form a larger program, in or on a volume of a storage or distribution medium, is called an "aggregate" if the compilation and its resulting copyright are not used to limit the access or legal rights of the compilation's users beyond what the individual works permit. Inclusion of a covered work in an aggregate does not cause this License to apply to the other parts of the aggregate. 6. Conveying Non-Source Forms. You may convey a covered work in object code form under the terms of sections 4 and 5, provided that you also convey the machine-readable Corresponding Source under the terms of this License, in one of these ways: a) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by the Corresponding Source fixed on a durable physical medium customarily used for software interchange. b) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by a written offer, valid for at least three years and valid for as long as you offer spare parts or customer support for that product model, to give anyone who possesses the object code either (1) a copy of the Corresponding Source for all the software in the product that is covered by this License, on a durable physical medium customarily used for software interchange, for a price no more than your reasonable cost of physically performing this conveying of source, or (2) access to copy the Corresponding Source from a network server at no charge. c) Convey individual copies of the object code with a copy of the written offer to provide the Corresponding Source. This alternative is allowed only occasionally and noncommercially, and only if you received the object code with such an offer, in accord with subsection 6b. d) Convey the object code by offering access from a designated place (gratis or for a charge), and offer equivalent access to the Corresponding Source in the same way through the same place at no further charge. You need not require recipients to copy the Corresponding Source along with the object code. If the place to copy the object code is a network server, the Corresponding Source may be on a different server (operated by you or a third party) that supports equivalent copying facilities, provided you maintain clear directions next to the object code saying where to find the Corresponding Source. Regardless of what server hosts the Corresponding Source, you remain obligated to ensure that it is available for as long as needed to satisfy these requirements. e) Convey the object code using peer-to-peer transmission, provided you inform other peers where the object code and Corresponding Source of the work are being offered to the general public at no charge under subsection 6d. A separable portion of the object code, whose source code is excluded from the Corresponding Source as a System Library, need not be included in conveying the object code work. A "User Product" is either (1) a "consumer product", which means any tangible personal property which is normally used for personal, family, or household purposes, or (2) anything designed or sold for incorporation into a dwelling. In determining whether a product is a consumer product, doubtful cases shall be resolved in favor of coverage. For a particular product received by a particular user, "normally used" refers to a typical or common use of that class of product, regardless of the status of the particular user or of the way in which the particular user actually uses, or expects or is expected to use, the product. A product is a consumer product regardless of whether the product has substantial commercial, industrial or non-consumer uses, unless such uses represent the only significant mode of use of the product. "Installation Information" for a User Product means any methods, procedures, authorization keys, or other information required to install and execute modified versions of a covered work in that User Product from a modified version of its Corresponding Source. The information must suffice to ensure that the continued functioning of the modified object code is in no case prevented or interfered with solely because modification has been made. If you convey an object code work under this section in, or with, or specifically for use in, a User Product, and the conveying occurs as part of a transaction in which the right of possession and use of the User Product is transferred to the recipient in perpetuity or for a fixed term (regardless of how the transaction is characterized), the Corresponding Source conveyed under this section must be accompanied by the Installation Information. But this requirement does not apply if neither you nor any third party retains the ability to install modified object code on the User Product (for example, the work has been installed in ROM). The requirement to provide Installation Information does not include a requirement to continue to provide support service, warranty, or updates for a work that has been modified or installed by the recipient, or for the User Product in which it has been modified or installed. Access to a network may be denied when the modification itself materially and adversely affects the operation of the network or violates the rules and protocols for communication across the network. Corresponding Source conveyed, and Installation Information provided, in accord with this section must be in a format that is publicly documented (and with an implementation available to the public in source code form), and must require no special password or key for unpacking, reading or copying. 7. Additional Terms. "Additional permissions" are terms that supplement the terms of this License by making exceptions from one or more of its conditions. Additional permissions that are applicable to the entire Program shall be treated as though they were included in this License, to the extent that they are valid under applicable law. If additional permissions apply only to part of the Program, that part may be used separately under those permissions, but the entire Program remains governed by this License without regard to the additional permissions. When you convey a copy of a covered work, you may at your option remove any additional permissions from that copy, or from any part of it. (Additional permissions may be written to require their own removal in certain cases when you modify the work.) You may place additional permissions on material, added by you to a covered work, for which you have or can give appropriate copyright permission. Notwithstanding any other provision of this License, for material you add to a covered work, you may (if authorized by the copyright holders of that material) supplement the terms of this License with terms: a) Disclaiming warranty or limiting liability differently from the terms of sections 15 and 16 of this License; or b) Requiring preservation of specified reasonable legal notices or author attributions in that material or in the Appropriate Legal Notices displayed by works containing it; or c) Prohibiting misrepresentation of the origin of that material, or requiring that modified versions of such material be marked in reasonable ways as different from the original version; or d) Limiting the use for publicity purposes of names of licensors or authors of the material; or e) Declining to grant rights under trademark law for use of some trade names, trademarks, or service marks; or f) Requiring indemnification of licensors and authors of that material by anyone who conveys the material (or modified versions of it) with contractual assumptions of liability to the recipient, for any liability that these contractual assumptions directly impose on those licensors and authors. All other non-permissive additional terms are considered "further restrictions" within the meaning of section 10. If the Program as you received it, or any part of it, contains a notice stating that it is governed by this License along with a term that is a further restriction, you may remove that term. If a license document contains a further restriction but permits relicensing or conveying under this License, you may add to a covered work material governed by the terms of that license document, provided that the further restriction does not survive such relicensing or conveying. If you add terms to a covered work in accord with this section, you must place, in the relevant source files, a statement of the additional terms that apply to those files, or a notice indicating where to find the applicable terms. Additional terms, permissive or non-permissive, may be stated in the form of a separately written license, or stated as exceptions; the above requirements apply either way. 8. Termination. You may not propagate or modify a covered work except as expressly provided under this License. Any attempt otherwise to propagate or modify it is void, and will automatically terminate your rights under this License (including any patent licenses granted under the third paragraph of section 11). However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation. Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice. Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, you do not qualify to receive new licenses for the same material under section 10. 9. Acceptance Not Required for Having Copies. You are not required to accept this License in order to receive or run a copy of the Program. Ancillary propagation of a covered work occurring solely as a consequence of using peer-to-peer transmission to receive a copy likewise does not require acceptance. However, nothing other than this License grants you permission to propagate or modify any covered work. These actions infringe copyright if you do not accept this License. Therefore, by modifying or propagating a covered work, you indicate your acceptance of this License to do so. 10. Automatic Licensing of Downstream Recipients. Each time you convey a covered work, the recipient automatically receives a license from the original licensors, to run, modify and propagate that work, subject to this License. You are not responsible for enforcing compliance by third parties with this License. An "entity transaction" is a transaction transferring control of an organization, or substantially all assets of one, or subdividing an organization, or merging organizations. If propagation of a covered work results from an entity transaction, each party to that transaction who receives a copy of the work also receives whatever licenses to the work the party's predecessor in interest had or could give under the previous paragraph, plus a right to possession of the Corresponding Source of the work from the predecessor in interest, if the predecessor has it or can get it with reasonable efforts. You may not impose any further restrictions on the exercise of the rights granted or affirmed under this License. For example, you may not impose a license fee, royalty, or other charge for exercise of rights granted under this License, and you may not initiate litigation (including a cross-claim or counterclaim in a lawsuit) alleging that any patent claim is infringed by making, using, selling, offering for sale, or importing the Program or any portion of it. 11. Patents. A "contributor" is a copyright holder who authorizes use under this License of the Program or a work on which the Program is based. The work thus licensed is called the contributor's "contributor version". A contributor's "essential patent claims" are all patent claims owned or controlled by the contributor, whether already acquired or hereafter acquired, that would be infringed by some manner, permitted by this License, of making, using, or selling its contributor version, but do not include claims that would be infringed only as a consequence of further modification of the contributor version. For purposes of this definition, "control" includes the right to grant patent sublicenses in a manner consistent with the requirements of this License. Each contributor grants you a non-exclusive, worldwide, royalty-free patent license under the contributor's essential patent claims, to make, use, sell, offer for sale, import and otherwise run, modify and propagate the contents of its contributor version. In the following three paragraphs, a "patent license" is any express agreement or commitment, however denominated, not to enforce a patent (such as an express permission to practice a patent or covenant not to sue for patent infringement). To "grant" such a patent license to a party means to make such an agreement or commitment not to enforce a patent against the party. If you convey a covered work, knowingly relying on a patent license, and the Corresponding Source of the work is not available for anyone to copy, free of charge and under the terms of this License, through a publicly available network server or other readily accessible means, then you must either (1) cause the Corresponding Source to be so available, or (2) arrange to deprive yourself of the benefit of the patent license for this particular work, or (3) arrange, in a manner consistent with the requirements of this License, to extend the patent license to downstream recipients. "Knowingly relying" means you have actual knowledge that, but for the patent license, your conveying the covered work in a country, or your recipient's use of the covered work in a country, would infringe one or more identifiable patents in that country that you have reason to believe are valid. If, pursuant to or in connection with a single transaction or arrangement, you convey, or propagate by procuring conveyance of, a covered work, and grant a patent license to some of the parties receiving the covered work authorizing them to use, propagate, modify or convey a specific copy of the covered work, then the patent license you grant is automatically extended to all recipients of the covered work and works based on it. A patent license is "discriminatory" if it does not include within the scope of its coverage, prohibits the exercise of, or is conditioned on the non-exercise of one or more of the rights that are specifically granted under this License. You may not convey a covered work if you are a party to an arrangement with a third party that is in the business of distributing software, under which you make payment to the third party based on the extent of your activity of conveying the work, and under which the third party grants, to any of the parties who would receive the covered work from you, a discriminatory patent license (a) in connection with copies of the covered work conveyed by you (or copies made from those copies), or (b) primarily for and in connection with specific products or compilations that contain the covered work, unless you entered into that arrangement, or that patent license was granted, prior to 28 March 2007. Nothing in this License shall be construed as excluding or limiting any implied license or other defenses to infringement that may otherwise be available to you under applicable patent law. 12. No Surrender of Others' Freedom. If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not convey it at all. For example, if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program, the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program. 13. Use with the GNU Affero General Public License. Notwithstanding any other provision of this License, you have permission to link or combine any covered work with a work licensed under version 3 of the GNU Affero General Public License into a single combined work, and to convey the resulting work. The terms of this License will continue to apply to the part which is the covered work, but the special requirements of the GNU Affero General Public License, section 13, concerning interaction through a network will apply to the combination as such. 14. Revised Versions of this License. The Free Software Foundation may publish revised and/or new versions of the GNU General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies that a certain numbered version of the GNU General Public License "or any later version" applies to it, you have the option of following the terms and conditions either of that numbered version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of the GNU General Public License, you may choose any version ever published by the Free Software Foundation. If the Program specifies that a proxy can decide which future versions of the GNU General Public License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Program. Later license versions may give you additional or different permissions. However, no additional obligations are imposed on any author or copyright holder as a result of your choosing to follow a later version. 15. Disclaimer of Warranty. THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 16. Limitation of Liability. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. 17. Interpretation of Sections 15 and 16. If the disclaimer of warranty and limitation of liability provided above cannot be given local legal effect according to their terms, reviewing courts shall apply local law that most closely approximates an absolute waiver of all civil liability in connection with the Program, unless a warranty or assumption of liability accompanies a copy of the Program in return for a fee. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively state the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (©) 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 3 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, see . Also add information on how to contact you by electronic and paper mail. If the program does terminal interaction, make it output a short notice like this when it starts in an interactive mode: Copyright (©) This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, your program's commands might be different; for a GUI interface, you would use an "about box". You should also get your employer (if you work as a programmer) or school, if any, to sign a "copyright disclaimer" for the program, if necessary. For more information on this, and how to apply and follow the GNU GPL, see . The GNU General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . bibledit-gtk-4.9/depcomp000775 000766 000024 00000027533 12221507126 015442 0ustar00teusstaff000000 000000 #! /bin/sh # depcomp - compile a program generating dependencies as side-effects # Copyright 1999, 2000 Free Software Foundation, Inc. # 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; if not, write to the Free Software # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA # 02111-1307, USA. # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. # Originally written by Alexandre Oliva . if test -z "$depmode" || test -z "$source" || test -z "$object"; then echo "depcomp: Variables source, object and depmode must be set" 1>&2 exit 1 fi # `libtool' can also be set to `yes' or `no'. if test -z "$depfile"; then base=`echo "$object" | sed -e 's,^.*/,,' -e 's,\.\([^.]*\)$,.P\1,'` dir=`echo "$object" | sed 's,/.*$,/,'` if test "$dir" = "$object"; then dir= fi # FIXME: should be _deps on DOS. depfile="$dir.deps/$base" fi tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`} rm -f "$tmpdepfile" # Some modes work just like other modes, but use different flags. We # parameterize here, but still list the modes in the big case below, # to make depend.m4 easier to write. Note that we *cannot* use a case # here, because this file can only contain one case statement. if test "$depmode" = hp; then # HP compiler uses -M and no extra arg. gccflag=-M depmode=gcc fi if test "$depmode" = dashXmstdout; then # This is just like dashmstdout with a different argument. dashmflag=-xM depmode=dashmstdout fi case "$depmode" in gcc3) ## gcc 3 implements dependency tracking that does exactly what ## we want. Yay! Note: for some reason libtool 1.4 doesn't like ## it if -MD -MP comes after the -MF stuff. Hmm. "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" stat=$? if test $stat -eq 0; then : else rm -f "$tmpdepfile" exit $stat fi mv "$tmpdepfile" "$depfile" ;; gcc) ## There are various ways to get dependency output from gcc. Here's ## why we pick this rather obscure method: ## - Don't want to use -MD because we'd like the dependencies to end ## up in a subdir. Having to rename by hand is ugly. ## (We might end up doing this anyway to support other compilers.) ## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like ## -MM, not -M (despite what the docs say). ## - Using -M directly means running the compiler twice (even worse ## than renaming). if test -z "$gccflag"; then gccflag=-MD, fi "$@" -Wp,"$gccflag$tmpdepfile" stat=$? if test $stat -eq 0; then : else rm -f "$tmpdepfile" exit $stat fi rm -f "$depfile" echo "$object : \\" > "$depfile" alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz ## The second -e expression handles DOS-style file names with drive letters. sed -e 's/^[^:]*: / /' \ -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile" ## This next piece of magic avoids the `deleted header file' problem. ## The problem is that when a header file which appears in a .P file ## is deleted, the dependency causes make to die (because there is ## typically no way to rebuild the header). We avoid this by adding ## dummy dependencies for each header file. Too bad gcc doesn't do ## this for us directly. tr ' ' ' ' < "$tmpdepfile" | ## Some versions of gcc put a space before the `:'. On the theory ## that the space means something, we add a space to the output as ## well. ## Some versions of the HPUX 10.20 sed can't process this invocation ## correctly. Breaking it into two sed invocations is a workaround. sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" rm -f "$tmpdepfile" ;; hp) # This case exists only to let depend.m4 do its work. It works by # looking at the text of this script. This case will never be run, # since it is checked for above. exit 1 ;; sgi) if test "$libtool" = yes; then "$@" "-Wp,-MDupdate,$tmpdepfile" else "$@" -MDupdate "$tmpdepfile" fi stat=$? if test $stat -eq 0; then : else rm -f "$tmpdepfile" exit $stat fi rm -f "$depfile" if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files echo "$object : \\" > "$depfile" # Clip off the initial element (the dependent). Don't try to be # clever and replace this with sed code, as IRIX sed won't handle # lines with more than a fixed number of characters (4096 in # IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines; # the IRIX cc adds comments like `#:fec' to the end of the # dependency line. tr ' ' ' ' < "$tmpdepfile" \ | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \ tr ' ' ' ' >> $depfile echo >> $depfile # The second pass generates a dummy entry for each header file. tr ' ' ' ' < "$tmpdepfile" \ | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \ >> $depfile else # The sourcefile does not contain any dependencies, so just # store a dummy comment line, to avoid errors with the Makefile # "include basename.Plo" scheme. echo "#dummy" > "$depfile" fi rm -f "$tmpdepfile" ;; aix) # The C for AIX Compiler uses -M and outputs the dependencies # in a .u file. This file always lives in the current directory. # Also, the AIX compiler puts `$object:' at the start of each line; # $object doesn't have directory information. stripped=`echo "$object" | sed -e 's,^.*/,,' -e 's/\(.*\)\..*$/\1/'` tmpdepfile="$stripped.u" outname="$stripped.o" if test "$libtool" = yes; then "$@" -Wc,-M else "$@" -M fi stat=$? if test $stat -eq 0; then : else rm -f "$tmpdepfile" exit $stat fi if test -f "$tmpdepfile"; then # Each line is of the form `foo.o: dependent.h'. # Do two passes, one to just change these to # `$object: dependent.h' and one to simply `dependent.h:'. sed -e "s,^$outname:,$object :," < "$tmpdepfile" > "$depfile" sed -e "s,^$outname: \(.*\)$,\1:," < "$tmpdepfile" >> "$depfile" else # The sourcefile does not contain any dependencies, so just # store a dummy comment line, to avoid errors with the Makefile # "include basename.Plo" scheme. echo "#dummy" > "$depfile" fi rm -f "$tmpdepfile" ;; tru64) # The Tru64 compiler uses -MD to generate dependencies as a side # effect. `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'. # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put # dependencies in `foo.d' instead, so we check for that too. # Subdirectories are respected. dir=`echo "$object" | sed -e 's|/[^/]*$|/|'` test "x$dir" = "x$object" && dir= base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'` if test "$libtool" = yes; then tmpdepfile1="$dir.libs/$base.lo.d" tmpdepfile2="$dir.libs/$base.d" "$@" -Wc,-MD else tmpdepfile1="$dir$base.o.d" tmpdepfile2="$dir$base.d" "$@" -MD fi stat=$? if test $stat -eq 0; then : else rm -f "$tmpdepfile1" "$tmpdepfile2" exit $stat fi if test -f "$tmpdepfile1"; then tmpdepfile="$tmpdepfile1" else tmpdepfile="$tmpdepfile2" fi if test -f "$tmpdepfile"; then sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile" # That's a space and a tab in the []. sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile" else echo "#dummy" > "$depfile" fi rm -f "$tmpdepfile" ;; #nosideeffect) # This comment above is used by automake to tell side-effect # dependency tracking mechanisms from slower ones. dashmstdout) # Important note: in order to support this mode, a compiler *must* # always write the proprocessed file to stdout, regardless of -o. "$@" || exit $? # Remove the call to Libtool. if test "$libtool" = yes; then while test $1 != '--mode=compile'; do shift done shift fi # Remove `-o $object'. We will use -o /dev/null later, # however we can't do the remplacement now because # `-o $object' might simply not be used IFS=" " for arg do case $arg in -o) shift ;; $object) shift ;; *) set fnord "$@" "$arg" shift # fnord shift # $arg ;; esac done test -z "$dashmflag" && dashmflag=-M "$@" -o /dev/null $dashmflag | sed 's:^[^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile" rm -f "$depfile" cat < "$tmpdepfile" > "$depfile" tr ' ' ' ' < "$tmpdepfile" | \ ## Some versions of the HPUX 10.20 sed can't process this invocation ## correctly. Breaking it into two sed invocations is a workaround. sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" rm -f "$tmpdepfile" ;; dashXmstdout) # This case only exists to satisfy depend.m4. It is never actually # run, as this mode is specially recognized in the preamble. exit 1 ;; makedepend) "$@" || exit $? # X makedepend shift cleared=no for arg in "$@"; do case $cleared in no) set ""; shift cleared=yes ;; esac case "$arg" in -D*|-I*) set fnord "$@" "$arg"; shift ;; -*) ;; *) set fnord "$@" "$arg"; shift ;; esac done obj_suffix="`echo $object | sed 's/^.*\././'`" touch "$tmpdepfile" ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@" rm -f "$depfile" cat < "$tmpdepfile" > "$depfile" sed '1,2d' "$tmpdepfile" | tr ' ' ' ' | \ ## Some versions of the HPUX 10.20 sed can't process this invocation ## correctly. Breaking it into two sed invocations is a workaround. sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" rm -f "$tmpdepfile" "$tmpdepfile".bak ;; cpp) # Important note: in order to support this mode, a compiler *must* # always write the proprocessed file to stdout. "$@" || exit $? # Remove the call to Libtool. if test "$libtool" = yes; then while test $1 != '--mode=compile'; do shift done shift fi # Remove `-o $object'. IFS=" " for arg do case $arg in -o) shift ;; $object) shift ;; *) set fnord "$@" "$arg" shift # fnord shift # $arg ;; esac done "$@" -E | sed -n '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' | sed '$ s: \\$::' > "$tmpdepfile" rm -f "$depfile" echo "$object : \\" > "$depfile" cat < "$tmpdepfile" >> "$depfile" sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile" rm -f "$tmpdepfile" ;; msvisualcpp) # Important note: in order to support this mode, a compiler *must* # always write the proprocessed file to stdout, regardless of -o, # because we must use -o when running libtool. "$@" || exit $? IFS=" " for arg do case "$arg" in "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI") set fnord "$@" shift shift ;; *) set fnord "$@" "$arg" shift shift ;; esac done "$@" -E | sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile" rm -f "$depfile" echo "$object : \\" > "$depfile" . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile" echo " " >> "$depfile" . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::\1\::p' >> "$depfile" rm -f "$tmpdepfile" ;; none) exec "$@" ;; *) echo "Unknown depmode $depmode" 1>&2 exit 1 ;; esac exit 0 bibledit-gtk-4.9/desktop/000755 000766 000024 00000000000 12517415765 015541 5ustar00teusstaff000000 000000 bibledit-gtk-4.9/doc/000755 000766 000024 00000000000 12517415763 014633 5ustar00teusstaff000000 000000 bibledit-gtk-4.9/FDL000664 000766 000024 00000054662 12221507124 014416 0ustar00teusstaff000000 000000 GNU Free Documentation License Version 1.3, 3 November 2008 Copyright (C) 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc. Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. 0. PREAMBLE The purpose of this License is to make a manual, textbook, or other functional and useful document "free" in the sense of freedom: to assure everyone the effective freedom to copy and redistribute it, with or without modifying it, either commercially or noncommercially. Secondarily, this License preserves for the author and publisher a way to get credit for their work, while not being considered responsible for modifications made by others. This License is a kind of "copyleft", which means that derivative works of the document must themselves be free in the same sense. It complements the GNU General Public License, which is a copyleft license designed for free software. We have designed this License in order to use it for manuals for free software, because free software needs free documentation: a free program should come with manuals providing the same freedoms that the software does. But this License is not limited to software manuals; it can be used for any textual work, regardless of subject matter or whether it is published as a printed book. We recommend this License principally for works whose purpose is instruction or reference. 1. APPLICABILITY AND DEFINITIONS This License applies to any manual or other work, in any medium, that contains a notice placed by the copyright holder saying it can be distributed under the terms of this License. Such a notice grants a world-wide, royalty-free license, unlimited in duration, to use that work under the conditions stated herein. The "Document", below, refers to any such manual or work. Any member of the public is a licensee, and is addressed as "you". You accept the license if you copy, modify or distribute the work in a way requiring permission under copyright law. A "Modified Version" of the Document means any work containing the Document or a portion of it, either copied verbatim, or with modifications and/or translated into another language. A "Secondary Section" is a named appendix or a front-matter section of the Document that deals exclusively with the relationship of the publishers or authors of the Document to the Document's overall subject (or to related matters) and contains nothing that could fall directly within that overall subject. (Thus, if the Document is in part a textbook of mathematics, a Secondary Section may not explain any mathematics.) The relationship could be a matter of historical connection with the subject or with related matters, or of legal, commercial, philosophical, ethical or political position regarding them. The "Invariant Sections" are certain Secondary Sections whose titles are designated, as being those of Invariant Sections, in the notice that says that the Document is released under this License. If a section does not fit the above definition of Secondary then it is not allowed to be designated as Invariant. The Document may contain zero Invariant Sections. If the Document does not identify any Invariant Sections then there are none. The "Cover Texts" are certain short passages of text that are listed, as Front-Cover Texts or Back-Cover Texts, in the notice that says that the Document is released under this License. A Front-Cover Text may be at most 5 words, and a Back-Cover Text may be at most 25 words. A "Transparent" copy of the Document means a machine-readable copy, represented in a format whose specification is available to the general public, that is suitable for revising the document straightforwardly with generic text editors or (for images composed of pixels) generic paint programs or (for drawings) some widely available drawing editor, and that is suitable for input to text formatters or for automatic translation to a variety of formats suitable for input to text formatters. A copy made in an otherwise Transparent file format whose markup, or absence of markup, has been arranged to thwart or discourage subsequent modification by readers is not Transparent. An image format is not Transparent if used for any substantial amount of text. A copy that is not "Transparent" is called "Opaque". Examples of suitable formats for Transparent copies include plain ASCII without markup, Texinfo input format, LaTeX input format, SGML or XML using a publicly available DTD, and standard-conforming simple HTML, PostScript or PDF designed for human modification. Examples of transparent image formats include PNG, XCF and JPG. Opaque formats include proprietary formats that can be read and edited only by proprietary word processors, SGML or XML for which the DTD and/or processing tools are not generally available, and the machine-generated HTML, PostScript or PDF produced by some word processors for output purposes only. The "Title Page" means, for a printed book, the title page itself, plus such following pages as are needed to hold, legibly, the material this License requires to appear in the title page. For works in formats which do not have any title page as such, "Title Page" means the text near the most prominent appearance of the work's title, preceding the beginning of the body of the text. The "publisher" means any person or entity that distributes copies of the Document to the public. A section "Entitled XYZ" means a named subunit of the Document whose title either is precisely XYZ or contains XYZ in parentheses following text that translates XYZ in another language. (Here XYZ stands for a specific section name mentioned below, such as "Acknowledgements", "Dedications", "Endorsements", or "History".) To "Preserve the Title" of such a section when you modify the Document means that it remains a section "Entitled XYZ" according to this definition. The Document may include Warranty Disclaimers next to the notice which states that this License applies to the Document. These Warranty Disclaimers are considered to be included by reference in this License, but only as regards disclaiming warranties: any other implication that these Warranty Disclaimers may have is void and has no effect on the meaning of this License. 2. VERBATIM COPYING You may copy and distribute the Document in any medium, either commercially or noncommercially, provided that this License, the copyright notices, and the license notice saying this License applies to the Document are reproduced in all copies, and that you add no other conditions whatsoever to those of this License. You may not use technical measures to obstruct or control the reading or further copying of the copies you make or distribute. However, you may accept compensation in exchange for copies. If you distribute a large enough number of copies you must also follow the conditions in section 3. You may also lend copies, under the same conditions stated above, and you may publicly display copies. 3. COPYING IN QUANTITY If you publish printed copies (or copies in media that commonly have printed covers) of the Document, numbering more than 100, and the Document's license notice requires Cover Texts, you must enclose the copies in covers that carry, clearly and legibly, all these Cover Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on the back cover. Both covers must also clearly and legibly identify you as the publisher of these copies. The front cover must present the full title with all words of the title equally prominent and visible. You may add other material on the covers in addition. Copying with changes limited to the covers, as long as they preserve the title of the Document and satisfy these conditions, can be treated as verbatim copying in other respects. If the required texts for either cover are too voluminous to fit legibly, you should put the first ones listed (as many as fit reasonably) on the actual cover, and continue the rest onto adjacent pages. If you publish or distribute Opaque copies of the Document numbering more than 100, you must either include a machine-readable Transparent copy along with each Opaque copy, or state in or with each Opaque copy a computer-network location from which the general network-using public has access to download using public-standard network protocols a complete Transparent copy of the Document, free of added material. If you use the latter option, you must take reasonably prudent steps, when you begin distribution of Opaque copies in quantity, to ensure that this Transparent copy will remain thus accessible at the stated location until at least one year after the last time you distribute an Opaque copy (directly or through your agents or retailers) of that edition to the public. It is requested, but not required, that you contact the authors of the Document well before redistributing any large number of copies, to give them a chance to provide you with an updated version of the Document. 4. MODIFICATIONS You may copy and distribute a Modified Version of the Document under the conditions of sections 2 and 3 above, provided that you release the Modified Version under precisely this License, with the Modified Version filling the role of the Document, thus licensing distribution and modification of the Modified Version to whoever possesses a copy of it. In addition, you must do these things in the Modified Version: A. Use in the Title Page (and on the covers, if any) a title distinct from that of the Document, and from those of previous versions (which should, if there were any, be listed in the History section of the Document). You may use the same title as a previous version if the original publisher of that version gives permission. B. List on the Title Page, as authors, one or more persons or entities responsible for authorship of the modifications in the Modified Version, together with at least five of the principal authors of the Document (all of its principal authors, if it has fewer than five), unless they release you from this requirement. C. State on the Title page the name of the publisher of the Modified Version, as the publisher. D. Preserve all the copyright notices of the Document. E. Add an appropriate copyright notice for your modifications adjacent to the other copyright notices. F. Include, immediately after the copyright notices, a license notice giving the public permission to use the Modified Version under the terms of this License, in the form shown in the Addendum below. G. Preserve in that license notice the full lists of Invariant Sections and required Cover Texts given in the Document's license notice. H. Include an unaltered copy of this License. I. Preserve the section Entitled "History", Preserve its Title, and add to it an item stating at least the title, year, new authors, and publisher of the Modified Version as given on the Title Page. If there is no section Entitled "History" in the Document, create one stating the title, year, authors, and publisher of the Document as given on its Title Page, then add an item describing the Modified Version as stated in the previous sentence. J. Preserve the network location, if any, given in the Document for public access to a Transparent copy of the Document, and likewise the network locations given in the Document for previous versions it was based on. These may be placed in the "History" section. You may omit a network location for a work that was published at least four years before the Document itself, or if the original publisher of the version it refers to gives permission. K. For any section Entitled "Acknowledgements" or "Dedications", Preserve the Title of the section, and preserve in the section all the substance and tone of each of the contributor acknowledgements and/or dedications given therein. L. Preserve all the Invariant Sections of the Document, unaltered in their text and in their titles. Section numbers or the equivalent are not considered part of the section titles. M. Delete any section Entitled "Endorsements". Such a section may not be included in the Modified Version. N. Do not retitle any existing section to be Entitled "Endorsements" or to conflict in title with any Invariant Section. O. Preserve any Warranty Disclaimers. If the Modified Version includes new front-matter sections or appendices that qualify as Secondary Sections and contain no material copied from the Document, you may at your option designate some or all of these sections as invariant. To do this, add their titles to the list of Invariant Sections in the Modified Version's license notice. These titles must be distinct from any other section titles. You may add a section Entitled "Endorsements", provided it contains nothing but endorsements of your Modified Version by various parties--for example, statements of peer review or that the text has been approved by an organization as the authoritative definition of a standard. You may add a passage of up to five words as a Front-Cover Text, and a passage of up to 25 words as a Back-Cover Text, to the end of the list of Cover Texts in the Modified Version. Only one passage of Front-Cover Text and one of Back-Cover Text may be added by (or through arrangements made by) any one entity. If the Document already includes a cover text for the same cover, previously added by you or by arrangement made by the same entity you are acting on behalf of, you may not add another; but you may replace the old one, on explicit permission from the previous publisher that added the old one. The author(s) and publisher(s) of the Document do not by this License give permission to use their names for publicity for or to assert or imply endorsement of any Modified Version. 5. COMBINING DOCUMENTS You may combine the Document with other documents released under this License, under the terms defined in section 4 above for modified versions, provided that you include in the combination all of the Invariant Sections of all of the original documents, unmodified, and list them all as Invariant Sections of your combined work in its license notice, and that you preserve all their Warranty Disclaimers. The combined work need only contain one copy of this License, and multiple identical Invariant Sections may be replaced with a single copy. If there are multiple Invariant Sections with the same name but different contents, make the title of each such section unique by adding at the end of it, in parentheses, the name of the original author or publisher of that section if known, or else a unique number. Make the same adjustment to the section titles in the list of Invariant Sections in the license notice of the combined work. In the combination, you must combine any sections Entitled "History" in the various original documents, forming one section Entitled "History"; likewise combine any sections Entitled "Acknowledgements", and any sections Entitled "Dedications". You must delete all sections Entitled "Endorsements". 6. COLLECTIONS OF DOCUMENTS You may make a collection consisting of the Document and other documents released under this License, and replace the individual copies of this License in the various documents with a single copy that is included in the collection, provided that you follow the rules of this License for verbatim copying of each of the documents in all other respects. You may extract a single document from such a collection, and distribute it individually under this License, provided you insert a copy of this License into the extracted document, and follow this License in all other respects regarding verbatim copying of that document. 7. AGGREGATION WITH INDEPENDENT WORKS A compilation of the Document or its derivatives with other separate and independent documents or works, in or on a volume of a storage or distribution medium, is called an "aggregate" if the copyright resulting from the compilation is not used to limit the legal rights of the compilation's users beyond what the individual works permit. When the Document is included in an aggregate, this License does not apply to the other works in the aggregate which are not themselves derivative works of the Document. If the Cover Text requirement of section 3 is applicable to these copies of the Document, then if the Document is less than one half of the entire aggregate, the Document's Cover Texts may be placed on covers that bracket the Document within the aggregate, or the electronic equivalent of covers if the Document is in electronic form. Otherwise they must appear on printed covers that bracket the whole aggregate. 8. TRANSLATION Translation is considered a kind of modification, so you may distribute translations of the Document under the terms of section 4. Replacing Invariant Sections with translations requires special permission from their copyright holders, but you may include translations of some or all Invariant Sections in addition to the original versions of these Invariant Sections. You may include a translation of this License, and all the license notices in the Document, and any Warranty Disclaimers, provided that you also include the original English version of this License and the original versions of those notices and disclaimers. In case of a disagreement between the translation and the original version of this License or a notice or disclaimer, the original version will prevail. If a section in the Document is Entitled "Acknowledgements", "Dedications", or "History", the requirement (section 4) to Preserve its Title (section 1) will typically require changing the actual title. 9. TERMINATION You may not copy, modify, sublicense, or distribute the Document except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense, or distribute it is void, and will automatically terminate your rights under this License. However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation. Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice. Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, receipt of a copy of some or all of the same material does not give you any rights to use it. 10. FUTURE REVISIONS OF THIS LICENSE The Free Software Foundation may publish new, revised versions of the GNU Free Documentation License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. See http://www.gnu.org/copyleft/. Each version of the License is given a distinguishing version number. If the Document specifies that a particular numbered version of this License "or any later version" applies to it, you have the option of following the terms and conditions either of that specified version or of any later version that has been published (not as a draft) by the Free Software Foundation. If the Document does not specify a version number of this License, you may choose any version ever published (not as a draft) by the Free Software Foundation. If the Document specifies that a proxy can decide which future versions of this License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Document. 11. RELICENSING "Massive Multiauthor Collaboration Site" (or "MMC Site") means any World Wide Web server that publishes copyrightable works and also provides prominent facilities for anybody to edit those works. A public wiki that anybody can edit is an example of such a server. A "Massive Multiauthor Collaboration" (or "MMC") contained in the site means any set of copyrightable works thus published on the MMC site. "CC-BY-SA" means the Creative Commons Attribution-Share Alike 3.0 license published by Creative Commons Corporation, a not-for-profit corporation with a principal place of business in San Francisco, California, as well as future copyleft versions of that license published by that same organization. "Incorporate" means to publish or republish a Document, in whole or in part, as part of another Document. An MMC is "eligible for relicensing" if it is licensed under this License, and if all works that were first published under this License somewhere other than this MMC, and subsequently incorporated in whole or in part into the MMC, (1) had no cover texts or invariant sections, and (2) were thus incorporated prior to November 1, 2008. The operator of an MMC Site may republish an MMC contained in the site under CC-BY-SA on the same site at any time before August 1, 2009, provided the MMC is eligible for relicensing. ADDENDUM: How to use this License for your documents To use this License in a document you have written, include a copy of the License in the document and put the following copyright and license notices just after the title page: Copyright (c) YEAR YOUR NAME. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License". If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts, replace the "with...Texts." line with this: with the Invariant Sections being LIST THEIR TITLES, with the Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST. If you have Invariant Sections without Cover Texts, or some other combination of the three, merge those two alternatives to suit the situation. If your document contains nontrivial examples of program code, we recommend releasing these examples in parallel under your choice of free software license, such as the GNU General Public License, to permit their use in free software. bibledit-gtk-4.9/git/000755 000766 000024 00000000000 12517415766 014654 5ustar00teusstaff000000 000000 bibledit-gtk-4.9/INSTALL000664 000766 000024 00000023364 12221507125 015113 0ustar00teusstaff000000 000000 Copyright 1994, 1995, 1996, 1999, 2000, 2001, 2002 Free Software Foundation, Inc. This file is free documentation; the Free Software Foundation gives unlimited permission to copy, distribute and modify it. Short Installation Instructions =============================== To install the program, type these commands in the order shown. tar zxf bibledit-x.x.tar cd bibledit-x.x ./configure make sudo make install This is enough to install the program. For more elaborate instructions, read the rest of this document. More elaborate instructions are given in the doc subdirectory. Point your browser to doc/index.html, go to the Installation section, and elaborate instructions will appear. Basic Installation ================== These are generic installation instructions. The `configure' shell script attempts to guess correct values for various system-dependent variables used during compilation. It uses those values to create a `Makefile' in each directory of the package. It may also create one or more `.h' files containing system-dependent definitions. Finally, it creates a shell script `config.status' that you can run in the future to recreate the current configuration, and a file `config.log' containing compiler output (useful mainly for debugging `configure'). It can also use an optional file (typically called `config.cache' and enabled with `--cache-file=config.cache' or simply `-C') that saves the results of its tests to speed up reconfiguring. (Caching is disabled by default to prevent problems with accidental use of stale cache files.) If you need to do unusual things to compile the package, please try to figure out how `configure' could check whether to do them, and mail diffs or instructions to the address given in the `README' so they can be considered for the next release. If you are using the cache, and at some point `config.cache' contains results you don't want to keep, you may remove or edit it. The file `configure.ac' (or `configure.in') is used to create `configure' by a program called `autoconf'. You only need `configure.ac' if you want to change it or regenerate `configure' using a newer version of `autoconf'. The simplest way to compile this package is: 1. `cd' to the directory containing the package's source code and type `./configure' to configure the package for your system. If you're using `csh' on an old version of System V, you might need to type `sh ./configure' instead to prevent `csh' from trying to execute `configure' itself. Running `configure' takes awhile. While running, it prints some messages telling which features it is checking for. 2. Type `make' to compile the package. 3. Optionally, type `make check' to run any self-tests that come with the package. 4. Type `make install' to install the programs and any data files and documentation. 5. You can remove the program binaries and object files from the source code directory by typing `make clean'. To also remove the files that `configure' created (so you can compile the package for a different kind of computer), type `make distclean'. There is also a `make maintainer-clean' target, but that is intended mainly for the package's developers. If you use it, you may have to get all sorts of other programs in order to regenerate files that came with the distribution. Compilers and Options ===================== Some systems require unusual options for compilation or linking that the `configure' script does not know about. Run `./configure --help' for details on some of the pertinent environment variables. You can give `configure' initial values for configuration parameters by setting variables in the command line or in the environment. Here is an example: ./configure CC=c89 CFLAGS=-O2 LIBS=-lposix *Note Defining Variables::, for more details. Compiling For Multiple Architectures ==================================== You can compile the package for more than one kind of computer at the same time, by placing the object files for each architecture in their own directory. To do this, you must use a version of `make' that supports the `VPATH' variable, such as GNU `make'. `cd' to the directory where you want the object files and executables to go and run the `configure' script. `configure' automatically checks for the source code in the directory that `configure' is in and in `..'. If you have to use a `make' that does not support the `VPATH' variable, you have to compile the package for one architecture at a time in the source code directory. After you have installed the package for one architecture, use `make distclean' before reconfiguring for another architecture. Installation Names ================== By default, `make install' will install the package's files in `/usr/local/bin', `/usr/local/man', etc. You can specify an installation prefix other than `/usr/local' by giving `configure' the option `--prefix=PATH'. You can specify separate installation prefixes for architecture-specific files and architecture-independent files. If you give `configure' the option `--exec-prefix=PATH', the package will use PATH as the prefix for installing programs and libraries. Documentation and other data files will still use the regular prefix. In addition, if you use an unusual directory layout you can give options like `--bindir=PATH' to specify different values for particular kinds of files. Run `configure --help' for a list of the directories you can set and what kinds of files go in them. If the package supports it, you can cause programs to be installed with an extra prefix or suffix on their names by giving `configure' the option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'. Optional Features ================= Some packages pay attention to `--enable-FEATURE' options to `configure', where FEATURE indicates an optional part of the package. They may also pay attention to `--with-PACKAGE' options, where PACKAGE is something like `gnu-as' or `x' (for the X Window System). The `README' should mention any `--enable-' and `--with-' options that the package recognizes. For packages that use the X Window System, `configure' can usually find the X include and library files automatically, but if it doesn't, you can use the `configure' options `--x-includes=DIR' and `--x-libraries=DIR' to specify their locations. Specifying the System Type ========================== There may be some features `configure' cannot figure out automatically, but needs to determine by the type of machine the package will run on. Usually, assuming the package is built to be run on the _same_ architectures, `configure' can figure that out, but if it prints a message saying it cannot guess the machine type, give it the `--build=TYPE' option. TYPE can either be a short name for the system type, such as `sun4', or a canonical name which has the form: CPU-COMPANY-SYSTEM where SYSTEM can have one of these forms: OS KERNEL-OS See the file `config.sub' for the possible values of each field. If `config.sub' isn't included in this package, then this package doesn't need to know the machine type. If you are _building_ compiler tools for cross-compiling, you should use the `--target=TYPE' option to select the type of system they will produce code for. If you want to _use_ a cross compiler, that generates code for a platform different from the build platform, you should specify the "host" platform (i.e., that on which the generated programs will eventually be run) with `--host=TYPE'. Sharing Defaults ================ If you want to set default values for `configure' scripts to share, you can create a site shell script called `config.site' that gives default values for variables like `CC', `cache_file', and `prefix'. `configure' looks for `PREFIX/share/config.site' if it exists, then `PREFIX/etc/config.site' if it exists. Or, you can set the `CONFIG_SITE' environment variable to the location of the site script. A warning: not all `configure' scripts look for a site script. Defining Variables ================== Variables not defined in a site shell script can be set in the environment passed to `configure'. However, some packages may run configure again during the build, and the customized values of these variables may be lost. In order to avoid this problem, you should set them in the `configure' command line, using `VAR=value'. For example: ./configure CC=/usr/local2/bin/gcc will cause the specified gcc to be used as the C compiler (unless it is overridden in the site shell script). `configure' Invocation ====================== `configure' recognizes the following options to control how it operates. `--help' `-h' Print a summary of the options to `configure', and exit. `--version' `-V' Print the version of Autoconf used to generate the `configure' script, and exit. `--cache-file=FILE' Enable the cache: use and save the results of the tests in FILE, traditionally `config.cache'. FILE defaults to `/dev/null' to disable caching. `--config-cache' `-C' Alias for `--cache-file=config.cache'. `--quiet' `--silent' `-q' Do not print messages saying which checks are being made. To suppress all normal output, redirect it to `/dev/null' (any error messages will still be shown). `--srcdir=DIR' Look for the package's source code in directory DIR. Usually `configure' can determine that directory automatically. `configure' also accepts some other, not widely useful, options. Run `configure --help' for more details. A bibledit .rpm file can be built easily from the source tarball. Type: rpmbuild -tb bibledit-x.x.tar.gz Bibledit depends on package sqlite3. An .rpm binary file can be produced from a source .rpm file. rpmbuild --rebuild sqlite3-3.x.x.src.rpm bibledit-gtk-4.9/install-sh000775 000766 000024 00000012701 12221507127 016061 0ustar00teusstaff000000 000000 #!/bin/sh # # install - install a program, script, or datafile # This comes from X11R5 (mit/util/scripts/install.sh). # # Copyright 1991 by the Massachusetts Institute of Technology # # Permission to use, copy, modify, distribute, and sell this software and its # documentation for any purpose is hereby granted without fee, provided that # the above copyright notice appear in all copies and that both that # copyright notice and this permission notice appear in supporting # documentation, and that the name of M.I.T. not be used in advertising or # publicity pertaining to distribution of the software without specific, # written prior permission. M.I.T. makes no representations about the # suitability of this software for any purpose. It is provided "as is" # without express or implied warranty. # # Calling this script install-sh is preferred over install.sh, to prevent # `make' implicit rules from creating a file called install from it # when there is no Makefile. # # This script is compatible with the BSD install script, but was written # from scratch. It can only install one file at a time, a restriction # shared with many OS's install programs. # set DOITPROG to echo to test this script # Don't use :- since 4.3BSD and earlier shells don't like it. doit="${DOITPROG-}" # put in absolute paths if you don't have them in your path; or use env. vars. mvprog="${MVPROG-mv}" cpprog="${CPPROG-cp}" chmodprog="${CHMODPROG-chmod}" chownprog="${CHOWNPROG-chown}" chgrpprog="${CHGRPPROG-chgrp}" stripprog="${STRIPPROG-strip}" rmprog="${RMPROG-rm}" mkdirprog="${MKDIRPROG-mkdir}" transformbasename="" transform_arg="" instcmd="$mvprog" chmodcmd="$chmodprog 0755" chowncmd="" chgrpcmd="" stripcmd="" rmcmd="$rmprog -f" mvcmd="$mvprog" src="" dst="" dir_arg="" while [ x"$1" != x ]; do case $1 in -c) instcmd="$cpprog" shift continue;; -d) dir_arg=true shift continue;; -m) chmodcmd="$chmodprog $2" shift shift continue;; -o) chowncmd="$chownprog $2" shift shift continue;; -g) chgrpcmd="$chgrpprog $2" shift shift continue;; -s) stripcmd="$stripprog" shift continue;; -t=*) transformarg=`echo $1 | sed 's/-t=//'` shift continue;; -b=*) transformbasename=`echo $1 | sed 's/-b=//'` shift continue;; *) if [ x"$src" = x ] then src=$1 else # this colon is to work around a 386BSD /bin/sh bug : dst=$1 fi shift continue;; esac done if [ x"$src" = x ] then echo "install: no input file specified" exit 1 else : fi if [ x"$dir_arg" != x ]; then dst=$src src="" if [ -d $dst ]; then instcmd=: chmodcmd="" else instcmd=$mkdirprog fi else # Waiting for this to be detected by the "$instcmd $src $dsttmp" command # might cause directories to be created, which would be especially bad # if $src (and thus $dsttmp) contains '*'. if [ -f "$src" ] || [ -d "$src" ] then : else echo "install: $src does not exist" exit 1 fi if [ x"$dst" = x ] then echo "install: no destination specified" exit 1 else : fi # If destination is a directory, append the input filename; if your system # does not like double slashes in filenames, you may need to add some logic if [ -d $dst ] then dst="$dst"/`basename $src` else : fi fi ## this sed command emulates the dirname command dstdir=`echo $dst | sed -e 's,[^/]*$,,;s,/$,,;s,^$,.,'` # Make sure that the destination directory exists. # this part is taken from Noah Friedman's mkinstalldirs script # Skip lots of stat calls in the usual case. if [ ! -d "$dstdir" ]; then defaultIFS=' ' IFS="${IFS-${defaultIFS}}" oIFS="${IFS}" # Some sh's can't handle IFS=/ for some reason. IFS='%' set - `echo ${dstdir} | sed -e 's@/@%@g' -e 's@^%@/@'` IFS="${oIFS}" pathcomp='' while [ $# -ne 0 ] ; do pathcomp="${pathcomp}${1}" shift if [ ! -d "${pathcomp}" ] ; then $mkdirprog "${pathcomp}" else : fi pathcomp="${pathcomp}/" done fi if [ x"$dir_arg" != x ] then $doit $instcmd $dst && if [ x"$chowncmd" != x ]; then $doit $chowncmd $dst; else : ; fi && if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dst; else : ; fi && if [ x"$stripcmd" != x ]; then $doit $stripcmd $dst; else : ; fi && if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dst; else : ; fi else # If we're going to rename the final executable, determine the name now. if [ x"$transformarg" = x ] then dstfile=`basename $dst` else dstfile=`basename $dst $transformbasename | sed $transformarg`$transformbasename fi # don't allow the sed command to completely eliminate the filename if [ x"$dstfile" = x ] then dstfile=`basename $dst` else : fi # Make a temp file name in the proper directory. dsttmp=$dstdir/#inst.$$# # Move or copy the file name to the temp name $doit $instcmd $src $dsttmp && trap "rm -f ${dsttmp}" 0 && # and set any options; do chmod last to preserve setuid bits # If any of these fail, we abort the whole thing. If we want to # ignore errors from any of these, just make sure not to ignore # errors from the above "$doit $instcmd $src $dsttmp" command. if [ x"$chowncmd" != x ]; then $doit $chowncmd $dsttmp; else :;fi && if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dsttmp; else :;fi && if [ x"$stripcmd" != x ]; then $doit $stripcmd $dsttmp; else :;fi && if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dsttmp; else :;fi && # Now rename the file to the real destination. $doit $rmcmd -f $dstdir/$dstfile && $doit $mvcmd $dsttmp $dstdir/$dstfile fi && exit 0 bibledit-gtk-4.9/kjv/000755 000766 000024 00000000000 12517415766 014663 5ustar00teusstaff000000 000000 bibledit-gtk-4.9/Makefile.am000664 000766 000024 00000000232 12221507124 016102 0ustar00teusstaff000000 000000 SUBDIRS = man pix doc src scripts templates olpc desktop windows tests shutdown usfm kjv xetex git php CLEANFILES = bibledit*.gz *~ EXTRA_DIST = TODO FDL bibledit-gtk-4.9/Makefile.in000644 000766 000024 00000063314 12517415675 016144 0ustar00teusstaff000000 000000 # Makefile.in generated by automake 1.15 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2014 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ am__is_gnu_make = { \ if test -z '$(MAKELEVEL)'; then \ false; \ elif test -n '$(MAKE_HOST)'; then \ true; \ elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ true; \ else \ false; \ fi; \ } am__make_running_with_option = \ case $${target_option-} in \ ?) ;; \ *) echo "am__make_running_with_option: internal error: invalid" \ "target option '$${target_option-}' specified" >&2; \ exit 1;; \ esac; \ has_opt=no; \ sane_makeflags=$$MAKEFLAGS; \ if $(am__is_gnu_make); then \ sane_makeflags=$$MFLAGS; \ else \ case $$MAKEFLAGS in \ *\\[\ \ ]*) \ bs=\\; \ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ esac; \ fi; \ skip_next=no; \ strip_trailopt () \ { \ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ }; \ for flg in $$sane_makeflags; do \ test $$skip_next = yes && { skip_next=no; continue; }; \ case $$flg in \ *=*|--*) continue;; \ -*I) strip_trailopt 'I'; skip_next=yes;; \ -*I?*) strip_trailopt 'I';; \ -*O) strip_trailopt 'O'; skip_next=yes;; \ -*O?*) strip_trailopt 'O';; \ -*l) strip_trailopt 'l'; skip_next=yes;; \ -*l?*) strip_trailopt 'l';; \ -[dEDm]) skip_next=yes;; \ -[JT]) skip_next=yes;; \ esac; \ case $$flg in \ *$$target_option*) has_opt=yes; break;; \ esac; \ done; \ test $$has_opt = yes am__make_dryrun = (target_option=n; $(am__make_running_with_option)) am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ target_triplet = @target@ subdir = . ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) DIST_COMMON = $(srcdir)/Makefile.am $(top_srcdir)/configure \ $(am__configure_deps) $(am__DIST_COMMON) am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ configure.lineno config.status.lineno mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = AM_V_P = $(am__v_P_@AM_V@) am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) am__v_P_0 = false am__v_P_1 = : AM_V_GEN = $(am__v_GEN_@AM_V@) am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) am__v_GEN_0 = @echo " GEN " $@; am__v_GEN_1 = AM_V_at = $(am__v_at_@AM_V@) am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) am__v_at_0 = @ am__v_at_1 = SOURCES = DIST_SOURCES = RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \ ctags-recursive dvi-recursive html-recursive info-recursive \ install-data-recursive install-dvi-recursive \ install-exec-recursive install-html-recursive \ install-info-recursive install-pdf-recursive \ install-ps-recursive install-recursive installcheck-recursive \ installdirs-recursive pdf-recursive ps-recursive \ tags-recursive uninstall-recursive am__can_run_installinfo = \ case $$AM_UPDATE_INFO_DIR in \ n|no|NO) false;; \ *) (install-info --version) >/dev/null 2>&1;; \ esac RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ distclean-recursive maintainer-clean-recursive am__recursive_targets = \ $(RECURSIVE_TARGETS) \ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ cscope distdir dist dist-all distcheck am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) \ $(LISP)config.h.in # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is # *not* preserved. am__uniquify_input = $(AWK) '\ BEGIN { nonempty = 0; } \ { items[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in items) print i; }; } \ ' # Make sure the list of sources is unique. This is necessary because, # e.g., the same source file might be shared among _SOURCES variables # for different programs/libraries. am__define_uniq_tagged_files = \ list='$(am__tagged_files)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | $(am__uniquify_input)` ETAGS = etags CTAGS = ctags CSCOPE = cscope DIST_SUBDIRS = $(SUBDIRS) am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/config.h.in AUTHORS \ COPYING ChangeLog INSTALL NEWS README THANKS TODO compile \ config.guess config.sub depcomp install-sh missing \ mkinstalldirs DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) distdir = $(PACKAGE)-$(VERSION) top_distdir = $(distdir) am__remove_distdir = \ if test -d "$(distdir)"; then \ find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \ && rm -rf "$(distdir)" \ || { sleep 5 && rm -rf "$(distdir)"; }; \ else :; fi am__post_remove_distdir = $(am__remove_distdir) am__relativize = \ dir0=`pwd`; \ sed_first='s,^\([^/]*\)/.*$$,\1,'; \ sed_rest='s,^[^/]*/*,,'; \ sed_last='s,^.*/\([^/]*\)$$,\1,'; \ sed_butlast='s,/*[^/]*$$,,'; \ while test -n "$$dir1"; do \ first=`echo "$$dir1" | sed -e "$$sed_first"`; \ if test "$$first" != "."; then \ if test "$$first" = ".."; then \ dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \ dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \ else \ first2=`echo "$$dir2" | sed -e "$$sed_first"`; \ if test "$$first2" = "$$first"; then \ dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \ else \ dir2="../$$dir2"; \ fi; \ dir0="$$dir0"/"$$first"; \ fi; \ fi; \ dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ done; \ reldir="$$dir2" DIST_ARCHIVES = $(distdir).tar.gz GZIP_ENV = --best DIST_TARGETS = dist-gzip distuninstallcheck_listfiles = find . -type f -print am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \ | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$' distcleancheck_listfiles = find . -type f -print ACLOCAL = @ACLOCAL@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CAT_PATH = @CAT_PATH@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DATE_PATH = @DATE_PATH@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ ENCHANT_CFLAGS = @ENCHANT_CFLAGS@ ENCHANT_LIBS = @ENCHANT_LIBS@ EXEEXT = @EXEEXT@ FIND_CURL = @FIND_CURL@ FIND_DIFF = @FIND_DIFF@ FIND_GPP = @FIND_GPP@ FIND_MERGE = @FIND_MERGE@ FIND_PATCH = @FIND_PATCH@ FIND_PATH = @FIND_PATH@ FIND_TAR = @FIND_TAR@ FIND_XARGS = @FIND_XARGS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_LIBS = @GLIB_LIBS@ GOBJECT_CFLAGS = @GOBJECT_CFLAGS@ GOBJECT_LIBS = @GOBJECT_LIBS@ GREP = @GREP@ GREP_PATH = @GREP_PATH@ GTHREAD_CFLAGS = @GTHREAD_CFLAGS@ GTHREAD_LIBS = @GTHREAD_LIBS@ GTKSOURCEVIEW_CFLAGS = @GTKSOURCEVIEW_CFLAGS@ GTKSOURCEVIEW_LIBS = @GTKSOURCEVIEW_LIBS@ GTK_CFLAGS = @GTK_CFLAGS@ GTK_LIBS = @GTK_LIBS@ GUNZIP_PATH = @GUNZIP_PATH@ GZIP_PATH = @GZIP_PATH@ HAVE_CXX11 = @HAVE_CXX11@ HEAD_PATH = @HEAD_PATH@ ICONV_PATH = @ICONV_PATH@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBSOUP_CFLAGS = @LIBSOUP_CFLAGS@ LIBSOUP_LIBS = @LIBSOUP_LIBS@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MAKE_PATH = @MAKE_PATH@ MKDIR_P = @MKDIR_P@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PANGO_CFLAGS = @PANGO_CFLAGS@ PANGO_LIBS = @PANGO_LIBS@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SORT_PATH = @SORT_PATH@ SQLITE_CFLAGS = @SQLITE_CFLAGS@ SQLITE_LIBS = @SQLITE_LIBS@ STRINGS_PATH = @STRINGS_PATH@ STRIP = @STRIP@ TAIL_PATH = @TAIL_PATH@ TEE_TOUCH = @TEE_TOUCH@ VERSION = @VERSION@ WEBKIT_CFLAGS = @WEBKIT_CFLAGS@ WEBKIT_LIBS = @WEBKIT_LIBS@ XML2_CONFIG = @XML2_CONFIG@ XML_CPPFLAGS = @XML_CPPFLAGS@ XML_LIBS = @XML_LIBS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ ac_ct_CXX = @ac_ct_CXX@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ packagedatadir = @packagedatadir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target = @target@ target_alias = @target_alias@ target_cpu = @target_cpu@ target_os = @target_os@ target_vendor = @target_vendor@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ SUBDIRS = man pix doc src scripts templates olpc desktop windows tests shutdown usfm kjv xetex git php CLEANFILES = bibledit*.gz *~ EXTRA_DIST = TODO FDL all: config.h $(MAKE) $(AM_MAKEFLAGS) all-recursive .SUFFIXES: am--refresh: Makefile @: $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ echo ' cd $(srcdir) && $(AUTOMAKE) --gnu'; \ $(am__cd) $(srcdir) && $(AUTOMAKE) --gnu \ && exit 0; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --gnu Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ echo ' $(SHELL) ./config.status'; \ $(SHELL) ./config.status;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) $(SHELL) ./config.status --recheck $(top_srcdir)/configure: $(am__configure_deps) $(am__cd) $(srcdir) && $(AUTOCONF) $(ACLOCAL_M4): $(am__aclocal_m4_deps) $(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) $(am__aclocal_m4_deps): config.h: stamp-h1 @test -f $@ || rm -f stamp-h1 @test -f $@ || $(MAKE) $(AM_MAKEFLAGS) stamp-h1 stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status @rm -f stamp-h1 cd $(top_builddir) && $(SHELL) ./config.status config.h $(srcdir)/config.h.in: $(am__configure_deps) ($(am__cd) $(top_srcdir) && $(AUTOHEADER)) rm -f stamp-h1 touch $@ distclean-hdr: -rm -f config.h stamp-h1 # This directory's subdirectories are mostly independent; you can cd # into them and run 'make' without going through this Makefile. # To change the values of 'make' variables: instead of editing Makefiles, # (1) if the variable is set in 'config.status', edit 'config.status' # (which will cause the Makefiles to be regenerated when you run 'make'); # (2) otherwise, pass the desired values on the 'make' command line. $(am__recursive_targets): @fail=; \ if $(am__make_keepgoing); then \ failcom='fail=yes'; \ else \ failcom='exit 1'; \ fi; \ dot_seen=no; \ target=`echo $@ | sed s/-recursive//`; \ case "$@" in \ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ *) list='$(SUBDIRS)' ;; \ esac; \ for subdir in $$list; do \ echo "Making $$target in $$subdir"; \ if test "$$subdir" = "."; then \ dot_seen=yes; \ local_target="$$target-am"; \ else \ local_target="$$target"; \ fi; \ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done; \ if test "$$dot_seen" = "no"; then \ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ fi; test -z "$$fail" ID: $(am__tagged_files) $(am__define_uniq_tagged_files); mkid -fID $$unique tags: tags-recursive TAGS: tags tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) set x; \ here=`pwd`; \ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ include_option=--etags-include; \ empty_fix=.; \ else \ include_option=--include; \ empty_fix=; \ fi; \ list='$(SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test ! -f $$subdir/TAGS || \ set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ fi; \ done; \ $(am__define_uniq_tagged_files); \ shift; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ if test $$# -gt 0; then \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ "$$@" $$unique; \ else \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$unique; \ fi; \ fi ctags: ctags-recursive CTAGS: ctags ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) $(am__define_uniq_tagged_files); \ test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && $(am__cd) $(top_srcdir) \ && gtags -i $(GTAGS_ARGS) "$$here" cscope: cscope.files test ! -s cscope.files \ || $(CSCOPE) -b -q $(AM_CSCOPEFLAGS) $(CSCOPEFLAGS) -i cscope.files $(CSCOPE_ARGS) clean-cscope: -rm -f cscope.files cscope.files: clean-cscope cscopelist cscopelist: cscopelist-recursive cscopelist-am: $(am__tagged_files) list='$(am__tagged_files)'; \ case "$(srcdir)" in \ [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ *) sdir=$(subdir)/$(srcdir) ;; \ esac; \ for i in $$list; do \ if test -f "$$i"; then \ echo "$(subdir)/$$i"; \ else \ echo "$$sdir/$$i"; \ fi; \ done >> $(top_builddir)/cscope.files distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -rm -f cscope.out cscope.in.out cscope.po.out cscope.files distdir: $(DISTFILES) $(am__remove_distdir) test -d "$(distdir)" || mkdir "$(distdir)" @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ $(am__make_dryrun) \ || test -d "$(distdir)/$$subdir" \ || $(MKDIR_P) "$(distdir)/$$subdir" \ || exit 1; \ dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ $(am__relativize); \ new_distdir=$$reldir; \ dir1=$$subdir; dir2="$(top_distdir)"; \ $(am__relativize); \ new_top_distdir=$$reldir; \ echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \ echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \ ($(am__cd) $$subdir && \ $(MAKE) $(AM_MAKEFLAGS) \ top_distdir="$$new_top_distdir" \ distdir="$$new_distdir" \ am__remove_distdir=: \ am__skip_length_check=: \ am__skip_mode_fix=: \ distdir) \ || exit 1; \ fi; \ done -test -n "$(am__skip_mode_fix)" \ || find "$(distdir)" -type d ! -perm -755 \ -exec chmod u+rwx,go+rx {} \; -o \ ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \ ! -type d ! -perm -400 -exec chmod a+r {} \; -o \ ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \ || chmod -R a+r "$(distdir)" dist-gzip: distdir tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz $(am__post_remove_distdir) dist-bzip2: distdir tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2 $(am__post_remove_distdir) dist-lzip: distdir tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz $(am__post_remove_distdir) dist-xz: distdir tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz $(am__post_remove_distdir) dist-tarZ: distdir @echo WARNING: "Support for distribution archives compressed with" \ "legacy program 'compress' is deprecated." >&2 @echo WARNING: "It will be removed altogether in Automake 2.0" >&2 tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z $(am__post_remove_distdir) dist-shar: distdir @echo WARNING: "Support for shar distribution archives is" \ "deprecated." >&2 @echo WARNING: "It will be removed altogether in Automake 2.0" >&2 shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz $(am__post_remove_distdir) dist-zip: distdir -rm -f $(distdir).zip zip -rq $(distdir).zip $(distdir) $(am__post_remove_distdir) dist dist-all: $(MAKE) $(AM_MAKEFLAGS) $(DIST_TARGETS) am__post_remove_distdir='@:' $(am__post_remove_distdir) # This target untars the dist file and tries a VPATH configuration. Then # it guarantees that the distribution is self-contained by making another # tarfile. distcheck: dist case '$(DIST_ARCHIVES)' in \ *.tar.gz*) \ GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\ *.tar.bz2*) \ bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\ *.tar.lz*) \ lzip -dc $(distdir).tar.lz | $(am__untar) ;;\ *.tar.xz*) \ xz -dc $(distdir).tar.xz | $(am__untar) ;;\ *.tar.Z*) \ uncompress -c $(distdir).tar.Z | $(am__untar) ;;\ *.shar.gz*) \ GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\ *.zip*) \ unzip $(distdir).zip ;;\ esac chmod -R a-w $(distdir) chmod u+w $(distdir) mkdir $(distdir)/_build $(distdir)/_build/sub $(distdir)/_inst chmod a-w $(distdir) test -d $(distdir)/_build || exit 0; \ dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \ && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \ && am__cwd=`pwd` \ && $(am__cd) $(distdir)/_build/sub \ && ../../configure \ $(AM_DISTCHECK_CONFIGURE_FLAGS) \ $(DISTCHECK_CONFIGURE_FLAGS) \ --srcdir=../.. --prefix="$$dc_install_base" \ && $(MAKE) $(AM_MAKEFLAGS) \ && $(MAKE) $(AM_MAKEFLAGS) dvi \ && $(MAKE) $(AM_MAKEFLAGS) check \ && $(MAKE) $(AM_MAKEFLAGS) install \ && $(MAKE) $(AM_MAKEFLAGS) installcheck \ && $(MAKE) $(AM_MAKEFLAGS) uninstall \ && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \ distuninstallcheck \ && chmod -R a-w "$$dc_install_base" \ && ({ \ (cd ../.. && umask 077 && mkdir "$$dc_destdir") \ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \ distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \ } || { rm -rf "$$dc_destdir"; exit 1; }) \ && rm -rf "$$dc_destdir" \ && $(MAKE) $(AM_MAKEFLAGS) dist \ && rm -rf $(DIST_ARCHIVES) \ && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \ && cd "$$am__cwd" \ || exit 1 $(am__post_remove_distdir) @(echo "$(distdir) archives ready for distribution: "; \ list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \ sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x' distuninstallcheck: @test -n '$(distuninstallcheck_dir)' || { \ echo 'ERROR: trying to run $@ with an empty' \ '$$(distuninstallcheck_dir)' >&2; \ exit 1; \ }; \ $(am__cd) '$(distuninstallcheck_dir)' || { \ echo 'ERROR: cannot chdir into $(distuninstallcheck_dir)' >&2; \ exit 1; \ }; \ test `$(am__distuninstallcheck_listfiles) | wc -l` -eq 0 \ || { echo "ERROR: files left after uninstall:" ; \ if test -n "$(DESTDIR)"; then \ echo " (check DESTDIR support)"; \ fi ; \ $(distuninstallcheck_listfiles) ; \ exit 1; } >&2 distcleancheck: distclean @if test '$(srcdir)' = . ; then \ echo "ERROR: distcleancheck can only run from a VPATH build" ; \ exit 1 ; \ fi @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \ || { echo "ERROR: files left in build directory after distclean:" ; \ $(distcleancheck_listfiles) ; \ exit 1; } >&2 check-am: all-am check: check-recursive all-am: Makefile config.h installdirs: installdirs-recursive installdirs-am: install: install-recursive install-exec: install-exec-recursive install-data: install-data-recursive uninstall: uninstall-recursive install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-recursive install-strip: if test -z '$(STRIP)'; then \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ install; \ else \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ fi mostlyclean-generic: clean-generic: -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-recursive clean-am: clean-generic mostlyclean-am distclean: distclean-recursive -rm -f $(am__CONFIG_DISTCLEAN_FILES) -rm -f Makefile distclean-am: clean-am distclean-generic distclean-hdr distclean-tags dvi: dvi-recursive dvi-am: html: html-recursive html-am: info: info-recursive info-am: install-data-am: install-dvi: install-dvi-recursive install-dvi-am: install-exec-am: install-html: install-html-recursive install-html-am: install-info: install-info-recursive install-info-am: install-man: install-pdf: install-pdf-recursive install-pdf-am: install-ps: install-ps-recursive install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-recursive -rm -f $(am__CONFIG_DISTCLEAN_FILES) -rm -rf $(top_srcdir)/autom4te.cache -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-recursive mostlyclean-am: mostlyclean-generic pdf: pdf-recursive pdf-am: ps: ps-recursive ps-am: uninstall-am: .MAKE: $(am__recursive_targets) all install-am install-strip .PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ am--refresh check check-am clean clean-cscope clean-generic \ cscope cscopelist-am ctags ctags-am dist dist-all dist-bzip2 \ dist-gzip dist-lzip dist-shar dist-tarZ dist-xz dist-zip \ distcheck distclean distclean-generic distclean-hdr \ distclean-tags distcleancheck distdir distuninstallcheck dvi \ dvi-am html html-am info info-am install install-am \ install-data install-data-am install-dvi install-dvi-am \ install-exec install-exec-am install-html install-html-am \ install-info install-info-am install-man install-pdf \ install-pdf-am install-ps install-ps-am install-strip \ installcheck installcheck-am installdirs installdirs-am \ maintainer-clean maintainer-clean-generic mostlyclean \ mostlyclean-generic pdf pdf-am ps ps-am tags tags-am uninstall \ uninstall-am .PRECIOUS: Makefile # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: bibledit-gtk-4.9/man/000755 000766 000024 00000000000 12517415763 014641 5ustar00teusstaff000000 000000 bibledit-gtk-4.9/missing000755 000766 000024 00000015342 12301064504 015452 0ustar00teusstaff000000 000000 #! /bin/sh exit 0 # Common wrapper for a few potentially missing GNU programs. scriptversion=2012-06-26.16; # UTC # Copyright (C) 1996-2013 Free Software Foundation, Inc. # Originally written by Fran,cois Pinard , 1996. # 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. If not, see . # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. if test $# -eq 0; then echo 1>&2 "Try '$0 --help' for more information" exit 1 fi case $1 in --is-lightweight) # Used by our autoconf macros to check whether the available missing # script is modern enough. exit 0 ;; --run) # Back-compat with the calling convention used by older automake. shift ;; -h|--h|--he|--hel|--help) echo "\ $0 [OPTION]... PROGRAM [ARGUMENT]... Run 'PROGRAM [ARGUMENT]...', returning a proper advice when this fails due to PROGRAM being missing or too old. Options: -h, --help display this help and exit -v, --version output version information and exit Supported PROGRAM values: aclocal autoconf autoheader autom4te automake makeinfo bison yacc flex lex help2man Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and 'g' are ignored when checking the name. Send bug reports to ." exit $? ;; -v|--v|--ve|--ver|--vers|--versi|--versio|--version) echo "missing $scriptversion (GNU Automake)" exit $? ;; -*) echo 1>&2 "$0: unknown '$1' option" echo 1>&2 "Try '$0 --help' for more information" exit 1 ;; esac # Run the given program, remember its exit status. "$@"; st=$? # If it succeeded, we are done. test $st -eq 0 && exit 0 # Also exit now if we it failed (or wasn't found), and '--version' was # passed; such an option is passed most likely to detect whether the # program is present and works. case $2 in --version|--help) exit $st;; esac # Exit code 63 means version mismatch. This often happens when the user # tries to use an ancient version of a tool on a file that requires a # minimum version. if test $st -eq 63; then msg="probably too old" elif test $st -eq 127; then # Program was missing. msg="missing on your system" else # Program was found and executed, but failed. Give up. exit $st fi perl_URL=http://www.perl.org/ flex_URL=http://flex.sourceforge.net/ gnu_software_URL=http://www.gnu.org/software program_details () { case $1 in aclocal|automake) echo "The '$1' program is part of the GNU Automake package:" echo "<$gnu_software_URL/automake>" echo "It also requires GNU Autoconf, GNU m4 and Perl in order to run:" echo "<$gnu_software_URL/autoconf>" echo "<$gnu_software_URL/m4/>" echo "<$perl_URL>" ;; autoconf|autom4te|autoheader) echo "The '$1' program is part of the GNU Autoconf package:" echo "<$gnu_software_URL/autoconf/>" echo "It also requires GNU m4 and Perl in order to run:" echo "<$gnu_software_URL/m4/>" echo "<$perl_URL>" ;; esac } give_advice () { # Normalize program name to check for. normalized_program=`echo "$1" | sed ' s/^gnu-//; t s/^gnu//; t s/^g//; t'` printf '%s\n' "'$1' is $msg." configure_deps="'configure.ac' or m4 files included by 'configure.ac'" case $normalized_program in autoconf*) echo "You should only need it if you modified 'configure.ac'," echo "or m4 files included by it." program_details 'autoconf' ;; autoheader*) echo "You should only need it if you modified 'acconfig.h' or" echo "$configure_deps." program_details 'autoheader' ;; automake*) echo "You should only need it if you modified 'Makefile.am' or" echo "$configure_deps." program_details 'automake' ;; aclocal*) echo "You should only need it if you modified 'acinclude.m4' or" echo "$configure_deps." program_details 'aclocal' ;; autom4te*) echo "You might have modified some maintainer files that require" echo "the 'automa4te' program to be rebuilt." program_details 'autom4te' ;; bison*|yacc*) echo "You should only need it if you modified a '.y' file." echo "You may want to install the GNU Bison package:" echo "<$gnu_software_URL/bison/>" ;; lex*|flex*) echo "You should only need it if you modified a '.l' file." echo "You may want to install the Fast Lexical Analyzer package:" echo "<$flex_URL>" ;; help2man*) echo "You should only need it if you modified a dependency" \ "of a man page." echo "You may want to install the GNU Help2man package:" echo "<$gnu_software_URL/help2man/>" ;; makeinfo*) echo "You should only need it if you modified a '.texi' file, or" echo "any other file indirectly affecting the aspect of the manual." echo "You might want to install the Texinfo package:" echo "<$gnu_software_URL/texinfo/>" echo "The spurious makeinfo call might also be the consequence of" echo "using a buggy 'make' (AIX, DU, IRIX), in which case you might" echo "want to install GNU make:" echo "<$gnu_software_URL/make/>" ;; *) echo "You might have modified some files without having the proper" echo "tools for further handling them. Check the 'README' file, it" echo "often tells you about the needed prerequisites for installing" echo "this package. You may also peek at any GNU archive site, in" echo "case some other package contains this missing '$1' program." ;; esac } give_advice "$1" | sed -e '1s/^/WARNING: /' \ -e '2,$s/^/ /' >&2 # Propagate the correct exit status (expected to be 127 for a program # not found, 63 for a program that failed due to version mismatch). exit $st # Local variables: # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-time-zone: "UTC" # time-stamp-end: "; # UTC" # End: bibledit-gtk-4.9/mkinstalldirs000775 000766 000024 00000003411 12221507127 016661 0ustar00teusstaff000000 000000 #! /bin/sh # mkinstalldirs --- make directory hierarchy # Author: Noah Friedman # Created: 1993-05-16 # Public domain errstatus=0 dirmode="" usage="\ Usage: mkinstalldirs [-h] [--help] [-m mode] dir ..." # process command line arguments while test $# -gt 0 ; do case "${1}" in -h | --help | --h* ) # -h for help echo "${usage}" 1>&2; exit 0 ;; -m ) # -m PERM arg shift test $# -eq 0 && { echo "${usage}" 1>&2; exit 1; } dirmode="${1}" shift ;; -- ) shift; break ;; # stop option processing -* ) echo "${usage}" 1>&2; exit 1 ;; # unknown option * ) break ;; # first non-opt arg esac done for file do if test -d "$file"; then shift else break fi done case $# in 0) exit 0 ;; esac case $dirmode in '') if mkdir -p -- . 2>/dev/null; then echo "mkdir -p -- $*" exec mkdir -p -- "$@" fi ;; *) if mkdir -m "$dirmode" -p -- . 2>/dev/null; then echo "mkdir -m $dirmode -p -- $*" exec mkdir -m "$dirmode" -p -- "$@" fi ;; esac for file do set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'` shift pathcomp= for d do pathcomp="$pathcomp$d" case "$pathcomp" in -* ) pathcomp=./$pathcomp ;; esac if test ! -d "$pathcomp"; then echo "mkdir $pathcomp" mkdir "$pathcomp" || lasterr=$? if test ! -d "$pathcomp"; then errstatus=$lasterr else if test ! -z "$dirmode"; then echo "chmod $dirmode $pathcomp" lasterr="" chmod "$dirmode" "$pathcomp" || lasterr=$? if test ! -z "$lasterr"; then errstatus=$lasterr fi fi fi fi pathcomp="$pathcomp/" done done exit $errstatus # Local Variables: # mode: shell-script # sh-indentation: 3 # End: # mkinstalldirs ends here bibledit-gtk-4.9/NEWS000664 000766 000024 00000000000 12517415674 014556 0ustar00teusstaff000000 000000 bibledit-gtk-4.9/olpc/000755 000766 000024 00000000000 12517415765 015025 5ustar00teusstaff000000 000000 bibledit-gtk-4.9/php/000755 000766 000024 00000000000 12517415766 014660 5ustar00teusstaff000000 000000 bibledit-gtk-4.9/pix/000755 000766 000024 00000000000 12517415763 014666 5ustar00teusstaff000000 000000 bibledit-gtk-4.9/README000664 000766 000024 00000004634 12517415674 014760 0ustar00teusstaff000000 000000 The bibledit program is used editing work done during revising or translating a Bible. To install the bibledit program, read file INSTALL. General programming notes: At first gtkmm-2.0 was used because of its ease of use. But later gtk+2.x (and higher) was used, for these reasons: - A bug in gtkmm caused the default button in a dialog not to be activated when Enter was pressed. Gtk+ did not have this problem. - I gtkmm-2.4 signal_cursor_moved was suddenly removed. This was queries on the gtkmm discussionlist. The reply given made me to loose confidence in gtkmm. - In Gtk+ the Glade interface designer could be used, and that makes designing interfaces so much faster and simpler. Bibledit should be easily portable to other platforms, such as Mac OS X, Windows, and other Unix likes. For this reasons it uses as few libraries as possible. This is the reason that the Gnome libraries are not used. It is also good to not use the very newest Gtk+ libraries, but wait a while until most newer distributions have them in their stock distribution. A tool to measure cpu usage of the various functions. valgrind --tool=callgrind bibledit-bin Graphical tools to display the information that was collected: - alleyoop - kcachegrind Git repository notes. The git repository is in folder ".git". There is file .git/hooks/commit-msg, this is needed to send out commit messages. Here's the content: ----- #!/bin/sh # # An example hook script to check the commit log message. # Called by git-commit with one argument, the name of the file # that has the commit message. The hook should exit with non-zero # status after issuing an appropriate message if it wants to stop the # commit. The hook is allowed to edit the commit message file. # # To enable this hook, make this file executable. # Store the commit message for later mailing out to the list. cat $1 >> /tmp/bibleditcommits ----- Then, there's file .git/info/exclude: ----- # git-ls-files --others --exclude-from=.git/info/exclude # Lines that start with '#' are comments. # For a project mostly in C, the following would be a good set of # exclude patterns (uncomment them if you want to use them): *.[oa] *~ bibledit-bibletime bibledit-git bibledit-help bibledit-restart bibledit bibledit-olpc-librarian bibledit-one bibledit-shutdown bibledit-*.gz eeepc-install-menu *.cache *.Po allpages contents CVS bumpversion Makefile config.log config.status .deps .cvsignore ----- bibledit-gtk-4.9/scripts/000755 000766 000024 00000000000 12517415765 015557 5ustar00teusstaff000000 000000 bibledit-gtk-4.9/shutdown/000755 000766 000024 00000000000 12517415766 015744 5ustar00teusstaff000000 000000 bibledit-gtk-4.9/src/000755 000766 000024 00000000000 12517415765 014657 5ustar00teusstaff000000 000000 bibledit-gtk-4.9/templates/000755 000766 000024 00000000000 12517415765 016066 5ustar00teusstaff000000 000000 bibledit-gtk-4.9/tests/000755 000766 000024 00000000000 12517415765 015232 5ustar00teusstaff000000 000000 bibledit-gtk-4.9/THANKS000664 000766 000024 00000000135 12221507124 014763 0ustar00teusstaff000000 000000 Bibledit-Gtk THANKS file The users of Bibledit-Gtk thank all people who contributed to it. bibledit-gtk-4.9/TODO000644 000766 000024 00000004244 12460404402 014543 0ustar00teusstaff000000 000000 The features that you feel Bibledit-Gtk ought to have become todo items. I'd like to put out a call for patches implementing the todo items. These are bug fixes or speed enhancements or features that we believe are worthy of someone's attention to improve bibledit-gtk. For additional information, please contact Pastor Matt Postiff or Birch Champeon . Roughly in order of priority Date Added Description 1/12/2015 Fix Settings:: and ProjectConfiguration:: to have a "SaveSettings" routine or some such so that they do NOT save state in their destructors. 1/12/2015 Keyterms and related verses window is VERY slow to update when you change verses. 1/12/2015 Fix Mappings::original2me because it takes a lot of time. 1/13/2015 On my system, every other time Bibledit runs, it hangs up during startup for some reason. If I kill it and start over, it works. That is not appropriate behavior to our end user. The error /may/ have to do with the following errors found in /tmp/bibledit/bibledit.log: Could not find program "xetex". Install package texlive-xetex to resolve this. Could not find program "php". Install package php5-cli to resolve this. Webserver Access: Cannot connect to destination (localhost) Verified that the error is not due to the first two problems. Once I installed those, the errors go away, but the hang-up problem remains intermittently upon startup. 1/13/2015 When shared resource directory is wrong/gone, Bibledit fails without any warning message. It would be nice if /share/bibledit does not exist, for example, that the program pops up an error window to tell the user what is going on. Of course this symptom means that the program was not built or configured properly, but it would still be nice :-) 1/13/2015 Fix #pragma warning in Windows compile 1/13/2015 Fix duplication #define of WIN32 in Windows compile, probably by protecting the definition in config.h.in. 1/13/2015 It is not clear that gtk/config.h should be tracked in git because it changes with every ./configure call. Probably only config.h.in should be tracked. bibledit-gtk-4.9/usfm/000755 000766 000024 00000000000 12517415766 015043 5ustar00teusstaff000000 000000 bibledit-gtk-4.9/windows/000755 000766 000024 00000000000 12517415765 015562 5ustar00teusstaff000000 000000 bibledit-gtk-4.9/xetex/000755 000766 000024 00000000000 12517415766 015226 5ustar00teusstaff000000 000000 bibledit-gtk-4.9/xetex/Makefile.am000664 000766 000024 00000000101 12221507127 017235 0ustar00teusstaff000000 000000 dist_pkgdata_DATA = *.tar.gz EXTRA_DIST = README CLEANFILES = *~ bibledit-gtk-4.9/xetex/Makefile.in000644 000766 000024 00000035650 12517415675 017303 0ustar00teusstaff000000 000000 # Makefile.in generated by automake 1.15 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2014 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ am__is_gnu_make = { \ if test -z '$(MAKELEVEL)'; then \ false; \ elif test -n '$(MAKE_HOST)'; then \ true; \ elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ true; \ else \ false; \ fi; \ } am__make_running_with_option = \ case $${target_option-} in \ ?) ;; \ *) echo "am__make_running_with_option: internal error: invalid" \ "target option '$${target_option-}' specified" >&2; \ exit 1;; \ esac; \ has_opt=no; \ sane_makeflags=$$MAKEFLAGS; \ if $(am__is_gnu_make); then \ sane_makeflags=$$MFLAGS; \ else \ case $$MAKEFLAGS in \ *\\[\ \ ]*) \ bs=\\; \ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ esac; \ fi; \ skip_next=no; \ strip_trailopt () \ { \ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ }; \ for flg in $$sane_makeflags; do \ test $$skip_next = yes && { skip_next=no; continue; }; \ case $$flg in \ *=*|--*) continue;; \ -*I) strip_trailopt 'I'; skip_next=yes;; \ -*I?*) strip_trailopt 'I';; \ -*O) strip_trailopt 'O'; skip_next=yes;; \ -*O?*) strip_trailopt 'O';; \ -*l) strip_trailopt 'l'; skip_next=yes;; \ -*l?*) strip_trailopt 'l';; \ -[dEDm]) skip_next=yes;; \ -[JT]) skip_next=yes;; \ esac; \ case $$flg in \ *$$target_option*) has_opt=yes; break;; \ esac; \ done; \ test $$has_opt = yes am__make_dryrun = (target_option=n; $(am__make_running_with_option)) am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ target_triplet = @target@ subdir = xetex ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) DIST_COMMON = $(srcdir)/Makefile.am $(dist_pkgdata_DATA) \ $(am__DIST_COMMON) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = AM_V_P = $(am__v_P_@AM_V@) am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) am__v_P_0 = false am__v_P_1 = : AM_V_GEN = $(am__v_GEN_@AM_V@) am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) am__v_GEN_0 = @echo " GEN " $@; am__v_GEN_1 = AM_V_at = $(am__v_at_@AM_V@) am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) am__v_at_0 = @ am__v_at_1 = SOURCES = DIST_SOURCES = am__can_run_installinfo = \ case $$AM_UPDATE_INFO_DIR in \ n|no|NO) false;; \ *) (install-info --version) >/dev/null 2>&1;; \ esac am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ *) f=$$p;; \ esac; am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; am__install_max = 40 am__nobase_strip_setup = \ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` am__nobase_strip = \ for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" am__nobase_list = $(am__nobase_strip_setup); \ for p in $$list; do echo "$$p $$p"; done | \ sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ if (++n[$$2] == $(am__install_max)) \ { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ END { for (dir in files) print dir, files[dir] }' am__base_list = \ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' am__uninstall_files_from_dir = { \ test -z "$$files" \ || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ $(am__cd) "$$dir" && rm -f $$files; }; \ } am__installdirs = "$(DESTDIR)$(pkgdatadir)" DATA = $(dist_pkgdata_DATA) am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/mkinstalldirs \ README DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CAT_PATH = @CAT_PATH@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DATE_PATH = @DATE_PATH@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ ENCHANT_CFLAGS = @ENCHANT_CFLAGS@ ENCHANT_LIBS = @ENCHANT_LIBS@ EXEEXT = @EXEEXT@ FIND_CURL = @FIND_CURL@ FIND_DIFF = @FIND_DIFF@ FIND_GPP = @FIND_GPP@ FIND_MERGE = @FIND_MERGE@ FIND_PATCH = @FIND_PATCH@ FIND_PATH = @FIND_PATH@ FIND_TAR = @FIND_TAR@ FIND_XARGS = @FIND_XARGS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_LIBS = @GLIB_LIBS@ GOBJECT_CFLAGS = @GOBJECT_CFLAGS@ GOBJECT_LIBS = @GOBJECT_LIBS@ GREP = @GREP@ GREP_PATH = @GREP_PATH@ GTHREAD_CFLAGS = @GTHREAD_CFLAGS@ GTHREAD_LIBS = @GTHREAD_LIBS@ GTKSOURCEVIEW_CFLAGS = @GTKSOURCEVIEW_CFLAGS@ GTKSOURCEVIEW_LIBS = @GTKSOURCEVIEW_LIBS@ GTK_CFLAGS = @GTK_CFLAGS@ GTK_LIBS = @GTK_LIBS@ GUNZIP_PATH = @GUNZIP_PATH@ GZIP_PATH = @GZIP_PATH@ HAVE_CXX11 = @HAVE_CXX11@ HEAD_PATH = @HEAD_PATH@ ICONV_PATH = @ICONV_PATH@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBSOUP_CFLAGS = @LIBSOUP_CFLAGS@ LIBSOUP_LIBS = @LIBSOUP_LIBS@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MAKE_PATH = @MAKE_PATH@ MKDIR_P = @MKDIR_P@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PANGO_CFLAGS = @PANGO_CFLAGS@ PANGO_LIBS = @PANGO_LIBS@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SORT_PATH = @SORT_PATH@ SQLITE_CFLAGS = @SQLITE_CFLAGS@ SQLITE_LIBS = @SQLITE_LIBS@ STRINGS_PATH = @STRINGS_PATH@ STRIP = @STRIP@ TAIL_PATH = @TAIL_PATH@ TEE_TOUCH = @TEE_TOUCH@ VERSION = @VERSION@ WEBKIT_CFLAGS = @WEBKIT_CFLAGS@ WEBKIT_LIBS = @WEBKIT_LIBS@ XML2_CONFIG = @XML2_CONFIG@ XML_CPPFLAGS = @XML_CPPFLAGS@ XML_LIBS = @XML_LIBS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ ac_ct_CXX = @ac_ct_CXX@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ packagedatadir = @packagedatadir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target = @target@ target_alias = @target_alias@ target_cpu = @target_cpu@ target_os = @target_os@ target_vendor = @target_vendor@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ dist_pkgdata_DATA = *.tar.gz EXTRA_DIST = README CLEANFILES = *~ all: all-am .SUFFIXES: $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu xetex/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --gnu xetex/Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): install-dist_pkgdataDATA: $(dist_pkgdata_DATA) @$(NORMAL_INSTALL) @list='$(dist_pkgdata_DATA)'; test -n "$(pkgdatadir)" || list=; \ if test -n "$$list"; then \ echo " $(MKDIR_P) '$(DESTDIR)$(pkgdatadir)'"; \ $(MKDIR_P) "$(DESTDIR)$(pkgdatadir)" || exit 1; \ fi; \ for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; \ done | $(am__base_list) | \ while read files; do \ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(pkgdatadir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(pkgdatadir)" || exit $$?; \ done uninstall-dist_pkgdataDATA: @$(NORMAL_UNINSTALL) @list='$(dist_pkgdata_DATA)'; test -n "$(pkgdatadir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ dir='$(DESTDIR)$(pkgdatadir)'; $(am__uninstall_files_from_dir) tags TAGS: ctags CTAGS: cscope cscopelist: distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done check-am: all-am check: check-am all-am: Makefile $(DATA) installdirs: for dir in "$(DESTDIR)$(pkgdatadir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: if test -z '$(STRIP)'; then \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ install; \ else \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ fi mostlyclean-generic: clean-generic: -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-generic mostlyclean-am distclean: distclean-am -rm -f Makefile distclean-am: clean-am distclean-generic dvi: dvi-am dvi-am: html: html-am html-am: info: info-am info-am: install-data-am: install-dist_pkgdataDATA install-dvi: install-dvi-am install-dvi-am: install-exec-am: install-html: install-html-am install-html-am: install-info: install-info-am install-info-am: install-man: install-pdf: install-pdf-am install-pdf-am: install-ps: install-ps-am install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-am -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-generic pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-dist_pkgdataDATA .MAKE: install-am install-strip .PHONY: all all-am check check-am clean clean-generic cscopelist-am \ ctags-am distclean distclean-generic distdir dvi dvi-am html \ html-am info info-am install install-am install-data \ install-data-am install-dist_pkgdataDATA install-dvi \ install-dvi-am install-exec install-exec-am install-html \ install-html-am install-info install-info-am install-man \ install-pdf install-pdf-am install-ps install-ps-am \ install-strip installcheck installcheck-am installdirs \ maintainer-clean maintainer-clean-generic mostlyclean \ mostlyclean-generic pdf pdf-am ps ps-am tags-am uninstall \ uninstall-am uninstall-dist_pkgdataDATA .PRECIOUS: Makefile # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: bibledit-gtk-4.9/xetex/ptx2pdf.tar.gz000664 000766 000024 00000105522 12221507127 017734 0ustar00teusstaff000000 000000 [Fш=ے%mIm˱vF8X,ILS$ARV=GWSU$%3$?X˩sU)+Y8{?K_?zgϻ_~/g&RoU~NEzy_g~w/˿z;;{3q:QTL b֟k5KseէwԎ6iɣTOO.CM7f|I/4cZΣ ʅuQ2* ZB-ti< Dxf@0X\2U~Q ڐNK?J"H>c$"k?״!T~QAD0 VKE.00ݘ]ac% ;QHWuQQ8(W.edNfWj j&1[MX20UI&`'$S8h0bX0\ElRE,ּ/L|:(-$lqAj&aꊯY靮)G`dTH@H(u90!OʈD9OuGx?R7W&?_F}avV=:NՏOE+/'?w'[͍V/#_v|zM{/&baԀn`>߼Sn<w\}<|8V?]oy560ttS苺y~q!v9]_OWP:}1b\?ο1IW5/5h~Ct9 Y\]Niȼ?oFz|#SuŀhH  x -O7 w"}Eam:e}H%oĘz(Y([xI 5i[J`uThh~˴ c-*B;Jp,hV4GWD"LtA^=' u C},MK 1vjy_izһ<}OBFҢYOFK= 4ͩiFN'ۅTOL\4IzrAV \gއ^\t)- K][4cK %=mTm(RAn-Z'L/%f\,Rt~b( V5h-G&0,S4R19[HCV]~)$5  8D#Ǜԏih&֣}n@=v-/vX$\ 4PN[2O=kMv뮢t)4pj6)Є.2ZvUF:џY8쫑Ԉ(Smk! K2 ,lQB}!Z y{*i(7>Tޤ-dZkebd 0fڬö1mc=BȎ~}z/p<>gP L4t[^ZNumwNP/Mdk."ehZE4sDVr*)ggFMyat #}=D}[δ_%9(7{'@$hsjH?%¨EIV޷am8 r3.gx2P]b\=rf2RioeLg䘈5RV'48B:X臿)AC*܊~3#Id@U'KTQڞkQ{/ULVNHcMfbh]Rlӥ<)#4-Ll P%EPCCc>CP^@ 穏r,\%5,v9;,(.rC{1թOtgQSuEvI3X+D*AQIlĒ*g}$r*/8iή}=-U %zw:NCb̏ɧ˩zriqZy6; n&B~[v'vsmWpt(23X0% Eut;R9asL (z4|z=$5 5@wgucKtKJDfSXD ڔdߪs QB[(fP%DNL*^F:΁XS5"YKFӂIt9"mi G5:ic.c0g̸ae 30 0 ĹY:,wRW1Ŷ,OYLǻ"1a9K4BNXOjK&1 6m/Op#**aF Unj ƭv%kȦڢC{Smkm*Xs$pKzRh& ˧f8CWp.a8~Sn3,nqb2LY::-yS$12j}F{coRRty8Q`uQ_/fWU8=إܷV$g^zncҕ2_A}!\ip/;ypW:q8)3m_|&}k&w&B){/^J7hcTxM(O3l>hb JܞNkIr"A[Gw[:@Ox0wW9KR ;pUuMk!orj6cOor^y.GÎw.1V=Ա/ {`E%wFu_޾զ~ 5)9)-1R~YU}77^V>hR is T\bY*RvCzD1h֖F8yjOEL` ]iW#sUr\Ow5wHuQ} |Wݯl̝WSN4ՔI=DZZ̷)fϢSu'#x6iZWj?W/5Hv e+Wry Uz}Â`q]H|ϓ~t˶^Chw4Oz !(fZkr!m|6x "-dphLn>xX䞁 #e*qdP`4]]U֢#O3$b+zqcY w< $䉀bnAB$}u"B*~M&>'MtH K, "C;>tJMҋ8o'qa\'|ZI?֩D}(eHIĴܠIĝF37.6bӛ7[\(˘ٴh;R[T,gLTi>}r)z 7{֢W)mo ]j2aE>)XgAk\-eN^쨺s[yk!VEi5xj};0?ў' bBj2 OZvt]U:utdZUMOer9o4ٹ 7l0ej,HfZyq@F]K*]'4j") PlgޭDbfY]I_r7yh=Jhlbq߮jM|nJ|E גWq,i9zxI875vV(fwpظü}$O6gdn`爎6< c~c(IU+AҺfwD Ǜa-Yi22 \PCe?\sɼ kD 赧 HJ~o19]tbwwbw[E| tykz"7M~{1Vajns?jMΰkkuEckhѽzq6Q"rQoaѩ=e'xXrxe,>KR؇v\AT%N@W(U}~c6銃H$\p_k|dWS -$ B@YBP<_>닎BiL!?-V޹!;M(L5Mxj/~U;uX>hv\뾣oʊI&{.͐A 'KVQn&='ە!$wO~>(by zU[ ~]K ~g|OJKR Kcxz 5r&uDx?iݶ:E_BS @E,( %*V"Km'1X$K`xO~:/cO_yUkd;٦1Qjm֬YʷYaѽJĚsyGCW<=&Sދ*A"p\ \j&EW`!ir9&ae2֋TxO:243 |4'p r ". /Rew3|Gdj~O/ut|W{/=~*Wi}˚y:mdiT|;G2cf4#^bŷ~6i;Gsx/0]8&nФpעR1WJd+Vl]}A(3w$crY 8|DŽA^pMΔIO~6U=ݱV~@rK'(͚z⤦K yikV p8!ӉmDd")*e.B̜)bMry&(sjF5`C~ֆRIװ 5 (t7 M/ِ\,g>![2Ä%+`c906Yӊ<8"hc;3E3R Lҗuju/,^fgz<81{"*a Ӛ'3od(!–erΨ尧nVo7gUVi]|a)gk8+D&< 32b`o{Fͮm Itp"^ts9t$uvi3xրYI%CC4xy!UۛtG&'%!6m9ȉ!(2MDq;-c J5Y*c }B9`T'$]}Ǹ9*" 6 ucoHu, ˞9cN>p%O8" vo)[ Ep(@+w3DjhC@w`D*EHp3( ۍv/etwDěC$8^ec>p-xړ*z'}[/mݽ[:(~[9ݖ!>KD+? x:eirjmrdM:XuK=>?s} !ؕP߮nPڨ ϵPnT{-Rt 5%X3CzG'nyVѱlʒT;*?@9+()\-0.Hs;s)!mt :BAlԗ(j逼q+߼ moh־~c]ZI`)G[+^%jJ9Ab ri? j '#5ŎZq%fO*Zb˟ 9I`!U~|{Xb6q@kn+[0VR ǎ3MGe]%IG4LYX~3z s5fΎ:9^٬,Vp[XMrl̨ps9pIbkz6(},LX/mlCh/ 4ʚ*q˲ܶ罃i?ݮ:7 ACVS7}(pDG0R\y,6JVQd.ץ9$Ot˭zTӬz4!WDVyɭW6*RrFh2bq{%9H 'Q3Pxa̬Cc3)hSH'Msa]sN۽woϫG7aS喉.J"-|=Ǽdm6w3kC,Ȝ1ׯ{)-/ i z&(𧩥.ܶd%"E0Vg~T00ORg[95^ (z [2XnG H.iX'0A 4B"%h/(aDy̾:2\$,Z_q#H.Xr`>7K '[3&n(=s7㇮02vƓ4[h(hc;W ^ln(T,A1AEC^ď(BSƁvLHALIe] bNPHCs+u5gra&qveÉPR/d %7j\"٬h|V ~%~ÐFsmzl%\Zc]:[ <ae.G@Fbژ{mR&F،mQ+8HEq,n#B 67j& &*6wtJ&>JJ"LN=S2"Vt#C֜~3^vsIaKbEE7V㒻M|1I|eWU S2K,lG &?/>ry@λɇ:+Gm//2g*+aʞd0͙ߵM-*[|_eÜ [}WTqoh,5/N}&_w߳˗Vkx=owξ_y`]Viݧ""BhYCJFti*HURȐ +{lio^Jq*|a|V`ovx1$! F,5r&0Fd 'EjI)0M2YލXdGq#͝y?P'nfÉ9rۡ/tSURM͆^dm-y_jZM,DzLP&Gy,8C凫7?ݗ<t?|J&sIX%~z2vϿ``kK{ e}2yAAAjb){ȍE(|9C[P8)sA21 0jG*GIGxQЎy>a ]כ$xIq[ir:ݡƃO$FZ jxG6UDI(UoC )Mq2;}Z%8vq4\9~#l sz@Dl<SG)fac3EʲQ͊f#}`+1cd fbJ @ AƲz O)ȓrvM9&ùXDa|}݃o^<쾅+U`z|a5v_)y<}g|sm y՛/ū/~}0y5u*^E_Bދ/TW+&/w7_yvZmW;%헻/_Y{ujW/}}`pVO_Ck2 ?LE2Sk4%s( d)Bˡ€7*#8,ryp9ai(`8 \$ dώLl }{voo/yMw+ ^{wp_Wv) KU5DRyZ ܨe5vMCfjw>}~4o_FM0y&NĮreΠ6tCVtTxa*BN7h~5i-&wE5rھFBJduWw:3LT1@ao|XR?_"uȄtDҪn#(.,1+( BPɆq$AP}f(PB!*$qbFc.KO*F.BrPn b.iIƟ K Jֵ֨83#~Q SZɩrY?$`uz n }vy'0YF7Z(e_kmMC! n+.eˆAZz9UΛL.2׀+Vƀ* Vk̑Mq#ƒ(X*fD09ņg]ɤYY+%@wT`I%;>1D!M4(?̎Zo6iq5lγKGlN eOs|늎v2t<$ނQyTAΓTɪ.PNpQ8:<3s2Q')pTL1guB ̈́pgdc=wu5kͯ_CE+lUCfn\:#NEx N;XgN֏z @I  K1[kdxJu2'Rz5;{ wq,]ZI`6l,`ńx0mj7qi(ȝ,qR,)-m=vڽc!!-:TڗZ_ ҥ]3&lc\y Ƕ Ey> 坘G& WܬasS6u2[3mF|4fٌH("NCq%ZZ}aUx2oT3C0f>I;Vt&2|ZZ2M7Ot!jxBqrP-J;t6>"`% b~&\Ⱦ%09f!^q.eꐸtk3 @/3kPӣ1z~_x l  Ҭ*HF3;_<3&&cvmFHIۏޓc_ˎ桔ʯy/y9ZhgO,D*,&ņ?ՇrG~Vjʼnt,5)f$] |F~IE*'tTvdC GBڻS_ ݗXn Xi|`ݰ\А>gۯe';@,!s՜GR2xr9 bJG׳J2N*eMZ?L$G=*>~Z)ij-n(љ@9=p29 Z9^'r@]5?^g1 s0B{{ny(xP#xg?}*2.} CG̽b~ݸMH#rr=ڨd57:ٓ퇃2rԸfKi(>#$\Rh!,B;vzY,hߨ{˨-ҽ6.|b?צXX3|Vg]|oEX?I0cN;&6wߟ)w;~HYBE@?ϸHmfOs[Z rWsWcmn-wCU҆YnoṸ?&G'(B[}ZFg}qg,{RNznl2>FqBѓJ!T \2ne(e;|閘DM%8 Ӈ=\3KB9p1e%^p睌pצ&c!t=7k_;i%[hf}۫,#EZuYQ{\w5ddzxG*Zf2M k~A6NY\-QmX,Ds3%V+W,aіz` III'3rHNkze`bp12WP0>"d+ƧF܁9)1)]NU8و+ F9plxTIdDʯ +ُpQ^u4bM 2+ *sv>v{4W-HV6rU8YhЧsD>e5T7m=i^K+@QDj~+\4EdyS-(6k?!rr~G"J7^wcԟOs2ߛgm3L[]G_ ,85 ?;WP9J1ɓz|e tedz+\- @tN)E^3{`Bi)y(Gqi㘇,;JU .p[C+"@Qx:̇gy\&Sg kTg= Lbl#70Y|0OK5}~>Qa<)s%uF]~aG=4UC8N1G) #-C|tӕΣT*\zR5d] jt5< &}d#-e{XFwҖw4N !0i<3j aK)Wmj!to{&ص>68ȴӻ׈y"x1Gb,3wCq-AR~q%>iT _6헯_WOIH:7O1wHJ"b]L`HN[wj4 L;ݯ6u{O_kV9*?!tɧP'#@tx\uz)j@ "l 3 ^=26_1쉡y5-20_JfqbhRNMK$3Nsw1Z0|!jx5C]0p1$)OJަT g;7b>B+XTe5)-xiX{ 6=wTPy8'DˌձԵxIay͹{!Fм[ři YY0pQT-•f`!!]VTEq !+0i9f6>u*-S.,ʬRY0r${S{45&+CY,D_ts|S-  n3LBU~dЛF[ۍu},Nw~)?nW 9(IDMzHV TWo#&!ؒ>'saI ( vOɳ3"9f+̿tIb]7] TRj,u,JImӤ:/䍢4'on`k%m;E& ?99gv&;i\b(;Rn3^}4JO$^ %joIjCAݳ r/{ }NcZH-82l#CO=.x =MHʇ RiBEt1@kGyF&QLɉ'쒘&/`#veWK\t3Tꨙ؄w=#L%=Dʴ4Q[[K 8QZ^M rv{[xedٺO3oOX쫍̇]`M' O K7wLx–D^{sNdњugN)D5b$KmEZ pk6%}K.:L ڬ^ZyS*/lM"Bz+J4 ztv^6/܋嗀_@η0Ne7֡lM)z*j[_)q=BS/؛ d7[S kvhi:?2t<$wkB,Vg ۰yu d (mU.b2e_3f&.K Px"(4{FH] +*p[X*U4vbxR봿Jl;cjݿo66w?ÿ%w;/E==` &킿Q*1YPE9H ^;9w 0Pt΃Wz]¾EEWkBh8Xl@wK UD)z™J Yݚoc0`4x SM¡HPjriih E(y3ZH e7IDc٦tslAVq J5mzHx#FS쪆.Ad!F:uup\g@Sމq^#g?X%idv&;x_͘gl FR#|9:Xb{58yRI\v#Y2іL[1cũ\@h[Kzx?CQ 05&k׊>?1bF)nZPR_ q/y9EZ.HVhܫAםDžgXKc:WDKѕ V BH2cW>b'!9*{/SAg! D7PL{ Z53sbJϋ?kN;?/a6!Eb%4(xʹ8s=ͯ=m))> 1JO<rP{{%/ouX=O _P_bc (-zRS—0[o5qw٬hlx{K9},N{')W.|&tb|* iB$m]@.a<)Fڝ(Dā"_]x%}ˬJũ;Wh$7Lmj!u9BH<`*0\*Eqp缰|^s/ &zwI7}0FS aP6+}.z8KFO0SZI%K*\.0lR׿~_":^py  -kxr&?&uA| ~tqh$v^x$SjP,mu  R$>BDSLZl/8M bue6J~ҥ0Zn P Pp̓(bd0 c\?r)UP7e@g9 3׋n^3 HRxUzNp2L!<>!ҮY:p$ ϭ)}E6 `7!I;c "H:!Ru]̅wЉ)cY;_0bnPȣ);$1^9_Ns>GŖe+>NH|kdȑy..,O3zy$%FF,ǰ8n u'1ڧ@΍^6cp` $L9)DG݂؋7NԆ]۪Ou{$؀q`#+P; ^`9ȗ x=Hu9+QXPn-+ʣ;z0NN1 JӪ6~Z˖.qEɧϢL2B\2&h1sԷ䀔VO;Kr⇢bV|GC$Y@|)\:Gv_i?[[yi>X`ټ9},Ns~)7?R嘑x=\(FӋ1F)ZROc|mCGxvFj!(Q֙^%=h C*k`=!嘞blDhH?jqӥ"cQsk:Bj  vj_r}#h0W㨷,p'OUĩXh쏺 'ubzgv#r 4߱B&W5p*:*{/RΖR)%t;>4ݢ5[+H1" s_儗9vGc.*cov31l잨e[5 S<ӕq1'IMԁv=;?vNotl2LxnmQ?W#g&K(xD8f߼y.nG 3XNE:2})()GE<`j"ۗ@8)&&R X2@nB$ڣ^eYoiC-BpVH0ʏ]N[ˆ(lj0ZY_k9dYi>ɼu-9g%Ȉwqcm#l5BS9KRPF²賈C(Z1$ve%j/NzYV& [<7/ij{%A'l'[vG1-zC ~t[ɛќ|2'')J.v0#^#ԻbDeW𙈼11$4?\ 9qEQ6C9 <61{w-wGz?NSg>f.(Fs[]CQ}P~'BI=&[-8FqNE5= ]laֽdc(*J$*?{)c2Vbaj׌WH"Yzx48IxvrJ:V2r|r; ae^Į0:&@Vbqy ۝@ \6GM^O+gnL:A^pRɃߍɃgfOȌ[<^ U^Wl/_勤xb*]Fa$ru'K${HJBcLC֊&p?E=kfkz{^(x#SkEn^t|l%J5L z%Ev8aω~Bdg4N8!0i_-`XD>ž|H^!,+ /=]s-4q6LJ1d _ CI3H#O#ˆjcP6TUkXyw8KYag]4{ķk9vεW78 j^?y4(ڨ*yeBxܷ{bj_db9)R OT&]Z<*6lMj:h:9/sfF;Huo*.ѵ -b[n~Y0+LT[ڳ)W"'F> ;V-mۇ\^;Kʑ^RRk`2sK$xz]Ye*o1X,k[Yhgل̔ZgjgA&Wl@󩗒HgAAQ?vwn[{.cu.]__8[$@}2D99w%O7E{?O!,>L`+[>(Ry<`h V\tߝ%a$1i@tc}#~ǃt WHwzhc2:~ M@=4Ytb!`(nH(ȝCqgx|vFVr!|7*.fDN=ucu3YB+Fxsqz"slɕɇ< P6, &1A5VCx{߽w_+ =_jK$GI^UG8q*B \s Lw VoՋ =G߬y[F}~VzxJj}6\^[j 7VßP웪ڵ FGiA-::Aa+fԬ5W${mFe1H MJWIqKmoTBWdK CkF=9W'j0Gs6k=WѐȄ[Axa i)4,9AE4N|hjh+hcTX ~hL.wixpLnPq=ѪD^ &dI#H7^ yI krݢܴ*H͹V_ rN5k06qj űS]T.[!Z++˥_έFն[Z^TfHPnx~H9JEǮ͒e32(5FY|JqE[ùFV 6[.- H}@DEE^~`J+(͆~=>z&xwzZE!x'c`phcoќD7[1[=GGjMgixr1$ P<LSz~΢%$0/N~KDgԣu]E;8zUgmW,3XmV`b3A49_4U)2.R|P5HL{ST!ƨ̿sDKP`h4g`x%^x@$t.UP J6V3.G?cHѷWn|p].t 槜RqYol>npI;{Aݥ7z.jGj1CK&}aeeɢ;y1r@n`UѰBV\t iŦ@q࿨$qZsBs5?]Ig>IiUY0p_'@׀hdV46i^NMB!ޟBӒCyoh:;8јonfc<+oZWZRu`ȱ`O*e5'BvdX6,{AF8 dxޏdWFQEG tĭWEkl؅Cx%"θ`諱"M@ r @ 4q Nt!mI L>eVNNe)z߈ h$⭩6 .a7ʊ];%sPgZk|J\I| (\yXKZ>YXBs-q`tFq {HB ^Avr.@t,O]nǁlD^os@?f$x;$O8+og\کXPλg+N ʓC8؇W4^VaQd؅:6Rǀ}+,`'b4.J!TP]^~.gppt𵽂CqK.:[& / ntz =Az[(;ހ,L|*!M0/Qd\Xqqi1uȰy:ȩe/P,\ س +l>,ot6ɡf:Il8Q 1=0xea>3I!T!wBx#P".d6c|\C eFHC/<]cJ[$cn=?嬨64stk4:h\^7Z"L\3pLF[@ҍ CsF[b^gנp?j+U9iuMnG|}GF`g8º#*c$Wp-GpNVO|jr>`ց _'۠'tN7k[KpyUo$Ơzژ|e}%J(UJc*i9XRN"U5يBAFA ȑNe_M*&qq1\1r2ԑ(i{tBLjmp%Y]6'#J1iakN\xR& *c1kh)%l!;US(O3=Mm`(,Jb@5(JݼihC[)Oh'X@xo?" "Tې,>ɰ2 A.%!sƅ.#OwNћOz ]R4~2DN]:€d}L\Ƒsy\Qa6ˏϐ/%$|nPoQ0* q7>MD;|ߪҔ s\y%ED^nμ0yl9bvפ£U CL*F]9fJWN:oxOlknlU&6!m z)".I+O_~\ǀDjÆx& k,*N/J?gِ}phꅋҢ9勵[dQ򺥶%iT@2-o 4KQ gK/|<.ڱO[@V1OP8Ok< 552p"$)OaØ5/pL/$\CTQ2 K@ک2k0/h7 *+~E☜5X| 7Ac5]jƚf(vACbut%uF[q }g& , ˤf;Q{Vy6ɻ%D&cӽВ& V71M]K~;pXTiM.Lwnv%A?/,y|"]&Kpǖ\a ETp2tP4o6NnE tg0dx!n6uc\vR0qXWsT%0 ݼ|(̬t̶|B(yD*r~xIorwQ0=(MZ܏ (¨Ad~ 6(^<c13+ Ocָ+6MoXo47w~b# 7'x  %DS`z.P ke)2mSZ#2`Hi,]Ƕsܵ~cAh2hL,#K<H y7:B\Jyqs\eMoӟr0 %LKqc.kiK |^3 \M:S]\$^RGڽk4o'I9*$0Jh6A0u Wu^<wq<\dx{w)ĝP2TGs )hS~IlҲJW^*,7XbybUMli) /j6Qkzn62Z,ayeb+ZNA_ GYϘxjQYT.f !2V.s7VQ*72׹ ==@kIp0 Fs| k8Qz9 "\afrB5d&.yƘ1cz.xU\]E-:^#6A_ǔǎi hZ>p[=g2-F#S^*YM/l9}.&$ї8%lOFUanH$$sg*=ڒ. V_XIP{2ή0?WXhfga ؑWBy##,{ zv{@67ǛhمfhS*6zvvhXgj"^i0Y,ԢprqbNa ϊ>EvrjܒMV !+A/n2a4IjN>8X OU2Y3Fn΀`MG|P6F=} A04da1Ap2**=u2hΧe/da*Bٟg| xpҢܕg852@E_=A$ &GۓyLDLuW14jQWTj?17d(Tr~E}$cA[ U}OX!6'\}0M'h -] R%UF/soll,˝X OoY A_( L8i (%pVlO\h81dNQmk?+MZ "ZBa2_f([& HX(~@eq#ؼ§XmmKy!iNXc;KbhKtzvY1􇷻H⬛~谫WaMdS0Mh4|}VL/JE(bѨbQaK%~.C{N+}6+lv|qe;*BmyDC,Ǜx2#$EHaU:68 ,e)L)\9;LS2S 0f$JU*d[zfhb EtUTObk v6mc !|'5vps v% O9!Fb'H2\'=D9#e,O3!숍FzlD bORN{ m/0ĄF${hRbOF5 M=N5;1XV@zTiaEJ_47^T+徳GKmK]@O}n90iɉƓ}2h* .ӼC \@'2&~ Vsr/D\>:)'/#ΎnfHkG*ο[-E;u7e8%P Y:;4<@_!"`zTσyxϑDA'az@7ƑpЧ܁ȳ Wv}'d=8]JtwS*rA4,4y+@-7sKgqVͳрAx]0)yt^YPVZZ0#zӝٷZf~vL8"j5?d'{Q KoX8^p0hu{2pI0ɀ6 JB]6 Vt'ဃ\R?& /{)Pc\[jb%@G+Ļ YC$zWry#IbUb4;1FP2V0h751"OV0^`!W WZ+hS . r@R[\Hk]K|rцyaа_p~a9^SYVd9f*8wFyς6۶-[P\S>iRnSr,JhlxU[pgVwwWd-nx j)*KC*e63*`WY(˜B\gW0Y-;A:<hy&Y YъQ\},fL "M ; K1,];_YV6D4zWGNilG IcD) }}io~b,5,BES$DHJԿSۻIs6vv0Ç- |xgB~5 |.f$dp%f` =+W2@cM5rvcAxϲ0B:_yΟ]L[z]6f3u3شd$Zj}gON((:FoyFp@F8&)vot,&Z%xb&<$cWfr&68=ut Ymcٟ~q{#\j9&?W<\byz{/Hi .viԎ0T;ֲhnxF[zN{O OȜw;6C]L-V''鲽<քH3vhCf oVdHn#@Idr bKcu<K8(Ѱ[;.7oj@(*pV|Q_@ۙ'z<2/~0Xc(LˠW(2ٓ,O@4hmJHuɲ3[ {erve=/x43Co|_œ'Rc$m &EÚEutcWly\P2 d),#Ci&HߟŢRċd61GÚوxՄ8Ww2rC?[e@k^FPXV5~8L0 ]m@ O9[|Ir2}@Ҧ*qφ`BNZO=b|kJW[)i1D=#Xh$Qhf/׋o,vF5"WYԐ«B[NMo. ֿo횊{\ @,yK$s=>nnGn4n7v^c{g~g3Xwwwww߿&2; \ exit 1;; \ esac; \ has_opt=no; \ sane_makeflags=$$MAKEFLAGS; \ if $(am__is_gnu_make); then \ sane_makeflags=$$MFLAGS; \ else \ case $$MAKEFLAGS in \ *\\[\ \ ]*) \ bs=\\; \ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ esac; \ fi; \ skip_next=no; \ strip_trailopt () \ { \ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ }; \ for flg in $$sane_makeflags; do \ test $$skip_next = yes && { skip_next=no; continue; }; \ case $$flg in \ *=*|--*) continue;; \ -*I) strip_trailopt 'I'; skip_next=yes;; \ -*I?*) strip_trailopt 'I';; \ -*O) strip_trailopt 'O'; skip_next=yes;; \ -*O?*) strip_trailopt 'O';; \ -*l) strip_trailopt 'l'; skip_next=yes;; \ -*l?*) strip_trailopt 'l';; \ -[dEDm]) skip_next=yes;; \ -[JT]) skip_next=yes;; \ esac; \ case $$flg in \ *$$target_option*) has_opt=yes; break;; \ esac; \ done; \ test $$has_opt = yes am__make_dryrun = (target_option=n; $(am__make_running_with_option)) am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ target_triplet = @target@ subdir = windows ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) DIST_COMMON = $(srcdir)/Makefile.am $(dist_pkgdata_DATA) \ $(am__DIST_COMMON) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = AM_V_P = $(am__v_P_@AM_V@) am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) am__v_P_0 = false am__v_P_1 = : AM_V_GEN = $(am__v_GEN_@AM_V@) am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) am__v_GEN_0 = @echo " GEN " $@; am__v_GEN_1 = AM_V_at = $(am__v_at_@AM_V@) am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) am__v_at_0 = @ am__v_at_1 = SOURCES = DIST_SOURCES = am__can_run_installinfo = \ case $$AM_UPDATE_INFO_DIR in \ n|no|NO) false;; \ *) (install-info --version) >/dev/null 2>&1;; \ esac am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ *) f=$$p;; \ esac; am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; am__install_max = 40 am__nobase_strip_setup = \ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` am__nobase_strip = \ for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" am__nobase_list = $(am__nobase_strip_setup); \ for p in $$list; do echo "$$p $$p"; done | \ sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ if (++n[$$2] == $(am__install_max)) \ { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ END { for (dir in files) print dir, files[dir] }' am__base_list = \ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' am__uninstall_files_from_dir = { \ test -z "$$files" \ || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ $(am__cd) "$$dir" && rm -f $$files; }; \ } am__installdirs = "$(DESTDIR)$(pkgdatadir)" DATA = $(dist_pkgdata_DATA) am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/mkinstalldirs \ README DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CAT_PATH = @CAT_PATH@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DATE_PATH = @DATE_PATH@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ ENCHANT_CFLAGS = @ENCHANT_CFLAGS@ ENCHANT_LIBS = @ENCHANT_LIBS@ EXEEXT = @EXEEXT@ FIND_CURL = @FIND_CURL@ FIND_DIFF = @FIND_DIFF@ FIND_GPP = @FIND_GPP@ FIND_MERGE = @FIND_MERGE@ FIND_PATCH = @FIND_PATCH@ FIND_PATH = @FIND_PATH@ FIND_TAR = @FIND_TAR@ FIND_XARGS = @FIND_XARGS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_LIBS = @GLIB_LIBS@ GOBJECT_CFLAGS = @GOBJECT_CFLAGS@ GOBJECT_LIBS = @GOBJECT_LIBS@ GREP = @GREP@ GREP_PATH = @GREP_PATH@ GTHREAD_CFLAGS = @GTHREAD_CFLAGS@ GTHREAD_LIBS = @GTHREAD_LIBS@ GTKSOURCEVIEW_CFLAGS = @GTKSOURCEVIEW_CFLAGS@ GTKSOURCEVIEW_LIBS = @GTKSOURCEVIEW_LIBS@ GTK_CFLAGS = @GTK_CFLAGS@ GTK_LIBS = @GTK_LIBS@ GUNZIP_PATH = @GUNZIP_PATH@ GZIP_PATH = @GZIP_PATH@ HAVE_CXX11 = @HAVE_CXX11@ HEAD_PATH = @HEAD_PATH@ ICONV_PATH = @ICONV_PATH@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBSOUP_CFLAGS = @LIBSOUP_CFLAGS@ LIBSOUP_LIBS = @LIBSOUP_LIBS@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MAKE_PATH = @MAKE_PATH@ MKDIR_P = @MKDIR_P@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PANGO_CFLAGS = @PANGO_CFLAGS@ PANGO_LIBS = @PANGO_LIBS@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SORT_PATH = @SORT_PATH@ SQLITE_CFLAGS = @SQLITE_CFLAGS@ SQLITE_LIBS = @SQLITE_LIBS@ STRINGS_PATH = @STRINGS_PATH@ STRIP = @STRIP@ TAIL_PATH = @TAIL_PATH@ TEE_TOUCH = @TEE_TOUCH@ VERSION = @VERSION@ WEBKIT_CFLAGS = @WEBKIT_CFLAGS@ WEBKIT_LIBS = @WEBKIT_LIBS@ XML2_CONFIG = @XML2_CONFIG@ XML_CPPFLAGS = @XML_CPPFLAGS@ XML_LIBS = @XML_LIBS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ ac_ct_CXX = @ac_ct_CXX@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ packagedatadir = @packagedatadir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target = @target@ target_alias = @target_alias@ target_cpu = @target_cpu@ target_os = @target_os@ target_vendor = @target_vendor@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ dist_pkgdata_DATA = Readme* EXTRA_DIST = README bibledit* PORTING CLEANFILES = *~ all: all-am .SUFFIXES: $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu windows/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --gnu windows/Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): install-dist_pkgdataDATA: $(dist_pkgdata_DATA) @$(NORMAL_INSTALL) @list='$(dist_pkgdata_DATA)'; test -n "$(pkgdatadir)" || list=; \ if test -n "$$list"; then \ echo " $(MKDIR_P) '$(DESTDIR)$(pkgdatadir)'"; \ $(MKDIR_P) "$(DESTDIR)$(pkgdatadir)" || exit 1; \ fi; \ for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; \ done | $(am__base_list) | \ while read files; do \ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(pkgdatadir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(pkgdatadir)" || exit $$?; \ done uninstall-dist_pkgdataDATA: @$(NORMAL_UNINSTALL) @list='$(dist_pkgdata_DATA)'; test -n "$(pkgdatadir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ dir='$(DESTDIR)$(pkgdatadir)'; $(am__uninstall_files_from_dir) tags TAGS: ctags CTAGS: cscope cscopelist: distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done check-am: all-am check: check-am all-am: Makefile $(DATA) installdirs: for dir in "$(DESTDIR)$(pkgdatadir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: if test -z '$(STRIP)'; then \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ install; \ else \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ fi mostlyclean-generic: clean-generic: -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-generic mostlyclean-am distclean: distclean-am -rm -f Makefile distclean-am: clean-am distclean-generic dvi: dvi-am dvi-am: html: html-am html-am: info: info-am info-am: install-data-am: install-dist_pkgdataDATA install-dvi: install-dvi-am install-dvi-am: install-exec-am: install-html: install-html-am install-html-am: install-info: install-info-am install-info-am: install-man: install-pdf: install-pdf-am install-pdf-am: install-ps: install-ps-am install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-am -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-generic pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-dist_pkgdataDATA .MAKE: install-am install-strip .PHONY: all all-am check check-am clean clean-generic cscopelist-am \ ctags-am distclean distclean-generic distdir dvi dvi-am html \ html-am info info-am install install-am install-data \ install-data-am install-dist_pkgdataDATA install-dvi \ install-dvi-am install-exec install-exec-am install-html \ install-html-am install-info install-info-am install-man \ install-pdf install-pdf-am install-ps install-ps-am \ install-strip installcheck installcheck-am installdirs \ maintainer-clean maintainer-clean-generic mostlyclean \ mostlyclean-generic pdf pdf-am ps ps-am tags-am uninstall \ uninstall-am uninstall-dist_pkgdataDATA .PRECIOUS: Makefile # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: bibledit-gtk-4.9/windows/PORTING000664 000766 000024 00000007763 12221507127 016630 0ustar00teusstaff000000 000000 This is a description how Bibledit was ported to the Windows platform. The solution was chosen to compile on a Windows host with MinGW. The libgen.h header. This is not in MinGW. The solution was to remove the need for libgen.h. Package sqlite3. Solution: from www.sqlite.org the source tarball was downloaded and installed on Windows, using ./configure --prefix=/usr; make; make install. TCP/IP communications in windowsoutpost.h/cpp. Some header files were not found, e.g. inet.h, netdb.h, netinet/in.h, socket.h. The best thing to do seems to port these portion to using winsock.h instead. Sources: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnucmg/html/UCMGch10.asp section Sockets and Networking, and the links on that page to the Winsock documentation. http://www.google.com/search?hl=en&q=ioctl.h+site%3Amsdn.microsoft.com&btnG=Google+Search The temporal solution is to remove support for the Outpost for the time being. todo Port TCP/IP communications to winsock.h TCP/IP communications in httpd.h. Some header files were not found, e.g. inet.h, netdb.h, netinet/in.h, socket.h. The best thing to do seems to port these portion to using winsock.h instead. Sources: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnucmg/html/UCMGch10.asp section Sockets and Networking, and the links on that page to the Winsock documentation. http://www.google.com/search?hl=en&q=ioctl.h+site%3Amsdn.microsoft.com&btnG=Google+Search The temporal solution is to remove support for the httpd for the time being. todo Port TCP/IP communications to winsock.h Filename matching. Header file fnmatch.h not found. Used in referenceutils.cpp, bible.cpp, tidy.cpp. Glib has Glob-style pattern matching that could be used for a replacement, but it does not support the '[...]' character ranges that bibledit needs. Solution: Use a unix wrapper for it, so that the original fnmatch is used on Unix, and a wrapper for on Windows. Take some version of fnmatch.h and fnmatch.c, and insert it in our code. Linux Sigals. Information: search in google for: SIGPIPE site:msdn.microsoft.com SIGPIPE undeclared, and SIGUSR1 too. Happens in mainwindow.cpp. Solution: Don't use them in Windows. File #include not found. Solution: If WIN32 is defined, skip the function using this header file, and just return the Windows variable. Date and time functions, localtime_r was undeclared. Solution: Use Glib's portable date and time functions. Function getuid () not declared on Windows. Solution: Don't use it on Windows. During linking, it does not find fnmatch. Solution: Don't use that library on Windows. Compile fnmatch.h/c and include the files. Using amperand (&) to start programs in the background through system() doesn't work. It waits till the child is ready. Solution: Use Glib's functions for spawning processes. A DOS box becomes visible in Windows. Solution: In the link step add a -mwindows switch to the command line. Add this switch in the autotools using a WIN32 definition. Creating directories that already exist. In Unix, the --parent switch ensures no complains are made about that. In Windows, the native mkdir complains. Solution: Let it write the output to /dev/null, or "nul" on Windows. PACKAGE_DATA_DIR is not found on Windows. Solution: Use a wrapper that works both in Linux and Windows. Subprocessed called create a DOS window. Solution: http://www.codeproject.com/win32/runsilent.asp. Let the popen calls go through the new spawning object too. todo: See http://delphi.about.com/od/windowsshellapi/l/aa080304a.htm, or search google for "listing windows". Processes are not seen with "ps ax". Solution: todo: Solve When asking Yes/No, the wrong button has focus, see when deleting note. todo: Solve. Zip and unzip are not found on Windows. Solution: Download the zip and unzip packages from http://www.info-zip.org and include the two executables with the installation package. todo: Include in installation package. Terminating process. todo: See http://win32.mvps.org/processes/fkill.cpp bibledit-gtk-4.9/windows/README000664 000766 000024 00000002242 12221507127 016426 0ustar00teusstaff000000 000000 How to make a Windows distribution for Bibledit. Install Cygwin, include all the libraries needed, as described, and install Bibledit on it. Within Cygwin, run file cygwin.clean. This file is in the bibledit tarball. (This is to make the cygwin installation a bit smaller.) Close X and reboot Windows. (This is so that the installer does not exit on locked files.) Remove all the users from the home directory, e.g. Administrator, Joe, etc., so that we remain with a clean home directory, without any users. Move the newest XEP installation file to /usr/share/bibledit: the zipped installation package (the license is there already). (This is so that Bibledit automatically recognizes and installs XEP on startup.) Install the Bibledit Windows Outpost on Windows. (This is so that it gets included in the bibledit distribution, and Bibledit can automatically start it when needed.) Download and install Inno Setup on Windows, from http://www.jrsoftware.org. Modify the version number in the bibledit.iss file. Copy it to the Windows installation Run Inno Setup, and compile the bibledit distribution. Rename the distribution so that it is named like bibledit-setup-x.x.exe. bibledit-gtk-4.9/windows/ReadmeWindows.wri000664 000766 000024 00000000453 12221507127 021043 0ustar00teusstaff000000 000000 To start Bibledit, click the Bibledit icon. A terminal window will open, with some information depending on your configuration. This information can be disregarded, even if it speaks about passwords. In that terminal window, type bibledit and then press Enter. Bibledit will start. bibledit-gtk-4.9/usfm/Makefile000644 000766 000024 00000046722 12517415743 016511 0ustar00teusstaff000000 000000 # Makefile.in generated by automake 1.15 from Makefile.am. # usfm/Makefile. Generated from Makefile.in by configure. # Copyright (C) 1994-2014 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. am__is_gnu_make = { \ if test -z '$(MAKELEVEL)'; then \ false; \ elif test -n '$(MAKE_HOST)'; then \ true; \ elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ true; \ else \ false; \ fi; \ } am__make_running_with_option = \ case $${target_option-} in \ ?) ;; \ *) echo "am__make_running_with_option: internal error: invalid" \ "target option '$${target_option-}' specified" >&2; \ exit 1;; \ esac; \ has_opt=no; \ sane_makeflags=$$MAKEFLAGS; \ if $(am__is_gnu_make); then \ sane_makeflags=$$MFLAGS; \ else \ case $$MAKEFLAGS in \ *\\[\ \ ]*) \ bs=\\; \ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ esac; \ fi; \ skip_next=no; \ strip_trailopt () \ { \ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ }; \ for flg in $$sane_makeflags; do \ test $$skip_next = yes && { skip_next=no; continue; }; \ case $$flg in \ *=*|--*) continue;; \ -*I) strip_trailopt 'I'; skip_next=yes;; \ -*I?*) strip_trailopt 'I';; \ -*O) strip_trailopt 'O'; skip_next=yes;; \ -*O?*) strip_trailopt 'O';; \ -*l) strip_trailopt 'l'; skip_next=yes;; \ -*l?*) strip_trailopt 'l';; \ -[dEDm]) skip_next=yes;; \ -[JT]) skip_next=yes;; \ esac; \ case $$flg in \ *$$target_option*) has_opt=yes; break;; \ esac; \ done; \ test $$has_opt = yes am__make_dryrun = (target_option=n; $(am__make_running_with_option)) am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) pkgdatadir = $(datadir)/bibledit-gtk pkgincludedir = $(includedir)/bibledit-gtk pkglibdir = $(libdir)/bibledit-gtk pkglibexecdir = $(libexecdir)/bibledit-gtk am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = i686-apple-darwin14.3.0 host_triplet = i686-apple-darwin14.3.0 target_triplet = i686-apple-darwin14.3.0 subdir = usfm ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) DIST_COMMON = $(srcdir)/Makefile.am $(dist_pkgdata_DATA) \ $(am__DIST_COMMON) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = AM_V_P = $(am__v_P_$(V)) am__v_P_ = $(am__v_P_$(AM_DEFAULT_VERBOSITY)) am__v_P_0 = false am__v_P_1 = : AM_V_GEN = $(am__v_GEN_$(V)) am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) am__v_GEN_0 = @echo " GEN " $@; am__v_GEN_1 = AM_V_at = $(am__v_at_$(V)) am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) am__v_at_0 = @ am__v_at_1 = SOURCES = DIST_SOURCES = am__can_run_installinfo = \ case $$AM_UPDATE_INFO_DIR in \ n|no|NO) false;; \ *) (install-info --version) >/dev/null 2>&1;; \ esac am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ *) f=$$p;; \ esac; am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; am__install_max = 40 am__nobase_strip_setup = \ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` am__nobase_strip = \ for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" am__nobase_list = $(am__nobase_strip_setup); \ for p in $$list; do echo "$$p $$p"; done | \ sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ if (++n[$$2] == $(am__install_max)) \ { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ END { for (dir in files) print dir, files[dir] }' am__base_list = \ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' am__uninstall_files_from_dir = { \ test -z "$$files" \ || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ $(am__cd) "$$dir" && rm -f $$files; }; \ } am__installdirs = "$(DESTDIR)$(pkgdatadir)" DATA = $(dist_pkgdata_DATA) am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/mkinstalldirs \ README DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = ${SHELL} /Users/teus/Documents/dev/bibledit/gtk/missing aclocal-1.15 AMTAR = $${TAR-tar} AM_DEFAULT_VERBOSITY = 1 AUTOCONF = ${SHELL} /Users/teus/Documents/dev/bibledit/gtk/missing autoconf AUTOHEADER = ${SHELL} /Users/teus/Documents/dev/bibledit/gtk/missing autoheader AUTOMAKE = ${SHELL} /Users/teus/Documents/dev/bibledit/gtk/missing automake-1.15 AWK = gawk CAT_PATH = /bin/cat CC = gcc CCDEPMODE = depmode=gcc3 CFLAGS = -g -O2 CPP = gcc -E CPPFLAGS = CXX = g++ CXXCPP = g++ -E CXXDEPMODE = depmode=gcc3 CXXFLAGS = -g -O2 -std=c++11 CYGPATH_W = echo DATE_PATH = /bin/date DEFS = -DHAVE_CONFIG_H DEPDIR = .deps ECHO_C = \c ECHO_N = ECHO_T = EGREP = /usr/bin/grep -E ENCHANT_CFLAGS = -D_REENTRANT -I/opt/local/include/enchant -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include ENCHANT_LIBS = -L/opt/local/lib -lenchant -lgmodule-2.0 -lglib-2.0 -lintl EXEEXT = FIND_CURL = /opt/local/bin/curl FIND_DIFF = /usr/bin/diff FIND_GPP = /usr/bin/g++ FIND_MERGE = /opt/local/bin/merge FIND_PATCH = /usr/bin/patch FIND_PATH = /usr/bin/find FIND_TAR = /usr/bin/tar FIND_XARGS = /usr/bin/xargs GLIB_CFLAGS = -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include GLIB_LIBS = -L/opt/local/lib -lglib-2.0 -lintl GOBJECT_CFLAGS = -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include GOBJECT_LIBS = -L/opt/local/lib -lgobject-2.0 -lglib-2.0 -lintl GREP = /usr/bin/grep GREP_PATH = /usr/bin/grep GTHREAD_CFLAGS = -D_REENTRANT -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include GTHREAD_LIBS = -L/opt/local/lib -lgthread-2.0 -lglib-2.0 -lintl GTKSOURCEVIEW_CFLAGS = -D_REENTRANT -I/opt/local/include/gtksourceview-2.0 -I/opt/local/include/libxml2 -I/opt/local/include/gtk-2.0 -I/opt/local/lib/gtk-2.0/include -I/opt/local/include/pango-1.0 -I/opt/local/include/gio-unix-2.0/ -I/opt/local/include -I/opt/local/include/cairo -I/opt/local/include/atk-1.0 -I/opt/local/include/cairo -I/opt/local/include/pixman-1 -I/opt/local/include -I/opt/local/include/gdk-pixbuf-2.0 -I/opt/local/include/libpng16 -I/opt/local/include/pango-1.0 -I/opt/local/include/harfbuzz -I/opt/local/include/pango-1.0 -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include -I/opt/local/include/freetype2 -I/opt/local/include -I/opt/local/include/freetype2 -I/opt/local/include -I/opt/local/include/libpng16 GTKSOURCEVIEW_LIBS = -L/opt/local/lib -lgtksourceview-2.0 -lgtk-x11-2.0 -lgdk-x11-2.0 -lpangocairo-1.0 -lgio-2.0 -lXrender -lXinerama -lXi -lXrandr -lXcursor -lXcomposite -lXdamage -lXfixes -lX11 -lXext -latk-1.0 -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lpangoft2-1.0 -lpango-1.0 -lm -lgobject-2.0 -lglib-2.0 -lintl -lfontconfig -lfreetype GTK_CFLAGS = -D_REENTRANT -I/opt/local/include/gtk-2.0 -I/opt/local/lib/gtk-2.0/include -I/opt/local/include/atk-1.0 -I/opt/local/include/gtk-2.0 -I/opt/local/lib/gtk-2.0/include -I/opt/local/include/pango-1.0 -I/opt/local/include/harfbuzz -I/opt/local/include/pango-1.0 -I/opt/local/include/gio-unix-2.0/ -I/opt/local/include -I/opt/local/include/gdk-pixbuf-2.0 -I/opt/local/include/libpng16 -I/opt/local/include/cairo -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include -I/opt/local/include/pixman-1 -I/opt/local/include -I/opt/local/include/freetype2 -I/opt/local/include -I/opt/local/include/freetype2 -I/opt/local/include -I/opt/local/include/libpng16 -I/opt/local/include GTK_LIBS = -L/opt/local/lib -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk-x11-2.0 -lpangocairo-1.0 -lpangoft2-1.0 -lpango-1.0 -lm -lgio-2.0 -lfontconfig -lfreetype -lXrender -lXinerama -lXi -lXrandr -lXcursor -lXcomposite -lXdamage -lXfixes -lgdk_pixbuf-2.0 -lgobject-2.0 -lglib-2.0 -lintl -lcairo -lX11 -lXext GUNZIP_PATH = /usr/bin/gunzip GZIP_PATH = /usr/bin/gzip HAVE_CXX11 = HEAD_PATH = /usr/bin/head ICONV_PATH = /opt/local/bin/iconv INSTALL = /opt/local/bin/ginstall -c INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = $(install_sh) -c -s LDFLAGS = LIBOBJS = LIBS = LIBSOUP_CFLAGS = -D_REENTRANT -I/opt/local/include/libsoup-2.4 -I/opt/local/include/libxml2 -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include LIBSOUP_LIBS = -L/opt/local/lib -lsoup-2.4 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lintl LTLIBOBJS = MAKEINFO = ${SHELL} /Users/teus/Documents/dev/bibledit/gtk/missing makeinfo MAKE_PATH = /usr/bin/make MKDIR_P = /opt/local/bin/gmkdir -p OBJEXT = o PACKAGE = bibledit-gtk PACKAGE_BUGREPORT = http://www.nongnu.org/bibledit PACKAGE_NAME = bibledit-gtk PACKAGE_STRING = bibledit-gtk 4.9 PACKAGE_TARNAME = bibledit-gtk PACKAGE_URL = PACKAGE_VERSION = 4.9 PANGO_CFLAGS = -D_REENTRANT -I/opt/local/include/pango-1.0 -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include PANGO_LIBS = -L/opt/local/lib -lpango-1.0 -lm -lgobject-2.0 -lglib-2.0 -lintl PATH_SEPARATOR = : PKG_CONFIG = /opt/local/bin/pkg-config PKG_CONFIG_LIBDIR = PKG_CONFIG_PATH = /opt/local/bin/pkg-config SET_MAKE = SHELL = /bin/sh SORT_PATH = /usr/bin/sort SQLITE_CFLAGS = -I/opt/local/include SQLITE_LIBS = -L/opt/local/lib -lsqlite3 STRINGS_PATH = /usr/bin/strings STRIP = TAIL_PATH = /usr/bin/tail TEE_TOUCH = /usr/bin/touch VERSION = 4.9 WEBKIT_CFLAGS = -D_REENTRANT -I/opt/local/include/webkitgtk-1.0 -I/opt/local/include/gtk-2.0 -I/opt/local/lib/gtk-2.0/include -I/opt/local/include/pango-1.0 -I/opt/local/include/gio-unix-2.0/ -I/opt/local/include -I/opt/local/include/cairo -I/opt/local/include/atk-1.0 -I/opt/local/include/cairo -I/opt/local/include/pixman-1 -I/opt/local/include -I/opt/local/include/gdk-pixbuf-2.0 -I/opt/local/include/libpng16 -I/opt/local/include/pango-1.0 -I/opt/local/include/harfbuzz -I/opt/local/include/pango-1.0 -I/opt/local/include -I/opt/local/include/freetype2 -I/opt/local/include -I/opt/local/include/freetype2 -I/opt/local/include -I/opt/local/include/libpng16 -I/opt/local/include/libsoup-2.4 -I/opt/local/include/libxml2 -I/opt/local/include/webkitgtk-1.0 -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include WEBKIT_LIBS = -L/opt/local/lib -lwebkitgtk-1.0 -lgtk-x11-2.0 -lgdk-x11-2.0 -lpangocairo-1.0 -lgio-2.0 -lXrender -lXinerama -lXi -lXrandr -lXcursor -lXcomposite -lXdamage -lXfixes -lX11 -lXext -latk-1.0 -lcairo -lgdk_pixbuf-2.0 -lpangoft2-1.0 -lpango-1.0 -lm -lfontconfig -lfreetype -lsoup-2.4 -lgio-2.0 -lgobject-2.0 -ljavascriptcoregtk-1.0 -lglib-2.0 -lintl XML2_CONFIG = /opt/local/bin/xml2-config XML_CPPFLAGS = -I/opt/local/include/libxml2 XML_LIBS = -L/opt/local/lib -lxml2 -lz -lpthread -liconv -lm abs_builddir = /Users/teus/Documents/dev/bibledit/gtk/usfm abs_srcdir = /Users/teus/Documents/dev/bibledit/gtk/usfm abs_top_builddir = /Users/teus/Documents/dev/bibledit/gtk abs_top_srcdir = /Users/teus/Documents/dev/bibledit/gtk ac_ct_CC = gcc ac_ct_CXX = g++ am__include = include am__leading_dot = . am__quote = am__tar = tar --format=ustar -chf - "$$tardir" am__untar = tar -xf - bindir = ${exec_prefix}/bin build = i686-apple-darwin14.3.0 build_alias = build_cpu = i686 build_os = darwin14.3.0 build_vendor = apple builddir = . datadir = ${datarootdir} datarootdir = ${prefix}/share docdir = ${datarootdir}/doc/${PACKAGE_TARNAME} dvidir = ${docdir} exec_prefix = ${prefix} host = i686-apple-darwin14.3.0 host_alias = host_cpu = i686 host_os = darwin14.3.0 host_vendor = apple htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info install_sh = ${SHELL} /Users/teus/Documents/dev/bibledit/gtk/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale localstatedir = ${prefix}/var mandir = ${datarootdir}/man mkdir_p = $(MKDIR_P) oldincludedir = /usr/include packagedatadir = share/bibledit-gtk pdfdir = ${docdir} prefix = /usr program_transform_name = s,x,x, psdir = ${docdir} sbindir = ${exec_prefix}/sbin sharedstatedir = ${prefix}/com srcdir = . sysconfdir = ${prefix}/etc target = i686-apple-darwin14.3.0 target_alias = target_cpu = i686 target_os = darwin14.3.0 target_vendor = apple top_build_prefix = ../ top_builddir = .. top_srcdir = .. dist_pkgdata_DATA = usfm.sty EXTRA_DIST = * CLEANFILES = *~ webroot = @WEBROOT@ all: all-am .SUFFIXES: $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu usfm/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --gnu usfm/Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): install-dist_pkgdataDATA: $(dist_pkgdata_DATA) @$(NORMAL_INSTALL) @list='$(dist_pkgdata_DATA)'; test -n "$(pkgdatadir)" || list=; \ if test -n "$$list"; then \ echo " $(MKDIR_P) '$(DESTDIR)$(pkgdatadir)'"; \ $(MKDIR_P) "$(DESTDIR)$(pkgdatadir)" || exit 1; \ fi; \ for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; \ done | $(am__base_list) | \ while read files; do \ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(pkgdatadir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(pkgdatadir)" || exit $$?; \ done uninstall-dist_pkgdataDATA: @$(NORMAL_UNINSTALL) @list='$(dist_pkgdata_DATA)'; test -n "$(pkgdatadir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ dir='$(DESTDIR)$(pkgdatadir)'; $(am__uninstall_files_from_dir) tags TAGS: ctags CTAGS: cscope cscopelist: distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done check-am: all-am check: check-am all-am: Makefile $(DATA) installdirs: for dir in "$(DESTDIR)$(pkgdatadir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: if test -z '$(STRIP)'; then \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ install; \ else \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ fi mostlyclean-generic: clean-generic: -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-generic mostlyclean-am distclean: distclean-am -rm -f Makefile distclean-am: clean-am distclean-generic dvi: dvi-am dvi-am: html: html-am html-am: info: info-am info-am: install-data-am: install-data-local install-dist_pkgdataDATA install-dvi: install-dvi-am install-dvi-am: install-exec-am: install-html: install-html-am install-html-am: install-info: install-info-am install-info-am: install-man: install-pdf: install-pdf-am install-pdf-am: install-ps: install-ps-am install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-am -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-generic pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-dist_pkgdataDATA .MAKE: install-am install-strip .PHONY: all all-am check check-am clean clean-generic cscopelist-am \ ctags-am distclean distclean-generic distdir dvi dvi-am html \ html-am info info-am install install-am install-data \ install-data-am install-data-local install-dist_pkgdataDATA \ install-dvi install-dvi-am install-exec install-exec-am \ install-html install-html-am install-info install-info-am \ install-man install-pdf install-pdf-am install-ps \ install-ps-am install-strip installcheck installcheck-am \ installdirs maintainer-clean maintainer-clean-generic \ mostlyclean mostlyclean-generic pdf pdf-am ps ps-am tags-am \ uninstall uninstall-am uninstall-dist_pkgdataDATA .PRECIOUS: Makefile install-data-local: mkdir -p $(DESTDIR)$(prefix)/$(packagedatadir)/usfm cp -r * $(DESTDIR)$(prefix)/$(packagedatadir)/usfm # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: bibledit-gtk-4.9/usfm/Makefile.am000664 000766 000024 00000000320 12221507124 017052 0ustar00teusstaff000000 000000 dist_pkgdata_DATA = usfm.sty EXTRA_DIST = * CLEANFILES = *~ webroot = @WEBROOT@ install-data-local: mkdir -p $(DESTDIR)$(prefix)/$(packagedatadir)/usfm cp -r * $(DESTDIR)$(prefix)/$(packagedatadir)/usfm bibledit-gtk-4.9/usfm/Makefile.in000644 000766 000024 00000036130 12517415675 017112 0ustar00teusstaff000000 000000 # Makefile.in generated by automake 1.15 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2014 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ am__is_gnu_make = { \ if test -z '$(MAKELEVEL)'; then \ false; \ elif test -n '$(MAKE_HOST)'; then \ true; \ elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ true; \ else \ false; \ fi; \ } am__make_running_with_option = \ case $${target_option-} in \ ?) ;; \ *) echo "am__make_running_with_option: internal error: invalid" \ "target option '$${target_option-}' specified" >&2; \ exit 1;; \ esac; \ has_opt=no; \ sane_makeflags=$$MAKEFLAGS; \ if $(am__is_gnu_make); then \ sane_makeflags=$$MFLAGS; \ else \ case $$MAKEFLAGS in \ *\\[\ \ ]*) \ bs=\\; \ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ esac; \ fi; \ skip_next=no; \ strip_trailopt () \ { \ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ }; \ for flg in $$sane_makeflags; do \ test $$skip_next = yes && { skip_next=no; continue; }; \ case $$flg in \ *=*|--*) continue;; \ -*I) strip_trailopt 'I'; skip_next=yes;; \ -*I?*) strip_trailopt 'I';; \ -*O) strip_trailopt 'O'; skip_next=yes;; \ -*O?*) strip_trailopt 'O';; \ -*l) strip_trailopt 'l'; skip_next=yes;; \ -*l?*) strip_trailopt 'l';; \ -[dEDm]) skip_next=yes;; \ -[JT]) skip_next=yes;; \ esac; \ case $$flg in \ *$$target_option*) has_opt=yes; break;; \ esac; \ done; \ test $$has_opt = yes am__make_dryrun = (target_option=n; $(am__make_running_with_option)) am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ target_triplet = @target@ subdir = usfm ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) DIST_COMMON = $(srcdir)/Makefile.am $(dist_pkgdata_DATA) \ $(am__DIST_COMMON) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = AM_V_P = $(am__v_P_@AM_V@) am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) am__v_P_0 = false am__v_P_1 = : AM_V_GEN = $(am__v_GEN_@AM_V@) am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) am__v_GEN_0 = @echo " GEN " $@; am__v_GEN_1 = AM_V_at = $(am__v_at_@AM_V@) am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) am__v_at_0 = @ am__v_at_1 = SOURCES = DIST_SOURCES = am__can_run_installinfo = \ case $$AM_UPDATE_INFO_DIR in \ n|no|NO) false;; \ *) (install-info --version) >/dev/null 2>&1;; \ esac am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ *) f=$$p;; \ esac; am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; am__install_max = 40 am__nobase_strip_setup = \ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` am__nobase_strip = \ for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" am__nobase_list = $(am__nobase_strip_setup); \ for p in $$list; do echo "$$p $$p"; done | \ sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ if (++n[$$2] == $(am__install_max)) \ { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ END { for (dir in files) print dir, files[dir] }' am__base_list = \ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' am__uninstall_files_from_dir = { \ test -z "$$files" \ || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ $(am__cd) "$$dir" && rm -f $$files; }; \ } am__installdirs = "$(DESTDIR)$(pkgdatadir)" DATA = $(dist_pkgdata_DATA) am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/mkinstalldirs \ README DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CAT_PATH = @CAT_PATH@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DATE_PATH = @DATE_PATH@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ ENCHANT_CFLAGS = @ENCHANT_CFLAGS@ ENCHANT_LIBS = @ENCHANT_LIBS@ EXEEXT = @EXEEXT@ FIND_CURL = @FIND_CURL@ FIND_DIFF = @FIND_DIFF@ FIND_GPP = @FIND_GPP@ FIND_MERGE = @FIND_MERGE@ FIND_PATCH = @FIND_PATCH@ FIND_PATH = @FIND_PATH@ FIND_TAR = @FIND_TAR@ FIND_XARGS = @FIND_XARGS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_LIBS = @GLIB_LIBS@ GOBJECT_CFLAGS = @GOBJECT_CFLAGS@ GOBJECT_LIBS = @GOBJECT_LIBS@ GREP = @GREP@ GREP_PATH = @GREP_PATH@ GTHREAD_CFLAGS = @GTHREAD_CFLAGS@ GTHREAD_LIBS = @GTHREAD_LIBS@ GTKSOURCEVIEW_CFLAGS = @GTKSOURCEVIEW_CFLAGS@ GTKSOURCEVIEW_LIBS = @GTKSOURCEVIEW_LIBS@ GTK_CFLAGS = @GTK_CFLAGS@ GTK_LIBS = @GTK_LIBS@ GUNZIP_PATH = @GUNZIP_PATH@ GZIP_PATH = @GZIP_PATH@ HAVE_CXX11 = @HAVE_CXX11@ HEAD_PATH = @HEAD_PATH@ ICONV_PATH = @ICONV_PATH@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBSOUP_CFLAGS = @LIBSOUP_CFLAGS@ LIBSOUP_LIBS = @LIBSOUP_LIBS@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MAKE_PATH = @MAKE_PATH@ MKDIR_P = @MKDIR_P@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PANGO_CFLAGS = @PANGO_CFLAGS@ PANGO_LIBS = @PANGO_LIBS@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SORT_PATH = @SORT_PATH@ SQLITE_CFLAGS = @SQLITE_CFLAGS@ SQLITE_LIBS = @SQLITE_LIBS@ STRINGS_PATH = @STRINGS_PATH@ STRIP = @STRIP@ TAIL_PATH = @TAIL_PATH@ TEE_TOUCH = @TEE_TOUCH@ VERSION = @VERSION@ WEBKIT_CFLAGS = @WEBKIT_CFLAGS@ WEBKIT_LIBS = @WEBKIT_LIBS@ XML2_CONFIG = @XML2_CONFIG@ XML_CPPFLAGS = @XML_CPPFLAGS@ XML_LIBS = @XML_LIBS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ ac_ct_CXX = @ac_ct_CXX@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ packagedatadir = @packagedatadir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target = @target@ target_alias = @target_alias@ target_cpu = @target_cpu@ target_os = @target_os@ target_vendor = @target_vendor@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ dist_pkgdata_DATA = usfm.sty EXTRA_DIST = * CLEANFILES = *~ webroot = @WEBROOT@ all: all-am .SUFFIXES: $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu usfm/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --gnu usfm/Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): install-dist_pkgdataDATA: $(dist_pkgdata_DATA) @$(NORMAL_INSTALL) @list='$(dist_pkgdata_DATA)'; test -n "$(pkgdatadir)" || list=; \ if test -n "$$list"; then \ echo " $(MKDIR_P) '$(DESTDIR)$(pkgdatadir)'"; \ $(MKDIR_P) "$(DESTDIR)$(pkgdatadir)" || exit 1; \ fi; \ for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; \ done | $(am__base_list) | \ while read files; do \ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(pkgdatadir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(pkgdatadir)" || exit $$?; \ done uninstall-dist_pkgdataDATA: @$(NORMAL_UNINSTALL) @list='$(dist_pkgdata_DATA)'; test -n "$(pkgdatadir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ dir='$(DESTDIR)$(pkgdatadir)'; $(am__uninstall_files_from_dir) tags TAGS: ctags CTAGS: cscope cscopelist: distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done check-am: all-am check: check-am all-am: Makefile $(DATA) installdirs: for dir in "$(DESTDIR)$(pkgdatadir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: if test -z '$(STRIP)'; then \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ install; \ else \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ fi mostlyclean-generic: clean-generic: -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-generic mostlyclean-am distclean: distclean-am -rm -f Makefile distclean-am: clean-am distclean-generic dvi: dvi-am dvi-am: html: html-am html-am: info: info-am info-am: install-data-am: install-data-local install-dist_pkgdataDATA install-dvi: install-dvi-am install-dvi-am: install-exec-am: install-html: install-html-am install-html-am: install-info: install-info-am install-info-am: install-man: install-pdf: install-pdf-am install-pdf-am: install-ps: install-ps-am install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-am -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-generic pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-dist_pkgdataDATA .MAKE: install-am install-strip .PHONY: all all-am check check-am clean clean-generic cscopelist-am \ ctags-am distclean distclean-generic distdir dvi dvi-am html \ html-am info info-am install install-am install-data \ install-data-am install-data-local install-dist_pkgdataDATA \ install-dvi install-dvi-am install-exec install-exec-am \ install-html install-html-am install-info install-info-am \ install-man install-pdf install-pdf-am install-ps \ install-ps-am install-strip installcheck installcheck-am \ installdirs maintainer-clean maintainer-clean-generic \ mostlyclean mostlyclean-generic pdf pdf-am ps ps-am tags-am \ uninstall uninstall-am uninstall-dist_pkgdataDATA .PRECIOUS: Makefile install-data-local: mkdir -p $(DESTDIR)$(prefix)/$(packagedatadir)/usfm cp -r * $(DESTDIR)$(prefix)/$(packagedatadir)/usfm # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: bibledit-gtk-4.9/usfm/README000664 000766 000024 00000005405 12221507124 015707 0ustar00teusstaff000000 000000 USFM documentation Source: http://ubs-icap.org/usfm http://confluence.ubs-icap.org/display/USFM/Home The file usfmReference[version].chm.zip was downloaded from the above URL, unzipped and saved as usfmReference.chm. On 4 August 2009 Jeff Klassen of the Canadian Bible Society gave permission to distribute this file: "Please feel free to distribute the current version of the CHM help file. We're glad that the documentation can be of help." Since it does not come with a license, it is supposed that the file is in the public domain. Teus Benschop 5 August 2009 ---------------------------- To view this documentation in .chm format, a program called chmsee was used. People said that this program is not available for Mac OS X. For that reason the .chm file was extracted into its components. To extract, move the .chm file to the usfm subdirectory of this package, then unpack it: extract_chmLib usfmReference.chm . Then remove the files that start with $ or #. It produces .htm files and other files. Since the suffix of the files is .htm, these files shouldn't interfere with Bibledit's online help, which uses .html. Teus Benschop 3 November 2009 ---------------------------- Stylesheet usfm.sty ships with Bibledit. Updates are available from http://confluence.ubs-icap.org/display/USFM/Home On 30 January 2010 Jeff Klassen of the Canadian Bible Society gave permission to distribute this file: "There is no problem with you making use of the usfm.sty file in this way." Since it does not come with a license, it is supposed that the file is in the public domain. Teus Benschop 30 January 2010 ---------------------------- The Debian FTPmasters rejected the package for inclusion with Debian. This were their concerns: bibledit-gtk-4.2/usfm/{$FIftiMain,$OBJINST} Don't know what these files are bibledit-gtk-4.2/usfm ==== On 4 August 2009 Jeff Klassen of the Canadian Bible Society gave permission to distribute this file: "Please feel free to distribute the current version of the CHM help file. We're glad that the documentation can be of help." Since it does not come with a license, it is supposed that the file is in the public domain. ===== Uhm... No. The author statement doesn't grant all rights required by the DFSG, and "supposing" it's public domain is not enough. Beside: That's not mentioned in your debian/copyright either. bibledit-gtk-4.2/usfm/helpman_topicinit.js: "It is designed for use in combination with the output of Help & Manual and must not be used outside this context." What is this file? May I edit it? May it be distributed? Who's the copyright holder? Best regards, Alexander Because of this, all files that were of concern have been removed for the time being, till such time that all concerns have been addressed. Teus Benschop 8 June 2011 bibledit-gtk-4.9/usfm/usfm.sty000664 000766 000024 00000206212 12221507124 016541 0ustar00teusstaff000000 000000 # Version=2.208 # ******************************************************************** # * usfm.sty is the default stylesheet for Paratext 6 or 7 projects * # * using USFM markup. * # * Latest documentation and stylesheets are maintained at: * # * http://ubs-icap.org/usfm * # ******************************************************************** # Last Updated: Apr 21, 2009 Jeff Klassen # File Identification \Marker id \Name id - File - Identification \Description File identification information (BOOKID, FILENAME, EDITOR, MODIFICATION DATE) \StyleType Paragraph \TextType Other \TextProperties paragraph nonpublishable nonvernacular book \FontSize 12 \Marker ide \Name ide - File - Encoding \Description File encoding information \OccursUnder id \Rank 1 \StyleType Paragraph \TextType Other \TextProperties paragraph nonpublishable nonvernacular \FontSize 12 # Headers \Marker h \Name h - File - Header \Description Running header text for a book (basic) \OccursUnder id \Rank 1 \TextType Other \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \Marker h1 \Name h1 - File - Header \Description Running header text \OccursUnder id \Rank 1 \TextType Other \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \Marker h2 \Name h2 - File - Left Header \Description Running header text, left side of page \OccursUnder id \Rank 1 \TextType Other \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \Marker h3 \Name h3 - File - Right Header \Description Running header text, right side of page \OccursUnder id \Rank 1 \TextType Other \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \Marker toc1 \Name toc1 - File - Long Table of Contents Text \Description Long table of contents text \OccursUnder h h1 h2 h3 \Rank 1 \TextType Other \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \Italic \Bold \color 16384 \Marker toc2 \Name toc2 - File - Short Table of Contents Text \Description Short table of contents text \OccursUnder h h1 h2 h3 \Rank 1 \TextType Other \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \Italic \color 16384 \Marker toc3 \Name toc3 - File - Book Abbreviation \Description Book Abbreviation \OccursUnder h h1 h2 h3 \Rank 1 \TextType Other \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \Bold \Italic \color 128 # Remarks and Comments \Marker rem \Name rem - File - Remark \Description Comments and remarks \OccursUnder id ide c \TextType Other \TextProperties paragraph nonpublishable nonvernacular \StyleType Paragraph \FontSize 12 \Color 16711680 \Marker sts \Name rem - File - Status \Description Status of this file \OccursUnder id ide c \TextType Other \TextProperties paragraph nonpublishable nonvernacular \StyleType Paragraph \FontSize 12 \Color 16711680 \Marker restore \Name restore - File - Restore Information \Description Project restore information \OccursUnder id \Rank 99 \TextType Other \TextProperties paragraph nonpublishable nonvernacular \StyleType Paragraph \FontSize 12 \Color 16711680 # Introduction \Marker imt \Name imt - Introduction - Major Title Level 1 \Description Introduction major title, level 1 (if single level) (basic) \OccursUnder id \Rank 5 \TextProperties paragraph publishable vernacular level_1 \TextType Other \StyleType Paragraph \FontSize 14 \Bold \Justification Center \SpaceBefore 8 \SpaceAfter 4 \Marker imt1 \Name imt1 - Introduction - Major Title Level 1 \Description Introduction major title, level 1 (if multiple levels) \OccursUnder id \Rank 5 \TextProperties paragraph publishable vernacular level_1 \TextType Other \StyleType Paragraph \FontSize 14 \Bold \Justification Center \SpaceBefore 8 \SpaceAfter 4 \Marker imt2 \Name imt2 - Introduction - Major Title Level 2 \Description Introduction major title, level 2 \OccursUnder id \Rank 5 \TextProperties paragraph publishable vernacular level_2 \TextType other \StyleType Paragraph \FontSize 13 \Italic \Justification Center \SpaceBefore 6 \SpaceAfter 3 \Marker imt3 \Name imt3 - Introduction - Major Title Level 3 \Description Introduction major title, level 3 \OccursUnder id \Rank 5 \TextProperties paragraph publishable vernacular level_3 \TextType Other \StyleType Paragraph \FontSize 12 \Bold \Justification Center \SpaceBefore 2 \SpaceAfter 2 \Marker imt4 \Name imt4 - Introduction - Major Title Level 4 \Description Introduction major title, level 4 (usually within parenthesis) \OccursUnder id \Rank 5 \TextProperties paragraph publishable vernacular level_4 \TextType Other \StyleType Paragraph \FontSize 12 \Italic \Justification Center \SpaceBefore 2 \SpaceAfter 2 \Marker imte \Name imte - Introduction - [Uncommon] Major Title at Introduction End Level 1 \Description Introduction major title at introduction end, level 1 (if single level) \TextProperties paragraph publishable vernacular level_1 \TextType Other \OccursUnder id \Rank 7 \StyleType Paragraph \FontSize 20 \Bold \Justification Center \SpaceBefore 8 \SpaceAfter 4 \Marker imte1 \Name imte1 - Introduction - [Uncommon] Major Title at Introduction End Level 1 \Description Introduction major title at introduction end, level 1 (if multiple levels) \TextProperties paragraph publishable vernacular level_1 \TextType Other \OccursUnder id \Rank 7 \StyleType Paragraph \FontSize 20 \Bold \Justification Center \SpaceBefore 8 \SpaceAfter 4 \Marker imte2 \Name imte2 - Introduction - [Uncommon] Major Title at Introduction End Level 2 \Description Introduction major title at introduction end, level 2 \TextProperties paragraph publishable vernacular level_2 \TextType Other \OccursUnder id \Rank 7 \StyleType Paragraph \FontSize 16 \Italic \Justification Center \SpaceAfter 2 \Marker is \Name is - Introduction - Section Heading Level 1 \Description Introduction section heading, level 1 (if single level) (basic) \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular level_1 \StyleType Paragraph \FontSize 14 \Bold \Justification Center \SpaceBefore 8 \SpaceAfter 4 \Marker is1 \Name is1 - Introduction - Section Heading Level 1 \Description Introduction section heading, level 1 (if multiple levels) \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular level_1 \StyleType Paragraph \FontSize 14 \Bold \Justification Center \SpaceBefore 8 \SpaceAfter 4 \Marker is2 \Name is2 - Introduction - Section Heading Level 2 \Description Introduction section heading, level 2 \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular level_2 \StyleType Paragraph \FontSize 12 \Bold \Justification Center \SpaceBefore 8 \SpaceAfter 4 \Marker iot \Name iot - Introduction - Outline Title \Description Introduction outline title (basic) \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \Bold \Justification Center \SpaceBefore 8 \SpaceAfter 4 \Marker io \Name io - Introduction - Outline Level 1 \Description Introduction outline text, level 1 (if single level) \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular level_1 \StyleType paragraph \FontSize 12 \LeftMargin .5 \Marker io1 \Name io1 - Introduction - Outline Level 1 \Description Introduction outline text, level 1 (if multiple levels) (basic) \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular level_1 \StyleType paragraph \FontSize 12 \LeftMargin .5 \Marker io2 \Name io2 - Introduction - Outline Level 2 \Description Introduction outline text, level 2 \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular level_2 \StyleType paragraph \FontSize 12 \LeftMargin .75 \Marker io3 \Name io3 - Introduction - Outline Level 3 \Description Introduction outline text, level 3 \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular level_3 \StyleType paragraph \FontSize 12 \LeftMargin 1 \Marker io4 \Name io4 - Introduction - Outline Level 4 \Description Introduction outline text, level 4 \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular level_4 \StyleType paragraph \FontSize 12 \LeftMargin 1.25 \Marker ior \Endmarker ior* \Name ior...ior* - Introduction - Outline References Range \Description Introduction references range for outline entry; for marking references separately \OccursUnder id io io1 io2 io3 io4 NEST \TextType Other \TextProperties paragraph publishable vernacular level_4 \StyleType Character \FontSize 12 \Marker ip \Name ip - Introduction - Paragraph \Description Introduction prose paragraph (basic) \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \FirstLineIndent .125 # 1/8 inch first line indent \Marker im \Name im - Introduction - Paragraph - no first line indent \Description Introduction prose paragraph, with no first line indent (may occur after poetry) \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \Marker ipi \Name ipi - Introduction - Indented Para - first line indent \Description Introduction prose paragraph, indented, with first line indent \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \FirstLineIndent .125 # 1/8 inch first line indent \LeftMargin .25 \RightMargin .25 \Marker imi \Name imi - Introduction - Indented Para - no first line indent \Description Introduction prose paragraph text, indented, with no first line indent \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \LeftMargin .25 \RightMargin .25 \Marker ili \Name ili - Introduction - List Entry - Level 1 \Description A list entry, level 1 (if single level) \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular \StyleType paragraph \FontSize 12 \LeftMargin .625 \FirstLineIndent -.375 # 1/4 inch indent, 5/8 inch wrap \Marker ili1 \Name ili1 - Introduction - List Entry - Level 1 \Description A list entry, level 1 (if multiple levels) \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular \StyleType paragraph \FontSize 12 \LeftMargin .5 \FirstLineIndent -.25 # 1/4 inch indent, 5/8 inch wrap \Marker ili2 \Name ili2 - Introduction - List Entry - Level 2 \Description A list entry, level 2 \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular \StyleType paragraph \FontSize 12 \LeftMargin .75 \FirstLineIndent -.25 # 6/16 inch \Marker ipq \Name ipq - Introduction - Paragraph - quote from text \Description Introduction prose paragraph, quote from the body text \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \LeftMargin .25 \RightMargin .25 \FirstLineIndent .125 # 1/8 inch first line indent \Italic \Marker imq \Name imq - Introduction - Paragraph - quote from text - no first line indent \Description Introduction prose paragraph, quote from the body text, with no first line indent \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \LeftMargin .25 \RightMargin .25 \Italic \Marker ipr \Name ipr - Introduction - Paragraph - right aligned \Description Introduction prose paragraph, right aligned \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \LeftMargin .25 \RightMargin .25 \Justification Right \Italic \Marker ib \Name ib - Introduction - Blank Line \Description Introduction blank line \OccursUnder id \Rank 6 \TextProperties paragraph publishable vernacular poetic \TextType Other \FontSize 10 \StyleType paragraph \Marker iq \Name iq - Introduction - Poetry Level 1 \Description Introduction poetry text, level 1 (if single level) \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular poetic level_1 \StyleType Paragraph \FontSize 12 \LeftMargin 1 \FirstLineIndent -.75 # 1/4 inch indent, 1 inch wrap \Italic \Marker iq1 \Name iq1 - Introduction - Poetry Level 1 \Description Introduction poetry text, level 1 (if multiple levels) \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular poetic level_1 \StyleType Paragraph \FontSize 12 \LeftMargin 1 \FirstLineIndent -.75 # 1/4 inch indent, 1 inch wrap \Italic \Marker iq2 \Name iq2 - Introduction - Poetry Level 2 \Description Introduction poetry text, level 2 \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular poetic level_2 \StyleType Paragraph \FontSize 12 \LeftMargin 1 \FirstLineIndent -.5 # 1/2 inch indent, 1 inch wrap \Italic \Marker iq3 \Name iq3 - Introduction - Poetry Level 3 \Description Introduction poetry text, level 3 \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular poetic level_3 \StyleType Paragraph \FontSize 12 \LeftMargin 1 \FirstLineIndent -.25 # 3/4 inch indent, 1 inch wrap \Italic \Marker iex \Name iex - Introduction - Explanatory or Bridge Text \Description Introduction explanatory or bridge text (e.g. explanation of missing book in Short Old Testament) \OccursUnder id c \TextType Other \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \FirstLineIndent .125 # 1/8 inch first line indent \SpaceBefore 4 \SpaceAfter 4 \Marker iqt \Endmarker iqt* \Name iqt...iqt* - Special Text - Quoted Scripture Text in Introduction \Description For quoted scripture text appearing in the introduction \OccursUnder id NEST \TextType Other \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Italic \Marker ie \Name ie - Introduction - End Marker \Description Introduction ending marker \OccursUnder id \Rank 6 \TextProperties paragraph publishable vernacular \TextType Other \FontSize 10 \StyleType paragraph # Chapters and Verses \Marker c \Name c - Chapter Number \Description Chapter number (necessary for normal Paratext operation) \OccursUnder id \Rank 8 \TextType ChapterNumber \TextProperties chapter \StyleType Paragraph \Bold \FontSize 18 \SpaceBefore 8 \SpaceAfter 4 \Marker ca \Endmarker ca* \Name ca...ca* - Chapter Number - Alternate \Description Second (alternate) chapter number (for coding dual versification; useful for places where different traditions of chapter breaks need to be supported in the same translation) \OccursUnder c \TextType Other \StyleType Character \Italic \FontSize 16 \Color 2263842 \Marker cp \Name cp - Chapter Number - Publishing Alternate \Description Published chapter number (this is a chapter marking that would be used in the published text) \OccursUnder c \Rank 4 \TextType Other \TextProperties paragraph \StyleType Paragraph \Bold \FontSize 18 \SpaceBefore 8 \SpaceAfter 4 \Color 16711680 \Marker cl \Name cl - Chapter - Publishing Label \Description Chapter label used for translations that add a word such as "Chapter" before chapter numbers (e.g. Psalms). The subsequent text is the chapter label. \OccursUnder id c ms ms1 ms2 ms3 mr \TextType Other \TextProperties paragraph \StyleType Paragraph \Bold \FontSize 18 \SpaceBefore 8 \SpaceAfter 4 \Justification Center \Marker cd \Name cd - Chapter - Description \Description Chapter Description (Publishing option D, e.g. in Russian Bibles) \OccursUnder c \TextType Other \TextProperties paragraph \StyleType Paragraph \FontSize 11 \SpaceBefore 8 \SpaceAfter 4 \Marker v \Name v - Verse Number \Description A verse number (Necessary for normal paratext operation) (basic) \OccursUnder li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 qm4 tc1 tc2 tc3 tc4 tcr1 tcr2 tcr3 tcr4 s3 d sp \TextType VerseNumber \TextProperties verse \StyleType Character \FontSize 12 \Superscript \Marker va \Endmarker va* \Name va...va* - Verse Number - Alternate \Description Second (alternate) verse number (for coding dual numeration in Psalms; see also NRSV Exo 22.1-4) \OccursUnder li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 qm4 tc1 tc2 tc3 tc4 s3 d \TextType Other \StyleType Character \FontSize 12 \Superscript \Color 2263842 \Marker vp \Endmarker vp* \Name vp...vp* - Verse Number - Publishing Alternate \Description Published verse marker - this is a verse marking that would be used in the published text \OccursUnder li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 tc1 tc2 tc3 tc4 s3 \TextType Other \StyleType Character \FontSize 12 \Superscript \Color 16711680 # Paragraphs \Marker p \Name p - Paragraph - Normal - First Line Indent \Description Paragraph text, with first line indent (basic) \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \FirstLineIndent .125 # 1/8 inch first line indent \Marker m \Name m - Paragraph - Margin - No First Line Indent \Description Paragraph text, with no first line indent (may occur after poetry) (basic) \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \Marker pmo \Name pmo - Paragraph - Embedded Text Opening \Description Embedded text opening \OccursUnder m mi nb p pc ph phi pi pi1 pi2 pi3 pr q q1 q2 q3 q4 qc qr \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \LeftMargin .25 \RightMargin .25 \Marker pm \Name pm - Paragraph - Embedded Text \Description Embedded text paragraph \OccursUnder m mi nb p pc ph phi pi pi1 pi2 pi3 pr psi q q1 q2 q3 q4 qc qr \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \FirstLineIndent .125 # 1/8 inch first line indent \LeftMargin .25 \RightMargin .25 \Marker pmc \Name pmc - Paragraph - Embedded Text Closing \Description Embedded text closing \OccursUnder m mi nb p pc ph phi pi pi1 pi2 pi3 pr q q1 q2 q3 q4 qc qr \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \LeftMargin .25 \RightMargin .25 \Marker pmr \Name pmr - Paragraph - Embedded Text Refrain \Description Embedded text refrain (e.g. Then all the people shall say, "Amen!") \OccursUnder m mi nb p pc ph phi pi pi1 pi2 pi3 pr q q1 q2 q3 q4 qc qr \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \Justification Right \LeftMargin .25 \RightMargin .25 \Marker pi \Name pi - Paragraph - Indented - Level 1 - First Line Indent \Description Paragraph text, level 1 indent (if sinlge level), with first line indent; often used for discourse (basic) \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \FirstLineIndent .125 # 1/8 inch first line indent \LeftMargin .25 \RightMargin .25 \Marker pi1 \Name pi1 - Paragraph - Indented - Level 1 - First Line Indent \Description Paragraph text, level 1 indent (if multiple levels), with first line indent; often used for discourse \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \FirstLineIndent .125 # 1/8 inch first line indent \LeftMargin .25 \RightMargin .25 \Marker pi2 \Name pi2 - Paragraph - Indented - Level 2 - First Line Indent \Description Paragraph text, level 2 indent, with first line indent; often used for discourse \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \FirstLineIndent .125 # 1/8 inch first line indent \LeftMargin .5 \RightMargin .25 \Marker pi3 \Name pi3 - Paragraph - Indented - Level 3 - First Line Indent \Description Paragraph text, level 3 indent, with first line indent; often used for discourse \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \FirstLineIndent .125 # 1/8 inch first line indent \LeftMargin .75 \RightMargin .25 \Marker pc \Name pc - Paragraph - Centered (for Inscription) \Description Paragraph text, centered (for Inscription) \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \Justification Center \FontSize 12 \Marker mi \Name mi - Paragraph - Indented - No First Line Indent \Description Paragraph text, indented, with no first line indent; often used for discourse \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \LeftMargin .25 \RightMargin .25 \Marker nb \Name nb - Paragraph - No Break with Previous Paragraph \Description Paragraph text, with no break from previous paragraph text (at chapter boundary) (basic) \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \Marker cls \Name cls - Paragraph - Closure of an Epistle \Description Closure of an Epistle \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \Justification Right # Poetry \Marker q \Name q - Poetry - Indent Level 1 - Single Level Only \Description Poetry text, level 1 indent (if single level) \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular poetic level_1 \StyleType Paragraph \FontSize 12 \LeftMargin 1.25 \FirstLineIndent -1 # 1/4 inch indent, 1 inch wrap \Marker q1 \Name q1 - Poetry - Indent Level 1 \Description Poetry text, level 1 indent (if multiple levels) (basic) \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular poetic level_1 \StyleType Paragraph \FontSize 12 \LeftMargin 1.25 \FirstLineIndent -1 # 1/4 inch indent, 1 inch wrap \Marker q2 \Name q2 - Poetry - Indent Level 2 \Description Poetry text, level 2 indent (basic) \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular poetic level_2 \StyleType Paragraph \FontSize 12 \LeftMargin 1.25 \FirstLineIndent -.75 # 1/2 inch indent, 1 inch wrap \Marker q3 \Name q3 - Poetry - Indent Level 3 \Description Poetry text, level 3 indent \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular poetic level_3 \StyleType Paragraph \FontSize 12 \LeftMargin 1.25 \FirstLineIndent -.5 # 3/4 inch indent, 1 inch wrap \Marker q4 \Name q4 - Poetry - Indent Level 4 \Description Poetry text, level 4 indent \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular poetic level_3 \StyleType Paragraph \FontSize 12 \LeftMargin 1.25 \FirstLineIndent -.25 # 3/4 inch indent, 1 inch wrap \Marker qc \Name qc - Poetry - Centered \Description Poetry text, centered \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular poetic \StyleType Paragraph \FontSize 12 \Justification Center \Marker qr \Name qr - Poetry - Right Aligned \Description Poetry text, Right Aligned \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular poetic \StyleType Paragraph \FontSize 12 \Justification Right \Marker qs \Endmarker qs* \Name qs...qs* - Poetry Text - Selah \Description Poetry text, Selah \OccursUnder q q1 q2 q3 q4 qc qr NEST \Rank 4 \TextType VerseText \TextProperties publishable vernacular poetic \StyleType Character \FontSize 12 \Italic \Marker qa \Name qa - Poetry - Acrostic Heading/Marker \Description Poetry text, Acrostic marker/heading \OccursUnder c \Rank 4 \TextType Other \TextProperties paragraph publishable vernacular poetic \StyleType Paragraph \FontSize 12 \Italic \Marker qac \Endmarker qac* \Name qac...qac* - Poetry Text - Acrostic Letter \Description Poetry text, Acrostic markup of the first character of a line of acrostic poetry \OccursUnder q q1 q2 q3 q4 qc qr NEST \Rank 4 \TextType Other \TextProperties paragraph publishable vernacular poetic \StyleType Character \FontSize 12 \Italic \Marker qm \Name qm - Poetry - Embedded Text - Indent Level 1 - Single Level Only \Description Poetry text, embedded, level 1 indent (if single level) \OccursUnder m mi nb p pc ph phi pi pi1 pi2 pi3 pr q q1 q2 q3 q4 qc qr \TextType VerseText \TextProperties paragraph publishable vernacular poetic \StyleType Paragraph \FontSize 12 \LeftMargin 1 \FirstLineIndent -.75 # 1/4 inch indent, 1 inch wrap \Marker qm1 \Name qm1 - Poetry - Embedded Text - Indent Level 1 \Description Poetry text, embedded, level 1 indent (if multiple levels) \OccursUnder m mi nb p pc ph phi pi pi1 pi2 pi3 pr q q1 q2 q3 q4 qc qr \TextType VerseText \TextProperties paragraph publishable vernacular poetic level_1 \StyleType Paragraph \FontSize 12 \LeftMargin 1 \FirstLineIndent -.75 # 1/4 inch indent, 1 inch wrap \Marker qm2 \Name qm2 - Poetry - Embedded Text - Indent Level 2 \Description Poetry text, embedded, level 2 indent \OccursUnder m mi nb p pc ph phi pi pi1 pi2 pi3 pr q q1 q2 q3 q4 qc qr \TextType VerseText \TextProperties paragraph publishable vernacular poetic level_2 \StyleType Paragraph \FontSize 12 \LeftMargin 1 \FirstLineIndent -.5 # 1/2 inch indent, 1 inch wrap \Marker qm3 \Name qm3 - Poetry - Embedded Text - Indent Level 3 \Description Poetry text, embedded, level 3 indent \OccursUnder m mi nb p pc ph phi pi pi1 pi2 pi3 pr q q1 q2 q3 q4 qc qr \TextType VerseText \TextProperties paragraph publishable vernacular poetic level_3 \StyleType Paragraph \FontSize 12 \LeftMargin 1 \FirstLineIndent -.25 # 3/4 inch indent, 1 inch wrap \Marker b \Name b - Poetry - Stanza Break (Blank Line) \Description Poetry text stanza break (e.g. stanza break) (basic) \OccursUnder c \Rank 4 \TextProperties paragraph publishable vernacular poetic \TextType VerseText \FontSize 10 \StyleType paragraph # Titles & Headings \Marker mt \Name mt - Title - Major Title Level 1 \Description The main title of the book (if single level) \OccursUnder id \Rank 3 \TextProperties paragraph publishable vernacular level_1 \TextType Title \StyleType Paragraph \FontSize 20 \Bold \Justification Center \SpaceBefore 8 \SpaceAfter 4 \Marker mt1 \Name mt1 - Title - Major Title Level 1 \Description The main title of the book (if multiple levels) (basic) \OccursUnder id \Rank 3 \TextProperties paragraph publishable vernacular level_1 \TextType Title \StyleType Paragraph \FontSize 20 \Bold \Justification Center \SpaceBefore 2 \SpaceAfter 4 \Marker mt2 \Name mt2 - Title - Major Title Level 2 \Description A secondary title usually occurring before the main title (basic) \OccursUnder id \Rank 3 \TextProperties paragraph publishable vernacular level_2 \TextType Title \StyleType Paragraph \FontSize 16 \Italic \Justification Center \SpaceAfter 2 \Marker mt3 \Name mt3 - Title - Major Title Level 3 \Description A secondary title occurring after the main title \OccursUnder id \Rank 3 \TextProperties paragraph publishable vernacular level_3 \TextType Title \StyleType Paragraph \FontSize 16 \Bold \Justification Center \SpaceBefore 2 \SpaceAfter 2 \Marker mt4 \Name mt4 - Title - Major Title level 4 \Description A small secondary title sometimes occuring within parentheses \OccursUnder id \Rank 3 \TextProperties paragraph publishable vernacular level_4 \TextType Title \StyleType Paragraph \FontSize 12 \Justification Center \SpaceBefore 2 \SpaceAfter 2 \Marker mte \Name mte - Title - [Uncommon] Major Title Ending Level 1 \Description The main title of the book repeated at the end of the book, level 1 (if single level) \TextProperties paragraph publishable vernacular level_1 \TextType Title \OccursUnder c \Rank 2 \StyleType Paragraph \FontSize 20 \Bold \Justification Center \SpaceBefore 8 \SpaceAfter 4 \Marker mte1 \Name mte1 - Title - [Uncommon] Major Title Ending Level 1 \Description The main title of the book repeated at the end of the book, level 1 (if multiple levels) \TextProperties paragraph publishable vernacular level_1 \TextType Title \OccursUnder li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 tc1 tc2 tc3 tc4 s3 d \Rank 2 \StyleType Paragraph \FontSize 20 \Bold \Justification Center \SpaceBefore 8 \SpaceAfter 4 \Marker mte2 \Name mte2 - Title - [Uncommon] Major Title Ending Level 2 \Description A secondary title occurring before or after the 'ending' main title \TextProperties paragraph publishable vernacular level_2 \TextType Title \OccursUnder mte1 \Rank 2 \StyleType Paragraph \FontSize 16 \Italic \Justification Center \SpaceAfter 2 \Marker ms \Name ms - Heading - Major Section Level 1 \Description A major section division heading, level 1 (if single level) (basic) \OccursUnder c \Rank 4 \TextType Section \TextProperties paragraph publishable vernacular level_1 \StyleType Paragraph \FontSize 14 \Bold \Justification Center \SpaceBefore 16 \SpaceAfter 4 \Marker ms1 \Name ms1 - Heading - Major Section Level 1 \Description A major section division heading, level 1 (if multiple levels) \OccursUnder c \Rank 4 \TextType Section \TextProperties paragraph publishable vernacular level_1 \StyleType Paragraph \FontSize 14 \Bold \Justification Center \SpaceBefore 16 \SpaceAfter 4 \Marker ms2 \Name ms2 - Heading - Major Section Level 2 \Description A major section division heading, level 2 \OccursUnder c \Rank 4 \TextType Section \TextProperties paragraph publishable vernacular level_1 \StyleType Paragraph \FontSize 14 \Bold \Justification Center \SpaceBefore 16 \SpaceAfter 4 \Marker ms3 \Name ms3 - Heading - Major Section Level 3 \Description A major section division heading, level 3 \OccursUnder c \Rank 4 \TextType Section \TextProperties paragraph publishable vernacular level_1 \StyleType Paragraph \FontSize 14 \Italic \Justification Center \SpaceBefore 16 \SpaceAfter 4 \Marker mr \Name mr - Heading - Major Section Range References \Description A major section division references range heading (basic) \OccursUnder ms ms1 ms2 ms3 \TextType Section \TextProperties paragraph publishable vernacular level_1 \StyleType Paragraph \FontSize 12 \Italic \Justification Center \SpaceAfter 4 \Marker s \Name s - Heading - Section Level 1 \Description A section heading, level 1 (if single level) (basic) \OccursUnder c \Rank 4 \TextType Section \TextProperties paragraph publishable vernacular level_1 \StyleType Paragraph \FontSize 12 \Bold \Justification Center \SpaceBefore 8 \SpaceAfter 4 \Marker s1 \Name s1 - Heading - Section Level 1 \Description A section heading, level 1 (if multiple levels) \OccursUnder c \Rank 4 \TextType Section \TextProperties paragraph publishable vernacular level_1 \StyleType Paragraph \FontSize 12 \Bold \Justification Center \SpaceBefore 8 \SpaceAfter 4 \Marker s2 \Name s2 - Heading - Section Level 2 \Description A section heading, level 2 (e.g. Proverbs 22-24) \OccursUnder c \Rank 4 \TextType Section \TextProperties paragraph publishable vernacular level_2 \StyleType Paragraph \FontSize 12 \Italic \Justification Center \SpaceBefore 8 \SpaceAfter 4 \Marker s3 \Name s3 - Heading - Section Level 3 \Description A section heading, level 3 (e.g. Genesis "The First Day") \OccursUnder c \Rank 4 \TextType Section \TextProperties paragraph publishable vernacular level_3 \StyleType Paragraph \FontSize 12 \Italic \Justification Left \SpaceBefore 6 \SpaceAfter 3 \Marker s4 \Name s4 - Heading - Section Level 4 \Description A section heading, level 4 \OccursUnder c \Rank 4 \TextType Section \TextProperties paragraph publishable vernacular level_4 \StyleType Paragraph \FontSize 12 \Italic \Justification Left \SpaceBefore 6 \SpaceAfter 3 \Marker sr \Name sr - Heading - Section Range References \Description A section division references range heading \OccursUnder s s1 s2 s3 s4 \TextType Section \TextProperties paragraph publishable vernacular level_1 \StyleType Paragraph \FontSize 12 \Bold \Justification Center \SpaceAfter 4 \Marker r \Name r - Heading - Parallel References \Description Parallel reference(s) (basic) \OccursUnder c s s1 s2 s3 s4 \TextType Section \TextProperties paragraph publishable vernacular level_1 \StyleType Paragraph \FontSize 12 \Italic \Justification Center \SpaceAfter 4 \Marker sp \Name sp - Heading - Speaker \Description A heading, to identify the speaker (e.g. Job) \OccursUnder c \Rank 4 \TextType Section \TextProperties paragraph publishable vernacular level_1 \StyleType Paragraph \FontSize 12 \Italic \Justification Left \SpaceBefore 8 \SpaceAfter 4 \Marker d \Name d - Heading - Descriptive Title - Hebrew Subtitle \Description A Hebrew text heading, to provide description (e.g. Psalms) \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular level_1 \StyleType Paragraph \FontSize 12 \Italic \Justification Center \SpaceBefore 4 \SpaceAfter 4 # Tables \Marker tr \Name tr - Table - Row \Description A new table row \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \LeftMargin .5 \FirstLineIndent -.25 # 6/16 inch \Marker th1 \Name th1 - Table - Column 1 Heading \Description A table heading, column 1 \OccursUnder tr \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Italic \Marker th2 \Name th2 - Table - Column 2 Heading \Description A table heading, column 2 \OccursUnder tr \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Italic \Marker th3 \Name th3 - Table - Column 3 Heading \Description A table heading, column 3 \OccursUnder tr \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Italic \Marker th4 \Name th4 - Table - Column 4 Heading \Description A table heading, column 4 \OccursUnder tr \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Italic \Marker tc1 \Name tc1 - Table - Column 1 Cell \Description A table cell item, column 1 \OccursUnder tr \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Marker tc2 \Name tc2 - Table - Column 2 Cell \Description A table cell item, column 2 \OccursUnder tr \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Marker tc3 \Name tc3 - Table - Column 3 Cell \Description A table cell item, column 3 \OccursUnder tr \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Marker tc4 \Name tc4 - Table - Column 4 Cell \Description A table cell item, column 4 \OccursUnder tr \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 # Right Aligned Table Heads and Columns \Marker thr1 \Name thr1 - Table - Column 1 Heading - Right Aligned \Description A table heading, column 1, right aligned \OccursUnder tr \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Italic \Justification right \Marker thr2 \Name thr2 - Table - Column 2 Heading - Right Aligned \Description A table heading, column 2, right aligned \OccursUnder tr \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Italic \Justification right \Marker thr3 \Name thr3 - Table - Column 3 Heading - Right Aligned \Description A table heading, column 3, right aligned \OccursUnder tr \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Italic \Justification right \Marker thr4 \Name thr4 - Table - Column 4 Heading - Right Aligned \Description A table heading, column 4, right aligned \OccursUnder tr \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Italic \Justification right \Marker tcr1 \Name tcr1 - Table - Column 1 Cell - Right Aligned \Description A table cell item, column 1, right aligned \OccursUnder tr \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Justification right \Marker tcr2 \Name tcr2 - Table - Column 2 Cell - Right Aligned \Description A table cell item, column 2, right aligned \OccursUnder tr \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Justification right \Marker tcr3 \Name tcr3 - Table - Column 3 Cell - Right Aligned \Description A table cell item, column 3, right aligned \OccursUnder tr \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Justification right \Marker tcr4 \Name tcr4 - Table - Column 4 Cell - Right Aligned \Description A table cell item, column 4, right aligned \OccursUnder tr \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Justification right # Lists \Marker li \Name li - List Entry - Level 1 \Description A list entry, level 1 (if single level) \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType paragraph \FontSize 12 \LeftMargin .625 \FirstLineIndent -.375 # 1/4 inch indent, 5/8 inch wrap \Marker li1 \Name li1 - List Entry - Level 1 \Description A list entry, level 1 (if multiple levels) \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType paragraph \FontSize 12 \LeftMargin .5 \FirstLineIndent -.25 # 1/4 inch indent, 5/8 inch wrap \Marker li2 \Name li2 - List Entry - Level 2 \Description A list entry, level 2 \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType paragraph \FontSize 12 \LeftMargin .75 \FirstLineIndent -.25 # 6/16 inch \Marker li3 \Name li3 - List Entry - Level 3 \Description A list entry, level 3 \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType paragraph \FontSize 12 \LeftMargin 1 \FirstLineIndent -.25 # 6/16 inch \Marker li4 \Name li4 - List Entry - Level 4 \Description A list entry, level 4 \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType paragraph \FontSize 12 \LeftMargin 1.25 \FirstLineIndent -.25 # 6/16 inch # Footnotes \Marker f \Endmarker f* \Name f...f* - Footnote \Description A Footnote text item (basic) \OccursUnder c li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 qs sp tc1 tc2 tc3 tc4 mt mt1 mt2 mt3 ms ms1 ms2 ms3 s s1 s2 s3 spd d ip cp \TextProperties publishable vernacular note \TextType NoteText \StyleType Note \FontSize 12 \Marker fe \Endmarker fe* \Name fe...fe* - Endnote \Description An Endnote text item \OccursUnder c li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 sp tc1 tc2 tc3 tc4 ms ms1 ms2 ms3 s s1 s2 s3 spd d ip \TextProperties publishable vernacular note \TextType NoteText \StyleType Note \FontSize 12 \Marker fr \Endmarker fr* \Name fr - Footnote - Reference \Description The origin reference for the footnote (basic) \OccursUnder f fe \TextType NoteText \TextProperties publishable vernacular note \StyleType Character \FontSize 12 \Bold \Marker ft \Endmarker ft* \Name ft - Footnote - Text \Description Footnote text, Protocanon (basic) \OccursUnder f fe \TextProperties publishable vernacular note \TextType NoteText \StyleType Character \FontSize 12 \Marker fk \Endmarker fk* \Name fk - Footnote - Keyword \Description A footnote keyword (basic) \OccursUnder f fe \TextProperties publishable vernacular note \TextType NoteText \StyleType Character \FontSize 12 \Bold \Italic \Marker fq \Endmarker fq* \Name fq - Footnote - Quotation or Alternate Rendering \Description A footnote scripture quote or alternate rendering (basic) \OccursUnder f fe \TextProperties publishable vernacular note \TextType NoteText \StyleType Character \FontSize 12 \Italic \Marker fqa \Endmarker fqa* \Name fqa - Footnote - Alternate Translation Rendering \Description A footnote alternate rendering for a portion of scripture text \OccursUnder f fe \TextProperties publishable vernacular note \TextType NoteText \StyleType Character \FontSize 12 \Italic \Marker fl \Endmarker fl* \Name fl - Footnote - Label Text \Description A footnote label text item, for marking or "labelling" the type or alternate translation being provided in the note. \OccursUnder f fe \TextProperties publishable vernacular note \TextType NoteText \StyleType Character \FontSize 12 \Italic \Bold \Marker fp \Endmarker fp* \Name fp - Footnote Paragraph Mark \Description A Footnote additional paragraph marker \OccursUnder f fe \TextProperties publishable vernacular note \TextType NoteText \StyleType Character \FontSize 12 \Marker fv \Endmarker fv* \Name fv...fv* - Footnote - Embedded Verse Number \Description A verse number within the footnote text \OccursUnder f fe \TextProperties publishable vernacular note \TextType NoteText \StyleType Character \FontSize 12 \Superscript \Marker fdc \Endmarker fdc* \Name fdc...fdc* - Footnote - DC text \Description Footnote text, applies to Deuterocanon only \OccursUnder f fe \TextProperties publishable vernacular note \TextType NoteText \StyleType Character \FontSize 12 \Marker fm \Endmarker fm* \Name fm - Footnote - Additional Caller to Previous Note \Description An additional footnote marker location for a previous footnote \OccursUnder li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 sp tc1 tc2 tc3 tc4 ms ms1 ms2 s s1 s2 s3 spd d ip \TextType Other \TextProperties paragraph publishable vernacular \StyleType Character \FontSize 12 \Superscript # Cross References \Marker x \Endmarker x* \Name x...x* - Cross Reference \Description A list of cross references (basic) \OccursUnder li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 qs sp tc1 tc2 tc3 tc4 mt mt1 mt2 mt3 ms ms1 ms2 s s1 s2 s3 spd d \TextProperties publishable vernacular note crossreference \TextType NoteText \StyleType Note \FontSize 12 \Marker xo \Endmarker xo* \Name xo - Cross Reference - Origin Reference \Description The cross reference origin reference (basic) \OccursUnder x \TextProperties publishable vernacular note \TextType NoteText \StyleType Character \FontSize 12 \Bold \Marker xt \Endmarker xt* \Name xt - Cross Reference - Target References \Description The cross reference target reference(s), protocanon only (basic) \OccursUnder x f ef ip ipi im imi ili ili1 ili2 \TextProperties publishable vernacular note \TextType NoteText \StyleType Character \FontSize 12 \Marker xk \Endmarker xk* \Name xk - Cross Reference - Keyword \Description A cross reference keyword \OccursUnder x \TextProperties publishable vernacular note \TextType NoteText \StyleType Character \FontSize 12 \Italic \Marker xq \Endmarker xq* \Name xq - Cross Reference - Quotation \Description A cross-reference quotation from the scripture text \OccursUnder x \TextProperties publishable vernacular note \TextType NoteText \StyleType Character \FontSize 12 \Italic \Marker xot \Endmarker xot* \Name xot...xot* - Cross Reference - OT Target Refs (optional) \Description Cross-reference target reference(s), Old Testament only \OccursUnder x \TextProperties publishable vernacular note \TextType NoteText \StyleType Character \FontSize 12 \Marker xnt \Endmarker xnt* \Name xnt...xnt* - Cross Reference - NT Target Refs (optional) \Description Cross-reference target reference(s), New Testament only \OccursUnder x \TextProperties publishable vernacular note \TextType NoteText \StyleType Character \FontSize 12 \Marker xdc \Endmarker xdc* \Name xdc...xdc* - Cross Reference - DC Target Refs \Description Cross-reference target reference(s), Deuterocanon only \OccursUnder x \TextProperties publishable vernacular note \TextType NoteText \StyleType Character \FontSize 12 \Marker rq \Endmarker rq* \Name rq...rq* - Cross Reference - Inline Quotation References \Description A cross-reference indicating the source text for the preceding quotation. \OccursUnder li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 NEST \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 10 \Italic # Study material extensions to existing USFM markup. \Marker efm \Endmarker efm* \Name efm - Study Note - ID/Caller \Description ID or Caller for an extended (study) note. Used within a source project duplicte (target) text when autoring study material. \OccursUnder li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 qm4 tc1 tc2 tc3 tc4 s3 d NEST \TextType Other \StyleType Character \FontSize 10 \Bold \Color 255 # Other Special Text \Marker qt \Endmarker qt* \Name qt...qt* - Special Text - Quoted Text - OT in NT \Description For Old Testament quoted text appearing in the New Testament (basic) \OccursUnder li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 sp tc1 tc2 tc3 tc4 ip im ili ili1 ili2 io io1 io2 f fe NEST \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Italic \Marker nd \Endmarker nd* \Name nd...nd* - Special Text - Name of Deity \Description For name of deity (basic) \OccursUnder ip im ipi imi ipq imq ipr iq iq1 iq2 iq3 li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 sp tc1 tc2 tc3 tc4 ms ms1 ms2 s s1 s2 s3 spd d ip f fe NEST \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Underline \Marker tl \Endmarker tl* \Name tl...tl* - Special Text - Transliterated Word \Description For transliterated words \OccursUnder li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 sp tc1 tc2 tc3 tc4 ms ms1 ms2 s s1 s2 s3 spd d ip f fe NEST \TextType VerseText \TextProperties publishable nonvernacular \StyleType Character \FontSize 12 \Italic \Marker dc \Endmarker dc* \Name dc...dc* - Special Text - Deuterocanonical/LXX Additions \Description Deuterocanonical/LXX additions or insertions in the Protocanonical text \OccursUnder li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 sp tc1 tc2 tc3 tc4 ms ms1 ms2 s s1 s2 s3 spd d ip f fe NEST \TextProperties publishable vernacular \StyleType Character \Italic \Marker bk \Endmarker bk* \Name bk...bk* - Special Text - Quoted book title \Description For the quoted name of a book \OccursUnder li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 sp tc1 tc2 tc3 tc4 ms ms1 ms2 s s1 s2 s3 spd d ip im ili ili1 ili2 io io1 io2 f fe NEST \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Italic \Marker sig \Endmarker sig* \Name sig...sig* - Special Text - Author's Signature (Epistles) \Description For the signature of the author of an Epistle \OccursUnder li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 sp tc1 tc2 tc3 tc4 ms ms1 ms2 s s1 s2 s3 spd d ip NEST \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Italic \Marker pn \Endmarker pn* \Name pn...pn* - Special Text - Proper Name \Description For a proper name \OccursUnder ip im ipi imi ipq imq ipr iq iq1 iq2 iq3 li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 sp tc1 tc2 tc3 tc4 ms ms1 ms2 s s1 s2 s3 spd d ip f fe NEST \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Bold \Underline \Marker addpn \Endmarker addpn* \Name (addpn...addpn*) - Special Text for Chinese \Description For chinese words to be dot underline & underline \OccursUnder ip im ipi imi ipq imq ipr iq iq1 iq2 iq3 li li1 li2 li3 li4 m mi mis nb p pc ph phi pi pi1 pi2 pi3 pr ps psi q q1 q2 q3 q4 qc qr sp tc1 tc2 tc3 tc4 ms ms1 ms2 s s1 s2 s3 spd d ip f fe NEST \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Character \FontSize 12 \Color 2263842 \Bold \Italic \Underline \Marker wj \Endmarker wj* \Name wj...wj* - Special Text - Words of Jesus \Description For marking the words of Jesus \OccursUnder li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 sp tc1 tc2 tc3 tc4 ms ms1 ms2 s s1 s2 s3 spd d ip f fe NEST \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Color 255 \Marker k \Endmarker k* \Name k...k* - Special Text - Keyword \Description For a keyword \OccursUnder li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 sp tc1 tc2 tc3 tc4 ms ms1 ms2 s s1 s2 s3 spd d ip im io1 io2 f fe NEST \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Italic \Bold \Marker sls \Endmarker sls* \Name sls...sls* - Special Text - Secondary Language or Text Source \Description To represent where the original text is in a secondary language or from an alternate text source \OccursUnder li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 sp tc1 tc2 tc3 tc4 f fe NEST \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Italic \Marker ord \Endmarker ord* \Name ord...ord* - Special Text - Ordinal number text portion \Description For the text portion of an ordinal number \OccursUnder ip im li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 sp tc1 tc2 tc3 tc4 ms ms1 ms2 s s1 s2 s3 spd d ip f fe NEST \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Character \FontSize 12 \Superscript \Marker add \Endmarker add* \Name add...add* - Special Text - Translational Addition \Description For a translational addition to the text \OccursUnder li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 sp tc1 tc2 tc3 tc4 ms ms1 ms2 s s1 s2 s3 spd d ip f fe NEST \TextType Other \TextProperties publishable vernacular \StyleType Character \Color 2263842 \Bold \Italic \Marker lit \Name lit - Special Text - Liturgical note \Description For a comment or note inserted for liturgical use \OccursUnder c \TextType Other \TextProperties paragraph publishable vernacular \StyleType Paragraph \Justification Right \FontSize 12 \Bold # Character Styling \Marker no \Endmarker no* \Name no...no* - Character - Normal Text \Description A character style, use normal text \OccursUnder is ip ipi im imi ili ili1 ili2 imq ipq iex iq iot io1 io2 io3 io4 s s1 s2 s3 NEST \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Marker it \Endmarker it* \Name it...it* - Character - Italic Text \Description A character style, use italic text \OccursUnder ip ipi im imi ili ili1 ili2 iex io1 io2 io3 io4 cd li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 sp tc1 tc2 tc3 tc4 ms ms1 ms2 s s1 s2 s3 spd d ip f fe NEST \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Italic \Marker bd \Endmarker bd* \Name bd...bd* - Character - Bold Text \Description A character style, use bold text \OccursUnder ip ipi im imi ili ili1 ili2 iex io1 io2 io3 io4 cd li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 sp tc1 tc2 tc3 tc4 ms ms1 ms2 s s1 s2 s3 spd d ip f fe NEST \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Bold \Marker bdit \Endmarker bdit* \Name bdit...bdit* - Character - BoldItalic Text \Description A character style, use bold + italic text \OccursUnder ip ipi im imi ili ili1 ili2 iex io1 io2 io3 io4 cd li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 sp tc1 tc2 tc3 tc4 ms ms1 ms2 s s1 s2 s3 spd d ip f fe NEST \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Bold \Italic \Marker em \Endmarker em* \Name em...em* - Character - Emphasized Text \Description A character style, use emphasized text style \OccursUnder ip ipi im imi ili ili1 ili2 iex io1 io2 io3 io4 cd li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 sp tc1 tc2 tc3 tc4 ms ms1 ms2 s s1 s2 s3 spd d ip f fe NEST \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Italic \Marker sc \Endmarker sc* \Name sc...sc* - Character - Small Caps \Description A character style, for small capitalization text \OccursUnder ip ipi im imi ili ili1 ili2 iex io1 io2 io3 io4 cd li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 sp tc1 tc2 tc3 tc4 ms ms1 ms2 s s1 s2 s3 spd d ip f fe NEST \TextProperties publishable vernacular \StyleType Character \FontSize 12 # Breaks \Marker pb \Name pb - Break - Page Break \Description Page Break used for new reader portions and children's bibles where content is controlled by the page \OccursUnder c \Rank 4 \TextType Other \TextProperties publishable \StyleType Paragraph \FontSize 12 # Special Features \Marker fig \Endmarker fig* \Name fig...fig* - Auxiliary - Figure/Illustration/Map \Description Illustration [Columns to span, height, filename, caption text] \OccursUnder li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 sp tc1 tc2 tc3 tc4 ms ms1 ms2 s s1 s2 s3 spd d ip \TextType Other \TextProperties paragraph publishable vernacular \StyleType Character \FontSize 12 \Marker pro \Endmarker pro* \Name pro...pro* - Special Text - CJK Pronunciation \Description For indicating pronunciation in CJK texts \OccursUnder ip im ipi imi ipq imq ipr iq iq1 iq2 iq3 li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 sp tc1 tc2 tc3 tc4 ms ms1 ms2 s s1 s2 s3 spd d ip f fe NEST \TextType Other \TextProperties Nonpublishable \StyleType Character \FontSize 10 \Color 128 # Peripheral References \Marker w \Endmarker w* \Name w...w* - Peripheral Ref - Wordlist Entry \Description A wordlist text item \OccursUnder ip im li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr d q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 tc1 tc2 tc3 tc4 s s1 s2 s3 s4 NEST \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Character \FontSize 12 \Color 16711935 \Bold \Italic \Marker wh \Endmarker wh* \Name wh...wh* - Peripheral Ref - Hebrew Wordlist Entry \Description A Hebrew wordlist text item \OccursUnder li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr d q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 tc1 tc2 tc3 tc4 s s1 s2 s3 s4 NEST \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Character \FontSize 12 \Color 16711935 \Bold \Italic \Marker wg \Endmarker wg* \Name wg...wg* - Peripheral Ref - Greek Wordlist Entry \Description A Greek Wordlist text item \OccursUnder li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr d q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 tc1 tc2 tc3 tc4 s s1 s2 s3 s4 NEST \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Character \FontSize 12 \Color 16711935 \Bold \Italic \Marker ndx \Endmarker ndx* \Name ndx...ndx* - Peripheral Ref - Subject Index Entry \Description A subject index text item \OccursUnder li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 tc1 tc2 tc3 tc4 s s1 s2 s3 s4 NEST \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Character \FontSize 12 \Color 16711935 \Bold \Italic # Peripheral Materials # Content Division Marker \Marker periph \Name periph - Peripherals - Content Division Marker \Description Periheral content division marker which should be followed by an additional division argument/title. \OccursUnder id \TextType Section \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 14 \Bold \SpaceBefore 16 \SpaceAfter 4 \Color 33023 # Additional peripheral material extensions to existing USFM markup. \Marker p1 \Name p1 - Periph - Front/Back Matter Paragraph Level 1 \Description Front or back matter text paragraph, level 1 (if multiple levels) \OccursUnder id \Rank 1 \TextType Other \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \FirstLineIndent .125 # 1/8 inch first line indent \Marker p2 \Name p2 - Periph - Front/Back Matter Paragraph Level 2 \Description Front or back matter text paragraph, level 2 (if multiple levels) \OccursUnder id \Rank 1 \TextType Other \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \FirstLineIndent .125 # 1/4 inch first line indent \LeftMargin .125 \Marker k1 \Name k1 - Periph - Concordance Keyword Level 1 \Description Concordance main entry text or keyword, level 1 \OccursUnder id \Rank 1 \TextType Other \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \Marker k2 \Name k2 - Periph - Concordance Keyword Level 2 \Description Concordance main entry text or keyword, level 2 \OccursUnder id \Rank 1 \TextType Other \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \Marker xtSee \Endmarker xtSee* \Name xtSee - Concordance and Names Index - Alternate Entry Target Reference \Description Concordance and Names Index markup for an alternate entry target reference. \OccursUnder p \TextProperties publishable vernacular \TextType NoteText \StyleType Character \FontSize 12 \Italic \Color 16711680 \Marker xtSeeAlso \Endmarker xtSeeAlso* \Name xtSeeAlso - Concordance and Names Index - Additional Entry Target Reference \Description Concordance and Names Index markup for an additional entry target reference. \OccursUnder p \TextProperties publishable vernacular \TextType Other \StyleType Character \FontSize 12 \Italic \color 16711680 # Other special text elements specified in USFM # ~ = fixed (no-break) space # // = discretionary line break # Obsolete, deprecated, or no longer officially part of USFM. # These markers may have existed in earlier resource and stylesheet revisions. \Marker pr \Name DEPRECATED pr - Paragraph - Right Aligned \Description Paragraph text, right aligned \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \Justification Right \FontSize 12 \Marker ph \Name DEPRECATED ph - Paragraph - Hanging Indent - Level 1 \Description Paragraph text, with level 1 hanging indent (if single level) \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \LeftMargin .5 \FirstLineIndent -.25 # 1/4 inch indent, 1/2 inch wrap \FontSize 12 \Marker ph1 \Name DEPRECATED ph1 - Paragraph - Hanging Indent - Level 1 \Description Paragraph text, with level 1 hanging indent (if multiple levels) \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \LeftMargin .5 \FirstLineIndent -.25 # 1/4 inch indent, 1/2 inch wrap \FontSize 12 \Marker ph2 \Name DEPRECATED ph2 - Paragraph - Hanging Indent - Level 2 \Description Paragraph text, with level 2 hanging indent \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \LeftMargin .75 \FirstLineIndent -.25 # 1/2 inch indent, 3/4 inch wrap \FontSize 12 \Marker ph3 \Name DEPRECATED ph3 - Paragraph - Hanging Indent - Level 3 \Description Paragraph text, with level 3 hanging indent \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \LeftMargin 1 \FirstLineIndent -.25 # 3/4 inch indent, 1 inch wrap \FontSize 12 \Marker phi \Name DEPRECATED phi - Paragraph - Indented - Hanging Indent \Description Paragraph text, indented with hanging indent \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \LeftMargin 1 \Marker tr1 \Name OBSOLETE tr1 - Table - Row - Level 1 \Description A table Row \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \LeftMargin .5 \FirstLineIndent -.25 # 6/16 inch \Marker tr2 \Name OBSOLETE tr2 - Table - Row - Level 2 \Description A table Row \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \LeftMargin .75 \FirstLineIndent -.25 # 6/16 inch \Marker ps \Name OBSOLETE ps - Paragraph - No Break with Next Paragraph \Description Paragraph text, no break with next paragraph text at chapter boundary \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \FirstLineIndent .125 # 1/8 inch first line indent \Marker psi \Name OBSOLETE psi - Paragraph - Indented - No Break with Next \Description Paragraph text, indented, with no break with next paragraph text (at chapter boundary) \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \FirstLineIndent .125 # 1/8 inch first line indent \LeftMargin .25 \RightMargin .25 \FontSize 12 \Marker wr \Endmarker wr* \Name OBSOLETE wr...wr* - Auxiliary - Wordlist/Glossary Reference \Description A Wordlist text item \OccursUnder ms s li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr q q1 q2 q3 q4 qc qr tc1 tc2 tc3 tc4 f fe NEST \TextProperties publishable vernacular note \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Character \FontSize 12 \Italic # 2.0x peripheral markup (replaced with \periph + Content Division Title/Argument) \Marker pub \Name OBSOLETE pub Peripherals - Front Matter Publication Data \Description Front matter publication data \OccursUnder id \Rank 4 \TextProperties paragraph publishable vernacular poetic \TextType VerseText \FontSize 10 \StyleType paragraph \Marker toc \Name OBSOLETE toc Peripherals - Front Matter Table of Contents \Description Front matter table of contents \OccursUnder id \Rank 4 \TextProperties paragraph publishable vernacular poetic \TextType VerseText \FontSize 10 \StyleType paragraph \Marker pref \Name OBSOLETE pref Peripherals - Front Matter Preface \Description Front matter preface \OccursUnder id \Rank 4 \TextProperties paragraph publishable vernacular poetic \TextType VerseText \FontSize 10 \StyleType paragraph \Marker intro \Name OBSOLETE intro Peripherals - Front Matter Introduction \Description Front matter introduction \OccursUnder id \Rank 4 \TextProperties paragraph publishable vernacular poetic \TextType VerseText \FontSize 10 \StyleType paragraph \Marker conc \Name OBSOLETE conc Peripherals - Back Matter Concordance \Description Back matter concordance \OccursUnder id \Rank 4 \TextProperties paragraph publishable vernacular poetic \TextType VerseText \FontSize 10 \StyleType paragraph \Marker glo \Name OBSOLETE glo Peripherals - Back Matter Glossary \Description Back matter glossary \OccursUnder id \Rank 4 \TextProperties paragraph publishable vernacular poetic \TextType VerseText \FontSize 10 \StyleType paragraph \Marker idx \Name OBSOLETE idx Peripherals - Back Matter Index \Description Back matter index \OccursUnder id \Rank 4 \TextProperties paragraph publishable vernacular poetic \TextType VerseText \FontSize 10 \StyleType paragraph \Marker maps \Name OBSOLETE maps Peripherals - Back Matter Map Index \Description Back matter map index \OccursUnder id \Rank 4 \TextProperties paragraph publishable vernacular poetic \TextType VerseText \FontSize 10 \StyleType paragraph \Marker cov \Name OBSOLETE cov Peripherals - Other - Cover \Description Other peripheral materials - cover \OccursUnder id \Rank 4 \TextProperties paragraph publishable vernacular poetic \TextType VerseText \FontSize 10 \StyleType paragraph \Marker spine \Name OBSOLETE spine Peripherals - Other - Spine \Description Other peripheral materials - spine \OccursUnder id \Rank 4 \TextProperties paragraph publishable vernacular poetic \TextType VerseText \FontSize 10 \StyleType paragraph \Marker pubinfo \Name OBSOLETE pubinfo - Publication - Information \Description Publication information - Lang,Credit,Version,Copies,Publisher,Id,Logo \OccursUnder id ide \TextType Other \TextProperties paragraph nonpublishable nonvernacular \StyleType Paragraph \FontSize 12 \Color 16711680 # Concordance/Names Index Tools - special sfms for use in Publishing Assistant \Marker zpa-xb \Endmarker zpa-xb* \Name zpa-xb - Periph - Book \Description Book Ref \OccursUnder id \Rank 1 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Character \FontSize 12 \Marker zpa-xc \Endmarker zpa-xc* \Name zpa-xc - Periph - Chapter \Description Chapter Ref \OccursUnder id \Rank 1 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Character \FontSize 12 \Bold \Marker zpa-xv \Endmarker zpa-xv* \Name zpa-xv - Periph - Verse \Description Verse Ref \OccursUnder id \Rank 1 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Character \FontSize 12 \Marker zpa-d \Endmarker zpa-d* \Name zpa-d - Periph - Description \Description Description \OccursUnder id \Rank 1 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Character \FontSize 12 bibledit-gtk-4.9/tests/Makefile.am000664 000766 000024 00000000044 12221507126 017247 0ustar00teusstaff000000 000000 EXTRA_DIST = *test* CLEANFILES = *~ bibledit-gtk-4.9/tests/Makefile.in000644 000766 000024 00000031165 12517415675 017305 0ustar00teusstaff000000 000000 # Makefile.in generated by automake 1.15 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2014 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ am__is_gnu_make = { \ if test -z '$(MAKELEVEL)'; then \ false; \ elif test -n '$(MAKE_HOST)'; then \ true; \ elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ true; \ else \ false; \ fi; \ } am__make_running_with_option = \ case $${target_option-} in \ ?) ;; \ *) echo "am__make_running_with_option: internal error: invalid" \ "target option '$${target_option-}' specified" >&2; \ exit 1;; \ esac; \ has_opt=no; \ sane_makeflags=$$MAKEFLAGS; \ if $(am__is_gnu_make); then \ sane_makeflags=$$MFLAGS; \ else \ case $$MAKEFLAGS in \ *\\[\ \ ]*) \ bs=\\; \ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ esac; \ fi; \ skip_next=no; \ strip_trailopt () \ { \ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ }; \ for flg in $$sane_makeflags; do \ test $$skip_next = yes && { skip_next=no; continue; }; \ case $$flg in \ *=*|--*) continue;; \ -*I) strip_trailopt 'I'; skip_next=yes;; \ -*I?*) strip_trailopt 'I';; \ -*O) strip_trailopt 'O'; skip_next=yes;; \ -*O?*) strip_trailopt 'O';; \ -*l) strip_trailopt 'l'; skip_next=yes;; \ -*l?*) strip_trailopt 'l';; \ -[dEDm]) skip_next=yes;; \ -[JT]) skip_next=yes;; \ esac; \ case $$flg in \ *$$target_option*) has_opt=yes; break;; \ esac; \ done; \ test $$has_opt = yes am__make_dryrun = (target_option=n; $(am__make_running_with_option)) am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ target_triplet = @target@ subdir = tests ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = AM_V_P = $(am__v_P_@AM_V@) am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) am__v_P_0 = false am__v_P_1 = : AM_V_GEN = $(am__v_GEN_@AM_V@) am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) am__v_GEN_0 = @echo " GEN " $@; am__v_GEN_1 = AM_V_at = $(am__v_at_@AM_V@) am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) am__v_at_0 = @ am__v_at_1 = SOURCES = DIST_SOURCES = am__can_run_installinfo = \ case $$AM_UPDATE_INFO_DIR in \ n|no|NO) false;; \ *) (install-info --version) >/dev/null 2>&1;; \ esac am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/mkinstalldirs DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CAT_PATH = @CAT_PATH@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DATE_PATH = @DATE_PATH@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ ENCHANT_CFLAGS = @ENCHANT_CFLAGS@ ENCHANT_LIBS = @ENCHANT_LIBS@ EXEEXT = @EXEEXT@ FIND_CURL = @FIND_CURL@ FIND_DIFF = @FIND_DIFF@ FIND_GPP = @FIND_GPP@ FIND_MERGE = @FIND_MERGE@ FIND_PATCH = @FIND_PATCH@ FIND_PATH = @FIND_PATH@ FIND_TAR = @FIND_TAR@ FIND_XARGS = @FIND_XARGS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_LIBS = @GLIB_LIBS@ GOBJECT_CFLAGS = @GOBJECT_CFLAGS@ GOBJECT_LIBS = @GOBJECT_LIBS@ GREP = @GREP@ GREP_PATH = @GREP_PATH@ GTHREAD_CFLAGS = @GTHREAD_CFLAGS@ GTHREAD_LIBS = @GTHREAD_LIBS@ GTKSOURCEVIEW_CFLAGS = @GTKSOURCEVIEW_CFLAGS@ GTKSOURCEVIEW_LIBS = @GTKSOURCEVIEW_LIBS@ GTK_CFLAGS = @GTK_CFLAGS@ GTK_LIBS = @GTK_LIBS@ GUNZIP_PATH = @GUNZIP_PATH@ GZIP_PATH = @GZIP_PATH@ HAVE_CXX11 = @HAVE_CXX11@ HEAD_PATH = @HEAD_PATH@ ICONV_PATH = @ICONV_PATH@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBSOUP_CFLAGS = @LIBSOUP_CFLAGS@ LIBSOUP_LIBS = @LIBSOUP_LIBS@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MAKE_PATH = @MAKE_PATH@ MKDIR_P = @MKDIR_P@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PANGO_CFLAGS = @PANGO_CFLAGS@ PANGO_LIBS = @PANGO_LIBS@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SORT_PATH = @SORT_PATH@ SQLITE_CFLAGS = @SQLITE_CFLAGS@ SQLITE_LIBS = @SQLITE_LIBS@ STRINGS_PATH = @STRINGS_PATH@ STRIP = @STRIP@ TAIL_PATH = @TAIL_PATH@ TEE_TOUCH = @TEE_TOUCH@ VERSION = @VERSION@ WEBKIT_CFLAGS = @WEBKIT_CFLAGS@ WEBKIT_LIBS = @WEBKIT_LIBS@ XML2_CONFIG = @XML2_CONFIG@ XML_CPPFLAGS = @XML_CPPFLAGS@ XML_LIBS = @XML_LIBS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ ac_ct_CXX = @ac_ct_CXX@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ packagedatadir = @packagedatadir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target = @target@ target_alias = @target_alias@ target_cpu = @target_cpu@ target_os = @target_os@ target_vendor = @target_vendor@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ EXTRA_DIST = *test* CLEANFILES = *~ all: all-am .SUFFIXES: $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu tests/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --gnu tests/Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): tags TAGS: ctags CTAGS: cscope cscopelist: distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done check-am: all-am check: check-am all-am: Makefile installdirs: install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: if test -z '$(STRIP)'; then \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ install; \ else \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ fi mostlyclean-generic: clean-generic: -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-generic mostlyclean-am distclean: distclean-am -rm -f Makefile distclean-am: clean-am distclean-generic dvi: dvi-am dvi-am: html: html-am html-am: info: info-am info-am: install-data-am: install-dvi: install-dvi-am install-dvi-am: install-exec-am: install-html: install-html-am install-html-am: install-info: install-info-am install-info-am: install-man: install-pdf: install-pdf-am install-pdf-am: install-ps: install-ps-am install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-am -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-generic pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: .MAKE: install-am install-strip .PHONY: all all-am check check-am clean clean-generic cscopelist-am \ ctags-am distclean distclean-generic distdir dvi dvi-am html \ html-am info info-am install install-am install-data \ install-data-am install-dvi install-dvi-am install-exec \ install-exec-am install-html install-html-am install-info \ install-info-am install-man install-pdf install-pdf-am \ install-ps install-ps-am install-strip installcheck \ installcheck-am installdirs maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-generic pdf \ pdf-am ps ps-am tags-am uninstall uninstall-am .PRECIOUS: Makefile # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: bibledit-gtk-4.9/tests/usfm_editor_test_data000664 000766 000024 00000004203 12221507126 021507 0ustar00teusstaff000000 000000 \c 1 \ms1 Greetings to Gaius \p \v 1 From the church leader.\fe * \fr v1 \fq church leader: \ft Or “elder” or “presbyter” or “priest”.\fe*\x - \xo v1: \xt Ac 19.29; Ro 16.23; 1 Co 1.14.\x* \p To my \add dear\add* friend Gaius. \p I love you because we follow the truth, \v 2 dear friend, and I pray that all goes well for you. \v 3 It makes me very happy when the Lord's followers come by and speak openly of how you obey the truth. \v 4 Nothing brings me greater happiness than to hear that my children\f + \fr v4 \fq children: \ft Probably persons that the leader had led to be followers of the Lord.\fp This text ought to start a new paragraph. \fdc This sentence is marked using the fdc style.\fdc* Probably persons that the leader had led to be followers of the Lord. Probably persons that the leader had led to be followers of the Lord. Probably persons that the leader had led to be followers of the Lord.\f* are obeying the truth. \p \v 5 Dear friend, you have always been faithful in helping other followers of the Lord, even the ones you didn't know before. \p \v 11 They are God's children, but those who are always doing evil have never seen God. \p \v 12 Everyone speaks well of Demetrius, and so does the true message that he teaches. \s Final greetings \p \v 14 I hope to see you soon, and then we can talk in person. \p \v 15 I pray that God will bless you with peace! \p Your friends send their greetings. Please give a personal greeting to each of our friends. \p \v 16-25 They presented their offerings in the following order (here table one starts): \tr \th1 Day\th2 Tribe\th3 Leader \tr \tc1 1st\tc2 Judah\tc3 Nahshon son of Amminadab \tr \tc1 2nd\tc2 Issachar\tc3 Nethanel son of Zuar \tr \tc1 3rd\tc2 Zebulun\tc3 Eliab son of Helon \p \v 26-27 On the south, those under the banner of the division of Reuben shall camp in their groups, under their leaders, as follows (here table two starts): \tr \th1 Tribe\th2 Leader\thr3 Number \tr \tc1 Reuben\tc2 Elizur son of Shedeur\tcr3 46,500 \tr \tc1 Simeon\tc2 Shelumiel son of Zurishaddai\tcr3 59,300 \tr \tc1 Gad\tc2 Eliasaph son of Deuel\tcr3 45,650 \tr \tcr2 Total:\tcr3 151,450 \p End of tables. bibledit-gtk-4.9/templates/back_matter.usfm000664 000766 000024 00000000567 12221507125 021230 0ustar00teusstaff000000 000000 \id BAK \glo \mt Glossary \ip This dictionary is divided into sections. Below is a list all of the sections and all of the entries in alphabetical order. \b \p \k Angel\k* A supernatural being ... \mt General Word List \zopenwordlist \zclosewordlist \mt Hebrew Word List \zopenhebrewwordlist \zclosehebrewwordlist \mt Greek Word List \zopengreekwordlist \zclosegreekwordlist bibledit-gtk-4.9/templates/backup_is_ready.html000664 000766 000024 00000001236 12221507125 022064 0ustar00teusstaff000000 000000 Bibledit

Bibledit

Your backup is ready, and available at location (100 bytes).

Please keep it in a safe place or mail it to somebody.

View all available backups.

bibledit-gtk-4.9/templates/bibledit_loads_references.html000664 000766 000024 00000001762 12221507125 024105 0ustar00teusstaff000000 000000 Bibledit

Bibledit is loading the references...

Switch to Bibledit to see them.

bibledit-gtk-4.9/templates/bibledit_resource_viewer_main.html000664 000766 000024 00000000726 12221507126 025016 0ustar00teusstaff000000 000000 Bibledit Resources Viewer bibledit-gtk-4.9/templates/bibledit_resource_viewer_reference.html000664 000766 000024 00000003233 12221507126 026024 0ustar00teusstaff000000 000000 Bibledit Resource Viewer

bibledit-gtk-4.9/templates/front_matter.usfm000664 000766 000024 00000001674 12221507125 021460 0ustar00teusstaff000000 000000 \id FRT \pub \zelastic \mt3 THE \mt1 HOLY \mt1 BIBLE \mt4 CONTAINING \mt3 THE OLD AND NEW TESTAMENTS \mt4 TRANSLATED FROM THE ORIGINAL LANGUAGES \zelastic \fig |biblesociety.jpeg|col||||\fig* \pc Worldwide Bible Society \pc Africa \pb \zelastic \pc This is a preliminary edition of the Bible \pc intended for proofreading and testing \zelastic \mt3 Holy Bible \mt4 English \b \pc ISBN 0-11111-222-3 \zelastic \pc Illustrations by Sarah Downes, © _year_ The Foreign Bible Society \zelastic \pc ©_year_ Worldwide Bible Society \pc Bible House \pc 1 Bible Avenue \pc Bulawayo, Zimbabwe \zelastic \fig |biblesociety.jpeg|col||||\fig* \pc Worldwide Bible Society \pc Africa \pb \pref \mt Preface \p The translators greet the readers ... \pb \intro \mt Introduction \p Published in _year_, this version of the Bible in the English language was translated from manuscripts of the Hebrew Scriptures and the Greek New Testament ... \pb \mt Table of Contents \toc bibledit-gtk-4.9/templates/gtkbuilder.bulkspellingdialog.xml000664 000766 000024 00000005663 12221507126 024613 0ustar00teusstaff000000 000000 True Bulk Speller True center-always normal True True label False 10 2 True True automatic automatic True queue True vertical 3 True end False end 0 bibledit-gtk-4.9/templates/gtkbuilder.floatingwindow.xml000664 000766 000024 00000022445 12221507126 023770 0ustar00teusstaff000000 000000 True False True False False False 0 True False True False False False 0 True False True False True False True False middle True True 0 True False True False x False False 4 1 False False 0 True False True False True True 1 True False 5 True False True False False False 0 True False True False False False 1 True False True False True True 2 True False True False |||| False False False 3 False False 2 True True 1 True False False False 2 True True 1 True False False False 2 bibledit-gtk-4.9/templates/gtkbuilder.gotoreferencedialog.xml000664 000766 000024 00000026654 12221507126 024752 0ustar00teusstaff000000 000000 5 Goto reference False True center-on-parent dialog False True vertical True Press Control-G to go to another view False 1 True True True 5 True Go to False False 0 True True ● 1 True Free False True 2 3 4 4 True Book True Chapter 1 2 True Verse 2 3 60 200 True True never automatic True True False 1 2 60 200 True True never automatic True True False 1 2 1 2 60 200 True True never automatic True True False 2 3 1 2 1 True Aided 1 False True gtk-go-back True True False True True True False 0 gtk-go-forward True True False True True 1 2 True History 2 False 2 True end False end 0 bibledit-gtk-4.9/templates/gtkbuilder.guidialog.xml000664 000766 000024 00000030500 12221507126 022670 0ustar00teusstaff000000 000000 True User interface True center-always normal True 2 True Features False False 1 Only the basics are available True True False True True False False 2 Full features are available True True False True True radiobutton_basic False False 3 User defined features True True False True True radiobutton_basic False False 4 Printing True True False True True False False 5 Project management True True False True True 6 References management True True False True True 7 Styles True True False True True 8 Styles management True True False True True 9 Project notes True True False True True 10 Project notes management True True False True True 11 References and find True True False True True 12 Replace True True False True True 13 Checks True True False True True 14 Tools True True False True True 15 Preferences True True False True True 16 True False 17 Remember most recent verse per chapter True True False True True 18 Start program maximized True True False True True 20 True end False end 0 bibledit-gtk-4.9/templates/gtkbuilder.parallelbibledialog.xml000664 000766 000024 00000033025 12221507125 024702 0ustar00teusstaff000000 000000 True Parallel Bible True center dialog True True 2 True 0 Parallel Bible. This prints worksheets with parallel versions on it. Each verse of one book in your project gets the parallel verses of other projects printed below it. False False 0 True False 1 True 2 True First project: False False 0 True 0.63999998569488525 <Project> False False 1 False False 2 True True Book: False False 0 True <Book> False False 1 False False 3 True 4 True Portion: False False 0 True <all> False False 1 True True False True 0 0 True 2 True gtk-preferences False False 0 True Change True False False 1 False False 2 False False 4 True False 5 True 0 Additional projects: False False 6 True False 7 True True never automatic True queue True 8 True False 9 Keep all parallel verses together on the page True True False True True False False 10 Include verses 0 True True False True True False False 11 2 True end False end 0 bibledit-gtk-4.9/templates/gtkbuilder.planningeditdialog.xml000664 000766 000024 00000010125 12221507126 024561 0ustar00teusstaff000000 000000 True Planning Edit True center-always dialog True vertical True 2 2 Status True True True image1 True Tasks True True True image2 True 1 2 True The project's status 1 2 True The project's planned tasks 1 2 1 2 False False 2 True end False end 0 True gtk-apply True gtk-preferences bibledit-gtk-4.9/templates/gtkbuilder.planningsetupdialog.xml000664 000766 000024 00000015667 12221507126 025014 0ustar00teusstaff000000 000000 True Planning Setup True center-always dialog True True 5 True 4 3 2 4 4 Durations True True True image3 True 2 3 GTK_FILL Tasks True True True image2 True 1 2 GTK_FILL True 0 The time each task takes per chapter 1 2 2 3 GTK_FILL True 0 The tasks that the project consists of 1 2 1 2 GTK_FILL Start True True True image1 True GTK_FILL True 0 When the project was started 1 2 0 2 True end False end 0 True gtk-media-play True gtk-sort-ascending True gtk-edit bibledit-gtk-4.9/templates/gtkbuilder.progressdialog.xml000664 000766 000024 00000005046 12221507126 023757 0ustar00teusstaff000000 000000 True Bibledit False True center-always dialog False True 10 True label 1 True 2 gtk-cancel True True True True True True True True 3 True end False end 0 bibledit-gtk-4.9/templates/gtkbuilder.referenceexchangedialog.xml000664 000766 000024 00000013072 12221507126 025552 0ustar00teusstaff000000 000000 5 Reference settings False True center dialog True 2 True 0 Bibledit-Web local or remote website URL: (example: http://localhost/bibledit) 0 True True • 1 True False 2 True 0 Bibledit-Web username: (example: joe) 3 True True • 4 True False 5 True 5 Test True True True True False False 0 True 0 url info 1 6 True end False end 22 bibledit-gtk-4.9/templates/gtkbuilder.referencesettingsdialog.xml000664 000766 000024 00000005245 12221507126 025633 0ustar00teusstaff000000 000000 5 Reference settings False True center dialog True vertical 2 Show verse text True True False True True False 2 Only show the relevant bits True True False True True False 3 True end False end 0 bibledit-gtk-4.9/templates/gtkbuilder.showprojectnotesdialog.xml000664 000766 000024 00000053450 12221507126 025535 0ustar00teusstaff000000 000000 5 Show Project Notes False True center-on-parent dialog True vertical 2 True Selection False 2 True 10 True 0 Notes that refer to the False 0 current verse True True False True True True False 1 current chapter True True False True True True False 2 current book True True False True True True False 3 any verse True True False True True True False 4 False False 3 True 10 True 0 Notes edited False 0 today True True False True True True False 1 True between True True False True True True False 0 start True True True True 1 True and 2 end True True True 3 False 2 at any time True True False True True True False 3 False False 4 True 3 True 0 Notes of category False 0 True 1 False False 5 True 5 True 0 Notes of project False 0 current True True False True True True False 1 any True True False True True True False 2 False False 6 True Display False 7 True 7 Title, including True True False True 0 True False 0 project True True False True True False 1 category True True False True True False 2 date created True True False True True False 3 created by True True False True True False 4 False 8 True 8 True 0 Text False 0 full True True False True True True False 1 summary True True False True True True False 2 add text of the references True True False True True False 3 False 9 True Result 10 True 0 11 True end False end 0 bibledit-gtk-4.9/templates/gtkbuilder.systemlogdialog.xml000664 000766 000024 00000012715 12221507126 024142 0ustar00teusstaff000000 000000 480 5 System log False True center 640 480 dialog False True vertical 2 True True automatic automatic True True False 1 True Show previous session True True False True True 0 Main True True False True True True 1 Shutdown True True False True True True 4 Diagnostics True True True image_diag True 5 False False 2 True end False end 0 True gtk-preferences bibledit-gtk-4.9/templates/gtkbuilder.timednotifywindow.xml000664 000766 000024 00000001520 12221507125 024506 0ustar00teusstaff000000 000000 Notification False center-always notification True True False False True 60 60 bibledit-gtk-4.9/templates/gtkbuilder.xetexdialog.xml000664 000766 000024 00000037026 12221507125 023252 0ustar00teusstaff000000 000000 5 Print settings False True center-always dialog False True vertical 2 True vertical True 6 True Portion: False 0 True portion False 1 Change True True True True False 2 0 True True True True True vertical Write the references in the notes in full (not yet implemented) True True False True True 0 True Notes True False True vertical True 0 Page format and margins are set under menu Preferences / Printing 0 Crop marks True True False True True 1 1 True Page True 1 False True vertical True 0 XeTeX has a font mapping option that allows a Unicode->Unicode TECkit mapping table to be associated with a font. Such a mapping could be used to convert all numbers to their localized versions. True 0 True Clear True True True True False 0 True False 1 1 2 True Mapping True 2 False True vertical Use generic shaping engine True True False True True True False 0 Use arab shaping engine True True False True True True False False 1 3 True Engine 3 False True Options True True 1 False 1 True end False end 0 bibledit-gtk-4.9/templates/gtkbuilder.yesnoalwaysdialog.xml000664 000766 000024 00000005725 12221507126 024475 0ustar00teusstaff000000 000000 True Yes or no True center-always normal True True 10 True gtk-dialog-question 6 0 True question 1 10 2 _Remember my choice throughout this session True True False True True False 10 3 True end False end 0 bibledit-gtk-4.9/templates/keyterms.sql000664 000766 000024 00015702000 12221507126 020442 0ustar00teusstaff000000 000000 SQLite format 3@  AzKtablekeytermkeytermCREATE TABLE keyterm (id integer, category integer, name string, namecf string, comment string)KktablecategorycategoryCREATE TABLE category (id integer, name string)p/tablereferencereferenceCREATE TABLE reference (id integer, book integer, chapter integer, verse integer) }wqke_YSMGA;5/)# {uoic]WQKE?93-'! ysmga[UOIC=71+% " Ecd[!Y^PLXIHR@?L> 2F1(@#} :w4q.k(e"_YS޴ٳMԳ ϲG˲ıA~;x5r/l)f#`ZT|uNo nHgaB\V<PyK6Gs@0>m7*2g,$+a"[U O IC=z7tۘ1՗nҗ+̖hɖ%•b\VP JD>{8uy2voo,kie&cb^]RS NBJzD2CjB"6Z1,J V kL1k j:  _=( 9Old Testament Keyterms+Greek Key Terms EKey Terms in Biblical Hebrew(UNon-Greek words of the New Testament!GKeywords of the Old Testament(UFlora and Fauna of the Old Testament(UFlora and Fauna of the New Testament *~ytoje`[VQLGB=83.)# {uoic]WQKE?93-'! ysmga[UOIC=71+%_refereJNHMFL?K6J3H0E/C%B$@ ?=<;841/-*('%#  ~}݁z܁uځq؁nׁmցhԁfӁd́^ˁ[ʁXȁVŁUÁTRNMLIDA@;520/,*)('&#"}|{zxusrq nmjhfd|bw\sOqMnIhGgFeEb9_8\5Y4W3U0Q-L*J(E&B%>$:"8 752.,)%$!    e7UkT8 c.))bearded darnelbearded darnelTransliteration: zizanion _reference_start_Matthew 13:25_reference_end_ _reference_start_Matthew 13:26_reference_end_ _reference_start_Matthew 13:27_reference_end_ _reference_start_Matthew 13:29_reference_end_ _reference_start_Matthew 13:30_reference_end_ _reference_start_Matthew 13:36_reference_end_ _reference_start_Matthew 13:38_reference_end_ _reference_start_Matthew 13:40_reference_end_.?barleybarleyTransliteration: krithe _reference_start_John 6:9_reference_end_ _reference_start_John 6:13_reference_end_ _reference_start_Revelation 6:6_reference_end_++kanemone or lilyanemone or lilyTransliteration: krinon _reference_start_Matthew 6:28_reference_end_ _reference_start_Luke 12:27_reference_end_Q aloealoeTransliteration: aloe _reference_start_John 19:39_reference_end_ ;wbird (2)bird (2)Transliteration: peteinos _reference_start_Matthew 6:26_reference_end_ _reference_start_Matthew 8:20_reference_end_ _reference_start_Matthew 13:4_reference_end_ _reference_start_Matthew 13:32_reference_end_ _reference_start_Mark 4:4_reference_end_ _reference_start_Mark 4:32_reference_end_ _reference_start_Luke 8:5_reference_end_ _reference_start_Luke 9:58_reference_end_ _reference_start_Luke 12:24_reference_end_ _reference_start_Luke 13:19_reference_end_ _reference_start_Acts 10:12_reference_end_ _reference_start_Acts 11:6_reference_end_ _reference_start_Romans 1:23_reference_end_ _reference_start_James 3:7_reference_end_B_bird (1)bird (1)Transliteration: orneon _reference_start_Revelation 18:2_reference_end_ _reference_start_Revelation 19:17_reference_end_ _reference_start_Revelation 19:21_reference_end_ Y>Yb  bull, oxbull, oxTransliteration: tauros _reference_start_Matthew 22:4_reference_end_ _reference_start_Acts 14:13_reference_end_ _reference_start_Hebrews 9:13_reference_end_ _reference_start_Hebrews 10:4_reference_end_'//bull, cow, cattlebull, cow, cattleTransliteration: bous _reference_start_Luke 13:15_reference_end_ _reference_start_Luke 14:5_reference_end_ _reference_start_Luke 14:19_reference_end_ _reference_start_John 2:14_reference_end_ _reference_start_John 2:15_reference_end_ _reference_start_1 Corinthians 9:9_reference_end_ _reference_start_1 Corinthians 9:9_reference_end_ _reference_start_1 Timothy 5:18_reference_end_''qblack mustardblack mustardTransliteration: sinapi _reference_start_Matthew 13:31_reference_end_ _reference_start_Matthew 17:20_reference_end_ _reference_start_Mark 4:31_reference_end_ _reference_start_Luke 13:19_reference_end_ _reference_start_Luke 17:6_reference_end_ B2B k chaffchaffTransliteration: achuron _reference_start_Matthew 3:12_reference_end_ _reference_start_Luke 3:17_reference_end_2 K camelcamelTransliteration: kamelos _reference_start_Matthew 3:4_reference_end_ _reference_start_Matthew 19:24_reference_end_ _reference_start_Matthew 23:24_reference_end_ _reference_start_Mark 1:6_reference_end_ _reference_start_Mark 10:25_reference_end_ _reference_start_Luke 18:25_reference_end_3 Q calfcalfTransliteration: moschos _reference_start_Luke 15:23_reference_end_ _reference_start_Luke 15:27_reference_end_ _reference_start_Luke 15:30_reference_end_ _reference_start_Hebrews 9:12_reference_end_ _reference_start_Hebrews 9:19_reference_end_ _reference_start_Revelation 4:7_reference_end_K --Q bunch of graphesbunch of graphesTransliteration: staphulen _reference_start_Matthew 7:16_reference_end_ _reference_start_Luke 6:44_reference_end_ _reference_start_Revelation 14:18_reference_end_ r--cultivated olivecultivated oliveTransliteration: kallielaios _reference_start_Romans 11:24_reference_end_6WcockcockTransliteration: alektor _reference_start_Matthew 26:34_reference_end_ _reference_start_Matthew 26:74_reference_end_ _reference_start_Matthew 26:75_reference_end_ _reference_start_Mark 13:35_reference_end_ _reference_start_Mark 14:30_reference_end_ _reference_start_Mark 14:68_reference_end_ _reference_start_Mark 14:72_reference_end_ _reference_start_Luke 22:34_reference_end_ _reference_start_Luke 22:60_reference_end_ _reference_start_Luke 22:61_reference_end_ _reference_start_John 13:38_reference_end_ _reference_start_John 18:27_reference_end_:%%?clothes mothclothes mothTransliteration: ses _reference_start_Matthew 6:19_reference_end_ _reference_start_Matthew 6:20_reference_end_ _reference_start_Luke 12:33_reference_end_u--%cheylon cinnamoncheylon cinnamonTransliteration: kinnamomon _reference_start_Revelation 18:13_reference_end_ N|qf[PE:/$ti^SH=2'wlaVK@5* N*< M*" L)H K)D J) I) # H(K G(J F(" E* ! D( C( BB A * @ ( ? * > )  = ) < ( ; ( : ( 9 B 8 :  7 : 6 * 5 * 4 * 3 B 2 *, 1 ( 0 :  / : . , - ( ,6 +. *. )+ (+ '* &* %*  $* #*  ") !( (  ; - ,  , *  *  * : * ) ) ( (  ( ( B B B ( ( ( & ( $ (  (  (  (  (  B + + *  ( +' L|qf[PE:/$ti^SH=2'ymaUI=1%  ( ( ( B ; +2 +0 * *  *  )  )  )  ) ( ( ( ( ( ; *, ) ( - B B B B  ~B  }B  |B  {B zB yB  xB  wB  vB  u+ t+ s+ r* q* p)  o) n( m(  l( k+  j*# i*! h*! g* f)  e)  d)  c)  b( a( `( _+  ^* ]*  \( [( Z( YB X= W2 V* U( T( S( R-  Q+ P+ & O*=  J= 1EdonkeydonkeyTransliteration: onos _reference_start_Matthew 21:2_reference_end_ _reference_start_Matthew 21:5_reference_end_ _reference_start_Matthew 21:7_reference_end_ _reference_start_Luke 13:15_reference_end_ _reference_start_Luke 14:5_reference_end_ _reference_start_John 12:15_reference_end_ dogdogTransliteration: kuoon _reference_start_Matthew 7:6_reference_end_ _reference_start_Luke 16:21_reference_end_ _reference_start_Philippians 3:2_reference_end_ _reference_start_2 Peter 2:22_reference_end_ _reference_start_Revelation 22:15_reference_end_WdilldillTransliteration: anethon _reference_start_Matthew 23:23_reference_end_[cummincumminTransliteration: kuminon _reference_start_Matthew 23:23_reference_end_ ?''Edonkey's coltdonkey's coltTransliteration: polos _reference_start_Matthew 21:2_reference_end_ _reference_start_Matthew 21:5_reference_end_ _reference_start_Matthew 21:7_reference_end_ _reference_start_Mark 11:2_reference_end_ _reference_start_Mark 11:4_reference_end_ _reference_start_Mark 11:5_reference_end_ _reference_start_Mark 11:7_reference_end_ _reference_start_Luke 19:30_reference_end_ _reference_start_Luke 19:33_reference_end_ _reference_start_Luke 19:33_reference_end_ _reference_start_Luke 19:35_reference_end_ _reference_start_John 12:15_reference_end_ k%%!dove, pigeondove, pigeonTransliteration: peristera _reference_start_Matthew 3:16_reference_end_ _reference_start_Matthew 10:16_reference_end_ _reference_start_Matthew 21:12_reference_end_ _reference_start_Mark 1:10_reference_end_ _reference_start_Mark 11:15_reference_end_ _reference_start_Luke 2:24_reference_end_ _reference_start_Luke 3:22_reference_end_ _reference_start_John 1:32_reference_end_ _reference_start_John 2:14_reference_end_ _reference_start_John 2:16_reference_end_ \RfigfigTransliteration: sukon _reference_start_Matthew 7:16_reference_end_ _reference_start_Mark 11:13_reference_end_ _reference_start_Luke 6:44_reference_end_ _reference_start_James 3:12_reference_end_g))egyptian cobraegyptian cobraTransliteration: aspis _reference_start_Romans 3:13_reference_end_!%dragondragonTransliteration: drakon _reference_start_Revelation 12:3_reference_end_ _reference_start_Revelation 12:4_reference_end_ _reference_start_Revelation 12:7_reference_end_ _reference_start_Revelation 12:7_reference_end_ _reference_start_Revelation 12:9_reference_end_ _reference_start_Revelation 12:13_reference_end_ _reference_start_Revelation 12:16_reference_end_ _reference_start_Revelation 12:17_reference_end_ _reference_start_Revelation 13:2_reference_end_ _reference_start_Revelation 13:4_reference_end_ _reference_start_Revelation 13:11_reference_end_ _reference_start_Revelation 16:13_reference_end_ _reference_start_Revelation 20:2_reference_end_ n7fig treefig treeTransliteration: suke _reference_start_Matthew 21:19_reference_end_ _reference_start_Matthew 21:19_reference_end_ _reference_start_Matthew 21:20_reference_end_ _reference_start_Matthew 21:21_reference_end_ _reference_start_Matthew 24:32_reference_end_ _reference_start_Mark 11:13_reference_end_ _reference_start_Mark 11:20_reference_end_ _reference_start_Mark 11:21_reference_end_ _reference_start_Mark 13:28_reference_end_ _reference_start_Luke 13:6_reference_end_ _reference_start_Luke 13:7_reference_end_ _reference_start_Luke 21:29_reference_end_ _reference_start_John 1:48_reference_end_ _reference_start_John 1:50_reference_end_ _reference_start_James 3:12_reference_end_ _reference_start_Revelation 6:13_reference_end_ f7fishfishTransliteration: ichthus _reference_start_Matthew 7:10_reference_end_ _reference_start_Matthew 14:17_reference_end_ _reference_start_Matthew 14:19_reference_end_ _reference_start_Matthew 15:36_reference_end_ _reference_start_Matthew 17:27_reference_end_ _reference_start_Mark 6:38_reference_end_ _reference_start_Mark 6:41_reference_end_ _reference_start_Mark 6:43_reference_end_ _reference_start_Luke 5:6_reference_end_ _reference_start_Luke 5:9_reference_end_ _reference_start_Luke 9:13_reference_end_ _reference_start_Luke 9:16_reference_end_ _reference_start_Luke 11:11_reference_end_ _reference_start_Luke 11:11_reference_end_ _reference_start_Luke 24:42_reference_end_ _reference_start_John 21:6_reference_end_ _reference_start_John 21:8_reference_end_ _reference_start_John 21:11_reference_end_ _reference_start_1 Corinthians 15:39_reference_end_ H|pdXL@4(th\PD8, xl`TH<0$  b!+ a!+ `!+ _!+ ^!+ ]!+ \!+ [!+  Z!+$ Y!* X!* W!*  V!*  U!*  T!* S!*, R!*+ Q!*+ P!* O!* N!** M!)  L!)  K!) J!) I!) H!(+ G!() F!(" E!(" D!( C!(  B!(  A!( ! @!( ! ?!( ! >!( =!( <!( ;!( :!( 9!( 8!( 7!( 6!( 5 B 4* 3* : 2( 1.  0.  /+  .* -( ,B +(  *.' )+ (+ '+ &** %* $* #*  "* !* * )+ )) )& ( ($ NjWN\ # frogfrogTransliteration: batrachos _reference_start_Revelation 16:13_reference_end_(?foxfoxTransliteration: alopex _reference_start_Matthew 8:20_reference_end_ _reference_start_Luke 9:58_reference_end_ _reference_start_Luke 13:32_reference_end_flockflockTransliteration: poimne _reference_start_Matthew 26:31_reference_end_ _reference_start_Luke 2:8_reference_end_ _reference_start_John 10:16_reference_end_ _reference_start_1 Corinthians 9:7_reference_end_ _reference_start_1 Corinthians 9:7_reference_end_##uflax, linenflax, linenTransliteration: linon _reference_start_Matthew 12:20_reference_end_ _reference_start_Revelation 15:6_reference_end_ce_start_Mark 4:7_reference_end_ _reference_start_Mark 4:8_reference_end_ _reference_start_Mark 4:29_reference_end_ _reference_start_Mark 11:14_reference_end_ _reference_start_Mark 12:2_reference_end_ _reference_start_Luke 1:42_reference_end_ _reference_start_Luke 3:8_reference_end_ _reference_start_Luke 3:9_reference_end_ _reference_start_Luke 6:43_reference_end_ _reference_start_Luke 6:43_reference_end_ _reference_start_Luke 6:44_reference_end_ _reference_start_Luke 8:8_reference_end_ _reference_start_Luke 12:17_reference_end_ _reference_start_Luke 13:6_reference_end_ _reference_start_Luke 13:7_reference_end_ _reference_start_Luke 13:9_reference_end_ _reference_start_Luke 20:10_reference_end_ _reference_start_John 4:36_reference_end_ _reference_start_John 12:24_reference_end_ _reference_start_John 15:2_reference_end_ _reference_start_John 15:2_reference_end_ _reference_start_John 15:2_reference_end_ _reference_start_John 15:4_reference_end_ _reference_start_John 15:5_reference_end_ _reference_start_John 15:8_reference_end_ _reference_start_John 15:16_reference_end_ _reference_start_John 15:16_reference_end_ _reference_start_Acts 2:30_reference_end_ _reference_start_Romans 1:13_reference_end_ _reference_start_Romans 6:21_reference_end_ _reference_start_Romans 6:22_reference_end_ _reference_start_Romans 15:28_reference_end_ _reference_start_1 Corinthians 9:7_reference_end_ _reference_start_Galatians 5:22_reference_end_ _reference_start_Ephesians 5:9_reference_end_ _reference_start_Philippians 1:11_reference_end_ _reference_start_Philippians 1:22_reference_end_ _reference_start_Philippians 4:17_reference_end_ _reference_start_2 Timothy 2:6_reference_end_ _reference_start_Hebrews 12:11_reference_end_ _reference_start_Hebrews 13:15_reference_end_ _reference_start_James 3:17_reference_end_ _reference_start_James 3:18_reference_end_ _reference_start_James 5:7_reference_end_ _reference_start_James 5:18_reference_end_ _reference_start_Revelation 22:2_reference_end_ _reference_start_Revelation 22:2_reference_end_ gg !{!fruitfruitTransliteration: karpos _reference_start_Matthew 3:8_reference_end_ _reference_start_Matthew 3:10_reference_end_ _reference_start_Matthew 7:16_reference_end_ _reference_start_Matthew 7:17_reference_end_ _reference_start_Matthew 7:17_reference_end_ _reference_start_Matthew 7:18_reference_end_ _reference_start_Matthew 7:18_reference_end_ _reference_start_Matthew 7:19_reference_end_ _reference_start_Matthew 7:20_reference_end_ _reference_start_Matthew 12:33_reference_end_ _reference_start_Matthew 12:33_reference_end_ _reference_start_Matthew 12:33_reference_end_ _reference_start_Matthew 13:8_reference_end_ _reference_start_Matthew 13:26_reference_end_ _reference_start_Matthew 21:19_reference_end_ _reference_start_Matthew 21:34_reference_end_ _reference_start_Matthew 21:34_reference_end_ _reference_start_Matthew 21:41_reference_end_ _reference_start_Matthew 21:43_reference_end_ _referen H|pdXL@4(th\PD8, xl`TH<0$  *-( ),* * (,( '+:  &+:  %+: $+: #*B  "*B  !*) *( )) )) )( )( (B  (B  (B  (B  (B (B (< (: ! (7 '*  &< &, &+$ &+ %B %B %B %B %B %B %B %B  %B  %B %B  %B %B %B %B ~%; }$(! |#( {"- z"* * y") x"( w!B v!B u!; t!; s!; r!; q!:  p!: o!7 n!2 m!2 l!2 k!1 j!0 i!.  h!- g!- f!- e!- d!, c!+ ::X$$goatgoatTransliteration: eriphion _reference_start_Matthew 25:33_reference_end_j#))#gnat, mosquitognat, mosquitoTransliteration: konops _reference_start_Matthew 23:24_reference_end_}"99"garden herb, vegetablegarden herb, vegetableTransliteration: lachanon _reference_start_Matthew 13:32_reference_end_ _reference_start_Mark 4:32_reference_end_ _reference_start_Luke 11:42_reference_end_ _reference_start_Romans 14:2_reference_end_ %%1%horsehorseTransliteration: hippos _reference_start_James 3:3_reference_end_ _reference_start_Revelation 6:2_reference_end_ _reference_start_Revelation 6:4_reference_end_ _reference_start_Revelation 6:5_reference_end_ _reference_start_Revelation 6:8_reference_end_ _reference_start_Revelation 9:7_reference_end_ _reference_start_Revelation 9:9_reference_end_ _reference_start_Revelation 9:17_reference_end_ _reference_start_Revelation 9:17_reference_end_ _reference_start_Revelation 14:20_reference_end_ _reference_start_Revelation 18:13_reference_end_ _reference_start_Revelation 19:11_reference_end_ _reference_start_Revelation 19:14_reference_end_ _reference_start_Revelation 19:18_reference_end_ _reference_start_Revelation 19:19_reference_end_ _reference_start_Revelation 19:21_reference_end_ #f)!!)little doglittle dogTransliteration: kunarion _reference_start_Matthew 15:26_reference_end_ _reference_start_Matthew 15:27_reference_end_ _reference_start_Mark 7:27_reference_end_ _reference_start_Mark 7:28_reference_end_L((lionlionTransliteration: leon _reference_start_2 Timothy 4:17_reference_end_ _reference_start_Hebrews 11:33_reference_end_ _reference_start_1 Peter 5:8_reference_end_ _reference_start_Revelation 4:7_reference_end_ _reference_start_Revelation 5:5_reference_end_ _reference_start_Revelation 9:8_reference_end_ _reference_start_Revelation 9:17_reference_end_ _reference_start_Revelation 10:3_reference_end_ _reference_start_Revelation 13:2_reference_end_X' 'lamb (2)lamb (2)Transliteration: arne _reference_start_Luke 10:3_reference_end_Z&&lamb (1)lamb (1)Transliteration: amnos _reference_start_John 1:29_reference_end_ _reference_start_John 1:36_reference_end_ _reference_start_Acts 8:32_reference_end_ _reference_start_1 Peter 1:19_reference_end_ 6,s,mintmintTransliteration: heduosmon _reference_start_Matthew 23:23_reference_end_ _reference_start_Luke 11:42_reference_end_f+#+male goatmale goatTransliteration: tragos _reference_start_Hebrews 9:12_reference_end_ _reference_start_Hebrews 9:13_reference_end_ _reference_start_Hebrews 9:19_reference_end_ _reference_start_Hebrews 10:4_reference_end_^**locustlocustTransliteration: akris _reference_start_Matthew 3:4_reference_end_ _reference_start_Mark 1:6_reference_end_ _reference_start_Revelation 9:3_reference_end_ _reference_start_Revelation 9:7_reference_end_ "C".//s.palestinian viperpalestinian viperTransliteration: echidna _reference_start_Matthew 3:7_reference_end_ _reference_start_Matthew 12:34_reference_end_ _reference_start_Matthew 23:33_reference_end_ _reference_start_Luke 3:7_reference_end_ _reference_start_Acts 28:3_reference_end_:-[-oliveoliveTransliteration: elaia _reference_start_Matthew 21:1_reference_end_ _reference_start_Matthew 24:3_reference_end_ _reference_start_Matthew 26:30_reference_end_ _reference_start_Mark 11:1_reference_end_ _reference_start_Mark 13:3_reference_end_ _reference_start_Mark 14:26_reference_end_ _reference_start_Luke 19:29_reference_end_ _reference_start_Luke 19:37_reference_end_ _reference_start_Luke 21:37_reference_end_ _reference_start_Luke 22:39_reference_end_ _reference_start_John 8:1_reference_end_ _reference_start_Romans 11:17_reference_end_ _reference_start_Romans 11:24_reference_end_ _reference_start_James 3:12_reference_end_ _reference_start_Revelation 11:4_reference_end_ H|pdXL@4(th\PD8, xl`TH<0$  r8) q8)" p8( o8(! n8( m8( l8( k8( j8( i8(  h8(  g8( $ f8( e7B d7B  c7B  b7* a7*  `6B _6B ^6B ]6B \6:  [6( Z5* * Y4B X4B W4B  V4* U4)$ T4) S4(0 R4( Q4( P4(  O4(  N3*  M2B L2.' K2, J2* " I1B H1B G1B F1B E1B D16 C1( . B1( - A1( @0B  ?/B >/+ =., <.* ;.(! :.( " 9.( 8-B  7-; 6--  5--  4-+ 3-*' 2-*% 1-*% 0-* /-) .-)  --)  ,-( +-( -z=- 2??12possession, beast, animalpossession, beast, animalTransliteration: ktenos _reference_start_Luke 10:34_reference_end_ _reference_start_Acts 23:24_reference_end_ _reference_start_1 Corinthians 15:39_reference_end_ _reference_start_Revelation 18:13_reference_end_X11pearlpearlTransliteration: margarites _reference_start_Matthew 7:6_reference_end_ _reference_start_Matthew 13:45_reference_end_ _reference_start_Matthew 13:46_reference_end_ _reference_start_1 Timothy 2:9_reference_end_ _reference_start_Revelation 17:4_reference_end_ _reference_start_Revelation 18:12_reference_end_ _reference_start_Revelation 18:16_reference_end_ _reference_start_Revelation 21:21_reference_end_ _reference_start_Revelation 21:21_reference_end_`00pantherpantherTransliteration: pardalis _reference_start_Revelation 13:2_reference_end_/q/palmpalmTransliteration: phoinix _reference_start_John 12:13_reference_end_ _reference_start_Revelation 7:9_reference_end_ 33R55ruerueTransliteration: peganon _reference_start_Luke 11:42_reference_end_ 4+4reedreedTransliteration: kalamos _reference_start_Matthew 11:7_reference_end_ _reference_start_Matthew 12:20_reference_end_ _reference_start_Matthew 27:29_reference_end_ _reference_start_Matthew 27:30_reference_end_ _reference_start_Matthew 27:48_reference_end_ _reference_start_Mark 15:19_reference_end_ _reference_start_Mark 15:36_reference_end_ _reference_start_Luke 7:24_reference_end_ _reference_start_Revelation 11:1_reference_end_ _reference_start_Revelation 21:15_reference_end_ _reference_start_Revelation 21:16_reference_end_T33ravenravenTransliteration: korax _reference_start_Luke 12:24_reference_end_ {{77scorpionscorpionTransliteration: skorpios _reference_start_Luke 10:19_reference_end_ _reference_start_Luke 11:12_reference_end_ _reference_start_Revelation 9:3_reference_end_ _reference_start_Revelation 9:5_reference_end_ _reference_start_Revelation 9:10_reference_end_i677y6scarlet, crimson, redscarlet, crimson, redTransliteration: kokkinos _reference_start_Matthew 27:28_reference_end_ _reference_start_Hebrews 9:19_reference_end_ _reference_start_Revelation 17:3_reference_end_ _reference_start_Revelation 17:4_reference_end_ _reference_start_Revelation 18:12_reference_end_ _reference_start_Revelation 18:16_reference_end_rt_John 10:1_reference_end_ _reference_start_John 10:2_reference_end_ _reference_start_John 10:3_reference_end_ _reference_start_John 10:3_reference_end_ _reference_start_John 10:4_reference_end_ _reference_start_John 10:4_reference_end_ _reference_start_John 10:7_reference_end_ _reference_start_John 10:8_reference_end_ _reference_start_John 10:11_reference_end_ _reference_start_John 10:12_reference_end_ _reference_start_John 10:12_reference_end_ _reference_start_John 10:12_reference_end_ _reference_start_John 10:13_reference_end_ _reference_start_John 10:15_reference_end_ _reference_start_John 10:16_reference_end_ _reference_start_John 10:26_reference_end_ _reference_start_John 10:27_reference_end_ _reference_start_John 21:16_reference_end_ _reference_start_John 21:17_reference_end_ _reference_start_Acts 8:32_reference_end_ _reference_start_Romans 8:36_reference_end_ _reference_start_Hebrews 13:20_reference_end_ _reference_start_1 Peter 2:25_reference_end_ _reference_start_Revelation 18:13_reference_end_ +8=8sheepsheepTransliteration: probaton _reference_start_Matthew 7:15_reference_end_ _reference_start_Matthew 9:36_reference_end_ _reference_start_Matthew 10:6_reference_end_ _reference_start_Matthew 10:16_reference_end_ _reference_start_Matthew 12:11_reference_end_ _reference_start_Matthew 12:12_reference_end_ _reference_start_Matthew 15:24_reference_end_ _reference_start_Matthew 18:12_reference_end_ _reference_start_Matthew 25:32_reference_end_ _reference_start_Matthew 25:33_reference_end_ _reference_start_Matthew 26:31_reference_end_ _reference_start_Mark 6:34_reference_end_ _reference_start_Mark 14:27_reference_end_ _reference_start_Luke 15:4_reference_end_ _reference_start_Luke 15:6_reference_end_ _reference_start_John 2:14_reference_end_ _reference_start_John 2:15_reference_end_ _reference_sta! H|pdXL@4(th\PD8, xl`TH<0$  :@* 9?* 8?* 7?*! 6?* 5?) 4?) 3?) 2?) 1?) 0?( /?( .?( -?( ,?( +>+ *>)$ )>(0 (=+  '=) &<*  %<*  $<(  #<(  ";= !:B :B  :B  :B :B  :/  :. :+ :* :*  :) :(! :(  :( 9+ 9+ 9+ 9+ 9+ 8B 8< 8:  8-$ 8, 8+ 8+ 8+  8+  8+  8+  8+ 8+ 8+ 8+ 8+ ~8+  }8+  |8+  {8+  z8+  y8+  x8+  w8+  v8+ u8+ t8* s8* <<5:Q:snakesnakeTransliteration: ophis _reference_start_Matthew 7:10_reference_end_ _reference_start_Matthew 10:16_reference_end_ _reference_start_Matthew 23:33_reference_end_ _reference_start_Mark 16:18_reference_end_ _reference_start_Luke 10:19_reference_end_ _reference_start_Luke 11:11_reference_end_ _reference_start_John 3:14_reference_end_ _reference_start_1 Corinthians 10:9_reference_end_ _reference_start_2 Corinthians 11:3_reference_end_ _reference_start_Revelation 9:19_reference_end_ _reference_start_Revelation 12:9_reference_end_ _reference_start_Revelation 12:14_reference_end_ _reference_start_Revelation 12:15_reference_end_ _reference_start_Revelation 20:2_reference_end_ 9!!e9small fishsmall fishTransliteration: opsarion _reference_start_John 6:9_reference_end_ _reference_start_John 6:11_reference_end_ _reference_start_John 21:9_reference_end_ _reference_start_John 21:10_reference_end_ _reference_start_John 21:13_reference_end_ 41>E>spongespongeTransliteration: spoggos _reference_start_Matthew 27:48_reference_end_ _reference_start_Mark 15:36_reference_end_ _reference_start_John 19:29_reference_end_=c=spikenardspikenardTransliteration: nardos _reference_start_Mark 14:3_reference_end_ _reference_start_John 12:3_reference_end_b<#<sparrowsparrowTransliteration: strouthion _reference_start_Matthew 10:29_reference_end_ _reference_start_Matthew 10:31_reference_end_ _reference_start_Luke 12:6_reference_end_ _reference_start_Luke 12:7_reference_end_\;;sow = pigsow = pigTransliteration: hus _reference_start_2 Peter 2:22_reference_end_ %w%rB//Bsyrian brown bearsyrian brown bearTransliteration: arktos _reference_start_Revelation 13:2_reference_end_eA%%Asycamore figsycamore figTransliteration: sukomorea _reference_start_Luke 19:4_reference_end_u@55@sycamina or mulberrysycamina or mulberryTransliteration: sukaminos _reference_start_Luke 17:6_reference_end_?s?swineswineTransliteration: choros _reference_start_Matthew 7:6_reference_end_ _reference_start_Matthew 8:30_reference_end_ _reference_start_Matthew 8:31_reference_end_ _reference_start_Matthew 8:32_reference_end_ _reference_start_Matthew 8:32_reference_end_ _reference_start_Mark 5:11_reference_end_ _reference_start_Mark 5:12_reference_end_ _reference_start_Mark 5:13_reference_end_ _reference_start_Mark 5:14_reference_end_ _reference_start_Mark 5:16_reference_end_ _reference_start_Luke 8:32_reference_end_ _reference_start_Luke 8:33_reference_end_ _reference_start_Luke 15:15_reference_end_ _reference_start_Luke 15:16_reference_end_ H|pdXL@4(th\PD8, xl`TH<0$  J) J) J)  J)  ~J)  }J() |J(( {J(' zJ(! yJ( xJ( wJ( vJ( uJ( tJ( sI*  rHB qHB pH; oH+ nH+ mH+ lH* kH) jH( iG* hFB  gFB fFB eFB dFA cF* bF*  aF*, `F*+ _F*+ ^F* ]F* \F)  [F) ZF( YF( XF( ! WF( ! VF( ! UF( TF( SF( RF( QF( PF( OF( NE: ME+ LE* KE* JE* IE*, HE) GE) FE) EE( DE(  CE(  BE(  AE( @D: ?D( >C:  =C+ <BB  ;A* i$E55sEthorn, globe thistlethorn, globe thistleTransliteration: akantha _reference_start_Matthew 7:16_reference_end_ _reference_start_Matthew 13:7_reference_end_ _reference_start_Matthew 13:7_reference_end_ _reference_start_Matthew 13:22_reference_end_ _reference_start_Matthew 27:29_reference_end_ _reference_start_Mark 4:7_reference_end_ _reference_start_Mark 4:7_reference_end_ _reference_start_Mark 4:18_reference_end_ _reference_start_Luke 6:44_reference_end_ _reference_start_Luke 8:7_reference_end_ _reference_start_Luke 8:7_reference_end_ _reference_start_Luke 8:14_reference_end_ _reference_start_John 19:2_reference_end_ _reference_start_Hebrews 6:8_reference_end_&D77sDthistle, briar, thornthistle, briar, thornTransliteration: tribolous _reference_start_Matthew 7:16_reference_end_ _reference_start_Hebrews 6:8_reference_end_C''oCsyrian hyssopsyrian hyssopTransliteration: hussopos _reference_start_John 19:29_reference_end_ _reference_start_Hebrews 9:19_reference_end_nd_ _reference_start_Matthew 7:17_reference_end_ _reference_start_Matthew 7:18_reference_end_ _reference_start_Matthew 7:18_reference_end_ _reference_start_Matthew 7:19_reference_end_ _reference_start_Matthew 12:33_reference_end_ _reference_start_Matthew 12:33_reference_end_ _reference_start_Matthew 12:33_reference_end_ _reference_start_Matthew 13:32_reference_end_ _reference_start_Matthew 21:8_reference_end_ _reference_start_Mark 8:24_reference_end_ _reference_start_Mark 11:8_reference_end_ _reference_start_Luke 3:9_reference_end_ _reference_start_Luke 3:9_reference_end_ _reference_start_Luke 6:43_reference_end_ _reference_start_Luke 6:43_reference_end_ _reference_start_Luke 6:44_reference_end_ _reference_start_Luke 13:19_reference_end_ _reference_start_Luke 21:29_reference_end_ _reference_start_Jude 1:12_reference_end_ _reference_start_Revelation 7:1_reference_end_ _reference_start_Revelation 7:3_reference_end_ _reference_start_Revelation 8:7_reference_end_ _reference_start_Revelation 9:4_reference_end_ NL/N'J)JvineyardvineyardTransliteration: ampelon _reference_start_Matthew 20:1_reference_end_ _referen+qI//Ivineyard dressservineyard dressserTransliteration: ampelourgos _reference_start_Luke 13:7_reference_end_8H[HvinevineTransliteration: ampelos _reference_start_Matthew 26:29_reference_end_ _reference_start_Mark 14:25_reference_end_ _reference_start_Luke 22:18_reference_end_ _reference_start_John 15:1_reference_end_ _reference_start_John 15:4_reference_end_ _reference_start_John 15:5_reference_end_ _reference_start_James 3:12_reference_end_ _reference_start_Revelation 14:18_reference_end_ _reference_start_Revelation 14:19_reference_end_`G##Gturtle doveturtle doveTransliteration: trugon _reference_start_Luke 2:24_reference_end_)F=FtreetreeTransliteration: dendron _reference_start_Matthew 3:10_reference_end_ _reference_start_Matthew 3:10_reference_end_ _reference_start_Matthew 7:17_reference_e)ce_start_Matthew 20:2_reference_end_ _reference_start_Matthew 20:4_reference_end_ _reference_start_Matthew 20:7_reference_end_ _reference_start_Matthew 20:8_reference_end_ _reference_start_Matthew 21:28_reference_end_ _reference_start_Matthew 21:33_reference_end_ _reference_start_Matthew 21:39_reference_end_ _reference_start_Matthew 21:40_reference_end_ _reference_start_Matthew 21:41_reference_end_ _reference_start_Mark 12:1_reference_end_ _reference_start_Mark 12:2_reference_end_ _reference_start_Mark 12:8_reference_end_ _reference_start_Mark 12:9_reference_end_ _reference_start_Mark 12:9_reference_end_ _reference_start_Luke 13:6_reference_end_ _reference_start_Luke 20:9_reference_end_ _reference_start_Luke 20:10_reference_end_ _reference_start_Luke 20:13_reference_end_ _reference_start_Luke 20:15_reference_end_ _reference_start_Luke 20:15_reference_end_ _reference_start_Luke 20:16_reference_end_ _reference_start_1 Corinthians 9:7_reference_end_ H|pdXL@4(th\PD8, xl`TH<0$  JN(  IN( HM-  GM-  FLB ELB DLB CLB BLB ALB @LB ?LB >LB =LB <LB ;LB :LB 9LB 8LB 7LB 6LB 5LB 4LB 3LB 2LB  1LB  0LB  /LB  .LB  -LB  ,LB  +LB *LB )LB (LB  'LB  &LB  %LB  $LB  #LB  "LB  !LB L; L:  L8 L, L, L,  L, L) KB KB K.% K,& K, K+  K* K* K* K) K(  K(  K(  K( J.  J* J* J* J* J* J* J*  `PL11SLwild beast, animalwild beast, animalTransliteration: therion _reference_start_Mark 1:13_reference_end_ _reference_start_Acts 10:12_reference_end_ _reference_start_Acts 11:6_reference_end_ _reference_start_Ac.K!KwheatwheatTransliteration: sitos _reference_start_Matthew 3:12_reference_end_ _reference_start_Matthew 13:25_reference_end_ _reference_start_Matthew 13:29_reference_end_ _reference_start_Matthew 13:30_reference_end_ _reference_start_Mark 4:28_reference_end_ _reference_start_Luke 3:17_reference_end_ _reference_start_Luke 16:7_reference_end_ _reference_start_Luke 22:31_reference_end_ _reference_start_John 12:24_reference_end_ _reference_start_Acts 7:12_reference_end_ _reference_start_Acts 27:38_reference_end_ _reference_start_1 Corinthians 15:37_reference_end_ _reference_start_Revelation 6:6_reference_end_ _reference_start_Revelation 18:13_reference_end_/ts 28:4_reference_end_ _reference_start_Acts 28:5_reference_end_ _reference_start_Titus 1:12_reference_end_ _reference_start_Hebrews 12:20_reference_end_ _reference_start_James 3:7_reference_end_ _reference_start_Revelation 6:8_reference_end_ _reference_start_Revelation 11:7_reference_end_ _reference_start_Revelation 13:1_reference_end_ _reference_start_Revelation 13:2_reference_end_ _reference_start_Revelation 13:3_reference_end_ _reference_start_Revelation 13:4_reference_end_ _reference_start_Revelation 13:4_reference_end_ _reference_start_Revelation 13:4_reference_end_ _reference_start_Revelation 13:11_reference_end_ _reference_start_Revelation 13:12_reference_end_ _reference_start_Revelation 13:12_reference_end_ _reference_start_Revelation 13:14_reference_end_ _reference_start_Revelation 13:14_reference_end_ _reference_start_Revelation 13:15_reference_end_ _reference_start_Revelation 13:15_reference_end_ _reference_start_Revelation 13:15_reference_end_ _reference_start_Revelation 13:17_reference_end_ _reference_start_Revelation 13:18_reference_end_ _reference_start_Revelation 14:9_reference_end_ _reference_start_Revelation 14:11_reference_end_ _reference_start_Revelation 15:2_reference_end_ _reference_start_Revelation 16:2_reference_end_ _reference_start_Revelation 16:10_reference_end_ _reference_start_Revelation 16:13_reference_end_ _reference_start_Revelation 17:3_reference_end_ _reference_start_Revelation 17:7_reference_end_ _reference_start_Revelation 17:8_reference_end_ _reference_start_Revelation 17:8_reference_end_ _reference_start_Revelation 17:11_reference_end_ _reference_start_Revelation 17:12_reference_end_ _reference_start_Revelation 17:13_reference_end_ _reference_start_Revelation 17:16_reference_end_ _reference_start_Revelation 17:17_reference_end_ _reference_start_Revelation 19:19_reference_end_ _reference_start_Revelation 19:20_reference_end_ _reference_start_Revelation 19:20_reference_end_ _reference_start_Revelation 20:4_reference_end_ _reference_start_Revelation 20:10_reference_end_ *k;*[QQaddaxaddaxTransliteration: dishon _reference_start_Deuteronomy 14:5_reference_end_P PacaciaacaciaTransliteration: shittah _reference_start_Exodus 25:5_reference_end_ _reference_start_Exodus 25:10_reference_end_ _reference_start_Exodus 25:13_reference_end_ _reference_start_Exodus 25:23_reference_end_ _reference_start_Exodus 25:28_reference_end_ _referenc2OOwormwoodwormwoodTransliteration: apsinthos _reference_start_Revelation 8:11_reference_end_ _reference_start_Revelation 8:11_reference_end_-NENwolfwolfTransliteration: lukos _reference_start_Matthew 7:15_reference_end_ _reference_start_Matthew 10:16_reference_end_ _reference_start_Luke 10:3_reference_end_ _reference_start_John 10:12_reference_end_ _reference_start_John 10:12_reference_end_ _reference_start_Acts 20:29_reference_end_M!!wMwild olivewild oliveTransliteration: agrielaios _reference_start_Romans 11:17_reference_end_ _reference_start_Romans 11:24_reference_end_ H|pdXL@4(th\PD8, xl`TH<0$  Y  Y  Y  X X3 X. X X+ X% W" W\ W W W' W' W! W W V V ~V }V |V {V zU yT xT wS% vR uR tR% sR% rR% qR" pR! oR! nR+ mQ lP) kP  jP& iP& hP% gP% fP% eP% dP% cP% bP$$ aP$ `P$ _P# ^P# ]P \P [P ZP YP% XP WP VP UP TP SP RP QP POB OOB NN, MN+ LN+ KN* e_start_Exodus 26:15_reference_end_ _reference_start_Exodus 26:26_reference_end_ _reference_start_Exodus 26:32_reference_end_ _reference_start_Exodus 26:37_reference_end_ _reference_start_Exodus 27:1_reference_end_ _reference_start_Exodus 27:6_reference_end_ _reference_start_Exodus 30:1_reference_end_ _reference_start_Exodus 30:5_reference_end_ _reference_start_Exodus 35:7_reference_end_ _reference_start_Exodus 35:24_reference_end_ _reference_start_Exodus 36:20_reference_end_ _reference_start_Exodus 36:31_reference_end_ _reference_start_Exodus 36:36_reference_end_ _reference_start_Exodus 37:1_reference_end_ _reference_start_Exodus 37:4_reference_end_ _reference_start_Exodus 37:10_reference_end_ _reference_start_Exodus 37:15_reference_end_ _reference_start_Exodus 37:25_reference_end_ _reference_start_Exodus 37:28_reference_end_ _reference_start_Exodus 38:1_reference_end_ _reference_start_Exodus 38:6_reference_end_ _reference_start_Deuteronomy 10:3_reference_end_ _reference_start_Isaiah 41:19_reference_end_ 9FrU//Uaoudad or mouflonaoudad or mouflonTransliteration: zemer _reference_start_Deuteronomy 14:5_reference_end_TuTantantTransliteration: nemalah _reference_start_Proverbs 6:6_reference_end_ _reference_start_Proverbs 30:25_reference_end_kS--Salmond tree/woodalmond tree/woodTransliteration: luz _reference_start_Genesis 30:37_reference_end_DRkRalmondalmondTransliteration: shaqed _reference_start_Genesis 43:11_reference_end_ _reference_start_Exodus 25:33_reference_end_ _reference_start_Exodus 25:33_reference_end_ _reference_start_Exodus 25:34_reference_end_ _reference_start_Exodus 37:19_reference_end_ _reference_start_Exodus 37:19_reference_end_ _reference_start_Exodus 37:20_reference_end_ _reference_start_Numbers 17:23_reference_end_ _reference_start_Jeremiah 1:11_reference_end_ QW--]Waurochs or bisonaurochs or bisonTransliteration: re'em _reference_start_Numbers 23:22_reference_end_ _reference_start_Numbers 24:8_reference_end_ _reference_start_Deuteronomy 33:17_reference_end_ _reference_start_Job 39:9_reference_end_ _reference_start_Job 39:10_reference_end_ _reference_start_Psalms 22:22_reference_end_ _reference_start_Psalms 29:6_reference_end_ _reference_start_Psalms 92:11_reference_end_ _reference_start_Isaiah 34:7_reference_end_UVVappleappleTransliteration: tappuach _reference_start_Proverbs 25:11_reference_end_ _reference_start_Song of Solomon 2:3_reference_end_ _reference_start_Song of Solomon 2:5_reference_end_ _reference_start_Song of Solomon 7:9_reference_end_ _reference_start_Song of Solomon 8:5_reference_end_ _reference_start_Joel 1:12_reference_end_ 'Y''Ybalsam poplarbalsam poplarTransliteration: baka' _reference_start_2 Samuel 5:23_reference_end_ _reference_start_2 Samuel 5:24_reference_end_ _reference_start_1 Chronicles 14:14_reference_end_ _reference_start_1 Chronicles 14:15_reference_end_ _reference_start_Psalms 84:7_reference_end_] =]  <\ ;\ :\  9[" 8[ 7[  6Z 5Z 4Z 3Z- 2Z  1Z 0Z /Z) .Z -Z( ,Z +Z *Z )Z (Z  'Z  &Z  %Z * $Z  #Z  "Z  !Z  Z Z Z Z Z Z Z Z Z Z Z  Z  YT Y 17_reference_end_ _reference_start_2 Samuel 14:30_reference_end_ _reference_start_2 Samuel 17:28_reference_end_ _reference_start_2 Samuel 21:9_reference_end_ _reference_start_1 Kings 5:8_reference_end_ _reference_start_2 Kings 4:42_reference_end_ _reference_start_2 Kings 7:1_reference_end_ _reference_start_2 Kings 7:16_reference_end_ _reference_start_2 Kings 7:18_reference_end_ _reference_start_1 Chronicles 11:13_reference_end_ _reference_start_2 Chronicles 2:9_reference_end_ _reference_start_2 Chronicles 2:14_reference_end_ _reference_start_2 Chronicles 27:5_reference_end_ _reference_start_Job 31:40_reference_end_ _reference_start_Isaiah 28:25_reference_end_ _reference_start_Jeremiah 41:8_reference_end_ _reference_start_Ezekiel 4:9_reference_end_ _reference_start_Ezekiel 4:12_reference_end_ _reference_start_Ezekiel 13:19_reference_end_ _reference_start_Ezekiel 45:13_reference_end_ _reference_start_Hosea 3:2_reference_end_ _reference_start_Hosea 3:2_reference_end_ _reference_start_Joel 1:11_reference_end_ S S7\]\batbatTransliteration: 'atalleph _reference_start_Leviticus 11:19_reference_end_ _reference_start_Deuteronomy 14:18_reference_end_ _reference_start_Isaiah 2:20_reference_end_A[][barn owlbarn owlTransliteration: yanshuph _reference_start_Leviticus 11:17_reference_end_ _reference_start_Deuteronomy 14:16_reference_end_ _reference_start_Isaiah 34:11_reference_end_$Z+ZbarleybarleyTransliteration: se'orah _reference_start_Exodus 9:31_reference_end_ _reference_start_Exodus 9:31_reference_end_ _reference_start_Leviticus 27:16_reference_end_ _reference_start_Numbers 5:15_reference_end_ _reference_start_Deuteronomy 8:8_reference_end_ _reference_start_Judges 7:13_reference_end_ _reference_start_Ruth 1:22_reference_end_ _reference_start_Ruth 2:17_reference_end_ _reference_start_Ruth 2:23_reference_end_ _reference_start_Ruth 3:2_reference_end_ _reference_start_Ruth 3:15_reference_end_ _reference_start_Ruth 3:7 [}[=_77_beast, animal, cattlebeast, animal, cattleTransliteration: behemah _reference_start_Genesis 1:24_reference_end_ _reference_start_Genesis 1:25_reference_end_ _reference_start_Genesis 1:26_reference_end_ _reference_start_Genesis 2:20_reference_end_ _reference_start_Genesis 3:14_reference_end_ _reference_start_Genesis 6:7_reference_end_ _reference_start_Genesis 6:20_reference_end_ _reference_start_Genesis 7:2_reference_end_ _reference_start_Genesis 7:2_reference_end_ _reference_start_Genesis 7:8_reference_end_ _reference_start_Genesis 7:8_reference_end_ _reference_start_Genesis 7:14_referenc:;^GG}^bearded vulture = lammergeierbearded vulture = lammergeierTransliteration: peres _reference_start_Leviticus 11:13_reference_end_ _reference_start_Deuteronomy 14:12_reference_end_]k]beanbeanTransliteration: pol _reference_start_2 Samuel 17:28_reference_end_ _reference_start_Ezekiel 4:9_reference_end_;e_end_ _reference_start_Genesis 7:21_reference_end_ _reference_start_Genesis 7:23_reference_end_ _reference_start_Genesis 8:1_reference_end_ _reference_start_Genesis 8:17_reference_end_ _reference_start_Genesis 8:20_reference_end_ _reference_start_Genesis 9:10_reference_end_ _reference_start_Genesis 34:23_reference_end_ _reference_start_Genesis 36:6_reference_end_ _reference_start_Genesis 47:18_reference_end_ _reference_start_Exodus 8:13_reference_end_ _reference_start_Exodus 8:14_reference_end_ _reference_start_Exodus 9:9_reference_end_ _reference_start_Exodus 9:10_reference_end_ _reference_start_Exodus 9:19_reference_end_ _reference_start_Exodus 9:22_reference_end_ _reference_start_Exodus 9:25_reference_end_ _reference_start_Exodus 11:5_reference_end_ _reference_start_Exodus 11:7_reference_end_ _reference_start_Exodus 12:12_reference_end_ _reference_start_Exodus 12:29_reference_end_ _reference_start_Exodus 13:2_reference_end_ _reference_start_Exodus 13:12_reference_end_ _reference_start_Exodus 13:15_ref_start_Numbers 31:9_reference_end_ _reference_start_Numbers 31:11_reference_end_ _reference_start_Numbers 31:26_reference_end_ _reference_start_Numbers 31:30_reference_end_ _reference_start_Numbers 31:47_reference_end_ _reference_start_Numbers 32:26_reference_end_ _reference_start_Numbers 35:3_reference_end_ _reference_start_Deuteronomy 2:35_reference_end_ _reference_start_Deuteronomy 3:7_reference_end_ _reference_start_Deuteronomy 4:17_reference_end_ _reference_start_Deuteronomy 5:14_reference_end_ _reference_start_Deuteronomy 7:14_reference_end_ _reference_start_Deuteronomy 11:15_reference_end_ _reference_start_Deuteronomy 13:16_reference_end_ _reference_start_Deuteronomy 14:4_reference_end_ _reference_start_Deuteronomy 14:6_reference_end_ _reference_start_Deuteronomy 14:6_reference_end_ _reference_start_Deuteronomy 20:14_reference_end_ _reference_start_Deuteronomy 27:21_reference_end_ _reference_start_Deuteronomy 28:4_reference_end_ _reference_start_Deuteronomy 28:11_reference_end_ _reference_start_Deu?teronomy 28:26_reference_end_ _reference_start_Deuteronomy 28:51_reference_end_ _reference_start_Deuteronomy 30:9_reference_end_ _reference_start_Deuteronomy 32:24_reference_end_ _reference_start_Joshua 8:2_reference_end_ _reference_start_Joshua 8:27_reference_end_ _reference_start_Joshua 11:14_reference_end_ _reference_start_Joshua 21:2_reference_end_ _reference_start_Judges 20:48_reference_end_ _reference_start_1 Samuel 17:44_reference_end_ _reference_start_1 Kings 5:13_reference_end_ _reference_start_1 Kings 18:5_reference_end_ _reference_start_2 Kings 3:9_reference_end_ _reference_start_2 Kings 3:17_reference_end_ _reference_start_2 Chronicles 32:28_reference_end_ _reference_start_Ezra 1:4_reference_end_ _reference_start_Ezra 1:6_reference_end_ _reference_start_Nehemiah 2:12_reference_end_ _reference_start_Nehemiah 2:12_reference_end_ _reference_start_Nehemiah 2:14_reference_end_ _reference_start_Nehemiah 9:37_reference_end_ _reference_start_Nehemiah 10:37_reference_end_ _reference_start_Job 12:7_refe@rence_end_ _reference_start_Job 18:3_reference_end_ _reference_start_Job 35:11_reference_end_ _reference_start_Psalms 8:8_reference_end_ _reference_start_Psalms 36:7_reference_end_ _reference_start_Psalms 49:13_reference_end_ _reference_start_Psalms 49:21_reference_end_ _reference_start_Psalms 50:10_reference_end_ _reference_start_Psalms 73:22_reference_end_ _reference_start_Psalms 104:14_reference_end_ _reference_start_Psalms 107:38_reference_end_ _reference_start_Psalms 135:8_reference_end_ _reference_start_Psalms 147:9_reference_end_ _reference_start_Psalms 148:10_reference_end_ _reference_start_Proverbs 12:10_reference_end_ _reference_start_Proverbs 30:30_reference_end_ _reference_start_Ecclesiastes 3:18_reference_end_ _reference_start_Ecclesiastes 3:19_reference_end_ _reference_start_Ecclesiastes 3:19_reference_end_ _reference_start_Ecclesiastes 3:21_reference_end_ _reference_start_Isaiah 18:6_reference_end_ _reference_start_Isaiah 18:6_reference_end_ _reference_start_Isaiah 30:6_reference_end_ _refeArence_start_Isaiah 46:1_reference_end_ _reference_start_Isaiah 63:14_reference_end_ _reference_start_Jeremiah 7:20_reference_end_ _reference_start_Jeremiah 7:33_reference_end_ _reference_start_Jeremiah 9:9_reference_end_ _reference_start_Jeremiah 12:4_reference_end_ _reference_start_Jeremiah 15:3_reference_end_ _reference_start_Jeremiah 16:4_reference_end_ _reference_start_Jeremiah 19:7_reference_end_ _reference_start_Jeremiah 21:6_reference_end_ _reference_start_Jeremiah 27:5_reference_end_ _reference_start_Jeremiah 31:27_reference_end_ _reference_start_Jeremiah 32:43_reference_end_ _reference_start_Jeremiah 33:10_reference_end_ _reference_start_Jeremiah 33:10_reference_end_ _reference_start_Jeremiah 33:12_reference_end_ _reference_start_Jeremiah 34:20_reference_end_ _reference_start_Jeremiah 36:29_reference_end_ _reference_start_Jeremiah 50:3_reference_end_ _reference_start_Jeremiah 51:62_reference_end_ _reference_start_Ezekiel 8:10_reference_end_ _reference_start_Ezekiel 14:13_reference_end_ _reference_start_Ezekiel 14:17_reference_end_ _reference_start_Ezekiel 14:19_reference_end_ _reference_start_Ezekiel 14:21_reference_end_ _reference_start_Ezekiel 25:13_reference_end_ _reference_start_Ezekiel 29:8_reference_end_ _reference_start_Ezekiel 29:11_reference_end_ _reference_start_Ezekiel 32:13_reference_end_ _reference_start_Ezekiel 32:13_reference_end_ _reference_start_Ezekiel 36:11_reference_end_ _reference_start_Ezekiel 44:31_reference_end_ _reference_start_Joel 1:18_reference_end_ _reference_start_Joel 1:20_reference_end_ _reference_start_Joel 2:22_reference_end_ _reference_start_Jonah 3:7_reference_end_ _reference_start_Jonah 3:8_reference_end_ _reference_start_Jonah 4:11_reference_end_ _reference_start_Micah 5:7_reference_end_ _reference_start_Habakkuk 2:17_reference_end_ _reference_start_Zephaniah 1:3_reference_end_ _reference_start_Haggai 1:11_reference_end_ _reference_start_Zechariah 2:8_reference_end_ _reference_start_Zechariah 8:10_reference_end_ _reference_start_Zechariah 14:15_reference_end_ H|pdXL@4(th\PD8, xl`TH<0$  "_ !_ _ _ _ _ _  _  _ _ _ _ _# _# _  _/ _ _ _ _ _ _ _ _- _- _) _) _ _ _ _ _ _ _ _ _ ~_ }_ |_ {_ z_ y_ x_ w_ v_ u_ t_ s_ r_ q_ . p_ ' o_  n_  m_  l_ k_ j_ i_ h_ g_ f_ e_ d_ c_  b_ a_  `_  __ ^_  ]_  \_  [_  H|pdXL@4(th[NA5)ui]QE9-! j_ i_ h_ g_ f_ e_ d_3> c_2 b_$ a_" `_! __! ^_! ]_ + \_ [_ Z_ Y_ X_ W_ V_  U_ T_! S_ R_? Q_. P_ O_ N_ M_ L_ K_ J_ I_ H_ G_ F_ E_ D_k& C_h B_I A_2 @_1 ?_1 >_$ =_ <_# ;_ :_  9_ % 8_ % 7_ 6_ 5_ 4_ 3_ 2_  1_  0_  /_  ._  -_ , ,_0 +_ *_  )_ (_ '_  &_ %_3 $_ #_ H|pdXL@4(th\PD8, xl`TH<0$  2h  1h  0h  /h .h  -h  ,h  +h  *h  )h  (h  'h # &h  %h  $h  #h  "h  !g  g f: f  f  f  e e e d d d c' c c c. c c c c b b b b b# b a av a a, `N0 ` ` ` ` ~`- }_& |_& {_& z_% y_$ x_# w_! v_  u_  t_  s_ r_ q_ p_, o_$ n_ m_ l_ k_ >b!!Obbilly goatbilly goatTransliteration: tsapir _reference_start_2 Chronicles 29:21_reference_end_ _reference_start_Ezra 8:35_reference_end_ _reference_start_Daniel 8:5_reference_end_ _reference_start_Daniel 8:5_reference_end_ _reference_start_Daniel 8:8_reference_end_ _reference_start_Daniel 8:21_reference_end_^a+abeebeeTransliteration: deborah _reference_start_Deuteronomy 1:44_reference_end_ _reference_start_Judges 14:8_reference_end_ _reference_start_Psalms 118:12_reference_end_ _reference_start_Isaiah 7:18_reference_end_K`))Y`beasts, cattlebeasts, cattleTransliteration: be'iyr _reference_start_Genesis 45:17_reference_end_ _reference_start_Exodus 22:4_reference_end_ _reference_start_Numbers 20:4_reference_end_ _reference_start_Numbers 20:8_reference_end_ _reference_start_Numbers 20:11_reference_end_ _reference_start_Psalms 78:48_reference_end_ a`e--{eblossom of grapeblossom of grapeTransliteration: semader _reference_start_Song of Solomon 2:13_reference_end_ _reference_start_Song of Solomon 2:15_reference_end_ _reference_start_Song of Solomon 7:13_reference_end_@d%%Kdblack cumminblack cumminTransliteration: ketzach _reference_start_Isaiah 28:25_reference_end_ _reference_start_Isaiah 28:27_reference_end_ _reference_start_Isaiah 28:27_reference_end_c%%cbird of preybird of preyTransliteration: 'ayit _reference_start_Genesis 15:11_reference_end_ _reference_start_Job 28:7_reference_end_ _reference_start_Isaiah 18:6_reference_end_ _reference_start_Isaiah 18:6_reference_end_ _reference_start_Isaiah 46:11_reference_end_ _reference_start_Jeremiah 12:9_reference_end_ _reference_start_Jeremiah 12:9_reference_end_ _reference_start_Ezekiel 39:4_reference_end_ ||gwgbubalbubalTransliteration: yachmur _reference_start_Deuteronomy 14:5_reference_end_ _reference_start_1 Kings 5:3_reference_end_vf33fbramble, buck-thornbramble, buck-thornTransliteration: 'atad _reference_start_Judges 9:14_reference_end_ _reference_start_Judges 9:15_reference_end_ _reference_start_Judges 9:15_reference_end_ _reference_start_Psalms 58:10_reference_end_ngs 12:28_reference_end_ _reference_start_1 Kings 12:32_reference_end_ _reference_start_2 Kings 10:29_reference_end_ _reference_start_2 Kings 17:16_reference_end_ _reference_start_2 Chronicles 11:15_reference_end_ _reference_start_2 Chronicles 13:8_reference_end_ _reference_start_Nehemiah 9:18_reference_end_ _reference_start_Psalms 29:6_reference_end_ _reference_start_Psalms 68:31_reference_end_ _reference_start_Psalms 106:19_reference_end_ _reference_start_Isaiah 11:6_reference_end_ _reference_start_Isaiah 27:10_reference_end_ _reference_start_Jeremiah 31:18_reference_end_ _reference_start_Jeremiah 34:18_reference_end_ _reference_start_Jeremiah 34:19_reference_end_ _reference_start_Jeremiah 46:21_reference_end_ _reference_start_Ezekiel 1:7_reference_end_ _reference_start_Hosea 8:5_reference_end_ _reference_start_Hosea 8:6_reference_end_ _reference_start_Hosea 13:2_reference_end_ _reference_start_Amos 6:4_reference_end_ _reference_start_Micah 6:6_reference_end_ _reference_start_Malachi 3:20_reference_end_ th))+hcalf, bullcalfcalf, bullcalfTransliteration: 'egel _reference_start_Exodus 32:4_reference_end_ _reference_start_Exodus 32:8_reference_end_ _reference_start_Exodus 32:19_reference_end_ _reference_start_Exodus 32:20_reference_end_ _reference_start_Exodus 32:24_reference_end_ _reference_start_Exodus 32:35_reference_end_ _reference_start_Leviticus 9:2_reference_end_ _reference_start_Leviticus 9:3_reference_end_ _reference_start_Leviticus 9:8_reference_end_ _reference_start_Deuteronomy 9:16_reference_end_ _reference_start_Deuteronomy 9:21_reference_end_ _reference_start_1 Samuel 28:24_reference_end_ _reference_start_1 KiH H|pdXL@4(th\PD8, xl`TH<0$  zi& yi xi1 wi1 vi< ui ti si* ri qi piD oiC ni mi  li  ki ) ji  ii  hi  gi  fi  ei  di ci bi ai `i _i  ^i  ]i% \i  [i  Zi" Yi Xi+ Wi@ Vi? Ui= Ti. Si. Ri, Qi# Pi Oi Ni Mi Li Ki Ji Ii Hi Gi Fi Ei  Dh' Ch! Bh Ah  @h ?h >h =h. <h" ;h" :h 9h 8h  7hj 6hD 5h 4h  3h Lenesis 24:31_reference_end_ _reference_start_Genesis 24:32_reference_end_ _reference_start_Genesis 24:32_reference_end_ _reference_start_Genesis 24:35_reference_end_ _reference_start_Genesis 24:44_reference_end_ _reference_start_Genesis 24:46_reference_end_ _reference_start_Genesis 24:46_reference_end_ _reference_start_Genesis 24:61_reference_end_ _reference_start_Genesis 24:63_reference_end_ _reference_start_Genesis 24:64_reference_end_ _reference_start_Genesis 30:43_reference_end_ _reference_start_Genesis 31:17_reference_end_ _reference_start_Genesis 31:34_reference_end_ _reference_start_Genesis 32:8_reference_end_ _reference_start_Genesis 32:16_reference_end_ _reference_start_Genesis 37:25_reference_end_ _reference_start_Exodus 9:3_reference_end_ _reference_start_Leviticus 11:4_reference_end_ _reference_start_Deuteronomy 14:7_reference_end_ _reference_start_Judges 6:5_reference_end_ _reference_start_Judges 7:12_reference_end_ _reference_start_Judges 8:21_reference_end_ _reference_start_Judges 8:26_reference_end_ _reference_start_1 Samuel 15:3_reference_end_ _reference_start_1 Samuel 27:9_reference_end_ _reference_start_1 Samuel 30:17_reference_end_ _reference_start_1 Kings 10:2_reference_end_ _reference_start_2 Kings 8:9_reference_end_ _reference_start_1 Chronicles 5:21_reference_end_ _reference_start_1 Chronicles 12:41_reference_end_ _reference_start_1 Chronicles 27:30_reference_end_ _reference_start_2 Chronicles 9:1_reference_end_ _reference_start_2 Chronicles 14:14_reference_end_ _reference_start_Ezra 2:67_reference_end_ _reference_start_Nehemiah 7:68_reference_end_ _reference_start_Job 1:3_reference_end_ _reference_start_Job 1:17_reference_end_ _reference_start_Job 42:12_reference_end_ _reference_start_Isaiah 21:7_reference_end_ _reference_start_Isaiah 30:6_reference_end_ _reference_start_Isaiah 60:6_reference_end_ _reference_start_Jeremiah 49:29_reference_end_ _reference_start_Jeremiah 49:32_reference_end_ _reference_start_Ezekiel 25:5_reference_end_ _reference_start_Zechariah 14:15_reference_end_ "  nqncassia 2cassia 2Transliteration: qiddah _reference_start_Exodus 30:24_reference_end_ _reference_start_Ezekiel 27:19_reference_end_`mmcassia 1cassia 1Transliteration: qetshiy'ah _reference_start_Psalms 45:9_reference_end_l lcassiacassiafk%%kcarpet vipercarpet viperTransliteration: 'akshub _reference_start_Psalms 140:4_reference_end_j##sjcamel thorncamel thornTransliteration: na'atsuts _reference_start_Isaiah 7:19_reference_end_ _reference_start_Isaiah 55:13_reference_end_Ri icamelcamelTransliteration: gamal _reference_start_Genesis 12:16_reference_end_ _reference_start_Genesis 24:10_reference_end_ _reference_start_Genesis 24:10_reference_end_ _reference_start_Genesis 24:11_reference_end_ _reference_start_Genesis 24:14_reference_end_ _reference_start_Genesis 24:19_reference_end_ _reference_start_Genesis 24:20_reference_end_ _reference_start_Genesis 24:22_reference_end_ _reference_start_Genesis 24:30_reference_end_ _reference_start_GK H{ocWK?3'sg[OC7+wk_SG;/# Bq  Aq  @q  ?q  >q =q <q ;q :q 9q 8q 7q  6q  5q  4q  3q  2q  1q 0q /q" .q -q & ,q  +q  *q  )q  (q  'q  &q  %q  $q  #q  "q/ !q/ q/ q/ q/ q/ q/ q." q. q. q$ q$ q" q" q! q q q q q q  q  q  q p  p p p o o o! oN. o o % n n ~m- }k |j7 {j {qYqcattlecattleTransliteration: miqneh _reference_start_Genesis 4:20_reference_end_ _reference_start_Genesis 13:2_reference_end_ _reference_start_Genesis 13:7_reference_end_ _reference_start_Genesis 13:7_reference_end_ _reference_start_Genesis 29:7_referencPqp55 pcattail, water plantcattail, water plantTransliteration: suf _reference_start_Exodus 2:3_reference_end_ _reference_start_Exodus 2:5_reference_end_ _reference_start_Isaiah 19:6_reference_end_ _reference_start_Jonah 2:6_reference_end_Ao##QocaterpillarcaterpillarTransliteration: chasil _reference_start_1 Kings 8:37_reference_end_ _reference_start_2 Chronicles 6:28_reference_end_ _reference_start_Psalms 78:46_reference_end_ _reference_start_Isaiah 33:4_reference_end_ _reference_start_Joel 1:4_reference_end_ _reference_start_Joel 2:25_reference_end_Qe_end_ _reference_start_Genesis 30:29_reference_end_ _reference_start_Genesis 31:9_reference_end_ _reference_start_Genesis 31:18_reference_end_ _reference_start_Genesis 31:18_reference_end_ _reference_start_Genesis 33:17_reference_end_ _reference_start_Genesis 34:5_reference_end_ _reference_start_Genesis 34:23_reference_end_ _reference_start_Genesis 36:6_reference_end_ _reference_start_Genesis 36:7_reference_end_ _reference_start_Genesis 46:6_reference_end_ _reference_start_Genesis 46:32_reference_end_ _reference_start_Genesis 46:34_reference_end_ _reference_start_Genesis 47:6_reference_end_ _reference_start_Genesis 47:16_reference_end_ _reference_start_Genesis 47:16_reference_end_ _reference_start_Genesis 47:17_reference_end_ _reference_start_Genesis 47:17_reference_end_ _reference_start_Genesis 47:17_reference_end_ _reference_start_Genesis 47:18_reference_end_ _reference_start_Exodus 9:3_reference_end_ _reference_start_Exodus 9:4_reference_end_ _reference_start_Exodus 9:4_reference_end_ _reference_startR_Exodus 9:6_reference_end_ _reference_start_Exodus 9:6_reference_end_ _reference_start_Exodus 9:7_reference_end_ _reference_start_Exodus 9:19_reference_end_ _reference_start_Exodus 9:20_reference_end_ _reference_start_Exodus 9:21_reference_end_ _reference_start_Exodus 10:26_reference_end_ _reference_start_Exodus 12:38_reference_end_ _reference_start_Exodus 17:3_reference_end_ _reference_start_Exodus 34:19_reference_end_ _reference_start_Numbers 20:19_reference_end_ _reference_start_Numbers 31:9_reference_end_ _reference_start_Numbers 32:1_reference_end_ _reference_start_Numbers 32:1_reference_end_ _reference_start_Numbers 32:4_reference_end_ _reference_start_Numbers 32:4_reference_end_ _reference_start_Numbers 32:16_reference_end_ _reference_start_Numbers 32:26_reference_end_ _reference_start_Deuteronomy 3:19_reference_end_ _reference_start_Deuteronomy 3:19_reference_end_ _reference_start_Joshua 1:14_reference_end_ _reference_start_Joshua 14:4_reference_end_ _reference_start_Joshua 22:8_reference_end_ _reference_start_Judges 6:5_reference_end_ _reference_start_Judges 18:21_reference_end_ _reference_start_1 Samuel 23:5_reference_end_ _reference_start_1 Samuel 30:20_reference_end_ _reference_start_2 Kings 3:17_reference_end_ _reference_start_1 Chronicles 5:9_reference_end_ _reference_start_1 Chronicles 5:21_reference_end_ _reference_start_1 Chronicles 7:21_reference_end_ _reference_start_1 Chronicles 28:1_reference_end_ _reference_start_2 Chronicles 14:14_reference_end_ _reference_start_2 Chronicles 26:10_reference_end_ _reference_start_2 Chronicles 32:29_reference_end_ _reference_start_Job 1:3_reference_end_ _reference_start_Job 1:10_reference_end_ _reference_start_Job 36:33_reference_end_ _reference_start_Psalms 78:48_reference_end_ _reference_start_Ecclesiastes 2:7_reference_end_ _reference_start_Isaiah 30:23_reference_end_ _reference_start_Jeremiah 9:9_reference_end_ _reference_start_Jeremiah 49:32_reference_end_ _reference_start_Ezekiel 38:12_reference_end_ _reference_start_Ezekiel 38:13_reference_end_ H|pdXL@4(th\PD8, xl`TH<0$  r5 r3 r/ r- r) r' r# r! r r r r ~r }r |r {r zr yr xr wr vr ur tr sr  rr qr pr or nr mr lr" kr jr% ir hr & gr fr  er dr  cr2 br/ ar/ `r. _r- ^r" ]r! \r  [r Zr# Yr Xr Wr Vr Ur Tr  Sr  Rq& Qq& Pq1 Oq Nq Mq LqN0 Kq$! Jq Iq Hq  Gq Fq Eq  Dq  Cq Uis 18:8_reference_end_ _reference_start_Genesis 20:14_reference_end_ _reference_start_Genesis 21:27_reference_end_ _reference_start_Genesis 24:35_reference_end_ _reference_start_Genesis 26:14_reference_end_ _reference_start_Genesis 32:8_reference_end_ _reference_start_Genesis 33:13_reference_end_ _reference_start_Genesis 34:28_reference_end_ _reference_start_Genesis 45:10_reference_end_ _reference_start_Genesis 46:32_reference_end_ _reference_start_Genesis 47:1_reference_end_ _reference_start_Genesis 47:17_reference_end_ _reference_start_Genesis 50:8_reference_end_ _reference_start_Exodus 9:3_reference_end_ _reference_start_Exodus 10:9_reference_end_ _reference_start_Exodus 10:24_reference_end_ _reference_start_Exodus 12:32_reference_end_ _reference_start_Exodus 12:38_reference_end_ _reference_start_Exodus 20:24_reference_end_ _reference_start_Exodus 21:37_reference_end_ _reference_start_Exodus 29:1_reference_end_ _reference_start_Exodus 34:3_reference_end_ _reference_start_Leviticus 1:2_reference_end_ _rVeference_start_Leviticus 1:3_reference_end_ _reference_start_Leviticus 1:5_reference_end_ _reference_start_Leviticus 3:1_reference_end_ _reference_start_Leviticus 4:3_reference_end_ _reference_start_Leviticus 4:14_reference_end_ _reference_start_Leviticus 9:2_reference_end_ _reference_start_Leviticus 16:3_reference_end_ _reference_start_Leviticus 22:19_reference_end_ _reference_start_Leviticus 22:21_reference_end_ _reference_start_Leviticus 23:18_reference_end_ _reference_start_Leviticus 27:32_reference_end_ _reference_start_Numbers 7:3_reference_end_ _reference_start_Numbers 7:6_reference_end_ _reference_start_Numbers 7:7_reference_end_ _reference_start_Numbers 7:8_reference_end_ _reference_start_Numbers 7:15_reference_end_ _reference_start_Numbers 7:17_reference_end_ _reference_start_Numbers 7:21_reference_end_ _reference_start_Numbers 7:23_reference_end_ _reference_start_Numbers 7:27_reference_end_ _reference_start_Numbers 7:29_reference_end_ _reference_start_Numbers 7:33_reference_end_ _reference_starWt_Numbers 7:35_reference_end_ _reference_start_Numbers 7:39_reference_end_ _reference_start_Numbers 7:41_reference_end_ _reference_start_Numbers 7:45_reference_end_ _reference_start_Numbers 7:47_reference_end_ _reference_start_Numbers 7:51_reference_end_ _reference_start_Numbers 7:53_reference_end_ _reference_start_Numbers 7:57_reference_end_ _reference_start_Numbers 7:59_reference_end_ _reference_start_Numbers 7:63_reference_end_ _reference_start_Numbers 7:65_reference_end_ _reference_start_Numbers 7:69_reference_end_ _reference_start_Numbers 7:71_reference_end_ _reference_start_Numbers 7:75_reference_end_ _reference_start_Numbers 7:77_reference_end_ _reference_start_Numbers 7:81_reference_end_ _reference_start_Numbers 7:83_reference_end_ _reference_start_Numbers 7:87_reference_end_ _reference_start_Numbers 7:88_reference_end_ _reference_start_Numbers 8:8_reference_end_ _reference_start_Numbers 8:8_reference_end_ _reference_start_Numbers 11:22_reference_end_ _reference_start_Numbers 15:3_reference_end_ _Xreference_start_Numbers 15:8_reference_end_ _reference_start_Numbers 15:9_reference_end_ _reference_start_Numbers 15:24_reference_end_ _reference_start_Numbers 22:40_reference_end_ _reference_start_Numbers 28:11_reference_end_ _reference_start_Numbers 28:19_reference_end_ _reference_start_Numbers 28:27_reference_end_ _reference_start_Numbers 29:2_reference_end_ _reference_start_Numbers 29:8_reference_end_ _reference_start_Numbers 29:13_reference_end_ _reference_start_Numbers 29:17_reference_end_ _reference_start_Numbers 31:28_reference_end_ _reference_start_Numbers 31:30_reference_end_ _reference_start_Numbers 31:33_reference_end_ _reference_start_Numbers 31:38_reference_end_ _reference_start_Numbers 31:44_reference_end_ _reference_start_Deuteronomy 8:13_reference_end_ _reference_start_Deuteronomy 12:6_reference_end_ _reference_start_Deuteronomy 12:17_reference_end_ _reference_start_Deuteronomy 12:21_reference_end_ _reference_start_Deuteronomy 14:23_reference_end_ _reference_start_Deuteronomy 14:26_refereYnce_end_ _reference_start_Deuteronomy 15:19_reference_end_ _reference_start_Deuteronomy 16:2_reference_end_ _reference_start_Deuteronomy 21:3_reference_end_ _reference_start_Deuteronomy 32:14_reference_end_ _reference_start_Judges 3:31_reference_end_ _reference_start_1 Samuel 11:5_reference_end_ _reference_start_1 Samuel 11:7_reference_end_ _reference_start_1 Samuel 11:7_reference_end_ _reference_start_1 Samuel 14:32_reference_end_ _reference_start_1 Samuel 15:9_reference_end_ _reference_start_1 Samuel 15:14_reference_end_ _reference_start_1 Samuel 15:15_reference_end_ _reference_start_1 Samuel 15:21_reference_end_ _reference_start_1 Samuel 16:2_reference_end_ _reference_start_1 Samuel 27:9_reference_end_ _reference_start_1 Samuel 30:20_reference_end_ _reference_start_2 Samuel 6:6_reference_end_ _reference_start_2 Samuel 12:2_reference_end_ _reference_start_2 Samuel 12:4_reference_end_ _reference_start_2 Samuel 17:29_reference_end_ _reference_start_2 Samuel 24:22_reference_end_ _reference_start_2 Samuel 2Z4:22_reference_end_ _reference_start_2 Samuel 24:24_reference_end_ _reference_start_1 Kings 1:9_reference_end_ _reference_start_1 Kings 5:3_reference_end_ _reference_start_1 Kings 5:3_reference_end_ _reference_start_1 Kings 7:25_reference_end_ _reference_start_1 Kings 7:29_reference_end_ _reference_start_1 Kings 7:44_reference_end_ _reference_start_1 Kings 8:5_reference_end_ _reference_start_1 Kings 8:63_reference_end_ _reference_start_1 Kings 19:20_reference_end_ _reference_start_1 Kings 19:21_reference_end_ _reference_start_1 Kings 19:21_reference_end_ _reference_start_2 Kings 5:26_reference_end_ _reference_start_2 Kings 16:17_reference_end_ _reference_start_1 Chronicles 12:41_reference_end_ _reference_start_1 Chronicles 12:41_reference_end_ _reference_start_1 Chronicles 13:9_reference_end_ _reference_start_1 Chronicles 21:23_reference_end_ _reference_start_1 Chronicles 27:29_reference_end_ _reference_start_1 Chronicles 27:29_reference_end_ _reference_start_2 Chronicles 4:3_reference_end_ _reference_sta[rt_2 Chronicles 4:3_reference_end_ _reference_start_2 Chronicles 4:4_reference_end_ _reference_start_2 Chronicles 4:15_reference_end_ _reference_start_2 Chronicles 5:6_reference_end_ _reference_start_2 Chronicles 7:5_reference_end_ _reference_start_2 Chronicles 13:9_reference_end_ _reference_start_2 Chronicles 15:11_reference_end_ _reference_start_2 Chronicles 18:2_reference_end_ _reference_start_2 Chronicles 29:22_reference_end_ _reference_start_2 Chronicles 29:32_reference_end_ _reference_start_2 Chronicles 29:33_reference_end_ _reference_start_2 Chronicles 31:6_reference_end_ _reference_start_2 Chronicles 32:29_reference_end_ _reference_start_2 Chronicles 35:7_reference_end_ _reference_start_2 Chronicles 35:8_reference_end_ _reference_start_2 Chronicles 35:9_reference_end_ _reference_start_2 Chronicles 35:12_reference_end_ _reference_start_Nehemiah 10:37_reference_end_ _reference_start_Job 1:3_reference_end_ _reference_start_Job 1:14_reference_end_ _reference_start_Job 40:15_reference_end_ _reference_start_Job 42:12_reference_end_ _reference_start_Psalms 66:15_reference_end_ _reference_start_Ecclesiastes 2:7_reference_end_ _reference_start_Isaiah 7:21_reference_end_ _reference_start_Isaiah 11:7_reference_end_ _reference_start_Isaiah 22:13_reference_end_ _reference_start_Isaiah 65:10_reference_end_ _reference_start_Isaiah 65:25_reference_end_ _reference_start_Jeremiah 3:24_reference_end_ _reference_start_Jeremiah 5:17_reference_end_ _reference_start_Jeremiah 31:12_reference_end_ _reference_start_Jeremiah 52:20_reference_end_ _reference_start_Ezekiel 4:15_reference_end_ _reference_start_Ezekiel 43:19_reference_end_ _reference_start_Ezekiel 43:23_reference_end_ _reference_start_Ezekiel 43:25_reference_end_ _reference_start_Ezekiel 45:18_reference_end_ _reference_start_Ezekiel 46:6_reference_end_ _reference_start_Hosea 5:6_reference_end_ _reference_start_Joel 1:18_reference_end_ _reference_start_Amos 6:12_reference_end_ _reference_start_Jonah 3:7_reference_end_ _reference_start_Habakkuk 3:17_reference_end_ ggs%%Qscattle, oxencattle, oxenTransliteration: 'elef _reference_start_Deuteronomy 7:13_reference_end_ _reference_start_Deuteronomy 28:4_reference_end_ _reference_start_Deuteronomy 28:18_reference_end_ _reference_start_Deuteronomy 28:51_reference_end_ _reference_start_Psalms 8:8_reference_end_ _reference_start_Proverbs 14:4_reference_end_ _reference_start_Isaiah 30:24_reference_end_lr--rcattle, herd, oxcattle, herd, oxTransliteration: baqar _reference_start_Genesis 12:16_reference_end_ _reference_start_Genesis 13:5_reference_end_ _reference_start_Genesis 18:7_reference_end_ _reference_start_Genesis 18:7_reference_end_ _reference_start_GenesT H|pdXL@4(th\PD8, xl`TH<0$  Rr  Qr  Pr  Or ? Nr  Mr , Lr  Kr  Jr  Ir  Hr  Gr  Fr  Er  Dr  Cr  Br  Ar  @r  ?r  >r  =r  <r  ;r  :r  9r  8r  7r  6r  5r 4r  3r 2r 1r 0r /r .r  -r  ,r  +r *r, )r& (r! 'r &r %r $r #r "r !r r r r( r r r r r  r r rX rW rS rQ rM rK rG rE rA r? r; r9 H|pdXL@4(th\PD8, xl`TH<0$  t  t  t  t  t  t t t4 t3 t1 t t s s s s3 s s s r# r  r r r r. r- r+ r+ ~r+ }r |r4 {r zr yr xrA wrA vr ur  tr sr rrB qr* pr( or nr mr % lr# kr# jr# ir# hr  gr fr! er dr cr br ar `r _r ^r ]r \r [r Zr  Yr  Xr  Wr Vr ) Ur ) Tr  Sr `bers 24:6_reference_end_ _reference_start_Judges 9:15_reference_end_ _reference_start_2 Samuel 5:11_reference_end_ _reference_start_2 Samuel 7:2_reference_end_ _reference_start_2 Samuel 7:7_reference_end_ _reference_start_1 Kings 5:13_reference_end_ _reference_start_1 Kings 5:20_reference_end_ _reference_start_1 Kings 5:22_reference_end_ _reference_start_1 Kings 5:24_reference_end_ _reference_start_1 Kings 6:9_reference_end_ _reference_start_1 Kings 6:10_reference_end_ _reference_start_1 Kings 6:15_reference_end_ _reference_start_1 Kings 6:16_reference_end_ _reference_start_1 Kings 6:18_reference_end_ _reference_start_1 Kings 6:18_reference_end_ _reference_start_1 Kings 6:20_reference_end_ _reference_start_1 Kings 6:36_reference_end_ _reference_start_1 Kings 7:2_reference_end_ _reference_start_1 Kings 7:2_reference_end_ _reference_start_1 Kings 7:3_reference_end_ _reference_start_1 Kings 7:7_reference_end_ _reference_start_1 Kings 7:11_reference_end_ _reference_start_1 Kings 7:12_reference_end_ _referencea_start_1 Kings 9:11_reference_end_ _reference_start_1 Kings 10:27_reference_end_ _reference_start_2 Kings 14:9_reference_end_ _reference_start_2 Kings 19:23_reference_end_ _reference_start_1 Chronicles 14:1_reference_end_ _reference_start_1 Chronicles 17:1_reference_end_ _reference_start_1 Chronicles 17:6_reference_end_ _reference_start_1 Chronicles 22:4_reference_end_ _reference_start_1 Chronicles 22:4_reference_end_ _reference_start_2 Chronicles 1:15_reference_end_ _reference_start_2 Chronicles 2:2_reference_end_ _reference_start_2 Chronicles 2:7_reference_end_ _reference_start_2 Chronicles 9:27_reference_end_ _reference_start_2 Chronicles 25:18_reference_end_ _reference_start_Ezra 3:7_reference_end_ _reference_start_Job 40:17_reference_end_ _reference_start_Psalms 29:5_reference_end_ _reference_start_Psalms 29:5_reference_end_ _reference_start_Psalms 80:11_reference_end_ _reference_start_Psalms 92:13_reference_end_ _reference_start_Psalms 104:16_reference_end_ _reference_start_Psalms 148:9_reference_end_ _reference_start_Song of Solomon 1:17_reference_end_ _reference_start_Song of Solomon 5:15_reference_end_ _reference_start_Song of Solomon 8:9_reference_end_ _reference_start_Isaiah 2:13_reference_end_ _reference_start_Isaiah 9:9_reference_end_ _reference_start_Isaiah 14:8_reference_end_ _reference_start_Isaiah 37:24_reference_end_ _reference_start_Isaiah 41:19_reference_end_ _reference_start_Isaiah 44:14_reference_end_ _reference_start_Jeremiah 22:7_reference_end_ _reference_start_Jeremiah 22:14_reference_end_ _reference_start_Jeremiah 22:15_reference_end_ _reference_start_Jeremiah 22:23_reference_end_ _reference_start_Ezekiel 17:3_reference_end_ _reference_start_Ezekiel 17:22_reference_end_ _reference_start_Ezekiel 17:23_reference_end_ _reference_start_Ezekiel 27:5_reference_end_ _reference_start_Ezekiel 31:3_reference_end_ _reference_start_Ezekiel 31:8_reference_end_ _reference_start_Amos 2:9_reference_end_ _reference_start_Zechariah 11:1_reference_end_ _reference_start_Zechariah 11:2_reference_end_ tP =t <t ;t( :t 9t 8t  7t 6t 5t 4t  3t  2t  1t  0t  /t  .t  -t  ,t +t  *t  )t  (t  't  &t  %t $ $t  #t  "t  !t  t  t  t  t  t  t  rsbrW||cottoncottonTransliteration: karpas _reference_start_Esther 1:6_reference_end_{{cormorantcormorantTransliteration: shalak _reference_start_Leviticus 11:17_reference_end_ _reference_start_Deuteronomy 14:17_reference_end_ zizcoriandercorianderTransliteration: gad _reference_start_Exodus 16:31_reference_end_ _reference_start_Numbers 11:7_reference_end_ykycoralcoralTransliteration: ra'mah _reference_start_Job 28:18_reference_end_ _reference_start_Ezekiel 27:16_reference_end_ x%%_xclothes mothclothes mothTransliteration: ash _reference_start_Job 4:19_reference_end_ _reference_start_Job 9:9_reference_end_ _reference_start_Job 13:28_reference_end_ _reference_start_Job 27:18_reference_end_ _reference_start_Psalms 39:12_reference_end_ _reference_start_Isaiah 50:9_reference_end_ _reference_start_Isaiah 51:8_reference_end_ _reference_start_Hosea 5:12_reference_end_ D|pdXL@4(reXK>1$ {naTG:-  &  %  $  #  "  ! +      #       " '  " 1 " "    .  m i" N. '   %   &       ~  }  | { z  y x w v u  t s rh qJ p( o~* n} m}& l| k{ j{  iz  hz gy fy ex dx3 cx2 9{l9p''%desert locustdesert locustTransliteration: 'arbeh _reference_start_Exodus 10:4_reference_end_ _reference_sg3GcummincumminTransliteration: camon _reference_start_Isaiah 28:25_reference_end_ _reference_start_Isaiah 28:27_reference_end_ _reference_start_Isaiah 28:27_reference_end_cuckoocuckooTransliteration: shachaph _reference_start_Leviticus 11:16_reference_end_ _reference_start_Deuteronomy 14:15_reference_end_{crocodilecrocodileTransliteration: liwyathan _reference_start_Job 40:25_reference_end_ _reference_start_Psalms 74:14_reference_end_ _reference_start_Psalms 104:26_reference_end_ _reference_start_Isaiah 27:1_reference_end_ _reference_start_Isaiah 27:1_reference_end_c~%~cricketcricketTransliteration: tselatsal _reference_start_Deuteronomy 28:42_reference_end_}k}cranecraneTransliteration: soos _reference_start_Isaiah 38:14_reference_end_ _reference_start_Jeremiah 8:7_reference_end_tart_Exodus 10:12_reference_end_ _reference_start_Exodus 10:13_reference_end_ _reference_start_Exodus 10:14_reference_end_ _reference_start_Exodus 10:14_reference_end_ _reference_start_Exodus 10:19_reference_end_ _reference_start_Exodus 10:19_reference_end_ _reference_start_Leviticus 11:22_reference_end_ _reference_start_Deuteronomy 28:38_reference_end_ _reference_start_Judges 6:5_reference_end_ _reference_start_Judges 7:12_reference_end_ _reference_start_1 Kings 8:37_reference_end_ _reference_start_2 Chronicles 6:28_reference_end_ _reference_start_Job 39:20_reference_end_ _reference_start_Psalms 78:46_reference_end_ _reference_start_Psalms 105:34_reference_end_ _reference_start_Psalms 109:23_reference_end_ _reference_start_Proverbs 30:27_reference_end_ _reference_start_Jeremiah 46:23_reference_end_ _reference_start_Joel 1:4_reference_end_ _reference_start_Joel 1:4_reference_end_ _reference_start_Joel 2:25_reference_end_ _reference_start_Nahum 3:15_reference_end_ _reference_start_Nahum 3:17_reference_end_ &9doedoeTransliteration: 'ayyalah _reference_start_Genesis 49:21_reference_end_ _reference_start_2 Samuel 22:34_reference_end_ _reference_start_Job 39:1_reference_end_ _reference_start_Psalms 18:34_reference_end_ _reference_start_Psalms 22:1_reference_end_ _reference_start_Psalms 29:9_reference_end_ _reference_start_Proverbs 5:19_reference_end_ _reference_start_Song of Solomon 2:7_reference_end_ _reference_start_Song of Solomon 3:5_reference_end_ _reference_start_Jeremiah 14:5_reference_end_ _reference_start_Habakkuk 3:19_reference_end_s 14:11_reference_end_ _reference_start_1 Kings 16:4_reference_end_ _reference_start_1 Kings 21:19_reference_end_ _reference_start_1 Kings 21:19_reference_end_ _reference_start_1 Kings 21:23_reference_end_ _reference_start_1 Kings 21:24_reference_end_ _reference_start_1 Kings 22:38_reference_end_ _reference_start_2 Kings 8:13_reference_end_ _reference_start_2 Kings 9:10_reference_end_ _reference_start_2 Kings 9:36_reference_end_ _reference_start_Job 30:1_reference_end_ _reference_start_Psalms 22:17_reference_end_ _reference_start_Psalms 22:21_reference_end_ _reference_start_Psalms 59:7_reference_end_ _reference_start_Psalms 59:15_reference_end_ _reference_start_Psalms 68:24_reference_end_ _reference_start_Proverbs 26:11_reference_end_ _reference_start_Proverbs 26:17_reference_end_ _reference_start_Ecclesiastes 9:4_reference_end_ _reference_start_Isaiah 56:10_reference_end_ _reference_start_Isaiah 56:11_reference_end_ _reference_start_Isaiah 66:3_reference_end_ _reference_start_Jeremiah 15:3_reference_end_ VdogdogTransliteration: keleb _reference_start_Exodus 11:7_reference_end_ _reference_start_Exodus 22:30_reference_end_ _reference_start_Deuteronomy 23:19_reference_end_ _reference_start_Judges 7:5_reference_end_ _reference_start_1 Samuel 17:43_reference_end_ _reference_start_1 Samuel 24:15_reference_end_ _reference_start_2 Samuel 3:8_reference_end_ _reference_start_2 Samuel 9:8_reference_end_ _reference_start_2 Samuel 16:9_reference_end_ _reference_start_1 Kingi C~qdWJ=0# zm`SF9,vi\OB5( i h g f e d c'" b$ a# `# _ ^ ]" \ [ Z Y0 X< W; V& U T S R Q P OD N8 M7 L  K J I H G F  E  D C B A @ ? > = < ;B :8 98 8  7 6 5D 4; 3; 2 1 0 / $ . -  , & +  *  )  (  ' _Leviticus 14:30_reference_end_ _reference_start_Leviticus 15:14_reference_end_ _reference_start_Leviticus 15:29_reference_end_ _reference_start_Numbers 6:10_reference_end_ _reference_start_2 Kings 6:25_reference_end_ _reference_start_Psalms 55:7_reference_end_ _reference_start_Psalms 56:1_reference_end_ _reference_start_Psalms 68:14_reference_end_ _reference_start_Song of Solomon 1:15_reference_end_ _reference_start_Song of Solomon 2:14_reference_end_ _reference_start_Song of Solomon 4:1_reference_end_ _reference_start_Song of Solomon 5:2_reference_end_ _reference_start_Song of Solomon 5:12_reference_end_ _reference_start_Song of Solomon 6:9_reference_end_ _reference_start_Isaiah 38:14_reference_end_ _reference_start_Isaiah 59:11_reference_end_ _reference_start_Isaiah 60:8_reference_end_ _reference_start_Jeremiah 48:28_reference_end_ _reference_start_Ezekiel 7:16_reference_end_ _reference_start_Hosea 7:11_reference_end_ _reference_start_Hosea 11:11_reference_end_ _reference_start_Nahum 2:8_reference_end_ >%%Edove, pigeondove, pigeonTransliteration: yonah _reference_start_Genesis 8:8_reference_end_ _reference_start_Genesis 8:9_reference_end_ _reference_start_Genesis 8:10_reference_end_ _reference_start_Genesis 8:11_reference_end_ _reference_start_Genesis 8:12_reference_end_ _reference_start_Leviticus 1:14_reference_end_ _reference_start_Leviticus 5:7_reference_end_ _reference_start_Leviticus 5:11_reference_end_ _reference_start_Leviticus 12:6_reference_end_ _reference_start_Leviticus 12:8_reference_end_ _reference_start_Leviticus 14:22_reference_end_ _reference_startl GG5--#dugong = sea cowdugong = sea cowTransliteration: tachash _reference_start_Exodus 25:5_reference_end_ _reference_start_Exodus 26:14_reference_end_ _reference_start_Exodus 35:7_reference_end_ _reference_start_Exodus 35:23_reference_end_ _reference_start_Exodus 36:19_reference_end_ _reference_start_Exodus 39:34_reference_end_ _reference_start_Numbers 4:6_reference_end_ _reference_start_Numbers 4:8_reference_end_ _reference_start_Numbers 4:10_reference_end_ _reference_start_Numbers 4:11_reference_end_ _reference_start_Numbers 4:12_reference_end_ _reference_start_Numbers 4:14_reference_end_ _reference_start_Numbers 4:25_reference_end_ _reference_start_Ezekiel 16:10_reference_end_ C~qdWJ=0# yl_RE8+uh[NA4'  ,  +! * ) (  ' &  %  $  # " !   5    &         [ :    !    -  "  -   )     Q ( ~ } | {  z  y  x  w  v  u  t s r q  p o" n m l k jference_start_Ruth 2:23_reference_end_ _reference_start_1 Samuel 6:13_reference_end_ _reference_start_1 Samuel 12:17_reference_end_ _reference_start_2 Samuel 4:6_reference_end_ _reference_start_2 Samuel 17:28_reference_end_ _reference_start_1 Kings 5:25_reference_end_ _reference_start_1 Chronicles 21:20_reference_end_ _reference_start_1 Chronicles 21:23_reference_end_ _reference_start_2 Chronicles 2:9_reference_end_ _reference_start_2 Chronicles 2:14_reference_end_ _reference_start_2 Chronicles 27:5_reference_end_ _reference_start_Job 31:40_reference_end_ _reference_start_Psalms 81:17_reference_end_ _reference_start_Psalms 147:14_reference_end_ _reference_start_Song of Solomon 7:3_reference_end_ _reference_start_Isaiah 28:25_reference_end_ _reference_start_Jeremiah 12:13_reference_end_ _reference_start_Jeremiah 41:8_reference_end_ _reference_start_Ezekiel 4:9_reference_end_ _reference_start_Ezekiel 27:17_reference_end_ _reference_start_Ezekiel 45:13_reference_end_ _reference_start_Joel 1:11_reference_end_ OZ ebonyebonyTransliteration: hovanim _reference_start_Ezekiel 27:15_reference_end_z ))5eaglewood treeeaglewood treeTransliteration: 'ahalim _reference_start_Numbers 24:6_reference_end_ _reference_start_Psalms 45:9_reference_end_ _reference_start_Proverbs 7:17_reference_end_ _reference_start_Song of Solomon 4:14_reference_end_l++eagle/great owleagle/great owlTransliteration: qippoz _reference_start_Isaiah 34:15_reference_end_%##dutum wheatdutum wheatTransliteration: chittah _reference_start_Genesis 30:14_reference_end_ _reference_start_Exodus 9:32_reference_end_ _reference_start_Exodus 29:2_reference_end_ _reference_start_Exodus 34:22_reference_end_ _reference_start_Deuteronomy 8:8_reference_end_ _reference_start_Deuteronomy 32:14_reference_end_ _reference_start_Judges 6:11_reference_end_ _reference_start_Judges 15:1_reference_end_ _rep dKdc3eweeweTransliteration: rachel _reference_start_Genesis 31:38_reference_end_ _reference_start_Genesis 32:15_reference_end_ _reference_start_Song of Solomon 6:6_reference_end_ _reference_start_Isaiah 53:7_reference_end_? ##Kemmer wheatemmer wheatTransliteration: kussemeth _reference_start_Exodus 9:32_reference_end_ _reference_start_Isaiah 28:25_reference_end_ _reference_start_Ezekiel 4:9_reference_end_# --egyptian vultureegyptian vultureTransliteration: racham _reference_start_Leviticus 11:18_reference_end_ _reference_start_Deuteronomy 14:17_reference_end_G ))Oegyptian cobraegyptian cobraTransliteration: peten _reference_start_Deuteronomy 32:33_reference_end_ _reference_start_Job 20:14_reference_end_ _reference_start_Job 20:16_reference_end_ _reference_start_Psalms 58:5_reference_end_ _reference_start_Psalms 91:13_reference_end_ _reference_start_Isaiah 11:8_reference_end_ Zd!!fast camelfast camelTransliteration: rekesh _reference_start_1 Kings 5:8_reference_end_ _reference_start_Esther 8:10_reference_end_ _reference_start_Esther 8:14_reference_end_ _reference_start_Micah 1:13_reference_end_z55falcon, buzzard hawkfalcon, buzzard hawkTransliteration: ra'ah _reference_start_Deuteronomy 14:13_reference_end_"ewe lambewe lambTransliteration: kibsah _reference_start_Genesis 21:28_reference_end_ _reference_start_Genesis 21:29_reference_end_ _reference_start_Genesis 21:30_reference_end_ _reference_start_Leviticus 14:10_reference_end_ _reference_start_Numbers 6:14_reference_end_ _reference_start_2 Samuel 12:3_reference_end_ _reference_start_2 Samuel 12:4_reference_end_ _reference_start_2 Samuel 12:6_reference_end_rs 22:27_reference_end_ _reference_start_Numbers 22:28_reference_end_ _reference_start_Numbers 22:29_reference_end_ _reference_start_Numbers 22:30_reference_end_ _reference_start_Numbers 22:30_reference_end_ _reference_start_Numbers 22:32_reference_end_ _reference_start_Numbers 22:33_reference_end_ _reference_start_Judges 5:10_reference_end_ _reference_start_1 Samuel 9:3_reference_end_ _reference_start_1 Samuel 9:3_reference_end_ _reference_start_1 Samuel 9:5_reference_end_ _reference_start_1 Samuel 9:20_reference_end_ _reference_start_1 Samuel 10:2_reference_end_ _reference_start_1 Samuel 10:2_reference_end_ _reference_start_1 Samuel 10:14_reference_end_ _reference_start_1 Samuel 10:16_reference_end_ _reference_start_2 Kings 4:22_reference_end_ _reference_start_2 Kings 4:24_reference_end_ _reference_start_1 Chronicles 27:30_reference_end_ _reference_start_Job 1:3_reference_end_ _reference_start_Job 1:14_reference_end_ _reference_start_Job 42:12_reference_end_ _reference_start_Zechariah 9:9_reference_end_ ''yfemale donkeyfemale donkeyTransliteration: 'athon _reference_start_Genesis 12:16_reference_end_ _reference_start_Genesis 32:16_reference_end_ _reference_start_Genesis 45:23_reference_end_ _reference_start_Genesis 49:11_reference_end_ _reference_start_Numbers 22:21_reference_end_ _reference_start_Numbers 22:22_reference_end_ _reference_start_Numbers 22:23_reference_end_ _reference_start_Numbers 22:23_reference_end_ _reference_start_Numbers 22:25_reference_end_ _reference_start_Numbers 22:27_reference_end_ _reference_start_Numbet C~qdWJ=0# zm`SF9,vi\OB5( o! n m l k j i h g f e d c b a ` _ ^ ] \& [$ Z" Y X Wi! V  U  T  S  R Q P O N  M L& K* J I H  G  F  E  D  C  B  A  @  ?  >  = <! ; : 9 8 7 6 5 4 3 2 1 0 /1 .- - ence_start_Jeremiah 5:17_reference_end_ _reference_start_Jeremiah 8:13_reference_end_ _reference_start_Jeremiah 8:13_reference_end_ _reference_start_Jeremiah 24:1_reference_end_ _reference_start_Jeremiah 24:2_reference_end_ _reference_start_Jeremiah 24:2_reference_end_ _reference_start_Jeremiah 24:2_reference_end_ _reference_start_Jeremiah 24:3_reference_end_ _reference_start_Jeremiah 24:3_reference_end_ _reference_start_Jeremiah 24:5_reference_end_ _reference_start_Jeremiah 24:8_reference_end_ _reference_start_Jeremiah 29:17_reference_end_ _reference_start_Hosea 2:14_reference_end_ _reference_start_Hosea 9:10_reference_end_ _reference_start_Joel 1:7_reference_end_ _reference_start_Joel 1:12_reference_end_ _reference_start_Joel 2:22_reference_end_ _reference_start_Amos 4:9_reference_end_ _reference_start_Micah 4:4_reference_end_ _reference_start_Nahum 3:12_reference_end_ _reference_start_Habakkuk 3:17_reference_end_ _reference_start_Haggai 2:19_reference_end_ _reference_start_Zechariah 3:10_reference_end_  fishfishyfigfigTransliteration: te'en _reference_start_Genesis 3:7_reference_end_ _reference_start_Numbers 13:23_reference_end_ _reference_start_Numbers 20:5_reference_end_ _reference_start_Deuteronomy 8:8_reference_end_ _reference_start_Judges 9:10_reference_end_ _reference_start_Judges 9:11_reference_end_ _reference_start_1 Kings 5:5_reference_end_ _reference_start_2 Kings 18:31_reference_end_ _reference_start_2 Kings 20:7_reference_end_ _reference_start_Nehemiah 13:15_reference_end_ _reference_start_Psalms 105:33_reference_end_ _reference_start_Proverbs 27:18_reference_end_ _reference_start_Song of Solomon 2:13_reference_end_ _reference_start_Isaiah 34:4_reference_end_ _reference_start_Isaiah 36:16_reference_end_ _reference_start_Isaiah 38:21_reference_end_ _referw C~qdWJ=0# zm`SF9,vi\OB5( 2 1 0 /3 . - , +  *  ) ( ', &, %, $( #  " !     ;  4  0  / + *       / / /    2 i        $ $ #        & ~ } |( {  z  y ' x w! v  u  t  s& r% q# p" wwcfish (1)fish (1)Transliteration: dag _reference_start_Genesis 9:2_reference_end_ _reference_start_Numbers 11:22_reference_end_ _reference_start_1 Kings 5:13_reference_end_ _reference_start_2 Chronicles 33:14_reference_end_ _reference_start_Nehemiah 3:3_reference_end_ _reference_start_Nehemiah 12:39_reference_end_ _reference_start_Nehemiah 13:16_reference_end_ _reference_start_Job 12:8_reference_end_ _reference_start_Job 40:31_reference_end_ _reference_start_Psalms 8:9_reference_end_ _reference_start_Ecclesiastes 9:12_reference_end_ _reference_start_Ezekiel 38:20_reference_end_ _reference_start_Hosea 4:3_reference_end_ _reference_start_Jonah 2:1_reference_end_ _reference_start_Jonah 2:1_reference_end_ _reference_start_Jonah 2:11_reference_end_ _reference_start_Habakkuk 1:14_reference_end_ _reference_start_Zephaniah 1:3_reference_end_ _reference_start_Zephaniah 1:10_reference_end_ I(I[flaxflaxTransliteration: pishtah _reference_start_Exodus 9:31_reference_end_ _reference_start_Exodus 9:31_reference_end_ _reference_start_Isaiah 42:3_reference_end_ _reference_start_Isaiah 43:17_reference_end_Tfish (2)fish (2)Transliteration: dagah _reference_start_Genesis 1:26_reference_end_ _reference_start_Genesis 1:28_reference_end_ _reference_start_Exodus 7:18_reference_end_ _reference_start_Exodus 7:21_reference_end_ _reference_start_Numbers 11:5_reference_end_ _reference_start_Deuteronomy 4:18_reference_end_ _reference_start_Psalms 105:29_reference_end_ _reference_start_Isaiah 50:2_reference_end_ _reference_start_Ezekiel 29:4_reference_end_ _reference_start_Ezekiel 29:4_reference_end_ _reference_start_Ezekiel 29:5_reference_end_ _reference_start_Ezekiel 47:9_reference_end_ _reference_start_Ezekiel 47:10_reference_end_ _reference_start_Ezekiel 47:10_reference_end_ _reference_start_Jonah 2:2_reference_end_ YYyfleafleaTransliteration: par'osh _reference_start_1 Samuel 24:15_reference_end_ _reference_start_1 Samuel 26:20_reference_end_##{flax, linenflax, linenTransliteration: pishteh _reference_start_Leviticus 13:47_reference_end_ _reference_start_Leviticus 13:48_reference_end_ _reference_start_Leviticus 13:52_reference_end_ _reference_start_Leviticus 13:59_reference_end_ _reference_start_Deuteronomy 22:11_reference_end_ _reference_start_Joshua 2:6_reference_end_ _reference_start_Judges 15:14_reference_end_ _reference_start_Proverbs 31:13_reference_end_ _reference_start_Isaiah 19:9_reference_end_ _reference_start_Jeremiah 13:1_reference_end_ _reference_start_Ezekiel 40:3_reference_end_ _reference_start_Ezekiel 44:17_reference_end_ _reference_start_Ezekiel 44:18_reference_end_ _reference_start_Ezekiel 44:18_reference_end_ _reference_start_Hosea 2:7_reference_end_ _reference_start_Hosea 2:11_reference_end_   sKflockflockTransliteration: 'asterah _reference_start_Deuteronomy 7:13_reference_end_ _reference_start_Deuteronomy 28:4_reference_end_ _reference_start_Deuteronomy 28:18_reference_end_ _reference_start_Deuteronomy 28:51_reference_end_reference_start_Song of Solomon 4:1_reference_end_ _reference_start_Song of Solomon 4:2_reference_end_ _reference_start_Song of Solomon 6:5_reference_end_ _reference_start_Song of Solomon 6:6_reference_end_ _reference_start_Isaiah 17:2_reference_end_ _reference_start_Isaiah 32:14_reference_end_ _reference_start_Isaiah 40:11_reference_end_ _reference_start_Jeremiah 6:3_reference_end_ _reference_start_Jeremiah 13:17_reference_end_ _reference_start_Jeremiah 13:20_reference_end_ _reference_start_Jeremiah 31:10_reference_end_ _reference_start_Jeremiah 31:24_reference_end_ _reference_start_Jeremiah 51:23_reference_end_ _reference_start_Ezekiel 34:12_reference_end_ _reference_start_Joel 1:18_reference_end_ _reference_start_Joel 1:18_reference_end_ _reference_start_Micah 2:12_reference_end_ _reference_start_Micah 5:7_reference_end_ _reference_start_Zephaniah 2:14_reference_end_ _reference_start_Zephaniah 3:5_reference_end_ _reference_start_Zechariah 10:3_reference_end_ _reference_start_Malachi 1:14_reference_end_ !%% flock, sheepflock, sheepC##Sflock, herdflock, herdTransliteration: 'eder _reference_start_Genesis 29:2_reference_end_ _reference_start_Genesis 29:2_reference_end_ _reference_start_Genesis 29:3_reference_end_ _reference_start_Genesis 29:8_reference_end_ _reference_start_Genesis 30:40_reference_end_ _reference_start_Genesis 32:17_reference_end_ _reference_start_Genesis 32:17_reference_end_ _reference_start_Genesis 32:17_reference_end_ _reference_start_Genesis 32:17_reference_end_ _reference_start_Genesis 32:20_reference_end_ _reference_start_Judges 5:16_reference_end_ _reference_start_1 Samuel 17:34_reference_end_ _reference_start_2 Chronicles 32:28_reference_end_ _reference_start_Job 24:2_reference_end_ _reference_start_Psalms 78:52_reference_end_ _reference_start_Proverbs 27:23_reference_end_ _reference_start_Song of Solomon 1:7_reference_end_ _~ C~qdWJ=0# zm`SF9,vi\OB5( u+ t* s) r) q( p( o' n' m& l& k$ j i h g f e d c b a ` _ ^# ] \ [ Z  Y  X W V' U&  T$ S$ R! Q! P O N" M3 L K J  I  H G( F  E D C B A @ ? >N4 = <  ; " : 9  8  7  6  5  4( 3reference_start_Genesis 24:35_reference_end_ _reference_start_Genesis 26:14_reference_end_ _reference_start_Genesis 27:9_reference_end_ _reference_start_Genesis 29:2_reference_end_ _reference_start_Genesis 29:3_reference_end_ _reference_start_Genesis 29:6_reference_end_ _reference_start_Genesis 29:7_reference_end_ _reference_start_Genesis 29:8_reference_end_ _reference_start_Genesis 29:9_reference_end_ _reference_start_Genesis 29:10_reference_end_ _reference_start_Genesis 29:10_reference_end_ _reference_start_Genesis 30:31_reference_end_ _reference_start_Genesis 30:32_reference_end_ _reference_start_Genesis 30:36_reference_end_ _reference_start_Genesis 30:38_reference_end_ _reference_start_Genesis 30:38_reference_end_ _reference_start_Genesis 30:39_reference_end_ _reference_start_Genesis 30:39_reference_end_ _reference_start_Genesis 30:40_reference_end_ _reference_start_Genesis 30:40_reference_end_ _reference_start_Genesis 30:41_reference_end_ _reference_start_Genesis 30:41_reference_end_ _reference_start_Genesis 30:42_reference_end_ _reference_start_Genesis 30:43_reference_end_ _reference_start_Genesis 31:4_reference_end_ _reference_start_Genesis 31:8_reference_end_ _reference_start_Genesis 31:8_reference_end_ _reference_start_Genesis 31:10_reference_end_ _reference_start_Genesis 31:10_reference_end_ _reference_start_Genesis 31:12_reference_end_ _reference_start_Genesis 31:19_reference_end_ _reference_start_Genesis 31:38_reference_end_ _reference_start_Genesis 31:41_reference_end_ _reference_start_Genesis 31:43_reference_end_ _reference_start_Genesis 31:43_reference_end_ _reference_start_Genesis 32:6_reference_end_ _reference_start_Genesis 32:8_reference_end_ _reference_start_Genesis 33:13_reference_end_ _reference_start_Genesis 33:13_reference_end_ _reference_start_Genesis 34:28_reference_end_ _reference_start_Genesis 37:2_reference_end_ _reference_start_Genesis 37:12_reference_end_ _reference_start_Genesis 37:14_reference_end_ _reference_start_Genesis 38:12_reference_end_ _reference_start_Genesis 38:13_reference_end_ _reference_start_Genesis 38:17_reference_end_ _reference_start_Genesis 45:10_reference_end_ _reference_start_Genesis 46:32_reference_end_ _reference_start_Genesis 46:34_reference_end_ _reference_start_Genesis 47:1_reference_end_ _reference_start_Genesis 47:3_reference_end_ _reference_start_Genesis 47:4_reference_end_ _reference_start_Genesis 47:17_reference_end_ _reference_start_Genesis 50:8_reference_end_ _reference_start_Exodus 2:16_reference_end_ _reference_start_Exodus 2:17_reference_end_ _reference_start_Exodus 2:19_reference_end_ _reference_start_Exodus 3:1_reference_end_ _reference_start_Exodus 3:1_reference_end_ _reference_start_Exodus 9:3_reference_end_ _reference_start_Exodus 10:9_reference_end_ _reference_start_Exodus 10:24_reference_end_ _reference_start_Exodus 12:21_reference_end_ _reference_start_Exodus 12:32_reference_end_ _reference_start_Exodus 12:38_reference_end_ _reference_start_Exodus 20:24_reference_end_ _reference_start_Exodus 21:37_reference_end_ _reference_start_Exodus 22:29_reference_end_ _reference_start_Exodus 34:3_reference_end_ _reference_start_Leviticus 1:2_reference_end_ _reference_start_Leviticus 1:10_reference_end_ _reference_start_Leviticus 3:6_reference_end_ _reference_start_Leviticus 5:6_reference_end_ _reference_start_Leviticus 5:15_reference_end_ _reference_start_Leviticus 5:18_reference_end_ _reference_start_Leviticus 5:25_reference_end_ _reference_start_Leviticus 22:21_reference_end_ _reference_start_Leviticus 27:32_reference_end_ _reference_start_Numbers 11:22_reference_end_ _reference_start_Numbers 15:3_reference_end_ _reference_start_Numbers 22:40_reference_end_ _reference_start_Numbers 27:17_reference_end_ _reference_start_Numbers 31:28_reference_end_ _reference_start_Numbers 31:30_reference_end_ _reference_start_Numbers 31:32_reference_end_ _reference_start_Numbers 31:36_reference_end_ _reference_start_Numbers 31:37_reference_end_ _reference_start_Numbers 31:43_reference_end_ _reference_start_Numbers 32:16_reference_end_ _reference_start_Numbers 32:36_reference_end_ _reference_start_Deuteronomy 7:13_reference_end_ _reference_start_Deuteronomy 8:13_reference_end_ _reference_start_Deuteronomy 12:6_reference_end_ _reference_start_Deuteronomy 12:17_reference_end_ _reference_start_Deuteronomy 12:21_reference_end_ _reference_start_Deuteronomy 14:23_reference_end_ _reference_start_Deuteronomy 14:26_reference_end_ _reference_start_Deuteronomy 15:14_reference_end_ _reference_start_Deuteronomy 15:19_reference_end_ _reference_start_Deuteronomy 15:19_reference_end_ _reference_start_Deuteronomy 16:2_reference_end_ _reference_start_Deuteronomy 18:4_reference_end_ _reference_start_Deuteronomy 28:4_reference_end_ _reference_start_Deuteronomy 28:18_reference_end_ _reference_start_Deuteronomy 28:31_reference_end_ _reference_start_Deuteronomy 28:51_reference_end_ _reference_start_Deuteronomy 32:14_reference_end_ _reference_start_Joshua 7:24_reference_end_ _reference_start_1 Samuel 8:17_reference_end_ _reference_start_1 Samuel 14:32_reference_end_ _reference_start_1 Samuel 15:9_reference_end_ _reference_start_1 Samuel 15:14_reference_end_ _reference_start_1 Samuel 15:15_reference_end_ _reference_start_1 Samuel 15:21_reference_end_ _reference_start_1 Samuel 16:11_reference_end_ _reference_start_1 Samuel 16:19_reference_end_ _reference_start_1 Samuel 17:15_reference_end_ _reference_start_1 Samuel 17:20_reference_end_ _reference_start_1 Samuel 17:28_reference_end_ _reference_start_1 Samuel 17:34_reference_end_ _reference_start_1 Samuel 24:4_reference_end_ _reference_start_1 Samuel 25:2_reference_end_ _reference_start_1 Samuel 25:2_reference_end_ _reference_start_1 Samuel 25:4_reference_end_ _reference_start_1 Samuel 25:16_reference_end_ _reference_start_1 Samuel 25:18_reference_end_ _reference_start_1 Samuel 27:9_reference_end_ _reference_start_1 Samuel 30:20_reference_end_ _reference_start_2 Samuel 7:8_reference_end_ _reference_start_2 Samuel 12:2_reference_end_ _reference_start_2 Samuel 12:4_reference_end_ _reference_start_2 Samuel 17:29_reference_end_ _reference_start_2 Samuel 24:17_reference_end_ _reference_start_1 Kings 1:9_reference_end_ _reference_start_1 Kings 1:19_reference_end_ _reference_start_1 Kings 1:25_reference_end_ _reference_start_1 Kings 5:3_reference_end_ _reference_start_1 Kings 8:5_reference_end_ _reference_start_1 Kings 8:63_reference_end_ _reference_start_1 Kings 22:17_reference_end_ _reference_start_2 Kings 5:26_reference_end_ _reference_start_1 Chronicles 4:39_reference_end_ _reference_start_1 Chronicles 4:41_reference_end_ _reference_start_1 Chronicles 5:21_reference_end_ _reference_start_1 Chronicles 12:41_reference_end_ _reference_start_1 Chronicles 17:7_reference_end_ _reference_start_1 Chronicles 21:17_reference_end_ _reference_start_1 Chronicles 27:31_reference_end_ _reference_start_2 Chronicles 5:6_reference_end_ _reference_start_2 Chronicles 7:5_reference_end_ _reference_start_2 Chronicles 14:14_reference_end_ _reference_start_2 Chronicles 15:11_reference_end_ _reference_start_2 Chronicles 17:11_reference_end_ _reference_start_2 Chronicles 18:2_reference_end_ _reference_start_2 Chronicles 18:16_reference_end_ _reference_start_2 Chronicles 29:33_reference_end_ _reference_start_2 Chronicles 30:24_reference_end_ _reference_start_2 Chronicles 30:24_reference_end_ _reference_start_2 Chronicles 31:6_reference_end_ _reference_start_2 Chronicles 32:29_reference_end_ _reference_start_2 Chronicles 35:7_reference_end_ _reference_start_Ezra 10:19_reference_end_ _reference_start_Nehemiah 3:1_reference_end_ _reference_start_Nehemiah 3:32_reference_end_ _reference_start_Nehemiah 5:18_reference_end_ _reference_start_Nehemiah 10:37_reference_end_ _reference_start_Nehemiah 12:39_reference_end_ _reference_start_Job 1:3_reference_end_ _reference_start_Job 1:16_reference_end_ _reference_start_Job 21:11_reference_end_ _reference_start_Job 30:1_reference_end_ _reference_start_Job 42:12_reference_end_ _reference_start_Psalms 44:12_reference_end_ _reference_start_Psalms 44:23_reference_end_ _reference_start_Psalms 49:15_reference_end_ _reference_start_Psalms 65:14_reference_end_ _reference_start_Psalms 74:1_reference_end_ _reference_start_Psalms 77:21_reference_end_ _reference_start_Psalms 78:52_reference_end_ _reference_start_Psalms 78:70_reference_end_ _reference_start_Psalms 79:13_reference_end_ _reference_start_Psalms 80:2_reference_end_ _reference_start_Psalms 95:7_reference_end_ _reference_start_Psalms 100:3_reference_end_ _reference_start_Psalms 107:41_reference_end_ _reference_start_Psalms 114:4_reference_end_ _reference_start_Psalms 114:6_reference_end_ _reference_start_Psalms 144:13_reference_end_ _reference_start_Proverbs 27:23_reference_end_ _reference_start_Ecclesiastes 2:7_reference_end_ _reference_start_Song of Solomon 1:8_reference_end_ _reference_start_Isaiah 7:21_reference_end_ _reference_start_Isaiah 13:14_reference_end_ _reference_start_Isaiah 22:13_reference_end_ _reference_start_Isaiah 53:6_reference_end_ _reference_start_Isaiah 60:7_reference_end_ _reference_start_Isaiah 61:5_reference_end_ _reference_start_Isaiah 63:11_reference_end_ _reference_start_Isaiah 65:10_reference_end_ _reference_start_Jeremiah 3:24_reference_end_ _reference_start_Jeremiah 5:17_reference_end_ _reference_start_Jeremiah 12:3_reference_end_ _reference_start_Jeremiah 13:20_reference_end_ _reference_start_Jeremiah 23:1_reference_end_ _reference_start_Jeremiah 23:2_reference_end_ _reference_start_Jeremiah 23:3_reference_end_ _reference_start_Jeremiah 25:34_reference_end_ _reference_start_Jeremiah 25:35_reference_end_ _reference_start_Jeremiah 25:36_reference_end_ _reference_start_Jeremiah 31:12_reference_end_ _reference_start_Jeremiah 33:12_reference_end_ _reference_start_Jeremiah 33:13_reference_end_ _reference_start_Jeremiah 49:20_reference_end_ _reference_start_Jeremiah 49:29_reference_end_ _reference_start_Jeremiah 50:6_reference_end_ _reference_start_Jeremiah 50:8_reference_end_ _reference_start_Jeremiah 50:45_reference_end_ _reference_start_Ezekiel 24:5_reference_end_ _reference_start_Ezekiel 25:5_reference_end_ _reference_start_Ezekiel 34:2_reference_end_ _reference_start_Ezekiel 34:3_reference_end_ _reference_start_Ezekiel 34:6_reference_end_ _reference_start_Ezekiel 34:6_reference_end_ _reference_start_Ezekiel 34:8_reference_end_ _reference_start_Ezekiel 34:8_reference_end_ _reference_start_Ezekiel 34:8_reference_end_ _reference_start_Ezekiel 34:8_reference_end_ _reference_start_Ezekiel 34:10_reference_end_ _reference_start_Ezekiel 34:10_reference_end_ _reference_start_Ezekiel 34:10_reference_end_ _reference_start_Ezekiel 34:11_reference_end_ _reference_start_Ezekiel 34:12_reference_end_ _reference_start_Ezekiel 34:12_reference_end_ _reference_start_Ezekiel 34:15_reference_end_ _reference_start_Ezekiel 34:17_reference_end_ _reference_start_Ezekiel 34:19_reference_end_ _reference_start_Ezekiel 34:22_reference_end_ _reference_start_Ezekiel 34:31_reference_end_ _reference_start_Ezekiel 34:31_reference_end_ _reference_start_Ezekiel 36:37_reference_end_ _reference_start_Ezekiel 36:38_reference_end_ _reference_start_Ezekiel 36:38_reference_end_ _reference_start_Ezekiel 36:38_reference_end_ _reference_start_Ezekiel 43:23_reference_end_ _reference_start_Ezekiel 43:25_reference_end_ _reference_start_Ezekiel 45:15_reference_end_ _reference_start_Hosea 5:6_reference_end_ _reference_start_Joel 1:18_reference_end_ _reference_start_Amos 6:4_reference_end_ _reference_start_Amos 7:15_reference_end_ _reference_start_Jonah 3:7_reference_end_ _reference_start_Micah 2:12_reference_end_ _reference_start_Micah 5:7_reference_end_ _reference_start_Micah 7:14_reference_end_ _reference_start_Habakkuk 3:17_reference_end_ _reference_start_Zephaniah 2:6_reference_end_ _reference_start_Zechariah 9:16_reference_end_ _reference_start_Zechariah 10:2_reference_end_ _reference_start_Zechariah 11:4_reference_end_ _reference_start_Zechariah 11:7_reference_end_ _reference_start_Zechariah 11:7_reference_end_ _reference_start_Zechariah 11:7_reference_end_ _reference_start_Zechariah 11:11_reference_end_ _reference_start_Zechariah 11:17_reference_end_ _reference_start_Zechariah 13:7_reference_end_ MyM ''Yfox or jackalfox or jackalTransliteration: shual _reference_start_Judges 15:4_reference_end_ _reference_start_Nehemiah 3:35_reference_end_ _reference_start_Psalms 63:11_reference_end_ _reference_start_Song of Solomon 2:15_reference_end_ _reference_start_Song of Solomon 2:15_reference_end_ _reference_start_Lamentations 5:18_reference_end_ _reference_start_Ezekiel 13:4_reference_end_--mflock, sheep (2)flock, sheep (2)Transliteration: tsoneh _reference_start_Numbers 32:24_reference_end_ _reference_start_Psalms 8:8_reference_end_O--Uflock, sheep (1)flock, sheep (1)Transliteration: tson _reference_start_Genesis 4:2_reference_end_ _reference_start_Genesis 4:4_reference_end_ _reference_start_Genesis 12:16_reference_end_ _reference_start_Genesis 13:5_reference_end_ _reference_start_Genesis 20:14_reference_end_ _reference_start_Genesis 21:27_reference_end_ _reference_start_Genesis 21:28_reference_end_ _ C~qdWJ=0# zm`SF9,vi\OB5( 8 7 $ 6  5+ 4% 3$ 2 1 0 / .( - ,  + * ) ( ' & % $ # "" ! %   &              2 / / / / ." . - & & & % % % " ! !     + + ~) }& | { z y x w v C~qdWJ=0# zm`SF9,vi\OB5( { z y! x w v u t s r q  p  o  n ) m  l ) k ' j  i  h ? g  f  e  d  c  b  a  `  _  ^  ]  \  [  Z  Y  X  W  V  U " T  S  R  Q  P  O  N  M  L  K  J  I H  G3 F E D C B A @ ? > = <  ;  :  9 C~qdWJ=0# yl_RE8+uh[NA4'  >" =" <" ;" :" 9" 8 7 62- 52 42 31 21 1! 0! / .$ -# ," + * ) (  '  & % $A #? "= !< 5         r r k) d _ P O NF N4 M J A 1 , , *      '  %      ~# }  | C~qdWJ=0# zm`SF9,vi\OB5(      ~  }" |i {N- z y x w v u t s r q p o  n m l k? j# i h g  f&  e&  d& c&  b&  a&  `&  _&  ^&  ]$ \# [! Z! Y! X  W V U T S- R+ Q+ P$& O$& N$& M$% L" K" J" I" H" G" F" E" D" C" B" A" @" ?" 5Z"garlicgarlicTransliteration: shumim _reference_start_Numbers 11:5_reference_end_a!galbanumgalbanumTransliteration: chelbenah _reference_start_Exodus 30:34_reference_end_c /frogfrogTransliteration: sephardea _reference_start_Exodus 7:27_reference_end_ _reference_start_Exodus 7:28_reference_end_ _reference_start_Exodus 7:29_reference_end_ _reference_start_Exodus 8:1_reference_end_ _reference_start_Exodus 8:2_reference_end_ _reference_start_Exodus 8:3_reference_end_ _reference_start_Exodus 8:4_reference_end_ _reference_start_Exodus 8:5_reference_end_ _reference_start_Exodus 8:7_reference_end_ _reference_start_Exodus 8:8_reference_end_ _reference_start_Exodus 8:9_reference_end_ _reference_start_Psalms 78:45_reference_end_ _reference_start_Psalms 105:30_reference_end_ J#qgazellegazelleTransliteration: tsebiy _reference_start_Deuteronomy 12:15_reference_end_ _reference_start_Deuteronomy 12:22_reference_end_ _reference_start_Deuteronomy 14:5_reference_end_ _reference_start_Deuteronomy 15:22_reference_end_ _reference_start_2 Samuel 2:18_reference_end_ _reference_start_1 Kings 5:3_reference_end_ _reference_start_1 Chronicles 12:9_reference_end_ _reference_start_Proverbs 6:5_reference_end_ _reference_start_Song of Solomon 2:7_reference_end_ _reference_start_Song of Solomon 2:9_reference_end_ _reference_start_Song of Solomon 2:17_reference_end_ _reference_start_Song of Solomon 3:5_reference_end_ _reference_start_Song of Solomon 4:5_reference_end_ _reference_start_Song of Solomon 7:4_reference_end_ _reference_start_Song of Solomon 8:14_reference_end_ _reference_start_Isaiah 13:14_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5( D C B> A$ @N ?A > = <  ; ( : 9 8 7 6  5 4  3! 23 1 0 /  .  - , + *% ) ( ' & % $ #  "H !A ' - * * )1 )#  '   "   ( ( !                       OeO& graingrainY%gourdgourdTransliteration: paquoth _reference_start_2 Kings 4:39_reference_end_;$'';globe thistleglobe thistleTransliteration: choach _reference_start_2 Kings 14:9_reference_end_ _reference_start_2 Kings 14:9_reference_end_ _reference_start_2 Chronicles 25:18_reference_end_ _reference_start_2 Chronicles 25:18_reference_end_ _reference_start_2 Chronicles 33:11_reference_end_ _reference_start_Job 31:40_reference_end_ _reference_start_Job 40:26_reference_end_ _reference_start_Proverbs 26:9_reference_end_ _reference_start_Song of Solomon 2:2_reference_end_ _reference_start_Isaiah 34:13_reference_end_ _reference_start_Hosea 9:6_reference_end_ ``' grain (2)grain (2)Transliteration: bar _reference_start_Genesis 41:35_reference_end_ _reference_start_Genesis 41:49_reference_end_ _reference_start_Genesis 42:3_reference_end_ _reference_start_Genesis 42:25_reference_end_ _reference_start_Genesis 45:23_reference_end_ _reference_start_Job 39:4_reference_end_ _reference_start_Psalms 65:14_reference_end_ _reference_start_Psalms 72:16_reference_end_ _reference_start_Proverbs 11:26_reference_end_ _reference_start_Jeremiah 23:28_reference_end_ _reference_start_Joel 2:24_reference_end_ _reference_start_Amos 5:11_reference_end_ _reference_start_Amos 8:5_reference_end_ _reference_start_Amos 8:6_reference_end_erence_start_Nehemiah 5:11_reference_end_ _reference_start_Nehemiah 10:40_reference_end_ _reference_start_Nehemiah 13:5_reference_end_ _reference_start_Nehemiah 13:12_reference_end_ _reference_start_Psalms 4:8_reference_end_ _reference_start_Psalms 65:10_reference_end_ _reference_start_Psalms 78:24_reference_end_ _reference_start_Isaiah 36:17_reference_end_ _reference_start_Isaiah 62:8_reference_end_ _reference_start_Jeremiah 31:12_reference_end_ _reference_start_Lamentations 2:12_reference_end_ _reference_start_Ezekiel 36:29_reference_end_ _reference_start_Hosea 2:10_reference_end_ _reference_start_Hosea 2:11_reference_end_ _reference_start_Hosea 2:24_reference_end_ _reference_start_Hosea 7:14_reference_end_ _reference_start_Hosea 9:1_reference_end_ _reference_start_Hosea 14:8_reference_end_ _reference_start_Joel 1:10_reference_end_ _reference_start_Joel 1:17_reference_end_ _reference_start_Joel 2:19_reference_end_ _reference_start_Haggai 1:11_reference_end_ _reference_start_Zechariah 9:17_reference_end_ b(grain (2)grain (2)Transliteration: dagan _reference_start_Genesis 27:28_reference_end_ _reference_start_Genesis 27:37_reference_end_ _reference_start_Numbers 18:12_reference_end_ _reference_start_Numbers 18:27_reference_end_ _reference_start_Deuteronomy 7:13_reference_end_ _reference_start_Deuteronomy 11:14_reference_end_ _reference_start_Deuteronomy 12:17_reference_end_ _reference_start_Deuteronomy 14:23_reference_end_ _reference_start_Deuteronomy 18:4_reference_end_ _reference_start_Deuteronomy 28:51_reference_end_ _reference_start_Deuteronomy 33:28_reference_end_ _reference_start_2 Kings 18:32_reference_end_ _reference_start_2 Chronicles 31:5_reference_end_ _reference_start_2 Chronicles 32:28_reference_end_ _reference_start_Nehemiah 5:2_reference_end_ _reference_start_Nehemiah 5:3_reference_end_ _reference_start_Nehemiah 5:10_reference_end_ _ref C~qdWJ=0# zm`SF9,vi\OB5( %   j i# h f f \ ~H } |  {  z y  x  w  v u  t  s  r q p o n m l k j i h g f  e d c  b a  `  _ ^ ] \1 [( Z( Y X W/ V, U+ T* S* R* Q* P&  O% N M L K J  I H G F E$ 33I)ggrain (3)grain (3)Transliteration: shever _reference_start_Genesis 42:1_reference_end_ _reference_start_Genesis 42:2_reference_end_ _reference_start_Genesis 42:19_reference_end_ _reference_start_Genesis 42:26_reference_end_ _reference_start_Genesis 43:2_reference_end_ _reference_start_Genesis 44:2_reference_end_ _reference_start_Genesis 47:14_reference_end_ _reference_start_Nehemiah 10:32_reference_end_ _reference_start_Amos 8:5_reference_end_ kk*grapegrapeTransliteration: 'enav _reference_start_Genesis 40:10_reference_end_ _reference_start_Genesis 40:11_reference_end_ _reference_start_Genesis 49:11_reference_end_ _reference_start_Leviticus 25:5_reference_end_ _reference_start_Numbers 6:3_reference_end_ _reference_start_Numbers 6:3_reference_end_ _reference_start_Numbers 13:20_reference_end_ _reference_start_Numbers 13:23_reference_end_ _reference_start_Deuteronomy 23:25_reference_end_ _reference_start_Deuteronomy 32:14_reference_end_ _reference_start_Deuteronomy 32:32_reference_end_ _reference_start_Deuteronomy 32:32_reference_end_ _reference_start_Nehemiah 13:15_reference_end_ _reference_start_Isaiah 5:2_reference_end_ _reference_start_Isaiah 5:4_reference_end_ _reference_start_Jeremiah 8:13_reference_end_ _reference_start_Hosea 3:1_reference_end_ _reference_start_Hosea 9:10_reference_end_ _reference_start_Amos 9:13_reference_end__reference_end_ _reference_start_Exodus 10:15_reference_end_ _reference_start_Deuteronomy 11:15_reference_end_ _reference_start_Deuteronomy 29:22_reference_end_ _reference_start_Deuteronomy 32:2_reference_end_ _reference_start_2 Kings 19:26_reference_end_ _reference_start_Job 5:25_reference_end_ _reference_start_Psalms 72:16_reference_end_ _reference_start_Psalms 92:8_reference_end_ _reference_start_Psalms 102:5_reference_end_ _reference_start_Psalms 102:12_reference_end_ _reference_start_Psalms 104:14_reference_end_ _reference_start_Psalms 105:35_reference_end_ _reference_start_Psalms 106:20_reference_end_ _reference_start_Proverbs 19:12_reference_end_ _reference_start_Proverbs 27:25_reference_end_ _reference_start_Isaiah 37:27_reference_end_ _reference_start_Isaiah 42:15_reference_end_ _reference_start_Jeremiah 12:4_reference_end_ _reference_start_Jeremiah 14:6_reference_end_ _reference_start_Amos 7:2_reference_end_ _reference_start_Micah 5:6_reference_end_ _reference_start_Zechariah 10:1_reference_end_ ww^,## grass, leekgrass, leekTransliteration: chatsir _reference_start_Numbers 11:5_reference_end_ _+##igrass, herbgrass, herbTransliteration: 'eseb _reference_start_Genesis 1:11_reference_end_ _reference_start_Genesis 1:12_reference_end_ _reference_start_Genesis 1:29_reference_end_ _reference_start_Genesis 1:30_reference_end_ _reference_start_Genesis 2:5_reference_end_ _reference_start_Genesis 3:18_reference_end_ _reference_start_Genesis 9:3_reference_end_ _reference_start_Exodus 9:22_reference_end_ _reference_start_Exodus 9:25_reference_end_ _reference_start_Exodus 10:12_reference_end_ _reference_start_Exodus 10:15 C~qdWJ=/!xk^QD7*tgZM@3& J I H G F  E  D  C B A% @ ? > = <) ;) :) 9) 8) 7) 6) 5) 4) 3) 2' 1 0  / .  -% , + *% )  (  ' & %  $  # "3 !, ( ( ( ( % #     h g Z % (        &  !     *reference_start_1 Kings 18:5_reference_end_ _reference_start_2 Kings 19:26_reference_end_ _reference_start_Job 8:12_reference_end_ _reference_start_Job 40:15_reference_end_ _reference_start_Psalms 37:2_reference_end_ _reference_start_Psalms 90:5_reference_end_ _reference_start_Psalms 103:15_reference_end_ _reference_start_Psalms 104:14_reference_end_ _reference_start_Psalms 129:6_reference_end_ _reference_start_Psalms 147:8_reference_end_ _reference_start_Proverbs 27:25_reference_end_ _reference_start_Isaiah 15:6_reference_end_ _reference_start_Isaiah 35:7_reference_end_ _reference_start_Isaiah 37:27_reference_end_ _reference_start_Isaiah 40:6_reference_end_ _reference_start_Isaiah 40:7_reference_end_ _reference_start_Isaiah 40:7_reference_end_ _reference_start_Isaiah 40:8_reference_end_ _reference_start_Isaiah 44:4_reference_end_ _reference_start_Isaiah 51:12_reference_end_ w-w2/MhawkhawkTransliteration: nes _reference_start_Leviticus 11:16_reference_end_ _reference_start_Deuteronomy 14:15_reference_end_ _reference_start_Job 39:26_reference_end_ .harehareTransliteration: arnebeth _reference_start_Leviticus 11:6_reference_end_ _reference_start_Deuteronomy 14:7_reference_end_@-99!greenness, green plantgreenness, green plantTransliteration: yereq _reference_start_Genesis 1:30_reference_end_ _reference_start_Genesis 9:3_reference_end_ _reference_start_Exodus 10:15_reference_end_ _reference_start_Numbers 22:4_reference_end_ _reference_start_Deuteronomy 11:10_reference_end_ _reference_start_1 Kings 21:2_reference_end_ _reference_start_2 Kings 19:26_reference_end_ _reference_start_Psalms 37:2_reference_end_ _reference_start_Proverbs 15:17_reference_end_ _reference_start_Isaiah 15:6_reference_end_ _reference_start_Isaiah 37:27_reference_end_ MM/0''#head of grainhead of grainTransliteration: shibbol _reference_start_Genesis 41:5_reference_end_ _reference_start_Genesis 41:6_reference_end_ _reference_start_Genesis 41:7_reference_end_ _reference_start_Genesis 41:7_reference_end_ _reference_start_Genesis 41:22_reference_end_ _reference_start_Genesis 41:23_reference_end_ _reference_start_Genesis 41:24_reference_end_ _reference_start_Genesis 41:24_reference_end_ _reference_start_Genesis 41:26_reference_end_ _reference_start_Genesis 41:27_reference_end_ _reference_start_Ruth 2:2_reference_end_ _reference_start_Job 24:24_reference_end_ _reference_start_Isaiah 17:5_reference_end_ _reference_start_Isaiah 17:5_reference_end_ce_end_ _reference_start_Leviticus 16:20_reference_end_ _reference_start_Leviticus 16:21_reference_end_ _reference_start_Leviticus 16:21_reference_end_ _reference_start_Leviticus 16:22_reference_end_ _reference_start_Leviticus 16:22_reference_end_ _reference_start_Leviticus 16:26_reference_end_ _reference_start_Leviticus 16:27_reference_end_ _reference_start_Leviticus 17:7_reference_end_ _reference_start_Leviticus 23:19_reference_end_ _reference_start_Numbers 7:16_reference_end_ _reference_start_Numbers 7:22_reference_end_ _reference_start_Numbers 7:28_reference_end_ _reference_start_Numbers 7:34_reference_end_ _reference_start_Numbers 7:40_reference_end_ _reference_start_Numbers 7:46_reference_end_ _reference_start_Numbers 7:52_reference_end_ _reference_start_Numbers 7:58_reference_end_ _reference_start_Numbers 7:64_reference_end_ _reference_start_Numbers 7:70_reference_end_ _reference_start_Numbers 7:76_reference_end_ _reference_start_Numbers 7:82_reference_end_ _reference_start_Numbers 7:87_reference_end_ _reference_start_Numbers 15:24_reference_end_ _reference_start_Numbers 28:15_reference_end_ _reference_start_Numbers 28:22_reference_end_ _reference_start_Numbers 28:30_reference_end_ _reference_start_Numbers 29:5_reference_end_ _reference_start_Numbers 29:11_reference_end_ _reference_start_Numbers 29:16_reference_end_ _reference_start_Numbers 29:19_reference_end_ _reference_start_Numbers 29:22_reference_end_ _reference_start_Numbers 29:25_reference_end_ _reference_start_Numbers 29:28_reference_end_ _reference_start_Numbers 29:31_reference_end_ _reference_start_Numbers 29:34_reference_end_ _reference_start_Numbers 29:38_reference_end_ _reference_start_2 Chronicles 11:15_reference_end_ _reference_start_2 Chronicles 29:23_reference_end_ _reference_start_Isaiah 13:21_reference_end_ _reference_start_Isaiah 34:14_reference_end_ _reference_start_Ezekiel 43:22_reference_end_ _reference_start_Ezekiel 43:25_reference_end_ _reference_start_Ezekiel 45:23_reference_end_ _reference_start_Daniel 8:21_reference_end_ o`om27he-goathe-goatTransliteration: tayish _reference_start_Genesis 30:35_reference_end_ _reference_start_Genesis 32:15_reference_end_ _reference_start_2 Chronicles 17:11_reference_end_ _reference_start_Proverbs 30:31_reference_end_1''ehe-goat, buckhe-goat, buckTransliteration: sa'ir _reference_start_Genesis 37:31_reference_end_ _reference_start_Leviticus 4:23_reference_end_ _reference_start_Leviticus 4:24_reference_end_ _reference_start_Leviticus 9:3_reference_end_ _reference_start_Leviticus 9:15_reference_end_ _reference_start_Leviticus 10:16_reference_end_ _reference_start_Leviticus 16:5_reference_end_ _reference_start_Leviticus 16:7_reference_end_ _reference_start_Leviticus 16:8_reference_end_ _reference_start_Leviticus 16:9_reference_end_ _reference_start_Leviticus 16:10_reference_end_ _reference_start_Leviticus 16:15_reference_end_ _reference_start_Leviticus 16:18_referen C~qdWJ=0# zm`SF9,vi\OB5(   X S M G A ; 5 / ) #     ~ } | {  z# y x- w+ v+ u" t  s r  q& p" o n m l k j i h g f e d cW bR aL `F _@ ^: ]4 \. [( Z" Y X W V U T S R Q P O N M L K 7:41_reference_end_ _reference_start_Numbers 7:47_reference_end_ _reference_start_Numbers 7:53_reference_end_ _reference_start_Numbers 7:59_reference_end_ _reference_start_Numbers 7:65_reference_end_ _reference_start_Numbers 7:71_reference_end_ _reference_start_Numbers 7:77_reference_end_ _reference_start_Numbers 7:83_reference_end_ _reference_start_Numbers 7:88_reference_end_ _reference_start_Deuteronomy 32:14_reference_end_ _reference_start_Psalms 50:9_reference_end_ _reference_start_Psalms 50:13_reference_end_ _reference_start_Psalms 66:15_reference_end_ _reference_start_Proverbs 27:26_reference_end_ _reference_start_Isaiah 1:11_reference_end_ _reference_start_Isaiah 14:9_reference_end_ _reference_start_Isaiah 34:6_reference_end_ _reference_start_Jeremiah 50:8_reference_end_ _reference_start_Jeremiah 51:40_reference_end_ _reference_start_Ezekiel 27:21_reference_end_ _reference_start_Ezekiel 34:17_reference_end_ _reference_start_Ezekiel 39:18_reference_end_ _reference_start_Zechariah 10:3_reference_end_ 9t975''3heifer, cow 1heifer, cow 1Transliteration: 'eglah _reference_start_Genesis 15:9_reference_end_ _reference_start_Deuteronomy 21:3_reference_end_ _reference_start_Deuteronomy 21:4_reference_end_ _reference_start_Deuteronomy 21:6_reference_end_ _reference_start_Judges 14:18_reference_end_ _reference_start_1 Samuel 16:2_reference_end_ _reference_start_Isaiah 7:21_reference_end_ _reference_start_Jeremiah 46:20_reference_end_ _reference_start_Jeremiah 50:11_reference_end_ _reference_start_Hosea 10:5_reference_end_ _reference_start_Hosea 10:11_reference_end_4## heifer, cowheifer, cow^3%%he-goat, ramhe-goat, ramTransliteration: 'atud _reference_start_Genesis 31:10_reference_end_ _reference_start_Genesis 31:12_reference_end_ _reference_start_Numbers 7:17_reference_end_ _reference_start_Numbers 7:23_reference_end_ _reference_start_Numbers 7:29_reference_end_ _reference_start_Numbers 7:35_reference_end_ _reference_start_Numbers C~qdWJ=0# zm`SF9,vi\OB5( P O N M L  K1 J/ I H G F1 E D  C( B A  @ ? > = <  ; :  9  8  7  6 5 4 3 2 1) 0) /) .) -) ,) +) *) )) () ') &  % $  #2 ". !        &  ' "  3( 2 "    B 2 2 rt_Genesis 41:3_reference_end_ _reference_start_Genesis 41:3_reference_end_ _reference_start_Genesis 41:4_reference_end_ _reference_start_Genesis 41:4_reference_end_ _reference_start_Genesis 41:18_reference_end_ _reference_start_Genesis 41:19_reference_end_ _reference_start_Genesis 41:20_reference_end_ _reference_start_Genesis 41:20_reference_end_ _reference_start_Genesis 41:26_reference_end_ _reference_start_Genesis 41:27_reference_end_ _reference_start_Numbers 19:2_reference_end_ _reference_start_Numbers 19:5_reference_end_ _reference_start_Numbers 19:6_reference_end_ _reference_start_Numbers 19:9_reference_end_ _reference_start_Numbers 19:10_reference_end_ _reference_start_1 Samuel 6:7_reference_end_ _reference_start_1 Samuel 6:10_reference_end_ _reference_start_1 Samuel 6:12_reference_end_ _reference_start_1 Samuel 6:14_reference_end_ _reference_start_Job 21:10_reference_end_ _reference_start_Isaiah 11:7_reference_end_ _reference_start_Hosea 4:16_reference_end_ _reference_start_Amos 4:1_reference_end_ T)-k;%%horned viperhorned viperTransliteration: shephiphon _reference_start_Genesis 49:17_reference_end_:hoopoehoopoeTransliteration: dukipha _reference_start_Leviticus 11:19_reference_end_ _reference_start_Deuteronomy 14:18_reference_end_e9%%hippopotamushippopotamusTransliteration: behemoth _reference_start_Job 40:15_reference_end_8heronheronTransliteration: anaphah _reference_start_Leviticus 11:19_reference_end_ _reference_start_Deuteronomy 14:18_reference_end_7hennahennaTransliteration: kopher _reference_start_Song of Solomon 1:14_reference_end_ _reference_start_Song of Solomon 4:13_reference_end_ 6''heifer, cow 2heifer, cow 2Transliteration: parah _reference_start_Genesis 32:16_reference_end_ _reference_start_Genesis 41:2_reference_end_ _reference_sta tC%t-@CibexibexTransliteration: ya'el _reference_start_1 Samuel 24:3_reference_end_ _reference_start_Job 39:1_reference_end_ _reference_start_Psalms 104:18_reference_end_i?7hyraxhyraxTransliteration: shaphan _reference_start_Leviticus 11:5_reference_end_ _reference_start_Deuteronomy 14:7_reference_end_ _reference_start_Psalms 104:18_reference_end_ _reference_start_Proverbs 30:26_reference_end_>uhouse flyhouse flyTransliteration: zebub _reference_start_Ecclesiastes 10:1_reference_end_ _reference_start_Isaiah 7:18_reference_end_}=_horsehorseTransliteration: sus _reference_start_Genesis 47:17_reference_end_ _reference_start_Genesis 49:17_reference_end_ _reference_start9<ShornethornetTransliteration: tsir'ah _reference_start_Exodus 23:28_reference_end_ _reference_start_Deuteronomy 7:20_reference_end_ _reference_start_Joshua 24:12_reference_end__Exodus 9:3_reference_end_ _reference_start_Exodus 14:9_reference_end_ _reference_start_Exodus 14:23_reference_end_ _reference_start_Exodus 15:1_reference_end_ _reference_start_Exodus 15:19_reference_end_ _reference_start_Exodus 15:21_reference_end_ _reference_start_Deuteronomy 11:4_reference_end_ _reference_start_Deuteronomy 17:16_reference_end_ _reference_start_Deuteronomy 17:16_reference_end_ _reference_start_Deuteronomy 20:1_reference_end_ _reference_start_Joshua 11:4_reference_end_ _reference_start_Joshua 11:6_reference_end_ _reference_start_Joshua 11:9_reference_end_ _reference_start_Judges 5:22_reference_end_ _reference_start_2 Samuel 15:1_reference_end_ _reference_start_1 Kings 5:6_reference_end_ _reference_start_1 Kings 5:8_reference_end_ _reference_start_1 Kings 10:25_reference_end_ _reference_start_1 Kings 10:28_reference_end_ _reference_start_1 Kings 10:29_reference_end_ _reference_start_1 Kings 18:5_reference_end_ _reference_start_1 Kings 20:1_reference_end_ _reference_start_1 Kings 20:20_reference_end_ _reference_start_1 Kings 20:21_reference_end_ _reference_start_1 Kings 20:25_reference_end_ _reference_start_1 Kings 20:25_reference_end_ _reference_start_1 Kings 22:4_reference_end_ _reference_start_1 Kings 22:4_reference_end_ _reference_start_2 Kings 2:11_reference_end_ _reference_start_2 Kings 3:7_reference_end_ _reference_start_2 Kings 3:7_reference_end_ _reference_start_2 Kings 5:9_reference_end_ _reference_start_2 Kings 6:14_reference_end_ _reference_start_2 Kings 6:15_reference_end_ _reference_start_2 Kings 6:17_reference_end_ _reference_start_2 Kings 7:6_reference_end_ _reference_start_2 Kings 7:7_reference_end_ _reference_start_2 Kings 7:10_reference_end_ _reference_start_2 Kings 7:13_reference_end_ _reference_start_2 Kings 7:14_reference_end_ _reference_start_2 Kings 9:18_reference_end_ _reference_start_2 Kings 9:19_reference_end_ _reference_start_2 Kings 9:33_reference_end_ _reference_start_2 Kings 10:2_reference_end_ _reference_start_2 Kings 11:16_reference_end_ _reference_start_2 Kings 14:20_reference_end_ _reference_start_2 Kings 18:23_reference_end_ _reference_start_2 Kings 23:11_reference_end_ _reference_start_2 Chronicles 1:16_reference_end_ _reference_start_2 Chronicles 1:17_reference_end_ _reference_start_2 Chronicles 9:24_reference_end_ _reference_start_2 Chronicles 9:25_reference_end_ _reference_start_2 Chronicles 9:28_reference_end_ _reference_start_2 Chronicles 23:15_reference_end_ _reference_start_2 Chronicles 25:28_reference_end_ _reference_start_Ezra 2:66_reference_end_ _reference_start_Nehemiah 3:28_reference_end_ _reference_start_Esther 6:8_reference_end_ _reference_start_Esther 6:9_reference_end_ _reference_start_Esther 6:9_reference_end_ _reference_start_Esther 6:10_reference_end_ _reference_start_Esther 6:11_reference_end_ _reference_start_Esther 8:10_reference_end_ _reference_start_Job 39:18_reference_end_ _reference_start_Job 39:19_reference_end_ _reference_start_Psalms 20:8_reference_end_ _reference_start_Psalms 32:9_reference_end_ _reference_start_Psalms 33:17_reference_end_ _reference_start_Psalms 76:7_reference_end_ _reference_start_Psalms 147:10_reference_end_ _reference_start_Proverbs 21:31_reference_end_ _reference_start_Proverbs 26:3_reference_end_ _reference_start_Ecclesiastes 10:7_reference_end_ _reference_start_Isaiah 2:7_reference_end_ _reference_start_Isaiah 5:28_reference_end_ _reference_start_Isaiah 30:16_reference_end_ _reference_start_Isaiah 31:1_reference_end_ _reference_start_Isaiah 31:3_reference_end_ _reference_start_Isaiah 36:8_reference_end_ _reference_start_Isaiah 43:17_reference_end_ _reference_start_Isaiah 63:13_reference_end_ _reference_start_Isaiah 66:20_reference_end_ _reference_start_Jeremiah 4:13_reference_end_ _reference_start_Jeremiah 5:8_reference_end_ _reference_start_Jeremiah 6:23_reference_end_ _reference_start_Jeremiah 8:6_reference_end_ _reference_start_Jeremiah 8:16_reference_end_ _reference_start_Jeremiah 12:5_reference_end_ _reference_start_Jeremiah 17:25_reference_end_ _reference_start_Jeremiah 22:4_reference_end_ _reference_start_Jeremiah 31:40_reference_end_ _reference_start_Jeremiah 46:4_reference_end_ _reference_start_Jeremiah 46:9_reference_end_ _reference_start_Jeremiah 50:37_reference_end_ _reference_start_Jeremiah 50:42_reference_end_ _reference_start_Jeremiah 51:21_reference_end_ _reference_start_Jeremiah 51:27_reference_end_ _reference_start_Ezekiel 17:15_reference_end_ _reference_start_Ezekiel 23:6_reference_end_ _reference_start_Ezekiel 23:12_reference_end_ _reference_start_Ezekiel 23:20_reference_end_ _reference_start_Ezekiel 23:23_reference_end_ _reference_start_Ezekiel 26:7_reference_end_ _reference_start_Ezekiel 26:10_reference_end_ _reference_start_Ezekiel 26:11_reference_end_ _reference_start_Ezekiel 27:14_reference_end_ _reference_start_Ezekiel 38:4_reference_end_ _reference_start_Ezekiel 38:15_reference_end_ _reference_start_Ezekiel 39:20_reference_end_ _reference_start_Hosea 1:7_reference_end_ _reference_start_Hosea 14:4_reference_end_ _reference_start_Joel 2:4_reference_end_ _reference_start_Amos 2:15_reference_end_ _reference_start_Amos 4:10_reference_end_ _reference_start_Amos 6:12_reference_end_ _reference_start_Micah 5:9_reference_end_ _reference_start_Nahum 3:2_reference_end_ _reference_start_Habakkuk 1:8_reference_end_ _reference_start_Habakkuk 3:8_reference_end_ _reference_start_Habakkuk 3:15_reference_end_ _reference_start_Haggai 2:22_reference_end_ _reference_start_Zechariah 1:8_reference_end_ _reference_start_Zechariah 1:8_reference_end_ _reference_start_Zechariah 6:2_reference_end_ _reference_start_Zechariah 6:2_reference_end_ _reference_start_Zechariah 6:3_reference_end_ _reference_start_Zechariah 6:3_reference_end_ _reference_start_Zechariah 6:6_reference_end_ _reference_start_Zechariah 9:10_reference_end_ _reference_start_Zechariah 10:3_reference_end_ _reference_start_Zechariah 10:5_reference_end_ _reference_start_Zechariah 12:4_reference_end_ _reference_start_Zechariah 12:4_reference_end_ _reference_start_Zechariah 14:15_reference_end_ _reference_start_Zechariah 14:20_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5(    L !   ' '        B       ~  } | {  z  y  x  w  v ! u  t  s  r  q  p  o  n  m  l  k  j  i  h  g  f  e  d  c  b  a  `  _  ^  ]  \  [  Z  Y X W  V  U T S R  Q C~qdWJ=0# zm`SF9,vi\OB5( V U  T S  R& Q& P&  O&  N&  M&  L& K& J& I& H& G& F& E& D% C# B# A# @" ?! > = < ; : 9 8' 7& 6& 5 4 3 2 1 0 / . - ,3 +3 *2* )2% (. '. &( % $ #  " !    B ? + $        C~qdWJ=0# zm`SF9,vi\OB5( '  3( "  A %          + %     $ " f    f      ~  }  | { z  y  x w v" u t& s& r& q p o&  n" m l k j< i7 h) g% f eh d c b  a ` " _  ^  ]  \  [h Z' Y  X Wh CC9AOjuniperjuniperTransliteration: berosh _reference_start_2 Samuel 6:5_reference_end_ _reference_start_1 Kings 5:22_reference_end_ _reference_start_1 Kings 5:24_reference_end_ _reference_start_1 Kings 6:15_reference_end_ _reference_start_1 Kings 6:34_reference_end_ _reference_start_1 Kings 9:11_reference_end_ _reference_start_2 Kings 19:23_reference_end_ _reference_start_2 Chronicles 2:7_reference_end_ _reference_start_2 Chronicles 3:5_reference_end_ _reference_start_Psalms 104:17_reference_end_ _reference_start_Isaiah 14:8_reference_end_ _reference_start_Isaiah 37:24_reference_end_ _reference_start_Isaiah 41:19_reference_end_ _reference_start_Isaiah 55:13_reference_end_ _reference_start_Isaiah 60:13_reference_end_ _reference_start_Ezekiel 27:5_reference_end_ _reference_start_Ezekiel 31:8_reference_end_ _reference_start_Hosea 14:9_reference_end_ _reference_start_Nahum 2:4_reference_end_ _reference_start_Zechariah 11:2_reference_end_ GD''Skind of owl 1kind of owl 1Transliteration: kos _reference_start_Leviticus 11:17_reference_end_ _reference_start_Deuteronomy 14:16_reference_end_ _reference_start_Psalms 102:7_reference_end_C## kind of owlkind of owl~BikidkidTransliteration: gediy _reference_start_Genesis 27:9_reference_end_ _reference_start_Genesis 27:16_reference_end_ _reference_start_Genesis 38:17_reference_end_ _reference_start_Genesis 38:20_reference_end_ _reference_start_Genesis 38:23_reference_end_ _reference_start_Exodus 23:19_reference_end_ _reference_start_Exodus 34:26_reference_end_ _reference_start_Deuteronomy 14:21_reference_end_ _reference_start_Judges 6:19_reference_end_ _reference_start_Judges 13:15_reference_end_ _reference_start_Judges 13:19_reference_end_ _reference_start_Judges 14:6_reference_end_ _reference_start_Judges 15:1_reference_end_ _reference_start_1 Samuel 10:3_reference_end_ _reference_start_1 Samuel 16:20_reference_end_ _reference_start_Isaiah 11:6_reference_end_ !.I5lamb (1)lamb (1)Transliteration: 'immar _reference_start_Ezra 6:9_reference_end_ _reference_start_Ezra 6:17_reference_end_ _reference_start_Ezra 7:17_reference_end_H lamblambGmladanumladanumTransliteration: lot _reference_start_Genesis 37:25_reference_end_ _reference_start_Genesis 43:11_reference_end_3FOkitekiteTransliteration: 'ayah _reference_start_Leviticus 11:14_reference_end_ _reference_start_Deuteronomy 14:13_reference_end_ _reference_start_Job 28:7_reference_end_$E'' kind of owl 2kind of owl 2Transliteration: qa'a _reference_start_Leviticus 11:18_reference_end_ _reference_start_Deuteronomy 14:17_reference_end_ _reference_start_Psalms 102:7_reference_end_ _reference_start_Isaiah 34:11_reference_end_ _reference_start_Zephaniah 2:14_reference_end_ %L## lamb, sheeplamb, sheep3KGlamb 3lamb 3Transliteration: taleh _reference_start_1 Samuel 7:9_reference_end_ _reference_start_Isaiah 40:11_reference_end_ _reference_start_Isaiah 65:25_reference_end_ Jlamb (2)lamb (2)Transliteration: kar _reference_start_Deuteronomy 32:14_reference_end_ _reference_start_1 Samuel 15:9_reference_end_ _reference_start_2 Kings 3:4_reference_end_ _reference_start_Psalms 37:20_reference_end_ _reference_start_Psalms 65:14_reference_end_ _reference_start_Isaiah 16:1_reference_end_ _reference_start_Isaiah 34:6_reference_end_ _reference_start_Jeremiah 51:40_reference_end_ _reference_start_Ezekiel 27:21_reference_end_ _reference_start_Ezekiel 39:18_reference_end_ _reference_start_Amos 6:4_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5( \ [ Z YX XW WS VQ UM TK SG RE QA P? O; N9 M5 L3 K/ J- I) H' G# F! E D C B A @ ? > = < ; : 9 8 7 6 5 4 3  2  1 0) /( .' -' ,& +  * ) ( ' & % $# # " !( # !  A (    ]]M++{lamb, sheep (1)lamb, sheep (1)Transliteration: kesev _reference_start_Genesis 30:32_reference_end_ _reference_start_Genesis 30:33_reference_end_ _reference_start_Genesis 30:35_reference_end_ _reference_start_Genesis 30:40_reference_end_ _reference_start_Leviticus 1:10_reference_end_ _reference_start_Leviticus 3:7_reference_end_ _reference_start_Leviticus 4:35_reference_end_ _reference_start_Leviticus 7:23_reference_end_ _reference_start_Leviticus 17:3_reference_end_ _reference_start_Leviticus 22:19_reference_end_ _reference_start_Leviticus 22:27_reference_end_ _reference_start_Numbers 18:17_reference_end_ _reference_start_Deuteronomy 14:4_reference_end_:19_reference_end_ _reference_start_Leviticus 23:20_reference_end_ _reference_start_Numbers 6:12_reference_end_ _reference_start_Numbers 6:14_reference_end_ _reference_start_Numbers 7:15_reference_end_ _reference_start_Numbers 7:17_reference_end_ _reference_start_Numbers 7:21_reference_end_ _reference_start_Numbers 7:23_reference_end_ _reference_start_Numbers 7:27_reference_end_ _reference_start_Numbers 7:29_reference_end_ _reference_start_Numbers 7:33_reference_end_ _reference_start_Numbers 7:35_reference_end_ _reference_start_Numbers 7:39_reference_end_ _reference_start_Numbers 7:41_reference_end_ _reference_start_Numbers 7:45_reference_end_ _reference_start_Numbers 7:47_reference_end_ _reference_start_Numbers 7:51_reference_end_ _reference_start_Numbers 7:53_reference_end_ _reference_start_Numbers 7:57_reference_end_ _reference_start_Numbers 7:59_reference_end_ _reference_start_Numbers 7:63_reference_end_ _reference_start_Numbers 7:65_reference_end_ _reference_start_Numbers 7:69_reference_end_ _reference_start_Numbers 7:71_reference_end_ _reference_start_Numbers 7:75_reference_end_ _reference_start_Numbers 7:77_reference_end_ _reference_start_Numbers 7:81_reference_end_ _reference_start_Numbers 7:83_reference_end_ _reference_start_Numbers 7:87_reference_end_ _reference_start_Numbers 7:88_reference_end_ _reference_start_Numbers 15:5_reference_end_ _reference_start_Numbers 15:11_reference_end_ _reference_start_Numbers 28:3_reference_end_ _reference_start_Numbers 28:4_reference_end_ _reference_start_Numbers 28:4_reference_end_ _reference_start_Numbers 28:7_reference_end_ _reference_start_Numbers 28:8_reference_end_ _reference_start_Numbers 28:9_reference_end_ _reference_start_Numbers 28:11_reference_end_ _reference_start_Numbers 28:13_reference_end_ _reference_start_Numbers 28:14_reference_end_ _reference_start_Numbers 28:19_reference_end_ _reference_start_Numbers 28:21_reference_end_ _reference_start_Numbers 28:21_reference_end_ _reference_start_Numbers 28:27_reference_end_ _reference_start_Numbers 28:29_reference_end_ _reference_start_Numbers 28:29_reference_end_ _reference_start_Numbers 29:2_reference_end_ _reference_start_Numbers 29:4_reference_end_ _reference_start_Numbers 29:4_reference_end_ _reference_start_Numbers 29:8_reference_end_ _reference_start_Numbers 29:10_reference_end_ _reference_start_Numbers 29:10_reference_end_ _reference_start_Numbers 29:13_reference_end_ _reference_start_Numbers 29:15_reference_end_ _reference_start_Numbers 29:15_reference_end_ _reference_start_Numbers 29:17_reference_end_ _reference_start_Numbers 29:18_reference_end_ _reference_start_Numbers 29:20_reference_end_ _reference_start_Numbers 29:21_reference_end_ _reference_start_Numbers 29:23_reference_end_ _reference_start_Numbers 29:24_reference_end_ _reference_start_Numbers 29:26_reference_end_ _reference_start_Numbers 29:27_reference_end_ _reference_start_Numbers 29:29_reference_end_ _reference_start_Numbers 29:30_reference_end_ _reference_start_Numbers 29:32_reference_end_ _reference_start_Numbers 29:33_reference_end_ _reference_start_Numbers 29:36_reference_end_ _reference_start_Numbers 29:37_reference_end_ _reference_start_1 Chronicles 29:21_reference_end_ _reference_start_2 Chronicles 29:21_reference_end_ _reference_start_2 Chronicles 29:22_reference_end_ _reference_start_2 Chronicles 29:32_reference_end_ _reference_start_2 Chronicles 35:7_reference_end_ _reference_start_Ezra 8:35_reference_end_ _reference_start_Job 31:20_reference_end_ _reference_start_Proverbs 27:26_reference_end_ _reference_start_Isaiah 1:11_reference_end_ _reference_start_Isaiah 5:17_reference_end_ _reference_start_Isaiah 11:6_reference_end_ _reference_start_Jeremiah 11:19_reference_end_ _reference_start_Ezekiel 46:4_reference_end_ _reference_start_Ezekiel 46:5_reference_end_ _reference_start_Ezekiel 46:6_reference_end_ _reference_start_Ezekiel 46:7_reference_end_ _reference_start_Ezekiel 46:11_reference_end_ _reference_start_Ezekiel 46:13_reference_end_ _reference_start_Ezekiel 46:15_reference_end_ _reference_start_Hosea 4:16_reference_end_ eN++lamb, sheep (2)lamb, sheep (2)Transliteration: keves _reference_start_Exodus 12:5_reference_end_ _reference_start_Exodus 29:38_reference_end_ _reference_start_Exodus 29:39_reference_end_ _reference_start_Exodus 29:39_reference_end_ _reference_start_Exodus 29:40_reference_end_ _reference_start_Exodus 29:41_reference_end_ _reference_start_Leviticus 4:32_reference_end_ _reference_start_Leviticus 9:3_reference_end_ _reference_start_Leviticus 12:6_reference_end_ _reference_start_Leviticus 14:10_reference_end_ _reference_start_Leviticus 14:12_reference_end_ _reference_start_Leviticus 14:13_reference_end_ _reference_start_Leviticus 14:21_reference_end_ _reference_start_Leviticus 14:24_reference_end_ _reference_start_Leviticus 14:25_reference_end_ _reference_start_Leviticus 23:12_reference_end_ _reference_start_Leviticus 23:18_reference_end_ _reference_start_Leviticus 23 C~qdWJ=0# zm`SF9,vi\OB5(          "  < )  . . . . . . .         # #      % $ ! ~ } | { z y x w v u t s r q p o n m l k j i h g f e d c b a ` _ ^ ] Q XR11aleopard or cheetahleopard or cheetahTransliteration: namer _reference_start_Song of Solomon 4:8_reference_end_ _reference_start_Isaiah 11:6_reference_end_ _reference_start_Jeremiah 5:6_reference_end_ _reference_start_Jeremiah 13:23_reference_end_ _reference_start_Hosea 13:7_reference_end_ _reference_start_Habakkuk 1:8_reference_end_fQ-lentillentilTransliteration: adashah _reference_start_Genesis 25:34_reference_end_ _reference_start_2 Samuel 17:28_reference_end_ _reference_start_2 Samuel 23:11_reference_end_ _reference_start_Ezekiel 4:9_reference_end_ZPleechleechTransliteration: aluqah _reference_start_Proverbs 30:15_reference_end_+O==olaurestinus = nannyberrylaurestinus = nannyberryTransliteration: tidhar _reference_start_Isaiah 41:19_reference_end_ _reference_start_Isaiah 60:13_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5( b  a  `  _  ^  ]  \  [  Z Y X W! V1 U1 T$ S" R Q P O N M3& L2 K& J I H G F  E  D  C  B  A  @  ? $ >  =  <  ;  : % 9 $ 8 " 7 6 5 4 3 2 1 0 / . - , + *P )E (< '- & %  $  #  "# !    T lionlion_S'lilylilyTransliteration: shushan _reference_start_1 Kings 7:19_reference_end_ _reference_start_1 Kings 7:22_reference_end_ _reference_start_1 Kings 7:26_reference_end_ _reference_start_2 Chronicles 4:5_reference_end_ _reference_start_Psalms 45:1_reference_end_ _reference_start_Psalms 60:1_reference_end_ _reference_start_Psalms 69:1_reference_end_ _reference_start_Psalms 80:1_reference_end_ _reference_start_Song of Solomon 2:1_reference_end_ _reference_start_Song of Solomon 2:2_reference_end_ _reference_start_Song of Solomon 2:16_reference_end_ _reference_start_Song of Solomon 4:5_reference_end_ _reference_start_Song of Solomon 5:13_reference_end_ _reference_start_Song of Solomon 6:2_reference_end_ _reference_start_Song of Solomon 6:3_reference_end_ _reference_start_Song of Solomon 7:3_reference_end_ _reference_start_Hosea 14:6_reference_end__reference_start_1 Kings 7:36_reference_end_ _reference_start_1 Kings 10:19_reference_end_ _reference_start_1 Kings 10:20_reference_end_ _reference_start_2 Kings 17:25_reference_end_ _reference_start_2 Kings 17:26_reference_end_ _reference_start_1 Chronicles 11:22_reference_end_ _reference_start_2 Chronicles 9:18_reference_end_ _reference_start_2 Chronicles 9:19_reference_end_ _reference_start_Proverbs 22:13_reference_end_ _reference_start_Proverbs 26:13_reference_end_ _reference_start_Proverbs 28:15_reference_end_ _reference_start_Song of Solomon 4:8_reference_end_ _reference_start_Isaiah 38:13_reference_end_ _reference_start_Jeremiah 50:17_reference_end_ _reference_start_Jeremiah 51:38_reference_end_ _reference_start_Ezekiel 19:2_reference_end_ _reference_start_Ezekiel 19:6_reference_end_ _reference_start_Ezekiel 22:25_reference_end_ _reference_start_Amos 3:12_reference_end_ _reference_start_Amos 5:19_reference_end_ _reference_start_Nahum 2:12_reference_end_ _reference_start_Zephaniah 3:3_reference_end_  U!lion 1lion 1Transliteration: 'ari _reference_start_Numbers 23:24_reference_end_ _reference_start_Numbers 24:9_reference_end_ _reference_start_Judges 14:5_reference_end_ _reference_start_Judges 14:18_reference_end_ _reference_start_1 Samuel 17:34_reference_end_ _reference_start_1 Samuel 17:36_reference_end_ _reference_start_1 Samuel 17:37_reference_end_ _reference_start_2 Samuel 1:23_reference_end_ _reference_start_2 Samuel 23:20_reference_end_ _reference_start_1 Kings 7:29_reference_end_ _reference_start_1 Kings 7:29_reference_end_ tart_1 Kings 13:25_reference_end_ _reference_start_1 Kings 13:26_reference_end_ _reference_start_1 Kings 13:28_reference_end_ _reference_start_1 Kings 13:28_reference_end_ _reference_start_1 Kings 20:36_reference_end_ _reference_start_1 Kings 20:36_reference_end_ _reference_start_1 Chronicles 12:9_reference_end_ _reference_start_Job 4:10_reference_end_ _reference_start_Psalms 7:3_reference_end_ _reference_start_Psalms 10:9_reference_end_ _reference_start_Psalms 17:12_reference_end_ _reference_start_Psalms 22:14_reference_end_ _reference_start_Psalms 22:22_reference_end_ _reference_start_Ecclesiastes 9:4_reference_end_ _reference_start_Isaiah 11:7_reference_end_ _reference_start_Isaiah 15:9_reference_end_ _reference_start_Isaiah 21:8_reference_end_ _reference_start_Isaiah 31:4_reference_end_ _reference_start_Isaiah 35:9_reference_end_ _reference_start_Isaiah 65:25_reference_end_ _reference_start_Jeremiah 2:30_reference_end_ _reference_start_Jeremiah 4:7_reference_end_ _reference_start_Jeremiah 5:6_reference_end_ _reference_start_Jeremiah 12:8_reference_end_ _reference_start_Jeremiah 49:19_reference_end_ _reference_start_Jeremiah 50:44_reference_end_ _reference_start_Lamentations 3:10_reference_end_ _reference_start_Ezekiel 1:10_reference_end_ _reference_start_Ezekiel 10:14_reference_end_ _reference_start_Daniel 6:8_reference_end_ _reference_start_Daniel 6:13_reference_end_ _reference_start_Daniel 6:17_reference_end_ _reference_start_Daniel 6:20_reference_end_ _reference_start_Daniel 6:21_reference_end_ _reference_start_Daniel 6:23_reference_end_ _reference_start_Daniel 6:25_reference_end_ _reference_start_Daniel 6:25_reference_end_ _reference_start_Daniel 6:28_reference_end_ _reference_start_Daniel 7:4_reference_end_ _reference_start_Hosea 11:10_reference_end_ _reference_start_Joel 1:6_reference_end_ _reference_start_Amos 3:4_reference_end_ _reference_start_Amos 3:8_reference_end_ _reference_start_Micah 5:7_reference_end_ _reference_start_Nahum 2:12_reference_end_ _reference_start_Nahum 2:13_reference_end_ |VYlion 2lion 2Transliteration: 'aryeh _reference_start_Genesis 49:9_reference_end_ _reference_start_Genesis 49:9_reference_end_ _reference_start_Deuteronomy 33:22_reference_end_ _reference_start_Judges 14:8_reference_end_ _reference_start_Judges 14:8_reference_end_ _reference_start_Judges 14:9_reference_end_ _reference_start_2 Samuel 17:10_reference_end_ _reference_start_2 Samuel 23:20_reference_end_ _reference_start_1 Kings 13:24_reference_end_ _reference_start_1 Kings 13:24_reference_end_ _reference_s C~qdWJ=0# zm`SF9,vi\OB5( % $  # " ![        " "       9 &'  !   1 " " !            ~ } | {  z y x2, w1 v  u t s rA q# p o n m  l  k j i h g f e d $ c $ g1XClion 4lion 4Transliteration: layish _reference_start_Job 4:11_reference_end_ _reference_start_Proverbs 30:30_reference_end_ _reference_start_Isaiah 30:6_reference_end_W lion 3lion 3Transliteration: labiy' _reference_start_Genesis 49:9_reference_end_ _reference_start_Numbers 23:24_reference_end_ _reference_start_Numbers 24:9_reference_end_ _reference_start_Deuteronomy 33:20_reference_end_ _reference_start_Job 4:11_reference_end_ _reference_start_Job 38:39_reference_end_ _reference_start_Psalms 57:5_reference_end_ _reference_start_Isaiah 5:29_reference_end_ _reference_start_Isaiah 30:6_reference_end_ _reference_start_Ezekiel 19:2_reference_end_ _reference_start_Hosea 13:8_reference_end_ _reference_start_Joel 1:6_reference_end_ _reference_start_Nahum 2:12_reference_end_ _reference_start_Nahum 2:13_reference_end_ jV[ maggotmaggotTransliteration: rimmah _reference_start_Exodus 16:24_reference_end_ _reference_start_Job 7:5_reference_end_ _reference_start_Job 17:14_reference_end_ _reference_start_Job 21:26_reference_end_ _reference_start_Job 24:20_reference_end_ _reference_start_Job 25:6_reference_end_ _reference_start_Isaiah 14:11_reference_end_2ZIlouselouseTransliteration: ken _reference_start_Exodus 8:12_reference_end_ _reference_start_Exodus 8:13_reference_end_ _reference_start_Exodus 8:13_reference_end_ _reference_start_Exodus 8:14_reference_end_ _reference_start_Exodus 8:14_reference_end_ _reference_start_Psalms 105:31_reference_end_\Ylion 5lion 5Transliteration: shachal _reference_start_Job 4:10_reference_end_ _reference_start_Job 10:16_reference_end_ _reference_start_Job 28:8_reference_end_ _reference_start_Psalms 91:13_reference_end_ _reference_start_Proverbs 26:13_reference_end_ _reference_start_Hosea 5:14_reference_end_ _reference_start_Hosea 13:7_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5( h g f  e d c b a ` _ ^ ]- \' [" Z Y X W" V U T S R Q P! O N M  L K1 J/ I- H, G, F+ E+ D* C* B$ A" @  ?+ ># = < ;  :& 9 8 7 6  5  4  31 2  1 0 / . - , + *i ) ( ' & d:dX^mallowmallowTransliteration: chalamuth _reference_start_Job 6:6_reference_end_c]##male donkeymale donkeyTransliteration: chamor _reference_start_Genesis 12:16_reference_end_ _reference_start_Genesis 22:3_reference_end_ _reference_start_Genesis 22:5_reference_end_ _reference_start_Genesis 24:35_reference_end_ _reference_start_Genesis 30:43_reference_end_ _reference_start_Genesis 32:6_reference_end_ _reference_start_Genesis 34:28_reference_e΃B\]male assmale assTransliteration: 'ayir _reference_start_Genesis 32:16_reference_end_ _reference_start_Genesis 49:11_reference_end_ _reference_start_Judges 10:4_reference_end_ _reference_start_Judges 10:4_reference_end_ _reference_start_Judges 12:14_reference_end_ _reference_start_Job 11:12_reference_end_ _reference_start_Isaiah 30:6_reference_end_ _reference_start_Isaiah 30:24_reference_end_ _reference_start_Zechariah 9:9_reference_end_nd_ _reference_start_Genesis 36:24_reference_end_ _reference_start_Genesis 42:26_reference_end_ _reference_start_Genesis 42:27_reference_end_ _reference_start_Genesis 43:18_reference_end_ _reference_start_Genesis 43:24_reference_end_ _reference_start_Genesis 44:3_reference_end_ _reference_start_Genesis 44:13_reference_end_ _reference_start_Genesis 45:23_reference_end_ _reference_start_Genesis 47:17_reference_end_ _reference_start_Genesis 49:14_reference_end_ _reference_start_Exodus 4:20_reference_end_ _reference_start_Exodus 9:3_reference_end_ _reference_start_Exodus 13:13_reference_end_ _reference_start_Exodus 20:17_reference_end_ _reference_start_Exodus 21:33_reference_end_ _reference_start_Exodus 22:3_reference_end_ _reference_start_Exodus 22:8_reference_end_ _reference_start_Exodus 22:9_reference_end_ _reference_start_Exodus 23:4_reference_end_ _reference_start_Exodus 23:5_reference_end_ _reference_start_Exodus 23:12_reference_end_ _reference_start_Exodus 34:20_reference_end_ _reference_start_Numbers 16:15_reference_end_ _reference_start_Numbers 31:28_reference_end_ _reference_start_Numbers 31:30_reference_end_ _reference_start_Numbers 31:34_reference_end_ _reference_start_Numbers 31:39_reference_end_ _reference_start_Numbers 31:45_reference_end_ _reference_start_Deuteronomy 5:14_reference_end_ _reference_start_Deuteronomy 5:21_reference_end_ _reference_start_Deuteronomy 22:3_reference_end_ _reference_start_Deuteronomy 22:4_reference_end_ _reference_start_Deuteronomy 22:10_reference_end_ _reference_start_Deuteronomy 28:31_reference_end_ _reference_start_Joshua 6:21_reference_end_ _reference_start_Joshua 7:24_reference_end_ _reference_start_Joshua 9:4_reference_end_ _reference_start_Joshua 15:18_reference_end_ _reference_start_Judges 1:14_reference_end_ _reference_start_Judges 6:4_reference_end_ _reference_start_Judges 15:15_reference_end_ _reference_start_Judges 15:16_reference_end_ _reference_start_Judges 15:16_reference_end_ _reference_start_Judges 19:3_reference_end_ _reference_start_Judges 19:10_reference_end_ _reference_start_Judges 19:19_reference_end_ _reference_start_Judges 19:21_reference_end_ _reference_start_Judges 19:28_reference_end_ _reference_start_1 Samuel 8:16_reference_end_ _reference_start_1 Samuel 12:3_reference_end_ _reference_start_1 Samuel 15:3_reference_end_ _reference_start_1 Samuel 16:20_reference_end_ _reference_start_1 Samuel 22:19_reference_end_ _reference_start_1 Samuel 25:18_reference_end_ _reference_start_1 Samuel 25:20_reference_end_ _reference_start_1 Samuel 25:23_reference_end_ _reference_start_1 Samuel 25:42_reference_end_ _reference_start_1 Samuel 27:9_reference_end_ _reference_start_2 Samuel 16:1_reference_end_ _reference_start_2 Samuel 16:2_reference_end_ _reference_start_2 Samuel 17:23_reference_end_ _reference_start_2 Samuel 19:27_reference_end_ _reference_start_1 Kings 2:40_reference_end_ _reference_start_1 Kings 13:13_reference_end_ _reference_start_1 Kings 13:13_reference_end_ _reference_start_1 Kings 13:23_reference_end_ _reference_start_1 Kings 13:24_reference_end_ _reference_start_1 Kings 13:27_reference_end_ _reference_start_1 Kings 13:28_reference_end_ _reference_start_1 Kings 13:28_reference_end_ _reference_start_1 Kings 13:29_reference_end_ _reference_start_2 Kings 6:25_reference_end_ _reference_start_2 Kings 7:7_reference_end_ _reference_start_2 Kings 7:10_reference_end_ _reference_start_1 Chronicles 5:21_reference_end_ _reference_start_1 Chronicles 12:41_reference_end_ _reference_start_2 Chronicles 28:15_reference_end_ _reference_start_Ezra 2:67_reference_end_ _reference_start_Nehemiah 7:68_reference_end_ _reference_start_Nehemiah 13:15_reference_end_ _reference_start_Job 24:3_reference_end_ _reference_start_Proverbs 26:3_reference_end_ _reference_start_Isaiah 1:3_reference_end_ _reference_start_Isaiah 21:7_reference_end_ _reference_start_Isaiah 32:20_reference_end_ _reference_start_Jeremiah 22:19_reference_end_ _reference_start_Ezekiel 23:20_reference_end_ _reference_start_Zechariah 9:9_reference_end_ _reference_start_Zechariah 14:15_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5( + ! *  ) (  '  &  %  $ # "! !       & &           D C   )                        (   ~  }  |  {  z * y  x  w  v  u  t  s  r  q p o n m l k j i COd''cmoorhen, ibismoorhen, ibisTransliteration: tinsheme _reference_start_Leviticus 11:18_reference_end_ _reference_start_Leviticus 11:30_reference_end_ _reference_start_Deuteronomy 14:16_reference_end_ cwmonkeymonkeyTransliteration: qoph _reference_start_1 Kings 10:22_reference_end_ _reference_start_2 Chronicles 9:21_reference_end_eb#mole ratmole ratTransliteration: chephar-parath _reference_start_Isaiah 2:20_reference_end_YamilletmilletTransliteration: dochan _reference_start_Ezekiel 4:9_reference_end_j`-- migratory locustmigratory locustTransliteration: geb _reference_start_Isaiah 33:4_reference_end_L_qmandrakemandrakeTransliteration: dudaim _reference_start_Genesis 30:14_reference_end_ _reference_start_Genesis 30:14_reference_end_ _reference_start_Genesis 30:15_reference_end_ _reference_start_Genesis 30:15_reference_end_ _reference_start_Genesis 30:16_reference_end_ _reference_start_Song of Solomon 7:14_reference_end_ bbLf%%amouse or ratmouse or ratTransliteration: 'akbar _reference_start_Leviticus 11:29_reference_end_ _reference_start_1 Samuel 6:4_reference_end_ _reference_start_1 Samuel 6:5_reference_end_ _reference_start_1 Samuel 6:11_reference_end_ _reference_start_1 Samuel 6:18_reference_end_ _reference_start_Isaiah 66:17_reference_end_JeGGmoroccan locust = grasshoppermoroccan locust = grasshopperTransliteration: chagab _reference_start_Leviticus 11:22_reference_end_ _reference_start_Numbers 13:33_reference_end_ _reference_start_2 Chronicles 7:13_reference_end_ _reference_start_Ecclesiastes 12:5_reference_end_ _reference_start_Isaiah 40:22_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5( n m l  k j( i( h g f e d c b a `&  _ ^ ] \, [ Z Y  X % W  V U# T# S R  Q  P" O N$ M L K& J& I& H7 G) F E D  C& B A @B ? >B =  < ) ;  :  9  8  7  6  5  4B 3  2  1  0  /  .( -  ,  homuskmelonmuskmelonTransliteration: qishu'ah _reference_start_Numbers 11:5_reference_end_ _reference_start_Isaiah 1:8_reference_end_\g!mulemuleTransliteration: pered _reference_start_2 Samuel 13:29_reference_end_ _reference_start_2 Samuel 18:9_reference_end_ _reference_start_2 Samuel 18:9_reference_end_ _reference_start_2 Samuel 18:9_reference_end_ _reference_start_1 Kings 10:25_reference_end_ _reference_start_1 Kings 18:5_reference_end_ _reference_start_2 Kings 5:17_reference_end_ _reference_start_1 Chronicles 12:41_reference_end_ _reference_start_2 Chronicles 9:24_reference_end_ _reference_start_Ezra 2:66_reference_end_ _reference_start_Psalms 32:9_reference_end_ _reference_start_Isaiah 66:20_reference_end_ _reference_start_Ezekiel 1:11_reference_end_ _reference_start_Ezekiel 27:14_reference_end_ _reference_start_Zechariah 14:15_reference_end_ -m''nightjar/hawknightjar/hawkTransliteration: tachmas _reference_start_Leviticus 11:16_reference_end_ _reference_start_Deuteronomy 14:15_reference_end_8lInettle 2nettle 2Transliteration: qimmosh _reference_start_Proverbs 24:31_reference_end_ _reference_start_Isaiah 34:13_reference_end_ _reference_start_Hosea 9:6_reference_end_7kGnettle 1nettle 1Transliteration: charul _reference_start_Job 30:7_reference_end_ _reference_start_Proverbs 24:31_reference_end_ _reference_start_Zephaniah 2:9_reference_end_j nettlenettle@iamyrtlemyrtleTransliteration: hadas _reference_start_Nehemiah 8:15_reference_end_ _reference_start_Isaiah 41:19_reference_end_ _reference_start_Isaiah 55:13_reference_end_ _reference_start_Zechariah 1:8_reference_end_ _reference_start_Zechariah 1:10_reference_end_ _reference_start_Zechariah 1:11_reference_end_ gn;oakoakTransliteration: 'allon _reference_start_Genesis 35:8_reference_end_ _reference_start_Genesis 35:8_reference_end_ _reference_start_Judges 4:11_reference_end_ _reference_start_Judges 9:6_reference_end_ _reference_start_Judges 9:37_reference_end_ _reference_start_1 Samuel 10:3_reference_end_ _reference_start_Isaiah 2:13_reference_end_ _reference_start_Isaiah 6:13_reference_end_ _reference_start_Isaiah 44:14_reference_end_ _reference_start_Ezekiel 27:6_reference_end_ _reference_start_Hosea 4:13_reference_end_ _reference_start_Amos 2:9_reference_end_ _reference_start_Zechariah 11:2_reference_end_l 8:14_reference_end_ _reference_start_2 Samuel 15:30_reference_end_ _reference_start_2 Kings 5:26_reference_end_ _reference_start_2 Kings 18:32_reference_end_ _reference_start_1 Chronicles 27:28_reference_end_ _reference_start_Nehemiah 5:11_reference_end_ _reference_start_Nehemiah 8:15_reference_end_ _reference_start_Nehemiah 9:25_reference_end_ _reference_start_Job 15:33_reference_end_ _reference_start_Psalms 52:10_reference_end_ _reference_start_Psalms 128:3_reference_end_ _reference_start_Isaiah 17:6_reference_end_ _reference_start_Isaiah 24:13_reference_end_ _reference_start_Jeremiah 11:16_reference_end_ _reference_start_Hosea 14:7_reference_end_ _reference_start_Amos 4:9_reference_end_ _reference_start_Micah 6:15_reference_end_ _reference_start_Habakkuk 3:17_reference_end_ _reference_start_Haggai 2:19_reference_end_ _reference_start_Zechariah 4:3_reference_end_ _reference_start_Zechariah 4:11_reference_end_ _reference_start_Zechariah 4:12_reference_end_ _reference_start_Zechariah 14:4_reference_end_ ,sq77 onager = wild ass (1)onager = wild ass (1)Transliteration: 'arod _reference_start_Job 39:5_reference_end_+p// onager = wild assonager = wild assHouoliveoliveTransliteration: zayit _reference_start_Genesis 8:11_reference_end_ _reference_start_Exodus 23:11_reference_end_ _reference_start_Exodus 27:20_reference_end_ _reference_start_Exodus 30:24_reference_end_ _reference_start_Leviticus 24:2_reference_end_ _reference_start_Deuteronomy 6:11_reference_end_ _reference_start_Deuteronomy 8:8_reference_end_ _reference_start_Deuteronomy 24:20_reference_end_ _reference_start_Deuteronomy 28:40_reference_end_ _reference_start_Deuteronomy 28:40_reference_end_ _reference_start_Joshua 24:13_reference_end_ _reference_start_Judges 9:8_reference_end_ _reference_start_Judges 9:9_reference_end_ _reference_start_Judges 15:5_reference_end_ _reference_start_1 Samue C~pcVI</"yl_RE8+uh[NA4'  1$ 0$ /$ .# -# ,# +! * ) ( ' & % $ # "  !' ! 2' + "         3   % "        h '     ' & & & & % # ! ~ } |  { z y x4 w! v  u t s  r  q  p  o  D!u33ooriental plane treeoriental plane treeTransliteration: armon _reference_start_Genesis 30:37_reference_end_ _reference_start_Ezekiel 31:8_reference_end_]tonychaonychaTransliteration: shechelet _reference_start_Exodus 30:34_reference_end_XsoniononionTransliteration: batzal _reference_start_Numbers 11:5_reference_end_}r77onager = wild ass (2)onager = wild ass (2)Transliteration: pere' _reference_start_Genesis 16:12_reference_end_ _reference_start_Job 6:5_reference_end_ _reference_start_Job 11:12_reference_end_ _reference_start_Job 24:5_reference_end_ _reference_start_Job 39:5_reference_end_ _reference_start_Psalms 104:11_reference_end_ _reference_start_Isaiah 32:14_reference_end_ _reference_start_Jeremiah 2:24_reference_end_ _reference_start_Jeremiah 14:6_reference_end_ _reference_start_Hosea 8:9_reference_end_ U z ox, bullox, bullZyostrichostrichTransliteration: renanah _reference_start_Job 39:13_reference_end_0x//ostrich, barn owlostrich, barn owlTransliteration: ya'anah _reference_start_Leviticus 11:16_reference_end_ _reference_start_Deuteronomy 14:15_reference_end_ _reference_start_Job 30:29_reference_end_ _reference_start_Isaiah 13:21_reference_end_ _reference_start_Isaiah 34:13_reference_end_ _reference_start_Isaiah 43:20_reference_end_ _reference_start_Jeremiah 50:39_reference_end_ _reference_start_Micah 1:8_reference_end_wospreyospreyTransliteration: azniyah _reference_start_Leviticus 11:13_reference_end_ _reference_start_Deuteronomy 14:12_reference_end_'v77soryx = large antelopeoryx = large antelopeTransliteration: te'o _reference_start_Deuteronomy 14:5_reference_end_ _reference_start_Isaiah 51:20_reference_end_odus 21:35_reference_end_ _reference_start_Exodus 21:35_reference_end_ _reference_start_Exodus 21:36_reference_end_ _reference_start_Exodus 21:36_reference_end_ _reference_start_Exodus 21:36_reference_end_ _reference_start_Exodus 21:37_reference_end_ _reference_start_Exodus 21:37_reference_end_ _reference_start_Exodus 22:3_reference_end_ _reference_start_Exodus 22:8_reference_end_ _reference_start_Exodus 22:9_reference_end_ _reference_start_Exodus 22:29_reference_end_ _reference_start_Exodus 23:4_reference_end_ _reference_start_Exodus 23:12_reference_end_ _reference_start_Exodus 34:19_reference_end_ _reference_start_Leviticus 4:10_reference_end_ _reference_start_Leviticus 7:23_reference_end_ _reference_start_Leviticus 9:4_reference_end_ _reference_start_Leviticus 9:18_reference_end_ _reference_start_Leviticus 9:19_reference_end_ _reference_start_Leviticus 17:3_reference_end_ _reference_start_Leviticus 22:23_reference_end_ _reference_start_Leviticus 22:27_reference_end_ _reference_start_Leviticus 22:28_reference_end_ _reference_start_Leviticus 27:26_reference_end_ _reference_start_Numbers 7:3_reference_end_ _reference_start_Numbers 15:11_reference_end_ _reference_start_Numbers 18:17_reference_end_ _reference_start_Numbers 22:4_reference_end_ _reference_start_Deuteronomy 5:14_reference_end_ _reference_start_Deuteronomy 5:21_reference_end_ _reference_start_Deuteronomy 14:4_reference_end_ _reference_start_Deuteronomy 15:19_reference_end_ _reference_start_Deuteronomy 17:1_reference_end_ _reference_start_Deuteronomy 18:3_reference_end_ _reference_start_Deuteronomy 22:1_reference_end_ _reference_start_Deuteronomy 22:4_reference_end_ _reference_start_Deuteronomy 22:10_reference_end_ _reference_start_Deuteronomy 25:4_reference_end_ _reference_start_Deuteronomy 28:31_reference_end_ _reference_start_Deuteronomy 33:17_reference_end_ _reference_start_Joshua 6:21_reference_end_ _reference_start_Joshua 7:24_reference_end_ _reference_start_Judges 6:4_reference_end_ _reference_start_Judges 6:25_reference_end_ _reference_start_1 Samuel 12:3_reference_end_ _reference_start_1 Samuel 14:34_reference_end_ _reference_start_1 Samuel 14:34_reference_end_ _reference_start_1 Samuel 15:3_reference_end_ _reference_start_1 Samuel 22:19_reference_end_ _reference_start_2 Samuel 6:13_reference_end_ _reference_start_1 Kings 1:19_reference_end_ _reference_start_1 Kings 1:25_reference_end_ _reference_start_Nehemiah 5:18_reference_end_ _reference_start_Job 6:5_reference_end_ _reference_start_Job 21:10_reference_end_ _reference_start_Job 24:3_reference_end_ _reference_start_Psalms 69:32_reference_end_ _reference_start_Psalms 106:20_reference_end_ _reference_start_Proverbs 7:22_reference_end_ _reference_start_Proverbs 14:4_reference_end_ _reference_start_Proverbs 15:17_reference_end_ _reference_start_Isaiah 1:3_reference_end_ _reference_start_Isaiah 7:25_reference_end_ _reference_start_Isaiah 32:20_reference_end_ _reference_start_Isaiah 66:3_reference_end_ _reference_start_Ezekiel 1:10_reference_end_ _reference_start_Hosea 12:12_reference_end_ ,V,'}++ palm, date palmpalm, date palmd|%%ox, bull (2)ox, bull (2)Transliteration: towr _reference_start_Ezra 6:9_reference_end_ _reference_start_Ezra 6:17_reference_end_ _reference_start_Ezra 7:17_reference_end_ _reference_start_Daniel 4:22_reference_end_ _reference_start_Daniel 4:29_reference_end_ _reference_start_Daniel 4:30_reference_end_ _reference_start_Daniel 5:21_reference_end_.{%%%ox, bull (1)ox, bull (1)Transliteration: shor _reference_start_Genesis 32:6_reference_end_ _reference_start_Exodus 20:17_reference_end_ _reference_start_Exodus 21:28_reference_end_ _reference_start_Exodus 21:28_reference_end_ _reference_start_Exodus 21:28_reference_end_ _reference_start_Exodus 21:29_reference_end_ _reference_start_Exodus 21:29_reference_end_ _reference_start_Exodus 21:32_reference_end_ _reference_start_Exodus 21:32_reference_end_ _reference_start_Exodus 21:33_reference_end_ _reference_start_Exodus 21:35_reference_end_ _reference_start_Ex C~qdWJ=0# zm`SF9,vi\OB5( t s r q p o n mB l  k j i h g fj eE d c b a `  _  ^  ]  \  [ " Z " Y  X W V U T! S R Q P O N M L K J I H G F E D C B A @ ?  >  =  < ; :" 9 8 7 6 5 4 3% 2% C~qdWJ=0# zm`SF9,vi\OB5( 7  6 5 4  3' 2' 1' 0' /' ." -" ,! + *; ) (  ' &  %  $  #  "+ !         #    ) ) ) ) ) ) ) (% (" ( ( ( (   $  #            \  ~ } | { z" y! x( w v u **R~33Qpalm, date palm (1)palm, date palm (1)Transliteration: tamar _reference_start_Exodus 15:27_reference_end_ _reference_start_Leviticus 23:40_reference_end_ _reference_start_Numbers 33:9_reference_end_ _reference_start_Deuteronomy 34:3_reference_end_ _reference_start_Judges 1:16_reference_end_ _reference_start_Judges 3:13_reference_end_ _reference_start_Judges 4:5_reference_end_ _reference_start_2 Chronicles 28:15_reference_end_ _reference_start_Nehemiah 8:15_reference_end_ _reference_start_Psalms 92:13_reference_end_ _reference_start_Song of Solomon 7:8_reference_end_ _reference_start_Song of Solomon 7:9_reference_end_ _reference_start_Jeremiah 10:5_reference_end_ _reference_start_Joel 1:12_reference_end_ KK133palm, date palm (2)palm, date palm (2)Transliteration: timmorah _reference_start_1 Kings 6:29_reference_end_ _reference_start_1 Kings 6:32_reference_end_ _reference_start_1 Kings 6:32_reference_end_ _reference_start_1 Kings 6:35_reference_end_ _reference_start_1 Kings 7:36_reference_end_ _reference_start_2 Chronicles 3:5_reference_end_ _reference_start_Ezekiel 40:16_reference_end_ _reference_start_Ezekiel 40:22_reference_end_ _reference_start_Ezekiel 40:26_reference_end_ _reference_start_Ezekiel 40:31_reference_end_ _reference_start_Ezekiel 40:34_reference_end_ _reference_start_Ezekiel 40:37_reference_end_ _reference_start_Ezekiel 41:18_reference_end_ _reference_start_Ezekiel 41:18_reference_end_ _reference_start_Ezekiel 41:19_reference_end_ _reference_start_Ezekiel 41:19_reference_end_ _reference_start_Ezekiel 41:20_reference_end_ _reference_start_Ezekiel 41:25_reference_end_ _reference_start_Ezekiel 41:26_reference_end_ ~ i''pistachio nutpistachio nutTransliteration: botnim _reference_start_Genesis 43:11_reference_end_q))#persian walnutpersian walnutTransliteration: 'egoz _reference_start_Song of Solomon 6:11_reference_end_UpearlpearlTransliteration: gabish _reference_start_Job 28:18_reference_end_)55{peacock, guinea fowlpeacock, guinea fowlTransliteration: tukkiy _reference_start_1 Kings 10:22_reference_end_ _reference_start_2 Chronicles 9:21_reference_end_spartridgepartridgeTransliteration: qore _reference_start_1 Samuel 26:20_reference_end_ _reference_start_Jeremiah 17:11_reference_end_f''papyrus, rushpapyrus, rushTransliteration: gome' _reference_start_Exodus 2:3_reference_end_ _reference_start_Job 8:11_reference_end_ _reference_start_Isaiah 18:2_reference_end_ _reference_start_Isaiah 35:7_reference_end_ &"++poisonous snakepoisonous snakeTransliteration: tsepha' _reference_start_Proverbs 23:32_reference_end_ _reference_start_Isaiah 11:8_reference_end_ _reference_start_Isaiah 14:29_reference_end_ _reference_start_Isaiah 59:5_reference_end_ _reference_start_Jeremiah 8:17_reference_end_VplantplantTransliteration: qiyqayon _reference_start_Jonah 4:6_reference_end_ _reference_start_Jonah 4:7_reference_end_ _reference_start_Jonah 4:9_reference_end_ _reference_start_Jonah 4:10_reference_end_ence_end_ _reference_start_1 Samuel 14:2_reference_end_ _reference_start_1 Kings 7:18_reference_end_ _reference_start_1 Kings 7:20_reference_end_ _reference_start_1 Kings 7:42_reference_end_ _reference_start_1 Kings 7:42_reference_end_ _reference_start_2 Kings 25:17_reference_end_ _reference_start_2 Chronicles 3:16_reference_end_ _reference_start_2 Chronicles 4:13_reference_end_ _reference_start_2 Chronicles 4:13_reference_end_ _reference_start_Song of Solomon 4:3_reference_end_ _reference_start_Song of Solomon 4:13_reference_end_ _reference_start_Song of Solomon 6:7_reference_end_ _reference_start_Song of Solomon 6:11_reference_end_ _reference_start_Song of Solomon 7:13_reference_end_ _reference_start_Song of Solomon 8:2_reference_end_ _reference_start_Jeremiah 52:22_reference_end_ _reference_start_Jeremiah 52:22_reference_end_ _reference_start_Jeremiah 52:23_reference_end_ _reference_start_Jeremiah 52:23_reference_end_ _reference_start_Joel 1:12_reference_end_ _reference_start_Haggai 2:19_reference_end_ qq| U ram (1)ram (1)Transliteration: 'ayil _reference_start_Genesis 15:9_reference_end_ _reference_   ramrama ' quailquailTransliteration: selaw _reference_start_Exodus 16:13_reference_end_ _reference_start_Numbers 11:31_reference_end_ _reference_start_Numbers 11:32_reference_end_ _reference_start_Psalms 105:40_reference_end_##pomegranatepomegranateTransliteration: rimmon _reference_start_Exodus 28:33_reference_end_ _reference_start_Exodus 28:34_reference_end_ _reference_start_Exodus 28:34_reference_end_ _reference_start_Exodus 39:24_reference_end_ _reference_start_Exodus 39:25_reference_end_ _reference_start_Exodus 39:25_reference_end_ _reference_start_Exodus 39:26_reference_end_ _reference_start_Exodus 39:26_reference_end_ _reference_start_Numbers 13:23_reference_end_ _reference_start_Numbers 20:5_reference_end_ _reference_start_Deuteronomy 8:8_refer C~qdWJ=0# zm`SF9,vi\OB5( z   y   x   w  v  u  t  s  r  q  p  o  n  m  l  k  j '" i $ h # g # f  e  d  c  b  a  `  _  ^  ]  \  [  Z  Y  X  W  V  U  T   S & R  Q  P  O i( N  M   L  K% J I4 H4 G4 F4 E D C B A @ ? > = <  ; * : * 9  8 start_Genesis 22:13_reference_end_ _reference_start_Genesis 22:13_reference_end_ _reference_start_Genesis 31:38_reference_end_ _reference_start_Genesis 32:15_reference_end_ _reference_start_Exodus 25:5_reference_end_ _reference_start_Exodus 26:14_reference_end_ _reference_start_Exodus 29:1_reference_end_ _reference_start_Exodus 29:3_reference_end_ _reference_start_Exodus 29:15_reference_end_ _reference_start_Exodus 29:15_reference_end_ _reference_start_Exodus 29:16_reference_end_ _reference_start_Exodus 29:17_reference_end_ _reference_start_Exodus 29:18_reference_end_ _reference_start_Exodus 29:19_reference_end_ _reference_start_Exodus 29:19_reference_end_ _reference_start_Exodus 29:20_reference_end_ _reference_start_Exodus 29:22_reference_end_ _reference_start_Exodus 29:22_reference_end_ _reference_start_Exodus 29:26_reference_end_ _reference_start_Exodus 29:27_reference_end_ _reference_start_Exodus 29:31_reference_end_ _reference_start_Exodus 29:32_reference_end_ _reference_start_Exodus 35:7_reference_end_ _reference_start_Exodus 35:23_reference_end_ _reference_start_Exodus 36:19_reference_end_ _reference_start_Exodus 39:34_reference_end_ _reference_start_Leviticus 5:15_reference_end_ _reference_start_Leviticus 5:16_reference_end_ _reference_start_Leviticus 5:18_reference_end_ _reference_start_Leviticus 5:25_reference_end_ _reference_start_Leviticus 8:2_reference_end_ _reference_start_Leviticus 8:18_reference_end_ _reference_start_Leviticus 8:18_reference_end_ _reference_start_Leviticus 8:20_reference_end_ _reference_start_Leviticus 8:21_reference_end_ _reference_start_Leviticus 8:22_reference_end_ _reference_start_Leviticus 8:22_reference_end_ _reference_start_Leviticus 8:22_reference_end_ _reference_start_Leviticus 8:29_reference_end_ _reference_start_Leviticus 9:2_reference_end_ _reference_start_Leviticus 9:4_reference_end_ _reference_start_Leviticus 9:18_reference_end_ _reference_start_Leviticus 9:19_reference_end_ _reference_start_Leviticus 16:3_reference_end_ _reference_start_Leviticus 16:5_reference_end_ _reference_start_Leviticus 19:21_reference_end_ _reference_start_Leviticus 19:22_reference_end_ _reference_start_Leviticus 23:18_reference_end_ _reference_start_Numbers 5:8_reference_end_ _reference_start_Numbers 6:14_reference_end_ _reference_start_Numbers 6:17_reference_end_ _reference_start_Numbers 6:19_reference_end_ _reference_start_Numbers 7:15_reference_end_ _reference_start_Numbers 7:17_reference_end_ _reference_start_Numbers 7:21_reference_end_ _reference_start_Numbers 7:23_reference_end_ _reference_start_Numbers 7:27_reference_end_ _reference_start_Numbers 7:29_reference_end_ _reference_start_Numbers 7:33_reference_end_ _reference_start_Numbers 7:35_reference_end_ _reference_start_Numbers 7:39_reference_end_ _reference_start_Numbers 7:41_reference_end_ _reference_start_Numbers 7:45_reference_end_ _reference_start_Numbers 7:47_reference_end_ _reference_start_Numbers 7:51_reference_end_ _reference_start_Numbers 7:53_reference_end_ _reference_start_Numbers 7:57_reference_end_ _reference_start_Numbers 7:59_reference_end_ _reference_start_Numbers 7:63_reference_end_ _reference_start_Numbers 7:65_reference_end_ _reference_start_Numbers 7:69_reference_end_ _reference_start_Numbers 7:71_reference_end_ _reference_start_Numbers 7:75_reference_end_ _reference_start_Numbers 7:77_reference_end_ _reference_start_Numbers 7:81_reference_end_ _reference_start_Numbers 7:83_reference_end_ _reference_start_Numbers 7:87_reference_end_ _reference_start_Numbers 7:88_reference_end_ _reference_start_Numbers 15:6_reference_end_ _reference_start_Numbers 15:11_reference_end_ _reference_start_Numbers 23:1_reference_end_ _reference_start_Numbers 23:2_reference_end_ _reference_start_Numbers 23:4_reference_end_ _reference_start_Numbers 23:14_reference_end_ _reference_start_Numbers 23:29_reference_end_ _reference_start_Numbers 23:30_reference_end_ _reference_start_Numbers 28:11_reference_end_ _reference_start_Numbers 28:12_reference_end_ _reference_start_Numbers 28:14_reference_end_ _reference_start_Numbers 28:19_reference_end_ _reference_start_Numbers 28:20_reference_end_ _reference_start_Numbers 28:27_reference_end_ _reference_start_Numbers 28:28_reference_end_ _reference_start_Numbers 29:2_reference_end_ _reference_start_Numbers 29:3_reference_end_ _reference_start_Numbers 29:8_reference_end_ _reference_start_Numbers 29:9_reference_end_ _reference_start_Numbers 29:13_reference_end_ _reference_start_Numbers 29:14_reference_end_ _reference_start_Numbers 29:14_reference_end_ _reference_start_Numbers 29:17_reference_end_ _reference_start_Numbers 29:18_reference_end_ _reference_start_Numbers 29:20_reference_end_ _reference_start_Numbers 29:21_reference_end_ _reference_start_Numbers 29:23_reference_end_ _reference_start_Numbers 29:24_reference_end_ _reference_start_Numbers 29:26_reference_end_ _reference_start_Numbers 29:27_reference_end_ _reference_start_Numbers 29:29_reference_end_ _reference_start_Numbers 29:30_reference_end_ _reference_start_Numbers 29:32_reference_end_ _reference_start_Numbers 29:33_reference_end_ _reference_start_Numbers 29:36_reference_end_ _reference_start_Numbers 29:37_reference_end_ _reference_start_Deuteronomy 32:14_reference_end_ _reference_start_1 Samuel 15:22_reference_end_ _reference_start_2 Kings 3:4_reference_end_ _reference_start_1 Chronicles 15:26_reference_end_ _reference_start_1 Chronicles 29:21_reference_end_ _reference_start_2 Chronicles 13:9_reference_end_ _reference_start_2 Chronicles 17:11_reference_end_ _reference_start_2 Chronicles 29:21_reference_end_ _reference_start_2 Chronicles 29:22_reference_end_ _reference_start_2 Chronicles 29:32_reference_end_ _reference_start_Ezra 8:35_reference_end_ _reference_start_Ezra 10:19_reference_end_ _reference_start_Job 42:8_reference_end_ _reference_start_Psalms 66:15_reference_end_ _reference_start_Psalms 114:4_reference_end_ _reference_start_Psalms 114:6_reference_end_ _reference_start_Isaiah 1:11_reference_end_ _reference_start_Isaiah 34:6_reference_end_ _reference_start_Isaiah 60:7_reference_end_ _reference_start_Jeremiah 51:40_reference_end_ _reference_start_Ezekiel 27:21_reference_end_ _reference_start_Ezekiel 34:17_reference_end_ _reference_start_Ezekiel 39:18_reference_end_ _reference_start_Ezekiel 43:23_reference_end_ _reference_start_Ezekiel 43:25_reference_end_ _reference_start_Ezekiel 45:23_reference_end_ _reference_start_Ezekiel 45:24_reference_end_ _reference_start_Ezekiel 46:4_reference_end_ _reference_start_Ezekiel 46:5_reference_end_ _reference_start_Ezekiel 46:6_reference_end_ _reference_start_Ezekiel 46:7_reference_end_ _reference_start_Ezekiel 46:11_reference_end_ _reference_start_Daniel 8:3_reference_end_ _reference_start_Daniel 8:4_reference_end_ _reference_start_Daniel 8:6_reference_end_ _reference_start_Daniel 8:7_reference_end_ _reference_start_Daniel 8:7_reference_end_ _reference_start_Daniel 8:7_reference_end_ _reference_start_Daniel 8:7_reference_end_ _reference_start_Daniel 8:20_reference_end_ _reference_start_Micah 6:7_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5( =  <  ;  :  9  8  7  6  5  4  3  2  1  0  /  .  -  ,  +  *  )  (  '  &  %  $  #  "  !       X  W  S  Q  M  K  G  E  A  ?  ;  9  5  3  /  -  )  '  #  !                         ~  }  |  {   C~qdWJ=0# zm`SF9,vi\OB5'  ) ) ~ } | { z y x " w  v  u  t &) s  r  q  p   o  n  m  l  k ! j  i  h  g  f  e  d  c  b . a . ` . _ . ^ . ] - \ - [ + Z + Y ' X " W  V 3( U < T " S  R r Q r P B O * N   M # L  K  J  I  H  G  F  E  D  C   B % A $ @ ! ?  >  TQTy W ravenravenTransliteration: oreb _reference_start_Genesis 8:7_reference_end_ _reference_start_Leviticus 11:15_reference_end_ _reference_start_Deuteronomy 14:14_reference_end_ _reference_start_1 Kings 17:4_reference_end_ _reference_start_1 Kings 17:6_reference_end_ _reference_start_Job 38:41_reference_end_ _reference_start_Psalms 147:9_reference_end_ _reference_start_Proverbs 30:17_reference_end_ _reference_start_Song of Solomon 5:11_reference_end_ _reference_start_Isaiah 34:11_reference_end_+ 3 ram (2)ram (2)Transliteration: dekar _reference_start_Ezra 6:9_reference_end_ _reference_start_Ezra 6:17_reference_end_ _reference_start_Ezra 7:17_reference_end_ `scops owlscops owlTransliteration: lilith _reference_start_Isaiah 34:14_reference_end_@''Erush, bulrushrush, bulrushTransliteration: 'agmon _reference_start_Isaiah 9:13_reference_end_ _reference_start_Isaiah 19:15_reference_end_ _reference_start_Isaiah 58:5_reference_end_>''Areeds, rushesreeds, rushesTransliteration: 'acho _reference_start_Genesis 41:2_reference_end_ _reference_start_Genesis 41:18_reference_end_ _reference_start_Job 8:11_reference_end_c%%red saundersred saundersTransliteration: almuggim/algummim _reference_start_1 Kings 10:11_reference_end_ _reference_start_1 Kings 10:12_reference_end_ _reference_start_1 Kings 10:12_reference_end_ _reference_start_2 Chronicles 2:7_reference_end_ _reference_start_2 Chronicles 9:10_reference_end_ _reference_start_2 Chronicles 9:11_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5( C!h B!' A! @!  ? , >  = < ;% : 9  8 7 6 5 4 3 2 1# 0 / . -  , + *  )  ( ' & % $  #  " !   !       ;  :  ,  &  ! !              " :    RkRZsnailsnailTransliteration: shabbelul _reference_start_Psalms 58:9_reference_end_8Ishe-muleshe-muleTransliteration: pirdah _reference_start_1 Kings 1:33_reference_end_ _reference_start_1 Kings 1:38_reference_end_ _reference_start_1 Kings 1:44_reference_end_=!!Ksenna bushsenna bushTransliteration: seneh _reference_start_Exodus 3:2_reference_end_ _reference_start_Exodus 3:2_reference_end_ _reference_start_Exodus 3:2_reference_end_ _reference_start_Exodus 3:3_reference_end_ _reference_start_Exodus 3:4_reference_end_ _reference_start_Deuteronomy 33:16_reference_end_PyscorpionscorpionTransliteration: 'aqrab _reference_start_Deuteronomy 8:15_reference_end_ _reference_start_1 Kings 12:11_reference_end_ _reference_start_1 Kings 12:14_reference_end_ _reference_start_2 Chronicles 10:11_reference_end_ _reference_start_2 Chronicles 10:14_reference_end_ _reference_start_Ezekiel 2:6_reference_end_ !ws!&99mspiny zilla, brier (2)spiny zilla, brier (2)Transliteration: chedeq _reference_start_Proverbs 15:19_reference_end_ _reference_start_Micah 7:4_reference_end_$99ispiny zilla, brier (1)spiny zilla, brier (1)Transliteration: barqan _reference_start_Judges 8:7_reference_end_ _reference_start_Judges 8:16_reference_end_-11 spiny zilla, brierspiny zilla, brierPuspikenardspikenardTransliteration: nerd _reference_start_Song of Solomon 1:12_reference_end_ _reference_start_Song of Solomon 4:13_reference_end_ _reference_start_Song of Solomon 4:14_reference_end_kspiderspiderTransliteration: 'akkabish _reference_start_Job 8:14_reference_end_ _reference_start_Isaiah 59:5_reference_end_ N'99ospiny zilla, brier (4)spiny zilla, brier (4)Transliteration: sillon _reference_start_Ezekiel 2:6_reference_end_ _reference_start_Ezekiel 28:24_reference_end_.99}spiny zilla, brier (3)spiny zilla, brier (3)Transliteration: shamir _reference_start_Isaiah 5:6_reference_end_ _reference_start_Isaiah 7:23_reference_end_ _reference_start_Isaiah 7:24_reference_end_ _reference_start_Isaiah 7:25_reference_end_ _reference_start_Isaiah 9:17_reference_end_ _reference_start_Isaiah 10:17_reference_end_ _reference_start_Isaiah 27:4_reference_end_ _reference_start_Isaiah 32:13_reference_end_ stagstagTransliteration: 'ayyal _reference_start_Deuteronomy 12:15_reference_end_ _reference_start_Deuteronomy 12:22_reference_end_ _reference_start_Deuteronomy 14:5_reference_end_ _reference_start_Deuteronomy 15:22_reference_end_ _reference_start_1 Kings 5:3_reference_end_ _reference_start_Song of Solomon 2:9_reference_end_ _reference_start_Song of Solomon 2:17_reference_end_ _reference_start_Song of Solomon 8:14_reference_end_ _reference_start_Isaiah 35:6_reference_end_ _reference_start_Lamentations 1:6_reference_end_ ab !! stone pinestone pineTransliteration: tirzah _reference_start_Isaiah 44:14_reference_end_%%kstar thistlestar thistleTransliteration: dardar _reference_start_Genesis 3:18_reference_end_ _reference_start_Hosea 10:8_reference_end_))Mstanding grainstanding grainTransliteration: qamah _reference_start_Exodus 22:5_reference_end_ _reference_start_Deuteronomy 16:9_reference_end_ _reference_start_Deuteronomy 23:26_reference_end_ _reference_start_Deuteronomy 23:26_reference_end_ _reference_start_Judges 15:5_reference_end_ _reference_start_Judges 15:5_reference_end_ _reference_start_2 Kings 19:26_reference_end_ _reference_start_Isaiah 17:5_reference_end_ _reference_start_Isaiah 37:27_reference_end_ _reference_start_Hosea 8:7_reference_end_ .x###=#swine, boarswine, boarTransliteration: chazir _reference_start_Leviticus 11:7_reference_end_ _reference_start_Deuteronomy 14:8_reference_end_ _reference_start_Psalms 80:14_reference_end_ _reference_start_Proverbs 11:22_reference_end_ _reference_start_Isaiah 65:4_reference_end_ _reference_start_Isaiah 66:3_reference_end_ _reference_start_Isaiah 66:17_reference_end_"m"swallowswallowTransliteration: deror _reference_start_Psalms 84:4_reference_end_ _reference_start_Proverbs 26:2_reference_end_B!i!storkstorkTransliteration: chasidah _reference_start_Leviticus 11:19_reference_end_ _reference_start_Deuteronomy 14:18_reference_end_ _reference_start_Job 39:13_reference_end_ _reference_start_Psalms 104:17_reference_end_ _reference_start_Jeremiah 8:7_reference_end_ _reference_start_Zechariah 5:9_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5( * * * ) )  )  ) ) ~) }) |( {( z( y( x( w(  v(  u(  t(  s(  r( q( p( o(# n'  m'  l'! k&3 j&  i& h& g&4 f&3 e&1 d& c& b&  a% `%  _% ^%; ]%  \% [% Z%  Y%  X% % W% $ V% " U$ T$ S$N/ R$  Q$ P$  O$  N#B M#B L#A K#  J#P I# H#  G" F"T E!& D! {f%//%syrian brown bearsyrian brown bearTransliteration: dob _reference_start_1 Samuel 17:34_reference_end_ _reference_start_1 Samuel 17:36_reference_end_ _reference_start_1 Samuel 17:37_reference_end_ _reference_start_2 Samuel 17:8_reference_end_ _reference_start_2 Kings 2:24_reference_end_ _reference_start_Proverbs 17:12_reference_end_ _reference_start_Proverbs 28:15_reference_end_ _reference_start_Isaiah 11:7_reference_end_ _reference_start_Isaiah 59:11_reference_end_ _reference_start_Lamentations 3:10_reference_end_ _reference_start_Hosea 13:8_reference_end_ _reference_start_Amos 5:19_reference_end_$%%K$sycamore figsycamore figTransliteration: shiqmah _reference_start_1 Kings 10:27_reference_end_ _reference_start_1 Chronicles 27:28_reference_end_ _reference_start_2 Chronicles 1:15_reference_end_ _reference_start_2 Chronicles 9:27_reference_end_ _reference_start_Psalms 78:47_reference_end_ _reference_start_Isaiah 9:9_reference_end_ _reference_start_Amos 7:14_reference_end_ 33<'Q'tamarisktamariskTransliteration: 'eshel _reference_start_Genesis 21:33_reference_end_ _reference_start_1 Samuel 22:6_reference_end_ _reference_start_1 Samuel 31:13_reference_end_ &''W&syrian hyssopsyrian hyssopTransliteration: 'ezob _reference_start_Exodus 12:22_reference_end_ _reference_start_Leviticus 14:4_reference_end_ _reference_start_Leviticus 14:6_reference_end_ _reference_start_Leviticus 14:49_reference_end_ _reference_start_Leviticus 14:51_reference_end_ _reference_start_Leviticus 14:52_reference_end_ _reference_start_Numbers 19:6_reference_end_ _reference_start_Numbers 19:18_reference_end_ _reference_start_1 Kings 5:13_reference_end_ _reference_start_Psalms 51:9_reference_end_ NN.(1(terebinthterebinthTransliteration: elah _reference_start_Genesis 35:4_reference_end_ _reference_start_Joshua 24:26_reference_end_ _reference_start_Judges 6:11_reference_end_ _reference_start_Judges 6:19_reference_end_ _reference_start_2 Samuel 18:9_reference_end_ _reference_start_2 Samuel 18:9_reference_end_ _reference_start_2 Samuel 18:10_reference_end_ _reference_start_2 Samuel 18:14_reference_end_ _reference_start_1 Kings 13:14_reference_end_ _reference_start_1 Chronicles 10:12_reference_end_ _reference_start_Isaiah 1:30_reference_end_ _reference_start_Isaiah 6:13_reference_end_ _reference_start_Ezekiel 6:13_reference_end_ _reference_start_Hosea 4:13_reference_end_ 11Z*--m*thorn, thornbushthorn, thornbushTransliteration: qots _reference_start_Genesis 3:18_reference_end_ _reference_start_Exodus 22:5_reference_end_ _reference_start_Judges 8:7_reference_end_ _reference_start_Judges 8:16_reference_end_ _reference_start_2 Samuel 23:6_reference_end_ _reference_start_Psalms 118:12_reference_end_ _reference_start_Isaiah 32:13_reference_end_ _reference_start_Isaiah 33:12_reference_end_ _reference_start_Jeremiah 4:3_reference_end_ _reference_start_Jeremiah 12:13_reference_end_ _reference_start_Ezekiel 28:24_reference_end_ _reference_start_Hosea 10:8_reference_end_m)%%#)thorn bushesthorn bushesTransliteration: shayit _reference_start_Isaiah 5:6_reference_end_ _reference_start_Isaiah 7:23_reference_end_ _reference_start_Isaiah 7:24_reference_end_ _reference_start_Isaiah 7:25_reference_end_ _reference_start_Isaiah 9:17_reference_end_ _reference_start_Isaiah 10:17_reference_end_ _reference_start_Isaiah 27:4_reference_end_ C~qdWJ=0# zm`SF9,vi[NA4'  I0 H0 G0 F0 E0$ D0" C0 B0 A0 @0 ?0 >0 =0 <0 ;0 :0 90i! 80P 70P 60N/ 50! 40  30 ' 20  10  00 /0 .0 -0 ,0 +0 *0 )01 (0( '0( &/ %. $. #.J ". !. . . . .  .  . . . . - -& ,( ,( +" + +" + *  * * * *! * *v *  * -//k-thrush or swallowthrush or swallowTransliteration: agor _reference_start_Isaiah 38:14_reference_end_ _reference_start_Jeremiah 8:7_reference_end_ ,%%c,thorny lotusthorny lotusTransliteration: tse'el _reference_start_Job 40:21_reference_end_ _reference_start_Job 40:22_reference_end_k+''+thorny burnetthorny burnetTransliteration: sir _reference_start_Ecclesiastes 7:6_reference_end_ _reference_start_Isaiah 34:13_reference_end_ _reference_start_Hosea 2:8_reference_end_ _reference_start_Nahum 1:10_reference_end_ 5p////unidentified treeunidentified treeTransliteration: gopher _reference_start_Genesis 6:14_reference_end_G.##[.turtle doveturtle doveTransliteration: tor _reference_start_Genesis 15:9_reference_end_ _reference_start_Leviticus 1:14_reference_end_ _reference_start_Leviticus 5:7_reference_end_ _reference_start_Leviticus 5:11_reference_end_ _reference_start_Leviticus 12:6_reference_end_ _reference_start_Leviticus 12:8_reference_end_ _reference_start_Leviticus 14:22_reference_end_ _reference_start_Leviticus 14:30_reference_end_ _reference_start_Leviticus 15:14_reference_end_ _reference_start_Leviticus 15:29_reference_end_ _reference_start_Numbers 6:10_reference_end_ _reference_start_Psalms 74:19_reference_end_ _reference_start_Song of Solomon 2:12_reference_end_ _reference_start_Jeremiah 8:7_reference_end__ _reference_start_Judges 13:14_reference_end_ _reference_start_1 Kings 5:5_reference_end_ _reference_start_2 Kings 4:39_reference_end_ _reference_start_2 Kings 18:31_reference_end_ _reference_start_Job 15:33_reference_end_ _reference_start_Psalms 78:47_reference_end_ _reference_start_Psalms 80:9_reference_end_ _reference_start_Psalms 80:15_reference_end_ _reference_start_Psalms 105:33_reference_end_ _reference_start_Psalms 128:3_reference_end_ _reference_start_Song of Solomon 2:13_reference_end_ _reference_start_Song of Solomon 6:11_reference_end_ _reference_start_Song of Solomon 7:9_reference_end_ _reference_start_Song of Solomon 7:13_reference_end_ _reference_start_Isaiah 7:23_reference_end_ _reference_start_Isaiah 16:8_reference_end_ _reference_start_Isaiah 16:9_reference_end_ _reference_start_Isaiah 24:7_reference_end_ _reference_start_Isaiah 32:12_reference_end_ _reference_start_Isaiah 34:4_reference_end_ _reference_start_Isaiah 36:16_reference_end_ _reference_start_Jeremiah 2:21_reference_end_ _reference_start_Jeremiah 5:17_reference_end_ _reference_start_Jeremiah 6:9_reference_end_ _reference_start_Jeremiah 8:13_reference_end_ _reference_start_Jeremiah 48:32_reference_end_ _reference_start_Ezekiel 15:2_reference_end_ _reference_start_Ezekiel 15:6_reference_end_ _reference_start_Ezekiel 17:6_reference_end_ _reference_start_Ezekiel 17:6_reference_end_ _reference_start_Ezekiel 17:7_reference_end_ _reference_start_Ezekiel 17:8_reference_end_ _reference_start_Ezekiel 19:10_reference_end_ _reference_start_Hosea 2:14_reference_end_ _reference_start_Hosea 10:1_reference_end_ _reference_start_Hosea 14:8_reference_end_ _reference_start_Joel 1:7_reference_end_ _reference_start_Joel 1:12_reference_end_ _reference_start_Joel 2:22_reference_end_ _reference_start_Micah 4:4_reference_end_ _reference_start_Habakkuk 3:17_reference_end_ _reference_start_Haggai 2:19_reference_end_ _reference_start_Zechariah 3:10_reference_end_ _reference_start_Zechariah 8:12_reference_end_ _reference_start_Malachi 3:11_reference_end_ 61E1vineyardvineyardTransliteration: kerem _reference_start_Genesis 9:20_reference_end_ _reference_start_Exodus 22:4_reference_end_ _reference_start_Exodus 22:4_reference_end_ _reference_start_Exodus 23:11_reference_end_ _reference_start_Leviticus 19:10_reference_end_ _reference_start_Leviticus 19:10_reference_end_ _reference_start_Leviticus 25:3_reference_end_ _reference_start_Leviticus 25:4_reference_end_ _reference_start_Numbers 16:14_refere 0++E0vine, vine treevine, vine treeTransliteration: gephen _reference_start_Genesis 40:9_reference_end_ _reference_start_Genesis 40:10_reference_end_ _reference_start_Genesis 49:11_reference_end_ _reference_start_Numbers 6:4_reference_end_ _reference_start_Numbers 20:5_reference_end_ _reference_start_Deuteronomy 8:8_reference_end_ _reference_start_Deuteronomy 32:32_reference_end_ _reference_start_Deuteronomy 32:32_reference_end_ _reference_start_Judges 9:12_reference_end_ _reference_start_Judges 9:13_reference_end C~qdWJ=0# zm`SF9,vi\OB5( 1 1 1  1  1  1  1  1  1  1  1  1  1  1  ~1  }1  |1  {1  z1  y1  x1  w1 v1 u1 t1 s1  r1 q1' p1 o1 n1 m1 l1 k1 j1 i1 h1 g1 f1 e1 d1 c1 b1 a1 `1 _1 ^1  ]0' \0& [0& Z0% Y0# X0! W0 V0 U0 T0 S0  R0 Q0 P0 O0 N0 M0 L0 K0 J00  nce_end_ _reference_start_Numbers 20:17_reference_end_ _reference_start_Numbers 21:22_reference_end_ _reference_start_Numbers 22:24_reference_end_ _reference_start_Deuteronomy 6:11_reference_end_ _reference_start_Deuteronomy 20:6_reference_end_ _reference_start_Deuteronomy 22:9_reference_end_ _reference_start_Deuteronomy 22:9_reference_end_ _reference_start_Deuteronomy 23:25_reference_end_ _reference_start_Deuteronomy 24:21_reference_end_ _reference_start_Deuteronomy 28:30_reference_end_ _reference_start_Deuteronomy 28:39_reference_end_ _reference_start_Joshua 24:13_reference_end_ _reference_start_Judges 9:27_reference_end_ _reference_start_Judges 14:5_reference_end_ _reference_start_Judges 15:5_reference_end_ _reference_start_Judges 21:20_reference_end_ _reference_start_Judges 21:21_reference_end_ _reference_start_1 Samuel 8:14_reference_end_ _reference_start_1 Samuel 8:15_reference_end_ _reference_start_1 Samuel 22:7_reference_end_ _reference_start_1 Kings 21:1_reference_end_ _reference_start_1 Kings 21 :2_reference_end_ _reference_start_1 Kings 21:2_reference_end_ _reference_start_1 Kings 21:6_reference_end_ _reference_start_1 Kings 21:6_reference_end_ _reference_start_1 Kings 21:6_reference_end_ _reference_start_1 Kings 21:7_reference_end_ _reference_start_1 Kings 21:15_reference_end_ _reference_start_1 Kings 21:16_reference_end_ _reference_start_1 Kings 21:18_reference_end_ _reference_start_2 Kings 5:26_reference_end_ _reference_start_2 Kings 18:32_reference_end_ _reference_start_2 Kings 19:29_reference_end_ _reference_start_2 Kings 25:12_reference_end_ _reference_start_1 Chronicles 27:27_reference_end_ _reference_start_1 Chronicles 27:27_reference_end_ _reference_start_2 Chronicles 26:10_reference_end_ _reference_start_Nehemiah 5:3_reference_end_ _reference_start_Nehemiah 5:4_reference_end_ _reference_start_Nehemiah 5:5_reference_end_ _reference_start_Nehemiah 5:11_reference_end_ _reference_start_Nehemiah 9:25_reference_end_ _reference_start_Job 24:6_reference_end_ _reference_start_Job 24:18_referenc e_end_ _reference_start_Psalms 107:37_reference_end_ _reference_start_Proverbs 24:30_reference_end_ _reference_start_Proverbs 31:16_reference_end_ _reference_start_Ecclesiastes 2:4_reference_end_ _reference_start_Song of Solomon 1:6_reference_end_ _reference_start_Song of Solomon 1:6_reference_end_ _reference_start_Song of Solomon 1:14_reference_end_ _reference_start_Song of Solomon 2:15_reference_end_ _reference_start_Song of Solomon 2:15_reference_end_ _reference_start_Song of Solomon 7:13_reference_end_ _reference_start_Song of Solomon 8:11_reference_end_ _reference_start_Song of Solomon 8:11_reference_end_ _reference_start_Song of Solomon 8:12_reference_end_ _reference_start_Isaiah 1:8_reference_end_ _reference_start_Isaiah 3:14_reference_end_ _reference_start_Isaiah 5:1_reference_end_ _reference_start_Isaiah 5:1_reference_end_ _reference_start_Isaiah 5:3_reference_end_ _reference_start_Isaiah 5:4_reference_end_ _reference_start_Isaiah 5:5_reference_end_ _reference_start_Isaiah 5:7_reference_end_ _reference_start_Isaiah 5:10_reference_end_ _reference_start_Isaiah 16:10_reference_end_ _reference_start_Isaiah 27:2_reference_end_ _reference_start_Isaiah 36:17_reference_end_ _reference_start_Isaiah 37:30_reference_end_ _reference_start_Isaiah 61:5_reference_end_ _reference_start_Isaiah 65:21_reference_end_ _reference_start_Jeremiah 12:10_reference_end_ _reference_start_Jeremiah 31:5_reference_end_ _reference_start_Jeremiah 32:15_reference_end_ _reference_start_Jeremiah 35:7_reference_end_ _reference_start_Jeremiah 35:9_reference_end_ _reference_start_Jeremiah 39:10_reference_end_ _reference_start_Jeremiah 52:16_reference_end_ _reference_start_Ezekiel 28:26_reference_end_ _reference_start_Hosea 2:17_reference_end_ _reference_start_Joel 1:11_reference_end_ _reference_start_Amos 4:9_reference_end_ _reference_start_Amos 5:11_reference_end_ _reference_start_Amos 5:17_reference_end_ _reference_start_Amos 9:14_reference_end_ _reference_start_Micah 1:6_reference_end_ _reference_start_Zephaniah 1:13_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5(  O5 N4$ M4# L4 K4 J4A I4  H41 G3, F3 E3 D3( C3( B2x A2 @2  ?2  >1$ =1! <1  ;1 :1 91 81 71 61 514 41' 31# 21# 11  01 /1 .1A -1= ,1% +1$ *1 )1 (1 '1 &1 %1 $1 #1 "1 !1 1 1 1 1 1 1 1 1 1 1 1 1 1 1k% 1 1 1  1 1 1 e434wolfwolfTransliteration: ze'eb _reference_start_Genesis 49:27_reference_end_ _reference_start_Isaiah 11:6_reference_end_ _reference_start_Isaiah 65:25_reference_end_ _reference_start_Jeremiah 5:6_reference_end_ _reference_start_Ezekiel 22:27_reference_end_ _reference_start_Habakkuk 1:8_reference_end_ _reference_start_Zephaniah 3:3_reference_end_3%%w3white willowwhite willowTransliteration: 'arab _reference_start_Leviticus 23:40_reference_end_ _reference_start_Job 40:22_reference_end_ _reference_start_Psalms 137:2_reference_end_ _reference_start_Isaiah 15:7_reference_end_ _reference_start_Isaiah 44:4_reference_end_g2##2white broomwhite broomTransliteration: rothem _reference_start_1 Kings 19:4_reference_end_ _reference_start_1 Kings 19:5_reference_end_ _reference_start_Job 30:4_reference_end_ _reference_start_Psalms 120:4_reference_end_ |0 833m8young bull, bullockyoung bull, bullockTransliteration: par _reference_start_Genesis 32:16_ref%7#7wormwoodwormwoodTransliteration: la'anah _reference_start_Deuteronomy 29:17_reference_end_ _reference_start_Proverbs 5:4_reference_end_ _reference_start_Jeremiah 9:14_reference_end_ _reference_start_Jeremiah 23:15_reference_end_ _reference_start_Lamentations 3:15_reference_end_ _reference_start_Lamentations 3:19_reference_end_ _reference_start_Amos 5:7_reference_end_ _reference_start_Amos 6:12_reference_end_H6%%Y6worm, maggotworm, maggotTransliteration: tola'a _reference_start_Exodus 16:20_reference_end_ _reference_start_Deuteronomy 28:39_reference_end_ _reference_start_Psalms 22:7_reference_end_ _reference_start_Isaiah 41:14_reference_end_ _reference_start_Isaiah 66:24_reference_end_ _reference_start_Jonah 4:7_reference_end_5i5wormwormTransliteration: tola'ah _reference_start_Job 25:6_reference_end_ _reference_start_Isaiah 14:11_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5( 8Q 8K 8E 8? 89 83 8- 8' 8! 8 8 8 8 8 8 8 8 8 8 8 ~8 }8 |8 {8 z8 y8 x8 w8 v8 u8 t8 s8 r8 q8 p8 o8 n8 m8 l8 k8 j8 i8 h8$ g8 f8 e8 d8 c8 b8 a8 `8 _8  ^7 ]7 \7 [7 Z7 Y7  X7 W7 V6  U6B T6) S6 R6' Q6 P5 erence_end_ _reference_start_Exodus 24:5_reference_end_ _reference_start_Exodus 29:1_reference_end_ _reference_start_Exodus 29:3_reference_end_ _reference_start_Exodus 29:10_reference_end_ _reference_start_Exodus 29:10_reference_end_ _reference_start_Exodus 29:11_reference_end_ _reference_start_Exodus 29:12_reference_end_ _reference_start_Exodus 29:14_reference_end_ _reference_start_Exodus 29:36_reference_end_ _reference_start_Leviticus 4:3_reference_end_ _reference_start_Leviticus 4:4_reference_end_ _reference_start_Leviticus 4:4_reference_end_ _reference_start_Leviticus 4:4_reference_end_ _reference_start_Leviticus 4:5_reference_end_ _reference_start_Leviticus 4:7_reference_end_ _reference_start_Leviticus 4:8_reference_end_ _reference_start_Leviticus 4:11_reference_end_ _reference_start_Leviticus 4:12_reference_end_ _reference_start_Leviticus 4:14_reference_end_ _reference_start_Leviticus 4:15_reference_end_ _reference_start_Leviticus 4:15_reference_end_ _reference_start_Leviticus 4:16_reference_end_ _reference_start_Leviticus 4:20_reference_end_ _reference_start_Leviticus 4:20_reference_end_ _reference_start_Leviticus 4:21_reference_end_ _reference_start_Leviticus 4:21_reference_end_ _reference_start_Leviticus 8:2_reference_end_ _reference_start_Leviticus 8:14_reference_end_ _reference_start_Leviticus 8:14_reference_end_ _reference_start_Leviticus 8:17_reference_end_ _reference_start_Leviticus 16:3_reference_end_ _reference_start_Leviticus 16:6_reference_end_ _reference_start_Leviticus 16:11_reference_end_ _reference_start_Leviticus 16:11_reference_end_ _reference_start_Leviticus 16:14_reference_end_ _reference_start_Leviticus 16:15_reference_end_ _reference_start_Leviticus 16:18_reference_end_ _reference_start_Leviticus 16:27_reference_end_ _reference_start_Leviticus 23:18_reference_end_ _reference_start_Numbers 7:15_reference_end_ _reference_start_Numbers 7:21_reference_end_ _reference_start_Numbers 7:27_reference_end_ _reference_start_Numbers 7:33_reference_end_ _reference_start_Numbers 7:39_reference_end_ _reference_start_Numbers 7:45_reference_end_ _reference_start_Numbers 7:51_reference_end_ _reference_start_Numbers 7:57_reference_end_ _reference_start_Numbers 7:63_reference_end_ _reference_start_Numbers 7:69_reference_end_ _reference_start_Numbers 7:75_reference_end_ _reference_start_Numbers 7:81_reference_end_ _reference_start_Numbers 7:87_reference_end_ _reference_start_Numbers 7:88_reference_end_ _reference_start_Numbers 8:8_reference_end_ _reference_start_Numbers 8:8_reference_end_ _reference_start_Numbers 8:12_reference_end_ _reference_start_Numbers 15:24_reference_end_ _reference_start_Numbers 23:1_reference_end_ _reference_start_Numbers 23:2_reference_end_ _reference_start_Numbers 23:4_reference_end_ _reference_start_Numbers 23:14_reference_end_ _reference_start_Numbers 23:29_reference_end_ _reference_start_Numbers 23:30_reference_end_ _reference_start_Numbers 28:11_reference_end_ _reference_start_Numbers 28:12_reference_end_ _reference_start_Numbers 28:14_reference_end_ _reference_start_Numbers 28:19_reference_end_ _reference_start_Numbers 28:20_reference_end_ _reference_start_Numbers 28:27_reference_end_ _reference_start_Numbers 28:28_reference_end_ _reference_start_Numbers 29:2_reference_end_ _reference_start_Numbers 29:3_reference_end_ _reference_start_Numbers 29:8_reference_end_ _reference_start_Numbers 29:9_reference_end_ _reference_start_Numbers 29:13_reference_end_ _reference_start_Numbers 29:14_reference_end_ _reference_start_Numbers 29:14_reference_end_ _reference_start_Numbers 29:17_reference_end_ _reference_start_Numbers 29:18_reference_end_ _reference_start_Numbers 29:20_reference_end_ _reference_start_Numbers 29:21_reference_end_ _reference_start_Numbers 29:23_reference_end_ _reference_start_Numbers 29:24_reference_end_ _reference_start_Numbers 29:26_reference_end_ _reference_start_Numbers 29:27_reference_end_ _reference_start_Numbers 29:29_reference_end_ _reference_start_Numbers 29:30_reference_end_ _reference_start_Numbers 29:32_reference_end_ _reference_start_Numbers 29:33_reference_end_ _reference_start_Numbers 29:36_reference_end_ _reference_start_Numbers 29:37_reference_end_ _reference_start_Judges 6:25_reference_end_ _reference_start_Judges 6:25_reference_end_ _reference_start_Judges 6:26_reference_end_ _reference_start_Judges 6:28_reference_end_ _reference_start_1 Samuel 1:24_reference_end_ _reference_start_1 Samuel 1:25_reference_end_ _reference_start_1 Kings 18:23_reference_end_ _reference_start_1 Kings 18:23_reference_end_ _reference_start_1 Kings 18:23_reference_end_ _reference_start_1 Kings 18:25_reference_end_ _reference_start_1 Kings 18:26_reference_end_ _reference_start_1 Kings 18:33_reference_end_ _reference_start_1 Chronicles 15:26_reference_end_ _reference_start_1 Chronicles 29:21_reference_end_ _reference_start_2 Chronicles 13:9_reference_end_ _reference_start_2 Chronicles 29:21_reference_end_ _reference_start_2 Chronicles 30:24_reference_end_ _reference_start_2 Chronicles 30:24_reference_end_ _reference_start_Ezra 8:35_reference_end_ _reference_start_Job 42:8_reference_end_ _reference_start_Psalms 22:13_reference_end_ _reference_start_Psalms 50:9_reference_end_ _reference_start_Psalms 51:21_reference_end_ _reference_start_Psalms 69:32_reference_end_ _reference_start_Isaiah 1:11_reference_end_ _reference_start_Isaiah 34:7_reference_end_ _reference_start_Jeremiah 50:27_reference_end_ _reference_start_Ezekiel 39:18_reference_end_ _reference_start_Ezekiel 43:19_reference_end_ _reference_start_Ezekiel 43:21_reference_end_ _reference_start_Ezekiel 43:22_reference_end_ _reference_start_Ezekiel 43:23_reference_end_ _reference_start_Ezekiel 43:25_reference_end_ _reference_start_Ezekiel 45:18_reference_end_ _reference_start_Ezekiel 45:22_reference_end_ _reference_start_Ezekiel 45:23_reference_end_ _reference_start_Ezekiel 45:24_reference_end_ _reference_start_Ezekiel 46:6_reference_end_ _reference_start_Ezekiel 46:7_reference_end_ _reference_start_Ezekiel 46:11_reference_end_ _reference_start_Hosea 14:3_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5( U82 T8" S8 R8E Q83 P82 O8 N8* M8# L8 K8 J8 I8 H8  G8  F8 ! E8  D8  C8  B8  A8  @8  ?8  >8 =8 <8 ;8 :8% 98$ 88! 78 68 58 48 38 28 18 08 /8 .8 -8 ,8 +8 *8 )8 (8 '8 &8 %8 $8 #8 "8 !8 8 8 8 8 8 8 8 8 8 8 8 8 8X 8W C~qdWJ=0# zm`SF9,vi\OB5( < <  <  < < < < < < < < < < <." <+ ; ; :&  :" :" :! : : :) :& :  ~: }: |: {: z:3& y:& x: w: v:  u: t: s: r: q:h p:[ o:: n:# m:" l: k:&' j: i: h9 g9 f9 e9 d9 c8 b8. a8. `8. _8- ^8- ]8- \8- [8+ Z8+ Y8+ X8+ W8+ V8'   i;11;Abadon (the abyss)abadon (the abyss)Hebrew: אֲבַדֹּון \f abîme \cme the abyss, where the dead go \cmf le lieu des morts _reference_start_Proverbs 15:11_reference_end_ _reference_start_Proverbs 27:20_reference_end_:!! :young lionyoung lionTransliteration: kephir _reference_start_Judges 14:5_reference_end_ _reference_start_Job 4:10_reference_end_ _reference_start_Job 38:39_reference_end_ _reference_start_Psalms 17:12_reference_end_ _reference_start_Psalms 34:11_reference_end_ _reference_start_Psalms 35:17_reference_end_ _reference_start_Psalms 58:7_reference_end_ _reference_start_Psalms 91:13_reference_end_ _reference_sF9--E9young hart, stagyoung hart, stagTransliteration: 'ofer _reference_start_Song of Solomon 2:9_reference_end_ _reference_start_Song of Solomon 2:17_reference_end_ _reference_start_Song of Solomon 4:5_reference_end_ _reference_start_Song of Solomon 7:4_reference_end_ _reference_start_Song of Solomon 8:14_reference_end_tart_Psalms 104:21_reference_end_ _reference_start_Proverbs 19:12_reference_end_ _reference_start_Proverbs 20:2_reference_end_ _reference_start_Proverbs 28:1_reference_end_ _reference_start_Isaiah 5:29_reference_end_ _reference_start_Isaiah 11:6_reference_end_ _reference_start_Isaiah 31:4_reference_end_ _reference_start_Jeremiah 2:15_reference_end_ _reference_start_Jeremiah 25:38_reference_end_ _reference_start_Jeremiah 51:38_reference_end_ _reference_start_Ezekiel 19:2_reference_end_ _reference_start_Ezekiel 19:3_reference_end_ _reference_start_Ezekiel 19:5_reference_end_ _reference_start_Ezekiel 19:6_reference_end_ _reference_start_Ezekiel 32:2_reference_end_ _reference_start_Ezekiel 38:13_reference_end_ _reference_start_Ezekiel 41:19_reference_end_ _reference_start_Hosea 5:14_reference_end_ _reference_start_Amos 3:4_reference_end_ _reference_start_Micah 5:7_reference_end_ _reference_start_Nahum 2:12_reference_end_ _reference_start_Nahum 2:14_reference_end_ _reference_start_Zechariah 11:3_reference_end_mpure \cme disgusting morally \cmf horreur moralement \cme disgusting, ritually unclean \cmf horreur, impure rituélement _reference_start_Genesis 43:32_reference_end_ _reference_start_Genesis 46:34_reference_end_ _reference_start_Exodus 8:22_reference_end_ _reference_start_Leviticus 18:22_reference_end_ _reference_start_Leviticus 18:26_reference_end_ _reference_start_Leviticus 18:27_reference_end_ _reference_start_Leviticus 18:29_reference_end_ _reference_start_Leviticus 20:13_reference_end_ _reference_start_Deuteronomy 29:16_reference_end_ _reference_start_Deuteronomy 25:16_reference_end_ _reference_start_Deuteronomy 14:03_reference_end_ _reference_start_Deuteronomy 24:04_reference_end_ _reference_start_Deuteronomy 32:16_reference_end_ _reference_start_2 Kings 23:24_reference_end_ _reference_start_Jeremiah 4:01_reference_end_ _reference_start_Daniel 9:27_reference_end_ _reference_start_Daniel 11:31_reference_end_ _reference_start_Daniel 12:11_reference_end_ _reference_start_Zechariah 9:07_reference_end_ b<##<abominationabominationHebrew: שִׁקּוּץ \f abomination \cme detestable thing, idols & their worship \cmf chose détestée, idols et leur culte \cme detestable thing, unclean food \cmf chose détestée, nouriture i C~qdWJ=0# zm`SF9,vi\OB5( [? Z? Y? X? " W? V? U? T? S?0 R? Q?( P? O? N? M? L? K? J? I? H?" G?" F?  E? D? C? B> A> @> ?= 2 >= ! ==  <=  ;=  :=  9=  8= 0 7=  6=  5= 4= 3= 2= 1= 0= /= .= -= ,= += *= )= (= '=# &=# %=# $=! #= "= !=  =  =  =  = <&  < <  < _Exodus 31:09_reference_end_ _reference_start_Exodus 30:01_reference_end_ _reference_start_Exodus 30:27_reference_end_ _reference_start_Exodus 31:08_reference_end_ _reference_start_Exodus 17:15_reference_end_ _reference_start_Exodus 20:24_reference_end_ _reference_start_Exodus 20:25_reference_end_ _reference_start_Exodus 20:26_reference_end_ _reference_start_Exodus 21:14_reference_end_ _reference_start_Exodus 24:04_reference_end_ _reference_start_Exodus 24:06_reference_end_ _reference_start_Leviticus 5:12_reference_end_ _reference_start_Joshua 8:30_reference_end_ _reference_start_1 Kings 6:20_reference_end_ _reference_start_1 Kings 6:22_reference_end_ _reference_start_1 Kings 7:48_reference_end_ _reference_start_1 Kings 8:22_reference_end_ _reference_start_1 Kings 8:31_reference_end_ _reference_start_1 Kings 9:25_reference_end_ _reference_start_1 Kings 6:20_reference_end_ _reference_start_1 Kings 6:22_reference_end_ _reference_start_1 Kings 12:33_reference_end_ _reference_start_1 Kings 1:50_reference_end_ kk =w=altaraltarHebrew: מִזבֵּחַ \f autel \cme altar in the temple in Jerusalem \cmf autel dans le temple à Jerusalem \cme altar of burnt offerings \cmf autel de haulocaustes \cme altar of incense \cmf autel de parfums \cme something built (of stones) to make sacrifices on \cmf construit (de pierres) pour y faire des sacrifices _reference_start_Genesis 8:20_reference_end_ _reference_start_Genesis 12:07_reference_end_ _reference_start_Genesis 12:08_reference_end_ _reference_start_Genesis 13:04_reference_end_ _reference_start_Genesis 13:18_reference_end_ _reference_start_Genesis 22:09_reference_end_ _reference_start_Genesis 26:25_reference_end_ _reference_start_Genesis 33:20_reference_end_ _reference_start_Genesis 35:01_reference_end_ _reference_start_Genesis 35:03_reference_end_ _reference_start_Genesis 35:07_reference_end_ _reference_start_Exodus 30:28_reference_end_ _reference_start ? ?angelangelHebrew: .מַלְאָךְ \f ange \cme angel as messenger from God \cmf messager angélique envoyé par Dieu \cme person sent as messenger \cmf personne qui apporte un message \cme theophany (God appearing to men) \cmf théophanie (Dieu apparait aux hommes) _reference_start_Genesis 19:01_reference_end_ _reference_start_Genesis 19:15_reference_end_ _reference_start_Genesis 28:12_reference_end_ _reference_start_Genesis 32:02_reference_end_ _reference_start_Genesis 34:04_reference_end_ _reference_start_Genesis 34:!>++i>Ancient of Daysancient of daysHebrew: עַתִּיק יֹומִין \f Ancien des jours \cme The Ancient of Days \cmf L'Ancien des jours _reference_start_Daniel 7:09_reference_end_ _reference_start_Daniel 7:13_reference_end_ _reference_start_Daniel 7:22_reference_end_07_reference_end_ _reference_start_Genesis 16:07_reference_end_ _reference_start_Genesis 16:09_reference_end_ _reference_start_Genesis 16:10_reference_end_ _reference_start_Genesis 16:11_reference_end_ _reference_start_Genesis 21:17_reference_end_ _reference_start_Genesis 22:11_reference_end_ _reference_start_Genesis 22:15_reference_end_ _reference_start_Genesis 24:07_reference_end_ _reference_start_Genesis 24:40_reference_end_ _reference_start_Genesis 31:11_reference_end_ _reference_start_Genesis 48:16_reference_end_ _reference_start_Exodus 3:02_reference_end_ _reference_start_Exodus 14:19_reference_end_ _reference_start_Exodus 23:20_reference_end_ _reference_start_Exodus 23:23_reference_end_ _reference_start_Exodus 32:34_reference_end_ _reference_start_Numbers 20:14_reference_end_ _reference_start_Numbers 20:16_reference_end_ _reference_start_Deuteronomy 2:26_reference_end_ _reference_start_Joshua 6:17_reference_end_ _reference_start_Daniel 3:28_reference_end_ _reference_start_Daniel 6:23_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5( B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B  B B, B ! B B ~B2 }A  |A  {A  zA  yAA  xA( wA$ vA) u@  t@  s@T r@i q@ p@ o@  n@  m@  l@  k@  j@  i@ 3 h@  g@  f@  e@  d@  c@  b@  a@  `@  _@ ^? ]? \?_reference_start_1 Samuel 12:03_reference_end_ _reference_start_1 Samuel 12:05_reference_end_ _reference_start_1 Samuel 16:06_reference_end_ _reference_start_1 Samuel 24:07_reference_end_ _reference_start_1 Samuel 24:11_reference_end_ _reference_start_1 Samuel 26:09_reference_end_ _reference_start_1 Samuel 26:11_reference_end_ _reference_start_1 Samuel 26:16_reference_end_ _reference_start_1 Samuel 26:23_reference_end_ _reference_start_2 Samuel 22:51_reference_end_ _reference_start_2 Samuel 1:14_reference_end_ _reference_start_2 Samuel 1:16_reference_end_ _reference_start_2 Samuel 19:22_reference_end_ _reference_start_2 Samuel 23:01_reference_end_ _reference_start_2 Samuel 1:21_reference_end_ _reference_start_1 Chronicles 16:22_reference_end_ _reference_start_Psalms 2:02_reference_end_ _reference_start_Psalms 28:08_reference_end_ _reference_start_Psalms 105:15_reference_end_ _reference_start_Psalms 84:10_reference_end_ _reference_start_Daniel 9:25_reference_end_ _reference_start_Daniel 9:26_reference_end_ @Y@anointedanointedHebrew: מָשִׁיחַ \f oint \cme Davidic dynasy with Messianic ideals \cmf dynastie de David avec idéals messianique \cme king of Israel, annointed by God's command \cmf roi d'Israël oint par commandemant de Dieu \cme Messianic prince \cmf prince messianique \cme patriarchs of Israel \cmf partriarches d'Israël \cme putting oil or something on something to consecrate it \cmf metre huile ou autre substance sur qqch pour le consacrer _reference_start_Leviticus 4:03_reference_end_ # ,,hB77uBark (of the covenant)ark (of the covenant)Hebrew: אֲרֹון בְּרִית \f coffre (de l&aA##Aanoint (to)anoint (to)Hebrew: מָשַׁח \f oindre \cme put oil on for personal care \cmf mettre de l'huile pour des soins personnels \cme setting apart (by annointing with oil) \cmf designer pour qqch spécial (par onction d'huile) _reference_start_Exodus 28:41_reference_end_ _reference_start_Exodus 29:36_reference_end_ _reference_start_Deuteronomy 28:40_reference_end_ _reference_start_Jude 9:08_reference_end_ _reference_start_1 Samuel 9:16_reference_end_ _reference_start_2 Samuel 14:02_reference_end_ _reference_start_1 Kings 19:16_reference_end_ _reference_start_Daniel 9:24_reference_end_''alliance) \cme ark representing God's power \cmf boite réprésentant le pouvoir de Dieu \cme box representing God's presence \cmf boite réprésentant la présence de Dieu \cme coffin \cmf cercueil _reference_start_Genesis 50:26_reference_end_ _reference_start_Exodus 25:10_reference_end_ _reference_start_Exodus 25:14_reference_end_ _reference_start_Numbers 10:33_reference_end_ _reference_start_Numbers 14:44_reference_end_ _reference_start_Joshua 6:08_reference_end_ _reference_start_1 Samuel 3:03_reference_end_ _reference_start_1 Samuel 4:03_reference_end_ _reference_start_1 Samuel 4:04_reference_end_ _reference_start_1 Samuel 4:05_reference_end_ _reference_start_1 Samuel 4:06_reference_end_ _reference_start_1 Samuel 4:11_reference_end_ _reference_start_1 Samuel 4:13_reference_end_ _reference_start_1 Samuel 4:17_reference_end_ _reference_start_1 Samuel 4:18_reference_end_ _reference_start_1 Samuel 4:19_reference_end_ _reference_start_1 Samuel 4:21_reference_end_ _reference_start_1 Samuel 4:22_reference_e(nd_ _reference_start_1 Samuel 5:01_reference_end_ _reference_start_1 Samuel 5:02_reference_end_ _reference_start_1 Samuel 5:03_reference_end_ _reference_start_1 Samuel 5:04_reference_end_ _reference_start_1 Samuel 5:07_reference_end_ _reference_start_1 Samuel 5:08_reference_end_ _reference_start_1 Samuel 5:10_reference_end_ _reference_start_1 Samuel 5:11_reference_end_ _reference_start_1 Samuel 6:01_reference_end_ _reference_start_1 Samuel 6:02_reference_end_ _reference_start_1 Samuel 6:03_reference_end_ _reference_start_1 Samuel 6:08_reference_end_ _reference_start_1 Samuel 6:11_reference_end_ _reference_start_1 Samuel 6:13_reference_end_ _reference_start_1 Samuel 6:15_reference_end_ _reference_start_1 Samuel 6:18_reference_end_ _reference_start_1 Samuel 6:19_reference_end_ _reference_start_1 Samuel 6:21_reference_end_ _reference_start_1 Samuel 7:01_reference_end_ _reference_start_1 Samuel 7:02_reference_end_ _reference_start_1 Samuel 14:18_reference_end_ _reference_start_2 Samuel 6:02_reference_end_ _re)ference_start_2 Samuel 6:03_reference_end_ _reference_start_2 Samuel 6:04_reference_end_ _reference_start_2 Samuel 6:06_reference_end_ _reference_start_2 Samuel 6:07_reference_end_ _reference_start_2 Samuel 6:09_reference_end_ _reference_start_2 Samuel 6:10_reference_end_ _reference_start_2 Samuel 6:11_reference_end_ _reference_start_2 Samuel 6:12_reference_end_ _reference_start_2 Samuel 6:13_reference_end_ _reference_start_2 Samuel 6:15_reference_end_ _reference_start_2 Samuel 6:16_reference_end_ _reference_start_2 Samuel 6:17_reference_end_ _reference_start_2 Samuel 7:02_reference_end_ _reference_start_2 Samuel 11:11_reference_end_ _reference_start_2 Samuel 15:24_reference_end_ _reference_start_2 Samuel 15:25_reference_end_ _reference_start_2 Samuel 15:29_reference_end_ _reference_start_1 Kings 2:26_reference_end_ _reference_start_1 Kings 3:15_reference_end_ _reference_start_1 Kings 6:19_reference_end_ _reference_start_1 Kings 8:01_reference_end_ _reference_start_1 Kings 8:03_reference_end_ _reference_s*tart_1 Kings 8:04_reference_end_ _reference_start_1 Kings 8:05_reference_end_ _reference_start_1 Kings 8:06_reference_end_ _reference_start_1 Kings 8:07_reference_end_ _reference_start_1 Kings 8:09_reference_end_ _reference_start_1 Kings 8:21_reference_end_ _reference_start_1 Chronicles 6:16_reference_end_ _reference_start_1 Chronicles 13:03_reference_end_ _reference_start_1 Chronicles 13:05_reference_end_ _reference_start_1 Chronicles 13:06_reference_end_ _reference_start_1 Chronicles 13:07_reference_end_ _reference_start_1 Chronicles 13:09_reference_end_ _reference_start_1 Chronicles 13:10_reference_end_ _reference_start_1 Chronicles 13:12_reference_end_ _reference_start_1 Chronicles 13:13_reference_end_ _reference_start_1 Chronicles 13:14_reference_end_ _reference_start_1 Chronicles 15:01_reference_end_ _reference_start_1 Chronicles 15:02_reference_end_ _reference_start_1 Chronicles 15:03_reference_end_ _reference_start_1 Chronicles 15:12_reference_end_ _reference_start_1 Chronicles 15:14_reference_end_ _reference_start_1 Chronicles 15:15_reference_end_ _reference_start_1 Chronicles 15:23_reference_end_ _reference_start_1 Chronicles 15:24_reference_end_ _reference_start_1 Chronicles 15:25_reference_end_ _reference_start_1 Chronicles 15:26_reference_end_ _reference_start_1 Chronicles 15:27_reference_end_ _reference_start_1 Chronicles 15:28_reference_end_ _reference_start_1 Chronicles 15:29_reference_end_ _reference_start_1 Chronicles 16:01_reference_end_ _reference_start_1 Chronicles 16:04_reference_end_ _reference_start_1 Chronicles 16:06_reference_end_ _reference_start_1 Chronicles 16:37_reference_end_ _reference_start_1 Chronicles 17:01_reference_end_ _reference_start_1 Chronicles 22:19_reference_end_ _reference_start_1 Chronicles 28:02_reference_end_ _reference_start_1 Chronicles 28:18_reference_end_ _reference_start_2 Chronicles 6:41_reference_end_ _reference_start_Psalms 132:08_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5( aB) `B  _B  ^B  ]B  \B % [B  ZB  YB  XB  WB  VB  UB  TB  SB  RB  QB  PB  OB  NB  MB  LB  KB  JB IB HB GB FB  EB  DB  CB  BB  AB  @B  ?B  >B  =B  <B  ;B  :B  9B  8B  7B  6B  5B  4B  3B 2B  1B  0B  /B  .B  -B  ,B  +B  *B  )B  (B  'B  &B  %B  $B  #B  "B  !B  B  B  C}pcVI</"yl_RE8+uh[NA4'  $E #E "E !E E  E  D  D  D# D C C C C C C  C  C  C  C  C  C  C A C / C  C 7 C  C  CA C  C C C C C C C C ~C }C |C {C# zC yC xC wC vC uC tC sC  rC qC pC oC nC mC lC / kC  jC  iC  hC gC  fC0 eC# dC cC1 bB.odus 16:09_reference_end_ _reference_start_Exodus 16:10_reference_end_ _reference_start_Exodus 16:22_reference_end_ _reference_start_Exodus 17:01_reference_end_ _reference_start_Numbers 10:07_reference_end_ _reference_start_Numbers 14:05_reference_end_ _reference_start_Numbers 16:03_reference_end_ _reference_start_Numbers 20:04_reference_end_ _reference_start_Numbers 20:06_reference_end_ _reference_start_Numbers 20:10_reference_end_ _reference_start_Numbers 20:12_reference_end_ _reference_start_Numbers 14:27_reference_end_ _reference_start_Numbers 14:35_reference_end_ _reference_start_Numbers 20:01_reference_end_ _reference_start_Numbers 20:02_reference_end_ _reference_start_Numbers 20:08_reference_end_ _reference_start_Numbers 20:11_reference_end_ _reference_start_Numbers 20:22_reference_end_ _reference_start_Numbers 20:27_reference_end_ _reference_start_Numbers 20:29_reference_end_ _reference_start_Numbers 22:04_reference_end_ _reference_start_Deuteronomy 5:19_reference_end_ _reference_start_Deuteronomy 9:10_reference_end_ _reference_start_Deuteronomy 18:16_reference_end_ _reference_start_Joshua 9:15_reference_end_ _reference_start_Jude 20:02_reference_end_ _reference_start_1 Samuel 8:14_reference_end_ _reference_start_1 Samuel 8:22_reference_end_ _reference_start_1 Samuel 8:55_reference_end_ _reference_start_1 Samuel 12:03_reference_end_ _reference_start_1 Samuel 17:47_reference_end_ _reference_start_1 Samuel 8:65_reference_end_ _reference_start_1 Kings 8:05_reference_end_ _reference_start_1 Chronicles 13:02_reference_end_ _reference_start_1 Chronicles 13:04_reference_end_ _reference_start_1 Chronicles 28:08_reference_end_ _reference_start_1 Chronicles 29:01_reference_end_ _reference_start_1 Chronicles 29:10_reference_end_ _reference_start_1 Chronicles 29:20_reference_end_ _reference_start_2 Chronicles 7:08_reference_end_ _reference_start_Psalms 1:05_reference_end_ _reference_start_Proverbs 26:26_reference_end_ _reference_start_Proverbs 5:14_reference_end_ _reference_start_Proverbs 21:16_reference_end_ TCCassemblyassemblyHebrew: קָהָל \f assemblée \cme congregation, organized body of people \cmf congrégation, group organizé \cme group assembled together, or acting together or in same way \cmf un group réuni, ou qui agi ensemble ou de la même façon \cme group called together for special reason \cmf un group rasemblé pour une raison spécifique \cme large number, multitude \cmf grande nombre, multitude _reference_start_Genesis 49:06_reference_end_ _reference_start_Genesis 28:03_reference_end_ _reference_start_Genesis 35:11_reference_end_ _reference_start_Genesis 48:04_reference_end_ _reference_start_Exodus 12:06_reference_end_ _reference_start_Exodus 16:03_reference_end_ _reference_start_Exodus 12:03_reference_end_ _reference_start_Exodus 12:06_reference_end_ _reference_start_Exodus 12:19_reference_end_ _reference_start_Exodus 12:47_reference_end_ _reference_start_Exodus 16:01_reference_end_ _reference_start_Exodus 16:02_reference_end_ _reference_start_Ex- E!!Eatone (to)atone (to)Hebrew: כִּפֶר \f expier \cme appease, make ammends \cmf apaiser, réparer ses torts \cme God treates sin as covered, atoned without sacrifice \cmf Dieu considere le péché couvrt, expié sans sacrifice \cme man covers over, atones for sin without sacrifice \cmf uner personne couvre, expie un péché sans sacrifice \cme sin covered over for by sacrifice or payment \cmf le péché couvert par sacrifice ou payment \cme sin is covered over apart from sacrifice \cmf le péché couvert apart le sacrifice _refe1:DIDatonementatonementHebrew: כֹּפֶר \f expiation \cme price for ransom of a life \cmf le prix pour rançon d'une vie _reference_start_Exodus 21:30_reference_end_ _reference_start_Numbers 35:31_reference_end_ _reference_start_1 Samuel 12:03_reference_end_ _reference_start_Proverbs 13:08_reference_end_rence_start_Genesis 32:21_reference_end_ _reference_start_Exodus 32:30_reference_end_ _reference_start_Exodus 30:15_reference_end_ _reference_start_Leviticus 25:09_reference_end_ _reference_start_Leviticus 5:06_reference_end_ _reference_start_Leviticus 5:10_reference_end_ _reference_start_Leviticus 5:13_reference_end_ _reference_start_Leviticus 5:16_reference_end_ _reference_start_Leviticus 5:18_reference_end_ _reference_start_Leviticus 5:26_reference_end_ _reference_start_Leviticus 16:30_reference_end_ _reference_start_Leviticus 17:11_reference_end_ _reference_start_Leviticus 17:11_reference_end_ _reference_start_Numbers 17:11_reference_end_ _reference_start_Numbers 8:21_reference_end_ _reference_start_Numbers 31:50_reference_end_ _reference_start_Deuteronomy 32:43_reference_end_ _reference_start_2 Samuel 21:03_reference_end_ _reference_start_Proverbs 16:14_reference_end_ _reference_start_Proverbs 16:06_reference_end_ _reference_start_Isaiah 6:07_reference_end_ _reference_start_Daniel 9:24_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5( gI  fI  eI  dI cI bI aI  `I1 _I1 ^I ]I) \I& [I$ ZI# YI XI1 WI' VI! UI  TH SH RH ! QH PG  OG  NG MG LGN KG JG  IG  HG  GG  FG  EG  DG  CG  BG # AG  @G ?G >G =G <G ;G :G 9G 8G 7G* 6F 5F- 4E  3E 2E 1E 0E  /E + .E2 -E ,E +E *E )E (E 'E &E %E BH## Hbetray (to)betray (to)Hebrew: בָּגַד \f trahir \cme betray, break faith with \cmf trahir _reference_start_Exodus 21:08_reference_end_ _reference_start_1 Samuel 14:33_reference_end_ _reference_start_Psalms 25:03_reference_end_ _reference_start_Proverbs 2:22_reference_end_+G%%Gbelieve (to)believe (to)Hebrew: אָמַןּ \f croire \cme accept statement as true \cmf accepter une déclaration comme vrai \cme believe in someone or in God \cmf croire en qqn ou en Dieu \cme faithful \cmf qqn en qui on fait confiance, fiable _reference_start_Genesis 42:20_reference_end_ _reference_start_Genesis 15:06_reference_end_ _reference_start_Exodus 4:01_reference_end_ _reference_start_Exodus 4:05_reference4F//;Fbelieve, not (to)believe, not (to)Hebrew: לֹא אָמַן \f ne pas croire \cme not accept statement as true \cmf ne pas accepter une déclaration comme vrai _reference_start_Genesis 45:26_reference_end_ _reference_start_Exodus 4:09_reference_end__end_ _reference_start_Exodus 4:08_reference_end_ _reference_start_Exodus 4:09_reference_end_ _reference_start_Exodus 4:31_reference_end_ _reference_start_Exodus 14:31_reference_end_ _reference_start_Exodus 19:09_reference_end_ _reference_start_Numbers 20:12_reference_end_ _reference_start_1 Samuel 27:12_reference_end_ _reference_start_1 Samuel 2:35_reference_end_ _reference_start_1 Samuel 3:20_reference_end_ _reference_start_1 Samuel 22:14_reference_end_ _reference_start_1 Samuel 22:14_reference_end_ _reference_start_2 Samuel 20:19_reference_end_ _reference_start_1 Kings 8:26_reference_end_ _reference_start_1 Kings 10:07_reference_end_ _reference_start_1 Chronicles 17:23_reference_end_ _reference_start_1 Chronicles 17:24_reference_end_ _reference_start_Psalms 19:08_reference_end_ _reference_start_Psalms 78:22_reference_end_ _reference_start_Proverbs 14:05_reference_end_ _reference_start_Proverbs 27:06_reference_end_ _reference_start_Jeremiah 12:06_reference_end_ _reference_start_Jonah 3:05_reference_end_ference_start_Genesis 12:02_reference_end_ _reference_start_Genesis 33:11_reference_end_ _reference_start_Genesis 39:05_reference_end_ _reference_start_Genesis 49:25_reference_end_ _reference_start_Genesis 27:12_reference_end_ _reference_start_Genesis 27:35_reference_end_ _reference_start_Genesis 27:36_reference_end_ _reference_start_Genesis 27:38_reference_end_ _reference_start_Genesis 27:41_reference_end_ _reference_start_Genesis 28:04_reference_end_ _reference_start_Genesis 49:26_reference_end_ _reference_start_Genesis 49:28_reference_end_ _reference_start_Exodus 32:29_reference_end_ _reference_start_Leviticus 25:21_reference_end_ _reference_start_Deuteronomy 28:02_reference_end_ _reference_start_Deuteronomy 28:08_reference_end_ _reference_start_1 Samuel 25:27_reference_end_ _reference_start_1 Samuel 30:26_reference_end_ _reference_start_2 Samuel 7:29_reference_end_ _reference_start_Psalms 24:05_reference_end_ _reference_start_Proverbs 11:25_reference_end_ _reference_start_Proverbs 11:11_reference_end_ bDbBJ!!UJbless (to)bless (to)Hebrew: בָרַךְ \f bénir \cme be in a desirable position due to God's goodness \cmf être dans une postition désirable \cme curse \cmf maudire \cme God is subject, blesses \cmf Dieu béni, en tant que sujet \cme good things from God \cmf bienfaits de Dieu \cme greeting, leavetaking \cmf salutation, dire adieu \cme person bless another informally \cmf une personne béni une autre informellement \cme person praises, thanks God \cmf qqn80I9IblessingblessingHebrew: בְּרָכָה \f bénédiction \cme be in a desirable position due to God's goodness \cmf une position favorable due à la bonté de Dieu \cme gift, present \cmf cadeau \cme God is subject, blesses \cmf Dieu béni qqn \cme good things from God \cmf de bonne choses donnée par Dieu \cme sr person blesses jr person formally \cmf bénédiction formelle d'une personne âgé à une personne jeunne _re5 C~qdWJ=0# zm`SF9,vi\OB5( *J1 )J1 (J0 'J0 &J0 %J/ $J/ #J  "J) !J& J" J! J J J J J J J J J< J J0 J J J0 J  J J7 J J J J J1 J0 J0 J' J# J J J J J J  ~J }J |J {J zJ yJ xJ! wJ vJ uJ tJ sJ# rJ qJ pJ oJ nJ mJ lJ  kJ  jI iI  hI9 loue, remercie Dieu \cme sr person blesses jr person formally \cmf qqn plus âgé béni qqn de plus jeune \cme thank \cmf remercier _reference_start_Genesis 9:26_reference_end_ _reference_start_Genesis 12:03_reference_end_ _reference_start_Genesis 17:16_reference_end_ _reference_start_Genesis 17:20_reference_end_ _reference_start_Genesis 18:18_reference_end_ _reference_start_Genesis 22:18_reference_end_ _reference_start_Genesis 24:01_reference_end_ _reference_start_Genesis 24:31_reference_end_ _reference_start_Genesis 24:35_reference_end_ _reference_start_Genesis 26:04_reference_end_ _reference_start_Genesis 26:29_reference_end_ _reference_start_Genesis 27:27_reference_end_ _reference_start_Genesis 27:29_reference_end_ _reference_start_Genesis 27:33_reference_end_ _reference_start_Genesis 28:03_reference_end_ _reference_start_Genesis 28:14_reference_end_ _reference_start_Genesis 1:22_reference_end_ _reference_start_Genesis 1:28_reference_end_ _reference_start_Genesis 2:03_reference_end_ _reference_start_:Genesis 5:02_reference_end_ _reference_start_Genesis 9:01_reference_end_ _reference_start_Genesis 22:17_reference_end_ _reference_start_Genesis 25:11_reference_end_ _reference_start_Genesis 26:03_reference_end_ _reference_start_Genesis 26:12_reference_end_ _reference_start_Genesis 26:24_reference_end_ _reference_start_Genesis 35:09_reference_end_ _reference_start_Genesis 39:05_reference_end_ _reference_start_Genesis 48:03_reference_end_ _reference_start_Genesis 48:16_reference_end_ _reference_start_Genesis 49:25_reference_end_ _reference_start_Genesis 17:16_reference_end_ _reference_start_Genesis 27:27_reference_end_ _reference_start_Genesis 28:01_reference_end_ _reference_start_Genesis 28:06_reference_end_ _reference_start_Genesis 31:55_reference_end_ _reference_start_Genesis 27:29_reference_end_ _reference_start_Genesis 32:30_reference_end_ _reference_start_Genesis 48:20_reference_end_ _reference_start_Genesis 14:20_reference_end_ _reference_start_Genesis 24:27_reference_end_ _reference_start_Genesis 24;:48_reference_end_ _reference_start_Genesis 14:19_reference_end_ _reference_start_Genesis 24:60_reference_end_ _reference_start_Genesis 27:04_reference_end_ _reference_start_Genesis 27:07_reference_end_ _reference_start_Genesis 27:10_reference_end_ _reference_start_Genesis 27:19_reference_end_ _reference_start_Genesis 27:23_reference_end_ _reference_start_Genesis 27:25_reference_end_ _reference_start_Genesis 27:30_reference_end_ _reference_start_Genesis 27:31_reference_end_ _reference_start_Genesis 27:33_reference_end_ _reference_start_Genesis 27:34_reference_end_ _reference_start_Genesis 27:38_reference_end_ _reference_start_Genesis 27:41_reference_end_ _reference_start_Genesis 32:27_reference_end_ _reference_start_Genesis 47:07_reference_end_ _reference_start_Genesis 47:10_reference_end_ _reference_start_Genesis 48:09_reference_end_ _reference_start_Genesis 48:15_reference_end_ _reference_start_Genesis 48:20_reference_end_ _reference_start_Genesis 49:28_reference_end_ _reference_start_Genesis 49:28_refeJ ! =J ' <J  ;J :J  9J  8J  7J 6J  5J 4J 3J 2J 1J 0J /J .J -J ,J +J  KyKbloodbloodHebrew: ַדָּם \f sang \cme blood important in sacrifice \cmf important dans le sacrifice \cme responsibility, guilt \cmf résponsabilité, culpabilité \cme revenge for death \cmf vangence pour la mort de qqn _reference_start_Exodus 12:07_reference_end_ _reference_start_Exodus 12:13_reference_end_ _reference_start_Exodus 12:22_reference_end_ _reference_start_Exodus 12:23_reference_end_ _reference_start_Exodus 23:18_reference_end_ _reference_start_Exodus 24:06_reference_end_ _reference_start_Exodus 24:08_reference_end_ _reference_start_Exodus 29:10_reference_end_ _reference_start_Leviticus 5:09_reference_end_ _reference_start_2 Samuel 1:16_reference_end_ _reference_start_2 Samuel 3:27_reference_end_ _reference_start_2 Samuel 3:28_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5( 0L  /LA  .L7 -L5 ,L +L *L ! )L  (L  'L &L  %L $L  #L "L !L L L1 L L L . L  L L L L L L) L) L) L) L) L( L L L L L L L  L  L L L L L L L L L ~L }L  |L% {L zL yL xL wK  vK  uK  tK sK rK qK pK oK  nK Benesis 17:13_reference_end_ _reference_start_Genesis 29:14_reference_end_ _reference_start_Genesis 37:27_reference_end_ _reference_start_Genesis 9:04_reference_end_ _reference_start_Genesis 6:03_reference_end_ _reference_start_Genesis 6:12_reference_end_ _reference_start_Genesis 6:13_reference_end_ _reference_start_Genesis 6:17_reference_end_ _reference_start_Genesis 6:19_reference_end_ _reference_start_Genesis 7:15_reference_end_ _reference_start_Genesis 7:16_reference_end_ _reference_start_Genesis 7:21_reference_end_ _reference_start_Genesis 8:17_reference_end_ _reference_start_Genesis 9:11_reference_end_ _reference_start_Genesis 9:15_reference_end_ _reference_start_Genesis 9:17_reference_end_ _reference_start_Genesis 17:11_reference_end_ _reference_start_Genesis 17:14_reference_end_ _reference_start_Genesis 17:23_reference_end_ _reference_start_Genesis 17:24_reference_end_ _reference_start_Genesis 17:25_reference_end_ _reference_start_Genesis 2:21_reference_end_ _reference_start_Genesis 40:19_referenceC_end_ _reference_start_Genesis 41:02_reference_end_ _reference_start_Genesis 41:03_reference_end_ _reference_start_Genesis 41:04_reference_end_ _reference_start_Genesis 41:18_reference_end_ _reference_start_Genesis 41:19_reference_end_ _reference_start_Exodus 16:03_reference_end_ _reference_start_Exodus 16:08_reference_end_ _reference_start_Exodus 16:12_reference_end_ _reference_start_Exodus 21:28_reference_end_ _reference_start_Exodus 22:30_reference_end_ _reference_start_Exodus 12:08_reference_end_ _reference_start_Exodus 12:46_reference_end_ _reference_start_Exodus 4:07_reference_end_ _reference_start_Leviticus 18:06_reference_end_ _reference_start_Leviticus 25:49_reference_end_ _reference_start_Leviticus 15:02_reference_end_ _reference_start_Leviticus 4:11_reference_end_ _reference_start_Leviticus 7:15-21_reference_end_ _reference_start_Leviticus 26:29_reference_end_ _reference_start_Leviticus 13:26_reference_end_ _reference_start_Leviticus 19:28_reference_end_ _reference_start_Numbers 11:04_referenceD_end_ _reference_start_Numbers 11:13_reference_end_ _reference_start_Numbers 11:18_reference_end_ _reference_start_Numbers 11:21_reference_end_ _reference_start_Numbers 11:33_reference_end_ _reference_start_Numbers 19:05_reference_end_ _reference_start_Numbers 8:07_reference_end_ _reference_start_Deuteronomy 28:53_reference_end_ _reference_start_Deuteronomy 28:55_reference_end_ _reference_start_Jude 9:02_reference_end_ _reference_start_1 Samuel 2:13_reference_end_ _reference_start_1 Samuel 2:15_reference_end_ _reference_start_1 Samuel 17:44_reference_end_ _reference_start_2 Samuel 5:01_reference_end_ _reference_start_2 Samuel 19:13_reference_end_ _reference_start_2 Samuel 19:14_reference_end_ _reference_start_1 Kings 17:06_reference_end_ _reference_start_1 Kings 19:21_reference_end_ _reference_start_1 Kings 21:27_reference_end_ _reference_start_1 Chronicles 11:01_reference_end_ _reference_start_2 Chronicles 32:08_reference_end_ _reference_start_Nehemiah 5:08_reference_end_ _reference_start_Job 10:04_referEence_end_ _reference_start_Job 2:05_reference_end_ _reference_start_Job 4:15_reference_end_ _reference_start_Psalms 56:05_reference_end_ _reference_start_Psalms 145:21_reference_end_ _reference_start_Psalms 56:05_reference_end_ _reference_start_Psalms 56:12_reference_end_ _reference_start_Psalms 63:01_reference_end_ _reference_start_Psalms 78:38_reference_end_ _reference_start_Psalms 38:04_reference_end_ _reference_start_Psalms 119:120_reference_end_ _reference_start_Proverbs 4:22_reference_end_ _reference_start_Proverbs 14:30_reference_end_ _reference_start_Ecclesiastes 2:03_reference_end_ _reference_start_Isaiah 22:13_reference_end_ _reference_start_Isaiah 44:16_reference_end_ _reference_start_Isaiah 40:05_reference_end_ _reference_start_Isaiah 49:26_reference_end_ _reference_start_Isaiah 49:26_reference_end_ _reference_start_Lamentations 3:04_reference_end_ _reference_start_Ezekiel 37:05_reference_end_ _reference_start_Daniel 1:15_reference_end_ _reference_start_Daniel 10:03_reference_end_ _reference_start_Daniel 2:11_reference_end_ _reference_start_Daniel 4:09_reference_end_ _reference_start_Daniel 7:05_reference_end_ Hebrew: קֶרֶב \f intestins, organs intérieurs \cme (say) to oneself \cmf (dire) à soi-même \cme inner part of something or someone \cmf partie interrieure de qqch ou qqn \cme part of person with thoughts, ideas, emotions \cmf partie d'une personne avec penseés, idées, emotions \cme physical internal organs \cmf organs internes physiques _reference_start_Genesis 18:12_reference_end_ _reference_start_Genesis 18:24_reference_end_ _reference_start_Genesis 45:06_reference_end_ _reference_start_Genesis 25:22_reference_end_ _reference_start_Genesis 41:21_reference_end_ _reference_start_Exodus 12:09_reference_end_ _reference_start_1 Samuel 25:37_reference_end_ _reference_start_1 Kings 3:28_reference_end_ _reference_start_Psalms 51:12_reference_end_ _reference_start_Proverbs 14:33_reference_end_ _reference_start_Proverbs 26:24_reference_end_ _reference_start_Jeremiah 4:14_reference_end_ MMLLbodybodyHebrew: בָּשָׂר \f corps \cme brother in figurative sense, relative \cmf frère (sens figuré), parent \cme flesh, meat \cmf viande, chair \cme human being \cmf personne humaine \cme human nature vs God \cmf nature humaine par opposition à Dieu \cme living being, animal or human \cmf tout être vivant, animal ou humain \cme male sexual organ \cmf organe sexuel mâle \cme meat of sacrifice \cmf viande de sacrifice \cme muscle vs bone \cmf le muscle par opposition à les os \cme muscle, flesh \cmf muscle, chair \cme whole body \cmf corps entier _reference_start_Genesis 2:23_reference_end_ _reference_start_Genesis 2:24_reference_end_ _reference_start_GA C~qdWJ=/"yl_RE8+uh[NA4'  sN rN qN pN oM  nM  mM lM kMG jM iM hM  gM  fM  eM  dM cM bM aL `L _L! ^L3 ]L  \L % [L ZL) YL XL- WL VL UL TL SL RL  QL PL% OL NL1 ML1 LL( KL, JL IL HL GL FLwx EL& DLN& CL? BL8 AL8 @L ?L8 >L =L <L  ;L :L  9L  8L  7L  6L  5L  4L  3L  2L , 1L  11KMwMbowelsbowelsHebrew: מֶעֵה \f intestins \cme inner part of something \cmf partie intérieure de qqch \cme intestines, inner organs \cmf organs intérieurs \cme metonymy for sperm and egg \cmf métonomie pour oeuf et sperme \cme part of person with emotions, pity \cmf partie d'une personne avec des sentiments, pitié _reference_start_Genesis 15:04_reference_end_ _reference_start_Genesis 25:23_reference_end_ _reference_start_Numbers 5:22_reference_end_ _reference_start_2 Samuel 20:10_reference_end_ _reference_start_2 Samuel 7:12_reference_end_ _reference_start_2 Samuel 16:11_reference_end_ _reference_start_2 Samuel 16:11_reference_end_ _reference_start_2 Chronicles 21:15_reference_end_ _reference_start_Job 30:27_reference_end_ _reference_start_Psalms 71:06_reference_end_ _reference_start_Isaiah 16:11_reference_end_ _reference_start_Jeremiah 31:20_reference_end_ _reference_start_Jonah 2:02_reference_end_ _reference_start_Jonah 2:01_reference_end_eference_start_Exodus 34:14_reference_end_ _reference_start_1 Samuel 1:03_reference_end_ _reference_start_1 Samuel 1:19_reference_end_ _reference_start_1 Samuel 1:28_reference_end_ _reference_start_1 Samuel 15:25_reference_end_ _reference_start_1 Samuel 15:30_reference_end_ _reference_start_1 Samuel 15:31_reference_end_ _reference_start_2 Samuel 12:20_reference_end_ _reference_start_2 Samuel 15:32_reference_end_ _reference_start_1 Kings 1:47_reference_end_ _reference_start_1 Kings 9:06_reference_end_ _reference_start_1 Kings 9:09_reference_end_ _reference_start_1 Kings 11:33_reference_end_ _reference_start_1 Kings 16:31_reference_end_ _reference_start_1 Kings 22:54_reference_end_ _reference_start_1 Chronicles 29:20_reference_end_ _reference_start_2 Chronicles 7:03_reference_end_ _reference_start_2 Chronicles 7:22_reference_end_ _reference_start_Psalms 22:27_reference_end_ _reference_start_Psalms 72:11_reference_end_ _reference_start_Psalms 81:09_reference_end_ _reference_start_Psalms 132:07_reference_end_ JJ*N''Nbow & worshipbow & worshipHebrew: חוה / שָׁחַח \f adorer, s'incliner pour adorer \cme bow down to worship God or gods \cmf s'incliner pour adorer Dieu ou des dieux _reference_start_Genesis 18:02_reference_end_ _reference_start_Genesis 19:01_reference_end_ _reference_start_Genesis 22:05_reference_end_ _reference_start_Genesis 24:22_reference_end_ _reference_start_Genesis 24:48_reference_end_ _reference_start_Genesis 24:52_reference_end_ _reference_start_Genesis 47:31_reference_end_ _reference_start_Exodus 4:27_reference_end_ _reference_start_Exodus 12:27_reference_end_ _reference_start_Exodus 20:05_reference_end_ _reference_start_Exodus 24:01_reference_end_ _rI C~qdWJ=0# yl_RE8+uh[NA4'  6P  5P  4P 3P 2P  1P 0P /P  .P  -P  ,P  +P  *P  )PA (P 'P &P %P $P #P" "P" !P P P P  P  P  P6 P. O O  O O  O  O  O O O N NQ NH N N N N  N 6 N  N ! N N  N / N  N  N  N  N  ~N  }N  |N  {N" zN yN xN  wN vN/ uN4 tN0  oPGGcPburnt offering, sacrifice (a)burnt offering, sacrifice (a)Hebrew: .זֶבַח \f haulocauste,MsOGObreathbreathHebrew: נְשָׁמָה \f halaine \cme breath of a person or animal \cmf halaine d'une personne ou un animal \cme creative breath of God \cmf soufle de Deiu qui crée \cme life \cmf vie \cme life, existence \cmf vie, existance \cme part of person which relates to God \cmf parti d'une personne en rélation avec Dieu _reference_start_Genesis 2:07_reference_end_ _reference_start_Genesis 7:22_reference_end_ _reference_start_Deuteronomy 20:16_reference_end_ _reference_start_2 Samuel 22:16_reference_end_ _reference_start_1 Kings 17:17_reference_end_ _reference_start_1 Kings 15:29_reference_end_ _reference_start_Proverbs 20:27_reference_end_ _reference_start_Daniel 10:17_reference_end_ _reference_start_Daniel 5:23_reference_end_N sacrifice \cme kill an animal, burn part as offering to God or gods, eat the rest \cmf tuer un animal, brûler une partie à Dieu ou dieux, manger le reste \cme killing & eating an animal to make a covenant \cmf tuer et manger un animal pour faire une alliance _reference_start_Genesis 46:01_reference_end_ _reference_start_Genesis 31:54_reference_end_ _reference_start_Exodus 10:25_reference_end_ _reference_start_Exodus 12:27_reference_end_ _reference_start_Exodus 12:27_reference_end_ _reference_start_Exodus 18:12_reference_end_ _reference_start_Exodus 18:12_reference_end_ _reference_start_Exodus 23:18_reference_end_ _reference_start_Exodus 34:15_reference_end_ _reference_start_Exodus 34:25_reference_end_ _reference_start_Exodus 24:05_reference_end_ _reference_start_Leviticus 7:12_reference_end_ _reference_start_Numbers 10:10_reference_end_ _reference_start_Numbers 25:02_reference_end_ _reference_start_Deuteronomy 18:03_reference_end_ _reference_start_Jude 16:23_reference_end_ _reference_start_1 Samuel 1:2O1_reference_end_ _reference_start_1 Samuel 2:13_reference_end_ _reference_start_1 Samuel 2:19_reference_end_ _reference_start_1 Samuel 2:29_reference_end_ _reference_start_1 Samuel 3:14_reference_end_ _reference_start_1 Samuel 6:15_reference_end_ _reference_start_1 Samuel 9:12_reference_end_ _reference_start_1 Samuel 9:13_reference_end_ _reference_start_1 Samuel 10:08_reference_end_ _reference_start_1 Samuel 12:09_reference_end_ _reference_start_1 Samuel 12:13_reference_end_ _reference_start_1 Samuel 15:22_reference_end_ _reference_start_1 Samuel 16:03_reference_end_ _reference_start_1 Samuel 16:05_reference_end_ _reference_start_1 Samuel 20:06_reference_end_ _reference_start_1 Samuel 20:29_reference_end_ _reference_start_1 Samuel 11:15_reference_end_ _reference_start_2 Samuel 15:12_reference_end_ _reference_start_1 Kings 8:62_reference_end_ _reference_start_1 Kings 8:63_reference_end_ _reference_start_1 Kings 12:27_reference_end_ _reference_start_1 Chronicles 29:21_reference_end_ _reference_start_2 Chronicles 7:01_reference_end_ _reference_start_2 Chronicles 7:04_reference_end_ _reference_start_2 Chronicles 7:05_reference_end_ _reference_start_2 Chronicles 7:12_reference_end_ _reference_start_2 Chronicles 29:31_reference_end_ _reference_start_Psalms 4:06_reference_end_ _reference_start_Psalms 51:18_reference_end_ _reference_start_Psalms 51:19_reference_end_ _reference_start_Psalms 51:21_reference_end_ _reference_start_Psalms 107:22_reference_end_ _reference_start_Psalms 50:05_reference_end_ _reference_start_Proverbs 7:14_reference_end_ _reference_start_Proverbs 15:08_reference_end_ _reference_start_Proverbs 17:01_reference_end_ _reference_start_Proverbs 21:03_reference_end_ _reference_start_Proverbs 21:27_reference_end_ _reference_start_Ecclesiastes 4:17_reference_end_ _reference_start_Isaiah 57:07_reference_end_ _reference_start_Daniel 9:27_reference_end_ _reference_start_Jonah 1:16_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5( yQ  xQ  wQ  vQ  uQ  tQ @ sQ  rQ  qQ  pQ  oQ  nQ  mQ  lQ  kQ jQ iQ hQ  gQ  fQ  eQ  dQ  cQ bQ% aQ `Q _Q ^Q ]Q \Q [Q ZQ  YQ XQ WQ VQ UQ TQ SP  RP  QP9 PP OP NP MP LP KP JP2 IPk HP3 GP3 FP3 EP DP CP BP AP @P ?P  >P  =P ? <P > ;P  :P  9P  8P  7P Rs 22:03_reference_end_ _reference_start_Genesis 22:06_reference_end_ _reference_start_Genesis 22:07_reference_end_ _reference_start_Genesis 22:13_reference_end_ _reference_start_Exodus 10:25_reference_end_ _reference_start_Exodus 18:12_reference_end_ _reference_start_Exodus 20:24_reference_end_ _reference_start_Exodus 20:25_reference_end_ _reference_start_Exodus 24:05_reference_end_ _reference_start_Leviticus 5:07_reference_end_ _reference_start_Leviticus 5:10_reference_end_ _reference_start_Numbers 10:10_reference_end_ _reference_start_Numbers 28:37_reference_end_ _reference_start_Joshua 8:31_reference_end_ _reference_start_1 Samuel 6:14_reference_end_ _reference_start_1 Samuel 6:15_reference_end_ _reference_start_1 Samuel 7:09_reference_end_ _reference_start_1 Samuel 7:10_reference_end_ _reference_start_1 Samuel 10:08_reference_end_ _reference_start_1 Samuel 13:09_reference_end_ _reference_start_1 Samuel 13:10_reference_end_ _reference_start_1 Samuel 13:12_reference_end_ _reference_start_1 Samuel 15:22_reference_end_ _reference_start_2 Samuel 6:17_reference_end_ _reference_start_2 Samuel 6:18_reference_end_ _reference_start_2 Samuel 24:22_reference_end_ _reference_start_2 Samuel 24:24_reference_end_ _reference_start_2 Samuel 24:25_reference_end_ _reference_start_1 Kings 3:04_reference_end_ _reference_start_1 Kings 3:15_reference_end_ _reference_start_1 Kings 8:64_reference_end_ _reference_start_1 Kings 9:25_reference_end_ _reference_start_1 Kings 10:05_reference_end_ _reference_start_1 Chronicles 21:23_reference_end_ _reference_start_1 Chronicles 21:24_reference_end_ _reference_start_1 Chronicles 21:26_reference_end_ _reference_start_1 Chronicles 21:29_reference_end_ _reference_start_1 Chronicles 22:01_reference_end_ _reference_start_1 Chronicles 23:31_reference_end_ _reference_start_1 Chronicles 29:21_reference_end_ _reference_start_2 Chronicles 7:01_reference_end_ _reference_start_2 Chronicles 7:07_reference_end_ _reference_start_Psalms 20:04_reference_end_ _reference_start_Psalms 51:18_reference_end_ 66RRcherabimcherabimHebrew: כְּרֻבִים \f chérubim \cme angelic servant of God \cmf serviteur angélique de Dieu \cme seat of God on ark of covenant \cmf siege de Deiu sur l'arc de l'alliance _reference_start_Genesis 3:24_reference_end_ _reference_start_2 Samuel 6:02_reference_end_ _reference_start_2 Samuel 1:1_reference_end_ _reference_start_1 Kings 6:1_reference_end_ _reference_start_1 Kings 7:29_reference_end_ _reference_start_1 Kings 7:36_reference_end_ _reference_start_1 Kings 8:06_reference_end_ _reference_start_1 Kings 8:07_reference_end_ _reference_start_1 Chronicles 13:06_reference_end_ _reference_start_1 Chronicles 28:18_reference_end_Q))uQburnt offeringburnt offeringHebrew: עֹלָה \f holocauste \cme animal is killed and burnt as offering to God \cmf un animal est tuer et bruler en offrende à Dieu _reference_start_Genesis 8:20_reference_end_ _reference_start_Genesis 22:02_reference_end_ _reference_start_GenesiQtssx} "',16;@EJPV\bhntz "(.4:@FLRX^djpv|     !$%),.     !$%),.25 7"8$:%>&B(E*J-L0Q3U4W5Y8\9_EbFeGgIhMnOq\sbwd|fhjmnq rsuxz{|}"#&'()*,/025;@ADILMNRÁTŁUȁVʁXˁ[́^Ӂdԁfցhׁm؁nځq܁u݁z}~  #%'(*-/14of4flrx~ &,28>DJPV\bhntz "(.4:@FLRX^djpv|;<= ?$@%B/C0E3H6J?KFLHMJNLP;<= ?$@%B/C0E3H6J?KFLHMJNLPSRWSYTZV^XfYhZm\p]q`satbvexfyg{h}ikmnptuÂvƂwǂẑ{͂|΂~уփ؃݃߃    "$'=KM O!R"X$b%g(l*s,{-./0134689<?B؃CڃDۃE܃H߃IJKLNOPRTVXY[_`a"b)c-e.f0g2h C~qdWJ=0# zm`SF9,vi\OB5( <V ;V :V 9V 8V 7V 6U 5U # 4U& 3U 2U 1U ) 0U  /U ( .U  -T ,T # +T  *T )T (T% 'T &T3 %T $T #T  "T  !T  T  T  T  T  T  T" T# T! T T/ T/ S4 S  S  S S S S S S  S  R  R  R  R  R $ R  R  R  R  R Q3 Q Q ~Q }Q  |Q  {Q  zQ  <<@S%%ISchief priestchief priestHebrew: כֹּהֵן הָרֹאשׁ \f sacrificateur, chef \cme high or chief priest, head priest \cmf principal sacrificateur, le chef \cme leading priests \cmf les chefs des sacrificateurs _reference_start_2 Kings 25:18_reference_end_ _reference_start_1 Chronicles 27:05_reference_end_ _reference_start_2 Chronicles 19:11_reference_end_ _reference_start_2 Chronicles 24:11_reference_end_ _reference_start_2 Chronicles 26:20_reference_end_ _reference_start_2 Chronicles 31:10_reference_end_ _reference_start_Ezra 7:05_reference_end_ _reference_start_Ezra 10:05_reference_end_ _reference_start_Nehemiah 12:07_reference_end_ _reference_start_Jeremiah 52:24_reference_end_eference_end_ _reference_start_Leviticus 25:29_reference_end_ _reference_start_Numbers 14:33_reference_end_ _reference_start_Numbers 14:35_reference_end_ _reference_start_Deuteronomy 34:08_reference_end_ _reference_start_1 Samuel 16:11_reference_end_ _reference_start_2 Samuel 15:24_reference_end_ _reference_start_2 Samuel 20:18_reference_end_ _reference_start_2 Samuel 22:26_reference_end_ _reference_start_1 Kings 6:22_reference_end_ _reference_start_1 Kings 7:22_reference_end_ _reference_start_1 Kings 14:10_reference_end_ _reference_start_2 Kings 22:04_reference_end_ _reference_start_Job 22:03_reference_end_ _reference_start_Psalms 19:14_reference_end_ _reference_start_Psalms 51:09_reference_end_ _reference_start_Isaiah 1:18_reference_end_ _reference_start_Jeremiah 37:21_reference_end_ _reference_start_Ezekiel 24:10_reference_end_ _reference_start_Daniel 8:23_reference_end_ _reference_start_Daniel 9:24_reference_end_ _reference_start_Daniel 11:35_reference_end_ _reference_start_Daniel 12:10_reference_end_ PP$T33uTclean, pure (to be)clean, pure (to be)Hebrew: תָּמַם \f pur, être pur \cme be complete, finished \cmf être fini, complété \cme be innocent, blameless \cmf être innocent \cme be ready \cmf être prét \cme be used up \cmf être épuisé \cme be white or morally pure \cmf être blanc ou pur moralement \cme to die \cmf mourir _reference_start_Genesis 47:15_reference_end_ _reference_start_Genesis 47:18_rX V##oVclean, pureclean, pureHebrew: טָהֹור \f pur \cme ethically clean \cmf pur moralement \c[mU--Uclean, pure (to)clean, pure (to)Hebrew: בָּרַר / הִתבַרֶר \f pur, être pur \cme purge, test, purify (remove what is unwanted) \cmf purifier, tester (enlever ce qu'on ne veut pas) \cme purify self, show self pure, without unwanted stuff \cmf se purifier, se montrer pur, sans ce qu'on ne veut pas _reference_start_2 Samuel 22:27_reference_end_ _reference_start_1 Chronicles 7:40_reference_end_ _reference_start_1 Chronicles 9:22_reference_end_ _reference_start_1 Chronicles 16:41_reference_end_ _reference_start_Psalms 18:27_reference_end_ _reference_start_Ecclesiastes 3:18_reference_end_ _reference_start_Ezekiel 20:38_reference_end_ _reference_start_Daniel 11:35_reference_end_ _reference_start_Daniel 12:10_reference_end_me free from leprosy \cmf ne plus avoir la lèpre \cme pure, unadulterated \cmf non souillé \cme ritually pure before God \cmf pur rituellement devant Dieu \cme washed, cleaned \cmf nettoyé, lavé _reference_start_Genesis 7:02_reference_end_ _reference_start_Genesis 7:08_reference_end_ _reference_start_Genesis 8:20_reference_end_ _reference_start_Exodus 25:11_reference_end_ _reference_start_Leviticus 4:12_reference_end_ _reference_start_Deuteronomy 23:10_reference_end_ _reference_start_1 Samuel 20:26_reference_end_ _reference_start_2 Samuel 22:27_reference_end_ _reference_start_1 Kings 6:20_reference_end_ _reference_start_2 Kings 5:10_reference_end_ _reference_start_1 Chronicles 28:17_reference_end_ _reference_start_Job 17:02_reference_end_ _reference_start_Psalms 19:10_reference_end_ _reference_start_Proverbs 15:26_reference_end_ _reference_start_Proverbs 22:11_reference_end_ _reference_start_Proverbs 30:12_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5( X ~X }X |X {X zX yX xX  wX vX  uX  tX  sX + rX & qX " pX  oX = nX : mX  lX  kX  jX  iX hX- gX fX eX dX cX bX aX `X _X ^X ]W  \W [W ZW YW XW  WW  VW  UW  TW  SW  RW  QW PW  OW" NW MW LW KW JW, IW) HW) GW FV EV DV CV BV AV  @V  ?V  >V  =V s 24:08_reference_end_ _reference_start_Genesis 4:41_reference_end_ _reference_start_Genesis 24:41_reference_end_ _reference_start_Genesis 44:10_reference_end_ _reference_start_Exodus 21:19_reference_end_ _reference_start_Exodus 23:07_reference_end_ _reference_start_Exodus 21:28_reference_end_ _reference_start_Exodus 20:07_reference_end_ _reference_start_Exodus 34:07_reference_end_ _reference_start_Numbers 32:22_reference_end_ _reference_start_Numbers 14:18_reference_end_ _reference_start_1 Samuel 26:09_reference_end_ _reference_start_1 Samuel 19:05_reference_end_ _reference_start_2 Samuel 3:28_reference_end_ _reference_start_2 Samuel 14:09_reference_end_ _reference_start_1 Kings 24:04_reference_end_ _reference_start_1 Kings 15:22_reference_end_ _reference_start_1 Kings 1:06_reference_end_ _reference_start_Psalms 19:13_reference_end_ _reference_start_Proverbs 6:29_reference_end_ _reference_start_Daniel 6:23_reference_end_ _reference_start_Joel 4:19_reference_end_ _reference_start_Jonah 1:14_reference_end_ ZZuX99 Xcommandments, preceptscommandments, preceptsHebrew: מִצְוָה \f commandements, précepte \cme God's command to a person \cmf commandement de Dieu pour une personne \cme God's law, code of living \cmf la loi de Dieu, sa code de vie \cme order or instruction of a person \cmf order ou instruction d'une personne _reference_start_Genesis 26:05_reference_end_ _referenc_WWcleancleanHebrew: נָקָה \f pur \cme exempt from obligation (of oaths, etc) \cmf sans obligation (de serment, etc) \cme exempt from punishment, acquited \cmf aquité, sans être puni \cme free from guilt, innocent \cmf innocent, sans culpabilité \cme free from obligation \cmf sans obligation \cme free from punishement \cmf libre de punition \cme innocent \cmf innocent \cme innocent (naqiy') \cmf innocent (naqiy') \cme leave unpunished, hold innocent \cmf ne pa punir, considérer comme innocent _reference_start_Genesi]`e_start_Exodus 15:26_reference_end_ _reference_start_Exodus 16:28_reference_end_ _reference_start_Exodus 20:06_reference_end_ _reference_start_Exodus 24:12_reference_end_ _reference_start_Leviticus 5:17_reference_end_ _reference_start_Deuteronomy 28:01_reference_end_ _reference_start_Deuteronomy 28:09_reference_end_ _reference_start_Deuteronomy 28:13_reference_end_ _reference_start_Deuteronomy 28:15_reference_end_ _reference_start_Deuteronomy 28:45_reference_end_ _reference_start_1 Samuel 13:13_reference_end_ _reference_start_1 Kings 13:21_reference_end_ _reference_start_1 Kings 2:03_reference_end_ _reference_start_1 Kings 3:14_reference_end_ _reference_start_1 Kings 6:12_reference_end_ _reference_start_1 Kings 8:58_reference_end_ _reference_start_1 Kings 8:61_reference_end_ _reference_start_1 Kings 9:06_reference_end_ _reference_start_1 Kings 11:34_reference_end_ _reference_start_1 Kings 11:38_reference_end_ _reference_start_1 Kings 2:43_reference_end_ _reference_start_1 Chronicles 28:07_reference_end_ _reference_start_1 Chronicles 28:08_reference_end_ _reference_start_1 Chronicles 29:19_reference_end_ _reference_start_2 Chronicles 8:15_reference_end_ _reference_start_Nehemiah 13:05_reference_end_ _reference_start_Esther 3:03_reference_end_ _reference_start_Job 23:12_reference_end_ _reference_start_Psalms 19:09_reference_end_ _reference_start_Proverbs 2:01_reference_end_ _reference_start_Proverbs 3:01_reference_end_ _reference_start_Proverbs 4:04_reference_end_ _reference_start_Proverbs 6:20_reference_end_ _reference_start_Proverbs 6:23_reference_end_ _reference_start_Proverbs 7:01_reference_end_ _reference_start_Proverbs 7:02_reference_end_ _reference_start_Proverbs 10:08_reference_end_ _reference_start_Proverbs 13:13_reference_end_ _reference_start_Proverbs 19:16_reference_end_ _reference_start_Ecclesiastes 12:13_reference_end_ _reference_start_Daniel 9:04_reference_end_ _reference_start_Daniel 9:05_reference_end_ _reference_start_Malachi 2:01_reference_end_ _reference_start_Malachi 2:04_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5( BY  AY  @Y  ?Y  >Y  =Y <Y ;Y :Y" 9YE 8Y- 7Y 6Y 5Y 4Y 3Y 2Y 1Y 0Y /Y" .Y -Y ,Y +Y 2 *Y  )Y (Y 'Y &Y %Y $Y #Y "Y !Y Y Y2 Y2 Y/ Y, Y* Y  Y  Y  Y Y Y Y Y Y Y  Y Y Y Y Y Y X' X' X  X  X X X X  X X Xcnce_start_Genesis 26:11_reference_end_ _reference_start_Genesis 27:08_reference_end_ _reference_start_Genesis 28:01_reference_end_ _reference_start_Genesis 28:06_reference_end_ _reference_start_Genesis 32:05_reference_end_ _reference_start_Genesis 32:18_reference_end_ _reference_start_Genesis 32:20_reference_end_ _reference_start_Genesis 42:25_reference_end_ _reference_start_Genesis 44:01_reference_end_ _reference_start_Genesis 47:11_reference_end_ _reference_start_Genesis 50:02_reference_end_ _reference_start_Genesis 50:16_reference_end_ _reference_start_Exodus 19:07_reference_end_ _reference_start_Exodus 23:15_reference_end_ _reference_start_Exodus 1:22_reference_end_ _reference_start_Exodus 4:28_reference_end_ _reference_start_Exodus 5:06_reference_end_ _reference_start_Exodus 6:13_reference_end_ _reference_start_Exodus 7:02_reference_end_ _reference_start_Exodus 7:06_reference_end_ _reference_start_Exodus 7:10_reference_end_ _reference_start_Exodus 7:20_reference_end_ _reference_start_Exodus 12:28_refderence_end_ _reference_start_Exodus 12:50_reference_end_ _reference_start_Exodus 16:16_reference_end_ _reference_start_Exodus 16:24_reference_end_ _reference_start_Exodus 16:32_reference_end_ _reference_start_Exodus 16:34_reference_end_ _reference_start_Exodus 18:23_reference_end_ _reference_start_Numbers 20:09_reference_end_ _reference_start_Numbers 20:27_reference_end_ _reference_start_Deuteronomy 18:18_reference_end_ _reference_start_Deuteronomy 28:01_reference_end_ _reference_start_Deuteronomy 28:13_reference_end_ _reference_start_Deuteronomy 28:14_reference_end_ _reference_start_Deuteronomy 28:15_reference_end_ _reference_start_Deuteronomy 28:45_reference_end_ _reference_start_Deuteronomy 28:69_reference_end_ _reference_start_Deuteronomy 34:09_reference_end_ _reference_start_Deuteronomy 18:20_reference_end_ _reference_start_Joshua 1:10_reference_end_ _reference_start_1 Samuel 13:13_reference_end_ _reference_start_1 Samuel 13:14_reference_end_ _reference_start_1 Samuel 17:20_reference_end_ _reference_estart_1 Samuel 18:22_reference_end_ _reference_start_1 Samuel 20:29_reference_end_ _reference_start_1 Samuel 21:02_reference_end_ _reference_start_2 Samuel 4:12_reference_end_ _reference_start_2 Samuel 5:25_reference_end_ _reference_start_2 Samuel 7:07_reference_end_ _reference_start_2 Samuel 9:11_reference_end_ _reference_start_2 Samuel 11:19_reference_end_ _reference_start_2 Samuel 13:28_reference_end_ _reference_start_2 Samuel 13:29_reference_end_ _reference_start_2 Samuel 14:08_reference_end_ _reference_start_2 Samuel 14:19_reference_end_ _reference_start_2 Samuel 18:05_reference_end_ _reference_start_2 Samuel 18:12_reference_end_ _reference_start_2 Samuel 21:14_reference_end_ _reference_start_1 Kings 8:59_reference_end_ _reference_start_1 Kings 9:04_reference_end_ _reference_start_1 Kings 11:10_reference_end_ _reference_start_1 Kings 11:11_reference_end_ _reference_start_1 Kings 11:38_reference_end_ _reference_start_1 Kings 2:43_reference_end_ _reference_start_1 Kings 2:46_reference_end_ _reference_start_1 Kings 5:20_reference_end_ _reference_start_1 Kings 5:31_reference_end_ _reference_start_1 Kings 22:31_reference_end_ _reference_start_1 Chronicles 16:15_reference_end_ _reference_start_1 Chronicles 16:40_reference_end_ _reference_start_1 Chronicles 22:13_reference_end_ _reference_start_1 Chronicles 24:19_reference_end_ _reference_start_1 Chronicles 17:06_reference_end_ _reference_start_1 Chronicles 22:06_reference_end_ _reference_start_1 Chronicles 22:17_reference_end_ _reference_start_2 Chronicles 7:17_reference_end_ _reference_start_2 Chronicles 7:13_reference_end_ _reference_start_Esther 2:10_reference_end_ _reference_start_Esther 2:20_reference_end_ _reference_start_Esther 3:02_reference_end_ _reference_start_Esther 3:12_reference_end_ _reference_start_Esther 4:05_reference_end_ _reference_start_Esther 4:08_reference_end_ _reference_start_Esther 4:10_reference_end_ _reference_start_Esther 4:10_reference_end_ _reference_start_Esther 4:17_reference_end_ _reference_start_Esther 8:09_reference_end_ QY%%kYcommand (to)command (to)Hebrew: צָוָה \f commander \cme God gives his law to Israel \cmf Dieu donne sa loi à Israël \cme instruct, give an order \cmf instruire, donner un ordre _reference_start_Genesis 2:16_reference_end_ _reference_start_Genesis 3:11_reference_end_ _reference_start_Genesis 3:17_reference_end_ _reference_start_Genesis 7:05_reference_end_ _reference_start_Genesis 7:09_reference_end_ _reference_start_Genesis 7:16_reference_end_ _reference_start_Genesis 12:20_reference_end_ _reference_start_Genesis 18:19_reference_end_ _reference_start_Genesis 21:04_reference_end_ _refereb C~qdWJ=0# zm`SF9,uh[NA4'  [ [ [ [ [ [ [ ~[, }[ |[ {[ z[ yZ xZ  wZ  vZ? uZj. tZ sZwM rZE qZ3 pZ 2 oZ  nZ  mZ+ lZ+ kY jY iY hY gY fY eY dY cY bY aY `Y _Y  ^Y  ]Y  \Y  [Y  ZY ( YY  XY  WY  VY  UY . TY + SY & RY QY PY  OY ; NY  MY  LY  KY  JY  IY  HY  GY  FY EY  DY  CY  {Z!!GZcompassioncompassionHebrew: רַחֲמִים \f compassion \cme bowels, location in a person of feelings \cmf entrails, lieu des sentiments d'uner personne \cme compassion of God \cmf compassion de Dieu \cme favor of man \cmf faveur d'une personne _reference_start_Genesis 43:30_reference_end_ _reference_start_Genesis 43:14_reference_end_ _reference_start_2 Samuel 24:14_reference_end_ _reference_start_1 Kings 3:26_reference_end_ _reference_start_1 Kings 8:50_reference_end_ _reference_start_Psalms 51:03_reference_end_ _reference_start_Psalms 69:17_reference_end_ _reference_start_Psalms 119:77_reference_end_ _reference_start_Psalms 707:10_reference_end_ _reference_start_Psalms 106:46_reference_end_ _reference_start_Isaiah 63:07_reference_end_ _reference_start_Daniel 9:07_reference_end_ _reference_start_Daniel 9:18_reference_end_ _reference_start_Daniel 1:09_reference_end_juple de l'alliance, le peuple d'Israël _reference_start_Genesis 14:13_reference_end_ _reference_start_Genesis 21:27_reference_end_ _reference_start_Genesis 21:32_reference_end_ _reference_start_Genesis 26:28_reference_end_ _reference_start_Genesis 31:44_reference_end_ _reference_start_Genesis 15:18_reference_end_ _reference_start_Genesis 17:02_reference_end_ _reference_start_Genesis 17:04_reference_end_ _reference_start_Genesis 17:07_reference_end_ _reference_start_Genesis 17:09_reference_end_ _reference_start_Genesis 17:10_reference_end_ _reference_start_Genesis 17:11_reference_end_ _reference_start_Genesis 17:13_reference_end_ _reference_start_Genesis 17:14_reference_end_ _reference_start_Genesis 17:19_reference_end_ _reference_start_Genesis 17:21_reference_end_ _reference_start_Genesis 6:18_reference_end_ _reference_start_Genesis 9:09_reference_end_ _reference_start_Genesis 9:11_reference_end_ _reference_start_Genesis 9:12_reference_end_ _reference_start_Genesis 9:13_reference_end_ _reference_start_Geknesis 9:15_reference_end_ _reference_start_Genesis 9:16_reference_end_ _reference_start_Genesis 9:17_reference_end_ _reference_start_Exodus 23:32_reference_end_ _reference_start_Exodus 34:12_reference_end_ _reference_start_Exodus 34:15_reference_end_ _reference_start_Exodus 24:07_reference_end_ _reference_start_Exodus 24:08_reference_end_ _reference_start_Exodus 31:16_reference_end_ _reference_start_Exodus 34:10_reference_end_ _reference_start_Exodus 34:27_reference_end_ _reference_start_Exodus 34:28_reference_end_ _reference_start_Exodus 2:24_reference_end_ _reference_start_Exodus 6:04_reference_end_ _reference_start_Exodus 6:05_reference_end_ _reference_start_Exodus 19:05_reference_end_ _reference_start_Numbers 10:33_reference_end_ _reference_start_Numbers 14:44_reference_end_ _reference_start_1 Samuel 11:01_reference_end_ _reference_start_1 Samuel 18:03_reference_end_ _reference_start_1 Samuel 20:08_reference_end_ _reference_start_1 Samuel 23:18_reference_end_ _reference_start_1 Samuel 4:03_reference_elnd_ _reference_start_1 Samuel 4:04_reference_end_ _reference_start_2 Samuel 3:12_reference_end_ _reference_start_2 Samuel 3:13_reference_end_ _reference_start_2 Samuel 3:21_reference_end_ _reference_start_2 Samuel 5:03_reference_end_ _reference_start_2 Samuel 15:24_reference_end_ _reference_start_2 Samuel 23:05_reference_end_ _reference_start_1 Kings 5:26_reference_end_ _reference_start_1 Kings 15:19_reference_end_ _reference_start_1 Kings 20:34_reference_end_ _reference_start_1 Kings 3:15_reference_end_ _reference_start_1 Kings 6:19_reference_end_ _reference_start_1 Kings 8:01_reference_end_ _reference_start_1 Kings 8:06_reference_end_ _reference_start_1 Kings 8:21_reference_end_ _reference_start_1 Kings 8:23_reference_end_ _reference_start_1 Kings 11:11_reference_end_ _reference_start_1 Kings 19:10_reference_end_ _reference_start_1 Kings 19:14_reference_end_ _reference_start_1 Chronicles 11:03_reference_end_ _reference_start_1 Chronicles 15:25_reference_end_ _reference_start_1 Chronicles 15:26_reference_end_ _reference_start_1 Chronicles 15:28_reference_end_ _reference_start_1 Chronicles 15:29_reference_end_ _reference_start_1 Chronicles 16:06_reference_end_ _reference_start_1 Chronicles 16:15_reference_end_ _reference_start_1 Chronicles 16:17_reference_end_ _reference_start_1 Chronicles 17:01_reference_end_ _reference_start_1 Chronicles 17:37_reference_end_ _reference_start_1 Chronicles 22:19_reference_end_ _reference_start_1 Chronicles 28:02_reference_end_ _reference_start_1 Chronicles 28:18_reference_end_ _reference_start_2 Chronicles 13:05_reference_end_ _reference_start_2 Chronicles 21:07_reference_end_ _reference_start_Isaiah 55:03_reference_end_ _reference_start_Daniel 11:22_reference_end_ _reference_start_Daniel 9:04_reference_end_ _reference_start_Daniel 11:22_reference_end_ _reference_start_Daniel 11:30_reference_end_ _reference_start_Daniel 11:32_reference_end_ _reference_start_Daniel 9:27_reference_end_ _reference_start_Daniel 11:28_reference_end_ _reference_start_Daniel 11:30_reference_end_ |\]\crimecrimeHebrew: חֲבוּלָה \f crime \cme a crime \cmf un crime _reference_start_Daniel 6:23_reference_end_e[#[covenantcovenantHebrew: בְּרִית \f alliance \cme agreement between people \cmf alliance entre personnes \cme covenant at Sinai \cmf alliance du Sinaï \cme God's covenant with Abraham \cmf alliance de Dieu avec Abraham \cme God's covenant with Noah \cmf alliance de Dieu avec Noé \cme God's covenant with people of Israel \cmf alliance de Dieu avec le peuple d'Israël \cme God's promise to David \cmf alliance de Dieu avec David \cme the people of God's covenant, Israel \cmf les pei C~qdWJ=0# zm`SF9,vi\OB5( H[7 G[ F[  E[  D[  C[  B[ % A[  @[  ?[  >[  =[  <[  ;[  :[  9[  8[  7[  6[ 5[  4[  3[  2[  1[  0[  /[ " .[  -[  ,[  +[  *[  )[  ([  '[  &[  %[  $[  #[  "[  ![  [, [ ! [ [ [ [ [" [" [" [ [ [ [" [" [ [  [  [  [ [ [ [ [ [ [ [ [ C~qdWJ=0# zm`SF9,vi\OB5( b; b? b  b> a  a a$ ah aG a) a a a ~a1 }a |a {a z`  y`  x`$ w` v` u` t` s` r` q` p` o` n` m`  l`  k`  j` i` h`  g^ f^  e^  d^- c^ b^ a^ `]  _] ^]  ]]  \]  []  Z]  Y]  X]  W] + V]  U] T] S]  R] Q\ P[  O[  N[  M[ L[  K[  J[  I[  -]!!+]curse (to)curse (to)Hebrew: .קָלַל \f maudire \cme curse \cmf maudire \cme lighten, weigh less \cmf aléger _reference_start_Genesis 8:21_reference_end_ _reference_start_Genesis 12:03_reference_end_ _reference_start_Exodus 21:17_reference_end_ _reference_start_Exodus 22:27_reference_end_ _reference_start_1 Samuel 3:13_reference_end_ _reference_start_1 Samuel 17:43_reference_end_ _reference_start_2 Samuel 16:05_reference_end_ _reference_start_2 Samuel 16:07_reference_end_ _reference_start_2 Samuel 16:09_reference_end_ _reference_start_2 Samuel 16:10_reference_end_ _reference_start_2 Samuel 16:11_reference_end_ _reference_start_2 Samuel 16:13_reference_end_ _reference_start_1 Kings 2:08_reference_end_ _reference_start_Proverbs 30:10_reference_end_ _reference_start_Jonah 1:05_reference_end_ X.`u`deathdeathHebrew: מָוֶת \f mort (la) \cme personification \cmf personnification \cme physical death, opposite of life \cmf lar'_++ _Day of the Lordday of the lord$^-^cursecurseHebrew: קְלָלָה \f malédiction \cme a curse \cmf malédiction _reference_start_Genesis 27:12_reference_end_ _reference_start_Genesis 27:13_reference_end_ _reference_start_Deuteronomy 28:15_reference_end_ _reference_start_Deuteronomy 28:45_reference_end_ _reference_start_2 Samuel 16:12_reference_end_ _reference_start_1 Kings 2:08_reference_end_ _reference_start_Proverbs 26:02_reference_end_ mort physique, en opposition avec la vie \cme state of death, place of death, Sheol \cmf état d'être mort, lieu des morts, Sheol _reference_start_Proverbs 13:14_reference_end_ _reference_start_Proverbs 14:27_reference_end_ _reference_start_Proverbs 21:06_reference_end_ _reference_start_Proverbs 11:07_reference_end_ _reference_start_Proverbs 11:19_reference_end_ _reference_start_Proverbs 12:28_reference_end_ _reference_start_Proverbs 14:12_reference_end_ _reference_start_Proverbs 14:32_reference_end_ _reference_start_Proverbs 16:14_reference_end_ _reference_start_Proverbs 16:25_reference_end_ _reference_start_Proverbs 18:21_reference_end_ _reference_start_Proverbs 24:11_reference_end_ _reference_start_Proverbs 26:18_reference_end_ _reference_start_Proverbs 2:18_reference_end_ _reference_start_Proverbs 5:05_reference_end_ _reference_start_Proverbs 7:27_reference_end_ _reference_start_Proverbs 8:36_reference_end_ _reference_start_Proverbs 10:02_reference_end_ _reference_start_Proverbs 11:04_reference_end_ La//Madeep (the), abyssdeep (the), abyssHebrew: תְּהֹום \f abîme \cme abyss, where the dead go \cmf l'abîme, où vont les morts \cme primordial sea \cmf l'ocean primordiale \cme subterranean waters \cmf l'ocean souterraine \cme the ocean \cmf l'ocean _reference_start_Genesis 1:02_reference_end_ _reference_start_Genesis 7:11_reference_end_ _reference_start_Genesis 8:02_reference_end_ _reference_start_Genesis 49:25_reference_end_ _reference_start_Exodus 15:05_reference_end_ _reference_start_Exodus 15:08_reference_end_ _reference_start_Ezra 26:19_reference_end_ _reference_start_Job 41:24_reference_end_ _reference_start_Psalms 71:20_reference_end_ _reference_start_Psalms 104:06_reference_end_ _reference_start_Psalms 36:07_reference_end_ _reference_start_Proverbs 8:27_reference_end_ _reference_start_Jonah 2:06_reference_end_ ZZ"b##bdefile (to)defile (to)Hebrew: .גָּאַל \f souiller \cme be/become physically ritually defiled \cmf être/rendre impur physiquemnet rituellement \cme be/become ritually impure because of immoral acts \cmf être/rendre impur à cause des acts immorals _reference_start_Ezra 2:62_reference_end_ _reference_start_Nehemiah 13:29_reference_end_ _reference_start_Isaiah 63:03_reference_end_ _reference_start_Isaiah 59:03_reference_end_ _reference_start_Lamentations 4:14_reference_end_ _reference_start_Daniel 1:08_reference_end_ _reference_start_Zephaniah 3:01_reference_end_ _reference_start_Malachi 1:07_reference_end_ _reference_start_Malachi 1:12_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5( Nh Mh Lh Kh Jh Ih Hh Gh Fh Eh! Dh Ch Bh Ah @h ?h >h =h <g ;g :g  9g  8g  7g  6g 5f  4f  3f 2f4 1f 0f /f# .e  -e ,e  +e  *e  )e  (e  'e &e %e! $e# #e "e1 !e e  e  e  e e e e dj% d  c c c c c c c b' b' b$ b b [U[e''wedesolate (to)desolate (to)Hebrew: שָׁמֵם \f délivrer \cme be appalled, horrified \cmf être épouvanté, horrifié \cme be deserted, ruined \cmf être déserté, ruiné \cme devastate, ravage \cmf ravage _reference_start_Isaiah 20:26_reference_end_ \cme horrible, appawQdddemondemonHebrew: שֵׁד \f démon \cme independent spiritual being \cmf être spirituel indépendent _reference_start_Deuteronomy 32:17_reference_end_ _reference_start_Psalms 106:37_reference_end_'c%%cdeliver (to)deliver (to)Hebrew: שְׁזַב \f délivrer \cme save from something \cmf délivrer de qqch _reference_start_Daniel 3:15_reference_end_ _reference_start_Daniel 3:17_reference_end_ _reference_start_Daniel 3:28_reference_end_ _reference_start_Daniel 6:15_reference_end_ _reference_start_Daniel 6:17_reference_end_ _reference_start_Daniel 6:21_reference_end_ _reference_start_Daniel 6:28_reference_end_lling \cmf être horrible, épouvantable \cme the thing that causes horror \cmf a chose qui cause l'horreur _reference_start_Leviticus 26:32_reference_end_ _reference_start_Leviticus 26:31_reference_end_ _reference_start_Leviticus 26:32_reference_end_ _reference_start_1 Samuel 5:06_reference_end_ _reference_start_2 Samuel 13:20_reference_end_ _reference_start_1 Kings 9:08_reference_end_ _reference_start_2 Chronicles 7:21_reference_end_ _reference_start_Isaiah 49:08_reference_end_ _reference_start_Ezekiel 26:16_reference_end_ _reference_start_Ezekiel 27:35_reference_end_ _reference_start_Ezekiel 33:28_reference_end_ _reference_start_Daniel 8:27_reference_end_ _reference_start_Daniel 8:13_reference_end_ _reference_start_Daniel 9:17_reference_end_ _reference_start_Daniel 9:18_reference_end_ _reference_start_Daniel 9:26_reference_end_ _reference_start_Daniel 9:27_reference_end_ _reference_start_Daniel 11:31_reference_end_ _reference_start_Daniel 12:11_reference_end_ _reference_start_Daniel 9:27_reference_end_ f!!UfdesolationdesolationHebrew: שָׁמֵם \f dévastation \cme be deserted, ruined \cmf être déserté, ruiné \cme waste, ruin of place or land \cmf ruine d'un terrain, terre à l'abandon _reference_start_Isaiah 35:04_reference_end_ _reference_start_Leviticus 26:31_reference_end_ _reference_start_Ezra 26:20_reference_end_ _reference_start_Isaiah 52:09_reference_end_ _reference_start_Jeremiah 12:11_reference_end_ _reference_start_Daniel 9:17_reference_end_ _reference_start_Daniel 9:02_reference_end_ tg##5gdestructiondestructionHebrew: מְְְְְחִתָּה \f destruction \cme dismay \cmf desaroie \cme ruin of something or someone \cmf ruine de qqch ou quelqu'un _reference_start_Proverbs 21:15_reference_end_ _reference_start_Proverbs 10:14_reference_end_ _reference_start_Proverbs 10:15_reference_end_ _reference_start_Proverbs 10:29_reference_end_ _reference_start_Proverbs 13:03_reference_end_ _reference_start_Proverbs 14:28_reference_end_ _reference_start_Proverbs 18:07_reference_end__start_Proverbs 14:33_reference_end_ _reference_start_Proverbs 15:14_reference_end_ _reference_start_Proverbs 16:21_reference_end_ _reference_start_Proverbs 17:10_reference_end_ _reference_start_Proverbs 17:24_reference_end_ _reference_start_Proverbs 17:28_reference_end_ _reference_start_Proverbs 18:15_reference_end_ _reference_start_Proverbs 19:26_reference_end_ _reference_start_Proverbs 28:02_reference_end_ _reference_start_Proverbs 28:07_reference_end_ _reference_start_Proverbs 28:11_reference_end_ _reference_start_Proverbs 21:29_reference_end_ _reference_start_Proverbs 23:01_reference_end_ _reference_start_Proverbs 7:07_reference_end_ _reference_start_Proverbs 14:15_reference_end_ _reference_start_Proverbs 29:19_reference_end_ _reference_start_Proverbs 2:05_reference_end_ _reference_start_Proverbs 2:09_reference_end_ _reference_start_Proverbs 20:24_reference_end_ _reference_start_Proverbs 24:12_reference_end_ _reference_start_Proverbs 28:05_reference_end_ _reference_start_Proverbs 29:07_reference_end_ 11ChchdiscerndiscernHebrew: בּין \f discerner \cme be discerning, discreet, intelligent \cmf plein de discernement, discret, intelligent \cme observe, consider with attention \cmf observer, considerer avec attention \cme perceive with the senses \cmf percevoir avec les sens \cme understand, know \cmf comprendre, savoire _reference_start_Proverbs 1:02_reference_end_ _reference_start_Proverbs 1:05_reference_end_ _reference_start_Proverbs 1:06_reference_end_ _reference_start_Proverbs 8:05_reference_end_ _reference_start_Proverbs 8:09_reference_end_ _reference_start_Proverbs 10:13_reference_end_ _reference_start_Proverbs 14:06_reference_end_ _reference_start_Proverbs 14:08_reference_end_ _referencez C~qdWJ=0# zm`SF9,vi\OB5( m m m  m  m m m m m l  l' l% l# k k k  j j j ~j }j  |j {j zj yj xj wj vj uj tj sj! rj qj  pj  oj  nj  mj! lj kj jj ij hj gj fj ej dj cj bj aj `i _i ^i ]i \i [i  Zh Yh Xh Wh Vh Uh Th Sh Rh Qh Ph Oh **Ri++aidiscipline (to)discipline (to)Hebrew: .יָסַר \f discipliner \cme admonish \cmf admonester, faire des remontrances à qqn \cme correct, discipline \cmf corriger, discipliner _reference_start_Proverbs 9:07_reference_end_ _reference_start_Proverbs 1:1_reference_end_ _reference_start_Proverbs 19:18_reference_end_ _reference_start_Proverbs 29:17_reference_end_ _reference_start_Proverbs 29:19_reference_end_ _reference_start_Proverbs 31:01_reference_end_e_start_Proverbs 8:10_reference_end_ _reference_start_Proverbs 8:33_reference_end_ _reference_start_Proverbs 10:17_reference_end_ _reference_start_Proverbs 12:01_reference_end_ _reference_start_Proverbs 13:01_reference_end_ _reference_start_Proverbs 13:18_reference_end_ _reference_start_Proverbs 15:32_reference_end_ _reference_start_Proverbs 15:33_reference_end_ _reference_start_Proverbs 16:22_reference_end_ _reference_start_Proverbs 19:20_reference_end_ _reference_start_Proverbs 19:27_reference_end_ _reference_start_Proverbs 23:12_reference_end_ _reference_start_Proverbs 23:23_reference_end_ _reference_start_Proverbs 23:23_reference_end_ _reference_start_Proverbs 24:32_reference_end_ _reference_start_Proverbs 3:11_reference_end_ _reference_start_Proverbs 7:22_reference_end_ _reference_start_Proverbs 13:24_reference_end_ _reference_start_Proverbs 15:05_reference_end_ _reference_start_Proverbs 15:10_reference_end_ _reference_start_Proverbs 22:16_reference_end_ _reference_start_Proverbs 23:13_reference_end_ glgk!!SkdiscretiondiscretionHebrew: מְזִמָּה \f discrétion \cme evil devising \cmf penser de faire le mal _reference_start_Proverbs 12:02_reference_end_ _reference_start_Proverbs 14:17_reference_end_ _reference_start_Proverbs 24:08_reference_end_j!!ajdisciplinedisciplineHebrew: מוסָר \f discipline \cme chastening, correction \cmf correction \cme punishment \cmf punition _reference_start_Proverbs 1:02_reference_end_ _reference_start_Proverbs 1:03_reference_end_ _reference_start_Proverbs 1:07_reference_end_ _reference_start_Proverbs 1:07_reference_end_ _reference_start_Proverbs 1:08_reference_end_ _reference_start_Proverbs 4:01_reference_end_ _reference_start_Proverbs 4:13_reference_end_ _reference_start_Proverbs 5:12_reference_end_ _reference_start_Proverbs 5:23_reference_end_ _reference_start_Proverbs 6:23_reference_end_ _reference_start_Proverbs 8:10_reference_end_ _referenc~  mmearthearthHebrew: יַבָּשָׁה \f terre, monde \cme coast, edge of the water \cmf la côte, à côté de la mer \cme debris of ruined city \cmf débrie d'une ville ruinée \cme dirt of the grave \cmf sol du tombeau \cme dirt, dust, soil \cmf sol, terre moble \cme dry land vs ocean or river \cmf terre sec en contrast avec l'ocean ou la rivière \cme farmer, tiller of soil \cmf fermier, celui qui travail la terre \cme figurative sense = abundance \cmf sense figuré = abondance \cme figurative sense = humiliation \cmf sense figur'l))ldrink offeringdrink offeringHebrew: נֶסֶךְ \f libation \cme drink offering \cmf libation _reference_start_Genesis 35:14_reference_end_ _reference_start_Leviticus 23:37_reference_end_ _reference_start_Numbers 29:39_reference_end_ _reference_start_1 Chronicles 29:21_reference_end_ = humiliation \cme figurative sense = scattered \cmf sense figuré = dispersé \cme figurative use for Israel's need for God \cmf sense figuré d'Israël qui a besoin de Dieu \cme inhabitents of earth \cmf les habitants du monde \cme land vs water or air \cmf terre en contraste avec l'eau et l'air \cme location, specific place \cmf local, lieu particulier \cme loose soil, dust \cmf terre meuble, sol \cme piece of ground, property \cmf propriété, terrain \cme powder \cmf poudre \cme soil, land, surface of ground \cmf terrain, sol et sa surface \cme surface of the ground, of earth \cmf surface du sol, de la terre \cme territory, country \cmf territoire, pays _reference_start_Genesis 2:07_reference_end_ _reference_start_Genesis 2:19_reference_end_ _reference_start_Genesis 3:19_reference_end_ _reference_start_Genesis 1:09_reference_end_ _reference_start_Genesis 1:10_reference_end_ _reference_start_Genesis 9:20_reference_end_ _reference_start_Genesis 13:16_reference_end_ _reference_start_Genesis 28:14_reference_end_ _reference_start_Genesis 18:27_reference_end_ _reference_start_Genesis 12:03_reference_end_ _reference_start_Genesis 28:14_reference_end_ _reference_start_Genesis 1:25_reference_end_ _reference_start_Genesis 4:10_reference_end_ _reference_start_Genesis 6:20_reference_end_ _reference_start_Genesis 7:08_reference_end_ _reference_start_Genesis 9:02_reference_end_ _reference_start_Genesis 4:11_reference_end_ _reference_start_Genesis 2:07_reference_end_ _reference_start_Genesis 3:14_reference_end_ _reference_start_Genesis 3:19_reference_end_ _reference_start_Genesis 26:15_reference_end_ _reference_start_Genesis 47:18_reference_end_ _reference_start_Genesis 47:19_reference_end_ _reference_start_Genesis 47:20_reference_end_ _reference_start_Genesis 47:22_reference_end_ _reference_start_Genesis 47:26_reference_end_ _reference_start_Genesis 2:05_reference_end_ _reference_start_Genesis 2:06_reference_end_ _reference_start_Genesis 2:09_reference_end_ _reference_start_Genesis 3:17_reference_end_ _reference_start_Genesis 3:23_reference_end_ _reference_start_Genesis 4:02_reference_end_ _reference_start_Genesis 4:03_reference_end_ _reference_start_Genesis 4:12_reference_end_ _reference_start_Genesis 4:14_reference_end_ _reference_start_Genesis 5:29_reference_end_ _reference_start_Genesis 6:01_reference_end_ _reference_start_Genesis 6:07_reference_end_ _reference_start_Genesis 7:04_reference_end_ _reference_start_Genesis 7:23_reference_end_ _reference_start_Genesis 8:08_reference_end_ _reference_start_Genesis 8:13_reference_end_ _reference_start_Genesis 8:21_reference_end_ _reference_start_Genesis 19:25_reference_end_ _reference_start_Genesis 47:23_reference_end_ _reference_start_Genesis 28:15_reference_end_ _reference_start_Genesis 1:1_reference_end_ _reference_start_Genesis 47:20_reference_end_ _reference_start_Genesis 47:26_reference_end_ _reference_start_Exodus 20:24_reference_end_ _reference_start_Exodus 4:09_reference_end_ _reference_start_Exodus 14:16_reference_end_ _reference_start_Exodus 14:22_reference_end_ _reference_start_Exodus 14:29_reference_end_ _reference_start_Exodus 15:19_reference_end_ _reference_start_Exodus 3:05_reference_end_ _reference_start_Exodus 10:06_reference_end_ _reference_start_Exodus 8:17_reference_end_ _reference_start_Exodus 23:19_reference_end_ _reference_start_Exodus 34:26_reference_end_ _reference_start_Exodus 8:12_reference_end_ _reference_start_Exodus 8:13_reference_end_ _reference_start_Exodus 20:12_reference_end_ _reference_start_Numbers 23:10_reference_end_ _reference_start_Numbers 19:17_reference_end_ _reference_start_Numbers 11:12_reference_end_ _reference_start_Deuteronomy 28:24_reference_end_ _reference_start_Deuteronomy 9:21_reference_end_ _reference_start_Deuteronomy 28:04_reference_end_ _reference_start_Deuteronomy 28:11_reference_end_ _reference_start_Deuteronomy 28:18_reference_end_ _reference_start_Deuteronomy 28:33_reference_end_ _reference_start_Deuteronomy 28:42_reference_end_ _reference_start_Deuteronomy 28:51_reference_end_ _reference_start_Deuteronomy 28:21_reference_end_ _reference_start_Deuteronomy 28:63_reference_end_ _reference_start_Deuteronomy 29:27_reference_end_ _reference_start_Joshua 4:22_reference_end_ _reference_start_1 Samuel 4:12_reference_end_ _reference_start_1 Samuel 2:08_reference_end_ _reference_start_1 Samuel 20:31_reference_end_ _reference_start_1 Samuel 20:15_reference_end_ _reference_start_2 Samuel 1:02_reference_end_ _reference_start_2 Samuel 15:32_reference_end_ _reference_start_2 Samuel 17:12_reference_end_ _reference_start_2 Samuel 14:07_reference_end_ _reference_start_2 Samuel 16:13_reference_end_ _reference_start_2 Samuel 22:43_reference_end_ _reference_start_2 Samuel 9:10_reference_end_ _reference_start_1 Kings 20:10_reference_end_ _reference_start_1 Kings 7:46_reference_end_ _reference_start_1 Kings 16:02_reference_end_ _reference_start_1 Kings 8:34_reference_end_ _reference_start_1 Kings 8:40_reference_end_ _reference_start_1 Kings 9:07_reference_end_ _reference_start_2 Kings 13:07_reference_end_ _reference_start_2 Chronicles 1:09_reference_end_ _reference_start_2 Chronicles 7:20_reference_end_ _reference_start_Nehemiah 9:11_reference_end_ _reference_start_Psalms 102:15_reference_end_ _reference_start_Psalms 22:16_reference_end_ _reference_start_Psalms 22:30_reference_end_ _reference_start_Psalms 146:04_reference_end_ _reference_start_Psalms 66:06_reference_end_ _reference_start_Psalms 7:06_reference_end_ _reference_start_Psalms 119:25_reference_end_ _reference_start_Psalms 18:43_reference_end_ _reference_start_Psalms 30:10_reference_end_ _reference_start_Psalms 83:11_reference_end_ _reference_start_Psalms 137:04_reference_end_ _reference_start_Proverbs 28:13_reference_end_ _reference_start_Isaiah 44:03_reference_end_ _reference_start_Daniel 12:02_reference_end_ _reference_start_Daniel 12:02_reference_end_ _reference_start_Daniel 11:09_reference_end_ _reference_start_Daniel 11:39_reference_end_ _reference_start_Jonah 1:13_reference_end_ _reference_start_Jonah 2:11_reference_end_ _reference_start_Jonah 1:09_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5( Tm? Sm Rm3 Qm* Pm! Om Nm Mm Lm  Km Jm Im Hm Gm Fm Em Dm" Cm Bm Am  @m ?m >m =m <m ;m :m 9m/ 8m/ 7m 6m 5m/ 4m 3m 2m 1m 0m /m .m -m ,m +m *m )m (m 'm &m %m $m #m "m/ !m/ m/ m/ m/ m m m m m m  m m m m m m  C~qdWJ=0# yl_RD7*tgZM@3& n n n  n n n n  n n  n  n  n  n  n  n  n  n n n  n n n n n m  ~m  }m  |m ' {m zm  ym  xm, wm vm umS tm sm+ rmw qm pmB om nm mm lmf km jm im hm  gm  fm ( em " dm  cm . bm  am `m + _m  ^m  ]m  \m  [m  Zm  Ym  Xm  Wm  Vm Umrrain, sol \cme ground, soil, surface of ground \cmf terrain, sol et sa surface \cme ground, vs sky \cmf terre par opposition avec le ciel \cme land of Cannan or Israel \cmf pays de Canaan, ou d'Israël \cme metonomy for people \cmf metonomy pour personnes \cme metonymy for people \cmf métonomy pour personne \cme of the world, vs heavenly \cmf terrestre, en contraste avec le paradis \cme planet, world \cmf la planète \cme region, area \cmf région, district \cme scene of human activities \cmf scène des activités humaines \cme the known world & the inhabitants \cmf les régions connues et les habitants \cme tribal territory \cmf territoire d'un tribu \cme whole earth, planet \cmf la planète _reference_start_Psalms 19:05_reference_end_ \cme world, planet \cmf a planète _reference_start_Genesis 2:11_reference_end_ _reference_start_Genesis 2:12_reference_end_ _reference_start_Genesis 2:13_reference_end_ _reference_start_Genesis 4:16_reference_end_ _reference_start_Genesis 10:05_reference_end_ _reference_start_Genesis 10:10_reference_end_ _reference_start_Genesis 10:11_reference_end_ _reference_start_Genesis 10:20_reference_end_ _reference_start_Genesis 10:31_reference_end_ _reference_start_Genesis 11:28_reference_end_ _reference_start_Genesis 11:31_reference_end_ _reference_start_Genesis 12:01_reference_end_ _reference_start_Genesis 12:05_reference_end_ _reference_start_Genesis 12:06_reference_end_ _reference_start_Genesis 12:07_reference_end_ _reference_start_Genesis 12:10_reference_end_ _reference_start_Genesis 13:07_reference_end_ _reference_start_Genesis 13:09_reference_end_ _reference_start_Genesis 13:10_reference_end_ _reference_start_Genesis 13:12_reference_end_ _reference_start_Genesis 13:17_reference_end_ _reference_start_Genesis 15:07_reference_end_ _reference_start_Genesis 15:13_reference_end_ _reference_start_Genesis 15:18_reference_end_ _reference_start_Genesis 16:03_reference_end_ _reference_start_Genesis 16:08_reference_end_ _reference_start_Genesis 20:15_reference_end_ _reference_start_Genesis 21:21_reference_end_ _reference_start_Genesis 21:32_reference_end_ _reference_start_Genesis 21:34_reference_end_ _reference_start_Genesis 23:02_reference_end_ _reference_start_Genesis 23:07_reference_end_ _reference_start_Genesis 23:12_reference_end_ _reference_start_Genesis 23:13_reference_end_ _reference_start_Genesis 23:19_reference_end_ _reference_start_Genesis 24:04_reference_end_ _reference_start_Genesis 24:05_reference_end_ _reference_start_Genesis 24:07_reference_end_ _reference_start_Genesis 24:37_reference_end_ _reference_start_Genesis 26:01_reference_end_ _reference_start_Genesis 26:02_reference_end_ _reference_start_Genesis 26:03_reference_end_ _reference_start_Genesis 26:04_reference_end_ _reference_start_Genesis 26:12_reference_end_ _reference_start_Genesis 26:22_reference_end_ _reference_start_Genesis 27:46_reference_end_ _reference_start_Genesis 28:04_reference_end_ _reference_start_Genesis 29:01_reference_end_ _reference_start_Genesis 30:25_reference_end_ _reference_start_Genesis 31:03_reference_end_ _reference_start_Genesis 31:13_reference_end_ _reference_start_Genesis 31:18_reference_end_ _reference_start_Genesis 32:10_reference_end_ _reference_start_Genesis 32:14_reference_end_ _reference_start_Genesis 33:18_reference_end_ _reference_start_Genesis 34:01_reference_end_ _reference_start_Genesis 34:10_reference_end_ _reference_start_Genesis 34:21_reference_end_ _reference_start_Genesis 34:30_reference_end_ _reference_start_Genesis 35:06_reference_end_ _reference_start_Genesis 35:12_reference_end_ _reference_start_Genesis 35:22_reference_end_ _reference_start_Genesis 36:05_reference_end_ _reference_start_Genesis 36:06_reference_end_ _reference_start_Genesis 36:07_reference_end_ _reference_start_Genesis 36:16_reference_end_ _reference_start_Genesis 36:17_reference_end_ _reference_start_Genesis 36:20_reference_end_ _reference_start_Genesis 36:21_reference_end_ _reference_start_Genesis 36:30_reference_end_ _reference_start_Genesis 36:31_reference_end_ _reference_start_Genesis 36:43_reference_end_ _reference_start_Genesis 37:01_reference_end_ _reference_start_Genesis 40:15_reference_end_ _reference_start_Genesis 41:19_reference_end_ _reference_start_Genesis 41:29_reference_end_ _reference_start_Genesis 41:30_reference_end_ _reference_start_Genesis 41:31_reference_end_ _reference_start_Genesis 41:33_reference_end_ _reference_start_Genesis 41:34_reference_end_ _reference_start_Genesis 41:36_reference_end_ _reference_start_Genesis 41:41_reference_end_ _reference_start_Genesis 41:43_reference_end_ _reference_start_Genesis 41:44_reference_end_ _reference_start_Genesis 41:45_reference_end_ _reference_start_Genesis 41:46_reference_end_ _reference_start_Genesis 41:48_reference_end_ _reference_start_Genesis 41:52_reference_end_ _reference_start_Genesis 41:53_reference_end_ _reference_start_Genesis 41:54_reference_end_ _reference_start_Genesis 41:55_reference_end_ _reference_start_Genesis 41:56_reference_end_ _reference_start_Genesis 42:05_reference_end_ _reference_start_Genesis 42:06_reference_end_ _reference_start_Genesis 42:07_reference_end_ _reference_start_Genesis 42:09_reference_end_ _reference_start_Genesis 42:12_reference_end_ _reference_start_Genesis 42:13_reference_end_ _reference_start_Genesis 42:29_reference_end_ _reference_start_Genesis 42:30_reference_end_ _reference_start_Genesis 42:32_reference_end_ _reference_start_Genesis 42:33_reference_end_ _reference_start_Genesis 42:34_reference_end_ _reference_start_Genesis 43:01_reference_end_ _reference_start_Genesis 43:11_reference_end_ _reference_start_Genesis 44:08_reference_end_ _reference_start_Genesis 45:06_reference_end_ _reference_start_Genesis 45:08_reference_end_ _reference_start_Genesis 45:10_reference_end_ _reference_start_Genesis 45:17_reference_end_ _reference_start_Genesis 45:18_reference_end_ _reference_start_Genesis 45:19_reference_end_ _reference_start_Genesis 45:20_reference_end_ _reference_start_Genesis 45:25_reference_end_ _reference_start_Genesis 45:26_reference_end_ _reference_start_Genesis 46:06_reference_end_ _reference_start_Genesis 46:12_reference_end_ _reference_start_Genesis 46:20_reference_end_ _reference_start_Genesis 46:28_reference_end_ _reference_start_Genesis 46:31_reference_end_ _reference_start_Genesis 46:34_reference_end_ _reference_start_Genesis 47:01_reference_end_ _reference_start_Genesis 47:04_reference_end_ _reference_start_Genesis 47:06_reference_end_ _reference_start_Genesis 47:11_reference_end_ _reference_start_Genesis 47:13_reference_end_ _reference_start_Genesis 47:14_reference_end_ _reference_start_Genesis 47:15_reference_end_ _reference_start_Genesis 47:20_reference_end_ _reference_start_Genesis 47:27_reference_end_ _reference_start_Genesis 47:28_reference_end_ _reference_start_Genesis 48:03_reference_end_ _reference_start_Genesis 48:04_reference_end_ _reference_start_Genesis 48:05_reference_end_ _reference_start_Genesis 48:21_reference_end_ _reference_start_Genesis 49:30_reference_end_ _reference_start_Genesis 50:05_reference_end_ _reference_start_Genesis 50:07_reference_end_ _reference_start_Genesis 50:08_reference_end_ _reference_start_Genesis 50:11_reference_end_ _reference_start_Genesis 50:13_reference_end_ _reference_start_Genesis 50:24_reference_end_ _reference_start_Genesis 1:01_reference_end_ _reference_start_Genesis 1:02_reference_end_ _reference_start_Genesis 1:15_reference_end_ _reference_start_Genesis 1:17_reference_end_ _reference_start_Genesis 2:01_reference_end_ _reference_start_Genesis 2:04_reference_end_ _reference_start_Genesis 2:05_reference_end_ _reference_start_Genesis 2:16_reference_end_ _reference_start_Genesis 14:19_reference_end_ _reference_start_Genesis 14:22_reference_end_ _reference_start_Genesis 24:03_reference_end_ _reference_start_Genesis 24:07_reference_end_ _reference_start_Genesis 28:12_reference_end_ _reference_start_Genesis 13:06_reference_end_ _reference_start_Genesis 1:10-12_reference_end_ _reference_start_Genesis 1:20_reference_end_ _reference_start_Genesis 1:22_reference_end_ _reference_start_Genesis 1:24_reference_end_ _reference_start_Genesis 1:25_reference_end_ _reference_start_Genesis 1:26_reference_end_ _reference_start_Genesis 1:28_reference_end_ _reference_start_Genesis 1:30_reference_end_ _reference_start_Genesis 1:30_reference_end_ _reference_start_Genesis 7:14_reference_end_ _reference_start_Genesis 7:21_reference_end_ _reference_start_Genesis 8:17_reference_end_ _reference_start_Genesis 13:16_reference_end_ _reference_start_Genesis 18:02_reference_end_ _reference_start_Genesis 19:01_reference_end_ _reference_start_Genesis 24:52_reference_end_ _reference_start_Genesis 28:14_reference_end_ _reference_start_Genesis 33:03_reference_end_ _reference_start_Genesis 37:10_reference_end_ _reference_start_Genesis 38:09_reference_end_ _reference_start_Genesis 41:47_reference_end_ _reference_start_Genesis 42:06_reference_end_ _reference_start_Genesis 43:26_reference_end_ _reference_start_Genesis 44:11_reference_end_ _reference_start_Genesis 44:14_reference_end_ _reference_start_Genesis 45:07_reference_end_ _reference_start_Genesis 45:18_reference_end_ _reference_start_Genesis 48:12_reference_end_ _reference_start_Genesis 6:11_reference_end_ _reference_start_Genesis 6:12_reference_end_ _reference_start_Genesis 1:1_reference_end_ _reference_start_Genesis 10:25_reference_end_ _reference_start_Genesis 11:01_reference_end_ _reference_start_Genesis 19:31_reference_end_ _reference_start_Genesis 21:23_reference_end_ _reference_start_Genesis 41:36_reference_end_ _reference_start_Genesis 41:57_reference_end_ _reference_start_Genesis 1:26_reference_end_ _reference_start_Genesis 1:28_reference_end_ _reference_start_Genesis 1:29_reference_end_ _reference_start_Genesis 4:12_reference_end_ _reference_start_Genesis 4:14_reference_end_ _reference_start_Genesis 6:04-06_reference_end_ _reference_start_Genesis 6:12_reference_end_ _reference_start_Genesis 6:13_reference_end_ _reference_start_Genesis 6:17_reference_end_ _reference_start_Genesis 7:03_reference_end_ _reference_start_Genesis 7:04_reference_end_ _reference_start_Genesis 7:06_reference_end_ _reference_start_Genesis 7:10_reference_end_ _reference_start_Genesis 7:12_reference_end_ _reference_start_Genesis 7:17_reference_end_ _reference_start_Genesis 7:18_reference_end_ _reference_start_Genesis 7:19_reference_end_ _reference_start_Genesis 7:21_reference_end_ _reference_start_Genesis 7:23_reference_end_ _reference_start_Genesis 7:24_reference_end_ _reference_start_Genesis 8:01_reference_end_ _reference_start_Genesis 8:03_reference_end_ _reference_start_Genesis 8:07_reference_end_ _reference_start_Genesis 8:11_reference_end_ _reference_start_Genesis 8:13_reference_end_ _reference_start_Genesis 8:14_reference_end_ _reference_start_Genesis 8:17_reference_end_ _reference_start_Genesis 8:19_reference_end_ _reference_start_Genesis 8:22_reference_end_ _reference_start_Genesis 9:01_reference_end_ _reference_start_Genesis 9:02_reference_end_ _reference_start_Genesis 9:07_reference_end_ _reference_start_Genesis 9:10_reference_end_ _reference_start_Genesis 9:11_reference_end_ _reference_start_Genesis 9:14_reference_end_ _reference_start_Genesis 9:16_reference_end_ _reference_start_Genesis 9:17_reference_end_ _reference_start_Genesis 9:19_reference_end_ _reference_start_Genesis 10:08_reference_end_ _reference_start_Genesis 10:32_reference_end_ _reference_start_Genesis 18:18_reference_end_ _reference_start_Genesis 18:25_reference_end_ _reference_start_Genesis 19:23_reference_end_ _reference_start_Genesis 19:31_reference_end_ _reference_start_Genesis 22:18_reference_end_ _reference_start_Genesis 26:04_reference_end_ _reference_start_Genesis 27:28_reference_end_ _reference_start_Genesis 27:39_reference_end_ _reference_start_Genesis 41:57_reference_end_ _reference_start_Genesis 48:16_reference_end_ _reference_start_Genesis 13:15_reference_end_ _reference_start_Genesis 19:28_reference_end_ _reference_start_Genesis 20:01_reference_end_ _reference_start_Genesis 22:02_reference_end_ _reference_start_Genesis 23:15_reference_end_ _reference_start_Genesis 24:62_reference_end_ _reference_start_Genesis 25:06_reference_end_ _reference_start_Genesis 28:13_reference_end_ _reference_start_Genesis 36:34_reference_end_ _reference_start_Genesis 41:34_reference_end_ _reference_start_Genesis 47:11_reference_end_ _reference_start_Genesis 48:07_reference_end_ _reference_start_Genesis 49:15_reference_end_ _reference_start_Exodus 1:07_reference_end_ _reference_start_Exodus 1:10_reference_end_ _reference_start_Exodus 2:15_reference_end_ _reference_start_Exodus 2:22_reference_end_ _reference_start_Exodus 3:08_reference_end_ _reference_start_Exodus 3:17_reference_end_ _reference_start_Exodus 4:20_reference_end_ _reference_start_Exodus 5:05_reference_end_ _reference_start_Exodus 5:12_reference_end_ _reference_start_Exodus 6:01_reference_end_ _reference_start_Exodus 6:04_reference_end_ _reference_start_Exodus 6:08_reference_end_ _reference_start_Exodus 6:11_reference_end_ _reference_start_Exodus 6:13_reference_end_ _reference_start_Exodus 6:26_reference_end_ _reference_start_Exodus 7:02_reference_end_ _reference_start_Exodus 7:03_reference_end_ _reference_start_Exodus 7:04_reference_end_ _reference_start_Exodus 7:19_reference_end_ _reference_start_Exodus 7:21_reference_end_ _reference_start_Exodus 8:01_reference_end_ _reference_start_Exodus 8:02_reference_end_ _reference_start_Exodus 8:03_reference_end_ _reference_start_Exodus 8:10_reference_end_ _reference_start_Exodus 8:12_reference_end_ _reference_start_Exodus 8:13_reference_end_ _reference_start_Exodus 8:18_reference_end_ _reference_start_Exodus 8:20_reference_end_ _reference_start_Exodus 8:21_reference_end_ _reference_start_Exodus 9:05_reference_end_ _reference_start_Exodus 9:09_reference_end_ _reference_start_Exodus 9:22_reference_end_ _reference_start_Exodus 9:23_reference_end_ _reference_start_Exodus 9:24_reference_end_ _reference_start_Exodus 9:25_reference_end_ _reference_start_Exodus 9:26_reference_end_ _reference_start_Exodus 10:12_reference_end_ _reference_start_Exodus 10:13_reference_end_ _reference_start_Exodus 10:14_reference_end_ _reference_start_Exodus 10:15_reference_end_ _reference_start_Exodus 10:21_reference_end_ _reference_start_Exodus 10:22_reference_end_ _reference_start_Exodus 11:03_reference_end_ _reference_start_Exodus 11:05_reference_end_ _reference_start_Exodus 11:06_reference_end_ _reference_start_Exodus 11:09_reference_end_ _reference_start_Exodus 11:10_reference_end_ _reference_start_Exodus 12:01_reference_end_ _reference_start_Exodus 12:12_reference_end_ _reference_start_Exodus 12:13_reference_end_ _reference_start_Exodus 12:15_reference_end_ _reference_start_Exodus 12:17_reference_end_ _reference_start_Exodus 12:19_reference_end_ _reference_start_Exodus 12:33_reference_end_ _reference_start_Exodus 12:41_reference_end_ _reference_start_Exodus 12:42_reference_end_ _reference_start_Exodus 12:48_reference_end_ _reference_start_Exodus 12:51_reference_end_ _reference_start_Exodus 13:1_reference_end_ _reference_start_Exodus 16:1_reference_end_ _reference_start_Exodus 18:03_reference_end_ _reference_start_Exodus 18:27_reference_end_ _reference_start_Exodus 19:01_reference_end_ _reference_start_Exodus 20:02_reference_end_ _reference_start_Exodus 20:04_reference_end_ _reference_start_Exodus 20:11_reference_end_ _reference_start_Exodus 4:03_reference_end_ _reference_start_Exodus 8:12_reference_end_ _reference_start_Exodus 8:13_reference_end_ _reference_start_Exodus 10:05_reference_end_ _reference_start_Exodus 16:14_reference_end_ _reference_start_Exodus 8:18_reference_end_ _reference_start_Exodus 9:14_reference_end_ _reference_start_Exodus 9:15_reference_end_ _reference_start_Exodus 9:16_reference_end_ _reference_start_Exodus 9:22_reference_end_ _reference_start_Exodus 9:23_reference_end_ _reference_start_Exodus 9:29_reference_end_ _reference_start_Exodus 10:15_reference_end_ _reference_start_Exodus 15:12_reference_end_ _reference_start_Exodus 19:05_reference_end_ _reference_start_Exodus 14:03_reference_end_ _reference_start_Leviticus 18:03_reference_end_ _reference_start_Leviticus 18:27_reference_end_ _reference_start_Leviticus 25:02_reference_end_ _reference_start_Leviticus 25:10_reference_end_ _reference_start_Leviticus 25:18_reference_end_ _reference_start_Leviticus 25:24_reference_end_ _reference_start_Leviticus 25:31_reference_end_ _reference_start_Leviticus 25:38_reference_end_ _reference_start_Leviticus 25:42_reference_end_ _reference_start_Leviticus 25:45_reference_end_ _reference_start_Leviticus 25:55_reference_end_ _reference_start_Leviticus 18:25_reference_end_ _reference_start_Leviticus 18:27_reference_end_ _reference_start_Leviticus 18:28_reference_end_ _reference_start_Leviticus 25:04_reference_end_ _reference_start_Leviticus 25:05_reference_end_ _reference_start_Leviticus 25:06_reference_end_ _reference_start_Leviticus 25:07_reference_end_ _reference_start_Leviticus 25:09_reference_end_ _reference_start_Leviticus 25:19_reference_end_ _reference_start_Leviticus 25:23_reference_end_ _reference_start_Leviticus 25:24_reference_end_ _reference_start_Leviticus 19:20_reference_end_ _reference_start_Leviticus 25:02_reference_end_ _reference_start_Numbers 14:09_reference_end_ _reference_start_Deuteronomy 18:09_reference_end_ _reference_start_Deuteronomy 34:02_reference_end_ _reference_start_1 Samuel 9:04_reference_end_ _reference_start_1 Samuel 9:05_reference_end_ _reference_start_1 Samuel 9:16_reference_end_ _reference_start_1 Samuel 2:08_reference_end_ _reference_start_2 Samuel 22:08_reference_end_ _reference_start_2 Samuel 22:16_reference_end_ _reference_start_1 Kings 2:02_reference_end_ _reference_start_1 Kings 10:24_reference_end_ _reference_start_1 Kings 15:20_reference_end_ _reference_start_1 Chronicles 21:16_reference_end_ _reference_start_1 Chronicles 29:11_reference_end_ _reference_start_1 Chronicles 16:30_reference_end_ _reference_start_Esther 8:17_reference_end_ _reference_start_Esther 10:01_reference_end_ _reference_start_Job 18:01_reference_end_ _reference_start_Job 37:12_reference_end_ _reference_start_Psalms 60:04_reference_end_ _reference_start_Psalms 121:02_reference_end_ _reference_start_Psalms 72:06_reference_end_ _reference_start_Psalms 72:16_reference_end_ _reference_start_Psalms 9:09_reference_end_ _reference_start_Psalms 24:01_reference_end_ _reference_start_Psalms 34:17_reference_end_ _reference_start_Psalms 17:14_reference_end_ _reference_start_Psalms 2:02_reference_end_ _reference_start_Psalms 2:08_reference_end_ _reference_start_Psalms 2:10_reference_end_ _reference_start_Psalms 42:07_reference_end_ _reference_start_Proverbs 8:31_reference_end_ _reference_start_Proverbs 8:26_reference_end_ _reference_start_Isaiah 13:11_reference_end_ _reference_start_Daniel 1:02_reference_end_ _reference_start_Daniel 9:07_reference_end_ _reference_start_Daniel 9:15_reference_end_ _reference_start_Daniel 11:19_reference_end_ _reference_start_Daniel 11:28_reference_end_ _reference_start_Daniel 11:40_reference_end_ _reference_start_Daniel 11:42_reference_end_ _reference_start_Daniel 4:07_reference_end_ _reference_start_Daniel 4:12_reference_end_ _reference_start_Daniel 4:20_reference_end_ _reference_start_Daniel 7:04_reference_end_ _reference_start_Daniel 8:05_reference_end_ _reference_start_Daniel 8:07_reference_end_ _reference_start_Daniel 8:10_reference_end_ _reference_start_Daniel 8:12_reference_end_ _reference_start_Daniel 8:18_reference_end_ _reference_start_Daniel 10:09_reference_end_ _reference_start_Daniel 10:15_reference_end_ _reference_start_Daniel 6:28_reference_end_ _reference_start_Daniel 9:06_reference_end_ _reference_start_Daniel 11:16_reference_end_ _reference_start_Daniel 11:41_reference_end_ _reference_start_Daniel 2:10_reference_end_ _reference_start_Daniel 8:05_reference_end_ _reference_start_Daniel 2:39_reference_end_ _reference_start_Daniel 3:31_reference_end_ _reference_start_Daniel 4:32_reference_end_ _reference_start_Daniel 6:26_reference_end_ _reference_start_Daniel 7:23_reference_end_ _reference_start_Daniel 2:35_reference_end_ _reference_start_Daniel 4:08_reference_end_ _reference_start_Daniel 4:19_reference_end_ _reference_start_Daniel 7:17_reference_end_ _reference_start_Jonah 1:08_reference_end_ _reference_start_Jonah 2:07_reference_end_ In%%Ynearth, worldearth, worldHebrew: אֶרֶץ \f terre, monde \cme country, territory, land \cmf pays, territoire \cme death \cmf la mort \cme earth, vs heavens or sky \cmf terre, en contraste avec les cieux \cme figurative use \cmf sense figurée \cme ground, soil \cmf te C~qdWJ=0# zm`SF9,vi\OB5( Zn)6 Yn)5 Xn)4 Wn)0 Vn). Un)- Tn), Sn)+ Rn)) Qn)$ Pn)" On)! Nn) Mn) Ln) Kn) Jn( In% Hn$+ Gn$ Fn$ En$ Dn$ Cn$ Bn$ An$ @n$ ?n$ >n# =n# <n# ;n" :n" 9n" 8n" 7n! 6n  5n 4n 3n 2n 1n 0n /n .n. -n ,n +n *n )n (n 'n% &n %n $n #n "n !n n n n" n n n n n n C~qdWJ=0# zm`SF9,vi\OB5( n n  n n n n n n n n n n n n n n2 n2 n2 n2 n2 n2 n1 n0 n0 n0 n0 n/ n/ n/ n/ n/ ~n/ }n/ |n/ {n/ zn/ yn." xn. wn. vn. un. tn. sn- rn- qn- pn- on- nn- mn- ln- kn- jn, in+ hn+ gn*" fn*! en* dn* cn* bn* an* `n* _n* ^n* ]n* \n)8 [n)7 C~qdWJ=0# zm`SF9,vi\OB5( `n  _n  ^n ]n \n [n Zn Yn Xn Wn Vn Un Tn Sn Rn Qn Pn On Nn Mn Ln Kn Jn In Hn Gn Fn En Dn Cn Bn An)9 @n)$ ?n >n =n  <n  ;n :n 9n 8n0 7n- 6n- 5n, 4n, 3n+ 2n* 1n)/ 0n& /n% .n! -n ,n4 +n *n )n  (n 'n &n %n $n #n "n !n n n n C~qdWJ=0# zm`SF9,vi\OB5( #n  "n  !n  n  n n  n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n1 n0 ~n/ }n)" |n$" {n zn yn> xn wn vn un tn  sn0 rn)9 qn' pn on nn mn ln kn jn in hn  gn  fn  en  dn  cn bn an  C~qdWJ=0# zm`SF9,vi\OB5( fn en dn cn bn an `n _n ^n ]n7 \n- [n* Zn& Yn Xn Wn Vn Un Tn Sn Rn Qn Pn On  Nn  Mn  Ln  Kn  Jn  In  Hn Gn Fn  En Dn Cn Bn An @n ?n >n =n <n ;n  :n 3 9n 0 8n * 7n ) 6n ! 5n  4n  3n  2n 1n 0n  /n .n -n  ,n  +n  *n  )n  (n  'n  &n %n $n  C~qdWJ=0# zm`SF9,vi\OB5( )n (n 'n &n %n' $n #n "n ) !n  n  n n  n n n n n n n n n n n * n ( n  n  n  n  n n n n n* n n n n n" n n nH nH ny ~n< }n% |n {n  zn yn  xn  wn  vn  un  tn  sn  rn  qn  pn  on  nn  mn" ln kn jn in hn gn C~qdWJ=0# zm`SF9,vi\OB5( lr  kq  jp io ho go fo  eo  do  co  bo  ao `o  _o  ^o  ]o \o  [o  Zo  Yo  Xo  Wo  Vo  Uo  To  So  Ro  Qo  Po  Oo  No  Mo  Lo  Ko  Jo  Io  Ho2 Go  Fo  Eo  Do  Co Bo Ao @o ?o >o =o <o ;o  :o 9o 8o 7o, 6o+ 5o# 4o 3o 2o 1o2 0o /n  .n  -n ,n +n *n#_reference_start_Exodus 17:06_reference_end_ _reference_start_Exodus 18:02_reference_end_ _reference_start_Exodus 19:07_reference_end_ _reference_start_Exodus 24:01_reference_end_ _reference_start_Exodus 24:14_reference_end_ _reference_start_Exodus 10:09_reference_end_ _reference_start_Numbers 11:16_reference_end_ _reference_start_Numbers 11:24_reference_end_ _reference_start_Numbers 11:25_reference_end_ _reference_start_Numbers 11:30_reference_end_ _reference_start_Deuteronomy 28:50_reference_end_ _reference_start_1 Samuel 4:03_reference_end_ _reference_start_1 Samuel 8:04_reference_end_ _reference_start_1 Samuel 11:03_reference_end_ _reference_start_1 Samuel 15:30_reference_end_ _reference_start_1 Samuel 16:04_reference_end_ _reference_start_1 Samuel 30:26_reference_end_ _reference_start_1 Samuel 2:31_reference_end_ _reference_start_1 Samuel 2:32_reference_end_ _reference_start_1 Samuel 28:14_reference_end_ _reference_start_2 Samuel 3:17_reference_end_ _reference_start_2 Samuel 5:03_reference_end_ _reference_start_2 Samuel 12:17_reference_end_ _reference_start_2 Samuel 17:04_reference_end_ _reference_start_2 Samuel 17:15_reference_end_ _reference_start_2 Samuel 19:12_reference_end_ _reference_start_1 Kings 8:01_reference_end_ _reference_start_1 Kings 8:03_reference_end_ _reference_start_1 Kings 10:08_reference_end_ _reference_start_1 Kings 12:06_reference_end_ _reference_start_1 Kings 12:08_reference_end_ _reference_start_1 Kings 12:13_reference_end_ _reference_start_1 Kings 20:07_reference_end_ _reference_start_1 Kings 21:08_reference_end_ _reference_start_1 Kings 21:11_reference_end_ _reference_start_1 Kings 13:11_reference_end_ _reference_start_1 Kings 13:25_reference_end_ _reference_start_1 Kings 13:29_reference_end_ _reference_start_1 Chronicles 11:03_reference_end_ _reference_start_1 Chronicles 15:25_reference_end_ _reference_start_1 Chronicles 21:16_reference_end_ _reference_start_Esther 3:13_reference_end_ _reference_start_Proverbs 17:06_reference_end_ _reference_start_Isaiah 3:02_reference_end_ GGp!!qperror (an)error (an)Hebrew: שְׁחִיתָה \f erreur, faute \cme corrupt \cmf corrompu _reference_start_Daniel 2:09_reference_end_ooelderelderHebrew: זָקֵן \f ancien \cme elder, person in authority \cmf chefs, personne en autorité \cme people who are old \cmf personnes âgées _reference_start_Genesis 24:02_reference_end_ _reference_start_Genesis 50:07_reference_end_ _reference_start_Genesis 18:11_reference_end_ _reference_start_Genesis 19:04_reference_end_ _reference_start_Genesis 25:08_reference_end_ _reference_start_Genesis 35:29_reference_end_ _reference_start_Genesis 43:27_reference_end_ _reference_start_Genesis 44:20_reference_end_ _reference_start_Exodus 3:16_reference_end_ _reference_start_Exodus 3:18_reference_end_ _reference_start_Exodus 4:29_reference_end_ _reference_start_Exodus 12:21_reference_end_ _reference_start_Exodus 14:09_reference_end_ _reference_start_Exodus 17:05_reference_end_  &ywt!!=tevil, harmevil, harmHebrew: רָעָה / רַע \f mal \cme displeasing, awful \cmf ne pas plaire, horrible \cme ethical evil \cmf méchanceté moral \c2sEseunucheunuchHebrew: סָרִיס \f eunuque \cme castrated male, offical in king's court \cmf homme châtré, fonctionnaire dans le cour royal \cme official in king's court \cmf fonctionnaire dans le cour royal _reference_start_Genesis 37:36_reference_end_ _reference_start_Genesis 39:01_reference_en}rWreternaleternalHebrew: עֹולָם \f éternel \cme always \cmf toujours, tout le temps \cme Vq%%uqeternal lifeeternal lifeHebrew: חַיֵּי עֹולָם \f vie éternel \cme live forever vs eternal shame \cmf vie éternel par opposition à honte éternel _reference_start_Daniel 12:02_reference_end_before the beginning of the world and after it's end \cmf avant le commencement de la terre et après sa fin \cme before the beginning of the world til after its end \cmf avant le commencement de la terre et après sa fin \cme for life \cmf pour toute la vie \cme going on forever \cmf pour toujours _reference_start_1 Kings 9:05_reference_end_ \cme live for ever \cmf vivre pour toujours \cme of past time \cmf du temps passé \cme of past time, of long ago \cmf de temps passé, auparavant \cme starting a long time ago \cmf depuis long temps _reference_start_Genesis 21:33_reference_end_ _reference_start_Genesis 49:26_reference_end_ _reference_start_Genesis 6:03_reference_end_ _reference_start_Genesis 9:12_reference_end_ _reference_start_Genesis 9:16_reference_end_ _reference_start_Genesis 13:15_reference_end_ _reference_start_Genesis 17:07_reference_end_ _reference_start_Genesis 17:08_reference_end_ _reference_start_Genesis 17:13_reference_end_ _reference_start_Genesis 17:19_reference_end_ _reference_start_Genesis 48:04_reference_end_ _reference_start_Genesis 3:22_reference_end_ _reference_start_Genesis 6:04_reference_end_ _reference_start_Genesis 49:26_reference_end_ _reference_start_Exodus 3:15_reference_end_ _reference_start_Exodus 15:18_reference_end_ _reference_start_Exodus 15:18_reference_end_ _reference_start_Exodus 19:09_reference_end_ _reference_start_Exodus 21:06_reference_end_ _reference_start_Exodus 12:14_reference_end_ _reference_start_Exodus 12:17_reference_end_ _reference_start_Exodus 12:24_reference_end_ _reference_start_Exodus 14:13_reference_end_ _reference_start_Exodus 27:21_reference_end_ _reference_start_Exodus 28:41_reference_end_ _reference_start_Numbers 10:08_reference_end_ _reference_start_Deuteronomy 33:27_reference_end_ _reference_start_Deuteronomy 28:46_reference_end_ _reference_start_Deuteronomy 32:40_reference_end_ _reference_start_Deuteronomy 32:07_reference_end_ _reference_start_1 Samuel 1:22_reference_end_ _reference_start_1 Samuel 2:30_reference_end_ _reference_start_1 Samuel 20:23_reference_end_ _reference_start_1 Samuel 27:12_reference_end_ _reference_start_1 Samuel 3:13_reference_end_ _reference_start_1 Samuel 3:14_reference_end_ _reference_start_1 Samuel 10:15_reference_end_ _reference_start_1 Samuel 13:13_reference_end_ _reference_start_1 Samuel 20:42_reference_end_ _reference_start_1 Samuel 27:08_reference_end_ _reference_start_2 Samuel 3:28_reference_end_ _reference_start_2 Samuel 7:13_reference_end_ _reference_start_2 Samuel 7:16_reference_end_ _reference_start_2 Samuel 7:24_reference_end_ _reference_start_2 Samuel 7:25_reference_end_ _reference_start_2 Samuel 7:26_reference_end_ _reference_start_2 Samuel 7:29_reference_end_ _reference_start_2 Samuel 12:10_reference_end_ _reference_start_2 Samuel 13:05_reference_end_ _reference_start_2 Samuel 22:51_reference_end_ _reference_start_1 Kings 1:31_reference_end_ _reference_start_1 Kings 2:33_reference_end_ _reference_start_1 Kings 2:45_reference_end_ _reference_start_1 Kings 8:13_reference_end_ _reference_start_1 Kings 9:03_reference_end_ _reference_start_1 Kings 10:09_reference_end_ _reference_start_1 Chronicles 16:15_reference_end_ _reference_start_1 Chronicles 16:36_reference_end_ _reference_start_1 Chronicles 15:02_reference_end_ _reference_start_1 Chronicles 16:17_reference_end_ _reference_start_1 Chronicles 16:34_reference_end_ _reference_start_1 Chronicles 16:41_reference_end_ _reference_start_1 Chronicles 17:12_reference_end_ _reference_start_1 Chronicles 17:14_reference_end_ _reference_start_1 Chronicles 17:22_reference_end_ _reference_start_1 Chronicles 17:23_reference_end_ _reference_start_1 Chronicles 17:24_reference_end_ _reference_start_1 Chronicles 17:27_reference_end_ _reference_start_1 Chronicles 22:10_reference_end_ _reference_start_1 Chronicles 23:13_reference_end_ _reference_start_1 Chronicles 23:25_reference_end_ _reference_start_1 Chronicles 28:04_reference_end_ _reference_start_1 Chronicles 28:07_reference_end_ _reference_start_1 Chronicles 28:08_reference_end_ _reference_start_1 Chronicles 28:09_reference_end_ _reference_start_1 Chronicles 29:10_reference_end_ _reference_start_1 Chronicles 29:18_reference_end_ _reference_start_2 Chronicles 7:03_reference_end_ _reference_start_2 Chronicles 7:06_reference_end_ _reference_start_2 Chronicles 7:16_reference_end_ _reference_start_Ezra 4:15_reference_end_ _reference_start_Ezra 4:19_reference_end_ _reference_start_Job 20:04_reference_end_ _reference_start_Psalms 90:02_reference_end_ _reference_start_Psalms 19:10_reference_end_ _reference_start_Psalms 24:07_reference_end_ _reference_start_Psalms 24:09_reference_end_ _reference_start_Psalms 28:09_reference_end_ _reference_start_Psalms 30:07_reference_end_ _reference_start_Psalms 30:12_reference_end_ _reference_start_Psalms 61:05_reference_end_ _reference_start_Psalms 61:08_reference_end_ _reference_start_Psalms 61:09_reference_end_ _reference_start_Psalms 71:01_reference_end_ _reference_start_Psalms 110:04_reference_end_ _reference_start_Psalms 139:24_reference_end_ _reference_start_Psalms 22:26_reference_end_ _reference_start_Proverbs 29:14_reference_end_ _reference_start_Proverbs 22:28_reference_end_ _reference_start_Daniel 2:20_reference_end_ _reference_start_Daniel 3:33_reference_end_ _reference_start_Daniel 4:31_reference_end_ _reference_start_Daniel 6:27_reference_end_ _reference_start_Daniel 7:14_reference_end_ _reference_start_Daniel 7:18_reference_end_ _reference_start_Daniel 12:03_reference_end_ _reference_start_Daniel 12:07_reference_end_ _reference_start_Daniel 12:03_reference_end_ _reference_start_Daniel 2:04_reference_end_ _reference_start_Daniel 2:44_reference_end_ _reference_start_Daniel 3:09_reference_end_ _reference_start_Daniel 5:10_reference_end_ _reference_start_Daniel 6:07_reference_end_ _reference_start_Daniel 6:22_reference_end_ _reference_start_Daniel 7:27_reference_end_ _reference_start_Daniel 9:24_reference_end_ _reference_start_Daniel 12:02_reference_end_ _reference_start_Habakkuk 3:06_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5( /r  .r  -r  ,r  +r  *r ) )r " (r  'r  &r $ %r  $r #r  "r  !r - r ! r  r 3 r  r r  r  r  r  r  r  r  r  r * r r  r  r  r  r  r  r  r  r ( r. r! r  r) r r r  r  r  r ~r }r |r {r zr1 yr xr wr0 vr ur tr sr rr  qr  pr or nr1 mr! C~qdWJ=0# yl_RE8+uh[NA4'  rs qs ps os ns ms ls ks js is hs  gs  fs( es( ds' cs%$ br# ar  `r  _r ^r ]r \r [r Zr, Yr Xr  Wr  Vr  Ur Tr Sr Rr Qr! Pr Or Nr Mr Lr Krn JrG Ir= Hr= Gr= Fr Er Dr Cr Br Ar @rZ ?r >r =r <r ;r :r 9r  8r  7r  6r  5r  4r  3r  2r  1r  0r d_ _reference_start_Genesis 40:02_reference_end_ _reference_start_Genesis 40:07_reference_end_ _reference_start_1 Kings 22:09_reference_end_ _reference_start_2 Kings 8:06_reference_end_ _reference_start_Esther 1:10_reference_end_ _reference_start_Esther 1:12_reference_end_ _reference_start_Esther 1:15_reference_end_ _reference_start_Esther 2:03_reference_end_ _reference_start_Esther 2:14_reference_end_ _reference_start_Esther 2:15_reference_end_ _reference_start_Esther 2:21_reference_end_ _reference_start_Esther 4:04_reference_end_ _reference_start_Esther 2:1_reference_end_ _reference_start_Esther 6:02_reference_end_ _reference_start_Esther 6:14_reference_end_ _reference_start_Esther 7:09_reference_end_ _reference_start_Daniel 1:03_reference_end_ _reference_start_Daniel 1:07_reference_end_ _reference_start_Daniel 1:08_reference_end_ _reference_start_Daniel 1:09_reference_end_ _reference_start_Daniel 1:10_reference_end_ _reference_start_Daniel 1:11_reference_end_ _reference_start_Daniel 1:18_reference_end_ C~qdWJ=0# zm`SF9,uh[NA4'  5t  4t ' 3t  2t  1t  0t  /t  .t  -tA ,t; +t# *t  )t% (t# 't &t %t  $t  #t "t !t t t0 t0 t/ t," t, t, t( t t2 t2 t, t%! t% t% t% t4 t t t t2 t2 t' t& t t t t t t t t) t) t) ~t) }t) |t {s zs ys xs ws vs us ts ssme injury, wrong \cmf tor, malheur \cme misery, distress, punishement \cmf misère, détresse, punition \cme of low value \cmf pas de valeur \cme one who does wrong \cmf celui qui fait du mal \cme unkind, vicious \cmf méchant, haineux _reference_start_Genesis 28:08_reference_end_ _reference_start_Genesis 41:03_reference_end_ _reference_start_Genesis 41:19_reference_end_ _reference_start_Genesis 41:20_reference_end_ _reference_start_Genesis 41:21_reference_end_ _reference_start_Genesis 41:27_reference_end_ _reference_start_Genesis 2:09_reference_end_ _reference_start_Genesis 2:17_reference_end_ _reference_start_Genesis 3:05_reference_end_ _reference_start_Genesis 3:22_reference_end_ _reference_start_Genesis 6:05_reference_end_ _reference_start_Genesis 8:21_reference_end_ _reference_start_Genesis 13:13_reference_end_ _reference_start_Genesis 38:07_reference_end_ _reference_start_Genesis 39:09_reference_end_ _reference_start_Genesis 50:17_reference_end_ _reference_start_Genesis 24:50_reference_end_ _reference_start_Genesis 26:29_reference_end_ _reference_start_Genesis 31:24_reference_end_ _reference_start_Genesis 31:29_reference_end_ _reference_start_Genesis 31:52_reference_end_ _reference_start_Genesis 37:02_reference_end_ _reference_start_Genesis 37:02_reference_end_ _reference_start_Genesis 37:20_reference_end_ _reference_start_Genesis 37:33_reference_end_ _reference_start_Genesis 44:04_reference_end_ _reference_start_Genesis 50:15_reference_end_ _reference_start_Genesis 50:20_reference_end_ _reference_start_Genesis 19:19_reference_end_ _reference_start_Genesis 40:07_reference_end_ _reference_start_Genesis 44:29_reference_end_ _reference_start_Genesis 44:31_reference_end_ _reference_start_Genesis 44:34_reference_end_ _reference_start_Genesis 47:09_reference_end_ _reference_start_Genesis 48:16_reference_end_ _reference_start_Genesis 48:16_reference_end_ _reference_start_Exodus 21:08_reference_end_ _reference_start_Exodus 10:10_reference_end_ _reference_start_Exodus 5:19_reference_end_ _reference_start_Exodus 5:19_reference_end_ _reference_start_Leviticus 2710:1_reference_end_ _reference_start_Numbers 11:01_reference_end_ _reference_start_Numbers 20:05_reference_end_ _reference_start_Numbers 14:27_reference_end_ _reference_start_Numbers 14:35_reference_end_ _reference_start_Numbers 14:37_reference_end_ _reference_start_Numbers 11:15_reference_end_ _reference_start_Deuteronomy 28:35_reference_end_ _reference_start_Deuteronomy 28:59_reference_end_ _reference_start_Jude 15:03_reference_end_ _reference_start_1 Samuel 29:07_reference_end_ _reference_start_1 Samuel 12:17_reference_end_ _reference_start_1 Samuel 14:17_reference_end_ _reference_start_1 Samuel 24:12_reference_end_ _reference_start_1 Samuel 25:21_reference_end_ _reference_start_1 Samuel 25:28_reference_end_ _reference_start_1 Samuel 25:39_reference_end_ _reference_start_1 Samuel 26:18_reference_end_ _reference_start_1 Samuel 2:23_reference_end_ _reference_start_1 Samuel 6:09_reference_end_ _reference_start_1 Samuel 12:19_reference_end_ _reference_start_1 Samuel 12:20_reference_end_ _reference_start_1 Samuel 13:22_reference_end_ _reference_start_1 Samuel 15:19_reference_end_ _reference_start_1 Samuel 20:07_reference_end_ _reference_start_1 Samuel 20:09_reference_end_ _reference_start_1 Samuel 20:13_reference_end_ _reference_start_1 Samuel 23:09_reference_end_ _reference_start_1 Samuel 24:10_reference_end_ _reference_start_1 Samuel 24:18_reference_end_ _reference_start_1 Samuel 25:17_reference_end_ _reference_start_1 Samuel 25:26_reference_end_ _reference_start_1 Samuel 29:06_reference_end_ _reference_start_1 Samuel 10:19_reference_end_ _reference_start_1 Samuel 16:14_reference_end_ _reference_start_1 Samuel 16:15_reference_end_ _reference_start_1 Samuel 16:16_reference_end_ _reference_start_1 Samuel 16:23_reference_end_ _reference_start_1 Samuel 19:09_reference_end_ _reference_start_1 Samuel 25:03_reference_end_ _reference_start_1 Samuel 30:22_reference_end_ _reference_start_2 Samuel 3:39_reference_end_ _reference_start_2 Samuel 12:09_reference_end_ _reference_start_2 Samuel 12:11_reference_end_ _reference_start_2 Samuel 14:17_reference_end_ _reference_start_2 Samuel 12:18_reference_end_ _reference_start_2 Samuel 13:16_reference_end_ _reference_start_2 Samuel 15:14_reference_end_ _reference_start_2 Samuel 16:08_reference_end_ _reference_start_2 Samuel 18:32_reference_end_ _reference_start_2 Samuel 17:14_reference_end_ _reference_start_2 Samuel 19:08_reference_end_ _reference_start_2 Samuel 24:16_reference_end_ _reference_start_1 Kings 1:52_reference_end_ _reference_start_1 Kings 3:09_reference_end_ _reference_start_1 Kings 11:06_reference_end_ _reference_start_1 Kings 2:44_reference_end_ _reference_start_1 Kings 11:25_reference_end_ _reference_start_1 Kings 5:18_reference_end_ _reference_start_1 Kings 9:09_reference_end_ _reference_start_1 Kings 21:29_reference_end_ _reference_start_1 Chronicles 21:15_reference_end_ _reference_start_2 Chronicles 7:14_reference_end_ _reference_start_2 Chronicles 7:22_reference_end_ _reference_start_Esther 8:03_reference_end_ _reference_start_Esther 9:02_reference_end_ _reference_start_Esther 9:25_reference_end_ _reference_start_Esther 7:07_reference_end_ _reference_start_Esther 8:06_reference_end_ _reference_start_Esther 7:06_reference_end_ _reference_start_Psalms 28:03_reference_end_ _reference_start_Psalms 34:14_reference_end_ _reference_start_Psalms 34:15_reference_end_ _reference_start_Psalms 34:17_reference_end_ _reference_start_Psalms 34:22_reference_end_ _reference_start_Psalms 51:066_reference_end_ _reference_start_Psalms 52:03_reference_end_ _reference_start_Psalms 52:05_reference_end_ _reference_start_Psalms 52:05_reference_end_ _reference_start_Psalms 56:06_reference_end_ _reference_start_Psalms 71:13_reference_end_ _reference_start_Psalms 71:24_reference_end_ _reference_start_Psalms 10:06_reference_end_ _reference_start_Psalms 23:04_reference_end_ _reference_start_Psalms 23:04_reference_end_ _reference_start_Psalms 34:20_reference_end_ _reference_start_Psalms 49:06_reference_end_ _reference_start_Psalms 54:07_reference_end_ _reference_start_Psalms 71:20_reference_end_ _reference_start_Psalms 90:15_reference_end_ _reference_start_Psalms 94:13_reference_end_ _reference_start_Psalms 121:01_reference_end_ _reference_start_Psalms 140:12_reference_end_ _reference_start_Psalms 144:10_reference_end_ _reference_start_Proverbs 15:10_reference_end_ _reference_start_Proverbs 15:15_reference_end_ _reference_start_Proverbs 1:16_reference_end_ _reference_start_Proverbs 2:14_reference_end_ _reference_start_Proverbs 2:14_reference_end_ _reference_start_Proverbs 3:07_reference_end_ _reference_start_Proverbs 3:30_reference_end_ _reference_start_Proverbs 4:27_reference_end_ _reference_start_Proverbs 5:14_reference_end_ _reference_start_Proverbs 6:14_reference_end_ _reference_start_Proverbs 6:18_reference_end_ _reference_start_Proverbs 6:24_reference_end_ _reference_start_Proverbs 8:13_reference_end_ _reference_start_Proverbs 8:13_reference_end_ _reference_start_Proverbs 11:19_reference_end_ _reference_start_Proverbs 11:27_reference_end_ _reference_start_Proverbs 12:20_reference_end_ _reference_start_Proverbs 12:21_reference_end_ _reference_start_Proverbs 13:17_reference_end_ _reference_start_Proverbs 13:19_reference_end_ _reference_start_Proverbs 13:21_reference_end_ _reference_start_Proverbs 14:16_reference_end_ _reference_start_Proverbs 14:22_reference_end_ _reference_start_Proverbs 14:32_reference_end_ _reference_start_Proverbs 15:26_reference_end_ _reference_start_Proverbs 15:28_reference_end_ _reference_start_Proverbs 16:06_reference_end_ _reference_start_Proverbs 16:17_reference_end_ _reference_start_Proverbs 16:27_reference_end_ _reference_start_Proverbs 16:30_reference_end_ _reference_start_Proverbs 17:13_reference_end_ _reference_start_Proverbs 17:20_reference_end_ _reference_start_Proverbs 20:08_reference_end_ _reference_start_Proverbs 20:22_reference_end_ _reference_start_Proverbs 20:30_reference_end_ _reference_start_Proverbs 21:12_reference_end_ _reference_start_Proverbs 21:20_reference_end_ _reference_start_Proverbs 24:01_reference_end_ _reference_start_Proverbs 24:16_reference_end_ _reference_start_Proverbs 26:26_reference_end_ _reference_start_Proverbs 28:05_reference_end_ _reference_start_Proverbs 28:05_reference_end_ _reference_start_Proverbs 28:10_reference_end_ _reference_start_Proverbs 28:14_reference_end_ _reference_start_Proverbs 29:06_reference_end_ _reference_start_Proverbs 29:06_reference_end_ _reference_start_Proverbs 1:16_reference_end_ _reference_start_Proverbs 3:29_reference_end_ _reference_start_Proverbs 6:14_reference_end_ _reference_start_Proverbs 11:15_reference_end_ _reference_start_Proverbs 12:20_reference_end_ _reference_start_Proverbs 14:22_reference_end_ _reference_start_Proverbs 17:11_reference_end_ _reference_start_Proverbs 20:22_reference_end_ _reference_start_Proverbs 21:10_reference_end_ _reference_start_Proverbs 21:12_reference_end_ _reference_start_Proverbs 31:12_reference_end_ _reference_start_Proverbs 1:33_reference_end_ _reference_start_Proverbs 11:15_reference_end_ _reference_start_Proverbs 12:21_reference_end_ _reference_start_Proverbs 13:17_reference_end_ _reference_start_Proverbs 15:14_reference_end_ _reference_start_Proverbs 16:04_reference_end_ _reference_start_Proverbs 19:23_reference_end_ _reference_start_Proverbs 22:03_reference_end_ _reference_start_Proverbs 25:20_reference_end_ _reference_start_Proverbs 27:12_reference_end_ _reference_start_Proverbs 31:12_reference_end_ _reference_start_Proverbs 20:14_reference_end_ _reference_start_Proverbs 2:12_reference_end_ _reference_start_Proverbs 2:14_reference_end_ _reference_start_Proverbs 4:14_reference_end_ _reference_start_Proverbs 11:21_reference_end_ _reference_start_Proverbs 12:12_reference_end_ _reference_start_Proverbs 12:13_reference_end_ _reference_start_Proverbs 14:19_reference_end_ _reference_start_Proverbs 14:19_reference_end_ _reference_start_Proverbs 15:03_reference_end_ _reference_start_Proverbs 15:26_reference_end_ _reference_start_Proverbs 15:28_reference_end_ _reference_start_Proverbs 17:11_reference_end_ _reference_start_Proverbs 24:20_reference_end_ _reference_start_Proverbs 23:06_reference_end_ _reference_start_Proverbs 26:23_reference_end_ _reference_start_Proverbs 28:22_reference_end_ _reference_start_Ecclesiastes 8:12_reference_end_ _reference_start_Ecclesiastes 12:14_reference_end_ _reference_start_Ecclesiastes 5:12_reference_end_ _reference_start_Ecclesiastes 10:05_reference_end_ _reference_start_Ecclesiastes 1:13_reference_end_ _reference_start_Ecclesiastes 5:15_reference_end_ _reference_start_Ecclesiastes 12:01_reference_end_ _reference_start_Daniel 11:27_reference_end_ _reference_start_Daniel 9:12_reference_end_ _reference_start_Daniel 9:13_reference_end_ _reference_start_Daniel 9:14_reference_end_ _reference_start_Jonah 1:02_reference_end_ _reference_start_Jonah 3:10_reference_end_ _reference_start_Jonah 1:07_reference_end_ _reference_start_Jonah 1:08_reference_end_ _reference_start_Jonah 3:10_reference_end_ _reference_start_Jonah 4:02_reference_end_ _reference_start_Malachi 1:08_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5( xt wt vt  utG ttG st8 rt4 qt4 pt4 ot3B nt" mt" lt" kt" jt it ht gt ft  et  dt ct bt at  `t  _t ^t  ]t  \t , [t  Zt  Yt 4 Xt  Wt  Vt  Ut  Tt  St  Rt  Qt  Pt  Ot Nt Mt ' Lt  Kt  Jt  It  Ht  Gt  Ft  Et  Dt  Ct  Bt  At  @t  ?t  >t  =t  <t  ;t  :t  9t  8t  7t  6t  C|obUH;.!xk^QD7*tgZM@3& ;t! :t 9t 8t 7t 6t 5t 4t  3t  2t 1t 0t /t .t -t ,t +t *t )t (t 't &t %t $t #t "t !t t t t t t t t t t t t  t  t  t  t  t  t  t t t t t t t t t t t t t t t t ty ~t^ }tZ |tG {t6 zt1 yt" C~qdWJ=0# zm`SF9,vi\OB5( ~v  }v  |v {v zv yv xv wv vv uv, tv+ sv rv qv pv) ou  nu  mu  lu  ku  ju  iuA  ht' gt  ft  et  dt  ct  bt  at  `t _t ^t  ]t  \t [t Zt  Yt Xt  Wt Vt Ut Tt St Rt Qt Pt Ot Nt Mt Lt Kt Jt  It Ht Gt Ft Et Dt Ct Bt At @t ?t >t  =t  <t  ju##!uevil spiritevil spiritHebrew: רוּחַ רָעָה \f esprit mauvais \cme spirit that causes bad things to happen \cmf esprit qui cause de mauvaises choses _reference_start_Jude 9:23_reference_end_ _reference_start_1 Samuel 16:14_reference_end_ _reference_start_1 Samuel 16:15_reference_end_ _reference_start_1 Samuel 16:16_reference_end_ _reference_start_1 Samuel 16:23_reference_end_ _reference_start_1 Samuel 18:10_reference_end_ _reference_start_1 Samuel 19:09_reference_end_ers 11:10_reference_end_ _reference_start_Numbers 11:11_reference_end_ _reference_start_Numbers 16:15_reference_end_ _reference_start_Numbers 20:15_reference_end_ _reference_start_Deuteronomy 28:20_reference_end_ _reference_start_1 Samuel 12:25_reference_end_ _reference_start_1 Samuel 26:21_reference_end_ _reference_start_1 Samuel 25:34_reference_end_ _reference_start_1 Samuel 17:28_reference_end_ _reference_start_2 Samuel 19:08_reference_end_ _reference_start_1 Kings 17:20_reference_end_ _reference_start_1 Chronicles 21:17_reference_end_ _reference_start_1 Chronicles 16:22_reference_end_ _reference_start_1 Chronicles 21:17_reference_end_ _reference_start_Psalms 28:04_reference_end_ _reference_start_Psalms 2:09_reference_end_ _reference_start_Proverbs 24:18_reference_end_ _reference_start_Proverbs 17:04_reference_end_ _reference_start_Proverbs 11:15_reference_end_ _reference_start_Proverbs 13:20_reference_end_ _reference_start_Ecclesiastes 7:03_reference_end_ _reference_start_Jeremiah 24:02_reference_end_ YvvevilevilHebrew: רֹע \f méchanceté \cme bad quality \cmf mauvaise qualité \cme displeasing \cmf déplaisant \cme distress, misery \cmf peine \cme ethical badness \cmf méchanceté morale \cme ethical evil \cmf méchanceté moral \cme injurious, do wrong \cmf nuisible, faire tor \cme sad \cmf triste \cme wilfulness \cmf obstination _reference_start_Genesis 41:19_reference_end_ _reference_start_Genesis 19:07_reference_end_ _reference_start_Genesis 19:09_reference_end_ _reference_start_Genesis 31:07_reference_end_ _reference_start_Genesis 43:06_reference_end_ _reference_start_Genesis 44:05_reference_end_ _reference_start_Exodus 5:22_reference_end_ _reference_start_Exodus 5:23_reference_end_ _reference_start_Numb C~qdWJ=0# zm`SF9,vi\OB5( Ay  @y  ?y  >y  =y  <y  ;y  :y 9y" 8y 7y 6y0 5y 4y/ 3y* 2y1 1y* 0x /x .x/ -x ,x +w *w" )w $ (w 'w &w %w0 $w #w" "w !w wn wc w9 w9 w%" w" w w  w  w  w 1 w  w / w  w  w  w  w w v v v  v  v v v v v  v  v  v  v  v  v "_reference_end_ _reference_start_2 Samuel 22:49_reference_end_ _reference_start_1 Kings 14:07_reference_end_ _reference_start_1 Kings 16:02_reference_end_ _reference_start_1 Chronicles 25:05_reference_end_ _reference_start_Psalms 30:02_reference_end_ _reference_start_Psalms 34:04_reference_end_ _reference_start_Psalms 37:34_reference_end_ _reference_start_Psalms 57:06_reference_end_ _reference_start_Psalms 57:12_reference_end_ _reference_start_Psalms 99:05_reference_end_ _reference_start_Psalms 110:07_reference_end_ _reference_start_Proverbs 11:11_reference_end_ _reference_start_Proverbs 14:29_reference_end_ _reference_start_Proverbs 14:34_reference_end_ _reference_start_Isaiah 10:12_reference_end_ _reference_start_Jeremiah 48:29_reference_end_ _reference_start_Daniel 5:20_reference_end_ _reference_start_Daniel 5:23_reference_end_ _reference_start_Daniel 11:12_reference_end_ _reference_start_Daniel 11:36_reference_end_ _reference_start_Daniel 4:34_reference_end_ _reference_start_Daniel 5:19_reference_end_ rrw!!Uwexalt (to)exalt (to)Hebrew: רוּם \f exalter \cme be presuptuous \cmf être présomptueux \cme exalt, worship God \cmf exalter, adorer Dieu \cme give or have pride, glory \cmf donner ou avoir orgueil, gloire \cme praise, exalt \cmf exalter \cme swear an oath \cmf prêter serment _reference_start_Genesis 14:22_reference_end_ _reference_start_Exodus 15:02_reference_end_ _reference_start_1 Samuel 2:01_reference_end_ _reference_start_1 Samuel 2:07_reference_end_ _reference_start_1 Samuel 2:08_reference_end_ _reference_start_1 Samuel 2:10_reference_end_ _reference_start_2 Samuel 22:47_reference_end_ _reference_start_2 Samuel 22:28 @S4z--!zfaithful (to be)faithful (to be)Hebrew: אֲמַן \f être fidèle \cme believe in, trust \cmf avoir confiance en, croire en \cme trustworthy \cmf digne de confiance _reference_start_Daniel 6:24_reference_end_ _reference_start_Daniel 2:45_reference_end_ _reference_start_Daniel 6:05_reference_end_Yy%%{yfaithfulnessfaithfulnessHebrew: אֱמֶ֔ת \f fidélité \cme be true \cmf être vrai \cme being honest, faithful \cmf tenir parole, être fidèle \cme faithfulness and mercy (of God) \cmf fidélité, miséricorde (deȃ  = <: ; :: 9+ 8$ 7 6 5 4  3 2 1" 0 / ." - , + *5 )* (~  '~ &~ %~ $~ #~! "~ !~ ~ ~  ~ ~ ~ ~ ~ ~Z ~7 ~" ~ ~ ~  ~ ~ }  } } } } }= }< }" }" }  } }  }*nce_end_ _reference_start_Exodus 20:20_reference_end_ _reference_start_2 Samuel 23:03_reference_end_ _reference_start_Psalms 2:11_reference_end_ _reference_start_Psalms 19:10_reference_end_ _reference_start_Psalms 34:12_reference_end_ _reference_start_Psalms 55:06_reference_end_ _reference_start_Psalms 90:11_reference_end_ _reference_start_Proverbs 1:07_reference_end_ _reference_start_Proverbs 1:29_reference_end_ _reference_start_Proverbs 2:05_reference_end_ _reference_start_Proverbs 8:13_reference_end_ _reference_start_Proverbs 9:10_reference_end_ _reference_start_Proverbs 10:27_reference_end_ _reference_start_Proverbs 14:26_reference_end_ _reference_start_Proverbs 14:27_reference_end_ _reference_start_Proverbs 15:16_reference_end_ _reference_start_Proverbs 15:33_reference_end_ _reference_start_Proverbs 16:06_reference_end_ _reference_start_Proverbs 19:23_reference_end_ _reference_start_Proverbs 22:04_reference_end_ _reference_start_Proverbs 23:17_reference_end_ _reference_start_Jonah 1:16_reference_end_ ttfoolishfoolishHebrew: אֱוִיל \f stupide \cme one who despises widsom and is morally badՂ ''_fool, foolishfool, foolishHebrew: סָכַל \cme lack of ethical and religious wisdom, not fear God \cmf manque de sagesse morale et religieuse, cpas caindre Dieu _reference_start_Genesis 31:28_reference_end_ _reference_start_Ecclesiastes 2:19_reference_end_sfear (to)fear (to)Hebrew: .יַרֶא \f craindre \cme awe inspiring \cmf qui inspire crainte \cme respect, honor \cmf respecter, honorer \cme terror of presence of God \cmf terreur de la présence de Dieu \cme worship God (or gods) in awe & obey him \cmf adorer Dieu (ҁi''Fear of Isaacfear of isaacHebrew: פַּחַד יִצְחָק \f Dieu (le Peur d'Issac) \cme the Fear of Isaac \cmf le Peur d'Issac _reference_start_Genesis 31:42_reference_end_ _reference_start_Genesis 31:53_reference_end_or dieux) en ayant peur et l'obeir _reference_start_Genesis 3:10_reference_end_ _reference_start_Genesis 20:08_reference_end_ _reference_start_Exodus 15:11_reference_end_ _reference_start_Exodus 34:10_reference_end_ _reference_start_Exodus 3:06_reference_end_ _reference_start_Exodus 20:20_reference_end_ _reference_start_Exodus 34:30_reference_end_ _reference_start_Exodus 1:17_reference_end_ _reference_start_Exodus 1:21_reference_end_ _reference_start_Exodus 9:30_reference_end_ _reference_start_Exodus 14:31_reference_end_ _reference_start_Leviticus 19:03_reference_end_ _reference_start_Leviticus 25:17_reference_end_ _reference_start_Leviticus 25:36_reference_end_ _reference_start_Leviticus 25:43_reference_end_ _reference_start_Deuteronomy 28:58_reference_end_ _reference_start_Deuteronomy 10:12_reference_end_ _reference_start_Deuteronomy 28:58_reference_end_ _reference_start_Joshua 4:14_reference_end_ _reference_start_1 Samuel 12:20_reference_end_ _reference_start_1 Samuel 12:14_reference_end_ _reference_start_1 Samuel 12:18_reference_end_ _reference_start_1 Samuel 12:24_reference_end_ _reference_start_2 Samuel 7:23_reference_end_ _reference_start_2 Samuel 6:09_reference_end_ _reference_start_1 Kings 3:28_reference_end_ _reference_start_1 Kings 8:40_reference_end_ _reference_start_1 Kings 8:43_reference_end_ _reference_start_1 Chronicles 17:21_reference_end_ _reference_start_1 Chronicles 16:25_reference_end_ _reference_start_Psalms 139:14_reference_end_ _reference_start_Psalms 52:08_reference_end_ _reference_start_Proverbs 13:13_reference_end_ _reference_start_Proverbs 24:21_reference_end_ _reference_start_Proverbs 3:07_reference_end_ _reference_start_Proverbs 14:02_reference_end_ _reference_start_Proverbs 24:21_reference_end_ _reference_start_Proverbs 31:30_reference_end_ _reference_start_Ecclesiastes 3:14_reference_end_ _reference_start_Ecclesiastes 8:12_reference_end_ _reference_start_Ecclesiastes 12:13_reference_end_ _reference_start_Daniel 7:04_reference_end_ _reference_start_Daniel 9:04_reference_end_ C}pcVI</"yl_RE8+tgZM@3&                ~ } | { z y x w  v" u+ t2 s r q  p o n m  l  k j i h g f e d c b a `  _  ^  ]  \  [ Z  Y X W V U  T S R Q P O N M L K J4 I H  \cmf qqn qui dédaigne la sagesse et qui est mal moralement _reference_start_Proverbs 1:07_reference_end_ _reference_start_Proverbs 7:22_reference_end_ _reference_start_Proverbs 10:08_reference_end_ _reference_start_Proverbs 10:10_reference_end_ _reference_start_Proverbs 10:14_reference_end_ _reference_start_Proverbs 10:21_reference_end_ _reference_start_Proverbs 11:29_reference_end_ _reference_start_Proverbs 12:15_reference_end_ _reference_start_Proverbs 12:16_reference_end_ _reference_start_Proverbs 14:09_reference_end_ _reference_start_Proverbs 14:09_reference_end_ _reference_start_Proverbs 15:05_reference_end_ _reference_start_Proverbs 16:22_reference_end_ _reference_start_Proverbs 17:28_reference_end_ _reference_start_Proverbs 20:03_reference_end_ _reference_start_Proverbs 24:07_reference_end_ _reference_start_Proverbs 27:03_reference_end_ _reference_start_Proverbs 27:22_reference_end_ _reference_start_Proverbs 29:09_reference_end_ 0u0A##OforgivenessforgivenessHebrew: סְלִיחָה \f pardon \cme God removes guilt (and gives life and blessing) \cmf Dieu enlève culpabilité (et donne la vie et bénédiction) _reference_start_Nehemiah 9:17_reference_end_ _reference_start_Psalms 130:04_reference_end_ _reference_start_Daniel 9:09_reference_end_wfoolfoolHebrew: כְּסִיל \f insensé \cme stupid person, fool \cmf peronne simple, un insensé _reference_start_Proverbs 1:22_reference_end_ _reference_start_Proverbs 10:23_reference_end_ _reference_start_Proverbs 12:23_reference_end_ _reference_start_Proverbs 15:02_reference_end_ _reference_start_Proverbs 15:14_reference_end_ _reference_start_Proverbs 18:02_reference_end_ce_end_ _reference_start_Leviticus 17:16_reference_end_ _reference_start_Leviticus 19:08_reference_end_ _reference_start_Leviticus 19:17_reference_end_ _reference_start_Leviticus 20:20_reference_end_ _reference_start_Leviticus 22:09_reference_end_ _reference_start_Leviticus 4:15_reference_end_ _reference_start_Numbers 5:31_reference_end_ _reference_start_Numbers 18:01_reference_end_ _reference_start_Numbers 18:23_reference_end_ _reference_start_Numbers 9:13_reference_end_ _reference_start_Numbers 14:18_reference_end_ _reference_start_Numbers 18:22_reference_end_ _reference_start_Numbers 18:32_reference_end_ _reference_start_1 Samuel 15:25_reference_end_ _reference_start_1 Samuel 25:28_reference_end_ _reference_start_Psalms 32:05_reference_end_ _reference_start_Psalms 85:03_reference_end_ _reference_start_Isaiah 33:24_reference_end_ _reference_start_Isaiah 53:12_reference_end_ _reference_start_Ezekiel 49:1_reference_end_ _reference_start_Hosea 14:03_reference_end_ _reference_start_Micah 7:18_reference_end_ MMK%%_forgive (to)forgive (to)Hebrew: כָּפַר \f pardonner \cme appease, pacify \cmf apaisir \ڌ8--)forgive sin (to)forgive sin (to)Hebrew: נָשָׂא עָוֹן/חֵטְא \f pardonner péché \cme bear punishement \cmf subir punition \cme God removes sin \cmf Deiu enlève péché \cme person forgives sin \cmf une personne pardonne le péché _reference_start_Genesis 50:17_reference_end_ _reference_start_Exodus 28:43_reference_end_ _reference_start_Exodus 34:07_reference_end_ _reference_start_Exodus 10:17_reference_end_ _reference_start_Leviticus 5:01_reference_end_ _reference_start_Leviticus 5:17_reference_end_ _reference_start_Leviticus 7:18_referen C~qdWJ=0# zm`SF9,vi\OB5( M L K" J I H! G F E  D  C B" A @, ?+ >/ = < ;m :3 93 8 7% 6 5 " 4  3 2 2 ' 1 $ 0 $ / " . " -  ,  +  * ) ( ' & % $ # " !      !     "       !  1 5 ! Ucme destroy, remove \cmf detruire, enlever \cme God forgives sin & doesn't punish \cmf Dieu pardonne le péché et ne puni pas \cme God removes from guilt of unintentional sin \cmf Dieu enlève culpabilité des péchés non-exprés \cme God removes guilt (and gives life and blessing) \cmf Dieu enlève culpabilité (et donne la vie et bénédiction) \cme God wipes away, removes sin \cmf Dieu enléve le péch \cme ransom, payment for a life \cmf rançon, payment pour une vie \cme take away guilt, pay for sin \cmf enlever responsabilité, payer pour le péché _reference_start_Genesis 32:21_reference_end_ _reference_start_Genesis 6:07_reference_end_ _reference_start_Genesis 7:04_reference_end_ _reference_start_Genesis 7:23_reference_end_ _reference_start_Exodus 17:14_reference_end_ _reference_start_Exodus 34:09_reference_end_ _reference_start_Exodus 21:30_reference_end_ _reference_start_Exodus 30:12_reference_end_ _reference_start_Exodus 30:15_reference_end_ _reference_start_Exodus 30:16_reference_end_ _reference_start_Exodus 29:33_reference_end_ _reference_start_Leviticus 5:10_reference_end_ _reference_start_Leviticus 5:13_reference_end_ _reference_start_Leviticus 5:16_reference_end_ _reference_start_Leviticus 5:18_reference_end_ _reference_start_Leviticus 5:26_reference_end_ _reference_start_Leviticus 4:07_reference_end_ _reference_start_Leviticus 5:06_reference_end_ _reference_start_Leviticus 5:10_reference_end_ _reference_start_Leviticus 5:13_reference_end_ _reference_start_Leviticus 5:16_reference_end_ _reference_start_Leviticus 5:18_reference_end_ _reference_start_Leviticus 5:26_reference_end_ _reference_start_Numbers 14:19_reference_end_ _reference_start_Numbers 14:20_reference_end_ _reference_start_Deuteronomy 21:08_reference_end_ _reference_start_1 Samuel 3:14_reference_end_ _reference_start_2 Samuel 21:03_reference_end_ _reference_start_1 Kings 8:30_reference_end_ _reference_start_1 Kings 8:34_reference_end_ _reference_start_1 Kings 8:34_reference_end_ _reference_start_1 Kings 8:36_reference_end_ _reference_start_1 Kings 8:36_reference_end_ _reference_start_1 Kings 8:39_reference_end_ _reference_start_1 Kings 8:50_reference_end_ _reference_start_2 Kings 24:04_reference_end_ _reference_start_1 Chronicles 6:34_reference_end_ _reference_start_2 Chronicles 7:14_reference_end_ _reference_start_Nehemiah 3:37_reference_end_ _reference_start_Psalms 25:11_reference_end_ _reference_start_Psalms 51:03_reference_end_ _reference_start_Psalms 51:11_reference_end_ _reference_start_Psalms 109:14_reference_end_ _reference_start_Proverbs 16:14_reference_end_ _reference_start_Proverbs 16:06_reference_end_ _reference_start_Isaiah 47:11_reference_end_ _reference_start_Isaiah 43:25_reference_end_ _reference_start_Isaiah 44:22_reference_end_ _reference_start_Isaiah 22:14_reference_end_ _reference_start_Jeremiah 31:34_reference_end_ _reference_start_Jeremiah 18:23_reference_end_ _reference_start_Daniel 9:19_reference_end_ _reference_start_Daniel 9:24_reference_end_ _reference_start_Amos 7:02_reference_end_ F%%Uglorify (to)glorify (to)Hebrew: הֱדֶר \f glorifier \cme glorify a person \cmf glorifier une personne \cme glorify God \cmf glorifier Dieu \cme honor, greatness given by greater to lesser \cmf honeur, grandeur donner par qqn supérieur à un inférieur _reference_start_Daniel 4:27_reference_end_ _reference_start_Daniel 4:33_reference_end_ _reference_start_Daniel 5:18_reference_end_ _reference_start_Daniel 4:31_reference_end_ _reference_start_Daniel 4:34_reference_end_ _reference_start_Daniel 5:23_reference_end_ _reference_start_Daniel 2:06_reference_end_ _reference_start_Daniel 2:37_reference_end_ _reference_start_Daniel 4:27_reference_end_ _reference_start_Daniel 4:33_reference_end_ _reference_start_Daniel 5:18_reference_end_ _reference_start_Daniel 5:20_reference_end_ _reference_start_Daniel 7:14_reference_end_ C~qdWJ=0"yl_RE8+uh[NA4'         ? 9 9 9        ~ } | { z y x  w  v  u  t  s  r  q  p  o  n  m  l k j i h g f e d c( b a- ` _1 ^ ]] \L [ Z Y X W  V U T S R Q P! O N% nnugloriousgloriousHebrew: אָדַר \f magnifique \cme glorious, majestic \cmf glorieux, majestique \cme majestic, awsome \cmf majestueux, impressionant _reference_start_Exodus 15:06_reference_end_ _reference_start_Exodus 15:11_reference_end_ _reference_start_Exodus 15:10_reference_end_ _reference_start_1 Samuel 4:08_reference_end_ _reference_start_Psalms 8:02_reference_end_ _reference_start_Psalms 8:10_reference_end_ _reference_start_Psalms 8:2_reference_end_ _reference_start_Psalms 16:03_reference_end_ _reference_start_Psalms 76:05_reference_end_ _reference_start_Psalms 93:04_reference_end_ _reference_start_Psalms 136:18_reference_end_ference_start_Numbers 14:22_reference_end_ _reference_start_Numbers 20:06_reference_end_ _reference_start_Joshua 7:19_reference_end_ _reference_start_1 Samuel 2:08_reference_end_ _reference_start_1 Samuel 6:05_reference_end_ _reference_start_1 Samuel 4:21_reference_end_ _reference_start_1 Samuel 4:22_reference_end_ _reference_start_1 Kings 3:13_reference_end_ _reference_start_1 Kings 8:11_reference_end_ _reference_start_1 Chronicles 17:18_reference_end_ _reference_start_1 Chronicles 29:12_reference_end_ _reference_start_1 Chronicles 29:28_reference_end_ _reference_start_1 Chronicles 16:24_reference_end_ _reference_start_1 Chronicles 16:28_reference_end_ _reference_start_1 Chronicles 16:29_reference_end_ _reference_start_2 Chronicles 7:01_reference_end_ _reference_start_2 Chronicles 7:02_reference_end_ _reference_start_2 Chronicles 7:03_reference_end_ _reference_start_Esther 1:04_reference_end_ _reference_start_Esther 5:11_reference_end_ _reference_start_Psalms 21:06_reference_end_ _reference_start_Psalms 3:04_reference_end_ _reference_start_Psalms 8:06_reference_end_ _reference_start_Psalms 19:02_reference_end_ _reference_start_Psalms 24:07_reference_end_ _reference_start_Psalms 24:08_reference_end_ _reference_start_Psalms 24:09_reference_end_ _reference_start_Psalms 24:10_reference_end_ _reference_start_Psalms 57:06_reference_end_ _reference_start_Psalms 57:09_reference_end_ _reference_start_Psalms 57:12_reference_end_ _reference_start_Psalms 63:03_reference_end_ _reference_start_Psalms 138:05_reference_end_ _reference_start_Psalms 30:13_reference_end_ _reference_start_Proverbs 3:16_reference_end_ _reference_start_Proverbs 20:03_reference_end_ _reference_start_Proverbs 22:04_reference_end_ _reference_start_Proverbs 25:02_reference_end_ _reference_start_Proverbs 25:27_reference_end_ _reference_start_Proverbs 29:23_reference_end_ _reference_start_Proverbs 25:02_reference_end_ _reference_start_Isaiah 22:24_reference_end_ _reference_start_Daniel 11:39_reference_end_ _reference_start_Nahum 2:10_reference_end_ ""N glorygloryHebrew: כָּבֹוד / כָּבֹד \f gloire \cme glory of kings and kingdoms \cmf gloire de rois et des royaumes \cme honor to a person in a high position \cmf honorer une personne en haute position \cme honor, reverence to God \cmf honor, révérance à Dieu \cme metonomy for person \cmf métonomie pour une personne \cme physical evidence of God's presence \cmf evidence physique du présence de Dieu \cme possessions, fortune \cmf posessions, fortune _reference_start_Genesis 49:06_reference_end_ _reference_start_Genesis 31:01_reference_end_ _reference_start_Genesis 45:13_reference_end_ _reference_start_Exodus 28:02_reference_end_ _reference_start_Exodus 28:40_reference_end_ _reference_start_Exodus 16:07_reference_end_ _reference_start_Exodus 16:10_reference_end_ _reference_start_Exodus 24:16_reference_end_ _reference_start_Exodus 24:17_reference_end_ _reference_start_Numbers 14:10_reference_end_ _reference_start_Numbers 14:21_reference_end_ _re C~qdWJ=0# zm`SF9,vi\OB5( S R Q P O N M L K J I H ' G F E D C B A @ ? > = < ; : 9 8/ 7 6 5 4 3 2 1 0 / . - , + * ) (/ '- & % $ #, " !  [ D    1 0 + #   "  '    z %%=God Almightygod almightyHebrew: אל שַׁדַּי \f Dieu Tout-Puissant \cme (God) Almighty \cmf (Dieu) le Tout-Puissant _reference_start_Genesis 17:01_reference_end_ _reference_start_Genesis 28:03_reference_end_ _reference_start_Genesis 35:11_reference_end_ _reference_start_Genesis 43:14_reference_end_ _reference_start_Genesis 48:03_reference_end_ _reference_start_Genesis 49:25_reference_end_ _reference_start_Exodus 6:03_reference_end_ _reference_start_Numbers 24:04_reference_end_ _reference_start_Numbers 24:16_reference_end_ _reference_start_Psalms 68:15_reference_end_ _reference_start_Psalms 91:01_reference_end_nce_end_ _reference_start_Daniel 6:12_reference_end_ _reference_start_Daniel 6:17_reference_end_ _reference_start_Daniel 6:21_reference_end_ _reference_start_Daniel 6:23_reference_end_ _reference_start_Daniel 6:24_reference_end_ _reference_start_Daniel 6:27_reference_end_ _reference_start_Daniel 2:11_reference_end_ _reference_start_Daniel 2:47_reference_end_ _reference_start_Daniel 3:12_reference_end_ _reference_start_Daniel 3:14_reference_end_ _reference_start_Daniel 3:15_reference_end_ _reference_start_Daniel 3:18_reference_end_ _reference_start_Daniel 3:25_reference_end_ _reference_start_Daniel 3:28_reference_end_ _reference_start_Daniel 4:05_reference_end_ _reference_start_Daniel 4:06_reference_end_ _reference_start_Daniel 4:15_reference_end_ _reference_start_Daniel 5:04_reference_end_ _reference_start_Daniel 5:11_reference_end_ _reference_start_Daniel 5:14_reference_end_ _reference_start_Daniel 5:23_reference_end_ _reference_start_Daniel 6:08_reference_end_ _reference_start_Daniel 6:13_reference_end_ G %%UGod (elohim)god (elohim)Hebrew: אֱלֹהִים \f Dieu (elohim) \cme God (elohim) \cmf Dieu (elohim) _reference_start_O !!oGod (elah)god (elah)Hebrew: אֱלָהּ \f Dieu (elah) \cme God \cmf Seigneur, Dieu \cme pagan god or gods \cmf dieu ou dieux païen(s) _reference_start_2 Chronicles 32:15_reference_end_ _reference_start_Psalms 18:32_reference_end_ _reference_start_Isaiah 44:08_reference_end_ _reference_start_Daniel 2:20_reference_end_ _reference_start_Daniel 2:23_reference_end_ _reference_start_Daniel 2:28_reference_end_ _reference_start_Daniel 2:45_reference_end_ _reference_start_Daniel 2:47_reference_end_ _reference_start_Daniel 3:17_reference_end_ _reference_start_Daniel 3:28_reference_end_ _reference_start_Daniel 3:29_reference_end_ _reference_start_Daniel 5:03_reference_end_ _reference_start_Daniel 5:23_reference_end_ _reference_start_Daniel 5:26_reference_end_ _reference_start_Daniel 6:06_reference_end_ _reference_start_Daniel 6:11_refere1 Kings 18:39_reference_end_ \cme pagan god or gods \cmf dieu ou dieux païen(s) _reference_start_Genesis 1:1_reference_end_ _reference_start_Genesis 1:01_reference_end_ _reference_start_Genesis 4:25_reference_end_ _reference_start_Genesis 5:01_reference_end_ _reference_start_Genesis 5:22_reference_end_ _reference_start_Genesis 5:24_reference_end_ _reference_start_Genesis 5:24_reference_end_ _reference_start_Genesis 6:1_reference_end_ _reference_start_Genesis 7:09_reference_end_ _reference_start_Genesis 7:16_reference_end_ _reference_start_Genesis 8:01_reference_end_ _reference_start_Genesis 8:15_reference_end_ _reference_start_Genesis 9:1_reference_end_ _reference_start_Genesis 17:1_reference_end_ _reference_start_Genesis 19:29_reference_end_ _reference_start_Genesis 20:1_reference_end_ _reference_start_Genesis 23:06_reference_end_ _reference_start_Genesis 24:03_reference_end_ _reference_start_Genesis 25:11_reference_end_ _reference_start_Genesis 27:28_reference_end_ _reference_start_Genesis 28:1_reference_end_ _reference_start_Genesis 30:1_reference_end_ _reference_start_Genesis 35:1_reference_end_ _reference_start_Genesis 39:09_reference_end_ _reference_start_Genesis 40:08_reference_end_ _reference_start_Genesis 41:1_reference_end_ _reference_start_Genesis 42:18_reference_end_ _reference_start_Genesis 42:28_reference_end_ _reference_start_Genesis 43:23_reference_end_ _reference_start_Genesis 43:29_reference_end_ _reference_start_Genesis 44:16_reference_end_ _reference_start_Genesis 45:05_reference_end_ _reference_start_Genesis 45:07_reference_end_ _reference_start_Genesis 45:08_reference_end_ _reference_start_Genesis 45:09_reference_end_ _reference_start_Genesis 46:01_reference_end_ _reference_start_Genesis 46:02_reference_end_ _reference_start_Genesis 46:03_reference_end_ _reference_start_Genesis 48:1_reference_end_ _reference_start_Genesis 50:1_reference_end_ _reference_start_Genesis 31:30_reference_end_ _reference_start_Genesis 31:32_reference_end_ _reference_start_Genesis 35:02_reference_end_ _reference_start_Genesis 35:04_reference_end_ _reference_start_Exodus 1:17_reference_end_ _reference_start_Exodus 1:20_reference_end_ _reference_start_Exodus 1:21_reference_end_ _reference_start_Exodus 2:23_reference_end_ _reference_start_Exodus 2:24_reference_end_ _reference_start_Exodus 2:25_reference_end_ _reference_start_Exodus 3:1_reference_end_ _reference_start_Exodus 5:03_reference_end_ _reference_start_Exodus 5:08_reference_end_ _reference_start_Exodus 6:02_reference_end_ _reference_start_Exodus 6:07_reference_end_ _reference_start_Exodus 7:01_reference_end_ _reference_start_Exodus 8:1_reference_end_ _reference_start_Exodus 13:1_reference_end_ _reference_start_Exodus 14:19_reference_end_ _reference_start_Exodus 15:02_reference_end_ _reference_start_Exodus 17:09_reference_end_ _reference_start_Exodus 18:1_reference_end_ _reference_start_Exodus 19:03_reference_end_ _reference_start_Exodus 19:17_reference_end_ _reference_start_Exodus 19:19_reference_end_ _reference_start_Exodus 20:01_reference_end_ _reference_start_Exodus 20:19_reference_end_ _reference_start_Exodus 20:20_reference_end_ _reference_start_Exodus 20:21_reference_end_ _reference_start_Exodus 21:13_reference_end_ _reference_start_Exodus 24:10_reference_end_ _reference_start_Exodus 24:11_reference_end_ _reference_start_Exodus 24:13_reference_end_ _reference_start_Exodus 29:45_reference_end_ _reference_start_Exodus 7:01_reference_end_ _reference_start_Exodus 12:12_reference_end_ _reference_start_Exodus 18:11_reference_end_ _reference_start_Exodus 20:03_reference_end_ _reference_start_Exodus 20:23_reference_end_ _reference_start_Exodus 22:19_reference_end_ _reference_start_Exodus 22:27_reference_end_ _reference_start_Exodus 23:13_reference_end_ _reference_start_Exodus 23:24_reference_end_ _reference_start_Exodus 23:32_reference_end_ _reference_start_Exodus 23:33_reference_end_ _reference_start_Leviticus 18:21_reference_end_ _reference_start_Leviticus 25:17_reference_end_ _reference_start_Leviticus 25:36_reference_end_ _reference_start_Leviticus 25:38_reference_end_ _reference_start_Leviticus 25:43_reference_end_ _reference_start_Leviticus 25:55_reference_end_ _reference_start_Numbers 10:10_reference_end_ _reference_start_Numbers 21:05_reference_end_ _reference_start_Deuteronomy 18:1_reference_end_ _reference_start_Deuteronomy 28:1_reference_end_ _reference_start_Deuteronomy 18:20_reference_end_ _reference_start_Deuteronomy 28:14_reference_end_ _reference_start_Deuteronomy 28:36_reference_end_ _reference_start_Deuteronomy 28:64_reference_end_ _reference_start_Deuteronomy 32:17_reference_end_ _reference_start_Deuteronomy 32:37_reference_end_ _reference_start_Deuteronomy 32:39_reference_end_ _reference_start_1 Samuel 1:17_reference_end_ _reference_start_1 Samuel 2:02_reference_end_ _reference_start_1 Samuel 2:27_reference_end_ _reference_start_1 Samuel 3:03_reference_end_ _reference_start_1 Samuel 3:17_reference_end_ _reference_start_1 Samuel 4:1_reference_end_ _reference_start_1 Samuel 5:1_reference_end_ _reference_start_1 Samuel 6:03_reference_end_ _reference_start_1 Samuel 6:05_reference_end_ _reference_start_1 Samuel 9:1_reference_end_ _reference_start_1 Samuel 10:1_reference_end_ _reference_start_1 Samuel 11:06_reference_end_ _reference_start_1 Samuel 14:1_reference_end_ _reference_start_1 Samuel 16:15_reference_end_ _reference_start_1 Samuel 16:16_reference_end_ _reference_start_1 Samuel 16:23_reference_end_ _reference_start_1 Samuel 17:45_reference_end_ _reference_start_1 Samuel 17:46_reference_end_ _reference_start_1 Samuel 18:10_reference_end_ _reference_start_1 Samuel 19:20_reference_end_ _reference_start_1 Samuel 19:23_reference_end_ _reference_start_1 Samuel 22:03_reference_end_ _reference_start_1 Samuel 22:13_reference_end_ _reference_start_1 Samuel 22:15_reference_end_ _reference_start_1 Samuel 23:07_reference_end_ _reference_start_1 Samuel 23:14_reference_end_ _reference_start_1 Samuel 23:16_reference_end_ _reference_start_1 Samuel 25:22_reference_end_ _reference_start_1 Samuel 26:08_reference_end_ _reference_start_1 Samuel 28:15_reference_end_ _reference_start_1 Samuel 29:09_reference_end_ _reference_start_1 Samuel 30:15_reference_end_ _reference_start_1 Samuel 5:07_reference_end_ _reference_start_1 Samuel 6:05_reference_end_ _reference_start_1 Samuel 7:03_reference_end_ _reference_start_1 Samuel 8:08_reference_end_ _reference_start_1 Samuel 17:43_reference_end_ _reference_start_1 Samuel 26:19_reference_end_ _reference_start_1 Samuel 28:13_reference_end_ _reference_start_2 Samuel 2:27_reference_end_ _reference_start_2 Samuel 3:09_reference_end_ _reference_start_2 Samuel 3:35_reference_end_ _reference_start_2 Samuel 6:1_reference_end_ _reference_start_2 Samuel 7:02_reference_end_ _reference_start_2 Samuel 7:22_reference_end_ _reference_start_2 Samuel 7:23_reference_end_ _reference_start_2 Samuel 7:24_reference_end_ _reference_start_2 Samuel 7:26_reference_end_ _reference_start_2 Samuel 7:28_reference_end_ _reference_start_2 Samuel 7:7_reference_end_ _reference_start_2 Samuel 9:03_reference_end_ _reference_start_2 Samuel 10:12_reference_end_ _reference_start_2 Samuel 12:16_reference_end_ _reference_start_2 Samuel 14:13_reference_end_ _reference_start_2 Samuel 14:14_reference_end_ _reference_start_2 Samuel 14:16_reference_end_ _reference_start_2 Samuel 14:17_reference_end_ _reference_start_2 Samuel 14:20_reference_end_ _reference_start_2 Samuel 15:24_reference_end_ _reference_start_2 Samuel 15:25_reference_end_ _reference_start_2 Samuel 15:29_reference_end_ _reference_start_2 Samuel 15:32_reference_end_ _reference_start_2 Samuel 16:23_reference_end_ _reference_start_2 Samuel 19:14_reference_end_ _reference_start_2 Samuel 19:28_reference_end_ _reference_start_2 Samuel 21:14_reference_end_ _reference_start_2 Samuel 22:03_reference_end_ _reference_start_2 Samuel 22:07_reference_end_ _reference_start_2 Samuel 22:22_reference_end_ _reference_start_2 Samuel 22:32_reference_end_ _reference_start_2 Samuel 22:47_reference_end_ _reference_start_2 Samuel 23:01_reference_end_ _reference_start_2 Samuel 23:03_reference_end_ _reference_start_2 Samuel 7:23_reference_end_ _reference_start_1 Kings 1:47_reference_end_ _reference_start_1 Kings 2:23_reference_end_ _reference_start_1 Kings 3:05_reference_end_ _reference_start_1 Kings 3:11_reference_end_ _reference_start_1 Kings 3:28_reference_end_ _reference_start_1 Kings 5:09_reference_end_ _reference_start_1 Kings 8:23_reference_end_ _reference_start_1 Kings 8:26_reference_end_ _reference_start_1 Kings 8:27_reference_end_ _reference_start_1 Kings 8:60_reference_end_ _reference_start_1 Kings 10:24_reference_end_ _reference_start_1 Kings 11:23_reference_end_ _reference_start_1 Kings 12:22_reference_end_ _reference_start_1 Kings 13:1_reference_end_ _reference_start_1 Kings 17:18_reference_end_ _reference_start_1 Kings 17:24_reference_end_ _reference_start_1 Kings 18:21_reference_end_ _reference_start_1 Kings 18:24_reference_end_ _reference_start_1 Kings 18:36_reference_end_ _reference_start_1 Kings 9:09_reference_end_ _reference_start_1 Kings 11:02_reference_end_ _reference_start_1 Kings 11:04_reference_end_ _reference_start_1 Kings 11:05_reference_end_ _reference_start_1 Kings 11:08_reference_end_ _reference_start_1 Kings 11:10_reference_end_ _reference_start_1 Kings 11:33_reference_end_ _reference_start_1 Kings 11:33_reference_end_ _reference_start_1 Chronicles 4:10_reference_end_ _reference_start_1 Chronicles 7:05_reference_end_ _reference_start_1 Chronicles 9:11_reference_end_ _reference_start_1 Chronicles 9:13_reference_end_ _reference_start_1 Chronicles 9:26_reference_end_ _reference_start_1 Chronicles 9:27_reference_end_ _reference_start_1 Chronicles 11:19_reference_end_ _reference_start_1 Chronicles 12:17_reference_end_ _reference_start_1 Chronicles 12:18_reference_end_ _reference_start_1 Chronicles 12:22_reference_end_ _reference_start_1 Chronicles 13:1_reference_end_ _reference_start_1 Chronicles 14:1_reference_end_ _reference_start_1 Chronicles 15:1_reference_end_ _reference_start_1 Chronicles 16:01_reference_end_ _reference_start_1 Chronicles 16:06_reference_end_ _reference_start_1 Chronicles 16:35_reference_end_ _reference_start_1 Chronicles 16:42_reference_end_ _reference_start_1 Chronicles 17:1_reference_end_ _reference_start_1 Chronicles 19:13_reference_end_ _reference_start_1 Chronicles 21:07_reference_end_ _reference_start_1 Chronicles 21:08_reference_end_ _reference_start_1 Chronicles 21:15_reference_end_ _reference_start_1 Chronicles 21:17_reference_end_ _reference_start_1 Chronicles 21:30_reference_end_ _reference_start_1 Chronicles 22:02_reference_end_ _reference_start_1 Chronicles 22:19_reference_end_ _reference_start_1 Chronicles 23:14_reference_end_ _reference_start_1 Chronicles 23:28_reference_end_ _reference_start_1 Chronicles 28:02_reference_end_ _reference_start_1 Chronicles 28:03_reference_end_ _reference_start_1 Chronicles 28:08_reference_end_ _reference_start_1 Chronicles 28:09_reference_end_ _reference_start_1 Chronicles 28:0_reference_end_ _reference_start_1 Chronicles 28:21_reference_end_ _reference_start_1 Chronicles 16:25_reference_end_ _reference_start_1 Chronicles 16:26_reference_end_ _reference_start_2 Chronicles 7:19_reference_end_ _reference_start_2 Chronicles 7:22_reference_end_ _reference_start_Psalms 8:06_reference_end_ _reference_start_Psalms 24:05_reference_end_ _reference_start_Psalms 51:03_reference_end_ _reference_start_Psalms 51:12_reference_end_ _reference_start_Psalms 51:16_reference_end_ _reference_start_Psalms 51:19_reference_end_ _reference_start_Psalms 51:19_reference_end_ _reference_start_Psalms 52:09_reference_end_ _reference_start_Psalms 52:10_reference_end_ _reference_start_Psalms 54:03_reference_end_ _reference_start_Psalms 54:04_reference_end_ _reference_start_Psalms 54:05_reference_end_ _reference_start_Psalms 54:06_reference_end_ _reference_start_Psalms 56:014_reference_end_ _reference_start_Psalms 56:02_reference_end_ _reference_start_Psalms 56:05_reference_end_ _reference_start_Psalms 56:08_reference_end_ _reference_start_Psalms 56:10_reference_end_ _reference_start_Psalms 56:10_reference_end_ _reference_start_Psalms 56:12_reference_end_ _reference_start_Psalms 56:13_reference_end_ _reference_start_Psalms 57:02_reference_end_ _reference_start_Psalms 57:04_reference_end_ _reference_start_Psalms 57:06_reference_end_ _reference_start_Psalms 57:08_reference_end_ _reference_start_Psalms 57:12_reference_end_ _reference_start_Psalms 59:02_reference_end_ _reference_start_Psalms 59:06_reference_end_ _reference_start_Psalms 59:14_reference_end_ _reference_start_Psalms 59:18_reference_end_ _reference_start_Psalms 60:03_reference_end_ _reference_start_Psalms 60:08_reference_end_ _reference_start_Psalms 60:12_reference_end_ _reference_start_Psalms 60:14_reference_end_ _reference_start_Psalms 61:02_reference_end_ _reference_start_Psalms 61:06_reference_end_ _reference_start_Psalms 61:08_reference_end_ _reference_start_Psalms 63:02_reference_end_ _reference_start_Psalms 63:12_reference_end_ _reference_start_Psalms 71:04_reference_end_ _reference_start_Psalms 71:11_reference_end_ _reference_start_Psalms 71:12_reference_end_ _reference_start_Psalms 71:17_reference_end_ _reference_start_Psalms 71:18_reference_end_ _reference_start_Psalms 71:19_reference_end_ _reference_start_Psalms 71:22_reference_end_ _reference_start_Psalms 90:01_reference_end_ _reference_start_Psalms 144:09_reference_end_ _reference_start_Psalms 144:15_reference_end_ _reference_start_Proverbs 2:05_reference_end_ _reference_start_Proverbs 3:04_reference_end_ _reference_start_Ecclesiastes 1:13_reference_end_ _reference_start_Ecclesiastes 3:10_reference_end_ _reference_start_Ecclesiastes 3:11_reference_end_ _reference_start_Ecclesiastes 3:13_reference_end_ _reference_start_Ecclesiastes 3:14_reference_end_ _reference_start_Ecclesiastes 3:18_reference_end_ _reference_start_Ecclesiastes 7:29_reference_end_ _reference_start_Ecclesiastes 8:12_reference_end_ _reference_start_Ecclesiastes 8:13_reference_end_ _reference_start_Ecclesiastes 9:01_reference_end_ _reference_start_Ecclesiastes 11:05_reference_end_ _reference_start_Ecclesiastes 12:07_reference_end_ _reference_start_Ecclesiastes 12:13_reference_end_ _reference_start_Ecclesiastes 12:14_reference_end_ _reference_start_Daniel 1:02_reference_end_ _reference_start_Daniel 1:09_reference_end_ _reference_start_Daniel 1:17_reference_end_ _reference_start_Daniel 9:11_reference_end_ _reference_start_Daniel 9:17_reference_end_ _reference_start_Daniel 9:19_reference_end_ _reference_start_Daniel 9:19_reference_end_ _reference_start_Daniel 9:20_reference_end_ _reference_start_Daniel 10:12_reference_end_ _reference_start_Daniel 11:32_reference_end_ _reference_start_Daniel 1:02_reference_end_ _reference_start_Daniel 11:08_reference_end_ _reference_start_Daniel 11:37_reference_end_ _reference_start_Jonah 1:06_reference_end_ _reference_start_Jonah 3:05_reference_end_ _reference_start_Jonah 3:08_reference_end_ _reference_start_Jonah 3:09_reference_end_ _reference_start_Jonah 3:10_reference_end_ _reference_start_Jonah 4:07_reference_end_ _reference_start_Jonah 4:08_reference_end_ _reference_start_Jonah 4:09_reference_end_ _reference_start_Jonah 1:05_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5(     -                     ~ } | { z y x w v u t# s# r q p2 o0 n. m. l. k- j- i- h- g, f+ e+ d* c* b) a( `' _# ^ ] \ [ Z Y X W V U  T C~qdWJ=0# zm`SF9,vi\OB5( Y  X # W  V  U  T  S + R  Q  P  O  N  M  L  K  J  I  H  G  F  E  D  C  B  A  @ . ? - >  =  <  ;  :  9  8  7  6  5  4  3  2  1  0  /  . ' - % ,  +@ *$ ) ( ' & % $ #7 "+ !& $   !       C~qdWJ=0# zm`SF9,vi\OB5(                  !  !            $                  <       ~  }  |  {  z  y / x  w  v  u / t  s  r  q  p  o  n  m  l  k  j  i  h  g  f  e  d  c  b a  `  _  ^  ]  \  [  Z  C~qdWJ=0# zm`SF9,vi\OB5( _? ^= ]= \= [< Z< Y< X< W; V; U; T; S9 R9 Q9 P9 O9 N8 M8 L8 K8 J8 I8 H8 G8 F6 E6 D6 C6 B4 A4 @3 ?3 >3 =3 <3 ; : 9 8 7  6  5  4  3  2  1  0  /  .  -  ,  +  *  )  (  '  &  %  $ * # # "  !          C}obUH;.!xk^QD7*tgZM@3& " !           1 . # # # # !                      %              ~ } | { z  y x  w  v  u t s r q p o n m l k j i hZ gG fG eG dG cG bG aG `? _reference_end_ _reference_start_Deuteronomy 28:32_reference_end_ _reference_start_1 Samuel 2:03_reference_end_ _reference_start_2 Samuel 22:31_reference_end_ _reference_start_2 Samuel 22:32_reference_end_ _reference_start_2 Samuel 22:33_reference_end_ _reference_start_2 Samuel 22:48_reference_end_ _reference_start_2 Samuel 23:05_reference_end_ _reference_start_Psalms 17:06_reference_end_ _reference_start_Psalms 1:1_reference_end_ _reference_start_Psalms 52:03_reference_end_ _reference_start_Psalms 52:07_reference_end_ _reference_start_Psalms 57:03_reference_end_ _reference_start_Psalms 63:02_reference_end_ _reference_start_Psalms 90:02_reference_end_ _reference_start_Psalms 139:17_reference_end_ _reference_start_Psalms 139:23_reference_end_ _reference_start_Psalms 150:01_reference_end_ _reference_start_Proverbs 3:27_reference_end_ _reference_start_Daniel 9:04_reference_end_ _reference_start_Daniel 11:36_reference_end_ _reference_start_Daniel 11:36_reference_end_ _reference_start_Jonah 4:02_reference_end_ ff uGod (el)god (el)Hebrew: אֶל \f Dieu (el) \cme God (el) \cmf Dieu \cme god(s) \cmf dieu (dieux) \cme strength \cmf pouvoir _reference_start_Genesis 16:13_reference_end_ _reference_start_Genesis 31:13_reference_end_ _reference_start_Genesis 33:20_reference_end_ _reference_start_Genesis 35:01_reference_end_ _reference_start_Genesis 35:03_reference_end_ _reference_start_Genesis 35:07_reference_end_ _reference_start_Genesis 35:11_reference_end_ _reference_start_Genesis 46:03_reference_end_ _reference_start_Genesis 49:25_reference_end_ _reference_start_Genesis 31:29_reference_end_ _reference_start_Exodus 15:02_reference_end_ _reference_start_Exodus 20:05_reference_end_ _reference_start_Exodus 15:11_reference_end_ _reference_start_Deuteronomy 32:04_reference_end_ _reference_start_Deuteronomy 32:18_reference_end_ _reference_start_Deuteronomy 32:21_reference_end_ _reference_start_Deuteronomy 32:12 C~qdWI;- wj]PC6)sfYL?2% e- d c b a) `) _) ^( ] \ [ Z Y$ X  W, V% U T S R Q P O$ N  M  L K J $ I/ H G F E D C B A @ ? >N# =  < ; : 9 8 7  6 $ 5 $ 4  3 2 1 0 /Z .? -9 ,4 +4 * ) (  ' 0 & ! %  $  #  00L'']God Most Highgod most highHebrew: .אל עֶליוֹן \f Dieu Très-Haut \cme God Most High \cmf Dieu Très-Haut \cme Most High God \cmf Dieu Très-Haut (Arm) \cme The Most High \cmf le Très-Haut _reference_start_Genesis 14:18_reference_end_ _reference_start_Genesis 14:19_reference_end_ _reference_start_Genesis 14:20_reference_end_ _reference_start_Genesis 14:22_reference_end_ _reference_start_Numbers 24:16_reference_end_ _reference_start_Deuteronomy 32:08_reference_end_ _reference_start_Psalms 78:35_reference_end_ _reference_start_Daniel 3:26_reference_end_ _reference_start_Daniel 3:32_reference_end_ _reference_start_Daniel 4:14_reference_end_ _reference_start_Daniel 4:21_reference_end_ _reference_start_Daniel 4:22_reference_end_ _reference_start_Daniel 4:29_reference_end_ _reference_start_Daniel 4:31_reference_end_ _reference_start_Daniel 5:18_reference_end_ _reference_start_Daniel 5:21_reference_end_ _reference_start_Daniel 7:25_reference_end_ i##God of godsgod of godsHebrew: .אֵל אֵלִים / אֱלָה אֱלָהִין \f Dieu des diex \cme God of gods \cmf Dieu des dieux _reference_start_Daniel 2:47_reference_end_ _reference_start_Daniel 11:36_reference_end_ j''God of heavengod of heavenHebrew: .אֱלֹהֵי שָׁמַיִם / אֱלֹֹהֶי הַאֶרֶץ \f Dieu des cieux \cme God of heaven (and earth) \cmf Dieu des cieux (et la terre) _reference_start_Genesis 24:03_reference_end_ _reference_start_Genesis 24:07_reference_end_ _reference_start_2 Kings 17:26_reference_end_ _reference_start_2 Kings 17:27_reference_end_ _reference_start_2 Chronicles 36:23_reference_end_ _reference_start_Ezra 1:02_reference_end_ _reference_start_Nehemiah 1:04_reference_end_ _reference_start_Nehemiah 1:05_reference_end_ _reference_start_Nehemiah 2:20_reference_end_ _reference_start_Daniel 2:18_reference_end_ _reference_start_Daniel 2:19_reference_end_ _reference_start_Daniel 2:37_reference_end_ _reference_start_Daniel 2:44_reference_end_ _reference_start_Jonah 1:09_reference_end_ _reference_start_Zephaniah 2:11_reference_end_ OZOZ%%}good (to be)good (to be)Hebrew: .יָטַב \f bon, être bon \cme be glad, joyful \cmf être joyeu, content \cme be pleasing, be accepted \cmf plaire, être accepté \cme be well for, go well with \cmf être bien, aller bien avec \cme better \cmf meiux \cme do good to (a person), give good things \cmf faire du bien (à une personne), donner de b*-goodnessgoodnessHebrew: טָב \f bien \cme good quality, excellent \cmf bonne qualité, excellent \cme to be pleasing, agreeable \cmf être agréable, plaire _reference_start_Ezra 5:17_reference_end_ _reference_start_Daniel 2:32_reference_end_ _reference_start_Daniel 6:24_reference_end_,))goodness, fairgoodness, fairHebrew: טֹּוב \f bien, belle \cme appropriate, becoming \cm"'' God of seeinggod of seeingHebrew: אֵל ראִי \f Dieu qui voi \cme God if seeing \cmf Dieu qui me voit _reference_start_Genesis 16:13_reference_end_f convenable, opportun \cme be happy, joyful \cmf être heureux, joyeux \cme belongings \cmf les biens \cme benefit, positive influence \cmf bénéfice, influence positive \cme better, preferred, best \cmf préferé, (le) meilleur \cme do what one wants, is appropriate, do right \cmf faire ce qu'on veut, faire le bien \cme favor, mercy \cmf faveur, miséricorde \cme generous \cmf généreux \cme giving pleasure, prosperity \cmf faire plaisir, prospérité \cme glad, happy, prosperous (a person) \cmf contante, prospérée (une personne) \cme good quality, excellent \cmf de bonne qualié, excellent \cme good things, blessings \cmf bonnes choses, bénédictions \cme good understanding (a person) \cmf bonne comprehension (uner personne) \cme good, kind \cmf bon, gentil, bienveillant \cme just, right \cmf juste, bon \cme moral good \cmf bien moral \cme pleasant, agreeable to the senses \cmf plesant, agréable au sens \cme rich, valuable \cmf rich, important, préciux \cme to act rightly, ethically, please God \cmf agir moralement, correctement, plaire Dieu \cme to be good, well (with) \cmf aller bien \cme to be pleasant, delightful \cmf être agréable, un délice \cme to be pleasing, agreeable \cmf être agéable, plaire \cme welfare, prosperity, happiness \cmf bien-être, prosperité, contentement _reference_start_Genesis 2:09_reference_end_ _reference_start_Genesis 2:18_reference_end_ _reference_start_Genesis 3:06_reference_end_ _reference_start_Genesis 40:16_reference_end_ _reference_start_Genesis 41:05_reference_end_ _reference_start_Genesis 41:22_reference_end_ _reference_start_Genesis 41:24_reference_end_ _reference_start_Genesis 24:10_reference_end_ _reference_start_Genesis 26:29_reference_end_ _reference_start_Genesis 29:19_reference_end_ _reference_start_Genesis 45:18_reference_end_ _reference_start_Genesis 45:20_reference_end_ _reference_start_Genesis 16:06_reference_end_ _reference_start_Genesis 19:08_reference_end_ _reference_start_Genesis 24:50_reference_end_ _reference_start_Genesis 31:24_reference_end_ _reference_start_Genesis 31:29_reference_end_ _reference_start_Genesis 20:15_reference_end_ _reference_start_Genesis 41:35_reference_end_ _reference_start_Genesis 49:15_reference_end_ _reference_start_Genesis 1:04_reference_end_ _reference_start_Genesis 1:10_reference_end_ _reference_start_Genesis 1:12_reference_end_ _reference_start_Genesis 1:18_reference_end_ _reference_start_Genesis 1:21_reference_end_ _reference_start_Genesis 1:25_reference_end_ _reference_start_Genesis 1:31_reference_end_ _reference_start_Genesis 2:12_reference_end_ _reference_start_Genesis 18:07_reference_end_ _reference_start_Genesis 27:09_reference_end_ _reference_start_Genesis 41:26_reference_end_ _reference_start_Genesis 45:23_reference_end_ _reference_start_Genesis 44:04_reference_end_ _reference_start_Genesis 2:09_reference_end_ _reference_start_Genesis 2:17_reference_end_ _reference_start_Genesis 3:05_reference_end_ _reference_start_Genesis 3:22_reference_end_ _reference_start_Genesis 6:02_reference_end_ _reference_start_Genesis 26:07_reference_end_ _reference_start_Genesis 15:15_reference_end_ _reference_start_Genesis 25:08_reference_end_ _reference_start_Genesis 30:20_reference_end_ _reference_start_Genesis 24:16_reference_end_ _reference_start_Genesis 50:20_reference_end_ _reference_start_Exodus 18:17_reference_end_ _reference_start_Exodus 14:12_reference_end_ _reference_start_Exodus 3:08_reference_end_ _reference_start_Exodus 18:09_reference_end_ _reference_start_Exodus 2:02_reference_end_ _reference_start_Leviticus 27:10_reference_end_ _reference_start_Leviticus 27:12_reference_end_ _reference_start_Leviticus 27:14_reference_end_ _reference_start_Leviticus 27:33_reference_end_ _reference_start_Numbers 14:03_reference_end_ _reference_start_Numbers 10:29_reference_end_ _reference_start_Numbers 36:06_reference_end_ _reference_start_Numbers 13:19_reference_end_ _reference_start_Numbers 24:13_reference_end_ _reference_start_Numbers 11:18_reference_end_ _reference_start_Numbers 24:05_reference_end_ _reference_start_Numbers 24:01_reference_end_ _reference_start_Numbers 10:29_reference_end_ _reference_start_Numbers 10:32_reference_end_ _reference_start_Numbers 14:07_reference_end_ _reference_start_Deuteronomy 1:14_reference_end_ _reference_start_Deuteronomy 28:47_reference_end_ _reference_start_Deuteronomy 6:18_reference_end_ _reference_start_Deuteronomy 1:25_reference_end_ _reference_start_Deuteronomy 1:35_reference_end_ _reference_start_Deuteronomy 3:25_reference_end_ _reference_start_Deuteronomy 3:25_reference_end_ _reference_start_Deuteronomy 4:21_reference_end_ _reference_start_Deuteronomy 4:22_reference_end_ _reference_start_Deuteronomy 6:18_reference_end_ _reference_start_Deuteronomy 8:07_reference_end_ _reference_start_Deuteronomy 8:10_reference_end_ _reference_start_Deuteronomy 9:06_reference_end_ _reference_start_Deuteronomy 11:17_reference_end_ _reference_start_Deuteronomy 28:12_reference_end_ _reference_start_Deuteronomy 1:39_reference_end_ _reference_start_Deuteronomy 30:15_reference_end_ _reference_start_Deuteronomy 6:10_reference_end_ _reference_start_Deuteronomy 8:12_reference_end_ _reference_start_Deuteronomy 5:29_reference_end_ _reference_start_Deuteronomy 6:24_reference_end_ _reference_start_Deuteronomy 26:11_reference_end_ _reference_start_Deuteronomy 28:11_reference_end_ _reference_start_Deuteronomy 30:09_reference_end_ _reference_start_Joshua 7:21_reference_end_ _reference_start_Jude 16:25_reference_end_ _reference_start_Jude 19:24_reference_end_ _reference_start_1 Samuel 9:10_reference_end_ _reference_start_1 Samuel 25:36_reference_end_ _reference_start_1 Samuel 19:04_reference_end_ _reference_start_1 Samuel 1:08_reference_end_ _reference_start_1 Samuel 15:22_reference_end_ _reference_start_1 Samuel 15:28_reference_end_ _reference_start_1 Samuel 27:01_reference_end_ _reference_start_1 Samuel 1:23_reference_end_ _reference_start_1 Samuel 11:10_reference_end_ _reference_start_1 Samuel 14:36_reference_end_ _reference_start_1 Samuel 14:40_reference_end_ _reference_start_1 Samuel 2:26_reference_end_ _r eference_start_1 Samuel 19:04_reference_end_ _reference_start_1 Samuel 20:07_reference_end_ _reference_start_1 Samuel 29:06_reference_end_ _reference_start_1 Samuel 24:19_reference_end_ _reference_start_1 Samuel 24:20_reference_end_ _reference_start_1 Samuel 25:08_reference_end_ _reference_start_1 Samuel 16:23_reference_end_ _reference_start_1 Samuel 8:14_reference_end_ _reference_start_1 Samuel 25:03_reference_end_ _reference_start_1 Samuel 15:09_reference_end_ _reference_start_1 Samuel 25:30_reference_end_ _reference_start_1 Samuel 25:15_reference_end_ _reference_start_1 Samuel 24:18_reference_end_ _reference_start_1 Samuel 25:21_reference_end_ _reference_start_1 Samuel 26:16_reference_end_ _reference_start_1 Samuel 29:06_reference_end_ _reference_start_1 Samuel 29:09_reference_end_ _reference_start_1 Samuel 8:16_reference_end_ _reference_start_1 Samuel 9:02_reference_end_ _reference_start_1 Samuel 12:23_reference_end_ _reference_start_1 Samuel 16:16_reference_end_ _reference_start_1 Samuel 20:12_refere nce_end_ _reference_start_1 Samuel 24:20_reference_end_ _reference_start_1 Samuel 2:24_reference_end_ _reference_start_1 Samuel 16:12_reference_end_ _reference_start_2 Samuel 17:07_reference_end_ _reference_start_2 Samuel 17:14_reference_end_ _reference_start_2 Samuel 13:28_reference_end_ _reference_start_2 Samuel 14:32_reference_end_ _reference_start_2 Samuel 17:14_reference_end_ _reference_start_2 Samuel 18:03_reference_end_ _reference_start_2 Samuel 2:06_reference_end_ _reference_start_2 Samuel 10:12_reference_end_ _reference_start_2 Samuel 15:26_reference_end_ _reference_start_2 Samuel 19:19_reference_end_ _reference_start_2 Samuel 19:28_reference_end_ _reference_start_2 Samuel 19:38_reference_end_ _reference_start_2 Samuel 19:39_reference_end_ _reference_start_2 Samuel 24:22_reference_end_ _reference_start_2 Samuel 18:27_reference_end_ _reference_start_2 Samuel 7:28_reference_end_ _reference_start_2 Samuel 16:12_reference_end_ _reference_start_2 Samuel 15:03_reference_end_ _reference_start_2 Samuel 1 4:17_reference_end_ _reference_start_2 Samuel 19:36_reference_end_ _reference_start_2 Samuel 11:02_reference_end_ _reference_start_2 Samuel 3:13_reference_end_ _reference_start_2 Samuel 3:19_reference_end_ _reference_start_2 Samuel 3:36_reference_end_ _reference_start_2 Samuel 13:22_reference_end_ _reference_start_1 Kings 2:18_reference_end_ _reference_start_1 Kings 2:38_reference_end_ _reference_start_1 Kings 2:42_reference_end_ _reference_start_1 Kings 18:24_reference_end_ _reference_start_1 Kings 8:66_reference_end_ _reference_start_1 Kings 2:32_reference_end_ _reference_start_1 Kings 12:07_reference_end_ _reference_start_1 Kings 14:15_reference_end_ _reference_start_1 Kings 8:66_reference_end_ _reference_start_1 Kings 8:56_reference_end_ _reference_start_1 Kings 3:09_reference_end_ _reference_start_1 Kings 8:18_reference_end_ _reference_start_1 Kings 8:36_reference_end_ _reference_start_1 Kings 14:13_reference_end_ _reference_start_1 Kings 1:06_reference_end_ _reference_start_1 Kings 1:42_reference_en d_ _reference_start_1 Kings 10:07_reference_end_ _reference_start_2 Kings 10:30_reference_end_ _reference_start_1 Chronicles 13:02_reference_end_ _reference_start_1 Chronicles 19:13_reference_end_ _reference_start_1 Chronicles 21:23_reference_end_ _reference_start_1 Chronicles 4:40_reference_end_ _reference_start_1 Chronicles 18:08_reference_end_ _reference_start_1 Chronicles 17:26_reference_end_ _reference_start_1 Chronicles 16:34_reference_end_ _reference_start_1 Chronicles 29:28_reference_end_ _reference_start_2 Chronicles 7:10_reference_end_ _reference_start_2 Chronicles 7:03_reference_end_ _reference_start_2 Chronicles 6:08_reference_end_ _reference_start_2 Chronicles 7:10_reference_end_ _reference_start_Esther 1:10_reference_end_ _reference_start_Esther 1:19_reference_end_ _reference_start_Esther 2:09_reference_end_ _reference_start_Esther 3:11_reference_end_ _reference_start_Esther 7:09_reference_end_ _reference_start_Esther 8:08_reference_end_ _reference_start_Esther 8:17_reference_end_ _reference _start_Esther 9:19_reference_end_ _reference_start_Esther 9:22_reference_end_ _reference_start_Esther 5:09_reference_end_ _reference_start_Esther 1:11_reference_end_ _reference_start_Esther 2:02_reference_end_ _reference_start_Esther 2:03_reference_end_ _reference_start_Esther 2:07_reference_end_ _reference_start_Esther 8:05_reference_end_ _reference_start_Esther 1:19_reference_end_ _reference_start_Esther 3:09_reference_end_ _reference_start_Esther 5:04_reference_end_ _reference_start_Esther 5:08_reference_end_ _reference_start_Esther 7:03_reference_end_ _reference_start_Esther 8:05_reference_end_ _reference_start_Esther 9:13_reference_end_ _reference_start_Esther 10:03_reference_end_ _reference_start_Psalms 147:01_reference_end_ _reference_start_Psalms 147:01_reference_end_ _reference_start_Psalms 119:065_reference_end_ _reference_start_Psalms 119:122_reference_end_ _reference_start_Psalms 37:16_reference_end_ _reference_start_Psalms 63:04_reference_end_ _reference_start_Psalms 84:11_reference_end_ _reference_start_Psalms 118:08_reference_end_ _reference_start_Psalms 118:09_reference_end_ _reference_start_Psalms 119:072_reference_end_ _reference_start_Psalms 31:20_reference_end_ _reference_start_Psalms 54:05_reference_end_ _reference_start_Psalms 86:17_reference_end_ _reference_start_Psalms 68:11_reference_end_ _reference_start_Psalms 109:21_reference_end_ _reference_start_Psalms 45:02_reference_end_ _reference_start_Psalms 106:05_reference_end_ _reference_start_Psalms 112:05_reference_end_ _reference_start_Psalms 133:02_reference_end_ _reference_start_Psalms 27:13_reference_end_ _reference_start_Psalms 103:05_reference_end_ _reference_start_Psalms 104:28_reference_end_ _reference_start_Psalms 107:09_reference_end_ _reference_start_Psalms 111:10_reference_end_ _reference_start_Psalms 119:068_reference_end_ _reference_start_Psalms 145:09_reference_end_ _reference_start_Psalms 119:066_reference_end_ _reference_start_Psalms 14:01_reference_end_ _reference_start_Psalms 25:07_reference_end_ _reference_start_Psalms 34:09_reference_end_ _reference_start_Psalms 35:12_reference_end_ _reference_start_Psalms 37:27_reference_end_ _reference_start_Psalms 38:21_reference_end_ _reference_start_Psalms 52:05_reference_end_ _reference_start_Psalms 52:11_reference_end_ _reference_start_Psalms 53:02_reference_end_ _reference_start_Psalms 53:04_reference_end_ _reference_start_Psalms 54:08_reference_end_ _reference_start_Psalms 69:17_reference_end_ _reference_start_Psalms 73:01_reference_end_ _reference_start_Psalms 86:05_reference_end_ _reference_start_Psalms 100:05_reference_end_ _reference_start_Psalms 106:01_reference_end_ _reference_start_Psalms 107:01_reference_end_ _reference_start_Psalms 109:05_reference_end_ _reference_start_Psalms 118:01_reference_end_ _reference_start_Psalms 118:29_reference_end_ _reference_start_Psalms 119:68_reference_end_ _reference_start_Psalms 125:04_reference_end_ _reference_start_Psalms 135:03_reference_end_ _reference_start_Psalms 136:01_reference_end_ _reference_start_Psalms 143:10_reference_end_ _reference_start_Psalms 145:07_reference_end_ _reference_start_Psalms 25:08_reference_end_ _reference_start_Psalms 34:15_reference_end_ _reference_start_Psalms 36:05_reference_end_ _reference_start_Psalms 37:03_reference_end_ _reference_start_Psalms 92:02_reference_end_ _reference_start_Psalms 119:039_reference_end_ _reference_start_Psalms 119:071_reference_end_ _reference_start_Psalms 128:02_reference_end_ _reference_start_Psalms 4:07_reference_end_ _reference_start_Psalms 16:02_reference_end_ _reference_start_Psalms 21:04_reference_end_ _reference_start_Psalms 23:06_reference_end_ _reference_start_Psalms 25:13_reference_end_ _reference_start_Psalms 34:11_reference_end_ _reference_start_Psalms 34:13_reference_end_ _reference_start_Psalms 39:03_reference_end_ _reference_start_Psalms 65:12_reference_end_ _reference_start_Psalms 73:28_reference_end_ _reference_start_Psalms 84:12_reference_end_ _reference_start_Psalms 85:13_reference_end_ _reference_start_Psalms 122:09_reference_end_ _reference_start_Psalms 128:05_reference_end_ _reference_start_Psalms 133:01_reference_end_ _reference_start_Proverbs 14:22_reference_end_ _reference_start_Proverbs 19:02_reference_end_ _reference_start_Proverbs 25:27_reference_end_ _reference_start_Proverbs 31:12_reference_end_ _reference_start_Proverbs 8:11_reference_end_ _reference_start_Proverbs 15:16_reference_end_ _reference_start_Proverbs 15:17_reference_end_ _reference_start_Proverbs 21:19_reference_end_ _reference_start_Proverbs 25:24_reference_end_ _reference_start_Proverbs 27:05_reference_end_ _reference_start_Proverbs 27:10_reference_end_ _reference_start_Proverbs 28:06_reference_end_ _reference_start_Proverbs 25:25_reference_end_ _reference_start_Proverbs 22:09_reference_end_ _reference_start_Proverbs 12:25_reference_end_ _reference_start_Proverbs 15:15_reference_end_ _reference_start_Proverbs 18:22_reference_end_ _reference_start_Proverbs 3:04_reference_end_ _reference_start_Proverbs 2:09_reference_end_ _reference_start_Proverbs 24:13_reference_end_ _reference_start_Proverbs 31:18_reference_end_ _reference_start_Proverbs 4:02_reference_end_ _reference_start_Proverbs 12:02_reference_end_ _reference_start_Ecclesiastes 2:03_reference_end_ _reference_start_Ecclesiastes 3:12_reference_end_ _reference_start_Ecclesiastes 3:1_reference_end_ _reference_start_Ecclesiastes 11:06_reference_end_ _reference_start_Ecclesiastes 7:20_reference_end_ _reference_start_Ecclesiastes 12:14_reference_end_ _reference_start_Ecclesiastes 2:01_reference_end_ _reference_start_Ecclesiastes 3:13_reference_end_ _reference_start_Ecclesiastes 8:12_reference_end_ _reference_start_Ecclesiastes 8:13_reference_end_ _reference_start_Jeremiah 6:20_reference_end_ _reference_start_Daniel 1:04_reference_end_ _reference_start_Daniel 1:15_reference_end_ _reference_start_Hosea 4:13_reference_end_ _reference_start_Jonah 4:03_reference_end_ _reference_start_Jonah 4:08_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5( (  '  & % $ # " !  #   /             $    !         2        ~ } | {, z- y) x w v u t s r q p o n1 m)# l k j i2 h g f- C~qdWJ=0# zm`SF9,vi\OB5( k  j  i  h  g ' f & e  d  c  b a  `  _  ^  ]  \  [  Z  Y  X  W  V  U  T  S  R  Q  P  O  N  M  L  K  J  I  H  G  F  E  D  C  B  A  @ ( ? $ > =  <  ;  :  9  8  7 $ 6 5A 4A 3 2 1 0 / . - , + *' ) C~qdWJ=0# zm`SF9,vi\OB5( .? -% ,wz +wA * ) (  ' & % $ # " !                         "      (            *      $   ~  } 8 | B {  z  y  x B w  v * u & t  s  r $ q  p  o  n $ m  l  C~qdVI</"xk^QD7*}pcVI<.! qU pT oI nA m' l" k" j i h g f e dwG cw' b\ a% `$ _" ^ ] \ [ Z Y} XwD Wv Vv Um Tk Sj Rd QV PI OE N6 M5 L5 K4 J4 I& H% G# F" E D CwB B AwD @o ?k >h =g < ; :p 9j 8- 7m 6D 5V 46 3 2wH 1v 0v /T C|obUH;.!xk^QD7*tgZM@3& 4  3  2 1 0 / .( - , +  * ) ( ' & % $  #( " !- )% "                                       ~ } | { z y x w v u t s rz onnes choses \cme make glad, rejoice \cmf rejouir, être content \cme to do well, correctly \cmf bien faire, faire correctement \cme to do well, or thoroughly \cmf faire concencieusement \cme to make a thing good, beautiful \cmf beau, faire une bonne chose _reference_start_Genesis 34:18_reference_end_ _reference_start_Genesis 41:37_reference_end_ _reference_start_Genesis 45:16_reference_end_ _reference_start_Genesis 12:13_reference_end_ _reference_start_Genesis 40:14_reference_end_ _reference_start_Genesis 12:16_reference_end_ _reference_start_Genesis 32:09_reference_end_ _reference_start_Genesis 32:13_reference_end_ _reference_start_Genesis 4:07_reference_end_ _reference_start_Genesis 4:07_reference_end_ _reference_start_Exodus 1:20_reference_end_ _reference_start_Leviticus 5:04_reference_end_ _reference_start_Numbers 10:29_reference_end_ _reference_start_Numbers 10:32_reference_end_ _reference_start_Deuteronomy 1:23_reference_end_ _reference_start_Deuteronomy 4:40_reference_end_ _reference_start_Deuteronomy 5:16_reference_end_ _reference_start_Deuteronomy 5:26_reference_end_ _reference_start_Deuteronomy 6:03_reference_end_ _reference_start_Deuteronomy 6:18_reference_end_ _reference_start_Deuteronomy 12:25_reference_end_ _reference_start_Deuteronomy 12:28_reference_end_ _reference_start_Deuteronomy 22:07_reference_end_ _reference_start_Deuteronomy 8:16_reference_end_ _reference_start_Deuteronomy 28:63_reference_end_ _reference_start_Deuteronomy 30:05_reference_end_ _reference_start_Deuteronomy 5:25_reference_end_ _reference_start_Deuteronomy 9:21_reference_end_ _reference_start_Deuteronomy 13:15_reference_end_ _reference_start_Deuteronomy 17:02_reference_end_ _reference_start_Deuteronomy 18:17_reference_end_ _reference_start_Deuteronomy 19:18_reference_end_ _reference_start_Deuteronomy 27:08_reference_end_ _reference_start_Jude 18:20_reference_end_ _reference_start_Jude 19:22_reference_end_ _reference_start_1 Samuel 18:05_reference_end_ _reference_start_1 Samuel 2:32_reference_end_ _reference_start_1 Samuel 25:31_reference_end_ _reference_start_1 Samuel 20:13_reference_end_ _reference_start_1 Samuel 16:17_reference_end_ _reference_start_1 Samuel 24:05_reference_end_ _reference_start_2 Samuel 3:36_reference_end_ _reference_start_2 Samuel 18:04_reference_end_ _reference_start_1 Kings 21:07_reference_end_ _reference_start_1 Kings 3:10_reference_end_ _reference_start_1 Kings 1:47_reference_end_ _reference_start_Esther 1:21_reference_end_ _reference_start_Esther 2:04_reference_end_ _reference_start_Esther 2:04_reference_end_ _reference_start_Esther 2:09_reference_end_ _reference_start_Esther 5:14_reference_end_ _reference_start_Psalms 69:32_reference_end_ _reference_start_Psalms 49:19_reference_end_ _reference_start_Psalms 51:20_reference_end_ _reference_start_Psalms 125:04_reference_end_ _reference_start_Psalms 36:04_reference_end_ _reference_start_Psalms 119:068_reference_end_ _reference_start_Proverbs 17:22_reference_end_ _reference_start_Jonah 4:04_reference_end_ _reference_start_Jonah 4:09_reference_end_ C~qdWJ=0# zm`SF9,uh[NA4'  w/ v u t' s' r" q! p! o! n  m l k+ j! i! h* g f  e dt cp bo ag `V _  ^  ] \" [ Z  Y  X WwD V$ U} T3 S1 RE Q P O N M L / K  J  I  H $ G  F  E  D  C  B  AA @A ? > = < ;  :  9 8 7? 6 5 6//!grace, compassiongrace, compassionHebrew: חַנּוּן \f grâce \cme favorable attitude of God to people \cmf attitude favorable de Dieu envers les humains \cme favorable attitude of people to people \cmf attitude favorable d'une personne envers une personne _reference_start_Exodus 22:27_reference_end_ _reference_start_Exodus 34:06_reference_end_ _reference_start_2 Chronicles 30:09_reference_end_ _reference_start_Nehemiah 9:17_reference_end_ _reference_start_Nehemiah 9:31_reference_end_ _reference_start_Psalms 86:15_reference_end_ _reference_start_Psalms 103:08_reference_end_ _reference_start_Psalms 111:04_reference_end_ _reference_start_Psalms 112:04_reference_end_ _reference_start_Psalms 116:05_reference_end_ _reference_start_Psalms 145:08_reference_end_ _reference_start_Jonah 4:02_reference_end__reference_start_Genesis 19:19_reference_end_ _reference_start_Genesis 32:06_reference_end_ _reference_start_Genesis 33:08_reference_end_ _reference_start_Genesis 33:10_reference_end_ _reference_start_Genesis 33:15_reference_end_ _reference_start_Genesis 34:11_reference_end_ _reference_start_Genesis 39:04_reference_end_ _reference_start_Genesis 39:21_reference_end_ _reference_start_Genesis 18:03_reference_end_ _reference_start_Genesis 30:27_reference_end_ _reference_start_Genesis 47:25_reference_end_ _reference_start_Genesis 47:29_reference_end_ _reference_start_Genesis 50:04_reference_end_ _reference_start_Exodus 33:19_reference_end_ _reference_start_Exodus 33:12_reference_end_ _reference_start_Exodus 33:13_reference_end_ _reference_start_Exodus 33:16_reference_end_ _reference_start_Exodus 33:17_reference_end_ _reference_start_Exodus 34:09_reference_end_ _reference_start_Exodus 3:21_reference_end_ _reference_start_Exodus 11:03_reference_end_ _reference_start_Exodus 12:36_reference_end_ _reference_start_Numbers 11:11_reference_end_ _reference_start_Numbers 11:15_reference_end_ _reference_start_Deuteronomy 28:50_reference_end_ _reference_start_1 Samuel 1:18_reference_end_ _reference_start_1 Samuel 16:22_reference_end_ _reference_start_1 Samuel 20:03_reference_end_ _reference_start_1 Samuel 20:29_reference_end_ _reference_start_1 Samuel 25:08_reference_end_ _reference_start_1 Samuel 27:05_reference_end_ _reference_start_2 Samuel 12:22_reference_end_ _reference_start_2 Samuel 12:22_reference_end_ _reference_start_2 Samuel 15:25_reference_end_ _reference_start_2 Samuel 14:22_reference_end_ _reference_start_2 Samuel 16:04_reference_end_ _reference_start_1 Kings 8:33_reference_end_ _reference_start_1 Kings 8:47_reference_end_ _reference_start_1 Kings 8:59_reference_end_ _reference_start_1 Kings 9:03_reference_end_ _reference_start_1 Kings 11:19_reference_end_ _reference_start_Esther 4:08_reference_end_ _reference_start_Esther 8:03_reference_end_ _reference_start_Esther 2:15_reference_end_ _reference_start_Esther 2:17_reference_end_ _reference_start_Esther 5:02_reference_end_ _reference_start_Esther 5:08_reference_end_ _reference_start_Esther 7:03_reference_end_ _reference_start_Esther 8:05_reference_end_ _reference_start_Psalms 30:09_reference_end_ _reference_start_Psalms 142:02_reference_end_ _reference_start_Psalms 51:03_reference_end_ _reference_start_Psalms 56:02_reference_end_ _reference_start_Psalms 57:02_reference_end_ _reference_start_Psalms 59:06_reference_end_ _reference_start_Psalms 84:12_reference_end_ _reference_start_Psalms 45:03_reference_end_ _reference_start_Proverbs 3:04_reference_end_ _reference_start_Proverbs 3:04_reference_end_ _reference_start_Proverbs 13:13_reference_end_ _reference_start_Proverbs 14:21_reference_end_ _reference_start_Proverbs 15:31_reference_end_ _reference_start_Proverbs 19:17_reference_end_ _reference_start_Proverbs 22:11_reference_end_ _reference_start_Proverbs 31:30_reference_end_ _reference_start_Daniel 6:12_reference_end_ _reference_start_Daniel 4:24_reference_end_ iiaguidanceguidanceHebrew: תַּחְבּוּלָה \f direction \cme counsel, direction \cmf conseil, direction _reference_start_Proverbs 1:05_reference_end_ _reference_start_Proverbs 11:14_reference_end_ _reference_start_Proverbs 12:05_reference_end_ _reference_start_Proverbs 20:18_reference_end_ _reference_start_Proverbs 24:06_reference_end_!gracegraceHebrew: חָנַן \f grâce \cme ask for favor from a person \cmf demander de la faveur d'une personne \cme ask for favor from God \cmf demander de la faveur de Dieu \cme favorable attitude of God to person \cmf attitude favorable de Dieu envers une personne _reference_start_Psalms 30:11_reference_end_ _reference_start_Genesis 42:21_reference_end_ _reference_start_Genesis 33:05_reference_end_ _reference_start_Genesis 33:11_reference_end_ _reference_start_Genesis 43:29_reference_end_ _reference_start_Genesis 6:08_reference_end_  C~qdWJ=0# zm`SF9,uh[NA4'  : 9 8 7 6 5 4 3 2  1  0 / . - , + * ) ( ' & %- $T #; "9 !8 3                ;  /  !                       2     $    " ~! }! |! {! z! y2 x/t, penalty \cmf culpabilité du péché \cme miss the goal of right/duty - vs God (& man) \cmf manquer de faire juste/le devoire envers Dieu (et homme) \cme offense, fault \cmf offence, faute _reference_start_Genesis 26:10_reference_end_ _reference_start_Leviticus 5:06_reference_end_ _reference_start_Leviticus 5:07_reference_end_ _reference_start_Leviticus 5:15_reference_end_ _reference_start_Leviticus 5:16_reference_end_ _reference_start_Leviticus 5:19_reference_end_ _reference_start_Leviticus 6:10_reference_end_ _reference_start_Leviticus 19:21_reference_end_ _reference_start_Numbers 5:07_reference_end_ _reference_start_Numbers 5:08_reference_end_ _reference_start_Numbers 6:12_reference_end_ _reference_start_Numbers 18:09_reference_end_ _reference_start_Psalms 51:07_reference_end_ _reference_start_Psalms 1:1_reference_end_ _reference_start_Psalms 51:11_reference_end_ _reference_start_Psalms 68:22_reference_end_ _reference_start_Proverbs 14:09_reference_end_ _reference_start_Jeremiah 51:05_reference_end_ uOguiltguiltHebrew: אָשָׁם \f culpabilité \cme compensation \cmf compensation \cme guilt \cmf culpabilité \cme guilt offering (given along with compensation) \cmf sacrifice pour le péché (accompagné de réparation) \cme incur guil! C~qdWJ=0# zm`SF9,vi[NA4' } | { z y  x w v u t s- r" q p7 o) n m  l  k  j  i  h  g  f  e ) d  c  b a ` ) _ # ^ ] \ [ Z! Y X% W% V% U< T S R" Q" P OA N M L K J I H G F3 E DD C3 B A3 @ ? > = < ; [))wguilty (to be)guilty (to be)Hebrew: אָשַׁם \f coupable, être coupable \cme be held guilty \cmf considérer coupable \cme be or become guilty \cmf être ou devenir coupable \cme commit an offence, do a wrong \cmf commetre une offence, faire tort _reference_start_Leviticus 4:13_reference_end_ _reference_start_Leviticus 4:22_reference_end_ _reference_start_Leviticus 4:27_reference_end_ _reference_start_Leviticus 5:02_reference_end_ _reference_start_Leviticus 5:17_reference_end_ _reference_start_Leviticus 5:23_reference_end_ _reference_start_Leviticus 5:19_reference_end_ _reference_start_Numbers 5:07_reference_end_ _reference_start_Jude 21:23_reference_end_ _reference_start_Psalms 5:11_reference_end_ _reference_start_Psalms 34:22_reference_end_ _reference_start_Psalms 34:23_reference_end_ _reference_start_Proverbs 30:10_reference_end_&erence_start_Genesis 37:08_reference_end_ _reference_start_Genesis 29:31_reference_end_ _reference_start_Genesis 29:33_reference_end_ _reference_start_Exodus 1:10_reference_end_ _reference_start_Exodus 23:05_reference_end_ _reference_start_Exodus 18:21_reference_end_ _reference_start_Exodus 20:05_reference_end_ _reference_start_Numbers 10:35_reference_end_ _reference_start_Deuteronomy 32:41_reference_end_ _reference_start_Deuteronomy 21:15_reference_end_ _reference_start_Deuteronomy 21:17_reference_end_ _reference_start_2 Samuel 13:15_reference_end_ _reference_start_2 Samuel 19:07_reference_end_ _reference_start_2 Samuel 22:41_reference_end_ _reference_start_2 Samuel 13:15_reference_end_ _reference_start_2 Samuel 13:15_reference_end_ _reference_start_2 Samuel 13:22_reference_end_ _reference_start_2 Samuel 19:07_reference_end_ _reference_start_2 Samuel 22:18_reference_end_ _reference_start_Esther 9:16_reference_end_ _reference_start_Esther 9:01_reference_end_ _reference_start_Esther 9:05_reference_end_ _reference_start_Psalms 139:22_reference_end_ _reference_start_Psalms 18:41_reference_end_ _reference_start_Psalms 55:13_reference_end_ _reference_start_Psalms 25:19_reference_end_ _reference_start_Psalms 34:22_reference_end_ _reference_start_Psalms 45:08_reference_end_ _reference_start_Psalms 139:21_reference_end_ _reference_start_Psalms 139:22_reference_end_ _reference_start_Proverbs 15:17_reference_end_ _reference_start_Proverbs 26:26_reference_end_ _reference_start_Proverbs 27:06_reference_end_ _reference_start_Proverbs 11:15_reference_end_ _reference_start_Proverbs 19:07_reference_end_ _reference_start_Proverbs 25:17_reference_end_ _reference_start_Proverbs 6:16_reference_end_ _reference_start_Proverbs 8:13_reference_end_ _reference_start_Proverbs 9:08_reference_end_ _reference_start_Proverbs 12:01_reference_end_ _reference_start_Proverbs 25:21_reference_end_ _reference_start_Proverbs 13:24_reference_end_ _reference_start_Ecclesiastes 9:01_reference_end_ _reference_start_Ecclesiastes 3:08_reference_end_ ==headheadHebrew: רֹאשׁ \f tête \cme chief priest, leading priest or levite \cmf souverain sacrificateur, ou sacrificateur ou lévite important \cme chief, leader \cmf chef \cme chief, leader, elder (man) \cmf chef, ancien (une personne) \cme chief, most important (place, thing, etc) \cmf chef, le plus important (lieu, chose, etc) \cme figurative use \cmf sense figuré \cme head of a family \cmf chef d'une famill)|Mhate (to)hate (to)Hebrew: שִׂנְאָה \f haïre \cme abhor, dislike extreemly \cmf détester \cme an enemy \cmf un énemie \cme avoid \cmf éviter \cme dislike \cmf ne pas aimer \cme dislike extreemly, abhor \cmf détester \cme prefer less or reject (comparatively) \cmf préférer moins ou rejeter (comparaison) _reference_start_Genesis 26:27_reference_end_ _reference_start_Genesis 24:60_reference_end_ _reference_start_Genesis 37:04_reference_end_ _reference_start_Genesis 37:05_reference_end_ _ref% C~qdWJ=0# zm`SF9,vi\OB5( @  ?  >  = 9 < 6 ; 3 : . 9 & 8  7 - 6  5  4  3  2  1  0  / . ' - ' ,  +  *  )" (, ' & % $ #, "( !             /      0 0 0 ( (  1 ( ( (              ~ *e \cme leader or divion of an army \cmf chef ou section de l'armée \cme metonomy for hair or person or life \cmf métonomie pour les cheveux ou une personne ou la vie \cme mind, where dreams and visions happen \cmf esprit, où on a des visions et rêves \cme physical head of a body \cmf la tête physique du corps \cme physical head of a person or animal \cmf la tête physique d'une personne ou un animal _reference_start_2 Samuel 20:21_reference_end_ _reference_start_2 Samuel 20:22_reference_end_ \cme top of something \cmf le sommet de qqch \cme totality \cmf la totalité _reference_start_Genesis 1:1_reference_end_ _reference_start_Genesis 40:13_reference_end_ _reference_start_Genesis 40:19_reference_end_ _reference_start_Genesis 40:20_reference_end_ _reference_start_Genesis 49:26_reference_end_ _reference_start_Genesis 3:15_reference_end_ _reference_start_Genesis 40:16_reference_end_ _reference_start_Genesis 40:17_reference_end_ _reference_start_Genesis 48:14_reference_end_ _reference_start_Genesis 48:17+_reference_end_ _reference_start_Genesis 48:18_reference_end_ _reference_start_Genesis 8:05_reference_end_ _reference_start_Genesis 11:04_reference_end_ _reference_start_Genesis 28:12_reference_end_ _reference_start_Genesis 28:18_reference_end_ _reference_start_Genesis 47:31_reference_end_ _reference_start_Exodus 18:25_reference_end_ _reference_start_Exodus 6:14_reference_end_ _reference_start_Exodus 6:25_reference_end_ _reference_start_Exodus 12:09_reference_end_ _reference_start_Exodus 17:09_reference_end_ _reference_start_Exodus 17:10_reference_end_ _reference_start_Exodus 19:20_reference_end_ _reference_start_Exodus 24:17_reference_end_ _reference_start_Leviticus 5:08_reference_end_ _reference_start_Numbers 10:04_reference_end_ _reference_start_Numbers 14:04_reference_end_ _reference_start_Numbers 7:02_reference_end_ _reference_start_Numbers 14:40_reference_end_ _reference_start_Numbers 14:44_reference_end_ _reference_start_Numbers 20:28_reference_end_ _reference_start_Numbers 21:20_reference_end_ _re,ference_start_Deuteronomy 28:13_reference_end_ _reference_start_Deuteronomy 28:23_reference_end_ _reference_start_Deuteronomy 28:44_reference_end_ _reference_start_Deuteronomy 34:01_reference_end_ _reference_start_1 Samuel 15:17_reference_end_ _reference_start_1 Samuel 9:22_reference_end_ _reference_start_1 Samuel 28:02_reference_end_ _reference_start_1 Samuel 25:39_reference_end_ _reference_start_1 Samuel 25:39_reference_end_ _reference_start_1 Samuel 11:11_reference_end_ _reference_start_1 Samuel 13:17_reference_end_ _reference_start_1 Samuel 13:18_reference_end_ _reference_start_1 Samuel 28:02_reference_end_ _reference_start_1 Samuel 1:11_reference_end_ _reference_start_1 Samuel 4:12_reference_end_ _reference_start_1 Samuel 5:04_reference_end_ _reference_start_1 Samuel 10:01_reference_end_ _reference_start_1 Samuel 14:45_reference_end_ _reference_start_1 Samuel 17:05_reference_end_ _reference_start_1 Samuel 17:38_reference_end_ _reference_start_1 Samuel 17:46_reference_end_ _reference_start_1 Samuel 17-:51_reference_end_ _reference_start_1 Samuel 17:54_reference_end_ _reference_start_1 Samuel 17:57_reference_end_ _reference_start_1 Samuel 29:04_reference_end_ _reference_start_1 Samuel 31:09_reference_end_ _reference_start_1 Samuel 26:13_reference_end_ _reference_start_2 Samuel 22:44_reference_end_ _reference_start_2 Samuel 1:16_reference_end_ _reference_start_2 Samuel 3:29_reference_end_ _reference_start_2 Samuel 23:08_reference_end_ _reference_start_2 Samuel 23:13_reference_end_ _reference_start_2 Samuel 23:18_reference_end_ _reference_start_2 Samuel 2:16_reference_end_ _reference_start_2 Samuel 14:26_reference_end_ _reference_start_2 Samuel 18:09_reference_end_ _reference_start_2 Samuel 1:02_reference_end_ _reference_start_2 Samuel 1:10_reference_end_ _reference_start_2 Samuel 3:08_reference_end_ _reference_start_2 Samuel 4:07_reference_end_ _reference_start_2 Samuel 4:08_reference_end_ _reference_start_2 Samuel 4:12_reference_end_ _reference_start_2 Samuel 12:30_reference_end_ _reference_start_2 Samu.el 13:19_reference_end_ _reference_start_2 Samuel 14:26_reference_end_ _reference_start_2 Samuel 15:30_reference_end_ _reference_start_2 Samuel 15:32_reference_end_ _reference_start_2 Samuel 16:09_reference_end_ _reference_start_2 Samuel 2:25_reference_end_ _reference_start_2 Samuel 5:24_reference_end_ _reference_start_2 Samuel 15:32_reference_end_ _reference_start_2 Samuel 16:01_reference_end_ _reference_start_1 Kings 8:01_reference_end_ _reference_start_1 Kings 21:09_reference_end_ _reference_start_1 Kings 21:12_reference_end_ _reference_start_1 Kings 2:32_reference_end_ _reference_start_1 Kings 2:33_reference_end_ _reference_start_1 Kings 2:37_reference_end_ _reference_start_1 Kings 2:44_reference_end_ _reference_start_1 Kings 8:32_reference_end_ _reference_start_1 Kings 20:31_reference_end_ _reference_start_1 Kings 20:32_reference_end_ _reference_start_1 Kings 7:16_reference_end_ _reference_start_1 Kings 7:17_reference_end_ _reference_start_1 Kings 7:18_reference_end_ _reference_start_1 Kings 7:19_ref/erence_end_ _reference_start_1 Kings 7:22_reference_end_ _reference_start_1 Kings 7:35_reference_end_ _reference_start_1 Kings 7:41_reference_end_ _reference_start_1 Kings 8:08_reference_end_ _reference_start_1 Kings 10:19_reference_end_ _reference_start_1 Kings 18:42_reference_end_ _reference_start_2 Kings 25:18_reference_end_ _reference_start_1 Chronicles 27:05_reference_end_ _reference_start_1 Chronicles 16:05_reference_end_ _reference_start_1 Chronicles 26:10_reference_end_ _reference_start_1 Chronicles 29:11_reference_end_ _reference_start_1 Chronicles 10:09_reference_end_ _reference_start_1 Chronicles 9:09_reference_end_ _reference_start_1 Chronicles 9:13_reference_end_ _reference_start_1 Chronicles 9:17_reference_end_ _reference_start_1 Chronicles 9:33_reference_end_ _reference_start_1 Chronicles 9:34_reference_end_ _reference_start_1 Chronicles 23:08_reference_end_ _reference_start_1 Chronicles 23:09_reference_end_ _reference_start_1 Chronicles 23:11_reference_end_ _reference_start_1 Chronicles 230:16_reference_end_ _reference_start_1 Chronicles 23:17_reference_end_ _reference_start_1 Chronicles 23:18_reference_end_ _reference_start_1 Chronicles 23:19_reference_end_ _reference_start_1 Chronicles 23:20_reference_end_ _reference_start_1 Chronicles 23:24_reference_end_ _reference_start_1 Chronicles 24:04_reference_end_ _reference_start_1 Chronicles 11:06_reference_end_ _reference_start_1 Chronicles 12:20_reference_end_ _reference_start_2 Chronicles 19:11_reference_end_ _reference_start_Ezra 5:10_reference_end_ _reference_start_Nehemiah 11:17_reference_end_ _reference_start_Nehemiah 12:07_reference_end_ _reference_start_Nehemiah 12:24_reference_end_ _reference_start_Nehemiah 12:46_reference_end_ _reference_start_Esther 9:25_reference_end_ _reference_start_Esther 2:17_reference_end_ _reference_start_Esther 6:08_reference_end_ _reference_start_Esther 6:12_reference_end_ _reference_start_Esther 5:02_reference_end_ _reference_start_Psalms 110:06_reference_end_ _reference_start_Psalms 3:04_reference_end_ _reference_start_Psalms 40:13_reference_end_ _reference_start_Psalms 60:09_reference_end_ _reference_start_Psalms 110:07_reference_end_ _reference_start_Psalms 23:05_reference_end_ _reference_start_Proverbs 25:22_reference_end_ _reference_start_Ecclesiastes 2:14_reference_end_ _reference_start_Daniel 1:10_reference_end_ _reference_start_Daniel 2:28_reference_end_ _reference_start_Daniel 4:02_reference_end_ _reference_start_Daniel 4:07_reference_end_ _reference_start_Daniel 7:01_reference_end_ _reference_start_Daniel 7:15_reference_end_ _reference_start_Daniel 2:32_reference_end_ _reference_start_Daniel 2:38_reference_end_ _reference_start_Daniel 3:27_reference_end_ _reference_start_Daniel 4:10_reference_end_ _reference_start_Daniel 7:06_reference_end_ _reference_start_Daniel 7:09_reference_end_ _reference_start_Daniel 7:20_reference_end_ _reference_start_Daniel 7:01_reference_end_ _reference_start_Jonah 2:06_reference_end_ _reference_start_Jonah 4:06_reference_end_ _reference_start_Jonah 4:08_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5(           ~  }  |  {  z  y  x " w ! v  u t s r  q  p  o  n  m * l  k  j ) i # h  g  f  e  d  c  b  a  ` , _ % ^ ! ]  \  [  Z  Y  X  W  V  U  T  S  R  Q  P  O  N  M  L  K  J  I  H  G  F  E  D  C  B  A , C~qdWJ=0# zm`SF9,vi\OB5( F E D C B A @ ? > =$ < ; : 9  8 7 62 5- 4* 3" 2 1 0 / . -) ,- + * ) (  '  &  % $ # " !  &           n < (  n        .          4rt of us with desires & concerns \cmf partie d'une personne avec ses désires et ses souçis \cme part of us with emotions & feelings \cmf partie d'une personne avec ses émotions et ses sentiments \cme part of us with intentions & will \cmf parti d'une personne avec intentions et volonté \cme part of us with thoughts & ideas \cmf partie d'une personne avec ses pensées et ses idées \cme the person him/herself \cmf la personne elle-même _reference_start_Genesis 8:21_reference_end_ _reference_start_Genesis 17:17_reference_end_ _reference_start_Genesis 18:05_reference_end_ _reference_start_Genesis 24:45_reference_end_ _reference_start_Genesis 27:41_reference_end_ _reference_start_Genesis 20:05_reference_end_ _reference_start_Genesis 31:26_reference_end_ _reference_start_Genesis 6:05_reference_end_ _reference_start_Genesis 8:21_reference_end_ _reference_start_Genesis 6:06_reference_end_ _reference_start_Genesis 34:03_reference_end_ _reference_start_Genesis 42:28_reference_end_ _reference_start_Genesis 45:526_reference_end_ _reference_start_Genesis 50:21_reference_end_ _reference_start_Genesis 20:06_reference_end_ _reference_start_Genesis 31:20_reference_end_ _reference_start_Exodus 9:21_reference_end_ _reference_start_Exodus 14:05_reference_end_ _reference_start_Exodus 15:08_reference_end_ _reference_start_Exodus 28:29_reference_end_ _reference_start_Exodus 36:02_reference_end_ _reference_start_Exodus 4:14_reference_end_ _reference_start_Exodus 4:21_reference_end_ _reference_start_Exodus 7:03_reference_end_ _reference_start_Exodus 7:13_reference_end_ _reference_start_Exodus 7:14_reference_end_ _reference_start_Exodus 7:22_reference_end_ _reference_start_Exodus 7:23_reference_end_ _reference_start_Exodus 8:11_reference_end_ _reference_start_Exodus 8:15_reference_end_ _reference_start_Exodus 8:28_reference_end_ _reference_start_Exodus 9:07_reference_end_ _reference_start_Exodus 9:12_reference_end_ _reference_start_Exodus 9:34_reference_end_ _reference_start_Exodus 9:35_reference_end_ _reference_start_Exodus 610:01_reference_end_ _reference_start_Exodus 10:20_reference_end_ _reference_start_Exodus 10:27_reference_end_ _reference_start_Exodus 11:10_reference_end_ _reference_start_Exodus 14:04_reference_end_ _reference_start_Exodus 14:08_reference_end_ _reference_start_Exodus 14:17_reference_end_ _reference_start_Exodus 36:02_reference_end_ _reference_start_Exodus 9:14_reference_end_ _reference_start_Deuteronomy 18:21_reference_end_ _reference_start_Deuteronomy 4:11_reference_end_ _reference_start_Deuteronomy 28:47_reference_end_ _reference_start_Deuteronomy 28:65_reference_end_ _reference_start_Deuteronomy 28:65_reference_end_ _reference_start_Deuteronomy 28:67_reference_end_ _reference_start_Deuteronomy 5:26_reference_end_ _reference_start_Deuteronomy 28:28_reference_end_ _reference_start_Deuteronomy 29:03_reference_end_ _reference_start_Jude 16:17_reference_end_ _reference_start_1 Samuel 1:13_reference_end_ _reference_start_1 Samuel 27:01_reference_end_ _reference_start_1 Samuel 4:20_reference_end_ _reference7_start_1 Samuel 10:26_reference_end_ _reference_start_1 Samuel 17:32_reference_end_ _reference_start_1 Samuel 21:13_reference_end_ _reference_start_1 Samuel 24:06_reference_end_ _reference_start_1 Samuel 28:05_reference_end_ _reference_start_1 Samuel 16:07_reference_end_ _reference_start_1 Samuel 17:28_reference_end_ _reference_start_1 Samuel 25:25_reference_end_ _reference_start_1 Samuel 25:37_reference_end_ _reference_start_1 Samuel 9:19_reference_end_ _reference_start_1 Samuel 9:20_reference_end_ _reference_start_1 Samuel 13:14_reference_end_ _reference_start_1 Samuel 1:08_reference_end_ _reference_start_1 Samuel 4:13_reference_end_ _reference_start_1 Samuel 25:36_reference_end_ _reference_start_1 Samuel 2:35_reference_end_ _reference_start_1 Samuel 6:06_reference_end_ _reference_start_1 Samuel 6:06_reference_end_ _reference_start_1 Samuel 7:03_reference_end_ _reference_start_1 Samuel 12:20_reference_end_ _reference_start_1 Samuel 12:24_reference_end_ _reference_start_1 Samuel 14:07_reference_end_ _ref8erence_start_1 Samuel 2:01_reference_end_ _reference_start_1 Samuel 10:09_reference_end_ _reference_start_1 Samuel 25:31_reference_end_ _reference_start_2 Samuel 7:27_reference_end_ _reference_start_2 Samuel 13:20_reference_end_ _reference_start_2 Samuel 13:33_reference_end_ _reference_start_2 Samuel 14:01_reference_end_ _reference_start_2 Samuel 15:06_reference_end_ _reference_start_2 Samuel 15:13_reference_end_ _reference_start_2 Samuel 17:10_reference_end_ _reference_start_2 Samuel 18:03_reference_end_ _reference_start_2 Samuel 19:08_reference_end_ _reference_start_2 Samuel 19:15_reference_end_ _reference_start_2 Samuel 24:10_reference_end_ _reference_start_2 Samuel 18:14_reference_end_ _reference_start_2 Samuel 6:16_reference_end_ _reference_start_2 Samuel 13:28_reference_end_ _reference_start_2 Samuel 7:03_reference_end_ _reference_start_2 Samuel 7:21_reference_end_ _reference_start_2 Samuel 19:20_reference_end_ _reference_start_1 Kings 8:47_reference_end_ _reference_start_1 Kings 2:04_reference_end_9 _reference_start_1 Kings 3:06_reference_end_ _reference_start_1 Kings 8:23_reference_end_ _reference_start_1 Kings 8:38_reference_end_ _reference_start_1 Kings 8:39_reference_end_ _reference_start_1 Kings 8:48_reference_end_ _reference_start_1 Kings 8:58_reference_end_ _reference_start_1 Kings 8:61_reference_end_ _reference_start_1 Kings 11:02_reference_end_ _reference_start_1 Kings 11:03_reference_end_ _reference_start_1 Kings 11:04_reference_end_ _reference_start_1 Kings 11:09_reference_end_ _reference_start_1 Kings 8:17_reference_end_ _reference_start_1 Kings 8:18_reference_end_ _reference_start_1 Kings 8:66_reference_end_ _reference_start_1 Kings 21:07_reference_end_ _reference_start_1 Kings 9:03_reference_end_ _reference_start_1 Kings 9:04_reference_end_ _reference_start_1 Kings 3:09_reference_end_ _reference_start_1 Kings 3:12_reference_end_ _reference_start_1 Kings 5:09_reference_end_ _reference_start_1 Kings 10:02_reference_end_ _reference_start_1 Kings 10:24_reference_end_ _reference_start_1 Kin:gs 2:44_reference_end_ _reference_start_2 Kings 9:24_reference_end_ _reference_start_1 Chronicles 17:19_reference_end_ _reference_start_1 Chronicles 22:19_reference_end_ _reference_start_1 Chronicles 28:09_reference_end_ _reference_start_1 Chronicles 29:09_reference_end_ _reference_start_1 Chronicles 29:17_reference_end_ _reference_start_1 Chronicles 29:18_reference_end_ _reference_start_1 Chronicles 29:19_reference_end_ _reference_start_1 Chronicles 17:02_reference_end_ _reference_start_1 Chronicles 22:07_reference_end_ _reference_start_1 Chronicles 28:02_reference_end_ _reference_start_1 Chronicles 16:10_reference_end_ _reference_start_2 Chronicles 7:10_reference_end_ _reference_start_2 Chronicles 7:11_reference_end_ _reference_start_2 Chronicles 10:16_reference_end_ _reference_start_Esther 6:06_reference_end_ _reference_start_Esther 1:10_reference_end_ _reference_start_Esther 5:09_reference_end_ _reference_start_Esther 7:05_reference_end_ _reference_start_Psalms 28:07_reference_end_ _reference_start_Ps;alms 61:03_reference_end_ _reference_start_Psalms 7:11_reference_end_ _reference_start_Psalms 17:03_reference_end_ _reference_start_Psalms 24:04_reference_end_ _reference_start_Psalms 28:03_reference_end_ _reference_start_Psalms 31:25_reference_end_ _reference_start_Psalms 32:11_reference_end_ _reference_start_Psalms 46:03_reference_end_ _reference_start_Psalms 51:12_reference_end_ _reference_start_Psalms 119:002_reference_end_ _reference_start_Psalms 119:007_reference_end_ _reference_start_Psalms 119:036_reference_end_ _reference_start_Psalms 119:145_reference_end_ _reference_start_Psalms 139:23_reference_end_ _reference_start_Psalms 38:11_reference_end_ _reference_start_Psalms 4:08_reference_end_ _reference_start_Psalms 19:09_reference_end_ _reference_start_Psalms 31:25_reference_end_ _reference_start_Psalms 34:19_reference_end_ _reference_start_Psalms 17:03_reference_end_ _reference_start_Psalms 57:08_reference_end_ _reference_start_Psalms 4:05_reference_end_ _reference_start_Psalms 19:15_reference_end<_ _reference_start_Psalms 90:12_reference_end_ _reference_start_Psalms 51:19_reference_end_ _reference_start_Psalms 119:080_reference_end_ _reference_start_Proverbs 11:12_reference_end_ _reference_start_Proverbs 3:03_reference_end_ _reference_start_Proverbs 3:05_reference_end_ _reference_start_Proverbs 22:11_reference_end_ _reference_start_Proverbs 30:19_reference_end_ _reference_start_Proverbs 14:30_reference_end_ _reference_start_Proverbs 19:21_reference_end_ _reference_start_Proverbs 14:13_reference_end_ _reference_start_Proverbs 18:12_reference_end_ _reference_start_Proverbs 23:19_reference_end_ _reference_start_Proverbs 15:28_reference_end_ _reference_start_Proverbs 18:02_reference_end_ _reference_start_Proverbs 2:02_reference_end_ _reference_start_Proverbs 3:01_reference_end_ _reference_start_Proverbs 10:08_reference_end_ _reference_start_Proverbs 15:14_reference_end_ _reference_start_Proverbs 23:17_reference_end_ _reference_start_Proverbs 24:17_reference_end_ _reference_start_Ecclesiastes 2:01_reference_end_ _reference_start_Ecclesiastes 3:18_reference_end_ _reference_start_Ecclesiastes 9:01_reference_end_ _reference_start_Ecclesiastes 1:13_reference_end_ _reference_start_Ecclesiastes 2:03_reference_end_ _reference_start_Ecclesiastes 3:11_reference_end_ _reference_start_Ecclesiastes 2:10_reference_end_ _reference_start_Jeremiah 4:19_reference_end_ _reference_start_Daniel 1:08_reference_end_ _reference_start_Daniel 10:12_reference_end_ _reference_start_Daniel 11:27_reference_end_ _reference_start_Daniel 11:28_reference_end_ _reference_start_Daniel 5:20_reference_end_ _reference_start_Daniel 5:22_reference_end_ _reference_start_Daniel 8:25_reference_end_ _reference_start_Daniel 11:12_reference_end_ _reference_start_Daniel 11:25_reference_end_ _reference_start_Daniel 2:30_reference_end_ _reference_start_Daniel 4:13_reference_end_ _reference_start_Daniel 5:21_reference_end_ _reference_start_Daniel 7:04_reference_end_ _reference_start_Hosea 13:08_reference_end_ _reference_start_Jonah 2:04_reference_end_ \\j##!heaven, skyheaven, skyHebrew: שְׁמַיִן \f ciel, paradis \cme hyperbole for exaultation, honor \cmf une façon d'augmAf/heartheartHebrew: .לֶב / לֶבַב / לבַב \f coeur \cme (say) to oneself \cmf (dire) à soi-même \cme believe, have faith in \cmf croire (en) \cme figurative expression (strength, conscience, loyalty, etc) \cmf sens figuré \cme innermost, essential, central part of something \cmf partie la plus intime et centrale de qqch \cme organ heart, and/or thorax of body \cmf organ physique, et/ou thorax du corps \cme part of a person that controls the body \cmf parti d'une personne qui control le corps \cme pa3 C~qdWJ=0# zm`SF9,vi\OB5(                       ~  } ! |  {  z  y x  w  v  u  t  s  r  q # p $ o  n  m  l  k  j % i  h  g  f  e  d  c  b  a  `  _  ^A ] \ [ ZC YA XA W/ V U T  S$ R Q P O N  M  L  K # J " I H  G C~qdWJ=0# zm`SF9,vi\OB5( L K" J I H G& F Ew Dw$ Cw Bw A3 @. ? > = < ; : 9= 8 7 6 5 4 3  2 1 0  /  .  -  ,  +  *  )  (  '  &  %  $ , #  "  !             B             =  :  0  '  &        /     C~qdWJ=0# zm`SF9,vi\OB5(   '                ~ } | {  z  y x w v u  t s r q p  o  n m l k j i h g  f e d c b a  ` _ ^ ] \ [ Z Y X W V U T S RwP Q3 PZ O N M9Benter l'honeur de Dieu \cme hyperbole for honor, exaltation \cmf une façon d'augmenter l'honeur de Dieu \cme metonomy for God \cmf métonomie pour Dieu \cme place where gods & spirits dwell \cmf lieu où habitent les dieux et les esprits \cme sky vs earth \cmf le ciel en contraste avec la terre \cme space, outer space \cmf l'espace, l'espace créé \cme the four points of the compas \cmf quatre points cardinaux \cme where gods and spirits dwell \cmf séjour des dieux et des esprits _reference_start_Genesis 24:07_reference_end_ _reference_start_Genesis 1:20_reference_end_ _reference_start_Genesis 1:26_reference_end_ _reference_start_Genesis 1:28_reference_end_ _reference_start_Genesis 1:30_reference_end_ _reference_start_Genesis 2:19_reference_end_ _reference_start_Genesis 2:20_reference_end_ _reference_start_Genesis 6:07_reference_end_ _reference_start_Genesis 6:17_reference_end_ _reference_start_Genesis 7:03_reference_end_ _reference_start_Genesis 7:11_reference_end_ _reference_start_Genesis 7:19_refereCnce_end_ _reference_start_Genesis 7:23_reference_end_ _reference_start_Genesis 8:02_reference_end_ _reference_start_Genesis 9:02_reference_end_ _reference_start_Genesis 19:24_reference_end_ _reference_start_Genesis 27:28_reference_end_ _reference_start_Genesis 27:39_reference_end_ _reference_start_Genesis 1:01_reference_end_ _reference_start_Genesis 1:06_reference_end_ _reference_start_Genesis 1:07_reference_end_ _reference_start_Genesis 1:08_reference_end_ _reference_start_Genesis 1:08_reference_end_ _reference_start_Genesis 1:09_reference_end_ _reference_start_Genesis 1:14_reference_end_ _reference_start_Genesis 1:14_reference_end_ _reference_start_Genesis 1:15_reference_end_ _reference_start_Genesis 1:15_reference_end_ _reference_start_Genesis 1:17_reference_end_ _reference_start_Genesis 1:17_reference_end_ _reference_start_Genesis 1:20_reference_end_ _reference_start_Genesis 2:01_reference_end_ _reference_start_Genesis 2:04_reference_end_ _reference_start_Genesis 11:04_reference_end_ _reference_start_DGenesis 14:19_reference_end_ _reference_start_Genesis 14:22_reference_end_ _reference_start_Genesis 15:05_reference_end_ _reference_start_Genesis 22:17_reference_end_ _reference_start_Genesis 24:03_reference_end_ _reference_start_Genesis 26:04_reference_end_ _reference_start_Genesis 21:17_reference_end_ _reference_start_Genesis 22:11_reference_end_ _reference_start_Genesis 22:15_reference_end_ _reference_start_Genesis 28:12_reference_end_ _reference_start_Genesis 28:17_reference_end_ _reference_start_Genesis 49:25_reference_end_ _reference_start_Exodus 9:08_reference_end_ _reference_start_Exodus 9:10_reference_end_ _reference_start_Exodus 9:22_reference_end_ _reference_start_Exodus 9:23_reference_end_ _reference_start_Exodus 10:21_reference_end_ _reference_start_Exodus 10:22_reference_end_ _reference_start_Exodus 16:04_reference_end_ _reference_start_Exodus 17:14_reference_end_ _reference_start_Exodus 20:04_reference_end_ _reference_start_Exodus 24:10_reference_end_ _reference_start_Exodus 20:11_referenceE_end_ _reference_start_Exodus 20:22_reference_end_ _reference_start_Deuteronomy 28:12_reference_end_ _reference_start_Deuteronomy 28:23_reference_end_ _reference_start_Deuteronomy 28:24_reference_end_ _reference_start_Deuteronomy 28:26_reference_end_ _reference_start_Deuteronomy 28:62_reference_end_ _reference_start_Deuteronomy 33:13_reference_end_ _reference_start_1 Samuel 17:44_reference_end_ _reference_start_1 Samuel 17:46_reference_end_ _reference_start_1 Samuel 2:10_reference_end_ _reference_start_1 Samuel 5:12_reference_end_ _reference_start_2 Samuel 18:09_reference_end_ _reference_start_2 Samuel 21:10_reference_end_ _reference_start_2 Samuel 22:08_reference_end_ _reference_start_2 Samuel 22:10_reference_end_ _reference_start_2 Samuel 22:14_reference_end_ _reference_start_1 Kings 8:22_reference_end_ _reference_start_1 Kings 8:35_reference_end_ _reference_start_1 Kings 8:54_reference_end_ _reference_start_1 Kings 8:27_reference_end_ _reference_start_1 Kings 8:23_reference_end_ _reference_start_1 KingFs 8:30_reference_end_ _reference_start_1 Kings 8:32_reference_end_ _reference_start_1 Kings 8:34_reference_end_ _reference_start_1 Kings 8:36_reference_end_ _reference_start_1 Kings 8:39_reference_end_ _reference_start_1 Kings 8:45_reference_end_ _reference_start_1 Kings 8:49_reference_end_ _reference_start_1 Chronicles 16:31_reference_end_ _reference_start_1 Chronicles 21:26_reference_end_ _reference_start_1 Chronicles 16:26_reference_end_ _reference_start_1 Chronicles 29:11_reference_end_ _reference_start_1 Chronicles 21:16_reference_end_ _reference_start_2 Chronicles 7:01_reference_end_ _reference_start_2 Chronicles 7:13_reference_end_ _reference_start_2 Chronicles 7:14_reference_end_ _reference_start_Psalms 8:02_reference_end_ _reference_start_Psalms 57:06_reference_end_ _reference_start_Psalms 57:11_reference_end_ _reference_start_Psalms 57:12_reference_end_ _reference_start_Psalms 119:89_reference_end_ _reference_start_Psalms 8:09_reference_end_ _reference_start_Psalms 19:07_reference_end_ _referencGe_start_Psalms 8:04_reference_end_ _reference_start_Psalms 19:02_reference_end_ _reference_start_Psalms 124:08_reference_end_ _reference_start_Psalms 139:08_reference_end_ _reference_start_Psalms 150:01_reference_end_ _reference_start_Psalms 19:02_reference_end_ _reference_start_Psalms 2:04_reference_end_ _reference_start_Psalms 57:04_reference_end_ _reference_start_Psalms 144:05_reference_end_ _reference_start_Ecclesiastes 1:13_reference_end_ _reference_start_Ecclesiastes 2:03_reference_end_ _reference_start_Daniel 2:19_reference_end_ _reference_start_Daniel 2:19_reference_end_ _reference_start_Daniel 2:37_reference_end_ _reference_start_Daniel 2:44_reference_end_ _reference_start_Daniel 4:34_reference_end_ _reference_start_Daniel 5:23_reference_end_ _reference_start_Daniel 4:23_reference_end_ _reference_start_Daniel 2:28_reference_end_ _reference_start_Daniel 4:10_reference_end_ _reference_start_Daniel 4:20_reference_end_ _reference_start_Daniel 4:34_reference_end_ _reference_start_Daniel 428:1_reference_end_ _reference_start_Daniel 6:28_reference_end_ _reference_start_Daniel 7:13_reference_end_ _reference_start_Daniel 2:38_reference_end_ _reference_start_Daniel 4:08_reference_end_ _reference_start_Daniel 4:09_reference_end_ _reference_start_Daniel 4:12_reference_end_ _reference_start_Daniel 4:17_reference_end_ _reference_start_Daniel 4:19_reference_end_ _reference_start_Daniel 4:19_reference_end_ _reference_start_Daniel 4:20_reference_end_ _reference_start_Daniel 4:22_reference_end_ _reference_start_Daniel 4:30_reference_end_ _reference_start_Daniel 4:31_reference_end_ _reference_start_Daniel 5:21_reference_end_ _reference_start_Daniel 8:08_reference_end_ _reference_start_Daniel 9:12_reference_end_ _reference_start_Daniel 11:04_reference_end_ _reference_start_Daniel 12:07_reference_end_ _reference_start_Daniel 8:10_reference_end_ _reference_start_Daniel 12:03_reference_end_ _reference_start_Daniel 7:02_reference_end_ _reference_start_Daniel 7:27_reference_end_ _reference_start_Jonah 1:09_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5( R  Q  P 1 O - N ' M $ L " K  J  I  H  G 6 F # E  D  C  B  A  @  ?  >  = . < , ;! :> 9 8 7 6 5 4 3 2 1 0 /  .  -  ,  + *  )1 ( ' & % $ # " !                   C~qdWJ=0"wj]PC6(reXK>1$  + ) ( ' ' '                     ~ } | { z y& x w v u" t s r q p o" n, m% l k j i h g9 f e d c b| a ` _ ^ ]wY \9 [9 Z9 Y X W V U  T  S art_Genesis 43:32_reference_end_ _reference_start_Exodus 1:15_reference_end_ _reference_start_Exodus 1:16_reference_end_ _reference_start_Exodus 1:19_reference_end_ _reference_start_Exodus 2:06_reference_end_ _reference_start_Exodus 2:07_reference_end_ _reference_start_Exodus 2:11_reference_end_ _reference_start_Exodus 2:13_reference_end_ _reference_start_Exodus 3:18_reference_end_ _reference_start_Exodus 5:03_reference_end_ _reference_start_Exodus 7:16_reference_end_ _reference_start_Exodus 9:01_reference_end_ _reference_start_Exodus 9:13_reference_end_ _reference_start_Exodus 10:03_reference_end_ _reference_start_Exodus 21:02_reference_end_ _reference_start_1 Samuel 4:06_reference_end_ _reference_start_1 Samuel 4:09_reference_end_ _reference_start_1 Samuel 13:03_reference_end_ _reference_start_1 Samuel 13:19_reference_end_ _reference_start_1 Samuel 14:11_reference_end_ _reference_start_1 Samuel 14:21_reference_end_ _reference_start_1 Samuel 29:03_reference_end_ _reference_start_Jonah 1:09_reference_end_ )m)@55)He who lives foreverhe who lives foreverHebrew: ,חֵי הָעֹולָם / עָלְמָא \f Celui qui vit à jamais \cme He who lives forever \cmf Celui qui vit à jamais _reference_start_Deuteronomy 32:40_reference_end_ _reference_start_Daniel 4:31_reference_end_ _reference_start_Daniel 12:07_reference_end_oHebrewhebrewHebrew: עברי \f hébreu \cme of the Hebrew people \cmf membre du peuple hébreu _reference_start_Genesis 14:13_reference_end_ _reference_start_Genesis 39:14_reference_end_ _reference_start_Genesis 39:17_reference_end_ _reference_start_Genesis 39:17_reference_end_ _reference_start_Genesis 40:15_reference_end_ _reference_start_Genesis 41:12_reference_end_ _reference_stJ C~qdWJ=0# zm`SF9,vi\OB5( XA W? V U T S  R " Q  P 2 O  N M L K J I H  G F E D C B A @( ?$ > = <% ;" :! 90 8+ 7- 6 5 4" 3 2 1# 0# /# . -  , + ( *  )  (  '  &  %  $  #  " !              E ##Whigh priesthigh priestHebrew: הַכֹּהֵן הַגָּדֹול \f souverain sacrificateur \cme high priest, head priest \cmf souverein sacrificateur _reference_start_Leviticus 21:10_reference_end_ _reference_start_Numbers 35:25_reference_end_ _reference_start_Numbers 35:25_reference_end_ _reference_start_Numbers 35:28_reference_end_ _reference_start_Joshua 20:06_reference_end_ _reference_start_2 Kings 12:10_reference_end_ _reference_start_2 Chronicles 34:09_reference_end_ _reference_start_Nehemiah 3:01_reference_end_ _reference_start_Nehemiah 3:20_reference_end_start_Leviticus 6:22_reference_end_ _reference_start_Leviticus 7:01_reference_end_ _reference_start_Leviticus 10:12_reference_end_ _reference_start_Leviticus 10:17_reference_end_ _reference_start_Leviticus 14:13_reference_end_ _reference_start_Leviticus 27:28_reference_end_ _reference_start_Numbers 18:10_reference_end_ _reference_start_Numbers 4:04_reference_end_ _reference_start_Numbers 4:19_reference_end_ _reference_start_Numbers 18:09_reference_end_ _reference_start_1 Kings 6:16_reference_end_ _reference_start_1 Kings 7:50_reference_end_ _reference_start_1 Kings 8:06_reference_end_ _reference_start_1 Chronicles 6:34_reference_end_ _reference_start_1 Chronicles 23:13_reference_end_ _reference_start_2 Chronicles 3:08_reference_end_ _reference_start_2 Chronicles 4:22_reference_end_ _reference_start_2 Chronicles 5:07_reference_end_ _reference_start_Ezra 2:63_reference_end_ _reference_start_Nehemiah 7:65_reference_end_ _reference_start_Ezekiel 41:04_reference_end_ _reference_start_Daniel 9:24_reference_end_ QQ#!))holy of holiesholy of holiesHebrew: קֹדשׁ הַקדשִׁים \f lieu très saint \cme holy of holies, inner room of tablernacle or temple \cmf lieu très saint, sanctuaire du temple _reference_start_Ezekiel 45:03_reference_end_ \cme very holy thing, set apart to God \cmf qqch de très saint, mise apart pour Dieu _reference_start_Ezekiel 43:12_reference_end_ _reference_start_Ezekiel 48:12_reference_end_ _reference_start_Exodus 26:33_reference_end_ _reference_start_Exodus 26:34_reference_end_ _reference_start_Exodus 29:37_reference_end_ _reference_start_Exodus 30:10_reference_end_ _reference_start_Exodus 30:29_reference_end_ _reference_start_Exodus 30:36_reference_end_ _reference_start_Exodus 40:10_reference_end_ _reference_start_Leviticus 2:03_reference_end_ _reference_start_Leviticus 2:10_reference_end_ _reference_start_Leviticus 6:10_reference_end_ _reference_start_Leviticus 6:18_reference_end_ _reference_N C~qdWJ=0# zm`SF9,vi\OB5(          2      3                          & + ~# } |! { z y x  w v u t  s  r  q  p  o  n @ m  l  k  j  i  h  g  f e d c b a  ` _ ^ ] \  [ Z  Y)s 10:23_reference_end_ _reference_start_Exodus 19:14_reference_end_ _reference_start_Leviticus 21:08_reference_end_ _reference_start_Leviticus 21:08_reference_end_ _reference_start_Numbers 20:12_reference_end_ _reference_start_Numbers 20:13_reference_end_ _reference_start_Numbers 11:19_reference_end_ _reference_start_1 Samuel 7:01_reference_end_ _reference_start_1 Samuel 16:05_reference_end_ _reference_start_1 Samuel 21:06_reference_end_ _reference_start_1 Samuel 16:05_reference_end_ _reference_start_2 Samuel 8:11_reference_end_ _reference_start_2 Samuel 11:04_reference_end_ _reference_start_1 Kings 8:64_reference_end_ _reference_start_1 Kings 9:03_reference_end_ _reference_start_1 Kings 9:07_reference_end_ _reference_start_1 Chronicles 18:11_reference_end_ _reference_start_1 Chronicles 23:13_reference_end_ _reference_start_1 Chronicles 15:12_reference_end_ _reference_start_1 Chronicles 15:14_reference_end_ _reference_start_2 Chronicles 7:16_reference_end_ _reference_start_2 Chronicles 7:20_reference_end_  "%%]holy (to be)holy (to be)Hebrew: קָדֶשׁ / קָדַשׁ \f saint, être saint \cme attribute of God, unapproachable, inviolable \cmf attribut de Dieu, non-approchable \cme be dedicated to God, sacred \cmf être dédié à Dieu, sacré \cme be or make undefiled, morally pure like God \cmf pur moralement comme Dieu \cme ritually cleanse \cmf purifier rituellement \cme to ceremonially cleanse and set aside as holy \cmf puifier rituellement et connaître qqn/qqch comme saint _reference_start_Genesis 2:03_reference_end_ _reference_start_Exodus 13:02_reference_end_ _reference_start_Exodus 20:08_reference_end_ _reference_start_Exodus 20:11_reference_end_ _reference_start_Exodus 19:10_reference_end_ _reference_start_Exodus 19:22_reference_end_ _reference_start_ExoduQTui est dédié à Dieu, sacré \cme ceremonially cleanse and set aside as holy \cmf puifier rituellement et connaître qqn/qqch comme saint \cme Jerusalem and its hills; place made holy by God's presence \cmf Jérusalem et ses colines; lieu sanctifié par présence de Dieu \cme messanger (angel) sent by God \cmf messager (ange) envoyé par Dieu \cme name for God \cmf nom de Dieu \cme outer room of temple or tabernacle \cmf première chambre dans le temple ou tabernacle \cme place made holy by God's presence \cmf lieu sanctifié par la présence de Dieu \cme saints, chesen people of God \cmf un saint, le peuple choisi par Dieu \cme something given by God \cmf qqch donné par Dieu \cme temple/tabernacle and its precincts; place made holy by God's presence \cmf le temple/tabernacle; lieu sanctifié par présence de Dieu \cme the people of God \cmf le peuple de Dieu _reference_start_Exodus 15:11_reference_end_ _reference_start_Exodus 12:16_reference_end_ _reference_start_Exodus 16:23_reference_end_ _referenceU_start_Exodus 19:06_reference_end_ _reference_start_Exodus 22:30_reference_end_ _reference_start_Exodus 26:33_reference_end_ _reference_start_Exodus 28:29_reference_end_ _reference_start_Exodus 28:35_reference_end_ _reference_start_Exodus 28:43_reference_end_ _reference_start_Exodus 38:27_reference_end_ _reference_start_Exodus 3:05_reference_end_ _reference_start_Exodus 15:13_reference_end_ _reference_start_Leviticus 2:03_reference_end_ _reference_start_Leviticus 25:12_reference_end_ _reference_start_Leviticus 5:15_reference_end_ _reference_start_Leviticus 5:16_reference_end_ _reference_start_Leviticus 4:06_reference_end_ _reference_start_Leviticus 5:15_reference_end_ _reference_start_Leviticus 10:18_reference_end_ _reference_start_Leviticus 16:02_reference_end_ _reference_start_Leviticus 16:16_reference_end_ _reference_start_Numbers 20:13_reference_end_ _reference_start_Numbers 18:17_reference_end_ _reference_start_Deuteronomy 28:09_reference_end_ _reference_start_1 Samuel 2:02_reference_end_ _reference_Vstart_1 Samuel 6:20_reference_end_ _reference_start_1 Samuel 21:05_reference_end_ _reference_start_1 Samuel 21:06_reference_end_ _reference_start_1 Samuel 21:07_reference_end_ _reference_start_1 Kings 7:51_reference_end_ _reference_start_1 Kings 8:04_reference_end_ _reference_start_1 Kings 6:16_reference_end_ _reference_start_1 Kings 7:50_reference_end_ _reference_start_1 Kings 8:06_reference_end_ _reference_start_1 Kings 8:08_reference_end_ _reference_start_1 Kings 8:10_reference_end_ _reference_start_1 Chronicles 16:10_reference_end_ _reference_start_1 Chronicles 16:35_reference_end_ _reference_start_1 Chronicles 29:16_reference_end_ _reference_start_1 Chronicles 16:29_reference_end_ _reference_start_1 Chronicles 9:29_reference_end_ _reference_start_1 Chronicles 22:19_reference_end_ _reference_start_1 Chronicles 23:13_reference_end_ _reference_start_1 Chronicles 23:28_reference_end_ _reference_start_1 Chronicles 28:12_reference_end_ _reference_start_1 Chronicles 22:19_reference_end_ _reference_start_1 CWhronicles 23:32_reference_end_ _reference_start_1 Chronicles 29:03_reference_end_ _reference_start_Psalms 30:05_reference_end_ _reference_start_Psalms 33:21_reference_end_ _reference_start_Psalms 51:13_reference_end_ _reference_start_Psalms 105:43_reference_end_ _reference_start_Psalms 134:02_reference_end_ _reference_start_Psalms 2:06_reference_end_ _reference_start_Psalms 3:05_reference_end_ _reference_start_Psalms 24:03_reference_end_ _reference_start_Psalms 63:03_reference_end_ _reference_start_Psalms 110:03_reference_end_ _reference_start_Psalms 71:22_reference_end_ _reference_start_Psalms 78:41_reference_end_ _reference_start_Psalms 28:02_reference_end_ _reference_start_Psalms 60:08_reference_end_ _reference_start_Psalms 34:10_reference_end_ _reference_start_Proverbs 20:25_reference_end_ _reference_start_Proverbs 9:10_reference_end_ _reference_start_Daniel 8:13_reference_end_ _reference_start_Daniel 4:10_reference_end_ _reference_start_Daniel 4:14_reference_end_ _reference_start_Daniel 4:20_reference_end_ _reference_start_Daniel 4:05_reference_end_ _reference_start_Daniel 4:06_reference_end_ _reference_start_Daniel 4:15_reference_end_ _reference_start_Daniel 5:11_reference_end_ _reference_start_Daniel 12:07_reference_end_ _reference_start_Daniel 9:16_reference_end_ _reference_start_Daniel 9:20_reference_end_ _reference_start_Daniel 9:24_reference_end_ _reference_start_Daniel 11:45_reference_end_ _reference_start_Daniel 8:13_reference_end_ _reference_start_Daniel 7:18_reference_end_ _reference_start_Daniel 7:21_reference_end_ _reference_start_Daniel 7:22_reference_end_ _reference_start_Daniel 7:25_reference_end_ _reference_start_Daniel 7:27_reference_end_ _reference_start_Daniel 11:28_reference_end_ _reference_start_Daniel 11:30_reference_end_ _reference_start_Daniel 8:13_reference_end_ _reference_start_Daniel 8:14_reference_end_ _reference_start_Daniel 9:24_reference_end_ _reference_start_Daniel 8:24_reference_end_ _reference_start_Jonah 2:05_reference_end_ _reference_start_Jonah 2:08_reference_end_ ==N$!!mhonor (to)honor (to)Hebrew: כָּבֶד / כָּבַד \f honorer \cme distinguished, important \cmf distangué, repsecté \cme glorify, worship God or gods \cmf glorifier, adorer Dieu ou des dieux \cme God's high position \cmf la haute position de Dieu \cme honored, respected \cmf honoré, respecté _reference_start_Genesis 34:19_reference_end_ _reference_start_Exodus 14:04_reference_end_ _reference_start_Exodus 14:17_reference_end_ _reference_start_ZM#holyholyHebrew: קָדֹושׁ \f saint \cme angel, messanger from God \cmf ange, messager de Dieu \cme angels sent by God \cmf anges envoyés par Dieu \cme attribut of God, unapproachable, involable \cmf attribut de Dieu, non-approchable \cme attribute of God, unapproachable \cmf attribut de Dieu, non-approchable \cme attribute of God, unapproachable, inviolable \cmf attribut de Dieu, non-approchable \cme belonging to, dedicated to God, sacred \cmf qui appartient, qS C~qdWJ=/"yl_RE8+uh[NA4'  ^  ]  \  [  Z  Y  X: W V U T S" R  Q  P O  N M L  K  J I H G F E D - C  B  A  @  ? > = < ; : 9 8 7 6 5" 4< 3 2N) 1G 0n /? . - , + *i+ )3 (! ' &  %  $  #  "  !           #Exodus 14:18_reference_end_ _reference_start_Exodus 20:12_reference_end_ _reference_start_Deuteronomy 28:58_reference_end_ _reference_start_1 Samuel 2:30_reference_end_ _reference_start_1 Samuel 2:29_reference_end_ _reference_start_1 Samuel 2:30_reference_end_ _reference_start_1 Samuel 9:06_reference_end_ _reference_start_1 Samuel 15:30_reference_end_ _reference_start_1 Samuel 22:14_reference_end_ _reference_start_2 Samuel 6:20_reference_end_ _reference_start_2 Samuel 6:22_reference_end_ _reference_start_2 Samuel 10:03_reference_end_ _reference_start_2 Samuel 23:19_reference_end_ _reference_start_2 Samuel 23:23_reference_end_ _reference_start_1 Chronicles 4:09_reference_end_ _reference_start_1 Chronicles 11:21_reference_end_ _reference_start_1 Chronicles 11:25_reference_end_ _reference_start_1 Chronicles 19:03_reference_end_ _reference_start_Psalms 149:08_reference_end_ _reference_start_Proverbs 3:09_reference_end_ _reference_start_Proverbs 14:31_reference_end_ _reference_start_Daniel 11:38_reference_end_ C}pcVI</"yl_RE8+uh[NA4'  ! 0  -  (      &  %                    2  '                                   ~  }  |  {  z  y  x  w  v  u  t  s  r  q  p  o  n m l k & j i h g  f  e  d  c  b  a  `  _ ]rence_start_1 Samuel 3:15_reference_end_ _reference_start_1 Samuel 31:09_reference_end_ _reference_start_1 Samuel 5:02_reference_end_ _reference_start_1 Samuel 5:05_reference_end_ _reference_start_1 Samuel 31:10_reference_end_ _reference_start_2 Samuel 12:20_reference_end_ _reference_start_2 Samuel 7:05_reference_end_ _reference_start_2 Samuel 7:06_reference_end_ _reference_start_2 Samuel 7:07_reference_end_ _reference_start_2 Samuel 7:13_reference_end_ _reference_start_1 Kings 6:27_reference_end_ _reference_start_1 Kings 1:1_reference_end_ _reference_start_1 Kings 6:03_reference_end_ _reference_start_1 Kings 6:04_reference_end_ _reference_start_1 Kings 6:05_reference_end_ _reference_start_1 Kings 6:06_reference_end_ _reference_start_1 Kings 6:07_reference_end_ _reference_start_1 Kings 6:08_reference_end_ _reference_start_1 Kings 6:09_reference_end_ _reference_start_1 Kings 6:10_reference_end_ _reference_start_1 Kings 6:14_reference_end_ _reference_start_1 Kings 6:15_reference_end_ _reference_start_1 King^s 6:16_reference_end_ _reference_start_1 Kings 6:17_reference_end_ _reference_start_1 Kings 6:18_reference_end_ _reference_start_1 Kings 6:19_reference_end_ _reference_start_1 Kings 6:21_reference_end_ _reference_start_1 Kings 6:22_reference_end_ _reference_start_1 Kings 6:29_reference_end_ _reference_start_1 Kings 6:30_reference_end_ _reference_start_1 Kings 7:12_reference_end_ _reference_start_1 Kings 7:39_reference_end_ _reference_start_1 Kings 7:50_reference_end_ _reference_start_1 Kings 8:06_reference_end_ _reference_start_1 Kings 8:10_reference_end_ _reference_start_1 Kings 8:11_reference_end_ _reference_start_1 Kings 5:17_reference_end_ _reference_start_1 Kings 5:19_reference_end_ _reference_start_1 Kings 5:31_reference_end_ _reference_start_1 Kings 5:32_reference_end_ _reference_start_1 Kings 6:01_reference_end_ _reference_start_1 Kings 6:12_reference_end_ _reference_start_1 Kings 6:37_reference_end_ _reference_start_1 Kings 6:38_reference_end_ _reference_start_1 Kings 7:09_reference_end_ _referen_ce_start_1 Kings 7:12_reference_end_ _reference_start_1 Kings 7:40_reference_end_ _reference_start_1 Kings 7:45_reference_end_ _reference_start_1 Kings 7:48_reference_end_ _reference_start_1 Kings 7:51_reference_end_ _reference_start_1 Kings 8:13_reference_end_ _reference_start_1 Kings 8:16_reference_end_ _reference_start_1 Kings 8:17_reference_end_ _reference_start_1 Kings 8:18_reference_end_ _reference_start_1 Kings 8:19_reference_end_ _reference_start_1 Kings 8:20_reference_end_ _reference_start_1 Kings 8:27_reference_end_ _reference_start_1 Kings 8:29_reference_end_ _reference_start_1 Kings 8:31_reference_end_ _reference_start_1 Kings 8:33_reference_end_ _reference_start_1 Kings 8:38_reference_end_ _reference_start_1 Kings 8:42_reference_end_ _reference_start_1 Kings 8:43_reference_end_ _reference_start_1 Kings 8:44_reference_end_ _reference_start_1 Kings 8:48_reference_end_ _reference_start_1 Kings 8:63_reference_end_ _reference_start_1 Kings 8:64_reference_end_ _reference_start_1 Kings 9:01_referenc`e_end_ _reference_start_1 Kings 9:03_reference_end_ _reference_start_1 Kings 9:07_reference_end_ _reference_start_1 Kings 9:08_reference_end_ _reference_start_1 Kings 9:10_reference_end_ _reference_start_1 Kings 9:16_reference_end_ _reference_start_1 Kings 9:25_reference_end_ _reference_start_1 Kings 10:05_reference_end_ _reference_start_1 Kings 10:12_reference_end_ _reference_start_1 Chronicles 28:11_reference_end_ _reference_start_1 Chronicles 9:11_reference_end_ _reference_start_1 Chronicles 9:13_reference_end_ _reference_start_1 Chronicles 9:23_reference_end_ _reference_start_1 Chronicles 9:26_reference_end_ _reference_start_1 Chronicles 9:27_reference_end_ _reference_start_1 Chronicles 10:10_reference_end_ _reference_start_1 Chronicles 28:11_reference_end_ _reference_start_1 Chronicles 17:04_reference_end_ _reference_start_1 Chronicles 17:05_reference_end_ _reference_start_1 Chronicles 17:06_reference_end_ _reference_start_1 Chronicles 17:12_reference_end_ _reference_start_1 Chronicles 22:01_referencae_end_ _reference_start_1 Chronicles 22:02_reference_end_ _reference_start_1 Chronicles 22:05_reference_end_ _reference_start_1 Chronicles 22:06_reference_end_ _reference_start_1 Chronicles 22:07_reference_end_ _reference_start_1 Chronicles 22:08_reference_end_ _reference_start_1 Chronicles 22:10_reference_end_ _reference_start_1 Chronicles 22:11_reference_end_ _reference_start_1 Chronicles 22:14_reference_end_ _reference_start_1 Chronicles 22:19_reference_end_ _reference_start_1 Chronicles 23:28_reference_end_ _reference_start_1 Chronicles 28:02_reference_end_ _reference_start_1 Chronicles 28:03_reference_end_ _reference_start_1 Chronicles 28:06_reference_end_ _reference_start_1 Chronicles 28:10_reference_end_ _reference_start_1 Chronicles 28:12_reference_end_ _reference_start_1 Chronicles 28:13_reference_end_ _reference_start_1 Chronicles 28:20_reference_end_ _reference_start_1 Chronicles 28:21_reference_end_ _reference_start_1 Chronicles 29:02_reference_end_ _reference_start_1 Chronicles 29:03_reference_end_ _reference_start_1 Chronicles 29:04_reference_end_ _reference_start_1 Chronicles 29:07_reference_end_ _reference_start_1 Chronicles 29:08_reference_end_ _reference_start_1 Chronicles 29:10_reference_end_ _reference_start_2 Chronicles 7:01_reference_end_ _reference_start_2 Chronicles 7:02_reference_end_ _reference_start_2 Chronicles 7:03_reference_end_ _reference_start_2 Chronicles 7:07_reference_end_ _reference_start_2 Chronicles 7:05_reference_end_ _reference_start_2 Chronicles 7:11_reference_end_ _reference_start_2 Chronicles 7:12_reference_end_ _reference_start_2 Chronicles 7:16_reference_end_ _reference_start_2 Chronicles 7:20_reference_end_ _reference_start_2 Chronicles 7:21_reference_end_ _reference_start_Psalms 23:06_reference_end_ _reference_start_Psalms 52:10_reference_end_ _reference_start_Daniel 1:02_reference_end_ _reference_start_Daniel 5:03_reference_end_ _reference_start_Daniel 5:23_reference_end_ _reference_start_Daniel 1:02_reference_end_ _reference_start_Daniel 1:02_reference_end_ }}c%//{house of the LORDhouse of the lordHebrew: בַּיִת ־ לַ יהוָה \f maison de l'Eternel \cme descendents \cmf parants, descendents \cme house of God, inner courtyards and building \cmf maison de Dieu, cours inérieurs et bâtiment \cme inner room of temple, holy of holies \cmf la salle interieure du temple, le lieu très saint \cme place where God is \cmf lieu où Dieu se trouve \cme tabernacle, tent \cmf tabernacle, tente \cme temple of other gods \cmf temple d'autres dieux \cme the temple building inside the court \cmf le bâtiment du temple dans la cour \cme whole temple area in Jerusalem \cmf tout le lieu sacré à Jérusalem _reference_start_Genesis 28:17_reference_end_ _reference_start_Genesis 28:22_reference_end_ _reference_start_Exodus 23:19_reference_end_ _reference_start_1 Samuel 1:07_reference_end_ _reference_start_1 Samuel 1:24_reference_end_ _refe\ C~qdWJ=0# zm`SF9,vi\OB5( d c b a  `  _  ^  ]  \  [  Z  Y  X  W  V  U  T  S  R  Q  P  O  N  M  L  K  J  I  H  G  F  E  D  C B  A  @  ? > =  < ;  :  9  8 7  6  5  4  3 @ 2 ? 1 0 0 , / + . * - & , ! +  *  )  (  '  &  %  $  #  " 3 C~qdWJ=0# zm`SF9,vi\OB5( ' " &" %  $ # " !      U  k Z   ; 3 & $   3                                 "   ~ } | {  z y x& w v u t, s r q p o n m4 l k j i h g f efce_end_ _reference_start_Genesis 19:15_reference_end_ _reference_start_Exodus 20:05_reference_end_ _reference_start_Exodus 28:38_reference_end_ _reference_start_Leviticus 5:01_reference_end_ _reference_start_Leviticus 5:17_reference_end_ _reference_start_Leviticus 10:17_reference_end_ _reference_start_Leviticus 18:25_reference_end_ _reference_start_Numbers 15:31_reference_end_ _reference_start_Numbers 14:18_reference_end_ _reference_start_Numbers 14:19_reference_end_ _reference_start_Numbers 14:18_reference_end_ _reference_start_Numbers 14:34_reference_end_ _reference_start_Deuteronomy 19:15_reference_end_ _reference_start_Deuteronomy 5:09_reference_end_ _reference_start_1 Samuel 20:08_reference_end_ _reference_start_1 Samuel 3:13_reference_end_ _reference_start_1 Samuel 20:01_reference_end_ _reference_start_1 Samuel 3:14_reference_end_ _reference_start_1 Samuel 25:24_reference_end_ _reference_start_1 Samuel 28:10_reference_end_ _reference_start_2 Samuel 14:32_reference_end_ _reference_start_2 Samuel 19:20_reference_end_ _reference_start_2 Samuel 22:24_reference_end_ _reference_start_2 Samuel 24:10_reference_end_ _reference_start_2 Samuel 3:08_reference_end_ _reference_start_2 Samuel 14:09_reference_end_ _reference_start_1 Kings 17:18_reference_end_ _reference_start_2 Kings 7:09_reference_end_ _reference_start_1 Chronicles 21:08_reference_end_ _reference_start_Psalms 51:04_reference_end_ _reference_start_Psalms 32:05_reference_end_ _reference_start_Psalms 36:03_reference_end_ _reference_start_Psalms 38:05_reference_end_ _reference_start_Psalms 51:07_reference_end_ _reference_start_Psalms 59:05_reference_end_ _reference_start_Psalms 32:02_reference_end_ _reference_start_Psalms 90:08_reference_end_ _reference_start_Psalms 107:17_reference_end_ _reference_start_Psalms 25:11_reference_end_ _reference_start_Psalms 85:03_reference_end_ _reference_start_Proverbs 16:06_reference_end_ _reference_start_Daniel 9:13_reference_end_ _reference_start_Daniel 9:16_reference_end_ _reference_start_Daniel 9:24_reference_end_ Y (minjusticeinjusticeHebrew: עַוְלָה \f injustice \cme injustice \cmf injustice \cme unjuh'{iniquityiniquityHebrew: עֲוָיָא \f péchés \cme ethically wrong \cmf mal moralement _reference_start_Daniel 4:24_reference_end_&++Ainiquity, guiltiniquity, guiltHebrew: עָוֹן \f iniquité, faute \cme cleansing from sin \cmf purification du péché \cme guilty of moral wrongdoing \cmf être coupable du péché \cme hold someone guilty, condemn \cmf condamner \cme moral wrongdoing \cmf mal moral \cme sin and its forgiveness \cmf péché et son pardon \cme sin and its punishment \cmf péché et sa punition _reference_start_Genesis 15:16_reference_end_ _reference_start_Genesis 44:16_reference_end_ _reference_start_Genesis 4:13_referenest speech \cmf paroles injustes \cme unrighteousness, injustice \cmf inustice, impiété \cme unrighteousness, wrong \cmf injustice, mal _reference_start_Leviticus 19:15_reference_end_ _reference_start_Deuteronomy 25:16_reference_end_ _reference_start_Deuteronomy 32:04_reference_end_ _reference_start_Deuteronomy 34:10_reference_end_ _reference_start_2 Samuel 3:34_reference_end_ _reference_start_2 Samuel 7:10_reference_end_ _reference_start_2 Chronicles 19:07_reference_end_ _reference_start_Psalms 64:07_reference_end_ _reference_start_Psalms 92:16_reference_end_ _reference_start_Psalms 107:42_reference_end_ _reference_start_Psalms 7:04_reference_end_ _reference_start_Psalms 53:02_reference_end_ _reference_start_Psalms 43:01_reference_end_ _reference_start_Psalms 119:03_reference_end_ _reference_start_Psalms 125:03_reference_end_ _reference_start_Proverbs 22:08_reference_end_ _reference_start_Proverbs 29:27_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5( j * i $ h g f  e d  c  b  a  `  _  ^  ]  \ ) [ $ Z  Y  X  W  V  U  T  S # R " Q  P  O  N  M % L  K  J  I  H  G  F  E D  C  B A  @  ?  >  =  < 6 ; : 9 8  7  6  5 4 3 2 1} 0w /+ .5 - ,k* +\ *@ ) (  og glrx~ &,28>DJPV\bhntz "(.4:@FLRX^djpv| N b*r#:',J16ZB"CjD2JzNB N b*r#:',J16ZB"CjD2JzNBS ]R^cbe&kio,voy2u8{>DJ PV\•bɖ%̖hҗ+՗nۘ1t7z=CI  OU["+a,$2g7*>m@0GsK6PyV<\aBgnHo uN|TZ`#f)l/r5x;~ıA˲ϲGԳ ٳM޴SY_"e(k.q4wofjflrx~ &,28>DJPV\bhntz "(.4:@FLRX^djpv|i#}(@12F> ?L@HRILXPY^[!cdd'#}(@12F> ?L@HRILXPY^[!cdd'ijp-tp|3v9|?EKQW] c&i,o2u8{>D J PV\#*b+%3h8+?nF1LtM7VzW=bcCuvIw xOyzU[a$g*m0s6y<BH NTZ`# f3)4l5/6r758x9;:~;AKUG *UJerusalemjerusalemHebrew: יְרוּשָׁלַם \f Jérusalem \cme Jerusalem \cmf Jerusalem _reference_start_1 Samuel 17:54_reference_end_ _reference_start_2 Samuel 5:014_reference_end_ _reference_start_2 Samuel 5:05_reference_end_ _reference_start_2 Samuelm$)integrityintegrityHebrew: תּ ֹם / תֻּמָּה \f intégrité \cme blameless or innocent conduct, integrity \cmf conduit innocent or sans blâme, intégrité _reference_start_Proverbs 2:07_reference_end_ _reference_start_Proverbs 10:09_reference_end_ _reference_start_Proverbs 10:29_reference_end_ _reference_start_Proverbs 11:03_reference_end_ _reference_start_Proverbs 13:06_reference_end_ _reference_start_Proverbs 19:01_reference_end_ _reference_start_Proverbs 20:07_reference_end_ _reference_start_Proverbs 28:06_reference_end_n 5:06_reference_end_ _reference_start_2 Samuel 5:13_reference_end_ _reference_start_2 Samuel 8:07_reference_end_ _reference_start_2 Samuel 9:13_reference_end_ _reference_start_2 Samuel 10:14_reference_end_ _reference_start_2 Samuel 11:01_reference_end_ _reference_start_2 Samuel 11:12_reference_end_ _reference_start_2 Samuel 12:31_reference_end_ _reference_start_2 Samuel 14:23_reference_end_ _reference_start_2 Samuel 14:28_reference_end_ _reference_start_2 Samuel 15:08_reference_end_ _reference_start_2 Samuel 15:11_reference_end_ _reference_start_2 Samuel 15:14_reference_end_ _reference_start_2 Samuel 15:29_reference_end_ _reference_start_2 Samuel 15:37_reference_end_ _reference_start_2 Samuel 16:15_reference_end_ _reference_start_2 Samuel 17:20_reference_end_ _reference_start_2 Samuel 19:20_reference_end_ _reference_start_2 Samuel 19:26_reference_end_ _reference_start_2 Samuel 19:34_reference_end_ _reference_start_2 Samuel 19:35_reference_end_ _reference_start_2 Samuel 20:02_reference_end_ _reference_starot_2 Samuel 20:03_reference_end_ _reference_start_2 Samuel 20:07_reference_end_ _reference_start_2 Samuel 20:22_reference_end_ _reference_start_2 Samuel 24:08_reference_end_ _reference_start_2 Samuel 24:16_reference_end_ _reference_start_1 Kings 2:11_reference_end_ _reference_start_1 Kings 2:36_reference_end_ _reference_start_1 Kings 2:41_reference_end_ _reference_start_1 Kings 3:01_reference_end_ _reference_start_1 Kings 3:15_reference_end_ _reference_start_1 Kings 8:01_reference_end_ _reference_start_1 Kings 9:15_reference_end_ _reference_start_1 Kings 9:19_reference_end_ _reference_start_1 Kings 10:02_reference_end_ _reference_start_1 Kings 10:27_reference_end_ _reference_start_1 Kings 11:07_reference_end_ _reference_start_1 Kings 11:13_reference_end_ _reference_start_1 Kings 11:29_reference_end_ _reference_start_1 Kings 11:32_reference_end_ _reference_start_1 Kings 11:32_reference_end_ _reference_start_1 Kings 11:36_reference_end_ _reference_start_1 Kings 11:42_reference_end_ _reference_start_1 Chronicles 9:03_reference_end_ _reference_start_1 Chronicles 9:34_reference_end_ _reference_start_1 Chronicles 9:38_reference_end_ _reference_start_1 Chronicles 21:04_reference_end_ _reference_start_1 Chronicles 21:15_reference_end_ _reference_start_1 Chronicles 21:16_reference_end_ _reference_start_1 Chronicles 23:24_reference_end_ _reference_start_1 Chronicles 28:01_reference_end_ _reference_start_1 Chronicles 29:27_reference_end_ _reference_start_Psalms 51:20_reference_end_ _reference_start_Ecclesiastes 1:12_reference_end_ _reference_start_Ecclesiastes 2:07_reference_end_ _reference_start_Ecclesiastes 2:09_reference_end_ _reference_start_Daniel 1:01_reference_end_ _reference_start_Daniel 5:02_reference_end_ _reference_start_Daniel 5:03_reference_end_ _reference_start_Daniel 6:11_reference_end_ _reference_start_Daniel 9:02_reference_end_ _reference_start_Daniel 9:07_reference_end_ _reference_start_Daniel 9:12_reference_end_ _reference_start_Daniel 9:16_reference_end_ _reference_start_Daniel 9:25_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5( -  ,  +  *  )  (  '  &  %  $  #  "  !                                           ~ }  |  { z y x w v u t3 s  r  q  p  o  n  m & l " k r_reference_end_ _reference_start_Esther 3:04_reference_end_ _reference_start_Esther 3:06_reference_end_ _reference_start_Esther 3:10_reference_end_ _reference_start_Esther 3:13_reference_end_ _reference_start_Esther 4:03_reference_end_ _reference_start_Esther 4:07_reference_end_ _reference_start_Esther 4:13_reference_end_ _reference_start_Esther 4:14_reference_end_ _reference_start_Esther 4:16_reference_end_ _reference_start_Esther 5:13_reference_end_ _reference_start_Esther 6:10_reference_end_ _reference_start_Esther 6:13_reference_end_ _reference_start_Esther 6:13_reference_end_ _reference_start_Esther 8:01_reference_end_ _reference_start_Esther 8:03_reference_end_ _reference_start_Esther 8:05_reference_end_ _reference_start_Esther 8:07_reference_end_ _reference_start_Esther 8:08_reference_end_ _reference_start_Esther 8:09_reference_end_ _reference_start_Esther 8:11_reference_end_ _reference_start_Esther 8:13_reference_end_ _reference_start_Esther 8:16_reference_end_ _reference_start_Esther 8:17_reference_end_ _reference_start_Esther 9:01_reference_end_ _reference_start_Esther 9:02_reference_end_ _reference_start_Esther 9:03_reference_end_ _reference_start_Esther 9:05_reference_end_ _reference_start_Esther 9:06_reference_end_ _reference_start_Esther 9:10_reference_end_ _reference_start_Esther 9:12_reference_end_ _reference_start_Esther 9:13_reference_end_ _reference_start_Esther 9:15_reference_end_ _reference_start_Esther 9:16_reference_end_ _reference_start_Esther 9:18_reference_end_ _reference_start_Esther 9:19_reference_end_ _reference_start_Esther 9:20_reference_end_ _reference_start_Esther 9:22_reference_end_ _reference_start_Esther 9:23_reference_end_ _reference_start_Esther 9:24_reference_end_ _reference_start_Esther 9:25_reference_end_ _reference_start_Esther 9:27_reference_end_ _reference_start_Esther 9:28_reference_end_ _reference_start_Esther 9:29_reference_end_ _reference_start_Esther 9:30_reference_end_ _reference_start_Esther 9:31_reference_end_ _reference_start_Esther 10:03_reference_end_ . ,ijudgementjudgementHebrew: מִשְׁפָּט \f jugement \cme act of deciding a case \cmf act de donner un jugement \cme attribute of right, justice \cmf attribut de droiture, de justice \cme court, seat of judgement \cmf la cour \cme custom, usual practice \cmf coutume, habitude \cme events showing God's judgement \cmf faites qui montre le jugement de Deiu \cme judge \cmf juge \cme just law or ordinance \cmf une loi ou ordonance juste \cme plans, blueprints \cmf plans, spécifications \cme process of judgement, litigauB+qJewjewHebrew: יְהוּדִי \f juif \cme people of Israel, a Jew \cmf le peuple d'Israël, uner pseronne juive _reference_start_1 Chronicles 4:18_reference_end_ _reference_start_Esther 2:05q C~qdWJ=0# zm`SF9,vh[NA4'  p o5 n m l k j" i  h g f  e d c b a ` _ ^ ] \ [ Z Y  X  W  V  U  T  S  R ( Q P & O ! N  M : L  K  J  I  H  G  F  E  D  C  B  A  @  ? > = < ; : 9 8 7 6 5 4 3 2( 1 0  /  . vtion \cmf procésus \cme pronounce a judgement in court \cmf prononcer un verdict devant la cour (Arm) \cme sentence, decision of judgement \cmf la décision du juge \cme the one who makes judgement \cmf celui qui fait jugement _reference_start_Genesis 18:25_reference_end_ _reference_start_Genesis 40:13_reference_end_ _reference_start_Exodus 21:09_reference_end_ _reference_start_Exodus 6:06_reference_end_ _reference_start_Exodus 7:04_reference_end_ _reference_start_Exodus 12:12_reference_end_ _reference_start_Exodus 15:25_reference_end_ _reference_start_Exodus 21:01_reference_end_ _reference_start_Exodus 21:31_reference_end_ _reference_start_Leviticus 5:10_reference_end_ _reference_start_Leviticus 18:04_reference_end_ _reference_start_Leviticus 18:05_reference_end_ _reference_start_Leviticus 18:26_reference_end_ _reference_start_Leviticus 25:18_reference_end_ _reference_start_Deuteronomy 16:18_reference_end_ _reference_start_1 Samuel 8:03_reference_end_ _reference_start_1 Samuel 2:13_reference_end_ _referwence_start_1 Samuel 27:11_reference_end_ _reference_start_1 Samuel 10:25_reference_end_ _reference_start_1 Samuel 30:25_reference_end_ _reference_start_2 Samuel 15:02_reference_end_ _reference_start_2 Samuel 15:06_reference_end_ _reference_start_2 Samuel 22:23_reference_end_ _reference_start_2 Samuel 8:15_reference_end_ _reference_start_1 Kings 3:28_reference_end_ _reference_start_1 Kings 7:07_reference_end_ _reference_start_1 Kings 2:03_reference_end_ _reference_start_1 Kings 6:12_reference_end_ _reference_start_1 Kings 8:58_reference_end_ _reference_start_1 Kings 9:04_reference_end_ _reference_start_1 Kings 11:33_reference_end_ _reference_start_1 Kings 6:38_reference_end_ _reference_start_1 Kings 10:09_reference_end_ _reference_start_1 Kings 20:40_reference_end_ _reference_start_1 Kings 5:08_reference_end_ _reference_start_1 Chronicles 23:31_reference_end_ _reference_start_1 Chronicles 22:13_reference_end_ _reference_start_1 Chronicles 28:07_reference_end_ _reference_start_1 Chronicles 16:12_reference_end_ _reference_start_1 Chronicles 16:14_reference_end_ _reference_start_1 Chronicles 18:14_reference_end_ _reference_start_2 Chronicles 7:17_reference_end_ _reference_start_Ezra 7:25_reference_end_ _reference_start_Ezra 7:26_reference_end_ _reference_start_Job 14:03_reference_end_ _reference_start_Psalms 1:05_reference_end_ _reference_start_Psalms 19:10_reference_end_ _reference_start_Psalms 143:02_reference_end_ _reference_start_Psalms 7:07_reference_end_ _reference_start_Psalms 17:02_reference_end_ _reference_start_Proverbs 29:04_reference_end_ _reference_start_Proverbs 19:29_reference_end_ _reference_start_Ecclesiastes 3:16_reference_end_ _reference_start_Ecclesiastes 12:14_reference_end_ _reference_start_Ecclesiastes 8:05_reference_end_ _reference_start_Ecclesiastes 8:06_reference_end_ _reference_start_Daniel 9:05_reference_end_ _reference_start_Daniel 4:34_reference_end_ _reference_start_Daniel 7:10_reference_end_ _reference_start_Daniel 7:22_reference_end_ _reference_start_Daniel 7:26_reference_end_yr la justice, gouverner \cme final judgement \cmf dernier jugement \cme plead case of \cmf plaider \cme to sit (a judge in court) \cmf s'asseoir (un juge dans la cour) \cme to sit and judge \cmf s'asoire et juger \cme vindicate, justify \cmf justifier, rendre justice _reference_start_Genesis 16:05_reference_end_ _reference_start_Genesis 31:53_reference_end_ _reference_start_Genesis 18:25_reference_end_ _reference_start_Genesis 19:09_reference_end_ _reference_start_Exodus 5:21_reference_end_ _reference_start_Exodus 18:13_reference_end_ _reference_start_Exodus 18:16_reference_end_ _reference_start_Exodus 2:14_reference_end_ _reference_start_Exodus 18:22_reference_end_ _reference_start_Exodus 18:26_reference_end_ _reference_start_Jude 11:27_reference_end_ _reference_start_Jude 2:16_reference_end_ _reference_start_Jude 2:18_reference_end_ _reference_start_1 Samuel 3:13_reference_end_ _reference_start_1 Samuel 1:01_reference_end_ _reference_start_1 Samuel 8:02_reference_end_ _reference_start_1 Samuel 24:13_refzerence_end_ _reference_start_1 Samuel 24:16_reference_end_ _reference_start_1 Samuel 4:18_reference_end_ _reference_start_1 Samuel 7:06_reference_end_ _reference_start_1 Samuel 7:15_reference_end_ _reference_start_1 Samuel 7:16_reference_end_ _reference_start_1 Samuel 7:17_reference_end_ _reference_start_1 Samuel 8:05_reference_end_ _reference_start_1 Samuel 8:06_reference_end_ _reference_start_1 Samuel 8:20_reference_end_ _reference_start_1 Samuel 12:07_reference_end_ _reference_start_1 Samuel 24:16_reference_end_ _reference_start_2 Samuel 15:04_reference_end_ _reference_start_2 Samuel 7:11_reference_end_ _reference_start_2 Samuel 18:19_reference_end_ _reference_start_2 Samuel 18:31_reference_end_ _reference_start_1 Kings 3:28_reference_end_ _reference_start_1 Kings 7:07_reference_end_ _reference_start_1 Kings 8:32_reference_end_ _reference_start_1 Kings 3:09_reference_end_ _reference_start_1 Chronicles 23:04_reference_end_ _reference_start_1 Chronicles 26:29_reference_end_ _reference_start_1 Chronicles 17:06_reference_end_ _reference_start_1 Chronicles 17:10_reference_end_ _reference_start_1 Chronicles 16:33_reference_end_ _reference_start_Ezra 7:03_reference_end_ _reference_start_Job 4:12_reference_end_ _reference_start_Psalms 51:06_reference_end_ _reference_start_Psalms 82:10_reference_end_ _reference_start_Psalms 2:10_reference_end_ _reference_start_Psalms 58:02_reference_end_ _reference_start_Psalms 50:06_reference_end_ _reference_start_Psalms 96:13_reference_end_ _reference_start_Psalms 37:32_reference_end_ _reference_start_Psalms 10:18_reference_end_ _reference_start_Psalms 26:01_reference_end_ _reference_start_Proverbs 31:09_reference_end_ _reference_start_Proverbs 29:14_reference_end_ _reference_start_Proverbs 29:09_reference_end_ _reference_start_Ecclesiastes 3:17_reference_end_ _reference_start_Daniel 9:12_reference_end_ _reference_start_Daniel 7:26_reference_end_ _reference_start_Daniel 7:09_reference_end_ _reference_start_Daniel 7:10_reference_end_ _reference_start_Daniel 7:26_reference_end_ z-!!Ejudge (to)judge (to)Hebrew: שָׁפַט \f juger \cme condemn and punish \cmf condamner et punir \cme decide controversy, pass judgement \cmf trancher un argument, donner un jugement \cme establish or maintain justice, govern \cmf établir ou maintenix C~qdWJ=0# zm`SF9,vi\OB5( 3 2  1 0  / . ! - , + * ) ( ' & % $ # " !   % ` 2 :  R 3    !                                               ~  }  |  {  zA yA xA  w v u t s r q ~tart_Joshua 11:10_reference_end_ _reference_start_1 Samuel 10:18_reference_end_ _reference_start_1 Samuel 13:13_reference_end_ _reference_start_1 Samuel 13:14_reference_end_ _reference_start_1 Samuel 27:05_reference_end_ _reference_start_1 Samuel 28:17_reference_end_ _reference_start_1 Samuel 20:31_reference_end_ _reference_start_1 Samuel 24:21_reference_end_ _reference_start_1 Samuel 10:16_reference_end_ _reference_start_1 Samuel 10:25_reference_end_ _reference_start_1 Samuel 11:14_reference_end_ _reference_start_1 Samuel 14:47_reference_end_ _reference_start_1 Samuel 18:08_reference_end_ _reference_start_2 Samuel 3:10_reference_end_ _reference_start_2 Samuel 5:12_reference_end_ _reference_start_2 Samuel 7:12_reference_end_ _reference_start_2 Samuel 7:13_reference_end_ _reference_start_2 Samuel 7:16_reference_end_ _reference_start_2 Samuel 3:28_reference_end_ _reference_start_2 Samuel 16:08_reference_end_ _reference_start_2 Samuel 12:26_reference_end_ _reference_start_1 Kings 2:46_reference_end_ _reference_start_1 Kings 9:05_reference_end_ _reference_start_1 Kings 11:11_reference_end_ _reference_start_1 Kings 11:13_reference_end_ _reference_start_1 Kings 11:31_reference_end_ _reference_start_1 Kings 11:34_reference_end_ _reference_start_1 Kings 2:12_reference_end_ _reference_start_1 Kings 5:01_reference_end_ _reference_start_1 Kings 10:20_reference_end_ _reference_start_1 Kings 1:46_reference_end_ _reference_start_1 Kings 2:15_reference_end_ _reference_start_1 Kings 2:22_reference_end_ _reference_start_1 Kings 11:35_reference_end_ _reference_start_1 Chronicles 29:11_reference_end_ _reference_start_1 Chronicles 11:10_reference_end_ _reference_start_1 Chronicles 14:02_reference_end_ _reference_start_1 Chronicles 17:14_reference_end_ _reference_start_1 Chronicles 28:05_reference_end_ _reference_start_1 Chronicles 28:07_reference_end_ _reference_start_1 Chronicles 16:20_reference_end_ _reference_start_1 Chronicles 29:30_reference_end_ _reference_start_1 Chronicles 12:23_reference_end_ _reference_start_1 Chronicles 17:11_reference_end_ _reference_start_1 Chronicles 26:31_reference_end_ _reference_start_1 Chronicles 29:30_reference_end_ _reference_start_1 Chronicles 22:10_reference_end_ _reference_start_1 Chronicles 29:25_reference_end_ _reference_start_2 Chronicles 7:18_reference_end_ _reference_start_Esther 1:07_reference_end_ _reference_start_Esther 1:19_reference_end_ _reference_start_Esther 4:14_reference_end_ _reference_start_Esther 1:14_reference_end_ _reference_start_Esther 1:20_reference_end_ _reference_start_Esther 2:03_reference_end_ _reference_start_Esther 3:06_reference_end_ _reference_start_Esther 3:08_reference_end_ _reference_start_Esther 5:03_reference_end_ _reference_start_Esther 5:06_reference_end_ _reference_start_Esther 7:02_reference_end_ _reference_start_Esther 9:30_reference_end_ _reference_start_Esther 2:16_reference_end_ _reference_start_Esther 1:02_reference_end_ _reference_start_Esther 1:04_reference_end_ _reference_start_Esther 1:09_reference_end_ _reference_start_Esther 1:11_reference_end_ _reference_start_Esther 2:16_reference_end_ _reference_start_Esther 2:17_reference_end_ _reference_start_Esther 5:01_reference_end_ _reference_start_Esther 6:08_reference_end_ _reference_start_Esther 8:15_reference_end_ _reference_start_Psalms 135:11_reference_end_ _reference_start_Ecclesiastes 4:14_reference_end_ _reference_start_Daniel 2:42_reference_end_ _reference_start_Daniel 2:44_reference_end_ _reference_start_Daniel 4:23_reference_end_ _reference_start_Daniel 4:28_reference_end_ _reference_start_Daniel 4:33_reference_end_ _reference_start_Daniel 5:07_reference_end_ _reference_start_Daniel 5:16_reference_end_ _reference_start_Daniel 5:18_reference_end_ _reference_start_Daniel 5:29_reference_end_ _reference_start_Daniel 6:01_reference_end_ _reference_start_Daniel 6:04_reference_end_ _reference_start_Daniel 6:27_reference_end_ _reference_start_Daniel 7:14_reference_end_ _reference_start_Daniel 7:18_reference_end_ _reference_start_Daniel 7:22_reference_end_ _reference_start_Daniel 7:27_reference_end_ _reference_start_Daniel 7:27_reference_end_ _reference_start_Daniel 8:23_reference_end_ _reference_start_Daniel 11:20_reference_end_ _reference_start_Daniel 11:21_reference_end_ _reference_start_Daniel 1:20_reference_end_ _reference_start_Daniel 2:37_reference_end_ _reference_start_Daniel 2:39_reference_end_ _reference_start_Daniel 2:40_reference_end_ _reference_start_Daniel 2:44_reference_end_ _reference_start_Daniel 4:14_reference_end_ _reference_start_Daniel 4:15_reference_end_ _reference_start_Daniel 4:22_reference_end_ _reference_start_Daniel 4:29_reference_end_ _reference_start_Daniel 4:41_reference_end_ _reference_start_Daniel 5:11_reference_end_ _reference_start_Daniel 5:21_reference_end_ _reference_start_Daniel 5:28_reference_end_ _reference_start_Daniel 6:02_reference_end_ _reference_start_Daniel 6:04_reference_end_ _reference_start_Daniel 6:08_reference_end_ _reference_start_Daniel 7:23_reference_end_ _reference_start_Daniel 7:24_reference_end_ _reference_start_Daniel 7:27_reference_end_ _reference_start_Daniel 8:22_reference_end_ _reference_start_Daniel 9:01_reference_end_ _reference_start_Daniel 10:13_reference_end_ _reference_start_Daniel 11:02_reference_end_ _reference_start_Daniel 11:04_reference_end_ _reference_start_Daniel 11:09_reference_end_ _reference_start_Daniel 11:17_reference_end_ _reference_start_Daniel 1:01_reference_end_ _reference_start_Daniel 2:01_reference_end_ _reference_start_Daniel 3:33_reference_end_ _reference_start_Daniel 4:31_reference_end_ _reference_start_Daniel 4:33_reference_end_ _reference_start_Daniel 5:26_reference_end_ _reference_start_Daniel 6:29_reference_end_ _reference_start_Daniel 7:18_reference_end_ _reference_start_Daniel 1:1_reference_end_ _reference_start_Daniel 8:01_reference_end_ _reference_start_Daniel 1:03_reference_end_ _reference_start_Daniel 4:26_reference_end_ _reference_start_Daniel 4:27_reference_end_ _reference_start_Daniel 5:20_reference_end_ _reference_start_Daniel 6:27_reference_end_ _reference_start_Daniel 11:21_reference_end_ <<$.%kingdomkingdomHebrew: .מַמְלָכָה \f royaume \cme authority, belonging to the king \cmf autorité, apartenant au roi \cme authority, government \cmf autorité, gouvernement \cme geo-political entities \cmf états politiques \cme geo-political entity \cmf états politiques \cme government, authority \cmf autorité, gouvernement \cme reign, period a king is in power \cmf reigne, période pendent qu'un roi tiens pouvoir \cme relation between God and those he rules \cmf relation entre Dieu et ceux sur lequels il règne \cme royal, belonging to a king \cmf royal, qui apartient au roi \cme royal, belonging to king \cmf royal, qui apartien au roi _reference_start_Genesis 10:10_reference_end_ _reference_start_Genesis 20:09_reference_end_ _reference_start_Exodus 19:06_reference_end_ _reference_start_Numbers 32:33_reference_end_ _reference_start_Deuteronomy 28:25_reference_end_ _reference_start_Joshua 10:02_reference_end_ _reference_s} C~qdWJ=0# zm`SF9,vi\OB5( v u t s r q p o n m  l k j i h g f e d c b a `  _  ^  ]  \  [  Z  Y  X  W  V  U  T S  R # Q  P  O . N  M  L  K " J  I H G  F . E  D  C  B  A  @  ?  >  =  < / ;  :  9  8  7  6  5  4  C}pcVI</"yl_RE8+uh[NA4'  9 8 7  6 5 4 3 2 1 0 / . - ,! + *! ) ( '  & %  $  # "  !          )     , ( ' %                   ~! } | {, z* y x w_Exodus 1:15_reference_end_ _reference_start_Exodus 1:17_reference_end_ _reference_start_Exodus 1:18_reference_end_ _reference_start_Exodus 2:23_reference_end_ _reference_start_Exodus 3:18_reference_end_ _reference_start_Exodus 3:19_reference_end_ _reference_start_Exodus 5:04_reference_end_ _reference_start_Exodus 6:11_reference_end_ _reference_start_Exodus 6:13_reference_end_ _reference_start_Exodus 6:27_reference_end_ _reference_start_Exodus 6:29_reference_end_ _reference_start_Exodus 14:05_reference_end_ _reference_start_Exodus 14:08_reference_end_ _reference_start_Numbers 20:14_reference_end_ _reference_start_Numbers 20:17_reference_end_ _reference_start_Numbers 21:01_reference_end_ _reference_start_Deuteronomy 28:36_reference_end_ _reference_start_1 Samuel 12:12_reference_end_ _reference_start_1 Samuel 1:1_reference_end_ _reference_start_2 Samuel 1:1_reference_end_ _reference_start_1 Kings 1:1_reference_end_ _reference_start_1 Chronicles 1:1_reference_end_ _reference_start_2 Chronicles 7:04_reference_end_ _reference_start_2 Chronicles 7:05_reference_end_ _reference_start_2 Chronicles 7:06_reference_end_ _reference_start_2 Chronicles 7:11_reference_end_ _reference_start_Esther 1:1_reference_end_ _reference_start_Psalms 27:07_reference_end_ _reference_start_Psalms 27:08_reference_end_ _reference_start_Psalms 27:09_reference_end_ _reference_start_Psalms 27:10_reference_end_ _reference_start_Psalms 5:03_reference_end_ _reference_start_Psalms 2:02_reference_end_ _reference_start_Psalms 2:06_reference_end_ _reference_start_Psalms 2:10_reference_end_ _reference_start_Psalms 61:07_reference_end_ _reference_start_Psalms 63:12_reference_end_ _reference_start_Psalms 110:05_reference_end_ _reference_start_Psalms 144:10_reference_end_ _reference_start_Proverbs 22:11_reference_end_ _reference_start_Proverbs 22:19_reference_end_ _reference_start_Proverbs 29:14_reference_end_ _reference_start_Ecclesiastes 1:12_reference_end_ _reference_start_Ecclesiastes 2:08_reference_end_ _reference_start_Daniel 1:1_reference_end_ X/kingkingHebrew: .מֶלֶךְ \f roi \cme God as king \cmf Deiu comme roi \cme king, leader of a ciy-state or country \cmf chef d'une ville ou un pays _reference_start_Genesis 14:1_reference_end_ _reference_start_Genesis 14:01_reference_end_ _reference_start_Genesis 17:06_reference_end_ _reference_start_Genesis 17:16_reference_end_ _reference_start_Genesis 20:02_reference_end_ _reference_start_Genesis 26:01_reference_end_ _reference_start_Genesis 26:08_reference_end_ _reference_start_Genesis 35:11_reference_end_ _reference_start_Genesis 36:31_reference_end_ _reference_start_Genesis 39:20_reference_end_ _reference_start_Genesis 40:01_reference_end_ _reference_start_Genesis 40:05_reference_end_ _reference_start_Genesis 41:46_reference_end_ _reference_start_Genesis 49:20_reference_end_ _reference_start_Exodus 1:08_reference_end_ _reference_start C~qdWJ=0# zm`SF9,vi[NA4'  | { z y  x w v u t s r q p o n m ln k? j= i h g f e d c b a ` _ ^ ] \  [  Z  Y  X W$ V U T S R Q P O N M L K J I H G F E1 D). C( B( A' @$ ?# > = < ; :ference_start_Proverbs 19:02_reference_end_ _reference_start_Proverbs 19:25_reference_end_ _reference_start_Proverbs 19:27_reference_end_ _reference_start_Proverbs 21:11_reference_end_ _reference_start_Proverbs 22:17_reference_end_ _reference_start_Proverbs 22:20_reference_end_ _reference_start_Proverbs 23:12_reference_end_ _reference_start_Proverbs 24:04_reference_end_ _reference_start_Proverbs 12:23_reference_end_ _reference_start_Proverbs 2:1_reference_end_ _reference_start_Proverbs 14:07_reference_end_ _reference_start_Proverbs 20:15_reference_end_ _reference_start_Proverbs 1:07_reference_end_ _reference_start_Proverbs 1:22_reference_end_ _reference_start_Proverbs 1:29_reference_end_ _reference_start_Proverbs 2:05_reference_end_ _reference_start_Proverbs 2:10_reference_end_ _reference_start_Proverbs 9:10_reference_end_ _reference_start_Proverbs 30:03_reference_end_ _reference_start_Proverbs 0:06_reference_end_ _reference_start_Proverbs 3:20_reference_end_ _reference_start_Proverbs 21:12_reference_end_ DD005knowledgeknowledgeHebrew: דַּעַת \f connaisance \cme discernment, understanding \cmf discernement, compréhension \cme in contrast to foolishness \cmf par opposition à la stupidité \cme knowledge of God \cmf connaissance de Dieu \cme knowledge possessed by God \cmf la connaissance que Dieu possède _reference_start_Proverbs 1:04_reference_end_ _reference_start_Proverbs 5:02_reference_end_ _reference_start_Proverbs 8:09_reference_end_ _reference_start_Proverbs 8:10_reference_end_ _reference_start_Proverbs 8:12_reference_end_ _reference_start_Proverbs 12:01_reference_end_ _reference_start_Proverbs 14:06_reference_end_ _reference_start_Proverbs 17:27_reference_end_ _re C~qdWJ=0# zm`SF9,vi\OB5( ?N > = <" ; :  9 ( 8  7  6  5 4  3  2  1 0= /: . - , + *$ ) ( '" &( % $& # " !      1             1                     ~ } ll1##mlatter dayslatter daysHebrew: אַחֲרִית \f la suite des temps \cme in future \cmf dans le futur \cme posterity, descendents \cmf descendants \cme the finish, result \cmf la terminaison, le résultat \cme time leading to God's judgement \cmf avant le dernier jugement de Dieu _reference_start_Genesis 49:01_reference_end_ _reference_start_Numbers 24:14_reference_end_ _reference_start_Ecclesiastes 7:08_reference_end_ _reference_start_Daniel 10:14_reference_end_ _reference_start_Daniel 11:04_reference_end_ _reference_start_Daniel 12:08_reference_end_ _reference_start_Daniel 2:28_reference_end_ _reference_start_Daniel 8:19_reference_end_) \cmf l'alliance de Moïse (utilisé avec 'arche', 'tente', 'tabernacle) \cme non-specific commands of God \cmf commandemants non-specifiques de Dieu \cme tablets of the 10 commandments in the ark \cmf la tablette des 10 commandemeants dans l'arche \cme the ark of God \cmf l'arche de Dieu _reference_start_Genesis 26:05_reference_end_ _reference_start_Exodus 24:12_reference_end_ _reference_start_Exodus 12:49_reference_end_ _reference_start_Exodus 13:09_reference_end_ _reference_start_Exodus 16:04_reference_end_ _reference_start_Exodus 16:28_reference_end_ _reference_start_Exodus 18:16_reference_end_ _reference_start_Exodus 18:20_reference_end_ _reference_start_Exodus 25:16_reference_end_ _reference_start_Exodus 25:21_reference_end_ _reference_start_Exodus 38:21_reference_end_ _reference_start_Exodus 25:21_reference_end_ _reference_start_Exodus 40:20_reference_end_ _reference_start_Exodus 16:34_reference_end_ _reference_start_Exodus 27:21_reference_end_ _reference_start_Exodus 30:06_reference_end_ _reference_start_Exodus 30:36_reference_end_ _reference_start_Leviticus 24:03_reference_end_ _reference_start_Leviticus 16:13_reference_end_ _reference_start_Numbers 10:11_reference_end_ _reference_start_Deuteronomy 1:05_reference_end_ _reference_start_Deuteronomy 28:58_reference_end_ _reference_start_Deuteronomy 28:61_reference_end_ _reference_start_Joshua 1:07_reference_end_ _reference_start_2 Samuel 7:19_reference_end_ _reference_start_1 Kings 2:03_reference_end_ _reference_start_1 Kings 2:03_reference_end_ _reference_start_2 Kings 11:12_reference_end_ _reference_start_2 Kings 17:15_reference_end_ _reference_start_2 Kings 23:03_reference_end_ _reference_start_1 Chronicles 22:12_reference_end_ _reference_start_1 Chronicles 16:40_reference_end_ _reference_start_1 Chronicles 29:19_reference_end_ _reference_start_2 Chronicles 23:11_reference_end_ _reference_start_2 Chronicles 34:31_reference_end_ _reference_start_Psalms 1:02_reference_end_ _reference_start_Psalms 19:08_reference_end_ _reference_start_Psalms 78:05_reference_end_ _reference_start_Psalms 78:01_reference_end_ _reference_start_Psalms 81:06_reference_end_ _reference_start_Psalms 105:45_reference_end_ _reference_start_Psalms 19:08_reference_end_ _reference_start_Psalms 119:14_reference_end_ _reference_start_Proverbs 1:08_reference_end_ _reference_start_Proverbs 3:01_reference_end_ _reference_start_Proverbs 4:02_reference_end_ _reference_start_Proverbs 6:20_reference_end_ _reference_start_Proverbs 6:23_reference_end_ _reference_start_Proverbs 7:02_reference_end_ _reference_start_Proverbs 13:14_reference_end_ _reference_start_Proverbs 28:04_reference_end_ _reference_start_Proverbs 28:07_reference_end_ _reference_start_Proverbs 28:09_reference_end_ _reference_start_Proverbs 29:18_reference_end_ _reference_start_Proverbs 31:26_reference_end_ _reference_start_Isaiah 1:10_reference_end_ _reference_start_Isaiah 30:09_reference_end_ _reference_start_Daniel 9:10_reference_end_ _reference_start_Daniel 9:11_reference_end_ _reference_start_Daniel 9:13_reference_end_ <3''=leader, (ram)leader, (ram)Hebrew: אַיִל \f chef, (bélier) \cme chief, leader (figurative use of 'ram') \cmf chef (sens figuré de 'bélier') \cme ram \cmf bélier _reference_start_Genesis 32:15_reference_end_ _reference_start_Exodus 15:15_reference_end_ _reference_start_2 Kings 24:15_reference_end_ _reference_start_Ezra 17:13_reference_end_ _reference_start_Ezra 31:11_reference_end_ _reference_start_Ezra 31:14_reference_end_2%lawlawHebrew: תֹּורָה \f loi \cme Deuteronomic code of law \cmf système juridique déutéronomique \cme Exodus law of God \cmf loi de Dieu dans l'Exode \cme human instruction, human teaching \cmf instruction humaine, enseignement humain \cme instruction, teaching from God \cmf instruction, enseignement venant de Dieu \cme law of the passover \cmf loi de la Pâque des juifs \cme laws of priestly code beyond Deut. code \cmf lois spéciales, lois des sacrificateurs \cme Mosaic covenant (used with 'ark', 'tent', 'tabernacle', 'veil' C~qdWJ=0# zm`SF9,vi\OB5(       ~ } |! { z y x w v u t& s1 r. q# p# o" n" m" l k7 j 6 i 3 h g$+ f$* e$) d$( c$ b$ a$ `$ _$ ^$ ]$ \$ [ Z Y X  W V  U T S R Q P O N M L K  J I H G F E Dw C Bi- AQ @N bb4leaderleaderHebrew: אַלּוּף \f chef \cme companion, confidant \cmf copain, ami \cme leader, protector \cmf protecteur _reference_start_Genesis 36:15_reference_end_ _reference_start_Genesis 36:16_reference_end_ _reference_start_Genesis 36:17_reference_end_ _reference_start_Genesis 36:18_reference_end_ _reference_start_Genesis 36:19_reference_end_ _reference_start_Genesis 36:21_reference_end_ _reference_start_Genesis 36:29_reference_end_ _reference_start_Genesis 36:30_reference_end_ _reference_start_Genesis 36:40_reference_end_ _reference_start_Genesis 36:41_reference_end_ _reference_start_Genesis 36:42_reference_end_ _reference_start_Genesis 36:43_reference_end_ _reference_start_Exodus 15:15_reference_end_ _reference_start_1 Chronicles 1:51_reference_end_ _reference_start_1 Chronicles 1:54_reference_end_ _reference_start_Psalms 55:14_reference_end_ _reference_start_Proverbs 2:17_reference_end__end_ _reference_start_Genesis 35:23_reference_end_ _reference_start_Genesis 46:11_reference_end_ _reference_start_Genesis 49:05_reference_end_ _reference_start_Exodus 38:21_reference_end_ _reference_start_Exodus 4:14_reference_end_ _reference_start_Exodus 1:02_reference_end_ _reference_start_Exodus 6:16_reference_end_ _reference_start_Exodus 2:01_reference_end_ _reference_start_Exodus 6:19_reference_end_ _reference_start_Exodus 6:25_reference_end_ _reference_start_Leviticus 25:32_reference_end_ _reference_start_Leviticus 25:33_reference_end_ _reference_start_Deuteronomy 18:01_reference_end_ _reference_start_Deuteronomy 18:06_reference_end_ _reference_start_Deuteronomy 18:07_reference_end_ _reference_start_Deuteronomy 18:01_reference_end_ _reference_start_1 Samuel 6:15_reference_end_ _reference_start_2 Samuel 15:24_reference_end_ _reference_start_1 Kings 8:04_reference_end_ _reference_start_1 Kings 12:31_reference_end_ _reference_start_1 Chronicles 9:02_reference_end_ _reference_start_1 Chronicles 9:14_reference_end_ _reference_start_1 Chronicles 9:18_reference_end_ _reference_start_1 Chronicles 9:26_reference_end_ _reference_start_1 Chronicles 9:31_reference_end_ _reference_start_1 Chronicles 9:33_reference_end_ _reference_start_1 Chronicles 9:34_reference_end_ _reference_start_1 Chronicles 16:04_reference_end_ _reference_start_1 Chronicles 23:02_reference_end_ _reference_start_1 Chronicles 23:26_reference_end_ _reference_start_1 Chronicles 23:27_reference_end_ _reference_start_1 Chronicles 28:13_reference_end_ _reference_start_1 Chronicles 28:21_reference_end_ _reference_start_1 Chronicles 2:01_reference_end_ _reference_start_1 Chronicles 23:06_reference_end_ _reference_start_1 Chronicles 21:06_reference_end_ _reference_start_1 Chronicles 23:03_reference_end_ _reference_start_1 Chronicles 23:06_reference_end_ _reference_start_1 Chronicles 23:14_reference_end_ _reference_start_1 Chronicles 23:24_reference_end_ _reference_start_2 Chronicles 7:06_reference_end_ _reference_start_Psalms 135:20_reference_end_ <<<\6!lifelifeHebrew: חַיִּים / חַי \f vie \cme be alive \cmf vivre, être vivant \cme eternal life \cmf vie éternelle \cme figurative sens \cmf sens figuré \cme form of an oath \cmf forme d'un serment \cme good things of life & spiritual blessing \cmf les bonnes choses de la vie et bénédictions spirituelles \cme life, period of time someone is alive \cmf duré de vie, périod d'être vivant _reference_start_Genesis 1:20_reference_end_ _reference_start_Genesis 1:21_reference_end_ _45IleviteleviteHebrew: לֵוִי \f lévite \cme Levites as religious group \cmf Lévites comme group réligieux \cme member of tribe of Levi \cmf membre de la tribu de Lévi \cme son of Jacob \cmf fils de Jacob \cme the tribe of Levi \cmf le tribu de Lévi _reference_start_Genesis 29:34_reference_end_ _reference_start_Genesis 34:25_reference_end_ _reference_start_Genesis 34:30_reference_end_ _reference_start_Genesis 35:23_reference C~qdWJ=0# yl_RE8+uh[NA4'  E D C B A @ ? >* =* < ;. :- 9- 8- 7+ 6+ 5+ 4. 3 2 1  0  / . -  , + * ) ( ' & % $ # " !                                    "  !              reference_start_Genesis 1:24_reference_end_ _reference_start_Genesis 1:28_reference_end_ _reference_start_Genesis 1:30_reference_end_ _reference_start_Genesis 2:07_reference_end_ _reference_start_Genesis 2:19_reference_end_ _reference_start_Genesis 3:14_reference_end_ _reference_start_Genesis 3:17_reference_end_ _reference_start_Genesis 6:17_reference_end_ _reference_start_Genesis 6:19_reference_end_ _reference_start_Genesis 7:11_reference_end_ _reference_start_Genesis 7:15_reference_end_ _reference_start_Genesis 7:22_reference_end_ _reference_start_Genesis 8:01_reference_end_ _reference_start_Genesis 8:17_reference_end_ _reference_start_Genesis 8:19_reference_end_ _reference_start_Genesis 8:21_reference_end_ _reference_start_Genesis 9:03_reference_end_ _reference_start_Genesis 9:10_reference_end_ _reference_start_Genesis 9:12_reference_end_ _reference_start_Genesis 9:15_reference_end_ _reference_start_Genesis 9:16_reference_end_ _reference_start_Genesis 16:14_reference_end_ _reference_start_Genesis 25:06_reference_end_ _reference_start_Genesis 27:46_reference_end_ _reference_start_Genesis 43:07_reference_end_ _reference_start_Genesis 43:27_reference_end_ _reference_start_Genesis 43:28_reference_end_ _reference_start_Genesis 45:03_reference_end_ _reference_start_Genesis 45:26_reference_end_ _reference_start_Genesis 45:28_reference_end_ _reference_start_Genesis 46:30_reference_end_ _reference_start_Genesis 26:19_reference_end_ _reference_start_Genesis 42:15_reference_end_ _reference_start_Genesis 42:16_reference_end_ _reference_start_Genesis 2:09_reference_end_ _reference_start_Genesis 3:22_reference_end_ _reference_start_Genesis 3:24_reference_end_ _reference_start_Genesis 18:10_reference_end_ _reference_start_Genesis 18:14_reference_end_ _reference_start_Genesis 23:01_reference_end_ _reference_start_Genesis 25:07_reference_end_ _reference_start_Genesis 25:17_reference_end_ _reference_start_Genesis 47:08_reference_end_ _reference_start_Genesis 47:28_reference_end_ _reference_start_Genesis 48:09_reference_end_ _reference_start_Exodus 1:14_reference_end_ _reference_start_Exodus 4:18_reference_end_ _reference_start_Exodus 6:16_reference_end_ _reference_start_Exodus 21:35_reference_end_ _reference_start_Leviticus 18:18_reference_end_ _reference_start_Numbers 14:21_reference_end_ _reference_start_Deuteronomy 28:66_reference_end_ _reference_start_1 Samuel 1:26_reference_end_ _reference_start_1 Samuel 14:39_reference_end_ _reference_start_1 Samuel 15:08_reference_end_ _reference_start_1 Samuel 17:26_reference_end_ _reference_start_1 Samuel 17:36_reference_end_ _reference_start_1 Samuel 20:14_reference_end_ _reference_start_1 Samuel 25:06_reference_end_ _reference_start_1 Samuel 17:55_reference_end_ _reference_start_1 Samuel 19:06_reference_end_ _reference_start_1 Samuel 20:03_reference_end_ _reference_start_1 Samuel 20:21_reference_end_ _reference_start_1 Samuel 25:26_reference_end_ _reference_start_1 Samuel 25:34_reference_end_ _reference_start_1 Samuel 26:10_reference_end_ _reference_start_1 Samuel 26:16_reference_end_ _reference_start_1 Samuel 28:10_reference_end_ _reference_start_1 Samuel 29:06_reference_end_ _reference_start_1 Samuel 1:11_reference_end_ _reference_start_1 Samuel 7:15_reference_end_ _reference_start_1 Samuel 18:18_reference_end_ _reference_start_1 Samuel 25:29_reference_end_ _reference_start_2 Samuel 1:23_reference_end_ _reference_start_2 Samuel 12:18_reference_end_ _reference_start_2 Samuel 12:21_reference_end_ _reference_start_2 Samuel 12:22_reference_end_ _reference_start_2 Samuel 18:14_reference_end_ _reference_start_2 Samuel 19:07_reference_end_ _reference_start_2 Samuel 19:35_reference_end_ _reference_start_2 Samuel 22:47_reference_end_ _reference_start_2 Samuel 2:27_reference_end_ _reference_start_2 Samuel 4:09_reference_end_ _reference_start_2 Samuel 11:11_reference_end_ _reference_start_2 Samuel 12:05_reference_end_ _reference_start_2 Samuel 14:11_reference_end_ _reference_start_2 Samuel 14:19_reference_end_ _reference_start_2 Samuel 15:21_reference_end_ _reference_start_2 Samuel 15:21_reference_end_ _reference_start_2 Samuel 18:18_reference_end_ _reference_start_1 Kings 3:22_reference_end_ _reference_start_1 Kings 3:23_reference_end_ _reference_start_1 Kings 3:25_reference_end_ _reference_start_1 Kings 3:26_reference_end_ _reference_start_1 Kings 3:27_reference_end_ _reference_start_1 Kings 8:40_reference_end_ _reference_start_1 Kings 11:34_reference_end_ _reference_start_1 Kings 1:29_reference_end_ _reference_start_1 Kings 2:24_reference_end_ _reference_start_1 Kings 5:01_reference_end_ _reference_start_Psalms 52:07_reference_end_ _reference_start_Psalms 63:04_reference_end_ _reference_start_Psalms 63:05_reference_end_ _reference_start_Psalms 124:03_reference_end_ _reference_start_Psalms 30:06_reference_end_ _reference_start_Psalms 17:14_reference_end_ _reference_start_Psalms 23:06_reference_end_ _reference_start_Psalms 34:13_reference_end_ _reference_start_Proverbs 1:12_reference_end_ _reference_start_Proverbs 3:02_reference_end_ _reference_start_Proverbs 3:22_reference_end_ _reference_start_Proverbs 14:30_reference_end_ _reference_start_Proverbs 18:21_reference_end_ _reference_start_Proverbs 31:12_reference_end_ _reference_start_Proverbs 2:19_reference_end_ _reference_start_Proverbs 3:19_reference_end_ _reference_start_Proverbs 5:06_reference_end_ _reference_start_Proverbs 11:30_reference_end_ _reference_start_Proverbs 13:12_reference_end_ _reference_start_Proverbs 15:04_reference_end_ _reference_start_Proverbs 15:24_reference_end_ _reference_start_Proverbs 3:22_reference_end_ _reference_start_Proverbs 4:13_reference_end_ _reference_start_Proverbs 4:22_reference_end_ _reference_start_Proverbs 4:23_reference_end_ _reference_start_Proverbs 4:23_reference_end_ _reference_start_Proverbs 6:23_reference_end_ _reference_start_Proverbs 8:35_reference_end_ _reference_start_Proverbs 10:11_reference_end_ _reference_start_Proverbs 10:16_reference_end_ _reference_start_Proverbs 10:17_reference_end_ _reference_start_Proverbs 11:19_reference_end_ _reference_start_Proverbs 12:28_reference_end_ _reference_start_Proverbs 13:14_reference_end_ _reference_start_Proverbs 14:27_reference_end_ _reference_start_Proverbs 14:27_reference_end_ _reference_start_Proverbs 15:31_reference_end_ _reference_start_Proverbs 16:15_reference_end_ _reference_start_Proverbs 16:22_reference_end_ _reference_start_Proverbs 19:23_reference_end_ _reference_start_Proverbs 21:21_reference_end_ _reference_start_Proverbs 22:04_reference_end_ _reference_start_Proverbs 27:27_reference_end_ _reference_start_Proverbs 3:02_reference_end_ _reference_start_Proverbs 4:10_reference_end_ _reference_start_Proverbs 9:11_reference_end_ _reference_start_Proverbs 14:30_reference_end_ _reference_start_Proverbs 31:12_reference_end_ _reference_start_Ecclesiastes 2:03_reference_end_ _reference_start_Ecclesiastes 3:12_reference_end_ _reference_start_Daniel 12:07_reference_end_ _reference_start_Daniel 12:02_reference_end_ _reference_start_Jonah 4:03_reference_end_ _reference_start_Jonah 4:08_reference_end_ _reference_start_Jonah 2:07_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5( "    | ? ? 4     ~  } " | ( {  z  y  x  w  v  u  t  s  r  q  p o  n  m / l # k  j  i  h  g  f  e  d  c  b  a  `  _  ^  ] " \  [  Z  Y  X 7 W  V  U $ T  S  R ' Q  PB O N M# L K J I0 H/ G/ F C~qdWJ=0# zm`SF9,vi\OB5( K J I H  G  F  E D C  B  A  @ ? >  = < ; : 9 8 7  6  5  4  3  2 1 0 / . - , + * ) ( ' & % $ # "  !         #                     verbs 4:24_reference_end_ _reference_start_Proverbs 5:02_reference_end_ _reference_start_Proverbs 5:03_reference_end_ _reference_start_Proverbs 7:21_reference_end_ _reference_start_Proverbs 8:06_reference_end_ _reference_start_Proverbs 8:07_reference_end_ _reference_start_Proverbs 10:08_reference_end_ _reference_start_Proverbs 10:10_reference_end_ _reference_start_Proverbs 10:13_reference_end_ _reference_start_Proverbs 10:18_reference_end_ _reference_start_Proverbs 10:19_reference_end_ _reference_start_Proverbs 10:21_reference_end_ _reference_start_Proverbs 10:32_reference_end_ _reference_start_Proverbs 12:13_reference_end_ _reference_start_Proverbs 12:19_reference_end_ _reference_start_Proverbs 12:22_reference_end_ _reference_start_Proverbs 13:03_reference_end_ _reference_start_Proverbs 14:03_reference_end_ _reference_start_Proverbs 14:07_reference_end_ _reference_start_Proverbs 14:23_reference_end_ _reference_start_Proverbs 15:08_reference_end_ _reference_start_Proverbs 16:10_reference_end_ _reference_start_Proverbs 16:13_reference_end_ _reference_start_Proverbs 16:21_reference_end_ _reference_start_Proverbs 16:23_reference_end_ _reference_start_Proverbs 16:27_reference_end_ _reference_start_Proverbs 16:30_reference_end_ _reference_start_Proverbs 17:04_reference_end_ _reference_start_Proverbs 17:07_reference_end_ _reference_start_Proverbs 17:28_reference_end_ _reference_start_Proverbs 18:06_reference_end_ _reference_start_Proverbs 18:07_reference_end_ _reference_start_Proverbs 18:28_reference_end_ _reference_start_Proverbs 19:01_reference_end_ _reference_start_Proverbs 20:15_reference_end_ _reference_start_Proverbs 20:19_reference_end_ _reference_start_Proverbs 22:11_reference_end_ _reference_start_Proverbs 16:1_reference_end_ _reference_start_Proverbs 24:02_reference_end_ _reference_start_Proverbs 24:26_reference_end_ _reference_start_Proverbs 24:28_reference_end_ _reference_start_Proverbs 26:23_reference_end_ _reference_start_Proverbs 26:24_reference_end_ _reference_start_Proverbs 27:02_reference_end_ Y_Y8iliverliverHebrew: כָּבֵד \f foie \cme emotions \cmf émotions \cme liver, entrail \cmf les entrailles _reference_start_Exodus 29:13_reference_end_ _reference_start_Proverbs 7:23_reference_end_ _reference_start_Lamentations 2:11_reference_end_7liplipHebrew: שָׂפָה \f levre \cme speech, what is said; figurative sense \cmf parole, ce qui est dit; sense figuré _reference_start_Pro C~qdWJ=0# zm`SF9,vi\OB5(                     ~ } | { z y x w v u t s r$ q p% o% nT m* l  k  j $ i  h g f e d c b a ` _ ^ ] \ [ Z Y X W V U T S R Q P O N M L 19!!3Living Godliving godHebrew: אֱלֹהִים חַי / חַיִּים \f Deiu vivant \cme the living God \cmf le Dieu vivant _reference_start_Deuteronomy 5:26_reference_end_ _reference_start_Joshua 3:10_reference_end_ _reference_start_1 Samuel 17:26_reference_end_ _reference_start_1 Samuel 17:36_reference_end_ _reference_start_2 Kings 19:04_reference_end_ _reference_start_2 Kings 19:16_reference_end_ _reference_start_Psalms 42:03_reference_end_ _reference_start_Psalms 84:02_reference_end_ _reference_start_Isaiah 37:04_reference_end_ _reference_start_Isaiah 37:17_reference_end_ _reference_start_Jeremiah 10:10_reference_end_ _reference_start_Jeremiah 23:36_reference_end_ _reference_start_Daniel 6:21_reference_end_ _reference_start_Daniel 6:27_reference_end_ _reference_start_Hosea 2:01_reference_end_reference_start_Genesis 28:13_reference_end_ _reference_start_Genesis 15:02_reference_end_ _reference_start_Genesis 15:08_reference_end_ _reference_start_Exodus 3:15_reference_end_ _reference_start_Exodus 3:16_reference_end_ _reference_start_Exodus 3:18_reference_end_ _reference_start_Exodus 4:05_reference_end_ _reference_start_Exodus 5:01_reference_end_ _reference_start_Exodus 5:03_reference_end_ _reference_start_Exodus 6:07_reference_end_ _reference_start_Exodus 7:16_reference_end_ _reference_start_Exodus 8:06_reference_end_ _reference_start_Exodus 8:22_reference_end_ _reference_start_Exodus 8:23_reference_end_ _reference_start_Exodus 8:24_reference_end_ _reference_start_Exodus 9:01_reference_end_ _reference_start_Exodus 9:13_reference_end_ _reference_start_Exodus 9:26_reference_end_ _reference_start_Exodus 9:30_reference_end_ _reference_start_Exodus 10:1_reference_end_ _reference_start_Exodus 15:26_reference_end_ _reference_start_Exodus 16:12_reference_end_ _reference_start_Exodus 20:1_reference_end_ _reference_start_Exodus 20:25_reference_end_ _reference_start_Exodus 23:19_reference_end_ _reference_start_Leviticus 18:02_reference_end_ _reference_start_Leviticus 18:04_reference_end_ _reference_start_Leviticus 18:30_reference_end_ _reference_start_Leviticus 25:17_reference_end_ _reference_start_Leviticus 25:38_reference_end_ _reference_start_Leviticus 25:55_reference_end_ _reference_start_Numbers 10:09_reference_end_ _reference_start_Numbers 10:10_reference_end_ _reference_start_Deuteronomy 18:1_reference_end_ _reference_start_Deuteronomy 28:1_reference_end_ _reference_start_Deuteronomy 3:24_reference_end_ _reference_start_Deuteronomy 9:26_reference_end_ _reference_start_Joshua 7:07_reference_end_ _reference_start_Jude 6:22_reference_end_ _reference_start_Jude 16:28_reference_end_ _reference_start_1 Samuel 2:30_reference_end_ _reference_start_1 Samuel 5:10_reference_end_ _reference_start_1 Samuel 7:08_reference_end_ _reference_start_1 Samuel 10:18_reference_end_ _reference_start_1 Samuel 12:09_reference_end_ _reference_start_1 Samuel 12:12_reference_end_ _reference_start_1 Samuel 12:14_reference_end_ _reference_start_1 Samuel 12:19_reference_end_ _reference_start_1 Samuel 13:13_reference_end_ _reference_start_1 Samuel 14:17_reference_end_ _reference_start_1 Samuel 14:41_reference_end_ _reference_start_1 Samuel 15:15_reference_end_ _reference_start_1 Samuel 15:21_reference_end_ _reference_start_1 Samuel 15:30_reference_end_ _reference_start_1 Samuel 20:12_reference_end_ _reference_start_1 Samuel 23:10_reference_end_ _reference_start_1 Samuel 23:11_reference_end_ _reference_start_1 Samuel 25:29_reference_end_ _reference_start_1 Samuel 25:32_reference_end_ _reference_start_1 Samuel 25:34_reference_end_ _reference_start_1 Samuel 30:06_reference_end_ _reference_start_2 Samuel 7:25_reference_end_ _reference_start_2 Samuel 12:07_reference_end_ _reference_start_2 Samuel 14:11_reference_end_ _reference_start_2 Samuel 18:28_reference_end_ _reference_start_2 Samuel 24:03_reference_end_ _reference_start_2 Samuel 24:23_reference_end_ _reference_start_2 Samuel 24:24_reference_end_ _reference_start_2 Samuel 7:18-20_reference_end_ _reference_start_2 Samuel 7:22_reference_end_ _reference_start_2 Samuel 7:28_reference_end_ _reference_start_2 Samuel 7:29_reference_end_ _reference_start_1 Kings 1:17_reference_end_ _reference_start_1 Kings 1:30_reference_end_ _reference_start_1 Kings 1:36_reference_end_ _reference_start_1 Kings 1:48_reference_end_ _reference_start_1 Kings 2:03_reference_end_ _reference_start_1 Kings 3:07_reference_end_ _reference_start_1 Kings 5:17_reference_end_ _reference_start_1 Kings 5:18_reference_end_ _reference_start_1 Kings 5:19_reference_end_ _reference_start_1 Kings 8:1_reference_end_ _reference_start_1 Kings 9:09_reference_end_ _reference_start_1 Kings 10:09_reference_end_ _reference_start_1 Kings 11:04_reference_end_ _reference_start_1 Kings 11:09_reference_end_ _reference_start_1 Kings 11:31_reference_end_ _reference_start_1 Kings 13:06_reference_end_ _reference_start_1 Kings 13:21_reference_end_ _reference_start_1 Kings 2:26_reference_end_ _reference_start_1 Kings 8:53_reference_end_ _reference_start_2 Kings 19:19_reference_end_ _reference_start_1 Chronicles 16:04_reference_end_ _reference_start_1 Chronicles 16:14_reference_end_ _reference_start_1 Chronicles 17:16_reference_end_ _reference_start_1 Chronicles 17:17_reference_end_ _reference_start_1 Chronicles 21:17_reference_end_ _reference_start_1 Chronicles 22:1_reference_end_ _reference_start_1 Chronicles 23:25_reference_end_ _reference_start_1 Chronicles 24:19_reference_end_ _reference_start_1 Chronicles 28:08_reference_end_ _reference_start_1 Chronicles 28:20_reference_end_ _reference_start_1 Chronicles 29:1_reference_end_ _reference_start_2 Chronicles 7:22_reference_end_ _reference_start_Psalms 30:03_reference_end_ _reference_start_Psalms 30:13_reference_end_ _reference_start_Psalms 72:18_reference_end_ _reference_start_Psalms 80:05_reference_end_ _reference_start_Psalms 80:20_reference_end_ _reference_start_Psalms 84:09_reference_end_ _reference_start_Psalms 84:12_reference_end_ _reference_start_Psalms 69:07_reference_end_ _reference_start_Psalms 71:05_reference_end_ _reference_start_Psalms 71:16_reference_end_ _reference_start_Psalms 73:28_reference_end_ _reference_start_Isaiah 3:15_reference_end_ _reference_start_Isaiah 22:05_reference_end_ _reference_start_Isaiah 52:04_reference_end_ _reference_start_Isaiah 61:01_reference_end_ _reference_start_Isaiah 61:11_reference_end_ _reference_start_Isaiah 65:13_reference_end_ _reference_start_Isaiah 65:15_reference_end_ _reference_start_Jeremiah 10:10_reference_end_ _reference_start_Jeremiah 1:06_reference_end_ _reference_start_Ezekiel 1:1_reference_end_ _reference_start_Daniel 9:04_reference_end_ _reference_start_Daniel 9:10_reference_end_ _reference_start_Daniel 9:13_reference_end_ _reference_start_Daniel 9:14_reference_end_ _reference_start_Daniel 9:20_reference_end_ _reference_start_Amos 1:1_reference_end_ _reference_start_Jonah 2:02_reference_end_ _reference_start_Jonah 2:07_reference_end_ __4<''-Lord (my) Godlord (my) godHebrew: אֲדֹנָי הָאֱלֹהִים \f Seigneur (mon) Dieu \cme Lord (my, your, our) God \cmf Seigneur (mon, ton, notre) Dieu _reference_start_Psalms 38:16_reference_end_ _reference_start_Psalms 86:12_reference_end_ _reference_start_Psalms 90:17_reference_end_ _reference_start_Daniel 9:03_reference_end_ _reference_start_Daniel 9:09_reference_end_ _reference_start_Daniel 9:15_reference_end_;%%Qlord, masterlord, masterHebrew: אָדֹון \f seigneur, maître \cme husband \cmf mari \cme king, prince, "sir", "my lord" \cmf roi, prince, "mon se!:LORD Godlord godHebrew: .יהוה אלהים \f L'Eternel Dieu \cme LORD (our, your, my) God \cmf l'Eternel (ton, notre, mon) Dieu \cme Lord GOD \cmf Seigneur Eternel _reference_start_Genesis 2:1_reference_end_ _reference_start_Genesis 24:1_reference_end_ _reference_start_Genesis 27:20_reference_end_ _ C~qdWJ=0# zm`SF9,vi\OB5( Q  P  O  N M  L K J  I  H  G  F  E  D 0 C $ B  A  @  ?  >  =  <  ;  :  9  8  7  6  5  4 " 3  2  1  0  /  .  -  ,  + ) *  ) (  '  & % $  #  "  !  A A         7 &        C~qdWJ=0# zm`SF9,vi\OB5( , , , , , , + * ! ! ! !       #       ~ }  |  { z  y  x w v  u t s rA qA p= o= n4 m l kI jG iG hE gT fT eP dP cH b a ` _  ^  ]  \  [  Z  Y  X  W  V  U  T  S 5 R igneur" \cme Lord, name for God \cmf Seigneur, le nom de Dieu see list for "God" \cme one in authority over another \cmf qqn en autorité envers un autre _reference_start_Genesis 18:12_reference_end_ _reference_start_Genesis 19:02_reference_end_ _reference_start_Genesis 19:18_reference_end_ _reference_start_Genesis 23:06_reference_end_ _reference_start_Genesis 23:11_reference_end_ _reference_start_Genesis 23:15_reference_end_ _reference_start_Genesis 24:18_reference_end_ _reference_start_Genesis 31:35_reference_end_ _reference_start_Genesis 32:05_reference_end_ _reference_start_Genesis 32:06_reference_end_ _reference_start_Genesis 32:19_reference_end_ _reference_start_Genesis 33:08_reference_end_ _reference_start_Genesis 33:13_reference_end_ _reference_start_Genesis 33:14_reference_end_ _reference_start_Genesis 33:15_reference_end_ _reference_start_Genesis 42:10_reference_end_ _reference_start_Genesis 43:20_reference_end_ _reference_start_Genesis 44:07_reference_end_ _reference_start_Genesis 44:08_reference_end_ _reference_start_Genesis 44:09_reference_end_ _reference_start_Genesis 44:16_reference_end_ _reference_start_Genesis 44:18_reference_end_ _reference_start_Genesis 44:19_reference_end_ _reference_start_Genesis 44:20_reference_end_ _reference_start_Genesis 44:22_reference_end_ _reference_start_Genesis 44:24_reference_end_ _reference_start_Genesis 44:33_reference_end_ _reference_start_Genesis 47:18_reference_end_ _reference_start_Genesis 47:25_reference_end_ _reference_start_Genesis 24:09_reference_end_ _reference_start_Genesis 24:10_reference_end_ _reference_start_Genesis 24:12_reference_end_ _reference_start_Genesis 24:14_reference_end_ _reference_start_Genesis 24:27_reference_end_ _reference_start_Genesis 24:35_reference_end_ _reference_start_Genesis 24:36_reference_end_ _reference_start_Genesis 24:37_reference_end_ _reference_start_Genesis 24:39_reference_end_ _reference_start_Genesis 24:44_reference_end_ _reference_start_Genesis 24:48_reference_end_ _reference_start_Genesis 24:49_reference_end_ _reference_start_Genesis 24:51_reference_end_ _reference_start_Genesis 24:54_reference_end_ _reference_start_Genesis 24:56_reference_end_ _reference_start_Genesis 24:65_reference_end_ _reference_start_Genesis 39:02_reference_end_ _reference_start_Genesis 39:03_reference_end_ _reference_start_Genesis 39:07_reference_end_ _reference_start_Genesis 39:08_reference_end_ _reference_start_Genesis 39:16_reference_end_ _reference_start_Genesis 39:19_reference_end_ _reference_start_Genesis 39:20_reference_end_ _reference_start_Genesis 40:01_reference_end_ _reference_start_Genesis 40:07_reference_end_ _reference_start_Genesis 42:30_reference_end_ _reference_start_Genesis 42:33_reference_end_ _reference_start_Genesis 44:05_reference_end_ _reference_start_Genesis 45:08_reference_end_ _reference_start_Genesis 45:08_reference_end_ _reference_start_Exodus 21:04_reference_end_ _reference_start_Exodus 21:05_reference_end_ _reference_start_Exodus 21:06_reference_end_ _reference_start_Exodus 21:08_reference_end_ _reference_start_Exodus 21:32_reference_end_ _reference_start_Jude 19:26_reference_end_ _reference_start_Jude 3:25_reference_end_ _reference_start_1 Samuel 1:15_reference_end_ _reference_start_1 Samuel 1:26_reference_end_ _reference_start_1 Samuel 16:16_reference_end_ _reference_start_1 Samuel 22:12_reference_end_ _reference_start_1 Samuel 24:09_reference_end_ _reference_start_1 Samuel 24:11_reference_end_ _reference_start_1 Samuel 25:24_reference_end_ _reference_start_1 Samuel 25:25_reference_end_ _reference_start_1 Samuel 25:26_reference_end_ _reference_start_1 Samuel 25:27_reference_end_ _reference_start_1 Samuel 25:28_reference_end_ _reference_start_1 Samuel 25:29_reference_end_ _reference_start_1 Samuel 25:30_reference_end_ _reference_start_1 Samuel 25:31_reference_end_ _reference_start_1 Samuel 25:41_reference_end_ _reference_start_1 Samuel 26:15_reference_end_ _reference_start_1 Samuel 26:17_reference_end_ _reference_start_1 Samuel 26:18_reference_end_ _reference_start_1 Samuel 26:19_reference_end_ _reference_start_1 Samuel 29:08_reference_end_ _reference_start_1 Samuel 20:38_reference_end_ _reference_start_1 Samuel 24:07_reference_end_ _reference_start_1 Samuel 25:10_reference_end_ _reference_start_1 Samuel 25:14_reference_end_ _reference_start_1 Samuel 25:17_reference_end_ _reference_start_1 Samuel 26:16_reference_end_ _reference_start_1 Samuel 29:04_reference_end_ _reference_start_1 Samuel 29:10_reference_end_ _reference_start_1 Samuel 30:13_reference_end_ _reference_start_1 Samuel 30:15_reference_end_ _reference_start_2 Samuel 1:10_reference_end_ _reference_start_2 Samuel 2:05_reference_end_ _reference_start_2 Samuel 2:07_reference_end_ _reference_start_2 Samuel 3:21_reference_end_ _reference_start_2 Samuel 4:08_reference_end_ _reference_start_2 Samuel 9:11_reference_end_ _reference_start_2 Samuel 11:11_reference_end_ _reference_start_2 Samuel 13:32_reference_end_ _reference_start_2 Samuel 13:33_reference_end_ _reference_start_2 Samuel 14:09_reference_end_ _reference_start_2 Samuel 14:12_reference_end_ _reference_start_2 Samuel 14:15_reference_end_ _reference_start_2 Samuel 14:17_reference_end_ _reference_start_2 Samuel 14:18_reference_end_ _reference_start_2 Samuel 14:19_reference_end_ _reference_start_2 Samuel 14:20_reference_end_ _reference_start_2 Samuel 14:22_reference_end_ _reference_start_2 Samuel 15:15_reference_end_ _reference_start_2 Samuel 15:21_reference_end_ _reference_start_2 Samuel 16:04_reference_end_ _reference_start_2 Samuel 16:09_reference_end_ _reference_start_2 Samuel 18:28_reference_end_ _reference_start_2 Samuel 18:31_reference_end_ _reference_start_2 Samuel 18:32_reference_end_ _reference_start_2 Samuel 19:20_reference_end_ _reference_start_2 Samuel 19:21_reference_end_ _reference_start_2 Samuel 19:27_reference_end_ _reference_start_2 Samuel 19:27_reference_end_ _reference_start_2 Samuel 19:29_reference_end_ _reference_start_2 Samuel 19:31_reference_end_ _reference_start_2 Samuel 19:36_reference_end_ _reference_start_2 Samuel 19:38_reference_end_ _reference_start_2 Samuel 24:03_reference_end_ _reference_start_2 Samuel 24:21_reference_end_ _reference_start_2 Samuel 24:22_reference_end_ _reference_start_2 Samuel 9:09_reference_end_ _reference_start_2 Samuel 9:10_reference_end_ _reference_start_2 Samuel 10:03_reference_end_ _reference_start_2 Samuel 11:09_reference_end_ _reference_start_2 Samuel 11:13_reference_end_ _reference_start_2 Samuel 12:08_reference_end_ _reference_start_2 Samuel 16:03_reference_end_ _reference_start_2 Samuel 20:06_reference_end_ _reference_start_Psalms 45:12_reference_end_ _reference_start_Psalms 1345:05_reference_end_ _reference_start_Psalms 136:03_reference_end_ _reference_start_Psalms 8:02_reference_end_ _reference_start_Psalms 8:10_reference_end_ _reference_start_Psalms 110:01_reference_end_ _reference_start_Psalms 136:03_reference_end_ _reference_start_Daniel 1:10_reference_end_ _reference_start_Daniel 10:16_reference_end_ _reference_start_Daniel 10:17_reference_end_ _reference_start_Daniel 10:19_reference_end_ _reference_start_Daniel 12:08_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5( W  V  U  T & S  R  Q  P  O  N ) M  L  K  J  I  H  G  F  E  D  C  B  A  @  ?A >A = < ; : 9 8- 7- 6, 5*! 4* 3( 2( 1' 0' /' .' -' ,' +' *A )8 (6 '3 &1 %0 $, #' "% !$ #      / / ,! , , , C~qdWJ=0# zm`SF9,vhZM@3%      Z V &           n    A -                 ~  } & | $ {  z  y  x  w  v  u  t  s  r  q  p  o  n  m  l  k  j  i  h  g  f ! e d c b  a  `  _  ^  ]  \  [  Z  Y  X  --;?'';LORD of Hostslord of hostsHebrew: יְהוִה צְבָאֹות \f Eternel des armées \cme Lord of Hosts \cmf Eternel des armées _reference_start_1 Samuel 1:03_reference_end_ _reference_start_1 Samuel 1:11_reference_end_ _reference_start_1 Samuel 4:04_reference_end_ _reference_start_1 Samuel 15:02_reference_end_ _reference_start_1 Samuel 17:45_reference_end_ _reference_start_2 Samuel 6:02_reference_end_ _reference_start_2 Samuel 6:18_refer@>))ALord of heavenlord of heavenHebrew: מָרֵא שְׁמַיִן \f Seigneur du ciel \cme Master/Lord of Heaven \cmf Seigneur du ciel (Arm) _reference_start_Daniel 5:23_reference_end_<=))9lord, officiallord, officialHebrew: רַב \f seigneur, chef \cme chief, main one \cmf chef des autres \cme servant, official (rab beytu) \cmf serviteur, intendant (rab beytu) _reference_start_Esther 1:08_reference_end_ _reference_start_Daniel 1:03_reference_end_ _reference_start_Jonah 1:06_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5( ]& \& [& Z& Y& X$ W$ V% U% T% S% R% Q% P% O% N# M" L" K! J3: I39 H G F E D C B6 A @ ? > = < ; : 9 8 7 6T 5T 4T 30 2. 1. 0 /  .  - ,  +  *  )  (  '  &  %  $  # - "  !          ence_end_ _reference_start_2 Samuel 6:18_reference_end_ _reference_start_2 Samuel 7:08_reference_end_ _reference_start_2 Samuel 7:26_reference_end_ _reference_start_2 Samuel 7:27_reference_end_ _reference_start_1 Kings 18:15_reference_end_ _reference_start_1 Kings 18:15_reference_end_ _reference_start_2 Kings 3:14_reference_end_ _reference_start_1 Chronicles 11:09_reference_end_ _reference_start_1 Chronicles 17:07_reference_end_ _reference_start_1 Chronicles 17:24_reference_end_ _reference_start_Psalms 24:10_reference_end_ _reference_start_Psalms 46:08_reference_end_ _reference_start_Psalms 46:12_reference_end_ _reference_start_Psalms 48:09_reference_end_ _reference_start_Psalms 84:01_reference_end_ _reference_start_Psalms 84:05_reference_end_ _reference_start_Psalms 84:12_reference_end_ _reference_start_Isaiah 1:09_reference_end_ _reference_start_Isaiah 1:24_reference_end_ _reference_start_Isaiah 2:12_reference_end_ _reference_start_Isaiah 3:01_reference_end_ _reference_start_Isaiah 3:15_reference_end_ _reference_start_Isaiah 5:07_reference_end_ _reference_start_Isaiah 5:09_reference_end_ _reference_start_Isaiah 5:16_reference_end_ _reference_start_Isaiah 5:24_reference_end_ _reference_start_Isaiah 6:03_reference_end_ _reference_start_Isaiah 6:05_reference_end_ _reference_start_Isaiah 54:05_reference_end_ _reference_start_Jeremiah 2:19_reference_end_ _reference_start_Jeremiah 6:06_reference_end_ _reference_start_Jeremiah 6:09_reference_end_ _reference_start_Jeremiah 7:03_reference_end_ _reference_start_Jeremiah 7:21_reference_end_ _reference_start_Jeremiah 16:09_reference_end_ _reference_start_Jeremiah 51:57_reference_end_ _reference_start_Jeremiah 51:58_reference_end_ _reference_start_Micah 4:04_reference_end_ _reference_start_Nahum 2:14_reference_end_ _reference_start_Nahum 3:05_reference_end_ _reference_start_Habakkuk 2:13_reference_end_ _reference_start_Haggai 1:02_reference_end_ _reference_start_Haggai 1:05_reference_end_ _reference_start_Haggai 1:07_reference_end_ _reference_start_Haggai 1:09_reference_end_ _reference_start_Haggai 1:14_reference_end_ _reference_start_Haggai 2:04_reference_end_ _reference_start_Haggai 2:06_reference_end_ _reference_start_Haggai 2:23_reference_end_ _reference_start_Zephaniah 2:09_reference_end_ _reference_start_Zephaniah 2:10_reference_end_ _reference_start_Zechariah 1:03_reference_end_ _reference_start_Zechariah 1:04_reference_end_ _reference_start_Zechariah 1:06_reference_end_ _reference_start_Zechariah 1:12_reference_end_ _reference_start_Zechariah 1:15_reference_end_ _reference_start_Zechariah 1:17_reference_end_ _reference_start_Zechariah 2:12_reference_end_ _reference_start_Zechariah 2:13_reference_end_ _reference_start_Zechariah 3:07_reference_end_ _reference_start_Malachi 1:04_reference_end_ _reference_start_Malachi 1:06_reference_end_ _reference_start_Malachi 1:08_reference_end_ _reference_start_Malachi 1:09-11_reference_end_ _reference_start_Malachi 1:13_reference_end_ _reference_start_Malachi 2:02_reference_end_ _reference_start_Malachi 3:01_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5(             /   Z                  n Z G G ; 9 6 3     5 ~  }  |  {  z  y  x  w v u t s r q p o n m l k j i h' g' f' e' d' c' b' a& `& _& ^&:08_reference_end_ _reference_start_Genesis 18:27_reference_end_ _reference_start_Genesis 18:30_reference_end_ _reference_start_Genesis 18:31_reference_end_ _reference_start_Genesis 18:32_reference_end_ _reference_start_Genesis 20:04_reference_end_ _reference_start_Genesis 18:03_reference_end_ _reference_start_Exodus 4:10_reference_end_ _reference_start_Exodus 4:13_reference_end_ _reference_start_Exodus 5:22_reference_end_ _reference_start_Exodus 15:17_reference_end_ _reference_start_Exodus 23:17_reference_end_ _reference_start_Exodus 23:17_reference_end_ _reference_start_Numbers 14:17_reference_end_ _reference_start_2 Samuel 7:18_reference_end_ _reference_start_2 Samuel 7:19_reference_end_ _reference_start_2 Samuel 7:20_reference_end_ _reference_start_2 Samuel 7:28_reference_end_ _reference_start_2 Samuel 7:29_reference_end_ _reference_start_1 Kings 2:26_reference_end_ _reference_start_1 Kings 3:10_reference_end_ _reference_start_1 Kings 8:53_reference_end_ _reference_start_1 Kings 22:06_reference_end_ _reference_start_Psalms 2:04_reference_end_ _reference_start_Psalms 51:17_reference_end_ _reference_start_Psalms 54:06_reference_end_ _reference_start_Psalms 57:10_reference_end_ _reference_start_Psalms 59:12_reference_end_ _reference_start_Psalms 71:05_reference_end_ _reference_start_Psalms 71:16_reference_end_ _reference_start_Psalms 90:01_reference_end_ _reference_start_Psalms 110:05_reference_end_ _reference_start_Daniel 1:02_reference_end_ _reference_start_Daniel 9:03_reference_end_ _reference_start_Daniel 9:04_reference_end_ _reference_start_Daniel 9:07_reference_end_ _reference_start_Daniel 9:08_reference_end_ _reference_start_Daniel 9:15_reference_end_ _reference_start_Daniel 9:16_reference_end_ _reference_start_Daniel 9:17_reference_end_ _reference_start_Daniel 9:19_reference_end_ _reference_start_Daniel 90:09_reference_end_ _reference_start_Daniel 4:16_reference_end_ _reference_start_Daniel 4:21_reference_end_ _reference_start_Daniel 2:47_reference_end_ _reference_start_Daniel 5:23_reference_end_ g`B55ilove, steadfast lovelove, steadfast loveHebrew: חֶסֶד \f bienveillance \cme evil, event provoking shame \cmf mal, evenement qui deshonore \cme faithfulness of God in keeping the covenant \cmf fidélité de Dieu selon l'allianZA##LORD (YHWH)lord (yhwh)Hebrew: יהוה \f L'Eternel (YHWH) \cme LORD (YHWH) \cmf l'Eternel _ @{lordlordHebrew: מָרֵא \f signeur \cme God \cmf Dieu see "God of heaven" \cme Lord, God \cmf Seigneur \cme polite address \cmf salutation poli \cme prince, king,"sir", "my lord" \cmf prince, roi, "mon seigneur" (Arm) \cme someone who has authority over another \cmf maître, qqn en autorité envers un autre (Arm) _reference_start_Genesis 15:02_reference_end_ _reference_start_Genesis 15reference_start_Genesis 2:01_reference_end_ _reference_start_Genesis 4:1_reference_end_ _reference_start_Genesis 5:29_reference_end_ _reference_start_Genesis 6:1_reference_end_ _reference_start_Genesis 9:26_reference_end_ _reference_start_Genesis 10:1_reference_end_ _reference_start_Genesis 14:22_reference_end_ _reference_start_Genesis 15:1_reference_end_ _reference_start_Genesis 17:01_reference_end_ _reference_start_Genesis 18:1_reference_end_ _reference_start_Genesis 20:18_reference_end_ _reference_start_Genesis 21:1_reference_end_ _reference_start_Genesis 24:1_reference_end_ _reference_start_Genesis 32:10_reference_end_ _reference_start_Genesis 38:1_reference_end_ _reference_start_Genesis 49:18_reference_end_ _reference_start_Exodus 3:1_reference_end_ _reference_start_Exodus 15:01_reference_end_ _reference_start_Exodus 22:1_reference_end_ _reference_start_Exodus 27:21_reference_end_ _reference_start_Exodus 28:1_reference_end_ _reference_start_Exodus 38:22_reference_end_ _reference_start_Exodus 39:1_reference_end_ _reference_start_Leviticus 1:1_reference_end_ _reference_start_Numbers 1:1_reference_end_ _reference_start_Deuteronomy 1:1_reference_end_ _reference_start_1 Samuel 1:1_reference_end_ _reference_start_1 Samuel 4:03_reference_end_ _reference_start_1 Samuel 4:04_reference_end_ _reference_start_1 Samuel 4:05_reference_end_ _reference_start_1 Samuel 4:06_reference_end_ _reference_start_1 Samuel 5:03_reference_end_ _reference_start_1 Samuel 5:04_reference_end_ _reference_start_1 Samuel 5:06_reference_end_ _reference_start_1 Samuel 5:09_reference_end_ _reference_start_1 Samuel 6:1_reference_end_ _reference_start_1 Samuel 8:06_reference_end_ _reference_start_1 Samuel 8:07_reference_end_ _reference_start_1 Samuel 8:10_reference_end_ _reference_start_1 Samuel 8:18_reference_end_ _reference_start_1 Samuel 8:21_reference_end_ _reference_start_1 Samuel 8:22_reference_end_ _reference_start_1 Samuel 9:15_reference_end_ _reference_start_1 Samuel 9:17_reference_end_ _reference_start_1 Samuel 10:1_reference_end_ _reference_start_1 Samuel 11:07_reference_end_ _reference_start_1 Samuel 11:13_reference_end_ _reference_start_1 Samuel 11:15_reference_end_ _reference_start_1 Samuel 12:1_reference_end_ _reference_start_1 Samuel 13:12_reference_end_ _reference_start_1 Samuel 13:13_reference_end_ _reference_start_1 Samuel 13:14_reference_end_ _reference_start_1 Samuel 14:1_reference_end_ _reference_start_1 Samuel 17:37_reference_end_ _reference_start_1 Samuel 17:45_reference_end_ _reference_start_1 Samuel 17:46_reference_end_ _reference_start_1 Samuel 17:47_reference_end_ _reference_start_1 Samuel 18:12_reference_end_ _reference_start_1 Samuel 18:14_reference_end_ _reference_start_1 Samuel 18:17_reference_end_ _reference_start_1 Samuel 18:28_reference_end_ _reference_start_1 Samuel 19:05_reference_end_ _reference_start_1 Samuel 19:06_reference_end_ _reference_start_1 Samuel 19:09_reference_end_ _reference_start_1 Samuel 20:1_reference_end_ _reference_start_1 Samuel 21:07_reference_end_ _reference_start_1 Samuel 21:08_reference_end_ _reference_start_1 Samuel 22:10_reference_end_ _reference_start_1 Samuel 22:17_reference_end_ _reference_start_1 Samuel 22:21_reference_end_ _reference_start_1 Samuel 23:1_reference_end_ _reference_start_1 Samuel 24:1_reference_end_ _reference_start_1 Samuel 28:1_reference_end_ _reference_start_1 Samuel 29:06_reference_end_ _reference_start_1 Samuel 30:06_reference_end_ _reference_start_1 Samuel 30:08_reference_end_ _reference_start_1 Samuel 30:23_reference_end_ _reference_start_1 Samuel 30:26_reference_end_ _reference_start_2 Samuel 1:12_reference_end_ _reference_start_2 Samuel 1:14_reference_end_ _reference_start_2 Samuel 1:16_reference_end_ _reference_start_2 Samuel 2:01_reference_end_ _reference_start_2 Samuel 2:05_reference_end_ _reference_start_2 Samuel 2:06_reference_end_ _reference_start_2 Samuel 3:09_reference_end_ _reference_start_2 Samuel 3:28_reference_end_ _reference_start_2 Samuel 3:39_reference_end_ _reference_start_2 Samuel 4:08_reference_end_ _reference_start_2 Samuel 4:09_reference_end_ _reference_start_2 Samuel 5:1_reference_end_ _reference_start_2 Samuel 8:06_reference_end_ _reference_start_2 Samuel 1:1_reference_end_ _reference_start_2 Samuel 10:12_reference_end_ _reference_start_2 Samuel 11:27_reference_end_ _reference_start_2 Samuel 12:1_reference_end_ _reference_start_2 Samuel 14:11_reference_end_ _reference_start_2 Samuel 14:17_reference_end_ _reference_start_2 Samuel 15:1_reference_end_ _reference_start_2 Samuel 17:14_reference_end_ _reference_start_2 Samuel 18:19_reference_end_ _reference_start_2 Samuel 18:28_reference_end_ _reference_start_2 Samuel 18:31_reference_end_ _reference_start_2 Samuel 19:08_reference_end_ _reference_start_2 Samuel 19:22_reference_end_ _reference_start_2 Samuel 20:19_reference_end_ _reference_start_2 Samuel 21:1_reference_end_ _reference_start_2 Samuel 23:02_reference_end_ _reference_start_2 Samuel 23:10_reference_end_ _reference_start_2 Samuel 23:12_reference_end_ _reference_start_2 Samuel 23:16_reference_end_ _reference_start_2 Samuel 23:17_reference_end_ _reference_start_2 Samuel 24:1_reference_end_ _reference_start_1 Kings 1:1_reference_end_ _reference_start_1 Kings 3:01_reference_end_ _reference_start_1 Kings 3:02_reference_end_ _reference_start_1 Kings 3:03_reference_end_ _reference_start_1 Kings 3:05_reference_end_ _reference_start_1 Kings 3:07_reference_end_ _reference_start_1 Kings 5:17_reference_end_ _reference_start_1 Kings 5:18_reference_end_ _reference_start_1 Kings 5:19_reference_end_ _reference_start_1 Kings 5:21_reference_end_ _reference_start_1 Kings 5:26_reference_end_ _reference_start_1 Kings 6:01_reference_end_ _reference_start_1 Kings 6:02_reference_end_ _reference_start_1 Kings 6:11_reference_end_ _reference_start_1 Kings 6:19_reference_end_ _reference_start_1 Kings 6:37_reference_end_ _reference_start_1 Kings 7:12_reference_end_ _reference_start_1 Kings 7:40_reference_end_ _reference_start_1 Kings 7:45_reference_end_ _reference_start_1 Kings 7:48_reference_end_ _reference_start_1 Kings 7:51_reference_end_ _reference_start_1 Kings 8:1_reference_end_ _reference_start_1 Kings 10:01_reference_end_ _reference_start_1 Kings 10:05_reference_end_ _reference_start_1 Kings 10:09_reference_end_ _reference_start_1 Kings 10:12_reference_end_ _reference_start_1 Kings 11:1_reference_end_ _reference_start_1 Chronicles 9:19_reference_end_ _reference_start_1 Chronicles 9:20_reference_end_ _reference_start_1 Chronicles 9:23_reference_end_ _reference_start_1 Chronicles 16:1_reference_end_ _reference_start_1 Chronicles 18:06_reference_end_ _reference_start_1 Chronicles 18:11_reference_end_ _reference_start_1 Chronicles 19:13_reference_end_ _reference_start_1 Chronicles 21:1_reference_end_ _reference_start_1 Chronicles 28:1_reference_end_ _reference_start_2 Chronicles 7:1_reference_end_ _reference_start_Psalms 1:02_reference_end_ _reference_start_Psalms 1:06_reference_end_ _reference_start_Psalms 2:02_reference_end_ _reference_start_Psalms 2:07_reference_end_ _reference_start_Psalms 2:11_reference_end_ _reference_start_Psalms 3:1_reference_end_ _reference_start_Psalms 8:02_reference_end_ _reference_start_Psalms 8:10_reference_end_ _reference_start_Psalms 17:01_reference_end_ _reference_start_Psalms 17:13_reference_end_ _reference_start_Psalms 17:14_reference_end_ _reference_start_Psalms 19:08_reference_end_ _reference_start_Psalms 19:09_reference_end_ _reference_start_Psalms 19:10_reference_end_ _reference_start_Psalms 19:15_reference_end_ _reference_start_Psalms 23:01_reference_end_ _reference_start_Psalms 23:06_reference_end_ _reference_start_Psalms 24:01_reference_end_ _reference_start_Psalms 24:03_reference_end_ _reference_start_Psalms 24:05_reference_end_ _reference_start_Psalms 24:08_reference_end_ _reference_start_Psalms 24:10_reference_end_ _reference_start_Psalms 28:01_reference_end_ _reference_start_Psalms 28:05_reference_end_ _reference_start_Psalms 28:06_reference_end_ _reference_start_Psalms 28:07_reference_end_ _reference_start_Psalms 28:08_reference_end_ _reference_start_Psalms 30:1_reference_end_ _reference_start_Psalms 32:02_reference_end_ _reference_start_Psalms 32:05_reference_end_ _reference_start_Psalms 32:10_reference_end_ _reference_start_Psalms 32:11_reference_end_ _reference_start_Psalms 34:1_reference_end_ _reference_start_Psalms 54:08_reference_end_ _reference_start_Psalms 56:11_reference_end_ _reference_start_Psalms 59:04_reference_end_ _reference_start_Psalms 59:06_reference_end_ _reference_start_Psalms 59:09_reference_end_ _reference_start_Psalms 71:01_reference_end_ _reference_start_Psalms 71:05_reference_end_ _reference_start_Psalms 71:16_reference_end_ _reference_start_Psalms 90:13_reference_end_ _reference_start_Psalms 110:01_reference_end_ _reference_start_Psalms 110:02_reference_end_ _reference_start_Psalms 110:04_reference_end_ _reference_start_Psalms 124:01_reference_end_ _reference_start_Psalms 124:02_reference_end_ _reference_start_Psalms 124:06_reference_end_ _reference_start_Psalms 124:08_reference_end_ _reference_start_Psalms 127:01_reference_end_ _reference_start_Psalms 127:03_reference_end_ _reference_start_Psalms 139:01_reference_end_ _reference_start_Psalms 139:04_reference_end_ _reference_start_Psalms 139:21_reference_end_ _reference_start_Psalms 142:02_reference_end_ _reference_start_Psalms 142:06_reference_end_ _reference_start_Psalms 144:01_reference_end_ _reference_start_Psalms 144:03_reference_end_ _reference_start_Psalms 1:1_reference_end_ _reference_start_Proverbs 2:05_reference_end_ _reference_start_Proverbs 2:06_reference_end_ _reference_start_Proverbs 3:05_reference_end_ _reference_start_Proverbs 3:07_reference_end_ _reference_start_Proverbs 3:09_reference_end_ _reference_start_Proverbs 3:11_reference_end_ _reference_start_Proverbs 3:12_reference_end_ _reference_start_Proverbs 5:21_reference_end_ _reference_start_Proverbs 9:10_reference_end_ _reference_start_Proverbs 10:03_reference_end_ _reference_start_Proverbs 14:26_reference_end_ _reference_start_Proverbs 14:27_reference_end_ _reference_start_Proverbs 15:16_reference_end_ _reference_start_Proverbs 15:29_reference_end_ _reference_start_Proverbs 16:06_reference_end_ _reference_start_Proverbs 18:22_reference_end_ _reference_start_Proverbs 19:17_reference_end_ _reference_start_Proverbs 21:31_reference_end_ _reference_start_Proverbs 22:04_reference_end_ _reference_start_Proverbs 23:17_reference_end_ _reference_start_Daniel 9:02_reference_end_ _reference_start_Daniel 9:04_reference_end_ _reference_start_Daniel 9:08_reference_end_ _reference_start_Daniel 9:10_reference_end_ _reference_start_Daniel 9:13_reference_end_ _reference_start_Daniel 9:14_reference_end_ _reference_start_Daniel 9:20_reference_end_ _reference_start_Jonah 1:1_reference_end_ _reference_start_Jonah 1:01_reference_end_ _reference_start_Jonah 3:03_reference_end_ _reference_start_Jonah 4:02_reference_end_ _reference_start_Jonah 4:03_reference_end_ _reference_start_Jonah 4:04_reference_end_ _reference_start_Jonah 4:06_reference_end_ _reference_start_Jonah 4:10_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5( c  b  a  `  _  ^  ]  \  [  Z  Y  X  W  V  U  T  S  R  Q  P / O . N - M % L  K  J I H  G  F E  D  C  B  A  @  ?  >  =  <  ;  :  9  8  7  6  5  4  3  2  1 0 / .' -& , + * ) ( '1 && % $ # " ! C~qdWJ=0# zm`SF9,vi\OB5( &  %  $  #  "  !         3  0  -  (    %                                                 ~  }  |  {  z  y  x  w  v  u  t s  r  q  p  o  n ' m  l  k  j  i  h  g  f  e  d  C~qdWJ=0# zm`SF9,vi\OB5( i h g f e d c b a ` _ ^ ]| \| [| Z| Yn Xn Wn VZ UG TG SG R; Q; P; O8 N6 M" L K J  I  H G F E D C B A @ ? > = < ; : 9 8 7 6 5 4 3 2 1 0 / . - , +  *  )  (  '  C~qdWJ=0# zm`SF9,vi\OB5( ,  +  * 3 )  (  '  &  %  $  #  "  !                     '  / 1  (                         ~  }  |  { z y x w v u t s r q  p o n m l k jce \cme kindness of person to person in doing favors \cmf bienveillance des hommes aux hommes \cme loyalty and faithfulness of a person \cmf loyauté d'une personne \cme mercy and kindness given to poor and needy \cmf pitié donner aux pauvres \cme mercy of God in forgiveness of sin \cmf pitié de Dieu en pardonant les péchés \cme mercy of God in keeping us alive \cmf pitié de Dieu en nous gardant en vie \cme mercy of God in saving from trouble \cmf miséricorde de Dieu en la délivrance des problèmes et ennemis \cme mercy, steadfast love of God \cmf bienveillance, miséricorde de Dieu \cme specific acts of kindness of God \cmf actes bienveillants spécifiques de Dieu _reference_start_Genesis 20:13_reference_end_ _reference_start_Genesis 24:12_reference_end_ _reference_start_Genesis 40:14_reference_end_ _reference_start_Genesis 21:23_reference_end_ _reference_start_Genesis 24:49_reference_end_ _reference_start_Genesis 47:29_reference_end_ _reference_start_Genesis 19:19_reference_end_ _reference_start_Genesis 39:21_reference_end_ _reference_start_Genesis 24:27_reference_end_ _reference_start_Genesis 24:14_reference_end_ _reference_start_Genesis 32:11_reference_end_ _reference_start_Exodus 15:13_reference_end_ _reference_start_Exodus 20:06_reference_end_ _reference_start_Leviticus 20:17_reference_end_ _reference_start_Numbers 14:18_reference_end_ _reference_start_Numbers 14:19_reference_end_ _reference_start_Deuteronomy 7:09_reference_end_ _reference_start_1 Samuel 15:06_reference_end_ _reference_start_1 Samuel 20:15_reference_end_ _reference_start_1 Samuel 20:08_reference_end_ _reference_start_1 Samuel 20:14_reference_end_ _reference_start_2 Samuel 2:05_reference_end_ _reference_start_2 Samuel 9:01_reference_end_ _reference_start_2 Samuel 9:03_reference_end_ _reference_start_2 Samuel 9:07_reference_end_ _reference_start_2 Samuel 10:02_reference_end_ _reference_start_2 Samuel 3:08_reference_end_ _reference_start_2 Samuel 16:17_reference_end_ _reference_start_2 Samuel 2:06_reference_end_ _reference_start_2 Samuel 7:15_reference_end_ _reference_start_2 Samuel 15:20_reference_end_ _reference_start_2 Samuel 22:51_reference_end_ _reference_start_1 Kings 3:06_reference_end_ _reference_start_1 Kings 8:23_reference_end_ _reference_start_1 Kings 2:07_reference_end_ _reference_start_1 Kings 20:31_reference_end_ _reference_start_1 Chronicles 17:13_reference_end_ _reference_start_1 Chronicles 19:02_reference_end_ _reference_start_1 Chronicles 16:34_reference_end_ _reference_start_1 Chronicles 16:41_reference_end_ _reference_start_2 Chronicles 7:03_reference_end_ _reference_start_2 Chronicles 7:06_reference_end_ _reference_start_Esther 2:09_reference_end_ _reference_start_Esther 2:17_reference_end_ _reference_start_Job 6:14_reference_end_ _reference_start_Job 10:12_reference_end_ _reference_start_Psalms 18:51_reference_end_ _reference_start_Psalms 52:03_reference_end_ _reference_start_Psalms 25:07_reference_end_ _reference_start_Psalms 51:03_reference_end_ _reference_start_Psalms 90:14_reference_end_ _reference_start_Psalms 6:05_reference_end_ _reference_start_Psalms 63:04_reference_end_ _reference_start_Psalms 21:08_reference_end_ _reference_start_Psalms 32:10_reference_end_ _reference_start_Psalms 57:04_reference_end_ _reference_start_Psalms 57:11_reference_end_ _reference_start_Psalms 59:11_reference_end_ _reference_start_Psalms 59:17_reference_end_ _reference_start_Psalms 59:18_reference_end_ _reference_start_Psalms 61:08_reference_end_ _reference_start_Psalms 144:02_reference_end_ _reference_start_Psalms 23:06_reference_end_ _reference_start_Psalms 25:10_reference_end_ _reference_start_Psalms 52:10_reference_end_ _reference_start_Psalms 25:06_reference_end_ _reference_start_Proverbs 14:34_reference_end_ _reference_start_Proverbs 31:26_reference_end_ _reference_start_Proverbs 3:03_reference_end_ _reference_start_Proverbs 16:06_reference_end_ _reference_start_Daniel 9:04_reference_end_ _reference_start_Daniel 1:09_reference_end_ _reference_start_Jonah 2:09_reference_end_ _reference_start_Jonah 4:02_reference_end_ C~qdWJ=0# yl_RE8+uh[NA4'  o  n  m  l  k  j  iA h g f e d c b a, `% _% ^ ] \ [ Z Y" X W V UC T  S  R Q  P O N M" L K4 J I H G= F; E; D; C9 B9 A @ ?? > =Z <3 ; :4 93 8 7 6 5 4 3 2 ) 1 " 0  /  .  - _end_ _reference_start_Genesis 29:30_reference_end_ _reference_start_Genesis 29:32_reference_end_ _reference_start_Genesis 34:03_reference_end_ _reference_start_Genesis 27:04_reference_end_ _reference_start_Genesis 27:09_reference_end_ _reference_start_Genesis 27:14_reference_end_ _reference_start_Genesis 22:02_reference_end_ _reference_start_Genesis 25:28_reference_end_ _reference_start_Genesis 37:03_reference_end_ _reference_start_Genesis 37:04_reference_end_ _reference_start_Genesis 44:20_reference_end_ _reference_start_Exodus 20:06_reference_end_ _reference_start_Exodus 21:05_reference_end_ _reference_start_Leviticus 19:18_reference_end_ _reference_start_Deuteronomy 6:05_reference_end_ _reference_start_Deuteronomy 30:06_reference_end_ _reference_start_Deuteronomy 5:10_reference_end_ _reference_start_Deuteronomy 7:09_reference_end_ _reference_start_Jude 5:31_reference_end_ _reference_start_1 Samuel 1:05_reference_end_ _reference_start_1 Samuel 18:20_reference_end_ _reference_start_1 Samuel 16:21_reference_end_ _reference_start_1 Samuel 18:01_reference_end_ _reference_start_1 Samuel 20:17_reference_end_ _reference_start_1 Samuel 18:16_reference_end_ _reference_start_1 Samuel 18:22_reference_end_ _reference_start_1 Samuel 18:28_reference_end_ _reference_start_2 Samuel 12:24_reference_end_ _reference_start_2 Samuel 13:01_reference_end_ _reference_start_2 Samuel 13:04_reference_end_ _reference_start_2 Samuel 13:15_reference_end_ _reference_start_2 Samuel 19:07_reference_end_ _reference_start_2 Samuel 1:23_reference_end_ _reference_start_2 Samuel 19:07_reference_end_ _reference_start_1 Kings 11:01_reference_end_ _reference_start_1 Kings 11:02_reference_end_ _reference_start_1 Kings 3:03_reference_end_ _reference_start_1 Kings 5:15_reference_end_ _reference_start_2 Chronicles 26:10_reference_end_ _reference_start_Esther 5:10_reference_end_ _reference_start_Esther 5:14_reference_end_ _reference_start_Esther 6:13_reference_end_ _reference_start_Esther 2:17_reference_end_ _reference_start_Psalms 52:05_reference_end_ _reference_start_Psalms 52:06_reference_end_ _reference_start_Psalms 47:05_reference_end_ _reference_start_Psalms 34:13_reference_end_ _reference_start_Psalms 116:01_reference_end_ _reference_start_Psalms 5:12_reference_end_ _reference_start_Psalms 31:24_reference_end_ _reference_start_Psalms 145:20_reference_end_ _reference_start_Proverbs 1:22_reference_end_ _reference_start_Proverbs 17:19_reference_end_ _reference_start_Proverbs 22:11_reference_end_ _reference_start_Proverbs 27:06_reference_end_ _reference_start_Proverbs 3:12_reference_end_ _reference_start_Proverbs 19:08_reference_end_ _reference_start_Proverbs 21:17_reference_end_ _reference_start_Proverbs 29:03_reference_end_ _reference_start_Proverbs 13:24_reference_end_ _reference_start_Proverbs 17:17_reference_end_ _reference_start_Proverbs 18:24_reference_end_ _reference_start_Proverbs 9:08_reference_end_ _reference_start_Ecclesiastes 5:09_reference_end_ _reference_start_Isaiah 1:23_reference_end_ _reference_start_Daniel 9:04_reference_end_ llCUlove (to)love (to)Hebrew: אָהַב / אָהֵב \f aimer \cme enjoy doing -something, -right, -wrong \cmf aimer faire -qqch, -le bien, -le mal \cme friend \cmf ami \cme God loves people \cmf Dieu aime les humains \cme God's love as a father \cmf l'amour de Dieu comme un père \cme heterosexual love between persons \cmf amour sexuel entre homme et femme \cme highly value something \cmf metre une grande valeur sur qqch \cme like the taste of food \cmf savourer la nouriture \cme love between family and friend \cmf amour entre famille et entre amis \cme person feels love for God \cmf une personne resentie amour pour Dieu \cme person loves God (by keeping commandments) \cmf une personne aime Dieu (et guarde ses commandemants) \cme respect and loyalty to authority \cmf respet et loyauté envers autorité _reference_start_Genesis 24:67_reference_end_ _reference_start_Genesis 29:18_reference C~qdWJ=0# yl_RE8+uh[NA4'  2 11 0  / . -p ,o +g *V )N& (  '  & % $" #  " !                                   t " / 4 4    ~ } |  {  z  y  x  w  v  u  t  s  r  q  p  bD-loveloveHebrew: אַהֲבָה \f amour \cme God's love for people \cmf amour de Dieu pour des personnes \cme harmony and kindness, in contrast to hate \cmf harmonie et bienveillance, en contraste avec la haine \cme heterosexual love between man & woman \cmf amour entre un homme et une femme \cme love between friends \cmf amour entre amis _reference_start_Genesis 29:20_reference_end_ _reference_start_1 Samuel 18:03_reference_end_ _reference_start_1 Samuel 20:18_reference_end_ _reference_start_2 Samuel 1:26_reference_end_ _reference_start_2 Samuel 13:15_reference_end_ _reference_start_2 Samuel 1:26_reference_end_ _reference_start_1 Kings 10:09_reference_end_ _reference_start_Proverbs 15:17_reference_end_ _reference_start_Proverbs 17:09_reference_end_ _reference_start_Proverbs 27:05_reference_end_ _reference_start_Ecclesiastes 9:01_reference_end_ 99CEkmercymercyHebrew: ּרַחוּם \f compassion, pitié \cme compassion of God \cmf compassion de Dieu _reference_start_Exodus 34:06_reference_end_ _reference_start_Deuteronomy 4:31_reference_end_ _reference_start_2 Chronicles 30:09_reference_end_ _reference_start_Nehemiah 9:17_reference_end_ _reference_start_Nehemiah 9:31_reference_end_ _reference_start_Psalms 78:38_reference_end_ _reference_start_Psalms 86:15_reference_end_ _reference_start_Psalms 103:08_reference_end_ _reference_start_Psalms 111:04_reference_end_ _reference_start_Psalms 112:04_reference_end_ _reference_start_Psalms 145:08_reference_end_ _reference_start_Joel 2:13_reference_end_ _reference_start_Jonah 4:02_reference_end_ H_mock (to)mock (to)Hebrew: לָעַג \f moquer (se moquer de) \cme mock, laugh at someone \cmf se moquer de qqn _reference_start_Proverbs 1:26_reference_end_ _reference_start_Proverbs 17:05_reference_end_ _reference_start_Proverbs 30:17_reference_end_eG'miraclemiracleHebrew: מֹופֵת \f miracle \cme display of supernatural power by false proނoF!!/Mighty Onemighty oneHebrew: אָבִיר \f Puissant \cme Mighty One \cmf le Puissant _reference_start_Genesis 49:24_reference_end_ _reference_start_Psalms 132:02_reference_end_ _reference_start_Psalms 132:05_reference_end_ _reference_start_Isaiah 1:24_reference_end_ _reference_start_Isaiah 49:26_reference_end_ _reference_start_Isaiah 60:16_reference_end_ C}pcVI</!xk^QD7*tgZM@3& u  t  s  r q& p  o9 n m l k j i h  g  f e d c b a ` _ ^ ] \ [ Z Y X W V U T S R Q P9 O2 N M  L  K J I H G F E D C BG A  @  ?  >" =. <  ; : 9 8 7 6< 51 4 3phets \cmf pouvoire surnatuel démontré par faux prophètes \cme sign of future event \cmf présage d'un événement future \cme something showing the power of God \cmf qqch qui montre le pouvoir de Dieu \cme special display of God's power \cmf signe spécial montrant le pouvoir de Dieu _reference_start_Exodus 7:09_reference_end_ _reference_start_Exodus 4:21_reference_end_ _reference_start_Exodus 7:03_reference_end_ _reference_start_Exodus 11:09_reference_end_ _reference_start_Exodus 11:10_reference_end_ _reference_start_Deuteronomy 13:02_reference_end_ _reference_start_Deuteronomy 28:46_reference_end_ _reference_start_Deuteronomy 34:11_reference_end_ _reference_start_1 Kings 13:03_reference_end_ _reference_start_1 Kings 13:05_reference_end_ _reference_start_1 Chronicles 16:12_reference_end_ _reference_start_Psalms 71:07_reference_end_ _reference_start_Psalms 135:09_reference_end_ KI''[Most High Godmost high godHebrew: עֶלְיֹון \f Dieu le Très-Haut \cme Most High God \cmf Dieu le Très-Haut _reference_start_Genesis 14:18_reference_end_ _reference_start_Genesis 14:19_reference_end_ _reference_start_Genesis 14:20_reference_end_ _reference_start_Genesis 14:22_reference_end_ _reference_start_Numbers 24:16_reference_end_ _reference_start_Deuteronomy 32:08_reference_end_ _reference_start_2 Samuel 22:14_reference_end_ _reference_start_Psalms 18:14_reference_end_ _reference_start_Psalms 50:14_reference_end_ _reference_start_Psalms 57:03_reference_end_ CC9JGMost Highmost highHebrew: .עִלַּי / עֶלְיֹון \f Très-Haut \cme The Most High \cmf leTrès-Haut (Arm) _reference_start_Daniel 3:26_reference_end_ _reference_start_Daniel 3:32_reference_end_ _reference_start_Daniel 4:14_reference_end_ _reference_start_Daniel 4:21_reference_end_ _reference_start_Daniel 4:22_reference_end_ _reference_start_Daniel 4:31_reference_end_ _reference_start_Daniel 5:18_reference_end_ _reference_start_Daniel 5:21_reference_end_ _reference_start_Daniel 7:18_reference_end_ _reference_start_Daniel 7:22_reference_end_ _reference_start_Daniel 7:25_reference_end_ _reference_start_Daniel 7:25_reference_end_ _reference_start_Daniel 7:27_reference_end_ rKImouthmouthHebrew: פֶּה \f bouche \cme figurative use \cmf sense figuré \cme mouth, physical organ \cmf bouche, organe physique \cme speech, what is said; figurative sense \cmf parole, ce qui est dit; sense figuré _reference_start_Proverbs 22:06_reference_end_ _reference_start_Proverbs 19:24_reference_end_ _reference_start_Proverbs 26:15_reference_end_ _reference_start_Proverbs 30:20_reference_end_ _reference_start_Proverbs 30:32_reference_end_ _reference_start_Proverbs 4:24_reference_end_ _reference_start_Proverbs 6:12_reference_end_ _reference_start_Proverbs 8:13_reference_end_ _reference_start_Proverbs 8:29_reference_end_ _reference_start_Proverbs 12:08_reference_end_ _reference_start_Proverbs 13:03_reference_end_ _reference_start_Proverbs 21:23_reference_end_ _reference_start_Proverbs 26:28_reference_end_ _reference_start_Proverbs 27:21_reference_end_ =L));nation, peoplenation, peopleHebrew: .לְאֹם / לְאוֹם \f nation, peuple \cme people in general \cmf des personnes en géneral \cme people, tribe, nation (poetry) \cmf peuple, tribu, nation (poesie) \cme population \cmf la population _reference_start_Genesis 23:23_reference_end_ _reference_start_Genesis 27:29_reference_end_ _reference_start_Psalms 2:01_reference_end_ _reference_start_Psalms 57:10_reference_end_ _reference_start_Proverbs 11:26_reference_end_ _reference_start_Proverbs 14:38_reference_end_ _reference_start_Proverbs 14:28_reference_end__Genesis 10:31_reference_end_ _reference_start_Genesis 10:32_reference_end_ _reference_start_Genesis 12:02_reference_end_ _reference_start_Genesis 17:04_reference_end_ _reference_start_Genesis 17:05_reference_end_ _reference_start_Genesis 17:06_reference_end_ _reference_start_Genesis 17:16_reference_end_ _reference_start_Genesis 17:20_reference_end_ _reference_start_Genesis 18:18_reference_end_ _reference_start_Genesis 20:04_reference_end_ _reference_start_Genesis 21:13_reference_end_ _reference_start_Genesis 21:18_reference_end_ _reference_start_Genesis 22:18_reference_end_ _reference_start_Genesis 25:23_reference_end_ _reference_start_Genesis 26:04_reference_end_ _reference_start_Genesis 35:11_reference_end_ _reference_start_Genesis 46:03_reference_end_ _reference_start_Genesis 48:19_reference_end_ _reference_start_Genesis 15:14_reference_end_ _reference_start_Genesis 14:01_reference_end_ _reference_start_Genesis 14:09_reference_end_ _reference_start_Exodus 9:24_reference_end_ _reference_start_Exodus 32:10_reference_end_ _reference_start_Exodus 33:12_reference_end_ _reference_start_Exodus 19:06_reference_end_ _reference_start_Exodus 34:24_reference_end_ _reference_start_Leviticus 18:24_reference_end_ _reference_start_Leviticus 18:28_reference_end_ _reference_start_Leviticus 20:23_reference_end_ _reference_start_Numbers 14:12_reference_end_ _reference_start_Numbers 14:15_reference_end_ _reference_start_Deuteronomy 18:09_reference_end_ _reference_start_Deuteronomy 18:14_reference_end_ _reference_start_Deuteronomy 28:01_reference_end_ _reference_start_Deuteronomy 28:12_reference_end_ _reference_start_Deuteronomy 28:36_reference_end_ _reference_start_Deuteronomy 28:49_reference_end_ _reference_start_Deuteronomy 28:50_reference_end_ _reference_start_Deuteronomy 28:65_reference_end_ _reference_start_Joshua 3:17_reference_end_ _reference_start_Joshua 4:01_reference_end_ _reference_start_Joshua 5:06_reference_end_ _reference_start_Joshua 23:03_reference_end_ _reference_start_Joshua 23:04_reference_end_ _reference_start_1 Samuel 8:05_reference_end_ _reference_start_1 Samuel 8:20_reference_end_ _reference_start_2 Samuel 7:23_reference_end_ _reference_start_2 Samuel 8:11_reference_end_ _reference_start_2 Samuel 22:44_reference_end_ _reference_start_2 Samuel 22:50_reference_end_ _reference_start_1 Kings 4:31_reference_end_ _reference_start_1 Kings 11:02_reference_end_ _reference_start_1 Chronicles 16:20_reference_end_ _reference_start_1 Chronicles 16:24_reference_end_ _reference_start_1 Chronicles 16:31_reference_end_ _reference_start_1 Chronicles 16:35_reference_end_ _reference_start_1 Chronicles 17:21_reference_end_ _reference_start_Psalms 2:02_reference_end_ _reference_start_Psalms 2:08_reference_end_ _reference_start_Psalms 59:06_reference_end_ _reference_start_Psalms 59:09_reference_end_ _reference_start_Psalms 110:06_reference_end_ _reference_start_Proverbs 14:34_reference_end_ _reference_start_Daniel 8:22_reference_end_ _reference_start_Daniel 11:23_reference_end_ _reference_start_Daniel 12:01_reference_end_ J?JqNGnoblenobleHebrew: פַּרְתְּמִים \f noble \cme leader, dignitary \cmf nobles, dignitaires _reference_start_Esther 1:03_reference_end_ _reference_start_Esther 6:09_reference_end_ _reference_start_Daniel 1:03_reference_end_-M7nationsnationsHebrew: גֹּוי \f nations \cme group of people, nation \cmf un peuple, une nation \cme Jews, God's chosen people \cmf juifs, le peuple choisi par Dieu \cme non Jews, godless peoples \cmf non-juifs, gens qui ne reconnaissent pas Dieu \cme proper name of a city/region \cmf nom propre d'un ville ou région _reference_start_Genesis 10:05_reference_end_ _reference_start_Genesis 10:20_reference_end_ _reference_start C~qdWJ=0# zm`SF9,vi\OB5( 8 7 6  5  4 3" 2n 1; 0; / . -  , # +  *  )  (  '  & 2 % , $  #  "  !       A 2 1 $          "  !       0 . #      ~ } | { z y x w  v C~qdWJ=0# zm`SF9,vi\OB5( {  z  y  x  w  v  u  t  s  r: q- p o n m l k j i h g" f e d c  b" a ` _ ^ ] \  [  Z  Y X W V U T S R Q P O)# N% M L K J I H G F EA Di C  B + A  @  ? > = < ; : 9 OoathoathHebrew: שְׁבוּעָה \f serment \cme curse \cmf maudire \cme make an oath or agreement \cmf faire un accorde \cme take an oath, swear to \cmf faire un serment, jurer _reference_start_Genesis 24:08_reference_end_ _reference_start_Genesis 26:03_reference_end_ _reference_start_Exodus 22:10_reference_end_ _reference_start_Leviticus 5:04_reference_end_ _reference_start_Numbers 5:21_reference_end_ _reference_start_Deuteronomy 7:08_reference_end_ _reference_start_1 Samuel 14:26_reference_end_ _reference_start_2 Samuel 21:07_reference_end_ _reference_start_1 Kings 2:43_reference_end_ _reference_start_1 Chronicles 16:16_reference_end_ _reference_start_Psalms 105:09_reference_end_ _reference_start_Isaiah 65:15_reference_end_ _reference_start_Daniel 9:11_reference_end__reference_start_Genesis 28:20_reference_end_ _reference_start_Genesis 30:31_reference_end_ _reference_start_Genesis 37:11_reference_end_ _reference_start_Genesis 41:35_reference_end_ _reference_start_Genesis 17:09_reference_end_ _reference_start_Genesis 17:10_reference_end_ _reference_start_Genesis 18:19_reference_end_ _reference_start_Genesis 26:05_reference_end_ _reference_start_Genesis 24:06_reference_end_ _reference_start_Genesis 31:24_reference_end_ _reference_start_Genesis 31:29_reference_end_ _reference_start_Exodus 22:06_reference_end_ _reference_start_Exodus 22:09_reference_end_ _reference_start_Exodus 19:05_reference_end_ _reference_start_Exodus 12:17_reference_end_ _reference_start_Exodus 12:24_reference_end_ _reference_start_Exodus 12:25_reference_end_ _reference_start_Exodus 13:10_reference_end_ _reference_start_Exodus 23:15_reference_end_ _reference_start_Exodus 15:26_reference_end_ _reference_start_Exodus 16:28_reference_end_ _reference_start_Exodus 20:06_reference_end_ _reference_start_Exodus 34:11_reference_end_ _reference_start_Exodus 10:28_reference_end_ _reference_start_Exodus 19:12_reference_end_ _reference_start_Exodus 23:13_reference_end_ _reference_start_Exodus 23:21_reference_end_ _reference_start_Exodus 34:12_reference_end_ _reference_start_Leviticus 18:04_reference_end_ _reference_start_Leviticus 18:05_reference_end_ _reference_start_Leviticus 18:26_reference_end_ _reference_start_Leviticus 18:30_reference_end_ _reference_start_Leviticus 25:18_reference_end_ _reference_start_Deuteronomy 28:01_reference_end_ _reference_start_Deuteronomy 28:09_reference_end_ _reference_start_Deuteronomy 28:13_reference_end_ _reference_start_Deuteronomy 28:15_reference_end_ _reference_start_Deuteronomy 28:45_reference_end_ _reference_start_Deuteronomy 28:58_reference_end_ _reference_start_1 Samuel 21:05_reference_end_ _reference_start_1 Samuel 17:20_reference_end_ _reference_start_1 Samuel 17:22_reference_end_ _reference_start_1 Samuel 26:16_reference_end_ _reference_start_1 Samuel 28:02_reference_end_ _reference_start_1 Samuel 2:09_reference_end_ _reference_start_1 Samuel 7:01_reference_end_ _reference_start_1 Samuel 9:24_reference_end_ _reference_start_1 Samuel 25:21_reference_end_ _reference_start_1 Samuel 26:15_reference_end_ _reference_start_1 Samuel 30:23_reference_end_ _reference_start_1 Samuel 13:13_reference_end_ _reference_start_1 Samuel 13:14_reference_end_ _reference_start_1 Samuel 19:02_reference_end_ _reference_start_2 Samuel 22:24_reference_end_ _reference_start_2 Samuel 15:16_reference_end_ _reference_start_2 Samuel 16:21_reference_end_ _reference_start_2 Samuel 18:12_reference_end_ _reference_start_2 Samuel 20:03_reference_end_ _reference_start_2 Samuel 22:44_reference_end_ _reference_start_2 Samuel 23:05_reference_end_ _reference_start_2 Samuel 22:22_reference_end_ _reference_start_2 Samuel 18:12_reference_end_ _reference_start_2 Samuel 20:10_reference_end_ _reference_start_1 Kings 14:27_reference_end_ _reference_start_1 Kings 2:43_reference_end_ _reference_start_1 Kings 3:06_reference_end_ _reference_start_1 Kings 8:23_reference_end_ _reference_start_1 Kings 8:24_reference_end_ _reference_start_1 Kings 8:25_reference_end_ _reference_start_1 Kings 11:11_reference_end_ _reference_start_1 Kings 2:03_reference_end_ _reference_start_1 Kings 3:14_reference_end_ _reference_start_1 Kings 6:12_reference_end_ _reference_start_1 Kings 8:58_reference_end_ _reference_start_1 Kings 8:61_reference_end_ _reference_start_1 Kings 9:04_reference_end_ _reference_start_1 Kings 9:06_reference_end_ _reference_start_1 Kings 11:10_reference_end_ _reference_start_1 Kings 11:34_reference_end_ _reference_start_1 Kings 11:38_reference_end_ _reference_start_1 Kings 2:04_reference_end_ _reference_start_1 Kings 8:25_reference_end_ _reference_start_2 Kings 6:09_reference_end_ _reference_start_1 Chronicles 9:19_reference_end_ _reference_start_1 Chronicles 29:18_reference_end_ _reference_start_1 Chronicles 8:28_reference_end_ _reference_start_1 Chronicles 22:12_reference_end_ _reference_start_1 Chronicles 29:19_reference_end_ _reference_start_1 Chronicles 22:13_reference_end_ _reference_start_2 Chronicles 7:17_reference_end_ _reference_start_Esther 2:03_reference_end_ _reference_start_Esther 2:08_reference_end_ _reference_start_Esther 2:14_reference_end_ _reference_start_Esther 2:15_reference_end_ _reference_start_Esther 2:21_reference_end_ _reference_start_Esther 6:02_reference_end_ _reference_start_Psalms 34:21_reference_end_ _reference_start_Psalms 59:09_reference_end_ _reference_start_Psalms 127:01_reference_end_ _reference_start_Psalms 17:04_reference_end_ _reference_start_Psalms 19:12_reference_end_ _reference_start_Psalms 39:02_reference_end_ _reference_start_Proverbs 13:03_reference_end_ _reference_start_Proverbs 2:20_reference_end_ _reference_start_Proverbs 4:04_reference_end_ _reference_start_Proverbs 10:17_reference_end_ _reference_start_Proverbs 21:23_reference_end_ _reference_start_Ecclesiastes 12:13_reference_end_ _reference_start_Daniel 9:04_reference_end_ _reference_start_Jonah 2:09_reference_end_ EP_obey (to)obey (to)Hebrew: שָׁמַר \f obéir \cme avoid doing \cmf éviter, ne pas faire _reference_start_Psalms 18:24_reference_end_ \cme be responsible for something or someone \cmf avoir la responsabilité pour qqn ou qqch \cme guard, hold onto \cmf surveiller, garder \cme keep a covenant, an agreement \cmf tenir un accord, un serment \cme keep a holiday, practice a rite \cmf practiquer un rite, fêter une fête \cme obey God's commandments \cmf obéir les commandements de Dieu \cme watch out, be careful \cmf faire attention _reference_start_Genesis 2:15_reference_end_ _reference_start_Genesis 3:24_reference_end_ _reference_start_Genesis 4:09_reference_end_ _reference_start_Genesis 28:15_reference_end_  C~qdWJ=0# zm`SF9,vi\OB5( >! =  <  ;  :  9  8  7 6 5  4 3 2  1' 0 / . -; ," + * ) ( ' & % $  #  "  !             &  "       =  :                 +            ,               ~ }  | _reference_end_ _reference_start_Genesis 33:10_reference_end_ _reference_start_Genesis 43:11_reference_end_ _reference_start_Genesis 43:15_reference_end_ _reference_start_Genesis 43:25_reference_end_ _reference_start_Genesis 43:26_reference_end_ _reference_start_Genesis 4:03_reference_end_ _reference_start_Genesis 4:04_reference_end_ _reference_start_Genesis 4:05_reference_end_ _reference_start_Exodus 29:41_reference_end_ _reference_start_Leviticus 1:02_reference_end_ _reference_start_Leviticus 1:03_reference_end_ _reference_start_Leviticus 1:10_reference_end_ _reference_start_Leviticus 2:01_reference_end_ _reference_start_Leviticus 2:15_reference_end_ _reference_start_Leviticus 3:14_reference_end_ _reference_start_Leviticus 5:11_reference_end_ _reference_start_Numbers 6:14_reference_end_ _reference_start_Numbers 7:13_reference_end_ _reference_start_Numbers 31:50_reference_end_ _reference_start_Joshua 22:21_reference_end_ _reference_start_Jude 3:15_reference_end_ _reference_start_1 Samuel 10:27_reference_end_ _reference_start_1 Samuel 2:17_reference_end_ _reference_start_1 Samuel 2:29_reference_end_ _reference_start_1 Samuel 3:14_reference_end_ _reference_start_1 Samuel 26:19_reference_end_ _reference_start_2 Samuel 8:02_reference_end_ _reference_start_2 Samuel 8:06_reference_end_ _reference_start_1 Kings 10:25_reference_end_ _reference_start_1 Kings 8:64_reference_end_ _reference_start_1 Kings 18:29_reference_end_ _reference_start_1 Kings 5:01_reference_end_ _reference_start_2 Kings 16:15_reference_end_ _reference_start_1 Chronicles 16:29_reference_end_ _reference_start_1 Chronicles 21:23_reference_end_ _reference_start_1 Chronicles 23:29_reference_end_ _reference_start_2 Chronicles 7:07_reference_end_ _reference_start_Ezra 9:04_reference_end_ _reference_start_Ezra 9:05_reference_end_ _reference_start_Psalms 141:02_reference_end_ _reference_start_Ezekiel 20:28_reference_end_ _reference_start_Daniel 2:46_reference_end_ _reference_start_Daniel 9:21_reference_end_ _reference_start_Daniel 9:27_reference_end_ <<^RoverseeroverseerHebrew: פָּקִיד \f chargé d'affaires \cme commissioner, overseer \cmf ministre, chargé d'affaires _reference_start_Genesis 41:34_reference_end_ _reference_start_Esther 2:03_reference_end_RQ}offeringofferingHebrew: מִנְחָה \f offrande \cme present offered to person \cmf cadeau offert a une personne \cme regular/daily grain offering to God \cmf sacrifice - offrende quotidien de blé offert à Dieu \cme something offered to God \cmf qqch offert à Dieu \cme tribute \cmf tribut _reference_start_Genesis 32:14_reference_end_ _reference_start_Genesis 32:19_reference_end_ _reference_start_Genesis 32:21_reference_end_ _reference_start_Genesis 32:22 C~qdWJ=0# zm`SF9,uh[NA4'   @  ?   ~  }  | {  z  y x w v uB tA s r  q - p  o  n ' m  l  k j)" i  h  g. f e d  c  b a  `  _  ^  ]  \  [ @ Z  Y  X  W  V  U  T  S  RA Q P2 O N M L K J I H G F) E D C B+ A+ @+ ?+ JJ T))Ypeace offeringpeace offeringHebrew: שֶׁלֶם \f sacrifice d'action de grâce \cme sacrifiCS''Kpeace (be at)peace (be at)Hebrew: שָׁלַם \f paix, être en paix \cme God's punishment of sin & evil \cmf Dieu puni le mal, les péchés \cme God's reward of good \cmf Dieu récompense le bien \cme opposite of war \cmf le contraire de la guerre \cme to seek right relationship with God, & his \cmf desirer bonne rélation avec Dieu, et sa bénédiction _reference_start_1 Samuel 24:20_reference_end_ _reference_start_1 Samuel 24:20_reference_end_ _reference_start_2 Samuel 3:39_reference_end_ _reference_start_2 Samuel 10:19_reference_end_ _reference_start_2 Samuel 20:19_reference_end_ _reference_start_1 Kings 22:45_reference_end_ _reference_start_1 Chronicles 19:19_reference_end_ _reference_start_Proverbs 31:21_reference_end_ _reference_start_Isaiah 65:06_reference_end_ _reference_start_Isaiah 66:06_reference_end_ce to establish/affirm covenant with God \cmf pour établier, afirmer l'alliance avec Dieu _reference_start_Exodus 20:24_reference_end_ _reference_start_Exodus 24:05_reference_end_ _reference_start_Exodus 29:28_reference_end_ _reference_start_Numbers 10:10_reference_end_ _reference_start_1 Samuel 10:08_reference_end_ _reference_start_1 Samuel 11:15_reference_end_ _reference_start_1 Samuel 13:09_reference_end_ _reference_start_2 Samuel 6:17_reference_end_ _reference_start_2 Samuel 6:18_reference_end_ _reference_start_1 Kings 3:15_reference_end_ _reference_start_1 Kings 8:63_reference_end_ _reference_start_1 Kings 8:64_reference_end_ _reference_start_1 Kings 9:25_reference_end_ _reference_start_1 Chronicles 16:01_reference_end_ _reference_start_1 Chronicles 16:02_reference_end_ _reference_start_1 Chronicles 21:26_reference_end_ _reference_start_2 Chronicles 7:07_reference_end_ _reference_start_Proverbs 7:14_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5( D C# B" Ax @x ? >  = <  ;  : ! 9  8  7  6  5  4  3  2  1  0  /  .  -  ,  +  *  )  (  '  &  % # $  #  "  !     *                 , + + %      % + )          ble, agréable \cme greeting extending wholeness, wellbeing \cmf salutation souhaitant le bien être, la santé \cme harmony among men, safety \cmf harmonie entre personnes, salut \cme opposite of war \cmf en opposition avec la guerre \cme peace covenant - restoring God's blessing on Israel \cmf alliance de paix - restitue la bénédiction de Dieu enver Israël \cme right relationship with God, blessing & salvation \cmf la bonne rélation avec Dieu, bénédiction et salut \cme welfare of someone \cmf comment va une personne \cme wellbeing under favorable circumstances \cmf bien-être dans des circonstances favorables _reference_start_Genesis 41:16_reference_end_ _reference_start_Genesis 43:23_reference_end_ _reference_start_Genesis 37:04_reference_end_ _reference_start_Genesis 26:29_reference_end_ _reference_start_Genesis 26:31_reference_end_ _reference_start_Genesis 15:15_reference_end_ _reference_start_Genesis 28:21_reference_end_ _reference_start_Genesis 29:06_reference_end_ _reference_start_Genesis 37:14_reference_end_ _reference_start_Genesis 43:27_reference_end_ _reference_start_Genesis 43:28_reference_end_ _reference_start_Genesis 44:17_reference_end_ _reference_start_Exodus 18:07_reference_end_ _reference_start_Exodus 18:07_reference_end_ _reference_start_Exodus 18:23_reference_end_ _reference_start_Exodus 18:23_reference_end_ _reference_start_Numbers 25:12_reference_end_ _reference_start_Numbers 6:26_reference_end_ _reference_start_1 Samuel 1:17_reference_end_ _reference_start_1 Samuel 10:04_reference_end_ _reference_start_1 Samuel 16:04_reference_end_ _reference_start_1 Samuel 16:05_reference_end_ _reference_start_1 Samuel 17:22_reference_end_ _reference_start_1 Samuel 20:42_reference_end_ _reference_start_1 Samuel 25:05_reference_end_ _reference_start_1 Samuel 25:06_reference_end_ _reference_start_1 Samuel 20:07_reference_end_ _reference_start_1 Samuel 20:13_reference_end_ _reference_start_1 Samuel 20:21_reference_end_ _reference_start_1 Samuel 25:35_reference_end_ _reference_start_1 Samuel 29:07_reference_end_ _reference_start_1 Samuel 7:14_reference_end_ _reference_start_1 Samuel 17:18_reference_end_ _reference_start_2 Samuel 11:07_reference_end_ _reference_start_2 Samuel 15:09_reference_end_ _reference_start_2 Samuel 15:27_reference_end_ _reference_start_2 Samuel 18:28_reference_end_ _reference_start_2 Samuel 20:09_reference_end_ _reference_start_2 Samuel 3:21_reference_end_ _reference_start_2 Samuel 3:22_reference_end_ _reference_start_2 Samuel 3:23_reference_end_ _reference_start_2 Samuel 19:25_reference_end_ _reference_start_2 Samuel 19:31_reference_end_ _reference_start_2 Samuel 18:29_reference_end_ _reference_start_2 Samuel 18:32_reference_end_ _reference_start_1 Kings 2:13_reference_end_ _reference_start_1 Kings 2:06_reference_end_ _reference_start_1 Kings 2:05_reference_end_ _reference_start_1 Kings 4:26_reference_end_ _reference_start_1 Kings 5:04_reference_end_ _reference_start_1 Kings 2:33_reference_end_ _reference_start_1 Chronicles 22:09_reference_end_ _reference_start_Esther 9:30_reference_end_ _reference_start_Esther 2:11_reference_end_ _reference_start_Esther 10:03_reference_end_ _reference_start_Psalms 28:03_reference_end_ _reference_start_Psalms 120:06_reference_end_ _reference_start_Psalms 120:07_reference_end_ _reference_start_Psalms 34:15_reference_end_ _reference_start_Psalms 35:27_reference_end_ _reference_start_Psalms 4:09_reference_end_ _reference_start_Psalms 38:04_reference_end_ _reference_start_Proverbs 3:02_reference_end_ _reference_start_Proverbs 3:17_reference_end_ _reference_start_Isaiah 54:10_reference_end_ _reference_start_Jeremiah 6:14_reference_end_ _reference_start_Ezekiel 34:05_reference_end_ _reference_start_Ezekiel 37:06_reference_end_ _reference_start_Ezekiel 13:16_reference_end_ _reference_start_Daniel 3:31_reference_end_ _reference_start_Daniel 6:26_reference_end_ _reference_start_Daniel 10:19_reference_end_ _reference_start_Micah 3:05_reference_end_ 77V))speople, nationpeople, nationHebrew: עַם \f peuple, nation \cme all mankind \cmf tout homme \cme citizen(s) \cmf citoyen(s) \cme fighting band, army \cmf armée \cme followers, retainers \cmf adepts, cex qui suivent qqn \cme kinfolk, family, tribe \cmf famille, parents, tribu \cme people in general \cmf des personnes \cme people living in an area, don't form a tribe \cmf gens qui habitent une région, qui ne formment pas un tribu \cme people of Israel, the Jews \cmf les peuples d'Israël, les juifs \cme people, tribe, nation \cmf peuples, tribu, nation _reference_start_Genesis 11:06_reference_end_ _reference_start_Genesis 23:11_reference_end_ _reference_start_Genesis 26:10_reference_end_ _reference_start_Genesis 33:15_reference_end_ _reference_start_Genesis 35:06_reference_end_ _reference_start_Genesis 25:08_reference_end_ _rqUGpeacepeaceHebrew: .שָׁלֹום / שְׁלָם \f paix \cme favorable, agreable \cmf favora C~qdWJ=0# zm`SF9,vi\OB5(          ~ } | { z y  x  w v u t s r q p o1 n0 m0 l/ k)( j" i" h g f e d c b a `2 _/ ^* ])7 \ [1! Z1 Y1 X# W V U# T! S R Q  P! O  N M L  K% J" I H6 G F E&eference_start_Genesis 25:17_reference_end_ _reference_start_Genesis 35:29_reference_end_ _reference_start_Genesis 49:16_reference_end_ _reference_start_Genesis 49:29_reference_end_ _reference_start_Genesis 49:33_reference_end_ _reference_start_Genesis 27:29_reference_end_ _reference_start_Genesis 41:55_reference_end_ _reference_start_Genesis 42:06_reference_end_ _reference_start_Genesis 47:21_reference_end_ _reference_start_Genesis 50:20_reference_end_ _reference_start_Genesis 19:04_reference_end_ _reference_start_Genesis 23:07_reference_end_ _reference_start_Genesis 23:12_reference_end_ _reference_start_Genesis 23:13_reference_end_ _reference_start_Genesis 14:16_reference_end_ _reference_start_Genesis 17:16_reference_end_ _reference_start_Genesis 26:11_reference_end_ _reference_start_Genesis 28:03_reference_end_ _reference_start_Genesis 34:16_reference_end_ _reference_start_Genesis 34:22_reference_end_ _reference_start_Genesis 41:40_reference_end_ _reference_start_Genesis 47:23_reference_end_ _reference_start_Genesis 48:04_reference_end_ _reference_start_Genesis 48:19_reference_end_ _reference_start_Genesis 49:10_reference_end_ _reference_start_Exodus 7:28_reference_end_ _reference_start_Exodus 7:29_reference_end_ _reference_start_Exodus 8:04_reference_end_ _reference_start_Exodus 8:05_reference_end_ _reference_start_Exodus 8:07_reference_end_ _reference_start_Exodus 8:17_reference_end_ _reference_start_Exodus 8:19_reference_end_ _reference_start_Exodus 8:27_reference_end_ _reference_start_Exodus 9:15_reference_end_ _reference_start_Exodus 11:03_reference_end_ _reference_start_Exodus 16:27_reference_end_ _reference_start_Exodus 22:25_reference_end_ _reference_start_Exodus 23:11_reference_end_ _reference_start_Exodus 17:13_reference_end_ _reference_start_Exodus 1:09_reference_end_ _reference_start_Exodus 5:16_reference_end_ _reference_start_Exodus 19:05_reference_end_ _reference_start_Exodus 1:09_reference_end_ _reference_start_Exodus 1:20_reference_end_ _reference_start_Exodus 3:07_reference_end_ _reference_start_Exodus 3:10_reference_end_ _reference_start_Exodus 3:21_reference_end_ _reference_start_Exodus 4:16_reference_end_ _reference_start_Exodus 4:21_reference_end_ _reference_start_Exodus 4:30_reference_end_ _reference_start_Exodus 4:31_reference_end_ _reference_start_Exodus 5:1_reference_end_ _reference_start_Exodus 5:01_reference_end_ _reference_start_Exodus 6:07_reference_end_ _reference_start_Exodus 7:1_reference_end_ _reference_start_Exodus 8:04_reference_end_ _reference_start_Exodus 8:16_reference_end_ _reference_start_Exodus 8:19_reference_end_ _reference_start_Exodus 9:1_reference_end_ _reference_start_Exodus 9:17_reference_end_ _reference_start_Exodus 10:03_reference_end_ _reference_start_Exodus 10:04_reference_end_ _reference_start_Exodus 11:02_reference_end_ _reference_start_Exodus 11:03_reference_end_ _reference_start_Exodus 12:1_reference_end_ _reference_start_Exodus 13:1_reference_end_ _reference_start_Exodus 14:1_reference_end_ _reference_start_Exodus 15:1_reference_end_ _reference_start_Exodus 16:04_reference_end_ _reference_start_Exodus 16:30_reference_end_ _reference_start_Exodus 17:01-05_reference_end_ _reference_start_Exodus 18:1_reference_end_ _reference_start_Exodus 19:1_reference_end_ _reference_start_Exodus 20:20_reference_end_ _reference_start_Exodus 24:02_reference_end_ _reference_start_Exodus 24:03_reference_end_ _reference_start_Exodus 24:07_reference_end_ _reference_start_Exodus 1:22_reference_end_ _reference_start_Exodus 12:31_reference_end_ _reference_start_Exodus 15:14_reference_end_ _reference_start_Exodus 19:05_reference_end_ _reference_start_Exodus 21:08_reference_end_ _reference_start_Exodus 22:27_reference_end_ _reference_start_Exodus 23:27_reference_end_ _reference_start_Leviticus 19:18_reference_end_ _reference_start_Leviticus 18:29_reference_end_ _reference_start_Numbers 20:20_reference_end_ _reference_start_Numbers 20:20_reference_end_ _reference_start_Numbers 21:23_reference_end_ _reference_start_Numbers 21:33_reference_end_ _reference_start_Numbers 20:24_reference_end_ _reference_start_Numbers 11:34_reference_end_ _reference_start_Numbers 14:09_reference_end_ _reference_start_Numbers 11:1_reference_end_ _reference_start_Numbers 11:01_reference_end_ _reference_start_Numbers 11:12_reference_end_ _reference_start_Numbers 11:13_reference_end_ _reference_start_Numbers 11:29_reference_end_ _reference_start_Numbers 12:15_reference_end_ _reference_start_Numbers 12:16_reference_end_ _reference_start_Numbers 14:1_reference_end_ _reference_start_Numbers 20:01_reference_end_ _reference_start_Numbers 21:1_reference_end_ _reference_start_Numbers 21:02_reference_end_ _reference_start_Numbers 21:29_reference_end_ _reference_start_Numbers 21:34_reference_end_ _reference_start_Numbers 21:35_reference_end_ _reference_start_Deuteronomy 18:03_reference_end_ _reference_start_Deuteronomy 28:09_reference_end_ _reference_start_Deuteronomy 28:10_reference_end_ _reference_start_Deuteronomy 28:32_reference_end_ _reference_start_Deuteronomy 28:33_reference_end_ _reference_start_Deuteronomy 28:37_reference_end_ _reference_start_Deuteronomy 28:64_reference_end_ _reference_start_1 Samuel 26:15_reference_end_ _reference_start_1 Samuel 11:11_reference_end_ _reference_start_1 Samuel 13:04_reference_end_ _reference_start_1 Samuel 13:06_reference_end_ _reference_start_1 Samuel 13:07_reference_end_ _reference_start_1 Samuel 13:08_reference_end_ _reference_start_1 Samuel 13:11_reference_end_ _reference_start_1 Samuel 13:22_reference_end_ _reference_start_1 Samuel 14:1_reference_end_ _reference_start_1 Samuel 15:1_reference_end_ _reference_start_1 Samuel 17:27_reference_end_ _reference_start_1 Samuel 17:30_reference_end_ _reference_start_1 Samuel 23:08_reference_end_ _reference_start_1 Samuel 26:05_reference_end_ _reference_start_1 Samuel 26:07_reference_end_ _reference_start_1 Samuel 26:14_reference_end_ _reference_start_1 Samuel 30:04_reference_end_ _reference_start_1 Samuel 30:06_reference_end_ _reference_start_1 Samuel 30:21_reference_end_ _reference_start_1 Samuel 9:02_reference_end_ _reference_start_1 Samuel 10:24_reference_end_ _reference_start_1 Samuel 9:12_reference_end_ _reference_start_1 Samuel 9:13_reference_end_ _reference_start_1 Samuel 11:04_reference_end_ _reference_start_1 Samuel 11:05_reference_end_ _reference_start_1 Samuel 9:16_reference_end_ _reference_start_1 Samuel 9:18_reference_end_ _reference_start_1 Samuel 10:17_reference_end_ _reference_start_1 Samuel 10:24_reference_end_ _reference_start_1 Samuel 10:25_reference_end_ _reference_start_1 Samuel 11:07_reference_end_ _reference_start_1 Samuel 11:12_reference_end_ _reference_start_1 Samuel 11:14_reference_end_ _reference_start_1 Samuel 11:15_reference_end_ _reference_start_1 Samuel 12:1_reference_end_ _reference_start_1 Samuel 13:14_reference_end_ _reference_start_1 Samuel 15:01_reference_end_ _reference_start_1 Samuel 18:05_reference_end_ _reference_start_1 Samuel 27:12_reference_end_ _reference_start_1 Samuel 12:22_reference_end_ _reference_start_1 Samuel 31:09_reference_end_ _reference_start_2 Samuel 8:15_reference_end_ _reference_start_2 Samuel 18:07_reference_end_ _reference_start_2 Samuel 18:08_reference_end_ _reference_start_2 Samuel 1:04_reference_end_ _reference_start_2 Samuel 2:26_reference_end_ _reference_start_2 Samuel 2:27_reference_end_ _reference_start_2 Samuel 3:31_reference_end_ _reference_start_2 Samuel 6:02_reference_end_ _reference_start_2 Samuel 10:10_reference_end_ _reference_start_2 Samuel 11:07_reference_end_ _reference_start_2 Samuel 11:17_reference_end_ _reference_start_2 Samuel 12:28_reference_end_ _reference_start_2 Samuel 12:29_reference_end_ _reference_start_2 Samuel 12:31_reference_end_ _reference_start_2 Samuel 18:01_reference_end_ _reference_start_2 Samuel 18:03_reference_end_ _reference_start_2 Samuel 18:06_reference_end_ _reference_start_2 Samuel 18:16_reference_end_ _reference_start_2 Samuel 19:034_reference_end_ _reference_start_2 Samuel 23:10_reference_end_ _reference_start_2 Samuel 23:11_reference_end_ _reference_start_2 Samuel 2:30_reference_end_ _reference_start_2 Samuel 3:35_reference_end_ _reference_start_2 Samuel 15:12_reference_end_ _reference_start_2 Samuel 15:17_reference_end_ _reference_start_2 Samuel 15:23_reference_end_ _reference_start_2 Samuel 15:24_reference_end_ _reference_start_2 Samuel 15:30_reference_end_ _reference_start_2 Samuel 16:06_reference_end_ _reference_start_2 Samuel 16:14_reference_end_ _reference_start_2 Samuel 16:15_reference_end_ _reference_start_2 Samuel 16:18_reference_end_ _reference_start_2 Samuel 17:1_reference_end_ _reference_start_2 Samuel 17:03_reference_end_ _reference_start_2 Samuel 17:29_reference_end_ _reference_start_2 Samuel 18:05_reference_end_ _reference_start_2 Samuel 19:40_reference_end_ _reference_start_2 Samuel 1:12_reference_end_ _reference_start_2 Samuel 6:19_reference_end_ _reference_start_2 Samuel 22:28_reference_end_ _reference_start_2 Samuel 12:31_reference_end_ _reference_start_2 Samuel 20:22_reference_end_ _reference_start_2 Samuel 3:18_reference_end_ _reference_start_2 Samuel 5:02_reference_end_ _reference_start_2 Samuel 5:12_reference_end_ _reference_start_2 Samuel 6:21_reference_end_ _reference_start_2 Samuel 7:1_reference_end_ _reference_start_2 Samuel 14:13_reference_end_ _reference_start_2 Samuel 3:32_reference_end_ _reference_start_2 Samuel 3:34_reference_end_ _reference_start_2 Samuel 3:36_reference_end_ _reference_start_2 Samuel 3:37_reference_end_ _reference_start_2 Samuel 6:18_reference_end_ _reference_start_2 Samuel 6:19_reference_end_ _reference_start_2 Samuel 10:12_reference_end_ _reference_start_2 Samuel 14:15_reference_end_ _reference_start_2 Samuel 17:03_reference_end_ _reference_start_2 Samuel 19:03_reference_end_ _reference_start_2 Samuel 19:04_reference_end_ _reference_start_2 Samuel 19:09_reference_end_ _reference_start_2 Samuel 19:10_reference_end_ _reference_start_2 Samuel 22:44_reference_end_ _reference_start_2 Samuel 22:48_reference_end_ _reference_start_1 Kings 5:30_reference_end_ _reference_start_1 Kings 9:20_reference_end_ _reference_start_1 Kings 9:23_reference_end_ _reference_start_1 Kings 9:23_r eference_end_ _reference_start_1 Kings 3:09_reference_end_ _reference_start_1 Kings 5:21_reference_end_ _reference_start_1 Kings 6:13_reference_end_ _reference_start_1 Kings 8:1_reference_end_ _reference_start_1 Kings 1:40_reference_end_ _reference_start_1 Kings 3:02_reference_end_ _reference_start_1 Kings 5:14_reference_end_ _reference_start_1 Kings 8:43_reference_end_ _reference_start_1 Kings 8:5_reference_end_ _reference_start_1 Kings 8:60_reference_end_ _reference_start_1 Kings 9:07_reference_end_ _reference_start_1 Chronicles 16:08_reference_end_ _reference_start_1 Chronicles 16:24_reference_end_ _reference_start_1 Chronicles 19:13_reference_end_ _reference_start_1 Chronicles 20:03_reference_end_ _reference_start_1 Chronicles 21:02_reference_end_ _reference_start_1 Chronicles 20:03_reference_end_ _reference_start_1 Chronicles 16:02_reference_end_ _reference_start_1 Chronicles 16:36_reference_end_ _reference_start_1 Chronicles 16:43_reference_end_ _reference_start_1 Chronicles 17:1_reference_end_ _ref erence_start_1 Chronicles 18:14_reference_end_ _reference_start_1 Chronicles 21:17_reference_end_ _reference_start_1 Chronicles 21:22_reference_end_ _reference_start_1 Chronicles 23:25_reference_end_ _reference_start_1 Chronicles 29:09_reference_end_ _reference_start_1 Chronicles 29:117_reference_end_ _reference_start_1 Chronicles 29:14_reference_end_ _reference_start_1 Chronicles 29:18_reference_end_ _reference_start_1 Chronicles 16:20_reference_end_ _reference_start_1 Chronicles 16:26_reference_end_ _reference_start_1 Chronicles 16:28_reference_end_ _reference_start_1 Chronicles 21:05_reference_end_ _reference_start_2 Chronicles 7:1_reference_end_ _reference_start_2 Chronicles 7:20_reference_end_ _reference_start_Esther 1:11_reference_end_ _reference_start_Esther 1:16_reference_end_ _reference_start_Esther 4:11_reference_end_ _reference_start_Esther 1:05_reference_end_ _reference_start_Esther 10:03_reference_end_ _reference_start_Esther 1:22_reference_end_ _reference_start_Esther 2:10_reference_end_ _re ference_start_Esther 2:20_reference_end_ _reference_start_Esther 3:06_reference_end_ _reference_start_Esther 3:08_reference_end_ _reference_start_Esther 3:11_reference_end_ _reference_start_Esther 3:12_reference_end_ _reference_start_Esther 3:14_reference_end_ _reference_start_Esther 4:08_reference_end_ _reference_start_Esther 7:03_reference_end_ _reference_start_Esther 7:04_reference_end_ _reference_start_Esther 8:06_reference_end_ _reference_start_Esther 8:09_reference_end_ _reference_start_Esther 8:13_reference_end_ _reference_start_Esther 8:17_reference_end_ _reference_start_Psalms 57:10_reference_end_ _reference_start_Psalms 3:07_reference_end_ _reference_start_Psalms 3:09_reference_end_ _reference_start_Psalms 59:12_reference_end_ _reference_start_Psalms 60:05_reference_end_ _reference_start_Psalms 110:03_reference_end_ _reference_start_Psalms 125:02_reference_end_ _reference_start_Psalms 144:15_reference_end_ _reference_start_Psalms 56:08_reference_end_ _reference_start_Psalms 144:02_reference_end_ _reference_start_Proverbs 29:02_reference_end_ _reference_start_Daniel 9:06_reference_end_ _reference_start_Daniel 11:15_reference_end_ _reference_start_Daniel 11:32_reference_end_ _reference_start_Daniel 7:27_reference_end_ _reference_start_Daniel 8:24_reference_end_ _reference_start_Daniel 9:15_reference_end_ _reference_start_Daniel 9:16_reference_end_ _reference_start_Daniel 9:19_reference_end_ _reference_start_Daniel 9:20_reference_end_ _reference_start_Daniel 9:24_reference_end_ _reference_start_Daniel 10:14_reference_end_ _reference_start_Daniel 11:33_reference_end_ _reference_start_Daniel 12:07_reference_end_ _reference_start_Daniel 2:44_reference_end_ _reference_start_Daniel 3:07_reference_end_ _reference_start_Daniel 3:31_reference_end_ _reference_start_Daniel 5:19_reference_end_ _reference_start_Daniel 6:26_reference_end_ _reference_start_Daniel 7:14_reference_end_ _reference_start_Daniel 9:26_reference_end_ _reference_start_Daniel 11:15_reference_end_ _reference_start_Jonah 1:08_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5( J I  H@ G% F! E D C B A# @" ? > = < ; :  9  8  7 6 5  4  3 2 " 1 0! / . - , + * ) ( ' & %  $ # " !                                  C~qdWJ=0# zm`SF9,vi\OB5(            #        "           ~  }  |  {  z y  x  w  v  u  t  s  r  q  p  o  n  m  l  k  j  i  h g  f  e  d  c  b  a  `  _ ^ ]  \  [  Z  Y  X  W  V  U  T  S  R  Q  P  O N  M  L  K  C~qdWJ=0# zm`SF9,vi\OB5( P  O u N  M  L  K  J  I  H + G $ F  E  D  C  B  A  @  ?  > < =  < + ;  :  9 ( 8  7  6  5  4  3  2  1  0 0 / , .  -  ,  +  *  )  ( '  &  % % $ $ # " "  !                       (                 C~qdWJ=0# zm`SF8+tgZM@3&                    ,    !       ~  }  |  { z y x  w  v u t8 s r} qn p< o; n m l9 k j i h g f e d c b a ` _ ^ ] \  [ Z Y X W V U  T  S  R  Q th God \cmf sans blame, en bonne relation avec Dieu \cme perfection of God and his law \cmf perfection de Dieu et sa loi \cme without blemish or defect, healthy \cmf sans défaut, en bonne santé _reference_start_Genesis 6:09_reference_end_ _reference_start_Genesis 17:01_reference_end_ _reference_start_Exodus 12:05_reference_end_ _reference_start_Leviticus 5:15_reference_end_ _reference_start_Leviticus 5:18_reference_end_ _reference_start_Leviticus 5:25_reference_end_ _reference_start_Leviticus 22:21_reference_end_ _reference_start_Deuteronomy 18:13_reference_end_ _reference_start_2 Samuel 22:24_reference_end_ _reference_start_2 Samuel 22:26_reference_end_ _reference_start_2 Samuel 22:33_reference_end_ _reference_start_2 Samuel 22:26_reference_end_ _reference_start_2 Samuel 22:31_reference_end_ _reference_start_Psalms 18:31_reference_end_ _reference_start_Psalms 19:08_reference_end_ hX-- perverse (to be)perverse (to be)Hebrew: עָקַשׁ \f perverse, être perverse \cme be perverted, twisted \cmf perverse, tordu _reference_start_Proverbs 10:09_reference_end_ _reference_start_Proverbs 28:18_reference_end_fW)perfectperfectHebrew: תָּמִים \f sans défaut \cme blameless, in right relationship wi C~qdWJ=0# zm`SF9,vi\OB5( V  U ) T # S " R  Q  P  O  N  M  L  K  J $ I  H  G # F ! E  D 2 C  B  A @  ? > =# <1 ;  : 9N= 8 7 6  5  43 3 27 1 0 /# .  - ,! + * ) (! ' & % $  # " ! e              !      1Y;perverseperverseHebrew: תַּהְפּוּכָה \f pervers \cme perversity, slander \cmf pervers, calomnie \cme twisted, perverted \cmf perverse, tordu _reference_start_Deuteronomy 32:05_reference_end_ _reference_start_2 Samuel 22:27_reference_end_ _reference_start_Psalms 101:04_reference_end_ _reference_start_Proverbs 2:12_reference_end_ _reference_start_Proverbs 2:14_reference_end_ _reference_start_Proverbs 6:14_reference_end_ _reference_start_Proverbs 10:31_reference_end_ _reference_start_Proverbs 10:32_reference_end_ _reference_start_Proverbs 16:28_reference_end_ _reference_start_Proverbs 16:30_reference_end_ _reference_start_Proverbs 23:33_reference_end_ _reference_start_Proverbs 2:15_reference_end_ _reference_start_Proverbs 8:08_reference_end_ _reference_start_Proverbs 28:06_reference_end_ mm[##qplan (evil)plan (evil)Hebrew: זִמָּה \f plan (mauvais) \cme evil plan, wicked act \cmf projet mauais, action néfaste _reference_start_Proverbs 10:23_reference_end_ _reference_start_Proverbs 21:27_reference_end_ _reference_start_Proverbs 24:09_reference_end_yZGpit (the)pit (the)Hebrew: שַׁחַת \f la fosse \cme hole in the ground as trap \cmf un trou qui sert comme piège \cme where dead people are \cmf lieu où demeurent les morts _reference_start_Job 33:28_reference_end_ _reference_start_Psalms 7:16_reference_end_ _reference_start_Psalms 9:16_reference_end_ _reference_start_Psalms 35:07_reference_end_ _reference_start_Psalms 16:10_reference_end_ _reference_start_Psalms 30:10_reference_end_ _reference_start_Psalms 55:24_reference_end_ _reference_start_Proverbs 26:17_reference_end_ _reference_start_Isaiah 51:14_reference_end_ _reference_start_Jonah 2:07_reference_end_ A AU_presidentpresidentHebrew: סָרְכִין \f chef \cme government offical in Persia \cmf fonctionaire en Perse _reference_start_Daniel 6:03_reference_end_ _reference_start_Daniel 6:04_reference_end_ _reference_start_Daniel 6:05_reference_end_ _reference_start_Daniel 6:07_reference_end_ _reference_start_Daniel 6:07_reference_end_t^##5praise (to)praise (to)Hebrew: .הָלַל \f louer \cme boast about God \cmf venter Dieu \cme1]11praise, adorn (to)praise, adorn (to)Hebrew: נָוָה \f louer, orner \cme adorn (with praise) \cmf orner (avec louanage) _reference_start_Exodus 15:02_reference_end_>\AA power, ark of the covenantpower, ark of the covenantHebrew: עֹז \f pouvoir, coffre de l'alliance \cme the ark of the covenant; God's power manifested in connection with the ark \cmf coffre de l'alliance; le pouvoir de Dieu manifesté en relation avec le coffre _reference_start_Psalms 78:61_reference_end_ boast about self \cmf se venter \cme commend someone \cmf louer une personne \cme confess sins \cmf confesser ses péchés \cme fame, glory of person or thing \cmf gloire, célébrité d'une personne ou une chose \cme praise God \cmf louer Dieu \cme praise God for his deeds/salvation \cmf louer Dieu pour ses faites, son salult \cme praise good qualities of thing or person \cmf louer les bonnes qualités de qqn ou qqch \cme praise, thank a person \cmf louer, remercier une personne \cme praise, thank God \cmf louer, remercier Dieu \cme praise, thank God or gods (Arm) \cmf louer, remercier Dieu ou dieux (Arm) \cme praiseworthy deeds of God \cmf les actes de Dieu qui doivent être glorifiées \cme prasie God \cmf louer Dieu \cme thank God \cmf remercier Dieu _reference_start_Genesis 12:15_reference_end_ _reference_start_Genesis 49:08_reference_end_ _reference_start_Genesis 29:35_reference_end_ _reference_start_Exodus 15:11_reference_end_ _reference_start_Leviticus 5:05_reference_end_ _reference_start_Deuteronomy 10:21_reference_end_ _reference_start_Deuteronomy 26:19_reference_end_ _reference_start_2 Samuel 22:04_reference_end_ _reference_start_2 Samuel 14:25_reference_end_ _reference_start_2 Samuel 22:50_reference_end_ _reference_start_1 Kings 20:11_reference_end_ _reference_start_1 Kings 8:33_reference_end_ _reference_start_1 Kings 8:35_reference_end_ _reference_start_1 Chronicles 16:04_reference_end_ _reference_start_1 Chronicles 16:25_reference_end_ _reference_start_1 Chronicles 16:36_reference_end_ _reference_start_1 Chronicles 23:05_reference_end_ _reference_start_1 Chronicles 23:30_reference_end_ _reference_start_1 Chronicles 25:03_reference_end_ _reference_start_1 Chronicles 29:13_reference_end_ _reference_start_1 Chronicles 16:10_reference_end_ _reference_start_1 Chronicles 16:04_reference_end_ _reference_start_1 Chronicles 16:07_reference_end_ _reference_start_1 Chronicles 16:08_reference_end_ _reference_start_1 Chronicles 16:34_reference_end_ _reference_start_1 Chronicles 16:35_reference_end_ _reference_start_1 Chronicles 16:41_reference_end_ _reference_start_1 Chronicles 1:1_reference_end_ _reference_start_1 Chronicles 25:03_reference_end_ _reference_start_1 Chronicles 29:13_reference_end_ _reference_start_1 Chronicles 16:35_reference_end_ _reference_start_2 Chronicles 6:24_reference_end_ _reference_start_2 Chronicles 6:26_reference_end_ _reference_start_2 Chronicles 7:06_reference_end_ _reference_start_2 Chronicles 7:03_reference_end_ _reference_start_2 Chronicles 7:06_reference_end_ _reference_start_2 Chronicles 20:22_reference_end_ _reference_start_2 Chronicles 30:22_reference_end_ _reference_start_Nehemiah 1:06_reference_end_ _reference_start_Nehemiah 12:46_reference_end_ _reference_start_Psalms 34:03_reference_end_ _reference_start_Psalms 63:12_reference_end_ _reference_start_Psalms 52:03_reference_end_ _reference_start_Psalms 32:05_reference_end_ _reference_start_Psalms 63:06_reference_end_ _reference_start_Psalms 56:05_reference_end_ _reference_start_Psalms 56:11_reference_end_ _reference_start_Psalms 18:50_reference_end_ _reference_start_Psalms 28:07_reference_end_ _reference_start_Psalms 30:05_reference_end_ _reference_start_Psalms 30:10_reference_end_ _reference_start_Psalms 30:13_reference_end_ _reference_start_Psalms 34:02_reference_end_ _reference_start_Psalms 51:17_reference_end_ _reference_start_Psalms 52:11_reference_end_ _reference_start_Psalms 54:08_reference_end_ _reference_start_Psalms 57:10_reference_end_ _reference_start_Psalms 71:06_reference_end_ _reference_start_Psalms 71:08_reference_end_ _reference_start_Psalms 71:14_reference_end_ _reference_start_Psalms 71:22_reference_end_ _reference_start_Psalms 139:14_reference_end_ _reference_start_Psalms 142:08_reference_end_ _reference_start_Psalms 63:04_reference_end_ _reference_start_Psalms 117:01_reference_end_ _reference_start_Psalms 145:04_reference_end_ _reference_start_Psalms 147:12_reference_end_ _reference_start_Psalms 18:04_reference_end_ _reference_start_Psalms 69:31_reference_end_ _reference_start_Proverbs 20:14_reference_end_ _reference_start_Proverbs 27:01_reference_end_ _reference_start_Proverbs 28:13_reference_end_ _reference_start_Proverbs 27:02_reference_end_ _reference_start_Proverbs 31:28_reference_end_ _reference_start_Proverbs 31:30_reference_end_ _reference_start_Proverbs 31:31_reference_end_ _reference_start_Ecclesiastes 4:02_reference_end_ _reference_start_Ecclesiastes 8:15_reference_end_ _reference_start_Isaiah 45:25_reference_end_ _reference_start_Isaiah 62:07_reference_end_ _reference_start_Jeremiah 49:25_reference_end_ _reference_start_Daniel 9:03_reference_end_ _reference_start_Daniel 9:04_reference_end_ _reference_start_Daniel 9:20_reference_end_ _reference_start_Daniel 2:23_reference_end_ _reference_start_Daniel 2:23_reference_end_ _reference_start_Daniel 4:31_reference_end_ _reference_start_Daniel 4:34_reference_end_ _reference_start_Daniel 5:04_reference_end_ _reference_start_Daniel 5:23_reference_end_ C~qdWJ=0# zm`SE7*reXK>1$        "          1 > -          E ~ } | {u z? y x wG vG uG tG s9 r6 q4 p3 o" n m l k j2 i8 h8 g? f  e4 d? c" b . a ` _ ^ ] \ [ Z Y # X  W  b`)prideprideHebrew: גָּאֹון \f orgeuil \cme area of lush vegetation, jungle \cmf région de végétation, jungle \cme God's power in saving \cmf le pouvoir de Dieu en son salut \cme majesty, excellence, glory \cmf majesté, excellence, gloire \cme pride \cmf orgeuil _reference_start_Exodus 15:07_reference_end_ _reference_start_Leviticus 26:19_reference_end_ _reference_start_Job 37:04_reference_end_ _reference_start_Psalms 47:05_reference_end_ _reference_start_Psalms 59:13_reference_end_ _reference_start_Proverbs 8:13_reference_end_ _reference_start_Proverbs 16:18_reference_end_ _reference_start_Isaiah 14:11_reference_end_ _reference_start_Jeremiah 12:05_reference_end_ _reference_start_Jeremiah 49:19_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5( \ # [  Z  Y  X  W  V  U  T  S # R  Q  P  O  N  M  L  K $ J  I  H # G  F  E  D  C  B  A  @  ? > =  < ; : 9 8 7 6 5 4 3 2 1 0 / . - ,/ +/ *. )-2 ()- '> & $ % $ #1 "  !   ; / %   Ga!!_priesthoodpriesthoodHebrew: כְּהֻנָּה \f sacerdoce \cme role or office of being a priest \cmf le rôle ou la position du sacerdoce _reference_start_Exodus 29:09_reference_end_ _reference_start_Joshua 18:07_reference_end_ _reference_start_1 Samuel 2:36_reference_end_ _reference_start_Ezra 2:62_reference_end_ nd_ _reference_start_Exodus 19:06_reference_end_ _reference_start_Exodus 19:22_reference_end_ _reference_start_Exodus 19:24_reference_end_ _reference_start_Numbers 5:06_reference_end_ _reference_start_Numbers 5:08_reference_end_ _reference_start_Numbers 5:10_reference_end_ _reference_start_Numbers 5:12_reference_end_ _reference_start_Numbers 5:13_reference_end_ _reference_start_Numbers 5:16_reference_end_ _reference_start_Numbers 5:18_reference_end_ _reference_start_Numbers 10:08_reference_end_ _reference_start_Deuteronomy 18:01_reference_end_ _reference_start_Deuteronomy 18:03_reference_end_ _reference_start_1 Samuel 5:05_reference_end_ _reference_start_1 Samuel 6:02_reference_end_ _reference_start_1 Samuel 1:03_reference_end_ _reference_start_1 Samuel 2:11_reference_end_ _reference_start_1 Samuel 2:13_reference_end_ _reference_start_1 Samuel 2:14_reference_end_ _reference_start_1 Samuel 2:15_reference_end_ _reference_start_1 Samuel 2:28_reference_end_ _reference_start_1 Samuel 2:35_reference_end_ _refer!ence_start_1 Samuel 14:03_reference_end_ _reference_start_1 Samuel 14:19_reference_end_ _reference_start_1 Samuel 14:36_reference_end_ _reference_start_1 Samuel 21:1_reference_end_ _reference_start_1 Samuel 22:1_reference_end_ _reference_start_1 Samuel 23:09_reference_end_ _reference_start_1 Samuel 30:07_reference_end_ _reference_start_2 Samuel 15:27_reference_end_ _reference_start_2 Samuel 8:17_reference_end_ _reference_start_2 Samuel 8:18_reference_end_ _reference_start_2 Samuel 15:35_reference_end_ _reference_start_2 Samuel 17:15_reference_end_ _reference_start_2 Samuel 19:12_reference_end_ _reference_start_2 Samuel 20:25_reference_end_ _reference_start_2 Samuel 20:26_reference_end_ _reference_start_1 Kings 1:1_reference_end_ _reference_start_1 Kings 2:22_reference_end_ _reference_start_1 Kings 2:26_reference_end_ _reference_start_1 Kings 2:27_reference_end_ _reference_start_1 Kings 2:35_reference_end_ _reference_start_1 Kings 4:02_reference_end_ _reference_start_1 Kings 4:04_reference_end_ _reference_start_1 Kings 8:1_reference_end_ _reference_start_1 Kings 4:05_reference_end_ _reference_start_1 Chronicles 9:02_reference_end_ _reference_start_1 Chronicles 23:02_reference_end_ _reference_start_1 Chronicles 24:06_reference_end_ _reference_start_1 Chronicles 24:31_reference_end_ _reference_start_1 Chronicles 28:13_reference_end_ _reference_start_1 Chronicles 28:21_reference_end_ _reference_start_1 Chronicles 9:10_reference_end_ _reference_start_1 Chronicles 9:30_reference_end_ _reference_start_1 Chronicles 16:06_reference_end_ _reference_start_1 Chronicles 16:39_reference_end_ _reference_start_1 Chronicles 18:16_reference_end_ _reference_start_1 Chronicles 24:06_reference_end_ _reference_start_1 Chronicles 29:22_reference_end_ _reference_start_2 Chronicles 7:02_reference_end_ _reference_start_2 Chronicles 7:06_reference_end_ _reference_start_Psalms 78:64_reference_end_ _reference_start_Psalms 132:09_reference_end_ _reference_start_Psalms 132:16_reference_end_ _reference_start_Psalms 110:04_reference_end_ cc bspriestpriestHebrew: כֹהֵן \f sacrificateur \cme Aaronic priest in Israel \cmf sacrificateur aaronique en Israël \cme Levitical priests in Israel \cmf sacrificateur lévitique en Israël \cme non-Jewish, pagan \cmf prêtre non-juif, paiën \cme priest of God in Israel \cmf sacrificateur de Dieu en Israël \cme priest of God, and king/leader of a nation \cmf sacrificateur de Dieu, et roi/chef d'une nation _reference_start_Genesis 41:45_reference_end_ _reference_start_Genesis 45:50_reference_end_ _reference_start_Genesis 46:20_reference_end_ _reference_start_Genesis 47:22_reference_end_ _reference_start_Genesis 47:26_reference_end_ _reference_start_Genesis 14:18_reference_end_ _reference_start_Exodus 2:16_reference_end_ _reference_start_Exodus 28:01_reference_end_ _reference_start_Exodus 2:16_reference_end_ _reference_start_Exodus 3:01_reference_end_ _reference_start_Exodus 18:01_reference_e C~qdWJ=0# xk^QD7*tgZM@3&          &            7                    / ) ) ) ( ( ( ( ( ( ~( }( |( {' z' y' x' w%$ v u t sn r q pN@ o n m  l  k  j ' i  h  g f  e  d  c  b  a  `  _  ^  ] %Genesis 39:01_reference_end_ _reference_start_Genesis 39:21_reference_end_ _reference_start_Genesis 39:22_reference_end_ _reference_start_Genesis 39:23_reference_end_ _reference_start_Genesis 40:02_reference_end_ _reference_start_Genesis 40:03_reference_end_ _reference_start_Genesis 40:04_reference_end_ _reference_start_Genesis 40:09_reference_end_ _reference_start_Genesis 40:16_reference_end_ _reference_start_Genesis 40:20_reference_end_ _reference_start_Genesis 40:21_reference_end_ _reference_start_Genesis 40:22_reference_end_ _reference_start_Genesis 40:23_reference_end_ _reference_start_Genesis 41:09_reference_end_ _reference_start_Genesis 41:10_reference_end_ _reference_start_Genesis 41:12_reference_end_ _reference_start_Genesis 47:06_reference_end_ _reference_start_Genesis 12:15_reference_end_ _reference_start_Exodus 2:14_reference_end_ _reference_start_Exodus 18:21_reference_end_ _reference_start_Exodus 18:25_reference_end_ _reference_start_Exodus 1:11_reference_end_ _reference_start_Numbers 21:18_&reference_end_ _reference_start_1 Samuel 22:02_reference_end_ _reference_start_1 Samuel 29:03_reference_end_ _reference_start_1 Samuel 29:04_reference_end_ _reference_start_1 Samuel 29:09_reference_end_ _reference_start_1 Samuel 8:13_reference_end_ _reference_start_1 Samuel 17:18_reference_end_ _reference_start_1 Samuel 17:55_reference_end_ _reference_start_1 Samuel 18:30_reference_end_ _reference_start_1 Samuel 22:07_reference_end_ _reference_start_1 Samuel 26:05_reference_end_ _reference_start_2 Samuel 4:02_reference_end_ _reference_start_2 Samuel 2:08_reference_end_ _reference_start_2 Samuel 3:38_reference_end_ _reference_start_2 Samuel 10:16_reference_end_ _reference_start_2 Samuel 10:18_reference_end_ _reference_start_2 Samuel 18:01_reference_end_ _reference_start_2 Samuel 18:05_reference_end_ _reference_start_2 Samuel 19:07_reference_end_ _reference_start_2 Samuel 19:14_reference_end_ _reference_start_2 Samuel 23:19_reference_end_ _reference_start_2 Samuel 10:03_reference_end_ _reference_start_1 Kin'gs 11:24_reference_end_ _reference_start_1 Kings 22:26_reference_end_ _reference_start_1 Kings 1:19_reference_end_ _reference_start_1 Kings 1:25_reference_end_ _reference_start_1 Kings 2:05_reference_end_ _reference_start_1 Kings 2:32_reference_end_ _reference_start_1 Kings 9:22_reference_end_ _reference_start_1 Kings 11:15_reference_end_ _reference_start_1 Kings 11:21_reference_end_ _reference_start_1 Kings 5:30_reference_end_ _reference_start_1 Kings 9:23_reference_end_ _reference_start_1 Kings 4:02_reference_end_ _reference_start_2 Kings 10:01_reference_end_ _reference_start_2 Kings 9:22_reference_end_ _reference_start_1 Chronicles 27:22_reference_end_ _reference_start_1 Chronicles 28:01_reference_end_ _reference_start_1 Chronicles 29:06_reference_end_ _reference_start_1 Chronicles 21:02_reference_end_ _reference_start_1 Chronicles 26:26_reference_end_ _reference_start_1 Chronicles 27:01_reference_end_ _reference_start_1 Chronicles 27:03_reference_end_ _reference_start_1 Chronicles 27:05_reference_end_( _reference_start_1 Chronicles 27:08_reference_end_ _reference_start_1 Chronicles 28:01_reference_end_ _reference_start_1 Chronicles 29:06_reference_end_ _reference_start_1 Chronicles 27:31_reference_end_ _reference_start_1 Chronicles 22:17_reference_end_ _reference_start_1 Chronicles 23:02_reference_end_ _reference_start_1 Chronicles 24:06_reference_end_ _reference_start_1 Chronicles 27:34_reference_end_ _reference_start_1 Chronicles 28:01_reference_end_ _reference_start_1 Chronicles 28:21_reference_end_ _reference_start_1 Chronicles 29:24_reference_end_ _reference_start_1 Chronicles 24:05_reference_end_ _reference_start_2 Chronicles 18:25_reference_end_ _reference_start_Nehemiah 4:10_reference_end_ _reference_start_Esther 1:03_reference_end_ _reference_start_Esther 8:09_reference_end_ _reference_start_Esther 1:03_reference_end_ _reference_start_Esther 1:11_reference_end_ _reference_start_Esther 1:14_reference_end_ _reference_start_Esther 1:16_reference_end_ _reference_start_Esther 1:18_reference_end_ _reference_start_Esther 1:21_reference_end_ _reference_start_Esther 2:18_reference_end_ _reference_start_Esther 3:01_reference_end_ _reference_start_Esther 3:12_reference_end_ _reference_start_Esther 5:11_reference_end_ _reference_start_Esther 6:09_reference_end_ _reference_start_Psalms 119:161_reference_end_ _reference_start_Psalms 148:11_reference_end_ _reference_start_Daniel 11:05_reference_end_ _reference_start_Daniel 1:18_reference_end_ _reference_start_Daniel 8:11_reference_end_ _reference_start_Daniel 10:13_reference_end_ _reference_start_Daniel 10:20_reference_end_ _reference_start_Daniel 11:21_reference_end_ _reference_start_Daniel 12:01_reference_end_ _reference_start_Daniel 1:07_reference_end_ _reference_start_Daniel 1:08_reference_end_ _reference_start_Daniel 1:09_reference_end_ _reference_start_Daniel 1:10_reference_end_ _reference_start_Daniel 1:11_reference_end_ _reference_start_Daniel 9:06_reference_end_ _reference_start_Daniel 9:08_reference_end_ _reference_start_Daniel 11:05_reference_end_ c''eprince, rulerprince, rulerHebrew: שַׂר \f ministre, souverain \cme chief of tribe, of group \cmf chef du tribu, du group \cme city council member, cheif of city \cmf membre du conseil municipal, chef de ville \cme magistrate, judge of a district \cmf juge, magistrat d'une région \cme military officer \cmf officier militaire \cme person in a position of authority \cmf personne en position d'autorité \cme powerful spiritual authorities \cmf puissants êtres spirituels \cme prince, noble, official \cmf haut fonctionaire, prince, noble \cme religious official \cmf officier réligieux _reference_start_Genesis 21:22_reference_end_ _reference_start_Genesis 21:32_reference_end_ _reference_start_Genesis 26:26_reference_end_ _reference_start_Genesis 37:36_reference_end_ _reference_start_$ C~qdWJ=0# zm`SF9,vi\OA3& b a ` _ ^ ]  \  [  Z Y X W  V Uw T S R Q P O N M L K J I H G F E  D  C  B  A " @  ?  >  =  <  ;  :  9  8  7  6  5  4  3  2  1  0  /  .  -  ,  +  *  )  (  '  &  %  $  #  "  !    C~qdWJ=0# zm`SF9,vi\OB5( % $ #  "  !  3                               "           "   A     ~  }  |  {  z  y " x  w  v  u  t  s  r  q  p  o  n  m, l k j i" h g f e  d  c raël _reference_start_Genesis 17:20_reference_end_ _reference_start_Genesis 23:06_reference_end_ _reference_start_Genesis 25:16_reference_end_ _reference_start_Genesis 34:02_reference_end_ _reference_start_Exodus 16:22_reference_end_ _reference_start_Exodus 22:27_reference_end_ _reference_start_Numbers 1:16_reference_end_ _reference_start_Numbers 1:44_reference_end_ _reference_start_Numbers 10:04_reference_end_ _reference_start_1 Samuel 5:08_reference_end_ _reference_start_1 Samuel 5:08_reference_end_ _reference_start_1 Samuel 6:04_reference_end_ _reference_start_1 Samuel 6:12_reference_end_ _reference_start_1 Samuel 6:16_reference_end_ _reference_start_1 Samuel 6:18_reference_end_ _reference_start_1 Samuel 7:07_reference_end_ _reference_start_1 Samuel 29:02_reference_end_ _reference_start_1 Samuel 29:06_reference_end_ _reference_start_1 Samuel 29:07_reference_end_ _reference_start_1 Kings 11:34_reference_end_ _reference_start_1 Kings 8:01_reference_end_ _reference_start_1 Chronicles 12:19_reference_end_ We''sprophesy (to)prophesy (to)Hebrew: נָבָא \f prophétiser \cme fortell the future \cmf prophétiser _reference_start_1 Kings 22:08_reference_end_ _reference_start_1 Kings 22:10_reference_end_ _reference_start_1 Kings 22:12_reference_end_ _reference_start_1 Kings 22:18_reference_end_ _reference_start_Jeremiah 20:06_reference_end_od?princeprinceHebrew: נָשִׂיא \f prince \cme chief man, leader of a group of people \cmf homme chef, chef d'un group \cme ruler of the Philistines \cmf chef des Philestains \cme tribal chiefs of Israel \cmf chefs des tribus d'Is, Nf!!mprophetessprophetessHebrew: נְבִיאָה \f prophétesse \cme woman who associates with the prophets \cmf femme qui associent avec les prophètes \cme woman who give a word from God \cmf femme qui donne la parole de Dieu \cme woman with gift of writing songs \cmf femme douée de composer des chançons _reference_start_Exodus 15:20_reference_end_ _reference_start_Jude 4:04_reference_end_ _reference_start_2 Kings 22:14_reference_end_ _reference_start_2 Chronicles 34:22_reference_end_ _reference_start_Nehemiah 6:14_reference_end_ _reference_start_Isaiah 8:03_reference_end_rence_start_1 Samuel 9:09_reference_end_ _reference_start_1 Samuel 10:05_reference_end_ _reference_start_1 Samuel 10:10_reference_end_ _reference_start_1 Samuel 10:11_reference_end_ _reference_start_1 Samuel 10:12_reference_end_ _reference_start_1 Samuel 19:20_reference_end_ _reference_start_1 Samuel 19:24_reference_end_ _reference_start_1 Samuel 22:05_reference_end_ _reference_start_1 Samuel 28:06_reference_end_ _reference_start_1 Samuel 28:15_reference_end_ _reference_start_2 Samuel 7:02_reference_end_ _reference_start_2 Samuel 12:25_reference_end_ _reference_start_1 Kings 1:1_reference_end_ _reference_start_1 Kings 11:29_reference_end_ _reference_start_1 Chronicles 16:22_reference_end_ _reference_start_1 Chronicles 17:01_reference_end_ _reference_start_1 Chronicles 29:29_reference_end_ _reference_start_Psalms 51:02_reference_end_ _reference_start_Daniel 9:24_reference_end_ _reference_start_Daniel 9:02_reference_end_ _reference_start_Daniel 9:06_reference_end_ _reference_start_Daniel 9:10_reference_end_ qg?prophetprophetHebrew: נָבִיא \f prophète \cme books of teachings of prophets \cmf livres d'enseignement des prophètes de l'ancien testament \cme false prophet, speaks without God's direction or for other gods \cmf faux prophéte - parle sans autorisation de Dieu ou pour autres dieux \cme one speaking for God in an ecstatic state \cmf qqn qui parle pour Dieu en état d'extasie \cme one who speaks for God or another person \cmf qqn qui parle pour Dieu ou une autre personne _reference_start_Genesis 20:07_reference_end_ _reference_start_Exodus 7:01_reference_end_ _reference_start_Numbers 11:29_reference_end_ _reference_start_Deuteronomy 18:20_reference_end_ _reference_start_Deuteronomy 18:15_reference_end_ _reference_start_Deuteronomy 18:18_reference_end_ _reference_start_Deuteronomy 19:22_reference_end_ _reference_start_Deuteronomy 34:10_reference_end_ _refe/reference_end_ _reference_start_Deuteronomy 28:37_reference_end_ _reference_start_1 Samuel 10:02_reference_end_ _reference_start_1 Samuel 24:14_reference_end_ _reference_start_1 Kings 5:12_reference_end_ _reference_start_1 Kings 9:07_reference_end_ _reference_start_2 Chronicles 7:20_reference_end_ _reference_start_Ezra 12:23_reference_end_ _reference_start_Ezra 17:02_reference_end_ _reference_start_Ezra 21:05_reference_end_ _reference_start_Ezra 24:03_reference_end_ _reference_start_Job 13:12_reference_end_ _reference_start_Psalms 49:05_reference_end_ _reference_start_Psalms 78:02_reference_end_ _reference_start_Psalms 44:15_reference_end_ _reference_start_Proverbs 10:01_reference_end_ _reference_start_Proverbs 25:01_reference_end_ _reference_start_Proverbs 26:07_reference_end_ _reference_start_Proverbs 26:09_reference_end_ _reference_start_Ecclesiastes 12:09_reference_end_ _reference_start_Isaiah 14:04_reference_end_ _reference_start_Micah 2:04_reference_end_ _reference_start_Habakkuk 2:06_reference_end_ thEproverbproverbHebrew: .מָשָׁל \f proverbe \cme brief sentence of popular wisdom \cmf phrase courte de sagesse populaire \cme poem \cmf poème \cme prophetic figure \cmf illustration prophétique \cme sentence with ethical wisdom \cmf phrase de sagaesse moral \cme short narative with symbolic meaning \cmf narratif court avec un sens symolique \cme standing joke, by-word \cmf fable, façon de se moquer de qqn _reference_start_Numbers 24:03_reference_end_ _reference_start_Numbers 24:15_1 C~qdWJ=0# zm`SF9,vi\OB5( h g$ f  e  d  c  b  a  `  _  ^ ] \ [ Z Y X W V U T S R Q P O N M L K J# I  H  G F E D C B A @ ?  >  = <# ;! : 9 8 7 6 5  4, 3N 21 1 0 / . -  , +  *  )  (  '% & hk++ prudent (to be)prudent (to be)Hebrew: שָׂכַל \f prudent (être) \cme act circumspectly,5Ej%%Sprudent (be)prudent (be)Hebrew: עָרֹם \f être prudent \cme be shrewd \cmf être sagasse _reference_start_Proverbs 15:05_reference_end_ _reference_start_Proverbs 19:25_reference_end_7iGprudenceprudenceHebrew: שֶׂכֶל \f prudence \cme insight, understanding \cmf comprehention, perspicacité \cme prudence \cmf prudence _reference_start_Proverbs 3:04_reference_end_ _reference_start_Proverbs 12:08_reference_end_ _reference_start_Proverbs 13:15_reference_end_ _reference_start_Proverbs 16:22_reference_end_ _reference_start_Proverbs 19:11_reference_end_ _reference_start_Proverbs 23:09_reference_end_ _reference_start_Proverbs 1:04_reference_end_ _reference_start_Proverbs 8:05_reference_end_ _reference_start_Proverbs 8:12_reference_end_ prudently \cmf agir d'une manière circonspecte, prudente \cme comprehend, understand \cmf comprendre \cme give attention to, ponder \cmf faire attention, penser \cme give understanding, teach \cmf donner compréhention, enseigner \cme prosper, have success \cmf prosperer, avoir succes _reference_start_Proverbs 10:05_reference_end_ _reference_start_Proverbs 10:19_reference_end_ _reference_start_Proverbs 14:35_reference_end_ _reference_start_Proverbs 15:24_reference_end_ _reference_start_Proverbs 17:02_reference_end_ _reference_start_Proverbs 19:14_reference_end_ _reference_start_Proverbs 1:03_reference_end_ _reference_start_Proverbs 21:16_reference_end_ _reference_start_Proverbs 16:20_reference_end_ _reference_start_Proverbs 21:12_reference_end_ _reference_start_Proverbs 16:23_reference_end_ _reference_start_Proverbs 21:11_reference_end_ _reference_start_Proverbs 17:08_reference_end_ x>marebelrebelHebrew: מָָרַד \f rebeller \cme rebel, revolt against a king \cmf rebeller, revolter contre un roi \cme rebel, revolt against God \cmf rebeller, revolter contre Dieu \cme rebell against parent \cmf rebeller, désobéir les parents \cme revolt against, disobey God \cmf rebeller, désobéir Deiu _reference_start_Genesis 14:04_reference_end_ _reference_start_Numbers 14:09_reference_end_ _reference_start_Numbers 20:10_refere7lqpurepureHebrew: נְקֵא \f pur \cme without impurities \cmf sans impuretés _reference_start_Daniel 7:09_reference_end_nce_end_ _reference_start_Numbers 20:24_reference_end_ _reference_start_Numbers 27:14_reference_end_ _reference_start_Deuteronomy 21:18_reference_end_ _reference_start_Deuteronomy 21:20_reference_end_ _reference_start_Joshua 22:16_reference_end_ _reference_start_Joshua 22:18_reference_end_ _reference_start_1 Samuel 12:14_reference_end_ _reference_start_1 Samuel 12:15_reference_end_ _reference_start_1 Kings 13:21_reference_end_ _reference_start_1 Kings 13:26_reference_end_ _reference_start_2 Kings 18:07_reference_end_ _reference_start_2 Kings 18:20_reference_end_ _reference_start_2 Kings 24:01_reference_end_ _reference_start_2 Kings 24:20_reference_end_ _reference_start_2 Chronicles 36:13_reference_end_ _reference_start_Ezra 2:03_reference_end_ _reference_start_Ezra 20:38_reference_end_ _reference_start_Nehemiah 6:06_reference_end_ _reference_start_Psalms 78:55_reference_end_ _reference_start_Isaiah 36:05_reference_end_ _reference_start_Daniel 9:05_reference_end_ _reference_start_Daniel 9:09_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5( +  *2 )& (%# '* &C % $ # "  !    4 3 0      , + )  k J j          # #      1 0 !  ~ } | { z0 y x w, v! u  t$ s  r  q  p" o! n m  l$ kN7 j i& TT(n))reconcile (to)reconcile (to)Hebrew: רָצָה \f réconciliation \cme accept favorably \cmf accepter favorablement \cme make acceptable \cmf rendre acceptable _reference_start_Genesis 33:10_reference_end_ _reference_start_Leviticus 26:34_reference_end_ _reference_start_1 Samuel 29:04_reference_end_ _reference_start_2 Samuel 24:23_reference_end_ _reference_start_1 Chronicles 29:17_reference_end_ _reference_start_2 Chronicles 36:21_reference_end_ _reference_start_Esther 10:03_reference_end_ _reference_start_Job 33:26_reference_end_ _reference_start_Psalms 44:04_reference_end_ _reference_start_Psalms 1:1_reference_end_ _reference_start_Proverbs 3:12_reference_end_end_ _reference_start_Leviticus 25:49_reference_end_ _reference_start_Leviticus 27:13_reference_end_ _reference_start_Leviticus 27:15_reference_end_ _reference_start_Leviticus 27:19_reference_end_ _reference_start_Leviticus 27:20_reference_end_ _reference_start_Leviticus 27:31_reference_end_ _reference_start_Numbers 35:19_reference_end_ _reference_start_Numbers 35:27_reference_end_ _reference_start_Numbers 5:08_reference_end_ _reference_start_Deuteronomy 19:06_reference_end_ _reference_start_2 Samuel 14:11_reference_end_ _reference_start_1 Kings 16:11_reference_end_ _reference_start_Job 3:05_reference_end_ _reference_start_Psalms 19:15_reference_end_ _reference_start_Psalms 1:1_reference_end_ _reference_start_Psalms 106:10_reference_end_ _reference_start_Psalms 74:02_reference_end_ _reference_start_Psalms 107:02_reference_end_ _reference_start_Proverbs 23:11_reference_end_ _reference_start_Isaiah 41:14_reference_end_ _reference_start_Isaiah 43:01_reference_end_ _reference_start_Isaiah 44:22_reference_end_ Wo##{redeem (to)redeem (to)Hebrew: .גָּאַל \f rédempter \cme act as kinsman, keep something in the family \cmf agir comme parant, garder qqch dans la famille \cme avenge the death of a relative \cmf venger la mort d'un parent \cme God delivers from death and trouble \cmf délivrer de la mort \cme God delivers from slavery and exile \cmf délivrer de l'esclavage et exile \cme kinsman-redeemer \cmf parant-rédempteur \cme pay the value of something \cmf payer la valeur de qqch _reference_start_Genesis 48:16_reference_end_ _reference_start_Exodus 6:06_reference_end_ _reference_start_Exodus 15:13_reference_end_ _reference_start_Exodus 13:13_reference_end_ _reference_start_Leviticus 25:25_reference_end_ _reference_start_Leviticus 25:26_reference_end_ _reference_start_Leviticus 25:33_reference_end_ _reference_start_Leviticus 25:48_reference_: Sq!!repentancerepentanceHebrew: נֹחַם \f répentance \cme repentance, sorrow \cmf chagrin, douleur _reference_start_Hosea 13:14_reference_end_)p!!#redemptionredemptionHebrew: גְּאֻלָּה \f rédempter \cme act of keeping property in the family \cmf action de guarder la patrimoine dans la famille \cme kinsman, relative \cmf un parent _reference_start_Leviticus 25:24_reference_end_ _reference_start_Leviticus 25:26_reference_end_ _reference_start_Leviticus 25:29_reference_end_ _reference_start_Leviticus 25:31_reference_end_ _reference_start_Leviticus 25:32_reference_end_ _reference_start_Leviticus 25:48_reference_end_ _reference_start_Leviticus 25:51_reference_end_ _reference_start_Leviticus 25:52_reference_end_ _reference_start_Jeremiah 32:08_reference_end_ _reference_start_Ezekiel 11:15_reference_end_erence_start_Jude 21:06_reference_end_ _reference_start_1 Samuel 15:11_reference_end_ _reference_start_1 Samuel 15:29_reference_end_ _reference_start_1 Samuel 15:35_reference_end_ _reference_start_2 Samuel 24:16_reference_end_ _reference_start_2 Samuel 10:02_reference_end_ _reference_start_2 Samuel 10:03_reference_end_ _reference_start_2 Samuel 12:24_reference_end_ _reference_start_2 Samuel 13:39_reference_end_ _reference_start_1 Chronicles 21:15_reference_end_ _reference_start_1 Chronicles 7:22_reference_end_ _reference_start_1 Chronicles 19:02_reference_end_ _reference_start_1 Chronicles 19:03_reference_end_ _reference_start_Psalms 110:04_reference_end_ _reference_start_Psalms 23:04_reference_end_ _reference_start_Psalms 119:052_reference_end_ _reference_start_Psalms 71:21_reference_end_ _reference_start_Psalms 90:13_reference_end_ _reference_start_Psalms 135:11_reference_end_ _reference_start_Jonah 3:09_reference_end_ _reference_start_Jonah 3:10_reference_end_ _reference_start_Jonah 4:02_reference_end_ KK)r##repent (to)repent (to)Hebrew: נָחַם \f repentir \cme change one's mind \cmf changer d'avis \cme comfort self or another \cmf conforter qqn ou soit-même \cme have pity, companssion on \cmf avoir pitié pour qqn _reference_start_Genesis 6:06_reference_end_ _reference_start_Genesis 6:07_reference_end_ _reference_start_Genesis 5:29_reference_end_ _reference_start_Genesis 24:67_reference_end_ _reference_start_Genesis 27:42_reference_end_ _reference_start_Genesis 37:35_reference_end_ _reference_start_Genesis 38:12_reference_end_ _reference_start_Genesis 50:21_reference_end_ _reference_start_Exodus 13:17_reference_end_ _reference_start_Exodus 32:12_reference_end_ _ref= C~qdWJ=0# yl_RE8+uh[NA4'  n  m  l  k  j  i  h  gA f e! d c b  a `R _3 ^ ]  \ [& Z, Y X W V U T  S  R Q P O N M L K J I  H  G  F E D C B  A  @  ? >Z =G <w4 ; :n 9  8  7  6  5 ' 4  3  2  1  0 # /  .  -A , sreproofreproofHebrew: תּוֹכַחַה \f réprobation \cme reproof, chiding, discipline \cmf réprobation, gronderie, discipline _reference_start_Proverbs 1:23_reference_end_ _reference_start_Proverbs 3:11_reference_end_ _reference_start_Proverbs 5:12_reference_end_ _reference_start_Proverbs 6:23_reference_end_ _reference_start_Proverbs 10:17_reference_end_ _reference_start_Proverbs 12:01_reference_end_ _reference_start_Proverbs 13:18_reference_end_ _reference_start_Proverbs 15:05_reference_end_ _reference_start_Proverbs 15:10_reference_end_ _reference_start_Proverbs 15:31_reference_end_ _reference_start_Proverbs 15:32_reference_end_ _reference_start_Proverbs 27:05_reference_end_ _reference_start_Proverbs 29:01_reference_end_ _reference_start_Proverbs 29:15_reference_end_ _t%%reprove (to)reprove (to)Hebrew: *יָכַח \f réprimander \cme convict \cmf condamner \cme correct, discipline \cmf corriger, discipliner \cme reprove, chide \cmf réprimander _reference_start_Proverbs 30:06_reference_end_ _reference_start_Proverbs 3:12_reference_end_ _reference_start_Proverbs 9:07_reference_end_ _reference_start_Proverbs 9:08_reference_end_ _reference_start_Proverbs 15:12_reference_end_ _reference_start_Proverbs 19:25_reference_end_ _reference_start_Proverbs 24:25_reference_end_ _reference_start_Proverbs 25:12_reference_end_ _reference_start_Proverbs 28:23_reference_end_ ev''qrighteousnessrighteousnessHebrew: צְדָקָה / צִדְקָה \f justice, droiture \cme aCu++krighteous, justrighteous, justHebrew: צָדַק \f juste \cme be just \cmf être juste \cme declare righteous, justify \cmf declarer juste, justifieé \cme do justice \cmf faire la justice \cme havae a juste cause \cmf avoire une cause juste _reference_start_Genesis 44:16_reference_end_ _reference_start_Genesis 38:26_reference_end_ _reference_start_Exodus 23:07_reference_end_ _reference_start_2 Samuel 15:04_reference_end_ _reference_start_Psalms 19:10_reference_end_ _reference_start_Psalms 51:06_reference_end_ _reference_start_Psalms 82:03_reference_end_ _reference_start_Proverbs 17:15_reference_end_ _reference_start_Daniel 12:03_reference_end_Dcting in a right way, ethically right \cmf action juste, moralement \cme consider, declare righteous \cmf considérer, déclarer juste \cme govern justly, justice \cmf gouverner avec justice \cme governing justly \cmf gouverner avec justice \cme morally right \cmf moralement \cme right, what is owed \cmf droit, ce qui est du \cme righteous acts \cmf des actes justes \cme rightness in a cause \cmf une cause juste \cme vindication \cmf justification \cme what is right, just \cmf ce qui est juste _reference_start_Genesis 15:06_reference_end_ _reference_start_Genesis 18:19_reference_end_ _reference_start_Genesis 30:33_reference_end_ _reference_start_Leviticus 19:15_reference_end_ _reference_start_Jude 5:11_reference_end_ _reference_start_1 Samuel 26:23_reference_end_ _reference_start_1 Samuel 12:07_reference_end_ _reference_start_2 Samuel 22:21_reference_end_ _reference_start_2 Samuel 22:25_reference_end_ _reference_start_2 Samuel 8:15_reference_end_ _reference_start_2 Samuel 19:29_reference_end_ _reference_sEtart_1 Kings 3:06_reference_end_ _reference_start_1 Kings 8:32_reference_end_ _reference_start_1 Kings 10:09_reference_end_ _reference_start_Job 36:03_reference_end_ _reference_start_Job 35:02_reference_end_ _reference_start_Job 6:29_reference_end_ _reference_start_Job 31:06_reference_end_ _reference_start_Psalms 106:03_reference_end_ _reference_start_Psalms 24:05_reference_end_ _reference_start_Psalms 36:11_reference_end_ _reference_start_Psalms 51:15_reference_end_ _reference_start_Psalms 71:02_reference_end_ _reference_start_Psalms 119:121_reference_end_ _reference_start_Psalms 71:15_reference_end_ _reference_start_Psalms 71:16_reference_end_ _reference_start_Psalms 71:19_reference_end_ _reference_start_Psalms 71:24_reference_end_ _reference_start_Psalms 35:27_reference_end_ _reference_start_Psalms 40:10_reference_end_ _reference_start_Psalms 132:09_reference_end_ _reference_start_Psalms 4:06_reference_end_ _reference_start_Psalms 23:03_reference_end_ _reference_start_Proverbs 11:18_reference_end_ _reference_start_Proverbs 14:34_reference_end_ _reference_start_Proverbs 8:18_reference_end_ _reference_start_Proverbs 8:15_reference_end_ _reference_start_Proverbs 25:03_reference_end_ _reference_start_Proverbs 31:09_reference_end_ _reference_start_Proverbs 1:03_reference_end_ _reference_start_Proverbs 2:09_reference_end_ _reference_start_Proverbs 8:08_reference_end_ _reference_start_Proverbs 12:17_reference_end_ _reference_start_Proverbs 16:13_reference_end_ _reference_start_Ecclesiastes 5:07_reference_end_ _reference_start_Isaiah 1:27_reference_end_ _reference_start_Isaiah 5:16_reference_end_ _reference_start_Isaiah 11:04_reference_end_ _reference_start_Isaiah 64:05_reference_end_ _reference_start_Isaiah 62:01_reference_end_ _reference_start_Daniel 9:07_reference_end_ _reference_start_Daniel 9:18_reference_end_ _reference_start_Daniel 9:24_reference_end_ _reference_start_Daniel 9:16_reference_end_ _reference_start_Joel 2:23_reference_end_ C~qdWJ=0#yl_RE8+uh[NA4'  1" 0" /! . - , +" * )  (  '  &  %  $ # "  !                 > @                "      ( # ~G }G |G {G zwy yG x3 w$ v uj t s r# q$ p o  H:27_reference_end_ _reference_start_Exodus 23:07_reference_end_ _reference_start_Exodus 23:08_reference_end_ _reference_start_1 Samuel 24:18_reference_end_ _reference_start_2 Samuel 23:03_reference_end_ _reference_start_2 Samuel 4:11_reference_end_ _reference_start_1 Kings 2:32_reference_end_ _reference_start_1 Kings 8:32_reference_end_ _reference_start_Psalms 32:11_reference_end_ _reference_start_Psalms 34:16_reference_end_ _reference_start_Psalms 142:08_reference_end_ _reference_start_Psalms 1:05_reference_end_ _reference_start_Psalms 1:06_reference_end_ _reference_start_Psalms 33:01_reference_end_ _reference_start_Psalms 34:20_reference_end_ _reference_start_Psalms 34:22_reference_end_ _reference_start_Psalms 52:08_reference_end_ _reference_start_Proverbs 17:15_reference_end_ _reference_start_Proverbs 17:26_reference_end_ _reference_start_Proverbs 18:05_reference_end_ _reference_start_Proverbs 18:17_reference_end_ _reference_start_Proverbs 24:24_reference_end_ _reference_start_Proverbs 25:26_reference_Iend_ _reference_start_Proverbs 29:02_reference_end_ _reference_start_Proverbs 2:20_reference_end_ _reference_start_Proverbs 3:33_reference_end_ _reference_start_Proverbs 4:18_reference_end_ _reference_start_Proverbs 9:09_reference_end_ _reference_start_Proverbs 1:21_reference_end_ _reference_start_Proverbs 10:03_reference_end_ _reference_start_Proverbs 10:06_reference_end_ _reference_start_Proverbs 10:07_reference_end_ _reference_start_Proverbs 10:11_reference_end_ _reference_start_Proverbs 10:16_reference_end_ _reference_start_Proverbs 10:20_reference_end_ _reference_start_Proverbs 10:24_reference_end_ _reference_start_Proverbs 10:25_reference_end_ _reference_start_Proverbs 10:28_reference_end_ _reference_start_Proverbs 10:30_reference_end_ _reference_start_Proverbs 10:31_reference_end_ _reference_start_Proverbs 10:32_reference_end_ _reference_start_Proverbs 11:08_reference_end_ _reference_start_Proverbs 11:09_reference_end_ _reference_start_Proverbs 11:10_reference_end_ _reference_start_Proverbs 11:21_rJeference_end_ _reference_start_Proverbs 11:23_reference_end_ _reference_start_Proverbs 11:28_reference_end_ _reference_start_Proverbs 11:30_reference_end_ _reference_start_Proverbs 11:31_reference_end_ _reference_start_Proverbs 12:03_reference_end_ _reference_start_Proverbs 12:05_reference_end_ _reference_start_Proverbs 12:07_reference_end_ _reference_start_Proverbs 12:10_reference_end_ _reference_start_Proverbs 12:12_reference_end_ _reference_start_Proverbs 12:13_reference_end_ _reference_start_Proverbs 12:21_reference_end_ _reference_start_Proverbs 12:26_reference_end_ _reference_start_Proverbs 13:05_reference_end_ _reference_start_Proverbs 13:09_reference_end_ _reference_start_Proverbs 13:21_reference_end_ _reference_start_Proverbs 13:22_reference_end_ _reference_start_Proverbs 13:25_reference_end_ _reference_start_Proverbs 14:19_reference_end_ _reference_start_Proverbs 14:32_reference_end_ _reference_start_Proverbs 15:06_reference_end_ _reference_start_Proverbs 15:28_reference_end_ _reference_start_Proverbs 15:29_reference_end_ _reference_start_Proverbs 18:10_reference_end_ _reference_start_Proverbs 20:07_reference_end_ _reference_start_Proverbs 21:12_reference_end_ _reference_start_Proverbs 21:15_reference_end_ _reference_start_Proverbs 21:18_reference_end_ _reference_start_Proverbs 21:26_reference_end_ _reference_start_Proverbs 23:24_reference_end_ _reference_start_Proverbs 24:15_reference_end_ _reference_start_Proverbs 24:16_reference_end_ _reference_start_Proverbs 25:26_reference_end_ _reference_start_Proverbs 28:01_reference_end_ _reference_start_Proverbs 28:12_reference_end_ _reference_start_Proverbs 28:28_reference_end_ _reference_start_Proverbs 29:06_reference_end_ _reference_start_Proverbs 29:07_reference_end_ _reference_start_Proverbs 29:16_reference_end_ _reference_start_Proverbs 29:27_reference_end_ _reference_start_Ecclesiastes 3:17_reference_end_ _reference_start_Ecclesiastes 7:20_reference_end_ _reference_start_Ecclesiastes 9:01_reference_end_ _reference_start_Daniel 9:14_reference_end_ !!GwcrighteousrighteousHebrew: צַדִּיק \f juste \cme be right, just \cmf avoir raison, être juste \cme justice, good government \cmf justifice, gouverner avec droiture \cme moral integrity \cmf intégrité morale \cme right in conduct toward God \cmf moral, juste devant Dieu \cme vindicated by God \cmf justifié par Dieu _reference_start_Genesis 6:09_reference_end_ _reference_start_Genesis 20:04_reference_end_ _reference_start_Genesis 7:01_reference_end_ _reference_start_Genesis 18:23_reference_end_ _reference_start_Genesis 18:24_reference_end_ _reference_start_Genesis 18:25_reference_end_ _reference_start_Genesis 18:26_reference_end_ _reference_start_Genesis 18:28_reference_end_ _reference_start_Exodus 9G C~qdWJ=0# zm`SF9,vi\OB5( t s r q p o n m l k j i h g f e d c b a ` _  ^  ]  \ [  Z  Y  X W V U  T  S  R  Q  P  O  N  M L K  J I  H  G  F  E  D  C  B A  @  ?  > = < ;! : 9 8 7 6 5 4 3 24 C~qdWJ=0# zm`SF9,vi\OB5( 7 6 5 4 3  2  1 0 / . - , + * ) ( ' & % $# #. " !      6       G G 3 "  "     (  %                       ~ } | { z y  x  w v u_reference_start_2 Samuel 9:10_reference_end_ _reference_start_2 Samuel 9:13_reference_end_ _reference_start_1 Kings 10:08_reference_end_ _reference_start_2 Kings 4:19_reference_end_ _reference_start_2 Kings 25:29_reference_end_ _reference_start_2 Kings 25:30_reference_end_ _reference_start_1 Chronicles 16:06_reference_end_ _reference_start_1 Chronicles 16:11_reference_end_ _reference_start_1 Chronicles 16:37_reference_end_ _reference_start_1 Chronicles 16:40_reference_end_ _reference_start_1 Chronicles 23:31_reference_end_ _reference_start_Ezra 3:05_reference_end_ _reference_start_Nehemiah 10:34_reference_end_ _reference_start_Psalms 34:02_reference_end_ _reference_start_Psalms 51:05_reference_end_ _reference_start_Psalms 71:06_reference_end_ _reference_start_Psalms 71:14_reference_end_ _reference_start_Daniel 8:11_reference_end_ _reference_start_Daniel 8:12_reference_end_ _reference_start_Daniel 8:13_reference_end_ _reference_start_Daniel 11:31_reference_end_ _reference_start_Daniel 12:11_reference_end_ ux''/sacrifice (a)sacrifice (a)Hebrew: תָּמִיד \f sacrifice \cme (offering given) continually, without interruption \cmf (donné) continuellement, sans interruption \cme daily burnt/whole offerings to God, morning and evening \cmf haulocauste quotidien à Dieu, matin et soir \cme regular repetition of something \cmf qui arrive continuellement, répétition regulière _reference_start_Exodus 25:30_reference_end_ _reference_start_Exodus 27:20_reference_end_ _reference_start_Leviticus 6:06_reference_end_ _reference_start_Numbers 4:07_reference_end_ _reference_start_Numbers 28:03_reference_end_ _reference_start_Numbers 28:06_reference_end_ _reference_start_Numbers 28:10_reference_end_ _reference_start_Numbers 28:15_reference_end_ _reference_start_Numbers 9:16_reference_end_ _reference_start_Deuteronomy 11:12_reference_end_ _reference_start_2 Samuel 9:07_reference_end_ NQor gods, eat the rest - peace \cmf touer un animal, brûler une part à Dieu ou aux dieux, manger le reste - paix \cme kill children or person as sacrifice to gods \cmf tuer des enfents ou un adult comme haulocaute aux diex \cme offer, pour out (a sacrifice) \cmf offrir, verser un sacrifice _reference_start_Genesis 31:54_reference_end_ _reference_start_Genesis 8:20_reference_end_ _reference_start_Genesis 22:02_reference_end_ _reference_start_Genesis 22:03_reference_end_ _reference_start_Genesis 22:06_reference_end_ _reference_start_Genesis 22:07_reference_end_ _reference_start_Genesis 22:08_reference_end_ _reference_start_Genesis 22:13_reference_end_ _reference_start_Genesis 46:01_reference_end_ _reference_start_Genesis 35:14_reference_end_ _reference_start_Exodus 18:12_reference_end_ _reference_start_Exodus 20:24_reference_end_ _reference_start_Exodus 24:05_reference_end_ _reference_start_Exodus 3:18_reference_end_ _reference_start_Exodus 5:03_reference_end_ _reference_start_Exodus 5:08_reference_end_ _rReference_start_Exodus 5:17_reference_end_ _reference_start_Exodus 8:04_reference_end_ _reference_start_Exodus 8:21_reference_end_ _reference_start_Exodus 8:22_reference_end_ _reference_start_Exodus 8:23_reference_end_ _reference_start_Exodus 8:24_reference_end_ _reference_start_Exodus 8:25_reference_end_ _reference_start_Exodus 13:15_reference_end_ _reference_start_Exodus 13:15_reference_end_ _reference_start_Exodus 20:24_reference_end_ _reference_start_Exodus 22:19_reference_end_ _reference_start_Exodus 23:18_reference_end_ _reference_start_Exodus 24:05_reference_end_ _reference_start_Exodus 30:09_reference_end_ _reference_start_Leviticus 2:12_reference_end_ _reference_start_Deuteronomy 12:15_reference_end_ _reference_start_Deuteronomy 18:03_reference_end_ _reference_start_Joshua 8:31_reference_end_ _reference_start_1 Samuel 6:14_reference_end_ _reference_start_1 Samuel 6:15_reference_end_ _reference_start_1 Samuel 7:09_reference_end_ _reference_start_1 Samuel 7:10_reference_end_ _reference_start_1 SamueSl 10:08_reference_end_ _reference_start_1 Samuel 13:09_reference_end_ _reference_start_1 Samuel 13:10_reference_end_ _reference_start_1 Samuel 13:12_reference_end_ _reference_start_1 Samuel 28:15_reference_end_ _reference_start_1 Samuel 28:24_reference_end_ _reference_start_1 Samuel 1:03_reference_end_ _reference_start_1 Samuel 1:04_reference_end_ _reference_start_1 Samuel 1:21_reference_end_ _reference_start_1 Samuel 2:13_reference_end_ _reference_start_1 Samuel 2:15_reference_end_ _reference_start_1 Samuel 2:19_reference_end_ _reference_start_1 Samuel 6:15_reference_end_ _reference_start_1 Samuel 10:08_reference_end_ _reference_start_1 Samuel 11:15_reference_end_ _reference_start_1 Samuel 15:15_reference_end_ _reference_start_1 Samuel 15:21_reference_end_ _reference_start_1 Samuel 16:02_reference_end_ _reference_start_1 Samuel 16:05_reference_end_ _reference_start_2 Samuel 6:17_reference_end_ _reference_start_2 Samuel 6:18_reference_end_ _reference_start_2 Samuel 24:22_reference_end_ _reference_start_2 TSamuel 24:24_reference_end_ _reference_start_2 Samuel 24:25_reference_end_ _reference_start_2 Samuel 6:13_reference_end_ _reference_start_2 Samuel 15:12_reference_end_ _reference_start_2 Samuel 23:16_reference_end_ _reference_start_1 Kings 3:04_reference_end_ _reference_start_1 Kings 3:15_reference_end_ _reference_start_1 Kings 9:25_reference_end_ _reference_start_1 Kings 19:21_reference_end_ _reference_start_1 Kings 1:09_reference_end_ _reference_start_1 Kings 1:19_reference_end_ _reference_start_1 Kings 1:25_reference_end_ _reference_start_1 Kings 3:02_reference_end_ _reference_start_1 Kings 3:03_reference_end_ _reference_start_1 Kings 3:04_reference_end_ _reference_start_1 Kings 8:05_reference_end_ _reference_start_1 Kings 8:62_reference_end_ _reference_start_1 Kings 8:63_reference_end_ _reference_start_1 Kings 11:08_reference_end_ _reference_start_1 Kings 12:32_reference_end_ _reference_start_1 Kings 22:44_reference_end_ _reference_start_1 Kings 13:02_reference_end_ _reference_start_2 Kings 23:20_reference_end_ _reference_start_1 Chronicles 16:02_reference_end_ _reference_start_1 Chronicles 16:40_reference_end_ _reference_start_1 Chronicles 21:24_reference_end_ _reference_start_1 Chronicles 21:26_reference_end_ _reference_start_1 Chronicles 23:31_reference_end_ _reference_start_1 Chronicles 29:21_reference_end_ _reference_start_1 Chronicles 15:26_reference_end_ _reference_start_1 Chronicles 21:28_reference_end_ _reference_start_1 Chronicles 29:21_reference_end_ _reference_start_1 Chronicles 11:18_reference_end_ _reference_start_2 Chronicles 7:04_reference_end_ _reference_start_2 Chronicles 7:05_reference_end_ _reference_start_Psalms 47:10_reference_end_ _reference_start_Psalms 97:09_reference_end_ _reference_start_Psalms 54:08_reference_end_ _reference_start_Psalms 106:37_reference_end_ _reference_start_Ezekiel 16:20_reference_end_ _reference_start_Daniel 2:46_reference_end_ _reference_start_Hosea 9:04_reference_end_ _reference_start_Jonah 1:16_reference_end_ _reference_start_Jonah 2:10_reference_end_ 0!0ezsalvationsalvationHebrew: יְשׁוּעָה \f salut \cme deliverance \cmf délivrance \cme physical and spiritual \cmf physique et spirituel \cme physical and spiritual rescue \cmf sauvetage physique et spirituel \cme safety, prosperity \cmf sécurité, prospérité \cme security, prosperity \cmf sécurité, prospérité \cme victory \cmf victoire _reference_start_Genesis 49:18_reference_end_ _reference_start_Exodus 14:13_reference_end_ _reference_start_Exodus 15:02_refereXCy))Gsacrifice (to)sacrifice (to)Hebrew: עָלָה \f sacrifice \cme exalt, praise \cmf exalter, louer \cme kill & eat an animal to make covenant between people \cmf tuer et manger un animal = une alliance entre personnes \cme kill and burn an animal as a sacrifice - whole/burnt offerings \cmf tuer et brûler un animal comme sacrifice - haulocauste \cme kill animal for eating \cmf touer un animal pour le manger \cme kill animal, burn a part as sacrifice to God P C~qdWJ=0# zm`SF9,vi\OB5( z/ y x w  v  u  t  s  r  q  p  o ( n  m  l  k , j i  h ? g > f  e  d  c  b  a  `  _  ^  ]  \  [  Z  Y  X  W  V  U  T  S  R  Q  P  O  N  M  L  K  J  I  H  G  F  E  D C B A  @  ?  >  =  < ; :  9 8 C~qdWJ=0# zm`SF9,vi\OB5( = < ;  : 92 82 7/ 6- 5 4 3 2 1 0% /% . - ,& +& * )  (  '  &  %  $ #  "  ! J          -  E 3  5     #    3    $  /     -       1       . ~ }j% |6 {a nce_end_ _reference_start_Deuteronomy 32:15_reference_end_ _reference_start_1 Samuel 2:01_reference_end_ _reference_start_1 Samuel 14:45_reference_end_ _reference_start_2 Samuel 10:11_reference_end_ _reference_start_2 Samuel 22:03_reference_end_ _reference_start_2 Samuel 22:47_reference_end_ _reference_start_2 Samuel 22:36_reference_end_ _reference_start_2 Samuel 23:05_reference_end_ _reference_start_2 Samuel 22:51_reference_end_ _reference_start_1 Chronicles 16:23_reference_end_ _reference_start_1 Chronicles 16:35_reference_end_ _reference_start_Job 5:04_reference_end_ _reference_start_Job 30:15_reference_end_ _reference_start_Psalms 3:03_reference_end_ _reference_start_Psalms 53:07_reference_end_ _reference_start_Psalms 24:05_reference_end_ _reference_start_Psalms 51:14_reference_end_ _reference_start_Psalms 69:14_reference_end_ _reference_start_Psalms 28:08_reference_end_ _reference_start_Isaiah 45:08_reference_end_ _reference_start_Isaiah 26:18_reference_end_ _reference_start_Jonah 2:10_reference_end_ j{)sanctuarysanctuaryHebrew: מִקְדָּשׁ \f sanctuaire \cme holy place in Israel \cmf lieu saint en Israël \cme place of worship of God or gods \cmf lieu d'adoration de Dieu ou des dieux \cme temple precinct \cmf le temple et ses environs _reference_start_Exodus 15:17_reference_end_ _reference_start_Exodus 25:08_reference_end_ _reference_start_Numbers 10:21_reference_end_ _reference_start_1 Chronicles 22:19_reference_end_ _reference_start_Psalms 74:07_reference_end_ _reference_start_Daniel 8:11_reference_end_ _reference_start_Daniel 9:17_reference_end_ _reference_start_Daniel 11:31_reference_end_ *|9satansatanHebrew: שָׂטָן \f Satan \cme adversary, enemy \cmf adversaire, énemie \cme satan, his name \cmf satan, son nom _reference_start_Numbers 22:22_reference_end_ _reference_start_1 Samuel 29:04_reference_end_ _reference_start_2 Samuel 19:23_reference_end_ _reference_start_1 Kings 5:18_reference_end_ _reference_start_1 Kings 11:14_reference_end_ _reference_start_1 Chronicles 21:01_reference_end_ _reference_start_Job 1:06_reference_end_ _reference_start_Zechariah 3:01_reference_end_ _reference_start_Zechariah 3:02_reference_end_\auver, se délivrer \cme save, deliver (or be saved) \cmf sauver, délivrer (ou être sauver) \cme separate \cmf séparer \cme take vengence on someone \cmf se venger de qqn _reference_start_Genesis 31:09_reference_end_ _reference_start_Genesis 31:16_reference_end_ _reference_start_Genesis 37:21_reference_end_ _reference_start_Genesis 37:22_reference_end_ _reference_start_Genesis 6:19_reference_end_ _reference_start_Genesis 6:20_reference_end_ _reference_start_Genesis 7:03_reference_end_ _reference_start_Genesis 12:12_reference_end_ _reference_start_Genesis 19:19_reference_end_ _reference_start_Genesis 45:07_reference_end_ _reference_start_Genesis 47:25_reference_end_ _reference_start_Genesis 50:20_reference_end_ _reference_start_Genesis 50:20_reference_end_ _reference_start_Genesis 32:12_reference_end_ _reference_start_Genesis 32:31_reference_end_ _reference_start_Exodus 2:17_reference_end_ _reference_start_Exodus 14:30_reference_end_ _reference_start_Exodus 3:22_reference_end_ _reference_start_Exodus 12]:36_reference_end_ _reference_start_Exodus 3:08_reference_end_ _reference_start_Exodus 18:09_reference_end_ _reference_start_Exodus 1:17_reference_end_ _reference_start_Exodus 1:18_reference_end_ _reference_start_Exodus 1:22_reference_end_ _reference_start_Exodus 22:17_reference_end_ _reference_start_Exodus 2:19_reference_end_ _reference_start_Exodus 5:23_reference_end_ _reference_start_Exodus 6:06_reference_end_ _reference_start_Exodus 12:27_reference_end_ _reference_start_Exodus 18:04_reference_end_ _reference_start_Exodus 18:08_reference_end_ _reference_start_Exodus 18:10_reference_end_ _reference_start_Deuteronomy 32:39_reference_end_ _reference_start_Deuteronomy 23:15_reference_end_ _reference_start_Joshua 22:22_reference_end_ _reference_start_Jude 6:31_reference_end_ _reference_start_Jude 7:02_reference_end_ _reference_start_1 Samuel 4:03_reference_end_ _reference_start_1 Samuel 7:08_reference_end_ _reference_start_1 Samuel 9:16_reference_end_ _reference_start_1 Samuel 10:27_reference_end_ _referenc^e_start_1 Samuel 23:02_reference_end_ _reference_start_1 Samuel 23:05_reference_end_ _reference_start_1 Samuel 14:06_reference_end_ _reference_start_1 Samuel 14:23_reference_end_ _reference_start_1 Samuel 14:39_reference_end_ _reference_start_1 Samuel 17:47_reference_end_ _reference_start_1 Samuel 25:26_reference_end_ _reference_start_1 Samuel 10:19_reference_end_ _reference_start_1 Samuel 11:03_reference_end_ _reference_start_1 Samuel 4:08_reference_end_ _reference_start_1 Samuel 7:03_reference_end_ _reference_start_1 Samuel 7:14_reference_end_ _reference_start_1 Samuel 10:18_reference_end_ _reference_start_1 Samuel 12:11_reference_end_ _reference_start_1 Samuel 14:48_reference_end_ _reference_start_1 Samuel 17:35_reference_end_ _reference_start_1 Samuel 17:37_reference_end_ _reference_start_1 Samuel 30:08_reference_end_ _reference_start_1 Samuel 30:18_reference_end_ _reference_start_1 Samuel 30:22_reference_end_ _reference_start_1 Samuel 2:06_reference_end_ _reference_start_1 Samuel 27:09_reference_end__ _reference_start_1 Samuel 27:11_reference_end_ _reference_start_1 Samuel 12:10_reference_end_ _reference_start_1 Samuel 12:21_reference_end_ _reference_start_1 Samuel 26:24_reference_end_ _reference_start_1 Samuel 25:31_reference_end_ _reference_start_1 Samuel 25:33_reference_end_ _reference_start_2 Samuel 3:18_reference_end_ _reference_start_2 Samuel 22:03_reference_end_ _reference_start_2 Samuel 22:03_reference_end_ _reference_start_2 Samuel 22:04_reference_end_ _reference_start_2 Samuel 22:28_reference_end_ _reference_start_2 Samuel 22:42_reference_end_ _reference_start_2 Samuel 8:06_reference_end_ _reference_start_2 Samuel 8:14_reference_end_ _reference_start_2 Samuel 10:11_reference_end_ _reference_start_2 Samuel 10:19_reference_end_ _reference_start_2 Samuel 14:04_reference_end_ _reference_start_2 Samuel 12:07_reference_end_ _reference_start_2 Samuel 22:18_reference_end_ _reference_start_2 Samuel 22:49_reference_end_ _reference_start_2 Samuel 23:12_reference_end_ _reference_start_2 Samuel 8:02_refe`rence_end_ _reference_start_2 Samuel 20:06_reference_end_ _reference_start_2 Samuel 14:16_reference_end_ _reference_start_2 Samuel 19:10_reference_end_ _reference_start_2 Samuel 22:01_reference_end_ _reference_start_2 Samuel 14:06_reference_end_ _reference_start_1 Kings 18:05_reference_end_ _reference_start_1 Kings 20:13_reference_end_ _reference_start_2 Kings 19:12_reference_end_ _reference_start_1 Chronicles 16:35_reference_end_ _reference_start_1 Chronicles 11:14_reference_end_ _reference_start_1 Chronicles 18:06_reference_end_ _reference_start_1 Chronicles 18:13_reference_end_ _reference_start_1 Chronicles 19:19_reference_end_ _reference_start_1 Chronicles 16:35_reference_end_ _reference_start_Psalms 39:09_reference_end_ _reference_start_Psalms 51:16_reference_end_ _reference_start_Psalms 20:07_reference_end_ _reference_start_Psalms 28:09_reference_end_ _reference_start_Psalms 3:08_reference_end_ _reference_start_Psalms 34:07_reference_end_ _reference_start_Psalms 34:19_reference_end_ _reference_start_Psalms 54:01_reference_end_ _reference_start_Psalms 57:04_reference_end_ _reference_start_Psalms 59:03_reference_end_ _reference_start_Psalms 71:02_reference_end_ _reference_start_Psalms 71:03_reference_end_ _reference_start_Psalms 59:03_reference_end_ _reference_start_Psalms 71:02_reference_end_ _reference_start_Psalms 71:11_reference_end_ _reference_start_Psalms 142:07_reference_end_ _reference_start_Psalms 30:04_reference_end_ _reference_start_Psalms 71:20_reference_end_ _reference_start_Psalms 34:05_reference_end_ _reference_start_Psalms 34:18_reference_end_ _reference_start_Psalms 34:20_reference_end_ _reference_start_Psalms 54:09_reference_end_ _reference_start_Psalms 56:14_reference_end_ _reference_start_Psalms 69:15_reference_end_ _reference_start_Proverbs 6:03_reference_end_ _reference_start_Proverbs 19:19_reference_end_ _reference_start_Proverbs 20:22_reference_end_ _reference_start_Daniel 8:04_reference_end_ _reference_start_Daniel 8:07_reference_end_ _reference_start_Jonah 4:06_reference_end_ 6u~OscornscornHebrew: לִיץ / לָצוֹן \f mépris \cme to scorn, one who scornes \cmf mépd*})save (to)save (to)Hebrew: .נָצַל \f sauver \cme deliver from sin \cmf délivrer du péché \cme deliver, free \cmf délivrer, libèrer \cme give victory to \cmf donner la victoire \cme help \cmf aider \cme pillage, take away \cmf dépouiller, enlever \cme rescue, recover \cmf rescater, recouperer \cme restore to life \cmf redonner la vie \cme save life, let live \cmf sauver la vie, laisser en vie \cme save oneself, escape \cmf se s[ C~qdWJ=0# zm`SF9,vi\OB5(    1 ~  }  |  {  z y  x  w * v  u  t  s  r  q ! p  o  n  m l  k  j  i  h  g  f % e # d 0 c b  a  `  _  ^  ]  \  [ / Z ' Y  X  W  V  U  T  S  R  QA PA O N M ' L K J I  H G F E D C B A @ ? $ > C~qdWJ=0# zl_RE8+uh[NA4'  C B AZ @ ? > = < ; : 9 8 7 6 5 4  3 2  1  0" /" . -  , + * ) ( 'E &8 %6 $" #" "" !G   G G ; G G ; 9 6 " "    3 '  #          #                  riser, qqn qui méprise _reference_start_Proverbs 1:22_reference_end_ _reference_start_Proverbs 3:34_reference_end_ _reference_start_Proverbs 3:34_reference_end_ _reference_start_Proverbs 9:07_reference_end_ _reference_start_Proverbs 9:08_reference_end_ _reference_start_Proverbs 9:12_reference_end_ _reference_start_Proverbs 13:01_reference_end_ _reference_start_Proverbs 14:06_reference_end_ _reference_start_Proverbs 14:09_reference_end_ _reference_start_Proverbs 15:12_reference_end_ _reference_start_Proverbs 19:25_reference_end_ _reference_start_Proverbs 19:28_reference_end_ _reference_start_Proverbs 19:29_reference_end_ _reference_start_Proverbs 20:01_reference_end_ _reference_start_Proverbs 21:11_reference_end_ _reference_start_Proverbs 21:24_reference_end_ _reference_start_Proverbs 22:10_reference_end_ _reference_start_Proverbs 24:09_reference_end_ _reference_start_Proverbs 29:08_reference_end_f _reference_start_Genesis 32:21_reference_end_ _reference_start_Genesis 33:05_reference_end_ _reference_start_Genesis 33:14_reference_end_ _reference_start_Genesis 42:10_reference_end_ _reference_start_Genesis 42:11_reference_end_ _reference_start_Genesis 42:13_reference_end_ _reference_start_Genesis 43:28_reference_end_ _reference_start_Genesis 44:1_reference_end_ _reference_start_Genesis 46:34_reference_end_ _reference_start_Genesis 47:03_reference_end_ _reference_start_Genesis 47:04_reference_end_ _reference_start_Genesis 40:20_reference_end_ _reference_start_Genesis 41:10_reference_end_ _reference_start_Genesis 41:37_reference_end_ _reference_start_Genesis 41:38_reference_end_ _reference_start_Genesis 45:16_reference_end_ _reference_start_Genesis 50:07_reference_end_ _reference_start_Genesis 9:25_reference_end_ _reference_start_Genesis 9:25_reference_end_ _reference_start_Genesis 9:26_reference_end_ _reference_start_Genesis 9:27_reference_end_ _reference_start_Genesis 12:16_reference_end_ _reference_sgtart_Genesis 15:13_reference_end_ _reference_start_Genesis 20:14_reference_end_ _reference_start_Genesis 24:02_reference_end_ _reference_start_Genesis 24:05_reference_end_ _reference_start_Genesis 24:09_reference_end_ _reference_start_Genesis 24:10_reference_end_ _reference_start_Genesis 24:17_reference_end_ _reference_start_Genesis 24:34_reference_end_ _reference_start_Genesis 24:35_reference_end_ _reference_start_Genesis 24:52_reference_end_ _reference_start_Genesis 24:53_reference_end_ _reference_start_Genesis 24:59_reference_end_ _reference_start_Genesis 24:61_reference_end_ _reference_start_Genesis 24:65_reference_end_ _reference_start_Genesis 24:66_reference_end_ _reference_start_Genesis 30:43_reference_end_ _reference_start_Genesis 32:06_reference_end_ _reference_start_Genesis 39:17_reference_end_ _reference_start_Genesis 39:19_reference_end_ _reference_start_Genesis 41:12_reference_end_ _reference_start_Genesis 43:18_reference_end_ _reference_start_Genesis 44:09_reference_end_ _reference_start_Genhesis 44:10_reference_end_ _reference_start_Genesis 44:16_reference_end_ _reference_start_Genesis 44:17_reference_end_ _reference_start_Genesis 44:33_reference_end_ _reference_start_Genesis 47:19_reference_end_ _reference_start_Genesis 47:25_reference_end_ _reference_start_Genesis 50:02_reference_end_ _reference_start_Genesis 50:18_reference_end_ _reference_start_Genesis 14:15_reference_end_ _reference_start_Genesis 20:08_reference_end_ _reference_start_Genesis 21:25_reference_end_ _reference_start_Genesis 21:25_reference_end_ _reference_start_Genesis 26:15_reference_end_ _reference_start_Genesis 26:19_reference_end_ _reference_start_Genesis 26:32_reference_end_ _reference_start_Genesis 27:27_reference_end_ _reference_start_Genesis 32:17_reference_end_ _reference_start_Genesis 24:14_reference_end_ _reference_start_Genesis 26:24_reference_end_ _reference_start_Genesis 50:17_reference_end_ _reference_start_Exodus 4:10_reference_end_ _reference_start_Exodus 5:21_reference_end_ _reference_start_Exodus 7:10_refierence_end_ _reference_start_Exodus 7:20_reference_end_ _reference_start_Exodus 8:05_reference_end_ _reference_start_Exodus 8:17_reference_end_ _reference_start_Exodus 8:20_reference_end_ _reference_start_Exodus 9:14_reference_end_ _reference_start_Exodus 9:20_reference_end_ _reference_start_Exodus 9:30_reference_end_ _reference_start_Exodus 9:34_reference_end_ _reference_start_Exodus 10:01_reference_end_ _reference_start_Exodus 10:06_reference_end_ _reference_start_Exodus 11:03_reference_end_ _reference_start_Exodus 11:08_reference_end_ _reference_start_Exodus 12:30_reference_end_ _reference_start_Exodus 14:05_reference_end_ _reference_start_Exodus 9:20_reference_end_ _reference_start_Exodus 9:21_reference_end_ _reference_start_Exodus 12:14_reference_end_ _reference_start_Exodus 12:44_reference_end_ _reference_start_Exodus 13:03_reference_end_ _reference_start_Exodus 13:14_reference_end_ _reference_start_Exodus 20:02_reference_end_ _reference_start_Exodus 20:10_reference_end_ _reference_start_Exodus 20:1j7_reference_end_ _reference_start_Exodus 21:02_reference_end_ _reference_start_Exodus 21:05_reference_end_ _reference_start_Exodus 21:07_reference_end_ _reference_start_Exodus 21:20_reference_end_ _reference_start_Exodus 21:26_reference_end_ _reference_start_Exodus 21:27_reference_end_ _reference_start_Exodus 21:32_reference_end_ _reference_start_Exodus 5:15_reference_end_ _reference_start_Exodus 5:16_reference_end_ _reference_start_Exodus 7:28_reference_end_ _reference_start_Exodus 7:29_reference_end_ _reference_start_Exodus 14:31_reference_end_ _reference_start_Leviticus 25:06_reference_end_ _reference_start_Leviticus 25:39_reference_end_ _reference_start_Leviticus 25:42_reference_end_ _reference_start_Leviticus 25:44_reference_end_ _reference_start_Leviticus 25:42_reference_end_ _reference_start_Leviticus 25:42_reference_end_ _reference_start_Leviticus 25:55_reference_end_ _reference_start_Numbers 11:11_reference_end_ _reference_start_Numbers 14:24_reference_end_ _reference_start_Deuteronomy 34:11_refekrence_end_ _reference_start_Deuteronomy 28:68_reference_end_ _reference_start_Deuteronomy 34:05_reference_end_ _reference_start_1 Samuel 12:19_reference_end_ _reference_start_1 Samuel 17:32_reference_end_ _reference_start_1 Samuel 17:34_reference_end_ _reference_start_1 Samuel 17:36_reference_end_ _reference_start_1 Samuel 17:58_reference_end_ _reference_start_1 Samuel 20:07_reference_end_ _reference_start_1 Samuel 20:08_reference_end_ _reference_start_1 Samuel 22:15_reference_end_ _reference_start_1 Samuel 23:10_reference_end_ _reference_start_1 Samuel 23:11_reference_end_ _reference_start_1 Samuel 25:08_reference_end_ _reference_start_1 Samuel 25:39_reference_end_ _reference_start_1 Samuel 25:41_reference_end_ _reference_start_1 Samuel 26:18_reference_end_ _reference_start_1 Samuel 26:19_reference_end_ _reference_start_1 Samuel 27:05_reference_end_ _reference_start_1 Samuel 28:02_reference_end_ _reference_start_1 Samuel 29:08_reference_end_ _reference_start_1 Samuel 16:15_reference_end_ _reference_startl_1 Samuel 16:16_reference_end_ _reference_start_1 Samuel 16:17_reference_end_ _reference_start_1 Samuel 18:05_reference_end_ _reference_start_1 Samuel 18:22_reference_end_ _reference_start_1 Samuel 18:23_reference_end_ _reference_start_1 Samuel 18:24_reference_end_ _reference_start_1 Samuel 19:01_reference_end_ _reference_start_1 Samuel 1:1_reference_end_ _reference_start_1 Samuel 21:08_reference_end_ _reference_start_1 Samuel 21:12_reference_end_ _reference_start_1 Samuel 21:15_reference_end_ _reference_start_1 Samuel 22:14_reference_end_ _reference_start_1 Samuel 25:41_reference_end_ _reference_start_1 Samuel 28:07_reference_end_ _reference_start_1 Samuel 28:23_reference_end_ _reference_start_1 Samuel 28:25_reference_end_ _reference_start_1 Samuel 30:13_reference_end_ _reference_start_1 Samuel 11:11_reference_end_ _reference_start_1 Samuel 17:08_reference_end_ _reference_start_1 Samuel 18:26_reference_end_ _reference_start_1 Samuel 18:30_reference_end_ _reference_start_1 Samuel 22:06_reference_end_ _refmerence_start_1 Samuel 22:07_reference_end_ _reference_start_1 Samuel 22:09_reference_end_ _reference_start_1 Samuel 22:17_reference_end_ _reference_start_1 Samuel 25:10_reference_end_ _reference_start_1 Samuel 25:40_reference_end_ _reference_start_1 Samuel 29:03_reference_end_ _reference_start_1 Samuel 29:10_reference_end_ _reference_start_1 Samuel 35:10_reference_end_ _reference_start_1 Samuel 17:09_reference_end_ _reference_start_1 Samuel 22:08_reference_end_ _reference_start_1 Samuel 25:10_reference_end_ _reference_start_1 Samuel 27:12_reference_end_ _reference_start_2 Samuel 7:19_reference_end_ _reference_start_2 Samuel 7:20_reference_end_ _reference_start_2 Samuel 7:21_reference_end_ _reference_start_2 Samuel 7:25_reference_end_ _reference_start_2 Samuel 7:27_reference_end_ _reference_start_2 Samuel 7:29_reference_end_ _reference_start_2 Samuel 9:02_reference_end_ _reference_start_2 Samuel 9:06_reference_end_ _reference_start_2 Samuel 9:08_reference_end_ _reference_start_2 Samuel 9:11_reference_end_ n_reference_start_2 Samuel 13:24_reference_end_ _reference_start_2 Samuel 13:35_reference_end_ _reference_start_2 Samuel 14:22_reference_end_ _reference_start_2 Samuel 15:02_reference_end_ _reference_start_2 Samuel 15:08_reference_end_ _reference_start_2 Samuel 15:15_reference_end_ _reference_start_2 Samuel 15:21_reference_end_ _reference_start_2 Samuel 18:29_reference_end_ _reference_start_2 Samuel 19:20_reference_end_ _reference_start_2 Samuel 19:21_reference_end_ _reference_start_2 Samuel 19:27_reference_end_ _reference_start_2 Samuel 19:28_reference_end_ _reference_start_2 Samuel 19:29_reference_end_ _reference_start_2 Samuel 19:36_reference_end_ _reference_start_2 Samuel 19:37_reference_end_ _reference_start_2 Samuel 19:38_reference_end_ _reference_start_2 Samuel 24:21_reference_end_ _reference_start_2 Samuel 3:38_reference_end_ _reference_start_2 Samuel 8:07_reference_end_ _reference_start_2 Samuel 10:02_reference_end_ _reference_start_2 Samuel 10:03_reference_end_ _reference_start_2 Samuel 10:04_refoerence_end_ _reference_start_2 Samuel 11:09_reference_end_ _reference_start_2 Samuel 11:13_reference_end_ _reference_start_2 Samuel 12:18_reference_end_ _reference_start_2 Samuel 12:19_reference_end_ _reference_start_2 Samuel 12:21_reference_end_ _reference_start_2 Samuel 13:24_reference_end_ _reference_start_2 Samuel 13:31_reference_end_ _reference_start_2 Samuel 13:36_reference_end_ _reference_start_2 Samuel 14:19_reference_end_ _reference_start_2 Samuel 14:20_reference_end_ _reference_start_2 Samuel 15:14_reference_end_ _reference_start_2 Samuel 15:15_reference_end_ _reference_start_2 Samuel 15:18_reference_end_ _reference_start_2 Samuel 16:06_reference_end_ _reference_start_2 Samuel 16:11_reference_end_ _reference_start_2 Samuel 19:15_reference_end_ _reference_start_2 Samuel 9:02_reference_end_ _reference_start_2 Samuel 9:10_reference_end_ _reference_start_2 Samuel 9:12_reference_end_ _reference_start_2 Samuel 14:20_reference_end_ _reference_start_2 Samuel 14:31_reference_end_ _reference_start_2 Samuepl 19:18_reference_end_ _reference_start_2 Samuel 19:27_reference_end_ _reference_start_2 Samuel 2:12_reference_end_ _reference_start_2 Samuel 2:13_reference_end_ _reference_start_2 Samuel 2:15_reference_end_ _reference_start_2 Samuel 2:17_reference_end_ _reference_start_2 Samuel 2:31_reference_end_ _reference_start_2 Samuel 3:22_reference_end_ _reference_start_2 Samuel 11:01_reference_end_ _reference_start_2 Samuel 11:17_reference_end_ _reference_start_2 Samuel 11:21_reference_end_ _reference_start_2 Samuel 11:24_reference_end_ _reference_start_2 Samuel 17:20_reference_end_ _reference_start_2 Samuel 18:07_reference_end_ _reference_start_2 Samuel 18:09_reference_end_ _reference_start_2 Samuel 19:06_reference_end_ _reference_start_2 Samuel 19:07_reference_end_ _reference_start_2 Samuel 19:08_reference_end_ _reference_start_2 Samuel 19:29_reference_end_ _reference_start_2 Samuel 20:06_reference_end_ _reference_start_2 Samuel 21:15_reference_end_ _reference_start_2 Samuel 21:22_reference_end_ _reference_startq_2 Samuel 6:20_reference_end_ _reference_start_2 Samuel 8:02_reference_end_ _reference_start_2 Samuel 8:06_reference_end_ _reference_start_2 Samuel 8:14_reference_end_ _reference_start_2 Samuel 10:19_reference_end_ _reference_start_2 Samuel 15:34_reference_end_ _reference_start_2 Samuel 3:18_reference_end_ _reference_start_2 Samuel 7:05_reference_end_ _reference_start_2 Samuel 7:08_reference_end_ _reference_start_2 Samuel 7:26_reference_end_ _reference_start_1 Kings 1:26_reference_end_ _reference_start_1 Kings 1:51_reference_end_ _reference_start_1 Kings 2:38_reference_end_ _reference_start_1 Kings 3:07_reference_end_ _reference_start_1 Kings 3:08_reference_end_ _reference_start_1 Kings 3:09_reference_end_ _reference_start_1 Kings 8:28_reference_end_ _reference_start_1 Kings 8:29_reference_end_ _reference_start_1 Kings 8:30_reference_end_ _reference_start_1 Kings 3:06_reference_end_ _reference_start_1 Kings 8:24_reference_end_ _reference_start_1 Kings 8:26_reference_end_ _reference_start_1 Kings 8:66_referrence_end_ _reference_start_1 Kings 825:1_reference_end_ _reference_start_1 Kings 11:13_reference_end_ _reference_start_1 Kings 11:32_reference_end_ _reference_start_1 Kings 11:34_reference_end_ _reference_start_1 Kings 11:36_reference_end_ _reference_start_1 Kings 11:38_reference_end_ _reference_start_1 Kings 1:02_reference_end_ _reference_start_1 Kings 1:09_reference_end_ _reference_start_1 Kings 1:19_reference_end_ _reference_start_1 Kings 1:26_reference_end_ _reference_start_1 Kings 1:27_reference_end_ _reference_start_1 Kings 1:33_reference_end_ _reference_start_1 Kings 1:47_reference_end_ _reference_start_1 Kings 5:15_reference_end_ _reference_start_1 Kings 10:08_reference_end_ _reference_start_1 Kings 10:13_reference_end_ _reference_start_1 Kings 11:11_reference_end_ _reference_start_1 Kings 2:39_reference_end_ _reference_start_1 Kings 2:40_reference_end_ _reference_start_1 Kings 9:21_reference_end_ _reference_start_1 Kings 9:22_reference_end_ _reference_start_1 Kings 10:05_reference_end_ _referencse_start_1 Kings 9:22_reference_end_ _reference_start_1 Kings 11:26_reference_end_ _reference_start_1 Kings 3:15_reference_end_ _reference_start_1 Kings 5:20_reference_end_ _reference_start_1 Kings 5:23_reference_end_ _reference_start_1 Kings 9:27_reference_end_ _reference_start_1 Kings 8:23_reference_end_ _reference_start_1 Kings 8:32_reference_end_ _reference_start_1 Kings 8:36_reference_end_ _reference_start_1 Kings 8:52_reference_end_ _reference_start_1 Kings 8:53_reference_end_ _reference_start_1 Kings 8:56_reference_end_ _reference_start_1 Kings 8:59_reference_end_ _reference_start_2 Kings 9:07_reference_end_ _reference_start_1 Chronicles 17:1_reference_end_ _reference_start_1 Chronicles 21:08_reference_end_ _reference_start_1 Chronicles 17:04_reference_end_ _reference_start_1 Chronicles 17:07_reference_end_ _reference_start_1 Chronicles 21:03_reference_end_ _reference_start_1 Chronicles 16:13_reference_end_ _reference_start_Esther 1:03_reference_end_ _reference_start_Esther 2:18_reference_end_ _reference_start_Esther 3:02_reference_end_ _reference_start_Esther 3:03_reference_end_ _reference_start_Esther 4:11_reference_end_ _reference_start_Esther 5:11_reference_end_ _reference_start_Psalms 19:12_reference_end_ _reference_start_Psalms 19:14_reference_end_ _reference_start_Psalms 144:10_reference_end_ _reference_start_Psalms 34:23_reference_end_ _reference_start_Psalms 90:13_reference_end_ _reference_start_Ecclesiastes 2:07_reference_end_ _reference_start_Isaiah 20:03_reference_end_ _reference_start_Daniel 1:12_reference_end_ _reference_start_Daniel 1:13_reference_end_ _reference_start_Daniel 2:04_reference_end_ _reference_start_Daniel 2:07_reference_end_ _reference_start_Daniel 9:17_reference_end_ _reference_start_Daniel 10:17_reference_end_ _reference_start_Daniel 9:06_reference_end_ _reference_start_Daniel 9:10_reference_end_ _reference_start_Daniel 3:26_reference_end_ _reference_start_Daniel 3:28_reference_end_ _reference_start_Daniel 6:21_reference_end_ _reference_start_Daniel 9:11_reference_end_ :OservantservantHebrew: עֶבֶד \f serviteur, esclave \cme polite address to equals or superiors \cmf politesse envers des superieurs et les egaux \cme prophet of God \cmf prophète de Dieu \cme servant to royalty, minister \cmf serviteur du roi, haut fonctionnaire \cme slave, servant \cmf esclave, serviteur \cme soldiers, fighting men, followers \cmf armée, hommes de guerre, partisans \cme subject, citizen, vassel \cmf citoyen \cme worshipers and followers of God \cmf ceux qui suivent et adorent Dieu _reference_start_Psalms 90:16_reference_end_ _reference_start_Genesis 18:03_reference_end_ _reference_start_Genesis 18:05_reference_end_ _reference_start_Genesis 19:02_reference_end_ _reference_start_Genesis 19:19_reference_end_ _reference_start_Genesis 32:05_reference_end_ _reference_start_Genesis 32:11_reference_end_ _reference_start_Genesis 32:19_reference_end_e C~qdWJ=0# zm`SF9,vi\OB5(          ~ } |2 {2 z/ y/ x,! w, v, u, t, s+ r) q' p' o  n+ mB lA k= j; i5 h4 g# f" e d c b a ` _ ^  ]  \  [  Z  Y2 X- W)& V)% U) T( S/ R/ Q." P, O+ N* M* L* K! J! I  H  G F  E D C~qdWJ=0# zm`SF9,vi\OB5( I  H  G ) F ' E  D  C  B  A  @  ? : > $ = " <  ;  :" 9D 8" 7 6 57 4* 3* 2, 1* 0' / . - , + * ) ( ' & % $ # " !       ,                   "              2  C~qdWJ=0# zm`SF9,vi\OB5(    &    &  %  $                 ~  }  |  { # z  y x  w  v  u  t  s  r  q  p  o  n  m  l  k # j  i  h ( g  f  e  d  c  b  a  `  _ ^  ]  \  [  Z ) Y  X  W  V  U  T  S  R  Q  P  O  N  M  L  K  J  C~qdWJ=0# zm`SF9,vi\OB5( O  N  M  L  K  J  I  H  G & F 3 E  D  C  B  A  @ " ?  >  =  <  ;  :  9  8  7  6  5  4  3  2  1  0  /  .  -  ,  +  *  )  (  '  &  %  $  #  " !                    $                   C}pcVI</"yl_RE8+uh[M@3&                Z "       ~ } | {  z  y  x  w  v  u  t ; s 8 r 5 q 4 p $ o  n  m  l  k  j  i  h  g  f  e  d ( c ' b a `  _  ^ / ] ! \  [  Z  Y  X  W & V $ U " T S R 9 Q B P  C~qdVI</"yl_RE8+uh[NA4'  U  T SA R Q  P O  N " M L" K. J I H G F E D C  B  A @ ? > = < ; :  9 8 7 6  5 4 3 2 1 0 / .  -  ,  +  *  )& ( ' & % $ #  " !   X           , *& %#   sense figuré) _reference_start_Genesis 37:35_reference_end_ _reference_start_Genesis 42:38_reference_end_ _reference_start_Genesis 44:29_reference_end_ _reference_start_1 Samuel 2:06_reference_end_ _reference_start_2 Samuel 22:06_reference_end_ _reference_start_1 Kings 2:06_reference_end_ _reference_start_Job 24:19_reference_end_ _reference_start_Psalms 9:18_reference_end_ _reference_start_Psalms 30:04_reference_end_ _reference_start_Psalms 88:04_reference_end_ _reference_start_Psalms 139:08_reference_end_ _reference_start_Proverbs 1:12_reference_end_ _reference_start_Proverbs 5:05_reference_end_ _reference_start_Proverbs 7:25_reference_end_ _reference_start_Proverbs 9:18_reference_end_ _reference_start_Proverbs 15:11_reference_end_ _reference_start_Proverbs 15:24_reference_end_ _reference_start_Proverbs 23:14_reference_end_ _reference_start_Proverbs 27:20_reference_end_ _reference_start_Proverbs 30:16_reference_end_ _reference_start_Isaiah 38:18_reference_end_ _reference_start_Jonah 2:03_reference_end_ YYysignsignHebrew: אֹות / אָת \f signe \cme indicating changes in weather \cmf indications du changment du météo \cme memorial s}[shrewdshrewdHebrew: עָרוּם \f sagasse \cme shrewd, sensible \cmf sagasse, judicieux _reference_start_Proverbs 12:16_reference_end_ _reference_start_Proverbs 12:23_reference_end_ _reference_start_Proverbs 13:08_reference_end_ _reference_start_Proverbs 13:16_reference_end_ _reference_start_Proverbs 14:15_reference_end_ _reference_start_Proverbs 14:18_reference_end_ _reference_start_Proverbs 22:03_reference_end_ _reference_start_Proverbs 27:12_reference_end_$11ysheol, grave (the)sheol, grave (the)Hebrew: שְׁאֹול \f séjour des morts \cme place where wicked go after death \cmf lieu où les pécheurs vont après la mort \cme where spirits go after death (literal or figurative sense) \cmf lieu des esprits après la mort (sense litéral ou{~tones \cmf rochés mémoriales \cme miracle or event showing God's power \cmf un miracle ou un événement qui montre le pouvoir de Dieu \cme omen predicting event \cmf présage qui predit un événement \cme pledge of covenant and promise \cmf gage de la promèse et l'alliance de Dieu \cme pledge, token \cmf signe, gage _reference_start_Genesis 1:14_reference_end_ _reference_start_Genesis 9:12_reference_end_ _reference_start_Genesis 9:13_reference_end_ _reference_start_Genesis 9:17_reference_end_ _reference_start_Genesis 17:11_reference_end_ _reference_start_Genesis 4:15_reference_end_ _reference_start_Exodus 13:09_reference_end_ _reference_start_Exodus 13:16_reference_end_ _reference_start_Exodus 4:08_reference_end_ _reference_start_Exodus 4:09_reference_end_ _reference_start_Exodus 4:17_reference_end_ _reference_start_Exodus 4:28_reference_end_ _reference_start_Exodus 4:30_reference_end_ _reference_start_Exodus 7:03_reference_end_ _reference_start_Exodus 8:19_reference_end_ _reference_start_Exodus 10:01_reference_end_ _reference_start_Exodus 10:02_reference_end_ _reference_start_Exodus 3:12_reference_end_ _reference_start_Exodus 31:13_reference_end_ _reference_start_Exodus 31:17_reference_end_ _reference_start_Exodus 12:13_reference_end_ _reference_start_Numbers 17:03_reference_end_ _reference_start_Numbers 14:11_reference_end_ _reference_start_Numbers 14:22_reference_end_ _reference_start_Deuteronomy 28:46_reference_end_ _reference_start_Deuteronomy 34:11_reference_end_ _reference_start_Joshua 2:12_reference_end_ _reference_start_1 Samuel 2:34_reference_end_ _reference_start_1 Samuel 10:07_reference_end_ _reference_start_1 Samuel 10:09_reference_end_ _reference_start_1 Samuel 14:10_reference_end_ _reference_start_Job 21:29_reference_end_ _reference_start_Psalms 65:09_reference_end_ _reference_start_Isaiah 19:20_reference_end_ _reference_start_Jeremiah 10:02_reference_end_ _reference_start_Daniel 3:32_reference_end_ _reference_start_Daniel 3:33_reference_end_ _reference_start_Daniel 6:28_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5(  (  ' 2 $   , +     '      3          ~ }" |  {3 z; y; x3 w  v  u  t  s  r " q  p  o  n m l k j i h g  f  e  d  c b a ` _ ^ ] \ [ Z Y X W! V Y%%{simple (adj)simple (adj)Hebrew: פָּתָהּ \f simple (adj) \cme be persuaded \cmf être persuadé \cme seduce, deceive \cmf séduire, décevoire _reference_start_Proverbs 25:15_reference_end_ _reference_start_Proverbs 1:10_reference_end_ _reference_start_Proverbs 16:29_reference_end_ _reference_start_Proverbs 24:28_reference_end_ ]simplesimpleHebrew: פֶּתִי \f sot \cme open-minded, open to anything, good and bad \cmf qui a l'esprit ouvert à tout,le bon et le mauvais _reference_start_Proverbs 1:04_reference_end_ _reference_start_Proverbs 1:22_reference_end_ _reference_start_Proverbs 1:22_reference_end_ _reference_start_Proverbs 1:32_reference_end_ _reference_start_Proverbs 1:32_reference_end_ _reference_start_Proverbs 7:07_reference_end_ _reference_start_Proverbs 8:05_reference_end_ _reference_start_Proverbs 9:04_reference_end_ _reference_start_Proverbs 9:04_reference_end_ _reference_start_Proverbs 9:06_reference_end_ _reference_start_Proverbs 9:16_reference_end_ _reference_start_Proverbs 14:15_reference_end_ _reference_start_Proverbs 14:18_reference_end_ _reference_start_Proverbs 19:25_reference_end_ _reference_start_Proverbs 21:11_reference_end_ _reference_start_Proverbs 22:03_reference_end_ _reference_start_Proverbs 22:03_reference_end_ _reference_start_Proverbs 27:12_reference_end_u péché \cme miss the goal of right/duty - vs God (& man) \cmf manquer de faire juste/le devoire envers Dieu (et homme) \cme miss the goal of right/duty - vs man \cmf manquer de faire juste/le devoire envers homme \cme purify from sin (by putting blood on horns of altar) \cmf purifié du péché (en versant le sang sur l'autel) _reference_start_1 Kings 14:16_reference_end_ _reference_start_1 Kings 15:20_reference_end_ _reference_start_1 Kings 15:26_reference_end_ _reference_start_1 Kings 15:34_reference_end_ _reference_start_1 Kings 16:13_reference_end_ _reference_start_2 Kings 21:16_reference_end_ _reference_start_2 Kings 21:17_reference_end_ _reference_start_Psalms 32:05_reference_end_ _reference_start_Psalms 32:05_reference_end_ _reference_start_Psalms 51:05_reference_end_ _reference_start_Psalms 59:04_reference_end_ _reference_start_Psalms 59:13_reference_end_ _reference_start_Psalms 51:04_reference_end_ _reference_start_Proverbs 13:06_reference_end_ _reference_start_Proverbs 14:34_reference_end_ pAsinfulsinfulHebrew: חַטָּא \f coupable \cme miss the goal of right/duty - vs God (& man) \cmf manquer de faire juste/le devoire envers Dieu (et homme) \cme reckoned as offenders \cmf consideré comme délenquants \cme sinners, those who miss doing right/duty \cmf pécheurs, qui manquent de faire juste/le devoire _reference_start_Genesis 13:13_reference_end_ _reference_start_Numbers 32:14_reference_end_ _reference_start_1 Samuel 15:18_reference_end_ _reference_start_1 Kings 1:21_reference_end_ _reference_start_Psalms 1:01_reference_end_ _reference_start_Psalms 1:05_reference_end_ _reference_start_Psalms 25:08_reference_end_ _reference_start_Psalms 51:15_reference_end_ _reference_start_Proverbs 1:10_reference_end_ _reference_start_Proverbs 13:21_reference_end_ _reference_start_Proverbs 23:17_reference_end_ _reference_start_Ecclesiastes 1:1_reference_end_`sin (a)sin (a)Hebrew: חַטָּאת \f péché \cme incur guilt, penalty \cmf culpabilité d\cme God deals with sin \cmf Dieu répond au péché \cme guilt of sin \cmf culpabilité du péché \cme incur guilt, penalty \cmf culpabilité du péché \cme miss doing right or duty - vs God (& man) \cmf manquer de faire droite/dévoire contre Dieu (et homme) \cme miss doing right or duty - vs man \cmf manquer de faire droite/dévoire contre une personne \cme miss the goal of right/duty - vs God (& man) \cmf manquer de faire juste/le devoire envers Dieu (et homme) \cme miss the goal of right/duty - vs man \cmf manquer de faire juste/le devoire - contre une personne \cme miss the mark \cmf manquer le cible \cme punishement for sin \cmf punition pour le péché \cme purify from sin (by putting blood on horns of altar) \cmf purifier du péché (en versant le sang sur l'autel) \cme purify from uncleanness \cmf purifier d'impureté \cme sin inadvertantly, unintentionally \cmf sans se rendre conte, sans intention \cme sin offering \cmf sacrifices pour le péché \cme sin-offering (offer one) \cmf sacrifice pour le péché (l'offrir) \cme spoil, ruin \cmf ruiner, abimer \cme to overlook, forgive sin \cmf oublier, pardonner le péché \cme to overstep, sin \cmf aller trop loin, pécher \cme turn away from, stop sinning \cmf arrêter de, repentir de pécher _reference_start_Genesis 31:39_reference_end_ _reference_start_Genesis 6:11_reference_end_ _reference_start_Genesis 6:12_reference_end_ _reference_start_Genesis 18:20_reference_end_ _reference_start_Genesis 20:06_reference_end_ _reference_start_Genesis 43:09_reference_end_ _reference_start_Genesis 44:32_reference_end_ _reference_start_Genesis 4:07_reference_end_ _reference_start_Genesis 20:09_reference_end_ _reference_start_Genesis 31:36_reference_end_ _reference_start_Genesis 50:17_reference_end_ _reference_start_Genesis 39:09_reference_end_ _reference_start_Genesis 20:09_reference_end_ _reference_start_Genesis 40:01_reference_end_ _reference_start_Genesis 1:1_reference_end_ _reference_start_Genesis 42:22_reference_end_ _reference_start_Genesis 6:03_reference_end_ _reference_start_Exodus 23:33_reference_end_ _reference_start_Exodus 10:17_reference_end_ _reference_start_Exodus 32:34_reference_end_ _reference_start_Exodus 32:21_reference_end_ _reference_start_Exodus 9:27_reference_end_ _reference_start_Exodus 9:34_reference_end_ _reference_start_Exodus 10:16_reference_end_ _reference_start_Exodus 1:1_reference_end_ _reference_start_Exodus 20:20_reference_end_ _reference_start_Exodus 5:16_reference_end_ _reference_start_Exodus 43:22_reference_end_ _reference_start_Exodus 8:20_reference_end_ _reference_start_Exodus 21:26_reference_end_ _reference_start_Leviticus 5:11_reference_end_ _reference_start_Leviticus 5:16_reference_end_ _reference_start_Leviticus 5:17_reference_end_ _reference_start_Leviticus 5:21_reference_end_ _reference_start_Leviticus 5:23_reference_end_ _reference_start_Leviticus 5:05_reference_end_ _reference_start_Leviticus 5:15_reference_end_ _reference_start_Leviticus 5:22_reference_end_ _reference_start_Leviticus 5:01_reference_end_ _reference_start_Leviticus 10:20_reference_end_ _reference_start_Leviticus 8:15_reference_end_ _reference_start_Leviticus 14:49_reference_end_ _reference_start_Leviticus 14:52_reference_end_ _reference_start_Leviticus 5:18_reference_end_ _reference_start_Leviticus 7:37_reference_end_ _reference_start_Leviticus 9:15_reference_end_ _reference_start_Numbers 16:26_reference_end_ _reference_start_Numbers 32:23_reference_end_ _reference_start_Numbers 14:40_reference_end_ _reference_start_Numbers 21:07_reference_end_ _reference_start_Numbers 19:19_reference_end_ _reference_start_Numbers 19:20_reference_end_ _reference_start_Numbers 15:28_reference_end_ _reference_start_Numbers 14:41_reference_end_ _reference_start_Deuteronomy 24:04_reference_end_ _reference_start_Deuteronomy 4:16_reference_end_ _reference_start_Deuteronomy 9:21_reference_end_ _reference_start_Deuteronomy 26:13_reference_end_ _reference_start_Joshua 7:11_reference_end_ _reference_start_Joshua 7:15_reference_end_ _reference_start_Jude 20:16_reference_end_ _reference_start_Jude 2:20_reference_end_ _reference_start_1 Samuel 14:34_reference_end_ _reference_start_1 Samuel 20:01_reference_end_ _reference_start_1 Samuel 2:25_reference_end_ _reference_start_1 Samuel 7:06_reference_end_ _reference_start_1 Samuel 12:10_reference_end_ _reference_start_1 Samuel 12:23_reference_end_ _reference_start_1 Samuel 15:24_reference_end_ _reference_start_1 Samuel 15:30_reference_end_ _reference_start_1 Samuel 2:25_reference_end_ _reference_start_1 Samuel 19:04_reference_end_ _reference_start_1 Samuel 19:05_reference_end_ _reference_start_1 Samuel 24:12_reference_end_ _reference_start_1 Samuel 26:21_reference_end_ _reference_start_1 Samuel 15:24_reference_end_ _reference_start_2 Samuel 12:13_reference_end_ _reference_start_2 Samuel 12:13_reference_end_ _reference_start_2 Samuel 19:21_reference_end_ _reference_start_2 Samuel 12:13_reference_end_ _reference_start_2 Samuel 24:10_reference_end_ _reference_start_1 Kings 14:16_reference_end_ _reference_start_1 Kings 1:1_reference_end_ _reference_start_1 Kings 15:20_reference_end_ _reference_start_1 Kings 15:26_reference_end_ _reference_start_1 Kings 15:34_reference_end_ _reference_start_1 Kings 1:1_reference_end_ _reference_start_1 Kings 8:34_reference_end_ _reference_start_1 Kings 8:36_reference_end_ _reference_start_1 Kings 8:47_reference_end_ _reference_start_1 Kings 8:50_reference_end_ _reference_start_1 Kings 14:16_reference_end_ _reference_start_1 Kings 14:33_reference_end_ _reference_start_1 Kings 15:20_reference_end_ _reference_start_1 Kings 16:13_reference_end_ _reference_start_1 Kings 8:33_reference_end_ _reference_start_1 Kings 8:35_reference_end_ _reference_start_1 Kings 8:46_reference_end_ _reference_start_1 Kings 8:31_reference_end_ _reference_start_1 Kings 8:35_reference_end_ _reference_start_2 Kings 1:1_reference_end_ _reference_start_2 Kings 13:02_reference_end_ _reference_start_2 Kings 17:21_reference_end_ _reference_start_2 Kings 17:22_reference_end_ _reference_start_2 Kings 21:16_reference_end_ _reference_start_2 Kings 21:17_reference_end_ _reference_start_2 Kings 1:1_reference_end_ _reference_start_2 Kings 13:02_reference_end_ _reference_start_2 Kings 1:1_reference_end_ _reference_start_2 Kings 12:17_reference_end_ _reference_start_2 Kings 18:12_reference_end_ _reference_start_2 Kings 10:31_reference_end_ _reference_start_1 Chronicles 21:08_reference_end_ _reference_start_1 Chronicles 21:17_reference_end_ _reference_start_1 Chronicles 21:08_reference_end_ _reference_start_2 Chronicles 7:14_reference_end_ _reference_start_2 Chronicles 29:21_reference_end_ _reference_start_2 Chronicles 29:24_reference_end_ _reference_start_2 Chronicles 24:20_reference_end_ _reference_start_2 Chronicles 6:26_reference_end_ _reference_start_Esther 3:03_reference_end_ _reference_start_Job 12:16_reference_end_ _reference_start_Psalms 25:18_reference_end_ _reference_start_Psalms 51:04_reference_end_ _reference_start_Psalms 109:04_reference_end_ _reference_start_Psalms 32:05_reference_end_ _reference_start_Psalms 32:01_reference_end_ _reference_start_Psalms 32:05_reference_end_ _reference_start_Psalms 51:04_reference_end_ _reference_start_Psalms 51:05_reference_end_ _reference_start_Psalms 59:04_reference_end_ _reference_start_Psalms 109:07_reference_end_ _reference_start_Psalms 59:13_reference_end_ _reference_start_Psalms 51:06_reference_end_ _reference_start_Psalms 78:17_reference_end_ _reference_start_Psalms 119:011_reference_end_ _reference_start_Psalms 4:05_reference_end_ _reference_start_Psalms 51:09_reference_end_ _reference_start_Psalms 119:67_reference_end_ _reference_start_Psalms 40:07_reference_end_ _reference_start_Psalms 17:03_reference_end_ _reference_start_Psalms 148:06_reference_end_ _reference_start_Proverbs 28:24_reference_end_ _reference_start_Proverbs 14:34_reference_end_ _reference_start_Proverbs 11:31_reference_end_ _reference_start_Proverbs 14:21_reference_end_ _reference_start_Proverbs 19:02_reference_end_ _reference_start_Proverbs 11:09_reference_end_ _reference_start_Proverbs 25:26_reference_end_ _reference_start_Proverbs 19:11_reference_end_ _reference_start_Proverbs 26:10_reference_end_ _reference_start_Ecclesiastes 7:20_reference_end_ _reference_start_Ecclesiastes 8:12_reference_end_ _reference_start_Isaiah 38:17_reference_end_ _reference_start_Isaiah 53:12_reference_end_ _reference_start_Isaiah 24:05_reference_end_ _reference_start_Jeremiah 34:18_reference_end_ _reference_start_Ezekiel 43:20_reference_end_ _reference_start_Ezekiel 43:23_reference_end_ _reference_start_Daniel 9:24_reference_end_ _reference_start_Daniel 9:20_reference_end_ _reference_start_Daniel 4:241342_reference_end_ _reference_start_Daniel 9:05_reference_end_ _reference_start_Daniel 9:08_reference_end_ _reference_start_Daniel 9:11_reference_end_ _reference_start_Daniel 9:15_reference_end_ _reference_start_Daniel 9:11_reference_end_ _reference_start_Hosea 6:07_reference_end_ _reference_start_Hosea 8:01_reference_end_ _reference_start_Amos 7:08_reference_end_ _reference_start_Amos 8:02_reference_end_ _reference_start_Micah 7:18_reference_end_ 6YsinsinHebrew: שְׁגָגָה \f péché \cme inadvertant error \cmf erreur inaverti _reference_start_Leviticus 5:15_reference_end_ _reference_start_Leviticus 5:18_reference_end_ _reference_start_Leviticus 22:14_reference_end_ _reference_start_Numbers 15:27_reference_end_ _reference_start_Numbers 15:28_reference_end_ _reference_start_Numbers 35:11_reference_end_ _reference_start_Joshua 20:03_reference_end_ _reference_start_Joshua 20:09_reference_end_ _reference_start_Ecclesiastes 5:05_reference_end_ _reference_start_Ecclesiastes 10:05_reference_end_ osin (to)sin (to)Hebrew: חָטָא \f pécher \cme bear loss of something \cmf subir la perte de qqch \cme cause to sin \cmf faire pécher \cme condemnation, punishement as result of an action \cmf condemnation, punition en conséquance d'une action \cme evil, corrupt \cmf perverse, corrompu  C~qdWJ=0# zm`SF9,vi\OB5( [  Z  Y X  W V U  T  S  R  Q  P  O  N  M  L K  J  I  H " GA FA E D C B  A @ ?) > = < ; :( 9  8 7  6% 5 44 31 2 1  0 / . - , + * ) ( ' & %+ $ # " !   "      "   !  * C~qdWJ=0# zm`SF9,vi\OB5(       "    ( wC 3  w N 3 ; m ; 3 3       m 3        ~ } |  {  z  y  x  w  v  u  t  s  r  q  p  o  n  m # l  k . j # i ! h  g  f ! e  d 2 c / b $ a " `  _ " ^  ]  \  C~qdUH;.!xk^QD7*tgZM@3& a ` _ ^ ] \ [   Z  Y  X & W  V  U  T  S  R  Q  P  O  N  M  L  K  J   I   H  G  F  E  D  C  B  A  @  ?  > = < ;# : 9 8 7 6 5! 4 3 2 1 0 /  . -  ,  + *  )  (+ '+ &" % $5 #& " !   l A skinskinHebrew: עֹור \f peau \cme clothing, covering \cmf vêtements, couverture \cme skin or person or animal hide \cmf peau d'une personne ou un animal _reference_start_Genesis 3:21_reference_end_ _reference_start_Genesis 27:16_reference_end_ _reference_start_Exodus 22:26_reference_end_ _reference_start_Leviticus 16:27_reference_end_ _reference_start_Numbers 19:05_reference_end_ _reference_start_2 Kings 1:08_reference_end_ _reference_start_Lamentations 3:04_reference_end_ ((g %% sluggishnesssluggishnessHebrew: עַצְלָה / עַצְלוּת \f paresse \cme laziness, idleness \cmf paresse, fainéantise _reference_start_Proverbs 19:15_reference_end_ _reference_start_Proverbs 31:27_reference_end_i + sluggardsluggardHebrew: עָצֵל \f paresseux \cme lazy person \cmf paresseux _reference_start_Proverbs 6:06_reference_end_ _reference_start_Proverbs 6:09_reference_end_ _reference_start_Proverbs 10:26_reference_end_ _reference_start_Proverbs 13:04_reference_end_ _reference_start_Proverbs 15:19_reference_end_ _reference_start_Proverbs 19:24_reference_end_ _reference_start_Proverbs 20:04_reference_end_ _reference_start_Proverbs 21:25_reference_end_ _reference_start_Proverbs 22:13_reference_end_ _reference_start_Proverbs 24:30_reference_end_ _reference_start_Proverbs 26:13_reference_end_ _reference_start_Proverbs 26:14_reference_end_ _reference_start_Proverbs 26:15_reference_end_ _reference_start_Proverbs 26:16_reference_end_ D ##] sons of mensons of menHebrew: בְּנֵי אָדָם / בֶּן־אָדָם \f fils des hommes \cme all of humanity \cmf toute l'humanité \cme son of man - his humanity \cmf fils d'hommes - son humanité _reference_start_Daniel 2:38_reference_end_ _reference_start_Daniel 5:21_reference_end_ _reference_start_Daniel 8:17_reference_end_ _reference_start_Daniel 10:16_reference_end_8 !!A son of manson of manHebrew: בַּר אֱנָשׁ \f fils d'homme \cme son of man - his humanity \cmf fils d'homme - son humanité _reference_start_Daniel 7:13_reference_end_suffre \cme part of us with a will or thoughts \cmf partie d'une personne avec volonté ou pensés \cme part of us with emotions and desires \cmf partie d'une personne avec désirs et émotions \cme physical life, state of being alive \cmf vie physique, être en vie \cme pronoun, person \cmf une personne, pronom \cme soul, inner being, self \cmf l'être intérieur, soi-même \cme throat \cmf la gorge _reference_start_Genesis 1:20_reference_end_ _reference_start_Genesis 1:21_reference_end_ _reference_start_Genesis 1:24_reference_end_ _reference_start_Genesis 2:19_reference_end_ _reference_start_Genesis 9:10_reference_end_ _reference_start_Genesis 9:12_reference_end_ _reference_start_Genesis 9:15_reference_end_ _reference_start_Genesis 9:16_reference_end_ _reference_start_Genesis 35:18_reference_end_ _reference_start_Genesis 2:07_reference_end_ _reference_start_Genesis 9:05_reference_end_ _reference_start_Genesis 12:05_reference_end_ _reference_start_Genesis 14:21_reference_end_ _reference_start_Genesis 17:14_reference_end_ _reference_start_Genesis 36:06_reference_end_ _reference_start_Genesis 46:15_reference_end_ _reference_start_Genesis 46:18_reference_end_ _reference_start_Genesis 46:22_reference_end_ _reference_start_Genesis 46:25_reference_end_ _reference_start_Genesis 46:26_reference_end_ _reference_start_Genesis 46:27_reference_end_ _reference_start_Genesis 37:21_reference_end_ _reference_start_Genesis 23:08_reference_end_ _reference_start_Genesis 34:03_reference_end_ _reference_start_Genesis 34:08_reference_end_ _reference_start_Genesis 42:21_reference_end_ _reference_start_Genesis 44:30_reference_end_ _reference_start_Genesis 1:30_reference_end_ _reference_start_Genesis 9:04_reference_end_ _reference_start_Genesis 19:17_reference_end_ _reference_start_Genesis 19:20_reference_end_ _reference_start_Genesis 32:31_reference_end_ _reference_start_Genesis 12:13_reference_end_ _reference_start_Genesis 19:19_reference_end_ _reference_start_Genesis 27:04_reference_end_ _reference_start_Genesis 27:19_reference_end_ _reference_start_Genesis 27:25_reference_end_ _reference_start_Genesis 27:31_reference_end_ _reference_start_Genesis 49:06_reference_end_ _reference_start_Exodus 21:30_reference_end_ _reference_start_Exodus 1:05_reference_end_ _reference_start_Exodus 12:04_reference_end_ _reference_start_Exodus 12:15_reference_end_ _reference_start_Exodus 12:16_reference_end_ _reference_start_Exodus 12:19_reference_end_ _reference_start_Exodus 16:16_reference_end_ _reference_start_Exodus 30:12_reference_end_ _reference_start_Exodus 23:09_reference_end_ _reference_start_Exodus 15:09_reference_end_ _reference_start_Exodus 4:19_reference_end_ _reference_start_Exodus 21:23_reference_end_ _reference_start_Leviticus 5:01_reference_end_ _reference_start_Leviticus 5:02_reference_end_ _reference_start_Leviticus 5:04_reference_end_ _reference_start_Leviticus 5:15_reference_end_ _reference_start_Leviticus 5:17_reference_end_ _reference_start_Leviticus 17:10_reference_end_ _reference_start_Leviticus 18:29_reference_end_ _reference_start_Numbers 5:02_reference_end_ _reference_start_Numbers 6:06_reference_end_ _reference_start_Numbers 6:11_reference_end_ _reference_start_Numbers 11:06_reference_end_ _reference_start_Numbers 21:04_reference_end_ _reference_start_Numbers 21:05_reference_end_ _reference_start_Deuteronomy 19:06_reference_end_ _reference_start_Deuteronomy 18:06_reference_end_ _reference_start_Deuteronomy 28:65_reference_end_ _reference_start_Deuteronomy 12:23_reference_end_ _reference_start_Jude 10:16_reference_end_ _reference_start_Jude 5:18_reference_end_ _reference_start_1 Samuel 19:05_reference_end_ _reference_start_1 Samuel 28:21_reference_end_ _reference_start_1 Samuel 22:22_reference_end_ _reference_start_1 Samuel 2:35_reference_end_ _reference_start_1 Samuel 20:04_reference_end_ _reference_start_1 Samuel 1:10_reference_end_ _reference_start_1 Samuel 1:15_reference_end_ _reference_start_1 Samuel 2:33_reference_end_ _reference_start_1 Samuel 18:01_reference_end_ _reference_start_1 Samuel 22:02_reference_end_ _reference_start_1 Samuel 23:20_reference_end_ _reference_start_1 Samuel 30:06_reference_end_ _reference_start_1 Samuel 19:11_reference_end_ _reference_start_1 Samuel 20:01_reference_end_ _reference_start_1 Samuel 22:23_reference_end_ _reference_start_1 Samuel 23:15_reference_end_ _reference_start_1 Samuel 24:12_reference_end_ _reference_start_1 Samuel 25:29_reference_end_ _reference_start_1 Samuel 26:21_reference_end_ _reference_start_1 Samuel 26:24_reference_end_ _reference_start_1 Samuel 28:09_reference_end_ _reference_start_1 Samuel 1:26_reference_end_ _reference_start_1 Samuel 2:16_reference_end_ _reference_start_1 Samuel 17:55_reference_end_ _reference_start_1 Samuel 20:03_reference_end_ _reference_start_1 Samuel 25:26_reference_end_ _reference_start_1 Samuel 18:01_reference_end_ _reference_start_1 Samuel 18:03_reference_end_ _reference_start_1 Samuel 20:17_reference_end_ _reference_start_2 Samuel 23:17_reference_end_ _reference_start_2 Samuel 14:14_reference_end_ _reference_start_2 Samuel 3:21_reference_end_ _reference_start_2 Samuel 5:08_reference_end_ _reference_start_2 Samuel 17:08_reference_end_ _reference_start_2 Samuel 1:09_reference_end_ _reference_start_2 Samuel 4:08_reference_end_ _reference_start_2 Samuel 4:09_reference_end_ _reference_start_2 Samuel 14:07_reference_end_ _reference_start_2 Samuel 16:11_reference_end_ _reference_start_2 Samuel 18:13_reference_end_ _reference_start_2 Samuel 19:06_reference_end_ _reference_start_2 Samuel 11:11_reference_end_ _reference_start_2 Samuel 14:19_reference_end_ _reference_start_1 Kings 17:21_reference_end_ _reference_start_1 Kings 19:03_reference_end_ _reference_start_1 Kings 2:04_reference_end_ _reference_start_1 Kings 8:48_reference_end_ _reference_start_1 Kings 11:37_reference_end_ _reference_start_1 Kings 1:12_reference_end_ _reference_start_1 Kings 1:29_reference_end_ _reference_start_1 Kings 2:23_reference_end_ _reference_start_1 Kings 3:11_reference_end_ _reference_start_1 Kings 20:39_reference_end_ _reference_start_2 Kings 10:24_reference_end_ _reference_start_1 Chronicles 22:19_reference_end_ _reference_start_1 Chronicles 28:09_reference_end_ _reference_start_Esther 7:03_reference_end_ _reference_start_Esther 7:07_reference_end_ _reference_start_Esther 8:11_reference_end_ _reference_start_Esther 9:16_reference_end_ _reference_start_Esther 4:13_reference_end_ _reference_start_Esther 9:31_reference_end_ _reference_start_Job 19:02_reference_end_ _reference_start_Job 23:13_reference_end_ _reference_start_Psalms 30:04_reference_end_ _reference_start_Psalms 71:23_reference_end_ _reference_start_Psalms 124:07_reference_end_ _reference_start_Psalms 7:1_reference_end_ _reference_start_Psalms 19:08_reference_end_ _reference_start_Psalms 11:05_reference_end_ _reference_start_Psalms 24:04_reference_end_ _reference_start_Psalms 23:03_reference_end_ _reference_start_Psalms 34:34_reference_end_ _reference_start_Psalms 54:05_reference_end_ _reference_start_Psalms 56:07_reference_end_ _reference_start_Psalms 56:14_reference_end_ _reference_start_Psalms 57:02_reference_end_ _reference_start_Psalms 63:10_reference_end_ _reference_start_Psalms 71:10_reference_end_ _reference_start_Psalms 3:03_reference_end_ _reference_start_Psalms 34:03_reference_end_ _reference_start_Psalms 54:06_reference_end_ _reference_start_Psalms 57:05_reference_end_ _reference_start_Psalms 59:04_reference_end_ _reference_start_Psalms 63:09_reference_end_ _reference_start_Psalms 71:13_reference_end_ _reference_start_Psalms 142:05_reference_end_ _reference_start_Psalms 142:08_reference_end_ _reference_start_Psalms 139:14_reference_end_ _reference_start_Psalms 63:02_reference_end_ _reference_start_Psalms 63:06_reference_end_ _reference_start_Psalms 107:05_reference_end_ _reference_start_Psalms 124:04_reference_end_ _reference_start_Psalms 124:05_reference_end_ _reference_start_Proverbs 23:14_reference_end_ _reference_start_Proverbs 3:22_reference_end_ _reference_start_Proverbs 11:25_reference_end_ _reference_start_Proverbs 19:02_reference_end_ _reference_start_Proverbs 23:02_reference_end_ _reference_start_Proverbs 25:25_reference_end_ _reference_start_Proverbs 28:25_reference_end_ _reference_start_Proverbs 23:07_reference_end_ _reference_start_Proverbs 13:04_reference_end_ _reference_start_Proverbs 13:25_reference_end_ _reference_start_Proverbs 16:24_reference_end_ _reference_start_Proverbs 19:08_reference_end_ _reference_start_Proverbs 21:10_reference_end_ _reference_start_Proverbs 25:13_reference_end_ _reference_start_Proverbs 27:07_reference_end_ _reference_start_Proverbs 27:09_reference_end_ _reference_start_Proverbs 29:17_reference_end_ _reference_start_Proverbs 31:06_reference_end_ _reference_start_Proverbs 1:19_reference_end_ _reference_start_Proverbs 7:23_reference_end_ _reference_start_Proverbs 8:36_reference_end_ _reference_start_Proverbs 12:10_reference_end_ _reference_start_Proverbs 13:03_reference_end_ _reference_start_Proverbs 13:08_reference_end_ _reference_start_Proverbs 16:17_reference_end_ _reference_start_Proverbs 19:16_reference_end_ _reference_start_Proverbs 22:05_reference_end_ _reference_start_Proverbs 29:10_reference_end_ _reference_start_Proverbs 2:10_reference_end_ _reference_start_Proverbs 11:25_reference_end_ _reference_start_Proverbs 11:30_reference_end_ _reference_start_Proverbs 14:25_reference_end_ _reference_start_Proverbs 19:15_reference_end_ _reference_start_Proverbs 24:12_reference_end_ _reference_start_Proverbs 24:14_reference_end_ _reference_start_Proverbs 27:07_reference_end_ _reference_start_Proverbs 28:17_reference_end_ _reference_start_Proverbs 3:22_reference_end_ _reference_start_Proverbs 11:17_reference_end_ _reference_start_Proverbs 10:03_reference_end_ _reference_start_Proverbs 25:25_reference_end_ _reference_start_Isaiah 1:14_reference_end_ _reference_start_Jeremiah 12:07_reference_end_ _reference_start_Jeremiah 51:14_reference_end_ _reference_start_Jonah 2:08_reference_end_ _reference_start_Jonah 1:14_reference_end_ _reference_start_Jonah 4:03_reference_end_ _reference_start_Jonah 4:08_reference_end_ _reference_start_Jonah 2:06_reference_end_ 1IsoulsoulHebrew: נֶפֶשׁ \f âme \cme all living beings \cmf tout être vivant \cme be allowed to live \cmf être "autorisé" à vivre \cme breath \cmf le soufle \cme dead body, cadaver \cmf corps mort, cadavre \cme figure for risking or saving a life \cmf sense figuré de risquer ou sauver la vie \cme metonymy for person or people \cmf une personne ou plusières personnes \cme neck \cmf le cou \cme part of us that suffers \cmf partie d'une personne qui  C~qdWJ=0# zm`SF9,vi\OB5( $  #  "  !A A    A                                 1    ~ } | {  z y x  w v, u* t" s" r q% p. o. n. m. l. k. j$ i h g  f  e d# c  b  C~qdWJ=0# zm`SF9,vi\OB5( g  f e d| cG b a ` _  ^ ]  \ [ Z Y  X  W  V ' U  T  S  R  Q % P 0 O  N  M  L  K J  I  H  G  F  E  D  C  B  A  @  ?  >  =  <  ;  :  9 7 8  7  6  5  4  3  2  1  0  /  .  -  ,  +  *  ) ! (  '  &  % # C~qdWJ=0"wj]PC6)sfYL?2% *  ) ( '  &  % $ # " !                 $                        | ~| }k |? {? z y x wG v? u; t9 s6 r" q pG o? n9 m8 l8 k6 j"" i h C~qdWJ=0# zm`SF9,vi\OB5( m  l  k - j  i  h  g  f  e  d  c  b  a  `  _  ^" ]  \  [  Z  Y  X  W V U T S  R Q P O N M L K- J I# H) G F E D  C  B  A  @  ? > = < ; :3 9  8  7  6 5 4# 3 2)& 1 0  /  .  -  ,  +3 ;'';spirit of Godspirit of godHebrew: .רוּח אלהים / אֱלָהִי \f esprit de Dieu \cme spirit from God \cmf esprit venant de Dieu _reference_start_Genesis 1:02_reference_end_ _reference_start_Genesis 41:38_reference_end_ _reference_start_Exodus 31:03_reference_end_ _reference_start_Exodus 35:31_reference_end_ _reference_start_Numbers 24:02_reference_end_ _reference_start_1 Samuel 10:10_reference_end_ _reference_start_1 Samuel 11:06_reference_end_ _reference_start_1 Samuel 19:20_reference_end_ _reference_start_1 Samuel 19:23_reference_end_ _reference_start_Psalms 51:13_reference_end_ _reference_start_Daniel 4:05_reference_end_ _reference_start_Daniel 4:06_reference_end_ _reference_start_Daniel 4:15_reference_end_ _reference_start_Daniel 5:11_reference_end_ _reference_start_Daniel 5:14_reference_end_ XX spiritspiritHebrew: רוּחַ \f esprit \cme 4 compass points \cmf 4 points candineaux \cme ability, gift \cmf habilité, don \cme anger (breath of nose) \cmf colère (soufle du nez) \cme breath \cmf souffle, haleine \cme desires and thoughts of a person \cmf partie d'une personne avec émotions et pensées \cme disposition, character \cmf disposition, charactère \cme emotions of a person \cmf émotions d'une personne \cme figure of speech = vanity, worthlessness \cmf sense figuré = vanité, sans valeur \cme indpendent spiritual beint11Spirit of the LORDspirit of the lordHebrew: רוּחַ יְהוָה \f esprit de l'Eternel \cme Spirit of God \cmf Esprit de Dieu _reference_start_1 Samuel 10:06_reference_end_ _reference_start_1 Samuel 16:13_reference_end_ _reference_start_1 Samuel 16:14_reference_end_ _reference_start_2 Samuel 23:02_reference_end_ _reference_start_1 Kings 18:1_reference_end_g \cmf être spirituel indépendent \cme life, being alive \cmf vie, être vivant \cme mental capacity of a person, (vs animals) \cmf capacité mental d'une personne en contraste avec des animaux \cme part of a person that remains after death \cmf la partie d'une personne qui existe après la mort \cme person in relation to supernatural world \cmf personne en rélation avec le monde surnaturel \cme power, authority of a person \cmf pouvoir, autorité d'une personne \cme spirit of God (on a person to prophecy or lead) \cmf de Dieu (en une personne pour prophètiser ou guider) \cme strength, vital force \cmf viguer, force vitale \cme will of a person \cmf volonté d'une personne \cme wind \cmf vent _reference_start_Genesis 6:17_reference_end_ _reference_start_Genesis 7:15_reference_end_ _reference_start_Genesis 7:22_reference_end_ _reference_start_Genesis 41:08_reference_end_ _reference_start_Genesis 26:35_reference_end_ _reference_start_Genesis 6:03_reference_end_ _reference_start_Genesis 45:27_reference_end_ _reference_start_Genesis 3:08_reference_end_ _reference_start_Genesis 8:01_reference_end_ _reference_start_Exodus 28:03_reference_end_ _reference_start_Exodus 15:08_reference_end_ _reference_start_Exodus 15:10_reference_end_ _reference_start_Exodus 6:09_reference_end_ _reference_start_Exodus 10:13_reference_end_ _reference_start_Exodus 10:19_reference_end_ _reference_start_Exodus 14:21_reference_end_ _reference_start_Numbers 14:24_reference_end_ _reference_start_Numbers 16:22_reference_end_ _reference_start_Numbers 27:16_reference_end_ _reference_start_Numbers 11:17_reference_end_ _reference_start_Numbers 11:17_reference_end_ _reference_start_Numbers 11:25_reference_end_ _reference_start_Numbers 11:26_reference_end_ _reference_start_Numbers 11:29_reference_end_ _reference_start_Numbers 11:31_reference_end_ _reference_start_Deuteronomy 34:09_reference_end_ _reference_start_1 Samuel 1:15_reference_end_ _reference_start_1 Samuel 16:14_reference_end_ _reference_start_1 Samuel 16:15_reference_end_ _reference_start_1 Samuel 16:16_reference_end_ _reference_start_1 Samuel 16:23_reference_end_ _reference_start_1 Samuel 18:10_reference_end_ _reference_start_1 Samuel 19:09_reference_end_ _reference_start_1 Samuel 30:12_reference_end_ _reference_start_2 Samuel 22:16_reference_end_ _reference_start_2 Samuel 22:11_reference_end_ _reference_start_1 Kings 10:05_reference_end_ _reference_start_1 Kings 21:05_reference_end_ _reference_start_1 Kings 18:45_reference_end_ _reference_start_2 Kings 19:07_reference_end_ _reference_start_2 Kings 2:09_reference_end_ _reference_start_2 Kings 2:15_reference_end_ _reference_start_1 Chronicles 9:24_reference_end_ _reference_start_1 Chronicles 28:12_reference_end_ _reference_start_1 Chronicles 12:19_reference_end_ _reference_start_Job 34:14_reference_end_ _reference_start_Job 34:14_reference_end_ _reference_start_Job 15:13_reference_end_ _reference_start_Psalms 18:15_reference_end_ _reference_start_Psalms 104:29_reference_end_ _reference_start_Psalms 32:02_reference_end_ _reference_start_Psalms 51:12_reference_end_ _reference_start_Psalms 51:19_reference_end_ _reference_start_Psalms 34:19_reference_end_ _reference_start_Psalms 142:04_reference_end_ _reference_start_Psalms 51:14_reference_end_ _reference_start_Psalms 139:07_reference_end_ _reference_start_Psalms 51:14_reference_end_ _reference_start_Psalms 1:04_reference_end_ _reference_start_Proverbs 16:18_reference_end_ _reference_start_Proverbs 16:19_reference_end_ _reference_start_Proverbs 29:23_reference_end_ _reference_start_Proverbs 14:29_reference_end_ _reference_start_Proverbs 2:18_reference_end_ _reference_start_Proverbs 9:16_reference_end_ _reference_start_Proverbs 21:16_reference_end_ _reference_start_Proverbs 25:23_reference_end_ _reference_start_Ecclesiastes 12:07_reference_end_ _reference_start_Ecclesiastes 1:06_reference_end_ _reference_start_Ecclesiastes 1:14_reference_end_ _reference_start_Ecclesiastes 1:17_reference_end_ _reference_start_Ecclesiastes 2:11_reference_end_ _reference_start_Ecclesiastes 2:17_reference_end_ _reference_start_Ecclesiastes 2:26_reference_end_ _reference_start_Ecclesiastes 4:04_reference_end_ _reference_start_Ecclesiastes 4:06_reference_end_ _reference_start_Ecclesiastes 4:16_reference_end_ _reference_start_Ecclesiastes 5:15_reference_end_ _reference_start_Ecclesiastes 6:09_reference_end_ _reference_start_Ecclesiastes 11:05_reference_end_ _reference_start_Isaiah 19:03_reference_end_ _reference_start_Jeremiah 49:36_reference_end_ _reference_start_Ezekiel 11:19_reference_end_ _reference_start_Daniel 7:02_reference_end_ _reference_start_Daniel 5:12_reference_end_ _reference_start_Daniel 6:04_reference_end_ _reference_start_Daniel 2:01_reference_end_ _reference_start_Daniel 2:03_reference_end_ _reference_start_Daniel 7:15_reference_end_ _reference_start_Daniel 5:20_reference_end_ _reference_start_Daniel 2:35_reference_end_ _reference_start_Daniel 8:08_reference_end_ _reference_start_Daniel 11:04_reference_end_ _reference_start_Jonah 1:04_reference_end_ _reference_start_Jonah 4:08_reference_end_ C~qdWI<.!xk^QD7*tgZM@3& 0 / + .  -  ,  + * ) ( ' &/ % $/ #  "  !   #          1$                           ~3 } |3 { z" y3 x3 w  vh u t s" r" q  p  o  n l \cme ritual laws \cmf lois des rituels réligieux _reference_start_Genesis 47:26_reference_end_ _reference_start_Genesis 26:05_reference_end_ _reference_start_Genesis 47:22_reference_end_ _reference_start_Exodus 5:14_reference_end_ _reference_start_Exodus 15:25_reference_end_ _reference_start_Exodus 15:26_reference_end_ _reference_start_Exodus 18:16_reference_end_ _reference_start_Exodus 18:20_reference_end_ _reference_start_Exodus 12:24_reference_end_ _reference_start_Exodus 12:14_reference_end_ _reference_start_Exodus 12:17_reference_end_ _reference_start_Exodus 12:43_reference_end_ _reference_start_Exodus 13:10_reference_end_ _reference_start_Exodus 27:21_reference_end_ _reference_start_Exodus 28:43_reference_end_ _reference_start_Exodus 29:09_reference_end_ _reference_start_Leviticus 18:26_reference_end_ _reference_start_Leviticus 25:18_reference_end_ _reference_start_Leviticus 18:04_reference_end_ _reference_start_Leviticus 18:05_reference_end_ _reference_start_Numbers 10:08_reference_end_ _reference_start_Deuteronomy 28:15_reference_end_ _reference_start_Deuteronomy 28:45_reference_end_ _reference_start_1 Samuel 30:25_reference_end_ _reference_start_2 Samuel 22:23_reference_end_ _reference_start_1 Kings 0:14_reference_end_ _reference_start_1 Kings 8:58_reference_end_ _reference_start_1 Kings 8:61_reference_end_ _reference_start_1 Kings 9:04_reference_end_ _reference_start_1 Kings 2:03_reference_end_ _reference_start_1 Kings 3:03_reference_end_ _reference_start_1 Kings 6:12_reference_end_ _reference_start_1 Kings 9:06_reference_end_ _reference_start_1 Kings 11:11_reference_end_ _reference_start_1 Kings 11:33_reference_end_ _reference_start_1 Kings 11:34_reference_end_ _reference_start_1 Kings 11:38_reference_end_ _reference_start_1 Chronicles 7:17_reference_end_ _reference_start_1 Chronicles 22:13_reference_end_ _reference_start_1 Chronicles 29:19_reference_end_ _reference_start_2 Chronicles 7:19_reference_end_ _reference_start_Psalms 2:07_reference_end_ _reference_start_Psalms 50:16_reference_end_ 00@]statutestatuteHebrew: חֹק \f loi \cme amount of something allotted to someone \cmf montant de qqch asignier à qqn \cme general law of God \cmf loi général de Dieu \cme law of a person in authority \cmf loi d'une personne en position d'autorité \cme law or commandment of God \cmf loi ou commandement de Dieu \cme portion (of sacrifice) given to priests \cmf portion (des sacrifices) donner au prêtres \cme ritual law of God \cmf loi ritue C~qdWJ=0# zm`SF9,vi\OB5( s  r  q  p o n m l  k  j  i ' h  g  f e  d  c  b a ` _  ^  ]  \  [  Z  Y  X W V U T S R Q P O N2 M L K  J  I  H & G " F ! E D  C  B  A  @  ? = > : =  <  ;  :- 9 8  7 6 5 4 3 2+ 1 ..N!!mstone (to)stone (to)Hebrew: .סָקַל \f lapider \cme throw stones at (not to kill) \cmf lapider mais pas pour tuer \cme to stone, kill \cmf tuer en lancant des pierres _reference_start_Exodus 8:22_reference_end_ _reference_start_Exodus 17:04_reference_end_ _reference_start_Exodus 19:13_reference_end_ _reference_start_Exodus 21:28_reference_end_ _reference_start_Exodus 21:29_reference_end_ _reference_start_Exodus 21:32_reference_end_ _reference_start_Deuteronomy 13:11_reference_end_ _reference_start_Deuteronomy 17:05_reference_end_ _reference_start_Deuteronomy 22:21_reference_end_ _reference_start_Deuteronomy 22:24_reference_end_ _reference_start_1 Samuel 30:06_reference_end_ _reference_start_2 Samuel 16:13_reference_end_ _reference_start_2 Samuel 16:06_reference_end_ _reference_start_1 Kings 21:10_reference_end_ _reference_start_1 Kings 21:13_reference_end_ _reference_start_1 Kings 21:14_reference_end_ _reference_start_1 Kings 21:15_reference_end_ MM/3stupiditystupidityHebrew: כְּסִילוּת \f stupidité \cme opposite of wisdom \cmf en opposition avec la sagesse _reference_start_Proverbs 9:13_reference_end_ BB:!!EtabernacletabernacleHebrew: מִּשְׁכָּן \f tabernacle \cme tent, place where people live \cmf tente, lieu d'habitation \cme tent, portable house of God \cmf tente, sanctuaire portable _reference_start_Exodus 25:09_reference_end_ _reference_start_Exodus 26:01_reference_end_ _reference_start_Numbers 10:01_reference_end_ _reference_start_Numbers 10:17_reference_end_ _reference_start_Numbers 10:21_reference_end_ _reference_start_Joshua 22:19_reference_end_ _reference_start_2 Samuel 7:06_reference_end_ _reference_start_1 Chronicles 6:17_reference_end_ _reference_start_1 Chronicles 16:39_reference_end_ _reference_start_1 Chronicles 17:05_reference_end_ _reference_start_1 Chronicles 21:29_reference_end_ _reference_start_1 Chronicles 23:26_reference_end_ _reference_start_Job 18:21_reference_end_ _reference_start_Psalms 26:08_reference_end_ _reference_start_Psalms 132:05_reference_end_ _reference_start_Psalms 132:07_reference_end_end_ _reference_start_1 Kings 6:03_reference_end_ _reference_start_1 Kings 6:05_reference_end_ _reference_start_1 Kings 6:17_reference_end_ _reference_start_1 Kings 6:33_reference_end_ _reference_start_1 Kings 21:01_reference_end_ _reference_start_1 Kings 7:21_reference_end_ _reference_start_1 Kings 7:50_reference_end_ _reference_start_2 Kings 20:18_reference_end_ _reference_start_2 Kings 18:16_reference_end_ _reference_start_2 Kings 23:13_reference_end_ _reference_start_Ezra 4:14_reference_end_ _reference_start_Ezra 5:14_reference_end_ _reference_start_Ezra 5:15_reference_end_ _reference_start_Ezra 6:05_reference_end_ _reference_start_Daniel 1:04_reference_end_ _reference_start_Daniel 4:01_reference_end_ _reference_start_Daniel 4:26_reference_end_ _reference_start_Daniel 5:05_reference_end_ _reference_start_Daniel 6:19_reference_end_ _reference_start_Daniel 5:02_reference_end_ _reference_start_Daniel 5:03_reference_end_ _reference_start_Jonah 2:05_reference_end_ _reference_start_Jonah 2:08_reference_end_ M++Wtent of meetingtent of meetingHebrew: אֹהֶל מֹועֵד \f tente de la Rencontre \cme tent where God was worhipped \cmf tente de la Rencontre où Dieu était adoré _reference_start_Exodus 26:09_reference_end_ _reference_start_Exodus 27:21_reference_end_ _reference_start_Exodus 28:43_reference_end_ _reference_start_Exodus 29:10_reference_end_ _reference_start_Leviticus 1:01_reference_end_ _reference_start_Leviticus 24:03_reference_end_ _referenc ==+temple, holy place, navetemple, holy place, naveHebrew: הֵיכָל \f lieu saint \cme outer room in temple building \cmf première chambre du temple \cme palace (of a king) \cmf palais d'un roi \cme place of worship of God or gods \cmf lieu d'adoration de Dieu ou des dieux \cme whole area of tabernacle \cmf aire du tabernacle \cme whole temple building \cmf le batiment entier _reference_start_1 Samuel 1:09_reference_end_ _reference_start_1 Samuel 3:03_reference_end_ _reference_start_2 Samuel 22:07_reference_nl\lrx~ &,28>DJPV\bhntz "(.4:@FLRX^djpv||   6m9n;or@sAtBvKwOxUzY{Z|a~t|   Ä#DŽ$Ȅ%Ʉ&ʄ'˄(̈́)΄*Є,ф.ք/݄12467;?BEKNQS2T>WQXTYX[\^_bdef'h.j:lTneoiqssux`zq|}   ΅5Q`n!"%&'(Ʌ/35 C~qdWJ=0# zm`SF9,vi\OB5( 6  5  4 3)( 2 1 # 0 / . - ,i +B *B )  (A 'A &= % $ #  "  !             '                     +                 ~ }  |  {  z 2 y  x  w ! v  u  t e_start_Numbers 10:03_reference_end_ _reference_start_Numbers 11:16_reference_end_ _reference_start_Numbers 11:24_reference_end_ _reference_start_Numbers 11:26_reference_end_ _reference_start_Numbers 14:10_reference_end_ _reference_start_Numbers 20:06_reference_end_ _reference_start_Joshua 18:01_reference_end_ _reference_start_1 Samuel 2:22_reference_end_ _reference_start_2 Samuel 6:17_reference_end_ _reference_start_2 Samuel 7:06_reference_end_ _reference_start_1 Kings 1:39_reference_end_ _reference_start_1 Kings 2:28_reference_end_ _reference_start_1 Kings 2:29_reference_end_ _reference_start_1 Kings 2:30_reference_end_ _reference_start_1 Kings 8:04_reference_end_ _reference_start_1 Chronicles 9:19_reference_end_ _reference_start_1 Chronicles 9:21_reference_end_ _reference_start_1 Chronicles 9:23_reference_end_ _reference_start_1 Chronicles 23:32_reference_end_ _reference_start_2 Chronicles 1:03_reference_end_ _reference_start_2 Chronicles 5:05_reference_end_ _reference_start_Psalms 61:05_reference_end_ MM throatthroatHebrew: לֹעַ \f gorge \cme throat, physical organ \cmf gorge, organe physique _reference_start_Proverbs 23:02_reference_end_))ktested (to be)tested (to be)Hebrew: צָרַף \f afiné, être afiné \cme be purified by suffering \cmf être purifié par suffrance \cme refine, prove a person true \cmf afiner, prouver la loyauté d'une personne \cme test (a person's loyalty) \cmf tester ( la loyauté d'une personne) _reference_start_Jude 7:04_reference_end_ _reference_start_Jude 7:04_reference_end_ _reference_start_2 Samuel 22:31_reference_end_ _reference_start_Psalms 66:10_reference_end_ _reference_start_Psalms 66:10_reference_end_ _reference_start_Psalms 105:19_reference_end_ _reference_start_Isaiah 1:25_reference_end_ _reference_start_Isaiah 1:25_reference_end_ _reference_start_Jeremiah 6:29_reference_end_ _reference_start_Daniel 12:10_reference_end_ _reference_start_Daniel 11:35_reference_end_ honor of important person \cmf place d'honeur d'une personne importante \cme throne of king or ruler, or judge \cmf trône du roi ou chef, ou un juge _reference_start_Genesis 41:40_reference_end_ _reference_start_Exodus 17:16_reference_end_ _reference_start_Exodus 11:05_reference_end_ _reference_start_Exodus 12:29_reference_end_ _reference_start_1 Samuel 1:09_reference_end_ _reference_start_1 Samuel 2:08_reference_end_ _reference_start_1 Samuel 4:13_reference_end_ _reference_start_1 Samuel 4:18_reference_end_ _reference_start_2 Samuel 3:10_reference_end_ _reference_start_2 Samuel 7:13_reference_end_ _reference_start_2 Samuel 7:16_reference_end_ _reference_start_2 Samuel 14:09_reference_end_ _reference_start_1 Kings 22:19_reference_end_ _reference_start_1 Kings 1:1_reference_end_ _reference_start_1 Kings 2:04_reference_end_ _reference_start_1 Kings 2:12_reference_end_ _reference_start_1 Kings 2:24_reference_end_ _reference_start_1 Kings 2:33_reference_end_ _reference_start_1 Kings 2:45_reference_end_ _reference_start_1 Kings 3:06_reference_end_ _reference_start_1 Kings 5:19_reference_end_ _reference_start_1 Kings 8:20_reference_end_ _reference_start_1 Kings 8:25_reference_end_ _reference_start_1 Kings 9:05_reference_end_ _reference_start_1 Kings 10:09_reference_end_ _reference_start_1 Kings 16:11_reference_end_ _reference_start_1 Kings 2:19_reference_end_ _reference_start_1 Kings 7:07_reference_end_ _reference_start_1 Kings 10:18_reference_end_ _reference_start_1 Kings 22:10_reference_end_ _reference_start_1 Chronicles 7:12_reference_end_ _reference_start_1 Chronicles 17:14_reference_end_ _reference_start_1 Chronicles 22:10_reference_end_ _reference_start_1 Chronicles 28:05_reference_end_ _reference_start_1 Chronicles 29:23_reference_end_ _reference_start_2 Chronicles 7:18_reference_end_ _reference_start_Esther 1:02_reference_end_ _reference_start_Esther 3:01_reference_end_ _reference_start_Esther 5:01_reference_end_ _reference_start_Proverbs 29:14_reference_end_ _reference_start_Jonah 3:06_reference_end_ LL$)thronethroneHebrew: כִּסֵּא \f trône \cme God as heavenly king \cmf Dieu comme roi céleste \cme royal authority \cmf autorité royale \cme seat, place of C~qdWJ=0# zm`SF9,vi\OB5( y x w 2 v  u  t s r q p" o n2 m$ l k! j i h g f e d c! b a `  _  ^  ]  \ [  Z Y X W V U  T  S  R  Q  P  O  N  M  L  K J  I  H  G  F  E - D ! C  B  A  @  ?  >  =  <  ;  :  9  8  7  nn}tonguetongueHebrew: לָשֹׁון \f langue \cme organ of speech; what is said, figurative sense \cmf organ de parole; ce qui est dit, sense figuré _reference_start_Proverbs 6:24_reference_end_ _reference_start_Proverbs 10:20_reference_end_ _reference_start_Proverbs 10:31_reference_end_ _reference_start_Proverbs 12:18_reference_end_ _reference_start_Proverbs 12:19_reference_end_ _reference_start_Proverbs 15:02_reference_end_ _reference_start_Proverbs 15:04_reference_end_ _reference_start_Proverbs 15:33_reference_end_ _reference_start_Proverbs 16:01_reference_end_ _reference_start_Proverbs 16:17_reference_end_ _reference_start_Proverbs 17:04_reference_end_ _reference_start_Proverbs 17:20_reference_end_ _reference_start_Proverbs 21:06_reference_end_ _reference_start_Proverbs 21:23_reference_end_ _reference_start_Proverbs 25:15_reference_end_ _reference_start_Proverbs 28:33_reference_end_ Z''qtransgressiontransgressionHebrew: פֶּשַׁע \f iniquité, péché \cme guilt of transgression \cmf culpabilité de rébellion \cme rebellion ag"++tongue, use thetongue, use theHebrew: לָשַׁן \f langue, utiliser la \cme slander, to \cmf calomnier _reference_start_Proverbs 30:10_reference_end_ains a person \cmf rébellion contre une personne \cme rebellion against God \cmf rébellion contre Dieu \cme rebellion against God - its forgiveness \cmf rébellion contre Dieu, son pardon \cme rebellion against God - its punishment \cmf rébellion contre Dieu, sa punition \cme rebellion of nation against nation \cmf rébellion de nation contre nation _reference_start_Genesis 31:36_reference_end_ _reference_start_Genesis 50:17_reference_end_ _reference_start_Exodus 22:08_reference_end_ _reference_start_Exodus 34:07_reference_end_ _reference_start_Exodus 23:21_reference_end_ _reference_start_Leviticus 16:16_reference_end_ _reference_start_Numbers 14:18_reference_end_ _reference_start_Joshua 24:19_reference_end_ _reference_start_1 Samuel 24:12_reference_end_ _reference_start_1 Samuel 25:28_reference_end_ _reference_start_1 Kings 8:50_reference_end_ _reference_start_Psalms 5:11_reference_end_ _reference_start_Psalms 19:14_reference_end_ _reference_start_Psalms 59:04_reference_end_ _reference_start_Psalms 36:02_reference_end_ _reference_start_Psalms 51:05_reference_end_ _reference_start_Psalms 32:01_reference_end_ _reference_start_Psalms 39:09_reference_end_ _reference_start_Psalms 51:03_reference_end_ _reference_start_Psalms 65:04_reference_end_ _reference_start_Psalms 32:05_reference_end_ _reference_start_Proverbs 10:12_reference_end_ _reference_start_Proverbs 10:19_reference_end_ _reference_start_Proverbs 12:13_reference_end_ _reference_start_Proverbs 17:09_reference_end_ _reference_start_Proverbs 28:24_reference_end_ _reference_start_Proverbs 29:06_reference_end_ _reference_start_Proverbs 29:16_reference_end_ _reference_start_Proverbs 29:22_reference_end_ _reference_start_Proverbs 19:11_reference_end_ _reference_start_Proverbs 28:02_reference_end_ _reference_start_Isaiah 58:01_reference_end_ _reference_start_Daniel 8:12_reference_end_ _reference_start_Daniel 8:13_reference_end_ _reference_start_Daniel 9:24_reference_end_ _reference_start_Amos 1:03_reference_end_ _reference_start_Micah 1:05_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5( <#  ;#A :# 9# 8# 7# 6# 5#  4"/ 3"" 2! 1!G 0  /  .  -  ,  +  *  )  ( > ' 8 & 8 % 8 $ 4 # 4 "  !         4     3 %&        2   !      :              A 3 ~' }  |3 {$ z; H''Utrust in (to)trust in (to)Hebrew: רְחַץ \f confiance, avoir confieance en \cme trust in someone or something \cmf avoir confiance en qqn/qqch _reference_start_Daniel 3:28_reference_end_++otransgress (to)transgress (to)Hebrew: פָּשַׁע \f pécher \cme nation rebel against nation \cmf une nation rebelle contre une nation \cme rebel against a person \cmf rebeller contre une personne \cme rebel against God \cmf rébeller contre Dieu \cme rebel against God - its forgiveness \cmf rebeller contre Dieu, son pardon _reference_start_1 Kings 12:19_reference_end_ _reference_start_1 Kings 8:50_reference_end_ _reference_start_2 Kings 1:01_reference_end_ _reference_start_2 Kings 3:05_reference_end_ _reference_start_2 Kings 3:07_reference_end_ _reference_start_Psalms 37:38_reference_end_ _reference_start_Psalms 51:15_reference_end_ _reference_start_Proverbs 18:19_reference_end_ _reference_start_Proverbs 28:21_reference_end_ _reference_start_Daniel 8:23_reference_end_u, en qqn ou en qqch \cme trust in God, someone or something \cmf en Dieu, en qqn or en qqch _reference_start_Deuteronomy 28:52_reference_end_ _reference_start_2 Kings 18:21_reference_end_ _reference_start_1 Chronicles 5:20_reference_end_ _reference_start_2 Chronicles 32:10_reference_end_ _reference_start_Psalms 31:15_reference_end_ _reference_start_Psalms 32:10_reference_end_ _reference_start_Psalms 52:09_reference_end_ _reference_start_Psalms 52:10_reference_end_ _reference_start_Psalms 56:04_reference_end_ _reference_start_Psalms 56:05_reference_end_ _reference_start_Psalms 56:12_reference_end_ _reference_start_Psalms 62:09_reference_end_ _reference_start_Proverbs 14:16_reference_end_ _reference_start_Proverbs 28:01_reference_end_ _reference_start_Proverbs 28:25_reference_end_ _reference_start_Proverbs 3:05_reference_end_ _reference_start_Proverbs 28:26_reference_end_ _reference_start_Proverbs 31:11_reference_end_ _reference_start_Isaiah 26:03_reference_end_ _reference_start_Isaiah 26:04_reference_end_ 5SOq#++#turn aside (to)turn aside (to)Hebrew: סוּר \f s'écarter \cme turn aside from commands of God \cmf s'éĂ"%%I"truth, righttruth, rightHebrew: קְשׁוּט \f vérité \cme righteousness of God \cmf vérité - la justice de Dieu \cme what is true \cmf ce qui est vrai _reference_start_Daniel 4:34_reference_end_ _reference_start_Daniel 2:47_reference_end_^!!!trusttrustHebrew: מִבְטַח \f confidence \cme object of confidence, of trust \cmf object de confiance, de croyance _reference_start_Psalms 71:05_reference_end_ _reference_start_Proverbs 14:26_reference_end_? !!O trust (to)trust (to)Hebrew: בָּטַח \f croire, avoir confier en \cme be confident \cmf avoire confiance (en soit) \cme rely on God, someone or something \cmf faire confiance en Diecarter des commandements de Dieu (BDB-Q1.) _reference_start_Exodus 32:08_reference_end_ _reference_start_Deuteronomy 5:29_reference_end_ _reference_start_Deuteronomy 7:04_reference_end_ _reference_start_Deuteronomy 9:12_reference_end_ _reference_start_Deuteronomy 28:14_reference_end_ _reference_start_Deuteronomy 31:29_reference_end_ _reference_start_Jude 2:17_reference_end_ _reference_start_1 Samuel 6:12_reference_end_ _reference_start_1 Samuel 12:20_reference_end_ _reference_start_1 Samuel 12:21_reference_end_ _reference_start_2 Samuel 2:22_reference_end_ _reference_start_2 Samuel 22:23_reference_end_ _reference_start_1 Kings 15:05_reference_end_ _reference_start_1 Kings 22:43_reference_end_ _reference_start_Psalms 14:03_reference_end_ _reference_start_Psalms 18:23_reference_end_ _reference_start_Psalms 34:15_reference_end_ _reference_start_Psalms 119:102_reference_end_ _reference_start_Proverbs 3:07_reference_end_ _reference_start_Proverbs 28:09_reference_end_ _reference_start_Daniel 9:11_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5( (  ~( }( |( {( z' y' x'+ w'+ v' u'  t' s' r'! q& p& o& n& m& l& k& j& i& h& g& f& e% d%  c%  b% a% `%  _% ^% ]% \% [$j' Z$O Y$$ X$ W$#" V$ U$ T$ S$ R$ Q$ P$ O$ N$ M$ L$" K$" J$" I# H# G# F#wf E#" D# C# B# + A#  @#  ?#  >#  =# land and people of Isael by immoral actions \cmf rendre le pays ou peuple d'Israël impurs par actions imorales \cme immoral sexual impurity \cmf impureté moral sexuel _reference_start_Genesis 34:05_reference_end_ _reference_start_Genesis 34:13_reference_end_ _reference_start_Genesis 34:27_reference_end_ _reference_start_Leviticus 5:03_reference_end_ _reference_start_Leviticus 15:18_reference_end_ _reference_start_Leviticus 18:30_reference_end_ _reference_start_Leviticus 18:24_reference_end_ _reference_start_Leviticus 18:25_reference_end_ _reference_start_Leviticus 18:27_reference_end_ _reference_start_Leviticus 18:28_reference_end_ _reference_start_Leviticus 18:20_reference_end_ _reference_start_Leviticus 18:23_reference_end_ _reference_start_Numbers 6:09_reference_end_ _reference_start_Numbers 35:34_reference_end_ _reference_start_Deuteronomy 24:04_reference_end_ _reference_start_2 Chronicles 36:14_reference_end_ _reference_start_Psalms 79:01_reference_end_ _reference_start_Psalms 106:39_reference_end_ '$++ $unclean (to be)unclean (to be)Hebrew: טָמֵא \f impur, être impur \cme be or make physically ritually unclean \cmf causer ou avoir impurités physiques rituels \cme defile God's house or people by idols, etc. \cmf rendre la maison de Dieu impurite par des idols, etc. \cme defile the  ]%%uncleanuncleanHebrew: טֻמְאָה \f impur \cme defilement of temple by idols, etc \cmf impurté dans le temple à cause des idols, etc. \cme physical ritual uncleanness \cmf impurté physique rituel \cme ritually unclean \cmf impur rituellement _reference_start_Genesis 7:02_reference_end_ _reference_start_Genesis 7:08_reference_end_ _reference_start_Leviticus 5:03_reference_end_ _reference_start_Leviticus 7:20_reference_end_ _reference_start_Leviticus 13:08_reference_end_ _reference_start_Leviticus 18:19_reference_end_ _reference_start_Deuteronomy 23:11_reference_end_ _reference_start_1 Samuel 20:26_reference_end_ _reference_start_2 Samuel 11:04_reference_end_ _reference_start_2 Chronicles 29:16_reference_end_ .&''!&understandingunderstandingHebrew: בִּינָה \f comprehention \cme faculty of understanding \cmf la faculté de comprendre \cme personification of understanding \cmf personification de comprehention \cme persuasiveness \cmf force de persuasion _reference_start_Proverbs 3:05_reference_end_ _reference_start_Proverbs 4:05_reference_end_ _reference_start_Proverbs 4:06_reference_end_ _reference_start_Proverbs 16:16_reference_end_ _reference_start_Proverbs 23:04_reference_end_ _reference_start_Proverbs 30:02_reference_end_ _reference_start_Proverbs 2:08_reference_end_ _reference_start_Proverbs 7:04_reference_end_ _reference_start_Proverbs 8:14_reference_end_ _reference_start_Proverbs 7:21_reference_end_ _reference_start_Proverbs 16:21_reference_end_ _reference_start_Proverbs 16:23_reference_end_ l'11 'unfaithful (to be)unfaithful (to be)Hebrew: זְנוּת \f infidèle, être infidèle \cme worship other gods (figure of sexual unfaithfulness) \cmf adorer autres dieux (figure de infidélité sexuel) _reference_start_Numbers 14:33_reference_end_ _reference_start_Jeremiah 3:02_reference_end_ _reference_start_Jeremiah 3:09_reference_end_ _reference_start_Jeremiah 13:27_reference_end_ _reference_start_Ezekiel 23:27_reference_end_ _reference_start_Ezekiel 43:07_reference_end_ _reference_start_Ezekiel 43:09_reference_end_ _reference_start_Hosea 4:11_reference_end_ _reference_start_Hosea 6:10_reference_end_ 77E(!![(unfaithfulunfaithfulHebrew: .מָעַל \f infidèle \cme act unfaithfully towards a person \cmf agir sans fidélité contre une personne \cme act unfaithfully towards God \cmf agir sans fidélité contre Dieu \cme unfaithfulness in marriage \cmf infidélité dans un marriage _reference_start_Leviticus 5:15_reference_end_ _reference_start_Numbers 5:12_reference_end_ _reference_start_Numbers 5:27_reference_end_ _reference_start_Joshua 7:01_reference_end_ _reference_start_1 Chronicles 2:07_reference_end_ _reference_start_1 Chronicles 5:25_reference_end_ _reference_start_1 Chronicles 10:13_reference_end_ _reference_start_Proverbs 16:10_reference_end_ _reference_start_Daniel 9:07_reference_end_ C~qdWJ=0# zm`SF9,uh[NA4'  B. A- @-  ?-  >- =-  <- ;- . :- 9, 8, 7, 6, 5, 4, 3, 2+ 1+ 0+ /+ .+ -+ ,+ ++ *+ )+ (+ '+ &+ %+  $+R #+  "+ !+ + + + + + + +  *  * * *  * * * * * * )  )  ) )+ )J )  ) ) ) ) ) )1 (  ( ( (  Q)55K)unholy (to be, make)unholy (to be, make)Hebrew: .חָלַל \f souiller \cme damage God's reputation \cmf endomager la réputation de Dieu \cme dishonor, insult \cmf déshonorer, insulter \cme make unholy, defile \cmf faire devenir impure, souiller \cme make use of \cmf utiliser _reference_start_Genesis 49:04_reference_end_ _reference_start_Exodus 20:25_reference_end_ _reference_start_Exodus 31:14_reference_end_ _reference_start_Leviticus 18:21_reference_end_ _reference_start_Leviticus 19:29_reference_end_ _reference_start_Deuteronomy 28:30_reference_end_ _reference_start_1 Chronicles 5:01_reference_end_ _reference_start_Psalms 74:07_reference_end_ _reference_start_Isaiah 43:28_reference_end_ _reference_start_Jeremiah 16:18_reference_end_ _reference_start_Ezekiel 13:19_reference_end_ _reference_start_Daniel 11:31_reference_end_   \*##*uprightnessuprightnessHebrew: מֵישָׁר \f droiture \cme equity, moral uprightness \cmf équité, droiture morale \cme moral straightness, righteousness \cmf droiture morale, justesse \cme what is right, what is due \cmf ce qui est juste, ce qui est du _reference_start_Proverbs 1:03_reference_end_ _reference_start_Proverbs 2:09_reference_end_ _reference_start_Proverbs 8:06_reference_end_ _reference_start_Proverbs 23:16_reference_end_ _reference_start_Proverbs 2:13_reference_end_ _reference_start_Proverbs 4:11_reference_end_ _reference_start_Proverbs 11:24_reference_end_ _reference_start_Proverbs 14:02_reference_end_ _reference_start_Proverbs 17:26_reference_end_ _reference_start_Proverbs 11:24_reference_end_e_start_Proverbs 21:02_reference_end_ _reference_start_Proverbs 2:07_reference_end_ _reference_start_Proverbs 2:21_reference_end_ _reference_start_Proverbs 3:11_reference_end_ _reference_start_Proverbs 3:32_reference_end_ _reference_start_Proverbs 8:09_reference_end_ _reference_start_Proverbs 11:03_reference_end_ _reference_start_Proverbs 1106:1_reference_end_ _reference_start_Proverbs 12:06_reference_end_ _reference_start_Proverbs 14:09_reference_end_ _reference_start_Proverbs 14:11_reference_end_ _reference_start_Proverbs 15:08_reference_end_ _reference_start_Proverbs 15:19_reference_end_ _reference_start_Proverbs 16:07_reference_end_ _reference_start_Proverbs 16:13_reference_end_ _reference_start_Proverbs 20:11_reference_end_ _reference_start_Proverbs 21:08_reference_end_ _reference_start_Proverbs 21:18_reference_end_ _reference_start_Proverbs 21:29_reference_end_ _reference_start_Proverbs 28:10_reference_end_ _reference_start_Proverbs 29:10_reference_end_ _reference_start_Proverbs 29:27_reference_end_   G,s,voicevoiceHebrew: קוֹל \f voie \cme speech, what is said; figurative sense \cmf parole, ce qui est dit; sense figuré _reference_start_Proverbs 1:20_reference_end_ _reference_start_Proverbs 2:03_reference_end_ _reference_start_Proverbs 5:13_reference_end_ _reference_start_Proverbs 8:01_reference_end_ _reference_start_Proverbs 8:04_reference_end_ _reference_start_Proverbs 26:25_reference_end_ _reference_start_Proverbs 27:14_reference_end_++uprightuprightHebrew: יָשָׁר \f droiture \cme right, pleasing \cmf droit, agréable \cme upright, just \cmf droit, justse _reference_start_Proverbs 12:15_reference_end_ _reference_start_Proverbs 14:12_reference_end_ _reference_start_Proverbs 16:25_reference_end_ _referenc TTZ. .way, roadway, roadHebrew: דֶּרֶךְ \f voie, chemin \cme action, undertaking; figurative҄9-[-warnwarnHebrew: עוּד \f avertir \cme command, prohibit \cmf commander, proscrir \cme obey \cmf obéir \cme swear in, desigante as a witness \cmf jurer, désignier qqn comme témoin _reference_start_Exodus 19:23_reference_end_ _reference_start_Deuteronomy 32:46_reference_end_ _reference_start_Deuteronomy 4:26_reference_end_ _reference_start_2 Kings 17:03_reference_end_ _reference_start_Isaiah 8:02_reference_end_ _reference_start_Jeremiah 11:07_reference_end_ _reference_start_Jeremiah 11:07_reference_end_ _reference_start_Jeremiah 32:10_reference_end_ sense \cmf action, entreprise; sense figuré \cme duty; figurative sense \cmf obligation, devoir; sense figuré \cme moral action or character; figurative sense \cmf action morale or caractère moral; sense figuré _reference_start_Proverbs 1:15_reference_end_ _reference_start_Proverbs 1:31_reference_end_ _reference_start_Proverbs 2:08_reference_end_ _reference_start_Proverbs 2:12_reference_end_ _reference_start_Proverbs 2:13_reference_end_ _reference_start_Proverbs 2:20_reference_end_ _reference_start_Proverbs 3:06_reference_end_ _reference_start_Proverbs 3:13_reference_end_ _reference_start_Proverbs 3:17_reference_end_ _reference_start_Proverbs 3:31_reference_end_ _reference_start_Proverbs 4:11_reference_end_ _reference_start_Proverbs 4:19_reference_end_ _reference_start_Proverbs 6:06_reference_end_ _reference_start_Proverbs 6:23_reference_end_ _reference_start_Proverbs 7:25_reference_end_ _reference_start_Proverbs 8:13_reference_end_ _reference_start_Proverbs 8:22_reference_end_ _reference_start_Proverbs 8:22_reference_end_ _reference_start_Proverbs 9:06_reference_end_ _reference_start_Proverbs 10:29_reference_end_ _reference_start_Proverbs 11:03_reference_end_ _reference_start_Proverbs 11:20_reference_end_ _reference_start_Proverbs 12:15_reference_end_ _reference_start_Proverbs 12:28_reference_end_ _reference_start_Proverbs 13:06_reference_end_ _reference_start_Proverbs 13:15_reference_end_ _reference_start_Proverbs 14:12_reference_end_ _reference_start_Proverbs 14:14_reference_end_ _reference_start_Proverbs 15:09_reference_end_ _reference_start_Proverbs 15:29_reference_end_ _reference_start_Proverbs 16:25_reference_end_ _reference_start_Proverbs 16:29_reference_end_ _reference_start_Proverbs 16:31_reference_end_ _reference_start_Proverbs 20:24_reference_end_ _reference_start_Proverbs 21:08_reference_end_ _reference_start_Proverbs 22:05_reference_end_ _reference_start_Proverbs 23:26_reference_end_ _reference_start_Proverbs 28:06_reference_end_ _reference_start_Proverbs 28:10_reference_end_ _reference_start_Proverbs 28:18_reference_end_ _reference_start_Proverbs 29:27_reference_end_ _reference_start_Proverbs 31:03_reference_end_ _reference_start_Proverbs 12:19_reference_end_ _reference_start_Proverbs 21:16_reference_end_ _reference_start_Proverbs 22:06_reference_end_ _reference_start_Proverbs 4:26_reference_end_ _reference_start_Proverbs 5:21_reference_end_ _reference_start_Proverbs 1:1_reference_end_ _reference_start_Proverbs 10:09_reference_end_ _reference_start_Proverbs 14:02_reference_end_ _reference_start_Proverbs 14:08_reference_end_ _reference_start_Proverbs 14:12_reference_end_ _reference_start_Proverbs 16:02_reference_end_ _reference_start_Proverbs 16:07_reference_end_ _reference_start_Proverbs 16:09_reference_end_ _reference_start_Proverbs 16:17_reference_end_ _reference_start_Proverbs 16:25_reference_end_ _reference_start_Proverbs 19:03_reference_end_ _reference_start_Proverbs 19:16_reference_end_ _reference_start_Proverbs 21:02_reference_end_ _reference_start_Proverbs 21:29_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5( / /  /w / / / / ~. }. |. {. z. y. x. w. v. u. t. s. r. q. p. o. n. m. l.  k. j. i. h. g. f. e. d. c. b. a. `. _. ^. ]. \. [.  Z.  Y.  X.  W.  V.  U.  T.  S. R. Q. P. O. N. M. L. K. J. I. H. G. F. E. D. C. 33I/--K/wickedness, evilwickedness, evilHebrew: זִמָּה \f méchanceté, infamie \cme acts that are repugnant to God \cmf acts que Dieu haïse, qui lui sont répugnants \cme plans that are evil, sinful \cmf plans qui sont mauvais, scandaleux _reference_start_Leviticus 18:17_reference_end_ _reference_start_Leviticus 19:29_reference_end_ _reference_start_Leviticus 20:14_reference_end_ _reference_start_Psalms 26:10_reference_end_ _reference_start_Psalms 119:150_reference_end_ _reference_start_Proverbs 10:23_reference_end_ _reference_start_Proverbs 21:27_reference_end_ _reference_start_Proverbs 24:09_reference_end_ _reference_start_Isaiah 32:07_reference_end_ _reference_start_Hosea 6:09_reference_end_ C~qdWJ=0# xk^QD7*tgZM@3& H0  G0 F0! E0 D0 C0 B0 A0  @0  ?0 >0 =0  <0 ;0 :0 90 80 70 60- 50G 40 30 20 10Z 007 /0  .0 -0 ,0  +0  *0  )0 (0ww '0w5 &0 %0 $0 #0^ "0 !0 0 0 0" 0 0 0 0% 0  0 / 0  0  0  0  0  0 0 0  0 0 0 0 0# 0 0 / /  / mal moralement; celui qui fait mal \cme guilty of a crime \cmf être coupable d'un crime \cme guilty of sin \cmf coupable du péché \cme hostile to God \cmf hostile contre Dieu \cme idolatry \cmf idolatrie \cme trouble, sorrow \cmf malheur, chagrin \cme unethical relations \cmf rélations immorals \cme wickedness, sin \cmf péché, mechanceté _reference_start_Genesis 18:23_reference_end_ _reference_start_Genesis 18:25_reference_end_ _reference_start_Genesis 35:18_reference_end_ _reference_start_Exodus 22:08_reference_end_ _reference_start_Exodus 2:13_reference_end_ _reference_start_Exodus 23:01_reference_end_ _reference_start_Exodus 23:07_reference_end_ _reference_start_Exodus 9:27_reference_end_ _reference_start_Numbers 16:26_reference_end_ _reference_start_Deuteronomy 26:14_reference_end_ _reference_start_1 Samuel 24:14_reference_end_ _reference_start_1 Samuel 24:14_reference_end_ _reference_start_1 Samuel 15:23_reference_end_ _reference_start_2 Samuel 4:11_reference_end_ _reference_start_2 Samuel 22:22_reference_end_ _reference_start_1 Kings 8:47_reference_end_ _reference_start_1 Kings 8:32_reference_end_ _reference_start_2 Chronicles 6:37_reference_end_ _reference_start_Psalms 1:04_reference_end_ _reference_start_Psalms 17:09_reference_end_ _reference_start_Psalms 18:22_reference_end_ _reference_start_Psalms 34:22_reference_end_ _reference_start_Psalms 139:19_reference_end_ _reference_start_Psalms 141:06_reference_end_ _reference_start_Psalms 1:05_reference_end_ _reference_start_Psalms 3:08_reference_end_ _reference_start_Psalms 94:21_reference_end_ _reference_start_Psalms 5:06_reference_end_ _reference_start_Psalms 1:06_reference_end_ _reference_start_Psalms 32:10_reference_end_ _reference_start_Psalms 119:053_reference_end_ _reference_start_Psalms 119:119_reference_end_ _reference_start_Psalms 7:10_reference_end_ _reference_start_Psalms 9:06_reference_end_ _reference_start_Psalms 9:17_reference_end_ _reference_start_Psalms 9:18_reference_end_ _reference_start_Psalms 17:13_reference_end_ _reference_start_Psalms 7:15_reference_end_ _reference_start_Psalms 10:07_reference_end_ _reference_start_Psalms 55:11_reference_end_ _reference_start_Psalms 90:10_reference_end_ _reference_start_Psalms 1:01_reference_end_ _reference_start_Psalms 5:05_reference_end_ _reference_start_Psalms 28:03_reference_end_ _reference_start_Psalms 71:04_reference_end_ _reference_start_Psalms 45:08_reference_end_ _reference_start_Proverbs 11:11_reference_end_ _reference_start_Proverbs 16:12_reference_end_ _reference_start_Proverbs 24:19_reference_end_ _reference_start_Proverbs 24:20_reference_end_ _reference_start_Proverbs 28:01_reference_end_ _reference_start_Proverbs 29:16_reference_end_ _reference_start_Proverbs 12:02_reference_end_ _reference_start_Proverbs 6:12_reference_end_ _reference_start_Proverbs 6:18_reference_end_ _reference_start_Proverbs 10:29_reference_end_ _reference_start_Proverbs 11:07_reference_end_ _reference_start_Proverbs 17:04_reference_end_ _reference_start_Proverbs 19:28_reference_end_ _reference_start_Proverbs 21:15_reference_end_ _reference_start_Proverbs 30:20_reference_end_ _reference_start_Proverbs 3:33_reference_end_ _reference_start_Proverbs 4:17_reference_end_ _reference_start_Proverbs 10:02_reference_end_ _reference_start_Proverbs 12:03_reference_end_ _reference_start_Proverbs 16:02_reference_end_ _reference_start_Proverbs 17:13_reference_end_ _reference_start_Proverbs 17:23_reference_end_ _reference_start_Proverbs 18:05_reference_end_ _reference_start_Proverbs 20:26_reference_end_ _reference_start_Proverbs 24:24_reference_end_ _reference_start_Proverbs 25:05_reference_end_ _reference_start_Proverbs 28:04_reference_end_ _reference_start_Proverbs 28:15_reference_end_ _reference_start_Proverbs 29:02_reference_end_ _reference_start_Proverbs 29:12_reference_end_ _reference_start_Proverbs 4:19_reference_end_ _reference_start_Proverbs 9:07_reference_end_ _reference_start_Proverbs 10:03_reference_end_ _reference_start_Proverbs 11:07_reference_end_ _reference_start_Proverbs 12:26_reference_end_ _reference_start_Proverbs 15:09_reference_end_ _reference_start_Proverbs 21:29_reference_end_ _reference_start_Proverbs 14:11_reference_end_ _reference_start_Proverbs 15:29_reference_end_ _reference_start_Proverbs 12:21_reference_end_ _reference_start_Proverbs 22:08_reference_end_ _reference_start_Proverbs 22:08_reference_end_ _reference_start_Proverbs 8:07_reference_end_ _reference_start_Proverbs 11:18_reference_end_ _reference_start_Proverbs 12:21_reference_end_ _reference_start_Proverbs 15:28_reference_end_ _reference_start_Proverbs 19:28_reference_end_ _reference_start_Proverbs 29:07_reference_end_ _reference_start_Proverbs 10:04_reference_end_ _reference_start_Ecclesiastes 9:02_reference_end_ _reference_start_Ecclesiastes 8:13_reference_end_ _reference_start_Ecclesiastes 3:16_reference_end_ _reference_start_Daniel 9:05_reference_end_ _reference_start_Daniel 9:15_reference_end_ _reference_start_Daniel 11:32_reference_end_ _reference_start_Daniel 12:10_reference_end_ _reference_start_Daniel 12:10_reference_end_ 1m1wisdomwisdomHebrew: תּוּשִׁיָּה \f sagesse \cme abiding success, sound wisdom \cmf success qui dure, sagesse justse \cme ethical and religious wisdom, fear God \cmf sagesse morale et religieuse, craindre Dieu _reference_start_Proverbs 8:11_reference_end_ _reference_start_Wisdom of Solomon 1:1_reference_end_ _reference_start_Proverbs 2:07_reference_end_ _reference_start_Proverbs 3:21_reference_end_ _reference_start_Proverbs 8:14_reference_end_ _reference_start_Proverbs 18:01_reference_end_ _reference_ߪN0!!m0wickednesswickednessHebrew: רָשָׁע / רָשַׁע \f méchanceté \cme act wickedly \cmf agir avec méchanceté \cme condem as guilty, morally and religiouslly \cmf condamné comme coupable, moralement, réligeusement \cme condemn as guilty, civil court \cmf condamné comme coupable, cour civil \cme ethical evil; one who does evil \cmf  C~qdWJ=0# zm`SF9,vi\OB5( 1 1 1 1! 1! 1 1 1 1 1 1 1 1 ~1 }1 |1 {1  z1 y1 x1 w1 v1 u1 t1 s1 r1 q1I p1 o0 n0 m0 l0  k0  j0 i0 h0  g0  f0 e0 d0 c0  b0  a0 `0 _0 ^0  ]0 \0 [0 Z0 Y0  X0  W0  V0  U0 T0 S0 R0 Q0 P0 O0 N0 M0 L0 K0 J0 I0 start_Proverbs 1:02_reference_end_ _reference_start_Proverbs 1:07_reference_end_ _reference_start_Proverbs 2:02_reference_end_ _reference_start_Proverbs 2:10_reference_end_ _reference_start_Proverbs 3:13_reference_end_ _reference_start_Proverbs 10:23_reference_end_ _reference_start_Proverbs 4:05_reference_end_ _reference_start_Proverbs 4:07_reference_end_ _reference_start_Proverbs 4:07_reference_end_ _reference_start_Proverbs 4:11_reference_end_ _reference_start_Proverbs 5:01_reference_end_ _reference_start_Proverbs 9:10_reference_end_ _reference_start_Proverbs 10:13_reference_end_ _reference_start_Proverbs 13:10_reference_end_ _reference_start_Proverbs 14:01_reference_end_ _reference_start_Proverbs 14:06_reference_end_ _reference_start_Proverbs 14:08_reference_end_ _reference_start_Proverbs 14:33_reference_end_ _reference_start_Proverbs 15:33_reference_end_ _reference_start_Proverbs 16:16_reference_end_ _reference_start_Proverbs 17:16_reference_end_ _reference_start_Proverbs 17:24_reference_end_ _reference_start_Proverbs 18:04_reference_end_ _reference_start_Proverbs 21:30_reference_end_ _reference_start_Proverbs 23:23_reference_end_ _reference_start_Proverbs 24:03_reference_end_ _reference_start_Proverbs 28:26_reference_end_ _reference_start_Proverbs 24:07_reference_end_ _reference_start_Proverbs 24:14_reference_end_ _reference_start_Proverbs 29:03_reference_end_ _reference_start_Proverbs 29:15_reference_end_ _reference_start_Proverbs 30:03_reference_end_ _reference_start_Proverbs 31:25_reference_end_ _reference_start_Proverbs 1:20_reference_end_ _reference_start_Proverbs 1:23_reference_end_ _reference_start_Proverbs 8:01_reference_end_ _reference_start_Proverbs 8:05_reference_end_ _reference_start_Proverbs 8:11_reference_end_ _reference_start_Proverbs 8:12_reference_end_ _reference_start_Proverbs 8:14_reference_end_ _reference_start_Proverbs 8:22-31_reference_end_ _reference_start_Proverbs 9:01-05_reference_end_ _reference_start_Proverbs 2:06_reference_end_ _reference_start_Proverbs 3:19_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5( N2 M2 L2 K2 J2 I2 H2 G2 F2 E2 D2 C2  B2 A2 @2 ?2 >2 =2 <2 ;2 :2 92 82 72 62 52 42 32 22 12 02 /2  .2  -2  ,2  +2  *2  )2  (2  '2  &2 %2  $2# #2 "2 !1 1 1  1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1rbs 1:06_reference_end_ _reference_start_Proverbs 3:35_reference_end_ _reference_start_Proverbs 9:08_reference_end_ _reference_start_Proverbs 9:09_reference_end_ _reference_start_Proverbs 10:01_reference_end_ _reference_start_Proverbs 10:08_reference_end_ _reference_start_Proverbs 10:14_reference_end_ _reference_start_Proverbs 11:30_reference_end_ _reference_start_Proverbs 12:15_reference_end_ _reference_start_Proverbs 12:18_reference_end_ _reference_start_Proverbs 13:01_reference_end_ _reference_start_Proverbs 13:14_reference_end_ _reference_start_Proverbs 13:20_reference_end_ _reference_start_Proverbs 14:03_reference_end_ _reference_start_Proverbs 14:16_reference_end_ _reference_start_Proverbs 14:24_reference_end_ _reference_start_Proverbs 15:02_reference_end_ _reference_start_Proverbs 15:07_reference_end_ _reference_start_Proverbs 15:12_reference_end_ _reference_start_Proverbs 15:20_reference_end_ _reference_start_Proverbs 15:31_reference_end_ _reference_start_Proverbs 16:21_reference_end_ _reference_start_Proverbs 16:23_reference_end_ _reference_start_Proverbs 17:28_reference_end_ _reference_start_Proverbs 18:15_reference_end_ _reference_start_Proverbs 21:11_reference_end_ _reference_start_Proverbs 21:20_reference_end_ _reference_start_Proverbs 21:22_reference_end_ _reference_start_Proverbs 22:17_reference_end_ _reference_start_Proverbs 23:24_reference_end_ _reference_start_Proverbs 24:05_reference_end_ _reference_start_Proverbs 25:12_reference_end_ _reference_start_Proverbs 11:29_reference_end_ _reference_start_Proverbs 16:14_reference_end_ _reference_start_Proverbs 29:08_reference_end_ _reference_start_Proverbs 29:09_reference_end_ _reference_start_Proverbs 29:11_reference_end_ _reference_start_Proverbs 3:07_reference_end_ _reference_start_Proverbs 26:05_reference_end_ _reference_start_Proverbs 26:12_reference_end_ _reference_start_Proverbs 26:16_reference_end_ _reference_start_Proverbs 28:11_reference_end_ _reference_start_Proverbs 30:24_reference_end_ _reference_start_Proverbs 20:26_reference_end_ aa2!!o2wise (adj)wise (adj)Hebrew: חָכָם \f sage (adj) \cme ethically and religiously wise, fear God \cmf sage moralement et réligieusement, craindre Dieu \cme prudent \cmf prudent \cme shrewd, crafty, cunning \cmf sagace, astucieux, rusé \cme wise in administration of government \cmf sage dans l'administration du gouvernement _reference_start_Proverbs 1:05_reference_end_ _reference_start_Prove dd44wonderwonderHebrew: פָּלָא \f merveille \cme extaordinary, unusual \cmf exceptionel, étrange \cme something showing the power of God \cmf qt3=3wise (be)wise (be)Hebrew: חָכַם \f sage (être) \cme be wise, act wisely \cmf avoir de la sagesse, agir avec sagesse \cme embodiment of wisdom \cmf la personnification de la sagesse _reference_start_Proverbs 6:06_reference_end_ _reference_start_Proverbs 8:33_reference_end_ _reference_start_Proverbs 9:09_reference_end_ _reference_start_Proverbs 9:12_reference_end_ _reference_start_Proverbs 13:20_reference_end_ _reference_start_Proverbs 19:20_reference_end_ _reference_start_Proverbs 20:01_reference_end_ _reference_start_Proverbs 21:11_reference_end_ _reference_start_Proverbs 23:15_reference_end_ _reference_start_Proverbs 23:19_reference_end_ _reference_start_Proverbs 27:11_reference_end_ _reference_start_Proverbs 30:24_reference_end_ C~qdWJ=0# xk^QD7*tgZM@3& 5 5 5 5 5 5 5 5  5  5  5  5 5 5 5 5 5 5 5 ~5 }5 |5 {5 z5 y5 x5 w5 v5 u5 t5 s5 r5 q5 p5 o5 n5 , m4  l4 k4! j4 i4 h4 g4 f4 e4M d4G c4 b4  a4  `4  _4  ^4 ]4; \4 [4 Z3 Y3 X3 W3 V3 U3 T3 S3  R3 Q3 P3! O3qch qui montre le pouvoir de Dieu \cme wonder of God's judgements and redemption \cmf le merveille des jugements et la rédemption de Dieu _reference_start_Exodus 3:20_reference_end_ _reference_start_Exodus 15:11_reference_end_ _reference_start_Deuteronomy 28:59_reference_end_ _reference_start_Joshua 3:05_reference_end_ _reference_start_2 Samuel 1:26_reference_end_ _reference_start_1 Chronicles 16:09_reference_end_ _reference_start_1 Chronicles 16:12_reference_end_ _reference_start_1 Chronicles 16:24_reference_end_ _reference_start_2 Chronicles 2:08_reference_end_ _reference_start_Psalms 71:17_reference_end_ _reference_start_Psalms 77:15_reference_end_ _reference_start_Psalms 136:04_reference_end_ _reference_start_Psalms 139:14_reference_end_ _reference_start_Proverbs 30:18_reference_end_ _reference_start_Daniel 8:24_reference_end_ _reference_start_Daniel 3:32_reference_end_ _reference_start_Daniel 3:33_reference_end_ _reference_start_Daniel 6:28_reference_end_ _reference_start_Daniel 12:06_reference_end__start_Proverbs 18:13_reference_end_ _reference_start_Proverbs 25:02_reference_end_ _reference_start_Proverbs 1:02_reference_end_ _reference_start_Proverbs 1:06_reference_end_ _reference_start_Proverbs 1:21_reference_end_ _reference_start_Proverbs 1:23_reference_end_ _reference_start_Proverbs 2:01_reference_end_ _reference_start_Proverbs 2:16_reference_end_ _reference_start_Proverbs 4:05_reference_end_ _reference_start_Proverbs 4:10_reference_end_ _reference_start_Proverbs 4:20_reference_end_ _reference_start_Proverbs 5:07_reference_end_ _reference_start_Proverbs 6:02_reference_end_ _reference_start_Proverbs 7:01_reference_end_ _reference_start_Proverbs 7:05_reference_end_ _reference_start_Proverbs 7:24_reference_end_ _reference_start_Proverbs 8:08_reference_end_ _reference_start_Proverbs 10:19_reference_end_ _reference_start_Proverbs 12:06_reference_end_ _reference_start_Proverbs 12:25_reference_end_ _reference_start_Proverbs 13:05_reference_end_ _reference_start_Proverbs 14:15_reference_end_ _reference_start_Proverbs 14:23_reference_end_ _reference_start_Proverbs 15:01_reference_end_ _reference_start_Proverbs 15:23_reference_end_ _reference_start_Proverbs 15:26_reference_end_ _reference_start_Proverbs 16:24_reference_end_ _reference_start_Proverbs 7:1_reference_end_ _reference_start_Proverbs 18:04_reference_end_ _reference_start_Proverbs 18:08_reference_end_ _reference_start_Proverbs 22:12_reference_end_ _reference_start_Proverbs 22:17_reference_end_ _reference_start_Proverbs 22:21_reference_end_ _reference_start_Proverbs 23:08_reference_end_ _reference_start_Proverbs 24:16_reference_end_ _reference_start_Proverbs 25:11_reference_end_ _reference_start_Proverbs 26:06_reference_end_ _reference_start_Proverbs 26:22_reference_end_ _reference_start_Proverbs 27:11_reference_end_ _reference_start_Proverbs 29:12_reference_end_ _reference_start_Proverbs 29:19_reference_end_ _reference_start_Proverbs 29:20_reference_end_ _reference_start_Proverbs 30:06_reference_end_ _reference_start_Proverbs 30:08_reference_end_ PPp6I6workworkHebrew: עֲבֹודָה \f travail \cme worship of God by sacrifice, cult of temple and tabernacl$515wordwordHebrew: דָּבָר \f parole \cme advice, counsel, teaching \cmf avis, conseil, enseignement \cme matter, affaire \cmf affaire \cme speech act \cmf parole _reference_start_2 Samuel 19:44_reference_end_ _reference_start_Esther 5:05_reference_end_ _reference_start_Proverbs 4:04_reference_end_ _reference_start_Proverbs 4:20_reference_end_ _reference_start_Proverbs 13:13_reference_end_ _reference_start_Proverbs 11:13_reference_end_ _reference_start_Proverbs 16:20_reference_end_ _reference_start_Proverbs 17:09_reference_end_ _reference C~qdWJ=0# zm`SF9,vi\OB5( T7/ S7$ R7 Q7 P7 O7 N7 M7 L7 K7 J7 I7 H7! G7 F7  E7  D7  C7  B7  A7 @7  ?7  >7  =7 <7  ;7 :7 97 87 77 67 57 46  36  26  16  06  /6  .6  -6  ,6  +6  *6  )6  (6  '6 &6 ! %6  $6  #6  "6  !5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5e \cmf adorer Dieu en donnant une sacrifice, culte du temple et tabernacle _reference_start_Exodus 12:25_reference_end_ _reference_start_Exodus 12:26_reference_end_ _reference_start_Exodus 13:05_reference_end_ _reference_start_1 Chronicles 6:17_reference_end_ _reference_start_1 Chronicles 6:33_reference_end_ _reference_start_1 Chronicles 9:13_reference_end_ _reference_start_1 Chronicles 9:19_reference_end_ _reference_start_1 Chronicles 9:28_reference_end_ _reference_start_1 Chronicles 23:24_reference_end_ _reference_start_1 Chronicles 23:26_reference_end_ _reference_start_1 Chronicles 23:28_reference_end_ _reference_start_1 Chronicles 23:32_reference_end_ _reference_start_1 Chronicles 24:03_reference_end_ _reference_start_1 Chronicles 28:13_reference_end_ _reference_start_1 Chronicles 28:14_reference_end_ _reference_start_1 Chronicles 28:15_reference_end_ _reference_start_1 Chronicles 28:20_reference_end_ _reference_start_1 Chronicles 28:21_reference_end_ _reference_start_1 Chronicles 29:07_reference_end_ce_start_Exodus 10:26_reference_end_ _reference_start_Exodus 12:31_reference_end_ _reference_start_Exodus 13:05_reference_end_ _reference_start_Exodus 10:05_reference_end_ _reference_start_Exodus 23:24_reference_end_ _reference_start_Exodus 23:33_reference_end_ _reference_start_Numbers 3:07_reference_end_ _reference_start_Numbers 3:08_reference_end_ _reference_start_Numbers 8:25_reference_end_ _reference_start_Numbers 16:09_reference_end_ _reference_start_Numbers 18:07_reference_end_ _reference_start_Numbers 18:21_reference_end_ _reference_start_Numbers 18:23_reference_end_ _reference_start_Deuteronomy 6:13_reference_end_ _reference_start_Deuteronomy 4:28_reference_end_ _reference_start_Deuteronomy 28:14_reference_end_ _reference_start_Deuteronomy 28:36_reference_end_ _reference_start_Deuteronomy 28:47_reference_end_ _reference_start_Deuteronomy 28:64_reference_end_ _reference_start_Deuteronomy 29:25_reference_end_ _reference_start_Joshua 23:07_reference_end_ _reference_start_Jude 2:19_reference_end_ _reference_start_1 Samuel 12:10_reference_end_ _reference_start_1 Samuel 12:14_reference_end_ _reference_start_1 Samuel 12:20_reference_end_ _reference_start_1 Samuel 12:24_reference_end_ _reference_start_1 Samuel 7:03_reference_end_ _reference_start_1 Samuel 7:04_reference_end_ _reference_start_1 Samuel 8:08_reference_end_ _reference_start_1 Samuel 1:1_reference_end_ _reference_start_1 Samuel 1:1_reference_end_ _reference_start_1 Samuel 26:19_reference_end_ _reference_start_2 Samuel 15:08_reference_end_ _reference_start_1 Kings 9:06_reference_end_ _reference_start_1 Kings 9:09_reference_end_ _reference_start_1 Kings 16:31_reference_end_ _reference_start_1 Chronicles 28:09_reference_end_ _reference_start_2 Chronicles 7:19_reference_end_ _reference_start_2 Chronicles 7:22_reference_end_ _reference_start_Psalms 100:02_reference_end_ _reference_start_Isaiah 19:21_reference_end_ _reference_start_Jeremiah 2:20_reference_end_ _reference_start_Jeremiah 5:19_reference_end_ _reference_start_Malachi 3:18_reference_end_ >>27%%-7worship (to)worship (to)Hebrew: עָבַד \f adorer \cme worship God by keeing his covenant \cmf adorer Dieu par garder son alliance \cme worship God by sacrifice & cult of temple or tabernacle \cmf adorer Dieu par sacrifice et le culte du temple et le tabernacle \cme worship other gods \cmf adorer autes dieux _reference_start_Exodus 3:12_reference_end_ _reference_start_Exodus 4:23_reference_end_ _reference_start_Exodus 14:12_reference_end_ _reference_start_Exodus 23:25_reference_end_ _reference_start_Exodus 7:16_reference_end_ _reference_start_Exodus 7:26_reference_end_ _reference_start_Exodus 8:16_reference_end_ _reference_start_Exodus 9:01_reference_end_ _reference_start_Exodus 9:13_reference_end_ _reference_start_Exodus 10:03_reference_end_ _reference_start_Exodus 10:07_reference_end_ _reference_start_Exodus 10:08_reference_end_ _reference_start_Exodus 10:11_reference_end_ _reference_start_Exodus 10:24_reference_end_ _referen C~qdWJ=0# zm`SF9,vi\OB5( ;($ ;( ;( ;( ;( ;( ;( ;( ;( ;( ;(  ;( ;( * ;(  ;(  ;( ;( ;( ;( ;( ;( ;( :0 :- :)$ ~8  }8 |88 {82 z82 y8d x8_ w8E v8* u8 t8  s8 ( r8 & q8  p8 o8 n7' m7 l7 k7 j7d i7 h7 g7  f7  e7 d7  c7  b7  a7  `7  _7  ^7  ]7  \7  [7  Z7  Y7 X7A W7 V7 U7@f chançons de louange \cme thank offering \cmf offrande de remerciment \cme thank, praise God and abandon sin \cmf remercier, louer Dieu en abandonant le péché _reference_start_Leviticus 7:12_reference_end_ _reference_start_Joshua 7:19_reference_end_ _reference_start_Nehemiah 12:31_reference_end_ _reference_start_Nehemiah 12:38_reference_end_ _reference_start_Nehemiah 12:40_reference_end_ _reference_start_Nehemiah 12:27_reference_end_ _reference_start_Psalms 26:07_reference_end_ _reference_start_Psalms 42:05_reference_end_ _reference_start_Psalms 69:31_reference_end_ _reference_start_Psalms 95:02_reference_end_ _reference_start_Psalms 100:04_reference_end_ _reference_start_Psalms 50:14_reference_end_ _reference_start_Psalms 50:23_reference_end_ _reference_start_Psalms 56:13_reference_end_ _reference_start_Jeremiah 30:19_reference_end_ _reference_start_Jonah 2:10_reference_end_ G; ;amenamenTransliteration: amen _reference_start_Matthew 5:18_reference_end_ _reference_start_Matthew 5:26_reference_end_ _reference_start_Matthew 6:2_reference_end_ _reference_start_Matthew 6:5_reference_end_ _reference_start_Matthew 6:13_reference_end_ _reference_start_Matthew 6:16_reference_end_ _reference_start_Matthew 8:10_reference_end_ _reference_start_Matthew 10:15_reference_end_ _reference_start_Matthew 10:23_reference_end_ _reference_start_Matthew 10:42_reference_end_ _reference_start_Matthew 11:11_reference_end_ _reference_st,:A:AbbaabbaTransliteration: Abba _reference_start_Mark 14:36_reference_end_ _reference_start_Romans 8:15_reference_end_ _reference_start_Galatians 4:6_reference_end_9''q9wrong (to do)wrong (to do)Hebrew: עָוָה \f mal, faire mal \cme commit sin, pervert \cmf faire tort, faire mal \cme crooked \cmf courbéc8#8worshipworshipHebrew: תֹּודָה \f louer \cme choir \cmf choral \cme song of worship \cmart_Matthew 13:17_reference_end_ _reference_start_Matthew 16:28_reference_end_ _reference_start_Matthew 17:20_reference_end_ _reference_start_Matthew 18:3_reference_end_ _reference_start_Matthew 18:13_reference_end_ _reference_start_Matthew 18:18_reference_end_ _reference_start_Matthew 19:23_reference_end_ _reference_start_Matthew 19:28_reference_end_ _reference_start_Matthew 21:21_reference_end_ _reference_start_Matthew 21:31_reference_end_ _reference_start_Matthew 23:36_reference_end_ _reference_start_Matthew 24:2_reference_end_ _reference_start_Matthew 24:34_reference_end_ _reference_start_Matthew 24:47_reference_end_ _reference_start_Matthew 25:12_reference_end_ _reference_start_Matthew 25:40_reference_end_ _reference_start_Matthew 25:45_reference_end_ _reference_start_Matthew 26:13_reference_end_ _reference_start_Matthew 26:21_reference_end_ _reference_start_Matthew 26:34_reference_end_ _reference_start_Matthew 28:20_reference_end_ _reference_start_Mark 3:28_reference_end_ _reference_start_Mark 6:11_reference_end_ _reference_start_Mark 8:12_reference_end_ _reference_start_Mark 9:1_reference_end_ _reference_start_Mark 9:41_reference_end_ _reference_start_Mark 10:15_reference_end_ _reference_start_Mark 10:29_reference_end_ _reference_start_Mark 11:23_reference_end_ _reference_start_Mark 12:43_reference_end_ _reference_start_Mark 13:30_reference_end_ _reference_start_Mark 14:9_reference_end_ _reference_start_Mark 14:18_reference_end_ _reference_start_Mark 14:25_reference_end_ _reference_start_Mark 14:30_reference_end_ _reference_start_Mark 16:20_reference_end_ _reference_start_Luke 4:24_reference_end_ _reference_start_Luke 12:37_reference_end_ _reference_start_Luke 13:35_reference_end_ _reference_start_Luke 18:17_reference_end_ _reference_start_Luke 18:29_reference_end_ _reference_start_Luke 21:32_reference_end_ _reference_start_Luke 23:43_reference_end_ _reference_start_Luke 24:53_reference_end_ _reference_start_John 1:51_reference_end_ _reference_start_John 3:3_reference_end_ _reference_start_John 3:5_reference_end_ _reference_start_John 3:11_reference_end_ _reference_start_John 5:19_reference_end_ _reference_start_John 5:24_reference_end_ _reference_start_John 5:25_reference_end_ _reference_start_John 6:26_reference_end_ _reference_start_John 6:32_reference_end_ _reference_start_John 6:47_reference_end_ _reference_start_John 6:53_reference_end_ _reference_start_John 8:34_reference_end_ _reference_start_John 8:51_reference_end_ _reference_start_John 8:58_reference_end_ _reference_start_John 10:1_reference_end_ _reference_start_John 10:7_reference_end_ _reference_start_John 12:24_reference_end_ _reference_start_John 13:16_reference_end_ _reference_start_John 13:20_reference_end_ _reference_start_John 13:21_reference_end_ _reference_start_John 13:38_reference_end_ _reference_start_John 14:12_reference_end_ _reference_start_John 16:20_reference_end_ _reference_start_John 16:23_reference_end_ _reference_start_John 21:18_reference_end_ _reference_start_John 21:25_reference_end_ _reference_start_Romans 1:25_reference_end_ _reference_start_Romans 9:5_reference_end_ _reference_start_Romans 11:36_reference_end_ _reference_start_Romans 15:33_reference_end_ _reference_start_Romans 16:20_reference_end_ _reference_start_Romans 16:24_reference_end_ _reference_start_Romans 16:27_reference_end_ _reference_start_1 Corinthians 14:16_reference_end_ _reference_start_1 Corinthians 16:24_reference_end_ _reference_start_2 Corinthians 1:20_reference_end_ _reference_start_2 Corinthians 13:14_reference_end_ _reference_start_Galatians 1:5_reference_end_ _reference_start_Galatians 6:18_reference_end_ _reference_start_Ephesians 3:21_reference_end_ _reference_start_Philippians 4:20_reference_end_ _reference_start_Philippians 4:23_reference_end_ _reference_start_Colossians 4:18_reference_end_ _reference_start_1 Thessalonians 5:28_reference_end_ _reference_start_2 Thessalonians 3:18_reference_end_ _reference_start_1 Timothy 1:17_reference_end_ _reference_start_1 Timothy 6:16_reference_end_ _reference_start_1 Timothy 6:21_reference_end_ _reference_start_2 Timothy 4:18_reference_end_ _reference_start_2 Timothy 4:22_reference_end_ _reference_start_Titus 3:15_reference_end_ _reference_start_Philemon 1:25_reference_end_ _reference_start_Hebrews 13:21_reference_end_ _reference_start_Hebrews 13:25_reference_end_ _reference_start_1 Peter 4:11_reference_end_ _reference_start_1 Peter 5:11_reference_end_ _reference_start_1 Peter 5:14_reference_end_ _reference_start_2 Peter 3:18_reference_end_ _reference_start_1 John 5:21_reference_end_ _reference_start_2 John 1:13_reference_end_ _reference_start_Jude 1:25_reference_end_ _reference_start_Revelation 1:6_reference_end_ _reference_start_Revelation 1:7_reference_end_ _reference_start_Revelation 1:18_reference_end_ _reference_start_Revelation 3:14_reference_end_ _reference_start_Revelation 5:14_reference_end_ _reference_start_Revelation 7:12_reference_end_ _reference_start_Revelation 19:4_reference_end_ _reference_start_Revelation 22:20_reference_end_ _reference_start_Revelation 22:21_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5( Z;. Y;- X;- W;- V;-! U;- $ T;-  S;- R;+ Q;+ P;+ O;+ N;+ M;+ & L;+  K;+  J;+  I;+  H;+  G;+  F;+: E;+3 D;+" C;+5 B;+/ A;+ @;+ ?;+ >;+ =;+ <;+ ;;+ :;+ 9;+3 8;*5 7;*+ 6;* 5;* 4;* 3;* # 2;* % 1;* 0;) /;) .;) -;) ,;) +;)  *;) + );)  (;)  ';)  &;) ) %;)  $;) #;) ";) !;( ;(" ;( ;( ;(- ;(( ;( ;(/ ;(" ;( C~qdWJ=0# zm`SF9,vi\OB5( C(! C( C( C(  C( C( C( BB BB BB BB A)) @) ?B ?+  ?+ ?* ?* # ?*) ?) ?)  ?)% ?( ?( ?( ?( ?( ?( >, =( <)" ~;B };B |;B {;B z;B y;B x;B w;B v;B u;A t;? s;> r;= q;< p;< o;< n;:  m;:  l;9 k;8 j;7 i;7 h;6 g;6 f;6 e;5 d;4 c;3 b;2 a;2 `;1 _;0 ^;0 ];/  \;/ [;. >F?e?denariusdenariusTransliteration: denarion _reference_start_Matthew 18:28_reference_end_ _reference_start_Matthew 20:2_reference_end_ _reference_start_Matthew 20:9_reference_end_ _reference_start_Matthew 20:10_reference_end_ _reference_start_Matthew 20:13_reference_end_ _reference_start_Matthew 22:19_reference_end_ _reference_start_Mark 6:37_reference_end_ _reference_start_Mark 12:15_reference_end_ _reference_start_Mark 14:5_reference_end_ _reference_start_Luke 7:41_reference_end_ _reference_start_Luke 10:35_reference_end_ _reference_start_Luke 20:24_reference_end_ _reference_start_John 6:7_reference_end_ _reference_start_John 12:5_reference_end_ _reference_start_Revelation 6:6_reference_end_Y>>colonycolonyTransliteration: kolonia _reference_start_Acts 16:12_reference_end_^==blockheadblockheadTransliteration: raka _reference_start_Matthew 5:22_reference_end_^<<be openedbe openedTransliteration: effatha _reference_start_Mark 7:34_reference_end_ ICIvBABhallelujahallelujaTransliteration: halleluja _reference_start_Revelation 19:1_reference_end_ _reference_start_Revelation 19:3_reference_end_ _reference_start_Revelation 19:4_reference_end_ _reference_start_Revelation 19:6_reference_end_TAAgirlgirlTransliteration: talitha _reference_start_Mark 5:41_reference_end_c@%%@gift offeredgift offeredTransliteration: korban _reference_start_Mark 7:11_reference_end_ EkEhyssophyssopTransliteration: hyssop _reference_start_John 19:29_reference_end_ _reference_start_Hebrews 9:19_reference_end_DuDhosannahhosannahTransliteration: hosannah _reference_start_Matthew 21:9_reference_end_ _reference_start_Matthew 21:15_reference_end_ _reference_start_Mark 11:9_reference_end_ _reference_start_Mark 11:10_reference_end_ _reference_start_John 12:13_reference_end_HC%%YChell / gravehell / graveTransliteration: genna _reference_start_Matthew 5:22_reference_end_ _reference_start_Matthew 5:29_reference_end_ _reference_start_Matthew 5:30_reference_end_ _reference_start_Matthew 10:28_reference_end_ _reference_start_Matthew 18:9_reference_end_ _reference_start_Matthew 23:15_reference_end_ _reference_start_Matthew 23:33_reference_end_ _reference_start_Mark 9:43_reference_end_ _reference_start_Mark 9:45_reference_end_ _reference_start_Mark 9:47_reference_end_ _reference_start_Luke 12:5_reference_end_ _reference_start_James 3:6_reference_end_ C~qdWJ=0# zm`SF9,vi\OB5( `O* _O* ^O) ]O) \O) [O) ZO) YO) XO) WO) VO) UO) TO) SO( RO( QO( PO( OO( NO(  MO(  LO(  KO(  JN+  IN+  HN+ GN+ FN+ EN+ DN+1 CN+& BN)- AN)  @N)  ?N(1 >N( =N( <N( ;M) * :M( 9L+ 8L) 3 7K(. 6K(. 5J)" 4J)" 3HB 2H:  1H+: 0H+1 /H+ .G. -F* ,F) +F) *F(5 )E:  (E+ 'D+ &D) %D) $D( #D( "C; !C*  C) / C) - C) + x$ xK!!mKmy God (2)my god (2)Transliteration: Eli _reference_start_Matthew 27:46_reference_end_ _reference_start_Matthew 27:46_reference_end_ J!!cJmy God (1)my god (1)Transliteration: Eloi _reference_start_Mark 15:34_reference_end_ _reference_start_Mark 15:34_reference_end_I Imy Godmy godHmHmannamannaTransliteration: manna _reference_start_John 6:31_reference_end_ _reference_start_John 6:49_reference_end_ _reference_start_John 6:58_reference_end_ _reference_start_Hebrews 9:4_reference_end_ _reference_start_Revelation 2:17_reference_end_jG)GLord comelord comeTransliteration: maranatha _reference_start_1 Corinthians 16:22_reference_end_XFFlegionlegionTransliteration: legion _reference_start_Matthew 26:53_reference_end_ _reference_start_Mark 5:9_reference_end_ _reference_start_Mark 5:15_reference_end_ _reference_start_Luke 8:30_reference_end_ 3t3-N?NrabbirabbiTransliteration: rabbi _reference_start_Matthew 23:7_reference_end_ _reference_start_Matthew 23:8_reference_end_ _reference_start_Matthew 26:25_reference_end_ _reference_start_Matthew 26:49_reference_end_ _reference_start_Mark 9:5_reference_end_ _reference_start_Mark 11:21_reference_end_ _reference_start_Mark 14:45_reference_end_ _reference_start_John 1:38_reference_end_ _reference_start_John 1:49_reference_end_ _reference_start_John 3:2_reference_end_ _reference_start_John 3:26_reference_end_ _reference_start_John 4:31_reference_end_ _reference_start_John 6:25_reference_end_ _reference_start_John 9:2_reference_end_ _reference_start_John 11:8_reference_end_ MqMquadransquadransTransliteration: kodrantes _reference_start_Matthew 5:26_reference_end_ _reference_start_Mark 12:42_reference_end_LiLmy rabbimy rabbiTransliteration: rabouni _reference_start_Mark 10:51_reference_end_ _reference_start_John 20:16_reference_end_end_ _reference_start_Mark 3:2_reference_end_ _reference_start_Mark 3:4_reference_end_ _reference_start_Mark 6:2_reference_end_ _reference_start_Mark 16:1_reference_end_ _reference_start_Mark 16:2_reference_end_ _reference_start_Mark 16:9_reference_end_ _reference_start_Luke 4:16_reference_end_ _reference_start_Luke 4:31_reference_end_ _reference_start_Luke 6:1_reference_end_ _reference_start_Luke 6:2_reference_end_ _reference_start_Luke 6:5_reference_end_ _reference_start_Luke 6:6_reference_end_ _reference_start_Luke 6:7_reference_end_ _reference_start_Luke 6:9_reference_end_ _reference_start_Luke 13:10_reference_end_ _reference_start_Luke 13:14_reference_end_ _reference_start_Luke 13:15_reference_end_ _reference_start_Luke 13:16_reference_end_ _reference_start_Luke 14:1_reference_end_ _reference_start_Luke 14:3_reference_end_ _reference_start_Luke 14:5_reference_end_ _reference_start_Luke 18:12_reference_end_ _reference_start_Luke 23:54_reference_end_ _reference_start_Luke 23:56_reference_end_ _reference_start_Luke 24:1_reference_end_ _reference_start_John 5:9_reference_end_ _reference_start_John 5:10_reference_end_ _reference_start_John 5:16_reference_end_ _reference_start_John 5:18_reference_end_ _reference_start_John 7:22_reference_end_ _reference_start_John 7:23_reference_end_ _reference_start_John 9:14_reference_end_ _reference_start_John 9:16_reference_end_ _reference_start_John 19:31_reference_end_ _reference_start_John 20:1_reference_end_ _reference_start_John 20:19_reference_end_ _reference_start_Acts 1:12_reference_end_ _reference_start_Acts 13:14_reference_end_ _reference_start_Acts 13:27_reference_end_ _reference_start_Acts 13:42_reference_end_ _reference_start_Acts 13:44_reference_end_ _reference_start_Acts 15:21_reference_end_ _reference_start_Acts 16:13_reference_end_ _reference_start_Acts 17:2_reference_end_ _reference_start_Acts 18:4_reference_end_ _reference_start_Acts 20:7_reference_end_ _reference_start_1 Corinthians 16:2_reference_end_ _reference_start_Colossians 2:16_reference_end_ 'a'ZQQwealthwealthTransliteration: mammon _reference_start_Matthew 6:24_reference_end_ _reference_start_Luke 16:9_reference_end_ _reference_start_Luke 16:11_reference_end_ _reference_start_Luke 16:13_reference_end_YP Pstand upstand upTransliteration: kumi _reference_start_Mark 5:41_reference_end_O{OsabbathsabbathTransliteration: sabbath _reference_start_Matthew 12:1_reference_end_ _reference_start_Matthew 12:2_reference_end_ _reference_start_Matthew 12:5_reference_end_ _reference_start_Matthew 12:8_reference_end_ _reference_start_Matthew 12:10_reference_end_ _reference_start_Matthew 12:11_reference_end_ _reference_start_Matthew 12:12_reference_end_ _reference_start_Matthew 24:20_reference_end_ _reference_start_Matthew 28:1_reference_end_ _reference_start_Mark 1:21_reference_end_ _reference_start_Mark 2:23_reference_end_ _reference_start_Mark 2:24_reference_end_ _reference_start_Mark 2:27_reference_end_ _reference_start_Mark 2:28_reference_ C~qdWJ=0# zm`SF9,vi\OB5( #S< "S  !SU SO SO S  S  SU SO S< S  S$ S  S S . S  S  S S% S R)" R(. Q* Q* Q* Q( P)) O3 O. O, O, O, O, O, O, , O, * O,  ~O,  }O, |O+ {O+ zO+ yO+  xO+  wO+ vO+ uO+ tO+ sO+ rO+ qO* pO*8 oO*6 nO* mO* lO* kO* jO*  iO*  hO*  gO* fO* eO* dO* cO* bO* aO* xS55Sto be angry (אנף)to be angry (אנף)Strong's number: 00599 Part of speech: v Frequency: 14 Cognate(s): אַף Abstract for Busy Tr~RiRwhywhyTransliteration: lama _reference_start_Matthew 27:46_reference_end_ _reference_start_Mark 15:34_reference_end_anslators: The only distinction in meaning is between God being angry with someone, Meaning 1a, and someone being angry with someone else, Meaning 1b. Notes for Translators: God’s anger is always righteous. It is directed against a person or people who are wrong. It may be translated by the same terms as human anger, unless those terms can only mean sinful anger. Hebraists' Comments: The Qal and Hithpael are used without obvious difference in meaning. The former, normally, and the latter, consistently, express the target with בְּ. Comparison of Meanings and Uses: 1 Focus: response; response: anger a Experiencer: God b Experiencer: human Domain and Frame Notes: See notes for other synonyms Level 2: 1 Meaning: To experience the emotion of anger Frame for Meaning: Anger Verb Stem: Qal and Hithpael Grammar Notes: Where the Stimulus event is explicit, it is either consecutive or related syntactically by עַל ,בִּגְלַל or כִּי). Participant Roles for Meaning: Experiencer: God (or once the Davidic king) Target: human = individual or the nation of Israel Level 3: a Context: Of God, to experience the emotion of anger Intrinsic Domains for Meaning:c Apostasy and Judgement Participant Roles for Meaning:c Experiencer = subject: God Target = בְּ or implicit: human = individual or the nation of Israel Key Reference: _reference_start_1 Kings 11:9_reference_end_ Key Verse: KTBH - Yahweh |bwas angry |b*with Solomon because his heart had turned away from Yahweh, the God of Israel, who had appeared to him twice Evaluation of Translations: Any of the expressions 'be/become angry with Solomon' used by most translations would be a good model. CEV departs from this by leaving 'Solomon' out of the anger clause, 'this made the Lord very angry' and thereby losing the interpersonal aspect of the anger. This should be avoided. _reference_start_Deuteronomy 1:37_reference_end_ _reference_start_Deuteronomy 4:21_reference_end_ _reference_start_Deuteronomy 9:8_reference_end_ _reference_start_Deuteronomy 9:20_reference_end_ _reference_start_1 Kings 8:46_reference_end_ _reference_start_1 Kings 11:9_reference_end_ _reference_start_2 Kings 17:18_reference_end_ _reference_start_2 Chronicles 6:36_reference_end_ _reference_start_Ezra 9:14_reference_end_ _reference_start_Psalms 60:3_reference_end_ _reference_start_Psalms 79:5_reference_end_ _reference_start_Psalms 85:6_reference_end_ _reference_start_Isaiah 12:1_reference_end_ Keyword: Similar Collocating Term: קצף Gloss: to make angry References: _reference_start_Deuteronomy 9:8_reference_end_ Keyword: Similar Collocating Term: בער Gloss: [jealousy] to burn References: _reference_start_Psalms 79:5_reference_end_ Keyword: Similar Collocating Term: קִנְאָה Gloss: jealousy References: _reference_start_Psalms 79:5_reference_end_ Keyword: Similar Collocating Term: אַף Gloss: anger References: _reference_start_Psalms 85:6_reference_end_ _reference_start_Isaiah 12:1_reference_end_ Keyword: Similar Collocating Term: זנח Glo ss: to reject References: _reference_start_Psalms 60:3_reference_end_ Keyword: Similar Collocating Term: פרץ Gloss: to break out upon References: _reference_start_Psalms 60:3_reference_end_ Keyword: Opposite Collocating Term: נחם Gloss: to comfort References: _reference_start_Isaiah 12:1_reference_end_ Level 3: b Context: Of humans, to experience the emotion of anger Intrinsic Domains for Meaning:c Kingship, Rebellion Participant Roles for Meaning:c Experiencer = subject: human = Davidic kingTarget = implicit: human = rebellious nations Key Reference: _reference_start_Psalms 2:12_reference_end_ Key Verse: KTBH - Pay homage to the kingly son, lest |bhe be angry|b*... Evaluation of Translations: Most (RSV, NRS, REB, NJB, NJPS) accept one or other of the alternative emendationsb*, though all appear to read יאנף and render it something like 'lest he be angry' (NIV, RSV, NJB). NIV (also ESV, NAS) capitalises 'Son' indicating a Messianic interpretation. TEV and CEV appear to accept the same i nterpretation as KTBH, as does NLT is also a good model translation, 'Submit to God's royal son, or he will become angry'. This makes explicit the king's role as God's adopted son. _reference_start_Psalms 2:12_reference_end_ Keyword: Similar Collocating Term: אַף Gloss: anger References: _reference_start_Psalms 2:12_reference_end_ Keyword: Similar Collocating Term: בער Gloss: [anger] to burn References: _reference_start_Psalms 2:12_reference_end_ Note: (a) In almost all cases, the Target of the anger is the Agent of the stimulus event which provokes the anger. Unusually, in Deu 1:37 and 4:21, Moses is the target, but the people of Israel are the agents of the stimulus event. Note: (b) Text critical, exegetical and hermeneutical questions abound in this verse. KTBH takes the view that בַּר, although apparently Aramaic rather than Hebrew, does mean 'son' and is coreferential with 'my son' of v. 7. The psalm is taken to be a coronation hymn, in which David or the Davidic king is presented as being adopted by Yahweh (v. 7). The surrounding nations are envisaged as being in the rebellion against the king and refusing to kiss him, that is to pay homage to him.Alternative suggestions are based on change of vowels, change of consonants or redivision of vv. 11-12. For a discussion see Bratcher and Reyburn, who reject the interpretation given here (HBK), and Craigie (WBC 1983) who defends it, noting that 'the use of בר here avoids the dissonance of בן פן'.A further question is whether the son in view is the Messiah, and thus whether 'Son' should be capitalised. In the original context of the psalm, the referent was probably the then King of Israel or Judah, and the psalm was not overtly prophetic, so the Experiencer was human and 'son' should probably not be capitalised. Version: 0 Date: 2007-12-21 16:07:43 cjs Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org. C~qdWJ=0# zm`SF9,vi\OB5( fT eT dT cT bT aT  `T  _T  ^T ]T \T [T ZT YT XT WT VT  UT  TT  ST  RT  QT  PT  OT  NT' MT LT KT JT IT HT GT  FT ET DT CT BT AT @T  ?T  >T  =T <T ;T  :T 9T 8T 7T 6T 5T 4T 3T ! 2T 1T  0T" /T .T -T ,T +T *T )S (S 'S &S %S  $S< . Hebraists' Comments: There is unanimous agreement that the particle אַף and the noun are homonyms (BDB, HALOT, DCH, TDOT, NIDOTTE, TWOT). Equally there is agreement that the two meanings of the noun, 'nose, nostril' and 'anger', are related. The original meaning of the root אנף and the precise nature of the relationship between the meanings of אַף, however, are less certain.In some cases, the connection becomes explicit where other Hebrew words for 'anger' collocate with אַף used in the sense 'nose'. TDOT cites Ezk 38:18 and Psa 18:8-9, noting that 'in the OT the nose plays a certain role in the description of anger' (1.351). Similarly in Isa 65:5, 'these people are smoke in my nose' implying that they are a source of irritation and anger.One suggestion is that אנף may originally have meant 'to snort' and thus form a link between 'nose' and 'anger' but this is not universally accepted (TDOT 1.351). Comparison of Meanings and Uses: 1 Focus: response; response: anger a Experiencer: God b Experiencer: human 2 Other meanings a nose, nostril or face b also, even, indeed Domain and Frame Notes: For notes see other synonyms. In addition:It may be helpful to distinguish positive and negative frames for divine anger:For the positive frame, the domain related to the stimulus event is apostasy, and that related to the consequence frame is judgement.For the negative frame 'turning from anger' the domain related to the stimulus event is repentance, and that related to the consequence frame is mercy.The negative frame is often expressed by a construction with שׁוב*, either with the verb in the Qal and אַף* as subject, often with a מִן* phrase of the former target, (x18), or with the verb in the Hiphil and God as subject (x5).Alternatively, it may be expressed by the Hiphil of נוח* with חֵמָה* as object, 'God gave rest to his anger'. Level 2: 1 Meaning: The emotion of anger Frame for Meaning: Anger Participant Roles for Meaning: Experiencer: God or humans Target: human Level 3: a Context: Of God, the emotion of anger Intrinsic Domains for Meaning:c Apostasy and Judgement, Repentance and Restoration, Opposition to Israel, Eschatological judgement Participant Roles for Meaning:c Experiencer = genitive: God Target = עַל or בְּ or implicit: human = an individual or a nation, Israel or another Key Reference: _reference_start_Psalms 2:5_reference_end_ Key Verse: KTBH - Then he speaks to them in his |banger|b*, and in his fury he terrifies them Evaluation of Translations: Most translations use two of the available English synonyms for the two Hebrew synonyms in the parallelism - 'anger, wrath' (NIV), 'anger, fury' (TEV), 'anger, rage' (NJB, NJPS) or 'wrath, fury' (RSV, NRS). These are all good models, though, perhaps, since אַף* is the most common of the Hebrew synonyms, and 'anger' is the most common in English, 'anger' might be the best choice. REB renders the prepositional phrase 'in his anger' by the adverb 'angrily' which may also be followed. CEV renders the verse rather freely, 'The Lord becomes furious and threatens them'. _reference_start_Exodus 4:14_reference_end_ _reference_start_Exodus 22:23_reference_end_ _reference_start_Exodus 32:10_reference_end_ _reference_start_Exodus 32:11_reference_end_ _reference_start_Exodus 32:12_reference_end_ _reference_start_Exodus 34:6_reference_end_ _reference_start_Numbers 11:1_reference_end_ _reference_start_Numbers 11:10_reference_end_ _reference_start_Numbers 11:33_reference_end_ _reference_start_Numbers 12:9_reference_end_ _reference_start_Numbers 14:18_reference_end_ _reference_start_Numbers 22:22_reference_end_ _reference_start_Numbers 25:3_reference_end_ _reference_start_Numbers 25:4_reference_end_ _reference_start_Numbers 32:10_reference_end_ _reference_start_Numbers 32:13_reference_end_ _reference_start_Numbers 32:14_reference_end_ _reference_start_Deuteronomy 6:15_reference_end_ _reference_start_Deuteronomy 7:4_reference_end_ _reference_start_Deuteronomy 9:19_reference_end_ _reference_start_Deuteronomy 11:17_reference_end_ _reference_start_Deuteronomy 13:18_reference_end_ _reference_start_Deuteronomy 29:19_reference_end_ _reference_start_Deuteronomy 29:22_reference_end_ _reference_start_Deuteronomy 29:23_reference_end_ _reference_start_Deuteronomy 29:26_reference_end_ _reference_start_Deuteronomy 29:27_reference_end_ _reference_start_Deuteronomy 31:17_reference_end_ _reference_start_Deuteronomy 32:22_reference_end_ _reference_start_Joshua 7:1_reference_end_ _reference_start_Joshua 7:26_reference_end_ _reference_start_Joshua 23:16_reference_end_ _reference_start_Judges 2:14_reference_end_ _reference_start_Judges 2:20_reference_end_ _reference_start_Judges 3:8_reference_end_ _reference_start_Judges 6:39_reference_end_ _reference_start_Judges 10:7_reference_end_ _reference_start_1 Samuel 28:18_reference_end_ _reference_start_2 Samuel 6:7_reference_end_ _reference_start_2 Samuel 24:1_reference_end_ _reference_start_2 Kings 13:3_reference_end_ _reference_start_2 Kings 23:26_reference_end_ _reference_start_2 Kings 23:26_reference_end_ _reference_start_2 Kings 24:20_reference_end_ _reference_start_1 Chronicles 13:10_reference_end_ _reference_start_2 Chronicles 12:12_reference_end_ _reference_start_2 Chronicles 25:15_reference_end_ _reference_start_2 Chronicles 28:11_reference_end_ _reference_start_2 Chronicles 28:13_reference_end_ _reference_start_2 Chronicles 29:10_reference_end_ _reference_start_2 Chronicles 30:8_reference_end_ _reference_start_Ezra 8:22_reference_end_ _reference_start_Ezra 10:14_reference_end_ _reference_start_Nehemiah 9:17_reference_end_ _reference_start_Job 9:5_reference_end_ _reference_start_Job 9:13_reference_end_ _reference_start_Job 14:13_reference_end_ _reference_start_Job 16:9_reference_end_ _reference_start_Job 19:11_reference_end_ _reference_start_Job 20:23_reference_end_ _reference_start_Job 20:28_reference_end_ _reference_start_Job 21:17_reference_end_ _reference_start_Job 35:15_reference_end_ _reference_start_Job 36:33_reference_end_ _reference_start_Job 42:7_reference_end_ _reference_start_Psalms 2:5_reference_end_ _reference_start_Psalms 6:2_reference_end_ _reference_start_Psalms 7:7_reference_end_ _reference_start_Psalms 21:10_reference_end_ _reference_start_Psalms 27:9_reference_end_ _reference_start_Psalms 30:6_reference_end_ _reference_start_Psalms 56:8_reference_end_ _reference_start_Psalms 69:25_reference_end_ _reference_start_Psalms 74:1_reference_end_ _reference_start_Psalms 76:8_reference_end_ _reference_start_Psalms 77:10_reference_end_ _reference_start_Psalms 78:21_reference_end_ _reference_start_Psalms 78:31_reference_end_ _reference_start_Psalms 78:38_reference_end_ _reference_start_Psalms 78:49_reference_end_ _reference_start_Psalms 78:50_reference_end_ _reference_start_Psalms 85:4_reference_end_ _reference_start_Psalms 85:6_reference_end_ _reference_start_Psalms 86:15_reference_end_ _reference_start_Psalms 90:7_reference_end_ _reference_start_Psalms 90:11_reference_end_ _reference_start_Psalms 95:11_reference_end_ _reference_start_Psalms 103:8_reference_end_ _reference_start_Psalms 106:40_reference_end_ _reference_start_Psalms 110:5_reference_end_ _reference_start_Psalms 145:8_reference_end_ _reference_start_Proverbs 24:18_reference_end_ _reference_start_Isaiah 5:25_reference_end_ _reference_start_Isaiah 5:25_reference_end_ _reference_start_Isaiah 9:11_reference_end_ _reference_start_Isaiah 9:16_reference_end_ _reference_start_Isaiah 9:20_reference_end_ _reference_start_Isaiah 10:4_reference_end_ _reference_start_Isaiah 10:5_reference_end_ _reference_start_Isaiah 10:25_reference_end_ _reference_start_Isaiah 12:1_reference_end_ _reference_start_Isaiah 13:3_reference_end_ _reference_start_Isaiah 13:9_reference_end_ _reference_start_Isaiah 13:13_reference_end_ _reference_start_Isaiah 30:27_reference_end_ _reference_start_Isaiah 30:30_reference_end_ _reference_start_Isaiah 42:25_reference_end_ _reference_start_Isaiah 48:9_reference_end_ _reference_start_Isaiah 63:3_reference_end_ _reference_start_Isaiah 63:6_reference_end_ _reference_start_Isaiah 66:15_reference_end_ _reference_start_Jeremiah 2:35_reference_end_ _reference_start_Jeremiah 4:8_reference_end_ _reference_start_Jeremiah 4:26_reference_end_ _reference_start_Jeremiah 7:20_reference_end_ _reference_start_Jeremiah 10:24_reference_end_ _reference_start_Jeremiah 12:13_reference_end_ _reference_start_Jeremiah 15:14_reference_end_ _reference_start_Jeremiah 15:15_reference_end_ _reference_start_Jeremiah 17:4_reference_end_ _reference_start_Jeremiah 18:23_reference_end_ _reference_start_Jeremiah 21:5_reference_end_ _reference_start_Jeremiah 23:20_reference_end_ _reference_start_Jeremiah 25:37_reference_end_ _reference_start_Jeremiah 25:38_reference_end_ _reference_start_Jeremiah 30:24_reference_end_ _reference_start_Jeremiah 32:31_reference_end_ _reference_start_Jeremiah 32:37_reference_end_ _reference_start_Jeremiah 33:5_reference_end_ _reference_start_Jeremiah 36:7_reference_end_ _reference_start_Jeremiah 42:18_reference_end_ _reference_start_Jeremiah 44:6_reference_end_ _reference_start_Jeremiah 49:37_reference_end_ _reference_start_Jeremiah 51:45_reference_end_ _reference_start_Jeremiah 52:3_reference_end_ _reference_start_Lamentations 1:12_reference_end_ _reference_start_Lamentations 2:1_reference_end_ _reference_start_Lamentations 2:1_reference_end_ _reference_start_Lamentations 2:3_reference_end_ _reference_start_Lamentations 2:6_reference_end_ _reference_start_Lamentations 2:21_reference_end_ _reference_start_Lamentations 2:22_reference_end_ _reference_start_Lamentations 3:43_reference_end_ _reference_start_Lamentations 3:66_reference_end_ _reference_start_Lamentations 4:11_reference_end_ _reference_start_Ezekiel 5:13_reference_end_ _reference_start_Ezekiel 5:15_reference_end_ _reference_start_Ezekiel 7:3_reference_end_ _reference_start_Ezekiel 7:8_reference_end_ _reference_start_Ezekiel 13:13_reference_end_ _reference_start_Ezekiel 20:8_reference_end_ _reference_start_Ezekiel 20:21_reference_end_ _reference_start_Ezekiel 22:20_reference_end_ _reference_start_Ezekiel 25:14_reference_end_ _reference_start_Ezekiel 38:18_reference_end_ _reference_start_Ezekiel 43:8_reference_end_ _reference_start_Daniel 9:16_reference_end_ _reference_start_Hosea 8:5_reference_end_ _reference_start_Hosea 11:9_reference_end_ _reference_start_Hosea 13:11_reference_end_ _reference_start_Hosea 14:5_reference_end_ _reference_start_Joel 2:13_reference_end_ _reference_start_Jonah 3:9_reference_end_ _reference_start_Jonah 4:2_reference_end_ _reference_start_Micah 5:14_reference_end_ _reference_start_Micah 7:18_reference_end_ _reference_start_Nahum 1:3_reference_end_ _reference_start_Nahum 1:6_reference_end_ _reference_start_Habakkuk 3:8_reference_end_ _reference_start_Habakkuk 3:12_reference_end_ _reference_start_Zephaniah 2:2_reference_end_ _reference_start_Zephaniah 2:2_reference_end_ _reference_start_Zephaniah 2:3_reference_end_ _reference_start_Zephaniah 3:8_reference_end_ _reference_start_Zechariah 10:3_reference_end_ Keyword: Cognate Collocating Term: אנף Gloss: to be angry References: _reference_start_Psalms 85:6_reference_end_ _reference_start_Isaiah 10:25_reference_end_ Keyword: Similar Collocating Term: חרה Gloss: to burn References: _reference_start_Exodus 4:14_reference_end_ _reference_start_Exodus 22:23_reference_end_ _reference_start_Exodus 32:10_reference_end_ _reference_start_Exodus 32:11_reference_end_ _reference_start_Numbers 11:1_reference_end_ _reference_start_Numbers 11:10_reference_end_ _reference_start_Numbers 11:33_reference_end_ _reference_start_Numbers 12:9_reference_end_ _reference_start_Numbers 22:22_reference_end_ _reference_start_Numbers 25:3_reference_end_ _reference_start_Numbers 32:10_reference_end_ _reference_start_Numbers 32:13_reference_end_ _reference_start_Deuteronomy 6:15_reference_end_ _reference_start_Deuteronomy 7:4_reference_end_ _reference_start_Deuteronomy 11:17_reference_end_ _reference_start_Deuteronomy 29:26_reference_end_ _reference_start_Deuteronomy 31:17_reference_end_ _reference_start_Joshua 7:1_reference_end_ _reference_start_Joshua 23:16_reference_end_ _reference_start_Judges 2:14_reference_end_ _reference_start_Judges 2:20_reference_end_ _reference_start_Judges 3:8_reference_end_ _reference_start_Judges 6:39_reference_end_ _reference_start_Judges 10:7_reference_end_ _reference_start_2 Samuel 6:7_reference_end_ _reference_start_2 Samuel 24:1_reference_end_ _reference_start_2 Kings 13:3_reference_end_ _reference_start_2 Kings 23:26_reference_end_ _reference_start_1 Chronicles 13:10_reference_end_ _reference_start_2 Chronicles 25:15_reference_end_ _reference_start_Job 19:11_reference_end_ _reference_start_Job 42:7_reference_end_ _reference_start_Psalms 106:40_reference_end_ _reference_start_Isaiah 5:25_reference_end_ _reference_start_Hosea 8:5_reference_end_ _reference_start_Habakkuk 3:8_reference_end_ _reference_start_Zechariah 10:3_reference_end_ Keyword: Similar Collocating Term: חָרֹון Gloss: burning References: _reference_start_Exodus 32:12_reference_end_ _reference_start_Numbers 25:4_reference_end_ _reference_start_Numbers 32:14_reference_end_ _reference_start_Deuteronomy 13:18_reference_end_ _reference_start_Joshua 7:26_reference_end_ _reference_start_1 Samuel 28:18_reference_end_ _reference_start_2 Kings 23:26_reference_end_ _reference_start_2 Chronicles 28:11_reference_end_ _reference_start_2 Chronicles 28:13_reference_end_ _reference_start_2 Chronicles 29:10_reference_end_ _reference_start_2 Chronicles 30:8_reference_end_ _reference_start_Ezra 10:14_reference_end_ _reference_start_Job 20:23_reference_end_ _reference_start_Psalms 2:5_reference_end_ _reference_start_Psalms 69:25_reference_end_ _reference_start_Psalms 78:49_reference_end_ _reference_start_Psalms 85:4_reference_end_ _reference_start_Isaiah 13:9_reference_end_ _reference_start_Isaiah 13:13_reference_end_ _reference_start_Jeremiah 4:8_reference_end_ _reference_start_Jeremiah 4:26_reference_end_ _reference_start_Jeremiah 12:13_reference_end_ _reference_start_Jeremiah 25:37_reference_end_ _reference_start_Jeremiah 25:38_reference_end_ _reference_start_Jeremiah 30:24_reference_end_ _reference_start_Jeremiah 49:37_reference_end_ _reference_start_Jeremiah 51:45_reference_end_ _reference_start_Lamentations 1:12_reference_end_ _reference_start_Lamentations 4:11_reference_end_ _reference_start_Hosea 11:9_reference_end_ _reference_start_Jonah 3:9_reference_end_ _reference_start_Nahum 1:6_reference_end_ _reference_start_Zephaniah 2:2_reference_end_ _reference_start_Zephaniah 3:8_reference_end_ Keyword: Similar Collocating Term: חְָרִי Gloss: burning References: _reference_start_Deuteronomy 29:23_reference_end_ _reference_start_Lamentations 2:3_reference_end_ Keyword: Similar Collocating Term: חֵמָה Gloss: anger References: _reference_start_Deuteronomy 9:19_reference_end_ _reference_start_Deuteronomy 29:22_reference_end_ _reference_start_Deuteronomy 29:27_reference_end_ _reference_start_Psalms 6:2_reference_end_ _reference_start_Psalms 78:38_reference_end_ _reference_start_Psalms 90:7_reference_end_ _reference_start_Isaiah 30:30_reference_end_ _reference_start_Isaiah 63:3_reference_end_ _reference_start_Isaiah 63:6_reference_end_ _reference_start_Isaiah 66:15_reference_end_ _reference_start_Jeremiah 7:20_reference_end_ _reference_start_Jeremiah 21:5_reference_end_ _reference_start_Jeremiah 32:31_reference_end_ _reference_start_Jeremiah 32:37_reference_end_ _reference_start_Jeremiah 33:5_reference_end_ _reference_start_Jeremiah 36:7_reference_end_ _reference_start_Jeremiah 42:18_reference_end_ _reference_start_Jeremiah 44:6_reference_end_ _reference_start_Lamentations 4:11_reference_end_ _reference_start_Ezekiel 5:13_reference_end_ _reference_start_Ezekiel 5:15_reference_end_ _reference_start_Ezekiel 7:8_reference_end_ _reference_start_Ezekiel 13:13_reference_end_ _reference_start_Ezekiel 20:8_reference_end_ _reference_start_Ezekiel 20:21_reference_end_ _reference_start_Ezekiel 22:20_reference_end_ _reference_start_Ezekiel 25:14_reference_end_ _reference_start_Ezekiel 38:18_reference_end_ _reference_start_Daniel 9:16_reference_end_ _reference_start_Micah 5:14_reference_end_ _reference_start_Nahum 1:6_reference_end_ Keyword: Similar Collocating Term: קצף Gloss: to be angry References: _reference_start_Deuteronomy 9:19_reference_end_ Keyword: Similar Collocating Term: קֶצֶף Gloss: anger References: _reference_start_Deuteronomy 29:27_reference_end_ _reference_start_Jeremiah 21:5_reference_end_ _reference_start_Jeremiah 32:37_reference_end_ Keyword: Similar Collocating Term: זַעַם Gloss: anger References: _reference_start_Psalms 69:25_reference_end_ _reference_start_Psalms 78:49_reference_end_ _reference_start_Isaiah 10:5_reference_end_ _reference_start_Isaiah 10:25_reference_end_ _reference_start_Isaiah 30:27_reference_end_ _reference_start_Lamentations 2:6_reference_end_ _reference_start_Nahum 1:6_reference_end_ _reference_start_Habakkuk 3:12_reference_end_ _reference_start_Zephaniah 3:8_reference_end_ Keyword: Similar Collocating Term: זַעַף Gloss: anger References: _reference_start_Isaiah 30:30_reference_end_ Keyword: Similar Collocating Term: עבר Gloss: to be angry References: _reference_start_Psalms 78:21_reference_end_ Keyword: Similar Collocating Term: עֶבְרָה Gloss: anger References: _reference_start_Psalms 78:49_reference_end_ _reference_start_Psalms 85:4_reference_end_ _reference_start_Psalms 90:11_reference_end_ _reference_start_Isaiah 13:9_reference_end_ _reference_start_Isaiah 13:13_reference_end_ _reference_start_Hosea 13:11_reference_end_ _reference_start_Habakkuk 3:8_reference_end_ Keyword: Similar Collocating Term: בער Gloss: to burn References: _reference_start_Isaiah 30:27_reference_end_ _reference_start_Jeremiah 44:6_reference_end_ Keyword: Similar Collocating Term: עשׁן Gloss: to smoke References: _reference_start_Deuteronomy 29:19_reference_end_ _reference_start_Psalms 74:1_reference_end_ Keyword: Similar Collocating Term: קִנְאָה Gloss: jealousy References: _reference_start_Deuteronomy 29:19_reference_end_ _reference_start_Zephaniah 3:8_reference_end_ Keyword: Similar Collocating Term: חרק שִׁנַּיִם Gloss: to gnash teethe* References: _reference_start_Job 16:9_reference_end_ Keyword: Similar Collocating Term: תעב Gloss: to abhor References: _reference_start_Psalms 106:40_reference_end_ Keyword: Similar Collocating Term: נאץ Gloss: to spurn References: _reference_start_Lamentations 2:6_reference_end_ Keyword: Similar Collocating Term: גְּעָרָה Gloss: rebuke References: _reference_start_Isaiah 66:15_reference_end_ Keyword: Similar Collocating Term: תֹּוכַחַת Gloss: rebuke References: _reference_start_Ezekiel 5:15_reference_end_ Keyword: Similar Collocating Term: סתר פָּנִים Gloss: to hide ... face References: _reference_start_Jeremiah 33:5_reference_end_ Keyword: Similar Collocating Term: נְקָמָה Gloss: vengeance References: _reference_start_Ezekiel 25:14_reference_end_ Keyword: Similar Collocating Term: נחם Gloss: to ease oneself [by taking vengeance] References: _reference_start_Ezekiel 5:13_reference_end_ Keyword: Opposite Collocating Term: חנן Glos s: to be gracious References: _reference_start_Psalms 77:10_reference_end_ Keyword: Opposite Collocating Term: חַנוּן Gloss: gracious References: _reference_start_Exodus 34:6_reference_end_ _reference_start_Nehemiah 9:17_reference_end_ _reference_start_Psalms 86:15_reference_end_ _reference_start_Psalms 103:8_reference_end_ _reference_start_Psalms 145:8_reference_end_ _reference_start_Joel 2:13_reference_end_ _reference_start_Jonah 4:2_reference_end_ Keyword: Opposite Collocating Term: רחם Gloss: to have compassion References: _reference_start_Deuteronomy 13:18_reference_end_ Keyword: Opposite Collocating Term: רַחוּם Gloss: compassionate References: _reference_start_Exodus 34:6_reference_end_ _reference_start_Nehemiah 9:17_reference_end_ _reference_start_Psalms 86:15_reference_end_ _reference_start_Psalms 103:8_reference_end_ _reference_start_Psalms 145:8_reference_end_ _reference_start_Joel 2:13_reference_end_ _reference_start_Jonah 4:2_reference_end_ Keyword: Opposite Collocating Term: !ַחֲמִים Gloss: compassion References: _reference_start_Deuteronomy 13:18_reference_end_ _reference_start_Psalms 77:10_reference_end_ Keyword: Opposite Collocating Term: חֶסֶד Gloss: covenant loyalty References: _reference_start_Exodus 34:6_reference_end_ _reference_start_Numbers 14:18_reference_end_ _reference_start_Nehemiah 9:17_reference_end_ _reference_start_Psalms 86:15_reference_end_ _reference_start_Psalms 103:8_reference_end_ _reference_start_Psalms 145:8_reference_end_ _reference_start_Joel 2:13_reference_end_ _reference_start_Jonah 4:2_reference_end_ _reference_start_Micah 7:18_reference_end_ Keyword: Opposite Collocating Term: אֱמֶת Gloss: faithfulness References: _reference_start_Exodus 34:6_reference_end_ _reference_start_Psalms 86:15_reference_end_ Keyword: Opposite Collocating Term: סלח Gloss: to forgive References: _reference_start_Deuteronomy 29:19_reference_end_ Keyword: Opposite Collocating Term: סְלִיחָה Gloss: forgiving References: _reference_start_Nehemiah" 9:17_reference_end_ Keyword: Opposite Collocating Term: רָצֹון Gloss: favour References: _reference_start_Psalms 30:6_reference_end_ Keyword: Opposite Collocating Term: נחם Gloss: to comfort References: _reference_start_Isaiah 12:1_reference_end_ Keyword: Opposite Collocating Term: אהב Gloss: to love References: _reference_start_Hosea 14:5_reference_end_ Level 3: b Context: Of humans, the emotion of anger Intrinsic Domains for Meaning:c Various, including: Family, Violence, Enmity, Warfare, Wickedness, Goodness, Folly, Strife, Participant Roles for Meaning:c Experiencer = genitive or implicit: human Target: = בְּ or implicit: human Key Reference: _reference_start_Psalms 37:8_reference_end_ Key Verse: KTBH - Refrain from |banger |b*and forsake wrath, ... Evaluation of Translations: Most translations render אַף by 'anger' and use another of the available English synonyms for חֵמָה in the parallel colon - 'anger, wrath' (NIV, RSV, NRS), 'anger, fury' (NJPS), 'anger, r#age' (NJB) or 'wrath, fury' (RSV, NRS). These are all good models, especially since אַף is the most common of the Hebrew synonyms, and 'anger' is the most common in English. REB, 'be angry no more' and CEV, 'don't be angry' transform the noun into a predicative adjective. This may be appropriate in some languages. TEV, 'don't give in to ... anger' combines the two Hebrew synonyms into one, 'anger', which may also be appropriate. _reference_start_Genesis 27:45_reference_end_ _reference_start_Genesis 30:2_reference_end_ _reference_start_Genesis 39:19_reference_end_ _reference_start_Genesis 44:18_reference_end_ _reference_start_Genesis 49:6_reference_end_ _reference_start_Genesis 49:7_reference_end_ _reference_start_Exodus 11:8_reference_end_ _reference_start_Exodus 32:19_reference_end_ _reference_start_Exodus 32:22_reference_end_ _reference_start_Numbers 22:27_reference_end_ _reference_start_Numbers 24:10_reference_end_ _reference_start_Judges 9:30_reference_end_ _reference_start_Judges 14:19_reference_e$nd_ _reference_start_1 Samuel 11:6_reference_end_ _reference_start_1 Samuel 17:28_reference_end_ _reference_start_1 Samuel 20:30_reference_end_ _reference_start_1 Samuel 20:34_reference_end_ _reference_start_2 Samuel 12:5_reference_end_ _reference_start_2 Chronicles 25:10_reference_end_ _reference_start_2 Chronicles 25:10_reference_end_ _reference_start_Job 18:4_reference_end_ _reference_start_Job 32:2_reference_end_ _reference_start_Job 32:2_reference_end_ _reference_start_Job 32:3_reference_end_ _reference_start_Job 32:5_reference_end_ _reference_start_Job 36:13_reference_end_ _reference_start_Job 40:11_reference_end_ _reference_start_Psalms 2:12_reference_end_ _reference_start_Psalms 37:8_reference_end_ _reference_start_Psalms 55:4_reference_end_ _reference_start_Psalms 124:3_reference_end_ _reference_start_Psalms 138:7_reference_end_ _reference_start_Proverbs 14:17_reference_end_ _reference_start_Proverbs 14:29_reference_end_ _reference_start_Proverbs 15:1_reference_end_ _reference_start_Proverbs 15:1%8_reference_end_ _reference_start_Proverbs 16:32_reference_end_ _reference_start_Proverbs 19:11_reference_end_ _reference_start_Proverbs 21:14_reference_end_ _reference_start_Proverbs 22:24_reference_end_ _reference_start_Proverbs 25:15_reference_end_ _reference_start_Proverbs 27:4_reference_end_ _reference_start_Proverbs 29:8_reference_end_ _reference_start_Proverbs 29:22_reference_end_ _reference_start_Proverbs 30:33_reference_end_ _reference_start_Isaiah 7:4_reference_end_ _reference_start_Isaiah 14:6_reference_end_ _reference_start_Ezekiel 35:11_reference_end_ _reference_start_Daniel 11:20_reference_end_ _reference_start_Amos 1:11_reference_end_ Keyword: Similar Collocating Term: חרה Qal Gloss: to burn References: _reference_start_Genesis 30:2_reference_end_ _reference_start_Genesis 39:19_reference_end_ _reference_start_Genesis 44:18_reference_end_ _reference_start_Numbers 22:27_reference_end_ _reference_start_Numbers 24:10_reference_end_ _reference_start_Judges 9:30_reference_end_ _reference_start&_Judges 14:19_reference_end_ _reference_start_1 Samuel 11:6_reference_end_ _reference_start_1 Samuel 17:28_reference_end_ _reference_start_1 Samuel 20:30_reference_end_ _reference_start_2 Samuel 12:5_reference_end_ _reference_start_2 Chronicles 25:10_reference_end_ _reference_start_Job 32:2_reference_end_ _reference_start_Job 32:2_reference_end_ _reference_start_Job 32:3_reference_end_ _reference_start_Job 32:5_reference_end_ _reference_start_Psalms 124:3_reference_end_ Keyword: Similar Collocating Term: חרה Hithpael Gloss: to fret References: _reference_start_Psalms 37:8_reference_end_ Keyword: Similar Collocating Term: חְָרִי Gloss: burning References: _reference_start_Exodus 11:8_reference_end_ _reference_start_1 Samuel 20:34_reference_end_ _reference_start_2 Chronicles 25:10_reference_end_ _reference_start_Isaiah 7:4_reference_end_ Keyword: Similar Collocating Term: עֶבְרָה Gloss: anger References: _reference_start_Genesis 49:7_reference_end_ _reference_start_Job 40:11_reference_end_ _'reference_start_Isaiah 14:6_reference_end_ _reference_start_Amos 1:11_reference_end_ Keyword: Similar Collocating Term: אנף Gloss: to be angry References: _reference_start_Psalms 2:12_reference_end_ Keyword: Similar Collocating Term: חֵמָה Gloss: anger References: _reference_start_Psalms 37:8_reference_end_ _reference_start_Proverbs 15:1_reference_end_ _reference_start_Proverbs 15:18_reference_end_ _reference_start_Proverbs 21:14_reference_end_ _reference_start_Proverbs 22:24_reference_end_ _reference_start_Proverbs 27:4_reference_end_ _reference_start_Proverbs 29:22_reference_end_ Keyword: Similar Collocating Term: בער Gloss: to burn References: _reference_start_Psalms 2:12_reference_end_ Keyword: Similar Collocating Term: קִנְאָה Gloss: jealousy References: _reference_start_Proverbs 27:4_reference_end_ _reference_start_Ezekiel 35:11_reference_end_ Keyword: Similar Collocating Term: שִׂנְאָה Gloss: hatred References: _reference_start_Ezekiel 35:11_reference_end_ Keyword: Similar( Collocating Term: עצב Gloss: to be grieved References: _reference_start_1 Samuel 20:34_reference_end_ Keyword: Opposite Collocating Term: רָצֹון Gloss: pleasure References: _reference_start_Genesis 49:6_reference_end_ Keyword: Opposite Collocating Term: רַחֲמִים Gloss: compassion References: _reference_start_Amos 1:11_reference_end_ Level 2: 2 Meaning: Other meanings Level 3: a Context: Nose, nostril or face (literal, metaphorical and anthropomorphic) _reference_start_Genesis 2:7_reference_end_ _reference_start_Genesis 3:19_reference_end_ _reference_start_Genesis 7:22_reference_end_ _reference_start_Genesis 19:1_reference_end_ _reference_start_Genesis 24:47_reference_end_ _reference_start_Genesis 42:6_reference_end_ _reference_start_Genesis 48:12_reference_end_ _reference_start_Exodus 15:8_reference_end_ _reference_start_Numbers 11:20_reference_end_ _reference_start_Numbers 22:31_reference_end_ _reference_start_Deuteronomy 33:10_reference_end_ _reference_start_1 Samuel 1:5_reference_end_) _reference_start_1 Samuel 20:41_reference_end_ _reference_start_1 Samuel 24:9_reference_end_ _reference_start_1 Samuel 25:23_reference_end_ _reference_start_1 Samuel 25:41_reference_end_ _reference_start_1 Samuel 28:14_reference_end_ _reference_start_2 Samuel 14:4_reference_end_ _reference_start_2 Samuel 14:33_reference_end_ _reference_start_2 Samuel 18:28_reference_end_ _reference_start_2 Samuel 22:9_reference_end_ _reference_start_2 Samuel 22:16_reference_end_ _reference_start_2 Samuel 24:20_reference_end_ _reference_start_1 Kings 1:23_reference_end_ _reference_start_1 Kings 1:31_reference_end_ _reference_start_2 Kings 19:28_reference_end_ _reference_start_1 Chronicles 21:21_reference_end_ _reference_start_2 Chronicles 7:3_reference_end_ _reference_start_2 Chronicles 20:18_reference_end_ _reference_start_Nehemiah 8:6_reference_end_ _reference_start_Job 4:9_reference_end_ _reference_start_Job 27:3_reference_end_ _reference_start_Job 40:24_reference_end_ _reference_start_Job 40:26_reference_end_ _referen*ce_start_Psalms 10:4_reference_end_ _reference_start_Psalms 18:9_reference_end_ _reference_start_Psalms 18:16_reference_end_ _reference_start_Psalms 115:6_reference_end_ _reference_start_Proverbs 11:22_reference_end_ _reference_start_Proverbs 30:33_reference_end_ _reference_start_Song of Solomon 7:5_reference_end_ _reference_start_Song of Solomon 7:9_reference_end_ _reference_start_Isaiah 2:22_reference_end_ _reference_start_Isaiah 3:21_reference_end_ _reference_start_Isaiah 37:29_reference_end_ _reference_start_Isaiah 49:23_reference_end_ _reference_start_Isaiah 65:5_reference_end_ _reference_start_Lamentations 4:20_reference_end_ _reference_start_Ezekiel 8:17_reference_end_ _reference_start_Ezekiel 16:12_reference_end_ _reference_start_Ezekiel 23:25_reference_end_ _reference_start_Amos 4:10_reference_end_ Keyword: Level 3: b Context: Focus particle: also, even, indeed _reference_start_Genesis 3:1_reference_end_ _reference_start_Genesis 18:13_reference_end_ _reference_start_Genesis 18:23_reference_end_ _+reference_start_Genesis 18:24_reference_end_ _reference_start_Genesis 40:16_reference_end_ _reference_start_Leviticus 26:16_reference_end_ _reference_start_Leviticus 26:24_reference_end_ _reference_start_Leviticus 26:28_reference_end_ _reference_start_Leviticus 26:39_reference_end_ _reference_start_Leviticus 26:40_reference_end_ _reference_start_Leviticus 26:41_reference_end_ _reference_start_Leviticus 26:42_reference_end_ _reference_start_Leviticus 26:42_reference_end_ _reference_start_Leviticus 26:44_reference_end_ _reference_start_Numbers 16:14_reference_end_ _reference_start_Deuteronomy 2:11_reference_end_ _reference_start_Deuteronomy 2:20_reference_end_ _reference_start_Deuteronomy 15:17_reference_end_ _reference_start_Deuteronomy 31:27_reference_end_ _reference_start_Deuteronomy 33:3_reference_end_ _reference_start_Deuteronomy 33:20_reference_end_ _reference_start_Deuteronomy 33:28_reference_end_ _reference_start_Judges 5:29_reference_end_ _reference_start_1 Samuel 2:7_reference_end_ _reference_star,t_1 Samuel 14:30_reference_end_ _reference_start_1 Samuel 21:6_reference_end_ _reference_start_1 Samuel 23:3_reference_end_ _reference_start_2 Samuel 4:11_reference_end_ _reference_start_2 Samuel 16:11_reference_end_ _reference_start_2 Samuel 20:14_reference_end_ _reference_start_1 Kings 8:27_reference_end_ _reference_start_2 Kings 2:14_reference_end_ _reference_start_2 Kings 5:13_reference_end_ _reference_start_1 Chronicles 8:32_reference_end_ _reference_start_1 Chronicles 9:38_reference_end_ _reference_start_1 Chronicles 16:30_reference_end_ _reference_start_2 Chronicles 6:18_reference_end_ _reference_start_2 Chronicles 12:5_reference_end_ _reference_start_2 Chronicles 32:15_reference_end_ _reference_start_Nehemiah 2:18_reference_end_ _reference_start_Nehemiah 9:18_reference_end_ _reference_start_Nehemiah 13:15_reference_end_ _reference_start_Esther 5:12_reference_end_ _reference_start_Job 4:19_reference_end_ _reference_start_Job 6:27_reference_end_ _reference_start_Job 9:14_reference_end_ _reference_st-art_Job 14:3_reference_end_ _reference_start_Job 15:4_reference_end_ _reference_start_Job 15:16_reference_end_ _reference_start_Job 19:4_reference_end_ _reference_start_Job 25:6_reference_end_ _reference_start_Job 32:10_reference_end_ _reference_start_Job 32:17_reference_end_ _reference_start_Job 32:17_reference_end_ _reference_start_Job 34:12_reference_end_ _reference_start_Job 34:17_reference_end_ _reference_start_Job 35:14_reference_end_ _reference_start_Job 36:16_reference_end_ _reference_start_Job 36:29_reference_end_ _reference_start_Job 37:1_reference_end_ _reference_start_Job 37:11_reference_end_ _reference_start_Job 40:8_reference_end_ _reference_start_Psalms 16:6_reference_end_ _reference_start_Psalms 16:7_reference_end_ _reference_start_Psalms 16:9_reference_end_ _reference_start_Psalms 18:49_reference_end_ _reference_start_Psalms 44:10_reference_end_ _reference_start_Psalms 58:3_reference_end_ _reference_start_Psalms 65:14_reference_end_ _reference_start_Psalms 68:9_reference_end_ _reference_s.tart_Psalms 68:17_reference_end_ _reference_start_Psalms 68:19_reference_end_ _reference_start_Psalms 74:16_reference_end_ _reference_start_Psalms 77:17_reference_end_ _reference_start_Psalms 77:18_reference_end_ _reference_start_Psalms 89:6_reference_end_ _reference_start_Psalms 89:12_reference_end_ _reference_start_Psalms 89:22_reference_end_ _reference_start_Psalms 89:28_reference_end_ _reference_start_Psalms 89:44_reference_end_ _reference_start_Psalms 93:1_reference_end_ _reference_start_Psalms 96:10_reference_end_ _reference_start_Psalms 108:2_reference_end_ _reference_start_Psalms 119:3_reference_end_ _reference_start_Psalms 135:17_reference_end_ _reference_start_Proverbs 9:2_reference_end_ _reference_start_Proverbs 11:31_reference_end_ _reference_start_Proverbs 15:11_reference_end_ _reference_start_Proverbs 17:7_reference_end_ _reference_start_Proverbs 19:7_reference_end_ _reference_start_Proverbs 19:10_reference_end_ _reference_start_Proverbs 21:27_reference_end_ _reference_start_Proverbs 22:19_r/eference_end_ _reference_start_Proverbs 23:28_reference_end_ _reference_start_Ecclesiastes 2:9_reference_end_ _reference_start_Song of Solomon 1:16_reference_end_ _reference_start_Song of Solomon 1:16_reference_end_ _reference_start_Isaiah 26:8_reference_end_ _reference_start_Isaiah 26:9_reference_end_ _reference_start_Isaiah 26:11_reference_end_ _reference_start_Isaiah 33:2_reference_end_ _reference_start_Isaiah 35:2_reference_end_ _reference_start_Isaiah 40:24_reference_end_ _reference_start_Isaiah 40:24_reference_end_ _reference_start_Isaiah 40:24_reference_end_ _reference_start_Isaiah 41:10_reference_end_ _reference_start_Isaiah 41:10_reference_end_ _reference_start_Isaiah 41:23_reference_end_ _reference_start_Isaiah 41:26_reference_end_ _reference_start_Isaiah 41:26_reference_end_ _reference_start_Isaiah 41:26_reference_end_ _reference_start_Isaiah 42:13_reference_end_ _reference_start_Isaiah 43:7_reference_end_ _reference_start_Isaiah 43:19_reference_end_ _reference_start_Isaiah 44:15_reference_end_0 _reference_start_Isaiah 44:15_reference_end_ _reference_start_Isaiah 44:16_reference_end_ _reference_start_Isaiah 44:19_reference_end_ _reference_start_Isaiah 45:21_reference_end_ _reference_start_Isaiah 46:6_reference_end_ _reference_start_Isaiah 46:7_reference_end_ _reference_start_Isaiah 46:11_reference_end_ _reference_start_Isaiah 46:11_reference_end_ _reference_start_Isaiah 46:11_reference_end_ _reference_start_Isaiah 48:12_reference_end_ _reference_start_Isaiah 48:13_reference_end_ _reference_start_Isaiah 48:15_reference_end_ _reference_start_Ezekiel 14:21_reference_end_ _reference_start_Ezekiel 15:5_reference_end_ _reference_start_Ezekiel 23:40_reference_end_ _reference_start_Amos 2:11_reference_end_ _reference_start_Habakkuk 2:5_reference_end_ _reference_start_Habakkuk 2:15_reference_end_ Keyword: Note: (a) Unusually, the target is more extensive than the agent of the stimulus, suggesting corporate culpability. Note: (b) Most consider this to refer to God's anger, but Reyburn notes that the phras1e 'in his anger' or 'by his nostril' may suggest the picture of a hot blast of breath through the nostril (HBK). Note: (c) If מִקְנֶה with the sense 'cattle' is retained, then אַף is probably the particle rather than the noun. However, the Targum appears to have understood מִקְנֶה as derived from the verb קנא 'to be jealous', so a translation 'the wrath of indignation' is possible (Hartley, NICOT 1988, 477 n.17). Both HALOT and BDB recommend repointing as the Hiphil participle מַקְנֶה. For other possible emendations of this difficult verse, see Pope (AB 1965, 238). Note: (d) Several Hebrew mss, supported by LXX and Tg, read חֶרֶב* 'sword' for חָרֹון* 'burning [anger]', in which case there is no collocating synonym. See חָרֹון*. Note: (e) Presumably an expression of anger or other emotion. Note: (f) רוּחַ אַפֹּו should probably be understood as an anthropomorphism, 'the breath of his nose/nostrils' even though God's anger is also in the background. Note: (g) The idiom here, if indeed the text is correct, is unclear. LXX appears to have read אפס* for אפים*, '... although he loved Hannah ...'. Klein follows this reading (WBC, 1983). The Peshitta understood the phrase מָנָה אַחַת אפַּיִם* to mean 'a double portion', perhaps on the basis of the dual form. This understanding has been defended by KD on the grounds of a shift from אַף* to 'face' to 'person' and since it is dual, one portion for two persons. This has been followed by NIV and NRS. Other emendations have been proposed, see AB and HBK.Whatever reading is accepted, anger is not in view. Note: (h) The sense here is of smoke in (or 'from' see Anderson, WBC on 2Sa 22:9) God's nose, though his anger is also in view, as the preceding verse shows. Version: 0 Date: 2007-12-27 10:50:37 cjs Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org. TSSoTanger, nose, nostril, also (אַף)anger, nose, nostril, also (אַף)Strong's number: 00639 Part of speech: Pc Part of speech: ncm Frequency: 410 Cognate(s): אנף Abstract for Busy Translators: 1. There are two Hebrew words with the same form. One of them is a noun meaning either ‘anger’ or ‘nose, nostril, face’. The other is a particle meaning ‘also, even, indeed’. 2. When the word means ‘anger’, there is a further distinction in meaning between God being angry with someone, Meaning 1a, and someone being angry with someone else, Meaning 1b. Notes for Translators: God’s anger is always righteous. It is directed against a person or people who are wrong. It may be translated by the same terms as human anger, unless those terms can only mean sinful anger C~qdWJ=0# zl_RE8+uh[NA4'  )T  (T 'T& &T% %T $T #T "T !T T T T  T T T T# TB T? T? T0 T* T T T T T  T  T  T  T  T  T  T T T T T Tn Tj( Tg T_ TZ TZ ~TV }TU |TU {TN2 zTN1 yTN& xTN wTN vTM uTL tTJ sTE rT8 qT pT oT nT mT lT kT* jT$! iT# hT gT C~qdWJ=0# zm`SF9,vi\OB5( lT kT jT  iT hT gT fT eT dT cT bT ! aT `T  _T ^T ]T \T [T  ZTU YT&  XT$ WT$ VT$ UT$ TT# ST# RT" QT" PT! OT! NT  MT  LT KT JT IT HT GT  FT+ ET& DT CT BT AT @T ?T >T =T <T ;T :TB 9T+ 8T 7T 6T 5T 4T 3T 2T 1T4 0T3- /T1% .T, -T* ,T$ +T! *T % C~qdWJ=0# zm`SF9,vi\OB5( /T .TB -T? ,T? +T *TZ )TN& (T 'T &T %T  $T #T "T$ !T$ T" T  T T T T3- T1% T T& T% T T T T T TU TN1 TE T T T  T T T T T  T  T T  T  T T T&  T# ~T }T |Tj( {T* zT yT xT wT  vT  uT  tT  sT  rT' qT pT oT nT mT C~qdWJ=0# zm`SF9,vi\OB5( rT  qT" pT  oT  nT mT lTg kTV jT  iT" hTM gT fT eT! dT cTB bT aTj( `T _T$ ^T ]TJ \T [T, ZT YT# XT WT VT UTZ TTU STN1 RTN QT PT$ OT# NT" MT LT KT  JT  ITN1 HTE GT % FT ET DT  CT" BT! AT  @T& ?T >T =T <T ;T :T 9T 8T 7T 6T, 5T* 4T$ 3T! 2T % 1T  0T C}pcUH;.!xk^QD7*tgZM@3% 5T 4T 3T 2T 1T 0T /T .T -T ,T +T *T )T| (T7 'T% &T %T( $T$ #T  "T  !T  T  T T T T  T " T  T  T  T T  T T T  T  T  T1 T1 T, T' T T- T% T T  T T  T TV T" T! T  T T ~Tg }TV |T  {T zT" yTM xT  wT  vT uT tTg sTV C~qdWJ=0# zm`SF9,vi\OB5( xT ! wT  vT  uT ) tT  sT  rT ) qT  pT! oT nT  mT lT0 kT* jT/ iT hT gT fT eT dT1 cT " bT# aT# `T _T ^T ]T \T [T ZT YT XT% WT VT UT TT( ST1 RT QT PT " OT  NT% MT| LT  KT  JT  IT  HT GT  FT  ET  DT  CT BT  AT @T ?T, >T' =T <T ;T  :T# 9T 8T 7T! 6T C~qdWJ=0# zm`SF9,vi\OB5( ;T  :T  9T  8T  7T  6T  5T  4T  3T  2T  1T  0T /T! .T! -T! ,T +T *T )T (T 'T, &T* %T* $T) #T( "T' !T T T T( T T T T T T T T T TA T1 T% T T T T T! T  Ts T T T  T( T( T T T T T T  T  ~T  }T  |T  {T  zT  yT  C~qdWJ=0# zm`SF9,vh[NA4'  ~T! }T |T {T zT yT xT wT vT uT tT sT rT qT pT  oT  nT mTw lTl kT` jT] iTY, hTY gTY fTY eTY dTM cTM bTJ aTD `TD _TD ^TA ]T: \T, [T1 ZT YT XT WT( VT% UT% TT$ ST$ RT# QT" PT" OT  NT  MT LT KT JT IT HT GT  FT ET DT CT  BT  AT @T  ?T  >T =T  <T & C~qdWJ=0# zm`SF9,vi\OB5( AWE @W& ?WE >V  =V  <V ;V :V& 9V& 8V' 7V' 6V& 5VB 4V 3V& 2V 1V 0V /V .V -V ,V +V *V! )V (V 'V &U %U $U #Uw5 "U  !U  U  U  T# T# T T( T T T0 T0 T0 T. T. T. T. T. T- T, T, T, T, T+ T+ T* T) T) T) T) T) T) T( T( T( T#= derived by insertion of ל* into זעף* (Klein, "Etymological Dictionary Language" MacMillan New York, 1992, 199). Insertion of ל* or ר* between the first and the second letters of a triliteral root is rare but not unknown (GKC 30.q). Level 2: 1 Meaning: Burning heat Level 3: a Context: Burning heat [of wind] _reference_start_Psalms 11:6_reference_end_ Keyword: Similar Collocating Term: אֵשׁ Gloss: fire References: _reference_start_Psalms 11:6_reference_end_ Keyword: Similar Collocating Term: גָּפְרִית Gloss: brimstone References: _reference_start_Psalms 11:6_reference_end_ Keyword: Similar Collocating Term: פֶּחָםa* Gloss: coal References: _reference_start_Psalms 11:6_reference_end_ Level 3: b Context: Burning heat of indignation Frame for Meaning:c Anger Intrinsic Domains for Meaning:c Apostasy Participant Roles for Meaning:c Experiencer = implicit: humanTarget = implicit: humanStimulus = מִן*: human _reference_start_Psalms 119:53_reference_end_ Keyword: Level 3: c Context: Burning heat of famine (fever?) Meaning Comments:c Reynolds summarises discussion of this phrase. '"The burning heat of famine" is taken by most translators to mean fever brought on by hunger. NEB, however, takes it as a figurative expression and translates more generally "the ravages of starvation."' (HBK). _reference_start_Lamentations 5:10_reference_end_ Keyword: Similar Collocating Term: כמר Gloss: to become hot References: _reference_start_Lamentations 5:10_reference_end_ Keyword: Similar Collocating Term: תַּנּוּר Gloss: oven References: _reference_start_Lamentations 5:10_reference_end_ Note: (a) This assumes an emendation, supported by LXX, of פחים* to פחם* or פחםי*, since פַּחִים* 'bird-traps' hardly fits the context. Version: 0 Date: 2007-12-12 11:12:22 cjs Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org. .W11?Wanger (זַעַם)anger (זַעַם)Strong's number: 02195 Part of speech: ncm Frequency: 22 EVIIVto curse, to be angry (זעם)to curse, to be angry (זעם)Strong's number: 02194 Part of speech: v Frequency: 12 Cognate(s): זַעַם Abstract for Busy Translators: 1. The main distinction in meaning for the verb is between ‘to curse’ or ‘to be angry’. Note that the noun from the same root refers only to anger. 2. For the Meaning 'to curse', there is a further distinction in meaning between God cursing someone, Meaning 1a, and someone cursing someone else, Meaning 1b. 3. For the Meaning 'to be angry', there is a further distinction in meaning between God being angry at someone, Meaning 2a, and someone being angry at someone else, Mea?BUOOyUburning heat (זַלְעָפָה)burning heat (זַלְעָפָה)Strong's number: 02152 Part of speech: ncf Frequency: 3 Cognate(s): זעף Hebraists' Comments: This apparent quadriliteral is<@ning 2b. Notes for Translators: God’s anger is always righteous. It is directed against a person or people who are wrong. It may be translated by the same terms as human anger, unless those terms can only mean sinful anger. Hebraists' Comments: The relationship between this noun and its cognate verb requires specific comment. The noun collocates frequently with words for 'anger', whereas the verb does not. In Num 23:7-8 and Pro 24:24, the verb collocates instead with words meaning 'to curse'. The relationship then may be that, for the verb, the meaning shifts from 'to be angry' > 'to speak in anger' > 'to curse', whereas for the noun, the meaning 'anger' dominates. Comparison of Meanings and Uses: 1 Participants: Speaker and Target a Speaker: God b Speaker: human2 Participants: Experiencer and Target a Experiencer: God b Experiencer: human Level 2: 1 Meaning: To pronounce a curse on someone Frame for Meaning: Cursing Verb Stem: Qal Participant Roles for Meaning: Speaker: God or humanTarget: humAan Level 3: a Context: Of God, to pronounce a curse on someone Intrinsic Domains for Meaning:c Apostasy; Opposition to Israel Participant Roles for Meaning:c Speaker = subject or genitive or implicit: GodTarget = object or implicit: human Key Reference: _reference_start_Numbers 23:8_reference_end_ Key Verse: How can I curse those whom God has not cursed or how can I denounce those whom Yahweh has not |bdenounced|b* (KTBH) Evaluation of Translations: The problem here is the parallelism between קבב and זעם (cf v 7, Meaning 1b). Except for NJPS 'damn', all render the former well by 'curse' and are left with a problem for the latter. The most common is 'denounce' (NIV, RSV, NRS, REB, NJB)‏, which is not quite right but may be the best solution. _reference_start_Numbers 23:8_reference_end_ _reference_start_Proverbs 22:14_reference_end_ _reference_start_Micah 6:10_reference_end_ Keyword: Similar Collocating Term: קבב Gloss: to curse References: _reference_start_Numbers 23:8_rBeference_end_ Level 3: b Context: Of humans, to pronounce a curse on someone Intrinsic Domains for Meaning:c Opposition to Israel; Wickedness Participant Roles for Meaning:c Speaker = subject: humanTarget = object: human Key Reference: _reference_start_Numbers 23:7_reference_end_ Key Verse: ... come, curse Jacob for me and come, |bdenounce |b*Israel (KTBH). Evaluation of Translations: The problem here is the parallelism between ארר and זעם (cf v 8, Meaning 1a). Except for TEV 'speak', all render the former well by 'curse' and are left with a problem for the latter. The most common is 'denounce' (NIV, RSV, NRS, REB, NJB), which is not quite right but may be the best solution. _reference_start_Numbers 23:7_reference_end_ _reference_start_Numbers 23:8_reference_end_ _reference_start_Proverbs 24:24_reference_end_ Keyword: Similar Collocating Term: ארר Gloss: to curse References: _reference_start_Numbers 23:7_reference_end_ Keyword: Similar Collocating Term: קבב Gloss: to curse References: _Creference_start_Numbers 23:8_reference_end_ _reference_start_Proverbs 24:24_reference_end_ Level 2: 2 Meaning: To experience the emotion of anger Frame for Meaning: Anger Verb Stem: Qal, and Niphal (once) Participant Roles for Meaning: Experiencer: God or humanTarget: human Level 3: a Context: Of God, to experience the emotion of anger Intrinsic Domains for Meaning:c Apostasy; Wickedness; Opposition to Israel Participant Roles for Meaning:c Experiencer = subject: GodTarget = object or implicit: human Key Reference: _reference_start_Zechariah 1:12_reference_end_ Key Verse: NRS - Then the angel of the Lord said, “O Lord of hosts, how long will you withhold mercy from Jerusalem and the cities of Judah, with which |byou have been angry |b*these seventy years?” Evaluation of Translations: Most translations render by 'anger' or 'angry' or a synonym such as 'indignation' or 'wrath'. Any of these may be followed. _reference_start_Psalms 7:12_reference_end_ _reference_staDrt_Isaiah 66:14_reference_end_ _reference_start_Zechariah 1:12_reference_end_ _reference_start_Malachi 1:4_reference_end_ Keyword: Similar Collocating Term: שׂנא Gloss: to hate References: _reference_start_Malachi 1:4_reference_end_ Keyword: Opposite Collocating Term: רחם Gloss: to have compassion References: _reference_start_Zechariah 1:12_reference_end_ Keyword: Opposite Collocating Term: נִחֻמִים Gloss: comfort References: _reference_start_Zechariah 1:12_reference_end_ Level 3: b Context: Of humans, to experience the emotion of anger Intrinsic Domains for Meaning:c Gossip; Opposition to Israel Participant Roles for Meaning:c Experiencer = subject or implicit: humanTarget = עַל or implicit: human Key Reference: _reference_start_Proverbs 25:23_reference_end_ Key Verse: NIV - As a north wind brings rain, so a sly tongue brings |bangry |b*looks. Evaluation of Translations: The participle of זעם modifies 'faces' which is rightly understood by most translations to refer to 'looks'. זעם itself is rendered angry by several translations and this is a good model to follow. TEV and CEV render the whole phrase 'angry looks' by 'anger' and this may also be followed. _reference_start_Proverbs 25:23_reference_end_ _reference_start_Daniel 11:30_reference_end_ Keyword: Opposite Collocating Term: בין Gloss: to pay attention to References: _reference_start_Daniel 11:30_reference_end_ Note: (a) The apparent target of the cursing is the 'short measure' and thus inanimate, but that is used metonymically for those who sell short measure cf v. 11. Note: (b) Specifically, the target is 'the holy covenant' but by metonymy for either the God who initiated that covenant or the people as the other party. Compare v. 30b, 'those who forsake the holy covenant'. Version: 0 Date: 2007-12-27 10:51:26 cjs Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org.FCognate(s): זעם Abstract for Busy Translators: The only distinction in meaning is between God being angry with someone, Meaning 1a, and someone being angry with someone else, Meaning 1b. Notes for Translators: God’s anger is always righteous. It is directed against a person or people who are wrong. It may be translated by the same terms as human anger, unless those terms can only mean sinful anger. Hebraists' Comments: The relationship between this noun and its cognate verb requires specific comment. The noun collocates frequently with words for 'anger', whereas the verb does not. In Num 23:7-8 and Pro 24:24, the verb collocates instead with words meaning 'to curse'. The relationship then may be that, for the verb, the meaning shifts from 'to be angry' > 'to speak in anger' > 'to curse', whereas for the noun, the meaning 'anger' dominates. Comparison of Meanings and Uses: 1 Focus: response; response: anger a Experiencer: God b Experiencer: human Level 2: 1 Meaning: The emotion of anger Frame for MGeaning: Anger Participant Roles for Meaning: : Experiencer: God or humans Target: human Level 3: a Context: Of God, the emotion of anger Intrinsic Domains for Meaning:c Enmity Participant Roles for Meaning:c : Experiencer = genitive or implicit: God Target = implicit: human Key Reference: _reference_start_Psalms 69:25_reference_end_ Key Verse: KTBH - Pour out your |bwrath |b*on them and let your burning anger overtake them Evaluation of Translations: Most translations use 'anger' for the אַף* in the second colon, and one of the available English synonyms for זַעַם* in the first: 'indignation' (RSV, NRS, REB), 'wrath' (NIV, NJPS), 'fury' (NJB). This seems a better model to follow than TEV which reverses this 'anger, indignation' (CEV is similar), because it seems better to match the more common and more general words in the translation. _reference_start_Psalms 38:4_reference_end_ _reference_start_Psalms 69:25_reference_end_ _reference_start_Psalms 78:49_referenHce_end_ _reference_start_Psalms 102:11_reference_end_ _reference_start_Isaiah 10:5_reference_end_ _reference_start_Isaiah 10:25_reference_end_ _reference_start_Isaiah 13:5_reference_end_ _reference_start_Isaiah 26:20_reference_end_ _reference_start_Isaiah 30:27_reference_end_ _reference_start_Jeremiah 10:10_reference_end_ _reference_start_Jeremiah 50:25_reference_end_ _reference_start_Lamentations 2:6_reference_end_ _reference_start_Ezekiel 21:36_reference_end_ _reference_start_Ezekiel 22:24_reference_end_ _reference_start_Ezekiel 22:31_reference_end_ _reference_start_Daniel 8:19_reference_end_ _reference_start_Daniel 11:36_reference_end_ _reference_start_Nahum 1:6_reference_end_ _reference_start_Habakkuk 3:12_reference_end_ _reference_start_Zephaniah 3:8_reference_end_ Keyword: Similar Collocating Term: אַף Gloss: anger References: _reference_start_Psalms 69:25_reference_end_ _reference_start_Psalms 78:49_reference_end_ _reference_start_Isaiah 10:5_reference_end_ _reference_start_Isaiah 10:25_referencIe_end_ _reference_start_Isaiah 30:27_reference_end_ _reference_start_Lamentations 2:6_reference_end_ _reference_start_Nahum 1:6_reference_end_ _reference_start_Habakkuk 3:12_reference_end_ _reference_start_Zephaniah 3:8_reference_end_ Keyword: Similar Collocating Term: חָרֹון Gloss: burning [of anger] References: _reference_start_Psalms 69:25_reference_end_ _reference_start_Psalms 78:49_reference_end_ _reference_start_Nahum 1:6_reference_end_ _reference_start_Zephaniah 3:8_reference_end_ Keyword: Similar Collocating Term: קֶצֶף Gloss: anger References: _reference_start_Psalms 38:4_reference_end_ _reference_start_Psalms 102:11_reference_end_ _reference_start_Jeremiah 10:10_reference_end_ Keyword: Similar Collocating Term: עֶבְרָה Gloss: anger References: _reference_start_Psalms 78:49_reference_end_ _reference_start_Ezekiel 21:36_reference_end_ _reference_start_Ezekiel 22:31_reference_end_ Keyword: Similar Collocating Term: חֵמָה Gloss: anger References: _reference_start_Psalms 38:4_rJeference_end_ _reference_start_Nahum 1:6_reference_end_ Keyword: Similar Collocating Term: קִנְאָה Gloss: jealousy References: _reference_start_Zephaniah 3:8_reference_end_ Keyword: Similar Collocating Term: צָרָה Gloss: trouble References: _reference_start_Psalms 78:49_reference_end_ Keyword: Similar Collocating Term: נאץ Gloss: to spurn References: _reference_start_Lamentations 2:6_reference_end_ Level 3: b Context: Of humans, the emotion of anger Intrinsic Domains for Meaning:c Prophet, Apostasy Participant Roles for Meaning:c : Experiencer = implicit: human Target = implicit: human = Judahb* Key Reference: _reference_start_Jeremiah 15:17_reference_end_ Key Verse: KTBH - I sat alone because you had filled me with |banger|b* Evaluation of Translations: Most translations render זַעַם* by 'indignation' (NIV, RSV, NRS, REB, NJB), perhaps to distinguish it from other words for anger, whereas TEV and CEV use the more general English word 'anger'. Either would be fully acceptable. NJPS 'gloom' fits the context well, but seems harder to justify otherwise and should not be followed. _reference_start_Jeremiah 15:17_reference_end_ _reference_start_Hosea 7:16_reference_end_ Keyword: Similar Collocating Term: לַעַג Gloss: derision References: _reference_start_Hosea 7:16_reference_end_ Keyword: Opposite_Term Collocating Term: שׂחק Gloss: to be joyful References: _reference_start_Jeremiah 15:17_reference_end_ Note: (a) The genitive לָשֹׁון 'tongue' is used by metonymy for the Experiencers and suggests that their anger leads to speech. Note: (b) Even though Jeremiah is the actual Experiencer, he is sharing in Yahweh's anger, cf Jer 6:11 'I am full of the anger of Yahweh'. Version: 0 Date: 2007-12-27 10:51:54 cjs Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org. C~qdWJ=0# zm`SF9,vi\OB5( Y Y Y Y Y Y ~Y! }Y |Y! {X( zX yX( xX( wX  vX  uX  tX sX rX qX pW oW nW mW lW kW jWN1 iW$ hW" gW& fW eW$ dWN1 cW bWf aW& `W$ _W" ^WN1 ]WE \W$ [W# ZW" YW XW WW  VW  UWN1 TWE SW$ RW# QW" PW $ OW NW MW LW$ KW JW2 IW HW GW FW  EW  DW  CWf BWN1Mat meaning, leading some to propose two homonyms. זעף* I 'to rage, be angry' is well attested in cognate languages, but the existence of זעף* II is debated. HALOT, TDOT and NIDOTTE all defend homonym II by citing an Arabic root|i ḍaʿif|i* 'look wretched, pitiful, dejected' though TDOT notes that |iḍ |i*does not correspond to Hebrew ז*.BDB maintains a single root with a central meaning 'be out of humour' which develops in two directions 'be dejected' and 'be enraged' corresponding to the two main meanings presented here. Comparison of Meanings and Uses: 1 Meaning: to be angry a Participants: Experiencer and Target 2 Meaning: to act violently a Participants: Force 3 Meaning: to be physically unwell or emotionally upset a Participants: Patient Level 2: 1 Meaning: To experience the emotion of anger Frame for Meaning: Anger Verb Stem: Qal Participant Roles for Meaning: Experiencer: humanTarget: human or God Level 3: a Context: Of humans, to experience the emotion of anger Intrinsic DoNmains for Meaning:c Folly, Rebuke Participant Roles for Meaning:c Experiencer = subject or genitive or implicit: human = king, or the heart by metonymy for the personTarget = עִם or עַל or implicit: human or God Key Reference: _reference_start_Proverbs 19:3_reference_end_ Key Verse: KTBH - A person's folly ruins his life, but it is against Yahweh that his heart |brages|b* Evaluation of Translations: Most translations render זעף* with '[his heart] rages' (NIV, RSV, NRS, REB, NJB, NJPS). This is a good model to follow. TEV and CEV use 'blame', thereby making explicit the implicit step in the experience which might go 'experience ruin' > 'blame someone' > 'get angry with that someone'. This shift may be necessary if the 'blame' step is not obvious. _reference_start_2 Chronicles 26:19_reference_end_ _reference_start_2 Chronicles 26:19_reference_end_ _reference_start_Proverbs 19:3_reference_end_ Keyword: Level 2: 2 Meaning: To act violently, of the sea or a storm Frame for MeOaning: Meteorology Verb Stem: Qal Participant Roles for Meaning: Force: Sea Level 3: a Context: To act violently, of the sea Intrinsic Domains for Meaning:c Sea Participant Roles for Meaning:c Force = genitive subject: Sea Key Reference: _reference_start_Jonah 1:15_reference_end_ Key Verse: KTBH - They picked up Jonah and they threw him into the sea and the sea ceased its |braging|b* Evaluation of Translations: Some translations follow the structure of the Hebrew closely: 'and the sea ceased from its raging' (RSV, NRS), 'and the sea stopped raging' (NJB, NJPS). Others recognise that the raging is a property of the sea and translate 'the raging sea' (NIV), the raging of the sea' (REB). 'Rage' is a good rendering because the English and Hebrew match, though this may not be possible in other languages. TEV conveys the meaning without the word 'rage': '[the sea] calmed down' (CEV similar). Depending on translation style, any of these would be a good model to follow. _reference_start_Jonah 1:15_reference_endP_ Keyword: Opposite Collocating Term: עמד Gloss: to stand still References: _reference_start_Jonah 1:15_reference_end_ Level 2: 3 Meaning: To be physically unwell or emotionally upset and to show it Frame for Meaning: Health Verb Stem: Qal Participant Roles for Meaning: Patient: human Meaning Comments: The term זעף expresses a response to an incomprehensible dream in one case, and a change of diet in the other. In neither case is anger appropriate to the context. The fact that Joseph saw that something was wrong suggests that the word refers to something visible. Joseph's reference to the men's faces being רָעִים 'sad' also supports the element 'and to show it' in the definition. In a similar way, Nebuchadnezzar would have observed a problem. Level 3: a Context: To be physically unwell or emotionally upset and to show it Intrinsic Domains for Meaning:c Food, Dreams Participant Roles for Meaning:c Patient = subject: human Key Reference: _reference_start_Genesis 40:6_reference_end_ Key Verse: KTBH - Joseph came to them in the morning and he saw them; they |bwere dejected|b* Evaluation of Translations: The precise nuance of this meaning of the term is hard to establish and eight translations render in six different ways, 'dejected' (NIV), 'troubled' (RSV, NRS), 'dispirited' (REB), 'upset' (TEV, CEV), 'gloomy' (NJB), 'distraught' (NJPS). All fit the context well and all are consistent with the evidence for meaning. It would probably be best, however, to choose a translation equivalent which indicates that whatever was wrong was visible. _reference_start_Genesis 40:6_reference_end_ _reference_start_Daniel 1:10_reference_end_ Keyword: Similar Collocating Term: פָּנִים רָעִים Gloss: faces [are] dejected References: _reference_start_Genesis 40:6_reference_end_ Version: 0 Date: 2007-12-21 16:14:57 cjs Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org. &&>XggAXto be angry, to rage, to be dejected (זעף)to be angry, to rage, to be dejected (זעף)Strong's number: 02196 Part of speech: v Frequency: 6 Cognate(s): זָעֵף, זַעַף, זַלְעָפָה Abstract for Busy Translators: 1. The main distinction in meaning is between someone being angry with someone else, Meaning 1, and someone being physically unwell or emotionally upset and showing it, Meaning 3. 2. The one instance of Meaning 2 refers to the violence of the sea, behaving as if it were angry (cf Meaning 1). Hebraists' Comments: Most of the instances of זעף* and its cognates occur in contexts where the meaning 'anger' is appropriate. A few, particularly Gen 40:6 and Dan 1:10, cannot have thLSing:c Judgement Participant Roles for Meaning:c Experiencer = genitive or implicit: GodTarget = implicit: human Key Reference: _reference_start_Micah 7:9_reference_end_ Key Verse: KTBH - I will bear Yahweh's |banger |b*since I have sinned against him ... Evaluation of Translations: Most use 'anger' (REB, TEV, CEV, NJB, NJPS). This neutral term is a good model to follow. NIV 'wrath' is equally acceptable for divine anger. RSV and NRS use 'indignation' which seems too mild. _reference_start_Isaiah 30:30_reference_end_ _reference_start_Micah 7:9_reference_end_ Keyword: Similar Collocating Term: אַף Gloss: anger References: _reference_start_Isaiah 30:30_reference_end_ Level 3: b Context: Of humans, the emotion of anger Intrinsic Domains for Meaning:c Kingship, Disfavour, Warfare Participant Roles for Meaning:c Experiencer = genitive or implicit: human = kingTarget = עִם or implicit: human Key Reference: _reference_start_Proverbs 19:12_reference_end_ Key Verse: KTBH - A king's |brage |b*is like a lion's roar, but his favour is like dew on the grass Evaluation of Translations: Most use 'rage' (NIV, REB, NJPS) or 'anger' (NRS, TEV, NJB). Either would be a good model to follow. RSV 'wrath' sounds old-fashioned for human anger. _reference_start_2 Chronicles 16:10_reference_end_ _reference_start_2 Chronicles 28:9_reference_end_ _reference_start_Proverbs 19:12_reference_end_ Keyword: Similar Collocating Term: כעס Gloss: to be angry References: _reference_start_2 Chronicles 16:10_reference_end_ Keyword: Similar Collocating Term: חֵמָה Gloss: anger References: _reference_start_2 Chronicles 28:9_reference_end_ Keyword: Opposite Collocating Term: רָצֹון Gloss: favour References: _reference_start_Proverbs 19:12_reference_end_ Version: 0 Date: 2007-12-21 16:10:29 cjs Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org. 00@Y111Yanger (זַעַף)anger (זַעַף)Strong's number: 02197 Part of speech: ncm Frequency: 5 Cognate(s): זעף Abstract for Busy Translators: The only distinction in meaning is between God being angry with someone, Meaning 1a, and someone being angry with someone else, Meaning 1b. Notes for Translators: God’s anger is always righteous. It is directed against a person or people who are wrong. It may be translated by the same terms as human anger, unless those terms can only mean sinful anger. Hebraists' Comments: The noun seems to be related to homonym I of the verb, not homonym II. See the discussion under זעף*. Comparison of Meanings and Uses: 1 Focus: response; response: anger a Experiencer: God b Experiencer: human Level 2: 1 Meaning: The emotion of anger Frame for Meaning: Anger Participant Roles for Meaning: Experiencer: God or humanTarget: human Level 3: a Context: Of God, the emotion of anger Intrinsic Domains for MeanR C~qdWJ=0# zm`SF9,vi\OB5( G[ F[ E[ D[ C[ B[ A[ @[ ?[, >[* =[* <[$ ;[! :[ % 9[  8[ 7[ 6[ 5[ 4[ 3[ 2[  1[ 0[ /[ .[B -[? ,[? +[? *[; )[3 ([3 '[3 &[* %[" $[ #[j "[Z ![Y/ [X [O [N& [; [& [ [ [ [$ [" [" [ [  [  [  [ [ [  [ [ [ Z  Z + Z  Z + Z + Y Y Wout of humour, dejected' would also fit. In particular, the clause 'and he turned his face [away]' later in 1Ki 21:4 is consistent with dejection. Comparison of Meanings and Uses: 1 Focus: response; response: anger a Experiencer: human Level 2: 1 Meaning: Experiencing the emotion of anger Frame for Meaning: Anger Grammar Notes: This rare term only occurs as a word pair with the equally rare סַרa*, in the phrase סַר וְזָעֵף, in which the meaning may be carried by the whole, rather than the parts. Participant Roles for Meaning: Experiencer: humanTarget: human Level 3: a Context: Of humans, experiencing the emotion of anger Intrinsic Domains for Meaning:c Prophecy, Commercial Transaction Participant Roles for Meaning:c Experiencer = implicit: human = kingTarget = implicit: human Key Reference: _reference_start_1 Kings 20:43_reference_end_ Key Verse: KTBH - He went home sullen and |bangry |b*and he came to Samaria Evaluation of Translations: The rarity and difficulty of the word pair סַר וְזָעֵף is reflected in the variety of translations: 'sullen and angry' (NIV, RSV), 'resentful and sullen' (RSV, NRS), 'worried and depressed' (TEV), 'angry and depressed' (CEV), 'gloomy and out of temper' (NJB), 'dispirited and sullen' (NJPS). All of them fit the context as descriptions of Ahab's likely mood, but probably some term for 'anger' should be used. _reference_start_1 Kings 20:43_reference_end_ _reference_start_1 Kings 21:4_reference_end_ Keyword: Similar Collocating Term: סַרa* Gloss: stubborn, resentful, sullen, ill-humoured References: _reference_start_1 Kings 20:43_reference_end_ _reference_start_1 Kings 21:4_reference_end_ Note: (a) This word is restricted to the same contexts as זָעֵף* in 1Ki 20:43; 21:4, 5. Version: 0 Date: 2007-12-11 15:44:48 cjs Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org. %M%[[11e[anger (חֵמָה)anger (חֵמָה)\level1 1 Strong's number: 02535 Part of speech: ncf Frequency: 125 Cognate(s): יחם Abstract for Busy Translators: 1. Most instances of the word refer to anger or to the heat of anger, Meaning 1. 2. When the word means ‘anger’, there is a further distinction in meaning between God being angry with someone, Meaning 1a, and someone being angry with someone else, Meaning 1b. 3. In a few instances, the word has other meanings, perhaps related to heat. One is ‘poison, venom’, Meaning Y#Z11wZangry (זָעֵף)angry (זָעֵף)Strong's number: 02198 Part of speech: a Frequency: 2 Cognate(s): זעף Abstract for Busy Translators: Both instances of the word refer to someone being angry with someone else. Variant Spelling(s):int The majority view (HALOT, TDOT, NIDOTTE) is that the adjective is derived from זעף* I and has the sense 'angry'. It is worth noting, however, that זעף* II, with the sense 'VZ2a, and another is heat from wine, Meaning 2b. Notes for Translators: God’s anger is always righteous. It is directed against a person or people who are wrong. It may be translated by the same terms as human anger, unless those terms can only mean sinful anger. Hebraists' Comments: חֵמָה is generally agreed to be derived from יחם, though חמם and יחם are closely associated roots and there is even some doubt over which of the two roots gives rise to some of the Qal forms.חמם means 'to be hot' in various senses, and יחם also means 'to be' hot', but in a more limited sexual and reproductive sense. This sexual and reproductive sense, however, is not attested for חֵמָה. Its most common sense is 'anger', though it occurs a few times in the senses 'poison, venom' and 'heat from wine'. As TDOT notes, 'the notion of "being hot" ... probably furnishes the point of departure for all three meanings'. Comparison of Meanings and Uses: 1 Focus: response; response: anger a Experiencer: God b E[xperiencer: human 2 Other meanings a Meaning: venom, poison b Meaning: heat from wine Level 2: 1 Meaning: The emotion of anger Frame for Meaning: Anger Participant Roles for Meaning: Experiencer: God or humanTarget: human Level 3: a Context: Of God, the emotion of anger Intrinsic Domains for Meaning:c Apostasy and Judgement, Repentance and Restoration, Opposition to Israel, Eschatological judgement Participant Roles for Meaning:c Experiencer = genitive or implicit: GodTarget = בְּ or עַל or implicit: human Key Reference: _reference_start_Psalms 6:2_reference_end_ Key Verse: NIV - O LORD, do not rebuke me in your anger or discipline me in your |bwrath|b* Evaluation of Translations: A problem here is the two words for 'anger' in the parallel cola. Most use two English synonyms: 'anger, wrath' (NIV, RSV, NRS, REB), 'anger, fury' (NJPS) or 'anger, heat of wrath' (NJB). Use of the neutral 'anger' for the common אַף is natural, but care is necessary for the other word to avoid w\rong connotations. 'Wrath' is little-used except for God's wrath, but may be the best choice. 'Fury' conveys intensity and is appropriate for a temporary anger, which is not a settled attitude. CEV collapses the parallel cola without loss of meaning and thus needs only one word 'anger'. This may also be followed. _reference_start_Leviticus 26:28_reference_end_ _reference_start_Numbers 25:11_reference_end_ _reference_start_Deuteronomy 9:19_reference_end_ _reference_start_Deuteronomy 29:22_reference_end_ _reference_start_Deuteronomy 29:27_reference_end_ _reference_start_2 Kings 22:13_reference_end_ _reference_start_2 Kings 22:17_reference_end_ _reference_start_2 Chronicles 12:7_reference_end_ _reference_start_2 Chronicles 28:9_reference_end_ _reference_start_2 Chronicles 34:21_reference_end_ _reference_start_2 Chronicles 34:25_reference_end_ _reference_start_2 Chronicles 36:16_reference_end_ _reference_start_Job 19:29_reference_end_ _reference_start_Job 21:20_reference_end_ _reference_start_Psalms 6:2_refe]rence_end_ _reference_start_Psalms 38:2_reference_end_ _reference_start_Psalms 59:14_reference_end_ _reference_start_Psalms 78:38_reference_end_ _reference_start_Psalms 79:6_reference_end_ _reference_start_Psalms 88:8_reference_end_ _reference_start_Psalms 89:47_reference_end_ _reference_start_Psalms 90:7_reference_end_ _reference_start_Psalms 106:23_reference_end_ _reference_start_Isaiah 27:4_reference_end_ _reference_start_Isaiah 34:2_reference_end_ _reference_start_Isaiah 42:25_reference_end_ _reference_start_Isaiah 51:17_reference_end_ _reference_start_Isaiah 51:20_reference_end_ _reference_start_Isaiah 51:22_reference_end_ _reference_start_Isaiah 59:18_reference_end_ _reference_start_Isaiah 63:3_reference_end_ _reference_start_Isaiah 63:5_reference_end_ _reference_start_Isaiah 63:6_reference_end_ _reference_start_Isaiah 66:15_reference_end_ _reference_start_Jeremiah 4:4_reference_end_ _reference_start_Jeremiah 6:11_reference_end_ _reference_start_Jeremiah 7:20_reference_end_ _reference_start_Jeremiah^ 10:25_reference_end_ _reference_start_Jeremiah 18:20_reference_end_ _reference_start_Jeremiah 21:5_reference_end_ _reference_start_Jeremiah 21:12_reference_end_ _reference_start_Jeremiah 23:19_reference_end_ _reference_start_Jeremiah 25:15_reference_end_ _reference_start_Jeremiah 30:23_reference_end_ _reference_start_Jeremiah 32:31_reference_end_ _reference_start_Jeremiah 32:37_reference_end_ _reference_start_Jeremiah 33:5_reference_end_ _reference_start_Jeremiah 36:7_reference_end_ _reference_start_Jeremiah 42:18_reference_end_ _reference_start_Jeremiah 42:18_reference_end_ _reference_start_Jeremiah 44:6_reference_end_ _reference_start_Lamentations 2:4_reference_end_ _reference_start_Lamentations 4:11_reference_end_ _reference_start_Ezekiel 5:13_reference_end_ _reference_start_Ezekiel 5:13_reference_end_ _reference_start_Ezekiel 5:15_reference_end_ _reference_start_Ezekiel 5:15_reference_end_ _reference_start_Ezekiel 6:12_reference_end_ _reference_start_Ezekiel 7:8_reference_end_ _reference_start_Ezekie_l 8:18_reference_end_ _reference_start_Ezekiel 9:8_reference_end_ _reference_start_Ezekiel 13:13_reference_end_ _reference_start_Ezekiel 13:13_reference_end_ _reference_start_Ezekiel 13:15_reference_end_ _reference_start_Ezekiel 14:19_reference_end_ _reference_start_Ezekiel 16:38_reference_end_ _reference_start_Ezekiel 16:42_reference_end_ _reference_start_Ezekiel 19:12_reference_end_ _reference_start_Ezekiel 20:8_reference_end_ _reference_start_Ezekiel 20:13_reference_end_ _reference_start_Ezekiel 20:21_reference_end_ _reference_start_Ezekiel 20:33_reference_end_ _reference_start_Ezekiel 20:34_reference_end_ _reference_start_Ezekiel 21:22_reference_end_ _reference_start_Ezekiel 22:20_reference_end_ _reference_start_Ezekiel 22:22_reference_end_ _reference_start_Ezekiel 24:8_reference_end_ _reference_start_Ezekiel 24:13_reference_end_ _reference_start_Ezekiel 25:14_reference_end_ _reference_start_Ezekiel 25:17_reference_end_ _reference_start_Ezekiel 30:15_reference_end_ _reference_start_Ezekiel 36:6_refere`nce_end_ _reference_start_Ezekiel 36:18_reference_end_ _reference_start_Ezekiel 38:18_reference_end_ _reference_start_Daniel 9:16_reference_end_ _reference_start_Micah 5:14_reference_end_ _reference_start_Nahum 1:2_reference_end_ _reference_start_Nahum 1:6_reference_end_ _reference_start_Zechariah 8:2_reference_end_ Keyword: Similar Collocating Term: אַף Gloss: anger References: _reference_start_Deuteronomy 9:19_reference_end_ _reference_start_Deuteronomy 29:22_reference_end_ _reference_start_Deuteronomy 29:27_reference_end_ _reference_start_Psalms 6:2_reference_end_ _reference_start_Psalms 78:38_reference_end_ _reference_start_Psalms 90:7_reference_end_ _reference_start_Isaiah 42:25_reference_end_ _reference_start_Isaiah 63:3_reference_end_ _reference_start_Isaiah 63:6_reference_end_ _reference_start_Isaiah 66:15_reference_end_ _reference_start_Jeremiah 7:20_reference_end_ _reference_start_Jeremiah 21:5_reference_end_ _reference_start_Jeremiah 32:37_reference_end_ _reference_start_Jeremiah 33:5_refereance_end_ _reference_start_Jeremiah 36:7_reference_end_ _reference_start_Jeremiah 44:6_reference_end_ _reference_start_Lamentations 4:11_reference_end_ _reference_start_Ezekiel 5:13_reference_end_ _reference_start_Ezekiel 7:8_reference_end_ _reference_start_Ezekiel 13:13_reference_end_ _reference_start_Ezekiel 20:21_reference_end_ _reference_start_Ezekiel 22:20_reference_end_ _reference_start_Ezekiel 25:14_reference_end_ _reference_start_Ezekiel 38:18_reference_end_ _reference_start_Daniel 9:16_reference_end_ _reference_start_Micah 5:14_reference_end_ _reference_start_Nahum 1:6_reference_end_ Keyword: Similar Collocating Term: חָרֹון Gloss: anger References: _reference_start_Lamentations 4:11_reference_end_ _reference_start_Nahum 1:6_reference_end_ Keyword: Similar Collocating Term: קצף Gloss: to be angry References: _reference_start_Deuteronomy 9:19_reference_end_ Keyword: Similar Collocating Term: קֶצֶף Gloss: anger References: _reference_start_Deuteronomy 29:27_reference_end_ _reference_stbart_Psalms 38:2_reference_end_ _reference_start_Isaiah 34:2_reference_end_ _reference_start_Jeremiah 21:5_reference_end_ _reference_start_Jeremiah 32:31_reference_end_ _reference_start_Jeremiah 32:37_reference_end_ Keyword: Similar Collocating Term: כעס Gloss: (Qal) to be angry References: _reference_start_Ezekiel 16:42_reference_end_ Keyword: Similar Collocating Term: כעס Gloss: (Hiphil) to make angry References: _reference_start_2 Kings 22:17_reference_end_ _reference_start_2 Chronicles 34:25_reference_end_ Keyword: Similar Collocating Term: זַעַף Gloss: anger References: _reference_start_2 Chronicles 28:9_reference_end_ Keyword: Similar Collocating Term: זַעַם Gloss: anger References: _reference_start_Nahum 1:6_reference_end_ Keyword: Similar Collocating Term: יצת Gloss: to be kindled References: _reference_start_2 Kings 22:13_reference_end_ _reference_start_2 Kings 22:17_reference_end_ Keyword: Similar Collocating Term: קנא Gloss: to be jealous References: _reference_start_Zecharciah 8:2_reference_end_ Keyword: Similar Collocating Term: קִנְאָה Gloss: jealousy References: _reference_start_Ezekiel 5:13_reference_end_ _reference_start_Ezekiel 16:38_reference_end_ _reference_start_Ezekiel 16:42_reference_end_ _reference_start_Ezekiel 36:6_reference_end_ _reference_start_Zechariah 8:2_reference_end_ Keyword: Similar Collocating Term: קֶרִי Gloss: hostility References: _reference_start_Leviticus 26:28_reference_end_ Keyword: Similar Collocating Term: מִשְׁבָּר Gloss: waves References: _reference_start_Psalms 88:8_reference_end_ Keyword: Similar Collocating Term: גְּעָרָה Gloss: rebuke References: _reference_start_Isaiah 51:20_reference_end_ _reference_start_Isaiah 66:15_reference_end_ Keyword: Similar Collocating Term: תּוֹכַחַת Gloss: rebuke References: _reference_start_Ezekiel 5:15_reference_end_ Keyword: Similar Collocating Term: גְּמוּל Gloss: recompense References: _reference_start_Isaiah 59:18_reference_end_ Keyword: Similar Collocatindg Term: נחם Gloss: to ease oneself [by taking vengeance] References: _reference_start_Ezekiel 5:13_reference_end_ _reference_start_Ezekiel 5:13_reference_end_ Keyword: Opposite Collocating Term: שׁקט Gloss: to be at peace References: _reference_start_Ezekiel 16:42_reference_end_ Keyword: Opposite Collocating Term: חנן Gloss: to show favour References: _reference_start_Psalms 6:2_reference_end_ Keyword: Opposite Collocating Term: רַחוּם Gloss: compassionate References: _reference_start_Psalms 59:14_reference_end_ Keyword: Opposite Collocating Term: חוס Gloss: to look with compassion References: _reference_start_Ezekiel 8:18_reference_end_ Keyword: Opposite Collocating Term: חמל Gloss: to have compassion References: _reference_start_Ezekiel 8:18_reference_end_ Keyword: Opposite Collocating Term: כפר Gloss: to forgive References: _reference_start_Psalms 59:14_reference_end_ Keyword: Opposite Collocating Term: רפא Gloss: to heal References: _reference_start_Psalms 6:2_reference_ende_ Level 3: b Context: Of humans, the emotion of anger Intrinsic Domains for Meaning:c Various, including: Family, Kingship, Court etiquette, Friendship, Arrogance, Oppression, Warfare, Prophet Participant Roles for Meaning:c Experiencer = genitive or implicit: humanTarget = עַל (once) or implicit: human Key Reference: _reference_start_Proverbs 15:1_reference_end_ Key Verse: KTBH - A gentle answer turns away |brage |b*but a hurtful word provokes anger Evaluation of Translations: Again, the problem here is the two words for 'anger' in the parallel cola. Most use the same two English synonyms: 'wrath, anger' (NIV, RSV, NRS, NJB, NJPS). For human anger, 'wrath' has a distinctly old-fashioned sound, so perhaps an alternative such as 'rage' should be used.TEV and CEV retain the parallelism, but avoid the problem, by using a pronoun in the second colon: 'A gentle answer quietens anger but a harsh one stirs it up' (TEV). This seems a good example to follow if a language lacks a suitable synonym.f _reference_start_Genesis 27:44_reference_end_ _reference_start_2 Samuel 11:20_reference_end_ _reference_start_2 Kings 5:12_reference_end_ _reference_start_Esther 1:12_reference_end_ _reference_start_Esther 2:1_reference_end_ _reference_start_Esther 3:5_reference_end_ _reference_start_Esther 5:9_reference_end_ _reference_start_Esther 7:7_reference_end_ _reference_start_Esther 7:10_reference_end_ _reference_start_Job 36:18_reference_end_ _reference_start_Psalms 37:8_reference_end_ _reference_start_Psalms 76:11_reference_end_ _reference_start_Psalms 76:11_reference_end_ _reference_start_Proverbs 6:34_reference_end_ _reference_start_Proverbs 15:1_reference_end_ _reference_start_Proverbs 15:18_reference_end_ _reference_start_Proverbs 16:14_reference_end_ _reference_start_Proverbs 19:19_reference_end_ _reference_start_Proverbs 21:14_reference_end_ _reference_start_Proverbs 22:24_reference_end_ _reference_start_Proverbs 27:4_reference_end_ _reference_start_Proverbs 29:22_reference_end_ _reference_start_Isaiah 5g1:13_reference_end_ _reference_start_Isaiah 51:13_reference_end_ _reference_start_Ezekiel 3:14_reference_end_ _reference_start_Ezekiel 23:25_reference_end_ _reference_start_Daniel 8:6_reference_end_ _reference_start_Daniel 11:44_reference_end_ _reference_start_Habakkuk 2:15_reference_end_ Keyword: Similar Collocating Term: אַף Gloss: anger References: _reference_start_Psalms 37:8_reference_end_ _reference_start_Proverbs 15:1_reference_end_ _reference_start_Proverbs 15:18_reference_end_ _reference_start_Proverbs 21:14_reference_end_ _reference_start_Proverbs 22:24_reference_end_ _reference_start_Proverbs 27:4_reference_end_ _reference_start_Proverbs 29:22_reference_end_ Keyword: Similar Collocating Term: קצף Gloss: to be angry References: _reference_start_Esther 1:12_reference_end_ Keyword: Similar Collocating Term: חרה Hithpael Gloss: to fret References: _reference_start_Psalms 37:8_reference_end_ Keyword: Similar Collocating Term: קִנְאָה Gloss: jealousy References: _reference_start_Provehrbs 6:34_reference_end_ _reference_start_Proverbs 27:4_reference_end_ _reference_start_Ezekiel 23:25_reference_end_ Keyword: Similar Collocating Term: מַר Gloss: bitter References: _reference_start_Ezekiel 3:14_reference_end_ Keyword: Opposite Collocating Term: שׁקט Gloss: to be at peace References: _reference_start_Proverbs 15:18_reference_end_ Keyword: Opposite Collocating Term: אפך Gloss: to restrain oneself References: _reference_start_Esther 5:9_reference_end_ Level 2: 2 Meaning: Other meanings Level 3: a Context: Venom/poison _reference_start_Deuteronomy 32:24_reference_end_ _reference_start_Deuteronomy 32:33_reference_end_ _reference_start_Job 6:4_reference_end_ _reference_start_Psalms 58:5_reference_end_ _reference_start_Psalms 58:5_reference_end_ _reference_start_Psalms 140:4_reference_end_ Keyword: Similar Collocating Term: רֹאשׁ Gloss: poison References: _reference_start_Deuteronomy 32:33_reference_end_ Keyword: Similar Collocating Term: שֵׁן Gloss: tooth References: _referenice_start_Deuteronomy 32:24_reference_end_ Keyword: Similar Collocating Term: לָשֹׁון Gloss: tongue References: _reference_start_Psalms 140:4_reference_end_ Keyword: Similar Collocating Term: חֵץ Gloss: arrow References: _reference_start_Job 6:4_reference_end_ Level 3: b Context: Heat from wine _reference_start_Hosea 7:5_reference_end_ Keyword: Similar Collocating Term: חלה Gloss: to be sick References: _reference_start_Hosea 7:5_reference_end_ Note: (a) The text is difficult. Many emend חֵמָה* to הֵמָּה* 'these things'. NICOT accepts this as the simplest way to make sense of the text, but WBC retains MT and translates the colon 'for [yours is] an anger worthy of the sword'.If MT is retained, the anger is probably divine and the verse should be understood, 'for wrath will bring punishment by the sword' (NIV). Note: (b) There is a minority view (REB, TDOT) which sees this as an instance of the '[heat of] wine', probably under the influence of Driver (cited by Watts, WBC). Watts (WBC), Oswalt (NICOT) and Young all reject this meaning and take חֵמָה* to have its normal meaning 'anger'. Note: (c) Even though Jeremiah is the actual Experiencer, he is sharing in Yahweh's anger, cf Jer 15:17 'you filled me with anger'. Note: (d) 'Anger' is difficult in this context. Many either delete or emend eg NICOT. If MT is retained, NRS is a good model to follow, 'Beware that wrath does not entice you into scoffing', though 'anger' might be better than 'wrath' unless God's anger is in view. Note: (e) There is considerable ambiguity here. For fuller discussion see NICOT. KTBH retains MT, follows HALOT in reading the noun חֵמָה* rather than חֵמֶת*, understands חֵמָה* in its normal sense 'anger' and takes the Experiencer as the addressee, the Babylonians. Version: 0 Date: 2007-12-27 10:52:37 cjs Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org. C~qdWJ=0# zm`SF9,vi\OB5( [* [ % [  [ [" [& [ [  [" [ [" [! ~[  }[& |[ {[ z[ y[ x[ w[ v[ u[, t[$ s[! r[ % q[ p[ o[B n[? m[? l[* k[Z j[N& i[ h[ g[ f[  e[& d[" c[" b[! a[  `[& _[$ ^[$ ][ \[ [[ Z[ Y[ X[ W[ V[ U[" T[! S[ R[ Q[ P[ O[* N[& M[ L[  K[ J[ I[  H[ C~qdWJ=0# zm`SF9,vi\OB5( M[" L[% K[ J[ I[ H[ G[ F[ E[ D[% C[# B[ , A[ @[ ?[ >[3 =[3 <[ ;[ :[ 9[ 8[ 7[ 6[ 5[ 4[" 3[L 2[L 1[% 0[$ /[ .[ -[ ,[ +[ *[ )[  ([  '[, &[ %[ $[; #[ "[ ![; [ [* [ [ [; [ [B [3 [X [ [& [$ [* [& [ [& [  [  [" [ [" [  C~pcVH;.!xk^QD7*tgZM@3& \ ! \ \  \ \ \ \ \  \&  \# \ \ \j( \ \* \ \ \ ~\  }\  |\  {\  z\  y\  x\' w\ v\ u\ t\ s\ r\ q\ p\  o\ n\ m\ l\ k\ j\ i\ h\ ! g\ f\  e\ d\ c\ b\ a\ `\ _\ ^[ ][ \[ [[ Z[  Y[ ! X[ W[: V[: U[ T[ ! S[  R[ Q[ P[ O[ N[nly’, Meaning 2c. Notes for Translators: God’s anger is always righteous. It is directed against a person or people who are wrong. It may be translated by the same terms as human anger, unless those terms can only mean sinful anger. Hebraists' Comments: Other ANE languages have a cognate root which has the meaning 'to burn' in a literal sense. This suggests that the literal meaning may also have been present in Hebrew, but in the Hebrew Bible the root only occurs in metaphorical senses, particularly 'to burn with anger'. It does however, collocate with literal fire, both in narrative (Num 11:1) and in poetry (2Sa 22:8-9, Psa 18:8-9).Other verbs עבר 'to burn' (Psa 2:12, Isa 30.27) and עשׁן 'to smoke' (Deu 29:19, Psa 74:1) also take אַף (and other words for anger) as subject, though less often than חרה and their literal meaning is more prominent. חרה is unique, however, in that the literal sense is unattested.Of the two main constructions of the Qal,a* one makes the anger explicit, 'someoone's anger burned', and the other is an impersonal construction in which the anger is implicit, 'it burned to someone' = 'someone was angry'. The latter construction is also attested in Hebrew for other emotions.b* There appears, however, to be little or no difference between the two constructions. The fuller expression is used for most instances of Yahweh's anger, but not consistently. The shorter expression is more common for human anger, but both occur. Evaluating Evidence: HALOT proposes a second homonym, attested only at Isa 24:6. The Westminster Hebrew Institute, in their morphological database, however, follow the majority of authorities (BDB, NIDOTTE, GKC, Even-Shoshan) against HALOT and considers the form חָרוּ, found at Isa 24:6, to be derived from the root חרר 'to burn'. Comparison of Meanings and Uses: 1 Focus: response; response: anger a Experiencer: God b Experiencer: human 2 Other meanings a Meaning: to be worried or distressed b Meaning: to compete c Meaning: zealously Domainp and Frame Notes: See other synonyms for notes. In addition:1. 'Then David was angry because the Lord's wrath had broken out against Uzzah' (2Sa 6:8, NIV, similarly REB) is an informative mistranslation. The Hebrew makes Yahweh the subject of the verb פרץ*, but NIV makes Yahweh's anger into the subject, thereby demoting Yahweh in terms of the actor-undergoer hierarchy, and presenting him as being driven by his own anger. Others follow Hebrew more closely, making Yahweh the agent of the 'breaking out'.2. It is the event-type of the associated events that determines the domains involved. For example, for divine anger, the stimulus is typically apostasy and the consequence is judgement. Level 2: 1 Meaning: To experience the emotion of anger Frame for Meaning: Anger Verb Stem: Qal, Niphalc* (3x) or Hiphild* (1x) Grammar Notes: There are two main constructions (see further the Comments for Hebraists), one of which makes the anger explicit, 'someone's anger burned', and the other is an impersonal constructioqn in which the anger is implicit, 'it burned to someone' = 'someone was angry'. Whichever occurs in the Hebrew, the same translation options may be used (see Evaluation or Translations). Participant Roles for Meaning: Experiencer: God or humanTarget: human = individual(s) or a nation, Israel or anothere* Level 3: a Context: Of God, to experience the emotion of anger Intrinsic Domains for Meaning:c Apostasy and Judgement, Opposition to Israel Participant Roles for Meaning:c Experiencer = לְ or genitive with אַף: God Target = בְּ or rarely עַל or implicit: human Key Reference: _reference_start_Exodus 4:14_reference_end_ Key Verse: KTBH - The anger of Yahweh |bburned |b*against Moses and he said ... Evaluation of Translations: Some translations, such as NIV, preserve the Hebrew idiom, 'then the Lord's anger burned against Moses' (similarly RSV, NRS, NJB). This works well in English and could be followed in other languages where the idiom is natural. Other trranslations, such as NJPS remove the imagery of burning and simplify the expression, 'the LORD became angry with Moses (similarly TEV, CEV, REB). _reference_start_Genesis 18:30_reference_end_ _reference_start_Genesis 18:32_reference_end_ _reference_start_Exodus 4:14_reference_end_ _reference_start_Exodus 22:23_reference_end_ _reference_start_Exodus 32:10_reference_end_ _reference_start_Exodus 32:11_reference_end_ _reference_start_Numbers 11:1_reference_end_ _reference_start_Numbers 11:10_reference_end_ _reference_start_Numbers 11:33_reference_end_ _reference_start_Numbers 12:9_reference_end_ _reference_start_Numbers 22:22_reference_end_ _reference_start_Numbers 25:3_reference_end_ _reference_start_Numbers 32:10_reference_end_ _reference_start_Numbers 32:13_reference_end_ _reference_start_Deuteronomy 6:15_reference_end_ _reference_start_Deuteronomy 7:4_reference_end_ _reference_start_Deuteronomy 11:17_reference_end_ _reference_start_Deuteronomy 29:26_reference_end_ _reference_start_Deuteronomy 31:17_referesnce_end_ _reference_start_Joshua 7:1_reference_end_ _reference_start_Joshua 23:16_reference_end_ _reference_start_Judges 2:14_reference_end_ _reference_start_Judges 2:20_reference_end_ _reference_start_Judges 3:8_reference_end_ _reference_start_Judges 6:39_reference_end_ _reference_start_Judges 10:7_reference_end_ _reference_start_2 Samuel 6:7_reference_end_ _reference_start_2 Samuel 22:8_reference_end_ _reference_start_2 Samuel 24:1_reference_end_ _reference_start_2 Kings 13:3_reference_end_ _reference_start_2 Kings 23:26_reference_end_ _reference_start_1 Chronicles 13:10_reference_end_ _reference_start_2 Chronicles 25:15_reference_end_ _reference_start_Job 19:11_reference_end_ _reference_start_Job 42:7_reference_end_ _reference_start_Psalms 18:8_reference_end_ _reference_start_Psalms 106:40_reference_end_ _reference_start_Isaiah 5:25_reference_end_ _reference_start_Hosea 8:5_reference_end_ _reference_start_Habakkuk 3:8_reference_end_ _reference_start_Zechariah 10:3_reference_end_ Keyword: Cognate Colloctating Term: חָרֹון Gloss: anger References: _reference_start_2 Kings 23:26_reference_end_ Keyword: Similar Collocating Term: אַף Gloss: anger References: _reference_start_Exodus 4:14_reference_end_ _reference_start_Exodus 22:23_reference_end_ _reference_start_Exodus 32:10_reference_end_ _reference_start_Exodus 32:11_reference_end_ _reference_start_Numbers 11:1_reference_end_ _reference_start_Numbers 11:10_reference_end_ _reference_start_Numbers 11:33_reference_end_ _reference_start_Numbers 12:9_reference_end_ _reference_start_Numbers 22:22_reference_end_ _reference_start_Numbers 25:3_reference_end_ _reference_start_Numbers 32:10_reference_end_ _reference_start_Numbers 32:13_reference_end_ _reference_start_Deuteronomy 7:4_reference_end_ _reference_start_Deuteronomy 11:17_reference_end_ _reference_start_Deuteronomy 29:26_reference_end_ _reference_start_Deuteronomy 31:17_reference_end_ _reference_start_Joshua 7:1_reference_end_ _reference_start_Joshua 23:16_reference_end_ _reference_start_Judges 2:1u4_reference_end_ _reference_start_Judges 2:20_reference_end_ _reference_start_Judges 3:8_reference_end_ _reference_start_Judges 6:39_reference_end_ _reference_start_Judges 10:7_reference_end_ _reference_start_2 Samuel 6:7_reference_end_ _reference_start_2 Samuel 24:1_reference_end_ _reference_start_2 Kings 13:3_reference_end_ _reference_start_2 Kings 23:26_reference_end_ _reference_start_1 Chronicles 13:10_reference_end_ _reference_start_2 Chronicles 25:15_reference_end_ _reference_start_Job 19:11_reference_end_ _reference_start_Job 42:7_reference_end_ _reference_start_Psalms 106:40_reference_end_ _reference_start_Isaiah 5:25_reference_end_ _reference_start_Hosea 8:5_reference_end_ _reference_start_Habakkuk 3:8_reference_end_ _reference_start_Zechariah 10:3_reference_end_ Keyword: Similar Collocating Term: עֶבְרָה Gloss: anger References: _reference_start_Habakkuk 3:8_reference_end_ Keyword: Similar Collocating Term: קַנָּא Gloss: jealous References: _reference_start_Deuteronomy 6:15_referencve_end_ Keyword: Similar Collocating Term: צַר Gloss: enemy References: _reference_start_Job 19:11_reference_end_ Keyword: Similar Collocating Term: תעב Gloss: to abhor References: _reference_start_Psalms 106:40_reference_end_ Keyword: Similar Collocating Term: פקד Gloss: to bring judgement References: _reference_start_Zechariah 10:3_reference_end_ Level 3: b Context: Of humans, to experience the emotion of anger Intrinsic Domains for Meaning:c Various, including: Family, Rivalry, Enmity, Criticism, Rebellion, Mercy Participant Roles for Meaning:c Experiencer = לְ or genitive with אַף (or subject of Niphal): human Target = בְּ or אֶל or implicit: human = individual(s) or God Key Reference: _reference_start_Exodus 32:19_reference_end_ Key Verse: KTBH - ... Moses' anger |bburned |b*and he threw down ... Evaluation of Translations: As above, some translations such as RSV preserve the Hebrew idiom, 'Moses' anger burned hot' (similarwly NIV, NRS, NJB). This works well in English and could be followed in other languages where the idiom is natural. Other translations, such as TEV, remove the imagery of burning and simplify the expression, 'he [Moses] was furious' (similarly NJPS, CEV, REB). _reference_start_Genesis 4:5_reference_end_ _reference_start_Genesis 4:6_reference_end_ _reference_start_Genesis 30:2_reference_end_ _reference_start_Genesis 31:35_reference_end_ _reference_start_Genesis 31:36_reference_end_ _reference_start_Genesis 34:7_reference_end_ _reference_start_Genesis 39:19_reference_end_ _reference_start_Genesis 44:18_reference_end_ _reference_start_Genesis 45:5_reference_end_ _reference_start_Exodus 32:19_reference_end_ _reference_start_Exodus 32:22_reference_end_ _reference_start_Numbers 16:15_reference_end_ _reference_start_Numbers 22:27_reference_end_ _reference_start_Numbers 24:10_reference_end_ _reference_start_Judges 9:30_reference_end_ _reference_start_Judges 14:19_reference_end_ _reference_start_1 Samuel 11:6_referxence_end_ _reference_start_1 Samuel 15:11_reference_end_ _reference_start_1 Samuel 17:28_reference_end_ _reference_start_1 Samuel 18:8_reference_end_ _reference_start_1 Samuel 20:7_reference_end_ _reference_start_1 Samuel 20:7_reference_end_ _reference_start_1 Samuel 20:30_reference_end_ _reference_start_2 Samuel 3:8_reference_end_ _reference_start_2 Samuel 6:8_reference_end_ _reference_start_2 Samuel 12:5_reference_end_ _reference_start_2 Samuel 13:21_reference_end_ _reference_start_2 Samuel 19:43_reference_end_ _reference_start_1 Chronicles 13:11_reference_end_ _reference_start_2 Chronicles 25:10_reference_end_ _reference_start_Nehemiah 3:33_reference_end_ _reference_start_Nehemiah 4:1_reference_end_ _reference_start_Nehemiah 5:6_reference_end_ _reference_start_Job 32:2_reference_end_ _reference_start_Job 32:2_reference_end_ _reference_start_Job 32:3_reference_end_ _reference_start_Job 32:5_reference_end_ _reference_start_Psalms 124:3_reference_end_ _reference_start_Song of Solomon 1:6_reference_end_ _ryeference_start_Isaiah 41:11_reference_end_ _reference_start_Isaiah 45:24_reference_end_ _reference_start_Jonah 4:1_reference_end_ _reference_start_Jonah 4:4_reference_end_ _reference_start_Jonah 4:9_reference_end_ _reference_start_Jonah 4:9_reference_end_ Keyword: Similar Collocating Term: אַף Gloss: anger References: _reference_start_Genesis 30:2_reference_end_ _reference_start_Genesis 39:19_reference_end_ _reference_start_Genesis 44:18_reference_end_ _reference_start_Exodus 32:19_reference_end_ _reference_start_Exodus 32:22_reference_end_ _reference_start_Numbers 22:27_reference_end_ _reference_start_Numbers 24:10_reference_end_ _reference_start_Judges 9:30_reference_end_ _reference_start_Judges 14:19_reference_end_ _reference_start_1 Samuel 11:6_reference_end_ _reference_start_1 Samuel 17:28_reference_end_ _reference_start_1 Samuel 20:30_reference_end_ _reference_start_2 Samuel 12:5_reference_end_ _reference_start_2 Chronicles 25:10_reference_end_ _reference_start_Job 32:2_reference_end_ _reference_zstart_Job 32:2_reference_end_ _reference_start_Job 32:3_reference_end_ _reference_start_Job 32:5_reference_end_ _reference_start_Psalms 124:3_reference_end_ Keyword: Similar Collocating Term: כעס Gloss: to be angry References: _reference_start_Nehemiah 3:33_reference_end_ Keyword: Similar Collocating Term: נפל פָּנִים Gloss: [someone's] face to fall References: _reference_start_Genesis 4:5_reference_end_ _reference_start_Genesis 4:6_reference_end_ Keyword: Similar Collocating Term: עצב Gloss: to feel hurt References: _reference_start_Genesis 34:7_reference_end_ _reference_start_Genesis 45:5_reference_end_ Keyword: Similar Collocating Term: נחם Gloss: to regret References: _reference_start_1 Samuel 15:11_reference_end_ Keyword: Similar Collocating Term: רִיב Gloss: strife References: _reference_start_Isaiah 41:11_reference_end_ Keyword: Similar Collocating Term: מַצּוּת Gloss: strife References: _reference_start_Isaiah 41:11_reference_end_ Keyword: Similar Collocating Term: מ{ִלְחָמָה Gloss: warfare References: _reference_start_Isaiah 41:11_reference_end_ Level 2: 2 Meaning: Other meanings Level 3: a Context: To be worried or distressed Meaning Comments:c Hithpael _reference_start_Psalms 37:1_reference_end_ _reference_start_Psalms 37:7_reference_end_ _reference_start_Psalms 37:8_reference_end_ _reference_start_Proverbs 24:19_reference_end_ Keyword: Similar Collocating Term: קנא Gloss: to envy References: _reference_start_Psalms 37:1_reference_end_ Keyword: Opposite Collocating Term: דמם Gloss: to be still, quiet References: _reference_start_Psalms 37:7_reference_end_ Keyword: Opposite Collocating Term: חיל Gloss: to wait longinglyj* References: _reference_start_Psalms 37:7_reference_end_ Keyword: Opposite Collocating Term: רפה מֵאַף Gloss: to refrain from anger References: _reference_start_Psalms 37:8_reference_end_ Keyword: Opposite Collocating Term: עזב חֵמָה Gloss: to forsake anger References: _reference_start_Psalms 37:8_reference_end_ Leve|l 3: b Context: To compete Meaning Comments:c Hithpael _reference_start_Jeremiah 12:5_reference_end_ _reference_start_Jeremiah 22:15_reference_end_ Keyword: Similar Collocating Term: רוץ Gloss: to run References: _reference_start_Jeremiah 12:5_reference_end_ Level 3: c Context: Zealously Meaning Comments:c Hiphil _reference_start_Nehemiah 3:20_reference_end_ Keyword: Note: (a) A third construction with בְּעֵינֵי also occurs, but only twice, both times in Genesis (31:35; 45:5) and both negated. Note: (b) Joüon and Muraoka note that impersonal constructions with לְ occur with a 3ms verb, especially when they express an emotion. חָרָה לֹו 'he is angry', חַם לֹו 'he is hot', צַר לֹו 'he is distressed', מַר לֹו 'he is unhappy' and others (§152.d). See also GKC §144.b and IBHS §22.7.b. Note: (c) There are only three instances of the Niphal of חרה*. They show a different syntax in that the Experiencer is subject, but the target is still introduced by בְּ. Some co}mmentators attribute reflexive significance to the Niphal form: thus KD renders it by 'burn inwardly' at Sng 1:6 and TOTC by 'keep themselves incensed' at Isa 45:24, but there is insufficient evidence to support a distinct meaning. Thus KTBH includes the Niphal with the more common Qal.BHS proposes repointing both instances of the Niphal in Isaiah as a form of נחר* 'snort [with indignation]' but this is 'unnecessary here, since MT is neither impossible nor improbable' (NICOT on Isa 41:11). Note: (d) In Job 19:11, MT points as the Hiphil, but BHS and HALOT recommend repointing as the Qal. If MT is retained, the construction with the Hiphil may either be the same as the impersonal construction with the Qal, with אַפֹּו* as subject 'his anger burned', or there may be a causative nuance, 'he has kindled his anger', with אַפֹּו* as object. Note: (e) At Deu 29:26, the target is 'that land' but by metonymy it refers to the people of the land, the Egyptians Note: (f) Unusually, the target is more e~xtensive than the agent of the stimulus. Note: (g) The syntax of Hab 3:8 seems to be unique. If MT is accepted, then יהוה* must be either the personal subject of חרה* or a vocative with elision of the לְךָ* normally expected with חרה*. Most commentaries and translations assume the latter, except for Robertson (NICOT 1990, 229) who appears to assume the former without comment. For detailed discussion, including defence of MT, see Andersen (AB 2001, 316-17). Note: (h) In this instance, self-anger is probably implied, which is rare in the Hebrew Bible. The same construction, with בְּעֵנֵי, occurs at Gen 31:35 but there Experiencer and Target are distinct. Note: (i) This may be an unusual instance of an inanimate target, but it is more likely that עַל expresses the stimulus, 'about the plant', as the translations all agree and Price and Nida make explicit, 'It is important not to imply that Jonah was angry at the plant itself but because the plant had withered and died' (HBK). Note: (j) This gloss is taken from BDB. HALOT and BHS both recommend emendation to some form of יחל* 'to wait'. The normal meaning of the Hithpolel of חיל* hardly fits the context: 'to writhe with fear (HALOT) or 'to whirl, writhe' (BDB). Note: (k) This word appears to be a Hiphil form from חרה*, but it is difficult to assign a meaning to such a form in this context. The word is absent from LXX, probably either because it was missing from their |iVorlage |i*or because they did not understand it either. Those who retain MT generally translate 'eagerly, zealously' or the like, but, as Williamson notes, 'this is not a legitimate meaning of this word' (WBC). NICOT translates in brackets and WBC and AB omit. In the context of the present work in KTBH, the sense 'anger' is absent. Version: 0 Date: 2007-12-27 10:53:40 cjs Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org. RR]\GG=\to burn [with anger] (חרה)to burn [with anger] (חרה)\level1 1 Strong's number: 02734 Part of speech: v \inc חָרוֹן Part of speech (inc): ncm \inc חֳרִי Part of speech (inc): ncm Frequency: 93 Abstract for Busy Translators: 1. Most instances of the word refer to burning with anger, Meaning 1. 2. When the word means ‘anger’, There is a further distinction in meaning between God being angry with someone, Meaning 1a, and someone being angry with someone else, Meaning 1b. 3. In a few instances, the word has other meanings. One is ‘to be worried or distressed’, Meaning 2a, another is ‘to compete’, Meaning 2b, and a third is ‘zealousm C~qdWJ=0# zm`SF9,vi\OB5( S\ R\! Q\ P\ O\ + N\  M\  L\  K\  J\  I\  H\  G\  F\  E\  D\  C\ B\  A\ @\ ?\ >\  =\  <\- ;\, :\' 9\" 8\$ 7\# 6\ 5\ 4\ 3\  2\&  1\j( 0\ /\ .\# -\&  ,\# +\ *\ )\j( (\* '\ &\ %\ $\  #\  "\  !\  \  \' \ \ \ \ \ \ \ \  \ \ \ \ \ \ C~qdWJ=0# zm`SF9,vi\OB5( ] ] ] ] ]  ]  ] ]  ]  ] ] ] ]E \ \  \ \  \% \% \% \% \% \ \% ~\% }\% |\) {\) z\) y\  x\- w\" v\ u\ t\! s\| r\  q\  p\  o\  n\ m\  l\  k\  j\  i\ h\  g\ f\ e\  d\  c\, b\' a\ `\  _\  ^\  ]\  \\- [\) Z\ Y\| X\  W\  V\  U\  T\human anger, unless those terms can only mean sinful anger. Hebraists' Comments: For discussion of the likely original sense 'burning' of the root see the cognate verb חרה*. Although the term is never used of literal burning,a* it is used in contexts in which literal burning is a consequence of God's anger (eg Lam 4:11).In a similar manner to the verb, there are two constructions, the more common in which אַף* 'anger' is explicit, God's חֲרֹון אַף*, and the less common in which it is implicit, God's חָרֹון*. There appears to be little or no difference in meaning between the two constructions. Comparison of Meanings and Uses: 1 Focus: response; response: anger a Experiencer: God b Experiencer: human 2 Meaning uncertain a Meaning uncertain Domain and Frame Notes: The domain, Apostasy / repentance, includes many sub-domains: Disobedience / obedience, Injustice, Law-breaking, The ban (חֶרֶם*). For further comments see other synonyms. Level 2: 1 Meaning: The emotion of anger Frame for Meaning: Anger Grammar Notes: In a similar manner to the verb, there are two constructions, the more common in which the word for anger is explicit, and the less common in which it is implicit. There appears to be little or no difference in meaning between the two constructions and they may be translated in the same way. Participant Roles for Meaning: Experiencer: GodTarget: human Meaning Comments: This meaning appears to be used only with God as Experiencer.b* Level 3: a Context: Of God. the emotion of anger Intrinsic Domains for Meaning:c Apostasy and Judgement, Repentance and Restoration, Opposition to Israel, Eschatological judgement Participant Roles for Meaning:c Experiencer = genitive or implicit: GodTarget = בְּ or עַל or implicit: human = individual or a nation, Israel or another Key Reference: _reference_start_Psalms 69:25_reference_end_ Key Verse: KTBH - Pour out your wrath on them and let your |bburning |b*anger overtake them Evaluation of Translations: Most retain the 'burning' imagery and understand the construct pair חֲרֹון אַף* as an intensifying construction, 'burning anger' (RSV, NRS, REB, NJB) or 'blazing anger' (NJPS). This works well in English and could be followed in other languages where it is natural. NIV mutes the imagery, but is otherwise similar, 'fierce anger'. It may be appropriate to use an intensifying adjective with a basic word for 'anger' in this way. Others simplify the expression to 'indignation' (TEV) or 'be furious' (CEV). _reference_start_Exodus 15:7_reference_end_ _reference_start_Exodus 32:12_reference_end_ _reference_start_Numbers 25:4_reference_end_ _reference_start_Numbers 32:14_reference_end_ _reference_start_Deuteronomy 13:18_reference_end_ _reference_start_Joshua 7:26_reference_end_ _reference_start_1 Samuel 28:18_reference_end_ _reference_start_2 Kings 23:26_reference_end_ _reference_start_2 Chronicles 28:11_reference_end_ _reference_start_2 Chronicles 28:13_reference_end_ _reference_start_2 Chronicles 29:10_reference_end_ _reference_start_2 Chronicles 30:8_reference_end_ _reference_start_Ezra 10:14_reference_end_ _reference_start_Nehemiah 13:18_reference_end_ _reference_start_Job 20:23_reference_end_ _reference_start_Psalms 2:5_reference_end_ _reference_start_Psalms 69:25_reference_end_ _reference_start_Psalms 78:49_reference_end_ _reference_start_Psalms 85:4_reference_end_ _reference_start_Psalms 88:17_reference_end_ _reference_start_Isaiah 13:9_reference_end_ _reference_start_Isaiah 13:13_reference_end_ _reference_start_Jeremiah 4:8_reference_end_ _reference_start_Jeremiah 4:26_reference_end_ _reference_start_Jeremiah 12:13_reference_end_ _reference_start_Jeremiah 25:37_reference_end_ _reference_start_Jeremiah 25:38_reference_end_ _reference_start_Jeremiah 30:24_reference_end_ _reference_start_Jeremiah 49:37_reference_end_ _reference_start_Jeremiah 51:45_reference_end_ _reference_start_Lamentations 1:12_reference_end_ _reference_start_Lamentations 4:11_reference_end_ _reference_start_Ezekiel 7:12_reference_end_ _reference_start_Ezekiel 7:14_reference_end_ _reference_start_Hosea 11:9_reference_end_ _reference_start_Jonah 3:9_reference_end_ _reference_start_Nahum 1:6_reference_end_ _reference_start_Zephaniah 2:2_reference_end_ _reference_start_Zephaniah 3:8_reference_end_ Keyword: Cognate Collocating Term: חרה Gloss: to burn [with anger] References: _reference_start_2 Kings 23:26_reference_end_ Keyword: Similar Collocating Term: אַף Gloss: anger References: _reference_start_Exodus 32:12_reference_end_ _reference_start_Numbers 25:4_reference_end_ _reference_start_Numbers 32:14_reference_end_ _reference_start_Deuteronomy 13:18_reference_end_ _reference_start_Joshua 7:26_reference_end_ _reference_start_1 Samuel 28:18_reference_end_ _reference_start_2 Kings 23:26_reference_end_ _reference_start_2 Chronicles 28:11_reference_end_ _reference_start_2 Chronicles 28:13_reference_end_ _reference_start_2 Chronicles 29:10_reference_end_ _reference_start_2 Chronicles 30:8_reference_end_ _reference_start_Ezra 10:14_reference_end_ _reference_start_Job 20:23_reference_end_ _reference_start_Psalms 2:5_reference_end_ _reference_start_Psalms 69:25_reference_end_ _reference_start_Psalms 78:49_reference_end_ _reference_start_Psalms 85:4_reference_end_ _reference_start_Isaiah 13:9_reference_end_ _reference_start_Isaiah 13:13_reference_end_ _reference_start_Jeremiah 4:8_reference_end_ _reference_start_Jeremiah 4:26_reference_end_ _reference_start_Jeremiah 12:13_reference_end_ _reference_start_Jeremiah 25:37_reference_end_ _reference_start_Jeremiah 25:38_reference_end_ _reference_start_Jeremiah 30:24_reference_end_ _reference_start_Jeremiah 49:37_reference_end_ _reference_start_Jeremiah 51:45_reference_end_ _reference_start_Lamentations 1:12_reference_end_ _reference_start_Lamentations 4:11_reference_end_ _reference_start_Hosea 11:9_reference_end_ _reference_start_Jonah 3:9_reference_end_ _reference_start_Nahum 1:6_reference_end_ _reference_start_Zephaniah 2:2_reference_end_ _reference_start_Zephaniah 3:8_reference_end_ Keyword: Similar Collocating Term: חֵמָה Gloss: anger References: _reference_start_Lamentations 4:11_reference_end_ _reference_start_Nahum 1:6_reference_end_ Keyword: Similar Collocating Term: זַעַם Gloss: anger References: _reference_start_Psalms 69:25_reference_end_ _reference_start_Psalms 78:49_reference_end_ _reference_start_Nahum 1:6_reference_end_ _reference_start_Zephaniah 3:8_reference_end_ Keyword: Similar Collocating Term: עֶבְרָה Gloss: anger References: _reference_start_Psalms 78:49_reference_end_ _reference_start_Psalms 85:4_reference_end_ _reference_start_Isaiah 13:9_reference_end_ _reference_start_Isaiah 13:13_reference_end_ Keyword: Similar Collocating Term: צָרָה Gloss: distress References: _reference_start_Psalms 78:49_reference_end_ Keyword: Similar Collocating Term: אֵימָה Gloss: terror References: _reference_start_Psalms 88:17_reference_end_ Keyword: Similar Collocating Term: בִּעוּת Gloss: terror References: _reference_start_Psalms 88:17_reference_end_ Keyword: Similar Collocating Term: אכל Gloss: to consume References: _reference_start_Exodus 15:7_reference_end_ Keyword: Similar Collocating Term: אַכְזָרִי Gloss: cruel References: _reference_start_Isaiah 13:9_reference_end_ Keyword: Opposite Collocating Term: נחם Gloss: to relent References: _reference_start_Exodus 32:12_reference_end_ _reference_start_Jonah 3:9_reference_end_ Keyword: Opposite Collocating Term: רחם Gloss: to have compassion References: _reference_start_Deuteronomy 13:18_reference_end_ Keyword: Opposite Collocating Term: רַחְַמִים Gloss: compassion References: _reference_start_Deuteronomy 13:18_reference_end_ Level 3: b Context: Of humans. the emotion of anger Intrinsic Domains for Meaning:c Oppression Participant Roles for Meaning:c Experiencer = genitive: humanTarget = implicit: human Key Reference: _reference_start_Jeremiah 25:38_reference_end_ Key Verse: KTBH - ... because of the |banger |b*of the oppressor ... Evaluation of Translations: NJB 'owing to the devastating fury', and NJPS 'because of the oppressive wrath' translate MT and appear to understand הַיֹּונָה *as 'oppressing', and take it to qualify חֲרֹון*. Most others accept emendation of חֲרֹון *to חֶרֶב*, and understand הַיֹּונָה *as a collective 'oppressors' eg NIV 'because of the sword of the oppressor' (Similarly RSV, NRS, REB, and probably TEV). CEV omits the entire second half of the verse.Depending whether or not the textual emendation is accepted, either NIV or NJPS would be good models to follow. _reference_start_Jeremiah 25:38_reference_end_ Keyword: Level 2: 2 Meaning: Meaning uncertain Level 3: a Context: Meaning uncertain _reference_start_Psalms 58:10_reference_end_ Keyword: Note: (a) With the possible exception of the very doubtful Psa 58:10 (see below). Note: (b) Though the difficult Jer 25:38a may be an exception (see note f). Note: (c) Only here in the plural. Tate takes it as an intensive or plural of amplification, citing GKC 124.e (WBC 1990). BDB suggests 'bursts of burning anger' probably assuming a plural of intensity. Note: (d) This assumes that the 3ms suffix refers to Yahweh (cf the similar phrase in v. 37) and not הַיֹּונָה*, understood as 'the oppressor'. However the commentaries handle the difficulties of the preceding colon, they agree that it is the anger of Yahweh that is in view. Note: (e) The Experiencer is ambiguous in this verse, but essentially the same phrase, differing only in an explicit 1cs suffix, refers to Yahweh's anger in v. 14, so that is likely to be the case in v. 12 too. There is, however, textual uncertainty in the sequence חָרֹון* (v. 12), חָזֹון* (v. 13) and חֲרֹונִי* (v. 14), which looks suspicious and is missing from LXX. See Allen (WBC 1994). Note: (f) This assignment makes two assumptions:1) MT is correct, though several Hebrew mss, supported by LXX and Tg, read חֶרֶב* 'sword' for חָרֹון* 'burning [anger]' and2) the following genitive הַיֹּונָה* should be understood as 'the oppressor'.A good case can be made for accepting an emendation based on LXX if חָרֹון* was read by dittography from the colon that follows. Most translations and commentaries do so.If MT is retained, the next word הַיֹּונָה *is generally understood as 'oppressor(s)' though it may also be an abstract noun 'oppression' (WBC). Note: (g) The meaning of v. 10, especially the second half is very uncertain. See, for example, Tate (WBC 1990). KTBH shares the view of HBK that, 'It would be of little practical use to list the many ways in which the text has been handled. No two translations agree completely, and all (including even NIV) have textual footnotes. Whatever course a translator takes, a note should indicate that the Hebrew makes little sense'. Version: 0 Date: 2007-12-27 10:54:21 cjs Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org. \2^KKa^burning [of anger] (חֳרִי)burning [of anger] (חֳרִי)Strong's number: 02750 Part of p]OOS]burning [of anger] (חָרוֹן)burning [of anger] (חָרוֹן)Strong's number: 02740 Part of speech: ncm Frequency: 41 Cognate(s): חרה Abstract for Busy Translators: 1. All but one instance of the word refers to the burning of anger, Meaning 1. 2. When the word refers to ‘anger’, there is a further distinction in meaning between God being angry with someone, Meaning 1a, and someone being angry with someone else, Meaning 1b. 3. In Psa 58:10, the meaning is very uncertain, Meaning 2. Notes for Translators: God’s anger is always righteous. It is directed against a person or people who are wrong. It may be translated by the same terms as  C~qdWJ=0# zm`SF9,vi\OB5( Y]" X]N1 W]E V]" U] T]$ S]$ R]" Q]  P] O] N] M]3- L]1% K] J]& I]% H] G] F] E] D] C]U B]N1 A]E @] ?] >]  =] <] ;] :] 9]  8]  7] 6]  5]  4] 3] 2]  1]$ 0]$ /]" .]  -] ,] +] *] )] (]3- ']1% &] %]& $]% #] "] !] ] ] ]X ]U ]N1 ]E ] ] ]  ]  C~qdWJ=0# zm`SF9,vi\OB5( _  _ ! _  _  _  _  _  _  _  _ _  _  _ _  _ _  _ _ _ _ _ _p _! _ _ _ _p _! _ _ ~_* }_* |_* {_* z_* y^ " x^ w^ v^ " u^  t^ s^ r^ " q^  p^ o^ n^ m^ l^ k^ j]: i]& h]& g]  f]  e]  d] c] b] a]X `]X _]N1 ^] ]] \]U []N1 Z]$speech: ncm Frequency: 6 Cognate(s): חרה Abstract for Busy Translators: 1. All instances of the word refer to the burning of anger. 2. There is a distinction in meaning between God being angry with someone, Meaning 1a, and someone being angry with someone else, Meaning 1b. Notes for Translators: God’s anger is always righteous. It is directed against a person or people who are wrong. It may be translated by the same terms as human anger, unless those terms can only mean sinful anger. Hebraists' Comments: For discussion of 'burning' as the probable original sense of the root, see the discussion of the cognate verb חרה*.Unlike the verb and the cognate noun חָרֹון*, only one construction is found in HB, that in which אַף* 'anger' is explicit, someone's חְָרִי אַף*. Six instances, however, provide inadequate evidence that the alternative, without אַף*, cannot occur. Comparison of Meanings and Uses: 1 Focus: response; response: anger a Experiencer: God b Experiencer: human Domain and Frame Notes: See other words for anger Level 2: 1 Meaning: The emotion of anger Frame for Meaning: Anger Grammar Notes: In each instance, חְָרִי* is used in the construct with אַף* as the genitive. Participant Roles for Meaning: Experiencer: God or humanTarget: human Level 3: a Context: Of God, the emotion of anger Intrinsic Domains for Meaning:c Apostasy and Judgement Participant Roles for Meaning:c Experiencer = implicit: GodTarget = implicit: Israel or Judah Key Reference: _reference_start_Lamentations 2:3_reference_end_ Key Verse: KTBH - In |bburning |b*anger, he has cut off every horn of Israel Evaluation of Translations: Some translations take the construct pair חְָרִי אַף* as an intensifying construction and use an adjective 'fierce anger' (NIV, RSV, NRS, REB), 'burning anger' (NJB) or 'blazing anger' (NJPS). The imagery of the Hebrew idiom 'burning anger' works well in English and may be followed in other languages if they use similar imagery. TEV combines the two words into one 'fury' and this may also be followed. _reference_start_Deuteronomy 29:23_reference_end_ _reference_start_Lamentations 2:3_reference_end_ Keyword: Similar Collocating Term: אַף Gloss: anger References: _reference_start_Deuteronomy 29:23_reference_end_ _reference_start_Lamentations 2:3_reference_end_ Level 3: b Context: Of humans, the emotion of anger Intrinsic Domains for Meaning:c Various, including Unbelief, Warfare Participant Roles for Meaning:c Experiencer = genitive or implicit: humanTarget = implicit: human = individual or nation Key Reference: _reference_start_Isaiah 7:4_reference_end_ Key Verse: KTBH - ... because of the |bburning |b*anger of Rezin and Aram and the son of Remaliah Evaluation of Translations: Some translations take the construct pair חְָרִי אַף* as an intensifying construction and use an adjective 'fierce anger' (NIV, RSV, NRS, NJB) or 'blazing anger' (REB). The imagery of the Hebrew idiom 'burning anger' works well in English and may be followed in other languages if they use similar imagery. Other translations combine the two words into one eg anger (TEV) or raging (NJPS), and this may also be followed. _reference_start_Exodus 11:8_reference_end_ _reference_start_1 Samuel 20:34_reference_end_ _reference_start_2 Chronicles 25:10_reference_end_ _reference_start_Isaiah 7:4_reference_end_ Keyword: Similar Collocating Term: אַף Gloss: anger References: _reference_start_Exodus 11:8_reference_end_ _reference_start_1 Samuel 20:34_reference_end_ _reference_start_2 Chronicles 25:10_reference_end_ _reference_start_Isaiah 7:4_reference_end_ Keyword: Similar Collocating Term: עצב Gloss: to grieve References: _reference_start_1 Samuel 20:34_reference_end_ Version: 0 Date: 2007-12-27 10:54:56 cjs Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org.ry with someone else, Meanings 1b, 2b. Notes for Translators: God’s anger is always righteous. It is directed against a person or people who are wrong. It may be translated by the same terms as human anger, unless those terms can only mean sinful anger. Hebraists' Comments: 1. The two instances of the Piel both collocate closely with the Hiphil. Either they describe the same sequence of events (1Sa 1:6-7) or they connect two similar events (a cause and its effect; Deu 32:21). Both stems signal a causative meaning. The distinction is stylistic, not semantic (TDOT: 'the very rare piel appears to represent a stylistically motivated variant to a nearby hiphil').2. The cognate noun (see כַּעַס) collocates with the verb, either in a simple cognate accusative construction (1Sa 1:6) or in a more complex relative construction eg בְּכַעְסוֹ אֲשֶׁר הִכְעִיס אֶת־יְהוָה ‘because of the provocation with which he provoked Yahweh’ (1Ki 15:30 cf 1Ki 21:22, 2Ki 23:26).3. The majority of instances of this root are spelled with ס, but in the book of Job, it is spelled consistently with שׂ. There appears to be no difference in meaning, so KTBH treats the two forms in the same entry as alternative spellings. TDOT and NIDOTTE suggest that the spelling with שׂ may indicate a relationship to an Arabic cognate. Comparison of Meanings and Uses: 1 Stem: Qal; agent: none; experiencer: subject; target: human; focus: response a Experiencer: God; response: anger; target: human b Experiencer: human; response: anger; target: human c Experiencer: human; response: frustration; target: futility 2 Stem: Piel or Hiphil; agent: subject; experiencer: object; focus: provocation a Experiencer: God; response: anger b Experiencer: human; response: anger c Experiencer: human; response: fear Domain and Frame Notes: With a few exceptions the meanings of כעס all relate to the same frame, labelled simply ‘anger’ in which the elements are: the anger event itself an experiencer of the anger an event which is the stimulus for the anger an agent who instigates that event and may be described as the agent which causes the anger a target of the anger who is normally the same as the agent consequence event(s) of the anger having an impact on the target Meaning 1 points to the anger event itself, while for Meaning 2 the focus is the event which is the stimulus for the anger.Subsequent research might show that it would be better to deal with two sub-frames, divine anger and human anger, which would relate to different domains in different ways. Alternatively, since, at least some of the time, the anger of a man of God is expected to match that of God, the sub-frames might be righteous and unrighteous anger.Perhaps because anger is such a common human experience, the anger frame is evoked in many contexts so that the frame is understood against a background of many domains. Thus there are no core domains, only non-core. For example: Wickedness: God's anger towards the target/agent is a response to the sin of the agent Idolatry: God's anger is provoked by idolatry Injustice: God's anger towards the target/agent is a response to the sin of the agent Unbelief: God's anger towards the target/agent is a response to the unbelief of Israel in the wilderness Prophecy: a prophet provoked the anger of an ungodly king Judgement: God's anger against the target was expected to have punishment as a consequence Level 2: 1 Meaning: To experience a negative emotional response to an event or object Frame for Meaning: Stimulus - Negative Response Verb Stem: Qal Participant Roles for Meaning: Experiencer: God or humanTarget: human = individual(s) or the nation of Israel, or none Level 3: a Context: Of God, to experience the emotion of anger Frame for Meaning:c Anger Intrinsic Domains for Meaning:c Apostasy and Judgement Participant Roles for Meaning:c Experiencer = subject: God Target = implicit: human = the nation of Israel Key Reference: _reference_start_Ezekiel 16:42_reference_end_ Key Verse: KTBH - I will make my anger against you cease, my jealousy will turn aside from you, I will be calm and |bI will be angry|b* no more Evaluation of Translations: Most translations have the simple 'I will [not] be angry', from which there seems no reason to depart. 'I shall ... no longer be provoked to anger' (REB) implies a passive causative rather than the simple stative and seems unnecessarily complex. _reference_start_Ezekiel 16:42_reference_end_ \paradigl 1 Keyword: Similar Collocating Term: חֵמָה Gloss: anger References: _reference_start_Ezekiel 16:42_reference_end_ Keyword: Similar Collocating Term: קנא Gloss: to be jealous References: _reference_start_Ezekiel 16:42_reference_end_ Keyword: Opposite Collocating Term: שׁקט Gloss: to maintain a quiet attitude References: _reference_start_Ezekiel 16:42_reference_end_ Level 3: b Context: Of humans, to experience the emotion of anger Frame for Meaning:c Anger Intrinsic Domains for Meaning:c Wickedness, Criticism, Godliness Participant Roles for Meaning:c Experiencer = subject: human Target = אֶל or implicit: human = individual(s) Key Reference: _reference_start_2 Chronicles 16:10_reference_end_ Key Verse: KTBH - Asa |bwas angry |b*with the seer and he put him in prison because of his rage with him over this ... Evaluation of Translations: Most have 'be angry' or the equivalent, 'be vexed' (REB, NJPS) or 'be enraged' (NJB). _reference_start_2 Chronicles 16:10_reference_end_ _reference_start_Nehemiah 3:33_reference_end_ _reference_start_Psalms 112:10_reference_end_ _reference_start_Ecclesiastes 7:9_reference_end_ \paradigl 1 Keyword: Cognate Collocating Term: כַּעַס Gloss: anger References: _reference_start_Ecclesiastes 7:9_reference_end_ Keyword: Similar Collocating Term: זַעַף Gloss: anger References: _reference_start_2 Chronicles 16:10_reference_end_ Keyword: Similar Collocating Term: חרה Gloss: to be angry References: _reference_start_Nehemiah 3:33_reference_end_ Keyword: Similar Collocating Term: חרק שִׁנַּיִם Gloss: to gnash teetha* References: _reference_start_Psalms 112:10_reference_end_ Keyword: Similar Collocating Term: גְּבָה רוּחַ Gloss: pride References: _reference_start_Ecclesiastes 7:9_reference_end_ Keyword: Opposite Collocating Term: אֶרֶךְ רוּחַ Gloss: patience References: _reference_start_Ecclesiastes 7:9_reference_end_ Level 3: c Context: Of humans, to experience a state of frustration in response to the futility of life and work Frame for Meaning:c Frustration Intrinsic Domains for Meaning:c Work; Futility Participant Roles for Meaning:c Experiencer = implicit: human Target = implicit: the frustration of meaningless work and futility Key Reference: _reference_start_Ecclesiastes 5:16_reference_end_ Key Verse: KTBH - all his days he will eat in darkness, |bhe will be |b*greatly |bfrustrated|b*, with sickness and anger Evaluation of Translations: All translations examined read the noun rather than the verb.b* If the verb is read, then it should be rendered in such a way as to express frustration. _reference_start_Ecclesiastes 5:16_reference_end_ Keyword: Similar Collocating Term: קֶצֶף Gloss: anger References: _reference_start_Ecclesiastes 5:16_reference_end_ Level 2: 2 Meaning: To cause someone to experience a negative emotional response Frame for Meaning: Stimulus - Negative Response Verb Stem: Piel and Hiphil Participant Roles for Meaning: Agent: God or human Experiencer: God or human Level 3: a Context: To cause God to experience the emotion of anger Frame for Meaning:c Anger Intrinsic Domains for Meaning:c Apostasy and Judgement Participant Roles for Meaning:c Agent: = subject: human Experiencer = object: God Key Reference: _reference_start_Deuteronomy 32:16_reference_end_ Key Verse: KTBH - They made him jealous with foreign gods and |bthey provoked |b*him |bto anger|b* by abominations Evaluation of Translations: Most translations express causation, eg 'to anger' (NIV, NJB), 'to make angry' (CEV), 'to provoke' (NRS), 'to provoke to anger' (RSV, REB), 'to vex' (NJPS). TEV 'the evil they did made him angry’ removes the element of personal provocation by treating the stimulus event as the cause, rather than the agents of that event, and should not be followed. _reference_start_Deuteronomy 4:25_reference_end_ _reference_start_Deuteronomy 9:18_reference_end_ _reference_start_Deuteronomy 31:29_reference_end_ _reference_start_Deuteronomy 32:16_reference_end_ _reference_start_Deuteronomy 32:21_reference_end_ _reference_start_Judges 2:12_reference_end_ _reference_start_1 Kings 14:9_reference_end_ _reference_start_1 Kings 14:15_reference_end_ _reference_start_1 Kings 15:30_reference_end_ _reference_start_1 Kings 16:2_reference_end_ _reference_start_1 Kings 16:7_reference_end_ _reference_start_1 Kings 16:13_reference_end_ _reference_start_1 Kings 16:26_reference_end_ _reference_start_1 Kings 16:33_reference_end_ _reference_start_1 Kings 21:22_reference_end_ _reference_start_1 Kings 22:54_reference_end_ _reference_start_2 Kings 17:11_reference_end_ _reference_start_2 Kings 17:17_reference_end_ _reference_start_2 Kings 21:6_reference_end_ _reference_start_2 Kings 21:15_reference_end_ _reference_start_2 Kings 22:17_reference_end_ _reference_start_2 Kings 23:19_reference_end_ _reference_start_2 Kings 23:26_reference_end_ _reference_start_2 Chronicles 28:25_reference_end_ _reference_start_2 Chronicles 33:6_reference_end_ _reference_start_2 Chronicles 34:25_reference_end_ _reference_start_Nehemiah 3:37_reference_end_ _reference_start_Psalms 78:58_reference_end_ _reference_start_Psalms 106:29_reference_end_ _reference_start_Isaiah 65:3_reference_end_ _reference_start_Jeremiah 7:18_reference_end_ _reference_start_Jeremiah 7:19_reference_end_ _reference_start_Jeremiah 8:19_reference_end_ _reference_start_Jeremiah 11:17_reference_end_ _reference_start_Jeremiah 25:6_reference_end_ _reference_start_Jeremiah 25:7_reference_end_ _reference_start_Jeremiah 25:7_reference_end_ _reference_start_Jeremiah 32:29_reference_end_ _reference_start_Jeremiah 32:30_reference_end_ _reference_start_Jeremiah 32:32_reference_end_ _reference_start_Jeremiah 44:3_reference_end_ _reference_start_Jeremiah 44:8_reference_end_ _reference_start_Ezekiel 8:17_reference_end_ _reference_start_Ezekiel 16:26_reference_end_ _reference_start_Hosea 12:15_reference_end_ \paradigl 1 Keyword: Cognate Collocating Term: כַּעַס Gloss: anger References: _reference_start_1 Kings 15:30_reference_end_ _reference_start_1 Kings 21:22_reference_end_ _reference_start_2 Kings 23:26_reference_end_ Keyword: Similar Collocating Term: חרה Gloss: to be angry References: _reference_start_2 Kings 23:26_reference_end_ Keyword: Similar Collocating Term: חָרֹון Gloss: anger References: _reference_start_2 Kings 23:26_reference_end_ Keyword: Similar Collocating Term: אַף Gloss: anger References: _reference_start_2 Kings 23:26_reference_end_ Keyword: Similar Collocating Term: עבר Gloss: to become angry References: _reference_start_Psalms 78:58_reference_end_ Keyword: Similar Collocating Term: קנא Gloss: to make jealous References: _reference_start_Deuteronomy 32:16_reference_end_ _reference_start_Deuteronomy 32:21_reference_end_ _reference_start_Psalms 78:58_reference_end_ Keyword: Similar Collocating Term: מאס Gloss: to reject References: _reference_start_Psalms 78:58_reference_end_ Keyword: Similar_Term Collocating Term: עזב Gloss: to forsake References: _reference_start_Judges 2:12_reference_end_ _reference_start_2 Kings 22:17_reference_end_ _reference_start_2 Chronicles 34:25_reference_end_ Level 3: b Context: To cause humans to experience the emotion of anger Frame for Meaning:c Anger Intrinsic Domains for Meaning:c Judgement, Rivalry, Childlessness Participant Roles for Meaning:c Agent = subject: God or human Experiencer = object: human Key Reference: _reference_start_Deuteronomy 32:21_reference_end_ Key Verse: KTBH - ... I will make them jealous by a non-people; I will |bmake |b*them |bangry |b*by a foolish nation Evaluation of Translations: Some (NIV, TEV, CEV) make the anger explicit. Others (RSV, NRS, REB) translate as 'provoke' without specifying the nature of the response provoked, but anger would be readily understood. _reference_start_Deuteronomy 32:21_reference_end_ _reference_start_1 Samuel 1:6_reference_end_ _reference_start_1 Samuel 1:7_reference_end_ _reference_start_Nehemiah 3:37_reference_end_ \paradigl 1 Keyword: Similar Collocating Term: קנא Gloss: to make jealous References: _reference_start_Deuteronomy 32:21_reference_end_ Keyword: Similar Collocating Term: רעם Gloss: (?) to irritate, humiliate References: _reference_start_1 Samuel 1:6_reference_end_ Level 3: c Context: To cause humans to experience fear or horror Frame for Meaning:c Fearf* Intrinsic Domains for Meaning:c Judgement Participant Roles for Meaning:c Agent = subject: God Experiencer = object: human Key Reference: _reference_start_Ezekiel 32:9_reference_end_ Key Verse: KTBH - |bI will disturb |b*the heart of many nations when I bring about your destruction among the nations in lands which you have not known Evaluation of Translations: It is important to distinguish the response from anger. Most translations appropriately use a generic translation, eg 'I will trouble' (NIV, RSV, NRS, TEV) or 'I shall cause disquiet' (REB). CEV's 'nations will be shocked' may capture more precisely the nature of the response which God provokes, as indicated in v. 10. However, its use of a passive, perhaps for stylistic reasons, reduces the force of nineteen first person singular verbs in twelve verses in the Hebrew, which emphasise what Yahweh will do. NJPS's use of ‘vex’ (its normal equivalent for כעס*) implies anger, which is out of place here. Similarly, 'grieve' (NJB) slightly misreads the response. _reference_start_Ezekiel 32:9_reference_end_ \paradigl 1 Keyword: Similar Collocating Term: שׁמם Gloss: to appal References: _reference_start_Ezekiel 32:9_reference_end_ \paradigl 2 Keyword: Similar Collocating Term: שׂער Gloss: to shudder References: _reference_start_Ezekiel 32:9_reference_end_ \paradigl 3 Keyword: Similar Collocating Term: שַׂעַר Gloss: shuddering References: _reference_start_Ezekiel 32:9_reference_end_ \paradigl 4 Keyword: Similar Collocating Term: חרד Gloss: to tremble References: _reference_start_Ezekiel 32:9_reference_end_ Note: (a) Presumably an expression of anger or other emotion. Note: (b) The ancient versions (LXX, Syr, Tg, Vul) appear to have read the noun וְכַעַס for the verb וְכָעַס of the MT, from which it differs by only one vowel. If this is accepted and the בְּ prefixed to חֹשֶׁךְ is taken to govern the whole string of coordinated nouns, the verse reads more smoothly, ‘All his days he eats in darkness, with great frustration, affliction and anger.’ (NIV). This emendation is widely adopted by modern versions and is accepted by WBC, NICOT, AB and HBK. If this emendation of the verb to the noun is adopted, this instance should be seen as an example of כַּעַס, Meaning 1d, and rendered ‘frustration’. A second emendation, which should also be considered, is adopted by NIV, above, and most others, based on the ancient versions (LXX, Syr, Tg, Vul) which appear to have read וְחָלְיוֹ as וָחְָלִי without the pronominal suffix. The ו-suffix may have arisen by dittography. Note: (c) Probably. Following Williamson (WBC, 1985:214, 217) and some modern translations (eg NLT, ESV, RSV), KTBH assigns Nehemiah 3:37 to Meaning 2a and recommends making God the explicit Experiencer whose anger is being provoked. Fensham (NICOT), TDOT and other modern translations (eg NIV, NRS, NJPS, NJB, NAB and REB), however, interpret the preposition in ְנֶגֶד הַבּוֹנִים 'in front of the builders' as signalling the people provoked rather than the witnesses of the provocation. Although TDOT favours God as the implied Experiencer for each of five other instances listed below, it rejects this interpretation in the case of Nehemiah 3:37. Evidence for this view includes Sanballat's ridicule of the Jews (v. 33), which may point to the 'builders' as the Experiencers (Use 2b). Arguments against this position include: 1. It would involve a unique use of this preposition and Williamson (WBC, 1985:214) sees this as 'an insuperable difficulty'. 2. In five other instances God is the implied, but unexpressed, Experiencer of the Hiphil of כעס (1Ki 21:22; 2Ki 21:6; 2Ki 23:19; Hos 12:15; Psa 106:29). 3. Nehemiah's request earlier in the same verse 'do not cover up their guilt or blot out their sins from before you' may imply some offence against God, which would provoke His anger. A third possibility (not followed in any translation) may be indicated by the context of the previous few verses (33-36), where it was Nehemiah and his associates who were being provoked (in the hearing of the builders). Note: (d) In the relationship between Hannah and Peninnah, Hannah’s emotional response would have been complex and mixed, but is likely to have included both anger and grief. Even without Penninnah’s malicious provocation, Hannah would have been experiencing grief, shame and jealousy, simply because of her childlessness and the constant presence of a rival wife. That provocation must have introduced something new to the mixture of negative emotions. As a response to provocation, probably in the form of taunting as several versions suggest, it may best be described as anger. Note: (e) Possibly. Note: (f) Ezk 32:9 the 'anger' frame is precluded by the context. The parallel use of the verbs in v. 10 (see Similar Terms) signals a different meaning such as 'to disturb' (HALOT) or 'to agitate'. TDOT similarly distinguishes Ezk 32:9 by noting its association with trembling. BDB, however, does not make this distinction and gives the gloss 'vex, provoke to anger'. Version: 0 Date: 2007-12-27 11:09:47 cjs Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org. uu:_SS__to be angry, provoke anger (כעס)to be angry, provoke anger (כעס)\level1 1 Strong's number: 03707 Variant Spelling(s): כעשׂ Part of speech: v Frequency: 55 Cognate(s): כַּעַס Abstract for Busy Translators: 1. The key meaning distinction is between someone experiencing anger, frustration etc, Meaning 1, and someone causing someone to else experience the anger etc, Meaning 2. 2. Another distinction which requires care in translation is the nature of the response. The verb has a wider range of meaning than some other anger terms. It is used for responses which include frustration, Meaning 1c, and fear, Meaning 2c, as well as anger, Meanings 1a and 1b. Sometimes it may be wise to translate with a neutral word like the English ‘to provoke’. 3. There is a further distinction in meaning between God being angry with someone, Meanings 1a, 2a, and someone being ang C~qdWJ=0# zm`SF9,vi\OB5( _` ^` ]`  \` [`  Z`U Y`U X`U W`  V`U U_ T_ S_ R_ Q_ P_ O_  N_  M_% L_  K_  J_  I_  H_" G_  F_ E_N: D_N: C_  B_  A_N: @_  ?_  >_  =_  <_  ;_  :_  9_ 8_ 7_, 6_, 5_ 4_  3_  2_ 1_ 0_ /_  ._ -_ ,_ +_A *_j )_N: (_% '_" &_! %_ $_  #_  "_  !_  _  _  _  _ 6rovocation to anger (כַּעַס)Strong's number: 03708 \level1 1 Variant Spelling(s): כַּעַשׂ Part of speech: n Frequency: 25 Cognate(s): כעס Abstract for Busy Translators: 1. The key meaning distinction is between the anger, grief etc which someone experiences, Meaning 1, and what causes someone to experience the anger etc, Meaning 2. 2. Another distinction which requires care in translation is the nature of the response. The noun has a wider range of meaning than some other anger terms. It is used for responses which include grief, Meaning 1c, and frustration, Meaning 1d, as well as anger, Meanings 1a and 1b. Sometimes it may be wise to translate with a neutral word like the English ‘provocation’. 3. There is a further distinction in meaning between God being angry with someone, Meanings 1a, 2a, and someone being angry with someone else, Meanings 1b, 2b. Notes for Translators: God’s anger is always righteous. It is directed against a person or people who are wrong. It may be translated by the same terms as human anger, unless those terms can only mean sinful anger. Hebraists' Comments: 1. The cognate verb (see כעס*) collocates with the noun, either in a simple cognate accusative construction (1Sa 1:6) or in a more complex relative construction e.g.בְּכַעְסוֹ אֲשֶׁר הִכְעִיס אֶת־יְהוָה* ‘with the provocation with which he provoked Yahweh’ (1Ki 15:30 cf. 1Ki 21:22, 2Ki 23:26).2. The majority of instances of the root are spelled with a ס*, but in the book of Job, the spelling is consistently with שׂ*. There appears to be no difference in meaning, so KTBH treats the two forms in the same entry as alternative spellings. It is suggested that the spelling with שׂ* may indicate a relationship to an Arabic cognate (TDOT, NIDOTTE) or that it is a dialectal variation (BDB, TWOT).3. Unlike the cognate verb (see כעס*), the participants are, for the most part, not closely linked syntactically to the head word. Some are vague, especially in the Wisdom literature (see below), but generally they can be recovered from the wider context and a knowledge of the frame involved. Comparison of Meanings and Uses: 1 Focus: response a Experiencer: God; response: anger; target: human b Experiencer: human; response: anger; target: human c Experiencer: human; response: grief; target: none d Experiencer: human; response: frustration; target: futility 2 Focus: provocation a Experiencer: God; response: anger b Experiencer: human; response: anger Domain and Frame Notes: For notes on the ‘anger’ frame, see this section in the entry for the cognate verb.The Contextual Uses of Meaning 1 are closely related since anger, grief and frustration are closely related experiences. The Specific Frame listed is, in each case, a sub-frame of the more generic 'stimulus - negative response' frame. The main points of distinction between the sub-frames concern the nature of the emotions and the reactions they cause, but they may also be distinguished on the basis of differences in participant roles. The ‘grief’ frame is distinguished from the ‘anger’ frame by the absence of a target. Otherwise, the corresponding elements are present: the grief event itself an experiencer of the grief an event which is the stimulus for the grief an agent who may instigate that event a consequence event - weeping etc The ‘frustration’ frame is distinguished from the ‘anger’ frame by an impersonal instrument causing the frustration and absence of an agent the frustration event itself an experiencer of the frustration an event which is the target for the frustration - in Ecclesiastes it is the futility of life and toil. In the causing event, this is an abstract instrument rather than a personal agent. Additional Information: The Wisdom writings sometimes leave participants unexpressed and very general (eg the target in Ecc 7:9 and the experiencer in Pro 27:3). It is the knowledge of the 'anger' frame that enables the reader to recognise that there must be an experiencer and a target in each case. Level 2: 1 Meaning: Negative emotional response to an event or object Frame for Meaning: Stimulus - Negative Response Participant Roles for Meaning: Experiencer: God or humans Target: human = individual(s) or the nation of Israel, or none Level 3: a Context: Of God, the emotion of anger Frame for Meaning:c Anger Intrinsic Domains for Meaning:c Apostasy and Judgement, Repentance and Restoration Participant Roles for Meaning:c Experiencer = genitive: God Target = עִם: human = an individual or the nation of Israel Key Reference: _reference_start_Psalms 85:5_reference_end_ Key Verse: KTBH - Restore us, O God of our salvation, and annul your |banger |b*with us Evaluation of Translations: Most translation use a weaker synonym of ‘anger’: 'displeasure' (NIV, REB, TEV, NJPS) or 'indignation' (RSV, NRS, NJB). It seems undesirable to weaken the force expressed by ‘anger’ in this way. CEV 'don't be angry’ transforms the noun to a verb, but retains a strong word from the 'anger' group which gives adequate expression to the strength of the response. _reference_start_Job 10:17_reference_end_ _reference_start_Psalms 85:5_reference_end_ Keyword: Similar Collocating Term: אנף Gloss: to be angry References: _reference_start_Psalms 85:5_reference_end_ Keyword: Similar Collocating Term: אַף Gloss: anger References: _reference_start_Psalms 85:5_reference_end_ Level 3: b Context: Of humans, the emotion of anger Frame for Meaning:c Anger Intrinsic Domains for Meaning:c Folly, Honour, Marriage Participant Roles for Meaning:c Experiencer = genitive or implicit: human Target: = implicit: human Key Reference: _reference_start_Proverbs 12:16_reference_end_ Key Verse: KTBH - A fool makes his |banger |b*known at the time, but a prudent person conceals dishonour Evaluation of Translations: Most translations use 'anger' (NRS, NJB) or a similar noun, 'annoyance' (NIV, REB) or 'vexation' (RSV, NJPS). _reference_start_Job 5:2_reference_end_ _reference_start_Proverbs 12:16_reference_end_ _reference_start_Proverbs 21:19_reference_end_ _reference_start_Ecclesiastes 7:9_reference_end_ Keyword: Similar Collocating Term: קִנְאָה Gloss: envy References: _reference_start_Job 5:2_reference_end_ Keyword: Similar Collocating Term: מָדֹון Gloss: strife, quarrelling, scolding References: _reference_start_Proverbs 21:19_reference_end_ Keyword: Similar Collocating Term: קָלֹון Gloss: dishonour References: _reference_start_Proverbs 12:16_reference_end_ Level 3: c Context: Of humans, the emotion of sorrow in response to loss Frame for Meaning:c Grief Intrinsic Domains for Meaning:c Barrenness, Suffering, Mourning Participant Roles for Meaning:c Experiencer = genitive or implicit: human Target: none Key Reference: _reference_start_Psalms 6:8_reference_end_ Key Verse: KTBH - My eye has wasted away from |bgrief|b*; it has grown weak because of all my foes Evaluation of Translations: Most translate by 'grief' (RSV, NRS, REB) or 'sorrow' (NIV, CEV). This seems appropriate because the effect on the psalmist's eyes is likely to be from weeping. The use of 'vexation' by NJPS and NJB points to anger rather than grief, so should be avoided. TEV ‘I can hardly see; my eyes are so swollen from the weeping caused by my enemies’ makes the weeping explicit and points unambiguously to grief, though it does not have a direct equivalent to כַּעַס*. _reference_start_1 Samuel 1:16_reference_end_ _reference_start_Job 6:2_reference_end_ _reference_start_Job 17:7_reference_end_ _reference_start_Psalms 6:8_reference_end_ _reference_start_Psalms 31:10_reference_end_ _reference_start_Ecclesiastes 7:3_reference_end_ Keyword: Similar_Term Collocating Term: שִׂיחַ Gloss: complaint References: _reference_start_1 Samuel 1:16_reference_end_ Keyword: Similar_Term Collocating Term: הַוָּה Gloss: disaster References: _reference_start_Job 6:2_reference_end_ Keyword: Similar_Term Collocating Term: יָגֹון Gloss: agony, grief References: _reference_start_Psalms 31:10_reference_end_ Keyword: Similar_Term Collocating Term: אָבֶל Gloss: mourning References: _reference_start_Ecclesiastes 7:3_reference_end_ Keyword: Opposite_Term Collocating Term: מִשְׁתֶּה Gloss: feasting References: _reference_start_Ecclesiastes 7:3_reference_end_ Keyword: Opposite_Term Collocating Term: שְׂחֹוק Gloss: laughter References: _reference_start_Ecclesiastes 7:3_reference_end_ Level 3: d Context: Of humans, a state of frustration in response to the futility of life and worka* Frame for Meaning:c Frustration Intrinsic Domains for Meaning:c Work, Futility Participant Roles for Meaning:c Experiencer = implicit: human Target = implicit: the frustration of meaningless work and futility Key Reference: _reference_start_Ecclesiastes 1:18_reference_end_ Key Verse: KTBH - Much wisdom leads to much |bfrustration|b*; whoever increases in knowledge will increase in pain Evaluation of Translations: The translations do not communicate well the sense of Qoheleth's frustration with life. The nearest is 'vexation' (RSV, NRS, REB, NJPS), but even this covers a wide semantic range and permits other senses. Others, such as 'sorrow' (NIV), 'worries' (TEV) and 'grief' (NJB) seem further from the point. _reference_start_Ecclesiastes 1:18_reference_end_ _reference_start_Ecclesiastes 2:23_reference_end_ _reference_start_Ecclesiastes 11:10_reference_end_ Keyword: Similar Collocating Term: מַכְאֹוב Gloss: pain References: _reference_start_Ecclesiastes 1:18_reference_end_ _reference_start_Ecclesiastes 2:23_reference_end_ Keyword: Similar Collocating Term: עִנְיָן Gloss: occupation, task References: _reference_start_Ecclesiastes 2:23_reference_end_ Keyword: Similar Collocating Term: עָמָל Gloss: care, anxiety References: _reference_start_Ecclesiastes 2:23_reference_end_ Keyword: Similar Collocating Term: עמל Gloss: to exert oneself References: _reference_start_Ecclesiastes 2:23_reference_end_ Keyword: Similar Collocating Term: רַעְיֹון Gloss: striving References: _reference_start_Ecclesiastes 2:23_reference_end_ Keyword: Similar Collocating Term: רָעָה Gloss: trouble References: _reference_start_Ecclesiastes 11:10_reference_end_ Keyword: Opposite Collocating Term: שׁכב Gloss: to rest References: _reference_start_Ecclesiastes 2:23_reference_end_ Level 2: 2 Meaning: An event or object which causes a negative emotional response Frame for Meaning: Stimulus - Negative Response Participant Roles for Meaning: Agent: Human Experiencer: God or human Level 3: a Context: An event or object which causes God to experience the emotion of anger Frame for Meaning:c Anger Intrinsic Domains for Meaning:c Apostasy and Judgement Participant Roles for Meaning:c Agent = genitive or implicit: human Experiencer = implicit: God Key Reference: _reference_start_Deuteronomy 32:19_reference_end_ Key Verse: KTBH - Yahweh saw this and he rejected them because of the |bprovocation |b*of his sons and his daughters Evaluation of Translations: RSV 'because of the provocation of his sons' retains a noun 'provocation' which in English generally implies provocation to anger and thus is satisfactory. A subjective genitive ‘provocation by his sons' would be readily understood. Other translations transform the noun into a verb and thereby convey the same meaning eg 'because he was angered by his sons and daughters' (NIV). Several translations reconstruct the verse to achieve a smoother reading eg NRS, 'The LORD saw it, and was jealous; he spurned his sons and daughters.' It is not clear, however, whether this is a decision to follow the emendation proposed in BHS or whether it is a matter of translation technique. _reference_start_Deuteronomy 32:19_reference_end_ _reference_start_Deuteronomy 32:27_reference_end_ _reference_start_1 Kings 15:30_reference_end_ _reference_start_1 Kings 21:22_reference_end_ _reference_start_2 Kings 23:26_reference_end_ _reference_start_Ezekiel 20:28_reference_end_ Keyword: Cognate Collocating Term: כעס Gloss: to anger References: _reference_start_1 Kings 15:30_reference_end_ _reference_start_1 Kings 21:22_reference_end_ _reference_start_2 Kings 23:26_reference_end_ Keyword: Similar Collocating Term: נאץ Gloss: to spurn References: _reference_start_Deuteronomy 32:19_reference_end_ Level 3: b Context: An event or object which causes humans to experience the emotion of anger Frame for Meaning:c Anger Intrinsic Domains for Meaning:c Barrenness; Suffering, Wickedness, Family, Folly Participant Roles for Meaning:c Agent = genitive or implicit: human Experiencer = לְ or implicit: human Key Reference: _reference_start_Proverbs 27:3_reference_end_ Key Verse: KTBH - A stone is heavy and sand is a burden, but |bthe anger provoked by|b* a fool is heavier than both Evaluation of Translations: Most translations imply that the fool is the agent of the כַּעַס rather than the experiencer.d* For example, NIV 'but provocation by a fool is heavier than both' makes this explicit. RSV 'but a fool's provocation is heavier than both' is less clear but still points in the same direction. Both CEV and TEV make the causative nuance explicit by translating freely. NJB 'a grudge borne by a fool' makes the fool the experiencer and should probably not be followed. _reference_start_1 Samuel 1:6_reference_end_ _reference_start_Psalms 10:14_reference_end_ _reference_start_Proverbs 17:25_reference_end_ _reference_start_Proverbs 27:3_reference_end_ Keyword: Cognate Collocating Term: כעס Gloss: to anger References: _reference_start_1 Samuel 1:6_reference_end_ Keyword: Similar Collocating Term: רעם Gloss: to irritate, humiliate References: _reference_start_1 Samuel 1:6_reference_end_ Keyword: Similar Collocating Term: עָמָל Gloss: mischief, trouble References: _reference_start_Psalms 10:14_reference_end_ Keyword: Similar Collocating Term: מֶמֶר Gloss: bitterness References: _reference_start_Proverbs 17:25_reference_end_ Note: (a) This usage is unique to Ecclesiastes (1:18; 2:23; 11:10 and also 5:16, if the emendation of the verb to the noun is accepted - see כעס note b). Neither BDB nor HALOT distinguishes this sense, but both list these instances under the same sense as others outside Ecclesiastes which have the sense of ‘grief’. The context, however, does not permit the sense ‘anger’ and, while ‘grief’ is close, it is not quite right. The collocation with עָמָל and עִנְיָן, other key terms in Ecclesiastes, indicates a more specific sense for the word. A major, if not the major, theme of the book is the futility of life, wisdom and work; everything is meaningless (for further discussion see הֶבֶל). The English ‘frustration’ seems to express this and is proposed both as a gloss and as a frame label. The other two occurrences of כַּעַס in Ecclesiastes (7:3, 9) appear, from their contexts, to have the senses ‘grief’ and ‘anger’ respectively. Note: (b) In the phrase כַּעַס אוֹיֵב ‘the provocation of an enemy’, the 'enemy' could be either a subjective or an objective genitive. A subjective genitive would imply that the enemy was the Experiencer. However, the enemy’s misunderstanding and false claim that it was they who had defeated Israel (v. 27b) would constitute provocation to Yahweh (cf Craigie, NICOT). In this respect, the construction is similar to several instances of the Hiphil of the cognate verb כעס where Yahweh is the unexpressed Experiencer. Thus KTBH takes the Experiencer to be Yahweh and the enemy to be the Agent and assigns this instance to Use 2a. Note: (c) This is the only use of the plural. There appears to be little or no difference in meaning from the singular in the almost identical constructions in 1Ki 15:30 and 21:22. The plural may signal intensity, 'great provocation' (cf Jouon and Muraoka §136.f) or 'a repeated series of actions or a habit' (VDM). Note: (d) This understanding is also supported by commentaries (WBC, NCBC, EBC) and by TDOT. Note: (e) English translations differ in their treatment of this instance of כַּעַס*. NIV, NRS and REB translate ‘grief’ (cf KTBH Use 1c); CEV and TEV are similar. RSV, NJPS, NJB and also WBC translate ‘vexation’ (cf KTBH Use 2b). The difference appears to be whether עָמָל וְכַעַס* are seen as cause and effect ‘trouble [which causes] grief’ or as synonyms ‘mischief and provocation [which together provoke anger]’. Since the Psalm focuses on the activity of the wicked, it seems better to take both עָמָל* and כַּעַס* as describing that activity, rather than the response of the victim. KTBH thus classifies this instance as Use 2b, ‘something which provokes anger’. Version: 0 Date: 2007-12-27 11:10:58 cjs Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org. SSybOOebanger, arrogance (עֶבְרָה)anger, arrogance (עֶבְרָה)Strong's number: 05678 Part of speech: ncf Frequency: 34 Cognate(s): עבר Abstract for Busy Translators: 1. The key meaning distinction is between the majority of instances of this word which refer to anger, Meaning 1, and a small number which refer to arrogance, Meaning 2. 2. When the meaning is anger, there is a further distinction in meaning between God being angry with someone, Meaning 1a, and someone being angry with someone else, Meaning 1b. Notes for Translators: God’s anger is always righteous. It is directed against a person or people who are wrong. It may be translated by th傈aQQ}ato pass over, to be angry (עבר)to pass over, to be angry (עבר)Strong's number: 05674 Part of speech: v Frequency: 562 Cogn>`  w`anger, grief, frustration, provocation to anger (כַּעַס)anger, grief, frustration, p C~qdWJ=0# zm`SF9,vi\OB5( "a !a a a a a a a a aY' aY' aN; aN aY' aN> aN; aN a aN; ` `  `  `  ` ` `  `  ` `  `  `  `  ` `  `  `  ~`  }`  |`  {` z` y` x` w` v` u` t` s` r` q` p` o` n` m` l` k` j`  i` h` g` f` e` d`  c` b`  a` ``ate(s): מַעְבָּר, מַעְבָּרָה, עֲבוּר, עֵבֶר, עֶבְרָה, עֲבָרָה Abstract for Busy Translators: 1. This is a very common word, often meaning ‘to pass over, to pass by, to pass through‘ in a literal sense. Instances of this meaning are listed briefly without analysis as ‘Other meanings’, Meaning 4. 2. Certain instances of the term, marked by the Hebrew verb form, have a different meaning and mostly refer to anger. 3. When the meaning is anger, the key meaning distinction is between someone being angry with someone else, Meaning 1, and someone making someone else angry, Meaning 2. 2. There is a further distinction in meaning between God being angry with someone, Meaning 1a, and someone being angry with someone else, Meanings 1b, 2a. 3. Meaning 3 is distinguished in Pro 14:16, where the word refers to arrogance. Compare Meaning 2 of the cognate noun. Elsewhere it refers to anger. Notes for Translators: God’s anger is always righteous. It is directed against a person or people who are wrong. It may be translated by the same terms as human anger, unless those terms can only mean sinful anger. Hebraists' Comments: Most authorities recognise two homonyms for עבר (BDB, HALOT, TDOT, NIDOTTE, TWOT), but express some uncertainty about their relationship to one another and to the noun עֶבְרָה. BDB seems to imply an etymological link from עבר I (mostly Qal and Hiphil) 'to pass over' to עֶבְרָה '[overflowing of] anger, arrogance' to עבר II (Hithpael only) 'to be arrogant, furious'. HALOT proposes a link to an Arabic root meaning 'to be nasty' and TDOT appears to refer to the same Arabic root 'be malicious, malice, rancour, resentment'. Only the Hithpael, assumed to be from homonym II is treated here as a key term. Comparison of Meanings and Uses: 1 Stem: Hithpael; agent: none; experiencer: subject; target: human; focus: response; response: anger a Experiencer: God b Experiencer: human 2 Stem: Hithpael; agent: subject; experiencer: object; target: = agent; focus: provocation; response: anger a Agent: human; experiencer: human 3 Stem: Hithpael; agent: none; experiencer: subject; target: none; focus: attitude; attitude: arrogance a Experiencer: human 4 Stem: not Hithpael 4a Meanings: other Level 2: 1 Meaning: To experience the emotion of anger Frame for Meaning: Anger Verb Stem: Hithpael Participant Roles for Meaning: Experiencer: God or humanTarget: human Level 3: a Context: Of God, to experience the emotion of anger Intrinsic Domains for Meaning:c Apostasy and Judgement Participant Roles for Meaning:c Experiencer = subject: GodTarget = בְּ or עִם or implicit: human = Israel or an individual Key Reference: _reference_start_Psalms 78:59_reference_end_ Key Verse: KTBH - God heard and |bhe was angry |b*and he utterly rejected Israel Evaluation of Translations: Apart from TEV 'God was angry', most translations express some intensified form of anger. Thus, 'very angry' (NIV), 'full of wrath' (RSV, NRS), 'enraged' (REB, NJPS), 'furious' (CEV). These are all acceptable models, but it is hard to justify intensifying the anger, unless the Hithpael form is taken to imply, in itself, intensification. _reference_start_Deuteronomy 3:26_reference_end_ _reference_start_Psalms 78:21_reference_end_ _reference_start_Psalms 78:59_reference_end_ _reference_start_Psalms 78:62_reference_end_ _reference_start_Psalms 89:39_reference_end_ Keyword: Similar Collocating Term: אַף Gloss: anger References: _reference_start_Psalms 78:21_reference_end_ Keyword: Similar Collocating Term: מאס Gloss: to reject References: _reference_start_Psalms 78:59_reference_end_ _reference_start_Psalms 89:39_reference_end_ Keyword: Similar Collocating Term: זנח Gloss: to reject References: _reference_start_Psalms 89:39_reference_end_ Level 3: b Context: Of humans, to experience the emotion of anger Intrinsic Domains for Meaning:c Quarrel Participant Roles for Meaning:c Experiencer = substantive participle: humanTarget = implicit: human Key Reference: _reference_start_Proverbs 26:17_reference_end_ Key Verse: KTBH - Like someone who seizes a dog by the ears is a passer-by |bwho gets angry |b*over a quarrel not his own Evaluation of Translations: All the standard translations appear to assume metathesis and emend to מִתְעָרֵב* and to translate 'meddle' or the like. This is acceptable, though MT is intelligible. _reference_start_Proverbs 26:17_reference_end_ Keyword: Level 2: 2 Meaning: To cause someone to experience the emotion of anger Frame for Meaning: Anger Verb Stem: Hithpael Participant Roles for Meaning: Agent: humanExperiencer: human Meaning Comments: This is the only transitive use of the Hithpael and the context seems to require a causative sense. Level 3: a Context: To cause humans to experience the emotion of anger Intrinsic Domains for Meaning:c Kingship Participant Roles for Meaning:c Agent = subject: humanExperiencer = object: human Key Reference: _reference_start_Proverbs 20:2_reference_end_ Key Verse: KTBH - Whoever |bangers |b*him forfeits his life Evaluation of Translations: The translations all agree that anger is in view and that it is being caused. Any of the models may be followed, 'he who angers him' (NIV), 'anyone provokes him to anger' (NRS cf RSV), 'making him angry' (TEV cf CEV). NJB 'whoever provokes him' also implies anger. _reference_start_Proverbs 20:2_reference_end_ Keyword: Similar Collocating Term: אֵימָה Gloss: terror References: _reference_start_Proverbs 20:2_reference_end_ Level 2: 3 Meaning: To think of oneself as having higher status than others Frame for Meaning: Pride Verb Stem: Hithpael Participant Roles for Meaning: Experiencer: human Level 3: a Context: To think of oneself as having higher status than others Intrinsic Domains for Meaning:c Folly Participant Roles for Meaning:c Experiencer = subject: human Key Reference: _reference_start_Proverbs 14:16_reference_end_ Key Verse: KTBH - ... but a fool is |barrogant |b*and self-confident Evaluation of Translations: There is considerable variation, reflecting the difficulty of determining the precise meaning.c* Thus 'hothead' (NIV), 'throws off restraint' (RSV, NRS), 'careless' (TEV), 'insolent' (NJB) are all acceptable and may be followed, as may NJPS, which assumes hendiadys and renders the pair of verbs 'rushes in confidently'. _reference_start_Proverbs 14:16_reference_end_ Keyword: Similar Collocating Term: בטח Gloss: to be confidentd* References: _reference_start_Proverbs 14:16_reference_end_ Keyword: Opposite Collocating Term: ירא Gloss: to fear References: _reference_start_Proverbs 14:16_reference_end_ Level 2: 4 Meaning: Other meanings Verb Stem: Stems other than Hithpael Level 3: a Context: Other meanings _reference_start_Genesis 8:1_reference_end_ _reference_start_Genesis 12:6_reference_end_ _reference_start_Genesis 15:17_reference_end_ _reference_start_Genesis 18:3_reference_end_ _reference_start_Genesis 18:5_reference_end_ _reference_start_Genesis 18:5_reference_end_ _reference_start_Genesis 23:16_reference_end_ _reference_start_Genesis 30:32_reference_end_ _reference_start_Genesis 31:21_reference_end_ _reference_start_Genesis 31:52_reference_end_ _reference_start_Genesis 31:52_reference_end_ _reference_start_Genesis 32:11_reference_end_ _reference_start_Genesis 32:17_reference_end_ _reference_start_Genesis 32:22_reference_end_ _reference_start_Genesis 32:23_reference_end_ _reference_start_Genesis 32:24_reference_end_ _reference_start_Genesis 32:24_reference_end_ _reference_start_Genesis 32:32_reference_end_ _reference_start_Genesis 33:3_reference_end_ _reference_start_Genesis 33:14_reference_end_ _reference_start_Genesis 37:28_reference_end_ _reference_start_Genesis 41:46_reference_end_ _reference_start_Genesis 47:21_reference_end_ _reference_start_Genesis 50:4_reference_end_ _reference_start_Exodus 12:12_reference_end_ _reference_start_Exodus 12:23_reference_end_ _reference_start_Exodus 13:12_reference_end_ _reference_start_Exodus 15:16_reference_end_ _reference_start_Exodus 15:16_reference_end_ _reference_start_Exodus 17:5_reference_end_ _reference_start_Exodus 30:13_reference_end_ _reference_start_Exodus 30:14_reference_end_ _reference_start_Exodus 32:27_reference_end_ _reference_start_Exodus 33:19_reference_end_ _reference_start_Exodus 33:22_reference_end_ _reference_start_Exodus 33:22_reference_end_ _reference_start_Exodus 34:6_reference_end_ _reference_start_Exodus 36:6_reference_end_ _reference_start_Exodus 38:26_reference_end_ _reference_start_Leviticus 18:21_reference_end_ _reference_start_Leviticus 25:9_reference_end_ _reference_start_Leviticus 25:9_reference_end_ _reference_start_Leviticus 26:6_reference_end_ _reference_start_Leviticus 27:32_reference_end_ _reference_start_Numbers 5:14_reference_end_ _reference_start_Numbers 5:14_reference_end_ _reference_start_Numbers 5:30_reference_end_ _reference_start_Numbers 6:5_reference_end_ _reference_start_Numbers 8:7_reference_end_ _reference_start_Numbers 13:32_reference_end_ _reference_start_Numbers 14:7_reference_end_ _reference_start_Numbers 14:41_reference_end_ _reference_start_Numbers 20:17_reference_end_ _reference_start_Numbers 20:17_reference_end_ _reference_start_Numbers 20:17_reference_end_ _reference_start_Numbers 20:18_reference_end_ _reference_start_Numbers 20:19_reference_end_ _reference_start_Numbers 20:20_reference_end_ _reference_start_Numbers 20:21_reference_end_ _reference_start_Numbers 21:22_reference_end_ _reference_start_Numbers 21:22_reference_end_ _reference_start_Numbers 21:23_reference_end_ _reference_start_Numbers 22:18_reference_end_ _reference_start_Numbers 22:26_reference_end_ _reference_start_Numbers 24:13_reference_end_ _reference_start_Numbers 27:7_reference_end_ _reference_start_Numbers 27:8_reference_end_ _reference_start_Numbers 31:23_reference_end_ _reference_start_Numbers 31:23_reference_end_ _reference_start_Numbers 32:5_reference_end_ _reference_start_Numbers 32:7_reference_end_ _reference_start_Numbers 32:21_reference_end_ _reference_start_Numbers 32:27_reference_end_ _reference_start_Numbers 32:29_reference_end_ _reference_start_Numbers 32:30_reference_end_ _reference_start_Numbers 32:32_reference_end_ _reference_start_Numbers 33:8_reference_end_ _reference_start_Numbers 33:51_reference_end_ _reference_start_Numbers 34:4_reference_end_ _reference_start_Numbers 34:4_reference_end_ _reference_start_Numbers 35:10_reference_end_ _reference_start_Deuteronomy 2:4_reference_end_ _reference_start_Deuteronomy 2:8_reference_end_ _reference_start_Deuteronomy 2:8_reference_end_ _reference_start_Deuteronomy 2:13_reference_end_ _reference_start_Deuteronomy 2:13_reference_end_ _reference_start_Deuteronomy 2:14_reference_end_ _reference_start_Deuteronomy 2:18_reference_end_ _reference_start_Deuteronomy 2:24_reference_end_ _reference_start_Deuteronomy 2:27_reference_end_ _reference_start_Deuteronomy 2:28_reference_end_ _reference_start_Deuteronomy 2:29_reference_end_ _reference_start_Deuteronomy 2:30_reference_end_ _reference_start_Deuteronomy 3:18_reference_end_ _reference_start_Deuteronomy 3:21_reference_end_ _reference_start_Deuteronomy 3:25_reference_end_ _reference_start_Deuteronomy 3:27_reference_end_ _reference_start_Deuteronomy 3:28_reference_end_ _reference_start_Deuteronomy 4:14_reference_end_ _reference_start_Deuteronomy 4:21_reference_end_ _reference_start_Deuteronomy 4:22_reference_end_ _reference_start_Deuteronomy 4:22_reference_end_ _reference_start_Deuteronomy 4:26_reference_end_ _reference_start_Deuteronomy 6:1_reference_end_ _reference_start_Deuteronomy 9:1_reference_end_ _reference_start_Deuteronomy 9:3_reference_end_ _reference_start_Deuteronomy 11:8_reference_end_ _reference_start_Deuteronomy 11:11_reference_end_ _reference_start_Deuteronomy 11:31_reference_end_ _reference_start_Deuteronomy 12:10_reference_end_ _reference_start_Deuteronomy 17:2_reference_end_ _reference_start_Deuteronomy 18:10_reference_end_ _reference_start_Deuteronomy 24:5_reference_end_ _reference_start_Deuteronomy 26:13_reference_end_ _reference_start_Deuteronomy 27:2_reference_end_ _reference_start_Deuteronomy 27:3_reference_end_ _reference_start_Deuteronomy 27:4_reference_end_ _reference_start_Deuteronomy 27:12_reference_end_ _reference_start_Deuteronomy 29:11_reference_end_ _reference_start_Deuteronomy 29:15_reference_end_ _reference_start_Deuteronomy 29:15_reference_end_ _reference_start_Deuteronomy 30:13_reference_end_ _reference_start_Deuteronomy 30:18_reference_end_ _reference_start_Deuteronomy 31:2_reference_end_ _reference_start_Deuteronomy 31:3_reference_end_ _reference_start_Deuteronomy 31:3_reference_end_ _reference_start_Deuteronomy 31:13_reference_end_ _reference_start_Deuteronomy 32:47_reference_end_ _reference_start_Deuteronomy 34:4_reference_end_ _reference_start_Joshua 1:2_reference_end_ _reference_start_Joshua 1:11_reference_end_ _reference_start_Joshua 1:11_reference_end_ _reference_start_Joshua 1:14_reference_end_ _reference_start_Joshua 2:23_reference_end_ _reference_start_Joshua 3:1_reference_end_ _reference_start_Joshua 3:2_reference_end_ _reference_start_Joshua 3:4_reference_end_ _reference_start_Joshua 3:6_reference_end_ _reference_start_Joshua 3:11_reference_end_ _reference_start_Joshua 3:14_reference_end_ _reference_start_Joshua 3:16_reference_end_ _reference_start_Joshua 3:17_reference_end_ _reference_start_Joshua 3:17_reference_end_ _reference_start_Joshua 4:1_reference_end_ _reference_start_Joshua 4:3_reference_end_ _reference_start_Joshua 4:5_reference_end_ _reference_start_Joshua 4:7_reference_end_ _reference_start_Joshua 4:8_reference_end_ _reference_start_Joshua 4:10_reference_end_ _reference_start_Joshua 4:11_reference_end_ _reference_start_Joshua 4:11_reference_end_ _reference_start_Joshua 4:12_reference_end_ _reference_start_Joshua 4:13_reference_end_ _reference_start_Joshua 4:22_reference_end_ _reference_start_Joshua 4:23_reference_end_ _reference_start_Joshua 4:23_reference_end_ _reference_start_Joshua 5:1_reference_end_ _reference_start_Joshua 5:1_reference_end_ _reference_start_Joshua 6:7_reference_end_ _reference_start_Joshua 6:7_reference_end_ _reference_start_Joshua 6:8_reference_end_ _reference_start_Joshua 7:7_reference_end_ _reference_start_Joshua 7:7_reference_end_ _reference_start_Joshua 7:11_reference_end_ _reference_start_Joshua 7:15_reference_end_ _reference_start_Joshua 10:29_reference_end_ _reference_start_Joshua 10:31_reference_end_ _reference_start_Joshua 10:34_reference_end_ _reference_start_Joshua 15:3_reference_end_ _reference_start_Joshua 15:3_reference_end_ _reference_start_Joshua 15:4_reference_end_ _reference_start_Joshua 15:6_reference_end_ _reference_start_Joshua 15:7_reference_end_ _reference_start_Joshua 15:10_reference_end_ _reference_start_Joshua 15:10_reference_end_ _reference_start_Joshua 15:11_reference_end_ _reference_start_Joshua 16:2_reference_end_ _reference_start_Joshua 16:6_reference_end_ _reference_start_Joshua 18:9_reference_end_ _reference_start_Joshua 18:13_reference_end_ _reference_start_Joshua 18:18_reference_end_ _reference_start_Joshua 18:19_reference_end_ _reference_start_Joshua 19:13_reference_end_ _reference_start_Joshua 22:19_reference_end_ _reference_start_Joshua 23:16_reference_end_ _reference_start_Joshua 24:11_reference_end_ _reference_start_Joshua 24:17_reference_end_ _reference_start_Judges 2:20_reference_end_ _reference_start_Judges 3:26_reference_end_ _reference_start_Judges 3:28_reference_end_ _reference_start_Judges 6:33_reference_end_ _reference_start_Judges 8:4_reference_end_ _reference_start_Judges 9:25_reference_end_ _reference_start_Judges 9:26_reference_end_ _reference_start_Judges 10:9_reference_end_ _reference_start_Judges 11:17_reference_end_ _reference_start_Judges 11:19_reference_end_ _reference_start_Judges 11:20_reference_end_ _reference_start_Judges 11:29_reference_end_ _reference_start_Judges 11:29_reference_end_ _reference_start_Judges 11:29_reference_end_ _reference_start_Judges 11:32_reference_end_ _reference_start_Judges 12:1_reference_end_ _reference_start_Judges 12:1_reference_end_ _reference_start_Judges 12:3_reference_end_ _reference_start_Judges 12:5_reference_end_ _reference_start_Judges 18:13_reference_end_ _reference_start_Judges 19:12_reference_end_ _reference_start_Judges 19:14_reference_end_ _reference_start_Judges 19:18_reference_end_ _reference_start_Ruth 2:8_reference_end_ _reference_start_Ruth 4:1_reference_end_ _reference_start_1 Samuel 2:24_reference_end_ _reference_start_1 Samuel 9:4_reference_end_ _reference_start_1 Samuel 9:4_reference_end_ _reference_start_1 Samuel 9:4_reference_end_ _reference_start_1 Samuel 9:4_reference_end_ _reference_start_1 Samuel 9:27_reference_end_ _reference_start_1 Samuel 9:27_reference_end_ _reference_start_1 Samuel 13:7_reference_end_ _reference_start_1 Samuel 14:1_reference_end_ _reference_start_1 Samuel 14:4_reference_end_ _reference_start_1 Samuel 14:6_reference_end_ _reference_start_1 Samuel 14:8_reference_end_ _reference_start_1 Samuel 14:23_reference_end_ _reference_start_1 Samuel 15:12_reference_end_ _reference_start_1 Samuel 15:24_reference_end_ _reference_start_1 Samuel 16:8_reference_end_ _reference_start_1 Samuel 16:9_reference_end_ _reference_start_1 Samuel 16:10_reference_end_ _reference_start_1 Samuel 20:36_reference_end_ _reference_start_1 Samuel 25:19_reference_end_ _reference_start_1 Samuel 26:13_reference_end_ _reference_start_1 Samuel 26:22_reference_end_ _reference_start_1 Samuel 27:2_reference_end_ _reference_start_1 Samuel 29:2_reference_end_ _reference_start_1 Samuel 29:2_reference_end_ _reference_start_1 Samuel 30:10_reference_end_ _reference_start_2 Samuel 2:8_reference_end_ _reference_start_2 Samuel 2:15_reference_end_ _reference_start_2 Samuel 2:29_reference_end_ _reference_start_2 Samuel 3:10_reference_end_ _reference_start_2 Samuel 10:17_reference_end_ _reference_start_2 Samuel 11:27_reference_end_ _reference_start_2 Samuel 12:13_reference_end_ _reference_start_2 Samuel 12:31_reference_end_ _reference_start_2 Samuel 15:18_reference_end_ _reference_start_2 Samuel 15:18_reference_end_ _reference_start_2 Samuel 15:22_reference_end_ _reference_start_2 Samuel 15:22_reference_end_ _reference_start_2 Samuel 15:23_reference_end_ _reference_start_2 Samuel 15:23_reference_end_ _reference_start_2 Samuel 15:23_reference_end_ _reference_start_2 Samuel 15:24_reference_end_ _reference_start_2 Samuel 15:33_reference_end_ _reference_start_2 Samuel 16:1_reference_end_ _reference_start_2 Samuel 16:9_reference_end_ _reference_start_2 Samuel 17:16_reference_end_ _reference_start_2 Samuel 17:16_reference_end_ _reference_start_2 Samuel 17:20_reference_end_ _reference_start_2 Samuel 17:21_reference_end_ _reference_start_2 Samuel 17:22_reference_end_ _reference_start_2 Samuel 17:22_reference_end_ _reference_start_2 Samuel 17:24_reference_end_ _reference_start_2 Samuel 18:9_reference_end_ _reference_start_2 Samuel 18:23_reference_end_ _reference_start_2 Samuel 19:16_reference_end_ _reference_start_2 Samuel 19:19_reference_end_ _reference_start_2 Samuel 19:19_reference_end_ _reference_start_2 Samuel 19:19_reference_end_ _reference_start_2 Samuel 19:32_reference_end_ _reference_start_2 Samuel 19:34_reference_end_ _reference_start_2 Samuel 19:37_reference_end_ _reference_start_2 Samuel 19:38_reference_end_ _reference_start_2 Samuel 19:39_reference_end_ _reference_start_2 Samuel 19:40_reference_end_ _reference_start_2 Samuel 19:40_reference_end_ _reference_start_2 Samuel 19:41_reference_end_ _reference_start_2 Samuel 19:41_reference_end_ _reference_start_2 Samuel 19:41_reference_end_ _reference_start_2 Samuel 19:41_reference_end_ _reference_start_2 Samuel 19:42_reference_end_ _reference_start_2 Samuel 20:13_reference_end_ _reference_start_2 Samuel 20:14_reference_end_ _reference_start_2 Samuel 24:5_reference_end_ _reference_start_2 Samuel 24:10_reference_end_ _reference_start_2 Samuel 24:20_reference_end_ _reference_start_1 Kings 2:37_reference_end_ _reference_start_1 Kings 6:21_reference_end_ _reference_start_1 Kings 9:8_reference_end_ _reference_start_1 Kings 13:25_reference_end_ _reference_start_1 Kings 15:12_reference_end_ _reference_start_1 Kings 18:6_reference_end_ _reference_start_1 Kings 18:29_reference_end_ _reference_start_1 Kings 19:11_reference_end_ _reference_start_1 Kings 19:19_reference_end_ _reference_start_1 Kings 20:39_reference_end_ _reference_start_1 Kings 22:24_reference_end_ _reference_start_1 Kings 22:36_reference_end_ _reference_start_2 Kings 2:8_reference_end_ _reference_start_2 Kings 2:9_reference_end_ _reference_start_2 Kings 2:14_reference_end_ _reference_start_2 Kings 4:8_reference_end_ _reference_start_2 Kings 4:8_reference_end_ _reference_start_2 Kings 4:9_reference_end_ _reference_start_2 Kings 4:31_reference_end_ _reference_start_2 Kings 6:9_reference_end_ _reference_start_2 Kings 6:26_reference_end_ _reference_start_2 Kings 6:30_reference_end_ _reference_start_2 Kings 8:21_reference_end_ _reference_start_2 Kings 12:5_reference_end_ _reference_start_2 Kings 14:9_reference_end_ _reference_start_2 Kings 16:3_reference_end_ _reference_start_2 Kings 17:17_reference_end_ _reference_start_2 Kings 18:12_reference_end_ _reference_start_2 Kings 21:6_reference_end_ _reference_start_2 Kings 23:10_reference_end_ _reference_start_1 Chronicles 12:16_reference_end_ _reference_start_1 Chronicles 19:17_reference_end_ _reference_start_1 Chronicles 21:8_reference_end_ _reference_start_1 Chronicles 29:30_reference_end_ _reference_start_2 Chronicles 7:21_reference_end_ _reference_start_2 Chronicles 15:8_reference_end_ _reference_start_2 Chronicles 18:23_reference_end_ _reference_start_2 Chronicles 21:9_reference_end_ _reference_start_2 Chronicles 24:20_reference_end_ _reference_start_2 Chronicles 25:18_reference_end_ _reference_start_2 Chronicles 30:5_reference_end_ _reference_start_2 Chronicles 30:10_reference_end_ _reference_start_2 Chronicles 33:6_reference_end_ _reference_start_2 Chronicles 35:23_reference_end_ _reference_start_2 Chronicles 35:24_reference_end_ _reference_start_2 Chronicles 36:22_reference_end_ _reference_start_Ezra 1:1_reference_end_ _reference_start_Ezra 10:7_reference_end_ _reference_start_Nehemiah 2:7_reference_end_ _reference_start_Nehemiah 2:14_reference_end_ _reference_start_Nehemiah 2:14_reference_end_ _reference_start_Nehemiah 8:15_reference_end_ _reference_start_Nehemiah 9:11_reference_end_ _reference_start_Esther 1:19_reference_end_ _reference_start_Esther 3:3_reference_end_ _reference_start_Esther 4:17_reference_end_ _reference_start_Esther 8:2_reference_end_ _reference_start_Esther 8:3_reference_end_ _reference_start_Esther 9:27_reference_end_ _reference_start_Esther 9:28_reference_end_ _reference_start_Job 6:15_reference_end_ _reference_start_Job 7:21_reference_end_ _reference_start_Job 9:11_reference_end_ _reference_start_Job 11:16_reference_end_ _reference_start_Job 13:13_reference_end_ _reference_start_Job 14:5_reference_end_ _reference_start_Job 15:19_reference_end_ _reference_start_Job 17:11_reference_end_ _reference_start_Job 19:8_reference_end_ _reference_start_Job 21:10_reference_end_ _reference_start_Job 21:29_reference_end_ _reference_start_Job 30:15_reference_end_ _reference_start_Job 33:18_reference_end_ _reference_start_Job 33:28_reference_end_ _reference_start_Job 34:20_reference_end_ _reference_start_Job 36:12_reference_end_ _reference_start_Job 37:21_reference_end_ _reference_start_Psalms 8:9_reference_end_ _reference_start_Psalms 17:3_reference_end_ _reference_start_Psalms 18:13_reference_end_ _reference_start_Psalms 37:36_reference_end_ _reference_start_Psalms 38:5_reference_end_ _reference_start_Psalms 42:5_reference_end_ _reference_start_Psalms 42:8_reference_end_ _reference_start_Psalms 48:5_reference_end_ _reference_start_Psalms 57:2_reference_end_ _reference_start_Psalms 66:6_reference_end_ _reference_start_Psalms 73:7_reference_end_ _reference_start_Psalms 78:13_reference_end_ _reference_start_Psalms 80:13_reference_end_ _reference_start_Psalms 81:7_reference_end_ _reference_start_Psalms 84:7_reference_end_ _reference_start_Psalms 88:17_reference_end_ _reference_start_Psalms 89:42_reference_end_ _reference_start_Psalms 90:4_reference_end_ _reference_start_Psalms 103:16_reference_end_ _reference_start_Psalms 104:9_reference_end_ _reference_start_Psalms 119:37_reference_end_ _reference_start_Psalms 119:39_reference_end_ _reference_start_Psalms 124:4_reference_end_ _reference_start_Psalms 124:5_reference_end_ _reference_start_Psalms 129:8_reference_end_ _reference_start_Psalms 136:14_reference_end_ _reference_start_Psalms 141:10_reference_end_ _reference_start_Psalms 144:4_reference_end_ _reference_start_Psalms 148:6_reference_end_ _reference_start_Proverbs 4:15_reference_end_ _reference_start_Proverbs 4:15_reference_end_ _reference_start_Proverbs 7:8_reference_end_ _reference_start_Proverbs 8:29_reference_end_ _reference_start_Proverbs 9:15_reference_end_ _reference_start_Proverbs 10:25_reference_end_ _reference_start_Proverbs 19:11_reference_end_ _reference_start_Proverbs 22:3_reference_end_ _reference_start_Proverbs 24:30_reference_end_ _reference_start_Proverbs 26:10_reference_end_ _reference_start_Proverbs 26:17_reference_end_ _reference_start_Proverbs 27:12_reference_end_ _reference_start_Ecclesiastes 11:10_reference_end_ _reference_start_Song of Solomon 2:11_reference_end_ _reference_start_Song of Solomon 3:4_reference_end_ _reference_start_Song of Solomon 5:5_reference_end_ _reference_start_Song of Solomon 5:6_reference_end_ _reference_start_Song of Solomon 5:13_reference_end_ _reference_start_Isaiah 8:8_reference_end_ _reference_start_Isaiah 8:21_reference_end_ _reference_start_Isaiah 10:28_reference_end_ _reference_start_Isaiah 10:29_reference_end_ _reference_start_Isaiah 16:8_reference_end_ _reference_start_Isaiah 23:2_reference_end_ _reference_start_Isaiah 23:6_reference_end_ _reference_start_Isaiah 23:10_reference_end_ _reference_start_Isaiah 23:12_reference_end_ _reference_start_Isaiah 24:5_reference_end_ _reference_start_Isaiah 26:20_reference_end_ _reference_start_Isaiah 26:20_reference_end_ _reference_start_Isaiah 28:15_reference_end_ _reference_start_Isaiah 28:15_reference_end_ _reference_start_Isaiah 28:18_reference_end_ _reference_start_Isaiah 28:19_reference_end_ _reference_start_Isaiah 28:19_reference_end_ _reference_start_Isaiah 29:5_reference_end_ _reference_start_Isaiah 31:9_reference_end_ _reference_start_Isaiah 33:8_reference_end_ _reference_start_Isaiah 33:21_reference_end_ _reference_start_Isaiah 34:10_reference_end_ _reference_start_Isaiah 35:8_reference_end_ _reference_start_Isaiah 40:27_reference_end_ _reference_start_Isaiah 41:3_reference_end_ _reference_start_Isaiah 43:2_reference_end_ _reference_start_Isaiah 45:14_reference_end_ _reference_start_Isaiah 45:14_reference_end_ _reference_start_Isaiah 47:2_reference_end_ _reference_start_Isaiah 51:10_reference_end_ _reference_start_Isaiah 51:23_reference_end_ _reference_start_Isaiah 51:23_reference_end_ _reference_start_Isaiah 54:9_reference_end_ _reference_start_Isaiah 60:15_reference_end_ _reference_start_Isaiah 62:10_reference_end_ _reference_start_Isaiah 62:10_reference_end_ _reference_start_Jeremiah 2:6_reference_end_ _reference_start_Jeremiah 2:10_reference_end_ _reference_start_Jeremiah 2:20_reference_end_ _reference_start_Jeremiah 5:22_reference_end_ _reference_start_Jeremiah 5:22_reference_end_ _reference_start_Jeremiah 5:28_reference_end_ _reference_start_Jeremiah 8:13_reference_end_ _reference_start_Jeremiah 8:20_reference_end_ _reference_start_Jeremiah 9:9_reference_end_ _reference_start_Jeremiah 9:11_reference_end_ _reference_start_Jeremiah 11:15_reference_end_ _reference_start_Jeremiah 13:24_reference_end_ _reference_start_Jeremiah 15:14_reference_end_ _reference_start_Jeremiah 18:16_reference_end_ _reference_start_Jeremiah 19:8_reference_end_ _reference_start_Jeremiah 22:8_reference_end_ _reference_start_Jeremiah 23:9_reference_end_ _reference_start_Jeremiah 32:35_reference_end_ _reference_start_Jeremiah 33:13_reference_end_ _reference_start_Jeremiah 34:18_reference_end_ _reference_start_Jeremiah 34:18_reference_end_ _reference_start_Jeremiah 34:19_reference_end_ _reference_start_Jeremiah 41:10_reference_end_ _reference_start_Jeremiah 46:17_reference_end_ _reference_start_Jeremiah 48:32_reference_end_ _reference_start_Jeremiah 49:17_reference_end_ _reference_start_Jeremiah 50:13_reference_end_ _reference_start_Jeremiah 51:43_reference_end_ _reference_start_Lamentations 1:12_reference_end_ _reference_start_Lamentations 2:15_reference_end_ _reference_start_Lamentations 3:44_reference_end_ _reference_start_Lamentations 4:21_reference_end_ _reference_start_Ezekiel 5:1_reference_end_ _reference_start_Ezekiel 5:14_reference_end_ _reference_start_Ezekiel 5:17_reference_end_ _reference_start_Ezekiel 9:4_reference_end_ _reference_start_Ezekiel 9:5_reference_end_ _reference_start_Ezekiel 14:15_reference_end_ _reference_start_Ezekiel 14:15_reference_end_ _reference_start_Ezekiel 14:17_reference_end_ _reference_start_Ezekiel 16:6_reference_end_ _reference_start_Ezekiel 16:8_reference_end_ _reference_start_Ezekiel 16:15_reference_end_ _reference_start_Ezekiel 16:21_reference_end_ _reference_start_Ezekiel 16:25_reference_end_ _reference_start_Ezekiel 20:26_reference_end_ _reference_start_Ezekiel 20:31_reference_end_ _reference_start_Ezekiel 20:37_reference_end_ _reference_start_Ezekiel 23:37_reference_end_ _reference_start_Ezekiel 29:11_reference_end_ _reference_start_Ezekiel 29:11_reference_end_ _reference_start_Ezekiel 33:28_reference_end_ _reference_start_Ezekiel 35:7_reference_end_ _reference_start_Ezekiel 36:34_reference_end_ _reference_start_Ezekiel 37:2_reference_end_ _reference_start_Ezekiel 39:11_reference_end_ _reference_start_Ezekiel 39:11_reference_end_ _reference_start_Ezekiel 39:14_reference_end_ _reference_start_Ezekiel 39:14_reference_end_ _reference_start_Ezekiel 39:15_reference_end_ _reference_start_Ezekiel 39:15_reference_end_ _reference_start_Ezekiel 46:21_reference_end_ _reference_start_Ezekiel 47:3_reference_end_ _reference_start_Ezekiel 47:4_reference_end_ _reference_start_Ezekiel 47:4_reference_end_ _reference_start_Ezekiel 47:5_reference_end_ _reference_start_Ezekiel 47:5_reference_end_ _reference_start_Ezekiel 48:14_reference_end_ _reference_start_Ezekiel 48:14_reference_end_ _reference_start_Daniel 9:11_reference_end_ _reference_start_Daniel 11:10_reference_end_ _reference_start_Daniel 11:20_reference_end_ _reference_start_Daniel 11:40_reference_end_ _reference_start_Hosea 6:7_reference_end_ _reference_start_Hosea 8:1_reference_end_ _reference_start_Hosea 10:11_reference_end_ _reference_start_Joel 4:17_reference_end_ _reference_start_Amos 5:5_reference_end_ _reference_start_Amos 5:17_reference_end_ _reference_start_Amos 6:2_reference_end_ _reference_start_Amos 7:8_reference_end_ _reference_start_Amos 8:2_reference_end_ _reference_start_Amos 8:5_reference_end_ _reference_start_Jonah 2:4_reference_end_ _reference_start_Jonah 3:6_reference_end_ _reference_start_Micah 1:11_reference_end_ _reference_start_Micah 2:8_reference_end_ _reference_start_Micah 2:13_reference_end_ _reference_start_Micah 2:13_reference_end_ _reference_start_Micah 5:7_reference_end_ _reference_start_Micah 7:18_reference_end_ _reference_start_Nahum 1:8_reference_end_ _reference_start_Nahum 1:12_reference_end_ _reference_start_Nahum 2:1_reference_end_ _reference_start_Nahum 2:1_reference_end_ _reference_start_Nahum 3:19_reference_end_ _reference_start_Habakkuk 1:11_reference_end_ _reference_start_Habakkuk 3:10_reference_end_ _reference_start_Zephaniah 2:2_reference_end_ _reference_start_Zephaniah 2:15_reference_end_ _reference_start_Zephaniah 3:6_reference_end_ _reference_start_Zechariah 3:4_reference_end_ _reference_start_Zechariah 7:14_reference_end_ _reference_start_Zechariah 9:8_reference_end_ _reference_start_Zechariah 9:8_reference_end_ _reference_start_Zechariah 10:11_reference_end_ _reference_start_Zechariah 13:2_reference_end_ Keyword: Note: (a) Unusually, the target and the agent of the stimulus are different. Note: (b) Vul appears to have read מתערב (cf 14:16) and this appears to be accepted by NIV and REB. MT does, however, make sense, if understood as '[a passer-by] who gets angry over ...' (cf BDB, ICC) and can be retained (cf NICOT). Note: (c) The precise meaning is hard to establish. Options are:1. The coordination of בטח suggests the meaning 'to be arrogant' as found for the cognate noun עֶבְרָה. This is appropriately predicated of a fool. BDB and ICC suggest this, and similarly Reyburn and Fry suggest that the word 'may mean to “be arrogant or excited,” that is, to “lose control.”' (HBK).2. Waltke maintains a sense 'anger' with Yahweh as the unexpressed object of both cola in this verse, ''fears [Yahweh]' and 'gets angry [with Yahweh]' (NICOT). 3. HALOT also maintains a sense 'anger' but differently - 'brings anger upon himself'.4. LXX (cf Syr and Tg) translates by μίγνυμι 'to meddle', presumably having read מתערב, and this also fits the context.KTBH considers that option 1 fits the context best. Note: (d) This gloss is derived from BDB. HALOT proposes a homonym בטח* II, 'to fall on the ground'. Version: 0 Date: 2007-12-27 11:15:21 cjs Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org. C~qdWJ=0# zm`SF9,vi\OB5( ea da ca ba aa `a _a ^a ]a \a [a Za Ya Xa Wa Va) Ua Ta Sa Ra Qa Pa Oa Na Ma La Ka Ja Ia& Ha$ Ga" Fa! Ea! Da! Ca  Ba Aa @a ?a >a =a <a  ;a :a2 9a/ 8a). 7a% 6a! 5a! 4a 3a  2a  1a  0a  /a  .a -a4 ,a4 +a *a )a (a 'a &a %a $a  #a C~qdWJ=0# zm`SF9,vi\OB5( (a 'a &a %a $a #a" "a / !a a a a a a a a a a a a a a a a a a a  a a  a  a  a a a a a a a a a a a a ~a }a |a {a za ya xa wa va ua ta sa# ra" qa" pa!3 oa! na ma  la  ka  ja  ia  ha  ga fa C~qdWJ=0# zm`SF9,vi\OB5( ka  ja  ia  ha  ga  fa  ea da  ca  ba aa! `a _a ^a ]a \a [a Za Ya Xa Wa Va Ua Ta Sa Ra Qa Pa Oa Na Ma La Ka Ja " Ia  Ha  Ga Fa Ea Da Ca Ba Aa @a ?a >a =a <a ;a :a 9a 8a 7a 6a 5a 4a 3a 2a 1a 0a /a .a -a ,a +a *a )a C~qdWJ=0# zm`SF9,vi\OB5( .a  -a  ,a  +a  *a  )a  (a  'a  &a  %a  $a  #a  "a  !a ! a  a  a  a  a  a  a  a  a  a a  a  a  a  a  a  a  a  a  a  a  a  a  a $ a  a  a  a  a  a  a  a  a  a  ~a  }a  |a  {a  za  ya  xa  wa  va ua ta sa ra qa pa  oa  na  ma  la C~qdWJ=0# zm`SF9,vi\OB5( qa  pa oa$ na# ma# la! ka ja ia ha ga fa ea da ca  ba  aa  `a  _a  ^a  ]a  \a  [a  Za  Ya  Xa  Wa  Va  Ua  Ta  Sa  Ra  Qa  Pa  Oa  Na  Ma $ La  Ka ' Ja  Ia  Ha  Ga  Fa  Ea  Da  Ca  Ba % Aa  @a  ?a  >a  =a  <a * ;a ) :a ) 9a ) 8a ) 7a ( 6a ( 5a ' 4a & 3a % 2a " 1a  0a  /a  C~qdWJ=0# zm`SF9,vi\OA3% 4a 3a 2a 1a  0a  /a .a -a ,a +a *a )a (a 'a &a| %a| $aw' #aw% "ah !ag aZ aY* aX aT aQ aP aN aI aB a9 a0 a* a* a& a%$ a a a a% a$ a" a! a! a a a a a a a a a  a a ~a }a  |a  {a za ya xa wa va ua ta sa ra C~qdWJ=0# zm`SF9,vi\OB5( wa" va" ua" ta! sa # ra qa pa oa na ma  la  ka ja ia ha ga fa ea da ca ba aa> `a> _a< ^a6 ]a3 \a3 [a3 Za/ Ya- Xa- Wa+ Va) Ua( Ta# Sa" Ra! Qa! Pa Oa Na Ma La Ka Ja Ia Ha Ga Fa Ea Da Ca Ba Aa  @a  ?a >a =a <a ;a :a 9a 8a 7a 6a 5a C~qdWJ=0# zm`SF9,vi\OB5( :a! 9a! 8a! 7a! 6a  5a  4a 3a 2a 1a 0a /a .a -a ,a +a *a ( )a  (a 'a &a0 %a0 $a/ #a/ "a/ !a/ a/ a. a' a' a' a' a' a' a% a$" a# a! a a a% a% a a a a a a a a a a a  a  a a a a a, a ~a }a3+ |a2 {a1 za0 ya. xa) C~qdWJ=0# zm`SF9,vi\OB5( }b |b( {b1 zb1 yb xbN1 wb$ vb& ub tb$ sbN1 rb qb pbU obN1 nb# mb# lb kb jb ib hbZ gbU fbN1 eb$ db$ cb# bb ab `b& _b ^b ]b$ \b [b Zb Yb Xb Wb Vb  Ub  Tb  Sb  RbZ QbZ PbU ObN1 Nb Mb La&  Ka& Ja&  Ia&  Ha& Ga& Fa$ Ea$ Da$ Ca# Ba# Aa" @a" ?a" >a" =a" <a! ;a!e same terms as human anger, unless those terms can only mean sinful anger. Comparison of Meanings and Uses: 1 Focus: response; response: anger a Experiencer: God b Experiencer: human 2 Focus: attitude; attitude: arrogance a Experiencer: human Level 2: 1 Meaning: The emotion of anger Frame for Meaning: Anger Grammar Notes: The plural occurs three times (Job 21:30; 40:11; Psa 7:7) without obvious difference in meaning. It may be a plural of intensity (cf Jouon and Muraoka 136.f, GKC 124.e) or, at least at Job 40:11 and Psa 7:7, it could indicate a repeated series of actions or a habitual behaviour 'outbursts of anger' (HALOT, cf IBHS 7.4.2.c, VDM 24.3.3.v). Participant Roles for Meaning: Experiencer: God or humanTarget: human, an individual or an nation, or (once) the sea Level 3: a Context: Of God, the emotion of anger Intrinsic Domains for Meaning:c Apostasy and Judgement Participant Roles for Meaning:c Experiencer = genitive or implicit: GodTarget = in construct or implicit: human, an individual or an nation, or (once) the sea Key Reference: _reference_start_Hosea 13:11_reference_end_ Key Verse: KTBH - In my anger I gave to you a king; and |bin my wrath |b*I took him away Evaluation of Translations: Most translations use 'anger, wrath' (NIV, RSV, NRS, REB, NJB), for the two Hebrew synonyms in the parallelism. This is a good model, since 'wrath' is acceptable when God is the experiencer. However, TEV and CEV choose a less old-fashioned alternative from among the range of available English synonyms, 'anger, fury' (TEV, CEV). NJPS uses 'ire, wrath', but 'ire' is probably too archaic to be used. _reference_start_Job 21:30_reference_end_ _reference_start_Psalms 78:49_reference_end_ _reference_start_Psalms 85:4_reference_end_ _reference_start_Psalms 90:9_reference_end_ _reference_start_Psalms 90:11_reference_end_ _reference_start_Proverbs 11:4_reference_end_ _reference_start_Proverbs 11:23_reference_end_ _reference_start_Isaiah 9:18_reference_end_ _reference_start_Isaiah 10:6_reference_end_ _reference_start_Isaiah 13:9_reference_end_ _reference_start_Isaiah 13:13_reference_end_ _reference_start_Jeremiah 7:29_reference_end_ _reference_start_Lamentations 2:2_reference_end_ _reference_start_Lamentations 3:1_reference_end_ _reference_start_Ezekiel 7:19_reference_end_ _reference_start_Ezekiel 21:36_reference_end_ _reference_start_Ezekiel 22:21_reference_end_ _reference_start_Ezekiel 22:31_reference_end_ _reference_start_Ezekiel 38:19_reference_end_ _reference_start_Hosea 5:10_reference_end_ _reference_start_Hosea 13:11_reference_end_ _reference_start_Habakkuk 3:8_reference_end_ _reference_start_Zephaniah 1:15_reference_end_ _reference_start_Zephaniah 1:18_reference_end_ Keyword: Similar Collocating Term: אַף Gloss: anger References: _reference_start_Psalms 78:49_reference_end_ _reference_start_Psalms 85:4_reference_end_ _reference_start_Psalms 90:11_reference_end_ _reference_start_Isaiah 13:9_reference_end_ _reference_start_Isaiah 13:13_reference_end_ _reference_start_Lamentations 2:2_reference_end_ _reference_start_Hosea 13:11_reference_end_ _reference_start_Habakkuk 3:8_reference_end_ Keyword: Similar Collocating Term: חרה Gloss: to burn [with anger] References: _reference_start_Habakkuk 3:8_reference_end_ Keyword: Similar Collocating Term: חָרֹון Gloss: burning References: _reference_start_Psalms 78:49_reference_end_ _reference_start_Psalms 85:4_reference_end_ _reference_start_Isaiah 13:9_reference_end_ _reference_start_Isaiah 13:13_reference_end_ Keyword: Similar Collocating Term: זַעַם Gloss: anger References: _reference_start_Psalms 78:49_reference_end_ _reference_start_Ezekiel 21:36_reference_end_ _reference_start_Ezekiel 22:31_reference_end_ Keyword: Similar Collocating Term: קִנְאָה Gloss: jealousy References: _reference_start_Ezekiel 38:19_reference_end_ _reference_start_Zephaniah 1:18_reference_end_ Keyword: Similar Collocating Term: צָרָה Gloss: trouble References: _reference_start_Psalms 78:49_reference_end_ Keyword: Similar Collocating Term: אַכְזָרִי Gloss: cruel References: _reference_start_Isaiah 13:9_reference_end_ Level 3: b Context: Of humans, the emotion of anger Intrinsic Domains for Meaning:c Various, including: Violence, Warfare, Injustice, Pride Participant Roles for Meaning:c Experiencer = genitive or implicit: humanTarget = implicit: human, an individual or (once) nations Key Reference: _reference_start_Genesis 49:7_reference_end_ Key Verse: KTBH - Cursed is their anger, for it is fierce, their |bfury|b*, for it is harsh Evaluation of Translations: Most translations use two words from among the range of available English synonyms for the two Hebrew synonyms in the parallelism: 'anger, wrath' (RSV, NRS, REB, NJPS), 'anger, fury' (NIV, TEV) or 'rage, wrath' (NJB). 'Anger' is a good choice for אַף, but 'wrath' is probably archaic, unless God is the experiencer, so 'anger, fury' or 'anger, rage' are preferable.CEV collapses the bicolon to one clause and renders the two parallel Hebrew words by 'fierce anger'. This is also a good model. _reference_start_Genesis 49:7_reference_end_ _reference_start_Job 40:11_reference_end_ _reference_start_Psalms 7:7_reference_end_ _reference_start_Proverbs 14:35_reference_end_ _reference_start_Proverbs 22:8_reference_end_ _reference_start_Isaiah 14:6_reference_end_ _reference_start_Amos 1:11_reference_end_ Keyword: Similar Collocating Term: אַף Gloss: anger References: _reference_start_Genesis 49:7_reference_end_ _reference_start_Job 40:11_reference_end_ _reference_start_Psalms 7:7_reference_end_ _reference_start_Amos 1:11_reference_end_ Keyword: Opposite Collocating Term: רָצֹון Gloss: favour References: _reference_start_Proverbs 14:35_reference_end_ Keyword: Opposite Collocating Term: רַחֲמִים Gloss: compassion References: _reference_start_Amos 1:11_reference_end_ Level 2: 2 Meaning: Thinking of oneself as having higher status than others Frame for Meaning: Arrogance Participant Roles for Meaning: Experiencer: human Meaning Comments: All three instances of this meaning are used in contexts where other words for pride occur. Level 3: a Context: Thinking of oneself as having higher status than others Intrinsic Domains for Meaning:c Judgement, Mockery Participant Roles for Meaning:c Experiencer = genitive or implicit: human Key Reference: _reference_start_Proverbs 21:24_reference_end_ Key Verse: NRS - The proud, haughty person, named "Scoffer," acts with |barrogant |b*pride Evaluation of Translations: 'Arrogant' (RSV, NRS, TEV) is probably best. 'Overweening' (NIV, REB, NJB) conveys exactly the right sense but is such a rare word as to be unsuitable. TEV and, even more, CEV render so freely they have no clear equivalent. _reference_start_Proverbs 21:24_reference_end_ _reference_start_Isaiah 16:6_reference_end_ _reference_start_Jeremiah 48:30_reference_end_ Keyword: Similar Collocating Term: זֵד Gloss: presumptuous References: _reference_start_Proverbs 21:24_reference_end_ Keyword: Similar Collocating Term: זָדֹון Gloss: presumption References: _reference_start_Proverbs 21:24_reference_end_ Keyword: Similar Collocating Term: יָהִיר Gloss: presumptuous References: _reference_start_Proverbs 21:24_reference_end_ Keyword: Similar Collocating Term: ליץ Gloss: to scoff References: _reference_start_Proverbs 21:24_reference_end_ Keyword: Similar Collocating Term: גָּאֹון Gloss: arrogance References: _reference_start_Isaiah 16:6_reference_end_ Keyword: Similar Collocating Term: גֵּא Gloss: arrogant References: _reference_start_Isaiah 16:6_reference_end_ Keyword: Similar Collocating Term: גַּאֲוָה Gloss: presumption References: _reference_start_Isaiah 16:6_reference_end_ Keyword: Similar Collocating Term: בַּד Gloss: boasting References: _reference_start_Isaiah 16:6_reference_end_ _reference_start_Jeremiah 48:30_reference_end_ Keyword: Opposite Collocating Term: כֵּן Gloss: correct, right, accurate, honest References: _reference_start_Jeremiah 48:30_reference_end_ Note: (a) The experiencer of the anger is not certain, but the phrases 'day of disaster' and 'day of wrath' point to Yahweh. Note: (b) The parallel between death and the day of wrath, over which only Yahweh has power, strongly suggests that this refers to the day of Yahweh's anger (cf NICOT). Note: (c) LXX appears to have read אבדה* (cf 10:28), but MT is the harder reading and should be accepted. Furthermore, there is better parallelism between 'good' and 'wrath' (WBC).Waltke notes that the anger may be the anger of the wicked against others or the anger of God against the wicked, and suggests that both are in view and a pun is intended (NICOT). As ICC points out, however, the book focuses on consequences (Toy 1899, 234), so KTBH concludes that the anger in view is that of God against the wicked. Note: (d) This instance is noteworthy because it is one of the few examples where the target is inanimate. Note: (e) LXX appears to have read עבדתו 'his works', which, if understood as 'tilling' provides a good parallel to the first colon. However, since MT makes sense, it should be retained (cf HOTTP, B rating). Although Toy accepts the reading of LXX, he summarises clearly the options for understanding MT 'the rod of his wrath'. Either it is the 'tyranny of a bad and powerful man' or the wrath that falls on him (ICC 1899).In this case, the 3ms suffix must thus refer either to God as experiencer, or to the wicked person as target. Although God is presupposed throughout the Bible, the one who sows wickedness provides a more active antecedent. KTBH thus concludes that the anger in view is that of the wicked as they oppress others.Murphy notes the difficulties of the verse and translates v. 8b 'and the rod of his pride will fail' but he appears to be a lone voice in taking עֶבְרָה to have Meaning 2 here (WBC 1998). Version: 0 Date: 2007-12-27 11:16:15 cjs Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org. C~qdWJ=0# zm`SF9,vi\OB5( @c  ?c  >c =c <c% ;c :c 9c 8c  7c  6c  5c 4c  3c 2c) 1c( 0c( /c@ .c9 -c6 ,c +c  *c  )c& (c& 'c& &c& %c& $c #c@ "c@ !c9 c9 c9 c6 c/ c c c  c" c c  c" b0 b0 b b b b b b b b b0 b b b b b# b b b( b1 b b b ~b#ween God being angry with someone, Meanings 1a, 2a, and someone being angry with someone else, Meaning 1b. Notes for Translators: God’s anger is always righteous. It is directed against a person or people who are wrong. It may be translated by the same terms as human anger, unless those terms can only mean sinful anger. Hebraists' Comments: In this analysis, the Qal expresses a state ‘be angry’ or a process ‘become angry’ while the Hiphil expresses a causative ‘make angry’ in accord with the prototypical senses of the respective stems. Traditional Hebrew lexicography reached the same conclusion, distinguishing a stative Qal (BDB: ‘be wroth’ and HALOT: ‘be angry’) from a causative Hiphil (BDB: ‘provoke to wrath’ and HALOT: ‘to rouse to anger’), though their glosses may have relied too much on the morphology. Comparison of Meanings and Uses: 1 Stem: Qal or Hithpael; experiencer: subject; target: human or God; focus: response; response: anger a Experiencer: God b Experiencer: human 2 Stem: Hiphil; agent: subject; experiencer: object; target = agent; focus: provocation; response: anger a Agent: human; experiencer: God Level 2: 1 Meaning: To experience the emotion of anger Frame for Meaning: Anger Verb Stem: Qal and (once) Hithpaela* Participant Roles for Meaning: Experiencer: God or humans Target: human: individual(s) or nation(s) or god(s) Level 3: a Context: Of God, to experience the emotion of anger Intrinsic Domains for Meaning:c Apostasy and Judgement, Repentance and Restoration, Eschatological judgement Participant Roles for Meaning:c Experiencer = subject: God Target = עַלb* or implicit: human: individual(s)‏ or nation(s)‏ Key Reference: _reference_start_Deuteronomy 1:34_reference_end_ Key Verse: KTBH - Yahweh heard your words and |bhe was angry |b*and he swore an oath Evaluation of Translations: Most translations use some variation on the word 'anger': 'was angry (NIV, REB, NJPS), 'became angry' (TEV), 'was angered' (RSV). Any of these is a good model to follow. NRS uses 'wrathful' which is acceptable for divine anger. CEV assumes a causal relationship between the first two clauses of the verse and combines them, 'You had made the Lord angry'. This loses too much of the Hebrew and should not be followed. NJB combines the second and third clauses, making the second into a prepositional phrase, 'in his anger swore ...'. This may be followed if it is more natural in the receptor language. _reference_start_Leviticus 10:6_reference_end_ _reference_start_Numbers 16:22_reference_end_ _reference_start_Deuteronomy 1:34_reference_end_ _reference_start_Deuteronomy 9:19_reference_end_ _reference_start_Joshua 22:18_reference_end_ _reference_start_Ecclesiastes 5:5_reference_end_ _reference_start_Isaiah 47:6_reference_end_ _reference_start_Isaiah 54:9_reference_end_ _reference_start_Isaiah 57:16_reference_end_ _reference_start_Isaiah 57:17_reference_end_ _reference_start_Isaiah 57:17_reference_end_ _reference_start_Isaiah 64:4_reference_end_ _reference_start_Isaiah 64:8_reference_end_ _reference_start_Lamentations 5:22_reference_end_ _reference_start_Zechariah 1:2_reference_end_ _reference_start_Zechariah 1:15_reference_end_ _reference_start_Zechariah 1:15_reference_end_ Keyword: Cognate Collocating Term: קֶצֶף Gloss: anger References: _reference_start_Zechariah 1:2_reference_end_ _reference_start_Zechariah 1:15_reference_end_ Keyword: Similar Collocating Term: אַף Gloss: anger References: _reference_start_Deuteronomy 9:19_reference_end_ Keyword: Similar Collocating Term: חֵמָה Gloss: anger References: _reference_start_Deuteronomy 9:19_reference_end_ Keyword: Similar Collocating Term: מאס Gloss: to reject References: _reference_start_Lamentations 5:22_reference_end_ Keyword: Similar Collocating Term: גער Gloss: to rebuke References: _reference_start_Isaiah 54:9_reference_end_ Keyword: Similar Collocating Term: ריב Gloss: to contend References: _reference_start_Isaiah 57:16_reference_end_ Keyword: Opposite Collocating Term: פגע Gloss: to meet with References: _reference_start_Isaiah 64:4_reference_end_ Level 3: b Context: Of humans, to experience the emotion of anger Intrinsic Domains for Meaning:c Various, including: Kingship, Apostasy, Distrust, Pride, Enmity Participant Roles for Meaning:c Experiencer = subject: humanTarget = עַלb* or implicit: human: individual(s)‏ or nation(s)‏, or god(s)‏ (x1)‏ Key Reference: _reference_start_Genesis 40:2_reference_end_ Key Verse: KTBH - Pharaoh |bwas angry |b*with two of his officials, the chief of the cupbearers and the chief of the bakers Evaluation of Translations: Most of the standard translations render קצף as ‘[Pharaoh] was angry’ (NIV, RSV, NRS, TEV, NJB, NJPS). This is a good model. REB softens the wording, ‘Pharaoh was displeased.’ This is hard to justify; see the frame-level entry for discussion of intensities of anger. CEV combines חטא in v. 1 and קצף in v. 2 and renders both together, '... made the king angry'. _reference_start_Genesis 40:2_reference_end_ _reference_start_Genesis 41:10_reference_end_ _reference_start_Exodus 16:20_reference_end_ _reference_start_Leviticus 10:16_reference_end_ _reference_start_Numbers 31:14_reference_end_ _reference_start_1 Samuel 29:4_reference_end_ _reference_start_2 Kings 5:11_reference_end_ _reference_start_2 Kings 13:19_reference_end_ _reference_start_Esther 1:12_reference_end_ _reference_start_Esther 2:21_reference_end_ _reference_start_Isaiah 8:21_reference_end_ _reference_start_Jeremiah 37:15_reference_end_ Keyword: Similar Collocating Term: חֵמָה Gloss: anger References: _reference_start_Esther 1:12_reference_end_ Keyword: Similar Collocating Term: קלל Gloss: to curse References: _reference_start_Isaiah 8:21_reference_end_ Level 2: 2 Meaning: To cause someone to experience the emotion of anger Frame for Meaning: Anger Verb Stem: Hiphil Participant Roles for Meaning: Agent: human Experiencer: God Level 3: a Context: To cause God to experience the emotion of anger Intrinsic Domains for Meaning:c Apostasy and Judgement Participant Roles for Meaning:c Agent = subject: human Experiencer = object: God Key Reference: _reference_start_Deuteronomy 9:8_reference_end_ Key Verse: KTBH - At Horeb you |bprovoked |b*Yahweh's |bwrath |b*and he was angry enough with you to destroy you Evaluation of Translations: It is necessary to express the causation in the first clause. Translations do this in various ways, 'you aroused the Lord's wrath' (NIV), 'you provoked the Lord to wrath (RSV, NRS), 'you roused the Lord's anger' (REB), 'you made the Lord angry' (TEV). These are all good models. NJB and NJPS leave the anger implicit, 'you provoked', and this may also be followed, since the anger is explicit in the next clause. CEV combines the first two clauses, both of which refer to anger, into one, 'you made the Lord so angry that ...' but conveys the causation adequately.There is also the issue of the presence of a synonym in the second clause, typical of similar issues discussed elsewhere. _reference_start_Deuteronomy 9:7_reference_end_ _reference_start_Deuteronomy 9:8_reference_end_ _reference_start_Deuteronomy 9:22_reference_end_ _reference_start_Psalms 106:32_reference_end_ _reference_start_Zechariah 8:14_reference_end_ Keyword: Similar Collocating Term: אנף Gloss: to be angry References: _reference_start_Deuteronomy 9:8_reference_end_ Keyword: Similar Collocating Term: מרה Gloss: to rebel References: _reference_start_Deuteronomy 9:7_reference_end_ Keyword: Opposite Collocating Term: נחם Gloss: to relent References: _reference_start_Zechariah 8:14_reference_end_ Note: (a) The Hithpael occurs only once (Isa 8:21) and there are insufficient grounds to distinguish its meaning from that of the Qal. Note: (b) It might be possible to take the עַל *normally associated with the Qal of קצף* as causal and see it as introducing the agent which caused the anger, leading to a gloss, ‘the experiencer was made angry by/because of the agent.’ This passive causative sense, however, would not be prototypical for a verb in the Qal stem. Num16:22b is significant in this connection הָאִ֤ישׁ אֶחָד֙ יֶחֱטָ֔א וְעַ֥ל כָּל־הָעֵדָ֖ה תִּקְצֹֽף* ‘will one man sin and you be angry with the whole congregation?’ Whether the initial ה *of הָאִ֤ישׁ *is read as the article, with MT, or repointed as the interrogative (cf. BHS margin), this is a rhetorical question expecting the answer, ‘no.’ Moses and Aaron are proposing a separation of the two participant roles under discussion, that of target, here the whole congregation, and that of the agent which caused the anger, here ‘one man,’ Korah, and reject the proposal. For our purposes, two points are significant. Firstly, at least conceptually, it is possible to separate the two roles, and secondly, it is the role of target that is expressed by the עַל*-phrase. This conclusion forms the basis of the analysis above. Note: (c) Unusually, the target is more extensive than the agent of the stimulus. Note: (d) The target is expressed with אֶל which BHS proposes to emend to the more usual עַל. This is plausible, since these prepositions are easily confused (Jouon and Muraoka §133.b) and some of their senses overlap (IBHS §11.2.13b), but it is unsupported in the manuscript tradition and is probably unnecessary. Note: (e) Elsewhere, the Hiphil of קצף* has an object, but MT has none in this case. A pronominal object is, however, present in LXX and Syr. This may reflect a variant text in the |iVorlage|i* or may have resulted from making implicit information explicit. Whatever the original text, the allusion to Exo 17:1-7, where Yahweh is the Experiencer, makes it clear that Yahweh is the Experiencer here too. Version: 0 Date: 2007-12-27 11:17:10 cjs Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org.  } Ld11Gdanger (קֶצֶף)anger (קֶצֶף)Strong's number: 07110 \level1 1 Part of speech: n Frequency: 29 Cognate(s): קצף Abstract for Busy Translators: 1. The main distinction in meaning is between God being angry with someone, Meaning 1a, and someone being angry with someone else, Meaning 1b. 2. In Hos 10:7, an etymologically unrelated word of the samScSScto be angry, to make angry (קצף)to be angry, to make angry (קצף)Strong's number: 7107 Part of speech: v Frequency: 34 Cognate(s): קֶצֶף Abstract for Busy Translators: 1. The key meaning distinction is between someone being angry with someone else, Meaning 1, and someone making someone else angry, Meaning 2. 2. There is a further distinction in meaning bet C~qdWJ=0# zm`SF9,vi\OB5( e e eM eM e ~e  }eM |e  {e  ze  yd  xd  wd vd ud td sd  rd qd< pd6 od6 nd mdf ld % kd jd" id& hd gd % fd ed dd& cd& bd& ad& `d& _d2 ^d % ]d \d [d< Zd6 Yd" Xdf Wd& Vd  Ud  Td Sd Rd Qd Pd  Od  Nd Md  Ld Kd Jd Id5 Hd< Gc& Fc  Ec  Dc& Ccj Bc  Ac e form is used in the sense ‘something of little value or significance’, Meaning 2. Notes for Translators: God’s anger is always righteous. It is directed against a person or people who are wrong. It may be translated by the same terms as human anger, unless those terms can only mean sinful anger. Hebraists' Comments: 1. The general view is that Meaning 2 is taken from a homonymous root found in the HB only as nouns. The masculine form קֶצֶף* occurs only at Hos 10:7 (see below), and the feminine form קְצָפָה* only at Jol 1:7, where it has an abstract sense 'snapping, splintering' (BDB) or 'literally snapped, in particular of damage from breaking off twigs or branches' (HALOT).2. The noun in Meaning 1 is used with the verb twice in a cognate accusative construction (Zec 1:2, 15). Comparison of Meanings and Uses: 1 Focus: response; response: anger a Experiencer: God b Experiencer: human2 Other meanings a Something of little value or significance Level 2: 1 Meaning: The emotion of anger Frame for Meaning: Anger Participant Roles for Meaning: Experiencer: GodTarget: human = individual or a nationStimulus: event Level 3: a Context: Of God, the emotion of anger Intrinsic Domains for Meaning:c Apostasy and Judgement, Repentance and Restoration, Opposition to Israel, Eschatological judgement Participant Roles for Meaning:c Experiencer = genitive or implicit: GodTarget = עַל* or implicit: human = individual or a nationStimulus = עַל* or בָּזֹּאת* (twice) or implicit: event Key Reference: _reference_start_Isaiah 60:10_reference_end_ Key Verse: KTBH - Foreigners will rebuild your walls, and their kings will serve you. In my |banger |b*I struck you, but in my favour I have had compassion on you Evaluation of Translations: The translations all use either 'anger' or 'wrath' for קֶצֶף*. Either of these or a synonym is appropriate. _reference_start_Numbers 1:53_reference_end_ _reference_start_Numbers 17:11_reference_end_ _reference_start_Numbers 18:5_reference_end_ _reference_start_Deuteronomy 29:27_reference_end_ _reference_start_Joshua 9:20_reference_end_ _reference_start_Joshua 22:20_reference_end_ _reference_start_2 Kings 3:27_reference_end_ _reference_start_1 Chronicles 27:24_reference_end_ _reference_start_2 Chronicles 19:2_reference_end_ _reference_start_2 Chronicles 19:10_reference_end_ _reference_start_2 Chronicles 24:18_reference_end_ _reference_start_2 Chronicles 29:8_reference_end_ _reference_start_2 Chronicles 32:25_reference_end_ _reference_start_2 Chronicles 32:26_reference_end_ _reference_start_Psalms 38:2_reference_end_ _reference_start_Psalms 102:11_reference_end_ _reference_start_Isaiah 34:2_reference_end_ _reference_start_Isaiah 54:8_reference_end_ _reference_start_Isaiah 60:10_reference_end_ _reference_start_Jeremiah 10:10_reference_end_ _reference_start_Jeremiah 21:5_reference_end_ _reference_start_Jeremiah 32:37_reference_end_ _reference_start_Jeremiah 50:13_reference_end_ _reference_start_Zechariah 1:2_reference_end_ _reference_start_Zechariah 1:15_reference_end_ _reference_start_Zechariah 7:12_reference_end_ Keyword: Cognate Collocating Term: קצף Gloss: to be angry References: _reference_start_Zechariah 1:2_reference_end_ _reference_start_Zechariah 1:15_reference_end_ Keyword: Similar Collocating Term: אַף Gloss: anger References: _reference_start_Deuteronomy 29:27_reference_end_ _reference_start_Jeremiah 21:5_reference_end_ _reference_start_Jeremiah 32:37_reference_end_ Keyword: Similar Collocating Term: חֵמָה Gloss: anger References: _reference_start_Deuteronomy 29:27_reference_end_ _reference_start_Psalms 38:2_reference_end_ _reference_start_Isaiah 34:2_reference_end_ _reference_start_Jeremiah 21:5_reference_end_ _reference_start_Jeremiah 32:37_reference_end_ Keyword: Similar Collocating Term: זַעַם Gloss: anger References: _reference_start_Psalms 102:11_reference_end_ _reference_start_Jeremiah 10:10_reference_end_ Keyword: Opposite Collocating Term: חֶסֶד Gloss: covenant loyalty References: _reference_start_Isaiah 54:8_reference_end_ Keyword: Opposite Collocating Term: רחם Gloss: to have compassion References: _reference_start_Isaiah 54:8_reference_end_ Keyword: Opposite Collocating Term: רָצֹון Gloss: favour, acceptance References: _reference_start_Isaiah 60:10_reference_end_ Level 3: b Context: Of humans, the emotion of anger Intrinsic Domains for Meaning:c Warfare, Futility, Marriage Participant Roles for Meaning:c Experiencer = implicit: humanTarget = עַל* or implicit: human = individual or a nationStimulus = implicit: event Key Reference: _reference_start_Esther 1:18_reference_end_ Key Verse: KTBH - ... and there will be contempt and |banger |b*in plenty Evaluation of Translations: The Hebrew is cryptic, but the meaning is clear. Most translations use either the word 'anger' itself (NJB), 'wrath' (RSV, NRS) or an equivalent verb (CEV, TEV). NIV and REB generalise somewhat by translating as 'discord'. NJPS takes קֶצֶף *to refer to 'provocation', implying 'to anger', rather than to the anger itself and should not be followed.d* _reference_start_2 Kings 3:27_reference_end_ _reference_start_Esther 1:18_reference_end_ _reference_start_Ecclesiastes 5:16_reference_end_ Keyword: Similar Collocating Term: כעס Gloss: to be angry References: _reference_start_Esther 1:18_reference_end_ Keyword: Similar Collocating Term: בִּזָּיֹון Gloss: contempt References: _reference_start_Esther 1:18_reference_end_ Level 2: 2 Meaning: Something of little value, weight or significance, which can be carried away easily by a stream Frame for Meaning: Flowing stream Intrinsic Domains for Meaning: Value Level 3: a Context: Something of little value, weight or significance, which can be carried away easily by a stream Key Reference: _reference_start_Hosea 10:7_reference_end_ Key Verse: KTBH - Samaria and its king will be destroyed like a |btwig |b*on the surface of water Evaluation of Translations: Translations differ somewhat in assessing the syntactic relationships of 'Samaria' and 'its king' but the chosen simile consistently indicates the lightness, insubstantiality and worthlessness of Samaria's king - 'twig' (NIV, CEV), 'chip' (RSV, NRS, TEV), 'flotsam' (REB), 'foam' (NJPS), 'straw' (NJB). _reference_start_Hosea 10:7_reference_end_ Keyword: Note: (a) Unusually, the target is more extensive than the agent of the stimulus. Note: (b) Possibly Note: (c) The presence of גֹויִם* in the parallel colon suggests that 'the earth' is to be understood metonymically for its inhabitants, who shake with fear, rather than apocalyptically of shaking the earth itself. Note: (d) NJPS takes קֶצֶף* to refer to 'provocation', implying provocation to anger, rather than to the anger itself. This would be a causative sense of the noun corresponding to the Hiphil of the verb that is otherwise unattested for the noun. Note: (e) Probably. The Experiencer and even the Target of the anger are far from certain. The commentaries construct scenarios in which they suggest the Stimulus and Experiencer of the anger. For details, see the commentaries, but, in outline, possibilities are:1. Yahweh was angry with Israel for driving Moab to such extreme measures as human sacrifice to Chemosh (KD).2. Israel was angry with (עַל) itself for the same reason and left the battle in disgust (WBC, AB and, among translations, REB, CEV, NJB).3. Moab was stimulated by the sacrifice to great anger and effective warfare (WBC).They are all speculative and none is totally convincing, but KTBH considers that Yahweh as Experiencer is less plausible than one or other of the human Experiencers.Other translations are non-committal and leave the Experiencer vague (NIV, RSV, NRS, NJPS). This may the best solution for translation. Version: 0 Date: 2007-12-21 16:11:33 cjs Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org.ysical shaking or trembling, Meaning 1, and metaphorical or internal shaking as a result of a negative emotion, Meaning 3.3. A second key meaning distinction is between someone or something trembling, for whatever reason, Meanings 1 and 2, and someone making someone or something else tremble, Meanings 3 and 4. 4. There are further distinctions in meaning based on the context and on the cause of the trembling. In some cases there is an associated emotion. The nature of that emotion can be established from the context. Notes for Translators: God’s anger is always righteous. It is directed against a person or people who are wrong. It may be translated by the same terms as human anger, unless those terms can only mean sinful anger. Comparison of Meanings and Uses: Although there is only one instance of literal, physical shaking or trembling (1Sa 14:15), that seems to be the central meaning of the word-group (cf TDOT). Other senses seem to develop from that in various contexts. In the context of theophany, heaven and earth tremble. Elsewhere, human trembling results from intense emotion - fear, anger, grief or excitement. In some cases, there may be associated physical trembling but, in others, that disappears from view and the trembling is metaphorical, internal and emotional. 1 Stem: Qal; agent: none; theme: subject a Theme: inanimate; context: earthquake b Theme: inanimate, but personified; context: theophany2 Stem: Hiphil; agent: subject; theme: object a Agent: God; theme: inanimate, but personified; target: none; context: theophany3 Stem: Qal or Hithpael; agent: none; experiencer: subject a Experiencer: human; target: none; context: fear b Experiencer: human; target: none; context: fear c Experiencer: God; target: human; context: anger d Experiencer: human; target: human or God; context: anger e Experiencer: human; target: none; context: grief f Experiencer: human; target: none; context: excitement 4 Stem: Hiphil or Qal; agent: subject; theme or experiencer: object a Agent: God or human; experiencer: human; target: none; context: fear b Agent: human; experiencer: God; target: human; context: anger c Agent: human; experiencer: human; target: none; context: disturbance Level 2: 1 Meaning: To move back and forth in one place Frame for Meaning: Static motion Verb Stem: Qal Participant Roles for Meaning: Theme: inanimate Level 3: a Context: To move back and forth in one place Frame for Meaning:c Earthquake Intrinsic Domains for Meaning:c Warfare, Miracle, Panic Participant Roles for Meaning:c Theme = subject: the earth Key Reference: _reference_start_1 Samuel 14:15_reference_end_ Key Verse: NIV - Then panic struck the whole army--those in the camp and field, and those in the outposts and raiding parties--and the ground |bshook|b*. It was a panic sent by God Evaluation of Translations: All the standard translations render רגז* by either 'shook' (NIV, TEV) or 'quaked' (RSV, NRS, REB, NJB, NJPS) or 'tremble' (CEV). Any of them would be a good model to follow. _reference_start_1 Samuel 14:15_reference_end_ Keyword: Similar Collocating Term: חֲרָדָה Gloss: trembling References: _reference_start_1 Samuel 14:15_reference_end_ Level 3: b Context: To shake or tremble violently and involuntarily as a result of God's appearing, of the elements personified Frame for Meaning:c Theophany Intrinsic Domains for Meaning:c Deliverance, Judgement Participant Roles for Meaning:c Theme = subject: inanimate but personified Key Reference: _reference_start_Psalms 77:19_reference_end_ Key Verse: KTBH - The sound of your thunder was in the whirlwind; lightning lit up the world; the earth |btrembled |b*and shook Evaluation of Translations: The translations render the synonyms רגז* and רעשׁ* by two from a range of English synonyms 'trembled, shook, quaked, shuddered' in various combinations. These are all good models to follow. CEV appears to have assumed a hendiadys and renders the pair by 'trembled'. This is also a good model to follow. _reference_start_2 Samuel 22:8_reference_end_ _reference_start_P salms 18:8_reference_end_ _reference_start_Psalms 77:17_reference_end_ _reference_start_Psalms 77:19_reference_end_ _reference_start_Isaiah 5:25_reference_end_ _reference_start_Joel 2:10_reference_end_ Keyword: Similar Collocating Term: געשׁ Gloss: to shake References: _reference_start_2 Samuel 22:8_reference_end_ _reference_start_Psalms 18:8_reference_end_ Keyword: Similar Collocating Term: רעשׁ Gloss: to shake References: _reference_start_2 Samuel 22:8_reference_end_ _reference_start_Psalms 18:8_reference_end_ _reference_start_Psalms 77:19_reference_end_ _reference_start_Joel 2:10_reference_end_ Keyword: Similar Collocating Term: חיל Gloss: to writhe References: _reference_start_Psalms 77:17_reference_end_ Level 2: 2 Meaning: To cause something to move back and forth in one place Frame for Meaning: Static motion Verb Stem: Hiphil Participant Roles for Meaning: Agent: God Theme: inanimate Level 3: a Context: Of Yahweh, to cause the (personified) elements to shake or tremble violently Frame for Meaning:c Theophany Intrinsic Domains for Meaning:c Judgement, God's sovereignty Participant Roles for Meaning:c Agent = subject: GodTheme = object: heaven or earth Key Reference: _reference_start_Isaiah 13:13_reference_end_ Key Verse: KTBH - Therefore |bI will make |b*the heavens |btremble |b*and the earth will shake ... Evaluation of Translations: Most render the Hiphil of רגז* by 'I will make ... tremble' (NIV, RSV, NRS, TEV, CEV) or 'I shall make ... shudder' (REB). In NJB 'I am going to shake the heavens', 'shake' is transitive and thus causative. All these convey the causation and the lexemes are good equivalents. Any of them may be followed. NJPS transforms to a passive 'therefore shall heaven be shaken'. Although the unexpressed agent is understood to be Yahweh, there seems no reason to follow this example. _reference_start_Job 9:6_reference_end_ _reference_start_Isaiah 13:13_reference_end_ Keyword: Similar Collocating Term: פלץ Gloss: to shudder References: _reference_start_Job 9 :6_reference_end_ Keyword: Similar Collocating Term: רעשׁ Gloss: to shake References: _reference_start_Isaiah 13:13_reference_end_ Level 2: 3 Meaning: To experience a negative emotion typically associated with shaking (Extension of Meaning 1) Frame for Meaning: Negative emotion Verb Stem: Qal, Hithpael Grammar Notes: The Hithpael occurs only in the parallel passages in 2KI 19:27-28//Isa 37:28-29, which have no parallel in 2 Chronicles. There is insufficient evidence to justify a distinction of meaning, although BDB tries to indicate a reflexive nuance by glossing 'excite oneself', which seems artificial. HALOT makes no attempt to indicate a reflexive nuance, glossing 'to get worked up, be enraged'. Participant Roles for Meaning: Experiencer: God, human or personified inanimate Level 3: a Context: Of people, to experience fear, typically associated with involuntary trembling, as a result of God's activity Frame for Meaning:c Fear Intrinsic Domains for Meaning:c Deliverance, Judgement Participant Roles for Meaning:c Experiencer = subject: human = Israel, individuals or personified inanimate Key Reference: _reference_start_Joel 2:1_reference_end_ Key Verse: KTBH - Sound a trumpet in Zion and raise a war-cry on my holy mountain. Let all who live in the land |btremble |b*for the day of Yahweh is coming, it is near Evaluation of Translations: The standard translations all render רגז* by 'tremble' and this should be followed. It hardly seems necessary to make the fear explicit and none do. _reference_start_Exodus 15:14_reference_end_ _reference_start_Psalms 4:5_reference_end_ _reference_start_Psalms 99:1_reference_end_ _reference_start_Isaiah 32:10_reference_end_ _reference_start_Isaiah 32:11_reference_end_ _reference_start_Isaiah 64:1_reference_end_ _reference_start_Jeremiah 33:9_reference_end_ _reference_start_Joel 2:1_reference_end_ _reference_start_Amos 8:8_reference_end_ _reference_start_Micah 7:17_reference_end_ _reference_start_Habakkuk 3:7_reference_end_ _reference_start_Habakkuk 3:16_reference_ end_ _reference_start_Habakkuk 3:16_reference_end_ Keyword: Similar Collocating Term: חִיל Gloss: writhing, anguish References: _reference_start_Exodus 15:14_reference_end_ Keyword: Similar Collocating Term: נוט Gloss: to shake References: _reference_start_Psalms 99:1_reference_end_ Keyword: Similar Collocating Term: רַעַד Gloss: trembling References: _reference_start_Exodus 15:14_reference_end_ Keyword: Similar Collocating Term: חרד Gloss: to tremble with fear References: _reference_start_Isaiah 32:11_reference_end_ Keyword: Similar Collocating Term: צלל Gloss: to quiver in terror References: _reference_start_Habakkuk 3:16_reference_end_ Keyword: Similar Collocating Term: בהל Gloss: to be terrified References: _reference_start_Exodus 15:14_reference_end_ Keyword: Similar Collocating Term: אֵימָה Gloss: terror References: _reference_start_Exodus 15:14_reference_end_ Keyword: Similar Collocating Term: פחד Gloss: to fear References: _reference_start_Jeremiah 33:9_reference_end_ _reference_start_Micah 7:17_reference_end_ Keyword: Similar Collocating Term: פַּחַד Gloss: fear References: _reference_start_Exodus 15:14_reference_end_ Keyword: Similar Collocating Term: ירא Gloss: to fear References: _reference_start_Micah 7:17_reference_end_ Level 3: b Context: Of people or the (personified) earth, to experience fear, typically associated with involuntary trembling, as a result of an unnerving experience Frame for Meaning:c Fear Intrinsic Domains for Meaning:c Oppression, Wickedness Participant Roles for Meaning:c Experiencer = subject: human = Israel, individuals Key Reference: _reference_start_2 Samuel 7:10_reference_end_ Key Verse: KTBH - I will appoint a place for my people Israel ... so that they will no longer |btremble with fear |b*and violent people will no longer oppress them as before Evaluation of Translations: Only CEV and NJPS render רגז* by 'tremble' and only CEV makes the fear explicit. If the receptor language can convey the idea, this model should be followed. Most English translations use 'be disturbed' (NIV, RSV, NRS, REB, NJB). This is adequate, but is weaker than the original. _reference_start_Deuteronomy 2:25_reference_end_ _reference_start_2 Samuel 7:10_reference_end_ _reference_start_1 Chronicles 17:9_reference_end_ _reference_start_Proverbs 30:21_reference_end_ Keyword: Similar Collocating Term: חיל Gloss: to writhe, to be in anguish References: _reference_start_Deuteronomy 2:25_reference_end_ Keyword: Similar Collocating Term: יִרְאָה Gloss: fear References: _reference_start_Deuteronomy 2:25_reference_end_ Keyword: Similar Collocating Term: פַּחַד Gloss: fear References: _reference_start_Deuteronomy 2:25_reference_end_ Level 3: c Context: Of God, to experience the emotion of anger, typically associated with involuntary trembling Frame for Meaning:c Anger Intrinsic Domains for Meaning:c Judgement Participant Roles for Meaning:c Experiencer = subject: GodTarget = implicit: Israel Key Reference: _reference_start_Isaiah 28:21_reference_end_ Key Verse: KTBH - Yahweh will rise up as at Mount Perazim; as in the Valley of Gibeon |bhe will be enraged|b* ... Evaluation of Translations: The translations show considerable variation in this verse because the cause of any trembling is far from clear. Some make a nuance of anger explicit 'be wroth' (RSV), 'rage' (NRS), 'storm with rage' (REB). NJB 'he will storm' probably also conveys a nuance of anger. Except for RSV which is archaic, these may be followed.'Rouse himself' (NIV, NJPS) provides a good parallel for קום* in the first colon, but does not correspond well to רגז*. Some expression of Yahweh's attitude is needed. TEV and CEV collapse the two cola into one and have no direct equivalent to רגז* and also lack the nuance of anger. _reference_start_Isaiah 28:21_reference_end_ Keyword: Similar Collocating Term: קום Gloss: to arise References: _reference_start_Isaiah 28:21_reference_end_ Level 3: d Context: Of humans, to experience the emotion of anger, typically associated with involuntary trembling Frame for Meaning:c Anger Intrinsic Domains for Meaning:c Family, Folly, Enmity Participant Roles for Meaning:c Experiencer = subject or genitive: humanTarget = אֶל* or implicit: God or human Key Reference: _reference_start_Psalms 4:5_reference_end_ Key Verse: KTBH - |bBe angry|b*, but do not sin... Evaluation of Translations: The translations show great variation in this verse because the cause of any trembling is far from clear. LXX renders רגז* by ὀργίζω*, and this is taken up in the NT which quotes this verse at Eph 4:26. This may have influenced NIV and RSV who translate 'in your anger' and 'be angry' respectively. These models may be followed.REB 'let awe restrain you from sin' and TEV 'tremble with fear' understand the context to be 'fear', probably implicitly, fear of God. This also may be followed.CEV and NJPS 'tremble' leave the cause ambiguous. This is a legitimate option if the translation style does not try to spell out implied information. _reference_start_Genesis 45:24_reference_end_ _reference_start_2 Kings 19:27_reference_end_ _reference_start_2 Kings 19:28_reference_end_ _reference_start_Psalms 4:5_reference_end_ _reference_start_Proverbs 29:9_reference_end_ _reference_start_Isaiah 37:28_reference_end_ _reference_start_Isaiah 37:29_reference_end_ Keyword: Similar Collocating Term: שַׁאֲנָן Gloss: arrogance References: _reference_start_2 Kings 19:28_reference_end_ _reference_start_Isaiah 37:29_reference_end_ Keyword: Similar Collocating Term: שׂחק Gloss: to laugh in derision References: _reference_start_Proverbs 29:9_reference_end_ Keyword: Opposite Collocating Term: נַחַת Gloss: quietness References: _reference_start_Proverbs 29:9_reference_end_ Level 3: e Context: To experience sorrow or grief, typically associated with involuntary trembling Frame for Meaning:c Grief Intrinsic Domains for Meaning:c Death Participant Roles for Meaning:c Experiencer = subject: human Key Reference: _reference_start_2 Samuel 19:1_reference_end_ Key Verse: KTBH - The king |bwas trembling with grief |b*and he went up to the room ... Evaluation of Translations: The context is clearly one of grief, but translations differ in whether they focus on the trembling, either physical or internal, or on the grief. Thus TEV makes the grief explicit 'was overcome with grief' but at the expense of any nuance of motion, whereas CEV 'started trembling' does not make clear that the trembling arises from emotion and, in English, trembling is not conventionally associated with grief. RSV, NRS and REB render 'was deeply moved'. This is a good model to follow, because it conveys the nuance of motion present in the Hebrew imagery, makes clear that the motion is internal and emotional and allows the contest to make clear that the emotion is grief. It is better than 'was shaken' (NIV, NJPS) which is less clearly arising from emotion. _reference_start_2 Samuel 19:1_reference_end_ Keyword: Similar Collocating Term: בכה Gloss: to weep References: _reference_start_2 Samuel 19:1_reference_end_ Keyword: Similar Collocating Term: אבל Gloss: to mourn References: _reference_start_2 Samuel 19:1_reference_end_ Level 3: f Context: To experience excitement, typically associated with involuntary trembling Frame for Meaning:c Excitement Intrinsic Domains for Meaning:c Sheol, Judgement Participant Roles for Meaning:c Experiencer = subject: the inhabitants of Sheol Key Reference: _reference_start_Isaiah 14:9_reference_end_ Key Verse: Sheol beneath |bis excited |b*to meet you ... (KTBH) Evaluation of Translations: The irony of this passage is that the King of Babylon has become just like the shades in Sheol, and they are excited at the prospect of gloating over the one who oppressed them in life. Most render רגז* in a way that conveys that excitement, 'all astir' (NIV, REB), 'stirred up' (RSV, NRS). These models may be followed. Even CEV 'eagerly awaits' which renders four words in the Hebrew conveys the excitement. TEV 'getting ready' is weak and loses the sense of excitement, so it should not be followed. _reference_start_Isaiah 14:9_reference_end_ Keyword: Similar Collocating Term: עור Gloss: to rouse References: _reference_start_Isaiah 14:9_reference_end_ Keyword: Similar Collocating Term: קום Gloss: to make rise References: _reference_start_Isaiah 14:9_reference_end_ Level 2: 4 Meaning: To cause someone to experience a negative emotion typically associated with shaking (Extension of Meaning 2) Frame for Meaning: Negative emotion Verb Stem: Qalh* and Hiphil Participant Roles for Meaning: Agent: God or human Experiencer: God, human or inanimate Level 3: a Context: To cause someone to experience fear, typically associated with involuntary trembling, as a result of an unnerving experience Frame for Meaning:c Fear Intrinsic Domains for Meaning:c Judgement Participant Roles for Meaning:c Agent = subject: God or human Experiencer = object: human Key Reference: _reference_start_Isaiah 23:11_reference_end_ Key Verse: KTBH - He has stretched out his hand over the sea and |bmade |b*kingdoms |btremble|b* Evaluation of Translations: NIV renders the Hiphil of רגז by 'he has made ... tremble' and others are similar 'made ... quake' (REB, NJPS). In 'he has shaken' (RSV, NRS, NJB) 'shake' is transitive and thus causative. All these convey the causation and the lexemes are good equivalents. Any of them may be followed. CEV 'upsetting the nations' seems rather weak in the context, and TEV '... overthrown kingdoms' moves the focus away from the kingdom's fear to a later stage in Yahweh's activity. Neither should be followed. _reference_start_Isaiah 14:16_reference_end_ _reference_start_Isaiah 23:11_reference_end_ _reference_start_Jeremiah 50:34_reference_end_ Keyword: Similar Collocating Term: רעשׁ Gloss: to shake References: _reference_start_Isaiah 14:16_reference_end_ Keyword: Opposite Collocating Term: רגע Gloss: to give rest References: _reference_start_Jeremiah 50:34_reference_end_ Level 3: b Context: To cause someone to experience the emotion of anger, associated with involuntary trembling Frame for Meaning:c Anger Intrinsic Domains for Meaning:c Apostasy, Judgement Participant Roles for Meaning:c Agent = implicit: human Experiencer = object or לְ: God Key Reference: _reference_start_Ezekiel 16:43_reference_end_ Key Verse: KTBH - Because you did not remember the days of your youth but |byou made |b*me |bangry |b*by all these things ... Evaluation of Translations: Any of the various translations may be followed: 'enrage' (NIV, RSV, NRS, REB), 'provoke' (NJB), infuriate (NJPS), 'make ... angry' (TEV), 'make ... furious' (CEV). Even if the emendation to the Hiphil is not accepted,h* the context demands a causative and all these renderings convey it. _reference_start_Job 12:6_reference_end_ _reference_start_Ezekiel 16:43_reference_end_ Keyword: Similar Collocating Term: שׁדד Gloss: to despoil References: _reference_start_Job 12:6_reference_end_ Level 3: c Context: To cause someone to become disturbed, typically associated with involuntary trembling Frame for Meaning:c Excitement Intrinsic Domains for Meaning:c Necromancy Participant Roles for Meaning:c Agent = implicit: human = Saul Experiencer = object: human = Samuel Key Reference: _reference_start_1 Samuel 28:15_reference_end_ Key Verse: KTBH - Samuel said to Saul, 'why |bhave you disturbed |b*me by bringing me up' ... Evaluation of Translations: Most of the standard translations use 'disturbed' and that may be followed. _reference_start_1 Samuel 28:15_reference_end_ Keyword: Note: (a) Possibly Note: (b) The preposition מִן 'from their strongholds' suggests that there is movement from a place as well as movement at a place. מִן is common in pregnant expressions (cf GKC 119.x-z) so BDB and HALOT gloss as 'come quivering' and 'to come out quaking with fear' respectively. NICOT takes the phrase after the athnah 'to Yahweh our God' with what precedes 'May they come quaking out of their strongholds to Yahweh our God', but that is not necessary. Note: (c) Assuming that 'the tent-curtains of the land of Midian' is metonymy for the people of Midian (cf NICOT). Note: (d) Most translations and some commentaries (AB, HBK, but not NICOT) emend the following word to אֲשֻׁרָי ’my steps trembled beneath me‘ with the support of LXX. This would imply Meaning 1a, but MT is intelligible if אֲשֵׁר is taken as causal (cf NICOT) and should be retained. Note: (e) Commentators suggest humour or whimsy, here. 'The earth trembles under three things' may be hyperbole, but, as WBC notes, social cataclysm is sometimes associated with physical disturbance as in Amo 7:10 and 1Sa 2:10. Note: (f) TWOT notes that 'Occasionally its meaning may be difficult to discern. In Gen 45:24 it is usually translated as some kind of arguing or bickering (RSV "quarrel"; ASV, KJV "fall out") following the idea of raging in anger noted above, but this translation is not certain.' Speiser (AB 1982, 339), followed by Hamilton (NICOT) suggests 'let there be no recriminations on the way' which seems to catch the potential very well. Note: (g) Probably. BHS proposes major reordering of MT, but LXX supports MT, which should be retained. In that case, the options for the first two words appear to be 'tremble [with fear of God], so don't sin' or 'tremble [with anger], but don't sin'. Commentators and translations are divided. Note: (h) The only instance where the Qal of רגז is transitive is at Ezk 16:43, where the ancient versions appear to have read the vowels for the Hiphil. There is widespread agreement (BHS, BDB, HALOT, NICOT, WBC) that it should be repointed, though Greenberg retains the Qal and proposes that the negative particle in the preceding clause does double duty, 'you were not in dread of me' (AB 1983 1.288). Version: 0 Date: 2007-12-27 11:38:44 cjs Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org. 6e33eto tremble (רגז)to tremble (רגז)Strong's number: 07264 Part of speech: v Frequency: 41 Cognate(s): אַרְגַּז, רַגָּז, רֹגֶז, רָגְזָה Abstract for Busy Translators: 1. Although there are only few instances of literal, physical shaking or trembling, that seems to be the central meaning of the word-group. Other senses seem to develop from that in various contexts and the trembling may be metaphorical, internal or emotional.2. The main meaning distinction is between that literal, ph ?tfXJ<. xj\N@2$|n`RD6( Be  Ae  @e  ?e >e =e% <e  ;e% :e% 9e 8e 7e  6e  5e- 4e 3e 2e 1e 0e /e .e -e ,e  +e  *e )e  (e! 'e &e! %e! $e #e "e# !e e ec e e# e# e# e! e e e! e@ e e ec e e e e e  e e  e eM e eM e e  e e  ?tfXJ<. xj\N@2$|n`RD6( i i i ~i }i |i {i zi yi xi wi vi uh  th  sh  rh  qh  pg og ng mg lg kg jg ig hg gg fg eg# dg# cg# bg' ag' `g' _g% ^g% ]g% \g% [g% Zg% YfA XfA WfA VfA UfA TfA Se  Re  Qe  Pe+ Oe  Ne+ Me2" Le Ke2" Je Ie He Ge Fe Ee De Ce  with shaking Frame for Meaning: Negative emotion Participant Roles for Meaning: Experiencer: human Level 3: a Context: The experience of sorrow or grief, typically associated with involuntary trembling Frame for Meaning:c Grief Intrinsic Domains for Meaning:c Exile Participant Roles for Meaning:c Experiencer = implicit: human = Israel in exile Meaning Comments:c There would be a complex mixture of emotions to be experienced by Israel in exile. KTBH suggests that grief might predominate. Key Reference: _reference_start_Deuteronomy 28:65_reference_end_ Key Verse: KTBH - ... There Yahweh will give you a |btrembling |b*heart, failing eyes and a despairing spirit Evaluation of Translations: Some translations preserve the metaphor 'trembling' (RSV, NRS), 'quaking' (NJB). This works well in English and has the additional advantage that it leaves unspecified the precise emotion to be experienced by Israel in exile. NJPS conveys the intensity of the emotion, using 'anguished', while others specify it 'anxious' (NIV, similarly TEV), unquiet (REB). Since it is hard to be precise about the nature of the emotion, any of these may be followed. _reference_start_Deuteronomy 28:65_reference_end_ Keyword: Similar Collocating Term: כִּלָּיֹון Gloss: failing [of eyes] References: _reference_start_Deuteronomy 28:65_reference_end_ Keyword: Similar Collocating Term: דְּאָבֹון Gloss: faintness, languishing, languishing, despair References: _reference_start_Deuteronomy 28:65_reference_end_ Keyword: Opposite Collocating Term: רגע Gloss: to be at rest, repose, get some peace, stay, linger References: _reference_start_Deuteronomy 28:65_reference_end_ Keyword: Opposite Collocating Term: מָנֹחַ Gloss: resting-place References: _reference_start_Deuteronomy 28:65_reference_end_ Version: 0 Date: 2007-12-27 11:24:37 cjs Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org. ofWWCftrembling [with grief] (רַגָּז)trembling [with grief] (רַגָּז)Strong's number: 07268 Part of speech: a Frequency: 1 Cognate(s): רגז Abstract for Busy Translators: The analysis assumes that this adjective had a similar range of uses to the verb but that the one instance is in the context of grief. Comparison of Meanings and Uses: Participant role: experiencer: a Experiencer: human; context: grief Level 2: 1 Meaning: The experience of a negative emotion typically associated!ranslators: God’s anger is always righteous. It is directed against a person or people who are wrong. It may be translated by the same terms as human anger, unless those terms can only mean sinful anger. Variant Spelling(s):int This form of the root is particularly difficult to classify and the scheme below should be taken as tentative. If the root is accepted as meaning 'to tremble' then that sense can be detected in some cases, but is largely absent for others. Thus a war-horse may tremble with excitement when held back before battle, but in Contextual Use (d) the sense has been lost, as with the English words 'agitation, disturbance, turmoil'. Comparison of Meanings and Uses: 1 Agent: none; theme: a Theme: inanimate, but personified; target: none; context: theophany b Theme: animal; target: none; context: excitement 2 Agent: none; experiencer: a Experiencer: God; target: human; context: anger b Experiencer: human; target: none; context: adverse circumstances Level 2: 1 Meaning: Movement back and fo"rth in one place Frame for Meaning: Static motion Participant Roles for Meaning: Theme: animal or inanimate but personifieda* Level 3: a Context: Shaking or trembling violently and involuntarily as a result of God's appearing, of the elements personifieda* Frame for Meaning:c Theophany Participant Roles for Meaning:c Theme = implicit: inanimate but personifieda* Key Reference: _reference_start_Job 37:2_reference_end_ Key Verse: KTBH - Listen carefully to the |bthunder |b*of his voice and the rumbling that comes from his mouth Evaluation of Translations: The reference in context is clearly to thunder as one aspect of a theophany. Most versions make that explicit (RSV, NRS, REB, TEV, CEV), either in the first colon for רֹגֶז* or in the second for הֶגֶה*. Most also try to express the imagery in which the thunder is presented as God speaking by retaining 'voice' for קֹל*. NIV, NJB and NJPS all make the thunder explicit in 36:33 so do not need to repeat this in 37:2. They render רֹגֶז* by '#roar', 'blast' and 'rumbling' respectively. _reference_start_Job 37:2_reference_end_ Keyword: Similar_Term Collocating Term: רֵעַ Gloss: roar [of thunder] References: _reference_start_Job 37:2_reference_end_ Keyword: Similar_Term Collocating Term: הֶגֶה Gloss: rumbling [of thunder] References: _reference_start_Job 37:2_reference_end_ Keyword: Similar_Term Collocating Term: שׁאג Gloss: to roar References: _reference_start_Job 37:2_reference_end_ Keyword: Similar_Term Collocating Term: רעם Gloss: to thunder References: _reference_start_Job 37:2_reference_end_ Level 3: b Context: Shaking or trembling violently and involuntarily as a result of excitement Frame for Meaning:c Excitement Intrinsic Domains for Meaning:c Battle Participant Roles for Meaning:c Theme: war-horse Key Reference: _reference_start_Job 39:24_reference_end_ Key Verse: KTBH - Shaking and |btrembling|b*, it paws the ground Evaluation of Translations: Some translations bring out well the eagerness or excitement of the horse (R$EB, TEV, CEV, NJB, NJPS). These are good models to follow. NIV assumes a hendiadys 'in frenzied excitement'. This may also be followed. RSV and NRS use 'rage' which is appropriate of a human, but hardly of a horse. _reference_start_Job 39:24_reference_end_ Keyword: Similar Collocating Term: רַעַשׁ Gloss: shaking References: _reference_start_Job 39:24_reference_end_ Level 2: 2 Meaning: The experience of a negative emotion typically associated with shaking (Extension of Meaning 1) Frame for Meaning: Negative emotion Participant Roles for Meaning: Theme: human Level 3: a Context: Of God, the experience of anger, typically associated with involuntary trembling Frame for Meaning:c Anger Intrinsic Domains for Meaning:c Apostasy and Judgement, Repentance and Restoration Participant Roles for Meaning:c Experiencer = implicit: God Key Reference: _reference_start_Habakkuk 3:2_reference_end_ Key Verse: KTBH - ... in |banger|b*, remember mercy Evaluation of Translations: Most use 'wrath' (NIV, RSV, NRS, REB, %NJB) or 'anger' (CEV, similarly TEV, NJPS). Either would be a good model to follow. _reference_start_Habakkuk 3:2_reference_end_ Keyword: Opposite Collocating Term: רחם Gloss: to have compassion References: _reference_start_Habakkuk 3:2_reference_end_ Level 3: b Context: Negative emotion, associated with inward shaking, as a result of adverse external circumstances Frame for Meaning:c Trouble Participant Roles for Meaning:c Experiencer = implicit or genitive: human Key Reference: _reference_start_Job 3:26_reference_end_ Key Verse: NIV - I have no peace, no quietness; I have no rest, but only |bturmoil|b* Evaluation of Translations: Most use 'trouble' (RSV, NRS, REB, NJPS) or 'troubles' (TEV, CEV). This is an acceptable model to follow but NIV 'turmoil' catches a nuance of metaphorical movement probably present in the Hebrew. NJB 'torments' seems hard to justify. _reference_start_Job 3:17_reference_end_ _reference_start_Job 3:26_reference_end_ _reference_start_Job 14:1_reference_end_ _reference_start_Is&aiah 14:3_reference_end_ Keyword: Similar Collocating Term: עֹצֶב Gloss: pain References: _reference_start_Isaiah 14:3_reference_end_ Keyword: Similar Collocating Term: עֲבֹודָה Gloss: labour References: _reference_start_Isaiah 14:3_reference_end_ Keyword: Opposite Collocating Term: נוח Gloss: to be at rest, to give rest References: _reference_start_Job 3:17_reference_end_ _reference_start_Isaiah 14:3_reference_end_ Keyword: Opposite Collocating Term: שׁלו Gloss: to be at ease References: _reference_start_Job 3:26_reference_end_ Keyword: Opposite Collocating Term: שׁקט Gloss: to be undisturbed References: _reference_start_Job 3:26_reference_end_ Note: (a) The participant roles are assigned assuming that the 'hearer' feels the shaking of the earth which results from God speaking. Note: (b) Most translations and commentaries support KTBH. There are however minority reports. NICOT notes that 'the word indicates a condition of agitation, excitement, or disturbance' and translates 'in (the time of ) trembling, remember mercy'. AB sees a reference to the trembling of the prophet as in v. 16 where the cognate verb is used. Note: (c) KTBH considers that the trembling in view here is that which results from adverse external circumstances. The theme in this speech of Job is the levelling effect of death, so that even the wicked gain rest from trouble. This understanding is shared by NICOT, 'In Sheol there is no turmoil ... to make one weary, not even for the wicked'.The alternative is expressed by WBC 'their raging' and TOTC '... from troubling others' (following RSV) taking רֹגֶז* to refer to the rage and malice of the wicked, so that Job is looking for rest in Sheol from that rage. This is possible but fits less well with the overall thrust of the speech. Version: 0 Date: 2007-12-27 11:40:54 cjs Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org. FnhYY=htrembling [with fear] (רָגְזָה)trembling [with fear] (רָגְזָה)Strong's number: (gKK)gtrembling, shaking (רֹגֶז)trembling, shaking (רֹגֶז)Strong's number: 07267 Part of speech: ncm Frequency: 7 Cognate(s): רגז Abstract for Busy Translators: 1. This form of the root is particularly difficult to classify and the scheme below should be taken as tentative.2. The main meaning distinction is between literal, physical shaking or trembling, Meaning 1, and metaphorical or internal shaking as a result of a negative emotion, Meaning 2.3. There are further distinctions in meaning based on the context and on the cause of the trembling. In some cases there is an associated emotion. The nature of that emotion can be established from the context. Notes for T )07269 Part of speech: ncf Frequency: 1 Cognate(s): רגז Abstract for Busy Translators: The analysis assumes that this noun had a similar range of uses to the verb but that the one instance is in the context of fear. Comparison of Meanings and Uses: Participant role: experiencer: a Experiencer: human; context: fear Level 2: 1 Meaning: The experience of a negative emotion typically associated with shaking Frame for Meaning: Negative emotion Participant Roles for Meaning: Experiencer: human Level 3: a Context: The experience of fear, typically associated with involuntary trembling, as a result of an unnerving experience Frame for Meaning:c Fear Intrinsic Domains for Meaning:c Judgement Participant Roles for Meaning:c Experiencer = implicit: human = Ezekiel Key Reference: _reference_start_Ezekiel 12:18_reference_end_ Key Verse: NJPS - ... eat your bread in trembling and drink your water in |bfear |b*and anxiety Evaluation of Translations: There are three key words in the verse, at least one of which should be translated in such a way as to convey the fear that Ezekiel should share with 'the people of the land' (cf v 19b). Most do this in a variety of ways, except for NJB whose 'apprehensively' is weak. _reference_start_Ezekiel 12:18_reference_end_ Keyword: Similar Collocating Term: רַעַשׁ Gloss: quaking, shaking References: _reference_start_Ezekiel 12:18_reference_end_ Keyword: Similar Collocating Term: דְּאָגָה Gloss: anxiety, anxious care, worry, concern References: _reference_start_Ezekiel 12:18_reference_end_ Keyword: Similar Collocating Term: שִׁמָּמֹון Gloss: horror, shuddering References: _reference_start_Ezekiel 12:18_reference_end_ Version: 0 Date: 2007-12-27 11:37:57 cjs Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org.+mains that have not been thoroughly analyzed. Meaning 1.The basic event of a person taking an item as a security or pledge for a loan or debt Meaning 2. The event of acting wickedlyMeaning 3. The event of destroying thingsMeaning 4. Extension of meaning 3 Meaning 5. The event of a woman labouring to give birth to a child. One occurrence in this meaning category is metaphorical in nature. Level 2: 1 Meaning: To take an item as a security or pledge for a loan or debt Frame for Meaning: Commercial Transaction: loan Verb Stem: Qal Participant Roles for Meaning: Agent (Creditor): human Patient: human, animal or thing Source (Debtor): human Level 3: a Context: To take an item as a security or pledge for a loan or debt Intrinsic Domains for Meaning:c Pledge Participant Roles for Meaning:c Agent (Creditor) = agent: human Patient = object: human, animal or thing Source (Debtor) = object or genitive: human Key Reference: _reference_start_Exodus 22:25_reference_end_ Key Verse: If you |btake ,|b*your neighbor’s garment |bin pledge|b*, you must return it to him before the sun sets; (NJPS) Evaluation of Translations: This is an acceptable translation and a similar translation is used in several versions (NJB, RSV, NIV, TEV). Other translations substitute a more modern term 'in pawn' (NRS, REB) or a more explanatory phrase is used, 'as security for a loan' (CEV). In some cultures, longer explanatory phrases will be necessary due to the lack of specific terms for this kind of a commercial transaction. _reference_start_Exodus 22:25_reference_end_ _reference_start_Exodus 22:25_reference_end_ _reference_start_Deuteronomy 24:6_reference_end_ _reference_start_Deuteronomy 24:6_reference_end_ _reference_start_Deuteronomy 24:17_reference_end_ _reference_start_Job 22:6_reference_end_ _reference_start_Job 24:3_reference_end_ _reference_start_Job 24:9_reference_end_ _reference_start_Proverbs 20:16_reference_end_ _reference_start_Proverbs 27:13_reference_end_ _reference_start_Ezekiel 18:16_reference_end_ _r-eference_start_Amos 2:8_reference_end_ \level1 2 Keyword: Similar Collocating Term: נהג Gloss: to lead References: _reference_start_Job 24:3_reference_end_ Keyword: Similar Collocating Term: ערב Gloss: to pledge References: _reference_start_Proverbs 20:16_reference_end_ _reference_start_Proverbs 27:13_reference_end_ Keyword: Opposite Collocating Term: שׁוב Gloss: to return References: _reference_start_Exodus 22:25_reference_end_ Level 2: 2 Meaning: Other meanings Verb Stem: Qal Level 3: a Context: To act wickedly _reference_start_Nehemiah 1:7_reference_end_ _reference_start_Nehemiah 1:7_reference_end_ _reference_start_Job 34:31_reference_end_ \level1 3 Keyword: Level 2: 3 Meaning: Other meanings Verb Stem: Niphal; Piel; Pual Level 3: a Context: To destroy _reference_start_Proverbs 13:13_reference_end_ _reference_start_Ecclesiastes 5:5_reference_end_ _reference_start_Song of Solomon 2:15_reference_end_ _reference_start_Isaiah 10:27_reference_end_ _reference_start_Isaiah 13:5_reference_end_ _reference_start_Isaiah 32:7_reference_end_ _reference_start_Isaiah 54:16_reference_end_ _reference_start_Micah 2:10_reference_end_ Keyword: Level 2: 4 Meaning: Other meanings Verb Stem: Pual Level 3: a Context: To be discouraged (metaphorical extension of Meaning 3) _reference_start_Job 17:1_reference_end_ \level1 4 Keyword: Level 2: 5 Meaning: Other meanings Frame for Meaning: Childbirth Intrinsic Domains for Meaning: Childbirth; Verb Stem: Piel Level 3: a Context: To labour as a woman in child-birth _reference_start_Psalms 7:15_reference_end_ _reference_start_Song of Solomon 8:5_reference_end_ _reference_start_Song of Solomon 8:5_reference_end_ \level1 5 Keyword: Note: (a) There are several textual problems in this verse that affect the translation and interpretation of חבל*. Version: 4 Date: 2007-06-26 10:21:05 Wade Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org. VVgj11jto borrow (לוה)to borrow (לוה)\level1 1 Strong's number: 3867 Part of speech: v Frequen0#iEEOito take as a pledge (חבל)to take as a pledge (חבל)\level1 1 Strong's number: 2254 Part of speech: v Frequency: 27 Cognate(s): חֶבֶל[1], חֹבֵל, חִבֵּל, חֹבְלִים Abstract for Busy Translators: 1. In the sense 'to takes as a pledge' the verb חבל *is used to refer to an event in which a person takes an item as a security or pledge for a loan or debt.2. The one taking the item as a pledge was expected to show mercy to the poor.3. Standard lexicons list up to three different roots for the verb חבל. Other meanings of the verb that are not related to the Commercial Transaction frame are listed in Meanings 2-5. Comparison of Meanings and Uses: Meaning 1 is the only meaning relevant for the Commercial Transaction frame. Meanings 2-5 are other meanings from a variety of do* ?tfXJ<. xj\N@2$|n`RD6( @k ?k >k0 =j <j& ;j " :j2 9j8 8j8 7j 6jS 5j  4j 3j 2j" 1j 0j /j .j -jp ,j% +j *j )j (jp 'j% &j, %j, $j #j "j !j% j% j j% j j j j j% j j j i i i i i! i6 i  i  i  i i i i" i i i i i i i1cy: 26 Cognate(s): לִוְיָה, לִוְיָתָן, לֹיָה Abstract for Busy Translators: 1. The verb לוה* 'to borrow' is used to refer to the event of borrowing something from someone. 2. A second Meaning, 'to lend', views the same event from the perspective of the person from whom the item is borrowed. 3. In addition, the root may refer to an event of joining one thing or person to another or the event of accompanying something. In standard lexicons these two meanings are generally listed as being from a separate root. Comparison of Meanings and Uses: Meaning 1. Stem: Qal Perspective: borrower Recipient (Borrower): human Frame: commercial transaction: loan Meaning 2. Stem: Hiphil Perspective: lender Recipient (Borrower): human, nation, God Frame: commercial translation: loan Meaning 3. Stem: Niphal Frame: Other: the event of joining one thing or person to another in a type of associationMeaning 4. Stem: Qal Frame: Other: the event of accompanying Level 2: 1 Meaning: To borrow something 2from someone; To temporarily acquire an item from another person with the intent of returning the item. Frame for Meaning: Commercial Transaction: loan Verb Stem: Qal Participant Roles for Meaning: Agent (Borrower): human Patient (Item): money or other valued item Level 3: a Context: To borrow something from someone; To temporarily acquire an item from another person with the intent of returning the item. Intrinsic Domains for Meaning:c Various (according to the item borrowed) Participant Roles for Meaning:c Agent (Borrower) = subject: human Patient = object: money or other valued item Key Reference: _reference_start_Nehemiah 5:4_reference_end_ Key Verse: And there were those who said, “|bWe are having to borrow |b*money on our fields and vineyards to pay the king's tax. (NRS) Evaluation of Translations: The NRS is an acceptable translation. All versions consulted used a form of 'borrow'. _reference_start_Deuteronomy 28:12_reference_end_ _reference_start_Nehemiah 5:4_reference_end_ _reference_start_Ps3alms 37:21_reference_end_ _reference_start_Proverbs 22:7_reference_end_ _reference_start_Isaiah 24:2_reference_end_ Keyword: Agent_focus Gloss: borrower References: _reference_start_Proverbs 22:7_reference_end_ _reference_start_Isaiah 24:2_reference_end_ Keyword: Opposite Collocating Term: חנן Gloss: to be generous References: _reference_start_Psalms 37:21_reference_end_ Keyword: Opposite Collocating Term: נשׁה Gloss: to be a creditor References: _reference_start_Isaiah 24:2_reference_end_ Keyword: Opposite Collocating Term: נתן Gloss: to give References: _reference_start_Psalms 37:21_reference_end_ Keyword: Opposite Collocating Term: שׁלם Gloss: to repay References: _reference_start_Psalms 37:21_reference_end_ Level 2: 2 Meaning: To lend something to someone; To temporarily give an item to another person with the expectation that it will be returned Frame for Meaning: Commercial Transaction: loan Verb Stem: Hiphil Grammar Notes: As with many Hiphil verbs, a double accusative may be used. On4e accusative identifies the recipient of the loan and the other accusative is the item loaned. Participant Roles for Meaning: Agent (Lender): human, nation Recipient (Borrower): human, nation, God Patient (Item): money or other valued item Level 3: a Context: To lend something to someone; To temporarily give an item to another person with the expectation that it will be returned Intrinsic Domains for Meaning:c Various (according to the item being loaned) Participant Roles for Meaning:c Agent (Lender) = subject: human, nation Recipient (Borrower) = object: human, nation, God Patient (Item) = object: money or other valued item Key Reference: _reference_start_Exodus 22:24_reference_end_ Key Verse: If you |blend |b*money to my people, to the poor among you, you shall not deal with them as a creditor; you shall not exact interest from them. (NRS) Evaluation of Translations: This is an acceptable translation that was used by all translations examined with the exception of REB, which used 'advance'. _refe5rence_start_Exodus 22:24_reference_end_ _reference_start_Deuteronomy 28:12_reference_end_ _reference_start_Deuteronomy 28:44_reference_end_ _reference_start_Deuteronomy 28:44_reference_end_ _reference_start_Psalms 37:26_reference_end_ _reference_start_Psalms 112:5_reference_end_ _reference_start_Proverbs 19:17_reference_end_ _reference_start_Proverbs 22:7_reference_end_ _reference_start_Isaiah 24:2_reference_end_ Keyword: Similar Collocating Term: חנן Gloss: to be generous References: _reference_start_Psalms 37:26_reference_end_ _reference_start_Psalms 112:5_reference_end_ _reference_start_Proverbs 19:17_reference_end_ Keyword: Similar Collocating Term: נשׁה Gloss: to be a creditor References: _reference_start_Exodus 22:24_reference_end_ _reference_start_Isaiah 24:2_reference_end_ Keyword: Opposite Collocating Term: שׁלם Gloss: to repay References: _reference_start_Proverbs 19:17_reference_end_ Level 2: 3 Meaning: Other meanings Verb Stem: Niphal Level 3: a Context: To join one thing or person to another (in a type of association) _reference_start_Genesis 29:34_reference_end_ _reference_start_Numbers 18:2_reference_end_ _reference_start_Numbers 18:4_reference_end_ _reference_start_Esther 9:27_reference_end_ _reference_start_Psalms 83:9_reference_end_ _reference_start_Isaiah 14:1_reference_end_ _reference_start_Isaiah 56:3_reference_end_ _reference_start_Isaiah 56:6_reference_end_ _reference_start_Jeremiah 50:5_reference_end_ _reference_start_Daniel 11:34_reference_end_ _reference_start_Zechariah 2:15_reference_end_ Keyword: Level 2: 4 Meaning: Other meanings Verb Stem: Qal Level 3: a Context: To accompany _reference_start_Ecclesiastes 8:15_reference_end_ Keyword: Version: 4 Date: 2007-06-26 10:23:10 Wade Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org.7, the verb can refer to an internal change of nature in an item. Comparison of Meanings and Uses: Meaning 1 refers to the basic event of exchanging one item or attribute for another item or attribute. Meaning 2 refers to the basic event of an internal change that occurs in the nature of the item. Level 2: 1 Meaning: To exchange one item for another item Frame for Meaning: Commercial Transaction Verb Stem: Hiphil, Niphal Grammar Notes: There is only one occurrence of the Niphal. Participant Roles for Meaning: Agent: human Patient1: animal, thing, or attributePatient2: animal, thing, or attribute Meaning Comments: The Agent exchanges Patient1 for Patient2. Items exchanged may be viewed as equivalent in value by one party in the exchange, but in many examples an item of lesser value or quality is substituted for an item of greater value or quality. Level 3: a Context: To exchange one item or attribute for another item or attribute Intrinsic Domains for Meaning:c Various (according to the nature of the item8s exchanged) Participant Roles for Meaning:c Agent = subject: human Patient1 = object: animal, thing, or attributePatient2 = בְּ* : animal, thing, or attribute Key Reference: _reference_start_Ezekiel 48:14_reference_end_ Key Verse: They shall not sell or |bexchange |b*any of it; they shall not transfer this choice portion of the land, for it is holy to the Lord. (NRS) _reference_start_Leviticus 27:10_reference_end_ _reference_start_Leviticus 27:10_reference_end_ _reference_start_Leviticus 27:10_reference_end_ _reference_start_Leviticus 27:33_reference_end_ _reference_start_Leviticus 27:33_reference_end_ _reference_start_Leviticus 27:33_reference_end_ _reference_start_Psalms 15:4_reference_end_ _reference_start_Psalms 106:20_reference_end_ _reference_start_Jeremiah 2:11_reference_end_ _reference_start_Ezekiel 48:14_reference_end_ _reference_start_Micah 2:4_reference_end_ Keyword: Cognate_Term Collocating Term: תְּמוּרָה Gloss: substitute References: _reference_start_Leviticus 27:10_reference_9end_ _reference_start_Leviticus 27:33_reference_end_ Keyword: Similar Collocating Term: חלק Gloss: to divide References: _reference_start_Micah 2:4_reference_end_ Keyword: Similar Collocating Term: חלף Gloss: to change References: _reference_start_Leviticus 27:10_reference_end_ Keyword: Similar Collocating Term: מושׁ Gloss: to remove References: _reference_start_Micah 2:4_reference_end_ Keyword: Similar Collocating Term: מכר Gloss: to sell References: _reference_start_Ezekiel 48:14_reference_end_ Keyword: Similar Collocating Term: עבר Gloss: to cause to pass over (to another) References: _reference_start_Ezekiel 48:14_reference_end_ Keyword: Opposite Collocating Term: גאל Gloss: to redeem References: _reference_start_Leviticus 27:33_reference_end_ Level 2: 2 Meaning: Other meanings Verb Stem: Hiphil, Niphal Level 3: a Context: To change the nature of an item _reference_start_Psalms 46:3_reference_end_ _reference_start_Jeremiah 48:11_reference_end_ _reference_start_Hosea 4:7_reference_end_ Keyword: Note: (a) The assignment of Hos 4:7 to Meaning 2 presupposes that the MT is followed as suggested in HO TTP and that 'their glory' refers to an attribute of the priests. An additional factor in favour of the assignment of Hos 4:7 to Meaning 2 is the fact that elsewhere in the book (Hos 9:11; 10:5), כָּבוֹד *is used to refer to an attribute of an item. This interpretation (Meaning 2) is followed by TEV, CEV, RSV, NJPS, and others. Several translations (NIV, NJB, and others) follow a variant text that has a different form of the verb מור* and interpret 'their Glory' as a name for God. (See the discussion of this verse in WBC.) If this interpretation and textual variant are followed, then this occurrence of מור* in Hos 4.7 would be assigned to Meaning 1. Version: 2 Date: 2007-06-25 07:54:12 Wade Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org. kk\l55alprice (מְחִיר)price (מְחִיר)\level1 1 Strong's number: 4242, 4243 Part of speech: ncm Frequency: 16 Abstract for Busy Translators: 1. The term מְחִיר *'price' is used to refer to money or other items that are used in a commercial transaction (Meaning 1). The price most frequently refers to an amount of money that has been or will< k55Ckto exchange (מור)to exchange (מור)Strong's number: 4171 \level1 1 Part of speech: v Frequency: 14 Cognate(s): תְּמוּרָה Abstract for Busy Translators: 1. The verb מור *'to exchange' is used to refer to exchanging one item or attribute for another item or attribute. 2. Money is not mentioned in any context with this type of exchange. 3. Items exchanged are technically equivalent, but often an item of lesser quality or value is exchanged for one of greater quality or value. 4. In addition to external exchanges6 ?tfXJ<. xj\N@2$|n`RD6( m ~m }m |m" {m zm ym xm wm vm um tm% sm# rm/ qm/ pm! om nm ml  ll  kl! jl- il! hl gl7 fl, el dl! cl ' bl al `l7 _l- ^l ]l \l, [l Zl Yl  Xl  Wl  Vl Ul7 Tk Sk0 Rk. Qk! Pk0 Ok0 Nk! Mk Lk! Kk! Jk Ik! Hk0 Gk Fkj Ek Dk! Ck! Bk! Ak = be given in exchange for the purpose of acquiring ownership of an item. 2. Meaning 2 is a proper name for a male. Comparison of Meanings and Uses: Meaning 1.The the amount of money used in a commercial transactionMeaning 2: A proper name Level 2: 1 Meaning: Money or other items that are given in exchange for the purpose of transferring ownership of an item or obtaining a service considered to be equal in value Frame for Meaning: Commercial Transaction Level 3: a Context: Money or other items that are given in exchange for the purpose of transferring ownership of an item or obtaining a service considered to be equal in value Intrinsic Domains for Meaning:c Various (according to the item being sold) Key Reference: _reference_start_Isaiah 55:1_reference_end_ Key Verse: Come, buy wine and milk without money and without |bprice|b*. (NRS) Evaluation of Translations: NRS, RSV, and REB all use the generic noun 'price'. Other translations use the term 'cost' (NIV, TEV) or the specific phrase 'paying a cent' (CE>V). All of these are acceptable translations. Collapsing the translation of parallel phrases into a single phrase, as in TEV and CEV, is not recommended unless the language is lacking terms that can be used for this aspect of a commercial transaction. _reference_start_Deuteronomy 23:19_reference_end_ _reference_start_2 Samuel 24:24_reference_end_ _reference_start_1 Kings 10:28_reference_end_ _reference_start_1 Kings 21:2_reference_end_ _reference_start_2 Chronicles 1:16_reference_end_ _reference_start_Job 28:15_reference_end_ _reference_start_Psalms 44:13_reference_end_ _reference_start_Proverbs 17:16_reference_end_ _reference_start_Proverbs 27:26_reference_end_ _reference_start_Isaiah 45:13_reference_end_ _reference_start_Isaiah 55:1_reference_end_ _reference_start_Jeremiah 15:13_reference_end_ _reference_start_Lamentations 5:4_reference_end_ _reference_start_Daniel 11:39_reference_end_ _reference_start_Micah 3:11_reference_end_ \level1 2 Keyword: Similar Collocating Term: אֶתְנַן Gloss: fee References: _reference_start_Deuteronomy 23:19_reference_end_ Keyword: Similar Collocating Term: הוֹן Gloss: wealth References: _reference_start_Psalms 44:13_reference_end_ Keyword: Similar Collocating Term: כֶּסֶף Gloss: silver References: _reference_start_Isaiah 55:1_reference_end_ _reference_start_Lamentations 5:4_reference_end_ _reference_start_Micah 3:11_reference_end_ Keyword: Similar Collocating Term: שֹׁחַד Gloss: bribe References: _reference_start_Isaiah 45:13_reference_end_ _reference_start_Micah 3:11_reference_end_ Keyword: Opposite Collocating Term: חִנָּם Gloss: for free References: _reference_start_2 Samuel 24:24_reference_end_ Level 2: 2 Meaning: Other meanings Level 3: a Context: Mehir _reference_start_1 Chronicles 4:11_reference_end_ Keyword: Version: 2 Date: 2007-06-25 07:55:06 Wade Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org.@to sell’ can be used metaphorically for the rejection of a positive moral value (Meaning 4) and for submitting oneself totally to doing evil (Meaning 3).The final extended meaning (Meaning 5) is uncertain, but seems to refer to the person who is enslaving or exploiting others by a variety of means. Comparison of Meanings and Uses: The five meanings of מכר* ‘to sell’ can be basically divided into two groups. Those occurrences that refer to a literal commercial transaction (Meaning 1) and those that are extensions of Meaning 1 (Meanings 2-5). Meaning 1. The basic event (focus: the commercial transaction) Meaning 2. Extension of Meaning 1 (focus: ownership) Meaning 3. Extension of Meaning 1 (focus: control) Meaning 4. Extension of Meaning 1 (focus: ownership) Meaning 5. Extension of Meaning 1 (focus: control) Domain and Frame Notes: 1. In Meaning 1 humans sell various items including other humans. This usage triggers the Commercial Transaction frame and the sell sub-frame. The Commercial TranAsaction frame is used against the background of a variety of domains depending on the item being sold. This includes the Slavery domain and one occurrence that is best understood against the background of the Marriage domain. 2. In Meaning 2, YHWH is selling His people and this use of the verb triggers the Ownership frame and the disown sub-frame. One of the background cognitive domains necessary to make this correct interpretation is the 'YHWH is a king' metaphor that is a recurring theme throughout the Old Testament. YHWH is like a king who has made a treaty with the people of Israel - one that obligates both parties to fulfill certain requirements. When Israel breaks this agreement, by not fulfilling their obligations, then YHWH has the right to respond accordingly. In the context of a king's responsibilities towards his subjects, ‘disown’ means ‘relieve oneself of the responsibility to protect’ which in turn means ‘allow their enemies to defeat them’. The purpose is to punish them for theiBr rebellion. 3. In Meaning 3, a person is selling himself to the control of evil. This use of the verb triggers the Control frame and the submit sub-frame. This meaning is best understood against the background of the domains of Pagan Religions, Evil, and Sin. A person submits to the control of evil by participating in pagan activities such as divination, child sacrifice, and augury. All of these activities are viewed as evil by God. 4. In Meaning 4, a person is encouraged to not sell truth. This metaphorical use of the verb triggers the Ownership frame and the disown sub-frame. This usage is best understood against the background of the Wisdom/Folly domain. Wise people are those who buy (acquire possession of) truth and do not sell (disown or reject) it. 5. Meaning 5 is uncertain, but it seems to refer to an entity that is enslaving or exploiting another by the use of various kinds of evil activities. This extension of Meaning 1 seen in the participle triggers the Control frame and the submit sub-frame Cand focuses on the agent of the activity. This extended meaning is best understood against the background of the domains of Exploitation, Slavery, and Evil. An entity (the city of Nineveh who is spoken of as a harlot) causes the Israelites to submit to her control (ie sells them) by means of various evil activities. Level 2: 1 Meaning: To sell; To transfer ownership of a possession or the right to own a possession to another human in exchange for money or other items considered equal in value Frame for Meaning: Commercial Transaction Verb Stem: Qal, Niphal, Hithpael (1x) Participant Roles for Meaning: Agent (Seller): human Patient (Item): human, animal, or thing Recipient (Buyer): human Instrument (Price): silver, gold, or other valued item Level 3: a Context: To sell (a thing); To transfer ownership of a thing to another human in exchange for money or other items considered equal in value Intrinsic Domains for Meaning:c Various (according to the item being sold) Participant Roles for Meaning:c Agent (SelDler) = subject: human Patient (Item) = object: animal or thing Recipient (Buyer) = לְ* : human Instrument (Price) = בְּ* : silver, gold, or other valued item Key Reference: _reference_start_Leviticus 27:20_reference_end_ Key Verse: If, however, he does not redeem the field, or if he has |bsold |b*it to someone else, it can never be redeemed. (NIV) Evaluation of Translations: NIV is an acceptable translation. _reference_start_Genesis 25:31_reference_end_ _reference_start_Genesis 25:33_reference_end_ _reference_start_Genesis 47:20_reference_end_ _reference_start_Genesis 47:22_reference_end_ _reference_start_Exodus 21:35_reference_end_ _reference_start_Exodus 21:37_reference_end_ _reference_start_Leviticus 25:14_reference_end_ _reference_start_Leviticus 25:15_reference_end_ _reference_start_Leviticus 25:16_reference_end_ _reference_start_Leviticus 25:23_reference_end_ _reference_start_Leviticus 25:25_reference_end_ _reference_start_Leviticus 25:27_reference_end_ _rEeference_start_Leviticus 25:29_reference_end_ _reference_start_Leviticus 25:34_reference_end_ _reference_start_Leviticus 27:20_reference_end_ _reference_start_Leviticus 27:27_reference_end_ _reference_start_Deuteronomy 14:21_reference_end_ _reference_start_Ruth 4:3_reference_end_ _reference_start_2 Kings 4:7_reference_end_ _reference_start_Nehemiah 10:32_reference_end_ _reference_start_Nehemiah 13:15_reference_end_ _reference_start_Nehemiah 13:16_reference_end_ _reference_start_Nehemiah 13:20_reference_end_ _reference_start_Proverbs 31:24_reference_end_ _reference_start_Isaiah 24:2_reference_end_ _reference_start_Ezekiel 7:12_reference_end_ _reference_start_Ezekiel 7:13_reference_end_ _reference_start_Ezekiel 48:14_reference_end_ _reference_start_Zechariah 11:5_reference_end_ Keyword: Agent_focus Gloss: one who sells; seller References: _reference_start_Nehemiah 13:20_reference_end_ _reference_start_Isaiah 24:2_reference_end_ _reference_start_Ezekiel 7:12_reference_end_ _reference_start_Ezekiel 7:13_referFence_end_ _reference_start_Zechariah 11:5_reference_end_ Keyword: Cognate_Term Collocating Term: מִמְכָּר Gloss: sale References: _reference_start_Leviticus 25:27_reference_end_ _reference_start_Leviticus 25:29_reference_end_ Keyword: Similar_Term Collocating Term: מור Gloss: to exchange References: _reference_start_Ezekiel 48:14_reference_end_ Keyword: Similar_Term Collocating Term: נתן Gloss: to give References: _reference_start_Proverbs 31:24_reference_end_ Keyword: Similar_Term Collocating Term: עבר Gloss: to transfer References: _reference_start_Ezekiel 48:14_reference_end_ Keyword: Similar_Term Collocating Term: רכל Gloss: to trade References: _reference_start_Nehemiah 13:20_reference_end_ Keyword: Opposite_Term Collocating Term: גאל Gloss: to redeem References: _reference_start_Leviticus 25:25_reference_end_ _reference_start_Leviticus 27:20_reference_end_ _reference_start_Leviticus 27:27_reference_end_ Keyword: Opposite_Term Collocating Term: גְּאֻלָּה Gloss: right oGf redemption References: _reference_start_Leviticus 25:29_reference_end_ Keyword: Opposite_Term Collocating Term: לקח Gloss: to take References: _reference_start_Nehemiah 10:32_reference_end_ Keyword: Opposite_Term Collocating Term: פדה Gloss: to ransom References: _reference_start_Leviticus 27:27_reference_end_ Keyword: Opposite_Term Collocating Term: קנה Gloss: to buy References: _reference_start_Genesis 47:20_reference_end_ _reference_start_Genesis 47:22_reference_end_ _reference_start_Leviticus 25:14_reference_end_ _reference_start_Leviticus 25:15_reference_end_ _reference_start_Isaiah 24:2_reference_end_ _reference_start_Ezekiel 7:12_reference_end_ _reference_start_Zechariah 11:5_reference_end_ Level 3: b Context: To sell (a person); To transfer ownership of a human to another human in exchange for money or other items considered equal in value Intrinsic Domains for Meaning:c Slavery Participant Roles for Meaning:c Agent (Seller) = subject: human Patient (Item) = object: human RecipieHnt (Buyer) = לְ* : human Instrument (Price) = בְּ* : silver, gold, or other valued items Key Reference: _reference_start_Exodus 21:7_reference_end_ Key Verse: If a man |bsells |b*his daughter as a slave, she is not to be set free, as male slaves are. (TEV) Evaluation of Translations: TEV is an acceptable translation. _reference_start_Genesis 37:27_reference_end_ _reference_start_Genesis 37:28_reference_end_ _reference_start_Genesis 37:36_reference_end_ _reference_start_Genesis 45:4_reference_end_ _reference_start_Genesis 45:5_reference_end_ _reference_start_Exodus 21:7_reference_end_ _reference_start_Exodus 21:8_reference_end_ _reference_start_Exodus 21:16_reference_end_ _reference_start_Exodus 22:2_reference_end_ _reference_start_Leviticus 25:39_reference_end_ _reference_start_Leviticus 25:42_reference_end_ _reference_start_Leviticus 25:47_reference_end_ _reference_start_Leviticus 25:48_reference_end_ _reference_start_Leviticus 25:50_reference_end_ _reference_start_Leviticus 27:28_reference_end_ I_reference_start_Deuteronomy 15:12_reference_end_ _reference_start_Deuteronomy 21:14_reference_end_ _reference_start_Deuteronomy 21:14_reference_end_ _reference_start_Deuteronomy 24:7_reference_end_ _reference_start_Deuteronomy 28:68_reference_end_ _reference_start_Nehemiah 5:8_reference_end_ _reference_start_Nehemiah 5:8_reference_end_ _reference_start_Nehemiah 5:8_reference_end_ _reference_start_Esther 7:4_reference_end_ _reference_start_Esther 7:4_reference_end_ _reference_start_Psalms 105:17_reference_end_ _reference_start_Jeremiah 34:14_reference_end_ _reference_start_Joel 4:3_reference_end_ _reference_start_Joel 4:6_reference_end_ _reference_start_Joel 4:7_reference_end_ _reference_start_Joel 4:8_reference_end_ _reference_start_Amos 2:6_reference_end_ Keyword: Cognate_Term Collocating Term: מִמְכָּר Gloss: sale References: _reference_start_Leviticus 25:50_reference_end_ Keyword: Cognate_Term Collocating Term: מִמְכֶּרֶת Gloss: sale References: _reference_start_Leviticus 25:42_referJence_end_ Keyword: Similar_Term Collocating Term: נתן Gloss: to give References: _reference_start_Joel 4:3_reference_end_ Keyword: Opposite_Term Collocating Term: גאל Gloss: to redeem References: _reference_start_Leviticus 25:48_reference_end_ _reference_start_Leviticus 27:28_reference_end_ Keyword: Opposite_Term Collocating Term: גְּאֻלָּה Gloss: right of redemption References: _reference_start_Leviticus 25:48_reference_end_ Keyword: Opposite_Term Collocating Term: יצא Gloss: to go out References: _reference_start_Exodus 21:7_reference_end_ Keyword: Opposite_Term Collocating Term: פדה Gloss: to ransom References: _reference_start_Exodus 21:8_reference_end_ Keyword: Opposite_Term Collocating Term: קנה Gloss: to buy References: _reference_start_Leviticus 25:50_reference_end_ _reference_start_Deuteronomy 28:68_reference_end_ _reference_start_Nehemiah 5:8_reference_end_ Keyword: Opposite_Term Collocating Term: שׁלח Gloss: to send (away as a free person) References: _reference_starKt_Deuteronomy 15:12_reference_end_ _reference_start_Deuteronomy 21:14_reference_end_ _reference_start_Jeremiah 34:14_reference_end_ Level 3: c Context: To sell (for a bride price); To transfer ownership of a woman to a man for the purpose of her becoming his wife Intrinsic Domains for Meaning:c Marriage Participant Roles for Meaning:c Agent (Seller) = subject: human Patient (Item) = object: woman Recipient (Buyer) = implicit: man Instrument (Price) = implicit: silver, gold, or other valued items Key Reference: _reference_start_Genesis 31:15_reference_end_ Key Verse: He treats us like foreigners. He |bsold |b*us, and now he has spent all the money he was paid for us. (TEV) Evaluation of Translations: TEV is an acceptable literal translation. If the sale of women as brides is not a known custom, then it might be better to use a translation such as 'sold us for a bride price.' CEV has chosen to use the term bride price, though there are other aspects of its translation that are nLot as acceptable. 'He treats us like foreigners and has even cheated us out of the bride price that should have been ours.' _reference_start_Genesis 31:15_reference_end_ Keyword: Level 2: 2 Meaning: To hand over (to enemies); To transfer ownership of a community to foreign enemies (for the purpose of punishment) Frame for Meaning: Ownership: disown Intrinsic Domains for Meaning: Kingship, Punishment, Warfare, Defeat, Oppression Verb Stem: Qal, Niphal Participant Roles for Meaning: Agent: God Patient: Israel Recipient: humans Level 3: a Context: To cause to be defeated (in battle); To transfer ownership of a community to foreign enemies for defeat at their hands (for the purpose of punishment) Participant Roles for Meaning:c Agent = subject: God Patient = object: Israel Recipient = בְּיַד : humans Meaning Comments:c This meaning always occurs with the phrase 'into the hand of'. This phrase designates the group or individual to whom God gives the ownership or control of an individuMal, a people, or a land. Key Reference: _reference_start_Judges 3:8_reference_end_ Key Verse: . . . and he |brejected |b*them |band caused them to be under the authority of |b*Cushan-Rishathaim king of Aram Naharaim, (KTBH) Evaluation of Translations: Most English translations have a literal translation of this usage of the word 'sell.' For instance, NRS translates it as '. . . he |bsold |b*them into the hand of King Cushan-rishathaim of Aram-naharaim; . . .' The CEV and TEV are an improvement over a literal translation and translate as follows: '. . . so he let Israel |bbe defeated|b* by King Cushan Rishathaim of northern Syria, . . . ' (CEV) and '. . . let King Cushan Rishathaim of Mesopotamia |bconquer |b*them. . . .' (TEV). _reference_start_Judges 2:14_reference_end_ _reference_start_Judges 3:8_reference_end_ _reference_start_Judges 4:2_reference_end_ _reference_start_Judges 4:9_reference_end_ _reference_start_Judges 10:7_reference_end_ _reference_start_1 Samuel 12:9_reference_end_ _reference_start_ENzekiel 30:12_reference_end_ _reference_start_Joel 4:8_reference_end_ Keyword: Similar_Term Collocating Term: נתן Gloss: to give (into the hand of) References: _reference_start_Judges 2:14_reference_end_ Keyword: Similar_Term Collocating Term: שׁמם Gloss: to cause to be desolated References: _reference_start_Ezekiel 30:12_reference_end_ Level 3: b Context: To cause to be exiled; To transfer ownership of a community to foreign enemies for deportation into foreign lands (for the purpose of punishment) Intrinsic Domains for Meaning:c Captivity, Deportation, Exile Participant Roles for Meaning:c Agent = subject: God Patient = object: humanRecipient = לְ* : human Key Reference: _reference_start_Isaiah 50:1_reference_end_ Key Verse: . . . Or to which of my creditors did I |bsell |b*you? Because of your sins you were |bsold|b*; because of your transgressions your mother was sent away. (NIV) Evaluation of Translations: NIV is an acceptable literal translation. If, however, the metaphoricOal nature of this usage is not understood, it would be better to follow the style of TEV ' . . . No, you |bwent away captive|b* because of your sins; . . . .' _reference_start_Deuteronomy 32:30_reference_end_ _reference_start_Psalms 44:13_reference_end_ _reference_start_Isaiah 50:1_reference_end_ _reference_start_Isaiah 50:1_reference_end_ _reference_start_Isaiah 52:3_reference_end_ Keyword: Similar_Term Collocating Term: סגר Gloss: to cause to be delivered References: _reference_start_Deuteronomy 32:30_reference_end_ Keyword: Similar_Term Collocating Term: שׁלח Gloss: to send References: _reference_start_Isaiah 50:1_reference_end_ Keyword: Opposite_Term Collocating Term: גאל Gloss: to redeem References: _reference_start_Isaiah 52:3_reference_end_ Level 2: 3 Meaning: To give oneself over (to sin); To transfer control of oneself to the control of (something morally wrong) Frame for Meaning: Control: submit Intrinsic Domains for Meaning: Pagan Religion, Evil, Sin Verb Stem: Hithpael Participant RPoles for Meaning: Agent: humans Patient: (same) humans Level 3: a Context: To give oneself over (to sin); To transfer control of oneself to the control of (something morally wrong) Intrinsic Domains for Meaning:c Pagan Religion, Evil, Sin Participant Roles for Meaning:c Agent = subject: humans Patient = object: (same) human Meaning Comments:c All examples with this meaning occur with the phrase 'to do evil in the eyes of YHWH'. Key Reference: _reference_start_2 Kings 17:17_reference_end_ Key Verse: They used magic and witchcraft and even sacrificed their own children. The Israelites |bwillingly chose|b* to do whatever the LORD hated. (KTBH) Evaluation of Translations: 'They made their sons and their daughters pass through fire; they used divination and augury; and they |bsold themselves |b*to do evil in the sight of the LORD, provoking him to anger.' (NRS) The NRS, NIV, REB, and RSV translate this phrase literally. If the metaphorical nature of the phrase 'sell oneself' is not understood, then a trQanslation such as CEV, ' . . . The Israelites were |bdetermined to do |b*whatever the LORD hated' or the KTBH suggestion would be a better option. _reference_start_1 Kings 21:20_reference_end_ _reference_start_1 Kings 21:25_reference_end_ _reference_start_2 Kings 17:17_reference_end_ Keyword: Level 2: 4 Meaning: To reject (a moral value); To transfer ownership of an abstract quality to another entity Frame for Meaning: Ownership: disown Intrinsic Domains for Meaning: Wisdom/Folly Verb Stem: Qal Participant Roles for Meaning: Agent: human Patient: abstract quality (truth) Level 3: a Context: To reject (a moral value); To transfer ownership of an abstract quality to another entity Intrinsic Domains for Meaning:c Wisdom/Folly Participant Roles for Meaning:c Agent = subject: human Patient = object: abstract quality (truth) Key Reference: _reference_start_Proverbs 23:23_reference_end_ Key Verse: Invest in truth and wisdom, discipline and good sense, and don't |bpart with |b*them. (CEV) Evaluation of TransRlations: The CEV is a good example of a non-literal translation. If the metaphorical nature of a literal translation will be understood properly, then a literal translation such as NRS 'Buy truth, and do not |bsell |b*it; . . . .' may be used. _reference_start_Proverbs 23:23_reference_end_ Keyword: Opposite_Term Collocating Term: קנה Gloss: to buy References: _reference_start_Proverbs 23:23_reference_end_ Level 2: 5 Meaning: To exploit; To cause others to be in a submissive relationship; To enslave another Frame for Meaning: Control: submit Intrinsic Domains for Meaning: Exploitation, Slavery, Evil Verb Stem: Qal participle Participant Roles for Meaning: Agent: city Patient: humans Level 3: a Context: To exploit; To cause others to be in a submissive relationship; To enslave another Intrinsic Domains for Meaning:c Exploitation, Slavery, Evil Participant Roles for Meaning:c Agent = subject: city Patient = object: humans Key Reference: _reference_start_Nahum 3:4_reference_end_ Key Verse: Because of tShe countless debaucheries of the prostitute, gracefully alluring, mistress of sorcery, who |benslaves |b*nations through her debaucheries, and peoples through her sorcery, (NRS) Evaluation of Translations: NRS is an acceptable translation of a verse whose specific meaning is uncertain. Versions vary widely in their translation of this verse, but none of the 8 translations consulted translated מכר ‘to sell’ literally. The main grammatical difficulty in translating this verse is determining the semantic functions of בִּזְנוּנֶיהָ ‘through her debaucheries’ and בִּכְשָׁפֶיהָ ‘through her sorcery’. In most verses with מכר ‘to sell’ the preposition בּ ‘with’ is used to refer to the instrument for which an item is sold, e.g., ‘for twenty pieces of silver’ (Gen 37:28). In at least one verse, the preposition בּ ‘with’ indicates the reason the sale was made, i.e., ‘for your sins’ (Isa 50:1). If the first interpretation is chosen, then she was selling the nations so that she would be able to commit adultery and magic as a result of the sale. If the second interpretation is chosen, then she was selling the nations because of her adultery and magic. Most translations follow neither of these interpretations. Instead, the phrases are interpreted as the means by which the nations are enslaved or trapped, as in CEV and other versions -- ‘You were nothing more than a prostitute using your magical charms and witchcraft to attract and trap nations’. _reference_start_Nahum 3:4_reference_end_ Keyword: Agent_focus Gloss: one who enslaves; exploiter References: _reference_start_Nahum 3:4_reference_end_ Keyword: Similar_Term Collocating Term: בַּעֲלָה Gloss: mistress References: _reference_start_Nahum 3:4_reference_end_ Version: 2 Date: 2007-06-26 10:30:11 Wade Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org. :n??;npurchase (מִקְנָה)purchase (מִקְנָה)Strong's number: 4736 \level1 1 Part of speWim-- mto sell (מכר)to sell (מכר)Strong's number: 4376 \level1 1 Part of speech: v Frequency: 80 Cognate(s): מֶכֶר, מִמְכָּר, מִמְכֶּרֶת Abstract for Busy Translators: 1. The verb מכר* ‘to sell’ is used most frequently to refer to a commercial transaction that involves the sale of an item (including humans) to another human for a price. 2. Selling an item involves a change of ownership and control. 3. These elements of ownership and control allow for the extended usage of the verb מכר ‘to sell’ to refer to God's causing Israel to be defeated in battle (Meaning 2a) and his sending them into exile (Meaning 2b). In addition, the verb מכר ? ?tfXJ<. xj\N@2$|n`RD6( >mi =m <m ;m :m 9m 8mD 7m 6m 5m 4m 3m 2m2 1m0 0m/ /m* .m' -m ,m +m *m )m- (m- 'm%$ &m% %m% $m #m&  "m !m m m m/ m/ m m m m m m m  m0 m m0 m m m&  m m m m  m&  m0 m m m m m  m  m  m m  m ?tfXJ<. xj\N@2$|n`RD6( }n |n {n zn yn  xn  wn vn un tn sm" rm" qm" pm" om nm mm lm  km  jm  im  hm4 gm2 fm  em4 dm2 cm2 bm, am  `m2 _m ^m ]m \m [m Zm  Ym Xm Wm Vm Um Tm Sm Rm" Qm Pm Om NmD Mm2 Lm Km Jm0 Im Hm0 Gm Fm* Em2 Dm Cm Bm Am @m ?m"Xech: ncf Frequency: 15 Cognate(s): קנה Abstract for Busy Translators: 1. The noun מִקְנָה* ‘purchase’ is used most frequently to refer to an item (including humans) that has been acquired and is under the ownership of another human as a result of an exchange of money or other items considered to be equal in value. 2. When there is a transfer of ownership, the noun מִקְנָה* ‘purchase’ can be used to refer to the money given in exchange for the item. 3. In addition, the completed event can also be referred to by the same term, מִקְנָה* ‘purchase’. Comparison of Meanings and Uses: Meaning 1 refers to the completed event.Meaning 2 refers to the patient of the event of acquisition. Meaning 3 refers to the instrument (money) of the event of acquisition. Level 2: 1 Meaning: The completed process of acquiring the ownership of an item from another human in exchange for money or other items considered to be equal in value Frame for Meaning: Commercial Transaction Participant RolYes for Meaning: |b|b*Agent (Buyer): human Patient (Item): land Source (Seller): human Instrument (Price): silver, gold, or other valued item Level 3: a Context: The completed process of acquiring the ownership of an item from another human in exchange for money or other items considered to be equal in value Intrinsic Domains for Meaning:c Trading Participant Roles for Meaning:c |b|b*Agent (Buyer) = implict: human Patient (Item) = genitive: land Source (Seller) = implicit: human Instrument (Price) = implicit: silver, gold, or other valued item Key Reference: _reference_start_Jeremiah 32:11_reference_end_ Key Verse: I took the deed of |bpurchase|b*--the sealed copy containing the terms and conditions, as well as the unsealed copy-- (NIV) Evaluation of Translations: 'I had two copies of the bill of |bsale |b*written out, each containing all the details of our agreement. Some witnesses and I signed the official copy, which was folded and tied, before being sealed shut with hot wax.' (CEV) English translatioZns refer to הַמִּקְנָה אֶת־סֵפֶר ‘the book of the purchase’ using either the phrase 'deed of purchase' (NRS, NIV, RSV, REB, TEV, NJB, NJPS) or the phrase ‘bill of sale’ (CEV). Both of these are acceptable translations. _reference_start_Jeremiah 32:11_reference_end_ _reference_start_Jeremiah 32:12_reference_end_ _reference_start_Jeremiah 32:12_reference_end_ _reference_start_Jeremiah 32:14_reference_end_ _reference_start_Jeremiah 32:16_reference_end_ Keyword: Level 2: 2 Meaning: An item that has been acquired and is under the ownership of another human as a result of an exchange of money or other items considered to be equal in value Frame for Meaning: Commercial Transaction Participant Roles for Meaning: Agent (Buyer): human Patient (Item): human, thing Source (Seller): human Instrument (Price): silver, gold, or other valued item Level 3: a Context: A piece of land that has been acquired and is under the ownership of another human as a result of an exchange of money or other ite[ms considered to be equal in value Intrinsic Domains for Meaning:c Trading Participant Roles for Meaning:c |b|b*Agent (Buyer) = genitive: human Patient (Item) = object: land Source (Seller) = implicit: human Instrument (Price) = implicit: silver, gold, or other valued item Key Reference: _reference_start_Genesis 23:18_reference_end_ Key Verse: to Abraham as his |bproperty |b*in the presence of all the Hittites who had come to the gate of the city. (NIV) Evaluation of Translations: '|blegal possession |b*of Abraham, in the presence of all the Hittites who had assembled at the city gate.' (REB) Most English translations use either 'possession' or 'property'. Both are acceptable choices, but property is probably the more commonly used term for land. REB uses the phrase ‘legal possession,’ which is probably more a translation of the context than of the word מִקְנָה* ‘purchase’. _reference_start_Genesis 23:18_reference_end_ _reference_start_Leviticus 27:22_reference_end_ Keyword: Opposite Col\locating Term: אֲחֻזָּה Gloss: inherited possession References: _reference_start_Leviticus 27:22_reference_end_ Level 3: b Context: A human that has been acquired and is under the ownership of another human as a result of an exchange of money or other items considered to be equal in value; a slave Intrinsic Domains for Meaning:c Slavery Participant Roles for Meaning:c Agent (Buyer) = genitive: human Patient (Item) = implicit: human Source (Seller) = מִן*: human Instrument (Price) = genitive: silver, gold, or other valued items. Key Reference: _reference_start_Genesis 17:23_reference_end_ Key Verse: Then Abraham took his son Ishmael and all the slaves born in his house or |bbought |b*with his money, every male among the men of Abraham's house, and he circumcised the flesh of their foreskins that very day, as God had said to him. (NRS) Evaluation of Translations: Most English translations use a verbal phrase ('he had bought') with or without a literal translation of the word 'its silver'. CEV]'s translation 'and so were all other men and boys in his household, including his servants and slaves' seems to equate 'servants' with ones born in his household and 'slaves' as ones bought with his money. These would not, however, be the naturally understood equivalents for these terms. Because of this it would be best not to follow CEV's example. _reference_start_Genesis 17:12_reference_end_ _reference_start_Genesis 17:13_reference_end_ _reference_start_Genesis 17:23_reference_end_ _reference_start_Genesis 17:27_reference_end_ _reference_start_Exodus 12:44_reference_end_ Keyword: Opposite Collocating Term: יָלִיד Gloss: born References: _reference_start_Genesis 17:12_reference_end_ _reference_start_Genesis 17:13_reference_end_ _reference_start_Genesis 17:23_reference_end_ _reference_start_Genesis 17:27_reference_end_ Level 2: 3 Meaning: The amount of money given in order to acquire ownership of an item Frame for Meaning: Commercial Transaction Participant Roles for Meaning: Agent (Buyer): human ^Patient (Item): human, thing Source (Seller): human Instrument (Price): silver, gold, or other valued item |b |b* Level 3: a Context: The amount of money given in order to acquire ownership of an item Intrinsic Domains for Meaning:c Payment Participant Roles for Meaning:c Agent (Buyer) = implicit: human Patient (Item) = genitive: human, thing Source (Seller)= implicit: human Instrument (Price) = object: silver, gold, or other valued item |b |b* Key Reference: _reference_start_Leviticus 25:51_reference_end_ Key Verse: If many years remain, he must pay for his redemption a larger share of the |bprice |b*paid for him. (NIV) Evaluation of Translations: 'The longer the time until then, the more you will have to pay.' (CEV) English translations generally use the term 'price' to translate this meaning of the term. The difference between this meaning and Meaning 1b, may be seen in a comparison of the meaning and the translation of the construct chain מִקְנַת כַּסְפֶּךָ 'purchase of your silver' in Gen 17.12 and the construct chain כֶּסֶף מִקְנָתוֹ 'silver of his purchase' in Lev 25:51. In the first, the focus is on the fact that the slave (Item) was purchased with money. In the second, the focus is on the amount of money (Price) involved in the purchase. In Lev 25:51 the term מִקְנָה ‘purchase’ is translated by terms such as ‘(price) paid for him,’ (NIV, RSV) ‘pay’ (CEV), ‘purchase (price)’ (NRS, TEV, NJPS) ‘sale-price’ (NJB), ‘(sum) for which he sold himself’ (REB). All of these translations are basically adequate. _reference_start_Leviticus 25:16_reference_end_ _reference_start_Leviticus 25:16_reference_end_ _reference_start_Leviticus 25:51_reference_end_ Keyword: Version: 2 Date: 2007-06-26 10:38:33 Wade Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org. ?tfXJ<. xj\N@2$|n`RD6( <p ;p :p 9o' 8o 7o 6o1 5o% 4o 3o 2o 1o% 0o$ /o .o  -o  ,o  +o *o )o  (o 'o2 &o %o $o #o "o2 !o o om o  o  o o o o2 o o om o o o o  o  o o o o o n3 n n n3 n n n n n , n n n n ~nas translated 'to lift up', rather than a meaning related to this verb root. 5. All occurrences of the verb seem to contain an element of 'compulsion', i.e. being forced, compelled, or persuaded to do something that the patient would not otherwise have done. Comparison of Meanings and Uses: Meaning 1 refers to an event that is a type of commercial transaction. Meanings 2-4 refer to other domains and have not been thoroughly analyzed.Meaning 2 refers to the event of forcing something upon someone or compelling someone to do something. Meaning 3 refers to the event of deceiving someone or causing someone to have an inaccurate view of the truth. Meaning 4 includes one reference, the meaning of which is uncertain due to textual variants and other problems of interpretation. Level 2: 1 Meaning: To loan something to another person for the purpose of collecting interest Frame for Meaning: Commercial Transaction: loan Verb Stem: Qal, Hiphil Participant Roles for Meaning: Agent (Lender): human Recipient (Borrowerb): human Patient (Item): money or other valued item Meaning Comments: Interest is specifically mentioned in Neh 5:7 and this may be the factor that distinguishes נשׁא* from לוה *in Isa 24:2. Level 3: a Context: To loan something to another person for the purpose of collecting interest Intrinsic Domains for Meaning:c Interest Participant Roles for Meaning:c Agent (Lender) = subject: humanObject (Loan) = object: loan, money or other valued itemRecipient (Borrower) = בְּ *: human Key Reference: _reference_start_Isaiah 24:2_reference_end_ Key Verse: And it shall be, as with the people, so with the priest; as with the slave, so with his master; as with the maid, so with her mistress; as with the buyer, so with the seller; as with the lender, so with the borrower; as with the |bcreditor|b*, so with the |bdebtor|b*. (NRS) Evaluation of Translations: NRS is a good translation. _reference_start_Exodus 22:24_reference_end_ _reference_start_Deuteronomy 15:2_reference_end_ _reference_start_Deuteronomy 24:1c0_reference_end_ _reference_start_Deuteronomy 24:11_reference_end_ _reference_start_1 Samuel 22:2_reference_end_ _reference_start_2 Kings 4:1_reference_end_ _reference_start_Nehemiah 5:7_reference_end_ _reference_start_Nehemiah 5:10_reference_end_ _reference_start_Nehemiah 5:11_reference_end_ _reference_start_Psalms 109:11_reference_end_ _reference_start_Isaiah 24:2_reference_end_ _reference_start_Isaiah 24:2_reference_end_ _reference_start_Isaiah 50:1_reference_end_ _reference_start_Jeremiah 15:10_reference_end_ _reference_start_Jeremiah 15:10_reference_end_ \level1 3 Keyword: Agent_focus Gloss: creditor References: _reference_start_Exodus 22:24_reference_end_ _reference_start_1 Samuel 22:2_reference_end_ _reference_start_2 Kings 4:1_reference_end_ _reference_start_Psalms 109:11_reference_end_ _reference_start_Isaiah 24:2_reference_end_ _reference_start_Isaiah 24:2_reference_end_ _reference_start_Isaiah 50:1_reference_end_ Keyword: Similar_Term Collocating Term: נגשׂ Gloss: to exact tribute Referenceds: _reference_start_Deuteronomy 15:2_reference_end_ Keyword: Similar_Term Collocating Term: עבט Gloss: to take as a pledge References: _reference_start_Deuteronomy 24:10_reference_end_ Keyword: Opposite_Term Collocating Term: לוה Gloss: to borrow References: _reference_start_Isaiah 24:2_reference_end_ _reference_start_Isaiah 24:2_reference_end_ Keyword: Opposite_Term Collocating Term: מכר Gloss: to sell References: _reference_start_Isaiah 50:1_reference_end_ Keyword: Opposite_Term Collocating Term: שׁמט Gloss: to remit References: _reference_start_Deuteronomy 15:2_reference_end_ Level 2: 2 Meaning: Other meanings Verb Stem: Qal Level 3: a Context: To force (something upon someone); To compel (someone to do something) _reference_start_1 Kings 8:31_reference_end_ _reference_start_2 Chronicles 6:22_reference_end_ Keyword: Level 2: 3 Meaning: Other meanings Verb Stem: Hiphil Level 3: a Context: To deceive; To cause someone to have an inaccurate view of the truth _reference_start_Genesis 3:13_reference_end_ _reference_start_2 Kings 18:29_reference_end_ _reference_start_2 Kings 19:10_reference_end_ _reference_start_2 Chronicles 32:15_reference_end_ _reference_start_Isaiah 19:13_reference_end_ _reference_start_Isaiah 36:14_reference_end_ _reference_start_Isaiah 37:10_reference_end_ _reference_start_Jeremiah 4:10_reference_end_ _reference_start_Jeremiah 4:10_reference_end_ _reference_start_Jeremiah 29:8_reference_end_ _reference_start_Jeremiah 37:9_reference_end_ _reference_start_Jeremiah 49:16_reference_end_ _reference_start_Obadiah 1:3_reference_end_ _reference_start_Obadiah 1:7_reference_end_ \level1 2 Keyword: Level 2: 4 Meaning: Other meanings Verb Stem: Qal Level 3: a Context: Uncertain due to textual variants _reference_start_Jeremiah 23:39_reference_end_ Keyword: Version: 4 Date: 2007-06-25 07:57:36 Wade Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org. //5o ++#oto deceive; to loan something for the purpose of collecting interest (נשׁא)to deceive; to loan something for the purpose of collecting interest (נשׁא)Strong's number: 5377, 5378, 5383 \level1 1 Part of speech: v Frequency: 20 Cognate(s): מַשָּׁא, מַשָּׁאוֹן, מַשּׁוּאוֹת, נְשִׁי Abstract for Busy Translators: 1. One meaning of the verb נשׁא *is 'to loan something for the purpose of collecting interest'. This meaning only occurs 3 times. In addition to these occurrences, 12 occurrences of נשׁה *Meaning 2 'to loan something for the purpose of collecting interest' are also included here because of the fact that the two verbs were often used interchangeably due to the nature of their final consonants. 2. The most frequent meaning of the verb is 'to deceive'. 3. Another infrequent meaning of the verb is 'to compel'.4. In one occurrence, most translations seemed to be based on a textual variant that i`g pain (Extension of Meaning 2) Level 2: 1 Meaning: To pay interest; To earn interest Frame for Meaning: Commercial Transaction: loan Verb Stem: Qal, Hiphil Participant Roles for Meaning: Agent (Lender): human Recipient (Borrower): humanPatient (Item): money or other things Level 3: a Context: To pay interest; to earn interest Intrinsic Domains for Meaning:c Oppression; Prosperity Participant Roles for Meaning:c Agent (Lender) = subject or genitive: human Recipient (Borrower) = לְ* or subject: humanPatient (Item) = object: money or other things Key Reference: _reference_start_Deuteronomy 23:20_reference_end_ Key Verse: You must not lend on interest to your brother, whether the loan be of money, of food, or of anything else that may|b earn interest|b*. (NJB) Evaluation of Translations: This is an acceptable translation. The agent that pays the interest is unspecified. Because of that, many translations use a passive ('anything else on which interest can be charged' [REB]) or another wording that changhes the focus back to the person who collects the interest ('anything that is lent for interest' [RSV]). _reference_start_Deuteronomy 23:20_reference_end_ _reference_start_Deuteronomy 23:20_reference_end_ _reference_start_Deuteronomy 23:21_reference_end_ _reference_start_Deuteronomy 23:21_reference_end_ _reference_start_Habakkuk 2:7_reference_end_ Keyword: Causative Gloss: to charge interest = to cause to pay interest References: _reference_start_Deuteronomy 23:20_reference_end_ _reference_start_Deuteronomy 23:21_reference_end_ _reference_start_Deuteronomy 23:21_reference_end_ Level 2: 2 Meaning: Other meanings Level 3: a Context: To bite _reference_start_Genesis 49:17_reference_end_ _reference_start_Numbers 21:6_reference_end_ _reference_start_Numbers 21:8_reference_end_ _reference_start_Numbers 21:9_reference_end_ _reference_start_Ecclesiastes 10:8_reference_end_ _reference_start_Ecclesiastes 10:11_reference_end_ _reference_start_Jeremiah 8:17_reference_end_ _reference_start_Amos 5:19_reference_end_ _reference_start_Amos 9:3_reference_end_ _reference_start_Micah 3:5_reference_end_ Keyword: Level 2: 3 Meaning: Other meanings Level 3: a Context: To cause pain or harm that is comparable to the bite of a snake (metaphoric extension of Meaning 1) _reference_start_Proverbs 23:32_reference_end_ Keyword: Note: (a) In light of the contrasts seen in Hab 2:6, this verse has been interpreted as referring to the debtors rising up against the creditors, ie the Qal form of Meaning 1 'to pay interest'. This interpretation is followed by REB, NIV, RSV. See Clark and Hatton 1989:98-99 for a discussion of the choice between translating נֹשְׁכֶיךָ as 'debtors' versus 'creditors'. Translations interpretנֹשְׁכֶיךָ as a reference to 'creditors' include NRS, NJPS, NJB, and CEV. Version: 4 Date: 2007-06-26 10:43:24 Wade Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org. jq??iqinterest (נֶשֶׁךְ)interest (נֶשֶׁךְ)\level1 1 Strong's number: 5392 Part of speech: ncm Frequency: 12 Cognate(s): נשׁךְ Abstract for Busy Translators: 1. Interest for a loan could be charged on a variety of items. 2. Interest was not supposed to be charged to a fellow-Israelite. Comparison of Meanings and Uses: There is only one meaning ofkSpAA7pto pay interest (נשׁך)to pay interest (נשׁך)\level1 1 Strong's number: 5391 Part of speech: v Frequency: 16 Cognate(s): נֶשֶׁךְ Abstract for Busy Translators: 1. The verb נשׁךְ* 'to pay interest' is used five times to refer to the paying or charging of interest (causative form of the verb). 2. Meaning 2 refers to the act of biting, the most frequent usage of this root.3. Meaning 3 refers to causing pain, an extension of Meaning 2. Comparison of Meanings and Uses: Meaning 1. The basic economic event: To pay interest Meaning 2. The basic event: To bite Meaning 3. To causef ?tfXJ<. xj\N@2$|n`RD6( {r zr  yr xr  wr% vr ur& tr$ sr rr qr pr or nr/ mr lr kr jr  ir hr  gr*" fr% er" dr" cr br*" aq% `q _q ^q ]q \q [q$ Zq Yq Xq Wq Vq Uq Tq Sq Rq Qq% Pq$ Oq Nq Mp Lp! Kp  Jp Ip Hp Gp  Fp Ep Dp Cp1 Bp Ap @p ?p# >p =pl נֶשֶׁךְ * 'interest.' Level 2: 1 Meaning: Interest; Money or profit gained from loaning money or provisions or other items to another person Frame for Meaning: Commercial Transaction: loan Level 3: a Context: Interest; Money or profit gained from loaning money or provisions or other items to another person Intrinsic Domains for Meaning:c Oppression; Prosperity Key Reference: _reference_start_Deuteronomy 23:20_reference_end_ Key Verse: You are not to exact |binterest |b*on anything you lend to a fellow-countryman, whether money or food or anything else on which interest can be charged. (REB) Evaluation of Translations: This is an acceptable translation. All translations examined use the term "interest" in the translation of this verse. _reference_start_Exodus 22:24_reference_end_ _reference_start_Leviticus 25:36_reference_end_ _reference_start_Leviticus 25:37_reference_end_ _reference_start_Deuteronomy 23:20_reference_end_ _reference_start_Deuteronomy 23:20_reference_end_ _reference_start_Deuteronomy 23:20_reference_end_ _reference_start_Psalms 15:5_reference_end_ _reference_start_Proverbs 28:8_reference_end_ _reference_start_Ezekiel 18:8_reference_end_ _reference_start_Ezekiel 18:13_reference_end_ _reference_start_Ezekiel 18:17_reference_end_ _reference_start_Ezekiel 22:12_reference_end_ Keyword: Similar Collocating Term: תַּרְבִּית Gloss: profit References: _reference_start_Leviticus 25:36_reference_end_ _reference_start_Proverbs 28:8_reference_end_ _reference_start_Ezekiel 18:8_reference_end_ _reference_start_Ezekiel 18:13_reference_end_ _reference_start_Ezekiel 18:17_reference_end_ _reference_start_Ezekiel 22:12_reference_end_ Keyword: Similar Collocating Term: מַרְבִּית Gloss: increase References: _reference_start_Leviticus 25:37_reference_end_ Version: 4 Date: 2007-02-08 12:35:11 Wade Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org.nal transaction)Meaning 2. Metaphorical use of meaning 1 (focus: concern) Level 2: 1 Meaning: To travel in order to trade; To move from place to place for the purpose of buying and selling items Frame for Meaning: Commercial Transaction Verb Stem: Qal Grammar Notes: All examples are participles. Participant Roles for Meaning: Agent (Seller): human Patient (Item): thing Recipient (Buyer): human Instrument (Price): silver, gold, or other valued item Level 3: a Context: To travel in order to trade; To move from place to place for the purpose of buying and selling items Intrinsic Domains for Meaning:c Travelling Participant Roles for Meaning:c Agent (Seller) = subject: human Patient (Item) = implicit: thing Recipient (Buyer) = implicit: human Instrument (Price) = implicit: silver, gold, or other valued item Key Reference: _reference_start_Genesis 42:34_reference_end_ Key Verse: . . . Then I will release your brother to you, and you may |btrade |b*in the land. (NRS) Evaluation oof Translations: NRS '... you may trade in the land' focuses on the economic aspect of the meaning of the verb. While it is true that trading is an aspect of the meaning of the verb, it fails to distinguish between this verb and רכל* 'to trade'. The NJB 'and you will be free to move about the country.' and NJV ' you shall be free to move about in the land,' correctly recognize the movement that is indicated by this verb root, but fail to include the economic activity. A better translation would include both activities, i.e. 'you may move from place to place and trade in the land'. _reference_start_Genesis 23:16_reference_end_ _reference_start_Genesis 34:10_reference_end_ _reference_start_Genesis 34:21_reference_end_ _reference_start_Genesis 37:28_reference_end_ _reference_start_Genesis 42:34_reference_end_ _reference_start_1 Kings 10:28_reference_end_ _reference_start_2 Chronicles 1:16_reference_end_ _reference_start_2 Chronicles 9:14_reference_end_ _reference_start_Proverbs 31:14_reference_end_ _referepnce_start_Isaiah 23:2_reference_end_ _reference_start_Isaiah 23:8_reference_end_ _reference_start_Isaiah 47:15_reference_end_ _reference_start_Ezekiel 27:12_reference_end_ _reference_start_Ezekiel 27:16_reference_end_ _reference_start_Ezekiel 27:18_reference_end_ _reference_start_Ezekiel 27:21_reference_end_ _reference_start_Ezekiel 27:21_reference_end_ _reference_start_Ezekiel 27:36_reference_end_ _reference_start_Ezekiel 38:13_reference_end_ Keyword: Agent_focus Gloss: one who moves from place to place for the purpose of buying and selling items; trader References: _reference_start_Genesis 23:16_reference_end_ _reference_start_Genesis 37:28_reference_end_ _reference_start_1 Kings 10:28_reference_end_ _reference_start_2 Chronicles 1:16_reference_end_ _reference_start_2 Chronicles 9:14_reference_end_ _reference_start_Proverbs 31:14_reference_end_ _reference_start_Isaiah 23:2_reference_end_ _reference_start_Isaiah 23:8_reference_end_ _reference_start_Ezekiel 27:36_reference_end_ _reference_start_Ezekiel 38q:13_reference_end_ Keyword: Similar_Term Collocating Term: כְּנַעַן Gloss: trader References: _reference_start_Isaiah 23:8_reference_end_ Keyword: Similar_Term Collocating Term: נתן Gloss: to give References: _reference_start_Ezekiel 27:12_reference_end_ _reference_start_Ezekiel 27:16_reference_end_ Keyword: Similar_Term Collocating Term: תור Gloss: to exchange References: _reference_start_2 Chronicles 9:14_reference_end_ Level 2: 2 Meaning: To travel around like a trader; to wander; to roam Frame for Meaning: Travelling Verb Stem: Qal Grammar Notes: Location in which travelling was done is marked with the preposition אֶל*. Participant Roles for Meaning: Agent: human = priest and prophet Level 3: a Context: To travel around like a trader; to wander; to roam Intrinsic Domains for Meaning:c Travelling Participant Roles for Meaning:c Agent = subject: human = priest and prophet Key Reference: _reference_start_Jeremiah 14:18_reference_end_ Key Verse: If I go out to the country— Lo, the slairn of the sword. If I enter the city— Lo, those who are sick with famine. Both priest and prophet |broam |b*the land, They know not where. (NJPS) Evaluation of Translations: The NJPS is an acceptable translation that reflects the interpretation of KTBH (See footnote (a).) Other translations that follow this interpretation include NJB 'roam' and REB 'wander without rest'. NIV appears to follow this interpretation, but their translation choice, 'have gone (to the land)', fails to reflect the continuous nature of the activity. Other translations seem to assign this reference to meaning 1 and have translations that reflect that choice, eg ' ply their trade' (RSV, NRSV), 'carry on their work' (TEV), 'go about their business' (CEV). The translations that have chosen meaning 1 have left the nature of the business of the priest and prophet unstated. Translators who choose meaning 1 instead of meaning 2 should make sure that in the translation the priests and prophets are not travelling around trading goods, but rather that they performing other services that are appropriate for priests and prophets. _reference_start_Jeremiah 14:18_reference_end_ Keyword: Level 2: 3 Meaning: Other meanings Verb Stem: Piel Level 3: a Context: To beat rapidly (metaphorical extension of meaning 2 when used in this idiom) _reference_start_Psalms 38:11_reference_end_ Keyword: Note: (a) The meaning of סחר* has been disputed in three occurrences (Gen 34:10, 21; 42:34). For a survey of the main points of the argument for and against interpreting these as referring to trading, see the entry for this word in TWOT. KTBH has assigned these three occurrences to Meaning 1 due to the overall context, but Jeremiah 14:18 has been assigned to Meaning 2 because of the fact that the agents are priests and prophets. Version: 2 Date: 2007-06-25 08:01:17 Wade Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org. (((s__#sto give something as a guarantee (ערב)to give something as a guarantee (ערב)\level1 1 uIrUU{rto travel in order to trade (סחר)to travel in order to trade (סחר)Strong's number: 5503 \level1 1 Part of speech: v Frequency: 21 Cognate(s): מִסְחָר ,סַחַר ,סְחֹרָה ,סֹחֵרָה ,סֹחֶרֶת Abstract for Busy Translators: 1. The verb סחר* ‘to travel in order to trade’ is used most frequently to refer to the activity of moving from place to place for the purpose of buying and selling items (including humans). 2. Movement (Travelling) is one of the central components of the meaning of this verb. 3. This element of movement allows for the metaphorical usage of the verb in which the heart is described as moving rapidly using a variant of the Piel verb form. This unique verb form is used to refer to a state of the mind. Comparison of Meanings and Uses: Meaning 1. The basic event (focus: movement and commercim ?tfXJ<. xj\N@2$|n`RD6( :t 9t 8t 7t  6t  5t 4s 3s  2s 1s' 0s  /s% .s -s ,s  +s *sh" )s (s 's &sj# %s  $s$ #s  "s  !s s s s s s s& swz s, s+ s s s  s s s s s s s s s  s s s s s r& r r r  r r r r& ~r$ }r |rvStrong's number: 6148; 6149;6150 Part of speech: v Frequency: 33 Cognate(s): מַעֲרָב, עֲרֻבָּה, עֶרֶב, עֵרֶב, עָרֵב, עָרֹב, עֵרָבוֹן, תַּעֲרוּבָה Abstract for Busy Translators: 1. The verb ערב* 'to give something as a guarantee' is used to refer to several different types of commercial transactions. These include 'to give something as a guarantee, ie to place an item under the control of another person in order to obtain something one is lacking', 'to guarantee the repayment of the debt of another' and 'to trade'. These types of activities are used in an extended manner to refer to events in other domains. 2. Both the event of giving items as a guarantee and the event of guaranteeing the repayment of the debt of another have negative connotations. 3. The verb ערב also may be used for several other meanings including 'to mix with', 'to be pleasing', and 'to become dark as happens in the evening'. There are also meanings that are metaphorical extewnsions of these basic meanings. Comparison of Meanings and Uses: Meaning 1. The basic event of giving an item as a guarantee, ie placing an item under the control of another person in order to obtain something one is lacking Meaning 2. The basic event of guaranteeing the repayment of someone's debt Meaning 3. Extension of meaning 2. Rather than guaranteeing the repayment, the agent is guaranteeing the safety of another. Meaning 4. Extension of meaning 2. Rather than guaranteeing the repayment, the idiom with heart refers to the eagerness about doing an event. Meaning 5. Another type of economic event -- 'to trade' Meaning 6. Extension of meaning 5. Instead of actually trade, it refers to the wager about a potential trade. Meaning 7. A non-economic event -- 'to mix with' Meaning 8. Extension of meaning 7 -- 'to share' Meaning 9. A non-economic event -- 'to be pleasing' Meaning 10. A non-economic event -- 'to become dark as happens in the evening' Meaning 11. Extension of meaning 10 -- 'to become dark' Levexl 2: 1 Meaning: To give something as a guarantee; To place an item under the control of another person in order to obtain something one is lacking Frame for Meaning: Commercial Transaction: loan Verb Stem: Qal Participant Roles for Meaning: Agent: human Patient: thing or human Meaning Comments: Job 17:3 has been interpreted in a variety of ways. Level 3: a Context: To give something as a guarantee; To place an item under the control of another person in order to obtain something one is lacking Intrinsic Domains for Meaning:c Interest Participant Roles for Meaning:c Agent = subject: human Patient = object: thing or human Key Reference: _reference_start_Nehemiah 5:3_reference_end_ Key Verse: NJPS - Others said, “We must pawn our fields, our vineyards, and our homes to get grain to stave off hunger.” (NJPS) Evaluation of Translations: Most translations use the term 'to mortgage', a technical term that is known in countries with developed banking systems. NJPS uses the term 'pawn' which is very colloquiyal, but again would be unknown in many parts of the world. In languages that lack such technical terminology the translator may use a more generic translation, such as 'to pledge' (NRS) or a much longer explanation may have to be made to explain the idea of borrowing money and having to give someone land if the money is not returned by a certain date. _reference_start_Nehemiah 5:3_reference_end_ _reference_start_Job 17:3_reference_end_ Keyword: Level 2: 2 Meaning: To guarantee the repayment of another person's debt Frame for Meaning: Commercial Transaction: loan Verb Stem: Qal Grammar Notes: In Hebrew, the direct object may be either the patient or the benefactive, but if both patient and benefactive are explicitly stated, the benefactive will be marked with a preposition. Participant Roles for Meaning: Agent: human Patient: debt Benefactive: human Level 3: a Context: To guarantee the repayment of another person's debt Intrinsic Domains for Meaning:c Folly Participant Roles for Meaning:c Agent = subject:z human Patient = object: debt Benefactive = עִם* : human Key Reference: _reference_start_Proverbs 17:18_reference_end_ Key Verse: It is senseless to give a pledge, |bto become surety|b* for a neighbor. (NRS) Evaluation of Translations: The translation 'to become surety' (NRS) is a technically correct translation, but may not be understood by those unfamiliar with technical business terminology. TEV's translation 'to be responsible for someone else's debts' is a translation that can be understood by everyone. As is typical of the CEV, the parallel lines have been collapsed into one line and the "clapping of hands" phrase has been combined with the translation of ערב*. This approach is not recommended. _reference_start_Proverbs 6:1_reference_end_ _reference_start_Proverbs 11:15_reference_end_ _reference_start_Proverbs 17:18_reference_end_ _reference_start_Proverbs 20:16_reference_end_ _reference_start_Proverbs 22:26_reference_end_ _reference_start_Proverbs 27:13_reference_end_ Keyword: Cognate_Term C{ollocating Term: עֲרֻבָּה Gloss: pledge References: _reference_start_Proverbs 17:18_reference_end_ Keyword: Similar Collocating Term: חבל Gloss: to pledge References: _reference_start_Proverbs 20:16_reference_end_ _reference_start_Proverbs 27:13_reference_end_ Keyword: Similar Collocating Term: תקע Gloss: to clap (hands) References: _reference_start_Proverbs 6:1_reference_end_ _reference_start_Proverbs 11:15_reference_end_ _reference_start_Proverbs 17:18_reference_end_ _reference_start_Proverbs 22:26_reference_end_ Level 2: 3 Meaning: Other meanings Frame for Meaning: Security Level 3: a Context: To guarantee the safety of a person (Extension of meaning 2) _reference_start_Genesis 43:9_reference_end_ _reference_start_Genesis 44:32_reference_end_ _reference_start_Psalms 119:122_reference_end_ _reference_start_Isaiah 38:14_reference_end_ Keyword: Level 2: 4 Meaning: Other meanings Frame for Meaning: Willingness Level 3: a Context: To be eager to participate in an event (Extension of meaning 2)| _reference_start_Jeremiah 30:21_reference_end_ Keyword: Level 2: 5 Meaning: To trade; To exchange one item for another Frame for Meaning: Commercial Transaction Verb Stem: Qal Participant Roles for Meaning: Agent: human Patient1: animal, thing, or attributePatient2: animal, thing, or attribute Meaning Comments: Due to the limited number of occurrences of this meaning of the verb, there are no references in which all participant roles are explicitly stated. Level 3: a Context: To trade; To exchange one item for another Intrinsic Domains for Meaning:c Various (according to the nature of the item being traded) Participant Roles for Meaning:c Agent = subject: human Patient1 = implicit: animal, thing, or attributePatient2 = object or genitive: animal, thing, or attribute Key Reference: _reference_start_Ezekiel 27:9_reference_end_ Key Verse: Veteran craftsmen of Gebal were on board as shipwrights to caulk your seams. All the ships of the sea and their sailors came alongside|b to trade |b*for your wares. }(NIV) Evaluation of Translations: This is an acceptable translation. Other versions use terms such as 'to barter for your wares' or 'to guarantee your trade.' Because of the infrequent usage of this meaning of the term it is difficult to distinguish how this differs from other terms for trade. Possibly there is a component of putting up security for a trade that makes this term distinct with respect to other terms for trade. _reference_start_Ezekiel 27:9_reference_end_ _reference_start_Ezekiel 27:27_reference_end_ Keyword: Cognate_Term Collocating Term: מַעֲרָב Gloss: merchandise References: _reference_start_Ezekiel 27:9_reference_end_ _reference_start_Ezekiel 27:27_reference_end_ Level 2: 6 Meaning: Other meanings Frame for Meaning: Verbal Commitment Verb Stem: Hithpael Level 3: a Context: To make a wager Key Reference: _reference_start_2 Kings 18:23_reference_end_ Key Verse: Come now, |bmake a wager|b* with my master the king of Assyria: I will give you two thousand horses, if you are able on yo~ur part to set riders on them. (NRS) Evaluation of Translations: This is an acceptable translation. Other acceptable translations are 'make a bet' (CEV) and 'make a deal' (REB). The translation 'make a bargain' (NIV) may not carry the proper connotations of a wager/bet, but due to the lack of occurrences of this verb with this meaning, it is hard to clearly define the meaning. _reference_start_2 Kings 18:23_reference_end_ _reference_start_Isaiah 36:8_reference_end_ Keyword: Level 2: 7 Meaning: Other meanings Verb Stem: Hithpael Level 3: a Context: To mix with; To interact with _reference_start_Ezra 9:2_reference_end_ _reference_start_Psalms 106:35_reference_end_ _reference_start_Proverbs 20:19_reference_end_ _reference_start_Proverbs 24:21_reference_end_ Keyword: Level 2: 8 Meaning: Other meanings Verb Stem: Hithpael Level 3: a Context: To share (Extension of meaning 7) _reference_start_Proverbs 14:10_reference_end_ Keyword: Level 2: 9 Meaning: Other meanings Verb Stem: Qal Level 3: a Context: To be pleasing (to someone) _reference_start_Psalms 104:34_reference_end_ _reference_start_Proverbs 3:24_reference_end_ _reference_start_Proverbs 13:19_reference_end_ _reference_start_Jeremiah 6:20_reference_end_ _reference_start_Jeremiah 31:26_reference_end_ _reference_start_Ezekiel 16:37_reference_end_ _reference_start_Hosea 9:4_reference_end_ _reference_start_Malachi 3:4_reference_end_ Keyword: Level 2: 10 Meaning: Other meanings Verb Stem: Qal, Hiphil Level 3: a Context: To become dark as happens in the evening _reference_start_Judges 19:9_reference_end_ _reference_start_1 Samuel 17:16_reference_end_ Keyword: Level 2: 11 Meaning: Other meanings Level 3: a Context: To become gloomy (Extension of meaning 10) _reference_start_Isaiah 24:11_reference_end_ Keyword: Version: 4 Date: 2007-06-26 10:49:53 Wade Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org.roduce. Level 2: 1 Meaning: An item that has been acquired by a particular person and is under that person's ownership. Frame for Meaning: Commercial Transaction Participant Roles for Meaning: Event: to acquireAgent: humanPatient: thing Meaning Comments: The word רְכוּשׁ *does not appear to include human beings (Gen 14:16, 21). It does, however, sometimes include animals (Gen 36:7). At other times, רְכוּשׁ* appears to refer to items in addition to or other than certain types of animals that are listed separately (Gen 46.6). Hence מִקְנֶה* can be in both a part-whole relationship with רְכוּשׁ*, i.e., possessions including livestock, and it can also be the opposite of רְכוּשׁ*, i.e. livestock and NOT possessions. Some examples may be interpreted in at least two different ways. For instance, the phrase לִבְהֶמְתָּם וְלִרְכֻשָׁם וּלְכֹל חַיָּתָֽם׃*may be interpreted as referring to two coordinated items that are exclusive of each other and both of these two items are included in the all living creatures category. A second interpretation is that each of these three terms refers to distinct referents that are exclusive of the other two items. In this interpretation, the term חַיָּה* would refer to other animals that are neither cattle nor possessions, i.e., wild animals. Level 3: a Context: An item that has been acquired by a particular person and is under that person's ownership. Intrinsic Domains for Meaning:c Various (according to the nature of the item that is acquired) Participant Roles for Meaning:c Event = implicit: to acquireAgent = genitive: humanPatient = implicit: thing Key Reference: _reference_start_Genesis 14:16_reference_end_ Key Verse: He brought back all the |bpossessions|b*; he also brought back his kinsman Lot and his |bpossessions|b*, and the women and the rest of the people. (NJV) Evaluation of Translations: English translations included terms such as 'possessions' (TEV, CEV, NIV), 'goods' (NRS, RSV), and 'flocks and herds' (REB). Most of these terms are acceptable contextual translations, but the phrase 'flocks and herds' may be too restrictive since other items were probably included. _reference_start_Genesis 12:5_reference_end_ _reference_start_Genesis 13:6_reference_end_ _reference_start_Genesis 14:11_reference_end_ _reference_start_Genesis 14:12_reference_end_ _reference_start_Genesis 14:16_reference_end_ _reference_start_Genesis 14:16_reference_end_ _reference_start_Genesis 14:21_reference_end_ _reference_start_Genesis 15:14_reference_end_ _reference_start_Genesis 31:18_reference_end_ _reference_start_Genesis 36:7_reference_end_ _reference_start_Genesis 46:6_reference_end_ _reference_start_Numbers 16:32_reference_end_ _reference_start_Numbers 35:3_reference_end_ _reference_start_1 Chronicles 27:31_reference_end_ _reference_start_1 Chronicles 28:1_reference_end_ _reference_start_2 Chronicles 20:25_reference_end_ _reference_start_2 Chronicles 21:14_reference_end_ _reference_start_2 Chronicles 21:17_reference_end_ _reference_start_2 Chronicles 31:3_reference_end_ _reference_start_2 Chronicles 32:29_reference_end_ _reference_start_2 Chronicles 35:7_reference_end_ _reference_start_Ezra 1:4_reference_end_ _reference_start_Ezra 1:6_reference_end_ _reference_start_Ezra 8:21_reference_end_ _reference_start_Ezra 10:8_reference_end_ _reference_start_Daniel 11:13_reference_end_ _reference_start_Daniel 11:24_reference_end_ _reference_start_Daniel 11:28_reference_end_ Keyword: Cognate_Term Collocating Term: רכשׁ Keyword: Similar_Term Collocating Term: קִנְיָן Gloss: owned item References: _reference_start_Genesis 31:18_reference_end_ Keyword: Opposite_Term Collocating Term: אֹכֶל Gloss: food References: _reference_start_Genesis 14:11_reference_end_ Keyword: Opposite_Term Collocating Term: אָדָם Gloss: man References: _reference_start_Numbers 16:32_reference_end_ Keyword: Opposite_Term Collocating Term: אִשָּׁה Gloss: woman References: _reference_start_Genesis 14:16_reference_end_ _reference_start_2 Chronicles 21:14_reference_end_ _reference_start_2 Chronicles 21:17_reference_end_ Keyword: Opposite_Term Collocating Term: בְּהֵמָה Gloss: cattle References: _reference_start_Ezra 1:4_reference_end_ Keyword: Opposite_Term Collocating Term: בֵּן Gloss: son References: _reference_start_2 Chronicles 21:14_reference_end_ _reference_start_2 Chronicles 21:17_reference_end_ Keyword: Opposite_Term Collocating Term: חַיָּה Gloss: living creature References: _reference_start_Numbers 35:3_reference_end_ Keyword: Opposite_Term Collocating Term: טַף Gloss: children References: _reference_start_Ezra 8:21_reference_end_ Keyword: Opposite_Term Collocating Term: כְּלִי Gloss: vessels References: _reference_start_2 Chronicles 20:25_reference_end_ Keyword: Opposite_Term Collocating Term: מֶגֶד Gloss: presents References: _reference_start_Ezra 1:6_reference_end_ Keyword: Opposite_Term Collocating Term: מִקְנֶה Gloss: livestock References: _reference_start_Genesis 46:6_reference_end_ _reference_start_Numbers 35:3_reference_end_ _reference_start_1 Chronicles 28:1_reference_end_ _reference_start_Ezra 1:4_reference_end_ _reference_start_Ezra 1:6_reference_end_ Keyword: Opposite_Term Collocating Term: נֶפֶשׁ Gloss: people References: _reference_start_Genesis 12:5_reference_end_ _reference_start_Genesis 14:21_reference_end_ Keyword: Opposite_Term Collocating Term: עַם Gloss: people References: _reference_start_Genesis 14:16_reference_end_ _reference_start_2 Chronicles 21:14_reference_end_ Keyword: Opposite_Term Collocating Term: שָׁלָל Gloss: booty References: _reference_start_Daniel 11:24_reference_end_ Keyword: Part-whole_Term Collocating Term: מִקְנֶה Gloss: livestock References: _reference_start_Genesis 36:7_reference_end_ Version: 2 Date: 2007-01-29 08:34:20 Wade Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org. ||suCCquto serve as priest (כהן)to serve as priest (כהן)Strong's number: 3547 Part of speech: v Frequency: 23 Cognate(s): כֹּהֵן, כְּEtEEtpossessions (רְכוּשׁ)possessions (רְכוּשׁ)Strong's number: 7399 \level1 1 Part of speech: ncm Frequency: 28 Cognate(s): רכשׁ Abstract for Busy Translators: The term רְכוּשׁ* 'possessions' refers to items that have been acquired by a particular person by one of a variety of means. These items are then under that person's ownership. * Comparison of Meanings and Uses: There is only one meaning for רְכוּשׁ* 'possessions'. Domain and Frame Notes: In 2 Chronicles 35:7, רְכוּשׁ* is used as a summary term that includes all kinds of animals in herds and flocks as well as other possessions such as silver, gold, other costly items, and storage buildings with grain, wine, and other p ?tfXJ<. xj\N@2$|n`RD6( yu xu wu# vu( uu( tu') su# ru qu pu, ou nu) mu lu ku ju( it$ ht  gt ft et dt  ct bt at  `t# _t. ^t ]t \t [t# Zt Yt Xt Wt Vt Ut Tt St Rt Qt  Pt  Ot Nt  Mt Lt Kt Jt# It  Ht Gt Ft Et Dt  Ct  Bt# At @t. ?t$ >t =t <t ;tהֻנָּה Abstract for Busy Translators: 1. This word most commonly refers to the service of priests of the order of Aaron in the tabernacle and the temple.2. It is used once of the service of Levites at local shrines.3. In a few cases the focus is on adornment as a priest.4. Once the word is used of a bridegroom dressing himself like a priest.5. Once this word is used metaphorically of Israel's special relationship with God. Hebraists' Comments: This verb is used only in the Piel stem. It is generally considered to be derived from the noun כֹּהֵן*. Alternatively, the noun may be understood as the participle of the otherwise unknown Qal form of the verb. Comparison of Meanings and Uses: *1 Frame: Priesthood2 Metaphorical extension of Meaning 1; Frame: Service of God3 Metaphorical extension of Meaning 1; Frame: Adornment4 Metaphorical extension of Meaning 1; Frame: Special relationship Domain and Frame Notes: See the notes under כֹּהֵן*. Level 2: 1 Meaning: To serve as priest of God, regularly to offer sacrifices to God as an intermediary between people and God Frame for Meaning: Priesthood Intrinsic Domains for Meaning: Sacrifice; Service of God; Hereditary role Verb Stem: Piel Participant Roles for Meaning: Agent: humanRecipient: GodBeneficiary: human Level 3: a Context: To serve as priest of the order of Aaron Intrinsic Domains for Meaning:c Tabernacle; Temple; Special clothing; Special head covering; High Priest Participant Roles for Meaning:c Agent = subject: human = Aaron or descendantRecipient = לְ* or implicit (or in context): GodBeneficiary = implicit: human = Israelite Meaning Comments:c The focus in Exodus 31:10; 35:19; 39:41 is not on priestly activities or on God as beneficiary, but on proper adornment. In Exodus 28:3, 4, 41; 40:13 this focus is combined with a wider focus on priestly activities. In each case the garments to be worn are described in the immediate context. Key Reference: _reference_start_Exodus 40:13_reference_end_ Key Verse: Then dress Aaron in the sacred garments, anoint him and consecrate him so he may |bserve |b*me |bas priest|b*. (NIV) Evaluation of Translations: REB and CEV differ from other translations in omitting 'serve'. _reference_start_Exodus 28:1_reference_end_ _reference_start_Exodus 28:3_reference_end_ _reference_start_Exodus 28:4_reference_end_ _reference_start_Exodus 28:41_reference_end_ _reference_start_Exodus 29:1_reference_end_ _reference_start_Exodus 29:44_reference_end_ _reference_start_Exodus 30:30_reference_end_ _reference_start_Exodus 31:10_reference_end_ _reference_start_Exodus 35:19_reference_end_ _reference_start_Exodus 39:41_reference_end_ _reference_start_Exodus 40:13_reference_end_ _reference_start_Exodus 40:15_reference_end_ _reference_start_Leviticus 7:35_reference_end_ _reference_start_Leviticus 16:32_reference_end_ _reference_start_Numbers 3:3_reference_end_ _reference_start_Numbers 3:4_reference_end_ _reference_start_Deuteronomy 10:6_reference_end_ _reference_start_1 Chronicles 5:36_reference_end_ _reference_start_1 Chronicles 24:2_reference_end_ _reference_start_Ezekiel 44:13_reference_end_ Keyword: Similar Collocating Term: קרב Gloss: to approach References: _reference_start_Exodus 28:1_reference_end_ _reference_start_Leviticus 7:35_reference_end_ Keyword: Similar Collocating Term: נגשׁ Gloss: to approach References: _reference_start_Ezekiel 44:13_reference_end_ Keyword: Associated Collocating Term: קדשׁ Gloss: to sanctify References: _reference_start_Exodus 28:3_reference_end_ _reference_start_Exodus 28:41_reference_end_ _reference_start_Exodus 29:1_reference_end_ _reference_start_Exodus 29:44_reference_end_ _reference_start_Exodus 30:30_reference_end_ _reference_start_Exodus 40:13_reference_end_ Keyword: Associated Collocating Term: משׁח Gloss: to anoint References: _reference_start_Exodus 28:41_reference_end_ _reference_start_Exodus 30:30_reference_end_ _reference_start_Exodus 40:13_reference_end_ _reference_start_Exodus 40:15_reference_end_ _reference_start_Leviticus 16:32_reference_end_ _reference_start_Numbers 3:3_reference_end_ Keyword: Associated Collocating Term: מלא יָד Gloss: to ordain References: _reference_start_Exodus 28:41_reference_end_ _reference_start_Leviticus 16:32_reference_end_ _reference_start_Numbers 3:3_reference_end_ Keyword: Associated Collocating Term: שׁרת Gloss: to serve References: _reference_start_Exodus 35:19_reference_end_ _reference_start_Exodus 39:41_reference_end_ Keyword: Associated Collocating Term: כֹּהֵן Gloss: priest References: _reference_start_Exodus 31:10_reference_end_ _reference_start_Exodus 35:19_reference_end_ _reference_start_Exodus 39:41_reference_end_ _reference_start_Leviticus 16:32_reference_end_ _reference_start_Numbers 3:3_reference_end_ Keyword: Associated Collocating Term: בֶּגֶד Gloss: garment References: _reference_start_Exodus 28:3_reference_end_ _reference_start_Exodus 28:4_reference_end_ _reference_start_Exodus 31:10_reference_end_ _reference_start_Exodus 35:19_reference_end_ _reference_start_Exodus 39:41_reference_end_ _reference_start_Exodus 40:13_reference_end_ _reference_start_Leviticus 16:32_reference_end_ Level 2: 2 Meaning: To serve God in a role similar to that of a priest (Metaphorical extension of Meaning 1) Frame for Meaning: Service of God Intrinsic Domains for Meaning: Hereditary role Level 3: a Context: To serve as Levite Intrinsic Domains for Meaning:c Local shrines; Northern kingdom of Israel Participant Roles for Meaning:c Agent = subject: human = LeviteBeneficiary = לְ*: God Key Reference: _reference_start_2 Chronicles 11:14_reference_end_ Key Verse: The Levites had left their pasturelands and their holdings and had set out for Judah and Jerusalem, for Jeroboam and his sons had prevented them from |bserving|b* the Lord, (Tanakh) Evaluation of Translations: Most translations, excluding Tanakh, read 'serve as priests' or similar. But the passage distinguishes priests from Levites, and this verse seems to refer to the latter. If so, the verb כהן* must refer to their service as Levites rather than as priests. An alternative interpretation would be to understand vv.13-14 as chiastic, so that v.14a refers to Levites and v.14b refers to priests. _reference_start_2 Chronicles 11:14_reference_end_ Keyword: Similar Collocating Term: לֵוִי Gloss: Levite References: _reference_start_2 Chronicles 11:14_reference_end_ Level 2: 3 Meaning: To dress up like a priest (Metaphorical extension of Meaning 1) Frame for Meaning: Adornment Verb Stem: Piel Participant Roles for Meaning: Agent: humanTheme: adornment Level 3: a Context: To dress up like a priest, of a bridegroom for his wedding Intrinsic Domains for Meaning:c Wedding; Special head covering Participant Roles for Meaning:c Agent = subject: human = bridegroomTheme = object: adornment Key Reference: _reference_start_Isaiah 61:10_reference_end_ Key Verse: ... as a bridegroom |badorns|b* his head |blike a priest|b*, and as a bride adorns herself with her jewels. (NIV) Evaluation of Translations: Most translations lose the reference here to being like a priest. NIV brings it out well, and also cleverly avoids specifying the exact meaning of פְּאֵר*, which is not 'head' but something uncertain worn on the head. _reference_start_Isaiah 61:10_reference_end_ Keyword: Similar Collocating Term: לבשׁ Gloss: to put on (garment) References: _reference_start_Isaiah 61:10_reference_end_ Keyword: Similar Collocating Term: יעט Gloss: to cover References: _reference_start_Isaiah 61:10_reference_end_ Keyword: Similar Collocating Term: עדה Gloss: to adorn oneself References: _reference_start_Isaiah 61:10_reference_end_ Level 2: 4 Meaning: To have a special relationship with God like that of a priest (Metaphorical extension of Meaning 1) Frame for Meaning: Relationship with God Verb Stem: Piel Participant Roles for Meaning: Agent: God Patient: nation Level 3: a Context: To have a special relationship with God like that of a priest, of Israel Intrinsic Domains for Meaning:c Prophetic denunciation; Israelites Participant Roles for Meaning:c Agent = לְ*: God Patient = subject: nation = Israel Meaning Comments:c This verse seems to refer not to the priests of the order of Aaron but to Israel's special relationship with God. Key Reference: _reference_start_Hosea 4:6_reference_end_ Key Verse: ... because you have rejected knowledge, I reject you from |bbeing a priest|b* to me. (RSV) Evaluation of Translations: NIV, TEV and CEV read 'priests' in the plural, but the 'you' is singular and so refers collectively to Israel, likened to a priest. RSV, NRSV, REB and NJV make the singular clear. See also the discussion of Hosea 4:4 in כֹּהֵן* note (k). _reference_start_Hosea 4:6_reference_end_ Keyword: Version: 0 Date: 2004-04-06 peterk Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org. ?tfXJ<. xj\N@2$|n`RD6( 8v 7v 6v 5v 4v 3v 2v 1v 0v /v .v -v ,v +v *v )v (u 'u &u= %u= $u= #u= "u= !u  u  u  u u( u') u# u u u u u u') u# u u') u# u u u) u u u( u( u u) u( u u, u u) u u, u# u ~u, }u  |u $ {u  zudVTV\bhntz$+29@GNU\cjqx  '.5<CJQX_fmt{kMlSY_"e(k.q4w:kMlSY_"e(k.q4w:}@B/@;U>V}_<j{t:y8䁅w偆6恆u灇4聇s遈2ꁈq끉0쁉o큊.m,k*i(g&KeL$McN"OaP Q_RS]TU[VWYagWrUSQOŁMƁ ǁKρ IGECA? ~=|*;+z,9-x.7/v657tR3Srling(s): כָּהֵן (Aramaic) Part of speech: ncm Frequency: 758 Cognate(s): כהן Abstract for Busy Translators: 1. This word refers primarily to priests serving God in the Tabernacle and the Temple.2. It is also used for other priests of God and for priests of pagan gods.3. In a few cases it refers to a special relationship with God.4. In three places where the meaning is sometimes understood as 'royal adviser', KTBH prefers to understand a reference to an unofficial priesthood. Notes for Translators: 1. The role of a כֹּהֵן* is very different from that of the leaders of Christian congregations (see 'New Testament' below). Therefore it is inappropriate to translate this word with a term which is used primarily for Christian leaders.2. Uses 1b and 1d refer to the single High Priest, who had special functions. But this role was not clearly defined during the early monarchy period. In translation, a special word or phrase for 'High Priest' may be used when the Hebrew word is qualified by גָּדֹול* or רֹאשׁ*. When the Hebrew is simply כֹּהֵן* but the reference is to someone elsewhere identified as High Priest, the word or phrase for 'High Priest' may be appropriate, but other prominent named priests should not be assumed to be the High Priest.3. The leaders (plural) of the priests mentioned at 2 Chronicles 36:14 and Ezra 8:24, 29; 10:5 should be distinguished from the singular High Priest; a rendering like 'chief priests' may be misleading. 4. כֹּהֵן*, and Aramaic כָּהֵן*, is related to the Arabic word |ikāhin|i*, which has been borrowed into other languages. The meaning in Arabic is rather different from the Hebrew, more like 'diviner', but in some other languages this word is used in the sense 'priest' and so may be an appropriate rendering of כֹּהֵן*. Hebraists' Comments: The noun כֹּהֵן* may be understood as the participle of the otherwise unknown Qal form of the verb כהן*. New Testament Evidence: The Greek equivalents of כֹּהֵן*, ἱερες*, also ἀρχιερεύς* 'High Priest, chief priest', are used in the New Testament almost entirely of Jewish priests, and only once of pagan priests (Acts 14:13). They are used of Jesus Christ only in Hebrews. They are also used three times in Revelation (1:6; 5:10; 20:6; cf. ἱεράτευμα* 'priesthood' 1 Peter 2:5,9) of all Christian believers; these uses allude to Exodus 19:6, and so relate to Meaning 3 below and bring out the idea of a priest as an intermediary between people and God but with no sacrificial function. But they are nowhere used as a specific term for Christian leaders, who did not offer sacrifices; their relationship with other Christians should not be compared to that of Jewish priests with other Jews. Comparison of Meanings and Uses: 1 Frame: Priesthood; Core domains: Sacrifice; Service of God; Hereditary role 1a Domains: Tabernacle; Temple; Instruction; Agent: any descendant of Aaron 1b Domains: Tabernacle; Temple; High Priest; Agent: Aaron or most senior descendant 1c Domains: Tabernacle; Temple; Instruction; Agent: Aaron or descendant, named 1d Domains: Tabernacle; Temple; High Priest; Agent: Aaron or most senior descendant, named 1e Domains: Local shrines; Northern kingdom of Israel 1f Domain: Non-Israelite people 1g Domain: Prophetic promise2 Frame: Priesthood; Core domains: Sacrifice; Worship of pagan gods 2a Domain: Israelites; Recipient: Baal 2b Domain: Non-Israelite people3 Metaphorical extension of Meaning 1; Frame: Special relationship 3a Domains: Prophetic promise; Israelites 3b Domains: Prophetic promise; Non-Israelite people Domain and Frame Notes: כֹּהֵן* is a cultic term. The great majority of its uses refer to those charged with leading worship in the Tabernacle and the Temple. A smaller number relate to other worship of God and to worship of pagan gods. Just a few times the word is used to indicate a special relationship with God.The analysis of this word and of its cognates is based on an understanding that in Hebrew thinking there were several distinct domains of worship. These are distinguished by different settings, regulations, associations, and sequences of events, and by the biblical authors' different attitudes towards them. Therefore a distinction is made here between Worship in the Tabernacle and the Temple, Worship at local shrines (i.e. authorised worship led by Levites), Unofficial Israelite worship of God (including worship not authorised by the Law of Moses), Non-Israelite worship of God, and Worship of pagan gods. The precise distinctions between these domains are unclear, and sometimes depend on the different perspectives and evaluations of different biblical authors.The main duties of a priest in the Tabernacle and the Temple were to offer sacrifices. Subsidiary roles included teaching and prayer, and seeking guidance from God. Certain sacrifices could be offered only by the single High Priest. Priests at local shrines also offered some sacrifices, although this is not permitted by the law of Moses; this is why Josiah closed down the local shrines (2 Kings 23:8, 9). The main roles of non-Israelite priests also seem to have been sacrificial. Level 2: 1 Meaning: Priest of God, one who offers sacrifices to God as an intermediary between people and God Frame for Meaning: Priesthood Intrinsic Domains for Meaning: Sacrifice; Service of God; Hereditary role Participant Roles for Meaning: Event: to sacrificeAgent = headword: human = priestRecipient: God Beneficiary: human = worshipper Level 3: a Context: Priest of the order of Aaron (generic), one who offers sacrifices to God in the Tabernacle or Temple as an intermediary between Israelite people and God Intrinsic Domains for Meaning:c Tabernacle; Temple; Instruction Participant Roles for Meaning:c Event = mostly implicit or in wider context: to sacrificeAgent = headword: human = any descendant of AaronRecipient = mostly implicit or in wider context: God Beneficiary = mostly implicit or in wider context: human = Israelite Key Reference: _reference_start_Leviticus 1:5_reference_end_ Key Verse: ... Aaron's sons the |bpriests |b*shall present the blood ... (RSV) Evaluation of Translations: All the translations consulted use 'priest' here. _reference_start_Leviticus 1:5_reference_end_ _reference_start_Leviticus 1:8_reference_end_ _reference_start_Leviticus 1:9_reference_end_ _reference_start_Leviticus 1:11_reference_end_ _reference_start_Leviticus 1:12_reference_end_ _reference_start_Leviticus 1:13_reference_end_ _reference_start_Leviticus 1:15_reference_end_ _reference_start_Leviticus 1:17_reference_end_ _reference_start_Leviticus 2:2_reference_end_ _reference_start_Leviticus 2:2_reference_end_ _reference_start_Leviticus 2:8_reference_end_ _reference_start_Leviticus 2:9_reference_end_ _reference_start_Leviticus 2:16_reference_end_ _reference_start_Leviticus 3:2_reference_end_ _reference_start_Leviticus 3:11_reference_end_ _reference_start_Leviticus 3:16_reference_end_ _reference_start_Leviticus 4:25_reference_end_ _reference_start_Leviticus 4:26_reference_end_ _reference_start_Leviticus 4:30_reference_end_ _reference_start_Leviticus 4:31_reference_end_ _reference_start_Leviticus 4:31_reference_end_ _reference_start_Leviticus 4:34_reference_end_ _reference_start_Leviticus 4:35_reference_end_ _reference_start_Leviticus 4:35_reference_end_ _reference_start_Leviticus 5:6_reference_end_ _reference_start_Leviticus 5:8_reference_end_ _reference_start_Leviticus 5:10_reference_end_ _reference_start_Leviticus 5:12_reference_end_ _reference_start_Leviticus 5:12_reference_end_ _reference_start_Leviticus 5:13_reference_end_ _reference_start_Leviticus 5:13_reference_end_ _reference_start_Leviticus 5:16_reference_end_ _reference_start_Leviticus 5:16_reference_end_ _reference_start_Leviticus 5:18_reference_end_ _reference_start_Leviticus 5:18_reference_end_ _reference_start_Leviticus 5:25_reference_end_ _reference_start_Leviticus 5:26_reference_end_ _reference_start_Leviticus 6:3_reference_end_ _reference_start_Leviticus 6:5_reference_end_ _reference_start_Leviticus 6:16_reference_end_ _reference_start_Leviticus 6:19_reference_end_ _reference_start_Leviticus 6:22_reference_end_ _reference_start_Leviticus 7:5_reference_end_ _reference_start_Leviticus 7:6_reference_end_ _reference_start_Leviticus 7:7_reference_end_ _reference_start_Leviticus 7:8_reference_end_ _reference_start_Leviticus 7:8_reference_end_ _reference_start_Leviticus 7:9_reference_end_ _reference_start_Leviticus 7:14_reference_end_ _reference_start_Leviticus 7:31_reference_end_ _reference_start_Leviticus 7:32_reference_end_ _reference_start_Leviticus 12:6_reference_end_ _reference_start_Leviticus 12:8_reference_end_ _reference_start_Leviticus 13:2_reference_end_ _reference_start_Leviticus 13:3_reference_end_ _reference_start_Leviticus 13:3_reference_end_ _reference_start_Leviticus 13:4_reference_end_ _reference_start_Leviticus 13:5_reference_end_ _reference_start_Leviticus 13:5_reference_end_ _reference_start_Leviticus 13:6_reference_end_ _reference_start_Leviticus 13:6_reference_end_ _reference_start_Leviticus 13:7_reference_end_ _reference_start_Leviticus 13:7_reference_end_ _reference_start_Leviticus 13:8_reference_end_ _reference_start_Leviticus 13:8_reference_end_ _reference_start_Leviticus 13:9_reference_end_ _reference_start_Leviticus 13:10_reference_end_ _reference_start_Leviticus 13:11_reference_end_ _reference_start_Leviticus 13:12_reference_end_ _reference_start_Leviticus 13:13_reference_end_ _reference_start_Leviticus 13:15_reference_end_ _reference_start_Leviticus 13:16_reference_end_ _reference_start_Leviticus 13:17_reference_end_ _reference_start_Leviticus 13:17_reference_end_ _reference_start_Leviticus 13:19_reference_end_ _reference_start_Leviticus 13:20_reference_end_ _reference_start_Leviticus 13:20_reference_end_ _reference_start_Leviticus 13:21_reference_end_ _reference_start_Leviticus 13:21_reference_end_ _reference_start_Leviticus 13:22_reference_end_ _reference_start_Leviticus 13:23_reference_end_ _reference_start_Leviticus 13:25_reference_end_ _reference_start_Leviticus 13:25_reference_end_ _reference_start_Leviticus 13:26_reference_end_ _reference_start_Leviticus 13:26_reference_end_ _reference_start_Leviticus 13:27_reference_end_ _reference_start_Leviticus 13:27_reference_end_ _reference_start_Leviticus 13:28_reference_end_ _reference_start_Leviticus 13:30_reference_end_ _reference_start_Leviticus 13:30_reference_end_ _reference_start_Leviticus 13:31_reference_end_ _reference_start_Leviticus 13:31_reference_end_ _reference_start_Leviticus 13:32_reference_end_ _reference_start_Leviticus 13:33_reference_end_ _reference_start_Leviticus 13:34_reference_end_ _reference_start_Leviticus 13:34_reference_end_ _reference_start_Leviticus 13:36_reference_end_ _reference_start_Leviticus 13:36_reference_end_ _reference_start_Leviticus 13:37_reference_end_ _reference_start_Leviticus 13:39_reference_end_ _reference_start_Leviticus 13:43_reference_end_ _reference_start_Leviticus 13:44_reference_end_ _reference_start_Leviticus 13:49_reference_end_ _reference_start_Leviticus 13:50_reference_end_ _reference_start_Leviticus 13:53_reference_end_ _reference_start_Leviticus 13:54_reference_end_ _reference_start_Leviticus 13:55_reference_end_ _reference_start_Leviticus 13:56_reference_end_ _reference_start_Leviticus 14:2_reference_end_ _reference_start_Leviticus 14:3_reference_end_ _reference_start_Leviticus 14:3_reference_end_ _reference_start_Leviticus 14:4_reference_end_ _reference_start_Leviticus 14:5_reference_end_ _reference_start_Leviticus 14:11_reference_end_ _reference_start_Leviticus 14:12_reference_end_ _reference_start_Leviticus 14:13_reference_end_ _reference_start_Leviticus 14:14_reference_end_ _reference_start_Leviticus 14:14_reference_end_ _reference_start_Leviticus 14:15_reference_end_ _reference_start_Leviticus 14:15_reference_end_ _reference_start_Leviticus 14:16_reference_end_ _reference_start_Leviticus 14:17_reference_end_ _reference_start_Leviticus 14:18_reference_end_ _reference_start_Leviticus 14:18_reference_end_ _reference_start_Leviticus 14:19_reference_end_ _reference_start_Leviticus 14:20_reference_end_ _reference_start_Leviticus 14:20_reference_end_ _reference_start_Leviticus 14:23_reference_end_ _reference_start_Leviticus 14:24_reference_end_ _reference_start_Leviticus 14:24_reference_end_ _reference_start_Leviticus 14:25_reference_end_ _reference_start_Leviticus 14:26_reference_end_ _reference_start_Leviticus 14:26_reference_end_ _reference_start_Leviticus 14:27_reference_end_ _reference_start_Leviticus 14:28_reference_end_ _reference_start_Leviticus 14:29_reference_end_ _reference_start_Leviticus 14:31_reference_end_ _reference_start_Leviticus 14:35_reference_end_ _reference_start_Leviticus 14:36_reference_end_ _reference_start_Leviticus 14:36_reference_end_ _reference_start_Leviticus 14:36_reference_end_ _reference_start_Leviticus 14:38_reference_end_ _reference_start_Leviticus 14:39_reference_end_ _reference_start_Leviticus 14:40_reference_end_ _reference_start_Leviticus 14:44_reference_end_ _reference_start_Leviticus 14:48_reference_end_ _reference_start_Leviticus 14:48_reference_end_ _reference_start_Leviticus 15:14_reference_end_ _reference_start_Leviticus 15:15_reference_end_ _reference_start_Leviticus 15:15_reference_end_ _reference_start_Leviticus 15:29_reference_end_ _reference_start_Leviticus 15:30_reference_end_ _reference_start_Leviticus 15:30_reference_end_ _reference_start_Leviticus 16:33_reference_end_ _reference_start_Leviticus 17:5_reference_end_ _reference_start_Leviticus 17:6_reference_end_ _reference_start_Leviticus 19:22_reference_end_ _reference_start_Leviticus 21:1_reference_end_ _reference_start_Leviticus 21:9_reference_end_ _reference_start_Leviticus 22:10_reference_end_ _reference_start_Leviticus 22:11_reference_end_ _reference_start_Leviticus 22:12_reference_end_ _reference_start_Leviticus 22:13_reference_end_ _reference_start_Leviticus 22:14_reference_end_ _reference_start_Leviticus 23:10_reference_end_ _reference_start_Leviticus 23:11_reference_end_ _reference_start_Leviticus 23:20_reference_end_ _reference_start_Leviticus 23:20_reference_end_ _reference_start_Leviticus 27:8_reference_end_ _reference_start_Leviticus 27:8_reference_end_ _reference_start_Leviticus 27:8_reference_end_ _reference_start_Leviticus 27:11_reference_end_ _reference_start_Leviticus 27:12_reference_end_ _reference_start_Leviticus 27:12_reference_end_ _reference_start_Leviticus 27:14_reference_end_ _reference_start_Leviticus 27:14_reference_end_ _reference_start_Leviticus 27:18_reference_end_ _reference_start_Leviticus 27:21_reference_end_ _reference_start_Leviticus 27:23_reference_end_ _reference_start_Numbers 3:3_reference_end_ _reference_start_Numbers 5:8_reference_end_ _reference_start_Numbers 5:9_reference_end_ _reference_start_Numbers 5:10_reference_end_ _reference_start_Numbers 5:15_reference_end_ _reference_start_Numbers 5:16_reference_end_ _reference_start_Numbers 5:17_reference_end_ _reference_start_Numbers 5:17_reference_end_ _reference_start_Numbers 5:18_reference_end_ _reference_start_Numbers 5:18_reference_end_ _reference_start_Numbers 5:19_reference_end_ _reference_start_Numbers 5:21_reference_end_ _reference_start_Numbers 5:21_reference_end_ _reference_start_Numbers 5:23_reference_end_ _reference_start_Numbers 5:25_reference_end_ _reference_start_Numbers 5:26_reference_end_ _reference_start_Numbers 5:30_reference_end_ _reference_start_Numbers 6:10_reference_end_ _reference_start_Numbers 6:11_reference_end_ _reference_start_Numbers 6:16_reference_end_ _reference_start_Numbers 6:17_reference_end_ _reference_start_Numbers 6:19_reference_end_ _reference_start_Numbers 6:20_reference_end_ _reference_start_Numbers 6:20_reference_end_ _reference_start_Numbers 10:8_reference_end_ _reference_start_Numbers 15:25_reference_end_ _reference_start_Numbers 15:28_reference_end_ _reference_start_Deuteronomy 17:9_reference_end_ _reference_start_Deuteronomy 17:12_reference_end_ _reference_start_Deuteronomy 17:18_reference_end_ _reference_start_Deuteronomy 18:1_reference_end_ _reference_start_Deuteronomy 18:3_reference_end_ _reference_start_Deuteronomy 18:3_reference_end_ _reference_start_Deuteronomy 19:17_reference_end_ _reference_start_Deuteronomy 20:2_reference_end_ _reference_start_Deuteronomy 21:5_reference_end_ _reference_start_Deuteronomy 24:8_reference_end_ _reference_start_Deuteronomy 26:3_reference_end_ _reference_start_Deuteronomy 26:4_reference_end_ _reference_start_Deuteronomy 27:9_reference_end_ _reference_start_Deuteronomy 31:9_reference_end_ _reference_start_Joshua 3:3_reference_end_ _reference_start_Joshua 3:6_reference_end_ _reference_start_Joshua 3:8_reference_end_ _reference_start_Joshua 3:13_reference_end_ _reference_start_Joshua 3:14_reference_end_ _reference_start_Joshua 3:15_reference_end_ _reference_start_Joshua 3:17_reference_end_ _reference_start_Joshua 4:3_reference_end_ _reference_start_Joshua 4:9_reference_end_ _reference_start_Joshua 4:10_reference_end_ _reference_start_Joshua 4:11_reference_end_ _reference_start_Joshua 4:16_reference_end_ _reference_start_Joshua 4:17_reference_end_ _reference_start_Joshua 4:18_reference_end_ _reference_start_Joshua 4:18_reference_end_ _reference_start_Joshua 6:4_reference_end_ _reference_start_Joshua 6:4_reference_end_ _reference_start_Joshua 6:6_reference_end_ _reference_start_Joshua 6:6_reference_end_ _reference_start_Joshua 6:8_reference_end_ _reference_start_Joshua 6:9_reference_end_ _reference_start_Joshua 6:12_reference_end_ _reference_start_Joshua 6:13_reference_end_ _reference_start_Joshua 6:16_reference_end_ _reference_start_Joshua 8:33_reference_end_ _reference_start_Joshua 21:19_reference_end_ _reference_start_1 Samuel 22:11_reference_end_ _reference_start_1 Samuel 22:17_reference_end_ _reference_start_1 Samuel 22:17_reference_end_ _reference_start_1 Samuel 22:18_reference_end_ _reference_start_1 Samuel 22:18_reference_end_ _reference_start_1 Samuel 22:19_reference_end_ _reference_start_1 Samuel 22:21_reference_end_ _reference_start_1 Kings 8:3_reference_end_ _reference_start_1 Kings 8:4_reference_end_ _reference_start_1 Kings 8:6_reference_end_ _reference_start_1 Kings 8:10_reference_end_ _reference_start_1 Kings 8:11_reference_end_ _reference_start_2 Kings 12:5_reference_end_ _reference_start_2 Kings 12:6_reference_end_ _reference_start_2 Kings 12:7_reference_end_ _reference_start_2 Kings 12:8_reference_end_ _reference_start_2 Kings 12:9_reference_end_ _reference_start_2 Kings 12:10_reference_end_ _reference_start_2 Kings 12:17_reference_end_ _reference_start_2 Kings 19:2_reference_end_ _reference_start_2 Kings 23:2_reference_end_ _reference_start_2 Kings 23:4_reference_end_ _reference_start_1 Chronicles 9:2_reference_end_ _reference_start_1 Chronicles 9:10_reference_end_ _reference_start_1 Chronicles 9:30_reference_end_ _reference_start_1 Chronicles 13:2_reference_end_ _reference_start_1 Chronicles 15:14_reference_end_ _reference_start_1 Chronicles 15:24_reference_end_ _reference_start_1 Chronicles 16:6_reference_end_ _reference_start_1 Chronicles 16:39_reference_end_ _reference_start_1 Chronicles 23:2_reference_end_ _reference_start_1 Chronicles 24:6_reference_end_ _reference_start_1 Chronicles 24:31_reference_end_ _reference_start_1 Chronicles 28:13_reference_end_ _reference_start_1 Chronicles 28:21_reference_end_ _reference_start_2 Chronicles 4:6_reference_end_ _reference_start_2 Chronicles 4:9_reference_end_ _reference_start_2 Chronicles 5:5_reference_end_ _reference_start_2 Chronicles 5:7_reference_end_ _reference_start_2 Chronicles 5:11_reference_end_ _reference_start_2 Chronicles 5:11_reference_end_ _reference_start_2 Chronicles 5:12_reference_end_ _reference_start_2 Chronicles 5:14_reference_end_ _reference_start_2 Chronicles 6:41_reference_end_ _reference_start_2 Chronicles 7:2_reference_end_ _reference_start_2 Chronicles 7:6_reference_end_ _reference_start_2 Chronicles 7:6_reference_end_ _reference_start_2 Chronicles 8:14_reference_end_ _reference_start_2 Chronicles 8:14_reference_end_ _reference_start_2 Chronicles 8:15_reference_end_ _reference_start_2 Chronicles 11:13_reference_end_ _reference_start_2 Chronicles 13:9_reference_end_ _reference_start_2 Chronicles 13:10_reference_end_ _reference_start_2 Chronicles 13:12_reference_end_ _reference_start_2 Chronicles 13:14_reference_end_ _reference_start_2 Chronicles 15:3_reference_end_ _reference_start_2 Chronicles 17:8_reference_end_ _reference_start_2 Chronicles 19:8_reference_end_ _reference_start_2 Chronicles 23:4_reference_end_ _reference_start_2 Chronicles 23:6_reference_end_ _reference_start_2 Chronicles 23:18_reference_end_ _reference_start_2 Chronicles 24:5_reference_end_ _reference_start_2 Chronicles 26:17_reference_end_ _reference_start_2 Chronicles 26:18_reference_end_ _reference_start_2 Chronicles 26:19_reference_end_ _reference_start_2 Chronicles 26:19_reference_end_ _reference_start_2 Chronicles 26:20_reference_end_ _reference_start_2 Chronicles 29:4_reference_end_ _reference_start_2 Chronicles 29:16_reference_end_ _reference_start_2 Chronicles 29:21_reference_end_ _reference_start_2 Chronicles 29:22_reference_end_ _reference_start_2 Chronicles 29:24_reference_end_ _reference_start_2 Chronicles 29:26_reference_end_ _reference_start_2 Chronicles 29:34_reference_end_ _reference_start_2 Chronicles 29:34_reference_end_ _reference_start_2 Chronicles 29:34_reference_end_ _reference_start_2 Chronicles 30:3_reference_end_ _reference_start_2 Chronicles 30:15_reference_end_ _reference_start_2 Chronicles 30:16_reference_end_ _reference_start_2 Chronicles 30:21_reference_end_ _reference_start_2 Chronicles 30:24_reference_end_ _reference_start_2 Chronicles 30:25_reference_end_ _reference_start_2 Chronicles 30:27_reference_end_ _reference_start_2 Chronicles 31:2_reference_end_ _reference_start_2 Chronicles 31:2_reference_end_ _reference_start_2 Chronicles 31:4_reference_end_ _reference_start_2 Chronicles 31:9_reference_end_ _reference_start_2 Chronicles 31:15_reference_end_ _reference_start_2 Chronicles 31:17_reference_end_ _reference_start_2 Chronicles 31:19_reference_end_ _reference_start_2 Chronicles 31:19_reference_end_ _reference_start_2 Chronicles 34:30_reference_end_ _reference_start_2 Chronicles 35:2_reference_end_ _reference_start_2 Chronicles 35:8_reference_end_ _reference_start_2 Chronicles 35:8_reference_end_ _reference_start_2 Chronicles 35:10_reference_end_ _reference_start_2 Chronicles 35:11_reference_end_ _reference_start_2 Chronicles 35:14_reference_end_ _reference_start_2 Chronicles 35:14_reference_end_ _reference_start_2 Chronicles 35:14_reference_end_ _reference_start_2 Chronicles 35:18_reference_end_ _reference_start_2 Chronicles 36:14_reference_end_ _reference_start_Ezra 1:5_reference_end_ _reference_start_Ezra 2:36_reference_end_ _reference_start_Ezra 2:61_reference_end_ _reference_start_Ezra 2:63_reference_end_ _reference_start_Ezra 2:69_reference_end_ _reference_start_Ezra 2:70_reference_end_ _reference_start_Ezra 3:2_reference_end_ _reference_start_Ezra 3:8_reference_end_ _reference_start_Ezra 3:10_reference_end_ _reference_start_Ezra 3:12_reference_end_ _reference_start_Ezra 6:9_reference_end_ _reference_start_Ezra 6:16_reference_end_ _reference_start_Ezra 6:18_reference_end_ _reference_start_Ezra 6:20_reference_end_ _reference_start_Ezra 6:20_reference_end_ _reference_start_Ezra 7:7_reference_end_ _reference_start_Ezra 7:13_reference_end_ _reference_start_Ezra 7:16_reference_end_ _reference_start_Ezra 7:24_reference_end_ _reference_start_Ezra 8:15_reference_end_ _reference_start_Ezra 8:24_reference_end_ _reference_start_Ezra 8:29_reference_end_ _reference_start_Ezra 8:30_reference_end_ _reference_start_Ezra 9:1_reference_end_ _reference_start_Ezra 9:7_reference_end_ _reference_start_Ezra 10:5_reference_end_ _reference_start_Ezra 10:18_reference_end_ _reference_start_Nehemiah 2:16_reference_end_ _reference_start_Nehemiah 3:1_reference_end_ _reference_start_Nehemiah 3:22_reference_end_ _reference_start_Nehemiah 3:28_reference_end_ _reference_start_Nehemiah 5:12_reference_end_ _reference_start_Nehemiah 7:39_reference_end_ _reference_start_Nehemiah 7:63_reference_end_ _reference_start_Nehemiah 7:65_reference_end_ _reference_start_Nehemiah 7:69_reference_end_ _reference_start_Nehemiah 7:71_reference_end_ _reference_start_Nehemiah 7:72_reference_end_ _reference_start_Nehemiah 8:13_reference_end_ _reference_start_Nehemiah 9:32_reference_end_ _reference_start_Nehemiah 9:34_reference_end_ _reference_start_Nehemiah 10:1_reference_end_ _reference_start_Nehemiah 10:9_reference_end_ _reference_start_Nehemiah 10:29_reference_end_ _reference_start_Nehemiah 10:35_reference_end_ _reference_start_Nehemiah 10:37_reference_end_ _reference_start_Nehemiah 10:38_reference_end_ _reference_start_Nehemiah 10:39_reference_end_ _reference_start_Nehemiah 10:40_reference_end_ _reference_start_Nehemiah 11:3_reference_end_ _reference_start_Nehemiah 11:10_reference_end_ _reference_start_Nehemiah 11:20_reference_end_ _reference_start_Nehemiah 12:1_reference_end_ _reference_start_Nehemiah 12:7_reference_end_ _reference_start_Nehemiah 12:12_reference_end_ _reference_start_Nehemiah 12:22_reference_end_ _reference_start_Nehemiah 12:30_reference_end_ _reference_start_Nehemiah 12:35_reference_end_ _reference_start_Nehemiah 12:41_reference_end_ _reference_start_Nehemiah 12:44_reference_end_ _reference_start_Nehemiah 12:44_reference_end_ _reference_start_Nehemiah 13:5_reference_end_ _reference_start_Nehemiah 13:13_reference_end_ _reference_start_Nehemiah 13:30_reference_end_ _reference_start_Psalms 78:64_reference_end_ _reference_start_Psalms 132:9_reference_end_ _reference_start_Psalms 132:16_reference_end_ _reference_start_Isaiah 8:2_reference_end_ _reference_start_Isaiah 24:2_reference_end_ _reference_start_Isaiah 28:7_reference_end_ _reference_start_Isaiah 37:2_reference_end_ _reference_start_Jeremiah 1:1_reference_end_ _reference_start_Jeremiah 1:18_reference_end_ _reference_start_Jeremiah 2:8_reference_end_ _reference_start_Jeremiah 2:26_reference_end_ _reference_start_Jeremiah 4:9_reference_end_ _reference_start_Jeremiah 5:31_reference_end_ _reference_start_Jeremiah 6:13_reference_end_ _reference_start_Jeremiah 8:1_reference_end_ _reference_start_Jeremiah 8:10_reference_end_ _reference_start_Jeremiah 13:13_reference_end_ _reference_start_Jeremiah 14:18_reference_end_ _reference_start_Jeremiah 18:18_reference_end_ _reference_start_Jeremiah 19:1_reference_end_ _reference_start_Jeremiah 23:11_reference_end_ _reference_start_Jeremiah 23:33_reference_end_ _reference_start_Jeremiah 23:34_reference_end_ _reference_start_Jeremiah 26:7_reference_end_ _reference_start_Jeremiah 26:8_reference_end_ _reference_start_Jeremiah 26:11_reference_end_ _reference_start_Jeremiah 26:16_reference_end_ _reference_start_Jeremiah 27:16_reference_end_ _reference_start_Jeremiah 28:1_reference_end_ _reference_start_Jeremiah 28:5_reference_end_ _reference_start_Jeremiah 29:1_reference_end_ _reference_start_Jeremiah 29:25_reference_end_ _reference_start_Jeremiah 31:14_reference_end_ _reference_start_Jeremiah 32:32_reference_end_ _reference_start_Jeremiah 33:18_reference_end_ _reference_start_Jeremiah 33:21_reference_end_ _reference_start_Jeremiah 34:19_reference_end_ _reference_start_Lamentations 1:4_reference_end_ _reference_start_Lamentations 1:19_reference_end_ _reference_start_Lamentations 2:6_reference_end_ _reference_start_Lamentations 2:20_reference_end_ _reference_start_Lamentations 4:13_reference_end_ _reference_start_Lamentations 4:16_reference_end_ _reference_start_Ezekiel 7:26_reference_end_ _reference_start_Ezekiel 22:26_reference_end_ _reference_start_Ezekiel 40:45_reference_end_ _reference_start_Ezekiel 40:46_reference_end_ _reference_start_Ezekiel 42:13_reference_end_ _reference_start_Ezekiel 42:14_reference_end_ _reference_start_Ezekiel 43:19_reference_end_ _reference_start_Ezekiel 43:24_reference_end_ _reference_start_Ezekiel 43:27_reference_end_ _reference_start_Ezekiel 44:15_reference_end_ _reference_start_Ezekiel 44:21_reference_end_ _reference_start_Ezekiel 44:22_reference_end_ _reference_start_Ezekiel 44:30_reference_end_ _reference_start_Ezekiel 44:30_reference_end_ _reference_start_Ezekiel 44:31_reference_end_ _reference_start_Ezekiel 45:4_reference_end_ _reference_start_Ezekiel 45:19_reference_end_ _reference_start_Ezekiel 46:2_reference_end_ _reference_start_Ezekiel 46:19_reference_end_ _reference_start_Ezekiel 46:20_reference_end_ _reference_start_Ezekiel 48:10_reference_end_ _reference_start_Ezekiel 48:11_reference_end_ _reference_start_Ezekiel 48:13_reference_end_ _reference_start_Joel 1:9_reference_end_ _reference_start_Joel 1:13_reference_end_ _reference_start_Joel 2:17_reference_end_ _reference_start_Micah 3:11_reference_end_ _reference_start_Zephaniah 1:4_reference_end_ _reference_start_Zephaniah 3:4_reference_end_ _reference_start_Haggai 2:11_reference_end_ _reference_start_Haggai 2:12_reference_end_ _reference_start_Haggai 2:13_reference_end_ _reference_start_Zechariah 7:3_reference_end_ _reference_start_Zechariah 7:5_reference_end_ _reference_start_Malachi 1:6_reference_end_ _reference_start_Malachi 2:1_reference_end_ _reference_start_Malachi 2:7_reference_end_ Keyword: Qualifying Collocating Term: שַׂר Gloss: leader References: _reference_start_2 Chronicles 36:14_reference_end_ _reference_start_Ezra 8:24_reference_end_ _reference_start_Ezra 8:29_reference_end_ _reference_start_Ezra 10:5_reference_end_ Keyword: Qualifying Collocating Term: מִשְׁנֶה Gloss: second References: _reference_start_2 Kings 23:4_reference_end_ Keyword: Qualifying Collocating Term: לֵוִי Gloss: of the tribe of Levi References: _reference_start_Deuteronomy 17:9_reference_end_ _reference_start_Deuteronomy 17:18_reference_end_ _reference_start_Deuteronomy 18:1_reference_end_ _reference_start_Deuteronomy 21:5_reference_end_ _reference_start_Deuteronomy 24:8_reference_end_ _reference_start_Deuteronomy 27:9_reference_end_ _reference_start_Deuteronomy 31:9_reference_end_ _reference_start_Joshua 3:3_reference_end_ _reference_start_Joshua 8:33_reference_end_ _reference_start_1 Chronicles 9:2_reference_end_ _reference_start_2 Chronicles 5:5_reference_end_ _reference_start_2 Chronicles 23:18_reference_end_ _reference_start_2 Chronicles 30:27_reference_end_ _reference_start_Ezra 10:5_reference_end_ _reference_start_Nehemiah 10:35_reference_end_ _reference_start_Nehemiah 11:20_reference_end_ _reference_start_Jeremiah 33:18_reference_end_ _reference_start_Jeremiah 33:21_reference_end_ _reference_start_Ezekiel 43:19_reference_end_ _reference_start_Ezekiel 44:15_reference_end_ Keyword: Similar Collocating Term: לֵוִי Gloss: Levite References: _reference_start_1 Kings 8:4_reference_end_ _reference_start_1 Chronicles 13:2_reference_end_ _reference_start_1 Chronicles 15:14_reference_end_ _reference_start_1 Chronicles 23:2_reference_end_ _reference_start_1 Chronicles 24:31_reference_end_ _reference_start_1 Chronicles 28:13_reference_end_ _reference_start_1 Chronicles 28:21_reference_end_ _reference_start_2 Chronicles 7:6_reference_end_ _reference_start_2 Chronicles 8:14_reference_end_ _reference_start_2 Chronicles 8:15_reference_end_ _reference_start_2 Chronicles 11:13_reference_end_ _reference_start_2 Chronicles 13:9_reference_end_ _reference_start_2 Chronicles 13:10_reference_end_ _reference_start_2 Chronicles 17:8_reference_end_ _reference_start_2 Chronicles 19:8_reference_end_ _reference_start_2 Chronicles 23:4_reference_end_ _reference_start_2 Chronicles 23:6_reference_end_ _reference_start_2 Chronicles 24:5_reference_end_ _reference_start_2 Chronicles 29:4_reference_end_ _reference_start_2 Chronicles 29:16_reference_end_ _reference_start_2 Chronicles 29:26_reference_end_ _reference_start_2 Chronicles 30:15_reference_end_ _reference_start_2 Chronicles 30:21_reference_end_ _reference_start_2 Chronicles 30:25_reference_end_ _reference_start_2 Chronicles 31:2_reference_end_ _reference_start_2 Chronicles 31:2_reference_end_ _reference_start_2 Chronicles 31:4_reference_end_ _reference_start_2 Chronicles 31:9_reference_end_ _reference_start_2 Chronicles 31:17_reference_end_ _reference_start_2 Chronicles 34:30_reference_end_ _reference_start_2 Chronicles 35:8_reference_end_ _reference_start_2 Chronicles 35:10_reference_end_ _reference_start_2 Chronicles 35:11_reference_end_ _reference_start_2 Chronicles 35:18_reference_end_ _reference_start_Ezra 1:5_reference_end_ _reference_start_Ezra 2:70_reference_end_ _reference_start_Ezra 3:8_reference_end_ _reference_start_Ezra 3:10_reference_end_ _reference_start_Ezra 3:12_reference_end_ _reference_start_Ezra 6:16_reference_end_ _reference_start_Ezra 6:18_reference_end_ _reference_start_Ezra 6:20_reference_end_ _reference_start_Ezra 7:7_reference_end_ _reference_start_Ezra 7:13_reference_end_ _reference_start_Ezra 7:24_reference_end_ _reference_start_Ezra 8:29_reference_end_ _reference_start_Ezra 8:30_reference_end_ _reference_start_Ezra 9:1_reference_end_ _reference_start_Nehemiah 7:72_reference_end_ _reference_start_Nehemiah 8:13_reference_end_ _reference_start_Nehemiah 10:1_reference_end_ _reference_start_Nehemiah 10:29_reference_end_ _reference_start_Nehemiah 10:39_reference_end_ _reference_start_Nehemiah 11:3_reference_end_ _reference_start_Nehemiah 12:1_reference_end_ _reference_start_Nehemiah 12:22_reference_end_ _reference_start_Nehemiah 12:30_reference_end_ _reference_start_Nehemiah 12:44_reference_end_ _reference_start_Nehemiah 12:44_reference_end_ _reference_start_Nehemiah 13:30_reference_end_ _reference_start_Ezekiel 48:13_reference_end_ Keyword: Similar Collocating Term: נָתִין Gloss: Temple servant References: _reference_start_1 Chronicles 9:2_reference_end_ _reference_start_Ezra 2:70_reference_end_ _reference_start_Ezra 7:7_reference_end_ _reference_start_Ezra 7:24_reference_end_ _reference_start_Nehemiah 7:72_reference_end_ _reference_start_Nehemiah 10:29_reference_end_ _reference_start_Nehemiah 11:3_reference_end_ Keyword: Similar Collocating Term: כֹּמֶר Gloss: idol-priest References: _reference_start_Zephaniah 1:4_reference_end_ Keyword: Associated Collocating Term: כהן Gloss: to serve as priest References: _reference_start_Numbers 3:3_reference_end_ Keyword: Associated Collocating Term: שׁרת Gloss: to serve References: _reference_start_Deuteronomy 17:12_reference_end_ _reference_start_Deuteronomy 21:5_reference_end_ _reference_start_1 Kings 8:11_reference_end_ _reference_start_2 Chronicles 5:14_reference_end_ _reference_start_2 Chronicles 13:10_reference_end_ _reference_start_2 Chronicles 23:6_reference_end_ _reference_start_2 Chronicles 31:2_reference_end_ _reference_start_Nehemiah 10:37_reference_end_ _reference_start_Nehemiah 10:40_reference_end_ _reference_start_Ezekiel 44:15_reference_end_ _reference_start_Ezekiel 45:4_reference_end_ _reference_start_Joel 1:9_reference_end_ _reference_start_Joel 1:13_reference_end_ _reference_start_Joel 2:17_reference_end_ Keyword: Associated Collocating Term: שׁמר Gloss: to keep References: _reference_start_2 Kings 12:10_reference_end_ _reference_start_Ezekiel 40:45_reference_end_ _reference_start_Ezekiel 40:46_reference_end_ _reference_start_Ezekiel 44:15_reference_end_ _reference_start_Ezekiel 48:11_reference_end_ _reference_start_Malachi 2:7_reference_end_ Keyword: Associated Collocating Term: מִשְׁמֶרֶת Gloss: duties References: _reference_start_2 Chronicles 7:6_reference_end_ _reference_start_2 Chronicles 35:2_reference_end_ _reference_start_Nehemiah 13:30_reference_end_ _reference_start_Ezekiel 40:45_reference_end_ _reference_start_Ezekiel 40:46_reference_end_ _reference_start_Ezekiel 44:15_reference_end_ _reference_start_Ezekiel 48:11_reference_end_ Keyword: Associated Collocating Term: עֲבֹודָה Gloss: service References: _reference_start_1 Chronicles 28:13_reference_end_ _reference_start_1 Chronicles 28:21_reference_end_ _reference_start_2 Chronicles 8:14_reference_end_ _reference_start_2 Chronicles 31:2_reference_end_ _reference_start_2 Chronicles 35:2_reference_end_ _reference_start_Ezra 6:18_reference_end_ Keyword: Associated Collocating Term: עמד Gloss: to stand References: _reference_start_Deuteronomy 17:12_reference_end_ _reference_start_Joshua 3:8_reference_end_ _reference_start_Joshua 3:17_reference_end_ _reference_start_Joshua 4:10_reference_end_ _reference_start_1 Kings 8:11_reference_end_ _reference_start_2 Chronicles 5:12_reference_end_ _reference_start_2 Chronicles 5:14_reference_end_ _reference_start_2 Chronicles 7:6_reference_end_ _reference_start_2 Chronicles 8:14_reference_end_ _reference_start_2 Chronicles 19:8_reference_end_ _reference_start_2 Chronicles 26:17_reference_end_ _reference_start_2 Chronicles 29:26_reference_end_ _reference_start_2 Chronicles 30:16_reference_end_ _reference_start_2 Chronicles 31:2_reference_end_ _reference_start_2 Chronicles 35:2_reference_end_ _reference_start_2 Chronicles 35:10_reference_end_ _reference_start_Ezra 2:63_reference_end_ _reference_start_Ezra 3:10_reference_end_ _reference_start_Nehemiah 7:65_reference_end_ _reference_start_Nehemiah 12:44_reference_end_ _reference_start_Nehemiah 13:30_reference_end_ _reference_start_Ezekiel 44:15_reference_end_ Keyword: Associated Collocating Term: עֹמֶד Gloss: standing place References: _reference_start_2 Chronicles 30:16_reference_end_ _reference_start_2 Chronicles 35:10_reference_end_ Keyword: Associated Collocating Term: קדשׁ Gloss: to sanctify References: _reference_start_1 Chronicles 15:14_reference_end_ _reference_start_2 Chronicles 5:11_reference_end_ _reference_start_2 Chronicles 26:18_reference_end_ _reference_start_2 Chronicles 29:34_reference_end_ _reference_start_2 Chronicles 29:34_reference_end_ _reference_start_2 Chronicles 30:3_reference_end_ _reference_start_2 Chronicles 30:15_reference_end_ _reference_start_2 Chronicles 30:24_reference_end_ _reference_start_Ezekiel 48:11_reference_end_ Keyword: Associated Collocating Term: קֹדֶשׁ Gloss: holiness References: _reference_start_2 Chronicles 23:6_reference_end_ Keyword: Associated Collocating Term: קרב Gloss: to approach References: _reference_start_Leviticus 1:5_reference_end_ _reference_start_Leviticus 1:13_reference_end_ _reference_start_Leviticus 1:15_reference_end_ _reference_start_Leviticus 5:8_reference_end_ _reference_start_Leviticus 7:8_reference_end_ _reference_start_Leviticus 7:8_reference_end_ _reference_start_Leviticus 7:9_reference_end_ _reference_start_Leviticus 14:12_reference_end_ _reference_start_Numbers 5:16_reference_end_ _reference_start_Numbers 5:25_reference_end_ _reference_start_Numbers 6:16_reference_end_ _reference_start_Ezekiel 42:14_reference_end_ _reference_start_Ezekiel 44:15_reference_end_ Keyword: Associated Collocating Term: קָרֵב Gloss: approaching References: _reference_start_Ezekiel 40:46_reference_end_ _reference_start_Ezekiel 45:4_reference_end_ Keyword: Associated Collocating Term: קָרוֹב Gloss: near References: _reference_start_Ezekiel 42:13_reference_end_ _reference_start_Ezekiel 43:19_reference_end_ Keyword: Associated Collocating Term: נגשׁ Gloss: to approach References: _reference_start_Leviticus 2:8_reference_end_ _reference_start_Deuteronomy 20:2_reference_end_ _reference_start_Deuteronomy 21:5_reference_end_ Keyword: Associated Collocating Term: קטר Gloss: to burn (sacrifice) References: _reference_start_Leviticus 1:9_reference_end_ _reference_start_Leviticus 1:13_reference_end_ _reference_start_Leviticus 1:15_reference_end_ _reference_start_Leviticus 1:17_reference_end_ _reference_start_Leviticus 2:2_reference_end_ _reference_start_Leviticus 2:9_reference_end_ _reference_start_Leviticus 2:16_reference_end_ _reference_start_Leviticus 3:11_reference_end_ _reference_start_Leviticus 3:16_reference_end_ _reference_start_Leviticus 4:26_reference_end_ _reference_start_Leviticus 4:31_reference_end_ _reference_start_Leviticus 4:35_reference_end_ _reference_start_Leviticus 5:12_reference_end_ _reference_start_Leviticus 6:5_reference_end_ _reference_start_Leviticus 7:5_reference_end_ _reference_start_Leviticus 7:31_reference_end_ _reference_start_Leviticus 17:6_reference_end_ _reference_start_Numbers 5:26_reference_end_ _reference_start_2 Chronicles 26:18_reference_end_ _reference_start_Jeremiah 33:18_reference_end_ Keyword: Associated Collocating Term: כפר Gloss: to atone References: _reference_start_Leviticus 4:26_reference_end_ _reference_start_Leviticus 4:31_reference_end_ _reference_start_Leviticus 4:35_reference_end_ _reference_start_Leviticus 5:6_reference_end_ _reference_start_Leviticus 5:10_reference_end_ _reference_start_Leviticus 5:13_reference_end_ _reference_start_Leviticus 5:16_reference_end_ _reference_start_Leviticus 5:18_reference_end_ _reference_start_Leviticus 5:26_reference_end_ _reference_start_Leviticus 7:7_reference_end_ _reference_start_Leviticus 12:8_reference_end_ _reference_start_Leviticus 14:18_reference_end_ _reference_start_Leviticus 14:19_reference_end_ _reference_start_Leviticus 14:20_reference_end_ _reference_start_Leviticus 14:29_reference_end_ _reference_start_Leviticus 14:31_reference_end_ _reference_start_Leviticus 15:15_reference_end_ _reference_start_Leviticus 15:30_reference_end_ _reference_start_Leviticus 19:22_reference_end_ _reference_start_Numbers 6:11_reference_end_ _reference_start_Numbers 15:25_reference_end_ _reference_start_Numbers 15:28_reference_end_ _reference_start_2 Chronicles 29:24_reference_end_ Keyword: Associated Collocating Term: ירה Gloss: to instruct References: _reference_start_Deuteronomy 24:8_reference_end_ _reference_start_2 Chronicles 15:3_reference_end_ _reference_start_Micah 3:11_reference_end_ Keyword: Associated Collocating Term: תֹּורָה Gloss: instruction, lawd* References: _reference_start_Numbers 5:30_reference_end_ _reference_start_Deuteronomy 17:18_reference_end_ _reference_start_Deuteronomy 31:9_reference_end_ _reference_start_2 Chronicles 15:3_reference_end_ _reference_start_2 Chronicles 31:4_reference_end_ _reference_start_Jeremiah 2:8_reference_end_ _reference_start_Jeremiah 18:18_reference_end_ _reference_start_Ezekiel 7:26_reference_end_ _reference_start_Haggai 2:11_reference_end_ _reference_start_Malachi 2:7_reference_end_ Keyword: Associated Collocating Term: בְּרִית Gloss: covenant References: _reference_start_Jeremiah 33:21_reference_end_ Keyword: Associated Collocating Term: אוּרִים Gloss: Urim References: _reference_start_Ezra 2:63_reference_end_ _reference_start_Nehemiah 7:65_reference_end_ Keyword: Associated Collocating Term: תֻּמִּים Gloss: Thummim References: _reference_start_Ezra 2:63_reference_end_ _reference_start_Nehemiah 7:65_reference_end_ Level 3: b Context: The High Priest (generic), the hereditary head of the priests of the order of Aaron, the only priest permitted to offer certain sacrifices to God in the Tabernacle or Temple Intrinsic Domains for Meaning:c Tabernacle; Temple; High Priest Participant Roles for Meaning:c Event = mostly implicit or in wider context: to sacrificeAgent = headword: human = Aaron or most senior descendantRecipient = mostly implicit or in wider context: God Beneficiary = mostly implicit or in wider context: human = Israelite Key Reference: _reference_start_Leviticus 16:32_reference_end_ Key Verse: ... the |bpriest |b*duly anointed and ordained to serve in succession to his father ... (REB) Evaluation of Translations: TEV and CEV render 'high priest' here. This is an acceptable alternative which clarifies the unique status of this priest, although technically the title 'high priest' was not used until a much later period. _reference_start_Exodus 29:30_reference_end_ _reference_start_Leviticus 4:3_reference_end_ _reference_start_Leviticus 4:5_reference_end_ _reference_start_Leviticus 4:6_reference_end_ _reference_start_Leviticus 4:7_reference_end_ _reference_start_Leviticus 4:10_reference_end_ _reference_start_Leviticus 4:16_reference_end_ _reference_start_Leviticus 4:17_reference_end_ _reference_start_Leviticus 4:20_reference_end_ _reference_start_Leviticus 6:15_reference_end_ _reference_start_Leviticus 16:32_reference_end_ _reference_start_Leviticus 21:10_reference_end_ _reference_start_Numbers 35:25_reference_end_ _reference_start_Numbers 35:28_reference_end_ _reference_start_Numbers 35:28_reference_end_ _reference_start_Numbers 35:32_reference_end_ _reference_start_Joshua 20:6_reference_end_ _reference_start_1 Samuel 2:28_reference_end_ _reference_start_2 Kings 12:11_reference_end_ _reference_start_2 Chronicles 24:11_reference_end_ Keyword: Qualifying Collocating Term: מָשִׁיחַ Gloss: anointede* References: _reference_start_Leviticus 4:3_reference_end_ _reference_start_Leviticus 4:5_reference_end_ _reference_start_Leviticus 4:16_reference_end_ _reference_start_Leviticus 6:15_reference_end_ Keyword: Qualifying Collocating Term: גָּדֹול Gloss: greate* References: _reference_start_Leviticus 21:10_reference_end_ _reference_start_Numbers 35:25_reference_end_ _reference_start_Numbers 35:28_reference_end_ _reference_start_Numbers 35:28_reference_end_ _reference_start_Joshua 20:6_reference_end_ _reference_start_2 Kings 12:11_reference_end_ Keyword: Qualifying Collocating Term: רֹאשׁ Gloss: heade* References: _reference_start_2 Chronicles 24:11_reference_end_ Keyword: Associated Collocating Term: משׁח Gloss: anoint References: _reference_start_Leviticus 16:32_reference_end_ _reference_start_Numbers 35:25_reference_end_ Keyword: Associated Collocating Term: מִשְׁחָה Gloss: anointing References: _reference_start_Leviticus 21:10_reference_end_ Keyword: Associated Collocating Term: מלא יָד Gloss: to ordain References: _reference_start_Leviticus 16:32_reference_end_ _reference_start_Leviticus 21:10_reference_end_ Keyword: Associated Collocating Term: כהן Gloss: to serve as priest References: _reference_start_Leviticus 16:32_reference_end_ Keyword: Associated Collocating Term: קרב Gloss: to approach References: _reference_start_Leviticus 4:3_reference_end_ Keyword: Associated Collocating Term: קטר Gloss: to burn (sacrifice) References: _reference_start_Leviticus 4:10_reference_end_ _reference_start_1 Samuel 2:28_reference_end_ Keyword: Associated Collocating Term: כפר Gloss: to atone References: _reference_start_Leviticus 4:20_reference_end_ _reference_start_Leviticus 16:32_reference_end_ Level 3: c Context: Named senior priests of the order of Aaron, excluding those identified as High Priestf* Intrinsic Domains for Meaning:c Tabernacle; Temple; Instruction Participant Roles for Meaning:c Event = mostly implicit or in wider context: to sacrificeAgent = headword: human = Aaron or descendant, namedRecipient = mostly implicit or in wider context: God Beneficiary = mostly implicit or in wider context: human = Israelite Key Reference: _reference_start_2 Kings 25:18_reference_end_ Key Verse: In addition, Nebuzaradan, the commanding officer, took away as prisoners Seraiah the High Priest, Zephaniah the |bpriest |b*next in rank, and the three other important Temple officials. (TEV) Evaluation of Translations: CEV calls Zephaniah merely Seraiah's 'assistant', which is too weak, especially considering his important role described in the book of Jeremiah. REB does better in calling him 'deputy chief priest'. All the other translations consulted use 'priest' here, with various suitable qualifications. _reference_start_Numbers 3:32_reference_end_ _reference_start_Numbers 4:16_reference_end_ _reference_start_Numbers 4:28_reference_end_ _reference_start_Numbers 4:33_reference_end_ _reference_start_Numbers 7:8_reference_end_ _reference_start_Numbers 17:2_reference_end_ _reference_start_Numbers 17:4_reference_end_ _reference_start_Numbers 19:3_reference_end_ _reference_start_Numbers 19:4_reference_end_ _reference_start_Numbers 19:6_reference_end_ _reference_start_Numbers 19:7_reference_end_ _reference_start_Numbers 19:7_reference_end_ _reference_start_Numbers 25:7_reference_end_ _reference_start_Numbers 25:11_reference_end_ _reference_start_Numbers 31:6_reference_end_ _reference_start_Joshua 22:13_reference_end_ _reference_start_Joshua 22:30_reference_end_ _reference_start_Joshua 22:31_reference_end_ _reference_start_Joshua 22:32_reference_end_ _reference_start_1 Samuel 1:3_reference_end_ _reference_start_1 Samuel 1:9_reference_end_ _reference_start_1 Samuel 2:11_reference_end_ _reference_start_1 Samuel 2:13_reference_end_ _reference_start_1 Samuel 2:13_reference_end_ _reference_start_1 Samuel 2:14_reference_end_ _reference_start_1 Samuel 2:15_reference_end_ _reference_start_1 Samuel 2:15_reference_end_ _reference_start_1 Samuel 14:3_reference_end_ _reference_start_1 Samuel 14:19_reference_end_ _reference_start_1 Samuel 14:19_reference_end_ _reference_start_1 Samuel 14:36_reference_end_ _reference_start_1 Samuel 21:2_reference_end_ _reference_start_1 Samuel 21:3_reference_end_ _reference_start_1 Samuel 21:5_reference_end_ _reference_start_1 Samuel 21:6_reference_end_ _reference_start_1 Samuel 21:7_reference_end_ _reference_start_1 Samuel 21:10_reference_end_ _reference_start_1 Samuel 22:11_reference_end_ _reference_start_1 Samuel 23:9_reference_end_ _reference_start_1 Samuel 30:7_reference_end_ _reference_start_2 Samuel 8:17_reference_end_ _reference_start_2 Samuel 15:27_reference_end_ _reference_start_2 Samuel 15:35_reference_end_ _reference_start_2 Samuel 15:35_reference_end_ _reference_start_2 Samuel 17:15_reference_end_ _reference_start_2 Samuel 19:12_reference_end_ _reference_start_2 Samuel 20:25_reference_end_ _reference_start_1 Kings 1:7_reference_end_ _reference_start_1 Kings 1:8_reference_end_ _reference_start_1 Kings 1:19_reference_end_ _reference_start_1 Kings 1:25_reference_end_ _reference_start_1 Kings 1:26_reference_end_ _reference_start_1 Kings 1:32_reference_end_ _reference_start_1 Kings 1:34_reference_end_ _reference_start_1 Kings 1:38_reference_end_ _reference_start_1 Kings 1:39_reference_end_ _reference_start_1 Kings 1:42_reference_end_ _reference_start_1 Kings 1:44_reference_end_ _reference_start_1 Kings 1:45_reference_end_ _reference_start_1 Kings 2:22_reference_end_ _reference_start_1 Kings 2:26_reference_end_ _reference_start_1 Kings 2:27_reference_end_ _reference_start_1 Kings 2:35_reference_end_ _reference_start_1 Kings 4:2_reference_end_ _reference_start_1 Kings 4:4_reference_end_ _reference_start_2 Kings 11:9_reference_end_ _reference_start_2 Kings 11:9_reference_end_ _reference_start_2 Kings 11:10_reference_end_ _reference_start_2 Kings 11:15_reference_end_ _reference_start_2 Kings 11:15_reference_end_ _reference_start_2 Kings 11:18_reference_end_ _reference_start_2 Kings 12:3_reference_end_ _reference_start_2 Kings 12:8_reference_end_ _reference_start_2 Kings 12:10_reference_end_ _reference_start_2 Kings 16:10_reference_end_ _reference_start_2 Kings 16:11_reference_end_ _reference_start_2 Kings 16:11_reference_end_ _reference_start_2 Kings 16:15_reference_end_ _reference_start_2 Kings 16:16_reference_end_ _reference_start_2 Kings 25:18_reference_end_ _reference_start_1 Chronicles 15:11_reference_end_ _reference_start_1 Chronicles 16:39_reference_end_ _reference_start_1 Chronicles 18:16_reference_end_ _reference_start_1 Chronicles 24:6_reference_end_ _reference_start_1 Chronicles 27:5_reference_end_ _reference_start_1 Chronicles 29:22_reference_end_ _reference_start_2 Chronicles 22:11_reference_end_ _reference_start_2 Chronicles 23:8_reference_end_ _reference_start_2 Chronicles 23:8_reference_end_ _reference_start_2 Chronicles 23:9_reference_end_ _reference_start_2 Chronicles 23:14_reference_end_ _reference_start_2 Chronicles 23:14_reference_end_ _reference_start_2 Chronicles 24:2_reference_end_ _reference_start_2 Chronicles 24:20_reference_end_ _reference_start_2 Chronicles 24:25_reference_end_ _reference_start_Ezra 7:11_reference_end_ _reference_start_Ezra 7:12_reference_end_ _reference_start_Ezra 7:21_reference_end_ _reference_start_Ezra 8:33_reference_end_ _reference_start_Ezra 10:10_reference_end_ _reference_start_Ezra 10:16_reference_end_ _reference_start_Nehemiah 8:2_reference_end_ _reference_start_Nehemiah 8:9_reference_end_ _reference_start_Nehemiah 12:26_reference_end_ _reference_start_Jeremiah 20:1_reference_end_ _reference_start_Jeremiah 21:1_reference_end_ _reference_start_Jeremiah 29:25_reference_end_ _reference_start_Jeremiah 29:26_reference_end_ _reference_start_Jeremiah 29:26_reference_end_ _reference_start_Jeremiah 29:29_reference_end_ _reference_start_Jeremiah 37:3_reference_end_ _reference_start_Jeremiah 52:24_reference_end_ _reference_start_Ezekiel 1:3_reference_end_ Keyword: Qualifying Collocating Term: מִשְׁנֶה Gloss: second References: _reference_start_2 Kings 25:18_reference_end_ _reference_start_Jeremiah 52:24_reference_end_ Keyword: Associated Collocating Term: עמד Gloss: to stand References: _reference_start_2 Chronicles 24:20_reference_end_ Keyword: Associated Collocating Term: קטר Gloss: to burn (sacrifce) References: _reference_start_2 Kings 16:15_reference_end_ Keyword: Associated Collocating Term: ירה Gloss: to instruct References: _reference_start_2 Kings 12:3_reference_end_ Keyword: Associated Collocating Term: תֹּורָה Gloss: instruction, lawd* References: _reference_start_Nehemiah 8:2_reference_end_ Keyword: Associated Collocating Term: סֹופֵר Gloss: scribeg* References: _reference_start_Ezra 7:11_reference_end_ _reference_start_Ezra 7:12_reference_end_ _reference_start_Ezra 7:21_reference_end_ _reference_start_Nehemiah 8:9_reference_end_ _reference_start_Nehemiah 12:26_reference_end_ Level 3: d Context: Named High Priests of the order of Aaronh* Intrinsic Domains for Meaning:c Tabernacle; Temple; High Priest Participant Roles for Meaning:c Event = mostly implicit or in wider context: to sacrificeAgent = headword: human = Aaron or descendant, namedRecipient = mostly implicit or in wider context: God Beneficiary = mostly implicit or in wider context: human = Israelite Key Reference: _reference_start_2 Kings 25:18_reference_end_ Key Verse: In addition, Nebuzaradan, the commanding officer, took away as prisoners Seraiah the High |bPriest|b*, Zephaniah the priest next in rank, and the three other important Temple officials. (TEV) Evaluation of Translations: All the translations consulted apart from TEV use 'chief priest' for Seraiah here. But there is no need to make a translation distinction between 'chief priest' and 'high priest'. _reference_start_Exodus 31:10_reference_end_ _reference_start_Exodus 35:19_reference_end_ _reference_start_Exodus 38:21_reference_end_ _reference_start_Exodus 39:41_reference_end_ _reference_start_Leviticus 1:7_reference_end_ _reference_start_Leviticus 7:34_reference_end_ _reference_start_Leviticus 13:2_reference_end_ _reference_start_Leviticus 21:21_reference_end_ _reference_start_Numbers 3:6_reference_end_ _reference_start_Numbers 18:28_reference_end_ _reference_start_Numbers 26:1_reference_end_ _reference_start_Numbers 26:3_reference_end_ _reference_start_Numbers 26:63_reference_end_ _reference_start_Numbers 26:64_reference_end_ _reference_start_Numbers 27:2_reference_end_ _reference_start_Numbers 27:19_reference_end_ _reference_start_Numbers 27:21_reference_end_ _reference_start_Numbers 27:22_reference_end_ _reference_start_Numbers 31:12_reference_end_ _reference_start_Numbers 31:13_reference_end_ _reference_start_Numbers 31:21_reference_end_ _reference_start_Numbers 31:26_reference_end_ _reference_start_Numbers 31:29_reference_end_ _reference_start_Numbers 31:31_reference_end_ _reference_start_Numbers 31:41_reference_end_ _reference_start_Numbers 31:51_reference_end_ _reference_start_Numbers 31:54_reference_end_ _reference_start_Numbers 32:2_reference_end_ _reference_start_Numbers 32:28_reference_end_ _reference_start_Numbers 33:38_reference_end_ _reference_start_Numbers 34:17_reference_end_ _reference_start_Joshua 14:1_reference_end_ _reference_start_Joshua 17:4_reference_end_ _reference_start_Joshua 19:51_reference_end_ _reference_start_Joshua 21:1_reference_end_ _reference_start_Joshua 21:4_reference_end_ _reference_start_Joshua 21:13_reference_end_ _reference_start_2 Kings 22:4_reference_end_ _reference_start_2 Kings 22:8_reference_end_ _reference_start_2 Kings 22:10_reference_end_ _reference_start_2 Kings 22:12_reference_end_ _reference_start_2 Kings 22:14_reference_end_ _reference_start_2 Kings 23:4_reference_end_ _reference_start_2 Kings 23:24_reference_end_ _reference_start_2 Chronicles 19:11_reference_end_ _reference_start_2 Chronicles 26:17_reference_end_ _reference_start_2 Chronicles 26:20_reference_end_ _reference_start_2 Chronicles 31:10_reference_end_ _reference_start_2 Chronicles 34:9_reference_end_ _reference_start_2 Chronicles 34:14_reference_end_ _reference_start_2 Chronicles 34:18_reference_end_ _reference_start_Ezra 7:5_reference_end_ _reference_start_Nehemiah 3:1_reference_end_ _reference_start_Nehemiah 3:20_reference_end_ _reference_start_Nehemiah 13:4_reference_end_ _reference_start_Nehemiah 13:28_reference_end_ _reference_start_Jeremiah 52:24_reference_end_ _reference_start_Haggai 1:1_reference_end_ _reference_start_Haggai 1:12_reference_end_ _reference_start_Haggai 1:14_reference_end_ _reference_start_Haggai 2:2_reference_end_ _reference_start_Haggai 2:4_reference_end_ _reference_start_Zechariah 3:1_reference_end_ _reference_start_Zechariah 3:8_reference_end_ _reference_start_Zechariah 6:11_reference_end_ Keyword: Qualifying Collocating Term: גָּדֹול Gloss: greate* References: _reference_start_2 Kings 22:4_reference_end_ _reference_start_2 Kings 22:8_reference_end_ _reference_start_2 Kings 23:4_reference_end_ _reference_start_2 Chronicles 34:9_reference_end_ _reference_start_Nehemiah 3:1_reference_end_ _reference_start_Nehemiah 3:20_reference_end_ _reference_start_Nehemiah 13:28_reference_end_ _reference_start_Haggai 1:1_reference_end_ _reference_start_Haggai 1:12_reference_end_ _reference_start_Haggai 1:14_reference_end_ _reference_start_Haggai 2:2_reference_end_ _reference_start_Haggai 2:4_reference_end_ _reference_start_Zechariah 3:1_reference_end_ _reference_start_Zechariah 3:8_reference_end_ _reference_start_Zechariah 6:11_reference_end_ Keyword: Qualifying Collocating Term: רֹאשׁ Gloss: heade* References: _reference_start_2 Kings 25:18_reference_end_ _reference_start_2 Chronicles 19:11_reference_end_ _reference_start_2 Chronicles 26:20_reference_end_ _reference_start_2 Chronicles 31:10_reference_end_ _reference_start_Ezra 7:5_reference_end_ _reference_start_Jeremiah 52:24_reference_end_ Keyword: Associated Collocating Term: כהן Gloss: to serve as priest References: _reference_start_Exodus 31:10_reference_end_ _reference_start_Exodus 35:19_reference_end_ _reference_start_Exodus 39:41_reference_end_ Keyword: Associated Collocating Term: שׁרת Gloss: to serve References: _reference_start_Exodus 35:19_reference_end_ _reference_start_Exodus 39:41_reference_end_ Keyword: Associated Collocating Term: עמד Gloss: to stand References: _reference_start_2 Chronicles 26:17_reference_end_ _reference_start_Zechariah 3:1_reference_end_ Keyword: Associated Collocating Term: תֹּורָה Gloss: instruction, lawd* References: _reference_start_2 Kings 22:8_reference_end_ _reference_start_2 Kings 23:24_reference_end_ _reference_start_2 Chronicles 34:14_reference_end_ Keyword: Associated Collocating Term: אוּרִים Gloss: Urim References: _reference_start_Numbers 27:21_reference_end_ Level 3: e Context: Non-Aaronic Israelite priest, one who offers sacrifices to God outside the official Tabernacle and Temple system as an intermediary between Israelite people and God Intrinsic Domains for Meaning:c Local shrines; Northern kingdom of Israel Participant Roles for Meaning:c Event = mostly implicit: to sacrificeAgent = headword: human = IsraeliteRecipient = mostly implicit: God Beneficiary = mostly implicit: human = Israelite Key Reference: _reference_start_1 Kings 12:31_reference_end_ Key Verse: Jeroboam ... chose |bpriests |b*from families who were not of the tribe of Levi. (TEV) Evaluation of Translations: All the translations consulted use 'priest' here. _reference_start_Exodus 19:22_reference_end_ _reference_start_Exodus 19:24_reference_end_ _reference_start_Judges 17:5_reference_end_ _reference_start_Judges 17:10_reference_end_ _reference_start_Judges 17:12_reference_end_ _reference_start_Judges 17:13_reference_end_ _reference_start_Judges 18:4_reference_end_ _reference_start_Judges 18:6_reference_end_ _reference_start_Judges 18:17_reference_end_ _reference_start_Judges 18:18_reference_end_ _reference_start_Judges 18:19_reference_end_ _reference_start_Judges 18:19_reference_end_ _reference_start_Judges 18:19_reference_end_ _reference_start_Judges 18:20_reference_end_ _reference_start_Judges 18:24_reference_end_ _reference_start_Judges 18:27_reference_end_ _reference_start_Judges 18:30_reference_end_ _reference_start_2 Samuel 8:18_reference_end_ _reference_start_2 Samuel 20:26_reference_end_ _reference_start_1 Kings 4:5_reference_end_ _reference_start_1 Kings 12:31_reference_end_ _reference_start_1 Kings 12:32_reference_end_ _reference_start_1 Kings 13:2_reference_end_ _reference_start_1 Kings 13:33_reference_end_ _reference_start_1 Kings 13:33_reference_end_ _reference_start_2 Kings 17:27_reference_end_ _reference_start_2 Kings 17:28_reference_end_ _reference_start_2 Kings 17:32_reference_end_ _reference_start_2 Kings 23:8_reference_end_ _reference_start_2 Kings 23:8_reference_end_ _reference_start_2 Kings 23:9_reference_end_ _reference_start_2 Kings 23:20_reference_end_ _reference_start_2 Chronicles 11:15_reference_end_ _reference_start_2 Chronicles 13:9_reference_end_ _reference_start_2 Chronicles 13:9_reference_end_ _reference_start_2 Chronicles 34:5_reference_end_ _reference_start_Job 12:19_reference_end_ _reference_start_Psalms 99:6_reference_end_ _reference_start_Hosea 4:4_reference_end_ _reference_start_Hosea 4:9_reference_end_ _reference_start_Hosea 5:1_reference_end_ _reference_start_Hosea 6:9_reference_end_ _reference_start_Amos 7:10_reference_end_ Keyword: Similar Collocating Term: לֵוִי Gloss: Levite References: _reference_start_Judges 17:13_reference_end_ _reference_start_1 Kings 12:31_reference_end_ Keyword: Similar Collocating Term: קרא שֵׁם Gloss: to call on the name References: _reference_start_Psalms 99:6_reference_end_ Keyword: Associated Collocating Term: מלא יָד Gloss: to ordain References: _reference_start_Judges 17:12_reference_end_ Keyword: Associated Collocating Term: עמד Gloss: to stand References: _reference_start_1 Kings 12:32_reference_end_ _reference_start_2 Chronicles 11:15_reference_end_ Keyword: Associated Collocating Term: קדשׁ Gloss: to sanctify References: _reference_start_Exodus 19:22_reference_end_ Keyword: Associated Collocating Term: נגשׁ Gloss: to approach References: _reference_start_Exodus 19:22_reference_end_ Keyword: Associated Collocating Term: קטר Gloss: to burn (sacrifce) References: _reference_start_1 Kings 13:2_reference_end_ _reference_start_2 Kings 23:8_reference_end_ Keyword: Associated Collocating Term: ירה Gloss: to instruct References: _reference_start_2 Kings 17:27_reference_end_ _reference_start_2 Kings 17:28_reference_end_ Level 3: f Context: Non-Israelite priest of God, one who offers sacrifices to God as an intermediary between non-Israelite people and God Intrinsic Domains for Meaning:c Non-Israelite people Participant Roles for Meaning:c Event = implicit: to sacrificeAgent  = headword: human = non-IsraeliteRecipient = לְ* or implicit: God Beneficiary = mostly implicit: human = non-Israelite Meaning Comments:c This contextual use is used only with reference to Melchizedek (Genesis 14:18; Psalm 110:4) and Jethro (Exodus 2:16; 3:1; 18:1). Key Reference: _reference_start_Genesis 14:18_reference_end_ Key Verse: And Melchizedek, who was king of Salem and also a |bpriest |b*of the Most High God, brought bread and wine to Abram, (TEV) Evaluation of Translations: All the translations consulted use 'priest' here. _reference_start_Genesis 14:18_reference_end_ _reference_start_Exodus 2:16_reference_end_ _reference_start_Exodus 3:1_reference_end_ _reference_start_Exodus 18:1_reference_end_ _reference_start_Psalms 110:4_reference_end_ Keyword: Level 3: g Context: Promised future priest Intrinsic Domains for Meaning:c Prophetic promise Participant Roles for Meaning:c Event = implicit: to sacrificeAgent = headword: humanRecipient = לְ* or implicit: God Beneficiary = implicit: human = Israelite Key Reference: _reference_start_1 Samuel 2:35_reference_end_ Key Verse: I will choose a |bpriest |b*who will be faithful to me and do everything I want him to. ... (TEV) Evaluation of Translations: All the translations consulted use 'priest' here. _reference_start_1 Samuel 2:35_reference_end_ _reference_start_Zechariah 6:13_reference_end_ Keyword: Level 2: 2 Meaning: Priest of pagan gods, one who offers sacrifices to pagan gods as an intermediary between people and pagan gods Frame for Meaning: Priesthood Intrinsic Domains for Meaning: Sacrifice; Worship of pagan gods Participant Roles for Meaning: Event: to sacrificeAgent = headword: human = priestRecipient: pagan god Beneficiary: human = worshipper Level 3: a Context: Priest of Baal (in the land of Israel), one who offers sacrifices to Baal as an intermediary between Israelite people and Baal Intrinsic Domains for Meaning:c Israelites Participant Roles for Meaning:c Event = implicit: to sacrificeAgent = headword: human = priestRecipient = genitive or in wider context: pagan god = Baal Beneficiary = in context or in wider context: human = Israelite Key Reference: _reference_start_2 Kings 11:18_reference_end_ Key Verse: Then the people went to the temple of Baal and tore it down; they smashed the altars and the idols, and killed Mattan, the |bpriest |b*of Baal, in front of the altars. ... (TEV) Evaluation of Translations: All the translations consulted use 'priest' here. _reference_start_2 Kings 10:11_reference_end_ _reference_start_2 Kings 10:19_reference_end_ _reference_start_2 Kings 11:18_reference_end_ _reference_start_2 Chronicles 23:17_reference_end_ Keyword: Level 3: b Context: Priest of pagan gods, one who offers sacrifices to pagan gods as an intermediary between non-Israelite people and their gods Intrinsic Domains for Meaning:c Non-Israelite people Participant Roles for Meaning:c Event = implicit: to sacrificeAgent = headword: human = priestRecipient = genitive or in context or implicit: pagan godBeneficiary = in wider context or in context: human = non-Israelite Key Reference: _reference_start_Jeremiah 48:7_reference_end_ Key Verse: ... your god Chemosh will go into exile, along with his princes and |bpriests|b*. (TEV) Evaluation of Translations: All the translations consulted use 'priest' here. _reference_start_Genesis 41:45_reference_end_ _reference_start_Genesis 41:50_reference_end_ _reference_start_Genesis 46:20_reference_end_ _reference_start_Genesis 47:22_reference_end_ _reference_start_Genesis 47:22_reference_end_ _reference_start_Genesis 47:26_reference_end_ _reference_start_1 Samuel 5:5_reference_end_ _reference_start_1 Samuel 6:2_reference_end_ _reference_start_Jeremiah 48:7_reference_end_ _reference_start_Jeremiah 49:3_reference_end_ Keyword: Associated Collocating Term: קסם Gloss: to divine References: _reference_start_1 Samuel 6:2_reference_end_ Level 2: 3 Meaning: One with a special relationship with God like that of a priest (Metaphorical extension of Meaning 1) Frame for Meaning: Relationship with God Participant Roles for Meaning: Event: to relateAgent: God Patient: human (sometimes collective) Meaning Comments: This meaning may include the idea of acting as an intermediary between people and God, but without the sacrificial functions. Level 3: a Context: Israelite as having a special relationship with God Intrinsic Domains for Meaning:c Prophetic promise; Israelites Participant Roles for Meaning:c Event = implicit: to relateAgent = genitive or לְ*: GodPatient = headword: human = Israelite Key Reference: _reference_start_Exodus 19:6_reference_end_ Key Verse: (5) Now therefore, if you will obey my voice and keep my covenant, you shall be my own possession among all peoples; for all the earth is mine, (6) and you shall be to me a kingdom of |bpriests |b*and a holy nation. ... (RSV) Evaluation of Translations: All the translations consulted use 'priest' here, except for NRSV 'priestly'. TEV and CEV lose an important thought by failing to translate 'kingdom'. _reference_start_Exodus 19:6_reference_end_ _reference_start_Isaiah 61:6_reference_end_ Keyword: Similar Collocating Term: סְגֻלָּה Gloss: special possession References: _reference_start_Exodus 19:6_reference_end_ Keyword: Similar Collocating Term: גֹּוי קָדֹושׁ Gloss: holy people References: _reference_start_Exodus 19:6_reference_end_ Keyword: Associated Collocating Term: שׁרת Gloss: to serve References: _reference_start_Isaiah 61:6_reference_end_ Level 3: b Context: Non-Israelite promised a special relationship with God Intrinsic Domains for Meaning:c Prophetic promise; Non-Israelite people Participant Roles for Meaning:c Event = implicit: to relateAgent = in context: God Patient = headword: human = non-Israelite Key Reference: _reference_start_Isaiah 66:21_reference_end_ Key Verse: I will make some of them |bpriests |b*and Levites. (TEV) Evaluation of Translations: All the translations consulted use 'priest' here. _reference_start_Isaiah 66:21_reference_end_ Keyword: Similar Collocating Term: לֵוִי Gloss: Levite References: _reference_start_Isaiah 66:21_reference_end_ Note: (a) Aramaic references. Note: (b) In this verse כֹּהֵן* is used in parallel with כֹּמֶר*, in a way suggesting that two different groups are referred to. The latter word surely refers to the priests of Baal, as in 2 Kings 23:5, and so it seems likely that the former refers to apostate priests of the Temple of God, cf. 3:4. Therefore this occurrence of כֹּהֵן* is listed under this contextual use. Note: (c) Aramaic עֲבִידָה*. Note: (d) The references listed here are only those in which the priests relate to the instruction or law as guardians or instructors. Note: (e) The High Priest is only sometimes distinguished by the qualifying terms מָשִׁיחַ, גָּדֹול, רֹאשׁ*. More often he is distinguished from other priests by longer expressions or from the context. Hilkiah seems to have been the first priest given the title הַכֹּהֵן הַגָּדֹול*, but some earlier priests were known as כֹּהֵן הָרֹאשׁ*. Note: (f) These named priests are not specifically called High Priest, although some of them seem to have served as such. In the early monarchy period there does not seem to have been a single High Priest; during David's reign Zadok and Abiathar seem to have shared the leading role.Included here are the following references to priests by name: אֶלְעָזָר *Eleazar (before the death of Aaron): NUM 3:32; 4:16; 17:2,4; 19:3,4אִיתָמָר *Ithamar: EXO 38:21; NUM 4:28,33; 7:8 פִּינְחָס *Phinehas, son of Eleazar: NUM 25:7,11; 31:6; JOS 22:13,30,31,32 עֵלִי *Eli: 1SA 1:9; 2:11; 14:3חָפְנִי *Hophni and פִּינְחָס *Phinehas: 1SA 1:3 אֲחִימֶלֶךְ *Ahimelech: 1SA 21:2,3; 22:11; 2SA 8:17; 1CH 18:16 אֶבְיָתָר *Abiathar: 1SA 23:9; 30:7; 2SA 15:35,35; 17:15; 19:12; 20:25; 1KI 1:7,19,25,42; 2:22,26,27; 4:4; 1CH 15:11 צָדֹוק *Zadok: 2SA 8:17; 15:27,35,35; 17:15; 19:12; 20:25; 1KI 1:8,26,32,34,38,39,44,45; 2:35; 4:4; 1CH 15:11; 16:39; 18:16; 24:6; 29:22עֲזַרְיָהוּ *Azariah: 1KI 4:2יְהֹויָדָע *Jehoiada: 2KI 11:9,9,15; 12:3,8,10; 2CH 22:11; 23:8,8,9,14; 24:2,20,25; and an earlier Jehoiada: 1CH 27:5; and a later Jehoiada: JER 21:26אוּרִיָּה *Uriah: 2KI 16:10,11,11,15,16 פַּשְׁחוּר *Pashhur: JER 20:1צְפַנְיָהוּ *Zephaniah: 2KI 25:18; JER 21:1,25,29; 37:3; 52:24יְהֶזְקֵאל* Ezekiel: EZK 1:3עֶזְרָא *Ezra: EZR 7:11,12,21; 10:10,16; NEH 8:2,9; 12:26מְרֵמֹות *Meremoth: EZR 8:33 Note: (g) כֹּהֵן* and סֹופֵר* are used in parallel only of Ezra. In the Aramaic references Ezra 7:12,21 the parallel is between כָּהֵן* and סָפֵר*. Note: (h) Included here are the following references to High Priests by name: אַהֲרֹן *Aaron: EXO 31:10; 35:19; 39:41; LEV 1:7; 7:34; 13:2; 21:21; NUM 3:6; 18:28; 26:64; 33:38; JOS 21:4,13; EZR 7:5 אֶלְעָזָר *Eleazar (after the death of Aaron): 26:1,3,63; 27:2,19,21,22; 31:12,13,21,26,29,31,41,51,54; 32:2,28; 34:17; JOS 14:1; 17:4; 19:51; 21:1אֲמַרְיָהוּ *Amariah: 2CH 19:11 עֲזַרְיָהוּ *Azariah: 2CH 26:17,20; and another Azariah: 2CH 31:10חִלְקִיָּהוּ, חִלְקִיָּה *Hilkiah: 2KI 22:4,8,10,12,14; 23:4,24; 2CH 34:9,14,18שְׂרָיָה *Seraiah: 2KI 25:18; JER 52:24 אֶלְיָשִׁיב *Eliashib: NEH 3:1,20; 13:4,28 יְהֹושֻׁעַ *Joshua: HAG 1:1,12,14; 2:2,4; ZEC 3:1,8; 6:11 Note: (i) These references seem to be to a priesthood in Israel predating and separate from the order of Aaron - including in Psalm 99:6 where Moses as well as Aaron is named as a priest. Note: (j) 2 Samuel 8:18 seems to state clearly that David's sons were priests; compare also 2 Samuel 20:26 and 1 Kings 4:5. But this contradicts the law of Moses which allows only descendants of Aaron to be priests. The Levitical priests Zadok and Ahimelech are listed in verse 17. So it is often suggested that here כֹּהֵן* means not 'priest' but 'royal adviser', as in NIV; compare LXX αὐλάρχης *'chief of the court'. However, the law of Moses was not obeyed in every detail during the time of David, and the text should not be adjusted to make it appear that it was.In the parallel passage, 1 Chronicles 18:17, the text reads, in place of 'priests', literally 'first to the hand of the king'. It seems probable that the text of 2 Samuel was changed in 1 Chronicles as part of its presentation of David as an ideal king who observed the law of Moses. The LXX translator may have had similar reasons for adjusting the text.In the light of Psalm 110:4, it is possible that David appointed his sons to the priesthood of God Most High who was worshipped in pre-Israelite Jerusalem, i.e. as successors of Melchizedek. (In the light of the New Testament, these sons of David would also be precursors of the greater Son of David who was also called a priest of the order of Melchizedek, Hebrews 6:20.) Note: (k) The text of Hosea 4:4 is commonly emended e.g. to 'for with you is my contention, O priest' (RSV), which implies that the addressee Israel is here being referred to as a priest. But the text as written makes sense, and is accurately translated 'for your people are like those who bring charges against a priest' (NIV). The meaning of this in context is obscure, but the priest referred to here, as elsewhere in Hosea (cf. Amos 7:10 where this is clear), is presumably one of the non-Aaronic priests of the northern kingdom of Israel. Note: (l) In view of v.18 and 1 Kings 16:31, 32, it is assumed that the priests mentioned in 2 Kings 10:11 are priests of Baal, not non-Aaronic priests of God. But it is possible that priests of God are also being referred to here. Version: 0 Date: 2004-04-06 peterk Note: (a) Aramaic references. Note: (b) In this verse כֹּהֵן* is used in parallel with כֹּמֶר*, in a way suggesting that two different groups are referred to. The latter word surely refers to the priests of Baal, as in 2 Kings 23:5, and so it seems likely that the former refers to apostate priests of the Temple of God, cf. 3:4. Therefore this occurrence of כֹּהֵן* is listed under this contextual use. Note: (c) Aramaic עֲבִידָה*. Note: (d) The references listed here are only those in which the priests relate to the instruction or law as guardians or instructors. Note: (e) The High Priest is only sometimes distinguished by the qualifying terms מָשִׁיחַ, גָּדֹול, רֹאשׁ*. More often he is distinguished from other priests by longer expressions or from the context. Hilkiah seems to have been the first priest given the title הַכֹּהֵן הַߒָּדֹול*, but some earlier priests were known as כֹּהֵן הָרֹאשׁ*. Note: (f) These named priests are not specifically called High Priest, although some of them seem to have served as such. In the early monarchy period there does not seem to have been a single High Priest; during David's reign Zadok and Abiathar seem to have shared the leading role.Included here are the following references to priests by name: אֶלְעָזָר *Eleazar (before the death of Aaron): NUM 3:32; 4:16; 17:2,4; 19:3,4אִיתָמָר *Ithamar: EXO 38:21; NUM 4:28,33; 7:8 פִּינְחָס *Phinehas, son of Eleazar: NUM 25:7,11; 31:6; JOS 22:13,30,31,32 עֵלִי *Eli: 1SA 1:9; 2:11; 14:3חָפְנִי *Hophni and פִּינְחָס *Phinehas: 1SA 1:3 אֲחִימֶלֶךְ *Ahimelech: 1SA 21:2,3; 22:11; 2SA 8:17; 1CH 18:16 אֶבְיָתָר *Abiathar: 1SA 23:9; 30:7; 2SA 15:35,35; 17:15; 19:12; 20:25; 1KI 1:7,19,25,42; 2:22,26,27; 4:4; 1CH 15:11 צָדֹוק *Zadok: 2SA 8:17; 15:27,35,35; 17:15; 19:12; 20:25; 1KI 1:8,26,32,34,38,39,44,45; 2:35; 4:4; 1CH 15:11; 16:39; 18:16; 24:6; 29:22עֲזַרְיָהוּ *Azariah: 1KI 4:2יְהֹויָדָע *Jehoiada: 2KI 11:9,9,15; 12:3,8,10; 2CH 22:11; 23:8,8,9,14; 24:2,20,25; and an earlier Jehoiada: 1CH 27:5; and a later Jehoiada: JER 21:26אוּרִיָּה *Uriah: 2KI 16:10,11,11,15,16 פַּשְׁחוּר *Pashhur: JER 20:1צְפַנְיָהוּ *Zephaniah: 2KI 25:18; JER 21:1,25,29; 37:3; 52:24יְהֶזְקֵאל* Ezekiel: EZK 1:3עֶזְרָא *Ezra: EZR 7:11,12,21; 10:10,16; NEH 8:2,9; 12:26מְרֵמֹות *Meremoth: EZR 8:33 Note: (g) כֹּהֵן* and סֹופֵר* are used in parallel only of Ezra. In the Aramaic references Ezra 7:12,21 the parallel is between כָּהֵן* and סָפֵר*. Note: (h) Included here are the following references to High Priests by name: אַהֲרֹן *Aaron: EXO 31:10; 35:19; 39:41; LEV 1:7; 7:34; 13:2; 21:21; NUM 3:6; 18:28; 26:64; 33:38; JOS 21:4,13; EZR 7:5 אֶלְעָזָר *Eleazar (after the death of Aaron): 26:1,3,63; 27:2,19,21,22; 31:12,13,21,26,29,31,41,51,54; 32:2,28; 34:17; JOS 14:1; 17:4; 19:51; 21:1אֲמַרְיָהוּ *Amariah: 2CH 19:11 עֲזַרְיָהוּ *Azariah: 2CH 26:17,20; and another Azariah: 2CH 31:10חִלְקִיָּהוּ, חִלְקִיָּה *Hilkiah: 2KI 22:4,8,10,12,14; 23:4,24; 2CH 34:9,14,18שְׂרָיָה *Seraiah: 2KI 25:18; JER 52:24 אֶלְיָשִׁיב *Eliashib: NEH 3:1,20; 13:4,28 יְהֹושֻׁעַ *Joshua: HAG 1:1,12,14; 2:2,4; ZEC 3:1,8; 6:11 Note: (i) These references seem to be to a priesthood in Israel predating and separate from the order of Aaron - including in Psalm 99:6 where Moses as well as Aaron is named as a priest. Note: (j) 2 Samuel 8:18 seems to state clearly that David's sons were priests; compare also 2 Samuel 20:26 and 1 Kings 4:5. But this contradicts the law of Moses which allows only descendants of Aaron to be priests. The Levitical priests Zadok and Ahimelech are listed in verse 17. So it is often suggested that here כֹּהֵן* means not 'priest' but 'royal adviser', as in NIV; compare LXX αὐλάρχης *'chief of the court'. However, the law of Moses was not obeyed in every detail during the time of David, and the text should not be adjusted to make it appear that it was.In the parallel passage, 1 Chronicles 18:17, the text reads, in place of 'priests', literally 'first to the hand of the king'. It seems probable that the text of 2 Samuel was changed in 1 Chronicles as part of its presentation of David as an ideal king who observed the law of Moses. The LXX translator may have had similar reasons for adjusting the text.In the light of Psalm 110:4, it is possible that David appointed his sons to the priesthood of God Most High who was worshipped in pre-Israelite Jerusalem, i.e. as successors of Melchizedek. (In the light of the New Testament, these sons of David would also be precursors of the greater Son of David who was also called a priest of the order of Melchizedek, Hebrews 6:20.) Note: (k) The text of Hosea 4:4 is commonly emended e.g. to 'for with you is my contention, O priest' (RSV), which implies that the addressee Israel is here being referred to as a priest. But the text as written makes sense, and is accurately translated 'for your people are like those who bring charges against a priest' (NIV). The meaning of this in context is obscure, but the priest referred to here, as elsewhere in Hosea (cf. Amos 7:10 where this is clear), is presumably one of the non-Aaronic priests of the northern kingdom of Israel. Note: (l) In view of v.18 and 1 Kings 16:31, 32, it is assumed that the priests mentioned in 2 Kings 10:11 are priests of Baal, not non-Aaronic priests of God. But it is possible that priests of God are also being referred to here. Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org. $$zxAAxaltar (מִזְבֵּחַ)altar (מִזְבֵּחַ)Strong's number: 4196 Part of speech: ncTwKK#wpriesthood (כְּהֻנָּה)priesthood (כְּהֻנָּה)Strong's number: 3550 \level1 1 Part of speech: ncf Frequency: 14 Cognate(s): כהן Abstract for Busy Translators: 1. This word refers to the status and duties of the priests serving in the Tabernacle and the Temple.2. Once the focus is on priesthood as a source of income.3. Once the word is used as a collective term for "priests".4. Once it refers to the service of the Levites. Comparison of Meanings and Uses: 1 Frame: Pr9v77vpriest (כֹּהֵן)priest (כֹּהֵן)Strong's number: 3548, 3549 (Aramaic) Variant Spel ?tfXJ<. xj\N@2$|n`RD6( wv  vv  uv  tv  sv  rv  qv  pv  ov nv mv lv kv jv  iv  hv  gv  fv  ev  dv  cv  bv  av  `v  _v  ^v  ]v  \v [v Zv Yv Xv Wv Vv Uv Tv Sv Rv Qv Pv Ov Nv Mv Lv Kv Jv Iv Hv Gv Fv Ev Dv Cv Bv Av# @v# ?v" >v =v <v ;v :v 9v ?tfXJ<. xj\N@2$|n`RD6( 6v$ 5v$ 4v$ 3v# 2v 1v 0v /v .v -v ,v +v *v )v (v 'v &v %v $v #v "v !v v v v v v v v v v v v v 8 v 7 v 6 v 5 v 2 v 1 v , v + v ' v % v $ v $ v " v " v ! v v  v  v  v  v  v  v  ~v  }v  |v  {v  zv  yv  xv  ?tfXJ<. xj\N@2$|n`RD6( uv  tv sv rv qv pv ov nv mv lv kv jv iv hv gv fv ev dv cv bv av `v _v ^v ]v \v [v Zv Yv Xv Wv Vv Uv Tv Sv Rv Qv Pv Ov Nv Mv Lv Kv Jv Iv Hv Gv Fv Ev Dv Cv! Bv Av @v ?v >v =v <v0 ;v0 :v, 9v( 8v' 7v& ?tfXJ<. xj\N@2$|n`RD6( 4v  3v  2v  1v 0v /v  .v  -v  ,v  +v  *v  )v  (v  'v  &v  %v  $v  #v  "v  !v  v  v v! v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v ~v }v |v {v zv yv xv wv vv ?tfXJ<. xj\N@2$|n`RD6( sv rv qv pv ov nv mv lv kv" jv" iv" hv gv fv ev dv cv bv av `v _v ^v ]v \v [v Zv Yv Xv Wv Vv  Uv Tv Sv Rv Qv Pv Ov Nv Mv Lv Kv) Jv Iv Hv Gv Fv Ev Dv Cv Bv  Av  @v  ?v  >v  =v ' <v  ;v  :v  9v  8v  7v 6v  5v  ?tfXJ<. xj\N@2$|n`RD6( 2v # 1v  0v /v  .v " -v ,v +vH *vG )vE (vA 'v? &v' %v $v #v "v !v v  v  v  v  v v v v v v v v v v v v v v v v v vF vE v? v= v$ v v$ v# v# v# v# v# v# ~v# }v# |v# {v" zv yv xv wv vv uv tv ?tfXJ<. vhZL>0"zl^PB4& qv pv ov nv mv lv kv jv" iv! hv! gv fv ev dv cv bv av `v _v ^v ]v \v" [v! Zv Yv Xv Wv Vv Uv Tv Sv Rv Qv Pv Ov Nv Mv Lv% Kv Jv Iv Hv Gv FvN@ Ev  Dv Cv  Bv , Av , @v ) ?v # >v  =v  <v ;v  :v  9v  8v 7v  6v ( 5v ' 4v & 3v % ?tfXJ<. xj\N@2$|n`RD6( 0v  /v  .v, -v+ ,v! +v! *v  )v # (v  'v &v %v $v  #v! "v !v v v v v v v v  v  v v v$ v' v' v' v& v& v% v% v% v$ v$ v! v v v v0 v0 v0 v. v. v. v- v- v, ~v, }v, |v, {v, zv, yv+ xv+ wv+ vv* uv* tv(. sv(- rv ?tfXJ<. xj\N@2$|n`RD6( ov nv mvF lv  kv0 jv  iv , hv , gv  fv  ev  dv  cv ' bv  av  `v _vH ^v  ]v \v [v Zv Yv Xv Wv Vv Uv Tv Sv RvF Qv Pv# Ov# Nv# Mv# Lv" Kv Jv Iv Hv Gv Fv Ev Dv Cv Bv Av @v ?v >v =v <v ;v :v 9v 8v 7v 6v 5v  4v  3v  2v  1v  ?tfXJ<. xj\N@2$|n`RD6( .v  -v# ,v +v, *v  )v , (vA 'v &v? %v# $v# #v "v !v v v v v v v v  v v v v v v# v v v  v  v0 v, v(. v(- v  v# v v' v0 v, v(. v(- v v v v v- ~v, }v ( |v % {v zv yv xv wv  vv uv tv sv$ rv  qv  pvH ?tfXJ<. xj\N@2$|n`RD6( mv lv kv jv  iv hv gv fv ev dv cv bv# av `v _v! ^v ]v \v [v Zv Yv Xv Wv# Vv Uv Tv Sv Rv Qv Pv Ov Nv Mv Lv Kv Jv Iv Hv+ Gv* Fv- Ev(. Dv, Cv* Bv Av @v ?v >v =v <v ;v :v 9v 8v 7v 6v0 5v 4v 3v 2v" 1v" 0v /v ?tfXJ<. xj\N@2$|n`RD6( ,v +v *v# )v (v 'v &v %v# $v# #v# "v !v v v v v v v  v v# v# v# v# v v v v v v v v v v v v v vA v? vA v? v! v' v% v v v ~v }v |v {v zv yv! xv wv vv uv tv sv rv qv pv ov nv ?tfXJ<. xj\N@2$|n`RD6( kv & jv " iv  hv  gv  fv  ev  dv  cv  bv  av  `v # _v # ^v  ]v  \v  [v  Zv  Yv  Xv  Wv  Vv  Uv  Tv  Sv $ Rv  Qv  Pv  Ov  Nv  Mv  Lv  Kv  Jv  Iv  Hv  Gv Fv Ev Dv Cv Bv Av @v ?v >v =v <v ;v :v 9v 8v! 7v 6v 5v 4v  3v 2v 1v  0v /v .v -v ?tfXJ<. xj\N@2$|n`RD6( *v  )v  (v 'v4 &v  %v $v4 #v% "v !v v v v v v  v v v  v v! v v v v v v v v v v v v v  v  v  v  v ' v  v  v  v  v  v  v  ~v }v  |v  {v  zv  yv  xv wv vv uv  tv  sv # rv  qv  pv  ov - nv , mv * lv ' ?tfXJ<. xj\N@2$|n`RD6( iv  hv  gv fv ev dv" cv" bv" av `v _v ^v ]v  \v  [v  Zv  Yv  Xv  Wv  Vv Uv Tv Sv3 Rv Qv Pv" Ov!& Nv  Mv  Lv6 Kv3 Jv) Iv Hv Gv Fv Ev Dv Cv Bv Av @v ?v@ >v? =v <v ;v :v 9v 8v  7v" 6v 5v') 4v& 3v# 2v 1v  0v  /v .v -v ,v +v ?tfXJ<. xj\N@2$|n`RD6( (v  'v  &v  %v  $v #v "v !v v v v v v v v v v v v v v v  v v" v  v  v& v v') v# v') v# v v4 v v v v v  v& v& v& ~v% }v% |v% {v% zv% yv  xv wv vv" uv  tv  sv  rv& qv& pv& ov% nv% mv% lv% kv% jv4 ?tfXJ<. xj\N@2$|n`RD6( gv= fv ev dv  cv1 bv0 av  `v  _v/ ^v/ ]v/ \v. [v)2 Zv)- Yv0 Xv Wv  Vv  Uv Tv  Sv& Rv # Qv # Pvn Ov Nv Mv Lv Kv Jv  Iv  Hv  Gv  Fv Ev Dv  Cv Bv Avc @v  ?v >v =v <v ;v :v 9vc 8v  7v" 6v 5v 4v  3v  2v  1v  0v  /v  .v  -v  ,v ! +v ! *v  )v ?tfXJ<. xj\N@2$|n`RD6( &x  %x $x  #x  "x !x x x x x x x x x# x# x# x! x x x x  x  x  x  x x x w w w w  w  w  w  w $ w $ w $ w w w ~w }w |w {w( zw yw  xw@ ww> vw uw tw sw rw qw pw( ow nw mvB lvB kvB jv= iv hviesthood; Agent: human 1a Domains: Tabernacle; Temple 1b Domain: Employment2 Frame: Priesthood; Agent: human (collective)3 Metaphorical extension of Meaning 1; Frame: Service of God; Agent: human Domain and Frame Notes: See the notes under כֹּהֵן*. Almost all the uses of כְּהֻנָּה* refer to worship in the Tabernacle and the Temple. In 1 Samuel 2:36 the focus is on the priestly office as employment and a source of income. Level 2: 1 Meaning: Status and duties of priest, as one who offers sacrifices to God as an intermediary between people and God Frame for Meaning: Priesthood Intrinsic Domains for Meaning: Sacrifice; Service of God; Hereditary role Participant Roles for Meaning: Event: to sacrificeAgent: humanRecipient: GodBeneficiary: human Level 3: a Context: Status and duties as priest of the order of Aaron Intrinsic Domains for Meaning:c Tabernacle; Temple Participant Roles for Meaning:c Event = in wider context or implicit:  to sacrificeAgent = genitive or in context (or לְ*): human = Aaron or descendantRecipient = in wider context or in context (or implicit): GodBeneficiary = in wider context or implicit (or in context): human = Israelite Key Reference: _reference_start_Exodus 29:9_reference_end_ Key Verse: ... they and their descendants will always be |bpriests|b*. (CEV) Evaluation of Translations: Most translations read 'the priesthood will be theirs' or similar, but the underlying thought is clarified by CEV's 'be priests'. The focus here is on status rather than responsibilities, and so TEV 'serve me as priests' is misleading. Some translations might be misunderstood as saying that these individuals will be priests for ever; TEV and CEV clarify that this is not the intention by adding 'and their descendants'. _reference_start_Exodus 29:9_reference_end_ _reference_start_Exodus 40:15_reference_end_ _reference_start_Numbers 3:10_reference_end_ _reference_start_Numbers 16:10_reference_end_ _reference_start_Numbers 18:1_reference_end_ _reference_start_Numbers 18:7_reference_end_ _reference_start_Numbers 18:7_reference_end_ _reference_start_Numbers 25:13_reference_end_ _reference_start_Ezra 2:62_reference_end_ _reference_start_Nehemiah 7:64_reference_end_ _reference_start_Nehemiah 13:29_reference_end_ Keyword: Associated Collocating Term: מלא יָד Gloss: to ordain References: _reference_start_Exodus 29:9_reference_end_ Keyword: Associated Collocating Term: מָשְׁחָה Gloss: anointing References: _reference_start_Exodus 40:15_reference_end_ Keyword: Associated Collocating Term: פקד Gloss: to appoint References: _reference_start_Numbers 3:10_reference_end_ Keyword: Associated Collocating Term: קרב Gloss: to approach References: _reference_start_Numbers 3:10_reference_end_ _reference_start_Numbers 18:7_reference_end_ Keyword: Associated Collocating Term: מִקְדָּשׁ Gloss: sanctuary References: _reference_start_Numbers 18:1_reference_end_ Keyword: Associated Collocating Term: שׁמר Gloss: to keep References: _reference_start_Numbers 3:10_reference_end_ _reference_start_Numbers 18:7_reference_end_ Level 3: b Context: Duties as priest as a source of income Intrinsic Domains for Meaning:c Employment Participant Roles for Meaning:c Event = implicit: to sacrificeAgent + Beneficiary = in context: human = one with status of priestRecipient = in wider context: God Meaning Comments:c Only in this use is כְּהֻנָּה* used in the plural. Key Reference: _reference_start_1 Samuel 2:36_reference_end_ Key Verse: ... Please give me some |bpriestly work|b*, so that I can have a scrap of bread to eat. (NJB) Evaluation of Translations: The reference here is to people who as descendants of Aaron had the status of priests, but had no specific duties or income from them. CEV 'be a priest' and TEV 'help the priests' are confusing because these people were already priests. RSV and NRSV 'in one of the priest's places' (|isic|i*, with the odd placing of the apostrophe) could be misunderstood as suggesting this person wants to replace another priest. NIV, REB and Tanakh reflect possible more specific understandings, but NJB 'some priestly work' is suitably generic. _reference_start_1 Samuel 2:36_reference_end_ \paradigl 1 Keyword: Associated Collocating Term: ספח Gloss: to join References: _reference_start_1 Samuel 2:36_reference_end_ Level 2: 2 Meaning: Priests of God (collective), those who offer sacrifices to God as intermediaries between people and God Frame for Meaning: Priesthood Intrinsic Domains for Meaning: Sacrifice; Service of God; Hereditary role Participant Roles for Meaning: Event: to sacrificeAgent: human (collective)Recipient: GodBeneficiary: human Level 3: a Context: Priests of the order of Aaron, those who offer sacrifices to God in the Tabernacle or Temple as intermediaries between Israelite people and God Intrinsic Domains for Meaning:c Tabernacle; Temple Participant Roles for Meaning:c Event = implicit: to sacrificeAgent = headword: human (collective) = descendants of AaronRecipient = in context: GodBeneficiary = implicit: human = Israelite Key Reference: _reference_start_Nehemiah 13:29_reference_end_ Key Verse: ... the covenant you made with the |bpriests |b*and the Levites. (TEV) Evaluation of Translations: This use refers to the second occurrence of the word in this verse, in conjunction with 'Levites'. Many ancient and modern translations, but not all, correctly understand this as indicating that the word is being used here as a collective noun meaning 'priests'. CEV misses the point of this verse. _reference_start_Nehemiah 13:29_reference_end_ \paradigl 1 Keyword: Similar Collocating Term: לֵוִי Gloss: Levite References: _reference_start_Nehemiah 13:29_reference_end_ Keyword: Associated Collocating Term: בְּרִית Gloss: covenant References: _reference_start_Nehemiah 13:29_reference_end_ Level 2: 3 Meaning: Status and duties of those who serve God (Metaphorical extension of Meaning 1) Frame for Meaning: Service of God Intrinsic Domains for Meaning: Hereditary role Participant Roles for Meaning: Event: to serveAgent: humanBeneficiary: God Level 3: a Context: Status and duties as Levite Intrinsic Domains for Meaning:c Local shrines Participant Roles for Meaning:c Event = headword: to serveAgent = in context: human = descendant of LeviBeneficiary = genitive: God Key Reference: _reference_start_Joshua 18:7_reference_end_ Key Verse: The Levites do not get a portion among you, because their inheritance is |bspecial service|b* to the LORD. ... (KTBH) Evaluation of Translations: All of the translations consulted use the word 'priesthood' or similar here, but this is misleading because the reference is apparently to the service of all of the Levites, which took place throughout the land (as specified in Joshua 21), and distinct from the service of the priests of the the order of Aaron, which was restricted to the central sanctuary. _reference_start_Joshua 18:7_reference_end_ Keyword: Similar Collocating Term: לֵוִי Gloss: Levite References: _reference_start_Joshua 18:7_reference_end_ Note: (a) Exceptionally, in this reference the agents are not descended from Aaron and the causing agent is not God, because here Korah and his associates were attempting to appoint themselves as priests although they were not entitled to it by descent. Version: 0 Date: 2004-04-06 peterk Note: (a) Exceptionally, in this reference the agents are not descended from Aaron and the causing agent is not God, because here Korah and his associates were attempting to appoint themselves as priests although they were not entitled to it by descent. Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org.m Frequency: 403 Cognate(s): זבח Abstract for Busy Translators: 1. This word refers to an elevated physical structure dedicated to the worship of a deity. 2. The elevated structure was a platform made of packed earth, piled stones, cut stones, wood overlaid or plated with a metal such as bronze or gold. The Israelites were not permitted to build an altar of cut stones (Exo 20:25). 3. The structure was normally used as a stand for burning animal sacrifices or cereal offerings. An altar could also serve as a memorial marker, or as a place of refuge. The word also referred to a stand for burning incense. 4. The structure was high enough to allow the officiator to work on it while standing at its base. In some cases, the structure was built in stages that required the officiator to mount steps to be able to work on it. The people of Israel were forbidden to build such altars (Exo 20:26). 5. In the Old Testament, the word most frequently refers to the altar of burnt offering which stood in the tabernacle or temple just before the entrance to the sanctuary. This altar was eventually promoted as the only legitimate place to offer animal sacrifice and cereal offerings to the God of Israel. In the tabernacle, this altar was made of acacia wood overlaid by bronze. The temple altar is referred to as the bronze altar, but it is not clear whether it was made entirely of bronze or of wood overlaid with bronze. 6. The word, especially when used in the plural, can refer to altars for pagan worship, such as for the worship of Baal. 7. The word can also refer to the altar of incense which stood in the sanctuary of the tabernacle or the temple and served as a brazier for burning incense. In the tabernacle this was made of acacia wood overlaid with gold. In the temple, it is sometimes referred to as the gold altar. 8. In certain contexts, an altar was built as a memorial marker, not as a platform for burning sacrifices or incense. In addition to serving as a platform for burning sacrifice or incense, it also served the function of a place of refuge from vengeance killing in cases of manslaughter. Notes for Translators: Care needs to taken when translating 'altar' in Tazi contexts. Any large animal killed for food is ritually 'sacrificed' and it is done on a floor set apart for that purpose. So a substantive referring to 'place of sacrifice' usually refers to a floor where a butcher works. It bears no resemblance to the physical structure of Old Testament altars and does not suggest an object used for worship.In traditional Christian contexts, churches of liturgical background may include a raised structure that is called an 'altar'. But care must be taken in these cases, as well. There are valid metaphorical comparisons between a Christian altar and the kinds of altar that were used in Israelite worship. But in terms of actual form and function there are very significant differences. It would be helpful to the translator to look for pictures or diagrams of Old Testament altars in Bible dictionaries or handbooks before they decide on the proper description or designation of an altar in their translation. Hebraists' Comments: מִזְבֵּחַ* is a noun derived from the verb זבח* 'to slaughter, to sacrifice' using a ם *preformitive . Such nouns 'are mainly abstract nouns, nouns of place and nouns of instrument' (Joüon and Muraoka 1993; §88Ld). In the vast majority of occurrences, מִזְבֵּח* is not abstract, but is referring to a concrete structure. However, an altar is a place of sacrifice. Comparison of Meanings and Uses: All occurrences of מִזְבֵּחַ* make reference to a physical structure. The primary function of the structure was to provide a platform for burning sacrifices and offerings. This primary function is clear in the first three meanings. Meaning 1 refers to altars that were built by the patriarchs in a variety of places, in a practice that was continued well after the development of the official cult centered around the altars in the Tabernacle and the Temple, especially in the Northern Kingdom. A contextual use distinction was made for the altar that was built on Mount Ebal at the time the Israelites entered the land. It functions as both a place of sacrifice and as a memorial to the covenant law that had been established between God and the people while they were in the desert.Meaning 2 refers to the bronze altar that was a focus of official worship when the Tabernacle and later the Temple were established and the priesthood was instituted. Contextual uses were distinguished for the different altars in the Tabernacle and the various versions of the Temple. In addition, these altars could serve as a point of refuge and become references for expressions that refer to the activities of priesthood or congregational worship.Meaning 3 refers to altars that were dedicated to pagan gods. One contextual use is distinguished where the altar in Bethel is personified as the focus of guilt for northern kingdom's apostacy and as a result is punished.Meaning 4 refers to the altar that was built by the eastern tribes following the conquest. The western tribes interpreted its function as that of sacrifice. The eastern tribes insisted that it was built only as a reminder. The western tribes accepted that explanation which indicates that 'memorial' was an understood secondary function of a patriarchal style altar.Meaning 5 refers to the incense burner that was built for the Tabarnacle and the Temple. It did not function as a place of sacrifice, but the burning of incense was probably viewed as analagous to the burning of the animal sacrifices and cereal offerings, allowing the term 'altar' to be extended to refer to 'the altar of incense'. Domain and Frame Notes: The word 'altar' evokes the frame of Sacrifice and that frame unites all of the meanings even if only by analogy in the case of Meaning 5. Though the frame is the same throughout, domains of patriarchal religion, priesthood, pagan religion, memorial, and purification rituals distinguish the various meanings of the word. Level 2: 1 Meaning: Altar, an elevated structure for offering sacrifices, built where significant interaction with God takes place Frame for Meaning: Sacrifice Intrinsic Domains for Meaning: Patriarchal Religion Participant Roles for Meaning: Event: to sacrificeAgent: humanBeneficiary: GodPatient: sacrifice or offeringLocation: headword Meaning Comments: The patriarchal altar was built for the purpose of offering sacrifices. Patriarchs and prophets built altars in response to interaction with God. The altars were built on the site where God appeared or revealed himself to them. These altars may have had a memorial function in addition to being altars for sacrifice. Level 3: a Context: Altar built by an Israelite patriarch, leader, or prophet, for sacrifice and/or as a monument in response to interaction with God Participant Roles for Meaning:c Agent: human = patriarch or prophet Key Reference: _reference_start_Genesis 8:20_reference_end_ Key Verse: "Then Noah built an|b altar|b* to the Lord, and took of every clean animal and of every clean bird, and offered burnt offerings on the altar" (RSV). Evaluation of Translations: All translations consulted use "altar" here. _reference_start_Genesis 8:20_reference_end_ _reference_start_Genesis 8:20_reference_end_ _reference_start_Genesis 12:7_reference_end_ _reference_start_Genesis 12:8_reference_end_ _reference_start_Genesis 13:4_reference_end_ _reference_start_Genesis 13:18_reference_end_ _reference_start_Genesis 22:9_reference_end_ _reference_start_Genesis 22:9_reference_end_ _reference_start_Genesis 26:25_reference_end_ _reference_start_Genesis 33:20_reference_end_ _reference_start_Genesis 35:1_reference_end_ _reference_start_Genesis 35:3_reference_end_ _reference_start_Genesis 35:7_reference_end_ _reference_start_Exodus 17:15_reference_end_ _reference_start_Exodus 20:24_reference_end_ _reference_start_Exodus 20:25_reference_end_ _reference_start_Exodus 20:26_reference_end_ _reference_start_Exodus 24:4_reference_end_ _reference_start_Exodus 24:6_reference_end_ _reference_start_Judges 6:24_reference_end_ _reference_start_Judges 6:26_reference_end_ _reference_start_Judges 6:28_reference_end_ _reference_start_Judges 13:20_reference_end_ _reference_start_Judges 13:20_reference_end_ _reference_start_Judges 21:4_reference_end_ _reference_start_1 Samuel 7:17_reference_end_ _reference_start_1 Samuel 14:35_reference_end_ _reference_start_1 Samuel 14:35_reference_end_ _reference_start_2 Samuel 24:18_reference_end_ _reference_start_2 Samuel 24:21_reference_end_ _reference_start_2 Samuel 24:25_reference_end_ _reference_start_1 Kings 18:30_reference_end_ _reference_start_1 Kings 18:32_reference_end_ _reference_start_1 Kings 18:32_reference_end_ _reference_start_1 Kings 18:35_reference_end_ _reference_start_1 Kings 19:10_reference_end_ _reference_start_1 Kings 19:14_reference_end_ _reference_start_1 Chronicles 21:18_reference_end_ _reference_start_1 Chronicles 21:22_reference_end_ _reference_start_1 Chronicles 21:26_reference_end_ _reference_start_1 Chronicles 21:26_reference_end_ _reference_start_1 Chronicles 22:1_reference_end_ _reference_start_Isaiah 19:19_reference_end_ Keyword: Associated Collocating Term: בנה [שָׁם]‏ Gloss: he built [there] (an altar) References: _reference_start_Genesis 8:20_reference_end_ _reference_start_Genesis 12:7_reference_end_ _reference_start_Genesis 12:8_reference_end_ _reference_start_Genesis 13:18_reference_end_ _reference_start_Genesis 22:9_reference_end_ _reference_start_Genesis 26:25_reference_end_ _reference_start_Genesis 35:7_reference_end_ _reference_start_Exodus 17:15_reference_end_ _reference_start_Exodus 24:4_reference_end_ _reference_start_Judges 6:24_reference_end_ _reference_start_Judges 6:26_reference_end_ _reference_start_Judges 21:4_reference_end_ _reference_start_1 Samuel 7:17_reference_end_ _reference_start_1 Samuel 14:35_reference_end_ _reference_start_1 Samuel 14:35_reference_end_ _reference_start_2 Samuel 24:21_reference_end_ _reference_start_2 Samuel 24:25_reference_end_ _reference_start_1 Chronicles 21:22_reference_end_ _reference _start_1 Chronicles 21:26_reference_end_ _reference_start_1 Chronicles 22:1_reference_end_ Keyword: Associated Collocating Term: בנה אֶת־הָאֲבָנִים Gloss: to build the stones (of the altar) References: _reference_start_1 Kings 18:32_reference_end_ Keyword: Associated Collocating Term: עשׂה [שָׁם]‏ Gloss: to make [there] (an altar) References: _reference_start_Genesis 13:4_reference_end_ _reference_start_Genesis 35:1_reference_end_ _reference_start_Genesis 35:3_reference_end_ _reference_start_Exodus 20:24_reference_end_ _reference_start_Exodus 20:25_reference_end_ Keyword: Associated Collocating Term: קום (hiphil)* Gloss: to erect (an altar) References: _reference_start_2 Samuel 24:18_reference_end_ _reference_start_1 Chronicles 21:18_reference_end_ Keyword: Associated Collocating Term: הרס Gloss: tear down (an altar) References: _reference_start_1 Kings 18:30_reference_end_ _reference_start_1 Kings 19:10_reference_end_ _reference_start_1 Kings 19:14_reference_end_ Keyword: Identifying Collocating Term: לַיהוָה Gloss: (an altar) to Yahweh References: _reference_start_Genesis 8:20_reference_end_ _reference_start_Genesis 12:7_reference_end_ _reference_start_Genesis 12:8_reference_end_ _reference_start_Genesis 13:18_reference_end_ _reference_start_Judges 6:24_reference_end_ _reference_start_Judges 6:26_reference_end_ _reference_start_1 Samuel 7:17_reference_end_ _reference_start_1 Samuel 14:35_reference_end_ _reference_start_1 Samuel 14:35_reference_end_ _reference_start_2 Samuel 24:18_reference_end_ _reference_start_2 Samuel 24:21_reference_end_ _reference_start_2 Samuel 24:25_reference_end_ _reference_start_1 Chronicles 21:18_reference_end_ _reference_start_1 Chronicles 21:22_reference_end_ _reference_start_Isaiah 19:19_reference_end_ Keyword: Identifying Collocating Term: יְהוָה Gloss: (the altar) of Yahweh References: _reference_start_1 Kings 18:30_reference_end_ Keyword: Identifying Collocating Term: מִזְבְּחֹתֶיךָ Gloss: your altar (referring t o Yahweh) References: _reference_start_1 Kings 19:10_reference_end_ _reference_start_1 Kings 19:14_reference_end_ Keyword: Identifying Collocating Term: לָאֵל Gloss: (an altar) to God References: _reference_start_Genesis 35:1_reference_end_ _reference_start_Genesis 35:3_reference_end_ Keyword: Associated Collocating Term: קרא בְּשֵׁם יְהוָה Gloss: he called on the name of Yahweh References: _reference_start_Genesis 12:8_reference_end_ _reference_start_Genesis 13:4_reference_end_ _reference_start_Genesis 26:25_reference_end_ Keyword: Similar_Term Collocating Term: מַצֵּבָה Gloss: pillar, stone set up for worship or memorial References: _reference_start_Exodus 24:4_reference_end_ _reference_start_Isaiah 19:19_reference_end_ Keyword: Associated Collocating Term: עלה עֹלוֹת [בּ־]‏ Gloss: to offer up burnt offerings on (the altar) References: _reference_start_Genesis 8:20_reference_end_ _reference_start_Exodus 24:4_reference_end_ Keyword: Associated Collocating Term:  עלה עֹלוֹת וּשְׁלָמִים Gloss: to offer up burnt offerings and peace offerings References: _reference_start_2 Samuel 24:25_reference_end_ _reference_start_1 Chronicles 21:26_reference_end_ Keyword: Identifying Collocating Term: הָעֹלָה Gloss: (the altar) of burnt offering References: _reference_start_1 Chronicles 21:26_reference_end_ Keyword: Identifying Collocating Term: לְעֹלָה לְיִשְׂרָאֵל Gloss: (the altar) for burnt offering for Israel References: _reference_start_1 Chronicles 22:1_reference_end_ Keyword: Associated Collocating Term: זבח זְבָחִים Gloss: to sacrifice sacrifices References: _reference_start_Exodus 20:24_reference_end_ _reference_start_Exodus 24:4_reference_end_ Keyword: Associated Collocating Term: נָבִיא, בְּרִית Gloss: prophet, covenant References: _reference_start_1 Kings 19:10_reference_end_ _reference_start_1 Kings 19:14_reference_end_ Level 3: b Context: The altar commanded by Moses and built by Joshua on Mount  Ebal in the promised land for sacrifice and to commemorate the law which makes the Israelites a people Intrinsic Domains for Meaning:c Covenant memorial Participant Roles for Meaning:c Agent: human = Joshua as representative of people Meaning Comments:c The function of commemorating the law by writing it on the altar (see Deuteronomy 27:8, Joshua 8:32) is similar to using an altar as a memorial marker, see Meaning 6. Key Reference: _reference_start_Deuteronomy 27:5_reference_end_ Key Verse: |u4|u* "When you have passed over the Jordan, you shall set up these stones, concerning which I command you this day, on Mount Ebal... |u5|u* And there you shall build an |baltar|b* to the Lord your God, an |baltar|b* of stones; you shall lift up no iron tool upon them." RSV Evaluation of Translations: All of the translation consulted use 'altar' here. _reference_start_Deuteronomy 27:5_reference_end_ _reference_start_Deuteronomy 27:5_reference_end_ _reference_start_Deuteronomy 27:6_reference_end_ _reference_start_Joshua 8:30_reference_end_ _reference_start_Joshua 8:31_reference_end_ Keyword: Associated Collocating Term: בנה Gloss: to build (an altar) References: _reference_start_Deuteronomy 27:5_reference_end_ _reference_start_Deuteronomy 27:6_reference_end_ _reference_start_Joshua 8:30_reference_end_ Keyword: Associated Collocating Term: עלה עֹלוֹת עַל־ Gloss: to offer up burnt offerings on (the altar) References: _reference_start_Deuteronomy 27:6_reference_end_ _reference_start_Joshua 8:31_reference_end_ Keyword: Associated Collocating Term: זבח שְׁלָמִים Gloss: to sacrifice peace offerings References: _reference_start_Joshua 8:31_reference_end_ Keyword: Identifying Collocating Term: לַיהוָה אֱלֹהֶיךָ Gloss: (an altar) to Yahweh your God References: _reference_start_Deuteronomy 27:5_reference_end_ Keyword: Identifying Collocating Term: לַיהוָה אֱלֹהֵי יִשְׂרָאֵל Gloss: (an altar) to Yahweh God of Israel References: _reference_start_Joshua 8:30_reference_end_ Keyword: Identifying Collocating Term: יְהוָה אֱלֹהֶיךָ Gloss: (the altar) of Yahweh your God References: _reference_start_Deuteronomy 27:6_reference_end_ Keyword: Identifying Collocating Term: אֲבָנִים לֹא־תָנִיף עֲלֵיהֶם בַּרְזֶל Gloss: (an altar) of stones, you shall not use iron (tool) on them References: _reference_start_Deuteronomy 27:5_reference_end_ _reference_start_Joshua 8:31_reference_end_ Keyword: Identifying Collocating Term: אֲבָנִים שְׁלֵמֹות Gloss: (an altar) of uncut stones References: _reference_start_Deuteronomy 27:6_reference_end_ _reference_start_Joshua 8:31_reference_end_ Level 2: 2 Meaning: Altar of burnt offering built for priest-led worship of God in the Israelite tabernacle or the temple Frame for Meaning: Sacrifice Intrinsic Domains for Meaning: Tabernacle, Temple, Priesthood Participant Roles for Meaning: Event: to sacrificeAgent: human = priestsBeneficiary: GodPatient: sacrifice or offeringLocation: headword Level 3: a Context: The portable altar, built of acacia wood overlaid with bronze, used as the altar of burnt offering in the tabernacle Intrinsic Domains for Meaning:c Tabernacle worship Participant Roles for Meaning:c Location: headword = altar in the Tabernacle Key Reference: _reference_start_Exodus 40:6_reference_end_ Key Verse: You shall place the |baltar|b* of burnt offering before the entrance of the Tabernacle of the Tent of Meeting. (NJPS) Evaluation of Translations: All translations consulted use 'altar' here. _reference_start_Exodus 27:1_reference_end_ _reference_start_Exodus 27:1_reference_end_ _reference_start_Exodus 27:5_reference_end_ _reference_start_Exodus 27:5_reference_end_ _reference_start_Exodus 27:6_reference_end_ _reference_start_Exodus 27:7_reference_end_ _reference_start_Exodus 29:12_reference_end_ _reference_start_Exodus 29:12_reference_end_ _reference_start_Exodus 29:13_reference_end_ _reference_start_Exodus 29:16_reference_end_ _reference_start_Exodus 29:18_reference_end_ _reference_start_Exodus 29:20_reference_end_ _reference_start_Exodus 29:21_reference_end_ _reference_start_Exodus 29:25_reference_end_ _reference_start_Exodus 29:36_reference_end_ _reference_start_Exodus 29:37_reference_end_ _reference_start_Exodus 29:37_reference_end_ _reference_start_Exodus 29:37_reference_end_ _reference_start_Exodus 29:38_reference_end_ _reference_start_Exodus 29:44_reference_end_ _reference_start_Exodus 30:18_reference_end_ _reference_start_Exodus 30:20_reference_end_ _reference_start_Exodus 30:28_reference_end_ _reference_start_Exodus 31:9_reference_end_ _reference_start_Exodus 35:16_reference_end_ _reference_start_Exodus 38:1_reference_end_ _reference_start_Exodus 38:3_reference_end_ _reference_start_Exodus 38:4_reference_end_ _reference_start_Exodus 38:7_reference_end_ _reference_start_Exodus 38:30_reference_end_ _reference_start_Exodus 38:30_reference_end_ _reference_start_Exodus 39:39_reference_end_ _reference_start_Exodus 40:6_reference_end_ _reference_start_Exodus 40:7_reference_end_ _reference_start_Exodus 40:10_reference_end_ _reference_start_Exodus 40:10_reference_end_ _reference_start_Exodus 40:10_reference_end_ _reference_start_Exodus 40:29_reference_end_ _reference_start_Exodus 40:30_reference_end_ _reference_start_Exodus 40:32_reference_end_ _reference_start_Exodus 40:33_reference_end_ _reference_start_Leviticus 1:5_reference_end_ _reference_start_Leviticus 1:7_reference_end_ _reference_start_Leviticus 1:8_reference_end_ _reference_start_Leviticus 1:9_reference_end_ _reference_start_Leviticus 1:11_reference_end_ _reference_start_Leviticus 1:11_reference_end_ _reference_start_Leviticus 1:12_reference_end_ _reference_start_Leviticus 1:13_reference_end_ _reference_start_Leviticus 1:15_reference_end_ _reference_start_Leviticus 1:15_reference_end_ _reference_start_Leviticus 1:15_reference_end_ _reference_start_Leviticus 1:16_reference_end_ _reference_start_Leviticus 1:17_reference_end_ _reference_start_Leviticus 2:2_reference_end_ _reference_start_Leviticus 2:8_reference_end_ _reference_start_Leviticus 2:9_reference_end_ _reference_start_Leviticus 2:12_reference_end_ _reference_start_Leviticus 3:2_reference_end_ _reference_start_Leviticus 3:5_reference_end_ _reference_start_Leviticus 3:8_reference_end_ _reference_start_Leviticus 3:11_reference_end_ _reference_start_Leviticus 3:13_reference_end_ _reference_start_Leviticus 3:16_reference_end_ _reference_start_Leviticus 4:7_reference_end_ _reference_start_Leviticus 4:10_reference_end_ _reference_start_Leviticus 4:18_reference_end_ _reference_start_Leviticus 4:19_reference_end_ _reference_start_Leviticus 4:25_reference_end_ _reference_start_Leviticus 4:25_reference_end_ _reference_start_Leviticus 4:26_reference_end_ _reference_start_Leviticus 4:30_reference_end_ _reference_start_Leviticus 4:30_reference_end_ _reference_start_Leviticus 4:31_reference_end_ _reference_start_Leviticus 4:34_reference_end_ _reference_start_Leviticus 4:34_reference_end_ _reference_start_Leviticus 4:35_reference_end_ _reference_start_Leviticus 5:9_reference_end_ _reference_start_Leviticus 5:9_reference_end_ _reference_start_Leviticus 5:12_reference_end_ _reference_start_Leviticus 6:2_reference_end_ _reference_start_Leviticus 6:2_reference_end_ _reference_start_Leviticus 6:3_reference_end_ _reference_start_Leviticus 6:3_reference_end_ _reference_start_Leviticus 6:5_reference_end_ _reference_start_Leviticus 6:6_reference_end_ _reference_start_Leviticus 6:7_reference_end_ _reference_start_Leviticus 6:8_reference_end_ _reference_start_Leviticus 7:2_reference_end_ _reference_start_Leviticus 7:5_reference_end_ _reference_start_Leviticus 7:31_reference_end_ _reference_start_Leviticus 8:11_reference_end_ _reference_start_Leviticus 8:11_reference_end_ _reference_start_Leviticus 8:15_reference_end_ _reference_start_Leviticus 8:15_reference_end_ _reference_start_Leviticus 8:15_reference_end_ _reference_start_Leviticus 8:16_reference_end_ _reference_start_Leviticus 8:19_reference_end_ _reference_start_Leviticus 8:21_reference_end_ _reference_start_Leviticus 8:24_reference_end_ _reference_start_Leviticus 8:28_reference_end_ _reference_start_Leviticus 8:30_reference_end_ _reference_start_Leviticus 9:7_reference_end_ _reference_start_Leviticus 9:8_reference_end_ _reference_start_Leviticus 9:9_reference_end_ _reference_start_Leviticus 9:9_reference_end_ _reference_start_Leviticus 9:10_reference_end_ _reference_start_Leviticus 9:12_reference_end_ _reference_start_Leviticus 9:13_reference_end_ _reference_start_Leviticus 9:14_reference_end_ _reference_start_Leviticus 9:17_reference_end_ _reference_start_Leviticus 9:18_reference_end_ _reference_start_Leviticus 9:20_reference_end_ _reference_start_Leviticus 9:24_reference_end_ _reference_start_Leviticus 10:12_reference_end_ _reference_start_Leviticus 14:20_reference_end_ _reference_start_Leviticus 16:12_reference_end_ _reference_start_Leviticus 16:18_reference_end_ _reference_start_Leviticus 16:18_reference_end_ _reference_start_Leviticus 16:20_reference_end_ _reference_start_Leviticus 16:25_reference_end_ _reference_start_Leviticus 16:33_reference_end_ _reference_start_Leviticus 17:6_reference_end_ _reference_start_Leviticus 17:11_reference_end_ _reference_start_Leviticus 21:23_reference_end_ _reference_start_Leviticus 22:22_reference_end_ _reference_start_Numbers 3:26_reference_end_ _reference_start_Numbers 4:13_reference_end_ _reference_start_Numbers 4:14_reference_end_ _reference_start_Numbers 4:26_reference_end_ _reference_start_Numbers 5:25_reference_end_ _reference_start_Numbers 5:26_reference_end_ _reference_start_Numbers 7:1_reference_end_ _reference_start_Numbers 7:10_reference_end_ _reference_start_Numbers 7:10_reference_end_ _reference_start_Numbers 7:11_reference_end_ _reference_start_Numbers 7:84_reference_end_ _reference_start_Numbers 7:88_reference_end_ _reference_start_Numbers 17:3_reference_end_ _reference_start_Numbers 17:4_reference_end_ _reference_start_Numbers 17:11_reference_end_ _reference_start_Numbers 18:3_reference_end_ _reference_start_Numbers 18:17_reference_end_ _reference_start_Joshua 22:19_reference_end_ _reference_start_Joshua 22:28_reference_end_ _reference_start_Joshua 22:29_reference_end_ _reference_start_1 Kings 3:4_reference_end_ _reference_start_1 Chronicles 6:34_reference_end_ _reference_start_1 Chronicles 16:40_reference_end_ _reference_start_1 Chronicles 21:29_reference_end_ _reference_start_2 Chronicles 1:5_reference_end_ _reference_start_2 Chronicles 1:6_reference_end_ Keyword: Associated Collocating Term: עשׂה אֶת־ Gloss: to make (the altar) References: _reference_start_Exodus 27:1_reference_end_ _reference_start_Exodus 38:1_reference_end_ _reference_start_2 Chronicles 1:5_reference_end_ Keyword: Associated Collocating Term: משׁח Gloss: to anoint (the altar) References: _reference_start_Exodus 29:36_reference_end_ _reference_start_Exodus 30:28_reference_end_ _reference_start_Exodus 40:10_reference_end_ _reference_start_Leviticus 8:11_reference_end_ _reference_start_Numbers 7:1_reference_end_ _reference_start_Numbers 7:10_reference_end_ _reference_start_Numbers 7:84_reference_end_ _reference_start_Numbers 7:88_reference_end_ Keyword: Associated Collocating Term: קַדֵּשׁ Gloss: to sanctify (the altar) References: _reference_start_Exodus 29:36_reference_end_ _reference_start_Exodus 29:37_reference_end_ _reference_start_Exodus 29:44_reference_end_ _reference_start_Exodus 30:28_reference_end_ _reference_start_Exodus 40:10_reference_end_ _reference_start_Leviticus 8:11_reference_end_ _reference_start_Leviticus 8:15_reference_end_ _reference_start_Numbers 7:1_reference_end_ Keyword: Identifying Collocating Term: היה קֹדֶשׁ קָֽדָשִׁים Gloss: (the altar) will be most holy References: _reference_start_Exodus 29:37_reference_end_ _reference_start_Exodus 40:10_reference_end_ Keyword: Associated Collocating Term: כפר עַל־ (piel)‏* Gloss: to make atonement for (the altar) References: _reference_start_Exodus 29:36_reference_end_ _reference_start_Exodus 29:37_reference_end_ _reference_start_Leviticus 8:15_reference_end_ _reference_start_Leviticus 16:18_reference_end_ Keyword: Associated Collocating Term: כפר אֵת־ (piel)* Gloss: to make atonement for (the altar) References: _reference_start_Leviticus 16:20_reference_end_ _reference_start_Leviticus 16:33_reference_end_ Keyword: Associated Collocating Term: קטר... הַמִּזְבֵּחָה (hiphil)* Gloss: to turn...into smoke at the altar References: _reference_start_Exodus 29:13_reference_end_ _reference_start_Exodus 29:18_reference_end_ _reference_start_Exodus 29:25_reference_end_ _reference_start_Leviticus 1:9_reference_end_ _reference_start_Leviticus 1:13_reference_end_ _reference_start_Leviticus 1:15_reference_end_ _reference_start_Leviticus 1:17_reference_end_ _reference_start_Leviticus 2:2_reference_end_ _reference_start_Leviticus 2:9_reference_end_ _reference_start_Leviticus 3:5_reference_end_ _reference_start_Leviticus 3:11_reference_end_ _reference_start_Leviticus 3:16_reference_end_ _reference_start_Leviticus 4:19_reference_end_ _reference_start_Leviticus 4:26_reference_end_ _reference_start_Leviticus 4:31_reference_end_ _reference_start_Leviticus 4:35_reference_end_ _reference_start_Leviticus 5:12_reference_end_ _reference_start_Leviticus 6:8_reference_end_ _reference_start_Leviticus 7:5_reference_end_ _reference_start_Leviticus 7:31_reference_end_ _reference_start_Leviticus 8:16_reference_end_ _reference_start_Leviticus 8:21_reference_end_ _reference_start_Leviticus 8:28_reference_end_ _reference_start_Leviticus 9:10_reference_end_ _reference_start_Leviticus 9:14_reference_end_ _reference_start_Leviticus 9:20_reference_end_ _reference_start_Leviticus 16:25_reference_end_ _reference_start_Numbers 5:26_reference_end_ Keyword: Associated Collocating Term: קטר...עַל־ (hiphil)* Gloss: to turn...into smoke on (the altar) References: _reference_start_Leviticus 9:13_reference_end_ _reference_start_Leviticus 9:17_reference_end_ _reference_start_1 Chronicles 6:34_reference_end_ Keyword: Associated Collocating Term: נתן [הַדָּם] עַל־קַרְנֹת...[בְּאֶצְבָעֶךָ] Gloss: put [the blood] on the horns (of the altar) [with your finger] References: _reference_start_Exodus 29:12_reference_end_ _reference_start_Leviticus 4:25_reference_end_ _reference_start_Leviticus 4:30_reference_end_ _reference_start_Leviticus 4:34_reference_end_ _reference_start_Leviticus 8:15_reference_end_ _reference_start_Leviticus 9:9_reference_end_ _reference_start_Leviticus 16:18_reference_end_ Keyword: Associated Collocating Term: אֵת כָּל־הַדָּם שׁפך אֶל־יְסֹוד Gloss: pour out all the blood at the base (of the altar) References: _reference_start_Exodus 29:12_reference_end_ _reference_start_Leviticus 4:7_reference_end_ _reference_start_Leviticus 4:18_reference_end_ _reference_start_Leviticus 4:25_reference_end_ _reference_start_Leviticus 4:30_reference_end_ _reference_start_Leviticus 4:34_reference_end_ Keyword: Associated Collocating Term: אֶת־הַדָּם יצק אֶל־יְסֹוד Gloss: the blood he poured out at the base of (the altar) References: _reference_start_Leviticus 8:15_reference_end_ _reference_start_Leviticus 9:9_reference_end_ Keyword: Associated Collocating Term: זרק [אֶת־הַדָּם] עַל־הַמִּזְבֵּחַ סָבִיב Gloss: splash [the blood] on the altar all sides References: _reference_start_Exodus 29:16_reference_end_ _reference_start_Exodus 29:20_reference_end_ _reference_start_Leviticus 1:5_reference_end_ _reference_start_Leviticus 1:11_reference_end_ _reference_start_Leviticus 3:2_reference_end_ _reference_start_Leviticus 3:8_reference_end_ _reference_start_Leviticus 3:13_reference_end_ _reference_start_Leviticus 7:2_reference_end_ _reference_start_Leviticus 8:19_reference_end_ _reference_start_Leviticus 8:24_reference_end_ _reference_start_Leviticus 9:12_reference_end_ _reference_start_Leviticus 9:18_reference_end_ _reference_start_Numbers 18:17_reference_end_ Keyword: Identifying Collocating Term: הָעֹלָה Gloss: (the altar of) burnt offering References: _reference_start_Exodus 30:28_reference_end_ _reference_start_Exodus 31:9_reference_end_ _reference_start_Exodus 35:16_reference_end_ _reference_start_Exodus 38:1_reference_end_ _reference_start_Exodus 40:6_reference_end_ _reference_start_Exodus 40:10_reference_end_ _reference_start_Exodus 40:29_reference_end_ _reference_start_Leviticus 4:7_reference_end_ _reference_start_Leviticus 4:10_reference_end_ _reference_start_Leviticus 4:18_reference_end_ _reference_start_Leviticus 4:25_reference_end_ _reference_start_Leviticus 4:25_reference_end_ _reference_start_Leviticus 4:30_reference_end_ _reference_start_Leviticus 4:34_reference_end_ _reference_start_1 Chronicles 6:34_reference_end_ _reference_start_1 Chronicles 16:40_reference_end_ _reference_start_1 Chronicles 21:29_reference_end_ Keyword: Identifying Collocating Term: לִפְנֵי פֶּתַח מִשְׁכַּן אֹהֶל־מֹועֵד Gloss: before the opening of the dwelling of the tent of meeting References: _reference_start_Exodus 40:6_reference_end_ _reference_start_Exodus 40:29_reference_end_ _reference_start_Leviticus 4:18_reference_end_ Keyword: Identifying Collocating Term: הַנְּחֹשֶׁת Gloss: (the altar of) bronze References: _reference_start_Exodus 38:30_reference_end_ _reference_start_Exodus 39:39_reference_end_ _reference_start_2 Chronicles 1:5_reference_end_ _reference_start_2 Chronicles 1:6_reference_end_ Level 3: b Context: The altar of the LORD your God in the place that the LORD will choose Intrinsic Domains for Meaning:c Tabernacle or Temple worship Participant Roles for Meaning:c Location: headword = altar in the place YHWH will choose Meaning Comments:c The altar in the place that the LORD will choose foresees the time when the temple is built and the worship of God is centralised. Key Reference: _reference_start_Deuteronomy 12:27_reference_end_ Key Verse: |u26|u* ...you shall go to the place which the Lord will choose, |u27|u* and offer your burnt offerings, the flesh and the blood, on the |baltar|b* of the Lord your God; the blood of your sacrifices shall be poured out on the |baltar|b* of the Lord your God, but the flesh you may eat. (RSV) Evaluation of Translations: All of the translations consulted used 'altar' here. _reference_start_Deuteronomy 12:27_reference_end_ _reference_start_Deuteronomy 12:27_reference_end_ _reference_start_Deuteronomy 16:21_reference_end_ _reference_start_Deuteronomy 26:4_reference_end_ Keyword: Identifying Collocating Term: יְהוָה אֱלֹהֶיךָ Gloss: (the altar) of Yahweh your God References: _reference_start_Deuteronomy 12:27_reference_end_ _reference_start_Deuteronomy 12:27_reference_end_ _reference_start_Deuteronomy 16:21_reference_end_ _reference_start_Deuteronomy 26:4_reference_end_ Keyword: Associated Collocating Term: עשׂה עֹלֹת עַל־ Gloss: to make burnt offerings on (the altar) References: _reference_start_Deuteronomy 12:27_reference_end_ Keyword: Similar_Term Collocating Term: אֲשֵׁרָה Gloss: Asherah, sacred pole References: _reference_start_Deuteronomy 16:21_reference_end_ Keyword: Simila r_Term Collocating Term: מַצֵּבָה Gloss: sacred pillar References: _reference_start_Deuteronomy 16:21_reference_end_ Level 3: c Context: The altar made of bronze used for burnt offering in the temple built by Solomon Intrinsic Domains for Meaning:c Temple worship Participant Roles for Meaning:c Location: headword = altar in Solomon's Temple Key Reference: _reference_start_1 Kings 9:25_reference_end_ Key Verse: Three times a year, Solomon burned incense and offered sacrifices to the LORD on the |baltar|b* he had built. Solomon had now finished building the LORD's temple. (CEV) Evaluation of Translations: All translations consulted used 'altar' here. _reference_start_1 Kings 8:22_reference_end_ _reference_start_1 Kings 8:31_reference_end_ _reference_start_1 Kings 8:54_reference_end_ _reference_start_1 Kings 8:64_reference_end_ _reference_start_1 Kings 9:25_reference_end_ _reference_start_2 Kings 11:11_reference_end_ _reference_start_2 Kings 12:10_reference_end_ _reference_start_2 Kings 16:14_refere!nce_end_ _reference_start_2 Kings 16:15_reference_end_ _reference_start_2 Kings 18:22_reference_end_ _reference_start_2 Kings 23:9_reference_end_ _reference_start_2 Chronicles 4:1_reference_end_ _reference_start_2 Chronicles 5:12_reference_end_ _reference_start_2 Chronicles 6:12_reference_end_ _reference_start_2 Chronicles 6:22_reference_end_ _reference_start_2 Chronicles 7:7_reference_end_ _reference_start_2 Chronicles 7:9_reference_end_ _reference_start_2 Chronicles 8:12_reference_end_ _reference_start_2 Chronicles 15:8_reference_end_ _reference_start_2 Chronicles 23:10_reference_end_ _reference_start_2 Chronicles 29:18_reference_end_ _reference_start_2 Chronicles 29:19_reference_end_ _reference_start_2 Chronicles 29:21_reference_end_ _reference_start_2 Chronicles 29:22_reference_end_ _reference_start_2 Chronicles 29:22_reference_end_ _reference_start_2 Chronicles 29:22_reference_end_ _reference_start_2 Chronicles 29:24_reference_end_ _reference_start_2 Chronicles 29:27_reference_end_ _reference_start_2" Chronicles 32:12_reference_end_ _reference_start_2 Chronicles 33:16_reference_end_ _reference_start_2 Chronicles 35:16_reference_end_ _reference_start_Isaiah 36:7_reference_end_ _reference_start_Ezekiel 8:5_reference_end_ _reference_start_Ezekiel 8:16_reference_end_ _reference_start_Ezekiel 9:2_reference_end_ _reference_start_Zechariah 9:15_reference_end_ _reference_start_Zechariah 14:20_reference_end_ Keyword: Associated Collocating Term: עשׂה Gloss: to make (an altar) References: _reference_start_2 Chronicles 4:1_reference_end_ _reference_start_2 Chronicles 7:7_reference_end_ Keyword: Associated Collocating Term: בנה Gloss: to build (an altar) References: _reference_start_1 Kings 9:25_reference_end_ _reference_start_2 Chronicles 8:12_reference_end_ _reference_start_2 Chronicles 33:16_reference_end_ Keyword: Identifying Collocating Term: הַנְּחֹשֶׁת [נְחֹשֶׁת] Gloss: (the altar) of bronze [(an altar) of bronze] References: _reference_start_1 Kings 8:64_reference_end_ _reference#_start_2 Kings 16:14_reference_end_ _reference_start_2 Kings 16:15_reference_end_ _reference_start_2 Chronicles 4:1_reference_end_ _reference_start_2 Chronicles 7:7_reference_end_ _reference_start_Ezekiel 9:2_reference_end_ Keyword: Identifying Collocating Term: יְהוָה Gloss: (the altar) of Yahweh References: _reference_start_1 Kings 8:22_reference_end_ _reference_start_1 Kings 8:54_reference_end_ _reference_start_2 Kings 23:9_reference_end_ _reference_start_2 Chronicles 6:12_reference_end_ _reference_start_2 Chronicles 8:12_reference_end_ _reference_start_2 Chronicles 15:8_reference_end_ _reference_start_2 Chronicles 29:19_reference_end_ _reference_start_2 Chronicles 29:21_reference_end_ _reference_start_2 Chronicles 33:16_reference_end_ _reference_start_2 Chronicles 35:16_reference_end_ Keyword: Identifying Collocating Term: הָעֹולָה Gloss: (the altar) of burnt offering References: _reference_start_2 Chronicles 29:18_reference_end_ Keyword: Associated Collocating Term: עלה עֹלֹות $עַל־ (hiphil)* Gloss: to offer burnt offerings on (the altar) References: _reference_start_2 Chronicles 8:12_reference_end_ _reference_start_2 Chronicles 29:27_reference_end_ _reference_start_2 Chronicles 35:16_reference_end_ Level 3: d Context: The altar of burnt offering described in Ezekiel's vision of a new temple Intrinsic Domains for Meaning:c Temple worship (in the temple of Ezekiel's vision) Participant Roles for Meaning:c Location: headword = altar in temple of Ezekiel's vision Key Reference: _reference_start_Ezekiel 40:47_reference_end_ Key Verse: Now the man measured the inner courtyard; it was one hundred seventy feet square. I also saw an |baltar|b* in front of the temple. (CEV) Evaluation of Translations: All of the translation consulted use 'altar' here. _reference_start_Ezekiel 40:47_reference_end_ _reference_start_Ezekiel 41:22_reference_end_ _reference_start_Ezekiel 43:13_reference_end_ _reference_start_Ezekiel 43:13_reference_end_ _reference_start_Ezekiel 43:18_reference_end_ _refer%ence_start_Ezekiel 43:22_reference_end_ _reference_start_Ezekiel 43:26_reference_end_ _reference_start_Ezekiel 43:27_reference_end_ _reference_start_Ezekiel 45:19_reference_end_ _reference_start_Ezekiel 47:1_reference_end_ Keyword: Associated Collocating Term: עשׂה Gloss: to make (an altar) References: _reference_start_Ezekiel 43:18_reference_end_ Keyword: Associated Collocating Term: כפר אֵת־ (piel)‏* Gloss: to make atonement for (the altar) References: _reference_start_Ezekiel 43:26_reference_end_ Keyword: Associated Collocating Term: לְהַעֲלֹות עֹלֹות עַל־ Gloss: to offer burnt offerings on (the altar) References: _reference_start_Ezekiel 43:18_reference_end_ Keyword: Associated Collocating Term: זרק הַדָּם עַל־ Gloss: to splash blood against (the altar) References: _reference_start_Ezekiel 43:18_reference_end_ Keyword: Similar_Term Collocating Term: שֻׁלְחָן Gloss: table References: _reference_start_Ezekiel 41:22_reference_end_ Level 3: e Context: &The altar of burnt offering in the rebuilt temple, following the return from exile in Babylon Intrinsic Domains for Meaning:c Temple worship (in the rebuilt temple, following the return from exile) Participant Roles for Meaning:c Location: headword = altar in second Temple Key Reference: _reference_start_Ezra 3:2_reference_end_ Key Verse: Then Jeshua son of Jozadak and his fellow priests and Zerubbabel son of Shealtiel and his associates began to build the |baltar|b* of the God of Israel to sacrifice burnt offerings on it, in accordance with what is written in the Law of Moses the man of God. (NIV) Evaluation of Translations: All the translations consulted used 'altar' here. _reference_start_Ezra 3:2_reference_end_ _reference_start_Ezra 3:3_reference_end_ _reference_start_Nehemiah 10:35_reference_end_ _reference_start_Malachi 1:7_reference_end_ _reference_start_Malachi 1:10_reference_end_ _reference_start_Malachi 2:13_reference_end_ Keyword: Associated Collocating Term: בנה אֶת־ Gloss: to build (th'e altar) References: _reference_start_Ezra 3:2_reference_end_ Keyword: Associated Collocating Term: לְהַעֲלֹות עֹלֹות עַל־ Gloss: to offer burnt offerings on (the altar) References: _reference_start_Ezra 3:2_reference_end_ _reference_start_Ezra 3:3_reference_end_ Level 3: f Context: Altar is used in an expression that refers to priestly or Levitical activity, where the altar is the focus of offering sacrifices or incense, and of the care that such activity would entail Intrinsic Domains for Meaning:c Priesthood Participant Roles for Meaning:c Agent: human = priests or Levites Meaning Comments:c In these occurrences, 'altar' is used as a specific point of reference for an expression that is referring to a more general activity done by the priests or Levites. In some instances and languages, the translator may want to use an expression referring to the more general activity in focus. Key Reference: _reference_start_1 Samuel 2:28_reference_end_ Key Verse: Out of all the tribes of Israel, (I chose your family to be my priests. I wanted them to |boffer sacrifices|b* and burn incense to me... (CEV) Evaluation of Translations: The Hebrew says literally, 'go up to my altar'. Since the purpose of going up to the altar would be to offer sacrifices, CEV understands the phrase to be part-whole figure for 'to offer sacrifices'. Translation: The French common language translation (FCL) keeps the reference to altar but explains it: 'to go up to my altar' becomes 'to offer sacrifices on my altar'. _reference_start_Numbers 3:31_reference_end_ _reference_start_Numbers 18:5_reference_end_ _reference_start_Numbers 18:7_reference_end_ _reference_start_Deuteronomy 33:10_reference_end_ _reference_start_Joshua 9:27_reference_end_ _reference_start_1 Samuel 2:28_reference_end_ _reference_start_1 Samuel 2:33_reference_end_ _reference_start_Lamentations 2:7_reference_end_ _reference_start_Ezekiel 40:46_reference_end_ _reference_start_Joel 1:13_reference_end_ _reference_start_Joel 2:17_reference_end_ Keyword: Assoc)iated Collocating Term: מִשְׁמֶרֶת Gloss: Observance of (the altar) References: _reference_start_Numbers 3:31_reference_end_ _reference_start_Numbers 18:5_reference_end_ _reference_start_Ezekiel 40:46_reference_end_ Keyword: Associated Collocating Term: שׁמר [מִשְׁמֶרֶת] Gloss: to keep [the observance of] (the altar) References: _reference_start_Numbers 18:5_reference_end_ _reference_start_Numbers 18:7_reference_end_ _reference_start_Ezekiel 40:46_reference_end_ Level 3: g Context: Altar is used in an expression that refers to congregational worship, where the altar, or sacrifice done on the altar, is the focus of that worship Intrinsic Domains for Meaning:c Congregational Worship, Priesthood, Ritual Key Reference: _reference_start_Psalms 43:4_reference_end_ Key Verse: Then I will |bworship|b* at your |baltar|b* because you make me joyful. You are my God, and I will praise you. Yes, I will praise you as I play my harp. (CEV) Evaluation of Translations: Most translations translate t*he expression literally: 'I will go to the altar of God'. CEV explains the significance of the action of 'going to the altar of God' as 'I will worship at your altar'. _reference_start_Psalms 26:6_reference_end_ _reference_start_Psalms 43:4_reference_end_ _reference_start_Psalms 51:21_reference_end_ _reference_start_Psalms 84:4_reference_end_ _reference_start_Psalms 118:27_reference_end_ _reference_start_Isaiah 56:7_reference_end_ _reference_start_Isaiah 60:7_reference_end_ _reference_start_Amos 2:8_reference_end_ Keyword: Associated Collocating Term: עלה עַל־ Gloss: to offer burnt offering on (the altar) References: _reference_start_Psalms 51:21_reference_end_ _reference_start_Isaiah 60:7_reference_end_ Level 3: h Context: The altar of burnt offering in the tabernacle (and presumably the temple) functioned as a site of refuge from vengeance in cases of manslaughter Intrinsic Domains for Meaning:c Refuge, Justice Meaning Comments:c A man could not be killed while he grasped the altar. If the man wa+s innocent of premeditated murder he could be protected against vengeance slaying. If he was guilty of premeditated murder he would be taken away from the altar and executed. Exodus 21:14 sets down the law and presumably refers to any altar. 1 Kings 1:50,51,53;2:28,29 provides examples of specific instances where the altar of burnt offering in the Tabernacle was used as a place of refuge. In the case of Adonijah the altar is not specifically named. In the case of Joab, it is the altar in the Tabernacle (the tent of the LORD). So, it seems likely that Adonijah also fled to the altar in the tabernacle. Key Reference: _reference_start_Exodus 21:14_reference_end_ Key Verse: But when someone gets angry and deliberately kills someone else, he is to be put to death, even if he has run to my |baltar|b* for safety. (TEV) Evaluation of Translations: All the translations consulted use 'altar' here. _reference_start_Exodus 21:14_reference_end_ _reference_start_1 Kings 1:50_reference_end_ _reference_start_1 Kings 1:5,1_reference_end_ _reference_start_1 Kings 1:53_reference_end_ _reference_start_1 Kings 2:28_reference_end_ _reference_start_1 Kings 2:29_reference_end_ Keyword: Associated Collocating Term: חזק/אחז בְּקַרְנֹות (hiphil)* Gloss: to take hold of/seize the horns of (the altar) References: _reference_start_1 Kings 1:50_reference_end_ _reference_start_1 Kings 1:51_reference_end_ _reference_start_1 Kings 2:28_reference_end_ Level 2: 3 Meaning: Pagan altar, a platform for sacrifice and offering dedicated to the worship of a god other than the God of Israel Frame for Meaning: Sacrifice Intrinsic Domains for Meaning: Apostacy, Idolatry Grammar Notes: In most of the cases, when 'altar' is in the plural, pagan altars are referred to. On a few occasions 'altars' can refer to the two altars in the tabernacle or temple. Participant Roles for Meaning: Event: to sacrificeAgent: humanBeneficiary: pagan godsPatient: sacrifice or offeringLocation: headword Level 3: a Context: Altars used for worship of Canaa-nite or Aramaen deities Key Reference: _reference_start_Deuteronomy 12:3_reference_end_ Key Verse: |u2|u* In the land that you are taking, destroy all the places where the people worship their gods on high mountains, on hills, and under green trees. |u3|u* Tear down their |baltars|b* and smash their sacred stone pillars to pieces. Burn their symbols of the goddess Asherah and chop down their idols, so that they will never again be worshiped at those places. (TEV) Evaluation of Translations: All the translation consulted use 'altar' here. _reference_start_Exodus 32:5_reference_end_ _reference_start_Exodus 34:13_reference_end_ _reference_start_Numbers 23:1_reference_end_ _reference_start_Numbers 23:2_reference_end_ _reference_start_Numbers 23:4_reference_end_ _reference_start_Numbers 23:4_reference_end_ _reference_start_Numbers 23:14_reference_end_ _reference_start_Numbers 23:14_reference_end_ _reference_start_Numbers 23:29_reference_end_ _reference_start_Numbers 23:30_reference_end_ _reference_start_Deuter.onomy 7:5_reference_end_ _reference_start_Deuteronomy 12:3_reference_end_ _reference_start_Judges 2:2_reference_end_ _reference_start_Judges 6:25_reference_end_ _reference_start_Judges 6:28_reference_end_ _reference_start_Judges 6:30_reference_end_ _reference_start_Judges 6:31_reference_end_ _reference_start_Judges 6:32_reference_end_ _reference_start_1 Kings 12:32_reference_end_ _reference_start_1 Kings 12:33_reference_end_ _reference_start_1 Kings 12:33_reference_end_ _reference_start_1 Kings 13:1_reference_end_ _reference_start_1 Kings 13:3_reference_end_ _reference_start_1 Kings 13:4_reference_end_ _reference_start_1 Kings 13:5_reference_end_ _reference_start_1 Kings 13:5_reference_end_ _reference_start_1 Kings 16:32_reference_end_ _reference_start_1 Kings 18:26_reference_end_ _reference_start_2 Kings 11:18_reference_end_ _reference_start_2 Kings 11:18_reference_end_ _reference_start_2 Kings 11:18_reference_end_ _reference_start_2 Kings 16:10_reference_end_ _reference_start_2 Kings 16:10_reference_end/_ _reference_start_2 Kings 16:11_reference_end_ _reference_start_2 Kings 16:12_reference_end_ _reference_start_2 Kings 16:12_reference_end_ _reference_start_2 Kings 16:13_reference_end_ _reference_start_2 Kings 16:14_reference_end_ _reference_start_2 Kings 16:14_reference_end_ _reference_start_2 Kings 16:15_reference_end_ _reference_start_2 Kings 18:22_reference_end_ _reference_start_2 Kings 21:3_reference_end_ _reference_start_2 Kings 21:4_reference_end_ _reference_start_2 Kings 21:5_reference_end_ _reference_start_2 Kings 23:12_reference_end_ _reference_start_2 Kings 23:12_reference_end_ _reference_start_2 Kings 23:15_reference_end_ _reference_start_2 Kings 23:15_reference_end_ _reference_start_2 Kings 23:16_reference_end_ _reference_start_2 Kings 23:17_reference_end_ _reference_start_2 Kings 23:20_reference_end_ _reference_start_2 Chronicles 14:2_reference_end_ _reference_start_2 Chronicles 23:17_reference_end_ _reference_start_2 Chronicles 23:17_reference_end_ _reference_start_2 Chronicles 28:24_refer0ence_end_ _reference_start_2 Chronicles 30:14_reference_end_ _reference_start_2 Chronicles 31:1_reference_end_ _reference_start_2 Chronicles 32:12_reference_end_ _reference_start_2 Chronicles 33:3_reference_end_ _reference_start_2 Chronicles 33:4_reference_end_ _reference_start_2 Chronicles 33:5_reference_end_ _reference_start_2 Chronicles 33:15_reference_end_ _reference_start_2 Chronicles 34:4_reference_end_ _reference_start_2 Chronicles 34:5_reference_end_ _reference_start_2 Chronicles 34:5_reference_end_ _reference_start_2 Chronicles 34:7_reference_end_ _reference_start_Isaiah 17:8_reference_end_ _reference_start_Isaiah 27:9_reference_end_ _reference_start_Isaiah 36:7_reference_end_ _reference_start_Jeremiah 11:13_reference_end_ _reference_start_Jeremiah 11:13_reference_end_ _reference_start_Jeremiah 17:1_reference_end_ _reference_start_Jeremiah 17:2_reference_end_ _reference_start_Ezekiel 6:4_reference_end_ _reference_start_Ezekiel 6:5_reference_end_ _reference_start_Ezekiel 6:6_reference_end_ _refere1nce_start_Ezekiel 6:13_reference_end_ _reference_start_Hosea 8:11_reference_end_ _reference_start_Hosea 8:11_reference_end_ _reference_start_Hosea 10:1_reference_end_ _reference_start_Hosea 10:2_reference_end_ _reference_start_Hosea 10:8_reference_end_ _reference_start_Hosea 12:12_reference_end_ _reference_start_Amos 3:14_reference_end_ _reference_start_Amos 9:1_reference_end_ Keyword: Associated Collocating Term: בנה Gloss: to build (an altar) References: _reference_start_Exodus 32:5_reference_end_ _reference_start_Numbers 23:1_reference_end_ _reference_start_Numbers 23:14_reference_end_ _reference_start_Numbers 23:29_reference_end_ _reference_start_2 Kings 16:11_reference_end_ _reference_start_2 Kings 21:4_reference_end_ _reference_start_2 Kings 21:5_reference_end_ _reference_start_2 Chronicles 33:4_reference_end_ _reference_start_2 Chronicles 33:5_reference_end_ _reference_start_2 Chronicles 33:15_reference_end_ Keyword: Associated Collocating Term: עשׂה Gloss: to make (an altar) References: _re2ference_start_1 Kings 12:33_reference_end_ _reference_start_1 Kings 18:26_reference_end_ _reference_start_2 Kings 23:12_reference_end_ _reference_start_2 Chronicles 28:24_reference_end_ _reference_start_Isaiah 17:8_reference_end_ Keyword: Associated Collocating Term: קום (hiphil)* Gloss: to erect (an altar) References: _reference_start_1 Kings 16:32_reference_end_ _reference_start_2 Kings 21:3_reference_end_ _reference_start_2 Chronicles 33:3_reference_end_ Keyword: Associated Collocating Term: נתץ Gloss: to pull down (their altars) References: _reference_start_Exodus 34:13_reference_end_ _reference_start_Deuteronomy 7:5_reference_end_ _reference_start_Deuteronomy 12:3_reference_end_ _reference_start_Judges 2:2_reference_end_ _reference_start_Judges 6:28_reference_end_ _reference_start_Judges 6:30_reference_end_ _reference_start_Judges 6:31_reference_end_ _reference_start_Judges 6:32_reference_end_ _reference_start_2 Kings 11:18_reference_end_ _reference_start_2 Chronicles 31:1_reference_end_ _refer3ence_start_2 Chronicles 34:4_reference_end_ _reference_start_2 Chronicles 34:7_reference_end_ Keyword: Associated Collocating Term: הרס Gloss: to tear down (the altar) References: _reference_start_Judges 6:25_reference_end_ Keyword: Associated Collocating Term: סור (hiphil)* Gloss: to remove (their altars) References: _reference_start_2 Kings 18:22_reference_end_ _reference_start_2 Chronicles 14:2_reference_end_ _reference_start_2 Chronicles 30:14_reference_end_ _reference_start_2 Chronicles 32:12_reference_end_ _reference_start_2 Chronicles 33:15_reference_end_ _reference_start_Isaiah 36:7_reference_end_ Keyword: Identifying Collocating Term: הַבַּעַל Gloss: of Baal References: _reference_start_Judges 6:25_reference_end_ _reference_start_Judges 6:28_reference_end_ _reference_start_Judges 6:30_reference_end_ _reference_start_Judges 6:32_reference_end_ Keyword: Identifying Collocating Term: הַבְּעָלִים Gloss: of the Baals References: _reference_start_2 Chronicles 34:4_reference_end4_ Keyword: Identifying Collocating Term: לַבַּעַל Gloss: for Baal References: _reference_start_1 Kings 16:32_reference_end_ _reference_start_2 Kings 21:3_reference_end_ Keyword: Identifying Collocating Term: לַבְּעָלִים Gloss: for the Baals References: _reference_start_2 Chronicles 33:3_reference_end_ Keyword: Identifying Collocating Term: לְקַטֵּר לַבַּעַל Gloss: to make smoke to Baal References: _reference_start_Jeremiah 11:13_reference_end_ Keyword: Similar_Term Collocating Term: מַצֵּבָה Gloss: sacred pillar, memorial stone References: _reference_start_Exodus 34:13_reference_end_ _reference_start_Deuteronomy 7:5_reference_end_ _reference_start_Deuteronomy 12:3_reference_end_ _reference_start_2 Chronicles 14:2_reference_end_ _reference_start_2 Chronicles 31:1_reference_end_ Keyword: Similar_Term Collocating Term: אֲשֵׁרָה Gloss: sacred pole, Asherah References: _reference_start_Exodus 34:13_reference_end_ _reference_start_Deuteronomy 7:5_reference_end_5 _reference_start_Deuteronomy 12:3_reference_end_ _reference_start_Judges 6:25_reference_end_ _reference_start_Judges 6:28_reference_end_ _reference_start_Judges 6:30_reference_end_ _reference_start_1 Kings 16:32_reference_end_ _reference_start_2 Kings 21:3_reference_end_ _reference_start_2 Chronicles 14:2_reference_end_ _reference_start_2 Chronicles 31:1_reference_end_ _reference_start_2 Chronicles 33:3_reference_end_ _reference_start_2 Chronicles 34:4_reference_end_ _reference_start_2 Chronicles 34:7_reference_end_ _reference_start_Isaiah 17:8_reference_end_ _reference_start_Isaiah 27:9_reference_end_ _reference_start_Jeremiah 17:2_reference_end_ Keyword: Similar_Term Collocating Term: בָּמָה Gloss: high place, shrine References: _reference_start_1 Kings 12:32_reference_end_ _reference_start_2 Kings 18:22_reference_end_ _reference_start_2 Kings 21:3_reference_end_ _reference_start_2 Kings 23:15_reference_end_ _reference_start_2 Kings 23:15_reference_end_ _reference_start_2 Kings 23:20_reference_en6d_ _reference_start_2 Chronicles 14:2_reference_end_ _reference_start_2 Chronicles 31:1_reference_end_ _reference_start_2 Chronicles 32:12_reference_end_ _reference_start_2 Chronicles 33:3_reference_end_ _reference_start_Isaiah 36:7_reference_end_ _reference_start_Ezekiel 6:4_reference_end_ _reference_start_Ezekiel 6:6_reference_end_ Keyword: Similar_Term Collocating Term: חַמָּן Gloss: incense altaro* References: _reference_start_2 Chronicles 14:2_reference_end_ _reference_start_2 Chronicles 34:4_reference_end_ _reference_start_2 Chronicles 34:7_reference_end_ _reference_start_Isaiah 17:8_reference_end_ _reference_start_Isaiah 27:9_reference_end_ _reference_start_Ezekiel 6:4_reference_end_ _reference_start_Ezekiel 6:6_reference_end_ Keyword: Identifying Collocating Term: בְּבֵית־אֵל Gloss: in Bethel References: _reference_start_1 Kings 12:32_reference_end_ _reference_start_1 Kings 12:33_reference_end_ _reference_start_1 Kings 13:4_reference_end_ _reference_start_2 Kings 23:15_reference_e7nd_ Keyword: Identifying Collocating Term: בֵּית־אֵל Gloss: (the altar) of Bethel References: _reference_start_2 Kings 23:17_reference_end_ Keyword: Identifying Collocating Term: הַמִּזְבֵּחַ הַגָּדֹול Gloss: the great altar References: _reference_start_2 Kings 16:15_reference_end_ Keyword: Associated Collocating Term: עלה...פָּר וָאַיִל Gloss: to offer up...bull and ram References: _reference_start_Numbers 23:2_reference_end_ _reference_start_Numbers 23:4_reference_end_ _reference_start_Numbers 23:14_reference_end_ _reference_start_Numbers 23:30_reference_end_ Keyword: Associated Collocating Term: עלה עַל־ Gloss: to go to / to offer burnt offerings on References: _reference_start_1 Kings 12:32_reference_end_ _reference_start_1 Kings 12:33_reference_end_ _reference_start_1 Kings 12:33_reference_end_ _reference_start_2 Kings 16:12_reference_end_ Keyword: Associated Collocating Term: ‏ Gloss: to burn a whole offering on- References: _reference_start_1 Kin8gs 12:33_reference_end_ _reference_start_1 Kings 13:1_reference_end_ _reference_start_2 Kings 16:13_reference_end_ _reference_start_2 Kings 16:15_reference_end_ Keyword: Associated Collocating Term: קטר מִנחָה (hiphil)* Gloss: to burn a cereal offering References: _reference_start_2 Kings 16:13_reference_end_ _reference_start_2 Kings 16:15_reference_end_ Keyword: Associated Collocating Term: זרק הָדַּם עַל־ Gloss: to splash the blood on (the altar) References: _reference_start_2 Kings 16:13_reference_end_ _reference_start_2 Kings 16:15_reference_end_ Level 3: b Context: Figurative use: The altar at Bethel is personified as an agent of apostasy and worthy of judgment. Intrinsic Domains for Meaning:c Pagan ritual Key Reference: _reference_start_1 Kings 13:2_reference_end_ Key Verse: Suddenly one of God's prophets arrived from Judah and shouted: The Lord sent me with a message about this |baltar|b*. A child named Josiah will be born into David's family. He will sacrifice on this altar t9he priests who make offerings here, and human bones will be burned on it. (CEV) Evaluation of Translations: In the Hebrew the prophet adresses the altar: 'Altar! Altar!' and the rest of prophecy refers to the altar in the second person. Most of the translations translate the personification literally. However, in a language where the personification is unnatural or misunderstood, it would be possible to follow the CEV. It removes the personification and changes the reference from 2nd person to 3rd person. _reference_start_1 Kings 13:2_reference_end_ _reference_start_1 Kings 13:2_reference_end_ _reference_start_1 Kings 13:2_reference_end_ _reference_start_1 Kings 13:4_reference_end_ _reference_start_1 Kings 13:32_reference_end_ _reference_start_Amos 3:14_reference_end_ Keyword: Keyword: Associated Collocating Term: רבה ל־ (hiphil)* Gloss: to multiply (altars) References: _reference_start_Hosea 8:11_reference_end_ _reference_start_Hosea 10:1_reference_end_ Keyword: Associated Collocating Term: קרא :ַל־ Gloss: call out against (the altar) References: _reference_start_1 Kings 13:2_reference_end_ _reference_start_1 Kings 13:4_reference_end_ _reference_start_1 Kings 13:32_reference_end_ Keyword: Similar_Term Collocating Term: מַצֵּבָה Gloss: sacred pillar References: _reference_start_Hosea 10:1_reference_end_ _reference_start_Hosea 10:2_reference_end_ Keyword: Similar_Term Collocating Term: בָּמָה Gloss: high place, shrine References: _reference_start_Hosea 10:8_reference_end_ Keyword: Associated Collocating Term: פקד עַל־ Gloss: to bring punishment against (the altar) References: _reference_start_Amos 3:14_reference_end_ Keyword: Identifying Collocating Term: בֵּית־אֵל Gloss: (the altar) of Bethel References: _reference_start_Amos 3:14_reference_end_ Keyword: Similar_Term Collocating Term: בָּמָה Gloss: high place/shrine References: _reference_start_1 Kings 13:2_reference_end_ _reference_start_1 Kings 13:32_reference_end_ Level 2: 4 Meaning: Altar built as a memo;rial marker to the God of Israel, not as a platform for offering sacrifice. Frame for Meaning: Sacrifice Intrinsic Domains for Meaning: Memorial Meaning Comments: An altar is prototypically understood as a place of sacrifice. But it could also serve as a memorial marker. Such a function is implicit in many of the contexts for Meaning 1. The altars are built on locations of significant interaction with God, often there is no mention of sacrifice being made, and one of the functions may be to remind those who follow of what happened. Exodus 20:24 refers to the altar as a "place where I cause my name to be remembered" (RSV). But the only place where an altar's function as a memorial marker is asserted and distinguished from its function as a place of sacrifice is in Joshua 22. In this passage, it is clear that the function as a place of sacrifice is what comes to mind when the western tribes hear that the eastern tribes are building their own altar. But they accept the eastern tribes assertion that the altar< is only to serve as a memorial. Level 3: a Context: The Altar of Witness, built by the tribes east of the Jordan river (Rueben, Gad and the half-tribe of Manasseh) to remind the other tribes of they are a part of God's family Key Reference: _reference_start_Joshua 22:28_reference_end_ Key Verse: |u26|u* ‘So we said to each other, “Let us build this |baltar|b*, not for burnt offerings or other sacrifices |u27|u* but as a witness between us and you ...” (NJB) Evaluation of Translations: All the translations consulted use 'altar' here. _reference_start_Joshua 22:10_reference_end_ _reference_start_Joshua 22:10_reference_end_ _reference_start_Joshua 22:11_reference_end_ _reference_start_Joshua 22:16_reference_end_ _reference_start_Joshua 22:19_reference_end_ _reference_start_Joshua 22:23_reference_end_ _reference_start_Joshua 22:26_reference_end_ _reference_start_Joshua 22:29_reference_end_ _reference_start_Joshua 22:34_reference_end_ Keyword: Associated Collocating Term: בנה Gloss: to build (an alta=r) References: _reference_start_Joshua 22:10_reference_end_ _reference_start_Joshua 22:11_reference_end_ _reference_start_Joshua 22:16_reference_end_ _reference_start_Joshua 22:19_reference_end_ _reference_start_Joshua 22:23_reference_end_ _reference_start_Joshua 22:26_reference_end_ _reference_start_Joshua 22:29_reference_end_ Keyword: Associated Collocating Term: מרד בַּיהוָה Gloss: to rebel against Yahwehq* References: _reference_start_Joshua 22:16_reference_end_ _reference_start_Joshua 22:19_reference_end_ _reference_start_Joshua 22:23_reference_end_ _reference_start_Joshua 22:29_reference_end_ Keyword: Associated Collocating Term: שׁוב מֵאַחֲרֵי יְהוָה Gloss: to turn away from Yahwehq* References: _reference_start_Joshua 22:16_reference_end_ _reference_start_Joshua 22:23_reference_end_ _reference_start_Joshua 22:29_reference_end_ Keyword: Identifying Collocating Term: לְעֹלָה Gloss: for burnt offering References: _reference_start_Joshua 22:23_reference_end_ _refer>ence_start_Joshua 22:26_reference_end_ _reference_start_Joshua 22:29_reference_end_ Keyword: Identifying Collocating Term: לְמִנְחָה Gloss: for cereal offering References: _reference_start_Joshua 22:23_reference_end_ _reference_start_Joshua 22:29_reference_end_ Keyword: Identifying Collocating Term: לְזָבַח Gloss: for sacrifices References: _reference_start_Joshua 22:26_reference_end_ _reference_start_Joshua 22:29_reference_end_ Keyword: Identifying Collocating Term: לַעֲשֹׂות זִבְחֵי שְׁלָמִים Gloss: for making sacrifices of peacemaking References: _reference_start_Joshua 22:23_reference_end_ Level 2: 5 Meaning: Incense burner, or altar of incense, a raised structure used by the High Priest for burning incense to establish holiness within the sanctuary Frame for Meaning: Sacrifice Intrinsic Domains for Meaning: Ritual Purification, Tabernacle, Temple, Holiness Participant Roles for Meaning: Event =to burn incenseAgent =High PriestPatient =incenseBeneficiary =High ?PriestLocation =headword Meaning Comments: No sacrifice is done on the altar of incense. It is probably referred to as an altar because the burning of incense and the going up of its smoke is comparable to the burning of a sacrifice and the going up of its smoke. In addition it is comparable in shape, being square in its cross-section with upturned corners, called horns. It is likely that the burning of incense was viewed as analogous to the burning of a sacrifice.The actual function of the incense burned on the altar is not clearly described. In Exodus 30:7,8, the high priest is to offer incense on the altar when he goes into the sanctuary every morning and evening to take care of the lamps. In Leviticus 16:12-13, when the high priest enters the sanctuary to sprinkle blood on the covenant box, he is to bring in coals and incense, and burn the incense on the fire (the word 'altar' is not actually used in this instance). 'The smoke of the incense will conceal the atonement cover above the Testimony, so tha@t he will not die' (Lev 16:13, NIV). Nielsen comments 'This incense cloud provides the high priest with cover against the divine wrath or the divine “radiation.” The incense smoke gives protection.'r* Another way to put this is to say that the incense smoke establishes holiness. Level 3: a Context: The portable incense burner, or altar of incense, made of acacia wood overlaid with gold, located in the sanctuary, or holy place, of the tabernacle, before the Ark of the Covenant Intrinsic Domains for Meaning:c Tabernacle, Sanctuary, High Priesthood Participant Roles for Meaning:c Location: headword = altar in the Tabernacle Key Reference: _reference_start_Exodus 37:25_reference_end_ Key Verse: He made an |baltar|b* out of acacia wood, for burning incense. It was square, 18 inches long and 18 inches wide, and it was 36 inches high. Its projections at the four corners formed one piece with it. (TEV) Evaluation of Translations: All the translations consulted use 'altar' here. They vary slightly in whether tAhey modify it as an 'incense altar' (NJV), an 'altar of incense' (RSV, NIV, REB), or an 'altar...for burning incense' (TEV, CEV). _reference_start_Exodus 28:43_reference_end_ _reference_start_Exodus 30:1_reference_end_ _reference_start_Exodus 30:27_reference_end_ _reference_start_Exodus 31:8_reference_end_ _reference_start_Exodus 35:15_reference_end_ _reference_start_Exodus 37:25_reference_end_ _reference_start_Exodus 39:38_reference_end_ _reference_start_Exodus 40:5_reference_end_ _reference_start_Exodus 40:26_reference_end_ _reference_start_Leviticus 4:7_reference_end_ _reference_start_Leviticus 4:18_reference_end_ _reference_start_Numbers 4:11_reference_end_ _reference_start_1 Chronicles 6:34_reference_end_ Keyword: Associated Collocating Term: עשׂה Gloss: to make (an altar) References: _reference_start_Exodus 30:1_reference_end_ _reference_start_Exodus 35:15_reference_end_ _reference_start_Exodus 37:25_reference_end_ Keyword: Identifying Collocating Term: מִקְטַר קְטֹרֶת Gloss: a burBning place of incense References: _reference_start_Exodus 30:1_reference_end_ Keyword: Identifying Collocating Term: הַקְּטֹרֶת Gloss: (the altar) of incense References: _reference_start_Exodus 30:27_reference_end_ _reference_start_Exodus 31:8_reference_end_ _reference_start_Exodus 35:15_reference_end_ _reference_start_Exodus 37:25_reference_end_ _reference_start_1 Chronicles 6:34_reference_end_ Keyword: Identifying Collocating Term: לִקְטֹרֶת Gloss: (altar) for incense References: _reference_start_Exodus 40:5_reference_end_ Keyword: Identifying Collocating Term: קְטֹרֶת הַסַּמִּים Gloss: (the altar) of incense of perfumes References: _reference_start_Leviticus 4:7_reference_end_ Keyword: Identifying Collocating Term: הַזָּהָב Gloss: (the altar) of gold References: _reference_start_Exodus 39:38_reference_end_ _reference_start_Exodus 40:5_reference_end_ _reference_start_Exodus 40:26_reference_end_ _reference_start_Numbers 4:11_reference_end_ Keyword: Identifying CCollocating Term: בְּאֹהֶל מֹועֵד Gloss: in the tent of meeting References: _reference_start_Exodus 40:26_reference_end_ _reference_start_Leviticus 4:7_reference_end_ _reference_start_Leviticus 4:18_reference_end_ Keyword: Identifying Collocating Term: לִפְנֵי אֲרֹון הָעֵדֻת Gloss: before the Ark of the Testimony References: _reference_start_Exodus 40:5_reference_end_ Keyword: Identifying Collocating Term: לִפְנֵי יְהוָה Gloss: before Yahweh References: _reference_start_Leviticus 4:7_reference_end_ _reference_start_Leviticus 4:18_reference_end_ Level 3: b Context: The incense burner, or altar of incense, in the temple, made for Solomon of cedar wood overlaid with gold Intrinsic Domains for Meaning:c Temple, Sanctuary, High Priesthood Participant Roles for Meaning:c Location: headword = altar of incense in Solomon's temple Key Reference: _reference_start_1 Kings 6:22_reference_end_ Key Verse: The whole interior of the Temple was covered with gold, as well as tDhe |baltar|b* in the Most Holy Place. (TEV) Evaluation of Translations: All the translations consulted use 'altar' here. However, it is clearly the incense burner that is being referred to. To avoid confusion it would not be inaccurate to designate this altar as 'the altar of incense'. Translation: The French |iBible du Semeur|i* translates simply 'altar', but has a footnote: This is the altar of incense (7.48; Ex 30.1,6; 37.25–28; He 9.3–4). _reference_start_1 Kings 6:20_reference_end_ _reference_start_1 Kings 6:22_reference_end_ _reference_start_1 Kings 7:48_reference_end_ _reference_start_1 Chronicles 28:18_reference_end_ _reference_start_2 Chronicles 4:19_reference_end_ _reference_start_2 Chronicles 26:16_reference_end_ _reference_start_2 Chronicles 26:19_reference_end_ _reference_start_Isaiah 6:6_reference_end_ Keyword: Associated Collocating Term: עשׂה Gloss: to make (an altar) References: _reference_start_1 Kings 7:48_reference_end_ _reference_start_2 Chronicles 4:19_reference_end_ KeywoErd: Identifying Collocating Term: הַקְּטֹרֶת Gloss: (the altar) of incense References: _reference_start_1 Chronicles 28:18_reference_end_ _reference_start_2 Chronicles 26:16_reference_end_ _reference_start_2 Chronicles 26:19_reference_end_ Keyword: Identifying Collocating Term: הַזָּהָב Gloss: (the altar) of gold References: _reference_start_1 Kings 7:48_reference_end_ _reference_start_2 Chronicles 4:19_reference_end_ Note: (a) In these two occurrences in 1 Kings 19, Elijah may be referring to the altar on Mt. Carmel. The same verb for "torn down" is used in 18:30 and in 19:10, 14. But the word is in the plural and would seem to refer to altars throughout the northern kingdom, like that on Mt. Carmel, that were alternatives to the state Baal worship promoted by Ahab and Jezebel. In seeking to stamp out the worship of the LORD, they must have systematically torn down altars dedicated to his worship. Note: (b) Isaiah provides no information about who will build this altar. Yet it would seeFm to follow the patriarchal pattern of building an altar to commemorate significant interaction with God. It serves as both a memorial and as a place of sacrifice. Note: (c) Elijah accuses the Israelites of three things: abandoning the covenant, tearing down the altars, murdering the prophets. In this case 'altar' may be a figure of speech to refer to temple worship and the sacrificial system, just as 'covenant' might refer to OT instruction, and 'prophet' to religious leadership. Note: (d) In 1 Kings 3:4 it sounds like Solomon is offering sacrifices at a Canaanite shrine in Gibeon. 2 Chronicles 1:3-5 clarifies that by saying that the tabernacle was located at Gibeon at this time and that Solomon offered his sacrifices on the bronze altar in front of the tent of the LORD's presence. Note: (e) 1 Kings does not actually record the building of the bronze altar of burnt offering for the temple. In the context of 1 Kings, the altar in this verse could be understood to be the bronze altar of the tabernacle. ButG the parallel passage in 2 Chronicles 4:1 (compare 1Ki 7:23) indicates that Solomon had a new altar built for the temple. It does not go into much detail but it was significantly larger than the portable bronze altar in the tabernacle. Note: (f) Ezekiel compares a wooden table found in the temple to an altar. The point of comparison is not clear. It is most likely its shape since he describes the table as having the appearance of a wooden altar. But it could be its position in the temple, or it could be its function of standing before the Lord. It is not likely that it was meant to be used as an altar of incense or of burnt offering because the wood would not withstand the fire without metal overlay. Note: (g) Amos may be referring to pagan altars here. But the context seems to refer to perversion of proper religion rather than to apostasy. If this is perversion of religion than these altars would seem to refer to altars of Yahweh that were still acceptable places of worship in the northern kingdom. Note:H (h) The incident of the golden calf may be a bit early in the history of Israel to be attributed to Canaanite religious practices. But Jeroboam is portrayed as having patterned his official cult after the golden calf, and it seems likely that his cult was patterned after Canaanite practice. Baal was frequently pictured as a bull. Note: (i) Numbers 23 tells the story of Balak enlisting Balaam to curse the Israelites. God responds to Balaam and speaks through Balaam. So, one could question whether it is appropriate to group these occurrences under pagan altars. But Balak didn't associate Balaam with the God of the Israelites, nor does Balaam try to correct Balak. God used Balaam in spite of his adherence to pagan practices. Note: (j) Baal worship was a specific manifestation of Canaanite worship centered around an important god in the Canaanite pantheon. In some cases, especially when used in the plural 'the Baals', Baal may be used as a specific for general reference to Canaanite gods. On the other hand, Igeneral references to Canaanite altars may refer to Baal worship, especially when in conjunction with references to Asherah. Note: (k) Jeroboam set up shrines with calf idols at Dan and Bethel to try to draw his people away from worship in Jerusalem. The calf idol and Jeroboam's words echo those of Aaron in Exo 32:4. Apparently the altar at the shrine of Bethel became a significant focus of worship for Jeroboam's state religion. Jeroboam may have tried to claim that it was Yahwistic worship. But that claim was rejected by prophets who would condemn the practice. Note: (l) See the parallel passages in 2 Chronicles 32:12 and Isaiah 36:7 The Rabshakeh (the spokesman for the Assyrian king) is making an ironic reference to the Canaanite altars that Hezekiah had torn down. Hezekiah was trying to centralize worship in Jerusalem and eliminate worship that combined elements of Canaanite and Israelite worship. There was opposition to Hezekiah was doing and the Rabshakeh is trying to capitalize on that opposition. CJompare 2 Kings 21:3. Note: (m) Context indicates that this is probably the altar in the temple at Bethel. Amos addressed his prophecy to the northern kingdom and mentions the altar at Bethel in prior passages. TEV inserts the word 'the Temple' to help the reader identify that when God 'strikes the tops of the columns' Amos is referring to the columns in the Temple. But it leads to confusion with the Temple in Jerusalem. CEV translates 'the temple altar' but footnotes it with 'The one at Bethel'. De Waard and Smalley (A TRANSLATOR'S HANDBOOK on The Book of Amos, New York, UBS1979, electronic) also identify this with the altar in the temple in Bethel. Note: (n) See the preceding verse. Note: (o) This particular term always seems to refer to a Canaanite incense altar, never to the altar of incense in the Tabernacle or the Temple. Note: (p) See verse 4. Note: (q) This is what the other tribes accused them of doing by building the altar, and what the two and a half tribes denied that they were doing. Note: (r) Kjeld Nielsen, "Incense" ABD, electronic version, 1992. Note: (s) The altar in this verse is not described. But since the clothing is made for Aaron and his sons and the altar is located within the tent of meeting or the sanctuary, it is probably referring to the altar of incense. Note: (t) See 35:10 Note: (u) Isaiah doesn't specify which altar the coal was taken from. But Young notes: 'The ricPah* was a stone on which the incense was placed and burned, and hence it would seem that the scene reflects upon the altar of incense rather than that of burnt offering, inasmuch as it is difficult to account for the presence of the stone upon the latter.' Edward J. Young, The Book of Isaiah, Grand Rapids, Mich.: Eerdmans, 1965. Version: 0 Date: 2007-07-16 18:33:21 paul Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org. ?tfXJ<. xj\N@2$|n`RD6( ex dx  cx  bx  ax  `x  _x # ^x # ]x  \x [x Zx  Yx  Xx  Wx Vx  Ux  Tx  Sx  Rx  Qx Px Ox# Nx# Mx  Lx  Kx  Jx  Ix  Hx  Gx  Fx # Ex # Dx  Cx Bx Ax @x ?x >x# =x <x ;x  :x  9x  8x 7x 6x  5x  4x  3x  2x  1x  0x  /x # .x  -x  ,x  +x  *x  )x  (x # 'x # ?tfXJ<. xj\N@2$|n`RD6( $x #x "x !x, x& x% x% x% x$ x x x x x x x x x x x x x x x( x x x x x x x x x x x x x x ~x }x |x {x zx yx  xx  wx vx ux  tx  sx  rx  qx px ox nx mx lx  kx  jx# ix# hx  gx  fx  ?tfXJ<. xj\N@2$|n`RD6( cx bx ax `x _x ^x ]x \x [x Zx# Yx" Xx" Wx Vx Ux Tx Sx Rx Qx Px Ox Nx Mx Lx Kx Jx Ix Hx Gx Fx Ex Dx Cx Bx Ax @x ?x >x =x <x ;x :x 9x 8x 7x 6x(! 5x( 4x( 3x( 2x( 1x( 0x( /x( .x( -x'' ,x& +x& *x& )x& (x& 'x& &x# %x ?tfXJ<. xj\N@2$|n`RD6( "x ( !x " x  x x x x x x x x xX xT x x x x x x x x x x x x x x x! x x x x x x x x  ~x  }x  |x  {x  zx yx xx wx vx ux  tx  sx rx qx px ox nx mx lx kx jx ix hx gx fx ex dx ?tfXJ<. xj\N@2$|n`RD6( ax `x _x " ^x  ]x \x [x Zx  Yx  Xx Wx Vx Ux Tx Sx Rx Qx Px# Ox Nx Mx Lx Kx Jx Ix Hx Gx Fx Ex Dx Cx Bx Ax @x! ?x >x =x <x% ;x$ :x( 9x% 8x 7x 6x 5x( 4x 3x, 2x% 1x$ 0xX /xT .x -x ,x +x( *x )x$ (x 'x& &x %x $x #x  ?tfXJ<. xj\N@2$|n`RD6( x  x x x  x x x  x  x x x  x  x  x x x'' x& x x( x( x  x ( x " x" x x x x x x x( x( x( x& ~x# }x |x {x zx  yx xx wx vx ux tx sx rx qx px ox nx mx lx" kx jx ix hx gx fx ex dx cx" bx ?tfXJ<. xj\N@2$|n`RD6( _x(/ ^x# ]x \x [x Zx# Yx! Xx Wx Vx Ux Tx Sx  Rx 6 Qx  Px  Ox Nx Mx  Lx  Kx @ Jx! Ix Hx  Gx Fx Ex& Dx&  Cx  Bx Ax @x$ ?x# >x! =x <x ;x :x 9x 8x 7x 6x 5x 4x 3x 2x 1x 0x /x .x -x ,x +x  *x  )x  (x  'x &x %x  $x @ #x 6 "x  !x  ?tfXJ<. xj\N@2$|n`RD6( x 3 x 2 x  x  x 5 x 3 x 2 x x x< x3 x x< x8 xv xT x3 x+ x x+ x(. x x x(. x x x x x(. x x ! x  ~x  }x! |x {x zx yx  xx wx vx ux' tx' sx' rx # qx px ox nx) mx+ lx+ kx+ jx+ ix/ hx- gx+ fx+ ex+ dx+ cx+ bx+ ax) `x(/ ?tfXJ<. xj\N@2$|n`RD6( ]x! \x! [x! Zx Yx Xx Wx Vx Ux Tx Sx  Rx  Qx  Px  Ox  Nx  Mx  Lx  Kx  Jx  Ix  Hx  Gx  Fx  Ex  Dx  Cx  Bx  Ax  @x  ?x  >x  =x  <x  ;x  :x  9x  8x  7x  6x  5x ! 4x ! 3x 2x 1x 0x /x .x -x ,x  +x *x )x (x 'x &x %x $x #x "x" !x  x  x  ?tfXJ<. xj\N@2$|n`RD6( x x x$ x! x x x x  x x" x" x x  x x x x x x  x x" x! x  x  x x x  x  x ! x! ~x! }x! |x  {x  zx  yx xx wx vx  ux  tx sx rx  qx  px  ox nx mx lx kx jx ix hx gx fx ex$ dx cx bx" ax" `x" _x" ^x! ?tfXJ<. xj\N@2$|n`RD6( [x ! Zx  Yx ! Xx ! Wx Vx Ux Tx Sx Rx  Qx  Px  Ox  Nx ! Mx Lx Kx Jx Ix Hx" Gx" Fx Ex Dx Cx$ Bx! Ax @x ?x >x  =x  <x  ;x  :x  9x 8x 7x 6x 5x" 4x" 3x! 2x 1x 0x  /x  .x -x ,x +x  *x )x" (x 'x &x  %x $x" #x "x! !x  x  x" x x ?tfXJ<. xj\N@2$|n`RD6( x x x x+ x% x x x x x x x x x x x x x x x x x x x x x x x" ~x }x |x {x zx yx xx wx vx ux tx  sx rx qx  px  ox  nx mx  lx  kx  jx ix hx gx  fx  ex  dx  cx  bx  ax  `x  _x  ^x  ]x  \x  ?tfXJ<. xj\N@2$|n`RD6( Yy  Xy Wy Vyk Uy Ty Sy  Ry Qy Py Oy Ny  My Ly  Ky Jy Iy Hx Gx 0 Fx Ex Dx  Cx Bx 0 Ax @x ?x >x =x  <x 0 ;x  :x  9x  8x 7x 6x( 5x 4x 3x( 2x 1x( 0x( /x'& .x -x( ,x " +x% *x# )x (x 'x &x% %x# $x #x " "x !x x x( x( x'& x% x#Ynonymous. 2. The אֱוִיל is a person who is foolish, despises wisdom and even enjoys bad things.3. The word can function both as a noun and as an adjective.4. For the difference with כְּסִיל, see that entry (Comments for Hebraists). Hebraists' Comments: If we do not count 2 Ki 24:15 (preferring the |iQere |i*אֵילֵי over the Ketib אֱוִלֵי, this word has 26 occurrences in the OT. Additionally it occurs 4x in Ben Sira. See: Fox M.V. 1997 "Words for Folly" |iZeitschrift für Althebraistik |i*10:4-15; Bruce Waltke, |iProverbs |i*(NICOT), section (3), 'Two Words for Fool'.For the difference between כְּסִיל 'complacent fool' and אֱוִיל, see the Comments for Hebraists under כְּסִיל. Comparison of Meanings and Uses: 1. Frame: Folly; Experiencer: human 1.a. adjective 1.b. noun Domain and Frame Notes: One would think that terms in the Folly frame would typically negate terms of the Wisdom frame, but there are two indications that this is not the case. First, folly teZrms cannot be mapped as standard negative counterparts of wisdom terms, like 'wise - unwise', 'intelligent - unintelligent' etc. So, it is not the case that e.g. אִוֶּלֶת 'foolishness' would be the standard antonym of חָכְמָה 'wisdom', סִכְלוּת 'folly' the antonym of עָרְמָה 'cunning, astuteness' etc. The Folly frame is mapped along lines that seem to be independent of those in the Wisdom frame. (However, in the book of Proverbs חָכָם 'wisdom' is so often contrasted to כְּסִיל 'complacent fool' that THAT II, 838 speaks of an antitype.)Second, - in fact an illustration of the first point - whereas the Wisdom frame contains a series of nouns that are connected with verbs (e.g. חָכְמָה 'wisdom' with חכם 'to be wise', עָרְמָה 'astuteness' with ערם 'to be cunning, astute' etc.), the Folly frame possesses a series of adjectives and nouns but often lacks corresponding verbs. Level 2: 1 Meaning: Stupid and insensitive to a negative outcome of one's wor[ds or actions, to the extent of rejecting correction or reconciliation Frame for Meaning: Folly Participant Roles for Meaning: Experiencer: human Level 3: a Context: Stupid and insensitive to a negative outcome of one's words or actions, to the extent of rejecting correction or reconciliation Intrinsic Domains for Meaning:c Justice; Impiety; Prophecy Participant Roles for Meaning:c Experiencer: human Key Reference: _reference_start_Proverbs 29:9_reference_end_ Key Verse: KTBH - If a wise man goes to law with an |bidiot|b*, he will meet with unceasing abuse and derision. Evaluation of Translations: Although most English versions have rendered אֱוִיל as 'fool', this verse illustrates that it is not really an adequate term. The notion of 'moral corruption' is not expressed, and besides, English versions render many different Hebrew terms with 'fool', which blurs the characteristics of the Hebrew words. Fox suggests 'knave' but that is an old-fashioned word. 'Idiot' too is not ideal, but we emply it her\e to draw attention to the translation problem. Hopefully, in other languages words for a 'morally corrupt person' will be available, that are still in use. _reference_start_Proverbs 29:9_reference_end_ _reference_start_Jeremiah 4:22_reference_end_ _reference_start_Hosea 9:7_reference_end_ Keyword: Similar_Term Collocating Term: סָכָל Gloss: foolish References: _reference_start_Jeremiah 4:22_reference_end_ Keyword: Similar_Term Collocating Term: שׁגע Gloss: to be mad (Pual) References: _reference_start_Hosea 9:7_reference_end_ Keyword: Opposite_Term Collocating Term: בין Gloss: discerning (Niphal) References: _reference_start_Jeremiah 4:22_reference_end_ Keyword: Opposite_Term Collocating Term: חָכָם Gloss: wise References: _reference_start_Proverbs 29:9_reference_end_ _reference_start_Jeremiah 4:22_reference_end_ Level 3: b Context: A person who is stupid and insensitive to a negative outcome of his words or actions, to the extent of rejecting correction or reconciliation Intrinsic Domai]ns for Meaning:c Anger; Prosperity; Failure; Destruction; Instruction; Punishment; Communication; Reconciliation; Quarrel; Authority; Impiety Participant Roles for Meaning:c Experiencer: human Key Reference: _reference_start_Proverbs 14:9_reference_end_ Key Verse: KTBH - |bIdiots|b* are too arrogant to make amends; the upright know what reconciliation requires. Evaluation of Translations: Although most English versions have rendered אֱוִיל as 'fool', this verse illustrates that it is not really an adequate term. The notion of 'moral corruption' is not expressed, and besides, English versions render many different Hebrew terms with 'fool', which blurs the characteristics of the Hebrew words. Fox suggests 'knave' but that is an old-fashioned word. 'Idiot' too is not ideal, but we emply it here to draw attention to the translation problem. Hopefully, in other languages words for a 'morally corrupt person' will be available, that are still in use. _reference_start_2 Kings 24:15_reference_end_ _reference^_start_Job 5:2_reference_end_ _reference_start_Job 5:3_reference_end_ _reference_start_Psalms 107:17_reference_end_ _reference_start_Proverbs 1:7_reference_end_ _reference_start_Proverbs 7:22_reference_end_ _reference_start_Proverbs 10:8_reference_end_ _reference_start_Proverbs 10:10_reference_end_ _reference_start_Proverbs 10:14_reference_end_ _reference_start_Proverbs 10:21_reference_end_ _reference_start_Proverbs 11:29_reference_end_ _reference_start_Proverbs 12:15_reference_end_ _reference_start_Proverbs 12:16_reference_end_ _reference_start_Proverbs 14:3_reference_end_ _reference_start_Proverbs 14:9_reference_end_ _reference_start_Proverbs 15:5_reference_end_ _reference_start_Proverbs 16:22_reference_end_ _reference_start_Proverbs 17:28_reference_end_ _reference_start_Proverbs 20:3_reference_end_ _reference_start_Proverbs 24:7_reference_end_ _reference_start_Proverbs 27:3_reference_end_ _reference_start_Proverbs 27:22_reference_end_ _reference_start_Isaiah 19:11_reference_end_ _reference_start_Isaiah_ 35:8_reference_end_ Keyword: Similar_Term Collocating Term: בער Gloss: to be ignorant References: _reference_start_Isaiah 19:11_reference_end_ Keyword: Similar_Term Collocating Term: פתה Gloss: to be simple References: _reference_start_Job 5:2_reference_end_ Keyword: Opposite_Term Collocating Term: בין Gloss: discerning (Niphal) References: _reference_start_Proverbs 17:28_reference_end_ Keyword: Opposite_Term Collocating Term: חָכָם Gloss: wise References: _reference_start_Proverbs 1:7_reference_end_ _reference_start_Proverbs 10:8_reference_end_ _reference_start_Proverbs 10:14_reference_end_ _reference_start_Proverbs 11:29_reference_end_ _reference_start_Proverbs 12:15_reference_end_ _reference_start_Proverbs 14:3_reference_end_ _reference_start_Proverbs 17:28_reference_end_ _reference_start_Isaiah 19:11_reference_end_ Keyword: Opposite_Term Collocating Term: יָשָׁר Gloss: upright References: _reference_start_Proverbs 14:9_reference_end_ Keyword: Opposite_Term Collocating Term: ערם Gloss: to be cunning/astute References: _reference_start_Proverbs 15:5_reference_end_ Keyword: Opposite_Term Collocating Term: עָרוּם Gloss: astute References: _reference_start_Proverbs 12:16_reference_end_ Keyword: Opposite_Term Collocating Term: צַדִּיק Gloss: righteous References: _reference_start_Proverbs 10:21_reference_end_ Note: (a) Clearly the Qere has to be followed here. Next to the royal family and the craftsmen, the אֵילֵי הָאָרֶץ *'elite of the land' (|iQere|i*) were sent into captivity, not the אֱוִלֵי הָאָרֶץ* 'fools of the land' (|iKetib|i*), the latter apparently reflecting a scribal error. Note: (b) RSV and REB have adopted a different text, with an appeal to the Septuagint: 'and he who boldly rebukes promotes peace'. Version: 0 Date: 2008-01-31 14:02:09 tvdl Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org. #zOO;zperverse folly (אִוֶּלֶת)perverse folly (אִוֶּלֶת)Strong's number: 200 Part of speech: ncf Frequency: 25 Cognate(s): אול Abstract for Busy Translators: 1.bDyaaWyfool, foolish person, idiot (אֱוִיל)fool, foolish person, idiot (אֱוִיל)Strong's number: 191 Variant Spelling(s): אֱוִל Part of speech: ncm Frequency: 26 Cognate(s): אול Abstract for Busy Translators: 1. Hebrew words for different types of fools (including בער, כְּסִיל, נָבָל ,סכל, פֶּתִי) are not syX ?tfXJ<. xj\N@2$|n`RD6( z& z z z& zE z z z z z z z z z z z z z z z z z z z z z  ~z  }z |zE {z& zz yy  xy  wy vy uy ty sy ry  qy  py  oy  ny my ly ky jy# iy hy gy fy ey dy cy by ay `y _y  ^y  ]y  \y  [y  Zy c The אֱוִיל is a foolish person who, as a result of moral corruption, refuses to make the right moral choices. 2. The moral corruption of אֱוִיל and אִוֶּלֶת is shown by the frequent contrast with words like 'upright' and 'righteous'. 3. The אֱוִיל does not bother to contain his anger or other unproductive emotions. Hebraists' Comments: This word occurs also 5x in Ben Sira.Reference: Fox M.V. 1997 "Words for Folly" |iZeitschrift für Althebraistik |i*10:4-15. Variant Spelling(s):int Several Hebrew terms relating to folly are too often rendered as 'fool', 'folly' in English versions. However, a closer look reveals that these terms (including בער, כְּסִיל, נָבָל ,סכל, פֶּתִי) are not synonymous. Fox defines אֱוִיל, for example, as 'moral corruption from the standpoint of its impact on judgement and reason'. Accordingly, the אֱוִיל is a person who, as a result of moral corruption, refuses to make the right moral choices. It is thus for good reasond that אֱוִיל and אִוֶּלֶת are often contrasted with words like 'upright' and 'righteous'. The fool does not bother to contain his anger or other unproductive emotions. Domain and Frame Notes: See the remarks under the related entry אֱוִיל*. Level 2: 1 Meaning: An enduring lack of good sense, coupled with moral corruption Frame for Meaning: Folly Participant Roles for Meaning: Experiencer: human Level 3: a Context: A lack of good sense, coupled with moral corruption Intrinsic Domains for Meaning:c Sin; Communication; Behaviour; Destruction; Delusion; Anger; Reward; Instruction; Punishment; Impiety; Key Reference: _reference_start_Proverbs 14:1_reference_end_ Key Verse: KTBH - The wisdom of a woman holds her household together, but |bperverse folly|b* can destroy it. Evaluation of Translations: English versions are virtually unanimous in choosing either 'folly' or 'foolishness' as a rendering of אִוֶּלֶת*. The definitions given here, however, demand a somewhat more specific rendeering. Fox translates it as 'perverse folly'. _reference_start_Psalms 38:6_reference_end_ _reference_start_Psalms 69:6_reference_end_ _reference_start_Proverbs 5:23_reference_end_ _reference_start_Proverbs 12:23_reference_end_ _reference_start_Proverbs 13:16_reference_end_ _reference_start_Proverbs 14:1_reference_end_ _reference_start_Proverbs 14:8_reference_end_ _reference_start_Proverbs 14:17_reference_end_ _reference_start_Proverbs 14:18_reference_end_ _reference_start_Proverbs 14:24_reference_end_ _reference_start_Proverbs 14:24_reference_end_ _reference_start_Proverbs 14:29_reference_end_ _reference_start_Proverbs 15:2_reference_end_ _reference_start_Proverbs 15:14_reference_end_ _reference_start_Proverbs 15:21_reference_end_ _reference_start_Proverbs 16:22_reference_end_ _reference_start_Proverbs 17:12_reference_end_ _reference_start_Proverbs 18:13_reference_end_ _reference_start_Proverbs 19:3_reference_end_ _reference_start_Proverbs 22:15_reference_end_ _reference_start_Proverbs 24:9_reference_end_ f_reference_start_Proverbs 26:4_reference_end_ _reference_start_Proverbs 26:5_reference_end_ _reference_start_Proverbs 26:11_reference_end_ _reference_start_Proverbs 27:22_reference_end_ Keyword: Similar_Term Collocating Term: אַשְׁמָה Gloss: guilty deed References: _reference_start_Psalms 69:6_reference_end_ Keyword: Similar_Term Collocating Term: חַטָּאת Gloss: sin References: _reference_start_Psalms 38:6_reference_end_ _reference_start_Proverbs 5:23_reference_end_ Keyword: Similar_Term Collocating Term: לֵץ Gloss: scoffer References: _reference_start_Proverbs 24:9_reference_end_ Keyword: Similar_Term Collocating Term: עָוֹן Gloss: iniquity References: _reference_start_Psalms 38:6_reference_end_ _reference_start_Proverbs 5:23_reference_end_ Keyword: Opposite_Term Collocating Term: דַּעַת Gloss: knowledge References: _reference_start_Proverbs 12:23_reference_end_ _reference_start_Proverbs 13:16_reference_end_ _reference_start_Proverbs 14:18_reference_end_ _reference_start_Proverbs 15:2_reference_end_ _reference_start_Proverbs 15:14_reference_end_ Keyword: Opposite_Term Collocating Term: חָכְמָה Gloss: wisdom References: _reference_start_Proverbs 14:1_reference_end_ _reference_start_Proverbs 14:8_reference_end_ Keyword: Opposite_Term Collocating Term: ישׁר לֶכֶת Gloss: to walk aright References: _reference_start_Proverbs 15:21_reference_end_ Keyword: Opposite_Term Collocating Term: מוּסָר Gloss: discipline References: _reference_start_Proverbs 5:23_reference_end_ Keyword: Opposite_Term Collocating Term: שֶׂכֶל Gloss: good sense References: _reference_start_Proverbs 16:22_reference_end_ Keyword: Opposite_Term Collocating Term: תְּבוּנָה Gloss: discernment References: _reference_start_Proverbs 14:29_reference_end_ Version: 0 Date: 2008-01-10 14:46:07 tvdl Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org. ?tfXJ<. xj\N@2$|n`RD6( W{! V{  U{+ T{* S{* R{* Q{ P{" O{ N{ M{" L{w3 K{ J{w3 I{" H{ G{ F{ E{ D{  C{  B{ A{  @{ ?{ >{ ={ <{ ;{ :{ 9{ 8{ 7{ 6{ 5{ 4{ 3{ 2{ 1{ 0{ /{ .{ -{ ,{  +{ *{  ){  ({" '{ &{ %{  $z #z "z !z z z z z z z  z  zien subsumed under this entry, although some dictionaries (HALOT e.g.) treat them as nouns of its own. The relationship of Meaning 3 to Meanings 1 and 2 is disputed. Some propose a homonym, but others see a common base to all three Meanings, 'to talk freely, to talk big'.References: |iTheologisches Woerterbuch zum AT|i* IV, 567-572; Fox, M.V. 1997 "Words for Folly", |iZeitschrift für Althebraistik |i*10:4-15. Variant Spelling(s):int Traditional English versions render לֵץ as 'mocker' or 'scoffer', but that is misleading, as has already been argued by Buhl in 1913 and by other scholars since (see TWAT IV, 567f.). Why misleading? The main reason is that deriding other people's beliefs and repudiating intellectual principles is not the meaning of this verb. Rather, it denotes insolence and disdainful and contemptuous treatment of others, as LXX has well understood (which interprets it as 'insolence', 'haughtiness'). Fox defines it as 'arrogance manifest as contempt for other people and ideas'. Comparison jof Meanings and Uses: 1; Frame: Arrogance; intransitive; stem: qal, polel, hithpolel, hiphil; agent: null; experiencer: subject: human2; Frame: Arrogance; transitive; stem: hiphil; agent: subject:human; patient: human, inanimate3; Frame: Communication; stem: hiphil; agent: subject: human Level 2: 1 Meaning: To behave in an arrogant way and show contempt for other people and ideas Frame for Meaning: Arrogance Intrinsic Domains for Meaning: Folly Verb Stem: Qal, Polel, Hithpolel, Hiphil Participant Roles for Meaning: Experiencer: human Level 3: a Context: To behave in an arrogant way and show contempt for other people and ideas Intrinsic Domains for Meaning:c Shame; Punishment; Drunkenness; Instruction; Conceit; Conflict; Destruction; Conspiracy Participant Roles for Meaning:c Experiencer: human Meaning Comments:c Most cases under this Meaning are instances of the participle לֵץ, which functions practically as a noun. Key Reference: _reference_start_Proverbs 9:8_reference_end_ Key Verse: REB89 - Do not rkeprove the |binsolent person|b* or he will hate you; reprove a wise one, and he will be your friend. Evaluation of Translations: Other versions have either the traditional renderings 'mocker' or 'scoffer', but these are not very adequate. REB gives a good lead by rendering most occurrences לֵץ* with 'insolent' and 'arrogant'. _reference_start_Psalms 1:1_reference_end_ _reference_start_Proverbs 1:22_reference_end_ _reference_start_Proverbs 3:34_reference_end_ _reference_start_Proverbs 9:7_reference_end_ _reference_start_Proverbs 9:8_reference_end_ _reference_start_Proverbs 9:12_reference_end_ _reference_start_Proverbs 13:1_reference_end_ _reference_start_Proverbs 14:6_reference_end_ _reference_start_Proverbs 15:12_reference_end_ _reference_start_Proverbs 19:25_reference_end_ _reference_start_Proverbs 19:29_reference_end_ _reference_start_Proverbs 20:1_reference_end_ _reference_start_Proverbs 21:11_reference_end_ _reference_start_Proverbs 21:24_reference_end_ _reference_start_Proverbs 22:10_reference_endl_ _reference_start_Proverbs 24:9_reference_end_ _reference_start_Isaiah 28:22_reference_end_ _reference_start_Isaiah 29:20_reference_end_ _reference_start_Hosea 7:5_reference_end_ Keyword: Similar_Term Collocating Term: הֹמֶה Gloss: brawler References: _reference_start_Proverbs 20:1_reference_end_ Keyword: Similar_Term Collocating Term: זֵד Gloss: haughty one References: _reference_start_Proverbs 21:24_reference_end_ Keyword: Similar_Term Collocating Term: חַטָּא Gloss: sinner References: _reference_start_Psalms 1:1_reference_end_ Keyword: Similar_Term Collocating Term: כְּסִיל Gloss: complacent fool References: _reference_start_Proverbs 1:22_reference_end_ _reference_start_Proverbs 19:29_reference_end_ Keyword: Similar_Term Collocating Term: פֶּתִי Gloss: simpleton References: _reference_start_Proverbs 1:22_reference_end_ Keyword: Similar_Term Collocating Term: עָרִיץ Gloss: ruthless References: _reference_start_Isaiah 29:20_reference_end_ Keyword: Similar_Term Collocatinmg Term: רָשָׁע Gloss: wicked References: _reference_start_Psalms 1:1_reference_end_ _reference_start_Proverbs 9:7_reference_end_ Keyword: Opposite_Term Collocating Term: חכם Gloss: to be wise References: _reference_start_Proverbs 9:12_reference_end_ Keyword: Opposite_Term Collocating Term: חָכָם Gloss: wise References: _reference_start_Proverbs 9:8_reference_end_ _reference_start_Proverbs 13:1_reference_end_ _reference_start_Proverbs 15:12_reference_end_ _reference_start_Proverbs 21:11_reference_end_ Keyword: Opposite_Term Collocating Term: בין Gloss: discerning (Niphal) References: _reference_start_Proverbs 14:6_reference_end_ _reference_start_Proverbs 19:25_reference_end_ Keyword: Opposite_Term Collocating Term: עָנִי Gloss: humble References: _reference_start_Proverbs 3:34_reference_end_ Level 2: 2 Meaning: To treat someone or something with insolence and contempt Frame for Meaning: Arrogance Intrinsic Domains for Meaning: Folly; Conflict Verb Stem: Hiphil Participant Roles for Menaning: Agent: humanPatient: human, inanimate Level 3: a Context: To treat someone or something with insolence and contempt Intrinsic Domains for Meaning:c Debate; Conflict; Lawlessness Participant Roles for Meaning:c Agent: humanPatient: human, inanimate Meaning Comments:c The instances under this Meaning are transitive. Key Reference: _reference_start_Psalms 119:51_reference_end_ Key Verse: REB89 - Proud people |btreat |b*me |bwith insolent scorn|b*, but I do not swerve from your commandments. Evaluation of Translations: This rendering is better than 'mock' (NIV). NJPS holds a middle way with 'cruelly mock'. _reference_start_Job 16:20_reference_end_ _reference_start_Psalms 119:51_reference_end_ _reference_start_Proverbs 3:34_reference_end_ _reference_start_Proverbs 14:9_reference_end_ _reference_start_Proverbs 19:28_reference_end_ Keyword: Opposite_Term Collocating Term: נָתַן חֵן Gloss: to show favour References: _reference_start_Proverbs 3:34_reference_end_ Keyword: Opposite_Term Collocating Teorm: רֵעַ Gloss: friend References: _reference_start_Job 16:20_reference_end_ Level 2: 3 Meaning: To act as a intermediary between two parties that cannot communicate otherwise Frame for Meaning: Mediation Intrinsic Domains for Meaning: Communication Verb Stem: Hiphil Participant Roles for Meaning: Agent: human Level 3: a Context: To translate orally from one language to another and vice versa Intrinsic Domains for Meaning:c Language Participant Roles for Meaning:c Agent: human Key Reference: _reference_start_Genesis 42:23_reference_end_ Key Verse: NIV84 - They did not realize that Joseph could understand them, since he was using an |binterpreter|b*. Evaluation of Translations: English versions are rightly unanimous for this term. _reference_start_Genesis 42:23_reference_end_ Keyword: Agent_focus References: _reference_start_Genesis 42:23_reference_end_ Level 3: b Context: To act as an intermediary for a party for communicating with another party that is removed in distance or in status Intrinsic Domaipns for Meaning:c Politics; Priesthood Participant Roles for Meaning:c Agent: human, angelic Key Reference: _reference_start_Isaiah 43:27_reference_end_ Key Verse: RSV52 - Your first father sinned, and your |bmediators |b*transgressed against me. Evaluation of Translations: A translation like 'leaders' (NLT, CEV) does not fit the Meaning and should be dismissed. REB, NIV, NJPS have 'spokesmen', but it is doubtful whether this is adequate, for Israel did not have people's spokesmen towards the Lord. Rather, as the following verse makes clear, |ipriests|i* are meant here, as cultic intermediaries between God and his people.In 2Ch 23:31 the rendering 'envoys' seems very apt. _reference_start_2 Chronicles 32:31_reference_end_ _reference_start_Job 33:23_reference_end_ _reference_start_Isaiah 43:27_reference_end_ Keyword: Similar_Term Collocating Term: מַלְאָךְ Gloss: angel, messenger References: _reference_start_Job 33:23_reference_end_ Keyword: Agent_focus Note: (a) The wine is here called an arrogant man. This is a metonymy: 'wine' is used for the person who has drunk too much of it. Note: (b) Some translations render מְלִיצַי* as 'my advocates' (related to Meaning 3) but this seems less adequate, because Job's friends do not act as intermediaries between God and him. Besides, it is questionable if pleading belongs to that Meaning of this verb. So we support HOTTP's interpretation of this verse, but not its translation. For a better translation, see this entry. Note: (c) NJPS connects this occurrence with Meaning 3 of this word (less likely): 'Reparations mediate between fools, / Between the upright, good will.' Version: 0 Date: 2007-01-25 08:56:11 tvdl; 2007-01-25 08:59:40 theo; 2007-01-25 09:19:20 tvdl; 2007-01-25 11:17:38 theo; 2007-08-27 10:03:00 tvdl; 2007-11-02 10:14:26 cjs; 2008-01-10 13:48:53 tvdl Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org. __|==O|Boor; Nabal (נָבָל)boor; nabal (נָבָל)\level1 1 Strong's number: 5036 Part of speech: a Frequency: 40 Cognate(s): נבל \level1 2 Abstract for Busy Translators:{;;{to be insolent (ליץ)to be insolent (ליץ)Strong's number: 3887 Part of speech: v Frequency: 28 Cognate(s): לָצוֹן, מְלִיצָה Abstract for Busy Translators: 1. This verb denotes insolence and disdainful and contemptuous treatment of others.2. There is a homonym, meaning 'to act as an intermediary' (either as an interpreter or as a mediator). Hebraists' Comments: The occurrences of לֵץ (occurring another 8x in Ben Sira) and מֵלִיץ have beh ?tfXJ<. xj\N@2$|n`RD6( }  }  }  } } } }  } } } } } } }" } |  |  |  |  | ' | ' | ' | & | % ~| $ }| $ || " {|  z|  y|  x|  w|  v|  u|  t|  s|  r|  q|  p|  o| n|  m| l|  k| j|  i|  h| g| f| e|J d|J c|5 b|' a| `| _| ^| ]| ! \|  [|  Z| Y{! X{+ts: The traditional rendering 'fool', is inadequate because this term denotes not merely lack of wisdom (for which Hebrew has other terms at its disposal), but also an utter lack of honour and shame, so that the person in question does not shrink from gross violations of what is right and proper towards God and fellow men. A נָבָל* is a typical perpetrator of נְבָלָה* (see also that entry), a wanton and brutish act towards someone or a wanton and brutish disregard of something. Comparison of Meanings and Uses: 1; Frame: Folly; experiencer: human2; Frame: Names Level 2: 1 Meaning: Lacking not only in wisdom, but also in any sense of honour and shame, and thus capable of gross provocations against God and fellow men Frame for Meaning: Folly Intrinsic Domains for Meaning: Shame Participant Roles for Meaning: Experiencer: human Level 3: a Context: Lacking not only in wisdom, but also in any sense of honour and shame, and thus capable of gross provocations against God and fellow men Intrinsic Domainus for Meaning:c Covenant; Nation; Death; Incest; Cursing; Blasphemy; Communication; Judgement; Parenthood; Injustice; Destruction; Prophecy Participant Roles for Meaning:c Experiencer: human Key Reference: _reference_start_Proverbs 17:7_reference_end_ Key Verse: REB89 - Fine talk is out of place in a |bboor|b*, how much more are false words from a noble character! Evaluation of Translations: English versions often offer 'fool' as a rendering, but this only partially covers the desired meaning. Therefore new Bible translations should try to move away from this traditional but inadequate rendering. Alternatives from existing Bible translations include 'villain', 'scoundrel', 'churl'. The English term 'boor' seems a better candidate, but it is not often used (e.g. REB Pro 17:21), probably because it sounds too coarse in the Bible. Nevertheless this term is strong in Hebrew, so it should sound strong in a target language. _reference_start_Deuteronomy 32:6_reference_end_ _reference_start_Deuteronomy 32:21_refevrence_end_ _reference_start_2 Samuel 3:33_reference_end_ _reference_start_2 Samuel 13:13_reference_end_ _reference_start_Job 2:10_reference_end_ _reference_start_Job 30:8_reference_end_ _reference_start_Psalms 14:1_reference_end_ _reference_start_Psalms 39:9_reference_end_ _reference_start_Psalms 53:2_reference_end_ _reference_start_Psalms 74:18_reference_end_ _reference_start_Psalms 74:22_reference_end_ _reference_start_Proverbs 17:7_reference_end_ _reference_start_Proverbs 17:21_reference_end_ _reference_start_Proverbs 30:22_reference_end_ _reference_start_Isaiah 32:5_reference_end_ _reference_start_Isaiah 32:6_reference_end_ _reference_start_Jeremiah 17:11_reference_end_ _reference_start_Ezekiel 13:3_reference_end_ Keyword: Similar_Term Collocating Term: כְּסִיל Gloss: (complacent) fool References: _reference_start_Proverbs 17:21_reference_end_ Keyword: Opposite_Term Collocating Term: חָכָם Gloss: wise References: _reference_start_Deuteronomy 32:6_reference_end_ Keyword: Opposite_Term Collowcating Term: נָדִיב Gloss: noble References: _reference_start_Proverbs 17:7_reference_end_ _reference_start_Isaiah 32:5_reference_end_ Level 2: 2 Meaning: Personal name of a man, 'Nabal' Frame for Meaning: Names Intrinsic Domains for Meaning: Shame Meaning Comments: Nabal's farm is located in Carmel, in the south-east of Judah, and his name probably reflects influence of Arabic dialects in the border regions of Judah. Nabil is a popular name in Arabic to this day. It goes without saying that Nabil doesn't mean 'boor' in Arabic, and that no father would dream of calling his son Boor. But to the Israelite audience the association of Nabal with 'boor' cannot be missed. Level 3: a Context: Personal name of a man, 'Nabal' Meaning Comments:c The exaggeration that Nabal's conduct is designated by the extreme term נְבָלָה* (see that entry) may be deliberate, serving to placate David’s anger, which is Abigail’s main purpose. Her wordplay on Nabal’s name also serves to appease David by making himx feel that his anger is justified. Key Reference: _reference_start_1 Samuel 25:25_reference_end_ Key Verse: Please, my lord, pay no attention to that wretched fellow |bNabal|b*. For he is just what his name says: His name means |bboor|b* and he is a boor. Evaluation of Translations: All English versions transliterate the name as Nabal. But this is a clear case where the author plays on the meaning of the Hebrew word נָבָל*. Nabal in fact embodies the boor in optima forma; notions of honour / shame, ingratitude, provocation are eminently present. It thus does not comes as a surprise that verse 25 makes this connection explicit. It would be very nice when a language has the possibility to imitate this wordplay. European languages do not offer this possibility. _reference_start_1 Samuel 25:3_reference_end_ _reference_start_1 Samuel 25:4_reference_end_ _reference_start_1 Samuel 25:5_reference_end_ _reference_start_1 Samuel 25:9_reference_end_ _reference_start_1 Samuel 25:10_reference_end_ _reference_start_1 Samuel 25:14_reference_end_ _reference_start_1 Samuel 25:19_reference_end_ _reference_start_1 Samuel 25:25_reference_end_ _reference_start_1 Samuel 25:25_reference_end_ _reference_start_1 Samuel 25:26_reference_end_ _reference_start_1 Samuel 25:34_reference_end_ _reference_start_1 Samuel 25:36_reference_end_ _reference_start_1 Samuel 25:36_reference_end_ _reference_start_1 Samuel 25:37_reference_end_ _reference_start_1 Samuel 25:38_reference_end_ _reference_start_1 Samuel 25:39_reference_end_ _reference_start_1 Samuel 25:39_reference_end_ _reference_start_1 Samuel 25:39_reference_end_ _reference_start_1 Samuel 27:3_reference_end_ _reference_start_1 Samuel 30:5_reference_end_ _reference_start_2 Samuel 2:2_reference_end_ _reference_start_2 Samuel 3:3_reference_end_ Keyword: Version: 0 Date: 2008-01-10 13:23:44 tvdl Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org.zng in extreme responses and actions. Evaluating Evidence: BDB defines this noun as ‘disgraceful folly (wanton deed)’. HALOT also gives two meanings: ‘stupidity, folly’ (1Sa 25:25; Job 42:8) and ‘wilful sin, sacrilege’. HALOT’s analysis of this word is a significant improvement on BDB’s, but it still retains the idea of folly in two instances. Yet there is nothing in the context of these two instances that would necessarily prevent the scandal frame from being evoked, albeit with some elements behaving as weaker implicatures. Despite the weaker implicatures, the offences referred to by this expression are far more damaging and shocking than mere ‘disorderly conduct’ or ‘folly’. Nevertheless, in Deu 32:6 the related noun נָבָל is contrasted to חָכָם, which signals that the Wisom/Folly frame is certainly present. Comparison of Meanings and Uses: 1; Frame: Crime; agent: human; target: human2; Frame: Communication; agent: human; target: human3; Frame: Judgement; agent: God; ta{rget: human Domain and Frame Notes: This word belongs, together with others, in the overachring Sin frame. There are two main differences from the usages of most other evaluative terms for sin. The standards violated are worthy of greater respect and the effects are more extreme. 1. Synonyms Our focus term (נְבָלָה* ‘scandalous crime’) is related to Hebrew words for sin, horror, disgrace, and outrage. For instance, HALOT defines שַׁמָּה* as ‘horrific, atrocious event (always referring to destruction following judgement)’. Both נְבָלָה* ‘scandalous crime' and שַׁמָּה* ‘atrocious destruction’ refer to events that cause horror. But, while נְבָלָה* refers to horrific criminal acts, שַׁמָּה* ‘atrocious destruction’ refers to horrific acts of desolation, often as punishment for criminal acts. While נְבָלָה* ‘scandalous crime' refers to the kinds of events that call for swift judgment, שַׁמָּה* ‘atrocious destruction’ refers to the |acts of judgment themselves that are called for by serious crimes. The causative relationships may be shown like this: נְבָלָה* ‘scandalous crime’ > horror > judgement > שַׁמָּה* ‘atrocious destruction’ > more horror 2. Contrasting Focus of Synonyms נְבָלָה* ‘scandalous crime’ perspectivises the extreme reaction of outrage to the sinful event. Compare the perspectives called in by neighbouring terms: |bTerm Focus |b*חֵטְא* none פֶּשַׁע* intention of agent: deliberate (therefore, culpable) עָוֹן* consequence for agent: culpability and punishment עָוֶל* agent: unexpected act by formerly righteous agent אָשָׁם* effect on agent: guilt חנף* effect on agent: moral impurity תּוֹעֵבָה* effect on others: disgust נְבָלָה* effect on others: outrage etc. Level 2: 1 Meaning: Shameless act that violates the most sacred standards of morality and causes an extreme response from others Fr}ame for Meaning: Crime Intrinsic Domains for Meaning: Folly; Shame Participant Roles for Meaning: Agent: human Targets: human Level 3: a Context: Shameless act that violates one of the most sacred standards of morality and causes an extreme response from others \distc This is an act, as opposed to speech (cf. Lexical Meaning 2) Scandalous crime: the sin event is an act, the victim is human, and a consequence is public outrage. Intrinsic Domains for Meaning:c Rape; Marriage; Virginity; Ban; Hospitality; Homosexuality; Prophecy; Retribution Participant Roles for Meaning:c Agent: humanTarget: human Meaning Comments:c The fixed expression ‘to commit a scandalous crime in Israel’ emphasises two things about such crimes: (1) they offend the public conscience of the nation as a whole, causing a nation-wide outcry and (2) the whole nation is implicated in the crime and must be purged by getting rid of the perpetrators from among them (cf. Deu 22:21; Jos 7; Jdg 19-20). Key Reference: _reference_start_Deuterono~my 22:21_reference_end_ Key Verse: KTBH - Then the elders are to bring the girl out to the entrance of her father's house and the men of her town must stone her to death. You must purge this evil from among you. After all, by prostituting herself while under her father's authority, her |boffence has caused a scandal|b* among the people of Israel! Evaluation of Translations: Translators should find a strongly-worded expression that emphasises both the enormity of the offence (to God and to the entire community) and the serious consequences it brings (to the doer and to the community as a whole). CEV renders the fixed expression as ‘brought evil into your community’. This conveys part of the significance of the fixed expression. But since this aspect is already represented elsewhere in the verse, it is better at this point to emphasise the extreme offensiveness of the crime - one that should cause an outrage throughout all Israel. Unlike other modern translations, however, the CEV unambiguously shows that the fixed expression properly refers to the people of Israel, not to the land of Israel.REB renders the fixed expression as ‘committed an outrage in Israel’ (cf. ESV). This accurately portrays the idea of scandal, as does a noun like ‘infamy’ (NJB and TOB). GW’s ‘godless act’ may not always evoke the idea of public scandal for all English speakers, but it is better than the following. Several other translations are only a little astray by employing adjectives such as ‘disgraceful’ (NIV, NRSV, NLT, NCV, EIN) or ‘shameful’ (TEV, NJPS). Those that use ‘folly’ (LXX, RSV, NASB) are far from signifying the horrific enormity of the offence.The tentative KTBH rendering offered here redistributes semantic features. Where it says literally 'she did נְבָלָה among Israel', the notion of offence is made more explicit in: 'her offence caused a scandal among the people of Israel.' _reference_start_Genesis 34:7_reference_end_ _reference_start_Deuteronomy 22:21_reference_end_ _reference_start_Joshua 7:15_reference_end_ _reference_start_Judges 19:23_reference_end_ _reference_start_Judges 19:24_reference_end_ _reference_start_Judges 20:6_reference_end_ _reference_start_Judges 20:10_reference_end_ _reference_start_1 Samuel 25:25_reference_end_ _reference_start_2 Samuel 13:12_reference_end_ _reference_start_Jeremiah 29:23_reference_end_ \paradigl 1 Scandalous crime: offensive and abhorrent conduct that violates one of the most sacred standards of morality, appals and outrages the public conscience, disgraces those associated with it, angers God, and normally calls for the immediate death of the perpetrator Keyword: Similar_Term Collocating Term: זִמָּה Gloss: act of depravity References: _reference_start_Judges 20:6_reference_end_ Level 3: b Context: Shameless speech that violates one of the most sacred standards of morality and causes an extreme response from others \distc Some aspects of Job 42:8 (see Lexical meaning 2) are included here, because the penalty is caused by a scandalous sin of the same sort as this use. Sacrilegious speech against God: the sin event is a speech, the victim is God, and a consequence is divine outrage. Frame for Meaning:c Communication Intrinsic Domains for Meaning:c Prophecy Participant Roles for Meaning:c Agent: humanTarget: human Meaning Comments:c The term נְבָלָה* occurs as an object of דבר* ‘to speak’ where no action is involved, only scandalous speech (Isa 9:17; 32:6), as an object of עשׂה* ‘to do’ in Jer 29:23, even though offensive speech is entailed, because there is scandalous action (adultery) as well. Key Reference: _reference_start_Isaiah 9:16_reference_end_ Key Verse: KTBH -This is why YHWH shows no partiality to the young men, and no mercy even to the orphans and widows: because everyone is immoral and evil, and every mouth speaks |bshocking lies |b*about God. Evaluation of Translations: Many English translations still use terms like ‘folly’ (KJV, NRSV, NAB), ‘foolishness’ (NASB, GW), ‘foolishly’ (CEV) and ‘madness’ (NJB). Exceptions include ‘impiety’ (REB, NJPS), ‘evil’ (TEV) and ‘lies’ (NLT and NCV). But the guilt of the Israelites in Isaiah’s time was far greater than foolish lies would cause. Their scandalous words were no mere slips of the tongue or insignificant blunders, made because they were ignorant and foolish. Such meanings might be signalled when English words like ‘folly’ are used. Translators might consider explicitly stating the nature of the crime and the identity of the victim, such as ‘shocking lies about God’. \paradigl 1 _reference_start_Isaiah 9:16_reference_end_ _reference_start_Isaiah 32:6_reference_end_ Keyword: Similar_Term Collocating Term: תּוֹעָה Gloss: lie, disloyalty References: _reference_start_Isaiah 32:6_reference_end_ Level 2: 2 Meaning: Extreme response called up by a shameless and scandalous act \distl The penalty for 1.2 (probably death): the outcome of the sin event. Frame for Meaning: Judgement Intrinsic Domains for Meaning: Folly; Shame Participant Roles for Meaning: Agent: God Patient: human Meaning Comments: נְבָלָה *is here the object of עשׂה *‘to do’. But this time the Agent of the verb is not the same as the Agent of the scandalous crime. Rather the Agent of the verb is |ipunishing|i* the Agent of the scandalous crime. But there are scholars who hold that YHWH is here the Agent of the נְבָלָה*, but in a metaphorical way: "I would do to you such an outrageous thing that would be called נְבָלָה* among humans." Level 3: a Context: Extreme response called up by a shameful and scandalous act Intrinsic Domains for Meaning:c Speech; Falsehood; Atonement Participant Roles for Meaning:c Agent (punisher): God Patient: human Key Reference: _reference_start_Job 42:8_reference_end_ Key Verse: NJPS - for I have shown him favor and not |btreat you vilely|b* since you have not spoken the truth about Me as did My servant Job. Evaluation of Translations: The set of ideas prompted by the use of this noun will often require an expansive translation. Some elements may be omitted by simply conveying that God is not going to punish them as harshly as they deserve, as some modern versions do. A word like ‘folly’ does not render this noun’s meaning forcefully enough, despite CEV, NRSV, NCV, NIV and NASB. It could be an idea to make the connection between the offence and the punishment more explicit so that the notion of נְבָלָה* is clearly dissociated from YHWH: 'And then I will accept his prayer not to punish you as severely|i as your sacrilegious talk about me deserves.'|i* But the NJPS translation is also acceptable, although it presupposes that YHWH is the Agent (which brings it under Meaning 1.). _reference_start_Job 42:8_reference_end_ \paradigl 1 Keyword: Version: 0 Date: 2004-02-04 peterk; 2008-01-10 13:23:15 tvdl Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org. H}OO}scandalous crime (נְבָלָה)scandalous crime (נְבָלָה)Strong's number: 05039 Part of speech: ncf Frequency: 13 Cognate(s): נבל Abstract for Busy Translators: 1. The term נְבָלָה indicates a flagrant violation of the most revered standards of morality.2. It can be defined as a wanton brutish act towards someone or a wanton brutish disregard of something.3. The doer of נְבָלָה lacks any sense of honour and shame.4. An important element in the meaning is: extremity, i.e. the enormity of the crime, its extreme offensiveness.5. It provokes public outrage and God’s indignation, resultiy ?tfXJ<. xj\N@2${m_QC5' U T S R Q P O  N  M Lt K J- I- H G F E D C B  A  @ ? > = < ;w :t 9 8 7 6 5 4 3 2 1 0 / .  - , +~ *~ )~ (~ '~S &~S %~S $~ #~ "~ !~ ~ ~ ~ ~ ~  ~  ~  }* }* } istik |i*6: 149-169. Comparison of Meanings and Uses: 1. Frame: Cunning; Stem: qal, hiphil; Experiencer: human2. Frame: Planning; Stem: hiphil; Agent: human; Content: plan3. Frame: Heaping up; Stem: niphal; Agent: God; Patient: inanimate Additional Information: In Sirach 6:32, being shrewd can be learned, and it is a question of will. The verse reads:אִם תַּחְפֹּץ, בְּנִי, תִּתְחַכָּם, וְאִם תָּשִׂים לִבְּךָ תַּעְרִם *'If you desire, my son, you can become wise, and if you apply your wits, you will become shrewd.' Level 2: 1 Meaning: To be able to manipulate difficult circumstances in such a way that the outcome is favourable to you Frame for Meaning: Cunning Intrinsic Domains for Meaning: Competition Verb Stem: Qal, Hiphil Participant Roles for Meaning: Experiencer: human Level 3: a Context: To be able to manipulate difficult circumstances in such a way that the outcome is favourable to you Intrinsic Domains for Meaning:c Instruction; Warfare; Punishment Participant Roles for Meaning:c Experiencer: human Key Reference: _reference_start_1 Samuel 23:22_reference_end_ Key Verse: CEVUK - for I've been told that he|b's|b* very |bcunning|b*. Evaluation of Translations: An acceptable rendering. Other renderings include 'crafty', 'listig' (German). A pejorative rendering may be justified by the fact that David's enemy, Saul, is speaking here. Otherwise a more neutral rendering, such as 'shrewd', might be preferred. _reference_start_1 Samuel 23:22_reference_end_ _reference_start_1 Samuel 23:22_reference_end_ _reference_start_Job 5:13_reference_end_ _reference_start_Proverbs 15:5_reference_end_ _reference_start_Proverbs 19:25_reference_end_ Keyword: Opposite_Term Collocating Term: אֱוִיל Gloss: fool References: _reference_start_Proverbs 15:5_reference_end_ Keyword: Opposite_Term Collocating Term: פֶּתִי Gloss: simpleton References: _reference_start_Proverbs 19:25_reference_end_ Keyword: Similar_Term Collocating Term: בין דַּעַת Gloss: to understand knowledge References: _reference_start_Proverbs 19:25_reference_end_ Keyword: Similar_Term Collocating Term: מַחְשָׁבָה Gloss: plan References: _reference_start_Job 5:13_reference_end_ Keyword: Similar_Term Collocating Term: עֵצָה Gloss: counsel References: _reference_start_Job 5:13_reference_end_ Keyword: Level 2: 2 Meaning: To devise a plan to manipulate difficult circumstances in such a way that the outcome is favourable to you Frame for Meaning: Planning Intrinsic Domains for Meaning: Competition Verb Stem: Hiphil Participant Roles for Meaning: Agent: humanContent: plan Meaning Comments: This Meaning is different from (1) because it is transitive. Level 3: a Context: To devise a plan to manipulate difficult circumstances in such a way that the outcome is favourable to you Intrinsic Domains for Meaning:c Conspiracy; Hostility Participant Roles for Meaning:c Experiencer: humanContent: plan Key Reference: _reference_start_Psalms 83:4_reference_end_ Key Verse: REB89 - They |bdevise a|b* |bcunning |b*plot against your people Evaluation of Translations: Other translations have e.g.:TEVUK - They are |bmaking|b* secret |bplans |b*against your people;NJPS - They plot |bcraftily|b* against Your people All three translations are good, as they highlight different aspects of סוֹד*. _reference_start_Psalms 83:4_reference_end_ Keyword: Similar_Term Collocating Term: יעץ Gloss: to conspire (Hithpael) References: _reference_start_Psalms 83:4_reference_end_ Level 2: 3 Meaning: To arrange or collect a substance (or items) with a heap or pile as a result Frame for Meaning: Heaping up Verb Stem: Niphal Participant Roles for Meaning: Agent = implicit: DivinePatient: inanimate Level 3: a Context: To arrange or collect a substance (or items) with a heap or pile as a result Intrinsic Domains for Meaning:c Water Participant Roles for Meaning:c Agent = implicit: DivinePatient: inanimate Key Reference: _reference_start_Exodus 15:8_reference_end_ Key Verse: REB89 - At the blast of your nostrils the waters |bpiled up|b*, / the floods stood up in a heap; / the deeps congealed in the heart of the sea. Evaluation of Translations: This rendering is good, and most English versions have something similar. If the synonymy becomes a problem, it is worthwile to render the third verb in its literal sense (if the target audience has cattle), as CEV does, of all versions (!): '... and the ocean depths curdled like cheese'. _reference_start_Exodus 15:8_reference_end_ Keyword: Similar_Term Collocating Term: נצב Gloss: to stand up (Niphal) References: _reference_start_Exodus 15:8_reference_end_ Keyword: Similar_Term Collocating Term: קפא Gloss: to congeal (lit. to curdle) References: _reference_start_Exodus 15:8_reference_end_ Version: 0 Date: 2007-08-24 10:52:23 tvdl; 2007-11-02 08:27:20 cjs; 2008-01-10 11:03:40 tvdl Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org. ??$UU1cunning, astuteness (עָרְמָה)cunning, astuteness (עָרְמָה)Strong's number: 6195 Part of speech: ncf Frequency: 5 Cognate(s): ערם Abstract for Busy Trm~cc'~to be cunning / astute; to pile up (ערם)to be cunning / astute; to pile up (ערם)\level1 1 Strong's number: 6191 Part of speech: v Frequency: 7 Cognate(s): עָרוּם, עָרְמָה, עֲרֵמָה \level1 2 Abstract for Busy Translators: 1. One meaning of this verb is 'to be cunning / astute'.2. It can be used in both a positive and a negative sense (see also עָרְמָה). 3. In the Hiphil, it means 'to devise a cunning plan'.4. A homonym of this verb, meaning 'to pile up', occurs only once. Hebraists' Comments: The root ערם* is a homonym, i.e. a word with two different meanings that cannot be related to one another: 1. to be astute; 2. to pile up. For further reading: See Fox, M.V. 1993 "Words for Wisdom." |iZeitschrift für Althebraanslators: The noun עָרְמָה* does not necessarily have a pejorative meaning. In several cases, notably in Proverbs, it can better be translated as 'astuteness' or 'shrewdness' than as 'cunning', which has stronger negative associations. Hebraists' Comments: See See Fox, M.V. 1993 "Words for Wisdom." |iZeitschrift für Althebraistik |i*6: 149-169. Domain and Frame Notes: As TWAT VI,388 notes, both עָרְמָה* and מְזִמָּה* hold the border line with the pejoratives (cunning, craftiness). This is related to the fact that in ancient Israel, wisdom education concentrated on intellectual attitudes rather than on morality. W. McKane rightly stresses in his |iProverbs|i* commentary (London 1970, 265): 'Wisdom did not educate men to change the world, but to make their way successfully in the world as it was.' Or in Fox's words: 'This [i.e. that Wisdom boasts proximity to עָרְמָה*, Pro 8:12] does not make עָרְמָה* an inherently virtuous ability; rather it is a practical faculty that wisdom promises its adherents.' Level 2: 1 Meaning: The ability to manipulate difficult circumstances in such a way that the outcome is favourable to you Frame for Meaning: Mental activity Intrinsic Domains for Meaning: Competition Participant Roles for Meaning: Experiencer: human Level 3: a Context: The ability to manipulate difficult circumstances in such a way that the outcome is favourable to you Intrinsic Domains for Meaning:c Murder; Deceit; Disguise; Instruction Participant Roles for Meaning:c Experiencer: human Key Reference: _reference_start_Proverbs 8:12_reference_end_ Key Verse: REB89 - I am wisdom, I bestow |bshrewdness|b* and show the way to knowledge and discretion. Evaluation of Translations: 'Prudence' (NRS) is a colourless rendering. 'Shrewdness' is more fitting, because it approaches the border line with the pejorative connotation. But the choice also depends on how you render the other synonyms of wisdom found in this context (and in Pro 1:1-5). _reference_start_Exodus 21:14_reference_end_ _reference_start_Joshua 9:4_reference_end_ _reference_start_Proverbs 1:4_reference_end_ _reference_start_Proverbs 8:5_reference_end_ _reference_start_Proverbs 8:12_reference_end_ Keyword: Similar_Term Collocating Term: דַּעַת Gloss: knowledge References: _reference_start_Proverbs 1:4_reference_end_ _reference_start_Proverbs 8:12_reference_end_ Keyword: Similar_Term Collocating Term: חָכְמָה Gloss: wisdom References: _reference_start_Proverbs 8:12_reference_end_ Keyword: Similar_Term Collocating Term: לֵב Gloss: prudence References: _reference_start_Proverbs 8:5_reference_end_ Keyword: Similar_Term Collocating Term: מְזִמָּה Gloss: resourcefulness References: _reference_start_Proverbs 1:4_reference_end_ _reference_start_Proverbs 8:12_reference_end_ Version: 0 Date: 2008-01-10 14:53:49 tvdl Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org.uire these qualities. Frame for Meaning: Folly Participant Roles for Meaning: Experiencer: human Level 3: a Context: A person who runs certain risks because he lacks intelligence and experience but who can still acquire these qualities. Intrinsic Domains for Meaning:c Instruction; Providence; Punishment; Seduction; Atonement Participant Roles for Meaning:c Experiencer: human Key Reference: _reference_start_Proverbs 1:32_reference_end_ Key Verse: NIV84 - For the waywardness of the |bsimple|b* will kill them, and the complacency of fools will destroy them; Evaluation of Translations: In general, most English versions translate פֶּתִי* with 'simple(ton)', 'ignorant', and even 'naive', while 'inexperienced' ('unerfahren') can be found in the Gute Nachricht. These do not seem unacceptable renderings on the whole. 'Stupid fools', on the other hand (CEV in Pro 19:25), is far too strong and misses the point. It is interesting that 'gullible' (Fox' proposal) is not found in English versions. _reference_start_Psalms 19:8_reference_end_ _reference_start_Psalms 116:6_reference_end_ _reference_start_Psalms 119:130_reference_end_ _reference_start_Proverbs 1:4_reference_end_ _reference_start_Proverbs 1:22_reference_end_ _reference_start_Proverbs 1:32_reference_end_ _reference_start_Proverbs 7:7_reference_end_ _reference_start_Proverbs 8:5_reference_end_ _reference_start_Proverbs 9:4_reference_end_ _reference_start_Proverbs 9:16_reference_end_ _reference_start_Proverbs 14:15_reference_end_ _reference_start_Proverbs 14:18_reference_end_ _reference_start_Proverbs 19:25_reference_end_ _reference_start_Proverbs 21:11_reference_end_ _reference_start_Proverbs 22:3_reference_end_ _reference_start_Proverbs 27:12_reference_end_ _reference_start_Ezekiel 45:20_reference_end_ Keyword: Similar_Term Collocating Term: אִישׁ שֹׁגֶה Gloss: inadvertent man References: _reference_start_Ezekiel 45:20_reference_end_ Keyword: Similar_Term Collocating Term: בֵּן Gloss: young man References: _reference_start_Proverbs 7:7_reference_end_ Keyword: Similar_Term Collocating Term: דלל Gloss: to be needy, helpless References: _reference_start_Psalms 116:6_reference_end_ Keyword: Similar_Term Collocating Term: חֲסַר לֵב Gloss: lacking heart (brains) References: _reference_start_Proverbs 7:7_reference_end_ _reference_start_Proverbs 9:4_reference_end_ _reference_start_Proverbs 9:16_reference_end_ Keyword: Similar_Term Collocating Term: כְּסִיל Gloss: complacent fool References: _reference_start_Proverbs 1:22_reference_end_ _reference_start_Proverbs 1:32_reference_end_ _reference_start_Proverbs 8:5_reference_end_ Keyword: Similar_Term Collocating Term: נַעַר Gloss: young man References: _reference_start_Proverbs 1:4_reference_end_ Keyword: Opposite_Term Collocating Term: חָכָם Gloss: wise References: _reference_start_Proverbs 21:11_reference_end_ Keyword: Opposite_Term Collocating Term: בִּין Gloss: discerning (Niphal) References: _reference_start_Proverbs 19:25_reference_end_ Keyword: Opposite_Term Collocating Term: עָרוּם Gloss: astute References: _reference_start_Proverbs 14:15_reference_end_ _reference_start_Proverbs 14:18_reference_end_ _reference_start_Proverbs 22:3_reference_end_ _reference_start_Proverbs 27:12_reference_end_ Level 2: 2 Meaning: Risky lack of intelligence and experience, but with a possibility to acquire these qualities. Frame for Meaning: Folly Participant Roles for Meaning: Experiencer: human Level 3: a Context: Risky lack of intelligence and experience, but with a possibility to acquire these qualities. Intrinsic Domains for Meaning:c Instruction; Reward Participant Roles for Meaning:c Experiencer: human Key Reference: _reference_start_Proverbs 1:22_reference_end_ Key Verse: RSV52 - How long, O simple ones, will you love |bbeing simple|b*? How long will scoffers delight in their scoffing and fools hate knowledge? Evaluation of Translations: Interestingly, English versions offer a variety of renderings here. 'Being simple' and 'simplicity' (REB, NJPS) are not bad renderings, but they are less adequate than 'being simpleminded' (NLT) because they have positive connotations. 'Naiveté' would be a good option. _reference_start_Proverbs 1:22_reference_end_ _reference_start_Proverbs 9:6_reference_end_ Keyword: Similar_Term Collocating Term: דַּעַת Gloss: knowledge References: _reference_start_Proverbs 1:22_reference_end_ Keyword: Opposite_Term Collocating Term: דֶּרֶךְ בִּינָה Gloss: the way of understanding References: _reference_start_Proverbs 9:6_reference_end_ Note: (a) There is no unanimity if in Pro 9:6 פֶּתִי refers to a person (so REB) or an abstract notion 'simplicity, naiveté' (most versions). In KTBH, we have chosen for the second option (hence Meaning 2), because the parallel term points to an abstract term. Version: 0 Date: 2008-01-10 14:59:18 tvdl Disclaimer: Key Terms in Biblical Hebrew: The entries are an experimental sample set, not yet fully reviewed and approved. The KTBH team would welcome feed-back to christopher_samuel@sil.org. O[[{simpleton; naïve person (פֶּתִי)simpleton; naïve person (פֶּתִי)Strong's number: 6612 Part of speech: ncm Frequency: 19 Cognate(s): פתה Abstract for Busy Translators: The term פֶּתִי* refers to a person who runs certain risks due to lack of intelligence and experience. Such a person believes everything and is easily seduced. He is not wise but is not beyond the possibility of improvement. A simpleton can and must be taught in order to become intelligent and gain experience. Hebraists' Comments: Reference: Fox M.V. 1997 "Words for Folly" |iZeitschrift für Althebraistik |i*10:4-15. Level 2: 1 Meaning: A person who runs certain risks due to a lack of intelligence and experience but who can still acq ?tfXJ<. xj\N@2$|n`RD6( B B B :  * ; : : .  . -  * 3 (# ( ( ( ( ( - " + + + ~+ }> |B {; z)& y( x( ' w= v- u:  t. s* r; q- p- o+ n* m* l)  k( j( i( h+ g) f( e) d) c( b( a0 `- _)$ ^  ] \  [ Z Y X W V {VP-AGEage\see (see WORLD)#33sADVOCATE, COUNSELORadvocate, counselor\see (see also MEDIATOR) \o1 1. Advocate, one who speakvEADULTERYadultery\o1 1. The act of sexual unfaithfulness \o1 2. One who sexually violates marriage vows \o2 a. Masculine offenders \o2 b. Feminine offenders \o1 3. Those who are in any way unfaithful to God \gtrm moicaliv \trnl moichalis \"+ABYSSabyss\see (see HELL)D99+ABSTINENCE FROM EATINGabstinence from eating\see (see FAST):]ABBAabba\o1 1. Father (familiar form) \gtrm abba \trnl abba \xref [L&N 12.12] \def Father, transliterated from Aramaic \en2 1. Father (familiar form) \gtrm abba \trnl abba _reference_start_Mark 14:36_reference_end_ _reference_start_Romans 8:15_reference_end_ _reference_start_Galatians 4:6_reference_end_xref [L&N 31.101] \def unfaithful \gtrm moicaomai \trnl moichaomai \xref [L&N 88.276] \def commit adultery \gtrm moiceia \trnl moicheia \xref [L&N 88.276] \def adultery \gtrm moiceuw \trnl moicheuõ \xref [L&N 88.276] \def commit adultery \gtrm moicov \trnl moichos \xref [L&N 88.277] \def adulterer \en2 1. The act of sexual unfaithfulness \gtrm moicaomai \trnl moichaomai MAT 5:32 (2 occurrences); 19:9 _reference_start_Matthew 5:32_reference_end_ _reference_start_Matthew 19:9_reference_end_ _reference_start_Mark 10:11_reference_end_ _reference_start_Mark 10:12_reference_end_ \gtrm moiceia \trnl moicheia _reference_start_Matthew 15:19_reference_end_ _reference_start_Mark 7:21_reference_end_ _reference_start_John 8:3_reference_end_ \gtrm moiceuw \trnl moicheuõ _reference_start_Matthew 5:27_reference_end_ _reference_start_Matthew 5:28_reference_end_ _reference_start_Matthew 19:18_reference_end_ _reference_start_Mark 10:19_reference_end_ LUK 16:18 (2 occurrences); 18:20 _reference_start_Luke 16:18_reference_end_ _reference_start_Luke 18:20_reference_end_ _reference_start_John 8:4_reference_end_ ROM 2:22 (2 occurrences); 13:9 _reference_start_Romans 2:22_reference_end_ _reference_start_Romans 13:9_reference_end_ JAS 2:11 (2 occurrences) _reference_start_James 2:11_reference_end_ \en2 2. One who sexually violates marriage vows \en3 a. Masculine offenders \gtrm moicov \trnl moichos _reference_start_Luke 18:11_reference_end_ _reference_start_1 Corinthians 6:9_reference_end_ _reference_start_Hebrews 13:4_reference_end_ \en3 b. Feminine offenders \gtrm moicaliv \trnl moichalis ROM 7:3 (2 occurrences) _reference_start_Romans 7:3_reference_end_ _reference_start_2 Peter 2:14_reference_end_ \en2 3. Those who are in any way unfaithful to God \gtrm moicaliv \trnl moichalis _reference_start_Matthew 12:39_reference_end_ _reference_start_Matthew 16:4_reference_end_ _reference_start_Mark 8:38_reference_end_ _reference_start_James 4:4_reference_end_ \gtrm moiceuw \trnl moicheuõ _reference_start_Revelation 2:22_reference_end_s on behalf of another \o1 2. Helper, counselor, one who actively guides and helps \o1 3. Advisor (same meaning as 2. above. different Greek term) \gtrm parakljtov \trnl paraklætos \xref [L&N 12.19] \def the Helper \xref [L&N 35.16] \def helper \gtrm sumboulov \trnl sumboulos \xref [L&N 33.297] \def advisor \en2 1. Advocate, one who speaks on behalf of another \gtrm parakljtov \trnl paraklætos 1JN 2:1 (Jesus Christ) _reference_start_1 John 2:1_reference_end_ \en2 2. Helper, counselor, one who actively guides and helps \gtrm parakljtov \trnl paraklætos JHN 14:16 (Holy Spirit), 26 (Holy Spirit); 15:26 (Holy Spirit); 16:7 (Holy Spirit) _reference_start_John 14:16_reference_end_ _reference_start_John 14:26_reference_end_ _reference_start_John 15:26_reference_end_ _reference_start_John 16:7_reference_end_ \en2 3. Advisor (same meaning as 2. above. different Greek term) \gtrm sumboulov \trnl sumboulos _reference_start_Romans 11:34_reference_end_rion \xref [L&N 6.114] \def altar of any sort \gtrm qumiatjrion \trnl thumiatærion \xref [L&N 6.116] \def incense altar \gtrm bwmov \trnl bõmos \xref [L&N 6.115] \def altar with a base or pedestal \en2 1. Altar of burnt offering \gtrm qusiastjrion \trnl thusiastærion _reference_start_Matthew 5:23_reference_end_ _reference_start_Matthew 5:24_reference_end_ _reference_start_Matthew 23:18_reference_end_ _reference_start_Matthew 23:19_reference_end_ _reference_start_Matthew 23:20_reference_end_ _reference_start_Matthew 23:35_reference_end_ _reference_start_Luke 11:51_reference_end_ _reference_start_Romans 11:3_reference_end_ _reference_start_1 Corinthians 9:13_reference_end_ _reference_start_1 Corinthians 10:18_reference_end_ HEB 7:13; 13:10 (metonymy of the subject, i.e. the altar as a figure for the sacrifice) _reference_start_Hebrews 7:13_reference_end_ _reference_start_Hebrews 13:10_reference_end_ _reference_start_James 2:21_reference_end_ \en2 2. Altar of incense \gtrm qusiastjrion \trnl thusiastærion _reference_start_Luke 1:11_reference_end_ \gtrm qumiatjrion \trnl thumiatærion _reference_start_Hebrews 9:4_reference_end_ \en2 3. Altar in heaven (no longer a place of animal sacrifice) \gtrm qusiastjrion \trnl thusiastærion REV 6:9; 8:3 (2 occurrences), 5; 9:13; 11:1; 14:18 (synecdoche: part for the whole, i.e. the altar as a part representing the whole Temple (also this is a double figure because “Temple” is a metonymy of the subject, i.e. Temple is a figure for the presence of God.)); 16:7 (metonymy of the adjunct, i.e. the altar as a figure for those who worship there) _reference_start_Revelation 6:9_reference_end_ _reference_start_Revelation 8:3_reference_end_ _reference_start_Revelation 8:5_reference_end_ _reference_start_Revelation 9:13_reference_end_ _reference_start_Revelation 11:1_reference_end_ _reference_start_Revelation 14:18_reference_end_ _reference_start_Revelation 16:7_reference_end_ \en2 4. Altar to an unknown god \gtrm bwmov \trnl bõmos _reference_start_Acts 17:23_reference_end_ X,X! //wANOINT, ANOINTINGanoint, anointing\o1 1. To put oil (or a similar substance) on somebody \o1 9UANGELangel\o1 1. A supernatural, spiritual being who is a messenger from God \o1 2. A morally fallen supernatural, spiritual being who serves Satan \o1 3. A human appointed to deliver a message or to do a particular task \o1 4. A figurative use \gtrm aggelov \trnl angelos \xref [L&N 33.195] \def messenger \xref [L&N 12.28] \def angel \en2 1. A supernatural, spiritual being who is a messenger from God \gtrm aggelov \trnl angelos _reference_start_Matthew 1:20_reference_end_ _reference_start_Matthew 1:24_reference_end_ _reference_start_Matthew 2:13_reference_end_ _reference_start_Matthew 2:DmALTARaltar\o1 1. Altar of burnt offering \o1 2. Altar of incense \o1 3. Altar in heaven (no longer a place of animal sacrifice) \o1 4. Altar to an unknown god \gtrm qusiastjrion \trnl thusiastæ ?tfXJ<. xj\N@2$|n`RD6( S,  R,  Q, P,5 O,& N,# M, L, K, J+ I+  H+3 G* F*+ E*$ D* C* B* A*  @*  ?* >* =* <* ;* :* 9*& 8*# 7*" 6* 5* 4* 3* 2* 1* 0) /)  .)  -)& ,) +( *( )(5 (( '($ &( %( $( #( "( 1 !( ) ( ' ( ( ( ( ( ( , B B B  B 19_reference_end_ _reference_start_Matthew 4:6_reference_end_ _reference_start_Matthew 4:11_reference_end_ _reference_start_Matthew 13:39_reference_end_ _reference_start_Matthew 13:41_reference_end_ _reference_start_Matthew 13:49_reference_end_ _reference_start_Matthew 16:27_reference_end_ _reference_start_Matthew 18:10_reference_end_ _reference_start_Matthew 22:30_reference_end_ _reference_start_Matthew 24:31_reference_end_ _reference_start_Matthew 24:36_reference_end_ _reference_start_Matthew 25:31_reference_end_ _reference_start_Matthew 26:53_reference_end_ _reference_start_Matthew 28:2_reference_end_ _reference_start_Matthew 28:5_reference_end_ _reference_start_Mark 1:13_reference_end_ _reference_start_Mark 8:38_reference_end_ _reference_start_Mark 12:25_reference_end_ _reference_start_Mark 13:27_reference_end_ _reference_start_Mark 13:32_reference_end_ LUK 1:11, 13, 18, 19, 26, 30, 34, 35, 38; 2:9, 10, 13, 15, 21; 4:10; 9:26; 12:8, 9; 15:10; 16:22; 20:36 (compound word); 22:43 (textual variant); 24:23 _reference_start_Luke 1:11_reference_end_ _reference_start_Luke 1:13_reference_end_ _reference_start_Luke 1:18_reference_end_ _reference_start_Luke 1:19_reference_end_ _reference_start_Luke 1:26_reference_end_ _reference_start_Luke 1:30_reference_end_ _reference_start_Luke 1:34_reference_end_ _reference_start_Luke 1:35_reference_end_ _reference_start_Luke 1:38_reference_end_ _reference_start_Luke 2:9_reference_end_ _reference_start_Luke 2:10_reference_end_ _reference_start_Luke 2:13_reference_end_ _reference_start_Luke 2:15_reference_end_ _reference_start_Luke 2:21_reference_end_ _reference_start_Luke 4:10_reference_end_ _reference_start_Luke 9:26_reference_end_ _reference_start_Luke 12:8_reference_end_ _reference_start_Luke 12:9_reference_end_ _reference_start_Luke 15:10_reference_end_ _reference_start_Luke 16:22_reference_end_ _reference_start_Luke 20:36_reference_end_ _reference_start_Luke 22:43_reference_end_ _reference_start_Luke 24:23_reference_end_ _reference_start_John 1:51_reference_end_ _reference_start_John 12:29_reference_end_ _reference_start_John 20:12_reference_end_ _reference_start_Acts 5:19_reference_end_ _reference_start_Acts 6:15_reference_end_ _reference_start_Acts 7:30_reference_end_ _reference_start_Acts 7:35_reference_end_ _reference_start_Acts 7:38_reference_end_ _reference_start_Acts 7:53_reference_end_ _reference_start_Acts 8:26_reference_end_ _reference_start_Acts 10:3_reference_end_ _reference_start_Acts 10:7_reference_end_ _reference_start_Acts 10:22_reference_end_ _reference_start_Acts 11:13_reference_end_ _reference_start_Acts 12:7_reference_end_ _reference_start_Acts 12:8_reference_end_ _reference_start_Acts 12:9_reference_end_ _reference_start_Acts 12:10_reference_end_ _reference_start_Acts 12:11_reference_end_ _reference_start_Acts 12:15_reference_end_ _reference_start_Acts 12:23_reference_end_ _reference_start_Acts 23:8_reference_end_ _reference_start_Acts 23:9_reference_end_ _reference_start_Acts 27:23_reference_end_ _reference_start_Romans 8:38_reference_end_ _reference_start_1 Corinthians 4:9_reference_end_ _reference_start_1 Corinthians 11:10_reference_end_ _reference_start_1 Corinthians 13:1_reference_end_ _reference_start_2 Corinthians 11:14_reference_end_ _reference_start_Galatians 1:8_reference_end_ _reference_start_Galatians 3:19_reference_end_ _reference_start_Galatians 4:14_reference_end_ _reference_start_Colossians 2:18_reference_end_ _reference_start_2 Thessalonians 1:7_reference_end_ _reference_start_1 Timothy 3:16_reference_end_ _reference_start_1 Timothy 5:21_reference_end_ HEB 1:4, 5, 6, 7 (2 occurrences), 13; 2:2, 5, 7, 9, 16; 12:22; 13:2 _reference_start_Hebrews 1:4_reference_end_ _reference_start_Hebrews 1:5_reference_end_ _reference_start_Hebrews 1:6_reference_end_ _reference_start_Hebrews 1:7_reference_end_ _reference_start_Hebrews 1:13_reference_end_ _reference_start_Hebrews 2:2_reference_end_ _reference_start_Hebrews 2:5_reference_end_ _reference_start_Hebrews 2:7_reference_end_ _reference_start_Hebrews 2:9_reference_end_ _reference_start_Hebrews 2:16_reference_end_ _reference_start_Hebrews 12:22_reference_end_ _reference_start_Hebrews 13:2_reference_end_ _reference_start_1 Peter 1:12_reference_end_ _reference_start_1 Peter 3:22_reference_end_ _reference_start_2 Peter 2:11_reference_end_ REV 1:1, 20; 2:1, 8, 12, 18; 3:1, 5, 7, 14; 5:2, 11; 7:1, 2 (2 occurrences), 11; 8:2, 3, 4, 5, 6, 7 (Implied contextually), 8, 10, 12, 13; 9:1, 13, 14; 10:1, 5, 7, 8, 9, 10; 11:15; 12:7; 14:6, 8, 9, 10, 15, 17, 18, 19; 15:1, 6, 7, 8; 16:1, 2 (Implied contextually), 3 (Implied contextually), 4 (Implied contextually), 5, 8 (Implied contextually), 10 (Implied contextually), 12 (Implied contextually), 17 (Implied contextually); 17:1, 7; 18:1, 21; 19:9 (Implied contextually), 17; 20:1; 21:9, 12, 17; 22:6, 8, 16 _reference_start_Revelation 1:1_reference_end_ _reference_start_Revelation 1:20_reference_end_ _reference_start_Revelation 2:1_reference_end_ _reference_start_Revelation 2:8_reference_end_ _reference_start_Revelation 2:12_reference_end_ _reference_start_Revelation 2:18_reference_end_ _reference_start_Revelation 3:1_reference_end_ _reference_start_Revelation 3:5_reference_end_ _reference_start_Revelation 3:7_reference_end_ _reference_start_Revelation 3:14_reference_end_ _reference_start_Revelation 5:2_reference_end_ _reference_start_Revelation 5:11_reference_end_ _reference_start_Revelation 7:1_reference_end_ _reference_start_Revelation 7:2_reference_end_ _reference_start_Revelation 7:11_reference_end_ _reference_start_Revelation 8:2_reference_end_ _reference_start_Revelation 8:3_reference_end_ _reference_start_Revelation 8:4_reference_end_ _reference_start_Revelation 8:5_reference_end_ _reference_start_Revelation 8:6_reference_end_ _reference_start_Revelation 8:7_reference_end_ _reference_start_Revelation 8:8_reference_end_ _reference_start_Revelation 8:10_reference_end_ _reference_start_Revelation 8:12_reference_end_ _reference_start_Revelation 8:13_reference_end_ _reference_start_Revelation 9:1_reference_end_ _reference_start_Revelation 9:13_reference_end_ _reference_start_Revelation 9:14_reference_end_ _reference_start_Revelation 10:1_reference_end_ _reference_start_Revelation 10:5_reference_end_ _reference_start_Revelation 10:7_reference_end_ _reference_start_Revelation 10:8_reference_end_ _reference_start_Revelation 10:9_reference_end_ _reference_start_Revelation 10:10_reference_end_ _reference_start_Revelation 11:15_reference_end_ _reference_start_Revelation 12:7_reference_end_ _reference_start_Revelation 14:6_reference_end_ _reference_start_Revelation 14:8_reference_end_ _reference_start_Revelation 14:9_reference_end_ _reference_start_Revelation 14:10_reference_end_ _reference_start_Revelation 14:15_reference_end_ _reference_start_Revelation 14:17_reference_end_ _reference_start_Revelation 14:18_reference_end_ _reference_start_Revelation 14:19_reference_end_ _reference_start_Revelation 15:1_reference_end_ _reference_start_Revelation 15:6_reference_end_ _reference_start_Revelation 15:7_reference_end_ _reference_start_Revelation 15:8_reference_end_ _reference_start_Revelation 16:1_reference_end_ _reference_start_Revelation 16:2_reference_end_ _reference_start_Revelation 16:3_reference_end_ _reference_start_Revelation 16:4_reference_end_ _reference_start_Revelation 16:5_reference_end_ _reference_start_Revelation 16:8_reference_end_ _reference_start_Revelation 16:10_reference_end_ _reference_start_Revelation 16:12_reference_end_ _reference_start_Revelation 16:17_reference_end_ _reference_start_Revelation 17:1_reference_end_ _reference_start_Revelation 17:7_reference_end_ _reference_start_Revelation 18:1_reference_end_ _reference_start_Revelation 18:21_reference_end_ _reference_start_Revelation 19:9_reference_end_ _reference_start_Revelation 19:17_reference_end_ _reference_start_Revelation 20:1_reference_end_ _reference_start_Revelation 21:9_reference_end_ _reference_start_Revelation 21:12_reference_end_ _reference_start_Revelation 21:17_reference_end_ _reference_start_Revelation 22:6_reference_end_ _reference_start_Revelation 22:8_reference_end_ _reference_start_Revelation 22:16_reference_end_ \en2 2. A morally fallen supernatural, spiritual being who serves Satan \gtrm aggelov \trnl angelos _reference_start_Matthew 25:41_reference_end_ _reference_start_1 Corinthians 6:3_reference_end_ _reference_start_2 Peter 2:4_reference_end_ _reference_start_Jude 1:6_reference_end_ _reference_start_Revelation 9:11_reference_end_ _reference_start_Revelation 9:14_reference_end_ _reference_start_Revelation 9:15_reference_end_ _reference_start_Revelation 12:7_reference_end_ _reference_start_Revelation 12:9_reference_end_ \en2 3. A human appointed to deliver a message or to do a particular task \gtrm aggelov \trnl angelos _reference_start_Matthew 11:10_reference_end_ _reference_start_Mark 1:2_reference_end_ _reference_start_Luke 7:24_reference_end_ _reference_start_Luke 7:27_reference_end_ _reference_start_Luke 9:52_reference_end_ _reference_start_James 2:25_reference_end_ \en2 4. A figurative use \gtrm aggelov \trnl angelos _reference_start_2 Corinthians 12:7_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( B B B B B B B B B B B B B B B B B B B B ~B }B |B {B z= y< x< w:  v:  u: t: s: r: q: p: o: n: m: l: k6 j6 i5 h3 g0 f0 e0 d/  c.  b. a. `-& _, ^, ], \,  [,  Z, Y, X, W,  V,  U, T,  ?tfXJ<. xj\N@2$|n`RD6( Q( P/  O; N* 4 M* L* K) J( IB HB  GB  FB  EB DA C= B. A() @B ?B >B =B <B ;B :B 9B 8B 7B 6B 5B 4B 3B 2B 1B 0B /B .B -B ,B +B *B )B (B 'B &B %B $B #B "B !B B B B  B  B B B  B  B  B  B  B B  B 2. To be appointed by the Holy Spirit to a special position \gtrm aleifw \trnl aleiphõ \xref [L&N 47.14] \def anoint, put liquid (oil or perfume) on \gtrm criw \trnl chriõ \xref [L&N 37.107] \def to appoint, assign, bless, endow (extension of “anoint”) \gtrm crisma \trnl chrisma \xref [L&N 37.107] \def appointment, endowment, anointing \gtrm epicriw \trnl epichriõ \xref [L&N 85.51] \def to place on \gtrm murizw \trnl murizõ \xref [L&N 6.206] \def to anoint with perfume (for burial) \gtrm encriw \trnl enchriõ \xref [L&N 47.15] \def to smear or rub on as an ointment \gtrm cristov \trnl christos \xref [L&N 37.107] \def The Anointed One, Messiah, Christ \en2 1. To put oil (or a similar substance) on somebody \gtrm aleifw \trnl aleiphõ _reference_start_Matthew 6:17_reference_end_ _reference_start_Mark 6:13_reference_end_ _reference_start_Mark 16:1_reference_end_ LUK 7:38, 46 (2 occurrences) _reference_start_Luke 7:38_reference_end_ _reference_start_Luke 7:46_reference_end_ _reference_start_John 11:2_reference_end_ _reference_start_John 12:3_reference_end_ _reference_start_James 5:14_reference_end_ \gtrm criw \trnl chriõ HEB 1:9 (figurative oil) _reference_start_Hebrews 1:9_reference_end_ \gtrm epicriw \trnl epichriõ _reference_start_John 9:6_reference_end_ _reference_start_John 9:11_reference_end_ \gtrm murizw \trnl murizõ _reference_start_Mark 14:8_reference_end_ \gtrm encriw \trnl enchriõ REV 3:18 (figurative salve) _reference_start_Revelation 3:18_reference_end_ \en2 2. To be appointed by the Holy Spirit to a special position \gtrm criw \trnl chriõ _reference_start_Luke 4:18_reference_end_ _reference_start_Acts 4:27_reference_end_ _reference_start_Acts 10:38_reference_end_ _reference_start_2 Corinthians 1:21_reference_end_ \gtrm crisma \trnl chrisma 1JN 2:20, 27 (2 occurrences) _reference_start_1 John 2:20_reference_end_ _reference_start_1 John 2:27_reference_end_ \gtrm cristov \trnl christos _reference_start_Acts 4:26_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( , , * * * * * ) ) (  : 2 / +  * 1 B  B  B ~B }B |B {B zB yB xB wB vB uB tB sB rB  qB  pB  oB  nB  mB  l5 k5 j)  i( h? g> f> e> d, c> b> a/ `, & _, ^* ]B \) [+ Z+  Y: X; W+  V+  U*. T*& S) R) to be Christ \gtrm qjrion \trnl thærion \xref [L&N 4.3] \def animal \xref [L&N 4.4] \def quadruped \xref [L&N 88.119] \def wicked person \en2 1. One who opposes the Christ (i.e. an enemy of) \gtrm anticristov \trnl antichristos 1JN 2:18 (2 occurrences), 22; 4:3 _reference_start_1 John 2:18_reference_end_ _reference_start_1 John 2:22_reference_end_ _reference_start_1 John 4:3_reference_end_ _reference_start_2 John 1:7_reference_end_ \en2 2. One who claims the title Christ (i.e. an alternative of) \gtrm yeudocristov \trnl pseudochristos _reference_start_Matthew 24:24_reference_end_ _reference_start_Mark 13:22_reference_end_ \en2 3. One who claims the title of God \itrm Antichrist implied _reference_start_2 Thessalonians 2:3_reference_end_ _reference_start_2 Thessalonians 2:4_reference_end_ \en2 4. The (first) beast of Revelation \gtrm qjrion \trnl thærion REV 11:7 (first beast?); 13:1, 2, 3, 4 (3 occurrences), 5, 12; 17:3, 7, 8, 11, 12, 13, 16, 17; 19:19, 20 (2 occurrences); 20:4, 10 _reference_start_Revelation 11:7_reference_end_ _reference_start_Revelation 13:1_reference_end_ _reference_start_Revelation 13:2_reference_end_ _reference_start_Revelation 13:3_reference_end_ _reference_start_Revelation 13:4_reference_end_ _reference_start_Revelation 13:5_reference_end_ _reference_start_Revelation 13:12_reference_end_ _reference_start_Revelation 17:3_reference_end_ _reference_start_Revelation 17:7_reference_end_ _reference_start_Revelation 17:8_reference_end_ _reference_start_Revelation 17:11_reference_end_ _reference_start_Revelation 17:12_reference_end_ _reference_start_Revelation 17:13_reference_end_ _reference_start_Revelation 17:16_reference_end_ _reference_start_Revelation 17:17_reference_end_ _reference_start_Revelation 19:19_reference_end_ _reference_start_Revelation 19:20_reference_end_ _reference_start_Revelation 20:4_reference_end_ _reference_start_Revelation 20:10_reference_end_ \itrm Antichrist implied _reference_start_Revelation 13:6_reference_end_ _reference_start_Revelation 13:7_reference_end_ >, !!+ANTICIPATEanticipate\see (see HOPE)2 ==}ANTICHRIST, FALSE CHRISTantichrist, false christ\o1 1. One who opposes the Christ (i.e. an enemy of) \o1 2. One who claims the title Christ (i.e. an alternative of) \o1 3. One who claims the title of God \o1 4. The (first) beast of Revelation \gtrm anticristov \trnl antichristos \xref [L&N 53.83] \def one who opposes Christ and usurps his role \gtrm yeudocristov \trnl pseudochristos \xref [L&N 53.84] \def one who falsely claims ference_start_Hebrews 3:1_reference_end_ \en2 2. An appointed representative of Jesus Christ for certain functions \gtrm apostolov \trnl apostolos _reference_start_Matthew 10:2_reference_end_ MRK 3:14 (textual variant); 6:30 (alternate sense 1.) _reference_start_Mark 3:14_reference_end_ _reference_start_Mark 6:30_reference_end_ LUK 6:13; 9:10 (alternate sense 1.); 17:5; 22:14; 24:10 _reference_start_Luke 6:13_reference_end_ _reference_start_Luke 9:10_reference_end_ _reference_start_Luke 17:5_reference_end_ _reference_start_Luke 22:14_reference_end_ _reference_start_Luke 24:10_reference_end_ _reference_start_Acts 1:2_reference_end_ _reference_start_Acts 1:26_reference_end_ _reference_start_Acts 2:37_reference_end_ _reference_start_Acts 2:42_reference_end_ _reference_start_Acts 2:43_reference_end_ _reference_start_Acts 4:33_reference_end_ _reference_start_Acts 4:35_reference_end_ _reference_start_Acts 4:36_reference_end_ _reference_start_Acts 4:37_reference_end_ _reference_start_Acts 5:2_reference_end_ _reference_start_Acts 5:12_reference_end_ _reference_start_Acts 5:18_reference_end_ _reference_start_Acts 5:29_reference_end_ _reference_start_Acts 5:40_reference_end_ _reference_start_Acts 6:6_reference_end_ _reference_start_Acts 8:1_reference_end_ _reference_start_Acts 8:14_reference_end_ _reference_start_Acts 8:18_reference_end_ _reference_start_Acts 9:27_reference_end_ _reference_start_Acts 11:1_reference_end_ _reference_start_Acts 14:4_reference_end_ _reference_start_Acts 14:14_reference_end_ _reference_start_Acts 15:2_reference_end_ _reference_start_Acts 15:4_reference_end_ _reference_start_Acts 15:6_reference_end_ _reference_start_Acts 15:22_reference_end_ _reference_start_Acts 15:23_reference_end_ _reference_start_Acts 16:4_reference_end_ _reference_start_Romans 1:1_reference_end_ _reference_start_Romans 11:13_reference_end_ _reference_start_Romans 16:7_reference_end_ 1CO 1:1; 4:9; 9:1, 2, 5; 12:28, 29; 15:7, 9 (2 occurrences) _reference_start_1 Corinthians 1:1_reference_end_ _reference_start_1 Corinthians 4:9_reference_end_ _reference_start_1 Corinthians 9:1_reference_end_ _reference_start_1 Corinthians 9:2_reference_end_ _reference_start_1 Corinthians 9:5_reference_end_ _reference_start_1 Corinthians 12:28_reference_end_ _reference_start_1 Corinthians 12:29_reference_end_ _reference_start_1 Corinthians 15:7_reference_end_ _reference_start_1 Corinthians 15:9_reference_end_ 2CO 1:1; 11:5 (false (sarcasm)), 13; 12:11 (false (sarcasm)), 12 _reference_start_2 Corinthians 1:1_reference_end_ _reference_start_2 Corinthians 11:5_reference_end_ _reference_start_2 Corinthians 11:13_reference_end_ _reference_start_2 Corinthians 12:11_reference_end_ _reference_start_Galatians 1:1_reference_end_ _reference_start_Galatians 1:17_reference_end_ _reference_start_Galatians 1:19_reference_end_ _reference_start_Ephesians 1:1_reference_end_ _reference_start_Ephesians 2:20_reference_end_ _reference_start_Ephesians 3:5_reference_end_ _reference_start_Ephesians 4:11_reference_end_ _reference_start_Colossians 1:1_reference_end_ _reference_start_1 Thessalonians 2:6_reference_end_ _reference_start_1 Timothy 1:1_reference_end_ _reference_start_1 Timothy 2:7_reference_end_ _reference_start_2 Timothy 1:1_reference_end_ _reference_start_2 Timothy 1:11_reference_end_ _reference_start_Titus 1:1_reference_end_ _reference_start_1 Peter 1:1_reference_end_ _reference_start_2 Peter 1:1_reference_end_ _reference_start_2 Peter 3:2_reference_end_ _reference_start_Jude 1:17_reference_end_ REV 2:2 (false); 18:20; 21:14 _reference_start_Revelation 2:2_reference_end_ _reference_start_Revelation 18:20_reference_end_ _reference_start_Revelation 21:14_reference_end_ \gtrm apostolj \trnl apostolæ _reference_start_Galatians 2:8_reference_end_ \gtrm yeudapostolov \trnl pseudapostolos _reference_start_2 Corinthians 11:13_reference_end_ \en2 3. The position or ministry of being an apostle \gtrm apostolj \trnl apostolæ _reference_start_Acts 1:25_reference_end_ _reference_start_Romans 1:5_reference_end_ _reference_start_1 Corinthians 9:2_reference_end_ |N| ]]sAUTHORITY, TERMS FOR PEOPLE IN AUTHORITYauthority, terms for people in authority\see (see also Greek words related to “kurios”, “krinõ”, and “dunamis”) \o1 1. Terms for people in autho APOSTLEapostle\o1 1. An appointed representative \o1 2. An appointed representative of Jesus Christ for certain functions \o1 3. The position or ministry of being an apostle \gtrm apostolov \trnl apostolos \xref [L&N 53.74] \def apostle \xref [L&N 33.194] \def messenger \gtrm apostolj \trnl apostolæ \xref [L&N 53.73] \def apostleship \gtrm yeudapostolov \trnl pseudapostolos \xref [L&N 53.75] \def false apostle \en2 1. An appointed representative \gtrm apostolov \trnl apostolos _reference_start_Luke 11:49_reference_end_ _reference_start_John 13:16_reference_end_ _reference_start_2 Corinthians 8:23_reference_end_ _reference_start_Philippians 2:25_reference_end_ _re ?tfXJ<. xj\N@2$|n`RD6( OB NB MB LA K= J= I< H8 G7 F7 E6 D6 C4 B3 A1 @1 ?1 >1 =0 <0 ;0 :/ 9/ 8/  7/ 6. 5. 4.  3.  2.  1.  0.  /. .. -- ,- +- *, ), (, ', &, %, $, #, ",  !,  , , , , ,( , , , , ,% ,$ ,# ,! ,+ ,* ,% ?tfXJ<. xj\N@2$|n`RD6( . + + +  *  ) (  ( " -  , -  -  -  * , , ~, },  |, {, z, y, x+ * w+0 v+ u+ t* s*# r* q6 p, o*4 nB m. l. k, j, i,# h, g* f* e* : d* c*) b( a(  `(  _8 ^< ]8 \0 [. Z. Y- X* W* V* U* * T.  S- R, Q/ P0rity \o2 a. Manager, steward \o2 b. Ruler, person in charge \o2 c. Ruler, high official \o2 d. Jewish council member \o2 e. City official \o2 f. Those who have authority in general \o2 g. Ruler, referring to the ruler of evil spirits \o2 h. Powerful spiritual beings, authorities in the supernatural world \o1 2. Concept of authority \o2 a. For ruling \o2 b. For managing as a responsible steward \o2 c. For judging \o2 d. For controlling \o2 e. For commanding and teaching \o2 f. Freedom of self determination, general ability, power \o2 g. Supernatural authority \o1 3. Authoritative action \o2 a. To reign over \o2 b. To usurp authority, dominate, control \o2 c. To manage, to be steward \o2 d. To receive, to acknowledge the authority of someone, to obey \o1 4. Associations with authority \o2 a. Jurisdiction \o2 b. Symbol of authority \o2 c. By means of an authority \gtrm exousia \trnl exousia \xref [L&N 37.35] \def authority to rule \xref [L&N 37.36] \def jurisdiction \xref [L&N 37.37] \def symbol of authority \xref [L&N 37.38] \def one authorized to rule, a ruler \xref [L&N 37.41] \def authoritative teaching \xref [L&N 37.13] \def control \xref [L&N 76.12] \def power \xref [L&N 12.44] \def supernatural power \xref [L&N 30.122] \def right to judge \gtrm katexousiazw \trnl katexousiazõ \xref [L&N 37.48] \def reign, exercise authority (over) \gtrm exousiazw \trnl exousiazõ \xref [L&N 37.48] \def bring under power, exercise authority \gtrm arcj \trnl archæ \xref [L&N 37.55] \def sphere of authority \xref [L&N 37.56] \def ruler \xref [L&N 12.44] \def supernatural power \note Other more basic senses: beginning, first cause, elementary aspect, corner \gtrm arcw \trnl archõ \xref [L&N 37.54] \def to rule, reign \gtrm arcwn \trnl archõn \xref [L&N 37.56] \def ruler, governor, officer-in-charge \xref [L&N 56.29] \def judge \xref [L&N 37.95] \def member of the Jewish Council \xref [L&N 12.44] \def supernatural power \gtrm politarcjv \trnl politarchæs \xref [L&N 37.93] \def city official(s) \gtrm dunastjv \trnl dunastæs \xref [L&N 37.62] \def official ruler \gtrm dunatov \trnl dunatos \xref [L&N 87.43] \def important people \note Other senses: possible, able, competent, The Mighty One \gtrm oikonomew \trnl oikonomeõ \def to manage, be steward \gtrm oikonomia \trnl oikonomia \xref [L&N 46.1] \def management of a household, stewardship \xref [L&N 42.25] \def task \xref [L&N 30.68] \def plan \gtrm oikonomov \trnl oikonomos \xref [L&N 46.4] \def manager of a household \xref [L&N 37.39] \def administrator \xref [L&N 57.231] \def city treasurer \gtrm auqentew \trnl authenteõ \xref [L&N 37.21] \def control, (usurp authority over) \gtrm epidecomai \trnl epidechomai \xref [L&N 36.14] \def obey, acknowledge ones authority \xref [L&N 34.53] \def welcome, receive \gtrm epitagj \trnl epitagæ \xref [L&N 37.42] \def authority \xref [L&N 33.326] \def ordinance \gtrm doxa \trnl doxa \xref [L&N 12.49] \def glorious being(s), dignitaries, authorities \see (see also GLORY for other senses) \gtrm kata, en \trnl kata, en \xref [L&N 90.29] \def by, in (the authority of) \note There are many other varied senses \gtrm krinw \trnl krinõ \xref [L&N 37.49] \def to govern \note Other senses: to decide, prefer, evaluate, hold a view, make legal decision, condemn \gtrm ktisiv \trnl ktisis \xref [L&N 42.39] \def institution or \xref [L&N 37.43] \def instituted authority 1PE 2:13 \note Other senses: universe, creation, creature \gtrm kurieuw \trnl kurieuõ \xref [L&N 37.50] \def to lord it over, rule \gtrm kuriotjv \trnl kuriotæs \xref [L&N 37.52] \def ruling power \xref [L&N 12.44] \def supernatural power \note This does not exhaustively cover the components of “lordship”, “rulership”, and “power” \en2 1. Terms for people in authority \en3 a. Manager, steward \gtrm oikonomov \trnl oikonomos _reference_start_Luke 12:42_reference_end_ _reference_start_Luke 16:1_reference_end_ _reference_start_Luke 16:3_reference_end_ _reference_start_Luke 16:8_reference_end_ _reference_start_Romans 16:23_reference_end_ _reference_start_1 Corinthians 4:1_reference_end_ _reference_start_1 Corinthians 4:2_reference_end_ _reference_start_Galatians 4:2_reference_end_ _reference_start_Titus 1:7_reference_end_ _reference_start_1 Peter 4:10_reference_end_ \en3 b. Ruler, person in charge \gtrm arcj \trnl archæ _reference_start_Titus 3:1_reference_end_ \gtrm arcwn \trnl archõn _reference_start_Matthew 9:18_reference_end_ _reference_start_Matthew 9:23_reference_end_ _reference_start_Matthew 20:25_reference_end_ LUK 8:41; 12:11 (alternate sense 1.d.), 58; 14:1; 18:18 _reference_start_Luke 8:41_reference_end_ _reference_start_Luke 12:11_reference_end_ _reference_start_Luke 12:58_reference_end_ _reference_start_Luke 14:1_reference_end_ _reference_start_Luke 18:18_reference_end_ ACT 7:27, 35 (2 occurrences); 16:19; 23:5 _reference_start_Acts 7:27_reference_end_ _reference_start_Acts 7:35_reference_end_ _reference_start_Acts 16:19_reference_end_ _reference_start_Acts 23:5_reference_end_ _reference_start_1 Corinthians 2:6_reference_end_ _reference_start_1 Corinthians 2:8_reference_end_ _reference_start_Revelation 1:5_reference_end_ \en3 c. Ruler, high official \gtrm dunastjv \trnl dunastæs _reference_start_Luke 1:52_reference_end_ _reference_start_Acts 8:27_reference_end_ _reference_start_1 Timothy 6:15_reference_end_ \en3 d. Jewish council member \gtrm arcwn \trnl archõn _reference_start_Luke 23:13_reference_end_ _reference_start_Luke 23:35_reference_end_ _reference_start_Luke 24:20_reference_end_ _reference_start_John 3:1_reference_end_ _reference_start_John 7:26_reference_end_ _reference_start_John 7:48_reference_end_ _reference_start_John 12:42_reference_end_ _reference_start_Acts 3:17_reference_end_ _reference_start_Acts 4:5_reference_end_ _reference_start_Acts 4:8_reference_end_ _reference_start_Acts 4:26_reference_end_ _reference_start_Acts 13:27_reference_end_ _reference_start_Acts 14:5_reference_end_ \en3 e. City official \gtrm politarcjv \trnl politarchæs _reference_start_Acts 17:6_reference_end_ _reference_start_Acts 17:8_reference_end_ \en3 f. Those who have authority in general \gtrm exousia \trnl exousia _reference_start_Luke 12:11_reference_end_ ROM 13:1 (2 occurrences), 2, 3 (2 occurrences) _reference_start_Romans 13:1_reference_end_ _reference_start_Romans 13:2_reference_end_ _reference_start_Romans 13:3_reference_end_ \gtrm dunatov \trnl dunatos _reference_start_Acts 25:5_reference_end_ \itrm Implied ROM 13:6 (context of 13:3) _reference_start_Romans 13:6_reference_end_ \en3 g. Ruler, referring to the ruler of evil spirits \gtrm arcwn \trnl archõn _reference_start_Matthew 9:34_reference_end_ _reference_start_Matthew 12:24_reference_end_ _reference_start_Mark 3:22_reference_end_ _reference_start_Luke 11:15_reference_end_ _reference_start_John 12:31_reference_end_ _reference_start_John 14:30_reference_end_ _reference_start_John 16:11_reference_end_ \en3 h. Powerful spiritual beings, authorities in the supernatural world \gtrm exousia \trnl exousia 1CO 15:24 (alternate sense 1.b. for “rule”) _reference_start_1 Corinthians 15:24_reference_end_ _reference_start_Ephesians 1:21_reference_end_ _reference_start_Ephesians 3:10_reference_end_ _reference_start_Ephesians 6:12_reference_end_ COL 1:16 (alternate sense 1.b. for “authorities”); 2:10 (alternate sense 1.b.), 15 _reference_start_Colossians 1:16_reference_end_ _reference_start_Colossians 2:10_reference_end_ _reference_start_Colossians 2:15_reference_end_ _reference_start_1 Peter 3:22_reference_end_ COL 1:16 (COL 1:16 and 1:10 include both supernatural and nonsupernatural powers; COL 2:15 is specifically spirit powers) _reference_start_Colossians 1:16_reference_end_ \gtrm arcj \trnl archæ _reference_start_1 Corinthians 15:24_reference_end_ _reference_start_Ephesians 1:21_reference_end_ _reference_start_Ephesians 3:10_reference_end_ _reference_start_Ephesians 6:12_reference_end_ _reference_start_Colossians 1:16_reference_end_ _reference_start_Romans 8:38_reference_end_ _reference_start_Colossians 1:16_reference_end_ _reference_start_Colossians 2:10_reference_end_ _reference_start_Colossians 2:15_reference_end_ \gtrm dunastjv \trnl dunastæs _reference_start_1 Timothy 6:15_reference_end_ \gtrm kuriotjv \trnl kuriotæs _reference_start_Ephesians 1:21_reference_end_ _reference_start_Colossians 1:16_reference_end_ \en2 2. Concept of authority \en3 a. For ruling \gtrm exousia \trnl exousia _reference_start_Luke 19:17_reference_end_ _reference_start_Luke 20:20_reference_end_ _reference_start_Luke 22:53_reference_end_ JHN 17:2 (alternate sense 2.d.) _reference_start_John 17:2_reference_end_ _reference_start_Acts 26:10_reference_end_ _reference_start_Acts 26:12_reference_end_ _reference_start_Ephesians 2:2_reference_end_ _reference_start_Jude 1:25_reference_end_ REV 2:26; 12:10; 13:7 (alternate sense 2.d.), 12; 17:12, 13; 18:1 (alternate sense 2.d.) _reference_start_Revelation 2:26_reference_end_ _reference_start_Revelation 12:10_reference_end_ _reference_start_Revelation 13:7_reference_end_ _reference_start_Revelation 13:12_reference_end_ _reference_start_Revelation 17:12_reference_end_ _reference_start_Revelation 17:13_reference_end_ _reference_start_Revelation 18:1_reference_end_ \gtrm exousiazw \trnl exousiazõ _reference_start_Luke 22:25_reference_end_ \gtrm doxa \trnl doxa _reference_start_Jude 1:8_reference_end_ \gtrm kuriotjv \trnl kuriotæs _reference_start_2 Peter 2:10_reference_end_ _reference_start_Jude 1:8_reference_end_ \en3 b. For managing as a responsible steward \gtrm oikonomia \trnl oikonomia _reference_start_Luke 16:2_reference_end_ _reference_start_Luke 16:3_reference_end_ _reference_start_Luke 16:4_reference_end_ _reference_start_1 Corinthians 9:17_reference_end_ \en3 c. For judging \gtrm exousia \trnl exousia _reference_start_Matthew 9:6_reference_end_ _reference_start_Matthew 9:8_reference_end_ _reference_start_Mark 2:10_reference_end_ LUK 5:24; 12:5 (alternate sense 2.d.) _reference_start_Luke 5:24_reference_end_ _reference_start_Luke 12:5_reference_end_ _reference_start_John 5:27_reference_end_ _reference_start_Acts 9:14_reference_end_ \itrm Implied JHN 5:30 (literally: on my own) _reference_start_John 5:30_reference_end_ \en3 d. For controlling \gtrm exousia \trnl exousia _reference_start_Luke 10:19_reference_end_ JHN 19:10 (2 occurrences), 11 _reference_start_John 19:10_reference_end_ _reference_start_John 19:11_reference_end_ REV 6:8; 9:3 (2 occurrences), 10, 19; 11:6 (2 occurrences); 20:6 _reference_start_Revelation 6:8_reference_end_ _reference_start_Revelation 9:3_reference_end_ _reference_start_Revelation 9:10_reference_end_ _reference_start_Revelation 9:19_reference_end_ _reference_start_Revelation 11:6_reference_end_ _reference_start_Revelation 20:6_reference_end_ \gtrm exousiazw \trnl exousiazõ _reference_start_1 Corinthians 6:12_reference_end_ \en3 e. For commanding and teaching \gtrm exousia \trnl exousia MAT 8:9; 7:29; 10:1; 21:23 (2 occurrences), 24, 27; 28:18 _reference_start_Matthew 8:9_reference_end_ _reference_start_Matthew 7:29_reference_end_ _reference_start_Matthew 10:1_reference_end_ _reference_start_Matthew 21:23_reference_end_ _reference_start_Matthew 21:24_reference_end_ _reference_start_Matthew 21:27_reference_end_ _reference_start_Matthew 28:18_reference_end_ MRK 1:22, 27; 3:15; 6:7; 11:28 (2 occurrences), 29, 33; 13:34 _reference_start_Mark 1:22_reference_end_ _reference_start_Mark 1:27_reference_end_ _reference_start_Mark 3:15_reference_end_ _reference_start_Mark 6:7_reference_end_ _reference_start_Mark 11:28_reference_end_ _reference_start_Mark 11:29_reference_end_ _reference_start_Mark 11:33_reference_end_ _reference_start_Mark 13:34_reference_end_ LUK 4:32, 36; 7:8; 9:1; 20:2 (2 occurrences), 8 _reference_start_Luke 4:32_reference_end_ _reference_start_Luke 4:36_reference_end_ _reference_start_Luke 7:8_reference_end_ _reference_start_Luke 9:1_reference_end_ _reference_start_Luke 20:2_reference_end_ _reference_start_Luke 20:8_reference_end_ _reference_start_2 Corinthians 10:8_reference_end_ _reference_start_2 Corinthians 13:10_reference_end_ _reference_start_Revelation 13:2_reference_end_ _reference_start_Revelation 13:4_reference_end_ \gtrm epitagj \trnl epitagæ _reference_start_Titus 2:15_reference_end_ \gtrm kata, en \trnl kata, en _reference_start_2 Corinthians 11:17_reference_end_ \itrm Implied _reference_start_John 7:17_reference_end_ _reference_start_John 7:18_reference_end_ _reference_start_John 8:28_reference_end_ _reference_start_John 12:49_reference_end_ _reference_start_John 14:10_reference_end_ _reference_start_John 16:13_reference_end_ 1CO 9:8 (literally: as a man) _reference_start_1 Corinthians 9:8_reference_end_ \en3 f. Freedom of self determination, general ability, power \gtrm exousia \trnl exousia JHN 1:12; 10:18 (2 occurrences) _reference_start_John 1:12_reference_end_ _reference_start_John 10:18_reference_end_ _reference_start_Acts 1:7_reference_end_ _reference_start_Acts 5:4_reference_end_ _reference_start_Romans 9:21_reference_end_ 1CO 7:37; 8:9; 9:4, 5, 6, 12 (2 occurrences), 18 _reference_start_1 Corinthians 7:37_reference_end_ _reference_start_1 Corinthians 8:9_reference_end_ _reference_start_1 Corinthians 9:4_reference_end_ _reference_start_1 Corinthians 9:5_reference_end_ _reference_start_1 Corinthians 9:6_reference_end_ _reference_start_1 Corinthians 9:12_reference_end_ _reference_start_1 Corinthians 9:18_reference_end_ _reference_start_2 Thessalonians 3:9_reference_end_ _reference_start_Hebrews 13:10_reference_end_ _reference_start_Revelation 22:14_reference_end_ \gtrm exousiazw \trnl exousiazõ 1CO 7:4 (2 occurrences) _reference_start_1 Corinthians 7:4_reference_end_ \en3 g. Supernatural authority \gtrm exousia \trnl exousia _reference_start_Acts 8:19_reference_end_ _reference_start_Acts 26:18_reference_end_ \en2 3. Authoritative action \en3 a. To reign over \gtrm exousia \trnl exousia _reference_start_Revelation 13:5_reference_end_ \gtrm katexousiazw \trnl katexousiazõ _reference_start_Matthew 20:25_reference_end_ _reference_start_Mark 10:42_reference_end_ \gtrm arcw \trnl archõ _reference_start_Matthew 10:42_reference_end_ _reference_start_Romans 15:12_reference_end_ \gtrm krinw \trnl krinõ _reference_start_Matthew 19:28_reference_end_ _reference_start_Luke 22:30_reference_end_ \en3 b. To usurp authority, dominate, control \gtrm auqentew \trnl authenteõ _reference_start_1 Timothy 2:12_reference_end_ \en3 c. To manage, to be steward \en3 d. To receive, to acknowledge the authority of someone, to obey \gtrm epidecomai \trnl epidechomai _reference_start_3 John 1:9_reference_end_ \en2 4. Associations with authority \en3 a. Jurisdiction \gtrm exousia \trnl exousia _reference_start_Luke 4:6_reference_end_ _reference_start_Luke 23:7_reference_end_ COL 1:13 (alternate sense 2.d.) _reference_start_Colossians 1:13_reference_end_ \gtrm arcj \trnl archæ LUK 20:20 (2 occurrences) ( alternate senses 2.a.-2.c.) _reference_start_Luke 20:20_reference_end_ \en3 b. Symbol of authority \gtrm exousia \trnl exousia _reference_start_1 Corinthians 11:10_reference_end_ \en3 c. By means of an authority \gtrm arcwn \trnl archõn _reference_start_Matthew 9:34_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( M( L( K. JB IB  HB  GB FB  EB D+ C+ B*  A+ @,  ?+ >*  =* <) ;(  :(  9.  8* 7* 6* 5A 4= 3A 2* 1B 0B /B .B -B  ,B +B *A )1 (, ', &+ %*5 $* #* "3 !1 6 3 3 3 -& 3 1 1 1 . 3 < 3 3 3 1 1 1 ?tfXJ<. xj\N@2$|n`RD6( * 3 * * @ 6 * ( - ( * ) * ( B  , ~, }. |B {: z5 y.  x. w.  v.  u.  t. s.% r-  q, p, o+  n+ m.  l+ k+ j+ 1 i+ h+ g+ f/  e8 dB  cB  b/ a/  `* _* ^*  ]* \*$ [* Z) " Y) ! X)  W)  V) U) T) S) R( Q( P( O( N(  ?tfXJ<. xj\N@2$|n`RD6( K,! J, I, 0 H, / G,  F,& E,$ D, C, B, A,) @,& ?) >( =, <, ;, :,  9, % 8, 7* 6* 5* 4)  3) 2( 1( 0, /,  ., -+ ( ,+ ++ *+ )+ (+ '+! &+ %+ $+ #+ "* !* * * * * ) ) ) ) ) ) ( ( ( ( : : ) * & ( " . 49] \def cause religious experience \xref [L&N 53.31] \def wash \gtrm baptisma \trnl baptisma \xref [L&N 53.41] \def baptism \xref [L&N 24.82] \def suffer severely (baptisma baptizomai) \gtrm baptismov \trnl baptismos \xref [L&N 53.41] \def baptism \xref [L&N 53.31] \def washing \gtrm baptistjv \trnl baptistæs \xref [L&N 53.42] \def baptizer \en2 1. Jewish custom of baptism before the time of Christ \gtrm baptizw \trnl baptizõ _reference_start_Luke 11:38_reference_end_ \gtrm baptismov \trnl baptismos _reference_start_Mark 7:4_reference_end_ _reference_start_Hebrews 6:2_reference_end_ _reference_start_Hebrews 9:10_reference_end_ \en2 2. The baptism of John \gtrm baptizw \trnl baptizõ _reference_start_Matthew 3:6_reference_end_ _reference_start_Matthew 3:11_reference_end_ _reference_start_Matthew 3:13_reference_end_ _reference_start_Matthew 3:16_reference_end_ _reference_start_Mark 1:4_reference_end_ _reference_start_Mark 1:5_reference_end_ _reference_start_Mark 1:8_reference_end_ _reference_start_Mark 1:9_reference_end_ _reference_start_Mark 6:14_reference_end_ _reference_start_Mark 6:24_reference_end_ LUK 3:7, 12, 16, 21 (2 occurrences); 7:29, 30 _reference_start_Luke 3:7_reference_end_ _reference_start_Luke 3:12_reference_end_ _reference_start_Luke 3:16_reference_end_ _reference_start_Luke 3:21_reference_end_ _reference_start_Luke 7:29_reference_end_ _reference_start_Luke 7:30_reference_end_ JHN 1:25, 26, 28, 31, 33; 3:22 (by Christ's disciples), 23 (2 occurrences), 26 (by Christ's disciples); 4:1 (by Christ's disciples), 2 (by Christ's disciples); 10:40 _reference_start_John 1:25_reference_end_ _reference_start_John 1:26_reference_end_ _reference_start_John 1:28_reference_end_ _reference_start_John 1:31_reference_end_ _reference_start_John 1:33_reference_end_ _reference_start_John 3:22_reference_end_ _reference_start_John 3:23_reference_end_ _reference_start_John 3:26_reference_end_ _reference_start_John 4:1_reference_end_ _reference_start_John 4:2_reference_end_ _reference_start_John 10:40_reference_end_ ACT 1:5 (2 occurrences); 11:16; 19:4 _reference_start_Acts 1:5_reference_end_ _reference_start_Acts 11:16_reference_end_ _reference_start_Acts 19:4_reference_end_ \gtrm baptisma \trnl baptisma _reference_start_Matthew 3:7_reference_end_ _reference_start_Matthew 21:25_reference_end_ _reference_start_Mark 1:4_reference_end_ _reference_start_Mark 11:30_reference_end_ _reference_start_Luke 3:3_reference_end_ _reference_start_Luke 7:29_reference_end_ _reference_start_Luke 20:4_reference_end_ _reference_start_Acts 1:22_reference_end_ _reference_start_Acts 10:37_reference_end_ _reference_start_Acts 13:24_reference_end_ _reference_start_Acts 18:25_reference_end_ _reference_start_Acts 19:3_reference_end_ _reference_start_Acts 19:4_reference_end_ \en2 3. Christian baptism \gtrm baptizw \trnl baptizõ _reference_start_Matthew 28:19_reference_end_ _reference_start_Mark 16:16_reference_end_ _reference_start_Acts 2:38_reference_end_ _reference_start_Acts 2:41_reference_end_ _reference_start_Acts 8:12_reference_end_ _reference_start_Acts 8:13_reference_end_ _reference_start_Acts 8:16_reference_end_ _reference_start_Acts 8:36_reference_end_ _reference_start_Acts 8:38_reference_end_ _reference_start_Acts 9:18_reference_end_ _reference_start_Acts 10:47_reference_end_ _reference_start_Acts 10:48_reference_end_ _reference_start_Acts 16:15_reference_end_ _reference_start_Acts 16:33_reference_end_ _reference_start_Acts 18:8_reference_end_ _reference_start_Acts 19:3_reference_end_ _reference_start_Acts 19:5_reference_end_ _reference_start_Acts 22:16_reference_end_ ROM 6:3 (2 occurrences) _reference_start_Romans 6:3_reference_end_ 1CO 1:13, 14, 15, 16 (2 occurrences), 17; 15:29 (2 occurrences) _reference_start_1 Corinthians 1:13_reference_end_ _reference_start_1 Corinthians 1:14_reference_end_ _reference_start_1 Corinthians 1:15_reference_end_ _reference_start_1 Corinthians 1:16_reference_end_ _reference_start_1 Corinthians 1:17_reference_end_ _reference_start_1 Corinthians 15:29_reference_end_ _reference_start_Galatians 3:27_reference_end_ \gtrm baptisma \trnl baptisma _reference_start_Romans 6:4_reference_end_ _reference_start_Ephesians 4:5_reference_end_ _reference_start_Colossians 2:12_reference_end_ _reference_start_1 Peter 3:21_reference_end_ \en2 4. Baptism in the Holy Spirit \gtrm baptizw \trnl baptizõ _reference_start_Matthew 3:11_reference_end_ _reference_start_Matthew 3:14_reference_end_ _reference_start_Mark 1:8_reference_end_ _reference_start_Luke 3:16_reference_end_ _reference_start_John 1:33_reference_end_ _reference_start_Acts 11:16_reference_end_ _reference_start_1 Corinthians 12:13_reference_end_ \en2 5. A titular reference to John the Baptist \gtrm baptistjv \trnl baptistæs _reference_start_Matthew 3:1_reference_end_ _reference_start_Matthew 11:11_reference_end_ _reference_start_Matthew 11:12_reference_end_ _reference_start_Matthew 14:2_reference_end_ _reference_start_Matthew 14:8_reference_end_ _reference_start_Matthew 16:14_reference_end_ _reference_start_Matthew 17:13_reference_end_ _reference_start_Mark 6:25_reference_end_ _reference_start_Mark 8:28_reference_end_ _reference_start_Luke 7:20_reference_end_ _reference_start_Luke 7:33_reference_end_ _reference_start_Luke 9:19_reference_end_ \en2 6. Figurative uses \en3 a. Water involved \gtrm baptizw \trnl baptizõ 1CO 10:2 (Moses) _reference_start_1 Corinthians 10:2_reference_end_ \en3 b. No water involved \gtrm baptizw \trnl baptizõ _reference_start_Mark 10:38_reference_end_ _reference_start_Mark 10:38_reference_end_ _reference_start_Mark 10:39_reference_end_ _reference_start_Mark 10:39_reference_end_ _reference_start_Luke 12:50_reference_end_ \gtrm baptisma \trnl baptisma _reference_start_Mark 10:38_reference_end_ _reference_start_Mark 10:39_reference_end_ _reference_start_Luke 12:50_reference_end_ \en2 7. A related word: baptõ \itrm Dip into water _reference_start_Luke 16:24_reference_end_ \itrm Dip into wine JHN 13:26 (2 occurrences) _reference_start_John 13:26_reference_end_ \itrm Dip into blood _reference_start_Revelation 19:13_reference_end_ [;QBELIEVERbeliever\see (see BROTHER, DISCIPLE, HOLY)--CBAPTIZE, BAPTISMbaptize, baptism\o1 1. Jewish custom of baptism before the time of Christ \o1 2. The baptism of John \o1 3. Christian baptism \o1 4. Baptism in the Holy Spirit \o1 5. A titular reference to John the Baptist \o1 6. Figurative uses \o2 a. Water involved \o2 b. No water involved \o1 7. A related word: baptõ \gtrm baptizw \trnl baptizõ \xref [L&N 53.41] \def baptize \xref [L&N 53. ?tfXJ<. xj\N@2$|n`RD6( + + + + +2 + + ) ) ) ) * )  ~)  })$ |(* {( zB y+  x* w* 2 v) ' u) & t* 2 s) ' r) ' q) & p) & o.  n*  m*! l* k) j) i( h( g( f( e( d( c( b. a,  `+! _* ^) ]( \( [< Z3 Y1 X- W0 V. U. T. S. R. Q. P- O, N, M, L,e \o2 b. To be unfaithful, to not do as one has promised \o2 c. Unbelief \o2 d. Unbelieving \o2 e. Faithless, unfaithful \o2 f. Unbelievable, incredible \gtrm pisteuw \trnl pisteuõ \xref [L&N 31.35] \def think to be true (verb) \xref [L&N 31.85] \def trust \xref [L&N 31.102] \def have Christian faith \xref [L&N 35.50] \def entrust \gtrm apistew \trnl apisteõ \xref [L&N 31.39] \def not think true (verb) \xref [L&N 31.97] \def not trust \xref [L&N 31.105] \def not believe \gtrm pistov \trnl pistos \xref [L&N 31.86] \def trusting (adjective) \gtrm apistov \trnl apistos \xref [L&N 31.40] \def unbelievable (adjective) \xref [L&N 31.98] \def lack in trust \gtrm pistiv \trnl pistis \xref [L&N 31.43] \def what can be believed (noun) \xref [L&N 31.85] \def trust \xref [L&N 31.88] \def trustworthiness \xref [L&N 31.102] \def Christian faith \xref [L&N 31.104] \def doctrine \xref [L&N 33.289] \def promise \gtrm apistia \trnl apistia \xref [L&N 31.89] \def not trustworthy (noun) \xref [L&N 31.97] \def not trusting \xref [L&N 31.105] \def not believing \gtrm pistow, pistoomai \trnl pistoõ, pistoomai \def to be assured of (verb) \gtrm peiqw \trnl peithõ \xref [L&N 33.301] \def persuade (verb) \xref [L&N 31.82] \def trust \xref [L&N 25.166] \def be assured (peithõ tæn kardian) \en2 1. To believe, to have faith, to trust (verb form) \en3 a. To believe in a person, to trust someone, to rely on someone \gtrm pisteuw \trnl pisteuõ _reference_start_Matthew 18:6_reference_end_ _reference_start_Matthew 27:42_reference_end_ _reference_start_Mark 5:36_reference_end_ _reference_start_Mark 9:23_reference_end_ _reference_start_Mark 9:24_reference_end_ _reference_start_Mark 9:42_reference_end_ _reference_start_Mark 15:32_reference_end_ _reference_start_Mark 16:16_reference_end_ _reference_start_Mark 16:17_reference_end_ JHN 1:7, 12, 50; 2:11, 23; 3:15, 16, 18 (3 occurrences), 36; 4:39, 41, 42, 48, 53; 5:24, 38, 44; 6:29, 30, 35, 36, 40, 47, 64 (2 occurrences), 69; 7:5, 31, 38, 39, 48; 8:30, 31; 9:35, 36, 38; 10:25, 26, 37, 38 (2 occurrences), 42; 11:15, 25, 26, 40, 45, 48; 12:11, 36, 37, 39, 42, 44 (2 occurrences), 46; 14:1 (2 occurrences), 12, 29; 16:9; 17:20; 19:35; 20:8, 25, 29 (2 occurrences), 31 _reference_start_John 1:7_reference_end_ _reference_start_John 1:12_reference_end_ _reference_start_John 1:50_reference_end_ _reference_start_John 2:11_reference_end_ _reference_start_John 2:23_reference_end_ _reference_start_John 3:15_reference_end_ _reference_start_John 3:16_reference_end_ _reference_start_John 3:18_reference_end_ _reference_start_John 3:36_reference_end_ _reference_start_John 4:39_reference_end_ _reference_start_John 4:41_reference_end_ _reference_start_John 4:42_reference_end_ _reference_start_John 4:48_reference_end_ _reference_start_John 4:53_reference_end_ _reference_start_John 5:24_reference_end_ _reference_start_John 5:38_reference_end_ _reference_start_John 5:44_reference_end_ _reference_start_John 6:29_reference_end_ _reference_start_John 6:30_reference_end_ _reference_start_John 6:35_reference_end_ _reference_start_John 6:36_reference_end_ _reference_start_John 6:40_reference_end_ _reference_start_John 6:47_reference_end_ _reference_start_John 6:64_reference_end_ _reference_start_John 6:69_reference_end_ _reference_start_John 7:5_reference_end_ _reference_start_John 7:31_reference_end_ _reference_start_John 7:38_reference_end_ _reference_start_John 7:39_reference_end_ _reference_start_John 7:48_reference_end_ _reference_start_John 8:30_reference_end_ _reference_start_John 8:31_reference_end_ _reference_start_John 9:35_reference_end_ _reference_start_John 9:36_reference_end_ _reference_start_John 9:38_reference_end_ _reference_start_John 10:25_reference_end_ _reference_start_John 10:26_reference_end_ _reference_start_John 10:37_reference_end_ _reference_start_John 10:38_reference_end_ _reference_start_John 10:42_reference_end_ _reference_start_John 11:15_reference_end_ _reference_start_John 11:25_reference_end_ _reference_start_John 11:26_reference_end_ _reference_start_John 11:40_reference_end_ _reference_start_John 11:45_reference_end_ _reference_start_John 11:48_reference_end_ _reference_start_John 12:11_reference_end_ _reference_start_John 12:36_reference_end_ _reference_start_John 12:37_reference_end_ _reference_start_John 12:39_reference_end_ _reference_start_John 12:42_reference_end_ _reference_start_John 12:44_reference_end_ _reference_start_John 12:46_reference_end_ _reference_start_John 14:1_reference_end_ _reference_start_John 14:12_reference_end_ _reference_start_John 14:29_reference_end_ _reference_start_John 16:9_reference_end_ _reference_start_John 17:20_reference_end_ _reference_start_John 19:35_reference_end_ _reference_start_John 20:8_reference_end_ _reference_start_John 20:25_reference_end_ _reference_start_John 20:29_reference_end_ _reference_start_John 20:31_reference_end_ ACT 2:44; 4:4, 32; 5:14; 8:13; 9:42; 10:43; 11:17, 21; 13:12, 39, 48; 14:1, 23; 15:5; 16:31, 34; 17:12, 34; 18:8 (2 occurrences), 27; 19:2, 4, 18; 21:20, 25; 22:19; 27:25 _reference_start_Acts 2:44_reference_end_ _reference_start_Acts 4:4_reference_end_ _reference_start_Acts 4:32_reference_end_ _reference_start_Acts 5:14_reference_end_ _reference_start_Acts 8:13_reference_end_ _reference_start_Acts 9:42_reference_end_ _reference_start_Acts 10:43_reference_end_ _reference_start_Acts 11:17_reference_end_ _reference_start_Acts 11:21_reference_end_ _reference_start_Acts 13:12_reference_end_ _reference_start_Acts 13:39_reference_end_ _reference_start_Acts 13:48_reference_end_ _reference_start_Acts 14:1_reference_end_ _reference_start_Acts 14:23_reference_end_ _reference_start_Acts 15:5_reference_end_ _reference_start_Acts 16:31_reference_end_ _reference_start_Acts 16:34_reference_end_ _reference_start_Acts 17:12_reference_end_ _reference_start_Acts 17:34_reference_end_ _reference_start_Acts 18:8_reference_end_ _reference_start_Acts 18:27_reference_end_ _reference_start_Acts 19:2_reference_end_ _reference_start_Acts 19:4_reference_end_ _reference_start_Acts 19:18_reference_end_ _reference_start_Acts 21:20_reference_end_ _reference_start_Acts 21:25_reference_end_ _reference_start_Acts 22:19_reference_end_ _reference_start_Acts 27:25_reference_end_ ROM 1:16; 3:22; 4:3, 5, 11, 17, 24; 9:33; 10:4, 10, 11, 14 (2 occurrences); 13:11; 15:13 _reference_start_Romans 1:16_reference_end_ _reference_start_Romans 3:22_reference_end_ _reference_start_Romans 4:3_reference_end_ _reference_start_Romans 4:5_reference_end_ _reference_start_Romans 4:11_reference_end_ _reference_start_Romans 4:17_reference_end_ _reference_start_Romans 4:24_reference_end_ _reference_start_Romans 9:33_reference_end_ _reference_start_Romans 10:4_reference_end_ _reference_start_Romans 10:10_reference_end_ _reference_start_Romans 10:11_reference_end_ _reference_start_Romans 10:14_reference_end_ _reference_start_Romans 13:11_reference_end_ _reference_start_Romans 15:13_reference_end_ 1CO 1:21; 3:5; 13:7; 14:22 (2 occurrences); 15:2, 11 _reference_start_1 Corinthians 1:21_reference_end_ _reference_start_1 Corinthians 3:5_reference_end_ _reference_start_1 Corinthians 13:7_reference_end_ _reference_start_1 Corinthians 14:22_reference_end_ _reference_start_1 Corinthians 15:2_reference_end_ _reference_start_1 Corinthians 15:11_reference_end_ 2CO 4:13 (2 occurrences) _reference_start_2 Corinthians 4:13_reference_end_ _reference_start_Galatians 2:16_reference_end_ _reference_start_Galatians 3:6_reference_end_ _reference_start_Galatians 3:22_reference_end_ _reference_start_Ephesians 1:13_reference_end_ _reference_start_Ephesians 1:19_reference_end_ _reference_start_Philippians 1:29_reference_end_ _reference_start_1 Thessalonians 1:7_reference_end_ _reference_start_1 Thessalonians 2:10_reference_end_ _reference_start_1 Thessalonians 2:13_reference_end_ _reference_start_2 Thessalonians 1:10_reference_end_ _reference_start_1 Timothy 1:16_reference_end_ _reference_start_1 Timothy 3:16_reference_end_ _reference_start_2 Timothy 1:12_reference_end_ _reference_start_Hebrews 4:3_reference_end_ _reference_start_James 2:23_reference_end_ _reference_start_1 Peter 1:8_reference_end_ _reference_start_1 Peter 2:6_reference_end_ _reference_start_1 Peter 2:7_reference_end_ 1JN 3:23; 4:1; 5:10 (2 occurrences), 13 _reference_start_1 John 3:23_reference_end_ _reference_start_1 John 4:1_reference_end_ _reference_start_1 John 5:10_reference_end_ _reference_start_1 John 5:13_reference_end_ _reference_start_Jude 1:5_reference_end_ \gtrm peiqw \trnl peithõ _reference_start_Matthew 27:43_reference_end_ _reference_start_Luke 18:9_reference_end_ _reference_start_Philippians 2:24_reference_end_ _reference_start_Hebrews 2:13_reference_end_ \en3 b. To accept something as true \en4 1) To believe that a statement is true \gtrm pisteuw \trnl pisteuõ _reference_start_Matthew 8:13_reference_end_ _reference_start_Matthew 9:28_reference_end_ _reference_start_Matthew 21:22_reference_end_ _reference_start_Matthew 24:23_reference_end_ _reference_start_Matthew 24:26_reference_end_ _reference_start_Mark 1:15_reference_end_ _reference_start_Mark 11:24_reference_end_ _reference_start_Mark 13:21_reference_end_ _reference_start_Luke 8:50_reference_end_ JHN 2:22; 8:24; 9:18; 11:26, 27, 42; 13:19; 14:10, 11 (2 occurrences); 16:27, 30, 31; 17:8, 21; 20:31 _reference_start_John 2:22_reference_end_ _reference_start_John 8:24_reference_end_ _reference_start_John 9:18_reference_end_ _reference_start_John 11:26_reference_end_ _reference_start_John 11:27_reference_end_ _reference_start_John 11:42_reference_end_ _reference_start_John 13:19_reference_end_ _reference_start_John 14:10_reference_end_ _reference_start_John 14:11_reference_end_ _reference_start_John 16:27_reference_end_ _reference_start_John 16:30_reference_end_ _reference_start_John 16:31_reference_end_ _reference_start_John 17:8_reference_end_ _reference_start_John 17:21_reference_end_ _reference_start_John 20:31_reference_end_ ACT 9:26; 15:7, 11; 24:14; 26:27 (2 occurrences) _reference_start_Acts 9:26_reference_end_ _reference_start_Acts 15:7_reference_end_ _reference_start_Acts 15:11_reference_end_ _reference_start_Acts 24:14_reference_end_ _reference_start_Acts 26:27_reference_end_ _reference_start_Romans 6:8_reference_end_ _reference_start_Romans 10:9_reference_end_ _reference_start_Romans 10:16_reference_end_ _reference_start_Romans 14:2_reference_end_ _reference_start_1 Corinthians 11:18_reference_end_ _reference_start_1 Thessalonians 4:14_reference_end_ _reference_start_2 Thessalonians 2:11_reference_end_ _reference_start_2 Thessalonians 2:12_reference_end_ _reference_start_Hebrews 11:6_reference_end_ JAS 2:19 (2 occurrences) _reference_start_James 2:19_reference_end_ _reference_start_1 John 4:16_reference_end_ _reference_start_1 John 5:1_reference_end_ _reference_start_1 John 5:5_reference_end_ _reference_start_1 John 5:10_reference_end_ \en4 2) To believe what someone says \gtrm pisteuw \trnl pisteuõ MAT 21:22, 25, 32 (3 occurrences) _reference_start_Matthew 21:22_reference_end_ _reference_start_Matthew 21:25_reference_end_ _reference_start_Matthew 21:32_reference_end_ _reference_start_Mark 11:23_reference_end_ _reference_start_Mark 11:31_reference_end_ _reference_start_Mark 16:13_reference_end_ _reference_start_Mark 16:14_reference_end_ _reference_start_Luke 1:20_reference_end_ _reference_start_Luke 1:45_reference_end_ _reference_start_Luke 8:12_reference_end_ _reference_start_Luke 8:13_reference_end_ _reference_start_Luke 20:5_reference_end_ _reference_start_Luke 22:67_reference_end_ _reference_start_Luke 24:25_reference_end_ JHN 3:12 (2 occurrences); 4:21, 50; 5:46 (2 occurrences), 47 (2 occurrences); 8:45, 46; 12:38 _reference_start_John 3:12_reference_end_ _reference_start_John 4:21_reference_end_ _reference_start_John 4:50_reference_end_ _reference_start_John 5:46_reference_end_ _reference_start_John 5:47_reference_end_ _reference_start_John 8:45_reference_end_ _reference_start_John 8:46_reference_end_ _reference_start_John 12:38_reference_end_ _reference_start_Acts 8:12_reference_end_ _reference_start_Acts 13:41_reference_end_ _reference_start_Romans 4:18_reference_end_ _reference_start_2 Thessalonians 1:10_reference_end_ \en3 c. To trust or entrust someone or something to someone \gtrm pisteuw \trnl pisteuõ _reference_start_Luke 16:11_reference_end_ _reference_start_John 2:24_reference_end_ _reference_start_Romans 3:2_reference_end_ _reference_start_1 Corinthians 9:17_reference_end_ _reference_start_Galatians 2:7_reference_end_ _reference_start_1 Thessalonians 2:4_reference_end_ _reference_start_1 Timothy 1:11_reference_end_ _reference_start_Titus 1:3_reference_end_ \en2 2. Believing, faithful (adjective form) \en3 a. Believing, trusting \gtrm pistov \trnl pistos _reference_start_Matthew 6:30_reference_end_ _reference_start_Matthew 14:31_reference_end_ _reference_start_Matthew 16:8_reference_end_ LUK 12:28 (Greek compound word meaning “little faiths”) _reference_start_Luke 12:28_reference_end_ _reference_start_John 20:27_reference_end_ _reference_start_Acts 10:45_reference_end_ _reference_start_Acts 16:1_reference_end_ _reference_start_Acts 16:15_reference_end_ _reference_start_2 Corinthians 6:15_reference_end_ _reference_start_Galatians 3:9_reference_end_ 1TI 4:3, 10, 12; 5:16; 6:2 (2 occurrences) _reference_start_1 Timothy 4:3_reference_end_ _reference_start_1 Timothy 4:10_reference_end_ _reference_start_1 Timothy 4:12_reference_end_ _reference_start_1 Timothy 5:16_reference_end_ _reference_start_1 Timothy 6:2_reference_end_ _reference_start_Titus 1:6_reference_end_ _reference_start_Titus 3:8_reference_end_ _reference_start_1 Peter 1:21_reference_end_ _reference_start_Revelation 2:10_reference_end_ \gtrm peiqw \trnl peithõ LUK 11:22 (in this case the trust is in something) _reference_start_Luke 11:22_reference_end_ \en3 b. Worthy of being believed in, trustworthy, reliable \gtrm pistov \trnl pistos MAT 24:45; 25:21 (2 occurrences), 23 (2 occurrences) _reference_start_Matthew 24:45_reference_end_ _reference_start_Matthew 25:21_reference_end_ _reference_start_Matthew 25:23_reference_end_ LUK 12:42; 16:10 (2 occurrences), 11, 12; 19:17 _reference_start_Luke 12:42_reference_end_ _reference_start_Luke 16:10_reference_end_ _reference_start_Luke 16:11_reference_end_ _reference_start_Luke 16:12_reference_end_ _reference_start_Luke 19:17_reference_end_ _reference_start_Acts 13:34_reference_end_ _reference_start_1 Corinthians 1:9_reference_end_ _reference_start_1 Corinthians 4:2_reference_end_ _reference_start_1 Corinthians 4:17_reference_end_ _reference_start_1 Corinthians 7:25_reference_end_ _reference_start_1 Corinthians 10:13_reference_end_ _reference_start_2 Corinthians 1:18_reference_end_ _reference_start_Ephesians 1:1_reference_end_ _reference_start_Ephesians 6:21_reference_end_ _reference_start_Colossians 1:2_reference_end_ _reference_start_Colossians 1:7_reference_end_ _reference_start_Colossians 4:7_reference_end_ _reference_start_Colossians 4:9_reference_end_ _reference_start_1 Thessalonians 5:24_reference_end_ _reference_start_2 Thessalonians 3:3_reference_end_ _reference_start_1 Timothy 1:12_reference_end_ _reference_start_1 Timothy 1:15_reference_end_ _reference_start_1 Timothy 3:1_reference_end_ _reference_start_1 Timothy 3:11_reference_end_ _reference_start_1 Timothy 4:9_reference_end_ _reference_start_2 Timothy 2:2_reference_end_ _reference_start_2 Timothy 2:11_reference_end_ _reference_start_2 Timothy 2:13_reference_end_ _reference_start_Titus 1:9_reference_end_ _reference_start_Titus 3:8_reference_end_ HEB 2:17; 3:2, 5, 6 (Implied contextually); 10:23; 11:11 _reference_start_Hebrews 2:17_reference_end_ _reference_start_Hebrews 3:2_reference_end_ _reference_start_Hebrews 3:5_reference_end_ _reference_start_Hebrews 3:6_reference_end_ _reference_start_Hebrews 10:23_reference_end_ _reference_start_Hebrews 11:11_reference_end_ _reference_start_1 Peter 4:19_reference_end_ _reference_start_1 Peter 5:12_reference_end_ _reference_start_1 John 1:9_reference_end_ _reference_start_3 John 1:5_reference_end_ _reference_start_Revelation 1:5_reference_end_ _reference_start_Revelation 2:13_reference_end_ _reference_start_Revelation 3:14_reference_end_ _reference_start_Revelation 17:14_reference_end_ _reference_start_Revelation 19:11_reference_end_ _reference_start_Revelation 21:5_reference_end_ _reference_start_Revelation 22:6_reference_end_ \en2 3. Belief, faith (noun form) \en3 a. Faith, the quality of trusting someone \gtrm pistiv \trnl pistis _reference_start_Matthew 8:10_reference_end_ _reference_start_Matthew 8:26_reference_end_ _reference_start_Matthew 9:2_reference_end_ _reference_start_Matthew 9:22_reference_end_ _reference_start_Matthew 15:28_reference_end_ _reference_start_Matthew 17:20_reference_end_ _reference_start_Matthew 23:23_reference_end_ _reference_start_Mark 2:5_reference_end_ _reference_start_Mark 4:40_reference_end_ _reference_start_Mark 5:34_reference_end_ _reference_start_Mark 10:52_reference_end_ _reference_start_Mark 11:22_reference_end_ _reference_start_Luke 5:20_reference_end_ _reference_start_Luke 7:9_reference_end_ _reference_start_Luke 7:50_reference_end_ _reference_start_Luke 8:25_reference_end_ _reference_start_Luke 8:48_reference_end_ _reference_start_Luke 17:5_reference_end_ _reference_start_Luke 17:6_reference_end_ _reference_start_Luke 17:19_reference_end_ _reference_start_Luke 18:8_reference_end_ _reference_start_Luke 18:42_reference_end_ _reference_start_Luke 22:32_reference_end_ ACT 3:16 (2 occurrences); 6:5; 11:24; 14:9, 27; 15:9; 16:5; 20:21; 24:24; 26:18 _reference_start_Acts 3:16_reference_end_ _reference_start_Acts 6:5_reference_end_ _reference_start_Acts 11:24_reference_end_ _reference_start_Acts 14:9_reference_end_ _reference_start_Acts 14:27_reference_end_ _reference_start_Acts 15:9_reference_end_ _reference_start_Acts 16:5_reference_end_ _reference_start_Acts 20:21_reference_end_ _reference_start_Acts 24:24_reference_end_ _reference_start_Acts 26:18_reference_end_ ROM 1:5, 8, 12, 17 (3 occurrences); 3:22, 25, 26, 27, 28, 30 (2 occurrences), 31; 4:5, 9, 11, 12, 13, 14, 16 (2 occurrences), 19, 20, 22 (Implied contextually); 5:1; 9:30, 32; 10:6, 8, 17; 11:20; 12:3, 6; 14:1, 22, 23 (2 occurrences); 16:26 _reference_start_Romans 1:5_reference_end_ _reference_start_Romans 1:8_reference_end_ _reference_start_Romans 1:12_reference_end_ _reference_start_Romans 1:17_reference_end_ _reference_start_Romans 3:22_reference_end_ _reference_start_Romans 3:25_reference_end_ _reference_start_Romans 3:26_reference_end_ _reference_start_Romans 3:27_reference_end_ _reference_start_Romans 3:28_reference_end_ _reference_start_Romans 3:30_reference_end_ _reference_start_Romans 3:31_reference_end_ _reference_start_Romans 4:5_reference_end_ _reference_start_Romans 4:9_reference_end_ _reference_start_Romans 4:11_reference_end_ _reference_start_Romans 4:12_reference_end_ _reference_start_Romans 4:13_reference_end_ _reference_start_Romans 4:14_reference_end_ _reference_start_Romans 4:16_reference_end_ _reference_start_Romans 4:19_reference_end_ _reference_start_Romans 4:20_reference_end_ _reference_start_Romans 4:22_reference_end_ _reference_start_Romans 5:1_reference_end_ _reference_start_Romans 9:30_reference_end_ _reference_start_Romans 9:32_reference_end_ _reference_start_Romans 10:6_reference_end_ _reference_start_Romans 10:8_reference_end_ _reference_start_Romans 10:17_reference_end_ _reference_start_Romans 11:20_reference_end_ _reference_start_Romans 12:3_reference_end_ _reference_start_Romans 12:6_reference_end_ _reference_start_Romans 14:1_reference_end_ _reference_start_Romans 14:22_reference_end_ _reference_start_Romans 14:23_reference_end_ _reference_start_Romans 16:26_reference_end_ _reference_start_1 Corinthians 2:5_reference_end_ _reference_start_1 Corinthians 12:9_reference_end_ _reference_start_1 Corinthians 13:2_reference_end_ _reference_start_1 Corinthians 13:13_reference_end_ _reference_start_1 Corinthians 15:14_reference_end_ _reference_start_1 Corinthians 15:17_reference_end_ _reference_start_1 Corinthians 16:13_reference_end_ 2CO 1:24 (2 occurrences); 4:13; 5:7; 8:7; 10:15; 13:5 _reference_start_2 Corinthians 1:24_reference_end_ _reference_start_2 Corinthians 4:13_reference_end_ _reference_start_2 Corinthians 5:7_reference_end_ _reference_start_2 Corinthians 8:7_reference_end_ _reference_start_2 Corinthians 10:15_reference_end_ _reference_start_2 Corinthians 13:5_reference_end_ GAL 2:16 (2 occurrences), 20; 3:2, 5, 7, 8, 9, 11, 12, 14, 22, 23 (2 occurrences), 24, 25, 26; 5:5, 6; 6:10 _reference_start_Galatians 2:16_reference_end_ _reference_start_Galatians 2:20_reference_end_ _reference_start_Galatians 3:2_reference_end_ _reference_start_Galatians 3:5_reference_end_ _reference_start_Galatians 3:7_reference_end_ _reference_start_Galatians 3:8_reference_end_ _reference_start_Galatians 3:9_reference_end_ _reference_start_Galatians 3:11_reference_end_ _reference_start_Galatians 3:12_reference_end_ _reference_start_Galatians 3:14_reference_end_ _reference_start_Galatians 3:22_reference_end_ _reference_start_Galatians 3:23_reference_end_ _reference_start_Galatians 3:24_reference_end_ _reference_start_Galatians 3:25_reference_end_ _reference_start_Galatians 3:26_reference_end_ _reference_start_Galatians 5:5_reference_end_ _reference_start_Galatians 5:6_reference_end_ _reference_start_Galatians 6:10_reference_end_ _reference_start_Ephesians 1:15_reference_end_ _reference_start_Ephesians 2:8_reference_end_ _reference_start_Ephesians 3:12_reference_end_ _reference_start_Ephesians 3:17_reference_end_ _reference_start_Ephesians 4:13_reference_end_ _reference_start_Ephesians 6:16_reference_end_ _reference_start_Ephesians 6:23_reference_end_ PHP 2:17; 3:9 (2 occurrences) _reference_start_Philippians 2:17_reference_end_ _reference_start_Philippians 3:9_reference_end_ _reference_start_Colossians 1:4_reference_end_ _reference_start_Colossians 1:23_reference_end_ _reference_start_Colossians 2:5_reference_end_ _reference_start_Colossians 2:7_reference_end_ _reference_start_Colossians 2:12_reference_end_ _reference_start_1 Thessalonians 1:3_reference_end_ _reference_start_1 Thessalonians 1:8_reference_end_ _reference_start_1 Thessalonians 3:2_reference_end_ _reference_start_1 Thessalonians 3:5_reference_end_ _reference_start_1 Thessalonians 3:6_reference_end_ _reference_start_1 Thessalonians 3:7_reference_end_ _reference_start_1 Thessalonians 3:10_reference_end_ _reference_start_1 Thessalonians 5:8_reference_end_ _reference_start_2 Thessalonians 1:3_reference_end_ _reference_start_2 Thessalonians 1:4_reference_end_ _reference_start_2 Thessalonians 1:11_reference_end_ _reference_start_2 Thessalonians 3:2_reference_end_ 1TI 1:4, 5, 14, 19 (2 occurrences); 2:15; 4:1, 12; 5:12; 6:11, 12, 21 _reference_start_1 Timothy 1:4_reference_end_ _reference_start_1 Timothy 1:5_reference_end_ _reference_start_1 Timothy 1:14_reference_end_ _reference_start_1 Timothy 1:19_reference_end_ _reference_start_1 Timothy 2:15_reference_end_ _reference_start_1 Timothy 4:1_reference_end_ _reference_start_1 Timothy 4:12_reference_end_ _reference_start_1 Timothy 5:12_reference_end_ _reference_start_1 Timothy 6:11_reference_end_ _reference_start_1 Timothy 6:12_reference_end_ _reference_start_1 Timothy 6:21_reference_end_ _reference_start_2 Timothy 1:5_reference_end_ _reference_start_2 Timothy 1:13_reference_end_ _reference_start_2 Timothy 2:18_reference_end_ _reference_start_2 Timothy 2:22_reference_end_ _reference_start_2 Timothy 3:8_reference_end_ _reference_start_2 Timothy 3:10_reference_end_ _reference_start_2 Timothy 3:15_reference_end_ _reference_start_Titus 1:1_reference_end_ _reference_start_Titus 1:4_reference_end_ _reference_start_Titus 2:2_reference_end_ _reference_start_Philemon 1:5_reference_end_ HEB 4:2; 6:1, 12; 10:22, 38, 39; 11:1, 3, 4, 5, 6, 7 (2 occurrences), 8, 9, 11, 13, 17, 20, 21, 22, 23, 24, 27, 28, 29, 30, 31, 33, 39; 12:2; 13:7 _reference_start_Hebrews 4:2_reference_end_ _reference_start_Hebrews 6:1_reference_end_ _reference_start_Hebrews 6:12_reference_end_ _reference_start_Hebrews 10:22_reference_end_ _reference_start_Hebrews 10:38_reference_end_ _reference_start_Hebrews 10:39_reference_end_ _reference_start_Hebrews 11:1_reference_end_ _reference_start_Hebrews 11:3_reference_end_ _reference_start_Hebrews 11:4_reference_end_ _reference_start_Hebrews 11:5_reference_end_ _reference_start_Hebrews 11:6_reference_end_ _reference_start_Hebrews 11:7_reference_end_ _reference_start_Hebrews 11:8_reference_end_ _reference_start_Hebrews 11:9_reference_end_ _reference_start_Hebrews 11:11_reference_end_ _reference_start_Hebrews 11:13_reference_end_ _reference_start_Hebrews 11:17_reference_end_ _reference_start_Hebrews 11:20_reference_end_ _reference_start_Hebrews 11:21_reference_end_ _reference_start_Hebrews 11:22_reference_end_ _reference_start_Hebrews 11:23_reference_end_ _reference_start_Hebrews 11:24_reference_end_ _reference_start_Hebrews 11:27_reference_end_ _reference_start_Hebrews 11:28_reference_end_ _reference_start_Hebrews 11:29_reference_end_ _reference_start_Hebrews 11:30_reference_end_ _reference_start_Hebrews 11:31_reference_end_ _reference_start_Hebrews 11:33_reference_end_ _reference_start_Hebrews 11:39_reference_end_ _reference_start_Hebrews 12:2_reference_end_ _reference_start_Hebrews 13:7_reference_end_ JAS 1:3; 2:1, 5, 14 (real faith), 18 (real faith) (2 occurrences); 5:15 _reference_start_James 1:3_reference_end_ _reference_start_James 2:1_reference_end_ _reference_start_James 2:5_reference_end_ _reference_start_James 2:14_reference_end_ _reference_start_James 2:18_reference_end_ _reference_start_James 5:15_reference_end_ _reference_start_1 Peter 1:5_reference_end_ _reference_start_1 Peter 1:7_reference_end_ _reference_start_1 Peter 1:9_reference_end_ _reference_start_1 Peter 1:21_reference_end_ _reference_start_1 Peter 5:9_reference_end_ _reference_start_2 Peter 1:1_reference_end_ _reference_start_2 Peter 1:5_reference_end_ _reference_start_1 John 5:4_reference_end_ _reference_start_Revelation 2:13_reference_end_ _reference_start_Revelation 2:19_reference_end_ _reference_start_Revelation 13:10_reference_end_ _reference_start_Revelation 14:12_reference_end_ \en3 b. Belief, accepting a fact as true \gtrm pistiv \trnl pistis _reference_start_Matthew 9:29_reference_end_ _reference_start_Matthew 17:20_reference_end_ _reference_start_Matthew 21:21_reference_end_ _reference_start_2 Thessalonians 2:13_reference_end_ JAS 1:6; 2:14 (intellectual assent), 17 (intellectual assent), 18 (intellectual assent), 20 (intellectual assent), 22 (intellectual assent) (2 occurrences), 24 (intellectual assent), 26 (intellectual assent) _reference_start_James 1:6_reference_end_ _reference_start_James 2:14_reference_end_ _reference_start_James 2:17_reference_end_ _reference_start_James 2:18_reference_end_ _reference_start_James 2:20_reference_end_ _reference_start_James 2:22_reference_end_ _reference_start_James 2:24_reference_end_ _reference_start_James 2:26_reference_end_ \en3 c. Trustworthiness, faithfulness \gtrm pistiv \trnl pistis _reference_start_Romans 3:3_reference_end_ _reference_start_Galatians 5:22_reference_end_ _reference_start_1 Timothy 2:7_reference_end_ _reference_start_2 Timothy 4:7_reference_end_ _reference_start_Titus 2:10_reference_end_ \en3 d. The faith, the truth that Christians believe in and practice \gtrm pistiv \trnl pistis _reference_start_Acts 6:7_reference_end_ _reference_start_Acts 13:8_reference_end_ _reference_start_Acts 14:22_reference_end_ _reference_start_Galatians 1:23_reference_end_ _reference_start_Ephesians 4:5_reference_end_ _reference_start_Philippians 1:25_reference_end_ _reference_start_Philippians 1:27_reference_end_ _reference_start_1 Timothy 1:2_reference_end_ _reference_start_1 Timothy 3:9_reference_end_ _reference_start_1 Timothy 3:13_reference_end_ _reference_start_1 Timothy 4:6_reference_end_ _reference_start_1 Timothy 5:8_reference_end_ _reference_start_1 Timothy 6:10_reference_end_ _reference_start_Titus 1:13_reference_end_ _reference_start_Titus 3:15_reference_end_ _reference_start_Philemon 1:6_reference_end_ _reference_start_Jude 1:3_reference_end_ _reference_start_Jude 1:20_reference_end_ \en2 4. Negative forms \en3 a. To not believe, to disbelieve \gtrm pisteuw \trnl pisteuõ _reference_start_Mark 16:11_reference_end_ _reference_start_Mark 16:16_reference_end_ _reference_start_Luke 24:11_reference_end_ _reference_start_Luke 24:41_reference_end_ _reference_start_Acts 28:24_reference_end_ _reference_start_1 Peter 2:7_reference_end_ \en3 b. To be unfaithful, to not do as one has promised \gtrm pisteuw \trnl pisteuõ _reference_start_Romans 3:3_reference_end_ \gtrm pistov \trnl pistos _reference_start_2 Timothy 2:13_reference_end_ \en3 c. Unbelief \gtrm pistiv \trnl pistis _reference_start_Matthew 13:58_reference_end_ _reference_start_Mark 6:6_reference_end_ _reference_start_Mark 9:24_reference_end_ _reference_start_Mark 16:14_reference_end_ _reference_start_Romans 3:3_reference_end_ _reference_start_Romans 4:20_reference_end_ _reference_start_Romans 11:20_reference_end_ _reference_start_Romans 11:23_reference_end_ _reference_start_1 Timothy 1:13_reference_end_ _reference_start_Hebrews 3:12_reference_end_ _reference_start_Hebrews 3:19_reference_end_ \en3 d. Unbelieving \gtrm pistov \trnl pistos _reference_start_Matthew 17:17_reference_end_ _reference_start_Mark 9:19_reference_end_ _reference_start_Luke 9:41_reference_end_ _reference_start_Luke 12:46_reference_end_ _reference_start_John 20:27_reference_end_ 1CO 6:6; 7:12, 13, 14 (2 occurrences), 15; 10:27; 14:22 (2 occurrences), 23, 24 _reference_start_1 Corinthians 6:6_reference_end_ _reference_start_1 Corinthians 7:12_reference_end_ _reference_start_1 Corinthians 7:13_reference_end_ _reference_start_1 Corinthians 7:14_reference_end_ _reference_start_1 Corinthians 7:15_reference_end_ _reference_start_1 Corinthians 10:27_reference_end_ _reference_start_1 Corinthians 14:22_reference_end_ _reference_start_1 Corinthians 14:23_reference_end_ _reference_start_1 Corinthians 14:24_reference_end_ _reference_start_2 Corinthians 4:4_reference_end_ _reference_start_2 Corinthians 6:14_reference_end_ _reference_start_2 Corinthians 6:15_reference_end_ _reference_start_1 Timothy 5:8_reference_end_ _reference_start_Titus 1:15_reference_end_ \en3 e. Faithless, unfaithful \gtrm pistov \trnl pistos _reference_start_Revelation 21:8_reference_end_ \en3 f. Unbelievable, incredible \gtrm pistov \trnl pistos _reference_start_Acts 26:8_reference_end_ &+BELOVEDbeloved\see (see LOVE)O]]uBELIEVE, BELIEVING, BELIEF, FAITH, TRUSTbelieve, believing, belief, faith, trust\o1 1. To believe, to have faith, to trust (verb form) \o2 a. To believe in a person, to trust someone, to rely on someone \o2 b. To accept something as true \o3 1) To believe that a statement is true \o3 2) To believe what someone says \o2 c. To trust or entrust someone or something to someone \o1 2. Believing, faithful (adjective form) \o2 a. Believing, trusting \o2 b. Worthy of being believed in, trustworthy, reliable \o1 3. Belief, faith (noun form) \o2 a. Faith, the quality of trusting someone \o2 b. Belief, accepting a fact as true \o2 c. Trustworthiness, faithfulness \o2 d. The faith, the truth that Christians believe in and practice \o1 4. Negative forms \o2 a. To not believe, to disbeliev ?tfXJ<. xj\N@2$|n`RD6( I, + H, * G, F, E, D, C,, B+ A+ @+ ?+ >+# =+ <+ ;+ :+ 9+ 8+ . 7+ , 6+ * 5+ ' 4+ % 3+ $ 2+ 1+ 0 0+ - /+ ( .+  -+  ,+  ++ * *+ & )+ % (+  '+  &+ & %+ $ $+ # #+ "+ !+0 +' +& + + +E +@ +/ +( +$ +# + + +, +& + +5 +0 +* +) +' +$ + ?tfXJ<. xj\N@2$|n`RD6( > > > < < < ; : 7 6 ~6 }5 |4 {4 z4 y2 x1 w1 v0 u0 t0 s/ r. q. p. o.  n. m. l- k- j-  i- h- g-  f- ! e- d- c- b- a- `- _- ^, ], \, [, Z, Y, X, W, V, U," T, S," R, Q, P, O, N, 0 M, ' L, K,  J,  ?tfXJ<. xj\N@2$|n`RD6( G* F*C E* D* C* B*- A* @) ?) >)  =)  <( ;( :( 9> 8> 7> 6> 5; 4:  35 25 14 0.  /- .-  -- ,- +, *, ), (, ',  &+ %+ $+ #+ "+ !+ + + +  + * +  +  +  + + *2 )  )  ) ( ( ( (  ( : 2 * (+ A > ?tfXJ<. xj\N@2$|n`RD6( 5 4 3 3 3 3 1 1 ~/ }. |. {. z. y. x, " w* v* u* t* s* * r( q( p(- o*  nB m< l8 k8 j6 i6 h6 g6 f6 e0 d/ c, b, a, - `+ _*  ^( ]( \( [8 Z6 Y4 X0 W.  V- U+ T* S5 R- Q, ) P, O+ & N+. M+- L+/ K+. J+2 I+ H+ ?tfXJ<. xj\N@2$|n`RD6( E- D- C- B, A, @, ?, >, =, <, ;,  :, 9, 8* 7** 6* 5* 4* 3* 2*0 1* 0*2 /* .* -)  ,) 4 +)" *)( )) (( '( &( %(  $(  #( "( !B B B B B B B @ > < < : :  : : : : 8 8 7 7 7 6 6 6 6 6 ?tfXJ<. xj\N@2$|n`RD6( 1 0 0 0 0 0 ~0 }0 |0 {0 z0 y0 x0 w0 v0 u0 t0 s0 r0 q/  p/  o/ n/ m/ l/ k. j. i. h. g.  f. e. d- c- b- a- `-  _-  ^-  ]-  \-  [-  Z- Y-  X- W- V- U- T- S- R- Q- P- O- N- M- L- K- J- I- H- G- F- ?tfXJ<. xj\N@2$|n`RD6( C: B: A: @:  ?:  >:  =:  <:  ;:  ::  9: ' 8: & 7:  6: 5: 4: 39 28 18 08 /7 .7 -7 ,7 +7 *7 )7 (6 '6 &6 %6 $6 #6 "6 !6 6 6 6 5 5 5 5 4 4 4 4 4 4 4 4 3 3 3 3 3 2 2 1 1 1 1 1 1 ?tfXJ<. xj\N@2$|n`RD6( 6 6 6 6 ~6 }6 |2 {2 z1 y0 x, w,  v, u8 t7 s6 r0 q- p; o; n; m; l; k; j; i; h5 g( f( e(  dB cB bB aB `> _= ^= ]< \< [< Z< Y< X; W; V; U; T; S; R:  Q:  P: ' O: ! N:  M:  L:  K:  J:  I:  H:  G:  F:  E:  D:  ?tfXJ<. xj\N@2$|n`RD6( A(A @(  ?(  >< =*, <6 ;, :< 98 86 72 6, 5.& 4.% 3.$ 2* 1* 0( /, .B -8 ,6 +/ */ )/ (. '. &. %.  $. #. ". !. . + * . * ) )  ( : : 6 -  -  - - ) )  ) ( : 7 - < , *) * ) ) A A 9 8 8 ooBISHOPbishop\o1 1. Leader, protector \o1 2. Office, position of leadership \o1 3. Personal inBETROTHEDbetrothed\o1 1. Pledged to be married \gtrm mnjsteuomai \trnl mnæsteuomai \xref [L&N 34.74] \def promise in marriage \gtrm ƒrmozw, ƒrmozomai \trnl harmozõ, harmozomai \xref [L&N 34.74] \def betroth \gtrm parqenov \trnl parthenos \xref [L&N 34.77] \def unmarried person (noun) \xref [L&N 9.39] \def virgin (female) \xref [L&N 9.33] \def virgin (male) \en2 1. Pledged to be married \gtrm mnjsteuomai \trnl mnæsteuomai _reference_start_Matthew 1:18_reference_end_ _reference_start_Luke 1:27_reference_end_ _reference_start_Luke 2:5_reference_end_ \gtrm parqenov \trnl parthenos 1CO 7:36 (Implied), 37 (Implied), 38 (Implied) _reference_start_1 Corinthians 7:36_reference_end_ _reference_start_1 Corinthians 7:37_reference_end_ _reference_start_1 Corinthians 7:38_reference_end_teraction by God, demonstration of divine power \gtrm episkopj \trnl episkopæ \xref [L&N 34.51] \def visitation \xref [L&N 53.69] \def office as a church leader \xref [L&N 35.40] \def position of responsibility \gtrm episkopov \trnl episkopos \xref [L&N 35.43] \def guardian \xref [L&N 53.71] \def church leader \en2 1. Leader, protector \gtrm episkopov \trnl episkopos _reference_start_Acts 20:28_reference_end_ _reference_start_Philippians 1:1_reference_end_ _reference_start_1 Timothy 3:2_reference_end_ _reference_start_Titus 1:7_reference_end_ _reference_start_1 Peter 2:25_reference_end_ \en2 2. Office, position of leadership \gtrm episkopj \trnl episkopæ _reference_start_Acts 1:20_reference_end_ _reference_start_1 Timothy 3:1_reference_end_ \en2 3. Personal interaction by God, demonstration of divine power \gtrm episkopj \trnl episkopæ _reference_start_Luke 19:44_reference_end_ _reference_start_1 Peter 2:12_reference_end_aking evil and insulting words \o1 3. Insult, belittle Christ \o1 4. Insult, belittle angels \o1 5. Insult, belittle, speak evil against humans (especially God's people) \gtrm blasfjmew \trnl blasphæmeõ \xref [L&N 33.400] \def blaspheme, revile \gtrm blasfjmia \trnl blasphæmia \xref [L&N 33.400] \def reviling \xref [L&N 33.401] \def blasphemy \gtrm blasfjmov, ov \trnl blasphæmos, ov \xref [L&N 33.402] \def blasphemous \gtrm blasfjmov, ou \trnl blasphæmos, ou \xref [L&N 33.403] \def blasphemer \en2 1. Assuming authority which belongs only to God or the Holy Spirit, taking God's authority lightly, belittling God (or a god) \gtrm blasfjmew \trnl blasphæmeõ MAT 9:3; 12:31 (2 occurrences); 26:65 _reference_start_Matthew 9:3_reference_end_ _reference_start_Matthew 12:31_reference_end_ _reference_start_Matthew 26:65_reference_end_ _reference_start_Mark 3:29_reference_end_ LUK 12:10; 22:65 (alternate sense 1.) _reference_start_Luke 12:10_reference_end_ _reference_start_Luke 22:65_reference_end_ _reference_start_John 10:36_reference_end_ _reference_start_Acts 19:37_reference_end_ _reference_start_Acts 26:11_reference_end_ _reference_start_1 Timothy 1:20_reference_end_ _reference_start_1 Timothy 6:1_reference_end_ _reference_start_Titus 2:5_reference_end_ _reference_start_2 Peter 2:2_reference_end_ _reference_start_Romans 2:24_reference_end_ _reference_start_Revelation 13:6_reference_end_ _reference_start_Revelation 16:9_reference_end_ _reference_start_Revelation 16:11_reference_end_ _reference_start_Revelation 16:21_reference_end_ \gtrm blasfjmia \trnl blasphæmia _reference_start_Matthew 26:65_reference_end_ _reference_start_Mark 2:7_reference_end_ _reference_start_Mark 14:64_reference_end_ _reference_start_Luke 5:21_reference_end_ _reference_start_John 10:33_reference_end_ _reference_start_Revelation 2:9_reference_end_ _reference_start_Revelation 13:1_reference_end_ _reference_start_Revelation 13:5_reference_end_ _reference_start_Revelation 13:6_reference_end_ _reference_start_Revelation 17:3_reference_end_ \gtrm blasfjmov, ov \trnl blasphæmos, ov ACT 6:11 (because of Moses' association with God's law), 13 (against the temple because of its association with God) _reference_start_Acts 6:11_reference_end_ _reference_start_Acts 6:13_reference_end_ \gtrm blasfjmov, ou \trnl blasphæmos, ou _reference_start_1 Timothy 1:13_reference_end_ \en2 2. As 1, with particular focus on speaking evil and insulting words \gtrm blasfjmew \trnl blasphæmeõ _reference_start_Mark 3:28_reference_end_ \gtrm blasfjmia \trnl blasphæmia _reference_start_Matthew 12:31_reference_end_ _reference_start_Matthew 15:19_reference_end_ _reference_start_Mark 3:28_reference_end_ _reference_start_Mark 7:22_reference_end_ _reference_start_Ephesians 4:31_reference_end_ _reference_start_Colossians 3:8_reference_end_ _reference_start_1 Timothy 6:4_reference_end_ \gtrm blasfjmov, ov \trnl blasphæmos, ov _reference_start_2 Timothy 3:2_reference_end_ \en2 3. Insult, belittle Christ \gtrm blasfjmew \trnl blasphæmeõ _reference_start_Matthew 27:39_reference_end_ _reference_start_Mark 15:29_reference_end_ _reference_start_Luke 23:39_reference_end_ _reference_start_James 2:7_reference_end_ \en2 4. Insult, belittle angels \gtrm blasfjmew \trnl blasphæmeõ _reference_start_2 Peter 2:10_reference_end_ _reference_start_2 Peter 2:12_reference_end_ _reference_start_Jude 1:8_reference_end_ _reference_start_Jude 1:10_reference_end_ \gtrm blasfjmia \trnl blasphæmia _reference_start_Jude 1:9_reference_end_ \gtrm blasfjmov, ov \trnl blasphæmos, ov _reference_start_2 Peter 2:11_reference_end_ \en2 5. Insult, belittle, speak evil against humans (especially God's people) \gtrm blasfjmew \trnl blasphæmeõ _reference_start_Acts 13:45_reference_end_ _reference_start_Acts 18:6_reference_end_ _reference_start_Romans 3:8_reference_end_ _reference_start_Romans 14:16_reference_end_ _reference_start_1 Corinthians 4:13_reference_end_ _reference_start_1 Corinthians 10:30_reference_end_ _reference_start_Titus 3:2_reference_end_ _reference_start_1 Peter 4:4_reference_end_ %1%d==_BLESS, BLESSED, BLESSINGbless, blessed, blessing\o1 1. To bless, when God, or Christ, is the subject: to endow with power, to do something good for someone \o1 2. To bless, when someone other than God is the subject: to convey God's beneficent power to someone, to ask God to do something good to someone \o2 a. A senior person blesses a junior person in a formal act \o2 b. Someone blesses someone else informally \o1 3. To praise God or thank Him for what He has provided or done, to refer to God as the source of power and good \o1 4. Blessed (adjective or verb participle form) \o2 a. The state of person for whom God has done something good \o2 b. Praised, acknowledged as being the source of good \o2 c. Being in a desirable state or positi7CBLASPHEMEblaspheme\o1 1. Assuming authority which belongs only to God or the Holy Spirit, taking God's authority lightly, belittling God (or a god) \o1 2. As 1, with particular focus on spe ?tfXJ<. xj\N@2$|n`RD6( *" : ~1 }0 |0 {, z, y*3 x< w8 v.  u. t- s- r, q, - p= oA nA mA l= k= j; i*' h) g(' f7 e6 d3 c1 b) a) `( _(  ^) ]6 \, [, ZB YB  XB  WB  VB U+ ! T* S)@ R) Q(A PB OB NB MB  L- K= J8 I6 H6 G, F,% E+ $ D*A C* B)on, fortunate \o1 5. Blessing \o2 a. The good things that God does for his people, spiritual or material provisions \o2 b. The activity of praising or thanking God \o2 c. The state of being in a desirable situation, fortunate \o1 6. Miscellaneous \gtrm eulogew \trnl eulogeõ \xref [L&N 33.470] \def bless \xref [L&N 88.69] \def act kindly toward \xref [L&N 33.356] \def praise \gtrm eulogjtov \trnl eulogætos \xref [L&N 33.362] \def to be praised \gtrm eulogia \trnl eulogia \xref [L&N 33.356] \def praise \xref [L&N 33.366] \def flattery \xref [L&N 33.470] \def blessing \xref [L&N 88.70] \def benefit \xref [L&N 57.105] \def gift \xref [L&N 59.56] \def large amount (part of an idiom) \gtrm kateulogew \trnl kateulogeõ \xref [L&N 33.470] \def bless \gtrm makariov \trnl makarios \xref [L&N 25.119] \def happy \gtrm makarismov \trnl makarismos \xref [L&N 25.118] \def happiness \gtrm makarizw \trnl makarizõ \xref [L&N 25.120] \def regard as happy \en2 1. To bless, when God, or Christ, is the subject: to endow with power, to do something good for someone \gtrm eulogew \trnl eulogeõ _reference_start_Luke 24:51_reference_end_ _reference_start_Acts 3:25_reference_end_ _reference_start_Acts 3:26_reference_end_ GAL 3:8 (a prefix is affixed to this form), 9 _reference_start_Galatians 3:8_reference_end_ _reference_start_Galatians 3:9_reference_end_ _reference_start_Ephesians 1:3_reference_end_ _reference_start_Hebrews 6:14_reference_end_ \en2 2. To bless, when someone other than God is the subject: to convey God's beneficent power to someone, to ask God to do something good to someone \en3 a. A senior person blesses a junior person in a formal act \gtrm eulogew \trnl eulogeõ _reference_start_Luke 2:34_reference_end_ _reference_start_Luke 24:50_reference_end_ _reference_start_Hebrews 7:1_reference_end_ _reference_start_Hebrews 7:6_reference_end_ _reference_start_Hebrews 7:7_reference_end_ _reference_start_Hebrews 11:20_reference_end_ _reference_start_Hebrews 11:21_reference_end_ \gtrm kateulogew \trnl kateulogeõ _reference_start_Mark 10:16_reference_end_ \en3 b. Someone blesses someone else informally \gtrm eulogew \trnl eulogeõ _reference_start_Luke 6:28_reference_end_ ROM 12:14 (2 occurrences) _reference_start_Romans 12:14_reference_end_ _reference_start_1 Corinthians 4:12_reference_end_ _reference_start_1 Peter 3:9_reference_end_ \en2 3. To praise God or thank Him for what He has provided or done, to refer to God as the source of power and good \gtrm eulogew \trnl eulogeõ _reference_start_Matthew 14:19_reference_end_ _reference_start_Matthew 26:26_reference_end_ _reference_start_Mark 6:41_reference_end_ _reference_start_Mark 8:7_reference_end_ _reference_start_Mark 14:22_reference_end_ _reference_start_Luke 1:64_reference_end_ _reference_start_Luke 2:28_reference_end_ _reference_start_Luke 9:16_reference_end_ _reference_start_Luke 24:30_reference_end_ _reference_start_Luke 24:53_reference_end_ _reference_start_1 Corinthians 10:16_reference_end_ _reference_start_1 Corinthians 14:16_reference_end_ _reference_start_James 3:9_reference_end_ \en2 4. Blessed (adjective or verb participle form) \en3 a. The state of person for whom God has done something good \gtrm eulogew \trnl eulogeõ _reference_start_Matthew 21:9_reference_end_ _reference_start_Matthew 23:39_reference_end_ _reference_start_Matthew 25:34_reference_end_ _reference_start_Mark 11:9_reference_end_ _reference_start_Mark 11:10_reference_end_ LUK 1:42 (2 occurrences); 13:35; 19:38 _reference_start_Luke 1:42_reference_end_ _reference_start_Luke 13:35_reference_end_ _reference_start_Luke 19:38_reference_end_ _reference_start_John 12:13_reference_end_ \en3 b. Praised, acknowledged as being the source of good \gtrm eulogjtov \trnl eulogætos _reference_start_Mark 14:61_reference_end_ _reference_start_Luke 1:68_reference_end_ _reference_start_Romans 1:25_reference_end_ _reference_start_Romans 9:5_reference_end_ _reference_start_2 Corinthians 1:3_reference_end_ _reference_start_2 Corinthians 11:31_reference_end_ _reference_start_Ephesians 1:3_reference_end_ _reference_start_1 Peter 1:3_reference_end_ \gtrm makariov \trnl makarios _reference_start_1 Timothy 1:11_reference_end_ _reference_start_1 Timothy 6:15_reference_end_ \en3 c. Being in a desirable state or position, fortunate \gtrm makariov \trnl makarios _reference_start_Matthew 5:3_reference_end_ _reference_start_Matthew 5:4_reference_end_ _reference_start_Matthew 5:5_reference_end_ _reference_start_Matthew 5:6_reference_end_ _reference_start_Matthew 5:7_reference_end_ _reference_start_Matthew 5:8_reference_end_ _reference_start_Matthew 5:9_reference_end_ _reference_start_Matthew 5:10_reference_end_ _reference_start_Matthew 5:11_reference_end_ _reference_start_Matthew 11:6_reference_end_ _reference_start_Matthew 13:16_reference_end_ _reference_start_Matthew 16:17_reference_end_ _reference_start_Matthew 24:46_reference_end_ LUK 1:45; 6:20, 21 (2 occurrences), 22; 7:23; 10:23; 11:27, 28; 12:37, 38, 43; 14:14, 15; 23:29 _reference_start_Luke 1:45_reference_end_ _reference_start_Luke 6:20_reference_end_ _reference_start_Luke 6:21_reference_end_ _reference_start_Luke 6:22_reference_end_ _reference_start_Luke 7:23_reference_end_ _reference_start_Luke 10:23_reference_end_ _reference_start_Luke 11:27_reference_end_ _reference_start_Luke 11:28_reference_end_ _reference_start_Luke 12:37_reference_end_ _reference_start_Luke 12:38_reference_end_ _reference_start_Luke 12:43_reference_end_ _reference_start_Luke 14:14_reference_end_ _reference_start_Luke 14:15_reference_end_ _reference_start_Luke 23:29_reference_end_ _reference_start_John 13:17_reference_end_ _reference_start_John 20:29_reference_end_ _reference_start_Acts 20:35_reference_end_ _reference_start_Acts 26:2_reference_end_ _reference_start_Romans 4:7_reference_end_ _reference_start_Romans 4:8_reference_end_ _reference_start_Romans 14:22_reference_end_ _reference_start_1 Corinthians 7:40_reference_end_ _reference_start_Titus 2:13_reference_end_ _reference_start_James 1:12_reference_end_ _reference_start_James 1:25_reference_end_ _reference_start_1 Peter 3:14_reference_end_ _reference_start_1 Peter 4:14_reference_end_ REV 1:3; 14:13 (2 occurrences); 16:15; 19:9; 20:6; 22:7, 14 _reference_start_Revelation 1:3_reference_end_ _reference_start_Revelation 14:13_reference_end_ _reference_start_Revelation 16:15_reference_end_ _reference_start_Revelation 19:9_reference_end_ _reference_start_Revelation 20:6_reference_end_ _reference_start_Revelation 22:7_reference_end_ _reference_start_Revelation 22:14_reference_end_ \gtrm makarizw \trnl makarizõ LUK 1:48 (Greek verb form corresponds to the Greek adjective form) _reference_start_Luke 1:48_reference_end_ JAS 5:11 (Greek verb form corresponds to the Greek adjective form) _reference_start_James 5:11_reference_end_ \en2 5. Blessing \en3 a. The good things that God does for his people, spiritual or material provisions \gtrm eulogia \trnl eulogia _reference_start_Romans 15:29_reference_end_ 2CO 9:5 (this may be an indirect blessing of God) (2 occurrences), 6 (this may be an indirect blessing of God) (2 occurrences) _reference_start_2 Corinthians 9:5_reference_end_ _reference_start_2 Corinthians 9:6_reference_end_ _reference_start_Galatians 3:14_reference_end_ _reference_start_Ephesians 1:3_reference_end_ _reference_start_Hebrews 6:7_reference_end_ _reference_start_Hebrews 12:17_reference_end_ _reference_start_1 Peter 3:9_reference_end_ \en3 b. The activity of praising or thanking God \gtrm eulogia \trnl eulogia _reference_start_James 3:10_reference_end_ _reference_start_Revelation 5:12_reference_end_ _reference_start_Revelation 5:13_reference_end_ _reference_start_Revelation 7:12_reference_end_ \en3 c. The state of being in a desirable situation, fortunate \gtrm makarismov \trnl makarismos _reference_start_Romans 4:6_reference_end_ _reference_start_Romans 4:9_reference_end_ _reference_start_Galatians 4:15_reference_end_ \en2 6. Miscellaneous \gtrm eulogia \trnl eulogia ROM 16:18 (in this case, the activity is a non-activity) _reference_start_Romans 16:18_reference_end_ _reference_start_1 Corinthians 10:16_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( ?*  >*  =* <* ;* :* 9*- 8(. 7( 6(  5(  4( 3( 2( 1( 0( /( .( -( ,( +6 *6 )< (1 '/  &/ %-  $- #*D ")= !+ *& * # ** ) ) (" (' ( ; . .  *5 * *  * *@ ) ) )) ( ( < . -  * )  :  :  : : : *2 ?tfXJ<. xj\N@2$|n`RD6( ~-  }- |- {- z- y+ x* w*  v*  u*  t) s) r) q( p( o(  n( m.  l- k0 j- i- hB gB fB e; d< c:  b: a1 `0 _/  ^/  ]- \; [*0 ZB YB XB WB VB UB TB S< R< Q; P; O8 N.( M- L- K- J, I,# H+ G+  F* E* D* C* + B* & A* % @*  united together; the Church of Jesus Christ \o1 4. The dead body of a person or animal \o1 5. The form or substance of an inanimate object \o1 6. The reality as opposed to its representation \o1 7. A sexual union of two persons \gtrm swma \trnl sõma \xref [L&N 8.1] \def body (noun) \xref [L&N 9.8] \def physical being \xref [L&N 11.34] \def church \xref [L&N 87.78] \def slave \xref [L&N 58.66] \def reality \xref [L&N 1.26] \def celestial bodies \xref [L&N 23.91] \def alive (at home in the body) \xref [L&N 23.111] \def die (depart from the body) \gtrm swmatikov \trnl sõmatikos \xref [L&N 8.2] \def bodily, physical (adjective) \gtrm swmatikwv \trnl sõmatikõs \xref [L&N 8.2] \def bodily, physically (adverb) \xref [L&N 70.7] \def in reality \gtrm susswma, susswmov \trnl sussõma, sussõmos \xref [L&N 11.9] \def co-member \gtrm ptwma \trnl ptõma \xref [L&N 8.7] \def dead body, carcass, corpse (noun) \gtrm crwv \trnl chrõs \xref [L&N 8.53] \def skin \gtrm kwlon \trnl kõlon \xref [L&N 8.8] \def dead man's  unburied body, corpse \en2 1. The physical body of a living person or animal \en3 a. The living, physical part of a person or animal, the flesh \gtrm swma \trnl sõma MAT 6:25 (2 occurrences); 10:28 (2 occurrences); 26:12, 26 (possibly a metaphor) _reference_start_Matthew 6:25_reference_end_ _reference_start_Matthew 10:28_reference_end_ _reference_start_Matthew 26:12_reference_end_ _reference_start_Matthew 26:26_reference_end_ MRK 5:29; 14:8, 22 (possibly a metaphor) _reference_start_Mark 5:29_reference_end_ _reference_start_Mark 14:8_reference_end_ _reference_start_Mark 14:22_reference_end_ LUK 12:4, 22, 23; 22:19 (possibly a metaphor) _reference_start_Luke 12:4_reference_end_ _reference_start_Luke 12:22_reference_end_ _reference_start_Luke 12:23_reference_end_ _reference_start_Luke 22:19_reference_end_ _reference_start_John 2:21_reference_end_ _reference_start_Romans 1:24_reference_end_ _reference_start_Romans 4:19_reference_end_ _reference_start_Romans 7:4_reference_end_ _reference_start_Romans 8:10_re ference_end_ _reference_start_Romans 12:4_reference_end_ 1CO 5:3; 6:13 (2 occurrences), 18 (2 occurrences) ( alternate sense 3.), 19 (alternate sense 3.), 20 (alternate sense 3.); 7:4 (2 occurrences), 34; 10:16; 11:24 (possibly a metaphor), 27, 29 (alternate sense 3.); 12:12 (3 occurrences), 14 (figuratively #3 (personification of the members of the human body which represent members of the body of Christ)), 15 (figuratively #3 (personification of the members of the human body which represent members of the body of Christ)) (2 occurrences), 16 (figuratively #3 (personification of the members of the human body which represent members of the body of Christ)) (2 occurrences), 17 (figuratively #3 (personification of the members of the human body which represent members of the body of Christ)) (2 occurrences), 18 (figuratively #3 (personification of the members of the human body which represent members of the body of Christ)), 19 (figuratively #3 (personification of the members of the human body which represent members of the body of Christ)), 20 (figuratively #3 (personification of the members of the human body which represent members of the body of Christ)), 22 (figuratively #3 (personification of the members of the human body which represent members of the body of Christ)), 23 (figuratively #3 (personification of the members of the human body which represent members of the body of Christ)), 24 (figuratively #3 (personification of the members of the human body which represent members of the body of Christ)), 25 (figuratively #3 (personification of the members of the human body which represent members of the body of Christ)); 13:3 _reference_start_1 Corinthians 5:3_reference_end_ _reference_start_1 Corinthians 6:13_reference_end_ _reference_start_1 Corinthians 6:18_reference_end_ _reference_start_1 Corinthians 6:19_reference_end_ _reference_start_1 Corinthians 6:20_reference_end_ _reference_start_1 Corinthians 7:4_reference_end_ _reference_start_1 Corinthians 7:34_reference_end_ _reference_start_1 Corinthians 10:16_reference_end_ _reference_start_1 Corinthians 11:24_reference_end_ _reference_start_1 Corinthians 11:27_reference_end_ _reference_start_1 Corinthians 11:29_reference_end_ _reference_start_1 Corinthians 12:12_reference_end_ _reference_start_1 Corinthians 12:14_reference_end_ _reference_start_1 Corinthians 12:15_reference_end_ 2CO 12:2 (2 occurrences), 3 (2 occurrences) _reference_start_2 Corinthians 12:2_reference_end_ _reference_start_2 Corinthians 12:3_reference_end_ _reference_start_Galatians 6:17_reference_end_ PHP 3:21 (2 occurrences) _reference_start_Philippians 3:21_reference_end_ _reference_start_Colossians 1:22_reference_end_ _reference_start_Colossians 2:23_reference_end_ _reference_start_1 Thessalonians 5:23_reference_end_ _reference_start_Hebrews 10:5_reference_end_ _reference_start_Hebrews 10:10_reference_end_ JAS 2:16, 26; 3:2 (alternate sense 1.c. by extension), 3, 6 (alternate sense 1.c. by extension) _reference_start_James 2:16_reference_end_ _reference_start_James 2:26_reference_end_ _reference_start_James 3:2_reference_end_ _reference_start_James 3:3_reference_end_ _reference_start_James 3:6_reference_end_ _reference_start_1 Peter 2:24_reference_end_ _reference_start_Revelation 18:13_reference_end_ \gtrm swmatikov \trnl sõmatikos _reference_start_Luke 3:22_reference_end_ _reference_start_1 Timothy 4:8_reference_end_ \gtrm swmatikwv \trnl sõmatikõs _reference_start_Colossians 2:9_reference_end_ \gtrm crwv \trnl chrõs _reference_start_Acts 19:12_reference_end_ \en3 b. A human being living in this world, one's humanity \gtrm swma \trnl sõma 2CO 4:10 (2 occurrences); 5:6, 8, 10 _reference_start_2 Corinthians 4:10_reference_end_ _reference_start_2 Corinthians 5:6_reference_end_ _reference_start_2 Corinthians 5:8_reference_end_ _reference_start_2 Corinthians 5:10_reference_end_ HEB 13:3 (i.e. As if you were in their boots (paraphrased from NIV)) _reference_start_Hebrews 13:3_reference_end_ \en3 c. The whole of a person (not only the physical part), the self \gtrm swma \trnl sõma MAT 5:29, 30; 6:22 (2 occurrences), 23 _reference_start_Matthew 5:29_reference_end_ _reference_start_Matthew 5:30_reference_end_ _reference_start_Matthew 6:22_reference_end_ _reference_start_Matthew 6:23_reference_end_ LUK 11:34 (3 occurrences), 36 _reference_start_Luke 11:34_reference_end_ _reference_start_Luke 11:36_reference_end_ _reference_start_Romans 8:23_reference_end_ _reference_start_Romans 12:1_reference_end_ _reference_start_1 Corinthians 6:15_reference_end_ _reference_start_1 Corinthians 9:27_reference_end_ _reference_start_2 Corinthians 10:10_reference_end_ _reference_start_Ephesians 5:28_reference_end_ _reference_start_Philippians 1:20_reference_end_ HEB 10:22 (alternate sense 1.a. referring to the ceremonial cleansing by a priest as a figure for our spiritual cleansing) _reference_start_Hebrews 10:22_reference_end_ \en2 2. Human nature, that part of a human being that tends toward sin \gtrm swma \trnl sõma ROM 6:6, 12 (alternate sense 1.); 7:24; 8:11 (alternate sense 1.), 13 _reference_start_Romans 6:6_reference_end_ _reference_start_Romans 6:12_reference_end_ _reference_start_Romans 7:24_reference_end_ _reference_start_Romans 8:11_reference_end_ _reference_start_Romans 8:13_reference_end_ _reference_start_Colossians 2:11_reference_end_ \en2 3. A group of people united together; the Church of Jesus Christ \gtrm swma \trnl sõma _reference_start_Romans 12:5_reference_end_ 1CO 10:17; 11:29 (alternate sense 1.a.); 12:13, 27 _reference_start_1 Corinthians 10:17_reference_end_ _reference_start_1 Corinthians 11:29_reference_end_ _reference_start_1 Corinthians 12:13_reference_end_ _reference_start_1 Corinthians 12:27_reference_end_ EPH 1:23; 2:16; 4:4, 12, 16 (2 occurrences); 5:23, 30 _reference_start_Ephesians 1:23_reference_end_ _reference_start_Ephesians 2:16_reference_end_ _reference_start_Ephesians 4:4_reference_end_ _reference_start_Ephesians 4:12_reference_end_ _reference_start_Ephesians 4:16_reference_end_ _reference_start_Ephesians 5:23_reference_end_ _reference_start_Ephesians 5:30_reference_end_ _reference_start_Colossians 1:18_reference_end_ _reference_start_Colossians 1:24_reference_end_ _reference_start_Colossians 2:19_reference_end_ _reference_start_Colossians 3:15_reference_end_ \en2 4. The dead body of a person or animal \gtrm swma \trnl sõma _reference_start_Matthew 27:52_reference_end_ _reference_start_Matthew 27:58_reference_end_ _reference_start_Matthew 27:59_reference_end_ _reference_start_Mark 15:43_reference_end_ _reference_start_Luke 17:37_reference_end_ _reference_start_Luke 23:52_reference_end_ _reference_start_Luke 23:55_reference_end_ _reference_start_Luke 24:3_reference_end_ _reference_start_Luke 24:23_reference_end_ JHN 19:31 (alternate sense 1.), 38 (2 occurrences), 40; 20:12 _reference_start_John 19:31_reference_end_ _reference_start_John 19:38_reference_end_ _reference_start_John 19:40_reference_end_ _reference_start_John 20:12_reference_end_ _reference_start_Acts 9:40_reference_end_ _reference_start_Hebrews 13:11_reference_end_ _reference_start_Jude 1:9_reference_end_ \gtrm ptwma \trnl ptõma _reference_start_Matthew 14:12_reference_end_ _reference_start_Matthew 24:28_reference_end_ _reference_start_Mark 6:29_reference_end_ _reference_start_Mark 15:45_reference_end_ _reference_start_Revelation 11:8_reference_end_ _reference_start_Revelation 11:9_reference_end_ \gtrm kwlon \trnl kõlon _reference_start_Hebrews 3:17_reference_end_ \en2 5. The form or substance of an inanimate object \gtrm swma \trnl sõma 1CO 15:35, 37, 38 (2 occurrences), 40 (2 occurrences), 44 (3 occurrences) _reference_start_1 Corinthians 15:35_reference_end_ _reference_start_1 Corinthians 15:37_reference_end_ _reference_start_1 Corinthians 15:38_reference_end_ _reference_start_1 Corinthians 15:40_reference_end_ _reference_start_1 Corinthians 15:44_reference_end_ \en2 6. The reality as opposed to its representation \gtrm swma \trnl sõma _reference_start_Colossians 2:17_reference_end_ \en2 7. A sexual union of two persons \gtrm swma \trnl sõma _reference_start_1 Corinthians 6:16_reference_end_ g?++9BROTHER, SISTERbrother, sister\see (see also DISCIPLE, HOLY) \o1 1. Biological sibling, children of the same parent or parents \i9BODYbody\see (see also FLESH, sense 3.) \o1 1. The physical body of a living person or animal \o2 a. The living, physical part of a person or animal, the flesh \o2 b. A human being living in this world, one's humanity \o2 c. The whole of a person (not only the physical part), the self \o1 2. Human nature, that part of a human being that tends toward sin \o1 3. A group of people  ?tfXJ<. xj\N@2$|n`RD6( =. <.  ;.  :-  93 8- 7- 6- 5- 4- 3:  22 11 0/ /.  .. --  ,- +* $ ** " )( (( '( &( %:  $/ #/ "/ !/ , 3 6 * B < ; ; ; ; ; : :  4 3 3 2 0 /  /  .  .  . .  .  .  .  ." . . . . . . ?tfXJ<. xj\N@2$|n`RD6( |( . {(  z( y( x( w( v< u= t:  s4 r- q5 p* o* n* m)  l)  k)# j( i( 2 h(  g. f3 e., d.( c.& b.% a.# `: _B ^B  ])- \) [( Z( YA X: W, ( V+ U+( T+& S+ R* Q* P*7 O*4 N*% M)+ L(; K(: J(4 I3 H3 G3 F3 E1 D1 C1 B1 A1 @1 ?1 >. o2 a. Generic, including both female and male \o2 b. Male \o2 c. Female \o1 2. Fellow believer \o2 a. Second person, as a form of address (usually generic unless the context dictates otherwise) \o2 b. Third person, as a masculine reference \o2 c. Third person, as a feminine reference \o2 d. Third person, as a generic reference \o1 3. Fellow Jew \o1 4. Fellow countryman \o1 5. Neighbor \gtrm adelfov \trnl adelphos \xref [L&N 10.49] \def brother(s) \xref [L&N 11.23] \def fellow believer \xref [L&N 11.25] \def fellow Jew \xref [L&N 11.57] \def fellow countryman \xref [L&N 11.89] \def neighbor \gtrm adelfotjv \trnl adelphotæs \xref [L&N 11.22] \def brotherhood \gtrm adelfj \trnl adelphæ \xref [L&N 10.50] \def sister \xref [L&N 11.24] \def fellow believer \gtrm filadelfia \trnl philadelphia \xref [L&N 25.34] \def love for fellow believer \gtrm filadelfov \trnl philadelphos \xref [L&N 25.35] \def one who loves fellow believers \en2 1. Biological sibling, children of the same parent or parents \en3 a. Generic, including both female and male \gtrm adelfov \trnl adelphos MAT 10:21 (2 occurrences); 12:50 (a live metaphor for “insider”, some one who counts and has influence); 19:29 _reference_start_Matthew 10:21_reference_end_ _reference_start_Matthew 12:50_reference_end_ _reference_start_Matthew 19:29_reference_end_ MRK 3:35 (a live metaphor for “insider”, some one who counts and has influence); 10:29, 30 _reference_start_Mark 3:35_reference_end_ _reference_start_Mark 10:29_reference_end_ _reference_start_Mark 10:30_reference_end_ _reference_start_Luke 14:12_reference_end_ _reference_start_Luke 14:26_reference_end_ _reference_start_Luke 18:29_reference_end_ _reference_start_2 Thessalonians 3:15_reference_end_ \gtrm filadelfia \trnl philadelphia _reference_start_Romans 12:10_reference_end_ 1TH 4:9 (metaphor) _reference_start_1 Thessalonians 4:9_reference_end_ _reference_start_Hebrews 13:1_reference_end_ 2PE 1:7 (2 occurrences) _reference_start_2 Peter 1:7_reference_end_ \gtrm filadelfov \trnl philadelphos _reference_start_1 Peter 3:8_reference_end_ \en3 b. Male \gtrm adelfov \trnl adelphos MAT 1:2, 11; 4:18 (2 occurrences), 21 (2 occurrences); 10:2 (2 occurrences); 12:46, 47, 48, 49 (a live metaphor for “insider”, some one who counts and has influence); 13:55; 14:3; 17:1; 20:24; 22:24 (2 occurrences), 25 (2 occurrences) _reference_start_Matthew 1:2_reference_end_ _reference_start_Matthew 1:11_reference_end_ _reference_start_Matthew 4:18_reference_end_ _reference_start_Matthew 4:21_reference_end_ _reference_start_Matthew 10:2_reference_end_ _reference_start_Matthew 12:46_reference_end_ _reference_start_Matthew 12:47_reference_end_ _reference_start_Matthew 12:48_reference_end_ _reference_start_Matthew 12:49_reference_end_ _reference_start_Matthew 13:55_reference_end_ _reference_start_Matthew 14:3_reference_end_ _reference_start_Matthew 17:1_reference_end_ _reference_start_Matthew 20:24_reference_end_ _reference_start_Matthew 22:24_reference_end_ _reference_start_Matthew 22:25_reference_end_ MRK 1:16, 19; 3:17, 31, 32, 33, 34 (could also be generic); 5:37; 6:3, 17, 18; 12:19 (2 occurrences), 20; 13:12 (2 occurrences) _reference_start_Mark 1:16_reference_end_ _reference_start_Mark 1:19_reference_end_ _reference_start_Mark 3:17_reference_end_ _reference_start_Mark 3:31_reference_end_ _reference_start_Mark 3:32_reference_end_ _reference_start_Mark 3:33_reference_end_ _reference_start_Mark 3:34_reference_end_ _reference_start_Mark 5:37_reference_end_ _reference_start_Mark 6:3_reference_end_ _reference_start_Mark 6:17_reference_end_ _reference_start_Mark 6:18_reference_end_ _reference_start_Mark 12:19_reference_end_ _reference_start_Mark 12:20_reference_end_ _reference_start_Mark 13:12_reference_end_ LUK 3:1, 19; 6:14; 8:19, 20, 21; 12:13; 15:27, 32; 16:28; 20:28 (2 occurrences), 29; 21:16 _reference_start_Luke 3:1_reference_end_ _reference_start_Luke 3:19_reference_end_ _reference_start_Luke 6:14_reference_end_ _reference_start_Luke 8:19_reference_end_ _reference_start_Luke 8:20_reference_end_ _reference_start_Luke 8:21_reference_end_ _reference_start_Luke 12:13_reference_end_ _reference_start_Luke 15:27_reference_end_ _reference_start_Luke 15:32_reference_end_ _reference_start_Luke 16:28_reference_end_ _reference_start_Luke 20:28_reference_end_ _reference_start_Luke 20:29_reference_end_ _reference_start_Luke 21:16_reference_end_ _reference_start_John 1:40_reference_end_ _reference_start_John 1:41_reference_end_ _reference_start_John 2:12_reference_end_ _reference_start_John 6:8_reference_end_ _reference_start_John 7:3_reference_end_ _reference_start_John 7:5_reference_end_ _reference_start_John 7:10_reference_end_ _reference_start_John 11:2_reference_end_ _reference_start_John 11:19_reference_end_ _reference_start_John 11:21_reference_end_ _reference_start_John 11:23_reference_end_ _reference_start_John 11:32_reference_end_ ACT 1:14; 7:13 (2 occurrences); 12:2; 28:11 _reference_start_Acts 1:14_reference_end_ _reference_start_Acts 7:13_reference_end_ _reference_start_Acts 12:2_reference_end_ _reference_start_Acts 28:11_reference_end_ _reference_start_Romans 16:23_reference_end_ _reference_start_1 Corinthians 9:5_reference_end_ _reference_start_Galatians 1:19_reference_end_ _reference_start_1 Timothy 5:1_reference_end_ _reference_start_Philemon 1:16_reference_end_ 1JN 3:12 (2 occurrences) _reference_start_1 John 3:12_reference_end_ _reference_start_Jude 1:1_reference_end_ \en3 c. Female \gtrm adelfj \trnl adelphæ MAT 12:50 (metaphor); 13:56; 19:29 _reference_start_Matthew 12:50_reference_end_ _reference_start_Matthew 13:56_reference_end_ _reference_start_Matthew 19:29_reference_end_ MRK 3:35 (a live metaphor for “insider”, some one who counts and has influence); 6:3; 10:29, 30 _reference_start_Mark 3:35_reference_end_ _reference_start_Mark 6:3_reference_end_ _reference_start_Mark 10:29_reference_end_ _reference_start_Mark 10:30_reference_end_ _reference_start_Luke 10:39_reference_end_ _reference_start_Luke 10:40_reference_end_ _reference_start_Luke 14:26_reference_end_ _reference_start_John 11:1_reference_end_ _reference_start_John 11:2_reference_end_ _reference_start_John 11:5_reference_end_ _reference_start_John 11:28_reference_end_ _reference_start_John 11:39_reference_end_ _reference_start_John 19:25_reference_end_ _reference_start_Acts 23:16_reference_end_ _reference_start_Romans 16:15_reference_end_ _reference_start_1 Timothy 5:2_reference_end_ \en2 2. Fellow believer \en3 a. Second person, as a form of address (usually generic unless the context dictates otherwise) \gtrm adelfov \trnl adelphos _reference_start_Acts 9:17_reference_end_ _reference_start_Acts 15:7_reference_end_ _reference_start_Acts 15:13_reference_end_ _reference_start_Acts 21:20_reference_end_ _reference_start_Acts 22:13_reference_end_ _reference_start_Romans 1:13_reference_end_ _reference_start_Romans 7:1_reference_end_ _reference_start_Romans 7:4_reference_end_ _reference_start_Romans 8:12_reference_end_ _reference_start_Romans 10:1_reference_end_ _reference_start_Romans 11:25_reference_end_ _reference_start_Romans 12:1_reference_end_ _reference_start_Romans 15:14_reference_end_ _reference_start_Romans 15:30_reference_end_ _reference_start_Romans 16:17_reference_end_ _reference_start_1 Corinthians 1:10_reference_end_ _reference_start_1 Corinthians 1:11_reference_end_ _reference_start_1 Corinthians 1:26_reference_end_ _reference_start_1 Corinthians 2:1_reference_end_ _reference_start_1 Corinthians 3:1_reference_end_ _reference_start_1 Corinthians 4:6_reference_end_ _reference_start_1 Corinthians 7:24_reference_end_ _reference_start_1 Corinthians 7:29_reference_end_ _reference_start_1 Corinthians 10:1_reference_end_ _reference_start_1 Corinthians 11:33_reference_end_ _reference_start_1 Corinthians 12:1_reference_end_ _reference_start_1 Corinthians 14:6_reference_end_ _reference_start_1 Corinthians 14:20_reference_end_ _reference_start_1 Corinthians 14:26_reference_end_ _reference_start_1 Corinthians 14:39_reference_end_ _reference_start_1 Corinthians 15:1_reference_end_ _reference_start_1 Corinthians 15:50_reference_en d_ _reference_start_1 Corinthians 15:58_reference_end_ _reference_start_1 Corinthians 16:15_reference_end_ _reference_start_2 Corinthians 1:8_reference_end_ _reference_start_2 Corinthians 8:1_reference_end_ _reference_start_2 Corinthians 13:11_reference_end_ _reference_start_Galatians 1:11_reference_end_ _reference_start_Galatians 3:15_reference_end_ _reference_start_Galatians 4:12_reference_end_ _reference_start_Galatians 4:28_reference_end_ _reference_start_Galatians 4:31_reference_end_ _reference_start_Galatians 5:11_reference_end_ _reference_start_Galatians 5:13_reference_end_ _reference_start_Galatians 6:1_reference_end_ _reference_start_Galatians 6:18_reference_end_ _reference_start_Philippians 1:12_reference_end_ _reference_start_Philippians 3:1_reference_end_ _reference_start_Philippians 3:13_reference_end_ _reference_start_Philippians 3:17_reference_end_ _reference_start_Philippians 4:1_reference_end_ _reference_start_Philippians 4:8_reference_end_ _reference_start_1 Thessalonians 1:4_reference_e!nd_ _reference_start_1 Thessalonians 2:1_reference_end_ _reference_start_1 Thessalonians 2:9_reference_end_ _reference_start_1 Thessalonians 2:17_reference_end_ _reference_start_1 Thessalonians 3:7_reference_end_ _reference_start_1 Thessalonians 4:1_reference_end_ _reference_start_1 Thessalonians 4:10_reference_end_ _reference_start_1 Thessalonians 4:13_reference_end_ _reference_start_1 Thessalonians 5:1_reference_end_ _reference_start_1 Thessalonians 5:12_reference_end_ _reference_start_1 Thessalonians 5:14_reference_end_ _reference_start_1 Thessalonians 5:25_reference_end_ _reference_start_2 Thessalonians 1:3_reference_end_ _reference_start_2 Thessalonians 2:1_reference_end_ _reference_start_2 Thessalonians 2:13_reference_end_ _reference_start_2 Thessalonians 2:15_reference_end_ _reference_start_2 Thessalonians 3:1_reference_end_ _reference_start_2 Thessalonians 3:6_reference_end_ _reference_start_2 Thessalonians 3:13_reference_end_ _reference_start_Philemon 1:20_reference_end_ _reference_start_Hebrews "3:1_reference_end_ _reference_start_Hebrews 3:12_reference_end_ _reference_start_Hebrews 10:19_reference_end_ _reference_start_Hebrews 13:22_reference_end_ _reference_start_James 1:2_reference_end_ _reference_start_James 1:16_reference_end_ _reference_start_James 1:19_reference_end_ _reference_start_James 2:1_reference_end_ _reference_start_James 2:5_reference_end_ _reference_start_James 2:14_reference_end_ _reference_start_James 3:1_reference_end_ _reference_start_James 3:10_reference_end_ _reference_start_James 3:12_reference_end_ _reference_start_James 4:11_reference_end_ _reference_start_James 5:7_reference_end_ _reference_start_James 5:9_reference_end_ _reference_start_James 5:10_reference_end_ _reference_start_James 5:12_reference_end_ _reference_start_James 5:19_reference_end_ _reference_start_2 Peter 1:10_reference_end_ \en3 b. Third person, as a masculine reference \gtrm adelfov \trnl adelphos _reference_start_Acts 11:12_reference_end_ _reference_start_Acts 16:40_reference_end_ 1CO 1:1; 7:12, 15 #(2 occurrences); 16:12 (2 occurrences) _reference_start_1 Corinthians 1:1_reference_end_ _reference_start_1 Corinthians 7:12_reference_end_ _reference_start_1 Corinthians 7:15_reference_end_ _reference_start_1 Corinthians 16:12_reference_end_ _reference_start_2 Corinthians 1:1_reference_end_ _reference_start_2 Corinthians 2:13_reference_end_ _reference_start_2 Corinthians 8:18_reference_end_ _reference_start_2 Corinthians 8:22_reference_end_ _reference_start_2 Corinthians 8:23_reference_end_ _reference_start_2 Corinthians 9:3_reference_end_ _reference_start_2 Corinthians 9:5_reference_end_ _reference_start_2 Corinthians 11:9_reference_end_ _reference_start_2 Corinthians 12:18_reference_end_ _reference_start_Ephesians 6:21_reference_end_ _reference_start_Philippians 2:25_reference_end_ _reference_start_Colossians 1:1_reference_end_ _reference_start_Colossians 4:7_reference_end_ _reference_start_Colossians 4:9_reference_end_ _reference_start_1 Thessalonians 3:2_reference_end_ _reference_start_Philemon 1:1_r$eference_end_ _reference_start_Philemon 1:7_reference_end_ _reference_start_Hebrews 13:23_reference_end_ _reference_start_James 2:15_reference_end_ _reference_start_1 Peter 5:12_reference_end_ 2PE 3:15 (2 occurrences) _reference_start_2 Peter 3:15_reference_end_ _reference_start_Revelation 1:9_reference_end_ \en3 c. Third person, as a feminine reference \gtrm adelfj \trnl adelphæ _reference_start_Romans 16:1_reference_end_ _reference_start_1 Corinthians 7:15_reference_end_ _reference_start_1 Corinthians 9:5_reference_end_ _reference_start_James 2:15_reference_end_ 2JN 1:13 (probably a metaphor for church) _reference_start_2 John 1:13_reference_end_ \en3 d. Third person, as a generic reference \gtrm adelfov \trnl adelphos _reference_start_Matthew 23:8_reference_end_ _reference_start_Matthew 25:40_reference_end_ _reference_start_Matthew 28:10_reference_end_ _reference_start_Luke 22:32_reference_end_ _reference_start_John 20:17_reference_end_ _reference_start_John 21:23_reference_end_ _reference_start_Acts %9:30_reference_end_ _reference_start_Acts 10:23_reference_end_ _reference_start_Acts 11:1_reference_end_ _reference_start_Acts 11:29_reference_end_ _reference_start_Acts 12:17_reference_end_ _reference_start_Acts 14:2_reference_end_ _reference_start_Acts 15:1_reference_end_ _reference_start_Acts 15:3_reference_end_ _reference_start_Acts 15:22_reference_end_ _reference_start_Acts 15:23_reference_end_ _reference_start_Acts 15:32_reference_end_ _reference_start_Acts 15:33_reference_end_ _reference_start_Acts 15:36_reference_end_ _reference_start_Acts 15:40_reference_end_ _reference_start_Acts 16:2_reference_end_ _reference_start_Acts 17:6_reference_end_ _reference_start_Acts 17:10_reference_end_ _reference_start_Acts 17:14_reference_end_ _reference_start_Acts 18:18_reference_end_ _reference_start_Acts 18:27_reference_end_ _reference_start_Acts 21:7_reference_end_ _reference_start_Acts 21:17_reference_end_ _reference_start_Acts 28:14_reference_end_ _reference_start_Acts 28:15_reference_end_ ROM 8:29; 14:10 (2& occurrences), 13, 15, 21; 16:14 _reference_start_Romans 8:29_reference_end_ _reference_start_Romans 14:10_reference_end_ _reference_start_Romans 14:13_reference_end_ _reference_start_Romans 14:15_reference_end_ _reference_start_Romans 14:21_reference_end_ _reference_start_Romans 16:14_reference_end_ 1CO 5:11; 6:5, 6 (2 occurrences), 8; 8:11, 12, 13 (4 occurrences); 15:6; 16:11, 20 _reference_start_1 Corinthians 5:11_reference_end_ _reference_start_1 Corinthians 6:5_reference_end_ _reference_start_1 Corinthians 6:6_reference_end_ _reference_start_1 Corinthians 6:8_reference_end_ _reference_start_1 Corinthians 8:11_reference_end_ _reference_start_1 Corinthians 8:12_reference_end_ _reference_start_1 Corinthians 8:13_reference_end_ _reference_start_1 Corinthians 15:6_reference_end_ _reference_start_1 Corinthians 16:11_reference_end_ _reference_start_1 Corinthians 16:20_reference_end_ _reference_start_Galatians 1:2_reference_end_ _reference_start_Ephesians 6:23_reference_end_ _reference_start_Philippians 1:14'_reference_end_ _reference_start_Philippians 4:21_reference_end_ _reference_start_Colossians 1:2_reference_end_ _reference_start_Colossians 4:15_reference_end_ _reference_start_1 Thessalonians 4:6_reference_end_ _reference_start_1 Thessalonians 4:10_reference_end_ _reference_start_1 Thessalonians 5:26_reference_end_ _reference_start_1 Thessalonians 5:27_reference_end_ _reference_start_2 Thessalonians 3:6_reference_end_ _reference_start_1 Timothy 4:6_reference_end_ _reference_start_1 Timothy 6:2_reference_end_ _reference_start_2 Timothy 4:21_reference_end_ _reference_start_Hebrews 2:11_reference_end_ _reference_start_Hebrews 2:12_reference_end_ _reference_start_Hebrews 2:17_reference_end_ _reference_start_James 1:9_reference_end_ 1JN 2:9; 3:14 (2 occurrences), 16; 5:16 _reference_start_1 John 2:9_reference_end_ _reference_start_1 John 3:14_reference_end_ _reference_start_1 John 3:16_reference_end_ _reference_start_1 John 5:16_reference_end_ _reference_start_3 John 1:3_reference_end_ _reference_start_3 John( 1:5_reference_end_ _reference_start_3 John 1:10_reference_end_ _reference_start_Revelation 6:11_reference_end_ _reference_start_Revelation 12:10_reference_end_ _reference_start_Revelation 19:10_reference_end_ _reference_start_Revelation 22:9_reference_end_ \gtrm adelfotjv \trnl adelphotæs _reference_start_1 Peter 2:17_reference_end_ _reference_start_1 Peter 5:9_reference_end_ \gtrm filadelfia \trnl philadelphia _reference_start_1 Peter 1:22_reference_end_ \itrm Implied _reference_start_1 Corinthians 6:1_reference_end_ \en2 3. Fellow Jew \gtrm adelfov \trnl adelphos ACT 2:29, 37; 3:22, 17; 6:3; 7:2, 23 (alternate sense 4.), 25, 26, 37; 13:15, 26, 38; 22:1, 5; 23:1, 5, 6; 28:17, 21 _reference_start_Acts 2:29_reference_end_ _reference_start_Acts 2:37_reference_end_ _reference_start_Acts 3:22_reference_end_ _reference_start_Acts 3:17_reference_end_ _reference_start_Acts 6:3_reference_end_ _reference_start_Acts 7:2_reference_end_ _reference_start_Acts 7:23_reference_end_ _reference_start_Acts 7:25_reference_)end_ _reference_start_Acts 7:26_reference_end_ _reference_start_Acts 7:37_reference_end_ _reference_start_Acts 13:15_reference_end_ _reference_start_Acts 13:26_reference_end_ _reference_start_Acts 13:38_reference_end_ _reference_start_Acts 22:1_reference_end_ _reference_start_Acts 22:5_reference_end_ _reference_start_Acts 23:1_reference_end_ _reference_start_Acts 23:5_reference_end_ _reference_start_Acts 23:6_reference_end_ _reference_start_Acts 28:17_reference_end_ _reference_start_Acts 28:21_reference_end_ _reference_start_Romans 9:3_reference_end_ HEB 7:5 (2 occurrences) _reference_start_Hebrews 7:5_reference_end_ \en2 4. Fellow countryman \gtrm adelfov \trnl adelphos MAT 5:47 (alternate sense 3.) _reference_start_Matthew 5:47_reference_end_ ACT 7:23 (alternate sense 3.) _reference_start_Acts 7:23_reference_end_ _reference_start_1 Thessalonians 2:14_reference_end_ \en2 5. Neighbor \gtrm adelfov \trnl adelphos MAT 5:22 (2 occurrences), 23, 24; 7:3, 4, 5; 18:15 (2 occurrences), 21, 35 _reference_start_Matthew 5:22_reference_end_ _reference_start_Matthew 5:23_reference_end_ _reference_start_Matthew 5:24_reference_end_ _reference_start_Matthew 7:3_reference_end_ _reference_start_Matthew 7:4_reference_end_ _reference_start_Matthew 7:5_reference_end_ _reference_start_Matthew 18:15_reference_end_ _reference_start_Matthew 18:21_reference_end_ _reference_start_Matthew 18:35_reference_end_ LUK 6:41, 42 (3 occurrences); 17:3 _reference_start_Luke 6:41_reference_end_ _reference_start_Luke 6:42_reference_end_ _reference_start_Luke 17:3_reference_end_ _reference_start_Hebrews 8:11_reference_end_ JAS 4:11 (3 occurrences) _reference_start_James 4:11_reference_end_ 1JN 2:10, 11; 3:10, 15, 17; 4:20 (2 occurrences), 21 _reference_start_1 John 2:10_reference_end_ _reference_start_1 John 2:11_reference_end_ _reference_start_1 John 3:10_reference_end_ _reference_start_1 John 3:15_reference_end_ _reference_start_1 John 3:17_reference_end_ _reference_start_1 John 4:20_reference_end_ _reference_start_1 John 4:21_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( ;)# :( 9( 8 8( 2 7A 6> 59 46 30 2.  1- 0, /,  ., -, ,+ ++  *+  )+  (+  '+ &+ %+ $+ #+ "+) !+( * * * * * * * * * * * * * ) )  )  ) ) ) )% )" )! ) ) ) ) ) ( ( ( ( ( ( 7 ( 1 ~( 0 }( / ?tfXJ<. xj\N@2$|n`RD6( z2 y2 x0 w0 v0 u0 t0 s0 r0 q0 p0 o/ n/ m/ l. k.: j.2 i. h.' g. f. e. d.  c. ! b.  a. `. _. ^. ]. \. [. Z. Y- X- W- V-  U-  T-  S- R- Q- P- O, N, M, L, K,  J6 I- H, G+ F+ ' E+  D+  C+  B+  A* @* ( ?* ' >)  =)  <) ?tfXJ<. xj\N@2$|n`RD6( 93 83 72 61 5/  4/ 3/  2/  1/ 0/ // ./ -/ ,. +. *. ). (,( ', &= %; $; #; "; !; ; ; ; ; ; ; ; ; ; ; :  :  : : 9 5 5 5 5 5 5 5 4 4 4 4 4 4 4 4 4 4 4 4 ~2 }2 |2 {2 ?tfXJ<. xj\N@2$|n`RD6( x2 w1 v0 u. t. s. r. q. p. o. n. m. l. k- j- i- h- g- f- e, d, c, b, a, `, _, ^, ], \, [,( Z,$ Y,! X, W, V, U, T, S, R,  Q,  P,  O,  N,  M+ L+ K* J( I(( H( G? F; E.  D. C- BB A= @< ?; >:  =9 <9 ;4 :3 ?tfXJ<. xj\N@2$|n`RD6( 7( 6( 5( 4( 3( 2( 1( 0( /4 ., -(/ ,: +-  *, ), (, ', &, %, $, #, & ",  !,  ,% , , , , , , , ,% , . < < < B B B B @ @ @ > > > > ; : : : 7 6 6 5 4 ~4 }4 |4 {3 z3 y2 ?tfXJ<. xj\N@2$|n`RD6( v+ u+ t+ 9 s+ / r+- q+ p* o* n* m* l*B k*4 j* i* h* g* f*/ e*  d) c) b) a) `) _)7 ^)5 ])+ \) [) Z)  Y)  X) ! W) V( U(> T() S( R( Q( P( O( N(; M(/ L( K( J(- I( H( G( F( E( D> C> B> A> @> ?> >> =; <: ;* :** 9*) 8(#1reference_start_Matthew 26:59_reference_end_ _reference_start_Matthew 27:1_reference_end_ _reference_start_Matthew 27:3_reference_end_ _reference_start_Matthew 27:6_reference_end_ _reference_start_Matthew 27:12_reference_end_ _reference_start_Matthew 27:20_reference_end_ _reference_start_Matthew 27:41_reference_end_ _reference_start_Matthew 27:62_reference_end_ _reference_start_Matthew 28:11_reference_end_ _reference_start_Mark 8:31_reference_end_ _reference_start_Mark 10:33_reference_end_ _reference_start_Mark 11:18_reference_end_ _reference_start_Mark 11:27_reference_end_ _reference_start_Mark 14:1_reference_end_ _reference_start_Mark 14:10_reference_end_ _reference_start_Mark 14:43_reference_end_ _reference_start_Mark 14:53_reference_end_ _reference_start_Mark 14:55_reference_end_ _reference_start_Mark 15:1_reference_end_ _reference_start_Mark 15:3_reference_end_ _reference_start_Mark 15:10_reference_end_ _reference_start_Mark 15:11_reference_end_ _reference_start_Mark 15:31_reference_end_ _reference_s2tart_Luke 9:22_reference_end_ _reference_start_Luke 19:47_reference_end_ _reference_start_Luke 20:1_reference_end_ _reference_start_Luke 20:19_reference_end_ _reference_start_Luke 22:2_reference_end_ _reference_start_Luke 22:4_reference_end_ _reference_start_Luke 22:52_reference_end_ _reference_start_Luke 22:66_reference_end_ _reference_start_Luke 23:4_reference_end_ _reference_start_Luke 23:10_reference_end_ _reference_start_Luke 23:13_reference_end_ _reference_start_Luke 24:20_reference_end_ _reference_start_John 7:32_reference_end_ _reference_start_John 7:45_reference_end_ _reference_start_John 11:47_reference_end_ _reference_start_John 11:57_reference_end_ _reference_start_John 12:10_reference_end_ _reference_start_John 18:3_reference_end_ _reference_start_John 18:35_reference_end_ _reference_start_John 19:6_reference_end_ _reference_start_John 19:15_reference_end_ _reference_start_John 19:21_reference_end_ ACT 4:23; 5:24; 9:14, 21; 19:14 (best as chief priest because Sceva is not in the list of high 3priests); 22:30; 23:14; 25:2, 15; 26:10, 12 _reference_start_Acts 4:23_reference_end_ _reference_start_Acts 5:24_reference_end_ _reference_start_Acts 9:14_reference_end_ _reference_start_Acts 9:21_reference_end_ _reference_start_Acts 19:14_reference_end_ _reference_start_Acts 22:30_reference_end_ _reference_start_Acts 23:14_reference_end_ _reference_start_Acts 25:2_reference_end_ _reference_start_Acts 25:15_reference_end_ _reference_start_Acts 26:10_reference_end_ _reference_start_Acts 26:12_reference_end_ \en2 2. The ruler of the chief priests, the (supreme) High Priest \gtrm arciereuv \trnl archiereus _reference_start_Matthew 26:3_reference_end_ _reference_start_Matthew 26:51_reference_end_ _reference_start_Matthew 26:57_reference_end_ _reference_start_Matthew 26:58_reference_end_ _reference_start_Matthew 26:62_reference_end_ _reference_start_Matthew 26:63_reference_end_ _reference_start_Matthew 26:65_reference_end_ _reference_start_Mark 2:26_reference_end_ _reference_start_Mark 14:47_reference_end_ _re4ference_start_Mark 14:53_reference_end_ _reference_start_Mark 14:54_reference_end_ _reference_start_Mark 14:60_reference_end_ _reference_start_Mark 14:61_reference_end_ _reference_start_Mark 14:63_reference_end_ _reference_start_Mark 14:66_reference_end_ _reference_start_Luke 22:50_reference_end_ _reference_start_Luke 22:54_reference_end_ JHN 11:49, 51; 18:10, 13, 15 (2 occurrences), 16, 19, 22, 24, 26 _reference_start_John 11:49_reference_end_ _reference_start_John 11:51_reference_end_ _reference_start_John 18:10_reference_end_ _reference_start_John 18:13_reference_end_ _reference_start_John 18:15_reference_end_ _reference_start_John 18:16_reference_end_ _reference_start_John 18:19_reference_end_ _reference_start_John 18:22_reference_end_ _reference_start_John 18:24_reference_end_ _reference_start_John 18:26_reference_end_ _reference_start_Acts 4:6_reference_end_ _reference_start_Acts 5:17_reference_end_ _reference_start_Acts 5:21_reference_end_ _reference_start_Acts 5:27_reference_end_ _reference_start_Acts 7:1_reference_end_ _reference_start_Acts 9:1_reference_end_ _reference_start_Acts 22:5_reference_end_ _reference_start_Acts 23:2_reference_end_ _reference_start_Acts 23:4_reference_end_ _reference_start_Acts 23:5_reference_end_ _reference_start_Acts 24:1_reference_end_ HEB 2:17; 3:1; 4:14, 15; 5:1, 5, 10; 6:20; 7:26, 27 (plural high priest (see context: HEB 7:26)), 28 (plural high priest (see context: HEB 7:26)); 8:1, 3; 9:7, 11, 25; 13:11 _reference_start_Hebrews 2:17_reference_end_ _reference_start_Hebrews 3:1_reference_end_ _reference_start_Hebrews 4:14_reference_end_ _reference_start_Hebrews 4:15_reference_end_ _reference_start_Hebrews 5:1_reference_end_ _reference_start_Hebrews 5:5_reference_end_ _reference_start_Hebrews 5:10_reference_end_ _reference_start_Hebrews 6:20_reference_end_ _reference_start_Hebrews 7:26_reference_end_ _reference_start_Hebrews 7:27_reference_end_ _reference_start_Hebrews 7:28_reference_end_ \gtrm arcieratikov \trnl archieratikos _reference_start_Acts 4:6_reference_end_ ;;)??gCHIEF PRIEST, HIGH PRIESTchief priest, high priest\see (see also PRIEST) \o1 1. Influential group of the most important priests \o1 2. The ruler of the chief priests, the (supreme) High Priest \gtrm arciereuv \trnl archiereus \xref [L&N 53.88] \def chief priest, a principal priest \xref [L&N 53.89] \def high priest, the principal priest \gtrm arcieratikov \trnl archieratikos \xref [L&N 53.90] \def high priestly, pertaining to the high priest \en2 1. Influential group of the most important priests \gtrm arciereuv \trnl archiereus _reference_start_Matthew 2:4_reference_end_ _reference_start_Matthew 16:21_reference_end_ _reference_start_Matthew 20:18_reference_end_ _reference_start_Matthew 21:15_reference_end_ _reference_start_Matthew 21:23_reference_end_ _reference_start_Matthew 21:45_reference_end_ _reference_start_Matthew 26:3_reference_end_ _reference_start_Matthew 26:14_reference_end_ _reference_start_Matthew 26:47_reference_end_ _0 ?tfXJ<. xj\N@2$|n`RD6( 5: 4: 3: 2: 1: 0: /: .: -: ,: +, *, ), (, ', &,  %, $, #, ", !, + + + + + + + + + 3 + 1 *6 *2 )B )? )= )< )6 )5 )/ ) (A (? (> (: (9 (3 ( , , , , , , , ~,  },  |, {, z+ y+ x+ w+# ?tfXJ<. xj\N@2$|n`RD6( t-  s, r, q, p, o,  n, m,* l, k, j, i,$ h, g+ f+ " e+  d+  c+  b+* a+) `+ _+ ^+ ]+ \+ [+ Z+) Y+ X+ W*. V* U*' T*# S* R*C Q*) P*  O*) N* M* L* K) J)= I)  H) # G) ) F) E( D( C(D B(? A( @( ?( >(* =( <( ;(  :( 9( 8( 7, 6:9ence_end_ _reference_start_Matthew 11:2_reference_end_ _reference_start_Matthew 16:16_reference_end_ _reference_start_Matthew 16:20_reference_end_ _reference_start_Matthew 22:42_reference_end_ _reference_start_Matthew 23:10_reference_end_ _reference_start_Matthew 24:5_reference_end_ _reference_start_Matthew 24:23_reference_end_ _reference_start_Matthew 26:63_reference_end_ _reference_start_Matthew 26:68_reference_end_ _reference_start_Matthew 27:17_reference_end_ _reference_start_Matthew 27:22_reference_end_ _reference_start_Mark 8:29_reference_end_ _reference_start_Mark 9:41_reference_end_ _reference_start_Mark 12:35_reference_end_ _reference_start_Mark 13:21_reference_end_ _reference_start_Mark 14:61_reference_end_ _reference_start_Mark 15:32_reference_end_ _reference_start_Luke 2:11_reference_end_ _reference_start_Luke 2:26_reference_end_ _reference_start_Luke 3:15_reference_end_ _reference_start_Luke 4:41_reference_end_ _reference_start_Luke 9:20_reference_end_ _reference_start_Luke 20:41_reference_en:d_ _reference_start_Luke 22:67_reference_end_ _reference_start_Luke 23:2_reference_end_ _reference_start_Luke 23:35_reference_end_ _reference_start_Luke 23:39_reference_end_ _reference_start_Luke 24:26_reference_end_ _reference_start_Luke 24:46_reference_end_ JHN 1:20, 25, 41; 3:28; 4:25, 29; 7:26, 27, 31, 41 (2 occurrences), 42; 9:22; 10:24; 11:27; 12:34; 20:31 _reference_start_John 1:20_reference_end_ _reference_start_John 1:25_reference_end_ _reference_start_John 1:41_reference_end_ _reference_start_John 3:28_reference_end_ _reference_start_John 4:25_reference_end_ _reference_start_John 4:29_reference_end_ _reference_start_John 7:26_reference_end_ _reference_start_John 7:27_reference_end_ _reference_start_John 7:31_reference_end_ _reference_start_John 7:41_reference_end_ _reference_start_John 7:42_reference_end_ _reference_start_John 9:22_reference_end_ _reference_start_John 10:24_reference_end_ _reference_start_John 11:27_reference_end_ _reference_start_John 12:34_reference_end_ _reference_start_John ;20:31_reference_end_ ACT 2:31, 36; 3:18, 20; 4:26; 5:42; 8:5; 9:22; 17:3 (2 occurrences); 18:5, 28; 26:23 _reference_start_Acts 2:31_reference_end_ _reference_start_Acts 2:36_reference_end_ _reference_start_Acts 3:18_reference_end_ _reference_start_Acts 3:20_reference_end_ _reference_start_Acts 4:26_reference_end_ _reference_start_Acts 5:42_reference_end_ _reference_start_Acts 8:5_reference_end_ _reference_start_Acts 9:22_reference_end_ _reference_start_Acts 17:3_reference_end_ _reference_start_Acts 18:5_reference_end_ _reference_start_Acts 18:28_reference_end_ _reference_start_Acts 26:23_reference_end_ _reference_start_Romans 9:5_reference_end_ 1PE 1:11 (2 occurrences) _reference_start_1 Peter 1:11_reference_end_ _reference_start_1 John 2:22_reference_end_ _reference_start_1 John 5:1_reference_end_ _reference_start_Revelation 11:15_reference_end_ _reference_start_Revelation 12:10_reference_end_ \gtrm messiav \trnl messias _reference_start_John 1:41_reference_end_ _reference_start_John 4:25_reference_end_< \en2 2. As a name \en3 a. The name “Christ” \gtrm cristov \trnl christos _reference_start_Romans 5:6_reference_end_ _reference_start_Romans 5:8_reference_end_ _reference_start_Romans 6:4_reference_end_ _reference_start_Romans 6:8_reference_end_ _reference_start_Romans 6:9_reference_end_ _reference_start_Romans 7:4_reference_end_ _reference_start_Romans 8:9_reference_end_ _reference_start_Romans 8:10_reference_end_ _reference_start_Romans 8:17_reference_end_ _reference_start_Romans 8:35_reference_end_ _reference_start_Romans 9:1_reference_end_ _reference_start_Romans 9:3_reference_end_ _reference_start_Romans 10:4_reference_end_ _reference_start_Romans 10:6_reference_end_ _reference_start_Romans 10:7_reference_end_ _reference_start_Romans 10:17_reference_end_ _reference_start_Romans 12:5_reference_end_ _reference_start_Romans 14:9_reference_end_ _reference_start_Romans 14:15_reference_end_ _reference_start_Romans 14:18_reference_end_ _reference_start_Romans 15:3_reference_end_ _reference_start_Romans 15=:7_reference_end_ _reference_start_Romans 15:8_reference_end_ _reference_start_Romans 15:18_reference_end_ _reference_start_Romans 15:19_reference_end_ _reference_start_Romans 15:20_reference_end_ _reference_start_Romans 15:29_reference_end_ _reference_start_Romans 16:5_reference_end_ _reference_start_Romans 16:7_reference_end_ _reference_start_Romans 16:9_reference_end_ _reference_start_Romans 16:10_reference_end_ _reference_start_Romans 16:16_reference_end_ _reference_start_Romans 16:18_reference_end_ 1CO 1:6, 12, 13, 17 (2 occurrences), 23, 24; 2:16; 3:1, 23 (2 occurrences); 4:1, 10 (2 occurrences), 15 (2 occurrences), 17; 5:7; 6:15 (2 occurrences); 7:22; 8:11, 12; 9:12, 21; 10:4, 16 (2 occurrences); 11:1, 3 (2 occurrences); 12:12, 27; 15:3, 12, 13, 14, 15, 16, 17, 18, 19, 20, 22, 23 (2 occurrences) _reference_start_1 Corinthians 1:6_reference_end_ _reference_start_1 Corinthians 1:12_reference_end_ _reference_start_1 Corinthians 1:13_reference_end_ _reference_start_1 Corinthians 1:17_reference_end_ _re>ference_start_1 Corinthians 1:23_reference_end_ _reference_start_1 Corinthians 1:24_reference_end_ _reference_start_1 Corinthians 2:16_reference_end_ _reference_start_1 Corinthians 3:1_reference_end_ _reference_start_1 Corinthians 3:23_reference_end_ _reference_start_1 Corinthians 4:1_reference_end_ _reference_start_1 Corinthians 4:10_reference_end_ _reference_start_1 Corinthians 4:15_reference_end_ _reference_start_1 Corinthians 4:17_reference_end_ _reference_start_1 Corinthians 5:7_reference_end_ _reference_start_1 Corinthians 6:15_reference_end_ _reference_start_1 Corinthians 7:22_reference_end_ _reference_start_1 Corinthians 8:11_reference_end_ _reference_start_1 Corinthians 8:12_reference_end_ _reference_start_1 Corinthians 9:12_reference_end_ _reference_start_1 Corinthians 9:21_reference_end_ _reference_start_1 Corinthians 10:4_reference_end_ _reference_start_1 Corinthians 10:16_reference_end_ _reference_start_1 Corinthians 11:1_reference_end_ _reference_start_1 Corinthians 11:3_reference_end_ _refe?rence_start_1 Corinthians 12:12_reference_end_ _reference_start_1 Corinthians 12:27_reference_end_ _reference_start_1 Corinthians 15:3_reference_end_ _reference_start_1 Corinthians 15:12_reference_end_ _reference_start_1 Corinthians 15:13_reference_end_ _reference_start_1 Corinthians 15:14_reference_end_ _reference_start_1 Corinthians 15:15_reference_end_ _reference_start_1 Corinthians 15:16_reference_end_ _reference_start_1 Corinthians 15:17_reference_end_ _reference_start_1 Corinthians 15:18_reference_end_ _reference_start_1 Corinthians 15:19_reference_end_ _reference_start_1 Corinthians 15:20_reference_end_ _reference_start_1 Corinthians 15:22_reference_end_ _reference_start_1 Corinthians 15:23_reference_end_ 2CO 1:5 (2 occurrences), 21; 2:10, 12, 14, 15, 17; 3:3, 4, 14; 4:4, 6; 5:10, 14, 16, 17, 18, 19, 20 (2 occurrences); 6:15; 8:23; 9:13; 10:1, 5, 7 (2 occurrences), 14; 11:2, 3, 10, 13, 23; 12:2, 9, 10, 19; 13:3 _reference_start_2 Corinthians 1:5_reference_end_ _reference_start_2 Corinthians 1:21_re@ference_end_ _reference_start_2 Corinthians 2:10_reference_end_ _reference_start_2 Corinthians 2:12_reference_end_ _reference_start_2 Corinthians 2:14_reference_end_ _reference_start_2 Corinthians 2:15_reference_end_ _reference_start_2 Corinthians 2:17_reference_end_ _reference_start_2 Corinthians 3:3_reference_end_ _reference_start_2 Corinthians 3:4_reference_end_ _reference_start_2 Corinthians 3:14_reference_end_ _reference_start_2 Corinthians 4:4_reference_end_ _reference_start_2 Corinthians 4:6_reference_end_ _reference_start_2 Corinthians 5:10_reference_end_ _reference_start_2 Corinthians 5:14_reference_end_ _reference_start_2 Corinthians 5:16_reference_end_ _reference_start_2 Corinthians 5:17_reference_end_ _reference_start_2 Corinthians 5:18_reference_end_ _reference_start_2 Corinthians 5:19_reference_end_ _reference_start_2 Corinthians 5:20_reference_end_ _reference_start_2 Corinthians 6:15_reference_end_ _reference_start_2 Corinthians 8:23_reference_end_ _reference_start_2 Corinthians 9:13_refereAnce_end_ _reference_start_2 Corinthians 10:1_reference_end_ _reference_start_2 Corinthians 10:5_reference_end_ _reference_start_2 Corinthians 10:7_reference_end_ _reference_start_2 Corinthians 10:14_reference_end_ _reference_start_2 Corinthians 11:2_reference_end_ _reference_start_2 Corinthians 11:3_reference_end_ _reference_start_2 Corinthians 11:10_reference_end_ _reference_start_2 Corinthians 11:13_reference_end_ _reference_start_2 Corinthians 11:23_reference_end_ _reference_start_2 Corinthians 12:2_reference_end_ _reference_start_2 Corinthians 12:9_reference_end_ _reference_start_2 Corinthians 12:10_reference_end_ _reference_start_2 Corinthians 12:19_reference_end_ _reference_start_2 Corinthians 13:3_reference_end_ GAL 1:6, 7, 10, 22; 2:17 (2 occurrences), 20 (2 occurrences), 21; 3:13, 16, 24, 27 (2 occurrences), 29; 4:19; 5:1, 2, 4; 6:2, 12 _reference_start_Galatians 1:6_reference_end_ _reference_start_Galatians 1:7_reference_end_ _reference_start_Galatians 1:10_reference_end_ _reference_start_GalatiBans 1:22_reference_end_ _reference_start_Galatians 2:17_reference_end_ _reference_start_Galatians 2:20_reference_end_ _reference_start_Galatians 2:21_reference_end_ _reference_start_Galatians 3:13_reference_end_ _reference_start_Galatians 3:16_reference_end_ _reference_start_Galatians 3:24_reference_end_ _reference_start_Galatians 3:27_reference_end_ _reference_start_Galatians 3:29_reference_end_ _reference_start_Galatians 4:19_reference_end_ _reference_start_Galatians 5:1_reference_end_ _reference_start_Galatians 5:2_reference_end_ _reference_start_Galatians 5:4_reference_end_ _reference_start_Galatians 6:2_reference_end_ _reference_start_Galatians 6:12_reference_end_ EPH 1:9 (Implied contextually), 12, 20; 2:5, 12; 3:4, 8, 17, 19; 4:7, 12, 13, 15, 20, 32; 5:2, 5, 14, 21, 23, 24, 25, 29, 32; 6:5, 6 _reference_start_Ephesians 1:9_reference_end_ _reference_start_Ephesians 1:12_reference_end_ _reference_start_Ephesians 1:20_reference_end_ _reference_start_Ephesians 2:5_reference_end_ _reference_start_EphesiCans 2:12_reference_end_ _reference_start_Ephesians 3:4_reference_end_ _reference_start_Ephesians 3:8_reference_end_ _reference_start_Ephesians 3:17_reference_end_ _reference_start_Ephesians 3:19_reference_end_ _reference_start_Ephesians 4:7_reference_end_ _reference_start_Ephesians 4:12_reference_end_ _reference_start_Ephesians 4:13_reference_end_ _reference_start_Ephesians 4:15_reference_end_ _reference_start_Ephesians 4:20_reference_end_ _reference_start_Ephesians 4:32_reference_end_ _reference_start_Ephesians 5:2_reference_end_ _reference_start_Ephesians 5:5_reference_end_ _reference_start_Ephesians 5:14_reference_end_ _reference_start_Ephesians 5:21_reference_end_ _reference_start_Ephesians 5:23_reference_end_ _reference_start_Ephesians 5:24_reference_end_ _reference_start_Ephesians 5:25_reference_end_ _reference_start_Ephesians 5:29_reference_end_ _reference_start_Ephesians 5:32_reference_end_ _reference_start_Ephesians 6:5_reference_end_ _reference_start_Ephesians 6:6_reference_end_ _reference_startD_Philippians 1:10_reference_end_ _reference_start_Philippians 1:13_reference_end_ _reference_start_Philippians 1:15_reference_end_ _reference_start_Philippians 1:17_reference_end_ _reference_start_Philippians 1:18_reference_end_ _reference_start_Philippians 1:20_reference_end_ _reference_start_Philippians 1:21_reference_end_ _reference_start_Philippians 1:23_reference_end_ _reference_start_Philippians 1:27_reference_end_ _reference_start_Philippians 1:29_reference_end_ _reference_start_Philippians 2:1_reference_end_ _reference_start_Philippians 2:16_reference_end_ _reference_start_Philippians 2:30_reference_end_ _reference_start_Philippians 3:7_reference_end_ _reference_start_Philippians 3:9_reference_end_ _reference_start_Philippians 3:18_reference_end_ COL 1:2, 7, 24, 27, 28; 2:2, 5, 8, 11, 17, 20; 3:1 (2 occurrences), 3, 4, 11, 15, 16, 24; 4:3 _reference_start_Colossians 1:2_reference_end_ _reference_start_Colossians 1:7_reference_end_ _reference_start_Colossians 1:24_reference_end_ _reference_start_CoElossians 1:27_reference_end_ _reference_start_Colossians 1:28_reference_end_ _reference_start_Colossians 2:2_reference_end_ _reference_start_Colossians 2:5_reference_end_ _reference_start_Colossians 2:8_reference_end_ _reference_start_Colossians 2:11_reference_end_ _reference_start_Colossians 2:17_reference_end_ _reference_start_Colossians 2:20_reference_end_ _reference_start_Colossians 3:1_reference_end_ _reference_start_Colossians 3:3_reference_end_ _reference_start_Colossians 3:4_reference_end_ _reference_start_Colossians 3:11_reference_end_ _reference_start_Colossians 3:15_reference_end_ _reference_start_Colossians 3:16_reference_end_ _reference_start_Colossians 3:24_reference_end_ _reference_start_Colossians 4:3_reference_end_ _reference_start_1 Thessalonians 2:6_reference_end_ _reference_start_1 Thessalonians 3:2_reference_end_ _reference_start_1 Thessalonians 4:16_reference_end_ _reference_start_2 Thessalonians 3:5_reference_end_ _reference_start_1 Timothy 5:11_reference_end_ _reference_start_PhileFmon 1:6_reference_end_ _reference_start_Philemon 1:8_reference_end_ _reference_start_Philemon 1:20_reference_end_ HEB 3:6, 14; 5:5; 6:1; 8:6 (Implied contextually); 9:11, 14, 24, 28; 10:5 (Implied contextually), 12 (Implied contextually); 11:26 _reference_start_Hebrews 3:6_reference_end_ _reference_start_Hebrews 3:14_reference_end_ _reference_start_Hebrews 5:5_reference_end_ _reference_start_Hebrews 6:1_reference_end_ _reference_start_Hebrews 8:6_reference_end_ _reference_start_Hebrews 9:11_reference_end_ _reference_start_Hebrews 9:14_reference_end_ _reference_start_Hebrews 9:24_reference_end_ _reference_start_Hebrews 9:28_reference_end_ _reference_start_Hebrews 10:5_reference_end_ _reference_start_Hebrews 10:12_reference_end_ _reference_start_Hebrews 11:26_reference_end_ _reference_start_1 Peter 1:19_reference_end_ _reference_start_1 Peter 2:21_reference_end_ _reference_start_1 Peter 3:15_reference_end_ _reference_start_1 Peter 3:16_reference_end_ _reference_start_1 Peter 3:18_reference_end_ _reference_sGtart_1 Peter 4:1_reference_end_ _reference_start_1 Peter 4:13_reference_end_ _reference_start_1 Peter 4:14_reference_end_ _reference_start_1 Peter 5:1_reference_end_ _reference_start_1 Peter 5:10_reference_end_ _reference_start_1 Peter 5:14_reference_end_ _reference_start_2 John 1:9_reference_end_ _reference_start_Revelation 20:4_reference_end_ _reference_start_Revelation 20:6_reference_end_ \en3 b. The name “Jesus Christ” \gtrm cristov \trnl christos _reference_start_Matthew 1:1_reference_end_ _reference_start_Matthew 1:18_reference_end_ _reference_start_Mark 1:1_reference_end_ _reference_start_John 1:17_reference_end_ _reference_start_John 17:3_reference_end_ _reference_start_Acts 2:38_reference_end_ _reference_start_Acts 3:6_reference_end_ _reference_start_Acts 4:10_reference_end_ _reference_start_Acts 8:12_reference_end_ _reference_start_Acts 9:34_reference_end_ _reference_start_Acts 10:36_reference_end_ _reference_start_Acts 10:48_reference_end_ _reference_start_Acts 16:18_reference_end_ _referenceH_start_Romans 1:1_reference_end_ _reference_start_Romans 1:4_reference_end_ _reference_start_Romans 1:6_reference_end_ _reference_start_Romans 1:8_reference_end_ _reference_start_Romans 3:22_reference_end_ _reference_start_Romans 5:15_reference_end_ _reference_start_Romans 5:17_reference_end_ _reference_start_Romans 5:21_reference_end_ _reference_start_Romans 7:25_reference_end_ _reference_start_Romans 16:25_reference_end_ _reference_start_Romans 16:27_reference_end_ _reference_start_1 Corinthians 1:9_reference_end_ _reference_start_1 Corinthians 2:2_reference_end_ _reference_start_1 Corinthians 3:11_reference_end_ _reference_start_1 Corinthians 8:6_reference_end_ _reference_start_2 Corinthians 1:19_reference_end_ _reference_start_2 Corinthians 4:5_reference_end_ _reference_start_2 Corinthians 13:5_reference_end_ GAL 1:1, 12; 2:16 (3 occurrences); 3:1, 22 _reference_start_Galatians 1:1_reference_end_ _reference_start_Galatians 1:12_reference_end_ _reference_start_Galatians 2:16_reference_end_ _reference_sItart_Galatians 3:1_reference_end_ _reference_start_Galatians 3:22_reference_end_ _reference_start_Ephesians 1:5_reference_end_ _reference_start_Philippians 1:6_reference_end_ _reference_start_Philippians 1:11_reference_end_ _reference_start_Philippians 1:19_reference_end_ _reference_start_Philippians 2:11_reference_end_ _reference_start_Philippians 2:21_reference_end_ _reference_start_1 Timothy 1:16_reference_end_ _reference_start_2 Timothy 2:8_reference_end_ _reference_start_Titus 1:1_reference_end_ _reference_start_Titus 3:6_reference_end_ _reference_start_Hebrews 10:10_reference_end_ _reference_start_Hebrews 13:8_reference_end_ _reference_start_Hebrews 13:21_reference_end_ _reference_start_1 Peter 1:1_reference_end_ _reference_start_1 Peter 1:2_reference_end_ _reference_start_1 Peter 1:7_reference_end_ _reference_start_1 Peter 1:13_reference_end_ _reference_start_1 Peter 2:5_reference_end_ _reference_start_1 Peter 3:21_reference_end_ _reference_start_1 Peter 4:11_reference_end_ 2PE 1:1 (2 occurrences) J_reference_start_2 Peter 1:1_reference_end_ _reference_start_1 John 1:3_reference_end_ _reference_start_1 John 2:1_reference_end_ _reference_start_1 John 3:23_reference_end_ _reference_start_1 John 4:2_reference_end_ _reference_start_1 John 5:6_reference_end_ _reference_start_1 John 5:20_reference_end_ _reference_start_2 John 1:3_reference_end_ _reference_start_2 John 1:7_reference_end_ JUD 1:1 (2 occurrences), 4, 25 _reference_start_Jude 1:1_reference_end_ _reference_start_Jude 1:4_reference_end_ _reference_start_Jude 1:25_reference_end_ _reference_start_Revelation 1:1_reference_end_ _reference_start_Revelation 1:2_reference_end_ _reference_start_Revelation 1:5_reference_end_ \en3 c. The name “Christ Jesus” \gtrm cristov \trnl christos _reference_start_Acts 24:24_reference_end_ _reference_start_Romans 2:16_reference_end_ _reference_start_Romans 3:24_reference_end_ _reference_start_Romans 6:3_reference_end_ _reference_start_Romans 6:11_reference_end_ _reference_start_Romans 6:23_reference_end_ _referencKe_start_Romans 8:1_reference_end_ _reference_start_Romans 8:2_reference_end_ _reference_start_Romans 8:11_reference_end_ _reference_start_Romans 8:34_reference_end_ _reference_start_Romans 8:39_reference_end_ _reference_start_Romans 15:5_reference_end_ _reference_start_Romans 15:16_reference_end_ _reference_start_Romans 15:17_reference_end_ _reference_start_Romans 16:3_reference_end_ 1CO 1:1, 2 (2 occurrences), 4, 30; 15:31; 16:24 _reference_start_1 Corinthians 1:1_reference_end_ _reference_start_1 Corinthians 1:2_reference_end_ _reference_start_1 Corinthians 1:4_reference_end_ _reference_start_1 Corinthians 1:30_reference_end_ _reference_start_1 Corinthians 15:31_reference_end_ _reference_start_1 Corinthians 16:24_reference_end_ _reference_start_2 Corinthians 1:1_reference_end_ _reference_start_Galatians 2:4_reference_end_ _reference_start_Galatians 3:14_reference_end_ _reference_start_Galatians 3:26_reference_end_ _reference_start_Galatians 3:28_reference_end_ _reference_start_Galatians 4:14_reference_eLnd_ _reference_start_Galatians 5:6_reference_end_ _reference_start_Galatians 5:24_reference_end_ EPH 1:1 (2 occurrences); 2:6, 7, 10, 13 (2 occurrences), 20; 3:1, 6, 11, 21 _reference_start_Ephesians 1:1_reference_end_ _reference_start_Ephesians 2:6_reference_end_ _reference_start_Ephesians 2:7_reference_end_ _reference_start_Ephesians 2:10_reference_end_ _reference_start_Ephesians 2:13_reference_end_ _reference_start_Ephesians 2:20_reference_end_ _reference_start_Ephesians 3:1_reference_end_ _reference_start_Ephesians 3:6_reference_end_ _reference_start_Ephesians 3:11_reference_end_ _reference_start_Ephesians 3:21_reference_end_ PHP 1:1 (2 occurrences), 8, 26; 2:5; 3:3, 8 (2 occurrences), 12, 14; 4:7, 19, 21 _reference_start_Philippians 1:1_reference_end_ _reference_start_Philippians 1:8_reference_end_ _reference_start_Philippians 1:26_reference_end_ _reference_start_Philippians 2:5_reference_end_ _reference_start_Philippians 3:3_reference_end_ _reference_start_Philippians 3:8_reference_end_ _reference_sMtart_Philippians 3:12_reference_end_ _reference_start_Philippians 3:14_reference_end_ _reference_start_Philippians 4:7_reference_end_ _reference_start_Philippians 4:19_reference_end_ _reference_start_Philippians 4:21_reference_end_ _reference_start_Colossians 1:1_reference_end_ _reference_start_Colossians 1:4_reference_end_ _reference_start_Colossians 2:6_reference_end_ _reference_start_Colossians 4:12_reference_end_ _reference_start_1 Thessalonians 2:14_reference_end_ _reference_start_1 Thessalonians 5:18_reference_end_ 1TI 1:1 (2 occurrences), 2, 12, 14, 15; 2:5; 3:13; 4:6; 5:21; 6:13 _reference_start_1 Timothy 1:1_reference_end_ _reference_start_1 Timothy 1:2_reference_end_ _reference_start_1 Timothy 1:12_reference_end_ _reference_start_1 Timothy 1:14_reference_end_ _reference_start_1 Timothy 1:15_reference_end_ _reference_start_1 Timothy 2:5_reference_end_ _reference_start_1 Timothy 3:13_reference_end_ _reference_start_1 Timothy 4:6_reference_end_ _reference_start_1 Timothy 5:21_reference_end_ _refereNnce_start_1 Timothy 6:13_reference_end_ 2TI 1:1 (2 occurrences), 2, 9, 10, 13; 2:1, 3, 10; 3:12, 15; 4:1 _reference_start_2 Timothy 1:1_reference_end_ _reference_start_2 Timothy 1:2_reference_end_ _reference_start_2 Timothy 1:9_reference_end_ _reference_start_2 Timothy 1:10_reference_end_ _reference_start_2 Timothy 1:13_reference_end_ _reference_start_2 Timothy 2:1_reference_end_ _reference_start_2 Timothy 2:3_reference_end_ _reference_start_2 Timothy 2:10_reference_end_ _reference_start_2 Timothy 3:12_reference_end_ _reference_start_2 Timothy 3:15_reference_end_ _reference_start_2 Timothy 4:1_reference_end_ _reference_start_Titus 1:4_reference_end_ _reference_start_Philemon 1:1_reference_end_ _reference_start_Philemon 1:9_reference_end_ _reference_start_Philemon 1:23_reference_end_ \en3 d. The name “Lord Jesus Christ” \gtrm cristov \trnl christos _reference_start_Acts 11:17_reference_end_ _reference_start_Acts 15:26_reference_end_ _reference_start_Acts 20:21_reference_end_ _reference_start_Acts 28:31_rOeference_end_ ROM 1:7; 5:1, 11; 13:14; 15:6, 30; 16:20 (Implied contextually) _reference_start_Romans 1:7_reference_end_ _reference_start_Romans 5:1_reference_end_ _reference_start_Romans 5:11_reference_end_ _reference_start_Romans 13:14_reference_end_ _reference_start_Romans 15:6_reference_end_ _reference_start_Romans 15:30_reference_end_ _reference_start_Romans 16:20_reference_end_ _reference_start_1 Corinthians 1:3_reference_end_ _reference_start_1 Corinthians 1:7_reference_end_ _reference_start_1 Corinthians 1:8_reference_end_ _reference_start_1 Corinthians 1:10_reference_end_ _reference_start_1 Corinthians 6:11_reference_end_ _reference_start_1 Corinthians 15:57_reference_end_ _reference_start_2 Corinthians 1:2_reference_end_ _reference_start_2 Corinthians 1:3_reference_end_ _reference_start_2 Corinthians 8:9_reference_end_ _reference_start_2 Corinthians 13:14_reference_end_ _reference_start_Galatians 1:3_reference_end_ _reference_start_Galatians 6:14_reference_end_ _reference_start_Galatians 6:18_rePference_end_ EPH 1:2, 3 (2 occurrences), 17; 5:20; 6:23, 24 _reference_start_Ephesians 1:2_reference_end_ _reference_start_Ephesians 1:3_reference_end_ _reference_start_Ephesians 1:17_reference_end_ _reference_start_Ephesians 5:20_reference_end_ _reference_start_Ephesians 6:23_reference_end_ _reference_start_Ephesians 6:24_reference_end_ _reference_start_Philippians 1:2_reference_end_ _reference_start_Philippians 3:20_reference_end_ _reference_start_Philippians 4:23_reference_end_ _reference_start_Colossians 1:3_reference_end_ _reference_start_1 Thessalonians 1:1_reference_end_ _reference_start_1 Thessalonians 1:3_reference_end_ _reference_start_1 Thessalonians 5:9_reference_end_ _reference_start_1 Thessalonians 5:23_reference_end_ _reference_start_1 Thessalonians 5:28_reference_end_ _reference_start_2 Thessalonians 1:1_reference_end_ _reference_start_2 Thessalonians 1:2_reference_end_ _reference_start_2 Thessalonians 1:12_reference_end_ _reference_start_2 Thessalonians 2:1_reference_end_ _reference_start_2 Thessalonians 2:14_reference_end_ _reference_start_2 Thessalonians 2:16_reference_end_ _reference_start_2 Thessalonians 3:6_reference_end_ _reference_start_2 Thessalonians 3:12_reference_end_ _reference_start_2 Thessalonians 3:18_reference_end_ _reference_start_1 Timothy 6:3_reference_end_ _reference_start_1 Timothy 6:14_reference_end_ _reference_start_Philemon 1:3_reference_end_ _reference_start_Philemon 1:25_reference_end_ _reference_start_James 2:1_reference_end_ 1PE 1:3 (2 occurrences) _reference_start_1 Peter 1:3_reference_end_ _reference_start_2 Peter 1:8_reference_end_ _reference_start_2 Peter 1:14_reference_end_ _reference_start_2 Peter 1:16_reference_end_ _reference_start_Jude 1:17_reference_end_ _reference_start_Jude 1:21_reference_end_ \en3 e. The name “God/Lord and Savior Jesus Christ” \gtrm cristov \trnl christos _reference_start_Titus 2:13_reference_end_ _reference_start_2 Peter 1:11_reference_end_ _reference_start_2 Peter 2:20_reference_end_ _reference_start_2 Peter 3:18_reference_end_ _CHRISTchrist\o1 1. As a title \o1 2. As a name \o2 a. The name “Christ” \o2 b. The name “Jesus Christ” \o2 c. The name “Christ Jesus” \o2 d. The name “Lord Jesus Christ” \o2 e. The name “God/Lord and Savior Jesus Christ” \gtrm cristov \trnl christos \xref [L&N 53.82] \def Messiah \xref [L&N 93.387] \def Christ \gtrm messiav \trnl messias \xref [L&N 53.82] \def Messiah \en2 1. As a title \gtrm cristov \trnl christos _reference_start_Matthew 1:16_reference_end_ _reference_start_Matthew 1:17_reference_end_ _reference_start_Matthew 2:4_refer8 ?tfXJ<. xj\N@2$|n`RD6( 3.  2.  1.  0.  /. .. -. ,. +. *. ). (. '. &. %. $. #. ". !. . . . . - - - - - - - - - - - - - - - - -  -  -  -  -  -  -  -# - - - - - - ~- }- |- {+ z+) yB xB  w> v> u< ?tfXJ<. xj\N@2$|n`RD6( r0 q0 p0 o0 n0 m0 l0 k0 j0 i0 h0 g0 f/  e/  d/ c/ b/  a/  `/ _/ ^/  ]/  \/  [/  Z/  Y/  X/ W/ V/ U/ T/ S/ R/ Q/ P/ O/ N/ M/ L/ K/ J/ I/ H/ G/ F/ E/ D/ C/ B. A. @. ?. >. =. <. ;. :. 9. 8. 7. 6.  5. 4.  ?tfXJ<. xj\N@2$|n`RD6( 13 03 /3 .3 -3 ,3 +3 *3 )3 (3 '3 &3 %3 $3 #3 "2 !2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ~1 }1 |1 {1 z1 y1 x0 w0 v0 u0 t0 s0 ?tfXJ<. xj\N@2$|n`RD6( p. o- n- m- l- k- j- i- h- g- f- e- d, c, 0 b, $ a, " `, _, ^, ],& \+ [+ Z) Y( X( WB VB U? T< S< R< Q< P< O< N< M< L< K< J< I:  H: G:  F:  E:  D:  C: B: A: @: ?: >: =9 <9 ;9 :6 95 84 74 64 53 43 33 23 ?tfXJ<. xj\N@2$|n`RD6( /. .. -- ,- +- *- )-' (-" '- &- %- $- #- "- !- - , B B B A A A ? ? > > > > > > = < < < < < < < :  :  : 8 8 7 6 2 2 2 ~2 }2 |1 {0 z0 y0 x0 w0 v/  u/ t/ s. r. q. ?tfXJ<. xj\N@2$|n`RD6( n9 m9 l8 k7 j7 i7 h7 g7 f7 e7 d7 c7 b7 a7 `6 _6 ^6 ]6 \6 [6 Z6 Y6 X6 W6 V4 U4 T3 S3 R3 Q3 P2 O2 N2 M2 L2 K2 J2 I2 H2 G2 F2 E1 D1 C1 B1 A1 @1 ?1 >1 =1 <1 ;0 :0 90 80 70 60 50 4/ 3. 2. 1. 0. ?tfXJ<. xj\N@2$|n`RD6( -= ,= +8 *A )A (= '= &= %< $; #9 "9 !6 6 5 5 5 5 5 5 5 5 5 4 4 4 4 4 3 2 2 2 1 1 1 1 1 1 0 0 0 /  / / / .9 . ~. }. |. {. z- y- x- w-  v- u- t- s, r, q, p,  o9 ?tfXJ<. xj\N@2$|n`RD6( lB kB jB iB hB gB fB eB d@ c@ b@ a; `9 _6 ^6 ]5 \5 [4 Z4 Y3 X3 W2 V0 U0 T/ S/  R/  Q/ P/ O/ N/ M/ L/ K. J. I. H.  G. F. E. D. C- B- A- @- ?- >, =, <, ;, :,) 9, 8, 7, 6, 5,  4,  3,  2, 1, 0, /( .=[gtrm ekkljsia \trnl ekklæsia MAT 18:17 (2 occurrences) _reference_start_Matthew 18:17_reference_end_ _reference_start_Acts 5:11_reference_end_ _reference_start_Acts 8:1_reference_end_ _reference_start_Acts 8:3_reference_end_ _reference_start_Acts 11:22_reference_end_ _reference_start_Acts 11:26_reference_end_ _reference_start_Acts 13:1_reference_end_ _reference_start_Acts 14:23_reference_end_ _reference_start_Acts 14:27_reference_end_ _reference_start_Acts 15:3_reference_end_ _reference_start_Acts 15:4_reference_end_ _reference_start_Acts 15:41_reference_end_ _reference_start_Acts 16:5_reference_end_ _reference_start_Acts 18:22_reference_end_ _reference_start_Acts 20:17_reference_end_ _reference_start_Acts 20:28_reference_end_ _reference_start_Romans 16:1_reference_end_ _reference_start_Romans 16:4_reference_end_ _reference_start_Romans 16:5_reference_end_ _reference_start_Romans 16:16_reference_end_ _reference_start_Romans 16:23_reference_end_ 1CO 1:2; 4:17; 6:4; 7:17; 11:16; 14:23; 16:1, 19 (2 occurren\ces) _reference_start_1 Corinthians 1:2_reference_end_ _reference_start_1 Corinthians 4:17_reference_end_ _reference_start_1 Corinthians 6:4_reference_end_ _reference_start_1 Corinthians 7:17_reference_end_ _reference_start_1 Corinthians 11:16_reference_end_ _reference_start_1 Corinthians 14:23_reference_end_ _reference_start_1 Corinthians 16:1_reference_end_ _reference_start_1 Corinthians 16:19_reference_end_ _reference_start_2 Corinthians 1:1_reference_end_ _reference_start_2 Corinthians 8:1_reference_end_ _reference_start_2 Corinthians 8:18_reference_end_ _reference_start_2 Corinthians 8:19_reference_end_ _reference_start_2 Corinthians 8:23_reference_end_ _reference_start_2 Corinthians 8:24_reference_end_ _reference_start_2 Corinthians 11:8_reference_end_ _reference_start_2 Corinthians 11:28_reference_end_ _reference_start_2 Corinthians 12:13_reference_end_ _reference_start_Galatians 1:2_reference_end_ _reference_start_Galatians 1:22_reference_end_ _reference_start_Philippians 4:15_reference_end_ _refe]rence_start_Colossians 4:15_reference_end_ _reference_start_Colossians 4:16_reference_end_ _reference_start_1 Thessalonians 1:1_reference_end_ _reference_start_1 Thessalonians 2:14_reference_end_ _reference_start_2 Thessalonians 1:1_reference_end_ _reference_start_2 Thessalonians 1:4_reference_end_ _reference_start_1 Timothy 3:5_reference_end_ _reference_start_1 Timothy 5:16_reference_end_ _reference_start_Philemon 1:2_reference_end_ _reference_start_James 5:14_reference_end_ _reference_start_3 John 1:6_reference_end_ _reference_start_3 John 1:9_reference_end_ _reference_start_3 John 1:10_reference_end_ REV 1:4, 11, 20 (2 occurrences); 2:1, 7, 8, 11, 12, 17, 18, 23, 29; 3:1, 6, 7, 13, 14, 22; 22:16 _reference_start_Revelation 1:4_reference_end_ _reference_start_Revelation 1:11_reference_end_ _reference_start_Revelation 1:20_reference_end_ _reference_start_Revelation 2:1_reference_end_ _reference_start_Revelation 2:7_reference_end_ _reference_start_Revelation 2:8_reference_end_ _reference_start_Revelation ^2:11_reference_end_ _reference_start_Revelation 2:12_reference_end_ _reference_start_Revelation 2:17_reference_end_ _reference_start_Revelation 2:18_reference_end_ _reference_start_Revelation 2:23_reference_end_ _reference_start_Revelation 2:29_reference_end_ _reference_start_Revelation 3:1_reference_end_ _reference_start_Revelation 3:6_reference_end_ _reference_start_Revelation 3:7_reference_end_ _reference_start_Revelation 3:13_reference_end_ _reference_start_Revelation 3:14_reference_end_ _reference_start_Revelation 3:22_reference_end_ _reference_start_Revelation 22:16_reference_end_ \en2 2. A meeting or gathering of believers \gtrm ekkljsia \trnl ekklæsia _reference_start_Acts 15:22_reference_end_ _reference_start_1 Corinthians 11:18_reference_end_ _reference_start_1 Corinthians 14:4_reference_end_ _reference_start_1 Corinthians 14:5_reference_end_ _reference_start_1 Corinthians 14:12_reference_end_ _reference_start_1 Corinthians 14:19_reference_end_ _reference_start_1 Corinthians 14:28_reference_end__ _reference_start_1 Corinthians 14:33_reference_end_ _reference_start_1 Corinthians 14:34_reference_end_ _reference_start_1 Corinthians 14:35_reference_end_ \en2 3. The general community of believers in Christ, the universal church \gtrm ekkljsia \trnl ekklæsia _reference_start_Matthew 16:18_reference_end_ _reference_start_Acts 9:31_reference_end_ _reference_start_Acts 12:1_reference_end_ _reference_start_Acts 12:5_reference_end_ 1CO 5:12 (Implied contextually); 10:32; 11:22; 12:28; 15:9 _reference_start_1 Corinthians 5:12_reference_end_ _reference_start_1 Corinthians 10:32_reference_end_ _reference_start_1 Corinthians 11:22_reference_end_ _reference_start_1 Corinthians 12:28_reference_end_ _reference_start_1 Corinthians 15:9_reference_end_ _reference_start_Galatians 1:13_reference_end_ _reference_start_Ephesians 1:22_reference_end_ _reference_start_Ephesians 3:10_reference_end_ _reference_start_Ephesians 3:21_reference_end_ _reference_start_Ephesians 5:23_reference_end_ _reference_start_Ephesians 5:24_reference_end_ _reference_start_Ephesians 5:25_reference_end_ _reference_start_Ephesians 5:27_reference_end_ _reference_start_Ephesians 5:29_reference_end_ _reference_start_Ephesians 5:32_reference_end_ _reference_start_Philippians 3:6_reference_end_ _reference_start_Colossians 1:18_reference_end_ _reference_start_Colossians 1:24_reference_end_ _reference_start_1 Timothy 3:15_reference_end_ HEB 12:23 (due to the parallel features of this passage it is possible that the semantic scope is much broader than the universal church, i.e. it may include OT Saints and thus fit into category 4 as well) _reference_start_Hebrews 12:23_reference_end_ \en2 4. Old Testament saints and/or gatherings \gtrm ekkljsia \trnl ekklæsia _reference_start_Acts 7:38_reference_end_ _reference_start_Hebrews 2:12_reference_end_ \en2 5. A secular meeting of the people of a town \gtrm ekkljsia \trnl ekklæsia _reference_start_Acts 19:32_reference_end_ _reference_start_Acts 19:39_reference_end_ _reference_start_Acts 19:41_reference_end_   uGGoCIRCUMCISION, THE CIRCUMCISEDcircumcision, the circumcised\o1 1. Referring to Jews in general, or a particular group of Jews \o2 a. All those who belonged to the Jewish race \o2 b. Jewish believers, Jewish Christians \o2 c. Jewish ChristibM{CHURCHchurch\o1 1. A group of believers-in-Christ who live in one place \o1 2. A meeting or gathering of believers \o1 3. The general community of believers in Christ, the universal church \o1 4. Old Testament saints and/or gatherings \o1 5. A secular meeting of the people of a town \gtrm ekkljsia \trnl ekklæsia \xref [L&N 11.32] \def congregation \xref [L&N 11.33] \def church \xref [L&N 11.78] \def assembly \en2 1. A group of believers-in-Christ who live in one place \Z ?tfXJ<. xj\N@2$|n`RD6( +,  *8 )3 (- ', - &3 %1 $0 #0 "0 !- - - ,) ,' , : ,& :  6 3 3 2 1 1 1 1 1 1 1 1 1 0 . .  .  . . ,  ,  ,  ( .# ." .! ~. }. |. {. z. y.  x, wB vB uB tB sB rB qB pB oB nB mBcans who insisted that all Christians should follow Jewish customs \o1 2. God's people of whatever nationality \o1 3. The actual covenantal, surgical procedure \o1 4. Internal, spiritual procedure, figurative \gtrm peritomj \trnl peritomæ \xref [L&N 53.51] \def circumcision \xref [L&N 11.51] \def those of the circumcision \gtrm peritemnw \trnl peritemnõ \xref [L&N 53.51] \def circumcise \gtrm akrobustia \trnl akrobustia \xref [L&N 11.52] \def being uncircumcised \xref [L&N 11.53] \def gentiles \gtrm epispaomai \trnl epispaomai \xref [L&N 53.52] \def conceal circumcision \en2 1. Referring to Jews in general, or a particular group of Jews \en3 a. All those who belonged to the Jewish race \gtrm peritomj \trnl peritomæ _reference_start_Romans 3:30_reference_end_ _reference_start_Romans 4:9_reference_end_ _reference_start_Romans 15:8_reference_end_ _reference_start_Galatians 2:7_reference_end_ _reference_start_Galatians 2:8_reference_end_ _reference_start_Galatians 2:9_reference_end_ _reference_start_Ephesiadns 2:11_reference_end_ _reference_start_Colossians 3:11_reference_end_ \en3 b. Jewish believers, Jewish Christians \gtrm peritomj \trnl peritomæ _reference_start_Acts 10:45_reference_end_ _reference_start_Romans 4:12_reference_end_ _reference_start_Colossians 4:11_reference_end_ _reference_start_Titus 1:10_reference_end_ \en3 c. Jewish Christians who insisted that all Christians should follow Jewish customs \gtrm peritomj \trnl peritomæ _reference_start_Acts 11:2_reference_end_ _reference_start_Galatians 2:12_reference_end_ \en2 2. God's people of whatever nationality \gtrm peritomj \trnl peritomæ _reference_start_Philippians 3:3_reference_end_ \en2 3. The actual covenantal, surgical procedure \gtrm peritomj \trnl peritomæ _reference_start_John 7:22_reference_end_ _reference_start_John 7:23_reference_end_ _reference_start_Acts 7:8_reference_end_ ROM 2:25 (2 occurrences), 27; 3:1; 4:10, 11, 12 (2 occurrences) _reference_start_Romans 2:25_reference_end_ _reference_start_Romans 2:27_reference_end_ _reference_start_Romans 3:1_reference_end_ _reference_start_Romans 4:10_reference_end_ _reference_start_Romans 4:11_reference_end_ _reference_start_Romans 4:12_reference_end_ _reference_start_1 Corinthians 7:19_reference_end_ _reference_start_Galatians 5:6_reference_end_ _reference_start_Galatians 5:11_reference_end_ _reference_start_Galatians 6:15_reference_end_ _reference_start_Philippians 3:5_reference_end_ \gtrm peritemnw \trnl peritemnõ _reference_start_Luke 1:59_reference_end_ _reference_start_Luke 2:21_reference_end_ _reference_start_John 7:22_reference_end_ _reference_start_Acts 7:8_reference_end_ _reference_start_Acts 15:1_reference_end_ _reference_start_Acts 15:5_reference_end_ _reference_start_Acts 15:24_reference_end_ \en2 4. Internal, spiritual procedure, figurative \gtrm peritomj \trnl peritomæ _reference_start_Romans 2:26_reference_end_ _reference_start_Romans 2:28_reference_end_ _reference_start_Romans 2:29_reference_end_ COL 2:11 (2 occurrences) _reference_start_Colossians 2:11_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( j< i; h8 g6 f2 e/  d/ c= b2 a; `:  _8 ^7 ]7 \6 [6 Z, Y, X+ W+ V+ U( T8 S- R* ) QB PB OB N(; M+  L) K< JB IB H+ G( F3 E- D- C- B, A, @, ?, >+ =* <*; ;2 :0 90 80 7. 6- 5- 4- 3- 2- 1- 0, /+ .+ -2 ,0 grification (noun forms) \o2 a. The act of making someone ritually clean \o2 b. The event of being freed from sin and guilt \o1 8. Purity (noun form) \o1 9. Opposites of unclean \o2 a. Undefiled \o2 b. Spotless \gtrm kaqarov \trnl katharos \xref [L&N 79.48] \def clean \xref [L&N 53.29] \def pure (ritually) \gtrm kaqarizw \trnl katharizõ \xref [L&N 79.49] \def to make clean \xref [L&N 53.28] \def to purify (ritually) \xref [L&N 23.137] \def to heal \gtrm kaqarizmov \trnl katharizmos \xref [L&N 53.28] \def purification (ritually) \gtrm kaqarotjv \trnl katharotæs \xref [L&N 53.28] \def purification (ritually) \gtrm ekkaqairw \trnl ekkathairõ \xref [L&N 79.50] \def clean out (by removal of filth) \gtrm eilikrinjv \trnl eilikrinæs \xref [L&N 88.41] \def sincere \gtrm ƒgnizw \trnl hagnizõ \xref [L&N 53.30] \def purify (ritual) \xref [L&N 88.30] \def purify (moral) \gtrm ƒgnismov \trnl hagnismos \xref [L&N 53.30] \def purification (ritual) \gtrm ƒgnov \trnl hagnos \xref [L&N 88.28] \def pure, hwithout moral defect \gtrm ƒgnotjv \trnl hagnotæs \xref [L&N 88.29] \def purity \gtrm ƒgneia \trnl hagneia \xref [L&N 88.29] \def purity \gtrm adolov \trnl adolos \xref [L&N 79.98] \def pure, unadulterated \gtrm pistikov \trnl pistikos \xref [L&N 79.97] \def pure, high quality, sterling \gtrm diakaqairw \trnl diakathairõ \xref [L&N 79.51] \def clean off (thoroughly clean) \gtrm diakaqarizw \trnl diakatharizõ \xref [L&N 79.51] \def clean off (thoroughly clean) \gtrm amiantov \trnl amiantos \xref [L&N 53.36] \def undefiled (ritually) \gtrm aspilov \trnl aspilos \xref [L&N 79.59] \def spotless \xref [L&N 88.33] \def pure \en2 1. Clean, Pure (adjective form) \en3 a. Physically clean, free from dirt or contamination \gtrm kaqarov \trnl katharos _reference_start_Matthew 23:26_reference_end_ _reference_start_John 13:10_reference_end_ \en3 b. Having nothing added or mixed in, unadulterated \gtrm kaqarov \trnl katharos REV 21:18 (possible figure), 21 (possible figure) _reference_start_Revelation 21:18_referenice_end_ _reference_start_Revelation 21:21_reference_end_ \gtrm adolov \trnl adolos _reference_start_1 Peter 2:2_reference_end_ \gtrm pistikov \trnl pistikos _reference_start_Mark 14:3_reference_end_ _reference_start_John 12:3_reference_end_ \en3 c. White, referring to linen cloth \gtrm kaqarov \trnl katharos _reference_start_Matthew 27:59_reference_end_ _reference_start_Revelation 15:6_reference_end_ _reference_start_Revelation 19:8_reference_end_ _reference_start_Revelation 19:14_reference_end_ \en2 2. Ritually clean before God, free from taboo \gtrm kaqarov \trnl katharos _reference_start_Luke 11:41_reference_end_ _reference_start_Romans 14:20_reference_end_ TIT 1:15 (2 occurrences) _reference_start_Titus 1:15_reference_end_ \en2 3. Spiritually pure, free from sin \gtrm kaqarov \trnl katharos _reference_start_Matthew 5:8_reference_end_ JHN 13:10, 11; 15:3 (also sense 1. This word has an intended double meaning) _reference_start_John 13:10_reference_end_ _reference_start_John 13:11_reference_end_ _referejnce_start_John 15:3_reference_end_ _reference_start_Acts 18:6_reference_end_ _reference_start_Acts 20:26_reference_end_ _reference_start_1 Timothy 1:5_reference_end_ _reference_start_1 Timothy 3:9_reference_end_ _reference_start_2 Timothy 1:3_reference_end_ _reference_start_2 Timothy 2:22_reference_end_ _reference_start_Titus 1:15_reference_end_ HEB 10:22 (figurative) _reference_start_Hebrews 10:22_reference_end_ _reference_start_James 1:27_reference_end_ \gtrm eilikrinjv \trnl eilikrinæs _reference_start_Philippians 1:10_reference_end_ _reference_start_2 Peter 3:1_reference_end_ \gtrm ƒgnov \trnl hagnos _reference_start_2 Corinthians 7:11_reference_end_ _reference_start_2 Corinthians 11:2_reference_end_ _reference_start_Philippians 4:8_reference_end_ _reference_start_1 Timothy 5:22_reference_end_ _reference_start_Titus 2:5_reference_end_ _reference_start_James 3:17_reference_end_ _reference_start_1 Peter 3:2_reference_end_ _reference_start_1 John 3:3_reference_end_ \en2 4. To cleanse, to make clean, tok purify (verb form) \en3 a. To wash clean, to clear away what is not wanted \gtrm kaqarizw \trnl katharizõ JAS 4:8 (also sense 3. This word has an intended double meaning) _reference_start_James 4:8_reference_end_ \gtrm diakaqairw \trnl diakathairõ _reference_start_Matthew 3:12_reference_end_ _reference_start_Luke 3:17_reference_end_ \en2 5. To make something ritually clean \en3 a. To declare something to be acceptable to God \gtrm kaqarizw \trnl katharizõ _reference_start_Mark 7:19_reference_end_ _reference_start_Acts 10:15_reference_end_ \en3 b. To make acceptable to God through sacrifice or ritual \gtrm kaqarizw \trnl katharizõ _reference_start_Matthew 23:25_reference_end_ _reference_start_Matthew 23:26_reference_end_ _reference_start_Luke 11:39_reference_end_ _reference_start_Acts 11:9_reference_end_ _reference_start_Hebrews 9:22_reference_end_ _reference_start_Hebrews 9:23_reference_end_ \gtrm ekkaqairw \trnl ekkathairõ _reference_start_1 Corinthians 5:7_reference_end_ _reference_start_2 Timothyl 2:21_reference_end_ \gtrm ƒgnizw \trnl hagnizõ _reference_start_John 11:55_reference_end_ _reference_start_Acts 21:24_reference_end_ _reference_start_Acts 24:18_reference_end_ \en3 c. To heal leprosy and to remove the ritual impurity of it \gtrm kaqarizw \trnl katharizõ MAT 8:2, 3 (2 occurrences); 10:8; 11:5 _reference_start_Matthew 8:2_reference_end_ _reference_start_Matthew 8:3_reference_end_ _reference_start_Matthew 10:8_reference_end_ _reference_start_Matthew 11:5_reference_end_ _reference_start_Mark 1:40_reference_end_ _reference_start_Mark 1:41_reference_end_ _reference_start_Mark 1:42_reference_end_ _reference_start_Luke 4:27_reference_end_ _reference_start_Luke 5:12_reference_end_ _reference_start_Luke 5:13_reference_end_ _reference_start_Luke 7:22_reference_end_ _reference_start_Luke 17:14_reference_end_ _reference_start_Luke 17:17_reference_end_ \en2 6. To rid from sin, to rid from guilt \gtrm kaqarov \trnl katharos _reference_start_1 Peter 1:22_reference_end_ \gtrm kaqarizw \trnl katharizõm _reference_start_Acts 15:9_reference_end_ _reference_start_2 Corinthians 7:1_reference_end_ _reference_start_Ephesians 5:26_reference_end_ _reference_start_Titus 2:14_reference_end_ _reference_start_Hebrews 9:14_reference_end_ _reference_start_Hebrews 10:2_reference_end_ _reference_start_1 John 1:7_reference_end_ _reference_start_1 John 1:9_reference_end_ \gtrm ƒgnizw \trnl hagnizõ _reference_start_James 4:8_reference_end_ _reference_start_1 Peter 1:22_reference_end_ _reference_start_1 John 3:3_reference_end_ \en2 7. Cleansing, purification (noun forms) \en3 a. The act of making someone ritually clean \gtrm kaqarizmov \trnl katharizmos _reference_start_Mark 1:44_reference_end_ _reference_start_Luke 2:22_reference_end_ _reference_start_Luke 5:14_reference_end_ _reference_start_John 2:6_reference_end_ _reference_start_John 3:25_reference_end_ \gtrm kaqarotjv \trnl katharotæs _reference_start_Hebrews 9:13_reference_end_ \gtrm ƒgnizw \trnl hagnizõ _reference_start_Acts 21:26_reference_end_ \gtrm ƒgnismov \trnl hagnismos _reference_start_Acts 21:26_reference_end_ \en3 b. The event of being freed from sin and guilt \gtrm kaqarizmov \trnl katharizmos _reference_start_Hebrews 1:3_reference_end_ _reference_start_2 Peter 1:9_reference_end_ \en2 8. Purity (noun form) \gtrm ƒgnotjv \trnl hagnotæs _reference_start_2 Corinthians 6:6_reference_end_ _reference_start_2 Corinthians 11:3_reference_end_ \gtrm ƒgneia \trnl hagneia _reference_start_1 Timothy 4:12_reference_end_ _reference_start_1 Timothy 5:2_reference_end_ \en2 9. Opposites of unclean \en3 a. Undefiled \gtrm amiantov \trnl amiantos _reference_start_Hebrews 7:26_reference_end_ _reference_start_Hebrews 13:4_reference_end_ JAS 1:27 (2 occurrences) _reference_start_James 1:27_reference_end_ _reference_start_1 Peter 1:4_reference_end_ \en3 b. Spotless \gtrm aspilov \trnl aspilos _reference_start_1 Timothy 6:14_reference_end_ _reference_start_James 1:27_reference_end_ _reference_start_1 Peter 1:19_reference_end_ _reference_start_2 Peter 3:14_reference_end_ [[YCLEAN, CLEANSE, CLEANSING, PURIFICATIONclean, cleanse, cleansing, purification\see (see also UNCLEAN) \o1 1. Clean, Pure (adjective form) \o2 a. Physically clean, free from dirt or contamination \o2 b. Having nothing added or mixed in, unadulterated \o2 c. White, referring to linen cloth \o1 2. Ritually clean before God, free from taboo \o1 3. Spiritually pure, free from sin \o1 4. To cleanse, to make clean, to purify (verb form) \o2 a. To wash clean, to clear away what is not wanted \o1 5. To make something ritually clean \o2 a. To declare something to be acceptable to God \o2 b. To make acceptable to God through sacrifice or ritual \o2 c. To heal leprosy and to remove the ritual impurity of it \o1 6. To rid from sin, to rid from guilt \o1 7. Cleansing, puf ?tfXJ<. xj\N@2$|n`RD6( )< (; '6 &< %; $:  #: "6 !6 /  / = : , , : + + * * ), > < ; > > :  :  8 1 / , < * * * * * * )* )) )( (  ~(  }( |( {, z, y+ 7 x7 w. v:  u:  t, s* ' r( q( p,  o) n* m( l; k> ?tfXJ<. xj\N@2$|n`RD6( h3 g1 f1 e. d- c- b- a- `- _- ^- ], \, [+ Z+ Y+ X+ W+ " V+ 2 U+ 1 T+ 9 S+  R*8 Q* P* O* N)  M)  L)  K)  J) I) H(( G(& F($ E( D( C( B3 A) @( ?8 >8 =6 </ ;. :. 9- 8:  7-  6,5 54 43 31 2, 1, 0* /6 .6 -4 ,, +, *=rrm paraggellw \trnl parangellõ \xref [L&N 33.327] \def command, announce what must be done \gtrm dogma \trnl dogma \xref [L&N 33.332] \def an official order or decree (noun) \gtrm epw \trnl epõ \xref [L&N not found] \def command, bid (but usually rendered “say”, “speak”, or “tell”) \gtrm keleusma \trnl keleusma \xref [L&N 32.324] \def call, shout of command (noun) \gtrm keleuw \trnl keleuõ \xref [L&N 32.333] \def command \gtrm ¿ew \trnl hreõ \xref [L&N not found] \def was commanded (but usually rendered “was spoken”) \gtrm diastellomai \trnl diastellomai \xref [L&N 33.323] \def command, state with authority/force what others must do \gtrm diatagj \trnl diatagæ \xref [L&N 33.326] \def ordinance, specific instruction, decree (noun) \gtrm diatagma \trnl diatagma \xref [L&N 33.326] \def ordinance, specific instruction, decree (noun) \gtrm epitagj \trnl epitagæ \xref [L&N 33.326] \def ordinance (noun) \xref [L&N 37.42] \def authority \gtrm entalma \trnl entalma \xref [L&N 33.330] \def commandmenst, an official order (noun) \gtrm entellw, entellomai \trnl entellõ, entellomai \xref [L&N 33.329] \def command, to give definite and official orders \gtrm entolj \trnl entolæ \xref [L&N 33.330] \def commandment (noun) \gtrm diatassw \trnl diatassõ \xref [L&N 33.325] \def command, state what must be done in detail \xref [L&N 62.8] \def arrange for \gtrm epitassw \trnl epitassõ \xref [L&N 33.325] \def command \gtrm prostassw \trnl prostassõ \xref [L&N 33.325] \def command \xref [L&N 62.9] \def arrange for \gtrm epitimaw \trnl epitimaõ \xref [L&N 33.331] \def command with implication of a threat \en2 1. Commandment \en3 a. Announcement of what must be done \gtrm paraggelia \trnl parangelia _reference_start_Acts 5:28_reference_end_ _reference_start_Acts 16:24_reference_end_ _reference_start_1 Thessalonians 4:2_reference_end_ _reference_start_1 Timothy 1:5_reference_end_ _reference_start_1 Timothy 1:18_reference_end_ \en3 b. Decree, official order \gtrm dogma \trnl dogma _reference_start_Luke 2:1_referetnce_end_ _reference_start_Acts 16:4_reference_end_ _reference_start_Acts 17:7_reference_end_ _reference_start_Ephesians 2:15_reference_end_ _reference_start_Colossians 2:14_reference_end_ \en3 c. Shout of command \gtrm keleusma \trnl keleusma _reference_start_1 Thessalonians 4:16_reference_end_ \en3 d. Detailed ordinance, authority \gtrm diatagj \trnl diatagæ _reference_start_Acts 7:53_reference_end_ _reference_start_Romans 13:2_reference_end_ \gtrm diatagma \trnl diatagma _reference_start_Hebrews 11:23_reference_end_ \gtrm epitagj \trnl epitagæ _reference_start_Romans 16:26_reference_end_ _reference_start_1 Corinthians 7:6_reference_end_ _reference_start_1 Corinthians 7:25_reference_end_ _reference_start_2 Corinthians 8:8_reference_end_ _reference_start_1 Timothy 1:1_reference_end_ _reference_start_Titus 1:3_reference_end_ _reference_start_Titus 2:15_reference_end_ \en3 e. Commandment, A definite and official order \gtrm entalma \trnl entalma _reference_start_Matthew 15:9_reference_end_ _reference_starut_Mark 7:7_reference_end_ _reference_start_Colossians 2:22_reference_end_ \gtrm entolj \trnl entolæ _reference_start_Matthew 5:19_reference_end_ _reference_start_Matthew 15:3_reference_end_ _reference_start_Matthew 19:17_reference_end_ _reference_start_Matthew 22:36_reference_end_ _reference_start_Matthew 22:38_reference_end_ _reference_start_Matthew 22:40_reference_end_ _reference_start_Mark 7:8_reference_end_ _reference_start_Mark 7:9_reference_end_ _reference_start_Mark 10:5_reference_end_ _reference_start_Mark 10:19_reference_end_ _reference_start_Mark 12:28_reference_end_ _reference_start_Mark 12:31_reference_end_ _reference_start_Luke 1:6_reference_end_ _reference_start_Luke 15:29_reference_end_ _reference_start_Luke 18:20_reference_end_ _reference_start_Luke 23:56_reference_end_ JHN 10:18; 11:57; 12:49, 50; 13:34; 14:15, 21; 15:10 (2 occurrences), 12 _reference_start_John 10:18_reference_end_ _reference_start_John 11:57_reference_end_ _reference_start_John 12:49_reference_end_ _reference_start_Johvn 12:50_reference_end_ _reference_start_John 13:34_reference_end_ _reference_start_John 14:15_reference_end_ _reference_start_John 14:21_reference_end_ _reference_start_John 15:10_reference_end_ _reference_start_John 15:12_reference_end_ _reference_start_Acts 1:2_reference_end_ _reference_start_Acts 17:15_reference_end_ ROM 7:8, 9, 10, 11, 12, 13; 13:9 (2 occurrences) _reference_start_Romans 7:8_reference_end_ _reference_start_Romans 7:9_reference_end_ _reference_start_Romans 7:10_reference_end_ _reference_start_Romans 7:11_reference_end_ _reference_start_Romans 7:12_reference_end_ _reference_start_Romans 7:13_reference_end_ _reference_start_Romans 13:9_reference_end_ _reference_start_1 Corinthians 7:19_reference_end_ _reference_start_Ephesians 2:15_reference_end_ _reference_start_Ephesians 6:2_reference_end_ _reference_start_Colossians 4:10_reference_end_ _reference_start_1 Timothy 6:14_reference_end_ _reference_start_Titus 1:14_reference_end_ _reference_start_Hebrews 7:5_reference_end_ _reference_start_wHebrews 7:16_reference_end_ _reference_start_Hebrews 7:18_reference_end_ _reference_start_Hebrews 9:19_reference_end_ _reference_start_2 Peter 2:21_reference_end_ _reference_start_2 Peter 3:2_reference_end_ 1JN 2:3, 4, 7 (3 occurrences), 8; 3:22, 23, 24; 4:21; 5:2, 3 (2 occurrences) _reference_start_1 John 2:3_reference_end_ _reference_start_1 John 2:4_reference_end_ _reference_start_1 John 2:7_reference_end_ _reference_start_1 John 2:8_reference_end_ _reference_start_1 John 3:22_reference_end_ _reference_start_1 John 3:23_reference_end_ _reference_start_1 John 3:24_reference_end_ _reference_start_1 John 4:21_reference_end_ _reference_start_1 John 5:2_reference_end_ _reference_start_1 John 5:3_reference_end_ 2JN 1:4, 5, 6 (2 occurrences) _reference_start_2 John 1:4_reference_end_ _reference_start_2 John 1:5_reference_end_ _reference_start_2 John 1:6_reference_end_ REV 12:17; 14:12; 22:14 (not all texts) _reference_start_Revelation 12:17_reference_end_ _reference_start_Revelation 14:12_reference_end_ _refexrence_start_Revelation 22:14_reference_end_ \en2 2. Command \en3 a. Tell people what they must do \gtrm paraggellw \trnl parangellõ _reference_start_Matthew 10:5_reference_end_ _reference_start_Mark 6:8_reference_end_ _reference_start_Mark 8:6_reference_end_ _reference_start_Luke 5:14_reference_end_ _reference_start_Luke 8:29_reference_end_ _reference_start_Luke 8:56_reference_end_ _reference_start_Luke 9:21_reference_end_ _reference_start_Acts 1:4_reference_end_ _reference_start_Acts 4:18_reference_end_ _reference_start_Acts 5:28_reference_end_ _reference_start_Acts 5:40_reference_end_ _reference_start_Acts 10:42_reference_end_ _reference_start_Acts 15:5_reference_end_ _reference_start_Acts 16:18_reference_end_ _reference_start_Acts 16:23_reference_end_ _reference_start_Acts 17:30_reference_end_ _reference_start_Acts 23:22_reference_end_ _reference_start_Acts 23:30_reference_end_ _reference_start_1 Corinthians 7:10_reference_end_ _reference_start_1 Corinthians 11:17_reference_end_ _reference_start_1 Theyssalonians 4:11_reference_end_ _reference_start_2 Thessalonians 3:4_reference_end_ _reference_start_2 Thessalonians 3:6_reference_end_ _reference_start_2 Thessalonians 3:10_reference_end_ _reference_start_2 Thessalonians 3:12_reference_end_ _reference_start_1 Timothy 1:3_reference_end_ _reference_start_1 Timothy 4:11_reference_end_ _reference_start_1 Timothy 5:7_reference_end_ _reference_start_1 Timothy 6:13_reference_end_ _reference_start_1 Timothy 6:17_reference_end_ \en3 b. “Say” (implying command) with an imperative \gtrm epw \trnl epõ MAT 2:8, 13; 3:15; 4:3 (2 occurrences) (the second occurrence is a performative); 8:13, 22, 32; 9:2 (performative), 5 (performative) (2 occurrences); 11:3; 14:18, 29; 16:6, 12; 17:7; 19:14; 20:4, 21 (performative); 21:21 (performative), 28, 30; 22:4, 13, 24, 44; 23:3; 26:18; 28:5, 7 _reference_start_Matthew 2:8_reference_end_ _reference_start_Matthew 2:13_reference_end_ _reference_start_Matthew 3:15_reference_end_ _reference_start_Matthew 4:3_reference_end_ _referencze_start_Matthew 8:13_reference_end_ _reference_start_Matthew 8:22_reference_end_ _reference_start_Matthew 8:32_reference_end_ _reference_start_Matthew 9:2_reference_end_ _reference_start_Matthew 9:5_reference_end_ _reference_start_Matthew 11:3_reference_end_ _reference_start_Matthew 14:18_reference_end_ _reference_start_Matthew 14:29_reference_end_ _reference_start_Matthew 16:6_reference_end_ _reference_start_Matthew 16:12_reference_end_ _reference_start_Matthew 17:7_reference_end_ _reference_start_Matthew 19:14_reference_end_ _reference_start_Matthew 20:4_reference_end_ _reference_start_Matthew 20:21_reference_end_ _reference_start_Matthew 21:21_reference_end_ _reference_start_Matthew 21:28_reference_end_ _reference_start_Matthew 21:30_reference_end_ _reference_start_Matthew 22:4_reference_end_ _reference_start_Matthew 22:13_reference_end_ _reference_start_Matthew 22:24_reference_end_ _reference_start_Matthew 22:44_reference_end_ _reference_start_Matthew 23:3_reference_end_ _reference_start_Matthew 26:18{_reference_end_ _reference_start_Matthew 28:5_reference_end_ _reference_start_Matthew 28:7_reference_end_ MRK 2:9 (performative) (2 occurrences); 4:39 (performative); 5:34, 43; 6:31; 7:10; 8:7, 34; 9:39; 10:14, 49; 11:14 (performative), 23; 12:36; 14:6; 16:15 _reference_start_Mark 2:9_reference_end_ _reference_start_Mark 4:39_reference_end_ _reference_start_Mark 5:34_reference_end_ _reference_start_Mark 5:43_reference_end_ _reference_start_Mark 6:31_reference_end_ _reference_start_Mark 7:10_reference_end_ _reference_start_Mark 8:7_reference_end_ _reference_start_Mark 8:34_reference_end_ _reference_start_Mark 9:39_reference_end_ _reference_start_Mark 10:14_reference_end_ _reference_start_Mark 10:49_reference_end_ _reference_start_Mark 11:14_reference_end_ _reference_start_Mark 11:23_reference_end_ _reference_start_Mark 12:36_reference_end_ _reference_start_Mark 14:6_reference_end_ _reference_start_Mark 16:15_reference_end_ LUK 1:13; 2:10; 3:13, 14; 4:3 (performative); 5:4, 13 (performative); 7:13, 14, 48 (|performative); 8:52; 9:13, 14, 50, 54, 59, 60; 10:35, 37, 40; 12:13, 22; 13:12 (performative), 23, 32; 14:17, 23; 15:22; 17:14, 19; 18:42 (performative); 19:5, 15, 30; 20:23, 25; 21:8; 22:8, 40, 51; 23:28; 24:29 _reference_start_Luke 1:13_reference_end_ _reference_start_Luke 2:10_reference_end_ _reference_start_Luke 3:13_reference_end_ _reference_start_Luke 3:14_reference_end_ _reference_start_Luke 4:3_reference_end_ _reference_start_Luke 5:4_reference_end_ _reference_start_Luke 5:13_reference_end_ _reference_start_Luke 7:13_reference_end_ _reference_start_Luke 7:14_reference_end_ _reference_start_Luke 7:48_reference_end_ _reference_start_Luke 8:52_reference_end_ _reference_start_Luke 9:13_reference_end_ _reference_start_Luke 9:14_reference_end_ _reference_start_Luke 9:50_reference_end_ _reference_start_Luke 9:54_reference_end_ _reference_start_Luke 9:59_reference_end_ _reference_start_Luke 9:60_reference_end_ _reference_start_Luke 10:35_reference_end_ _reference_start_Luke 10:37_reference_end_ _reference}_start_Luke 10:40_reference_end_ _reference_start_Luke 12:13_reference_end_ _reference_start_Luke 12:22_reference_end_ _reference_start_Luke 13:12_reference_end_ _reference_start_Luke 13:23_reference_end_ _reference_start_Luke 13:32_reference_end_ _reference_start_Luke 14:17_reference_end_ _reference_start_Luke 14:23_reference_end_ _reference_start_Luke 15:22_reference_end_ _reference_start_Luke 17:14_reference_end_ _reference_start_Luke 17:19_reference_end_ _reference_start_Luke 18:42_reference_end_ _reference_start_Luke 19:5_reference_end_ _reference_start_Luke 19:15_reference_end_ _reference_start_Luke 19:30_reference_end_ _reference_start_Luke 20:23_reference_end_ _reference_start_Luke 20:25_reference_end_ _reference_start_Luke 21:8_reference_end_ _reference_start_Luke 22:8_reference_end_ _reference_start_Luke 22:40_reference_end_ _reference_start_Luke 22:51_reference_end_ _reference_start_Luke 23:28_reference_end_ _reference_start_Luke 24:29_reference_end_ JHN 2:16; 4:16, 50 (performative); 5:11, 14;~ 6:10; 9:7, 11; 12:7; 21:6 _reference_start_John 2:16_reference_end_ _reference_start_John 4:16_reference_end_ _reference_start_John 4:50_reference_end_ _reference_start_John 5:11_reference_end_ _reference_start_John 5:14_reference_end_ _reference_start_John 6:10_reference_end_ _reference_start_John 9:7_reference_end_ _reference_start_John 9:11_reference_end_ _reference_start_John 12:7_reference_end_ _reference_start_John 21:6_reference_end_ ACT 2:34, 38; 3:4; 5:19; 7:3, 33, 40; 8:29; 9:11, 34 (performative), 40; 11:12; 12:8, 17; 13:2; 14:10; 16:31; 18:9; 20:10; 22:10, 13 (performative), 21, 24, 27; 23:23 _reference_start_Acts 2:34_reference_end_ _reference_start_Acts 2:38_reference_end_ _reference_start_Acts 3:4_reference_end_ _reference_start_Acts 5:19_reference_end_ _reference_start_Acts 7:3_reference_end_ _reference_start_Acts 7:33_reference_end_ _reference_start_Acts 7:40_reference_end_ _reference_start_Acts 8:29_reference_end_ _reference_start_Acts 9:11_reference_end_ _reference_start_Acts 9:34_reference_end_ _reference_start_Acts 9:40_reference_end_ _reference_start_Acts 11:12_reference_end_ _reference_start_Acts 12:8_reference_end_ _reference_start_Acts 12:17_reference_end_ _reference_start_Acts 13:2_reference_end_ _reference_start_Acts 14:10_reference_end_ _reference_start_Acts 16:31_reference_end_ _reference_start_Acts 18:9_reference_end_ _reference_start_Acts 20:10_reference_end_ _reference_start_Acts 22:10_reference_end_ _reference_start_Acts 22:13_reference_end_ _reference_start_Acts 22:21_reference_end_ _reference_start_Acts 22:24_reference_end_ _reference_start_Acts 22:27_reference_end_ _reference_start_Acts 23:23_reference_end_ _reference_start_2 Corinthians 4:6_reference_end_ _reference_start_Colossians 4:17_reference_end_ JAS 2:3 (2 occurrences), 11 (2 occurrences), 16 (performative) _reference_start_James 2:3_reference_end_ _reference_start_James 2:11_reference_end_ _reference_start_James 2:16_reference_end_ JUD 1:9 (performative) _reference_start_Jude 1:9_reference_end_ _reference_start_Revelation 22:17_reference_end_ \itrm Implied JHN 5:8 (performative); 11:43 _reference_start_John 5:8_reference_end_ _reference_start_John 11:43_reference_end_ \en3 c. Tell to do something, with a generic subject \gtrm ¿ew \trnl hreõ _reference_start_Matthew 5:21_reference_end_ _reference_start_Matthew 5:27_reference_end_ _reference_start_Matthew 5:31_reference_end_ _reference_start_Matthew 5:33_reference_end_ _reference_start_Matthew 5:38_reference_end_ _reference_start_Matthew 5:43_reference_end_ _reference_start_Revelation 6:11_reference_end_ _reference_start_Revelation 9:4_reference_end_ \en3 d. Explicit, often publicly announced, authoritative command \gtrm keleuw \trnl keleuõ _reference_start_Matthew 8:18_reference_end_ _reference_start_Matthew 14:9_reference_end_ _reference_start_Matthew 14:19_reference_end_ _reference_start_Matthew 14:28_reference_end_ _reference_start_Matthew 15:35_reference_end_ _reference_start_Matthew 18:25_reference_end_ _reference_start_Matthew 27:58_reference_end_ _reference_start_Matthew 26:64_reference_end_ _reference_start_Luke 18:40_reference_end_ _reference_start_Acts 4:15_reference_end_ _reference_start_Acts 5:34_reference_end_ _reference_start_Acts 8:38_reference_end_ _reference_start_Acts 12:19_reference_end_ _reference_start_Acts 16:22_reference_end_ _reference_start_Acts 21:33_reference_end_ _reference_start_Acts 21:34_reference_end_ _reference_start_Acts 22:24_reference_end_ _reference_start_Acts 22:30_reference_end_ _reference_start_Acts 23:3_reference_end_ _reference_start_Acts 23:10_reference_end_ _reference_start_Acts 23:35_reference_end_ _reference_start_Acts 24:8_reference_end_ _reference_start_Acts 25:6_reference_end_ _reference_start_Acts 25:17_reference_end_ _reference_start_Acts 25:21_reference_end_ _reference_start_Acts 25:23_reference_end_ _reference_start_Acts 27:43_reference_end_ \en3 e. Forcefully/authoritatively state what must be done \gtrm diastellomai \trnl diastellomai _reference_start_Matthew 16:20_reference_end_ MRK 5:43; 7:36 (2 occurrences); 8:15; 9:9 _reference_start_Mark 5:43_reference_end_ _reference_start_Mark 7:36_reference_end_ _reference_start_Mark 8:15_reference_end_ _reference_start_Mark 9:9_reference_end_ _reference_start_Acts 15:24_reference_end_ _reference_start_Hebrews 12:20_reference_end_ \en3 f. Give a definite and official order \en3 g. State what must be done in detail \gtrm diatassw \trnl diatassõ _reference_start_Matthew 11:1_reference_end_ _reference_start_Luke 3:13_reference_end_ _reference_start_Luke 8:55_reference_end_ _reference_start_Luke 17:9_reference_end_ _reference_start_Luke 17:10_reference_end_ _reference_start_Acts 7:44_reference_end_ _reference_start_Acts 18:22_reference_end_ _reference_start_Acts 23:31_reference_end_ _reference_start_1 Corinthians 7:17_reference_end_ _reference_start_1 Corinthians 9:14_reference_end_ _reference_start_1 Corinthians 11:34_reference_end_ _reference_start_1 Corinthians 16:1_reference_end_ _reference_start_Galatians 3:19_reference_end_ \gtrm epitassw \trnl epitassõ _reference_start_Mark 1:27_reference_end_ _reference_start_Mark 6:27_reference_end_ _reference_start_Mark 6:39_reference_end_ _reference_start_Mark 9:25_reference_end_ _reference_start_Luke 4:36_reference_end_ _reference_start_Luke 8:25_reference_end_ _reference_start_Luke 14:22_reference_end_ _reference_start_Acts 23:2_reference_end_ _reference_start_Philemon 1:8_reference_end_ \gtrm prostassw \trnl prostassõ _reference_start_Matthew 1:24_reference_end_ _reference_start_Matthew 8:4_reference_end_ _reference_start_Matthew 21:6_reference_end_ _reference_start_Mark 1:44_reference_end_ _reference_start_Luke 5:14_reference_end_ _reference_start_Acts 10:33_reference_end_ _reference_start_Acts 10:48_reference_end_ \en3 h. Command, with implication of a threat \gtrm epitimaw \trnl epitimaõ _reference_start_Matthew 8:26_reference_end_ _reference_start_Matthew 12:16_reference_end_ _reference_start_Matthew 16:22_reference_end_ _reference_start_Matthew 17:18_reference_end_ _reference_start_Matthew 19:13_reference_end_ _reference_start_Matthew 20:31_reference_end_ _reference_start_Mark 1:25_reference_end_ _reference_start_Mark 3:12_reference_end_ _reference_start_Mark 4:39_reference_end_ _reference_start_Mark 8:30_reference_end_ _reference_start_Mark 8:32_reference_end_ _reference_start_Mark 8:33_reference_end_ _reference_start_Mark 9:25_reference_end_ _reference_start_Mark 10:13_reference_end_ _reference_start_Mark 10:48_reference_end_ _reference_start_Luke 4:35_reference_end_ _reference_start_Luke 4:39_reference_end_ _reference_start_Luke 4:41_reference_end_ _reference_start_Luke 8:24_reference_end_ _reference_start_Luke 9:21_reference_end_ _reference_start_Luke 9:42_reference_end_ _reference_start_Luke 9:55_reference_end_ _reference_start_Luke 17:3_reference_end_ _reference_start_Luke 18:15_reference_end_ _reference_start_Luke 18:39_reference_end_ _reference_start_Luke 19:39_reference_end_ _reference_start_Luke 23:40_reference_end_ _reference_start_2 Timothy 4:2_reference_end_ _reference_start_Jude 1:9_reference_end_ x55COMMANDMENT, COMMANDcommandment, command\see (see also LAW) \o1 1. Commandment \o2 a. Announcement of what must be done \o2 b. Decree, official order \o2 c. Shout of command \o2 d. Detailed ordinance, authority \o2 e. Commandment, A definite and official order \o1 2. Command \o2 a. Tell people what they must do \o2 b. “Say” (implying command) with an imperative \o2 c. Tell to do something, with a generic subject \o2 d. Explicit, often publicly announced, authoritative command \o2 e. Forcefully/authoritatively state what must be done \o2 f. Give a definite and official order \o2 g. State what must be done in detail \o2 h. Command, with implication of a threat \gtrm paraggelia \trnl parangelia \xref [L&N 33.328] \def command, an announcement as to what must be done (noun) \gtq ?tfXJ<. xj\N@2$|n`RD6( '(  &(  %( $( #( "( !( ( ( 6 6 6 6 6 5 5 5 5 4 .  . , , , , , , , * ,( , , , *  *8 * * ) ) (  B B ~B  }? |? {? z> y> x> w> v> u> t> s> r> q> p= o= n:  m: l: k: j8 i6 ?tfXJ<. xj\N@2$|n`RD6( f* e* d* c*  b* a*  `* _* ( ^* % ]* # \* < [* ; Z* 6 Y* 2 X*  W* V*4 U*0 T* S* R* Q* P* O* N* M* L* K) J) I) $ H)  G)  F) 1 E)  D) ' C)" B) A) @) ?)+ >)" =)' <) ;( :( 9( 8( 7(, 6( 5( 4( 3( 2( 1( 0( /( .( -( ,( +( *( )( ((  ?tfXJ<. xj\N@2$|n`RD6( %(! $( #( "( !+ + + B A ; ; ; 3 / , , , , , , , , , , ,  ,  ,  , , ( , " , , ,( ,! , , , ,& ," + ~+  }+ |+  {+ z+ y+ x+2 w+ v+ u* t* s*3 r*( q* p* o* n* m* l* k* j** i* h* g* ?tfXJ<. xj\N@2$|n`RD6( d( c( b( a9 `, _* ^* ]*$ \)  [)' Z) Y) X0 W. V. " U.  T. S, R, Q,, P* O* N*7 M* L(  K:  J, I) H) G)$ F)+ E( D,+ C, B, A, @, ?, >,# =, <, ;, :, 9," 8,! 7, 6,  5,& 4," 3, 2*( 1(@ 0(: /( .(# -( ,( +( *( )B  (B '(+ &(& ?tfXJ<. xj\N@2$|n`RD6( #, ", !; 2 / ; 3 ; 2 < ; * * ! * )  ) )" )) (" ( ( ( ( $ > 2 2 3 : " < : A 7 *( *' *' * * ~* 7 }* * |*  {* z*) y*' x*# w) 0 v) u)  t)! s) r) q)' p) o) n( m( l( k( j(  i( h, 0 g, ! f* e),def tenderly help \gtrm oiktirmov \trnl oiktirmos \xref [L&N 88.80] \def mercy, tender compassion \gtrm oiktirmwn \trnl oiktirmõn \xref [L&N 88.81] \def merciful, tenderly compassionate \en2 1. Gentle compassion \gtrm metriopaqew \trnl metriopatheõ _reference_start_Hebrews 5:2_reference_end_ \en2 2. Sympathetic compassion \gtrm sumpaqjv \trnl sumpathæs _reference_start_1 Peter 3:8_reference_end_ \gtrm sumpaqew \trnl sumpatheõ _reference_start_Hebrews 10:34_reference_end_ _reference_start_Colossians 3:12_reference_end_ \gtrm oiktirmov \trnl oiktirmos _reference_start_Philippians 2:1_reference_end_ \en2 3. Yearning compassion \gtrm splancna \trnl splanchna _reference_start_Philippians 2:1_reference_end_ _reference_start_1 John 3:17_reference_end_ \gtrm splancnizomai \trnl splanchnizomai _reference_start_Matthew 9:36_reference_end_ _reference_start_Matthew 14:14_reference_end_ _reference_start_Matthew 15:32_reference_end_ _reference_start_Matthew 18:27_reference_end_ _reference_start_Matthew 20:34_reference_end_ _reference_start_Mark 1:41_reference_end_ _reference_start_Mark 6:34_reference_end_ _reference_start_Mark 8:2_reference_end_ _reference_start_Mark 9:22_reference_end_ _reference_start_Luke 7:13_reference_end_ _reference_start_Luke 10:33_reference_end_ _reference_start_Luke 15:20_reference_end_ \gtrm polusplancnov \trnl polusplanchnos _reference_start_James 5:11_reference_end_ \gtrm eusplancnov \trnl eusplanchnos _reference_start_1 Peter 3:8_reference_end_ \gtrm oiktirmov \trnl oiktirmos _reference_start_Philippians 2:1_reference_end_ \gtrm oiktirmwn \trnl oiktirmõn _reference_start_James 5:11_reference_end_ \en2 4. Tender compassion \gtrm sumpaqew \trnl sumpatheõ _reference_start_Colossians 3:12_reference_end_ \gtrm polusplancnov \trnl polusplanchnos _reference_start_James 5:11_reference_end_ \gtrm oiktirmov \trnl oiktirmos _reference_start_2 Corinthians 1:3_reference_end_ _reference_start_Philippians 2:1_reference_end_ \gtrm oiktirmwn \trnl oiktirmõn _reference_start_James 5:11_reference_end_ R!!uCOMPASSIONcompassion\see (see also GRACE, MERCY) \o1 1. Gentle compassion \o1 2. Sympathetic compassion \o1 3. Yearning compassion \o1 4. Tender compassion \gtrm metriopaqew \trnl metriopatheõ \xref [L&N 88.65] \def deal gently/moderately with \gtrm sumpaqjv \trnl sumpathæs \xref [L&N 25.58] \def sympathetic \gtrm sumpaqew \trnl sumpatheõ \xref [L&N 25.57] \def have sympathy for \xref [L&N 24.80] \def suffer with (literal meaning) \gtrm splancna \trnl splanchna \xref [L&N 25.49] \def compassion \xref [L&N 25.50] \def object of affection \xref [L&N 8.58] \def intestines (literal meaning) \xref [L&N 26.11] \def desires \gtrm splancnizomai \trnl splanchnizomai \xref [L&N 25.49] \def feel deep yearning compassion or affection \gtrm polusplancnov \trnl polusplanchnos \xref [L&N 25.52] \def extremely compassionate \gtrm eusplancnov \trnl eusplanchnos \xref [L&N 25.51] \def genuinely compassionate \gtrm oikteirw, oiktirw \trnl oikteirõ, oiktirõ \xref [L&N 88.80] \ D.!3COUNSELORcounselor\see (see ADVOCATE)j !!%CONSCIENCEconscience\o1 1. Sense of personal integrity, good or bad, doing what one knows to be right \o1 2. Sense of right and wrong with regard to moral issues \gtrm suneidjsiv \trnl suneidæsis \xref [L&N 26.13] \def conscience \xref [L&N 28.4] \def to be aware of \xref [L&N 27.54] \def to be sensitive to \en2 1. Sense of personal integrity, good or bad, doing what one knows to be right \gtrm suneidjsiv \trnl suneidæsis _reference_start_Acts 23:1_reference_end_ _reference_start_Acts 24:16_reference_end_ _reference_start_1 Corinthians 8:7_reference_end_ _reference_start_1 Corinthians 8:10_reference_end_ _reference_start_1 Corinthians 8:12_reference_end_ _reference_start_1 Timothy 1:5_reference_end_ _reference_start_1 Timothy 1:19_reference_end_ _reference_start_1 Timothy 3:9_reference_end_ _reference_start_2 Timothy 1:3_reference_end_ _reference_start_HC77-CONDEMN, CONDEMNATIONcondemn, condemnation\see (see JUDGE)ebrews 9:9_reference_end_ _reference_start_Hebrews 10:2_reference_end_ _reference_start_Hebrews 10:22_reference_end_ _reference_start_Hebrews 13:18_reference_end_ _reference_start_1 Peter 3:16_reference_end_ _reference_start_1 Peter 3:21_reference_end_ \en2 2. Sense of right and wrong with regard to moral issues \gtrm suneidjsiv \trnl suneidæsis _reference_start_Romans 2:15_reference_end_ _reference_start_Romans 9:1_reference_end_ _reference_start_Romans 13:5_reference_end_ _reference_start_1 Corinthians 10:25_reference_end_ _reference_start_1 Corinthians 10:27_reference_end_ _reference_start_1 Corinthians 10:28_reference_end_ _reference_start_1 Corinthians 10:29_reference_end_ _reference_start_2 Corinthians 1:12_reference_end_ _reference_start_2 Corinthians 4:2_reference_end_ _reference_start_2 Corinthians 5:11_reference_end_ _reference_start_1 Timothy 1:19_reference_end_ _reference_start_1 Timothy 4:2_reference_end_ _reference_start_Titus 1:15_reference_end_ _reference_start_Hebrews 9:14_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( b:  a:  `:  _: ^: ]/ \: [: Z0 Y- X, W*I V:  U: T: S: R0 Q0 P0 O0 N0 M0 L0 K0 J- I- H-  G- F- E- D- C, B0 A, @, ?*H >:  =8 <6 ;6 :/ 9/ 8/ 7.  6.  5.  4.  3-  2-  1- 0< /< .:  -:  ,:  +: *7 )6 (6 '6 &. %. $.[L&N 33.387] \def to promise beforehand \gtrm epaggelma \trnl epangelma \xref [L&N 33.288] \def a promise \gtrm orkwmosia \trnl orkõmosia \xref [L&N 33.463] \def an oath, an affirmation of the truth of a statement \en2 1. God's covenant with Abraham \gtrm diaqjkj \trnl diathækæ _reference_start_Luke 1:72_reference_end_ _reference_start_Acts 3:25_reference_end_ _reference_start_Acts 7:8_reference_end_ _reference_start_Galatians 3:17_reference_end_ \gtrm epaggelia \trnl epangelia _reference_start_Acts 7:17_reference_end_ _reference_start_Romans 4:13_reference_end_ _reference_start_Romans 4:14_reference_end_ _reference_start_Romans 4:16_reference_end_ _reference_start_Romans 4:20_reference_end_ _reference_start_Romans 9:8_reference_end_ _reference_start_Romans 9:9_reference_end_ _reference_start_Romans 15:8_reference_end_ GAL 3:14, 16, 17, 18 (2 occurrences), 21, 29; 4:23, 28 _reference_start_Galatians 3:14_reference_end_ _reference_start_Galatians 3:16_reference_end_ _reference_start_Galatians 3:17_reference_end_ _reference_start_Galatians 3:18_reference_end_ _reference_start_Galatians 3:21_reference_end_ _reference_start_Galatians 3:29_reference_end_ _reference_start_Galatians 4:23_reference_end_ _reference_start_Galatians 4:28_reference_end_ HEB 6:15; 7:6; 11:9 (2 occurrences), 17 _reference_start_Hebrews 6:15_reference_end_ _reference_start_Hebrews 7:6_reference_end_ _reference_start_Hebrews 11:9_reference_end_ _reference_start_Hebrews 11:17_reference_end_ \gtrm érkov \trnl horkos _reference_start_Luke 1:73_reference_end_ \gtrm epaggellomai \trnl epangellomai _reference_start_Acts 7:5_reference_end_ _reference_start_Romans 4:21_reference_end_ _reference_start_Galatians 3:19_reference_end_ _reference_start_Hebrews 6:13_reference_end_ _reference_start_Hebrews 11:11_reference_end_ \en2 2. God's covenant with Moses \gtrm diaqjkj \trnl diathækæ _reference_start_2 Corinthians 3:14_reference_end_ HEB 8:7 (Implied contextually), 9 (2 occurrences); 9:1 (Implied contextually), 4 (2 occurrences), 15, 18 (Implied contextually), 20 _reference_start_Hebrews 8:7_reference_end_ _reference_start_Hebrews 8:9_reference_end_ _reference_start_Hebrews 9:1_reference_end_ _reference_start_Hebrews 9:4_reference_end_ _reference_start_Hebrews 9:15_reference_end_ _reference_start_Hebrews 9:18_reference_end_ _reference_start_Hebrews 9:20_reference_end_ REV 11:19 (possibly a heavenly ark of the New covenant) _reference_start_Revelation 11:19_reference_end_ \en2 3. God's promise to David \gtrm epaggelia \trnl epangelia _reference_start_Acts 13:23_reference_end_ \gtrm érkov \trnl horkos _reference_start_Acts 2:30_reference_end_ \en2 4. New covenant \gtrm diaqjkj \trnl diathækæ _reference_start_Matthew 26:28_reference_end_ _reference_start_Mark 14:24_reference_end_ _reference_start_Luke 22:20_reference_end_ _reference_start_Romans 11:27_reference_end_ _reference_start_1 Corinthians 11:25_reference_end_ _reference_start_2 Corinthians 3:6_reference_end_ HEB 7:22; 8:6, 8, 10, 13 (Implied contextually); 9:15; 10:16, 29; 12:24; 13:20 _reference_start_Hebrews 7:22_reference_end_ _reference_start_Hebrews 8:6_reference_end_ _reference_start_Hebrews 8:8_reference_end_ _reference_start_Hebrews 8:10_reference_end_ _reference_start_Hebrews 8:13_reference_end_ _reference_start_Hebrews 9:15_reference_end_ _reference_start_Hebrews 10:16_reference_end_ _reference_start_Hebrews 10:29_reference_end_ _reference_start_Hebrews 12:24_reference_end_ _reference_start_Hebrews 13:20_reference_end_ \gtrm epaggelia \trnl epangelia _reference_start_Galatians 3:22_reference_end_ _reference_start_Hebrews 8:6_reference_end_ _reference_start_Hebrews 9:15_reference_end_ \gtrm orkwmosia \trnl orkõmosia _reference_start_Hebrews 7:20_reference_end_ _reference_start_Hebrews 7:21_reference_end_ _reference_start_Hebrews 7:28_reference_end_ \en2 5. A legal promise made by someone to give something to someone else \gtrm diaqjkj \trnl diathækæ _reference_start_Galatians 3:15_reference_end_ _reference_start_Hebrews 9:16_reference_end_ _reference_start_Hebrews 9:17_reference_end_ \en2 6. A promise made with an appeal to a higher authority \gtrm érkov \trnl horkos HEB 6:16, 17 (God appeals to himself since there is no higher authority) _reference_start_Hebrews 6:16_reference_end_ _reference_start_Hebrews 6:17_reference_end_ \gtrm orkwmosia \trnl orkõmosia _reference_start_Hebrews 7:21_reference_end_ \en2 7. References to covenants in the plural \gtrm diaqjkj \trnl diathækæ ROM 9:4 (Abrahamic and Mosaic and (possibly others)) (2 occurrences) _reference_start_Romans 9:4_reference_end_ GAL 4:24 (Mosaic and New) _reference_start_Galatians 4:24_reference_end_ EPH 2:12 (Abrahamic (probably)) _reference_start_Ephesians 2:12_reference_end_ \gtrm epaggelia \trnl epangelia _reference_start_Hebrews 6:12_reference_end_ \en2 8. A verbal guarantee given by one person and/or group to another \gtrm epaggelia \trnl epangelia _reference_start_Acts 23:21_reference_end_ \gtrm epaggellomai \trnl epangellomai _reference_start_Mark 14:11_reference_end_ _reference_start_2 Peter 2:19_reference_end_ \gtrm proepaggellomai \trnl proepangellomai _reference_start_2 Corinthians 9:5_reference_end_ \en2 9. A divine oath or pledge (general) \gtrm epaggelia \trnl epangelia _reference_start_Luke 24:49_reference_end_ _reference_start_Acts 1:4_reference_end_ _reference_start_Acts 2:33_reference_end_ _reference_start_Acts 2:39_reference_end_ _reference_start_2 Corinthians 1:20_reference_end_ _reference_start_2 Corinthians 7:1_reference_end_ _reference_start_Ephesians 1:13_reference_end_ _reference_start_Ephesians 2:12_reference_end_ _reference_start_Ephesians 3:6_reference_end_ _reference_start_Ephesians 6:2_reference_end_ _reference_start_2 Timothy 1:1_reference_end_ _reference_start_Hebrews 4:1_reference_end_ _reference_start_Hebrews 10:36_reference_end_ _reference_start_Hebrews 11:13_reference_end_ _reference_start_Hebrews 11:33_reference_end_ _reference_start_Hebrews 11:39_reference_end_ _reference_start_2 Peter 3:4_reference_end_ _reference_start_2 Peter 3:9_reference_end_ _reference_start_1 John 2:25_reference_end_ \gtrm epaggellomai \trnl epangellomai _reference_start_Titus 1:2_reference_end_ _reference_start_Hebrews 10:23_reference_end_ _reference_start_Hebrews 12:26_reference_end_ _reference_start_James 1:12_reference_end_ _reference_start_James 2:5_reference_end_ _reference_start_1 John 2:25_reference_end_ \gtrm proepaggellomai \trnl proepangellomai _reference_start_Romans 1:2_reference_end_ \gtrm epaggelma \trnl epangelma _reference_start_2 Peter 1:4_reference_end_ _reference_start_2 Peter 3:13_reference_end_ \en2 10. Referring to all the covenants as one promise \gtrm epaggelia \trnl epangelia _reference_start_Acts 13:32_reference_end_ _reference_start_Acts 26:6_reference_end_ _reference_start_Hebrews 6:17_reference_end_ \en2 11. To profess or claim faith in something \gtrm epaggellomai \trnl epangellomai _reference_start_1 Timothy 2:10_reference_end_ _reference_start_1 Timothy 6:21_reference_end_ \en2 12. Assurance \gtrm epaggelia \trnl epangelia _reference_start_1 Timothy 4:8_reference_end_ @";;COVENANT, PROMISE, OATHcovenant, promise, oath\o1 1. God's covenant with Abraham \o1 2. God's covenant with Moses \o1 3. God's promise to David \o1 4. New covenant \o1 5. A legal promise made by someone to give something to someone else \o1 6. A promise made with an appeal to a higher authority \o1 7. References to covenants in the plural \o1 8. A verbal guarantee given by one person and/or group to another \o1 9. A divine oath or pledge (general) \o1 10. Referring to all the covenants as one promise \o1 11. To profess or claim faith in something \o1 12. Assurance \gtrm diaqjkj \trnl diathækæ \def covenant \gtrm epaggelia \trnl epangelia \xref [L&N 33.288] \def a promise \xref [L&N 33.280] \def an agreement \gtrm érkov \trnl horkos \xref [L&N 33.463] \def an oath, an affirmation of the truth of a statement \gtrm epaggellomai \trnl epangellomai \xref [L&N 33.286] \def to promise \xref [L&N 33.219] \def to assert \gtrm proepaggellomai \trnl proepangellomai \xref  ?tfXJ<. xj\N@2$|n`RD6( !:  :  8 > = = : ' : ! : : $ : 7 1 1 1 1 / / ,' ,! , *1 /  = ) , : 1 0 -  : : : :  :  ~0 }: |: {: z:  y: x0 w:  v:  u:  t:  s:  r: q: p: o: n: m/ l.  k-  j* i) h( g, f,  eB  d:  c:  ?tfXJ<. xj\N@2$|n`RD6( `) _) ^) ]) \) [) Z) Y) X( W(, V(& U(# T( S( R( Q( P( O(" N( M* L*  K)" J( I( & H2 G0 F0 E. D. C:  B3 A3 @1 ?0 >< =0 <,  ;, ' :, 92 8+ 7+ 6+ 5+ 4* 3) 2) 1) 0(* /(( .( -6 ,6 +6 *: ), (, '= &= %- $> #; "; wood, tree, club, and stocks \gtrm prospjgnumi \trnl prospægnumi \xref [L&N 20.76] \def to hang on a tree, crucify (hapax legomenon) \en2 1. A wooden beam with crossbeam used for execution purposes \gtrm staurov \trnl stauros _reference_start_Matthew 27:32_reference_end_ _reference_start_Matthew 27:40_reference_end_ _reference_start_Matthew 27:42_reference_end_ _reference_start_Mark 15:21_reference_end_ _reference_start_Mark 15:30_reference_end_ _reference_start_Mark 15:32_reference_end_ _reference_start_Luke 23:26_reference_end_ _reference_start_John 19:17_reference_end_ _reference_start_John 19:19_reference_end_ _reference_start_John 19:25_reference_end_ _reference_start_John 19:31_reference_end_ _reference_start_Philippians 2:8_reference_end_ \gtrm xulon \trnl xulon _reference_start_Acts 5:30_reference_end_ _reference_start_Acts 10:39_reference_end_ _reference_start_Acts 13:29_reference_end_ _reference_start_Galatians 3:13_reference_end_ _reference_start_1 Peter 2:24_reference_end_ \en2 2. Figurative uses of cross \en3 a. Metonymy, cross refers to the death of Christ \gtrm staurov \trnl stauros _reference_start_Galatians 6:14_reference_end_ _reference_start_Ephesians 2:16_reference_end_ _reference_start_Colossians 1:20_reference_end_ _reference_start_Colossians 2:14_reference_end_ _reference_start_Hebrews 12:2_reference_end_ \en3 b. Metonymy, cross refers to the message about the death of Christ \gtrm staurov \trnl stauros _reference_start_1 Corinthians 1:17_reference_end_ _reference_start_1 Corinthians 1:18_reference_end_ _reference_start_Galatians 5:11_reference_end_ _reference_start_Galatians 6:12_reference_end_ _reference_start_Philippians 3:18_reference_end_ \en3 c. Metonymy, cross used figuratively for death to self \gtrm staurov \trnl stauros _reference_start_Matthew 10:38_reference_end_ _reference_start_Matthew 16:24_reference_end_ _reference_start_Mark 8:34_reference_end_ _reference_start_Luke 9:23_reference_end_ _reference_start_Luke 14:27_reference_end_ \en2 3. Crucify, the act of killing a person by nailing him to a cross \gtrm staurow \trnl stauroõ MAT 20:19; 23:34; 26:2; 27:22, 23, 26, 31, 35, 38, 44 (compound word reflects a corporate sense (i.e. crucify together with someone)); 28:5 _reference_start_Matthew 20:19_reference_end_ _reference_start_Matthew 23:34_reference_end_ _reference_start_Matthew 26:2_reference_end_ _reference_start_Matthew 27:22_reference_end_ _reference_start_Matthew 27:23_reference_end_ _reference_start_Matthew 27:26_reference_end_ _reference_start_Matthew 27:31_reference_end_ _reference_start_Matthew 27:35_reference_end_ _reference_start_Matthew 27:38_reference_end_ _reference_start_Matthew 27:44_reference_end_ _reference_start_Matthew 28:5_reference_end_ MRK 15:13, 14, 15, 20, 24, 25, 27, 32 (compound word reflects a corporate sense (i.e. crucify together with someone)); 16:6 _reference_start_Mark 15:13_reference_end_ _reference_start_Mark 15:14_reference_end_ _reference_start_Mark 15:15_reference_end_ _reference_start_Mark 15:20_reference_end_ _reference_start_Mark 15:24_reference_end_ _reference_start_Mark 15:25_reference_end_ _reference_start_Mark 15:27_reference_end_ _reference_start_Mark 15:32_reference_end_ _reference_start_Mark 16:6_reference_end_ LUK 23:21 (2 occurrences), 23, 33; 24:7, 20 _reference_start_Luke 23:21_reference_end_ _reference_start_Luke 23:23_reference_end_ _reference_start_Luke 23:33_reference_end_ _reference_start_Luke 24:7_reference_end_ _reference_start_Luke 24:20_reference_end_ JHN 19:6 (3 occurrences), 10, 15 (2 occurrences), 16, 18, 20, 23, 32 (compound word reflects a corporate sense (i.e. crucify together with someone)), 41 _reference_start_John 19:6_reference_end_ _reference_start_John 19:10_reference_end_ _reference_start_John 19:15_reference_end_ _reference_start_John 19:16_reference_end_ _reference_start_John 19:18_reference_end_ _reference_start_John 19:20_reference_end_ _reference_start_John 19:23_reference_end_ _reference_start_John 19:32_reference_end_ _reference_start_John 19:41_reference_end_ _reference_start_Acts 2:36_reference_end_ _reference_start_Acts 4:10_reference_end_ _reference_start_1 Corinthians 1:13_reference_end_ _reference_start_1 Corinthians 1:23_reference_end_ _reference_start_1 Corinthians 2:2_reference_end_ _reference_start_1 Corinthians 2:8_reference_end_ _reference_start_2 Corinthians 13:4_reference_end_ _reference_start_Galatians 3:1_reference_end_ _reference_start_Revelation 11:8_reference_end_ \gtrm prospjgnumi \trnl prospægnumi _reference_start_Acts 2:23_reference_end_ \en2 4. Figurative uses of crucify \en3 a. Totally reject the sinful nature \gtrm staurow \trnl stauroõ _reference_start_Romans 6:6_reference_end_ _reference_start_Galatians 2:20_reference_end_ _reference_start_Galatians 5:24_reference_end_ _reference_start_Galatians 6:14_reference_end_ \en3 b. A special Greek form \gtrm staurow \trnl stauroõ HEB 6:6 (word has a preposition making it a compound word which means either “willfully crucify” or “recrucify”. There is no consensus here.) _reference_start_Hebrews 6:6_reference_end_  )%1DEFILEDdefiled\see (see UNCLEAN)'$-CRUCIFYcrucify\see (see CROSS)Y#))sCROSS, CRUCIFYcross, crucify\o1 1. A wooden beam with crossbeam used for execution purposes \o1 2. Figurative uses of cross \o2 a. Metonymy, cross refers to the death of Christ \o2 b. Metonymy, cross refers to the message about the death of Christ \o2 c. Metonymy, cross used figuratively for death to self \o1 3. Crucify, the act of killing a person by nailing him to a cross \o1 4. Figurative uses of crucify \o2 a. Totally reject the sinful nature \o2 b. A special Greek form \gtrm staurov \trnl stauros \xref [L&N 6.27] \def a cross \xref [L&N 24.83] \def death by suffering \gtrm staurow \trnl stauroõ \xref [L&N 20.76] \def to crucify \gtrm xulon \trnl xulon \xref [L&N 6.28] \def cross \xref (others) \def wood, fire ?tfXJ<. xj\N@2$|n`RD6( ( ( ( ($ (! ( ( ( ( ( ( ( ( ( ( $ ( ( 1 (  (  (  (  ( * (  (  (  ( % (  (  ( ( ( ( ( ~: }0 |0 {0 z- y, xB  w0 v/  u. t. s. r. q, p,$ o+) n+ m+ l+ k+ j+ i+ h+ g+ f* e* d*! c* b* a) 23:1; 24:1, 3; 26:1, 8, 17, 18, 19, 20, 26, 35, 36, 40, 45, 56; 27:64; 28:7, 8, 13, 16 _reference_start_Matthew 5:1_reference_end_ _reference_start_Matthew 8:21_reference_end_ _reference_start_Matthew 8:23_reference_end_ _reference_start_Matthew 9:10_reference_end_ _reference_start_Matthew 9:11_reference_end_ _reference_start_Matthew 9:14_reference_end_ _reference_start_Matthew 9:19_reference_end_ _reference_start_Matthew 9:37_reference_end_ _reference_start_Matthew 10:1_reference_end_ _reference_start_Matthew 10:24_reference_end_ _reference_start_Matthew 10:25_reference_end_ _reference_start_Matthew 10:42_reference_end_ _reference_start_Matthew 11:1_reference_end_ _reference_start_Matthew 11:2_reference_end_ _reference_start_Matthew 12:1_reference_end_ _reference_start_Matthew 12:2_reference_end_ _reference_start_Matthew 12:49_reference_end_ _reference_start_Matthew 13:10_reference_end_ _reference_start_Matthew 13:36_reference_end_ _reference_start_Matthew 14:12_reference_end_ _reference_start_Matthew 14:15_reference_end_ _reference_start_Matthew 14:19_reference_end_ _reference_start_Matthew 14:22_reference_end_ _reference_start_Matthew 14:26_reference_end_ _reference_start_Matthew 15:2_reference_end_ _reference_start_Matthew 15:12_reference_end_ _reference_start_Matthew 15:23_reference_end_ _reference_start_Matthew 15:32_reference_end_ _reference_start_Matthew 15:33_reference_end_ _reference_start_Matthew 15:36_reference_end_ _reference_start_Matthew 16:5_reference_end_ _reference_start_Matthew 16:13_reference_end_ _reference_start_Matthew 16:20_reference_end_ _reference_start_Matthew 16:21_reference_end_ _reference_start_Matthew 16:24_reference_end_ _reference_start_Matthew 17:6_reference_end_ _reference_start_Matthew 17:10_reference_end_ _reference_start_Matthew 17:13_reference_end_ _reference_start_Matthew 17:16_reference_end_ _reference_start_Matthew 17:19_reference_end_ _reference_start_Matthew 18:1_reference_end_ _reference_start_Matthew 19:10_reference_end_ _reference_start_Matthew 19:13_reference_end_ _reference_start_Matthew 19:23_reference_end_ _reference_start_Matthew 19:25_reference_end_ _reference_start_Matthew 20:17_reference_end_ _reference_start_Matthew 21:1_reference_end_ _reference_start_Matthew 21:6_reference_end_ _reference_start_Matthew 21:20_reference_end_ _reference_start_Matthew 22:16_reference_end_ _reference_start_Matthew 23:1_reference_end_ _reference_start_Matthew 24:1_reference_end_ _reference_start_Matthew 24:3_reference_end_ _reference_start_Matthew 26:1_reference_end_ _reference_start_Matthew 26:8_reference_end_ _reference_start_Matthew 26:17_reference_end_ _reference_start_Matthew 26:18_reference_end_ _reference_start_Matthew 26:19_reference_end_ _reference_start_Matthew 26:20_reference_end_ _reference_start_Matthew 26:26_reference_end_ _reference_start_Matthew 26:35_reference_end_ _reference_start_Matthew 26:36_reference_end_ _reference_start_Matthew 26:40_reference_end_ _reference_start_Matthew 26:45_reference_end_ _reference_start_Matthew 26:56_reference_end_ _reference_start_Matthew 27:64_reference_end_ _reference_start_Matthew 28:7_reference_end_ _reference_start_Matthew 28:8_reference_end_ _reference_start_Matthew 28:13_reference_end_ _reference_start_Matthew 28:16_reference_end_ MRK 2:15, 16, 18 (of John and the Pharisees) (4 occurrences), 23; 3:7, 9; 4:34; 5:31; 6:1, 29 (of John), 35, 41, 45; 7:2, 5, 17; 8:1, 4, 6, 10, 27 (2 occurrences), 33, 34; 9:14, 18, 28, 31; 10:10, 13, 23, 24, 46; 11:1, 14; 12:43; 13:1; 14:12, 13, 14, 16, 32; 16:7 _reference_start_Mark 2:15_reference_end_ _reference_start_Mark 2:16_reference_end_ _reference_start_Mark 2:18_reference_end_ _reference_start_Mark 2:23_reference_end_ _reference_start_Mark 3:7_reference_end_ _reference_start_Mark 3:9_reference_end_ _reference_start_Mark 4:34_reference_end_ _reference_start_Mark 5:31_reference_end_ _reference_start_Mark 6:1_reference_end_ _reference_start_Mark 6:29_reference_end_ _reference_start_Mark 6:35_reference_end_ _reference_start_Mark 6:41_reference_end_ _reference_start_Mark 6:45_reference_end_ _reference_start_Mark 7:2_reference_end_ _reference_start_Mark 7:5_reference_end_ _reference_start_Mark 7:17_reference_end_ _reference_start_Mark 8:1_reference_end_ _reference_start_Mark 8:4_reference_end_ _reference_start_Mark 8:6_reference_end_ _reference_start_Mark 8:10_reference_end_ _reference_start_Mark 8:27_reference_end_ _reference_start_Mark 8:33_reference_end_ _reference_start_Mark 8:34_reference_end_ _reference_start_Mark 9:14_reference_end_ _reference_start_Mark 9:18_reference_end_ _reference_start_Mark 9:28_reference_end_ _reference_start_Mark 9:31_reference_end_ _reference_start_Mark 10:10_reference_end_ _reference_start_Mark 10:13_reference_end_ _reference_start_Mark 10:23_reference_end_ _reference_start_Mark 10:24_reference_end_ _reference_start_Mark 10:46_reference_end_ _reference_start_Mark 11:1_reference_end_ _reference_start_Mark 11:14_reference_end_ _reference_start_Mark 12:43_reference_end_ _reference_start_Mark 13:1_reference_end_ _reference_start_Mark 14:12_reference_end_ _reference_start_Mark 14:13_reference_end_ _reference_start_Mark 14:14_reference_end_ _reference_start_Mark 14:16_reference_end_ _reference_start_Mark 14:32_reference_end_ _reference_start_Mark 16:7_reference_end_ LUK 5:30, 33; 6:1, 13, 17, 20, 40; 7:11, 18 (of John), 19; 8:9, 22; 9:14, 16, 18, 40, 43, 54; 10:23; 11:1 (2 occurrences); 12:1, 22; 14:26, 27, 33; 16:1; 17:1, 22; 18:15; 19:29, 37, 39; 20:45; 22:11, 39, 45 _reference_start_Luke 5:30_reference_end_ _reference_start_Luke 5:33_reference_end_ _reference_start_Luke 6:1_reference_end_ _reference_start_Luke 6:13_reference_end_ _reference_start_Luke 6:17_reference_end_ _reference_start_Luke 6:20_reference_end_ _reference_start_Luke 6:40_reference_end_ _reference_start_Luke 7:11_reference_end_ _reference_start_Luke 7:18_reference_end_ _reference_start_Luke 7:19_reference_end_ _reference_start_Luke 8:9_reference_end_ _reference_start_Luke 8:22_reference_end_ _reference_start_Luke 9:14_reference_end_ _reference_start_Luke 9:16_reference_end_ _reference_start_Luke 9:18_reference_end_ _reference_start_Luke 9:40_reference_end_ _reference_start_Luke 9:43_reference_end_ _reference_start_Luke 9:54_reference_end_ _reference_start_Luke 10:23_reference_end_ _reference_start_Luke 11:1_reference_end_ _reference_start_Luke 12:1_reference_end_ _reference_start_Luke 12:22_reference_end_ _reference_start_Luke 14:26_reference_end_ _reference_start_Luke 14:27_reference_end_ _reference_start_Luke 14:33_reference_end_ _reference_start_Luke 16:1_reference_end_ _reference_start_Luke 17:1_reference_end_ _reference_start_Luke 17:22_reference_end_ _reference_start_Luke 18:15_reference_end_ _reference_start_Luke 19:29_reference_end_ _reference_start_Luke 19:37_reference_end_ _reference_start_Luke 19:39_reference_end_ _reference_start_Luke 20:45_reference_end_ _reference_start_Luke 22:11_reference_end_ _reference_start_Luke 22:39_reference_end_ _reference_start_Luke 22:45_reference_end_ JHN 1:35 (of John), 37 (of John); 2:2, 11, 12, 17, 22; 3:22, 25 (of John); 4:1, 2, 8, 27, 31, 33; 6:3, 8, 12, 16, 22 (2 occurrences), 24, 60, 61, 66; 7:3; 8:31; 9:2, 27, 28 (of Moses) (2 occurrences); 11:7, 8, 12, 16, 54; 12:4, 16; 13:5, 22, 23, 35; 15:8; 16:17, 29; 18:1 (2 occurrences), 2, 15 (2 occurrences), 16, 17, 19, 25; 19:26, 27 (2 occurrences), 38; 20:2, 3, 4, 8, 10, 18, 19, 20, 25, 26, 30; 21:1, 2, 4, 7, 8, 12, 14, 20, 23, 24 _reference_start_John 1:35_reference_end_ _reference_start_John 1:37_reference_end_ _reference_start_John 2:2_reference_end_ _reference_start_John 2:11_reference_end_ _reference_start_John 2:12_reference_end_ _reference_start_John 2:17_reference_end_ _reference_start_John 2:22_reference_end_ _reference_start_John 3:22_reference_end_ _reference_start_John 3:25_reference_end_ _reference_start_John 4:1_reference_end_ _reference_start_John 4:2_reference_end_ _reference_start_John 4:8_reference_end_ _reference_start_John 4:27_reference_end_ _reference_start_John 4:31_reference_end_ _reference_start_John 4:33_reference_end_ _reference_start_John 6:3_reference_end_ _reference_start_John 6:8_reference_end_ _reference_start_John 6:12_reference_end_ _reference_start_John 6:16_reference_end_ _reference_start_John 6:22_reference_end_ _reference_start_John 6:24_reference_end_ _reference_start_John 6:60_reference_end_ _reference_start_John 6:61_reference_end_ _reference_start_John 6:66_reference_end_ _reference_start_John 7:3_reference_end_ _reference_start_John 8:31_reference_end_ _reference_start_John 9:2_reference_end_ _reference_start_John 9:27_reference_end_ _reference_start_John 9:28_reference_end_ _reference_start_John 11:7_reference_end_ _reference_start_John 11:8_reference_end_ _reference_start_John 11:12_reference_end_ _reference_start_John 11:16_reference_end_ _reference_start_John 11:54_reference_end_ _reference_start_John 12:4_reference_end_ _reference_start_John 12:16_reference_end_ _reference_start_John 13:5_reference_end_ _reference_start_John 13:22_reference_end_ _reference_start_John 13:23_reference_end_ _reference_start_John 13:35_reference_end_ _reference_start_John 15:8_reference_end_ _reference_start_John 16:17_reference_end_ _reference_start_John 16:29_reference_end_ _reference_start_John 18:1_reference_end_ _reference_start_John 18:2_reference_end_ _reference_start_John 18:15_reference_end_ _reference_start_John 18:16_reference_end_ _reference_start_John 18:17_reference_end_ _reference_start_John 18:19_reference_end_ _reference_start_John 18:25_reference_end_ _reference_start_John 19:26_reference_end_ _reference_start_John 19:27_reference_end_ _reference_start_John 19:38_reference_end_ _reference_start_John 20:2_reference_end_ _reference_start_John 20:3_reference_end_ _reference_start_John 20:4_reference_end_ _reference_start_John 20:8_reference_end_ _reference_start_John 20:10_reference_end_ _reference_start_John 20:18_reference_end_ _reference_start_John 20:19_reference_end_ _reference_start_John 20:20_reference_end_ _reference_start_John 20:25_reference_end_ _reference_start_John 20:26_reference_end_ _reference_start_John 20:30_reference_end_ _reference_start_John 21:1_reference_end_ _reference_start_John 21:2_reference_end_ _reference_start_John 21:4_reference_end_ _reference_start_John 21:7_reference_end_ _reference_start_John 21:8_reference_end_ _reference_start_John 21:12_reference_end_ _reference_start_John 21:14_reference_end_ _reference_start_John 21:20_reference_end_ _reference_start_John 21:23_reference_end_ _reference_start_John 21:24_reference_end_ ACT 6:1, 2, 7; 9:1, 10, 19, 25, 26 (2 occurrences), 38; 11:26, 29; 13:52; 14:20, 22, 28; 15:10; 16:1; 18:23, 27; 19:1 (of John), 9, 30; 20:1, 30; 21:4, 16 (2 occurrences) _reference_start_Acts 6:1_reference_end_ _reference_start_Acts 6:2_reference_end_ _reference_start_Acts 6:7_reference_end_ _reference_start_Acts 9:1_reference_end_ _reference_start_Acts 9:10_reference_end_ _reference_start_Acts 9:19_reference_end_ _reference_start_Acts 9:25_reference_end_ _reference_start_Acts 9:26_reference_end_ _reference_start_Acts 9:38_reference_end_ _reference_start_Acts 11:26_reference_end_ _reference_start_Acts 11:29_reference_end_ _reference_start_Acts 13:52_reference_end_ _reference_start_Acts 14:20_reference_end_ _reference_start_Acts 14:22_reference_end_ _reference_start_Acts 14:28_reference_end_ _reference_start_Acts 15:10_reference_end_ _reference_start_Acts 16:1_reference_end_ _reference_start_Acts 18:23_reference_end_ _reference_start_Acts 18:27_reference_end_ _reference_start_Acts 19:1_reference_end_ _reference_start_Acts 19:9_reference_end_ _reference_start_Acts 19:30_reference_end_ _reference_start_Acts 20:1_reference_end_ _reference_start_Acts 20:30_reference_end_ _reference_start_Acts 21:4_reference_end_ _reference_start_Acts 21:16_reference_end_ \gtrm maqjteuo \trnl mathæteuo _reference_start_Matthew 27:57_reference_end_ \gtrm maqjtria \trnl mathætria _reference_start_Acts 9:36_reference_end_ \en2 2. To train someone as a disciple \gtrm maqjteuo \trnl mathæteuo _reference_start_Matthew 13:52_reference_end_ _reference_start_Matthew 28:19_reference_end_ _reference_start_Acts 14:21_reference_end_ l&/DISCIPLEdisciple\see (see also BROTHER, HOLY) \o1 1. A committed follower or pupil \o1 2. To train someone as a disciple \gtrm maqjtjv \trnl mathætæs \xref [L&N 36.38] \def follower \xref [L&N 27.16] \def pupil \gtrm maqjteuo \trnl mathæteuo \xref [L&N 36.31] \def follow \xref [L&N 36.37] \def make followers \gtrm maqjtria \trnl mathætria \xref [L&N 35.41] \def woman disciple \en2 1. A committed follower or pupil \gtrm maqjtjv \trnl mathætæs MAT 5:1; 8:21, 23; 9:10, 11, 14 (of John) (2 occurrences), 19, 37; 10:1, 24, 25, 42; 11:1, 2 (of John); 12:1, 2, 49; 13:10, 36; 14:12 (of John), 15, 19 (2 occurrences), 22, 26; 15:2, 12, 23, 32, 33, 36 (2 occurrences); 16:5, 13, 20, 21, 24; 17:6, 10, 13, 16, 19; 18:1; 19:10, 13, 23, 25; 20:17; 21:1, 6, 20; 22:16 (of the Pharisees); ?tfXJ<. xj\N@2$|n`RD6( ^)  ])  \)  [)" Z)! Y) X) W) V) U) T) S) R) Q)- P)) O)# N) M) L) K)" J) I) H) G) F) E) D( C( B( A( @(@ ?(8 >(- =(( <($ ;(# :( 9( 8( 7( 6( 5( 4( 3( 2( 1( 0( /( .( -( ,( +( *( )( (( '( &( %( $( #( "( !( ( ?tfXJ<. xj\N@2$|n`RD6( + + + + + + + + + +% +# *- *' * *- *' *% * * * * * *! * * *  *  *  *  * 6 * + ~* ( }*  |*  {*  z* y* x* w* v* u*( t* s* r* q* p*! o* n) m) l) k) j) i) h)  g) + f)  e)  d) . c)  b)  a) `) _)  ?tfXJ<. xj\N@2$|n`RD6( \+ [+ Z+ Y+ X+ W+ V+ U+ T+ S+ R+ Q+ P+ O+ N+ M+ L+ K+ J+ I+ H+ G+& F+ E+ D+ C+ B+ A+ @+ ?+ >+ =+ <+ ;+ :+ # 9+  8+  7+  6+  5+  4+ 6 3+  2+ 1+  0+  /+  .+  -+  ,+ ++ *+B )+= (+< '+ &+ %+ $+ #+ "+ !+! + + + ?tfXJ<. xj\N@2$|n`RD6( , , ,  , *B , , , , , , , *4 * *  * ) )5 )+ )  ) ( () ( ( ( ( (9 (/ ~( }( |( {, z( y( 4 x, $ w(9 v, u, t, s, r, q, p, o, n, m, l, k, j, i, h, 4 g,  f,  e, & d,  c,  b,  a, `,  _, ^, ],[L&N 11.31] \def old man \gtrm presbutiv, idov \trnl presbutis, idos \xref [L&N 9.37] \def old woman \en2 1. Elders as a distinct group of Jewish leaders \gtrm presbuterov, a, on \trnl presbuteros, a, on _reference_start_Matthew 16:21_reference_end_ _reference_start_Matthew 21:23_reference_end_ _reference_start_Matthew 26:3_reference_end_ _reference_start_Matthew 26:47_reference_end_ _reference_start_Matthew 26:57_reference_end_ _reference_start_Matthew 27:1_reference_end_ _reference_start_Matthew 27:3_reference_end_ _reference_start_Matthew 27:12_reference_end_ _reference_start_Matthew 27:20_reference_end_ _reference_start_Matthew 27:41_reference_end_ _reference_start_Matthew 28:12_reference_end_ _reference_start_Mark 8:31_reference_end_ _reference_start_Mark 11:27_reference_end_ _reference_start_Mark 14:43_reference_end_ _reference_start_Mark 14:53_reference_end_ _reference_start_Mark 15:1_reference_end_ _reference_start_Luke 7:3_reference_end_ _reference_start_Luke 9:22_reference_end_ _reference_start_Luke 20:1_reference_end_ _reference_start_Luke 22:52_reference_end_ _reference_start_Acts 4:5_reference_end_ _reference_start_Acts 4:8_reference_end_ _reference_start_Acts 4:23_reference_end_ _reference_start_Acts 6:12_reference_end_ _reference_start_Acts 23:14_reference_end_ _reference_start_Acts 24:1_reference_end_ _reference_start_Acts 25:15_reference_end_ \gtrm presbuterion, ou \trnl presbuterion, ou _reference_start_Luke 22:66_reference_end_ _reference_start_Acts 22:5_reference_end_ \en2 2. Elders as leaders of the Christian church \gtrm presbuterov, a, on \trnl presbuteros, a, on _reference_start_Acts 11:30_reference_end_ _reference_start_Acts 14:23_reference_end_ _reference_start_Acts 15:2_reference_end_ _reference_start_Acts 15:4_reference_end_ _reference_start_Acts 15:6_reference_end_ _reference_start_Acts 15:22_reference_end_ _reference_start_Acts 15:23_reference_end_ _reference_start_Acts 16:4_reference_end_ _reference_start_Acts 20:17_reference_end_ _reference_start_Acts 21:18_reference_end_ _reference_start_1 Timothy 5:17_reference_end_ _reference_start_1 Timothy 5:19_reference_end_ _reference_start_Titus 1:5_reference_end_ _reference_start_James 5:14_reference_end_ 1PE 5:1 (2 occurrences), 5 (alternate sense 4.) _reference_start_1 Peter 5:1_reference_end_ _reference_start_1 Peter 5:5_reference_end_ _reference_start_2 John 1:1_reference_end_ _reference_start_3 John 1:1_reference_end_ \gtrm presbuterion, ou \trnl presbuterion, ou _reference_start_1 Timothy 4:14_reference_end_ \en2 3. Elders amongst God's people in heaven \gtrm presbuterov, a, on \trnl presbuteros, a, on _reference_start_Revelation 4:4_reference_end_ _reference_start_Revelation 4:10_reference_end_ _reference_start_Revelation 5:5_reference_end_ _reference_start_Revelation 5:6_reference_end_ _reference_start_Revelation 5:8_reference_end_ _reference_start_Revelation 5:11_reference_end_ _reference_start_Revelation 5:14_reference_end_ _reference_start_Revelation 7:11_reference_end_ _reference_start_Revelation 7:13_reference_end_ _reference_start_Revelation 11:16_reference_end_ _reference_start_Revelation 14:3_reference_end_ _reference_start_Revelation 19:4_reference_end_ \en2 4. Elders as ancestors \gtrm presbuterov, a, on \trnl presbuteros, a, on _reference_start_Matthew 15:2_reference_end_ _reference_start_Mark 7:3_reference_end_ _reference_start_Mark 7:5_reference_end_ \en2 5. People who are elderly \gtrm presbuterov, a, on \trnl presbuteros, a, on _reference_start_Acts 2:17_reference_end_ _reference_start_1 Timothy 5:1_reference_end_ _reference_start_1 Timothy 5:2_reference_end_ _reference_start_Hebrews 11:2_reference_end_ \gtrm presbutjv, ou \trnl presbutæs, ou _reference_start_Luke 1:18_reference_end_ _reference_start_Titus 2:2_reference_end_ _reference_start_Philemon 1:9_reference_end_ \gtrm presbutiv, idov \trnl presbutis, idos _reference_start_Titus 2:3_reference_end_ \en2 6. Comparative age \gtrm presbuterov, a, on \trnl presbuteros, a, on _reference_start_Luke 15:25_reference_end_ _reference_start_John 8:9_reference_end_ ooy'WELDERelder\o1 1. Elders as a distinct group of Jewish leaders \o1 2. Elders as leaders of the Christian church \o1 3. Elders amongst God's people in heaven \o1 4. Elders as ancestors \o1 5. People who are elderly \o1 6. Comparative age \gtrm presbuterov, a, on \trnl presbuteros, a, on \xref [L&N 67.102] \def older \xref [L&N 67.27] \def of ancient times \gtrm presbuterov, ou \trnl presbuteros, ou \xref [L&N 9.31] \def old man \xref [L&N 53.77] \def elder \gtrm presbuterion, ou \trnl presbuterion, ou \xref [L&N 11.83] \def high council of the Jews \xref [L&N 11.84] \def group of elders \gtrm presbutjv, ou \trnl presbutæs, ou \xref  ?tfXJ<. xj\N@2$|n`RD6( Z+  Y+  X+D W+6 V+/ U+( T+ S+' R+ Q+$ P+ O+$ N+ M+ L* K* J*  I)  H)  G(. F( E( D+ C* B8 A9 @8 ?* >:  =6 <6 ;, :) 9) 8( 7B 6B 5B  4B 3B 2B 1B 0B /B .B -B ,B +6 *@ )? (< '< &; %8 $6 #6 ", !, , , , , ,people \gtrm aiwniov \trnl aiõnios \xref [L&N 67.96] \def eternal \xref [L&N 67.133] \def since all time \en2 1. Eternal \en3 a. Eternal life \gtrm aiwniov \trnl aiõnios _reference_start_Matthew 19:16_reference_end_ _reference_start_Matthew 19:29_reference_end_ _reference_start_Matthew 25:46_reference_end_ _reference_start_Mark 10:17_reference_end_ _reference_start_Mark 10:30_reference_end_ _reference_start_Luke 10:25_reference_end_ _reference_start_Luke 18:18_reference_end_ _reference_start_Luke 18:30_reference_end_ _reference_start_John 3:15_reference_end_ _reference_start_John 3:16_reference_end_ _reference_start_John 3:36_reference_end_ _reference_start_John 4:14_reference_end_ _reference_start_John 4:36_reference_end_ _reference_start_John 5:24_reference_end_ _reference_start_John 5:39_reference_end_ _reference_start_John 6:27_reference_end_ _reference_start_John 6:40_reference_end_ _reference_start_John 6:47_reference_end_ _reference_start_John 6:54_reference_end_ _reference_start_John 6:68_reference_end_ _reference_start_John 10:28_reference_end_ _reference_start_John 12:25_reference_end_ _reference_start_John 12:50_reference_end_ _reference_start_John 17:2_reference_end_ _reference_start_John 17:3_reference_end_ _reference_start_Acts 13:46_reference_end_ _reference_start_Acts 13:48_reference_end_ _reference_start_Romans 2:7_reference_end_ _reference_start_Romans 5:21_reference_end_ _reference_start_Romans 6:22_reference_end_ _reference_start_Romans 6:23_reference_end_ _reference_start_Galatians 6:8_reference_end_ _reference_start_1 Timothy 1:16_reference_end_ _reference_start_1 Timothy 6:12_reference_end_ _reference_start_Titus 1:2_reference_end_ _reference_start_Titus 3:7_reference_end_ _reference_start_1 John 1:2_reference_end_ _reference_start_1 John 2:25_reference_end_ _reference_start_1 John 3:15_reference_end_ _reference_start_1 John 5:11_reference_end_ _reference_start_1 John 5:13_reference_end_ _reference_start_1 John 5:20_reference_end_ _reference_start_Jude 1:21_reference_end_ \en3 b. Eternal fire \gtrm aiwniov \trnl aiõnios _reference_start_Matthew 18:8_reference_end_ _reference_start_Matthew 25:41_reference_end_ _reference_start_Jude 1:7_reference_end_ \en3 c. Eternal judgment in general \gtrm aidiov \trnl aidios _reference_start_Jude 1:6_reference_end_ \gtrm aiwniov \trnl aiõnios _reference_start_Matthew 25:46_reference_end_ _reference_start_2 Thessalonians 1:9_reference_end_ _reference_start_Hebrews 6:2_reference_end_ \en3 d. Other eternal things \gtrm aidiov \trnl aidios _reference_start_Romans 1:20_reference_end_ \gtrm aiwn \trnl aiõn _reference_start_Ephesians 3:11_reference_end_ _reference_start_1 Timothy 1:17_reference_end_ \gtrm aiwniov \trnl aiõnios _reference_start_Mark 3:29_reference_end_ _reference_start_Luke 16:9_reference_end_ _reference_start_Romans 16:26_reference_end_ _reference_start_2 Corinthians 4:17_reference_end_ _reference_start_2 Corinthians 4:18_reference_end_ _reference_start_2 Corinthians 5:1_reference_end_ _reference_start_2 Thessalonians 2:16_reference_end_ _reference_start_1 Timothy 6:16_reference_end_ _reference_start_2 Timothy 2:10_reference_end_ _reference_start_Hebrews 5:9_reference_end_ _reference_start_Hebrews 9:12_reference_end_ _reference_start_Hebrews 9:14_reference_end_ _reference_start_Hebrews 9:15_reference_end_ _reference_start_Hebrews 13:20_reference_end_ _reference_start_1 Peter 5:10_reference_end_ _reference_start_2 Peter 1:11_reference_end_ _reference_start_Revelation 14:6_reference_end_ \en2 2. Eternally \en3 a. Forever \gtrm aiwn \trnl aiõn _reference_start_Matthew 21:19_reference_end_ _reference_start_Mark 11:14_reference_end_ _reference_start_Luke 1:33_reference_end_ _reference_start_Luke 1:55_reference_end_ JHN 6:51, 58; 8:35 (2 occurrences); 12:34; 14:16 _reference_start_John 6:51_reference_end_ _reference_start_John 6:58_reference_end_ _reference_start_John 8:35_reference_end_ _reference_start_John 12:34_reference_end_ _reference_start_John 14:16_reference_end_ _reference_start_Romans 1:25_reference_end_ _reference_start_Romans 9:5_reference_end_ _reference_start_Romans 11:36_reference_end_ _reference_start_Romans 16:27_reference_end_ _reference_start_1 Corinthians 8:13_reference_end_ _reference_start_2 Corinthians 9:9_reference_end_ _reference_start_Hebrews 5:6_reference_end_ _reference_start_Hebrews 6:20_reference_end_ _reference_start_Hebrews 7:17_reference_end_ _reference_start_Hebrews 7:21_reference_end_ _reference_start_Hebrews 7:24_reference_end_ _reference_start_Hebrews 13:8_reference_end_ _reference_start_1 Peter 1:23_reference_end_ _reference_start_1 Peter 1:25_reference_end_ _reference_start_2 Peter 3:18_reference_end_ _reference_start_1 John 2:17_reference_end_ _reference_start_2 John 1:2_reference_end_ _reference_start_Jude 1:13_reference_end_ _reference_start_Jude 1:25_reference_end_ \gtrm aiwniov \trnl aiõnios _reference_start_Philemon 1:15_reference_end_ \en3 b. Forever and ever \gtrm aiwn \trnl aiõn _reference_start_Galatians 1:5_reference_end_ _reference_start_Philippians 4:20_reference_end_ _reference_start_1 Timothy 1:17_reference_end_ _reference_start_2 Timothy 4:18_reference_end_ _reference_start_Hebrews 1:8_reference_end_ _reference_start_Hebrews 13:21_reference_end_ _reference_start_1 Peter 4:11_reference_end_ _reference_start_1 Peter 5:11_reference_end_ _reference_start_Revelation 1:6_reference_end_ _reference_start_Revelation 4:9_reference_end_ _reference_start_Revelation 4:10_reference_end_ _reference_start_Revelation 5:13_reference_end_ _reference_start_Revelation 7:12_reference_end_ _reference_start_Revelation 10:6_reference_end_ _reference_start_Revelation 11:15_reference_end_ _reference_start_Revelation 14:11_reference_end_ _reference_start_Revelation 15:7_reference_end_ _reference_start_Revelation 19:3_reference_end_ _reference_start_Revelation 20:10_reference_end_ _reference_start_Revelation 22:5_reference_end_ \en3 c. For ever more \gtrm aiwn \trnl aiõn _reference_start_2 Corinthians 11:31_reference_end_ _reference_start_Hebrews 7:28_reference_end_ _reference_start_Revelation 1:18_reference_end_ \en3 d. For all ages, ages to come \gtrm aiwn \trnl aiõn _reference_start_Ephesians 2:7_reference_end_ _reference_start_Ephesians 3:21_reference_end_ \en2 3. Forever with a negative \gtrm aiwn \trnl aiõn _reference_start_Mark 3:29_reference_end_ _reference_start_John 4:14_reference_end_ _reference_start_John 8:51_reference_end_ _reference_start_John 8:52_reference_end_ _reference_start_John 10:28_reference_end_ _reference_start_John 11:26_reference_end_ _reference_start_John 13:8_reference_end_ \en2 4. From eternity past, before the beginning of the world \gtrm aiwn \trnl aiõn _reference_start_Luke 1:70_reference_end_ _reference_start_John 9:32_reference_end_ _reference_start_Acts 3:21_reference_end_ _reference_start_Acts 15:18_reference_end_ _reference_start_1 Corinthians 2:7_reference_end_ _reference_start_Ephesians 3:9_reference_end_ \gtrm aiwniov \trnl aiõnios _reference_start_Romans 16:25_reference_end_ _reference_start_2 Timothy 1:9_reference_end_ _reference_start_Titus 1:2_reference_end_ 33)(-- ETERNAL, FOREVEReternal, forever\o1 1. Eternal \o2 a. Eternal life \o2 b. Eternal fire \o2 c. Eternal judgment in general \o2 d. Other eternal things \o1 2. Eternally \o2 a. Forever \o2 b. Forever and ever \o2 c. For ever more \o2 d. For all ages, ages to come \o1 3. Forever with a negative \o1 4. From eternity past, before the beginning of the world \gtrm aidiov \trnl aidios \xref [L&N 67.96] \def eternal, everlasting \gtrm aiwn \trnl aiõn \xref [L&N 67.87] \def eternally \xref [L&N 67.95] \def forever \xref [L&N 67.133] \def since all time \xref [L&N 67.25] \def long ago \xref (others) \def era, universe, world system, supernatural power, the devil, non-religious  ?tfXJ<. xj\N@2$|n`RD6( / . - - $ -  - + + " +# +: +3 *7 *! )  ( B = < :  :  :  : : 7 6 5 / ~/ }/ |- {* z) y6 x1 w- v: u5 t(. sA rA q() p( oA n> m> l> k> j> i> h8 g8 f6 e6 d0 c- b- a- `- _, 0 ^, . ]+ \+ [+ 2 ?tfXJ<. xj\N@2$|n`RD6( X, W*  V*  U* ' T)  S( - R(  Q( P8 O7 N- M1 L. K, J, I+ H*F G+  F+  E+  D+4 C+3 B+ A) @1 ?1 >B =: </  ;B :B 9B 8B 7B 6B  5B  4B 3B 2B 1B 0B /< .< -:  ,: +7 *6 )2 (0 '9 &A %A $? #> "= !< < :  : : : : :] \def evil spirit \xref (others) \def inner being, ghost, Holy Spirit, wind, breath, life/death, etc. \gtrm ponjrov \trnl ponæros \xref [L&N 88.110] \def wicked (also worthless, sick, etc.) \gtrm pneuma ponjrov \trnl pneuma ponæros \xref [L&N 12.38] \def evil spirit with “evil” emphasized \gtrm akaqartov \trnl akathartos \xref [L&N 53.39] \def defiled religiously \gtrm pneuma akaqarton \trnl pneuma akatharton \xref [L&N 12.39] \def unclean spirit, foul spirit \gtrm daimonizomai \trnl daimonizomai \xref [L&N 12.41] \def demonized \gtrm daimonion \trnl daimonion \xref [L&N 12.37] \def demon \xref [L&N 12.26] \def god \gtrm daimoniwdjv \trnl daimoniõdæs \xref [L&N 12.40] \def demonic \gtrm daimwn \trnl daimõn \xref [L&N 12.37] \def demon \en2 1. Spirits under Satan's domain \en3 a. Implicitly evil spirit \gtrm pneuma \trnl pneuma _reference_start_Matthew 8:16_reference_end_ _reference_start_Matthew 12:28_reference_end_ _reference_start_Matthew 12:45_reference_end_ _reference_start_Mark 9:20_reference_end_ _reference_start_Luke 9:39_reference_end_ _reference_start_Luke 10:20_reference_end_ _reference_start_Luke 11:26_reference_end_ _reference_start_Acts 16:18_reference_end_ _reference_start_Acts 23:8_reference_end_ _reference_start_Acts 23:9_reference_end_ \en3 b. Explicitly evil spirit \gtrm pneuma ponjrov \trnl pneuma ponæros _reference_start_Luke 7:21_reference_end_ _reference_start_Luke 8:2_reference_end_ _reference_start_Acts 19:12_reference_end_ _reference_start_Acts 19:13_reference_end_ _reference_start_Acts 19:15_reference_end_ _reference_start_Acts 19:16_reference_end_ \en3 c. Unclean spirit (synonym of evil spirit) \gtrm pneuma akaqarton \trnl pneuma akatharton _reference_start_Matthew 10:1_reference_end_ _reference_start_Matthew 12:43_reference_end_ _reference_start_Mark 1:23_reference_end_ _reference_start_Mark 1:26_reference_end_ _reference_start_Mark 1:27_reference_end_ _reference_start_Mark 3:11_reference_end_ _reference_start_Mark 3:30_reference_end_ _reference_start_Mark 5:2_reference_end_ _reference_start_Mark 5:8_reference_end_ _reference_start_Mark 5:13_reference_end_ _reference_start_Mark 6:7_reference_end_ _reference_start_Mark 7:25_reference_end_ _reference_start_Mark 9:25_reference_end_ LUK 4:33 (see also SATAN), 36; 6:18; 8:29; 9:42; 11:24 _reference_start_Luke 4:33_reference_end_ _reference_start_Luke 4:36_reference_end_ _reference_start_Luke 6:18_reference_end_ _reference_start_Luke 8:29_reference_end_ _reference_start_Luke 9:42_reference_end_ _reference_start_Luke 11:24_reference_end_ _reference_start_Acts 5:16_reference_end_ _reference_start_Acts 8:7_reference_end_ _reference_start_Revelation 18:2_reference_end_ \en3 d. a particular kind of evil spirit \gtrm pneuma \trnl pneuma _reference_start_Mark 9:17_reference_end_ _reference_start_Luke 13:11_reference_end_ _reference_start_Mark 9:25_reference_end_ _reference_start_Acts 16:16_reference_end_ _reference_start_Romans 8:15_reference_end_ _reference_start_1 Corinthians 2:12_reference_end_ _reference_start_2 Corinthians 11:4_reference_end_ _reference_start_Ephesians 2:2_reference_end_ _reference_start_2 Thessalonians 2:2_reference_end_ _reference_start_2 Timothy 1:7_reference_end_ _reference_start_1 John 4:1_reference_end_ _reference_start_1 John 4:6_reference_end_ _reference_start_Revelation 16:14_reference_end_ \en2 2. Demons \en3 a. Demon \gtrm daimonion \trnl daimonion MAT 7:22; 8:31; 9:33, 34 (2 occurrences); 10:8; 11:18; 12:24 (2 occurrences), 27, 28; 17:18 _reference_start_Matthew 7:22_reference_end_ _reference_start_Matthew 8:31_reference_end_ _reference_start_Matthew 9:33_reference_end_ _reference_start_Matthew 9:34_reference_end_ _reference_start_Matthew 10:8_reference_end_ _reference_start_Matthew 11:18_reference_end_ _reference_start_Matthew 12:24_reference_end_ _reference_start_Matthew 12:27_reference_end_ _reference_start_Matthew 12:28_reference_end_ _reference_start_Matthew 17:18_reference_end_ MRK 1:34 (2 occurrences), 39; 3:15, 22 (2 occurrences); 6:13; 7:26, 29, 30; 9:38; 16:9, 17 _reference_start_Mark 1:34_reference_end_ _reference_start_Mark 1:39_reference_end_ _reference_start_Mark 3:15_reference_end_ _reference_start_Mark 3:22_reference_end_ _reference_start_Mark 6:13_reference_end_ _reference_start_Mark 7:26_reference_end_ _reference_start_Mark 7:29_reference_end_ _reference_start_Mark 7:30_reference_end_ _reference_start_Mark 9:38_reference_end_ _reference_start_Mark 16:9_reference_end_ _reference_start_Mark 16:17_reference_end_ LUK 4:33, 35, 41; 7:33; 8:2, 27, 30, 33, 35, 38; 9:1, 42, 49; 10:17; 11:14 (2 occurrences), 15 (2 occurrences), 18, 19, 20; 13:32 _reference_start_Luke 4:33_reference_end_ _reference_start_Luke 4:35_reference_end_ _reference_start_Luke 4:41_reference_end_ _reference_start_Luke 7:33_reference_end_ _reference_start_Luke 8:2_reference_end_ _reference_start_Luke 8:27_reference_end_ _reference_start_Luke 8:30_reference_end_ _reference_start_Luke 8:33_reference_end_ _reference_start_Luke 8:35_reference_end_ _reference_start_Luke 8:38_reference_end_ _reference_start_Luke 9:1_reference_end_ _reference_start_Luke 9:42_reference_end_ _reference_start_Luke 9:49_reference_end_ _reference_start_Luke 10:17_reference_end_ _reference_start_Luke 11:14_reference_end_ _reference_start_Luke 11:15_reference_end_ _reference_start_Luke 11:18_reference_end_ _reference_start_Luke 11:19_reference_end_ _reference_start_Luke 11:20_reference_end_ _reference_start_Luke 13:32_reference_end_ _reference_start_John 7:20_reference_end_ _reference_start_John 8:48_reference_end_ _reference_start_John 8:49_reference_end_ _reference_start_John 8:52_reference_end_ _reference_start_John 10:20_reference_end_ _reference_start_John 10:21_reference_end_ 1CO 10:20 (2 occurrences), 21 (2 occurrences) _reference_start_1 Corinthians 10:20_reference_end_ _reference_start_1 Corinthians 10:21_reference_end_ _reference_start_1 Timothy 4:1_reference_end_ _reference_start_James 2:19_reference_end_ _reference_start_Revelation 9:20_reference_end_ \gtrm daimwn \trnl daimõn _reference_start_Mark 5:12_reference_end_ _reference_start_Luke 8:29_reference_end_ _reference_start_Revelation 16:14_reference_end_ _reference_start_Revelation 18:2_reference_end_ \en3 b. Demonized, affected in some way by a demon \gtrm daimonizomai \trnl daimonizomai _reference_start_Matthew 4:24_reference_end_ _reference_start_Matthew 8:16_reference_end_ _reference_start_Matthew 8:28_reference_end_ _reference_start_Matthew 8:33_reference_end_ _reference_start_Matthew 9:32_reference_end_ _reference_start_Matthew 12:22_reference_end_ _reference_start_Matthew 15:22_reference_end_ _reference_start_Mark 1:32_reference_end_ _reference_start_Mark 5:15_reference_end_ _reference_start_Mark 5:16_reference_end_ _reference_start_Mark 5:18_reference_end_ _reference_start_Luke 8:36_reference_end_ _reference_start_John 10:21_reference_end_ \en3 c. demonic, acting as immorally as a demon \gtrm daimoniwdjv \trnl daimoniõdæs _reference_start_James 3:15_reference_end_ \en3 d. a god, a supernatural being \gtrm daimonion \trnl daimonion _reference_start_Acts 17:18_reference_end_ e| e^/QQ-FELLOWSHIP, PARTICIPATION, SHARINGfellowship, participation, sharing\o1 1. Fellowship \o2 a. Close interrelat#.-FAVORfavor\see (see GRACE)o-EEgFAST, ABSTINENCE FROM EATINGfast, abstinence from eating\o1 1. Self imposed hunger \o1 2. Inv6,%%7FALSE CHRISTfalse christ\see (see ANTICHRIST)%+1FAITHfaith\see (see BELIEVE)$*+EXPECTexpect\see (see HOPE)X)##}EVIL SPIRITevil spirit\see (see also SATAN, SPIRIT) \o1 1. Spirits under Satan's domain \o2 a. Implicitly evil spirit \o2 b. Explicitly evil spirit \o2 c. Unclean spirit (synonym of evil spirit) \o2 d. a particular kind of evil spirit \o1 2. Demons \o2 a. Demon \o2 b. Demonized, affected in some way by a demon \o2 c. demonic, acting as immorally as a demon \o2 d. a god, a supernatural being \gtrm pneuma \trnl pneuma \xref [L&N 12.33] \def spirit \xref [L&N 12.37 ?tfXJ<. xj\N@2$|n`RD6( ) ) & ) ) ) ) ) ) )' )" ( (  (  (  (  (  ( " ( ! ( ( B > > 7 5 ~1 }/  |. {- z, y)  x* w)  vB u, t, s*  r* * q* p* o*$ n*! m)  l) k) j) i) h) g) f) e) d) c) b( + a(  `, _, ^, ], \* [* Z, Y, ?tfXJ<. xj\N@2$|n`RD6( V) U) T(  S(  R( Q( P( O( N, M*% L)  K( J, I; H+  G*$ F) E) D) C) B( A(  @( ?(! >( =( <( ;B :B 9* 8) 7B  6; 56 4.  3.  2+  1+  0+4 /+1 .+0 -+ ,* +*  **  )*  (*  '*  &*  %* 1 $* * #*  "*& !*# *! * * * *! *) *# *! )oluntary hunger \o1 3. A specific fast, (referring to festival of atonement) \gtrm njsteia \trnl næsteia \xref [L&N 53.65] \def fasting \xref [L&N 23.31] \def hunger \xref [L&N 51.11] \def festival of atonement \gtrm njsteuw \trnl næsteuõ \xref [L&N 53.65] \def fast \gtrm njstiv \trnl næstis \xref [L&N 23.31] \def hunger \gtrm asitov \trnl asitos \xref [L&N 23.32] \def without food \en2 1. Self imposed hunger \gtrm njsteia \trnl næsteia MAT 17:21 (not in RSV) _reference_start_Matthew 17:21_reference_end_ MRK 9:29 (not in RSV) _reference_start_Mark 9:29_reference_end_ _reference_start_Luke 2:37_reference_end_ _reference_start_Acts 14:23_reference_end_ \gtrm njsteuw \trnl næsteuõ MAT 4:2; 6:16 (2 occurrences), 17, 18; 9:14 (2 occurrences), 15 _reference_start_Matthew 4:2_reference_end_ _reference_start_Matthew 6:16_reference_end_ _reference_start_Matthew 6:17_reference_end_ _reference_start_Matthew 6:18_reference_end_ _reference_start_Matthew 9:14_reference_end_ _reference_start_Matthew 9:15_reference_end_ MRK 2:18 (3 occurrences), 19 (2 occurrences), 20 _reference_start_Mark 2:18_reference_end_ _reference_start_Mark 2:19_reference_end_ _reference_start_Mark 2:20_reference_end_ _reference_start_Luke 5:33_reference_end_ _reference_start_Luke 5:34_reference_end_ _reference_start_Luke 5:35_reference_end_ _reference_start_Luke 18:12_reference_end_ _reference_start_Acts 13:2_reference_end_ _reference_start_Acts 13:3_reference_end_ \gtrm asitov \trnl asitos _reference_start_Acts 27:21_reference_end_ \en2 2. Involuntary hunger \gtrm njsteia \trnl næsteia _reference_start_2 Corinthians 6:5_reference_end_ _reference_start_2 Corinthians 11:27_reference_end_ \gtrm njstiv \trnl næstis _reference_start_Matthew 15:32_reference_end_ _reference_start_Mark 8:3_reference_end_ \en2 3. A specific fast, (referring to festival of atonement) \gtrm njsteia \trnl næsteia _reference_start_Acts 27:9_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( B 2 .  -  = < : ! 9 / / .  .  * ( 0 - B 1 ? 6 .  .  : ~: }.  |. {< z: y- x2 w:  v/ u- t2 s/ r9 q2 p2 o/ n/ m.  l2 k/  j> i> h0 g,* f> e> d. c, b) a( `/  _/ ^, ],  \,  [* Z*# Y*" X*! W)ionship with God or with Jesus Christ \o2 b. Close interrelationship with fellow-believers in Jesus Christ \o2 c. Fellowship among believers because each has the Holy Spirit \o2 d. Sharing an experience with someone \o2 e. Sharing material things with others \o1 2. To Have something in common \o2 a. Being in a common situation \o2 b. Doing the same kind of thing \o2 c. Having a common association with someone or something else \o2 d. Contributing to a common cause \o1 3. A Partner, a fellow participant \o1 4. Jointly possessed, shared \o1 5. Ready and willing to share, generous \o1 6. A portion of \o1 7. To belong to \o1 8. The Greek word “echõ”, “to have” expressing the idea of fellowship \gtrm koinwnew \trnl koinõneõ \xref [L&N 57.98] \def share (verb) \xref [L&N 42.16] \def do together with \xref [L&N 9.15] \def be a person (idiom) \gtrm koinwnia, av \trnl koinõnia, as \xref [L&N 34.5] \def fellowship \xref [L&N 57.98] \def share \xref [L&N 57.101] \def willing contribution \gtrm koinwnikov \trnl koinõnikos \xref [L&N 57.100] \def ready sharing (adjective) \gtrm koinwnov \trnl koinõnos \xref [L&N 34.6] \def partner (noun) \gtrm sunkoinwnew \trnl sunkoinõneõ \xref [L&N 34.4] \def associate with (verb) \gtrm sunkoinwnov \trnl sunkoinõnos \xref [L&N 34.6] \def partner (noun) \xref [L&N 57.10] \def sharer \gtrm koinov \trnl koinos \xref [L&N 57.9] \def mutual (adjective) \xref [L&N 89.118] \def in common \xref [L&N 57.99] \def share mutually (idiom) \xref [L&N 65.15] \def worthless \xref [L&N 53.39] \def defiled \gtrm metocj \trnl metochæ \xref [L&N 34.7] \def partnership \gtrm metocov \trnl metochos \xref [L&N 34.8] \def companion \gtrm metecw \trnl metechõ \xref [L&N 57.6] \def share in \xref [L&N 23.2] \def eat, drink \xref [L&N 34.31] \def belong to \xref [L&N 34.32] \def belong to a religious group \gtrm ecw \trnl echõ \xref [L&N 57.1] \def possession \xref [L&N 18.6] \def hold on to \xref [L&N 90.65] \def to experience \gtrm ecw (en epignwsei) \trnl echõ (en epignõsei) \xref [L&N 31.28] \def to acknowledge for who he is \gtrm ecw (koinos) \trnl echõ (koinos) \xref [L&N 57.99] \def share mutually \xref (others) \def hold a view, wear, be able to, be \en2 1. Fellowship \en3 a. Close interrelationship with God or with Jesus Christ \gtrm koinwnia, av \trnl koinõnia, as _reference_start_1 Corinthians 1:9_reference_end_ _reference_start_1 John 1:3_reference_end_ _reference_start_1 John 1:6_reference_end_ \en3 b. Close interrelationship with fellow-believers in Jesus Christ \gtrm koinwnia, av \trnl koinõnia, as _reference_start_Acts 2:42_reference_end_ _reference_start_Galatians 2:9_reference_end_ _reference_start_1 John 1:3_reference_end_ _reference_start_1 John 1:7_reference_end_ \en3 c. Fellowship among believers because each has the Holy Spirit \gtrm koinwnia, av \trnl koinõnia, as 2CO 13:14 (verse 13 in Greek) _reference_start_2 Corinthians 13:14_reference_end_ _reference_start_Philippians 2:1_reference_end_ \en3 d. Sharing an experience with someone \gtrm koinwnia, av \trnl koinõnia, as 1CO 10:16 (2 occurrences) _reference_start_1 Corinthians 10:16_reference_end_ _reference_start_2 Corinthians 6:14_reference_end_ _reference_start_2 Corinthians 8:4_reference_end_ _reference_start_Philippians 1:5_reference_end_ _reference_start_Philippians 3:10_reference_end_ _reference_start_Philemon 1:6_reference_end_ \gtrm metocj \trnl metochæ _reference_start_2 Corinthians 6:14_reference_end_ \en3 e. Sharing material things with others \gtrm koinwnew \trnl koinõneõ _reference_start_Philippians 4:15_reference_end_ \gtrm koinwnia, av \trnl koinõnia, as _reference_start_Romans 15:26_reference_end_ _reference_start_2 Corinthians 9:13_reference_end_ _reference_start_Hebrews 13:16_reference_end_ \gtrm sunkoinwnew \trnl sunkoinõneõ PHP 4:14 (ellipsis: share your things with me to alleviate my trouble) _reference_start_Philippians 4:14_reference_end_ \en2 2. To Have something in common \en3 a. Being in a common situation \gtrm koinwnew \trnl koinõneõ _reference_start_Romans 15:27_reference_end_ _reference_start_Hebrews 2:14_reference_end_ _reference_start_1 Peter 4:13_reference_end_ \gtrm metecw \trnl metechõ _reference_start_1 Corinthians 9:12_reference_end_ _reference_start_1 Corinthians 10:30_reference_end_ _reference_start_Hebrews 2:14_reference_end_ _reference_start_Hebrews 5:13_reference_end_ \en3 b. Doing the same kind of thing \gtrm metecw \trnl metechõ _reference_start_1 Corinthians 10:17_reference_end_ _reference_start_1 Corinthians 10:21_reference_end_ \en3 c. Having a common association with someone or something else \gtrm koinwnew \trnl koinõneõ _reference_start_1 Timothy 5:22_reference_end_ _reference_start_2 John 1:11_reference_end_ \gtrm sunkoinwnew \trnl sunkoinõneõ _reference_start_Ephesians 5:11_reference_end_ _reference_start_Revelation 18:4_reference_end_ \en3 d. Contributing to a common cause \gtrm koinwnew \trnl koinõneõ _reference_start_Romans 12:13_reference_end_ _reference_start_Galatians 6:6_reference_end_ \en2 3. A Partner, a fellow participant \gtrm koinwnov \trnl koinõnos _reference_start_Matthew 23:30_reference_end_ _reference_start_Luke 5:10_reference_end_ _reference_start_1 Corinthians 10:18_reference_end_ _reference_start_1 Corinthians 10:20_reference_end_ _reference_start_2 Corinthians 1:7_reference_end_ _reference_start_2 Corinthians 8:23_reference_end_ _reference_start_Philemon 1:17_reference_end_ _reference_start_Hebrews 10:33_reference_end_ _reference_start_1 Peter 5:1_reference_end_ _reference_start_2 Peter 1:4_reference_end_ \gtrm sunkoinwnov \trnl sunkoinõnos _reference_start_Romans 11:17_reference_end_ _reference_start_1 Corinthians 9:23_reference_end_ _reference_start_Philippians 1:7_reference_end_ _reference_start_Revelation 1:9_reference_end_ \gtrm metocov \trnl metochos _reference_start_Luke 5:7_reference_end_ _reference_start_Hebrews 1:9_reference_end_ _reference_start_Hebrews 3:1_reference_end_ _reference_start_Hebrews 3:14_reference_end_ _reference_start_Hebrews 6:4_reference_end_ _reference_start_Hebrews 12:8_reference_end_ \en2 4. Jointly possessed, shared \gtrm koinov \trnl koinos _reference_start_Acts 4:32_reference_end_ _reference_start_Titus 1:4_reference_end_ _reference_start_Jude 1:3_reference_end_ \gtrm ecw \trnl echõ _reference_start_Acts 2:44_reference_end_ \en2 5. Ready and willing to share, generous \gtrm koinwnikov \trnl koinõnikos _reference_start_1 Timothy 6:18_reference_end_ \en2 6. A portion of \gtrm metecw \trnl metechõ _reference_start_1 Corinthians 9:10_reference_end_ \en2 7. To belong to \gtrm metecw \trnl metechõ _reference_start_Hebrews 7:13_reference_end_ \en2 8. The Greek word “echõ”, “to have” expressing the idea of fellowship \gtrm ecw \trnl echõ ROM 1:28 (have in acknowledgment) _reference_start_Romans 1:28_reference_end_ 1JN 5:12 (4 occurrences) (there is a possible ellipsis of “in acknowledgment” in the first and third occurrences) _reference_start_1 John 5:12_reference_end_ 2JN 1:9 (possible ellipsis of “in acknowledgment”) _reference_start_2 John 1:9_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( T3 S2 R2 Q1 P0 O/  N/ M. L, K)& J() I? H> G< F< E< D:  C: B6 A3 @3 ?3 >3 =3 <1 ;1 :1 90 80 7/  6- 5+ 4. 3- 2/ 1B 0B /B ..' -, ,+8 ++7 *+6 )+5 (+4 '+3 &*' %? $> #- ": !. 6 ,, A 8 , :  : : : : *. A human being, with reference to his life in this world \o2 c. The whole person, the self \o2 d. Humanity in contrast with the divine \o2 e. Human lineage, physical descent or relationship \o2 f. That which is outward or external \o1 3. Negative human propensities (human nature) \o1 4. A one-flesh unit consisting of two persons \o1 5. Material and/or worldly benefits or possessions \gtrm sarx \trnl sarx \xref [L&N 8.63] \def flesh \xref [L&N 8.4] \def body \xref [L&N 9.11] \def people \xref [L&N 9.12] \def human \xref [L&N 10.1] \def nation \xref [L&N 26.7] \def human nature \xref [L&N 58.10] \def physical nature \xref [L&N 23.90] \def life \xref [L&N 9.14] \def human being (idiom) \xref [L&N 9.15] \def be a person (idiom) \xref [L&N 88.279] \def homosexual activity (idiom) \xref [L&N 22.20] \def trouble (idiom) \xref [L&N 25.29] \def sexual desire (idiom) \gtrm sarkinov \trnl sarkinos \xref [L&N 9.13] \def of people \xref [L&N 26.8] \def human \xref [L&N 79.4] \def natural \xref [L&N 41.42] \def worldly \gtrm sarkikov \trnl sarkikos \xref [L&N 26.8] \def human \xref [L&N 79.1] \def material \xref [L&N 79.4] \def natural \xref [L&N 41.42] \def worldly \gtrm kreav \trnl kreas \xref [L&N 5.14] \def meat \en2 1. Muscle and sinew covering the bone \gtrm sarx \trnl sarx _reference_start_Luke 24:39_reference_end_ JHN 6:51 (possibly figure, synecdoche of the part: i.e. flesh is put for the whole and true humanity of Christ and/or belief in Him. See JHN 6:47 and Bullinger F.O.S. p. 643), 52, 53 (possibly figure, synecdoche of the part: i.e. flesh is put for the whole and true humanity of Christ and/or belief in Him. See JHN 6:47 and Bullinger F.O.S. p. 643), 54 (possibly figure, synecdoche of the part: i.e. flesh is put for the whole and true humanity of Christ and/or belief in Him. See JHN 6:47 and Bullinger F.O.S. p. 643), 55 (possibly figure, synecdoche of the part: i.e. flesh is put for the whole and true humanity of Christ and/or belief in Him. See JHN 6:47 and Bullinger F.O.S. p. 643), 56 (possibly figure, synecdoche of the part: i.e. flesh is put for the whole and true humanity of Christ and/or belief in Him. See JHN 6:47 and Bullinger F.O.S. p. 643) _reference_start_John 6:51_reference_end_ _reference_start_John 6:52_reference_end_ _reference_start_John 6:53_reference_end_ _reference_start_John 6:54_reference_end_ _reference_start_John 6:55_reference_end_ _reference_start_John 6:56_reference_end_ _reference_start_Acts 2:31_reference_end_ 1CO 15:39 (4 occurrences) _reference_start_1 Corinthians 15:39_reference_end_ REV 17:16; 19:18 (5 occurrences), 21 _reference_start_Revelation 17:16_reference_end_ _reference_start_Revelation 19:18_reference_end_ _reference_start_Revelation 19:21_reference_end_ \gtrm sarkinov \trnl sarkinos _reference_start_2 Corinthians 3:3_reference_end_ \gtrm kreav \trnl kreas _reference_start_Romans 14:21_reference_end_ _reference_start_1 Corinthians 8:13_reference_end_ \en2 2. The physical body of a person or animal \en3 a. In the simple material sense \gtrm sarx \trnl sarx _reference_start_John 1:14_reference_end_ _reference_start_Romans 8:3_reference_end_ _reference_start_2 Corinthians 12:7_reference_end_ _reference_start_Galatians 4:13_reference_end_ _reference_start_Galatians 4:14_reference_end_ EPH 2:11, 15 (EPH 2:14 in Greek text); 5:29 _reference_start_Ephesians 2:11_reference_end_ _reference_start_Ephesians 2:15_reference_end_ _reference_start_Ephesians 5:29_reference_end_ _reference_start_Colossians 1:22_reference_end_ _reference_start_Colossians 1:24_reference_end_ _reference_start_Colossians 2:1_reference_end_ _reference_start_Colossians 2:5_reference_end_ _reference_start_Colossians 2:13_reference_end_ _reference_start_1 Timothy 3:16_reference_end_ _reference_start_Hebrews 5:7_reference_end_ _reference_start_Hebrews 10:20_reference_end_ 1PE 3:18, 21; 4:1 (2 occurrences) _reference_start_1 Peter 3:18_reference_end_ _reference_start_1 Peter 3:21_reference_end_ _reference_start_1 Peter 4:1_reference_end_ _reference_start_1 John 4:2_reference_end_ _reference_start_2 John 1:7_reference_end_ \en3 b. A human being, with reference to his life in this world \gtrm sarx \trnl sarx _reference_start_Matthew 26:41_reference_end_ _reference_start_Mark 14:38_reference_end_ _reference_start_Acts 2:26_reference_end_ _reference_start_1 Corinthians 7:28_reference_end_ _reference_start_2 Corinthians 4:11_reference_end_ _reference_start_2 Corinthians 10:3_reference_end_ _reference_start_Galatians 2:20_reference_end_ _reference_start_Ephesians 6:5_reference_end_ _reference_start_Philippians 1:22_reference_end_ _reference_start_Philippians 1:24_reference_end_ _reference_start_Colossians 3:22_reference_end_ _reference_start_1 Peter 4:2_reference_end_ _reference_start_1 Peter 4:6_reference_end_ \en3 c. The whole person, the self \gtrm sarx \trnl sarx _reference_start_2 Corinthians 7:5_reference_end_ _reference_start_James 5:3_reference_end_ _reference_start_Galatians 2:16_reference_end_ \en3 d. Humanity in contrast with the divine \gtrm sarx \trnl sarx MAT 16:17; 24:22 (2 occurrences) _reference_start_Matthew 16:17_reference_end_ _reference_start_Matthew 24:22_reference_end_ _reference_start_Mark 13:20_reference_end_ _reference_start_Luke 3:6_reference_end_ JHN 1:13; 3:6 (2 occurrences); 6:63; 8:15; 17:2 _reference_start_John 1:13_reference_end_ _reference_start_John 3:6_reference_end_ _reference_start_John 6:63_reference_end_ _reference_start_John 8:15_reference_end_ _reference_start_John 17:2_reference_end_ _reference_start_Acts 2:17_reference_end_ _reference_start_Romans 3:20_reference_end_ _reference_start_1 Corinthians 1:26_reference_end_ _reference_start_1 Corinthians 1:29_reference_end_ _reference_start_1 Corinthians 15:50_reference_end_ 2CO 1:17; 5:16 (2 occurrences); 10:2, 3 _reference_start_2 Corinthians 1:17_reference_end_ _reference_start_2 Corinthians 5:16_reference_end_ _reference_start_2 Corinthians 10:2_reference_end_ _reference_start_2 Corinthians 10:3_reference_end_ _reference_start_Galatians 1:16_reference_end_ _reference_start_Galatians 3:3_reference_end_ _reference_start_Ephesians 6:12_reference_end_ _reference_start_Hebrews 2:14_reference_end_ _reference_start_1 Peter 1:24_reference_end_ \gtrm sarkikov \trnl sarkikos _reference_start_2 Corinthians 1:12_reference_end_ _reference_start_2 Corinthians 10:4_reference_end_ \en3 e. Human lineage, physical descent or relationship \gtrm sarx \trnl sarx _reference_start_Romans 1:3_reference_end_ _reference_start_Romans 4:1_reference_end_ _reference_start_Romans 9:3_reference_end_ _reference_start_Romans 9:5_reference_end_ _reference_start_Romans 9:8_reference_end_ _reference_start_Romans 11:14_reference_end_ _reference_start_1 Corinthians 10:18_reference_end_ _reference_start_Galatians 4:23_reference_end_ _reference_start_Galatians 4:29_reference_end_ _reference_start_Ephesians 2:11_reference_end_ _reference_start_Philemon 1:16_reference_end_ _reference_start_Hebrews 12:9_reference_end_ \gtrm sarkinov \trnl sarkinos _reference_start_Hebrews 7:16_reference_end_ \en3 f. That which is outward or external \gtrm sarx \trnl sarx _reference_start_Romans 2:28_reference_end_ _reference_start_2 Corinthians 7:1_reference_end_ _reference_start_Galatians 6:12_reference_end_ _reference_start_Galatians 6:13_reference_end_ PHP 3:3, 4 (2 occurrences) _reference_start_Philippians 3:3_reference_end_ _reference_start_Philippians 3:4_reference_end_ _reference_start_Hebrews 9:10_reference_end_ _reference_start_Hebrews 9:13_reference_end_ _reference_start_Jude 1:8_reference_end_ _reference_start_Jude 1:23_reference_end_ \en2 3. Negative human propensities (human nature) \gtrm sarx \trnl sarx ROM 6:19; 7:5, 18, 25; 8:3 (2 occurrences), 4, 5 (2 occurrences), 6, 7, 8, 9, 12 (2 occurrences), 13; 13:14 _reference_start_Romans 6:19_reference_end_ _reference_start_Romans 7:5_reference_end_ _reference_start_Romans 7:18_reference_end_ _reference_start_Romans 7:25_reference_end_ _reference_start_Romans 8:3_reference_end_ _reference_start_Romans 8:4_reference_end_ _reference_start_Romans 8:5_reference_end_ _reference_start_Romans 8:6_reference_end_ _reference_start_Romans 8:7_reference_end_ _reference_start_Romans 8:8_reference_end_ _reference_start_Romans 8:9_reference_end_ _reference_start_Romans 8:12_reference_end_ _reference_start_Romans 8:13_reference_end_ _reference_start_Romans 13:14_reference_end_ _reference_start_1 Corinthians 5:5_reference_end_ GAL 5:13, 16, 17 (2 occurrences), 19, 24; 6:8 (2 occurrences) _reference_start_Galatians 5:13_reference_end_ _reference_start_Galatians 5:16_reference_end_ _reference_start_Galatians 5:17_reference_end_ _reference_start_Galatians 5:19_reference_end_ _reference_start_Galatians 5:24_reference_end_ _reference_start_Galatians 6:8_reference_end_ EPH 2:3 (2 occurrences) _reference_start_Ephesians 2:3_reference_end_ _reference_start_Colossians 2:11_reference_end_ _reference_start_Colossians 2:18_reference_end_ _reference_start_Colossians 2:23_reference_end_ _reference_start_2 Peter 2:10_reference_end_ _reference_start_2 Peter 2:18_reference_end_ _reference_start_1 John 2:16_reference_end_ _reference_start_Jude 1:7_reference_end_ \gtrm sarkinov \trnl sarkinos _reference_start_Romans 7:14_reference_end_ _reference_start_1 Corinthians 3:1_reference_end_ \gtrm sarkikov \trnl sarkikos 1CO 3:3 (2 occurrences) _reference_start_1 Corinthians 3:3_reference_end_ _reference_start_1 Peter 2:11_reference_end_ \en2 4. A one-flesh unit consisting of two persons \gtrm sarx \trnl sarx MAT 19:5 (alternate sense 2.c.), 6 (alternate sense 2.c.) _reference_start_Matthew 19:5_reference_end_ _reference_start_Matthew 19:6_reference_end_ MRK 10:8 (2 occurrences) ( alternate sense 2.c.) _reference_start_Mark 10:8_reference_end_ 1CO 6:16 (alternate sense 2.c.) _reference_start_1 Corinthians 6:16_reference_end_ EPH 5:31 (alternate sense 2.c.) _reference_start_Ephesians 5:31_reference_end_ \en2 5. Material and/or worldly benefits or possessions \gtrm sarx \trnl sarx _reference_start_2 Corinthians 11:18_reference_end_ \gtrm sarkikov \trnl sarkikos _reference_start_Romans 15:27_reference_end_ _reference_start_1 Corinthians 9:11_reference_end_ [/hD3SSsGENTILE, PAGAN, NATION, THE NATIONSgentile, pagan, nation, the nations\o1 1. Gentiles, non-Jewish peoples in general \o1 2. Greek-speaking person, usually used in the sense of gentile, a non-Jewish person, in contrast to Jew (and therefore in many contexts synonymous with Gentile \o1 3. Godless people, those who do not know God \o1 4. Greeks as educated, civilized pe/255FORGIVE, FORGIVENESSforgive, forgiveness\see (see also PROPITIATION) \o1 An act of mercy in which the offended determines to wipe out the debt or fault of the offender \gtrm afijmi )11FOREVERforever\see (see ETERNAL)u0MFLESHflesh\o1 1. Muscle and sinew covering the bone \o1 2. The physical body of a person or animal \o2 a. In the simple material sense \o2 b ?tfXJ<. xj\N@2$|n`RD6( - - - - - - - - - - A A : : 2 2 0 0 / - : ~: }9 |1 {0 z0 y.  x-  w-  v-  u-  t- s- r/  q/ p< o: n1 m0 l0 k/  j/  i/ h/ g.2 f. e. d- c, b+ a+ `+? _+ ^+ ]* \)  [( Z( Y0 X; W/ V< U< ?tfXJ<. xj\N@2$|n`RD6( R, Q+ P*" O* N* M* L*  K*1 J*0 I*/ H* G* F* E* D)  C) B) A) @) ?) >) =(# <( ;( :( 9( 8(  7(  6(  5( 4( 3( 2. 1- 0/  /1 .. -)  ,( +( *< ). (. '- &A %> $= #= "3 !3 3 1 0 0 0 0 0 0 . -  - - - \trnl aphiæmi \xref [L&N 40.8] \def forgive \xref (others) \def dismiss, depart from leave behind, leave in a place, divorce, cancel a debt, reject, stop, allow, produce, and die \gtrm afesiv \trnl aphesis \xref [L&N 40.8] \def pardon \xref [L&N 37.132] \def liberty \gtrm apoluw \trnl apoluõ \xref [L&N 40.8] \def forgive \xref (others) \def dismiss, send, set free, and divorce \gtrm carizomai \trnl charizomai \xref [L&N 40.10] \def forgive \xref (others) \def give generously, cancel a debt, and hand over to \gtrm epikaluptw \trnl epikaluptõ \xref [L&N 40.11] \def forgive \gtrm paresiv \trnl paresis \xref [L&N 30.49] \def disregard \en2 An act of mercy in which the offended determines to wipe out the debt or fault of the offender \gtrm afijmi \trnl aphiæmi MAT 6:12 (2 occurrences), 14 (2 occurrences), 15 (2 occurrences); 9:2, 5; 12:31 (2 occurrences), 32 (2 occurrences); 18:21, 27, 32, 35 _reference_start_Matthew 6:12_reference_end_ _reference_start_Matthew 6:14_reference_end_ _reference_start_Matthew 6:15_reference_end_ _reference_start_Matthew 9:2_reference_end_ _reference_start_Matthew 9:5_reference_end_ _reference_start_Matthew 12:31_reference_end_ _reference_start_Matthew 12:32_reference_end_ _reference_start_Matthew 18:21_reference_end_ _reference_start_Matthew 18:27_reference_end_ _reference_start_Matthew 18:32_reference_end_ _reference_start_Matthew 18:35_reference_end_ MRK 2:5, 7, 9, 10; 3:28; 4:12; 11:25 (2 occurrences) _reference_start_Mark 2:5_reference_end_ _reference_start_Mark 2:7_reference_end_ _reference_start_Mark 2:9_reference_end_ _reference_start_Mark 2:10_reference_end_ _reference_start_Mark 3:28_reference_end_ _reference_start_Mark 4:12_reference_end_ _reference_start_Mark 11:25_reference_end_ LUK 5:20, 21, 23, 24; 7:47 (2 occurrences), 48, 49; 11:4 (2 occurrences); 12:10 (2 occurrences); 17:3, 4; 23:34 _reference_start_Luke 5:20_reference_end_ _reference_start_Luke 5:21_reference_end_ _reference_start_Luke 5:23_reference_end_ _reference_start_Luke 5:24_reference_end_ _reference_start_Luke 7:47_reference_end_ _reference_start_Luke 7:48_reference_end_ _reference_start_Luke 7:49_reference_end_ _reference_start_Luke 11:4_reference_end_ _reference_start_Luke 12:10_reference_end_ _reference_start_Luke 17:3_reference_end_ _reference_start_Luke 17:4_reference_end_ _reference_start_Luke 23:34_reference_end_ JHN 20:23 (2 occurrences) _reference_start_John 20:23_reference_end_ _reference_start_Acts 8:22_reference_end_ _reference_start_Romans 4:7_reference_end_ _reference_start_James 5:15_reference_end_ _reference_start_1 John 1:9_reference_end_ _reference_start_1 John 2:12_reference_end_ \gtrm afesiv \trnl aphesis _reference_start_Matthew 26:28_reference_end_ _reference_start_Mark 1:4_reference_end_ _reference_start_Mark 3:29_reference_end_ _reference_start_Luke 1:77_reference_end_ _reference_start_Luke 3:3_reference_end_ _reference_start_Luke 24:47_reference_end_ _reference_start_Acts 2:38_reference_end_ _reference_start_Acts 5:31_reference_end_ _reference_start_Acts 10:43_reference_end_ _reference_start_Acts 13:38_reference_end_ _reference_start_Acts 26:18_reference_end_ _reference_start_Ephesians 1:7_reference_end_ _reference_start_Colossians 1:14_reference_end_ _reference_start_Hebrews 9:22_reference_end_ _reference_start_Hebrews 10:18_reference_end_ \gtrm apoluw \trnl apoluõ LUK 6:37 (2 occurrences) _reference_start_Luke 6:37_reference_end_ \gtrm carizomai \trnl charizomai _reference_start_Luke 7:42_reference_end_ _reference_start_Luke 7:43_reference_end_ 2CO 2:7, 10 (3 occurrences); 12:13 _reference_start_2 Corinthians 2:7_reference_end_ _reference_start_2 Corinthians 2:10_reference_end_ _reference_start_2 Corinthians 12:13_reference_end_ _reference_start_Ephesians 4:32_reference_end_ COL 2:13; 3:13 (2 occurrences) _reference_start_Colossians 2:13_reference_end_ _reference_start_Colossians 3:13_reference_end_ \gtrm epikaluptw \trnl epikaluptõ _reference_start_Romans 4:7_reference_end_ \gtrm paresiv \trnl paresis ROM 3:25 (hapax legomenon) _reference_start_Romans 3:25_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( - - - -  -  - - , , , , , , , , , , , , ~, }, 0 |, . {,  z,  y, - x,  w, v* u(  t6 s0 r, q, p- o- n3 m3 l1 k/ j/ i/ h*+ g** f*% e:  d:  c3 b1 a, `, & _, + ^, ],& \*/ [* Z*M Y) X) W( V> U> T; S-ople \o1 5. Barbarians, uncivilized and/or uneducated or unintelligible \o1 6. Proselyte, Gentile converts to Judaism \o1 7. The Jewish nation \o1 8. A figurative or spiritual nation made up of God's people \o1 9. Gentiles and Jews inclusive \o2 a. The nations, all the nations (where the focus is on inclusion, every nation, rather than on contrast with Jews) \o2 b. Tribes \o2 c. Peoples \o2 d. Families \o1 10. A titular reference to the Gentiles \o1 11. Gentiles--Greek in particular \o2 a. Greek people \o2 b. Greek language \gtrm eqnov \trnl ethnos \xref [L&N 11.55] \def nation \gtrm ta eqnj \trnl ta ethnæ \xref [L&N 11.37] \def heathen \gtrm eqnikov \trnl ethnikos \xref [L&N 11.38] \def heathen \gtrm eqnikwv \trnl ethnikõs \xref [L&N 11.39] \def like a heathen \gtrm ›lljn \trnl hellæn \xref [L&N 11.90] \def Greek \xref [L&N 11.40] \def Gentile \gtrm ›lljnikov \trnl hellænikos \xref [L&N 11.92] \def Grecian (language) \gtrm ›lljniv \trnl hellænis \xref [L&N 11.91] \def Greek woman \xref [L&N 11.41] \def Gentile woman \gtrm ›lljnistjv \trnl hellænistæs \xref [L&N 11.93] \def Greek speaking Jew \gtrm ›lljnisti \trnl hellænisti \xref [L&N 33.5] \def In the Grecian Language \gtrm barbarov \trnl barbaros \xref [L&N 11.95] \def non-Greek \xref [L&N 11.94] \def native people \xref [L&N 41.31] \def uncivilized \gtrm prosjlutov \trnl prosælutos \xref [L&N 11.54] \def proselyte \gtrm alloyulov \trnl allopsulos \xref [L&N 11.43] \def heathen (hapax legomenon) \gtrm fulj \trnl phulæ \xref [L&N 10.6] \def tribe \xref [L&N 11.56] \def nation \xref [L&N 11.15] \def all God's people (idiom) \gtrm laov \trnl laos \xref [L&N 11.55] \def nation \xref [L&N 11.12] \def people of God \xref [L&N 11.1] \def crowd \xref [L&N 87.64] \def common people \gtrm akrobustia \trnl akrobustia \xref [L&N 11.53] \def Gentiles--a titular expression \xref [L&N 11.52] \def being uncircumcised \gtrm patria \trnl patria \xref [L&N 10.24] \def lineage \xref [L&N 11.56] \def nation \en2 1. Gentiles, non-Jewish peoples in general \gtrm eqnov \trnl ethnos _reference_start_Acts 15:23_reference_end_ _reference_start_Acts 26:17_reference_end_ _reference_start_Galatians 2:15_reference_end_ _reference_start_1 Timothy 2:7_reference_end_ \gtrm ta eqnj \trnl ta ethnæ _reference_start_Matthew 10:5_reference_end_ _reference_start_Luke 2:32_reference_end_ _reference_start_Acts 4:27_reference_end_ _reference_start_Acts 9:15_reference_end_ _reference_start_Acts 10:45_reference_end_ _reference_start_Acts 11:1_reference_end_ _reference_start_Acts 11:18_reference_end_ _reference_start_Acts 13:46_reference_end_ _reference_start_Acts 13:48_reference_end_ _reference_start_Acts 14:2_reference_end_ _reference_start_Acts 14:5_reference_end_ _reference_start_Acts 14:27_reference_end_ _reference_start_Acts 15:3_reference_end_ _reference_start_Acts 15:7_reference_end_ _reference_start_Acts 15:12_reference_end_ _reference_start_Acts 15:14_reference_end_ _reference_start_Acts 18:6_reference_end_ _reference_start_Acts 21:19_reference_end_ _reference_start_Acts 21:21_reference_end_ _reference_start_Acts 21:25_reference_end_ _reference_start_Acts 26:23_reference_end_ _reference_start_Acts 28:28_reference_end_ ROM 1:13; 3:29 (2 occurrences); 9:24, 30; 11:11, 12, 13, 25; 15:9, 10, 11, 16 (2 occurrences), 18, 27; 16:4 _reference_start_Romans 1:13_reference_end_ _reference_start_Romans 3:29_reference_end_ _reference_start_Romans 9:24_reference_end_ _reference_start_Romans 9:30_reference_end_ _reference_start_Romans 11:11_reference_end_ _reference_start_Romans 11:12_reference_end_ _reference_start_Romans 11:13_reference_end_ _reference_start_Romans 11:25_reference_end_ _reference_start_Romans 15:9_reference_end_ _reference_start_Romans 15:10_reference_end_ _reference_start_Romans 15:11_reference_end_ _reference_start_Romans 15:16_reference_end_ _reference_start_Romans 15:18_reference_end_ _reference_start_Romans 15:27_reference_end_ _reference_start_Romans 16:4_reference_end_ _reference_start_1 Corinthians 1:23_reference_end_ _reference_start_2 Corinthians 11:26_reference_end_ _reference_start_Galatians 1:16_reference_end_ _reference_start_Galatians 2:2_reference_end_ _reference_start_Galatians 2:8_reference_end_ _reference_start_Galatians 2:9_reference_end_ _reference_start_Galatians 2:12_reference_end_ _reference_start_Galatians 2:14_reference_end_ _reference_start_Galatians 3:8_reference_end_ _reference_start_Galatians 3:14_reference_end_ _reference_start_Ephesians 2:11_reference_end_ _reference_start_Ephesians 3:1_reference_end_ _reference_start_Ephesians 3:6_reference_end_ _reference_start_Ephesians 3:8_reference_end_ _reference_start_1 Thessalonians 2:16_reference_end_ \gtrm eqnikwv \trnl ethnikõs _reference_start_Galatians 2:14_reference_end_ \en2 2. Greek-speaking person, usually used in the sense of gentile, a non-Jewish person, in contrast to Jew (and therefore in many contexts synonymous with Gentile \gtrm ›lljn \trnl hellæn JHN 7:35 (2 occurrences); 12:20 _reference_start_John 7:35_reference_end_ _reference_start_John 12:20_reference_end_ _reference_start_Acts 6:1_reference_end_ _reference_start_Acts 9:29_reference_end_ _reference_start_Acts 11:20_reference_end_ _reference_start_Acts 14:1_reference_end_ _reference_start_Acts 16:1_reference_end_ _reference_start_Acts 16:3_reference_end_ _reference_start_Acts 17:4_reference_end_ _reference_start_Acts 18:4_reference_end_ _reference_start_Acts 19:10_reference_end_ _reference_start_Acts 19:17_reference_end_ _reference_start_Acts 20:21_reference_end_ _reference_start_Acts 21:28_reference_end_ _reference_start_Romans 1:16_reference_end_ _reference_start_Romans 2:9_reference_end_ _reference_start_Romans 2:10_reference_end_ _reference_start_Romans 3:9_reference_end_ _reference_start_Romans 10:12_reference_end_ _reference_start_1 Corinthians 1:22_reference_end_ _reference_start_1 Corinthians 1:24_reference_end_ _reference_start_1 Corinthians 10:32_reference_end_ _reference_start_1 Corinthians 12:13_reference_end_ _reference_start_Galatians 2:3_reference_end_ _reference_start_Galatians 3:28_reference_end_ _reference_start_Colossians 3:11_reference_end_ \gtrm ›lljniv \trnl hellænis _reference_start_Mark 7:26_reference_end_ _reference_start_Acts 17:12_reference_end_ \en2 3. Godless people, those who do not know God \gtrm eqnov \trnl ethnos ACT 4:25 (alternate sense 1.); 21:11 (alternate sense 1.) _reference_start_Acts 4:25_reference_end_ _reference_start_Acts 21:11_reference_end_ ROM 2:14 (alternate sense 1.) _reference_start_Romans 2:14_reference_end_ _reference_start_1 Corinthians 12:2_reference_end_ \gtrm ta eqnj \trnl ta ethnæ MAT 4:15; 6:32; 20:19 (alternate sense 1.), 25 _reference_start_Matthew 4:15_reference_end_ _reference_start_Matthew 6:32_reference_end_ _reference_start_Matthew 20:19_reference_end_ _reference_start_Matthew 20:25_reference_end_ MRK 10:33 (alternate sense 1.), 42 _reference_start_Mark 10:33_reference_end_ _reference_start_Mark 10:42_reference_end_ LUK 12:30; 18:32 (alternate sense 1.); 21:24 (2 occurrences); 22:25 _reference_start_Luke 12:30_reference_end_ _reference_start_Luke 18:32_reference_end_ _reference_start_Luke 21:24_reference_end_ _reference_start_Luke 22:25_reference_end_ ACT 26:20 (alternate sense 1.) _reference_start_Acts 26:20_reference_end_ ROM 2:24 (alternate sense 1.) _reference_start_Romans 2:24_reference_end_ _reference_start_1 Corinthians 5:1_reference_end_ _reference_start_1 Corinthians 10:20_reference_end_ _reference_start_Ephesians 4:17_reference_end_ _reference_start_1 Thessalonians 4:5_reference_end_ _reference_start_1 Peter 2:12_reference_end_ _reference_start_1 Peter 4:3_reference_end_ _reference_start_Revelation 11:2_reference_end_ \gtrm eqnikov \trnl ethnikos _reference_start_Matthew 5:47_reference_end_ _reference_start_Matthew 6:7_reference_end_ _reference_start_Matthew 18:17_reference_end_ _reference_start_3 John 1:7_reference_end_ \en2 4. Greeks as educated, civilized people \gtrm ›lljn \trnl hellæn _reference_start_Romans 1:14_reference_end_ \en2 5. Barbarians, uncivilized and/or uneducated or unintelligible \gtrm barbarov \trnl barbaros _reference_start_Acts 28:2_reference_end_ _reference_start_Acts 28:4_reference_end_ _reference_start_Romans 1:14_reference_end_ 1CO 14:11 (2 occurrences) _reference_start_1 Corinthians 14:11_reference_end_ _reference_start_Colossians 3:11_reference_end_ \en2 6. Proselyte, Gentile converts to Judaism \gtrm prosjlutov \trnl prosælutos _reference_start_Matthew 23:15_reference_end_ _reference_start_Acts 2:11_reference_end_ _reference_start_Acts 6:5_reference_end_ _reference_start_Acts 13:43_reference_end_ \en2 7. The Jewish nation \gtrm eqnov \trnl ethnos _reference_start_Luke 7:5_reference_end_ _reference_start_Luke 23:2_reference_end_ _reference_start_John 11:48_reference_end_ _reference_start_John 11:50_reference_end_ _reference_start_John 11:51_reference_end_ _reference_start_John 11:52_reference_end_ _reference_start_John 18:35_reference_end_ _reference_start_Acts 10:22_reference_end_ _reference_start_Acts 24:2_reference_end_ _reference_start_Acts 24:10_reference_end_ _reference_start_Acts 24:17_reference_end_ _reference_start_Acts 26:4_reference_end_ _reference_start_Acts 28:19_reference_end_ \en2 8. A figurative or spiritual nation made up of God's people \gtrm eqnov \trnl ethnos _reference_start_1 Peter 2:9_reference_end_ \en2 9. Gentiles and Jews inclusive \en3 a. The nations, all the nations (where the focus is on inclusion, every nation, rather than on contrast with Jews) \gtrm eqnov \trnl ethnos MAT 24:7 (2 occurrences) _reference_start_Matthew 24:7_reference_end_ MRK 13:8 (2 occurrences) _reference_start_Mark 13:8_reference_end_ LUK 21:10 (2 occurrences), 25; 24:47 _reference_start_Luke 21:10_reference_end_ _reference_start_Luke 21:25_reference_end_ _reference_start_Luke 24:47_reference_end_ ACT 2:5; 7:7 (Egypt); 8:9 (Samaria); 10:35; 13:19, 47; 17:26; 22:21 _reference_start_Acts 2:5_reference_end_ _reference_start_Acts 7:7_reference_end_ _reference_start_Acts 8:9_reference_end_ _reference_start_Acts 10:35_reference_end_ _reference_start_Acts 13:19_reference_end_ _reference_start_Acts 13:47_reference_end_ _reference_start_Acts 17:26_reference_end_ _reference_start_Acts 22:21_reference_end_ ROM 4:17, 18; 10:19 (2 occurrences); 15:9, 12 (2 occurrences) _reference_start_Romans 4:17_reference_end_ _reference_start_Romans 4:18_reference_end_ _reference_start_Romans 10:19_reference_end_ _reference_start_Romans 15:9_reference_end_ _reference_start_Romans 15:12_reference_end_ _reference_start_1 Timothy 3:16_reference_end_ _reference_start_Revelation 5:9_reference_end_ _reference_start_Revelation 7:9_reference_end_ _reference_start_Revelation 13:7_reference_end_ _reference_start_Revelation 14:6_reference_end_ \gtrm ta eqnj \trnl ta ethnæ _reference_start_Matthew 10:18_reference_end_ _reference_start_Matthew 12:18_reference_end_ _reference_start_Matthew 12:21_reference_end_ _reference_start_Matthew 21:43_reference_end_ _reference_start_Matthew 24:9_reference_end_ _reference_start_Matthew 24:14_reference_end_ _reference_start_Matthew 25:32_reference_end_ _reference_start_Matthew 28:19_reference_end_ _reference_start_Mark 11:17_reference_end_ _reference_start_Mark 13:10_reference_end_ _reference_start_Luke 21:24_reference_end_ _reference_start_Acts 7:45_reference_end_ _reference_start_Acts 14:16_reference_end_ _reference_start_Acts 15:17_reference_end_ _reference_start_Acts 15:19_reference_end_ _reference_start_Romans 1:5_reference_end_ _reference_start_Romans 16:26_reference_end_ _reference_start_Galatians 3:8_reference_end_ _reference_start_Colossians 1:27_reference_end_ _reference_start_2 Timothy 4:17_reference_end_ _reference_start_Revelation 2:26_reference_end_ _reference_start_Revelation 10:11_reference_end_ _reference_start_Revelation 11:9_reference_end_ _reference_start_Revelation 11:18_reference_end_ _reference_start_Revelation 12:5_reference_end_ _reference_start_Revelation 14:8_reference_end_ _reference_start_Revelation 15:4_reference_end_ _reference_start_Revelation 16:19_reference_end_ _reference_start_Revelation 17:15_reference_end_ _reference_start_Revelation 18:3_reference_end_ _reference_start_Revelation 18:23_reference_end_ _reference_start_Revelation 19:15_reference_end_ _reference_start_Revelation 20:3_reference_end_ _reference_start_Revelation 20:8_reference_end_ _reference_start_Revelation 21:24_reference_end_ _reference_start_Revelation 21:26_reference_end_ _reference_start_Revelation 22:2_reference_end_ \gtrm alloyulov \trnl allopsulos _reference_start_Acts 10:28_reference_end_ \en3 b. Tribes \gtrm fulj \trnl phulæ _reference_start_Matthew 24:30_reference_end_ _reference_start_Revelation 1:7_reference_end_ _reference_start_Revelation 5:9_reference_end_ _reference_start_Revelation 7:9_reference_end_ _reference_start_Revelation 11:9_reference_end_ _reference_start_Revelation 13:7_reference_end_ _reference_start_Revelation 14:6_reference_end_ \en3 c. Peoples \gtrm laov \trnl laos _reference_start_Luke 2:31_reference_end_ _reference_start_Acts 4:25_reference_end_ _reference_start_Romans 15:11_reference_end_ _reference_start_Revelation 5:9_reference_end_ _reference_start_Revelation 7:9_reference_end_ _reference_start_Revelation 10:11_reference_end_ _reference_start_Revelation 11:9_reference_end_ _reference_start_Revelation 13:7_reference_end_ _reference_start_Revelation 14:6_reference_end_ _reference_start_Revelation 17:15_reference_end_ \en3 d. Families \gtrm patria \trnl patria _reference_start_Acts 3:25_reference_end_ _reference_start_Ephesians 3:15_reference_end_ \en2 10. A titular reference to the Gentiles \gtrm akrobustia \trnl akrobustia _reference_start_Romans 3:30_reference_end_ _reference_start_Romans 4:9_reference_end_ _reference_start_Galatians 2:7_reference_end_ _reference_start_Colossians 3:11_reference_end_ \en2 11. Gentiles--Greek in particular \en3 a. Greek people \gtrm ›lljnistjv \trnl hellænistæs _reference_start_Acts 6:1_reference_end_ _reference_start_Acts 9:29_reference_end_ _reference_start_Acts 11:20_reference_end_ \en3 b. Greek language \gtrm ›lljnisti \trnl hellænisti _reference_start_John 19:20_reference_end_ _reference_start_Acts 21:37_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( P*  O) * N) ! M( L( K( J( I.  H- G, F, E, D) C3 B0 A0 @. ?. >. =. <- ;- :- 9- 8- 7, 6, 5, 4, 3, 2, 1, 0, /, .,  -,  ,, ++  *+# )0 (4 '1 &1 %1 $1 #0 "0 !0 0 0 0 0 0 /  . - - - - - - - -  ?tfXJ<. xj\N@2$|n`RD6( B B  B B 6 - - -  - - , , , / ,  , # , , ~, }*/ |* {* z)  y( x< w, v, u, t, s, r,  q+# p+ 4 o+ 3 n+ 2 m+ 0 l* k* j, + i, h, g( f3 e. d- c, b, a- `@ _( ^( ](/ \B  [< Z< Y4 X1 W.  V. U- T, S* R* Q* ?tfXJ<. xj\N@2$|n`RD6( N,  M, L3 K0 J- I- H1 G, FB EB DB  CB BB AB @B ?- >, =* <B ;B  :B 9B 8B 7B 6( 5,  4B 3B 2B 1B 0B /B .B -B ,B +B *B )B (B  'B  &B %B $B #7 "3 !0 - - , , , ,- * ) )  ( ( ( ( (+ (  (  (  ?tfXJ<. xj\N@2$|n`RD6( * * = ; 8 5 3 * *  *  )  )& ( ( ( ~+ ( }= |< {: z2 y1 x1 w1 v1 u/ t/ s/ r/ q/ p/ o/ n.  m-  l-  k- j- i, h+ ) g+ f+ eB dB cB bB a:  `/ _, ^,7 ]* \* [< Z.) Y.( X.  WB VB U*  T* S( R( Q,% P+ O,  To give honor to someone, especially to God \o2 b. To cause someone to be honored \o2 c. To reveal the greatness of someone \o2 d. A ministry, plan or program which is worthy of honor \gtrm doxa \trnl doxa \xref [L&N 79.18] \def splendor (noun) \xref [L&N 14.49] \def brightness \xref [L&N 76.13] \def amazing might \xref [L&N 33.357] \def praise \xref [L&N 87.4] \def honor \xref [L&N 87.23] \def greatness \xref [L&N 12.49] \def glorious being \xref [L&N 1.15] \def heaven \xref [L&N 25.205] \def pride \xref [L&N 33.468] \def promise to tell the truth \xref [L&N 12.6] \def Sublime Glory \gtrm doxazw \trnl doxazõ \xref [L&N 33.357] \def praise (verb) \xref [L&N 87.8] \def honor \xref [L&N 87.24] \def glorify \gtrm endoxazomai \trnl endoxazomai \xref [L&N 87.9] \def be honored (verb) \gtrm endoxov \trnl endoxos \xref [L&N 79.19] \def splendid (adjective) \xref [L&N 87.6] \def honored \gtrm sundoxazwmai \trnl sundoxazõmai \xref [L&N 87.10] \def be honored with (verb) \en2 1. Glory: Physical magnificence and splendor, great beauty and importance \en3 a. With reference to kings or their kingdoms \gtrm doxa \trnl doxa _reference_start_Matthew 4:8_reference_end_ _reference_start_Matthew 6:29_reference_end_ _reference_start_Luke 4:6_reference_end_ _reference_start_Luke 12:27_reference_end_ _reference_start_Revelation 21:24_reference_end_ _reference_start_Revelation 21:26_reference_end_ \en3 b. With reference to man or other created things \gtrm doxa \trnl doxa 1CO 11:7; 15:40, 41 (4 occurrences) _reference_start_1 Corinthians 11:7_reference_end_ _reference_start_1 Corinthians 15:40_reference_end_ _reference_start_1 Corinthians 15:41_reference_end_ _reference_start_1 Peter 1:24_reference_end_ \en2 2. Visible evidence of the God's presence in power and holiness \en3 a. The bright beautiful light around God and angels \gtrm doxa \trnl doxa _reference_start_Luke 2:9_reference_end_ _reference_start_Luke 9:32_reference_end_ ACT 7:55 (alternate sense 1.b.2.); 22:11 _reference_start_Acts 7:55_reference_end_ _reference_start_Acts 22:11_reference_end_ 2CO 3:7 (2 occurrences) _reference_start_2 Corinthians 3:7_reference_end_ HEB 9:5 (alternate sense 1.b.4.) _reference_start_Hebrews 9:5_reference_end_ REV 15:8 (alternate sense 1.b.2.); 18:1; 21:11, 23 _reference_start_Revelation 15:8_reference_end_ _reference_start_Revelation 18:1_reference_end_ _reference_start_Revelation 21:11_reference_end_ _reference_start_Revelation 21:23_reference_end_ \en3 b. Other outstanding ways God shows his presence \gtrm doxa \trnl doxa JHN 1:14 (2 occurrences); 2:11; 12:41 _reference_start_John 1:14_reference_end_ _reference_start_John 2:11_reference_end_ _reference_start_John 12:41_reference_end_ _reference_start_Acts 7:2_reference_end_ _reference_start_Romans 1:23_reference_end_ _reference_start_Romans 6:4_reference_end_ _reference_start_Romans 9:4_reference_end_ _reference_start_Romans 9:23_reference_end_ _reference_start_1 Corinthians 11:7_reference_end_ 2CO 3:8, 9 (2 occurrences), 10, 11 (2 occurrences), 18 (2 occurrences); 4:4, 6 _reference_start_2 Corinthians 3:8_reference_end_ _reference_start_2 Corinthians 3:9_reference_end_ _reference_start_2 Corinthians 3:10_reference_end_ _reference_start_2 Corinthians 3:11_reference_end_ _reference_start_2 Corinthians 3:18_reference_end_ _reference_start_2 Corinthians 4:4_reference_end_ _reference_start_2 Corinthians 4:6_reference_end_ _reference_start_Ephesians 1:12_reference_end_ _reference_start_Ephesians 1:14_reference_end_ _reference_start_Ephesians 1:17_reference_end_ _reference_start_Ephesians 3:16_reference_end_ _reference_start_Philippians 4:19_reference_end_ _reference_start_Hebrews 1:3_reference_end_ _reference_start_1 Peter 4:14_reference_end_ _reference_start_2 Peter 1:3_reference_end_ \gtrm doxazw \trnl doxazõ _reference_start_John 11:40_reference_end_ \en3 c. God's majesty seen at Christ's second coming \gtrm doxa \trnl doxa _reference_start_Matthew 16:27_reference_end_ _reference_start_Matthew 24:30_reference_end_ _reference_start_Matthew 25:31_reference_end_ _reference_start_Mark 8:38_reference_end_ _reference_start_Mark 13:26_reference_end_ LUK 9:26, 31 (alternate sense 1.b.1., 1.b.2.); 21:27 _reference_start_Luke 9:26_reference_end_ _reference_start_Luke 9:31_reference_end_ _reference_start_Luke 21:27_reference_end_ COL 3:4 (alternate sense 1.b.1., 1.b.2.) _reference_start_Colossians 3:4_reference_end_ _reference_start_2 Thessalonians 1:9_reference_end_ _reference_start_Titus 2:13_reference_end_ \en3 d. A title for God \gtrm doxa \trnl doxa _reference_start_James 2:1_reference_end_ 2PE 1:17 (2 occurrences) _reference_start_2 Peter 1:17_reference_end_ \en2 3. Honor, praise or high reputation \en3 a. Honor given to God for his greatness \gtrm doxa \trnl doxa _reference_start_Luke 2:14_reference_end_ _reference_start_Luke 14:10_reference_end_ _reference_start_Luke 17:18_reference_end_ _reference_start_Luke 19:38_reference_end_ JHN 5:41, 44 (2 occurrences); 7:18 (2 occurrences); 8:50, 54; 9:24; 11:4 _reference_start_John 5:41_reference_end_ _reference_start_John 5:44_reference_end_ _reference_start_John 7:18_reference_end_ _reference_start_John 8:50_reference_end_ _reference_start_John 8:54_reference_end_ _reference_start_John 9:24_reference_end_ _reference_start_John 11:4_reference_end_ _reference_start_Acts 12:23_reference_end_ JHN 12:43 (2 occurrences) _reference_start_John 12:43_reference_end_ _reference_start_Romans 3:7_reference_end_ _reference_start_Romans 4:20_reference_end_ _reference_start_Romans 11:36_reference_end_ _reference_start_Romans 15:7_reference_end_ _reference_start_Romans 16:27_reference_end_ _reference_start_1 Corinthians 10:31_reference_end_ _reference_start_2 Corinthians 1:20_reference_end_ _reference_start_2 Corinthians 4:15_reference_end_ _reference_start_2 Corinthians 6:8_reference_end_ _reference_start_2 Corinthians 8:19_reference_end_ _reference_start_Galatians 1:5_reference_end_ _reference_start_Ephesians 3:21_reference_end_ _reference_start_Philippians 1:11_reference_end_ _reference_start_Philippians 2:11_reference_end_ _reference_start_Philippians 4:20_reference_end_ _reference_start_1 Thessalonians 2:6_reference_end_ _reference_start_1 Timothy 1:17_reference_end_ _reference_start_2 Timothy 4:18_reference_end_ _reference_start_Hebrews 2:7_reference_end_ _reference_start_Hebrews 2:9_reference_end_ _reference_start_Hebrews 3:3_reference_end_ _reference_start_Hebrews 13:21_reference_end_ _reference_start_1 Peter 1:7_reference_end_ _reference_start_1 Peter 4:11_reference_end_ _reference_start_2 Peter 3:18_reference_end_ _reference_start_Jude 1:25_reference_end_ _reference_start_Revelation 1:6_reference_end_ _reference_start_Revelation 4:9_reference_end_ _reference_start_Revelation 4:11_reference_end_ _reference_start_Revelation 5:12_reference_end_ _reference_start_Revelation 5:13_reference_end_ _reference_start_Revelation 7:12_reference_end_ _reference_start_Revelation 11:13_reference_end_ _reference_start_Revelation 14:7_reference_end_ _reference_start_Revelation 16:9_reference_end_ _reference_start_Revelation 19:1_reference_end_ _reference_start_Revelation 19:7_reference_end_ \en3 b. Honor Christians share by belonging to God \gtrm doxa \trnl doxa _reference_start_Mark 10:37_reference_end_ _reference_start_Luke 24:26_reference_end_ _reference_start_John 17:5_reference_end_ _reference_start_John 17:22_reference_end_ _reference_start_John 17:24_reference_end_ _reference_start_Romans 2:7_reference_end_ _reference_start_Romans 2:10_reference_end_ _reference_start_Romans 3:23_reference_end_ _reference_start_Romans 5:2_reference_end_ _reference_start_Romans 8:18_reference_end_ _reference_start_Romans 9:23_reference_end_ _reference_start_1 Corinthians 2:7_reference_end_ _reference_start_1 Corinthians 2:8_reference_end_ _reference_start_1 Corinthians 15:43_reference_end_ _reference_start_2 Corinthians 4:17_reference_end_ _reference_start_Colossians 1:27_reference_end_ _reference_start_1 Thessalonians 2:12_reference_end_ _reference_start_2 Thessalonians 2:14_reference_end_ _reference_start_1 Timothy 3:16_reference_end_ _reference_start_2 Timothy 2:10_reference_end_ _reference_start_Hebrews 2:10_reference_end_ _reference_start_1 Peter 1:11_reference_end_ _reference_start_1 Peter 1:21_reference_end_ _reference_start_1 Peter 4:13_reference_end_ _reference_start_1 Peter 5:1_reference_end_ _reference_start_1 Peter 5:4_reference_end_ _reference_start_1 Peter 5:10_reference_end_ \en2 4. Someone or something that brings honor to someone \gtrm doxa \trnl doxa _reference_start_Luke 2:32_reference_end_ _reference_start_1 Corinthians 11:15_reference_end_ _reference_start_2 Corinthians 8:23_reference_end_ _reference_start_Ephesians 3:13_reference_end_ _reference_start_Philippians 3:19_reference_end_ _reference_start_1 Thessalonians 2:20_reference_end_ \en2 5. Glorious \en3 a. Magnificent, amazing, as associated with God and his presence \gtrm doxa \trnl doxa _reference_start_Matthew 19:28_reference_end_ _reference_start_Matthew 25:31_reference_end_ _reference_start_Romans 8:21_reference_end_ _reference_start_Ephesians 1:6_reference_end_ _reference_start_Ephesians 1:18_reference_end_ _reference_start_Philippians 3:21_reference_end_ _reference_start_Colossians 1:11_reference_end_ _reference_start_Colossians 1:27_reference_end_ _reference_start_1 Timothy 1:11_reference_end_ _reference_start_Jude 1:24_reference_end_ \gtrm doxazw \trnl doxazõ 1PE 1:8 (verb is in noun/adjective category because it is a participle) _reference_start_1 Peter 1:8_reference_end_ \gtrm endoxov \trnl endoxos _reference_start_Luke 13:17_reference_end_ _reference_start_Ephesians 5:27_reference_end_ \en3 b. Angels as glorious ones \gtrm doxa \trnl doxa _reference_start_2 Peter 2:10_reference_end_ _reference_start_Jude 1:8_reference_end_ \en3 c. Men as honored ones \gtrm endoxov \trnl endoxos _reference_start_Luke 7:25_reference_end_ _reference_start_1 Corinthians 4:10_reference_end_ \en2 6. To Glorify \en3 a. To give honor to someone, especially to God \gtrm doxazw \trnl doxazõ _reference_start_Matthew 5:16_reference_end_ _reference_start_Matthew 6:2_reference_end_ _reference_start_Matthew 9:8_reference_end_ _reference_start_Matthew 15:31_reference_end_ _reference_start_Mark 2:12_reference_end_ _reference_start_Luke 2:20_reference_end_ _reference_start_Luke 5:25_reference_end_ _reference_start_Luke 5:26_reference_end_ _reference_start_Luke 7:16_reference_end_ _reference_start_Luke 13:13_reference_end_ _reference_start_Luke 17:15_reference_end_ _reference_start_Luke 18:43_reference_end_ _reference_start_Luke 23:47_reference_end_ JHN 8:54 (2 occurrences) _reference_start_John 8:54_reference_end_ ACT 4:21; 11:18; 13:48 (figure: metonymy (the word of God is put for God)); 21:20 _reference_start_Acts 4:21_reference_end_ _reference_start_Acts 11:18_reference_end_ _reference_start_Acts 13:48_reference_end_ _reference_start_Acts 21:20_reference_end_ _reference_start_Romans 1:21_reference_end_ _reference_start_Romans 15:6_reference_end_ _reference_start_Romans 15:9_reference_end_ _reference_start_Galatians 1:24_reference_end_ 2TH 3:1 (figure: metonymy (the word of the Lord is put for God)) _reference_start_2 Thessalonians 3:1_reference_end_ _reference_start_1 Peter 2:12_reference_end_ _reference_start_1 Peter 4:11_reference_end_ REV 15:4; 18:7 (figure: personification (Babylon is assuming glory for herself which is due only to God)) _reference_start_Revelation 15:4_reference_end_ _reference_start_Revelation 18:7_reference_end_ \en3 b. To cause someone to be honored \gtrm doxazw \trnl doxazõ _reference_start_John 7:39_reference_end_ _reference_start_John 12:16_reference_end_ _reference_start_John 12:23_reference_end_ _reference_start_John 17:5_reference_end_ _reference_start_Acts 3:13_reference_end_ _reference_start_Romans 8:30_reference_end_ _reference_start_Hebrews 5:5_reference_end_ \gtrm sundoxazwmai \trnl sundoxazõmai _reference_start_Romans 8:17_reference_end_ \en3 c. To reveal the greatness of someone \gtrm doxazw \trnl doxazõ _reference_start_Luke 4:15_reference_end_ JHN 11:4; 12:28 (3 occurrences); 13:31 (2 occurrences), 32 (3 occurrences); 14:13; 15:8; 16:14; 17:1 (2 occurrences), 4, 10; 21:19 _reference_start_John 11:4_reference_end_ _reference_start_John 12:28_reference_end_ _reference_start_John 13:31_reference_end_ _reference_start_John 13:32_reference_end_ _reference_start_John 14:13_reference_end_ _reference_start_John 15:8_reference_end_ _reference_start_John 16:14_reference_end_ _reference_start_John 17:1_reference_end_ _reference_start_John 17:4_reference_end_ _reference_start_John 17:10_reference_end_ _reference_start_John 21:19_reference_end_ _reference_start_1 Corinthians 6:20_reference_end_ _reference_start_1 Corinthians 12:26_reference_end_ _reference_start_2 Corinthians 9:13_reference_end_ _reference_start_1 Peter 4:16_reference_end_ \gtrm endoxazomai \trnl endoxazomai _reference_start_2 Thessalonians 1:10_reference_end_ _reference_start_2 Thessalonians 1:12_reference_end_ \en3 d. A ministry, plan or program which is worthy of honor \gtrm doxazw \trnl doxazõ _reference_start_Romans 11:13_reference_end_ 2CO 3:10 (2 occurrences) _reference_start_2 Corinthians 3:10_reference_end_  y5]GODgod\see (see also HEAVEN, IDOLS, KINGDOM) \o1 1. God \o1 2. Specifically, Son of God \o1 3. Spe A4==GLORY, GLORIOUS, GLORIFYglory, glorious, glorify\o1 1. Glory: Physical magnificence and splendor, great beauty and importance \o2 a. With reference to kings or their kingdoms \o2 b. With reference to man or other created things \o1 2. Visible evidence of the God's presence in power and holiness \o2 a. The bright beautiful light around God and angels \o2 b. Other outstanding ways God shows his presence \o2 c. God's majesty seen at Christ's second coming \o2 d. A title for God \o1 3. Honor, praise or high reputation \o2 a. Honor given to God for his greatness \o2 b. Honor Christians share by belonging to God \o1 4. Someone or something that brings honor to someone \o1 5. Glorious \o2 a. Magnificent, amazing, as associated with God and his presence \o2 b. Angels as glorious ones \o2 c. Men as honored ones \o1 6. To Glorify \o2 a. ?tfXJ<. xj\N@2$|n`RD6( L/ K.+ J. I. H-  G- F- E- D- C- B+ A+ @+ ?* >) % =B <B ;B :B 9B 8B 7B 6B 5B 4B 3B 2A 1= 0< /< .:  -: ,: +: *7 )6 (4 '2 &2 %2 $1 #0 "/ !/ / / .  - - - $ - - + + ,  +  +  +6 +2 + +, +) *& * ?tfXJ<. xj\N@2$|n`RD6( +' B B < < 5 0 - - - , , 0 ,  ~, }+6 |*/ {*+ z* y* x* w* v* u* t) s( r(  q( p( o. n* mA l= k1 j*  i< hA g6 f3 e3 d2 c1 b1 a- `( _( ^4 ]2 \1 [/ Z.  Y* X< W< V< U< T< S< R: Q7 P6 O5 N4 M3 ?tfXJ<. xj\N@2$|n`RD6( J) I) H) G(. F(+ E(? D(= C( B(% A( @( ?( >( =( <( ;( :( 9( 8( 7( 6( 5( 4(  3(  2(  1( 0( /(" .( -( ,( +( *( )( (( '( &/ %- $5 #5 "< !/ .  . + + + + + + + + +  +  +  * - : - , + +  +  cifically Kingdom of God (see KINGDOM) \o1 4. Specifically Word of God (not yet extracted) \o1 5. God related \o2 a. Divine, deity \o2 b. Theophilus \o2 c. Various \o1 6. Exhalted titles of God \o2 a. Almighty One \o2 b. The Most High \o2 c. The Blessed One, The Majestic One, The Excellent Glory \gtrm qeov \trnl theos \xref [L&N 12.1] \def God \xref [L&N 12.15] \def Son of God \xref [L&N 12.22] \def god \xref [L&N 12.24] \def The god of this world (Satan) \xref [L&N 12.25] \def goddess \gtrm qeodidaktov \trnl theodidaktos \xref [L&N 33.228] \def taught by God \gtrm qeomacov \trnl theomachos \xref [L&N 39.32] \def fighting against God \gtrm qeopneustov \trnl theopneustos \xref [L&N 33.261] \def inspired by God \gtrm qeosebeia \trnl theosebeia \xref [L&N 53.1] \def religion \gtrm qeosebjv \trnl theosebæs \xref [L&N 53.6] \def religious \gtrm qeostugjv \trnl theostugæs \xref [L&N 88.205] \def hating God \gtrm qeotjv \trnl theotæs \xref [L&N 12.13] \def divine being \gtrm qeofilov \trnl theophilos \xref [L&N 93.153] \def Theophilus, lover of God \gtrm qeiov \trnl theios \xref [L&N 12.14] \def divine \gtrm qeiotjv \trnl theiotæs \xref [L&N 12.13] \def divine being \gtrm crjmatismov \trnl chræmatismos \xref [L&N 28.40] \def divine revelation \gtrm aqeov \trnl atheos \xref [L&N 12.2] \def without any relationship with God \gtrm filoqeov \trnl philotheos \xref [L&N 25.40] \def loving God \gtrm Ãyistov \trnl hupsistos \xref [L&N 12.4] \def Most High \gtrm megalwsunj, tjv \trnl megalõsunæ, tæs \xref [L&N 12.5] \def The Majestic One \gtrm megaloprepjv doxa \trnl megaloprepæs doxa \xref [L&N 12.6] \def The Majestic Glory \gtrm pantokratwr \trnl pantokratõr \xref [L&N 12.7] \def The Almighty \gtrm eulogjtov, tjv \trnl eulogætos, tæs \xref [L&N not found] \def The Blessed \gtrm eidwlon \trnl eidõlon \xref [L&N 6.97] \def idol \xref [L&N 12.23] \def false god \gtrm daimonion \trnl daimonion \xref [L&N 12.37] \def demon \xref [L&N 12.26] \def god, lesser than theos 12.22 \gtrm qea \trnl thea \xref [L&N 12.25] \def goddess \en2 1. God \gtrm qeov \trnl theos MAT 1:23; 3:9, 16; 4:4, 7, 10; 5:8, 9, 34; 6:24, 30; 9:8; 12:4, 28 (2 occurrences); 15:3, 4, 6, 31; 16:23; 19:6, 26; 21:12; 22:16, 21 (2 occurrences), 29, 31, 32 (4 occurrences), 37; 23:22; 26:61, 63 (2 occurrences); 27:43 (3 occurrences), 46 (2 occurrences) _reference_start_Matthew 1:23_reference_end_ _reference_start_Matthew 3:9_reference_end_ _reference_start_Matthew 3:16_reference_end_ _reference_start_Matthew 4:4_reference_end_ _reference_start_Matthew 4:7_reference_end_ _reference_start_Matthew 4:10_reference_end_ _reference_start_Matthew 5:8_reference_end_ _reference_start_Matthew 5:9_reference_end_ _reference_start_Matthew 5:34_reference_end_ _reference_start_Matthew 6:24_reference_end_ _reference_start_Matthew 6:30_reference_end_ _reference_start_Matthew 9:8_reference_end_ _reference_start_Matthew 12:4_reference_end_ _reference_start_Matthew 12:28_reference_end_ _reference_start_Matthew 15:3_reference_end_ _reference_start_Matthew 15:4_reference_end_ _reference_start_Matthew 15:6_reference_end_ _reference_start_Matthew 15:31_reference_end_ _reference_start_Matthew 16:23_reference_end_ _reference_start_Matthew 19:6_reference_end_ _reference_start_Matthew 19:26_reference_end_ _reference_start_Matthew 21:12_reference_end_ _reference_start_Matthew 22:16_reference_end_ _reference_start_Matthew 22:21_reference_end_ _reference_start_Matthew 22:29_reference_end_ _reference_start_Matthew 22:31_reference_end_ _reference_start_Matthew 22:32_reference_end_ _reference_start_Matthew 22:37_reference_end_ _reference_start_Matthew 23:22_reference_end_ _reference_start_Matthew 26:61_reference_end_ _reference_start_Matthew 26:63_reference_end_ _reference_start_Matthew 27:43_reference_end_ _reference_start_Matthew 27:46_reference_end_ MRK 1:14, 24; 2:7, 12, 26; 3:35; 7:8, 9, 13; 8:33; 10:6 (Implied contextually), 9, 18, 27 (2 occurrences); 11:22; 12:14, 17 (2 occurrences), 24, 26 (4 occurrences), 27, 29, 30; 13:19; 15:34 (2 occurrences); 16:19 _reference_start_Mark 1:14_reference_end_ _reference_start_Mark 1:24_reference_end_ _reference_start_Mark 2:7_reference_end_ _reference_start_Mark 2:12_reference_end_ _reference_start_Mark 2:26_reference_end_ _reference_start_Mark 3:35_reference_end_ _reference_start_Mark 7:8_reference_end_ _reference_start_Mark 7:9_reference_end_ _reference_start_Mark 7:13_reference_end_ _reference_start_Mark 8:33_reference_end_ _reference_start_Mark 10:6_reference_end_ _reference_start_Mark 10:9_reference_end_ _reference_start_Mark 10:18_reference_end_ _reference_start_Mark 10:27_reference_end_ _reference_start_Mark 11:22_reference_end_ _reference_start_Mark 12:14_reference_end_ _reference_start_Mark 12:17_reference_end_ _reference_start_Mark 12:24_reference_end_ _reference_start_Mark 12:26_reference_end_ _reference_start_Mark 12:27_reference_end_ _reference_start_Mark 12:29_reference_end_ _reference_start_Mark 12:30_reference_end_ _reference_start_Mark 13:19_reference_end_ _reference_start_Mark 15:34_reference_end_ _reference_start_Mark 16:19_reference_end_ LUK 1:6, 8, 16, 19, 26, 30, 32, 37, 47, 64, 68, 78; 2:13, 14, 20, 28, 38, 40, 52; 3:2, 6, 8, 38; 4:8, 12, 34; 5:1, 21, 25, 26; 6:4, 12; 7:16 (2 occurrences), 29, 30; 8:11, 21, 28, 39; 9:20, 43; 10:27; 11:20 (2 occurrences), 28, 42, 49; 12:6, 8, 9, 20, 21, 24, 28; 13:13; 15:10; 16:13, 15 (2 occurrences); 17:15, 18; 18:2, 4, 7, 11, 13, 19, 27, 43 (2 occurrences); 19:37; 20:21, 25 (2 occurrences), 36, 37 (3 occurrences), 38; 22:69; 23:35, 40, 47; 24:19, 53 _reference_start_Luke 1:6_reference_end_ _reference_start_Luke 1:8_reference_end_ _reference_start_Luke 1:16_reference_end_ _reference_start_Luke 1:19_reference_end_ _reference_start_Luke 1:26_reference_end_ _reference_start_Luke 1:30_reference_end_ _reference_start_Luke 1:32_reference_end_ _reference_start_Luke 1:37_reference_end_ _reference_start_Luke 1:47_reference_end_ _reference_start_Luke 1:64_reference_end_ _reference_start_Luke 1:68_reference_end_ _reference_start_Luke 1:78_reference_end_ _reference_start_Luke 2:13_reference_end_ _reference_start_Luke 2:14_reference_end_ _reference_start_Luke 2:20_reference_end_ _reference_start_Luke 2:28_reference_end_ _reference_start_Luke 2:38_reference_end_ _reference_start_Luke 2:40_reference_end_ _reference_start_Luke 2:52_reference_end_ _reference_start_Luke 3:2_reference_end_ _reference_start_Luke 3:6_reference_end_ _reference_start_Luke 3:8_reference_end_ _reference_start_Luke 3:38_reference_end_ _reference_start_Luke 4:8_reference_end_ _reference_start_Luke 4:12_reference_end_ _reference_start_Luke 4:34_reference_end_ _reference_start_Luke 5:1_reference_end_ _reference_start_Luke 5:21_reference_end_ _reference_start_Luke 5:25_reference_end_ _reference_start_Luke 5:26_reference_end_ _reference_start_Luke 6:4_reference_end_ _reference_start_Luke 6:12_reference_end_ _reference_start_Luke 7:16_reference_end_ _reference_start_Luke 7:29_reference_end_ _reference_start_Luke 7:30_reference_end_ _reference_start_Luke 8:11_reference_end_ _reference_start_Luke 8:21_reference_end_ _reference_start_Luke 8:28_reference_end_ _reference_start_Luke 8:39_reference_end_ _reference_start_Luke 9:20_reference_end_ _reference_start_Luke 9:43_reference_end_ _reference_start_Luke 10:27_reference_end_ _reference_start_Luke 11:20_reference_end_ _reference_start_Luke 11:28_reference_end_ _reference_start_Luke 11:42_reference_end_ _reference_start_Luke 11:49_reference_end_ _reference_start_Luke 12:6_reference_end_ _reference_start_Luke 12:8_reference_end_ _reference_start_Luke 12:9_reference_end_ _reference_start_Luke 12:20_reference_end_ _reference_start_Luke 12:21_reference_end_ _reference_start_Luke 12:24_reference_end_ _reference_start_Luke 12:28_reference_end_ _reference_start_Luke 13:13_reference_end_ _reference_start_Luke 15:10_reference_end_ _reference_start_Luke 16:13_reference_end_ _reference_start_Luke 16:15_reference_end_ _reference_start_Luke 17:15_reference_end_ _reference_start_Luke 17:18_reference_end_ _reference_start_Luke 18:2_reference_end_ _reference_start_Luke 18:4_reference_end_ _reference_start_Luke 18:7_reference_end_ _reference_start_Luke 18:11_reference_end_ _reference_start_Luke 18:13_reference_end_ _reference_start_Luke 18:19_reference_end_ _reference_start_Luke 18:27_reference_end_ _reference_start_Luke 18:43_reference_end_ _reference_start_Luke 19:37_reference_end_ _reference_start_Luke 20:21_reference_end_ _reference_start_Luke 20:25_reference_end_ _reference_start_Luke 20:36_reference_end_ _reference_start_Luke 20:37_reference_end_ _reference_start_Luke 20:38_reference_end_ _reference_start_Luke 22:69_reference_end_ _reference_start_Luke 23:35_reference_end_ _reference_start_Luke 23:40_reference_end_ _reference_start_Luke 23:47_reference_end_ _reference_start_Luke 24:19_reference_end_ _reference_start_Luke 24:53_reference_end_ JHN 1:1 (2 occurrences), 2, 6, 12, 13, 18, 29, 36, 51; 3:2 (2 occurrences), 16, 17, 21, 33, 34 (2 occurrences), 36; 4:10, 24; 5:18 (2 occurrences), 42, 44; 6:27, 28, 29, 33, 45, 46, 69; 7:17; 8:40, 41, 42 (2 occurrences), 47 (3 occurrences), 54; 9:3, 16, 24, 29, 31 (2 occurrences), 33; 10:33, 35; 11:22 (2 occurrences), 40, 52; 12:43; 13:3 (2 occurrences), 31, 32 (2 occurrences); 14:1; 16:2, 30; 17:3; 20:17 (2 occurrences), 28; 21:19 _reference_start_John 1:1_reference_end_ _reference_start_John 1:2_reference_end_ _reference_start_John 1:6_reference_end_ _reference_start_John 1:12_reference_end_ _reference_start_John 1:13_reference_end_ _reference_start_John 1:18_reference_end_ _reference_start_John 1:29_reference_end_ _reference_start_John 1:36_reference_end_ _reference_start_John 1:51_reference_end_ _reference_start_John 3:2_reference_end_ _reference_start_John 3:16_reference_end_ _reference_start_John 3:17_reference_end_ _reference_start_John 3:21_reference_end_ _reference_start_John 3:33_reference_end_ _reference_start_John 3:34_reference_end_ _reference_start_John 3:36_reference_end_ _reference_start_John 4:10_reference_end_ _reference_start_John 4:24_reference_end_ _reference_start_John 5:18_reference_end_ _reference_start_John 5:42_reference_end_ _reference_start_John 5:44_reference_end_ _reference_start_John 6:27_reference_end_ _reference_start_John 6:28_reference_end_ _reference_start_John 6:29_reference_end_ _reference_start_John 6:33_reference_end_ _reference_start_John 6:45_reference_end_ _reference_start_John 6:46_reference_end_ _reference_start_John 6:69_reference_end_ _reference_start_John 7:17_reference_end_ _reference_start_John 8:40_reference_end_ _reference_start_John 8:41_reference_end_ _reference_start_John 8:42_reference_end_ _reference_start_John 8:47_reference_end_ _reference_start_John 8:54_reference_end_ _reference_start_John 9:3_reference_end_ _reference_start_John 9:16_reference_end_ _reference_start_John 9:24_reference_end_ _reference_start_John 9:29_reference_end_ _reference_start_John 9:31_reference_end_ _reference_start_John 9:33_reference_end_ _reference_start_John 10:33_reference_end_ _reference_start_John 10:35_reference_end_ _reference_start_John 11:22_reference_end_ _reference_start_John 11:40_reference_end_ _reference_start_John 11:52_reference_end_ _reference_start_John 12:43_reference_end_ _reference_start_John 13:3_reference_end_ _reference_start_John 13:31_reference_end_ _reference_start_John 13:32_reference_end_ _reference_start_John 14:1_reference_end_ _reference_start_John 16:2_reference_end_ _reference_start_John 16:30_reference_end_ _reference_start_John 17:3_reference_end_ _reference_start_John 20:17_reference_end_ _reference_start_John 20:28_reference_end_ _reference_start_John 21:19_reference_end_ ACT 2:11, 17, 22 (2 occurrences), 23, 24, 30, 32, 33, 36, 39, 47; 3:8, 9, 13 (2 occurrences), 15, 18, 21, 22, 25, 26; 4:10, 19 (2 occurrences), 21, 24, 31; 5:4, 29, 30, 31, 32, 39; 6:2, 7, 11; 7:2, 4 (Implied contextually), 6, 7, 9, 17, 20, 25, 32 (2 occurrences), 35, 37, 42, 45, 46 (2 occurrences), 55 (2 occurrences), 56; 8:10, 14, 20, 21; 10:2 (2 occurrences), 3, 4, 15, 22, 28, 31, 33, 34, 38 (2 occurrences), 40, 41, 42, 46; 11:1, 9, 17 (2 occurrences), 18 (2 occurrences), 23; 12:5, 23, 24; 13:5, 7, 16, 17, 21, 23, 26, 30, 32, 36, 37, 43, 44, 46, 48; 14:15, 26, 27; 15:4, 7, 8, 10, 12, 14, 19; 16:10, 14, 17, 25, 34; 17:13, 24, 27, 29, 30; 18:7, 11, 13, 21, 26; 19:11; 20:21, 24, 27, 28, 32; 21:19, 20; 22:3, 14; 23:1, 3, 4; 24:14, 15, 16; 26:6, 8, 18, 20, 22, 29; 27:23, 24, 25, 35; 28:15, 28 _reference_start_Acts 2:11_reference_end_ _reference_start_Acts 2:17_reference_end_ _reference_start_Acts 2:22_reference_end_ _reference_start_Acts 2:23_reference_end_ _reference_start_Acts 2:24_reference_end_ _reference_start_Acts 2:30_reference_end_ _reference_start_Acts 2:32_reference_end_ _reference_start_Acts 2:33_reference_end_ _reference_start_Acts 2:36_reference_end_ _reference_start_Acts 2:39_reference_end_ _reference_start_Acts 2:47_reference_end_ _reference_start_Acts 3:8_reference_end_ _reference_start_Acts 3:9_reference_end_ _reference_start_Acts 3:13_reference_end_ _reference_start_Acts 3:15_reference_end_ _reference_start_Acts 3:18_reference_end_ _reference_start_Acts 3:21_reference_end_ _reference_start_Acts 3:22_reference_end_ _reference_start_Acts 3:25_reference_end_ _reference_start_Acts 3:26_reference_end_ _reference_start_Acts 4:10_reference_end_ _reference_start_Acts 4:19_reference_end_ _reference_start_Acts 4:21_reference_end_ _reference_start_Acts 4:24_reference_end_ _reference_start_Acts 4:31_reference_end_ _reference_start_Acts 5:4_reference_end_ _reference_start_Acts 5:29_reference_end_ _reference_start_Acts 5:30_reference_end_ _reference_start_Acts 5:31_reference_end_ _reference_start_Acts 5:32_reference_end_ _reference_start_Acts 5:39_reference_end_ _reference_start_Acts 6:2_reference_end_ _reference_start_Acts 6:7_reference_end_ _reference_start_Acts 6:11_reference_end_ _reference_start_Acts 7:2_reference_end_ _reference_start_Acts 7:4_reference_end_ _reference_start_Acts 7:6_reference_end_ _reference_start_Acts 7:7_reference_end_ _reference_start_Acts 7:9_reference_end_ _reference_start_Acts 7:17_reference_end_ _reference_start_Acts 7:20_reference_end_ _reference_start_Acts 7:25_reference_end_ _reference_start_Acts 7:32_reference_end_ _reference_start_Acts 7:35_reference_end_ _reference_start_Acts 7:37_reference_end_ _reference_start_Acts 7:42_reference_end_ _reference_start_Acts 7:45_reference_end_ _reference_start_Acts 7:46_reference_end_ _reference_start_Acts 7:55_reference_end_ _reference_start_Acts 7:56_reference_end_ _reference_start_Acts 8:10_reference_end_ _reference_start_Acts 8:14_reference_end_ _reference_start_Acts 8:20_reference_end_ _reference_start_Acts 8:21_reference_end_ _reference_start_Acts 10:2_reference_end_ _reference_start_Acts 10:3_reference_end_ _reference_start_Acts 10:4_reference_end_ _reference_start_Acts 10:15_reference_end_ _reference_start_Acts 10:22_reference_end_ _reference_start_Acts 10:28_reference_end_ _reference_start_Acts 10:31_reference_end_ _reference_start_Acts 10:33_reference_end_ _reference_start_Acts 10:34_reference_end_ _reference_start_Acts 10:38_reference_end_ _reference_start_Acts 10:40_reference_end_ _reference_start_Acts 10:41_reference_end_ _reference_start_Acts 10:42_reference_end_ _reference_start_Acts 10:46_reference_end_ _reference_start_Acts 11:1_reference_end_ _reference_start_Acts 11:9_reference_end_ _reference_start_Acts 11:17_reference_end_ _reference_start_Acts 11:18_reference_end_ _reference_start_Acts 11:23_reference_end_ _reference_start_Acts 12:5_reference_end_ _reference_start_Acts 12:23_reference_end_ _reference_start_Acts 12:24_reference_end_ _reference_start_Acts 13:5_reference_end_ _reference_start_Acts 13:7_reference_end_ _reference_start_Acts 13:16_reference_end_ _reference_start_Acts 13:17_reference_end_ _reference_start_Acts 13:21_reference_end_ _reference_start_Acts 13:23_reference_end_ _reference_start_Acts 13:26_reference_end_ _reference_start_Acts 13:30_reference_end_ _reference_start_Acts 13:32_reference_end_ _reference_start_Acts 13:36_reference_end_ _reference_start_Acts 13:37_reference_end_ _reference_start_Acts 13:43_reference_end_ _reference_start_Acts 13:44_reference_end_ _reference_start_Acts 13:46_reference_end_ _reference_start_Acts 13:48_reference_end_ _reference_start_Acts 14:15_reference_end_ _reference_start_Acts 14:26_reference_end_ _reference_start_Acts 14:27_reference_end_ _reference_start_Acts 15:4_reference_end_ _reference_start_Acts 15:7_reference_end_ _reference_start_Acts 15:8_reference_end_ _reference_start_Acts 15:10_reference_end_ _reference_start_Acts 15:12_reference_end_ _reference_start_Acts 15:14_reference_end_ _reference_start_Acts 15:19_reference_end_ _reference_start_Acts 16:10_reference_end_ _reference_start_Acts 16:14_reference_end_ _reference_start_Acts 16:17_reference_end_ _reference_start_Acts 16:25_reference_end_ _reference_start_Acts 16:34_reference_end_ _reference_start_Acts 17:13_reference_end_ _reference_start_Acts 17:24_reference_end_ _reference_start_Acts 17:27_reference_end_ _reference_start_Acts 17:29_reference_end_ _reference_start_Acts 17:30_reference_end_ _reference_start_Acts 18:7_reference_end_ _reference_start_Acts 18:11_reference_end_ _reference_start_Acts 18:13_reference_end_ _reference_start_Acts 18:21_reference_end_ _reference_start_Acts 18:26_reference_end_ _reference_start_Acts 19:11_reference_end_ _reference_start_Acts 20:21_reference_end_ _reference_start_Acts 20:24_reference_end_ _reference_start_Acts 20:27_reference_end_ _reference_start_Acts 20:28_reference_end_ _reference_start_Acts 20:32_reference_end_ _reference_start_Acts 21:19_reference_end_ _reference_start_Acts 21:20_reference_end_ _reference_start_Acts 22:3_reference_end_ _reference_start_Acts 22:14_reference_end_ _reference_start_Acts 23:1_reference_end_ _reference_start_Acts 23:3_reference_end_ _reference_start_Acts 23:4_reference_end_ _reference_start_Acts 24:14_reference_end_ _reference_start_Acts 24:15_reference_end_ _reference_start_Acts 24:16_reference_end_ _reference_start_Acts 26:6_reference_end_ _reference_start_Acts 26:8_reference_end_ _reference_start_Acts 26:18_reference_end_ _reference_start_Acts 26:20_reference_end_ _reference_start_Acts 26:22_reference_end_ _reference_start_Acts 26:29_reference_end_ _reference_start_Acts 27:23_reference_end_ _reference_start_Acts 27:24_reference_end_ _reference_start_Acts 27:25_reference_end_ _reference_start_Acts 27:35_reference_end_ _reference_start_Acts 28:15_reference_end_ _reference_start_Acts 28:28_reference_end_ ROM 1:1, 7 (2 occurrences), 8, 9, 10, 16, 17, 18, 19 (2 occurrences), 21 (2 occurrences), 23, 24, 25, 26, 28 (2 occurrences), 32; 2:2, 3, 4, 5, 11, 13, 16, 17, 23, 24, 29; 3:2, 3, 4, 5 (2 occurrences), 6, 7, 11, 18, 19, 21, 22, 23, 25, 29, 30; 4:2, 3, 6, 17, 20 (2 occurrences), 21 (Implied contextually); 5:1, 2, 5, 8, 9 (Implied contextually), 10, 11, 15; 6:10, 11, 13 (2 occurrences), 17, 22, 23; 7:4, 22, 25 (2 occurrences); 8:3, 7 (2 occurrences), 8, 9, 14 (2 occurrences), 16, 17, 19, 21, 27, 28, 31, 33 (2 occurrences), 34, 39; 9:5, 6, 8, 11, 14, 16, 20, 22, 26; 10:1, 2, 3 (2 occurrences), 9; 11:1, 2 (2 occurrences), 8, 21, 22 (2 occurrences), 23, 29, 30, 32, 33; 12:1 (2 occurrences), 2, 3; 13:1 (2 occurrences), 2, 4 (2 occur rences), 6; 14:3, 6 (2 occurrences), 10, 11, 12, 18, 20, 22; 15:5, 6, 7, 8, 9, 13, 15, 16, 17, 30, 32, 33; 16:20, 26, 27 _reference_start_Romans 1:1_reference_end_ _reference_start_Romans 1:7_reference_end_ _reference_start_Romans 1:8_reference_end_ _reference_start_Romans 1:9_reference_end_ _reference_start_Romans 1:10_reference_end_ _reference_start_Romans 1:16_reference_end_ _reference_start_Romans 1:17_reference_end_ _reference_start_Romans 1:18_reference_end_ _reference_start_Romans 1:19_reference_end_ _reference_start_Romans 1:21_reference_end_ _reference_start_Romans 1:23_reference_end_ _reference_start_Romans 1:24_reference_end_ _reference_start_Romans 1:25_reference_end_ _reference_start_Romans 1:26_reference_end_ _reference_start_Romans 1:28_reference_end_ _reference_start_Romans 1:32_reference_end_ _reference_start_Romans 2:2_reference_end_ _reference_start_Romans 2:3_reference_end_ _reference_start_Romans 2:4_reference_end_ _reference_start_Romans 2:5_reference_end_ _reference_start_Romans 2:1!1_reference_end_ _reference_start_Romans 2:13_reference_end_ _reference_start_Romans 2:16_reference_end_ _reference_start_Romans 2:17_reference_end_ _reference_start_Romans 2:23_reference_end_ _reference_start_Romans 2:24_reference_end_ _reference_start_Romans 2:29_reference_end_ _reference_start_Romans 3:2_reference_end_ _reference_start_Romans 3:3_reference_end_ _reference_start_Romans 3:4_reference_end_ _reference_start_Romans 3:5_reference_end_ _reference_start_Romans 3:6_reference_end_ _reference_start_Romans 3:7_reference_end_ _reference_start_Romans 3:11_reference_end_ _reference_start_Romans 3:18_reference_end_ _reference_start_Romans 3:19_reference_end_ _reference_start_Romans 3:21_reference_end_ _reference_start_Romans 3:22_reference_end_ _reference_start_Romans 3:23_reference_end_ _reference_start_Romans 3:25_reference_end_ _reference_start_Romans 3:29_reference_end_ _reference_start_Romans 3:30_reference_end_ _reference_start_Romans 4:2_reference_end_ _reference_start_Romans 4:3_reference_end_" _reference_start_Romans 4:6_reference_end_ _reference_start_Romans 4:17_reference_end_ _reference_start_Romans 4:20_reference_end_ _reference_start_Romans 4:21_reference_end_ _reference_start_Romans 5:1_reference_end_ _reference_start_Romans 5:2_reference_end_ _reference_start_Romans 5:5_reference_end_ _reference_start_Romans 5:8_reference_end_ _reference_start_Romans 5:9_reference_end_ _reference_start_Romans 5:10_reference_end_ _reference_start_Romans 5:11_reference_end_ _reference_start_Romans 5:15_reference_end_ _reference_start_Romans 6:10_reference_end_ _reference_start_Romans 6:11_reference_end_ _reference_start_Romans 6:13_reference_end_ _reference_start_Romans 6:17_reference_end_ _reference_start_Romans 6:22_reference_end_ _reference_start_Romans 6:23_reference_end_ _reference_start_Romans 7:4_reference_end_ _reference_start_Romans 7:22_reference_end_ _reference_start_Romans 7:25_reference_end_ _reference_start_Romans 8:3_reference_end_ _reference_start_Romans 8:7_reference_end_ _reference_start#_Romans 8:8_reference_end_ _reference_start_Romans 8:9_reference_end_ _reference_start_Romans 8:14_reference_end_ _reference_start_Romans 8:16_reference_end_ _reference_start_Romans 8:17_reference_end_ _reference_start_Romans 8:19_reference_end_ _reference_start_Romans 8:21_reference_end_ _reference_start_Romans 8:27_reference_end_ _reference_start_Romans 8:28_reference_end_ _reference_start_Romans 8:31_reference_end_ _reference_start_Romans 8:33_reference_end_ _reference_start_Romans 8:34_reference_end_ _reference_start_Romans 8:39_reference_end_ _reference_start_Romans 9:5_reference_end_ _reference_start_Romans 9:6_reference_end_ _reference_start_Romans 9:8_reference_end_ _reference_start_Romans 9:11_reference_end_ _reference_start_Romans 9:14_reference_end_ _reference_start_Romans 9:16_reference_end_ _reference_start_Romans 9:20_reference_end_ _reference_start_Romans 9:22_reference_end_ _reference_start_Romans 9:26_reference_end_ _reference_start_Romans 10:1_reference_end_ _reference_start_Romans 10:2_$reference_end_ _reference_start_Romans 10:3_reference_end_ _reference_start_Romans 10:9_reference_end_ _reference_start_Romans 11:1_reference_end_ _reference_start_Romans 11:2_reference_end_ _reference_start_Romans 11:8_reference_end_ _reference_start_Romans 11:21_reference_end_ _reference_start_Romans 11:22_reference_end_ _reference_start_Romans 11:23_reference_end_ _reference_start_Romans 11:29_reference_end_ _reference_start_Romans 11:30_reference_end_ _reference_start_Romans 11:32_reference_end_ _reference_start_Romans 11:33_reference_end_ _reference_start_Romans 12:1_reference_end_ _reference_start_Romans 12:2_reference_end_ _reference_start_Romans 12:3_reference_end_ _reference_start_Romans 13:1_reference_end_ _reference_start_Romans 13:2_reference_end_ _reference_start_Romans 13:4_reference_end_ _reference_start_Romans 13:6_reference_end_ _reference_start_Romans 14:3_reference_end_ _reference_start_Romans 14:6_reference_end_ _reference_start_Romans 14:10_reference_end_ _reference_start_Romans 14:11%_reference_end_ _reference_start_Romans 14:12_reference_end_ _reference_start_Romans 14:18_reference_end_ _reference_start_Romans 14:20_reference_end_ _reference_start_Romans 14:22_reference_end_ _reference_start_Romans 15:5_reference_end_ _reference_start_Romans 15:6_reference_end_ _reference_start_Romans 15:7_reference_end_ _reference_start_Romans 15:8_reference_end_ _reference_start_Romans 15:9_reference_end_ _reference_start_Romans 15:13_reference_end_ _reference_start_Romans 15:15_reference_end_ _reference_start_Romans 15:16_reference_end_ _reference_start_Romans 15:17_reference_end_ _reference_start_Romans 15:30_reference_end_ _reference_start_Romans 15:32_reference_end_ _reference_start_Romans 15:33_reference_end_ _reference_start_Romans 16:20_reference_end_ _reference_start_Romans 16:26_reference_end_ _reference_start_Romans 16:27_reference_end_ 1CO 1:1, 2, 3, 4 (2 occurrences), 9, 18, 20, 21 (3 occurrences), 24 (2 occurrences), 25 (2 occurrences), 27 (2 occurrences), 28, 29, 30; 2:1, 5, 7 (2 occu&rrences), 9, 10 (2 occurrences), 11 (2 occurrences), 12 (2 occurrences), 14; 3:6, 7, 9 (3 occurrences), 10, 16 (2 occurrences), 17 (3 occurrences), 19, 23; 4:1, 5, 9; 5:13; 6:11, 13, 14, 19, 20; 7:7, 15, 17, 19, 24, 40; 8:3, 4, 6, 8; 9:9, 21; 10:5, 13, 20, 31, 32; 11:3, 7, 12, 13, 16, 22; 12:3, 6, 18, 24, 28; 14:2, 18, 25 (2 occurrences), 28, 33, 36; 15:9, 10 (2 occurrences), 15 (2 occurrences), 24, 28, 34, 38, 57 _reference_start_1 Corinthians 1:1_reference_end_ _reference_start_1 Corinthians 1:2_reference_end_ _reference_start_1 Corinthians 1:3_reference_end_ _reference_start_1 Corinthians 1:4_reference_end_ _reference_start_1 Corinthians 1:9_reference_end_ _reference_start_1 Corinthians 1:18_reference_end_ _reference_start_1 Corinthians 1:20_reference_end_ _reference_start_1 Corinthians 1:21_reference_end_ _reference_start_1 Corinthians 1:24_reference_end_ _reference_start_1 Corinthians 1:25_reference_end_ _reference_start_1 Corinthians 1:27_reference_end_ _reference_start_1 Corinthians 1:28_reference_'end_ _reference_start_1 Corinthians 1:29_reference_end_ _reference_start_1 Corinthians 1:30_reference_end_ _reference_start_1 Corinthians 2:1_reference_end_ _reference_start_1 Corinthians 2:5_reference_end_ _reference_start_1 Corinthians 2:7_reference_end_ _reference_start_1 Corinthians 2:9_reference_end_ _reference_start_1 Corinthians 2:10_reference_end_ _reference_start_1 Corinthians 2:11_reference_end_ _reference_start_1 Corinthians 2:12_reference_end_ _reference_start_1 Corinthians 2:14_reference_end_ _reference_start_1 Corinthians 3:6_reference_end_ _reference_start_1 Corinthians 3:7_reference_end_ _reference_start_1 Corinthians 3:9_reference_end_ _reference_start_1 Corinthians 3:10_reference_end_ _reference_start_1 Corinthians 3:16_reference_end_ _reference_start_1 Corinthians 3:17_reference_end_ _reference_start_1 Corinthians 3:19_reference_end_ _reference_start_1 Corinthians 3:23_reference_end_ _reference_start_1 Corinthians 4:1_reference_end_ _reference_start_1 Corinthians 4:5_reference_end_ _ref(erence_start_1 Corinthians 4:9_reference_end_ _reference_start_1 Corinthians 5:13_reference_end_ _reference_start_1 Corinthians 6:11_reference_end_ _reference_start_1 Corinthians 6:13_reference_end_ _reference_start_1 Corinthians 6:14_reference_end_ _reference_start_1 Corinthians 6:19_reference_end_ _reference_start_1 Corinthians 6:20_reference_end_ _reference_start_1 Corinthians 7:7_reference_end_ _reference_start_1 Corinthians 7:15_reference_end_ _reference_start_1 Corinthians 7:17_reference_end_ _reference_start_1 Corinthians 7:19_reference_end_ _reference_start_1 Corinthians 7:24_reference_end_ _reference_start_1 Corinthians 7:40_reference_end_ _reference_start_1 Corinthians 8:3_reference_end_ _reference_start_1 Corinthians 8:4_reference_end_ _reference_start_1 Corinthians 8:6_reference_end_ _reference_start_1 Corinthians 8:8_reference_end_ _reference_start_1 Corinthians 9:9_reference_end_ _reference_start_1 Corinthians 9:21_reference_end_ _reference_start_1 Corinthians 10:5_reference_end_ _reference_)start_1 Corinthians 10:13_reference_end_ _reference_start_1 Corinthians 10:20_reference_end_ _reference_start_1 Corinthians 10:31_reference_end_ _reference_start_1 Corinthians 10:32_reference_end_ _reference_start_1 Corinthians 11:3_reference_end_ _reference_start_1 Corinthians 11:7_reference_end_ _reference_start_1 Corinthians 11:12_reference_end_ _reference_start_1 Corinthians 11:13_reference_end_ _reference_start_1 Corinthians 11:16_reference_end_ _reference_start_1 Corinthians 11:22_reference_end_ _reference_start_1 Corinthians 12:3_reference_end_ _reference_start_1 Corinthians 12:6_reference_end_ _reference_start_1 Corinthians 12:18_reference_end_ _reference_start_1 Corinthians 12:24_reference_end_ _reference_start_1 Corinthians 12:28_reference_end_ _reference_start_1 Corinthians 14:2_reference_end_ _reference_start_1 Corinthians 14:18_reference_end_ _reference_start_1 Corinthians 14:25_reference_end_ _reference_start_1 Corinthians 14:28_reference_end_ _reference_start_1 Corinthians 14:33_reference_e*nd_ _reference_start_1 Corinthians 14:36_reference_end_ _reference_start_1 Corinthians 15:9_reference_end_ _reference_start_1 Corinthians 15:10_reference_end_ _reference_start_1 Corinthians 15:15_reference_end_ _reference_start_1 Corinthians 15:24_reference_end_ _reference_start_1 Corinthians 15:28_reference_end_ _reference_start_1 Corinthians 15:34_reference_end_ _reference_start_1 Corinthians 15:38_reference_end_ _reference_start_1 Corinthians 15:57_reference_end_ 2CO 1:1 (2 occurrences), 2, 3 (2 occurrences), 4, 9, 12, 18, 20 (2 occurrences), 21, 23; 2:14, 15, 17 (3 occurrences); 3:3, 4, 5; 4:2 (2 occurrences), 4, 6 (2 occurrences), 7, 15; 5:1, 5, 11, 13, 18, 19, 20 (2 occurrences), 21; 6:1, 4, 7, 16 (4 occurrences); 7:1, 6, 9 (literally: God grief), 10 (literally: God grief), 11 (literally: God grief), 12; 8:1, 5, 16; 9:7, 8, 11, 12, 13, 14, 15; 10:4, 5, 13; 11:2, 7, 11, 31; 12:2, 3, 19, 21; 13:4 (2 occurrences), 7, 11, 14 (verse 13 in Greek) _reference_start_2 Corinthians 1:1_reference_end_ _referenc+e_start_2 Corinthians 1:2_reference_end_ _reference_start_2 Corinthians 1:3_reference_end_ _reference_start_2 Corinthians 1:4_reference_end_ _reference_start_2 Corinthians 1:9_reference_end_ _reference_start_2 Corinthians 1:12_reference_end_ _reference_start_2 Corinthians 1:18_reference_end_ _reference_start_2 Corinthians 1:20_reference_end_ _reference_start_2 Corinthians 1:21_reference_end_ _reference_start_2 Corinthians 1:23_reference_end_ _reference_start_2 Corinthians 2:14_reference_end_ _reference_start_2 Corinthians 2:15_reference_end_ _reference_start_2 Corinthians 2:17_reference_end_ _reference_start_2 Corinthians 3:3_reference_end_ _reference_start_2 Corinthians 3:4_reference_end_ _reference_start_2 Corinthians 3:5_reference_end_ _reference_start_2 Corinthians 4:2_reference_end_ _reference_start_2 Corinthians 4:4_reference_end_ _reference_start_2 Corinthians 4:6_reference_end_ _reference_start_2 Corinthians 4:7_reference_end_ _reference_start_2 Corinthians 4:15_reference_end_ _reference_start_2 C,orinthians 5:1_reference_end_ _reference_start_2 Corinthians 5:5_reference_end_ _reference_start_2 Corinthians 5:11_reference_end_ _reference_start_2 Corinthians 5:13_reference_end_ _reference_start_2 Corinthians 5:18_reference_end_ _reference_start_2 Corinthians 5:19_reference_end_ _reference_start_2 Corinthians 5:20_reference_end_ _reference_start_2 Corinthians 5:21_reference_end_ _reference_start_2 Corinthians 6:1_reference_end_ _reference_start_2 Corinthians 6:4_reference_end_ _reference_start_2 Corinthians 6:7_reference_end_ _reference_start_2 Corinthians 6:16_reference_end_ _reference_start_2 Corinthians 7:1_reference_end_ _reference_start_2 Corinthians 7:6_reference_end_ _reference_start_2 Corinthians 7:9_reference_end_ _reference_start_2 Corinthians 7:10_reference_end_ _reference_start_2 Corinthians 7:11_reference_end_ _reference_start_2 Corinthians 7:12_reference_end_ _reference_start_2 Corinthians 8:1_reference_end_ _reference_start_2 Corinthians 8:5_reference_end_ _reference_start_2 Corinthians- 8:16_reference_end_ _reference_start_2 Corinthians 9:7_reference_end_ _reference_start_2 Corinthians 9:8_reference_end_ _reference_start_2 Corinthians 9:11_reference_end_ _reference_start_2 Corinthians 9:12_reference_end_ _reference_start_2 Corinthians 9:13_reference_end_ _reference_start_2 Corinthians 9:14_reference_end_ _reference_start_2 Corinthians 9:15_reference_end_ _reference_start_2 Corinthians 10:4_reference_end_ _reference_start_2 Corinthians 10:5_reference_end_ _reference_start_2 Corinthians 10:13_reference_end_ _reference_start_2 Corinthians 11:2_reference_end_ _reference_start_2 Corinthians 11:7_reference_end_ _reference_start_2 Corinthians 11:11_reference_end_ _reference_start_2 Corinthians 11:31_reference_end_ _reference_start_2 Corinthians 12:2_reference_end_ _reference_start_2 Corinthians 12:3_reference_end_ _reference_start_2 Corinthians 12:19_reference_end_ _reference_start_2 Corinthians 12:21_reference_end_ _reference_start_2 Corinthians 13:4_reference_end_ _reference_start_2 Corinthi.ans 13:7_reference_end_ _reference_start_2 Corinthians 13:11_reference_end_ _reference_start_2 Corinthians 13:14_reference_end_ GAL 1:1, 3, 4, 10, 13, 20, 24; 2:6, 19, 21; 3:6, 8, 11, 17, 18, 20, 21, 26; 4:4, 6, 7, 8, 9 (2 occurrences), 14; 6:7, 16 _reference_start_Galatians 1:1_reference_end_ _reference_start_Galatians 1:3_reference_end_ _reference_start_Galatians 1:4_reference_end_ _reference_start_Galatians 1:10_reference_end_ _reference_start_Galatians 1:13_reference_end_ _reference_start_Galatians 1:20_reference_end_ _reference_start_Galatians 1:24_reference_end_ _reference_start_Galatians 2:6_reference_end_ _reference_start_Galatians 2:19_reference_end_ _reference_start_Galatians 2:21_reference_end_ _reference_start_Galatians 3:6_reference_end_ _reference_start_Galatians 3:8_reference_end_ _reference_start_Galatians 3:11_reference_end_ _reference_start_Galatians 3:17_reference_end_ _reference_start_Galatians 3:18_reference_end_ _reference_start_Galatians 3:20_reference_end_ _reference_start_Galatian/s 3:21_reference_end_ _reference_start_Galatians 3:26_reference_end_ _reference_start_Galatians 4:4_reference_end_ _reference_start_Galatians 4:6_reference_end_ _reference_start_Galatians 4:7_reference_end_ _reference_start_Galatians 4:8_reference_end_ _reference_start_Galatians 4:9_reference_end_ _reference_start_Galatians 4:14_reference_end_ _reference_start_Galatians 6:7_reference_end_ _reference_start_Galatians 6:16_reference_end_ _reference_start_Ephesians 1:1_reference_end_ _reference_start_Ephesians 1:2_reference_end_ _reference_start_Ephesians 1:3_reference_end_ _reference_start_Ephesians 1:17_reference_end_ _reference_start_Ephesians 2:4_reference_end_ _reference_start_Ephesians 2:8_reference_end_ _reference_start_Ephesians 2:10_reference_end_ _reference_start_Ephesians 2:16_reference_end_ _reference_start_Ephesians 2:19_reference_end_ _reference_start_Ephesians 2:22_reference_end_ _reference_start_Ephesians 3:2_reference_end_ _reference_start_Ephesians 3:7_reference_end_ _reference_start_Ephesia0ns 3:9_reference_end_ _reference_start_Ephesians 3:10_reference_end_ _reference_start_Ephesians 3:19_reference_end_ _reference_start_Ephesians 4:6_reference_end_ _reference_start_Ephesians 4:18_reference_end_ _reference_start_Ephesians 4:24_reference_end_ _reference_start_Ephesians 4:30_reference_end_ _reference_start_Ephesians 4:32_reference_end_ _reference_start_Ephesians 5:1_reference_end_ _reference_start_Ephesians 5:2_reference_end_ _reference_start_Ephesians 5:5_reference_end_ _reference_start_Ephesians 5:6_reference_end_ _reference_start_Ephesians 5:20_reference_end_ _reference_start_Ephesians 6:6_reference_end_ _reference_start_Ephesians 6:11_reference_end_ _reference_start_Ephesians 6:13_reference_end_ _reference_start_Ephesians 6:17_reference_end_ _reference_start_Ephesians 6:23_reference_end_ PHP 1:2, 3, 8, 11, 14, 28; 2:6 (2 occurrences), 9, 11, 13, 15, 27; 3:3, 9, 14, 15; 4:6, 7, 9, 18, 19, 20 _reference_start_Philippians 1:2_reference_end_ _reference_start_Philippians 1:3_reference_end_ _ref1erence_start_Philippians 1:8_reference_end_ _reference_start_Philippians 1:11_reference_end_ _reference_start_Philippians 1:14_reference_end_ _reference_start_Philippians 1:28_reference_end_ _reference_start_Philippians 2:6_reference_end_ _reference_start_Philippians 2:9_reference_end_ _reference_start_Philippians 2:11_reference_end_ _reference_start_Philippians 2:13_reference_end_ _reference_start_Philippians 2:15_reference_end_ _reference_start_Philippians 2:27_reference_end_ _reference_start_Philippians 3:3_reference_end_ _reference_start_Philippians 3:9_reference_end_ _reference_start_Philippians 3:14_reference_end_ _reference_start_Philippians 3:15_reference_end_ _reference_start_Philippians 4:6_reference_end_ _reference_start_Philippians 4:7_reference_end_ _reference_start_Philippians 4:9_reference_end_ _reference_start_Philippians 4:18_reference_end_ _reference_start_Philippians 4:19_reference_end_ _reference_start_Philippians 4:20_reference_end_ COL 1:1, 2, 3, 6, 10, 15, 25 (2 occurrences), 27; 2:22, 12, 13 (Implied contextually), 19; 3:1, 3, 6, 12, 16, 17; 4:3, 12 _reference_start_Colossians 1:1_reference_end_ _reference_start_Colossians 1:2_reference_end_ _reference_start_Colossians 1:3_reference_end_ _reference_start_Colossians 1:6_reference_end_ _reference_start_Colossians 1:10_reference_end_ _reference_start_Colossians 1:15_reference_end_ _reference_start_Colossians 1:25_reference_end_ _reference_start_Colossians 1:27_reference_end_ _reference_start_Colossians 2:2_reference_end_ _reference_start_Colossians 2:12_reference_end_ _reference_start_Colossians 2:13_reference_end_ _reference_start_Colossians 2:19_reference_end_ _reference_start_Colossians 3:1_reference_end_ _reference_start_Colossians 3:3_reference_end_ _reference_start_Colossians 3:6_reference_end_ _reference_start_Colossians 3:12_reference_end_ _reference_start_Colossians 3:16_reference_end_ _reference_start_Colossians 3:17_reference_end_ _reference_start_Colossians 4:3_reference_end_ _reference_start_Colossians 4:12_reference_end_ 31TH 1:1, 2, 3, 4, 8, 9 (2 occurrences); 2:2 (2 occurrences), 4 (2 occurrences), 5, 8, 9, 10, 12, 13 (3 occurrences), 14, 15; 3:2, 9 (2 occurrences), 11, 13; 4:1, 3, 5, 7, 8, 14, 16; 5:9, 18, 23 _reference_start_1 Thessalonians 1:1_reference_end_ _reference_start_1 Thessalonians 1:2_reference_end_ _reference_start_1 Thessalonians 1:3_reference_end_ _reference_start_1 Thessalonians 1:4_reference_end_ _reference_start_1 Thessalonians 1:8_reference_end_ _reference_start_1 Thessalonians 1:9_reference_end_ _reference_start_1 Thessalonians 2:2_reference_end_ _reference_start_1 Thessalonians 2:4_reference_end_ _reference_start_1 Thessalonians 2:5_reference_end_ _reference_start_1 Thessalonians 2:8_reference_end_ _reference_start_1 Thessalonians 2:9_reference_end_ _reference_start_1 Thessalonians 2:10_reference_end_ _reference_start_1 Thessalonians 2:12_reference_end_ _reference_start_1 Thessalonians 2:13_reference_end_ _reference_start_1 Thessalonians 2:14_reference_end_ _reference_start_1 Thessalonians 2:15_refe4rence_end_ _reference_start_1 Thessalonians 3:2_reference_end_ _reference_start_1 Thessalonians 3:9_reference_end_ _reference_start_1 Thessalonians 3:11_reference_end_ _reference_start_1 Thessalonians 3:13_reference_end_ _reference_start_1 Thessalonians 4:1_reference_end_ _reference_start_1 Thessalonians 4:3_reference_end_ _reference_start_1 Thessalonians 4:5_reference_end_ _reference_start_1 Thessalonians 4:7_reference_end_ _reference_start_1 Thessalonians 4:8_reference_end_ _reference_start_1 Thessalonians 4:14_reference_end_ _reference_start_1 Thessalonians 4:16_reference_end_ _reference_start_1 Thessalonians 5:9_reference_end_ _reference_start_1 Thessalonians 5:18_reference_end_ _reference_start_1 Thessalonians 5:23_reference_end_ 2TH 1:1, 2, 3, 4, 5 (2 occurrences), 6, 8, 11, 12; 2:4 (2 occurrences), 11, 13 (2 occurrences), 16; 3:5 _reference_start_2 Thessalonians 1:1_reference_end_ _reference_start_2 Thessalonians 1:2_reference_end_ _reference_start_2 Thessalonians 1:3_reference_end_ _reference_star5t_2 Thessalonians 1:4_reference_end_ _reference_start_2 Thessalonians 1:5_reference_end_ _reference_start_2 Thessalonians 1:6_reference_end_ _reference_start_2 Thessalonians 1:8_reference_end_ _reference_start_2 Thessalonians 1:11_reference_end_ _reference_start_2 Thessalonians 1:12_reference_end_ _reference_start_2 Thessalonians 2:4_reference_end_ _reference_start_2 Thessalonians 2:11_reference_end_ _reference_start_2 Thessalonians 2:13_reference_end_ _reference_start_2 Thessalonians 2:16_reference_end_ _reference_start_2 Thessalonians 3:5_reference_end_ 1TI 1:1, 2, 4, 11, 17; 2:3, 5 (2 occurrences); 3:5, 15 (2 occurrences); 4:3, 4, 5, 10; 5:4, 5, 21; 6:1, 11, 13, 17 _reference_start_1 Timothy 1:1_reference_end_ _reference_start_1 Timothy 1:2_reference_end_ _reference_start_1 Timothy 1:4_reference_end_ _reference_start_1 Timothy 1:11_reference_end_ _reference_start_1 Timothy 1:17_reference_end_ _reference_start_1 Timothy 2:3_reference_end_ _reference_start_1 Timothy 2:5_reference_end_ _reference_start_1 6Timothy 3:5_reference_end_ _reference_start_1 Timothy 3:15_reference_end_ _reference_start_1 Timothy 4:3_reference_end_ _reference_start_1 Timothy 4:4_reference_end_ _reference_start_1 Timothy 4:5_reference_end_ _reference_start_1 Timothy 4:10_reference_end_ _reference_start_1 Timothy 5:4_reference_end_ _reference_start_1 Timothy 5:5_reference_end_ _reference_start_1 Timothy 5:21_reference_end_ _reference_start_1 Timothy 6:1_reference_end_ _reference_start_1 Timothy 6:11_reference_end_ _reference_start_1 Timothy 6:13_reference_end_ _reference_start_1 Timothy 6:17_reference_end_ _reference_start_2 Timothy 1:1_reference_end_ _reference_start_2 Timothy 1:2_reference_end_ _reference_start_2 Timothy 1:3_reference_end_ _reference_start_2 Timothy 1:6_reference_end_ _reference_start_2 Timothy 1:7_reference_end_ _reference_start_2 Timothy 1:8_reference_end_ _reference_start_2 Timothy 2:9_reference_end_ _reference_start_2 Timothy 2:15_reference_end_ _reference_start_2 Timothy 2:19_reference_end_ _reference_start_2 7Timothy 2:25_reference_end_ _reference_start_2 Timothy 3:17_reference_end_ _reference_start_2 Timothy 4:1_reference_end_ TIT 1:1 (2 occurrences), 2, 3, 4, 7, 16; 2:5, 10, 11, 13; 3:4, 8 _reference_start_Titus 1:1_reference_end_ _reference_start_Titus 1:2_reference_end_ _reference_start_Titus 1:3_reference_end_ _reference_start_Titus 1:4_reference_end_ _reference_start_Titus 1:7_reference_end_ _reference_start_Titus 1:16_reference_end_ _reference_start_Titus 2:5_reference_end_ _reference_start_Titus 2:10_reference_end_ _reference_start_Titus 2:11_reference_end_ _reference_start_Titus 2:13_reference_end_ _reference_start_Titus 3:4_reference_end_ _reference_start_Titus 3:8_reference_end_ _reference_start_Philemon 1:3_reference_end_ _reference_start_Philemon 1:4_reference_end_ HEB 1:1, 6, 8, 9 (2 occurrences); 2:4, 5, 9, 13, 17; 3:4, 12; 4:4, 9, 10, 12; 5:1, 4, 10, 12; 6:1, 3, 5, 7, 10, 13, 17, 18; 7:1, 19, 25; 8:10; 9:14 (2 occurrences), 20, 24; 10:7, 12, 21, 31, 36; 11:3, 4 (2 occurrences), 5 (2 occurrences8), 6, 10, 16 (2 occurrences), 19, 25, 40; 12:2, 7, 15, 22, 23, 28, 29; 13:4, 7, 15, 16, 20 _reference_start_Hebrews 1:1_reference_end_ _reference_start_Hebrews 1:6_reference_end_ _reference_start_Hebrews 1:8_reference_end_ _reference_start_Hebrews 1:9_reference_end_ _reference_start_Hebrews 2:4_reference_end_ _reference_start_Hebrews 2:5_reference_end_ _reference_start_Hebrews 2:9_reference_end_ _reference_start_Hebrews 2:13_reference_end_ _reference_start_Hebrews 2:17_reference_end_ _reference_start_Hebrews 3:4_reference_end_ _reference_start_Hebrews 3:12_reference_end_ _reference_start_Hebrews 4:4_reference_end_ _reference_start_Hebrews 4:9_reference_end_ _reference_start_Hebrews 4:10_reference_end_ _reference_start_Hebrews 4:12_reference_end_ _reference_start_Hebrews 5:1_reference_end_ _reference_start_Hebrews 5:4_reference_end_ _reference_start_Hebrews 5:10_reference_end_ _reference_start_Hebrews 5:12_reference_end_ _reference_start_Hebrews 6:1_reference_end_ _reference_start_Hebrews 6:3_reference_end9_ _reference_start_Hebrews 6:5_reference_end_ _reference_start_Hebrews 6:7_reference_end_ _reference_start_Hebrews 6:10_reference_end_ _reference_start_Hebrews 6:13_reference_end_ _reference_start_Hebrews 6:17_reference_end_ _reference_start_Hebrews 6:18_reference_end_ _reference_start_Hebrews 7:1_reference_end_ _reference_start_Hebrews 7:19_reference_end_ _reference_start_Hebrews 7:25_reference_end_ _reference_start_Hebrews 8:10_reference_end_ _reference_start_Hebrews 9:14_reference_end_ _reference_start_Hebrews 9:20_reference_end_ _reference_start_Hebrews 9:24_reference_end_ _reference_start_Hebrews 10:7_reference_end_ _reference_start_Hebrews 10:12_reference_end_ _reference_start_Hebrews 10:21_reference_end_ _reference_start_Hebrews 10:31_reference_end_ _reference_start_Hebrews 10:36_reference_end_ _reference_start_Hebrews 11:3_reference_end_ _reference_start_Hebrews 11:4_reference_end_ _reference_start_Hebrews 11:5_reference_end_ _reference_start_Hebrews 11:6_reference_end_ _reference_start_Hebrews 11::10_reference_end_ _reference_start_Hebrews 11:16_reference_end_ _reference_start_Hebrews 11:19_reference_end_ _reference_start_Hebrews 11:25_reference_end_ _reference_start_Hebrews 11:40_reference_end_ _reference_start_Hebrews 12:2_reference_end_ _reference_start_Hebrews 12:7_reference_end_ _reference_start_Hebrews 12:15_reference_end_ _reference_start_Hebrews 12:22_reference_end_ _reference_start_Hebrews 12:23_reference_end_ _reference_start_Hebrews 12:28_reference_end_ _reference_start_Hebrews 12:29_reference_end_ _reference_start_Hebrews 13:4_reference_end_ _reference_start_Hebrews 13:7_reference_end_ _reference_start_Hebrews 13:15_reference_end_ _reference_start_Hebrews 13:16_reference_end_ _reference_start_Hebrews 13:20_reference_end_ JAS 1:1, 5, 13 (2 occurrences), 20, 27; 2:5, 19, 23 (2 occurrences); 3:9; 4:4 (2 occurrences), 6, 7, 8 _reference_start_James 1:1_reference_end_ _reference_start_James 1:5_reference_end_ _reference_start_James 1:13_reference_end_ _reference_start_James 1:20_reference_e;nd_ _reference_start_James 1:27_reference_end_ _reference_start_James 2:5_reference_end_ _reference_start_James 2:19_reference_end_ _reference_start_James 2:23_reference_end_ _reference_start_James 3:9_reference_end_ _reference_start_James 4:4_reference_end_ _reference_start_James 4:6_reference_end_ _reference_start_James 4:7_reference_end_ _reference_start_James 4:8_reference_end_ 1PE 1:2, 3, 5, 21 (2 occurrences), 23; 2:4, 5, 10, 12, 15, 16, 17, 19, 20; 3:4, 5, 17, 18, 20, 21, 22; 4:2, 6, 10, 11 (3 occurrences), 14, 16, 17 (2 occurrences), 19; 5:2, 5, 6, 10, 12 _reference_start_1 Peter 1:2_reference_end_ _reference_start_1 Peter 1:3_reference_end_ _reference_start_1 Peter 1:5_reference_end_ _reference_start_1 Peter 1:21_reference_end_ _reference_start_1 Peter 1:23_reference_end_ _reference_start_1 Peter 2:4_reference_end_ _reference_start_1 Peter 2:5_reference_end_ _reference_start_1 Peter 2:10_reference_end_ _reference_start_1 Peter 2:12_reference_end_ _reference_start_1 Peter 2:15_reference_end_ _refeference_start_1 John 3:10_reference_end_ _reference_start_1 John 3:17_reference_end_ _reference_start_1 John 3:20_reference_end_ _reference_start_1 John 3:21_reference_end_ _reference_start_1 John 4:1_reference_end_ _reference_start_1 John 4:2_reference_end_ _reference_start_1 John 4:3_reference_end_ _reference_start_1 John 4:4_reference_end_ _reference_start_1 John 4:6_reference_end_ _reference_start_1 John 4:7_reference_end_ _reference_start_1 John 4:8_reference_end_ _reference_start_1 John 4:9_reference_end_ _reference_start_1 John 4:10_reference_end_ _reference_start_1 John 4:11_reference_end_ _reference_start_1 John 4:12_reference_end_ _reference_start_1 John 4:15_reference_end_ _reference_start_1 John 4:16_reference_end_ _reference_start_1 John 4:20_reference_end_ _reference_start_1 John 4:21_reference_end_ _reference_start_1 John 5:1_reference_end_ _reference_start_1 John 5:2_reference_end_ _reference_start_1 John 5:3_reference_end_ _reference_start_1 John 5:4_reference_end_ _reference_start_1 John? 5:9_reference_end_ _reference_start_1 John 5:11_reference_end_ _reference_start_1 John 5:18_reference_end_ _reference_start_1 John 5:19_reference_end_ _reference_start_2 John 1:3_reference_end_ _reference_start_2 John 1:9_reference_end_ 3JN 1:6, 11 (2 occurrences) _reference_start_3 John 1:6_reference_end_ _reference_start_3 John 1:11_reference_end_ _reference_start_Jude 1:1_reference_end_ _reference_start_Jude 1:4_reference_end_ _reference_start_Jude 1:21_reference_end_ _reference_start_Jude 1:25_reference_end_ REV 1:1, 2, 6, 8, 9; 2:7; 3:1, 2, 12 (4 occurrences), 14; 4:5, 8, 11; 5:6, 9, 10; 6:9; 7:2, 3, 10, 11, 12, 15, 17; 8:2, 4; 9:4, 13; 10:7; 11:1, 11, 13, 16 (2 occurrences), 17, 19; 12:5, 6, 10 (2 occurrences), 17; 13:6; 14:4, 7, 10, 12, 19; 15:1, 2, 3 (2 occurrences), 7, 8; 16:1, 7, 9, 11, 14, 19, 21; 17:17 (2 occurrences); 18:5, 8, 20; 19:1, 4, 5, 6, 9, 10, 13, 15, 17; 20:4, 6; 21:2, 3 (2 occurrences), 7, 10, 11, 22, 23; 22:1, 3, 5, 6, 9, 18, 19 _reference_start_Revelation 1:1_reference_end_ _ref@erence_start_Revelation 1:2_reference_end_ _reference_start_Revelation 1:6_reference_end_ _reference_start_Revelation 1:8_reference_end_ _reference_start_Revelation 1:9_reference_end_ _reference_start_Revelation 2:7_reference_end_ _reference_start_Revelation 3:1_reference_end_ _reference_start_Revelation 3:2_reference_end_ _reference_start_Revelation 3:12_reference_end_ _reference_start_Revelation 3:14_reference_end_ _reference_start_Revelation 4:5_reference_end_ _reference_start_Revelation 4:8_reference_end_ _reference_start_Revelation 4:11_reference_end_ _reference_start_Revelation 5:6_reference_end_ _reference_start_Revelation 5:9_reference_end_ _reference_start_Revelation 5:10_reference_end_ _reference_start_Revelation 6:9_reference_end_ _reference_start_Revelation 7:2_reference_end_ _reference_start_Revelation 7:3_reference_end_ _reference_start_Revelation 7:10_reference_end_ _reference_start_Revelation 7:11_reference_end_ _reference_start_Revelation 7:12_reference_end_ _reference_start_Revelation 7:A15_reference_end_ _reference_start_Revelation 7:17_reference_end_ _reference_start_Revelation 8:2_reference_end_ _reference_start_Revelation 8:4_reference_end_ _reference_start_Revelation 9:4_reference_end_ _reference_start_Revelation 9:13_reference_end_ _reference_start_Revelation 10:7_reference_end_ _reference_start_Revelation 11:1_reference_end_ _reference_start_Revelation 11:11_reference_end_ _reference_start_Revelation 11:13_reference_end_ _reference_start_Revelation 11:16_reference_end_ _reference_start_Revelation 11:17_reference_end_ _reference_start_Revelation 11:19_reference_end_ _reference_start_Revelation 12:5_reference_end_ _reference_start_Revelation 12:6_reference_end_ _reference_start_Revelation 12:10_reference_end_ _reference_start_Revelation 12:17_reference_end_ _reference_start_Revelation 13:6_reference_end_ _reference_start_Revelation 14:4_reference_end_ _reference_start_Revelation 14:7_reference_end_ _reference_start_Revelation 14:10_reference_end_ _reference_start_Revelation 14:12_refBerence_end_ _reference_start_Revelation 14:19_reference_end_ _reference_start_Revelation 15:1_reference_end_ _reference_start_Revelation 15:2_reference_end_ _reference_start_Revelation 15:3_reference_end_ _reference_start_Revelation 15:7_reference_end_ _reference_start_Revelation 15:8_reference_end_ _reference_start_Revelation 16:1_reference_end_ _reference_start_Revelation 16:7_reference_end_ _reference_start_Revelation 16:9_reference_end_ _reference_start_Revelation 16:11_reference_end_ _reference_start_Revelation 16:14_reference_end_ _reference_start_Revelation 16:19_reference_end_ _reference_start_Revelation 16:21_reference_end_ _reference_start_Revelation 17:17_reference_end_ _reference_start_Revelation 18:5_reference_end_ _reference_start_Revelation 18:8_reference_end_ _reference_start_Revelation 18:20_reference_end_ _reference_start_Revelation 19:1_reference_end_ _reference_start_Revelation 19:4_reference_end_ _reference_start_Revelation 19:5_reference_end_ _reference_start_Revelation 19:6_referencCe_end_ _reference_start_Revelation 19:9_reference_end_ _reference_start_Revelation 19:10_reference_end_ _reference_start_Revelation 19:13_reference_end_ _reference_start_Revelation 19:15_reference_end_ _reference_start_Revelation 19:17_reference_end_ _reference_start_Revelation 20:4_reference_end_ _reference_start_Revelation 20:6_reference_end_ _reference_start_Revelation 21:2_reference_end_ _reference_start_Revelation 21:3_reference_end_ _reference_start_Revelation 21:7_reference_end_ _reference_start_Revelation 21:10_reference_end_ _reference_start_Revelation 21:11_reference_end_ _reference_start_Revelation 21:22_reference_end_ _reference_start_Revelation 21:23_reference_end_ _reference_start_Revelation 22:1_reference_end_ _reference_start_Revelation 22:3_reference_end_ _reference_start_Revelation 22:5_reference_end_ _reference_start_Revelation 22:6_reference_end_ _reference_start_Revelation 22:9_reference_end_ _reference_start_Revelation 22:18_reference_end_ _reference_start_Revelation 22:19_reference_Dend_ \gtrm daimonion \trnl daimonion _reference_start_Hebrews 1:3_reference_end_ _reference_start_Hebrews 8:1_reference_end_ \itrm God, by implication _reference_start_Matthew 15:5_reference_end_ _reference_start_Matthew 16:22_reference_end_ _reference_start_Mark 7:11_reference_end_ _reference_start_Luke 20:16_reference_end_ _reference_start_Romans 11:28_reference_end_ _reference_start_Romans 12:19_reference_end_ _reference_start_Romans 13:5_reference_end_ 1CO 15:27 (structure/verse 26 in Greek) _reference_start_1 Corinthians 15:27_reference_end_ _reference_start_2 Corinthians 4:1_reference_end_ _reference_start_Colossians 1:19_reference_end_ _reference_start_1 Thessalonians 2:16_reference_end_ HEB 1:5; 3:2 (literally: the house of his), 5 (literally: the house of his), 6 (literally: the house of his); 4:8; 11:2 _reference_start_Hebrews 1:5_reference_end_ _reference_start_Hebrews 3:2_reference_end_ _reference_start_Hebrews 3:5_reference_end_ _reference_start_Hebrews 3:6_reference_end_ _reference_start_HebErews 4:8_reference_end_ _reference_start_Hebrews 11:2_reference_end_ _reference_start_1 Peter 2:9_reference_end_ 1JN 5:16 (literally: He will give) _reference_start_1 John 5:16_reference_end_ \en2 2. Specifically, Son of God \gtrm qeov \trnl theos _reference_start_Matthew 4:3_reference_end_ _reference_start_Matthew 4:6_reference_end_ _reference_start_Matthew 8:29_reference_end_ _reference_start_Matthew 14:33_reference_end_ _reference_start_Matthew 16:16_reference_end_ _reference_start_Matthew 27:40_reference_end_ _reference_start_Matthew 27:54_reference_end_ MRK 1:1; 3:11; 5:7 (2 occurrences); 15:39 _reference_start_Mark 1:1_reference_end_ _reference_start_Mark 3:11_reference_end_ _reference_start_Mark 5:7_reference_end_ _reference_start_Mark 15:39_reference_end_ _reference_start_Luke 1:35_reference_end_ _reference_start_Luke 4:3_reference_end_ _reference_start_Luke 4:9_reference_end_ _reference_start_Luke 4:41_reference_end_ _reference_start_Luke 22:70_reference_end_ JHN 1:34, 49; 3:18; 5:25; 10:36; 11:4F (2 occurrences), 27; 19:7; 20:31 _reference_start_John 1:34_reference_end_ _reference_start_John 1:49_reference_end_ _reference_start_John 3:18_reference_end_ _reference_start_John 5:25_reference_end_ _reference_start_John 10:36_reference_end_ _reference_start_John 11:4_reference_end_ _reference_start_John 11:27_reference_end_ _reference_start_John 19:7_reference_end_ _reference_start_John 20:31_reference_end_ _reference_start_Acts 9:20_reference_end_ _reference_start_Romans 1:4_reference_end_ _reference_start_2 Corinthians 1:19_reference_end_ _reference_start_Galatians 2:20_reference_end_ _reference_start_Ephesians 4:13_reference_end_ _reference_start_Hebrews 4:14_reference_end_ _reference_start_Hebrews 6:6_reference_end_ _reference_start_Hebrews 7:3_reference_end_ _reference_start_Hebrews 10:29_reference_end_ 1JN 3:8; 4:15 (3 occurrences); 5:5, 10 (3 occurrences), 12, 13, 20 (2 occurrences) _reference_start_1 John 3:8_reference_end_ _reference_start_1 John 4:15_reference_end_ _reference_start_1 John 5:G5_reference_end_ _reference_start_1 John 5:10_reference_end_ _reference_start_1 John 5:12_reference_end_ _reference_start_1 John 5:13_reference_end_ _reference_start_1 John 5:20_reference_end_ _reference_start_Revelation 2:18_reference_end_ \en2 3. Specifically Kingdom of God (see KINGDOM) \en2 4. Specifically Word of God (not yet extracted) \en2 5. God related \en3 a. Divine, deity \gtrm qeiov \trnl theios _reference_start_Acts 17:29_reference_end_ _reference_start_2 Peter 1:3_reference_end_ _reference_start_2 Peter 1:4_reference_end_ \gtrm qeiotjv \trnl theiotæs ROM 1:20 (hapax legomenon) _reference_start_Romans 1:20_reference_end_ \en3 b. Theophilus \gtrm qeofilov \trnl theophilos _reference_start_Luke 1:3_reference_end_ _reference_start_Acts 1:1_reference_end_ \en3 c. Various \gtrm qeodidaktov \trnl theodidaktos 1TH 4:9 (hapax legomenon) _reference_start_1 Thessalonians 4:9_reference_end_ \gtrm qeomacov \trnl theomachos ACT 5:39 (hapax legomenon) _reference_start_Acts 5:39_reference_end_ \gtrm qeopneHustov \trnl theopneustos 2TI 3:16 (hapax legomenon) _reference_start_2 Timothy 3:16_reference_end_ \gtrm qeosebeia \trnl theosebeia 1TI 2:10 (hapax legomenon) _reference_start_1 Timothy 2:10_reference_end_ \gtrm qeosebjv \trnl theosebæs JHN 9:31 (hapax legomenon) _reference_start_John 9:31_reference_end_ \gtrm qeostugjv \trnl theostugæs ROM 1:30 (hapax legomenon) _reference_start_Romans 1:30_reference_end_ \gtrm qeotjv \trnl theotæs COL 2:9 (hapax legomenon) _reference_start_Colossians 2:9_reference_end_ \gtrm crjmatismov \trnl chræmatismos ROM 11:4 (hapax legomenon) _reference_start_Romans 11:4_reference_end_ \gtrm aqeov \trnl atheos EPH 2:12 (hapax legomenon) _reference_start_Ephesians 2:12_reference_end_ \gtrm filoqeov \trnl philotheos 2TI 3:4 (hapax legomenon) _reference_start_2 Timothy 3:4_reference_end_ \en2 6. Exhalted titles of God \en3 a. Almighty One \gtrm pantokratwr \trnl pantokratõr _reference_start_2 Corinthians 6:18_reference_end_ _reference_start_Revelation 1:8_reference_end_ _reference_start_Revelation 4:8_reference_end_ _reference_start_Revelation 11:17_reference_end_ _reference_start_Revelation 15:3_reference_end_ _reference_start_Revelation 16:7_reference_end_ _reference_start_Revelation 16:14_reference_end_ _reference_start_Revelation 19:6_reference_end_ _reference_start_Revelation 19:15_reference_end_ _reference_start_Revelation 21:22_reference_end_ \en3 b. The Most High \gtrm Ãyistov \trnl hupsistos _reference_start_Luke 1:32_reference_end_ _reference_start_Luke 1:35_reference_end_ _reference_start_Luke 1:76_reference_end_ _reference_start_Luke 6:35_reference_end_ _reference_start_Acts 7:48_reference_end_ \en3 c. The Blessed One, The Majestic One, The Excellent Glory \gtrm megalwsunj, tjv \trnl megalõsunæ, tæs _reference_start_Hebrews 1:3_reference_end_ _reference_start_Hebrews 8:1_reference_end_ \gtrm megaloprepjv doxa \trnl megaloprepæs doxa _reference_start_2 Peter 1:17_reference_end_ \gtrm eulogjtov, tjv \trnl eulogætos, tæs _reference_start_Mark 14:61_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( * + *  *' * * * * * * * * ~* }* |* {* z*" y* x* w*& v* u* t* s*4 r*( q*& p* o* n* m* l*N k*D j*@ i*/ h*% g* f* e* d* c* b* a* `) _)" ^)  ])  \)  [)  Z)  Y)  X)  W)  V)  U)  T)  S) R)  Q)! P) O) N) M)# L) K) ?tfXJ<. xj\N@2$|n`RD6( H+! G+ F+ E+ D+, C+* B+ A+ @+ ?+$ >+" =+! <+ ;+ :+ 9+ 8+3 7+$ 6+ 5+ 4+ 3+ 2+ 1+ 0+ /*5 .* -*/ ,*( +*# **E )*& (*% '*$ &* %* $*% #*+ "* !* * * * * * * * * * * * *  *  *  *  * *  *  * 1 * * *  *  *  ?tfXJ<. xj\N@2$|n`RD6( , ,' , , , , , , , ~, }, |, {, z, y, x, w, v, u, t, s, r,/ q,' p,$ o,! n, m, l, k, j, i, h, g+ f+ e+ d+ c+ b+ a+ `+ _+  ^+  ]+ + \+ 4 [+ ( Z+  Y+ # X+ ! W+ ! V+  U+  T+  S+  R+  Q+6 P+/ O+* N+) M+( L+ K+E J+. I+-bR 2RY`gnu|$+29@GNU\cjqx  '.5<CJQX_fmt{UpV/WnX-Yla+ejo)ph'f%d#UpV/WnX-Yla+ejo)ph'f%d#b!`^\ZXʁˁV΁ցT⁷ぷR聸PN  L  JI JHKMFNODPQBRS@TU>V}W<X{Y:Zy[8cwd6rus4ts2q0o.m,k*i(g&eǁ$ȁcɁ"΁aс ׁ_܁][ Y  W  U  $S % &Q ' 1O ?tfXJ<. xj\N@2$|n`RD6( F, E, D, C, B, 0 A, . @, , ?, + >, % =, $ <, ;,  :,  9,  8,  7,  6,  5,  4,  3,  2,  1,  0,  /,  .,  -, ,,  +, . *, * ), ) (, ( ', & &, " %, ! $,  #,  ",  !,  ,  ,  ,  , , , , ,8 ,7 ,. ,- ,* ,% ,# , , , , , , , , , , , ?tfXJ<. xj\N@2$|n`RD6( - - - - - - - ~- }- |- {- z- y- x- w, v, u,# t, s, r, q, p, o, n, m, l, k, j, i, h, g, f, e, d, c, b, a, `, _, ^, ], \, [, Z, Y, X, W, V, U, T, S, R, Q," P, O, N, M, L, K, J, I, H, G, ?tfXJ<. xj\N@2$|n`RD6( D- C- B- A- @- ?- >- =- <- ;- :- 9- 8- 7- 6- 5- 4- 3- 2- 1- 0- /- .- -- ,- +- *- )- (- '- &- %- $- #- "- !- - - - - - - - - - - - - - - - - - - - - - - - - - - - ?tfXJ<. xj\N@2$|n`RD6( . . . . . ~. }. |- {- z- y-! x- w- v- u- t- s- r- q- p- o- n- m- l- k- j- i- h- g- f- e-  d-  c-  b-  a-  `-  _-  ^- ! ]- \-  [-  Z-  Y-  X-  W-  V-  U-  T- S-  R-  Q-  P-  O-  N-  M-  L-  K- J-  I-  H-  G-' F-" E-! ?tfXJ<. xj\N@2$|n`RD6( B. A. @. ?.  >.  =.  <.  ;.  :.  9.  8. 7. 6.  5.  4. 3.  2.  1. 0.  /.  .. -. ,. +. *. ).( (. '. &. %. $. #. ". !. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ?tfXJ<. xj\N@2$|n`RD6( / /  /  ~/  }/  |/ {/ z/ y/  x/  w/ v/ u/ t/ s/ r/ q/ p/ o/ n/ m/ l/ k/ j/ i/ h/ g/ f/ e/ d/ c/ b/ a/ `/ _/ ^/ ]/ \/ [/ Z/ Y/ X/ W/ V/ U/ T/ S/ R/ Q/ P/ O/ N/ M.9 L.& K." J. I. H. G. F. E.$ D.! C. ?tfXJ<. xj\N@2$|n`RD6( @1 ?1 >1 =1 <1 ;1 :1 91 81 71 61 51 41 31 21 11 01 /1 .1 -1 ,1 +1 *1 )1 (1 '0 &0 %0 $0 #0 "0 !0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 /  / /  /  /  /  /  /  /  / /  /  ?tfXJ<. xj\N@2$|n`RD6( 4 ~4 }4 |4 {4 z4 y4 x4 w4 v4 u4 t4 s4 r4 q4 p4 o3 n3 m3 l3 k3 j3 i3 h3 g3 f3 e3 d3 c3 b3 a3 `3 _3 ^3 ]3 \3 [2 Z2 Y2 X2 W2 V2 U2 T2 S2 R2 Q2 P2 O2 N2 M2 L2 K2 J2 I2 H2 G2 F2 E1 D1 C1 B1 A1 ?tfXJ<. xj\N@2$|n`RD6( >8 =8 <8 ;7 :7 97 87 77 67 57 47 37 27 17 07 /6 .6 -6 ,6 +6 *6 )6 (6 '6 &6 %6 $6 #6 "6 !6 6 6 6 6 6 5 5 5 5 5 5 5 5 5 5 5 5 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 ?tfXJ<. xj\N@2$|n`RD6( }:  |:  {:  z:  y: ( x:  w:  v:  u: t:  s:  r:  q:  p: $ o:  n:  m: l:  k:  j:  i:  h: g: f: e: d: c: b: a: `: _: ^: ]: \: [: Z: Y: X: W: V: U: T: S: R: Q: P: O: N: M: L: K: J: I9 H9 G8 F8 E8 D8 C8 B8 A8 @8 ?8 ?tfXJ<. xj\N@2$|n`RD6( <> ;= := 9= 8= 7= 6= 5= 4< 3< 2< 1< 0< /< .< -< ,< +< *< )< (< '< &< %< $< #< "< !< < < < < < < < < < < < < < < ; ; ; ; ; ; ; ; ; ; ; ; ; :  :  :  :  :  :  :  ~:  ?tfXJ<. xj\N@2$|n`RD6( {B zB yB xB wB vB uB tB sB rB qB pB oB nB mB lB kB jB iB hB gB fB eA dA cA bA a@ `@ _? ^? ]> \> [> Z> Y> X> W> V> U> T> S> R> Q> P> O> N> M> L> K> J> I> H> G> F> E> D> C> B> A> @> ?> >> => ?tfXJ<. xj\N@2$|n`RD6( :B 9B 8B 7B 6B 5B 4B 3B 2B 1B 0B /B .B -B ,B +B *B )B (B 'B &B %B $B #B "B !B B B B B B B B B B B B B B B B B B B B B  B  B B  B  B  B  B  B B B  B  B B  B ~B }B |B ?tfXJ<. xj\N@2$|n`RD6( y> x> w> v> u> t> s> r:  q: p: o: n1 m0 l/ k- j,  i+ h+ g+  f+  e+ $ d+ c+ b+1 a+" `*F _*) ^* ]* \*# [)' Z) Y) X) W(6 V(( U( T(! S( R( Q( P> O< N:  M: L: K: J: I: H4 G3 F/ E. D-  C-  B-  A* @) ?( >( =: <: ;B ?tfXJ<. xj\N@2$|n`RD6( 8.  7.  6. 5. 4- 3- 2- 1-  0-  /- .- -- ,- +, *, )) () ') &)  %)# $) #) ") !( ( ( # ( )= = : : ,0 *# *L *# * B B B B B B B  B B / 7 1 -  3 - +  6 7 ,' 4 , * ~- }= |= {, zB F7CCGOSPEL, PROCLAIM THE GOSPELgospel, proclaim the gospel\o1 1. The joyful message of salvation \o1 2. The act of proclaiming, preaching a message \gtrm euaggelion \trnl euangelion \xref [L&N 33.217] \def the good news \gtrm euaggelizw \trnl euangelizõ \xref [L&N 33.215] \def tell the good news \gtrm proeuaggelizomai \trnl proeuangelizomai \xref [L&N 33.216] \def bring good news ahead of time (hapax legomenon) \en2 1. The joyful message of salvation \gtrm euaggelion \trnl euangelion _reference_start_Matthew 4:23_reference_end_ _reference_start_Matthew 9:35_reference_end_ _reference_start_Matthew 24:14_reference_end_ _reference_start_Matthew 26:13_reference_end_ _reference_start_Mark 1:1_reference_end_ _reference_star]!6-GODSgods\see (see IDOLS)^t_Mark 1:14_reference_end_ _reference_start_Mark 1:15_reference_end_ _reference_start_Mark 8:35_reference_end_ _reference_start_Mark 10:29_reference_end_ _reference_start_Mark 13:10_reference_end_ _reference_start_Mark 14:9_reference_end_ _reference_start_Mark 16:15_reference_end_ _reference_start_Acts 15:7_reference_end_ _reference_start_Acts 20:24_reference_end_ _reference_start_Romans 1:1_reference_end_ _reference_start_Romans 1:9_reference_end_ _reference_start_Romans 1:16_reference_end_ _reference_start_Romans 2:16_reference_end_ _reference_start_Romans 10:16_reference_end_ _reference_start_Romans 11:28_reference_end_ _reference_start_Romans 15:16_reference_end_ _reference_start_Romans 15:19_reference_end_ _reference_start_Romans 16:25_reference_end_ 1CO 4:15; 9:12, 14 (2 occurrences), 18 (2 occurrences), 23; 15:1 _reference_start_1 Corinthians 4:15_reference_end_ _reference_start_1 Corinthians 9:12_reference_end_ _reference_start_1 Corinthians 9:14_reference_end_ _reference_start_1 Corinthians 9:18__reference_end_ _reference_start_1 Corinthians 9:23_reference_end_ _reference_start_1 Corinthians 15:1_reference_end_ _reference_start_2 Corinthians 2:12_reference_end_ _reference_start_2 Corinthians 4:3_reference_end_ _reference_start_2 Corinthians 4:4_reference_end_ _reference_start_2 Corinthians 8:18_reference_end_ _reference_start_2 Corinthians 9:13_reference_end_ _reference_start_2 Corinthians 10:14_reference_end_ _reference_start_2 Corinthians 11:4_reference_end_ _reference_start_2 Corinthians 11:7_reference_end_ _reference_start_Galatians 1:6_reference_end_ _reference_start_Galatians 1:7_reference_end_ _reference_start_Galatians 1:11_reference_end_ _reference_start_Galatians 2:2_reference_end_ _reference_start_Galatians 2:5_reference_end_ _reference_start_Galatians 2:7_reference_end_ _reference_start_Galatians 2:14_reference_end_ _reference_start_Ephesians 1:13_reference_end_ _reference_start_Ephesians 3:6_reference_end_ _reference_start_Ephesians 6:15_reference_end_ _reference_start_Ephesians 6:19_`reference_end_ PHP 1:5, 7, 12, 16, 27 (2 occurrences); 2:22; 4:3, 15 _reference_start_Philippians 1:5_reference_end_ _reference_start_Philippians 1:7_reference_end_ _reference_start_Philippians 1:12_reference_end_ _reference_start_Philippians 1:16_reference_end_ _reference_start_Philippians 1:27_reference_end_ _reference_start_Philippians 2:22_reference_end_ _reference_start_Philippians 4:3_reference_end_ _reference_start_Philippians 4:15_reference_end_ _reference_start_Colossians 1:5_reference_end_ _reference_start_Colossians 1:23_reference_end_ _reference_start_1 Thessalonians 1:5_reference_end_ _reference_start_1 Thessalonians 2:2_reference_end_ _reference_start_1 Thessalonians 2:4_reference_end_ _reference_start_1 Thessalonians 2:8_reference_end_ _reference_start_1 Thessalonians 2:9_reference_end_ _reference_start_1 Thessalonians 3:2_reference_end_ _reference_start_2 Thessalonians 1:8_reference_end_ _reference_start_2 Thessalonians 2:14_reference_end_ _reference_start_1 Timothy 1:11_reference_end_ _reaference_start_2 Timothy 1:8_reference_end_ _reference_start_2 Timothy 1:10_reference_end_ _reference_start_2 Timothy 2:8_reference_end_ _reference_start_Philemon 1:13_reference_end_ _reference_start_1 Peter 4:17_reference_end_ _reference_start_Revelation 14:6_reference_end_ \itrm Good news implied _reference_start_Romans 1:3_reference_end_ _reference_start_Ephesians 3:7_reference_end_ _reference_start_2 Timothy 1:11_reference_end_ _reference_start_2 Timothy 2:9_reference_end_ \en2 2. The act of proclaiming, preaching a message \gtrm euaggelizw \trnl euangelizõ _reference_start_Matthew 11:5_reference_end_ _reference_start_Luke 1:19_reference_end_ _reference_start_Luke 2:10_reference_end_ _reference_start_Luke 3:18_reference_end_ _reference_start_Luke 4:18_reference_end_ _reference_start_Luke 4:43_reference_end_ _reference_start_Luke 7:22_reference_end_ _reference_start_Luke 8:1_reference_end_ _reference_start_Luke 9:6_reference_end_ _reference_start_Luke 16:16_reference_end_ _reference_start_Luke 20:1_refberence_end_ _reference_start_Acts 5:42_reference_end_ _reference_start_Acts 8:4_reference_end_ _reference_start_Acts 8:12_reference_end_ _reference_start_Acts 8:25_reference_end_ _reference_start_Acts 8:35_reference_end_ _reference_start_Acts 8:40_reference_end_ _reference_start_Acts 10:36_reference_end_ _reference_start_Acts 11:20_reference_end_ _reference_start_Acts 13:32_reference_end_ _reference_start_Acts 14:7_reference_end_ _reference_start_Acts 14:15_reference_end_ _reference_start_Acts 14:21_reference_end_ _reference_start_Acts 15:35_reference_end_ _reference_start_Acts 16:10_reference_end_ _reference_start_Acts 17:18_reference_end_ _reference_start_Romans 1:15_reference_end_ _reference_start_Romans 10:15_reference_end_ _reference_start_Romans 15:20_reference_end_ 1CO 1:17; 9:16 (2 occurrences), 18; 15:1 _reference_start_1 Corinthians 1:17_reference_end_ _reference_start_1 Corinthians 9:16_reference_end_ _reference_start_1 Corinthians 9:18_reference_end_ _reference_start_1 Corinthians 15:1_reference_end_ _reference_start_2 Corinthians 10:16_reference_end_ _reference_start_2 Corinthians 11:7_reference_end_ _reference_start_Galatians 1:8_reference_end_ _reference_start_Galatians 1:9_reference_end_ _reference_start_Galatians 1:11_reference_end_ _reference_start_Galatians 1:16_reference_end_ _reference_start_Galatians 1:23_reference_end_ _reference_start_Galatians 4:13_reference_end_ _reference_start_Ephesians 2:17_reference_end_ _reference_start_Ephesians 3:8_reference_end_ _reference_start_1 Thessalonians 3:6_reference_end_ _reference_start_Hebrews 4:2_reference_end_ _reference_start_Hebrews 4:6_reference_end_ _reference_start_1 Peter 1:12_reference_end_ _reference_start_1 Peter 1:25_reference_end_ _reference_start_1 Peter 4:6_reference_end_ _reference_start_Revelation 10:7_reference_end_ _reference_start_Revelation 14:6_reference_end_ \gtrm proeuaggelizomai \trnl proeuangelizomai _reference_start_Galatians 3:8_reference_end_ \itrm Good news implied _reference_start_1 Corinthians 15:2_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( w, v,* u* t* s*  r* q* p*+ o* n* m* l* k(  j7 i7 h1 g- fB e< d9 c7 b7 a7 `6 _5 ^5 ]4 \4 [4 Z4 Y4 X4 W3 V3 U2 T2 S2 R2 Q2 P2 O2 N2 M1 L1 K1 J1 I0 H0 G0 F0 E0 D0 C0 B/  A/  @/  ?/ >/ =/ </ ;/ :. 9.  ?tfXJ<. xj\N@2$|n`RD6( 68 57 47 36 26 15 05 /4 .4 -3 ,3 +2 *2 )1 (1 '0 &0 %/  $/ #. ". !- - . 0 B B  < < < : : 4 1 1 0 0 0 0 0 0 /  /  . .  .  . - -  - , , ,# , , , ~, },  |, $ {,( z,# y, x, f and strength, God's empowering \o2 c. God's grace as shown by special abilities he distributes \o2 d. God's grace in choosing a person to do a particular task \o2 e. The favorable attitude of one human being towards another \o2 f. God's grace shown to an individual by means of healing \o2 g. God's grace shown through forgiveness \o1 3. An act of kindness, goodwill, or favor \o1 4. Something good and helpful, a benefit \o1 5. Privilege, privileged position given because of God's goodwill \o1 6. Other senses of “charis”, not usually translated as “grace” in English \o2 a. Pleasing, attractive, and suitable speech \o2 b. Thanks, gratitude \o2 c. A privilege given by God to suffer for His sake \o2 d. Graced by God by revealing His grace through suffering \o2 e. A gift from God contingent upon human requests \o2 f. The judicial transferal of one being held as a criminal \o2 g. The most ultimate conveying of blessing, favor, and honor \gtrm cariv \trnl charis \xref [L&N g88.66] \def kindness \xref [L&N 57.103] \def gift \xref [L&N 33.350] \def thanks \xref [L&N 25.89] \def good will \gtrm carisma \trnl charisma \xref [L&N 57.103] \def gift \gtrm caritow \trnl charitoõ \xref [L&N 88.66] \def show kindness \gtrm carizomai \trnl charizomai \xref [L&N 57.102] \def give generously \xref [L&N 40.10] \def forgive \xref [L&N 57.223] \def cancel a debt \xref [L&N 37.30] \def hand over to \en2 1. Blessing, may God's grace be with you, especially as part of a greeting \gtrm cariv \trnl charis _reference_start_Romans 1:7_reference_end_ _reference_start_Romans 16:20_reference_end_ _reference_start_1 Corinthians 1:3_reference_end_ _reference_start_1 Corinthians 16:23_reference_end_ _reference_start_2 Corinthians 1:2_reference_end_ _reference_start_2 Corinthians 13:14_reference_end_ _reference_start_Galatians 1:3_reference_end_ _reference_start_Galatians 6:18_reference_end_ _reference_start_Ephesians 1:2_reference_end_ _reference_start_Ephesians 6:24_reference_end_ _reference_start_Phihlippians 1:2_reference_end_ _reference_start_Philippians 4:23_reference_end_ _reference_start_Colossians 1:2_reference_end_ _reference_start_Colossians 4:18_reference_end_ _reference_start_1 Thessalonians 1:1_reference_end_ _reference_start_1 Thessalonians 5:28_reference_end_ _reference_start_2 Thessalonians 1:2_reference_end_ _reference_start_2 Thessalonians 3:18_reference_end_ _reference_start_1 Timothy 1:2_reference_end_ _reference_start_1 Timothy 6:21_reference_end_ _reference_start_2 Timothy 1:2_reference_end_ _reference_start_2 Timothy 4:22_reference_end_ _reference_start_Titus 1:4_reference_end_ _reference_start_Titus 3:15_reference_end_ _reference_start_Philemon 1:3_reference_end_ _reference_start_Philemon 1:25_reference_end_ _reference_start_1 Peter 1:2_reference_end_ _reference_start_2 Peter 1:2_reference_end_ _reference_start_Hebrews 13:25_reference_end_ _reference_start_2 John 1:3_reference_end_ _reference_start_Revelation 1:4_reference_end_ _reference_start_Revelation 22:21_reference_end_ \eni2 2. Loving-kindness (undeserved) \en3 a. God's grace as shown by his plan of salvation \gtrm cariv \trnl charis JHN 1:14, 16 (2 occurrences), 17 _reference_start_John 1:14_reference_end_ _reference_start_John 1:16_reference_end_ _reference_start_John 1:17_reference_end_ _reference_start_Acts 11:23_reference_end_ _reference_start_Acts 14:3_reference_end_ _reference_start_Acts 15:11_reference_end_ _reference_start_Acts 18:27_reference_end_ _reference_start_Acts 20:24_reference_end_ ROM 3:24; 4:16; 5:15, 15, 17, 20, 21; 6:1, 14, 15; 11:5, 6 (3 occurrences) _reference_start_Romans 3:24_reference_end_ _reference_start_Romans 4:16_reference_end_ _reference_start_Romans 5:15_reference_end_ _reference_start_Romans 5:15_reference_end_ _reference_start_Romans 5:17_reference_end_ _reference_start_Romans 5:20_reference_end_ _reference_start_Romans 5:21_reference_end_ _reference_start_Romans 6:1_reference_end_ _reference_start_Romans 6:14_reference_end_ _reference_start_Romans 6:15_reference_end_ _reference_start_Romjans 11:5_reference_end_ _reference_start_Romans 11:6_reference_end_ _reference_start_1 Corinthians 1:4_reference_end_ _reference_start_2 Corinthians 4:15_reference_end_ _reference_start_2 Corinthians 6:1_reference_end_ _reference_start_2 Corinthians 8:9_reference_end_ _reference_start_Galatians 1:6_reference_end_ _reference_start_Galatians 1:15_reference_end_ _reference_start_Galatians 2:21_reference_end_ _reference_start_Ephesians 1:6_reference_end_ _reference_start_Ephesians 1:7_reference_end_ _reference_start_Ephesians 2:5_reference_end_ _reference_start_Ephesians 2:7_reference_end_ _reference_start_Ephesians 2:8_reference_end_ _reference_start_Colossians 1:6_reference_end_ _reference_start_2 Thessalonians 1:12_reference_end_ _reference_start_2 Thessalonians 2:16_reference_end_ _reference_start_1 Timothy 1:14_reference_end_ _reference_start_2 Timothy 1:9_reference_end_ _reference_start_Titus 2:11_reference_end_ _reference_start_Titus 3:7_reference_end_ _reference_start_Hebrews 2:9_reference_end_ _referkence_start_Hebrews 12:15_reference_end_ _reference_start_1 Peter 1:10_reference_end_ _reference_start_1 Peter 1:13_reference_end_ _reference_start_1 Peter 3:7_reference_end_ _reference_start_Jude 1:4_reference_end_ \gtrm carisma \trnl charisma _reference_start_Romans 5:15_reference_end_ _reference_start_Romans 5:16_reference_end_ _reference_start_Romans 6:23_reference_end_ _reference_start_Romans 11:29_reference_end_ \gtrm caritow \trnl charitoõ _reference_start_Ephesians 1:6_reference_end_ \gtrm carizomai \trnl charizomai _reference_start_1 Corinthians 2:12_reference_end_ _reference_start_Galatians 3:18_reference_end_ \en3 b. God's grace as shown by his giving ongoing help and strength, God's empowering \gtrm cariv \trnl charis _reference_start_Acts 4:33_reference_end_ _reference_start_Acts 6:8_reference_end_ _reference_start_Acts 13:43_reference_end_ _reference_start_Acts 14:26_reference_end_ _reference_start_Acts 15:40_reference_end_ _reference_start_Acts 20:32_reference_end_ 1CO 15:10 (3 occurrences)l _reference_start_1 Corinthians 15:10_reference_end_ _reference_start_2 Corinthians 1:12_reference_end_ _reference_start_2 Corinthians 9:14_reference_end_ _reference_start_2 Corinthians 12:9_reference_end_ _reference_start_Philippians 1:7_reference_end_ _reference_start_2 Timothy 2:1_reference_end_ HEB 4:16 (2 occurrences); 13:9 _reference_start_Hebrews 4:16_reference_end_ _reference_start_Hebrews 13:9_reference_end_ JAS 4:6 (2 occurrences) _reference_start_James 4:6_reference_end_ 1PE 4:10; 5:5, 10, 12 (alternate sense 5.) _reference_start_1 Peter 4:10_reference_end_ _reference_start_1 Peter 5:5_reference_end_ _reference_start_1 Peter 5:10_reference_end_ _reference_start_1 Peter 5:12_reference_end_ _reference_start_2 Peter 3:18_reference_end_ \gtrm carisma \trnl charisma _reference_start_Romans 1:11_reference_end_ _reference_start_2 Corinthians 1:11_reference_end_ \gtrm carizomai \trnl charizomai _reference_start_Acts 27:24_reference_end_ _reference_start_Romans 8:32_reference_end_ \en3 c. God's grace asm shown by special abilities he distributes \gtrm cariv \trnl charis _reference_start_Romans 12:6_reference_end_ _reference_start_Romans 15:15_reference_end_ _reference_start_1 Corinthians 3:10_reference_end_ _reference_start_2 Corinthians 8:1_reference_end_ _reference_start_Ephesians 4:7_reference_end_ _reference_start_Hebrews 10:29_reference_end_ \gtrm carisma \trnl charisma _reference_start_Romans 12:6_reference_end_ _reference_start_1 Corinthians 1:7_reference_end_ _reference_start_1 Corinthians 7:7_reference_end_ _reference_start_1 Corinthians 12:4_reference_end_ _reference_start_1 Corinthians 12:9_reference_end_ _reference_start_1 Corinthians 12:28_reference_end_ _reference_start_1 Corinthians 12:30_reference_end_ _reference_start_1 Corinthians 12:31_reference_end_ _reference_start_1 Timothy 4:14_reference_end_ _reference_start_2 Timothy 1:6_reference_end_ _reference_start_1 Peter 4:10_reference_end_ \en3 d. God's grace in choosing a person to do a particular task \gtrm cariv \trnl charis _reference_nstart_Luke 1:30_reference_end_ _reference_start_Luke 2:40_reference_end_ _reference_start_Luke 2:52_reference_end_ _reference_start_Acts 7:46_reference_end_ \en3 e. The favorable attitude of one human being towards another \gtrm cariv \trnl charis _reference_start_Acts 2:47_reference_end_ _reference_start_Acts 7:10_reference_end_ \en3 f. God's grace shown to an individual by means of healing \gtrm carizomai \trnl charizomai _reference_start_Luke 7:21_reference_end_ \en3 g. God's grace shown through forgiveness \gtrm carizomai \trnl charizomai _reference_start_Luke 7:42_reference_end_ _reference_start_Luke 7:43_reference_end_ 2CO 2:7, 10 (3 occurrences); 12:13 _reference_start_2 Corinthians 2:7_reference_end_ _reference_start_2 Corinthians 2:10_reference_end_ _reference_start_2 Corinthians 12:13_reference_end_ EPH 4:32 (2 occurrences) _reference_start_Ephesians 4:32_reference_end_ COL 2:13; 3:13 (2 occurrences) _reference_start_Colossians 2:13_reference_end_ _reference_start_Colossians 3:13_reference_end_ o\en2 3. An act of kindness, goodwill, or favor \gtrm cariv \trnl charis _reference_start_Acts 24:27_reference_end_ _reference_start_Acts 25:3_reference_end_ _reference_start_Acts 25:9_reference_end_ _reference_start_Romans 4:4_reference_end_ _reference_start_1 Corinthians 16:3_reference_end_ _reference_start_2 Corinthians 8:6_reference_end_ _reference_start_2 Corinthians 8:7_reference_end_ _reference_start_2 Corinthians 8:19_reference_end_ \en2 4. Something good and helpful, a benefit \gtrm cariv \trnl charis _reference_start_2 Corinthians 1:15_reference_end_ _reference_start_2 Corinthians 9:8_reference_end_ _reference_start_Ephesians 4:29_reference_end_ \en2 5. Privilege, privileged position given because of God's goodwill \gtrm cariv \trnl charis _reference_start_Romans 1:5_reference_end_ _reference_start_Romans 5:2_reference_end_ _reference_start_Romans 12:3_reference_end_ _reference_start_2 Corinthians 8:4_reference_end_ _reference_start_Galatians 2:9_reference_end_ _reference_start_Galatians 5:4_refeprence_end_ _reference_start_Ephesians 3:2_reference_end_ _reference_start_Ephesians 3:7_reference_end_ _reference_start_Ephesians 3:8_reference_end_ \gtrm caritow \trnl charitoõ _reference_start_Luke 1:28_reference_end_ \en2 6. Other senses of “charis”, not usually translated as “grace” in English \en3 a. Pleasing, attractive, and suitable speech \gtrm cariv \trnl charis _reference_start_Luke 4:22_reference_end_ _reference_start_Colossians 4:6_reference_end_ \en3 b. Thanks, gratitude \gtrm cariv \trnl charis _reference_start_Luke 6:32_reference_end_ _reference_start_Luke 6:33_reference_end_ _reference_start_Luke 6:34_reference_end_ _reference_start_Luke 17:9_reference_end_ _reference_start_Romans 6:17_reference_end_ _reference_start_Romans 7:25_reference_end_ _reference_start_1 Corinthians 10:30_reference_end_ _reference_start_1 Corinthians 15:57_reference_end_ _reference_start_2 Corinthians 2:14_reference_end_ _reference_start_2 Corinthians 8:16_reference_end_ _reference_start_2 Corinthians 9:15_reference_end_ _reference_start_Colossians 3:16_reference_end_ _reference_start_1 Timothy 1:12_reference_end_ _reference_start_2 Timothy 1:3_reference_end_ _reference_start_Hebrews 12:28_reference_end_ \en3 c. A privilege given by God to suffer for His sake \gtrm carizomai \trnl charizomai _reference_start_Philippians 1:29_reference_end_ \en3 d. Graced by God by revealing His grace through suffering \gtrm cariv \trnl charis _reference_start_1 Peter 2:19_reference_end_ _reference_start_1 Peter 2:20_reference_end_ \en3 e. A gift from God contingent upon human requests \gtrm carizomai \trnl charizomai _reference_start_Philemon 1:22_reference_end_ \en3 f. The judicial transferal of one being held as a criminal \gtrm carizomai \trnl charizomai _reference_start_Acts 3:14_reference_end_ _reference_start_Acts 25:11_reference_end_ _reference_start_Acts 25:16_reference_end_ \en3 g. The most ultimate conveying of blessing, favor, and honor \gtrm carizomai \trnl charizomai _reference_start_Philippians 2:9_reference_end_ j:7HEARTheart\see (see also COMPASSION, LOVE, SOUL, SPIRIT ) \o1 1. The center or innermost part of our non-physical being \o2 a. The innermost part of us in general \o2 b. The part of our being associated with thoughts and ideas \o3 1) From the Greek word “kardia” \o3 2) From other Greek words \o2 c. The part of our being associated with our desires and concerns \o2 d. The part of our being associated with our emotions and feelings \o1 2. Common phrases \o2 a. From the heart (sincerely, genuinely) \o2 b. With all the heart (with complete devotion of your will) \o2 c. In singleness of heart (with single minded loyalty and devotu"9+HADEShades\see (see HELL)W8%%uGRACE, FAVORgrace, favor\o1 1. Blessing, may God's grace be with you, especially as part of a greeting \o1 2. Loving-kindness (undeserved) \o2 a. God's grace as shown by his plan of salvation \o2 b. God's grace as shown by his giving ongoing helpe ?tfXJ<. xj\N@2$|n`RD6( u, t,! s0 r. q1 p-  o- n- m- lA k< j< i< h:  g: f8 e8 d7 c6 b5 a5 `3 _1 ^1 ]1 \1 [1 Z0 Y0 X0 W/ V/ U/ T. S-  R-  Q- P- O- N- M- L- K- J- I- H- G, F, E, D, C,  B+ A+ @+ ?B >B =? <:  ;= :< 99 89 78 ?tfXJ<. xj\N@2$|n`RD6( 4/ 3/ 2/ 1/ 0. /- ., -, ,, +3 *3 )1 (/ '/ &/ %*+ $** #* ", !,/ ,. *4 *( * < 7 6 .  .  .  . .  . . -  :  1 / . - -  - , / - = < < < < ; : : 7 ~2 }/ |/  {/ z. y, x,( w, v, + ?tfXJ<. xj\N@2$|n`RD6( s(  r( " q(  p( o+& n, m, lB k< j< i; h; g: f:  e: d4 c3 b2 a1 `0 _/ ^- ]- \, [, Z* Y2 X, W, V, U9 T< S< R2 Q:  P7 O6 N3 M/  L/ K/ J.9 I.  H- G- F* E*" D*! C* B3 A* @* ?1 >1 =1 <0 ;0 :/ 9-  8- 7- 61 5/ vion) \o1 3. The innermost part of things other than human beings \o1 4. Other ways of speaking of things of the heart \o2 a. Being concerned with \o2 b. The idea to “take heart” \o2 c. The inner man \gtrm kardia \trnl kardia \xref [L&N 26.3] \def inner self \xref [L&N 83.14] \def inside \xref (others) \def Also participates in idioms of thought, learning, opinion, decision, friendliness, affection, worry, sorrow, stubbornness, purification, etc. \gtrm kardiognwstjv \trnl kardiognõstæs \xref [L&N 28.12] \def knower of hearts \gtrm skljrokardian \trnl sklærokardian \xref [L&N 88.224] \def stubborn \gtrm splancna \trnl splanchna \xref [L&N 8.58] \def intestines \xref [L&N 26.11] \def feelings, desires, intention \xref [L&N 25.49] \def compassion \xref [L&N 25.50] \def object of affection \xref [L&N 25.55] \def refuse to show compassion (idiom) \xref [L&N 25.54] \def restrict ones affection to (idiom) \gtrm eusplancnav \trnl eusplanchnas \xref [L&N 25.51] \def compassion \gtrm koilia \trnl koiliwa \xref [L&N 8.67] \def belly \xref [L&N 8.69] \def womb \xref [L&N 26.11] \def feelings \xref [L&N 25.28] \def bodily desires \gtrm nouv \trnl nous \xref [L&N 26.14] \def mind \xref [L&N 30.5] \def way of thinking \gtrm nojma \trnl noæma \xref [L&N 26.14] \def mind \xref [L&N 30.15] \def thought \gtrm dianoia \trnl dianoia \xref [L&N 26.14] \def mind \xref [L&N 30.5] \def way of thinking \xref [L&N 30.15] \def thought \gtrm fronjma \trnl phronæma \xref [L&N 26.15] \def thoughtful planning \gtrm fronew \trnl phroneõ \xref [L&N 26.16] \def have attitude \xref [L&N 30.20] \def ponder \xref [L&N 31.1] \def hold a view \xref [L&N 87.12] \def honor \xref [L&N 88.209] \def be haughty (high minded) \gtrm qarsew \trnl tharseõ \xref [L&N 25.156] \def have courage, take heart \gtrm euqumew \trnl euthumeõ \xref [L&N 25.146] \def be encouraged \gtrm esw anqrwpov \trnl esõ anthrõpos \def inner man \en2 1. The center or innermost part of our non-physical being \en3 a. The innermost part of us in general \gtrm kaxrdia \trnl kardia _reference_start_Luke 16:15_reference_end_ _reference_start_Acts 8:21_reference_end_ _reference_start_Acts 15:9_reference_end_ _reference_start_Romans 5:5_reference_end_ _reference_start_Romans 8:27_reference_end_ _reference_start_2 Corinthians 1:22_reference_end_ _reference_start_Galatians 4:6_reference_end_ _reference_start_Ephesians 3:17_reference_end_ _reference_start_Philippians 4:7_reference_end_ _reference_start_Colossians 3:15_reference_end_ _reference_start_1 Thessalonians 2:4_reference_end_ HEB 3:10; 10:22 (2 occurrences) ( alternate sense 1.c.); 13:9 _reference_start_Hebrews 3:10_reference_end_ _reference_start_Hebrews 10:22_reference_end_ _reference_start_Hebrews 13:9_reference_end_ _reference_start_James 1:26_reference_end_ _reference_start_James 4:8_reference_end_ _reference_start_1 Peter 3:4_reference_end_ _reference_start_1 Peter 3:15_reference_end_ _reference_start_Revelation 2:23_reference_end_ \gtrm kardiognwstjv \trnl kardiognõstæs ACT 1:24 (compound word); 15:8 (coympound word) _reference_start_Acts 1:24_reference_end_ _reference_start_Acts 15:8_reference_end_ \gtrm koilia \trnl koilia _reference_start_John 7:38_reference_end_ \en3 b. The part of our being associated with thoughts and ideas \en4 1) From the Greek word “kardia” \gtrm kardia \trnl kardia MAT 5:28; 9:4; 12:34; 13:15 (2 occurrences), 19; 15:18, 19; 24:48 _reference_start_Matthew 5:28_reference_end_ _reference_start_Matthew 9:4_reference_end_ _reference_start_Matthew 12:34_reference_end_ _reference_start_Matthew 13:15_reference_end_ _reference_start_Matthew 13:19_reference_end_ _reference_start_Matthew 15:18_reference_end_ _reference_start_Matthew 15:19_reference_end_ _reference_start_Matthew 24:48_reference_end_ _reference_start_Mark 2:6_reference_end_ _reference_start_Mark 2:8_reference_end_ _reference_start_Mark 3:5_reference_end_ _reference_start_Mark 6:52_reference_end_ _reference_start_Mark 7:19_reference_end_ _reference_start_Mark 7:21_reference_end_ _reference_start_Mark 8:17_reference_end_ _rezference_start_Mark 11:23_reference_end_ LUK 1:66; 2:19, 35, 51; 3:15; 5:22; 6:45 (2 occurrences); 8:12; 9:47; 12:45; 21:14, 34; 24:25, 38 _reference_start_Luke 1:66_reference_end_ _reference_start_Luke 2:19_reference_end_ _reference_start_Luke 2:35_reference_end_ _reference_start_Luke 2:51_reference_end_ _reference_start_Luke 3:15_reference_end_ _reference_start_Luke 5:22_reference_end_ _reference_start_Luke 6:45_reference_end_ _reference_start_Luke 8:12_reference_end_ _reference_start_Luke 9:47_reference_end_ _reference_start_Luke 12:45_reference_end_ _reference_start_Luke 21:14_reference_end_ _reference_start_Luke 21:34_reference_end_ _reference_start_Luke 24:25_reference_end_ _reference_start_Luke 24:38_reference_end_ JHN 12:40 (2 occurrences); 13:2 _reference_start_John 12:40_reference_end_ _reference_start_John 13:2_reference_end_ _reference_start_Acts 5:3_reference_end_ _reference_start_Acts 5:4_reference_end_ _reference_start_Acts 7:23_reference_end_ _reference_start_Acts 16:14_reference_end_ _refe{rence_start_Romans 1:21_reference_end_ _reference_start_Romans 2:5_reference_end_ _reference_start_Romans 2:15_reference_end_ _reference_start_Romans 10:6_reference_end_ _reference_start_Romans 10:8_reference_end_ _reference_start_Romans 10:9_reference_end_ _reference_start_Romans 10:10_reference_end_ _reference_start_Romans 16:18_reference_end_ 1CO 2:9; 4:5; 7:37 (2 occurrences); 14:25 _reference_start_1 Corinthians 2:9_reference_end_ _reference_start_1 Corinthians 4:5_reference_end_ _reference_start_1 Corinthians 7:37_reference_end_ _reference_start_1 Corinthians 14:25_reference_end_ 2CO 3:2, 3, 15; 4:6; 5:12; 6:11, 13 (Implied); 9:7 _reference_start_2 Corinthians 3:2_reference_end_ _reference_start_2 Corinthians 3:3_reference_end_ _reference_start_2 Corinthians 3:15_reference_end_ _reference_start_2 Corinthians 4:6_reference_end_ _reference_start_2 Corinthians 5:12_reference_end_ _reference_start_2 Corinthians 6:11_reference_end_ _reference_start_2 Corinthians 6:13_reference_end_ _reference_start_2 Cor|inthians 9:7_reference_end_ _reference_start_Ephesians 1:18_reference_end_ _reference_start_Ephesians 4:18_reference_end_ _reference_start_Hebrews 3:8_reference_end_ _reference_start_Hebrews 3:12_reference_end_ _reference_start_Hebrews 3:15_reference_end_ _reference_start_Hebrews 4:7_reference_end_ _reference_start_Hebrews 4:12_reference_end_ _reference_start_Hebrews 8:10_reference_end_ _reference_start_Hebrews 10:16_reference_end_ _reference_start_2 Peter 1:19_reference_end_ 1JN 3:19, 20 (2 occurrences), 21 _reference_start_1 John 3:19_reference_end_ _reference_start_1 John 3:20_reference_end_ _reference_start_1 John 3:21_reference_end_ _reference_start_Revelation 17:17_reference_end_ _reference_start_Revelation 18:7_reference_end_ \gtrm skljrokardian \trnl sklærokardian MAT 19:8 (compound word) _reference_start_Matthew 19:8_reference_end_ MRK 10:5 (compound word); 16:14 (compound word) _reference_start_Mark 10:5_reference_end_ _reference_start_Mark 16:14_reference_end_ \en4 2) From other Greek words \g}trm kardia \trnl kardia _reference_start_Philippians 4:7_reference_end_ \gtrm nouv \trnl nous _reference_start_Luke 24:45_reference_end_ _reference_start_Romans 1:28_reference_end_ _reference_start_Romans 7:23_reference_end_ _reference_start_Romans 7:25_reference_end_ _reference_start_Romans 11:34_reference_end_ _reference_start_Romans 12:2_reference_end_ _reference_start_Romans 14:5_reference_end_ 1CO 1:10; 2:16 (2 occurrences); 14:14, 15 (2 occurrences), 19 _reference_start_1 Corinthians 1:10_reference_end_ _reference_start_1 Corinthians 2:16_reference_end_ _reference_start_1 Corinthians 14:14_reference_end_ _reference_start_1 Corinthians 14:15_reference_end_ _reference_start_1 Corinthians 14:19_reference_end_ _reference_start_Ephesians 4:17_reference_end_ _reference_start_Ephesians 4:23_reference_end_ _reference_start_Colossians 2:18_reference_end_ _reference_start_2 Thessalonians 2:2_reference_end_ _reference_start_1 Timothy 6:5_reference_end_ _reference_start_2 Timothy 3:8_reference_end_ _reference_s~tart_Titus 1:15_reference_end_ _reference_start_Revelation 13:18_reference_end_ _reference_start_Revelation 17:9_reference_end_ \gtrm nojma \trnl noæma _reference_start_2 Corinthians 2:11_reference_end_ _reference_start_2 Corinthians 3:14_reference_end_ _reference_start_2 Corinthians 4:4_reference_end_ _reference_start_2 Corinthians 10:5_reference_end_ _reference_start_2 Corinthians 11:3_reference_end_ _reference_start_Philippians 4:7_reference_end_ \gtrm dianoia \trnl dianoia _reference_start_Matthew 22:37_reference_end_ _reference_start_Mark 12:30_reference_end_ _reference_start_Luke 1:51_reference_end_ _reference_start_Luke 10:27_reference_end_ _reference_start_Ephesians 1:18_reference_end_ _reference_start_Ephesians 2:3_reference_end_ _reference_start_Ephesians 4:18_reference_end_ _reference_start_Colossians 1:21_reference_end_ _reference_start_Hebrews 8:10_reference_end_ _reference_start_Hebrews 10:16_reference_end_ _reference_start_1 Peter 1:13_reference_end_ _reference_start_2 Peter 3:1_reference_end_ _reference_start_1 John 5:20_reference_end_ \gtrm fronjma \trnl phronæma ROM 8:6 (2 occurrences), 7, 27 _reference_start_Romans 8:6_reference_end_ _reference_start_Romans 8:7_reference_end_ _reference_start_Romans 8:27_reference_end_ \en3 c. The part of our being associated with our desires and concerns \gtrm kardia \trnl kardia _reference_start_Matthew 5:8_reference_end_ _reference_start_Matthew 6:21_reference_end_ _reference_start_Matthew 11:29_reference_end_ _reference_start_Matthew 15:8_reference_end_ _reference_start_Mark 7:6_reference_end_ _reference_start_Luke 1:17_reference_end_ _reference_start_Luke 1:51_reference_end_ _reference_start_Luke 8:15_reference_end_ _reference_start_Luke 12:34_reference_end_ ACT 4:32; 7:39, 51; 8:22; 13:22; 21:13; 28:27 (2 occurrences) _reference_start_Acts 4:32_reference_end_ _reference_start_Acts 7:39_reference_end_ _reference_start_Acts 7:51_reference_end_ _reference_start_Acts 8:22_reference_end_ _reference_start_Acts 13:22_reference_end_ _reference_start_Acts 21:13_reference_end_ _reference_start_Acts 28:27_reference_end_ _reference_start_Romans 1:24_reference_end_ _reference_start_Romans 2:29_reference_end_ _reference_start_Romans 10:1_reference_end_ _reference_start_2 Corinthians 7:3_reference_end_ _reference_start_2 Corinthians 8:16_reference_end_ _reference_start_Philippians 1:7_reference_end_ _reference_start_2 Thessalonians 2:17_reference_end_ _reference_start_2 Thessalonians 3:5_reference_end_ _reference_start_1 Timothy 1:5_reference_end_ _reference_start_2 Timothy 2:22_reference_end_ _reference_start_1 Peter 1:22_reference_end_ _reference_start_2 Peter 2:14_reference_end_ _reference_start_James 3:14_reference_end_ \en3 d. The part of our being associated with our emotions and feelings \gtrm kardia \trnl kardia _reference_start_Luke 24:32_reference_end_ _reference_start_John 14:1_reference_end_ _reference_start_John 14:27_reference_end_ _reference_start_John 16:6_reference_end_ _reference_start_John 16:22_reference_end_ _reference_start_Acts 2:26_reference_end_ _reference_start_Acts 2:37_reference_end_ _reference_start_Acts 2:46_reference_end_ _reference_start_Acts 14:17_reference_end_ _reference_start_Romans 9:2_reference_end_ _reference_start_2 Corinthians 2:4_reference_end_ _reference_start_Ephesians 6:22_reference_end_ _reference_start_Colossians 2:2_reference_end_ _reference_start_Colossians 3:16_reference_end_ _reference_start_Colossians 4:8_reference_end_ _reference_start_1 Thessalonians 2:17_reference_end_ _reference_start_1 Thessalonians 3:13_reference_end_ _reference_start_James 5:5_reference_end_ _reference_start_James 5:8_reference_end_ \gtrm splancna \trnl splanchna LUK 1:78 (figurative) _reference_start_Luke 1:78_reference_end_ _reference_start_2 Corinthians 6:12_reference_end_ _reference_start_2 Corinthians 7:15_reference_end_ _reference_start_Philippians 1:8_reference_end_ _reference_start_Philippians 2:1_reference_end_ _reference_start_Colossians 3:12_reference_end_ _reference_start_Philemon 1:7_reference_end_ _reference_start_Philemon 1:12_reference_end_ _reference_start_Philemon 1:20_reference_end_ _reference_start_1 John 3:17_reference_end_ \gtrm eusplancnav \trnl eusplanchnas _reference_start_Ephesians 4:32_reference_end_ _reference_start_1 Peter 3:8_reference_end_ \en2 2. Common phrases \en3 a. From the heart (sincerely, genuinely) \gtrm kardia \trnl kardia _reference_start_Matthew 18:35_reference_end_ _reference_start_Romans 6:17_reference_end_ \en3 b. With all the heart (with complete devotion of your will) \gtrm kardia \trnl kardia _reference_start_Matthew 22:37_reference_end_ _reference_start_Mark 12:30_reference_end_ _reference_start_Mark 12:33_reference_end_ _reference_start_Luke 10:27_reference_end_ _reference_start_Acts 11:23_reference_end_ _reference_start_Ephesians 5:19_reference_end_ \en3 c. In singleness of heart (with single minded loyalty and devotion) \gtrm kardia \trnl kardia _reference_start_Ephesians 6:5_reference_end_ _reference_start_Colossians 3:22_reference_end_ \en2 3. The innermost part of things other than human beings \gtrm kardia \trnl kardia _reference_start_Matthew 12:40_reference_end_ \en2 4. Other ways of speaking of things of the heart \en3 a. Being concerned with \gtrm fronew \trnl phroneõ _reference_start_Matthew 16:23_reference_end_ _reference_start_Mark 8:33_reference_end_ _reference_start_Acts 23:22_reference_end_ ROM 8:5; 12:3, 16 (2 occurrences); 14:6 (2 occurrences); 15:5 _reference_start_Romans 8:5_reference_end_ _reference_start_Romans 12:3_reference_end_ _reference_start_Romans 12:16_reference_end_ _reference_start_Romans 14:6_reference_end_ _reference_start_Romans 15:5_reference_end_ _reference_start_1 Corinthians 4:6_reference_end_ _reference_start_1 Corinthians 13:11_reference_end_ _reference_start_Galatians 5:10_reference_end_ PHP 1:7; 2:2, 5; 3:15 (2 occurrences), 16, 19; 4:2, 10 (2 occurrences) _reference_start_Philippians 1:7_reference_end_ _reference_start_Philippians 2:2_reference_end_ _reference_start_Philippians 2:5_reference_end_ _reference_start_Philippians 3:15_reference_end_ _reference_start_Philippians 3:16_reference_end_ _reference_start_Philippians 3:19_reference_end_ _reference_start_Philippians 4:2_reference_end_ _reference_start_Philippians 4:10_reference_end_ _reference_start_Colossians 3:2_reference_end_ \en3 b. The idea to “take heart” \gtrm qarsew \trnl tharseõ _reference_start_Matthew 9:2_reference_end_ _reference_start_Matthew 9:22_reference_end_ _reference_start_Matthew 14:27_reference_end_ _reference_start_Mark 6:50_reference_end_ _reference_start_Mark 10:49_reference_end_ _reference_start_Luke 8:48_reference_end_ _reference_start_John 16:33_reference_end_ _reference_start_Acts 23:11_reference_end_ \gtrm euqumew \trnl euthumeõ _reference_start_Acts 27:22_reference_end_ _reference_start_Acts 27:25_reference_end_ _reference_start_James 5:13_reference_end_ \en3 c. The inner man \gtrm esw anqrwpov \trnl esõ anthrõpos _reference_start_Romans 7:22_reference_end_ _reference_start_2 Corinthians 4:16_reference_end_ _reference_start_Ephesians 3:16_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( 2> 1= 0:  /: .: -: ,: +: *: )1 (1 '/  &/ %/ $/ #/ "/ !/ / . .% . . - - - -  -  - - - , , , , +  + ( *& * *" * * - * / * *- * * *3 *# * *B )  ~) }) |) {)4 z) y) x) w(0 v( u( t(  ?tfXJ<. xj\N@2$|n`RD6( q,3 p,' o, n* " m* l*3 k* j) i( h(  g( f( e- d- c- b> a= `< _:  ^: ]3 \1 [1 Z1 Y*  X*3 W)  V(% U2 T/  S/  R/ Q/ P/ OB NB  M8 L7 K6 J5 I3 H1 G1 F. E. D. C. B. A- @-  ?- " >- =- <- ;*- :2 9) 8)  7( 6B 5B 4> 3> ?tfXJ<. xj\N@2$|n`RD6( 0- /, .)! -( ,( ( +3 *1 )1 (,  '*  &) ! %)  $(% #- "(# !< 1 > 9 9 9 3 2 2 / / *N ; ; 4 4 3 3 3 1 / -  , ,. ,% , + + + + * ; = < 7 ~6 }5 |5 {2 z/ y/ x-  w- v- u, t, s,  r, ?tfXJ<. xj\N@2$|n`RD6( o,  n, m,* l, k, j, i, h*! g* f* e* d*  c* 8 b*  a* : `* _)> ^)  ])  \)  [) Z(@ Y(# X( W( V( U( T( S( R(  Q( P( O( N1 M/ L- K; J, I, H, G+! F*0 E) 1 D)2 C( B(  A(  @3 ?2 >2 =2 <2 ;2 :2 92 82 70 6. 5. 4- 3- 2-  1- spiritual beings \o1 3. Sky as associated with God's presence or blessing \o1 4. Figurative uses \o2 a. Heaven, metonymy referring to God \o2 b. Heaven, personified, or metonymy in doublet for its occupants \o2 c. Other figurative uses \o1 5. Having to do with the supernatural world \o2 a. The heavenly places, in the supernatural realm \o2 b. Things of a spiritual kind \gtrm ouranov \trnl ouranos \xref [L&N 1.5] \def sky \xref [L&N 1.11] \def heaven \xref [L&N 12.16] \def God \xref [L&N 1.3] \def universe (heaven and earth) \xref [L&N 1.43] \def on earth (all under heaven) \xref [L&N 4.41] \def wild (birds of the heaven) \xref [L&N 12.45] \def supernatural (ranks of heaven) \xref [L&N 59.66] \def immensely (increase to the heavens) \gtrm ouraniov \trnl ouranios \xref [L&N 1.12] \def heavenly (adjective) \xref [L&N 12.30] \def angelic (heavenly ranks) \gtrm ouranoqen \trnl ouranothen \xref [L&N 1.9] \def from the sky \gtrm paradeisov \trnl paradeisos \xref [L&N 1.14] \def paradise \gtrm epouraniov \trnl epouranios \xref [L&N 1.8] \def in the sky (adjective) \xref [L&N 1.12] \def heavenly \xref [L&N 12.17] \def from God \xref [L&N 1.26] \def heavenly (body) \xref [L&N 12.44] \def supernatural (powers) \gtrm mesouranjma \trnl mesouranæma \xref [L&N 1.10] \def high in the sky \gtrm diopetjv \trnl diopetæs \xref [L&N 2.48] \def stone from heaven (hapax legomenon) (adjective) \gtrm anw... \trnl anõ... \xref [L&N 83.48] \def above (where it implies heaven) \xref [L&N 84.25] \def upwards (where it implies heaven) \gtrm anwqen \trnl anõthen \xref [L&N 84.13] \def from above \xref (others) \def again, for a long time, be born again \gtrm Ãyjlov \trnl hupsælos \xref [L&N 1.13] \def world above \xref (others) \def tall, valuable, arrogant, powerful \gtrm Ãyistov \trnl hupsistos \xref [L&N 1.13] \def world above \xref [L&N 12.4] \def the most high \gtrm Ãyov \trnl hupsos \xref [L&N 1.13] \def world above \xref [L&N 14.42] \def the dawn from on high \xref (others) \def height, and high rank \en2 1. The sky, where weather and stars are observed \gtrm ouranov \trnl ouranos MAT 5:18; 6:26; 8:20; 11:25; 13:32; 16:2, 3 (2 occurrences); 24:29 (2 occurrences), 30 (2 occurrences), 31, 35; 26:64 _reference_start_Matthew 5:18_reference_end_ _reference_start_Matthew 6:26_reference_end_ _reference_start_Matthew 8:20_reference_end_ _reference_start_Matthew 11:25_reference_end_ _reference_start_Matthew 13:32_reference_end_ _reference_start_Matthew 16:2_reference_end_ _reference_start_Matthew 16:3_reference_end_ _reference_start_Matthew 24:29_reference_end_ _reference_start_Matthew 24:30_reference_end_ _reference_start_Matthew 24:31_reference_end_ _reference_start_Matthew 24:35_reference_end_ _reference_start_Matthew 26:64_reference_end_ MRK 4:32; 13:25 (2 occurrences), 27, 31; 14:62 _reference_start_Mark 4:32_reference_end_ _reference_start_Mark 13:25_reference_end_ _reference_start_Mark 13:27_reference_end_ _reference_start_Mark 13:31_reference_end_ _reference_start_Mark 14:62_reference_end_ _reference_start_Luke 8:5_reference_end_ _reference_start_Luke 9:58_reference_end_ _reference_start_Luke 10:21_reference_end_ _reference_start_Luke 12:56_reference_end_ _reference_start_Luke 13:19_reference_end_ _reference_start_Luke 16:17_reference_end_ _reference_start_Luke 17:24_reference_end_ _reference_start_Luke 21:26_reference_end_ _reference_start_Luke 21:33_reference_end_ _reference_start_Acts 2:5_reference_end_ _reference_start_Acts 2:19_reference_end_ _reference_start_Acts 4:12_reference_end_ _reference_start_Acts 4:24_reference_end_ _reference_start_Acts 7:42_reference_end_ _reference_start_Acts 10:12_reference_end_ _reference_start_Acts 11:6_reference_end_ _reference_start_Acts 14:15_reference_end_ _reference_start_Acts 17:24_reference_end_ _reference_start_Ephesians 1:10_reference_end_ _reference_start_Colossians 1:16_reference_end_ _reference_start_Colossians 1:20_reference_end_ _reference_start_Colossians 1:23_reference_end_ _reference_start_Hebrews 1:10_reference_end_ _reference_start_Hebrews 11:12_reference_end_ _reference_start_Hebrews 12:26_reference_end_ _reference_start_2 Peter 3:5_reference_end_ _reference_start_2 Peter 3:7_reference_end_ _reference_start_2 Peter 3:10_reference_end_ _reference_start_2 Peter 3:12_reference_end_ _reference_start_2 Peter 3:13_reference_end_ REV 6:13, 14; 9:1; 10:6; 12:1, 3, 4; 14:7; 20:11; 21:1 (2 occurrences) _reference_start_Revelation 6:13_reference_end_ _reference_start_Revelation 6:14_reference_end_ _reference_start_Revelation 9:1_reference_end_ _reference_start_Revelation 10:6_reference_end_ _reference_start_Revelation 12:1_reference_end_ _reference_start_Revelation 12:3_reference_end_ _reference_start_Revelation 12:4_reference_end_ _reference_start_Revelation 14:7_reference_end_ _reference_start_Revelation 20:11_reference_end_ _reference_start_Revelation 21:1_reference_end_ \gtrm epouraniov \trnl epouranios 1CO 15:40 (2 occurrences) _reference_start_1 Corinthians 15:40_reference_end_ \gtrm mesouranjma \trnl mesouranæma _reference_start_Revelation 8:13_reference_end_ _reference_start_Revelation 14:6_reference_end_ _reference_start_Revelation 19:17_reference_end_ \en2 2. Heaven, the dwelling place of God and other spiritual beings \gtrm ouranov \trnl ouranos MAT 5:12, 16, 34, 45; 6:1, 9, 10, 20; 7:11, 21; 10:32, 33; 12:50; 16:17, 19 (2 occurrences); 18:10 (2 occurrences), 14, 18 (2 occurrences), 19; 19:21; 22:30; 23:22; 24:36; 28:18 _reference_start_Matthew 5:12_reference_end_ _reference_start_Matthew 5:16_reference_end_ _reference_start_Matthew 5:34_reference_end_ _reference_start_Matthew 5:45_reference_end_ _reference_start_Matthew 6:1_reference_end_ _reference_start_Matthew 6:9_reference_end_ _reference_start_Matthew 6:10_reference_end_ _reference_start_Matthew 6:20_reference_end_ _reference_start_Matthew 7:11_reference_end_ _reference_start_Matthew 7:21_reference_end_ _reference_start_Matthew 10:32_reference_end_ _reference_start_Matthew 10:33_reference_end_ _reference_start_Matthew 12:50_reference_end_ _reference_start_Matthew 16:17_reference_end_ _reference_start_Matthew 16:19_reference_end_ _reference_start_Matthew 18:10_reference_end_ _reference_start_Matthew 18:14_reference_end_ _reference_start_Matthew 18:18_reference_end_ _reference_start_Matthew 18:19_reference_end_ _reference_start_Matthew 19:21_reference_end_ _reference_start_Matthew 22:30_reference_end_ _reference_start_Matthew 23:22_reference_end_ _reference_start_Matthew 24:36_reference_end_ _reference_start_Matthew 28:18_reference_end_ _reference_start_Mark 10:21_reference_end_ _reference_start_Mark 11:25_reference_end_ _reference_start_Mark 12:25_reference_end_ _reference_start_Mark 13:32_reference_end_ _reference_start_Mark 16:19_reference_end_ LUK 2:13 (or ouranios, textual problem), 15; 6:23; 10:20; 11:13; 12:33; 15:7; 18:22; 19:38 _reference_start_Luke 2:13_reference_end_ _reference_start_Luke 2:15_reference_end_ _reference_start_Luke 6:23_reference_end_ _reference_start_Luke 10:20_reference_end_ _reference_start_Luke 11:13_reference_end_ _reference_start_Luke 12:33_reference_end_ _reference_start_Luke 15:7_reference_end_ _reference_start_Luke 18:22_reference_end_ _reference_start_Luke 19:38_reference_end_ JHN 3:13 (2 occurrences); 6:32, 33, 38, 41, 42, 50, 51, 58 _reference_start_John 3:13_reference_end_ _reference_start_John 6:32_reference_end_ _reference_start_John 6:33_reference_end_ _reference_start_John 6:38_reference_end_ _reference_start_John 6:41_reference_end_ _reference_start_John 6:42_reference_end_ _reference_start_John 6:50_reference_end_ _reference_start_John 6:51_reference_end_ _reference_start_John 6:58_reference_end_ _reference_start_Acts 3:21_reference_end_ _reference_start_Acts 7:49_reference_end_ _reference_start_Romans 1:18_reference_end_ _reference_start_1 Corinthians 8:5_reference_end_ _reference_start_1 Corinthians 15:47_reference_end_ _reference_start_2 Corinthians 5:1_reference_end_ _reference_start_Galatians 1:8_reference_end_ _reference_start_Ephesians 3:15_reference_end_ _reference_start_Ephesians 6:9_reference_end_ _reference_start_Philippians 3:20_reference_end_ _reference_start_Colossians 1:5_reference_end_ _reference_start_Colossians 4:1_reference_end_ HEB 8:1; 9:23 (2 occurrences), 24; 12:23, 25 _reference_start_Hebrews 8:1_reference_end_ _reference_start_Hebrews 9:23_reference_end_ _reference_start_Hebrews 9:24_reference_end_ _reference_start_Hebrews 12:23_reference_end_ _reference_start_Hebrews 12:25_reference_end_ _reference_start_James 5:12_reference_end_ _reference_start_1 Peter 1:4_reference_end_ _reference_start_1 Peter 1:12_reference_end_ _reference_start_Revelation 3:12_reference_end_ _reference_start_Revelation 4:2_reference_end_ _reference_start_Revelation 5:3_reference_end_ _reference_start_Revelation 5:13_reference_end_ _reference_start_Revelation 8:1_reference_end_ _reference_start_Revelation 11:13_reference_end_ _reference_start_Revelation 11:15_reference_end_ _reference_start_Revelation 11:19_reference_end_ _reference_start_Revelation 12:7_reference_end_ _reference_start_Revelation 12:10_reference_end_ _reference_start_Revelation 13:6_reference_end_ _reference_start_Revelation 14:17_reference_end_ _reference_start_Revelation 15:1_reference_end_ _reference_start_Revelation 15:5_reference_end_ _reference_start_Revelation 16:11_reference_end_ _reference_start_Revelation 19:1_reference_end_ _reference_start_Revelation 19:14_reference_end_ \gtrm ouraniov \trnl ouranios _reference_start_Matthew 5:48_reference_end_ _reference_start_Matthew 6:14_reference_end_ _reference_start_Matthew 6:26_reference_end_ _reference_start_Matthew 6:32_reference_end_ _reference_start_Matthew 15:13_reference_end_ _reference_start_Matthew 18:35_reference_end_ _reference_start_Matthew 23:9_reference_end_ _reference_start_Acts 26:19_reference_end_ \gtrm paradeisov \trnl paradeisos _reference_start_Luke 23:43_reference_end_ _reference_start_2 Corinthians 12:3_reference_end_ _reference_start_2 Corinthians 12:4_reference_end_ _reference_start_Revelation 2:7_reference_end_ \gtrm epouraniov \trnl epouranios 1CO 15:48 (2 occurrences), 49 _reference_start_1 Corinthians 15:48_reference_end_ _reference_start_1 Corinthians 15:49_reference_end_ _reference_start_Philippians 2:10_reference_end_ _reference_start_Hebrews 3:1_reference_end_ _reference_start_Hebrews 6:4_reference_end_ \gtrm anw... \trnl anõ... _reference_start_John 8:23_reference_end_ _reference_start_Galatians 4:26_reference_end_ _reference_start_Philippians 3:14_reference_end_ _reference_start_Colossians 3:1_reference_end_ _reference_start_Colossians 3:2_reference_end_ \gtrm Ãyjlov \trnl hupsælos _reference_start_Hebrews 1:3_reference_end_ \gtrm Ãyistov \trnl hupsistos _reference_start_Matthew 21:9_reference_end_ _reference_start_Mark 11:10_reference_end_ _reference_start_Luke 2:14_reference_end_ _reference_start_Luke 19:38_reference_end_ \gtrm Ãyov \trnl hupsos _reference_start_Luke 1:78_reference_end_ _reference_start_Luke 24:49_reference_end_ _reference_start_Ephesians 4:8_reference_end_ \en2 3. Sky as associated with God's presence or blessing \gtrm ouranov \trnl ouranos _reference_start_Matthew 3:16_reference_end_ _reference_start_Matthew 3:17_reference_end_ _reference_start_Matthew 14:19_reference_end_ _reference_start_Matthew 16:1_reference_end_ _reference_start_Matthew 28:2_reference_end_ _reference_start_Mark 1:10_reference_end_ _reference_start_Mark 1:11_reference_end_ _reference_start_Mark 6:41_reference_end_ _reference_start_Mark 7:34_reference_end_ _reference_start_Mark 8:11_reference_end_ _reference_start_Luke 3:21_reference_end_ _reference_start_Luke 3:22_reference_end_ _reference_start_Luke 4:25_reference_end_ _reference_start_Luke 9:16_reference_end_ _reference_start_Luke 9:54_reference_end_ _reference_start_Luke 10:18_reference_end_ _reference_start_Luke 11:16_reference_end_ _reference_start_Luke 17:29_reference_end_ _reference_start_Luke 18:13_reference_end_ _reference_start_Luke 21:11_reference_end_ _reference_start_Luke 24:51_reference_end_ _reference_start_John 1:32_reference_end_ _reference_start_John 3:31_reference_end_ _reference_start_John 6:31_reference_end_ _reference_start_John 6:32_reference_end_ _reference_start_John 12:28_reference_end_ _reference_start_John 17:1_reference_end_ ACT 1:10, 11 (3 occurrences); 2:2, 34; 7:55, 56; 9:3; 10:11, 16; 11:5, 9, 10; 22:6 _reference_start_Acts 1:10_reference_end_ _reference_start_Acts 1:11_reference_end_ _reference_start_Acts 2:2_reference_end_ _reference_start_Acts 2:34_reference_end_ _reference_start_Acts 7:55_reference_end_ _reference_start_Acts 7:56_reference_end_ _reference_start_Acts 9:3_reference_end_ _reference_start_Acts 10:11_reference_end_ _reference_start_Acts 10:16_reference_end_ _reference_start_Acts 11:5_reference_end_ _reference_start_Acts 11:9_reference_end_ _reference_start_Acts 11:10_reference_end_ _reference_start_Acts 22:6_reference_end_ _reference_start_Romans 10:6_reference_end_ _reference_start_2 Corinthians 12:2_reference_end_ _reference_start_Ephesians 4:10_reference_end_ _reference_start_1 Thessalonians 1:10_reference_end_ _reference_start_1 Thessalonians 4:16_reference_end_ _reference_start_2 Thessalonians 1:7_reference_end_ _reference_start_Hebrews 4:14_reference_end_ _reference_start_Hebrews 7:26_reference_end_ _reference_start_James 5:18_reference_end_ _reference_start_1 Peter 3:22_reference_end_ _reference_start_2 Peter 1:18_reference_end_ REV 4:1; 8:10; 10:1, 4, 5, 8; 11:6, 12 (2 occurrences); 12:8; 13:13; 14:2, 13; 16:21; 18:1, 4; 19:11; 20:1, 9; 21:2, 10 _reference_start_Revelation 4:1_reference_end_ _reference_start_Revelation 8:10_reference_end_ _reference_start_Revelation 10:1_reference_end_ _reference_start_Revelation 10:4_reference_end_ _reference_start_Revelation 10:5_reference_end_ _reference_start_Revelation 10:8_reference_end_ _reference_start_Revelation 11:6_reference_end_ _reference_start_Revelation 11:12_reference_end_ _reference_start_Revelation 12:8_reference_end_ _reference_start_Revelation 13:13_reference_end_ _reference_start_Revelation 14:2_reference_end_ _reference_start_Revelation 14:13_reference_end_ _reference_start_Revelation 16:21_reference_end_ _reference_start_Revelation 18:1_reference_end_ _reference_start_Revelation 18:4_reference_end_ _reference_start_Revelation 19:11_reference_end_ _reference_start_Revelation 20:1_reference_end_ _reference_start_Revelation 20:9_reference_end_ _reference_start_Revelation 21:2_reference_end_ _reference_start_Revelation 21:10_reference_end_ \gtrm ouranoqen \trnl ouranothen _reference_start_Acts 14:17_reference_end_ _reference_start_Acts 26:13_reference_end_ \gtrm diopetjv \trnl diopetæs _reference_start_Acts 19:35_reference_end_ \en2 4. Figurative uses \en3 a. Heaven, metonymy referring to God \gtrm ouranov \trnl ouranos MAT 3:2; 4:17; 5:3, 10, 19 (2 occurrences), 20; 7:21; 8:11; 10:7; 11:11, 12; 13:11, 24, 31, 33, 44, 45, 47, 52; 16:19; 18:1, 3, 4, 23; 19:12, 14, 23; 20:1; 21:25 (2 occurrences); 22:2; 23:13; 25:1 _reference_start_Matthew 3:2_reference_end_ _reference_start_Matthew 4:17_reference_end_ _reference_start_Matthew 5:3_reference_end_ _reference_start_Matthew 5:10_reference_end_ _reference_start_Matthew 5:19_reference_end_ _reference_start_Matthew 5:20_reference_end_ _reference_start_Matthew 7:21_reference_end_ _reference_start_Matthew 8:11_reference_end_ _reference_start_Matthew 10:7_reference_end_ _reference_start_Matthew 11:11_reference_end_ _reference_start_Matthew 11:12_reference_end_ _reference_start_Matthew 13:11_reference_end_ _reference_start_Matthew 13:24_reference_end_ _reference_start_Matthew 13:31_reference_end_ _reference_start_Matthew 13:33_reference_end_ _reference_start_Matthew 13:44_reference_end_ _reference_start_Matthew 13:45_reference_end_ _reference_start_Matthew 13:47_reference_end_ _reference_start_Matthew 13:52_reference_end_ _reference_start_Matthew 16:19_reference_end_ _reference_start_Matthew 18:1_reference_end_ _reference_start_Matthew 18:3_reference_end_ _reference_start_Matthew 18:4_reference_end_ _reference_start_Matthew 18:23_reference_end_ _reference_start_Matthew 19:12_reference_end_ _reference_start_Matthew 19:14_reference_end_ _reference_start_Matthew 19:23_reference_end_ _reference_start_Matthew 20:1_reference_end_ _reference_start_Matthew 21:25_reference_end_ _reference_start_Matthew 22:2_reference_end_ _reference_start_Matthew 23:13_reference_end_ _reference_start_Matthew 25:1_reference_end_ _reference_start_Mark 11:30_reference_end_ _reference_start_Mark 11:31_reference_end_ _reference_start_Luke 15:18_reference_end_ _reference_start_Luke 15:21_reference_end_ _reference_start_Luke 20:4_reference_end_ _reference_start_Luke 20:5_reference_end_ _reference_start_John 3:27_reference_end_ \gtrm anwqen \trnl anõthen _reference_start_John 19:11_reference_end_ _reference_start_James 1:17_reference_end_ _reference_start_James 3:15_reference_end_ _reference_start_James 3:17_reference_end_ \en3 b. Heaven, personified, or metonymy in doublet for its occupants \gtrm ouranov \trnl ouranos _reference_start_Revelation 12:12_reference_end_ _reference_start_Revelation 18:20_reference_end_ \en3 c. Other figurative uses \gtrm ouranov \trnl ouranos MAT 11:23 (hyperbole) _reference_start_Matthew 11:23_reference_end_ LUK 10:15 (hyperbole) _reference_start_Luke 10:15_reference_end_ JHN 1:51 (metaphorical allusion to Jacob's ladder) _reference_start_John 1:51_reference_end_ REV 18:5 (simile and hyperbole) _reference_start_Revelation 18:5_reference_end_ \en2 5. Having to do with the supernatural world \en3 a. The heavenly places, in the supernatural realm \gtrm epouraniov \trnl epouranios _reference_start_Ephesians 1:3_reference_end_ _reference_start_Ephesians 1:20_reference_end_ _reference_start_Ephesians 2:6_reference_end_ _reference_start_Ephesians 3:10_reference_end_ _reference_start_Ephesians 6:12_reference_end_ \en3 b. Things of a spiritual kind \gtrm ouranov \trnl ouranos _reference_start_2 Corinthians 5:2_reference_end_ \gtrm epouraniov \trnl epouranios _reference_start_John 3:12_reference_end_ _reference_start_Hebrews 8:5_reference_end_ _reference_start_Hebrews 9:23_reference_end_ _reference_start_Hebrews 11:16_reference_end_ _reference_start_Hebrews 12:22_reference_end_ _reference_start_2 Timothy 4:18_reference_end_ nh?##KHOLY SPIRITholy spirit\see (see also SPIRIT) \o1 1. The Holy Spirit \o1 2. The Spirit of God (explicit) \o1 3. The Spirit (of God implied) \o2 a. In/by/with the S6>##;HIGH PRIESThigh priest\see (see CHIEF PRIEST)>=11-HELL, HADES, ABYSShell, hades, abyss\o1 1. A place and state of punishment through suffering \o1 2. A place where the spirits of people go at death \o1 3. A pit that is so deep it is without a bottom \o1 4. A place where evil gods are punished \o1 5. Expressions possibly referring to Hades \o2 a. Under the earth \o2 b. The h<HEBREWhebrew\o1 1. The Hebrew people \o1 2. The Hebrew language \gtrm ›braiov \trnl hebraiosA;##MHEAVEN, SKYheaven, sky\o1 1. The sky, where weather and stars are observed \o1 2. Heaven, the dwelling place of God and other  ?tfXJ<. xj\N@2$|n`RD6( .* ! -* ,*  +* ** )* () ') &)  %)  $)  #( "($ !( ( ( ( ( ( ( ( ( ( 2 ( ! ( ( ( ( ( ( ( (- (" ( ( B B B .( B B B B  B  B  B  B  B ~B }= |= {= z= y= x:  w: v: u3 t3 s3 r1 q, p, ?tfXJ<. xj\N@2$|n`RD6( m.1 l.0 kB j/  i/  h*+ g, f( e(# d( c( b( a( `(0 _B ^B ]B \B [B ZB YB  XB WB  VB  UB  TB SB RB QB PB OB N< M< L; K:  J:  I:  H:  G: F3 E3 D2 C1 B1 A0 @/ ?./ >. =- <,1 ;, :+: 9+3 8+2 7+* 6+) 5+& 4+! 3+ 2+ 1*& 0* /* ?tfXJ<. xj\N@2$|n`RD6( ,: +5 *4 )4 (1 '/  &-  %, $, #, ",  !,  , ,  ,8 ,7 ," , , , + +  + + + + *3 * * * *  *  * 6 *  * * * ) )" )) ) ) ( ( ( ( ~( }1 |*1 {*N z*& y* x) w( v: u3 t3 s2 r0 q+ p: o: n2 ?tfXJ<. xj\N@2$|n`RD6( k* j* i)  h)  g( f( e( d( c( b( a( `( _( ^( ]( \( [( Z( 4 Y( / X( - W( , V( ! U(  T(  S( R( Q( P(  O( N( M( L( K( J( I( H( G,# F, E, DB CB BB AB @B ?B >B =B <B ;B :B 9B  8B 7B  6B  5B  4B  3B  2B 1B 0= /< .; -: ?tfXJ<. xj\N@2$|n`RD6( *B  )* (-  'B &B %B $B #, ", !( * *  (  ; *  ) / ) - ) + (! ( ( (  ( ( ( B B + + + + + , , ,( 2 /  , 7 :  :  :  : + ~/ }1 |1 {1 z1 y1 xB w+3 v*  u(  tB sB r; q; p; o+ n+ m* l* \xref [L&N 93.105] \def Hebrew, a Hebrew person \gtrm ›braiv \trnl hebrais \xref [L&N 93.104] \def Hebrew, pertaining to the Hebrews \gtrm ›braisti \trnl hebraisti \xref [L&N 33.6] \def Hebrew Language \en2 1. The Hebrew people \gtrm ›braiov \trnl hebraios _reference_start_Acts 6:1_reference_end_ _reference_start_2 Corinthians 11:22_reference_end_ PHP 3:5 (2 occurrences) _reference_start_Philippians 3:5_reference_end_ \en2 2. The Hebrew language \gtrm ›braiv \trnl hebrais _reference_start_Acts 21:40_reference_end_ _reference_start_Acts 22:2_reference_end_ _reference_start_Acts 26:14_reference_end_ \gtrm ›braisti \trnl hebraisti _reference_start_John 5:2_reference_end_ _reference_start_John 19:13_reference_end_ _reference_start_John 19:17_reference_end_ _reference_start_John 19:20_reference_end_ _reference_start_John 20:16_reference_end_ _reference_start_Revelation 9:11_reference_end_ _reference_start_Revelation 16:16_reference_end_eart of the earth \o2 c. The lower parts of the earth \o1 6. Expressions possibly referring to hell \o2 a. The eternal fire \o2 b. The lake of fire \o2 c. The outer darkness \o2 d. destruction, perdition \o1 7. “Nether gloom (pits)” possibly referring to “the abyss” \gtrm geenna \trnl geenna \xref [L&N 1.21] \def hell \gtrm ƒdjv \trnl hadæs \xref [L&N 1.19] \def world of the dead \xref [L&N 23.108] \def death \xref [L&N 12.50] \def supernatural powers (gates of death) \gtrm abussov \trnl abussos \xref [L&N 1.20] \def very deep place \gtrm tartarow \trnl tartaroõ \xref [L&N 1.25] \def cast into hell (hapax legomenon) \gtrm katacqoniov \trnl katachthonios \def beings under the earth \gtrm Ãpokatw tjv gjv \trnl hupokatõ tæs gæs \def under the earth \gtrm kardia tjv gjv \trnl kardia tæs gæs \def heart of the earth \gtrm katwtera merj tjv gjv \trnl katõtera meræ tæs gæs \def lower parts of the earth \gtrm pur to aiwnion \trnl pur to aiõnion \def fire of the ages \gtrm purov zjlov \trnl puros zælos \def fire that is zealous \gtrm purov aiwniou dikjn \trnl puros aiõniou dikæn \def fire of eternal vengeance \gtrm limnjn tou purov \trnl limnæn tou puros \def lake of fire \gtrm limnj tj kaiomenj puri kai qeiw \trnl limnæ tæ kaiomenæ puri kai theiõ \def lake burning with fire and brimstone \gtrm skotov to exwteron \trnl skotos to exõteron \def the darkness outside \gtrm zofov tou skotouv \trnl zophos tou skotous \def nether-gloom of darkness \gtrm apwleia \trnl apõleia \xref [L&N 20.31] \def destruction \gtrm oleqron aiwnion \trnl olethron aiõnion \def eternal destruction \gtrm seiraiv zofou \trnl seirais zophou \def pits of nether-gloom \gtrm Ãpo zofon \trnl hupo zophon \def under gloom \en2 1. A place and state of punishment through suffering \gtrm geenna \trnl geenna _reference_start_Matthew 5:22_reference_end_ _reference_start_Matthew 5:29_reference_end_ _reference_start_Matthew 5:30_reference_end_ _reference_start_Matthew 10:28_reference_end_ _reference_start_Matthew 18:9_reference_end_ _reference_start_Matthew 23:15_reference_end_ _reference_start_Matthew 23:33_reference_end_ _reference_start_Mark 9:43_reference_end_ _reference_start_Mark 9:45_reference_end_ _reference_start_Mark 9:47_reference_end_ _reference_start_Luke 12:5_reference_end_ JAS 3:6 (figure: personification, hell as the source of evil) _reference_start_James 3:6_reference_end_ \gtrm ƒdjv \trnl hadæs MAT 11:23 (alternate sense 2.) _reference_start_Matthew 11:23_reference_end_ LUK 10:15 (alternate sense 2.); 16:23 (alternate sense 2.) _reference_start_Luke 10:15_reference_end_ _reference_start_Luke 16:23_reference_end_ \en2 2. A place where the spirits of people go at death \gtrm ƒdjv \trnl hadæs MAT 16:18 (literally: gates of Hades) _reference_start_Matthew 16:18_reference_end_ _reference_start_Acts 2:27_reference_end_ _reference_start_Acts 2:31_reference_end_ _reference_start_Revelation 1:18_reference_end_ _reference_start_Revelation 6:8_reference_end_ _reference_start_Revelation 20:13_reference_end_ _reference_start_Revelation 20:14_reference_end_ \gtrm abussov \trnl abussos ROM 10:7 (alternate sense 3.) _reference_start_Romans 10:7_reference_end_ \en2 3. A pit that is so deep it is without a bottom \gtrm abussov \trnl abussos _reference_start_Luke 8:31_reference_end_ _reference_start_Revelation 9:1_reference_end_ _reference_start_Revelation 9:2_reference_end_ _reference_start_Revelation 9:11_reference_end_ _reference_start_Revelation 11:7_reference_end_ _reference_start_Revelation 17:8_reference_end_ _reference_start_Revelation 20:1_reference_end_ _reference_start_Revelation 20:3_reference_end_ \en2 4. A place where evil gods are punished \gtrm tartarow \trnl tartaroõ _reference_start_2 Peter 2:4_reference_end_ \en2 5. Expressions possibly referring to Hades \en3 a. Under the earth \gtrm katacqoniov \trnl katachthonios _reference_start_Philippians 2:10_reference_end_ \gtrm Ãpokatw tjv gjv \trnl hupokatõ tæs gæs _reference_start_Revelation 5:3_reference_end_ _reference_start_Revelation 5:13_reference_end_ \en3 b. The heart of the earth \gtrm kardia tjv gjv \trnl kardia tæs gæs _reference_start_Matthew 12:40_reference_end_ \en3 c. The lower parts of the earth \gtrm katwtera merj tjv gjv \trnl katõtera meræ tæs gæs EPH 4:9 (also possibly referring to the incarnation) _reference_start_Ephesians 4:9_reference_end_ \en2 6. Expressions possibly referring to hell \en3 a. The eternal fire \gtrm pur to aiwnion \trnl pur to aiõnion _reference_start_Matthew 18:8_reference_end_ _reference_start_Matthew 25:41_reference_end_ \gtrm purov zjlov \trnl puros zælos _reference_start_Hebrews 10:27_reference_end_ \gtrm purov aiwniou dikjn \trnl puros aiõniou dikæn _reference_start_Jude 1:7_reference_end_ \en3 b. The lake of fire \gtrm limnjn tou purov \trnl limnæn tou puros _reference_start_Revelation 19:20_reference_end_ _reference_start_Revelation 20:10_reference_end_ _reference_start_Revelation 20:14_reference_end_ _reference_start_Revelation 20:15_reference_end_ \gtrm limnj tj kaiomenj puri kai qeiw \trnl limnæ tæ kaiomenæ puri kai theiõ _reference_start_Revelation 21:8_reference_end_ \en3 c. The outer darkness \gtrm skotov to exwteron \trnl skotos to exõteron _reference_start_Matthew 8:12_reference_end_ _reference_start_Matthew 22:13_reference_end_ _reference_start_Matthew 25:30_reference_end_ \gtrm zofov tou skotouv \trnl zophos tou skotous _reference_start_2 Peter 2:17_reference_end_ _reference_start_Jude 1:13_reference_end_ \en3 d. destruction, perdition \gtrm apwleia \trnl apõleia _reference_start_Matthew 7:13_reference_end_ _reference_start_John 17:12_reference_end_ _reference_start_Philippians 3:19_reference_end_ _reference_start_2 Thessalonians 2:3_reference_end_ \gtrm oleqron aiwnion \trnl olethron aiõnion _reference_start_2 Thessalonians 1:9_reference_end_ \en2 7. “Nether gloom (pits)” possibly referring to “the abyss” \gtrm seiraiv zofou \trnl seirais zophou _reference_start_2 Peter 2:4_reference_end_ \gtrm Ãpo zofon \trnl hupo zophon _reference_start_Jude 1:6_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( i, h, g, f, e+ d+ c+! b* a* `* _*  ^* ]* \* [* Z* Y*C X*) W*# V* U) T) $ S) R) Q( P( O( N( M( L- KA J= I5 H5 G2 F+ E( DA C= B( A( @( ?B >B =B <B ;B :A 9:  8() 7( 61 5( ( 4B 3B 22 1= 0B /B .B -B  ,B +B pirit \o2 b. Life directed by the Holy Spirit \o2 c. According to the Spirit \o2 d. Other references to the Spirit \gtrm pneuma \trnl pneuma \xref [L&N 12.33] \def spirit \xref [L&N 12.18] \def Holy Spirit \xref (others) \def inner being, ghost, evil spirit, wind, breath, life/death, etc. \gtrm ƒgiov \trnl hagios \xref [L&N 88.24] \def holy \gtrm pneuma to ƒgion \trnl pneuma to hagion \def Holy Spirit \en2 1. The Holy Spirit \gtrm pneuma \trnl pneuma _reference_start_Romans 1:4_reference_end_ \gtrm pneuma to ƒgion \trnl pneuma to hagion _reference_start_Matthew 1:18_reference_end_ _reference_start_Matthew 1:20_reference_end_ _reference_start_Matthew 3:11_reference_end_ _reference_start_Matthew 12:32_reference_end_ _reference_start_Matthew 28:19_reference_end_ _reference_start_Mark 1:8_reference_end_ _reference_start_Mark 3:29_reference_end_ _reference_start_Mark 12:36_reference_end_ _reference_start_Mark 13:11_reference_end_ _reference_start_Luke 1:15_reference_end_ _reference_start_Luke 1:35_reference_end_ _reference_start_Luke 1:41_reference_end_ _reference_start_Luke 1:67_reference_end_ _reference_start_Luke 2:25_reference_end_ _reference_start_Luke 2:26_reference_end_ _reference_start_Luke 3:16_reference_end_ _reference_start_Luke 3:22_reference_end_ _reference_start_Luke 4:1_reference_end_ _reference_start_Luke 10:21_reference_end_ _reference_start_Luke 11:13_reference_end_ _reference_start_Luke 12:10_reference_end_ _reference_start_Luke 12:12_reference_end_ _reference_start_John 1:33_reference_end_ _reference_start_John 14:26_reference_end_ _reference_start_John 20:22_reference_end_ ACT 1:2, 5, 8, 16; 2:4, 33, 38; 4:8, 25, 31; 5:3, 32; 6:5; 7:51, 55; 8:15, 17, 19; 9:17, 31; 10:38, 44, 45, 47; 11:15, 16, 24; 13:2, 4, 9, 52; 15:8, 28; 16:6; 19:2 (2 occurrences), 6; 20:23, 28; 21:11; 28:25 _reference_start_Acts 1:2_reference_end_ _reference_start_Acts 1:5_reference_end_ _reference_start_Acts 1:8_reference_end_ _reference_start_Acts 1:16_reference_end_ _reference_start_Acts 2:4_reference_end_ _reference_start_Acts 2:33_reference_end_ _reference_start_Acts 2:38_reference_end_ _reference_start_Acts 4:8_reference_end_ _reference_start_Acts 4:25_reference_end_ _reference_start_Acts 4:31_reference_end_ _reference_start_Acts 5:3_reference_end_ _reference_start_Acts 5:32_reference_end_ _reference_start_Acts 6:5_reference_end_ _reference_start_Acts 7:51_reference_end_ _reference_start_Acts 7:55_reference_end_ _reference_start_Acts 8:15_reference_end_ _reference_start_Acts 8:17_reference_end_ _reference_start_Acts 8:19_reference_end_ _reference_start_Acts 9:17_reference_end_ _reference_start_Acts 9:31_reference_end_ _reference_start_Acts 10:38_reference_end_ _reference_start_Acts 10:44_reference_end_ _reference_start_Acts 10:45_reference_end_ _reference_start_Acts 10:47_reference_end_ _reference_start_Acts 11:15_reference_end_ _reference_start_Acts 11:16_reference_end_ _reference_start_Acts 11:24_reference_end_ _reference_start_Acts 13:2_reference_end_ _reference_start_Acts 13:4_reference_end_ _reference_start_Acts 13:9_reference_end_ _reference_start_Acts 13:52_reference_end_ _reference_start_Acts 15:8_reference_end_ _reference_start_Acts 15:28_reference_end_ _reference_start_Acts 16:6_reference_end_ _reference_start_Acts 19:2_reference_end_ _reference_start_Acts 19:6_reference_end_ _reference_start_Acts 20:23_reference_end_ _reference_start_Acts 20:28_reference_end_ _reference_start_Acts 21:11_reference_end_ _reference_start_Acts 28:25_reference_end_ _reference_start_Romans 5:5_reference_end_ _reference_start_Romans 9:1_reference_end_ _reference_start_Romans 14:17_reference_end_ _reference_start_Romans 15:13_reference_end_ _reference_start_Romans 15:16_reference_end_ _reference_start_Romans 15:19_reference_end_ _reference_start_1 Corinthians 6:19_reference_end_ _reference_start_1 Corinthians 12:3_reference_end_ _reference_start_2 Corinthians 6:6_reference_end_ _reference_start_2 Corinthians 13:14_reference_end_ _reference_start_Ephesians 1:13_reference_end_ _reference_start_Ephesians 4:30_reference_end_ _reference_start_1 Thessalonians 1:5_reference_end_ _reference_start_1 Thessalonians 1:6_reference_end_ _reference_start_1 Thessalonians 4:8_reference_end_ _reference_start_2 Timothy 1:14_reference_end_ _reference_start_Titus 3:5_reference_end_ _reference_start_Hebrews 2:4_reference_end_ _reference_start_Hebrews 3:7_reference_end_ _reference_start_Hebrews 6:4_reference_end_ _reference_start_Hebrews 9:8_reference_end_ _reference_start_Hebrews 10:15_reference_end_ _reference_start_1 Peter 1:12_reference_end_ _reference_start_2 Peter 1:21_reference_end_ _reference_start_Jude 1:20_reference_end_ \en2 2. The Spirit of God (explicit) \gtrm pneuma \trnl pneuma _reference_start_Matthew 1:16_reference_end_ _reference_start_Matthew 3:16_reference_end_ _reference_start_Matthew 10:20_reference_end_ _reference_start_Matthew 12:18_reference_end_ _reference_start_Matthew 12:28_reference_end_ _reference_start_Luke 4:18_reference_end_ _reference_start_Acts 2:17_reference_end_ _reference_start_Acts 2:18_reference_end_ _reference_start_Acts 5:9_reference_end_ _reference_start_Acts 8:39_reference_end_ _reference_start_Romans 8:9_reference_end_ _reference_start_Romans 8:11_reference_end_ _reference_start_Romans 8:14_reference_end_ _reference_start_Romans 15:19_reference_end_ _reference_start_1 Corinthians 2:10_reference_end_ _reference_start_1 Corinthians 2:11_reference_end_ _reference_start_1 Corinthians 2:12_reference_end_ _reference_start_1 Corinthians 2:14_reference_end_ _reference_start_1 Corinthians 3:16_reference_end_ _reference_start_2 Corinthians 3:17_reference_end_ _reference_start_2 Corinthians 3:18_reference_end_ _reference_start_1 Corinthians 6:11_reference_end_ _reference_start_1 Corinthians 7:40_reference_end_ _reference_start_1 Corinthians 12:3_reference_end_ _reference_start_2 Corinthians 3:3_reference_end_ _reference_start_Philippians 1:19_reference_end_ _reference_start_1 Peter 4:14_reference_end_ _reference_start_1 John 4:2_reference_end_ _reference_start_1 Peter 1:11_reference_end_ _reference_start_1 John 4:13_reference_end_ \en2 3. The Spirit (of God implied) \en3 a. In/by/with the Spirit \gtrm pneuma \trnl pneuma _reference_start_Matthew 22:43_reference_end_ _reference_start_Ephesians 5:18_reference_end_ _reference_start_Revelation 4:2_reference_end_ _reference_start_Revelation 1:10_reference_end_ _reference_start_Revelation 17:3_reference_end_ _reference_start_Revelation 21:10_reference_end_ \en3 b. Life directed by the Holy Spirit \gtrm pneuma \trnl pneuma ROM 8:9 (2 occurrences) _reference_start_Romans 8:9_reference_end_ _reference_start_Galatians 3:3_reference_end_ _reference_start_Galatians 5:16_reference_end_ _reference_start_Ephesians 2:22_reference_end_ _reference_start_Ephesians 6:18_reference_end_ _reference_start_Colossians 1:8_reference_end_ \en3 c. According to the Spirit \gtrm pneuma \trnl pneuma _reference_start_Galatians 4:29_reference_end_ \en3 d. Other references to the Spirit \gtrm pneuma \trnl pneuma MAT 4:1 (possibly human spirit?); 12:31 _reference_start_Matthew 4:1_reference_end_ _reference_start_Matthew 12:31_reference_end_ MRK 1:10, 12 (possibly human spirit?) _reference_start_Mark 1:10_reference_end_ _reference_start_Mark 1:12_reference_end_ _reference_start_Luke 2:27_reference_end_ _reference_start_Luke 4:1_reference_end_ _reference_start_Luke 4:14_reference_end_ JHN 1:32, 33; 3:5, 6, 8, 34; 7:39 (2 occurrences); 14:17; 15:26; 16:13 _reference_start_John 1:32_reference_end_ _reference_start_John 1:33_reference_end_ _reference_start_John 3:5_reference_end_ _reference_start_John 3:6_reference_end_ _reference_start_John 3:8_reference_end_ _reference_start_John 3:34_reference_end_ _reference_start_John 7:39_reference_end_ _reference_start_John 14:17_reference_end_ _reference_start_John 15:26_reference_end_ _reference_start_John 16:13_reference_end_ _reference_start_Acts 2:4_reference_end_ _reference_start_Acts 8:18_reference_end_ _reference_start_Acts 8:29_reference_end_ _reference_start_Acts 10:19_reference_end_ _reference_start_Acts 11:12_reference_end_ _reference_start_Acts 11:28_reference_end_ _reference_start_Acts 16:7_reference_end_ _reference_start_Acts 21:4_reference_end_ ROM 7:6; 8:1, 2, 4, 5, 6, 9, 10, 13, 15, 16, 23, 26 (2 occurrences), 27; 15:30 _reference_start_Romans 7:6_reference_end_ _reference_start_Romans 8:1_reference_end_ _reference_start_Romans 8:2_reference_end_ _reference_start_Romans 8:4_reference_end_ _reference_start_Romans 8:5_reference_end_ _reference_start_Romans 8:6_reference_end_ _reference_start_Romans 8:9_reference_end_ _reference_start_Romans 8:10_reference_end_ _reference_start_Romans 8:13_reference_end_ _reference_start_Romans 8:15_reference_end_ _reference_start_Romans 8:16_reference_end_ _reference_start_Romans 8:23_reference_end_ _reference_start_Romans 8:26_reference_end_ _reference_start_Romans 8:27_reference_end_ _reference_start_Romans 15:30_reference_end_ 1CO 2:4, 10, 13; 12:4, 7, 8 (2 occurrences), 9 (2 occurrences), 11, 13 (2 occurrences); 14:2 _reference_start_1 Corinthians 2:4_reference_end_ _reference_start_1 Corinthians 2:10_reference_end_ _reference_start_1 Corinthians 2:13_reference_end_ _reference_start_1 Corinthians 12:4_reference_end_ _reference_start_1 Corinthians 12:7_reference_end_ _reference_start_1 Corinthians 12:8_reference_end_ _reference_start_1 Corinthians 12:9_reference_end_ _reference_start_1 Corinthians 12:11_reference_end_ _reference_start_1 Corinthians 12:13_reference_end_ _reference_start_1 Corinthians 14:2_reference_end_ 2CO 1:22; 3:6 (2 occurrences), 8, 17; 5:5 _reference_start_2 Corinthians 1:22_reference_end_ _reference_start_2 Corinthians 3:6_reference_end_ _reference_start_2 Corinthians 3:8_reference_end_ _reference_start_2 Corinthians 3:17_reference_end_ _reference_start_2 Corinthians 5:5_reference_end_ GAL 3:2, 5, 14; 4:6; 5:5, 17 (2 occurrences), 18, 22, 25 (2 occurrences); 6:8 (2 occurrences) _reference_start_Galatians 3:2_reference_end_ _reference_start_Galatians 3:5_reference_end_ _reference_start_Galatians 3:14_reference_end_ _reference_start_Galatians 4:6_reference_end_ _reference_start_Galatians 5:5_reference_end_ _reference_start_Galatians 5:17_reference_end_ _reference_start_Galatians 5:18_reference_end_ _reference_start_Galatians 5:22_reference_end_ _reference_start_Galatians 5:25_reference_end_ _reference_start_Galatians 6:8_reference_end_ _reference_start_Ephesians 2:18_reference_end_ _reference_start_Ephesians 3:5_reference_end_ _reference_start_Ephesians 3:16_reference_end_ _reference_start_Ephesians 4:3_reference_end_ _reference_start_Ephesians 4:4_reference_end_ _reference_start_Ephesians 5:9_reference_end_ _reference_start_Ephesians 6:17_reference_end_ _reference_start_Philippians 2:1_reference_end_ _reference_start_1 Thessalonians 5:19_reference_end_ _reference_start_2 Thessalonians 2:13_reference_end_ _reference_start_1 Timothy 3:16_reference_end_ _reference_start_1 Timothy 4:1_reference_end_ _reference_start_Hebrews 9:14_reference_end_ _reference_start_Hebrews 10:29_reference_end_ _reference_start_1 Peter 1:2_reference_end_ _reference_start_1 Peter 3:18_reference_end_ 1JN 3:24; 5:6 (2 occurrences), 7 (2 occurrences), 8 _reference_start_1 John 3:24_reference_end_ _reference_start_1 John 5:6_reference_end_ _reference_start_1 John 5:7_reference_end_ _reference_start_1 John 5:8_reference_end_ _reference_start_Jude 1:19_reference_end_ _reference_start_Revelation 1:4_reference_end_ _reference_start_Revelation 1:10_reference_end_ _reference_start_Revelation 2:7_reference_end_ _reference_start_Revelation 2:11_reference_end_ _reference_start_Revelation 2:17_reference_end_ _reference_start_Revelation 2:29_reference_end_ _reference_start_Revelation 3:1_reference_end_ _reference_start_Revelation 3:6_reference_end_ _reference_start_Revelation 3:13_reference_end_ _reference_start_Revelation 3:22_reference_end_ _reference_start_Revelation 4:2_reference_end_ _reference_start_Revelation 4:5_reference_end_ _reference_start_Revelation 5:6_reference_end_ _reference_start_Revelation 11:11_reference_end_ _reference_start_Revelation 14:13_reference_end_ _reference_start_Revelation 22:17_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( (( '( &A %= $< #:  ":  !: : : 8 7 4 4 4 1 1 /  / .  . - - - - -  - , , , , , , , , , , 4 , ,  ,  ,  ,  ~,  }, / |, - {, , z, & y,  x,  w, v, u, t,7 s,3 r, q, p, o, n, m, l,& k,! j, ?tfXJ<. xj\N@2$|n`RD6( g, f,  e, d, c, b+ a+ `+ _+' ^+" ]+ \+ [+ Z+! Y+ X* W* V* U) T) S(  R( Q0 P3 O1 N1 M0 L0 K- JB IB HB GB F1 E(+ D> C< B> A< @2 ?/ >.  =.( <. ;/ :/ 9. 8. 7. 6. 5. 4- 3- 2- 1- 0,' /, ., -, ,* +(  *(  )(  ?tfXJ<. xj\N@2$|n`RD6( &> %> $> #> "< !< :  :  6 6 5 4 2 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 / / / / / . . . . .  ~.  }.  |. {. z. y- x- w- v- u- t- s- r- q- p- o- n- m- l- k- j, i, h,  ?tfXJ<. xj\N@2$|n`RD6( e- d- c- b- a- `- _-  ^- ]- \, [, ) Z, Y, X* W) V(4 U, " T7 SA R= Q- P- O*H N= M1 L, K*F JB IA H,  G*  F)& E, D, C+E B*" A) @B ?B >B =B <B ;> :, 9+ 8*1 7B 6B 5B 4B 3B 2B 1B 0B /B .B -B ,B +B *B )B (B 'A, prophets who spoke God's messages \o2 e. given by God (referring to law, Scriptures, covenant, et al) \o1 3. Belonging to God, dedicated to the service of God \o2 a. saints, people belonging to God, God's people \o2 b. places and things dedicated to God \o1 4. Morally pure like God \o1 5. To dedicate and set aside for God, to consecrate \o1 6. To respectfully acknowledge, or reverence as holy \o1 7. The state of being holy \o1 8. The process of becoming holy \gtrm ƒgiov \trnl hagios \xref [L&N 88.24] \def holy, superior in moral and divine qualities \xref [L&N 53.46] \def dedicated \xref [L&N 11.27] \def God's people (the holy ones) \gtrm ³eroprepjv \trnl hieroprepæs \xref [L&N 53.6] \def religious (hapax legomenon) \gtrm ³erov \trnl hieros \xref [L&N 53.9] \def holy, appropriate for worship and reverence \gtrm ésiov \trnl hosios \xref [L&N 88.24] \def holy, superior in moral and divine qualities \xref [L&N 53.46] \def dedicated \xref [L&N 33.290] \def divine promises \gtrm ésiotjv \trnl hosiotæs \xref [L&N 88.25] \def holiness \xref [L&N 53.45] \def dedication to the service of God, a state \gtrm ésiwv \trnl hosiõs \xref [L&N 88.24] \def holy, superior in moral and divine qualities \gtrm ƒgiazw \trnl hagiazõ \xref [L&N 53.44] \def to dedicate \xref [L&N 88.26] \def make holy \xref [L&N 88.27] \def honor as holy \gtrm ƒgiasmov \trnl hagiasmos \xref [L&N 53.44] \def to dedicate \gtrm ƒgiotjv \trnl hagiotæs \xref [L&N 88.25] \def holiness \gtrm ƒgiwsunj \trnl hagiõsunæ \xref [L&N 88.25] \def holiness \xref [L&N 53.45] \def dedication to the service of God, a state \gtrm amwmov \trnl amõmos \xref [L&N 79.61] \def without defect \xref [L&N 88.34] \def blameless, without fault \gtrm amwmjtov \trnl amõmætos \xref [L&N 88.35] \def blameless, not subject to blame (hapax legomenon) \gtrm amemptov \trnl amemptos \xref [L&N 88.317] \def blameless, innocent, guiltless \gtrm amemptwv \trnl amemptõs \xref [L&N 88.317] \def blameless, innocent, guiltless \gtrm anenkljtov \trnl anenklætos \xref [L&N 33.433] \def without accusation \gtrm anepiljmptov \trnl anepilæmptos \xref [L&N 33.415] \def above criticism \gtrm akeraiov \trnl akeraios \xref [L&N 88.32] \def pure, innocent (harmless) \en2 1. Attribute of God, unique, unapproachable, beyond knowing, like God \gtrm ƒgiov \trnl hagios _reference_start_Luke 1:49_reference_end_ _reference_start_John 17:11_reference_end_ _reference_start_Acts 3:14_reference_end_ _reference_start_1 John 2:20_reference_end_ REV 3:7; 4:8 (3 occurrences); 6:10 _reference_start_Revelation 3:7_reference_end_ _reference_start_Revelation 4:8_reference_end_ _reference_start_Revelation 6:10_reference_end_ \gtrm ésiov \trnl hosios _reference_start_Revelation 15:4_reference_end_ _reference_start_Revelation 16:5_reference_end_ \en2 2. Originating from God \en3 a. Holy Spirit, Spirit of God (see below) \en3 b. Holy in titles for Christ, proceeding from God \gtrm ƒgiov \trnl hagios MRK 1:24 (alternate sense 1.) _reference_start_Mark 1:24_reference_end_ LUK 4:34 (alternate sense 1.) _reference_start_Luke 4:34_reference_end_ JHN 6:69 (alternate sense 1.) _reference_start_John 6:69_reference_end_ _reference_start_Acts 4:27_reference_end_ _reference_start_Acts 4:30_reference_end_ \en3 c. holy angels, angels sent by God \gtrm ƒgiov \trnl hagios _reference_start_Mark 8:38_reference_end_ _reference_start_Luke 9:26_reference_end_ _reference_start_Acts 10:22_reference_end_ _reference_start_Jude 1:14_reference_end_ _reference_start_Revelation 14:10_reference_end_ \en3 d. holy prophets, prophets who spoke God's messages \gtrm ƒgiov \trnl hagios _reference_start_Luke 1:70_reference_end_ _reference_start_Acts 3:21_reference_end_ _reference_start_Ephesians 3:5_reference_end_ _reference_start_2 Peter 3:2_reference_end_ \en3 e. given by God (referring to law, Scriptures, covenant, et al) \gtrm ƒgiov \trnl hagios _reference_start_Luke 1:72_reference_end_ ROM 1:2; 7:12 (2 occurrences) _reference_start_Romans 1:2_reference_end_ _reference_start_Romans 7:12_reference_end_ _reference_start_2 Peter 2:21_reference_end_ JUD 1:20 (2 occurrences) _reference_start_Jude 1:20_reference_end_ \gtrm ³erov \trnl hieros _reference_start_2 Timothy 3:15_reference_end_ \gtrm ésiov \trnl hosios _reference_start_Acts 13:34_reference_end_ \en2 3. Belonging to God, dedicated to the service of God \en3 a. saints, people belonging to God, God's people \gtrm ƒgiov \trnl hagios _reference_start_Matthew 27:52_reference_end_ _reference_start_Mark 6:20_reference_end_ _reference_start_Luke 2:23_reference_end_ _reference_start_Acts 9:13_reference_end_ _reference_start_Acts 9:32_reference_end_ _reference_start_Acts 9:41_reference_end_ _reference_start_Acts 26:10_reference_end_ _reference_start_Romans 1:7_reference_end_ _reference_start_Romans 8:27_reference_end_ _reference_start_Romans 12:1_reference_end_ _reference_start_Romans 12:13_reference_end_ _reference_start_Romans 15:25_reference_end_ _reference_start_Romans 15:26_reference_end_ _reference_start_Romans 15:31_reference_end_ _reference_start_Romans 16:2_reference_end_ _reference_start_Romans 16:15_reference_end_ _reference_start_Romans 16:16_reference_end_ _reference_start_1 Corinthians 1:2_reference_end_ _reference_start_1 Corinthians 6:1_reference_end_ _reference_start_1 Corinthians 6:2_reference_end_ _reference_start_1 Corinthians 7:14_reference_end_ _reference_start_1 Corinthians 7:34_reference_end_ _reference_start_1 Corinthians 14:33_reference_end_ _reference_start_1 Corinthians 16:1_reference_end_ _reference_start_1 Corinthians 16:15_reference_end_ _reference_start_1 Corinthians 16:20_reference_end_ _reference_start_2 Corinthians 1:1_reference_end_ _reference_start_2 Corinthians 8:4_reference_end_ _reference_start_2 Corinthians 9:1_reference_end_ _reference_start_2 Corinthians 9:12_reference_end_ _reference_start_2 Corinthians 13:12_reference_end_ _reference_start_2 Corinthians 13:13_reference_end_ _reference_start_Ephesians 1:1_reference_end_ _reference_start_Ephesians 1:15_reference_end_ _reference_start_Ephesians 1:18_reference_end_ _reference_start_Ephesians 2:19_reference_end_ _reference_start_Ephesians 3:8_reference_end_ _reference_start_Ephesians 3:18_reference_end_ _reference_start_Ephesians 4:12_reference_end_ _reference_start_Ephesians 5:3_reference_end_ _reference_start_Ephesians 6:18_reference_end_ _reference_start_Philippians 1:1_reference_end_ _reference_start_Philippians 4:21_reference_end_ _reference_start_Philippians 4:22_reference_end_ _reference_start_Colossians 1:2_reference_end_ _reference_start_Colossians 1:4_reference_end_ _reference_start_Colossians 1:12_reference_end_ _reference_start_Colossians 1:26_reference_end_ _reference_start_Colossians 3:12_reference_end_ _reference_start_1 Thessalonians 3:13_reference_end_ _reference_start_1 Thessalonians 5:26_reference_end_ _reference_start_2 Thessalonians 1:10_reference_end_ _reference_start_1 Timothy 5:10_reference_end_ _reference_start_Philemon 1:5_reference_end_ _reference_start_Philemon 1:7_reference_end_ _reference_start_Hebrews 3:1_reference_end_ _reference_start_Hebrews 6:10_reference_end_ _reference_start_Hebrews 13:24_reference_end_ _reference_start_1 Peter 2:5_reference_end_ _reference_start_1 Peter 2:9_reference_end_ _reference_start_1 Peter 3:5_reference_end_ _reference_start_2 Peter 3:11_reference_end_ _reference_start_Jude 1:3_reference_end_ REV 5:8; 8:3, 4; 11:18; 13:7, 10; 14:12; 16:6; 17:6; 18:20, 24; 19:8; 20:6, 9; 22:11 (alternate sense 1.d.) _reference_start_Revelation 5:8_reference_end_ _reference_start_Revelation 8:3_reference_end_ _reference_start_Revelation 8:4_reference_end_ _reference_start_Revelation 11:18_reference_end_ _reference_start_Revelation 13:7_reference_end_ _reference_start_Revelation 13:10_reference_end_ _reference_start_Revelation 14:12_reference_end_ _reference_start_Revelation 16:6_reference_end_ _reference_start_Revelation 17:6_reference_end_ _reference_start_Revelation 18:20_reference_end_ _reference_start_Revelation 18:24_reference_end_ _reference_start_Revelation 19:8_reference_end_ _reference_start_Revelation 20:6_reference_end_ _reference_start_Revelation 20:9_reference_end_ _reference_start_Revelation 22:11_reference_end_ \gtrm ³erov \trnl hieros _reference_start_1 Corinthians 9:13_reference_end_ \itrm Saints implied _reference_start_Revelation 22:21_reference_end_ \en3 b. places and things dedicated to God \gtrm ƒgiov \trnl hagios _reference_start_Matthew 4:5_reference_end_ _reference_start_Matthew 7:6_reference_end_ _reference_start_Matthew 24:15_reference_end_ _reference_start_Matthew 27:53_reference_end_ _reference_start_Acts 6:13_reference_end_ _reference_start_Acts 7:33_reference_end_ _reference_start_Acts 21:28_reference_end_ ROM 11:16 (2 occurrences) _reference_start_Romans 11:16_reference_end_ _reference_start_1 Corinthians 3:17_reference_end_ _reference_start_Ephesians 2:21_reference_end_ _reference_start_2 Timothy 1:9_reference_end_ HEB 8:2; 9:1, 2, 3 (2 occurrences), 12, 24, 25; 10:19; 13:11 _reference_start_Hebrews 8:2_reference_end_ _reference_start_Hebrews 9:1_reference_end_ _reference_start_Hebrews 9:2_reference_end_ _reference_start_Hebrews 9:3_reference_end_ _reference_start_Hebrews 9:12_reference_end_ _reference_start_Hebrews 9:24_reference_end_ _reference_start_Hebrews 9:25_reference_end_ _reference_start_Hebrews 10:19_reference_end_ _reference_start_Hebrews 13:11_reference_end_ _reference_start_2 Peter 1:18_reference_end_ _reference_start_Revelation 11:2_reference_end_ _reference_start_Revelation 21:2_reference_end_ _reference_start_Revelation 21:10_reference_end_ _reference_start_Revelation 22:19_reference_end_ \en2 4. Morally pure like God \gtrm ƒgiov \trnl hagios _reference_start_Ephesians 1:4_reference_end_ _reference_start_Ephesians 5:27_reference_end_ _reference_start_Colossians 1:22_reference_end_ 1PE 1:15 (2 occurrences), 16 (2 occurrences) _reference_start_1 Peter 1:15_reference_end_ _reference_start_1 Peter 1:16_reference_end_ \gtrm ³eroprepjv \trnl hieroprepæs _reference_start_Titus 2:3_reference_end_ \gtrm ésiov \trnl hosios _reference_start_Acts 2:27_reference_end_ _reference_start_Acts 13:35_reference_end_ _reference_start_1 Timothy 2:8_reference_end_ _reference_start_Titus 1:8_reference_end_ _reference_start_Hebrews 7:26_reference_end_ \gtrm ésiwv \trnl hosiõs _reference_start_1 Thessalonians 2:10_reference_end_ \gtrm amwmov \trnl amõmos _reference_start_Ephesians 1:4_reference_end_ _reference_start_Ephesians 5:27_reference_end_ _reference_start_Philippians 2:15_reference_end_ _reference_start_Colossians 1:22_reference_end_ _reference_start_Hebrews 9:14_reference_end_ _reference_start_1 Peter 1:19_reference_end_ _reference_start_Jude 1:24_reference_end_ _reference_start_Revelation 14:5_reference_end_ \gtrm amwmjtov \trnl amõmætos _reference_start_2 Peter 3:14_reference_end_ \gtrm amemptov \trnl amemptos _reference_start_Luke 1:6_reference_end_ _reference_start_Philippians 2:15_reference_end_ _reference_start_Philippians 3:6_reference_end_ _reference_start_Hebrews 8:7_reference_end_ \gtrm amemptwv \trnl amemptõs _reference_start_1 Thessalonians 2:10_reference_end_ _reference_start_1 Thessalonians 3:13_reference_end_ _reference_start_1 Thessalonians 5:23_reference_end_ \gtrm anenkljtov \trnl anenklætos _reference_start_1 Corinthians 1:8_reference_end_ _reference_start_Colossians 1:22_reference_end_ _reference_start_1 Timothy 3:10_reference_end_ _reference_start_Titus 1:6_reference_end_ _reference_start_Titus 1:7_reference_end_ \gtrm anepiljmptov \trnl anepilæmptos _reference_start_1 Timothy 3:2_reference_end_ _reference_start_1 Timothy 5:7_reference_end_ _reference_start_1 Timothy 6:14_reference_end_ \gtrm akeraiov \trnl akeraios _reference_start_Philippians 2:15_reference_end_ \en2 5. To dedicate and set aside for God, to consecrate \gtrm ƒgiazw \trnl hagiazõ _reference_start_Matthew 23:17_reference_end_ _reference_start_Matthew 23:19_reference_end_ _reference_start_John 10:36_reference_end_ _reference_start_John 17:17_reference_end_ _reference_start_John 17:19_reference_end_ _reference_start_Acts 20:32_reference_end_ _reference_start_Acts 26:18_reference_end_ _reference_start_Romans 15:16_reference_end_ 1CO 1:2; 6:11; 7:14 (2 occurrences) _reference_start_1 Corinthians 1:2_reference_end_ _reference_start_1 Corinthians 6:11_reference_end_ _reference_start_1 Corinthians 7:14_reference_end_ _reference_start_Ephesians 5:26_reference_end_ _reference_start_1 Thessalonians 5:23_reference_end_ _reference_start_1 Timothy 4:5_reference_end_ _reference_start_2 Timothy 2:21_reference_end_ HEB 2:11 (2 occurrences); 9:13; 10:10, 14, 29; 13:12 _reference_start_Hebrews 2:11_reference_end_ _reference_start_Hebrews 9:13_reference_end_ _reference_start_Hebrews 10:10_reference_end_ _reference_start_Hebrews 10:14_reference_end_ _reference_start_Hebrews 10:29_reference_end_ _reference_start_Hebrews 13:12_reference_end_ _reference_start_Revelation 22:11_reference_end_ \en2 6. To respectfully acknowledge, or reverence as holy \gtrm ƒgiazw \trnl hagiazõ _reference_start_Matthew 6:9_reference_end_ _reference_start_Luke 11:2_reference_end_ _reference_start_1 Peter 3:15_reference_end_ \en2 7. The state of being holy \gtrm ésiotjv \trnl hosiotæs _reference_start_Luke 1:75_reference_end_ _reference_start_Ephesians 4:24_reference_end_ \gtrm ƒgiasmov \trnl hagiasmos _reference_start_1 Corinthians 1:30_reference_end_ _reference_start_1 Thessalonians 4:3_reference_end_ _reference_start_1 Thessalonians 4:4_reference_end_ _reference_start_1 Thessalonians 4:7_reference_end_ _reference_start_1 Timothy 2:15_reference_end_ _reference_start_Hebrews 12:14_reference_end_ \gtrm ƒgiotjv \trnl hagiotæs _reference_start_2 Corinthians 1:12_reference_end_ _reference_start_Hebrews 12:10_reference_end_ \gtrm ƒgiwsunj \trnl hagiõsunæ _reference_start_Romans 1:4_reference_end_ _reference_start_2 Corinthians 7:1_reference_end_ _reference_start_1 Thessalonians 3:13_reference_end_ \en2 8. The process of becoming holy \gtrm ƒgiasmov \trnl hagiasmos _reference_start_Romans 6:19_reference_end_ _reference_start_Romans 6:22_reference_end_ _reference_start_2 Thessalonians 2:13_reference_end_ _reference_start_1 Peter 1:2_reference_end_ Q6B))/HOUSE (OF GOD)house (of god)\see (see TEMPLE)^AOO1HOPE, ANTICIPATE, EXPECT, RELY ONhope, anticipate, expect, rely on\o1 Hope -- an unclassified list \gtrm elpizw \trnl elpizõ \xref [L&N 25.59] \def to hope for \xref [L&N 30.54] \def to expect \gtrm elpiv \trnl elpis \xref [L&N 25.59] \def to be the first to hope for \xref [L&N 25.61] \def what is hoped for \xref [L&N 25.62] \def basis for hope \gtrm aro@{{yHOLY, HOLINESS, SACRED, SAINT, SANCTIFY, SANCTIFICATIONholy, holiness, sacred, saint, sanctify, sanctification\see (see also CLEAN, HOLY SPIRIT, JUST) \o1 1. Attribute of God, unique, unapproachable, beyond knowing, like God \o1 2. Originating from God \o2 a. Holy Spirit, Spirit of God \o2 b. Holy in titles for Christ, proceeding from God \o2 c. holy angels, angels sent by God \o2 d. holy prophets ?tfXJ<. xj\N@2$|n`RD6( $. #B "B !B B B B B B B B B  B  B B B A = < < < :  : : 9 9 6 5 4 4 3 3 3 3 3 2 2 2 ~1 }1 |1 {1 z1 y1 x1 w1 v1 u/ t/ s/ r/  q/ p/ o. n. m. l.! k." j. i. h. g. f- ?tfXJ<. xj\N@2$|n`RD6( c2 b6 a6 `6 _8 ^8 ]6 \3 [. Z4 Y4 X4 W: V2 U2 T* S= RB QA P< O:  N3 M2 L1 K1 J4 I: H8 G6 F, # E, D8 C< B< A3 @1 ?1 >B =B <B ;B  := 9: 8:  7:  6:  5: 4:  3:  2:  1: 07 /1 .. --  ,, +,! *, )(5 (( '( &( %B ?tfXJ<. xj\N@2$|n`RD6( "6 !2 2 /  / / / . . .  - - - - , , +- * * *" (  < 5 - - 4 / - : / :  6 4 4 4 . ~1 }*K |< {*  z( yB x: w:  v:  u: t: s: r7 q6 p4 o1 n. m. l. k- j, i, h+ g+ f+ $ e( d(a \trnl ara \xref [L&N 71.19] \def perhaps \xref [L&N 89.46] \def as a result \xref [L&N 71.7] \def possible \gtrm proelpizw \trnl proelpizõ \xref [L&N 25.60] \def hope beforehand \en2 Hope -- an unclassified list \gtrm elpizw \trnl elpizõ _reference_start_Matthew 12:21_reference_end_ _reference_start_Luke 6:34_reference_end_ _reference_start_Luke 23:8_reference_end_ _reference_start_Luke 24:21_reference_end_ _reference_start_John 5:45_reference_end_ _reference_start_Acts 24:26_reference_end_ _reference_start_Acts 26:7_reference_end_ _reference_start_Romans 8:24_reference_end_ _reference_start_Romans 8:25_reference_end_ _reference_start_Romans 15:12_reference_end_ _reference_start_Romans 15:24_reference_end_ _reference_start_1 Corinthians 13:7_reference_end_ _reference_start_1 Corinthians 15:19_reference_end_ _reference_start_1 Corinthians 16:7_reference_end_ _reference_start_2 Corinthians 1:10_reference_end_ _reference_start_2 Corinthians 1:13_reference_end_ _reference_start_2 Corinthians 5:11_reference_end_ _reference_start_2 Corinthians 13:6_reference_end_ _reference_start_Philippians 2:19_reference_end_ _reference_start_Philippians 2:23_reference_end_ _reference_start_1 Timothy 3:14_reference_end_ _reference_start_1 Timothy 4:10_reference_end_ _reference_start_1 Timothy 5:5_reference_end_ _reference_start_1 Timothy 6:17_reference_end_ _reference_start_Hebrews 11:1_reference_end_ _reference_start_1 Peter 1:13_reference_end_ _reference_start_1 Peter 3:5_reference_end_ _reference_start_1 Peter 3:15_reference_end_ _reference_start_2 John 1:12_reference_end_ _reference_start_3 John 1:14_reference_end_ \gtrm elpiv \trnl elpis _reference_start_Acts 2:26_reference_end_ _reference_start_Acts 16:19_reference_end_ _reference_start_Acts 23:6_reference_end_ _reference_start_Acts 24:15_reference_end_ _reference_start_Acts 26:6_reference_end_ _reference_start_Acts 26:7_reference_end_ _reference_start_Acts 27:20_reference_end_ _reference_start_Acts 28:20_reference_end_ ROM 4:18 (2 occurrences); 5:2, 4, 5; 8:20; 12:12; 15:4, 13 (2 occurrences) _reference_start_Romans 4:18_reference_end_ _reference_start_Romans 5:2_reference_end_ _reference_start_Romans 5:4_reference_end_ _reference_start_Romans 5:5_reference_end_ _reference_start_Romans 8:20_reference_end_ _reference_start_Romans 12:12_reference_end_ _reference_start_Romans 15:4_reference_end_ _reference_start_Romans 15:13_reference_end_ 1CO 9:10 (2 occurrences); 13:13 _reference_start_1 Corinthians 9:10_reference_end_ _reference_start_1 Corinthians 13:13_reference_end_ _reference_start_2 Corinthians 1:7_reference_end_ _reference_start_2 Corinthians 3:12_reference_end_ _reference_start_2 Corinthians 10:15_reference_end_ _reference_start_Galatians 5:5_reference_end_ _reference_start_Ephesians 1:18_reference_end_ _reference_start_Ephesians 2:12_reference_end_ _reference_start_Ephesians 4:4_reference_end_ _reference_start_Philippians 1:20_reference_end_ _reference_start_Colossians 1:5_reference_end_ _reference_start_Colossians 1:23_reference_end_ _reference_start_Colossians 1:27_reference_end_ _reference_start_1 Thessalonians 1:3_reference_end_ _reference_start_1 Thessalonians 2:19_reference_end_ _reference_start_1 Thessalonians 4:13_reference_end_ _reference_start_1 Thessalonians 5:8_reference_end_ _reference_start_2 Thessalonians 2:16_reference_end_ _reference_start_1 Timothy 1:1_reference_end_ _reference_start_Titus 1:2_reference_end_ _reference_start_Titus 2:13_reference_end_ _reference_start_Titus 3:7_reference_end_ _reference_start_Hebrews 3:6_reference_end_ _reference_start_Hebrews 6:11_reference_end_ _reference_start_Hebrews 6:18_reference_end_ _reference_start_Hebrews 7:19_reference_end_ _reference_start_Hebrews 10:23_reference_end_ _reference_start_1 Peter 1:3_reference_end_ _reference_start_1 Peter 1:21_reference_end_ _reference_start_1 John 3:3_reference_end_ \gtrm ara \trnl ara _reference_start_Acts 17:27_reference_end_ \gtrm proelpizw \trnl proelpizõ _reference_start_Ephesians 1:12_reference_end_ \itrm Implied _reference_start_Hebrews 6:19_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( a( `( _( ^( ]( \: [1 Z, Y> X< W< V:  U: T: S: R: Q8 P8 O8 N6 M5 L4 K4 J4 I4 H3 G3 F3 E2 D1 C1 B1 A0 @/  ?/ >/ =. <. ;- :- 9- 8- 7- 6- 5- 4- 3, 2, 1, 0, /, ., -, ,, +@ *? )< (< '< &:  %6 $6 #6 e_start_Matthew 23:29_reference_end_ _reference_start_Matthew 24:51_reference_end_ _reference_start_Mark 7:6_reference_end_ _reference_start_Luke 6:42_reference_end_ _reference_start_Luke 12:56_reference_end_ _reference_start_Luke 13:15_reference_end_ \en2 2. Hypocrisy \gtrm Ãpokrisiv \trnl hupokrisis _reference_start_Matthew 23:28_reference_end_ _reference_start_Mark 12:15_reference_end_ _reference_start_Luke 12:1_reference_end_ _reference_start_Galatians 2:13_reference_end_ _reference_start_1 Timothy 4:2_reference_end_ _reference_start_1 Peter 2:1_reference_end_ \en2 3. To pretend \gtrm Ãpokrinomai \trnl hupokrinomai _reference_start_Luke 20:20_reference_end_ \en2 4. Opposite of hypocrisy, genuine \gtrm anupokritov \trnl anupokritos _reference_start_Romans 12:9_reference_end_ _reference_start_2 Corinthians 6:6_reference_end_ _reference_start_1 Timothy 1:5_reference_end_ _reference_start_2 Timothy 1:5_reference_end_ _reference_start_1 Peter 1:22_reference_end_ _reference_start_James 3:17_reference_end_ 00DC]HYPOCRITEhypocrite\o1 1. Hypocrite \o1 2. Hypocrisy \o1 3. To pretend \o1 4. Opposite of hypocrisy, genuine \gtrm anupokritov \trnl anupokritos \xref [L&N 73.8] \def unpretentious, genuine \gtrm Ãpokrinomai \trnl hupokrinomai \xref [L&N 88.227] \def to pretend \gtrm Ãpokrisiv \trnl hupokrisis \xref [L&N 88.227] \def pretense \gtrm Ãpokritjv \trnl hupokritæs \xref [L&N 88.228] \def pretender \en2 1. Hypocrite \gtrm Ãpokritjv \trnl hupokritæs _reference_start_Matthew 6:2_reference_end_ _reference_start_Matthew 6:5_reference_end_ _reference_start_Matthew 6:16_reference_end_ _reference_start_Matthew 7:5_reference_end_ _reference_start_Matthew 15:7_reference_end_ _reference_start_Matthew 22:18_reference_end_ _reference_start_Matthew 23:13_reference_end_ _reference_start_Matthew 23:15_reference_end_ _reference_start_Matthew 23:23_reference_end_ _reference_start_Matthew 23:25_reference_end_ _reference_start_Matthew 23:27_reference_end_ _referenc ?tfXJ<. xj\N@2$|n`RD6( B B 1 .  . . . 0 < 3 .  , B  > 4 / .  .  . . - , ,) . ,% , 5 2 0 / . , , , ~, },  |,+ {,( z; y< x7 w6 v/ u- t* s< r6 q0 p*  o)  n( m*  l* 8 k** j) i(3 h( g( f( e( d( c( b(l worship \o2 c. Idol worshipper \o2 d. food dedicated to idols \o1 3. Other gods \gtrm qeov \trnl theos \xref [L&N 12.1] \def God \xref [L&N 12.15] \def Son of God \xref [L&N 12.22] \def god \xref [L&N 12.25] \def goddess \xref [L&N 12.24] \def The god of this world (Satan) \gtrm eidwleion \trnl eidõleion \xref [L&N 7.19] \def temple of an idol \gtrm eidwloquton \trnl eidõlothuton \xref [L&N 5.15] \def sacrificial meat \gtrm eidwlolatria \trnl eidõlolatria \xref [L&N 53.63] \def idolatry \gtrm eidwlolatrjv \trnl eidõlolatræs \xref [L&N 53.64] \def worshipper of idols \gtrm eidwlon \trnl eidõlon \xref [L&N 6.97] \def idol \xref [L&N 12.23] \def false god \gtrm kateidwlov \trnl kateidõlos \xref [L&N 6.98] \def full of idols \gtrm puqwn \trnl puthõn \xref [L&N 12.48] \def spirit of divination \gtrm daimonion \trnl daimonion \xref [L&N 12.37] \def demon \xref [L&N 12.26] \def god, lesser than theos 12.22 \gtrm qea \trnl thea \xref [L&N 12.25] \def goddess \gtrm kuriov \trnl kurios \xref [L&N 12.9] \def Lord (also Owner, Ruler, and Sir) \en2 1. False “theos” gods \en3 a. Masculine \gtrm qeov \trnl theos ACT 7:40, 43; 12:22; 14:11; 17:23; 19:26 (2 occurrences); 28:6 _reference_start_Acts 7:40_reference_end_ _reference_start_Acts 7:43_reference_end_ _reference_start_Acts 12:22_reference_end_ _reference_start_Acts 14:11_reference_end_ _reference_start_Acts 17:23_reference_end_ _reference_start_Acts 19:26_reference_end_ _reference_start_Acts 28:6_reference_end_ 1CO 8:5 (2 occurrences) _reference_start_1 Corinthians 8:5_reference_end_ _reference_start_2 Corinthians 4:4_reference_end_ _reference_start_Galatians 4:8_reference_end_ _reference_start_Philippians 3:19_reference_end_ _reference_start_2 Thessalonians 2:4_reference_end_ \en3 b. Feminine \gtrm qea \trnl thea _reference_start_Acts 19:27_reference_end_ _reference_start_Acts 19:37_reference_end_ \en2 2. Idol (eidõlon) gods \en3 a. Idol \gtrm eidwleion \trnl eidõleion _reference_start_1 Corinthians 8:10_reference_end_ \gtrm eidwlon \trnl eidõlon _reference_start_Acts 7:41_reference_end_ _reference_start_Acts 15:20_reference_end_ _reference_start_Romans 2:22_reference_end_ _reference_start_1 Corinthians 8:4_reference_end_ _reference_start_1 Corinthians 8:7_reference_end_ _reference_start_1 Corinthians 10:19_reference_end_ _reference_start_1 Corinthians 12:2_reference_end_ _reference_start_2 Corinthians 6:16_reference_end_ _reference_start_1 Thessalonians 1:9_reference_end_ _reference_start_1 John 5:21_reference_end_ _reference_start_Revelation 9:20_reference_end_ \gtrm kateidwlov \trnl kateidõlos _reference_start_Acts 17:16_reference_end_ \en3 b. Idol worship \gtrm eidwlolatria \trnl eidõlolatria _reference_start_1 Corinthians 10:14_reference_end_ _reference_start_Colossians 3:5_reference_end_ _reference_start_1 Peter 4:3_reference_end_ _reference_start_Galatians 5:20_reference_end_ \en3 c. Idol worshipper \gtrm eidwlolatrjv \trnl eidõlolatræs _reference_start_1 Corinthians 5:10_reference_end_ _reference_start_1 Corinthians 5:11_reference_end_ _reference_start_1 Corinthians 6:9_reference_end_ _reference_start_1 Corinthians 10:7_reference_end_ _reference_start_Ephesians 5:5_reference_end_ _reference_start_Revelation 21:8_reference_end_ _reference_start_Revelation 22:15_reference_end_ \en3 d. food dedicated to idols \gtrm eidwloquton \trnl eidõlothuton _reference_start_Acts 15:29_reference_end_ _reference_start_Acts 21:25_reference_end_ _reference_start_1 Corinthians 8:1_reference_end_ _reference_start_1 Corinthians 8:4_reference_end_ _reference_start_1 Corinthians 8:7_reference_end_ _reference_start_1 Corinthians 8:10_reference_end_ _reference_start_1 Corinthians 10:19_reference_end_ _reference_start_Revelation 2:14_reference_end_ _reference_start_Revelation 2:20_reference_end_ \en2 3. Other gods \gtrm puqwn \trnl puthõn ACT 16:16 (hapax legomenon) _reference_start_Acts 16:16_reference_end_ \gtrm daimonion \trnl daimonion _reference_start_Acts 17:18_reference_end_ \gtrm kuriov \trnl kurios _reference_start_1 Corinthians 8:5_reference_end_ _5FcIN CHRISTin christ\o1 In Christ, an unclassified list of references \gtrm eis/en cristov \trnl eis/en christos \xref [L&N 93.387] \def Christ \gtrm (cristov, ou) \trnl (christos, ou) \xref [L&N 53.82] \def Messiah \note For senses of this phrase, see “The Meaning of in Christ”, by Clarence Hale \en2 In Christ, an unclassified list of references \gtrm eis/en cristov \trnl eis/en christos _reference_start_Acts 24:24_reference_end_ _reference_start_Romans 3:24_reference_end_ _reference_start_Romans 6:11_reference_end_ _r'E1IMPUREimpure\see (see UNCLEAN) D!!cIDOL, GODSidol, gods\o1 1. False “theos” gods \o2 a. Masculine \o2 b. Feminine \o1 2. Idol (eidõlon) gods \o2 a. Idol \o2 b. Ido ?tfXJ<. xj\N@2$|n`RD6( _1 ^1 ]1 \1 [1 Z1 Y1 X1 W1 V1 U1 T0 S0 R0 Q0 P0 O0 N0 M/  L/  K/ J/ I/ H/ G/ F. E. D. C. B. A. @. ?. >. =. <. ;. :- 9- 8- 7- 6- 5-  4-  3-' 2- 1- 0- /- .- -, ,. +, *, )B (B '.  &. %. $. #. ", !,eference_start_Romans 6:23_reference_end_ _reference_start_Romans 8:1_reference_end_ _reference_start_Romans 8:2_reference_end_ _reference_start_Romans 8:39_reference_end_ _reference_start_Romans 9:1_reference_end_ _reference_start_Romans 12:5_reference_end_ _reference_start_Romans 15:17_reference_end_ _reference_start_Romans 16:3_reference_end_ _reference_start_Romans 16:7_reference_end_ _reference_start_Romans 16:9_reference_end_ _reference_start_Romans 16:10_reference_end_ 1CO 1:2, 4, 30; 3:1; 4:10, 15 (2 occurrences), 17; 15:18, 19, 22, 31; 16:24 _reference_start_1 Corinthians 1:2_reference_end_ _reference_start_1 Corinthians 1:4_reference_end_ _reference_start_1 Corinthians 1:30_reference_end_ _reference_start_1 Corinthians 3:1_reference_end_ _reference_start_1 Corinthians 4:10_reference_end_ _reference_start_1 Corinthians 4:15_reference_end_ _reference_start_1 Corinthians 4:17_reference_end_ _reference_start_1 Corinthians 15:18_reference_end_ _reference_start_1 Corinthians 15:19_reference_end_ _reference_start_1 Corinthians 15:22_reference_end_ _reference_start_1 Corinthians 15:31_reference_end_ _reference_start_1 Corinthians 16:24_reference_end_ _reference_start_2 Corinthians 1:21_reference_end_ _reference_start_2 Corinthians 2:14_reference_end_ _reference_start_2 Corinthians 2:17_reference_end_ _reference_start_2 Corinthians 5:17_reference_end_ _reference_start_2 Corinthians 5:19_reference_end_ _reference_start_2 Corinthians 12:2_reference_end_ _reference_start_2 Corinthians 12:19_reference_end_ GAL 2:4, 16 (2 occurrences), 17; 3:14, 26, 28; 5:6 _reference_start_Galatians 2:4_reference_end_ _reference_start_Galatians 2:16_reference_end_ _reference_start_Galatians 2:17_reference_end_ _reference_start_Galatians 3:14_reference_end_ _reference_start_Galatians 3:26_reference_end_ _reference_start_Galatians 3:28_reference_end_ _reference_start_Galatians 5:6_reference_end_ _reference_start_Ephesians 1:1_reference_end_ _reference_start_Ephesians 1:3_reference_end_ _reference_start_Ephesians 1:9_reference_end_ _reference_start_Ephesians 1:12_reference_end_ _reference_start_Ephesians 1:20_reference_end_ _reference_start_Ephesians 2:6_reference_end_ _reference_start_Ephesians 2:7_reference_end_ _reference_start_Ephesians 2:10_reference_end_ _reference_start_Ephesians 2:13_reference_end_ _reference_start_Ephesians 3:6_reference_end_ _reference_start_Ephesians 3:11_reference_end_ _reference_start_Ephesians 3:21_reference_end_ _reference_start_Ephesians 4:32_reference_end_ _reference_start_Philippians 1:1_reference_end_ _reference_start_Philippians 1:26_reference_end_ _reference_start_Philippians 2:1_reference_end_ _reference_start_Philippians 2:5_reference_end_ _reference_start_Philippians 3:3_reference_end_ _reference_start_Philippians 3:9_reference_end_ _reference_start_Philippians 3:14_reference_end_ _reference_start_Philippians 4:7_reference_end_ _reference_start_Philippians 4:19_reference_end_ _reference_start_Philippians 4:21_reference_end_ _reference_start_Colossians 1:2_reference_end_ _reference_start_Colossians 1:4_reference_end_ _reference_start_Colossians 1:28_reference_end_ _reference_start_Colossians 2:5_reference_end_ _reference_start_1 Thessalonians 2:14_reference_end_ _reference_start_1 Thessalonians 4:16_reference_end_ _reference_start_1 Thessalonians 5:18_reference_end_ _reference_start_1 Timothy 1:14_reference_end_ _reference_start_1 Timothy 3:13_reference_end_ _reference_start_2 Timothy 1:1_reference_end_ _reference_start_2 Timothy 1:9_reference_end_ _reference_start_2 Timothy 1:13_reference_end_ _reference_start_2 Timothy 2:1_reference_end_ _reference_start_2 Timothy 2:10_reference_end_ _reference_start_2 Timothy 3:12_reference_end_ _reference_start_2 Timothy 3:15_reference_end_ _reference_start_Philemon 1:6_reference_end_ _reference_start_Philemon 1:8_reference_end_ _reference_start_Philemon 1:20_reference_end_ _reference_start_Philemon 1:23_reference_end_ _reference_start_1 Peter 3:16_reference_end_ _reference_start_1 Peter 5:10_reference_end_ _reference_start_1 Peter 5:14_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( + + +1 + * * * * * *" * * *P *D *6 * ) )  (* ( ( ( ( (  ( ! ( ( -  < < < 9 ~9 }9 |9 {7 z7 y7 x7 w7 v7 u7 t6 s6 r4 q4 p4 o3 n3 m3 l3 k2 j2 i2 h2 g2 f2 e2 d2 c2 b2 a1 `1e_start_Romans 9:6_reference_end_ \en2 2. All the people descended from Israel, the nation of Israel \gtrm israjl \trnl israæl MAT 2:6; 8:10 (alternate sense 4.); 9:33 (alternate sense 4.); 10:6; 15:24, 31; 19:28; 27:9, 42 _reference_start_Matthew 2:6_reference_end_ _reference_start_Matthew 8:10_reference_end_ _reference_start_Matthew 9:33_reference_end_ _reference_start_Matthew 10:6_reference_end_ _reference_start_Matthew 15:24_reference_end_ _reference_start_Matthew 15:31_reference_end_ _reference_start_Matthew 19:28_reference_end_ _reference_start_Matthew 27:9_reference_end_ _reference_start_Matthew 27:42_reference_end_ _reference_start_Mark 12:29_reference_end_ _reference_start_Mark 15:32_reference_end_ LUK 1:16, 54, 68, 80; 2:25, 32, 34 (alternate sense 4.); 4:25 (alternate sense 4.), 27 (alternate sense 4.); 7:9 (alternate sense 4.); 22:30; 24:21 _reference_start_Luke 1:16_reference_end_ _reference_start_Luke 1:54_reference_end_ _reference_start_Luke 1:68_reference_end_ _reference_start_Luke 1:80_reference_end_ _reference_start_Luke 2:25_reference_end_ _reference_start_Luke 2:32_reference_end_ _reference_start_Luke 2:34_reference_end_ _reference_start_Luke 4:25_reference_end_ _reference_start_Luke 4:27_reference_end_ _reference_start_Luke 7:9_reference_end_ _reference_start_Luke 22:30_reference_end_ _reference_start_Luke 24:21_reference_end_ _reference_start_John 1:31_reference_end_ _reference_start_John 1:49_reference_end_ _reference_start_John 3:10_reference_end_ _reference_start_John 12:13_reference_end_ _reference_start_Acts 1:6_reference_end_ _reference_start_Acts 2:36_reference_end_ _reference_start_Acts 4:10_reference_end_ _reference_start_Acts 4:27_reference_end_ _reference_start_Acts 5:21_reference_end_ _reference_start_Acts 5:31_reference_end_ _reference_start_Acts 7:23_reference_end_ _reference_start_Acts 7:37_reference_end_ _reference_start_Acts 7:42_reference_end_ _reference_start_Acts 9:15_reference_end_ _reference_start_Acts 10:36_reference_end_ _reference_start_Acts 13:17_reference_end_ _reference_start_Acts 13:23_reference_end_ _reference_start_Acts 13:24_reference_end_ _reference_start_Acts 28:20_reference_end_ ROM 9:27 (2 occurrences), 31; 10:19, 21; 11:2, 7, 11 (contextually implied, literally: them), 25, 26 _reference_start_Romans 9:27_reference_end_ _reference_start_Romans 9:31_reference_end_ _reference_start_Romans 10:19_reference_end_ _reference_start_Romans 10:21_reference_end_ _reference_start_Romans 11:2_reference_end_ _reference_start_Romans 11:7_reference_end_ _reference_start_Romans 11:11_reference_end_ _reference_start_Romans 11:25_reference_end_ _reference_start_Romans 11:26_reference_end_ _reference_start_1 Corinthians 10:18_reference_end_ _reference_start_2 Corinthians 3:7_reference_end_ _reference_start_2 Corinthians 3:13_reference_end_ _reference_start_Philippians 3:5_reference_end_ _reference_start_Hebrews 8:10_reference_end_ _reference_start_Hebrews 11:22_reference_end_ _reference_start_Revelation 2:14_reference_end_ _reference_start_Revelation 7:4_reference_end_ _reference_start_Revelation 21:12_reference_end_ \gtrm israjleitjv \trnl israæleitæs _reference_start_John 1:47_reference_end_ _reference_start_Acts 2:22_reference_end_ _reference_start_Acts 3:12_reference_end_ _reference_start_Acts 5:35_reference_end_ _reference_start_Acts 13:16_reference_end_ _reference_start_Acts 21:28_reference_end_ _reference_start_Romans 9:4_reference_end_ _reference_start_Romans 11:1_reference_end_ _reference_start_2 Corinthians 11:22_reference_end_ \en2 3. God's people of whatever ethnic origin \gtrm israjl \trnl israæl _reference_start_Romans 9:6_reference_end_ _reference_start_Galatians 6:16_reference_end_ _reference_start_Ephesians 2:12_reference_end_ \en2 4. The land of Israel \gtrm israjl \trnl israæl _reference_start_Matthew 2:20_reference_end_ _reference_start_Matthew 2:21_reference_end_ _reference_start_Matthew 10:23_reference_end_ \en2 5. The kingdom of Israel in contrast to the kingdom of Judah \gtrm israjl \trnl israæl _reference_start_Hebrews 8:8_reference_end_ OG//SISRAEL, ISRAELITEisrael, israelite\o1 1. The man Jacob by his God given name, Israel \o1 2. All the people descended from Israel, the nation of Israel \o1 3. God's people of whatever ethnic origin \o1 4. The land of Israel \o1 5. The kingdom of Israel in contrast to the kingdom of Judah \gtrm israjl \trnl israæl \def Israel \gtrm israjleitjv \trnl israæleitæs \def Israelites \en2 1. The man Jacob by his God given name, Israel \gtrm israjl \trnl israæl _referenc ?tfXJ<. xj\N@2$|n`RD6( ]*% \* [) Z) Y) X) W) V* U) T( S(% R( Q( P( O: N(  M( L( K1 J0 I-  H/  G-  F-  E, D,  C,# B, A, @+/ ?B >B =B <:  ;: :2 9/ 8/ 7.  6-  5-  4- 3-  2-  1-  0-  /-  .-  -, ,,  +,  *,  ), $ (,  ',* &,% %, $, #, ", !, ,$ , [L&N 93.171] \def Jewish \en2 1. The people of Israel \gtrm ioudaiov, ou \trnl ioudaios, ou _reference_start_Matthew 2:2_reference_end_ _reference_start_Matthew 27:11_reference_end_ _reference_start_Matthew 27:29_reference_end_ _reference_start_Matthew 27:37_reference_end_ _reference_start_Matthew 28:15_reference_end_ _reference_start_Mark 7:3_reference_end_ _reference_start_Luke 7:3_reference_end_ _reference_start_Mark 15:2_reference_end_ _reference_start_Mark 15:9_reference_end_ _reference_start_Mark 15:12_reference_end_ _reference_start_Mark 15:18_reference_end_ _reference_start_Mark 15:26_reference_end_ _reference_start_Luke 23:3_reference_end_ _reference_start_Luke 23:37_reference_end_ _reference_start_Luke 23:38_reference_end_ _reference_start_Luke 23:50_reference_end_ _reference_start_Luke 23:51_reference_end_ JHN 2:6, 13; 3:1; 4:9 (2 occurrences), 22; 5:1; 6:4; 7:2; 11:55; 18:12, 33, 35, 39; 19:3, 19, 20, 21 (3 occurrences), 40, 42 _reference_start_John 2:6_reference_end_ _reference_start_John 2:13_reference_end_ _reference_start_John 3:1_reference_end_ _reference_start_John 4:9_reference_end_ _reference_start_John 4:22_reference_end_ _reference_start_John 5:1_reference_end_ _reference_start_John 6:4_reference_end_ _reference_start_John 7:2_reference_end_ _reference_start_John 11:55_reference_end_ _reference_start_John 18:12_reference_end_ _reference_start_John 18:33_reference_end_ _reference_start_John 18:35_reference_end_ _reference_start_John 18:39_reference_end_ _reference_start_John 19:3_reference_end_ _reference_start_John 19:19_reference_end_ _reference_start_John 19:20_reference_end_ _reference_start_John 19:21_reference_end_ _reference_start_John 19:40_reference_end_ _reference_start_John 19:42_reference_end_ ACT 2:5, 10, 14; 9:22; 10:22, 28; 11:19; 12:11; 13:5, 6; 14:1 (2 occurrences), 2, 5; 16:1, 3, 20; 17:1, 10, 13, 17; 18:2 (2 occurrences), 4, 5, 24; 19:10, 13, 14, 17, 34; 20:21; 21:20, 21, 27, 39; 22:3, 12; 24:5, 18, 24, 27 (alternate sense 2.); 25:2, 8, 15, 24; 26:4; 28:17 _reference_start_Acts 2:5_reference_end_ _reference_start_Acts 2:10_reference_end_ _reference_start_Acts 2:14_reference_end_ _reference_start_Acts 9:22_reference_end_ _reference_start_Acts 10:22_reference_end_ _reference_start_Acts 10:28_reference_end_ _reference_start_Acts 11:19_reference_end_ _reference_start_Acts 12:11_reference_end_ _reference_start_Acts 13:5_reference_end_ _reference_start_Acts 13:6_reference_end_ _reference_start_Acts 14:1_reference_end_ _reference_start_Acts 14:2_reference_end_ _reference_start_Acts 14:5_reference_end_ _reference_start_Acts 16:1_reference_end_ _reference_start_Acts 16:3_reference_end_ _reference_start_Acts 16:20_reference_end_ _reference_start_Acts 17:1_reference_end_ _reference_start_Acts 17:10_reference_end_ _reference_start_Acts 17:13_reference_end_ _reference_start_Acts 17:17_reference_end_ _reference_start_Acts 18:2_reference_end_ _reference_start_Acts 18:4_reference_end_ _reference_start_Acts 18:5_reference_end_ _reference_start_Acts 18:24_reference_end_ _reference_start_Acts 19:10_reference_end_ _reference_start_Acts 19:13_reference_end_ _reference_start_Acts 19:14_reference_end_ _reference_start_Acts 19:17_reference_end_ _reference_start_Acts 19:34_reference_end_ _reference_start_Acts 20:21_reference_end_ _reference_start_Acts 21:20_reference_end_ _reference_start_Acts 21:21_reference_end_ _reference_start_Acts 21:27_reference_end_ _reference_start_Acts 21:39_reference_end_ _reference_start_Acts 22:3_reference_end_ _reference_start_Acts 22:12_reference_end_ _reference_start_Acts 24:5_reference_end_ _reference_start_Acts 24:18_reference_end_ _reference_start_Acts 24:24_reference_end_ _reference_start_Acts 24:27_reference_end_ _reference_start_Acts 25:2_reference_end_ _reference_start_Acts 25:8_reference_end_ _reference_start_Acts 25:15_reference_end_ _reference_start_Acts 25:24_reference_end_ _reference_start_Acts 26:4_reference_end_ _reference_start_Acts 28:17_reference_end_ _reference_start_Romans 1:16_reference_end_ _reference_start_Romans 2:9_reference_end_ _reference_start_Romans 2:10_reference_end_ _reference_start_Romans 2:17_reference_end_ _reference_start_Romans 2:28_reference_end_ _reference_start_Romans 2:29_reference_end_ _reference_start_Romans 3:1_reference_end_ _reference_start_Romans 3:9_reference_end_ _reference_start_Romans 3:29_reference_end_ _reference_start_Romans 9:24_reference_end_ _reference_start_Romans 10:12_reference_end_ 1CO 1:23; 9:20 (3 occurrences) _reference_start_1 Corinthians 1:23_reference_end_ _reference_start_1 Corinthians 9:20_reference_end_ _reference_start_2 Corinthians 11:24_reference_end_ _reference_start_Galatians 2:13_reference_end_ _reference_start_Galatians 2:14_reference_end_ _reference_start_Galatians 2:15_reference_end_ _reference_start_1 Corinthians 1:22_reference_end_ _reference_start_1 Corinthians 1:24_reference_end_ _reference_start_1 Corinthians 10:32_reference_end_ _reference_start_1 Corinthians 12:13_reference_end_ _reference_start_Galatians 3:28_reference_end_ _reference_start_Colossians 3:11_reference_end_ _reference_start_1 Thessalonians 2:14_reference_end_ REV 2:9 (i.e. spiritual Jews); 3:9 (i.e. spiritual Jews) _reference_start_Revelation 2:9_reference_end_ _reference_start_Revelation 3:9_reference_end_ \gtrm ioudaikov \trnl ioudaikos _reference_start_Titus 1:14_reference_end_ \gtrm ioudaizw \trnl ioudaizõ _reference_start_Galatians 2:14_reference_end_ \gtrm ioudaikwv \trnl ioudaikõs _reference_start_Galatians 2:14_reference_end_ \itrm Jew/Jewish by implication _reference_start_Acts 17:11_reference_end_ ROM 3:2 (literally: they); 11:14 (literally: of my flesh) _reference_start_Romans 3:2_reference_end_ _reference_start_Romans 11:14_reference_end_ \en2 2. Committed followers of the Jewish religious authorities, Judean leaders \gtrm ioudaiov, ou \trnl ioudaios, ou JHN 1:19; 2:18, 20; 3:25; 5:10, 15, 16, 18; 6:41, 52; 7:1, 11, 13, 15, 35; 8:22, 31 (alternate sense 1.), 48, 52, 57; 9:18, 22 (2 occurrences); 10:19, 24, 31, 33; 13:33; 18:14, 20, 31, 36, 38; 19:7, 12, 14, 31, 38; 20:19 _reference_start_John 1:19_reference_end_ _reference_start_John 2:18_reference_end_ _reference_start_John 2:20_reference_end_ _reference_start_John 3:25_reference_end_ _reference_start_John 5:10_reference_end_ _reference_start_John 5:15_reference_end_ _reference_start_John 5:16_reference_end_ _reference_start_John 5:18_reference_end_ _reference_start_John 6:41_reference_end_ _reference_start_John 6:52_reference_end_ _reference_start_John 7:1_reference_end_ _reference_start_John 7:11_reference_end_ _reference_start_John 7:13_reference_end_ _reference_start_John 7:15_reference_end_ _reference_start_John 7:35_reference_end_ _reference_start_John 8:22_reference_end_ _reference_start_John 8:31_reference_end_ _reference_start_John 8:48_reference_end_ _reference_start_John 8:52_reference_end_ _reference_start_John 8:57_reference_end_ _reference_start_John 9:18_reference_end_ _reference_start_John 9:22_reference_end_ _reference_start_John 10:19_reference_end_ _reference_start_John 10:24_reference_end_ _reference_start_John 10:31_reference_end_ _reference_start_John 10:33_reference_end_ _reference_start_John 13:33_reference_end_ _reference_start_John 18:14_reference_end_ _reference_start_John 18:20_reference_end_ _reference_start_John 18:31_reference_end_ _reference_start_John 18:36_reference_end_ _reference_start_John 18:38_reference_end_ _reference_start_John 19:7_reference_end_ _reference_start_John 19:12_reference_end_ _reference_start_John 19:14_reference_end_ _reference_start_John 19:31_reference_end_ _reference_start_John 19:38_reference_end_ _reference_start_John 20:19_reference_end_ ACT 9:23; 12:3; 13:43 (alternate sense 1.), 45 (alternate sense 1.), 50 (alternate sense 1.); 14:4, 19 (alternate sense 1.); 17:5 (alternate sense 1.); 18:12 (alternate sense 1.), 14 (2 occurrences) ( alternate sense 1.), 19 (alternate sense 1.), 28 (alternate sense 1.); 19:33 (alternate sense 1.); 20:3 (alternate sense 1.), 19 (alternate sense 1.); 21:11 (alternate sense 1.); 22:30 (alternate sense 1.); 23:12 (alternate sense 1.), 20, 27 (alternate sense 1.); 24:9 (alternate sense 1.); 25:7 (alternate sense 1.), 9 (alternate sense 1.), 10 (alternate sense 1.); 26:2 (alternate sense 1.), 3 (alternate sense 1.), 7 (alternate sense 1.), 21 (alternate sense 1.); 28:19 (alternate sense 1.) _reference_start_Acts 9:23_reference_end_ _reference_start_Acts 12:3_reference_end_ _reference_start_Acts 13:43_reference_end_ _reference_start_Acts 13:45_reference_end_ _reference_start_Acts 13:50_reference_end_ _reference_start_Acts 14:4_reference_end_ _reference_start_Acts 14:19_reference_end_ _reference_start_Acts 17:5_reference_end_ _reference_start_Acts 18:12_reference_end_ _reference_start_Acts 18:14_reference_end_ _reference_start_Acts 18:19_reference_end_ _reference_start_Acts 18:28_reference_end_ _reference_start_Acts 19:33_reference_end_ _reference_start_Acts 20:3_reference_end_ _reference_start_Acts 20:19_reference_end_ _reference_start_Acts 21:11_reference_end_ _reference_start_Acts 22:30_reference_end_ _reference_start_Acts 23:12_reference_end_ _reference_start_Acts 23:20_reference_end_ _reference_start_Acts 23:27_reference_end_ _reference_start_Acts 24:9_reference_end_ _reference_start_Acts 25:7_reference_end_ _reference_start_Acts 25:9_reference_end_ _reference_start_Acts 25:10_reference_end_ _reference_start_Acts 26:2_reference_end_ _reference_start_Acts 26:3_reference_end_ _reference_start_Acts 26:7_reference_end_ _reference_start_Acts 26:21_reference_end_ _reference_start_Acts 28:19_reference_end_ \en2 3. Local inhabitants of Judea \gtrm ioudaiov, ou \trnl ioudaios, ou JHN 11:8 (alternate sense 2.), 19, 31, 33, 36, 45, 54; 12:9, 11 _reference_start_John 11:8_reference_end_ _reference_start_John 11:19_reference_end_ _reference_start_John 11:31_reference_end_ _reference_start_John 11:33_reference_end_ _reference_start_John 11:36_reference_end_ _reference_start_John 11:45_reference_end_ _reference_start_John 11:54_reference_end_ _reference_start_John 12:9_reference_end_ _reference_start_John 12:11_reference_end_ _reference_start_Acts 10:39_reference_end_ gH##JEW, JEWISHjew, jewish\see (see also CIRCUMCISION, HEBREW, ISRAEL) \o1 1. The people of Israel \o1 2. Committed followers of the Jewish religious authorities, Judean leaders \o1 3. Local inhabitants of Judea \gtrm ioudaiov, ou \trnl ioudaios, ou \xref [L&N 93.172] \def Jew \gtrm ioudaiov, a, on \trnl ioudaios, a, on \xref [L&N 93.487] \def Judean \gtrm ioudaikov \trnl ioudaikos \xref [L&N 93.171] \def Jewish \gtrm ioudaizw \trnl ioudaizõ \xref [L&N 41.32] \def live as Jew \gtrm ioudaikwv \trnl ioudaikõs \xref ?tfXJ<. xj\N@2$|n`RD6( , , , , , , , ,' , , , , ," , , , , , , , , , , , , , , , , , ~, },  |,  {, z,  y,  x,  w,  v, u, t, s+* r+( q+ p+ o+ n+ m+' l+# k+! j+ i+ 7 h+ g+ f+ e+ d+ c+ b+ a+ `*3 _*2 ^*& ?tfXJ<. xj\N@2$|n`RD6( [+ ! Z+  Y+  X+  W+  V+  U+9 T+4 S+0 R+ Q+ P+# O+ N+ M+ L+ K+4 J+) I+ H+ G+ F+ E+ D+ C+ B+ A-  @- ?, >0 =0 <8 ;B :B 94 83 70 6. 5. 4. 3. 20 10 00 //  ..  -. ,- +-  *- )- (- '- &- %- $- #- "- !, , , , , ?tfXJ<. xj\N@2$|n`RD6( .  . .  .  - , , , , . , * 9 *+ , ' + + + 6 + - + $ + ! +  +  +  , , , , , , ~, }, |, {, z, y, x, w, v, u, t,! s, r, q, p, o, n, m, l, 2 k, - j, + i,  h,  g+ f+& e+ d+ c+ b+ a+& `+$ _+ ^+ ]+ \+ !\def evaluation, judgment, decision \xref [L&N 56.20] \def to try a case and give sentence \xref [L&N 56.22] \def authority to judge guilt or innocence \xref [L&N 56.24] \def verdict, guilty or not \xref [L&N 56.30] \def judge as guilty and punishable \xref [L&N 56.2] \def lawsuit \gtrm apokrima \trnl apokrima \xref [L&N 56.26] \def official decision which may also be a verdict \gtrm katakrima \trnl katakrima \xref [L&N 56.31] \def to judge to be definitely guilty and punishable \gtrm prokrima \trnl prokrima \xref [L&N 30.79] \def prejudge, to decide in a prejudiced manner (hapax legomenon) \gtrm krinw \trnl krinõ \xref [L&N 30.75] \def decide \xref [L&N 30.99] \def to prefer, judge to be better than... \xref [L&N 30.108] \def to evaluate, judge on correctness or value \xref [L&N 31.3] \def hold a view \xref [L&N 56.20] \def to try a case and give sentence \xref [L&N 56.30] \def condemn, judge as guilty and punishable \xref [L&N 37.49] \def rule \gtrm anakrinw \trnl anakrinõ \xref [L&N 30.109] \def analyze, judge on basis of details \gtrm diakrinw \trnl diakrinõ \xref [L&N 30.99] \def to prefer, judge to be better than... \gtrm epikrinw \trnl epikrinõ \xref [L&N 30.75] \def to decide (hapax legomenon) \gtrm katakrinw \trnl katakrinõ \xref [L&N 56.31] \def to judge to be definitely guilty and punishable \gtrm krisiv \trnl krisis \xref [L&N 30.110] \def evaluation, judgment, decision \xref [L&N 30.111] \def basis for judgment \xref [L&N 56.20] \def to try a case and give sentence \xref [L&N 56.22] \def authority to judge guilt or innocence \xref [L&N 56.24] \def verdict, guilty or not \xref [L&N 56.25] \def give justice, make a just verdict \xref [L&N 56.30] \def judge as guilty and punishable \gtrm anakrisiv \trnl anakrisis \xref [L&N 56.12] \def investigation in court (hapax legomenon) \gtrm diakrisiv \trnl diakrisis \xref [L&N 30.112] \def able to analyze \gtrm katakrisiv \trnl katakrisis \xref [L&N 56.31] \def to judge to be definitely guilty and punishable \gtrm dikaiokrisia \trnl dikaiokrisia \xref [L&N 56.27] \def a right or just verdict or judgment \gtrm kritjrion \trnl kritærion \xref [L&N 56.1] \def court of justice \xref [L&N 56.2] \def lawsuit \gtrm kritjv \trnl kritæs \xref [L&N 56.28] \def a presiding judge \gtrm kritikov \trnl kritikos \xref [L&N 56.23] \def able to judge legal cases (hapax legomenon) \xref [L&N 30.109] \def analyze, judge on basis of details \xref [L&N 30.113] \def discriminate, judge that there is a difference \gtrm autokatakritov \trnl autokatakritos \xref [L&N 30.119] \def condemned by one's own actions (hapax legomenon) \gtrm diaginwskw \trnl diaginõskõ \xref [L&N 56.21] \def to examine, deliberate, and give a verdict \gtrm diagnwsiv \trnl diagnõsis \xref [L&N 56.21] \def to arrive at a verdict after examination \gtrm kataginwskw \trnl kataginõskõ \xref [L&N 30.118] \def to judge something to be bad \gtrm katadikazw \trnl katadikazõ \xref [L&N 56.31] \def to judge to be definitely guilty and punishable \gtrm katadikj \trnl katadikæ \xref [L&N 56.31] \def to judge to be definitely guilty and punishable (hapax legomenon) \gtrm dokimazw \trnl dokimazõ \xref [L&N 30.114] \def approve, to regard as genuine or worthy on basis of testing \gtrm apodokimazw \trnl apodokimazõ \xref [L&N 30.117] \def reject, to judge something as not worthy or genuine \gtrm dokimov \trnl dokimos \xref [L&N 30.115] \def approval, pertaining to judging as genuine or worthy \gtrm apodiorizw \trnl apodiorizõ \xref [L&N 30.116] \def distinguish, to judge there to be a significant distinction between \xref [L&N 56.34] \def acquittal \gtrm dikastjv \trnl dikastæs \xref [L&N 56.28] \def a presiding judge \gtrm arcwn \trnl archõn \xref [L&N 56.29] \def an official, though minor, judge (usually a ruler or prince) \gtrm akatagnwstov \trnl akatagnõstos \xref [L&N 33.415] \def above criticism \gtrm bjma \trnl bæma \xref [L&N 7.63] \def judgment seat \gtrm para \trnl para \xref [L&N 90.20] \def in the sight of, from beholder's point of view +dative \gtrm prov \trnl pros \xref [L&N 90.20] \def in the sight of, to beholder's way of thinking +accusative \gtrm emprosqen sou \trnl emprosthen sou \xref [L&N 90.20] \def in the sight of, in front of \gtrm enantion \trnl enantion \xref [L&N 90.20] \def in the sight of, in front of \gtrm enwpion \trnl enõpion \xref [L&N 90.20] \def in the sight of, as present with the beholder +genitive \gtrm katenwpion \trnl katenõpion \xref [L&N 90.20] \def in the sight of, as directly in front of the beholder +genitive \gtrm proswpoljptew \trnl prosõpolæpteõ \xref [L&N 88.238] \def to be partial \gtrm proswtoljptjv \trnl prosõtolæptæs \xref [L&N 88.239] \def a respector of persons \gtrm proswpoljyia \trnl prosõpolæpsia \xref [L&N 88.238] \def partiality \gtrm proswpon \trnl prosõpon \xref [L&N 30.120] \def regard or accept according to “face” (political standing) \gtrm Ãpo krisin piptw \trnl hupo krisin piptõ \xref [L&N 56.32] \def to fall under judgment \en2 1. Non-legal: \en3 a. To assess something as to whether good or bad generally \gtrm krinw \trnl krinõ _reference_start_Luke 7:43_reference_end_ _reference_start_Luke 12:57_reference_end_ _reference_start_Acts 4:19_reference_end_ _reference_start_Acts 13:46_reference_end_ _reference_start_Acts 15:19_reference_end_ _reference_start_Acts 16:15_reference_end_ _reference_start_Acts 26:8_reference_end_ ROM 14:5 (2 occurrences) _reference_start_Romans 14:5_reference_end_ _reference_start_1 Corinthians 10:15_reference_end_ _reference_start_1 Corinthians 10:29_reference_end_ _reference_start_1 Corinthians 11:13_reference_end_ _reference_start_1 Corinthians 11:31_reference_end_ _reference_start_2 Corinthians 2:1_reference_end_ _reference_start_2 Corinthians 5:14_reference_end_ \gtrm anakrinw \trnl anakrinõ _reference_start_1 Corinthians 2:14_reference_end_ _reference_start_1 Corinthians 2:15_reference_end_ \gtrm diakrinw \trnl diakrinõ _reference_start_Matthew 16:3_reference_end_ _reference_start_1 Corinthians 11:31_reference_end_ _reference_start_1 Corinthians 14:29_reference_end_ \gtrm diakrisiv \trnl diakrisis _reference_start_1 Corinthians 12:10_reference_end_ _reference_start_Hebrews 5:14_reference_end_ \gtrm kritikov \trnl kritikos _reference_start_Hebrews 4:12_reference_end_ \gtrm dokimazw \trnl dokimazõ _reference_start_Luke 14:19_reference_end_ _reference_start_2 Corinthians 8:8_reference_end_ _reference_start_2 Corinthians 13:5_reference_end_ _reference_start_Galatians 6:4_reference_end_ _reference_start_Ephesians 5:10_reference_end_ _reference_start_Philippians 1:10_reference_end_ _reference_start_1 Thessalonians 2:4_reference_end_ _reference_start_1 Thessalonians 5:21_reference_end_ _reference_start_Hebrews 3:9_reference_end_ _reference_start_1 John 4:1_reference_end_ \gtrm enwpion \trnl enõpion _reference_start_Hebrews 4:13_reference_end_ \en3 b. Assess as good (approve) \gtrm dokimazw \trnl dokimazõ _reference_start_Romans 12:2_reference_end_ _reference_start_Romans 2:18_reference_end_ _reference_start_Romans 14:22_reference_end_ _reference_start_1 Corinthians 3:13_reference_end_ _reference_start_1 Corinthians 11:28_reference_end_ _reference_start_1 Corinthians 16:3_reference_end_ _reference_start_1 Thessalonians 2:4_reference_end_ _reference_start_1 Timothy 3:10_reference_end_ _reference_start_1 Peter 1:7_reference_end_ \gtrm dokimov \trnl dokimos _reference_start_Romans 14:18_reference_end_ _reference_start_Romans 16:10_reference_end_ _reference_start_1 Corinthians 11:19_reference_end_ _reference_start_2 Corinthians 10:18_reference_end_ _reference_start_2 Corinthians 13:7_reference_end_ _reference_start_2 Timothy 2:15_reference_end_ _reference_start_James 1:12_reference_end_ \gtrm para \trnl para _reference_start_Galatians 3:11_reference_end_ \gtrm emprosqen sou \trnl emprosthen sou _reference_start_Matthew 11:26_reference_end_ _reference_start_Luke 10:21_reference_end_ \gtrm enantion \trnl enantion _reference_start_Acts 7:10_reference_end_ \gtrm enwpion \trnl enõpion _reference_start_Luke 1:6_reference_end_ _reference_start_Luke 1:15_reference_end_ _reference_start_Luke 1:75_reference_end_ _reference_start_Acts 10:4_reference_end_ _reference_start_Acts 4:19_reference_end_ _reference_start_Acts 7:46_reference_end_ _reference_start_Acts 10:31_reference_end_ _reference_start_Romans 12:17_reference_end_ 2CO 4:2; 7:12; 8:21 (2 occurrences) _reference_start_2 Corinthians 4:2_reference_end_ _reference_start_2 Corinthians 7:12_reference_end_ _reference_start_2 Corinthians 8:21_reference_end_ _reference_start_Galatians 1:20_reference_end_ _reference_start_1 Timothy 2:3_reference_end_ _reference_start_1 Timothy 5:4_reference_end_ _reference_start_Hebrews 13:21_reference_end_ _reference_start_James 4:10_reference_end_ _reference_start_1 Peter 3:4_reference_end_ _reference_start_1 John 3:22_reference_end_ _reference_start_Revelation 3:2_reference_end_ _reference_start_Revelation 16:19_reference_end_ \gtrm katenwpion \trnl katenõpion 2CO 2:17 (2 occurrences); 12:19 _reference_start_2 Corinthians 2:17_reference_end_ _reference_start_2 Corinthians 12:19_reference_end_ _reference_start_Ephesians 1:4_reference_end_ _reference_start_Colossians 1:22_reference_end_ \gtrm proswpon \trnl prosõpon 1PE 3:12 (2 occurrences) _reference_start_1 Peter 3:12_reference_end_ \en3 c. Assess as bad or in the wrong, criticize \gtrm krinw \trnl krinõ _reference_start_John 8:26_reference_end_ _reference_start_Romans 2:1_reference_end_ _reference_start_Romans 14:22_reference_end_ _reference_start_Colossians 2:16_reference_end_ \gtrm diakrinw \trnl diakrinõ _reference_start_Acts 11:2_reference_end_ \gtrm katakrinw \trnl katakrinõ _reference_start_Romans 14:23_reference_end_ \gtrm katakrisiv \trnl katakrisis _reference_start_2 Corinthians 7:3_reference_end_ \gtrm kataginwskw \trnl kataginõskõ _reference_start_Galatians 2:11_reference_end_ _reference_start_1 John 3:20_reference_end_ _reference_start_1 John 3:21_reference_end_ \gtrm akatagnwstov \trnl akatagnõstos TIT 2:8 (hapax legomenon) _reference_start_Titus 2:8_reference_end_ \en3 d. Reject \gtrm apodokimazw \trnl apodokimazõ _reference_start_Matthew 21:42_reference_end_ _reference_start_Mark 8:31_reference_end_ _reference_start_Mark 12:10_reference_end_ _reference_start_Luke 9:22_reference_end_ _reference_start_Luke 17:25_reference_end_ _reference_start_Luke 20:17_reference_end_ _reference_start_Hebrews 12:17_reference_end_ _reference_start_1 Peter 2:4_reference_end_ _reference_start_1 Peter 2:7_reference_end_ \gtrm proswpon \trnl prosõpon _reference_start_1 Peter 3:12_reference_end_ \en3 e. Wrong in the sight of \gtrm enwpion \trnl enõpion _reference_start_Luke 15:18_reference_end_ _reference_start_Luke 15:21_reference_end_ _reference_start_Luke 16:15_reference_end_ _reference_start_Luke 24:11_reference_end_ _reference_start_Acts 8:21_reference_end_ \en3 f. Assess accurately, justly \gtrm krinw \trnl krinõ _reference_start_John 7:24_reference_end_ \gtrm dokimazw \trnl dokimazõ LUK 12:56 (2 occurrences) _reference_start_Luke 12:56_reference_end_ \en3 g. Assess with wrong motives or standards \gtrm krinw \trnl krinõ _reference_start_John 7:24_reference_end_ _reference_start_John 8:15_reference_end_ \gtrm diakrinw \trnl diakrinõ _reference_start_Matthew 21:21_reference_end_ _reference_start_Mark 11:23_reference_end_ _reference_start_Acts 10:20_reference_end_ _reference_start_Acts 11:12_reference_end_ _reference_start_Acts 15:9_reference_end_ _reference_start_Romans 4:20_reference_end_ _reference_start_Romans 14:23_reference_end_ _reference_start_1 Corinthians 4:7_reference_end_ _reference_start_1 Corinthians 11:29_reference_end_ JAS 1:6 (2 occurrences); 2:4 _reference_start_James 1:6_reference_end_ _reference_start_James 2:4_reference_end_ _reference_start_Jude 1:22_reference_end_ \gtrm apodiorizw \trnl apodiorizõ _reference_start_Jude 1:19_reference_end_ \gtrm proswpoljptew \trnl prosõpolæpteõ _reference_start_James 2:9_reference_end_ \gtrm proswtoljptjv \trnl prosõtolæptæs _reference_start_Acts 10:34_reference_end_ \gtrm proswpoljyia \trnl prosõpolæpsia _reference_start_Romans 2:11_reference_end_ _reference_start_Ephesians 6:9_reference_end_ _reference_start_Colossians 3:25_reference_end_ _reference_start_James 2:1_reference_end_ \gtrm proswpon \trnl prosõpon _reference_start_Matthew 22:16_reference_end_ _reference_start_Mark 12:14_reference_end_ _reference_start_Luke 20:21_reference_end_ _reference_start_Galatians 2:6_reference_end_ _reference_start_Jude 1:16_reference_end_ \en3 h. To decide what is the best thing to do \gtrm prokrima \trnl prokrima _reference_start_1 Timothy 5:21_reference_end_ \gtrm krinw \trnl krinõ _reference_start_Acts 3:13_reference_end_ _reference_start_Acts 16:4_reference_end_ _reference_start_Acts 20:16_reference_end_ _reference_start_Acts 21:25_reference_end_ _reference_start_Acts 25:25_reference_end_ _reference_start_Acts 27:1_reference_end_ _reference_start_1 Corinthians 2:2_reference_end_ _reference_start_1 Corinthians 7:37_reference_end_ _reference_start_Titus 3:12_reference_end_ \en3 i. To assume the position of a judge over someone \gtrm krima \trnl krima MAT 7:2 (alternate sense 2.a.) _reference_start_Matthew 7:2_reference_end_ \gtrm krinw \trnl krinõ MAT 7:1 (alternate sense 2.a.) _reference_start_Matthew 7:1_reference_end_ LUK 6:37 (alternate sense 2.a.) _reference_start_Luke 6:37_reference_end_ ROM 2:1 (3 occurrences) (alternate sense 2.a.), 3 (alternate sense 2.a.); 3:4 (alternate sense 2.a.); 14:3, 4, 10, 13 _reference_start_Romans 2:1_reference_end_ _reference_start_Romans 2:3_reference_end_ _reference_start_Romans 3:4_reference_end_ _reference_start_Romans 14:3_reference_end_ _reference_start_Romans 14:4_reference_end_ _reference_start_Romans 14:10_reference_end_ _reference_start_Romans 14:13_reference_end_ _reference_start_1 Corinthians 4:5_reference_end_ _reference_start_1 Corinthians 5:12_reference_end_ JAS 4:11 (4 occurrences), 12 _reference_start_James 4:11_reference_end_ _reference_start_James 4:12_reference_end_ \gtrm anakrinw \trnl anakrinõ 1CO 4:3 (2 occurrences) _reference_start_1 Corinthians 4:3_reference_end_ \gtrm kritjv \trnl kritæs _reference_start_James 2:4_reference_end_ \gtrm pro v \trnl pros _reference_start_John 21:22_reference_end_ _reference_start_John 21:23_reference_end_ \en2 2. Legal use \en3 a. To go to law, hold a court case, or consider the evidence \gtrm krima \trnl krima _reference_start_John 9:39_reference_end_ _reference_start_Acts 24:25_reference_end_ _reference_start_1 Corinthians 6:7_reference_end_ \gtrm krinw \trnl krinõ MAT 5:40; 7:1 (alternate sense 1.c.), 2 (alternate sense 1.c.) _reference_start_Matthew 5:40_reference_end_ _reference_start_Matthew 7:1_reference_end_ _reference_start_Matthew 7:2_reference_end_ LUK 6:37 (alternate sense 1.c.) _reference_start_Luke 6:37_reference_end_ _reference_start_John 5:22_reference_end_ _reference_start_John 8:15_reference_end_ _reference_start_John 8:16_reference_end_ _reference_start_Acts 17:31_reference_end_ _reference_start_Acts 23:6_reference_end_ _reference_start_1 Corinthians 6:1_reference_end_ _reference_start_1 Corinthians 6:6_reference_end_ _reference_start_1 Corinthians 11:32_reference_end_ _reference_start_1 P eter 4:5_reference_end_ _reference_start_Revelation 11:18_reference_end_ _reference_start_Revelation 20:12_reference_end_ _reference_start_Revelation 20:13_reference_end_ \gtrm anakrinw \trnl anakrinõ _reference_start_Luke 23:14_reference_end_ _reference_start_Acts 4:9_reference_end_ _reference_start_Acts 12:19_reference_end_ _reference_start_Acts 17:11_reference_end_ _reference_start_Acts 24:8_reference_end_ _reference_start_Acts 28:18_reference_end_ _reference_start_1 Corinthians 4:4_reference_end_ _reference_start_1 Corinthians 9:3_reference_end_ \gtrm diakrinw \trnl diakrinõ _reference_start_1 Corinthians 6:5_reference_end_ _reference_start_Jude 1:9_reference_end_ \gtrm krisiv \trnl krisis _reference_start_Matthew 5:21_reference_end_ _reference_start_Matthew 5:22_reference_end_ _reference_start_Matthew 10:15_reference_end_ _reference_start_Matthew 11:22_reference_end_ _reference_start_Matthew 11:24_reference_end_ _reference_start_Matthew 12:36_reference_end_ _reference_start_Luke 10:14_reference_end _ _reference_start_John 12:31_reference_end_ _reference_start_Hebrews 9:27_reference_end_ _reference_start_Revelation 14:7_reference_end_ \gtrm anakrisiv \trnl anakrisis _reference_start_Acts 25:26_reference_end_ \gtrm diakrisiv \trnl diakrisis _reference_start_Romans 14:1_reference_end_ \gtrm kritjrion \trnl kritærion _reference_start_1 Corinthians 6:2_reference_end_ _reference_start_1 Corinthians 6:4_reference_end_ _reference_start_James 2:6_reference_end_ \gtrm diaginwskw \trnl diaginõskõ _reference_start_Acts 23:15_reference_end_ _reference_start_Acts 24:22_reference_end_ \gtrm diagnwsiv \trnl diagnõsis _reference_start_Acts 25:21_reference_end_ \en3 b. To pronounce a verdict, to give judgment in court \gtrm krima \trnl krima _reference_start_Romans 5:16_reference_end_ _reference_start_James 3:1_reference_end_ _reference_start_1 Peter 4:17_reference_end_ \gtrm krinw \trnl krinõ JHN 5:30 (2 occurrences); 8:50; 12:48 (2 occurrences); 16:11; 18:31 _reference_start_John 5:30_reference_end_ _reference _start_John 8:50_reference_end_ _reference_start_John 12:48_reference_end_ _reference_start_John 16:11_reference_end_ _reference_start_John 18:31_reference_end_ _reference_start_Acts 23:3_reference_end_ _reference_start_Acts 24:21_reference_end_ _reference_start_Acts 25:9_reference_end_ _reference_start_Acts 25:10_reference_end_ _reference_start_Acts 25:20_reference_end_ _reference_start_Acts 26:6_reference_end_ _reference_start_Romans 2:12_reference_end_ _reference_start_Romans 2:16_reference_end_ _reference_start_Romans 3:6_reference_end_ _reference_start_1 Corinthians 5:12_reference_end_ _reference_start_1 Corinthians 5:13_reference_end_ _reference_start_1 Peter 4:6_reference_end_ 1CO 6:2 (2 occurrences), 3 _reference_start_1 Corinthians 6:2_reference_end_ _reference_start_1 Corinthians 6:3_reference_end_ _reference_start_2 Timothy 4:1_reference_end_ _reference_start_James 2:12_reference_end_ _reference_start_1 Peter 1:17_reference_end_ _reference_start_1 Peter 2:23_reference_end_ \gtrm epikrinw \trnl epikrinõ _reference_start_Luke 23:24_reference_end_ \gtrm krisiv \trnl krisis _reference_start_John 5:22_reference_end_ _reference_start_John 5:27_reference_end_ _reference_start_John 7:24_reference_end_ _reference_start_John 8:16_reference_end_ _reference_start_2 Thessalonians 1:5_reference_end_ _reference_start_2 Peter 2:9_reference_end_ _reference_start_2 Peter 3:7_reference_end_ _reference_start_1 John 4:17_reference_end_ _reference_start_Jude 1:6_reference_end_ \gtrm dikaiokrisia \trnl dikaiokrisia _reference_start_Romans 2:5_reference_end_ \en3 c. Acquit (see JUST, JUSTIFY) \en3 d. Condemn, pronounce guilty and punishable \gtrm krima \trnl krima _reference_start_Mark 12:40_reference_end_ _reference_start_Luke 20:47_reference_end_ _reference_start_Luke 23:40_reference_end_ _reference_start_Luke 24:20_reference_end_ _reference_start_Romans 2:2_reference_end_ _reference_start_Romans 2:3_reference_end_ _reference_start_Romans 3:8_reference_end_ _reference_start_Romans 13:2_reference_end_ _reference_sta rt_1 Corinthians 11:29_reference_end_ _reference_start_1 Corinthians 11:34_reference_end_ _reference_start_Galatians 5:10_reference_end_ _reference_start_1 Timothy 3:6_reference_end_ _reference_start_1 Timothy 5:12_reference_end_ _reference_start_Hebrews 6:2_reference_end_ _reference_start_2 Peter 2:3_reference_end_ _reference_start_Jude 1:4_reference_end_ _reference_start_Revelation 17:1_reference_end_ _reference_start_Revelation 18:20_reference_end_ \gtrm apokrima \trnl apokrima 2CO 1:9 (hapax legomenon) _reference_start_2 Corinthians 1:9_reference_end_ \gtrm katakrima \trnl katakrima _reference_start_Romans 5:16_reference_end_ _reference_start_Romans 5:18_reference_end_ _reference_start_Romans 8:1_reference_end_ \gtrm krinw \trnl krinõ _reference_start_Luke 19:22_reference_end_ JHN 3:17, 18 (2 occurrences); 7:51; 12:47 (2 occurrences); 16:11 _reference_start_John 3:17_reference_end_ _reference_start_John 3:18_reference_end_ _reference_start_John 7:51_reference_end_ _reference_start_John 12:47_referenc e_end_ _reference_start_John 16:11_reference_end_ _reference_start_Acts 7:7_reference_end_ _reference_start_Acts 13:27_reference_end_ _reference_start_Romans 3:7_reference_end_ _reference_start_1 Corinthians 5:3_reference_end_ _reference_start_1 Corinthians 11:31_reference_end_ _reference_start_2 Thessalonians 2:12_reference_end_ _reference_start_Hebrews 10:30_reference_end_ _reference_start_Hebrews 13:4_reference_end_ _reference_start_James 5:9_reference_end_ _reference_start_1 Peter 4:6_reference_end_ REV 6:10; 16:5; 18:8; 19:2 (2 occurrences), 11 _reference_start_Revelation 6:10_reference_end_ _reference_start_Revelation 16:5_reference_end_ _reference_start_Revelation 18:8_reference_end_ _reference_start_Revelation 19:2_reference_end_ _reference_start_Revelation 19:11_reference_end_ \gtrm katakrinw \trnl katakrinõ _reference_start_Matthew 20:18_reference_end_ _reference_start_Matthew 27:3_reference_end_ _reference_start_Mark 10:33_reference_end_ _reference_start_Mark 14:64_reference_end_ _reference_st art_Mark 16:16_reference_end_ _reference_start_John 8:10_reference_end_ _reference_start_John 8:11_reference_end_ _reference_start_Romans 8:3_reference_end_ _reference_start_Romans 8:34_reference_end_ _reference_start_1 Corinthians 11:32_reference_end_ _reference_start_2 Peter 2:6_reference_end_ \gtrm krisiv \trnl krisis _reference_start_Matthew 23:33_reference_end_ _reference_start_John 3:19_reference_end_ _reference_start_John 5:24_reference_end_ _reference_start_John 5:29_reference_end_ _reference_start_John 16:8_reference_end_ _reference_start_1 Timothy 5:24_reference_end_ _reference_start_Hebrews 10:27_reference_end_ JAS 2:13 (2 occurrences) _reference_start_James 2:13_reference_end_ _reference_start_2 Peter 2:4_reference_end_ _reference_start_2 Peter 2:11_reference_end_ _reference_start_Jude 1:9_reference_end_ _reference_start_Jude 1:15_reference_end_ _reference_start_Revelation 16:7_reference_end_ _reference_start_Revelation 18:10_reference_end_ _reference_start_Revelation 19:2_reference_end_ \gtrm  katakrisiv \trnl katakrisis _reference_start_2 Corinthians 3:9_reference_end_ \gtrm katadikazw \trnl katadikazõ _reference_start_Matthew 12:7_reference_end_ _reference_start_Matthew 12:37_reference_end_ _reference_start_Luke 6:37_reference_end_ _reference_start_James 5:6_reference_end_ \gtrm katadikj \trnl katadikæ _reference_start_Acts 25:15_reference_end_ \gtrm Ãpo krisin piptw \trnl hupo krisin piptõ _reference_start_James 5:12_reference_end_ \en3 e. Cause to be condemned \gtrm krinw \trnl krinõ _reference_start_Romans 2:27_reference_end_ \gtrm katakrinw \trnl katakrinõ _reference_start_Romans 2:1_reference_end_ _reference_start_Hebrews 11:7_reference_end_ \gtrm krisiv \trnl krisis _reference_start_Matthew 12:41_reference_end_ _reference_start_Matthew 12:42_reference_end_ _reference_start_Luke 11:31_reference_end_ _reference_start_Luke 11:32_reference_end_ _reference_start_John 16:11_reference_end_ \gtrm autokatakritov \trnl autokatakritos _reference_start_Titus 3:11_reference_end_ \en2 3. Offic ial use \en3 a. A judge, judges \gtrm kritjv \trnl kritæs MAT 5:25 (2 occurrences); 12:27 _reference_start_Matthew 5:25_reference_end_ _reference_start_Matthew 12:27_reference_end_ LUK 11:19; 12:14, 58 (2 occurrences); 18:2, 6 _reference_start_Luke 11:19_reference_end_ _reference_start_Luke 12:14_reference_end_ _reference_start_Luke 12:58_reference_end_ _reference_start_Luke 18:2_reference_end_ _reference_start_Luke 18:6_reference_end_ _reference_start_Acts 10:42_reference_end_ _reference_start_Acts 18:15_reference_end_ _reference_start_Acts 24:10_reference_end_ _reference_start_2 Timothy 4:8_reference_end_ _reference_start_Hebrews 12:23_reference_end_ _reference_start_James 4:12_reference_end_ _reference_start_James 5:9_reference_end_ \gtrm dikastjv \trnl dikastæs _reference_start_Luke 12:14_reference_end_ _reference_start_Acts 7:27_reference_end_ _reference_start_Acts 7:35_reference_end_ \gtrm arcwn \trnl archõn _reference_start_Luke 12:58_reference_end_ \en3 b. Judgment seat \gtrm bjma \trnl bæma _reference_start_Matthew 27:19_reference_end_ _reference_start_John 19:13_reference_end_ _reference_start_Acts 12:21_reference_end_ _reference_start_Acts 18:12_reference_end_ _reference_start_Acts 18:16_reference_end_ _reference_start_Acts 18:17_reference_end_ _reference_start_Acts 25:6_reference_end_ _reference_start_Acts 25:10_reference_end_ _reference_start_Acts 25:17_reference_end_ _reference_start_Romans 14:10_reference_end_ _reference_start_2 Corinthians 5:10_reference_end_ \en3 c. To govern, to rule \gtrm krima \trnl krima _reference_start_Romans 11:33_reference_end_ _reference_start_Revelation 20:4_reference_end_ \gtrm krinw \trnl krinõ _reference_start_Matthew 19:28_reference_end_ _reference_start_Luke 22:30_reference_end_ \gtrm kritjv \trnl kritæs _reference_start_Acts 13:20_reference_end_ \en2 4. Miscellaneous \gtrm anakrinw \trnl anakrinõ _reference_start_1 Corinthians 10:25_reference_end_ _reference_start_1 Corinthians 10:27_reference_end_ _reference_start_1 Corinthians 14:24_reference_end_ 11bIYY#JUDGE, JUDGMENT, CONDEMN, CONDEMNATIONjudge, judgment, condemn, condemnation\see (see also AUTHORITY, KINGDOM, JUST) \o1 1. Non-legal: \o2 a. To assess something as to whether good or bad generally \o2 b. Assess as good (approve) \o2 c. Assess as bad or in the wrong, criticize \o2 d. Reject \o2 e. Wrong in the sight of \o2 f. Assess accurately, justly \o2 g. Assess with wrong motives or standards \o2 h. To decide what is the best thing to do \o2 i. To assume the position of a judge over someone \o1 2. Legal use \o2 a. To go to law, hold a court case, or consider the evidence \o2 b. To pronounce a verdict, to give judgment in court \o2 c. Acquit (see JUST, JUSTIFY) \o2 d. Condemn, pronounce guilty and punishable \o2 e. Cause to be condemned \o1 3. Official use \o2 a. A judge, judges \o2 b. Judgment seat \o2 c. To govern, to rule \o1 4. Miscellaneous \gtrm krima \trnl krima \xref [L&N 30.110]  ?tfXJ<. xj\N@2$|n`RD6( Y/  X/ WB VB U> T< S; R:  Q6 P6 O0 N/ M/ L/ K-  J,  I,. H, G,  F*K E* D* C, B*  A(  @0 ?; >7 =/  </  ;.  :- 9- 8< 76 64 5. 4.  3. 2- 1- 0-  /: .> -: ,4 +4 *2 )1 (0 '/  &/ %* $: #: ". !. .  ( . . / / ?tfXJ<. xj\N@2$|n`RD6( , , , , , 6 A 0 * )  ( ; 3 1 - , " ; A A ; ; .  . - - , ~, },  |)  {( z+ y+ x* 8 w+ v, u* t* s* r* q< p< o< n:  m* l* k*  j) i) h(* g8 f> e> d0 c/ b- a,  `3 _- ^- ]+ \< [3 Z1 ?tfXJ<. xj\N@2$|n`RD6( W- V, UB T:  S+  R*  Q( $ P(  O(  N(  M( L( KA J. I.  H. G, F, E, D,  C, B* AB @B ?B  >< =. <. ;. :, 9, 8+ 7+ 6+ 5*% 4( 3( 2(( 1. 0, /+ ' .+ -+ ,; +. *; ); (. '. &- %- $- #- "- !- - *% ( ( 8 .% . , ?tfXJ<. xj\N@2$|n`RD6( - / B B A = : 6 6 0 . " .  -  - - - * *( */ ) ( - A > = ~= }5 |+ {+ z+ y+ x* w< v< u; t7 s. r. q< p. o. n- m- l- k, j, i, h, g, f, e+ d+ c+ 0 b+2 a+ `< _; ^- ], \, [, Z; Y. X. ?tfXJ<. xj\N@2$|n`RD6( U* T*  S( * R( ) Q:  P- O- N; M, L; K*% J( % I(  H/ GB FB EB DA CA B= A= @; ?:  >6 =+ <+ ;+ :+ 9(! 8= 7. 6-" 5- 4+ 3+ 2) 1)@ 0) ! /( .( -B ,B +B *B )B (< '; &:  %:  $5 #.  ". !- ,  , + + / +3 + + * - - ?tfXJ<. xj\N@2$|n`RD6( * * ) ) (. (% ( ( ( 1 ( + (  ( ) ( (- ( - B B B B > 7 ~- }+ |. {.  z.  y,  x* w( vB u- ! t/ s- r, q, p, o, n, m, l,  k+ j( i* : h,# g, f*  e; d; c:  b7 a, `, _, * ^* ]* \* : [*  Z*  Y(  X( W8 V+  Justification, righteousness (nouns) \o2 a. Justice, acting fairly, consistently and in a right way \o2 b. Doing what is right in God's sight, living with integrity \o2 c. Imparted righteousness making one accepted by God \o2 d. Ordinance, decree, precept, or regulation \o2 e. Justice given to one who has been wronged \gtrm dikaiov \trnl dikaios \xref [L&N 88.12] \def righteous (adjective) \xref [L&N 34.47] \def be put right with \xref [L&N 66.5] \def proper \gtrm dikaiosunj \trnl dikaiosunæ \xref [L&N 88.13] \def righteousness (noun) \xref [L&N 34.46] \def be put right with \xref [L&N 53.4] \def religious observances \xref [L&N 57.111] \def charity \gtrm dikaiow \trnl dikaioõ \xref [L&N 34.46] \def be put right with (verb) \xref [L&N 88.16] \def show to be right \xref [L&N 56.34] \def acquit \xref [L&N 37.138] \def set free \xref [L&N 36.22] \def obey righteous commands \gtrm dikaiwma \trnl dikaiõma \xref [L&N 33.334] \def dikaioma (noun) \xref [L&N 88.14] \def righteous act \xref [L&N  56.34] \def acquit \gtrm dikaiwv \trnl dikaiõs \xref [L&N 88.15] \def right (adjective/verb) \gtrm dikaiwsiv \trnl dikaiõsis \xref [L&N 34.46] \def be put right with (noun) \xref [L&N 56.34] \def acquittal \gtrm endikov \trnl endikos \xref [L&N 88.15] \def just (adjective) \gtrm euquv \trnl euthus \xref [L&N 79.88] \def straight (adjective) \xref [L&N 88.17] \def upright \gtrm euqeia édov \trnl eutheia hodos \xref [L&N 88.18] \def just way of life \gtrm euqutjv \trnl euthutæs \xref [L&N 88.19] \def righteousness (hapax legomenon) (noun) \gtrm agaqoergew \trnl agathoergeõ \xref [L&N 88.3] \def do good (hapax legomenon) (verb) \gtrm agaqopoiew \trnl agathopoieõ \xref [L&N 88.3] \def do good (verb) \gtrm agaqopoiia \trnl agathopoiia \xref [L&N 88.3] \def good deeds (hapax legomenon) (noun) \gtrm agaqopoiov \trnl agathopoios \xref [L&N 88.8] \def one doing good deeds (hapax legomenon) (adjective) \gtrm dikj \trnl dikæ \xref [L&N 12.27] \def the goddess Justice \xref [L&N 38.8] \def punishment \gtrm kr itjrion \trnl kritærion \xref [L&N 56.1] \def court of justice \xref [L&N 56.2] \def lawsuit \gtrm krisiv \trnl krisis \xref [L&N 56.25] \def give justice \xref (others) \def judge, evaluate, sentence, verdict, etc. \gtrm ekdikew \trnl ekdikeõ \xref [L&N 56.35] \def to give justice to one who is wronged \xref (others) \def revenge, punish \gtrm ekdikjsiv \trnl ekdikæsis \xref [L&N 56.35] \def to give justice to one who is wronged \xref (others) \def revenge, punish \gtrm krisiv \trnl krisis \xref [L&N 56.1] \def court of justice \xref [L&N 56.25] \def justice \xref (others) \def authority to judge, judgment, condemnation, legal decision, basis for judgment, punishment \gtrm agoraiov \trnl agoraios \xref [L&N 56.1] \def court of justice \xref [L&N 88.251] \def loafer \gtrm kritjrion \trnl kritærion \xref [L&N 56.1] \def court of justice \xref [L&N 56.2] \def lawsuit \gtrm dikj \trnl dikæ \xref [L&N 12.27] \def the goddess Justice \xref [L&N 38.8] \def punishment \gtrm kalwv \trnl kalõs \xref [L&N 88. 4] \def morally good \xref (others) \def valuable, important, accurate, please, certainly \gtrm dikaiokrisia \trnl dikaiokrisia \xref [L&N 56.27] \def just verdict (hapax legomenon) \en2 1. Just, righteous (adjectives/adverbs) \en3 a. God's character: totally consistent with himself and his word \gtrm dikaiov \trnl dikaios _reference_start_John 17:25_reference_end_ _reference_start_Romans 3:26_reference_end_ _reference_start_2 Timothy 4:8_reference_end_ _reference_start_1 John 1:9_reference_end_ _reference_start_Revelation 15:3_reference_end_ _reference_start_Revelation 16:5_reference_end_ _reference_start_Revelation 16:7_reference_end_ _reference_start_Revelation 19:2_reference_end_ \gtrm dikaiokrisia \trnl dikaiokrisia _reference_start_Romans 2:5_reference_end_ \en3 b. Human character: being obedient to the laws that God gave to Moses \gtrm dikaiov \trnl dikaios MAT 1:19; 5:45; 9:13; 10:41 (3 occurrences); 13:17, 43, 49; 23:28, 29; 25:37, 46 _reference_start_Matthew 1:19_reference_end_ _reference_start_ Matthew 5:45_reference_end_ _reference_start_Matthew 9:13_reference_end_ _reference_start_Matthew 10:41_reference_end_ _reference_start_Matthew 13:17_reference_end_ _reference_start_Matthew 13:43_reference_end_ _reference_start_Matthew 13:49_reference_end_ _reference_start_Matthew 23:28_reference_end_ _reference_start_Matthew 23:29_reference_end_ _reference_start_Matthew 25:37_reference_end_ _reference_start_Matthew 25:46_reference_end_ _reference_start_Mark 2:17_reference_end_ _reference_start_Mark 6:20_reference_end_ _reference_start_Luke 1:6_reference_end_ _reference_start_Luke 1:17_reference_end_ _reference_start_Luke 2:25_reference_end_ _reference_start_Luke 5:32_reference_end_ _reference_start_Luke 14:14_reference_end_ _reference_start_Luke 15:7_reference_end_ _reference_start_Luke 18:9_reference_end_ _reference_start_Luke 23:50_reference_end_ _reference_start_Acts 3:14_reference_end_ _reference_start_Acts 7:52_reference_end_ _reference_start_Acts 10:22_reference_end_ _reference_start_Acts 22:14_ref erence_end_ _reference_start_Acts 24:15_reference_end_ _reference_start_Romans 1:17_reference_end_ _reference_start_Romans 2:13_reference_end_ _reference_start_Romans 3:10_reference_end_ _reference_start_Romans 5:7_reference_end_ _reference_start_Galatians 3:11_reference_end_ _reference_start_1 Timothy 1:9_reference_end_ _reference_start_Titus 1:8_reference_end_ _reference_start_Hebrews 10:38_reference_end_ _reference_start_Hebrews 12:23_reference_end_ _reference_start_James 5:6_reference_end_ _reference_start_James 5:16_reference_end_ _reference_start_1 Peter 3:18_reference_end_ _reference_start_1 Peter 4:18_reference_end_ _reference_start_2 Peter 2:7_reference_end_ _reference_start_2 Peter 2:8_reference_end_ 1JN 2:1, 29; 3:7 (2 occurrences), 12 _reference_start_1 John 2:1_reference_end_ _reference_start_1 John 2:29_reference_end_ _reference_start_1 John 3:7_reference_end_ _reference_start_1 John 3:12_reference_end_ \gtrm dikaiwv \trnl dikaiõs _reference_start_1 Thessalonians 2:10_reference_end_ _refere nce_start_Titus 2:12_reference_end_ \en3 c. Human character: being innocent, not guilty of an offense \gtrm dikaiov \trnl dikaios _reference_start_Matthew 23:35_reference_end_ _reference_start_Matthew 27:19_reference_end_ _reference_start_Luke 20:20_reference_end_ _reference_start_Luke 23:47_reference_end_ _reference_start_Romans 5:19_reference_end_ _reference_start_1 Peter 3:12_reference_end_ _reference_start_Revelation 22:11_reference_end_ \en3 d. Figurative uses, imputing righteousness to things: \gtrm dikaiov \trnl dikaios _reference_start_Matthew 23:35_reference_end_ _reference_start_2 Thessalonians 1:5_reference_end_ _reference_start_2 Peter 2:8_reference_end_ \gtrm euqutjv \trnl euthutæs _reference_start_Hebrews 1:8_reference_end_ \en3 e. What is right, what is just \gtrm dikaiov \trnl dikaios _reference_start_Matthew 20:4_reference_end_ _reference_start_Luke 12:57_reference_end_ _reference_start_John 5:30_reference_end_ _reference_start_John 7:24_reference_end_ _reference_start_Acts 4:19_referenc e_end_ _reference_start_Romans 7:12_reference_end_ _reference_start_Ephesians 6:1_reference_end_ _reference_start_Philippians 1:7_reference_end_ _reference_start_Philippians 4:8_reference_end_ _reference_start_Colossians 4:1_reference_end_ _reference_start_2 Thessalonians 1:6_reference_end_ _reference_start_2 Peter 1:13_reference_end_ \gtrm dikaiwv \trnl dikaiõs _reference_start_Luke 23:41_reference_end_ _reference_start_1 Corinthians 15:34_reference_end_ _reference_start_1 Peter 2:23_reference_end_ \gtrm endikov \trnl endikos _reference_start_Romans 3:8_reference_end_ _reference_start_Hebrews 2:2_reference_end_ \gtrm euquv \trnl euthus _reference_start_Acts 8:21_reference_end_ \gtrm kalwv \trnl kalõs _reference_start_Matthew 15:26_reference_end_ _reference_start_Mark 7:27_reference_end_ _reference_start_Luke 8:15_reference_end_ _reference_start_Romans 7:16_reference_end_ _reference_start_Romans 7:18_reference_end_ _reference_start_Romans 7:21_reference_end_ _reference_start_Romans 14:21_reference_end_ _reference_start_2 Corinthians 13:7_reference_end_ _reference_start_James 4:17_reference_end_ \en3 f. Doing right \gtrm euquv \trnl euthus _reference_start_2 Peter 2:15_reference_end_ \gtrm agaqoergew \trnl agathoergeõ 1TI 6:18 (verb (infinitive)) _reference_start_1 Timothy 6:18_reference_end_ \gtrm agaqopoiew \trnl agathopoieõ MRK 3:4 (verb (infinitive)) _reference_start_Mark 3:4_reference_end_ LUK 6:9 (verb (infinitive)), 33 (2 occurrences) ( verb (subjunctive).), 35 (verb (imperative)) _reference_start_Luke 6:9_reference_end_ _reference_start_Luke 6:33_reference_end_ 1PE 2:15 (verb is a participle, thus classified with adjectives), 20 (verb is a participle, thus classified with adjectives); 3:6 (verb is a participle, thus classified with adjectives), 17 (verb is a participle, thus classified with adjectives) _reference_start_1 Peter 2:15_reference_end_ _reference_start_1 Peter 2:20_reference_end_ _reference_start_1 Peter 3:6_reference_end_ _reference_start_1 Peter 3:17_reference_end_ 3JN 1:11 (verb i s a participle, thus classified with adjectives) _reference_start_3 John 1:11_reference_end_ \gtrm agaqopoiia \trnl agathopoiia 1PE 4:19 (noun) _reference_start_1 Peter 4:19_reference_end_ \gtrm agaqopoiov \trnl agathopoios _reference_start_1 Peter 2:14_reference_end_ \en3 g. Metaphor of “straight path” for moral integrity \gtrm euquv \trnl euthus _reference_start_Matthew 3:3_reference_end_ _reference_start_Mark 1:3_reference_end_ _reference_start_Luke 3:4_reference_end_ _reference_start_Luke 3:5_reference_end_ _reference_start_Acts 13:10_reference_end_ \en3 h. A proper name \gtrm euquv \trnl euthus _reference_start_Acts 9:11_reference_end_ \gtrm dikj \trnl dikæ ACT 28:4 (alternate sense 1.c.) _reference_start_Acts 28:4_reference_end_ \en2 2. To justify, to make just, to make righteous (verbs) \en3 a. To show or prove that someone is righteous \gtrm dikaiow \trnl dikaioõ _reference_start_Matthew 11:19_reference_end_ _reference_start_Matthew 12:37_reference_end_ _reference_start_Luke 7:29_reference_end _ _reference_start_Luke 7:35_reference_end_ _reference_start_Luke 10:29_reference_end_ _reference_start_Luke 16:15_reference_end_ _reference_start_Romans 3:4_reference_end_ _reference_start_1 Corinthians 4:4_reference_end_ _reference_start_1 Timothy 3:16_reference_end_ \en3 b. To declare someone to be righteous \gtrm dikaiov \trnl dikaios _reference_start_Hebrews 11:4_reference_end_ \gtrm dikaiow \trnl dikaioõ _reference_start_Luke 18:14_reference_end_ ACT 13:39 (2 occurrences) _reference_start_Acts 13:39_reference_end_ ROM 2:13; 3:20, 24, 26, 28, 30; 4:2, 5; 5:1, 9; 6:7; 8:30 (2 occurrences), 33 _reference_start_Romans 2:13_reference_end_ _reference_start_Romans 3:20_reference_end_ _reference_start_Romans 3:24_reference_end_ _reference_start_Romans 3:26_reference_end_ _reference_start_Romans 3:28_reference_end_ _reference_start_Romans 3:30_reference_end_ _reference_start_Romans 4:2_reference_end_ _reference_start_Romans 4:5_reference_end_ _reference_start_Romans 5:1_reference_end_ _reference_start_Roman s 5:9_reference_end_ _reference_start_Romans 6:7_reference_end_ _reference_start_Romans 8:30_reference_end_ _reference_start_Romans 8:33_reference_end_ _reference_start_1 Corinthians 6:11_reference_end_ GAL 2:16 (3 occurrences), 17; 3:8, 11, 24; 5:4 _reference_start_Galatians 2:16_reference_end_ _reference_start_Galatians 2:17_reference_end_ _reference_start_Galatians 3:8_reference_end_ _reference_start_Galatians 3:11_reference_end_ _reference_start_Galatians 3:24_reference_end_ _reference_start_Galatians 5:4_reference_end_ _reference_start_Titus 3:7_reference_end_ _reference_start_James 2:21_reference_end_ _reference_start_James 2:24_reference_end_ _reference_start_James 2:25_reference_end_ \en2 3. Justification, righteousness (nouns) \en3 a. Justice, acting fairly, consistently and in a right way \gtrm dikaiosunj \trnl dikaiosunæ _reference_start_Acts 17:31_reference_end_ _reference_start_Romans 3:5_reference_end_ _reference_start_Romans 3:25_reference_end_ _reference_start_Romans 3:26_reference_end_ _ reference_start_2 Corinthians 9:9_reference_end_ _reference_start_Hebrews 7:2_reference_end_ _reference_start_Hebrews 11:33_reference_end_ _reference_start_2 Peter 1:1_reference_end_ _reference_start_Revelation 19:11_reference_end_ \gtrm dikaiow \trnl dikaioõ _reference_start_Acts 8:33_reference_end_ \gtrm dikaiwma \trnl dikaiõma _reference_start_Romans 8:4_reference_end_ _reference_start_Revelation 15:4_reference_end_ \gtrm krisiv \trnl krisis _reference_start_John 16:11_reference_end_ \en3 b. Doing what is right in God's sight, living with integrity \gtrm dikaiosunj \trnl dikaiosunæ _reference_start_Matthew 3:15_reference_end_ _reference_start_Matthew 5:6_reference_end_ _reference_start_Matthew 5:10_reference_end_ _reference_start_Matthew 5:20_reference_end_ _reference_start_Matthew 6:1_reference_end_ _reference_start_Matthew 6:33_reference_end_ _reference_start_Matthew 21:32_reference_end_ _reference_start_Luke 1:75_reference_end_ _reference_start_Acts 10:35_reference_end_ _reference_start_Acts 13:1 0_reference_end_ _reference_start_Acts 24:25_reference_end_ ROM 6:13 (figure: personification), 18 (figure: personification), 19 (figure: personification), 20 (figure: personification); 8:10; 14:17 _reference_start_Romans 6:13_reference_end_ _reference_start_Romans 6:18_reference_end_ _reference_start_Romans 6:19_reference_end_ _reference_start_Romans 6:20_reference_end_ _reference_start_Romans 8:10_reference_end_ _reference_start_Romans 14:17_reference_end_ 2CO 6:7, 14; 9:10; 11:15 (figure: personification) _reference_start_2 Corinthians 6:7_reference_end_ _reference_start_2 Corinthians 6:14_reference_end_ _reference_start_2 Corinthians 9:10_reference_end_ _reference_start_2 Corinthians 11:15_reference_end_ _reference_start_Ephesians 4:24_reference_end_ _reference_start_Ephesians 5:9_reference_end_ _reference_start_Ephesians 6:14_reference_end_ _reference_start_Philippians 3:6_reference_end_ _reference_start_1 Timothy 6:11_reference_end_ _reference_start_2 Timothy 2:22_reference_end_ _reference_start_2 T imothy 3:16_reference_end_ _reference_start_Titus 3:5_reference_end_ _reference_start_Hebrews 1:9_reference_end_ _reference_start_Hebrews 5:13_reference_end_ _reference_start_Hebrews 12:11_reference_end_ _reference_start_James 1:20_reference_end_ _reference_start_James 3:18_reference_end_ _reference_start_1 Peter 2:24_reference_end_ _reference_start_1 Peter 3:14_reference_end_ _reference_start_2 Peter 2:5_reference_end_ _reference_start_2 Peter 3:13_reference_end_ _reference_start_1 John 2:29_reference_end_ _reference_start_1 John 3:7_reference_end_ _reference_start_1 John 3:10_reference_end_ _reference_start_Revelation 22:11_reference_end_ \gtrm dikaiwma \trnl dikaiõma _reference_start_Romans 5:18_reference_end_ _reference_start_Revelation 19:8_reference_end_ \gtrm krisiv \trnl krisis _reference_start_Matthew 12:18_reference_end_ _reference_start_Matthew 12:20_reference_end_ _reference_start_Matthew 23:23_reference_end_ _reference_start_Luke 11:42_reference_end_ \en3 c. Imparted righteousness making one ! accepted by God \gtrm dikaiosunj \trnl dikaiosunæ _reference_start_John 16:8_reference_end_ _reference_start_John 16:10_reference_end_ ROM 1:17; 3:21, 22; 4:3, 5, 6, 9, 11 (2 occurrences), 13, 22; 5:17, 21; 6:16; 9:30 (2 occurrences), 31; 10:3 (2 occurrences), 4, 5, 6, 10 _reference_start_Romans 1:17_reference_end_ _reference_start_Romans 3:21_reference_end_ _reference_start_Romans 3:22_reference_end_ _reference_start_Romans 4:3_reference_end_ _reference_start_Romans 4:5_reference_end_ _reference_start_Romans 4:6_reference_end_ _reference_start_Romans 4:9_reference_end_ _reference_start_Romans 4:11_reference_end_ _reference_start_Romans 4:13_reference_end_ _reference_start_Romans 4:22_reference_end_ _reference_start_Romans 5:17_reference_end_ _reference_start_Romans 5:21_reference_end_ _reference_start_Romans 6:16_reference_end_ _reference_start_Romans 9:30_reference_end_ _reference_start_Romans 9:31_reference_end_ _reference_start_Romans 10:3_reference_end_ _reference_start_Romans 10:4_reference_end_ _ "reference_start_Romans 10:5_reference_end_ _reference_start_Romans 10:6_reference_end_ _reference_start_Romans 10:10_reference_end_ _reference_start_1 Corinthians 1:30_reference_end_ _reference_start_2 Corinthians 3:9_reference_end_ _reference_start_2 Corinthians 5:21_reference_end_ _reference_start_Galatians 2:21_reference_end_ _reference_start_Galatians 3:21_reference_end_ _reference_start_Galatians 3:6_reference_end_ _reference_start_Galatians 5:5_reference_end_ PHP 1:11; 3:9 (2 occurrences) _reference_start_Philippians 1:11_reference_end_ _reference_start_Philippians 3:9_reference_end_ _reference_start_2 Timothy 4:8_reference_end_ _reference_start_Hebrews 11:7_reference_end_ _reference_start_James 2:23_reference_end_ _reference_start_2 Peter 2:21_reference_end_ \gtrm dikaiwma \trnl dikaiõma _reference_start_Romans 5:16_reference_end_ \gtrm dikaiwsiv \trnl dikaiõsis _reference_start_Romans 4:25_reference_end_ _reference_start_Romans 5:18_reference_end_ \en3 d. Ordinance, decree, precept, or regulation \gtrm dikaiwma \trnl dikaiõma _reference_start_Luke 1:6_reference_end_ _reference_start_Romans 1:32_reference_end_ _reference_start_Romans 2:26_reference_end_ _reference_start_Hebrews 9:1_reference_end_ _reference_start_Hebrews 9:10_reference_end_ \en3 e. Justice given to one who has been wronged \gtrm kritjrion \trnl kritærion _reference_start_James 2:6_reference_end_ \gtrm krisiv \trnl krisis _reference_start_Acts 8:33_reference_end_ \gtrm ekdikew \trnl ekdikeõ _reference_start_Luke 18:3_reference_end_ _reference_start_Luke 18:5_reference_end_ _reference_start_Romans 12:19_reference_end_ _reference_start_Revelation 6:10_reference_end_ _reference_start_Revelation 19:2_reference_end_ \gtrm ekdikjsiv \trnl ekdikæsis _reference_start_Luke 18:7_reference_end_ _reference_start_Luke 18:8_reference_end_ _reference_start_Acts 7:24_reference_end_ _reference_start_Romans 12:19_reference_end_ _reference_start_Hebrews 10:30_reference_end_ \gtrm agoraiov \trnl agoraios _reference_start_Acts 19:38_reference_end_ ;JyyJUST, JUSTIFY, JUSTIFICATION, RIGHTEOUS, RIGHTEOUSNESSjust, justify, justification, righteous, righteousness\see (see also UNJUST) \o1 1. Just, righteous (adjectives/adverbs) \o2 a. God's character: totally consistent with himself and his word \o2 b. Human character: being obedient to the laws that God gave to Moses \o2 c. Human character: being innocent, not guilty of an offense \o2 d. Figurative uses, imputing righteousness to things: \o2 e. What is right, what is just \o2 f. Doing right \o2 g. Metaphor of “straight path” for moral integrity \o2 h. A proper name \o1 2. To justify, to make just, to make righteous (verbs) \o2 a. To show or prove that someone is righteous \o2 b. To declare someone to be righteous \o1 3.  ?tfXJ<. xj\N@2$|n`RD6( S) R( Q, P: O- N< M." L*) K= J5 I3 H2 G2 F1 E- D, C+ B+ A* 9 @( ?: >= =5 <(# ;B :< 9- 8*/ 7* 6( 5(# 48 34 2> 1> 0> /> .= -= ,< +< *; ); (:  ': & &8 %6 $0 #- "- !- - , , ,  ,4 , *2 * * * * * ?tfXJ<. xj\N@2$|n`RD6( , ; ; ; 8 0 0 0 0 0 0 . -! - - - - - - - ~- }- |- {- z- y, ' x* w:  v6 u. t- s* r*  q*# p* o( % n(  m, l, k, j* i* h) g( f< e< d@ c< b< a< `< _*! ^* ]) \6 [= Z; Y/  X- W- V- U- T* ?tfXJ<. xj\N@2$|n`RD6( Q- P+ O+ N* * M( L(  K(  JB I- HB G> F> E> D= C= B< A< @; ?; >: =: <: ;8 :7 97 86 72 61 51 41 3/  2/ 1/ 0/ /- .- -- ,- +- *- ), (, ', # &*K %( $(! #( "( !( ( ( + B - ,! B = : ! : / - - - ?tfXJ<. xj\N@2$|n`RD6( ( ( ( & ( ( (! ( ( ( ( ,& :  -  , * * B B ~-  }* |* {,! z; y: x:  w- v- u* t- s- r- q= p; o:  n7 m2 l2 k0 j0 i0 h0 g/ f/ e. d- c-  b-  a-  `-  _-  ^-  ]- \- [- Z- Y- X- W- V- U- T- S- R- )ioi tjv basileiav \trnl huioi tæs basileias \xref [L&N 11.13] \def people of God \en2 1. The relationship between God and the people he rules \gtrm basileia \trnl basileia MAT 5:3, 10, 19 (2 occurrences), 20; 6:33; 7:21; 11:11; 13:38; 16:19; 18:1, 3, 4; 19:12, 14, 23, 24; 21:31, 43; 23:13 _reference_start_Matthew 5:3_reference_end_ _reference_start_Matthew 5:10_reference_end_ _reference_start_Matthew 5:19_reference_end_ _reference_start_Matthew 5:20_reference_end_ _reference_start_Matthew 6:33_reference_end_ _reference_start_Matthew 7:21_reference_end_ _reference_start_Matthew 11:11_reference_end_ _reference_start_Matthew 13:38_reference_end_ _reference_start_Matthew 16:19_reference_end_ _reference_start_Matthew 18:1_reference_end_ _reference_start_Matthew 18:3_reference_end_ _reference_start_Matthew 18:4_reference_end_ _reference_start_Matthew 19:12_reference_end_ _reference_start_Matthew 19:14_reference_end_ _reference_start_Matthew 19:23_reference_end_ _reference_start_Matthew 19:24_reference_end_ _r *eference_start_Matthew 21:31_reference_end_ _reference_start_Matthew 21:43_reference_end_ _reference_start_Matthew 23:13_reference_end_ _reference_start_Mark 9:47_reference_end_ _reference_start_Mark 10:14_reference_end_ _reference_start_Mark 10:15_reference_end_ _reference_start_Mark 10:23_reference_end_ _reference_start_Mark 10:24_reference_end_ _reference_start_Mark 10:25_reference_end_ _reference_start_Mark 12:34_reference_end_ _reference_start_Luke 6:20_reference_end_ _reference_start_Luke 7:28_reference_end_ _reference_start_Luke 9:62_reference_end_ _reference_start_Luke 12:31_reference_end_ _reference_start_Luke 12:32_reference_end_ _reference_start_Luke 18:16_reference_end_ _reference_start_Luke 18:17_reference_end_ _reference_start_Luke 18:24_reference_end_ _reference_start_Luke 18:25_reference_end_ _reference_start_Luke 18:29_reference_end_ _reference_start_John 3:3_reference_end_ _reference_start_John 3:5_reference_end_ _reference_start_Acts 14:22_reference_end_ _reference_start_1 Corinthians 6 +:9_reference_end_ _reference_start_1 Corinthians 6:10_reference_end_ _reference_start_1 Corinthians 15:50_reference_end_ _reference_start_Galatians 5:21_reference_end_ _reference_start_Ephesians 5:5_reference_end_ _reference_start_Colossians 1:13_reference_end_ _reference_start_Colossians 4:11_reference_end_ _reference_start_1 Thessalonians 2:12_reference_end_ _reference_start_2 Thessalonians 1:5_reference_end_ _reference_start_Hebrews 12:28_reference_end_ _reference_start_James 2:5_reference_end_ _reference_start_Revelation 1:9_reference_end_ \en2 2. The coming of God's rule \gtrm basileia \trnl basileia _reference_start_Matthew 3:2_reference_end_ _reference_start_Matthew 4:17_reference_end_ _reference_start_Matthew 6:10_reference_end_ _reference_start_Matthew 8:11_reference_end_ _reference_start_Matthew 8:12_reference_end_ _reference_start_Matthew 10:7_reference_end_ _reference_start_Matthew 12:28_reference_end_ _reference_start_Matthew 13:41_reference_end_ _reference_start_Matthew 13:43_reference_end_ ,_reference_start_Matthew 16:28_reference_end_ _reference_start_Matthew 20:21_reference_end_ _reference_start_Matthew 25:34_reference_end_ _reference_start_Matthew 26:29_reference_end_ _reference_start_Mark 1:15_reference_end_ _reference_start_Mark 9:1_reference_end_ _reference_start_Mark 14:25_reference_end_ _reference_start_Mark 15:43_reference_end_ LUK 1:33; 9:27; 10:9, 11; 11:2, 20; 13:28, 29; 14:15; 17:20 (2 occurrences), 21 (possible figure: metonymy in which the kingdom of God is put for the King); 19:11; 21:31; 22:16, 18, 29, 30; 23:42, 51 _reference_start_Luke 1:33_reference_end_ _reference_start_Luke 9:27_reference_end_ _reference_start_Luke 10:9_reference_end_ _reference_start_Luke 10:11_reference_end_ _reference_start_Luke 11:2_reference_end_ _reference_start_Luke 11:20_reference_end_ _reference_start_Luke 13:28_reference_end_ _reference_start_Luke 13:29_reference_end_ _reference_start_Luke 14:15_reference_end_ _reference_start_Luke 17:20_reference_end_ _reference_start_Luke 17:21_reference_end -_ _reference_start_Luke 19:11_reference_end_ _reference_start_Luke 21:31_reference_end_ _reference_start_Luke 22:16_reference_end_ _reference_start_Luke 22:18_reference_end_ _reference_start_Luke 22:29_reference_end_ _reference_start_Luke 22:30_reference_end_ _reference_start_Luke 23:42_reference_end_ _reference_start_Luke 23:51_reference_end_ _reference_start_2 Timothy 4:1_reference_end_ _reference_start_2 Timothy 4:18_reference_end_ _reference_start_2 Peter 1:11_reference_end_ REV 11:15 (Implied contextually); 12:10 _reference_start_Revelation 11:15_reference_end_ _reference_start_Revelation 12:10_reference_end_ \en2 3. Proclaiming and hearing the message about God's Rule \gtrm basileia \trnl basileia _reference_start_Matthew 4:23_reference_end_ _reference_start_Matthew 9:35_reference_end_ _reference_start_Matthew 11:12_reference_end_ _reference_start_Matthew 13:11_reference_end_ _reference_start_Matthew 13:19_reference_end_ _reference_start_Matthew 13:52_reference_end_ _reference_start_Matthew 24:14_re .ference_end_ _reference_start_Mark 4:11_reference_end_ _reference_start_Luke 4:43_reference_end_ _reference_start_Luke 8:1_reference_end_ _reference_start_Luke 8:10_reference_end_ _reference_start_Luke 9:2_reference_end_ _reference_start_Luke 9:11_reference_end_ _reference_start_Luke 9:60_reference_end_ _reference_start_Luke 16:16_reference_end_ _reference_start_Acts 1:3_reference_end_ _reference_start_Acts 8:12_reference_end_ _reference_start_Acts 19:8_reference_end_ _reference_start_Acts 20:25_reference_end_ _reference_start_Acts 28:23_reference_end_ _reference_start_Acts 28:31_reference_end_ \en2 4. The character of God's rule \gtrm basileia \trnl basileia _reference_start_Matthew 13:24_reference_end_ _reference_start_Matthew 13:31_reference_end_ _reference_start_Matthew 13:33_reference_end_ _reference_start_Matthew 13:44_reference_end_ _reference_start_Matthew 13:45_reference_end_ _reference_start_Matthew 13:47_reference_end_ _reference_start_Matthew 18:23_reference_end_ _reference_start_Matthew 20:1_ /reference_end_ _reference_start_Matthew 22:2_reference_end_ _reference_start_Matthew 25:1_reference_end_ _reference_start_Mark 4:26_reference_end_ _reference_start_Mark 4:30_reference_end_ _reference_start_Luke 13:18_reference_end_ _reference_start_Luke 13:20_reference_end_ _reference_start_Romans 14:17_reference_end_ _reference_start_1 Corinthians 4:20_reference_end_ _reference_start_Hebrews 1:8_reference_end_ \en2 5. Geo-political entities \gtrm basileia \trnl basileia MAT 4:8; 12:25; 24:7 (2 occurrences) _reference_start_Matthew 4:8_reference_end_ _reference_start_Matthew 12:25_reference_end_ _reference_start_Matthew 24:7_reference_end_ MRK 3:24 (2 occurrences); 6:23; 11:10; 13:8 (2 occurrences) _reference_start_Mark 3:24_reference_end_ _reference_start_Mark 6:23_reference_end_ _reference_start_Mark 11:10_reference_end_ _reference_start_Mark 13:8_reference_end_ LUK 4:5; 11:17; 19:12, 15; 21:10 (2 occurrences) _reference_start_Luke 4:5_reference_end_ _reference_start_Luke 11:17_reference_end_ _reference_start_Luke 19:12_reference_end_ _reference_start_Luke 19:15_reference_end_ _reference_start_Luke 21:10_reference_end_ _reference_start_Acts 1:6_reference_end_ _reference_start_Hebrews 11:33_reference_end_ \en2 6. A priesthood of the redeemed \gtrm basileia \trnl basileia _reference_start_Revelation 1:6_reference_end_ _reference_start_Revelation 5:10_reference_end_ \en2 7. The rule of dark and evil forces \gtrm basileia \trnl basileia _reference_start_Matthew 12:26_reference_end_ _reference_start_Luke 11:18_reference_end_ _reference_start_Revelation 16:10_reference_end_ \en2 8. The totality of earthly kingdoms \gtrm basileia \trnl basileia _reference_start_1 Corinthians 15:24_reference_end_ _reference_start_Revelation 11:15_reference_end_ \en2 9. Authority to rule \gtrm basileia \trnl basileia JHN 18:36 (3 occurrences) _reference_start_John 18:36_reference_end_ _reference_start_Revelation 17:12_reference_end_ _reference_start_Revelation 17:17_reference_end_ _reference_start_Revelation 17:18_reference_end_ SKwwIKINGDOM (including Kingdom of God, Kingdom of Heaven)kingdom (including kingdom of god, kingdom of heaven)\o1 1. The relationship between God and the people he rules \o1 2. The coming of God's rule \o1 3. Proclaiming and hearing the message about God's Rule \o1 4. The character of God's rule \o1 5. Geo-political entities \o1 6. A priesthood of the redeemed \o1 7. The rule of dark and evil forces \o1 8. The totality of earthly kingdoms \o1 9. Authority to rule \gtrm basileia \trnl basileia \xref [L&N 37.64] \def reign \xref [L&N 1.82] \def kingdom \gtrm lambanw basileian \trnl lambanõ basileian \xref [L&N 37.65] \def become a king \gtrm diatiqemai basileian \trnl diatithemai basileian \xref [L&N 37.105] \def give right to rule \gtrm ( ?tfXJ<. xj\N@2$|n`RD6( O*  N* M* L*  K*! J)+ I) H)  G) F( E(" D( C( B( + A( ) @(  ?(  >( =( <( ;( :( 9B 8; 7:  65 54 43 33 21 10 0.2 /. .. -, ,+ ++ ** )* (* '* &* %* $*  #* > "* !* ) " )  )  )  )  )  ) / ( (+ ( ( ( ( ( ( ( ?tfXJ<. xj\N@2$|n`RD6( ) ) ) ( (  ( : . - *  *  ) ) ( ( ( ~( }( / |( - {( , z( ! y(  x(  w, v, u, t, s, r, q* p* < o* n*  m* l* k*+ j) i( h( 4 g(  f( e( d( # c( bB aB  `= _7 ^7 ]*3 \** [* Z* Y* X* W* V* U* T* S* R*  Q*  P*  ?tfXJ<. xj\N@2$|n`RD6( M- L- K- J- I- H- G- F- E- D- C- B- A- @, ?, ' >,5 =+ <+ ;+1 :+ 9+ 8+ 7* 6* 5*' 4* 3* 2( 1(( 0($ /( .( -( ,:  +: *0 )0 (- '- &- %- $- #- "+ !B B B +$ B  . B *  (  B B : ! , * * * *  * )  5on \o2 b. A consistently occurring event, what always happens \o1 6. An inner force that governs one's actions \o1 7. Lawful \o1 8. Lawfully \o1 9. Law giving and law receiving \o1 10. Lawless \o1 11. Lawlessness \o1 12. Against The Law \gtrm nomov \trnl nomos \xref [L&N 33.333] \def law \xref [L&N 33.341] \def marriage law \xref [L&N 33.55] \def The Law \xref [L&N 33.56] \def the Scriptures \xref [L&N 33.58] \def the Sacred writings, “Law and Prophets” \gtrm exesti \trnl exesti \xref [L&N 71.1] \def permissible (also Possible) \xref [L&N 71.32] \def ought to \gtrm anomov \trnl anomos \xref [L&N 11.42] \def heathen \xref [L&N 33.57] \def without the Law \xref [L&N 88.140] \def lawless \gtrm anomwv \trnl anomõs \xref [L&N 33.57] \def without the Law \gtrm ennomov \trnl ennomos \xref [L&N 33.336] \def legal \xref [L&N 33.342] \def subject to law \gtrm mwsjv \trnl mõsæs \xref [L&N 93.266] \def Moses \xref [L&N 33.59] \def the Law of Moses \gtrm nomoqesia \trnl nomothesia \xref [L&N 33.339] \def give 6law \gtrm nomimwv \trnl nomimõs \xref [L&N 72.18] \def correctly \gtrm nomoqetjv \trnl nomothetæs \xref [L&N 33.340] \def law giver \gtrm nomoqetew \trnl nomotheteõ \xref [L&N 33.339] \def give law \gtrm aqemitov \trnl athemitos \xref [L&N 13.144] \def forbidden \gtrm aqesmwv \trnl athesmõs \xref [L&N 88.141] \def lawless \gtrm anomia \trnl anomia \xref [L&N 88.139] \def lawlessness \gtrm paranomew \trnl paranomeõ \def not found contrary to the law (hapax legomenon) \en2 1. A law, law in general \gtrm nomov \trnl nomos JHN 19:7 (2 occurrences) _reference_start_John 19:7_reference_end_ ROM 2:14; 4:15; 5:13; 7:2 (2 occurrences), 3, 23 _reference_start_Romans 2:14_reference_end_ _reference_start_Romans 4:15_reference_end_ _reference_start_Romans 5:13_reference_end_ _reference_start_Romans 7:2_reference_end_ _reference_start_Romans 7:3_reference_end_ _reference_start_Romans 7:23_reference_end_ GAL 3:21 (2 occurrences); 5:23 _reference_start_Galatians 3:21_reference_end_ _reference_start_Galatians 5:23_re 7ference_end_ _reference_start_Hebrews 8:10_reference_end_ _reference_start_Hebrews 10:16_reference_end_ \en2 2. The laws that God gave through Moses to the people of Israel \en3 a. Moses' instructions as principles to live by \gtrm nomov \trnl nomos _reference_start_Matthew 5:17_reference_end_ _reference_start_Matthew 5:18_reference_end_ _reference_start_Matthew 7:12_reference_end_ _reference_start_Matthew 22:36_reference_end_ _reference_start_Matthew 22:40_reference_end_ _reference_start_Matthew 23:23_reference_end_ _reference_start_Luke 2:22_reference_end_ _reference_start_Luke 2:27_reference_end_ _reference_start_Luke 2:39_reference_end_ _reference_start_Luke 16:16_reference_end_ _reference_start_Luke 16:17_reference_end_ JHN 1:17; 7:19 (2 occurrences), 23, 49; 8:5, 17 _reference_start_John 1:17_reference_end_ _reference_start_John 7:19_reference_end_ _reference_start_John 7:23_reference_end_ _reference_start_John 7:49_reference_end_ _reference_start_John 8:5_reference_end_ _reference_start_John 8:17_r 8eference_end_ _reference_start_Acts 7:53_reference_end_ _reference_start_Acts 13:39_reference_end_ _reference_start_Acts 15:5_reference_end_ ROM 2:12, 12, 13 (2 occurrences), 14 (3 occurrences), 15, 17, 18, 20, 23 (2 occurrences), 25 (2 occurrences), 26, 27 (2 occurrences); 3:19 (2 occurrences), 20 (2 occurrences), 21, 28, 31 (2 occurrences); 4:13, 14, 15, 16; 5:13, 20; 6:14, 15; 7:1 (2 occurrences), 4, 5, 6, 7 (3 occurrences), 8, 9, 12, 14, 16, 22, 25; 8:3, 4, 7; 9:31 (2 occurrences); 10:4, 5; 13:8, 10 _reference_start_Romans 2:12_reference_end_ _reference_start_Romans 2:12_reference_end_ _reference_start_Romans 2:13_reference_end_ _reference_start_Romans 2:14_reference_end_ _reference_start_Romans 2:15_reference_end_ _reference_start_Romans 2:17_reference_end_ _reference_start_Romans 2:18_reference_end_ _reference_start_Romans 2:20_reference_end_ _reference_start_Romans 2:23_reference_end_ _reference_start_Romans 2:25_reference_end_ _reference_start_Romans 2:26_reference_end_ _reference_start_Romans 2:2 97_reference_end_ _reference_start_Romans 3:19_reference_end_ _reference_start_Romans 3:20_reference_end_ _reference_start_Romans 3:21_reference_end_ _reference_start_Romans 3:28_reference_end_ _reference_start_Romans 3:31_reference_end_ _reference_start_Romans 4:13_reference_end_ _reference_start_Romans 4:14_reference_end_ _reference_start_Romans 4:15_reference_end_ _reference_start_Romans 4:16_reference_end_ _reference_start_Romans 5:13_reference_end_ _reference_start_Romans 5:20_reference_end_ _reference_start_Romans 6:14_reference_end_ _reference_start_Romans 6:15_reference_end_ _reference_start_Romans 7:1_reference_end_ _reference_start_Romans 7:4_reference_end_ _reference_start_Romans 7:5_reference_end_ _reference_start_Romans 7:6_reference_end_ _reference_start_Romans 7:7_reference_end_ _reference_start_Romans 7:8_reference_end_ _reference_start_Romans 7:9_reference_end_ _reference_start_Romans 7:12_reference_end_ _reference_start_Romans 7:14_reference_end_ _reference_start_Romans 7:16_reference_end :_ _reference_start_Romans 7:22_reference_end_ _reference_start_Romans 7:25_reference_end_ _reference_start_Romans 8:3_reference_end_ _reference_start_Romans 8:4_reference_end_ _reference_start_Romans 8:7_reference_end_ _reference_start_Romans 9:31_reference_end_ _reference_start_Romans 10:4_reference_end_ _reference_start_Romans 10:5_reference_end_ _reference_start_Romans 13:8_reference_end_ _reference_start_Romans 13:10_reference_end_ 1CO 9:20 (4 occurrences); 15:56 _reference_start_1 Corinthians 9:20_reference_end_ _reference_start_1 Corinthians 15:56_reference_end_ GAL 2:16 (3 occurrences), 19 (2 occurrences), 21; 3:2, 5, 10, 11, 12, 13, 17, 18, 19, 23, 21, 24; 4:4, 5, 21; 5:3, 4, 14, 18; 6:13 _reference_start_Galatians 2:16_reference_end_ _reference_start_Galatians 2:19_reference_end_ _reference_start_Galatians 2:21_reference_end_ _reference_start_Galatians 3:2_reference_end_ _reference_start_Galatians 3:5_reference_end_ _reference_start_Galatians 3:10_reference_end_ _reference_start_Galatians 3:11_re ;ference_end_ _reference_start_Galatians 3:12_reference_end_ _reference_start_Galatians 3:13_reference_end_ _reference_start_Galatians 3:17_reference_end_ _reference_start_Galatians 3:18_reference_end_ _reference_start_Galatians 3:19_reference_end_ _reference_start_Galatians 3:23_reference_end_ _reference_start_Galatians 3:21_reference_end_ _reference_start_Galatians 3:24_reference_end_ _reference_start_Galatians 4:4_reference_end_ _reference_start_Galatians 4:5_reference_end_ _reference_start_Galatians 4:21_reference_end_ _reference_start_Galatians 5:3_reference_end_ _reference_start_Galatians 5:4_reference_end_ _reference_start_Galatians 5:14_reference_end_ _reference_start_Galatians 5:18_reference_end_ _reference_start_Galatians 6:13_reference_end_ _reference_start_Ephesians 2:15_reference_end_ _reference_start_Philippians 3:5_reference_end_ _reference_start_Philippians 3:6_reference_end_ _reference_start_Philippians 3:9_reference_end_ _reference_start_1 Timothy 1:8_reference_end_ _reference_start_1 Tim _ _reference_start_Acts 22:12_reference_end_ _reference_start_Acts 23:3_reference_end_ _reference_start_Acts 23:29_reference_end_ _reference_start_Acts 25:8_reference_end_ _reference_start_1 Corinthians 9:8_reference_end_ \en3 c. The laws concerning sacrifices \gtrm nomov \trnl nomos HEB 7:5, 12, 16, 19, 28 (2 occurrences); 8:4; 9:19, 22; 10:1, 8 _reference_start_Hebrews 7:5_reference_end_ _reference_start_Hebrews 7:12_reference_end_ _reference_start_Hebrews 7:16_reference_end_ _reference_start_Hebrews 7:19_reference_end_ _reference_start_Hebrews 7:28_reference_end_ _reference_start_Hebrews 8:4_reference_end_ _reference_start_Hebrews 9:19_reference_end_ _reference_start_Hebrews 9:22_reference_end_ _reference_start_Hebrews 10:1_reference_end_ _reference_start_Hebrews 10:8_reference_end_ \en2 3. The written Law (Scripture) \en3 a. The Pentateuch (the first five books of the Old Testament) \gtrm nomov \trnl nomos _reference_start_Matthew 11:13_reference_end_ _reference_start_Matthew 12:5_reference_end_ _refe ?rence_start_Luke 2:23_reference_end_ _reference_start_Luke 2:24_reference_end_ _reference_start_Luke 10:26_reference_end_ _reference_start_Luke 24:44_reference_end_ _reference_start_1 Corinthians 9:9_reference_end_ _reference_start_John 1:45_reference_end_ _reference_start_Acts 13:15_reference_end_ _reference_start_Acts 24:14_reference_end_ _reference_start_Acts 28:23_reference_end_ _reference_start_Romans 3:21_reference_end_ _reference_start_Galatians 3:10_reference_end_ _reference_start_Galatians 4:21_reference_end_ \gtrm nomoqesia \trnl nomothesia ROM 9:4 (alternate senses 2.a., 2.b., 3.b.) _reference_start_Romans 9:4_reference_end_ \en3 b. The Old Testament as a whole \gtrm nomov \trnl nomos _reference_start_Matthew 15:6_reference_end_ _reference_start_John 10:34_reference_end_ _reference_start_John 12:34_reference_end_ _reference_start_John 15:25_reference_end_ _reference_start_1 Corinthians 14:21_reference_end_ _reference_start_1 Corinthians 14:34_reference_end_ \en2 4. The teachings of Christ \gtrm @ nomov \trnl nomos _reference_start_Galatians 6:2_reference_end_ _reference_start_James 1:25_reference_end_ _reference_start_James 2:8_reference_end_ _reference_start_James 2:12_reference_end_ \gtrm ennomov \trnl ennomos _reference_start_1 Corinthians 9:21_reference_end_ \en2 5. A consistent truth, a system or fact that remains true \en3 a. A principle, an acceptable way to reach a conclusion \gtrm nomov \trnl nomos ROM 3:27 (2 occurrences) _reference_start_Romans 3:27_reference_end_ \en3 b. A consistently occurring event, what always happens \gtrm nomov \trnl nomos _reference_start_Romans 7:21_reference_end_ \en2 6. An inner force that governs one's actions \gtrm nomov \trnl nomos ROM 7:23 (2 occurrences), 25; 8:2 (2 occurrences) _reference_start_Romans 7:23_reference_end_ _reference_start_Romans 7:25_reference_end_ _reference_start_Romans 8:2_reference_end_ \en2 7. Lawful \gtrm exesti \trnl exesti _reference_start_Matthew 12:2_reference_end_ _reference_start_Matthew 12:4_reference_end_ _reference_start_ AMatthew 12:10_reference_end_ _reference_start_Matthew 12:12_reference_end_ _reference_start_Matthew 14:4_reference_end_ _reference_start_Matthew 15:26_reference_end_ _reference_start_Matthew 19:3_reference_end_ _reference_start_Matthew 20:15_reference_end_ _reference_start_Matthew 22:17_reference_end_ _reference_start_Matthew 27:6_reference_end_ _reference_start_Mark 2:24_reference_end_ _reference_start_Mark 2:26_reference_end_ _reference_start_Mark 3:4_reference_end_ _reference_start_Mark 6:18_reference_end_ _reference_start_Mark 10:2_reference_end_ _reference_start_Mark 12:14_reference_end_ _reference_start_Luke 6:2_reference_end_ _reference_start_Luke 6:4_reference_end_ _reference_start_Luke 6:9_reference_end_ _reference_start_Luke 14:3_reference_end_ _reference_start_Luke 20:22_reference_end_ _reference_start_John 5:10_reference_end_ _reference_start_John 18:31_reference_end_ _reference_start_Acts 2:29_reference_end_ _reference_start_Acts 16:21_reference_end_ _reference_start_Acts 22:25_reference_end_ B 1CO 6:12 (2 occurrences); 10:23 (2 occurrences) _reference_start_1 Corinthians 6:12_reference_end_ _reference_start_1 Corinthians 10:23_reference_end_ _reference_start_2 Corinthians 12:4_reference_end_ \gtrm ennomov \trnl ennomos _reference_start_Acts 19:39_reference_end_ \en2 8. Lawfully \gtrm nomimwv \trnl nomimõs _reference_start_1 Timothy 1:8_reference_end_ _reference_start_2 Timothy 2:5_reference_end_ \en2 9. Law giving and law receiving \gtrm nomoqetjv \trnl nomothetæs _reference_start_James 4:12_reference_end_ \gtrm nomoqetew \trnl nomotheteõ _reference_start_Hebrews 7:11_reference_end_ _reference_start_Hebrews 8:6_reference_end_ \en2 10. Lawless \gtrm anomov \trnl anomos _reference_start_Luke 22:37_reference_end_ _reference_start_Acts 2:23_reference_end_ 2TH 2:8, 9 (Implied contextually) _reference_start_2 Thessalonians 2:8_reference_end_ _reference_start_2 Thessalonians 2:9_reference_end_ _reference_start_1 Timothy 1:9_reference_end_ _reference_start_2 Peter 2:8_reference_end_ \gtrm aqemitov \trnl athemitos _reference_start_Acts 10:28_reference_end_ _reference_start_1 Peter 4:3_reference_end_ \gtrm aqesmwv \trnl athesmõs _reference_start_2 Peter 2:7_reference_end_ _reference_start_2 Peter 3:17_reference_end_ \en2 11. Lawlessness \gtrm anomia \trnl anomia _reference_start_Matthew 7:23_reference_end_ _reference_start_Matthew 13:41_reference_end_ _reference_start_Matthew 23:28_reference_end_ _reference_start_Matthew 24:12_reference_end_ _reference_start_Romans 4:7_reference_end_ _reference_start_Romans 6:19_reference_end_ _reference_start_2 Corinthians 6:14_reference_end_ _reference_start_2 Thessalonians 2:3_reference_end_ _reference_start_2 Thessalonians 2:7_reference_end_ _reference_start_Titus 2:14_reference_end_ _reference_start_Hebrews 1:9_reference_end_ _reference_start_Hebrews 10:17_reference_end_ 1JN 3:4 (2 occurrences) _reference_start_1 John 3:4_reference_end_ \en2 12. Against The Law \gtrm paranomew \trnl paranomeõ ACT 23:3 (hapax legomenon) _reference_start_Acts 23:3_reference_end_ {{&M/LAWYERlawyer\see (see SCRIBE)LLAWlaw\see (see also JUDGE, SCRIPTURE) \o1 1. A law, law in general \o1 2. The laws that God gave through Moses to the people of Israel \o2 a. Moses' instructions as principles to live by \o2 b. Moses written regulations, religious and civil \o2 c. The laws concerning sacrifices \o1 3. The written Law (Scripture) \o2 a. The Pentateuch (the first five books of the Old Testament) \o2 b. The Old Testament as a whole \o1 4. The teachings of Christ \o1 5. A consistent truth, a system or fact that remains true \o2 a. A principle, an acceptable way to reach a conclusi 4 ?tfXJ<. xj\N@2$|n`RD6( 6 6 2 2 2 1 0 0 0 0 0 0 0 0 ~0 }0 |0 {0 z0 y0 x0 w0 v0 u0 t0 s0 r0 q0 p0 o.8 n.  m- l-  k-  j-  i-  h- g- f- e- d- c- b- a- `- _- ^- ]- \- [- Z- Y- X- W- V- U- T- S- R- Q- P- O- N- ?tfXJ<. xj\N@2$|n`RD6( K. J+ I+ " H+ " G( F-  E0 D0 C- B, A, @,  ?+- >. =*, <*  ;* :* 9(  8( 7:  6:  5:  4:  3: 2: 1: 0: /: .: -.  ,, +, *, ), (, ', &, %, $, #, ", !+ +3 / .  - , , , +- * * * , - - .  ; ; ; ; :  ?tfXJ<. xj\N@2$|n`RD6( / - - ( ( ( ) ( = = < ,  = ~6 }5 |5 {, z*% y: x: w; v7 u6 t,' s/  r.  q. p, o, n, m+ l+ k* j* i* h* g* f)  e)  d) c) b) a) `( _( ^( ]( \( [( Z( Y( X(  W(  V- U- T- S- R- Q.  P; O; N; M0 L." ?tfXJ<. xj\N@2$|n`RD6( I+ & H+ % G+  F+  E+ D) - C( B:  A:  @*  ?( >; =6 <. ;* :*K 9: 8- 73 6- 5. 4*" 37 26 1* 0*  /( ..  -> ,* +*  ** )* (*+ ') , &.$ %> $2 #, ", !, * * 8 < : 2 . -& , 2 0 / : * + ,$ , > :  : 8 5 5 UU'N/LEVITElevite\o1 1. Member of the tribe/clan of Levi, descendant of Levi \o1 2. Levites of Aaron's line appointed to serve in the tabernacle/temple \gtrm leuitjv \trnl leuitæs \xref [L&N 53.91] \def Levite \gtrm leuitikov \trnl leuitikos \xref [L&N 53.92] \def Levitical \en2 1. Member of the tribe/clan of Levi, descendant of Levi \gtrm leuitjv \trnl leuitæs _reference_start_Acts 4:36_reference_end_ \en2 2. Levites of Aaron's line appointed to serve in the tabernacle/temple \gtrm leuitjv \trnl leuitæs _reference_start_John 1:19_reference_end_ _reference_start_Luke 10:32_reference_end_ \gtrm leuitikov \trnl leuitikos _reference_start_Hebrews 7:11_reference_end_ J 2) Loss of life by murder \o3 3) Loss of life without intention \o2 f. Giving life to someone \o2 g. Eternal life \o2 h. Resurrection life \o1 2. Way of life \o2 a. Overall behavior \o2 b. Specific behavior \o2 c. Wordplay on two senses of life \gtrm agwgj \trnl agõgæ \xref [L&N 41.3] \def behavior \gtrm biov \trnl bios \xref [L&N 41.18] \def daily activity \xref [L&N 57.18] \def possessions \gtrm biwsiv \trnl biõsis \xref [L&N 41.18] \def daily life, manner of life \gtrm biwtikov \trnl biõtikos \xref [L&N 41.19] \def of daily life \gtrm zaw \trnl zaõ \xref [L&N 41.2] \def behave thus \xref [L&N 23.88] \def to live \xref [L&N 23.93] \def live again \gtrm zwj \trnl zõæ \xref [L&N 23.88] \def life \gtrm yucj zwjv \trnl psuchæ zõæs \xref [L&N 4.1] \def living creature \gtrm yucj \trnl psuchæ \xref [L&N 23.88] \def life \xref [L&N 26.4] \def inner self, soul \xref [L&N 9.20] \def person \gtrm zjtew tjn yucjn \trnl zæteõ tæn psuchæn \xref [L&N 20.66] \def want to kill \g Ktrm Ólikia \trnl hælikia \xref [L&N 67.151] \def lifetime \xref [L&N 67.156] \def mature \xref [L&N 81.4] \def stature \gtrm zwopoiew \trnl zõopoieõ \xref [L&N 23.92] \def make live, give life to \gtrm anastrofj \trnl anastrophæ \xref [L&N 41.3] \def behavior \gtrm peripatew \trnl peripateõ \xref [L&N 41.11] \def customarily behave \xref [L&N 15.227] \def walk \gtrm politeuomai \trnl politeuomai \xref [L&N 41.34] \def conduct one's life \gtrm anazaw \trnl anazaõ \xref [L&N 23.93] \def live again \xref [L&N 42.6] \def begin to function \gtrm tropov \trnl tropos \xref [L&N 41.10] \def way of life \xref [L&N 89.83] \def manner \gtrm anastasiv \trnl anastasis \xref [L&N 23.93] \def resurrection \xref (others) \def rising up (status or change) \en2 1. Being alive \en3 a. State of being alive physically \gtrm zaw \trnl zaõ _reference_start_2 Corinthians 1:8_reference_end_ GAL 2:20 (alternate sense 2.a.) _reference_start_Galatians 2:20_reference_end_ _reference_start_Philippians 1:22_reference_end_ \gtrm L zwj \trnl zõæ _reference_start_Acts 17:25_reference_end_ _reference_start_Romans 8:38_reference_end_ _reference_start_1 Corinthians 3:22_reference_end_ _reference_start_Philippians 1:20_reference_end_ _reference_start_Hebrews 7:3_reference_end_ _reference_start_1 Peter 3:10_reference_end_ \gtrm yucj \trnl psuchæ LUK 9:56 (some manuscripts); 14:26 _reference_start_Luke 9:56_reference_end_ _reference_start_Luke 14:26_reference_end_ _reference_start_Acts 15:26_reference_end_ _reference_start_Acts 20:10_reference_end_ _reference_start_Acts 20:24_reference_end_ _reference_start_Philippians 2:30_reference_end_ 1JN 3:16 (2 occurrences) _reference_start_1 John 3:16_reference_end_ \gtrm zwopoiew \trnl zõopoieõ _reference_start_1 Corinthians 15:36_reference_end_ \en3 b. Necessities/products of life: food, clothing, money \gtrm biov \trnl bios _reference_start_Mark 12:44_reference_end_ _reference_start_Luke 8:43_reference_end_ _reference_start_Luke 15:12_reference_end_ _reference_start_Luke 15:30_reference_end M_ _reference_start_Luke 12:4_reference_end_ _reference_start_Luke 21:4_reference_end_ _reference_start_1 John 3:17_reference_end_ \gtrm zaw \trnl zaõ _reference_start_1 Corinthians 9:14_reference_end_ \gtrm yucj \trnl psuchæ MAT 6:25 (2 occurrences) _reference_start_Matthew 6:25_reference_end_ _reference_start_Luke 12:22_reference_end_ \en3 c. Routine of life, daily activities \gtrm biov \trnl bios _reference_start_Luke 8:14_reference_end_ _reference_start_1 Timothy 2:2_reference_end_ _reference_start_2 Timothy 2:4_reference_end_ \gtrm biwtikov \trnl biõtikos _reference_start_Luke 21:34_reference_end_ _reference_start_1 Corinthians 6:3_reference_end_ \gtrm zaw \trnl zaõ _reference_start_Romans 6:10_reference_end_ \gtrm peripatew \trnl peripateõ _reference_start_Colossians 3:7_reference_end_ \en3 d. Lifetime \gtrm zaw \trnl zaõ _reference_start_Romans 7:1_reference_end_ _reference_start_Hebrews 2:15_reference_end_ \gtrm zwj \trnl zõæ _reference_start_Luke 1:75_reference_end_ _reference_start_Luke 1 N6:25_reference_end_ _reference_start_1 Corinthians 15:19_reference_end_ 1TI 4:8 (2 occurrences) _reference_start_1 Timothy 4:8_reference_end_ _reference_start_James 4:14_reference_end_ \gtrm Ólikia \trnl hælikia _reference_start_Matthew 6:27_reference_end_ _reference_start_Luke 12:25_reference_end_ \gtrm anastrofj \trnl anastrophæ _reference_start_Hebrews 13:7_reference_end_ \itrm Jew/Jewish by implication HEB 11:22 (literally: When he died) _reference_start_Hebrews 11:22_reference_end_ \en3 e. Loss of life, death \en4 1) Loss of life by self sacrifice \gtrm yucj \trnl psuchæ _reference_start_Matthew 20:28_reference_end_ _reference_start_Mark 10:45_reference_end_ _reference_start_John 10:11_reference_end_ _reference_start_John 10:15_reference_end_ _reference_start_John 10:17_reference_end_ _reference_start_John 13:37_reference_end_ _reference_start_John 13:38_reference_end_ _reference_start_John 15:13_reference_end_ \en4 2) Loss of life by murder \gtrm yucj \trnl psuchæ _reference_start_Matthew 2:20_ Oreference_end_ _reference_start_Romans 11:3_reference_end_ \en4 3) Loss of life without intention \gtrm yucj \trnl psuchæ _reference_start_Acts 27:10_reference_end_ _reference_start_Acts 27:22_reference_end_ \en3 f. Giving life to someone \gtrm zwj \trnl zõæ _reference_start_John 6:33_reference_end_ \gtrm yucj \trnl psuchæ _reference_start_Mark 3:4_reference_end_ _reference_start_Luke 6:9_reference_end_ _reference_start_Romans 16:4_reference_end_ \gtrm zwopoiew \trnl zõopoieõ JHN 5:21 (2 occurrences) _reference_start_John 5:21_reference_end_ _reference_start_1 Timothy 6:13_reference_end_ \en3 g. Eternal life \gtrm zaw \trnl zaõ _reference_start_Romans 6:13_reference_end_ \gtrm zwj \trnl zõæ _reference_start_Matthew 7:14_reference_end_ _reference_start_Matthew 18:8_reference_end_ _reference_start_Matthew 18:9_reference_end_ _reference_start_Matthew 19:16_reference_end_ _reference_start_Matthew 19:17_reference_end_ _reference_start_Matthew 19:29_reference_end_ _reference_start_Matthew 25:46_referen Pce_end_ _reference_start_Mark 9:43_reference_end_ _reference_start_Mark 9:45_reference_end_ _reference_start_Mark 10:17_reference_end_ _reference_start_Mark 10:30_reference_end_ _reference_start_Luke 10:25_reference_end_ _reference_start_Luke 12:15_reference_end_ _reference_start_Luke 18:18_reference_end_ _reference_start_Luke 18:30_reference_end_ JHN 1:4 (2 occurrences) ( alternate senses 1.a. and 1.h.); 3:15, 16, 36 (2 occurrences); 4:14, 36; 5:24 (2 occurrences), 26 (2 occurrences), 39, 40; 6:27, 35, 40, 47, 48, 51, 53, 54, 63 (2 occurrences), 68; 8:12; 10:10, 28; 11:25; 12:50; 14:6; 17:2, 3; 20:31 _reference_start_John 1:4_reference_end_ _reference_start_John 3:15_reference_end_ _reference_start_John 3:16_reference_end_ _reference_start_John 3:36_reference_end_ _reference_start_John 4:14_reference_end_ _reference_start_John 4:36_reference_end_ _reference_start_John 5:24_reference_end_ _reference_start_John 5:26_reference_end_ _reference_start_John 5:39_reference_end_ _reference_start_John 5:40_referen Qce_end_ _reference_start_John 6:27_reference_end_ _reference_start_John 6:35_reference_end_ _reference_start_John 6:40_reference_end_ _reference_start_John 6:47_reference_end_ _reference_start_John 6:48_reference_end_ _reference_start_John 6:51_reference_end_ _reference_start_John 6:53_reference_end_ _reference_start_John 6:54_reference_end_ _reference_start_John 6:63_reference_end_ _reference_start_John 6:68_reference_end_ _reference_start_John 8:12_reference_end_ _reference_start_John 10:10_reference_end_ _reference_start_John 10:28_reference_end_ _reference_start_John 11:25_reference_end_ _reference_start_John 12:50_reference_end_ _reference_start_John 14:6_reference_end_ _reference_start_John 17:2_reference_end_ _reference_start_John 17:3_reference_end_ _reference_start_John 20:31_reference_end_ _reference_start_Acts 2:28_reference_end_ _reference_start_Acts 3:15_reference_end_ _reference_start_Acts 5:20_reference_end_ _reference_start_Acts 8:33_reference_end_ _reference_start_Acts 11:18_reference_end R_ _reference_start_Acts 13:46_reference_end_ _reference_start_Acts 13:48_reference_end_ ROM 2:7; 5:17, 18, 21; 6:4 (alternate senses 1.h. and 2.a.), 22, 23; 7:10; 8:2, 6 _reference_start_Romans 2:7_reference_end_ _reference_start_Romans 5:17_reference_end_ _reference_start_Romans 5:18_reference_end_ _reference_start_Romans 5:21_reference_end_ _reference_start_Romans 6:4_reference_end_ _reference_start_Romans 6:22_reference_end_ _reference_start_Romans 6:23_reference_end_ _reference_start_Romans 7:10_reference_end_ _reference_start_Romans 8:2_reference_end_ _reference_start_Romans 8:6_reference_end_ 2CO 2:16 (2 occurrences); 4:10, 11, 12 _reference_start_2 Corinthians 2:16_reference_end_ _reference_start_2 Corinthians 4:10_reference_end_ _reference_start_2 Corinthians 4:11_reference_end_ _reference_start_2 Corinthians 4:12_reference_end_ _reference_start_Galatians 6:8_reference_end_ _reference_start_Ephesians 4:18_reference_end_ _reference_start_Philippians 2:16_reference_end_ _reference_start_Philippians S4:3_reference_end_ _reference_start_Colossians 3:3_reference_end_ _reference_start_Colossians 3:4_reference_end_ 1TI 1:16; 6:12, 19 (2 occurrences) _reference_start_1 Timothy 1:16_reference_end_ _reference_start_1 Timothy 6:12_reference_end_ _reference_start_1 Timothy 6:19_reference_end_ _reference_start_2 Timothy 1:1_reference_end_ _reference_start_2 Timothy 1:10_reference_end_ _reference_start_Titus 1:2_reference_end_ _reference_start_Titus 3:7_reference_end_ _reference_start_Hebrews 7:16_reference_end_ _reference_start_James 1:12_reference_end_ _reference_start_1 Peter 3:7_reference_end_ _reference_start_2 Peter 1:3_reference_end_ 1JN 1:1, 2 (2 occurrences); 2:25; 3:14, 15; 5:11 (2 occurrences), 12 (2 occurrences), 13, 16, 20 _reference_start_1 John 1:1_reference_end_ _reference_start_1 John 1:2_reference_end_ _reference_start_1 John 2:25_reference_end_ _reference_start_1 John 3:14_reference_end_ _reference_start_1 John 3:15_reference_end_ _reference_start_1 John 5:11_reference_end_ _reference_start_1 TJohn 5:12_reference_end_ _reference_start_1 John 5:13_reference_end_ _reference_start_1 John 5:16_reference_end_ _reference_start_1 John 5:20_reference_end_ _reference_start_Jude 1:21_reference_end_ _reference_start_Revelation 2:7_reference_end_ _reference_start_Revelation 2:10_reference_end_ _reference_start_Revelation 3:5_reference_end_ _reference_start_Revelation 13:8_reference_end_ _reference_start_Revelation 17:8_reference_end_ _reference_start_Revelation 20:12_reference_end_ _reference_start_Revelation 20:15_reference_end_ _reference_start_Revelation 21:6_reference_end_ _reference_start_Revelation 21:27_reference_end_ _reference_start_Revelation 22:1_reference_end_ _reference_start_Revelation 22:2_reference_end_ _reference_start_Revelation 22:14_reference_end_ _reference_start_Revelation 22:17_reference_end_ _reference_start_Revelation 22:19_reference_end_ \gtrm yucj \trnl psuchæ MAT 16:26 (2 occurrences) _reference_start_Matthew 16:26_reference_end_ _reference_start_Mark 8:36_reference_end_ _refer Uence_start_Mark 8:37_reference_end_ _reference_start_Luke 12:23_reference_end_ \gtrm zwopoiew \trnl zõopoieõ _reference_start_2 Corinthians 3:6_reference_end_ \itrm Jew/Jewish by implication MAT 10:39 (it) (2 occurrences); 16:25 (it) (2 occurrences) _reference_start_Matthew 10:39_reference_end_ _reference_start_Matthew 16:25_reference_end_ MRK 8:35 (it) (2 occurrences) _reference_start_Mark 8:35_reference_end_ JHN 12:25 (it) (3 occurrences) _reference_start_John 12:25_reference_end_ _reference_start_Romans 7:6_reference_end_ _reference_start_1 Corinthians 1:30_reference_end_ _reference_start_Colossians 2:10_reference_end_ \en3 h. Resurrection life \gtrm zaw \trnl zaõ _reference_start_Revelation 2:8_reference_end_ _reference_start_Revelation 20:4_reference_end_ \gtrm zwj \trnl zõæ _reference_start_John 5:29_reference_end_ ROM 5:10; 11:15 (alternate sense 1.g. figuratively) _reference_start_Romans 5:10_reference_end_ _reference_start_Romans 11:15_reference_end_ 2CO 5:4 (alternate sense 1.g.) _reference V_start_2 Corinthians 5:4_reference_end_ _reference_start_Revelation 11:11_reference_end_ \gtrm zwopoiew \trnl zõopoieõ _reference_start_Romans 4:17_reference_end_ _reference_start_Romans 8:11_reference_end_ \gtrm anazaw \trnl anazaõ _reference_start_Revelation 20:5_reference_end_ \gtrm anastasiv \trnl anastasis _reference_start_Hebrews 11:35_reference_end_ \en2 2. Way of life \en3 a. Overall behavior \gtrm agwgj \trnl agõgæ _reference_start_2 Timothy 3:10_reference_end_ \gtrm biov \trnl bios _reference_start_1 Peter 4:3_reference_end_ \gtrm biwsiv \trnl biõsis _reference_start_Acts 26:4_reference_end_ \gtrm anastrofj \trnl anastrophæ _reference_start_Galatians 1:13_reference_end_ _reference_start_Ephesians 4:22_reference_end_ \gtrm peripatew \trnl peripateõ _reference_start_Ephesians 4:1_reference_end_ _reference_start_Colossians 1:10_reference_end_ _reference_start_1 Thessalonians 2:12_reference_end_ _reference_start_3 John 1:3_reference_end_ \gtrm politeuomai \trnl politeuomai _reference_start_Philippians 1:27_reference_end_ \gtrm tropov \trnl tropos _reference_start_Hebrews 13:5_reference_end_ \en3 b. Specific behavior \gtrm zaw \trnl zaõ _reference_start_2 Timothy 3:12_reference_end_ \gtrm anastrofj \trnl anastrophæ _reference_start_James 3:13_reference_end_ \gtrm peripatew \trnl peripateõ _reference_start_Romans 6:4_reference_end_ \itrm Jew/Jewish by implication _reference_start_1 Corinthians 7:17_reference_end_ \en3 c. Wordplay on two senses of life \gtrm biov \trnl bios _reference_start_1 John 2:16_reference_end_ \gtrm yucj \trnl psuchæ MAT 10:39 (2 occurrences); 16:25 (2 occurrences) _reference_start_Matthew 10:39_reference_end_ _reference_start_Matthew 16:25_reference_end_ MRK 8:35 (2 occurrences) _reference_start_Mark 8:35_reference_end_ LUK 9:24 (2 occurrences); 17:33 (2 occurrences) _reference_start_Luke 9:24_reference_end_ _reference_start_Luke 17:33_reference_end_ JHN 12:25 (3 occurrences) _reference_start_John 12:25_reference_end_ _reference_start_Revelation 12:11_reference_end_ +OCCaLIFE -- a tentative listinglife -- a tentative listing\see (see also LIVE) \o1 1. Being alive \o2 a. State of being alive physically \o2 b. Necessities/products of life: food, clothing, money \o2 c. Routine of life, daily activities \o2 d. Lifetime \o2 e. Loss of life, death \o3 1) Loss of life by self sacrifice \o3 I ?tfXJ<. xj\N@2$|n`RD6( , 0 , . ,  ,! , , , + + + ~+ }+ 2 |+  {+  z+ y+ x+D w+? v+6 u+5 t+3 s+0 r+/ q+( p+# o+ n+( m+' l+ k+ j+$ i+ h+$ g+ f+ e+ d* c* b*  a*  `)  _)  ^) - ]) + \(. [( Z( Y( X( W( V( U- T6 S+ R- Q* P) O+! N, M, L-  K( J+ ?tfXJ<. xj\N@2$|n`RD6( G( F( ' E/ D*  C)% B)$ A( @B ?B >B =B <B ;B :B 9B 8B 7B 6B  5B 4B 3B 2A 1> 0> /> .> -> ,> +> *> )> (> '= &< %; $: #8 "8 !7 7 6 6 6 3 3 2 2 1 0 / / / / - - - - - - - - - - ?tfXJ<. xj\N@2$|n`RD6( , *& B :  4 .' - - ~- }(? |< {7 z- y, x, * w* v*& u)  t( sB rB qB p.- o-  nB m+  l*! k*  j)# i( h( ' g> f. e- d; c7 b:  a2 `@ _4 ^3 ]1 \1 [0 Z, Y< X7 W: # VB U- T- SB R/ Q-  P- O+ NB MB L3 K. J- I+  H)# \illed in life \o1 4. About dwelling in a certain place or with certain people \o1 5. About God's life of power and blessing \o2 a. God's own eternal power and authority \o2 b. Having God's eternal life, purpose and authority \o2 c. Affirming by God's name, “As God lives!” \o2 d. Living under God's blessing (OT focus) \o2 e. Having eternal life (NT focus) \o2 f. Metaphorical expressions about giving eternal life \o3 1) Living water \o3 2) Living word \o3 3) Living bread and living way \gtrm anastrefomai \trnl anastrephomai \xref [L&N 41.3] \def behave \gtrm anastrefw \trnl anastrephõ \xref [L&N 15.89] \def return \gtrm diagw \trnl diagõ \xref [L&N 41.3] \def behave \gtrm eirjneuw \trnl eiræneuõ \xref [L&N 88.102] \def live in peace \gtrm zaw \trnl zaõ \xref [L&N 23.88] \def to live \xref [L&N 23.93] \def live again \xref [L&N 41.2] \def behave thus \gtrm esqiw \trnl esthiõ \xref [L&N 57.190] \def earn a living, “eat ones own bread” \xref (others) \def to eat or ] to destroy \gtrm esomai makrocroniav \trnl esomai makrochronias \def to be long lived \gtrm zwogonew \trnl zõogoneõ \xref [L&N 23.89] \def to keep alive \xref [L&N 23.92] \def make live \gtrm suzaw \trnl suzaõ \xref [L&N 23.96] \def live with \gtrm politeuomai \trnl politeuomai \xref [L&N 41.34] \def conduct one's life \gtrm peripatew \trnl peripateõ \xref [L&N 41.11] \def customarily behave \xref [L&N 15.227] \def walk \gtrm trufaw \trnl truphaõ \xref [L&N 88.253] \def revel, live it up \gtrm anazaw \trnl anazaõ \xref [L&N 23.93] \def live again \xref [L&N 42.6] \def begin to function \gtrm Ãparcw \trnl huparchõ \xref [L&N 13.5] \def be \xref [L&N 13.77] \def exist \xref (others) \def be identical, belong to \gtrm eimi \trnl eimi \xref [L&N 13.1] \def be \xref [L&N 13.69] \def exist \xref (others) \def be identical, happen, belong, represent, etc. \gtrm makrocroniov \trnl makrochronios \xref [L&N 67.89] \def long time (hapax legomenon) \gtrm Ósucazo \trnl hæsuchazo \xref [L&N 88.103] \def live ^ quiet life \xref (others) \def rest, remain quiet \gtrm sunoikew \trnl sunoikeõ \xref [L&N 41.9] \def live with \gtrm biow \trnl bioõ \xref [L&N 41.18] \def conduct daily life \gtrm paroikiav humwn cronon \trnl paroikias humõn chronon \def time of your sojourn \gtrm ioudaizw \trnl ioudaizõ \xref [L&N 41.32] \def live as a Jew \en2 1. About being alive in this world \en3 a. Living beings as opposed to inanimate things \gtrm zaw \trnl zaõ _reference_start_Romans 12:1_reference_end_ _reference_start_1 Corinthians 15:45_reference_end_ _reference_start_Revelation 5:14_reference_end_ _reference_start_Revelation 15:7_reference_end_ _reference_start_Revelation 16:3_reference_end_ \en3 b. People who are presently alive, “the living” \gtrm zaw \trnl zaõ _reference_start_Matthew 22:32_reference_end_ _reference_start_Mark 12:27_reference_end_ _reference_start_Luke 20:38_reference_end_ _reference_start_Luke 24:5_reference_end_ _reference_start_Acts 10:42_reference_end_ _reference_start_Acts 14:15_reference_en _d_ _reference_start_Romans 14:9_reference_end_ _reference_start_2 Timothy 4:1_reference_end_ _reference_start_1 Peter 4:5_reference_end_ \en3 c. During one's life time \gtrm zaw \trnl zaõ _reference_start_Matthew 27:63_reference_end_ _reference_start_Romans 7:2_reference_end_ _reference_start_Romans 7:1_reference_end_ _reference_start_Romans 7:3_reference_end_ _reference_start_1 Corinthians 7:39_reference_end_ _reference_start_1 Thessalonians 4:17_reference_end_ _reference_start_Hebrews 9:17_reference_end_ _reference_start_Revelation 19:20_reference_end_ \en3 d. To be able to relate to God and others as a person \gtrm zaw \trnl zaõ LUK 20:38 (2 occurrences) _reference_start_Luke 20:38_reference_end_ _reference_start_Acts 17:28_reference_end_ \en3 e. To actively maintain one's life \gtrm zaw \trnl zaõ _reference_start_Matthew 4:4_reference_end_ _reference_start_Luke 4:4_reference_end_ \gtrm esqiw \trnl esthiõ _reference_start_2 Thessalonians 3:12_reference_end_ \gtrm zwogonew \trnl zõogoneõ _referenc `e_start_Luke 17:33_reference_end_ _reference_start_Acts 7:19_reference_end_ \en3 f. To recover from an illness \gtrm zaw \trnl zaõ _reference_start_Mark 5:23_reference_end_ _reference_start_John 4:50_reference_end_ _reference_start_John 4:53_reference_end_ _reference_start_John 4:51_reference_end_ _reference_start_Revelation 13:14_reference_end_ \en3 g. To be allowed to live \gtrm zaw \trnl zaõ _reference_start_Acts 22:22_reference_end_ _reference_start_Acts 25:24_reference_end_ _reference_start_Acts 28:4_reference_end_ ROM 14:8 (3 occurrences) ( the second “live” is in sense 2.b.) _reference_start_Romans 14:8_reference_end_ _reference_start_2 Corinthians 4:11_reference_end_ _reference_start_2 Corinthians 6:9_reference_end_ PHP 1:21 (alternate sense 5.), 22 _reference_start_Philippians 1:21_reference_end_ _reference_start_Philippians 1:22_reference_end_ \gtrm suzaw \trnl suzaõ _reference_start_2 Corinthians 7:3_reference_end_ \en3 h. To come back to life \gtrm zaw \trnl zaõ _reference_start_Matthew a9:18_reference_end_ JHN 11:25; 14:19 (2 occurrences) _reference_start_John 11:25_reference_end_ _reference_start_John 14:19_reference_end_ _reference_start_Mark 16:11_reference_end_ _reference_start_Luke 24:23_reference_end_ _reference_start_Acts 1:3_reference_end_ _reference_start_Acts 9:41_reference_end_ _reference_start_Acts 20:12_reference_end_ _reference_start_Acts 25:19_reference_end_ \en2 2. About behavior \en3 a. To do whatever one does in the course of life \gtrm anastrefomai \trnl anastrephomai _reference_start_1 Corinthians 2:12_reference_end_ _reference_start_1 Timothy 3:15_reference_end_ _reference_start_Hebrews 13:18_reference_end_ \gtrm diagw \trnl diagõ _reference_start_1 Timothy 2:2_reference_end_ \gtrm zaw \trnl zaõ _reference_start_Romans 14:7_reference_end_ GAL 2:20 (4 occurrences) (the first two occurrences are taken in sense 2.c., and the last occurrence in sense 2.b.1.) _reference_start_Galatians 2:20_reference_end_ _reference_start_Colossians 2:20_reference_end_ _reference_start_ bTitus 2:12_reference_end_ JAS 4:15 (alternate sense 1.g.4.) _reference_start_James 4:15_reference_end_ \gtrm politeuomai \trnl politeuomai _reference_start_Philippians 1:27_reference_end_ \gtrm peripatew \trnl peripateõ _reference_start_Colossians 3:7_reference_end_ _reference_start_1 Thessalonians 4:1_reference_end_ \gtrm biow \trnl bioõ _reference_start_1 Peter 4:2_reference_end_ \gtrm paroikiav humwn cronon \trnl paroikias humõn chronon _reference_start_1 Peter 1:17_reference_end_ \itrm Jew/Jewish by implication 1PE 2:16 (2 occurrences) (the second occurrence has the sense of 2.b.) _reference_start_1 Peter 2:16_reference_end_ \en3 b. To control someone's behavior \gtrm zaw \trnl zaõ GAL 2:20 (4 occurrences) _reference_start_Galatians 2:20_reference_end_ \en3 c. To live in peace and harmony with others \gtrm eirjneuw \trnl eiræneuõ _reference_start_Mark 9:50_reference_end_ _reference_start_Romans 12:18_reference_end_ _reference_start_2 Corinthians 13:11_reference_end_ _reference_start_1 Thessaloni cans 5:13_reference_end_ \gtrm Ósucazo \trnl hæsuchazo _reference_start_1 Thessalonians 4:11_reference_end_ \gtrm sunoikew \trnl sunoikeõ ROM 12:16 (be same minded); 15:5 _reference_start_Romans 12:16_reference_end_ _reference_start_Romans 15:5_reference_end_ _reference_start_1 Peter 3:7_reference_end_ \en3 d. To live for God, by his word, and/or through his grace \gtrm zaw \trnl zaõ ROM 6:11; 14:8 (3 occurrences) ( the first and last “live” is in sense 1.c.) _reference_start_Romans 6:11_reference_end_ _reference_start_Romans 14:8_reference_end_ GAL 2:19, 20 (4 occurrences) (the first two occurrences are taken in sense 2.c., and the third occurrence in sense 2.b.1.) _reference_start_Galatians 2:19_reference_end_ _reference_start_Galatians 2:20_reference_end_ _reference_start_2 Timothy 3:12_reference_end_ _reference_start_1 Peter 2:24_reference_end_ _reference_start_Revelation 3:1_reference_end_ \gtrm politeuomai \trnl politeuomai _reference_start_Acts 23:1_reference_end_ \gtrm peripatew \trnl peripat deõ _reference_start_Philippians 3:17_reference_end_ _reference_start_Colossians 2:6_reference_end_ \gtrm eimi \trnl eimi _reference_start_1 Corinthians 7:29_reference_end_ _reference_start_Ephesians 1:12_reference_end_ \itrm Jew/Jewish by implication _reference_start_2 Corinthians 5:15_reference_end_ 1PE 2:16 (2 occurrences) (the first occurrence has the sense of 2.h.) _reference_start_1 Peter 2:16_reference_end_ _reference_start_1 John 1:6_reference_end_ \en3 e. To live according to wrong beliefs \gtrm anastrefomai \trnl anastrephomai _reference_start_2 Peter 2:18_reference_end_ \gtrm peripatew \trnl peripateõ EPH 4:17 (2 occurrences) _reference_start_Ephesians 4:17_reference_end_ _reference_start_Philippians 3:18_reference_end_ \en3 f. To live by tradition \gtrm zaw \trnl zaõ _reference_start_Acts 26:5_reference_end_ _reference_start_Galatians 2:14_reference_end_ \gtrm peripatew \trnl peripateõ _reference_start_Mark 7:5_reference_end_ \gtrm Ósucazo \trnl hæsuchazo _reference_start_Acts 21:24_refer eence_end_ \gtrm ioudaizw \trnl ioudaizõ _reference_start_Galatians 2:14_reference_end_ \en3 g. To live for sin or self \gtrm anastrefomai \trnl anastrephomai _reference_start_Ephesians 2:3_reference_end_ \gtrm diagw \trnl diagõ _reference_start_Titus 3:3_reference_end_ \gtrm zaw \trnl zaõ _reference_start_Luke 15:13_reference_end_ 2CO 5:15 (2 occurrences) _reference_start_2 Corinthians 5:15_reference_end_ _reference_start_1 Timothy 5:6_reference_end_ \gtrm trufaw \trnl truphaõ JAS 5:5 (the third occurrence is taken in sense 2.a., and the fourth occurrence in sense 2.b.1.) _reference_start_James 5:5_reference_end_ \gtrm Ãparcw \trnl huparchõ _reference_start_Luke 7:25_reference_end_ \gtrm eimi \trnl eimi ROM 6:2; 8:12, 13 (2 occurrences) _reference_start_Romans 6:2_reference_end_ _reference_start_Romans 8:12_reference_end_ _reference_start_Romans 8:13_reference_end_ \itrm Jew/Jewish by implication ROM 8:5 (2 occurrences) _reference_start_Romans 8:5_reference_end_ \en2 3. About feeling whole or fulfil fled in life \gtrm zaw \trnl zaõ _reference_start_Romans 7:9_reference_end_ _reference_start_1 Thessalonians 3:8_reference_end_ \en2 4. About dwelling in a certain place or with certain people \gtrm anastrefomai \trnl anastrephomai _reference_start_Matthew 17:22_reference_end_ \gtrm zaw \trnl zaõ _reference_start_Luke 2:36_reference_end_ \gtrm peripatew \trnl peripateõ _reference_start_2 Corinthians 10:3_reference_end_ \gtrm trufaw \trnl truphaõ _reference_start_Acts 1:20_reference_end_ _reference_start_Acts 13:27_reference_end_ _reference_start_Acts 17:24_reference_end_ _reference_start_Acts 17:26_reference_end_ \gtrm eimi \trnl eimi 2CO 6:16 (originally referred to the location of the tabernacle in the middle of the camp of Israel) _reference_start_2 Corinthians 6:16_reference_end_ \gtrm biow \trnl bioõ _reference_start_1 Corinthians 7:12_reference_end_ _reference_start_1 Corinthians 7:13_reference_end_ \itrm Jew/Jewish by implication 2CO 5:1 (“our...tent”, a metaphor for death) _reference_start_2 g Corinthians 5:1_reference_end_ \en2 5. About God's life of power and blessing \en3 a. God's own eternal power and authority \gtrm zaw \trnl zaõ _reference_start_Matthew 16:16_reference_end_ _reference_start_Matthew 26:63_reference_end_ _reference_start_John 6:57_reference_end_ ROM 6:10 (2 occurrences); 9:26 _reference_start_Romans 6:10_reference_end_ _reference_start_Romans 9:26_reference_end_ _reference_start_1 Timothy 3:15_reference_end_ _reference_start_1 Timothy 4:10_reference_end_ _reference_start_Hebrews 3:12_reference_end_ _reference_start_Hebrews 9:14_reference_end_ _reference_start_Hebrews 10:31_reference_end_ _reference_start_Hebrews 12:22_reference_end_ _reference_start_1 Peter 1:23_reference_end_ _reference_start_1 Peter 1:3_reference_end_ _reference_start_1 Peter 2:4_reference_end_ _reference_start_1 Peter 2:5_reference_end_ _reference_start_Revelation 1:18_reference_end_ _reference_start_Revelation 4:10_reference_end_ _reference_start_Revelation 7:2_reference_end_ _reference_start_Revelati hon 10:6_reference_end_ \en3 b. Having God's eternal life, purpose and authority \gtrm zaw \trnl zaõ JHN 6:57 (2 occurrences) _reference_start_John 6:57_reference_end_ _reference_start_2 Corinthians 13:4_reference_end_ _reference_start_Hebrews 7:8_reference_end_ _reference_start_Hebrews 7:25_reference_end_ \en3 c. Affirming by God's name, “As God lives!” \gtrm zaw \trnl zaõ _reference_start_Romans 14:11_reference_end_ \en3 d. Living under God's blessing (OT focus) \gtrm zaw \trnl zaõ _reference_start_Luke 10:28_reference_end_ JHN 5:25; 6:51 (2 occurrences), 58 _reference_start_John 5:25_reference_end_ _reference_start_John 6:51_reference_end_ _reference_start_John 6:58_reference_end_ _reference_start_Romans 1:17_reference_end_ _reference_start_Galatians 3:12_reference_end_ \gtrm makrocroniov \trnl makrochronios _reference_start_Ephesians 6:3_reference_end_ \en3 e. Having eternal life (NT focus) \gtrm zaw \trnl zaõ JHN 11:26 (alternate sense 2.b. or 1.f.3.) _reference_start_John 11:26_reference_end_ 2CO 5:15 (2 occurrences) _reference_start_2 Corinthians 5:15_reference_end_ _reference_start_Galatians 3:11_reference_end_ _reference_start_Galatians 5:25_reference_end_ _reference_start_1 Thessalonians 5:10_reference_end_ _reference_start_Hebrews 10:38_reference_end_ _reference_start_Hebrews 12:9_reference_end_ _reference_start_1 Peter 4:6_reference_end_ _reference_start_1 John 4:9_reference_end_ \gtrm suzaw \trnl suzaõ _reference_start_Romans 6:8_reference_end_ _reference_start_2 Timothy 2:11_reference_end_ \en3 f. Metaphorical expressions about giving eternal life \en4 1) Living water \gtrm zaw \trnl zaõ _reference_start_John 4:10_reference_end_ _reference_start_John 4:11_reference_end_ _reference_start_Revelation 7:17_reference_end_ \en4 2) Living word \gtrm zaw \trnl zaõ _reference_start_Acts 7:38_reference_end_ _reference_start_Hebrews 4:12_reference_end_ \en4 3) Living bread and living way \gtrm zaw \trnl zaõ _reference_start_John 6:51_reference_end_ _reference_start_Hebrews 10:20_reference_end_ uu-QELORDlord\see (see CHRIST, GOD, IDOL)PCCALIVE -- a tentative listinglive -- a tentative listing\see (see also LIFE) \o1 1. About being alive in this world \o2 a. Living beings as opposed to inanimate things \o2 b. People who are presently alive, “the living” \o2 c. During one's life time \o2 d. To be able to relate to God and others as a person \o2 e. To actively maintain one's life \o2 f. To recover from an illness \o2 g. To be allowed to live \o2 h. To come back to life \o1 2. About behavior \o2 a. To do whatever one does in the course of life \o2 b. To control someone's behavior \o2 c. To live in peace and harmony with others \o2 d. To live for God, by his word, and/or through his grace \o2 e. To live according to wrong beliefs \o2 f. To live by tradition \o2 g. To live for sin or self \o1 3. About feeling whole or fulf [ ?tfXJ<. xj\N@2$|n`RD6( E. D3 C2 B, AB @< ?7 >0 =0 <- ;- :< 9- 8-  74 64 5/ 4-  3) 2 20 1< 0< /< .4 -3 ,2 +; *8 )3 (0 '- &6 %:  $6 #. ", !, , ) , * ) + +  (  / 2 2 / / - , , , B  +3 +5 +2 ) , *! 5 * ( ?tfXJ<. xj\N@2$|n`RD6( +3 + *  - : : ~/  }+9 |B  {B zB yB x< w< v< u< t:  s:  r:  q: p6 o6 n-  m- l+9 k(? j( i/ h. g. f/ e, d, c,  b, a/  `*$ _( ^4 ]- \- [- Z- Y- X* W; V6 U/ T* S8 R1 Q0 P, O) N0 M, L2 K1 J= I> H< G/ F1 ?tfXJ<. xj\N@2$|n`RD6( C+ B+ A+ @> ?> >> =5 <1 ;+ :* * 9( 8> 7> 6> 5> 4> 3< 2; 1; 01 /. .. -- ,+ ++ *+ )+ (+ '+ &+ %+ $+ #+ "+ !+ +* +# *  ) ! )  (% :  +3 : ,& B + + 7 - > < : : & 4 0 0 / +  1 0 - +: nn for someone \o2 c. To highly value something \o1 2. Beloved \o2 a. Concerning God's Beloved Son \o2 b. Direct address to recipients of a letter \o2 c. Attribute of people \o2 d. Description of other objects \gtrm agapaw \trnl agapaõ \xref [L&N 25.43] \def to love \xref [L&N 25.44] \def to show love \xref [L&N 25.104] \def to take pleasure in \gtrm agapj \trnl agapæ \xref [L&N 25.43] \def love (abstract concept) \xref [L&N 23.28] \def fellowship meal \gtrm agapjtov \trnl agapætos \xref [L&N 25.45] \def beloved \xref [L&N 58.53] \def only and very dear \gtrm filew \trnl phileõ \xref [L&N 25.33] \def to love (also to kiss) \gtrm filia \trnl philia \xref [L&N 25.33] \def love/friendship \gtrm filj \trnl philæ \xref [L&N 34.62] \def a female friend (female) \gtrm filov \trnl philos \xref [L&N 34.11] \def loving, loved one (also friend) (male) \gtrm filagaqov \trnl philagathos \xref [L&N 25.105] \def lover of good men \gtrm filadelfia \trnl philadelphia \xref [L&N 25.34] \def brotherly lov oe \gtrm filadelfov \trnl philadelphos \xref [L&N 25.35] \def brother loving, beloved brother \gtrm filandrov \trnl philandros \xref [L&N 25.3] \def loving ones husband \gtrm filanqropia \trnl philanthropia \xref [L&N 88.71] \def friendliness \gtrm filanqropov \trnl philanthropos \xref [L&N 88.72] \def friendly \gtrm filarguria \trnl philarguria \xref [L&N 25.107] \def money love \gtrm filargurov \trnl philarguros \xref [L&N 25.108] \def money lover \gtrm afilargurov \trnl aphilarguros \xref [L&N 25.109] \def non-money lover \gtrm filautov \trnl philautos \xref [L&N 25.39] \def selfish \gtrm filjdonov \trnl philædonos \xref [L&N 25.112] \def pleasure lover \gtrm filoqeov \trnl philotheos \xref [L&N 25.40] \def loving toward God \gtrm filostorgov \trnl philostorgos \xref [L&N 25.41] \def loving/dearly beloved \gtrm filoteknov \trnl philoteknos \xref [L&N 25.38] \def loving of children \gtrm filofronwv \trnl philophronõs \xref [L&N 88.72] \def friendly \gtrm afilagaqov \trnl aphilagathos \xref [L&N 25.106] p \def against what is good \en2 1. To love, love \en3 a. To seek the good of someone; to be devoted to them \en4 1) When God or Jesus Christ is the object of love \gtrm agapaw \trnl agapaõ _reference_start_Matthew 22:37_reference_end_ _reference_start_Mark 12:30_reference_end_ _reference_start_Mark 12:33_reference_end_ _reference_start_Luke 10:27_reference_end_ JHN 3:35; 8:42; 14:15, 21 (2 occurrences), 23, 24, 28, 31; 15:9; 17:23, 24, 26; 21:15, 16 _reference_start_John 3:35_reference_end_ _reference_start_John 8:42_reference_end_ _reference_start_John 14:15_reference_end_ _reference_start_John 14:21_reference_end_ _reference_start_John 14:23_reference_end_ _reference_start_John 14:24_reference_end_ _reference_start_John 14:28_reference_end_ _reference_start_John 14:31_reference_end_ _reference_start_John 15:9_reference_end_ _reference_start_John 17:23_reference_end_ _reference_start_John 17:24_reference_end_ _reference_start_John 17:26_reference_end_ _reference_start_John 21:15_reference_end_ _referenc qe_start_John 21:16_reference_end_ _reference_start_Romans 8:28_reference_end_ _reference_start_1 Corinthians 2:9_reference_end_ _reference_start_1 Corinthians 8:3_reference_end_ _reference_start_Ephesians 6:24_reference_end_ _reference_start_James 1:12_reference_end_ _reference_start_James 2:5_reference_end_ _reference_start_1 Peter 1:8_reference_end_ 1JN 4:10, 20 (2 occurrences), 21; 5:1 (figurative), 2 _reference_start_1 John 4:10_reference_end_ _reference_start_1 John 4:20_reference_end_ _reference_start_1 John 4:21_reference_end_ _reference_start_1 John 5:1_reference_end_ _reference_start_1 John 5:2_reference_end_ \gtrm agapj \trnl agapæ _reference_start_Matthew 24:12_reference_end_ _reference_start_Luke 11:42_reference_end_ _reference_start_John 17:26_reference_end_ _reference_start_Ephesians 6:24_reference_end_ _reference_start_2 Thessalonians 3:5_reference_end_ _reference_start_1 John 2:5_reference_end_ _reference_start_1 John 2:15_reference_end_ _reference_start_1 John 5:3_reference_end_ \gtrm fi rlew \trnl phileõ JHN 5:20; 16:27; 21:15, 16, 17 (3 occurrences) _reference_start_John 5:20_reference_end_ _reference_start_John 16:27_reference_end_ _reference_start_John 21:15_reference_end_ _reference_start_John 21:16_reference_end_ _reference_start_John 21:17_reference_end_ _reference_start_1 Corinthians 16:22_reference_end_ \gtrm filoqeov \trnl philotheos _reference_start_2 Timothy 3:4_reference_end_ \en4 2) When people are the object of love \gtrm agapaw \trnl agapaõ MAT 5:43, 44, 46 (2 occurrences); 6:24; 19:19; 22:39 _reference_start_Matthew 5:43_reference_end_ _reference_start_Matthew 5:44_reference_end_ _reference_start_Matthew 5:46_reference_end_ _reference_start_Matthew 6:24_reference_end_ _reference_start_Matthew 19:19_reference_end_ _reference_start_Matthew 22:39_reference_end_ _reference_start_Mark 12:31_reference_end_ _reference_start_Mark 12:33_reference_end_ LUK 6:27, 32 (4 occurrences), 35; 7:5, 42, 47 (2 occurrences); 16:13 _reference_start_Luke 6:27_reference_end_ _reference_start_Lu ske 6:32_reference_end_ _reference_start_Luke 6:35_reference_end_ _reference_start_Luke 7:5_reference_end_ _reference_start_Luke 7:42_reference_end_ _reference_start_Luke 7:47_reference_end_ _reference_start_Luke 16:13_reference_end_ JHN 3:16; 13:1 (2 occurrences), 34 (3 occurrences); 14:21 (2 occurrences), 23; 15:9, 9, 12 (2 occurrences), 17; 17:23 _reference_start_John 3:16_reference_end_ _reference_start_John 13:1_reference_end_ _reference_start_John 13:34_reference_end_ _reference_start_John 14:21_reference_end_ _reference_start_John 14:23_reference_end_ _reference_start_John 15:9_reference_end_ _reference_start_John 15:9_reference_end_ _reference_start_John 15:12_reference_end_ _reference_start_John 15:17_reference_end_ _reference_start_John 17:23_reference_end_ ROM 8:37; 13:8 (2 occurrences), 9 _reference_start_Romans 8:37_reference_end_ _reference_start_Romans 13:8_reference_end_ _reference_start_Romans 13:9_reference_end_ 2CO 11:11; 12:15 (2 occurrences) _reference_start_2 Corinthians 11:11_referen tce_end_ _reference_start_2 Corinthians 12:15_reference_end_ _reference_start_Galatians 2:20_reference_end_ _reference_start_Galatians 5:14_reference_end_ EPH 2:4; 5:2, 25 (2 occurrences), 28 (3 occurrences), 33 _reference_start_Ephesians 2:4_reference_end_ _reference_start_Ephesians 5:2_reference_end_ _reference_start_Ephesians 5:25_reference_end_ _reference_start_Ephesians 5:28_reference_end_ _reference_start_Ephesians 5:33_reference_end_ _reference_start_Colossians 3:19_reference_end_ _reference_start_1 Thessalonians 4:9_reference_end_ _reference_start_1 Thessalonians 4:10_reference_end_ _reference_start_2 Thessalonians 2:16_reference_end_ _reference_start_Hebrews 12:6_reference_end_ _reference_start_James 2:8_reference_end_ _reference_start_1 Peter 2:17_reference_end_ 1JN 2:10; 3:10, 11, 14 (2 occurrences), 18, 23; 4:7, 7, 8, 10, 10, 11 (2 occurrences), 12, 19 (2 occurrences), 20, 21; 5:1, 2 _reference_start_1 John 2:10_reference_end_ _reference_start_1 John 3:10_reference_end_ _reference_start_1 John u3:11_reference_end_ _reference_start_1 John 3:14_reference_end_ _reference_start_1 John 3:18_reference_end_ _reference_start_1 John 3:23_reference_end_ _reference_start_1 John 4:7_reference_end_ _reference_start_1 John 4:7_reference_end_ _reference_start_1 John 4:8_reference_end_ _reference_start_1 John 4:10_reference_end_ _reference_start_1 John 4:10_reference_end_ _reference_start_1 John 4:11_reference_end_ _reference_start_1 John 4:12_reference_end_ _reference_start_1 John 4:19_reference_end_ _reference_start_1 John 4:20_reference_end_ _reference_start_1 John 4:21_reference_end_ _reference_start_1 John 5:1_reference_end_ _reference_start_1 John 5:2_reference_end_ _reference_start_2 John 1:5_reference_end_ _reference_start_3 John 1:1_reference_end_ _reference_start_Revelation 1:5_reference_end_ _reference_start_Revelation 3:9_reference_end_ \gtrm agapj \trnl agapæ JHN 5:42; 13:35; 15:9 (alternate sense 1.a.1. for last “love”), 10 (2 occurrences), 13 _reference_start_John 5:42_reference_end_ _referenc ve_start_John 13:35_reference_end_ _reference_start_John 15:9_reference_end_ _reference_start_John 15:10_reference_end_ _reference_start_John 15:13_reference_end_ ROM 5:5, 8; 8:35, 39; 12:9; 13:10 (2 occurrences); 14:15; 15:30 _reference_start_Romans 5:5_reference_end_ _reference_start_Romans 5:8_reference_end_ _reference_start_Romans 8:35_reference_end_ _reference_start_Romans 8:39_reference_end_ _reference_start_Romans 12:9_reference_end_ _reference_start_Romans 13:10_reference_end_ _reference_start_Romans 14:15_reference_end_ _reference_start_Romans 15:30_reference_end_ 1CO 8:1; 13:1, 2, 3, 4 (2 occurrences), 5, 8, 13 (2 occurrences); 14:1; 16:14, 24 _reference_start_1 Corinthians 8:1_reference_end_ _reference_start_1 Corinthians 13:1_reference_end_ _reference_start_1 Corinthians 13:2_reference_end_ _reference_start_1 Corinthians 13:3_reference_end_ _reference_start_1 Corinthians 13:4_reference_end_ _reference_start_1 Corinthians 13:5_reference_end_ _reference_start_1 Corinthians 13:8_reference_end_ _re wference_start_1 Corinthians 13:13_reference_end_ _reference_start_1 Corinthians 14:1_reference_end_ _reference_start_1 Corinthians 16:14_reference_end_ _reference_start_1 Corinthians 16:24_reference_end_ _reference_start_2 Corinthians 2:4_reference_end_ _reference_start_2 Corinthians 2:8_reference_end_ _reference_start_2 Corinthians 5:14_reference_end_ _reference_start_2 Corinthians 6:6_reference_end_ _reference_start_2 Corinthians 8:7_reference_end_ _reference_start_2 Corinthians 8:8_reference_end_ _reference_start_2 Corinthians 8:24_reference_end_ _reference_start_2 Corinthians 13:11_reference_end_ _reference_start_2 Corinthians 13:14_reference_end_ _reference_start_Galatians 5:6_reference_end_ _reference_start_Galatians 5:13_reference_end_ _reference_start_Galatians 5:22_reference_end_ _reference_start_Ephesians 1:5_reference_end_ _reference_start_Ephesians 1:15_reference_end_ _reference_start_Ephesians 2:4_reference_end_ _reference_start_Ephesians 3:17_reference_end_ _reference_start_Ephesians 3:19_re xference_end_ _reference_start_Ephesians 4:2_reference_end_ _reference_start_Ephesians 4:15_reference_end_ _reference_start_Ephesians 4:16_reference_end_ _reference_start_Ephesians 5:2_reference_end_ _reference_start_Ephesians 6:23_reference_end_ _reference_start_Philippians 1:9_reference_end_ _reference_start_Philippians 1:16_reference_end_ _reference_start_Philippians 2:1_reference_end_ _reference_start_Philippians 2:2_reference_end_ _reference_start_Colossians 1:4_reference_end_ _reference_start_Colossians 1:8_reference_end_ _reference_start_Colossians 2:2_reference_end_ _reference_start_Colossians 3:14_reference_end_ 1TH 1:3; 3:6, 12; 5:8, 13 (alternate sense 1.a.1.) _reference_start_1 Thessalonians 1:3_reference_end_ _reference_start_1 Thessalonians 3:6_reference_end_ _reference_start_1 Thessalonians 3:12_reference_end_ _reference_start_1 Thessalonians 5:8_reference_end_ _reference_start_1 Thessalonians 5:13_reference_end_ _reference_start_2 Thessalonians 1:3_reference_end_ _reference_start_1 Timothy y1:5_reference_end_ _reference_start_1 Timothy 1:14_reference_end_ _reference_start_1 Timothy 2:15_reference_end_ _reference_start_1 Timothy 4:12_reference_end_ _reference_start_1 Timothy 6:11_reference_end_ _reference_start_2 Timothy 1:7_reference_end_ _reference_start_2 Timothy 1:13_reference_end_ _reference_start_2 Timothy 2:22_reference_end_ _reference_start_2 Timothy 3:10_reference_end_ _reference_start_Titus 2:2_reference_end_ _reference_start_Philemon 1:5_reference_end_ _reference_start_Philemon 1:7_reference_end_ _reference_start_Hebrews 6:10_reference_end_ _reference_start_Hebrews 10:24_reference_end_ 1PE 1:22; 4:8 (2 occurrences); 5:14 _reference_start_1 Peter 1:22_reference_end_ _reference_start_1 Peter 4:8_reference_end_ _reference_start_1 Peter 5:14_reference_end_ _reference_start_2 Peter 1:7_reference_end_ 1JN 3:1, 16, 17; 4:7, 8, 9, 10, 12, 16 (3 occurrences), 17, 18 (3 occurrences) _reference_start_1 John 3:1_reference_end_ _reference_start_1 John 3:16_reference_end_ _reference_start_1 John z 3:17_reference_end_ _reference_start_1 John 4:7_reference_end_ _reference_start_1 John 4:8_reference_end_ _reference_start_1 John 4:9_reference_end_ _reference_start_1 John 4:10_reference_end_ _reference_start_1 John 4:12_reference_end_ _reference_start_1 John 4:16_reference_end_ _reference_start_1 John 4:17_reference_end_ _reference_start_1 John 4:18_reference_end_ 2JN 1:3, 6 (alternate sense 1.a.1. for the first occurrence) _reference_start_2 John 1:3_reference_end_ _reference_start_2 John 1:6_reference_end_ _reference_start_3 John 1:6_reference_end_ _reference_start_Jude 1:2_reference_end_ _reference_start_Jude 1:12_reference_end_ _reference_start_Jude 1:21_reference_end_ _reference_start_Revelation 2:4_reference_end_ _reference_start_Revelation 2:19_reference_end_ \gtrm agapjtov \trnl agapætos _reference_start_Philippians 4:1_reference_end_ \gtrm filew \trnl phileõ _reference_start_Matthew 10:37_reference_end_ _reference_start_John 15:19_reference_end_ _reference_start_John 16:27_reference_end_ _re {ference_start_Titus 3:15_reference_end_ _reference_start_Revelation 3:19_reference_end_ \gtrm filagaqov \trnl philagathos TIT 1:8 (alternate sense 1.c.) _reference_start_Titus 1:8_reference_end_ \gtrm filadelfia \trnl philadelphia _reference_start_Romans 12:10_reference_end_ _reference_start_1 Thessalonians 4:9_reference_end_ _reference_start_Hebrews 13:1_reference_end_ _reference_start_1 Peter 1:22_reference_end_ _reference_start_2 Peter 1:7_reference_end_ _reference_start_2 Peter 1:7_reference_end_ \gtrm filadelfov \trnl philadelphos _reference_start_1 Peter 3:8_reference_end_ \gtrm filandrov \trnl philandros TIT 2:4 (2 occurrences) ( alternate sense 1.b.) _reference_start_Titus 2:4_reference_end_ \gtrm filanqropia \trnl philanthropia _reference_start_Acts 28:2_reference_end_ _reference_start_Titus 3:4_reference_end_ \gtrm filostorgov \trnl philostorgos _reference_start_Romans 12:10_reference_end_ \gtrm filofronwv \trnl philophronõs _reference_start_Acts 28:7_reference_end_ \itrm Jew/Jewish by implicat |ion _reference_start_1 Corinthians 13:7_reference_end_ \en3 b. To have affection for someone \gtrm agapaw \trnl agapaõ _reference_start_John 11:5_reference_end_ _reference_start_John 13:23_reference_end_ _reference_start_John 19:26_reference_end_ _reference_start_John 21:7_reference_end_ _reference_start_John 21:20_reference_end_ \gtrm agapj \trnl agapæ _reference_start_Philemon 1:9_reference_end_ \gtrm filew \trnl phileõ _reference_start_Matthew 10:37_reference_end_ _reference_start_John 11:3_reference_end_ _reference_start_John 11:36_reference_end_ _reference_start_John 20:2_reference_end_ \en3 c. To highly value something \gtrm agapaw \trnl agapaõ _reference_start_Mark 10:21_reference_end_ _reference_start_Luke 11:43_reference_end_ JHN 3:19; 10:17 (alternate sense 1.a.1.); 12:43 _reference_start_John 3:19_reference_end_ _reference_start_John 10:17_reference_end_ _reference_start_John 12:43_reference_end_ ROM 9:13 (choose vs. reject) _reference_start_Romans 9:13_reference_end_ _reference_start_2 Cor }inthians 9:7_reference_end_ _reference_start_2 Timothy 4:8_reference_end_ _reference_start_2 Timothy 4:10_reference_end_ _reference_start_Hebrews 1:9_reference_end_ _reference_start_1 Peter 3:10_reference_end_ _reference_start_2 Peter 2:15_reference_end_ 1JN 2:15 (2 occurrences) _reference_start_1 John 2:15_reference_end_ _reference_start_Revelation 12:11_reference_end_ \gtrm agapj \trnl agapæ _reference_start_1 Corinthians 4:21_reference_end_ _reference_start_2 Thessalonians 2:10_reference_end_ \gtrm filew \trnl phileõ _reference_start_Matthew 6:5_reference_end_ _reference_start_Matthew 23:6_reference_end_ _reference_start_Luke 20:46_reference_end_ _reference_start_John 12:25_reference_end_ _reference_start_Revelation 22:15_reference_end_ \gtrm filia \trnl philia _reference_start_James 4:4_reference_end_ \gtrm filj \trnl philæ _reference_start_Philippians 4:8_reference_end_ \gtrm filov \trnl philos _reference_start_James 4:4_reference_end_ \gtrm filarguria \trnl philarguria _reference_start_1 Timothy ~6:10_reference_end_ \gtrm filargurov \trnl philarguros _reference_start_Luke 16:14_reference_end_ _reference_start_2 Timothy 3:2_reference_end_ _reference_start_Hebrews 13:5_reference_end_ \gtrm afilargurov \trnl aphilarguros _reference_start_1 Timothy 3:3_reference_end_ \gtrm filautov \trnl philautos _reference_start_2 Timothy 3:2_reference_end_ \gtrm filjdonov \trnl philædonos _reference_start_2 Timothy 3:4_reference_end_ \en2 2. Beloved \en3 a. Concerning God's Beloved Son \gtrm agapaw \trnl agapaõ _reference_start_Ephesians 1:6_reference_end_ \gtrm agapjtov \trnl agapætos _reference_start_Matthew 3:17_reference_end_ _reference_start_Matthew 12:18_reference_end_ _reference_start_Matthew 17:5_reference_end_ _reference_start_Mark 1:11_reference_end_ _reference_start_Mark 9:7_reference_end_ _reference_start_Mark 12:6_reference_end_ _reference_start_Luke 3:22_reference_end_ _reference_start_Luke 9:35_reference_end_ _reference_start_Luke 20:13_reference_end_ _reference_start_2 Peter 1:17_reference_end_ \ en3 b. Direct address to recipients of a letter \gtrm agapaw \trnl agapaõ _reference_start_Colossians 3:12_reference_end_ _reference_start_1 Thessalonians 1:4_reference_end_ \gtrm agapj \trnl agapæ JUD 1:1 (stylized direct address) _reference_start_Jude 1:1_reference_end_ \gtrm agapjtov \trnl agapætos ROM 1:7 (stylized direct address); 12:19 _reference_start_Romans 1:7_reference_end_ _reference_start_Romans 12:19_reference_end_ _reference_start_1 Corinthians 10:14_reference_end_ _reference_start_1 Corinthians 15:58_reference_end_ _reference_start_2 Corinthians 7:1_reference_end_ _reference_start_2 Corinthians 12:19_reference_end_ _reference_start_Philippians 2:12_reference_end_ PHM 1:1 (stylized direct address) _reference_start_Philemon 1:1_reference_end_ _reference_start_Hebrews 6:9_reference_end_ _reference_start_James 1:16_reference_end_ _reference_start_James 1:19_reference_end_ _reference_start_James 2:5_reference_end_ _reference_start_1 Peter 2:11_reference_end_ _reference_start_1 Peter 4:12_refe rence_end_ _reference_start_2 Peter 3:1_reference_end_ _reference_start_2 Peter 3:8_reference_end_ _reference_start_2 Peter 3:14_reference_end_ _reference_start_2 Peter 3:15_reference_end_ _reference_start_2 Peter 3:17_reference_end_ _reference_start_1 John 2:7_reference_end_ _reference_start_1 John 3:2_reference_end_ _reference_start_1 John 3:21_reference_end_ _reference_start_1 John 4:1_reference_end_ _reference_start_1 John 4:7_reference_end_ _reference_start_1 John 4:11_reference_end_ _reference_start_3 John 1:1_reference_end_ _reference_start_3 John 1:2_reference_end_ _reference_start_3 John 1:5_reference_end_ _reference_start_3 John 1:11_reference_end_ _reference_start_Jude 1:3_reference_end_ _reference_start_Jude 1:17_reference_end_ _reference_start_Jude 1:20_reference_end_ \en3 c. Attribute of people \gtrm agapaw \trnl agapaõ ROM 9:25 (chosen beloved) (2 occurrences) _reference_start_Romans 9:25_reference_end_ _reference_start_2 Thessalonians 2:13_reference_end_ \gtrm agapj \trnl agapæ _reference_start_Colossians 1:13_reference_end_ \gtrm agapjtov \trnl agapætos _reference_start_Acts 15:25_reference_end_ _reference_start_Romans 11:28_reference_end_ _reference_start_Romans 16:5_reference_end_ _reference_start_Romans 16:8_reference_end_ _reference_start_Romans 16:9_reference_end_ _reference_start_Romans 16:12_reference_end_ _reference_start_1 Corinthians 4:14_reference_end_ _reference_start_1 Corinthians 4:17_reference_end_ _reference_start_Ephesians 5:1_reference_end_ _reference_start_Ephesians 6:21_reference_end_ _reference_start_Colossians 1:7_reference_end_ _reference_start_Colossians 4:7_reference_end_ _reference_start_Colossians 4:9_reference_end_ _reference_start_Colossians 4:14_reference_end_ _reference_start_1 Thessalonians 2:8_reference_end_ _reference_start_1 Timothy 6:2_reference_end_ _reference_start_2 Timothy 1:2_reference_end_ _reference_start_Philemon 1:16_reference_end_ \en3 d. Description of other objects \gtrm agapaw \trnl agapaõ _reference_start_Revelation 20:9_reference_end_ T++mMERCY, MERCIFULmercy, merciful\see (see also COMPASSION, FORGIVE, GRACE, PROPITIATION, RECONC sS?MEDIATORmediator\see (see also ADVOCATE) \o1 Mediator, or representative \gtrm mesitjv \trnl mesitæs \xref [L&N 31.22] \def mediator \xref [L&N 40.6] \def reconciler \en2 Mediator, or representative \gtrm mesitjv \trnl mesitæs 1TI 2:5 (Jesus Christ) _reference_start_1 Timothy 2:5_reference_end_ HEB 8:6 (Jesus Christ); 9:15 (Jesus Christ); 12:24 (Jesus Christ) _reference_start_Hebrews 8:6_reference_end_ _reference_start_Hebrews 9:15_reference_end_ _reference_start_Hebrews 12:24_reference_end_ GAL 3:19 (MSS), 20 (MSS) _reference_start_Galatians 3:19_reference_end_ _reference_start_Galatians 3:20_reference_end_-R''LOVE, BELOVEDlove, beloved\o1 1. To love, love \o2 a. To seek the good of someone; to be devoted to them \o3 1) When God or Jesus Christ is the object of love \o3 2) When people are the object of love \o2 b. To have affectio m ?tfXJ<. xj\N@2$|n`RD6( > > > > ~> }> |> {> z> y> x> w> v> u> t> s< r; q:  p5 o4 n4 m3 l1! k1 j1 i1 h1 g0 f0 e/  d/ c- b-  a-% `+ _+ ^+ ]+ \+ [+ Z+ Y+ " X+  W+ V* U*/ T** S* R*# Q* P* O) ! N)  M(' L( K( J(. I(, H(+ G7 F. E+ D+ ?tfXJ<. xj\N@2$|n`RD6( A4 @4 ?3 >3 =3 <3 ;2 :2 92 82 71 61 51 41 31 21 11 01 /1 .1 -0 ,0 +0 */  )/ (/ '/ &/ %/ $/ #/ "/ !. . . . .  .  .  .  .  .  . - - - - -' -# - - + + + + # +* B B @ ? > > > ?tfXJ<. xj\N@2$|n`RD6( +  +  ~.  }, |- {8 z, y8 x< w= v= u< t:  s4 r- q8 pB o8 n+ m+ l( % k2 jB iB hA gA fA e@ d? c? b> a> `> _> ^> ]> \> [> Z> Y> X> W= V< U< T< S:  R: Q9 P9 O8 N7 M7 L7 K7 J6 I6 H6 G6 F6 E5 D4 C4 B4 ?tfXJ<. xj\N@2$|n`RD6( ?; >: =9 <2 ;/  :/ 9.: 8.  7-  6- 5A 44 33 2= 1* 0* # /* .)  -)  ,) +( *(  )( (1 '7 &7 %6 $:  #7 "* !6 ; 2 ; B +  *. ( ( 5 . B > = < : 7 7 /  - + + +  + * + )  + + $ +  ( % 9 + + + ?tfXJ<. xj\N@2$|n`RD6( ~* }* |) 0 {) / z) y( x( w(! v( u( t(  sB r. q0 p0 o:  n:  m: l6 kB j9 i7 h6 g4 f3 e3 d3 c3 b1 a1 `. _. ^- ]- \- [- Z-  Y, X3 W5 V-  UA TA SA R@ Q@ P@ O@ N> M> L> K> J> I> H= G= F= E= D= C< B< A; @; ILE) \o1 1. Mercy in common collocations \o2 a. Needing mercy \o2 b. Granting/showing/having mercy on \o2 c. Receiving mercy \o2 d. By the mercy of God \o2 e. For, on, and of the mercy of God/Christ \o2 f. Full of mercy \o2 g. Merciful \o2 h. Merciless \o1 2. Use in special contexts \o2 a. Mercy in greetings \o2 b. Mercy as a characteristic required by God \o2 c. The mercy of God in honoring the Old Testament covenant \o2 d. The Mercy Seat of the Ark of the Covenant \gtrm eleeinov \trnl eleeinos \xref [L&N 88.79] \def pitiable \gtrm eleew \trnl eleeõ \xref [L&N 88.76] \def show mercy, compassion, pity \gtrm elejmwn \trnl eleæmõn \xref [L&N 88.77] \def merciful \gtrm eleov \trnl eleos \xref [L&N 88.76] \def mercy, mercifulness \gtrm ³laskomai \trnl hilaskomai \xref [L&N 40.9] \def forgive \xref [L&N 88.75] \def show mercy despite moral offense \gtrm ³lewv \trnl hileõs \xref [L&N 88.77] \def merciful \xref [L&N 88.78] \def God forbid! (hileõs soi) \gtrm ³lastjrion \trnl hilastærion \xref [L&N 40.12] \def means of forgiveness, expiation \xref [L&N 40.13] \def place of forgiveness, mercy seat \gtrm oikteirw, oiktirw \trnl oikteirõ, oiktirõ \xref [L&N 88.80] \def tender compassion \gtrm oiktirmov \trnl oiktirmos \xref [L&N 88.80] \def mercy, tender compassion \gtrm oiktirmwn \trnl oiktirmõn \xref [L&N 88.81] \def merciful \gtrm anelejmwn \trnl aneleæmõn \xref [L&N 88.82] \def unmerciful (adjective) \gtrm aneleov \trnl aneleos \xref [L&N 88.82] \def unmerciful \en2 1. Mercy in common collocations \en3 a. Needing mercy \gtrm eleeinov \trnl eleeinos _reference_start_1 Corinthians 15:19_reference_end_ _reference_start_Revelation 3:17_reference_end_ \en3 b. Granting/showing/having mercy on \gtrm eleew \trnl eleeõ MAT 9:27; 15:22; 17:15; 18:33 (2 occurrences); 20:30, 31 _reference_start_Matthew 9:27_reference_end_ _reference_start_Matthew 15:22_reference_end_ _reference_start_Matthew 17:15_reference_end_ _reference_start_Matthew 18:33_reference_end_ _reference_start _Matthew 20:30_reference_end_ _reference_start_Matthew 20:31_reference_end_ _reference_start_Mark 5:19_reference_end_ _reference_start_Mark 10:47_reference_end_ _reference_start_Mark 10:48_reference_end_ _reference_start_Luke 16:24_reference_end_ _reference_start_Luke 17:13_reference_end_ _reference_start_Luke 18:38_reference_end_ _reference_start_Luke 18:39_reference_end_ _reference_start_Romans 9:15_reference_end_ _reference_start_Romans 9:15_reference_end_ _reference_start_Romans 9:18_reference_end_ _reference_start_Romans 11:32_reference_end_ _reference_start_Romans 12:8_reference_end_ _reference_start_Philippians 2:27_reference_end_ _reference_start_Jude 1:23_reference_end_ \gtrm eleov \trnl eleos _reference_start_Luke 1:58_reference_end_ _reference_start_Luke 10:37_reference_end_ 2TI 1:16, 18 (alternate sense 2.d.) _reference_start_2 Timothy 1:16_reference_end_ _reference_start_2 Timothy 1:18_reference_end_ _reference_start_James 2:13_reference_end_ \en3 c. Receiving mercy \gtrm eleeinov \trnl eleei nos _reference_start_Romans 11:30_reference_end_ _reference_start_Romans 11:31_reference_end_ _reference_start_1 Timothy 1:13_reference_end_ _reference_start_1 Timothy 1:16_reference_end_ 1PE 2:10 (2 occurrences) _reference_start_1 Peter 2:10_reference_end_ \gtrm elejmwn \trnl eleæmõn _reference_start_Matthew 5:7_reference_end_ \gtrm eleov \trnl eleos _reference_start_Hebrews 4:16_reference_end_ \en3 d. By the mercy of God \gtrm eleew \trnl eleeõ ROM 11:31 (alternate sense 2.c.) _reference_start_Romans 11:31_reference_end_ _reference_start_1 Corinthians 7:25_reference_end_ _reference_start_2 Corinthians 4:1_reference_end_ \gtrm eleov \trnl eleos _reference_start_Luke 1:78_reference_end_ _reference_start_Titus 3:5_reference_end_ _reference_start_1 Peter 1:3_reference_end_ \gtrm oiktirmov \trnl oiktirmos _reference_start_Romans 12:1_reference_end_ \en3 e. For, on, and of the mercy of God/Christ \gtrm eleew \trnl eleeõ _reference_start_Romans 9:16_reference_end_ _reference_start_Jude 1:21_reference_end_ \gtrm eleov \trnl eleos _reference_start_Luke 1:50_reference_end_ _reference_start_Romans 9:23_reference_end_ _reference_start_Romans 15:9_reference_end_ \en3 f. Full of mercy \gtrm eleov \trnl eleos _reference_start_Ephesians 2:4_reference_end_ _reference_start_James 3:17_reference_end_ \en3 g. Merciful \gtrm elejmwn \trnl eleæmõn _reference_start_Matthew 5:7_reference_end_ _reference_start_Hebrews 2:17_reference_end_ \gtrm ³laskomai \trnl hilaskomai _reference_start_Luke 18:13_reference_end_ \gtrm ³lewv \trnl hileõs _reference_start_Hebrews 8:12_reference_end_ \gtrm oiktirmov \trnl oiktirmos _reference_start_2 Corinthians 1:3_reference_end_ \gtrm oiktirmwn \trnl oiktirmõn LUK 6:36 (2 occurrences) _reference_start_Luke 6:36_reference_end_ _reference_start_James 5:11_reference_end_ \en3 h. Merciless \gtrm oiktirmov \trnl oiktirmos _reference_start_Hebrews 10:28_reference_end_ \gtrm anelejmwn \trnl aneleæmõn _reference_start_Romans 1:31_reference_end_ \gtrm aneleov \trnl aneleos _reference_start_James 2:13_reference_end_ \en2 2. Use in special contexts \en3 a. Mercy in greetings \gtrm eleov \trnl eleos _reference_start_Galatians 6:16_reference_end_ _reference_start_1 Timothy 1:2_reference_end_ _reference_start_2 Timothy 1:2_reference_end_ _reference_start_2 John 1:3_reference_end_ _reference_start_Jude 1:2_reference_end_ \en3 b. Mercy as a characteristic required by God \gtrm eleov \trnl eleos _reference_start_Matthew 9:13_reference_end_ _reference_start_Matthew 12:7_reference_end_ _reference_start_Matthew 23:23_reference_end_ _reference_start_James 2:13_reference_end_ \gtrm oiktirmov \trnl oiktirmos _reference_start_Colossians 3:12_reference_end_ \en3 c. The mercy of God in honoring the Old Testament covenant \gtrm eleov \trnl eleos _reference_start_Luke 1:54_reference_end_ _reference_start_Luke 1:72_reference_end_ \en3 d. The Mercy Seat of the Ark of the Covenant \gtrm ³lastjrion \trnl hilastærion _reference_start_Hebrews 9:5_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( =) <( ;( :( ' 9( & 8:  7*H 6*6 53 4; 3( 2(  1( 0A /? .7 -6 ,0 +; *- ):  (; '*$ &/ %: $* #: "( !; 1 - -  *2 A -  -  < 8 *N / . -  : ( < 6 6 -  -  ; 7 7 * % *: A 2 -  - -  -  -  *' *& at an important event is about to happen \o2 d. Miraculous sky pictures showing God is working in the world \o1 2. Non-miraculous senses \o2 a. A sign to distinguish one person from another \o2 b. A sign that what God says is true \o2 c. A sign of events to come \o2 d. A warning sign \o2 e. Evidence \gtrm sjmeion \trnl sæmeion \xref [L&N 33.477] \def sign \gtrm terav \trnl teras \xref [L&N 33.480] \def portent \gtrm dunamiv \trnl dunamis \xref [L&N 76.7] \def mighty deed \xref (others) \def ability, power, ruler, meaning, etc. \gtrm paratjrjsiv \trnl paratæræsis \xref [L&N 24.48] \def observable phenomenon (hapax legomenon) \gtrm megaleiov \trnl megaleios \xref [L&N 76.8] \def mighty act (hapax legomenon) \en2 1. Sign \en3 a. Miraculous sign, showing that someone is truly from God \gtrm sjmeion \trnl sæmeion MAT 12:38, 39 (3 occurrences); 16:1, 4 (2 occurrences) _reference_start_Matthew 12:38_reference_end_ _reference_start_Matthew 12:39_reference_end_ _reference_start_Matthew 16:1_r eference_end_ _reference_start_Matthew 16:4_reference_end_ MRK 8:11, 12 (2 occurrences); 16:17, 20 _reference_start_Mark 8:11_reference_end_ _reference_start_Mark 8:12_reference_end_ _reference_start_Mark 16:17_reference_end_ _reference_start_Mark 16:20_reference_end_ LUK 11:16, 29 (2 occurrences); 23:8 _reference_start_Luke 11:16_reference_end_ _reference_start_Luke 11:29_reference_end_ _reference_start_Luke 23:8_reference_end_ _reference_start_John 2:11_reference_end_ _reference_start_John 2:18_reference_end_ _reference_start_John 2:23_reference_end_ _reference_start_John 3:2_reference_end_ _reference_start_John 4:48_reference_end_ _reference_start_John 4:54_reference_end_ _reference_start_John 6:2_reference_end_ _reference_start_John 6:14_reference_end_ _reference_start_John 6:26_reference_end_ _reference_start_John 6:30_reference_end_ _reference_start_John 7:31_reference_end_ _reference_start_John 9:16_reference_end_ _reference_start_John 10:41_reference_end_ _reference_start_John 11:47_reference_end_ _reference_start_John 12:18_reference_end_ _reference_start_John 12:37_reference_end_ _reference_start_John 20:30_reference_end_ _reference_start_Acts 2:22_reference_end_ _reference_start_Acts 2:43_reference_end_ _reference_start_Acts 4:16_reference_end_ _reference_start_Acts 4:22_reference_end_ _reference_start_Acts 4:30_reference_end_ _reference_start_Acts 5:12_reference_end_ _reference_start_Acts 6:8_reference_end_ _reference_start_Acts 7:36_reference_end_ _reference_start_Acts 8:6_reference_end_ _reference_start_Acts 8:13_reference_end_ _reference_start_Acts 14:3_reference_end_ _reference_start_Acts 15:12_reference_end_ _reference_start_Romans 15:19_reference_end_ _reference_start_1 Corinthians 1:22_reference_end_ _reference_start_2 Corinthians 12:12_reference_end_ _reference_start_Hebrews 2:4_reference_end_ \gtrm terav \trnl teras _reference_start_John 4:48_reference_end_ _reference_start_Acts 2:22_reference_end_ _reference_start_Acts 2:43_reference_end_ _reference_start_Acts 4:30_reference_end_ _re ference_start_Acts 5:12_reference_end_ _reference_start_Acts 6:8_reference_end_ _reference_start_Acts 7:36_reference_end_ _reference_start_Acts 14:3_reference_end_ _reference_start_Acts 15:12_reference_end_ _reference_start_Romans 15:19_reference_end_ _reference_start_2 Corinthians 12:12_reference_end_ _reference_start_Hebrews 2:4_reference_end_ \gtrm dunamiv \trnl dunamis _reference_start_Matthew 7:22_reference_end_ _reference_start_Matthew 11:20_reference_end_ _reference_start_Matthew 11:21_reference_end_ _reference_start_Matthew 11:23_reference_end_ _reference_start_Matthew 13:54_reference_end_ _reference_start_Matthew 13:58_reference_end_ _reference_start_Matthew 14:2_reference_end_ _reference_start_Mark 6:2_reference_end_ _reference_start_Mark 6:5_reference_end_ _reference_start_Mark 6:14_reference_end_ _reference_start_Mark 9:39_reference_end_ _reference_start_Luke 10:13_reference_end_ _reference_start_Luke 19:37_reference_end_ _reference_start_Acts 2:22_reference_end_ _reference_start_Acts 8:13_ref erence_end_ _reference_start_Acts 19:11_reference_end_ _reference_start_1 Corinthians 12:10_reference_end_ _reference_start_1 Corinthians 12:28_reference_end_ _reference_start_1 Corinthians 12:29_reference_end_ _reference_start_2 Corinthians 12:12_reference_end_ _reference_start_Galatians 3:5_reference_end_ _reference_start_Ephesians 3:7_reference_end_ _reference_start_Hebrews 2:4_reference_end_ \gtrm megaleiov \trnl megaleios _reference_start_Acts 2:11_reference_end_ \en3 b. Satan's false signs to make his messengers look like God's \gtrm sjmeion \trnl sæmeion _reference_start_Matthew 24:24_reference_end_ _reference_start_Mark 13:22_reference_end_ _reference_start_2 Thessalonians 2:9_reference_end_ _reference_start_Revelation 13:13_reference_end_ _reference_start_Revelation 13:14_reference_end_ _reference_start_Revelation 16:14_reference_end_ _reference_start_Revelation 19:20_reference_end_ \gtrm terav \trnl teras _reference_start_Matthew 24:24_reference_end_ _reference_start_Mark 13:22_reference_end_ _ reference_start_2 Thessalonians 2:9_reference_end_ \en3 c. Miraculous sign that an important event is about to happen \gtrm sjmeion \trnl sæmeion _reference_start_Luke 21:11_reference_end_ _reference_start_Luke 21:25_reference_end_ _reference_start_Acts 2:19_reference_end_ \gtrm paratjrjsiv \trnl paratæræsis _reference_start_Luke 17:20_reference_end_ \en3 d. Miraculous sky pictures showing God is working in the world \gtrm sjmeion \trnl sæmeion _reference_start_Matthew 24:30_reference_end_ _reference_start_Revelation 12:1_reference_end_ _reference_start_Revelation 12:3_reference_end_ _reference_start_Revelation 15:1_reference_end_ \gtrm terav \trnl teras _reference_start_Acts 2:19_reference_end_ \gtrm dunamiv \trnl dunamis MAT 24:29 (could also be referring to demonic powers) _reference_start_Matthew 24:29_reference_end_ MRK 13:25 (could also be referring to demonic powers) _reference_start_Mark 13:25_reference_end_ LUK 21:26 (could also be referring to demonic powers) _reference_start_Luke 21:26_reference_end_ \en2 2. Non-miraculous senses \en3 a. A sign to distinguish one person from another \gtrm sjmeion \trnl sæmeion _reference_start_Matthew 26:48_reference_end_ _reference_start_2 Corinthians 12:12_reference_end_ \en3 b. A sign that what God says is true \gtrm sjmeion \trnl sæmeion LUK 2:12 (alternate sense 1.) _reference_start_Luke 2:12_reference_end_ _reference_start_Romans 4:11_reference_end_ \en3 c. A sign of events to come \gtrm sjmeion \trnl sæmeion _reference_start_Matthew 16:3_reference_end_ _reference_start_Matthew 24:3_reference_end_ _reference_start_Mark 13:4_reference_end_ _reference_start_Luke 21:7_reference_end_ \en3 d. A warning sign \gtrm sjmeion \trnl sæmeion _reference_start_Matthew 16:4_reference_end_ _reference_start_Luke 2:34_reference_end_ _reference_start_Luke 11:29_reference_end_ _reference_start_Luke 11:30_reference_end_ _reference_start_1 Corinthians 14:22_reference_end_ \en3 e. Evidence \gtrm sjmeion \trnl sæmeion _reference_start_2 Thessalonians 3:17_reference_end_ kk%Y1PAGANpagan\see (see GENTILE)$X3OATHoath\see (see COVENANT)AW331NATION, THE NATIONSnation, the nations\see (see GENTILE)=VaNAMEname\o1 1. The label which identifies a particular person \o1 2. A person himself \o2 a. An individual person \o2 b. An important, notable person \o2 c. A person as he has revealed himself to others \o1 3. A person's reputation, honor, or cause \o1 4. The rank or category of a person \o2 a. Title or special identity \o2 b. Authority of someone \o2 c. Relationship with someone \o3 1) Relationship as “in the name” \o3 2) Relationship as in “for the na aUQQ3MIRACLE, SIGN, WONDER, MIGHTY WORKmiracle, sign, wonder, mighty work\o1 1. Sign \o2 a. Miraculous sign, showing that someone is truly from God \o2 b. Satan's false signs to make his messengers look like God's \o2 c. Miraculous sign th ?tfXJ<. xj\N@2$|n`RD6( |* {) ' z) y) x) w( v( : u( 6 t(  s(  r(  q( p: o/ n- m, l, k,$ j, i, h, g,+ f, e+0 d: c/ b. a- `, _, ^, ], \,$ [, Z, Y, X, W, V,+ U, T+ S+ % R+  Q+ / P+ ) O+  N+ M+ L+ K+ J+ I+6 H+0 G+ F+ E+ D+ C* B*  A*  @) ?) >) ?tfXJ<. xj\N@2$|n`RD6( ;* :* 9*? 8* 7* 6* 5) 4) 3) 2(9 1( 0(  /) .( -,: ,5 +. **  )*  (*" '( &* %)  $( #( "- !* / (0 * )  ( , B B  B  ( * , * * 5 )  ( B B B  B 5 )  ( , : 1 0 / .  .  . , , ~, }*% me's sake” \o3 3) Relationship as “name” in other phrases \o2 d. Important characteristic of someone (phrases similar to 2.c.) \o1 5. The process of “naming” \o2 a. To give a proper name to someone \o2 b. To give a title to someone \o2 c. To mention a person's name \o2 d. To mention a word, to discuss a particular topic in conversation \o2 e. To use someone's name as a means to exorcise evil spirits \o2 f. To confess allegiance to \gtrm kalew \trnl kaleõ \xref [L&N 33.129] \def name \xref (others) \def call, call to do, summon, invite \gtrm legw \trnl legõ \xref [L&N 33.129] \def name \xref (others) \def call, speak, mean, imply, think \gtrm onoma \trnl onoma \xref [L&N 33.126] \def name \xref [L&N 33.128] \def give name to \xref [L&N 9.19] \def person \xref [L&N 33.265] \def reputation \xref [L&N 58.22] \def category \gtrm bastazw onoma \trnl bastazõ onoma \xref [L&N 33.210] \def inform \gtrm ekballw to onoma \trnl ekballõ to onoma \xref [L&N 33.396] \def slander \gtrm onoma tinov epi tina \trnl onoma tinos epi tina \xref [L&N 11.28] \def be people of \gtrm onomazw to onoma kuriou \trnl onomazõ to onoma kuriou \xref [L&N 53.62] \def say that one belongs to the Lord \gtrm onomazw \trnl onomazõ \xref [L&N 33.127] \def give a name to \xref [L&N 33.133] \def pronounce a name \xref [L&N 33.93] \def speak about \gtrm onomazw to onoma kuriou \trnl onomazõ to onoma kuriou \xref [L&N 53.62] \def say that one belongs to the Lord \en2 1. The label which identifies a particular person \gtrm kalew \trnl kaleõ _reference_start_Acts 7:58_reference_end_ \gtrm legw \trnl legõ _reference_start_Matthew 9:9_reference_end_ _reference_start_Mark 15:7_reference_end_ \gtrm onoma \trnl onoma _reference_start_Matthew 10:2_reference_end_ _reference_start_Matthew 27:32_reference_end_ _reference_start_Matthew 27:57_reference_end_ MRK 5:9 (2 occurrences), 22; 14:32 _reference_start_Mark 5:9_reference_end_ _reference_start_Mark 5:22_reference_end_ _reference_start_Mark 14:32_reference_end_ LUK 1:5 (2 occurrences), 26, 27 (2 occurrences), 63; 2:21, 25; 5:27; 8:30, 41; 10:20, 38; 16:20; 19:2; 23:50; 24:13, 18 _reference_start_Luke 1:5_reference_end_ _reference_start_Luke 1:26_reference_end_ _reference_start_Luke 1:27_reference_end_ _reference_start_Luke 1:63_reference_end_ _reference_start_Luke 2:21_reference_end_ _reference_start_Luke 2:25_reference_end_ _reference_start_Luke 5:27_reference_end_ _reference_start_Luke 8:30_reference_end_ _reference_start_Luke 8:41_reference_end_ _reference_start_Luke 10:20_reference_end_ _reference_start_Luke 10:38_reference_end_ _reference_start_Luke 16:20_reference_end_ _reference_start_Luke 19:2_reference_end_ _reference_start_Luke 23:50_reference_end_ _reference_start_Luke 24:13_reference_end_ _reference_start_Luke 24:18_reference_end_ _reference_start_John 1:6_reference_end_ _reference_start_John 3:1_reference_end_ _reference_start_John 10:3_reference_end_ _reference_start_John 18:10_reference_end_ _reference_start_Acts 5:1_reference_end_ _reference_start_Ac ts 5:34_reference_end_ _reference_start_Acts 8:9_reference_end_ _reference_start_Acts 9:10_reference_end_ _reference_start_Acts 9:11_reference_end_ _reference_start_Acts 9:12_reference_end_ _reference_start_Acts 9:33_reference_end_ _reference_start_Acts 9:36_reference_end_ _reference_start_Acts 10:1_reference_end_ _reference_start_Acts 11:28_reference_end_ _reference_start_Acts 12:13_reference_end_ _reference_start_Acts 13:6_reference_end_ _reference_start_Acts 13:8_reference_end_ _reference_start_Acts 16:1_reference_end_ _reference_start_Acts 16:14_reference_end_ _reference_start_Acts 17:34_reference_end_ _reference_start_Acts 18:2_reference_end_ _reference_start_Acts 18:7_reference_end_ _reference_start_Acts 18:24_reference_end_ _reference_start_Acts 19:24_reference_end_ _reference_start_Acts 20:9_reference_end_ _reference_start_Acts 21:10_reference_end_ _reference_start_Acts 27:1_reference_end_ _reference_start_Acts 28:7_reference_end_ _reference_start_Philippians 4:3_reference_end_ _reference_start_3 John 1:14_reference_end_ REV 2:17; 3:12 (3 occurrences) ( figure for sense 4.c.); 6:8; 8:11; 9:11; 13:8, 17 (2 occurrences); 14:1 (2 occurrences) ( figure for sense 4.c.), 11 (figure for sense 4.c.); 15:2 (figure for sense 4.c.); 17:5, 8; 19:12 (alternate sense 4.a.); 21:12, 14; 22:4 (figure for sense 4.c.) _reference_start_Revelation 2:17_reference_end_ _reference_start_Revelation 3:12_reference_end_ _reference_start_Revelation 6:8_reference_end_ _reference_start_Revelation 8:11_reference_end_ _reference_start_Revelation 9:11_reference_end_ _reference_start_Revelation 13:8_reference_end_ _reference_start_Revelation 13:17_reference_end_ _reference_start_Revelation 14:1_reference_end_ _reference_start_Revelation 14:11_reference_end_ _reference_start_Revelation 15:2_reference_end_ _reference_start_Revelation 17:5_reference_end_ _reference_start_Revelation 17:8_reference_end_ _reference_start_Revelation 19:12_reference_end_ _reference_start_Revelation 21:12_reference_end_ _reference_start_Revelation 21:14_re ference_end_ _reference_start_Revelation 22:4_reference_end_ \itrm “named” implied by context _reference_start_Acts 19:14_reference_end_ \en2 2. A person himself \en3 a. An individual person \gtrm onoma \trnl onoma _reference_start_Acts 1:15_reference_end_ _reference_start_Revelation 3:4_reference_end_ _reference_start_Revelation 11:13_reference_end_ \en3 b. An important, notable person \gtrm onoma \trnl onoma _reference_start_Acts 3:16_reference_end_ _reference_start_Acts 18:15_reference_end_ _reference_start_Ephesians 1:21_reference_end_ \en3 c. A person as he has revealed himself to others \gtrm onoma \trnl onoma _reference_start_Matthew 6:9_reference_end_ _reference_start_Matthew 12:21_reference_end_ _reference_start_Mark 16:17_reference_end_ _reference_start_Luke 1:49_reference_end_ _reference_start_Luke 11:2_reference_end_ _reference_start_Luke 24:47_reference_end_ _reference_start_John 1:12_reference_end_ _reference_start_John 2:23_reference_end_ _reference_start_John 3:18_reference_end_ _referen ce_start_John 12:28_reference_end_ _reference_start_John 17:6_reference_end_ _reference_start_John 17:26_reference_end_ _reference_start_Acts 3:16_reference_end_ _reference_start_Acts 8:12_reference_end_ _reference_start_Acts 19:17_reference_end_ _reference_start_Acts 26:9_reference_end_ _reference_start_Romans 2:24_reference_end_ _reference_start_Romans 15:9_reference_end_ _reference_start_2 Thessalonians 1:12_reference_end_ _reference_start_1 Timothy 6:1_reference_end_ _reference_start_Hebrews 6:10_reference_end_ _reference_start_Hebrews 13:15_reference_end_ _reference_start_James 2:7_reference_end_ _reference_start_1 John 3:23_reference_end_ _reference_start_1 John 5:13_reference_end_ _reference_start_Revelation 3:8_reference_end_ _reference_start_Revelation 11:18_reference_end_ _reference_start_Revelation 13:6_reference_end_ _reference_start_Revelation 15:4_reference_end_ _reference_start_Revelation 16:9_reference_end_ \en2 3. A person's reputation, honor, or cause \gtrm onoma \trnl onoma _reference_s tart_Matthew 19:29_reference_end_ _reference_start_Mark 6:14_reference_end_ _reference_start_Luke 6:22_reference_end_ _reference_start_Acts 9:15_reference_end_ _reference_start_Acts 9:16_reference_end_ _reference_start_Acts 15:26_reference_end_ _reference_start_Acts 21:13_reference_end_ _reference_start_Romans 1:5_reference_end_ _reference_start_Romans 9:17_reference_end_ _reference_start_Hebrews 2:12_reference_end_ _reference_start_3 John 1:7_reference_end_ _reference_start_Revelation 3:1_reference_end_ \en2 4. The rank or category of a person \en3 a. Title or special identity \gtrm onoma \trnl onoma MAT 10:41 (2 occurrences), 42; 24:5 _reference_start_Matthew 10:41_reference_end_ _reference_start_Matthew 10:42_reference_end_ _reference_start_Matthew 24:5_reference_end_ _reference_start_Mark 9:41_reference_end_ _reference_start_Luke 1:61_reference_end_ PHP 2:9 (2 occurrences) _reference_start_Philippians 2:9_reference_end_ _reference_start_Hebrews 1:4_reference_end_ _reference_start_1 Peter 4:16_referenc e_end_ _reference_start_Revelation 13:1_reference_end_ _reference_start_Revelation 17:3_reference_end_ _reference_start_Revelation 19:13_reference_end_ _reference_start_Revelation 19:16_reference_end_ \gtrm onomazw \trnl onomazõ _reference_start_Mark 3:14_reference_end_ _reference_start_Luke 6:13_reference_end_ _reference_start_1 Corinthians 5:11_reference_end_ _reference_start_Ephesians 1:21_reference_end_ _reference_start_Ephesians 3:15_reference_end_ \en3 b. Authority of someone \gtrm onoma \trnl onoma MAT 7:22 (3 occurrences); 18:20; 21:9; 23:39 _reference_start_Matthew 7:22_reference_end_ _reference_start_Matthew 18:20_reference_end_ _reference_start_Matthew 21:9_reference_end_ _reference_start_Matthew 23:39_reference_end_ _reference_start_Mark 9:38_reference_end_ _reference_start_Mark 9:39_reference_end_ _reference_start_Mark 11:9_reference_end_ _reference_start_Mark 13:6_reference_end_ _reference_start_Luke 9:49_reference_end_ _reference_start_Luke 10:17_reference_end_ _reference_start_Luke 13:35_ reference_end_ _reference_start_Luke 19:38_reference_end_ _reference_start_Luke 21:8_reference_end_ JHN 5:43 (2 occurrences); 10:25; 12:13; 14:26 _reference_start_John 5:43_reference_end_ _reference_start_John 10:25_reference_end_ _reference_start_John 12:13_reference_end_ _reference_start_John 14:26_reference_end_ _reference_start_Acts 3:6_reference_end_ _reference_start_Acts 4:7_reference_end_ _reference_start_Acts 4:10_reference_end_ _reference_start_Acts 16:18_reference_end_ _reference_start_Acts 19:13_reference_end_ _reference_start_1 Corinthians 5:4_reference_end_ _reference_start_2 Thessalonians 3:6_reference_end_ _reference_start_James 5:10_reference_end_ _reference_start_James 5:14_reference_end_ \en3 c. Relationship with someone \en4 1) Relationship as “in the name” \gtrm onoma \trnl onoma _reference_start_Matthew 18:5_reference_end_ _reference_start_Matthew 28:19_reference_end_ _reference_start_Mark 9:37_reference_end_ _reference_start_John 14:13_reference_end_ _reference_start_John 14:14_ref erence_end_ _reference_start_John 15:16_reference_end_ _reference_start_John 16:23_reference_end_ _reference_start_John 16:24_reference_end_ _reference_start_John 16:26_reference_end_ _reference_start_John 17:11_reference_end_ _reference_start_John 17:12_reference_end_ _reference_start_John 20:31_reference_end_ _reference_start_Acts 2:38_reference_end_ _reference_start_Acts 8:16_reference_end_ _reference_start_Acts 10:48_reference_end_ _reference_start_Acts 19:5_reference_end_ _reference_start_1 Corinthians 1:13_reference_end_ _reference_start_1 Corinthians 1:15_reference_end_ _reference_start_1 Corinthians 6:11_reference_end_ _reference_start_Ephesians 5:20_reference_end_ _reference_start_Philippians 2:10_reference_end_ _reference_start_Colossians 3:17_reference_end_ \en4 2) Relationship as in “for the name's sake” \gtrm onoma \trnl onoma _reference_start_Matthew 10:22_reference_end_ _reference_start_Matthew 24:9_reference_end_ _reference_start_Mark 13:13_reference_end_ _reference_start_Luke 9:48_refer ence_end_ _reference_start_Luke 21:12_reference_end_ _reference_start_Luke 21:17_reference_end_ _reference_start_John 15:21_reference_end_ _reference_start_Acts 5:41_reference_end_ _reference_start_Acts 15:14_reference_end_ _reference_start_1 Peter 4:14_reference_end_ _reference_start_Revelation 2:3_reference_end_ \en4 3) Relationship as “name” in other phrases \gtrm onoma \trnl onoma _reference_start_Acts 4:12_reference_end_ _reference_start_Acts 15:17_reference_end_ _reference_start_2 Timothy 2:19_reference_end_ REV 3:5 (2 occurrences) _reference_start_Revelation 3:5_reference_end_ \en3 d. Important characteristic of someone (phrases similar to 2.c.) \gtrm onoma \trnl onoma ACT 2:21 (the Lord as God); 4:17 (Jesus as Messiah), 18 (Jesus as Messiah), 30 (Jesus as Healer); 5:28 (Jesus as Messiah), 40 (Jesus as Messiah); 9:14 (the Lord as God), 21 (Jesus as God), 27 (Jesus as Messiah), 28, 29 (Jesus as Messiah) (2 occurrences); 10:43 (Jesus as Redeemer); 22:16 (Jesus as Savior) _reference_start_Acts 2:21_ reference_end_ _reference_start_Acts 4:17_reference_end_ _reference_start_Acts 4:18_reference_end_ _reference_start_Acts 4:30_reference_end_ _reference_start_Acts 5:28_reference_end_ _reference_start_Acts 5:40_reference_end_ _reference_start_Acts 9:14_reference_end_ _reference_start_Acts 9:21_reference_end_ _reference_start_Acts 9:27_reference_end_ _reference_start_Acts 9:28_reference_end_ _reference_start_Acts 9:29_reference_end_ _reference_start_Acts 10:43_reference_end_ _reference_start_Acts 22:16_reference_end_ ROM 10:13 (the Lord as God) _reference_start_Romans 10:13_reference_end_ 1CO 1:2 (Jesus as God), 10 (Christ as Common Head) _reference_start_1 Corinthians 1:2_reference_end_ _reference_start_1 Corinthians 1:10_reference_end_ 1JN 2:12 (Christ as Savior) _reference_start_1 John 2:12_reference_end_ REV 2:13 (Jesus as Lord; alternate sense 4.c.) _reference_start_Revelation 2:13_reference_end_ \en2 5. The process of “naming” \en3 a. To give a proper name to someone \gtrm onoma \trnl onoma _reference_start_Matthew 1:21_reference_end_ _reference_start_Matthew 1:25_reference_end_ _reference_start_Mark 3:16_reference_end_ _reference_start_Mark 3:17_reference_end_ _reference_start_Luke 1:13_reference_end_ _reference_start_Luke 1:31_reference_end_ _reference_start_Luke 1:59_reference_end_ \gtrm onomazw \trnl onomazõ _reference_start_Luke 6:14_reference_end_ \en3 b. To give a title to someone \gtrm onoma \trnl onoma _reference_start_Matthew 1:23_reference_end_ \en3 c. To mention a person's name \gtrm onomazw \trnl onomazõ _reference_start_Romans 15:20_reference_end_ \en3 d. To mention a word, to discuss a particular topic in conversation \gtrm onomazw \trnl onomazõ _reference_start_1 Corinthians 5:1_reference_end_ _reference_start_Ephesians 5:3_reference_end_ \en3 e. To use someone's name as a means to exorcise evil spirits \gtrm onomazw \trnl onomazõ _reference_start_Acts 19:13_reference_end_ \en3 f. To confess allegiance to \gtrm onomazw \trnl onomazõ _reference_start_2 Timothy 2:19_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( z1 y, x, wB vB u, t, sB rB qB pB oB nB mB lB kB jB  iB  hB gB fB eB dB c@ b2 a, `, _, ^, ], \, [, Z, Y," X, W, V,  U,  T, S,  R,  Q, $ P, ! O, N, M, L, K," J, I+ H+  G+ F+ E* D* C*2 B* A* @* & ?*  >*) =* <* ?tfXJ<. xj\N@2$|n`RD6( 9(' 8( 7( 6( 51 41 3. 2* 1) 0B /B .B -B  ,< +: *2 )*= () ) '( &( * %( ) $B #@ ": !-  - , , ,  ,  * ) ( B B B  B  B > > ; :  : 6 5 - - , , , , + + +  + + + */ *  ~*1 }) |(  {( ?tfXJ<. xj\N@2$|n`RD6( x, w, v, u, tB s7 r, q, pB o< n, m,) l+ k* j* i* 0 h) g( f(  e3 d2 c1 b. a. `. _, ^, 0 ], \,& [+ Z+ Y+ X+ W+ V+ U+ T+ S+ R) % Q( P( O; N; M5 L. K, J, I, H, G, F+ E+ D+  C++ B* A*& @* # ?*  >* 1 =)  <) ;) ' :) & ?tfXJ<. xj\N@2$|n`RD6( 7* 6* 5* 4* 3*  2* ) 1*  0* /* .* -* ,) +)  *)" ))! () ') &) %) $) #( "(- !(! ( ( 5 ( $ ( # ( " ( ! (  (  (  ( ( (  7 , 1 . - ( * *; * * ) ) ( ( B > . . - , , + ,  ~,  },  |,  {,  z,( y, d_ _reference_start_Matthew 13:34_reference_end_ _reference_start_Matthew 13:35_reference_end_ _reference_start_Matthew 13:36_reference_end_ _reference_start_Matthew 13:53_reference_end_ _reference_start_Matthew 15:15_reference_end_ _reference_start_Matthew 21:33_reference_end_ _reference_start_Matthew 21:45_reference_end_ _reference_start_Matthew 22:1_reference_end_ MRK 4:2, 10, 11, 13 (2 occurrences), 30, 33, 34; 12:1, 12 _reference_start_Mark 4:2_reference_end_ _reference_start_Mark 4:10_reference_end_ _reference_start_Mark 4:11_reference_end_ _reference_start_Mark 4:13_reference_end_ _reference_start_Mark 4:30_reference_end_ _reference_start_Mark 4:33_reference_end_ _reference_start_Mark 4:34_reference_end_ _reference_start_Mark 12:1_reference_end_ _reference_start_Mark 12:12_reference_end_ _reference_start_Luke 8:4_reference_end_ _reference_start_Luke 8:9_reference_end_ _reference_start_Luke 8:10_reference_end_ _reference_start_Luke 8:11_reference_end_ _reference_start_Luke 12:16_reference_end_ _reference_start_Luke 12:41_reference_end_ _reference_start_Luke 13:6_reference_end_ _reference_start_Luke 18:1_reference_end_ _reference_start_Luke 18:9_reference_end_ _reference_start_Luke 19:11_reference_end_ _reference_start_Luke 20:9_reference_end_ _reference_start_Luke 20:19_reference_end_ _reference_start_Luke 21:29_reference_end_ \en2 2. Illustrative comparison with symbolic meaning \gtrm parabolj \trnl parabolæ _reference_start_Mark 3:23_reference_end_ _reference_start_Mark 7:17_reference_end_ _reference_start_Luke 4:23_reference_end_ _reference_start_Luke 5:36_reference_end_ _reference_start_Luke 6:39_reference_end_ _reference_start_Luke 14:7_reference_end_ _reference_start_Luke 15:3_reference_end_ \en2 3. Object lesson \gtrm parabolj \trnl parabolæ _reference_start_Matthew 24:32_reference_end_ _reference_start_Mark 13:28_reference_end_ \en2 4. Allegorical, figurative or symbolic \gtrm parabolj \trnl parabolæ _reference_start_Hebrews 9:9_reference_end_ _reference_start_Hebrews 11:19_reference_end_ ff8[''7PARTICIPATIONparticipation\see (see FELLOWSHIP)OZ{PARABLEparable\o1 1. Short narrative with symbolic meaning \o1 2. Illustrative comparison with symbolic meaning \o1 3. Object lesson \o1 4. Allegorical, figurative or symbolic \gtrm parabolj \trnl parabolæ \xref [L&N 33.15] \def parable \xref [L&N 33.16] \def tell a parable \xref [L&N 33.17] \def figuratively, “in parable” \xref [L&N 58.63] \def archetype \en2 1. Short narrative with symbolic meaning \gtrm parabolj \trnl parabolæ MAT 13:3, 10, 13, 18, 24, 31, 33, 34 (2 occurrences), 35, 36, 53; 15:15; 21:33, 45; 22:1 _reference_start_Matthew 13:3_reference_end_ _reference_start_Matthew 13:10_reference_end_ _reference_start_Matthew 13:13_reference_end_ _reference_start_Matthew 13:18_reference_end_ _reference_start_Matthew 13:24_reference_end_ _reference_start_Matthew 13:31_reference_end_ _reference_start_Matthew 13:33_reference_en ?tfXJ<. xj\N@2$|n`RD6( v+ u+ t= s: r3 q2 p1 o- n- m+! l+ k** j*& i* h*O gB f4 e, d,  c* b* 3 a( " `< _; ^:  ]1 \. [- Z,  Y3 X1 W1 V1 U1 T- S, $ R, Q7 P0 O- N- M- L; K. J,$ I,! H*0 G*2 F* E)" D:  C: B)  A( @* ?* >*' =*$ <* ;) :) 9* 8* ref [L&N 88.104] \def quiet \gtrm eirjnopoiew \trnl eirænopoieõ \xref [L&N 40.4] \def make peace \gtrm eirjnopoiov \trnl eirænopoios \xref [L&N 40.5] \def peacemaker \gtrm siwpaw \trnl siõpaõ \xref [L&N 14.24] \def become calm \xref [L&N 33.117] \def be silent \xref [L&N 33.118] \def not be able to speak \en2 1. Noun \en3 a. Peace, Tranquillity under favorable circumstance or state \gtrm eirjnj \trnl eirænæ _reference_start_Mark 5:34_reference_end_ _reference_start_Luke 2:29_reference_end_ _reference_start_Luke 7:50_reference_end_ _reference_start_Luke 8:48_reference_end_ _reference_start_Acts 15:33_reference_end_ _reference_start_Acts 16:36_reference_end_ _reference_start_1 Corinthians 16:11_reference_end_ _reference_start_James 2:16_reference_end_ \en3 b. Freedom from worry \gtrm eirjnj \trnl eirænæ _reference_start_Romans 2:10_reference_end_ _reference_start_Romans 14:17_reference_end_ _reference_start_Romans 15:13_reference_end_ _reference_start_Galatians 5:22_reference_end_ _reference_start_ 2 Timothy 2:22_reference_end_ \en3 c. Reconciliation as the content and goal of all gospel preaching \gtrm eirjnj \trnl eirænæ ACT 7:26 (not in RSV); 10:36 _reference_start_Acts 7:26_reference_end_ _reference_start_Acts 10:36_reference_end_ _reference_start_Romans 5:1_reference_end_ _reference_start_Ephesians 2:14_reference_end_ _reference_start_Ephesians 2:15_reference_end_ _reference_start_Ephesians 2:17_reference_end_ _reference_start_Ephesians 6:15_reference_end_ \gtrm eirjnopoiew \trnl eirænopoieõ _reference_start_Colossians 1:20_reference_end_ \en3 d. Harmony and unity among men \gtrm eirjnj \trnl eirænæ _reference_start_Acts 9:31_reference_end_ _reference_start_Romans 14:19_reference_end_ _reference_start_1 Corinthians 7:15_reference_end_ _reference_start_Ephesians 4:3_reference_end_ _reference_start_Hebrews 12:14_reference_end_ JAS 3:18 (2 occurrences) _reference_start_James 3:18_reference_end_ _reference_start_1 Peter 3:11_reference_end_ \en3 e. Opposite of war \gtrm eirjnj \trnl eirænæ M AT 10:34 (2 occurrences) _reference_start_Matthew 10:34_reference_end_ _reference_start_Luke 12:51_reference_end_ _reference_start_Luke 14:32_reference_end_ _reference_start_Acts 12:20_reference_end_ _reference_start_Acts 24:2_reference_end_ _reference_start_1 Thessalonians 5:3_reference_end_ _reference_start_Revelation 6:4_reference_end_ \en3 f. Eschatological salvation of the whole person \gtrm eirjnj \trnl eirænæ _reference_start_Luke 1:79_reference_end_ _reference_start_Luke 2:14_reference_end_ _reference_start_Luke 19:38_reference_end_ _reference_start_Luke 19:42_reference_end_ JHN 14:27 (2 occurrences); 16:33 _reference_start_John 14:27_reference_end_ _reference_start_John 16:33_reference_end_ _reference_start_Romans 3:17_reference_end_ _reference_start_Romans 8:6_reference_end_ _reference_start_Ephesians 2:17_reference_end_ _reference_start_Philippians 4:7_reference_end_ _reference_start_Colossians 3:15_reference_end_ HEB 7:2 (here, Melchizedek is a type of Christ) _reference_start_Hebrews 7:2_re ference_end_ _reference_start_2 Peter 3:14_reference_end_ \en3 g. Greeting or Farewell with a blessing of wholeness and well-being \en4 1) Regular \gtrm eirjnj \trnl eirænæ _reference_start_John 20:19_reference_end_ _reference_start_John 20:21_reference_end_ _reference_start_John 20:26_reference_end_ _reference_start_Romans 1:7_reference_end_ _reference_start_1 Corinthians 1:3_reference_end_ _reference_start_2 Corinthians 1:2_reference_end_ _reference_start_Galatians 1:3_reference_end_ _reference_start_Galatians 6:16_reference_end_ _reference_start_Ephesians 1:2_reference_end_ _reference_start_Ephesians 6:23_reference_end_ _reference_start_Philippians 1:2_reference_end_ _reference_start_Colossians 1:2_reference_end_ _reference_start_1 Thessalonians 1:1_reference_end_ _reference_start_2 Thessalonians 1:2_reference_end_ _reference_start_2 Thessalonians 3:16_reference_end_ _reference_start_1 Timothy 1:2_reference_end_ _reference_start_2 Timothy 1:2_reference_end_ _reference_start_Titus 1:4_reference_end_ _ reference_start_Philemon 1:3_reference_end_ _reference_start_Hebrews 11:31_reference_end_ _reference_start_1 Peter 1:2_reference_end_ _reference_start_1 Peter 5:14_reference_end_ _reference_start_2 Peter 1:2_reference_end_ _reference_start_2 John 1:3_reference_end_ _reference_start_3 John 1:14_reference_end_ _reference_start_3 John 1:15_reference_end_ _reference_start_Jude 1:2_reference_end_ _reference_start_Revelation 1:4_reference_end_ \en4 2) Extended meaning implied \gtrm eirjnj \trnl eirænæ MAT 10:13 (2 occurrences) ( alternate sense 1.f.) _reference_start_Matthew 10:13_reference_end_ LUK 10:5 (alternate sense 1.f.), 6 (2 occurrences) ( alternate sense 1.f.) _reference_start_Luke 10:5_reference_end_ _reference_start_Luke 10:6_reference_end_ \en3 h. God of peace and salvation \gtrm eirjnj \trnl eirænæ _reference_start_Romans 15:33_reference_end_ _reference_start_Romans 16:20_reference_end_ _reference_start_1 Corinthians 14:33_reference_end_ _reference_start_2 Corinthians 13:11_reference_end_ _reference_start_Philippians 4:9_reference_end_ _reference_start_1 Thessalonians 5:23_reference_end_ _reference_start_2 Thessalonians 3:16_reference_end_ _reference_start_Hebrews 13:20_reference_end_ \en3 i. Safe or secure \gtrm eirjnj \trnl eirænæ _reference_start_Luke 11:21_reference_end_ \en2 2. Verbs: \en3 a. To Live in harmony \gtrm eirjneuw \trnl eiræneuõ _reference_start_Mark 9:50_reference_end_ _reference_start_Romans 12:18_reference_end_ _reference_start_2 Corinthians 13:11_reference_end_ _reference_start_1 Thessalonians 5:13_reference_end_ \gtrm eirjnopoiov \trnl eirænopoios _reference_start_Matthew 5:9_reference_end_ \en3 b. To become calm \gtrm siwpaw \trnl siõpaõ _reference_start_Mark 4:39_reference_end_ \en2 3. Adjectives \en3 a. A spirit of harmony \gtrm jremov \trnl æremos 1TI 2:2 (hapax legomenon) _reference_start_1 Timothy 2:2_reference_end_ \en3 b. Free from worry \gtrm eirjnikov \trnl eirænikos _reference_start_Hebrews 12:11_reference_end_ _reference_start_James 3:17_reference_end_ --3\KPEACEpeace\see (see also RECONCILE) \o1 1. Noun \o2 a. Peace, Tranquillity under favorable circumstance or state \o2 b. Freedom from worry \o2 c. Reconciliation as the content and goal of all gospel preaching \o2 d. Harmony and unity among men \o2 e. Opposite of war \o2 f. Eschatological salvation of the whole person \o2 g. Greeting or Farewell with a blessing of wholeness and well-being \o3 1) Regular \o3 2) Extended meaning implied \o2 h. God of peace and salvation \o2 i. Safe or secure \o1 2. Verbs: \o2 a. To Live in harmony \o2 b. To become calm \o1 3. Adjectives \o2 a. A spirit of harmony \o2 b. Free from worry \gtrm eirjneuw \trnl eiræneuõ \xref [L&N 88.102] \def live in peace \gtrm eirjnj \trnl eirænæ \xref [L&N 22.42] \def peace, tranquillity \xref [L&N 25.248] \def freedom from worry \gtrm eirjnikov \trnl eirænikos \xref [L&N 25.249] \def free from worry \gtrm jremov \trnl æremos \x ?tfXJ<. xj\N@2$|n`RD6( 5( 4( 3( 2( 1( 0( /( .( & -(  ,(  +(  *( " )(  (( '( &( %; $: #6 ")' !( 4 / -  ) 2 *  :  5 4 2 / .! - -! *  *  ( B A @ @ ? = < < :  9 8 7 6 5 5 4 3 2 ~1 }1 |0 {0 z/ y. x- w+ t_Matthew 12:24_reference_end_ _reference_start_Matthew 12:38_reference_end_ _reference_start_Matthew 15:1_reference_end_ _reference_start_Matthew 15:12_reference_end_ _reference_start_Matthew 16:1_reference_end_ _reference_start_Matthew 16:6_reference_end_ _reference_start_Matthew 16:11_reference_end_ _reference_start_Matthew 16:12_reference_end_ _reference_start_Matthew 19:3_reference_end_ _reference_start_Matthew 21:45_reference_end_ _reference_start_Matthew 22:15_reference_end_ _reference_start_Matthew 22:34_reference_end_ _reference_start_Matthew 22:41_reference_end_ _reference_start_Matthew 23:2_reference_end_ _reference_start_Matthew 23:13_reference_end_ _reference_start_Matthew 23:15_reference_end_ _reference_start_Matthew 23:23_reference_end_ _reference_start_Matthew 23:25_reference_end_ _reference_start_Matthew 23:26_reference_end_ _reference_start_Matthew 23:27_reference_end_ _reference_start_Matthew 23:29_reference_end_ _reference_start_Matthew 27:62_reference_end_ MRK 2:16, 18 (2 occurrences) , 24; 3:6; 7:1, 3, 5; 8:11, 15; 10:2; 12:13 _reference_start_Mark 2:16_reference_end_ _reference_start_Mark 2:18_reference_end_ _reference_start_Mark 2:24_reference_end_ _reference_start_Mark 3:6_reference_end_ _reference_start_Mark 7:1_reference_end_ _reference_start_Mark 7:3_reference_end_ _reference_start_Mark 7:5_reference_end_ _reference_start_Mark 8:11_reference_end_ _reference_start_Mark 8:15_reference_end_ _reference_start_Mark 10:2_reference_end_ _reference_start_Mark 12:13_reference_end_ LUK 5:17, 21, 30, 33; 6:2, 7; 7:30, 36 (2 occurrences), 37, 39; 11:37, 38, 39, 42, 43, 53; 12:1; 13:31; 14:1, 3; 15:2; 16:14; 17:20; 18:10, 11; 19:39 _reference_start_Luke 5:17_reference_end_ _reference_start_Luke 5:21_reference_end_ _reference_start_Luke 5:30_reference_end_ _reference_start_Luke 5:33_reference_end_ _reference_start_Luke 6:2_reference_end_ _reference_start_Luke 6:7_reference_end_ _reference_start_Luke 7:30_reference_end_ _reference_start_Luke 7:36_reference_end_ _reference_start_Luke 7:37_refere nce_end_ _reference_start_Luke 7:39_reference_end_ _reference_start_Luke 11:37_reference_end_ _reference_start_Luke 11:38_reference_end_ _reference_start_Luke 11:39_reference_end_ _reference_start_Luke 11:42_reference_end_ _reference_start_Luke 11:43_reference_end_ _reference_start_Luke 11:53_reference_end_ _reference_start_Luke 12:1_reference_end_ _reference_start_Luke 13:31_reference_end_ _reference_start_Luke 14:1_reference_end_ _reference_start_Luke 14:3_reference_end_ _reference_start_Luke 15:2_reference_end_ _reference_start_Luke 16:14_reference_end_ _reference_start_Luke 17:20_reference_end_ _reference_start_Luke 18:10_reference_end_ _reference_start_Luke 18:11_reference_end_ _reference_start_Luke 19:39_reference_end_ JHN 1:24; 3:1; 4:1; 7:32 (2 occurrences), 45, 47, 48; 8:3, 13; 9:13, 15, 16, 40; 11:46, 47, 57; 12:19, 42; 18:3 _reference_start_John 1:24_reference_end_ _reference_start_John 3:1_reference_end_ _reference_start_John 4:1_reference_end_ _reference_start_John 7:32_reference_end_ _reference_start_John 7:45_reference_end_ _reference_start_John 7:47_reference_end_ _reference_start_John 7:48_reference_end_ _reference_start_John 8:3_reference_end_ _reference_start_John 8:13_reference_end_ _reference_start_John 9:13_reference_end_ _reference_start_John 9:15_reference_end_ _reference_start_John 9:16_reference_end_ _reference_start_John 9:40_reference_end_ _reference_start_John 11:46_reference_end_ _reference_start_John 11:47_reference_end_ _reference_start_John 11:57_reference_end_ _reference_start_John 12:19_reference_end_ _reference_start_John 12:42_reference_end_ _reference_start_John 18:3_reference_end_ ACT 5:34; 15:5; 23:6 (3 occurrences), 7, 8, 9; 26:5 _reference_start_Acts 5:34_reference_end_ _reference_start_Acts 15:5_reference_end_ _reference_start_Acts 23:6_reference_end_ _reference_start_Acts 23:7_reference_end_ _reference_start_Acts 23:8_reference_end_ _reference_start_Acts 23:9_reference_end_ _reference_start_Acts 26:5_reference_end_ _reference_start_Philippians 3:5_reference_end_ I]kPHARISEEpharisee\o1 1. Pharisee \gtrm farisaiov \trnl pharisaios \xref [L&N 11.49] \def Pharisee (The dominant religious party among the Jews known for their belief in the resurrection and their strict adherance to the traditions handed down by the scribes. These traditions explained the law of Moses, and applied them to everyday life.) \en2 1. Pharisee \gtrm farisaiov \trnl pharisaios _reference_start_Matthew 3:7_reference_end_ _reference_start_Matthew 5:20_reference_end_ _reference_start_Matthew 9:11_reference_end_ _reference_start_Matthew 9:14_reference_end_ _reference_start_Matthew 9:34_reference_end_ _reference_start_Matthew 12:2_reference_end_ _reference_start_Matthew 12:14_reference_end_ _reference_star ?tfXJ<. xj\N@2$|n`RD6( t+ ( s+  r+  q+ p+ o+ n+0 m+/ l+- k+ j+ i+ h+ g*' f* e* d* c* b* a* `* _*  ^*  ]* 5 \* + [* * Z* ' Y* & X* % W*' V*% U*$ T* S* R* Q*! P* O* N* M) L)  K) J) I) H) G) F) E) D) C) B(> A( @( ?( >( =( <( ;( :( 9() 8(" 7( 6(- ?tfXJ<. xj\N@2$|n`RD6( 3/  2/ 1/ 0/ // ..8 -.+ ,. +. *. ). (. '. &. %. $- #- "-  !- - - , & , , , ,! , , , *1 *E * *  *  *. * * *$ * *# * )> )  )  )  ) (@ ( ( 2 , , , ~, }, |, {," z+ y+ * x+  w+ 9 v+ / u+ . great strength, power or authority (could be separated into God's supernatural power, and power or authority in the human context) \gtrm dunamiv \trnl dunamis MAT 22:29; 24:30; 26:64 (figurative: metonymy of attributive association (here the attribute of power is put for God)) _reference_start_Matthew 22:29_reference_end_ _reference_start_Matthew 24:30_reference_end_ _reference_start_Matthew 26:64_reference_end_ MRK 5:30; 9:1; 12:24; 13:26; 14:62 (figurative: metonymy of attributive association (here the attribute of power is put for God)) _reference_start_Mark 5:30_reference_end_ _reference_start_Mark 9:1_reference_end_ _reference_start_Mark 12:24_reference_end_ _reference_start_Mark 13:26_reference_end_ _reference_start_Mark 14:62_reference_end_ _reference_start_Luke 1:17_reference_end_ _reference_start_Luke 1:35_reference_end_ _reference_start_Luke 4:14_reference_end_ _reference_start_Luke 4:36_reference_end_ _reference_start_Luke 5:17_reference_end_ _reference_start_Luke 6:19_reference_end_ _referenc e_start_Luke 8:46_reference_end_ _reference_start_Luke 9:1_reference_end_ _reference_start_Luke 10:19_reference_end_ _reference_start_Luke 21:27_reference_end_ _reference_start_Luke 22:69_reference_end_ _reference_start_Luke 24:49_reference_end_ _reference_start_Acts 1:8_reference_end_ _reference_start_Acts 3:12_reference_end_ _reference_start_Acts 4:7_reference_end_ _reference_start_Acts 4:33_reference_end_ _reference_start_Acts 6:8_reference_end_ _reference_start_Acts 8:10_reference_end_ _reference_start_Acts 8:19_reference_end_ _reference_start_Acts 10:38_reference_end_ ROM 1:4, 16, 20; 9:17; 15:13, 19 (2 occurrences) _reference_start_Romans 1:4_reference_end_ _reference_start_Romans 1:16_reference_end_ _reference_start_Romans 1:20_reference_end_ _reference_start_Romans 9:17_reference_end_ _reference_start_Romans 15:13_reference_end_ _reference_start_Romans 15:19_reference_end_ _reference_start_1 Corinthians 1:18_reference_end_ _reference_start_1 Corinthians 1:24_reference_end_ _reference_start_1 Corin thians 2:4_reference_end_ _reference_start_1 Corinthians 2:5_reference_end_ _reference_start_1 Corinthians 4:19_reference_end_ _reference_start_1 Corinthians 4:20_reference_end_ _reference_start_1 Corinthians 5:4_reference_end_ _reference_start_1 Corinthians 6:14_reference_end_ _reference_start_1 Corinthians 15:43_reference_end_ _reference_start_1 Corinthians 15:56_reference_end_ 2CO 1:8 (i.e. without strength); 4:7; 6:7; 12:9 (2 occurrences); 13:4 (2 occurrences) _reference_start_2 Corinthians 1:8_reference_end_ _reference_start_2 Corinthians 4:7_reference_end_ _reference_start_2 Corinthians 6:7_reference_end_ _reference_start_2 Corinthians 12:9_reference_end_ _reference_start_2 Corinthians 13:4_reference_end_ _reference_start_Ephesians 1:19_reference_end_ _reference_start_Ephesians 1:21_reference_end_ _reference_start_Ephesians 3:16_reference_end_ _reference_start_Ephesians 3:20_reference_end_ _reference_start_Philippians 3:10_reference_end_ _reference_start_Colossians 1:11_reference_end_ _reference_sta rt_Colossians 1:29_reference_end_ _reference_start_1 Thessalonians 1:5_reference_end_ _reference_start_2 Thessalonians 1:7_reference_end_ _reference_start_2 Thessalonians 1:11_reference_end_ _reference_start_2 Thessalonians 2:9_reference_end_ _reference_start_2 Timothy 1:7_reference_end_ _reference_start_2 Timothy 1:8_reference_end_ _reference_start_2 Timothy 3:5_reference_end_ HEB 1:3; 7:16; 11:34 (i.e. powerful blazes) _reference_start_Hebrews 1:3_reference_end_ _reference_start_Hebrews 7:16_reference_end_ _reference_start_Hebrews 11:34_reference_end_ _reference_start_1 Peter 1:5_reference_end_ _reference_start_2 Peter 1:3_reference_end_ _reference_start_2 Peter 1:16_reference_end_ _reference_start_2 Peter 2:11_reference_end_ REV 1:16; 3:8; 4:11; 5:12; 7:12; 11:17; 12:10; 13:2; 15:8; 17:13; 18:3 (i.e. strong passion); 19:1 _reference_start_Revelation 1:16_reference_end_ _reference_start_Revelation 3:8_reference_end_ _reference_start_Revelation 4:11_reference_end_ _reference_start_Revelation 5:12_reference_end_ _reference_start_Revelation 7:12_reference_end_ _reference_start_Revelation 11:17_reference_end_ _reference_start_Revelation 12:10_reference_end_ _reference_start_Revelation 13:2_reference_end_ _reference_start_Revelation 15:8_reference_end_ _reference_start_Revelation 17:13_reference_end_ _reference_start_Revelation 18:3_reference_end_ _reference_start_Revelation 19:1_reference_end_ \en2 2. The word “dunamis” as ability \gtrm dunamiv \trnl dunamis _reference_start_Matthew 25:15_reference_end_ _reference_start_Hebrews 11:11_reference_end_ 2CO 8:3 (2 occurrences) _reference_start_2 Corinthians 8:3_reference_end_ \en2 3. The word “dunamis” as supernatural beings \gtrm dunamiv \trnl dunamis _reference_start_Romans 8:38_reference_end_ _reference_start_1 Corinthians 15:24_reference_end_ _reference_start_Hebrews 6:5_reference_end_ _reference_start_1 Peter 3:22_reference_end_ \en2 4. The word “dunamis” as interpretation \gtrm dunamiv \trnl dunamis _reference_start_1 Corinthians 14:11_reference_end_ ^POWERpower\see (see also SIGN) \o1 1. The word “dunamis” as great strength, power or authority (could be separated into God's supernatural power, and power or authority in the human context) \o1 2. The word “dunamis” as ability \o1 3. The word “dunamis” as supernatural beings \o1 4. The word “dunamis” as interpretation \gtrm dunamiv \trnl dunamis \xref [L&N 76.1] \def power \xref [L&N 12.44] \def supernatural power \xref [L&N 74.1] \def ability \xref [L&N 33.134] \def meaning, interpretation \en2 1. The word “dunamis” as ?tfXJ<. xj\N@2$|n`RD6( r( q( p( o( n( m(, l@ k> j+ i+ h+ g+ f+ e4 d,  c, b, a, `* _*$ ^*  ]( & \. [< Z: Y. X-& W/ V: U( TB SB RB QB PB  OB NB  MB LB KB JB IB H= G= F= E< D: " C: B: A7 @7 ?7 >5 =5 <5 ;4 :3 93 82 71 61 51 41 trm dejsiv \trnl deæsis \xref [L&N 33.171] \def plea \gtrm enteuxiv \trnl enteuxis \xref [L&N 33.347] \def intercession \gtrm eucj \trnl euchæ \xref [L&N 33.178] \def prayer \gtrm proseucj \trnl proseuchæ \xref [L&N 33.178] \def prayer \xref [L&N 33.179] \def place for prayer \gtrm epikaleomai \trnl epikaleomai \xref [L&N 33.176] \def ask for help \xref [L&N 56.15] \def appeal to a higher court \en2 1. Pray to God \gtrm deomai \trnl deomai _reference_start_Matthew 9:38_reference_end_ _reference_start_Luke 10:2_reference_end_ _reference_start_Luke 21:36_reference_end_ _reference_start_Luke 22:32_reference_end_ _reference_start_Acts 4:31_reference_end_ _reference_start_Acts 8:22_reference_end_ _reference_start_Acts 8:24_reference_end_ _reference_start_Acts 10:2_reference_end_ _reference_start_1 Thessalonians 3:10_reference_end_ \gtrm erwtaw \trnl erõtaõ JHN 14:16; 16:26; 17:9 (2 occurrences), 15, 20 _reference_start_John 14:16_reference_end_ _reference_start_John 16:26_reference_end_ _reference_start_J ohn 17:9_reference_end_ _reference_start_John 17:15_reference_end_ _reference_start_John 17:20_reference_end_ _reference_start_1 John 5:16_reference_end_ \gtrm eucomai \trnl euchomai _reference_start_3 John 1:2_reference_end_ \gtrm proseucomai \trnl proseuchomai MAT 5:44; 6:5 (2 occurrences), 6 (2 occurrences), 7, 9; 14:23; 19:13; 24:20; 26:36, 39, 41, 42, 44 _reference_start_Matthew 5:44_reference_end_ _reference_start_Matthew 6:5_reference_end_ _reference_start_Matthew 6:6_reference_end_ _reference_start_Matthew 6:7_reference_end_ _reference_start_Matthew 6:9_reference_end_ _reference_start_Matthew 14:23_reference_end_ _reference_start_Matthew 19:13_reference_end_ _reference_start_Matthew 24:20_reference_end_ _reference_start_Matthew 26:36_reference_end_ _reference_start_Matthew 26:39_reference_end_ _reference_start_Matthew 26:41_reference_end_ _reference_start_Matthew 26:42_reference_end_ _reference_start_Matthew 26:44_reference_end_ MRK 1:35; 6:46; 11:24, 25; 12:40; 13:18, 33 (not in all manuscripts); 14:32, 35, 38, 39 _reference_start_Mark 1:35_reference_end_ _reference_start_Mark 6:46_reference_end_ _reference_start_Mark 11:24_reference_end_ _reference_start_Mark 11:25_reference_end_ _reference_start_Mark 12:40_reference_end_ _reference_start_Mark 13:18_reference_end_ _reference_start_Mark 13:33_reference_end_ _reference_start_Mark 14:32_reference_end_ _reference_start_Mark 14:35_reference_end_ _reference_start_Mark 14:38_reference_end_ _reference_start_Mark 14:39_reference_end_ LUK 1:10; 3:21; 5:16; 6:12 (2 occurrences), 28; 9:18, 28, 29; 11:1 (2 occurrences), 2; 18:1, 10, 11; 20:47; 22:40, 41, 45, 46 _reference_start_Luke 1:10_reference_end_ _reference_start_Luke 3:21_reference_end_ _reference_start_Luke 5:16_reference_end_ _reference_start_Luke 6:12_reference_end_ _reference_start_Luke 6:28_reference_end_ _reference_start_Luke 9:18_reference_end_ _reference_start_Luke 9:28_reference_end_ _reference_start_Luke 9:29_reference_end_ _reference_start_Luke 11:1_reference_end_ _reference_start_Luke 11:2 _reference_end_ _reference_start_Luke 18:1_reference_end_ _reference_start_Luke 18:10_reference_end_ _reference_start_Luke 18:11_reference_end_ _reference_start_Luke 20:47_reference_end_ _reference_start_Luke 22:40_reference_end_ _reference_start_Luke 22:41_reference_end_ _reference_start_Luke 22:45_reference_end_ _reference_start_Luke 22:46_reference_end_ _reference_start_Acts 1:24_reference_end_ _reference_start_Acts 6:6_reference_end_ _reference_start_Acts 8:15_reference_end_ _reference_start_Acts 9:11_reference_end_ _reference_start_Acts 9:40_reference_end_ _reference_start_Acts 10:9_reference_end_ _reference_start_Acts 10:30_reference_end_ _reference_start_Acts 11:5_reference_end_ _reference_start_Acts 12:12_reference_end_ _reference_start_Acts 13:3_reference_end_ _reference_start_Acts 14:23_reference_end_ _reference_start_Acts 16:25_reference_end_ _reference_start_Acts 20:36_reference_end_ _reference_start_Acts 21:5_reference_end_ _reference_start_Acts 22:17_reference_end_ _reference_start_Acts 28:8 _reference_end_ _reference_start_Romans 8:26_reference_end_ 1CO 11:4, 5, 13; 14:13, 14 (2 occurrences), 15 (2 occurrences) _reference_start_1 Corinthians 11:4_reference_end_ _reference_start_1 Corinthians 11:5_reference_end_ _reference_start_1 Corinthians 11:13_reference_end_ _reference_start_1 Corinthians 14:13_reference_end_ _reference_start_1 Corinthians 14:14_reference_end_ _reference_start_1 Corinthians 14:15_reference_end_ _reference_start_Ephesians 6:18_reference_end_ _reference_start_Philippians 1:9_reference_end_ _reference_start_Colossians 1:3_reference_end_ _reference_start_Colossians 1:9_reference_end_ _reference_start_Colossians 4:2_reference_end_ _reference_start_Colossians 4:3_reference_end_ _reference_start_1 Thessalonians 5:17_reference_end_ _reference_start_1 Thessalonians 5:25_reference_end_ _reference_start_2 Thessalonians 1:11_reference_end_ _reference_start_2 Thessalonians 3:1_reference_end_ _reference_start_1 Timothy 2:8_reference_end_ _reference_start_Hebrews 13:18_reference_end_ _ reference_start_James 5:13_reference_end_ _reference_start_James 5:14_reference_end_ _reference_start_James 5:17_reference_end_ _reference_start_James 5:18_reference_end_ _reference_start_Jude 1:20_reference_end_ \gtrm dejsiv \trnl deæsis _reference_start_Luke 1:13_reference_end_ _reference_start_Luke 2:37_reference_end_ _reference_start_Luke 5:33_reference_end_ _reference_start_Romans 10:1_reference_end_ _reference_start_2 Corinthians 1:11_reference_end_ _reference_start_2 Corinthians 9:14_reference_end_ _reference_start_Ephesians 6:18_reference_end_ PHP 1:4 (2 occurrences), 19 _reference_start_Philippians 1:4_reference_end_ _reference_start_Philippians 1:19_reference_end_ _reference_start_2 Timothy 1:3_reference_end_ _reference_start_Hebrews 5:7_reference_end_ _reference_start_James 5:16_reference_end_ _reference_start_1 Peter 3:12_reference_end_ \gtrm enteuxiv \trnl enteuxis _reference_start_1 Timothy 4:5_reference_end_ \gtrm eucj \trnl euchæ _reference_start_2 Corinthians 13:7_reference_end_ _refere nce_start_2 Corinthians 13:9_reference_end_ _reference_start_James 5:15_reference_end_ _reference_start_James 5:16_reference_end_ \gtrm proseucj \trnl proseuchæ _reference_start_Matthew 21:13_reference_end_ _reference_start_Matthew 21:22_reference_end_ _reference_start_Mark 9:29_reference_end_ _reference_start_Mark 11:17_reference_end_ _reference_start_Luke 19:46_reference_end_ _reference_start_Acts 1:14_reference_end_ _reference_start_Acts 2:42_reference_end_ _reference_start_Acts 3:1_reference_end_ _reference_start_Acts 6:4_reference_end_ _reference_start_Acts 10:4_reference_end_ _reference_start_Acts 10:31_reference_end_ _reference_start_Acts 12:5_reference_end_ _reference_start_Acts 16:13_reference_end_ _reference_start_Acts 16:16_reference_end_ _reference_start_Romans 1:9_reference_end_ _reference_start_Romans 12:12_reference_end_ _reference_start_Romans 15:30_reference_end_ _reference_start_1 Corinthians 7:5_reference_end_ _reference_start_Ephesians 1:16_reference_end_ _reference_start_Ephesians 6:18_reference_end_ _reference_start_Philippians 4:6_reference_end_ _reference_start_Colossians 4:12_reference_end_ _reference_start_1 Thessalonians 1:2_reference_end_ _reference_start_1 Timothy 2:1_reference_end_ _reference_start_1 Timothy 5:5_reference_end_ _reference_start_Philemon 1:4_reference_end_ _reference_start_Philemon 1:22_reference_end_ _reference_start_1 Peter 3:7_reference_end_ _reference_start_1 Peter 4:7_reference_end_ _reference_start_Revelation 5:8_reference_end_ _reference_start_Revelation 8:3_reference_end_ _reference_start_Revelation 8:4_reference_end_ \gtrm epikaleomai \trnl epikaleomai _reference_start_Acts 7:59_reference_end_ \itrm “named” implied by context _reference_start_Philemon 1:6_reference_end_ \en2 2. Wish for or ask people \gtrm deomai \trnl deomai _reference_start_Acts 8:34_reference_end_ \gtrm erwtaw \trnl erõtaõ _reference_start_Luke 14:18_reference_end_ _reference_start_Luke 14:19_reference_end_ \gtrm eucomai \trnl euchomai _reference_start_Acts 27:29_reference_end_ MMS`--]PREACH, PROCLAIMpreach, proclaim\o1 1. With focus on sharing information \o2 a. Tell a joyful message, preach the gospel \o2 b. Proclaim, tell people about something \o1 2. With focus on announcing a message to a large audience \o2 a. To announce to many people, to proclaim loudly \o2 b. To announce loudly, to call something out loudly \o1 3. Other inference _oPRAYpray\o1 1. Pray to God \o1 2. Wish for or ask people \gtrm deomai \trnl deomai \xref [L&N 33.170] \def plead \gtrm erwtaw \trnl erõtaõ \xref [L&N 33.181] \def ask \xref [L&N 33.161] \def ask for \gtrm eucomai \trnl euchomai \xref [L&N 33.178] \def pray \xref [L&N 25.6] \def desire \gtrm parakalew \trnl parakaleõ \xref [L&N 33.168] \def ask for earnestly \xref [L&N 33.315] \def invite \xref [L&N 33.310] \def call together to \xref [L&N 25.250] \def encourage \gtrm proseucomai \trnl proseuchomai \xref [L&N 33.178] \def pray \g ?tfXJ<. xj\N@2$|n`RD6( 13 03 /2 .1 -. ,. +. *. ).  (.  '- &, %, $, #,$ ", !, ,  , ,  ,  , , ( , , , , *. *- *) *( */ * * * *  *  *  *  *  * * * * * )' )& )# ) ) ! )  ~) ( })  |)  {). z)# y(, x(* w() v(' u($ t( s( ?tfXJ<. xj\N@2$|n`RD6( pB oB nB m< l< k9 j9 i6 h6 g4 f3 e2 d1 c1 b. a- `- _- ^, ], \,  [,  Z,  Y, X, W,* V, U*. T)  S)  R( Q( P; O; N/ M/  L6 K< J; I: H7 G2 F2 E1 D/  C/ B-  A*! @*% ?* >A =; <; ;; :; 9:  86 75 65 54 44 33 23 ?tfXJ<. xj\N@2$|n`RD6( /1 .1 -0 ,0 +0 *0 )0 (0 '/  &/  %/ $. #. ".  !.  . - -  - , , ,# , , , , ,  , $ ,( ,# , , , ,* * * *  * * *+ * * * (  -  , * < = 1 ~- }+ |+ {* z> y> x(  w> v, u* t* s," r9 q,; s to preaching \gtrm anaggellw \trnl anangellõ \xref [L&N 33.197] \def inform \gtrm apaggellw \trnl apangellõ \xref [L&N 33.198] \def inform \xref [L&N 33.327] \def command \gtrm apodeiknumi \trnl apodeiknumi \xref [L&N 28.50] \def demonstrate \xref [L&N 28.65] \def show publicly \xref [L&N 72.5] \def show to be true \gtrm gnwrizw \trnl gnõrizõ \xref [L&N 28.26] \def make known \xref [L&N 28.1] \def know \gtrm diaggellw \trnl diangellõ \xref [L&N 33.203] \def give notice \xref [L&N 33.207] \def proclaim \gtrm euaggelizw \trnl euangelizõ \xref [L&N 33.215] \def tell the good news \gtrm kataggellw \trnl katangellõ \xref [L&N 33.204] \def proclaim throughout \gtrm kjrugma \trnl kærugma \xref [L&N 33.258] \def preaching \gtrm kjrux \trnl kærux \xref [L&N 33.259] \def preacher \gtrm kjrussw \trnl kærussõ \xref [L&N 33.256] \def preach \xref [L&N 33.206] \def announce \xref [L&N 33.207] \def tell \gtrm krazw \trnl krazõ \xref [L&N 33.83] \def shout \gtrm legw \trnl legõ \xref [L&N 33.69] \def speak \xref (others) \def name, call, mean, imply, etc. \gtrm logov \trnl logos \xref [L&N 33.99] \def speech \xref [L&N 33.260] \def gospel \xref (others) \def statement, treatise, Word, reason event, appearance, accusation, etc. \gtrm parakljsiv \trnl paraklæsis \xref [L&N 25.150] \def encouragement, exhortation \xref [L&N 33.168] \def earnest request \gtrm pljrow \trnl plæroõ \xref [L&N 33.199] \def proclaim completely \xref (others) \def fill, complete, finish, provide fully, give true meaning, cause to happen, etc. \gtrm proeuaggelizomai \trnl proeuangelizomai \xref [L&N 33.216] \def bring good news ahead of time \gtrm prokataggellw \trnl prokatangellõ \xref [L&N 33.283] \def foretell \gtrm ¿jma \trnl hræma \xref [L&N 33.9] \def word \xref [L&N 33.98] \def statement \xref [L&N 13.115] \def event \en2 1. With focus on sharing information \en3 a. Tell a joyful message, preach the gospel \gtrm anaggellw \trnl anangellõ _reference_start_1 John 1:5_reference_end_ \gtrm apaggellw \trnl apangellõ _refere nce_start_Matthew 12:18_reference_end_ _reference_start_1 John 1:2_reference_end_ _reference_start_1 John 1:3_reference_end_ \gtrm gnwrizw \trnl gnõrizõ _reference_start_Luke 2:15_reference_end_ _reference_start_John 15:15_reference_end_ _reference_start_John 17:26_reference_end_ _reference_start_Romans 16:26_reference_end_ _reference_start_Ephesians 6:19_reference_end_ _reference_start_2 Peter 1:16_reference_end_ \gtrm diaggellw \trnl diangellõ _reference_start_Luke 9:60_reference_end_ _reference_start_Acts 21:26_reference_end_ _reference_start_Romans 9:17_reference_end_ \gtrm euaggelizw \trnl euangelizõ _reference_start_Matthew 11:5_reference_end_ LUK 1:19; 2:10; 4:18 (2 occurrences), 43; 7:22; 8:1; 9:6; 16:16; 20:1 _reference_start_Luke 1:19_reference_end_ _reference_start_Luke 2:10_reference_end_ _reference_start_Luke 4:18_reference_end_ _reference_start_Luke 4:43_reference_end_ _reference_start_Luke 7:22_reference_end_ _reference_start_Luke 8:1_reference_end_ _reference_start_Luke 9:6_reference_e nd_ _reference_start_Luke 16:16_reference_end_ _reference_start_Luke 20:1_reference_end_ _reference_start_Acts 5:42_reference_end_ _reference_start_Acts 8:4_reference_end_ _reference_start_Acts 8:12_reference_end_ _reference_start_Acts 8:25_reference_end_ _reference_start_Acts 8:35_reference_end_ _reference_start_Acts 8:40_reference_end_ _reference_start_Acts 10:36_reference_end_ _reference_start_Acts 11:20_reference_end_ _reference_start_Acts 13:32_reference_end_ _reference_start_Acts 14:7_reference_end_ _reference_start_Acts 14:15_reference_end_ _reference_start_Acts 14:21_reference_end_ _reference_start_Acts 15:35_reference_end_ _reference_start_Acts 16:10_reference_end_ _reference_start_Acts 17:18_reference_end_ _reference_start_Romans 1:15_reference_end_ _reference_start_Romans 10:15_reference_end_ _reference_start_Romans 15:20_reference_end_ 1CO 1:17; 9:16 (2 occurrences), 18; 15:2, 1 _reference_start_1 Corinthians 1:17_reference_end_ _reference_start_1 Corinthians 9:16_reference_end_ _reference_sta rt_1 Corinthians 9:18_reference_end_ _reference_start_1 Corinthians 15:2_reference_end_ _reference_start_1 Corinthians 15:1_reference_end_ _reference_start_2 Corinthians 2:12_reference_end_ _reference_start_2 Corinthians 10:16_reference_end_ _reference_start_2 Corinthians 11:7_reference_end_ GAL 1:8 (2 occurrences), 9, 11, 16, 23; 4:13 _reference_start_Galatians 1:8_reference_end_ _reference_start_Galatians 1:9_reference_end_ _reference_start_Galatians 1:11_reference_end_ _reference_start_Galatians 1:16_reference_end_ _reference_start_Galatians 1:23_reference_end_ _reference_start_Galatians 4:13_reference_end_ _reference_start_Ephesians 2:17_reference_end_ _reference_start_Ephesians 3:8_reference_end_ _reference_start_1 Thessalonians 3:6_reference_end_ _reference_start_Hebrews 4:2_reference_end_ _reference_start_Hebrews 4:6_reference_end_ _reference_start_1 Peter 1:12_reference_end_ _reference_start_1 Peter 1:25_reference_end_ _reference_start_1 Peter 4:6_reference_end_ _reference_start_Revelation 10:7_re ference_end_ _reference_start_Revelation 14:6_reference_end_ \gtrm kataggellw \trnl katangellõ _reference_start_Acts 17:18_reference_end_ \gtrm kjrussw \trnl kærussõ _reference_start_Romans 10:15_reference_end_ \gtrm prokataggellw \trnl prokatangellõ _reference_start_Acts 3:24_reference_end_ \en3 b. Proclaim, tell people about something \gtrm euaggelizw \trnl euangelizõ _reference_start_Acts 17:18_reference_end_ \gtrm kataggellw \trnl katangellõ _reference_start_Acts 4:2_reference_end_ _reference_start_Acts 13:5_reference_end_ _reference_start_Acts 13:38_reference_end_ _reference_start_Acts 15:36_reference_end_ _reference_start_Acts 17:3_reference_end_ _reference_start_Acts 17:13_reference_end_ _reference_start_Acts 17:18_reference_end_ _reference_start_Acts 17:23_reference_end_ _reference_start_Acts 26:23_reference_end_ _reference_start_Romans 1:8_reference_end_ _reference_start_1 Corinthians 2:1_reference_end_ _reference_start_1 Corinthians 9:14_reference_end_ _reference_start_1 Corinthians 11:26_ reference_end_ _reference_start_Philippians 1:18_reference_end_ _reference_start_Colossians 1:28_reference_end_ \gtrm proeuaggelizomai \trnl proeuangelizomai _reference_start_Galatians 3:8_reference_end_ \en2 2. With focus on announcing a message to a large audience \en3 a. To announce to many people, to proclaim loudly \gtrm euaggelizw \trnl euangelizõ _reference_start_Romans 10:15_reference_end_ \gtrm kjrugma \trnl kærugma _reference_start_Matthew 12:41_reference_end_ _reference_start_Luke 11:32_reference_end_ _reference_start_Romans 16:25_reference_end_ _reference_start_1 Corinthians 1:21_reference_end_ _reference_start_1 Corinthians 2:4_reference_end_ _reference_start_1 Corinthians 15:14_reference_end_ _reference_start_2 Timothy 4:17_reference_end_ _reference_start_Titus 1:3_reference_end_ _reference_start_Hebrews 2:12_reference_end_ \gtrm kjrux \trnl kærux _reference_start_1 Timothy 2:7_reference_end_ _reference_start_2 Timothy 1:11_reference_end_ \gtrm kjrussw \trnl kærussõ _reference_start_Mat thew 3:1_reference_end_ _reference_start_Matthew 4:17_reference_end_ _reference_start_Matthew 4:23_reference_end_ _reference_start_Matthew 9:35_reference_end_ _reference_start_Matthew 10:7_reference_end_ _reference_start_Matthew 10:27_reference_end_ _reference_start_Matthew 11:1_reference_end_ _reference_start_Matthew 24:14_reference_end_ _reference_start_Matthew 26:13_reference_end_ _reference_start_Mark 1:4_reference_end_ _reference_start_Mark 1:7_reference_end_ _reference_start_Mark 1:14_reference_end_ _reference_start_Mark 1:38_reference_end_ _reference_start_Mark 1:39_reference_end_ _reference_start_Mark 1:45_reference_end_ _reference_start_Mark 2:2_reference_end_ _reference_start_Mark 3:14_reference_end_ _reference_start_Mark 5:20_reference_end_ _reference_start_Mark 6:12_reference_end_ _reference_start_Mark 7:36_reference_end_ _reference_start_Mark 13:10_reference_end_ _reference_start_Mark 14:9_reference_end_ _reference_start_Mark 16:15_reference_end_ _reference_start_Mark 16:20_reference_end_ _re ference_start_Luke 3:3_reference_end_ _reference_start_Luke 4:19_reference_end_ _reference_start_Luke 4:44_reference_end_ _reference_start_Luke 8:39_reference_end_ _reference_start_Luke 9:2_reference_end_ _reference_start_Luke 12:3_reference_end_ _reference_start_Luke 24:47_reference_end_ _reference_start_Acts 6:2_reference_end_ _reference_start_Acts 8:5_reference_end_ _reference_start_Acts 9:20_reference_end_ _reference_start_Acts 9:27_reference_end_ _reference_start_Acts 9:29_reference_end_ _reference_start_Acts 10:37_reference_end_ _reference_start_Acts 10:42_reference_end_ _reference_start_Acts 13:24_reference_end_ _reference_start_Acts 15:21_reference_end_ _reference_start_Acts 18:5_reference_end_ _reference_start_Acts 19:13_reference_end_ _reference_start_Acts 20:25_reference_end_ _reference_start_Acts 28:31_reference_end_ _reference_start_Romans 2:21_reference_end_ _reference_start_Romans 10:8_reference_end_ _reference_start_Romans 10:14_reference_end_ _reference_start_Romans 10:15_reference_end_ _ reference_start_1 Corinthians 1:23_reference_end_ _reference_start_1 Corinthians 9:27_reference_end_ _reference_start_1 Corinthians 15:11_reference_end_ _reference_start_1 Corinthians 15:12_reference_end_ _reference_start_2 Corinthians 1:19_reference_end_ _reference_start_2 Corinthians 4:5_reference_end_ _reference_start_2 Corinthians 8:18_reference_end_ _reference_start_2 Corinthians 11:4_reference_end_ _reference_start_Galatians 2:2_reference_end_ _reference_start_Galatians 5:11_reference_end_ _reference_start_Philippians 1:15_reference_end_ _reference_start_Colossians 1:23_reference_end_ _reference_start_1 Thessalonians 2:9_reference_end_ _reference_start_1 Timothy 3:16_reference_end_ _reference_start_2 Timothy 4:2_reference_end_ _reference_start_1 Peter 3:19_reference_end_ _reference_start_Revelation 5:2_reference_end_ \itrm “named” implied by context _reference_start_Acts 10:37_reference_end_ \en3 b. To announce loudly, to call something out loudly \gtrm krazw \trnl krazõ _reference_start_John 7:28_reference_end_ _reference_start_John 7:37_reference_end_ _reference_start_John 12:44_reference_end_ _reference_start_Acts 7:52_reference_end_ _reference_start_Acts 16:17_reference_end_ _reference_start_Acts 24:21_reference_end_ \en2 3. Other inferences to preaching \gtrm apodeiknumi \trnl apodeiknumi 2TH 2:4 (showing, proving) _reference_start_2 Thessalonians 2:4_reference_end_ \gtrm legw \trnl legõ MAT 23:3 (speak) _reference_start_Matthew 23:3_reference_end_ \gtrm logov \trnl logos 1TI 5:17 (in word (preaching implied)) _reference_start_1 Timothy 5:17_reference_end_ \gtrm parakljsiv \trnl paraklæsis 1TI 4:13 (exhort) _reference_start_1 Timothy 4:13_reference_end_ \gtrm pljrow \trnl plæroõ ROM 15:19 (fulfilled (preaching implied)) _reference_start_Romans 15:19_reference_end_ \gtrm ¿jma \trnl hræma ROM 10:17 (word, statement) _reference_start_Romans 10:17_reference_end_ \itrm “named” implied by context _reference_start_Philippians 1:17_reference_end_ _reference_start_2 Timothy 2:8_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( n) m) l) k)$ j) i) h) g) f)- e)' d)& c) b) a) `( _( ^(  ](  \(  [( # Z( Y( X( W7 V6 U: T8 S7 R. Q. P. O- N* M( ) L-  K0 J3 I2 H.  G.  F. E- D, C, B, A, @, ?,$ >, & =,  <, ;, :, 9-  8, 7B 6B  5< 4< 3< 2: 1: 04 ?tfXJ<. xj\N@2$|n`RD6( -* ,) +), *(  )(  (( '7 &2 %-  $- #6 "6 !( 5 , , ,4 + , +% + , % B < 7 6 4 3 2 0 0 /  / / / . . .  . -  -  -  - , , , , , ~,  }, * |, % {,  z,  y,  x, w, v*/ u*  t*  s*' r*, q* p* o) \o1 5. Non-Jewish priest \gtrm ³ereuv \trnl hiereus \xref [L&N 53.87] \def priest \gtrm ³erwsune \trnl hierõsune \xref [L&N 53.86] \def priesthood, priestly office \gtrm ³erateia \trnl hierateia \xref [L&N 53.86] \def priesthood, priestly office \gtrm ³erateuma \trnl hierateuma \xref [L&N 53.86] \def priesthood, priestly office \gtrm ³erateuw \trnl hierateuõ \xref [L&N 53.85] \def be as priest \gtrm ³erourgew \trnl hierourgeõ \xref [L&N 53.85] \def be as priest \en2 1. Jewish priest \gtrm ³ereuv \trnl hiereus _reference_start_Matthew 8:4_reference_end_ _reference_start_Matthew 12:4_reference_end_ _reference_start_Matthew 12:5_reference_end_ _reference_start_Mark 1:44_reference_end_ _reference_start_Mark 2:26_reference_end_ _reference_start_Luke 1:5_reference_end_ _reference_start_Luke 5:14_reference_end_ _reference_start_Luke 6:4_reference_end_ _reference_start_Luke 10:31_reference_end_ _reference_start_Luke 17:14_reference_end_ _reference_start_John 1:19_reference_end_ _reference_start_Acts 4: 1_reference_end_ _reference_start_Acts 6:7_reference_end_ HEB 7:14, 21 (Implied contextually), 23; 8:4 (2 occurrences); 9:6; 10:11 _reference_start_Hebrews 7:14_reference_end_ _reference_start_Hebrews 7:21_reference_end_ _reference_start_Hebrews 7:23_reference_end_ _reference_start_Hebrews 8:4_reference_end_ _reference_start_Hebrews 9:6_reference_end_ _reference_start_Hebrews 10:11_reference_end_ \en2 2. The office of being a priest \gtrm ³erwsune \trnl hierõsune HEB 7:11 (Levitical (#1)), 12 (Levitical (#1)), 24 (Melchizedekian (#3)) _reference_start_Hebrews 7:11_reference_end_ _reference_start_Hebrews 7:12_reference_end_ \gtrm ³erateia \trnl hierateia LUK 1:9 (Levitical (#1)) _reference_start_Luke 1:9_reference_end_ HEB 7:5 (Levitical (#1)) _reference_start_Hebrews 7:5_reference_end_ \gtrm ³erateuma \trnl hierateuma 1PE 2:5 (believer (#4)), 9 (believer (#4)) _reference_start_1 Peter 2:5_reference_end_ _reference_start_1 Peter 2:9_reference_end_ \gtrm ³erateuw \trnl hierateuõ LUK 1:8 (Levitical (#1)) _reference_start_Luke 1:8_reference_end_ \gtrm ³erourgew \trnl hierourgeõ ROM 15:16 (believer (#4)) _reference_start_Romans 15:16_reference_end_ \en2 3. Melchizedekian priest (i.e. a Christ-like priest) \gtrm ³ereuv \trnl hiereus HEB 5:6; 7:1, 3, 11, 15, 16 (Implied contextually), 17, 21; 10:21 (Implied contextually) _reference_start_Hebrews 5:6_reference_end_ _reference_start_Hebrews 7:1_reference_end_ _reference_start_Hebrews 7:3_reference_end_ _reference_start_Hebrews 7:11_reference_end_ _reference_start_Hebrews 7:15_reference_end_ _reference_start_Hebrews 7:16_reference_end_ _reference_start_Hebrews 7:17_reference_end_ _reference_start_Hebrews 7:21_reference_end_ _reference_start_Hebrews 10:21_reference_end_ \en2 4. Believer priests \gtrm ³ereuv \trnl hiereus _reference_start_Revelation 1:6_reference_end_ _reference_start_Revelation 5:10_reference_end_ _reference_start_Revelation 20:6_reference_end_ \en2 5. Non-Jewish priest \gtrm ³ereuv \trnl hiereus _reference_start_Acts 14:13_reference_end_ Y*c3PROMISEpromise\see (see COVENANT)Hb33?PROCLAIM THE GOSPELproclaim the gospel\see (see GOSPEL, PREACH)aPRIESTpriest\o1 1. Jewish priest \o1 2. The office of being a priest \o1 3. Melchizedekian priest (i.e. a Christ-like priest) \o1 4. Believer priests ?tfXJ<. xj\N@2$|n`RD6( l( k(% j(" i( h( g( f(. e( d( c( b( a( `( 9 _( # ^(  ]( ' \(  [( Z( Y( ) X( W( V( U( T( S( R( Q( P( O, NB MB LB K:  J: I: H: G: F: E: D: C: B- A* @< ?< >: =* <: ;: :: 9:  8: 7: 6: 5: 4, 3, 2+ 1* 0*  /* .* æs MAT 1:22; 2:5, 15, 17, 23; 3:3; 4:14; 5:12; 8:17; 10:41 (3 occurrences); 11:9 (2 occurrences), 13; 12:17, 39; 13:17, 35, 57; 14:5; 16:14; 21:4, 11, 26, 46; 23:29, 30, 31, 34, 37; 24:15; 26:56; 27:9 _reference_start_Matthew 1:22_reference_end_ _reference_start_Matthew 2:5_reference_end_ _reference_start_Matthew 2:15_reference_end_ _reference_start_Matthew 2:17_reference_end_ _reference_start_Matthew 2:23_reference_end_ _reference_start_Matthew 3:3_reference_end_ _reference_start_Matthew 4:14_reference_end_ _reference_start_Matthew 5:12_reference_end_ _reference_start_Matthew 8:17_reference_end_ _reference_start_Matthew 10:41_reference_end_ _reference_start_Matthew 11:9_reference_end_ _reference_start_Matthew 11:13_reference_end_ _reference_start_Matthew 12:17_reference_end_ _reference_start_Matthew 12:39_reference_end_ _reference_start_Matthew 13:17_reference_end_ _reference_start_Matthew 13:35_reference_end_ _reference_start_Matthew 13:57_reference_end_ _reference_start_Matthew 14:5_reference_end_ _re ference_start_Matthew 16:14_reference_end_ _reference_start_Matthew 21:4_reference_end_ _reference_start_Matthew 21:11_reference_end_ _reference_start_Matthew 21:26_reference_end_ _reference_start_Matthew 21:46_reference_end_ _reference_start_Matthew 23:29_reference_end_ _reference_start_Matthew 23:30_reference_end_ _reference_start_Matthew 23:31_reference_end_ _reference_start_Matthew 23:34_reference_end_ _reference_start_Matthew 23:37_reference_end_ _reference_start_Matthew 24:15_reference_end_ _reference_start_Matthew 26:56_reference_end_ _reference_start_Matthew 27:9_reference_end_ MRK 6:4, 15 (2 occurrences); 8:28; 11:32 _reference_start_Mark 6:4_reference_end_ _reference_start_Mark 6:15_reference_end_ _reference_start_Mark 8:28_reference_end_ _reference_start_Mark 11:32_reference_end_ LUK 1:70, 76; 3:4; 4:17, 24, 27; 6:23; 7:16, 26 (2 occurrences), 39; 9:8, 19; 10:24; 11:47, 49, 50; 13:28, 33, 34; 18:31; 20:6; 24:19, 25 _reference_start_Luke 1:70_reference_end_ _reference_start_Luke 1:76_reference_e nd_ _reference_start_Luke 3:4_reference_end_ _reference_start_Luke 4:17_reference_end_ _reference_start_Luke 4:24_reference_end_ _reference_start_Luke 4:27_reference_end_ _reference_start_Luke 6:23_reference_end_ _reference_start_Luke 7:16_reference_end_ _reference_start_Luke 7:26_reference_end_ _reference_start_Luke 7:39_reference_end_ _reference_start_Luke 9:8_reference_end_ _reference_start_Luke 9:19_reference_end_ _reference_start_Luke 10:24_reference_end_ _reference_start_Luke 11:47_reference_end_ _reference_start_Luke 11:49_reference_end_ _reference_start_Luke 11:50_reference_end_ _reference_start_Luke 13:28_reference_end_ _reference_start_Luke 13:33_reference_end_ _reference_start_Luke 13:34_reference_end_ _reference_start_Luke 18:31_reference_end_ _reference_start_Luke 20:6_reference_end_ _reference_start_Luke 24:19_reference_end_ _reference_start_Luke 24:25_reference_end_ _reference_start_John 1:23_reference_end_ _reference_start_John 1:45_reference_end_ _reference_start_John 4:19_reference_end_ _reference_start_John 4:44_reference_end_ _reference_start_John 7:52_reference_end_ _reference_start_John 8:52_reference_end_ _reference_start_John 8:53_reference_end_ _reference_start_John 9:17_reference_end_ _reference_start_John 12:38_reference_end_ ACT 2:16, 30; 3:18, 21, 24, 25; 7:42, 48, 52; 8:34; 10:43 (alternate sense 1.d.); 13:20, 27; 15:15; 26:22; 28:25 _reference_start_Acts 2:16_reference_end_ _reference_start_Acts 2:30_reference_end_ _reference_start_Acts 3:18_reference_end_ _reference_start_Acts 3:21_reference_end_ _reference_start_Acts 3:24_reference_end_ _reference_start_Acts 3:25_reference_end_ _reference_start_Acts 7:42_reference_end_ _reference_start_Acts 7:48_reference_end_ _reference_start_Acts 7:52_reference_end_ _reference_start_Acts 8:34_reference_end_ _reference_start_Acts 10:43_reference_end_ _reference_start_Acts 13:20_reference_end_ _reference_start_Acts 13:27_reference_end_ _reference_start_Acts 15:15_reference_end_ _reference_start_Acts 26:22_reference_end_ _reference_start_Ac ts 28:25_reference_end_ _reference_start_Romans 1:2_reference_end_ _reference_start_Romans 11:3_reference_end_ _reference_start_1 Thessalonians 2:15_reference_end_ _reference_start_Hebrews 1:1_reference_end_ _reference_start_Hebrews 11:32_reference_end_ _reference_start_James 5:10_reference_end_ _reference_start_1 Peter 1:10_reference_end_ _reference_start_2 Peter 3:2_reference_end_ REV 10:7; 11:18 (alternate sense 1.d.); 16:6 (alternate sense 1.d.); 18:20 (alternate sense 1.d.), 24 (alternate sense 1.d.); 22:6 (alternate sense 1.d.), 9 (alternate sense 1.d.) _reference_start_Revelation 10:7_reference_end_ _reference_start_Revelation 11:18_reference_end_ _reference_start_Revelation 16:6_reference_end_ _reference_start_Revelation 18:20_reference_end_ _reference_start_Revelation 18:24_reference_end_ _reference_start_Revelation 22:6_reference_end_ _reference_start_Revelation 22:9_reference_end_ \gtrm profjtiv \trnl prophætis _reference_start_Luke 2:36_reference_end_ _reference_start_Revelation 2:20_referenc e_end_ \en3 b. Books in which the words or teachings of the prophets are found \gtrm profjtjv \trnl prophætæs _reference_start_Matthew 5:17_reference_end_ _reference_start_Matthew 7:12_reference_end_ _reference_start_Matthew 22:40_reference_end_ _reference_start_Mark 1:2_reference_end_ _reference_start_Luke 16:16_reference_end_ _reference_start_Luke 16:29_reference_end_ _reference_start_Luke 16:31_reference_end_ _reference_start_Luke 24:27_reference_end_ _reference_start_Luke 24:44_reference_end_ _reference_start_John 6:45_reference_end_ _reference_start_Acts 8:28_reference_end_ _reference_start_Acts 8:30_reference_end_ _reference_start_Acts 13:15_reference_end_ _reference_start_Acts 13:40_reference_end_ _reference_start_Acts 24:14_reference_end_ _reference_start_Acts 26:27_reference_end_ _reference_start_Acts 28:23_reference_end_ _reference_start_Romans 3:21_reference_end_ \en3 c. The Prophet (expected due to Old Testament prophesies, esp. DEU 18:15-16) \gtrm profjtjv \trnl prophætæs _reference_start _John 1:21_reference_end_ _reference_start_John 1:25_reference_end_ _reference_start_John 6:14_reference_end_ _reference_start_John 7:40_reference_end_ _reference_start_Acts 3:22_reference_end_ _reference_start_Acts 3:23_reference_end_ _reference_start_Acts 7:37_reference_end_ \en3 d. A New Testament believer with the spiritual gift of prophesy \gtrm profjtjv \trnl prophætæs _reference_start_Acts 11:27_reference_end_ _reference_start_Acts 13:1_reference_end_ _reference_start_Acts 15:32_reference_end_ _reference_start_Acts 21:10_reference_end_ 1CO 12:28, 29; 14:29, 32 (2 occurrences), 37 _reference_start_1 Corinthians 12:28_reference_end_ _reference_start_1 Corinthians 12:29_reference_end_ _reference_start_1 Corinthians 14:29_reference_end_ _reference_start_1 Corinthians 14:32_reference_end_ _reference_start_1 Corinthians 14:37_reference_end_ EPH 2:20 (alternate sense 1.a.); 3:5; 4:11 _reference_start_Ephesians 2:20_reference_end_ _reference_start_Ephesians 3:5_reference_end_ _reference_start_Ephesians 4:11_reference_end_ \en2 2. Originating from a prophet \gtrm profjtikov \trnl prophætikos _reference_start_Romans 16:26_reference_end_ _reference_start_2 Peter 1:19_reference_end_ \en2 3. The two witnesses (eschatological prophets) \gtrm profjtjv \trnl prophætæs _reference_start_Revelation 11:10_reference_end_ \en2 4. False prophet \gtrm yeudoprofjtjv \trnl pseudoprophætæs _reference_start_Matthew 7:15_reference_end_ _reference_start_Matthew 24:11_reference_end_ _reference_start_Matthew 24:24_reference_end_ _reference_start_Mark 13:22_reference_end_ _reference_start_Luke 6:26_reference_end_ _reference_start_Acts 13:6_reference_end_ _reference_start_2 Peter 2:1_reference_end_ _reference_start_1 John 4:1_reference_end_ _reference_start_Revelation 16:13_reference_end_ _reference_start_Revelation 19:20_reference_end_ _reference_start_Revelation 20:10_reference_end_ \en2 5. Pagan prophet \gtrm profjtjv \trnl prophætæs _reference_start_Titus 1:12_reference_end_ _reference_start_2 Peter 2:16_reference_end_ Xd PROPHETprophet\o1 1. Prophet of God, one who acts as a spokesman for God \o2 a. Prophets in the Old Testament \o2 b. Books in which the words or teachings of the prophets are found \o2 c. The Prophet (expected due to Old Testament prophesies, esp. DEU 18:15-16) \o2 d. A New Testament believer with the spiritual gift of prophesy \o1 2. Originating from a prophet \o1 3. The two witnesses (eschatological prophets) \o1 4. False prophet \o1 5. Pagan prophet \gtrm profjtjv \trnl prophætæs \xref [L&N 53.79] \def prophet \gtrm profjtikov \trnl prophætikos \xref [L&N 33.462] \def prophetic \gtrm profjtiv \trnl prophætis \xref [L&N 53.80] \def prophetess \gtrm yeudoprofjtjv \trnl pseudoprophætæs \xref [L&N 53.81] \def false prophet \en2 1. Prophet of God, one who acts as a spokesman for God \en3 a. Prophets in the Old Testament \gtrm profjtjv \trnl prophæt ?tfXJ<. xj\N@2$|n`RD6( +B  *= )< (; ': &: %4 $-  #- ", !, , ,  ,  , + ," ,4 ,0 ,* , , , , , , + & +  +5 +4 +4 +, + +- + * * * * * " * ! *  * 2 * 1 * / *  ~*  }*  |*' {* z* y* x* w* v* u* t*L s*F r) q) p) o) n( m(8 ?tfXJ<. xj\N@2$|n`RD6( j: i* h= g8 fB eB dB c> b= a,  `* _)  ^( ]( \( [B Z= Y- X1 W1 V1 U.% T. S. R.  Q.  P, O, N,  M,  L,% K, J, I+( H+ G+ F+ E- D, C, B, A, ( @,  ?, >, =+- <*, ;* :* 9* 8* 7) 6(( 5( 4( 3B 2*$ 1B 0B /B .B -B ,B ns are forgiven \o1 3. The location or place where sins are forgiven \gtrm ³laskomai \trnl hilaskomai \xref [L&N 40.9] \def forgive \xref [L&N 88.75] \def show mercy \gtrm ³lasmov \trnl hilasmos \xref [L&N 40.12] \def means of forgiveness \gtrm ³lastjrion \trnl hilastærion \xref [L&N 40.12] \def means of forgiveness \xref [L&N 40.13] \def place of forgiveness \note Overall meaning: To cause God's attitude toward sinners to change from anger to mercy \en2 1. To forgive, with the focus on the means of forgiveness \gtrm ³laskomai \trnl hilaskomai _reference_start_Luke 18:13_reference_end_ _reference_start_Hebrews 2:17_reference_end_ \en2 2. The means by which sins are forgiven \gtrm ³lasmov \trnl hilasmos _reference_start_1 John 2:2_reference_end_ _reference_start_1 John 4:10_reference_end_ \gtrm ³lastjrion \trnl hilastærion _reference_start_Romans 3:25_reference_end_ \en2 3. The location or place where sins are forgiven \gtrm ³lastjrion \trnl hilastærion _reference_start_Hebrews 9:5_reference_end_ d0.&i+RELY ONrely on\see (see HOPE)1hCREDEEMredeem\see (see also RECONCILE, SAVE) \o1 1. A Ransom \o1 2. To redeem, to ransom, rede ng1RECONCILEreconcile\see (see also PEACE) \o1 1. People reconciling themselves to one another \o1 2. Someone who causes reconciliation to occur between others \o1 3. Someone who causes reconciliation to occur between God and man \o1 4. To cau 1f%%-PURIFICATIONpurification\see (see CLEAN)e%%iPROPITIATIONpropitiation\see (see also FORGIVE) \o1 1. To forgive, with the focus on the means of forgiveness \o1 2. The means by which si ?tfXJ<. xj\N@2$|n`RD6( ),& () ') &( %( $B #B ",# !: # 0 0 B = . . :  3 1 . - : < 8 1 1 - * *& *D * 6 ) - ( 7 , 3 3 1 / / / - / ~/ }-  |- {3 z: y:  x:  w: v6 u0 t0 s( r* : q( p, o. n:  m- l> k> se a state of reconciliation between God and man \o1 5. Referring to God and human beings being reconciled \o1 6. Figurative use \o1 7. Negative use \gtrm katallagj \trnl katallagæ \xref [L&N 40.1] \def reconciliation \gtrm katallassw \trnl katallassõ \xref [L&N 40.1] \def reconcile \gtrm apokatallassw \trnl apokatallassõ \xref [L&N 40.1] \def reconcile \gtrm sunallassw \trnl sunallassõ \xref [L&N 40.1] \def reconcile \gtrm diallassomai \trnl diallassomai \xref [L&N 40.2] \def make peace \gtrm apallassw \trnl apallassõ \xref [L&N 40.3] \def settle with \gtrm eirjnopoiew \trnl eirænopoieõ \xref [L&N 40.4] \def make peace \gtrm eirjnopoiov \trnl eirænopoios \xref [L&N 40.5] \def peacemaker \gtrm mesitjv \trnl mesitæs \xref [L&N 40.6] \def reconciler \xref [L&N 31.22] \def mediator \gtrm aspondov \trnl aspondos \xref [L&N 40.7] \def irreconcilable \en2 1. People reconciling themselves to one another \gtrm katallassw \trnl katallassõ _reference_start_1 Corinthians 7:11_reference_end_ \gtrm sunallass w \trnl sunallassõ ACT 7:26 (hapax legomenon) _reference_start_Acts 7:26_reference_end_ \gtrm diallassomai \trnl diallassomai MAT 5:24 (hapax legomenon) _reference_start_Matthew 5:24_reference_end_ \gtrm apallassw \trnl apallassõ _reference_start_Luke 12:58_reference_end_ \en2 2. Someone who causes reconciliation to occur between others \gtrm eirjnopoiov \trnl eirænopoios MAT 5:9 (hapax legomenon compound) _reference_start_Matthew 5:9_reference_end_ \en2 3. Someone who causes reconciliation to occur between God and man \gtrm mesitjv \trnl mesitæs _reference_start_Galatians 3:19_reference_end_ _reference_start_Galatians 3:20_reference_end_ _reference_start_1 Timothy 2:5_reference_end_ _reference_start_Hebrews 8:6_reference_end_ _reference_start_Hebrews 9:15_reference_end_ _reference_start_Hebrews 12:24_reference_end_ \en2 4. To cause a state of reconciliation between God and man \gtrm apallassw \trnl apallassõ _reference_start_Hebrews 2:15_reference_end_ \gtrm eirjnopoiew \trnl eirænopoieõ COL 1:20 (hapax legomenon compound) _reference_start_Colossians 1:20_reference_end_ \en2 5. Referring to God and human beings being reconciled \gtrm katallagj \trnl katallagæ _reference_start_Romans 5:11_reference_end_ _reference_start_Romans 11:15_reference_end_ _reference_start_2 Corinthians 5:18_reference_end_ _reference_start_2 Corinthians 5:19_reference_end_ \gtrm katallassw \trnl katallassõ ROM 5:10 (2 occurrences) _reference_start_Romans 5:10_reference_end_ _reference_start_2 Corinthians 5:18_reference_end_ _reference_start_2 Corinthians 5:19_reference_end_ _reference_start_2 Corinthians 5:20_reference_end_ \gtrm apokatallassw \trnl apokatallassõ _reference_start_Ephesians 2:16_reference_end_ _reference_start_Colossians 1:20_reference_end_ _reference_start_Colossians 1:22_reference_end_ \en2 6. Figurative use \gtrm apallassw \trnl apallassõ _reference_start_Acts 19:12_reference_end_ \en2 7. Negative use \gtrm aspondov \trnl aspondos 2TI 3:3 (hapax legomenon) _reference_start_2 Timothy 3:3_reference_end_ mption \o2 a. To liberate Israel from sin and rule by the Romans \o2 b. The liberation of the present evil world when Christ returns \o2 c. Reference to the death of Christ \o2 d. The release of a prisoner on certain conditions \o1 3. A liberator, deliverer, redeemer \o1 4. Other \gtrm lutron \trnl lutron \xref [L&N 37.130] \def means of release, ransom \gtrm antilutron \trnl antilutron \xref [L&N 37.130] \def means of release, ransom \gtrm lutrwtjv \trnl lutrõtæs \xref [L&N 37.129] \def deliverer, liberator \gtrm lutrow \trnl lutroõ \xref [L&N 37.128] \def to deliver or liberate \gtrm lutrwsiv \trnl lutrõsis \xref [L&N 37.128] \def deliverance or liberation \gtrm apolutrwsiv \trnl apolutrõsis \xref [L&N 37.128] \def deliverance or liberation \gtrm agorazw \trnl agorazõ \xref [L&N 37.131] \def to set free at great expense \gtrm exagorazw \trnl exagorazõ \xref [L&N 37.131] \def to set free at great expense \en2 1. A Ransom \gtrm lutron \trnl lutron _reference_start_Matthew 20:28_referenc e_end_ _reference_start_Mark 10:45_reference_end_ \gtrm antilutron \trnl antilutron 1TI 2:6 (hapax legomenon) _reference_start_1 Timothy 2:6_reference_end_ \en2 2. To redeem, to ransom, redemption \en3 a. To liberate Israel from sin and rule by the Romans \gtrm lutrow \trnl lutroõ _reference_start_Luke 24:21_reference_end_ \gtrm lutrwsiv \trnl lutrõsis _reference_start_Luke 1:68_reference_end_ _reference_start_Luke 2:38_reference_end_ \en3 b. The liberation of the present evil world when Christ returns \gtrm apolutrwsiv \trnl apolutrõsis _reference_start_Luke 21:28_reference_end_ _reference_start_Romans 8:23_reference_end_ _reference_start_Ephesians 1:14_reference_end_ _reference_start_Ephesians 4:30_reference_end_ \en3 c. Reference to the death of Christ \gtrm lutrow \trnl lutroõ _reference_start_Titus 2:14_reference_end_ _reference_start_1 Peter 1:18_reference_end_ \gtrm lutrwsiv \trnl lutrõsis _reference_start_Hebrews 9:12_reference_end_ \gtrm apolutrwsiv \trnl apolutrõsis _reference_start_Romans 3:24_reference_end_ _reference_start_1 Corinthians 1:30_reference_end_ _reference_start_Ephesians 1:7_reference_end_ _reference_start_Colossians 1:14_reference_end_ _reference_start_Hebrews 9:15_reference_end_ \gtrm agorazw \trnl agorazõ _reference_start_1 Corinthians 6:20_reference_end_ _reference_start_1 Corinthians 7:23_reference_end_ _reference_start_2 Peter 2:1_reference_end_ _reference_start_Revelation 5:9_reference_end_ \gtrm exagorazw \trnl exagorazõ _reference_start_Galatians 3:13_reference_end_ _reference_start_Galatians 4:5_reference_end_ \en3 d. The release of a prisoner on certain conditions \gtrm apolutrwsiv \trnl apolutrõsis _reference_start_Hebrews 11:35_reference_end_ \en2 3. A liberator, deliverer, redeemer \gtrm lutrwtjv \trnl lutrõtæs ACT 7:35 (hapax legomenon) _reference_start_Acts 7:35_reference_end_ \en2 4. Other \gtrm agorazw \trnl agorazõ _reference_start_Revelation 14:3_reference_end_ _reference_start_Revelation 14:4_reference_end_ os \xref [L&N 25.271] \def not regretful \en2 1. To regret ones sin and unbelief, turn from it, and follow God \en3 a. Repent \en4 1) Repent as a command \gtrm metanoew \trnl metanoeõ _reference_start_Matthew 3:2_reference_end_ _reference_start_Matthew 4:17_reference_end_ _reference_start_Mark 1:15_reference_end_ _reference_start_Mark 6:12_reference_end_ _reference_start_Acts 2:38_reference_end_ _reference_start_Acts 3:19_reference_end_ _reference_start_Acts 8:22_reference_end_ _reference_start_Acts 17:30_reference_end_ _reference_start_Acts 26:20_reference_end_ _reference_start_Revelation 2:5_reference_end_ _reference_start_Revelation 2:16_reference_end_ _reference_start_Revelation 3:3_reference_end_ _reference_start_Revelation 3:19_reference_end_ \en4 2) Not willing to repent \gtrm metanoew \trnl metanoeõ _reference_start_Matthew 11:20_reference_end_ _reference_start_2 Corinthians 12:21_reference_end_ _reference_start_Revelation 2:21_reference_end_ _reference_start_Revelation 9:20_reference_end_ _refe rence_start_Revelation 9:21_reference_end_ _reference_start_Revelation 16:9_reference_end_ _reference_start_Revelation 16:11_reference_end_ \en4 3) Repent with an ultimatum \gtrm metanoew \trnl metanoeõ _reference_start_Luke 13:3_reference_end_ _reference_start_Luke 13:5_reference_end_ _reference_start_Revelation 2:5_reference_end_ _reference_start_Revelation 2:22_reference_end_ \en4 4) Repent with the subjunctive \gtrm metanoew \trnl metanoeõ _reference_start_Matthew 11:21_reference_end_ _reference_start_Luke 10:13_reference_end_ _reference_start_Luke 17:3_reference_end_ \en4 5) Repent as a normal verb \gtrm metanoew \trnl metanoeõ _reference_start_Matthew 12:41_reference_end_ _reference_start_Luke 11:32_reference_end_ _reference_start_Luke 15:7_reference_end_ _reference_start_Luke 15:10_reference_end_ _reference_start_Luke 16:30_reference_end_ _reference_start_Luke 17:4_reference_end_ \gtrm metamelomai \trnl metamelomai _reference_start_Matthew 21:29_reference_end_ \en3 b. Repentance \en4 1) Repentan ce associated with baptism \gtrm metanoia \trnl metanoia _reference_start_Matthew 3:11_reference_end_ _reference_start_Mark 1:4_reference_end_ _reference_start_Luke 3:3_reference_end_ _reference_start_Acts 13:24_reference_end_ _reference_start_Acts 19:4_reference_end_ \en4 2) Repentance associated with deeds \gtrm metanoia \trnl metanoia _reference_start_Matthew 3:8_reference_end_ _reference_start_Luke 3:8_reference_end_ _reference_start_Acts 26:20_reference_end_ \en4 3) Repentance granted or given \gtrm metanoia \trnl metanoia _reference_start_Acts 5:31_reference_end_ _reference_start_Acts 11:18_reference_end_ _reference_start_2 Timothy 2:25_reference_end_ HEB 6:4, 6 (verse 6 in Greek) _reference_start_Hebrews 6:4_reference_end_ _reference_start_Hebrews 6:6_reference_end_ \en4 4) Repentance production \gtrm metanoew \trnl metanoeõ _reference_start_Revelation 2:21_reference_end_ \gtrm metanoia \trnl metanoia _reference_start_Romans 2:4_reference_end_ _reference_start_2 Corinthians 7:10_reference_end_ _reference_start_2 Peter 3:9_reference_end_ _reference_start_2 Corinthians 7:9_reference_end_ \en4 5) Repentance in General \gtrm metanoia \trnl metanoia _reference_start_Luke 5:32_reference_end_ _reference_start_Luke 15:7_reference_end_ _reference_start_Luke 24:47_reference_end_ _reference_start_Acts 20:21_reference_end_ _reference_start_Hebrews 6:1_reference_end_ \en2 2. More secular aspects of repent \en3 a. Regret \gtrm metamelomai \trnl metamelomai _reference_start_Matthew 27:3_reference_end_ 2CO 7:8 (2 occurrences) _reference_start_2 Corinthians 7:8_reference_end_ \gtrm ametameljtov \trnl ametamelætos _reference_start_2 Corinthians 7:10_reference_end_ \en3 b. Revoke, reverse a decision \gtrm metanoia \trnl metanoia _reference_start_Hebrews 12:17_reference_end_ \gtrm metamelomai \trnl metamelomai MAT 21:32 (alternate sense 1.a.3.) _reference_start_Matthew 21:32_reference_end_ _reference_start_Hebrews 7:21_reference_end_ \gtrm ametameljtov \trnl ametamelætos _reference_start_Romans 11:29_reference_end_ AA'j11REPENT, REPENTANCErepent, repentance\o1 1. To regret ones sin and unbelief, turn from it, and follow God \o2 a. Repent \o3 1) Repent as a command \o3 2) Not willing to repent \o3 3) Repent with an ultimatum \o3 4) Repent with the subjunctive \o3 5) Repent as a normal verb \o2 b. Repentance \o3 1) Repentance associated with baptism \o3 2) Repentance associated with deeds \o3 3) Repentance granted or given \o3 4) Repentance production \o3 5) Repentance in General \o1 2. More secular aspects of repent \o2 a. Regret \o2 b. Revoke, reverse a decision \gtrm metanoew \trnl metanoeõ \xref [L&N 41.52] \def repent, change one's own attitude and behavior \gtrm metanoia \trnl metanoia \xref [L&N 41.52] \def repentance \gtrm metamelomai \trnl metamelomai \xref [L&N 25.270] \def feel sad about \xref [L&N 31.59] \def change one's mind \gtrm ametameljtov \trnl ametamelæt ?tfXJ<. xj\N@2$|n`RD6( h( g( f( e( d-  c: b( a:  `/ _/ ^( ]: \, [*/ Z* Y* X/ W= V/ U- TB S: R: Q7 P,  O, N, M* L( K, J,  I* H) G( F( E* D* C* B* A* @( ) ?* >* =(  <B ;B :*  9*  8B 7B 6B  5B  4B 3/  2(  1B 0B /B .B -, ,, +, *, trnl anastasis _reference_start_Matthew 22:23_reference_end_ _reference_start_Matthew 22:28_reference_end_ _reference_start_Matthew 22:30_reference_end_ _reference_start_Matthew 22:31_reference_end_ _reference_start_Mark 12:18_reference_end_ _reference_start_Mark 12:23_reference_end_ _reference_start_Luke 14:14_reference_end_ _reference_start_Luke 20:27_reference_end_ _reference_start_Luke 20:33_reference_end_ _reference_start_Luke 20:35_reference_end_ _reference_start_Luke 20:36_reference_end_ JHN 5:29 (2 occurrences); 11:24, 25 _reference_start_John 5:29_reference_end_ _reference_start_John 11:24_reference_end_ _reference_start_John 11:25_reference_end_ _reference_start_Acts 1:22_reference_end_ _reference_start_Acts 2:31_reference_end_ _reference_start_Acts 4:2_reference_end_ _reference_start_Acts 4:33_reference_end_ _reference_start_Acts 17:18_reference_end_ _reference_start_Acts 17:32_reference_end_ _reference_start_Acts 23:6_reference_end_ _reference_start_Acts 23:8_reference_end_ _reference_start_Acts 24:15_reference_end_ _reference_start_Acts 24:21_reference_end_ _reference_start_Romans 1:4_reference_end_ _reference_start_Romans 6:5_reference_end_ _reference_start_1 Corinthians 15:12_reference_end_ _reference_start_1 Corinthians 15:13_reference_end_ _reference_start_1 Corinthians 15:21_reference_end_ _reference_start_1 Corinthians 15:42_reference_end_ _reference_start_Philippians 3:10_reference_end_ _reference_start_Philippians 3:11_reference_end_ _reference_start_2 Timothy 2:18_reference_end_ HEB 6:2; 11:35 (2 occurrences) _reference_start_Hebrews 6:2_reference_end_ _reference_start_Hebrews 11:35_reference_end_ _reference_start_1 Peter 1:3_reference_end_ _reference_start_1 Peter 3:21_reference_end_ _reference_start_Revelation 20:5_reference_end_ _reference_start_Revelation 20:6_reference_end_ \gtrm egersiv \trnl egersis _reference_start_Matthew 27:53_reference_end_ \en2 2. Rising up \gtrm anastasiv \trnl anastasis _reference_start_Luke 2:34_reference_end_ _reference_start_Acts 26:23_reference_end_ hhHl==+RIGHTEOUS, RIGHTEOUSNESSrighteous, righteousness\see (see JUST)=k%%CRESURRECTIONresurrection\o1 1. Resurrection \o1 2. Rising up \gtrm anastasiv \trnl anastasis \xref [L&N 23.93] \def resurrection \xref [L&N 87.39] \def rising up (status) \xref [L&N 13.60] \def rising up (change) \gtrm egersiv \trnl egersis \xref [L&N 23.93] \def resurrection \en2 1. Resurrection \gtrm anastasiv \ ?tfXJ<. xj\N@2$|n`RD6( '* &* %* $* #* "* !* ) ) ) ) ) ) ) ) ) ( ( ( ( ( (  (  (  (  , *" (5 B B < < : # : 7 2 2 .* . . . ~- }- |, {, z, y, x, w, v,! u, t, s, r+  q+  p+ o*$ n*# m*! l* k* j)  i)  _start_Matthew 12:11_reference_end_ _reference_start_Matthew 12:12_reference_end_ _reference_start_Matthew 24:20_reference_end_ _reference_start_Matthew 28:1_reference_end_ MRK 1:21; 2:23, 24, 27 (2 occurrences), 28; 3:2, 4; 6:2; 16:1 _reference_start_Mark 1:21_reference_end_ _reference_start_Mark 2:23_reference_end_ _reference_start_Mark 2:24_reference_end_ _reference_start_Mark 2:27_reference_end_ _reference_start_Mark 2:28_reference_end_ _reference_start_Mark 3:2_reference_end_ _reference_start_Mark 3:4_reference_end_ _reference_start_Mark 6:2_reference_end_ _reference_start_Mark 16:1_reference_end_ LUK 4:16, 31; 6:1, 2, 5, 6, 7, 9; 13:10, 14 (2 occurrences), 15, 16; 14:1, 3, 5; 23:54, 56 _reference_start_Luke 4:16_reference_end_ _reference_start_Luke 4:31_reference_end_ _reference_start_Luke 6:1_reference_end_ _reference_start_Luke 6:2_reference_end_ _reference_start_Luke 6:5_reference_end_ _reference_start_Luke 6:6_reference_end_ _reference_start_Luke 6:7_reference_end_ _reference_start_Luke 6:9_refe rence_end_ _reference_start_Luke 13:10_reference_end_ _reference_start_Luke 13:14_reference_end_ _reference_start_Luke 13:15_reference_end_ _reference_start_Luke 13:16_reference_end_ _reference_start_Luke 14:1_reference_end_ _reference_start_Luke 14:3_reference_end_ _reference_start_Luke 14:5_reference_end_ _reference_start_Luke 23:54_reference_end_ _reference_start_Luke 23:56_reference_end_ JHN 5:9, 10, 16, 18; 7:22, 23 (2 occurrences); 9:14, 16; 19:31 (2 occurrences) _reference_start_John 5:9_reference_end_ _reference_start_John 5:10_reference_end_ _reference_start_John 5:16_reference_end_ _reference_start_John 5:18_reference_end_ _reference_start_John 7:22_reference_end_ _reference_start_John 7:23_reference_end_ _reference_start_John 9:14_reference_end_ _reference_start_John 9:16_reference_end_ _reference_start_John 19:31_reference_end_ _reference_start_Acts 1:12_reference_end_ _reference_start_Acts 13:14_reference_end_ _reference_start_Acts 13:27_reference_end_ _reference_start_Acts 13:42_reference_end_ _reference_start_Acts 13:44_reference_end_ _reference_start_Acts 15:21_reference_end_ _reference_start_Acts 16:13_reference_end_ _reference_start_Acts 18:4_reference_end_ _reference_start_Colossians 2:16_reference_end_ \en2 2. The day immediately preceding the Sabbath \gtrm prosabbaton \trnl prosabbaton _reference_start_Mark 15:42_reference_end_ \en2 3. Eschatological Sabbath (a figurative use) \gtrm sabbatismov \trnl sabbatismos _reference_start_Hebrews 4:9_reference_end_ \en2 4. A time period of seven days, one week, referred to as “a Sabbath” \gtrm sabbaton \trnl sabbaton _reference_start_Matthew 28:1_reference_end_ _reference_start_Mark 16:2_reference_end_ _reference_start_Mark 16:9_reference_end_ _reference_start_Luke 18:12_reference_end_ _reference_start_Luke 24:1_reference_end_ _reference_start_John 20:1_reference_end_ _reference_start_John 20:19_reference_end_ _reference_start_Acts 17:2_reference_end_ _reference_start_Acts 20:7_reference_end_ _reference_start_1 Corinthians 16:2_reference_end_ ))CmcSABBATHsabbath\o1 1. The last day of the Jewish week, Friday sunset to Saturday sunset \o1 2. The day immediately preceding the Sabbath \o1 3. Eschatological Sabbath (a figurative use) \o1 4. A time period of seven days, one week, referred to as “a Sabbath” \gtrm sabbaton \trnl sabbaton \xref [L&N 67.184] \def Sabbath \xref [L&N 81.28] \def Sabbath journey \xref [L&N 67.177] \def week \gtrm sabbatismov \trnl sabbatismos \xref [L&N 67.185] \def Sabbath rest (hapax legomenon) \gtrm prosabbaton \trnl prosabbaton \xref [L&N 67.202] \def Friday (hapax legomenon) \en2 1. The last day of the Jewish week, Friday sunset to Saturday sunset \gtrm sabbaton \trnl sabbaton MAT 12:1, 2, 5 (2 occurrences), 8, 10, 11, 12; 24:20; 28:1 _reference_start_Matthew 12:1_reference_end_ _reference_start_Matthew 12:2_reference_end_ _reference_start_Matthew 12:5_reference_end_ _reference_start_Matthew 12:8_reference_end_ _reference_start_Matthew 12:10_reference_end_ _reference ?tfXJ<. xj\N@2$|n`RD6( f, e, d* c) b:  a:  `: _:  ^:  ]:  \:  [: Z: Y: X: W.  V,* U,) T*  S* R) ! Q(  P( O. N, M, L+ K+ J* I* H) G) F( E: D)* C3 B, A, @, ?, , >, * =,  <,  ;, :+ 9+  8+  7+ 6+ 5+ 4+ 3+ 2+ 1*8 0*6 /* .* -* ,*  +*  **  )* (* %oSACRIFICEsacrifice\o1 1. Animal and other sacrifices \o2 a. As sacrificial killing \o2 b. As a sacrificial presentation or offering \o2 c. As sacrificial meat \o2 d. As a sacrifice wholly burnt \o2 e. As a sacrifice by implication, elision or association \o2 f. As a sacrifice in terms of “blood” \o1 2. The sacrificial death of Christ \o2 a. In direct terms \o2 b. In terms of blood \o1 3. Christian offerings to God \gtrm qusia \trnl thusia \xref [L&N 53.20] \def a sacrifice \gtrm qusiastjrion \trnl thusiastærion \xref [L&N 6.114] \def altar \gtrm quw \trnl thuõ \xref [L&N 53.19] \def to sacrifice \xref [L&N 20.72] \def to slaughter \gtrm prosferw \trnl prospherõ \xref [L&N 57.80] \def present to, offer \xref [L&N 15.172] \def bring into presence \xref [L&N 15.192] \def bring to \gtrm prosfora \trnl prosphora \xref [L&N 53.16] \def sacrifice, offering \gtrm eidwloquton \trnl eidõlothuton \xref [L&N 5.15] \def $n+SACREDsacred\see (see HOLY) sacrificial meat \gtrm élokautwma \trnl holokautõma \xref [L&N 53.24] \def whole burnt offering \gtrm spendw \trnl spendõ \xref [L&N 53.27] \def to pour libation offering \gtrm ƒima \trnl haima \xref [L&N 8.64] \def blood \xref (others) \def death, killing, etc. \gtrm ƒmartia \trnl hamartia \xref [L&N 88.289] \def sin (with “offering” elided) \xref [L&N 88.310] \def guilt (with “offering” elided) \xref [L&N 88.118] \def being evil \gtrm katakaiw \trnl katakaiõ \xref [L&N 14.66] \def burn down (burn up) \en2 1. Animal and other sacrifices \en3 a. As sacrificial killing \gtrm qusia \trnl thusia _reference_start_Matthew 9:13_reference_end_ _reference_start_Matthew 12:7_reference_end_ _reference_start_Mark 12:33_reference_end_ _reference_start_Luke 2:24_reference_end_ _reference_start_Luke 13:1_reference_end_ _reference_start_Acts 7:41_reference_end_ _reference_start_Acts 7:42_reference_end_ _reference_start_1 Corinthians 10:18_reference_end_ _reference_start_Hebrews 5:1_reference_end_ _reference_st art_Hebrews 7:27_reference_end_ _reference_start_Hebrews 8:3_reference_end_ _reference_start_Hebrews 9:9_reference_end_ _reference_start_Hebrews 9:23_reference_end_ _reference_start_Hebrews 10:1_reference_end_ _reference_start_Hebrews 10:5_reference_end_ _reference_start_Hebrews 10:8_reference_end_ _reference_start_Hebrews 10:11_reference_end_ _reference_start_Hebrews 10:26_reference_end_ _reference_start_Hebrews 11:4_reference_end_ \gtrm quw \trnl thuõ _reference_start_Mark 14:12_reference_end_ _reference_start_Luke 22:7_reference_end_ _reference_start_Acts 14:13_reference_end_ _reference_start_Acts 14:18_reference_end_ _reference_start_1 Corinthians 10:20_reference_end_ \en3 b. As a sacrificial presentation or offering \gtrm prosferw \trnl prospherõ _reference_start_Mark 1:44_reference_end_ _reference_start_Luke 5:14_reference_end_ _reference_start_Acts 21:26_reference_end_ _reference_start_Acts 24:17_reference_end_ HEB 5:3; 9:14; 10:2, 8, 18; 11:17 (2 occurrences) _reference_start_Hebrews 5:3_referen ce_end_ _reference_start_Hebrews 9:14_reference_end_ _reference_start_Hebrews 10:2_reference_end_ _reference_start_Hebrews 10:8_reference_end_ _reference_start_Hebrews 10:18_reference_end_ _reference_start_Hebrews 11:17_reference_end_ \gtrm prosfora \trnl prosphora _reference_start_Hebrews 10:6_reference_end_ _reference_start_Hebrews 10:8_reference_end_ \gtrm élokautwma \trnl holokautõma _reference_start_Hebrews 10:8_reference_end_ \en3 c. As sacrificial meat \gtrm eidwloquton \trnl eidõlothuton _reference_start_Acts 15:29_reference_end_ _reference_start_Acts 21:25_reference_end_ 1CO 8:1, 4, 7, 10; 10:18, 19, 20, 28 (2 occurrences) _reference_start_1 Corinthians 8:1_reference_end_ _reference_start_1 Corinthians 8:4_reference_end_ _reference_start_1 Corinthians 8:7_reference_end_ _reference_start_1 Corinthians 8:10_reference_end_ _reference_start_1 Corinthians 10:18_reference_end_ _reference_start_1 Corinthians 10:19_reference_end_ _reference_start_1 Corinthians 10:20_reference_end_ _reference_start_1 C orinthians 10:28_reference_end_ _reference_start_Revelation 2:14_reference_end_ _reference_start_Revelation 2:20_reference_end_ \en3 d. As a sacrifice wholly burnt \gtrm élokautwma \trnl holokautõma _reference_start_Mark 12:33_reference_end_ _reference_start_Hebrews 10:6_reference_end_ _reference_start_Hebrews 10:8_reference_end_ \en3 e. As a sacrifice by implication, elision or association \gtrm qusia \trnl thusia HEB 10:3 (“sacrifices” implied), 8 _reference_start_Hebrews 10:3_reference_end_ _reference_start_Hebrews 10:8_reference_end_ \gtrm qusiastjrion \trnl thusiastærion _reference_start_1 Corinthians 9:13_reference_end_ \gtrm prosfora \trnl prosphora _reference_start_Hebrews 10:8_reference_end_ \gtrm élokautwma \trnl holokautõma _reference_start_Hebrews 10:8_reference_end_ \gtrm ƒima \trnl haima _reference_start_Hebrews 13:11_reference_end_ \gtrm ƒmartia \trnl hamartia _reference_start_Hebrews 10:8_reference_end_ _reference_start_Hebrews 13:11_reference_end_ \gtrm katakaiw \trnl katakaiõ H EB 13:11 (sacrifice) _reference_start_Hebrews 13:11_reference_end_ \en3 f. As a sacrifice in terms of “blood” \itrm 2 occurrences _reference_start_Hebrews 9:22_reference_end_ \en2 2. The sacrificial death of Christ \en3 a. In direct terms \gtrm qusia \trnl thusia _reference_start_Hebrews 9:23_reference_end_ _reference_start_Hebrews 9:26_reference_end_ _reference_start_Hebrews 10:12_reference_end_ \gtrm quw \trnl thuõ _reference_start_1 Corinthians 5:7_reference_end_ \gtrm prosferw \trnl prospherõ _reference_start_Hebrews 9:14_reference_end_ _reference_start_Hebrews 9:25_reference_end_ _reference_start_Hebrews 9:28_reference_end_ _reference_start_Hebrews 10:10_reference_end_ _reference_start_Hebrews 10:14_reference_end_ \itrm “sacrifice” implied _reference_start_Hebrews 8:3_reference_end_ \itrm Implied HEB 9:7 (sacrificial blood) _reference_start_Hebrews 9:7_reference_end_ \en3 b. In terms of blood \gtrm ƒima \trnl haima _reference_start_Matthew 26:28_reference_end_ _reference_start_Mark 14:24_refer ence_end_ _reference_start_Luke 22:20_reference_end_ _reference_start_John 6:53_reference_end_ _reference_start_John 6:54_reference_end_ _reference_start_John 6:55_reference_end_ _reference_start_John 6:56_reference_end_ _reference_start_Acts 20:28_reference_end_ _reference_start_Romans 3:25_reference_end_ _reference_start_Romans 5:9_reference_end_ _reference_start_1 Corinthians 10:16_reference_end_ _reference_start_1 Corinthians 11:25_reference_end_ _reference_start_Ephesians 1:7_reference_end_ _reference_start_Ephesians 2:13_reference_end_ COL 1:14 (a few late manuscripts have “Through His blood”), 20 _reference_start_Colossians 1:14_reference_end_ _reference_start_Colossians 1:20_reference_end_ _reference_start_Hebrews 9:12_reference_end_ _reference_start_Hebrews 9:14_reference_end_ _reference_start_Hebrews 10:19_reference_end_ _reference_start_Hebrews 10:29_reference_end_ _reference_start_Hebrews 12:24_reference_end_ _reference_start_Hebrews 13:11_reference_end_ _reference_start_Hebrews 13:12_reference_end_ _reference_start_Hebrews 13:20_reference_end_ _reference_start_1 Peter 1:2_reference_end_ _reference_start_1 Peter 1:19_reference_end_ 1JN 1:7; 5:6 (2 occurrences), 8 _reference_start_1 John 1:7_reference_end_ _reference_start_1 John 5:6_reference_end_ _reference_start_1 John 5:8_reference_end_ _reference_start_Revelation 1:5_reference_end_ _reference_start_Revelation 5:9_reference_end_ _reference_start_Revelation 7:14_reference_end_ _reference_start_Revelation 12:11_reference_end_ \en2 3. Christian offerings to God \gtrm qusia \trnl thusia _reference_start_Romans 12:1_reference_end_ _reference_start_Ephesians 5:2_reference_end_ _reference_start_Philippians 2:17_reference_end_ _reference_start_Philippians 4:18_reference_end_ _reference_start_Hebrews 13:15_reference_end_ _reference_start_Hebrews 13:16_reference_end_ _reference_start_1 Peter 2:5_reference_end_ \gtrm spendw \trnl spendõ _reference_start_Philippians 2:17_reference_end_ 2TI 4:6 (martyred) _reference_start_2 Timothy 4:6_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( %1 $.  #.  "- !- , +8 +7 +6 +5 * ) ( :  : :  : :  :  :  . : :  :  :  : : :  : :  :  . :  :  :  :  ) ! B B ~.  }.  |.  {.  z. y. x. w. v, u, t:  s:  r:  q:  p:  o:  n:  m:  l: k, j, i* h), g.  ?tfXJ<. xj\N@2$|n`RD6( d/ c. b. a- `, _, ^+  ]* \* [*  Z*  Y*  X)! W) V) U) T) S( R(  Q( P, O, N, M, L, K* J)  I(" H( G( F( E( D( C( B7 A2 @< ?:  >:  =2 <2 ;1 :-  9B 8B 7B 6B 5> 4> 3> 2< 1< 0:  /: .: -:  ,:  +:  *:  ): (3 '3 &1 bR 8RY`gnu|$+29@GNU\cjqx  '.5<CJQX_fmt{ ? ~ = | ; z 9 x 7 v 5 t 3 Ár 3M D EK F GI X YG Z jE k lC  A ? ~ = | ; z 9 x 7 v 5 t 3 Ár ́1 ΁p ρ/ ہn ܁- l + j ) h ' f % d # b '! (` ) .^ 5 6\ T UZ V WX X YV p qT r sR t zP { N L J H  F Á āD Ł ƁB ǁ ρ@ ԁ > } < { : y 8 w 6 u 4 s 2 q 0 #o *. -m 4, **Rp}SADDUCEEsadducee\o1 1. Sadducee \gtrm saddoukaiov \trnl saddoukaios \xref [L&N 11.48] \def Sadducee -- An affluent religious party of the Jews having much political power. They insisted upon a strict observance of the law of Moses. They rejected oral traditions and did not believe in life after death. \en2 1. Sadducee \gtrm saddoukaiov \trnl saddoukaios _reference_start_Matthew 3:7_reference_end_ _reference_start_Matthew 16:1_reference_end_ _reference_start_Matthew 16:6_reference_end_ _reference_start_Matthew 16:11_reference_end_ _reference_start_Matthew 16:12_reference_end_ _reference_start_Matthew 22:23_reference_end_ _reference_start_Matthew 22:34_reference_end_ _reference_start_Mark 12:18_reference_end_ _reference_start_Luke 20:27_reference_end_ _reference_start_Acts 4:1_reference_end_ _reference_start_Acts 5:17_reference_end_ _reference_start_Acts 23:6_reference_end_ _reference_start_Acts 23:7_reference_end_ _reference_start_Acts 23:8_reference_end_ @c4@PuSATANsatan\o1 1. Names \o2 a. Satan \o2 b. Devil \o2 c. Beelzeboul \o2 d. Belial \o1 2. Titles and descriptions \o2 a. The prince of demons \o2 b. The prince of the power of the air \o2 c. The ruler (prince, god) of this world \o2 d. The evil one \o2 e. The enemy \o2 f. The adversary, accuser \o2 g. The tempter \o1 3. Related expressions \gtrm satanav \trnl satanas \xref [L&N 12.34] \def slanderer, the devil (Hebrew) \xref [L&N 4567] \def 93.330 ,t/SANCTUARYsanctuary\see (see TEMPLE)Hs==+SANCTIFICATION, SANCTIFYsanctification, sanctify\see (see HOLY)*r+SALVATIONsalvation\see (see SAVE)"q+SAINTsaint\see (see HOLY)  slandering adversary (Aramaic) \gtrm beelzeboul \trnl beelzeboul \xref [L&N 93.68] \def the devil's name as prince of demons \gtrm belial \trnl belial \xref [L&N 93.69] \def name for the devil or antichrist \gtrm diabolov \trnl diabolos \xref [L&N 12.34] \def adversary, Greek equivalent for Satan \xref [L&N 88.124] \def some one like the devil, devilish \gtrm katjgwr \trnl katægõr \xref [L&N 33.429] \def formal accuser \gtrm é ponjrov \trnl ho ponæros \xref [L&N 12.35] \def the evil one, Satan \gtrm é peirazwn \trnl ho peirazõn \xref [L&N 12.36] \def the tempter, Satan \gtrm é antidikov \trnl ho antidikos \xref [L&N 39.9] \def adversary \xref [L&N 56.11] \def accuser \gtrm antikeimai \trnl antikeimai \xref [L&N 39.1] \def be hostile toward \gtrm ecqrov \trnl echthros \xref [L&N 39.11] \def be the enemy of \gtrm arcwn \trnl archõn \xref [L&N 12.44] \def supernatural power (more commonly ruler or judge) \gtrm qeov \trnl theos \xref [L&N 12.24] \def the god of this world, Satan \en2 1. Names \en3 a.  Satan \gtrm satanav \trnl satanas MAT 4:10; 12:26 (2 occurrences); 16:23 (figurative) _reference_start_Matthew 4:10_reference_end_ _reference_start_Matthew 12:26_reference_end_ _reference_start_Matthew 16:23_reference_end_ MRK 1:13; 3:23 (2 occurrences), 26; 4:15; 8:33 _reference_start_Mark 1:13_reference_end_ _reference_start_Mark 3:23_reference_end_ _reference_start_Mark 3:26_reference_end_ _reference_start_Mark 4:15_reference_end_ _reference_start_Mark 8:33_reference_end_ _reference_start_Luke 10:18_reference_end_ _reference_start_Luke 11:18_reference_end_ _reference_start_Luke 13:16_reference_end_ _reference_start_Luke 22:3_reference_end_ _reference_start_Luke 22:31_reference_end_ _reference_start_John 13:27_reference_end_ _reference_start_Acts 5:3_reference_end_ _reference_start_Acts 26:18_reference_end_ _reference_start_Romans 16:20_reference_end_ _reference_start_1 Corinthians 5:5_reference_end_ _reference_start_1 Corinthians 7:5_reference_end_ _reference_start_2 Corinthians 2:11_reference_end_ _r eference_start_2 Corinthians 11:14_reference_end_ _reference_start_2 Corinthians 12:7_reference_end_ _reference_start_1 Thessalonians 2:18_reference_end_ _reference_start_2 Thessalonians 2:9_reference_end_ _reference_start_1 Timothy 1:20_reference_end_ _reference_start_1 Timothy 5:15_reference_end_ REV 2:9, 13 (2 occurrences), 24; 3:9; 12:9; 20:2, 7 _reference_start_Revelation 2:9_reference_end_ _reference_start_Revelation 2:13_reference_end_ _reference_start_Revelation 2:24_reference_end_ _reference_start_Revelation 3:9_reference_end_ _reference_start_Revelation 12:9_reference_end_ _reference_start_Revelation 20:2_reference_end_ _reference_start_Revelation 20:7_reference_end_ \en3 b. Devil \gtrm diabolov \trnl diabolos _reference_start_Matthew 4:1_reference_end_ _reference_start_Matthew 4:5_reference_end_ _reference_start_Matthew 4:8_reference_end_ _reference_start_Matthew 4:11_reference_end_ _reference_start_Matthew 13:39_reference_end_ _reference_start_Matthew 25:41_reference_end_ LUK 4:2, 3, 5 (Implie d contextually), 6, 13; 8:12 _reference_start_Luke 4:2_reference_end_ _reference_start_Luke 4:3_reference_end_ _reference_start_Luke 4:5_reference_end_ _reference_start_Luke 4:6_reference_end_ _reference_start_Luke 4:13_reference_end_ _reference_start_Luke 8:12_reference_end_ _reference_start_John 6:70_reference_end_ _reference_start_John 8:44_reference_end_ _reference_start_John 13:2_reference_end_ _reference_start_Acts 10:38_reference_end_ _reference_start_Acts 13:10_reference_end_ _reference_start_Ephesians 4:27_reference_end_ _reference_start_Ephesians 6:11_reference_end_ _reference_start_1 Timothy 3:6_reference_end_ _reference_start_1 Timothy 3:7_reference_end_ _reference_start_2 Timothy 2:26_reference_end_ _reference_start_Hebrews 2:14_reference_end_ _reference_start_James 4:7_reference_end_ _reference_start_1 Peter 5:8_reference_end_ 1JN 3:8 (3 occurrences), 10 _reference_start_1 John 3:8_reference_end_ _reference_start_1 John 3:10_reference_end_ _reference_start_Jude 1:9_reference_end_ _reference_ start_Revelation 2:10_reference_end_ _reference_start_Revelation 12:9_reference_end_ _reference_start_Revelation 12:12_reference_end_ _reference_start_Revelation 20:2_reference_end_ _reference_start_Revelation 20:10_reference_end_ \en3 c. Beelzeboul \gtrm beelzeboul \trnl beelzeboul _reference_start_Matthew 10:25_reference_end_ _reference_start_Matthew 12:24_reference_end_ _reference_start_Matthew 12:27_reference_end_ _reference_start_Mark 3:22_reference_end_ _reference_start_Luke 11:15_reference_end_ _reference_start_Luke 11:18_reference_end_ _reference_start_Luke 11:19_reference_end_ \en3 d. Belial \gtrm belial \trnl belial 2CO 6:15 (hapax legomenon) _reference_start_2 Corinthians 6:15_reference_end_ \en2 2. Titles and descriptions \en3 a. The prince of demons \gtrm arcwn \trnl archõn _reference_start_Matthew 9:34_reference_end_ _reference_start_Matthew 12:24_reference_end_ _reference_start_Mark 3:22_reference_end_ _reference_start_Luke 11:15_reference_end_ \en3 b. The prince of the power of the air \g trm arcwn \trnl archõn _reference_start_Ephesians 2:2_reference_end_ \en3 c. The ruler (prince, god) of this world \gtrm arcwn \trnl archõn _reference_start_John 12:31_reference_end_ _reference_start_John 14:30_reference_end_ _reference_start_John 16:11_reference_end_ \gtrm qeov \trnl theos _reference_start_2 Corinthians 4:4_reference_end_ \en3 d. The evil one \gtrm é ponjrov \trnl ho ponæros MAT 5:37 (alternate Possibly the evil one), 39 (alternate Possibly the evil one); 6:13 (alternate Possibly the evil one); 13:19, 38 _reference_start_Matthew 5:37_reference_end_ _reference_start_Matthew 5:39_reference_end_ _reference_start_Matthew 6:13_reference_end_ _reference_start_Matthew 13:19_reference_end_ _reference_start_Matthew 13:38_reference_end_ _reference_start_John 17:15_reference_end_ _reference_start_Ephesians 6:16_reference_end_ _reference_start_2 Thessalonians 3:3_reference_end_ _reference_start_1 John 2:13_reference_end_ _reference_start_1 John 2:14_reference_end_ _reference_start_1 John 3:12_reference_end_ _reference_start_1 John 5:18_reference_end_ _reference_start_1 John 5:19_reference_end_ \en3 e. The enemy \gtrm antikeimai \trnl antikeimai _reference_start_1 Timothy 5:14_reference_end_ \gtrm ecqrov \trnl echthros _reference_start_Matthew 13:25_reference_end_ _reference_start_Matthew 13:28_reference_end_ _reference_start_Matthew 13:39_reference_end_ _reference_start_Luke 10:19_reference_end_ _reference_start_Acts 13:10_reference_end_ \en3 f. The adversary, accuser \gtrm katjgwr \trnl katægõr REV 12:10 (hapax legomenon) _reference_start_Revelation 12:10_reference_end_ \gtrm é antidikov \trnl ho antidikos _reference_start_1 Peter 5:8_reference_end_ \en3 g. The tempter \gtrm é peirazwn \trnl ho peirazõn _reference_start_Matthew 4:3_reference_end_ _reference_start_1 Thessalonians 3:5_reference_end_ \en2 3. Related expressions \gtrm diabolov \trnl diabolos 1TI 3:11 (figurative?) _reference_start_1 Timothy 3:11_reference_end_ 2TI 3:3 (figurative?) _reference_start_2 Timothy 3:3_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( #/ "+ !+ +  1 *  ) (  ( " / *  *  *  ) (  (  (  B B B B B A > > < ; : 7 6 6 1 1 , , & +  +, ~+F }* |* {* z* y* x* w() v( ' u( t( s( r( qB pB oB nB mB lB kB j6 i6 h5 g4 f/  e/  ?tfXJ<. xj\N@2$|n`RD6( b; a: `: _8 ^7 ]7 \6 [6 Z.  Y. X. W-  V+ / U+  T*' S*% R*# Q* P** O* N*  M*0 L*2 K* J) I) H) 4 G)# F)" E) D(1 C(* B(( A( @( ?(  >( =( <7 ;6 :4 9( 8< 7B 6, 5*  4( ' 3(  2(  16 0> /> .> -> ,> +5 *1 )+ (( & '(  &( %(' $(%  21.27] \def to cause to experience divine salvation \gtrm diaswzw \trnl diasõzõ \xref [L&N 21.19] \def to rescue completely from danger \gtrm swtjria \trnl sõtæria \xref [L&N 21.18] \def deliverance \xref [L&N 21.25] \def completed salvation \xref [L&N 21.26] \def process of salvation \gtrm swtjrion \trnl sõtærion \xref [L&N 21.29] \def means of salvation \xref [L&N 21.30] \def message of salvation \gtrm swtjriov \trnl sõtærios \xref [L&N 21.28] \def bringing or pertaining to salvation \gtrm swtjr \trnl sõtær \xref [L&N 21.22] \def deliverer, rescuer, savior \xref [L&N 21.31] \def one who saves, savior \gtrm exairew \trnl exaireõ \xref [L&N 21.17] \def to deliver, rescue, set free from danger \gtrm diafulassw \trnl diaphulassõ \xref [L&N 21.21] \def to guard, protect, keep safe \gtrm ¿uomai \trnl hruomai \xref [L&N 21.23] \def to rescue from great/imminent danger \gtrm ktaomai \trnl ktaomai \xref [L&N 21.20] \def to “acquire” one's soul \en2 1. To save, to be saved (verb form) \en3 a. To s ave (active) \gtrm swzw \trnl sõzõ MAT 1:21; 8:25; 9:22; 14:30; 16:25; 27:40, 42 (2 occurrences), 49 _reference_start_Matthew 1:21_reference_end_ _reference_start_Matthew 8:25_reference_end_ _reference_start_Matthew 9:22_reference_end_ _reference_start_Matthew 14:30_reference_end_ _reference_start_Matthew 16:25_reference_end_ _reference_start_Matthew 27:40_reference_end_ _reference_start_Matthew 27:42_reference_end_ _reference_start_Matthew 27:49_reference_end_ MRK 3:4; 5:34; 8:35 (2 occurrences); 10:52; 15:30, 31 (2 occurrences) _reference_start_Mark 3:4_reference_end_ _reference_start_Mark 5:34_reference_end_ _reference_start_Mark 8:35_reference_end_ _reference_start_Mark 10:52_reference_end_ _reference_start_Mark 15:30_reference_end_ _reference_start_Mark 15:31_reference_end_ LUK 6:9; 7:50; 8:48; 9:24 (2 occurrences); 17:19; 18:42; 19:10; 23:35 (2 occurrences), 37, 39 _reference_start_Luke 6:9_reference_end_ _reference_start_Luke 7:50_reference_end_ _reference_start_Luke 8:48_reference_end_ _referenc e_start_Luke 9:24_reference_end_ _reference_start_Luke 17:19_reference_end_ _reference_start_Luke 18:42_reference_end_ _reference_start_Luke 19:10_reference_end_ _reference_start_Luke 23:35_reference_end_ _reference_start_Luke 23:37_reference_end_ _reference_start_Luke 23:39_reference_end_ _reference_start_John 12:27_reference_end_ _reference_start_John 12:47_reference_end_ _reference_start_Romans 11:14_reference_end_ 1CO 1:21; 7:16 (2 occurrences); 9:22 _reference_start_1 Corinthians 1:21_reference_end_ _reference_start_1 Corinthians 7:16_reference_end_ _reference_start_1 Corinthians 9:22_reference_end_ _reference_start_1 Timothy 1:15_reference_end_ _reference_start_1 Timothy 4:16_reference_end_ _reference_start_2 Timothy 1:9_reference_end_ _reference_start_2 Timothy 4:18_reference_end_ _reference_start_Titus 3:5_reference_end_ _reference_start_Hebrews 5:7_reference_end_ _reference_start_Hebrews 7:25_reference_end_ _reference_start_James 1:21_reference_end_ _reference_start_James 2:14_reference_end_ _ref erence_start_James 4:12_reference_end_ _reference_start_James 5:15_reference_end_ _reference_start_James 5:20_reference_end_ _reference_start_1 Peter 3:21_reference_end_ _reference_start_Jude 1:5_reference_end_ _reference_start_Jude 1:23_reference_end_ \gtrm diaswzw \trnl diasõzõ _reference_start_Luke 7:3_reference_end_ _reference_start_Acts 23:24_reference_end_ _reference_start_Acts 27:43_reference_end_ \gtrm diafulassw \trnl diaphulassõ LUK 4:10 (hapax legomenon) _reference_start_Luke 4:10_reference_end_ \en3 b. To be saved (passive) \gtrm swzw \trnl sõzõ _reference_start_Matthew 9:21_reference_end_ _reference_start_Matthew 9:22_reference_end_ _reference_start_Matthew 10:22_reference_end_ _reference_start_Matthew 19:25_reference_end_ _reference_start_Matthew 24:13_reference_end_ _reference_start_Matthew 24:22_reference_end_ _reference_start_Mark 5:23_reference_end_ _reference_start_Mark 5:28_reference_end_ _reference_start_Mark 6:56_reference_end_ _reference_start_Mark 10:26_reference_end_ _referen ce_start_Mark 13:13_reference_end_ _reference_start_Mark 13:20_reference_end_ _reference_start_Mark 16:16_reference_end_ _reference_start_Luke 8:12_reference_end_ _reference_start_Luke 8:36_reference_end_ _reference_start_Luke 8:50_reference_end_ _reference_start_Luke 13:23_reference_end_ _reference_start_Luke 18:26_reference_end_ _reference_start_John 3:17_reference_end_ _reference_start_John 5:34_reference_end_ _reference_start_John 10:9_reference_end_ _reference_start_John 11:12_reference_end_ _reference_start_Acts 2:21_reference_end_ _reference_start_Acts 2:40_reference_end_ _reference_start_Acts 2:47_reference_end_ _reference_start_Acts 4:9_reference_end_ _reference_start_Acts 4:12_reference_end_ _reference_start_Acts 11:14_reference_end_ _reference_start_Acts 14:9_reference_end_ _reference_start_Acts 15:1_reference_end_ _reference_start_Acts 15:11_reference_end_ _reference_start_Acts 16:30_reference_end_ _reference_start_Acts 16:31_reference_end_ _reference_start_Acts 27:20_reference_end_ _reference !_start_Acts 27:31_reference_end_ _reference_start_Romans 5:9_reference_end_ _reference_start_Romans 5:10_reference_end_ _reference_start_Romans 8:24_reference_end_ _reference_start_Romans 9:27_reference_end_ _reference_start_Romans 10:9_reference_end_ _reference_start_Romans 10:13_reference_end_ _reference_start_Romans 11:26_reference_end_ _reference_start_1 Corinthians 1:18_reference_end_ _reference_start_1 Corinthians 3:15_reference_end_ _reference_start_1 Corinthians 5:5_reference_end_ _reference_start_1 Corinthians 10:33_reference_end_ _reference_start_1 Corinthians 15:2_reference_end_ _reference_start_2 Corinthians 2:15_reference_end_ _reference_start_Ephesians 2:5_reference_end_ _reference_start_Ephesians 2:8_reference_end_ _reference_start_1 Thessalonians 2:16_reference_end_ _reference_start_2 Thessalonians 2:10_reference_end_ _reference_start_1 Timothy 2:4_reference_end_ _reference_start_1 Timothy 2:15_reference_end_ _reference_start_1 Peter 4:18_reference_end_ \gtrm diaswzw \trnl diasõzõ _refer "ence_start_Matthew 14:36_reference_end_ _reference_start_Acts 27:44_reference_end_ _reference_start_Acts 28:1_reference_end_ _reference_start_Acts 28:4_reference_end_ _reference_start_1 Peter 3:20_reference_end_ \gtrm ¿uomai \trnl hruomai _reference_start_Luke 1:74_reference_end_ _reference_start_Romans 15:31_reference_end_ _reference_start_2 Thessalonians 3:2_reference_end_ _reference_start_2 Timothy 4:17_reference_end_ \en3 c. To be saved (middle) \gtrm exairew \trnl exaireõ _reference_start_Acts 7:10_reference_end_ _reference_start_Acts 7:34_reference_end_ _reference_start_Acts 12:11_reference_end_ _reference_start_Acts 23:27_reference_end_ _reference_start_Acts 26:17_reference_end_ _reference_start_Galatians 1:4_reference_end_ \en3 d. To be saved (middle deponent) \gtrm ¿uomai \trnl hruomai _reference_start_Matthew 6:13_reference_end_ _reference_start_Matthew 27:43_reference_end_ _reference_start_Luke 11:4_reference_end_ _reference_start_Romans 7:24_reference_end_ 2CO 1:10 (3 occurrences) _referenc #e_start_2 Corinthians 1:10_reference_end_ _reference_start_Colossians 1:13_reference_end_ _reference_start_2 Timothy 3:11_reference_end_ _reference_start_2 Timothy 4:18_reference_end_ _reference_start_2 Peter 2:7_reference_end_ \en3 e. To be saved (middle or passive deponent) \gtrm ¿uomai \trnl hruomai _reference_start_Romans 11:26_reference_end_ _reference_start_1 Thessalonians 1:10_reference_end_ _reference_start_2 Peter 2:9_reference_end_ \en2 2. Salvation (abstract noun form) \gtrm swtjria \trnl sõtæria _reference_start_Luke 1:69_reference_end_ _reference_start_Luke 1:71_reference_end_ _reference_start_Luke 1:77_reference_end_ _reference_start_Luke 19:9_reference_end_ _reference_start_John 4:22_reference_end_ _reference_start_Acts 4:12_reference_end_ _reference_start_Acts 7:25_reference_end_ _reference_start_Acts 13:26_reference_end_ _reference_start_Acts 13:47_reference_end_ _reference_start_Acts 16:17_reference_end_ _reference_start_Acts 27:34_reference_end_ _reference_start_Romans 1:16_reference $_end_ _reference_start_Romans 10:1_reference_end_ _reference_start_Romans 10:10_reference_end_ _reference_start_Romans 11:11_reference_end_ _reference_start_Romans 13:11_reference_end_ 2CO 1:6; 6:2 (2 occurrences); 7:10 _reference_start_2 Corinthians 1:6_reference_end_ _reference_start_2 Corinthians 6:2_reference_end_ _reference_start_2 Corinthians 7:10_reference_end_ _reference_start_Ephesians 1:13_reference_end_ _reference_start_Philippians 1:19_reference_end_ _reference_start_Philippians 1:28_reference_end_ _reference_start_Philippians 2:12_reference_end_ _reference_start_1 Thessalonians 5:8_reference_end_ _reference_start_1 Thessalonians 5:9_reference_end_ _reference_start_2 Thessalonians 2:13_reference_end_ _reference_start_2 Timothy 2:10_reference_end_ _reference_start_2 Timothy 3:15_reference_end_ _reference_start_Hebrews 1:14_reference_end_ _reference_start_Hebrews 2:3_reference_end_ _reference_start_Hebrews 2:10_reference_end_ _reference_start_Hebrews 5:9_reference_end_ _reference_start_Hebrews 6 %:9_reference_end_ _reference_start_Hebrews 9:28_reference_end_ _reference_start_Hebrews 11:7_reference_end_ _reference_start_1 Peter 1:5_reference_end_ _reference_start_1 Peter 1:9_reference_end_ _reference_start_1 Peter 1:10_reference_end_ _reference_start_1 Peter 2:2_reference_end_ _reference_start_2 Peter 3:15_reference_end_ _reference_start_Jude 1:3_reference_end_ _reference_start_Revelation 7:10_reference_end_ _reference_start_Revelation 12:10_reference_end_ _reference_start_Revelation 19:1_reference_end_ \gtrm swtjrion \trnl sõtærion _reference_start_Luke 2:30_reference_end_ _reference_start_Luke 3:6_reference_end_ _reference_start_Acts 28:28_reference_end_ _reference_start_Ephesians 6:17_reference_end_ \gtrm swtjriov \trnl sõtærios TIT 2:11 (hapax legomenon) _reference_start_Titus 2:11_reference_end_ \en2 3. Savior, one who saves (personal noun form) \gtrm swtjr \trnl sõtær _reference_start_Luke 1:47_reference_end_ _reference_start_Luke 2:11_reference_end_ _reference_start_John 4:42_reference_end_ _reference_start_Acts 5:31_reference_end_ _reference_start_Acts 13:23_reference_end_ _reference_start_Ephesians 5:23_reference_end_ _reference_start_Philippians 3:20_reference_end_ _reference_start_1 Timothy 1:1_reference_end_ _reference_start_1 Timothy 2:3_reference_end_ _reference_start_1 Timothy 4:10_reference_end_ _reference_start_2 Timothy 1:10_reference_end_ _reference_start_Titus 1:3_reference_end_ _reference_start_Titus 1:4_reference_end_ _reference_start_Titus 2:10_reference_end_ _reference_start_Titus 2:13_reference_end_ _reference_start_Titus 3:4_reference_end_ _reference_start_Titus 3:6_reference_end_ _reference_start_2 Peter 1:1_reference_end_ _reference_start_2 Peter 1:11_reference_end_ _reference_start_2 Peter 2:20_reference_end_ _reference_start_2 Peter 3:2_reference_end_ _reference_start_2 Peter 3:18_reference_end_ _reference_start_1 John 4:14_reference_end_ _reference_start_Jude 1:25_reference_end_ \en2 4. Idiom \gtrm ktaomai \trnl ktaomai _reference_start_Luke 21:19_reference_end_ MM:xISCRIPTUREscripture\see (see also LAW) \o1 1. Where the entire Old Testament is intended \o1 2. Where The Law is intended \o1 3. Where a specific section or passage is intended \o1 4. Where the reference is ambiguous \o1 5. The Word of God as combining OT Scripture and Christ's teachings \gtrm grafj \trnl graphæ \xref [L&N 33. /w))aSCRIBE, LAWYERscribe, lawyer\o1 1. Teacher of the law \o2 a. Grammateus \o2 b. Nomikos *6v;;SAVE, SAVIOR, SALVATIONsave, savior, salvation\o1 1. To save, to be saved (verb form) \o2 a. To save (active) \o2 b. To be saved (passive) \o2 c. To be saved (middle) \o2 d. To be saved (middle deponent) \o2 e. To be saved (middle or passive deponent) \o1 2. Salvation (abstract noun form) \o1 3. Savior, one who saves (personal noun form) \o1 4. Idiom \gtrm swzw \trnl sõzõ \xref [L&N 21.18] \def to restore to former state of safety, deliver \xref [L&N  ?tfXJ<. xj\N@2$|n`RD6( !5 4 1 1 / . . ! . . . -  - - -  - - - , , , , , , , ,  , , ,/ ,( , + + +" + * ~*  }*2 |*$ {* z) y)  x) w)  v)8 u) t) s( r( q( p(  o(  n(  m* l,+ k, j* iA hA g< f; e; d; c; ?tfXJ<. xj\N@2$|n`RD6( `: _: ^: ]: \: [7 Z7 Y5 X4 W4 V2 U2 T2 S1 R/ Q/ P/ O- N- M- L-  K- J," I, H, / G,  F, E, D+ C* B*M A*G @*E ?= >4 =-  <= ;7 :7 93 8/ 7- 6*  5(+ 4( 30 2, 1, 0, /," ., -7 ,5 +- **J )< (, ', &,, %($ $< #6 "6 ?tfXJ<. xj\N@2$|n`RD6( () (9 (" ( ( ( ( ( ( ( ( ( ( ( ( ( 4 ( & (  ( ( ( ( * A > = = = = = 8 8 8 ~8 }8 |8 {7 z6 y6 x6 w2 v1 u,  t, s+* r* q*/ p8 o1 n, m* l* kB jB iB hA g= f< e< d< c< b:  a:  +\o2 c. Nomodidaskalos \o1 2. A public official \gtrm grammateuv \trnl grammateus \xref [L&N 53.94] \def expert in the law \xref [L&N 27.22] \def scholar \xref [L&N 37.94] \def town clerk \gtrm nomikov \trnl nomikos \xref [L&N 33.337] \def about the law \gtrm nomodidaskalov \trnl nomodidaskalos \xref [L&N 33.248] \def teacher of the law \en2 1. Teacher of the law \en3 a. Grammateus \gtrm grammateuv \trnl grammateus MAT 2:4; 5:20; 7:29; 8:19; 9:3; 12:38; 13:52 (disciples of Christ); 15:1; 16:21; 17:10; 20:18; 21:15; 23:2, 13, 15, 23, 25, 27, 29, 34 (disciples of Christ); 26:57; 27:41 _reference_start_Matthew 2:4_reference_end_ _reference_start_Matthew 5:20_reference_end_ _reference_start_Matthew 7:29_reference_end_ _reference_start_Matthew 8:19_reference_end_ _reference_start_Matthew 9:3_reference_end_ _reference_start_Matthew 12:38_reference_end_ _reference_start_Matthew 13:52_reference_end_ _reference_start_Matthew 15:1_reference_end_ _reference_start_Matthew 16:21_reference_end_ _reference_start_Matth ,ew 17:10_reference_end_ _reference_start_Matthew 20:18_reference_end_ _reference_start_Matthew 21:15_reference_end_ _reference_start_Matthew 23:2_reference_end_ _reference_start_Matthew 23:13_reference_end_ _reference_start_Matthew 23:15_reference_end_ _reference_start_Matthew 23:23_reference_end_ _reference_start_Matthew 23:25_reference_end_ _reference_start_Matthew 23:27_reference_end_ _reference_start_Matthew 23:29_reference_end_ _reference_start_Matthew 23:34_reference_end_ _reference_start_Matthew 26:57_reference_end_ _reference_start_Matthew 27:41_reference_end_ _reference_start_Mark 1:22_reference_end_ _reference_start_Mark 2:6_reference_end_ _reference_start_Mark 2:16_reference_end_ _reference_start_Mark 3:22_reference_end_ _reference_start_Mark 7:1_reference_end_ _reference_start_Mark 7:5_reference_end_ _reference_start_Mark 8:31_reference_end_ _reference_start_Mark 9:11_reference_end_ _reference_start_Mark 9:14_reference_end_ _reference_start_Mark 10:33_reference_end_ _reference_start_Mark 11:18 -_reference_end_ _reference_start_Mark 11:27_reference_end_ _reference_start_Mark 12:28_reference_end_ _reference_start_Mark 12:32_reference_end_ _reference_start_Mark 12:35_reference_end_ _reference_start_Mark 12:38_reference_end_ _reference_start_Mark 14:1_reference_end_ _reference_start_Mark 14:43_reference_end_ _reference_start_Mark 14:53_reference_end_ _reference_start_Mark 15:1_reference_end_ _reference_start_Mark 15:31_reference_end_ _reference_start_Luke 5:21_reference_end_ _reference_start_Luke 5:30_reference_end_ _reference_start_Luke 6:7_reference_end_ _reference_start_Luke 9:22_reference_end_ _reference_start_Luke 15:2_reference_end_ _reference_start_Luke 19:47_reference_end_ _reference_start_Luke 20:1_reference_end_ _reference_start_Luke 20:19_reference_end_ _reference_start_Luke 20:39_reference_end_ _reference_start_Luke 20:46_reference_end_ _reference_start_Luke 22:2_reference_end_ _reference_start_Luke 22:66_reference_end_ _reference_start_Luke 23:10_reference_end_ _reference_start_John 8:3_reference_end_ _reference_start_Acts 4:5_reference_end_ _reference_start_Acts 6:12_reference_end_ _reference_start_Acts 23:9_reference_end_ _reference_start_1 Corinthians 1:20_reference_end_ \gtrm nomikov \trnl nomikos _reference_start_Luke 11:53_reference_end_ \en3 b. Nomikos \gtrm nomikov \trnl nomikos _reference_start_Matthew 22:35_reference_end_ _reference_start_Luke 7:30_reference_end_ _reference_start_Luke 10:25_reference_end_ _reference_start_Luke 11:45_reference_end_ _reference_start_Luke 11:46_reference_end_ _reference_start_Luke 11:52_reference_end_ _reference_start_Luke 14:3_reference_end_ _reference_start_Titus 3:13_reference_end_ \en3 c. Nomodidaskalos \gtrm nomodidaskalov \trnl nomodidaskalos _reference_start_Luke 5:17_reference_end_ _reference_start_Acts 5:34_reference_end_ _reference_start_1 Timothy 1:7_reference_end_ \en2 2. A public official \gtrm grammateuv \trnl grammateus _reference_start_Acts 19:35_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( ^, ], \, [+ # Z+' Y+ X*- W* V* U)  T( S,# R6 Q," P* O8 N* M* 4 L* . K* - J*  I* H(# G* 5 F. E, D, C, B+ A* @*B ?* >*. =*' <* ;* :*/ 9* 8*  7* 6* 5* 4) 3) 2)5 1)+ 0) /) & .) # -) ,)  +)  *)  )) ! ()  ') &) %) $) #) ") !) ) 053] \def a particular passage of the OT \xref [L&N 33.54] \def the sacred writings, i.e. the OT \gtrm gramma \trnl gramma \xref [L&N 33.50] \def the contents of any written document \gtrm grafw \trnl graphõ \xref [L&N 33.61] \def to write (there are many references which refer to Scripture but not represented here.) \gtrm variouv \trnl various \def “Word of God” where it refers to the Scriptures \en2 1. Where the entire Old Testament is intended \gtrm grafj \trnl graphæ _reference_start_Matthew 22:29_reference_end_ _reference_start_Mark 12:24_reference_end_ _reference_start_Luke 24:27_reference_end_ _reference_start_Luke 24:32_reference_end_ _reference_start_Luke 24:45_reference_end_ _reference_start_John 2:22_reference_end_ _reference_start_John 5:39_reference_end_ _reference_start_John 10:35_reference_end_ _reference_start_Acts 17:2_reference_end_ _reference_start_Acts 17:11_reference_end_ _reference_start_Acts 18:24_reference_end_ _reference_start_Acts 18:28_reference_end_ _reference_start_Romans 1 1:2_reference_end_ _reference_start_Romans 15:4_reference_end_ _reference_start_Romans 16:26_reference_end_ _reference_start_2 Timothy 3:16_reference_end_ _reference_start_2 Peter 3:16_reference_end_ \gtrm gramma \trnl gramma _reference_start_2 Timothy 3:15_reference_end_ \itrm Preaching implied _reference_start_1 Timothy 4:13_reference_end_ \en2 2. Where The Law is intended \gtrm gramma \trnl gramma _reference_start_John 5:47_reference_end_ ROM 2:27 (2 occurrences); 7:6 _reference_start_Romans 2:27_reference_end_ _reference_start_Romans 7:6_reference_end_ 2CO 3:6 (2 occurrences) (the second occurrence is personified), 7 _reference_start_2 Corinthians 3:6_reference_end_ _reference_start_2 Corinthians 3:7_reference_end_ \en2 3. Where a specific section or passage is intended \gtrm grafj \trnl graphæ MAT 21:42 (PSA 118:22-23); 26:54 (ZEC 13:7?) _reference_start_Matthew 21:42_reference_end_ _reference_start_Matthew 26:54_reference_end_ MRK 12:10 (PSA 118:22,23); 14:49 (ISA 53; ZEC 13:7) _reference_start_Mark 2 12:10_reference_end_ _reference_start_Mark 14:49_reference_end_ LUK 4:21 (ISA 61:1-2) _reference_start_Luke 4:21_reference_end_ JHN 7:42 (MIC 5:2 figure: personification); 13:18 (PSA 41:9); 17:12 (PSA 41:9); 19:24 (EXO 28:32; PSA 22:18), 28 (PSA 69:21), 36 (EXO 12:46; NUM 9:12; PSA 34:21), 37 (ZEC 12:10 figure: personification) _reference_start_John 7:42_reference_end_ _reference_start_John 13:18_reference_end_ _reference_start_John 17:12_reference_end_ _reference_start_John 19:24_reference_end_ _reference_start_John 19:28_reference_end_ _reference_start_John 19:36_reference_end_ _reference_start_John 19:37_reference_end_ ACT 1:16 (PSA 41:9); 8:32 (ISA 53:7-8), 35 (ISA 53:7-8) _reference_start_Acts 1:16_reference_end_ _reference_start_Acts 8:32_reference_end_ _reference_start_Acts 8:35_reference_end_ ROM 4:3 (GEN 15:6 figure: personification); 9:17 (EXO 9:16 figure: personification); 10:11 (ISA 28:16 figure: personification); 11:2 (PSA 94:14; 1KI 19:10 figure: personification) _reference_start_Romans 4:3 3_reference_end_ _reference_start_Romans 9:17_reference_end_ _reference_start_Romans 10:11_reference_end_ _reference_start_Romans 11:2_reference_end_ 1CO 15:3 (ISA 53) _reference_start_1 Corinthians 15:3_reference_end_ GAL 3:8 (GEN 12:3; 18:18 figure: personification); 4:30 (GEN 21:10-12 figure: personification) _reference_start_Galatians 3:8_reference_end_ _reference_start_Galatians 4:30_reference_end_ 1TI 5:18 (DEU 25:4 figure: personification) _reference_start_1 Timothy 5:18_reference_end_ JAS 2:8 (LEV 19:18), 23 (GEN 15:6; ISA 41:8; 2CH 20:7 figure: personification) _reference_start_James 2:8_reference_end_ _reference_start_James 2:23_reference_end_ 1PE 2:6 (ISA 28:16) _reference_start_1 Peter 2:6_reference_end_ \gtrm grafw \trnl graphõ _reference_start_Luke 22:37_reference_end_ \en2 4. Where the reference is ambiguous \gtrm grafj \trnl graphæ JHN 7:38 (figure: personification); 20:9 _reference_start_John 7:38_reference_end_ _reference_start_John 20:9_reference_end_ _reference_start_1 Corinthians 15: 44_reference_end_ GAL 3:22 (figure: personification) _reference_start_Galatians 3:22_reference_end_ JAS 4:5 (figure: personification) _reference_start_James 4:5_reference_end_ _reference_start_2 Peter 1:20_reference_end_ \gtrm variouv \trnl various _reference_start_Matthew 15:6_reference_end_ _reference_start_Mark 7:13_reference_end_ _reference_start_Romans 9:6_reference_end_ \en2 5. The Word of God as combining OT Scripture and Christ's teachings \gtrm variouv \trnl various _reference_start_Luke 5:1_reference_end_ _reference_start_Luke 8:11_reference_end_ _reference_start_Luke 8:21_reference_end_ _reference_start_Luke 11:28_reference_end_ _reference_start_Acts 4:31_reference_end_ _reference_start_Acts 6:2_reference_end_ _reference_start_Acts 6:7_reference_end_ _reference_start_Acts 8:14_reference_end_ _reference_start_Acts 11:1_reference_end_ _reference_start_Acts 12:24_reference_end_ _reference_start_Acts 13:5_reference_end_ _reference_start_Acts 13:7_reference_end_ _reference_start_Acts 13:44_reference_end_ _reference_start_Acts 13:46_reference_end_ _reference_start_Acts 13:48_reference_end_ _reference_start_Acts 17:13_reference_end_ _reference_start_Acts 18:11_reference_end_ _reference_start_1 Corinthians 14:36_reference_end_ _reference_start_Ephesians 6:17_reference_end_ _reference_start_Philippians 1:14_reference_end_ _reference_start_Colossians 1:25_reference_end_ _reference_start_1 Thessalonians 2:13_reference_end_ _reference_start_1 Timothy 4:5_reference_end_ _reference_start_2 Timothy 2:9_reference_end_ _reference_start_Titus 2:5_reference_end_ _reference_start_Hebrews 4:12_reference_end_ _reference_start_Hebrews 6:5_reference_end_ _reference_start_Hebrews 13:7_reference_end_ _reference_start_1 Peter 1:23_reference_end_ _reference_start_1 John 2:14_reference_end_ _reference_start_Revelation 1:2_reference_end_ _reference_start_Revelation 1:9_reference_end_ _reference_start_Revelation 6:9_reference_end_ _reference_start_Revelation 19:13_reference_end_ _reference_start_Revelation 20:4_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( , . , , ,  ,  ,  ,  , , , , *  * * * -  ) ( = ; 0 . + +& *% < ; ; 6 0 0 . ~-  }- |-  {- z,# y, x, w+% v+$ u+ t+ s+ r+  q+* p* o)1 n) m(6 l(* k/ j/ i- h- g+/ f6 e7 d= c7 b- a- `- _, ?tfXJ<. xj\N@2$|n`RD6( \(  [(  Z(  Y, X*0 W*& V+ UB T0 S0 R0 Q0 P, O* NB MB  LB K9 J8 I3 H3 G3 F1 E1 D0 C0 B0 A. @. ?. >. =- <- ;- :+ 9+# 8* 7* 6* 5* 4(3 3( 2B 1B 0B /B .B -> ,< +:  *: ): (8 '7 &6 %4 $3 #2 "1 !.$ , , , 0 8g as a deacon \o2 h. Worshipping \o2 i. Serving without devotion \o1 3. Physical slavery \o2 a. Enslave \o2 b. Be a slave \o1 4. Physical captivity \o2 a. A captive \o2 b. Take captive \o2 c. Be a captive, captivity \o1 5. Subservience \o2 a. Make subservient to (a wrong principle) \o2 b. Be subservient, subservience \o1 6. Influence \o2 a. Influence, get direct control of \o2 b. Be influenced or controlled by something \gtrm diakonew \trnl diakoneõ \xref [L&N 35.19] \def perform duties as an assistant, serve \xref [L&N 35.37] \def take care of, doing many menial tasks \xref [L&N 46.13] \def wait upon at table, attend to the wishes of \xref [L&N 53.66] \def be a deacon \xref [L&N 57.230] \def handle finances \gtrm diakonia \trnl diakonia \xref [L&N 35.19] \def service \xref [L&N 35.21] \def role or position of serving, ministry \xref [L&N 46.13] \def waiting upon \xref [L&N 35.38] \def provision \xref [L&N 57.119] \def contribution \gtrm diakonov \trnl diakonos \xref [L&N 9 35.20] \def servant \xref [L&N 53.67] \def deacon \gtrm doulagwgew \trnl doulagõgeõ \xref [L&N 35.30] \def make ready for service, make subservient \gtrm douleia \trnl douleia \xref [L&N 37.26] \def subservience \gtrm douleuw \trnl douleuõ \xref [L&N 87.79] \def be a slave \xref [L&N 37.25] \def be controlled by \xref [L&N 35.27] \def serve as a slave \gtrm doulj \trnl doulæ \xref [L&N 87.83] \def slave woman \gtrm doulov j, on \trnl doulos æ, on \xref [L&N 37.3] \def subservient to \gtrm doulov ou \trnl doulos ou \xref [L&N 87.76] \def slave man \gtrm doulow \trnl douloõ \xref [L&N 87.82] \def enslave \gtrm douloomai \trnl douloomai \xref [L&N 37.27] \def make subservient \gtrm katadoulow \trnl katadouloõ \xref [L&N 37.27] \def make subservient \gtrm sundoulov \trnl sundoulos \xref [L&N 87.81] \def fellow slave \gtrm qerapeia \trnl therapeia \xref [L&N 46.6] \def household servants (also healing) \gtrm qerapeuw \trnl therapeuõ \xref [L&N 35.19] \def serve, help, worship (usually heal) \gtrm qera :pwn \trnl therapõn \xref [L&N 35.20] \def servant responsible for ones well being \gtrm leitourgew \trnl leitourgeõ \xref [L&N 35.22] \def to serve in a formal capacity \gtrm leitourgia \trnl leitourgia \xref [L&N 35.22] \def formal service \xref [L&N 35.25] \def prescribed ministry \xref [L&N 53.13] \def performance of religious duties \gtrm leitourgikov \trnl leitourgikos \xref [L&N 35.24] \def serving (adjective) \xref [L&N 53.13] \def to perform religious duties \gtrm leitourgov \trnl leitourgos \xref [L&N 35.23] \def specialist servant \gtrm oiketeia \trnl oiketeia \xref [L&N 46.6] \def household servants \gtrm oiketjv \trnl oiketæs \xref [L&N 46.5] \def house servant \gtrm paiv \trnl pais \xref [L&N 87.77] \def personal aid (also child, son) \gtrm paidiskj \trnl paidiskæ \xref [L&N 87.83] \def slave girl \gtrm Ãpjretew \trnl hupæreteõ \xref [L&N 35.19] \def serve, support \xref [L&N 35.32] \def provide for \gtrm Ãpjretjv \trnl hupæretæs \xref [L&N 35.20] \def assistant, support worker, off ;icer \gtrm aicmalwsia \trnl aichmalõsia \xref [L&N 55.23] \def captivity \gtrm aicmalwteuw \trnl aichmalõteuõ \xref [L&N 55.24] \def take captive \gtrm aicmalwtizw \trnl aichmalõtizõ \xref [L&N 55.24] \def take captive \xref [L&N 37.29] \def get control of \gtrm aicmalwtov \trnl aichmalõtos \xref [L&N 55.25] \def war prisoner \gtrm andrapodistjv \trnl andrapodistæs \xref [L&N 57.187] \def slave dealer \gtrm arcitriklinov \trnl architriklinos \xref [L&N 46.7] \def head servant \gtrm zugov \trnl zugos \xref [L&N 87.80] \def servitude \xref [L&N 22.27] \def load down with obligations (literally: yoke) \gtrm ›terozugew \trnl heterozugeõ \def unequally yoked \gtrm suzugov \trnl suzugos \def yokefellow, fellowservant \gtrm qurwrov \trnl thurõros \xref [L&N 46.8] \def door keeper \gtrm misqiov \trnl misthios \xref [L&N 57.174] \def hired worker \gtrm misqwtov \trnl misthõtos \xref [L&N 57.174] \def hired worker \gtrm ofqalmodoulia \trnl ophthalmodoulia \xref [L&N 35.29] \def eye service \gtrm stigma \ :18_reference_end_ \gtrm paiv \trnl pais LUK 7:7 (same person as above) _reference_start_Luke 7:7_reference_end_ \gtrm paidiskj \trnl paidiskæ _reference_start_Acts 16:16_reference_end_ GAL 4:22, 23, 30 (2 occurrences), 31 (a live metaphor) _reference_start_Galatians 4:22_reference_end_ _reference_start_Galatians 4:23_reference_end_ _reference_start_Galatians 4:30_reference_end_ _reference_start_Galatians 4:31_reference_end_ \gtrm swma \trnl sõma _reference_start_Revelation 18:13_reference_end_ \en4 2) Translated as servant \gtrm diakonov \trnl diakonos _reference_start_John 2:5_reference_end_ \gtrm doulj \trnl doulæ _reference_start_Luke 1:38_reference_end_ _reference_start_Luke 1:48_reference_end_ _reference_start_Acts 2:18_reference_end_ \gtrm doulov ou \trnl doulos ou _reference_start_Matthew 10:24_reference_end_ _reference_start_Matthew 10:25_reference_end_ _reference_start_Matthew 13:27_reference_end_ _reference_start_Matthew 13:28_reference_end_ _reference_start_Matthew 18:23_reference_end_ _ref ?erence_start_Matthew 18:26_reference_end_ _reference_start_Matthew 18:27_reference_end_ _reference_start_Matthew 18:28_reference_end_ _reference_start_Matthew 18:32_reference_end_ _reference_start_Matthew 21:34_reference_end_ _reference_start_Matthew 21:35_reference_end_ _reference_start_Matthew 21:36_reference_end_ _reference_start_Matthew 22:3_reference_end_ _reference_start_Matthew 22:4_reference_end_ _reference_start_Matthew 22:6_reference_end_ _reference_start_Matthew 22:8_reference_end_ _reference_start_Matthew 22:10_reference_end_ _reference_start_Matthew 24:45_reference_end_ _reference_start_Matthew 24:46_reference_end_ _reference_start_Matthew 24:48_reference_end_ _reference_start_Matthew 24:50_reference_end_ _reference_start_Matthew 25:14_reference_end_ _reference_start_Matthew 25:19_reference_end_ _reference_start_Matthew 25:21_reference_end_ _reference_start_Matthew 25:23_reference_end_ _reference_start_Matthew 25:26_reference_end_ _reference_start_Matthew 25:30_reference_end_ _reference_start @_Mark 12:2_reference_end_ _reference_start_Mark 12:4_reference_end_ _reference_start_Mark 13:34_reference_end_ _reference_start_Mark 14:47_reference_end_ LUK 2:29; 12:37, 38 (Implied contextually), 43, 45, 46, 47; 14:17, 21 (2 occurrences), 22, 23; 15:22; 17:7, 9, 10; 19:13, 15, 17, 22; 20:10, 11; 22:50 _reference_start_Luke 2:29_reference_end_ _reference_start_Luke 12:37_reference_end_ _reference_start_Luke 12:38_reference_end_ _reference_start_Luke 12:43_reference_end_ _reference_start_Luke 12:45_reference_end_ _reference_start_Luke 12:46_reference_end_ _reference_start_Luke 12:47_reference_end_ _reference_start_Luke 14:17_reference_end_ _reference_start_Luke 14:21_reference_end_ _reference_start_Luke 14:22_reference_end_ _reference_start_Luke 14:23_reference_end_ _reference_start_Luke 15:22_reference_end_ _reference_start_Luke 17:7_reference_end_ _reference_start_Luke 17:9_reference_end_ _reference_start_Luke 17:10_reference_end_ _reference_start_Luke 19:13_reference_end_ _reference_start_Luke 19:15_re Aference_end_ _reference_start_Luke 19:17_reference_end_ _reference_start_Luke 19:22_reference_end_ _reference_start_Luke 20:10_reference_end_ _reference_start_Luke 20:11_reference_end_ _reference_start_Luke 22:50_reference_end_ JHN 4:51; 13:16; 15:15 (2 occurrences), 20; 18:18, 26 _reference_start_John 4:51_reference_end_ _reference_start_John 13:16_reference_end_ _reference_start_John 15:15_reference_end_ _reference_start_John 15:20_reference_end_ _reference_start_John 18:18_reference_end_ _reference_start_John 18:26_reference_end_ _reference_start_Acts 2:18_reference_end_ _reference_start_Acts 4:29_reference_end_ _reference_start_Philippians 2:7_reference_end_ \gtrm sundoulov \trnl sundoulos _reference_start_Matthew 18:28_reference_end_ _reference_start_Matthew 18:29_reference_end_ _reference_start_Matthew 18:31_reference_end_ _reference_start_Matthew 18:33_reference_end_ _reference_start_Matthew 24:49_reference_end_ \gtrm paiv \trnl pais _reference_start_Matthew 8:6_reference_end_ _reference_start_Matt Bhew 8:8_reference_end_ _reference_start_Matthew 8:13_reference_end_ _reference_start_Matthew 14:2_reference_end_ _reference_start_Luke 12:45_reference_end_ _reference_start_Luke 15:26_reference_end_ \gtrm paidiskj \trnl paidiskæ MAT 26:69, 71 (Implied contextually) _reference_start_Matthew 26:69_reference_end_ _reference_start_Matthew 26:71_reference_end_ _reference_start_Mark 14:66_reference_end_ _reference_start_Mark 14:69_reference_end_ _reference_start_Luke 12:45_reference_end_ _reference_start_Luke 22:56_reference_end_ _reference_start_Acts 12:13_reference_end_ \en4 3) General bond servant of God \gtrm doulov ou \trnl doulos ou _reference_start_Colossians 4:12_reference_end_ _reference_start_1 Peter 2:16_reference_end_ _reference_start_Revelation 1:1_reference_end_ _reference_start_Revelation 2:20_reference_end_ _reference_start_Revelation 7:3_reference_end_ _reference_start_Revelation 19:2_reference_end_ _reference_start_Revelation 19:5_reference_end_ _reference_start_Revelation 22:3_reference_end_ C \gtrm doulow \trnl douloõ _reference_start_Romans 6:22_reference_end_ \gtrm sundoulov \trnl sundoulos _reference_start_Colossians 1:7_reference_end_ _reference_start_Colossians 4:7_reference_end_ _reference_start_Revelation 6:11_reference_end_ _reference_start_Revelation 19:10_reference_end_ _reference_start_Revelation 22:9_reference_end_ \en3 b. Household servant \gtrm qerapeia \trnl therapeia _reference_start_Luke 12:42_reference_end_ \gtrm oiketeia \trnl oiketeia GAL 6:10 (a figure for the church) _reference_start_Galatians 6:10_reference_end_ EPH 2:19 (a figure for the church) _reference_start_Ephesians 2:19_reference_end_ 1TI 5:8 (a figure for the church) _reference_start_1 Timothy 5:8_reference_end_ \gtrm oiketjv \trnl oiketæs _reference_start_Luke 16:13_reference_end_ _reference_start_Acts 10:7_reference_end_ 1PE 2:18 (alternate sense 1.c.) _reference_start_1 Peter 2:18_reference_end_ \gtrm paidiskj \trnl paidiskæ _reference_start_John 18:17_reference_end_ \gtrm qurwrov \trnl thurõros _referen Dce_start_Mark 13:34_reference_end_ _reference_start_John 18:16_reference_end_ _reference_start_John 18:17_reference_end_ \en3 c. General Servant \gtrm diakonov \trnl diakonos _reference_start_Matthew 20:26_reference_end_ _reference_start_Matthew 22:13_reference_end_ _reference_start_Matthew 23:11_reference_end_ _reference_start_Mark 9:35_reference_end_ _reference_start_Mark 10:43_reference_end_ _reference_start_John 12:26_reference_end_ \gtrm oiketjv \trnl oiketæs ROM 14:4 (alternate sense 1.b.) _reference_start_Romans 14:4_reference_end_ \gtrm arcitriklinov \trnl architriklinos JHN 2:8, 9 (2 occurrences) _reference_start_John 2:8_reference_end_ _reference_start_John 2:9_reference_end_ \gtrm suzugov \trnl suzugos _reference_start_Philippians 4:3_reference_end_ \en3 d. Worker, wages earner \gtrm misqiov \trnl misthios LUK 15:17, 19, 21 (only some texts have “treat me as one of your hired servants.”) _reference_start_Luke 15:17_reference_end_ _reference_start_Luke 15:19_reference_end_ _reference_start_Lu Eke 15:21_reference_end_ \gtrm misqwtov \trnl misthõtos _reference_start_Mark 1:20_reference_end_ JHN 10:12, 13 (2 occurrences) _reference_start_John 10:12_reference_end_ _reference_start_John 10:13_reference_end_ \en3 e. Attendant \gtrm Ãpjretjv \trnl hupæretæs _reference_start_Matthew 5:25_reference_end_ _reference_start_Matthew 26:58_reference_end_ _reference_start_Mark 14:54_reference_end_ _reference_start_Mark 14:65_reference_end_ _reference_start_Luke 4:20_reference_end_ _reference_start_John 7:32_reference_end_ _reference_start_John 7:45_reference_end_ _reference_start_John 7:46_reference_end_ _reference_start_John 18:3_reference_end_ _reference_start_John 18:12_reference_end_ _reference_start_John 18:18_reference_end_ _reference_start_John 18:22_reference_end_ _reference_start_John 18:36_reference_end_ _reference_start_John 19:6_reference_end_ _reference_start_Acts 5:22_reference_end_ _reference_start_Acts 5:26_reference_end_ \en3 f. Minister \gtrm diakonov \trnl diakonos _reference_start_Roman Fs 15:8_reference_end_ _reference_start_2 Corinthians 6:4_reference_end_ _reference_start_2 Corinthians 11:15_reference_end_ _reference_start_2 Corinthians 11:23_reference_end_ _reference_start_Galatians 2:17_reference_end_ _reference_start_Ephesians 3:7_reference_end_ _reference_start_Ephesians 6:21_reference_end_ _reference_start_Colossians 1:7_reference_end_ _reference_start_Colossians 1:23_reference_end_ _reference_start_Colossians 1:25_reference_end_ _reference_start_Colossians 4:7_reference_end_ 1TH 3:2 (a few manuscripts have “God's servant”) _reference_start_1 Thessalonians 3:2_reference_end_ _reference_start_1 Timothy 4:6_reference_end_ \gtrm doulov ou \trnl doulos ou _reference_start_Acts 16:17_reference_end_ _reference_start_Romans 1:1_reference_end_ _reference_start_Galatians 1:10_reference_end_ _reference_start_Ephesians 6:6_reference_end_ _reference_start_Philippians 1:1_reference_end_ _reference_start_2 Timothy 2:24_reference_end_ _reference_start_Titus 1:1_reference_end_ _reference_start_ GJames 1:1_reference_end_ _reference_start_2 Peter 1:1_reference_end_ _reference_start_Jude 1:1_reference_end_ _reference_start_Revelation 1:1_reference_end_ _reference_start_Revelation 10:7_reference_end_ _reference_start_Revelation 11:18_reference_end_ _reference_start_Revelation 15:3_reference_end_ _reference_start_Revelation 22:6_reference_end_ \gtrm qerapwn \trnl therapõn HEB 3:5 (hapax legomenon) _reference_start_Hebrews 3:5_reference_end_ \gtrm leitourgov \trnl leitourgos _reference_start_Romans 15:16_reference_end_ _reference_start_Hebrews 1:7_reference_end_ _reference_start_Hebrews 8:2_reference_end_ \gtrm Ãpjretjv \trnl hupæretæs _reference_start_Luke 1:2_reference_end_ _reference_start_Acts 26:16_reference_end_ \gtrm stigma \trnl stigma GAL 6:17 (live metaphor of 1.j.) _reference_start_Galatians 6:17_reference_end_ \en3 g. Deacon \gtrm diakonov \trnl diakonos _reference_start_Romans 16:1_reference_end_ _reference_start_Philippians 1:1_reference_end_ _reference_start_1 Timothy 3:8_reference_e Hnd_ _reference_start_1 Timothy 3:12_reference_end_ \en3 h. Slave of those in the family of God \gtrm doulov ou \trnl doulos ou _reference_start_Matthew 20:27_reference_end_ _reference_start_Mark 10:44_reference_end_ _reference_start_2 Corinthians 4:5_reference_end_ \gtrm doulow \trnl douloõ _reference_start_1 Corinthians 9:19_reference_end_ \en3 i. Servant of a spiritual power or principal \gtrm diakonov \trnl diakonos _reference_start_2 Corinthians 11:15_reference_end_ \gtrm doulow \trnl douloõ _reference_start_Romans 6:18_reference_end_ \en3 j. King's appointed official \gtrm diakonov \trnl diakonos ROM 13:4 (2 occurrences) _reference_start_Romans 13:4_reference_end_ \gtrm leitourgov \trnl leitourgos _reference_start_Romans 13:6_reference_end_ \gtrm paiv \trnl pais _reference_start_Matthew 12:18_reference_end_ LUK 1:54 (alternate sense 1.c.), 69 _reference_start_Luke 1:54_reference_end_ _reference_start_Luke 1:69_reference_end_ _reference_start_Acts 3:13_reference_end_ _reference_start_Acts 3:26_refer Ience_end_ _reference_start_Acts 4:25_reference_end_ _reference_start_Acts 4:27_reference_end_ _reference_start_Acts 4:30_reference_end_ \en2 2. The performance of duty \en3 a. Serving involuntarily \gtrm douleuw \trnl douleuõ _reference_start_Luke 15:29_reference_end_ ROM 9:12; 16:18 (alternate sense 2.d.) _reference_start_Romans 9:12_reference_end_ _reference_start_Romans 16:18_reference_end_ _reference_start_Galatians 4:8_reference_end_ \en3 b. Serving voluntarily \gtrm diakonew \trnl diakoneõ LUK 22:26 (alternate sense 2.d.), 27 _reference_start_Luke 22:26_reference_end_ _reference_start_Luke 22:27_reference_end_ JHN 12:26 (2 occurrences) _reference_start_John 12:26_reference_end_ \gtrm douleuw \trnl douleuõ MAT 6:24 (2 occurrences) _reference_start_Matthew 6:24_reference_end_ LUK 16:13 (2 occurrences) _reference_start_Luke 16:13_reference_end_ _reference_start_Acts 20:19_reference_end_ ROM 6:6; 7:6, 25; 12:11; 14:18 (alternate sense 2.e.) _reference_start_Romans 6:6_reference_end_ _reference_start_ JRomans 7:6_reference_end_ _reference_start_Romans 7:25_reference_end_ _reference_start_Romans 12:11_reference_end_ _reference_start_Romans 14:18_reference_end_ _reference_start_Galatians 5:13_reference_end_ _reference_start_Ephesians 6:7_reference_end_ _reference_start_Colossians 3:24_reference_end_ 1TH 1:9 (alternate sense 2.h.) _reference_start_1 Thessalonians 1:9_reference_end_ _reference_start_1 Timothy 6:2_reference_end_ \en3 c. Waiting upon (at a meal) \gtrm diakonew \trnl diakoneõ _reference_start_Matthew 8:15_reference_end_ _reference_start_Mark 1:31_reference_end_ _reference_start_Luke 4:39_reference_end_ _reference_start_Luke 12:37_reference_end_ _reference_start_Luke 17:8_reference_end_ _reference_start_Luke 22:27_reference_end_ _reference_start_John 12:2_reference_end_ _reference_start_Acts 6:2_reference_end_ \gtrm diakonia \trnl diakonia _reference_start_Luke 10:40_reference_end_ _reference_start_Luke 10:40_reference_end_ \en3 d. Providing for and helping, provision(s) \gtrm diakonew \trnl d Kiakoneõ MAT 4:11 (alternate sense 2.d.); 20:28 (2 occurrences) (alternate sense 2.f.); 25:44; 27:55 _reference_start_Matthew 4:11_reference_end_ _reference_start_Matthew 20:28_reference_end_ _reference_start_Matthew 25:44_reference_end_ _reference_start_Matthew 27:55_reference_end_ MRK 1:13; 10:45 (2 occurrences); 15:41 _reference_start_Mark 1:13_reference_end_ _reference_start_Mark 10:45_reference_end_ _reference_start_Mark 15:41_reference_end_ _reference_start_Luke 8:3_reference_end_ ACT 19:22 (alternate sense 1.e.) _reference_start_Acts 19:22_reference_end_ _reference_start_Romans 15:25_reference_end_ _reference_start_2 Corinthians 8:19_reference_end_ _reference_start_2 Corinthians 8:20_reference_end_ _reference_start_2 Timothy 1:18_reference_end_ _reference_start_Philemon 1:13_reference_end_ HEB 6:10 (2 occurrences) _reference_start_Hebrews 6:10_reference_end_ \gtrm diakonia \trnl diakonia ACT 6:1 (alternate sense 2.c.); 11:29 _reference_start_Acts 6:1_reference_end_ _reference_start_Acts 11:29_refer Lence_end_ ROM 12:7 (2 occurrences); 15:31 _reference_start_Romans 12:7_reference_end_ _reference_start_Romans 15:31_reference_end_ _reference_start_2 Corinthians 8:4_reference_end_ _reference_start_2 Corinthians 9:1_reference_end_ _reference_start_2 Corinthians 9:12_reference_end_ _reference_start_2 Corinthians 9:13_reference_end_ _reference_start_Revelation 2:19_reference_end_ \gtrm qerapeuw \trnl therapeuõ ACT 17:25 (alternate sense 2.h.) _reference_start_Acts 17:25_reference_end_ \gtrm leitourgew \trnl leitourgeõ _reference_start_Romans 15:27_reference_end_ \gtrm leitourgia \trnl leitourgia _reference_start_Philippians 2:30_reference_end_ \gtrm Ãpjretew \trnl hupæreteõ _reference_start_Acts 20:34_reference_end_ _reference_start_Acts 24:23_reference_end_ \gtrm Ãpjretjv \trnl hupæretæs _reference_start_Acts 13:5_reference_end_ \en3 e. Performing religious duties, such service related \gtrm leitourgew \trnl leitourgeõ _reference_start_Acts 13:2_reference_end_ \gtrm leitourgia \trnl leitourgia _re Mference_start_Luke 1:23_reference_end_ _reference_start_2 Corinthians 9:12_reference_end_ _reference_start_Philippians 2:17_reference_end_ _reference_start_Hebrews 9:21_reference_end_ \gtrm leitourgikov \trnl leitourgikos HEB 1:14 (hapax legomenon) _reference_start_Hebrews 1:14_reference_end_ \gtrm leitourgov \trnl leitourgos PHP 2:25 (alternate sense 2.d. but with focus on the spiritual nature of the service) _reference_start_Philippians 2:25_reference_end_ \en3 f. Ministering to man on God's behalf. The office of \gtrm diakonew \trnl diakoneõ _reference_start_2 Corinthians 3:3_reference_end_ _reference_start_1 Peter 1:12_reference_end_ _reference_start_1 Peter 4:10_reference_end_ _reference_start_1 Peter 4:11_reference_end_ \gtrm diakonia \trnl diakonia _reference_start_Acts 1:17_reference_end_ _reference_start_Acts 1:25_reference_end_ _reference_start_Acts 6:4_reference_end_ _reference_start_Acts 12:25_reference_end_ _reference_start_Acts 20:24_reference_end_ _reference_start_Acts 21:19_reference_end_ N _reference_start_Romans 11:13_reference_end_ 1CO 12:5; 16:15 (alternate sense 2.d.) _reference_start_1 Corinthians 12:5_reference_end_ _reference_start_1 Corinthians 16:15_reference_end_ 2CO 3:7, 8, 9 (2 occurrences); 4:1; 5:18; 6:3; 11:8 _reference_start_2 Corinthians 3:7_reference_end_ _reference_start_2 Corinthians 3:8_reference_end_ _reference_start_2 Corinthians 3:9_reference_end_ _reference_start_2 Corinthians 4:1_reference_end_ _reference_start_2 Corinthians 5:18_reference_end_ _reference_start_2 Corinthians 6:3_reference_end_ _reference_start_2 Corinthians 11:8_reference_end_ _reference_start_Ephesians 4:12_reference_end_ _reference_start_Colossians 4:17_reference_end_ _reference_start_1 Timothy 1:12_reference_end_ _reference_start_2 Timothy 4:5_reference_end_ _reference_start_2 Timothy 4:11_reference_end_ HEB 1:14 (alternate sense 2.d.) _reference_start_Hebrews 1:14_reference_end_ \gtrm diakonov \trnl diakonos _reference_start_1 Corinthians 3:5_reference_end_ _reference_start_2 Corinthians 3:6_r Oeference_end_ \gtrm douleuw \trnl douleuõ _reference_start_Philippians 2:22_reference_end_ \gtrm leitourgew \trnl leitourgeõ _reference_start_Hebrews 10:11_reference_end_ \gtrm leitourgia \trnl leitourgia _reference_start_Hebrews 8:6_reference_end_ \gtrm Ãpjretew \trnl hupæreteõ ACT 13:36 (alternate sense 2.d.) _reference_start_Acts 13:36_reference_end_ \gtrm Ãpjretjv \trnl hupæretæs _reference_start_1 Corinthians 4:1_reference_end_ \en3 g. Serving as a deacon \gtrm diakonew \trnl diakoneõ _reference_start_1 Timothy 3:10_reference_end_ _reference_start_1 Timothy 3:13_reference_end_ \en3 h. Worshipping \gtrm latreia \trnl latreia _reference_start_John 16:2_reference_end_ _reference_start_Romans 9:4_reference_end_ _reference_start_Romans 12:1_reference_end_ _reference_start_Hebrews 9:1_reference_end_ _reference_start_Hebrews 9:6_reference_end_ \gtrm latreuw \trnl latreuõ _reference_start_Matthew 4:10_reference_end_ _reference_start_Luke 1:74_reference_end_ _reference_start_Luke 2:37_reference_end_ P _reference_start_Luke 4:8_reference_end_ _reference_start_Acts 7:7_reference_end_ _reference_start_Acts 7:42_reference_end_ _reference_start_Acts 24:14_reference_end_ _reference_start_Acts 26:7_reference_end_ _reference_start_Acts 27:23_reference_end_ _reference_start_Romans 1:9_reference_end_ _reference_start_Romans 1:25_reference_end_ _reference_start_Philippians 3:3_reference_end_ _reference_start_2 Timothy 1:3_reference_end_ _reference_start_Hebrews 8:5_reference_end_ _reference_start_Hebrews 9:9_reference_end_ _reference_start_Hebrews 9:14_reference_end_ _reference_start_Hebrews 10:2_reference_end_ _reference_start_Hebrews 12:28_reference_end_ _reference_start_Hebrews 13:10_reference_end_ _reference_start_Revelation 7:15_reference_end_ _reference_start_Revelation 22:3_reference_end_ \en3 i. Serving without devotion \gtrm ofqalmodoulia \trnl ophthalmodoulia _reference_start_Ephesians 6:6_reference_end_ _reference_start_Colossians 3:22_reference_end_ \en2 3. Physical slavery \en3 a. Enslave \gtrm andr Qapodistjv \trnl andrapodistæs _reference_start_1 Timothy 1:10_reference_end_ \en3 b. Be a slave \gtrm douleia \trnl douleia GAL 4:24 (a live metaphor) _reference_start_Galatians 4:24_reference_end_ \gtrm douleuw \trnl douleuõ _reference_start_John 8:33_reference_end_ _reference_start_Acts 7:7_reference_end_ GAL 4:25 (a live metaphor) _reference_start_Galatians 4:25_reference_end_ \gtrm doulov ou \trnl doulos ou _reference_start_John 8:34_reference_end_ _reference_start_1 Timothy 6:1_reference_end_ \gtrm zugov \trnl zugos GAL 5:1 (a live metaphor) _reference_start_Galatians 5:1_reference_end_ _reference_start_1 Timothy 6:1_reference_end_ \en2 4. Physical captivity \en3 a. A captive \gtrm aicmalwsia \trnl aichmalõsia _reference_start_Ephesians 4:8_reference_end_ \gtrm aicmalwtov \trnl aichmalõtos LUK 4:18 (alternate sense 6.b.) _reference_start_Luke 4:18_reference_end_ \en3 b. Take captive \gtrm aicmalwsia \trnl aichmalõsia _reference_start_Revelation 13:10_reference_end_ \gtrm aicmalwteuw \trnl aichma Rlõteuõ _reference_start_Ephesians 4:8_reference_end_ \en3 c. Be a captive, captivity \gtrm aicmalwsia \trnl aichmalõsia _reference_start_Revelation 13:10_reference_end_ \gtrm aicmalwtizw \trnl aichmalõtizõ _reference_start_Luke 21:24_reference_end_ \en2 5. Subservience \en3 a. Make subservient to (a wrong principle) \gtrm doulagwgew \trnl doulagõgeõ _reference_start_1 Corinthians 9:27_reference_end_ \gtrm doulow \trnl douloõ _reference_start_Acts 7:6_reference_end_ \gtrm katadoulow \trnl katadouloõ _reference_start_2 Corinthians 11:20_reference_end_ _reference_start_Galatians 2:4_reference_end_ \gtrm aicmalwtizw \trnl aichmalõtizõ _reference_start_Romans 7:23_reference_end_ \gtrm zugov \trnl zugos _reference_start_Acts 15:10_reference_end_ \en3 b. Be subservient, subservience \gtrm douleia \trnl douleia ROM 8:15 (alternate sense 3.b.), 21 _reference_start_Romans 8:15_reference_end_ _reference_start_Romans 8:21_reference_end_ _reference_start_Galatians 5:1_reference_end_ _reference_start_Hebrews 2:15_reference_end_ \gtrm doulov j, on \trnl doulos æ, on ROM 6:19 (2 occurrences) _reference_start_Romans 6:19_reference_end_ \gtrm zugov \trnl zugos _reference_start_Matthew 11:29_reference_end_ _reference_start_Matthew 11:30_reference_end_ \en2 6. Influence \en3 a. Influence, get direct control of \gtrm aicmalwteuw \trnl aichmalõteuõ _reference_start_2 Timothy 3:6_reference_end_ \gtrm aicmalwtizw \trnl aichmalõtizõ _reference_start_2 Corinthians 10:5_reference_end_ \en3 b. Be influenced or controlled by something \gtrm douleuw \trnl douleuõ _reference_start_Galatians 4:9_reference_end_ _reference_start_Titus 3:3_reference_end_ \gtrm doulov ou \trnl doulos ou _reference_start_2 Peter 2:19_reference_end_ \gtrm doulow \trnl douloõ _reference_start_1 Corinthians 7:15_reference_end_ _reference_start_Galatians 4:3_reference_end_ _reference_start_Titus 2:3_reference_end_ _reference_start_2 Peter 2:19_reference_end_ \gtrm ›terozugew \trnl heterozugeõ _reference_start_2 Corinthians 6:14_reference_end_ #{1SIGNsign\see (see MIRACLE),z7SHARINGsharing\see (see FELLOWSHIP)(y))SERVE, SERVANTserve, servant\o1 1. The Performer of Duty \o2 a. Slave -- doulos \o3 1) Translated as Slave \o3 2) Translated as servant \o3 3) General bond servant of God \o2 b. Household servant \o2 c. General Servant \o2 d. Worker, wages earner \o2 e. Attendant \o2 f. Minister \o2 g. Deacon \o2 h. Slave of those in the family of God \o2 i. Servant of a spiritual power or principal \o2 j. King's appointed official \o1 2. The performance of duty \o2 a. Serving involuntarily \o2 b. Serving voluntarily \o2 c. Waiting upon (at a meal) \o2 d. Providing for and helping, provision(s) \o2 e. Performing religious duties, such service related \o2 f. Ministering to man on God's behalf. The office of \o2 g. Servin 7 ?tfXJ<. xj\N@2$|n`RD6( (! ( ( ( 2 , , + + + + +  +3 *2 * * * * * * * * * * * * * * * / ~* . }* - |* + {* & z* % y* x)/ w) " v)  u)  t( s( r( q( p( o( n(2 m(0 l(. k(- j( i( h( g( f( e($ d(# c(" b( a( `( _( ^( ](  ?tfXJ<. xj\N@2$|n`RD6( Z+. Y+- X+ W* V)A U)6 T(: S( R+ Q+ P) O* N* M* L2 K+ J+ I- H+  G) + F) # E( D( C( B+ A+ @) " ?+ >< =,  <* ;6 :1 90 8* * 7B 6B 5B 43 33 2- 1B 0B /B .B -B ,B +< *3 ), (*8 '* - &)E %)B $(G #(E "* !* - ( ( ( ( (1 ?tfXJ<. xj\N@2$|n`RD6( , , , , , *E *6 (  -  -  - /  .  / ) , ( 6 6 2 - 0 , * : : - : ~B }B |B  {B  zB yA x= w; v8 u7 t2 s1 r0 q- p, o6 n4 m3 l3 k3 j3 i1 h1 g0 f/  e/  d/ c- b, a, `+ _+$ ^+ ]+ \+ [+ ?tfXJ<. xj\N@2$|n`RD6( X/ W* V,  U,  T, S," R2 Q- P, OB N/ M/ L/  K/ J- I-  H,  G, F: E9 D7 C/ B/ A- @, ?* >)) =) - <) ;(7 :(, 9( 8( 7* ( 6* ( 5, 4+  3* 2* 1* % 0*' /) .( -6 ,4 +3 *1 )0 (- '- &- %- $- #, "* !( +  * * 0 - - * ?tfXJ<. xj\N@2$|n`RD6( : :  :  :  : : 7 2 - - , , , ,* , * *% *J ( :  :  -  -  + 6 ~6 }. |, $ {: z: y2 x/ w. v: u7 t7 s6 r3 q1 p/  o/ n/ m/ l/ k/ j/ i. h.  g- f, e, d,  c, b, a, `< _< ^< ]/ \2 [: Z:  Y2 ?tfXJ<. xj\N@2$|n`RD6( V> U> T> S< R< Q; P; O; N; M; L:  K6 J6 I/  H- G,< F+. E+" D) C(  B( A/ @= ?8 >0 =. <= ;8 :0 9/  87 7(  6(  5- 4: 30 2- 1- 0, /- .0 -/  ,, +.  ** )B (1 'B &* %1 $6 #0 "6 !+" 0 , +! 0 6 3 1 B B [t or acts of wrong doing \o2 a. To actively do wrong \o2 b. To fail or stumble (euphemisms for sinning) \o1 3. To make an occasion for someone to sin or stumble \o2 a. Generally make it easy to sin \o2 b. Provide a questionable example for someone to follow \o2 c. Tempt by deliberately enticing someone to sin \o2 d. Temptation (the noun form) \o2 e. Related ideas \o3 1) To offend and cause rejection or retaliation \o3 2) To hinder or block \o1 4. Sinner, a person who does not follow God's law \o2 a. Generally ungodly \o2 b. Religious outcasts, Jews who did not follow the Mosaic law \gtrm ƒmartia \trnl hamartia \xref [L&N 88.289] \def sin(s) \xref [L&N 88.310] \def guilt, moral consequence of sin \xref [L&N 88.118] \def essentially evil, depraved (JHN 9:34) \gtrm ƒmartwlov \trnl hamartõlos \xref [L&N 88.294] \def sinful, (with Greek “on”) \gtrm ƒmartano \trnl hamartano \xref [L&N 88.289] \def sin, trespass, offend, act contrary to God's will \gtrm ƒmartjma \trn \l hamartæma \xref [L&N 88.290] \def sin(s), that which is done contrary to God's will sinful one(s) (with Greek “ou, m”) \gtrm proamartano \trnl proamartano \xref [L&N 88.293] \def previously (already) sinned \gtrm anamartjtov \trnl anamartætos \xref [L&N 88.311] \def guiltless, without sin (JHN 8:7) \gtrm ofeiletjv \trnl opheiletæs \xref [L&N 88.300] \def sinner, offender \xref [L&N 57.222] \def debtor in the secular sense \xref [L&N 72.27] \def one who must, who ought \gtrm paraptwma \trnl paraptõma \xref [L&N 88.297] \def sin, offense, trespass, fault, false step, failure \xref [L&N 68.39] \def cease, ACT 1:25 \gtrm parabainw \trnl parabainõ \xref [L&N 36.28] \def transgress, disobey \gtrm parabasiv \trnl parabasis \xref [L&N 36.28] \def transgressing/-ion \gtrm parabatjv \trnl parabatæs \xref [L&N 36.29] \def transgressor(s) \gtrm skandalizw \trnl skandalizõ \xref [L&N 88.304] \def cause to sin \xref [L&N 31.78] \def cause to no longer believe \xref [L&N 25.279] \def give offense \note (cause ] to stumble literally) \gtrm skandalon \trnl skandalon \xref [L&N 88.306] \def sin \xref [L&N 25.181] \def offense, hindrance, that which causes opposition \xref [L&N 6.25] \def trap literally \gtrm proskoptw \trnl proskoptõ \xref [L&N 15.228] \def stumble \xref [L&N 25.182] \def take offense \xref [L&N 19.5] \def strike against \gtrm proskomma \trnl proskomma \xref [L&N 15.229] \def stumbling \xref [L&N 25.183] \def offense \xref [L&N 88.307] \def occasion to sin \gtrm proskopj \trnl proskopæ \xref [L&N 22.14] \def obstacle \xref [L&N 25.183] \def offense \xref [L&N 88.307] \def occasion to sin \gtrm ptaiw \trnl ptaiõ \xref [L&N 88.291] \def sin \gtrm apeirastov \trnl apeirastos \xref [L&N 88.309] \def cannot be tempted \gtrm ekpeirazw \trnl ekpeirazõ \xref [L&N 88.308] \def tempt \xref [L&N 27.31] \def try to trap \xref [L&N 27.46] \def test \gtrm peirazw \trnl peirazõ \xref [L&N 88.308] \def tempt \xref [L&N 27.31] \def try to trap \xref [L&N 27.46] \def examine \xref [L&N 68.58] \def attempt \gtr ^m peirasmov \trnl peirasmos \xref [L&N 88.308] \def temptation \xref [L&N 27.46] \def testing \en2 1. Sin (noun form) \en3 a. A specific act or acts of wrongdoing \gtrm ƒmartia \trnl hamartia _reference_start_Matthew 3:6_reference_end_ _reference_start_Matthew 12:31_reference_end_ _reference_start_Mark 1:5_reference_end_ _reference_start_John 8:34_reference_end_ _reference_start_John 8:46_reference_end_ _reference_start_Acts 7:60_reference_end_ _reference_start_Romans 14:23_reference_end_ _reference_start_2 Corinthians 11:7_reference_end_ _reference_start_1 Timothy 5:22_reference_end_ _reference_start_1 Timothy 5:24_reference_end_ _reference_start_Hebrews 12:1_reference_end_ JAS 2:9; 4:17; 5:15, 16 (some have paraptõma (trespasses)), 20 _reference_start_James 2:9_reference_end_ _reference_start_James 4:17_reference_end_ _reference_start_James 5:15_reference_end_ _reference_start_James 5:16_reference_end_ _reference_start_James 5:20_reference_end_ _reference_start_1 Peter 2:22_reference_end_ _reference_s _tart_1 Peter 4:8_reference_end_ 1JN 1:9 (2 occurrences); 3:4, 8; 5:16, 16, 17 (2 occurrences) _reference_start_1 John 1:9_reference_end_ _reference_start_1 John 3:4_reference_end_ _reference_start_1 John 3:8_reference_end_ _reference_start_1 John 5:16_reference_end_ _reference_start_1 John 5:16_reference_end_ _reference_start_1 John 5:17_reference_end_ _reference_start_Revelation 18:4_reference_end_ \gtrm ƒmartano \trnl hamartano _reference_start_Romans 5:16_reference_end_ _reference_start_2 Peter 2:4_reference_end_ _reference_start_1 John 3:9_reference_end_ _reference_start_1 John 5:16_reference_end_ \gtrm ƒmartjma \trnl hamartæma _reference_start_Mark 3:28_reference_end_ _reference_start_Mark 3:29_reference_end_ _reference_start_1 Corinthians 6:18_reference_end_ \gtrm paraptwma \trnl paraptõma _reference_start_Matthew 6:14_reference_end_ _reference_start_Matthew 6:15_reference_end_ ROM 5:15 (2 occurrences), 16, 16, 17, 18, 20; 11:11 (rejection of Christ), 12 _reference_start_Romans 5:15_reference_en `d_ _reference_start_Romans 5:16_reference_end_ _reference_start_Romans 5:16_reference_end_ _reference_start_Romans 5:17_reference_end_ _reference_start_Romans 5:18_reference_end_ _reference_start_Romans 5:20_reference_end_ _reference_start_Romans 11:11_reference_end_ _reference_start_Romans 11:12_reference_end_ _reference_start_Galatians 6:1_reference_end_ \gtrm skandalon \trnl skandalon MAT 13:41; 18:7 (3 occurrences) _reference_start_Matthew 13:41_reference_end_ _reference_start_Matthew 18:7_reference_end_ \itrm Implied _reference_start_Matthew 18:35_reference_end_ \en3 b. Sinfulness; being in the wrong, in a fallen state, guilty \gtrm ƒmartia \trnl hamartia _reference_start_John 1:29_reference_end_ _reference_start_John 16:8_reference_end_ _reference_start_John 16:9_reference_end_ ROM 3:20; 5:13 (2 occurrences), 20; 6:1; 7:7 (2 occurrences); 8:10 _reference_start_Romans 3:20_reference_end_ _reference_start_Romans 5:13_reference_end_ _reference_start_Romans 5:20_reference_end_ _reference_start_Romans 6 a:1_reference_end_ _reference_start_Romans 7:7_reference_end_ _reference_start_Romans 8:10_reference_end_ 2CO 5:21 (2 occurrences) _reference_start_2 Corinthians 5:21_reference_end_ _reference_start_Hebrews 9:28_reference_end_ _reference_start_Hebrews 11:25_reference_end_ _reference_start_1 Peter 4:1_reference_end_ _reference_start_2 Peter 2:14_reference_end_ _reference_start_1 John 3:4_reference_end_ _reference_start_1 John 3:5_reference_end_ \gtrm ƒmartwlov \trnl hamartõlos MRK 8:38 (alternate sense 3.a.) _reference_start_Mark 8:38_reference_end_ _reference_start_Romans 7:13_reference_end_ \gtrm ƒmartano \trnl hamartano _reference_start_1 John 5:18_reference_end_ \en3 c. An accumulated record of wrong doing which demands judgment \gtrm ƒmartia \trnl hamartia _reference_start_Matthew 1:21_reference_end_ _reference_start_Matthew 9:2_reference_end_ _reference_start_Matthew 9:5_reference_end_ _reference_start_Matthew 9:6_reference_end_ _reference_start_Matthew 26:28_reference_end_ _reference_start_Mark 1 b:4_reference_end_ _reference_start_Mark 2:5_reference_end_ _reference_start_Mark 2:7_reference_end_ _reference_start_Mark 2:9_reference_end_ _reference_start_Mark 2:10_reference_end_ _reference_start_Luke 1:77_reference_end_ _reference_start_Luke 3:3_reference_end_ _reference_start_Luke 5:20_reference_end_ _reference_start_Luke 5:21_reference_end_ _reference_start_Luke 5:23_reference_end_ _reference_start_Luke 5:24_reference_end_ _reference_start_Luke 7:47_reference_end_ _reference_start_Luke 7:48_reference_end_ _reference_start_Luke 7:49_reference_end_ _reference_start_Luke 11:4_reference_end_ _reference_start_Luke 24:47_reference_end_ JHN 8:21, 24 (2 occurrences); 9:34, 41 (2 occurrences); 15:22 (2 occurrences), 24; 19:11; 20:23 (2 occurrences) _reference_start_John 8:21_reference_end_ _reference_start_John 8:24_reference_end_ _reference_start_John 9:34_reference_end_ _reference_start_John 9:41_reference_end_ _reference_start_John 15:22_reference_end_ _reference_start_John 15:24_reference_end_ _referenc ce_start_John 19:11_reference_end_ _reference_start_John 20:23_reference_end_ _reference_start_Acts 2:38_reference_end_ _reference_start_Acts 3:19_reference_end_ _reference_start_Acts 5:31_reference_end_ _reference_start_Acts 10:43_reference_end_ _reference_start_Acts 13:38_reference_end_ _reference_start_Acts 22:16_reference_end_ _reference_start_Acts 26:18_reference_end_ _reference_start_Romans 4:7_reference_end_ _reference_start_Romans 4:8_reference_end_ _reference_start_Romans 11:27_reference_end_ _reference_start_1 Corinthians 15:3_reference_end_ _reference_start_1 Corinthians 15:17_reference_end_ _reference_start_Galatians 1:4_reference_end_ _reference_start_Ephesians 2:1_reference_end_ _reference_start_Colossians 1:14_reference_end_ _reference_start_2 Timothy 3:6_reference_end_ _reference_start_Hebrews 1:3_reference_end_ _reference_start_Hebrews 2:17_reference_end_ _reference_start_Hebrews 4:15_reference_end_ _reference_start_Hebrews 5:1_reference_end_ _reference_start_Hebrews 5:3_reference_end_ _re dference_start_Hebrews 7:27_reference_end_ _reference_start_Hebrews 8:12_reference_end_ _reference_start_Hebrews 9:26_reference_end_ _reference_start_Hebrews 9:28_reference_end_ _reference_start_Hebrews 10:2_reference_end_ _reference_start_Hebrews 10:3_reference_end_ _reference_start_Hebrews 10:4_reference_end_ _reference_start_Hebrews 10:6_reference_end_ _reference_start_Hebrews 10:8_reference_end_ _reference_start_Hebrews 10:11_reference_end_ _reference_start_Hebrews 10:12_reference_end_ _reference_start_Hebrews 10:17_reference_end_ _reference_start_Hebrews 10:18_reference_end_ _reference_start_Hebrews 10:26_reference_end_ _reference_start_Hebrews 13:11_reference_end_ _reference_start_1 Peter 2:24_reference_end_ _reference_start_1 Peter 3:18_reference_end_ _reference_start_2 Peter 1:9_reference_end_ _reference_start_1 John 1:7_reference_end_ _reference_start_1 John 1:8_reference_end_ _reference_start_1 John 2:2_reference_end_ _reference_start_1 John 2:12_reference_end_ _reference_start_1 John 3:5_referen ece_end_ _reference_start_1 John 4:10_reference_end_ _reference_start_Revelation 1:5_reference_end_ _reference_start_Revelation 18:5_reference_end_ \gtrm ƒmartjma \trnl hamartæma _reference_start_Romans 3:25_reference_end_ \gtrm paraptwma \trnl paraptõma _reference_start_Mark 11:25_reference_end_ _reference_start_Romans 4:25_reference_end_ _reference_start_2 Corinthians 5:19_reference_end_ _reference_start_Ephesians 1:7_reference_end_ _reference_start_Ephesians 2:1_reference_end_ _reference_start_Ephesians 2:5_reference_end_ COL 2:13 (2 occurrences) _reference_start_Colossians 2:13_reference_end_ \itrm Implied _reference_start_1 Thessalonians 2:16_reference_end_ _reference_start_Hebrews 9:22_reference_end_ \en3 d. A personified force in people's lives making them do wrong \gtrm ƒmartia \trnl hamartia _reference_start_John 8:34_reference_end_ ROM 3:9; 5:12, 21; 6:2, 6 (2 occurrences) ( NIV: body of sin), 7, 10, 11, 12, 13, 14, 16, 17, 18, 20, 22, 23; 7:5 (Greek: passions of sin), 8 (2 occurrences), 9, 1 f1, 13, 14, 17, 20, 23, 25; 8:2, 3 (3 occurrences) _reference_start_Romans 3:9_reference_end_ _reference_start_Romans 5:12_reference_end_ _reference_start_Romans 5:21_reference_end_ _reference_start_Romans 6:2_reference_end_ _reference_start_Romans 6:6_reference_end_ _reference_start_Romans 6:7_reference_end_ _reference_start_Romans 6:10_reference_end_ _reference_start_Romans 6:11_reference_end_ _reference_start_Romans 6:12_reference_end_ _reference_start_Romans 6:13_reference_end_ _reference_start_Romans 6:14_reference_end_ _reference_start_Romans 6:16_reference_end_ _reference_start_Romans 6:17_reference_end_ _reference_start_Romans 6:18_reference_end_ _reference_start_Romans 6:20_reference_end_ _reference_start_Romans 6:22_reference_end_ _reference_start_Romans 6:23_reference_end_ _reference_start_Romans 7:5_reference_end_ _reference_start_Romans 7:8_reference_end_ _reference_start_Romans 7:9_reference_end_ _reference_start_Romans 7:11_reference_end_ _reference_start_Romans 7:13_reference_end_ _referenc ge_start_Romans 7:14_reference_end_ _reference_start_Romans 7:17_reference_end_ _reference_start_Romans 7:20_reference_end_ _reference_start_Romans 7:23_reference_end_ _reference_start_Romans 7:25_reference_end_ _reference_start_Romans 8:2_reference_end_ _reference_start_Romans 8:3_reference_end_ 1CO 15:56 (2 occurrences) _reference_start_1 Corinthians 15:56_reference_end_ _reference_start_Galatians 2:17_reference_end_ _reference_start_Galatians 3:22_reference_end_ _reference_start_Hebrews 3:13_reference_end_ _reference_start_Hebrews 12:4_reference_end_ JAS 1:15 (2 occurrences) _reference_start_James 1:15_reference_end_ _reference_start_1 Peter 2:24_reference_end_ \itrm Implied COL 2:11 (metonymy: whole life dominated by sinful desires (ROM 6:21,8:12)) _reference_start_Colossians 2:11_reference_end_ \en2 2. To Sin, to do a specific act or acts of wrong doing \en3 a. To actively do wrong \gtrm ƒmartano \trnl hamartano _reference_start_Matthew 18:15_reference_end_ _reference_start_Matthew 18:21_reference_en hd_ _reference_start_Matthew 27:4_reference_end_ _reference_start_Luke 15:18_reference_end_ _reference_start_Luke 15:21_reference_end_ _reference_start_Luke 17:3_reference_end_ _reference_start_Luke 17:4_reference_end_ _reference_start_John 5:14_reference_end_ _reference_start_John 8:11_reference_end_ _reference_start_John 9:2_reference_end_ _reference_start_John 9:3_reference_end_ _reference_start_Acts 25:8_reference_end_ ROM 2:12 (2 occurrences); 3:23; 5:12, 14; 6:15 _reference_start_Romans 2:12_reference_end_ _reference_start_Romans 3:23_reference_end_ _reference_start_Romans 5:12_reference_end_ _reference_start_Romans 5:14_reference_end_ _reference_start_Romans 6:15_reference_end_ 1CO 6:18; 7:28 (2 occurrences), 36 (Greek: He is not sinning); 8:12 (2 occurrences); 15:34 _reference_start_1 Corinthians 6:18_reference_end_ _reference_start_1 Corinthians 7:28_reference_end_ _reference_start_1 Corinthians 7:36_reference_end_ _reference_start_1 Corinthians 8:12_reference_end_ _reference_start_1 Corinthians 1 i5:34_reference_end_ _reference_start_Ephesians 4:26_reference_end_ _reference_start_1 Timothy 5:20_reference_end_ _reference_start_Titus 3:11_reference_end_ _reference_start_Hebrews 3:17_reference_end_ _reference_start_Hebrews 10:26_reference_end_ _reference_start_1 Peter 2:20_reference_end_ 1JN 1:10; 2:1 (2 occurrences); 3:6 (2 occurrences), 8, 9 _reference_start_1 John 1:10_reference_end_ _reference_start_1 John 2:1_reference_end_ _reference_start_1 John 3:6_reference_end_ _reference_start_1 John 3:8_reference_end_ _reference_start_1 John 3:9_reference_end_ \gtrm proamartano \trnl proamartano _reference_start_2 Corinthians 12:21_reference_end_ _reference_start_2 Corinthians 13:2_reference_end_ \gtrm anamartjtov \trnl anamartætos _reference_start_John 8:7_reference_end_ \en3 b. To fail or stumble (euphemisms for sinning) \gtrm skandalon \trnl skandalon _reference_start_1 Peter 2:8_reference_end_ \gtrm proskoptw \trnl proskoptõ _reference_start_John 11:9_reference_end_ _reference_start_John 11:10_refere jnce_end_ _reference_start_Romans 9:32_reference_end_ \gtrm ptaiw \trnl ptaiõ _reference_start_Romans 11:11_reference_end_ JAS 2:10; 3:2 (2 occurrences) _reference_start_James 2:10_reference_end_ _reference_start_James 3:2_reference_end_ _reference_start_1 Peter 1:10_reference_end_ \en2 3. To make an occasion for someone to sin or stumble \en3 a. Generally make it easy to sin \gtrm skandalizw \trnl skandalizõ _reference_start_Matthew 5:29_reference_end_ _reference_start_Matthew 5:30_reference_end_ _reference_start_Matthew 18:6_reference_end_ _reference_start_Matthew 18:8_reference_end_ _reference_start_Matthew 18:9_reference_end_ _reference_start_Mark 9:42_reference_end_ _reference_start_Mark 9:43_reference_end_ _reference_start_Mark 9:45_reference_end_ _reference_start_Mark 9:47_reference_end_ _reference_start_Luke 17:2_reference_end_ _reference_start_2 Corinthians 11:29_reference_end_ \gtrm skandalon \trnl skandalon MAT 18:7 (3 occurrences) _reference_start_Matthew 18:7_reference_end_ _reference_start_ k1 John 2:10_reference_end_ \en3 b. Provide a questionable example for someone to follow \gtrm skandalizw \trnl skandalizõ 1CO 8:13 (2 occurrences) _reference_start_1 Corinthians 8:13_reference_end_ \gtrm skandalon \trnl skandalon _reference_start_Romans 14:13_reference_end_ \gtrm proskoptw \trnl proskoptõ _reference_start_Romans 14:21_reference_end_ \gtrm proskomma \trnl proskomma _reference_start_Romans 14:13_reference_end_ _reference_start_Romans 14:20_reference_end_ _reference_start_1 Corinthians 8:9_reference_end_ \en3 c. Tempt by deliberately enticing someone to sin \gtrm skandalon \trnl skandalon _reference_start_Revelation 2:14_reference_end_ \gtrm apeirastov \trnl apeirastos _reference_start_James 1:13_reference_end_ \gtrm ekpeirazw \trnl ekpeirazõ _reference_start_Matthew 4:7_reference_end_ \gtrm peirazw \trnl peirazõ _reference_start_Matthew 4:1_reference_end_ _reference_start_Matthew 4:3_reference_end_ _reference_start_Mark 1:13_reference_end_ _reference_start_Luke 4:2_reference_end_ _refer lence_start_1 Corinthians 7:5_reference_end_ _reference_start_1 Corinthians 10:13_reference_end_ _reference_start_Galatians 6:1_reference_end_ 1TH 3:5 (2 occurrences) _reference_start_1 Thessalonians 3:5_reference_end_ _reference_start_Hebrews 2:18_reference_end_ _reference_start_Hebrews 4:15_reference_end_ _reference_start_James 1:13_reference_end_ _reference_start_James 1:14_reference_end_ \en3 d. Temptation (the noun form) \gtrm skandalon \trnl skandalon _reference_start_Luke 17:1_reference_end_ \gtrm peirasmov \trnl peirasmos _reference_start_Matthew 6:13_reference_end_ _reference_start_Matthew 26:41_reference_end_ _reference_start_Mark 14:38_reference_end_ _reference_start_Luke 4:13_reference_end_ _reference_start_Luke 8:13_reference_end_ _reference_start_Luke 11:4_reference_end_ _reference_start_Luke 22:40_reference_end_ _reference_start_Luke 22:46_reference_end_ 1CO 10:13 (2 occurrences) _reference_start_1 Corinthians 10:13_reference_end_ _reference_start_1 Timothy 6:9_reference_end_ \itrm Implied _ mreference_start_1 Corinthians 7:2_reference_end_ \en3 e. Related ideas \en4 1) To offend and cause rejection or retaliation \gtrm proskomma \trnl proskomma _reference_start_Romans 9:32_reference_end_ _reference_start_1 Peter 2:8_reference_end_ \gtrm ekpeirazw \trnl ekpeirazõ _reference_start_Luke 4:12_reference_end_ \gtrm peirazw \trnl peirazõ _reference_start_Acts 5:9_reference_end_ \en4 2) To hinder or block \gtrm skandalon \trnl skandalon _reference_start_Matthew 16:23_reference_end_ _reference_start_Romans 9:33_reference_end_ _reference_start_Romans 16:17_reference_end_ _reference_start_1 Corinthians 1:23_reference_end_ _reference_start_Galatians 5:11_reference_end_ \gtrm proskopj \trnl proskopæ _reference_start_2 Corinthians 6:3_reference_end_ \en2 4. Sinner, a person who does not follow God's law \en3 a. Generally ungodly \gtrm ƒmartwlov \trnl hamartõlos _reference_start_Matthew 26:45_reference_end_ _reference_start_Mark 14:41_reference_end_ _reference_start_Luke 5:8_reference_end_ _reference_s ntart_Luke 13:2_reference_end_ _reference_start_Luke 24:7_reference_end_ _reference_start_John 9:16_reference_end_ _reference_start_John 9:24_reference_end_ _reference_start_John 9:25_reference_end_ _reference_start_John 9:31_reference_end_ _reference_start_Romans 3:7_reference_end_ _reference_start_Romans 5:8_reference_end_ _reference_start_Romans 5:19_reference_end_ _reference_start_Galatians 2:15_reference_end_ _reference_start_Galatians 2:17_reference_end_ 1TI 1:9, 15 (2 occurrences) _reference_start_1 Timothy 1:9_reference_end_ _reference_start_1 Timothy 1:15_reference_end_ _reference_start_Hebrews 7:26_reference_end_ _reference_start_Hebrews 12:3_reference_end_ _reference_start_James 4:8_reference_end_ _reference_start_James 5:20_reference_end_ _reference_start_1 Peter 4:18_reference_end_ _reference_start_Jude 1:15_reference_end_ \gtrm ofeiletjv \trnl opheiletæs _reference_start_Luke 13:4_reference_end_ \en3 b. Religious outcasts, Jews who did not follow the Mosaic law \gtrm ƒmartwlov \trnl hamartlos _reference_start_Matthew 9:10_reference_end_ _reference_start_Matthew 9:11_reference_end_ _reference_start_Matthew 9:13_reference_end_ _reference_start_Matthew 11:19_reference_end_ MRK 2:15, 16 (2 occurrences), 17 _reference_start_Mark 2:15_reference_end_ _reference_start_Mark 2:16_reference_end_ _reference_start_Mark 2:17_reference_end_ LUK 5:30, 32; 6:32, 33, 34 (2 occurrences); 7:34, 37, 39; 15:1, 2, 7, 10; 18:13; 19:7 _reference_start_Luke 5:30_reference_end_ _reference_start_Luke 5:32_reference_end_ _reference_start_Luke 6:32_reference_end_ _reference_start_Luke 6:33_reference_end_ _reference_start_Luke 6:34_reference_end_ _reference_start_Luke 7:34_reference_end_ _reference_start_Luke 7:37_reference_end_ _reference_start_Luke 7:39_reference_end_ _reference_start_Luke 15:1_reference_end_ _reference_start_Luke 15:2_reference_end_ _reference_start_Luke 15:7_reference_end_ _reference_start_Luke 15:10_reference_end_ _reference_start_Luke 18:13_reference_end_ _reference_start_Luke 19:7_reference_end_ qY/ .q%)STUMBLEstumble\see (see SIN)e)SPIRITspirit\see (see also EVIL SPIRIT, HOLY SPIRIT) \o1 1. A person's spirit \o2 a. A person in relation to God and the supern b'' SOUL, SOULISHsoul, soulish\see (see also LIFE) \o1 1. A person's inner being, the self \o2 |9!!CSON OF MANson of man\o1 1. A title from Daniel 7:13-14 used exclusively of Jesus Christ \o2 u ~/SKYsky\see (see HEAVEN)'}1SISTERsister\see (see BROTHER)J|==+SIN, STUMBLE, TEMPTATIONsin, stumble, temptation\see (see also GENTILE, JUST, LAW, UNCLEAN) \o1 1. Sin (noun form) \o2 a. A specific act or acts of wrongdoing \o2 b. Sinfulness; being in the wrong, in a fallen state, guilty \o2 c. An accumulated record of wrong doing which demands judgment \o2 d. A personified force in people's lives making them do wrong \o1 2. To Sin, to do a specific ac Z ?tfXJ<. xj\N@2$|n`RD6( *1 *0 */ * * * * * *M ) ) ) ) ) ( (  (  (  ( > - )& > ~> }= |< {:  z:  y/ x- w- v- u- t- s- r+ q+ p+ o(# n( m( ) l0 k- j- i- h- g- f- e- d- c( b( a. `) _) ^> ]> \= [- ZB Y> X> W> ?tfXJ<. xj\N@2$|n`RD6( T1 S1 R/ Q- P)  O- NB MB L> K> J> I> H> G> F= E< D< C: B:  A:  @:  ?: >: =:  <:  ;:  ::  9:  8:  7:  6: 5: 4: 3: 2: 1: 0: /7 .3 -1 ,0 +. *. )-  (- '- &, %, $, & #, + ", !, ,& + + + + + ) + " + + */ *  ?tfXJ<. xj\N@2$|n`RD6( . .$ . . - - - - - , +  +  + + * * * * ( ( ( ~3 }< |; {:  z: y0 x0 w.8 v- u- t- s- r- q- p- o- n- m- l- k- j- i- h- g- f- e- d- c- b- a- `- _- ^- ]- \- [- Z- Y+" X:  W4 V3 U1 ?tfXJ<. xj\N@2$|n`RD6( R* Q* P)& O() N( M* L; K; J: I: H4 G0 F. E. D* C) B( A( @( ?; >B =. <- ;- :- 9- 8. 7> 6( 5/  4* 3) / 2) - 1) + 0) * /( .( -( ,( +( *< ); (; '- &- %+ $+ #< "+ !/  /  > > > > > < :  : 8 6 1 ." ?tfXJ<. xj\N@2$|n`RD6( +5 + + * * * * * * *' *% *" *" *! * * * ) ) ~) }(  |( {( z( y*  xA w< v; u; t:  s: r6 q6 p0 o0 n- m- l- k+  j+  i+  h+  g* f*  e* d)) c(- b/ a0 `. _- ^- ! ]( \, [* Z< Y- X. W6 V. U*. T*( S*  v a. “Son of Man” used to indicate his heavenly origin \o2 b. “Son of Man” used to indicate His humanity \o2 c. “Son of Man” representing God to all mankind (not just Jews) \o2 d. “Son of Man” used to indicate His humility \o2 e. “Son of Man” in authority as God's Messiah in earth and heaven \o1 2. A typical human being, humanity, not necessarily excluding Christ \gtrm Ãiov tou anqrwpou \trnl huios tou anthrõpou \xref [L&N 9.3] \def Son of Man \en2 1. A title from Daniel 7:13-14 used exclusively of Jesus Christ \en3 a. “Son of Man” used to indicate his heavenly origin \gtrm Ãiov tou anqrwpou \trnl huios tou anthrõpou _reference_start_John 3:13_reference_end_ _reference_start_John 3:14_reference_end_ _reference_start_John 6:53_reference_end_ _reference_start_John 6:62_reference_end_ _reference_start_John 8:28_reference_end_ \en3 b. “Son of Man” used to indicate His humanity \gtrm Ãiov tou anqrwpou \trnl huios tou anthrõpou _reference_start_Matthew 11:19_reference_end_ _refer wence_start_Luke 7:34_reference_end_ \en3 c. “Son of Man” representing God to all mankind (not just Jews) \gtrm Ãiov tou anqrwpou \trnl huios tou anthrõpou _reference_start_Matthew 12:40_reference_end_ _reference_start_Matthew 13:37_reference_end_ _reference_start_Matthew 20:28_reference_end_ _reference_start_Mark 10:45_reference_end_ _reference_start_Luke 11:30_reference_end_ _reference_start_Luke 19:10_reference_end_ \en3 d. “Son of Man” used to indicate His humility \gtrm Ãiov tou anqrwpou \trnl huios tou anthrõpou _reference_start_Matthew 8:20_reference_end_ _reference_start_Matthew 17:12_reference_end_ _reference_start_Matthew 17:22_reference_end_ _reference_start_Matthew 20:18_reference_end_ _reference_start_Matthew 26:2_reference_end_ _reference_start_Matthew 26:45_reference_end_ _reference_start_Mark 8:31_reference_end_ _reference_start_Mark 9:12_reference_end_ _reference_start_Mark 9:31_reference_end_ _reference_start_Mark 10:33_reference_end_ _reference_start_Mark 14:41_reference_end_ _re xference_start_Luke 9:22_reference_end_ _reference_start_Luke 9:44_reference_end_ _reference_start_Luke 9:58_reference_end_ _reference_start_Luke 18:31_reference_end_ _reference_start_Luke 24:7_reference_end_ \en3 e. “Son of Man” in authority as God's Messiah in earth and heaven \gtrm Ãiov tou anqrwpou \trnl huios tou anthrõpou MAT 9:6; 10:23; 12:8, 32; 13:41; 16:13, 27, 28; 17:9; 19:28; 24:27, 30 (2 occurrences), 37, 39, 44; 25:31; 26:24 (2 occurrences), 64 _reference_start_Matthew 9:6_reference_end_ _reference_start_Matthew 10:23_reference_end_ _reference_start_Matthew 12:8_reference_end_ _reference_start_Matthew 12:32_reference_end_ _reference_start_Matthew 13:41_reference_end_ _reference_start_Matthew 16:13_reference_end_ _reference_start_Matthew 16:27_reference_end_ _reference_start_Matthew 16:28_reference_end_ _reference_start_Matthew 17:9_reference_end_ _reference_start_Matthew 19:28_reference_end_ _reference_start_Matthew 24:27_reference_end_ _reference_start_Matthew 24:30_reference_end_ _refer yence_start_Matthew 24:37_reference_end_ _reference_start_Matthew 24:39_reference_end_ _reference_start_Matthew 24:44_reference_end_ _reference_start_Matthew 25:31_reference_end_ _reference_start_Matthew 26:24_reference_end_ _reference_start_Matthew 26:64_reference_end_ MRK 2:10, 28; 8:38; 9:9; 13:26; 14:21 (2 occurrences), 62 _reference_start_Mark 2:10_reference_end_ _reference_start_Mark 2:28_reference_end_ _reference_start_Mark 8:38_reference_end_ _reference_start_Mark 9:9_reference_end_ _reference_start_Mark 13:26_reference_end_ _reference_start_Mark 14:21_reference_end_ _reference_start_Mark 14:62_reference_end_ _reference_start_Luke 5:24_reference_end_ _reference_start_Luke 6:5_reference_end_ _reference_start_Luke 6:22_reference_end_ _reference_start_Luke 9:26_reference_end_ _reference_start_Luke 12:8_reference_end_ _reference_start_Luke 12:10_reference_end_ _reference_start_Luke 12:40_reference_end_ _reference_start_Luke 17:22_reference_end_ _reference_start_Luke 17:24_reference_end_ _reference_start_Luke 17:26_reference_end_ _reference_start_Luke 17:30_reference_end_ _reference_start_Luke 18:8_reference_end_ _reference_start_Luke 21:27_reference_end_ _reference_start_Luke 21:36_reference_end_ _reference_start_Luke 22:22_reference_end_ _reference_start_Luke 22:48_reference_end_ _reference_start_Luke 22:69_reference_end_ JHN 1:51; 5:27; 6:27; 9:35; 12:23, 34 (2 occurrences); 13:31 _reference_start_John 1:51_reference_end_ _reference_start_John 5:27_reference_end_ _reference_start_John 6:27_reference_end_ _reference_start_John 9:35_reference_end_ _reference_start_John 12:23_reference_end_ _reference_start_John 12:34_reference_end_ _reference_start_John 13:31_reference_end_ _reference_start_Acts 7:56_reference_end_ \en2 2. A typical human being, humanity, not necessarily excluding Christ \gtrm Ãiov tou anqrwpou \trnl huios tou anthrõpou _reference_start_Hebrews 2:6_reference_end_ _reference_start_Revelation 1:13_reference_end_ _reference_start_Revelation 14:14_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( P* O* N* M* L* K* ( J* I*  H*  G* F* E* D)> C) B)  A) @)& ?) >) =(@ <( ;( :(, 9(' 8(% 7( 6( 5( 4( 3( 2( 1( 0( ) /( .(  -(  ,(  +* ** )* : (* , '*  &)) %) ! $)  #) ") !(- ( ( ( ( ( * *  ) - ( ( % ( ( *" (  + +> ?tfXJ<. xj\N@2$|n`RD6( (  @ = < < < < < ; ; :  : ' : /  +  * *! ~*  })% |)$ {)# z( y( x(  w( ' v(  u= t:  s, r, q+  p+  o*# n)" m(& l4 k2 j2 i: h4 g3 f2 e1 d, c*  b)  a(% `B _B ^: ],8 \+  [+ " Z+  Y+ # X+ W+ V+3 U*E T*0 S* R*$ Q* } a. A person's inner longings and desires \o2 b. A person's feelings or emotions \o2 c. The self in its relationship with God \o1 2. A synonym for the personal pronouns \o1 3. A person, an individual \o2 a. A living person \o2 b. A dead person \o1 4. The physical life of an individual \o1 5. Soulish \o2 a. Natural, physical \o2 b. Unspiritual, worldly \gtrm yucj \trnl psuchæ \xref [L&N 26.4] \def inner self \xref [L&N 23.88] \def life \xref [L&N 9.20] \def person \gtrm zjtew tjn yucjn \trnl zæteõ tæn psuchæn \xref [L&N 20.66] \def want to kill \gtrm sumyucov \trnl sumpsuchos \xref [L&N 26.6] \def harmonious (hapax legomenon) \gtrm isoyucov \trnl isopsuchos \xref [L&N 26.5] \def similarly minded (hapax legomenon) \gtrm oligoyucov \trnl oligopsuchos \xref [L&N 25.290] \def discouraged (hapax legomenon) \gtrm yucikov \trnl psuchikos \xref [L&N 79.2] \def physical (adjective) \xref [L&N 79.5] \def natural \xref [L&N 41.41] \def worldly \en2 1. A person's inner being, the self \en3 a. A ~person's inner longings and desires \gtrm yucj \trnl psuchæ _reference_start_Matthew 22:37_reference_end_ _reference_start_Mark 12:30_reference_end_ _reference_start_Luke 10:27_reference_end_ _reference_start_Acts 4:32_reference_end_ _reference_start_Ephesians 6:6_reference_end_ _reference_start_Philippians 1:27_reference_end_ COL 3:23 (literally: from the soul) _reference_start_Colossians 3:23_reference_end_ _reference_start_1 Thessalonians 5:23_reference_end_ _reference_start_Hebrews 4:12_reference_end_ \gtrm sumyucov \trnl sumpsuchos PHP 2:2 (literally: like-minded) _reference_start_Philippians 2:2_reference_end_ \gtrm isoyucov \trnl isopsuchos PHP 2:20 (literally: like-minded) _reference_start_Philippians 2:20_reference_end_ \gtrm oligoyucov \trnl oligopsuchos _reference_start_1 Thessalonians 5:14_reference_end_ \en3 b. A person's feelings or emotions \gtrm yucj \trnl psuchæ _reference_start_Matthew 26:38_reference_end_ _reference_start_Mark 14:34_reference_end_ _reference_start_Luke 2:35_reference_ end_ JHN 10:24 (literally: our souls in suspense); 12:27 _reference_start_John 10:24_reference_end_ _reference_start_John 12:27_reference_end_ _reference_start_Acts 14:2_reference_end_ _reference_start_Acts 14:22_reference_end_ HEB 12:3 (literally: fainting in your souls) _reference_start_Hebrews 12:3_reference_end_ _reference_start_2 Peter 2:8_reference_end_ \en3 c. The self in its relationship with God \gtrm yucj \trnl psuchæ MAT 10:28 (2 occurrences), 39 (2 occurrences) ( alternate sense 2.); 11:29; 16:25 (2 occurrences) ( alternate sense 2.), 26 (2 occurrences) ( alternate sense 2.) _reference_start_Matthew 10:28_reference_end_ _reference_start_Matthew 10:39_reference_end_ _reference_start_Matthew 11:29_reference_end_ _reference_start_Matthew 16:25_reference_end_ _reference_start_Matthew 16:26_reference_end_ MRK 8:35 (2 occurrences) ( alternate sense 2.), 36 (alternate sense 2.), 37 (alternate sense 2.) _reference_start_Mark 8:35_reference_end_ _reference_start_Mark 8:36_reference_end_ _reference_sta rt_Mark 8:37_reference_end_ LUK 9:24 (2 occurrences) ( alternate sense 2.); 17:33 (2 occurrences) ( alternate sense 2. by implication); 21:19 _reference_start_Luke 9:24_reference_end_ _reference_start_Luke 17:33_reference_end_ _reference_start_Luke 21:19_reference_end_ JHN 12:25 (2 occurrences) ( alternate sense 2.) _reference_start_John 12:25_reference_end_ _reference_start_2 Corinthians 12:15_reference_end_ _reference_start_Hebrews 6:19_reference_end_ _reference_start_Hebrews 10:39_reference_end_ _reference_start_Hebrews 13:17_reference_end_ _reference_start_James 1:21_reference_end_ _reference_start_James 5:20_reference_end_ _reference_start_1 Peter 1:9_reference_end_ _reference_start_1 Peter 1:22_reference_end_ _reference_start_1 Peter 2:11_reference_end_ _reference_start_1 Peter 2:25_reference_end_ _reference_start_1 Peter 4:19_reference_end_ _reference_start_2 Peter 2:14_reference_end_ _reference_start_3 John 1:2_reference_end_ \en2 2. A synonym for the personal pronouns \gtrm yucj \trnl psuchæ _re ference_start_Matthew 12:18_reference_end_ LUK 1:46; 12:19 (2 occurrences) _reference_start_Luke 1:46_reference_end_ _reference_start_Luke 12:19_reference_end_ ACT 2:27 (alternate sense 4.); 15:24 _reference_start_Acts 2:27_reference_end_ _reference_start_Acts 15:24_reference_end_ _reference_start_1 Thessalonians 2:8_reference_end_ _reference_start_Hebrews 10:38_reference_end_ _reference_start_Revelation 18:14_reference_end_ \en2 3. A person, an individual \en3 a. A living person \gtrm yucj \trnl psuchæ _reference_start_Acts 2:41_reference_end_ _reference_start_Acts 2:43_reference_end_ _reference_start_Acts 3:23_reference_end_ _reference_start_Acts 7:14_reference_end_ _reference_start_Acts 27:37_reference_end_ _reference_start_Romans 2:9_reference_end_ _reference_start_Romans 13:1_reference_end_ _reference_start_1 Corinthians 15:45_reference_end_ _reference_start_1 Peter 3:20_reference_end_ _reference_start_Revelation 16:3_reference_end_ _reference_start_Revelation 18:13_reference_end_ \en3 b. A dead per son \gtrm yucj \trnl psuchæ _reference_start_Revelation 6:9_reference_end_ _reference_start_Revelation 20:4_reference_end_ \en2 4. The physical life of an individual \gtrm yucj \trnl psuchæ MAT 2:20; 6:25 (2 occurrences); 20:28 _reference_start_Matthew 2:20_reference_end_ _reference_start_Matthew 6:25_reference_end_ _reference_start_Matthew 20:28_reference_end_ _reference_start_Mark 3:4_reference_end_ _reference_start_Mark 10:45_reference_end_ _reference_start_Luke 6:9_reference_end_ _reference_start_Luke 12:20_reference_end_ _reference_start_Luke 12:22_reference_end_ _reference_start_Luke 12:23_reference_end_ _reference_start_Luke 14:26_reference_end_ _reference_start_John 10:11_reference_end_ _reference_start_John 10:15_reference_end_ _reference_start_John 10:17_reference_end_ _reference_start_John 13:37_reference_end_ _reference_start_John 13:38_reference_end_ _reference_start_John 15:13_reference_end_ _reference_start_Acts 15:26_reference_end_ _reference_start_Acts 20:10_reference_end_ _reference_start_Acts 20:24_reference_end_ _reference_start_Acts 27:10_reference_end_ _reference_start_Acts 27:22_reference_end_ _reference_start_Romans 11:3_reference_end_ _reference_start_Romans 16:4_reference_end_ 2CO 1:23 (literally: my life) _reference_start_2 Corinthians 1:23_reference_end_ _reference_start_Philippians 2:30_reference_end_ _reference_start_1 John 3:16_reference_end_ REV 8:9 (literally: soul bearing); 12:11 _reference_start_Revelation 8:9_reference_end_ _reference_start_Revelation 12:11_reference_end_ \en2 5. Soulish \en3 a. Natural, physical \gtrm yucikov \trnl psuchikos 1CO 15:44 (2 occurrences), 46 _reference_start_1 Corinthians 15:44_reference_end_ _reference_start_1 Corinthians 15:46_reference_end_ \en3 b. Unspiritual, worldly \gtrm yucikov \trnl psuchikos _reference_start_1 Corinthians 2:14_reference_end_ _reference_start_James 3:15_reference_end_ _reference_start_Jude 1:19_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( N+ M+ L+ K* J*P I*/ H) G) F() E( DA C; B. A.. @., ?B >B => <2 ;/ :- 9-  8, 7, 6, 5, 4, 3+ 2+ & 1+ % 0+  /+  .+ -* ,*  +*  **  )* () - ') &( %( $( #B "B !B B < .- -  - ,% , , ,+ ,) B : & 4 , , *  *. atural world \o2 b. A person under the influence of an external spiritual being \o2 c. A person's inner state, his state in relation to God \o2 d. A person's mental attitude \o2 e. The immortal inner person that leaves the body at death \o1 2. An independent and invisible being \o2 a. The category of spirits in general \o2 b. A ghost, a bodiless spirit, usually a dead person's spirit \o1 3. A supernatural impulse or inspiration \o1 4. Wind or breath \o1 5. Impersonal idea or element \o1 6. Unclear category of spirit (according to KBT) \o1 7. Adverbs, adjectives: To do with the Holy Spirit \o2 a. Originating from the Holy Spirit \o2 b. Through the instrumentality of the Holy Spirit \o1 8. Person(s) controlled by the Holy Spirit \o1 9. Communicating a hidden meaning, allegorical \gtrm pneuma \trnl pneuma \xref [L&N 12.18] \def Holy Spirit \xref [L&N 12.33] \def spirit \xref [L&N 12.37] \def evil spirit \xref [L&N 12.42] \def ghost \xref [L&N 26.9] \def inner being \xref [L&N 30.6] \d ef way of thinking \xref (others) \def wind, breath, enthusiasm, etc.) \gtrm pneumatikov \trnl pneumatikos \xref [L&N 12.21] \def from the Spirit (adjective) \xref [L&N 26.10] \def spiritual \xref [L&N 41.40] \def of spiritual conduct \xref [L&N 79.3] \def not physical \xref [L&N 79.6] \def supernatural \xref [L&N 12.44] \def supernatural powers \gtrm pneumatikwv \trnl pneumatikõs \xref [L&N 12.21] \def from the Spirit (adverb) \xref [L&N 26.10] \def spiritual \xref [L&N 33.17] \def figuratively \gtrm fantasma \trnl phantasma \xref [L&N 12.42] \def ghost (noun) \gtrm stoiceion \trnl stoicheion \xref [L&N 2.1] \def natural substance \xref [L&N 12.43] \def supernatural powers \xref [L&N 58.19] \def basic principles \gtrm logikov \trnl logikos \xref [L&N 73.5] \def true to real nature \en2 1. A person's spirit \en3 a. A person in relation to God and the supernatural world \gtrm pneuma \trnl pneuma _reference_start_Matthew 5:3_reference_end_ _reference_start_Matthew 26:41_reference_end_ _reference_start_Mark 2:8_reference_end_ _reference_start_Mark 8:12_reference_end_ LUK 1:47, 80; 13:11 (alternate sense 1.b.) _reference_start_Luke 1:47_reference_end_ _reference_start_Luke 1:80_reference_end_ _reference_start_Luke 13:11_reference_end_ _reference_start_John 3:6_reference_end_ _reference_start_John 4:23_reference_end_ _reference_start_John 4:24_reference_end_ _reference_start_John 11:33_reference_end_ _reference_start_John 13:21_reference_end_ ACT 17:16; 19:21 (literally: in his spirit); 20:22 (alternate sense 2.b.) _reference_start_Acts 17:16_reference_end_ _reference_start_Acts 19:21_reference_end_ _reference_start_Acts 20:22_reference_end_ _reference_start_Romans 1:9_reference_end_ _reference_start_Romans 8:16_reference_end_ 1CO 2:11; 5:3, 4, 5; 7:34; 14:14, 15 (2 occurrences), 16; 16:18 _reference_start_1 Corinthians 2:11_reference_end_ _reference_start_1 Corinthians 5:3_reference_end_ _reference_start_1 Corinthians 5:4_reference_end_ _reference_start_1 Corinthians 5:5_reference_end_ _reference_start_1 Cor inthians 7:34_reference_end_ _reference_start_1 Corinthians 14:14_reference_end_ _reference_start_1 Corinthians 14:15_reference_end_ _reference_start_1 Corinthians 14:16_reference_end_ _reference_start_1 Corinthians 16:18_reference_end_ _reference_start_2 Corinthians 2:13_reference_end_ _reference_start_2 Corinthians 7:1_reference_end_ _reference_start_2 Corinthians 7:13_reference_end_ _reference_start_Galatians 6:18_reference_end_ _reference_start_Philippians 3:3_reference_end_ _reference_start_Philippians 4:23_reference_end_ _reference_start_Colossians 2:5_reference_end_ _reference_start_1 Thessalonians 5:23_reference_end_ _reference_start_2 Timothy 4:22_reference_end_ _reference_start_Philemon 1:25_reference_end_ _reference_start_Hebrews 4:12_reference_end_ _reference_start_Hebrews 12:9_reference_end_ _reference_start_James 4:5_reference_end_ _reference_start_1 Peter 3:18_reference_end_ _reference_start_1 Peter 4:6_reference_end_ _reference_start_Revelation 22:6_reference_end_ \en3 b. A person under th e influence of an external spiritual being \gtrm pneuma \trnl pneuma 1JN 4:1 (2 occurrences) ( alternate sense 2.a.), 2 (alternate sense 2.a.), 3 (2 occurrences) (alternate sense 2.a.), 6 (2 occurrences) _reference_start_1 John 4:1_reference_end_ _reference_start_1 John 4:2_reference_end_ _reference_start_1 John 4:3_reference_end_ _reference_start_1 John 4:6_reference_end_ _reference_start_Revelation 19:10_reference_end_ \en3 c. A person's inner state, his state in relation to God \gtrm pneuma \trnl pneuma _reference_start_Luke 1:17_reference_end_ _reference_start_Acts 18:25_reference_end_ ROM 8:15 (2 occurrences) ( alternate sense 2.a.); 11:8; 12:11 (alternate sense 2.b.) _reference_start_Romans 8:15_reference_end_ _reference_start_Romans 11:8_reference_end_ _reference_start_Romans 12:11_reference_end_ 1CO 2:12 (alternate sense 2.a.) _reference_start_1 Corinthians 2:12_reference_end_ _reference_start_2 Corinthians 4:13_reference_end_ _reference_start_Ephesians 1:17_reference_end_ _reference_start_Ephesia ns 4:23_reference_end_ _reference_start_Philippians 1:27_reference_end_ 2TI 1:7 (2 occurrences) _reference_start_2 Timothy 1:7_reference_end_ \en3 d. A person's mental attitude \gtrm pneuma \trnl pneuma _reference_start_1 Corinthians 4:21_reference_end_ _reference_start_2 Corinthians 12:18_reference_end_ _reference_start_Galatians 6:1_reference_end_ _reference_start_1 Peter 3:4_reference_end_ \en3 e. The immortal inner person that leaves the body at death \gtrm pneuma \trnl pneuma _reference_start_Matthew 27:50_reference_end_ _reference_start_Luke 8:55_reference_end_ _reference_start_Luke 23:46_reference_end_ _reference_start_John 19:30_reference_end_ _reference_start_Acts 7:59_reference_end_ _reference_start_Hebrews 12:23_reference_end_ _reference_start_James 2:26_reference_end_ \en2 2. An independent and invisible being \en3 a. The category of spirits in general \gtrm pneuma \trnl pneuma _reference_start_John 4:24_reference_end_ _reference_start_Acts 23:8_reference_end_ _reference_start_Acts 23:9_refere nce_end_ _reference_start_1 Corinthians 6:17_reference_end_ _reference_start_1 Corinthians 15:45_reference_end_ _reference_start_2 Corinthians 11:4_reference_end_ _reference_start_Hebrews 1:7_reference_end_ _reference_start_Hebrews 1:14_reference_end_ _reference_start_Revelation 1:4_reference_end_ _reference_start_Revelation 3:1_reference_end_ _reference_start_Revelation 4:5_reference_end_ _reference_start_Revelation 5:6_reference_end_ \en3 b. A ghost, a bodiless spirit, usually a dead person's spirit \gtrm pneuma \trnl pneuma _reference_start_Luke 24:37_reference_end_ _reference_start_Luke 24:39_reference_end_ \gtrm fantasma \trnl phantasma _reference_start_Matthew 14:26_reference_end_ _reference_start_Mark 6:49_reference_end_ \en2 3. A supernatural impulse or inspiration \gtrm pneuma \trnl pneuma _reference_start_1 Corinthians 12:10_reference_end_ _reference_start_1 Corinthians 14:12_reference_end_ _reference_start_1 Corinthians 14:32_reference_end_ _reference_start_2 Thessalonians 2:2_reference_end_ \e n2 4. Wind or breath \gtrm pneuma \trnl pneuma _reference_start_2 Thessalonians 2:8_reference_end_ _reference_start_Revelation 11:11_reference_end_ _reference_start_Revelation 13:15_reference_end_ \en2 5. Impersonal idea or element \gtrm stoiceion \trnl stoicheion _reference_start_Galatians 4:3_reference_end_ _reference_start_Galatians 4:9_reference_end_ _reference_start_Colossians 2:8_reference_end_ _reference_start_Colossians 2:20_reference_end_ _reference_start_Hebrews 5:12_reference_end_ _reference_start_2 Peter 3:10_reference_end_ _reference_start_2 Peter 3:12_reference_end_ \en2 6. Unclear category of spirit (according to KBT) \gtrm pneuma \trnl pneuma JHN 6:63 (2 occurrences); 7:39 (2 occurrences) _reference_start_John 6:63_reference_end_ _reference_start_John 7:39_reference_end_ _reference_start_Acts 6:3_reference_end_ _reference_start_Acts 6:10_reference_end_ _reference_start_Romans 1:4_reference_end_ _reference_start_Romans 2:29_reference_end_ _reference_start_Romans 8:10_reference_end_ _referen ce_start_1 Corinthians 14:2_reference_end_ _reference_start_2 Corinthians 6:6_reference_end_ _reference_start_2 Thessalonians 2:13_reference_end_ _reference_start_1 Timothy 3:16_reference_end_ _reference_start_1 Peter 1:2_reference_end_ _reference_start_1 Peter 3:19_reference_end_ \en2 7. Adverbs, adjectives: To do with the Holy Spirit \en3 a. Originating from the Holy Spirit \gtrm pneumatikov \trnl pneumatikos _reference_start_Romans 1:11_reference_end_ _reference_start_Romans 7:14_reference_end_ _reference_start_Romans 15:27_reference_end_ 1CO 2:13; 9:11; 12:1; 14:1; 15:44 (2 occurrences), 46 (2 occurrences) _reference_start_1 Corinthians 2:13_reference_end_ _reference_start_1 Corinthians 9:11_reference_end_ _reference_start_1 Corinthians 12:1_reference_end_ _reference_start_1 Corinthians 14:1_reference_end_ _reference_start_1 Corinthians 15:44_reference_end_ _reference_start_1 Corinthians 15:46_reference_end_ _reference_start_Ephesians 1:3_reference_end_ _reference_start_Ephesians 5:19_reference_end_ _reference_start_Colossians 1:9_reference_end_ _reference_start_Colossians 3:16_reference_end_ 1PE 2:5 (2 occurrences) _reference_start_1 Peter 2:5_reference_end_ \gtrm logikov \trnl logikos _reference_start_Romans 12:1_reference_end_ _reference_start_1 Peter 2:2_reference_end_ \en3 b. Through the instrumentality of the Holy Spirit \gtrm pneumatikwv \trnl pneumatikõs _reference_start_1 Corinthians 2:14_reference_end_ \en2 8. Person(s) controlled by the Holy Spirit \gtrm pneumatikov \trnl pneumatikos _reference_start_1 Corinthians 2:13_reference_end_ _reference_start_1 Corinthians 2:15_reference_end_ _reference_start_1 Corinthians 3:1_reference_end_ _reference_start_1 Corinthians 14:37_reference_end_ _reference_start_Galatians 6:1_reference_end_ \en2 9. Communicating a hidden meaning, allegorical \gtrm pneumatikov \trnl pneumatikos 1CO 10:3, 4 (2 occurrences) _reference_start_1 Corinthians 10:3_reference_end_ _reference_start_1 Corinthians 10:4_reference_end_ _reference_start_Revelation 11:8_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( . , , + ; :  ,; + *. *7 (2 < 0 /  . ~7 }2 |1 {1 z/ y. x- w-  v- u, t* sB r> q> p> o> nB m< l< k; j: i: h9 g7 f4 e3 d2 c2 b0 a/ `/ _/ ^. ]. \. [. Z." Y. X. W. V. U- T- S, R, Q, P+  O+ ! ?tfXJ<. xj\N@2$|n`RD6( L.  K.  J0 I.% H. G. F. E. D< C-  B< A3 @3 ?1 >1 =.. <., ;. :.  9. 8. 7- 6- 5- 4< 3< 26 15 0/ /. .- -- ,- +, *, )+' (+? '= &= %: $3 #3 "0 !0 B  B 5 5 . . . )1 ( *' *% B B B B : : /  .- ?tfXJ<. xj\N@2$|n`RD6( (  (  ( ( (. :  * * * ,% * B B ~; }, |, {,  z*  y*1 x)& w)$ v)# u) t+ s+ * r+  q,  p, o+ n+; m* l*. k* j* i* + h*) g* f* e*, d*& c*! b* a* `* _* ^) ]) ' \) [) Z)' Y) X) W) V(" U( T( 6 S( R(  Q( # P( O( N( MB  enter for religious activity/meeting Place \gtrm sunagoge \trnl sunagoge _reference_start_Matthew 4:23_reference_end_ _reference_start_Matthew 6:2_reference_end_ _reference_start_Matthew 6:5_reference_end_ _reference_start_Matthew 9:35_reference_end_ _reference_start_Matthew 10:17_reference_end_ _reference_start_Matthew 12:9_reference_end_ _reference_start_Matthew 13:54_reference_end_ _reference_start_Matthew 23:6_reference_end_ _reference_start_Matthew 23:34_reference_end_ _reference_start_Mark 1:21_reference_end_ _reference_start_Mark 1:23_reference_end_ _reference_start_Mark 1:29_reference_end_ _reference_start_Mark 1:39_reference_end_ _reference_start_Mark 3:1_reference_end_ _reference_start_Mark 6:2_reference_end_ _reference_start_Mark 12:39_reference_end_ _reference_start_Mark 13:9_reference_end_ _reference_start_Luke 4:15_reference_end_ _reference_start_Luke 4:16_reference_end_ _reference_start_Luke 4:20_reference_end_ _reference_start_Luke 4:28_reference_end_ _reference_start_Luke 4:33_reference_e nd_ _reference_start_Luke 4:38_reference_end_ _reference_start_Luke 4:44_reference_end_ _reference_start_Luke 6:6_reference_end_ _reference_start_Luke 7:5_reference_end_ _reference_start_Luke 8:41_reference_end_ _reference_start_Luke 11:43_reference_end_ _reference_start_Luke 12:11_reference_end_ _reference_start_Luke 13:10_reference_end_ _reference_start_Luke 20:46_reference_end_ _reference_start_Luke 21:12_reference_end_ _reference_start_John 6:59_reference_end_ _reference_start_John 18:20_reference_end_ ACT 6:9 (of Freedmen (i.e. a group responsible for the accusations which led to the stoning of Stephen)); 9:2 (metonymy of the subject, i.e. synagogue for the members of the synagogue), 20; 13:5, 14, 43 (metonymy of the subject (i.e. synagogue for the members of the synagogue)); 14:1; 15:21; 17:1, 10, 17; 18:4, 7, 19, 26; 19:8; 22:19; 24:12; 26:11 _reference_start_Acts 6:9_reference_end_ _reference_start_Acts 9:2_reference_end_ \gtrm aposunagogov \trnl aposunagogos _reference_start_John 9:22_reference_end_ _reference_start_John 12:42_reference_end_ _reference_start_John 16:2_reference_end_ \en2 2. Synagogue ruler \gtrm arcisunagogov \trnl archisunagogos _reference_start_Mark 5:22_reference_end_ _reference_start_Mark 5:35_reference_end_ _reference_start_Mark 5:36_reference_end_ _reference_start_Mark 5:38_reference_end_ _reference_start_Luke 8:49_reference_end_ _reference_start_Luke 13:14_reference_end_ _reference_start_Acts 13:15_reference_end_ _reference_start_Acts 18:8_reference_end_ _reference_start_Acts 18:17_reference_end_ \en2 3. An assembly of Christians \gtrm sunagoge \trnl sunagoge _reference_start_James 2:2_reference_end_ \en2 4. A group of people under Satan's power who opposed Christianity \gtrm sunagoge \trnl sunagoge REV 2:9 (of Satan (i.e. Jews who are opposing Christianity and are under the power of Satan)); 3:9 (of Satan (i.e. Jews who are opposing Christianity and are under the power of Satan)) _reference_start_Revelation 2:9_reference_end_ _reference_start_Revelation 3:9_reference_end_ yTAXtax\o1 1. Registration, census count (primarily for tax purposes) \o1 2. Tax collectors \o1 3. Tax office \o1 4. Tax, duty and revenue in general \o1 5. Tribute to a king \o1 6. Temple tax \gtrm apografj \trnl apographæ \xref [L&N 33.43] \def census (with a view to taxation) \gtrm apografw \trnl apographõ \xref [L&N 33.42] \def register (usually with a view to taxing people) \gtrm did =!!MTABERNACLEtabernacle\see (see TEMPLE, TENT (OF GOD))SSYNAGOGUEsynagogue\o1 1. Center for religious activity/meeting Place \o1 2. Synagogue ruler \o1 3. An assembly of Christians \o1 4. A group of people under Satan's power who opposed Christianity \gtrm sunagoge \trnl sunagoge \xref [L&N 11.44] \def assembly \xref [L&N 11.45] \def congregation of Jews \xref [L&N 7.20] \def synagogue \gtrm arcisunagogov \trnl archisunagogos \xref [L&N 53.93] \def leader of a synagogue \gtrm aposunagogov \trnl aposunagogos \xref [L&N 11.46] \def expelled from synagogue \en2 1. C racmon \trnl didrachmon \xref [L&N 57.181] \def temple tax \gtrm kjnsov \trnl kænsos \xref [L&N 57.180] \def male pole tax \gtrm telov \trnl telos \xref [L&N 57.179] \def tax, duty, revenue \xref (others) \def end, result, purpose, completely) \gtrm telwnjv \trnl telõnæs \xref [L&N 57.184] \def tax collector \gtrm telwnion \trnl telõnion \xref [L&N 57.183] \def tax office \gtrm forov \trnl phoros \xref [L&N 57.182] \def tribute \gtrm arcitelwnjv \trnl architelõnæs \xref [L&N 57.185] \def chief tax collector \en2 1. Registration, census count (primarily for tax purposes) \gtrm apografj \trnl apographæ _reference_start_Luke 2:2_reference_end_ _reference_start_Acts 5:37_reference_end_ \gtrm apografw \trnl apographõ _reference_start_Luke 2:1_reference_end_ _reference_start_Luke 2:3_reference_end_ _reference_start_Luke 2:5_reference_end_ HEB 12:23 (Exemption: Not for taxation!) _reference_start_Hebrews 12:23_reference_end_ \en2 2. Tax collectors \gtrm telwnjv \trnl telõnæs _reference_start_Matthew 5: 46_reference_end_ _reference_start_Matthew 9:10_reference_end_ _reference_start_Matthew 9:11_reference_end_ _reference_start_Matthew 10:3_reference_end_ _reference_start_Matthew 11:19_reference_end_ _reference_start_Matthew 18:17_reference_end_ _reference_start_Matthew 21:31_reference_end_ _reference_start_Matthew 21:32_reference_end_ MRK 2:15, 16 (2 occurrences) _reference_start_Mark 2:15_reference_end_ _reference_start_Mark 2:16_reference_end_ _reference_start_Luke 5:27_reference_end_ _reference_start_Luke 5:29_reference_end_ _reference_start_Luke 5:30_reference_end_ _reference_start_Luke 7:29_reference_end_ _reference_start_Luke 7:34_reference_end_ _reference_start_Luke 15:1_reference_end_ _reference_start_Luke 18:10_reference_end_ _reference_start_Luke 18:11_reference_end_ _reference_start_Luke 18:13_reference_end_ \gtrm arcitelwnjv \trnl architelõnæs _reference_start_Luke 19:2_reference_end_ \en2 3. Tax office \gtrm telwnion \trnl telõnion _reference_start_Matthew 9:9_reference_end_ _reference_start_Mark 2:14_reference_end_ _reference_start_Luke 5:27_reference_end_ \en2 4. Tax, duty and revenue in general \gtrm kjnsov \trnl kænsos _reference_start_Matthew 17:25_reference_end_ _reference_start_Matthew 22:17_reference_end_ _reference_start_Matthew 22:19_reference_end_ _reference_start_Mark 12:14_reference_end_ \gtrm telov \trnl telos _reference_start_Matthew 17:25_reference_end_ _reference_start_Romans 13:7_reference_end_ \gtrm telwnjv \trnl telõnæs _reference_start_Luke 3:12_reference_end_ \gtrm forov \trnl phoros _reference_start_Romans 13:7_reference_end_ \en2 5. Tribute to a king \gtrm kjnsov \trnl kænsos _reference_start_Matthew 17:25_reference_end_ \gtrm telov \trnl telos _reference_start_Matthew 17:25_reference_end_ \gtrm forov \trnl phoros _reference_start_Luke 20:22_reference_end_ _reference_start_Luke 23:2_reference_end_ _reference_start_Romans 13:6_reference_end_ \en2 6. Temple tax \gtrm didracmon \trnl didrachmon MAT 17:24 (2 occurrences) _reference_start_Matthew 17:24_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( J*5 I*5 H*4 G*& F*% E* D* C*/ B*- A* @* ?*. >*% =* <)1 ;)  :)  9) # 8)  7)  6)  5) 4(7 3( 2( 1( 0( /( .(  -(  ,( +( *-  )* (* '( &( %-  $* #-  "( !)  ( ( ( * ) ( * * * * * *" * * * * ) ) ( ( ( Uses \o2 a. Christ's Body as a dwelling place of God \o2 b. God's People as a dwelling place of God \o2 c. Temple equated with God and the Lamb \o1 5. Tabernacle \gtrm ³eron \trnl hieron \xref [L&N 7.16] \def temple \gtrm stratjgov tou ³erou \trnl stratægos tou hierou \xref [L&N 37.91] \def commander of the temple guard \gtrm naov \trnl naos \xref [L&N 7.15] \def temple \xref [L&N 6.100] \def model of a shrine \gtrm oikon tou qeou \trnl oikon tou theou \xref [L&N 7.2] \def house of God, temple \gtrm ƒgiov \trnl hagios \xref [L&N 7.18] \def sanctuary \gtrm newkopov \trnl neõkopos \xref [L&N 53.95] \def temple-keeper, worshipper \gtrm eidwleion \trnl eidõleion \xref [L&N 7.19] \def temple of an idol \en2 1. The Temple in Jerusalem (whole or part) \gtrm ³eron \trnl hieron MAT 4:5; 12:5, 6; 21:12 (2 occurrences), 14, 15, 23; 24:1 (2 occurrences); 26:55 _reference_start_Matthew 4:5_reference_end_ _reference_start_Matthew 12:5_reference_end_ _reference_start_Matthew 12:6_reference_end_ _referen ce_start_Matthew 21:12_reference_end_ _reference_start_Matthew 21:14_reference_end_ _reference_start_Matthew 21:15_reference_end_ _reference_start_Matthew 21:23_reference_end_ _reference_start_Matthew 24:1_reference_end_ _reference_start_Matthew 26:55_reference_end_ MRK 11:11, 15 (2 occurrences), 16, 27; 12:35; 13:1, 3; 14:49 _reference_start_Mark 11:11_reference_end_ _reference_start_Mark 11:15_reference_end_ _reference_start_Mark 11:16_reference_end_ _reference_start_Mark 11:27_reference_end_ _reference_start_Mark 12:35_reference_end_ _reference_start_Mark 13:1_reference_end_ _reference_start_Mark 13:3_reference_end_ _reference_start_Mark 14:49_reference_end_ _reference_start_Luke 2:27_reference_end_ _reference_start_Luke 2:37_reference_end_ _reference_start_Luke 2:46_reference_end_ _reference_start_Luke 4:9_reference_end_ _reference_start_Luke 18:10_reference_end_ _reference_start_Luke 19:45_reference_end_ _reference_start_Luke 19:47_reference_end_ _reference_start_Luke 20:1_reference_end_ _reference_s tart_Luke 21:5_reference_end_ _reference_start_Luke 21:37_reference_end_ _reference_start_Luke 21:38_reference_end_ _reference_start_Luke 22:52_reference_end_ _reference_start_Luke 22:53_reference_end_ _reference_start_Luke 24:53_reference_end_ _reference_start_John 2:14_reference_end_ _reference_start_John 2:15_reference_end_ _reference_start_John 5:14_reference_end_ _reference_start_John 7:14_reference_end_ _reference_start_John 7:28_reference_end_ _reference_start_John 8:2_reference_end_ _reference_start_John 8:20_reference_end_ _reference_start_John 8:59_reference_end_ _reference_start_John 10:23_reference_end_ _reference_start_John 11:56_reference_end_ _reference_start_John 18:20_reference_end_ ACT 2:46; 3:1, 2 (2 occurrences), 3, 8, 10; 4:1; 5:20, 21, 24, 25, 42; 21:26, 27, 28, 29, 30; 22:17; 24:6, 12, 18; 25:8; 26:21 _reference_start_Acts 2:46_reference_end_ _reference_start_Acts 3:1_reference_end_ _reference_start_Acts 3:2_reference_end_ _reference_start_Acts 3:3_reference_end_ _reference_start_Ac ts 3:8_reference_end_ _reference_start_Acts 3:10_reference_end_ _reference_start_Acts 4:1_reference_end_ _reference_start_Acts 5:20_reference_end_ _reference_start_Acts 5:21_reference_end_ _reference_start_Acts 5:24_reference_end_ _reference_start_Acts 5:25_reference_end_ _reference_start_Acts 5:42_reference_end_ _reference_start_Acts 21:26_reference_end_ _reference_start_Acts 21:27_reference_end_ _reference_start_Acts 21:28_reference_end_ _reference_start_Acts 21:29_reference_end_ _reference_start_Acts 21:30_reference_end_ _reference_start_Acts 22:17_reference_end_ _reference_start_Acts 24:6_reference_end_ _reference_start_Acts 24:12_reference_end_ _reference_start_Acts 24:18_reference_end_ _reference_start_Acts 25:8_reference_end_ _reference_start_Acts 26:21_reference_end_ _reference_start_Romans 2:22_reference_end_ 1CO 9:13 (2 occurrences) _reference_start_1 Corinthians 9:13_reference_end_ \gtrm naov \trnl naos MAT 23:16 (2 occurrences), 17, 21, 35; 27:5, 51 _reference_start_Matthew 23:16_reference_end _ _reference_start_Matthew 23:17_reference_end_ _reference_start_Matthew 23:21_reference_end_ _reference_start_Matthew 23:35_reference_end_ _reference_start_Matthew 27:5_reference_end_ _reference_start_Matthew 27:51_reference_end_ _reference_start_Mark 15:38_reference_end_ _reference_start_Luke 1:9_reference_end_ _reference_start_Luke 1:21_reference_end_ _reference_start_Luke 1:22_reference_end_ _reference_start_Luke 23:45_reference_end_ _reference_start_John 2:20_reference_end_ _reference_start_2 Thessalonians 2:4_reference_end_ \gtrm oikon tou qeou \trnl oikon tou theou MAT 21:13 (2 occurrences) _reference_start_Matthew 21:13_reference_end_ MRK 11:17 (2 occurrences) _reference_start_Mark 11:17_reference_end_ LUK 11:51; 19:46 (2 occurrences) _reference_start_Luke 11:51_reference_end_ _reference_start_Luke 19:46_reference_end_ JHN 2:16 (2 occurrences), 17 _reference_start_John 2:16_reference_end_ _reference_start_John 2:17_reference_end_ \gtrm ƒgiov \trnl hagios _reference_start_Hebrews 9:8_reference_end _ _reference_start_Hebrews 13:11_reference_end_ \en2 2. The Temple in Heaven \gtrm naov \trnl naos REV 3:12; 7:15; 11:1, 2, 19 (2 occurrences); 14:15, 17; 15:5, 6, 8 (2 occurrences); 16:1, 17; 21:22 _reference_start_Revelation 3:12_reference_end_ _reference_start_Revelation 7:15_reference_end_ _reference_start_Revelation 11:1_reference_end_ _reference_start_Revelation 11:2_reference_end_ _reference_start_Revelation 11:19_reference_end_ _reference_start_Revelation 14:15_reference_end_ _reference_start_Revelation 14:17_reference_end_ _reference_start_Revelation 15:5_reference_end_ _reference_start_Revelation 15:6_reference_end_ _reference_start_Revelation 15:8_reference_end_ _reference_start_Revelation 16:1_reference_end_ _reference_start_Revelation 16:17_reference_end_ _reference_start_Revelation 21:22_reference_end_ \gtrm oikon tou qeou \trnl oikon tou theou _reference_start_Hebrews 10:21_reference_end_ \gtrm ƒgiov \trnl hagios HEB 8:2, 5 (Implied contextually); 9:24; 10:19 _reference_start_Hebrews 8:2_r eference_end_ _reference_start_Hebrews 8:5_reference_end_ _reference_start_Hebrews 9:24_reference_end_ _reference_start_Hebrews 10:19_reference_end_ \en2 3. Temples of the gods \gtrm ³eron \trnl hieron ACT 14:13 (or naos) (Implied contextually); 19:27 _reference_start_Acts 14:13_reference_end_ _reference_start_Acts 19:27_reference_end_ \gtrm naov \trnl naos _reference_start_Acts 17:24_reference_end_ _reference_start_Acts 19:24_reference_end_ \gtrm newkopov \trnl neõkopos ACT 19:35 (hapax legomenon (temple keeper is one word in Greek)) _reference_start_Acts 19:35_reference_end_ \gtrm eidwleion \trnl eidõleion 1CO 8:10 (hapax legomenon (idol's temple is one word in Greek)) _reference_start_1 Corinthians 8:10_reference_end_ \en2 4. Figurative Uses \en3 a. Christ's Body as a dwelling place of God \gtrm naov \trnl naos _reference_start_Matthew 26:61_reference_end_ _reference_start_Matthew 27:40_reference_end_ _reference_start_Mark 14:58_reference_end_ _reference_start_Mark 15:29_reference_end_ _reference_start_John 2:19_reference_end_ _reference_start_John 2:21_reference_end_ \en3 b. God's People as a dwelling place of God \gtrm naov \trnl naos 1CO 3:16, 17 (2 occurrences); 6:19 _reference_start_1 Corinthians 3:16_reference_end_ _reference_start_1 Corinthians 3:17_reference_end_ _reference_start_1 Corinthians 6:19_reference_end_ 2CO 6:16 (2 occurrences) _reference_start_2 Corinthians 6:16_reference_end_ _reference_start_Ephesians 2:21_reference_end_ \gtrm oikon tou qeou \trnl oikon tou theou _reference_start_1 Timothy 3:15_reference_end_ _reference_start_1 Peter 4:17_reference_end_ \en3 c. Temple equated with God and the Lamb \gtrm naov \trnl naos _reference_start_Revelation 21:22_reference_end_ \en2 5. Tabernacle \gtrm oikon tou qeou \trnl oikon tou theou MAT 12:4 (TBL) _reference_start_Matthew 12:4_reference_end_ MRK 2:26 (TBL) _reference_start_Mark 2:26_reference_end_ LUK 6:4 (TBL) _reference_start_Luke 6:4_reference_end_ \gtrm ƒgiov \trnl hagios HEB 9:1 (TBL) _reference_start_Hebrews 9:1_reference_end_ ff% 1 TRUSTtrust\see (see BELIEVE)F??!TENT (OF GOD), TABERNACLEtent (of god), tabernacle\o1 1. Shelter or dwelling place for God and/or man \o1 2. Portable sanctuary \o1 3. Shrine \o1 4. Figurative uses \o2 a. Earthly human body \o2 b. Prototype of heavenly tabernacle \o2 c. Those who dwell in Heaven \o1 5. Verbal uses \gtrm skjnj \trnl skænæ \xref [L&N +!!)TEMPTATIONtemptation\see (see SIN)BOOwTEMPLE, HOUSE (OF GOD), SANCTUARYtemple, house (of god), sanctuary\see (see also TENT (OF GOD)) \o1 1. The Temple in Jerusalem (whole or part) \o1 2. The Temple in Heaven \o1 3. Temples of the gods \o1 4. Figurative ?tfXJ<. xj\N@2$|n`RD6( B B  B  B  B B : :  + + *. ~* 3 })  |( {5 z+ y*- x* w* v* u)& t(3 s( r(# q( p( o( n. m- l, k, j, i, h, g, f, e, d, c, b, a,* `, _, ^, ], \, [, Z, Y, X, W, V,. U+ T+ 8 S+  R+; Q+ P+ O+ N+ M+ L+ K+ ?tfXJ<. xj\N@2$|n`RD6( H: G= F= E/ D/ C,+ B:  A* @) ?(  >: =:  <:  ;:  ::  9:  8: 7,, 6,. 5+ 4B 3: 2, 1* 0* ! /)  .( -:  ,* +) *(  )B (< '6 &1 %/ $. #. ". !+ + ) ): (( (= . ,# , , , , :  :  : : :  B B B B B B B 7.9] \def tent \xref [L&N 7.17] \def tabernacle tent \gtrm skjnopjgia \trnl skænopægia \xref [L&N 51.10] \def festival of the tents \gtrm skjnov \trnl skænos \xref [L&N 8.5] \def body \gtrm skjnoma \trnl skænoma \xref [L&N 7.8] \def dwelling \xref [L&N 85.77] \def dwelling place \xref [L&N 8.5] \def body \gtrm skjnopoiov \trnl skænopoios \xref [L&N 88.224] \def stubborn \gtrm skjnow \trnl skænoõ \xref [L&N 85.75] \def take up residence \gtrm oikon tou qeou \trnl oikon tou theou \xref [L&N 7.2] \def house of God \gtrm ƒgiov \trnl hagios \xref [L&N 7.18] \def sanctuary \en2 1. Shelter or dwelling place for God and/or man \gtrm skjnj \trnl skænæ _reference_start_Matthew 17:4_reference_end_ _reference_start_Mark 9:5_reference_end_ _reference_start_Luke 9:33_reference_end_ _reference_start_Luke 16:9_reference_end_ _reference_start_Acts 15:16_reference_end_ _reference_start_Hebrews 11:9_reference_end_ REV 21:3 (of God) _reference_start_Revelation 21:3_reference_end_ \gtrm skjnopjgia \trnl skænopægi a _reference_start_John 7:2_reference_end_ \gtrm skjnoma \trnl skænoma ACT 7:46 (of God) _reference_start_Acts 7:46_reference_end_ \en2 2. Portable sanctuary \gtrm skjnj \trnl skænæ _reference_start_Acts 7:44_reference_end_ HEB 8:5; 9:2 (outer tent only), 3 (inner tent only), 6 (outer tent only), 8 (outer tent only), 21; 13:10 _reference_start_Hebrews 8:5_reference_end_ _reference_start_Hebrews 9:2_reference_end_ _reference_start_Hebrews 9:3_reference_end_ _reference_start_Hebrews 9:6_reference_end_ _reference_start_Hebrews 9:8_reference_end_ _reference_start_Hebrews 9:21_reference_end_ _reference_start_Hebrews 13:10_reference_end_ \gtrm oikon tou qeou \trnl oikon tou theou _reference_start_Matthew 12:4_reference_end_ _reference_start_Mark 2:26_reference_end_ _reference_start_Luke 6:4_reference_end_ \gtrm ƒgiov \trnl hagios _reference_start_Hebrews 9:1_reference_end_ \en2 3. Shrine \gtrm skjnj \trnl skænæ _reference_start_Acts 7:43_reference_end_ \en2 4. Figurative uses \en3 a. Earthly human body \gtrm skjnov \trnl skænos _reference_start_2 Corinthians 5:1_reference_end_ _reference_start_2 Corinthians 5:4_reference_end_ \gtrm skjnoma \trnl skænoma _reference_start_2 Peter 1:13_reference_end_ _reference_start_2 Peter 1:14_reference_end_ \en3 b. Prototype of heavenly tabernacle \gtrm skjnj \trnl skænæ _reference_start_Hebrews 8:2_reference_end_ _reference_start_Hebrews 9:11_reference_end_ _reference_start_Revelation 15:5_reference_end_ \en3 c. Those who dwell in Heaven \gtrm skjnj \trnl skænæ REV 13:6 (metonymy: the place is given for those who dwell there, this figure is contextually explained) _reference_start_Revelation 13:6_reference_end_ \en2 5. Verbal uses \gtrm skjnopoiov \trnl skænopoios _reference_start_Acts 18:3_reference_end_ \gtrm skjnow \trnl skænoõ _reference_start_John 1:14_reference_end_ _reference_start_Revelation 7:15_reference_end_ _reference_start_Revelation 12:12_reference_end_ _reference_start_Revelation 13:6_reference_end_ _reference_start_Revelation 21:3_reference_end_ ?tfXJ<. xj\N@2$|n`RD6(  :   8  8  7  7  7  7  7  7 ~ 6 } 6 | 6 { 6 z 6 y 5 x 5 w 5 v 3 u 3 t 1 s 1 r 0 q 0 p 0 o / n - m - l - k - j +% i + h + g + f +, e + d > c :  b :  a : ` 3 _ , ^ , ] +# \ 1 [ 0 Z 6 Y 1 X /  W -  V , U + T +. S +- R +( QB PB  OB NB M+ L, KB  JB I: a \trnl alætheia \xref [L&N 72.2] \def truth \xref [L&N 70.4] \def really \gtrm aljqeuw \trnl alætheuõ \xref [L&N 33.251] \def speak truth \gtrm aljqjv \trnl alæthæs \xref [L&N 72.1] \def true \xref [L&N 70.3] \def real \xref [L&N 88.39] \def honest \gtrm aljqinov \trnl alæthinos \xref [L&N 70.3] \def real \xref [L&N 72.1] \def true \xref [L&N 73.2] \def genuine \gtrm aljqwv \trnl alæthõs \xref [L&N 70.3] \def really \gtrm amjn \trnl amæn \xref [L&N 72.6] \def truly \gtrm asfaleia \trnl asphaleia \xref [L&N 31.41] \def certainty \xref [L&N 21.9] \def safety \gtrm asfaljv \trnl asphalæs \xref [L&N 31.42] \def certain \xref [L&N 21.10] \def safe \gtrm asfalov \trnl asphalos \xref [L&N 31.42] \def assuredly \gtrm gar \trnl gar \xref [L&N not found] \def indeed \xref [L&N 89.23] \def because \xref [L&N 91.1] \def then \gtrm gnjsiov \trnl gnæsios \xref [L&N 73.1] \def genuine \gtrm djpou \trnl dæpou \xref [L&N 91.7] \def indeed HEB 2:16 \gtrm kai \trnl kai \xref [L&N 91.12] \def yet, indeed \xref ( others) \def and, and then, and also \gtrm men \trnl men \xref [L&N 91.6] \def indeed (an affirmative particle) \xref (others) \def sometimes “and”, “but”, or left apparently untranslated \gtrm menougge \trnl menounge \xref [L&N 89.128] \def on the contrary \gtrm ontwv \trnl ontõs \xref [L&N 70.2] \def really \gtrm alla \trnl alla \xref [L&N 91.11] \def certainly \xref (others) \def but, and, and yet \gtrm ósper \trnl hõsper \xref [L&N 64.13] \def just as (cited where consistency is in focus) \gtrm eiper \trnl eiper \xref [L&N 89.66] \def if indeed \gtrm nai \trnl nai \xref [L&N 69.1] \def yes \gtrm kaqwv \trnl kathõs \xref [L&N 64.14] \def just as \xref (others) \def in as much as, when, how, etc. \gtrm dei \trnl dei \xref [L&N 71.21] \def should (cited where certainty is in focus) \xref [L&N 71.34] \def be necessary (cited where certainty is in focus) \gtrm ginomai \trnl ginomai \xref [L&N 13.3] \def be (cited where certainty is in focus) \xref (others) \def come to exist, become, happen, etc. \ gtrm ge \trnl ge \xref [L&N 91.6] \def indeed \gtrm mallon \trnl mallon \xref [L&N 89.126] \def instead [RSV: really... marking contra-expectation] \gtrm mentoi \trnl mentoi \xref [L&N 89.130] \def never-the-less [RSV: really... contra-expectation] \gtrm anupokritov \trnl anupokritos \xref [L&N 73.8] \def genuine \gtrm dokimov \trnl dokimos \xref [L&N 73.4] \def proven genuine \xref (others) \def considered good, honored \gtrm pistiv \trnl pistis \xref [L&N 31.43] \def what can be believed \xref [L&N 33.289] \def promise \xref (others) \def trust, faith, doctrine \gtrm ou mj \trnl ou mæ \xref [L&N 69.5] \def by no means (certainly not) \xref [L&N 69.13] \def marker of question \gtrm pljroforiuv \trnl plærophorius \xref [L&N 31.45] \def complete certainty \gtrm pljroforew \trnl plærophoreõ \xref [L&N 31.45] \def be completely certain \gtrm pljroporia \trnl plæroporia \xref [L&N 31.45] \def assurance \gtrm Ãpostasiv \trnl hupostasis \xref [L&N 58.1] \def substance \xref [L&N 31.84] \def trust \gtrm pe ismonj \trnl peismonæ \xref [L&N 33.303] \def that which persuades [RSV: reassures] \gtrm kalwv \trnl kalõs \xref [L&N 88.4] \def good (moral) \xref (others) \def valuable, advantageous, beautiful, etc. \gtrm ara \trnl ara \xref [L&N 69.14] \def indeed \gtrm idou \trnl idou \xref [L&N 91.10] \def indeed \xref [L&N 91.13] \def Look! \gtrm agaqov \trnl agathos \xref [L&N 88.1] \def good (moral) \xref (others) \def valuable, generous, and possessions \gtrm autov \trnl autos \xref [L&N 58.31] \def same (cited where consistency is in focus) \xref [L&N 92.37] \def self (cited where consistency is in focus) \xref (others) \def he, she, it, his family \gtrm nuni de \trnl nuni de \xref [L&N 91.4] \def and so [RSV but in fact...] \gtrm anendekton...mj \trnl anendekton...mæ \xref [L&N 71.5] \def impossible but that... \gtrm pepoiqav \trnl pepoithas \xref [L&N 31.82] \def be persuaded (be certain) \xref [L&N 33.301] \def persuade \gtrm egguov \trnl enguos \xref [L&N 70.8] \def guarantor (hapax legomenon) \gtrm beb aiov \trnl bebaios \xref [L&N 71.15] \def certain \xref (others) \def trustworthy and verified \gtrm ginoskw \trnl ginoskõ \xref [L&N 28.1] \def know (cited where certainty is in focus) \xref (others) \def learn, understand, acknowledge, etc. \en2 1. Truth, that which is true \en3 a. True statement \gtrm aljqeia \trnl alætheia _reference_start_John 8:40_reference_end_ _reference_start_John 8:45_reference_end_ _reference_start_John 8:46_reference_end_ _reference_start_John 16:7_reference_end_ _reference_start_Acts 26:25_reference_end_ _reference_start_Romans 9:1_reference_end_ _reference_start_2 Corinthians 12:6_reference_end_ _reference_start_Ephesians 4:25_reference_end_ _reference_start_1 Timothy 2:7_reference_end_ \gtrm aljqeuw \trnl alætheuõ _reference_start_Galatians 4:16_reference_end_ _reference_start_Ephesians 4:15_reference_end_ \gtrm aljqjv \trnl alæthæs _reference_start_John 19:35_reference_end_ \en3 b. Assurance, certainty \gtrm aljqwv \trnl alæthõs _reference_start_Acts 12:11_referenc e_end_ \gtrm pistiv \trnl pistis _reference_start_Acts 17:31_reference_end_ \gtrm pljroforew \trnl plærophoreõ _reference_start_Colossians 4:12_reference_end_ \gtrm pljroporia \trnl plæroporia _reference_start_Hebrews 6:11_reference_end_ _reference_start_Hebrews 10:22_reference_end_ \gtrm Ãpostasiv \trnl hupostasis _reference_start_Hebrews 11:1_reference_end_ \gtrm peismonj \trnl peismonæ _reference_start_1 John 3:19_reference_end_ \en3 c. Proper theology, Christian doctrine in particular \gtrm aljqeia \trnl alætheia JHN 8:32, 44; 16:13; 17:17 (first occurrence), 19 (alternate sense 3.b. or 3.f.); 18:37 _reference_start_John 8:32_reference_end_ _reference_start_John 8:44_reference_end_ _reference_start_John 16:13_reference_end_ _reference_start_John 17:17_reference_end_ _reference_start_John 17:19_reference_end_ _reference_start_John 18:37_reference_end_ _reference_start_Romans 1:18_reference_end_ _reference_start_Romans 1:25_reference_end_ _reference_start_Romans 2:8_reference_end_ _reference_start _Romans 2:20_reference_end_ _reference_start_2 Corinthians 4:2_reference_end_ GAL 2:5 (alternate sense 1.d.), 14; 5:7 _reference_start_Galatians 2:5_reference_end_ _reference_start_Galatians 2:14_reference_end_ _reference_start_Galatians 5:7_reference_end_ _reference_start_Ephesians 1:13_reference_end_ _reference_start_Ephesians 6:14_reference_end_ _reference_start_Colossians 1:5_reference_end_ _reference_start_Colossians 1:6_reference_end_ _reference_start_2 Thessalonians 2:10_reference_end_ _reference_start_2 Thessalonians 2:12_reference_end_ _reference_start_2 Thessalonians 2:13_reference_end_ _reference_start_1 Timothy 2:4_reference_end_ _reference_start_1 Timothy 2:7_reference_end_ _reference_start_1 Timothy 3:15_reference_end_ _reference_start_1 Timothy 4:3_reference_end_ _reference_start_1 Timothy 6:5_reference_end_ _reference_start_2 Timothy 2:15_reference_end_ _reference_start_2 Timothy 2:18_reference_end_ _reference_start_2 Timothy 2:25_reference_end_ _reference_start_2 Timothy 3:7_reference_end _ _reference_start_2 Timothy 3:8_reference_end_ _reference_start_2 Timothy 4:4_reference_end_ _reference_start_Titus 1:1_reference_end_ _reference_start_Titus 1:14_reference_end_ _reference_start_Hebrews 10:26_reference_end_ _reference_start_James 1:18_reference_end_ _reference_start_James 3:14_reference_end_ _reference_start_James 5:19_reference_end_ _reference_start_1 Peter 1:22_reference_end_ _reference_start_2 Peter 1:12_reference_end_ _reference_start_2 Peter 2:2_reference_end_ 1JN 1:6, 8 (alternate sense 1.a.); 2:4 (alternate sense 1.a.), 21 (2 occurrences); 3:18; 4:6 _reference_start_1 John 1:6_reference_end_ _reference_start_1 John 1:8_reference_end_ _reference_start_1 John 2:4_reference_end_ _reference_start_1 John 2:21_reference_end_ _reference_start_1 John 3:18_reference_end_ _reference_start_1 John 4:6_reference_end_ _reference_start_2 John 1:4_reference_end_ _reference_start_3 John 1:8_reference_end_ \itrm Implied _reference_start_2 Timothy 1:14_reference_end_ \en3 d. The facts \gtrm aljqeia \trnl alætheia _reference_start_Mark 5:33_reference_end_ _reference_start_John 5:33_reference_end_ _reference_start_John 8:32_reference_end_ _reference_start_Romans 2:2_reference_end_ \gtrm asfaleia \trnl asphaleia _reference_start_Luke 1:4_reference_end_ \gtrm asfaljv \trnl asphalæs _reference_start_Acts 21:34_reference_end_ \itrm Implied _reference_start_1 Corinthians 2:13_reference_end_ \en3 e. The embodiment of righteousness in word and deed \gtrm aljqeia \trnl alætheia JHN 1:14, 17; 3:21; 8:44; 14:6, 17; 15:26; 16:13; 17:17 (second occurrence); 18:37, 38 _reference_start_John 1:14_reference_end_ _reference_start_John 1:17_reference_end_ _reference_start_John 3:21_reference_end_ _reference_start_John 8:44_reference_end_ _reference_start_John 14:6_reference_end_ _reference_start_John 14:17_reference_end_ _reference_start_John 15:26_reference_end_ _reference_start_John 16:13_reference_end_ _reference_start_John 17:17_reference_end_ _reference_start_John 18:37_reference_end_ _reference_start_John 18:3 8_reference_end_ _reference_start_1 Corinthians 5:8_reference_end_ _reference_start_1 Corinthians 13:6_reference_end_ 2CO 11:10; 13:8 (2 occurrences) _reference_start_2 Corinthians 11:10_reference_end_ _reference_start_2 Corinthians 13:8_reference_end_ _reference_start_Ephesians 4:21_reference_end_ _reference_start_1 John 3:19_reference_end_ _reference_start_1 John 5:7_reference_end_ 2JN 1:1 (2 occurrences), 2, 3 _reference_start_2 John 1:1_reference_end_ _reference_start_2 John 1:2_reference_end_ _reference_start_2 John 1:3_reference_end_ _reference_start_3 John 1:1_reference_end_ _reference_start_3 John 1:3_reference_end_ _reference_start_3 John 1:4_reference_end_ _reference_start_3 John 1:12_reference_end_ \en2 2. True, as a matter of quality \en3 a. True--as a statement \gtrm aljqeia \trnl alætheia 2CO 6:7; 7:14 (2 occurrences) _reference_start_2 Corinthians 6:7_reference_end_ _reference_start_2 Corinthians 7:14_reference_end_ \gtrm aljqjv \trnl alæthæs _reference_start_John 5:31_reference_end_ _re ference_start_John 5:32_reference_end_ _reference_start_John 8:13_reference_end_ _reference_start_John 8:14_reference_end_ _reference_start_John 8:16_reference_end_ _reference_start_John 8:17_reference_end_ _reference_start_John 10:41_reference_end_ _reference_start_John 21:24_reference_end_ PHP 4:8 (alternate senses 2.b. and 2.d.) _reference_start_Philippians 4:8_reference_end_ _reference_start_Titus 1:13_reference_end_ _reference_start_2 Peter 2:22_reference_end_ _reference_start_3 John 1:12_reference_end_ \gtrm aljqinov \trnl alæthinos _reference_start_John 4:37_reference_end_ _reference_start_John 19:35_reference_end_ _reference_start_Revelation 3:14_reference_end_ _reference_start_Revelation 19:9_reference_end_ _reference_start_Revelation 21:5_reference_end_ _reference_start_Revelation 22:6_reference_end_ \gtrm ara \trnl ara _reference_start_1 Corinthians 15:15_reference_end_ \en3 b. True--trustworthy, consistent \gtrm aljqeia \trnl alætheia _reference_start_Matthew 22:16_reference_end_ ROM 3:7 (al ternate sense 1.e.); 15:8 (alternate sense 1.e.) _reference_start_Romans 3:7_reference_end_ _reference_start_Romans 15:8_reference_end_ _reference_start_Ephesians 5:9_reference_end_ PHP 1:18 (i.e. as sincere men) _reference_start_Philippians 1:18_reference_end_ \gtrm aljqjv \trnl alæthæs _reference_start_Matthew 22:16_reference_end_ _reference_start_Mark 12:14_reference_end_ _reference_start_John 3:33_reference_end_ _reference_start_John 7:18_reference_end_ _reference_start_John 8:26_reference_end_ _reference_start_Romans 3:4_reference_end_ _reference_start_2 Corinthians 6:8_reference_end_ _reference_start_1 John 2:8_reference_end_ \gtrm aljqinov \trnl alæthinos _reference_start_John 7:28_reference_end_ _reference_start_Hebrews 10:22_reference_end_ 1JN 5:20 (first 2 occurrences) _reference_start_1 John 5:20_reference_end_ _reference_start_Revelation 3:7_reference_end_ _reference_start_Revelation 6:10_reference_end_ _reference_start_Revelation 15:3_reference_end_ _reference_start_Revelation 16:7_referen ce_end_ _reference_start_Revelation 19:2_reference_end_ _reference_start_Revelation 19:11_reference_end_ \gtrm amjn \trnl amæn _reference_start_Revelation 3:14_reference_end_ \gtrm asfaljv \trnl asphalæs _reference_start_Hebrews 6:19_reference_end_ \gtrm djpou \trnl dæpou _reference_start_Philippians 4:3_reference_end_ \gtrm autov \trnl autos _reference_start_Philippians 3:16_reference_end_ \en3 c. True--genuine, non-phony \gtrm aljqeia \trnl alætheia _reference_start_John 4:23_reference_end_ _reference_start_John 4:24_reference_end_ _reference_start_Ephesians 4:24_reference_end_ \gtrm aljqjv \trnl alæthæs _reference_start_1 Peter 5:12_reference_end_ _reference_start_1 John 2:27_reference_end_ \gtrm aljqinov \trnl alæthinos _reference_start_John 4:23_reference_end_ \gtrm aljqwv \trnl alæthõs _reference_start_1 Thessalonians 2:13_reference_end_ \gtrm djpou \trnl dæpou _reference_start_2 Corinthians 8:8_reference_end_ \en3 d. True--actual, real thing, anti-type \gtrm aljqjv \trnl alæthæs _refere nce_start_Acts 12:9_reference_end_ \gtrm aljqinov \trnl alæthinos _reference_start_Luke 16:11_reference_end_ JHN 1:9; 6:32; 15:1; 17:3 (2 occurrences) _reference_start_John 1:9_reference_end_ _reference_start_John 6:32_reference_end_ _reference_start_John 15:1_reference_end_ _reference_start_John 17:3_reference_end_ _reference_start_1 Thessalonians 1:9_reference_end_ _reference_start_Hebrews 8:2_reference_end_ _reference_start_Hebrews 9:24_reference_end_ 1JN 2:8; 5:20 (third occurrence) _reference_start_1 John 2:8_reference_end_ _reference_start_1 John 5:20_reference_end_ \gtrm aljqwv \trnl alæthõs _reference_start_John 4:42_reference_end_ _reference_start_John 6:55_reference_end_ \gtrm asfaljv \trnl asphalæs _reference_start_Acts 22:30_reference_end_ \gtrm gar \trnl gar _reference_start_Philippians 3:3_reference_end_ \gtrm gnjsiov \trnl gnæsios _reference_start_Philippians 2:20_reference_end_ \gtrm men \trnl men _reference_start_2 Corinthians 12:12_reference_end_ \gtrm ontwv \trnl ontõs _reference_ start_Mark 11:32_reference_end_ _reference_start_1 Timothy 6:19_reference_end_ \gtrm kaqwv \trnl kathõs _reference_start_1 Corinthians 5:7_reference_end_ \gtrm anupokritov \trnl anupokritos _reference_start_Romans 12:9_reference_end_ _reference_start_2 Corinthians 6:6_reference_end_ \gtrm dokimov \trnl dokimos _reference_start_1 Corinthians 11:19_reference_end_ _reference_start_1 Peter 1:7_reference_end_ \gtrm autov \trnl autos HEB 10:1 (2 occurrences) _reference_start_Hebrews 10:1_reference_end_ \itrm Implied ROM 2:28 (2 occurrences), 29 _reference_start_Romans 2:28_reference_end_ _reference_start_Romans 2:29_reference_end_ _reference_start_1 Corinthians 8:4_reference_end_ \en3 e. True--100%, complete, epitome of \gtrm aljqwv \trnl alæthõs JHN 1:47 (alternate sense 2.f.); 8:31 (alternate sense 2.f.) _reference_start_John 1:47_reference_end_ _reference_start_John 8:31_reference_end_ \gtrm djpou \trnl dæpou _reference_start_1 Timothy 1:2_reference_end_ _reference_start_Titus 1:4_reference_end_ \gtrm ka i \trnl kai _reference_start_Romans 8:34_reference_end_ _reference_start_Romans 9:25_reference_end_ \gtrm ontwv \trnl ontõs _reference_start_1 Timothy 5:3_reference_end_ _reference_start_1 Timothy 5:5_reference_end_ _reference_start_1 Timothy 5:16_reference_end_ \gtrm ósper \trnl hõsper _reference_start_1 Corinthians 8:5_reference_end_ \gtrm agaqov \trnl agathos _reference_start_Titus 2:10_reference_end_ \en2 3. Truly, as a matter of emphasis \en3 a. Truly stated \gtrm aljqeia \trnl alætheia _reference_start_Matthew 22:16_reference_end_ _reference_start_Mark 12:14_reference_end_ _reference_start_Mark 12:32_reference_end_ _reference_start_Luke 4:25_reference_end_ _reference_start_Luke 20:21_reference_end_ \gtrm aljqjv \trnl alæthæs _reference_start_John 4:18_reference_end_ \gtrm aljqwv \trnl alæthõs _reference_start_Luke 9:27_reference_end_ _reference_start_Luke 12:44_reference_end_ _reference_start_Luke 21:3_reference_end_ \gtrm amjn \trnl amæn _reference_start_Matthew 5:18_reference_end_ _refere nce_start_Matthew 5:26_reference_end_ _reference_start_Matthew 6:2_reference_end_ _reference_start_Matthew 6:5_reference_end_ _reference_start_Matthew 6:16_reference_end_ _reference_start_Matthew 8:10_reference_end_ _reference_start_Matthew 10:15_reference_end_ _reference_start_Matthew 10:23_reference_end_ _reference_start_Matthew 10:42_reference_end_ _reference_start_Matthew 11:11_reference_end_ _reference_start_Matthew 13:17_reference_end_ _reference_start_Matthew 16:28_reference_end_ _reference_start_Matthew 17:20_reference_end_ _reference_start_Matthew 18:3_reference_end_ _reference_start_Matthew 18:13_reference_end_ _reference_start_Matthew 18:18_reference_end_ _reference_start_Matthew 19:23_reference_end_ _reference_start_Matthew 19:28_reference_end_ _reference_start_Matthew 21:21_reference_end_ _reference_start_Matthew 21:31_reference_end_ _reference_start_Matthew 23:36_reference_end_ _reference_start_Matthew 24:2_reference_end_ _reference_start_Matthew 24:34_reference_end_ _reference_start_Matthew 24:47_reference_end_ _reference_start_Matthew 25:12_reference_end_ _reference_start_Matthew 25:40_reference_end_ _reference_start_Matthew 25:45_reference_end_ _reference_start_Matthew 26:13_reference_end_ _reference_start_Matthew 26:21_reference_end_ _reference_start_Matthew 26:34_reference_end_ _reference_start_Mark 3:28_reference_end_ _reference_start_Mark 8:12_reference_end_ _reference_start_Mark 9:1_reference_end_ _reference_start_Mark 9:41_reference_end_ _reference_start_Mark 10:15_reference_end_ _reference_start_Mark 10:29_reference_end_ _reference_start_Mark 11:23_reference_end_ _reference_start_Mark 12:14_reference_end_ _reference_start_Mark 12:32_reference_end_ _reference_start_Mark 12:43_reference_end_ _reference_start_Mark 13:30_reference_end_ _reference_start_Mark 14:9_reference_end_ _reference_start_Mark 14:18_reference_end_ _reference_start_Mark 14:25_reference_end_ _reference_start_Mark 14:30_reference_end_ _reference_start_Luke 4:24_reference_end_ _reference_start_Luke 12:37_reference_end _ _reference_start_Luke 18:17_reference_end_ _reference_start_Luke 18:29_reference_end_ _reference_start_Luke 20:21_reference_end_ _reference_start_Luke 21:32_reference_end_ _reference_start_Luke 23:43_reference_end_ _reference_start_John 1:51_reference_end_ _reference_start_John 3:3_reference_end_ _reference_start_John 3:5_reference_end_ _reference_start_John 3:11_reference_end_ _reference_start_John 5:19_reference_end_ _reference_start_John 5:24_reference_end_ _reference_start_John 5:25_reference_end_ _reference_start_John 6:26_reference_end_ _reference_start_John 6:32_reference_end_ _reference_start_John 6:47_reference_end_ _reference_start_John 6:53_reference_end_ _reference_start_John 8:34_reference_end_ _reference_start_John 8:51_reference_end_ _reference_start_John 8:58_reference_end_ _reference_start_John 10:1_reference_end_ _reference_start_John 10:7_reference_end_ _reference_start_John 12:24_reference_end_ _reference_start_John 13:16_reference_end_ _reference_start_John 13:20_reference_end_ _ref erence_start_John 13:21_reference_end_ _reference_start_John 13:38_reference_end_ _reference_start_John 14:12_reference_end_ _reference_start_John 16:20_reference_end_ _reference_start_John 16:23_reference_end_ _reference_start_John 21:18_reference_end_ _reference_start_1 Corinthians 11:31_reference_end_ \en3 b. Assuredly \gtrm aljqeia \trnl alætheia _reference_start_Luke 22:59_reference_end_ _reference_start_Acts 10:34_reference_end_ \gtrm aljqwv \trnl alæthõs _reference_start_Matthew 14:33_reference_end_ _reference_start_Matthew 26:73_reference_end_ _reference_start_Matthew 27:54_reference_end_ _reference_start_Mark 14:70_reference_end_ _reference_start_Mark 15:39_reference_end_ _reference_start_John 6:14_reference_end_ _reference_start_John 7:40_reference_end_ _reference_start_John 17:8_reference_end_ _reference_start_1 John 2:5_reference_end_ \gtrm asfalov \trnl asphalos _reference_start_Acts 2:36_reference_end_ \gtrm gar \trnl gar 1TH 2:20 (NIV) _reference_start_1 Thessalonians 2:20_reference_end_ \gtrm djpou \trnl dæpou _reference_start_Hebrews 2:16_reference_end_ \gtrm kai \trnl kai ACT 17:28 (2 occurrences) _reference_start_Acts 17:28_reference_end_ _reference_start_1 Timothy 3:16_reference_end_ _reference_start_Philemon 1:11_reference_end_ \gtrm menougge \trnl menounge _reference_start_Romans 10:18_reference_end_ \gtrm ontwv \trnl ontõs _reference_start_Luke 24:34_reference_end_ _reference_start_John 8:36_reference_end_ _reference_start_1 Corinthians 14:25_reference_end_ _reference_start_Galatians 3:21_reference_end_ \gtrm nai \trnl nai _reference_start_Revelation 14:13_reference_end_ \gtrm ginomai \trnl ginomai ROM 3:6 (NIV); 7:7 (NIV) _reference_start_Romans 3:6_reference_end_ _reference_start_Romans 7:7_reference_end_ \gtrm ge \trnl ge _reference_start_Galatians 3:4_reference_end_ _reference_start_Galatians 3:5_reference_end_ \gtrm ou mj \trnl ou mæ MAT 10:42 (NIV) _reference_start_Matthew 10:42_reference_end_ 1TH 4:15 (NIV) _reference_start_1 Thessalonians 4:15_reference_end_ \gtrm idou \trnl idou _reference_start_Colossians 2:2_reference_end_ \en3 c. Especially \gtrm kai \trnl kai MAT 13:14 (first occurrence) _reference_start_Matthew 13:14_reference_end_ \gtrm men \trnl men 1TH 2:18 (NIV) _reference_start_1 Thessalonians 2:18_reference_end_ \en3 d. Actually, in fact \gtrm aljqwv \trnl alæthõs JHN 7:26 (alternate sense 3.b.) _reference_start_John 7:26_reference_end_ \gtrm eiper \trnl eiper ROM 8:17 (NIV) _reference_start_Romans 8:17_reference_end_ \gtrm mallon \trnl mallon _reference_start_Philippians 1:12_reference_end_ \gtrm nuni de \trnl nuni de 1CO 15:20 (NIV) _reference_start_1 Corinthians 15:20_reference_end_ \en3 e. Completely \gtrm mentoi \trnl mentoi _reference_start_James 2:8_reference_end_ \en3 f. Indeed, as a matter of fact, introducing further support \gtrm aljqeia \trnl alætheia _reference_start_Acts 4:27_reference_end_ \gtrm gar \trnl gar ROM 2:14 (NIV); 8:7 _reference_start_Romans 2:14_reference_end_ _reference_start_Romans 8:7_reference_end_ 1CO 14:2 (NIV) _reference _start_1 Corinthians 14:2_reference_end_ \gtrm kai \trnl kai _reference_start_Matthew 12:29_reference_end_ _reference_start_Matthew 13:23_reference_end_ _reference_start_Matthew 13:34_reference_end_ _reference_start_Mark 3:27_reference_end_ LUK 12:7 (NIV) _reference_start_Luke 12:7_reference_end_ _reference_start_John 16:32_reference_end_ ACT 3:24 (NIV); 17:28 (2 occurrences) _reference_start_Acts 3:24_reference_end_ _reference_start_Acts 17:28_reference_end_ _reference_start_Romans 15:27_reference_end_ _reference_start_2 Corinthians 3:10_reference_end_ _reference_start_Philippians 2:27_reference_end_ _reference_start_Philippians 3:8_reference_end_ _reference_start_Colossians 1:6_reference_end_ _reference_start_Colossians 3:15_reference_end_ _reference_start_1 Thessalonians 4:10_reference_end_ _reference_start_2 Timothy 3:12_reference_end_ _reference_start_Hebrews 9:22_reference_end_ _reference_start_Hebrews 12:21_reference_end_ \gtrm alla \trnl alla _reference_start_John 16:2_reference_end_ ROM 7:7 (NIV) _reference_start_Romans 7:7_reference_end_ 1CO 3:2 (NIV); 4:3 (NIV) _reference_start_1 Corinthians 3:2_reference_end_ _reference_start_1 Corinthians 4:3_reference_end_ 2CO 1:9 (NIV) _reference_start_2 Corinthians 1:9_reference_end_ \gtrm kaqwv \trnl kathõs _reference_start_3 John 1:3_reference_end_ \gtrm ou mj \trnl ou mæ JHN 4:14 (NIV) _reference_start_John 4:14_reference_end_ \gtrm idou \trnl idou LUK 13:30 (NIV) _reference_start_Luke 13:30_reference_end_ \itrm Word order shows emphasis, NIV _reference_start_Luke 18:25_reference_end_ \en2 4. True/truly...but, (concession) \gtrm gar \trnl gar _reference_start_Hebrews 7:28_reference_end_ \gtrm kai \trnl kai MAT 13:14 (last 2 occurrences) _reference_start_Matthew 13:14_reference_end_ MRK 4:12 (2 occurrences) _reference_start_Mark 4:12_reference_end_ ACT 28:26 (2 occurrences) _reference_start_Acts 28:26_reference_end_ 2CO 5:2; 13:4 (NIV) _reference_start_2 Corinthians 5:2_reference_end_ _reference_start_2 Corinthians 13:4_reference_end_ _reference_start_Philippians 4:10_reference_end_ \gtrm men \trnl men MAT 3:11 (KJV); 9:37; 17:11; 20:23 (NIV); 26:41 _reference_start_Matthew 3:11_reference_end_ _reference_start_Matthew 9:37_reference_end_ _reference_start_Matthew 17:11_reference_end_ _reference_start_Matthew 20:23_reference_end_ _reference_start_Matthew 26:41_reference_end_ _reference_start_Mark 14:38_reference_end_ _reference_start_Luke 23:41_reference_end_ _reference_start_Romans 2:25_reference_end_ _reference_start_Romans 14:20_reference_end_ 1CO 14:17 (NIV) _reference_start_1 Corinthians 14:17_reference_end_ _reference_start_Philippians 1:15_reference_end_ _reference_start_Colossians 2:23_reference_end_ \gtrm kalwv \trnl kalõs 1CO 11:22 (NIV) _reference_start_1 Corinthians 11:22_reference_end_ \itrm Implied _reference_start_Romans 5:13_reference_end_ _reference_start_Romans 11:20_reference_end_ \en2 5. Residue \gtrm gar \trnl gar _reference_start_Hebrews 6:16_reference_end_ \gtrm eiper \trnl eiper _reference_start_2 Thessalonians 1:6_reference_end_ I II TRUTH (a preliminary analysis)truth (a preliminary analysis)\o1 1. Truth, that which is true \o2 a. True statement \o2 b. Assurance, certainty \o2 c. Proper theology, Christian doctrine in particular \o2 d. The facts \o2 e. The embodiment of righteousness in word and deed \o1 2. True, as a matter of quality \o2 a. True--as a statement \o2 b. True--trustworthy, consistent \o2 c. True--genuine, non-phony \o2 d. True--actual, real thing, anti-type \o2 e. True--100%, complete, epitome of \o1 3. Truly, as a matter of emphasis \o2 a. Truly stated \o2 b. Assuredly \o2 c. Especially \o2 d. Actually, in fact \o2 e. Completely \o2 f. Indeed, as a matter of fact, introducing further support \o1 4. True/truly...but, (concession) \o1 5. Residue \gtrm aljqei ?tfXJ<. xj\N@2$|n`RD6( F +# E +% D @ C = B 8 A 2 @ + ? + ) > + = + < + ; + : + 9 + 8 / 7 / 6 @ 5 @ 4 @ 3 @ 2 ? 1 ? 0 ? / > . > - 1 , /  + / * .  ) . ( +& ' +% & + % + $ + # + " + ! +,  +  +  +  .  ,"  *  -  +  +!  )!  7  @  ?  >  >  >  >  >  >  =  =  <  ;  ;  ; ?tfXJ<. xj\N@2$|n`RD6(  <  .   /  -  .  6  ) ~ / } 2 | 2 { , z +7 y +* x > w > v :  u : t 4 s + r + q + p + o * n , m / l 4 k + j > i < h 1 g + f + e 2 d 2 c : b B a B ` B _ B ^ B ] B \ B [ > Z :  Y + X > W / V - U + T + S +! R )  Q ( P 2 O 1 N - M - L ( K . J B I B H B G B ?tfXJ<. xj\N@2$|n`RD6( D ) C )  B )  A )  @ )  ? ) ) > )  = ) < ) ; (" : ( 9 ( 8 (- 7 (( 6 ( 5 (/ 4 (" 3 ( 2 ($ 1 ( 0 ( / ( . ( - ( , ( + ( * ( ) ( ( (  ' ( & ( * % (  $ (  # ( " ( ! (  (  (  (  *  * ,  *   +  *  *  )  )   (  8  .  6  6  6  -   -"  8  6  +  +/  .  -  -  :  ?tfXJ<. xj\N@2$|n`RD6(  -  B  0  .  +$ ~ *" } -  | 9 { 6 z , y : x 4 w ,$ v > u + t +( s + r )' q )F p (6 o (I n (! m , " l *; k .  j + i + h + g + f + & e +  d +  c +  b +  a +  ` +  _ +: ^ +3 ] +" \ +5 [ +/ Z + Y + X + W + V + U + T + S + R +3 Q *+ P * O * N * M * L * % K * J ) I ) H ) G ) F )  E ) + ?tfXJ<. xj\N@2$|n`RD6( B 3 A 2 @ . ? - > - = *) < )& ; () : ( 9 ( 8 ( % 7 ( 6 2 5 /  4 / 3 , 2 ) 1 (  0 : / * . *  - + , @ + / * . ) . ( - ' + & :  % :  $ 7 # 4 " 3 ! 3  2  2  /  -  ,  ,  +  *   )  ( "  (   (   .  -  -  ,  ;  .  2  -  +  4  (   3  4  ( *  0  0  - ?tfXJ<. xj\N@2$|n`RD6(  )  )  ) ~ ) } ( | ( { ( z , y (  x + w : v , u , t ,  s ( r 7 q 6 p 6 o :  n B m B l B k 1 j , i , h *  g * * f * e * d *$ c *! b )  a ) ` ) _ ) ^ ) ] ) \ ) [ ) Z ) Y ) X ) W ( + V (  U 6 T :  S - R ,  Q ,  P ,  O ) N ) M B L / K . J ,  I ,  H ,  G 5 F : E -  D - C .  b. Contaminated by sin and unfit for God's presence \gtrm akaqartov \trnl akathartos \xref [L&N 53.39] \def defiled, ritually unclean \gtrm koinov \trnl koinos \xref [L&N 53.39] \def defiled, ritually unclean \gtrm bebjlov \trnl bebælos \xref [L&N 53.33] \def to defile or profane \gtrm koinow \trnl koinoõ \xref [L&N 53.33] \def to defile or profane \xref [L&N 53.40] \def to regard something as defiled \gtrm miainw \trnl miainõ \xref [L&N 53.34] \def to defile seriously, to stain \gtrm molunw \trnl molunõ \xref [L&N 53.34] \def to defile seriously, to stain \gtrm bebjlow \trnl bebæloõ \xref [L&N 53.33] \def to defile or profane \gtrm akaqarsia \trnl akatharsia \xref [L&N 79.54] \def filth, dirt, rubbish \xref [L&N 88.261] \def perversion \gtrm molusmov \trnl molusmos \xref [L&N 53.35] \def state of defilement (hapax legomenon) \gtrm miasmov \trnl miasmos \xref [L&N 88.259] \def impure, tainted, evil (hapax legomenon) \gtrm miasma \trnl miasma \xref [L&N 88.259] \def impurity, defilement (hapax leg omenon) \gtrm alisgjma \trnl alisgæma \xref [L&N 53.37] \def that which has been ritually defiled (hapax legomenon) \gtrm to bdelugma tjv erjmwsewv \trnl to bdelugma tæs eræmõseõs \xref [L&N 53.38] \def “the detestable thing of desolation” \en2 1. Unclean, impure, common (adjective forms) \en3 a. Contaminated (things and people) \gtrm akaqartov \trnl akathartos _reference_start_Acts 10:14_reference_end_ _reference_start_Acts 10:28_reference_end_ _reference_start_Acts 11:8_reference_end_ _reference_start_1 Corinthians 7:14_reference_end_ _reference_start_2 Corinthians 6:17_reference_end_ _reference_start_Revelation 18:2_reference_end_ \gtrm koinov \trnl koinos _reference_start_Mark 7:2_reference_end_ _reference_start_Mark 7:5_reference_end_ _reference_start_Acts 10:14_reference_end_ _reference_start_Acts 10:28_reference_end_ _reference_start_Acts 11:8_reference_end_ ROM 14:14 (3 occurrences) _reference_start_Romans 14:14_reference_end_ _reference_start_Hebrews 10:29_reference_end_ \gtrm bebjlov \trn l bebælos _reference_start_1 Timothy 1:9_reference_end_ \en3 b. Morally unclean \gtrm akaqartov \trnl akathartos _reference_start_Matthew 10:1_reference_end_ _reference_start_Matthew 12:43_reference_end_ _reference_start_Mark 1:23_reference_end_ _reference_start_Mark 1:26_reference_end_ _reference_start_Mark 1:27_reference_end_ _reference_start_Mark 3:11_reference_end_ _reference_start_Mark 3:30_reference_end_ _reference_start_Mark 5:2_reference_end_ _reference_start_Mark 5:8_reference_end_ _reference_start_Mark 5:13_reference_end_ _reference_start_Mark 6:7_reference_end_ _reference_start_Mark 7:25_reference_end_ _reference_start_Mark 9:25_reference_end_ _reference_start_Luke 4:33_reference_end_ _reference_start_Luke 4:36_reference_end_ _reference_start_Luke 6:18_reference_end_ _reference_start_Luke 8:29_reference_end_ _reference_start_Luke 9:42_reference_end_ _reference_start_Luke 11:24_reference_end_ _reference_start_Acts 5:16_reference_end_ _reference_start_Acts 8:7_reference_end_ _reference_start_Eph esians 5:5_reference_end_ _reference_start_Revelation 16:13_reference_end_ _reference_start_Revelation 18:2_reference_end_ \gtrm koinov \trnl koinos _reference_start_Revelation 21:27_reference_end_ \gtrm bebjlov \trnl bebælos _reference_start_Hebrews 12:16_reference_end_ \en3 c. Profane or godless \gtrm bebjlov \trnl bebælos _reference_start_1 Timothy 4:7_reference_end_ _reference_start_1 Timothy 6:20_reference_end_ _reference_start_2 Timothy 2:16_reference_end_ \gtrm to bdelugma tjv erjmwsewv \trnl to bdelugma tæs eræmõseõs _reference_start_Matthew 24:15_reference_end_ \en2 2. To make unclean, to defile, to corrupt (verb forms) \en3 a. To make or call contaminated, to defile \gtrm koinow \trnl koinoõ _reference_start_Acts 10:15_reference_end_ _reference_start_Acts 11:9_reference_end_ _reference_start_Acts 21:28_reference_end_ _reference_start_Hebrews 9:13_reference_end_ \gtrm miainw \trnl miainõ _reference_start_John 18:28_reference_end_ \gtrm bebjlow \trnl bebæloõ _reference_start_Matthew 12:5 _reference_end_ _reference_start_Acts 24:6_reference_end_ \en3 b. To morally contaminate \gtrm koinow \trnl koinoõ MAT 15:11, 18, 20 (2 occurrences) _reference_start_Matthew 15:11_reference_end_ _reference_start_Matthew 15:18_reference_end_ _reference_start_Matthew 15:20_reference_end_ MRK 7:15 (2 occurrences), 18, 20, 23 _reference_start_Mark 7:15_reference_end_ _reference_start_Mark 7:18_reference_end_ _reference_start_Mark 7:20_reference_end_ _reference_start_Mark 7:23_reference_end_ \gtrm miainw \trnl miainõ _reference_start_Titus 1:15_reference_end_ _reference_start_Hebrews 12:15_reference_end_ _reference_start_Jude 1:8_reference_end_ \gtrm molunw \trnl molunõ _reference_start_1 Corinthians 8:7_reference_end_ _reference_start_Revelation 3:4_reference_end_ _reference_start_Revelation 14:4_reference_end_ \en2 3. Uncleanness, impurity, defilement (noun forms) \en3 a. Contaminated such that it should not be touched \gtrm akaqarsia \trnl akatharsia _reference_start_Matthew 23:27_reference_end_ \gtrm alisgjma \trnl alisgæma ACT 15:20 (hapax legomenon) _reference_start_Acts 15:20_reference_end_ \en3 b. Contaminated by sin and unfit for God's presence \gtrm akaqartov \trnl akathartos REV 17:4 (adjective) _reference_start_Revelation 17:4_reference_end_ \gtrm akaqarsia \trnl akatharsia _reference_start_Romans 1:24_reference_end_ _reference_start_Romans 6:19_reference_end_ _reference_start_2 Corinthians 12:21_reference_end_ _reference_start_Galatians 5:19_reference_end_ _reference_start_Ephesians 4:19_reference_end_ _reference_start_Ephesians 5:3_reference_end_ _reference_start_Colossians 3:5_reference_end_ _reference_start_1 Thessalonians 2:3_reference_end_ _reference_start_1 Thessalonians 4:7_reference_end_ \gtrm molusmov \trnl molusmos 2CO 7:1 (hapax legomenon) _reference_start_2 Corinthians 7:1_reference_end_ \gtrm miasmov \trnl miasmos 2PE 2:10 (hapax legomenon) _reference_start_2 Peter 2:10_reference_end_ \gtrm miasma \trnl miasma 2PE 2:20 (hapax legomenon) _reference_start_2 Peter 2:20_reference_end_ > ] UNJUSTunjust\see (see also JUST) \o1 1. Unjust, unfair, and/or inconsistent with what God has said \o1 2. Unjust, unrighteous, doing what is wrong in God's sight \o1 3. Dishonest, not keeping an agreement \o1 4. An act considered wrong in the sight of a government \o1 5. Doing what is wrong towards other men \o1 6. To damage or to cause pain \gtrm adikew \trnl adikeõ \xref [L&N 88.22] \def act unjustly (verb) \xref (others) \def hurt, mistreat) \g гo WWC UNCLEAN, UNCLEANNESS, DEFILED, IMPUREunclean, uncleanness, defiled, impure\see (see also EVIL, SPIRIT ) \o1 1. Unclean, impure, common (adjective forms) \o2 a. Contaminated (things and people) \o2 b. Morally unclean \o2 c. Profane or godless \o1 2. To make unclean, to defile, to corrupt (verb forms) \o2 a. To make or call contaminated, to defile \o2 b. To morally contaminate \o1 3. Uncleanness, impurity, defilement (noun forms) \o2 a. Contaminated such that it should not be touched \o2 ?tfXJ<. xj\N@2$|n`RD6( @ ( ? , > , = , < * ; * : * 9 = 8 5 7 , 6 + 5 * 4 * 3 * 2 = 1 < 0 . / . . - - , , (- + > * > ) = ( ; ' : & 7 % 5 $ .  # - " - ! -  -  ,  *   B  B  =  <  :  -   -  =  =  /  4  4  3  1  1  0  /   -  -  B  ,  (  B  B  .  A  :   8 trm adikjma \trnl adikæma \xref [L&N 88.23] \def unrighteous act (noun) \gtrm adikia \trnl adikia \xref [L&N 88.21] \def unjust deed (noun) \gtrm adikov \trnl adikos \xref [L&N 88.20] \def unjustly (adjective) \gtrm adikwv \trnl adikõs \xref [L&N 88.20] \def unjustly (hapax legomenon) (adjective/verb) \en2 1. Unjust, unfair, and/or inconsistent with what God has said \gtrm adikia \trnl adikia _reference_start_Romans 3:5_reference_end_ _reference_start_Romans 9:14_reference_end_ \gtrm adikov \trnl adikos _reference_start_Hebrews 6:10_reference_end_ \gtrm adikwv \trnl adikõs _reference_start_1 Peter 2:19_reference_end_ \en2 2. Unjust, unrighteous, doing what is wrong in God's sight \gtrm adikew \trnl adikeõ _reference_start_2 Peter 2:13_reference_end_ _reference_start_Revelation 22:11_reference_end_ \gtrm adikjma \trnl adikæma _reference_start_Revelation 18:5_reference_end_ \gtrm adikia \trnl adikia _reference_start_Luke 13:27_reference_end_ _reference_start_Acts 1:18_reference_end_ ROM 1:18 (2 occurre nces), 29; 2:8; 6:13 _reference_start_Romans 1:18_reference_end_ _reference_start_Romans 1:29_reference_end_ _reference_start_Romans 2:8_reference_end_ _reference_start_Romans 6:13_reference_end_ _reference_start_1 Corinthians 13:6_reference_end_ _reference_start_2 Thessalonians 2:12_reference_end_ _reference_start_2 Timothy 2:19_reference_end_ _reference_start_Hebrews 8:12_reference_end_ _reference_start_James 3:6_reference_end_ _reference_start_2 Peter 2:13_reference_end_ _reference_start_1 John 1:9_reference_end_ _reference_start_1 John 5:17_reference_end_ \gtrm adikov \trnl adikos _reference_start_Matthew 5:45_reference_end_ _reference_start_Acts 24:15_reference_end_ _reference_start_Romans 3:5_reference_end_ _reference_start_1 Corinthians 6:1_reference_end_ _reference_start_1 Corinthians 6:9_reference_end_ _reference_start_1 Peter 3:18_reference_end_ _reference_start_2 Peter 2:9_reference_end_ \en2 3. Dishonest, not keeping an agreement \gtrm adikia \trnl adikia _reference_start_Luke 16:8_reference_e nd_ _reference_start_Luke 16:9_reference_end_ _reference_start_Luke 18:6_reference_end_ _reference_start_John 7:18_reference_end_ _reference_start_Acts 8:23_reference_end_ _reference_start_2 Thessalonians 2:10_reference_end_ _reference_start_2 Peter 2:15_reference_end_ \gtrm adikov \trnl adikos LUK 16:10 (2 occurrences), 11; 18:11 _reference_start_Luke 16:10_reference_end_ _reference_start_Luke 16:11_reference_end_ _reference_start_Luke 18:11_reference_end_ \en2 4. An act considered wrong in the sight of a government \gtrm adikew \trnl adikeõ _reference_start_Acts 25:11_reference_end_ \gtrm adikjma \trnl adikæma _reference_start_Acts 18:14_reference_end_ _reference_start_Acts 24:20_reference_end_ \en2 5. Doing what is wrong towards other men \gtrm adikew \trnl adikeõ _reference_start_Matthew 20:13_reference_end_ _reference_start_Acts 7:24_reference_end_ _reference_start_Acts 7:26_reference_end_ _reference_start_Acts 7:27_reference_end_ _reference_start_Acts 25:10_reference_end_ _reference_start_1 Corinthians 6:7_reference_end_ _reference_start_1 Corinthians 6:8_reference_end_ 2CO 7:2, 12 (2 occurrences) _reference_start_2 Corinthians 7:2_reference_end_ _reference_start_2 Corinthians 7:12_reference_end_ _reference_start_Galatians 4:12_reference_end_ COL 3:25 (2 occurrences) _reference_start_Colossians 3:25_reference_end_ PHM 1:18 (alternate sense 3.) _reference_start_Philemon 1:18_reference_end_ \gtrm adikia \trnl adikia _reference_start_2 Corinthians 12:13_reference_end_ \en2 6. To damage or to cause pain \gtrm adikew \trnl adikeõ _reference_start_Luke 10:19_reference_end_ REV 2:11; 6:6; 7:2, 3; 9:4, 10, 19; 11:5 (2 occurrences) _reference_start_Revelation 2:11_reference_end_ _reference_start_Revelation 6:6_reference_end_ _reference_start_Revelation 7:2_reference_end_ _reference_start_Revelation 7:3_reference_end_ _reference_start_Revelation 9:4_reference_end_ _reference_start_Revelation 9:10_reference_end_ _reference_start_Revelation 9:19_reference_end_ _reference_start_Revelation 11:5_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( B ~B }= |= {; z:  y3 x3 w1 v1 u, t, s*! r* q*  p)  o( n(# m(  l( k: j:  i: h+ gB fB  e< d:  c: b1 a. `. _- ^, ]+ \+ [+ Z+ Y* 2 X(" W( V( # U B  T B  S B R B  Q B P B O B N B M *  L / K 9 J 3 I 0 H / G / F . E . D , C , B , A , !!{WORLD, AGEworld, age\see (see also ETERNAL, FLESH) \o1 1. The universe that God created \o2 a. The “world” as the whole creation \o2 b. “Heaven and earth (and sea)” as the whole creation \o2 c. Ground as distinct from the sky; a lowly place, down \o2 d. Land as distinct from a body of water \o2 e. Region as distinct from another area of land \o2 f. Soil as for agricultural purposes \o1 2. The world scene of human activities \o2 a. The whole world \o2 b. The whole ' 1 WONDERwonder\see (see MIRACLE) earth \o2 c. The civilized world, the Roman empire \o1 3. The inhabitants of the world \o2 a. The inhabitants of the universe--angels and people \o2 b. The inhabitants of the earth, people and animals \o2 c. All human beings \o2 d. Human beings in general, but not all \o2 e. Civilized people, the inhabitants of the Roman world \o2 f. People who live outside the speaker's district \o1 4. The world as a moral system opposed to God and Christ \o1 5. The material goods and the pleasures of this world \o1 6. This world/age and the world/age to come \o1 7. A clear reference to a past time or age \o1 8. A special phrase: elemental spirits of the universe \gtrm kosmov \trnl kosmos \xref [L&N 1.1] \def universe, all that exists \xref [L&N 1.39] \def surface of the earth where man dwells \xref [L&N 6.188] \def adornment \xref [L&N 9.23] \def people associated with an anti-God world system \xref [L&N 12.44] \def anti-God world system and its spirit rulers \xref [L&N 41.38] \def system of practi ces and standards of secular society \xref [L&N 59.55] \def an incredible amount of something \xref [L&N 79.12] \def decorate, beautify, adorn \gtrm kosmikov \trnl kosmikos \xref [L&N 1.40] \def earthly, pertaining to the earth \xref [L&N 41.39] \def worldly, pertaining to the world system and standards \gtrm aiwn \trnl aiõn \xref [L&N 1.2] \def universe in the totality of its temporal existence \xref [L&N 11.16] \def people who hold the value systems of this world \xref [L&N 12.24] \def the god ruling and trusted by people of this world \xref [L&N 12.44] \def anti-God world system and its spirit rulers \xref [L&N 41.38] \def system of practices and standards of secular society \xref [L&N 67.25] \def long ago \xref [L&N 67.87] \def always, an unlimited extension of time \xref [L&N 67.95] \def evermore, an unlimited future extension of time \xref [L&N 67.133] \def ever since, from ages past, from the beginning \xref [L&N 67.143] \def era, epoch, stage of history \gtrm oikoumenj \trnl oikoumenæ \xref [L&N 1.39] \def surface of the earth where man dwells \xref [L&N 1.83] \def the Roman Empire and its inhabitants \xref [L&N 9.22] \def the inhabited earth, all people on earth \gtrm paliggenesia \trnl palingenesia \xref [L&N 41.53] \def to be born again \xref [L&N 67.147] \def the era of Messianic renewal of the world \gtrm gj \trnl gæ \xref [L&N 1.39] \def earth \xref [L&N 1.60] \def land \xref [L&N 2.14] \def soil \xref [L&N 1.79] \def region \xref [L&N 9.22] \def people \xref [L&N 1.3] \def universe “heavens and the earth” \xref [L&N 17.21] \def prostrate one's self “to the earth” \gtrm kosmokratwr \trnl kosmokratõr \xref [L&N 37.73] \def world ruler EPH. 6:12 \xref [L&N 12.44] \def supernatural power (EPH 1:21, 2:2) \en2 1. The universe that God created \en3 a. The “world” as the whole creation \gtrm kosmov \trnl kosmos _reference_start_Matthew 13:35_reference_end_ _reference_start_Matthew 24:21_reference_end_ _reference_start_Matthew 25:34_reference_end_ _reference_start_Luke 11:50_reference_end_ _reference_start_John 1:10_reference_end_ _reference_start_John 17:5_reference_end_ _reference_start_John 17:24_reference_end_ _reference_start_John 21:25_reference_end_ _reference_start_Acts 17:24_reference_end_ _reference_start_Romans 1:20_reference_end_ _reference_start_1 Corinthians 3:22_reference_end_ _reference_start_1 Corinthians 8:4_reference_end_ _reference_start_Ephesians 1:4_reference_end_ _reference_start_Hebrews 4:3_reference_end_ _reference_start_Hebrews 9:26_reference_end_ _reference_start_1 Peter 1:20_reference_end_ _reference_start_Revelation 13:8_reference_end_ _reference_start_Revelation 17:8_reference_end_ \gtrm aiwn \trnl aiõn _reference_start_John 9:32_reference_end_ _reference_start_Hebrews 1:2_reference_end_ _reference_start_Hebrews 11:3_reference_end_ \gtrm gj \trnl gæ _reference_start_Hebrews 1:10_reference_end_ \en3 b. “Heaven and earth (and sea)” as the whole creation \gtrm gj \trnl gæ _reference_start_Matthew 5:18_reference_end_ _reference_start_Matthew 11:25_reference_e nd_ _reference_start_Matthew 24:35_reference_end_ _reference_start_Matthew 28:18_reference_end_ _reference_start_Mark 13:31_reference_end_ _reference_start_Luke 10:21_reference_end_ _reference_start_Luke 16:17_reference_end_ _reference_start_Luke 21:33_reference_end_ _reference_start_Acts 4:24_reference_end_ _reference_start_Acts 14:15_reference_end_ _reference_start_Ephesians 1:10_reference_end_ _reference_start_Ephesians 3:15_reference_end_ _reference_start_Colossians 1:16_reference_end_ _reference_start_Colossians 1:20_reference_end_ _reference_start_Hebrews 12:26_reference_end_ _reference_start_James 5:12_reference_end_ _reference_start_2 Peter 3:7_reference_end_ _reference_start_2 Peter 3:13_reference_end_ REV 5:3 (2 occurrences), 13 (2 occurrences); 10:6; 14:7; 20:11; 21:1 (2 occurrences) _reference_start_Revelation 5:3_reference_end_ _reference_start_Revelation 5:13_reference_end_ _reference_start_Revelation 10:6_reference_end_ _reference_start_Revelation 14:7_reference_end_ _reference_start_Revela tion 20:11_reference_end_ _reference_start_Revelation 21:1_reference_end_ \en3 c. Ground as distinct from the sky; a lowly place, down \gtrm gj \trnl gæ _reference_start_Matthew 10:29_reference_end_ _reference_start_Matthew 12:40_reference_end_ _reference_start_Matthew 15:35_reference_end_ _reference_start_Matthew 25:18_reference_end_ _reference_start_Matthew 25:25_reference_end_ _reference_start_Mark 4:31_reference_end_ _reference_start_Mark 8:6_reference_end_ _reference_start_Mark 9:20_reference_end_ _reference_start_Mark 14:35_reference_end_ _reference_start_Luke 6:49_reference_end_ _reference_start_Luke 12:56_reference_end_ _reference_start_Luke 21:25_reference_end_ _reference_start_Luke 24:5_reference_end_ _reference_start_John 8:6_reference_end_ _reference_start_John 8:8_reference_end_ _reference_start_John 12:32_reference_end_ _reference_start_Acts 2:19_reference_end_ _reference_start_Acts 9:4_reference_end_ _reference_start_Acts 9:8_reference_end_ _reference_start_Acts 10:11_reference_end_ _refer ence_start_Acts 26:14_reference_end_ _reference_start_2 Peter 3:5_reference_end_ _reference_start_Revelation 12:4_reference_end_ _reference_start_Revelation 12:13_reference_end_ _reference_start_Revelation 12:16_reference_end_ _reference_start_Revelation 13:13_reference_end_ \en3 d. Land as distinct from a body of water \gtrm gj \trnl gæ _reference_start_Matthew 14:24_reference_end_ _reference_start_Matthew 14:34_reference_end_ _reference_start_Mark 4:1_reference_end_ _reference_start_Mark 6:47_reference_end_ _reference_start_Mark 6:53_reference_end_ _reference_start_Luke 5:3_reference_end_ _reference_start_Luke 5:11_reference_end_ _reference_start_Luke 8:27_reference_end_ _reference_start_John 6:21_reference_end_ _reference_start_John 21:8_reference_end_ _reference_start_John 21:9_reference_end_ _reference_start_Acts 27:39_reference_end_ _reference_start_Acts 27:43_reference_end_ _reference_start_Acts 27:44_reference_end_ _reference_start_Hebrews 11:29_reference_end_ _reference_start_Revelation 10:2_ref erence_end_ _reference_start_Revelation 10:5_reference_end_ _reference_start_Revelation 10:8_reference_end_ \en3 e. Region as distinct from another area of land \gtrm gj \trnl gæ _reference_start_Matthew 2:6_reference_end_ _reference_start_Matthew 2:20_reference_end_ _reference_start_Matthew 2:21_reference_end_ _reference_start_Matthew 4:15_reference_end_ _reference_start_Matthew 10:15_reference_end_ _reference_start_Matthew 11:24_reference_end_ _reference_start_Matthew 27:45_reference_end_ _reference_start_Mark 15:33_reference_end_ _reference_start_Luke 4:25_reference_end_ _reference_start_Luke 4:26_reference_end_ _reference_start_Luke 23:44_reference_end_ _reference_start_John 3:22_reference_end_ _reference_start_Acts 7:3_reference_end_ _reference_start_Acts 7:4_reference_end_ _reference_start_Acts 7:6_reference_end_ _reference_start_Acts 7:29_reference_end_ _reference_start_Acts 7:33_reference_end_ _reference_start_Acts 7:40_reference_end_ _reference_start_Acts 13:17_reference_end_ _reference_start_Ac ts 13:19_reference_end_ _reference_start_Hebrews 8:9_reference_end_ _reference_start_Hebrews 11:9_reference_end_ _reference_start_Jude 1:5_reference_end_ \en3 f. Soil as for agricultural purposes \gtrm gj \trnl gæ _reference_start_Matthew 13:5_reference_end_ _reference_start_Matthew 13:8_reference_end_ _reference_start_Matthew 13:23_reference_end_ _reference_start_Mark 4:5_reference_end_ _reference_start_Mark 4:8_reference_end_ _reference_start_Mark 4:20_reference_end_ _reference_start_Mark 4:26_reference_end_ _reference_start_Mark 4:28_reference_end_ _reference_start_Mark 4:31_reference_end_ _reference_start_Luke 8:8_reference_end_ _reference_start_Luke 8:15_reference_end_ _reference_start_Luke 13:7_reference_end_ _reference_start_Luke 14:35_reference_end_ _reference_start_John 12:24_reference_end_ _reference_start_Hebrews 6:7_reference_end_ _reference_start_James 5:7_reference_end_ _reference_start_James 5:17_reference_end_ _reference_start_James 5:18_reference_end_ \en2 2. The world scene of human act ivities \en3 a. The whole world \gtrm kosmov \trnl kosmos _reference_start_Matthew 4:8_reference_end_ _reference_start_Matthew 13:38_reference_end_ _reference_start_Matthew 26:13_reference_end_ _reference_start_Mark 14:9_reference_end_ _reference_start_Mark 16:15_reference_end_ _reference_start_Luke 12:30_reference_end_ JHN 1:9, 10 (3 occurrences); 3:17 (3 occurrences), 19; 6:14; 9:5, 39; 10:36; 11:9, 27; 12:46; 13:1 (2 occurrences); 16:21, 28 (2 occurrences), 33; 17:11 (2 occurrences), 13, 15, 18 (2 occurrences); 18:37 _reference_start_John 1:9_reference_end_ _reference_start_John 1:10_reference_end_ _reference_start_John 3:17_reference_end_ _reference_start_John 3:19_reference_end_ _reference_start_John 6:14_reference_end_ _reference_start_John 9:5_reference_end_ _reference_start_John 9:39_reference_end_ _reference_start_John 10:36_reference_end_ _reference_start_John 11:9_reference_end_ _reference_start_John 11:27_reference_end_ _reference_start_John 12:46_reference_end_ _reference_start_John 13:1_refe rence_end_ _reference_start_John 16:21_reference_end_ _reference_start_John 16:28_reference_end_ _reference_start_John 16:33_reference_end_ _reference_start_John 17:11_reference_end_ _reference_start_John 17:13_reference_end_ _reference_start_John 17:15_reference_end_ _reference_start_John 17:18_reference_end_ _reference_start_John 18:37_reference_end_ ROM 1:8 (figure: hyperbole); 4:13; 5:12, 13 _reference_start_Romans 1:8_reference_end_ _reference_start_Romans 4:13_reference_end_ _reference_start_Romans 5:12_reference_end_ _reference_start_Romans 5:13_reference_end_ 1CO 1:27 (2 occurrences), 28; 5:10; 7:31, 33, 34; 14:10 _reference_start_1 Corinthians 1:27_reference_end_ _reference_start_1 Corinthians 1:28_reference_end_ _reference_start_1 Corinthians 5:10_reference_end_ _reference_start_1 Corinthians 7:31_reference_end_ _reference_start_1 Corinthians 7:33_reference_end_ _reference_start_1 Corinthians 7:34_reference_end_ _reference_start_1 Corinthians 14:10_reference_end_ _reference_start_2 Corinthians 1 :12_reference_end_ PHP 2:15 (alternate sense 1.) _reference_start_Philippians 2:15_reference_end_ COL 1:6 (figure: hyperbole) _reference_start_Colossians 1:6_reference_end_ _reference_start_1 Timothy 1:15_reference_end_ _reference_start_1 Timothy 3:16_reference_end_ _reference_start_1 Timothy 6:7_reference_end_ _reference_start_Hebrews 10:5_reference_end_ _reference_start_1 Peter 5:9_reference_end_ _reference_start_2 Peter 1:4_reference_end_ _reference_start_1 John 3:17_reference_end_ _reference_start_1 John 4:1_reference_end_ _reference_start_1 John 4:3_reference_end_ _reference_start_1 John 4:9_reference_end_ _reference_start_2 John 1:7_reference_end_ _reference_start_Revelation 11:15_reference_end_ \gtrm oikoumenj \trnl oikoumenæ _reference_start_Matthew 24:14_reference_end_ _reference_start_Luke 4:5_reference_end_ _reference_start_Luke 21:26_reference_end_ ACT 24:5 (figure: hyperbole) _reference_start_Acts 24:5_reference_end_ _reference_start_Romans 10:18_reference_end_ _reference_start_Hebrews 1:6_r eference_end_ _reference_start_Revelation 16:14_reference_end_ \en3 b. The whole earth \gtrm gj \trnl gæ MAT 5:5, 13, 35; 6:10, 19; 9:6; 10:34; 12:42; 16:19 (2 occurrences); 17:25; 18:18 (2 occurrences), 19; 23:9, 35; 24:30; 27:51 _reference_start_Matthew 5:5_reference_end_ _reference_start_Matthew 5:13_reference_end_ _reference_start_Matthew 5:35_reference_end_ _reference_start_Matthew 6:10_reference_end_ _reference_start_Matthew 6:19_reference_end_ _reference_start_Matthew 9:6_reference_end_ _reference_start_Matthew 10:34_reference_end_ _reference_start_Matthew 12:42_reference_end_ _reference_start_Matthew 16:19_reference_end_ _reference_start_Matthew 17:25_reference_end_ _reference_start_Matthew 18:18_reference_end_ _reference_start_Matthew 18:19_reference_end_ _reference_start_Matthew 23:9_reference_end_ _reference_start_Matthew 23:35_reference_end_ _reference_start_Matthew 24:30_reference_end_ _reference_start_Matthew 27:51_reference_end_ _reference_start_Mark 2:10_reference_end_ _reference_start_Ma rk 9:3_reference_end_ _reference_start_Mark 13:27_reference_end_ _reference_start_Luke 2:14_reference_end_ _reference_start_Luke 5:24_reference_end_ _reference_start_Luke 11:31_reference_end_ _reference_start_Luke 12:49_reference_end_ _reference_start_Luke 12:51_reference_end_ _reference_start_Luke 18:8_reference_end_ _reference_start_Luke 21:23_reference_end_ _reference_start_Luke 21:35_reference_end_ JHN 3:31 (3 occurrences); 17:4 _reference_start_John 3:31_reference_end_ _reference_start_John 17:4_reference_end_ _reference_start_Acts 1:8_reference_end_ _reference_start_Acts 3:25_reference_end_ _reference_start_Acts 4:26_reference_end_ _reference_start_Acts 7:49_reference_end_ _reference_start_Acts 8:33_reference_end_ _reference_start_Acts 13:47_reference_end_ _reference_start_Acts 17:26_reference_end_ _reference_start_Acts 22:22_reference_end_ _reference_start_Romans 9:17_reference_end_ _reference_start_Romans 9:28_reference_end_ 1CO 8:5; 10:26; 15:47 (alternate sense 1.c.) _reference_start_1 Corinthia ns 8:5_reference_end_ _reference_start_1 Corinthians 10:26_reference_end_ _reference_start_1 Corinthians 15:47_reference_end_ _reference_start_Ephesians 4:9_reference_end_ _reference_start_Ephesians 6:3_reference_end_ _reference_start_Colossians 3:2_reference_end_ _reference_start_Hebrews 8:4_reference_end_ _reference_start_Hebrews 12:25_reference_end_ _reference_start_Hebrews 12:26_reference_end_ _reference_start_James 5:5_reference_end_ _reference_start_2 Peter 3:10_reference_end_ REV 1:5, 7; 5:6, 10; 6:4, 8, 10, 13, 15; 7:1 (2 occurrences), 2, 3; 8:5, 7, 13; 9:1, 3, 4; 11:4, 6, 10, 18; 12:12; 13:3, 11, 12, 14 (2 occurrences); 14:3, 6, 15, 16 (2 occurrences), 18, 19; 16:1, 2, 18; 17:2 (2 occurrences), 18; 18:1, 3 (2 occurrences), 9, 11, 23, 24; 19:2, 19; 20:8, 9; 21:24 _reference_start_Revelation 1:5_reference_end_ _reference_start_Revelation 1:7_reference_end_ _reference_start_Revelation 5:6_reference_end_ _reference_start_Revelation 5:10_reference_end_ _reference_start_Revelation 6:4_reference_end_ _r eference_start_Revelation 6:8_reference_end_ _reference_start_Revelation 6:10_reference_end_ _reference_start_Revelation 6:13_reference_end_ _reference_start_Revelation 6:15_reference_end_ _reference_start_Revelation 7:1_reference_end_ _reference_start_Revelation 7:2_reference_end_ _reference_start_Revelation 7:3_reference_end_ _reference_start_Revelation 8:5_reference_end_ _reference_start_Revelation 8:7_reference_end_ _reference_start_Revelation 8:13_reference_end_ _reference_start_Revelation 9:1_reference_end_ _reference_start_Revelation 9:3_reference_end_ _reference_start_Revelation 9:4_reference_end_ _reference_start_Revelation 11:4_reference_end_ _reference_start_Revelation 11:6_reference_end_ _reference_start_Revelation 11:10_reference_end_ _reference_start_Revelation 11:18_reference_end_ _reference_start_Revelation 12:12_reference_end_ _reference_start_Revelation 13:3_reference_end_ _reference_start_Revelation 13:11_reference_end_ _reference_start_Revelation 13:12_reference_end_ _reference_start_R evelation 13:14_reference_end_ _reference_start_Revelation 14:3_reference_end_ _reference_start_Revelation 14:6_reference_end_ _reference_start_Revelation 14:15_reference_end_ _reference_start_Revelation 14:16_reference_end_ _reference_start_Revelation 14:18_reference_end_ _reference_start_Revelation 14:19_reference_end_ _reference_start_Revelation 16:1_reference_end_ _reference_start_Revelation 16:2_reference_end_ _reference_start_Revelation 16:18_reference_end_ _reference_start_Revelation 17:2_reference_end_ _reference_start_Revelation 17:18_reference_end_ _reference_start_Revelation 18:1_reference_end_ _reference_start_Revelation 18:3_reference_end_ _reference_start_Revelation 18:9_reference_end_ _reference_start_Revelation 18:11_reference_end_ _reference_start_Revelation 18:23_reference_end_ _reference_start_Revelation 18:24_reference_end_ _reference_start_Revelation 19:2_reference_end_ _reference_start_Revelation 19:19_reference_end_ _reference_start_Revelation 20:8_reference_end_ _reference_start_Re velation 20:9_reference_end_ _reference_start_Revelation 21:24_reference_end_ \en3 c. The civilized world, the Roman empire \gtrm oikoumenj \trnl oikoumenæ _reference_start_Acts 11:28_reference_end_ \en2 3. The inhabitants of the world \en3 a. The inhabitants of the universe--angels and people \gtrm kosmov \trnl kosmos _reference_start_1 Corinthians 4:9_reference_end_ \en3 b. The inhabitants of the earth, people and animals \gtrm kosmov \trnl kosmos _reference_start_John 14:19_reference_end_ _reference_start_2 Peter 3:6_reference_end_ \en3 c. All human beings \gtrm kosmov \trnl kosmos _reference_start_Matthew 5:14_reference_end_ _reference_start_Matthew 18:7_reference_end_ JHN 1:29; 3:16, 17 (3 occurrences); 4:42; 6:33, 51; 8:12, 26; 9:5; 12:19 (figure: hyperbole), 31, 47 (2 occurrences); 14:31; 17:6, 21, 23 _reference_start_John 1:29_reference_end_ _reference_start_John 3:16_reference_end_ _reference_start_John 3:17_reference_end_ _reference_start_John 4:42_reference_end_ _reference_start_John 6:33_refe rence_end_ _reference_start_John 6:51_reference_end_ _reference_start_John 8:12_reference_end_ _reference_start_John 8:26_reference_end_ _reference_start_John 9:5_reference_end_ _reference_start_John 12:19_reference_end_ _reference_start_John 12:31_reference_end_ _reference_start_John 12:47_reference_end_ _reference_start_John 14:31_reference_end_ _reference_start_John 17:6_reference_end_ _reference_start_John 17:21_reference_end_ _reference_start_John 17:23_reference_end_ _reference_start_Romans 3:6_reference_end_ _reference_start_Romans 3:19_reference_end_ 1CO 4:13; 5:10; 6:2 (2 occurrences) _reference_start_1 Corinthians 4:13_reference_end_ _reference_start_1 Corinthians 5:10_reference_end_ _reference_start_1 Corinthians 6:2_reference_end_ _reference_start_2 Corinthians 5:19_reference_end_ _reference_start_James 2:5_reference_end_ 1JN 2:2; 4:14; 5:19 (figure: hyperbole) _reference_start_1 John 2:2_reference_end_ _reference_start_1 John 4:14_reference_end_ _reference_start_1 John 5:19_reference_end_ \gt rm oikoumenj \trnl oikoumenæ ACT 17:31; 19:27 (figure: hyperbole) _reference_start_Acts 17:31_reference_end_ _reference_start_Acts 19:27_reference_end_ _reference_start_Revelation 3:10_reference_end_ _reference_start_Revelation 12:9_reference_end_ \en3 d. Human beings in general, but not all \gtrm kosmov \trnl kosmos _reference_start_John 1:10_reference_end_ _reference_start_John 14:17_reference_end_ _reference_start_John 14:27_reference_end_ _reference_start_John 17:9_reference_end_ _reference_start_John 17:14_reference_end_ _reference_start_John 17:25_reference_end_ _reference_start_Romans 11:12_reference_end_ _reference_start_Romans 11:15_reference_end_ _reference_start_Hebrews 11:7_reference_end_ _reference_start_Hebrews 11:38_reference_end_ 2PE 2:5 (2 occurrences) _reference_start_2 Peter 2:5_reference_end_ _reference_start_1 John 3:1_reference_end_ _reference_start_1 John 3:13_reference_end_ \en3 e. Civilized people, the inhabitants of the Roman world \gtrm oikoumenj \trnl oikoumenæ _reference_sta rt_Luke 2:1_reference_end_ \en3 f. People who live outside the speaker's district \gtrm kosmov \trnl kosmos _reference_start_John 7:4_reference_end_ _reference_start_John 14:22_reference_end_ _reference_start_John 18:20_reference_end_ \gtrm oikoumenj \trnl oikoumenæ _reference_start_Acts 17:6_reference_end_ \en2 4. The world as a moral system opposed to God and Christ \gtrm kosmov \trnl kosmos JHN 7:7; 12:31; 15:18, 19 (5 occurrences); 16:8, 20, 33; 17:14 (2 occurrences), 16 (2 occurrences) _reference_start_John 7:7_reference_end_ _reference_start_John 12:31_reference_end_ _reference_start_John 15:18_reference_end_ _reference_start_John 15:19_reference_end_ _reference_start_John 16:8_reference_end_ _reference_start_John 16:20_reference_end_ _reference_start_John 16:33_reference_end_ _reference_start_John 17:14_reference_end_ _reference_start_John 17:16_reference_end_ _reference_start_1 Corinthians 1:20_reference_end_ _reference_start_1 Corinthians 1:21_reference_end_ _reference_start_1 Corinthians 2:12_r eference_end_ _reference_start_1 Corinthians 11:32_reference_end_ _reference_start_2 Corinthians 7:10_reference_end_ GAL 6:14 (2 occurrences) _reference_start_Galatians 6:14_reference_end_ _reference_start_Ephesians 2:2_reference_end_ _reference_start_Ephesians 2:12_reference_end_ JAS 1:27; 3:6 (figurative?); 4:4 (2 occurrences) _reference_start_James 1:27_reference_end_ _reference_start_James 3:6_reference_end_ _reference_start_James 4:4_reference_end_ _reference_start_2 Peter 2:20_reference_end_ 1JN 2:15 (3 occurrences), 16 (2 occurrences), 17; 4:4, 5 (3 occurrences); 5:4 (2 occurrences), 5 _reference_start_1 John 2:15_reference_end_ _reference_start_1 John 2:16_reference_end_ _reference_start_1 John 2:17_reference_end_ _reference_start_1 John 4:4_reference_end_ _reference_start_1 John 4:5_reference_end_ _reference_start_1 John 5:4_reference_end_ _reference_start_1 John 5:5_reference_end_ \gtrm kosmikov \trnl kosmikos _reference_start_Titus 2:12_reference_end_ \gtrm aiwn \trnl aiõn _reference_start_Rom ans 12:2_reference_end_ \gtrm kosmokratwr \trnl kosmokratõr _reference_start_Ephesians 6:12_reference_end_ \en2 5. The material goods and the pleasures of this world \gtrm kosmov \trnl kosmos _reference_start_Matthew 16:26_reference_end_ _reference_start_Mark 8:36_reference_end_ _reference_start_Luke 9:25_reference_end_ _reference_start_1 Corinthians 7:31_reference_end_ \gtrm aiwn \trnl aiõn _reference_start_Matthew 13:22_reference_end_ _reference_start_Mark 4:19_reference_end_ \en2 6. This world/age and the world/age to come \gtrm kosmov \trnl kosmos JHN 8:23 (2 occurrences); 12:25; 13:1 (2 occurrences); 14:30; 16:11; 18:36 (2 occurrences) _reference_start_John 8:23_reference_end_ _reference_start_John 12:25_reference_end_ _reference_start_John 13:1_reference_end_ _reference_start_John 14:30_reference_end_ _reference_start_John 16:11_reference_end_ _reference_start_John 18:36_reference_end_ _reference_start_1 Corinthians 3:19_reference_end_ _reference_start_1 John 4:17_reference_end_ \gtrm aiwn \trnl a iõn _reference_start_Matthew 12:32_reference_end_ _reference_start_Matthew 13:39_reference_end_ _reference_start_Matthew 13:40_reference_end_ _reference_start_Matthew 13:49_reference_end_ _reference_start_Matthew 24:3_reference_end_ _reference_start_Matthew 28:20_reference_end_ _reference_start_Mark 10:30_reference_end_ _reference_start_Luke 16:8_reference_end_ _reference_start_Luke 18:30_reference_end_ _reference_start_Luke 20:34_reference_end_ _reference_start_Luke 20:35_reference_end_ 1CO 1:20; 2:6 (2 occurrences), 8; 3:18; 10:11 _reference_start_1 Corinthians 1:20_reference_end_ _reference_start_1 Corinthians 2:6_reference_end_ _reference_start_1 Corinthians 2:8_reference_end_ _reference_start_1 Corinthians 3:18_reference_end_ _reference_start_1 Corinthians 10:11_reference_end_ _reference_start_2 Corinthians 4:4_reference_end_ _reference_start_Galatians 1:4_reference_end_ _reference_start_Ephesians 1:21_reference_end_ _reference_start_Ephesians 2:7_reference_end_ _reference_start_1 Timothy 6:17_reference_end_ _reference_start_2 Timothy 4:10_reference_end_ _reference_start_Titus 2:12_reference_end_ _reference_start_Hebrews 6:5_reference_end_ _reference_start_Hebrews 9:26_reference_end_ \gtrm oikoumenj \trnl oikoumenæ _reference_start_Hebrews 2:5_reference_end_ \gtrm paliggenesia \trnl palingenesia _reference_start_Matthew 19:28_reference_end_ \en2 7. A clear reference to a past time or age \gtrm aiwn \trnl aiõn _reference_start_Luke 1:70_reference_end_ _reference_start_Acts 3:21_reference_end_ _reference_start_Acts 15:18_reference_end_ _reference_start_1 Corinthians 2:7_reference_end_ _reference_start_Ephesians 3:9_reference_end_ _reference_start_Colossians 1:26_reference_end_ _reference_start_Jude 1:25_reference_end_ \en2 8. A special phrase: elemental spirits of the universe \gtrm kosmov \trnl kosmos _reference_start_Galatians 4:3_reference_end_ _reference_start_Colossians 2:8_reference_end_ _reference_start_Colossians 2:20_reference_end_ \itrm Implied _reference_start_Galatians 4:9_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( >, =, <, ;+ :*, 9* 8* 7)! 6(- 5(  4(  3( 2( 1( 0( /B  .B  -B  ,:  +,, *,+ ),' (+ '+ &+ %* $* #* ")5 !)/ ) (" ( B B  B B  = , , ,  ,  , + + + * * * 8 *1 )# )  ) ) ( ( (# ( ( (  B B B B  ?tfXJ<. xj\N@2$|n`RD6( }. |." {.! z. y. x. w. v- u- t- s- r+% q+ p+ o+ n+ m+! l+ k+ j+  i+ . h+  g+ f+ $ e+ ' d+  c+ b+ a+ `+ _+ ^*  ]) \) [( Z( & Y( X; W; V; U: T+  S*# R*  Q* P* O) N) M) L) K) J) I(  H(  G(  FA E: D: C,  B,  A,( @,! ?, ?tfXJ<. xj\N@2$|n`RD6( <.  ;. :-  9-  8, 7, 6, / 5,! 4,1 3, 2, 1, 0+ /+ .*# -* ,* +* 3 ** 1 )*  (* '* &)  %)  $) #(3 "( !(# ( ( ( ( ( ( * ( " (  ( ( (# ( ( B : -  , * * ( B  ? > > > > = < :  6 6 6 3 2 ~/ ?tfXJ<. xj\N@2$|n`RD6( {( z= y+ x. w,  vB uB tB sB rB qB pB oB nB mB lB kB jB iB hB gB fB eB dB cB bB aB `B  _B ^B ]B  \B [B  ZB YB  XB  WB  VB  UB  TB SB RB QB PB OB NB MB LB KB JB IB HB GB FB E= D; C:  B:  A: @3 ?1 >1 =./ ?tfXJ<. xj\N@2$|n`RD6( :/ 9. 8. 7. 6. 5+ 4+ 3+! 2+ 1+ 0+ /+ .+  -+ ,, ++ *+ )+ (* '> &> %= $: & #:  "-  !- + + + + + + B B , , > > > ; / . . . - - + + + + + / +  +  +  + + +3 +! +* + ~+ }+ |( ?tfXJ<. xj\N@2$|n`RD6( y1 x. w, v, u*F t( s: r:  q: p8 o7 n6 m1 l1 k0 j/ i. h. g. f. e. d*# c*" b* a* `)  _( ^( ]( 1 \( ( [( ' Z( Y> X. W+$ V+ U+ T+  S+  R+ Q) P(  O. N*  M)$ L( K1 J-  I8 H> G> F> E> D> C> B> A= @; ?; >; =1 <1 ;0 ?tfXJ<. xj\N@2$|n`RD6( 8B 7B 6B 5B 4B 3B 2B  1B 0B  /B  .B  -B  ,B  +B *B )B (:  ': &. %, $,  #, ",+ !+  + & + + + + + * * ) ( ( (! ( ( ( ( ( ,  :  2 - , , , ,* , *% :  -  -  3 , 3 0 ~3 }3 |0 {A z3 one's self before \gtrm proskunjtjv \trnl proskunætæs \xref [L&N 53.57] \def worshiper \gtrm sebazomai \trnl sebazomai \xref [L&N 53.53] \def worship \gtrm sebasma \trnl sebasma \xref [L&N 53.54] \def place of worship \xref [L&N 53.55] \def object of worship \gtrm sebomai \trnl sebomai \xref [L&N 53.53] \def worship \gtrm eidwlolatria \trnl eidõlolatria \xref [L&N 53.64] \def worshiper of idols \note Also: idolaters (RSV) \gtrm leitourgia \trnl leitourgia \xref [L&N 35.22] \def service \xref [L&N 53.13] \def performance of religious duties \xref [L&N 35.25] \def ministry \en2 1. Worship \gtrm eqeloqrjskia \trnl ethelothræskia _reference_start_Colossians 2:23_reference_end_ \gtrm eusebew \trnl eusebeõ _reference_start_Acts 17:23_reference_end_ \gtrm qrjskeia \trnl thræskeia _reference_start_Colossians 2:18_reference_end_ \gtrm latreia \trnl latreia _reference_start_Romans 9:4_reference_end_ _reference_start_Romans 12:1_reference_end_ _reference_start_Hebrews 9:1_reference_end_ \gtrm latreuw \trnl la treuõ _reference_start_Luke 2:37_reference_end_ _reference_start_Acts 7:7_reference_end_ _reference_start_Acts 7:42_reference_end_ _reference_start_Acts 24:14_reference_end_ _reference_start_Acts 26:7_reference_end_ _reference_start_Acts 27:23_reference_end_ _reference_start_Romans 1:25_reference_end_ _reference_start_Philippians 3:3_reference_end_ _reference_start_Hebrews 12:28_reference_end_ \gtrm leitourgew \trnl leitourgeõ _reference_start_Acts 13:2_reference_end_ \gtrm proskunew \trnl proskuneõ _reference_start_Matthew 2:2_reference_end_ _reference_start_Matthew 2:8_reference_end_ _reference_start_Matthew 2:11_reference_end_ _reference_start_Matthew 4:9_reference_end_ _reference_start_Matthew 4:10_reference_end_ _reference_start_Matthew 14:33_reference_end_ _reference_start_Matthew 28:9_reference_end_ _reference_start_Matthew 28:17_reference_end_ _reference_start_Mark 5:6_reference_end_ _reference_start_Luke 4:7_reference_end_ _reference_start_Luke 4:8_reference_end_ JHN 4:20 (2 occurrences), 21, 22 (2 occurrences), 23, 24; 9:38; 12:20 _reference_start_John 4:20_reference_end_ _reference_start_John 4:21_reference_end_ _reference_start_John 4:22_reference_end_ _reference_start_John 4:23_reference_end_ _reference_start_John 4:24_reference_end_ _reference_start_John 9:38_reference_end_ _reference_start_John 12:20_reference_end_ _reference_start_Acts 7:43_reference_end_ _reference_start_Acts 8:27_reference_end_ _reference_start_Acts 10:25_reference_end_ _reference_start_Acts 24:11_reference_end_ _reference_start_1 Corinthians 14:25_reference_end_ _reference_start_Hebrews 1:6_reference_end_ _reference_start_Hebrews 11:21_reference_end_ REV 4:10; 5:14; 7:11; 9:20; 11:1, 16; 13:4 (2 occurrences), 8, 12, 15; 14:7, 9, 11; 15:4; 16:2; 19:4, 10 (2 occurrences), 20; 20:4; 22:3, 8, 9 _reference_start_Revelation 4:10_reference_end_ _reference_start_Revelation 5:14_reference_end_ _reference_start_Revelation 7:11_reference_end_ _reference_start_Revelation 9:20_reference_end_ _reference_start_Revelation 11:1_refer ence_end_ _reference_start_Revelation 11:16_reference_end_ _reference_start_Revelation 13:4_reference_end_ _reference_start_Revelation 13:8_reference_end_ _reference_start_Revelation 13:12_reference_end_ _reference_start_Revelation 13:15_reference_end_ _reference_start_Revelation 14:7_reference_end_ _reference_start_Revelation 14:9_reference_end_ _reference_start_Revelation 14:11_reference_end_ _reference_start_Revelation 15:4_reference_end_ _reference_start_Revelation 16:2_reference_end_ _reference_start_Revelation 19:4_reference_end_ _reference_start_Revelation 19:10_reference_end_ _reference_start_Revelation 19:20_reference_end_ _reference_start_Revelation 20:4_reference_end_ _reference_start_Revelation 22:3_reference_end_ _reference_start_Revelation 22:8_reference_end_ _reference_start_Revelation 22:9_reference_end_ \gtrm sebazomai \trnl sebazomai _reference_start_Romans 1:25_reference_end_ \gtrm sebasma \trnl sebasma _reference_start_Acts 17:23_reference_end_ _reference_start_2 Thessalonians 2:4_reference_end_ \gtrm sebomai \trnl sebomai _reference_start_Matthew 15:9_reference_end_ _reference_start_Mark 7:7_reference_end_ _reference_start_Acts 18:13_reference_end_ _reference_start_Acts 19:27_reference_end_ \gtrm eidwlolatria \trnl eidõlolatria _reference_start_1 Corinthians 10:14_reference_end_ \gtrm leitourgia \trnl leitourgia _reference_start_Hebrews 9:21_reference_end_ \en2 2. Worshipers of God, devout people \gtrm qeosebjv \trnl theosebæs _reference_start_John 9:31_reference_end_ \gtrm latreuw \trnl latreuõ _reference_start_Hebrews 9:9_reference_end_ _reference_start_Hebrews 10:2_reference_end_ \gtrm proskunjtjv \trnl proskunætæs _reference_start_John 4:23_reference_end_ \gtrm sebomai \trnl sebomai _reference_start_Acts 16:14_reference_end_ _reference_start_Acts 18:7_reference_end_ _reference_start_Acts 13:43_reference_end_ _reference_start_Acts 13:50_reference_end_ _reference_start_Acts 16:14_reference_end_ _reference_start_Acts 17:4_reference_end_ _reference_start_Acts 17:17_reference_end_ $%WORSHIPworship\see (see also GLORY, IDOLS, SERVE) \o1 1. Worship \o1 2. Worshipers of God, devout people \gtrm eqeloqrjskia \trnl ethelothræskia \xref [L&N 53.12] \def self imposed religion \gtrm eusebew \trnl eusebeõ \xref [L&N 53.53] \def worship \xref [L&N 71.29] \def fulfill one's duties \gtrm qeosebjv \trnl theosebæs \xref [L&N 53.6] \def religious \gtrm qrjskeia \trnl thræskeia \xref [L&N 53.1] \def religion \gtrm latreia \trnl latreia \xref [L&N 53.14] \def worship \note Also: ritual duties, service (RSV) \gtrm latreuw \trnl latreuõ \xref [L&N 53.14] \def worship \gtrm leitourgew \trnl leitourgeõ \def worship (once-RSV) \xref [L&N 35.22] \def serve \xref [L&N 53.13] \def perform religious duties \gtrm proskunew \trnl proskuneõ \xref [L&N 53.56] \def worship \xref [L&N 17.21] \def prostrate ?tfXJ<. xj\N@2$|n`RD6( w v 2 u t s r ! q  p  o n m  l  k  j 0 i  h  g." f+ e d  c b a ` _ ^ ] \ [&  Z Y X W  V  U  T S R, Q, P, O, 2 N, + M, L, K+ J:  I: H+  G:  F.  E, D, C) B( A5 @, ?- >B =B <B ;B :B 9B ;;V##yabominationabomination\h ŠûÐqiH \f abomination \cme detestable thing, idols & their worship \cmf chose détestée, idols et leur culte _reference_start_2 Kings 23:24_reference_end_ _reference_start_Daniel _11oAbadon (the abyss)abadon (the abyss)\h €ôÐdabá' \f abîme \cme the abyss, where the dead go \cmf le lieu des morts _reference_start_Proverbs 15:11_reference_end_ _reference_start_Proverbs 27:20_reference_end_9:27_reference_end_ _reference_start_Daniel 11:31_reference_end_ _reference_start_Daniel 12:11_reference_end_ _reference_start_Deuteronomy 29:16_reference_end_ _reference_start_Jeremiah 4:01_reference_end_ \cme detestable thing, unclean food \cmf chose détestée, nouriture impure _reference_start_Zechariah 9:07_reference_end_ \cme disgusting morally \cmf horreur moralement _reference_start_Deuteronomy 25:16_reference_end_ _reference_start_Leviticus 18:22_reference_end_ _reference_start_Leviticus 18:26_reference_end_ _reference_start_Leviticus 18:27_reference_end_ _reference_start_Leviticus 18:29_reference_end_ _reference_start_Leviticus 20:13_reference_end_ \cme disgusting, ritually unclean \cmf horreur, impure rituélement _reference_start_Deuteronomy 14:03_reference_end_ _reference_start_Deuteronomy 24:04_reference_end_ _reference_start_Deuteronomy 32:16_reference_end_ _reference_start_Exodus 8:22_reference_end_ _reference_start_Genesis 43:32_reference_end_ _reference_start_Genesis 46:34_reference_end_fices on \cmf construit (de pierres) pour y faire des sacrifices _reference_start_1 Kings 1:50_reference_end_ _reference_start_Exodus 17:15_reference_end_ _reference_start_Exodus 20:24_reference_end_ _reference_start_Exodus 20:25_reference_end_ _reference_start_Exodus 20:26_reference_end_ _reference_start_Exodus 21:14_reference_end_ _reference_start_Exodus 24:04_reference_end_ _reference_start_Exodus 24:06_reference_end_ _reference_start_Genesis 8:20_reference_end_ _reference_start_Genesis 12:07_reference_end_ _reference_start_Genesis 12:08_reference_end_ _reference_start_Genesis 13:04_reference_end_ _reference_start_Genesis 13:18_reference_end_ _reference_start_Genesis 22:09_reference_end_ _reference_start_Genesis 26:25_reference_end_ _reference_start_Genesis 33:20_reference_end_ _reference_start_Genesis 35:01_reference_end_ _reference_start_Genesis 35:03_reference_end_ _reference_start_Genesis 35:07_reference_end_ _reference_start_Joshua 8:30_reference_end_ _reference_start_Leviticus 5:12_reference_end_ ww}_altaraltar\h axEJbzim \f autel \cme altar in the temple in Jerusalem \cmf autel dans le temple à Jerusalem _reference_start_1 Kings 6:20_reference_end_ _reference_start_1 Kings 6:22_reference_end_ _reference_start_1 Kings 7:48_reference_end_ _reference_start_1 Kings 8:22_reference_end_ _reference_start_1 Kings 8:31_reference_end_ _reference_start_1 Kings 9:25_reference_end_ \cme altar of burnt offerings \cmf autel de haulocaustes _reference_start_Exodus 30:28_reference_end_ _reference_start_Exodus 31:09_reference_end_ \cme altar of incense \cmf autel de parfums _reference_start_1 Kings 6:20_reference_end_ _reference_start_1 Kings 6:22_reference_end_ _reference_start_1 Kings 12:33_reference_end_ _reference_start_Exodus 30:01_reference_end_ _reference_start_Exodus 30:27_reference_end_ _reference_start_Exodus 31:08_reference_end_ \cme something built (of stones) to make sacri ?tfXJ<. xj\N@2$|n`RD6( 6  5  4 3 3 2A  1$ 0) /  .  -  , +( *  )0 ( '( & % $ # " !    "        " "              # # # !           ~ } | { z y x uangelangel\h ªA'ülam. \f ange \cme angel as messenger from God \cmf messager angélique envoyé par Dieu _reference_start_Daniel 3:28_reference_end_ _reference_start_Daniel 6:23_reference_end_ _reference_start_Genesis 19:01_reference_end_ _reference_start_Genesis 19:15_reference_end_ _reference_start_Genesis 28:12_reference_end_ _reference_start_Genesis 32:02_reference_end_ \cme person sent as messenger \cmf personne qui apporte un message _reference_start_Deuteronomy 2:26_reference_end_ _reference_start_Ge ++GAncient of Daysancient of days\h €yimôy qyiGtav \f Ancien des jours \cme The Ancient of Days \cmf L'Ancien des jours _reference_start_Daniel 7:09_reference_end_ _reference_start_Daniel 7:13_reference_end_ _reference_start_Daniel 7:22_reference_end_nesis 34:04_reference_end_ _reference_start_Genesis 34:07_reference_end_ _reference_start_Joshua 6:17_reference_end_ _reference_start_Numbers 20:14_reference_end_ _reference_start_Numbers 20:16_reference_end_ \cme theophany (God appearing to men) \cmf théophanie (Dieu apparait aux hommes) _reference_start_Exodus 3:02_reference_end_ _reference_start_Exodus 14:19_reference_end_ _reference_start_Exodus 23:20_reference_end_ _reference_start_Exodus 23:23_reference_end_ _reference_start_Exodus 32:34_reference_end_ _reference_start_Genesis 16:07_reference_end_ _reference_start_Genesis 16:09_reference_end_ _reference_start_Genesis 16:10_reference_end_ _reference_start_Genesis 16:11_reference_end_ _reference_start_Genesis 21:17_reference_end_ _reference_start_Genesis 22:11_reference_end_ _reference_start_Genesis 22:15_reference_end_ _reference_start_Genesis 24:07_reference_end_ _reference_start_Genesis 24:40_reference_end_ _reference_start_Genesis 31:11_reference_end_ _reference_start_Genesis 48:16_reference_end_ }}##Kanoint (to)anoint (to)\h xaHAm \f oindre \cme put oil on for personal care \cmf mettre de l'huile pour des soins personnels _reference_start_2 Samuel 14:02_reference_end_ _reference_start_Deuteronomy 28:40_reference_end_ _reference_start_Ruth 3:03_reference_end_ \cme setting apart (by annointing with oil) \cmf designer pour qqch spécial (par onction d'huile) _reference_start_1 Kings 19:16_reference_end_ _reference_start_1 Samuel 9:16_reference_end_ _reference_start_Daniel 9:24_reference_end_ _reference_start_Exodus 28:41_reference_end_ _reference_start_Exodus 29:36_reference_end_ _reference_start_Jude 9:08_reference_end_nce_end_ _reference_start_1 Samuel 24:11_reference_end_ _reference_start_1 Samuel 26:09_reference_end_ _reference_start_1 Samuel 26:11_reference_end_ _reference_start_1 Samuel 26:16_reference_end_ _reference_start_1 Samuel 26:23_reference_end_ _reference_start_2 Samuel 1:14_reference_end_ _reference_start_2 Samuel 1:16_reference_end_ _reference_start_2 Samuel 19:22_reference_end_ _reference_start_2 Samuel 23:01_reference_end_ _reference_start_Psalms 28:08_reference_end_ \cme Messianic prince \cmf prince messianique _reference_start_Daniel 9:25_reference_end_ _reference_start_Daniel 9:26_reference_end_ \cme patriarchs of Israel \cmf partriarches d'Israël _reference_start_1 Chronicles 16:22_reference_end_ _reference_start_Psalms 105:15_reference_end_ \cme putting oil or something on something to consecrate it \cmf metre huile ou autre substance sur qqch pour le consacrer _reference_start_2 Samuel 1:21_reference_end_ _reference_start_Leviticus 4:03_reference_end_ _reference_start_Psalms 84:10_reference_end_ \77]ark (of the covenant)ark (of the covenant)\h tyærüÐb €ôrá' \f coffre (de l'alliance) \ s?anointedanointed\h ÞxyiHAm \f oint \cme Davidic dynasy with Messianic ideals \cmf dynastie de David avec idéals messianique _reference_start_2 Samuel 22:51_reference_end_ _reference_start_Psalms 2:02_reference_end_ \cme king of Israel, annointed by God's command \cmf roi d'Israël oint par commandemant de Dieu _reference_start_1 Samuel 12:03_reference_end_ _reference_start_1 Samuel 12:05_reference_end_ _reference_start_1 Samuel 16:06_reference_end_ _reference_start_1 Samuel 24:07_refere  ?tfXJ<. wi[M?1#{m_QC5' u  t  s  r  q  p  o  n  m  l  k  j  i  h  g  f % e  d  c  b  a  `  _  ^  ]  \  [  Z  Y  X  W  V  U  T S R Q P  O  N  M  L  K J) IT H G  Fi E  D  C  B A  @  ?  >  =  <  ;  :  9  8  7  cme ark representing God's power \cmf boite réprésentant le pouvoir de Dieu _reference_start_2 Chronicles 6:41_reference_end_ _reference_start_Psalms 132:08_reference_end_ \cme box representing God's presence \cmf boite réprésentant la présence de Dieu _reference_start_1 Chronicles 6:16_reference_end_ _reference_start_1 Chronicles 13:03_reference_end_ _reference_start_1 Chronicles 13:05_reference_end_ _reference_start_1 Chronicles 13:06_reference_end_ _reference_start_1 Chronicles 13:07_reference_end_ _reference_start_1 Chronicles 13:09_reference_end_ _reference_start_1 Chronicles 13:10_reference_end_ _reference_start_1 Chronicles 13:12_reference_end_ _reference_start_1 Chronicles 13:13_reference_end_ _reference_start_1 Chronicles 13:14_reference_end_ _reference_start_1 Chronicles 15:01_reference_end_ _reference_start_1 Chronicles 15:02_reference_end_ _reference_start_1 Chronicles 15:03_reference_end_ _reference_start_1 Chronicles 15:12_reference_end_ _reference_start_1 Chronicles 15:14_reference_end _ _reference_start_1 Chronicles 15:15_reference_end_ _reference_start_1 Chronicles 15:23_reference_end_ _reference_start_1 Chronicles 15:24_reference_end_ _reference_start_1 Chronicles 15:25_reference_end_ _reference_start_1 Chronicles 15:26_reference_end_ _reference_start_1 Chronicles 15:27_reference_end_ _reference_start_1 Chronicles 15:28_reference_end_ _reference_start_1 Chronicles 15:29_reference_end_ _reference_start_1 Chronicles 16:01_reference_end_ _reference_start_1 Chronicles 16:04_reference_end_ _reference_start_1 Chronicles 16:06_reference_end_ _reference_start_1 Chronicles 16:37_reference_end_ _reference_start_1 Chronicles 17:01_reference_end_ _reference_start_1 Chronicles 22:19_reference_end_ _reference_start_1 Chronicles 28:02_reference_end_ _reference_start_1 Chronicles 28:18_reference_end_ _reference_start_1 Kings 2:26_reference_end_ _reference_start_1 Kings 3:15_reference_end_ _reference_start_1 Kings 6:19_reference_end_ _reference_start_1 Kings 8:01_reference_end_ _reference_start_1 Kin gs 8:03_reference_end_ _reference_start_1 Kings 8:04_reference_end_ _reference_start_1 Kings 8:05_reference_end_ _reference_start_1 Kings 8:06_reference_end_ _reference_start_1 Kings 8:07_reference_end_ _reference_start_1 Kings 8:09_reference_end_ _reference_start_1 Kings 8:21_reference_end_ _reference_start_1 Samuel 3:03_reference_end_ _reference_start_1 Samuel 4:03_reference_end_ _reference_start_1 Samuel 4:04_reference_end_ _reference_start_1 Samuel 4:05_reference_end_ _reference_start_1 Samuel 4:06_reference_end_ _reference_start_1 Samuel 4:11_reference_end_ _reference_start_1 Samuel 4:13_reference_end_ _reference_start_1 Samuel 4:17_reference_end_ _reference_start_1 Samuel 4:18_reference_end_ _reference_start_1 Samuel 4:19_reference_end_ _reference_start_1 Samuel 4:21_reference_end_ _reference_start_1 Samuel 4:22_reference_end_ _reference_start_1 Samuel 5:01_reference_end_ _reference_start_1 Samuel 5:02_reference_end_ _reference_start_1 Samuel 5:03_reference_end_ _reference_start_1 Samuel 5:04_refere nce_end_ _reference_start_1 Samuel 5:07_reference_end_ _reference_start_1 Samuel 5:08_reference_end_ _reference_start_1 Samuel 5:10_reference_end_ _reference_start_1 Samuel 5:11_reference_end_ _reference_start_1 Samuel 6:01_reference_end_ _reference_start_1 Samuel 6:02_reference_end_ _reference_start_1 Samuel 6:03_reference_end_ _reference_start_1 Samuel 6:08_reference_end_ _reference_start_1 Samuel 6:11_reference_end_ _reference_start_1 Samuel 6:13_reference_end_ _reference_start_1 Samuel 6:15_reference_end_ _reference_start_1 Samuel 6:18_reference_end_ _reference_start_1 Samuel 6:19_reference_end_ _reference_start_1 Samuel 6:21_reference_end_ _reference_start_1 Samuel 7:01_reference_end_ _reference_start_1 Samuel 7:02_reference_end_ _reference_start_1 Samuel 14:18_reference_end_ _reference_start_2 Samuel 6:02_reference_end_ _reference_start_2 Samuel 6:03_reference_end_ _reference_start_2 Samuel 6:04_reference_end_ _reference_start_2 Samuel 6:06_reference_end_ _reference_start_2 Samuel 6:07_reference_end_ _reference_start_2 Samuel 6:09_reference_end_ _reference_start_2 Samuel 6:10_reference_end_ _reference_start_2 Samuel 6:11_reference_end_ _reference_start_2 Samuel 6:12_reference_end_ _reference_start_2 Samuel 6:13_reference_end_ _reference_start_2 Samuel 6:15_reference_end_ _reference_start_2 Samuel 6:16_reference_end_ _reference_start_2 Samuel 6:17_reference_end_ _reference_start_2 Samuel 7:02_reference_end_ _reference_start_2 Samuel 11:11_reference_end_ _reference_start_2 Samuel 15:24_reference_end_ _reference_start_2 Samuel 15:25_reference_end_ _reference_start_2 Samuel 15:29_reference_end_ _reference_start_Exodus 25:10_reference_end_ _reference_start_Exodus 25:14_reference_end_ _reference_start_Joshua 6:08_reference_end_ _reference_start_Numbers 10:33_reference_end_ _reference_start_Numbers 14:44_reference_end_ \cme coffin \cmf cercueil _reference_start_Genesis 50:26_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( 4  3  2  1  0  /  .2 -, , ! + * ) (  '  &  % $  #  "  !                                                                      ~  }  |  {  z  y  x  w  v  ce_end_ _reference_start_Numbers 20:12_reference_end_ _reference_start_Proverbs 26:26_reference_end_ \cme group assembled together, or acting together or in same way \cmf un group réuni, ou qui agi ensemble ou de la même façon _reference_start_1 Kings 8:05_reference_end_ _reference_start_Exodus 12:03_reference_end_ _reference_start_Exodus 12:06_reference_end_ _reference_start_Exodus 12:19_reference_end_ _reference_start_Exodus 12:47_reference_end_ _reference_start_Exodus 16:01_reference_end_ _reference_start_Exodus 16:02_reference_end_ _reference_start_Exodus 16:09_reference_end_ _reference_start_Exodus 16:10_reference_end_ _reference_start_Exodus 16:22_reference_end_ _reference_start_Exodus 17:01_reference_end_ _reference_start_Joshua 9:15_reference_end_ _reference_start_Numbers 14:27_reference_end_ _reference_start_Numbers 14:35_reference_end_ _reference_start_Numbers 20:01_reference_end_ _reference_start_Numbers 20:02_reference_end_ _reference_start_Numbers 20:08_reference_end_ _reference_start_Numbers 20:11_reference_end_ _reference_start_Numbers 20:22_reference_end_ _reference_start_Numbers 20:27_reference_end_ _reference_start_Numbers 20:29_reference_end_ _reference_start_Psalms 1:05_reference_end_ \cme group called together for special reason \cmf un group rasemblé pour une raison spécifique _reference_start_1 Samuel 17:47_reference_end_ _reference_start_Deuteronomy 5:19_reference_end_ _reference_start_Deuteronomy 9:10_reference_end_ _reference_start_Deuteronomy 18:16_reference_end_ _reference_start_Genesis 49:06_reference_end_ _reference_start_Jude 20:02_reference_end_ _reference_start_Numbers 22:04_reference_end_ _reference_start_Proverbs 5:14_reference_end_ \cme large number, multitude \cmf grande nombre, multitude _reference_start_1 Samuel 8:65_reference_end_ _reference_start_2 Chronicles 7:08_reference_end_ _reference_start_Genesis 28:03_reference_end_ _reference_start_Genesis 35:11_reference_end_ _reference_start_Genesis 48:04_reference_end_ _reference_start_Proverbs 21:16_reference_end_ %%Koassemblyassembly\h lAhÒq \f assemblée \cme congregation, organized body of people \cmf congrégation, group organizé _reference_start_1 Chronicles 13:02_reference_end_ _reference_start_1 Chronicles 13:04_reference_end_ _reference_start_1 Chronicles 28:08_reference_end_ _reference_start_1 Chronicles 29:01_reference_end_ _reference_start_1 Chronicles 29:10_reference_end_ _reference_start_1 Chronicles 29:20_reference_end_ _reference_start_1 Samuel 8:14_reference_end_ _reference_start_1 Samuel 8:22_reference_end_ _reference_start_1 Samuel 8:55_reference_end_ _reference_start_1 Samuel 12:03_reference_end_ _reference_start_Exodus 12:06_reference_end_ _reference_start_Exodus 16:03_reference_end_ _reference_start_Numbers 10:07_reference_end_ _reference_start_Numbers 14:05_reference_end_ _reference_start_Numbers 16:03_reference_end_ _reference_start_Numbers 20:04_reference_end_ _reference_start_Numbers 20:06_reference_end_ _reference_start_Numbers 20:10_referen  ?tfXJ<. xj\N@2$|n`RD6( s r q p o n m  l  k j + i  h g  f e0 d# c b a A ` _ ^A ]1 \ [ Z Y / X W V U T S R Q P# O N  M L K J I H G / F  E  D  C  B A @ ? > = < ;  : 9  8  7 7 6  5 e couvre, expie un péché sans sacrifice _reference_start_2 Samuel 21:03_reference_end_ _reference_start_Exodus 32:30_reference_end_ _reference_start_Numbers 17:11_reference_end_ \cme sin covered over for by sacrifice or payment \cmf le péché couvert par sacrifice ou payment _reference_start_Exodus 30:15_reference_end_ _reference_start_Leviticus 5:06_reference_end_ _reference_start_Leviticus 5:10_reference_end_ _reference_start_Leviticus 5:13_reference_end_ _reference_start_Leviticus 5:16_reference_end_ _reference_start_Leviticus 5:18_reference_end_ _reference_start_Leviticus 5:26_reference_end_ _reference_start_Leviticus 16:30_reference_end_ _reference_start_Leviticus 17:11_reference_end_ _reference_start_Leviticus 17:11_reference_end_ _reference_start_Numbers 8:21_reference_end_ _reference_start_Numbers 31:50_reference_end_ \cme sin is covered over apart from sacrifice \cmf le péché couvert apart le sacrifice _reference_start_Isaiah 6:07_reference_end_ _reference_start_Proverbs 16:06_reference_end_ 05atonementatonement\h repOÐk \f expiation \cme price for ransom of a life \cmf le prix pour rançon d'une vie _reference_start_1 Samuel 12:03_reference_end_ _reference_start_Exodus 21:30_reference_end_ _reference_start_Numbers 35:31_reference_end_ _reference_start_Proverbs 13:08_reference_end_!!{atone (to)atone (to)\h repiÐk \f expier \cme appease, make ammends \cmf apaiser, réparer ses torts _reference_start_Genesis 32:21_reference_end_ _reference_start_Proverbs 16:14_reference_end_ \cme God treates sin as covered, atoned without sacrifice \cmf Dieu considere le péché couvrt, expié sans sacrifice _reference_start_Daniel 9:24_reference_end_ _reference_start_Deuteronomy 32:43_reference_end_ _reference_start_Leviticus 25:09_reference_end_ \cme man covers over, atones for sin without sacrifice \cmf uner personn  ?tfXJ<. xj\N@2$|n`RD6( 2 1 0 / . - ,  +  * ) ( ' & %  $  #  " - !      ! -            # N             *                # ~ }  | { z2 y x w v u tart_Exodus 4:08_reference_end_ _reference_start_Exodus 4:09_reference_end_ _reference_start_Exodus 4:31_reference_end_ _reference_start_Genesis 42:20_reference_end_ _reference_start_Jeremiah 12:06_reference_end_ _reference_start_Proverbs 14:05_reference_end_ _reference_start_Psalms 19:08_reference_end_ \cme believe in someone or in God \cmf croire en qqn ou en Dieu _reference_start_1 Samuel 27:12_reference_end_ _reference_start_Exodus 14:31_reference_end_ _reference_start_Exodus 19:09_reference_end_ _reference_start_Genesis 15:06_reference_end_ _reference_start_Jonah 3:05_reference_end_ _reference_start_Numbers 20:12_reference_end_ _reference_start_Psalms 78:22_reference_end_ \cme faithful \cmf qqn en qui on fait confiance, fiable _reference_start_1 Samuel 2:35_reference_end_ _reference_start_1 Samuel 3:20_reference_end_ _reference_start_1 Samuel 22:14_reference_end_ _reference_start_1 Samuel 22:14_reference_end_ _reference_start_2 Samuel 20:19_reference_end_ _reference_start_Proverbs 27:06_reference_end_ <RU<##wbetray (to)betray (to)\h dagAÐb \f trahir \cme betray, break faith with \cmf trahir _reference_start_1 Samuel 14:33_reference_end_ _reference_start_Exodus 21:08_reference_end_ _reference_start_Proverbs 2:22_reference_end_ _reference_start_Psalms 25:03_reference_end_y//'believe, not (to)believe, not (to)\h €amA' '×l \f ne pas croire \cme not accept statement as true \cmf ne pas accepter une déclaration comme vrai _reference_start_Exodus 4:09_reference_end_ _reference_start_Genesis 45:26_reference_end_"%% believe (to)believe (to)\h J€amA' \f croire \cme accept statement as true \cmf accepter une déclaration comme vrai _reference_start_1 Chronicles 17:23_reference_end_ _reference_start_1 Chronicles 17:24_reference_end_ _reference_start_1 Kings 8:26_reference_end_ _reference_start_1 Kings 10:07_reference_end_ _reference_start_Exodus 4:01_reference_end_ _reference_start_Exodus 4:05_reference_end_ _reference_st ^  &,28>DJPV\bhntz "(.4:@FLRX^djpv|FLRX^djpv| #B S{ o  Ά Ն           " $ )! ,# /$ 0% 3' 9( :) <+ @, A- G. K/q:?ƅBЅCօFGH I #J 0K CM HN WO iQ T Y [ \ ] …^ ̅` c d i j l m o p u &x S{ o  Ά Ն           " $ )! ,# /$ 0% 3' 9( :) <+ @, A- G. K/ M0 R2 T3 V5 X6 Y7 Z: ]< _= b> cA jC D H I K L M N Q S W Z [ †\ Æ] Ɔ^ Ȇ_ Ɇ` ˆa ̆c Άd _ _reference_start_Genesis 12:03_reference_end_ _reference_start_Genesis 17:16_reference_end_ _reference_start_Genesis 17:20_reference_end_ _reference_start_Genesis 18:18_reference_end_ _reference_start_Genesis 22:18_reference_end_ _reference_start_Genesis 24:01_reference_end_ _reference_start_Genesis 24:31_reference_end_ _reference_start_Genesis 24:35_reference_end_ _reference_start_Genesis 26:04_reference_end_ _reference_start_Genesis 26:29_reference_end_ _reference_start_Genesis 27:27_reference_end_ _reference_start_Genesis 27:29_reference_end_ _reference_start_Genesis 27:33_reference_end_ _reference_start_Genesis 28:03_reference_end_ _reference_start_Genesis 28:14_reference_end_ _reference_start_Ruth 2:19_reference_end_ _reference_start_Ruth 2:20_reference_end_ _reference_start_Ruth 3:10_reference_end_ \cme curse \cmf maudire _reference_start_1 Kings 21:10_reference_end_ _reference_start_1 Kings 21:13_reference_end_ _reference_start_Job 1:05_reference_end_ _reference_start_Job 1:11_reference_end_ _ref erence_start_Job 2:05_reference_end_ _reference_start_Job 2:09_reference_end_ _reference_start_Psalms 10:03_reference_end_ \cme God is subject, blesses \cmf Dieu béni, en tant que sujet _reference_start_1 Chronicles 4:10_reference_end_ _reference_start_1 Chronicles 13:14_reference_end_ _reference_start_1 Chronicles 17:27_reference_end_ _reference_start_1 Chronicles 26:05_reference_end_ _reference_start_2 Samuel 6:11_reference_end_ _reference_start_Deuteronomy 28:08_reference_end_ _reference_start_Exodus 20:11_reference_end_ _reference_start_Exodus 20:24_reference_end_ _reference_start_Exodus 23:25_reference_end_ _reference_start_Genesis 1:22_reference_end_ _reference_start_Genesis 1:28_reference_end_ _reference_start_Genesis 2:03_reference_end_ _reference_start_Genesis 5:02_reference_end_ _reference_start_Genesis 9:01_reference_end_ _reference_start_Genesis 22:17_reference_end_ _reference_start_Genesis 25:11_reference_end_ _reference_start_Genesis 26:03_reference_end_ _reference_start_Genesis 26:12_refer ence_end_ _reference_start_Genesis 26:24_reference_end_ _reference_start_Genesis 35:09_reference_end_ _reference_start_Genesis 39:05_reference_end_ _reference_start_Genesis 48:03_reference_end_ _reference_start_Genesis 48:16_reference_end_ _reference_start_Genesis 49:25_reference_end_ \cme good things from God \cmf bienfaits de Dieu _reference_start_Genesis 17:16_reference_end_ \cme greeting, leavetaking \cmf salutation, dire adieu _reference_start_1 Chronicles 16:43_reference_end_ _reference_start_1 Chronicles 18:10_reference_end_ _reference_start_1 Kings 1:47_reference_end_ _reference_start_1 Samuel 13:10_reference_end_ _reference_start_1 Samuel 15:13_reference_end_ _reference_start_1 Samuel 25:14_reference_end_ _reference_start_2 Samuel 6:20_reference_end_ _reference_start_2 Samuel 8:10_reference_end_ _reference_start_2 Samuel 19:40_reference_end_ _reference_start_Genesis 27:27_reference_end_ _reference_start_Genesis 28:01_reference_end_ _reference_start_Genesis 28:06_reference_end_ _reference_start_Ge nesis 31:55_reference_end_ _reference_start_Ruth 2:04_reference_end_ \cme person bless another informally \cmf une personne béni une autre informellement _reference_start_1 Samuel 26:25_reference_end_ _reference_start_2 Samuel 13:25_reference_end_ _reference_start_2 Samuel 21:03_reference_end_ _reference_start_Genesis 27:29_reference_end_ _reference_start_Genesis 32:30_reference_end_ _reference_start_Genesis 48:20_reference_end_ \cme person praises, thanks God \cmf qqn loue, remercie Dieu _reference_start_1 Chronicles 16:36_reference_end_ _reference_start_1 Chronicles 29:10_reference_end_ _reference_start_1 Chronicles 29:20_reference_end_ _reference_start_1 Kings 1:48_reference_end_ _reference_start_1 Kings 5:21_reference_end_ _reference_start_1 Kings 8:15_reference_end_ _reference_start_1 Kings 8:56_reference_end_ _reference_start_1 Kings 10:09_reference_end_ _reference_start_1 Samuel 9:13_reference_end_ _reference_start_1 Samuel 25:32_reference_end_ _reference_start_1 Samuel 25:39_reference_end_ _refer ence_start_2 Samuel 18:28_reference_end_ _reference_start_2 Samuel 22:47_reference_end_ _reference_start_Exodus 18:10_reference_end_ _reference_start_Genesis 14:20_reference_end_ _reference_start_Genesis 24:27_reference_end_ _reference_start_Genesis 24:48_reference_end_ _reference_start_Psalms 34:02_reference_end_ _reference_start_Psalms 63:05_reference_end_ _reference_start_Psalms 124:06_reference_end_ _reference_start_Psalms 144:01_reference_end_ _reference_start_Ruth 4:14_reference_end_ \cme sr person blesses jr person formally \cmf qqn plus âgé béni qqn de plus jeune _reference_start_1 Chronicles 16:02_reference_end_ _reference_start_1 Chronicles 23:13_reference_end_ _reference_start_1 Kings 8:14_reference_end_ _reference_start_1 Kings 8:55_reference_end_ _reference_start_2 Samuel 6:18_reference_end_ _reference_start_Exodus 12:32_reference_end_ _reference_start_Genesis 14:19_reference_end_ _reference_start_Genesis 24:60_reference_end_ _reference_start_Genesis 27:04_reference_end_ _reference_start_Genesis 27:07_reference_end_ _reference_start_Genesis 27:10_reference_end_ _reference_start_Genesis 27:19_reference_end_ _reference_start_Genesis 27:23_reference_end_ _reference_start_Genesis 27:25_reference_end_ _reference_start_Genesis 27:30_reference_end_ _reference_start_Genesis 27:31_reference_end_ _reference_start_Genesis 27:33_reference_end_ _reference_start_Genesis 27:34_reference_end_ _reference_start_Genesis 27:38_reference_end_ _reference_start_Genesis 27:41_reference_end_ _reference_start_Genesis 32:27_reference_end_ _reference_start_Genesis 47:07_reference_end_ _reference_start_Genesis 47:10_reference_end_ _reference_start_Genesis 48:09_reference_end_ _reference_start_Genesis 48:15_reference_end_ _reference_start_Genesis 48:20_reference_end_ _reference_start_Genesis 49:28_reference_end_ _reference_start_Genesis 49:28_reference_end_ \cme thank \cmf remercier _reference_start_1 Kings 8:66_reference_end_ _reference_start_1 Samuel 25:33_reference_end_ _reference_start_2 Samuel 14:22_reference_end_ WW !!cbless (to)bless (to)\h ªarAb \f bénir \cme be in a desirable position due to God's goodness \cmf être dans une postition désirable _reference_start_1 Chronicles 17:27_reference_end_ _reference_start_1 Kings 2:45_reference_end_ _reference_start_1 Samuel 23:21_reference_end_ _reference_start_2 Samuel 2:05_reference_end_ _reference_start_2 Samuel 6:12_reference_end_ _reference_start_Deuteronomy 28:03_reference_end_ _reference_start_Deuteronomy 28:04_reference_end_ _reference_start_Deuteronomy 28:05_reference_end_ _reference_start_Deuteronomy 28:06_reference_end_ _reference_start_Deuteronomy 28:12_reference_end_ _reference_start_Genesis 9:26_reference_end  ?tfXJ<. xj\N@2$|n`RD6( q0 p  o n  m  l  k j7 i h g f ( e  d  c  b  a ` / _  ^ + ] \1 [0 Z0 Y' X# W V U T S R  Q P O N M L K J I  H  G  F  E  D  C B A @ ?  >  = < ; : 9 8! 7 6 5 4 3# ?tfXJ<. wi[M?1#{m_QC5' 01 /' . - ,  +! *  )  (  '  &  % ! $ B #1 "1 !0 0 0 / /   ) & " !         <      7         | ? " 0    ~ / }  | ' {  z y x 8 w  v  u 0 t  s  r $ \cme God is subject, blesses \cmf Dieu béni qqn _reference_start_2 Samuel 7:29_reference_end_ \cme good things from God \cmf de bonne choses donnée par Dieu _reference_start_Deuteronomy 28:02_reference_end_ _reference_start_Deuteronomy 28:08_reference_end_ _reference_start_Genesis 39:05_reference_end_ _reference_start_Genesis 49:25_reference_end_ _reference_start_Leviticus 25:21_reference_end_ _reference_start_Proverbs 11:25_reference_end_ _reference_start_Psalms 24:05_reference_end_ \cme sr person blesses jr person formally \cmf bénédiction formelle d'une personne âgé à une personne jeunne _reference_start_Genesis 27:12_reference_end_ _reference_start_Genesis 27:35_reference_end_ _reference_start_Genesis 27:36_reference_end_ _reference_start_Genesis 27:38_reference_end_ _reference_start_Genesis 27:41_reference_end_ _reference_start_Genesis 28:04_reference_end_ _reference_start_Genesis 49:26_reference_end_ _reference_start_Genesis 49:28_reference_end_ _reference_start_Proverbs 11:11_reference_end_ NN&%blessingblessing\h hAkßrüÐb \f bénédiction \cme be in a desirable position due to God's goodness \cmf une position favorable due à la bonté de Dieu _reference_start_Exodus 32:29_reference_end_ _reference_start_Genesis 12:02_reference_end_ \cme gift, present \cmf cadeau _reference_start_1 Samuel 25:27_reference_end_ _reference_start_1 Samuel 30:26_reference_end_ _reference_start_Genesis 33:11_reference_end_ ! ?tfXJ<. xj\N@2$|n`RD6( o! n!  m! l!8 k!1 j!( i! h! g! f! ! e!  d!  c! b!  a!, `! _!  ^! ]! \! [! Z! Y!  X! W!  V!  U! T!1 S! R!A  Q!% P! O! N! M! L!  K!  J!  I!  H  G  F  E  D  C  B  A  @   ?   >  =   < ;1 :1 9 8) 7& 6$ 5# 4 3 2  1  k bloodblood\h £ßÐda \f sang \cme blood important in sacrifice \cmf important dans le sacrifice _reference_start_Exodus 12:07_reference_end_ _reference_start_Exodus 12:13_reference_end_ _reference_start_Exodus 12:22_reference_end_ _reference_start_Exodus 12:23_reference_end_ _reference_start_Exodus 23:18_reference_end_ _reference_start_Exodus 24:06_reference_end_ _reference_start_Exodus 24:08_reference_end_ _reference_start_Exodus 29:10_reference_end_ _reference_start_Leviticus 5:09_reference_end_ \cme responsibility, guilt \cmf résponsabilité, culpabilité _reference_start_2 Samuel 1:16_reference_end_ \cme revenge for death \cmf vangence pour la mort de qqn _reference_start_2 Samuel 3:27_reference_end_ _reference_start_2 Samuel 3:28_reference_end_ &eference_end_ _reference_start_1 Kings 19:21_reference_end_ _reference_start_Daniel 1:15_reference_end_ _reference_start_Daniel 10:03_reference_end_ _reference_start_Exodus 16:03_reference_end_ _reference_start_Exodus 16:08_reference_end_ _reference_start_Exodus 16:12_reference_end_ _reference_start_Exodus 21:28_reference_end_ _reference_start_Exodus 22:30_reference_end_ _reference_start_Genesis 9:04_reference_end_ _reference_start_Isaiah 22:13_reference_end_ _reference_start_Isaiah 44:16_reference_end_ _reference_start_Numbers 11:04_reference_end_ _reference_start_Numbers 11:13_reference_end_ _reference_start_Numbers 11:18_reference_end_ _reference_start_Numbers 11:21_reference_end_ _reference_start_Numbers 11:33_reference_end_ \cme human being \cmf personne humaine _reference_start_Daniel 2:11_reference_end_ _reference_start_Daniel 4:09_reference_end_ _reference_start_Ecclesiastes 2:03_reference_end_ _reference_start_Isaiah 40:05_reference_end_ _reference_start_Isaiah 49:26_reference_end_ _reference_sta 'rt_Psalms 56:05_reference_end_ _reference_start_Psalms 145:21_reference_end_ \cme human nature vs God \cmf nature humaine par opposition à Dieu _reference_start_2 Chronicles 32:08_reference_end_ _reference_start_Genesis 6:03_reference_end_ _reference_start_Genesis 6:12_reference_end_ _reference_start_Genesis 6:13_reference_end_ _reference_start_Job 10:04_reference_end_ _reference_start_Psalms 56:05_reference_end_ _reference_start_Psalms 56:12_reference_end_ _reference_start_Psalms 63:01_reference_end_ _reference_start_Psalms 78:38_reference_end_ \cme living being, animal or human \cmf tout être vivant, animal ou humain _reference_start_Daniel 7:05_reference_end_ _reference_start_Genesis 6:17_reference_end_ _reference_start_Genesis 6:19_reference_end_ _reference_start_Genesis 7:15_reference_end_ _reference_start_Genesis 7:16_reference_end_ _reference_start_Genesis 7:21_reference_end_ _reference_start_Genesis 8:17_reference_end_ _reference_start_Genesis 9:11_reference_end_ _reference_start_Genesis 9:15_re (ference_end_ _reference_start_Genesis 9:17_reference_end_ \cme male sexual organ \cmf organe sexuel mâle _reference_start_Genesis 17:11_reference_end_ _reference_start_Genesis 17:14_reference_end_ _reference_start_Genesis 17:23_reference_end_ _reference_start_Genesis 17:24_reference_end_ _reference_start_Genesis 17:25_reference_end_ _reference_start_Leviticus 15:02_reference_end_ \cme meat of sacrifice \cmf viande de sacrifice _reference_start_1 Samuel 2:13_reference_end_ _reference_start_1 Samuel 2:15_reference_end_ _reference_start_Exodus 12:08_reference_end_ _reference_start_Exodus 12:46_reference_end_ _reference_start_Leviticus 4:11_reference_end_ _reference_start_Leviticus 7:15_reference_end_ _reference_start_Numbers 19:05_reference_end_ \cme muscle vs bone \cmf le muscle par opposition à les os _reference_start_Ezekiel 37:05_reference_end_ _reference_start_Genesis 2:21_reference_end_ _reference_start_Job 2:05_reference_end_ _reference_start_Lamentations 3:04_reference_end_ \cme muscle, flesh \cmf muscle, chair _reference_start_Deuteronomy 28:53_reference_end_ _reference_start_Deuteronomy 28:55_reference_end_ _reference_start_Genesis 40:19_reference_end_ _reference_start_Isaiah 49:26_reference_end_ _reference_start_Leviticus 26:29_reference_end_ \cme whole body \cmf corps entier _reference_start_1 Kings 21:27_reference_end_ _reference_start_1 Samuel 17:44_reference_end_ _reference_start_Exodus 4:07_reference_end_ _reference_start_Genesis 41:02_reference_end_ _reference_start_Genesis 41:03_reference_end_ _reference_start_Genesis 41:04_reference_end_ _reference_start_Genesis 41:18_reference_end_ _reference_start_Genesis 41:19_reference_end_ _reference_start_Job 4:15_reference_end_ _reference_start_Leviticus 13:26_reference_end_ _reference_start_Leviticus 19:28_reference_end_ _reference_start_Numbers 8:07_reference_end_ _reference_start_Proverbs 4:22_reference_end_ _reference_start_Proverbs 14:30_reference_end_ _reference_start_Psalms 38:04_reference_end_ _reference_start_Psalms 119:120_reference_end_ !o!bodybody\h rAWAÐb \f corps \cme brother in figurative sense, relative \cmf frère (sens figuré), parent _reference_start_1 Chronicles 11:01_reference_end_ _reference_start_2 Samuel 5:01_reference_end_ _reference_start_2 Samuel 19:13_reference_end_ _reference_start_2 Samuel 19:14_reference_end_ _reference_start_Genesis 2:23_reference_end_ _reference_start_Genesis 2:24_reference_end_ _reference_start_Genesis 17:13_reference_end_ _reference_start_Genesis 29:14_reference_end_ _reference_start_Genesis 37:27_reference_end_ _reference_start_Jude 9:02_reference_end_ _reference_start_Leviticus 18:06_reference_end_ _reference_start_Leviticus 25:49_reference_end_ _reference_start_Nehemiah 5:08_reference_end_ \cme flesh, meat \cmf viande, chair _reference_start_1 Kings 17:06_r % ?tfXJ<. xj\N@2$|n`RD6( ."  -" 6 ,"  +" ! *" )"  (" / '"  &!wx %!& $! #! "! !! !  ! !) !) !) !) !) ! ! , !  ! !1 !( !7 !5 ! ! ! !% ! ! ! ! . !  !  !  ! ! ! ! ! ! !  !  ~! }! |! {! z! y! x! w! v!N& u!? t!8 s!8 r!  q! p! ence_start_1 Samuel 15:25_reference_end_ _reference_start_1 Samuel 15:30_reference_end_ _reference_start_1 Samuel 15:31_reference_end_ _reference_start_2 Chronicles 7:03_reference_end_ _reference_start_2 Chronicles 7:22_reference_end_ _reference_start_2 Samuel 12:20_reference_end_ _reference_start_2 Samuel 15:32_reference_end_ _reference_start_Exodus 4:27_reference_end_ _reference_start_Exodus 12:27_reference_end_ _reference_start_Exodus 20:05_reference_end_ _reference_start_Exodus 24:01_reference_end_ _reference_start_Exodus 34:14_reference_end_ _reference_start_Genesis 18:02_reference_end_ _reference_start_Genesis 19:01_reference_end_ _reference_start_Genesis 22:05_reference_end_ _reference_start_Genesis 24:22_reference_end_ _reference_start_Genesis 24:48_reference_end_ _reference_start_Genesis 24:52_reference_end_ _reference_start_Genesis 47:31_reference_end_ _reference_start_Psalms 22:27_reference_end_ Psa072.11 _reference_start_Psalms 81:09_reference_end_ _reference_start_Psalms 132:07_reference_end_  | k#7#bowelsbowels\h hEvem \f intestins \cme inner part of something \cmf partie intérieure de qqc .x"''5"bow & worshipbow & worship\h xaxAH / hwx \f adorer, s'incliner pour adorer \cme bow down to worship God or gods \cmf s'incliner pour adorer Dieu ou des dieux _reference_start_1 Chronicles 29:20_reference_end_ _reference_start_1 Kings 1:47_reference_end_ _reference_start_1 Kings 9:06_reference_end_ _reference_start_1 Kings 9:09_reference_end_ _reference_start_1 Kings 11:33_reference_end_ _reference_start_1 Kings 16:31_reference_end_ _reference_start_1 Kings 22:54_reference_end_ _reference_start_1 Samuel 1:03_reference_end_ _reference_start_1 Samuel 1:19_reference_end_ _reference_start_1 Samuel 1:28_reference_end_ _refer + ?tfXJ<. wi[M?1#{m_QC5' m&  l&  k&  j% i% h% g%  f% e%  d% c%  b%  a$) `$ _$ ^$ % ]$3 \$ [$! Z$ Y$  X$- W$ V$ U# T# S# R# Q# P#  O#  N#  M# L#G K# J#  I#  H# G#  F" E"Q D" C"/ B"4 A"0 @" ?" >" =" <"" ;" :" 9"  8" 7"  6"  5" 4" 3"  2"  1"  0"  /" h _reference_start_Jonah 2:02_reference_end_ \cme intestines, inner organs \cmf organs intérieurs _reference_start_2 Chronicles 21:15_reference_end_ _reference_start_2 Samuel 20:10_reference_end_ _reference_start_Jonah 2:01_reference_end_ _reference_start_Numbers 5:22_reference_end_ _reference_start_Psalms 71:06_reference_end_ _reference_start_Ruth 1:11_reference_end_ \cme metonymy for sperm and egg \cmf métonomie pour oeuf et sperme _reference_start_2 Samuel 7:12_reference_end_ _reference_start_2 Samuel 16:11_reference_end_ _reference_start_2 Samuel 16:11_reference_end_ _reference_start_Genesis 15:04_reference_end_ _reference_start_Genesis 25:23_reference_end_ \cme part of person with emotions, pity \cmf partie d'une personne avec des sentiments, pitié _reference_start_Isaiah 16:11_reference_end_ _reference_start_Jeremiah 31:20_reference_end_ _reference_start_Job 30:27_reference_end_ RR*$11$bowel, inner partsbowel, inner parts\h bårÕq \f intestins, organs intérieurs \cme (say) to oneself \cmf (dire) à soi-même _reference_start_Genesis 18:12_reference_end_ \cme inner part of something or someone \cmf partie interrieure de qqch ou qqn _reference_start_Genesis 18:24_reference_end_ _reference_start_Genesis 45:06_reference_end_ \cme part of person with thoughts, ideas, emotions \cmf partie d'une personne avec penseés, idées, emotions _reference_start_1 Kings 3:28_reference_end_ _reference_start_Jeremiah 4:14_reference_end_ _reference_start_Proverbs 14:33_reference_end_ _reference_start_Proverbs 26:24_reference_end_ _reference_start_Psalms 51:12_reference_end_ \cme physical internal organs \cmf organs internes physiques _reference_start_1 Samuel 25:37_reference_end_ _reference_start_Exodus 12:09_reference_end_ _reference_start_Genesis 25:22_reference_end_ _reference_start_Genesis 41:21_reference_end_ f%-%breathbreath\h hAmAHÌn \f halaine \cme breath of a person or animal \cmf halaine d'une personne ou un animal _reference_start_1 Kings 17:17_reference_end_ _reference_start_Daniel 10:17_reference_end_ _reference_start_Deuteronomy 20:16_reference_end_ \cme creative breath of God \cmf soufle de Deiu qui crée _reference_start_2 Samuel 22:16_reference_end_ _reference_start_Genesis 2:07_reference_end_ \cme life \cmf vie _reference_start_1 Kings 15:29_reference_end_ _reference_start_Genesis 7:22_reference_end_ \cme life, existence \cmf vie, existance _reference_start_Daniel 5:23_reference_end_ \cme part of person which relates to God \cmf parti d'une personne en rélation avec Dieu _reference_start_Proverbs 20:27_reference_end_ 2tart_1 Chronicles 21:26_reference_end_ _reference_start_1 Chronicles 21:29_reference_end_ _reference_start_1 Chronicles 22:01_reference_end_ _reference_start_1 Chronicles 23:31_reference_end_ _reference_start_1 Chronicles 29:21_reference_end_ _reference_start_1 Kings 3:04_reference_end_ _reference_start_1 Kings 3:15_reference_end_ _reference_start_1 Kings 8:64_reference_end_ _reference_start_1 Kings 9:25_reference_end_ _reference_start_1 Kings 10:05_reference_end_ _reference_start_1 Samuel 6:14_reference_end_ _reference_start_1 Samuel 6:15_reference_end_ _reference_start_1 Samuel 7:09_reference_end_ _reference_start_1 Samuel 7:10_reference_end_ _reference_start_1 Samuel 10:08_reference_end_ _reference_start_1 Samuel 13:09_reference_end_ _reference_start_1 Samuel 13:10_reference_end_ _reference_start_1 Samuel 13:12_reference_end_ _reference_start_1 Samuel 15:22_reference_end_ _reference_start_2 Chronicles 7:01_reference_end_ _reference_start_2 Chronicles 7:07_reference_end_ _reference_start_2 Samuel 6:17_reference_end_ _reference_start_2 Samuel 6:18_reference_end_ _reference_start_2 Samuel 24:22_reference_end_ _reference_start_2 Samuel 24:24_reference_end_ _reference_start_2 Samuel 24:25_reference_end_ _reference_start_Exodus 10:25_reference_end_ _reference_start_Exodus 18:12_reference_end_ _reference_start_Exodus 20:24_reference_end_ _reference_start_Exodus 20:25_reference_end_ _reference_start_Exodus 24:05_reference_end_ _reference_start_Genesis 8:20_reference_end_ _reference_start_Genesis 22:02_reference_end_ _reference_start_Genesis 22:03_reference_end_ _reference_start_Genesis 22:06_reference_end_ _reference_start_Genesis 22:07_reference_end_ _reference_start_Genesis 22:13_reference_end_ _reference_start_Joshua 8:31_reference_end_ _reference_start_Leviticus 5:07_reference_end_ _reference_start_Leviticus 5:10_reference_end_ _reference_start_Numbers 10:10_reference_end_ _reference_start_Numbers 28:37_reference_end_ _reference_start_Psalms 20:04_reference_end_ _reference_start_Psalms 51:18_reference_end_ qqe'GGO'burnt offering, sacrifice (a)burnt offering, sacrifice (a)\h xabez. \f haulocauste, sacrifice 5&))a&burnt offeringburnt offering\h hAlOv \f holocauste \cme animal is killed and burnt as offering to God \cmf un animal est tuer et bruler en offrende à Dieu _reference_start_1 Chronicles 21:23_reference_end_ _reference_start_1 Chronicles 21:24_reference_end_ _reference_s 1 ?tfXJ<. xj\N@2$|n`RD6( ,'  +'  *'  )'  ('  '' &' %'  $' #' "'  !'  '  '  '  '  '  ' ? ' > '  &3 & &% & & & & & & & & & & & & & & &  &  &  &  &  &  & & &  ~& }& |& {&  z&  y&  x&  w&  v&  u&  t& @ s&  r&  q&  p&  o&  n&  6 \cme kill an animal, burn part as offering to God or gods, eat the rest \cmf tuer un animal, brûler une partie à Dieu ou dieux, manger le reste _reference_start_1 Chronicles 29:21_reference_end_ _reference_start_1 Kings 8:62_reference_end_ _reference_start_1 Kings 8:63_reference_end_ _reference_start_1 Kings 12:27_reference_end_ _reference_start_1 Samuel 1:21_reference_end_ _reference_start_1 Samuel 2:13_reference_end_ _reference_start_1 Samuel 2:19_reference_end_ _reference_start_1 Samuel 2:29_reference_end_ _reference_start_1 Samuel 3:14_reference_end_ _reference_start_1 Samuel 6:15_reference_end_ _reference_start_1 Samuel 9:12_reference_end_ _reference_start_1 Samuel 9:13_reference_end_ _reference_start_1 Samuel 10:08_reference_end_ _reference_start_1 Samuel 12:09_reference_end_ _reference_start_1 Samuel 12:13_reference_end_ _reference_start_1 Samuel 15:22_reference_end_ _reference_start_1 Samuel 16:03_reference_end_ _reference_start_1 Samuel 16:05_reference_end_ _reference_start_1 Samuel 20:06_refe 7rence_end_ _reference_start_1 Samuel 20:29_reference_end_ _reference_start_2 Chronicles 7:01_reference_end_ _reference_start_2 Chronicles 7:04_reference_end_ _reference_start_2 Chronicles 7:05_reference_end_ _reference_start_2 Chronicles 7:12_reference_end_ _reference_start_2 Chronicles 29:31_reference_end_ _reference_start_2 Samuel 15:12_reference_end_ _reference_start_Daniel 9:27_reference_end_ _reference_start_Deuteronomy 18:03_reference_end_ _reference_start_Ecclesiastes 4:17_reference_end_ _reference_start_Exodus 10:25_reference_end_ _reference_start_Exodus 12:27_reference_end_ _reference_start_Exodus 12:27_reference_end_ _reference_start_Exodus 18:12_reference_end_ _reference_start_Exodus 18:12_reference_end_ _reference_start_Exodus 23:18_reference_end_ _reference_start_Exodus 34:15_reference_end_ _reference_start_Exodus 34:25_reference_end_ _reference_start_Genesis 46:01_reference_end_ _reference_start_Isaiah 57:07_reference_end_ _reference_start_Jonah 1:16_reference_end_ _reference_start_Jude 16:23_reference_end_ _reference_start_Leviticus 7:12_reference_end_ _reference_start_Numbers 10:10_reference_end_ _reference_start_Numbers 25:02_reference_end_ _reference_start_Proverbs 7:14_reference_end_ _reference_start_Proverbs 15:08_reference_end_ _reference_start_Proverbs 17:01_reference_end_ _reference_start_Proverbs 21:03_reference_end_ _reference_start_Proverbs 21:27_reference_end_ _reference_start_Psalms 4:06_reference_end_ _reference_start_Psalms 51:18_reference_end_ _reference_start_Psalms 51:19_reference_end_ _reference_start_Psalms 51:21_reference_end_ _reference_start_Psalms 107:22_reference_end_ \cme killing & eating an animal to make a covenant \cmf tuer et manger un animal pour faire une alliance _reference_start_1 Samuel 11:15_reference_end_ _reference_start_Exodus 24:05_reference_end_ _reference_start_Genesis 31:54_reference_end_ _reference_start_Psalms 50:05_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( k* j* i*  h*) g* f)  e)  d)4 c) b)  a) `) _) ^) ])  \(  [(  Z(  Y(  X( $ W(  V(  U(  T(  S( R'2 Q'6 P' O'  N'k M'3 L'3 K'3 J' I' H' G' F' E' D' C' B' A'A @'  ?'9 >'. ='" <'" ;' :' 9' 8'  7'  6'  5' 4' 3'  2'  1' 0' /' .' -' cc( (cherabimcherabim\h £yibçrüÐk \f chérubim \cme angelic servant of God \cmf serviteur angélique de Dieu _reference_start_Genesis 3:24_reference_end_ \cme seat of God on ark of covenant \cmf siege de Deiu sur l'arc de l'alliance _reference_start_1 Chronicles 13:06_reference_end_ _reference_start_1 Chronicles 28:18_reference_end_ _reference_start_1 Kings 6:1_reference_end_ _reference_start_1 Kings 7:29_reference_end_ _reference_start_1 Kings 7:36_reference_end_ _reference_start_1 Kings 8:06_reference_end_ _reference_start_1 Kings 8:07_reference_end_ _reference_start_2 Samuel 6:02_reference_end_ _reference_start_2 Samuel 1:1_reference_end_ vent?) LL0)%%))chief priestchief priest\h H'OrAh €EhOÐk \f sacrificateur, chef \cme high or chief priest, head priest \cmf principal sacrificateur, le chef _reference_start_1 Chronicles 27:05_reference_end_ _reference_start_2 Chronicles 19:11_reference_end_ _reference_start_2 Chronicles 24:11_reference_end_ _reference_start_2 Chronicles 26:20_reference_end_ _reference_start_2 Chronicles 31:10_reference_end_ _reference_start_2 Kings 25:18_reference_end_ _reference_start_Ezra 7:05_reference_end_ _reference_start_Jeremiah 52:24_reference_end_ \cme leading priests \cmf les chefs des sacrificateurs _reference_start_Ezra 10:05_reference_end_ _reference_start_Nehemiah 12:07_reference_end_eference_start_1 Kings 24:04_reference_end_ _reference_start_1 Samuel 19:05_reference_end_ _reference_start_2 Samuel 3:28_reference_end_ _reference_start_Exodus 23:07_reference_end_ \cme free from obligation \cmf sans obligation _reference_start_1 Kings 15:22_reference_end_ _reference_start_Genesis 24:41_reference_end_ _reference_start_Genesis 44:10_reference_end_ _reference_start_Numbers 32:22_reference_end_ \cme free from punishement \cmf libre de punition _reference_start_2 Samuel 14:09_reference_end_ _reference_start_Exodus 21:28_reference_end_ \cme innocent \cmf innocent _reference_start_Daniel 6:23_reference_end_ \cme innocent (naqiy') \cmf innocent (naqiy') _reference_start_Joel 4:19_reference_end_ _reference_start_Jonah 1:14_reference_end_ \cme leave unpunished, hold innocent \cmf ne pa punir, considérer comme innocent _reference_start_1 Kings 1:06_reference_end_ _reference_start_Exodus 20:07_reference_end_ _reference_start_Exodus 34:07_reference_end_ _reference_start_Numbers 14:18_reference_end_ zz+##Y+clean, pureclean, pure\h rôhAX \f pur \cme ethically clean \cmf pur moralement _reference_st > *{*cleanclean\h hAqAn \f pur \cme exempt from obligation (of oaths, etc) \cmf sans obligation (de serment, etc) _reference_start_Genesis 24:08_reference_end_ _reference_start_Genesis 4:41_reference_end_ \cme exempt from punishment, acquited \cmf aquité, sans être puni _reference_start_1 Samuel 26:09_reference_end_ _reference_start_Exodus 21:19_reference_end_ _reference_start_Proverbs 6:29_reference_end_ _reference_start_Psalms 19:13_reference_end_ \cme free from guilt, innocent \cmf innocent, sans culpabilité _r ; ?tfXJ<. xj\N@2$|n`RD6( *-& )- (- ) '-  &- ( %,# $,! #,3 ", !, , # ,% ,/ ,/ ,  , ,  , , ,  , ," ,  , ,  ,  ,  ,  ,  + + + + + +  + +  +  +  + + + + + ~+  }* |*" {* z*  y*  x* w* v* u*  t*  s*, r*) q*  p* o*  n*  m*  l* art_2 Samuel 22:27_reference_end_ _reference_start_Job 17:02_reference_end_ _reference_start_Proverbs 15:26_reference_end_ _reference_start_Proverbs 22:11_reference_end_ _reference_start_Proverbs 30:12_reference_end_ _reference_start_Psalms 19:10_reference_end_ \cme free from leprosy \cmf ne plus avoir la lèpre _reference_start_2 Kings 5:10_reference_end_ \cme pure, unadulterated \cmf non souillé _reference_start_1 Chronicles 28:17_reference_end_ _reference_start_1 Kings 6:20_reference_end_ _reference_start_Exodus 25:11_reference_end_ \cme ritually pure before God \cmf pur rituellement devant Dieu _reference_start_1 Samuel 20:26_reference_end_ _reference_start_Deuteronomy 23:10_reference_end_ _reference_start_Genesis 7:02_reference_end_ _reference_start_Genesis 7:08_reference_end_ _reference_start_Genesis 8:20_reference_end_ \cme washed, cleaned \cmf nettoyé, lavé _reference_start_Leviticus 4:12_reference_end_nce_start_Daniel 9:24_reference_end_ _reference_start_Deuteronomy 34:08_reference_end_ _reference_start_Leviticus 25:29_reference_end_ \cme be innocent, blameless \cmf être innocent _reference_start_2 Samuel 22:26_reference_end_ _reference_start_Job 22:03_reference_end_ _reference_start_Psalms 19:14_reference_end_ \cme be ready \cmf être prét _reference_start_2 Kings 22:04_reference_end_ _reference_start_Ezekiel 24:10_reference_end_ \cme be used up \cmf être épuisé _reference_start_1 Kings 14:10_reference_end_ _reference_start_Genesis 47:15_reference_end_ _reference_start_Genesis 47:18_reference_end_ _reference_start_Jeremiah 37:21_reference_end_ \cme be white or morally pure \cmf être blanc ou pur moralement _reference_start_Daniel 11:35_reference_end_ _reference_start_Daniel 12:10_reference_end_ _reference_start_Isaiah 1:18_reference_end_ _reference_start_Psalms 51:09_reference_end_ \cme to die \cmf mourir _reference_start_Numbers 14:33_reference_end_ _reference_start_Numbers 14:35_reference_end_ ZZ,33a,clean, pure (to be)clean, pure (to be)\h £amAGt \f pur, être pur \cme be complete, finished \cmf être fini, complété _reference_start_1 Kings 6:22_reference_end_ _reference_start_1 Kings 7:22_reference_end_ _reference_start_1 Samuel 16:11_reference_end_ _reference_start_2 Samuel 15:24_reference_end_ _reference_start_2 Samuel 20:18_reference_end_ _reference_start_Daniel 8:23_reference_end_ _refere ? !![---o-clean, pure (to)clean, pure (to)\h rerabtih / rarÐAb \f pur, être pur \cme purge, test, purify (remove what is unwanted) \cmf purifier, tester (enlever ce qu'on ne veut pas) _reference_start_1 Chronicles 7:40_reference_end_ _reference_start_1 Chronicles 9:22_reference_end_ _reference_start_1 Chronicles 16:41_reference_end_ _reference_start_Ecclesiastes 3:18_reference_end_ _reference_start_Ezekiel 20:38_reference_end_ \cme purify self, show self pure, without unwanted stuff \cmf se purifier, se montrer pur, sans ce qu'on ne veut pas _reference_start_2 Samuel 22:27_reference_end_ _reference_start_Daniel 11:35_reference_end_ _reference_start_Daniel 12:10_reference_end_ _reference_start_Psalms 18:27_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( i. h. g. f. e. d. c. b. a. `. _. ^. ].  \.  [.  Z.  Y.  X.  W.  V.  U. T.  S.  R.  Q. P.  O.  N.  M.  L.  K. J.  I.  H.  G. . F. + E.  D.  C.  B. A. @." ?.E >.- =. <. ;. :. 9. 8. 7. & 6. 5. 4.  3. ; 2.  1.  0. ( /.  .- -- ,- # +-  Dteronomy 28:13_reference_end_ _reference_start_Deuteronomy 28:14_reference_end_ _reference_start_Deuteronomy 28:15_reference_end_ _reference_start_Deuteronomy 28:45_reference_end_ _reference_start_Deuteronomy 28:69_reference_end_ _reference_start_Deuteronomy 34:09_reference_end_ _reference_start_Exodus 19:07_reference_end_ _reference_start_Exodus 23:15_reference_end_ \cme instruct, give an order \cmf instruire, donner un ordre _reference_start_1 Chronicles 17:06_reference_end_ _reference_start_1 Chronicles 22:06_reference_end_ _reference_start_1 Chronicles 22:17_reference_end_ _reference_start_1 Kings 2:43_reference_end_ _reference_start_1 Kings 2:46_reference_end_ _reference_start_1 Kings 5:20_reference_end_ _reference_start_1 Kings 5:31_reference_end_ _reference_start_1 Kings 22:31_reference_end_ _reference_start_1 Samuel 13:13_reference_end_ _reference_start_1 Samuel 13:14_reference_end_ _reference_start_1 Samuel 17:20_reference_end_ _reference_start_1 Samuel 18:22_reference_end_ _reference_start_1 Sam Euel 20:29_reference_end_ _reference_start_1 Samuel 21:02_reference_end_ _reference_start_2 Chronicles 7:13_reference_end_ _reference_start_2 Samuel 4:12_reference_end_ _reference_start_2 Samuel 5:25_reference_end_ _reference_start_2 Samuel 7:07_reference_end_ _reference_start_2 Samuel 9:11_reference_end_ _reference_start_2 Samuel 11:19_reference_end_ _reference_start_2 Samuel 13:28_reference_end_ _reference_start_2 Samuel 13:29_reference_end_ _reference_start_2 Samuel 14:08_reference_end_ _reference_start_2 Samuel 14:19_reference_end_ _reference_start_2 Samuel 18:05_reference_end_ _reference_start_2 Samuel 18:12_reference_end_ _reference_start_2 Samuel 21:14_reference_end_ _reference_start_Deuteronomy 18:20_reference_end_ _reference_start_Esther 2:10_reference_end_ _reference_start_Esther 2:20_reference_end_ _reference_start_Esther 3:02_reference_end_ _reference_start_Esther 3:12_reference_end_ _reference_start_Esther 4:05_reference_end_ _reference_start_Esther 4:08_reference_end_ _reference_start_Esther F4:10_reference_end_ _reference_start_Esther 4:10_reference_end_ _reference_start_Esther 4:17_reference_end_ _reference_start_Esther 8:09_reference_end_ _reference_start_Exodus 1:22_reference_end_ _reference_start_Exodus 4:28_reference_end_ _reference_start_Exodus 5:06_reference_end_ _reference_start_Exodus 6:13_reference_end_ _reference_start_Exodus 7:02_reference_end_ _reference_start_Exodus 7:06_reference_end_ _reference_start_Exodus 7:10_reference_end_ _reference_start_Exodus 7:20_reference_end_ _reference_start_Exodus 12:28_reference_end_ _reference_start_Exodus 12:50_reference_end_ _reference_start_Exodus 16:16_reference_end_ _reference_start_Exodus 16:24_reference_end_ _reference_start_Exodus 16:32_reference_end_ _reference_start_Exodus 16:34_reference_end_ _reference_start_Exodus 18:23_reference_end_ _reference_start_Genesis 2:16_reference_end_ _reference_start_Genesis 3:11_reference_end_ _reference_start_Genesis 3:17_reference_end_ _reference_start_Genesis 7:05_reference_end_ _reference_start_Genesis 7:09_reference_end_ _reference_start_Genesis 7:16_reference_end_ _reference_start_Genesis 12:20_reference_end_ _reference_start_Genesis 18:19_reference_end_ _reference_start_Genesis 21:04_reference_end_ _reference_start_Genesis 26:11_reference_end_ _reference_start_Genesis 27:08_reference_end_ _reference_start_Genesis 28:01_reference_end_ _reference_start_Genesis 28:06_reference_end_ _reference_start_Genesis 32:05_reference_end_ _reference_start_Genesis 32:18_reference_end_ _reference_start_Genesis 32:20_reference_end_ _reference_start_Genesis 42:25_reference_end_ _reference_start_Genesis 44:01_reference_end_ _reference_start_Genesis 47:11_reference_end_ _reference_start_Genesis 50:02_reference_end_ _reference_start_Genesis 50:16_reference_end_ _reference_start_Joshua 1:10_reference_end_ _reference_start_Numbers 20:09_reference_end_ _reference_start_Numbers 20:27_reference_end_ _reference_start_Ruth 2:09_reference_end_ _reference_start_Ruth 2:15_reference_end_ _reference_start_Ruth 3:06_reference_end_ ##E.%%S.command (to)command (to)\h hAwAc \f commander \cme God gives his law to Israel \cmf Dieu donne sa loi à Israël _reference_start_1 Chronicles 16:15_reference_end_ _reference_start_1 Chronicles 16:40_reference_end_ _reference_start_1 Chronicles 22:13_reference_end_ _reference_start_1 Chronicles 24:19_reference_end_ _reference_start_1 Kings 8:59_reference_end_ _reference_start_1 Kings 9:04_reference_end_ _reference_start_1 Kings 11:10_reference_end_ _reference_start_1 Kings 11:11_reference_end_ _reference_start_1 Kings 11:38_reference_end_ _reference_start_2 Chronicles 7:17_reference_end_ _reference_start_Deuteronomy 18:18_reference_end_ _reference_start_Deuteronomy 28:01_reference_end_ _reference_start_Deu C ?tfXJ<. xj\N@2$|n`RD6( (/ '/ &/ %/  $/  #/ & "/ " !/  / = / : /  /  /  /  /  /  /  /' /' / / /  . . . . . . .2 .2 ./ ., .* .  .  .  . . . . . . ~.  }. |. {. z. y. x. w. v." u. t. s. r. 2 q.  p. o. n. m. l. k. j. Jchi 2:04_reference_end_ _reference_start_Nehemiah 13:05_reference_end_ \cme God's law, code of living \cmf la loi de Dieu, sa code de vie _reference_start_1 Chronicles 28:07_reference_end_ _reference_start_1 Chronicles 28:08_reference_end_ _reference_start_1 Chronicles 29:19_reference_end_ _reference_start_1 Kings 2:03_reference_end_ _reference_start_1 Kings 3:14_reference_end_ _reference_start_1 Kings 6:12_reference_end_ _reference_start_1 Kings 8:58_reference_end_ _reference_start_1 Kings 8:61_reference_end_ _reference_start_1 Kings 9:06_reference_end_ _reference_start_1 Kings 11:34_reference_end_ _reference_start_1 Kings 11:38_reference_end_ _reference_start_Daniel 9:04_reference_end_ _reference_start_Daniel 9:05_reference_end_ _reference_start_Deuteronomy 28:01_reference_end_ _reference_start_Deuteronomy 28:09_reference_end_ _reference_start_Deuteronomy 28:13_reference_end_ _reference_start_Deuteronomy 28:15_reference_end_ _reference_start_Deuteronomy 28:45_reference_end_ _reference_start_Ecclesiastes 12:13_reference_end_ _reference_start_Exodus 15:26_reference_end_ _reference_start_Exodus 16:28_reference_end_ _reference_start_Exodus 20:06_reference_end_ _reference_start_Exodus 24:12_reference_end_ _reference_start_Genesis 26:05_reference_end_ _reference_start_Leviticus 5:17_reference_end_ _reference_start_Psalms 19:09_reference_end_ \cme order or instruction of a person \cmf order ou instruction d'une personne _reference_start_1 Kings 2:43_reference_end_ _reference_start_2 Chronicles 8:15_reference_end_ _reference_start_Esther 3:03_reference_end_ _reference_start_Proverbs 2:01_reference_end_ _reference_start_Proverbs 3:01_reference_end_ _reference_start_Proverbs 4:04_reference_end_ _reference_start_Proverbs 6:20_reference_end_ _reference_start_Proverbs 6:23_reference_end_ _reference_start_Proverbs 7:01_reference_end_ _reference_start_Proverbs 7:02_reference_end_ _reference_start_Proverbs 10:08_reference_end_ _reference_start_Proverbs 13:13_reference_end_ _reference_start_Proverbs 19:16_reference_end_ k/99w/commandments, preceptscommandments, precepts\h hÃwücim \f commandements, précepte \cme God's command to a person \cmf commandement de Dieu pour une personne _reference_start_1 Kings 13:21_reference_end_ _reference_start_1 Samuel 13:13_reference_end_ _reference_start_Job 23:12_reference_end_ _reference_start_Malachi 2:01_reference_end_ _reference_start_Mala I ?tfXJ<. xj\N?1#{m_QC5' g1" f1" e1 d1 c1 b1, a1 `1 _1 ^1 ]1" \1" [1 Z1  Y1  X1  W1  V1  U1  T1  S1  R1  Q1 " P1  O1  N1  M0j. L0+ K0 J0  I0 2 H0 G0wM F0E E03 D0? C0  B0  A0+ @0  ?/ >/ =/  </ ;/ :/ 9/ 8/ 7/ 6/ 5/ 4/ 3/ + 2/ 1/ 0/ // ./ -/ ,/ +/ */- )/ q0!!30compassioncompassion\h £yimáxÞr \f compassion \cme bowels, location in a person of feelings \cmf entrails, lieu des sentiments d'uner personne _reference_start_1 Kings 3:26_reference_end_ _reference_start_Genesis 43:30_reference_end_ \cme compassion of God \cmf compassion de Dieu _reference_start_Daniel 9:07_reference_end_ _reference_start_Daniel 9:18_reference_end_ _reference_start_Isaiah 63:07_reference_end_ _reference_start_Psalms 51:03_reference_end_ _reference_start_Psalms 69:17_reference_end_ _reference_start_Psalms 119:77_reference_end_ _reference_start_Psalms 707:10_reference_end_ \cme favor of man \cmf faveur d'une personne _reference_start_1 Kings 8:50_reference_end_ _reference_start_2 Samuel 24:14_reference_end_ _reference_start_Daniel 1:09_reference_end_ _reference_start_Genesis 43:14_reference_end_ _reference_start_Psalms 106:46_reference_end_ Oerence_start_2 Samuel 3:12_reference_end_ _reference_start_2 Samuel 3:13_reference_end_ _reference_start_2 Samuel 3:21_reference_end_ _reference_start_2 Samuel 5:03_reference_end_ _reference_start_Daniel 11:22_reference_end_ _reference_start_Exodus 23:32_reference_end_ _reference_start_Exodus 34:12_reference_end_ _reference_start_Exodus 34:15_reference_end_ _reference_start_Genesis 14:13_reference_end_ _reference_start_Genesis 21:27_reference_end_ _reference_start_Genesis 21:32_reference_end_ _reference_start_Genesis 26:28_reference_end_ _reference_start_Genesis 31:44_reference_end_ \cme covenant at Sinai \cmf alliance du Sinaï _reference_start_Exodus 24:07_reference_end_ _reference_start_Exodus 24:08_reference_end_ _reference_start_Exodus 31:16_reference_end_ _reference_start_Exodus 34:10_reference_end_ _reference_start_Exodus 34:27_reference_end_ _reference_start_Exodus 34:28_reference_end_ \cme God's covenant with Abraham \cmf alliance de Dieu avec Abraham _reference_start_Exodus 2:24_reference_end_ _ Preference_start_Exodus 6:04_reference_end_ _reference_start_Exodus 6:05_reference_end_ _reference_start_Exodus 19:05_reference_end_ _reference_start_Genesis 15:18_reference_end_ _reference_start_Genesis 17:02_reference_end_ _reference_start_Genesis 17:04_reference_end_ _reference_start_Genesis 17:07_reference_end_ _reference_start_Genesis 17:09_reference_end_ _reference_start_Genesis 17:10_reference_end_ _reference_start_Genesis 17:11_reference_end_ _reference_start_Genesis 17:13_reference_end_ _reference_start_Genesis 17:14_reference_end_ _reference_start_Genesis 17:19_reference_end_ _reference_start_Genesis 17:21_reference_end_ \cme God's covenant with Noah \cmf alliance de Dieu avec Noé _reference_start_Genesis 6:18_reference_end_ _reference_start_Genesis 9:09_reference_end_ _reference_start_Genesis 9:11_reference_end_ _reference_start_Genesis 9:12_reference_end_ _reference_start_Genesis 9:13_reference_end_ _reference_start_Genesis 9:15_reference_end_ _reference_start_Genesis 9:16_reference_end_ _refe Qrence_start_Genesis 9:17_reference_end_ \cme God's covenant with people of Israel \cmf alliance de Dieu avec le peuple d'Israël _reference_start_1 Chronicles 15:25_reference_end_ _reference_start_1 Chronicles 15:26_reference_end_ _reference_start_1 Chronicles 15:28_reference_end_ _reference_start_1 Chronicles 15:29_reference_end_ _reference_start_1 Chronicles 16:06_reference_end_ _reference_start_1 Chronicles 16:15_reference_end_ _reference_start_1 Chronicles 16:17_reference_end_ _reference_start_1 Chronicles 17:01_reference_end_ _reference_start_1 Chronicles 17:37_reference_end_ _reference_start_1 Chronicles 22:19_reference_end_ _reference_start_1 Chronicles 28:02_reference_end_ _reference_start_1 Chronicles 28:18_reference_end_ _reference_start_1 Kings 3:15_reference_end_ _reference_start_1 Kings 6:19_reference_end_ _reference_start_1 Kings 8:01_reference_end_ _reference_start_1 Kings 8:06_reference_end_ _reference_start_1 Kings 8:21_reference_end_ _reference_start_1 Kings 8:23_reference_end_ _reference_start_1 Kings 11:11_reference_end_ _reference_start_1 Kings 19:10_reference_end_ _reference_start_1 Kings 19:14_reference_end_ _reference_start_1 Samuel 4:03_reference_end_ _reference_start_1 Samuel 4:04_reference_end_ _reference_start_2 Samuel 15:24_reference_end_ _reference_start_Daniel 9:04_reference_end_ _reference_start_Daniel 11:22_reference_end_ _reference_start_Daniel 11:30_reference_end_ _reference_start_Daniel 11:32_reference_end_ _reference_start_Numbers 10:33_reference_end_ _reference_start_Numbers 14:44_reference_end_ \cme God's promise to David \cmf alliance de Dieu avec David _reference_start_2 Chronicles 13:05_reference_end_ _reference_start_2 Chronicles 21:07_reference_end_ _reference_start_2 Samuel 23:05_reference_end_ _reference_start_Isaiah 55:03_reference_end_ \cme the people of God's covenant, Israel \cmf les peuple de l'alliance, le peuple d'Israël _reference_start_Daniel 9:27_reference_end_ _reference_start_Daniel 11:28_reference_end_ _reference_start_Daniel 11:30_reference_end_  p2E2crimecrime\h hAlûbáx \f crime \cme a crime \cmf un crime _reference_start_Daniel 6:23_reference_end_\11covenantcovenant\h tyærüÐb \f alliance \cme agreement between people \cmf alliance entre personnes _reference_start_1 Chronicles 11:03_reference_end_ _reference_start_1 Kings 5:26_reference_end_ _reference_start_1 Kings 15:19_reference_end_ _reference_start_1 Kings 20:34_reference_end_ _reference_start_1 Samuel 11:01_reference_end_ _reference_start_1 Samuel 18:03_reference_end_ _reference_start_1 Samuel 20:08_reference_end_ _reference_start_1 Samuel 23:18_reference_end_ _ref N ?tfXJ<. xj\N@2$|n`RD6( &3  %2 $1  #1  "1  !17 1  1 1  1, 1 ! 1 1  1  1  1  1  1  1  1  1 1  1  1  1  1  1  1  1  1  1 % 1  1  1  1  1  1  1  1  1  ~1  }1  |1 {1 z1 y1 x1 w1 v1 u1 t1 s1 r1 q1 p1 o1 n1 m1 l1 k1 j1 i1 h1" cc33cursecurse\h hAlAlÙq \f malédiction \cme a curse \cmf malédiction _reference_start_1 Kings 2:08_reference_end_ _reference_start_2 Samuel 16:12_reference_end_ _reference_start_Deuteronomy 28:15_reference_end_ _reference_start_Deuteronomy 28:45_reference_end_ _reference_start_Genesis 27:12_reference_end_ _reference_start_Genesis 27:13_reference_end_ _reference_start_Proverbs 26:02_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( e8 d7$ c7 b7; a7  `7' _7' ^7? ]7> \7 [6  Z6) Y6 X6 W6 V6$ U61 T6 S6 R6h Q6 P6 O6G N5  M5  L5$ K5 J5 I5 H5 G5 F5 E5 D5 C5 B5 A5  @5  ?5  >5 =5 <5  ;4  :4 94  84 74 64 54  44  34  24  14  04  /4 + .4  -4  ,3 +3 *3 )3- (3 '3  NN5c5deathdeath\h tew Am \f mort (la) \cme personification \cmf personnification _reference_start_Proverbs 13:14_reference_end W#4!!4curse (to)curse (to)\h lalAq. \f maudire \cme curse \cmf maudire _reference_start_1 Kings 2:08_reference_end_ _reference_start_1 Samuel 3:13_reference_end_ _reference_start_1 Samuel 17:43_reference_end_ _reference_start_2 Samuel 16:05_reference_end_ _reference_start_2 Samuel 16:07_reference_end_ _reference_start_2 Samuel 16:09_reference_end_ _reference_start_2 Samuel 16:10_reference_end_ _reference_start_2 Samuel 16:11_reference_end_ _reference_start_2 Samuel 16:13_reference_end_ _reference_start_Exodus 21:17_reference_end_ _reference_start_Exodus 22:27_reference_end_ _reference_start_Genesis 8:21_reference_end_ _reference_start_Genesis 12:03_reference_end_ _reference_start_Proverbs 30:10_reference_end_ \cme lighten, weigh less \cmf aléger _reference_start_Jonah 1:05_reference_end__ _reference_start_Proverbs 14:27_reference_end_ _reference_start_Proverbs 21:06_reference_end_ \cme physical death, opposite of life \cmf la mort physique, en opposition avec la vie _reference_start_Proverbs 11:07_reference_end_ _reference_start_Proverbs 11:19_reference_end_ _reference_start_Proverbs 12:28_reference_end_ _reference_start_Proverbs 14:12_reference_end_ _reference_start_Proverbs 14:32_reference_end_ _reference_start_Proverbs 16:14_reference_end_ _reference_start_Proverbs 16:25_reference_end_ _reference_start_Proverbs 18:21_reference_end_ _reference_start_Proverbs 24:11_reference_end_ _reference_start_Proverbs 26:18_reference_end_ \cme state of death, place of death, Sheol \cmf état d'être mort, lieu des morts, Sheol _reference_start_Proverbs 2:18_reference_end_ _reference_start_Proverbs 5:05_reference_end_ _reference_start_Proverbs 7:27_reference_end_ _reference_start_Proverbs 8:36_reference_end_ _reference_start_Proverbs 10:02_reference_end_ _reference_start_Proverbs 11:04_reference_end_ B6//96deep (the), abyssdeep (the), abyss\h £ôhüGt \f abîme \cme abyss, where the dead go \cmf l'abîme, où vont les morts _reference_start_Psalms 71:20_reference_end_ \cme primordial sea \cmf l'ocean primordiale _reference_start_Genesis 1:02_reference_end_ _reference_start_Proverbs 8:27_reference_end_ _reference_start_Psalms 104:06_reference_end_ \cme subterranean waters \cmf l'ocean souterraine _reference_start_Genesis 7:11_reference_end_ _reference_start_Genesis 8:02_reference_end_ _reference_start_Genesis 49:25_reference_end_ _reference_start_Psalms 36:07_reference_end_ \cme the ocean \cmf l'ocean _reference_start_Exodus 15:05_reference_end_ _reference_start_Exodus 15:08_reference_end_ _reference_start_Ezra 26:19_reference_end_ _reference_start_Job 41:24_reference_end_ _reference_start_Jonah 2:06_reference_end_ ee7##{7defile (to)defile (to)\h la'AFg. \f souiller \cme be/become physically ritually defiled \cmf être/rendre impur physiquemnet rituellement _reference_start_Daniel 1:08_reference_end_ _reference_start_Ezra 2:62_reference_end_ _reference_start_Isaiah 63:03_reference_end_ _reference_start_Malachi 1:07_reference_end_ _reference_start_Malachi 1:12_reference_end_ _reference_start_Nehemiah 13:29_reference_end_ \cme be/become ritually impure because of immoral acts \cmf être/rendre impur à cause des acts immorals _reference_start_Isaiah 59:03_reference_end_ _reference_start_Lamentations 4:14_reference_end_ _reference_start_Zephaniah 3:01_reference_end_ z`z:''c:desolate (to)desolate (to)\h £EmAH \f délivrer \cme be appalled, horrified \cmf être épouvanté, horrifié _reference_start_1 Kings 9:08_reference_end_ _reference_start_2 Chronicles 7:21_reference_end_ _reference_start_2 Samuel 13:20_reference_end_ _reference_s \G9s9demondemon\h dEH \f démon \cme independent spiritual being \cmf être spirituel indépendent _reference_start_Deuteronomy 32:17_reference_end_ _reference_start_Psalms 106:37_reference_end_8%%8deliver (to)deliver (to)\h bazÍH \f délivrer \cme save from something \cmf délivrer de qqch _reference_start_Daniel 3:15_reference_end_ _reference_start_Daniel 3:17_reference_end_ _reference_start_Daniel 3:28_reference_end_ _reference_start_Daniel 6:15_reference_end_ _reference_start_Daniel 6:17_reference_end_ _reference_start_Daniel 6:21_reference_end_ _reference_start_Daniel 6:28_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( $= #= "= != = = = = = = = =! = = = = = = = = < < <  <  <  <  < ; ;4 ; ;# ;  ; ;  :  : :  :  ~: }: |: {:  z:1 y:! x:  w:  v:  u: t: s:# r: q: p:  o: n:  m9j% l9  k8 j8 i8 h8 g8 f8tart_Daniel 8:27_reference_end_ _reference_start_Ezekiel 26:16_reference_end_ _reference_start_Ezekiel 27:35_reference_end_ _reference_start_Leviticus 26:32_reference_end_ \cme be deserted, ruined \cmf être déserté, ruiné _reference_start_Daniel 8:13_reference_end_ _reference_start_Daniel 9:17_reference_end_ _reference_start_Daniel 9:18_reference_end_ _reference_start_Daniel 9:26_reference_end_ _reference_start_Ezekiel 33:28_reference_end_ _reference_start_Isaiah 49:08_reference_end_ \cme devastate, ravage \cmf ravage _reference_start_1 Samuel 5:06_reference_end_ _reference_start_Isaiah 20:26_reference_end_ _reference_start_Leviticus 26:31_reference_end_ _reference_start_Leviticus 26:32_reference_end_ \cme horrible, appalling \cmf être horrible, épouvantable _reference_start_Daniel 9:27_reference_end_ _reference_start_Daniel 11:31_reference_end_ _reference_start_Daniel 12:11_reference_end_ \cme the thing that causes horror \cmf a chose qui cause l'horreur _reference_start_Daniel 9:27_reference_end_ h<##<destructiondestruction\h hAGtixüüüüüm \f destruction \cme dismay \cmf desaroie _reference_start_Proverbs 21:15_reference_end_ \cme ruin of something or someone \cmf ruine de qqch ou quelqu'un _reference_start_Proverbs 10:14_reference_end_ _reference_start_Proverbs 10:15_reference_end_ _reference_start_Proverbs 10:29_reference_end_ _reference_start_Proverbs 13:03_reference_end_ _reference_start_Proverbs 14:28_reference_end_ _reference_start_Proverbs 18:07_reference_end_w;!!?;desolationdesolation\h £EmAH \f dévastation \cme be deserted, ruined \cmf être déserté, ruiné _reference_start_Daniel 9:17_reference_end_ _reference_start_Jeremiah 12:11_reference_end_ \cme waste, ruin of place or land \cmf ruine d'un terrain, terre à l'abandon _reference_start_Daniel 9:02_reference_end_ _reference_start_Isaiah 35:04_reference_end_ _reference_start_Ezra 26:20_reference_end_ _reference_start_Isaiah 52:09_reference_end_ _reference_start_Leviticus 26:31_reference_end_nce_start_Proverbs 17:24_reference_end_ _reference_start_Proverbs 17:28_reference_end_ _reference_start_Proverbs 18:15_reference_end_ _reference_start_Proverbs 19:26_reference_end_ _reference_start_Proverbs 28:02_reference_end_ _reference_start_Proverbs 28:07_reference_end_ _reference_start_Proverbs 28:11_reference_end_ \cme observe, consider with attention \cmf observer, considerer avec attention _reference_start_Proverbs 21:29_reference_end_ _reference_start_Proverbs 23:01_reference_end_ \cme perceive with the senses \cmf percevoir avec les sens _reference_start_Proverbs 7:07_reference_end_ _reference_start_Proverbs 14:15_reference_end_ _reference_start_Proverbs 29:19_reference_end_ \cme understand, know \cmf comprendre, savoire _reference_start_Proverbs 2:05_reference_end_ _reference_start_Proverbs 2:09_reference_end_ _reference_start_Proverbs 20:24_reference_end_ _reference_start_Proverbs 24:12_reference_end_ _reference_start_Proverbs 28:05_reference_end_ _reference_start_Proverbs 29:07_reference_end_ 77==W=discerndiscern\h €yÐb \f discerner \cme be discerning, discreet, intelligent \cmf plein de discernement, discret, intelligent _reference_start_Proverbs 1:02_reference_end_ _reference_start_Proverbs 1:05_reference_end_ _reference_start_Proverbs 1:06_reference_end_ _reference_start_Proverbs 8:05_reference_end_ _reference_start_Proverbs 8:09_reference_end_ _reference_start_Proverbs 10:13_reference_end_ _reference_start_Proverbs 14:06_reference_end_ _reference_start_Proverbs 14:08_reference_end_ _reference_start_Proverbs 14:33_reference_end_ _reference_start_Proverbs 15:14_reference_end_ _reference_start_Proverbs 16:21_reference_end_ _reference_start_Proverbs 17:10_reference_end_ _refere ^ ?tfXJ<. xj\N@2$|n`RD6( cB bB aB  `Bf _B  ^B  ]B  \A' [A% ZA# YA  X@ W@ V@  U? T? S? R? Q? P?  O> N> M> L> K>  J> I> H> G> F> E> D> C> B> A>! @> ?>  >>  =>  <>  ;>! :> 9> 8> 7> 6> 5> 4> 3> 2> 1> 0> /> .= -= ,= += *= )= (= '= &= %=e_end_ _reference_start_Proverbs 8:33_reference_end_ _reference_start_Proverbs 10:17_reference_end_ _reference_start_Proverbs 12:01_reference_end_ _reference_start_Proverbs 13:01_reference_end_ _reference_start_Proverbs 13:18_reference_end_ _reference_start_Proverbs 15:32_reference_end_ _reference_start_Proverbs 15:33_reference_end_ _reference_start_Proverbs 16:22_reference_end_ _reference_start_Proverbs 19:20_reference_end_ _reference_start_Proverbs 19:27_reference_end_ _reference_start_Proverbs 23:12_reference_end_ _reference_start_Proverbs 23:23_reference_end_ _reference_start_Proverbs 23:23_reference_end_ _reference_start_Proverbs 24:32_reference_end_ \cme punishment \cmf punition _reference_start_Proverbs 3:11_reference_end_ _reference_start_Proverbs 7:22_reference_end_ _reference_start_Proverbs 13:24_reference_end_ _reference_start_Proverbs 15:05_reference_end_ _reference_start_Proverbs 15:10_reference_end_ _reference_start_Proverbs 22:16_reference_end_ _reference_start_Proverbs 23:13_reference_end_ vv~>!!M>disciplinediscipline\h rAswm \f discipline \cme chastening, correction \cmf correction _reference_start_Proverbs 1:02_reference_end_ _reference_start_Proverbs 1:03_reference_end_ _reference_start_Proverbs 1:07_reference_end_ _reference_start_Proverbs 1:07_reference_end_ _reference_start_Proverbs 1:08_reference_end_ _reference_start_Proverbs 4:01_reference_end_ _reference_start_Proverbs 4:13_reference_end_ _reference_start_Proverbs 5:12_reference_end_ _reference_start_Proverbs 5:23_reference_end_ _reference_start_Proverbs 6:23_reference_end_ _reference_start_Proverbs 8:10_reference_end_ _reference_start_Proverbs 8:10_referenc a 4:A)){Adrink offeringdrink offering\h ªesÆn \f libation \cme drink offering \cmf libation _reference_start_1 Chronicles 29:21_reference_end_ _reference_start_Genesis 35:14_reference_end_ _reference_start_Leviticus 23:37_reference_end_ _reference_start_Numbers 29:39_reference_end_v@!!=@discretiondiscretion\h hAGmÇzüm \f discrétion \cme evil devising \cmf penser de faire le mal _reference_start_Proverbs 12:02_reference_end_ _reference_start_Proverbs 14:17_reference_end_ _reference_start_Proverbs 24:08_reference_end_H?++M?discipline (to)discipline (to)\h rasAy. \f discipliner \cme admonish \cmf admonester, faire des remontrances à qqn _reference_start_Proverbs 9:07_reference_end_ \cme correct, discipline \cmf corriger, discipliner _reference_start_Proverbs 1:1_reference_end_ _reference_start_Proverbs 19:18_reference_end_ _reference_start_Proverbs 29:17_reference_end_ _reference_start_Proverbs 29:19_reference_end_ _reference_start_Proverbs 31:01_reference_end_ eme dirt, dust, soil \cmf sol, terre moble _reference_start_1 Kings 7:46_reference_end_ _reference_start_1 Samuel 4:12_reference_end_ _reference_start_2 Samuel 1:02_reference_end_ _reference_start_2 Samuel 15:32_reference_end_ _reference_start_Daniel 12:02_reference_end_ _reference_start_Exodus 20:24_reference_end_ _reference_start_Genesis 2:07_reference_end_ _reference_start_Genesis 2:19_reference_end_ _reference_start_Genesis 3:19_reference_end_ _reference_start_Psalms 146:04_reference_end_ \cme dry land vs ocean or river \cmf terre sec en contrast avec l'ocean ou la rivière _reference_start_Exodus 4:09_reference_end_ _reference_start_Exodus 14:16_reference_end_ _reference_start_Exodus 14:22_reference_end_ _reference_start_Exodus 14:29_reference_end_ _reference_start_Exodus 15:19_reference_end_ _reference_start_Genesis 1:09_reference_end_ _reference_start_Genesis 1:10_reference_end_ _reference_start_Jonah 1:09_reference_end_ _reference_start_Joshua 4:22_reference_end_ _reference_start_Nehemiah 9:11_refe frence_end_ _reference_start_Psalms 66:06_reference_end_ \cme farmer, tiller of soil \cmf fermier, celui qui travail la terre _reference_start_Genesis 9:20_reference_end_ \cme figurative sense = abundance \cmf sense figuré = abondance _reference_start_2 Chronicles 1:09_reference_end_ _reference_start_Genesis 13:16_reference_end_ _reference_start_Genesis 28:14_reference_end_ _reference_start_Numbers 23:10_reference_end_ \cme figurative sense = humiliation \cmf sense figuré = humiliation _reference_start_1 Kings 16:02_reference_end_ _reference_start_1 Samuel 2:08_reference_end_ _reference_start_Genesis 18:27_reference_end_ _reference_start_Psalms 7:06_reference_end_ _reference_start_Psalms 119:25_reference_end_ \cme figurative sense = scattered \cmf sense figuré = dispersé _reference_start_2 Kings 13:07_reference_end_ \cme figurative use for Israel's need for God \cmf sense figuré d'Israël qui a besoin de Dieu _reference_start_Isaiah 44:03_reference_end_ \cme inhabitents of earth \cmf les habitants du gmonde _reference_start_Genesis 12:03_reference_end_ _reference_start_Genesis 28:14_reference_end_ \cme land vs water or air \cmf terre en contraste avec l'eau et l'air _reference_start_2 Samuel 17:12_reference_end_ _reference_start_Genesis 1:25_reference_end_ _reference_start_Genesis 4:10_reference_end_ _reference_start_Genesis 6:20_reference_end_ _reference_start_Genesis 7:08_reference_end_ _reference_start_Genesis 9:02_reference_end_ \cme location, specific place \cmf local, lieu particulier _reference_start_1 Samuel 20:31_reference_end_ _reference_start_2 Samuel 14:07_reference_end_ _reference_start_Exodus 3:05_reference_end_ _reference_start_Exodus 10:06_reference_end_ _reference_start_Genesis 4:11_reference_end_ \cme loose soil, dust \cmf terre meuble, sol _reference_start_2 Samuel 0:_reference_end_ _reference_start_Deuteronomy 28:24_reference_end_ _reference_start_Genesis 2:07_reference_end_ _reference_start_Genesis 3:14_reference_end_ _reference_start_Genesis 3:19_reference_end_ _reference_start_Ge hnesis 26:15_reference_end_ _reference_start_Psalms 18:43_reference_end_ _reference_start_Psalms 30:10_reference_end_ \cme piece of ground, property \cmf propriété, terrain _reference_start_Genesis 47:18_reference_end_ _reference_start_Genesis 47:19_reference_end_ _reference_start_Genesis 47:20_reference_end_ _reference_start_Genesis 47:22_reference_end_ _reference_start_Genesis 47:26_reference_end_ \cme powder \cmf poudre _reference_start_2 Samuel 22:43_reference_end_ _reference_start_Deuteronomy 9:21_reference_end_ _reference_start_Numbers 19:17_reference_end_ \cme soil, land, surface of ground \cmf terrain, sol et sa surface _reference_start_1 Samuel 20:15_reference_end_ _reference_start_2 Samuel 9:10_reference_end_ _reference_start_Deuteronomy 28:04_reference_end_ _reference_start_Deuteronomy 28:11_reference_end_ _reference_start_Deuteronomy 28:18_reference_end_ _reference_start_Deuteronomy 28:33_reference_end_ _reference_start_Deuteronomy 28:42_reference_end_ _reference_start_Deuteronomy 28:51_refer ience_end_ _reference_start_Exodus 8:17_reference_end_ _reference_start_Exodus 23:19_reference_end_ _reference_start_Exodus 34:26_reference_end_ _reference_start_Genesis 2:05_reference_end_ _reference_start_Genesis 2:06_reference_end_ _reference_start_Genesis 2:09_reference_end_ _reference_start_Genesis 3:17_reference_end_ _reference_start_Genesis 3:23_reference_end_ _reference_start_Genesis 4:02_reference_end_ _reference_start_Genesis 4:03_reference_end_ _reference_start_Genesis 4:12_reference_end_ _reference_start_Genesis 4:14_reference_end_ _reference_start_Genesis 5:29_reference_end_ _reference_start_Genesis 6:01_reference_end_ _reference_start_Genesis 6:07_reference_end_ _reference_start_Genesis 7:04_reference_end_ _reference_start_Genesis 7:23_reference_end_ _reference_start_Genesis 8:08_reference_end_ _reference_start_Genesis 8:13_reference_end_ _reference_start_Genesis 8:21_reference_end_ _reference_start_Genesis 19:25_reference_end_ _reference_start_Genesis 47:23_reference_end_ _reference_start_Proverbs 28:13_reference_end_ _reference_start_Psalms 83:11_reference_end_ \cme surface of the ground, of earth \cmf surface du sol, de la terre _reference_start_Exodus 8:12_reference_end_ _reference_start_Exodus 8:13_reference_end_ \cme territory, country \cmf territoire, pays _reference_start_1 Kings 8:34_reference_end_ _reference_start_1 Kings 8:40_reference_end_ _reference_start_1 Kings 9:07_reference_end_ _reference_start_2 Chronicles 7:20_reference_end_ _reference_start_Daniel 11:09_reference_end_ _reference_start_Daniel 11:39_reference_end_ _reference_start_Deuteronomy 28:21_reference_end_ _reference_start_Deuteronomy 28:63_reference_end_ _reference_start_Deuteronomy 29:27_reference_end_ _reference_start_Exodus 20:12_reference_end_ _reference_start_Genesis 28:15_reference_end_ _reference_start_Genesis 1:1_reference_end_ _reference_start_Genesis 47:20_reference_end_ _reference_start_Genesis 47:26_reference_end_ _reference_start_Numbers 11:12_reference_end_ _reference_start_Psalms 137:04_reference_end_ ''cC%% Cearth, worldearth, world\h Šåre' \f terre, monde \cme country, territory, land \cmf pays, territoire _reference_start_Daniel 1:02_reference_end_ _reference_start_Daniel 9:07_reference_end_ _reference_start_Daniel 9:15_reference_end_ _reference_start_Daniel 11:19_reference_end_ _reference_start_Daniel 11:28_reference_end_ _reference_start_Daniel 11:40_reference_end_ _reference_start_Daniel 11:42_reference_end_ _referenc m}B_Bearthearth\h hAHAÐbÂy \f terre, monde \cme coast, edge of the water \cmf la côte, à côté de la mer _reference_start_Jonah 1:13_reference_end_ _reference_start_Jonah 2:11_reference_end_ \cme debris of ruined city \cmf débrie d'une ville ruinée _reference_start_1 Kings 20:10_reference_end_ _reference_start_Psalms 102:15_reference_end_ \cme dirt of the grave \cmf sol du tombeau _reference_start_Daniel 12:02_reference_end_ _reference_start_Psalms 22:16_reference_end_ _reference_start_Psalms 22:30_reference_end_ \c d ?seWI;-wi[M?1#{m_QC5' "B  !B B  B + B/ B/ B/ B/ B/ B B+ B B B B B B B B  B B  B  B  B B B B B  B B  B, B  Bw B B B  ~B  }B |B {B  zB yB  xBB wB vB uB  tB sB rB qB pB oB nB mB lB kB jB iB hB  gB  fB  eB  dB . ?tfXJ<. xj\N@2$|n`QC5' aC `C _C ^C ]C \C [C ZC * YC ( XC  WC  VC  UC  TC SB RB QB/ PB/ OB NB MB LB KB? JB IB ' HB GB FB  EB ( DB " CB BB ABS @B ?B/ >B =B <B ;B :B 9B 8B 7B 6B 5B 4B 3B 2B 1B 0B /B .B -B ,B" +B *B )B3 (B* 'B! &B %B $B #B ne_start_Deuteronomy 18:09_reference_end_ _reference_start_Esther 8:17_reference_end_ _reference_start_Exodus 1:07_reference_end_ _reference_start_Exodus 1:10_reference_end_ _reference_start_Exodus 2:15_reference_end_ _reference_start_Exodus 2:22_reference_end_ _reference_start_Exodus 3:08_reference_end_ _reference_start_Exodus 3:17_reference_end_ _reference_start_Exodus 4:20_reference_end_ _reference_start_Exodus 5:05_reference_end_ _reference_start_Exodus 5:12_reference_end_ _reference_start_Exodus 6:01_reference_end_ _reference_start_Exodus 6:04_reference_end_ _reference_start_Exodus 6:08_reference_end_ _reference_start_Exodus 6:11_reference_end_ _reference_start_Exodus 6:13_reference_end_ _reference_start_Exodus 6:26_reference_end_ _reference_start_Exodus 7:02_reference_end_ _reference_start_Exodus 7:03_reference_end_ _reference_start_Exodus 7:04_reference_end_ _reference_start_Exodus 7:19_reference_end_ _reference_start_Exodus 7:21_reference_end_ _reference_start_Exodus 8:01_reference_end_ _reference_ ostart_Exodus 8:02_reference_end_ _reference_start_Exodus 8:03_reference_end_ _reference_start_Exodus 8:10_reference_end_ _reference_start_Exodus 8:12_reference_end_ _reference_start_Exodus 8:13_reference_end_ _reference_start_Exodus 8:18_reference_end_ _reference_start_Exodus 8:20_reference_end_ _reference_start_Exodus 8:21_reference_end_ _reference_start_Exodus 9:05_reference_end_ _reference_start_Exodus 9:09_reference_end_ _reference_start_Exodus 9:22_reference_end_ _reference_start_Exodus 9:23_reference_end_ _reference_start_Exodus 9:24_reference_end_ _reference_start_Exodus 9:25_reference_end_ _reference_start_Exodus 9:26_reference_end_ _reference_start_Exodus 10:12_reference_end_ _reference_start_Exodus 10:13_reference_end_ _reference_start_Exodus 10:14_reference_end_ _reference_start_Exodus 10:15_reference_end_ _reference_start_Exodus 10:21_reference_end_ _reference_start_Exodus 10:22_reference_end_ _reference_start_Exodus 11:03_reference_end_ _reference_start_Exodus 11:05_reference_end_ _reference_ pstart_Exodus 11:06_reference_end_ _reference_start_Exodus 11:09_reference_end_ _reference_start_Exodus 11:10_reference_end_ _reference_start_Exodus 12:01_reference_end_ _reference_start_Exodus 12:12_reference_end_ _reference_start_Exodus 12:13_reference_end_ _reference_start_Exodus 12:15_reference_end_ _reference_start_Exodus 12:17_reference_end_ _reference_start_Exodus 12:19_reference_end_ _reference_start_Exodus 12:33_reference_end_ _reference_start_Exodus 12:41_reference_end_ _reference_start_Exodus 12:42_reference_end_ _reference_start_Exodus 12:48_reference_end_ _reference_start_Exodus 12:51_reference_end_ _reference_start_Exodus 13:1_reference_end_ _reference_start_Exodus 16:1_reference_end_ _reference_start_Exodus 18:03_reference_end_ _reference_start_Exodus 18:27_reference_end_ _reference_start_Exodus 19:01_reference_end_ _reference_start_Exodus 20:02_reference_end_ _reference_start_Genesis 2:11_reference_end_ _reference_start_Genesis 2:12_reference_end_ _reference_start_Genesis 2:13_reference_end q_ _reference_start_Genesis 4:16_reference_end_ _reference_start_Genesis 10:05_reference_end_ _reference_start_Genesis 10:10_reference_end_ _reference_start_Genesis 10:11_reference_end_ _reference_start_Genesis 10:20_reference_end_ _reference_start_Genesis 10:31_reference_end_ _reference_start_Genesis 11:28_reference_end_ _reference_start_Genesis 11:31_reference_end_ _reference_start_Genesis 12:01_reference_end_ _reference_start_Genesis 12:05_reference_end_ _reference_start_Genesis 12:06_reference_end_ _reference_start_Genesis 12:07_reference_end_ _reference_start_Genesis 12:10_reference_end_ _reference_start_Genesis 13:07_reference_end_ _reference_start_Genesis 13:09_reference_end_ _reference_start_Genesis 13:10_reference_end_ _reference_start_Genesis 13:12_reference_end_ _reference_start_Genesis 13:17_reference_end_ _reference_start_Genesis 15:07_reference_end_ _reference_start_Genesis 15:13_reference_end_ _reference_start_Genesis 15:18_reference_end_ _reference_start_Genesis 16:03_reference_end_ _refere rnce_start_Genesis 16:08_reference_end_ _reference_start_Genesis 20:15_reference_end_ _reference_start_Genesis 21:21_reference_end_ _reference_start_Genesis 21:32_reference_end_ _reference_start_Genesis 21:34_reference_end_ _reference_start_Genesis 23:02_reference_end_ _reference_start_Genesis 23:07_reference_end_ _reference_start_Genesis 23:12_reference_end_ _reference_start_Genesis 23:13_reference_end_ _reference_start_Genesis 23:19_reference_end_ _reference_start_Genesis 24:04_reference_end_ _reference_start_Genesis 24:05_reference_end_ _reference_start_Genesis 24:07_reference_end_ _reference_start_Genesis 24:37_reference_end_ _reference_start_Genesis 26:01_reference_end_ _reference_start_Genesis 26:02_reference_end_ _reference_start_Genesis 26:03_reference_end_ _reference_start_Genesis 26:04_reference_end_ _reference_start_Genesis 26:12_reference_end_ _reference_start_Genesis 26:22_reference_end_ _reference_start_Genesis 27:46_reference_end_ _reference_start_Genesis 28:04_reference_end_ _reference_star st_Genesis 29:01_reference_end_ _reference_start_Genesis 30:25_reference_end_ _reference_start_Genesis 31:03_reference_end_ _reference_start_Genesis 31:13_reference_end_ _reference_start_Genesis 31:18_reference_end_ _reference_start_Genesis 32:10_reference_end_ _reference_start_Genesis 32:14_reference_end_ _reference_start_Genesis 33:18_reference_end_ _reference_start_Genesis 34:01_reference_end_ _reference_start_Genesis 34:10_reference_end_ _reference_start_Genesis 34:21_reference_end_ _reference_start_Genesis 34:30_reference_end_ _reference_start_Genesis 35:06_reference_end_ _reference_start_Genesis 35:12_reference_end_ _reference_start_Genesis 35:22_reference_end_ _reference_start_Genesis 36:05_reference_end_ _reference_start_Genesis 36:06_reference_end_ _reference_start_Genesis 36:07_reference_end_ _reference_start_Genesis 36:16_reference_end_ _reference_start_Genesis 36:17_reference_end_ _reference_start_Genesis 36:20_reference_end_ _reference_start_Genesis 36:21_reference_end_ _reference_start_Genesi ts 36:30_reference_end_ _reference_start_Genesis 36:31_reference_end_ _reference_start_Genesis 36:43_reference_end_ _reference_start_Genesis 37:01_reference_end_ _reference_start_Genesis 40:15_reference_end_ _reference_start_Genesis 41:19_reference_end_ _reference_start_Genesis 41:29_reference_end_ _reference_start_Genesis 41:30_reference_end_ _reference_start_Genesis 41:31_reference_end_ _reference_start_Genesis 41:33_reference_end_ _reference_start_Genesis 41:34_reference_end_ _reference_start_Genesis 41:36_reference_end_ _reference_start_Genesis 41:41_reference_end_ _reference_start_Genesis 41:43_reference_end_ _reference_start_Genesis 41:44_reference_end_ _reference_start_Genesis 41:45_reference_end_ _reference_start_Genesis 41:46_reference_end_ _reference_start_Genesis 41:48_reference_end_ _reference_start_Genesis 41:52_reference_end_ _reference_start_Genesis 41:53_reference_end_ _reference_start_Genesis 41:54_reference_end_ _reference_start_Genesis 41:55_reference_end_ _reference_start_Genesis 41:56_ ureference_end_ _reference_start_Genesis 42:05_reference_end_ _reference_start_Genesis 42:06_reference_end_ _reference_start_Genesis 42:07_reference_end_ _reference_start_Genesis 42:09_reference_end_ _reference_start_Genesis 42:12_reference_end_ _reference_start_Genesis 42:13_reference_end_ _reference_start_Genesis 42:29_reference_end_ _reference_start_Genesis 42:30_reference_end_ _reference_start_Genesis 42:32_reference_end_ _reference_start_Genesis 42:33_reference_end_ _reference_start_Genesis 42:34_reference_end_ _reference_start_Genesis 43:01_reference_end_ _reference_start_Genesis 43:11_reference_end_ _reference_start_Genesis 44:08_reference_end_ _reference_start_Genesis 45:06_reference_end_ _reference_start_Genesis 45:08_reference_end_ _reference_start_Genesis 45:10_reference_end_ _reference_start_Genesis 45:17_reference_end_ _reference_start_Genesis 45:18_reference_end_ _reference_start_Genesis 45:19_reference_end_ _reference_start_Genesis 45:20_reference_end_ _reference_start_Genesis 45:25_referenc ve_end_ _reference_start_Genesis 45:26_reference_end_ _reference_start_Genesis 46:06_reference_end_ _reference_start_Genesis 46:12_reference_end_ _reference_start_Genesis 46:20_reference_end_ _reference_start_Genesis 46:28_reference_end_ _reference_start_Genesis 46:31_reference_end_ _reference_start_Genesis 46:34_reference_end_ _reference_start_Genesis 47:01_reference_end_ _reference_start_Genesis 47:04_reference_end_ _reference_start_Genesis 47:06_reference_end_ _reference_start_Genesis 47:11_reference_end_ _reference_start_Genesis 47:13_reference_end_ _reference_start_Genesis 47:14_reference_end_ _reference_start_Genesis 47:15_reference_end_ _reference_start_Genesis 47:20_reference_end_ _reference_start_Genesis 47:27_reference_end_ _reference_start_Genesis 47:28_reference_end_ _reference_start_Genesis 48:03_reference_end_ _reference_start_Genesis 48:04_reference_end_ _reference_start_Genesis 48:05_reference_end_ _reference_start_Genesis 48:21_reference_end_ _reference_start_Genesis 49:30_reference_end_ _ wreference_start_Genesis 50:05_reference_end_ _reference_start_Genesis 50:07_reference_end_ _reference_start_Genesis 50:08_reference_end_ _reference_start_Genesis 50:11_reference_end_ _reference_start_Genesis 50:13_reference_end_ _reference_start_Genesis 50:24_reference_end_ _reference_start_Jonah 1:08_reference_end_ _reference_start_Leviticus 18:03_reference_end_ _reference_start_Leviticus 18:27_reference_end_ _reference_start_Leviticus 25:02_reference_end_ _reference_start_Leviticus 25:10_reference_end_ _reference_start_Leviticus 25:18_reference_end_ _reference_start_Leviticus 25:24_reference_end_ _reference_start_Leviticus 25:31_reference_end_ _reference_start_Leviticus 25:38_reference_end_ _reference_start_Leviticus 25:42_reference_end_ _reference_start_Leviticus 25:45_reference_end_ _reference_start_Leviticus 25:55_reference_end_ _reference_start_Numbers 14:09_reference_end_ _reference_start_Ruth 2:11_reference_end_ \cme death \cmf la mort _reference_start_Jonah 2:07_reference_end_ \cme earth, vs heav xens or sky \cmf terre, en contraste avec les cieux _reference_start_1 Chronicles 21:16_reference_end_ _reference_start_1 Chronicles 29:11_reference_end_ _reference_start_2 Samuel 22:08_reference_end_ _reference_start_Exodus 20:04_reference_end_ _reference_start_Exodus 20:11_reference_end_ _reference_start_Genesis 1:01_reference_end_ _reference_start_Genesis 1:02_reference_end_ _reference_start_Genesis 1:15_reference_end_ _reference_start_Genesis 1:17_reference_end_ _reference_start_Genesis 2:01_reference_end_ _reference_start_Genesis 2:04_reference_end_ _reference_start_Genesis 2:05_reference_end_ _reference_start_Genesis 2:16_reference_end_ _reference_start_Genesis 14:19_reference_end_ _reference_start_Genesis 14:22_reference_end_ _reference_start_Genesis 24:03_reference_end_ _reference_start_Genesis 24:07_reference_end_ _reference_start_Genesis 28:12_reference_end_ _reference_start_Psalms 60:04_reference_end_ _reference_start_Psalms 121:02_reference_end_ \cme figurative use \cmf sense figurée _referenc ye_start_Genesis 13:06_reference_end_ \cme ground, soil \cmf terrain, sol _reference_start_Daniel 4:07_reference_end_ _reference_start_Daniel 4:12_reference_end_ _reference_start_Daniel 4:20_reference_end_ _reference_start_Daniel 7:04_reference_end_ \cme ground, soil, surface of ground \cmf terrain, sol et sa surface _reference_start_Daniel 8:05_reference_end_ _reference_start_Daniel 8:07_reference_end_ _reference_start_Daniel 8:10_reference_end_ _reference_start_Daniel 8:12_reference_end_ _reference_start_Daniel 8:18_reference_end_ _reference_start_Daniel 10:09_reference_end_ _reference_start_Daniel 10:15_reference_end_ _reference_start_Exodus 4:03_reference_end_ _reference_start_Exodus 8:12_reference_end_ _reference_start_Exodus 8:13_reference_end_ _reference_start_Exodus 10:05_reference_end_ _reference_start_Exodus 16:14_reference_end_ _reference_start_Genesis 1:10_reference_end_ _reference_start_Genesis 1:20_reference_end_ _reference_start_Genesis 1:22_reference_end_ _reference_start_Genesis 1:24_refer zence_end_ _reference_start_Genesis 1:25_reference_end_ _reference_start_Genesis 1:26_reference_end_ _reference_start_Genesis 1:28_reference_end_ _reference_start_Genesis 1:30_reference_end_ _reference_start_Genesis 1:30_reference_end_ _reference_start_Genesis 7:14_reference_end_ _reference_start_Genesis 7:21_reference_end_ _reference_start_Genesis 8:17_reference_end_ _reference_start_Genesis 13:16_reference_end_ _reference_start_Genesis 18:02_reference_end_ _reference_start_Genesis 19:01_reference_end_ _reference_start_Genesis 24:52_reference_end_ _reference_start_Genesis 28:14_reference_end_ _reference_start_Genesis 33:03_reference_end_ _reference_start_Genesis 37:10_reference_end_ _reference_start_Genesis 38:09_reference_end_ _reference_start_Genesis 41:47_reference_end_ _reference_start_Genesis 42:06_reference_end_ _reference_start_Genesis 43:26_reference_end_ _reference_start_Genesis 44:11_reference_end_ _reference_start_Genesis 44:14_reference_end_ _reference_start_Genesis 45:07_reference_end_ _refer {ence_start_Genesis 45:18_reference_end_ _reference_start_Genesis 48:12_reference_end_ _reference_start_Leviticus 18:25_reference_end_ _reference_start_Leviticus 18:27_reference_end_ _reference_start_Leviticus 18:28_reference_end_ _reference_start_Leviticus 25:04_reference_end_ _reference_start_Leviticus 25:05_reference_end_ _reference_start_Leviticus 25:06_reference_end_ _reference_start_Leviticus 25:07_reference_end_ _reference_start_Leviticus 25:09_reference_end_ _reference_start_Leviticus 25:19_reference_end_ _reference_start_Leviticus 25:23_reference_end_ _reference_start_Leviticus 25:24_reference_end_ _reference_start_Psalms 72:06_reference_end_ _reference_start_Psalms 72:16_reference_end_ _reference_start_Ruth 2:10_reference_end_ \cme ground, vs sky \cmf terre par opposition avec le ciel _reference_start_Daniel 6:28_reference_end_ \cme land of Cannan or Israel \cmf pays de Canaan, ou d'Israël _reference_start_Daniel 9:06_reference_end_ _reference_start_Daniel 11:16_reference_end_ _reference_start_D |aniel 11:41_reference_end_ \cme metonomy for people \cmf metonomy pour personnes _reference_start_1 Chronicles 16:30_reference_end_ _reference_start_Daniel 2:10_reference_end_ _reference_start_Isaiah 13:11_reference_end_ _reference_start_Proverbs 8:31_reference_end_ _reference_start_Psalms 9:09_reference_end_ _reference_start_Psalms 24:01_reference_end_ \cme metonymy for people \cmf métonomy pour personne _reference_start_1 Kings 2:02_reference_end_ _reference_start_1 Kings 10:24_reference_end_ _reference_start_Esther 10:01_reference_end_ _reference_start_Genesis 6:11_reference_end_ _reference_start_Genesis 6:12_reference_end_ _reference_start_Genesis 1:1_reference_end_ _reference_start_Genesis 10:25_reference_end_ _reference_start_Genesis 11:01_reference_end_ _reference_start_Genesis 19:31_reference_end_ _reference_start_Genesis 21:23_reference_end_ _reference_start_Genesis 41:36_reference_end_ _reference_start_Genesis 41:57_reference_end_ _reference_start_Leviticus 19:20_reference_end_ _reference_start }_Leviticus 25:02_reference_end_ _reference_start_Psalms 34:17_reference_end_ \cme of the world, vs heavenly \cmf terrestre, en contraste avec le paradis _reference_start_Proverbs 8:26_reference_end_ _reference_start_Psalms 17:14_reference_end_ \cme planet, world \cmf la planète _reference_start_Daniel 8:05_reference_end_ _reference_start_Exodus 8:18_reference_end_ _reference_start_Exodus 9:14_reference_end_ _reference_start_Exodus 9:15_reference_end_ _reference_start_Exodus 9:16_reference_end_ _reference_start_Exodus 9:22_reference_end_ _reference_start_Exodus 9:23_reference_end_ _reference_start_Exodus 9:29_reference_end_ _reference_start_Exodus 10:15_reference_end_ _reference_start_Exodus 15:12_reference_end_ _reference_start_Exodus 19:05_reference_end_ _reference_start_Genesis 1:26_reference_end_ _reference_start_Genesis 1:28_reference_end_ _reference_start_Genesis 1:29_reference_end_ _reference_start_Genesis 4:12_reference_end_ _reference_start_Genesis 4:14_reference_end_ _reference_start_Genesis 6:0 ~4_reference_end_ _reference_start_Genesis 6:12_reference_end_ _reference_start_Genesis 6:13_reference_end_ _reference_start_Genesis 6:17_reference_end_ _reference_start_Genesis 7:03_reference_end_ _reference_start_Genesis 7:04_reference_end_ _reference_start_Genesis 7:06_reference_end_ _reference_start_Genesis 7:10_reference_end_ _reference_start_Genesis 7:12_reference_end_ _reference_start_Genesis 7:17_reference_end_ _reference_start_Genesis 7:18_reference_end_ _reference_start_Genesis 7:19_reference_end_ _reference_start_Genesis 7:21_reference_end_ _reference_start_Genesis 7:23_reference_end_ _reference_start_Genesis 7:24_reference_end_ _reference_start_Genesis 8:01_reference_end_ _reference_start_Genesis 8:03_reference_end_ _reference_start_Genesis 8:07_reference_end_ _reference_start_Genesis 8:11_reference_end_ _reference_start_Genesis 8:13_reference_end_ _reference_start_Genesis 8:14_reference_end_ _reference_start_Genesis 8:17_reference_end_ _reference_start_Genesis 8:19_reference_end_ _reference_st art_Genesis 8:22_reference_end_ _reference_start_Genesis 9:01_reference_end_ _reference_start_Genesis 9:02_reference_end_ _reference_start_Genesis 9:07_reference_end_ _reference_start_Genesis 9:10_reference_end_ _reference_start_Genesis 9:11_reference_end_ _reference_start_Genesis 9:14_reference_end_ _reference_start_Genesis 9:16_reference_end_ _reference_start_Genesis 9:17_reference_end_ _reference_start_Genesis 9:19_reference_end_ _reference_start_Genesis 10:08_reference_end_ _reference_start_Genesis 10:32_reference_end_ _reference_start_Genesis 18:18_reference_end_ _reference_start_Genesis 18:25_reference_end_ _reference_start_Genesis 19:23_reference_end_ _reference_start_Genesis 19:31_reference_end_ _reference_start_Genesis 22:18_reference_end_ _reference_start_Genesis 26:04_reference_end_ _reference_start_Genesis 27:28_reference_end_ _reference_start_Genesis 27:39_reference_end_ _reference_start_Genesis 41:57_reference_end_ _reference_start_Genesis 48:16_reference_end_ _reference_start_Psalms 2:02_re ference_end_ _reference_start_Psalms 2:08_reference_end_ _reference_start_Psalms 2:10_reference_end_ \cme region, area \cmf région, district _reference_start_Exodus 14:03_reference_end_ _reference_start_Genesis 13:15_reference_end_ _reference_start_Genesis 19:28_reference_end_ _reference_start_Genesis 20:01_reference_end_ _reference_start_Genesis 22:02_reference_end_ _reference_start_Genesis 23:15_reference_end_ _reference_start_Genesis 24:62_reference_end_ _reference_start_Genesis 25:06_reference_end_ _reference_start_Genesis 28:13_reference_end_ _reference_start_Genesis 36:34_reference_end_ _reference_start_Genesis 41:34_reference_end_ _reference_start_Genesis 47:11_reference_end_ _reference_start_Genesis 48:07_reference_end_ _reference_start_Genesis 49:15_reference_end_ _reference_start_Psalms 42:07_reference_end_ \cme scene of human activities \cmf scène des activités humaines _reference_start_Job 18:01_reference_end_ _reference_start_Job 37:12_reference_end_ \cme the known world & the inhabitants \cmf les régions connues et les habitants _reference_start_Daniel 2:39_reference_end_ _reference_start_Daniel 3:31_reference_end_ _reference_start_Daniel 4:32_reference_end_ _reference_start_Daniel 6:26_reference_end_ _reference_start_Daniel 7:23_reference_end_ \cme tribal territory \cmf territoire d'un tribu _reference_start_1 Kings 15:20_reference_end_ _reference_start_1 Samuel 9:04_reference_end_ _reference_start_1 Samuel 9:05_reference_end_ _reference_start_1 Samuel 9:16_reference_end_ _reference_start_Deuteronomy 34:02_reference_end_ _reference_start_Ruth 1:01_reference_end_ _reference_start_Ruth 1:07_reference_end_ \cme whole earth, planet \cmf la planète _reference_start_1 Samuel 2:08_reference_end_ _reference_start_2 Samuel 22:16_reference_end_ _reference_start_Psalms 19:05_reference_end_ \cme world, planet \cmf a planète _reference_start_Daniel 2:35_reference_end_ _reference_start_Daniel 4:08_reference_end_ _reference_start_Daniel 4:19_reference_end_ _reference_start_Daniel 7:17_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( C C C C C C C C C C  C 3 C 0 C * C ) C ! C  C  C  C C C  C C C  C  C  C  C  C  C  C C C  C  ~C  }C  |C  {C zC  yC xC wC vC uC tC sC rC qC pC oC nC mC lC kC jC iC hC gC fC eC dC cC bC ?tfXJ<. xj\N@2$|n`RD6( _C$ ^C$ ]C$ \C$ [C$ ZC# YC# XC# WC" VC" UC" TC" SC! RC  QC PC OC NC MC LC KC JC. IC HC GC FC EC DC CC% BC AC @C ?C >C =C <C ;C :C" 9C 8C 7C 6C 5C 4C 3C 2C 1C  0C /C .C -C  ,C +C  *C  )C  (C  'C  &C  %C  $C  #C "C !C  ?tfXJ<. xj\N@2$|n`RD6( C/ C/ C/ C/ C/ C/ C/ C/ C/ C." C. C. C. C. C. C- C- C- C- C- C- C- C- C- C, C+ C+ C*" C*! C* C* C* ~C* }C* |C* {C* zC* yC* xC)8 wC)7 vC)6 uC)5 tC)4 sC)0 rC). qC)- pC), oC)+ nC)) mC)$ lC)" kC)! jC) iC) hC) gC) fC( eC% dC$+ cC$ bC$ aC$ `C$ ?tfXJ<. xj\N@2$|n`RD6( ]C  \C [C ZC YC  XC WC VC UC TC SC RC QC PC OC NC  MCy LC< KC JC IC HC GC FC EC DC CC BC AC @C ?C >C =C <C  ;C  :C  9C  8C 7C 6C7 5C- 4C* 3C& 2C 1C 0C /C .C -C ,C +C  *C2 )C2 (C2 'C2 &C2 %C2 $C1 #C0 "C0 !C0 C0 C/ ?tfXJ<. xj\N@2$|n`RD6( C C C  C  C C C C  C  C  C C C C C C  C ) C  C  C C CH CH C C C C C C C ~C }C |C {C zC0 yC- xC- wC, vC, uC+ tC* sC)/ rC& qC% pC! oC nC4 mC lC kC  jC iC hC gC fC eC dC cC bC aC `C _C ^C ?tfXJ<. xj\N@2$|n`RD6( [C ZC YC XC WC VC UC  TC  SC  RC  QC  PC OC NC  MC  LC  KC JC IC HC GC FC EC DC CC BC AC @C ?C >C =C <C ;C :C 9C 8C 7C 6C 5C 4C 3C 2C 1C 0C /C .C -C ,C  +C  *C  )C  (C  'C  &C  %C $C #C "C !C" C C C)9 C)$ ?tfXJ<. xj\N@2$|n`RD6( D  D  D  D  D  D  D  D  D  D  D D  D  D  D  D  D  D  D  C C C C# C C  C  C C ~C" }C  |C  {C  zC  yC xC wC vC uC' tC% sC rC* qC1 pC0 oC/ nC)" mC$" lC kC jC> iC hC gC fC eC  dC cC bC aC `C0 _C)9 ^C' ]C \C rence_start_2 Samuel 3:17_reference_end_ _reference_start_2 Samuel 5:03_reference_end_ _reference_start_2 Samuel 12:17_reference_end_ _reference_start_2 Samuel 17:04_reference_end_ _reference_start_2 Samuel 17:15_reference_end_ _reference_start_2 Samuel 19:12_reference_end_ _reference_start_Exodus 3:16_reference_end_ _reference_start_Exodus 3:18_reference_end_ _reference_start_Exodus 4:29_reference_end_ _reference_start_Exodus 12:21_reference_end_ _reference_start_Exodus 14:09_reference_end_ _reference_start_Exodus 17:05_reference_end_ _reference_start_Exodus 17:06_reference_end_ _reference_start_Exodus 18:02_reference_end_ _reference_start_Exodus 19:07_reference_end_ _reference_start_Exodus 24:01_reference_end_ _reference_start_Exodus 24:14_reference_end_ _reference_start_Genesis 24:02_reference_end_ _reference_start_Genesis 50:07_reference_end_ _reference_start_Isaiah 3:02_reference_end_ _reference_start_Numbers 11:16_reference_end_ _reference_start_Numbers 11:24_reference_end_ _reference_start_Numbers 11:25_reference_end_ _reference_start_Numbers 11:30_reference_end_ _reference_start_Ruth 4:02_reference_end_ _reference_start_Ruth 4:04_reference_end_ _reference_start_Ruth 4:09_reference_end_ _reference_start_Ruth 4:11_reference_end_ \cme people who are old \cmf personnes âgées _reference_start_1 Kings 13:11_reference_end_ _reference_start_1 Kings 13:25_reference_end_ _reference_start_1 Kings 13:29_reference_end_ _reference_start_1 Samuel 2:31_reference_end_ _reference_start_1 Samuel 2:32_reference_end_ _reference_start_1 Samuel 28:14_reference_end_ _reference_start_Deuteronomy 28:50_reference_end_ _reference_start_Esther 3:13_reference_end_ _reference_start_Exodus 10:09_reference_end_ _reference_start_Genesis 18:11_reference_end_ _reference_start_Genesis 19:04_reference_end_ _reference_start_Genesis 25:08_reference_end_ _reference_start_Genesis 35:29_reference_end_ _reference_start_Genesis 43:27_reference_end_ _reference_start_Genesis 44:20_reference_end_ _reference_start_Proverbs 17:06_reference_end_ 997DSDelderelder\h €ÔqÃz \f ancien \cme elder, person in authority \cmf chefs, personne en autorité _reference_start_1 Chronicles 11:03_reference_end_ _reference_start_1 Chronicles 15:25_reference_end_ _reference_start_1 Chronicles 21:16_reference_end_ _reference_start_1 Kings 8:01_reference_end_ _reference_start_1 Kings 8:03_reference_end_ _reference_start_1 Kings 10:08_reference_end_ _reference_start_1 Kings 12:06_reference_end_ _reference_start_1 Kings 12:08_reference_end_ _reference_start_1 Kings 12:13_reference_end_ _reference_start_1 Kings 20:07_reference_end_ _reference_start_1 Kings 21:08_reference_end_ _reference_start_1 Kings 21:11_reference_end_ _reference_start_1 Samuel 4:03_reference_end_ _reference_start_1 Samuel 8:04_reference_end_ _reference_start_1 Samuel 11:03_reference_end_ _reference_start_1 Samuel 15:30_reference_end_ _reference_start_1 Samuel 16:04_reference_end_ _reference_start_1 Samuel 30:26_reference_end_ _refe ?tfXJ<. xj\N@2$|n`RD6( YF  XF WF  VFZ UF1 TF! SF RF QF! PF  OF  NF MF LF KF JF! IF HF $ GF  FE ED DD, CD+ BD# AD @D ?D >D =D <D2 ;D  :D  9D  8D  7D  6D 5D 4D 3D 2D 1D  0D  /D  .D  -D ,D2 +D *D )D (D 'D &D %D $D #D  "D !D D D  D  D  D  D  z <2HEHeunucheunuch\h syærAs \f eunuque \cme castrated male, offical in king's court \cmf homme châtré, fonctionnaire dans le cour royal _reference_start_Daniel 1:03_reference_end_ _reference_start_Daniel 1:07_reference_end_ _reference_start_Daniel 1:08_reference_end_ _reference_start_Daniel 1:09_refere KG%%_Geternal lifeeternal life\h £Alôv yÿÿÅCyax \f vie éternel \cme live forever vs eternal shame \cmf vie éternel par opposition à honte éternel _reference_start_Daniel 12:02_reference_end_sFCFeternaleternal\h £Alôv \f éternel \cme always \cmf toujours, tout le temps _reference_star E!!UEerror (an)error (an)\h hAtyixüH \f erreur, faute \cme corrupt \cmf corrompu _reference_start_Daniel 2:09_reference_end_ t_1 Chronicles 16:15_reference_end_ \cme before the beginning of the world and after it's end \cmf avant le commencement de la terre et après sa fin _reference_start_1 Chronicles 16:36_reference_end_ _reference_start_Daniel 2:20_reference_end_ _reference_start_Daniel 3:33_reference_end_ _reference_start_Daniel 4:31_reference_end_ _reference_start_Daniel 6:27_reference_end_ _reference_start_Daniel 7:14_reference_end_ _reference_start_Daniel 7:18_reference_end_ _reference_start_Daniel 12:03_reference_end_ _reference_start_Daniel 12:07_reference_end_ _reference_start_Deuteronomy 33:27_reference_end_ _reference_start_Exodus 3:15_reference_end_ _reference_start_Exodus 15:18_reference_end_ _reference_start_Genesis 21:33_reference_end_ _reference_start_Genesis 49:26_reference_end_ _reference_start_Psalms 90:02_reference_end_ \cme before the beginning of the world til after its end \cmf avant le commencement de la terre et après sa fin _reference_start_Daniel 12:03_reference_end_ _reference_start_Exodus 15:18_r eference_end_ \cme for life \cmf pour toute la vie _reference_start_1 Samuel 1:22_reference_end_ _reference_start_1 Samuel 2:30_reference_end_ _reference_start_1 Samuel 20:23_reference_end_ _reference_start_1 Samuel 27:12_reference_end_ _reference_start_Exodus 19:09_reference_end_ _reference_start_Exodus 21:06_reference_end_ \cme going on forever \cmf pour toujours _reference_start_1 Chronicles 15:02_reference_end_ _reference_start_1 Chronicles 16:17_reference_end_ _reference_start_1 Chronicles 16:34_reference_end_ _reference_start_1 Chronicles 16:41_reference_end_ _reference_start_1 Chronicles 17:12_reference_end_ _reference_start_1 Chronicles 17:14_reference_end_ _reference_start_1 Chronicles 17:22_reference_end_ _reference_start_1 Chronicles 17:23_reference_end_ _reference_start_1 Chronicles 17:24_reference_end_ _reference_start_1 Chronicles 17:27_reference_end_ _reference_start_1 Chronicles 22:10_reference_end_ _reference_start_1 Chronicles 23:13_reference_end_ _reference_start_1 Chronicles 23:25_refe rence_end_ _reference_start_1 Chronicles 28:04_reference_end_ _reference_start_1 Chronicles 28:07_reference_end_ _reference_start_1 Chronicles 28:08_reference_end_ _reference_start_1 Chronicles 28:09_reference_end_ _reference_start_1 Chronicles 29:10_reference_end_ _reference_start_1 Chronicles 29:18_reference_end_ _reference_start_1 Kings 1:31_reference_end_ _reference_start_1 Kings 2:33_reference_end_ _reference_start_1 Kings 2:45_reference_end_ _reference_start_1 Kings 8:13_reference_end_ _reference_start_1 Kings 9:03_reference_end_ _reference_start_1 Kings 9:05_reference_end_ _reference_start_1 Kings 10:09_reference_end_ _reference_start_1 Samuel 3:13_reference_end_ _reference_start_1 Samuel 3:14_reference_end_ _reference_start_1 Samuel 10:15_reference_end_ _reference_start_1 Samuel 13:13_reference_end_ _reference_start_1 Samuel 20:42_reference_end_ _reference_start_2 Chronicles 7:03_reference_end_ _reference_start_2 Chronicles 7:06_reference_end_ _reference_start_2 Chronicles 7:16_reference_end_ _ref erence_start_2 Samuel 3:28_reference_end_ _reference_start_2 Samuel 7:13_reference_end_ _reference_start_2 Samuel 7:16_reference_end_ _reference_start_2 Samuel 7:24_reference_end_ _reference_start_2 Samuel 7:25_reference_end_ _reference_start_2 Samuel 7:26_reference_end_ _reference_start_2 Samuel 7:29_reference_end_ _reference_start_2 Samuel 12:10_reference_end_ _reference_start_2 Samuel 13:05_reference_end_ _reference_start_2 Samuel 22:51_reference_end_ _reference_start_Daniel 2:04_reference_end_ _reference_start_Daniel 2:44_reference_end_ _reference_start_Daniel 3:09_reference_end_ _reference_start_Daniel 5:10_reference_end_ _reference_start_Daniel 6:07_reference_end_ _reference_start_Daniel 6:22_reference_end_ _reference_start_Daniel 7:27_reference_end_ _reference_start_Daniel 9:24_reference_end_ _reference_start_Daniel 12:02_reference_end_ _reference_start_Deuteronomy 28:46_reference_end_ _reference_start_Exodus 12:14_reference_end_ _reference_start_Exodus 12:17_reference_end_ _reference_start_Exodus 12:24_reference_end_ _reference_start_Exodus 14:13_reference_end_ _reference_start_Exodus 27:21_reference_end_ _reference_start_Exodus 28:41_reference_end_ _reference_start_Genesis 6:03_reference_end_ _reference_start_Genesis 9:12_reference_end_ _reference_start_Genesis 9:16_reference_end_ _reference_start_Genesis 13:15_reference_end_ _reference_start_Genesis 17:07_reference_end_ _reference_start_Genesis 17:08_reference_end_ _reference_start_Genesis 17:13_reference_end_ _reference_start_Genesis 17:19_reference_end_ _reference_start_Genesis 48:04_reference_end_ _reference_start_Numbers 10:08_reference_end_ _reference_start_Proverbs 29:14_reference_end_ _reference_start_Psalms 19:10_reference_end_ _reference_start_Psalms 24:07_reference_end_ _reference_start_Psalms 24:09_reference_end_ _reference_start_Psalms 28:09_reference_end_ _reference_start_Psalms 30:07_reference_end_ _reference_start_Psalms 30:12_reference_end_ _reference_start_Psalms 61:05_reference_end_ _reference_start_Psalms 61:08_reference_end_ _reference_start_Psalms 61:09_reference_end_ _reference_start_Psalms 71:01_reference_end_ _reference_start_Psalms 110:04_reference_end_ _reference_start_Psalms 139:24_reference_end_ \cme live for ever \cmf vivre pour toujours _reference_start_Deuteronomy 32:40_reference_end_ _reference_start_Genesis 3:22_reference_end_ _reference_start_Psalms 22:26_reference_end_ \cme of past time \cmf du temps passé _reference_start_Habakkuk 3:06_reference_end_ _reference_start_Job 20:04_reference_end_ \cme of past time, of long ago \cmf de temps passé, auparavant _reference_start_1 Samuel 27:08_reference_end_ _reference_start_Deuteronomy 32:07_reference_end_ _reference_start_Genesis 6:04_reference_end_ _reference_start_Genesis 49:26_reference_end_ _reference_start_Proverbs 22:28_reference_end_ \cme starting a long time ago \cmf depuis long temps _reference_start_Ezra 4:15_reference_end_ _reference_start_Ezra 4:19_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( F F  F  F  F. F  F  F F F F F F, F F 3 F  F F  F  F  F  F  F  F  F F ~F }F * |F {F  zF  yF  xF wF  vF  uF  tF - sF ! rF  qF  pF  oF  nF  mF  lF  kF  jF  iF  hF  gF  fF  eF  dF  cF  bF ) aF " `F  _F  ^F ]F \F  [F  ZF  ?tfXJ<. wi[M?1#{m_QC5' WH( VH( UH' TH%$ SH  RH  QH PH OH NH MH LH KH JH IH HH GH FH EH DH CH BH AH @H ?H >G  =F <F ;F :F1 9F 8F  7F  6F 5F# 4F 3F 2F ( 1F 0Fn /FG .F= -F= ,F= +F *F )F (F 'F &F %F $F  #F0 "F !F F F F  F  F F F) Fnce_end_ _reference_start_Daniel 1:10_reference_end_ _reference_start_Daniel 1:11_reference_end_ _reference_start_Daniel 1:18_reference_end_ _reference_start_Esther 1:10_reference_end_ _reference_start_Esther 1:12_reference_end_ _reference_start_Esther 1:15_reference_end_ _reference_start_Esther 2:03_reference_end_ _reference_start_Esther 2:14_reference_end_ _reference_start_Esther 2:15_reference_end_ _reference_start_Esther 2:21_reference_end_ _reference_start_Esther 4:04_reference_end_ _reference_start_Esther 4:05_reference_end_ Est06.02 _reference_start_Esther 6:02_reference_end_ _reference_start_Esther 6:14_reference_end_ _reference_start_Esther 7:09_reference_end_ \cme official in king's court \cmf fonctionnaire dans le cour royal _reference_start_1 Kings 22:09_reference_end_ _reference_start_2 Kings 8:06_reference_end_ _reference_start_Genesis 37:36_reference_end_ _reference_start_Genesis 39:01_reference_end_ _reference_start_Genesis 40:02_reference_end_ _reference_start_Genesis 40:07_reference_end_Genesis 19:07_reference_end_ _reference_start_Proverbs 17:04_reference_end_ \cme injurious, do wrong \cmf nuisible, faire tor _reference_start_1 Chronicles 16:22_reference_end_ _reference_start_1 Chronicles 21:17_reference_end_ _reference_start_1 Samuel 25:34_reference_end_ _reference_start_2 Samuel 19:08_reference_end_ _reference_start_Exodus 5:22_reference_end_ _reference_start_Exodus 5:23_reference_end_ _reference_start_Genesis 19:09_reference_end_ _reference_start_Genesis 31:07_reference_end_ _reference_start_Genesis 43:06_reference_end_ _reference_start_Genesis 44:05_reference_end_ _reference_start_Numbers 11:11_reference_end_ _reference_start_Numbers 16:15_reference_end_ _reference_start_Numbers 20:15_reference_end_ _reference_start_Proverbs 11:15_reference_end_ _reference_start_Proverbs 13:20_reference_end_ _reference_start_Psalms 2:09_reference_end_ \cme sad \cmf triste _reference_start_Ecclesiastes 7:03_reference_end_ \cme wilfulness \cmf obstination _reference_start_1 Samuel 17:28_reference_end_ IgIevilevil\h vââOr \f méchanceté \cme bad quality \cmf mauvaise qualité _reference_start_Genesis 41:19_reference_end_ _reference_start_Jeremiah 24:02_reference_end_ \cme displeasing \cmf déplaisant _reference_start_Numbers 11:10_reference_end_ _reference_start_Proverbs 24:18_reference_end_ \cme distress, misery \cmf peine _reference_start_1 Kings 17:20_reference_end_ _reference_start_Ruth 1:21_reference_end_ \cme ethical badness \cmf méchanceté morale _reference_start_Deuteronomy 28:20_reference_end_ _reference_start_Psalms 28:04_reference_end_ \cme ethical evil \cmf méchanceté moral _reference_start_1 Chronicles 21:17_reference_end_ _reference_start_1 Samuel 12:25_reference_end_ _reference_start_1 Samuel 26:21_reference_end_ _reference_start_ ?tfXJ<. xj\N@2$|n`RD6( K K ' K K  K ' K  K  K  K  K  K  K  K 4 K K K K  K) K) K) K) K) K K ~K  }JA  |J  {J  zJ  yJ  xJ  wJ  vI  uI tI sI  rI  qI pI oI nI, mI+ lI kI jI iI hI  gI " fI  eI  dI cI bI  aI  `I  _I ^I ]I \I  [I ZI YI XI) gK!!Kevil, harmevil, harm\h var / hAvAr \f mal \cme displeasing, awful \cmf ne pas plaire, horrible _reference_start_1 Samuel 29:07_reference ]J##Jevil spiritevil spirit\h hAvßr Þxûr \f esprit mauvais \cme spirit that causes bad things to happen \cmf esprit qui cause de mauvaises choses _reference_start_1 Samuel 16:14_reference_end_ _reference_start_1 Samuel 16:15_reference_end_ _reference_start_1 Samuel 16:16_reference_end_ _reference_start_1 Samuel 16:23_reference_end_ _reference_start_1 Samuel 18:10_reference_end_ _reference_start_1 Samuel 19:09_reference_end_ _reference_start_Jude 9:23_reference_end_ _end_ _reference_start_Exodus 21:08_reference_end_ _reference_start_Genesis 28:08_reference_end_ _reference_start_Genesis 41:03_reference_end_ _reference_start_Genesis 41:19_reference_end_ _reference_start_Genesis 41:20_reference_end_ _reference_start_Genesis 41:21_reference_end_ _reference_start_Genesis 41:27_reference_end_ _reference_start_Numbers 11:01_reference_end_ _reference_start_Numbers 20:05_reference_end_ _reference_start_Proverbs 15:10_reference_end_ _reference_start_Proverbs 15:15_reference_end_ \cme ethical evil \cmf méchanceté moral _reference_start_1 Kings 1:52_reference_end_ _reference_start_1 Kings 3:09_reference_end_ _reference_start_1 Kings 11:06_reference_end_ _reference_start_1 Samuel 12:17_reference_end_ _reference_start_1 Samuel 14:17_reference_end_ _reference_start_1 Samuel 24:12_reference_end_ _reference_start_1 Samuel 25:21_reference_end_ _reference_start_1 Samuel 25:28_reference_end_ _reference_start_1 Samuel 25:39_reference_end_ _reference_start_1 Samuel 26:18_reference_end_ _reference_start_2 Chronicles 7:14_reference_end_ _reference_start_2 Samuel 3:39_reference_end_ _reference_start_2 Samuel 12:09_reference_end_ _reference_start_2 Samuel 12:11_reference_end_ _reference_start_2 Samuel 14:17_reference_end_ _reference_start_Daniel 11:27_reference_end_ _reference_start_Ecclesiastes 8:12_reference_end_ _reference_start_Ecclesiastes 12:14_reference_end_ _reference_start_Exodus 10:10_reference_end_ _reference_start_Genesis 2:09_reference_end_ _reference_start_Genesis 2:17_reference_end_ _reference_start_Genesis 3:05_reference_end_ _reference_start_Genesis 3:22_reference_end_ _reference_start_Genesis 6:05_reference_end_ _reference_start_Genesis 8:21_reference_end_ _reference_start_Genesis 13:13_reference_end_ _reference_start_Genesis 38:07_reference_end_ _reference_start_Genesis 39:09_reference_end_ _reference_start_Genesis 50:17_reference_end_ _reference_start_Jonah 1:02_reference_end_ _reference_start_Jonah 3:10_reference_end_ _reference_start_Numbers 14:27_reference_end_ _refer ence_start_Numbers 14:35_reference_end_ _reference_start_Proverbs 1:16_reference_end_ _reference_start_Proverbs 2:14_reference_end_ _reference_start_Proverbs 2:14_reference_end_ _reference_start_Proverbs 3:07_reference_end_ _reference_start_Proverbs 3:30_reference_end_ _reference_start_Proverbs 4:27_reference_end_ _reference_start_Proverbs 5:14_reference_end_ _reference_start_Proverbs 6:14_reference_end_ _reference_start_Proverbs 6:18_reference_end_ _reference_start_Proverbs 6:24_reference_end_ _reference_start_Proverbs 8:13_reference_end_ _reference_start_Proverbs 8:13_reference_end_ _reference_start_Proverbs 11:19_reference_end_ _reference_start_Proverbs 11:27_reference_end_ _reference_start_Proverbs 12:20_reference_end_ _reference_start_Proverbs 12:21_reference_end_ _reference_start_Proverbs 13:17_reference_end_ _reference_start_Proverbs 13:19_reference_end_ _reference_start_Proverbs 13:21_reference_end_ _reference_start_Proverbs 14:16_reference_end_ _reference_start_Proverbs 14:22_reference_end_ _refe rence_start_Proverbs 14:32_reference_end_ _reference_start_Proverbs 15:26_reference_end_ _reference_start_Proverbs 15:28_reference_end_ _reference_start_Proverbs 16:06_reference_end_ _reference_start_Proverbs 16:17_reference_end_ _reference_start_Proverbs 16:27_reference_end_ _reference_start_Proverbs 16:30_reference_end_ _reference_start_Proverbs 17:13_reference_end_ _reference_start_Proverbs 17:20_reference_end_ _reference_start_Proverbs 20:08_reference_end_ _reference_start_Proverbs 20:22_reference_end_ _reference_start_Proverbs 20:30_reference_end_ _reference_start_Proverbs 21:12_reference_end_ _reference_start_Proverbs 21:20_reference_end_ _reference_start_Proverbs 24:01_reference_end_ _reference_start_Proverbs 24:16_reference_end_ _reference_start_Proverbs 26:26_reference_end_ _reference_start_Proverbs 28:05_reference_end_ _reference_start_Proverbs 28:05_reference_end_ _reference_start_Proverbs 28:10_reference_end_ _reference_start_Proverbs 28:14_reference_end_ _reference_start_Proverbs 29:06_refere nce_end_ _reference_start_Proverbs 29:06_reference_end_ _reference_start_Psalms 28:03_reference_end_ _reference_start_Psalms 34:14_reference_end_ _reference_start_Psalms 34:15_reference_end_ _reference_start_Psalms 34:17_reference_end_ _reference_start_Psalms 34:22_reference_end_ _reference_start_Psalms 51:066_reference_end_ _reference_start_Psalms 52:03_reference_end_ _reference_start_Psalms 52:05_reference_end_ _reference_start_Psalms 52:05_reference_end_ \cme injury, wrong \cmf tor, malheur _reference_start_1 Kings 2:44_reference_end_ _reference_start_1 Kings 11:25_reference_end_ _reference_start_1 Samuel 2:23_reference_end_ _reference_start_1 Samuel 6:09_reference_end_ _reference_start_1 Samuel 12:19_reference_end_ _reference_start_1 Samuel 12:20_reference_end_ _reference_start_1 Samuel 13:22_reference_end_ _reference_start_1 Samuel 15:19_reference_end_ _reference_start_1 Samuel 20:07_reference_end_ _reference_start_1 Samuel 20:09_reference_end_ _reference_start_1 Samuel 20:13_reference_end_ _referenc e_start_1 Samuel 23:09_reference_end_ _reference_start_1 Samuel 24:10_reference_end_ _reference_start_1 Samuel 24:18_reference_end_ _reference_start_1 Samuel 25:17_reference_end_ _reference_start_1 Samuel 25:26_reference_end_ _reference_start_1 Samuel 29:06_reference_end_ _reference_start_2 Samuel 12:18_reference_end_ _reference_start_2 Samuel 13:16_reference_end_ _reference_start_2 Samuel 15:14_reference_end_ _reference_start_2 Samuel 16:08_reference_end_ _reference_start_2 Samuel 18:32_reference_end_ _reference_start_Daniel 9:12_reference_end_ _reference_start_Daniel 9:13_reference_end_ _reference_start_Daniel 9:14_reference_end_ _reference_start_Ecclesiastes 5:12_reference_end_ _reference_start_Ecclesiastes 10:05_reference_end_ _reference_start_Esther 8:03_reference_end_ _reference_start_Esther 9:02_reference_end_ _reference_start_Esther 9:25_reference_end_ _reference_start_Genesis 24:50_reference_end_ _reference_start_Genesis 26:29_reference_end_ _reference_start_Genesis 31:24_reference_end_ _referenc e_start_Genesis 31:29_reference_end_ _reference_start_Genesis 31:52_reference_end_ _reference_start_Genesis 37:02_reference_end_ _reference_start_Genesis 37:02_reference_end_ _reference_start_Genesis 37:20_reference_end_ _reference_start_Genesis 37:33_reference_end_ _reference_start_Genesis 44:04_reference_end_ _reference_start_Genesis 50:15_reference_end_ _reference_start_Genesis 50:20_reference_end_ _reference_start_Jude 15:03_reference_end_ _reference_start_Numbers 14:37_reference_end_ _reference_start_Proverbs 1:16_reference_end_ _reference_start_Proverbs 3:29_reference_end_ _reference_start_Proverbs 6:14_reference_end_ _reference_start_Proverbs 11:15_reference_end_ _reference_start_Proverbs 12:20_reference_end_ _reference_start_Proverbs 14:22_reference_end_ _reference_start_Proverbs 17:11_reference_end_ _reference_start_Proverbs 20:22_reference_end_ _reference_start_Proverbs 21:10_reference_end_ _reference_start_Proverbs 21:12_reference_end_ _reference_start_Proverbs 31:12_reference_end_ _reference_s tart_Psalms 56:06_reference_end_ _reference_start_Psalms 71:13_reference_end_ _reference_start_Psalms 71:24_reference_end_ \cme misery, distress, punishement \cmf misère, détresse, punition _reference_start_1 Chronicles 21:15_reference_end_ _reference_start_1 Kings 5:18_reference_end_ _reference_start_1 Kings 9:09_reference_end_ _reference_start_1 Kings 21:29_reference_end_ _reference_start_1 Samuel 10:19_reference_end_ _reference_start_1 Samuel 16:14_reference_end_ _reference_start_1 Samuel 16:15_reference_end_ _reference_start_1 Samuel 16:16_reference_end_ _reference_start_1 Samuel 16:23_reference_end_ _reference_start_1 Samuel 19:09_reference_end_ _reference_start_2 Chronicles 7:22_reference_end_ _reference_start_2 Samuel 17:14_reference_end_ _reference_start_2 Samuel 19:08_reference_end_ _reference_start_2 Samuel 24:16_reference_end_ _reference_start_Deuteronomy 28:35_reference_end_ _reference_start_Deuteronomy 28:59_reference_end_ _reference_start_Ecclesiastes 1:13_reference_end_ _reference_start_E cclesiastes 5:15_reference_end_ _reference_start_Ecclesiastes 12:01_reference_end_ _reference_start_Esther 7:07_reference_end_ _reference_start_Esther 8:06_reference_end_ _reference_start_Exodus 5:19_reference_end_ _reference_start_Exodus 5:19_reference_end_ _reference_start_Genesis 19:19_reference_end_ _reference_start_Genesis 40:07_reference_end_ _reference_start_Genesis 44:29_reference_end_ _reference_start_Genesis 44:31_reference_end_ _reference_start_Genesis 44:34_reference_end_ _reference_start_Genesis 47:09_reference_end_ _reference_start_Genesis 48:16_reference_end_ _reference_start_Genesis 48:16_reference_end_ _reference_start_Jonah 1:07_reference_end_ _reference_start_Jonah 1:08_reference_end_ _reference_start_Jonah 3:10_reference_end_ _reference_start_Jonah 4:02_reference_end_ _reference_start_Numbers 11:15_reference_end_ _reference_start_Proverbs 1:33_reference_end_ _reference_start_Proverbs 11:15_reference_end_ _reference_start_Proverbs 12:21_reference_end_ _reference_start_Proverbs 13:17_ref erence_end_ _reference_start_Proverbs 15:14_reference_end_ _reference_start_Proverbs 16:04_reference_end_ _reference_start_Proverbs 19:23_reference_end_ _reference_start_Proverbs 22:03_reference_end_ _reference_start_Proverbs 25:20_reference_end_ _reference_start_Proverbs 27:12_reference_end_ _reference_start_Proverbs 31:12_reference_end_ _reference_start_Psalms 0:_reference_end_ _reference_start_Psalms 23:04_reference_end_ _reference_start_Psalms 23:04_reference_end_ _reference_start_Psalms 34:20_reference_end_ _reference_start_Psalms 49:06_reference_end_ _reference_start_Psalms 54:07_reference_end_ _reference_start_Psalms 71:20_reference_end_ _reference_start_Psalms 90:15_reference_end_ _reference_start_Psalms 94:13_reference_end_ _reference_start_Psalms 121:01_reference_end_ _reference_start_Psalms 140:12_reference_end_ _reference_start_Psalms 144:10_reference_end_ \cme of low value \cmf pas de valeur _reference_start_Leviticus 2710:1_reference_end_ _reference_start_Malachi 1:08_reference_end_ _reference_start_Proverbs 20:14_reference_end_ \cme one who does wrong \cmf celui qui fait du mal _reference_start_1 Samuel 25:03_reference_end_ _reference_start_1 Samuel 30:22_reference_end_ _reference_start_Esther 7:06_reference_end_ _reference_start_Proverbs 2:12_reference_end_ _reference_start_Proverbs 2:14_reference_end_ _reference_start_Proverbs 4:14_reference_end_ _reference_start_Proverbs 11:21_reference_end_ _reference_start_Proverbs 12:12_reference_end_ _reference_start_Proverbs 12:13_reference_end_ _reference_start_Proverbs 14:19_reference_end_ _reference_start_Proverbs 14:19_reference_end_ _reference_start_Proverbs 15:03_reference_end_ _reference_start_Proverbs 15:26_reference_end_ _reference_start_Proverbs 15:28_reference_end_ _reference_start_Proverbs 17:11_reference_end_ _reference_start_Proverbs 24:20_reference_end_ \cme unkind, vicious \cmf méchant, haineux _reference_start_Proverbs 23:06_reference_end_ _reference_start_Proverbs 26:23_reference_end_ _reference_start_Proverbs 28:22_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( UK TK SK RK QK PK OK NK MK LK KK JK IK HK GK FK EK DK CK BK AK @K ?K >K =K  <K  ;K  :K  9K  8K  7K  6K 5K 4K 3K 2K 1K 0K /K .K -K ,K +K *K# )K (K  'K  &K2 %K' $K& #K "K !K K K K K K K  K K  K  K ?tfXJ<. xj\N@2$|n`RD6( K K K K K  K  K K K K% KA K2 K2 K, K%! K% K% K% K4 K K K ~K2 }K  |K  {K zK  yK xK  wK vK uK  tK  sK  rK  qK  pK  oK  nK  mK  lK  kK  jK  iK  hK  gK  fK  eK  dK  cK  bK  aK  `K , _K4 ^K4 ]K4 \K3B [K" ZK" YK" XK" WK VK ?tfXJ<. xj\N@2$|n`RD6( SK RKy QK^ PKZ OKG NK6 MK1 LK" KK JK IK HK GK FK EK DK CK BK AK  @K  ?K  >K! =K  <K  ;K  :K  9K  8K0 7K0 6K/ 5K," 4K, 3K, 2K( 1K 0K /K .K -K ,K  +K *K )K; (K# 'K  &K  %K  $K #K  "K  !K  K  K  K  K  K K  K  KG KG K8 K K ?rdVH:,vhZL>0"zl^PB4& N  N  N  N# N  M M M" Mn M" M M M0 M M $ M M 1 M  M  M  ~M  }M  |M  {M  zMc yM9 xM9 wM%" vM" uM tM sM / rM  qM pM oL nL/ mL lL kL jK iK hK gK fK eK dK cK bK aK `K _K ^K  ]K \K [K ZK YK  XK  WK VK' UK  TK JJ2LILexaltexalt\h hA'ÃFg \f exalter \cme God's saving power \cmf le pouvoir de Dieu de salut _reference_start_Exodus 15:01_reference_end_ _reference_start_Exodus 15:21_reference_end_ \cme grow (plant) \cmf pousser (plante) _reference_start_Job 8:11_reference_end_ \cme increase (water) \cmf être en hausse (l'eau) _reference_start_Ezra 47:05_reference_end_ \cme proud \cmf orgueil _reference_start_Proverbs 29:23_reference_end_d_ \cme give or have pride, glory \cmf donner ou avoir orgueil, gloire _reference_start_1 Chronicles 25:05_reference_end_ _reference_start_1 Kings 14:07_reference_end_ _reference_start_1 Kings 16:02_reference_end_ _reference_start_1 Samuel 2:07_reference_end_ _reference_start_1 Samuel 2:08_reference_end_ _reference_start_1 Samuel 2:10_reference_end_ _reference_start_2 Samuel 22:28_reference_end_ _reference_start_2 Samuel 22:49_reference_end_ _reference_start_Daniel 11:12_reference_end_ _reference_start_Daniel 11:36_reference_end_ _reference_start_Isaiah 10:12_reference_end_ _reference_start_Jeremiah 48:29_reference_end_ _reference_start_Proverbs 11:11_reference_end_ _reference_start_Proverbs 14:29_reference_end_ _reference_start_Proverbs 14:34_reference_end_ _reference_start_Psalms 110:07_reference_end_ \cme praise, exalt \cmf exalter _reference_start_Daniel 4:34_reference_end_ _reference_start_Daniel 5:19_reference_end_ \cme swear an oath \cmf prêter serment _reference_start_Genesis 14:22_reference_end_ zzzM!!EMexalt (to)exalt (to)\h £Cwr \f exalter \cme be presuptuous \cmf être présomptueux _reference_start_Daniel 5:20_reference_end_ _reference_start_Daniel 5:23_reference_end_ \cme exalt, worship God \cmf exalter, adorer Dieu _reference_start_1 Samuel 2:01_reference_end_ _reference_start_2 Samuel 22:47_reference_end_ _reference_start_Exodus 15:02_reference_end_ _reference_start_Psalms 30:02_reference_end_ _reference_start_Psalms 34:04_reference_end_ _reference_start_Psalms 37:34_reference_end_ _reference_start_Psalms 57:06_reference_end_ _reference_start_Psalms 57:12_reference_end_ _reference_start_Psalms 99:05_reference_en OO-N3Nfaithfulfaithful\h hÃnûmé' \f fidèle \cme faithful, moral living \cmf vie fidèle et morale _reference_start_1 Samuel 26:23_reference_end_ _reference_start_Habakkuk 2:04_reference_end_ _reference_start_Proverbs 12:22_reference_end_ \cme faithfulness and mercy (of God) \cmf fidélité, miséricorde (de Dieu) _reference_start_2 Kings 22:07_reference_end_ _reference_start_Deuteronomy 32:04_reference_end_ _reference_start_Lamentations 3:23_reference_end_ _reference_start_Psalms 89:1_reference_end_ \cme trustworthy of responsibility, honest \cmf fidélité dans la responsabilité, honête _reference_start_1 Chronicles 9:22_reference_end_ _reference_start_1 Chronicles 9:26_reference_end_ _reference_start_1 Chronicles 9:31_reference_end_ _reference_start_2 Kings 22:07_reference_end_ _reference_start_Proverbs 14:05_reference_end_ _reference_start_Proverbs 27:06_reference_end_ _reference_start_Proverbs 28:20_reference_end_ ?tfXJ<. xj\N@2$|n`RC5' QP% PP  OP# NP  MP  LP  KP  JP  IP HPwV GPd FPX EP  DP CPV BPG AP= @P9 ?P9 >P6 =P <P0 ;P :P" 9P  8P  7P  6P  5P3 4P 3P 2P  1P 0P/ /P* .P1 -P ,P  +P  *P  )P  (P 'P* &P %P  $P  #P "P  !P  P  P  O O- O N N N N  N  N  N  NY N \\ Q%%_QFather (the)father (the)\h bA' \f Père \cme God as father of his people \cmf Dieu comme père de son peuple _reference_start_2 Samuel 7:14_reference_end_ _reference_start_Deuteronomy 32:06_reference_end_ _reference_start_Isaiah 63:16_reference_end_ _reference_start_Jeremiah 3:04_reference_end_ _reference_start_Psalms 68:05_reference_end_ _reference_start_Psalms 89:27_reference_end_PP%%iPfaithfulnessfaithfulness\h temé' \f fidélité \cme be true \cmf être vrai _reference_start_1 Kings 10:06_reference_end_ _reference_start_1 Kings 17:24_reference_end_ _reference_start_1 Kings 22:16_referenc -O--Ofaithful (to be)faithful (to be)\h €amÏ' \f être fidèle \cme believe in, trust \cmf avoir confiance en, croire en _reference_start_Daniel 6:24_reference_end_ \cme trustworthy \cmf digne de confiance _reference_start_Daniel 2:45_reference_end_ _reference_start_Daniel 6:05_reference_end_ e_end_ _reference_start_2 Samuel 7:28_reference_end_ _reference_start_Daniel 8:26_reference_end_ _reference_start_Daniel 10:01_reference_end_ _reference_start_Daniel 11:02_reference_end_ _reference_start_Ecclesiastes 12:10_reference_end_ _reference_start_Genesis 42:16_reference_end_ _reference_start_Psalms 19:10_reference_end_ \cme being honest, faithful \cmf tenir parole, être fidèle _reference_start_1 Kings 2:04_reference_end_ _reference_start_1 Samuel 12:24_reference_end_ _reference_start_2 Samuel 15:20_reference_end_ _reference_start_Esther 9:30_reference_end_ _reference_start_Exodus 18:21_reference_end_ _reference_start_Genesis 24:49_reference_end_ _reference_start_Genesis 42:16_reference_end_ _reference_start_Genesis 47:29_reference_end_ _reference_start_Proverbs 3:03_reference_end_ _reference_start_Proverbs 11:18_reference_end_ _reference_start_Proverbs 16:06_reference_end_ _reference_start_Proverbs 29:14_reference_end_ _reference_start_Psalms 51:08_reference_end_ \cme faithfulness and mercy (of God) \cmf fidélité, miséricorde (de Dieu) _reference_start_1 Kings 3:06_reference_end_ _reference_start_1 Samuel 12:24_reference_end_ _reference_start_2 Kings 20:03_reference_end_ _reference_start_2 Samuel 2:06_reference_end_ _reference_start_Exodus 34:06_reference_end_ _reference_start_Genesis 24:27_reference_end_ _reference_start_Genesis 24:48_reference_end_ _reference_start_Genesis 32:11_reference_end_ _reference_start_Psalms 54:07_reference_end_ _reference_start_Psalms 57:04_reference_end_ _reference_start_Psalms 57:11_reference_end_ _reference_start_Psalms 61:08_reference_end_ _reference_start_Psalms 71:22_reference_end_ _reference_start_Psalms 86:15_reference_end_ _reference_start_Psalms 138:02_reference_end_ \cme faithfulness of God \cmf fidélité de Dieu _reference_start_Deuteronomy 32:04_reference_end_ _reference_start_Psalms 88:12_reference_end_ _reference_start_Psalms 100:05_reference_end_ _reference_start_Psalms 119:086_reference_end_ _reference_start_Psalms 143:01_reference_end_ \cme faithfulness, trustworthiness of a person \cmf fidélité d'une personne _reference_start_1 Chronicles 9:22_reference_end_ _reference_start_1 Chronicles 9:26_reference_end_ _reference_start_1 Chronicles 9:31_reference_end_ _reference_start_1 Samuel 26:23_reference_end_ _reference_start_2 Kings 12:16_reference_end_ _reference_start_Habakkuk 2:04_reference_end_ _reference_start_Proverbs 12:22_reference_end_ _reference_start_Psalms 37:03_reference_end_ \cme steady, firm \cmf ferme _reference_start_Exodus 17:12_reference_end_ \cme truely, surely \cmf véritablement, vraiment _reference_start_Psalms 132:11_reference_end_ _reference_start_Psalms 145:18_reference_end_ \cme trustworthy, reliable, base life on \cmf veritable, baser la vie sur qqch _reference_start_Daniel 8:12_reference_end_ _reference_start_Daniel 9:13_reference_end_ _reference_start_Psalms 119:043_reference_end_ _reference_start_Psalms 119:142_reference_end_ _reference_start_Psalms 119:151_reference_end_ _reference_start_Psalms 119:160_reference_end_ ?}oaSE7) seWI;-wi[M?1# U U  U U" U U: U U  U  TZ T7 T" T T T T T T ~T! }T |T {T zT  yT xT wT vT uT tT  sT rT qT  pS= oS< nS" mS" lS kS  jS* iS hS gS  fS eS dS cS  bR5 aR* `QY _QD ^Q ]Q? \Q  [Q  ZPw YPw XPw WPw+ VP UP TP SP RP //lS!!)Sfear (adj)fear (adj)\h 'eray. \f craindre \cme worship, awe of God \cmf adoration, respet de Dieu _reference_start_1 Kings 18:03_reference_end_ _reference_start_Daniel 1:10_reference_end_ _reference_start_Ecclesiastes 8:12_reference_end_ _reference_start_Ecclesiastes 8:13_reference_end_ _reference_start_Exodus 9:20_reference_end_ _reference_start_Exodus 18:21_reference_end_ _reference_start_Genesis 22:12_reference_end_ _reference_start_Genesis 42:18_reference_end_ _reference_start_Jonah 1:09_reference_end_ _reference_start_Proverbs 14:16_reference_end_ _reference_start_Psalms 34:08_reference_end_ _reference_start_Psalms 34:10_reference_end_ _reference_start_Psalms 60:06_reference_end_ _reference_start_Psalms 61:06_reference_end_]R''RFear of Isaacfear of isaac\h ÿÿqAxücÇy daxLap \f Dieu (le Peur d'Issac) \cme the Fear of Isaac \cmf le Peur d'Issac _reference_start_Genesis 31:42_reference_end_ _reference_start_Genesis 31:53_reference_end_ence_end_ _reference_start_Exodus 20:20_reference_end_ _reference_start_Genesis 20:11_reference_end_ _reference_start_Jonah 1:16_reference_end_ _reference_start_Proverbs 1:07_reference_end_ _reference_start_Proverbs 1:29_reference_end_ _reference_start_Proverbs 2:05_reference_end_ _reference_start_Proverbs 8:13_reference_end_ _reference_start_Proverbs 9:10_reference_end_ _reference_start_Proverbs 10:27_reference_end_ _reference_start_Proverbs 14:26_reference_end_ _reference_start_Proverbs 14:27_reference_end_ _reference_start_Proverbs 15:16_reference_end_ _reference_start_Proverbs 15:33_reference_end_ _reference_start_Proverbs 16:06_reference_end_ _reference_start_Proverbs 19:23_reference_end_ _reference_start_Proverbs 22:04_reference_end_ _reference_start_Proverbs 23:17_reference_end_ _reference_start_Psalms 2:11_reference_end_ _reference_start_Psalms 19:10_reference_end_ _reference_start_Psalms 34:12_reference_end_ _reference_start_Psalms 55:06_reference_end_ _reference_start_Psalms 90:11_reference_end_ chScWWfoolishfoolish\h lyÇwé' \f stupide \cme one who despises widsom and is morally bad \cmf qqn }VcVfoolfool\h lyisüÐk \f insensé \cme stupid person, fool \cmf peronne simple, un insensé _reference_start_Proverbs 1:22_reference_end_ _reference_start_Proverbs 10:23_reference_end_ _reference_start_Proverbs 12:23_reference_end_ _reference_start_Proverbs 15:02_reference_end_ _reference_start_Proverbs 15:14_reference_end_ _reference_start_Proverbs 18:02_reference_end_U_Ufear (to)fear (to)\h 'eray. \f craindre \cme awe inspiring \cmf qui inspire crainte _reference_start_1 Chronicles 17:21_reference_end_ _reference_start_2 Samuel 7:23_reference_end_ _reference_start_Daniel 7:04_reference_end_ _reference_start_Deuteronomy 28:58 TqTfear (n)fear (n)\h hA'èrÇy \f crainte \cme worship, awe of God \cmf crainte, adoration de Dieu _reference_start_2 Samuel 23:03_refer _reference_end_ _reference_start_Exodus 15:11_reference_end_ _reference_start_Exodus 34:10_reference_end_ _reference_start_Psalms 139:14_reference_end_ \cme respect, honor \cmf respecter, honorer _reference_start_1 Kings 3:28_reference_end_ _reference_start_Joshua 4:14_reference_end_ _reference_start_Leviticus 19:03_reference_end_ _reference_start_Proverbs 13:13_reference_end_ _reference_start_Proverbs 24:21_reference_end_ \cme terror of presence of God \cmf terreur de la présence de Dieu _reference_start_1 Samuel 12:20_reference_end_ _reference_start_2 Samuel 6:09_reference_end_ _reference_start_Daniel 9:04_reference_end_ _reference_start_Exodus 3:06_reference_end_ _reference_start_Exodus 20:20_reference_end_ _reference_start_Exodus 34:30_reference_end_ _reference_start_Genesis 3:10_reference_end_ _reference_start_Genesis 20:08_reference_end_ \cme worship God (or gods) in awe & obey him \cmf adorer Dieu (or dieux) en ayant peur et l'obeir _reference_start_1 Chronicles 16:25_reference_end_ _reference_start_1 Kings 8:40_reference_end_ _reference_start_1 Kings 8:43_reference_end_ _reference_start_1 Samuel 12:14_reference_end_ _reference_start_1 Samuel 12:18_reference_end_ _reference_start_1 Samuel 12:24_reference_end_ _reference_start_Deuteronomy 10:12_reference_end_ _reference_start_Deuteronomy 28:58_reference_end_ _reference_start_Ecclesiastes 3:14_reference_end_ _reference_start_Ecclesiastes 8:12_reference_end_ _reference_start_Ecclesiastes 12:13_reference_end_ _reference_start_Exodus 1:17_reference_end_ _reference_start_Exodus 1:21_reference_end_ _reference_start_Exodus 9:30_reference_end_ _reference_start_Exodus 14:31_reference_end_ _reference_start_Leviticus 25:17_reference_end_ _reference_start_Leviticus 25:36_reference_end_ _reference_start_Leviticus 25:43_reference_end_ _reference_start_Proverbs 3:07_reference_end_ _reference_start_Proverbs 14:02_reference_end_ _reference_start_Proverbs 24:21_reference_end_ _reference_start_Proverbs 31:30_reference_end_ _reference_start_Psalms 52:08_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( OY NY+ MX LX KW JW IW HW GW FW EW DW CW BW AW  @W  ?W  >W  =W  <W ;W  :W 9W 8V 7V 6V 5V  4V  3V 2U4 1U 0U /U .U -U+ ,U$ +U *U )U  (U 'U &U %U $U #U: "U !U  U  U  U + U ( U  U U U" U U U  U  U  U U U qui dédaigne la sagesse et qui est mal moralement _reference_start_Proverbs 1:07_reference_end_ _reference_start_Proverbs 7:22_reference_end_ _reference_start_Proverbs 10:08_reference_end_ _reference_start_Proverbs 10:10_reference_end_ _reference_start_Proverbs 10:14_reference_end_ _reference_start_Proverbs 10:21_reference_end_ _reference_start_Proverbs 11:29_reference_end_ _reference_start_Proverbs 12:15_reference_end_ _reference_start_Proverbs 12:16_reference_end_ _reference_start_Proverbs 14:09_reference_end_ _reference_start_Proverbs 14:09_reference_end_ _reference_start_Proverbs 15:05_reference_end_ _reference_start_Proverbs 16:22_reference_end_ _reference_start_Proverbs 17:28_reference_end_ _reference_start_Proverbs 20:03_reference_end_ _reference_start_Proverbs 24:07_reference_end_ _reference_start_Proverbs 27:03_reference_end_ _reference_start_Proverbs 27:22_reference_end_ _reference_start_Proverbs 29:09_reference_end_ TTAZ%%KZforgive (to)forgive (to)\h rapAÐk \f pardonner \cme appease, pacify \cmf apaisir _reference_ 'Y--Yforgive sin (to)forgive sin (to)\h 'üXEx/€OwAv 'AWAn \f pardonner péché \cme bear punishement \cmf subir punition _reference_start_Exodus 28:43_reference_end_ _reference_start_Leviticus 5:01_reference_end_ _reference_start_Leviticus 5:17_reference_end_ _reference_start_Leviticus 7:18_reference_end_ _reference_start_Leviticus 17:16_reference_end_ _reference_start_Leviticus 19:08_reference_end_ _reference_start_Numbers 5:31_reference_end_ _reference_start_Numbers 18:01_reference_end_ _reference_start_Numbers 18:23_reference_end_ \cme X''QXfool, foolishfool, foolish\h lakAs \f \cme lack of ethical and religious wisdom, not fear God \cmf manque de sagesse morale et religieuse, cpas caindre Dieu _reference_start_Ecclesiastes 2:19_reference_end_ _reference_start_Genesis 31:28_reference_end_God removes sin \cmf Deiu enlève péché _reference_start_Exodus 34:07_reference_end_ _reference_start_Ezekiel 49:1_reference_end_ _reference_start_Hosea 14:03_reference_end_ _reference_start_Isaiah 33:24_reference_end_ _reference_start_Isaiah 53:12_reference_end_ _reference_start_Leviticus 19:17_reference_end_ _reference_start_Leviticus 20:20_reference_end_ _reference_start_Leviticus 22:09_reference_end_ _reference_start_Leviticus 4:15_reference_end_ _reference_start_Micah 7:18_reference_end_ _reference_start_Numbers 9:13_reference_end_ _reference_start_Numbers 14:18_reference_end_ _reference_start_Numbers 18:22_reference_end_ _reference_start_Numbers 18:32_reference_end_ _reference_start_Psalms 32:05_reference_end_ _reference_start_Psalms 85:03_reference_end_ \cme person forgives sin \cmf une personne pardonne le péché _reference_start_1 Samuel 15:25_reference_end_ _reference_start_1 Samuel 25:28_reference_end_ _reference_start_Exodus 10:17_reference_end_ _reference_start_Genesis 50:17_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( Z Zm Z3 Z3 Z% Z Z, Z+ Z Z" Z  Z Z 2 Z ' Z $ Z $ ~Z " }Z " |Z  {Z zZ yZ xZ wZ vZ uZ tZ" sZ rZ  qZ pZ oZ nZ mZ lZ/ kZ  jY2 iY  hY  gY  fYU eY  dY cY bY aY `Y! _Y ^Y ]Y \Y [Y5 ZY! YY XY1 WY" VY UY TY SY RY QY PY start_Genesis 32:21_reference_end_ _reference_start_Isaiah 47:11_reference_end_ _reference_start_Proverbs 16:14_reference_end_ \cme destroy, remove \cmf detruire, enlever _reference_start_Exodus 17:14_reference_end_ _reference_start_Genesis 6:07_reference_end_ _reference_start_Genesis 7:04_reference_end_ _reference_start_Genesis 7:23_reference_end_ \cme God forgives sin & doesn't punish \cmf Dieu pardonne le péché et ne puni pas _reference_start_2 Kings 24:04_reference_end_ _reference_start_Amos 7:02_reference_end_ _reference_start_Jeremiah 31:34_reference_end_ \cme God removes from guilt of unintentional sin \cmf Dieu enlève culpabilité des péchés non-exprés _reference_start_Leviticus 5:10_reference_end_ _reference_start_Leviticus 5:13_reference_end_ _reference_start_Leviticus 5:16_reference_end_ _reference_start_Leviticus 5:18_reference_end_ _reference_start_Leviticus 5:26_reference_end_ _reference_start_Numbers 14:19_reference_end_ _reference_start_Numbers 14:20_reference_end_ \cme God removes g uilt (and gives life and blessing) \cmf Dieu enlève culpabilité (et donne la vie et bénédiction) _reference_start_1 Kings 8:30_reference_end_ _reference_start_1 Kings 8:34_reference_end_ _reference_start_1 Kings 8:34_reference_end_ _reference_start_1 Kings 8:36_reference_end_ _reference_start_1 Kings 8:36_reference_end_ _reference_start_1 Kings 8:39_reference_end_ _reference_start_1 Kings 8:50_reference_end_ _reference_start_2 Chronicles 7:14_reference_end_ _reference_start_Daniel 9:19_reference_end_ _reference_start_Exodus 34:09_reference_end_ _reference_start_Psalms 25:11_reference_end_ \cme God wipes away, removes sin \cmf Dieu enléve le péch _reference_start_Isaiah 43:25_reference_end_ _reference_start_Isaiah 44:22_reference_end_ _reference_start_Jeremiah 18:23_reference_end_ _reference_start_Nehemiah 3:37_reference_end_ _reference_start_Psalms 51:03_reference_end_ _reference_start_Psalms 51:11_reference_end_ _reference_start_Psalms 109:14_reference_end_ \cme ransom, payment for a life \cmf ranon, payment pour une vie _reference_start_Exodus 21:30_reference_end_ _reference_start_Exodus 30:12_reference_end_ _reference_start_Exodus 30:15_reference_end_ _reference_start_Exodus 30:16_reference_end_ \cme take away guilt, pay for sin \cmf enlever responsabilité, payer pour le péché _reference_start_1 Chronicles 6:34_reference_end_ _reference_start_1 Samuel 3:14_reference_end_ _reference_start_2 Samuel 21:03_reference_end_ _reference_start_Daniel 9:24_reference_end_ _reference_start_Deuteronomy 21:08_reference_end_ _reference_start_Exodus 29:33_reference_end_ _reference_start_Isaiah 22:14_reference_end_ _reference_start_Leviticus 4:07_reference_end_ _reference_start_Leviticus 5:06_reference_end_ _reference_start_Leviticus 5:10_reference_end_ _reference_start_Leviticus 5:13_reference_end_ _reference_start_Leviticus 5:16_reference_end_ _reference_start_Leviticus 5:18_reference_end_ _reference_start_Leviticus 5:26_reference_end_ _reference_start_Proverbs 16:06_reference_end_ ?tfXJ<. wi[M?1#zl^PB4& M^ L^ K^ J^ I^ H^ G^( F^ E^ ' D^  C^  B^  A^  @^ ?^ >^ =^ <^  ;] :]] 9]L 8] 7] 6] 5] 4] 3]  2] 1] 0\ /\ .\ -\! ,\ +\% *\ )\ (\" '\ &\ %\! $\ #[ "[  ![ Z Z Z Z Z Z Z Z Z Z! Z Z  Z  Z  Z " Z Z Z 5[##7[forgivenessforgiveness\h hAxyilüs \f pardon \cme God removes guilt (and gives life and blessing) \cmf Dieu enlève culpabilité (et donne la vie et bénédiction) _reference_start_Daniel 9:09_reference_end_ _reference_start_Nehemiah 9:17_reference_end_ _reference_start_Psalms 130:04_reference_end_ >\%%E\glorify (to)glorify (to)\h rÕdéh \f glorifier \cme glorify a person \cmf glorifier une personne _reference_start_Daniel 4:27_reference_end_ _reference_start_Daniel 4:33_reference_end_ _reference_start_Daniel 5:18_reference_end_ \cme glorify God \cmf glorifier Dieu _reference_start_Daniel 4:31_reference_end_ _reference_start_Daniel 4:34_reference_end_ _reference_start_Daniel 5:23_reference_end_ \cme honor, greatness given by greater to lesser \cmf honeur, grandeur donner par qqn supérieur à un inférieur _reference_start_Daniel 2:06_reference_end_ _reference_start_Daniel 2:37_reference_end_ _reference_start_Daniel 4:27_reference_end_ _reference_start_Daniel 4:33_reference_end_ _reference_start_Daniel 5:18_reference_end_ _reference_start_Daniel 5:20_reference_end_ _reference_start_Daniel 7:14_reference_end_ xx]a]gloriousglorious\h radA' \f magnifique \cme glorious, majestic \cmf glorieux, majestique _reference_start_Exodus 15:06_reference_end_ _reference_start_Exodus 15:11_reference_end_ \cme majestic, awsome \cmf majestueux, impressionant _reference_start_1 Samuel 4:08_reference_end_ _reference_start_Exodus 15:10_reference_end_ _reference_start_Psalms 8:02_reference_end_ _reference_start_Psalms 8:10_reference_end_ _reference_start_Psalms 8:2_reference_end_ _reference_start_Psalms 16:03_reference_end_ _reference_start_Psalms 76:05_reference_end_ _reference_start_Psalms 93:04_reference_end_ _reference_start_Psalms 136:18_reference_end_ t_Proverbs 25:27_reference_end_ _reference_start_Proverbs 29:23_reference_end_ _reference_start_Psalms 3:04_reference_end_ _reference_start_Psalms 8:06_reference_end_ \cme honor, reverence to God \cmf honor, révérance à Dieu _reference_start_1 Chronicles 16:24_reference_end_ _reference_start_1 Chronicles 16:28_reference_end_ _reference_start_1 Chronicles 16:29_reference_end_ _reference_start_1 Samuel 6:05_reference_end_ _reference_start_Joshua 7:19_reference_end_ _reference_start_Proverbs 25:02_reference_end_ _reference_start_Psalms 19:02_reference_end_ _reference_start_Psalms 24:07_reference_end_ _reference_start_Psalms 24:08_reference_end_ _reference_start_Psalms 24:09_reference_end_ _reference_start_Psalms 24:10_reference_end_ _reference_start_Psalms 57:06_reference_end_ _reference_start_Psalms 57:09_reference_end_ _reference_start_Psalms 57:12_reference_end_ _reference_start_Psalms 63:03_reference_end_ _reference_start_Psalms 138:05_reference_end_ \cme metonomy for person \cmf métonomie pour une personne _reference_start_Genesis 49:06_reference_end_ _reference_start_Psalms 30:13_reference_end_ \cme physical evidence of God's presence \cmf evidence physique du présence de Dieu _reference_start_1 Kings 8:11_reference_end_ _reference_start_1 Samuel 4:21_reference_end_ _reference_start_1 Samuel 4:22_reference_end_ _reference_start_2 Chronicles 7:01_reference_end_ _reference_start_2 Chronicles 7:02_reference_end_ _reference_start_2 Chronicles 7:03_reference_end_ _reference_start_Exodus 16:07_reference_end_ _reference_start_Exodus 16:10_reference_end_ _reference_start_Exodus 24:16_reference_end_ _reference_start_Exodus 24:17_reference_end_ _reference_start_Numbers 14:10_reference_end_ _reference_start_Numbers 14:21_reference_end_ _reference_start_Numbers 14:22_reference_end_ _reference_start_Numbers 20:06_reference_end_ \cme possessions, fortune \cmf posessions, fortune _reference_start_Genesis 31:01_reference_end_ _reference_start_Genesis 45:13_reference_end_ _reference_start_Nahum 2:10_reference_end_ 00@^e^gloryglory\h dÿObAÐk / dôbAÐk \f gloire \cme glory of kings and kingdoms \cmf gloire de rois et des royaumes _reference_start_1 Kings 3:13_reference_end_ _reference_start_Esther 1:04_reference_end_ _reference_start_Esther 5:11_reference_end_ _reference_start_Isaiah 22:24_reference_end_ _reference_start_Psalms 21:06_reference_end_ \cme honor to a person in a high position \cmf honorer une personne en haute position _reference_start_1 Chronicles 17:18_reference_end_ _reference_start_1 Chronicles 29:12_reference_end_ _reference_start_1 Chronicles 29:28_reference_end_ _reference_start_1 Samuel 2:08_reference_end_ _reference_start_Daniel 11:39_reference_end_ _reference_start_Exodus 28:02_reference_end_ _reference_start_Exodus 28:40_reference_end_ _reference_start_Proverbs 3:16_reference_end_ _reference_start_Proverbs 20:03_reference_end_ _reference_start_Proverbs 22:04_reference_end_ _reference_start_Proverbs 25:02_reference_end_ _reference_star ?tfXJ<. wi[M?1#{m_QC5' ` ` ` ` ` ` ` ` `N# ` ` ` ` _ ~_ }_[ |_D {_ z_ y_1 x_0 w_+ v_# u_ t_ s_ r^" q^- p^ o^ n^ m^ l^ k^ j^ i^ h^ g^ f^ e^ d^  c^  b^  a^ `^1 _^ ^^? ]^9 \^9 [^9 Z^ Y^ X^ W^ V^ U^ T^ S^  R^  Q^  P^  O^ N^ ==?_%%G_God Almightygod almighty\h yJadaH l' \f Dieu Tout-Puissant \cme (God) Almighty \cmf (Dieu) le Tout-Puissant _reference_start_Exodus 6:03_reference_end_ _reference_start_Genesis 17:01_reference_end_ _reference_start_Genesis 28:03_reference_end_ _reference_start_Genesis 35:11_reference_end_ _reference_start_Genesis 43:14_reference_end_ _reference_start_Genesis 48:03_reference_end_ _reference_start_Genesis 49:25_reference_end_ _reference_start_Numbers 24:04_reference_end_ _reference_start_Numbers 24:16_reference_end_ _reference_start_Psalms 68:15_reference_end_ _reference_start_Psalms 91:01_reference_end_ _reference_start_Ruth 1:20_reference_end_ _reference_start_Ruth 1:21_reference_end_ ;;A`''G`God Most Highgod most high\h €Owylev l'. \f Dieu Très-Haut \cme God Most High \cmf Dieu Très-Haut _reference_start_Genesis 14:18_reference_end_ _reference_start_Genesis 14:19_reference_end_ _reference_start_Genesis 14:20_reference_end_ _reference_start_Genesis 14:22_reference_end_ _reference_start_Psalms 78:35_reference_end_ \cme Most High God \cmf Dieu Très-Haut (Arm) _reference_start_Daniel 3:26_reference_end_ _reference_start_Daniel 3:32_reference_end_ _reference_start_Daniel 4:14_reference_end_ _reference_start_Daniel 4:21_reference_end_ _reference_start_Daniel 4:22_reference_end_ _reference_start_Daniel 4:29_reference_end_ _reference_start_Daniel 4:31_reference_end_ _reference_start_Daniel 5:18_reference_end_ _reference_start_Daniel 5:21_reference_end_ _reference_start_Daniel 7:25_reference_end_ \cme The Most High \cmf le Très-Haut _reference_start_Deuteronomy 32:08_reference_end_ _reference_start_Numbers 24:16_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( Ke  Je  Id Hd, Gd Fd Ed Dd Cd Bd Ad @d ?d >d =d <d ;d :d 9d 8d/ 7d 6d  5d 4d 3d 2d 1d 0d /d .d -d ,d +d *d )d (d 'd/ &d- %d $d #d "c !b$ b b b b  b b b b, b% b b b  b  b$ a $ a/ ` `  ` ` %%Wa##{aGod of godsgod of gods\h €yihAlé' hAlé' / £yilE' lÿÿE'. \f Dieu des diex \cme God of gods \cmf Dieu des dieux _reference_start_Daniel 2:47_reference_end_ _reference_start_Daniel 11:36_reference_end_ c''ycGod of seeinggod of seeing\h yi'r lÿÿE' \f Dieu qui voi \cme God if seeing \cmf Dieu qui me voit _reference_start_Genesis 16:13_reference_end_Ob''cbGod of heavengod of heaven\h Šåre'ah yehÈÈlé' / £ÇyamAH yEhÈlé'. \f Dieu des cieux \cme God of heaven (and earth) \cmf Dieu des cieux (et la terre) _reference_start_2 Chronicles 36:23_reference_end_ _reference_start_2 Kings 17:26_reference_end_ _reference_start_2 Kings 17:27_reference_end_ _reference_start_Daniel 2:18_reference_end_ _reference_start_Daniel 2:19_reference_end_ _reference_start_Daniel 2:37_reference_end_ _reference_start_Daniel 2:44_reference_end_ _reference_start_Ezra 1:02_reference_end_ _reference_start_Genesis 24:03_reference_end_ _reference_start_Genesis 24:07_reference_end_ _reference_start_Jonah 1:09_reference_end_ _reference_start_Nehemiah 1:04_reference_end_ _reference_start_Nehemiah 1:05_reference_end_ _reference_start_Nehemiah 2:20_reference_end_ _reference_start_Zephaniah 2:11_reference_end_ce_start_Daniel 6:24_reference_end_ _reference_start_Daniel 6:27_reference_end_ \cme pagan god or gods \cmf dieu ou dieux païen(s) _reference_start_2 Chronicles 32:15_reference_end_ _reference_start_Daniel 2:11_reference_end_ _reference_start_Daniel 2:47_reference_end_ _reference_start_Daniel 3:12_reference_end_ _reference_start_Daniel 3:14_reference_end_ _reference_start_Daniel 3:15_reference_end_ _reference_start_Daniel 3:18_reference_end_ _reference_start_Daniel 3:25_reference_end_ _reference_start_Daniel 3:28_reference_end_ _reference_start_Daniel 4:05_reference_end_ _reference_start_Daniel 4:06_reference_end_ _reference_start_Daniel 4:15_reference_end_ _reference_start_Daniel 5:04_reference_end_ _reference_start_Daniel 5:11_reference_end_ _reference_start_Daniel 5:14_reference_end_ _reference_start_Daniel 5:23_reference_end_ _reference_start_Daniel 6:08_reference_end_ _reference_start_Daniel 6:13_reference_end_ _reference_start_Isaiah 44:08_reference_end_ _reference_start_Psalms 18:32_reference_end_ Fd!!]dGod (elah)god (elah)\h ÐhAlé' \f Dieu (elah) \cme God \cmf Seigneur, Dieu _reference_start_Daniel 2:20_reference_end_ _reference_start_Daniel 2:23_reference_end_ _reference_start_Daniel 2:28_reference_end_ _reference_start_Daniel 2:45_reference_end_ _reference_start_Daniel 2:47_reference_end_ _reference_start_Daniel 3:17_reference_end_ _reference_start_Daniel 3:28_reference_end_ _reference_start_Daniel 3:29_reference_end_ _reference_start_Daniel 5:03_reference_end_ _reference_start_Daniel 5:23_reference_end_ _reference_start_Daniel 5:26_reference_end_ _reference_start_Daniel 6:06_reference_end_ _reference_start_Daniel 6:11_reference_end_ _reference_start_Daniel 6:12_reference_end_ _reference_start_Daniel 6:17_reference_end_ _reference_start_Daniel 6:21_reference_end_ _reference_start_Daniel 6:23_reference_end_ _referen reference_start_1 Chronicles 9:11_reference_end_ _reference_start_1 Chronicles 9:13_reference_end_ _reference_start_1 Chronicles 9:26_reference_end_ _reference_start_1 Chronicles 9:27_reference_end_ _reference_start_1 Chronicles 11:19_reference_end_ _reference_start_1 Chronicles 12:17_reference_end_ _reference_start_1 Chronicles 12:18_reference_end_ _reference_start_1 Chronicles 12:22_reference_end_ _reference_start_1 Chronicles 13:1_reference_end_ _reference_start_1 Chronicles 14:1_reference_end_ _reference_start_1 Chronicles 15:1_reference_end_ _reference_start_1 Chronicles 16:01_reference_end_ _reference_start_1 Chronicles 16:06_reference_end_ _reference_start_1 Chronicles 16:35_reference_end_ _reference_start_1 Chronicles 16:42_reference_end_ _reference_start_1 Chronicles 17:1_reference_end_ _reference_start_1 Chronicles 19:13_reference_end_ _reference_start_1 Chronicles 21:07_reference_end_ _reference_start_1 Chronicles 21:08_reference_end_ _reference_start_1 Chronicles 21:15_reference_end_ _referenc e_start_1 Chronicles 21:17_reference_end_ _reference_start_1 Chronicles 21:30_reference_end_ _reference_start_1 Chronicles 22:02_reference_end_ _reference_start_1 Chronicles 22:19_reference_end_ _reference_start_1 Chronicles 23:14_reference_end_ _reference_start_1 Chronicles 23:28_reference_end_ _reference_start_1 Chronicles 28:02_reference_end_ _reference_start_1 Chronicles 28:03_reference_end_ _reference_start_1 Chronicles 28:08_reference_end_ _reference_start_1 Chronicles 28:09_reference_end_ _reference_start_1 Chronicles 28:0_reference_end_ _reference_start_1 Chronicles 28:21_reference_end_ _reference_start_1 Kings 1:47_reference_end_ _reference_start_1 Kings 2:23_reference_end_ _reference_start_1 Kings 3:05_reference_end_ _reference_start_1 Kings 3:11_reference_end_ _reference_start_1 Kings 3:28_reference_end_ _reference_start_1 Kings 5:09_reference_end_ _reference_start_1 Kings 8:23_reference_end_ _reference_start_1 Kings 8:26_reference_end_ _reference_start_1 Kings 8:27_reference_end_ _reference_st art_1 Kings 8:60_reference_end_ _reference_start_1 Kings 10:24_reference_end_ _reference_start_1 Kings 11:23_reference_end_ _reference_start_1 Kings 12:22_reference_end_ _reference_start_1 Kings 13:1_reference_end_ _reference_start_1 Kings 17:18_reference_end_ _reference_start_1 Kings 17:24_reference_end_ _reference_start_1 Kings 18:21_reference_end_ _reference_start_1 Kings 18:24_reference_end_ _reference_start_1 Kings 18:36_reference_end_ _reference_start_1 Kings 18:39_reference_end_ _reference_start_1 Samuel 1:17_reference_end_ _reference_start_1 Samuel 2:02_reference_end_ _reference_start_1 Samuel 2:27_reference_end_ _reference_start_1 Samuel 3:03_reference_end_ _reference_start_1 Samuel 3:17_reference_end_ _reference_start_1 Samuel 4:1_reference_end_ _reference_start_1 Samuel 5:1_reference_end_ _reference_start_1 Samuel 6:03_reference_end_ _reference_start_1 Samuel 6:05_reference_end_ _reference_start_1 Samuel 9:1_reference_end_ _reference_start_1 Samuel 10:1_reference_end_ _reference_start_1 Samuel 11:06_reference_end_ _reference_start_1 Samuel 14:1_reference_end_ _reference_start_1 Samuel 16:15_reference_end_ _reference_start_1 Samuel 16:16_reference_end_ _reference_start_1 Samuel 16:23_reference_end_ _reference_start_1 Samuel 17:45_reference_end_ _reference_start_1 Samuel 17:46_reference_end_ _reference_start_1 Samuel 18:10_reference_end_ _reference_start_1 Samuel 19:20_reference_end_ _reference_start_1 Samuel 19:23_reference_end_ _reference_start_1 Samuel 22:03_reference_end_ _reference_start_1 Samuel 22:13_reference_end_ _reference_start_1 Samuel 22:15_reference_end_ _reference_start_1 Samuel 23:07_reference_end_ _reference_start_1 Samuel 23:14_reference_end_ _reference_start_1 Samuel 23:16_reference_end_ _reference_start_1 Samuel 25:22_reference_end_ _reference_start_1 Samuel 26:08_reference_end_ _reference_start_1 Samuel 28:15_reference_end_ _reference_start_1 Samuel 29:09_reference_end_ _reference_start_1 Samuel 30:15_reference_end_ _reference_start_2 Samuel 2:27_reference_end_ _reference_sta rt_2 Samuel 3:09_reference_end_ _reference_start_2 Samuel 3:35_reference_end_ _reference_start_2 Samuel 6:1_reference_end_ _reference_start_2 Samuel 7:02_reference_end_ _reference_start_2 Samuel 7:22_reference_end_ _reference_start_2 Samuel 7:23_reference_end_ _reference_start_2 Samuel 7:24_reference_end_ _reference_start_2 Samuel 7:26_reference_end_ _reference_start_2 Samuel 7:28_reference_end_ _reference_start_2 Samuel 7:7_reference_end_ _reference_start_2 Samuel 9:03_reference_end_ _reference_start_2 Samuel 10:12_reference_end_ _reference_start_2 Samuel 12:16_reference_end_ _reference_start_2 Samuel 14:13_reference_end_ _reference_start_2 Samuel 14:14_reference_end_ _reference_start_2 Samuel 14:16_reference_end_ _reference_start_2 Samuel 14:17_reference_end_ _reference_start_2 Samuel 14:20_reference_end_ _reference_start_2 Samuel 15:24_reference_end_ _reference_start_2 Samuel 15:25_reference_end_ _reference_start_2 Samuel 15:29_reference_end_ _reference_start_2 Samuel 15:32_reference_end_ _reference_st art_2 Samuel 16:23_reference_end_ _reference_start_2 Samuel 19:14_reference_end_ _reference_start_2 Samuel 19:28_reference_end_ _reference_start_2 Samuel 21:14_reference_end_ _reference_start_2 Samuel 22:03_reference_end_ _reference_start_2 Samuel 22:07_reference_end_ _reference_start_2 Samuel 22:22_reference_end_ _reference_start_2 Samuel 22:32_reference_end_ _reference_start_2 Samuel 22:47_reference_end_ _reference_start_2 Samuel 23:01_reference_end_ _reference_start_2 Samuel 23:03_reference_end_ _reference_start_Daniel 1:02_reference_end_ _reference_start_Daniel 1:09_reference_end_ _reference_start_Daniel 1:17_reference_end_ _reference_start_Daniel 9:11_reference_end_ _reference_start_Daniel 9:17_reference_end_ _reference_start_Daniel 9:19_reference_end_ _reference_start_Daniel 9:19_reference_end_ _reference_start_Daniel 9:20_reference_end_ _reference_start_Daniel 10:12_reference_end_ _reference_start_Daniel 11:32_reference_end_ _reference_start_Deuteronomy 18:1_reference_end_ _reference_start_Deuteron omy 28:1_reference_end_ _reference_start_Ecclesiastes 1:13_reference_end_ _reference_start_Ecclesiastes 3:10_reference_end_ _reference_start_Ecclesiastes 3:11_reference_end_ _reference_start_Ecclesiastes 3:13_reference_end_ _reference_start_Ecclesiastes 3:14_reference_end_ _reference_start_Ecclesiastes 3:18_reference_end_ _reference_start_Ecclesiastes 7:29_reference_end_ _reference_start_Ecclesiastes 8:12_reference_end_ _reference_start_Ecclesiastes 8:13_reference_end_ _reference_start_Ecclesiastes 9:01_reference_end_ _reference_start_Ecclesiastes 11:05_reference_end_ _reference_start_Ecclesiastes 12:07_reference_end_ _reference_start_Ecclesiastes 12:13_reference_end_ _reference_start_Ecclesiastes 12:14_reference_end_ _reference_start_Exodus 1:17_reference_end_ _reference_start_Exodus 1:20_reference_end_ _reference_start_Exodus 1:21_reference_end_ _reference_start_Exodus 2:23_reference_end_ _reference_start_Exodus 2:24_reference_end_ _reference_start_Exodus 2:25_reference_end_ _reference_start_Exodus 3:1_ reference_end_ _reference_start_Exodus 5:03_reference_end_ _reference_start_Exodus 5:08_reference_end_ _reference_start_Exodus 6:02_reference_end_ _reference_start_Exodus 6:07_reference_end_ _reference_start_Exodus 7:01_reference_end_ _reference_start_Exodus 8:1_reference_end_ _reference_start_Exodus 13:1_reference_end_ _reference_start_Exodus 14:19_reference_end_ _reference_start_Exodus 15:02_reference_end_ _reference_start_Exodus 17:09_reference_end_ _reference_start_Exodus 18:1_reference_end_ _reference_start_Exodus 19:03_reference_end_ _reference_start_Exodus 19:17_reference_end_ _reference_start_Exodus 19:19_reference_end_ _reference_start_Exodus 20:01_reference_end_ _reference_start_Exodus 20:19_reference_end_ _reference_start_Exodus 20:20_reference_end_ _reference_start_Exodus 20:21_reference_end_ _reference_start_Exodus 21:13_reference_end_ _reference_start_Exodus 24:10_reference_end_ _reference_start_Exodus 24:11_reference_end_ _reference_start_Exodus 24:13_reference_end_ _reference_start_Exodus 29:45_reference_end_ _reference_start_Genesis 1:1_reference_end_ _reference_start_Genesis 1:01_reference_end_ _reference_start_Genesis 4:25_reference_end_ _reference_start_Genesis 5:01_reference_end_ _reference_start_Genesis 5:22_reference_end_ _reference_start_Genesis 5:24_reference_end_ _reference_start_Genesis 5:24_reference_end_ _reference_start_Genesis 6:1_reference_end_ _reference_start_Genesis 7:09_reference_end_ _reference_start_Genesis 7:16_reference_end_ _reference_start_Genesis 8:01_reference_end_ _reference_start_Genesis 8:15_reference_end_ _reference_start_Genesis 9:1_reference_end_ _reference_start_Genesis 17:1_reference_end_ _reference_start_Genesis 19:29_reference_end_ _reference_start_Genesis 20:1_reference_end_ _reference_start_Genesis 23:06_reference_end_ _reference_start_Genesis 24:03_reference_end_ _reference_start_Genesis 25:11_reference_end_ _reference_start_Genesis 27:28_reference_end_ _reference_start_Genesis 28:1_reference_end_ _reference_start_Genesis 30:1_reference_end_ _refere nce_start_Genesis 35:1_reference_end_ _reference_start_Genesis 39:09_reference_end_ _reference_start_Genesis 40:08_reference_end_ _reference_start_Genesis 41:1_reference_end_ _reference_start_Genesis 42:18_reference_end_ _reference_start_Genesis 42:28_reference_end_ _reference_start_Genesis 43:23_reference_end_ _reference_start_Genesis 43:29_reference_end_ _reference_start_Genesis 44:16_reference_end_ _reference_start_Genesis 45:05_reference_end_ _reference_start_Genesis 45:07_reference_end_ _reference_start_Genesis 45:08_reference_end_ _reference_start_Genesis 45:09_reference_end_ _reference_start_Genesis 46:01_reference_end_ _reference_start_Genesis 46:02_reference_end_ _reference_start_Genesis 46:03_reference_end_ _reference_start_Genesis 48:1_reference_end_ _reference_start_Genesis 50:1_reference_end_ _reference_start_Jonah 1:06_reference_end_ _reference_start_Jonah 3:05_reference_end_ _reference_start_Jonah 3:08_reference_end_ _reference_start_Jonah 3:09_reference_end_ _reference_start_Jonah 3:10_ref erence_end_ _reference_start_Jonah 4:07_reference_end_ _reference_start_Jonah 4:08_reference_end_ _reference_start_Jonah 4:09_reference_end_ _reference_start_Leviticus 18:21_reference_end_ _reference_start_Leviticus 25:17_reference_end_ _reference_start_Leviticus 25:36_reference_end_ _reference_start_Leviticus 25:38_reference_end_ _reference_start_Leviticus 25:43_reference_end_ _reference_start_Leviticus 25:55_reference_end_ _reference_start_Numbers 10:10_reference_end_ _reference_start_Numbers 21:05_reference_end_ _reference_start_Proverbs 2:05_reference_end_ _reference_start_Proverbs 3:04_reference_end_ _reference_start_Psalms 8:06_reference_end_ _reference_start_Psalms 24:05_reference_end_ _reference_start_Psalms 51:03_reference_end_ _reference_start_Psalms 51:12_reference_end_ _reference_start_Psalms 51:16_reference_end_ _reference_start_Psalms 51:19_reference_end_ _reference_start_Psalms 51:19_reference_end_ _reference_start_Psalms 52:09_reference_end_ _reference_start_Psalms 52:10_reference_end_ _re ference_start_Psalms 54:03_reference_end_ _reference_start_Psalms 54:04_reference_end_ _reference_start_Psalms 54:05_reference_end_ _reference_start_Psalms 54:06_reference_end_ _reference_start_Psalms 56:014_reference_end_ _reference_start_Psalms 56:02_reference_end_ _reference_start_Psalms 56:05_reference_end_ _reference_start_Psalms 56:08_reference_end_ _reference_start_Psalms 56:10_reference_end_ _reference_start_Psalms 56:10_reference_end_ _reference_start_Psalms 56:12_reference_end_ _reference_start_Psalms 56:13_reference_end_ _reference_start_Psalms 57:02_reference_end_ _reference_start_Psalms 57:04_reference_end_ _reference_start_Psalms 57:06_reference_end_ _reference_start_Psalms 57:08_reference_end_ _reference_start_Psalms 57:12_reference_end_ _reference_start_Psalms 59:02_reference_end_ _reference_start_Psalms 59:06_reference_end_ _reference_start_Psalms 59:14_reference_end_ _reference_start_Psalms 59:18_reference_end_ _reference_start_Psalms 60:03_reference_end_ _reference_start_Psalms 60:08_re ference_end_ _reference_start_Psalms 60:12_reference_end_ _reference_start_Psalms 60:14_reference_end_ _reference_start_Psalms 61:02_reference_end_ _reference_start_Psalms 61:06_reference_end_ _reference_start_Psalms 61:08_reference_end_ _reference_start_Psalms 63:02_reference_end_ _reference_start_Psalms 63:12_reference_end_ _reference_start_Psalms 71:04_reference_end_ _reference_start_Psalms 71:11_reference_end_ _reference_start_Psalms 71:12_reference_end_ _reference_start_Psalms 71:17_reference_end_ _reference_start_Psalms 71:18_reference_end_ _reference_start_Psalms 71:19_reference_end_ _reference_start_Psalms 71:22_reference_end_ _reference_start_Psalms 90:01_reference_end_ _reference_start_Psalms 144:09_reference_end_ _reference_start_Psalms 144:15_reference_end_ _reference_start_Ruth 1:16_reference_end_ \cme pagan god or gods \cmf dieu ou dieux païen(s) _reference_start_1 Chronicles 16:25_reference_end_ _reference_start_1 Chronicles 16:26_reference_end_ _reference_start_1 Kings 9:09_reference_end_ _reference_start_1 Kings 11:02_reference_end_ _reference_start_1 Kings 11:04_reference_end_ _reference_start_1 Kings 11:05_reference_end_ _reference_start_1 Kings 11:08_reference_end_ _reference_start_1 Kings 11:10_reference_end_ _reference_start_1 Kings 11:33_reference_end_ _reference_start_1 Kings 11:33_reference_end_ _reference_start_1 Samuel 5:07_reference_end_ _reference_start_1 Samuel 6:05_reference_end_ _reference_start_1 Samuel 7:03_reference_end_ _reference_start_1 Samuel 8:08_reference_end_ _reference_start_1 Samuel 17:43_reference_end_ _reference_start_1 Samuel 26:19_reference_end_ _reference_start_1 Samuel 28:13_reference_end_ _reference_start_2 Chronicles 7:19_reference_end_ _reference_start_2 Chronicles 7:22_reference_end_ _reference_start_2 Samuel 7:23_reference_end_ _reference_start_Daniel 1:02_reference_end_ _reference_start_Daniel 11:08_reference_end_ _reference_start_Daniel 11:37_reference_end_ _reference_start_Deuteronomy 18:20_reference_end_ _reference_start_Deuteronomy 28:14_reference_end_ _reference_start_Deuteronomy 28:36_reference_end_ _reference_start_Deuteronomy 28:64_reference_end_ _reference_start_Deuteronomy 32:17_reference_end_ _reference_start_Deuteronomy 32:37_reference_end_ _reference_start_Deuteronomy 32:39_reference_end_ _reference_start_Exodus 7:01_reference_end_ _reference_start_Exodus 12:12_reference_end_ _reference_start_Exodus 18:11_reference_end_ _reference_start_Exodus 20:03_reference_end_ _reference_start_Exodus 20:23_reference_end_ _reference_start_Exodus 22:19_reference_end_ _reference_start_Exodus 22:27_reference_end_ _reference_start_Exodus 23:13_reference_end_ _reference_start_Exodus 23:24_reference_end_ _reference_start_Exodus 23:32_reference_end_ _reference_start_Exodus 23:33_reference_end_ _reference_start_Genesis 31:30_reference_end_ _reference_start_Genesis 31:32_reference_end_ _reference_start_Genesis 35:02_reference_end_ _reference_start_Genesis 35:04_reference_end_ _reference_start_Jonah 1:05_reference_end_ _reference_start_Ruth 1:15_reference_end_ ++e%%ieGod (elohim)god (elohim)\h £yihÈlé' \f Dieu (elohim) \cme God (elohim) \cmf Dieu (elohim) _reference_start_1 Chronicles 4:10_reference_end_ _reference_start_1 Chronicles 7:05_reference_end_ _ ?tfXJ<. xj\N@2$|n`RD6( e  e  e  e  e  e  e  e  e  e  e  e ' ~e $ }e  |e  {e  ze  ye  xe  we  ve  ue < te  se  re  qe  pe  oe  ne  me  le / ke  je  ie  he  ge  fe  ee  de  ce  be  ae  `e  _e  ^e  ]e  \e  [e  Ze * Ye # Xe  We  Ve  Ue  Te  Se  Re  Qe  Pe  Oe  Ne  Me Le ?tfXJ<. xj\N@2$|n`RD6( Ie  He  Ge  Fe  Ee De Ce Be Ae  @e  ?e / >e  =e  <e  ;e  :e  9e  8e  7e  6e  5e  4e  3e  2e  1e  0e  /e  .e  -e  ,e +e  *e  )e  (e  'e  &e  %e  $e  #e  "e # !e  e  e  e  e  e  e  e  e  e  e  e  e  e  e  e  e . e - e  e  e  e  e  ?tfXJ<. xj\N@2$|n`RD6( e e e  e e e e e e e ~e }e |e {e ze ye- xe we ve ue te se re qe pe oe ne me le ke je ie  he ge fe ee de ce be ae `e _e ^e ]e \e [e  Ze Ye  Xe  We  Ve Ue Te Se Re Qe Pe Oe Ne Me Le Ke Je ?tfXJ<. xj\N@2$|n`RD6( Ge8 Fe8 Ee8 De8 Ce8 Be8 Ae8 @e6 ?e6 >e6 =e6 <e4 ;e4 :e3 9e3 8e3 7e3 6e3 5e 4e 3e 2e 1e 0e /e7 .e+ -e& ,e$ +e *e )e  (e  'e  &e  %e  $e  #e  "e  !e2 e0 e. e. e. e- e- e- e- e, e+ e+ e* e* e) e( e' e# e e e e e e e ?tfXJ<. whZL>0"zl^PB4& e e e e ' e % e  e@ e$ ~e }e |e % {e  ze ye  xe we ve  ue  te + se  re  qe  pe  oe ! ne ! me le  ke  je  ie  he ge  fe  ee de ce beZ aeG `eG _eG ^eG ]eG \eG [eG Ze? Ye? Xe= We= Ve= Ue< Te< Se< Re< Qe; Pe; Oe; Ne; Me9 Le9 Ke9 Je9 Ie9 He8 ?tfXJ<. xj\N@2$zk]OA3% Eg Dg Cg Bg Ag $ @g  ?g  >g =gA <g  ;f :f 9f 8f 7f 6f $ 5f 4f 3f 2fZ 1f? 0f9 /f4 .f4 -f ,f +f  *f1 )f. (f# 'f# &f# %f# $f! #f "f !f f f  f  f  f $ f  f  f 0 f ! f  f  f  e e  e# e# e e e! e e e e e e end_ _reference_start_Genesis 35:07_reference_end_ _reference_start_Genesis 35:11_reference_end_ _reference_start_Genesis 46:03_reference_end_ _reference_start_Genesis 49:25_reference_end_ _reference_start_Jonah 4:02_reference_end_ _reference_start_Psalms 17:06_reference_end_ _reference_start_Psalms 1:1_reference_end_ _reference_start_Psalms 52:03_reference_end_ _reference_start_Psalms 52:07_reference_end_ _reference_start_Psalms 57:03_reference_end_ _reference_start_Psalms 63:02_reference_end_ _reference_start_Psalms 90:02_reference_end_ _reference_start_Psalms 139:17_reference_end_ _reference_start_Psalms 139:23_reference_end_ _reference_start_Psalms 150:01_reference_end_ \cme god(s) \cmf dieu (dieux) _reference_start_Daniel 11:36_reference_end_ _reference_start_Deuteronomy 32:12_reference_end_ _reference_start_Exodus 15:11_reference_end_ \cme strength \cmf pouvoir _reference_start_Deuteronomy 28:32_reference_end_ _reference_start_Genesis 31:29_reference_end_ _reference_start_Proverbs 3:27_reference_end_ nnfefGod (el)god (el)\h le' \f Dieu (el) \cme God (el) \cmf Dieu _reference_start_1 Samuel 2:03_reference_end_ _reference_start_2 Samuel 22:31_reference_end_ _reference_start_2 Samuel 22:32_reference_end_ _reference_start_2 Samuel 22:33_reference_end_ _reference_start_2 Samuel 22:48_reference_end_ _reference_start_2 Samuel 23:05_reference_end_ _reference_start_Daniel 9:04_reference_end_ _reference_start_Daniel 11:36_reference_end_ _reference_start_Deuteronomy 32:04_reference_end_ _reference_start_Deuteronomy 32:18_reference_end_ _reference_start_Deuteronomy 32:21_reference_end_ _reference_start_Exodus 15:02_reference_end_ _reference_start_Exodus 20:05_reference_end_ _reference_start_Genesis 16:13_reference_end_ _reference_start_Genesis 31:13_reference_end_ _reference_start_Genesis 33:20_reference_end_ _reference_start_Genesis 35:01_reference_end_ _reference_start_Genesis 35:03_reference_e rence_end_ _reference_start_Esther 1:21_reference_end_ _reference_start_Esther 2:04_reference_end_ _reference_start_Esther 2:04_reference_end_ _reference_start_Esther 2:09_reference_end_ _reference_start_Esther 5:14_reference_end_ _reference_start_Genesis 34:18_reference_end_ _reference_start_Genesis 41:37_reference_end_ _reference_start_Genesis 45:16_reference_end_ _reference_start_Psalms 69:32_reference_end_ \cme be well for, go well with \cmf être bien, aller bien avec _reference_start_Deuteronomy 4:40_reference_end_ _reference_start_Deuteronomy 5:16_reference_end_ _reference_start_Deuteronomy 5:26_reference_end_ _reference_start_Deuteronomy 6:03_reference_end_ _reference_start_Deuteronomy 6:18_reference_end_ _reference_start_Deuteronomy 12:25_reference_end_ _reference_start_Deuteronomy 12:28_reference_end_ _reference_start_Deuteronomy 22:07_reference_end_ _reference_start_Genesis 12:13_reference_end_ _reference_start_Genesis 40:14_reference_end_ _reference_start_Ruth 3:01_reference_end_ \cme better \ cmf meiux _reference_start_1 Kings 1:47_reference_end_ \cme do good to (a person), give good things \cmf faire du bien (à une personne), donner de bonnes choses _reference_start_1 Samuel 2:32_reference_end_ _reference_start_1 Samuel 25:31_reference_end_ _reference_start_Deuteronomy 8:16_reference_end_ _reference_start_Deuteronomy 28:63_reference_end_ _reference_start_Deuteronomy 30:05_reference_end_ _reference_start_Exodus 1:20_reference_end_ _reference_start_Genesis 12:16_reference_end_ _reference_start_Genesis 32:09_reference_end_ _reference_start_Genesis 32:13_reference_end_ _reference_start_Leviticus 5:04_reference_end_ _reference_start_Numbers 10:29_reference_end_ _reference_start_Numbers 10:32_reference_end_ _reference_start_Psalms 49:19_reference_end_ _reference_start_Psalms 51:20_reference_end_ _reference_start_Psalms 125:04_reference_end_ \cme make glad, rejoice \cmf rejouir, être content _reference_start_1 Samuel 20:13_reference_end_ _reference_start_Jude 19:22_reference_end_ \cme to do well, correctly \cmf bien faire, faire correctement _reference_start_1 Samuel 16:17_reference_end_ _reference_start_1 Samuel 24:05_reference_end_ _reference_start_2 Samuel 18:04_reference_end_ _reference_start_Genesis 4:07_reference_end_ _reference_start_Genesis 4:07_reference_end_ _reference_start_Jonah 4:04_reference_end_ _reference_start_Jonah 4:09_reference_end_ _reference_start_Psalms 36:04_reference_end_ _reference_start_Psalms 119:068_reference_end_ \cme to do well, or thoroughly \cmf faire concencieusement _reference_start_Deuteronomy 5:25_reference_end_ _reference_start_Deuteronomy 9:21_reference_end_ _reference_start_Deuteronomy 13:15_reference_end_ _reference_start_Deuteronomy 17:02_reference_end_ _reference_start_Deuteronomy 18:17_reference_end_ _reference_start_Deuteronomy 19:18_reference_end_ _reference_start_Deuteronomy 27:08_reference_end_ \cme to make a thing good, beautiful \cmf beau, faire une bonne chose _reference_start_Proverbs 17:22_reference_end_ _reference_start_Ruth 3:10_reference_end_ jjgracegrace\h €ÂnAx \f grâce \cme ask for favor from a person \cmf demander de la faveur d  i))igoodness, fairgoodness, fair\h bôLX \f bien, belle \cme appropriate, becoming \cmf convenab "hhgoodnessgoodness\h bAX \f bien \cme good quality, excellent \cmf bonne qualité, excellent _reference_start_Daniel 2:32_reference_end_ \cme to be pleasing, agreeable \cmf être agréable, plaire _reference_start_Daniel 6:24_reference_end_ _reference_start_Ezra 5:17_reference_end_Pg''eggood (to be)good (to be)\h baXAy. \f bon, être bon \cme be glad, joyful \cmf être joyeu, content _reference_start_1 Kings 21:07_reference_end_ _reference_start_Jude 18:20_reference_end_ _reference_start_Ruth 3:07_reference_end_ \cme be pleasing, be accepted \cmf plaire, être accepté _reference_start_1 Kings 3:10_reference_end_ _reference_start_1 Samuel 18:05_reference_end_ _reference_start_2 Samuel 3:36_reference_end_ _reference_start_Deuteronomy 1:23_refe ?tfXJ<. xj\N@2$|n`RD6( i  i i  i * i & i  ~i  }h |h {h zg yg xg wg vg ug tg  sg  rg qgwD pg$ og  ng  mg lg kg  jg  ig  hgA gg  fg} eg3 dg1 cg bg  ag `g _g ^g  ]g \g [g? Zg Yg  Xg  Wg / Vg Ug( Tg Sg Rg  Qg  Pg Og Ng Mg Lg( KgE Jg- Ig)% Hg" Gg Fg le, opportun _reference_start_1 Chronicles 13:02_reference_end_ _reference_start_1 Kings 2:18_reference_end_ _reference_start_1 Kings 2:38_reference_end_ _reference_start_1 Kings 2:42_reference_end_ _reference_start_1 Kings 18:24_reference_end_ _reference_start_1 Samuel 9:10_reference_end_ _reference_start_2 Samuel 17:07_reference_end_ _reference_start_2 Samuel 17:14_reference_end_ _reference_start_Deuteronomy 1:14_reference_end_ _reference_start_Ecclesiastes 2:03_reference_end_ _reference_start_Exodus 18:17_reference_end_ _reference_start_Genesis 2:09_reference_end_ _reference_start_Genesis 2:18_reference_end_ _reference_start_Genesis 3:06_reference_end_ _reference_start_Genesis 40:16_reference_end_ _reference_start_Genesis 41:05_reference_end_ _reference_start_Genesis 41:22_reference_end_ _reference_start_Genesis 41:24_reference_end_ _reference_start_Psalms 147:01_reference_end_ _reference_start_Psalms 147:01_reference_end_ _reference_start_Ruth 2:22_reference_end_ \cme be happy, joyful \cmf être heure ux, joyeux _reference_start_1 Kings 8:66_reference_end_ _reference_start_1 Samuel 25:36_reference_end_ _reference_start_2 Chronicles 7:10_reference_end_ _reference_start_2 Samuel 13:28_reference_end_ _reference_start_Deuteronomy 28:47_reference_end_ _reference_start_Esther 1:10_reference_end_ _reference_start_Jude 16:25_reference_end_ \cme belongings \cmf les biens _reference_start_Genesis 24:10_reference_end_ \cme benefit, positive influence \cmf bénéfice, influence positive _reference_start_1 Samuel 19:04_reference_end_ _reference_start_Genesis 26:29_reference_end_ _reference_start_Proverbs 14:22_reference_end_ _reference_start_Proverbs 19:02_reference_end_ _reference_start_Proverbs 25:27_reference_end_ _reference_start_Proverbs 31:12_reference_end_ _reference_start_Psalms 119:065_reference_end_ _reference_start_Psalms 119:122_reference_end_ \cme better, preferred, best \cmf préferé, (le) meilleur _reference_start_1 Kings 2:32_reference_end_ _reference_start_1 Samuel 1:08_reference_end_ _reference_s tart_1 Samuel 15:22_reference_end_ _reference_start_1 Samuel 15:28_reference_end_ _reference_start_1 Samuel 27:01_reference_end_ _reference_start_2 Samuel 14:32_reference_end_ _reference_start_2 Samuel 17:14_reference_end_ _reference_start_2 Samuel 18:03_reference_end_ _reference_start_Ecclesiastes 3:12_reference_end_ _reference_start_Esther 1:19_reference_end_ _reference_start_Esther 2:09_reference_end_ _reference_start_Exodus 14:12_reference_end_ _reference_start_Genesis 29:19_reference_end_ _reference_start_Genesis 45:18_reference_end_ _reference_start_Genesis 45:20_reference_end_ _reference_start_Jonah 4:03_reference_end_ _reference_start_Jonah 4:08_reference_end_ _reference_start_Numbers 14:03_reference_end_ _reference_start_Proverbs 8:11_reference_end_ _reference_start_Proverbs 15:16_reference_end_ _reference_start_Proverbs 15:17_reference_end_ _reference_start_Proverbs 21:19_reference_end_ _reference_start_Proverbs 25:24_reference_end_ _reference_start_Proverbs 27:05_reference_end_ _reference_start _Proverbs 27:10_reference_end_ _reference_start_Proverbs 28:06_reference_end_ _reference_start_Psalms 37:16_reference_end_ _reference_start_Psalms 63:04_reference_end_ _reference_start_Psalms 84:11_reference_end_ _reference_start_Psalms 118:08_reference_end_ _reference_start_Psalms 118:09_reference_end_ _reference_start_Psalms 119:072_reference_end_ _reference_start_Ruth 4:15_reference_end_ \cme do what one wants, is appropriate, do right \cmf faire ce qu'on veut, faire le bien _reference_start_1 Chronicles 19:13_reference_end_ _reference_start_1 Chronicles 21:23_reference_end_ _reference_start_1 Samuel 1:23_reference_end_ _reference_start_1 Samuel 11:10_reference_end_ _reference_start_1 Samuel 14:36_reference_end_ _reference_start_1 Samuel 14:40_reference_end_ _reference_start_2 Samuel 2:06_reference_end_ _reference_start_2 Samuel 10:12_reference_end_ _reference_start_2 Samuel 15:26_reference_end_ _reference_start_2 Samuel 19:19_reference_end_ _reference_start_2 Samuel 19:28_reference_end_ _reference_sta rt_2 Samuel 19:38_reference_end_ _reference_start_2 Samuel 19:39_reference_end_ _reference_start_2 Samuel 24:22_reference_end_ _reference_start_Deuteronomy 6:18_reference_end_ _reference_start_Esther 3:11_reference_end_ _reference_start_Esther 7:09_reference_end_ _reference_start_Esther 8:08_reference_end_ _reference_start_Genesis 16:06_reference_end_ _reference_start_Genesis 19:08_reference_end_ _reference_start_Genesis 24:50_reference_end_ _reference_start_Genesis 31:24_reference_end_ _reference_start_Genesis 31:29_reference_end_ _reference_start_Jude 19:24_reference_end_ _reference_start_Numbers 10:29_reference_end_ _reference_start_Numbers 36:06_reference_end_ \cme favor, mercy \cmf faveur, miséricorde _reference_start_1 Samuel 2:26_reference_end_ _reference_start_1 Samuel 19:04_reference_end_ _reference_start_1 Samuel 20:07_reference_end_ _reference_start_1 Samuel 29:06_reference_end_ _reference_start_Proverbs 25:25_reference_end_ _reference_start_Psalms 31:20_reference_end_ _reference_start_Psalms 54:05_reference_end_ _reference_start_Psalms 86:17_reference_end_ \cme generous \cmf généreux _reference_start_1 Kings 12:07_reference_end_ _reference_start_1 Samuel 24:19_reference_end_ _reference_start_Proverbs 22:09_reference_end_ _reference_start_Psalms 68:11_reference_end_ _reference_start_Psalms 109:21_reference_end_ \cme giving pleasure, prosperity \cmf faire plaisir, prospérité _reference_start_1 Kings 14:15_reference_end_ _reference_start_1 Samuel 24:20_reference_end_ _reference_start_1 Samuel 25:08_reference_end_ _reference_start_2 Samuel 18:27_reference_end_ _reference_start_Ecclesiastes 3:1_reference_end_ _reference_start_Ecclesiastes 11:06_reference_end_ _reference_start_Esther 8:17_reference_end_ _reference_start_Esther 9:19_reference_end_ _reference_start_Esther 9:22_reference_end_ _reference_start_Genesis 20:15_reference_end_ _reference_start_Genesis 41:35_reference_end_ _reference_start_Genesis 49:15_reference_end_ _reference_start_Proverbs 12:25_reference_end_ _reference_start_Psalms 45:02_reference_end_ _reference_start_Psalms 106:05_reference_end_ \cme glad, happy, prosperous (a person) \cmf contante, prospérée (une personne) _reference_start_1 Samuel 16:23_reference_end_ _reference_start_Esther 5:09_reference_end_ _reference_start_Proverbs 15:15_reference_end_ _reference_start_Psalms 112:05_reference_end_ \cme good quality, excellent \cmf de bonne qualié, excellent _reference_start_1 Chronicles 4:40_reference_end_ _reference_start_1 Chronicles 18:08_reference_end_ _reference_start_1 Samuel 8:14_reference_end_ _reference_start_1 Samuel 25:03_reference_end_ _reference_start_Deuteronomy 1:25_reference_end_ _reference_start_Deuteronomy 1:35_reference_end_ _reference_start_Deuteronomy 3:25_reference_end_ _reference_start_Deuteronomy 3:25_reference_end_ _reference_start_Deuteronomy 4:21_reference_end_ _reference_start_Deuteronomy 4:22_reference_end_ _reference_start_Deuteronomy 6:18_reference_end_ _reference_start_Deuteronomy 8:07_reference_end_ _reference_start_Deuteronomy 8:10_refe rence_end_ _reference_start_Deuteronomy 9:06_reference_end_ _reference_start_Deuteronomy 11:17_reference_end_ _reference_start_Genesis 1:04_reference_end_ _reference_start_Genesis 1:10_reference_end_ _reference_start_Genesis 1:12_reference_end_ _reference_start_Genesis 1:18_reference_end_ _reference_start_Genesis 1:21_reference_end_ _reference_start_Genesis 1:25_reference_end_ _reference_start_Genesis 1:31_reference_end_ _reference_start_Genesis 2:12_reference_end_ _reference_start_Genesis 18:07_reference_end_ _reference_start_Genesis 27:09_reference_end_ _reference_start_Genesis 41:26_reference_end_ _reference_start_Numbers 13:19_reference_end_ _reference_start_Psalms 133:02_reference_end_ \cme good things, blessings \cmf bonnes choses, bénédictions _reference_start_1 Chronicles 17:26_reference_end_ _reference_start_1 Kings 8:66_reference_end_ _reference_start_1 Samuel 15:09_reference_end_ _reference_start_1 Samuel 25:30_reference_end_ _reference_start_2 Samuel 7:28_reference_end_ _reference_start_2 Sa muel 16:12_reference_end_ _reference_start_Deuteronomy 28:12_reference_end_ _reference_start_Exodus 3:08_reference_end_ _reference_start_Exodus 18:09_reference_end_ _reference_start_Genesis 45:23_reference_end_ _reference_start_Proverbs 18:22_reference_end_ _reference_start_Psalms 27:13_reference_end_ _reference_start_Psalms 103:05_reference_end_ _reference_start_Psalms 104:28_reference_end_ _reference_start_Psalms 107:09_reference_end_ \cme good understanding (a person) \cmf bonne comprehension (uner personne) _reference_start_Proverbs 3:04_reference_end_ _reference_start_Psalms 111:10_reference_end_ _reference_start_Psalms 119:068_reference_end_ \cme good, kind \cmf bon, gentil, bienveillant _reference_start_1 Samuel 25:15_reference_end_ _reference_start_Genesis 44:04_reference_end_ _reference_start_Psalms 145:09_reference_end_ \cme just, right \cmf juste, bon _reference_start_2 Samuel 15:03_reference_end_ _reference_start_Psalms 119:066_reference_end_ \cme moral good \cmf bien moral _reference_start_1 Chronicles 16:34_reference_end_ _reference_start_1 Kings 8:56_reference_end_ _reference_start_1 Samuel 24:18_reference_end_ _reference_start_1 Samuel 25:21_reference_end_ _reference_start_1 Samuel 26:16_reference_end_ _reference_start_1 Samuel 29:06_reference_end_ _reference_start_1 Samuel 29:09_reference_end_ _reference_start_2 Chronicles 7:03_reference_end_ _reference_start_Deuteronomy 1:39_reference_end_ _reference_start_Deuteronomy 30:15_reference_end_ _reference_start_Ecclesiastes 7:20_reference_end_ _reference_start_Ecclesiastes 12:14_reference_end_ _reference_start_Genesis 2:09_reference_end_ _reference_start_Genesis 2:17_reference_end_ _reference_start_Genesis 3:05_reference_end_ _reference_start_Genesis 3:22_reference_end_ _reference_start_Numbers 24:13_reference_end_ _reference_start_Proverbs 2:09_reference_end_ _reference_start_Psalms 14:01_reference_end_ _reference_start_Psalms 25:07_reference_end_ _reference_start_Psalms 34:09_reference_end_ _reference_start_Psalms 35:12_reference_end_ _refer ence_start_Psalms 37:27_reference_end_ _reference_start_Psalms 38:21_reference_end_ _reference_start_Psalms 52:05_reference_end_ _reference_start_Psalms 52:11_reference_end_ _reference_start_Psalms 53:02_reference_end_ _reference_start_Psalms 53:04_reference_end_ _reference_start_Psalms 54:08_reference_end_ _reference_start_Psalms 69:17_reference_end_ _reference_start_Psalms 73:01_reference_end_ _reference_start_Psalms 86:05_reference_end_ _reference_start_Psalms 100:05_reference_end_ _reference_start_Psalms 106:01_reference_end_ _reference_start_Psalms 107:01_reference_end_ _reference_start_Psalms 109:05_reference_end_ _reference_start_Psalms 118:01_reference_end_ _reference_start_Psalms 118:29_reference_end_ _reference_start_Psalms 119:68_reference_end_ _reference_start_Psalms 125:04_reference_end_ _reference_start_Psalms 135:03_reference_end_ _reference_start_Psalms 136:01_reference_end_ _reference_start_Psalms 143:10_reference_end_ _reference_start_Psalms 145:07_reference_end_ \cme pleasant, agreeable to the senses \cmf plesant, agréable au sens _reference_start_1 Samuel 8:16_reference_end_ _reference_start_1 Samuel 9:02_reference_end_ _reference_start_Daniel 1:04_reference_end_ _reference_start_Daniel 1:15_reference_end_ _reference_start_Deuteronomy 6:10_reference_end_ _reference_start_Deuteronomy 8:12_reference_end_ _reference_start_Ecclesiastes 2:01_reference_end_ _reference_start_Esther 1:11_reference_end_ _reference_start_Esther 2:02_reference_end_ _reference_start_Esther 2:03_reference_end_ _reference_start_Esther 2:07_reference_end_ _reference_start_Esther 8:05_reference_end_ _reference_start_Exodus 2:02_reference_end_ _reference_start_Genesis 6:02_reference_end_ _reference_start_Genesis 26:07_reference_end_ _reference_start_Hosea 4:13_reference_end_ _reference_start_Jeremiah 6:20_reference_end_ _reference_start_Joshua 7:21_reference_end_ _reference_start_Proverbs 24:13_reference_end_ \cme rich, valuable \cmf rich, important, préciux _reference_start_1 Chronicles 29:28_reference_end_ _referen ce_start_Genesis 15:15_reference_end_ _reference_start_Genesis 25:08_reference_end_ _reference_start_Genesis 30:20_reference_end_ _reference_start_Leviticus 27:10_reference_end_ _reference_start_Leviticus 27:12_reference_end_ _reference_start_Leviticus 27:14_reference_end_ _reference_start_Leviticus 27:33_reference_end_ _reference_start_Proverbs 31:18_reference_end_ \cme to act rightly, ethically, please God \cmf agir moralement, correctement, plaire Dieu _reference_start_1 Kings 3:09_reference_end_ _reference_start_1 Kings 8:18_reference_end_ _reference_start_1 Kings 8:36_reference_end_ _reference_start_1 Kings 14:13_reference_end_ _reference_start_1 Samuel 12:23_reference_end_ _reference_start_2 Chronicles 6:08_reference_end_ _reference_start_2 Kings 10:30_reference_end_ _reference_start_2 Samuel 14:17_reference_end_ _reference_start_2 Samuel 19:36_reference_end_ _reference_start_Proverbs 4:02_reference_end_ _reference_start_Proverbs 12:02_reference_end_ _reference_start_Psalms 25:08_reference_end_ _ref erence_start_Psalms 34:15_reference_end_ _reference_start_Psalms 36:05_reference_end_ _reference_start_Psalms 37:03_reference_end_ _reference_start_Psalms 92:02_reference_end_ _reference_start_Psalms 119:039_reference_end_ \cme to be good, well (with) \cmf aller bien _reference_start_1 Samuel 16:16_reference_end_ _reference_start_1 Samuel 20:12_reference_end_ _reference_start_1 Samuel 24:20_reference_end_ _reference_start_Deuteronomy 5:29_reference_end_ _reference_start_Numbers 11:18_reference_end_ _reference_start_Psalms 119:071_reference_end_ _reference_start_Psalms 128:02_reference_end_ _reference_start_Ruth 3:13_reference_end_ \cme to be pleasant, delightful \cmf être agréable, un délice _reference_start_1 Samuel 2:24_reference_end_ _reference_start_2 Samuel 11:02_reference_end_ _reference_start_Numbers 24:05_reference_end_ \cme to be pleasing, agreeable \cmf être agéable, plaire _reference_start_1 Kings 1:06_reference_end_ _reference_start_1 Samuel 16:12_reference_end_ _reference_start_2 Samuel 3:13_reference_end_ _reference_start_2 Samuel 3:19_reference_end_ _reference_start_2 Samuel 3:36_reference_end_ _reference_start_2 Samuel 13:22_reference_end_ _reference_start_Esther 1:19_reference_end_ _reference_start_Esther 3:09_reference_end_ _reference_start_Esther 5:04_reference_end_ _reference_start_Esther 5:08_reference_end_ _reference_start_Esther 7:03_reference_end_ _reference_start_Esther 8:05_reference_end_ _reference_start_Esther 9:13_reference_end_ _reference_start_Genesis 24:16_reference_end_ _reference_start_Numbers 24:01_reference_end_ \cme welfare, prosperity, happiness \cmf bien-être, prosperité, contentement _reference_start_1 Kings 1:42_reference_end_ _reference_start_1 Kings 10:07_reference_end_ _reference_start_2 Chronicles 7:10_reference_end_ _reference_start_Deuteronomy 6:24_reference_end_ _reference_start_Deuteronomy 26:11_reference_end_ _reference_start_Deuteronomy 28:11_reference_end_ _reference_start_Deuteronomy 30:09_reference_end_ _reference_start_Ecclesiastes 3:13_reference_end_ _reference_start_Ecclesiastes 8:12_reference_end_ _reference_start_Ecclesiastes 8:13_reference_end_ _reference_start_Esther 10:03_reference_end_ _reference_start_Genesis 50:20_reference_end_ _reference_start_Numbers 10:29_reference_end_ _reference_start_Numbers 10:32_reference_end_ _reference_start_Numbers 14:07_reference_end_ _reference_start_Psalms 4:07_reference_end_ _reference_start_Psalms 16:02_reference_end_ _reference_start_Psalms 21:04_reference_end_ _reference_start_Psalms 23:06_reference_end_ _reference_start_Psalms 25:13_reference_end_ _reference_start_Psalms 34:11_reference_end_ _reference_start_Psalms 34:13_reference_end_ _reference_start_Psalms 39:03_reference_end_ _reference_start_Psalms 65:12_reference_end_ _reference_start_Psalms 73:28_reference_end_ _reference_start_Psalms 84:12_reference_end_ _reference_start_Psalms 85:13_reference_end_ _reference_start_Psalms 122:09_reference_end_ _reference_start_Psalms 128:05_reference_end_ _reference_start_Psalms 133:01_reference_end_ ?tfWH:,vhZL>0"zl^PB4& Ci BiwH Aiv @iv ?iT >i? =i% <i ;i :i 9i 8i 7i 6i 5i 4i 3i  2i  1i- 0i- /i .i -i ,i +i *i  )i  (i  'i  &i  %i  $i  #i  "iwz !iwA i i i i i i  i iA i i/ i  i i $ i B i i i i) i) i) i( i i i i i i i  ?tfXJ<. xj\N@2$|n`RD6( i i  i  i  ~i ( }ip |i {i zi  yij xi- wi  vi1 ui)# ti si  ri  qi pi  oi ni  mi  li  ki  jim iiD hi gi  fi  eiV di6 ci bi ai  `i  _i  ^i  ]i$ \i  [iA Zi Yi Xi2 Wi Vi Ui Ti Si Ri Qi  Pi ' Oi & Ni  Mi  Li  Ki Ji  Ii ( Hi $ Gi Fi  Ei  Di  ?tfXJ<. wi[M?1#zl^PB4& Ai @i ?i >i =i <i  ;i :i 9i' 8i 7i  6i  5i  4i  3i  2i 8 1i " 0iwB /i  .i -i, ,i  +iwD *io )i (ik 'ih &ig %i $i #i- "i !i i i  i  i  i  i B i  i i  i) i i i i i i i i i i i  i  i i i i i i i i# ?tfXJ<. tfXJ<. xj\N@2$ i  i  ~i }i  |i  {i $ zi  yi  xi wi! vi ui ti si ri qi pi  oi ni mi li ki ji ii hi gi fi ei di ci bi ai `i _i ^i  ]i  \i [i Zi Yi Xi} WiwD Viv Uiv Tim Sik Rij Qid PiV OiI NiE Mi6 Li5 Ki5 Ji4 Ii4 Hi& Gi% Fi# Ei" Di Ci Bi T $+29@GNU\cjqx  '.5<CJQX_fmt{<CJQX_fmt{  M ǂ ʂK ߂ I ႛ ₛG ゜ 䂜E 낝 C  A ? ~ = | ; z 9 'x (7 )v 15 2t 33 =* Bi H( Lg S& Ue [$ `c k" la _  ]  [  Y  W  U  S  Q  O  M ǂ ʂK ߂ I ႛ ₛG ゜ 䂜E 낝 C  A ? ~ = | ; z 9 'x (7 )v 15 2t 33 iU =iT <iI ;iA :i' 9i" 8i" 7i 6i 5i 4i 3i 2i 1i 0i  /i2 .i  -i ,i +i *i )i (i 'i &i %i  $i * #i "i !i i i i i i i i  i $ i  i  i  i  i i  i  i i iwG i  i i  i  i  iw' i\ i% i$ i" i i  i i $ ?rcUG9+ugYK=/!yk]OA3% ~j }j2 |j {j zj yj' xj' wj" vj! uj! tj! sj  rj $ qj  pj oj nj mj lj kj  jj  ij  hj  gj  fj  ej  dj  cj  bjT aj `j  _j ^j ]j \j" [j! Zj! Yj! Xj! Wj Vj  Uj; Tj9 Sj8 Rj3 Qj Pj+ Oj! Nj! Mj! Lj  Kj  Jj Ij Hj  Gj ; Fj / Ej ! Dj* Cj Bj Ai @i 'une personne _reference_start_Esther 4:08_reference_end_ _reference_start_Esther 8:03_reference_end_ _reference_start_Genesis 42:21_reference_end_ \cme ask for favor from God \cmf demander de la faveur de Dieu _reference_start_1 Kings 8:33_reference_end_ _reference_start_1 Kings 8:47_reference_end_ _reference_start_1 Kings 8:59_reference_end_ _reference_start_1 Kings 9:03_reference_end_ _reference_start_Psalms 30:09_reference_end_ _reference_start_Psalms 142:02_reference_end_ \cme favorable attitude of God to person \cmf attitude favorable de Dieu envers une personne _reference_start_2 Samuel 12:22_reference_end_ _reference_start_2 Samuel 12:22_reference_end_ _reference_start_Exodus 33:19_reference_end_ _reference_start_Genesis 33:05_reference_end_ _reference_start_Genesis 33:11_reference_end_ _reference_start_Genesis 43:29_reference_end_ _reference_start_Psalms 30:11_reference_end_ _reference_start_Psalms 51:03_reference_end_ _reference_start_Psalms 56:02_reference_end_ _reference_start_Psalms 57:02_ref erence_end_ _reference_start_Psalms 59:06_reference_end_ \cme favorable attitude of God toward people \cmf attitude favorable de Dieu envers les humains _reference_start_2 Samuel 15:25_reference_end_ _reference_start_Daniel 6:12_reference_end_ _reference_start_Exodus 33:12_reference_end_ _reference_start_Exodus 33:13_reference_end_ _reference_start_Exodus 33:16_reference_end_ _reference_start_Exodus 33:17_reference_end_ _reference_start_Exodus 34:09_reference_end_ _reference_start_Genesis 6:08_reference_end_ _reference_start_Genesis 19:19_reference_end_ _reference_start_Numbers 11:11_reference_end_ _reference_start_Numbers 11:15_reference_end_ _reference_start_Proverbs 3:04_reference_end_ _reference_start_Psalms 84:12_reference_end_ \cme favorable attitude of people \cmf attitude favorable des humains _reference_start_1 Kings 11:19_reference_end_ _reference_start_1 Samuel 1:18_reference_end_ _reference_start_1 Samuel 16:22_reference_end_ _reference_start_1 Samuel 20:03_reference_end_ _reference_start_1 Sa muel 20:29_reference_end_ _reference_start_1 Samuel 25:08_reference_end_ _reference_start_1 Samuel 27:05_reference_end_ _reference_start_2 Samuel 14:22_reference_end_ _reference_start_2 Samuel 16:04_reference_end_ _reference_start_Daniel 4:24_reference_end_ _reference_start_Esther 2:15_reference_end_ _reference_start_Esther 2:17_reference_end_ _reference_start_Esther 5:02_reference_end_ _reference_start_Exodus 3:21_reference_end_ _reference_start_Exodus 11:03_reference_end_ _reference_start_Exodus 12:36_reference_end_ _reference_start_Genesis 32:06_reference_end_ _reference_start_Genesis 33:08_reference_end_ _reference_start_Genesis 33:10_reference_end_ _reference_start_Genesis 33:15_reference_end_ _reference_start_Genesis 34:11_reference_end_ _reference_start_Genesis 39:04_reference_end_ _reference_start_Genesis 39:21_reference_end_ _reference_start_Proverbs 3:04_reference_end_ _reference_start_Proverbs 13:13_reference_end_ _reference_start_Ruth 2:02_reference_end_ \cme favorable attitude of person to person \cmf attitude favorable d'une personne envers une personne _reference_start_Deuteronomy 28:50_reference_end_ _reference_start_Proverbs 14:21_reference_end_ _reference_start_Proverbs 15:31_reference_end_ _reference_start_Proverbs 19:17_reference_end_ \cme pleasing appearance and actions \cmf figure et comportement qui plainent _reference_start_Proverbs 22:11_reference_end_ _reference_start_Proverbs 31:30_reference_end_ _reference_start_Psalms 45:03_reference_end_ \cme polite address \cmf une politesse _reference_start_Esther 5:08_reference_end_ _reference_start_Esther 7:03_reference_end_ _reference_start_Esther 8:05_reference_end_ _reference_start_Genesis 18:03_reference_end_ _reference_start_Genesis 30:27_reference_end_ _reference_start_Genesis 47:25_reference_end_ _reference_start_Genesis 47:29_reference_end_ _reference_start_Genesis 50:04_reference_end_ _reference_start_Ruth 2:10_reference_end_ _reference_start_Ruth 2:13_reference_end_ ?tfXJ<. wi[M?1#{m_QC5' =n <n ;n :n 9n 8n 7n 6n 5nA 4n" 3n" 2n 1n 0mD /m3 .m -m3 ,m +m *m )m (m 'm &m %m $m #m "m3 !m m m l l l  l  l k k kt kp ko kg kV k  k  k  k" k j j j2 j/ j/ j j j j j j- j j j j ,k// kgrace, compassiongrace, compassion\h €ûFnax \f grâce \cme favorable attitude of God to people \cmf attitude favorable de Dieu envers les humains _reference_start_Exodus 22:27_reference_end_ _reference_start_Exodus 34:06_reference_end_ _reference_start_Jonah 4:02_reference_end_ _reference_start_Nehemiah 9:17_reference_end_ _reference_start_Nehemiah 9:31_reference_end_ _reference_start_Psalms 86:15_reference_end_ _reference_start_Psalms 103:08_reference_end_ _reference_start_Psalms 111:04_reference_end_ _reference_start_Psalms 112:04_reference_end_ _reference_start_Psalms 116:05_reference_end_ _reference_start_Psalms 145:08_reference_end_ \cme favorable attitude of people to people \cmf attitude favorable d'une personne envers une personne _reference_start_2 Chronicles 30:09_reference_end_ km;mguiltguilt\h £AHA' \f culpabilité \cme compensation \cmf compensation _reference_start_Numbers 5:07_reference_end_ _reference_start_Numbers 5:08_reference_end_ \cme guilt \cmf culpabilité _reference_start_Genesis 26:10_referen Rl}lguidanceguidance\h hAlûÐbüxaGt \f direction \cme counsel, direction \cmf conseil, direction _reference_start_Proverbs 1:05_reference_end_ _reference_start_Proverbs 11:14_reference_end_ _reference_start_Proverbs 12:05_reference_end_ _reference_start_Proverbs 20:18_reference_end_ _reference_start_Proverbs 24:06_reference_end_ce_end_ _reference_start_Jeremiah 51:05_reference_end_ _reference_start_Proverbs 14:09_reference_end_ \cme guilt offering (given along with compensation) \cmf sacrifice pour le péché (accompagné de réparation) _reference_start_Leviticus 5:06_reference_end_ _reference_start_Leviticus 5:07_reference_end_ _reference_start_Leviticus 5:15_reference_end_ _reference_start_Leviticus 5:16_reference_end_ _reference_start_Leviticus 5:19_reference_end_ _reference_start_Leviticus 6:10_reference_end_ _reference_start_Leviticus 19:21_reference_end_ _reference_start_Numbers 6:12_reference_end_ _reference_start_Numbers 18:09_reference_end_ \cme incur guilt, penalty \cmf culpabilité du péché _reference_start_Psalms 51:07_reference_end_ _reference_start_Psalms 1:1_reference_end_ \cme miss the goal of right/duty - vs God (& man) \cmf manquer de faire juste/le devoire envers Dieu (et homme) _reference_start_Psalms 51:11_reference_end_ \cme offense, fault \cmf offence, faute _reference_start_Psalms 68:22_reference_end_ Qn))cnguilty (to be)guilty (to be)\h £aHA' \f coupable, être coupable \cme be held guilty \cmf considérer coupable _reference_start_Proverbs 30:10_reference_end_ _reference_start_Psalms 5:11_reference_end_ _reference_start_Psalms 34:22_reference_end_ _reference_start_Psalms 34:23_reference_end_ \cme be or become guilty \cmf être ou devenir coupable _reference_start_Jude 21:23_reference_end_ _reference_start_Leviticus 4:13_reference_end_ _reference_start_Leviticus 4:22_reference_end_ _reference_start_Leviticus 4:27_reference_end_ _reference_start_Leviticus 5:02_reference_end_ _reference_start_Leviticus 5:17_reference_end_ _reference_start_Leviticus 5:23_reference_end_ \cme commit an offence, do a wrong \cmf commetre une offence, faire tort _reference_start_Leviticus 5:19_reference_end_ _reference_start_Numbers 5:07_reference_end_ ference_start_Exodus 1:10_reference_end_ _reference_start_Exodus 23:05_reference_end_ _reference_start_Proverbs 27:06_reference_end_ _reference_start_Psalms 18:41_reference_end_ _reference_start_Psalms 55:13_reference_end_ \cme avoid \cmf éviter _reference_start_Proverbs 11:15_reference_end_ \cme dislike \cmf ne pas aimer _reference_start_Genesis 26:27_reference_end_ _reference_start_Proverbs 19:07_reference_end_ _reference_start_Proverbs 25:17_reference_end_ \cme dislike extreemly, abhor \cmf détester _reference_start_2 Samuel 13:15_reference_end_ _reference_start_2 Samuel 13:15_reference_end_ _reference_start_2 Samuel 13:22_reference_end_ _reference_start_2 Samuel 19:07_reference_end_ _reference_start_2 Samuel 22:18_reference_end_ _reference_start_Deuteronomy 32:41_reference_end_ _reference_start_Ecclesiastes 3:08_reference_end_ _reference_start_Esther 9:01_reference_end_ _reference_start_Esther 9:05_reference_end_ _reference_start_Exodus 18:21_reference_end_ _reference_start_Exodus 20:05_reference_end_ _reference_start_Genesis 24:60_reference_end_ _reference_start_Genesis 37:04_reference_end_ _reference_start_Genesis 37:05_reference_end_ _reference_start_Genesis 37:08_reference_end_ _reference_start_Numbers 10:35_reference_end_ _reference_start_Proverbs 6:16_reference_end_ _reference_start_Proverbs 8:13_reference_end_ _reference_start_Proverbs 9:08_reference_end_ _reference_start_Proverbs 12:01_reference_end_ _reference_start_Proverbs 25:21_reference_end_ _reference_start_Psalms 25:19_reference_end_ _reference_start_Psalms 34:22_reference_end_ _reference_start_Psalms 45:08_reference_end_ _reference_start_Psalms 139:21_reference_end_ _reference_start_Psalms 139:22_reference_end_ \cme prefer less or reject (comparatively) \cmf préférer moins ou rejeter (comparaison) _reference_start_Deuteronomy 21:15_reference_end_ _reference_start_Deuteronomy 21:17_reference_end_ _reference_start_Genesis 29:31_reference_end_ _reference_start_Genesis 29:33_reference_end_ _reference_start_Proverbs 13:24_reference_end_ /p55pHe who lives foreverhe who lives forever\h 'AmülAv / £AlôvAh yÿÿEx, \f Celui qui vit à jamais \cme He who lives forever \cmf Celui qui vit à jamais _reference_start_Daniel 4:31_reference_end_ _reference_start_Daniel 12:07_reference_end_ _reference_start_Deuteronomy 32:40_reference_end_oo3ohate (to)hate (to)\h hA'ÌniW \f haïre \cme abhor, dislike extreemly \cmf détester _reference_start_2 Samuel 13:15_reference_end_ _reference_start_Ecclesiastes 9:01_reference_end_ _reference_start_Proverbs 15:17_reference_end_ _reference_start_Proverbs 26:26_reference_end_ _reference_start_Psalms 139:22_reference_end_ \cme an enemy \cmf un énemie _reference_start_2 Samuel 19:07_reference_end_ _reference_start_2 Samuel 22:41_reference_end_ _reference_start_Esther 9:16_reference_end_ _re ?seWI;-wi[M?1#yk]OA3% |q  {q  zq  yq  xq wq . vq  uq  tq  sq  rq qq  pp ( op  np mo  lo! ko jo io ho go fo- eo" do co bo  ao  `o _o ^o # ]o% \o% [o% Zo< Yo Xo Wo  Vo  Uo To ) So  Ro  Qo  Po  Oo  No Mo Lo Ko  Jo7 Io) Ho Go Fo Eo  Do ) Co  Bo Ao @o ?o  >o  4_reference_end_ _reference_start_Nehemiah 12:46_reference_end_ \cme chief, leader \cmf chef _reference_start_Ezra 5:10_reference_end_ \cme chief, leader, elder (man) \cmf chef, ancien (une personne) _reference_start_1 Chronicles 16:05_reference_end_ _reference_start_1 Chronicles 26:10_reference_end_ _reference_start_1 Chronicles 29:11_reference_end_ _reference_start_1 Kings 8:01_reference_end_ _reference_start_1 Kings 21:09_reference_end_ _reference_start_1 Kings 21:12_reference_end_ _reference_start_1 Samuel 15:17_reference_end_ _reference_start_2 Samuel 22:44_reference_end_ _reference_start_Exodus 18:25_reference_end_ _reference_start_Numbers 10:04_reference_end_ _reference_start_Numbers 14:04_reference_end_ _reference_start_Psalms 110:06_reference_end_ \cme chief, most important (place, thing, etc) \cmf chef, le plus important (lieu, chose, etc) _reference_start_1 Samuel 9:22_reference_end_ _reference_start_1 Samuel 28:02_reference_end_ \cme figurative use \cmf sense figuré _reference_start_1 Chronic les 10:09_reference_end_ _reference_start_1 Kings 2:32_reference_end_ _reference_start_1 Kings 2:33_reference_end_ _reference_start_1 Kings 2:37_reference_end_ _reference_start_1 Kings 2:44_reference_end_ _reference_start_1 Kings 8:32_reference_end_ _reference_start_1 Samuel 25:39_reference_end_ _reference_start_1 Samuel 25:39_reference_end_ _reference_start_2 Samuel 1:16_reference_end_ _reference_start_2 Samuel 3:29_reference_end_ _reference_start_Ecclesiastes 2:14_reference_end_ _reference_start_Esther 9:25_reference_end_ _reference_start_Genesis 1:1_reference_end_ _reference_start_Genesis 40:13_reference_end_ _reference_start_Genesis 40:19_reference_end_ _reference_start_Genesis 40:20_reference_end_ _reference_start_Genesis 49:26_reference_end_ _reference_start_Proverbs 25:22_reference_end_ _reference_start_Psalms 3:04_reference_end_ _reference_start_Psalms 40:13_reference_end_ _reference_start_Psalms 60:09_reference_end_ _reference_start_Psalms 110:07_reference_end_ \cme head of a family \cmf chef d'u ne famille _reference_start_1 Chronicles 9:09_reference_end_ _reference_start_1 Chronicles 9:13_reference_end_ _reference_start_1 Chronicles 9:17_reference_end_ _reference_start_1 Chronicles 9:33_reference_end_ _reference_start_1 Chronicles 9:34_reference_end_ _reference_start_1 Chronicles 23:08_reference_end_ _reference_start_1 Chronicles 23:09_reference_end_ _reference_start_1 Chronicles 23:11_reference_end_ _reference_start_1 Chronicles 23:16_reference_end_ _reference_start_1 Chronicles 23:17_reference_end_ _reference_start_1 Chronicles 23:18_reference_end_ _reference_start_1 Chronicles 23:19_reference_end_ _reference_start_1 Chronicles 23:20_reference_end_ _reference_start_1 Chronicles 23:24_reference_end_ _reference_start_1 Chronicles 24:04_reference_end_ _reference_start_Exodus 6:14_reference_end_ _reference_start_Exodus 6:25_reference_end_ _reference_start_Numbers 7:02_reference_end_ \cme leader or divion of an army \cmf chef ou section de l'armée _reference_start_1 Chronicles 11:06_reference_end_  _reference_start_1 Samuel 11:11_reference_end_ _reference_start_1 Samuel 13:17_reference_end_ _reference_start_1 Samuel 13:18_reference_end_ _reference_start_2 Samuel 23:08_reference_end_ _reference_start_2 Samuel 23:13_reference_end_ _reference_start_2 Samuel 23:18_reference_end_ \cme metonomy for hair or person or life \cmf métonomie pour les cheveux ou une personne ou la vie _reference_start_1 Chronicles 12:20_reference_end_ _reference_start_1 Samuel 28:02_reference_end_ _reference_start_2 Samuel 2:16_reference_end_ _reference_start_2 Samuel 14:26_reference_end_ _reference_start_2 Samuel 18:09_reference_end_ _reference_start_Daniel 1:10_reference_end_ \cme mind, where dreams and visions happen \cmf esprit, où on a des visions et rêves _reference_start_Daniel 2:28_reference_end_ _reference_start_Daniel 4:02_reference_end_ _reference_start_Daniel 4:07_reference_end_ _reference_start_Daniel 7:01_reference_end_ _reference_start_Daniel 7:15_reference_end_ \cme physical head of a body \cmf la tête physi que du corps _reference_start_Daniel 2:32_reference_end_ _reference_start_Daniel 2:38_reference_end_ _reference_start_Daniel 3:27_reference_end_ _reference_start_Daniel 4:10_reference_end_ _reference_start_Daniel 7:06_reference_end_ _reference_start_Daniel 7:09_reference_end_ _reference_start_Daniel 7:20_reference_end_ \cme physical head of a person or animal \cmf la tête physique d'une personne ou un animal _reference_start_1 Kings 20:31_reference_end_ _reference_start_1 Kings 20:32_reference_end_ _reference_start_1 Samuel 1:11_reference_end_ _reference_start_1 Samuel 4:12_reference_end_ _reference_start_1 Samuel 5:04_reference_end_ _reference_start_1 Samuel 10:01_reference_end_ _reference_start_1 Samuel 14:45_reference_end_ _reference_start_1 Samuel 17:05_reference_end_ _reference_start_1 Samuel 17:38_reference_end_ _reference_start_1 Samuel 17:46_reference_end_ _reference_start_1 Samuel 17:51_reference_end_ _reference_start_1 Samuel 17:54_reference_end_ _reference_start_1 Samuel 17:57_reference_end_ _ reference_start_1 Samuel 29:04_reference_end_ _reference_start_1 Samuel 31:09_reference_end_ _reference_start_2 Samuel 1:02_reference_end_ _reference_start_2 Samuel 1:10_reference_end_ _reference_start_2 Samuel 3:08_reference_end_ _reference_start_2 Samuel 4:07_reference_end_ _reference_start_2 Samuel 4:08_reference_end_ _reference_start_2 Samuel 4:12_reference_end_ _reference_start_2 Samuel 12:30_reference_end_ _reference_start_2 Samuel 13:19_reference_end_ _reference_start_2 Samuel 14:26_reference_end_ _reference_start_2 Samuel 15:30_reference_end_ _reference_start_2 Samuel 15:32_reference_end_ _reference_start_2 Samuel 16:09_reference_end_ _reference_start_2 Samuel 20:21_reference_end_ _reference_start_2 Samuel 20:22_reference_end_ _reference_start_Deuteronomy 28:13_reference_end_ _reference_start_Deuteronomy 28:23_reference_end_ _reference_start_Deuteronomy 28:44_reference_end_ _reference_start_Esther 2:17_reference_end_ _reference_start_Esther 6:08_reference_end_ _reference_start_Esther 6:12_referenc e_end_ _reference_start_Exodus 12:09_reference_end_ _reference_start_Genesis 3:15_reference_end_ _reference_start_Genesis 40:16_reference_end_ _reference_start_Genesis 40:17_reference_end_ _reference_start_Genesis 48:14_reference_end_ _reference_start_Genesis 48:17_reference_end_ _reference_start_Genesis 48:18_reference_end_ _reference_start_Jonah 2:06_reference_end_ _reference_start_Jonah 4:06_reference_end_ _reference_start_Jonah 4:08_reference_end_ _reference_start_Leviticus 5:08_reference_end_ _reference_start_Psalms 23:05_reference_end_ \cme top of something \cmf le sommet de qqch _reference_start_1 Kings 7:16_reference_end_ _reference_start_1 Kings 7:17_reference_end_ _reference_start_1 Kings 7:18_reference_end_ _reference_start_1 Kings 7:19_reference_end_ _reference_start_1 Kings 7:22_reference_end_ _reference_start_1 Kings 7:35_reference_end_ _reference_start_1 Kings 7:41_reference_end_ _reference_start_1 Kings 8:08_reference_end_ _reference_start_1 Kings 10:19_reference_end_ _reference_start_1 Kings 18:42_reference_end_ _reference_start_1 Samuel 26:13_reference_end_ _reference_start_2 Samuel 2:25_reference_end_ _reference_start_2 Samuel 5:24_reference_end_ _reference_start_2 Samuel 15:32_reference_end_ _reference_start_2 Samuel 16:01_reference_end_ _reference_start_Deuteronomy 34:01_reference_end_ _reference_start_Esther 5:02_reference_end_ _reference_start_Exodus 17:09_reference_end_ _reference_start_Exodus 17:10_reference_end_ _reference_start_Exodus 19:20_reference_end_ _reference_start_Exodus 24:17_reference_end_ _reference_start_Genesis 8:05_reference_end_ _reference_start_Genesis 11:04_reference_end_ _reference_start_Genesis 28:12_reference_end_ _reference_start_Genesis 28:18_reference_end_ _reference_start_Genesis 47:31_reference_end_ _reference_start_Numbers 14:40_reference_end_ _reference_start_Numbers 14:44_reference_end_ _reference_start_Numbers 20:28_reference_end_ _reference_start_Numbers 21:20_reference_end_ \cme totality \cmf la totalité _reference_start_Daniel 7:01_reference_end_ TTqoqheadhead\h H'Or \f tête \cme chief priest, leading priest or levite \cmf souverain sacrificateur, ou sacrificateur ou lévite important _reference_start_1 Chronicles 27:05_reference_end_ _reference_start_2 Chronicles 19:11_reference_end_ _reference_start_2 Kings 25:18_reference_end_ _reference_start_Nehemiah 11:17_reference_end_ _reference_start_Nehemiah 12:07_reference_end_ _reference_start_Nehemiah 12:2  ?tfXJ<. xj\N@2$|n`RD6( ;q :q  9q  8q  7q  6q  5q  4q  3q  2q  1q  0q /q  .q -q ,q +q  *q  )q  (q  'q  &q  %q  $q  #q  "q  !q " q ! q  q q qn q< q( q q q1 q( q( q( q q  q q  q  q ' q ' q  q , q % q ! q  q q  q  qn q q  q q , q  ~q  }q  ?tfXJ<. xj\N@2$|n`RD6( zq  yq  xq  wq  vq uq tq  sq  rq  qq0 pq0 oq0 nq( mq( lq kq jq iq hq gq, fq eq dq  cq  bq  aq  `q  _q  ^q  ]q  \q  [q  Zq  Yq  Xq  Wq  Vq  Uq  Tq 9 Sq 6 Rq 3 Qq . Pq & Oq  Nq - Mq  Lq  Kq  Jq  Iq  Hq  Gq Fq Eq Dq Cq Bq& Aq @q ?q >q =q <q ?tfXJ<. xj\N@2$|n`RD6( 9r 8r 7r  6r  5r 4r 3r  2r  1r  0r  /r  .r  -r  ,r  +r ! *r  )r  (r  'r  &r  %r  $r  #r  "r / !r r) r- r r r r r r r r  r  q q q q, q( q/ q q q  q q q q q q q" q  q  q  q  q  q * q  ~q  }q ) |q # {q  s 27:41_reference_end_ \cme believe, have faith in \cmf croire (en) _reference_start_Psalms 28:07_reference_end_ \cme figurative expression (strength, conscience, loyalty, etc) \cmf sens figuré _reference_start_1 Kings 8:47_reference_end_ _reference_start_1 Samuel 4:20_reference_end_ _reference_start_1 Samuel 10:26_reference_end_ _reference_start_1 Samuel 17:32_reference_end_ _reference_start_1 Samuel 21:13_reference_end_ _reference_start_1 Samuel 24:06_reference_end_ _reference_start_1 Samuel 28:05_reference_end_ _reference_start_2 Samuel 7:27_reference_end_ _reference_start_2 Samuel 13:20_reference_end_ _reference_start_2 Samuel 13:33_reference_end_ _reference_start_2 Samuel 14:01_reference_end_ _reference_start_2 Samuel 15:06_reference_end_ _reference_start_2 Samuel 15:13_reference_end_ _reference_start_2 Samuel 17:10_reference_end_ _reference_start_2 Samuel 18:03_reference_end_ _reference_start_2 Samuel 19:08_reference_end_ _reference_start_2 Samuel 19:15_reference_end_ _reference_start_2 Samuel 24:1 0_reference_end_ _reference_start_Daniel 1:08_reference_end_ _reference_start_Daniel 10:12_reference_end_ _reference_start_Ecclesiastes 9:01_reference_end_ _reference_start_Exodus 9:21_reference_end_ _reference_start_Exodus 14:05_reference_end_ _reference_start_Genesis 20:05_reference_end_ _reference_start_Genesis 31:26_reference_end_ _reference_start_Proverbs 11:12_reference_end_ _reference_start_Psalms 61:03_reference_end_ \cme innermost, essential, central part of something \cmf partie la plus intime et centrale de qqch _reference_start_1 Chronicles 17:19_reference_end_ _reference_start_1 Chronicles 22:19_reference_end_ _reference_start_1 Chronicles 28:09_reference_end_ _reference_start_1 Chronicles 29:09_reference_end_ _reference_start_1 Chronicles 29:17_reference_end_ _reference_start_1 Chronicles 29:18_reference_end_ _reference_start_1 Chronicles 29:19_reference_end_ _reference_start_1 Kings 2:04_reference_end_ _reference_start_1 Kings 3:06_reference_end_ _reference_start_1 Kings 8:23_reference_end_  _reference_start_1 Kings 8:38_reference_end_ _reference_start_1 Kings 8:39_reference_end_ _reference_start_1 Kings 8:48_reference_end_ _reference_start_1 Kings 8:58_reference_end_ _reference_start_1 Kings 8:61_reference_end_ _reference_start_1 Kings 11:02_reference_end_ _reference_start_1 Kings 11:03_reference_end_ _reference_start_1 Kings 11:04_reference_end_ _reference_start_1 Kings 11:09_reference_end_ _reference_start_1 Samuel 16:07_reference_end_ _reference_start_1 Samuel 17:28_reference_end_ _reference_start_1 Samuel 25:25_reference_end_ _reference_start_Deuteronomy 4:11_reference_end_ _reference_start_Deuteronomy 28:47_reference_end_ _reference_start_Exodus 15:08_reference_end_ _reference_start_Genesis 6:05_reference_end_ _reference_start_Genesis 8:21_reference_end_ _reference_start_Jonah 2:04_reference_end_ _reference_start_Proverbs 3:03_reference_end_ _reference_start_Proverbs 3:05_reference_end_ _reference_start_Proverbs 22:11_reference_end_ _reference_start_Proverbs 30:19_reference_end_ _refer ence_start_Psalms 7:11_reference_end_ _reference_start_Psalms 17:03_reference_end_ _reference_start_Psalms 24:04_reference_end_ _reference_start_Psalms 28:03_reference_end_ _reference_start_Psalms 31:25_reference_end_ _reference_start_Psalms 32:11_reference_end_ _reference_start_Psalms 46:03_reference_end_ _reference_start_Psalms 51:12_reference_end_ _reference_start_Psalms 119:002_reference_end_ _reference_start_Psalms 119:007_reference_end_ _reference_start_Psalms 119:036_reference_end_ _reference_start_Psalms 119:145_reference_end_ _reference_start_Psalms 139:23_reference_end_ \cme organ heart, and/or thorax of body \cmf organ physique, et/ou thorax du corps _reference_start_2 Kings 9:24_reference_end_ _reference_start_2 Samuel 18:14_reference_end_ _reference_start_Exodus 28:29_reference_end_ _reference_start_Hosea 13:08_reference_end_ _reference_start_Jeremiah 4:19_reference_end_ _reference_start_Psalms 38:11_reference_end_ \cme part of a person that controls the body \cmf parti d'une personne qui con !trol le corps _reference_start_1 Samuel 25:37_reference_end_ \cme part of us with desires & concerns \cmf partie d'une personne avec ses désires et ses souçis _reference_start_1 Kings 8:17_reference_end_ _reference_start_1 Kings 8:18_reference_end_ _reference_start_1 Samuel 9:19_reference_end_ _reference_start_1 Samuel 9:20_reference_end_ _reference_start_1 Samuel 13:14_reference_end_ _reference_start_Daniel 11:27_reference_end_ _reference_start_Daniel 11:28_reference_end_ _reference_start_Exodus 36:02_reference_end_ _reference_start_Proverbs 14:30_reference_end_ _reference_start_Proverbs 19:21_reference_end_ \cme part of us with emotions & feelings \cmf partie d'une personne avec ses émotions et ses sentiments _reference_start_1 Kings 8:66_reference_end_ _reference_start_1 Kings 21:07_reference_end_ _reference_start_1 Samuel 1:08_reference_end_ _reference_start_1 Samuel 4:13_reference_end_ _reference_start_1 Samuel 25:36_reference_end_ _reference_start_2 Chronicles 7:10_reference_end_ _reference_start "_2 Chronicles 7:11_reference_end_ _reference_start_2 Chronicles 10:16_reference_end_ _reference_start_2 Samuel 6:16_reference_end_ _reference_start_2 Samuel 13:28_reference_end_ _reference_start_Daniel 5:20_reference_end_ _reference_start_Daniel 5:22_reference_end_ _reference_start_Daniel 8:25_reference_end_ _reference_start_Daniel 11:12_reference_end_ _reference_start_Daniel 11:25_reference_end_ _reference_start_Deuteronomy 28:65_reference_end_ _reference_start_Deuteronomy 28:65_reference_end_ _reference_start_Deuteronomy 28:67_reference_end_ _reference_start_Esther 1:10_reference_end_ _reference_start_Esther 5:09_reference_end_ _reference_start_Exodus 4:14_reference_end_ _reference_start_Genesis 6:06_reference_end_ _reference_start_Genesis 34:03_reference_end_ _reference_start_Genesis 42:28_reference_end_ _reference_start_Genesis 45:26_reference_end_ _reference_start_Genesis 50:21_reference_end_ _reference_start_Proverbs 14:13_reference_end_ _reference_start_Proverbs 18:12_reference_end_ _reference_star #t_Psalms 4:08_reference_end_ _reference_start_Psalms 19:09_reference_end_ _reference_start_Psalms 31:25_reference_end_ _reference_start_Psalms 34:19_reference_end_ _reference_start_Ruth 2:13_reference_end_ _reference_start_Ruth 3:07_reference_end_ \cme part of us with intentions & will \cmf parti d'une personne avec intentions et volonté _reference_start_1 Chronicles 17:02_reference_end_ _reference_start_1 Chronicles 22:07_reference_end_ _reference_start_1 Chronicles 28:02_reference_end_ _reference_start_1 Kings 9:03_reference_end_ _reference_start_1 Kings 9:04_reference_end_ _reference_start_1 Samuel 2:35_reference_end_ _reference_start_1 Samuel 6:06_reference_end_ _reference_start_1 Samuel 6:06_reference_end_ _reference_start_1 Samuel 7:03_reference_end_ _reference_start_1 Samuel 12:20_reference_end_ _reference_start_1 Samuel 12:24_reference_end_ _reference_start_1 Samuel 14:07_reference_end_ _reference_start_2 Samuel 7:03_reference_end_ _reference_start_2 Samuel 7:21_reference_end_ _reference_start_De $uteronomy 5:26_reference_end_ _reference_start_Esther 7:05_reference_end_ _reference_start_Exodus 4:21_reference_end_ _reference_start_Exodus 7:03_reference_end_ _reference_start_Exodus 7:13_reference_end_ _reference_start_Exodus 7:14_reference_end_ _reference_start_Exodus 7:22_reference_end_ _reference_start_Exodus 7:23_reference_end_ _reference_start_Exodus 8:11_reference_end_ _reference_start_Exodus 8:15_reference_end_ _reference_start_Exodus 8:28_reference_end_ _reference_start_Exodus 9:07_reference_end_ _reference_start_Exodus 9:12_reference_end_ _reference_start_Exodus 9:34_reference_end_ _reference_start_Exodus 9:35_reference_end_ _reference_start_Exodus 10:01_reference_end_ _reference_start_Exodus 10:20_reference_end_ _reference_start_Exodus 10:27_reference_end_ _reference_start_Exodus 11:10_reference_end_ _reference_start_Exodus 14:04_reference_end_ _reference_start_Exodus 14:08_reference_end_ _reference_start_Exodus 14:17_reference_end_ _reference_start_Genesis 20:06_reference_end_ _reference_st %art_Proverbs 23:19_reference_end_ _reference_start_Psalms 17:03_reference_end_ _reference_start_Psalms 57:08_reference_end_ \cme part of us with thoughts & ideas \cmf partie d'une personne avec ses pensées et ses idées _reference_start_1 Kings 3:09_reference_end_ _reference_start_1 Kings 3:12_reference_end_ _reference_start_1 Kings 5:09_reference_end_ _reference_start_1 Kings 10:02_reference_end_ _reference_start_1 Kings 10:24_reference_end_ _reference_start_2 Samuel 19:20_reference_end_ _reference_start_Daniel 2:30_reference_end_ _reference_start_Daniel 4:13_reference_end_ _reference_start_Daniel 5:21_reference_end_ _reference_start_Daniel 7:04_reference_end_ _reference_start_Deuteronomy 28:28_reference_end_ _reference_start_Deuteronomy 29:03_reference_end_ _reference_start_Ecclesiastes 1:13_reference_end_ _reference_start_Ecclesiastes 2:03_reference_end_ _reference_start_Ecclesiastes 3:11_reference_end_ _reference_start_Exodus 36:02_reference_end_ _reference_start_Genesis 31:20_reference_end_ _reference_start_Jude 16:17_reference_end_ _reference_start_Proverbs 15:28_reference_end_ _reference_start_Proverbs 18:02_reference_end_ _reference_start_Psalms 4:05_reference_end_ _reference_start_Psalms 19:15_reference_end_ _reference_start_Psalms 90:12_reference_end_ \cme the person him/herself \cmf la personne elle-même _reference_start_1 Chronicles 16:10_reference_end_ _reference_start_1 Kings 2:44_reference_end_ _reference_start_1 Samuel 2:01_reference_end_ _reference_start_1 Samuel 10:09_reference_end_ _reference_start_1 Samuel 25:31_reference_end_ _reference_start_Ecclesiastes 2:10_reference_end_ _reference_start_Exodus 9:14_reference_end_ _reference_start_Proverbs 2:02_reference_end_ _reference_start_Proverbs 3:01_reference_end_ _reference_start_Proverbs 10:08_reference_end_ _reference_start_Proverbs 15:14_reference_end_ _reference_start_Proverbs 23:17_reference_end_ _reference_start_Proverbs 24:17_reference_end_ _reference_start_Psalms 51:19_reference_end_ _reference_start_Psalms 119:080_reference_end_ ##`s## sheaven, skyheaven, sky\h €ÇyamüH \f ciel, paradis \cme hyperbole for exaultation, honor \cmf une façon d'augm *)r5rheartheart\h babl / babel / bel. \f coeur \cme (say) to oneself \cmf (dire) à soi-même _reference_start_1 Samuel 1:13_reference_end_ _reference_start_1 Samuel 27:01_reference_end_ _reference_start_Deuteronomy 18:21_reference_end_ _reference_start_Ecclesiastes 2:01_reference_end_ _reference_start_Ecclesiastes 3:18_reference_end_ _reference_start_Esther 6:06_reference_end_ _reference_start_Genesis 8:21_reference_end_ _reference_start_Genesis 17:17_reference_end_ _reference_start_Genesis 18:05_reference_end_ _reference_start_Genesis 24:45_reference_end_ _reference_start_Genesi  ?tfXJ<. xj\N@2$|m^PB4& xr$ wr  vr  ur  tr  sr  rr  qr  pr % or& nr mr  lr kr  jr  ir hrw grw$ frw erw dr3 cr. br ar `r _r ^r ]r \r [r Zr Yr Xr  Wr Vr Ur Tr/ Sr Rr  Qr  Pr  Or Nr  Mr  Lr  Kr = Jr : Ir 0 Hr ' Gr & Fr  Er  Dr  Cr  Br  Ar  @r  ?r  >r  =r  <r= ;r :r ?tfXJ<. xj\N@2$|n`RD6( 7r 6r  5r 4r 3r 2r 1r 0r /r .r -r ,r +r *r  )r  (r  'r  &r  %r  $r  #r  "r # !r  r  r  r  r  r r r" r r r r r r2 r- r* r" r r r r rC rA rA r  r r r r r  r  r  r r r $ ~r  }r  |r  {r B zr yr ?tfXJ<. xj\N@2$|n`RD6( vs9 us9 ts9 ss rs  qs ps os" ns, ms% ls ks jrwP ir3 hr gr fr er  dr cr br  ar `r  _r ^r  ]r , \r  [rZ Zr Yr Xr Wr VrA Ur Tr$ Sr Rr Qr Pr Or Nr Mr Lr Kr Jr  Ir  Hr  Gr  Fr  Er  Dr9 Cr Br Ar @r ?r >r =r <r  ;r  :r  9r # 8r " +enter l'honeur de Dieu _reference_start_Daniel 2:19_reference_end_ _reference_start_Daniel 2:19_reference_end_ _reference_start_Daniel 2:37_reference_end_ _reference_start_Daniel 2:44_reference_end_ _reference_start_Daniel 4:34_reference_end_ _reference_start_Daniel 5:23_reference_end_ \cme hyperbole for honor, exaltation \cmf une façon d'augmenter l'honeur de Dieu _reference_start_Genesis 24:07_reference_end_ _reference_start_Jonah 1:09_reference_end_ _reference_start_Psalms 8:02_reference_end_ _reference_start_Psalms 57:06_reference_end_ _reference_start_Psalms 57:11_reference_end_ _reference_start_Psalms 57:12_reference_end_ _reference_start_Psalms 119:89_reference_end_ \cme metonomy for God \cmf métonomie pour Dieu _reference_start_Daniel 4:23_reference_end_ \cme place where gods & spirits dwell \cmf lieu où habitent les dieux et les esprits _reference_start_Daniel 2:28_reference_end_ _reference_start_Daniel 4:10_reference_end_ _reference_start_Daniel 4:20_reference_end_ _reference_start_Daniel 4:3 ,4_reference_end_ _reference_start_Daniel 428:1_reference_end_ _reference_start_Daniel 6:28_reference_end_ _reference_start_Daniel 7:13_reference_end_ \cme sky vs earth \cmf le ciel en contraste avec la terre _reference_start_1 Chronicles 16:31_reference_end_ _reference_start_1 Chronicles 21:26_reference_end_ _reference_start_1 Kings 8:22_reference_end_ _reference_start_1 Kings 8:35_reference_end_ _reference_start_1 Kings 8:54_reference_end_ _reference_start_1 Samuel 17:44_reference_end_ _reference_start_1 Samuel 17:46_reference_end_ _reference_start_2 Chronicles 7:01_reference_end_ _reference_start_2 Chronicles 7:13_reference_end_ _reference_start_2 Samuel 18:09_reference_end_ _reference_start_2 Samuel 21:10_reference_end_ _reference_start_Daniel 2:38_reference_end_ _reference_start_Daniel 4:08_reference_end_ _reference_start_Daniel 4:09_reference_end_ _reference_start_Daniel 4:12_reference_end_ _reference_start_Daniel 4:17_reference_end_ _reference_start_Daniel 4:19_reference_end_ _reference_start_Daniel - 4:19_reference_end_ _reference_start_Daniel 4:20_reference_end_ _reference_start_Daniel 4:22_reference_end_ _reference_start_Daniel 4:30_reference_end_ _reference_start_Daniel 4:31_reference_end_ _reference_start_Daniel 5:21_reference_end_ _reference_start_Daniel 8:08_reference_end_ _reference_start_Daniel 9:12_reference_end_ _reference_start_Daniel 11:04_reference_end_ _reference_start_Daniel 12:07_reference_end_ _reference_start_Deuteronomy 28:12_reference_end_ _reference_start_Deuteronomy 28:23_reference_end_ _reference_start_Deuteronomy 28:24_reference_end_ _reference_start_Deuteronomy 28:26_reference_end_ _reference_start_Ecclesiastes 1:13_reference_end_ _reference_start_Ecclesiastes 2:03_reference_end_ _reference_start_Exodus 9:08_reference_end_ _reference_start_Exodus 9:10_reference_end_ _reference_start_Exodus 9:22_reference_end_ _reference_start_Exodus 9:23_reference_end_ _reference_start_Exodus 10:21_reference_end_ _reference_start_Exodus 10:22_reference_end_ _reference_start_Exodus 16:04_refer .ence_end_ _reference_start_Exodus 17:14_reference_end_ _reference_start_Exodus 20:04_reference_end_ _reference_start_Exodus 24:10_reference_end_ _reference_start_Genesis 1:20_reference_end_ _reference_start_Genesis 1:26_reference_end_ _reference_start_Genesis 1:28_reference_end_ _reference_start_Genesis 1:30_reference_end_ _reference_start_Genesis 2:19_reference_end_ _reference_start_Genesis 2:20_reference_end_ _reference_start_Genesis 6:07_reference_end_ _reference_start_Genesis 6:17_reference_end_ _reference_start_Genesis 7:03_reference_end_ _reference_start_Genesis 7:11_reference_end_ _reference_start_Genesis 7:19_reference_end_ _reference_start_Genesis 7:23_reference_end_ _reference_start_Genesis 8:02_reference_end_ _reference_start_Genesis 9:02_reference_end_ _reference_start_Genesis 19:24_reference_end_ _reference_start_Genesis 27:28_reference_end_ _reference_start_Genesis 27:39_reference_end_ _reference_start_Psalms 8:09_reference_end_ _reference_start_Psalms 19:07_reference_end_ \cme space, outer /space \cmf l'espace, l'espace créé _reference_start_1 Chronicles 16:26_reference_end_ _reference_start_1 Chronicles 29:11_reference_end_ _reference_start_1 Kings 8:27_reference_end_ _reference_start_2 Samuel 22:08_reference_end_ _reference_start_2 Samuel 22:10_reference_end_ _reference_start_Daniel 8:10_reference_end_ _reference_start_Daniel 12:03_reference_end_ _reference_start_Deuteronomy 28:62_reference_end_ _reference_start_Deuteronomy 33:13_reference_end_ _reference_start_Exodus 20:11_reference_end_ _reference_start_Genesis 1:01_reference_end_ _reference_start_Genesis 1:06_reference_end_ _reference_start_Genesis 1:07_reference_end_ _reference_start_Genesis 1:08_reference_end_ _reference_start_Genesis 1:08_reference_end_ _reference_start_Genesis 1:09_reference_end_ _reference_start_Genesis 1:14_reference_end_ _reference_start_Genesis 1:14_reference_end_ _reference_start_Genesis 1:15_reference_end_ _reference_start_Genesis 1:15_reference_end_ _reference_start_Genesis 1:17_reference_end_ _reference_st 0art_Genesis 1:17_reference_end_ _reference_start_Genesis 1:20_reference_end_ _reference_start_Genesis 2:01_reference_end_ _reference_start_Genesis 2:04_reference_end_ _reference_start_Genesis 11:04_reference_end_ _reference_start_Genesis 14:19_reference_end_ _reference_start_Genesis 14:22_reference_end_ _reference_start_Genesis 15:05_reference_end_ _reference_start_Genesis 22:17_reference_end_ _reference_start_Genesis 24:03_reference_end_ _reference_start_Genesis 26:04_reference_end_ _reference_start_Psalms 8:04_reference_end_ _reference_start_Psalms 19:02_reference_end_ _reference_start_Psalms 124:08_reference_end_ _reference_start_Psalms 139:08_reference_end_ _reference_start_Psalms 150:01_reference_end_ _reference_start_Psalms 19:02_reference_end_ \cme the four points of the compas \cmf quatre points cardinaux _reference_start_Daniel 7:02_reference_end_ _reference_start_Daniel 7:27_reference_end_ \cme where gods and spirits dwell \cmf séjour des dieux et des esprits _reference_start_1 Chronicles 21:16_reference_end_ _reference_start_1 Kings 8:23_reference_end_ _reference_start_1 Kings 8:30_reference_end_ _reference_start_1 Kings 8:32_reference_end_ _reference_start_1 Kings 8:34_reference_end_ _reference_start_1 Kings 8:36_reference_end_ _reference_start_1 Kings 8:39_reference_end_ _reference_start_1 Kings 8:45_reference_end_ _reference_start_1 Kings 8:49_reference_end_ _reference_start_1 Samuel 2:10_reference_end_ _reference_start_1 Samuel 5:12_reference_end_ _reference_start_2 Chronicles 7:14_reference_end_ _reference_start_2 Samuel 22:14_reference_end_ _reference_start_Exodus 20:22_reference_end_ _reference_start_Genesis 21:17_reference_end_ _reference_start_Genesis 22:11_reference_end_ _reference_start_Genesis 22:15_reference_end_ _reference_start_Genesis 28:12_reference_end_ _reference_start_Genesis 28:17_reference_end_ _reference_start_Genesis 49:25_reference_end_ _reference_start_Psalms 2:04_reference_end_ _reference_start_Psalms 57:04_reference_end_ _reference_start_Psalms 144:05_reference_end_ ?seWI;-wi[M?1#{m_QC5' 5s 4s 3s 2s 1s 0s /s .s -s ,s +s *s )s (s 's &s  %s  $s  #s  "s !s  s s s s s s s  s  s s s s s s s s s s s s s s& s  s  s s s . s , s 6 s # s  s  s  s ~s }s |s" {s zs ys xs wswY ?tfXJ<. xj\N@2$zl^PB4& ts ss rs  qs ps  os  ns 1 ms - ls ' ks $ js " is  hs  gs  fs  es ds cs bs as `s| _s ^s ]s \s [s Zs Ys Xs Ws  Vs Us Ts Ss Rs Qs Ps Os Ns Ms Ls Ks Js Is Hs Gs Fs! Es> Ds  Cs Bs  As  @s  ?s  >s  =s <s ;s' :s 9s 8s  7s 6s ?seWI;-wi[M?1#{m_QC5' 3v! 2v 1v 0v /v  .v # -v  ,v +v *v )v (v  'v  &v %v $v #v "u# !u# u# u u u u u u" t  t+ t) t( t' t' t' t t t  t t  t t t t t t t t t t t  t  t  t  t  ~t  }t  |s {s9 zs ys1 xs ws vs us e_start_1 Samuel 29:03_reference_end_ _reference_start_Exodus 1:15_reference_end_ _reference_start_Exodus 1:16_reference_end_ _reference_start_Exodus 1:19_reference_end_ _reference_start_Exodus 2:06_reference_end_ _reference_start_Exodus 2:07_reference_end_ _reference_start_Exodus 2:11_reference_end_ _reference_start_Exodus 2:13_reference_end_ _reference_start_Exodus 3:18_reference_end_ _reference_start_Exodus 5:03_reference_end_ _reference_start_Exodus 7:16_reference_end_ _reference_start_Exodus 9:01_reference_end_ _reference_start_Exodus 9:13_reference_end_ _reference_start_Exodus 10:03_reference_end_ _reference_start_Exodus 21:02_reference_end_ _reference_start_Genesis 14:13_reference_end_ _reference_start_Genesis 39:14_reference_end_ _reference_start_Genesis 39:17_reference_end_ _reference_start_Genesis 39:17_reference_end_ _reference_start_Genesis 40:15_reference_end_ _reference_start_Genesis 41:12_reference_end_ _reference_start_Genesis 43:32_reference_end_ _reference_start_Jonah 1:09_reference_end_ ;v;7u##;uhigh priesthigh priest\h lôdÃFgah €ÿÿEhOÐkah \f souverain sacrificateur \cme high priest, head priest \cmf souverein sacrificateur _reference_start_2 Chronicles 34:09_reference_end_ _reference_start_2 Kings 12:10_reference_end_ _reference_start_Joshua 20:06_reference_end_ _reference_start_Leviticus 21:10_reference_end_ _reference_start_Nehemiah 3:01_reference_end_ _reference_start_Nehemiah 3:20_reference_end_ _reference_start_Numbers 35:25_reference_end_ _reference_start_Numbers 35:25_reference_end_ _reference_start_Numbers 35:28_reference_end_~t]tHebrewhebrew\h yrbv \f hébreu \cme of the Hebrew people \cmf membre du peuple hébreu _reference_start_1 Samuel 4:06_reference_end_ _reference_start_1 Samuel 4:09_reference_end_ _reference_start_1 Samuel 13:03_reference_end_ _reference_start_1 Samuel 13:19_reference_end_ _reference_start_1 Samuel 14:11_reference_end_ _reference_start_1 Samuel 14:21_reference_end_ _referenc 4 7_start_1 Samuel 6:20_reference_end_ \cme attribute of God, unapproachable \cmf attribut de Dieu, non-approchable _reference_start_Daniel 4:05_reference_end_ _reference_start_Daniel 4:06_reference_end_ _reference_start_Daniel 4:15_reference_end_ _reference_start_Daniel 5:11_reference_end_ \cme attribute of God, unapproachable, inviolable \cmf attribut de Dieu, non-approchable _reference_start_1 Chronicles 16:10_reference_end_ _reference_start_1 Chronicles 16:35_reference_end_ _reference_start_1 Chronicles 29:16_reference_end_ _reference_start_Exodus 15:11_reference_end_ _reference_start_Numbers 20:13_reference_end_ _reference_start_Psalms 30:05_reference_end_ _reference_start_Psalms 33:21_reference_end_ _reference_start_Psalms 51:13_reference_end_ _reference_start_Psalms 105:43_reference_end_ \cme belonging to, dedicated to God, sacred \cmf qui appartient, qui est dédié à Dieu, sacré _reference_start_1 Chronicles 16:29_reference_end_ _reference_start_1 Kings 7:51_reference_end_ _reference_start_Daniel 812:07_reference_end_ _reference_start_Deuteronomy 28:09_reference_end_ _reference_start_Exodus 12:16_reference_end_ _reference_start_Exodus 16:23_reference_end_ _reference_start_Exodus 19:06_reference_end_ _reference_start_Exodus 22:30_reference_end_ _reference_start_Leviticus 2:03_reference_end_ _reference_start_Leviticus 25:12_reference_end_ _reference_start_Numbers 18:17_reference_end_ _reference_start_Proverbs 20:25_reference_end_ \cme ceremonially cleanse and set aside as holy \cmf puifier rituellement et connaître qqn/qqch comme saint _reference_start_1 Chronicles 9:29_reference_end_ _reference_start_1 Chronicles 22:19_reference_end_ _reference_start_1 Chronicles 23:13_reference_end_ _reference_start_1 Chronicles 23:28_reference_end_ _reference_start_1 Chronicles 28:12_reference_end_ _reference_start_1 Kings 8:04_reference_end_ _reference_start_1 Samuel 21:05_reference_end_ _reference_start_1 Samuel 21:06_reference_end_ _reference_start_1 Samuel 21:07_reference_end_ _reference_start_Leviticus 5:15_ 9reference_end_ _reference_start_Leviticus 5:16_reference_end_ _reference_start_Psalms 134:02_reference_end_ \cme Jerusalem and its hills; place made holy by God's presence \cmf Jérusalem et ses colines; lieu sanctifié par présence de Dieu _reference_start_Daniel 9:16_reference_end_ _reference_start_Daniel 9:20_reference_end_ _reference_start_Daniel 9:24_reference_end_ _reference_start_Daniel 11:45_reference_end_ _reference_start_Psalms 2:06_reference_end_ _reference_start_Psalms 3:05_reference_end_ _reference_start_Psalms 24:03_reference_end_ _reference_start_Psalms 63:03_reference_end_ _reference_start_Psalms 110:03_reference_end_ \cme messanger (angel) sent by God \cmf messager (ange) envoyé par Dieu _reference_start_Daniel 8:13_reference_end_ \cme name for God \cmf nom de Dieu _reference_start_Proverbs 9:10_reference_end_ _reference_start_Psalms 71:22_reference_end_ _reference_start_Psalms 78:41_reference_end_ \cme outer room of temple or tabernacle \cmf première chambre dans le temple ou tabernac :le _reference_start_Exodus 26:33_reference_end_ _reference_start_Exodus 28:29_reference_end_ _reference_start_Exodus 28:35_reference_end_ _reference_start_Exodus 28:43_reference_end_ _reference_start_Exodus 38:27_reference_end_ _reference_start_Leviticus 4:06_reference_end_ \cme place made holy by God's presence \cmf lieu sanctifié par la présence de Dieu _reference_start_Exodus 3:05_reference_end_ _reference_start_Exodus 15:13_reference_end_ \cme saints, chesen people of God \cmf un saint, le peuple choisi par Dieu _reference_start_Daniel 7:18_reference_end_ _reference_start_Daniel 7:21_reference_end_ _reference_start_Daniel 7:22_reference_end_ _reference_start_Daniel 7:25_reference_end_ _reference_start_Daniel 7:27_reference_end_ \cme something given by God \cmf qqch donné par Dieu _reference_start_Daniel 11:28_reference_end_ _reference_start_Daniel 11:30_reference_end_ \cme temple/tabernacle and its precincts; place made holy by God's presence \cmf le temple/tabernacle; lieu sanctifié par présence de Dieu _reference_start_1 Chronicles 22:19_reference_end_ _reference_start_1 Chronicles 23:32_reference_end_ _reference_start_1 Chronicles 29:03_reference_end_ _reference_start_1 Kings 6:16_reference_end_ _reference_start_1 Kings 7:50_reference_end_ _reference_start_1 Kings 8:06_reference_end_ _reference_start_1 Kings 8:08_reference_end_ _reference_start_1 Kings 8:10_reference_end_ _reference_start_Daniel 8:13_reference_end_ _reference_start_Daniel 8:14_reference_end_ _reference_start_Daniel 9:24_reference_end_ _reference_start_Jonah 2:05_reference_end_ _reference_start_Jonah 2:08_reference_end_ _reference_start_Leviticus 5:15_reference_end_ _reference_start_Leviticus 10:18_reference_end_ _reference_start_Leviticus 16:02_reference_end_ _reference_start_Leviticus 16:16_reference_end_ _reference_start_Psalms 28:02_reference_end_ _reference_start_Psalms 60:08_reference_end_ \cme the people of God \cmf le peuple de Dieu _reference_start_Daniel 8:24_reference_end_ _reference_start_Psalms 34:10_reference_end_ ##Avkvholyholy\h HôdÒq \f saint \cme angel, messanger from God \cmf ange, messager de Dieu _reference_start_Daniel 8:13_reference_end_ \cme angels sent by God \cmf anges envoyés par Dieu _reference_start_Daniel 4:10_reference_end_ _reference_start_Daniel 4:14_reference_end_ _reference_start_Daniel 4:20_reference_end_ \cme attribut of God, unapproachable, involable \cmf attribut de Dieu, non-approchable _reference_start_1 Samuel 2:02_reference_end_ _reference 6 ?tfXJ<. wi[M?1#{m_QC5' rv qv  pv  ov  nv 2 mv  lv  kv  jv  iv  hv  gv fv ev dv cv bv av `v _v& ^v+ ]v# \v [v! ZvN) YvG Xv Wv Vvn Uv? Tv Sv Rv Qv - Pv  Ov  Nv  Mv Lv Kv Jv  Iv  Hv  Gv  Fv  Ev  Dv  Cv  Bv  Av @v ?v >v =v <v ;v :v  9v 8v  7v 3 6v  5vi+ 4v3 ?tfXJ<. xj\N@2$|n`RD6( 1x 0x /x .x  -x  ,x +x *x  )x  (x  'x @ &x  %x  $x #x "w !w w wA w w w  w w w w w w w w? w0 w+ w( w$ w w w% w  w  w w- w) w" w! w w w w  w 2 w  w " ~v" }v |v< {v zv yv xv  wv vv  uv  tv  sv_end_ _reference_start_Exodus 29:37_reference_end_ _reference_start_Exodus 30:10_reference_end_ _reference_start_Exodus 30:29_reference_end_ _reference_start_Exodus 30:36_reference_end_ _reference_start_Exodus 40:10_reference_end_ _reference_start_Ezekiel 43:12_reference_end_ _reference_start_Ezekiel 48:12_reference_end_ _reference_start_Ezra 2:63_reference_end_ _reference_start_Leviticus 2:03_reference_end_ _reference_start_Leviticus 2:10_reference_end_ _reference_start_Leviticus 6:10_reference_end_ _reference_start_Leviticus 6:18_reference_end_ _reference_start_Leviticus 6:22_reference_end_ _reference_start_Leviticus 7:01_reference_end_ _reference_start_Leviticus 10:12_reference_end_ _reference_start_Leviticus 10:17_reference_end_ _reference_start_Leviticus 14:13_reference_end_ _reference_start_Leviticus 27:28_reference_end_ _reference_start_Nehemiah 7:65_reference_end_ _reference_start_Numbers 4:04_reference_end_ _reference_start_Numbers 4:19_reference_end_ _reference_start_Numbers 18:09_reference_end_ ddw))awholy of holiesholy of holies\h £yiHdqah HdOq \f lieu très saint \cme holy of holies, inner room of tablernacle or temple \cmf lieu très saint, sanctuaire du temple _reference_start_1 Chronicles 6:34_reference_end_ _reference_start_1 Kings 6:16_reference_end_ _reference_start_1 Kings 7:50_reference_end_ _reference_start_1 Kings 8:06_reference_end_ _reference_start_2 Chronicles 3:08_reference_end_ _reference_start_2 Chronicles 4:22_reference_end_ _reference_start_2 Chronicles 5:07_reference_end_ _reference_start_Exodus 26:33_reference_end_ _reference_start_Exodus 26:34_reference_end_ _reference_start_Ezekiel 41:04_reference_end_ _reference_start_Ezekiel 45:03_reference_end_ _reference_start_Numbers 18:10_reference_end_ \cme very holy thing, set apart to God \cmf qqch de très saint, mise apart pour Dieu _reference_start_1 Chronicles 23:13_reference_end_ _reference_start_Daniel 9:24_reference >tart_Exodus 13:02_reference_end_ _reference_start_Exodus 20:08_reference_end_ _reference_start_Exodus 20:11_reference_end_ _reference_start_Genesis 2:03_reference_end_ \cme be or make undefiled, morally pure like God \cmf pur moralement comme Dieu _reference_start_Leviticus 21:08_reference_end_ \cme ritually cleanse \cmf purifier rituellement _reference_start_1 Chronicles 15:12_reference_end_ _reference_start_1 Chronicles 15:14_reference_end_ _reference_start_1 Samuel 16:05_reference_end_ _reference_start_1 Samuel 21:06_reference_end_ _reference_start_2 Samuel 11:04_reference_end_ _reference_start_Exodus 19:10_reference_end_ _reference_start_Exodus 19:22_reference_end_ _reference_start_Numbers 11:19_reference_end_ \cme to ceremonially cleanse and set aside as holy \cmf puifier rituellement et connaître qqn/qqch comme saint _reference_start_1 Samuel 16:05_reference_end_ _reference_start_Exodus 10:23_reference_end_ _reference_start_Exodus 19:14_reference_end_ _reference_start_Leviticus 21:08_reference_end_ wx%%7xholy (to be)holy (to be)\h HadAq / HedAq \f saint, être saint \cme attribute of God, unapproachable, inviolable \cmf attribut de Dieu, non-approchable _reference_start_Numbers 20:12_reference_end_ _reference_start_Numbers 20:13_reference_end_ \cme be dedicated to God, sacred \cmf être dédié à Dieu, sacré _reference_start_1 Chronicles 18:11_reference_end_ _reference_start_1 Chronicles 23:13_reference_end_ _reference_start_1 Kings 8:64_reference_end_ _reference_start_1 Kings 9:03_reference_end_ _reference_start_1 Kings 9:07_reference_end_ _reference_start_1 Samuel 7:01_reference_end_ _reference_start_2 Chronicles 7:16_reference_end_ _reference_start_2 Chronicles 7:20_reference_end_ _reference_start_2 Samuel 8:11_reference_end_ _reference_s @ ?tfXJ<-wi[M?1#{m_QC5' pz oz  nz  mz  lz  kz jz iz  hz  gz  fz  ez  dz  cz  bz az `z _z ^z  ]z  \z [z Zz Yz4 Xz Wy Vy  Uy  Ty  Sy  Ry  Qy  Py  Oy  Ny  My  Ly  Ky  Jy  Iy  Hy Gy Fy Ey: Dy Cy By & Ay  @y ?y" >x =x <x  ;x  :x  9x 8x 7x  6x  5x  4x  3x  2x:31_reference_end_ \cme God's high position \cmf la haute position de Dieu _reference_start_Deuteronomy 28:58_reference_end_ _reference_start_Exodus 14:04_reference_end_ _reference_start_Exodus 14:17_reference_end_ _reference_start_Exodus 14:18_reference_end_ \cme honored, respected \cmf honoré, respecté _reference_start_1 Chronicles 4:09_reference_end_ _reference_start_1 Chronicles 11:21_reference_end_ _reference_start_1 Chronicles 11:25_reference_end_ _reference_start_1 Chronicles 19:03_reference_end_ _reference_start_1 Samuel 2:29_reference_end_ _reference_start_1 Samuel 2:30_reference_end_ _reference_start_1 Samuel 9:06_reference_end_ _reference_start_1 Samuel 15:30_reference_end_ _reference_start_1 Samuel 22:14_reference_end_ _reference_start_2 Samuel 6:20_reference_end_ _reference_start_2 Samuel 6:22_reference_end_ _reference_start_2 Samuel 10:03_reference_end_ _reference_start_2 Samuel 23:19_reference_end_ _reference_start_2 Samuel 23:23_reference_end_ _reference_start_Exodus 20:12_reference_end_ 55?y!!Oyhonor (to)honor (to)\h dabAÐk / debAÐk \f honorer \cme distinguished, important \cmf distangué, repsecté _reference_start_Genesis 34:19_reference_end_ _reference_start_Psalms 149:08_reference_end_ \cme glorify, worship God or gods \cmf glorifier, adorer Dieu ou des dieux _reference_start_1 Samuel 2:30_reference_end_ _reference_start_Daniel 11:38_reference_end_ _reference_start_Proverbs 3:09_reference_end_ _reference_start_Proverbs 14 C Freference_end_ _reference_start_1 Chronicles 9:13_reference_end_ _reference_start_1 Chronicles 9:23_reference_end_ _reference_start_1 Chronicles 9:26_reference_end_ _reference_start_1 Chronicles 9:27_reference_end_ _reference_start_1 Samuel 1:07_reference_end_ _reference_start_1 Samuel 1:24_reference_end_ _reference_start_1 Samuel 3:15_reference_end_ _reference_start_2 Samuel 12:20_reference_end_ _reference_start_Exodus 23:19_reference_end_ \cme temple of other gods \cmf temple d'autres dieux _reference_start_1 Chronicles 10:10_reference_end_ _reference_start_1 Samuel 31:09_reference_end_ _reference_start_1 Samuel 5:02_reference_end_ _reference_start_1 Samuel 5:05_reference_end_ _reference_start_1 Samuel 31:10_reference_end_ _reference_start_Daniel 1:02_reference_end_ \cme the temple building inside the court \cmf le bâtiment du temple dans la cour _reference_start_1 Chronicles 28:11_reference_end_ _reference_start_1 Kings 1:1_reference_end_ _reference_start_1 Kings 6:03_reference_end_ _reference_start_1 G Kings 6:04_reference_end_ _reference_start_1 Kings 6:05_reference_end_ _reference_start_1 Kings 6:06_reference_end_ _reference_start_1 Kings 6:07_reference_end_ _reference_start_1 Kings 6:08_reference_end_ _reference_start_1 Kings 6:09_reference_end_ _reference_start_1 Kings 6:10_reference_end_ _reference_start_1 Kings 6:14_reference_end_ _reference_start_1 Kings 6:15_reference_end_ _reference_start_1 Kings 6:16_reference_end_ _reference_start_1 Kings 6:17_reference_end_ _reference_start_1 Kings 6:18_reference_end_ _reference_start_1 Kings 6:19_reference_end_ _reference_start_1 Kings 6:21_reference_end_ _reference_start_1 Kings 6:22_reference_end_ _reference_start_1 Kings 6:29_reference_end_ _reference_start_1 Kings 6:30_reference_end_ _reference_start_1 Kings 7:12_reference_end_ _reference_start_1 Kings 7:39_reference_end_ _reference_start_1 Kings 7:50_reference_end_ _reference_start_1 Kings 8:06_reference_end_ _reference_start_1 Kings 8:10_reference_end_ _reference_start_1 Kings 8:11_reference_end_ _re Hference_start_2 Chronicles 7:01_reference_end_ _reference_start_2 Chronicles 7:02_reference_end_ _reference_start_2 Chronicles 7:03_reference_end_ _reference_start_2 Chronicles 7:07_reference_end_ \cme whole temple area in Jerusalem \cmf tout le lieu sacré à Jérusalem _reference_start_1 Chronicles 17:04_reference_end_ _reference_start_1 Chronicles 17:05_reference_end_ _reference_start_1 Chronicles 17:06_reference_end_ _reference_start_1 Chronicles 17:12_reference_end_ _reference_start_1 Chronicles 22:01_reference_end_ _reference_start_1 Chronicles 22:02_reference_end_ _reference_start_1 Chronicles 22:05_reference_end_ _reference_start_1 Chronicles 22:06_reference_end_ _reference_start_1 Chronicles 22:07_reference_end_ _reference_start_1 Chronicles 22:08_reference_end_ _reference_start_1 Chronicles 22:10_reference_end_ _reference_start_1 Chronicles 22:11_reference_end_ _reference_start_1 Chronicles 22:14_reference_end_ _reference_start_1 Chronicles 22:19_reference_end_ _reference_start_1 Chronicles 23:2 I8_reference_end_ _reference_start_1 Chronicles 28:02_reference_end_ _reference_start_1 Chronicles 28:03_reference_end_ _reference_start_1 Chronicles 28:06_reference_end_ _reference_start_1 Chronicles 28:10_reference_end_ _reference_start_1 Chronicles 28:12_reference_end_ _reference_start_1 Chronicles 28:13_reference_end_ _reference_start_1 Chronicles 28:20_reference_end_ _reference_start_1 Chronicles 28:21_reference_end_ _reference_start_1 Chronicles 29:02_reference_end_ _reference_start_1 Chronicles 29:03_reference_end_ _reference_start_1 Chronicles 29:04_reference_end_ _reference_start_1 Chronicles 29:07_reference_end_ _reference_start_1 Chronicles 29:08_reference_end_ _reference_start_1 Chronicles 29:10_reference_end_ _reference_start_1 Kings 5:17_reference_end_ _reference_start_1 Kings 5:19_reference_end_ _reference_start_1 Kings 5:31_reference_end_ _reference_start_1 Kings 5:32_reference_end_ _reference_start_1 Kings 6:01_reference_end_ _reference_start_1 Kings 6:12_reference_end_ _reference_start_1 JKings 6:37_reference_end_ _reference_start_1 Kings 6:38_reference_end_ _reference_start_1 Kings 7:09_reference_end_ _reference_start_1 Kings 7:12_reference_end_ _reference_start_1 Kings 7:40_reference_end_ _reference_start_1 Kings 7:45_reference_end_ _reference_start_1 Kings 7:48_reference_end_ _reference_start_1 Kings 7:51_reference_end_ _reference_start_1 Kings 8:13_reference_end_ _reference_start_1 Kings 8:16_reference_end_ _reference_start_1 Kings 8:17_reference_end_ _reference_start_1 Kings 8:18_reference_end_ _reference_start_1 Kings 8:19_reference_end_ _reference_start_1 Kings 8:20_reference_end_ _reference_start_1 Kings 8:27_reference_end_ _reference_start_1 Kings 8:29_reference_end_ _reference_start_1 Kings 8:31_reference_end_ _reference_start_1 Kings 8:33_reference_end_ _reference_start_1 Kings 8:38_reference_end_ _reference_start_1 Kings 8:42_reference_end_ _reference_start_1 Kings 8:43_reference_end_ _reference_start_1 Kings 8:44_reference_end_ _reference_start_1 Kings 8:48_reference_end_ _reference_start_1 Kings 8:63_reference_end_ _reference_start_1 Kings 8:64_reference_end_ _reference_start_1 Kings 9:01_reference_end_ _reference_start_1 Kings 9:03_reference_end_ _reference_start_1 Kings 9:07_reference_end_ _reference_start_1 Kings 9:08_reference_end_ _reference_start_1 Kings 9:10_reference_end_ _reference_start_1 Kings 9:16_reference_end_ _reference_start_1 Kings 9:25_reference_end_ _reference_start_1 Kings 10:05_reference_end_ _reference_start_1 Kings 10:12_reference_end_ _reference_start_2 Chronicles 7:05_reference_end_ _reference_start_2 Chronicles 7:11_reference_end_ _reference_start_2 Chronicles 7:12_reference_end_ _reference_start_2 Chronicles 7:16_reference_end_ _reference_start_2 Chronicles 7:20_reference_end_ _reference_start_2 Chronicles 7:21_reference_end_ _reference_start_2 Samuel 7:05_reference_end_ _reference_start_2 Samuel 7:06_reference_end_ _reference_start_2 Samuel 7:07_reference_end_ _reference_start_2 Samuel 7:13_reference_end_ _reference_start_Daniel 1:02_reference_end_ Sz//[zhouse of the LORDhouse of the lord\h hÃwhy al - tÇyaÐb \f maison de l'Eternel \cme descendents \cmf parants, descendents _reference_start_Psalms 23:06_reference_end_ _reference_start_Psalms 52:10_reference_end_ \cme house of God, inner courtyards and building \cmf maison de Dieu, cours inérieurs et bâtiment _reference_start_Daniel 1:02_reference_end_ _reference_start_Daniel 5:03_reference_end_ _reference_start_Daniel 5:23_reference_end_ \cme inner room of temple, holy of holies \cmf la salle interieure du temple, le lieu très saint _reference_start_1 Chronicles 28:11_reference_end_ _reference_start_1 Kings 6:27_reference_end_ \cme place where God is \cmf lieu où Dieu se trouve _reference_start_Genesis 28:17_reference_end_ _reference_start_Genesis 28:22_reference_end_ \cme tabernacle, tent \cmf tabernacle, tente _reference_start_1 Chronicles 9:11_ E ?tfXJ<. xj\N@2$|n`RD6( /z  .z  -z  ,z  +z  *z  )z  (z  'z  &z  %z  $z  #z  "z  !z  z  z  z  z  z  z  z  z  z  z  z  z  z  z  z  z  z  z  z z z z z  z  z  z 2 z ' z  z  z  z  z  z  z  ~z  }z  |z  {z  zz  yz  xz  wz  vz  uz  tz  sz  rz  qz  ?tfXJ<. xj\N@2$|n`RD6( n|  m|  l|  k|  j|; i|3 h|& g|$ f|  e| d|, c| b|  a|  `|3 _{ ^z ]z  \z  [z  Zz  Yz Xz Wz Vz Uz Tz Sz Rz  Qz  Pz  Oz Nz  Mz  Lz  Kz  Jz @ Iz ? Hz 0 Gz , Fz + Ez * Dz & Cz ! Bz  Az  @z  ?z  >z  =z  <z  ;z  :z  9z 3 8z 0 7z - 6z ( 5z  4z  3z & 2z % 1z  0z  tj}W}injusticeinjustice\h hAlÌwav \f injustice \cme injustice \cmf injustice _reference_start_2 C Rz|++1|iniquity, guiltiniquity, guilt\h €OwAv \f iniquité, faute \cme cleansing from sin \cmf purification du péché _reference_start_Psalms 51:04_reference_end_ \cme guilty of moral wrongdoing \cmf être coupable du péché _reference_start_1 Samuel 20:08_reference_end_ _reference_start_2 Samuel 14:32_reference_end_ _reference_start_Genesis 15:16_reference_end_ _reference_start_Genesis 44:16_reference_end_ _reference_start_Numbers 15:31_reference_end_ _reference_start_Psalms 32:05_reference_end_ _refe O{i{iniquityiniquity\h 'ÃyÃwáv \f péchés \cme ethically wrong \cmf mal moralement _reference_start_Daniel 4:24_reference_end_ Prence_start_Psalms 36:03_reference_end_ _reference_start_Psalms 38:05_reference_end_ _reference_start_Psalms 51:07_reference_end_ _reference_start_Psalms 59:05_reference_end_ \cme hold someone guilty, condemn \cmf condamner _reference_start_2 Samuel 19:20_reference_end_ _reference_start_Psalms 32:02_reference_end_ \cme moral wrongdoing \cmf mal moral _reference_start_1 Kings 17:18_reference_end_ _reference_start_1 Samuel 3:13_reference_end_ _reference_start_1 Samuel 20:01_reference_end_ _reference_start_2 Samuel 22:24_reference_end_ _reference_start_Daniel 9:13_reference_end_ _reference_start_Daniel 9:16_reference_end_ _reference_start_Deuteronomy 19:15_reference_end_ _reference_start_Psalms 90:08_reference_end_ _reference_start_Psalms 107:17_reference_end_ \cme sin and its forgiveness \cmf péché et son pardon _reference_start_1 Samuel 3:14_reference_end_ _reference_start_2 Samuel 24:10_reference_end_ _reference_start_Daniel 9:24_reference_end_ _reference_start_Numbers 14:18_reference_end_ _reference_start_Numbers 14:19_reference_end_ _reference_start_Proverbs 16:06_reference_end_ _reference_start_Psalms 25:11_reference_end_ _reference_start_Psalms 85:03_reference_end_ \cme sin and its punishment \cmf péché et sa punition _reference_start_1 Chronicles 21:08_reference_end_ _reference_start_1 Samuel 25:24_reference_end_ _reference_start_1 Samuel 28:10_reference_end_ _reference_start_2 Kings 7:09_reference_end_ _reference_start_2 Samuel 3:08_reference_end_ _reference_start_2 Samuel 14:09_reference_end_ _reference_start_Deuteronomy 5:09_reference_end_ _reference_start_Exodus 20:05_reference_end_ _reference_start_Exodus 28:38_reference_end_ _reference_start_Genesis 4:13_reference_end_ _reference_start_Genesis 19:15_reference_end_ _reference_start_Leviticus 5:01_reference_end_ _reference_start_Leviticus 5:17_reference_end_ _reference_start_Leviticus 10:17_reference_end_ _reference_start_Leviticus 18:25_reference_end_ _reference_start_Numbers 14:18_reference_end_ _reference_start_Numbers 14:34_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( -  ,  +  * & ) " (  '~ &~ %~ $~  #~  "~  !~ ~ }} }w }+ }  } " }5 } } } }" }  } }k* }\ }@ } } |" | | |  | | | | |& | | |  |  |  |  |  ~|  }|U || {| z| y| x|  w|  v|  u|k t|Z s| r|  q| p|  o| hronicles 19:07_reference_end_ _reference_start_Proverbs 22:08_reference_end_ _reference_start_Psalms 64:07_reference_end_ _reference_start_Psalms 92:16_reference_end_ \cme unjust speech \cmf paroles injustes _reference_start_Psalms 107:42_reference_end_ \cme unrighteousness, injustice \cmf inustice, impiété _reference_start_Deuteronomy 25:16_reference_end_ _reference_start_Deuteronomy 32:04_reference_end_ _reference_start_Deuteronomy 34:10_reference_end_ _reference_start_Leviticus 19:15_reference_end_ _reference_start_Proverbs 29:27_reference_end_ _reference_start_Psalms 7:04_reference_end_ _reference_start_Psalms 53:02_reference_end_ \cme unrighteousness, wrong \cmf injustice, mal _reference_start_2 Samuel 3:34_reference_end_ _reference_start_2 Samuel 7:10_reference_end_ _reference_start_Psalms 43:01_reference_end_ _reference_start_Psalms 119:03_reference_end_ _reference_start_Psalms 125:03_reference_end_ >>Jewjew\h yædûhÌy \f juif \cme people of Israel, a Jew \cmf le peuple d'Israël, uner pseronne juive _reference_start_1 Chronicles 4:18_referenc Xq7Jerusalemjerusalem\h £alAHûrÌy \f Jérusalem \cme Jerusalem \cmf Jerusalem _reference_start_1 Chronicles 9:03_reference_end_ _reference_start_1 Chronicles 9:34_reference_end_ _reference_start_1 Chronicles 9:38_reference_end_ _reference_star T~~integrityintegrity\h hAGmuGt / £O Jt \f intégrité \cme blameless or innocent conduct, integrity \cmf conduit innocent or sans blâme, intégrité _reference_start_Proverbs 2:07_reference_end_ _reference_start_Proverbs 10:09_reference_end_ _reference_start_Proverbs 10:29_reference_end_ _reference_start_Proverbs 11:03_reference_end_ _reference_start_Proverbs 13:06_reference_end_ _reference_start_Proverbs 19:01_reference_end_ _reference_start_Proverbs 20:07_reference_end_ _reference_start_Proverbs 28:06_reference_end_ Ut_1 Chronicles 21:04_reference_end_ _reference_start_1 Chronicles 21:15_reference_end_ _reference_start_1 Chronicles 21:16_reference_end_ _reference_start_1 Chronicles 23:24_reference_end_ _reference_start_1 Chronicles 28:01_reference_end_ _reference_start_1 Chronicles 29:27_reference_end_ _reference_start_1 Kings 2:11_reference_end_ _reference_start_1 Kings 2:36_reference_end_ _reference_start_1 Kings 2:41_reference_end_ _reference_start_1 Kings 3:01_reference_end_ _reference_start_1 Kings 3:15_reference_end_ _reference_start_1 Kings 8:01_reference_end_ _reference_start_1 Kings 9:15_reference_end_ _reference_start_1 Kings 9:19_reference_end_ _reference_start_1 Kings 10:02_reference_end_ _reference_start_1 Kings 10:27_reference_end_ _reference_start_1 Kings 11:07_reference_end_ _reference_start_1 Kings 11:13_reference_end_ _reference_start_1 Kings 11:29_reference_end_ _reference_start_1 Kings 11:32_reference_end_ _reference_start_1 Kings 11:32_reference_end_ _reference_start_1 Kings 11:36_reference_end_ _ Vreference_start_1 Kings 11:42_reference_end_ _reference_start_1 Samuel 17:54_reference_end_ _reference_start_2 Samuel 5:014_reference_end_ _reference_start_2 Samuel 5:05_reference_end_ _reference_start_2 Samuel 5:06_reference_end_ _reference_start_2 Samuel 5:13_reference_end_ _reference_start_2 Samuel 8:07_reference_end_ _reference_start_2 Samuel 9:13_reference_end_ _reference_start_2 Samuel 10:14_reference_end_ _reference_start_2 Samuel 11:01_reference_end_ _reference_start_2 Samuel 11:12_reference_end_ _reference_start_2 Samuel 12:31_reference_end_ _reference_start_2 Samuel 14:23_reference_end_ _reference_start_2 Samuel 14:28_reference_end_ _reference_start_2 Samuel 15:08_reference_end_ _reference_start_2 Samuel 15:11_reference_end_ _reference_start_2 Samuel 15:14_reference_end_ _reference_start_2 Samuel 15:29_reference_end_ _reference_start_2 Samuel 15:37_reference_end_ _reference_start_2 Samuel 16:15_reference_end_ _reference_start_2 Samuel 17:20_reference_end_ _reference_start_2 Samuel 19:20_reference_end_ _reference_start_2 Samuel 19:26_reference_end_ _reference_start_2 Samuel 19:34_reference_end_ _reference_start_2 Samuel 19:35_reference_end_ _reference_start_2 Samuel 20:02_reference_end_ _reference_start_2 Samuel 20:03_reference_end_ _reference_start_2 Samuel 20:07_reference_end_ _reference_start_2 Samuel 20:22_reference_end_ _reference_start_2 Samuel 24:08_reference_end_ _reference_start_2 Samuel 24:16_reference_end_ _reference_start_Daniel 1:01_reference_end_ _reference_start_Daniel 5:02_reference_end_ _reference_start_Daniel 5:03_reference_end_ _reference_start_Daniel 6:11_reference_end_ _reference_start_Daniel 9:02_reference_end_ _reference_start_Daniel 9:07_reference_end_ _reference_start_Daniel 9:12_reference_end_ _reference_start_Daniel 9:16_reference_end_ _reference_start_Daniel 9:25_reference_end_ _reference_start_Ecclesiastes 1:12_reference_end_ _reference_start_Ecclesiastes 2:07_reference_end_ _reference_start_Ecclesiastes 2:09_reference_end_ _reference_start_Psalms 51:20_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( l3 k j i h  g  f e  d  c b a ` _  ^  ]  \  [  Z  Y # X " W  V  U  T  S % R  Q  P  O  N  M  L  K J  I  H G  F  E  D  C  B 6 A * @ $ ? > =  < ;  :  9  8  7  6  5  4  3 ) 2 $ 1  0  /  .  Ye_end_ _reference_start_Esther 2:05_reference_end_ _reference_start_Esther 3:04_reference_end_ _reference_start_Esther 3:06_reference_end_ _reference_start_Esther 3:10_reference_end_ _reference_start_Esther 3:13_reference_end_ _reference_start_Esther 4:03_reference_end_ _reference_start_Esther 4:07_reference_end_ _reference_start_Esther 4:13_reference_end_ _reference_start_Esther 4:14_reference_end_ _reference_start_Esther 4:16_reference_end_ _reference_start_Esther 5:13_reference_end_ _reference_start_Esther 6:10_reference_end_ Est06.13 _reference_start_Esther 6:13_reference_end_ _reference_start_Esther 8:01_reference_end_ _reference_start_Esther 8:03_reference_end_ _reference_start_Esther 8:05_reference_end_ _reference_start_Esther 8:07_reference_end_ _reference_start_Esther 8:08_reference_end_ _reference_start_Esther 8:09_reference_end_ _reference_start_Esther 8:11_reference_end_ _reference_start_Esther 8:13_reference_end_ _reference_start_Esther 8:16_reference_end_ _reference_start_Esther 8:17_reference_end_ _reference_start_Esther 9:01_reference_end_ _reference_start_Esther 9:02_reference_end_ _reference_start_Esther 9:03_reference_end_ _reference_start_Esther 9:05_reference_end_ _reference_start_Esther 9:06_reference_end_ _reference_start_Esther 9:10_reference_end_ _reference_start_Esther 9:12_reference_end_ _reference_start_Esther 9:13_reference_end_ _reference_start_Esther 9:15_reference_end_ _reference_start_Esther 9:16_reference_end_ _reference_start_Esther 9:18_reference_end_ _reference_start_Esther 9:19_reference_end_ _reference_start_Esther 9:20_reference_end_ _reference_start_Esther 9:22_reference_end_ _reference_start_Esther 9:23_reference_end_ _reference_start_Esther 9:24_reference_end_ _reference_start_Esther 9:25_reference_end_ _reference_start_Esther 9:27_reference_end_ _reference_start_Esther 9:28_reference_end_ _reference_start_Esther 9:29_reference_end_ _reference_start_Esther 9:30_reference_end_ _reference_start_Esther 9:31_reference_end_ _reference_start_Esther 10:03_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( + * )  (  '  &  %  $  #  "  !    3                                                      ~ } | { z y x w v u t s r q p o n m  \roversy, pass judgement \cmf trancher un argument, donner un jugement _reference_start_1 Chronicles 23:04_reference_end_ _reference_start_1 Chronicles 26:29_reference_end_ _reference_start_1 Kings 3:28_reference_end_ _reference_start_1 Kings 7:07_reference_end_ _reference_start_1 Kings 8:32_reference_end_ _reference_start_1 Samuel 1:01_reference_end_ _reference_start_1 Samuel 8:02_reference_end_ _reference_start_1 Samuel 24:13_reference_end_ _reference_start_1 Samuel 24:16_reference_end_ _reference_start_2 Samuel 15:04_reference_end_ _reference_start_Ecclesiastes 3:17_reference_end_ _reference_start_Exodus 5:21_reference_end_ _reference_start_Exodus 18:13_reference_end_ _reference_start_Exodus 18:16_reference_end_ _reference_start_Genesis 16:05_reference_end_ _reference_start_Genesis 31:53_reference_end_ _reference_start_Jude 11:27_reference_end_ _reference_start_Psalms 82:10_reference_end_ \cme establish or maintain justice, govern \cmf établir ou maintenir la justice, gouverner _reference_start_1 Chron ]icles 17:06_reference_end_ _reference_start_1 Chronicles 17:10_reference_end_ _reference_start_1 Kings 3:09_reference_end_ _reference_start_1 Samuel 4:18_reference_end_ _reference_start_1 Samuel 7:06_reference_end_ _reference_start_1 Samuel 7:15_reference_end_ _reference_start_1 Samuel 7:16_reference_end_ _reference_start_1 Samuel 7:17_reference_end_ _reference_start_1 Samuel 8:05_reference_end_ _reference_start_1 Samuel 8:06_reference_end_ _reference_start_1 Samuel 8:20_reference_end_ _reference_start_2 Samuel 7:11_reference_end_ _reference_start_Daniel 9:12_reference_end_ _reference_start_Exodus 2:14_reference_end_ _reference_start_Exodus 18:22_reference_end_ _reference_start_Exodus 18:26_reference_end_ _reference_start_Genesis 18:25_reference_end_ _reference_start_Genesis 19:09_reference_end_ _reference_start_Jude 2:16_reference_end_ _reference_start_Jude 2:18_reference_end_ _reference_start_Proverbs 29:14_reference_end_ _reference_start_Psalms 2:10_reference_end_ _reference_start_Psalms 58:02_reference_end_ _reference_start_Ruth 1:01_reference_end_ \cme final judgement \cmf dernier jugement _reference_start_1 Chronicles 16:33_reference_end_ _reference_start_Job 4:12_reference_end_ _reference_start_Psalms 50:06_reference_end_ _reference_start_Psalms 96:13_reference_end_ \cme plead case of \cmf plaider _reference_start_1 Samuel 12:07_reference_end_ _reference_start_Proverbs 29:09_reference_end_ _reference_start_Psalms 37:32_reference_end_ \cme to sit (a judge in court) \cmf s'asseoir (un juge dans la cour) _reference_start_Daniel 7:26_reference_end_ \cme to sit and judge \cmf s'asoire et juger _reference_start_Daniel 7:09_reference_end_ _reference_start_Daniel 7:10_reference_end_ _reference_start_Daniel 7:26_reference_end_ \cme vindicate, justify \cmf justifier, rendre justice _reference_start_1 Samuel 24:16_reference_end_ _reference_start_2 Samuel 18:19_reference_end_ _reference_start_2 Samuel 18:31_reference_end_ _reference_start_Psalms 10:18_reference_end_ _reference_start_Psalms 26:01_reference_end_ |Mjudgementjudgement\h XAKpüHim \f jugement \cme act of deciding a case \cmf act de donner un jugement _reference_start_1 Kings 3:28_reference_end_ _reference_start_2 Samuel 15:02_reference_end_ _reference_start_2 Samuel 15:06_reference_end_ _reference_start_Deuteronomy 16:18_reference_end_ \cme attribute of right, justice \cmf attribut de droiture, de justice _reference_start_1 Samuel 8:03_reference_end_ _reference_start_Genesis 18:25_reference_end_ _reference_start_Proverbs 29:04_reference_end_ _referenc `!!judge (to)judge (to)\h XapAH \f juger \cme condemn and punish \cmf condamner et punir _reference_start_1 Samuel 3:13_reference_end_ _reference_start_Ezra 7:03_reference_end_ _reference_start_Proverbs 31:09_reference_end_ _reference_start_Psalms 51:06_reference_end_ \cme decide cont [ ?tfXJ<. xj\N@2$|n`RD6( j i h( g f  e  d  c b  a ` _ ^  ] \  [  Z  Y X  W  V  U  T S R Q P% O N  M` L2 K J ! I H: G F EA DA C B A @ ? > =  <  ;  :  9  8  7  6  5  4  3  2  1R 0A  /5 . - , ae_start_Psalms 1:05_reference_end_ \cme court, seat of judgement \cmf la cour _reference_start_1 Kings 7:07_reference_end_ _reference_start_Ecclesiastes 3:16_reference_end_ \cme custom, usual practice \cmf coutume, habitude _reference_start_1 Chronicles 23:31_reference_end_ _reference_start_1 Samuel 2:13_reference_end_ _reference_start_1 Samuel 27:11_reference_end_ _reference_start_Exodus 21:09_reference_end_ _reference_start_Genesis 40:13_reference_end_ \cme events showing God's judgement \cmf faites qui montre le jugement de Deiu _reference_start_Exodus 6:06_reference_end_ _reference_start_Exodus 7:04_reference_end_ _reference_start_Exodus 12:12_reference_end_ _reference_start_Proverbs 19:29_reference_end_ \cme judge \cmf juge _reference_start_Ezra 7:25_reference_end_ \cme just law or ordinance \cmf une loi ou ordonance juste _reference_start_1 Chronicles 22:13_reference_end_ _reference_start_1 Chronicles 28:07_reference_end_ _reference_start_1 Kings 2:03_reference_end_ _reference_start_1 Kings 6:12_ref berence_end_ _reference_start_1 Kings 8:58_reference_end_ _reference_start_1 Kings 9:04_reference_end_ _reference_start_1 Kings 11:33_reference_end_ _reference_start_1 Samuel 10:25_reference_end_ _reference_start_1 Samuel 30:25_reference_end_ _reference_start_2 Chronicles 7:17_reference_end_ _reference_start_2 Samuel 22:23_reference_end_ _reference_start_Daniel 9:05_reference_end_ _reference_start_Exodus 15:25_reference_end_ _reference_start_Leviticus 5:10_reference_end_ _reference_start_Leviticus 18:04_reference_end_ _reference_start_Leviticus 18:05_reference_end_ _reference_start_Leviticus 18:26_reference_end_ _reference_start_Leviticus 25:18_reference_end_ _reference_start_Psalms 19:10_reference_end_ \cme plans, blueprints \cmf plans, spécifications _reference_start_1 Kings 6:38_reference_end_ \cme process of judgement, litigation \cmf procésus _reference_start_Ecclesiastes 12:14_reference_end_ _reference_start_Job 14:03_reference_end_ _reference_start_Psalms 143:02_reference_end_ \cme pronounce a judgement in court \cmf prononcer un verdict devant la cour (Arm) _reference_start_Daniel 4:34_reference_end_ _reference_start_Daniel 7:10_reference_end_ _reference_start_Daniel 7:22_reference_end_ _reference_start_Daniel 7:26_reference_end_ _reference_start_Ezra 7:26_reference_end_ \cme sentence, decision of judgement \cmf la décision du juge _reference_start_1 Chronicles 16:12_reference_end_ _reference_start_1 Chronicles 16:14_reference_end_ _reference_start_1 Chronicles 18:14_reference_end_ _reference_start_1 Kings 10:09_reference_end_ _reference_start_1 Kings 20:40_reference_end_ _reference_start_2 Samuel 8:15_reference_end_ _reference_start_Ecclesiastes 8:05_reference_end_ _reference_start_Ecclesiastes 8:06_reference_end_ _reference_start_Exodus 21:01_reference_end_ _reference_start_Exodus 21:31_reference_end_ _reference_start_Psalms 7:07_reference_end_ _reference_start_Psalms 17:02_reference_end_ \cme the one who makes judgement \cmf celui qui fait jugement _reference_start_1 Kings 5:08_reference_end_ ?tfXJ<. wi[M?1#{m_QC5' ) ( ' &$ % $  # " !                         (            "      &   ~ } | { z y  x  w v  u  t ! s  r : q  p  o  n  m l k eence_start_Deuteronomy 28:36_reference_end_ _reference_start_Ecclesiastes 1:12_reference_end_ _reference_start_Ecclesiastes 2:08_reference_end_ _reference_start_Esther 1:1_reference_end_ _reference_start_Exodus 1:08_reference_end_ _reference_start_Exodus 1:15_reference_end_ _reference_start_Exodus 1:17_reference_end_ _reference_start_Exodus 1:18_reference_end_ _reference_start_Exodus 2:23_reference_end_ _reference_start_Exodus 3:18_reference_end_ _reference_start_Exodus 3:19_reference_end_ _reference_start_Exodus 5:04_reference_end_ _reference_start_Exodus 6:11_reference_end_ _reference_start_Exodus 6:13_reference_end_ _reference_start_Exodus 6:27_reference_end_ _reference_start_Exodus 6:29_reference_end_ _reference_start_Exodus 14:05_reference_end_ _reference_start_Exodus 14:08_reference_end_ _reference_start_Genesis 14:1_reference_end_ _reference_start_Genesis 14:01_reference_end_ _reference_start_Genesis 17:06_reference_end_ _reference_start_Genesis 17:16_reference_end_ _reference_start_Genesis 20:02_reference_end_ _reference_start_Genesis 26:01_reference_end_ _reference_start_Genesis 26:08_reference_end_ _reference_start_Genesis 35:11_reference_end_ _reference_start_Genesis 36:31_reference_end_ _reference_start_Genesis 39:20_reference_end_ _reference_start_Genesis 40:01_reference_end_ _reference_start_Genesis 40:05_reference_end_ _reference_start_Genesis 41:46_reference_end_ _reference_start_Genesis 49:20_reference_end_ _reference_start_Numbers 20:14_reference_end_ _reference_start_Numbers 20:17_reference_end_ _reference_start_Numbers 21:01_reference_end_ _reference_start_Proverbs 22:11_reference_end_ _reference_start_Proverbs 22:19_reference_end_ _reference_start_Proverbs 29:14_reference_end_ _reference_start_Psalms 2:02_reference_end_ _reference_start_Psalms 2:06_reference_end_ _reference_start_Psalms 2:10_reference_end_ _reference_start_Psalms 61:07_reference_end_ _reference_start_Psalms 63:12_reference_end_ _reference_start_Psalms 110:05_reference_end_ _reference_start_Psalms 144:10_reference_end_ Mkingking\h ªelem. \f roi \cme God as king \cmf Deiu comme roi _reference_start_1 Samuel 12:12_reference_end_ _reference_start_Psalms 27:07_reference_end_ _reference_start_Psalms 27:08_reference_end_ _reference_start_Psalms 27:09_reference_end_ _reference_start_Psalms 27:10_reference_end_ _reference_start_Psalms 5:03_reference_end_ \cme king, leader of a ciy-state or country \cmf chef d'une ville ou un pays _reference_start_1 Chronicles 1:1_reference_end_ _reference_start_1 Kings 1:1_reference_end_ _reference_start_1 Samuel 1:1_reference_end_ _reference_start_2 Chronicles 7:04_reference_end_ _reference_start_2 Chronicles 7:05_reference_end_ _reference_start_2 Chronicles 7:06_reference_end_ _reference_start_2 Chronicles 7:11_reference_end_ _reference_start_2 Samuel 1:1_reference_end_ _reference_start_Daniel 1:1_reference_end_ _refer d ?tfXJ<. xj\N@2${m_QC5' h  g  f  e  d c  b  a  `  _  ^  ]  \  [ Z  Y " X  W V U  T . S  R Qn P? O= N M L K J I H G F E1 D). C( B( A' @$ ?# > = < ; : 9 8 7 6 5 4 3 2 1 0 / . - , + * i autorité, gouvernement _reference_start_1 Chronicles 11:10_reference_end_ _reference_start_1 Chronicles 14:02_reference_end_ _reference_start_1 Chronicles 17:14_reference_end_ _reference_start_1 Chronicles 28:05_reference_end_ _reference_start_1 Chronicles 28:07_reference_end_ _reference_start_1 Kings 2:12_reference_end_ _reference_start_1 Samuel 20:31_reference_end_ _reference_start_Daniel 2:42_reference_end_ _reference_start_Daniel 2:44_reference_end_ _reference_start_Daniel 4:23_reference_end_ _reference_start_Daniel 4:28_reference_end_ _reference_start_Daniel 4:33_reference_end_ _reference_start_Daniel 5:07_reference_end_ _reference_start_Daniel 5:16_reference_end_ _reference_start_Daniel 5:18_reference_end_ _reference_start_Daniel 5:29_reference_end_ _reference_start_Daniel 6:01_reference_end_ _reference_start_Daniel 6:04_reference_end_ _reference_start_Daniel 6:27_reference_end_ _reference_start_Daniel 7:14_reference_end_ _reference_start_Daniel 7:18_reference_end_ _reference_start_Daniel 7:22_ref jerence_end_ _reference_start_Daniel 7:27_reference_end_ _reference_start_Daniel 7:27_reference_end_ _reference_start_Daniel 8:23_reference_end_ _reference_start_Daniel 11:20_reference_end_ _reference_start_Daniel 11:21_reference_end_ _reference_start_Esther 1:07_reference_end_ _reference_start_Esther 1:19_reference_end_ _reference_start_Esther 4:14_reference_end_ \cme geo-political entities \cmf états politiques _reference_start_1 Chronicles 16:20_reference_end_ _reference_start_1 Chronicles 29:30_reference_end_ _reference_start_1 Kings 5:01_reference_end_ _reference_start_1 Kings 10:20_reference_end_ _reference_start_1 Samuel 24:21_reference_end_ _reference_start_2 Samuel 3:28_reference_end_ _reference_start_Deuteronomy 28:25_reference_end_ _reference_start_Genesis 10:10_reference_end_ _reference_start_Genesis 20:09_reference_end_ _reference_start_Joshua 10:02_reference_end_ _reference_start_Joshua 11:10_reference_end_ _reference_start_Numbers 32:33_reference_end_ _reference_start_Psalms 135:11_referenc ke_end_ \cme geo-political entity \cmf états politiques _reference_start_1 Chronicles 12:23_reference_end_ _reference_start_Daniel 1:20_reference_end_ _reference_start_Daniel 2:37_reference_end_ _reference_start_Daniel 2:39_reference_end_ _reference_start_Daniel 2:40_reference_end_ _reference_start_Daniel 2:44_reference_end_ _reference_start_Daniel 4:14_reference_end_ _reference_start_Daniel 4:15_reference_end_ _reference_start_Daniel 4:22_reference_end_ _reference_start_Daniel 4:29_reference_end_ _reference_start_Daniel 4:41_reference_end_ _reference_start_Daniel 5:11_reference_end_ _reference_start_Daniel 5:21_reference_end_ _reference_start_Daniel 5:28_reference_end_ _reference_start_Daniel 6:02_reference_end_ _reference_start_Daniel 6:04_reference_end_ _reference_start_Daniel 6:08_reference_end_ _reference_start_Daniel 7:23_reference_end_ _reference_start_Daniel 7:24_reference_end_ _reference_start_Daniel 7:27_reference_end_ _reference_start_Daniel 8:22_reference_end_ _reference_start_Daniel 9:01_refe lrence_end_ _reference_start_Daniel 10:13_reference_end_ _reference_start_Daniel 11:02_reference_end_ _reference_start_Daniel 11:04_reference_end_ _reference_start_Daniel 11:09_reference_end_ _reference_start_Daniel 11:17_reference_end_ _reference_start_Ecclesiastes 4:14_reference_end_ _reference_start_Esther 1:14_reference_end_ _reference_start_Esther 1:20_reference_end_ _reference_start_Esther 2:03_reference_end_ _reference_start_Esther 3:06_reference_end_ _reference_start_Esther 3:08_reference_end_ _reference_start_Esther 5:03_reference_end_ _reference_start_Esther 5:06_reference_end_ _reference_start_Esther 7:02_reference_end_ _reference_start_Esther 9:30_reference_end_ \cme government, authority \cmf autorité, gouvernement _reference_start_1 Kings 1:46_reference_end_ _reference_start_1 Kings 2:15_reference_end_ _reference_start_1 Kings 2:22_reference_end_ _reference_start_1 Kings 11:35_reference_end_ _reference_start_1 Samuel 10:16_reference_end_ _reference_start_1 Samuel 10:25_reference_end_ _refere mnce_start_1 Samuel 11:14_reference_end_ _reference_start_1 Samuel 14:47_reference_end_ _reference_start_1 Samuel 18:08_reference_end_ _reference_start_2 Samuel 16:08_reference_end_ \cme reign, period a king is in power \cmf reigne, période pendent qu'un roi tiens pouvoir _reference_start_1 Chronicles 17:11_reference_end_ _reference_start_1 Chronicles 26:31_reference_end_ _reference_start_1 Chronicles 29:30_reference_end_ _reference_start_Daniel 1:01_reference_end_ _reference_start_Daniel 2:01_reference_end_ _reference_start_Daniel 3:33_reference_end_ _reference_start_Daniel 4:31_reference_end_ _reference_start_Daniel 4:33_reference_end_ _reference_start_Daniel 5:26_reference_end_ _reference_start_Daniel 6:29_reference_end_ _reference_start_Daniel 7:18_reference_end_ _reference_start_Daniel 1:1_reference_end_ _reference_start_Daniel 8:01_reference_end_ _reference_start_Esther 2:16_reference_end_ \cme relation between God and those he rules \cmf relation entre Dieu et ceux sur lequels il règne _reference_start_Exodus 19:06_reference_end_ \cme royal, belonging to a king \cmf royal, qui apartient au roi _reference_start_2 Samuel 12:26_reference_end_ _reference_start_Daniel 1:03_reference_end_ _reference_start_Daniel 4:26_reference_end_ _reference_start_Daniel 4:27_reference_end_ _reference_start_Daniel 5:20_reference_end_ _reference_start_Daniel 6:27_reference_end_ \cme royal, belonging to king \cmf royal, qui apartien au roi _reference_start_1 Chronicles 22:10_reference_end_ _reference_start_1 Chronicles 29:25_reference_end_ _reference_start_2 Chronicles 7:18_reference_end_ _reference_start_Daniel 11:21_reference_end_ _reference_start_Esther 1:02_reference_end_ _reference_start_Esther 1:04_reference_end_ _reference_start_Esther 1:09_reference_end_ _reference_start_Esther 1:11_reference_end_ _reference_start_Esther 2:16_reference_end_ _reference_start_Esther 2:17_reference_end_ _reference_start_Esther 5:01_reference_end_ _reference_start_Esther 6:08_reference_end_ _reference_start_Esther 8:15_reference_end_ II kingdomkingdom\h hAkAlümam. \f royaume \cme authority, belonging to the king \cmf autorité, apartenant au roi _reference_start_1 Chronicles 29:11_reference_end_ _reference_start_1 Kings 2:46_reference_end_ _reference_start_1 Kings 9:05_reference_end_ _reference_start_1 Kings 11:11_reference_end_ _reference_start_1 Kings 11:13_reference_end_ _reference_start_1 Kings 11:31_reference_end_ _reference_start_1 Kings 11:34_reference_end_ _reference_start_1 Samuel 10:18_reference_end_ _reference_start_1 Samuel 13:13_reference_end_ _reference_start_1 Samuel 13:14_reference_end_ _reference_start_1 Samuel 27:05_reference_end_ _reference_start_1 Samuel 28:17_reference_end_ _reference_start_2 Samuel 3:10_reference_end_ _reference_start_2 Samuel 5:12_reference_end_ _reference_start_2 Samuel 7:12_reference_end_ _reference_start_2 Samuel 7:13_reference_end_ _reference_start_2 Samuel 7:16_reference_end_ \cme authority, government \cmf h ?tfXJ<. xj\N@2${m_QC5' '  &  % $  # " !        )     , ( ' %      !                      ~  }  | { z y x w v u t s r q p o! n m l, k* j  i  ?tfXJ<. xj\N@2$|n`RD6( f e  d c b a ` _ ^ ] \ [ Z Y X W V  U T  S  R Q P O N M  L K J I H G F E! D C! B A @  ?  >  =  <  ; / :  9  8  7 # 6  5  4 . 3  2 1 0 / . - , + * )  ( bs 22:17_reference_end_ _reference_start_Proverbs 22:20_reference_end_ _reference_start_Proverbs 23:12_reference_end_ _reference_start_Proverbs 24:04_reference_end_ \cme in contrast to foolishness \cmf par opposition à la stupidité _reference_start_Proverbs 12:23_reference_end_ _reference_start_Proverbs 13:16_reference_end_ Pro14.18 Pro15.02 _reference_start_Proverbs 14:07_reference_end_ _reference_start_Proverbs 20:15_reference_end_ \cme knowledge of God \cmf connaissance de Dieu _reference_start_Proverbs 1:07_reference_end_ _reference_start_Proverbs 1:22_reference_end_ _reference_start_Proverbs 1:29_reference_end_ _reference_start_Proverbs 2:05_reference_end_ _reference_start_Proverbs 2:10_reference_end_ _reference_start_Proverbs 9:10_reference_end_ _reference_start_Proverbs 30:03_reference_end_ \cme knowledge possessed by God \cmf la connaissance que Dieu possède _reference_start_Proverbs 0:06_reference_end_ _reference_start_Proverbs 3:20_reference_end_ _reference_start_Proverbs 21:12_reference_end_ 99;Kknowledgeknowledge\h tavÞÐd \f connaisance \cme discernment, understanding \cmf discernement, compréhension _reference_start_Proverbs 1:04_reference_end_ _reference_start_Proverbs 5:02_reference_end_ _reference_start_Proverbs 8:09_reference_end_ _reference_start_Proverbs 8:10_reference_end_ _reference_start_Proverbs 8:12_reference_end_ _reference_start_Proverbs 12:01_reference_end_ _reference_start_Proverbs 14:06_reference_end_ _reference_start_Proverbs 17:27_reference_end_ _reference_start_Proverbs 19:02_reference_end_ _reference_start_Proverbs 19:25_reference_end_ _reference_start_Proverbs 19:27_reference_end_ _reference_start_Proverbs 21:11_reference_end_ _reference_start_Prover q ?tfXJ<. xj\N@2$|n`RD6( % 1 $ # " ( !Q      N              N     = :              1 ~  } | { z y x w v u t s r q  p  o n m l k j i h g ww##Wlatter dayslatter days\h tyæráxa' \f la suite des temps \cme in future \cmf dans le futur _reference_start_Daniel 10:14_reference_end_ _reference_start_Genesis 49:01_reference_end_ _reference_start_Numbers 24:14_reference_end_ \cme posterity, descendents \cmf descendants _reference_start_Daniel 11:04_reference_end_ \cme the finish, result \cmf la terminaison, le résultat _reference_start_Daniel 12:08_reference_end_ _reference_start_Ecclesiastes 7:08_reference_end_ \cme time leading to God's judgement \cmf avant le dernier jugement de Dieu _reference_start_Daniel 2:28_reference_end_ _reference_start_Daniel 8:19_reference_end_ vlaw of God \cmf loi de Dieu dans l'Exode _reference_start_Psalms 78:05_reference_end_ \cme human instruction, human teaching \cmf instruction humaine, enseignement humain _reference_start_Proverbs 1:08_reference_end_ _reference_start_Proverbs 3:01_reference_end_ _reference_start_Proverbs 4:02_reference_end_ _reference_start_Proverbs 6:20_reference_end_ _reference_start_Proverbs 6:23_reference_end_ _reference_start_Proverbs 7:02_reference_end_ _reference_start_Proverbs 13:14_reference_end_ _reference_start_Proverbs 28:04_reference_end_ _reference_start_Proverbs 28:07_reference_end_ _reference_start_Proverbs 28:09_reference_end_ _reference_start_Proverbs 29:18_reference_end_ _reference_start_Proverbs 31:26_reference_end_ _reference_start_Psalms 78:01_reference_end_ \cme instruction, teaching from God \cmf instruction, enseignement venant de Dieu _reference_start_2 Samuel 7:19_reference_end_ _reference_start_Daniel 9:10_reference_end_ _reference_start_Isaiah 1:10_reference_end_ _reference_start_Isaiah 30:09_ wreference_end_ \cme law of the passover \cmf loi de la Pâque des juifs _reference_start_Psalms 81:06_reference_end_ \cme laws of priestly code beyond Deut. code \cmf lois spéciales, lois des sacrificateurs _reference_start_1 Chronicles 16:40_reference_end_ _reference_start_Daniel 9:11_reference_end_ _reference_start_Daniel 9:13_reference_end_ _reference_start_Exodus 12:49_reference_end_ _reference_start_Exodus 13:09_reference_end_ _reference_start_Exodus 16:04_reference_end_ _reference_start_Exodus 16:28_reference_end_ _reference_start_Exodus 18:16_reference_end_ _reference_start_Exodus 18:20_reference_end_ _reference_start_Genesis 26:05_reference_end_ _reference_start_Psalms 105:45_reference_end_ \cme Mosaic covenant (used with 'ark', 'tent', 'tabernacle', 'veil') \cmf l'alliance de Moïse (utilisé avec 'arche', 'tente', 'tabernacle) _reference_start_2 Chronicles 23:11_reference_end_ _reference_start_2 Kings 11:12_reference_end_ _reference_start_Exodus 25:16_reference_end_ _reference_start_Exodus 25:21_reference_end_ _reference_start_Exodus 38:21_reference_end_ _reference_start_Leviticus 24:03_reference_end_ _reference_start_Numbers 10:11_reference_end_ \cme non-specific commands of God \cmf commandemants non-specifiques de Dieu _reference_start_1 Chronicles 29:19_reference_end_ _reference_start_1 Kings 2:03_reference_end_ _reference_start_2 Chronicles 34:31_reference_end_ _reference_start_2 Kings 17:15_reference_end_ _reference_start_2 Kings 23:03_reference_end_ _reference_start_Psalms 19:08_reference_end_ _reference_start_Psalms 119:14_reference_end_ \cme tablets of the 10 commandments in the ark \cmf la tablette des 10 commandemeants dans l'arche _reference_start_Exodus 25:21_reference_end_ _reference_start_Exodus 40:20_reference_end_ \cme the ark of God \cmf l'arche de Dieu _reference_start_Exodus 16:34_reference_end_ _reference_start_Exodus 27:21_reference_end_ _reference_start_Exodus 30:06_reference_end_ _reference_start_Exodus 30:36_reference_end_ _reference_start_Leviticus 16:13_reference_end_ lawlaw\h hßrôGt \f loi \cme Deuteronomic code of law \cmf système juridique déutéronomique _reference_start_1 Chronicles 22:12_reference_end_ _reference_start_1 Kings 2:03_reference_end_ _reference_start_Deuteronomy 1:05_reference_end_ _reference_start_Deuteronomy 28:58_reference_end_ _reference_start_Deuteronomy 28:61_reference_end_ _reference_start_Exodus 24:12_reference_end_ _reference_start_Joshua 1:07_reference_end_ _reference_start_Psalms 1:02_reference_end_ _reference_start_Psalms 19:08_reference_end_ \cme Exodus u ?tfXJ<. xj\N@2$|n`RD6( d  c  b  a  `  _ " ^ ! ]  \  [  Z  Y  X  W V U T S  R$+ Q$* P$) O$( N$ M$ L$ K$ J$ I$ H$ G$ F E 6 D 3 C7 B A @$ ? > =" <( ; :w 9 8  7  6" 5  4  3 2 1& 0 / . - ,i- + * ) ( ' & mmleaderleader\h ¥ûGla' \f chef \cme companion, confidant \cmf copain, ami _reference_start_Proverbs 2:17_reference_end_ _reference_start_Psalms 55:14_reference_end_ \cme leader, protector \cmf protecteur _reference_start_1 Chronicles 1:51_reference_end_ _reference_start_1 Chronicles 1:54_reference_end_ _reference_start_Exodus 15:15_reference_end_ _reference_start_Genesis 36:15_reference_end_ _reference_start_Genesis 36:16_reference_end_ _reference_start_Genesis 36:17_reference_end_ _reference_start_Genesis 36:18_reference_end_ _reference_start_Genesis 36:19_reference_end_ _reference_start_Genesis 36:21_reference_end_ _reference_start_Genesis 36:29_reference_end_ _reference_start_Genesis 36:30_reference_end_ _reference_start_Genesis 36:40_reference_end_ _reference_start_Genesis 36:41_reference_end_ _reference_start_Genesis 36:42_reference_end_ _reference_start_Genesis 36:43_reference_end_ I+ 7levitelevite\h yÇwEl \f lévite \cme Levites as religious group \cmf Lévites comme group réligieux _reference_start_1 Chronicles 9:02_reference_end_ _reference_start_1 Chronicles 9:14_reference_end_ _reference_start_1 Chronicles 9:18_reference_end_ _reference_start_1 Chronicles 9:26_reference_end_ _reference_start_1 Chronicles 9:31_reference_end_ _reference_start_1 Chronicles 9:33_reference_end_ _reference_start_1 Chro |3 ''+leader, (ram)leader, (ram)\h lÇya' \f chef, (bélier) \cme chief, leader (figurative use of 'ram') \cmf chef (sens figuré de 'bélier') _reference_start_2 Kings 24:15_reference_end_ _reference_start_Exodus 15:15_reference_end_ _reference_start_Ezra 17:13_reference_end_ _reference_start_Ezra 31:11_reference_end_ _reference_start_Ezra 31:14_reference_end_ \cme ram \cmf bélier _reference_start_Genesis 32:15_reference_end_ }nicles 9:34_reference_end_ _reference_start_1 Chronicles 16:04_reference_end_ _reference_start_1 Chronicles 23:02_reference_end_ _reference_start_1 Chronicles 23:26_reference_end_ _reference_start_1 Chronicles 23:27_reference_end_ _reference_start_1 Chronicles 28:13_reference_end_ _reference_start_1 Chronicles 28:21_reference_end_ _reference_start_1 Kings 8:04_reference_end_ _reference_start_1 Kings 12:31_reference_end_ _reference_start_1 Samuel 6:15_reference_end_ _reference_start_2 Chronicles 7:06_reference_end_ _reference_start_2 Samuel 15:24_reference_end_ _reference_start_Deuteronomy 18:01_reference_end_ _reference_start_Exodus 38:21_reference_end_ \cme member of tribe of Levi \cmf membre de la tribu de Lévi _reference_start_Deuteronomy 18:06_reference_end_ _reference_start_Deuteronomy 18:07_reference_end_ _reference_start_Exodus 4:14_reference_end_ \cme son of Jacob \cmf fils de Jacob _reference_start_1 Chronicles 2:01_reference_end_ _reference_start_1 Chronicles 23:06_reference_end_ _reference_start_Exodus 1:02_reference_end_ _reference_start_Exodus 6:16_reference_end_ _reference_start_Genesis 29:34_reference_end_ _reference_start_Genesis 34:25_reference_end_ _reference_start_Genesis 34:30_reference_end_ _reference_start_Genesis 35:23_reference_end_ _reference_start_Genesis 35:23_reference_end_ _reference_start_Genesis 46:11_reference_end_ _reference_start_Genesis 49:05_reference_end_ \cme the tribe of Levi \cmf le tribu de Lévi _reference_start_1 Chronicles 21:06_reference_end_ _reference_start_1 Chronicles 23:03_reference_end_ _reference_start_1 Chronicles 23:06_reference_end_ _reference_start_1 Chronicles 23:14_reference_end_ _reference_start_1 Chronicles 23:24_reference_end_ _reference_start_Deuteronomy 18:01_reference_end_ _reference_start_Exodus 2:01_reference_end_ _reference_start_Exodus 6:19_reference_end_ _reference_start_Exodus 6:25_reference_end_ _reference_start_Leviticus 25:32_reference_end_ _reference_start_Leviticus 25:33_reference_end_ _reference_start_Psalms 135:20_reference_end_ ?tfXJ<. xj\N@2#{m_QC5' # " !   B    /  #                  $      '    "  (            !        ~  }  |  {  z1 y. x# w# v" u" t" s r q  p  o n m l& k j  i h  g  f  e  rence_end_ _reference_start_1 Samuel 17:36_reference_end_ _reference_start_1 Samuel 20:14_reference_end_ _reference_start_1 Samuel 25:06_reference_end_ _reference_start_2 Samuel 1:23_reference_end_ _reference_start_2 Samuel 12:18_reference_end_ _reference_start_2 Samuel 12:21_reference_end_ _reference_start_2 Samuel 12:22_reference_end_ _reference_start_2 Samuel 18:14_reference_end_ _reference_start_2 Samuel 19:07_reference_end_ _reference_start_2 Samuel 19:35_reference_end_ _reference_start_2 Samuel 22:47_reference_end_ _reference_start_Daniel 12:07_reference_end_ _reference_start_Deuteronomy 28:66_reference_end_ _reference_start_Ecclesiastes 2:03_reference_end_ _reference_start_Ecclesiastes 3:12_reference_end_ _reference_start_Exodus 1:14_reference_end_ _reference_start_Exodus 4:18_reference_end_ _reference_start_Exodus 6:16_reference_end_ _reference_start_Exodus 21:35_reference_end_ _reference_start_Genesis 1:20_reference_end_ _reference_start_Genesis 1:21_reference_end_ _reference_start_Genesis 1:24_r eference_end_ _reference_start_Genesis 1:28_reference_end_ _reference_start_Genesis 1:30_reference_end_ _reference_start_Genesis 2:07_reference_end_ _reference_start_Genesis 2:19_reference_end_ _reference_start_Genesis 3:14_reference_end_ _reference_start_Genesis 3:17_reference_end_ _reference_start_Genesis 6:17_reference_end_ _reference_start_Genesis 6:19_reference_end_ _reference_start_Genesis 7:11_reference_end_ _reference_start_Genesis 7:15_reference_end_ _reference_start_Genesis 7:22_reference_end_ _reference_start_Genesis 8:01_reference_end_ _reference_start_Genesis 8:17_reference_end_ _reference_start_Genesis 8:19_reference_end_ _reference_start_Genesis 8:21_reference_end_ _reference_start_Genesis 9:03_reference_end_ _reference_start_Genesis 9:10_reference_end_ _reference_start_Genesis 9:12_reference_end_ _reference_start_Genesis 9:15_reference_end_ _reference_start_Genesis 9:16_reference_end_ _reference_start_Genesis 16:14_reference_end_ _reference_start_Genesis 25:06_reference_end_ _reference_sta rt_Genesis 27:46_reference_end_ _reference_start_Genesis 43:07_reference_end_ _reference_start_Genesis 43:27_reference_end_ _reference_start_Genesis 43:28_reference_end_ _reference_start_Genesis 45:03_reference_end_ _reference_start_Genesis 45:26_reference_end_ _reference_start_Genesis 45:28_reference_end_ _reference_start_Genesis 46:30_reference_end_ _reference_start_Jonah 4:03_reference_end_ _reference_start_Jonah 4:08_reference_end_ _reference_start_Leviticus 18:18_reference_end_ _reference_start_Proverbs 1:12_reference_end_ _reference_start_Proverbs 3:02_reference_end_ _reference_start_Proverbs 3:22_reference_end_ _reference_start_Proverbs 14:30_reference_end_ _reference_start_Proverbs 18:21_reference_end_ _reference_start_Proverbs 31:12_reference_end_ _reference_start_Psalms 52:07_reference_end_ _reference_start_Psalms 63:04_reference_end_ _reference_start_Psalms 63:05_reference_end_ _reference_start_Psalms 124:03_reference_end_ _reference_start_Ruth 2:20_reference_end_ _reference_start_Ruth 3:13_ref erence_end_ \cme eternal life \cmf vie éternelle _reference_start_Daniel 12:02_reference_end_ _reference_start_Proverbs 2:19_reference_end_ _reference_start_Proverbs 3:19_reference_end_ _reference_start_Proverbs 5:06_reference_end_ _reference_start_Proverbs 11:30_reference_end_ _reference_start_Proverbs 13:12_reference_end_ _reference_start_Proverbs 15:04_reference_end_ _reference_start_Proverbs 15:24_reference_end_ \cme figurative sens \cmf sens figuré _reference_start_Genesis 26:19_reference_end_ \cme form of an oath \cmf forme d'un serment _reference_start_1 Kings 1:29_reference_end_ _reference_start_1 Kings 2:24_reference_end_ _reference_start_1 Samuel 17:55_reference_end_ _reference_start_1 Samuel 19:06_reference_end_ _reference_start_1 Samuel 20:03_reference_end_ _reference_start_1 Samuel 20:21_reference_end_ _reference_start_1 Samuel 25:26_reference_end_ _reference_start_1 Samuel 25:34_reference_end_ _reference_start_1 Samuel 26:10_reference_end_ _reference_start_1 Samuel 26:16_reference_end_ _re ference_start_1 Samuel 28:10_reference_end_ _reference_start_1 Samuel 29:06_reference_end_ _reference_start_2 Samuel 2:27_reference_end_ _reference_start_2 Samuel 4:09_reference_end_ _reference_start_2 Samuel 11:11_reference_end_ _reference_start_2 Samuel 12:05_reference_end_ _reference_start_2 Samuel 14:11_reference_end_ _reference_start_2 Samuel 14:19_reference_end_ _reference_start_2 Samuel 15:21_reference_end_ _reference_start_Genesis 42:15_reference_end_ _reference_start_Genesis 42:16_reference_end_ _reference_start_Numbers 14:21_reference_end_ \cme good things of life & spiritual blessing \cmf les bonnes choses de la vie et bénédictions spirituelles _reference_start_Genesis 2:09_reference_end_ _reference_start_Genesis 3:22_reference_end_ _reference_start_Genesis 3:24_reference_end_ _reference_start_Proverbs 3:22_reference_end_ _reference_start_Proverbs 4:13_reference_end_ _reference_start_Proverbs 4:22_reference_end_ _reference_start_Proverbs 4:23_reference_end_ _reference_start_Proverbs 4:23_refe rence_end_ _reference_start_Proverbs 6:23_reference_end_ _reference_start_Proverbs 8:35_reference_end_ _reference_start_Proverbs 10:11_reference_end_ _reference_start_Proverbs 10:16_reference_end_ _reference_start_Proverbs 10:17_reference_end_ _reference_start_Proverbs 11:19_reference_end_ _reference_start_Proverbs 12:28_reference_end_ _reference_start_Proverbs 13:14_reference_end_ _reference_start_Proverbs 14:27_reference_end_ _reference_start_Proverbs 14:27_reference_end_ _reference_start_Proverbs 15:31_reference_end_ _reference_start_Proverbs 16:15_reference_end_ _reference_start_Proverbs 16:22_reference_end_ _reference_start_Proverbs 19:23_reference_end_ _reference_start_Proverbs 21:21_reference_end_ _reference_start_Proverbs 22:04_reference_end_ _reference_start_Proverbs 27:27_reference_end_ _reference_start_Psalms 30:06_reference_end_ \cme life, period of time someone is alive \cmf duré de vie, périod d'être vivant _reference_start_1 Kings 5:01_reference_end_ _reference_start_1 Samuel 1:11_reference_end_ _reference_start_1 Samuel 7:15_reference_end_ _reference_start_1 Samuel 18:18_reference_end_ _reference_start_1 Samuel 25:29_reference_end_ _reference_start_2 Samuel 15:21_reference_end_ _reference_start_2 Samuel 18:18_reference_end_ _reference_start_Genesis 18:10_reference_end_ _reference_start_Genesis 18:14_reference_end_ _reference_start_Genesis 23:01_reference_end_ _reference_start_Genesis 25:07_reference_end_ _reference_start_Genesis 25:17_reference_end_ _reference_start_Genesis 47:08_reference_end_ _reference_start_Genesis 47:28_reference_end_ _reference_start_Genesis 48:09_reference_end_ _reference_start_Jonah 2:07_reference_end_ _reference_start_Proverbs 3:02_reference_end_ _reference_start_Proverbs 4:10_reference_end_ _reference_start_Proverbs 9:11_reference_end_ _reference_start_Proverbs 14:30_reference_end_ _reference_start_Proverbs 31:12_reference_end_ _reference_start_Psalms 17:14_reference_end_ _reference_start_Psalms 23:06_reference_end_ _reference_start_Psalms 34:13_reference_end_ x Uliverliver\h dEbAÐk \f foie \cme emotions \cmf émotions _reference_start_Lamentations 2:11_reference_end_ \cme liver, entrail \cmf les entrailles _reference_start_Exodus 29:13_reference_end_ _reference_start_Proverbs 7:23_reference_end_  liplip\h hApAW \f levre \cme speech, what is said; figurative sense \cmf parole, ce qui est dit; sense figuré _reference_start_Proverbs 4:24 # /lifelife\h yax / £yÇCyax \f vie \cme be alive \cmf vivre, être vivant _reference_start_1 Kings 3:22_reference_end_ _reference_start_1 Kings 3:23_reference_end_ _reference_start_1 Kings 3:25_reference_end_ _reference_start_1 Kings 3:26_reference_end_ _reference_start_1 Kings 3:27_reference_end_ _reference_start_1 Kings 8:40_reference_end_ _reference_start_1 Kings 11:34_reference_end_ _reference_start_1 Samuel 1:26_reference_end_ _reference_start_1 Samuel 14:39_reference_end_ _reference_start_1 Samuel 15:08_reference_end_ _reference_start_1 Samuel 17:26_refe  ?tfXJ<. xj\N@2$|n`RD6( b  a  ` 7 _  ^  ] \ [ Z Y  X W V U  T S R| Q? P? O4 N M L K J I H G  F  E. D- C- B- A+ @+ ?+ >. = < ;  :  9 8 7  6 5 4 3 2 1 0 / . - , + * ) ( ' & % $# ?tfXJ<. xj\N@2$|n`RD6( !      0 / /                                        ~ }# | { z y x w v u t s r* q* p  o  n  m  l k  j  i  h  g  f  e " d  c  ?tfXJ<. xj\N@2$|n`RD6( `$ _ ^% ]% \ [ Z Y X  W  V $ U  T S R Q P O N M L K J I H G F E D C B A @ ? > = < ; : 9 8 7 6  5  4  3 2 1  0  /  . - ,  + * ) ( ' & %" $ # " _reference_end_ _reference_start_Proverbs 5:02_reference_end_ _reference_start_Proverbs 5:03_reference_end_ _reference_start_Proverbs 7:21_reference_end_ _reference_start_Proverbs 8:06_reference_end_ _reference_start_Proverbs 8:07_reference_end_ _reference_start_Proverbs 10:08_reference_end_ _reference_start_Proverbs 10:10_reference_end_ _reference_start_Proverbs 10:13_reference_end_ _reference_start_Proverbs 10:18_reference_end_ _reference_start_Proverbs 10:19_reference_end_ _reference_start_Proverbs 10:21_reference_end_ _reference_start_Proverbs 10:32_reference_end_ _reference_start_Proverbs 12:13_reference_end_ _reference_start_Proverbs 12:19_reference_end_ _reference_start_Proverbs 12:22_reference_end_ _reference_start_Proverbs 13:03_reference_end_ _reference_start_Proverbs 14:03_reference_end_ _reference_start_Proverbs 14:07_reference_end_ _reference_start_Proverbs 14:23_reference_end_ _reference_start_Proverbs 15:08_reference_end_ _reference_start_Proverbs 16:10_reference_end_ _reference_start_Proverbs 16:13_reference_end_ _reference_start_Proverbs 16:21_reference_end_ _reference_start_Proverbs 16:23_reference_end_ _reference_start_Proverbs 16:27_reference_end_ _reference_start_Proverbs 16:30_reference_end_ _reference_start_Proverbs 17:04_reference_end_ _reference_start_Proverbs 17:07_reference_end_ _reference_start_Proverbs 17:28_reference_end_ _reference_start_Proverbs 18:06_reference_end_ _reference_start_Proverbs 18:07_reference_end_ _reference_start_Proverbs 18:28_reference_end_ _reference_start_Proverbs 19:01_reference_end_ _reference_start_Proverbs 20:15_reference_end_ _reference_start_Proverbs 20:19_reference_end_ _reference_start_Proverbs 22:11_reference_end_ _reference_start_Proverbs 22:18_reference_end_ Pro23.16 _reference_start_Proverbs 24:02_reference_end_ _reference_start_Proverbs 24:26_reference_end_ _reference_start_Proverbs 24:28_reference_end_ _reference_start_Proverbs 26:23_reference_end_ _reference_start_Proverbs 26:24_reference_end_ _reference_start_Proverbs 27:02_reference_end_ $!!Living Godliving god\h £yÇCyax / yax £yÿÿihÈlé' \f Deiu vivant \cme the living God \cmf le Dieu vivant _reference_start_1 Samuel 17:26_reference_end_ _reference_start_1 Samuel 17:36_reference_end_ _reference_start_2 Kings 19:04_reference_end_ _reference_start_2 Kings 19:16_reference_end_ _reference_start_Daniel 6:21_reference_end_ _reference_start_Daniel 6:27_reference_end_ _reference_start_Deuteronomy 5:26_reference_end_ _reference_start_Hosea 2:01_reference_end_ _reference_start_Isaiah 37:04_reference_end_ _reference_start_Isaiah 37:17_reference_end_ _reference_start_Jeremiah 10:10_reference_end_ _reference_start_Jeremiah 23:36_reference_end_ _reference_start_Joshua 3:10_reference_end_ _reference_start_Psalms 42:03_reference_end_ _reference_start_Psalms 84:02_reference_end_ ?tfXJ<. xj\N@2$|n`RD6(                            /    n Z G G ; 9 6 3        ~ } | { z y x w vZ u  t  s  r  q  p  o  n  m l  k  j  i  h  g  f 5 e  d  cT b* a tart_2 Samuel 7:20_reference_end_ _reference_start_2 Samuel 7:28_reference_end_ _reference_start_2 Samuel 7:29_reference_end_ _reference_start_Daniel 1:02_reference_end_ _reference_start_Daniel 9:03_reference_end_ _reference_start_Daniel 9:04_reference_end_ _reference_start_Daniel 9:07_reference_end_ _reference_start_Daniel 9:08_reference_end_ _reference_start_Daniel 9:15_reference_end_ _reference_start_Daniel 9:16_reference_end_ _reference_start_Daniel 9:17_reference_end_ _reference_start_Daniel 9:19_reference_end_ _reference_start_Daniel 90:09_reference_end_ _reference_start_Exodus 4:10_reference_end_ _reference_start_Exodus 4:13_reference_end_ _reference_start_Exodus 5:22_reference_end_ _reference_start_Exodus 15:17_reference_end_ _reference_start_Exodus 23:17_reference_end_ _reference_start_Exodus 23:17_reference_end_ _reference_start_Genesis 15:02_reference_end_ _reference_start_Genesis 15:08_reference_end_ _reference_start_Genesis 18:27_reference_end_ _reference_start_Genesis 18:30_reference_end_ _reference_start_Genesis 18:31_reference_end_ _reference_start_Genesis 18:32_reference_end_ _reference_start_Genesis 20:04_reference_end_ _reference_start_Numbers 14:17_reference_end_ _reference_start_Psalms 2:04_reference_end_ _reference_start_Psalms 51:17_reference_end_ _reference_start_Psalms 54:06_reference_end_ _reference_start_Psalms 57:10_reference_end_ _reference_start_Psalms 59:12_reference_end_ _reference_start_Psalms 71:05_reference_end_ _reference_start_Psalms 71:16_reference_end_ _reference_start_Psalms 90:01_reference_end_ _reference_start_Psalms 110:05_reference_end_ \cme polite address \cmf salutation poli _reference_start_Genesis 18:03_reference_end_ \cme prince, king,"sir", "my lord" \cmf prince, roi, "mon seigneur" (Arm) _reference_start_Daniel 4:16_reference_end_ _reference_start_Daniel 4:21_reference_end_ \cme someone who has authority over another \cmf maître, qqn en autorité envers un autre (Arm) _reference_start_Daniel 2:47_reference_end_ _reference_start_Daniel 5:23_reference_end_ s)s2))%Lord of heavenlord of heaven\h €ÇyamüH 'ãrAm \f Seigneur du ciel \cme Master/Lord of Heaven \cmf Seigneur du ciel (Arm) _reference_start_Daniel 5:23_reference_end_;OLORD Godlord god\h £yhl' hwhy. \f L'Eternel Dieu \cme LORD (our, your, my) God \cmf l'Eternel (ton, notre, mon) Dieu _reference_start_1 Chronicles 16:04_reference_end_ _reference_start_1 Chronicles 16:14_reference_end_ _reference_start_1 Chronicles 17:16_reference_end_ _reference_start_1 Chronicles 17:17_reference_end_ _refere lAlordlord\h 'ãrAm \f signeur \cme God \cmf Dieu \cme Lord, God \cmf Seigneur _reference_start_1 Kings 2:26_reference_end_ _reference_start_1 Kings 3:10_reference_end_ _reference_start_1 Kings 8:53_reference_end_ _reference_start_1 Kings 22:06_reference_end_ _reference_start_2 Samuel 7:18_reference_end_ _reference_start_2 Samuel 7:19_reference_end_ _reference_s nce_start_1 Chronicles 21:17_reference_end_ _reference_start_1 Chronicles 22:1_reference_end_ _reference_start_1 Chronicles 23:25_reference_end_ _reference_start_1 Chronicles 24:19_reference_end_ _reference_start_1 Chronicles 28:08_reference_end_ _reference_start_1 Chronicles 28:20_reference_end_ _reference_start_1 Chronicles 29:1_reference_end_ _reference_start_1 Kings 1:17_reference_end_ _reference_start_1 Kings 1:30_reference_end_ _reference_start_1 Kings 1:36_reference_end_ _reference_start_1 Kings 1:48_reference_end_ _reference_start_1 Kings 2:03_reference_end_ _reference_start_1 Kings 3:07_reference_end_ _reference_start_1 Kings 5:17_reference_end_ _reference_start_1 Kings 5:18_reference_end_ _reference_start_1 Kings 5:19_reference_end_ _reference_start_1 Kings 8:1_reference_end_ _reference_start_1 Kings 9:09_reference_end_ _reference_start_1 Kings 10:09_reference_end_ _reference_start_1 Kings 11:04_reference_end_ _reference_start_1 Kings 11:09_reference_end_ _reference_start_1 Kings 11:31_reference _end_ _reference_start_1 Kings 13:06_reference_end_ _reference_start_1 Kings 13:21_reference_end_ _reference_start_1 Samuel 2:30_reference_end_ _reference_start_1 Samuel 5:10_reference_end_ _reference_start_1 Samuel 7:08_reference_end_ _reference_start_1 Samuel 10:18_reference_end_ _reference_start_1 Samuel 12:09_reference_end_ _reference_start_1 Samuel 12:12_reference_end_ _reference_start_1 Samuel 12:14_reference_end_ _reference_start_1 Samuel 12:19_reference_end_ _reference_start_1 Samuel 13:13_reference_end_ _reference_start_1 Samuel 14:17_reference_end_ _reference_start_1 Samuel 14:41_reference_end_ _reference_start_1 Samuel 15:15_reference_end_ _reference_start_1 Samuel 15:21_reference_end_ _reference_start_1 Samuel 15:30_reference_end_ _reference_start_1 Samuel 20:12_reference_end_ _reference_start_1 Samuel 23:10_reference_end_ _reference_start_1 Samuel 23:11_reference_end_ _reference_start_1 Samuel 25:29_reference_end_ _reference_start_1 Samuel 25:32_reference_end_ _reference_start_1 Samuel 25:34_ reference_end_ _reference_start_1 Samuel 30:06_reference_end_ _reference_start_2 Chronicles 7:22_reference_end_ _reference_start_2 Kings 19:19_reference_end_ _reference_start_2 Samuel 7:25_reference_end_ _reference_start_2 Samuel 12:07_reference_end_ _reference_start_2 Samuel 14:11_reference_end_ _reference_start_2 Samuel 18:28_reference_end_ _reference_start_2 Samuel 24:03_reference_end_ _reference_start_2 Samuel 24:23_reference_end_ _reference_start_2 Samuel 24:24_reference_end_ _reference_start_Daniel 9:04_reference_end_ _reference_start_Daniel 9:10_reference_end_ _reference_start_Daniel 9:13_reference_end_ _reference_start_Daniel 9:14_reference_end_ _reference_start_Daniel 9:20_reference_end_ _reference_start_Deuteronomy 18:1_reference_end_ _reference_start_Deuteronomy 28:1_reference_end_ _reference_start_Exodus 3:15_reference_end_ _reference_start_Exodus 3:16_reference_end_ _reference_start_Exodus 3:18_reference_end_ _reference_start_Exodus 4:05_reference_end_ _reference_start_Exodus 5:01_reference_e nd_ _reference_start_Exodus 5:03_reference_end_ _reference_start_Exodus 6:07_reference_end_ _reference_start_Exodus 7:16_reference_end_ _reference_start_Exodus 8:06_reference_end_ _reference_start_Exodus 8:22_reference_end_ _reference_start_Exodus 8:23_reference_end_ _reference_start_Exodus 8:24_reference_end_ _reference_start_Exodus 9:01_reference_end_ _reference_start_Exodus 9:13_reference_end_ _reference_start_Exodus 9:26_reference_end_ _reference_start_Exodus 9:30_reference_end_ _reference_start_Exodus 10:1_reference_end_ _reference_start_Exodus 15:26_reference_end_ _reference_start_Exodus 16:12_reference_end_ _reference_start_Exodus 20:1_reference_end_ _reference_start_Exodus 20:25_reference_end_ _reference_start_Exodus 23:19_reference_end_ _reference_start_Genesis 2:1_reference_end_ _reference_start_Genesis 24:1_reference_end_ _reference_start_Genesis 27:20_reference_end_ _reference_start_Genesis 28:13_reference_end_ _reference_start_Jeremiah 10:10_reference_end_ _reference_start_Jonah 2:02_referenc e_end_ _reference_start_Jonah 2:07_reference_end_ _reference_start_Leviticus 18:02_reference_end_ _reference_start_Leviticus 18:04_reference_end_ _reference_start_Leviticus 18:30_reference_end_ _reference_start_Leviticus 25:17_reference_end_ _reference_start_Leviticus 25:38_reference_end_ _reference_start_Leviticus 25:55_reference_end_ _reference_start_Numbers 10:09_reference_end_ _reference_start_Numbers 10:10_reference_end_ _reference_start_Psalms 30:03_reference_end_ _reference_start_Psalms 30:13_reference_end_ _reference_start_Psalms 72:18_reference_end_ _reference_start_Psalms 80:05_reference_end_ _reference_start_Psalms 80:20_reference_end_ _reference_start_Psalms 84:09_reference_end_ _reference_start_Psalms 84:12_reference_end_ _reference_start_Ruth 2:12_reference_end_ \cme Lord GOD \cmf Seigneur Eternel _reference_start_1 Kings 2:26_reference_end_ _reference_start_1 Kings 8:53_reference_end_ _reference_start_2 Samuel 7:18_reference_end_ _reference_start_2 Samuel 7:22_reference_end_ _reference_start_2 Samuel 7:28_reference_end_ _reference_start_2 Samuel 7:29_reference_end_ _reference_start_Amos 1:1_reference_end_ _reference_start_Deuteronomy 3:24_reference_end_ _reference_start_Deuteronomy 9:26_reference_end_ _reference_start_Ezekiel 1:1_reference_end_ _reference_start_Genesis 15:02_reference_end_ _reference_start_Genesis 15:08_reference_end_ _reference_start_Isaiah 3:15_reference_end_ _reference_start_Isaiah 22:05_reference_end_ _reference_start_Isaiah 52:04_reference_end_ _reference_start_Isaiah 61:01_reference_end_ _reference_start_Isaiah 61:11_reference_end_ _reference_start_Isaiah 65:13_reference_end_ _reference_start_Isaiah 65:15_reference_end_ _reference_start_Jeremiah 1:06_reference_end_ _reference_start_Joshua 7:07_reference_end_ _reference_start_Jude 6:22_reference_end_ _reference_start_Jude 16:28_reference_end_ _reference_start_Psalms 69:07_reference_end_ _reference_start_Psalms 71:05_reference_end_ _reference_start_Psalms 71:16_reference_end_ _reference_start_Psalms 73:28_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( ^ ] \ [ Z Y X W V U T S R Q  P  O N M  L  K  J  I  H  G  F  E  D C  B " A  @  ?  >  =  <  ;  :  9 ) 8  7 6  5  4 3 2  1  0  /  .  -  ,  + *  ) ( '  &  %  $  #  "  ! 0  $ ?tfXJ<. xj\N@2$|n`RD6(   I G G E A A   A A = = 4                   5    T ~T }P |P {H z y x w v7 u& t s r q p  o  n m l k j i h g f e d  c  b  a `  _ amuel 1:11_reference_end_ _reference_start_1 Samuel 4:04_reference_end_ _reference_start_1 Samuel 15:02_reference_end_ _reference_start_1 Samuel 17:45_reference_end_ _reference_start_2 Kings 3:14_reference_end_ _reference_start_2 Samuel 6:02_reference_end_ _reference_start_2 Samuel 6:18_reference_end_ _reference_start_2 Samuel 6:18_reference_end_ _reference_start_2 Samuel 7:08_reference_end_ _reference_start_2 Samuel 7:26_reference_end_ _reference_start_2 Samuel 7:27_reference_end_ _reference_start_Habakkuk 2:13_reference_end_ _reference_start_Haggai 1:02_reference_end_ _reference_start_Haggai 1:05_reference_end_ _reference_start_Haggai 1:07_reference_end_ _reference_start_Haggai 1:09_reference_end_ _reference_start_Haggai 1:14_reference_end_ _reference_start_Haggai 2:04_reference_end_ _reference_start_Haggai 2:06_reference_end_ _reference_start_Haggai 2:23_reference_end_ _reference_start_Isaiah 1:09_reference_end_ _reference_start_Isaiah 1:24_reference_end_ _reference_start_Isaiah 2:12_reference_end_ _re ference_start_Isaiah 3:01_reference_end_ _reference_start_Isaiah 3:15_reference_end_ _reference_start_Isaiah 5:07_reference_end_ _reference_start_Isaiah 5:09_reference_end_ _reference_start_Isaiah 5:16_reference_end_ _reference_start_Isaiah 5:24_reference_end_ _reference_start_Isaiah 6:03_reference_end_ _reference_start_Isaiah 6:05_reference_end_ _reference_start_Isaiah 54:05_reference_end_ _reference_start_Jeremiah 2:19_reference_end_ _reference_start_Jeremiah 6:06_reference_end_ _reference_start_Jeremiah 6:09_reference_end_ _reference_start_Jeremiah 7:03_reference_end_ _reference_start_Jeremiah 7:21_reference_end_ _reference_start_Jeremiah 16:09_reference_end_ _reference_start_Jeremiah 51:57_reference_end_ _reference_start_Jeremiah 51:58_reference_end_ _reference_start_Malachi 1:04_reference_end_ _reference_start_Malachi 1:06_reference_end_ _reference_start_Malachi 1:08_reference_end_ _reference_start_Malachi 1:09_reference_end_ _reference_start_Malachi 1:13_reference_end_ _reference_start_Malachi 2:02_reference_end_ _reference_start_Malachi 3:01_reference_end_ _reference_start_Micah 4:04_reference_end_ _reference_start_Nahum 2:14_reference_end_ _reference_start_Nahum 3:05_reference_end_ _reference_start_Psalms 24:10_reference_end_ _reference_start_Psalms 46:08_reference_end_ _reference_start_Psalms 46:12_reference_end_ _reference_start_Psalms 48:09_reference_end_ _reference_start_Psalms 84:01_reference_end_ _reference_start_Psalms 84:05_reference_end_ _reference_start_Psalms 84:12_reference_end_ _reference_start_Zechariah 1:03_reference_end_ _reference_start_Zechariah 1:04_reference_end_ _reference_start_Zechariah 1:06_reference_end_ _reference_start_Zechariah 1:12_reference_end_ _reference_start_Zechariah 1:15_reference_end_ _reference_start_Zechariah 1:17_reference_end_ _reference_start_Zechariah 2:12_reference_end_ _reference_start_Zechariah 2:13_reference_end_ _reference_start_Zechariah 3:07_reference_end_ _reference_start_Zephaniah 2:09_reference_end_ _reference_start_Zephaniah 2:10_reference_end_ D#'' Lord (my) Godlord (my) god\h £yihÈlé'Ah yÃnOdá' \f Seigneur (mon) Dieu \cme Lord (my, your, our) God \cmf Seigneur (mon, ton, notre) Dieu _reference_start_Daniel 9:03_reference_end_ _reference_start_Daniel 9:09_reference_end_ _reference_start_Daniel 9:15_reference_end_ _reference_start_Psalms 38:16_reference_end_ _reference_start_Psalms 86:12_reference_end_ _reference_start_Psalms 90:17_reference_end_(''LORD of Hostslord of hosts\h tô'Abüc hÇwhÌy \f Eternel des armées \cme Lord of Hosts \cmf Eternel des armées _reference_start_1 Chronicles 11:09_reference_end_ _reference_start_1 Chronicles 17:07_reference_end_ _reference_start_1 Chronicles 17:24_reference_end_ _reference_start_1 Kings 18:15_reference_end_ _reference_start_1 Kings 18:15_reference_end_ _reference_start_1 Samuel 1:03_reference_end_ _reference_start_1 S ?tfXJ<. xj\N@2$|n`RD6( \& [T ZT YT X0 W. V. U T" S" R! Q' P' O' N' M' L' K' J3: I39 H G F E D C B6 A @ ? > = < ; : 9 8 7 6% 5% 4% 3% 2% 1% 0% /% .# -  ,  +  *  )  (  '  & - %  $  #  "  !        ?tfXJ<. xj\N@2$|n`RD6(                                  3  0  -  (    %             ~  }  |  {  z  y  x  w  v  u  t  s  r  q  p  o  n  m  lZ kV j& i  h g  f$ e$ d& c& b& a& `& _& ^& ]& t_1 Kings 3:02_reference_end_ _reference_start_1 Kings 3:03_reference_end_ _reference_start_1 Kings 3:05_reference_end_ _reference_start_1 Kings 3:07_reference_end_ _reference_start_1 Kings 5:17_reference_end_ _reference_start_1 Kings 5:18_reference_end_ _reference_start_1 Kings 5:19_reference_end_ _reference_start_1 Kings 5:21_reference_end_ _reference_start_1 Kings 5:26_reference_end_ _reference_start_1 Kings 6:01_reference_end_ _reference_start_1 Kings 6:02_reference_end_ _reference_start_1 Kings 6:11_reference_end_ _reference_start_1 Kings 6:19_reference_end_ _reference_start_1 Kings 6:37_reference_end_ _reference_start_1 Kings 7:12_reference_end_ _reference_start_1 Kings 7:40_reference_end_ _reference_start_1 Kings 7:45_reference_end_ _reference_start_1 Kings 7:48_reference_end_ _reference_start_1 Kings 7:51_reference_end_ _reference_start_1 Kings 8:1_reference_end_ _reference_start_1 Kings 10:01_reference_end_ _reference_start_1 Kings 10:05_reference_end_ _reference_start_1 Kings 10:09_reference_end _ _reference_start_1 Kings 10:12_reference_end_ _reference_start_1 Kings 11:1_reference_end_ _reference_start_1 Samuel 1:1_reference_end_ _reference_start_1 Samuel 4:03_reference_end_ _reference_start_1 Samuel 4:04_reference_end_ _reference_start_1 Samuel 4:05_reference_end_ _reference_start_1 Samuel 4:06_reference_end_ _reference_start_1 Samuel 5:03_reference_end_ _reference_start_1 Samuel 5:04_reference_end_ _reference_start_1 Samuel 5:06_reference_end_ _reference_start_1 Samuel 5:09_reference_end_ _reference_start_1 Samuel 6:1_reference_end_ _reference_start_1 Samuel 8:06_reference_end_ _reference_start_1 Samuel 8:07_reference_end_ _reference_start_1 Samuel 8:10_reference_end_ _reference_start_1 Samuel 8:18_reference_end_ _reference_start_1 Samuel 8:21_reference_end_ _reference_start_1 Samuel 8:22_reference_end_ _reference_start_1 Samuel 9:15_reference_end_ _reference_start_1 Samuel 9:17_reference_end_ _reference_start_1 Samuel 10:1_reference_end_ _reference_start_1 Samuel 11:07_reference_end_ _referen ce_start_1 Samuel 11:13_reference_end_ _reference_start_1 Samuel 11:15_reference_end_ _reference_start_1 Samuel 12:1_reference_end_ _reference_start_1 Samuel 13:12_reference_end_ _reference_start_1 Samuel 13:13_reference_end_ _reference_start_1 Samuel 13:14_reference_end_ _reference_start_1 Samuel 14:1_reference_end_ _reference_start_1 Samuel 17:37_reference_end_ _reference_start_1 Samuel 17:45_reference_end_ _reference_start_1 Samuel 17:46_reference_end_ _reference_start_1 Samuel 17:47_reference_end_ _reference_start_1 Samuel 18:12_reference_end_ _reference_start_1 Samuel 18:14_reference_end_ _reference_start_1 Samuel 18:17_reference_end_ _reference_start_1 Samuel 18:28_reference_end_ _reference_start_1 Samuel 19:05_reference_end_ _reference_start_1 Samuel 19:06_reference_end_ _reference_start_1 Samuel 19:09_reference_end_ _reference_start_1 Samuel 20:1_reference_end_ _reference_start_1 Samuel 21:07_reference_end_ _reference_start_1 Samuel 21:08_reference_end_ _reference_start_1 Samuel 22:10_reference_en d_ _reference_start_1 Samuel 22:17_reference_end_ _reference_start_1 Samuel 22:21_reference_end_ _reference_start_1 Samuel 23:1_reference_end_ _reference_start_1 Samuel 24:1_reference_end_ _reference_start_1 Samuel 28:1_reference_end_ _reference_start_1 Samuel 29:06_reference_end_ _reference_start_1 Samuel 30:06_reference_end_ _reference_start_1 Samuel 30:08_reference_end_ _reference_start_1 Samuel 30:23_reference_end_ _reference_start_1 Samuel 30:26_reference_end_ _reference_start_2 Chronicles 7:1_reference_end_ _reference_start_2 Samuel 1:12_reference_end_ _reference_start_2 Samuel 1:14_reference_end_ _reference_start_2 Samuel 1:16_reference_end_ _reference_start_2 Samuel 2:01_reference_end_ _reference_start_2 Samuel 2:05_reference_end_ _reference_start_2 Samuel 2:06_reference_end_ _reference_start_2 Samuel 3:09_reference_end_ _reference_start_2 Samuel 3:28_reference_end_ _reference_start_2 Samuel 3:39_reference_end_ _reference_start_2 Samuel 4:08_reference_end_ _reference_start_2 Samuel 4:09_reference_ end_ _reference_start_2 Samuel 5:1_reference_end_ _reference_start_2 Samuel 8:06_reference_end_ _reference_start_2 Samuel 8:11_reference_end_ 2Sa08.14 _reference_start_2 Samuel 10:12_reference_end_ _reference_start_2 Samuel 11:27_reference_end_ _reference_start_2 Samuel 12:1_reference_end_ _reference_start_2 Samuel 14:11_reference_end_ _reference_start_2 Samuel 14:17_reference_end_ _reference_start_2 Samuel 15:1_reference_end_ _reference_start_2 Samuel 17:14_reference_end_ _reference_start_2 Samuel 18:19_reference_end_ _reference_start_2 Samuel 18:28_reference_end_ _reference_start_2 Samuel 18:31_reference_end_ _reference_start_2 Samuel 19:08_reference_end_ _reference_start_2 Samuel 19:22_reference_end_ _reference_start_2 Samuel 20:19_reference_end_ _reference_start_2 Samuel 21:1_reference_end_ _reference_start_2 Samuel 23:02_reference_end_ _reference_start_2 Samuel 23:10_reference_end_ _reference_start_2 Samuel 23:12_reference_end_ _reference_start_2 Samuel 23:16_reference_end_ _reference_start_2 Samuel 23:17_reference_end_ _reference_start_2 Samuel 24:1_reference_end_ _reference_start_Daniel 9:02_reference_end_ _reference_start_Daniel 9:04_reference_end_ _reference_start_Daniel 9:08_reference_end_ _reference_start_Daniel 9:10_reference_end_ _reference_start_Daniel 9:13_reference_end_ _reference_start_Daniel 9:14_reference_end_ _reference_start_Daniel 9:20_reference_end_ _reference_start_Deuteronomy 1:1_reference_end_ _reference_start_Exodus 3:1_reference_end_ _reference_start_Exodus 15:01_reference_end_ _reference_start_Exodus 22:1_reference_end_ _reference_start_Exodus 27:21_reference_end_ _reference_start_Exodus 28:1_reference_end_ _reference_start_Exodus 38:22_reference_end_ _reference_start_Exodus 39:1_reference_end_ _reference_start_Genesis 2:01_reference_end_ _reference_start_Genesis 4:1_reference_end_ _reference_start_Genesis 5:29_reference_end_ _reference_start_Genesis 6:1_reference_end_ _reference_start_Genesis 9:26_reference_end_ _reference_start_Genesis 10:1_reference_end_ _reference_start_Ge nesis 14:22_reference_end_ _reference_start_Genesis 15:1_reference_end_ _reference_start_Genesis 17:01_reference_end_ _reference_start_Genesis 18:1_reference_end_ _reference_start_Genesis 20:18_reference_end_ _reference_start_Genesis 21:1_reference_end_ _reference_start_Genesis 24:1_reference_end_ _reference_start_Genesis 32:10_reference_end_ _reference_start_Genesis 38:1_reference_end_ _reference_start_Genesis 49:18_reference_end_ _reference_start_Jonah 1:1_reference_end_ _reference_start_Jonah 1:01_reference_end_ _reference_start_Jonah 3:03_reference_end_ _reference_start_Jonah 4:02_reference_end_ _reference_start_Jonah 4:03_reference_end_ _reference_start_Jonah 4:04_reference_end_ _reference_start_Jonah 4:06_reference_end_ _reference_start_Jonah 4:10_reference_end_ _reference_start_Leviticus 1:1_reference_end_ _reference_start_Numbers 1:1_reference_end_ _reference_start_Proverbs 2:05_reference_end_ _reference_start_Proverbs 2:06_reference_end_ _reference_start_Proverbs 3:05_reference_end_ _reference_st art_Proverbs 3:07_reference_end_ _reference_start_Proverbs 3:09_reference_end_ _reference_start_Proverbs 3:11_reference_end_ _reference_start_Proverbs 3:12_reference_end_ _reference_start_Proverbs 5:21_reference_end_ _reference_start_Proverbs 9:10_reference_end_ _reference_start_Proverbs 10:03_reference_end_ _reference_start_Proverbs 14:26_reference_end_ _reference_start_Proverbs 14:27_reference_end_ _reference_start_Proverbs 15:16_reference_end_ _reference_start_Proverbs 15:29_reference_end_ _reference_start_Proverbs 16:06_reference_end_ _reference_start_Proverbs 18:22_reference_end_ _reference_start_Proverbs 19:17_reference_end_ _reference_start_Proverbs 21:31_reference_end_ _reference_start_Proverbs 22:04_reference_end_ _reference_start_Proverbs 23:17_reference_end_ _reference_start_Psalms 1:02_reference_end_ _reference_start_Psalms 1:06_reference_end_ _reference_start_Psalms 2:02_reference_end_ _reference_start_Psalms 2:07_reference_end_ _reference_start_Psalms 2:11_reference_end_ _reference_start_Psa lms 3:1_reference_end_ _reference_start_Psalms 8:02_reference_end_ _reference_start_Psalms 8:10_reference_end_ _reference_start_Psalms 17:01_reference_end_ _reference_start_Psalms 17:13_reference_end_ _reference_start_Psalms 17:14_reference_end_ _reference_start_Psalms 19:08_reference_end_ _reference_start_Psalms 19:09_reference_end_ _reference_start_Psalms 19:10_reference_end_ _reference_start_Psalms 19:15_reference_end_ _reference_start_Psalms 23:01_reference_end_ _reference_start_Psalms 23:06_reference_end_ _reference_start_Psalms 24:01_reference_end_ _reference_start_Psalms 24:03_reference_end_ _reference_start_Psalms 24:05_reference_end_ _reference_start_Psalms 24:08_reference_end_ _reference_start_Psalms 24:10_reference_end_ _reference_start_Psalms 28:01_reference_end_ _reference_start_Psalms 28:05_reference_end_ _reference_start_Psalms 28:06_reference_end_ _reference_start_Psalms 28:07_reference_end_ _reference_start_Psalms 28:08_reference_end_ _reference_start_Psalms 30:1_reference_end_ _reference _start_Psalms 32:02_reference_end_ _reference_start_Psalms 32:05_reference_end_ _reference_start_Psalms 32:10_reference_end_ _reference_start_Psalms 32:11_reference_end_ _reference_start_Psalms 34:1_reference_end_ _reference_start_Psalms 54:08_reference_end_ _reference_start_Psalms 56:11_reference_end_ _reference_start_Psalms 59:04_reference_end_ _reference_start_Psalms 59:06_reference_end_ _reference_start_Psalms 59:09_reference_end_ _reference_start_Psalms 71:01_reference_end_ _reference_start_Psalms 71:05_reference_end_ _reference_start_Psalms 71:16_reference_end_ _reference_start_Psalms 90:13_reference_end_ _reference_start_Psalms 110:01_reference_end_ _reference_start_Psalms 110:02_reference_end_ _reference_start_Psalms 110:04_reference_end_ _reference_start_Psalms 124:01_reference_end_ _reference_start_Psalms 124:02_reference_end_ _reference_start_Psalms 124:06_reference_end_ _reference_start_Psalms 124:08_reference_end_ _reference_start_Psalms 127:01_reference_end_ _reference_start_Psalms 127:03_reference_end_ _reference_start_Psalms 139:01_reference_end_ _reference_start_Psalms 139:04_reference_end_ _reference_start_Psalms 139:21_reference_end_ _reference_start_Psalms 142:02_reference_end_ _reference_start_Psalms 142:06_reference_end_ _reference_start_Psalms 144:01_reference_end_ _reference_start_Psalms 144:03_reference_end_ _reference_start_Psalms 144:05_reference_end_ Psa144.15 _reference_start_Ruth 1:06_reference_end_ _reference_start_Ruth 1:08_reference_end_ _reference_start_Ruth 1:09_reference_end_ _reference_start_Ruth 1:13_reference_end_ _reference_start_Ruth 1:17_reference_end_ _reference_start_Ruth 1:21_reference_end_ _reference_start_Ruth 2:04_reference_end_ _reference_start_Ruth 2:12_reference_end_ _reference_start_Ruth 2:20_reference_end_ _reference_start_Ruth 3:10_reference_end_ _reference_start_Ruth 3:13_reference_end_ _reference_start_Ruth 4:11_reference_end_ _reference_start_Ruth 4:12_reference_end_ _reference_start_Ruth 4:13_reference_end_ _reference_start_Ruth 4:14_reference_end_ n%%mlord, masterlord, master\h €ôdA' \f seigneur, maître \cme husband \cmf mari _reference_start_Genesis 18:12_reference_end_ _reference_start_Jude 19:26_reference_ ^##LORD (YHWH)lord (yhwh)\h hwhy \f L'Eternel (YHWH) \cme LORD (YHWH) \cmf l'Eternel _reference_start_1 Chronicles 9:19_reference_end_ _reference_start_1 Chronicles 9:20_reference_end_ _reference_start_1 Chronicles 9:23_reference_end_ _reference_start_1 Chronicles 16:1_reference_end_ _reference_start_1 Chronicles 18:06_reference_end_ _reference_start_1 Chronicles 18:11_reference_end_ _reference_start_1 Chronicles 19:13_reference_end_ _reference_start_1 Chronicles 21:1_reference_end_ _reference_start_1 Chronicles 28:1_reference_end_ _reference_start_1 Kings 1:1_reference_end_ _reference_start_1 Kings 3:01_reference_end_ _reference_star ?tfXJ<. xj\N@2$|n`RD6( Z  Y  X  W  V  U  T S  R  Q  P  O  N ' M  L  K  J  I  H  G  F  E D  C  B  A  @  ?  >  =  <  ;  :  9  8  7  6  5  4  3  2  1  0  / / . . - - , % +  *  ) ( '  &  % $  #  "  !            ?tfXJ<. xj\N@2$|n`RD6(                            1 &       ~ } |  {  z y x w v' u& t s r q p o n  m  l k j  i  h  g  f  e  d  c  b  a  `  _  ^  ]  \  [  ?tfXJ<. xj\N@2$|n`RD6( X W V U| T| S| R| Qn Pn On NZ MG LG KG J; I; H; G8 F6 E" D C B  A  @ ? > = < ; : 9 8 7 6 5 4 3 2 1 0 / . - , + * ) ( ' & % $ # " !         ?{m_QC5' qcUG9+ugYK=/!                    !                         )   ~  }  |  {  z  y  x  w  v  u  t  s  r  q- pA o n m l k j i h g f e d c b a ` _ ^ ] \ [ Z Y end_ _reference_start_Psalms 45:12_reference_end_ \cme king, prince, "sir", "my lord" \cmf roi, prince, "mon seigneur" _reference_start_1 Samuel 1:15_reference_end_ _reference_start_1 Samuel 1:26_reference_end_ _reference_start_1 Samuel 16:16_reference_end_ _reference_start_1 Samuel 22:12_reference_end_ _reference_start_1 Samuel 24:09_reference_end_ _reference_start_1 Samuel 24:11_reference_end_ _reference_start_1 Samuel 25:24_reference_end_ _reference_start_1 Samuel 25:25_reference_end_ _reference_start_1 Samuel 25:26_reference_end_ _reference_start_1 Samuel 25:27_reference_end_ _reference_start_1 Samuel 25:28_reference_end_ _reference_start_1 Samuel 25:29_reference_end_ _reference_start_1 Samuel 25:30_reference_end_ _reference_start_1 Samuel 25:31_reference_end_ _reference_start_1 Samuel 25:41_reference_end_ _reference_start_1 Samuel 26:15_reference_end_ _reference_start_1 Samuel 26:17_reference_end_ _reference_start_1 Samuel 26:18_reference_end_ _reference_start_1 Samuel 26:19_reference_end_ _reference _start_1 Samuel 29:08_reference_end_ _reference_start_2 Samuel 1:10_reference_end_ _reference_start_2 Samuel 2:05_reference_end_ _reference_start_2 Samuel 2:07_reference_end_ _reference_start_2 Samuel 3:21_reference_end_ _reference_start_2 Samuel 4:08_reference_end_ _reference_start_2 Samuel 9:11_reference_end_ _reference_start_2 Samuel 11:11_reference_end_ _reference_start_2 Samuel 13:32_reference_end_ _reference_start_2 Samuel 13:33_reference_end_ _reference_start_2 Samuel 14:09_reference_end_ _reference_start_2 Samuel 14:12_reference_end_ _reference_start_2 Samuel 14:15_reference_end_ _reference_start_2 Samuel 14:17_reference_end_ _reference_start_2 Samuel 14:18_reference_end_ _reference_start_2 Samuel 14:19_reference_end_ _reference_start_2 Samuel 14:20_reference_end_ _reference_start_2 Samuel 14:22_reference_end_ _reference_start_2 Samuel 15:15_reference_end_ _reference_start_2 Samuel 15:21_reference_end_ _reference_start_2 Samuel 16:04_reference_end_ _reference_start_2 Samuel 16:09_reference_end_ _r eference_start_2 Samuel 18:28_reference_end_ _reference_start_2 Samuel 18:31_reference_end_ _reference_start_2 Samuel 18:32_reference_end_ _reference_start_2 Samuel 19:20_reference_end_ _reference_start_2 Samuel 19:21_reference_end_ _reference_start_2 Samuel 19:27_reference_end_ _reference_start_2 Samuel 19:27_reference_end_ _reference_start_2 Samuel 19:29_reference_end_ _reference_start_2 Samuel 19:31_reference_end_ _reference_start_2 Samuel 19:36_reference_end_ _reference_start_2 Samuel 19:38_reference_end_ _reference_start_2 Samuel 24:03_reference_end_ _reference_start_2 Samuel 24:21_reference_end_ _reference_start_2 Samuel 24:22_reference_end_ _reference_start_Daniel 1:10_reference_end_ _reference_start_Daniel 10:16_reference_end_ _reference_start_Daniel 10:17_reference_end_ _reference_start_Daniel 10:19_reference_end_ _reference_start_Daniel 12:08_reference_end_ _reference_start_Genesis 19:02_reference_end_ _reference_start_Genesis 19:18_reference_end_ _reference_start_Genesis 23:06_reference_end_ _r eference_start_Genesis 23:11_reference_end_ _reference_start_Genesis 23:15_reference_end_ _reference_start_Genesis 24:18_reference_end_ _reference_start_Genesis 31:35_reference_end_ _reference_start_Genesis 32:05_reference_end_ _reference_start_Genesis 32:06_reference_end_ _reference_start_Genesis 32:19_reference_end_ _reference_start_Genesis 33:08_reference_end_ _reference_start_Genesis 33:13_reference_end_ _reference_start_Genesis 33:14_reference_end_ _reference_start_Genesis 33:15_reference_end_ _reference_start_Genesis 42:10_reference_end_ _reference_start_Genesis 43:20_reference_end_ _reference_start_Genesis 44:07_reference_end_ _reference_start_Genesis 44:08_reference_end_ _reference_start_Genesis 44:09_reference_end_ _reference_start_Genesis 44:16_reference_end_ _reference_start_Genesis 44:18_reference_end_ _reference_start_Genesis 44:19_reference_end_ _reference_start_Genesis 44:20_reference_end_ _reference_start_Genesis 44:22_reference_end_ _reference_start_Genesis 44:24_reference_end_ _reference _start_Genesis 44:33_reference_end_ _reference_start_Genesis 47:18_reference_end_ _reference_start_Genesis 47:25_reference_end_ _reference_start_Jude 3:25_reference_end_ _reference_start_Ruth 2:13_reference_end_ \cme Lord, name for God \cmf Seigneur, le nom de Dieu _reference_start_Psalms 1345:05_reference_end_ _reference_start_Psalms 136:03_reference_end_ \cme one in authority over another \cmf qqn en autorité envers un autre _reference_start_1 Samuel 20:38_reference_end_ _reference_start_1 Samuel 24:07_reference_end_ _reference_start_1 Samuel 25:10_reference_end_ _reference_start_1 Samuel 25:14_reference_end_ _reference_start_1 Samuel 25:17_reference_end_ _reference_start_1 Samuel 26:16_reference_end_ _reference_start_1 Samuel 29:04_reference_end_ _reference_start_1 Samuel 29:10_reference_end_ _reference_start_1 Samuel 30:13_reference_end_ _reference_start_1 Samuel 30:15_reference_end_ _reference_start_2 Samuel 9:09_reference_end_ _reference_start_2 Samuel 9:10_reference_end_ _reference_start_2 Samuel 10:03_reference_end_ _reference_start_2 Samuel 11:09_reference_end_ _reference_start_2 Samuel 11:13_reference_end_ _reference_start_2 Samuel 12:08_reference_end_ _reference_start_2 Samuel 16:03_reference_end_ _reference_start_2 Samuel 20:06_reference_end_ _reference_start_Exodus 21:04_reference_end_ _reference_start_Exodus 21:05_reference_end_ _reference_start_Exodus 21:06_reference_end_ _reference_start_Exodus 21:08_reference_end_ _reference_start_Exodus 21:32_reference_end_ _reference_start_Genesis 24:09_reference_end_ _reference_start_Genesis 24:10_reference_end_ _reference_start_Genesis 24:12_reference_end_ _reference_start_Genesis 24:14_reference_end_ _reference_start_Genesis 24:27_reference_end_ _reference_start_Genesis 24:35_reference_end_ _reference_start_Genesis 24:36_reference_end_ _reference_start_Genesis 24:37_reference_end_ _reference_start_Genesis 24:39_reference_end_ _reference_start_Genesis 24:44_reference_end_ _reference_start_Genesis 24:48_reference_end_ _reference_start_Genesis 24:49_reference_end_ _reference_start_Genesis 24:51_reference_end_ _reference_start_Genesis 24:54_reference_end_ _reference_start_Genesis 24:56_reference_end_ _reference_start_Genesis 24:65_reference_end_ _reference_start_Genesis 39:02_reference_end_ _reference_start_Genesis 39:03_reference_end_ _reference_start_Genesis 39:07_reference_end_ _reference_start_Genesis 39:08_reference_end_ _reference_start_Genesis 39:16_reference_end_ _reference_start_Genesis 39:19_reference_end_ _reference_start_Genesis 39:20_reference_end_ _reference_start_Genesis 40:01_reference_end_ _reference_start_Genesis 40:07_reference_end_ _reference_start_Genesis 42:30_reference_end_ _reference_start_Genesis 42:33_reference_end_ _reference_start_Genesis 44:05_reference_end_ _reference_start_Genesis 45:08_reference_end_ _reference_start_Genesis 45:08_reference_end_ _reference_start_Psalms 8:02_reference_end_ _reference_start_Psalms 8:10_reference_end_ _reference_start_Psalms 110:01_reference_end_ _reference_start_Psalms 136:03_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( V  U  T  S  R  Q  P  O  N & M LA K JA I/ H/ G,! F, E, D, C, B, A, @, ?, >, =+ <* ;! :! 9! 8! 7  6  5  4# 3 2 1 0 / . -  ,  +  *  ) (  '  &  % & $ $ #  "  !                    ?tfXJ<. xj\N@2$|n_QC5'                        n   - - , *! ~* }( |( {' z' y' x' w' v' u' tA s8 r6 q3 p1 o0 n, m' l% k$ j# i h g f e d c b a ` _  ^  ]  \ [ Z  Y X W  5))+lord, officiallord, official\h bÞr \f seigneur, chef \cme chief, main one \cmf chef des autres _reference_start_Daniel 1:03_reference_end_ _reference_start_Jonah 1:06_reference_end_ \cme servant, official (rab beytu) \cmf serviteur, intendant (rab beytu) _reference_start_Esther 1:08_reference_end_ Wlovelove\h hAbáha' \f amour \cme God's love for people \cmf amour de Dieu pour des personnes _reference_start_1 Kings 10:09_reference_end_ \cme harmony and kindness, in contrast to hate \cmf harmonie et bienveillance, en contraste avec la haine _reference_start_Ecclesiastes 9:01_reference_end_ _reference_start_Proverbs 15:17_reference_end_ _reference_start_Proverbs 17:09_reference_end_ _reference_start_Proverbs 27:05_reference_end_ \cme heterosexual love between man & woman \cmf amour entre un homme et une femme _reference_start_2 Samuel 1:26_reference_end_ _reference_start_2 Samuel 13:15_reference_end_ _reference_start_Genesis 29:20_reference_end_ \cme love between friends \cmf amour entre amis _reference_start_1 Samuel 18:03_reference_end_ _reference_start_1 Samuel 20:18_reference_end_ _reference_start_2 Samuel 1:26_reference_end_ ence_end_ _reference_start_1 Kings 11:02_reference_end_ _reference_start_1 Samuel 1:05_reference_end_ _reference_start_1 Samuel 18:20_reference_end_ _reference_start_2 Samuel 13:01_reference_end_ _reference_start_2 Samuel 13:04_reference_end_ _reference_start_2 Samuel 13:15_reference_end_ _reference_start_Esther 2:17_reference_end_ _reference_start_Genesis 24:67_reference_end_ _reference_start_Genesis 29:18_reference_end_ _reference_start_Genesis 29:30_reference_end_ _reference_start_Genesis 29:32_reference_end_ _reference_start_Genesis 34:03_reference_end_ \cme highly value something \cmf metre une grande valeur sur qqch _reference_start_2 Chronicles 26:10_reference_end_ _reference_start_2 Samuel 19:07_reference_end_ _reference_start_Ecclesiastes 5:09_reference_end_ _reference_start_Isaiah 1:23_reference_end_ _reference_start_Proverbs 19:08_reference_end_ _reference_start_Proverbs 21:17_reference_end_ _reference_start_Proverbs 29:03_reference_end_ _reference_start_Psalms 34:13_reference_end_ \cme like th e taste of food \cmf savourer la nouriture _reference_start_Genesis 27:04_reference_end_ _reference_start_Genesis 27:09_reference_end_ _reference_start_Genesis 27:14_reference_end_ \cme love between family and friend \cmf amour entre famille et entre amis _reference_start_1 Samuel 16:21_reference_end_ _reference_start_1 Samuel 18:01_reference_end_ _reference_start_1 Samuel 20:17_reference_end_ _reference_start_Genesis 22:02_reference_end_ _reference_start_Genesis 25:28_reference_end_ _reference_start_Genesis 37:03_reference_end_ _reference_start_Genesis 37:04_reference_end_ _reference_start_Genesis 44:20_reference_end_ _reference_start_Leviticus 19:18_reference_end_ _reference_start_Proverbs 13:24_reference_end_ _reference_start_Proverbs 17:17_reference_end_ _reference_start_Proverbs 18:24_reference_end_ _reference_start_Ruth 4:15_reference_end_ \cme person feels love for God \cmf une personne resentie amour pour Dieu _reference_start_Deuteronomy 6:05_reference_end_ _reference_start_Deuteronomy 30:06_reference_end_ _reference_start_Psalms 116:01_reference_end_ \cme person loves God (by keeping commandments) \cmf une personne aime Dieu (et guarde ses commandemants) _reference_start_1 Kings 3:03_reference_end_ _reference_start_Daniel 9:04_reference_end_ _reference_start_Deuteronomy 5:10_reference_end_ _reference_start_Deuteronomy 7:09_reference_end_ _reference_start_Exodus 20:06_reference_end_ _reference_start_Jude 5:31_reference_end_ _reference_start_Psalms 5:12_reference_end_ _reference_start_Psalms 31:24_reference_end_ _reference_start_Psalms 145:20_reference_end_ \cme respect and loyalty to authority \cmf respet et loyauté envers autorité _reference_start_1 Kings 5:15_reference_end_ _reference_start_1 Samuel 18:16_reference_end_ _reference_start_1 Samuel 18:22_reference_end_ _reference_start_1 Samuel 18:28_reference_end_ _reference_start_2 Samuel 1:23_reference_end_ _reference_start_2 Samuel 19:07_reference_end_ _reference_start_Exodus 21:05_reference_end_ _reference_start_Proverbs 9:08_reference_end_ QQ love (to)love (to)\h bEhA' / bahA' \f aimer \cme enjoy doing -something, -right, -wrong \cmf aimer faire -qqch, -le bien, -le mal _reference_start_Proverbs 1:22_reference_end_ _reference_start_Proverbs 17:19_reference_end_ _reference_start_Proverbs 22:11_reference_end_ _reference_start_Psalms 52:05_reference_end_ _reference_start_Psalms 52:06_reference_end_ \cme friend \cmf ami _reference_start_Esther 5:10_reference_end_ _reference_start_Esther 5:14_reference_end_ _reference_start_Esther 6:13_reference_end_ _reference_start_Proverbs 27:06_reference_end_ \cme God loves people \cmf Dieu aime les humains _reference_start_2 Samuel 12:24_reference_end_ _reference_start_Psalms 47:05_reference_end_ \cme God's love as a father \cmf l'amour de Dieu comme un père _reference_start_Proverbs 3:12_reference_end_ \cme heterosexual love between persons \cmf amour sexuel entre homme et femme _reference_start_1 Kings 11:01_refer ?tfXJ<. xj\N@2$|n`RD6( T  S  R  Q P O NA M L K J  I  Ht G F E D C B  A @, ?% >% = < ;  :  9  8 7 6 5" 4 3 2 1 0 /  . -" , + * )C ( '  &  %  $  #  "  !   /       4 4   ?tfXJ<. xj\N@2$|n`RD6( ; ; ; 9 9   '   ?   Z 3      / ~  }4 | {  z1 y x  w  v  u  t s r( q p o n m l  k  j  i  h  g  f  e  d  c3 b a  ` _ ^  ]  \  [" Z Y  X W  V  U  s 17:13_reference_end_ _reference_start_1 Kings 3:06_reference_end_ _reference_start_1 Kings 8:23_reference_end_ _reference_start_2 Chronicles 7:03_reference_end_ _reference_start_2 Chronicles 7:06_reference_end_ _reference_start_Daniel 9:04_reference_end_ _reference_start_Deuteronomy 7:09_reference_end_ _reference_start_Psalms 18:51_reference_end_ \cme kindness of person to person in doing favors \cmf bienveillance des hommes aux hommes _reference_start_1 Chronicles 19:02_reference_end_ _reference_start_1 Kings 2:07_reference_end_ _reference_start_1 Samuel 15:06_reference_end_ _reference_start_1 Samuel 20:15_reference_end_ _reference_start_2 Samuel 2:05_reference_end_ _reference_start_2 Samuel 9:01_reference_end_ _reference_start_2 Samuel 9:03_reference_end_ _reference_start_2 Samuel 9:07_reference_end_ _reference_start_2 Samuel 10:02_reference_end_ _reference_start_Daniel 1:09_reference_end_ _reference_start_Esther 2:09_reference_end_ _reference_start_Esther 2:17_reference_end_ _reference_start_Genesis 20:13_reference_end_ _reference_start_Genesis 24:12_reference_end_ _reference_start_Genesis 40:14_reference_end_ _reference_start_Proverbs 31:26_reference_end_ _reference_start_Ruth 3:10_reference_end_ \cme loyalty and faithfulness of a person \cmf loyauté d'une personne _reference_start_1 Samuel 20:08_reference_end_ _reference_start_1 Samuel 20:14_reference_end_ _reference_start_2 Samuel 3:08_reference_end_ _reference_start_2 Samuel 16:17_reference_end_ _reference_start_Genesis 21:23_reference_end_ _reference_start_Genesis 24:49_reference_end_ _reference_start_Jonah 2:09_reference_end_ _reference_start_Proverbs 3:03_reference_end_ _reference_start_Psalms 52:03_reference_end_ \cme mercy and kindness given to poor and needy \cmf pitié donner aux pauvres _reference_start_1 Kings 20:31_reference_end_ _reference_start_Genesis 47:29_reference_end_ _reference_start_Job 6:14_reference_end_ \cme mercy of God in forgiveness of sin \cmf pitié de Dieu en pardonant les péchés _reference_start_Numbers 14:18_refer ence_end_ _reference_start_Numbers 14:19_reference_end_ _reference_start_Proverbs 16:06_reference_end_ _reference_start_Psalms 25:07_reference_end_ _reference_start_Psalms 51:03_reference_end_ _reference_start_Psalms 90:14_reference_end_ \cme mercy of God in keeping us alive \cmf pitié de Dieu en nous gardant en vie _reference_start_Job 10:12_reference_end_ _reference_start_Psalms 6:05_reference_end_ _reference_start_Psalms 63:04_reference_end_ \cme mercy of God in saving from trouble \cmf miséricorde de Dieu en la délivrance des problèmes et ennemis _reference_start_Exodus 15:13_reference_end_ _reference_start_Genesis 19:19_reference_end_ _reference_start_Genesis 39:21_reference_end_ _reference_start_Psalms 21:08_reference_end_ _reference_start_Psalms 32:10_reference_end_ _reference_start_Psalms 57:04_reference_end_ _reference_start_Psalms 57:11_reference_end_ _reference_start_Psalms 59:11_reference_end_ _reference_start_Psalms 59:17_reference_end_ _reference_start_Psalms 59:18_reference_end_ _reference_start_Psalms 61:08_reference_end_ _reference_start_Psalms 144:02_reference_end_ _reference_start_Ruth 1:08_reference_end_ \cme mercy, steadfast love of God \cmf bienveillance, miséricorde de Dieu _reference_start_1 Chronicles 16:34_reference_end_ _reference_start_1 Chronicles 16:41_reference_end_ _reference_start_2 Samuel 2:06_reference_end_ _reference_start_2 Samuel 7:15_reference_end_ _reference_start_2 Samuel 15:20_reference_end_ _reference_start_2 Samuel 22:51_reference_end_ _reference_start_Exodus 20:06_reference_end_ _reference_start_Genesis 24:27_reference_end_ _reference_start_Jonah 4:02_reference_end_ _reference_start_Psalms 23:06_reference_end_ _reference_start_Psalms 25:10_reference_end_ _reference_start_Psalms 52:10_reference_end_ \cme specific acts of kindness of God \cmf actes bienveillants spécifiques de Dieu _reference_start_Genesis 24:14_reference_end_ _reference_start_Genesis 32:11_reference_end_ _reference_start_Psalms 25:06_reference_end_ _reference_start_Ruth 2:20_reference_end_ T55Qlove, steadfast lovelove, steadfast love\h desex \f bienveillance \cme evil, event provoking shame \cmf mal, evenement qui deshonore _reference_start_Leviticus 20:17_reference_end_ _reference_start_Proverbs 14:34_reference_end_ \cme faithfulness of God in keeping the covenant \cmf fidélité de Dieu selon l'alliance _reference_start_1 Chronicle ?seWI;-wi[M>0"xj\N@1# R Q P O N M L K J I H G F E D C B A  @G ? >  =  <" ;. :  9 8 7< 61 5 41 3 2p 1o 0g /V .N& -  ,  +  * )" ( ' & % $ # "4 !       3        )  "   = DD8Umercymercy\h £ûxarJ \f compassion, pitié \cme compassion of God \cmf compassion de Dieu _reference_start_2 Chronicles 30:09_reference_end_ _reference_start_Deuteronomy 4:31_reference_end_ _reference_start_Exodus 34:06_reference_end_ _reference_start_Joel 2:13_reference_end_ _reference_start_Jonah 4:02_reference_end_ _reference_start_Nehemiah 9:17_reference_end_ _reference_start_Nehemiah 9:31_reference_end_ _reference_start_Psalms 78:38_reference_end_ _reference_start_Psalms 86:15_reference_end_ _reference_start_Psalms 103:08_reference_end_ _reference_start_Psalms 111:04_reference_end_ _reference_start_Psalms 112:04_reference_end_ _reference_start_Psalms 145:08_reference_end_ d!!Mighty Onemighty one\h ryibA' \f Puissant \cme Mighty One \cmf le Puissant _reference_start_Genesis 49:24_reference_end_ _reference_start_Isaiah 1:24_reference_end_ _reference_start_Isaiah 49:26_reference_end_ _reference_start_Isaiah 60:16_reference_end_ _reference_start_Psalms 132:02_reference_end_ _reference_start_Psalms 132:05_reference_end_ ""Zmiraclemiracle\h tEpôm \f miracle \cme display of supernatural power by false prophets \cmf pouvoire surnatuel démontré par faux prophètes _reference_start_Deuteronomy 13:02_reference_end_ _reference_start_Deuteronomy 28:46_reference_end_ _reference_start_Deuteronomy 34:11_reference_end_ \cme sign of future event \cmf présage d'un événement future _reference_start_1 Kings 13:03_reference_end_ _reference_start_1 Kings 13:05_reference_end_ _reference_start_Exodus 7:09_reference_end_ \cme something showing the power of God \cmf qqch qui montre le pouvoir de Dieu _reference_start_Psalms 71:07_reference_end_ \cme special display of God's power \cmf signe spécial montrant le pouvoir de Dieu _reference_start_1 Chronicles 16:12_reference_end_ _reference_start_Exodus 4:21_reference_end_ _reference_start_Exodus 7:03_reference_end_ _reference_start_Exodus 11:09_reference_end_ _reference_start_Exodus 11:10_reference_end_ _reference_start_Psalms 135:09_reference_end_ TT)'Most Highmost high\h €ôyülev / yaJliv. \f Très-Haut \cme The Most High \cmf leTrès-Haut (Arm) _reference_start_Daniel 3:26_reference_end_ _reference_start_Daniel 3:32_reference_end_ _reference_start_Daniel 4:14_reference_end_ _reference_start_Daniel 4:21_reference_end_ _reference_start_Daniel 4:22_reference_end_ _reference_start_Daniel 4:31_reference_end_ _reference_start_Daniel 5:18_reference_end_ _reference_start_Daniel 5:21_reference_end_ _reference_start_Daniel 7:18_reference_end_ _reference_start_Daniel 7:22_reference_end_ _reference_start_Daniel 7:25_reference_end_ _reference_start_Daniel 7:25_reference_end_ _reference_start_Daniel 7:27_reference_end_{Kmock (to)mock (to)\h gavAl \f moquer (se moquer de) \cme mock, laugh at someone \cmf se moquer de qqn _reference_start_Proverbs 1:26_reference_end_ _reference_start_Proverbs 17:05_reference_end_ _reference_start_Proverbs 30:17_reference_end_ ?tfXJ<. xj\N@2$|n`RD6(              " 0 . #       ~ } | { z y x  w v  u  t  s! r q  p  o n m l k  j  i h g f e d c b a `9 _2 ^ ] \ [ Z Y X  W  V U T S A''GMost High Godmost high god\h €ôyülev \f Dieu le Très-Haut \cme Most High God \cmf Dieu le Très-Haut _reference_start_2 Samuel 22:14_reference_end_ _reference_start_Deuteronomy 32:08_reference_end_ _reference_start_Genesis 14:18_reference_end_ _reference_start_Genesis 14:19_reference_end_ _reference_start_Genesis 14:20_reference_end_ _reference_start_Genesis 14:22_reference_end_ _reference_start_Numbers 24:16_reference_end_ _reference_start_Psalms 18:14_reference_end_ _reference_start_Psalms 50:14_reference_end_ _reference_start_Psalms 57:03_reference_end_ i 7mouthmouth\h heKp \f bouche \cme figurative use \cmf sense figuré _reference_start_Proverbs 22:06_reference_end_ \cme mouth, physical organ \cmf bouche, organe physique _reference_start_Proverbs 19:24_reference_end_ _reference_start_Proverbs 26:15_reference_end_ _reference_start_Proverbs 30:20_reference_end_ _reference_start_Proverbs 30:32_reference_end_ \cme speech, what is said; figurative sense \cmf parole, ce qui est dit; sense figuré _reference_start_Proverbs 4:24_reference_end_ _reference_start_Proverbs 6:12_reference_end_ _reference_start_Proverbs 8:13_reference_end_ _reference_start_Proverbs 8:29_reference_end_ _reference_start_Proverbs 12:08_reference_end_ _reference_start_Proverbs 13:03_reference_end_ _reference_start_Proverbs 21:23_reference_end_ _reference_start_Proverbs 26:28_reference_end_ _reference_start_Proverbs 27:21_reference_end_ _Genesis 10:31_reference_end_ _reference_start_Genesis 10:32_reference_end_ _reference_start_Genesis 12:02_reference_end_ _reference_start_Genesis 17:04_reference_end_ _reference_start_Genesis 17:05_reference_end_ _reference_start_Genesis 17:06_reference_end_ _reference_start_Genesis 17:16_reference_end_ _reference_start_Genesis 17:20_reference_end_ _reference_start_Genesis 18:18_reference_end_ _reference_start_Genesis 20:04_reference_end_ _reference_start_Genesis 21:13_reference_end_ _reference_start_Genesis 21:18_reference_end_ _reference_start_Genesis 22:18_reference_end_ _reference_start_Genesis 25:23_reference_end_ _reference_start_Genesis 26:04_reference_end_ _reference_start_Genesis 35:11_reference_end_ _reference_start_Genesis 46:03_reference_end_ _reference_start_Genesis 48:19_reference_end_ _reference_start_Proverbs 14:34_reference_end_ \cme Jews, God's chosen people \cmf juifs, le peuple choisi par Dieu _reference_start_Daniel 12:01_reference_end_ _reference_start_Exodus 19:06_reference_end_ _r eference_start_Joshua 3:17_reference_end_ _reference_start_Joshua 4:01_reference_end_ _reference_start_Joshua 5:06_reference_end_ _reference_start_Numbers 14:12_reference_end_ \cme non Jews, godless peoples \cmf non-juifs, gens qui ne reconnaissent pas Dieu _reference_start_1 Chronicles 16:20_reference_end_ _reference_start_1 Chronicles 16:24_reference_end_ _reference_start_1 Chronicles 16:31_reference_end_ _reference_start_1 Chronicles 16:35_reference_end_ _reference_start_1 Chronicles 17:21_reference_end_ _reference_start_1 Kings 4:31_reference_end_ _reference_start_1 Kings 11:02_reference_end_ _reference_start_1 Samuel 8:05_reference_end_ _reference_start_1 Samuel 8:20_reference_end_ _reference_start_2 Samuel 7:23_reference_end_ _reference_start_2 Samuel 8:11_reference_end_ _reference_start_2 Samuel 22:44_reference_end_ _reference_start_2 Samuel 22:50_reference_end_ _reference_start_Deuteronomy 18:09_reference_end_ _reference_start_Deuteronomy 18:14_reference_end_ _reference_start_Deuteronomy 28:01_reference_end_ _reference_start_Deuteronomy 28:12_reference_end_ _reference_start_Deuteronomy 28:36_reference_end_ _reference_start_Deuteronomy 28:49_reference_end_ _reference_start_Deuteronomy 28:50_reference_end_ _reference_start_Deuteronomy 28:65_reference_end_ _reference_start_Exodus 34:24_reference_end_ _reference_start_Genesis 15:14_reference_end_ _reference_start_Joshua 23:03_reference_end_ _reference_start_Joshua 23:04_reference_end_ _reference_start_Leviticus 18:24_reference_end_ _reference_start_Leviticus 18:28_reference_end_ _reference_start_Leviticus 20:23_reference_end_ _reference_start_Numbers 14:15_reference_end_ _reference_start_Psalms 2:02_reference_end_ _reference_start_Psalms 2:08_reference_end_ _reference_start_Psalms 59:06_reference_end_ _reference_start_Psalms 59:09_reference_end_ _reference_start_Psalms 110:06_reference_end_ \cme proper name of a city/region \cmf nom propre d'un ville ou région _reference_start_Genesis 14:01_reference_end_ _reference_start_Genesis 14:09_reference_end_ I1"))#nation, peoplenation, people\h £Ow'ül / £O'ül. \f nation, peuple \cme people in general \cmf des personnes en géneral _reference_start_Proverbs 11:26_reference_end_ \cme people, tribe, nation (poetry) \cmf peuple, tribu, nation (poesie) _reference_start_Genesis 23:23_reference_end_ _reference_start_Genesis 27:29_reference_end_ _reference_start_Proverbs 14:38_reference_end_ _reference_start_Psalms 2:01_reference_end_ _reference_start_Psalms 57:10_reference_end_ \cme population \cmf la population _reference_start_Proverbs 14:28_reference_end_#!#nationsnations\h yôFg \f nations \cme group of people, nation \cmf un peuple, une nation _reference_start_Daniel 8:22_reference_end_ _reference_start_Daniel 11:23_reference_end_ _reference_start_Exodus 9:24_reference_end_ _reference_start_Exodus 32:10_reference_end_ _reference_start_Exodus 33:12_reference_end_ _reference_start_Genesis 10:05_reference_end_ _reference_start_Genesis 10:20_reference_end_ _reference_start ?tfXJ<. xj\N@2$|n`RD6( P  O  N  M  L K  J  I H Gi F E D C  B + A  @ ?A > =  < ; : 9 89 7 6& 5 4 3  2 1 0n /; .; - , + * ) ( ' & % $" #A "2 !1 $      2  ,                # c#+noblenoble\h £yimüGtèraKp \f noble \cme leader, dignitary \cmf nobles, dignitaires _reference_start_Daniel 1:03_reference_end_ _reference_start_Esther 1:03_reference_end_ _reference_start_Esther 6:09_reference_end_  $}oathoath\h hAvûbüH \f serment \cme curse \cmf maudire _reference_start_1 Samuel 14:26_reference_end_ _reference_start_Daniel 9:11_reference_end_ _reference_start_Isaiah 65:15_reference_end_ _reference_start_Numbers 5:21_reference_end_ \cme make an oath or agreement \cmf faire un accorde _reference_start_1 Chronicles 16:16_reference_end_ _reference_start_1 Kings 2:43_reference_end_ _reference_start_2 Samuel 21:07_reference_end_ _reference_start_Deuteronomy 7:08_reference_end_ _reference_start_Genesis 24:08_reference_end_ _reference_start_Genesis 26:03_reference_end_ _reference_start_Psalms 105:09_reference_end_ \cme take an oath, swear to \cmf faire un serment, jurer _reference_start_Exodus 22:10_reference_end_ _reference_start_Leviticus 5:04_reference_end_ art_2 Samuel 16:21_reference_end_ _reference_start_2 Samuel 18:12_reference_end_ _reference_start_2 Samuel 20:03_reference_end_ _reference_start_Esther 2:03_reference_end_ _reference_start_Esther 2:08_reference_end_ _reference_start_Esther 2:14_reference_end_ _reference_start_Esther 2:15_reference_end_ _reference_start_Esther 2:21_reference_end_ _reference_start_Esther 6:02_reference_end_ _reference_start_Genesis 2:15_reference_end_ _reference_start_Genesis 3:24_reference_end_ _reference_start_Genesis 4:09_reference_end_ _reference_start_Genesis 28:15_reference_end_ _reference_start_Genesis 28:20_reference_end_ _reference_start_Genesis 30:31_reference_end_ _reference_start_Proverbs 13:03_reference_end_ _reference_start_Psalms 34:21_reference_end_ _reference_start_Psalms 59:09_reference_end_ _reference_start_Psalms 127:01_reference_end_ \cme guard, hold onto \cmf surveiller, garder _reference_start_1 Samuel 2:09_reference_end_ _reference_start_1 Samuel 7:01_reference_end_ _reference_start_1 Samuel 9:24_ref erence_end_ _reference_start_1 Samuel 25:21_reference_end_ _reference_start_1 Samuel 26:15_reference_end_ _reference_start_1 Samuel 30:23_reference_end_ _reference_start_2 Samuel 22:44_reference_end_ _reference_start_Exodus 22:06_reference_end_ _reference_start_Exodus 22:09_reference_end_ _reference_start_Genesis 37:11_reference_end_ _reference_start_Genesis 41:35_reference_end_ _reference_start_Jonah 2:09_reference_end_ \cme keep a covenant, an agreement \cmf tenir un accord, un serment _reference_start_1 Kings 2:43_reference_end_ _reference_start_1 Kings 3:06_reference_end_ _reference_start_1 Kings 8:23_reference_end_ _reference_start_1 Kings 8:24_reference_end_ _reference_start_1 Kings 8:25_reference_end_ _reference_start_1 Kings 11:11_reference_end_ _reference_start_2 Samuel 23:05_reference_end_ _reference_start_Daniel 9:04_reference_end_ _reference_start_Exodus 19:05_reference_end_ _reference_start_Genesis 17:09_reference_end_ _reference_start_Genesis 17:10_reference_end_ \cme keep a holiday, practic e a rite \cmf practiquer un rite, fêter une fête _reference_start_Exodus 12:17_reference_end_ _reference_start_Exodus 12:24_reference_end_ _reference_start_Exodus 12:25_reference_end_ _reference_start_Exodus 13:10_reference_end_ _reference_start_Exodus 23:15_reference_end_ \cme obey God's commandments \cmf obéir les commandements de Dieu _reference_start_1 Chronicles 8:28_reference_end_ _reference_start_1 Chronicles 22:12_reference_end_ _reference_start_1 Chronicles 29:19_reference_end_ _reference_start_1 Kings 2:03_reference_end_ _reference_start_1 Kings 3:14_reference_end_ _reference_start_1 Kings 6:12_reference_end_ _reference_start_1 Kings 8:58_reference_end_ _reference_start_1 Kings 8:61_reference_end_ _reference_start_1 Kings 9:04_reference_end_ _reference_start_1 Kings 9:06_reference_end_ _reference_start_1 Kings 11:10_reference_end_ _reference_start_1 Kings 11:34_reference_end_ _reference_start_1 Kings 11:38_reference_end_ _reference_start_1 Samuel 13:13_reference_end_ _reference_start_1 Samuel 13:14_reference_end_ _reference_start_2 Chronicles 7:17_reference_end_ _reference_start_2 Samuel 22:22_reference_end_ _reference_start_Deuteronomy 28:01_reference_end_ _reference_start_Deuteronomy 28:09_reference_end_ _reference_start_Deuteronomy 28:13_reference_end_ _reference_start_Deuteronomy 28:15_reference_end_ _reference_start_Deuteronomy 28:45_reference_end_ _reference_start_Deuteronomy 28:58_reference_end_ _reference_start_Ecclesiastes 12:13_reference_end_ _reference_start_Exodus 15:26_reference_end_ _reference_start_Exodus 16:28_reference_end_ _reference_start_Exodus 20:06_reference_end_ _reference_start_Exodus 34:11_reference_end_ _reference_start_Genesis 18:19_reference_end_ _reference_start_Genesis 26:05_reference_end_ _reference_start_Leviticus 18:04_reference_end_ _reference_start_Leviticus 18:05_reference_end_ _reference_start_Leviticus 18:26_reference_end_ _reference_start_Leviticus 18:30_reference_end_ _reference_start_Leviticus 25:18_reference_end_ _reference_start_Proverbs 2:20_reference_end_ _reference_start_Proverbs 4:04_reference_end_ _reference_start_Proverbs 10:17_reference_end_ _reference_start_Psalms 17:04_reference_end_ _reference_start_Psalms 19:12_reference_end_ \cme watch out, be careful \cmf faire attention _reference_start_1 Chronicles 22:13_reference_end_ _reference_start_1 Kings 2:04_reference_end_ _reference_start_1 Kings 8:25_reference_end_ _reference_start_1 Samuel 19:02_reference_end_ _reference_start_2 Kings 6:09_reference_end_ _reference_start_2 Samuel 18:12_reference_end_ _reference_start_2 Samuel 20:10_reference_end_ _reference_start_Exodus 10:28_reference_end_ _reference_start_Exodus 19:12_reference_end_ _reference_start_Exodus 23:13_reference_end_ _reference_start_Exodus 23:21_reference_end_ _reference_start_Exodus 34:12_reference_end_ _reference_start_Genesis 24:06_reference_end_ _reference_start_Genesis 31:24_reference_end_ _reference_start_Genesis 31:29_reference_end_ _reference_start_Proverbs 21:23_reference_end_ _reference_start_Psalms 39:02_reference_end_ ++9%Gobey (to)obey (to)\h ramAH \f obéir \cme avoid doing \cmf éviter, ne pas faire _reference_start_1 Samuel 21:05_reference_end_ _reference_start_2 Samuel 22:24_reference_end_ _reference_start_Psalms 18:24_reference_end_ \cme be responsible for something or someone \cmf avoir la responsabilité pour qqn ou qqch _reference_start_1 Chronicles 9:19_reference_end_ _reference_start_1 Chronicles 29:18_reference_end_ _reference_start_1 Kings 14:27_reference_end_ _reference_start_1 Samuel 17:20_reference_end_ _reference_start_1 Samuel 17:22_reference_end_ _reference_start_1 Samuel 26:16_reference_end_ _reference_start_1 Samuel 28:02_reference_end_ _reference_start_2 Samuel 15:16_reference_end_ _reference_st ?tfXJ<. xj\N@2$|n`RD6(  "       =  :                     ~ } | {  z  y x  w  v  u  t + s  r)# q% p o n , m  l  k  j  i  h  g f; e" d  c b a ` _ ^ ] \ [ Z Y X W  V  U  T  S  R  Q  ?tfXJ<. xj\N@2$|n`RD6( N  M L  K  J  I  H+ G+ F+ E+ D! C  B  A  @  ?. >  =  <' ; : 9 8 7" 6 5 4 3  2  1  0  /  .  -  ,  + * )  ( ' & % $ # " !  "     : -            & :10_reference_end_ _reference_start_Genesis 43:11_reference_end_ _reference_start_Genesis 43:15_reference_end_ _reference_start_Genesis 43:25_reference_end_ _reference_start_Genesis 43:26_reference_end_ \cme regular/daily grain offering to God \cmf sacrifice - offrende quotidien de blé offert à Dieu _reference_start_2 Kings 16:15_reference_end_ _reference_start_Daniel 9:21_reference_end_ _reference_start_Ezra 9:04_reference_end_ _reference_start_Ezra 9:05_reference_end_ _reference_start_Psalms 141:02_reference_end_ \cme something offered to God \cmf qqch offert à Dieu _reference_start_1 Chronicles 16:29_reference_end_ _reference_start_1 Chronicles 21:23_reference_end_ _reference_start_1 Chronicles 23:29_reference_end_ _reference_start_1 Kings 8:64_reference_end_ _reference_start_1 Kings 18:29_reference_end_ _reference_start_1 Samuel 2:17_reference_end_ _reference_start_1 Samuel 2:29_reference_end_ _reference_start_1 Samuel 3:14_reference_end_ _reference_start_1 Samuel 26:19_reference_end_ _reference_start_2 Chronicles 7:07_reference_end_ _reference_start_Daniel 9:27_reference_end_ _reference_start_Exodus 29:41_reference_end_ _reference_start_Ezekiel 20:28_reference_end_ _reference_start_Genesis 4:03_reference_end_ _reference_start_Genesis 4:04_reference_end_ _reference_start_Genesis 4:05_reference_end_ _reference_start_Joshua 22:21_reference_end_ _reference_start_Leviticus 1:02_reference_end_ _reference_start_Leviticus 1:03_reference_end_ _reference_start_Leviticus 1:10_reference_end_ _reference_start_Leviticus 2:01_reference_end_ _reference_start_Leviticus 2:15_reference_end_ _reference_start_Leviticus 3:14_reference_end_ _reference_start_Leviticus 5:11_reference_end_ _reference_start_Numbers 6:14_reference_end_ _reference_start_Numbers 7:13_reference_end_ _reference_start_Numbers 31:50_reference_end_ \cme tribute \cmf tribut _reference_start_1 Kings 5:01_reference_end_ _reference_start_2 Samuel 8:02_reference_end_ _reference_start_2 Samuel 8:06_reference_end_ _reference_start_Jude 3:15_reference_end_ t)Rt)))Epeace offeringpeace offering\h £eleH \f sacrifice d'action de grâce \cme sacrifice to esta a('peacepeace\h £AlüH / £ôlAH. \f paix \cme favorable, agreable \cmf favorable, agréable _r S'overseeroverseer\h dyÖqAKp \f chargé d'affaires \cme commissioner, overseer \cmf ministre, chargé d'affaires _reference_start_Esther 2:03_reference_end_ _reference_start_Genesis 41:34_reference_end_G&gofferingoffering\h hAxÌnim \f offrande \cme present offered to person \cmf cadeau offert a une personne _reference_start_1 Kings 10:25_reference_end_ _reference_start_1 Samuel 10:27_reference_end_ _reference_start_Daniel 2:46_reference_end_ _reference_start_Genesis 32:14_reference_end_ _reference_start_Genesis 32:19_reference_end_ _reference_start_Genesis 32:21_reference_end_ _reference_start_Genesis 32:22_reference_end_ _reference_start_Genesis 33 ?tfXJ<. xj\N@2$|n`RD6(        #          +       ~  }  |  {  z  y  x  w * v  u  t  s  r  q  p) o  n)" m lA k  j  i  h2 g f e d c b a ` _ ^ ] \ [ Z Y) X  W V  U  T  S  R  Q @ P  O  eference_start_Esther 9:30_reference_end_ _reference_start_Genesis 41:16_reference_end_ \cme greeting extending wholeness, wellbeing \cmf salutation souhaitant le bien être, la santé _reference_start_1 Kings 2:13_reference_end_ _reference_start_1 Samuel 1:17_reference_end_ _reference_start_1 Samuel 10:04_reference_end_ _reference_start_1 Samuel 16:04_reference_end_ _reference_start_1 Samuel 16:05_reference_end_ _reference_start_1 Samuel 17:22_reference_end_ _reference_start_1 Samuel 20:42_reference_end_ _reference_start_1 Samuel 25:05_reference_end_ _reference_start_1 Samuel 25:06_reference_end_ _reference_start_2 Samuel 11:07_reference_end_ _reference_start_2 Samuel 15:09_reference_end_ _reference_start_2 Samuel 15:27_reference_end_ _reference_start_2 Samuel 18:28_reference_end_ _reference_start_2 Samuel 20:09_reference_end_ _reference_start_Daniel 3:31_reference_end_ _reference_start_Daniel 6:26_reference_end_ _reference_start_Daniel 10:19_reference_end_ _reference_start_Exodus 18:07_reference_end_ _ reference_start_Exodus 18:07_reference_end_ _reference_start_Genesis 43:23_reference_end_ _reference_start_Psalms 28:03_reference_end_ \cme harmony among men, safety \cmf harmonie entre personnes, salut _reference_start_1 Kings 2:06_reference_end_ _reference_start_1 Samuel 20:07_reference_end_ _reference_start_1 Samuel 20:13_reference_end_ _reference_start_1 Samuel 20:21_reference_end_ _reference_start_1 Samuel 25:35_reference_end_ _reference_start_1 Samuel 29:07_reference_end_ _reference_start_2 Samuel 3:21_reference_end_ _reference_start_2 Samuel 3:22_reference_end_ _reference_start_2 Samuel 3:23_reference_end_ _reference_start_2 Samuel 19:25_reference_end_ _reference_start_2 Samuel 19:31_reference_end_ _reference_start_Exodus 18:23_reference_end_ _reference_start_Genesis 37:04_reference_end_ \cme opposite of war \cmf en opposition avec la guerre _reference_start_1 Chronicles 22:09_reference_end_ _reference_start_1 Kings 2:05_reference_end_ _reference_start_1 Kings 4:26_reference_end_ _reference_start_1 Kings 5:04_reference_end_ _reference_start_1 Samuel 7:14_reference_end_ _reference_start_Genesis 26:29_reference_end_ _reference_start_Genesis 26:31_reference_end_ _reference_start_Psalms 120:06_reference_end_ _reference_start_Psalms 120:07_reference_end_ \cme peace covenant - restoring God's blessing on Israel \cmf alliance de paix - restitue la bénédiction de Dieu enver Israël _reference_start_Ezekiel 34:05_reference_end_ _reference_start_Ezekiel 37:06_reference_end_ _reference_start_Isaiah 54:10_reference_end_ _reference_start_Numbers 25:12_reference_end_ \cme right relationship with God, blessing & salvation \cmf la bonne rélation avec Dieu, bénédiction et salut _reference_start_1 Kings 2:33_reference_end_ _reference_start_Ezekiel 13:16_reference_end_ _reference_start_Jeremiah 6:14_reference_end_ _reference_start_Micah 3:05_reference_end_ _reference_start_Numbers 6:26_reference_end_ _reference_start_Psalms 34:15_reference_end_ _reference_start_Psalms 35:27_reference_end_ \cme welfare of someone \cmf comment va une personne _reference_start_1 Samuel 17:18_reference_end_ _reference_start_2 Samuel 18:29_reference_end_ _reference_start_2 Samuel 18:32_reference_end_ _reference_start_Esther 2:11_reference_end_ \cme wellbeing under favorable circumstances \cmf bien-être dans des circonstances favorables _reference_start_Esther 10:03_reference_end_ _reference_start_Exodus 18:23_reference_end_ _reference_start_Genesis 15:15_reference_end_ _reference_start_Genesis 28:21_reference_end_ _reference_start_Genesis 29:06_reference_end_ _reference_start_Genesis 37:14_reference_end_ _reference_start_Genesis 43:27_reference_end_ _reference_start_Genesis 43:28_reference_end_ _reference_start_Genesis 44:17_reference_end_ _reference_start_Proverbs 3:02_reference_end_ _reference_start_Proverbs 3:17_reference_end_ _reference_start_Psalms 4:09_reference_end_ _reference_start_Psalms 38:04_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( LB KA J ' I H G F E D  C  B A @  ?  >  = @ < ? ;  :  9  8  7& 6 5 4 3, 2+ 1+ 0% / . - , +  * )  (  '  &# %" $ #! " !   !  6 % " x x             %       blish/affirm covenant with God \cmf pour établier, afirmer l'alliance avec Dieu _reference_start_1 Chronicles 16:01_reference_end_ _reference_start_1 Chronicles 16:02_reference_end_ _reference_start_1 Chronicles 21:26_reference_end_ _reference_start_1 Kings 3:15_reference_end_ _reference_start_1 Kings 8:63_reference_end_ _reference_start_1 Kings 8:64_reference_end_ _reference_start_1 Kings 9:25_reference_end_ _reference_start_1 Samuel 10:08_reference_end_ _reference_start_1 Samuel 11:15_reference_end_ _reference_start_1 Samuel 13:09_reference_end_ _reference_start_2 Chronicles 7:07_reference_end_ _reference_start_2 Samuel 6:17_reference_end_ _reference_start_2 Samuel 6:18_reference_end_ _reference_start_Exodus 20:24_reference_end_ _reference_start_Exodus 24:05_reference_end_ _reference_start_Exodus 29:28_reference_end_ _reference_start_Numbers 10:10_reference_end_ _reference_start_Proverbs 7:14_reference_end_ b*'' peace (be at)peace (be at)\h £alAH \f paix, être en paix \cme God's punishment of sin & evil \cmf Dieu puni le mal, les péchés _reference_start_2 Samuel 3:39_reference_end_ _reference_start_Isaiah 65:06_reference_end_ _reference_start_Isaiah 66:06_reference_end_ \cme God's reward of good \cmf Dieu récompense le bien _reference_start_1 Samuel 24:20_reference_end_ _reference_start_1 Samuel 24:20_reference_end_ _reference_start_Proverbs 31:21_reference_end_ _reference_start_Ruth 2:12_reference_end_ \cme opposite of war \cmf le contraire de la guerre _reference_start_1 Chronicles 19:19_reference_end_ _reference_start_1 Kings 22:45_reference_end_ _reference_start_2 Samuel 10:19_reference_end_ \cme to seek right relationship with God, & his \cmf desirer bonne rélation avec Dieu, et sa bénédiction _reference_start_2 Samuel 20:19_reference_end_ ?tfXJ<. xj\N@2$|n`RD6(                          ~  }  |  {  z  y  x w  v  u  t  s r  q  p  o n m l k j i  h  g f e d c b a ` _ ^ ]  \  [  Z  Y  X9 W  V  U  T  S  R - Q  P O N  M  nce_start_1 Chronicles 16:24_reference_end_ _reference_start_Genesis 11:06_reference_end_ _reference_start_Psalms 57:10_reference_end_ \cme citizen(s) \cmf citoyen(s) _reference_start_1 Samuel 26:15_reference_end_ _reference_start_2 Samuel 8:15_reference_end_ _reference_start_2 Samuel 18:07_reference_end_ _reference_start_2 Samuel 18:08_reference_end_ _reference_start_Daniel 9:06_reference_end_ _reference_start_Esther 1:11_reference_end_ _reference_start_Esther 1:16_reference_end_ _reference_start_Exodus 7:28_reference_end_ _reference_start_Exodus 7:29_reference_end_ _reference_start_Exodus 8:04_reference_end_ _reference_start_Exodus 8:05_reference_end_ _reference_start_Exodus 8:07_reference_end_ _reference_start_Exodus 8:17_reference_end_ _reference_start_Exodus 8:19_reference_end_ _reference_start_Exodus 8:27_reference_end_ _reference_start_Exodus 9:15_reference_end_ _reference_start_Exodus 11:03_reference_end_ _reference_start_Exodus 16:27_reference_end_ _reference_start_Exodus 22:25_reference_end_ _re ference_start_Exodus 23:11_reference_end_ _reference_start_Genesis 23:11_reference_end_ _reference_start_Genesis 26:10_reference_end_ _reference_start_Leviticus 19:18_reference_end_ \cme fighting band, army \cmf armée _reference_start_1 Chronicles 19:13_reference_end_ _reference_start_1 Chronicles 20:03_reference_end_ _reference_start_1 Chronicles 21:02_reference_end_ _reference_start_1 Samuel 11:11_reference_end_ _reference_start_1 Samuel 13:04_reference_end_ _reference_start_1 Samuel 13:06_reference_end_ _reference_start_1 Samuel 13:07_reference_end_ _reference_start_1 Samuel 13:08_reference_end_ _reference_start_1 Samuel 13:11_reference_end_ _reference_start_1 Samuel 13:22_reference_end_ _reference_start_1 Samuel 14:1_reference_end_ _reference_start_1 Samuel 15:1_reference_end_ _reference_start_1 Samuel 17:27_reference_end_ _reference_start_1 Samuel 17:30_reference_end_ _reference_start_1 Samuel 23:08_reference_end_ _reference_start_1 Samuel 26:05_reference_end_ _reference_start_1 Samuel 26:07_referen ce_end_ _reference_start_1 Samuel 26:14_reference_end_ _reference_start_1 Samuel 30:04_reference_end_ _reference_start_1 Samuel 30:06_reference_end_ _reference_start_1 Samuel 30:21_reference_end_ _reference_start_2 Samuel 1:04_reference_end_ _reference_start_2 Samuel 2:26_reference_end_ _reference_start_2 Samuel 2:27_reference_end_ _reference_start_2 Samuel 3:31_reference_end_ _reference_start_2 Samuel 6:02_reference_end_ _reference_start_2 Samuel 10:10_reference_end_ _reference_start_2 Samuel 11:07_reference_end_ _reference_start_2 Samuel 11:17_reference_end_ _reference_start_2 Samuel 12:28_reference_end_ _reference_start_2 Samuel 12:29_reference_end_ _reference_start_2 Samuel 12:31_reference_end_ _reference_start_2 Samuel 18:01_reference_end_ _reference_start_2 Samuel 18:03_reference_end_ _reference_start_2 Samuel 18:06_reference_end_ _reference_start_2 Samuel 18:16_reference_end_ _reference_start_2 Samuel 19:034_reference_end_ _reference_start_2 Samuel 23:10_reference_end_ _reference_start_2 Samuel 23: 11_reference_end_ _reference_start_Daniel 11:15_reference_end_ _reference_start_Exodus 17:13_reference_end_ _reference_start_Numbers 20:20_reference_end_ _reference_start_Numbers 20:20_reference_end_ _reference_start_Numbers 21:23_reference_end_ _reference_start_Numbers 21:33_reference_end_ \cme followers, retainers \cmf adepts, cex qui suivent qqn _reference_start_2 Samuel 2:30_reference_end_ _reference_start_2 Samuel 3:35_reference_end_ _reference_start_2 Samuel 15:12_reference_end_ _reference_start_2 Samuel 15:17_reference_end_ _reference_start_2 Samuel 15:23_reference_end_ _reference_start_2 Samuel 15:24_reference_end_ _reference_start_2 Samuel 15:30_reference_end_ _reference_start_2 Samuel 16:06_reference_end_ _reference_start_2 Samuel 16:14_reference_end_ _reference_start_2 Samuel 16:15_reference_end_ _reference_start_2 Samuel 16:18_reference_end_ _reference_start_2 Samuel 17:1_reference_end_ _reference_start_2 Samuel 17:03_reference_end_ _reference_start_2 Samuel 17:29_reference_end_ _reference_sta rt_2 Samuel 18:05_reference_end_ _reference_start_2 Samuel 19:40_reference_end_ _reference_start_Daniel 11:32_reference_end_ _reference_start_Exodus 1:09_reference_end_ _reference_start_Exodus 5:16_reference_end_ _reference_start_Genesis 33:15_reference_end_ _reference_start_Genesis 35:06_reference_end_ \cme kinfolk, family, tribe \cmf famille, parents, tribu _reference_start_Genesis 25:08_reference_end_ _reference_start_Genesis 25:17_reference_end_ _reference_start_Genesis 35:29_reference_end_ _reference_start_Genesis 49:16_reference_end_ _reference_start_Genesis 49:29_reference_end_ _reference_start_Genesis 49:33_reference_end_ _reference_start_Leviticus 18:29_reference_end_ _reference_start_Numbers 20:24_reference_end_ _reference_start_Ruth 1:10_reference_end_ _reference_start_Ruth 1:15_reference_end_ _reference_start_Ruth 1:16_reference_end_ _reference_start_Ruth 3:11_reference_end_ \cme people in general \cmf des personnes _reference_start_1 Kings 5:30_reference_end_ _reference_start_1 Kings 9:20_ref erence_end_ _reference_start_1 Kings 9:23_reference_end_ _reference_start_1 Kings 9:23_reference_end_ _reference_start_1 Samuel 9:02_reference_end_ _reference_start_1 Samuel 10:24_reference_end_ _reference_start_2 Samuel 1:12_reference_end_ _reference_start_2 Samuel 6:19_reference_end_ _reference_start_2 Samuel 22:28_reference_end_ _reference_start_Esther 4:11_reference_end_ _reference_start_Exodus 19:05_reference_end_ _reference_start_Genesis 27:29_reference_end_ _reference_start_Genesis 41:55_reference_end_ _reference_start_Genesis 42:06_reference_end_ _reference_start_Genesis 47:21_reference_end_ _reference_start_Genesis 50:20_reference_end_ _reference_start_Numbers 11:34_reference_end_ _reference_start_Numbers 14:09_reference_end_ _reference_start_Psalms 3:07_reference_end_ \cme people living in an area, don't form a tribe \cmf gens qui habitent une région, qui ne formment pas un tribu _reference_start_1 Chronicles 20:03_reference_end_ _reference_start_1 Samuel 9:12_reference_end_ _reference_start_1 Samuel 9:13_reference_end_ _reference_start_1 Samuel 11:04_reference_end_ _reference_start_1 Samuel 11:05_reference_end_ _reference_start_2 Samuel 12:31_reference_end_ _reference_start_2 Samuel 20:22_reference_end_ _reference_start_Esther 1:05_reference_end_ _reference_start_Genesis 19:04_reference_end_ _reference_start_Genesis 23:07_reference_end_ _reference_start_Genesis 23:12_reference_end_ _reference_start_Genesis 23:13_reference_end_ \cme people of Israel, the Jews \cmf les peuples d'Israël, les juifs _reference_start_1 Chronicles 16:02_reference_end_ _reference_start_1 Chronicles 16:36_reference_end_ _reference_start_1 Chronicles 16:43_reference_end_ _reference_start_1 Chronicles 17:1_reference_end_ _reference_start_1 Chronicles 18:14_reference_end_ _reference_start_1 Chronicles 21:17_reference_end_ _reference_start_1 Chronicles 21:22_reference_end_ _reference_start_1 Chronicles 23:25_reference_end_ _reference_start_1 Chronicles 29:09_reference_end_ _reference_start_1 Chronicles 29:117_reference_en d_ _reference_start_1 Chronicles 29:14_reference_end_ _reference_start_1 Chronicles 29:18_reference_end_ _reference_start_1 Kings 3:09_reference_end_ _reference_start_1 Kings 5:21_reference_end_ _reference_start_1 Kings 6:13_reference_end_ _reference_start_1 Kings 8:1_reference_end_ _reference_start_1 Samuel 9:16_reference_end_ _reference_start_1 Samuel 9:18_reference_end_ _reference_start_1 Samuel 10:17_reference_end_ _reference_start_1 Samuel 10:24_reference_end_ _reference_start_1 Samuel 10:25_reference_end_ _reference_start_1 Samuel 11:07_reference_end_ _reference_start_1 Samuel 11:12_reference_end_ _reference_start_1 Samuel 11:14_reference_end_ _reference_start_1 Samuel 11:15_reference_end_ _reference_start_1 Samuel 12:1_reference_end_ _reference_start_1 Samuel 13:14_reference_end_ _reference_start_1 Samuel 15:01_reference_end_ _reference_start_1 Samuel 18:05_reference_end_ _reference_start_1 Samuel 27:12_reference_end_ _reference_start_2 Chronicles 7:1_reference_end_ _reference_start_2 Samuel 3:18_r eference_end_ _reference_start_2 Samuel 5:02_reference_end_ _reference_start_2 Samuel 5:12_reference_end_ _reference_start_2 Samuel 6:21_reference_end_ _reference_start_2 Samuel 7:1_reference_end_ _reference_start_2 Samuel 14:13_reference_end_ _reference_start_Daniel 7:27_reference_end_ _reference_start_Daniel 8:24_reference_end_ _reference_start_Daniel 9:15_reference_end_ _reference_start_Daniel 9:16_reference_end_ _reference_start_Daniel 9:19_reference_end_ _reference_start_Daniel 9:20_reference_end_ _reference_start_Daniel 9:24_reference_end_ _reference_start_Daniel 10:14_reference_end_ _reference_start_Daniel 11:33_reference_end_ _reference_start_Daniel 12:07_reference_end_ _reference_start_Deuteronomy 18:03_reference_end_ _reference_start_Deuteronomy 28:09_reference_end_ _reference_start_Esther 10:03_reference_end_ _reference_start_Exodus 1:09_reference_end_ _reference_start_Exodus 1:20_reference_end_ _reference_start_Exodus 3:07_reference_end_ _reference_start_Exodus 3:10_reference_end_ _reference_s tart_Exodus 3:21_reference_end_ _reference_start_Exodus 4:16_reference_end_ _reference_start_Exodus 4:21_reference_end_ _reference_start_Exodus 4:30_reference_end_ _reference_start_Exodus 4:31_reference_end_ _reference_start_Exodus 5:1_reference_end_ _reference_start_Exodus 5:01_reference_end_ _reference_start_Exodus 6:07_reference_end_ _reference_start_Exodus 7:1_reference_end_ _reference_start_Exodus 8:04_reference_end_ _reference_start_Exodus 8:16_reference_end_ _reference_start_Exodus 8:19_reference_end_ _reference_start_Exodus 9:1_reference_end_ _reference_start_Exodus 9:17_reference_end_ _reference_start_Exodus 10:03_reference_end_ _reference_start_Exodus 10:04_reference_end_ _reference_start_Exodus 11:02_reference_end_ _reference_start_Exodus 11:03_reference_end_ _reference_start_Exodus 12:1_reference_end_ _reference_start_Exodus 13:1_reference_end_ _reference_start_Exodus 14:1_reference_end_ _reference_start_Exodus 15:1_reference_end_ _reference_start_Exodus 16:04_reference_end_ _reference_start_E xodus 16:30_reference_end_ _reference_start_Exodus 17:01_reference_end_ _reference_start_Exodus 18:1_reference_end_ _reference_start_Exodus 19:1_reference_end_ _reference_start_Exodus 20:20_reference_end_ _reference_start_Exodus 24:02_reference_end_ _reference_start_Exodus 24:03_reference_end_ _reference_start_Exodus 24:07_reference_end_ _reference_start_Numbers 11:1_reference_end_ _reference_start_Numbers 11:01_reference_end_ _reference_start_Numbers 11:12_reference_end_ _reference_start_Numbers 11:13_reference_end_ _reference_start_Numbers 11:29_reference_end_ _reference_start_Numbers 12:15_reference_end_ _reference_start_Numbers 12:16_reference_end_ _reference_start_Numbers 14:1_reference_end_ _reference_start_Numbers 20:01_reference_end_ _reference_start_Numbers 21:1_reference_end_ _reference_start_Psalms 3:09_reference_end_ _reference_start_Psalms 59:12_reference_end_ _reference_start_Psalms 60:05_reference_end_ _reference_start_Psalms 110:03_reference_end_ _reference_start_Psalms 125:02_reference_en d_ _reference_start_Psalms 144:15_reference_end_ _reference_start_Ruth 1:06_reference_end_ \cme people, tribe, nation \cmf peuples, tribu, nation _reference_start_1 Chronicles 16:20_reference_end_ _reference_start_1 Chronicles 16:26_reference_end_ _reference_start_1 Chronicles 16:28_reference_end_ _reference_start_1 Chronicles 21:05_reference_end_ _reference_start_1 Kings 1:40_reference_end_ _reference_start_1 Kings 3:02_reference_end_ _reference_start_1 Kings 5:14_reference_end_ _reference_start_1 Kings 8:43_reference_end_ _reference_start_1 Kings 8:5_reference_end_ _reference_start_1 Kings 8:60_reference_end_ _reference_start_1 Kings 9:07_reference_end_ _reference_start_1 Samuel 12:22_reference_end_ _reference_start_1 Samuel 31:09_reference_end_ _reference_start_2 Chronicles 7:20_reference_end_ _reference_start_2 Samuel 3:32_reference_end_ _reference_start_2 Samuel 3:34_reference_end_ _reference_start_2 Samuel 3:36_reference_end_ _reference_start_2 Samuel 3:37_reference_end_ _reference_start_2 Samuel 6: 18_reference_end_ _reference_start_2 Samuel 6:19_reference_end_ _reference_start_2 Samuel 10:12_reference_end_ _reference_start_2 Samuel 14:15_reference_end_ _reference_start_2 Samuel 17:03_reference_end_ _reference_start_2 Samuel 19:03_reference_end_ _reference_start_2 Samuel 19:04_reference_end_ _reference_start_2 Samuel 19:09_reference_end_ _reference_start_2 Samuel 19:10_reference_end_ _reference_start_2 Samuel 22:44_reference_end_ _reference_start_2 Samuel 22:48_reference_end_ _reference_start_Daniel 2:44_reference_end_ _reference_start_Daniel 3:07_reference_end_ _reference_start_Daniel 3:31_reference_end_ _reference_start_Daniel 5:19_reference_end_ _reference_start_Daniel 6:26_reference_end_ _reference_start_Daniel 7:14_reference_end_ _reference_start_Daniel 9:26_reference_end_ _reference_start_Daniel 11:15_reference_end_ _reference_start_Deuteronomy 28:10_reference_end_ _reference_start_Deuteronomy 28:32_reference_end_ _reference_start_Deuteronomy 28:33_reference_end_ _reference_start_Deuteronomy 2 8:37_reference_end_ _reference_start_Deuteronomy 28:64_reference_end_ _reference_start_Esther 1:22_reference_end_ _reference_start_Esther 2:10_reference_end_ _reference_start_Esther 2:20_reference_end_ _reference_start_Esther 3:06_reference_end_ _reference_start_Esther 3:08_reference_end_ _reference_start_Esther 3:11_reference_end_ _reference_start_Esther 3:12_reference_end_ _reference_start_Esther 3:14_reference_end_ _reference_start_Esther 4:08_reference_end_ _reference_start_Esther 7:03_reference_end_ _reference_start_Esther 7:04_reference_end_ _reference_start_Esther 8:06_reference_end_ _reference_start_Esther 8:09_reference_end_ _reference_start_Esther 8:13_reference_end_ _reference_start_Esther 8:17_reference_end_ _reference_start_Exodus 1:22_reference_end_ _reference_start_Exodus 12:31_reference_end_ _reference_start_Exodus 15:14_reference_end_ _reference_start_Exodus 19:05_reference_end_ _reference_start_Exodus 21:08_reference_end_ _reference_start_Exodus 22:27_reference_end_ _reference_start_Exodus 23:27_reference_end_ _reference_start_Genesis 14:16_reference_end_ _reference_start_Genesis 17:16_reference_end_ _reference_start_Genesis 26:11_reference_end_ _reference_start_Genesis 28:03_reference_end_ _reference_start_Genesis 34:16_reference_end_ _reference_start_Genesis 34:22_reference_end_ _reference_start_Genesis 41:40_reference_end_ _reference_start_Genesis 47:23_reference_end_ _reference_start_Genesis 48:04_reference_end_ _reference_start_Genesis 48:19_reference_end_ _reference_start_Genesis 49:10_reference_end_ _reference_start_Jonah 1:08_reference_end_ _reference_start_Numbers 21:02_reference_end_ _reference_start_Numbers 21:29_reference_end_ _reference_start_Numbers 21:34_reference_end_ _reference_start_Numbers 21:35_reference_end_ _reference_start_Proverbs 29:02_reference_end_ _reference_start_Psalms 56:08_reference_end_ _reference_start_Psalms 144:02_reference_end_ _reference_start_Ruth 2:11_reference_end_ _reference_start_Ruth 4:10_reference_end_ _reference_start_Ruth 4:11_reference_end_ \\`+))people, nationpeople, nation\h £av \f peuple, nation \cme all mankind \cmf tout homme _reference_start_1 Chronicles 16:08_reference_end_ _refere ?tfXJ<. xj\N@2$|n`RD6( J)7 I H G F  E  D  C  B  A  @  ?  >  = < ; : 9 8 71! 61 51 4# 3 2 1# 0! / . - , ( +  *  )  (  '  &  %  $  #  "  !       #   !            "                 ?tfXJ<. xj\N@2$|n`RD6(                     ~  }  |  { z  y  x  w  v  u  t  s r  q  p  o  n  m  l  k  j  i  h  g  f u e  d  c  b  a  `  _ + ^ $ ]  \ [ Z Y X W  V  U  T  S R Q  P O N " M2 L/ K* ?tfXJ<. xj\N@2$|n`RD6( H  G ( F  E  D  C  B A @} ?n >< =; < ; : 9 8  7  6  5 4 3  2  1 0 / . - , + * ) ( ' &  %  $  #  "  !                             ! ?tfXJ<. xj\N@2$|n`RD6( "         ~ }  | { z y x w v u t s r q p o n m l@ k% j! i h g  f  e d c b a `, _ 0 ^ , ]  \  [  Z  Y  X  W V  U  T % S $ R " Q  P O  N  M  L < K  J + I  ?tfXJ;-wi[M?1#{m_QC5' F- EN= D C B  A7 @ ? >  =! <3 ;# :  9 8 7 6 5e 4 3 2 1  0  /! . - , +  * ) ( ' & % $ #  " !         !         8  # "     1 0 0 / )( " !![,perfectperfect\h £yimAGt \f sans défaut \cme blameless, in right relationship with God \cmf sans blame, en bonne relation avec Dieu _reference_start_2 Samuel 22:24_reference_end_ _reference_start_2 Samuel 22:26_reference_end_ _reference_start_2 Samuel 22:33_reference_end_ _reference_start_Deuteronomy 18:13_reference_end_ _reference_start_Genesis 6:09_reference_end_ _reference_start_Genesis 17:01_reference_end_ \cme perfection of God and his law \cmf perfection de Dieu et sa loi _reference_start_2 Samuel 22:26_reference_end_ _reference_start_2 Samuel 22:31_reference_end_ _reference_start_Psalms 18:31_reference_end_ _reference_start_Psalms 19:08_reference_end_ \cme without blemish or defect, healthy \cmf sans défaut, en bonne santé _reference_start_Exodus 12:05_reference_end_ _reference_start_Leviticus 5:15_reference_end_ _reference_start_Leviticus 5:18_reference_end_ _reference_start_Leviticus 5:25_reference_end_ _reference_start_Leviticus 22:21_reference_end_ !-perverseperverse\h hAkûKpühaGt \f pervers \cme perversity, slander \cmf pervers, calomnie _reference_start_Proverbs 2:12_reference_end_ _reference_start_Proverbs 2:14_reference_end_ _reference_start_Proverbs 6:14_reference_end_ _reference_start_Proverbs 10:31_reference_end_ _reference_start_Proverbs 10:32_reference_end_ _reference_start_Proverbs 16:28_reference_end_ _reference_start_Proverbs 16:30_reference_end_ _reference_start_Proverbs 23:33_reference_end_ \cme twisted, perverted \cmf perverse, tordu _reference_start_2 Samuel 22:27_reference_end_ _reference_start_Deuteronomy 32:05_reference_end_ _reference_start_Proverbs 2:15_reference_end_ _reference_start_Proverbs 8:08_reference_end_ _reference_start_Proverbs 28:06_reference_end_ _reference_start_Psalms 101:04_reference_end_  m//pit (the)pit (the)\h taxaH \f la fosse \cme hole in the ground as trap \cmf un trou qui sert comme piège _reference_start_Proverbs 26:17_reference_end_ _reference_start_Psalms 7:16_reference_end_ _reference_start_Psalms 9:16_reference_end_ _reference_start_Psalms 35:07_reference_end_ \cme where dead people are \cmf lieu où demeurent les morts _reference_start_Isaiah 51:14_reference_end_ _reference_start_Job 33:28_reference_end_ _reference_start_Jonah 2:07_reference_end_ _reference_start_Psalms 16:10_reference_end_ _reference_start_Psalms 30:10_reference_end_ _reference_start_Psalms 55:24_reference_end_\.--qperverse (to be)perverse (to be)\h HaqAv \f perverse, être perverse \cme be perverted, twisted \cmf perverse, tordu _reference_start_Proverbs 10:09_reference_end_ _reference_start_Proverbs 28:18_reference_end_ K'311praise, adorn (to)praise, adorn (to)\h hAwAn \f louer, orner \cme adorn (with praise) \cmf orner (avec louanage) _reference_start_Exodus 15:02_reference_end_k2###praise (to)praise (to)\h lalAh. \f louer \cme boast about God \cmf venter Dieu _reference_sta 61AA}power, ark of the covenantpower, ark of the covenant\h zOv \f pouvoir, coffre de l'alliance \cme the ark of the covenant; God's power manifested in connection with the ark \cmf coffre de l'alliance; le pouvoir de Dieu manifesté en relation avec le coffre _reference_start_Psalms 78:61_reference_end_0##]plan (evil)plan (evil)\h hAGmÇz \f plan (mauvais) \cme evil plan, wicked act \cmf projet mauais, action néfaste _reference_start_Proverbs 10:23_reference_end_ _reference_start_Proverbs 21:27_reference_end_ _reference_start_Proverbs 24:09_reference_end_ rt_Isaiah 45:25_reference_end_ _reference_start_Psalms 34:03_reference_end_ _reference_start_Psalms 63:12_reference_end_ \cme boast about self \cmf se venter _reference_start_1 Kings 20:11_reference_end_ _reference_start_Proverbs 20:14_reference_end_ _reference_start_Proverbs 27:01_reference_end_ _reference_start_Psalms 52:03_reference_end_ \cme commend someone \cmf louer une personne _reference_start_Ecclesiastes 4:02_reference_end_ _reference_start_Ecclesiastes 8:15_reference_end_ \cme confess sins \cmf confesser ses péchés _reference_start_1 Kings 8:33_reference_end_ _reference_start_1 Kings 8:35_reference_end_ _reference_start_2 Chronicles 6:24_reference_end_ _reference_start_2 Chronicles 6:26_reference_end_ _reference_start_Daniel 9:03_reference_end_ _reference_start_Daniel 9:04_reference_end_ _reference_start_Daniel 9:20_reference_end_ _reference_start_Leviticus 5:05_reference_end_ _reference_start_Nehemiah 1:06_reference_end_ _reference_start_Proverbs 28:13_reference_end_ _reference_start_Psalms 32:05_reference_end_ \cme fame, glory of person or thing \cmf gloire, célébrité d'une personne ou une chose _reference_start_Deuteronomy 10:21_reference_end_ _reference_start_Deuteronomy 26:19_reference_end_ _reference_start_Isaiah 62:07_reference_end_ _reference_start_Jeremiah 49:25_reference_end_ \cme praise God \cmf louer Dieu _reference_start_1 Chronicles 16:04_reference_end_ _reference_start_1 Chronicles 16:25_reference_end_ _reference_start_1 Chronicles 16:36_reference_end_ _reference_start_1 Chronicles 23:05_reference_end_ _reference_start_1 Chronicles 23:30_reference_end_ _reference_start_1 Chronicles 25:03_reference_end_ _reference_start_1 Chronicles 29:13_reference_end_ _reference_start_Psalms 63:06_reference_end_ \cme praise God for his deeds/salvation \cmf louer Dieu pour ses faites, son salult _reference_start_1 Chronicles 16:10_reference_end_ _reference_start_2 Chronicles 7:06_reference_end_ _reference_start_2 Samuel 22:04_reference_end_ _reference_start_Psalms 56:05_reference_end_ _refe rence_start_Psalms 56:11_reference_end_ \cme praise good qualities of thing or person \cmf louer les bonnes qualités de qqn ou qqch _reference_start_2 Samuel 14:25_reference_end_ _reference_start_Genesis 12:15_reference_end_ _reference_start_Proverbs 27:02_reference_end_ _reference_start_Proverbs 31:28_reference_end_ _reference_start_Proverbs 31:30_reference_end_ _reference_start_Proverbs 31:31_reference_end_ \cme praise, thank a person \cmf louer, remercier une personne _reference_start_Genesis 49:08_reference_end_ \cme praise, thank God \cmf louer, remercier Dieu _reference_start_1 Chronicles 16:04_reference_end_ _reference_start_1 Chronicles 16:07_reference_end_ _reference_start_1 Chronicles 16:08_reference_end_ _reference_start_1 Chronicles 16:34_reference_end_ _reference_start_1 Chronicles 16:35_reference_end_ _reference_start_1 Chronicles 16:41_reference_end_ _reference_start_1 Chronicles 1:1_reference_end_ _reference_start_1 Chronicles 25:03_reference_end_ _reference_start_1 Chronicles 29:13_refer ence_end_ _reference_start_2 Chronicles 7:03_reference_end_ _reference_start_2 Chronicles 7:06_reference_end_ _reference_start_2 Chronicles 20:22_reference_end_ _reference_start_2 Chronicles 30:22_reference_end_ _reference_start_2 Samuel 22:50_reference_end_ _reference_start_Daniel 2:23_reference_end_ _reference_start_Genesis 29:35_reference_end_ _reference_start_Nehemiah 12:46_reference_end_ _reference_start_Psalms 18:50_reference_end_ _reference_start_Psalms 28:07_reference_end_ _reference_start_Psalms 30:05_reference_end_ _reference_start_Psalms 30:10_reference_end_ _reference_start_Psalms 30:13_reference_end_ _reference_start_Psalms 34:02_reference_end_ _reference_start_Psalms 51:17_reference_end_ _reference_start_Psalms 52:11_reference_end_ _reference_start_Psalms 54:08_reference_end_ _reference_start_Psalms 57:10_reference_end_ _reference_start_Psalms 71:06_reference_end_ _reference_start_Psalms 71:08_reference_end_ _reference_start_Psalms 71:14_reference_end_ _reference_start_Psalms 71:22_reference_end_ _reference_start_Psalms 139:14_reference_end_ _reference_start_Psalms 142:08_reference_end_ \cme praise, thank God or gods (Arm) \cmf louer, remercier Dieu ou dieux (Arm) _reference_start_Daniel 2:23_reference_end_ _reference_start_Daniel 4:31_reference_end_ _reference_start_Daniel 4:34_reference_end_ _reference_start_Daniel 5:04_reference_end_ _reference_start_Daniel 5:23_reference_end_ \cme praiseworthy deeds of God \cmf les actes de Dieu qui doivent être glorifiées _reference_start_1 Chronicles 16:35_reference_end_ _reference_start_Exodus 15:11_reference_end_ \cme prasie God \cmf louer Dieu _reference_start_Psalms 63:04_reference_end_ _reference_start_Psalms 117:01_reference_end_ _reference_start_Psalms 145:04_reference_end_ _reference_start_Psalms 147:12_reference_end_ \cme thank God \cmf remercier Dieu _reference_start_Psalms 18:04_reference_end_ _reference_start_Psalms 69:31_reference_end_ ?tfXJ<. xj\N@2$|n`RD6(   2  . #   2 ~ } | { z  y  x  w ) v # u " t  s  r  q1 p o n m l  k  j8 i8 h  g f  e? d  c  b  a  ` $ _  ^  ]1 \> [ Z  Y  X W V U  T  S  R Q P # O ! N M L4 K J I  H? G" ?tfWH:,tfXJ<. xj\N@2$ D)- C B  A  @ ? >  = < ; : 9 8 7 6  5  4  3  2  1  0  /; . - ,/ + *% ) ( '1 &  % $ # " !  E    u ?   #   "     G G G G 9 6 4 3 "   O4spresidentpresident\h €yÿÿikèrAs \f chef \cme government offical in Persia \cmf fonctionaire en Perse _reference_start_Daniel 6:03_reference_end_ _reference_start_Daniel 6:04_reference_end_ _reference_start_Daniel 6:05_reference_end_ _reference_start_Daniel 6:07_reference_end_ _reference_start_Daniel 6:07_reference_end_ ##Y5pridepride\h €ô'ÃFg \f orgeuil \cme area of lush vegetation, jungle \cmf région de végétation, jungle _reference_start_Jeremiah 12:05_reference_end_ _reference_start_Jeremiah 49:19_reference_end_ \cme God's power in saving \cmf le pouvoir de Dieu en son salut _reference_start_Exodus 15:07_reference_end_ \cme majesty, excellence, glory \cmf majesté, excellence, gloire _reference_start_Isaiah 14:11_reference_end_ _reference_start_Job 37:04_reference_end_ _reference_start_Leviticus 26:19_reference_end_ _reference_start_Psalms 47:05_reference_end_ \cme pride \cmf orgeuil _reference_start_Proverbs 8:13_reference_end_ _reference_start_Proverbs 16:18_reference_end_ _reference_start_Psalms 59:13_reference_end_ eference_start_Deuteronomy 18:01_reference_end_ _reference_start_Deuteronomy 18:03_reference_end_ \cme non-Jewish, pagan \cmf prêtre non-juif, paiën _reference_start_1 Samuel 5:05_reference_end_ _reference_start_1 Samuel 6:02_reference_end_ _reference_start_Exodus 2:16_reference_end_ _reference_start_Genesis 41:45_reference_end_ _reference_start_Genesis 45:50_reference_end_ _reference_start_Genesis 46:20_reference_end_ _reference_start_Genesis 47:22_reference_end_ _reference_start_Genesis 47:26_reference_end_ \cme priest of God in Israel \cmf sacrificateur de Dieu en Israël _reference_start_1 Chronicles 9:10_reference_end_ _reference_start_1 Chronicles 9:30_reference_end_ _reference_start_1 Chronicles 16:06_reference_end_ _reference_start_1 Chronicles 16:39_reference_end_ _reference_start_1 Chronicles 18:16_reference_end_ _reference_start_1 Chronicles 24:06_reference_end_ _reference_start_1 Kings 1:1_reference_end_ _reference_start_1 Kings 2:22_reference_end_ _reference_start_1 Kings 2:26_reference_end _ _reference_start_1 Kings 2:27_reference_end_ _reference_start_1 Kings 2:35_reference_end_ _reference_start_1 Kings 4:02_reference_end_ _reference_start_1 Kings 4:04_reference_end_ _reference_start_1 Kings 8:1_reference_end_ _reference_start_1 Samuel 1:03_reference_end_ _reference_start_1 Samuel 2:11_reference_end_ _reference_start_1 Samuel 2:13_reference_end_ _reference_start_1 Samuel 2:14_reference_end_ _reference_start_1 Samuel 2:15_reference_end_ _reference_start_1 Samuel 2:28_reference_end_ _reference_start_1 Samuel 2:35_reference_end_ _reference_start_1 Samuel 14:03_reference_end_ _reference_start_1 Samuel 14:19_reference_end_ _reference_start_1 Samuel 14:36_reference_end_ _reference_start_1 Samuel 21:1_reference_end_ _reference_start_1 Samuel 22:1_reference_end_ _reference_start_1 Samuel 23:09_reference_end_ _reference_start_1 Samuel 30:07_reference_end_ _reference_start_2 Chronicles 7:02_reference_end_ _reference_start_2 Chronicles 7:06_reference_end_ _reference_start_2 Samuel 8:17_reference_end_ _reference_start_2 Samuel 8:18_reference_end_ _reference_start_2 Samuel 15:35_reference_end_ _reference_start_2 Samuel 17:15_reference_end_ _reference_start_2 Samuel 19:12_reference_end_ _reference_start_2 Samuel 20:25_reference_end_ _reference_start_2 Samuel 20:26_reference_end_ _reference_start_Exodus 28:01_reference_end_ _reference_start_Psalms 78:64_reference_end_ _reference_start_Psalms 132:09_reference_end_ _reference_start_Psalms 132:16_reference_end_ \cme priest of God, and king/leader of a nation \cmf sacrificateur de Dieu, et roi/chef d'une nation _reference_start_1 Chronicles 29:22_reference_end_ _reference_start_1 Kings 4:05_reference_end_ _reference_start_Exodus 2:16_reference_end_ _reference_start_Exodus 3:01_reference_end_ _reference_start_Exodus 18:01_reference_end_ _reference_start_Exodus 19:06_reference_end_ _reference_start_Exodus 19:22_reference_end_ _reference_start_Exodus 19:24_reference_end_ _reference_start_Genesis 14:18_reference_end_ _reference_start_Psalms 110:04_reference_end_ jj6epriestpriest\h €EhOk \f sacrificateur \cme Aaronic priest in Israel \cmf sacrificateur aaronique en Israël _reference_start_1 Chronicles 9:02_reference_end_ _reference_start_1 Chronicles 23:02_reference_end_ _reference_start_1 Chronicles 24:06_reference_end_ _reference_start_1 Chronicles 24:31_reference_end_ _reference_start_1 Chronicles 28:13_reference_end_ _reference_start_1 Chronicles 28:21_reference_end_ _reference_start_2 Samuel 15:27_reference_end_ _reference_start_Numbers 5:06_reference_end_ _reference_start_Numbers 5:08_reference_end_ _reference_start_Numbers 5:10_reference_end_ _reference_start_Numbers 5:12_reference_end_ _reference_start_Numbers 5:13_reference_end_ _reference_start_Numbers 5:16_reference_end_ _reference_start_Numbers 5:18_reference_end_ _reference_start_Numbers 10:08_reference_end_ \cme Levitical priests in Israel \cmf sacrificateur lévitique en Israël _r ?tfXJ<. xj\N@2$zl^PB4&     "  ~> } | $ {n z y x w v u t s  r  q p oN@ n m  l  k  j  i # h  g  f e d  c  b  a  ` $ _  ^  ] # \  [  Z  Y  X  W  V  U  T  S # R  Q  P  O  N  M  L ' K  J  I H/ G/ F. E-2 b8%princeprince\h 'yiWAn \f prince \cme chief man, leader of a group of people \cmf homme chef, chef d'un group _reference_start_1 Kings 11:34_reference_end_ _reference_start_Exodus 16:22_reference_end_ _reference_start_Exo <7!!Ipriesthoodpriesthood\h hÃFnuhüÐk \f sacerdoce \cme role or office of being a priest \cmf le rôle ou la position du sacerdoce _reference_start_1 Samuel 2:36_reference_end_ _reference_start_Exodus 29:09_reference_end_ _reference_start_Ezra 2:62_reference_end_ _reference_start_Joshua 18:07_reference_end_dus 22:27_reference_end_ _reference_start_Genesis 17:20_reference_end_ _reference_start_Genesis 23:06_reference_end_ _reference_start_Genesis 25:16_reference_end_ _reference_start_Genesis 34:02_reference_end_ \cme ruler of the Philistines \cmf chef des Philestains _reference_start_1 Chronicles 12:19_reference_end_ _reference_start_1 Samuel 5:08_reference_end_ _reference_start_1 Samuel 5:08_reference_end_ _reference_start_1 Samuel 6:04_reference_end_ _reference_start_1 Samuel 6:12_reference_end_ _reference_start_1 Samuel 6:16_reference_end_ _reference_start_1 Samuel 6:18_reference_end_ _reference_start_1 Samuel 7:07_reference_end_ _reference_start_1 Samuel 29:02_reference_end_ _reference_start_1 Samuel 29:06_reference_end_ _reference_start_1 Samuel 29:07_reference_end_ \cme tribal chiefs of Israel \cmf chefs des tribus d'Israël _reference_start_1 Kings 8:01_reference_end_ _reference_start_Numbers 1:16_reference_end_ _reference_start_Numbers 1:44_reference_end_ _reference_start_Numbers 10:04_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( B  A  @ & ?  >  =  <  ;  : 7 9  8  7  6  5  4  3  2  1  0  /  .  -  ,  +  *  )  ( ' & % $ #  " !                        ,                          "   e_start_2 Chronicles 18:25_reference_end_ _reference_start_2 Kings 10:01_reference_end_ \cme magistrate, judge of a district \cmf juge, magistrat d'une région _reference_start_Esther 1:03_reference_end_ _reference_start_Esther 8:09_reference_end_ _reference_start_Exodus 2:14_reference_end_ _reference_start_Exodus 18:21_reference_end_ _reference_start_Exodus 18:25_reference_end_ \cme military officer \cmf officier militaire _reference_start_1 Chronicles 21:02_reference_end_ _reference_start_1 Chronicles 26:26_reference_end_ _reference_start_1 Chronicles 27:01_reference_end_ _reference_start_1 Chronicles 27:03_reference_end_ _reference_start_1 Chronicles 27:05_reference_end_ _reference_start_1 Chronicles 27:08_reference_end_ _reference_start_1 Chronicles 28:01_reference_end_ _reference_start_1 Chronicles 29:06_reference_end_ _reference_start_1 Kings 1:19_reference_end_ _reference_start_1 Kings 1:25_reference_end_ _reference_start_1 Kings 2:05_reference_end_ _reference_start_1 Kings 2:32_reference_end_ _ref erence_start_1 Kings 9:22_reference_end_ _reference_start_1 Kings 11:15_reference_end_ _reference_start_1 Kings 11:21_reference_end_ _reference_start_1 Samuel 8:13_reference_end_ _reference_start_1 Samuel 17:18_reference_end_ _reference_start_1 Samuel 17:55_reference_end_ _reference_start_1 Samuel 18:30_reference_end_ _reference_start_1 Samuel 22:07_reference_end_ _reference_start_1 Samuel 26:05_reference_end_ _reference_start_2 Kings 9:22_reference_end_ _reference_start_2 Samuel 2:08_reference_end_ _reference_start_2 Samuel 3:38_reference_end_ _reference_start_2 Samuel 10:16_reference_end_ _reference_start_2 Samuel 10:18_reference_end_ _reference_start_2 Samuel 18:01_reference_end_ _reference_start_2 Samuel 18:05_reference_end_ _reference_start_2 Samuel 19:07_reference_end_ _reference_start_2 Samuel 19:14_reference_end_ _reference_start_2 Samuel 23:19_reference_end_ _reference_start_Daniel 11:05_reference_end_ _reference_start_Genesis 21:22_reference_end_ _reference_start_Genesis 21:32_reference_end_ _re ference_start_Genesis 26:26_reference_end_ \cme person in a position of authrity \cmf personne en position d'autorité _reference_start_1 Chronicles 27:31_reference_end_ _reference_start_1 Kings 5:30_reference_end_ _reference_start_1 Kings 9:23_reference_end_ _reference_start_Daniel 1:18_reference_end_ _reference_start_Exodus 1:11_reference_end_ _reference_start_Genesis 37:36_reference_end_ _reference_start_Genesis 39:01_reference_end_ _reference_start_Genesis 39:21_reference_end_ _reference_start_Genesis 39:22_reference_end_ _reference_start_Genesis 39:23_reference_end_ _reference_start_Genesis 40:02_reference_end_ _reference_start_Genesis 40:03_reference_end_ _reference_start_Genesis 40:04_reference_end_ _reference_start_Genesis 40:09_reference_end_ _reference_start_Genesis 40:16_reference_end_ _reference_start_Genesis 40:20_reference_end_ _reference_start_Genesis 40:21_reference_end_ _reference_start_Genesis 40:22_reference_end_ _reference_start_Genesis 40:23_reference_end_ _reference_start_Genesis 41: 09_reference_end_ _reference_start_Genesis 41:10_reference_end_ _reference_start_Genesis 41:12_reference_end_ _reference_start_Genesis 47:06_reference_end_ _reference_start_Psalms 119:161_reference_end_ _reference_start_Psalms 148:11_reference_end_ \cme powerful spiritual authorities \cmf puissants êtres spirituels _reference_start_Daniel 8:11_reference_end_ _reference_start_Daniel 10:13_reference_end_ _reference_start_Daniel 10:20_reference_end_ _reference_start_Daniel 11:21_reference_end_ _reference_start_Daniel 12:01_reference_end_ \cme prince, noble, official \cmf haut fonctionaire, prince, noble _reference_start_1 Chronicles 22:17_reference_end_ _reference_start_1 Chronicles 23:02_reference_end_ _reference_start_1 Chronicles 24:06_reference_end_ _reference_start_1 Chronicles 27:34_reference_end_ _reference_start_1 Chronicles 28:01_reference_end_ _reference_start_1 Chronicles 28:21_reference_end_ _reference_start_1 Chronicles 29:24_reference_end_ _reference_start_1 Kings 4:02_reference_end_ _reference_start_2 Samuel 10:03_reference_end_ _reference_start_Daniel 1:07_reference_end_ _reference_start_Daniel 1:08_reference_end_ _reference_start_Daniel 1:09_reference_end_ _reference_start_Daniel 1:10_reference_end_ _reference_start_Daniel 1:11_reference_end_ _reference_start_Daniel 9:06_reference_end_ _reference_start_Daniel 9:08_reference_end_ _reference_start_Daniel 11:05_reference_end_ _reference_start_Esther 1:03_reference_end_ _reference_start_Esther 1:11_reference_end_ _reference_start_Esther 1:14_reference_end_ _reference_start_Esther 1:16_reference_end_ _reference_start_Esther 1:18_reference_end_ _reference_start_Esther 1:21_reference_end_ _reference_start_Esther 2:18_reference_end_ _reference_start_Esther 3:01_reference_end_ _reference_start_Esther 3:12_reference_end_ _reference_start_Esther 5:11_reference_end_ _reference_start_Esther 6:09_reference_end_ _reference_start_Genesis 12:15_reference_end_ \cme religious official \cmf officier réligieux _reference_start_1 Chronicles 24:05_reference_end_ 9''Oprince, rulerprince, ruler\h raW \f ministre, souverain \cme chief of tribe, of group \cmf chef du tribu, du group _reference_start_1 Chronicles 27:22_reference_end_ _reference_start_1 Chronicles 28:01_reference_end_ _reference_start_1 Chronicles 29:06_reference_end_ _reference_start_1 Kings 11:24_reference_end_ _reference_start_1 Samuel 22:02_reference_end_ _reference_start_1 Samuel 29:03_reference_end_ _reference_start_1 Samuel 29:04_reference_end_ _reference_start_1 Samuel 29:09_reference_end_ _reference_start_2 Samuel 4:02_reference_end_ _reference_start_Nehemiah 4:10_reference_end_ _reference_start_Numbers 21:18_reference_end_ \cme city council member, cheif of city \cmf membre du conseil municipal, chef de ville _reference_start_1 Kings 22:26_reference_end_ _referenc  ?tfXJ<. xj\N@1"zl^PB4&    ~ } | { z  y  x  w v u t s r  q  p  o  n  m " l  k  j  i  h  g  f e d cw b/ a) `) _) ^( ]( \( [( Z( Y( X( W( V( U' T' S' R' Q%$ P O N  M  L  K J I H  G  F  E  D  C  ?tfXJ<. xj\N@2$|n`RD6( @ ? >  = < ; : 9! 8 7# 6N 51 4  3  2  1  0A / .  -" , + *3 ) ( '" & % $ # "  !                                                      M:''_prophesy (to)prophesy (to)\h 'AbAn \f prophétiser \cme fortell the future \cmf prophétiser _reference_start_1 Kings 22:08_reference_end_ _reference_start_1 Kings 22:10_reference_end_ _reference_start_1 Kings 22:12_reference_end_ _reference_start_1 Kings 22:18_reference_end_ _reference_start_Jeremiah 20:06_reference_end_ce_start_1 Samuel 9:09_reference_end_ _reference_start_1 Samuel 10:05_reference_end_ _reference_start_1 Samuel 10:10_reference_end_ _reference_start_1 Samuel 10:11_reference_end_ _reference_start_1 Samuel 10:12_reference_end_ _reference_start_1 Samuel 19:20_reference_end_ _reference_start_1 Samuel 19:24_reference_end_ _reference_start_1 Samuel 22:05_reference_end_ _reference_start_1 Samuel 28:06_reference_end_ _reference_start_1 Samuel 28:15_reference_end_ _reference_start_2 Samuel 7:02_reference_end_ _reference_start_2 Samuel 12:25_reference_end_ _reference_start_Daniel 9:02_reference_end_ _reference_start_Daniel 9:06_reference_end_ _reference_start_Daniel 9:10_reference_end_ _reference_start_Deuteronomy 18:15_reference_end_ _reference_start_Deuteronomy 18:18_reference_end_ _reference_start_Deuteronomy 19:22_reference_end_ _reference_start_Deuteronomy 34:10_reference_end_ _reference_start_Exodus 7:01_reference_end_ _reference_start_Genesis 20:07_reference_end_ _reference_start_Psalms 51:02_reference_end_ g;+prophetprophet\h 'yibÃn \f prophète \cme books of teachings of prophets \cmf livres d'enseignement des prophètes de l'ancien testament _reference_start_Daniel 9:24_reference_end_ \cme false prophet, speaks without God's direction or for other gods \cmf faux prophéte - parle sans autorisation de Dieu ou pour autres dieux _reference_start_Deuteronomy 18:20_reference_end_ \cme one speaking for God in an ecstatic state \cmf qqn qui parle pour Dieu en état d'extasie _reference_start_Numbers 11:29_reference_end_ \cme one who speaks for God or another person \cmf qqn qui parle pour Dieu ou une autre personne _reference_start_1 Chronicles 16:22_reference_end_ _reference_start_1 Chronicles 17:01_reference_end_ _reference_start_1 Chronicles 29:29_reference_end_ _reference_start_1 Kings 1:1_reference_end_ _reference_start_1 Kings 11:29_reference_end_ _referen  B<!!Uprophetessprophetess\h hA'yibÌn \f prophétesse \cme woman who associates with the prophets \cmf femme qui associent avec les prophètes _reference_start_Isaiah 8:03_reference_end_ _reference_start_Nehemiah 6:14_reference_end_ \cme woman who give a word from God \cmf femme qui donne la parole de Dieu _reference_start_2 Chronicles 34:22_reference_end_ _reference_start_2 Kings 22:14_reference_end_ \cme woman with gift of writing songs \cmf femme douée de composer des chançons _reference_start_Exodus 15:20_reference_end_ _reference_start_Jude 4:04_reference_end_kkuk 2:06_reference_end_ _reference_start_Isaiah 14:04_reference_end_ _reference_start_Micah 2:04_reference_end_ _reference_start_Numbers 24:03_reference_end_ _reference_start_Numbers 24:15_reference_end_ \cme sentence with ethical wisdom \cmf phrase de sagaesse moral _reference_start_Ecclesiastes 12:09_reference_end_ _reference_start_Job 13:12_reference_end_ _reference_start_Proverbs 10:01_reference_end_ _reference_start_Proverbs 25:01_reference_end_ _reference_start_Proverbs 26:07_reference_end_ _reference_start_Proverbs 26:09_reference_end_ \cme short narative with symbolic meaning \cmf narratif court avec un sens symolique _reference_start_Ezra 17:02_reference_end_ _reference_start_Ezra 21:05_reference_end_ _reference_start_Ezra 24:03_reference_end_ \cme standing joke, by-word \cmf fable, façon de se moquer de qqn _reference_start_1 Kings 9:07_reference_end_ _reference_start_2 Chronicles 7:20_reference_end_ _reference_start_Deuteronomy 28:37_reference_end_ _reference_start_Psalms 44:15_reference_end_   h=-proverbproverb\h lAHAm. \f proverbe \cme brief sentence of popular wisdom \cmf phrase courte de sagesse populaire _reference_start_1 Samuel 10:02_reference_end_ _reference_start_1 Samuel 24:14_reference_end_ _reference_start_Ezra 12:23_reference_end_ \cme poem \cmf poème _reference_start_1 Kings 5:12_reference_end_ _reference_start_Psalms 49:05_reference_end_ _reference_start_Psalms 78:02_reference_end_ \cme prophetic figure \cmf illustration prophétique _reference_start_Haba  ?tfXJ<. xj\N@2$|n`RD6( ! ~! }  |  {  zN7 y x w v  u  t  s  r q p o n m& l k j  i h$ g f  e  d  c  b$ a ` _ ^ ] \ [ Z Y X W V# U  T  S R Q P O N M L K  J  I H, G% F E  D C B A 1prudenceprudence\h lekeW \f prudence \cme insight, understanding \cmf comprehention, perspicacité _reference_start_Proverbs 3:04_reference_end_ _reference_start_Proverbs 12:08_reference_end_ _reference_start_Proverbs 13:15_reference_end_ _reference_start_Proverbs 16:22_reference_end_ _reference_start_Proverbs 19:11_reference_end_ _reference_start_Proverbs 23:09_reference_end_ \cme prudence \cmf prudence _reference_start_Proverbs 1:04_reference_end_ _reference_start_Proverbs 8:05_reference_end_ _reference_start_Proverbs 8:12_reference_end_  \@++uprudent (to be)prudent (to be)\h lakAW \f prudent (être) \cme act circumspectly, prudently \cmf agir d'une manière circonspecte, prudente _reference_start_Proverbs 10:05_reference_end_ _reference_start_Proverbs 10:19_reference_end_ _reference_start_Proverbs 14:35_reference_end_ _reference_start_Proverbs 15:24_reference_end_ _reference_start_Proverbs 17:02_reference_end_ _reference_start_Proverbs 19:14_reference_end_ \cme comprehend, understand \cmf comprendre _reference_start_Proverbs 1:03_reference_end_ _reference_start_Proverbs 21:16_reference_end_ \cme give attention to, ponder \cmf faire attention, penser _reference_start_Proverbs 16:20_reference_end_ _reference_start_Proverbs 21:12_reference_end_ \cme give understanding, teach \cmf donner compréhention, enseigner _reference_start_Proverbs 16:23_reference_end_ _reference_start_Proverbs 21:11_reference_end_ \cme prosper, have success \cmf prosperer, avoir succes _reference_start_Proverbs 17:08_reference_end_ 3BKrebelrebel\h darAAm \f rebeller \cme rebel, revolt against a king \cmf rebeller, revolter contre un roi _reference_start_2 Chronicles 36:13_reference_end_ _reference_start_2 Kings 18:07_reference_end_ _reference_start_2 Kings 18:20_reference_end_ _reference_start_2 Kings 24:01_reference_end_ _reference_start_2 Kings 24:20_reference_end_ _reference_start_Genesis 14:04_reference_end_ _reference_start_Isaiah 36:05_reference_end_ $|Aapurepure\h 'ÔqÌn \f pur \cme without impurities \cmf sans impuretés _reference_start_Daniel 7:09_reference_end_ _reference_start_Nehemiah 6:06_reference_end_ \cme rebel, revolt against God \cmf rebeller, revolter contre Dieu _reference_start_Daniel 9:05_reference_end_ _reference_start_Daniel 9:09_reference_end_ _reference_start_Ezra 2:03_reference_end_ _reference_start_Ezra 20:38_reference_end_ _reference_start_Joshua 22:16_reference_end_ _reference_start_Joshua 22:18_reference_end_ _reference_start_Numbers 14:09_reference_end_ \cme rebell against parent \cmf rebeller, désobéir les parents _reference_start_Deuteronomy 21:18_reference_end_ _reference_start_Deuteronomy 21:20_reference_end_ \cme revolt against, disobey God \cmf rebeller, désobéir Deiu _reference_start_1 Kings 13:21_reference_end_ _reference_start_1 Kings 13:26_reference_end_ _reference_start_1 Samuel 12:14_reference_end_ _reference_start_1 Samuel 12:15_reference_end_ _reference_start_Numbers 20:10_reference_end_ _reference_start_Numbers 20:24_reference_end_ _reference_start_Numbers 27:14_reference_end_ _reference_start_Psalms 78:55_reference_end_ 4^4D##redeem (to)redeem (to)\h la'AFg. \f rédempter \cme act as kinsman, keep something in the family \cmf agir comme parant, garder qqch dans la famille _reference_start_Job 3:05_reference_end_ _reference_start_Leviticus 25:25_reference_end_ _reference_start_Leviticus 25:26_reference 'C))}reconcile (to)reconcile (to)\h hAcAr \f réconciliation \cme accept favorably \cmf accepter favorablement _reference_start_1 Chronicles 29:17_reference_end_ _reference_start_2 Samuel 24:23_reference_end_ _reference_start_Esther 10:03_reference_end_ _reference_start_Genesis 33:10_reference_end_ _reference_start_Job 33:26_reference_end_ _reference_start_Proverbs 3:12_reference_end_ _reference_start_Psalms 44:04_reference_end_ _reference_start_Psalms 1:1_reference_end_ \cme make acceptable \cmf rendre acceptable _reference_start_1 Samuel 29:04_reference_end_ _reference_start_2 Chronicles 36:21_reference_end_ _reference_start_Leviticus 26:34_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( > # =  <  ;  :  9 8 74 63 50 4 3 2 1 0 /  . - , + * ) ( ' & % $ # " !    k J , + )   j    0 # #       1 0 !    " $    ,  (_end_ _reference_start_Leviticus 25:33_reference_end_ _reference_start_Leviticus 25:48_reference_end_ _reference_start_Leviticus 25:49_reference_end_ _reference_start_Ruth 3:13_reference_end_ _reference_start_Ruth 4:04_reference_end_ _reference_start_Ruth 4:06_reference_end_ \cme avenge the death of a relative \cmf venger la mort d'un parent _reference_start_2 Samuel 14:11_reference_end_ _reference_start_Deuteronomy 19:06_reference_end_ _reference_start_Numbers 35:19_reference_end_ _reference_start_Numbers 35:27_reference_end_ \cme God delivers from death and trouble \cmf délivrer de la mort _reference_start_Genesis 48:16_reference_end_ _reference_start_Proverbs 23:11_reference_end_ _reference_start_Psalms 19:15_reference_end_ _reference_start_Psalms 1:1_reference_end_ _reference_start_Psalms 106:10_reference_end_ \cme God delivers from slavery and exile \cmf délivrer de l'esclavage et exile _reference_start_Exodus 6:06_reference_end_ _reference_start_Exodus 15:13_reference_end_ _reference_start_Isaiah 41:14_reference_end_ _reference_start_Isaiah 43:01_reference_end_ _reference_start_Isaiah 44:22_reference_end_ _reference_start_Psalms 74:02_reference_end_ _reference_start_Psalms 107:02_reference_end_ \cme kinsman-redeemer \cmf parant-rédempteur _reference_start_1 Kings 16:11_reference_end_ _reference_start_Numbers 5:08_reference_end_ _reference_start_Ruth 2:20_reference_end_ _reference_start_Ruth 3:09_reference_end_ _reference_start_Ruth 3:12_reference_end_ _reference_start_Ruth 4:01_reference_end_ _reference_start_Ruth 4:03_reference_end_ _reference_start_Ruth 4:06_reference_end_ _reference_start_Ruth 4:08_reference_end_ _reference_start_Ruth 4:14_reference_end_ \cme pay the value of something \cmf payer la valeur de qqch _reference_start_Exodus 13:13_reference_end_ _reference_start_Leviticus 27:13_reference_end_ _reference_start_Leviticus 27:15_reference_end_ _reference_start_Leviticus 27:19_reference_end_ _reference_start_Leviticus 27:20_reference_end_ _reference_start_Leviticus 27:31_reference_end_   pE!!1redemptionredemption\h hAGlu'ÌFg \f rédempter \cme act of keeping property in the family \cmf action de guarder la patrimoine dans la famille _reference_start_Jeremiah 32:08_reference_end_ _reference_start_Leviticus 25:24_reference_end_ _reference_start_Leviticus 25:26_reference_end_ _reference_start_Leviticus 25:29_reference_end_ _reference_start_Leviticus 25:31_reference_end_ _reference_start_Leviticus 25:32_reference_end_ _reference_start_Leviticus 25:48_reference_end_ _reference_start_Leviticus 25:51_reference_end_ _reference_start_Leviticus 25:52_reference_end_ _reference_start_Ruth 4:06_reference_end_ _reference_start_Ruth 4:07_reference_end_ \cme kinsman, relative \cmf un parent _reference_start_Ezekiel 11:15_reference_end_of  "(.4:@FLRX^djpv|ztnhb\VPJD>82,& ~xrlf ߈ ۈ ؈ Ԉ ψ ̈ Ȉ   ~ } | { z y w r p o n l j i h g e d c b ` ^ ~] z\ o[ nX iW ST IR GP CO =M ;L 4K /I .H ,G )E f j k m n p q &s 5u ;v ?w Ax Dy Kz N} S ^ f n r t x z {        ć Ƈ LJ ȇ ɇ ˇ ̇ Ї" ҇# Ӈ$ ه% އ) * + , - / 3 4 5 6 8 9 : ; < = !? "@ #B %Dr \cmf conforter qqn ou soit-même _reference_start_1 Chronicles 7:22_reference_end_ _reference_start_1 Chronicles 19:02_reference_end_ _reference_start_1 Chronicles 19:03_reference_end_ _reference_start_2 Samuel 10:02_reference_end_ _reference_start_2 Samuel 10:03_reference_end_ _reference_start_2 Samuel 12:24_reference_end_ _reference_start_2 Samuel 13:39_reference_end_ _reference_start_Genesis 5:29_reference_end_ _reference_start_Genesis 24:67_reference_end_ _reference_start_Genesis 27:42_reference_end_ _reference_start_Genesis 37:35_reference_end_ _reference_start_Genesis 38:12_reference_end_ _reference_start_Psalms 23:04_reference_end_ _reference_start_Psalms 119:052_reference_end_ _reference_start_Ruth 2:13_reference_end_ \cme have pity, companssion on \cmf avoir pitié pour qqn _reference_start_Genesis 50:21_reference_end_ _reference_start_Jude 21:06_reference_end_ _reference_start_Psalms 71:21_reference_end_ _reference_start_Psalms 90:13_reference_end_ _reference_start_Psalms 135:11_reference_end_ *G!!qrepentancerepentance\h £axOn \f répentance \cme repentance, sorrow \cmf chagrin, douleur _reference_start_Hosea 13:14_reference_end_JF##arepent (to)repent (to)\h £axAn \f repentir \cme change one's mind \cmf changer d'avis _reference_start_1 Chronicles 21:15_reference_end_ _reference_start_1 Samuel 15:11_reference_end_ _reference_start_1 Samuel 15:29_reference_end_ _reference_start_1 Samuel 15:35_reference_end_ _reference_start_2 Samuel 24:16_reference_end_ _reference_start_Exodus 13:17_reference_end_ _reference_start_Exodus 32:12_reference_end_ _reference_start_Genesis 6:06_reference_end_ _reference_start_Genesis 6:07_reference_end_ _reference_start_Jonah 3:09_reference_end_ _reference_start_Jonah 3:10_reference_end_ _reference_start_Jonah 4:02_reference_end_ _reference_start_Psalms 110:04_reference_end_ \cme comfort self or anothe + ?tfXJ<. xi[M?1#{m_QC5' } | {  z y x w v u  t  s r q p o n  m  l k j i h g f e d c  b  a  ` _ ^ ] \  [ ZZ YG XA W2 V Uw4 T S& R%# Q* PC O N ' M  L  K  J  I  H  Gn F  E  D  C B A @  ?   Hwreproofreproof\h haxakOwGt \f réprobation \cme reproof, chiding, discipline \cmf réprobation, gronderie, discipline _reference_start_Proverbs 1:23_reference_end_ _reference_start_Proverbs 3:11_reference_end_ _reference_start_Proverbs 5:12_reference_end_ _reference_start_Proverbs 6:23_reference_end_ _reference_start_Proverbs 10:17_reference_end_ _reference_start_Proverbs 12:01_reference_end_ _reference_start_Proverbs 13:18_reference_end_ _reference_start_Proverbs 15:05_reference_end_ _reference_start_Proverbs 15:10_reference_end_ _reference_start_Proverbs 15:31_reference_end_ _reference_start_Proverbs 15:32_reference_end_ _reference_start_Proverbs 27:05_reference_end_ _reference_start_Proverbs 29:01_reference_end_ _reference_start_Proverbs 29:15_reference_end_ UI%%sreprove (to)reprove (to)\h xakAy* \f réprimander \cme convict \cmf condamner _reference_start_Proverbs 30:06_reference_end_ \cme correct, discipline \cmf corriger, discipliner _reference_start_Proverbs 3:12_reference_end_ \cme reprove, chide \cmf réprimander _reference_start_Proverbs 9:07_reference_end_ _reference_start_Proverbs 9:08_reference_end_ _reference_start_Proverbs 15:12_reference_end_ _reference_start_Proverbs 19:25_reference_end_ _reference_start_Proverbs 24:25_reference_end_ _reference_start_Proverbs 25:12_reference_end_ _reference_start_Proverbs 28:23_reference_end_ 1 _reference_start_1 Kings 2:32_reference_end_ _reference_start_1 Kings 8:32_reference_end_ _reference_start_1 Samuel 24:18_reference_end_ _reference_start_2 Samuel 4:11_reference_end_ _reference_start_Exodus 23:07_reference_end_ _reference_start_Exodus 23:08_reference_end_ _reference_start_Genesis 6:09_reference_end_ _reference_start_Genesis 20:04_reference_end_ \cme right in conduct toward God \cmf moral, juste devant Dieu _reference_start_Ecclesiastes 3:17_reference_end_ _reference_start_Ecclesiastes 7:20_reference_end_ _reference_start_Ecclesiastes 9:01_reference_end_ _reference_start_Genesis 7:01_reference_end_ _reference_start_Genesis 18:23_reference_end_ _reference_start_Genesis 18:24_reference_end_ _reference_start_Genesis 18:25_reference_end_ _reference_start_Genesis 18:26_reference_end_ _reference_start_Genesis 18:28_reference_end_ _reference_start_Proverbs 2:20_reference_end_ _reference_start_Proverbs 3:33_reference_end_ _reference_start_Proverbs 4:18_reference_end_ _reference_start_Proverbs 9:0 29_reference_end_ _reference_start_Proverbs 1:21_reference_end_ _reference_start_Proverbs 10:03_reference_end_ _reference_start_Proverbs 10:06_reference_end_ _reference_start_Proverbs 10:07_reference_end_ _reference_start_Proverbs 10:11_reference_end_ _reference_start_Proverbs 10:16_reference_end_ _reference_start_Proverbs 10:20_reference_end_ _reference_start_Proverbs 10:24_reference_end_ _reference_start_Proverbs 10:25_reference_end_ _reference_start_Proverbs 10:28_reference_end_ _reference_start_Proverbs 10:30_reference_end_ _reference_start_Proverbs 10:31_reference_end_ _reference_start_Proverbs 10:32_reference_end_ _reference_start_Proverbs 11:08_reference_end_ _reference_start_Proverbs 11:09_reference_end_ _reference_start_Proverbs 11:10_reference_end_ _reference_start_Proverbs 11:21_reference_end_ _reference_start_Proverbs 11:23_reference_end_ _reference_start_Proverbs 11:28_reference_end_ _reference_start_Proverbs 11:30_reference_end_ _reference_start_Proverbs 11:31_reference_end_ _reference_start_ 3Proverbs 12:03_reference_end_ _reference_start_Proverbs 12:05_reference_end_ _reference_start_Proverbs 12:07_reference_end_ _reference_start_Proverbs 12:10_reference_end_ _reference_start_Proverbs 12:12_reference_end_ _reference_start_Proverbs 12:13_reference_end_ _reference_start_Proverbs 12:21_reference_end_ _reference_start_Proverbs 12:26_reference_end_ _reference_start_Proverbs 13:05_reference_end_ _reference_start_Proverbs 13:09_reference_end_ _reference_start_Proverbs 13:21_reference_end_ _reference_start_Proverbs 13:22_reference_end_ _reference_start_Proverbs 13:25_reference_end_ _reference_start_Proverbs 14:19_reference_end_ _reference_start_Proverbs 14:32_reference_end_ _reference_start_Proverbs 15:06_reference_end_ _reference_start_Proverbs 15:28_reference_end_ _reference_start_Proverbs 15:29_reference_end_ _reference_start_Proverbs 18:10_reference_end_ _reference_start_Proverbs 20:07_reference_end_ _reference_start_Proverbs 21:12_reference_end_ _reference_start_Proverbs 21:15_reference_end_ _reference_start_Proverbs 21:18_reference_end_ _reference_start_Proverbs 21:26_reference_end_ _reference_start_Proverbs 23:24_reference_end_ _reference_start_Proverbs 24:15_reference_end_ _reference_start_Proverbs 24:16_reference_end_ _reference_start_Proverbs 25:26_reference_end_ Pro28.01 _reference_start_Proverbs 28:12_reference_end_ _reference_start_Proverbs 28:28_reference_end_ _reference_start_Proverbs 29:06_reference_end_ _reference_start_Proverbs 29:07_reference_end_ _reference_start_Proverbs 29:16_reference_end_ _reference_start_Proverbs 29:27_reference_end_ _reference_start_Psalms 32:11_reference_end_ _reference_start_Psalms 34:16_reference_end_ _reference_start_Psalms 142:08_reference_end_ \cme vindicated by God \cmf justifié par Dieu _reference_start_Psalms 1:05_reference_end_ _reference_start_Psalms 1:06_reference_end_ _reference_start_Psalms 33:01_reference_end_ _reference_start_Psalms 34:20_reference_end_ _reference_start_Psalms 34:22_reference_end_ _reference_start_Psalms 52:08_reference_end_ SK''Orighteousnessrighteousness\h hAqødic / hAqAdøc \f justice, droiture \cme acting in a right 7Jrighteousrighteous\h qyGidac \f juste \cme be right, just \cmf avoir raison, être juste _reference_start_Daniel 9:14_reference_end_ _reference_start_Exodus 9:27_reference_end_ _reference_start_Proverbs 17:15_reference_end_ _reference_start_Proverbs 17:26_reference_end_ _reference_start_Proverbs 18:05_reference_end_ _reference_start_Proverbs 18:17_reference_end_ _reference_start_Proverbs 24:24_reference_end_ \cme justice, good government \cmf justifice, gouverner avec droiture _reference_start_2 Samuel 23:03_reference_end_ _reference_start_Proverbs 25:26_reference_end_ _reference_start_Proverbs 29:02_reference_end_ \cme moral integrity \cmf intégrité morale 0 ?tfXJ<. xj\N@2$|n`RD6( < ; : 9 8 7 6 5 4  3  2  1 0  /  .  - , + *  )  (  '  &  %  $  #  " !                            !                      ~  ?tfXJ<.wi[M?1#{m_QC5' {  z  y  xwy w v  u t s r# q  p o n m l$ k  j iG h3 g  f e$ d c b aj `" _  ^ ] \! [ Z Y  X  W  V  U  T  S  R4 Q" P" O! N M L K" J I H G F E D C B A @ ? > = 8way, ethically right \cmf action juste, moralement _reference_start_1 Kings 3:06_reference_end_ _reference_start_1 Kings 8:32_reference_end_ _reference_start_1 Samuel 26:23_reference_end_ _reference_start_2 Samuel 22:21_reference_end_ _reference_start_2 Samuel 22:25_reference_end_ _reference_start_Daniel 9:07_reference_end_ _reference_start_Daniel 9:18_reference_end_ _reference_start_Genesis 15:06_reference_end_ _reference_start_Genesis 18:19_reference_end_ _reference_start_Genesis 30:33_reference_end_ _reference_start_Isaiah 1:27_reference_end_ _reference_start_Isaiah 5:16_reference_end_ _reference_start_Proverbs 11:18_reference_end_ _reference_start_Proverbs 14:34_reference_end_ _reference_start_Psalms 106:03_reference_end_ \cme consider, declare righteous \cmf considérer, déclarer juste _reference_start_Joel 2:23_reference_end_ _reference_start_Proverbs 8:18_reference_end_ _reference_start_Psalms 24:05_reference_end_ _reference_start_Psalms 36:11_reference_end_ \cme govern justly, justice \cmf gouver 9ner avec justice _reference_start_1 Kings 10:09_reference_end_ _reference_start_2 Samuel 8:15_reference_end_ _reference_start_Psalms 51:15_reference_end_ _reference_start_Psalms 71:02_reference_end_ \cme governing justly \cmf gouverner avec justice _reference_start_Ecclesiastes 5:07_reference_end_ _reference_start_Isaiah 11:04_reference_end_ _reference_start_Job 36:03_reference_end_ _reference_start_Leviticus 19:15_reference_end_ _reference_start_Proverbs 8:15_reference_end_ _reference_start_Proverbs 25:03_reference_end_ _reference_start_Proverbs 31:09_reference_end_ \cme morally right \cmf moralement _reference_start_Daniel 9:24_reference_end_ _reference_start_Job 35:02_reference_end_ _reference_start_Proverbs 1:03_reference_end_ _reference_start_Proverbs 2:09_reference_end_ _reference_start_Proverbs 8:08_reference_end_ _reference_start_Proverbs 12:17_reference_end_ _reference_start_Proverbs 16:13_reference_end_ _reference_start_Psalms 119:121_reference_end_ \cme right, what is owed \cmf droit, ce qui est du _reference_start_2 Samuel 19:29_reference_end_ \cme righteous acts \cmf des actes justes _reference_start_1 Samuel 12:07_reference_end_ _reference_start_Daniel 9:16_reference_end_ _reference_start_Isaiah 64:05_reference_end_ _reference_start_Jude 5:11_reference_end_ _reference_start_Psalms 71:15_reference_end_ _reference_start_Psalms 71:16_reference_end_ _reference_start_Psalms 71:19_reference_end_ _reference_start_Psalms 71:24_reference_end_ \cme rightness in a cause \cmf une cause juste _reference_start_Job 6:29_reference_end_ _reference_start_Psalms 35:27_reference_end_ \cme vindication \cmf justification _reference_start_Isaiah 62:01_reference_end_ _reference_start_Psalms 40:10_reference_end_ _reference_start_Psalms 132:09_reference_end_ \cme what is right, just \cmf ce qui est juste _reference_start_Job 31:06_reference_end_ _reference_start_Psalms 4:06_reference_end_ _reference_start_Psalms 23:03_reference_end_ ?teWI;-wi[M?1#{m_QC5' :  9  8 ( 7  66 5a 4/ 3  2 1 0 /  .  -  ,  +  * ( ) ( ' & % " $ #  " !  G G 3 "         %     & R    ,    3      ( > #  G G G ~G }A |@ oo L++Wrighteous, justrighteous, just\h qadAc \f juste \cme be just \cmf être juste _reference_start_Psalms 19:10_reference_end_ _reference_start_Psalms 51:06_reference_end_ \cme declare righteous, justify \cmf declarer juste, justifieé _reference_start_Daniel 12:03_reference_end_ _reference_start_Exodus 23:07_reference_end_ _reference_start_Genesis 44:16_reference_end_ _reference_start_Proverbs 17:15_reference_end_ \cme do justice \cmf faire la justice _reference_start_2 Samuel 15:04_reference_end_ _reference_start_Psalms 82:03_reference_end_ \cme havae a juste cause \cmf avoire une cause juste _reference_start_Genesis 38:26_reference_end_n et soir _reference_start_Daniel 8:11_reference_end_ _reference_start_Daniel 8:12_reference_end_ _reference_start_Daniel 8:13_reference_end_ _reference_start_Daniel 11:31_reference_end_ _reference_start_Daniel 12:11_reference_end_ _reference_start_Nehemiah 10:34_reference_end_ _reference_start_Numbers 28:03_reference_end_ _reference_start_Numbers 28:06_reference_end_ _reference_start_Numbers 28:10_reference_end_ _reference_start_Numbers 28:15_reference_end_ \cme regular repetition of something \cmf qui arrive continuellement, répétition regulière _reference_start_1 Chronicles 16:40_reference_end_ _reference_start_1 Chronicles 23:31_reference_end_ _reference_start_2 Kings 4:19_reference_end_ _reference_start_2 Kings 25:29_reference_end_ _reference_start_2 Kings 25:30_reference_end_ _reference_start_2 Samuel 9:07_reference_end_ _reference_start_2 Samuel 9:10_reference_end_ _reference_start_2 Samuel 9:13_reference_end_ _reference_start_Ezra 3:05_reference_end_ _reference_start_Numbers 9:16_reference_end_ iM''sacrifice (a)sacrifice (a)\h dyimAGt \f sacrifice \cme (offering given) continually, without interruption \cmf (donné) continuellement, sans interruption _reference_start_1 Chronicles 16:06_reference_end_ _reference_start_1 Chronicles 16:11_reference_end_ _reference_start_1 Chronicles 16:37_reference_end_ _reference_start_1 Kings 10:08_reference_end_ _reference_start_Deuteronomy 11:12_reference_end_ _reference_start_Exodus 25:30_reference_end_ _reference_start_Exodus 27:20_reference_end_ _reference_start_Leviticus 6:06_reference_end_ _reference_start_Numbers 4:07_reference_end_ _reference_start_Psalms 34:02_reference_end_ _reference_start_Psalms 51:05_reference_end_ _reference_start_Psalms 71:06_reference_end_ _reference_start_Psalms 71:14_reference_end_ \cme daily burnt/whole offerings to God, morning and evening \cmf haulocauste quotidien à Dieu, mati < ?cmf tuer et brûler un animal comme sacrifice - haulocauste _reference_start_1 Chronicles 16:02_reference_end_ _reference_start_1 Chronicles 16:40_reference_end_ _reference_start_1 Chronicles 21:24_reference_end_ _reference_start_1 Chronicles 21:26_reference_end_ _reference_start_1 Chronicles 23:31_reference_end_ _reference_start_1 Chronicles 29:21_reference_end_ _reference_start_1 Kings 3:04_reference_end_ _reference_start_1 Kings 3:15_reference_end_ _reference_start_1 Kings 9:25_reference_end_ _reference_start_1 Samuel 6:14_reference_end_ _reference_start_1 Samuel 6:15_reference_end_ _reference_start_1 Samuel 7:09_reference_end_ _reference_start_1 Samuel 7:10_reference_end_ _reference_start_1 Samuel 10:08_reference_end_ _reference_start_1 Samuel 13:09_reference_end_ _reference_start_1 Samuel 13:10_reference_end_ _reference_start_1 Samuel 13:12_reference_end_ _reference_start_1 Samuel 28:15_reference_end_ _reference_start_2 Samuel 6:17_reference_end_ _reference_start_2 Samuel 6:18_reference_end_ _referen @ce_start_2 Samuel 24:22_reference_end_ _reference_start_2 Samuel 24:24_reference_end_ _reference_start_2 Samuel 24:25_reference_end_ _reference_start_Exodus 18:12_reference_end_ _reference_start_Exodus 20:24_reference_end_ _reference_start_Exodus 24:05_reference_end_ _reference_start_Genesis 8:20_reference_end_ _reference_start_Genesis 22:02_reference_end_ _reference_start_Genesis 22:03_reference_end_ _reference_start_Genesis 22:06_reference_end_ _reference_start_Genesis 22:07_reference_end_ _reference_start_Genesis 22:08_reference_end_ _reference_start_Genesis 22:13_reference_end_ _reference_start_Leviticus 2:12_reference_end_ \cme kill animal for eating \cmf touer un animal pour le manger _reference_start_1 Kings 19:21_reference_end_ _reference_start_1 Samuel 28:24_reference_end_ _reference_start_Deuteronomy 12:15_reference_end_ \cme kill animal, burn a part as sacrifice to God or gods, eat the rest - peace \cmf touer un animal, brûler une part à Dieu ou aux dieux, manger le reste - paix _reference_st Aart_1 Chronicles 15:26_reference_end_ _reference_start_1 Chronicles 21:28_reference_end_ _reference_start_1 Chronicles 29:21_reference_end_ _reference_start_1 Kings 1:09_reference_end_ _reference_start_1 Kings 1:19_reference_end_ _reference_start_1 Kings 1:25_reference_end_ _reference_start_1 Kings 3:02_reference_end_ _reference_start_1 Kings 3:03_reference_end_ _reference_start_1 Kings 3:04_reference_end_ _reference_start_1 Kings 8:05_reference_end_ _reference_start_1 Kings 8:62_reference_end_ _reference_start_1 Kings 8:63_reference_end_ _reference_start_1 Kings 11:08_reference_end_ _reference_start_1 Kings 12:32_reference_end_ _reference_start_1 Kings 22:44_reference_end_ _reference_start_1 Samuel 1:03_reference_end_ _reference_start_1 Samuel 1:04_reference_end_ _reference_start_1 Samuel 1:21_reference_end_ _reference_start_1 Samuel 2:13_reference_end_ _reference_start_1 Samuel 2:15_reference_end_ _reference_start_1 Samuel 2:19_reference_end_ _reference_start_1 Samuel 6:15_reference_end_ _reference_star Bt_1 Samuel 10:08_reference_end_ _reference_start_1 Samuel 11:15_reference_end_ _reference_start_1 Samuel 15:15_reference_end_ 1Sa15.21 _reference_start_1 Samuel 16:02_reference_end_ _reference_start_1 Samuel 16:05_reference_end_ _reference_start_2 Chronicles 7:04_reference_end_ _reference_start_2 Chronicles 7:05_reference_end_ _reference_start_2 Samuel 6:13_reference_end_ _reference_start_2 Samuel 15:12_reference_end_ _reference_start_Deuteronomy 18:03_reference_end_ _reference_start_Exodus 3:18_reference_end_ _reference_start_Exodus 5:03_reference_end_ _reference_start_Exodus 5:08_reference_end_ _reference_start_Exodus 5:17_reference_end_ _reference_start_Exodus 8:04_reference_end_ _reference_start_Exodus 8:21_reference_end_ _reference_start_Exodus 8:22_reference_end_ _reference_start_Exodus 8:23_reference_end_ _reference_start_Exodus 8:24_reference_end_ _reference_start_Exodus 8:25_reference_end_ _reference_start_Exodus 13:15_reference_end_ _reference_start_Exodus 13:15_reference_end_ _reference_start_Exodus 20:24_reference_end_ _reference_start_Exodus 22:19_reference_end_ _reference_start_Exodus 23:18_reference_end_ _reference_start_Exodus 24:05_reference_end_ _reference_start_Genesis 46:01_reference_end_ _reference_start_Jonah 1:16_reference_end_ _reference_start_Jonah 2:10_reference_end_ _reference_start_Joshua 8:31_reference_end_ _reference_start_Psalms 54:08_reference_end_ \cme kill children or person as sacrifice to gods \cmf tuer des enfents ou un adult comme haulocaute aux diex _reference_start_1 Kings 13:02_reference_end_ _reference_start_2 Kings 23:20_reference_end_ _reference_start_Ezekiel 16:20_reference_end_ _reference_start_Psalms 106:37_reference_end_ \cme offer, pour out (a sacrifice) \cmf offrir, verser un sacrifice _reference_start_1 Chronicles 11:18_reference_end_ _reference_start_2 Samuel 23:16_reference_end_ _reference_start_Daniel 2:46_reference_end_ _reference_start_Exodus 30:09_reference_end_ _reference_start_Genesis 35:14_reference_end_ _reference_start_Hosea 9:04_reference_end_ nQnWOsalvationsalvation\h hAvûHÌy \f salut \cme deliverance \cmf délivrance _reference_start_2 Samuel 10:11_reference_end_ \cme physical and spiritual \cmf physique et spirituel _reference_start_1 Chronicles 16:23_reference_end_ _reference_start_1 Samuel 2:01_reference_end_ _reference_start_Deuteronomy 32:15_reference_end_ _reference_start_Genesis 49:18_reference_end_ _reference_start_Jonah 2:10_reference_end_ _reference_start_Psalms 3:03_reference_end_ _referenc FN))gsacrifice (to)sacrifice (to)\h hAlAv \f sacrifice \cme exalt, praise \cmf exalter, louer _reference_start_Psalms 47:10_reference_end_ _reference_start_Psalms 97:09_reference_end_ \cme kill & eat an animal to make covenant between people \cmf tuer et manger un animal = une alliance entre personnes _reference_start_Genesis 31:54_reference_end_ \cme kill and burn an animal as a sacrifice - whole/burnt offerings \ > ?tfXJ<. xj\N@2$|n`RD6( y  x w v  u  t  s  r  q  p  o  n  m  l  k  j , i h  g ? f > e  d  c  b  a  `  _  ^  ]  \  [  Z  Y  X W V U T S R Q P O N M  L  K  J  I  H  G F E D  C  B  A  @  ?  >  =  <  ;  ?tfXJ<. xj\N@2$|n`RD6( 8  7  6  5 4 3 2 1 0 / 3 . - - , +  * $ )E (3 ' &- % / $  # # "5 !   1          #  .     j%      6      .                ~ } | { z  e_start_Psalms 53:07_reference_end_ \cme physical and spiritual rescue \cmf sauvetage physique et spirituel _reference_start_1 Chronicles 16:35_reference_end_ _reference_start_2 Samuel 22:03_reference_end_ _reference_start_2 Samuel 22:47_reference_end_ _reference_start_Isaiah 45:08_reference_end_ _reference_start_Psalms 24:05_reference_end_ _reference_start_Psalms 51:14_reference_end_ _reference_start_Psalms 69:14_reference_end_ \cme safety, prosperity \cmf sécurité, prospérité _reference_start_2 Samuel 22:36_reference_end_ _reference_start_2 Samuel 23:05_reference_end_ _reference_start_Job 5:04_reference_end_ \cme security, prosperity \cmf sécurité, prospérité _reference_start_Job 30:15_reference_end_ \cme victory \cmf victoire _reference_start_1 Samuel 14:45_reference_end_ _reference_start_2 Samuel 22:51_reference_end_ _reference_start_Exodus 14:13_reference_end_ _reference_start_Exodus 15:02_reference_end_ _reference_start_Isaiah 26:18_reference_end_ _reference_start_Psalms 28:08_reference_end_ ^Psanctuarysanctuary\h HßÐdÙqim \f sanctuaire \cme holy place in Israel \cmf lieu saint en Israël _reference_start_Exodus 15:17_reference_end_ \cme place of worship of God or gods \cmf lieu d'adoration de Dieu ou des dieux _reference_start_Daniel 8:11_reference_end_ _reference_start_Daniel 9:17_reference_end_ _reference_start_Daniel 11:31_reference_end_ \cme temple precinct \cmf le temple et ses environs _reference_start_1 Chronicles 22:19_reference_end_ _reference_start_Exodus 25:08_reference_end_ _reference_start_Numbers 10:21_reference_end_ _reference_start_Psalms 74:07_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( w  v u t $ s r  q  p o  n  m  lA k  j  i  h / g ' f  e  d  c  b  aG `G _; ^9 ]6 \" [" Z Y X WA V U T S * R  Q  P  O  N  M  L  K  J  I  H  G # F3 E' D& C& B A  @ ?  >  =  <  ;J :  9  Rsave (to)save (to)\h lacAn. \f sauver \cme deliver from sin \cmf délivrer du péché _reference_start_Psalms 39:09_reference_end_ _reference_start_Psalms 51:16_reference_end_ \cme deliver, free \cmf délivrer, libèrer _reference_start_1 Chronicles 16:35_reference_end_ _reference_start_1 Samuel 4:03_reference_end_ _reference_start_1 Samuel 7:08_reference_end_ _reference_start_1 Samuel 9:16_reference_end_ _reference_start_1 Sa J Q%satansatan\h €AXAW \f Satan \cme adversary, enemy \cmf adversaire, énemie _reference_start_1 Kings 5:18_reference_end_ _reference_start_1 Kings 11:14_reference_end_ _reference_start_1 Samuel 29:04_reference_end_ _reference_start_2 Samuel 19:23_reference_end_ _reference_start_Numbers 22:22_reference_end_ \cme satan, his name \cmf satan, son nom _reference_start_1 Chronicles 21:01_reference_end_ _reference_start_Job 1:06_reference_end_ _reference_start_Zechariah 3:01_reference_end_ _reference_start_Zechariah 3:02_reference_end_ Kmuel 10:27_reference_end_ _reference_start_1 Samuel 23:02_reference_end_ _reference_start_1 Samuel 23:05_reference_end_ _reference_start_2 Samuel 3:18_reference_end_ _reference_start_2 Samuel 22:03_reference_end_ _reference_start_2 Samuel 22:03_reference_end_ _reference_start_2 Samuel 22:04_reference_end_ _reference_start_2 Samuel 22:28_reference_end_ _reference_start_2 Samuel 22:42_reference_end_ _reference_start_Exodus 2:17_reference_end_ _reference_start_Exodus 14:30_reference_end_ _reference_start_Joshua 22:22_reference_end_ _reference_start_Jude 6:31_reference_end_ _reference_start_Psalms 20:07_reference_end_ _reference_start_Psalms 28:09_reference_end_ _reference_start_Psalms 3:08_reference_end_ _reference_start_Psalms 34:07_reference_end_ _reference_start_Psalms 34:19_reference_end_ _reference_start_Psalms 54:01_reference_end_ _reference_start_Psalms 57:04_reference_end_ _reference_start_Psalms 59:03_reference_end_ _reference_start_Psalms 71:02_reference_end_ _reference_start_Psalms 71:03_reference L_end_ \cme give victory to \cmf donner la victoire _reference_start_1 Chronicles 11:14_reference_end_ _reference_start_1 Chronicles 18:06_reference_end_ _reference_start_1 Chronicles 18:13_reference_end_ _reference_start_1 Samuel 14:06_reference_end_ _reference_start_1 Samuel 14:23_reference_end_ _reference_start_1 Samuel 14:39_reference_end_ _reference_start_1 Samuel 17:47_reference_end_ _reference_start_1 Samuel 25:26_reference_end_ _reference_start_2 Samuel 8:06_reference_end_ _reference_start_2 Samuel 8:14_reference_end_ _reference_start_Jude 7:02_reference_end_ \cme help \cmf aider _reference_start_1 Chronicles 19:19_reference_end_ _reference_start_1 Samuel 10:19_reference_end_ _reference_start_1 Samuel 11:03_reference_end_ _reference_start_2 Samuel 10:11_reference_end_ _reference_start_2 Samuel 10:19_reference_end_ _reference_start_2 Samuel 14:04_reference_end_ \cme pillage, take away \cmf dépouiller, enlever _reference_start_Exodus 3:22_reference_end_ _reference_start_Exodus 12:36_reference_end_ _ Mreference_start_Genesis 31:09_reference_end_ _reference_start_Genesis 31:16_reference_end_ \cme rescue, recover \cmf rescater, recouperer _reference_start_1 Samuel 4:08_reference_end_ _reference_start_1 Samuel 7:03_reference_end_ _reference_start_1 Samuel 7:14_reference_end_ _reference_start_1 Samuel 10:18_reference_end_ _reference_start_1 Samuel 12:11_reference_end_ _reference_start_1 Samuel 14:48_reference_end_ _reference_start_1 Samuel 17:35_reference_end_ _reference_start_1 Samuel 17:37_reference_end_ _reference_start_1 Samuel 30:08_reference_end_ _reference_start_1 Samuel 30:18_reference_end_ _reference_start_1 Samuel 30:22_reference_end_ _reference_start_2 Samuel 12:07_reference_end_ _reference_start_2 Samuel 22:18_reference_end_ _reference_start_2 Samuel 22:49_reference_end_ _reference_start_2 Samuel 23:12_reference_end_ _reference_start_Daniel 8:04_reference_end_ _reference_start_Exodus 3:08_reference_end_ _reference_start_Exodus 18:09_reference_end_ _reference_start_Genesis 37:21_reference_end_ _ Nreference_start_Genesis 37:22_reference_end_ _reference_start_Psalms 59:03_reference_end_ _reference_start_Psalms 71:02_reference_end_ _reference_start_Psalms 71:11_reference_end_ _reference_start_Psalms 142:07_reference_end_ \cme restore to life \cmf redonner la vie _reference_start_1 Samuel 2:06_reference_end_ _reference_start_Deuteronomy 32:39_reference_end_ _reference_start_Psalms 30:04_reference_end_ _reference_start_Psalms 71:20_reference_end_ \cme save life, let live \cmf sauver la vie, laisser en vie _reference_start_1 Kings 18:05_reference_end_ _reference_start_1 Kings 20:13_reference_end_ _reference_start_1 Samuel 27:09_reference_end_ _reference_start_1 Samuel 27:11_reference_end_ _reference_start_2 Samuel 8:02_reference_end_ _reference_start_Exodus 1:17_reference_end_ _reference_start_Exodus 1:18_reference_end_ _reference_start_Exodus 1:22_reference_end_ _reference_start_Exodus 22:17_reference_end_ _reference_start_Genesis 6:19_reference_end_ _reference_start_Genesis 6:20_reference_end_ _refere Once_start_Genesis 7:03_reference_end_ _reference_start_Genesis 12:12_reference_end_ _reference_start_Genesis 19:19_reference_end_ _reference_start_Genesis 45:07_reference_end_ _reference_start_Genesis 47:25_reference_end_ _reference_start_Genesis 50:20_reference_end_ _reference_start_Genesis 50:20_reference_end_ \cme save oneself, escape \cmf se sauver, se délivrer _reference_start_2 Kings 19:12_reference_end_ _reference_start_2 Samuel 20:06_reference_end_ _reference_start_Deuteronomy 23:15_reference_end_ _reference_start_Proverbs 6:03_reference_end_ \cme save, deliver (or be saved) \cmf sauver, délivrer (ou être sauver) _reference_start_1 Chronicles 16:35_reference_end_ _reference_start_1 Samuel 12:10_reference_end_ _reference_start_1 Samuel 12:21_reference_end_ _reference_start_1 Samuel 26:24_reference_end_ _reference_start_2 Samuel 14:16_reference_end_ _reference_start_2 Samuel 19:10_reference_end_ _reference_start_2 Samuel 22:01_reference_end_ _reference_start_Daniel 8:07_reference_end_ _reference_start_Exodus 2:19_reference_end_ _reference_start_Exodus 5:23_reference_end_ _reference_start_Exodus 6:06_reference_end_ _reference_start_Exodus 12:27_reference_end_ _reference_start_Exodus 18:04_reference_end_ _reference_start_Exodus 18:08_reference_end_ _reference_start_Exodus 18:10_reference_end_ _reference_start_Genesis 32:12_reference_end_ _reference_start_Genesis 32:31_reference_end_ _reference_start_Jonah 4:06_reference_end_ _reference_start_Proverbs 19:19_reference_end_ _reference_start_Psalms 34:05_reference_end_ _reference_start_Psalms 34:18_reference_end_ _reference_start_Psalms 34:20_reference_end_ _reference_start_Psalms 54:09_reference_end_ _reference_start_Psalms 56:14_reference_end_ _reference_start_Psalms 69:15_reference_end_ \cme separate \cmf séparer _reference_start_2 Samuel 14:06_reference_end_ \cme take vengence on someone \cmf se venger de qqn _reference_start_1 Samuel 25:31_reference_end_ _reference_start_1 Samuel 25:33_reference_end_ _reference_start_Proverbs 20:22_reference_end_ ?tfXJ<. wi[M?1#{m_QC5' 6 5 4  3 2 1 0 /  .  -  ,  +  * ) # ( ' &  %  $2 #2 "/ !-                    G   '    G G ; % %       1           ~ % } # | 0 { z  y  x  ?tfXJ<. xj\N@2$|n`RD6( u  t  s  r  q  p ) o ' n  m  l  k  j  i  h : g $ f " e  d  c  b  a  `  _  ^  ] & \ 3 [  Z  Y  X W V U T S R Q P O N M L  K J  I  H" G" F E D ! C  B  AE @8 ?6 >" =" <" ; :  9  8 7 i méprise _reference_start_Proverbs 1:22_reference_end_ _reference_start_Proverbs 3:34_reference_end_ _reference_start_Proverbs 3:34_reference_end_ _reference_start_Proverbs 9:07_reference_end_ _reference_start_Proverbs 9:08_reference_end_ _reference_start_Proverbs 9:12_reference_end_ _reference_start_Proverbs 13:01_reference_end_ _reference_start_Proverbs 14:06_reference_end_ _reference_start_Proverbs 14:09_reference_end_ _reference_start_Proverbs 15:12_reference_end_ _reference_start_Proverbs 19:25_reference_end_ _reference_start_Proverbs 19:28_reference_end_ _reference_start_Proverbs 19:29_reference_end_ _reference_start_Proverbs 20:01_reference_end_ _reference_start_Proverbs 21:11_reference_end_ _reference_start_Proverbs 21:24_reference_end_ _reference_start_Proverbs 22:10_reference_end_ _reference_start_Proverbs 24:09_reference_end_ _reference_start_Proverbs 29:08_reference_end_ 0T;servantservant\h debev \f serviteur, esclave \cme polite address to equals or superiors \cmf politesse envers des superieurs et les egaux _reference_start_1 Chronicles 17:1_reference_end_ _reference_start_1 Chronicles 21:08_reference_end_ _reference_start_1 Kings 1:26_reference_end_ _reference_start_1 Kings 1:51_reference_end_ _reference_start_1 Kings 2:38_reference_end_ _reference_start_1 Kings 3:07_reference_end_ _reference_start_1 Kings 3:08_reference_end_ _reference_start_1 Kings 3:09_reference_end_ _reference_start_1 Kings 8:28_reference_end_ _reference_start_1 Kings 8:29_reference_end_ _reference_start_1 Kings 8:30_reference_end_ _reference_start_1 Samuel 12:19_reference_end_ _reference_start_1 Samuel 17:32_reference_end_ _reference_start_1 Samuel 17:34_reference_end_ _reference_start_1 Samuel 17:36_reference_end_ _reference_start_1 Samuel 17:58_r ThS5scornscorn\h €OwcAl / cyil \f mépris \cme to scorn, one who scornes \cmf mépriser, qqn qu R Ueference_end_ _reference_start_1 Samuel 20:07_reference_end_ _reference_start_1 Samuel 20:08_reference_end_ _reference_start_1 Samuel 22:15_reference_end_ _reference_start_1 Samuel 23:10_reference_end_ _reference_start_1 Samuel 23:11_reference_end_ _reference_start_1 Samuel 25:08_reference_end_ _reference_start_1 Samuel 25:39_reference_end_ _reference_start_1 Samuel 25:41_reference_end_ _reference_start_1 Samuel 26:18_reference_end_ _reference_start_1 Samuel 26:19_reference_end_ _reference_start_1 Samuel 27:05_reference_end_ _reference_start_1 Samuel 28:02_reference_end_ _reference_start_1 Samuel 29:08_reference_end_ _reference_start_2 Samuel 7:19_reference_end_ _reference_start_2 Samuel 7:20_reference_end_ _reference_start_2 Samuel 7:21_reference_end_ _reference_start_2 Samuel 7:25_reference_end_ _reference_start_2 Samuel 7:27_reference_end_ _reference_start_2 Samuel 7:29_reference_end_ _reference_start_2 Samuel 9:02_reference_end_ _reference_start_2 Samuel 9:06_reference_end_ _reference_start_2 Samuel 9 V:08_reference_end_ _reference_start_2 Samuel 9:11_reference_end_ _reference_start_2 Samuel 13:24_reference_end_ _reference_start_2 Samuel 13:35_reference_end_ _reference_start_2 Samuel 14:22_reference_end_ _reference_start_2 Samuel 15:02_reference_end_ _reference_start_2 Samuel 15:08_reference_end_ _reference_start_2 Samuel 15:15_reference_end_ _reference_start_2 Samuel 15:21_reference_end_ _reference_start_2 Samuel 18:29_reference_end_ _reference_start_2 Samuel 19:20_reference_end_ _reference_start_2 Samuel 19:21_reference_end_ _reference_start_2 Samuel 19:27_reference_end_ _reference_start_2 Samuel 19:28_reference_end_ _reference_start_2 Samuel 19:29_reference_end_ _reference_start_2 Samuel 19:36_reference_end_ _reference_start_2 Samuel 19:37_reference_end_ _reference_start_2 Samuel 19:38_reference_end_ _reference_start_2 Samuel 24:21_reference_end_ _reference_start_Daniel 1:12_reference_end_ _reference_start_Daniel 1:13_reference_end_ _reference_start_Daniel 2:04_reference_end_ _reference_start_Daniel W2:07_reference_end_ _reference_start_Daniel 9:17_reference_end_ _reference_start_Daniel 10:17_reference_end_ _reference_start_Exodus 4:10_reference_end_ _reference_start_Genesis 18:03_reference_end_ _reference_start_Genesis 18:05_reference_end_ _reference_start_Genesis 19:02_reference_end_ _reference_start_Genesis 19:19_reference_end_ _reference_start_Genesis 32:05_reference_end_ _reference_start_Genesis 32:11_reference_end_ _reference_start_Genesis 32:19_reference_end_ _reference_start_Genesis 32:21_reference_end_ _reference_start_Genesis 33:05_reference_end_ _reference_start_Genesis 33:14_reference_end_ _reference_start_Genesis 42:10_reference_end_ _reference_start_Genesis 42:11_reference_end_ _reference_start_Genesis 42:13_reference_end_ _reference_start_Genesis 43:28_reference_end_ _reference_start_Genesis 44:1_reference_end_ _reference_start_Genesis 46:34_reference_end_ _reference_start_Genesis 47:03_reference_end_ _reference_start_Genesis 47:04_reference_end_ _reference_start_Numbers 11:11_reference X_end_ _reference_start_Psalms 19:12_reference_end_ _reference_start_Psalms 19:14_reference_end_ \cme prophet of God \cmf prophète de Dieu _reference_start_1 Chronicles 17:04_reference_end_ _reference_start_1 Chronicles 17:07_reference_end_ _reference_start_1 Kings 3:06_reference_end_ _reference_start_1 Kings 8:24_reference_end_ _reference_start_1 Kings 8:26_reference_end_ _reference_start_1 Kings 8:66_reference_end_ _reference_start_1 Kings 825:1_reference_end_ _reference_start_1 Kings 11:13_reference_end_ _reference_start_1 Kings 11:32_reference_end_ _reference_start_1 Kings 11:34_reference_end_ _reference_start_1 Kings 11:36_reference_end_ _reference_start_1 Kings 11:38_reference_end_ _reference_start_2 Kings 9:07_reference_end_ _reference_start_Daniel 9:06_reference_end_ _reference_start_Daniel 9:10_reference_end_ _reference_start_Isaiah 20:03_reference_end_ _reference_start_Psalms 144:10_reference_end_ \cme servant to royalty, minister \cmf serviteur du roi, haut fonctionnaire _reference_start_1 King Ys 1:02_reference_end_ _reference_start_1 Kings 1:09_reference_end_ _reference_start_1 Kings 1:19_reference_end_ _reference_start_1 Kings 1:26_reference_end_ _reference_start_1 Kings 1:27_reference_end_ _reference_start_1 Kings 1:33_reference_end_ _reference_start_1 Kings 1:47_reference_end_ _reference_start_1 Kings 5:15_reference_end_ _reference_start_1 Kings 10:08_reference_end_ _reference_start_1 Kings 10:13_reference_end_ _reference_start_1 Kings 11:11_reference_end_ _reference_start_1 Samuel 16:15_reference_end_ _reference_start_1 Samuel 16:16_reference_end_ _reference_start_1 Samuel 16:17_reference_end_ _reference_start_1 Samuel 18:05_reference_end_ _reference_start_1 Samuel 18:22_reference_end_ _reference_start_1 Samuel 18:23_reference_end_ _reference_start_1 Samuel 18:24_reference_end_ _reference_start_1 Samuel 19:01_reference_end_ _reference_start_1 Samuel 1:1_reference_end_ _reference_start_1 Samuel 21:08_reference_end_ _reference_start_1 Samuel 21:12_reference_end_ _reference_start_1 Samuel 21:1 Z5_reference_end_ _reference_start_1 Samuel 22:14_reference_end_ _reference_start_1 Samuel 25:41_reference_end_ _reference_start_1 Samuel 28:07_reference_end_ _reference_start_1 Samuel 28:23_reference_end_ _reference_start_1 Samuel 28:25_reference_end_ _reference_start_2 Samuel 3:38_reference_end_ _reference_start_2 Samuel 8:07_reference_end_ _reference_start_2 Samuel 10:02_reference_end_ _reference_start_2 Samuel 10:03_reference_end_ _reference_start_2 Samuel 10:04_reference_end_ _reference_start_2 Samuel 11:09_reference_end_ _reference_start_2 Samuel 11:13_reference_end_ _reference_start_2 Samuel 12:18_reference_end_ _reference_start_2 Samuel 12:19_reference_end_ _reference_start_2 Samuel 12:21_reference_end_ _reference_start_2 Samuel 13:24_reference_end_ _reference_start_2 Samuel 13:31_reference_end_ _reference_start_2 Samuel 13:36_reference_end_ _reference_start_2 Samuel 14:19_reference_end_ _reference_start_2 Samuel 14:20_reference_end_ _reference_start_2 Samuel 15:14_reference_end_ _reference_start_2 [ Samuel 15:15_reference_end_ _reference_start_2 Samuel 15:18_reference_end_ _reference_start_2 Samuel 16:06_reference_end_ _reference_start_2 Samuel 16:11_reference_end_ _reference_start_2 Samuel 19:15_reference_end_ _reference_start_Deuteronomy 34:11_reference_end_ _reference_start_Esther 1:03_reference_end_ _reference_start_Esther 2:18_reference_end_ _reference_start_Esther 3:02_reference_end_ _reference_start_Esther 3:03_reference_end_ _reference_start_Esther 4:11_reference_end_ _reference_start_Esther 5:11_reference_end_ _reference_start_Exodus 5:21_reference_end_ _reference_start_Exodus 7:10_reference_end_ _reference_start_Exodus 7:20_reference_end_ _reference_start_Exodus 8:05_reference_end_ _reference_start_Exodus 8:17_reference_end_ _reference_start_Exodus 8:20_reference_end_ _reference_start_Exodus 9:14_reference_end_ _reference_start_Exodus 9:20_reference_end_ _reference_start_Exodus 9:30_reference_end_ _reference_start_Exodus 9:34_reference_end_ _reference_start_Exodus 10:01_reference_end_ _ref \erence_start_Exodus 10:06_reference_end_ _reference_start_Exodus 11:03_reference_end_ _reference_start_Exodus 11:08_reference_end_ _reference_start_Exodus 12:30_reference_end_ _reference_start_Exodus 14:05_reference_end_ _reference_start_Genesis 40:20_reference_end_ _reference_start_Genesis 41:10_reference_end_ _reference_start_Genesis 41:37_reference_end_ _reference_start_Genesis 41:38_reference_end_ _reference_start_Genesis 45:16_reference_end_ _reference_start_Genesis 50:07_reference_end_ \cme slave, servant \cmf esclave, serviteur _reference_start_1 Kings 2:39_reference_end_ _reference_start_1 Kings 2:40_reference_end_ _reference_start_1 Kings 9:21_reference_end_ _reference_start_1 Kings 9:22_reference_end_ _reference_start_1 Kings 10:05_reference_end_ _reference_start_1 Samuel 30:13_reference_end_ _reference_start_2 Samuel 9:02_reference_end_ _reference_start_2 Samuel 9:10_reference_end_ _reference_start_2 Samuel 9:12_reference_end_ _reference_start_2 Samuel 14:20_reference_end_ _reference_start_2 Sa ]muel 14:31_reference_end_ _reference_start_2 Samuel 19:18_reference_end_ _reference_start_2 Samuel 19:27_reference_end_ _reference_start_Deuteronomy 28:68_reference_end_ _reference_start_Ecclesiastes 2:07_reference_end_ _reference_start_Exodus 9:20_reference_end_ _reference_start_Exodus 9:21_reference_end_ _reference_start_Exodus 12:14_reference_end_ _reference_start_Exodus 12:44_reference_end_ _reference_start_Exodus 13:03_reference_end_ _reference_start_Exodus 13:14_reference_end_ _reference_start_Exodus 20:02_reference_end_ _reference_start_Exodus 20:10_reference_end_ _reference_start_Exodus 20:17_reference_end_ _reference_start_Exodus 21:02_reference_end_ _reference_start_Exodus 21:05_reference_end_ _reference_start_Exodus 21:07_reference_end_ _reference_start_Exodus 21:20_reference_end_ _reference_start_Exodus 21:26_reference_end_ _reference_start_Exodus 21:27_reference_end_ _reference_start_Exodus 21:32_reference_end_ _reference_start_Genesis 9:25_reference_end_ _reference_start_Genesis 9:25_referen ^ce_end_ _reference_start_Genesis 9:26_reference_end_ _reference_start_Genesis 9:27_reference_end_ _reference_start_Genesis 12:16_reference_end_ _reference_start_Genesis 15:13_reference_end_ _reference_start_Genesis 20:14_reference_end_ _reference_start_Genesis 24:02_reference_end_ _reference_start_Genesis 24:05_reference_end_ _reference_start_Genesis 24:09_reference_end_ _reference_start_Genesis 24:10_reference_end_ _reference_start_Genesis 24:17_reference_end_ _reference_start_Genesis 24:34_reference_end_ _reference_start_Genesis 24:35_reference_end_ _reference_start_Genesis 24:52_reference_end_ _reference_start_Genesis 24:53_reference_end_ _reference_start_Genesis 24:59_reference_end_ _reference_start_Genesis 24:61_reference_end_ _reference_start_Genesis 24:65_reference_end_ _reference_start_Genesis 24:66_reference_end_ _reference_start_Genesis 30:43_reference_end_ _reference_start_Genesis 32:06_reference_end_ _reference_start_Genesis 39:17_reference_end_ _reference_start_Genesis 39:19_reference_end_ _r _eference_start_Genesis 41:12_reference_end_ _reference_start_Genesis 43:18_reference_end_ _reference_start_Genesis 44:09_reference_end_ _reference_start_Genesis 44:10_reference_end_ _reference_start_Genesis 44:16_reference_end_ _reference_start_Genesis 44:17_reference_end_ _reference_start_Genesis 44:33_reference_end_ _reference_start_Genesis 47:19_reference_end_ _reference_start_Genesis 47:25_reference_end_ _reference_start_Genesis 50:02_reference_end_ _reference_start_Genesis 50:18_reference_end_ _reference_start_Leviticus 25:06_reference_end_ _reference_start_Leviticus 25:39_reference_end_ _reference_start_Leviticus 25:42_reference_end_ _reference_start_Leviticus 25:44_reference_end_ \cme soldiers, fighting men, followers \cmf armée, hommes de guerre, partisans _reference_start_1 Kings 9:22_reference_end_ _reference_start_1 Kings 11:26_reference_end_ _reference_start_1 Samuel 11:11_reference_end_ _reference_start_1 Samuel 17:08_reference_end_ _reference_start_1 Samuel 18:26_reference_end_ _reference_s `tart_1 Samuel 18:30_reference_end_ _reference_start_1 Samuel 22:06_reference_end_ _reference_start_1 Samuel 22:07_reference_end_ _reference_start_1 Samuel 22:09_reference_end_ _reference_start_1 Samuel 22:17_reference_end_ _reference_start_1 Samuel 25:10_reference_end_ _reference_start_1 Samuel 25:40_reference_end_ _reference_start_1 Samuel 29:03_reference_end_ _reference_start_1 Samuel 29:10_reference_end_ _reference_start_1 Samuel 35:10_reference_end_ _reference_start_2 Samuel 2:12_reference_end_ _reference_start_2 Samuel 2:13_reference_end_ _reference_start_2 Samuel 2:15_reference_end_ _reference_start_2 Samuel 2:17_reference_end_ _reference_start_2 Samuel 2:31_reference_end_ _reference_start_2 Samuel 3:22_reference_end_ _reference_start_2 Samuel 11:01_reference_end_ _reference_start_2 Samuel 11:17_reference_end_ _reference_start_2 Samuel 11:21_reference_end_ _reference_start_2 Samuel 11:24_reference_end_ _reference_start_2 Samuel 17:20_reference_end_ _reference_start_2 Samuel 18:07_reference_end_ _ref aerence_start_2 Samuel 18:09_reference_end_ _reference_start_2 Samuel 19:06_reference_end_ _reference_start_2 Samuel 19:07_reference_end_ _reference_start_2 Samuel 19:08_reference_end_ _reference_start_2 Samuel 19:29_reference_end_ _reference_start_2 Samuel 20:06_reference_end_ _reference_start_2 Samuel 21:15_reference_end_ _reference_start_2 Samuel 21:22_reference_end_ _reference_start_Genesis 14:15_reference_end_ \cme subject, citizen, vassel \cmf citoyen _reference_start_1 Chronicles 21:03_reference_end_ _reference_start_1 Kings 3:15_reference_end_ _reference_start_1 Kings 5:20_reference_end_ _reference_start_1 Kings 5:23_reference_end_ _reference_start_1 Kings 9:27_reference_end_ _reference_start_1 Samuel 17:09_reference_end_ _reference_start_1 Samuel 22:08_reference_end_ _reference_start_1 Samuel 25:10_reference_end_ _reference_start_1 Samuel 27:12_reference_end_ _reference_start_2 Samuel 6:20_reference_end_ _reference_start_2 Samuel 8:02_reference_end_ _reference_start_2 Samuel 8:06_reference_end_ _r beference_start_2 Samuel 8:14_reference_end_ _reference_start_2 Samuel 10:19_reference_end_ _reference_start_2 Samuel 15:34_reference_end_ _reference_start_Exodus 5:15_reference_end_ _reference_start_Exodus 5:16_reference_end_ _reference_start_Exodus 7:28_reference_end_ _reference_start_Exodus 7:29_reference_end_ _reference_start_Genesis 20:08_reference_end_ _reference_start_Genesis 21:25_reference_end_ _reference_start_Genesis 21:25_reference_end_ _reference_start_Genesis 26:15_reference_end_ _reference_start_Genesis 26:19_reference_end_ _reference_start_Genesis 26:32_reference_end_ _reference_start_Genesis 27:27_reference_end_ _reference_start_Genesis 32:17_reference_end_ \cme worshipers and followers of God \cmf ceux qui suivent et adorent Dieu _reference_start_1 Chronicles 16:13_reference_end_ _reference_start_1 Kings 8:23_reference_end_ _reference_start_1 Kings 8:32_reference_end_ _reference_start_1 Kings 8:36_reference_end_ _reference_start_1 Kings 8:52_reference_end_ _reference_start_1 Kings 8:53_reference_end_ _reference_start_1 Kings 8:56_reference_end_ _reference_start_1 Kings 8:59_reference_end_ _reference_start_2 Samuel 3:18_reference_end_ _reference_start_2 Samuel 7:05_reference_end_ _reference_start_2 Samuel 7:08_reference_end_ _reference_start_2 Samuel 7:26_reference_end_ _reference_start_Daniel 3:26_reference_end_ _reference_start_Daniel 3:28_reference_end_ _reference_start_Daniel 6:21_reference_end_ _reference_start_Daniel 9:11_reference_end_ _reference_start_Deuteronomy 34:05_reference_end_ _reference_start_Exodus 14:31_reference_end_ _reference_start_Genesis 24:14_reference_end_ _reference_start_Genesis 26:24_reference_end_ _reference_start_Genesis 50:17_reference_end_ _reference_start_Leviticus 25:42_reference_end_ _reference_start_Leviticus 25:42_reference_end_ _reference_start_Leviticus 25:55_reference_end_ _reference_start_Numbers 14:24_reference_end_ _reference_start_Psalms 90:16_reference_end_ _reference_start_Psalms 34:23_reference_end_ _reference_start_Psalms 90:13_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( 4 3 9 2 B 1  0  /  .  -  , + * )/ (/ '." &, %+ $* #* "* !! !                        &  %  $                        #    ~  }  |  {  z  y  x  w  v  ?seWI;-wi[M?1#{m_QC5' s r q p o" n  m  l  k  j  i  h  g  f $ e  d  c  b  a  ` _ ^  ]  \  [  Z & Y  X  W  V ) U  T  S  R  Q  P  O  N  M  L  K  J  I  H G F  E  D / C ! B  A  @  ?  >  = < ; :  9  8 & 7 $ 6 " 5 ?tfXJ<. xj\N@2$|n`RD6( 2 1 0 /  .  -  ,  +  * ) ( ' & % $ # " !      ,        D                      (  ' 2 - )& )% ) (             " ~  }  |  { z y x w v u t ?tfXJ<. xj\N@2$|n`RD6( q  p  o  n  m  l  k  j  i  h  g  f  e  d  c  b  a  ` # _  ^  ] ( \  [  Z  Y  X  W  V  U  T S  R  Q, P* O' N M2 L2 K/ J/ I,! H, G, F, E, D+ C) B' A' @  ?+ >B =A <= ;; :5 94 8# 7" 6 5 4 3 ?tfXJ<. xj\N@2$|n`RD6( 0  /  . -& ,Z +" *Z ) (7 '* &* %2 $ # " !"              ;  8  5  4  $                     "           ~  }  |  {  z  y  x  w  v  u t  s  r erence_end_ \cme where spirits go after death (literal or figurative sense) \cmf lieu des esprits après la mort (sense litéral ou sense figuré) _reference_start_1 Kings 2:06_reference_end_ _reference_start_1 Samuel 2:06_reference_end_ _reference_start_2 Samuel 22:06_reference_end_ _reference_start_Genesis 37:35_reference_end_ _reference_start_Genesis 42:38_reference_end_ _reference_start_Genesis 44:29_reference_end_ _reference_start_Jonah 2:03_reference_end_ _reference_start_Proverbs 1:12_reference_end_ _reference_start_Proverbs 5:05_reference_end_ _reference_start_Proverbs 7:25_reference_end_ _reference_start_Proverbs 9:18_reference_end_ _reference_start_Proverbs 15:11_reference_end_ _reference_start_Proverbs 15:24_reference_end_ _reference_start_Proverbs 23:14_reference_end_ _reference_start_Proverbs 27:20_reference_end_ _reference_start_Proverbs 30:16_reference_end_ _reference_start_Psalms 30:04_reference_end_ _reference_start_Psalms 88:04_reference_end_ _reference_start_Psalms 139:08_reference_end_ {{|Wasignsign\h tA' / tô' \f signe \cme indicating changes in weather \cmf indications du changment du météo _reference_star kQVshrewdshrewd\h £CwrAv \f sagasse \cme shrewd, sensible \cmf sagasse, judicieux _reference_start_Proverbs 12:16_reference_end_ _reference_start_Proverbs 12:23_reference_end_ _reference_start_Proverbs 13:08_reference_end_ _reference_start_Proverbs 13:16_reference_end_ _reference_start_Proverbs 14:15_reference_end_ _reference_start_Proverbs 14:18_reference_end_ _reference_start_Proverbs 22:03_reference_end_ _reference_start_Proverbs 27:12_reference_end_U11asheol, grave (the)sheol, grave (the)\h lô'üH \f séjour des morts \cme place where wicked go after death \cmf lieu où les pécheurs vont après la mort _reference_start_Isaiah 38:18_reference_end_ _reference_start_Job 24:19_reference_end_ _reference_start_Psalms 9:18_ref h ?tfXJ<. wi[M?1#{m_QC5' o n m l k  j i h g f e  d c  b a `  _  ^ ] \ [ Z Y X W" V. U T! S R " Q P O  N MA L  K J I H G F  E  D  C  B AX @ ? > = < ; :  9 8 7 6  5, 4*& 3%# 2  1  lt_Genesis 1:14_reference_end_ _reference_start_Jeremiah 10:02_reference_end_ _reference_start_Psalms 65:09_reference_end_ \cme memorial stones \cmf rochés mémoriales _reference_start_Exodus 13:09_reference_end_ _reference_start_Exodus 13:16_reference_end_ _reference_start_Isaiah 19:20_reference_end_ _reference_start_Numbers 17:03_reference_end_ \cme miracle or event showing God's power \cmf un miracle ou un événement qui montre le pouvoir de Dieu _reference_start_1 Samuel 2:34_reference_end_ _reference_start_Daniel 3:32_reference_end_ _reference_start_Daniel 3:33_reference_end_ _reference_start_Daniel 6:28_reference_end_ _reference_start_Deuteronomy 28:46_reference_end_ _reference_start_Deuteronomy 34:11_reference_end_ _reference_start_Exodus 4:08_reference_end_ _reference_start_Exodus 4:09_reference_end_ _reference_start_Exodus 4:17_reference_end_ _reference_start_Exodus 4:28_reference_end_ _reference_start_Exodus 4:30_reference_end_ _reference_start_Exodus 7:03_reference_end_ _reference_start_Exodus 8:19_reference_end_ _reference_start_Exodus 10:01_reference_end_ _reference_start_Exodus 10:02_reference_end_ _reference_start_Numbers 14:11_reference_end_ _reference_start_Numbers 14:22_reference_end_ \cme omen predicting event \cmf présage qui predit un événement _reference_start_1 Samuel 10:07_reference_end_ _reference_start_1 Samuel 10:09_reference_end_ _reference_start_1 Samuel 14:10_reference_end_ _reference_start_Exodus 3:12_reference_end_ \cme pledge of covenant and promise \cmf gage de la promèse et l'alliance de Dieu _reference_start_Exodus 31:13_reference_end_ _reference_start_Exodus 31:17_reference_end_ _reference_start_Genesis 9:12_reference_end_ _reference_start_Genesis 9:13_reference_end_ _reference_start_Genesis 9:17_reference_end_ _reference_start_Genesis 17:11_reference_end_ \cme pledge, token \cmf signe, gage _reference_start_Exodus 12:13_reference_end_ _reference_start_Genesis 4:15_reference_end_ _reference_start_Job 21:29_reference_end_ _reference_start_Joshua 2:12_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( . $ - " , + * ) ( '! &  % " $  #  "  !  ' 3 ; ; 3   "            "       #                   ~ } | {  z  y  x  w v u t s r q p **RXsimplesimple\h yiteKp \f sot \cme open-minded, open to anything, good and bad \cmf qui a l'esprit ouvert à tout,le bon et le mauvais _reference_start_Proverbs 1:04_reference_end_ _reference_start_Proverbs 1:22_reference_end_ _reference_start_Proverbs 1:22_reference_end_ _reference_start_Proverbs 1:32_reference_end_ _reference_start_Proverbs 1:32_reference_end_ _reference_start_Proverbs 7:07_reference_end_ _reference_start_Proverbs 8:05_reference_end_ _reference_start_Proverbs 9:04_reference_end_ _reference_start_Proverbs 9:04_reference_end_ _reference_start_Proverbs 9:06_reference_end_ _reference_start_Proverbs 9:16_reference_end_ _reference_start_Proverbs 14:15_reference_end_ _reference_start_Proverbs 14:18_reference_end_ _reference_start_Proverbs 19:25_reference_end_ _reference_start_Proverbs 21:11_reference_end_ _reference_start_Proverbs 22:03_reference_end_ _reference_start_Proverbs 22:03_reference_end_ _reference_start_Proverbs 27:12_reference_end_ U[sin (a)sin (a)\h t'ALXax \f péché \cme incur guilt, penalty \cmf culpabilité du péché _r p+ZCsinsin\h hÃgÃgüH \f péché \cme inadvertant error \cmf erreur inaverti _reference_start_Ecclesiastes 5:05_reference_end_ _reference_start_Ecclesiastes 10:05_reference_end_ _reference_start_Joshua 20:03_reference_end_ _reference_start_Joshua 20:09_reference_end_ _reference_start_Leviticus 5:15_reference_end_ _reference_start_Leviticus 5:18_reference_end_ _reference_start_Leviticus 22:14_reference_end_ _reference_start_Numbers 15:27_reference_end_ _reference_start_Numbers 15:28_reference_end_ _reference_start_Numbers 35:11_reference_end_MY%%csimple (adj)simple (adj)\h FhAtLAp \f simple (adj) \cme be persuaded \cmf être persuadé _reference_start_Proverbs 25:15_reference_end_ \cme seduce, deceive \cmf séduire, décevoire _reference_start_Proverbs 1:10_reference_end_ _reference_start_Proverbs 16:29_reference_end_ _reference_start_Proverbs 24:28_reference_end_eference_start_1 Kings 14:16_reference_end_ _reference_start_1 Kings 15:20_reference_end_ _reference_start_1 Kings 15:26_reference_end_ _reference_start_1 Kings 15:34_reference_end_ _reference_start_1 Kings 16:13_reference_end_ _reference_start_Psalms 32:05_reference_end_ \cme miss the goal of right/duty - vs God (& man) \cmf manquer de faire juste/le devoire envers Dieu (et homme) _reference_start_2 Kings 21:16_reference_end_ _reference_start_2 Kings 21:17_reference_end_ _reference_start_Proverbs 13:06_reference_end_ _reference_start_Proverbs 14:34_reference_end_ _reference_start_Psalms 32:05_reference_end_ _reference_start_Psalms 51:05_reference_end_ \cme miss the goal of right/duty - vs man \cmf manquer de faire juste/le devoire envers homme _reference_start_Psalms 59:04_reference_end_ _reference_start_Psalms 59:13_reference_end_ \cme purify from sin (by putting blood on horns of altar) \cmf purifié du péché (en versant le sang sur l'autel) _reference_start_Psalms 51:04_reference_end_ r_1 Kings 15:26_reference_end_ _reference_start_1 Kings 15:34_reference_end_ _reference_start_1 Kings 1:1_reference_end_ _reference_start_Exodus 23:33_reference_end_ \cme condemnation, punishement as result of an action \cmf condemnation, punition en conséquance d'une action _reference_start_Deuteronomy 24:04_reference_end_ \cme evil, corrupt \cmf perverse, corrompu _reference_start_Deuteronomy 4:16_reference_end_ _reference_start_Genesis 6:11_reference_end_ _reference_start_Genesis 6:12_reference_end_ _reference_start_Proverbs 28:24_reference_end_ \cme God deals with sin \cmf Dieu répond au péché _reference_start_1 Kings 8:34_reference_end_ _reference_start_1 Kings 8:36_reference_end_ _reference_start_2 Chronicles 7:14_reference_end_ _reference_start_2 Samuel 12:13_reference_end_ _reference_start_Daniel 9:24_reference_end_ _reference_start_Exodus 10:17_reference_end_ _reference_start_Exodus 32:34_reference_end_ _reference_start_Psalms 25:18_reference_end_ _reference_start_Psalms 51:04_reference_end_ _ sreference_start_Psalms 109:04_reference_end_ \cme guilt of sin \cmf culpabilité du péché _reference_start_Genesis 18:20_reference_end_ _reference_start_Numbers 16:26_reference_end_ _reference_start_Numbers 32:23_reference_end_ _reference_start_Psalms 32:05_reference_end_ \cme incur guilt, penalty \cmf culpabilité du péché _reference_start_1 Kings 8:47_reference_end_ _reference_start_1 Kings 8:50_reference_end_ _reference_start_1 Kings 14:16_reference_end_ _reference_start_1 Kings 14:33_reference_end_ _reference_start_1 Kings 15:20_reference_end_ _reference_start_1 Kings 16:13_reference_end_ _reference_start_1 Samuel 14:34_reference_end_ _reference_start_2 Kings 1:1_reference_end_ _reference_start_Genesis 20:06_reference_end_ _reference_start_Genesis 43:09_reference_end_ _reference_start_Genesis 44:32_reference_end_ _reference_start_Leviticus 5:11_reference_end_ _reference_start_Leviticus 5:16_reference_end_ _reference_start_Leviticus 5:17_reference_end_ _reference_start_Leviticus 5:21_reference_end_ t _reference_start_Leviticus 5:23_reference_end_ \cme miss doing right or duty - vs God (& man) \cmf manquer de faire droite/dévoire contre Dieu (et homme) _reference_start_2 Kings 13:02_reference_end_ _reference_start_2 Kings 17:21_reference_end_ _reference_start_2 Kings 17:22_reference_end_ _reference_start_2 Kings 21:16_reference_end_ _reference_start_2 Kings 21:17_reference_end_ _reference_start_Daniel 9:20_reference_end_ _reference_start_Deuteronomy 9:21_reference_end_ _reference_start_Exodus 32:21_reference_end_ _reference_start_Genesis 4:07_reference_end_ _reference_start_Genesis 20:09_reference_end_ _reference_start_Proverbs 14:34_reference_end_ _reference_start_Psalms 32:01_reference_end_ _reference_start_Psalms 32:05_reference_end_ _reference_start_Psalms 51:04_reference_end_ _reference_start_Psalms 51:05_reference_end_ _reference_start_Psalms 59:04_reference_end_ _reference_start_Psalms 109:07_reference_end_ _reference_start_Psalms 59:13_reference_end_ \cme miss doing right or duty - vs man \cm uf manquer de faire droite/dévoire contre une personne _reference_start_1 Samuel 20:01_reference_end_ _reference_start_Genesis 31:36_reference_end_ _reference_start_Genesis 50:17_reference_end_ \cme miss the goal of right/duty - vs God (& man) \cmf manquer de faire juste/le devoire envers Dieu (et homme) _reference_start_1 Chronicles 21:08_reference_end_ _reference_start_1 Chronicles 21:17_reference_end_ _reference_start_1 Kings 8:33_reference_end_ _reference_start_1 Kings 8:35_reference_end_ _reference_start_1 Kings 8:46_reference_end_ _reference_start_1 Samuel 2:25_reference_end_ _reference_start_1 Samuel 7:06_reference_end_ _reference_start_1 Samuel 12:10_reference_end_ _reference_start_1 Samuel 12:23_reference_end_ _reference_start_1 Samuel 15:24_reference_end_ _reference_start_1 Samuel 15:30_reference_end_ _reference_start_2 Kings 1:1_reference_end_ _reference_start_2 Kings 13:02_reference_end_ _reference_start_2 Samuel 12:13_reference_end_ _reference_start_Daniel 4:241342_reference_end_ _reference_ vstart_Daniel 9:05_reference_end_ _reference_start_Daniel 9:08_reference_end_ _reference_start_Daniel 9:11_reference_end_ _reference_start_Daniel 9:15_reference_end_ _reference_start_Ecclesiastes 7:20_reference_end_ _reference_start_Ecclesiastes 8:12_reference_end_ _reference_start_Exodus 9:27_reference_end_ _reference_start_Exodus 9:34_reference_end_ _reference_start_Exodus 10:16_reference_end_ _reference_start_Exodus 1:1_reference_end_ _reference_start_Exodus 20:20_reference_end_ _reference_start_Genesis 39:09_reference_end_ _reference_start_Isaiah 38:17_reference_end_ _reference_start_Leviticus 5:05_reference_end_ _reference_start_Leviticus 5:15_reference_end_ _reference_start_Leviticus 5:22_reference_end_ _reference_start_Numbers 14:40_reference_end_ _reference_start_Numbers 21:07_reference_end_ _reference_start_Proverbs 11:31_reference_end_ _reference_start_Psalms 51:06_reference_end_ _reference_start_Psalms 78:17_reference_end_ _reference_start_Psalms 119:011_reference_end_ \cme miss the goal of righ wt/duty - vs man \cmf manquer de faire juste/le devoire - contre une personne _reference_start_1 Kings 8:31_reference_end_ _reference_start_1 Samuel 2:25_reference_end_ _reference_start_1 Samuel 19:04_reference_end_ _reference_start_1 Samuel 19:05_reference_end_ _reference_start_1 Samuel 24:12_reference_end_ _reference_start_1 Samuel 26:21_reference_end_ _reference_start_2 Kings 1:1_reference_end_ _reference_start_2 Samuel 19:21_reference_end_ _reference_start_Exodus 5:16_reference_end_ _reference_start_Genesis 20:09_reference_end_ _reference_start_Genesis 40:01_reference_end_ _reference_start_Genesis 1:1_reference_end_ _reference_start_Genesis 42:22_reference_end_ _reference_start_Leviticus 5:01_reference_end_ _reference_start_Proverbs 14:21_reference_end_ _reference_start_Psalms 4:05_reference_end_ \cme miss the mark \cmf manquer le cible _reference_start_Jude 20:16_reference_end_ _reference_start_Proverbs 19:02_reference_end_ \cme punishement for sin \cmf punition pour le péché _reference_start_Isaiah x 53:12_reference_end_ _reference_start_Leviticus 10:20_reference_end_ \cme purify from sin (by putting blood on horns of altar) \cmf purifier du péché (en versant le sang sur l'autel) _reference_start_Exodus 43:22_reference_end_ _reference_start_Ezekiel 43:20_reference_end_ _reference_start_Ezekiel 43:23_reference_end_ _reference_start_Leviticus 8:15_reference_end_ \cme purify from uncleanness \cmf purifier d'impureté _reference_start_Leviticus 14:49_reference_end_ _reference_start_Leviticus 14:52_reference_end_ _reference_start_Numbers 19:19_reference_end_ _reference_start_Numbers 19:20_reference_end_ _reference_start_Psalms 51:09_reference_end_ \cme sin inadvertantly, unintentionally \cmf sans se rendre conte, sans intention _reference_start_Genesis 6:03_reference_end_ _reference_start_Job 12:16_reference_end_ _reference_start_Leviticus 5:18_reference_end_ _reference_start_Numbers 15:28_reference_end_ _reference_start_Psalms 119:67_reference_end_ \cme sin offering \cmf sacrifices pour le péché _ref yerence_start_2 Chronicles 29:21_reference_end_ _reference_start_2 Kings 12:17_reference_end_ _reference_start_Leviticus 7:37_reference_end_ _reference_start_Psalms 40:07_reference_end_ \cme sin-offering (offer one) \cmf sacrifice pour le péché (l'offrir) _reference_start_2 Chronicles 29:24_reference_end_ _reference_start_Leviticus 9:15_reference_end_ \cme spoil, ruin \cmf ruiner, abimer _reference_start_Exodus 8:20_reference_end_ _reference_start_Exodus 21:26_reference_end_ _reference_start_Proverbs 11:09_reference_end_ _reference_start_Proverbs 25:26_reference_end_ _reference_start_Ruth 4:06_reference_end_ \cme to overlook, forgive sin \cmf oublier, pardonner le péché _reference_start_1 Chronicles 21:08_reference_end_ _reference_start_2 Samuel 12:13_reference_end_ _reference_start_2 Samuel 24:10_reference_end_ _reference_start_Amos 7:08_reference_end_ _reference_start_Amos 8:02_reference_end_ _reference_start_Micah 7:18_reference_end_ _reference_start_Proverbs 19:11_reference_end_ \cme to overstep, sin \cmf aller trop loin, pécher _reference_start_1 Samuel 15:24_reference_end_ _reference_start_2 Chronicles 24:20_reference_end_ _reference_start_2 Kings 18:12_reference_end_ _reference_start_Daniel 9:11_reference_end_ _reference_start_Deuteronomy 26:13_reference_end_ _reference_start_Esther 3:03_reference_end_ _reference_start_Hosea 6:07_reference_end_ _reference_start_Hosea 8:01_reference_end_ _reference_start_Isaiah 24:05_reference_end_ _reference_start_Jeremiah 34:18_reference_end_ _reference_start_Joshua 7:11_reference_end_ _reference_start_Joshua 7:15_reference_end_ _reference_start_Jude 2:20_reference_end_ _reference_start_Numbers 14:41_reference_end_ _reference_start_Proverbs 26:10_reference_end_ _reference_start_Psalms 17:03_reference_end_ _reference_start_Psalms 148:06_reference_end_ \cme turn away from, stop sinning \cmf arrêter de, repentir de pécher _reference_start_1 Kings 8:35_reference_end_ _reference_start_2 Chronicles 6:26_reference_end_ _reference_start_2 Kings 10:31_reference_end_ .\3sin (to)sin (to)\h 'AXAx \f pécher \cme bear loss of something \cmf subir la perte de qqch _reference_start_Genesis 31:39_reference_end_ \cme cause to sin \cmf faire pécher _reference_start_1 Kings 14:16_reference_end_ _reference_start_1 Kings 1:1_reference_end_ _reference_start_1 Kings 15:20_reference_end_ _reference_start q ?tfXJ<. xj\N@2$|n`RD6( m l  k  j  i  h  g f  e  d . c # b ! a  `  _2 ^$ ]  \; [m Z; Y3 X3 W  V  U" T S R  Q  P  O  N  M  L  K  J I H G F E, D+ C B  A " @  ?  > ! =  < 2 ; / :  9  8 7 6m 53 4 3 " 2  1  0 / ?rdVH:,vhZL>0"zl^PB4& ,  + *( )% (  ' &wC % $ #  " !3   4 1  + + +   5  A    *  (                   w N 3    ( ~ } | {& z' y x w  v " u  t s r  q p  o  n ?tfXJ<. xi[M?1#{m_QC5' k j i h g f e d c  b  a ` _ ^ ] \ [ Z  Y X3 W V U T S  R Q P O  N  M  L  K J # I H G F) EA D C B" A @ ? > = < ;  : 9  8 7! 6 5 4  3 2  1 0 / . - f]-sinfulsinful\h 'ALXax \f coupable \cme miss the goal of right/duty - vs God (& man) \cmf manquer de faire juste/le devoire envers Dieu (et homme) _reference_start_Numbers 32:14_reference_end_ \cme reckoned as offenders \cmf consideré comme délenquants _reference_start_1 Kings 1:21_reference_end_ \cme sinners, those who miss doing right/duty \cmf pécheurs, qui manquent de faire juste/le devoire _reference_start_1 Samuel 15:18_reference_end_ _reference_start_Ecclesiastes 1:1_reference_end_ _reference_start_Genesis 13:13_reference_end_ _reference_start_Proverbs 1:10_reference_end_ _reference_start_Proverbs 13:21_reference_end_ _reference_start_Proverbs 23:17_reference_end_ _reference_start_Psalms 1:01_reference_end_ _reference_start_Psalms 1:05_reference_end_ _reference_start_Psalms 25:08_reference_end_ _reference_start_Psalms 51:15_reference_end_ c^/skinskin\h rôv \f peau \cme clothing, covering \cmf vêtements, couverture _reference_start_Exodus 22:26_reference_end_ \cme skin or person or animal hide \cmf peau d'une personne ou un animal _reference_start_2 Kings 1:08_reference_end_ _reference_start_Genesis 3:21_reference_end_ _reference_start_Genesis 27:16_reference_end_ _reference_start_Lamentations 3:04_reference_end_ _reference_start_Leviticus 16:27_reference_end_ _reference_start_Numbers 19:05_reference_end_ DDU`%%ssluggishnesssluggishness\h tûlücav / hAlücav \f paresse \cme laziness, idleness \cmf paresse, fainéantise _reference_start_Proverbs 19:15_reference_end_ _reference_start_Proverbs 31:27_reference_end___sluggardsluggard\h lEcAv \f paresseux \cme lazy person \cmf paresseux _reference_start_Proverbs 6:06_reference_end_ _reference_start_Proverbs 6:09_reference_end_ _reference_start_Proverbs 10:26_reference_end_ _reference_start_Proverbs 13:04_reference_end_ _reference_start_Proverbs 15:19_reference_end_ _reference_start_Proverbs 19:24_reference_end_ _reference_start_Proverbs 20:04_reference_end_ _reference_start_Proverbs 21:25_reference_end_ _reference_start_Proverbs 22:13_reference_end_ _reference_start_Proverbs 24:30_reference_end_ _reference_start_Proverbs 26:13_reference_end_ _reference_start_Proverbs 26:14_reference_end_ _reference_start_Proverbs 26:15_reference_end_ _reference_start_Proverbs 26:16_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( * ) ( ' &  % $ # " !    . . . . . . $                                    # ~  } |  {  z y x w v u t  s r q& p o n m l Nxb##=sons of mensons of men\h £ßdA'-€eÐb / £ßdA' yÅnüÐb \f fils des hommes \cme all of humanity \cmf toute l'humanité _reference_start_Daniel 2:38_reference_end_ _reference_start_Daniel 5:21_reference_end_ \cme son of man - his humanity \cmf fils d'hommes - son humanité _reference_start_Daniel 8:17_reference_end_ _reference_start_Daniel 10:16_reference_end_.a!!-son of manson of man\h HÃné' rÿGÿab \f fils d'homme \cme son of man - his humanity \cmf fils d'homme - son humanité _reference_start_Daniel 7:13_reference_end_ rence_start_Exodus 21:30_reference_end_ \cme breath \cmf le soufle _reference_start_1 Kings 17:21_reference_end_ _reference_start_Genesis 35:18_reference_end_ \cme dead body, cadaver \cmf corps mort, cadavre _reference_start_Numbers 5:02_reference_end_ _reference_start_Numbers 6:06_reference_end_ _reference_start_Numbers 6:11_reference_end_ \cme figure for risking or saving a life \cmf sense figuré de risquer ou sauver la vie _reference_start_1 Kings 19:03_reference_end_ _reference_start_1 Samuel 19:05_reference_end_ _reference_start_1 Samuel 28:21_reference_end_ _reference_start_2 Samuel 23:17_reference_end_ _reference_start_Proverbs 23:14_reference_end_ _reference_start_Psalms 30:04_reference_end_ \cme metonymy for person or people \cmf une personne ou plusières personnes _reference_start_1 Samuel 22:22_reference_end_ _reference_start_2 Samuel 14:14_reference_end_ _reference_start_Exodus 1:05_reference_end_ _reference_start_Exodus 12:04_reference_end_ _reference_start_Exodus 12:15_reference_end_ _refe rence_start_Exodus 12:16_reference_end_ _reference_start_Exodus 12:19_reference_end_ _reference_start_Exodus 16:16_reference_end_ _reference_start_Exodus 30:12_reference_end_ _reference_start_Genesis 2:07_reference_end_ _reference_start_Genesis 9:05_reference_end_ _reference_start_Genesis 12:05_reference_end_ _reference_start_Genesis 14:21_reference_end_ _reference_start_Genesis 17:14_reference_end_ _reference_start_Genesis 36:06_reference_end_ _reference_start_Genesis 46:15_reference_end_ _reference_start_Genesis 46:18_reference_end_ _reference_start_Genesis 46:22_reference_end_ _reference_start_Genesis 46:25_reference_end_ _reference_start_Genesis 46:26_reference_end_ _reference_start_Genesis 46:27_reference_end_ _reference_start_Leviticus 5:01_reference_end_ _reference_start_Leviticus 5:02_reference_end_ _reference_start_Leviticus 5:04_reference_end_ _reference_start_Leviticus 5:15_reference_end_ _reference_start_Leviticus 5:17_reference_end_ _reference_start_Leviticus 17:10_reference_end_ _reference_s tart_Leviticus 18:29_reference_end_ _reference_start_Proverbs 3:22_reference_end_ _reference_start_Proverbs 11:25_reference_end_ _reference_start_Proverbs 19:02_reference_end_ _reference_start_Proverbs 23:02_reference_end_ _reference_start_Proverbs 25:25_reference_end_ _reference_start_Proverbs 28:25_reference_end_ \cme neck \cmf le cou _reference_start_Deuteronomy 19:06_reference_end_ _reference_start_Genesis 37:21_reference_end_ _reference_start_Psalms 71:23_reference_end_ _reference_start_Psalms 124:07_reference_end_ _reference_start_Psalms 7:1_reference_end_ \cme part of us that suffers \cmf partie d'une personne qui suffre _reference_start_Exodus 23:09_reference_end_ _reference_start_Job 19:02_reference_end_ _reference_start_Ruth 4:15_reference_end_ \cme part of us with a will or thoughts \cmf partie d'une personne avec volonté ou pensés _reference_start_1 Chronicles 22:19_reference_end_ _reference_start_1 Chronicles 28:09_reference_end_ _reference_start_1 Kings 2:04_reference_end_ _reference_start _1 Kings 8:48_reference_end_ _reference_start_1 Samuel 2:35_reference_end_ _reference_start_1 Samuel 20:04_reference_end_ _reference_start_Jonah 2:08_reference_end_ _reference_start_Proverbs 23:07_reference_end_ _reference_start_Psalms 19:08_reference_end_ \cme part of us with emotions and desires \cmf partie d'une personne avec désirs et émotions _reference_start_1 Kings 11:37_reference_end_ _reference_start_1 Samuel 1:10_reference_end_ _reference_start_1 Samuel 1:15_reference_end_ _reference_start_1 Samuel 2:33_reference_end_ _reference_start_1 Samuel 18:01_reference_end_ _reference_start_1 Samuel 22:02_reference_end_ _reference_start_1 Samuel 23:20_reference_end_ _reference_start_1 Samuel 30:06_reference_end_ _reference_start_2 Samuel 3:21_reference_end_ _reference_start_2 Samuel 5:08_reference_end_ _reference_start_2 Samuel 17:08_reference_end_ _reference_start_Deuteronomy 18:06_reference_end_ _reference_start_Deuteronomy 28:65_reference_end_ _reference_start_Exodus 15:09_reference_end_ _reference_s tart_Genesis 23:08_reference_end_ _reference_start_Genesis 34:03_reference_end_ _reference_start_Genesis 34:08_reference_end_ _reference_start_Genesis 42:21_reference_end_ _reference_start_Genesis 44:30_reference_end_ _reference_start_Isaiah 1:14_reference_end_ _reference_start_Jeremiah 12:07_reference_end_ _reference_start_Jeremiah 51:14_reference_end_ _reference_start_Job 23:13_reference_end_ _reference_start_Jude 10:16_reference_end_ _reference_start_Numbers 11:06_reference_end_ _reference_start_Numbers 21:04_reference_end_ _reference_start_Numbers 21:05_reference_end_ _reference_start_Proverbs 13:04_reference_end_ _reference_start_Proverbs 13:25_reference_end_ _reference_start_Proverbs 16:24_reference_end_ _reference_start_Proverbs 19:08_reference_end_ _reference_start_Proverbs 21:10_reference_end_ _reference_start_Proverbs 25:13_reference_end_ _reference_start_Proverbs 27:07_reference_end_ _reference_start_Proverbs 27:09_reference_end_ _reference_start_Proverbs 29:17_reference_end_ _reference_start_P roverbs 31:06_reference_end_ _reference_start_Psalms 11:05_reference_end_ _reference_start_Psalms 24:04_reference_end_ \cme physical life, state of being alive \cmf vie physique, être en vie _reference_start_1 Kings 1:12_reference_end_ _reference_start_1 Kings 1:29_reference_end_ _reference_start_1 Kings 2:23_reference_end_ _reference_start_1 Kings 3:11_reference_end_ _reference_start_1 Kings 20:39_reference_end_ _reference_start_1 Samuel 19:11_reference_end_ _reference_start_1 Samuel 20:01_reference_end_ _reference_start_1 Samuel 22:23_reference_end_ _reference_start_1 Samuel 23:15_reference_end_ _reference_start_1 Samuel 24:12_reference_end_ _reference_start_1 Samuel 25:29_reference_end_ _reference_start_1 Samuel 26:21_reference_end_ _reference_start_1 Samuel 26:24_reference_end_ _reference_start_1 Samuel 28:09_reference_end_ _reference_start_2 Kings 10:24_reference_end_ _reference_start_2 Samuel 1:09_reference_end_ _reference_start_2 Samuel 4:08_reference_end_ _reference_start_2 Samuel 4:09_reference_ end_ _reference_start_2 Samuel 14:07_reference_end_ _reference_start_2 Samuel 16:11_reference_end_ _reference_start_2 Samuel 18:13_reference_end_ _reference_start_2 Samuel 19:06_reference_end_ _reference_start_Deuteronomy 12:23_reference_end_ _reference_start_Esther 7:03_reference_end_ _reference_start_Esther 7:07_reference_end_ _reference_start_Esther 8:11_reference_end_ _reference_start_Esther 9:16_reference_end_ _reference_start_Exodus 4:19_reference_end_ _reference_start_Exodus 21:23_reference_end_ _reference_start_Genesis 1:30_reference_end_ _reference_start_Genesis 9:04_reference_end_ _reference_start_Genesis 19:17_reference_end_ _reference_start_Genesis 19:20_reference_end_ _reference_start_Genesis 32:31_reference_end_ _reference_start_Jonah 1:14_reference_end_ _reference_start_Jonah 4:03_reference_end_ _reference_start_Jude 5:18_reference_end_ _reference_start_Proverbs 1:19_reference_end_ _reference_start_Proverbs 7:23_reference_end_ _reference_start_Proverbs 8:36_reference_end_ _reference_start_P roverbs 12:10_reference_end_ _reference_start_Proverbs 13:03_reference_end_ _reference_start_Proverbs 13:08_reference_end_ _reference_start_Proverbs 16:17_reference_end_ _reference_start_Proverbs 19:16_reference_end_ _reference_start_Proverbs 22:05_reference_end_ _reference_start_Proverbs 29:10_reference_end_ _reference_start_Psalms 23:03_reference_end_ _reference_start_Psalms 34:34_reference_end_ _reference_start_Psalms 54:05_reference_end_ _reference_start_Psalms 56:07_reference_end_ _reference_start_Psalms 56:14_reference_end_ _reference_start_Psalms 57:02_reference_end_ _reference_start_Psalms 63:10_reference_end_ _reference_start_Psalms 71:10_reference_end_ \cme pronoun, person \cmf une personne, pronom _reference_start_1 Samuel 1:26_reference_end_ _reference_start_1 Samuel 2:16_reference_end_ _reference_start_1 Samuel 17:55_reference_end_ _reference_start_1 Samuel 20:03_reference_end_ _reference_start_1 Samuel 25:26_reference_end_ _reference_start_2 Samuel 11:11_reference_end_ _reference_start_2 Sam uel 14:19_reference_end_ _reference_start_Esther 4:13_reference_end_ _reference_start_Esther 9:31_reference_end_ _reference_start_Genesis 12:13_reference_end_ _reference_start_Genesis 19:19_reference_end_ _reference_start_Genesis 27:04_reference_end_ _reference_start_Genesis 27:19_reference_end_ _reference_start_Genesis 27:25_reference_end_ _reference_start_Genesis 27:31_reference_end_ _reference_start_Jonah 4:08_reference_end_ _reference_start_Proverbs 2:10_reference_end_ _reference_start_Proverbs 11:25_reference_end_ _reference_start_Proverbs 11:30_reference_end_ _reference_start_Proverbs 14:25_reference_end_ _reference_start_Proverbs 19:15_reference_end_ _reference_start_Proverbs 24:12_reference_end_ _reference_start_Proverbs 24:14_reference_end_ _reference_start_Proverbs 27:07_reference_end_ _reference_start_Proverbs 28:17_reference_end_ _reference_start_Psalms 3:03_reference_end_ _reference_start_Psalms 34:03_reference_end_ _reference_start_Psalms 54:06_reference_end_ _reference_start_Psalms 57:05_reference_end_ _reference_start_Psalms 59:04_reference_end_ _reference_start_Psalms 63:09_reference_end_ _reference_start_Psalms 71:13_reference_end_ _reference_start_Psalms 142:05_reference_end_ _reference_start_Psalms 142:08_reference_end_ \cme soul, inner being, self \cmf l'être intérieur, soi-même _reference_start_1 Samuel 18:01_reference_end_ _reference_start_1 Samuel 18:03_reference_end_ _reference_start_1 Samuel 20:17_reference_end_ _reference_start_Genesis 49:06_reference_end_ _reference_start_Proverbs 3:22_reference_end_ _reference_start_Proverbs 11:17_reference_end_ _reference_start_Psalms 139:14_reference_end_ \cme throat \cmf la gorge _reference_start_Jonah 2:06_reference_end_ _reference_start_Proverbs 10:03_reference_end_ _reference_start_Proverbs 25:25_reference_end_ _reference_start_Psalms 63:02_reference_end_ _reference_start_Psalms 63:06_reference_end_ _reference_start_Psalms 107:05_reference_end_ _reference_start_Psalms 124:04_reference_end_ _reference_start_Psalms 124:05_reference_end_ Pcsoulsoul\h HepÆn \f âme \cme all living beings \cmf tout être vivant _reference_start_Genesis 1:20_reference_end_ _reference_start_Genesis 1:21_reference_end_ _reference_start_Genesis 1:24_reference_end_ _reference_start_Genesis 2:19_reference_end_ _reference_start_Genesis 9:10_reference_end_ _reference_start_Genesis 9:12_reference_end_ _reference_start_Genesis 9:15_reference_end_ _reference_start_Genesis 9:16_reference_end_ \cme be allowed to live \cmf être "autorisé" à vivre _refe ?tfXJ<. xj\N@2$|n`RD6( i  h  g ' f  e  d  c  b a  ` _ ^ ] \ [ Z Y X  W  V U T  SA  R Q3 P  O N, M* L" K" J I HA G F  E  D  C  B  A  @  ? ! >  =  < % ; : 9  8  7 # 6 0 5  4  3  2 1 0 / .| -G ,% + ?tfXJ<. xj\N@2$|n`RD6( ( ' & % $ # "  !         7     G ? 9 8 8 6 ""           $   A             ~ }  | { z y  x  w  v  u  t  s  r  q  p  o  n  m  l  k  j  ?tfXJ<. ugYK=/!yk]OA3% g  f  e3 d3 c  b a ` _ ^) ] \ [  Zh Y" X W V U T  S R Q  P O N M1$ L K  J| I| Hk G? F? E D  C  B A  @ ?1 >  =  <  ; : 9G 8? 7; 69 56 4" 3 2 1 0 / . - ,  +  * )  ce_end_ _reference_start_Psalms 18:15_reference_end_ \cme breath \cmf souffle, haleine _reference_start_Ecclesiastes 12:07_reference_end_ _reference_start_Exodus 15:10_reference_end_ _reference_start_Genesis 6:17_reference_end_ _reference_start_Genesis 7:15_reference_end_ _reference_start_Genesis 7:22_reference_end_ _reference_start_Job 34:14_reference_end_ _reference_start_Psalms 104:29_reference_end_ \cme desires and thoughts of a person \cmf partie d'une personne avec émotions et pensées _reference_start_1 Chronicles 28:12_reference_end_ _reference_start_Daniel 2:01_reference_end_ _reference_start_Daniel 2:03_reference_end_ _reference_start_Genesis 41:08_reference_end_ _reference_start_Numbers 14:24_reference_end_ \cme disposition, character \cmf disposition, charactère _reference_start_Proverbs 16:18_reference_end_ _reference_start_Proverbs 16:19_reference_end_ _reference_start_Proverbs 29:23_reference_end_ _reference_start_Psalms 32:02_reference_end_ _reference_start_Psalms 51:12_reference_end_ _r eference_start_Psalms 51:19_reference_end_ \cme emotions of a person \cmf émotions d'une personne _reference_start_1 Kings 10:05_reference_end_ _reference_start_1 Kings 21:05_reference_end_ _reference_start_1 Samuel 1:15_reference_end_ _reference_start_Exodus 6:09_reference_end_ _reference_start_Genesis 26:35_reference_end_ _reference_start_Proverbs 14:29_reference_end_ _reference_start_Psalms 34:19_reference_end_ _reference_start_Psalms 142:04_reference_end_ \cme figure of speech = vanity, worthlessness \cmf sense figuré = vanité, sans valeur _reference_start_Ecclesiastes 1:06_reference_end_ _reference_start_Ecclesiastes 1:14_reference_end_ _reference_start_Ecclesiastes 1:17_reference_end_ _reference_start_Ecclesiastes 2:11_reference_end_ _reference_start_Ecclesiastes 2:17_reference_end_ _reference_start_Ecclesiastes 2:26_reference_end_ _reference_start_Ecclesiastes 4:04_reference_end_ _reference_start_Ecclesiastes 4:06_reference_end_ _reference_start_Ecclesiastes 4:16_reference_end_ _reference_start_ Ecclesiastes 5:15_reference_end_ _reference_start_Ecclesiastes 6:09_reference_end_ \cme indpendent spiritual being \cmf être spirituel indépendent _reference_start_1 Samuel 16:14_reference_end_ _reference_start_1 Samuel 16:15_reference_end_ _reference_start_1 Samuel 16:16_reference_end_ _reference_start_1 Samuel 16:23_reference_end_ _reference_start_1 Samuel 18:10_reference_end_ _reference_start_1 Samuel 19:09_reference_end_ _reference_start_2 Kings 19:07_reference_end_ \cme life, being alive \cmf vie, être vivant _reference_start_Ecclesiastes 11:05_reference_end_ \cme mental capacity of a person, (vs animals) \cmf capacité mental d'une personne en contraste avec des animaux _reference_start_Daniel 7:15_reference_end_ \cme part of a person that remains after death \cmf la partie d'une personne qui existe après la mort _reference_start_Proverbs 2:18_reference_end_ _reference_start_Proverbs 9:16_reference_end_ _reference_start_Proverbs 21:16_reference_end_ \cme person in relation to supernatural world \cmf personne en rélation avec le monde surnaturel _reference_start_Numbers 16:22_reference_end_ _reference_start_Numbers 27:16_reference_end_ \cme power, authority of a person \cmf pouvoir, autorité d'une personne _reference_start_2 Kings 2:09_reference_end_ _reference_start_2 Kings 2:15_reference_end_ _reference_start_Numbers 11:17_reference_end_ \cme spirit of God (on a person to prophecy or lead) \cmf de Dieu (en une personne pour prophètiser ou guider) _reference_start_1 Chronicles 12:19_reference_end_ _reference_start_Deuteronomy 34:09_reference_end_ _reference_start_Numbers 11:17_reference_end_ _reference_start_Numbers 11:25_reference_end_ _reference_start_Numbers 11:26_reference_end_ _reference_start_Numbers 11:29_reference_end_ _reference_start_Psalms 51:14_reference_end_ _reference_start_Psalms 139:07_reference_end_ \cme strength, vital force \cmf viguer, force vitale _reference_start_1 Samuel 30:12_reference_end_ _reference_start_Genesis 6:03_reference_end_ _reference_start_Genesis 45:27_reference_end_ _reference_start_Job 34:14_reference_end_ \cme will of a person \cmf volonté d'une personne _reference_start_Daniel 5:20_reference_end_ _reference_start_Ezekiel 11:19_reference_end_ _reference_start_Isaiah 19:03_reference_end_ _reference_start_Job 15:13_reference_end_ _reference_start_Psalms 51:14_reference_end_ \cme wind \cmf vent _reference_start_1 Kings 18:45_reference_end_ _reference_start_2 Samuel 22:11_reference_end_ _reference_start_Daniel 2:35_reference_end_ _reference_start_Daniel 8:08_reference_end_ _reference_start_Daniel 11:04_reference_end_ _reference_start_Exodus 10:13_reference_end_ _reference_start_Exodus 10:19_reference_end_ _reference_start_Exodus 14:21_reference_end_ _reference_start_Genesis 3:08_reference_end_ _reference_start_Genesis 8:01_reference_end_ _reference_start_Jonah 1:04_reference_end_ _reference_start_Jonah 4:08_reference_end_ _reference_start_Numbers 11:31_reference_end_ _reference_start_Proverbs 25:23_reference_end_ _reference_start_Psalms 1:04_reference_end_  dwspiritspirit\h Þxûr \f esprit \cme 4 compass points \cmf 4 points candineaux _reference_start_1 Chronicles 9:24_reference_end_ _reference_start_Daniel 7:02_reference_end_ _reference_start_Jeremiah 49:36_reference_end_ \cme ability, gift \cmf habilité, don _reference_start_Daniel 5:12_reference_end_ _reference_start_Daniel 6:04_reference_end_ _reference_start_Exodus 28:03_reference_end_ \cme anger (breath of nose) \cmf colère (soufle du nez) _reference_start_2 Samuel 22:16_reference_end_ _reference_start_Exodus 15:08_referen ?seWI;-wi[M?1#zl^PB4& &  %  $ # " !      #    - 3      " -     3         "                    ~  }  |  {  z  y  x w v u t s r q p o n m l" k j# i h  ?tfXJ<. xj\N@2$|n`RD6( e d+ c b a + `  _  ^  ]/ \ [ Z Y- X W  V U & T " S ! R Q  P  O  N  M/ L  K2 J I H G F E  D = C : B  A  @  ?  > =  <  ;  :  9  8)& 7 6 5 4 3 23 1 0 /# . -  ,  +  * ) ( '  QQ+e''spirit of Godspirit of god\h yihAlÎ' / £yhl' xûr. \f esprit de Dieu \cme spirit from God \cmf esprit venant de Dieu mauvais" 7307/7451 mauvais" 7307/7451 \cme Spirit of God (the) \cmf Esprit de Dieu _reference_start_1 Samuel 10:10_reference_end_ _reference_start_1 Samuel 11:06_reference_end_ _reference_start_1 Samuel 19:20_reference_end_ _reference_start_1 Samuel 19:23_reference_end_ _reference_start_Exodus 31:03_reference_end_ _reference_start_Exodus 35:31_reference_end_ _reference_start_Genesis 1:02_reference_end_ _reference_start_Numbers 24:02_reference_end_ _reference_start_Psalms 51:13_reference_end_ \cme spirit of god(s) \cmf esprit de(s) dieu(s) _reference_start_Daniel 4:05_reference_end_ _reference_start_Daniel 4:06_reference_end_ _reference_start_Daniel 4:15_reference_end_ _reference_start_Daniel 5:11_reference_end_ _reference_start_Daniel 5:14_reference_end_ _reference_start_Genesis 41:38_reference_end_ 8gMstatutestatute\h qOx \f loi \cme amount of something allotted to someone \cmf montant de qqch asignier à qqn _reference_start_Exodus 5:14_reference_end_ \cme general law of God \cmf loi général de Dieu _reference_start_1 Chronicles 7:17_reference_end_ _reference_start_1 Chronicles 22:13_reference_end_ _reference_start_1 Chronicles 29:19_reference_end_ _reference_start_1 Kings 0:14_reference_end_ _reference_start_1 Kings 8:58_refere gf11Spirit of the LORDspirit of the lord\h hÃwhÌy Þxûr \f esprit de l'Eternel \cme Spirit of God \cmf Esprit de Dieu _reference_start_1 Kings 18:1_reference_end_ _reference_start_1 Samuel 10:06_reference_end_ _reference_start_1 Samuel 16:13_reference_end_ _reference_start_1 Samuel 16:14_reference_end_ _reference_start_2 Samuel 23:02_reference_end_ nce_end_ _reference_start_1 Kings 8:61_reference_end_ _reference_start_1 Kings 9:04_reference_end_ _reference_start_Exodus 15:25_reference_end_ _reference_start_Exodus 15:26_reference_end_ _reference_start_Exodus 18:16_reference_end_ _reference_start_Exodus 18:20_reference_end_ _reference_start_Psalms 2:07_reference_end_ _reference_start_Psalms 50:16_reference_end_ \cme law of a person in authority \cmf loi d'une personne en position d'autorité _reference_start_1 Samuel 30:25_reference_end_ _reference_start_Genesis 47:26_reference_end_ \cme law or commandment of God \cmf loi ou commandement de Dieu _reference_start_1 Kings 2:03_reference_end_ _reference_start_1 Kings 3:03_reference_end_ _reference_start_1 Kings 6:12_reference_end_ _reference_start_1 Kings 9:06_reference_end_ _reference_start_1 Kings 11:11_reference_end_ _reference_start_1 Kings 11:33_reference_end_ _reference_start_1 Kings 11:34_reference_end_ _reference_start_1 Kings 11:38_reference_end_ _reference_start_2 Chronicles 7:19_reference_end_ _reference_start_2 Samuel 22:23_reference_end_ _reference_start_Deuteronomy 28:15_reference_end_ _reference_start_Deuteronomy 28:45_reference_end_ _reference_start_Genesis 26:05_reference_end_ _reference_start_Leviticus 18:26_reference_end_ _reference_start_Leviticus 25:18_reference_end_ \cme portion (of sacrifice) given to priests \cmf portion (des sacrifices) donner au prêtres _reference_start_Genesis 47:22_reference_end_ \cme ritual law of God \cmf loi rituel _reference_start_Exodus 12:24_reference_end_ \cme ritual laws \cmf lois des rituels réligieux _reference_start_Exodus 12:14_reference_end_ _reference_start_Exodus 12:17_reference_end_ _reference_start_Exodus 12:43_reference_end_ _reference_start_Exodus 13:10_reference_end_ _reference_start_Exodus 27:21_reference_end_ _reference_start_Exodus 28:43_reference_end_ _reference_start_Exodus 29:09_reference_end_ _reference_start_Leviticus 18:04_reference_end_ _reference_start_Leviticus 18:05_reference_end_ _reference_start_Numbers 10:08_reference_end_ ?tfXJ<. wi[M?1#zl^PB4& $  #  " 2 !                            !                          ' ~  } | { z y x w v u t s r q p o  n  m  l  k  j  i  h  g f 88Dh!!Ystone (to)stone (to)\h laqAs. \f lapider \cme throw stones at (not to kill) \cmf lapider mais pas pour tuer _reference_start_2 Samuel 16:13_reference_end_ \cme to stone, kill \cmf tuer en lancant des pierres _reference_start_1 Kings 21:10_reference_end_ _reference_start_1 Kings 21:13_reference_end_ _reference_start_1 Kings 21:14_reference_end_ _reference_start_1 Kings 21:15_reference_end_ _reference_start_1 Samuel 30:06_reference_end_ _reference_start_2 Samuel 16:06_reference_end_ _reference_start_Deuteronomy 13:11_reference_end_ _reference_start_Deuteronomy 17:05_reference_end_ _reference_start_Deuteronomy 22:21_reference_end_ _reference_start_Deuteronomy 22:24_reference_end_ _reference_start_Exodus 8:22_reference_end_ _reference_start_Exodus 17:04_reference_end_ _reference_start_Exodus 19:13_reference_end_ _reference_start_Exodus 21:28_reference_end_ _reference_start_Exodus 21:29_reference_end_ _reference_start_Exodus 21:32_reference_end_ ZZ"istupiditystupidity\h tûlyisüÐk \f stupidité \cme opposite of wisdom \cmf en opposition avec la sagesse _reference_start_Proverbs 9:13_reference_end_ NN.j!!-tabernacletabernacle\h €AÐküHiGm \f tabernacle \cme tent, place where people live \cmf tente, lieu d'habitation _reference_start_Job 18:21_reference_end_ _reference_start_Psalms 26:08_reference_end_ _reference_start_Psalms 132:05_reference_end_ \cme tent, portable house of God \cmf tente, sanctuaire portable _reference_start_1 Chronicles 6:17_reference_end_ _reference_start_1 Chronicles 16:39_reference_end_ _reference_start_1 Chronicles 17:05_reference_end_ _reference_start_1 Chronicles 21:29_reference_end_ _reference_start_1 Chronicles 23:26_reference_end_ _reference_start_2 Samuel 7:06_reference_end_ _reference_start_Exodus 25:09_reference_end_ _reference_start_Exodus 26:01_reference_end_ _reference_start_Joshua 22:19_reference_end_ _reference_start_Numbers 10:01_reference_end_ _reference_start_Numbers 10:17_reference_end_ _reference_start_Numbers 10:21_reference_end_ _reference_start_Psalms 132:07_reference_end_ference_start_Daniel 4:01_reference_end_ _reference_start_Daniel 4:26_reference_end_ _reference_start_Daniel 5:05_reference_end_ _reference_start_Daniel 6:19_reference_end_ _reference_start_Ezra 4:14_reference_end_ \cme place of worship of God or gods \cmf lieu d'adoration de Dieu ou des dieux _reference_start_2 Samuel 22:07_reference_end_ _reference_start_Daniel 5:02_reference_end_ _reference_start_Daniel 5:03_reference_end_ _reference_start_Ezra 5:14_reference_end_ _reference_start_Ezra 5:15_reference_end_ _reference_start_Ezra 6:05_reference_end_ _reference_start_Jonah 2:05_reference_end_ _reference_start_Jonah 2:08_reference_end_ \cme whole area of tabernacle \cmf aire du tabernacle _reference_start_1 Samuel 1:09_reference_end_ _reference_start_1 Samuel 3:03_reference_end_ \cme whole temple building \cmf le batiment entier _reference_start_1 Kings 7:21_reference_end_ _reference_start_1 Kings 7:50_reference_end_ _reference_start_2 Kings 18:16_reference_end_ _reference_start_2 Kings 23:13_reference_end_ --=l++7tent of meetingtent of meeting\h dEvôm lehO' \f tente de la Rencontre \cme tent where God was worhipped \cmf tente de la Rencontre où Dieu était adoré _reference_start_1 Chronicles 9:19_reference_end_ _reference_start_1 Chronicles 9:21_reference_end_ _reference_start_1 Chronicles 9:23_reference_end_ _reference_start_1 Chronicles 23:32_reference_end_ _reference_start_1 Kings 1:39_reference_end_ _reference_start_1 Kings 2:28_referenc ~k==temple, holy place, navetemple, holy place, nave\h lAkyEh \f lieu saint \cme outer room in temple building \cmf première chambre du temple _reference_start_1 Kings 6:03_reference_end_ _reference_start_1 Kings 6:05_reference_end_ _reference_start_1 Kings 6:17_reference_end_ _reference_start_1 Kings 6:33_reference_end_ \cme palace (of a king) \cmf palais d'un roi _reference_start_1 Kings 21:01_reference_end_ _reference_start_2 Kings 20:18_reference_end_ _reference_start_Daniel 1:04_reference_end_ _re e_end_ _reference_start_1 Kings 2:29_reference_end_ _reference_start_1 Kings 2:30_reference_end_ _reference_start_1 Kings 8:04_reference_end_ _reference_start_1 Samuel 2:22_reference_end_ _reference_start_2 Chronicles 1:03_reference_end_ _reference_start_2 Chronicles 5:05_reference_end_ _reference_start_2 Samuel 6:17_reference_end_ _reference_start_2 Samuel 7:06_reference_end_ _reference_start_Exodus 26:09_reference_end_ _reference_start_Exodus 27:21_reference_end_ _reference_start_Exodus 28:43_reference_end_ _reference_start_Exodus 29:10_reference_end_ _reference_start_Joshua 18:01_reference_end_ _reference_start_Leviticus 1:01_reference_end_ _reference_start_Leviticus 24:03_reference_end_ _reference_start_Numbers 10:03_reference_end_ _reference_start_Numbers 11:16_reference_end_ _reference_start_Numbers 11:24_reference_end_ _reference_start_Numbers 11:26_reference_end_ _reference_start_Numbers 14:10_reference_end_ _reference_start_Numbers 20:06_reference_end_ _reference_start_Psalms 61:05_reference_end_ ?tfXJ<. xj\N@2$|n`RD6( c  b  a `  _ ^  ]  \  [  Z  Y - X ! W  V  U  T  S  R  Q  P  O  N M  L Ki JA IB H G # F  EB DA C B A @= ? > =  <  ;  :  9 8 7 6 5+ 4 3 2  1  0 / .  -  ,  +  *  ) ' (  '  &  %  ]]nthroatthroat\h ÞvÈl \f gorge \cme throat, physical organ \cmf gorge, organe physique _reference_start_Proverbs 23:02_reference_end_ m))Ytested (to be)tested (to be)\h ¥arAc \f afiné, être afiné \cme be purified by suffering \cmf être purifié par suffrance _reference_start_Daniel 12:10_reference_end_ _reference_start_Isaiah 1:25_reference_end_ _reference_start_Jeremiah 6:29_reference_end_ _reference_start_Jude 7:04_reference_end_ _reference_start_Psalms 66:10_reference_end_ \cme refine, prove a person true \cmf afiner, prouver la loyauté d'une personne _reference_start_2 Samuel 22:31_reference_end_ _reference_start_Daniel 11:35_reference_end_ _reference_start_Isaiah 1:25_reference_end_ _reference_start_Psalms 66:10_reference_end_ \cme test (a person's loyalty) \cmf tester ( la loyauté d'une personne) _reference_start_Jude 7:04_reference_end_ _reference_start_Psalms 105:19_reference_end_ _Exodus 17:16_reference_end_ \cme royal authority \cmf autorité royale _reference_start_1 Chronicles 7:12_reference_end_ _reference_start_1 Chronicles 17:14_reference_end_ _reference_start_1 Chronicles 22:10_reference_end_ _reference_start_1 Chronicles 28:05_reference_end_ _reference_start_1 Chronicles 29:23_reference_end_ _reference_start_1 Kings 1:1_reference_end_ _reference_start_1 Kings 2:04_reference_end_ _reference_start_1 Kings 2:12_reference_end_ _reference_start_1 Kings 2:24_reference_end_ _reference_start_1 Kings 2:33_reference_end_ _reference_start_1 Kings 2:45_reference_end_ _reference_start_1 Kings 3:06_reference_end_ _reference_start_1 Kings 5:19_reference_end_ _reference_start_1 Kings 8:20_reference_end_ _reference_start_1 Kings 8:25_reference_end_ _reference_start_1 Kings 9:05_reference_end_ _reference_start_1 Kings 10:09_reference_end_ _reference_start_1 Kings 16:11_reference_end_ _reference_start_2 Chronicles 7:18_reference_end_ _reference_start_2 Samuel 3:10_reference_end_ _reference_start_2 Samuel 7:13_reference_end_ _reference_start_2 Samuel 7:16_reference_end_ _reference_start_2 Samuel 14:09_reference_end_ _reference_start_Esther 1:02_reference_end_ _reference_start_Proverbs 29:14_reference_end_ \cme seat, place of honor of important person \cmf place d'honeur d'une personne importante _reference_start_1 Samuel 1:09_reference_end_ _reference_start_1 Samuel 2:08_reference_end_ _reference_start_1 Samuel 4:13_reference_end_ _reference_start_1 Samuel 4:18_reference_end_ _reference_start_Esther 3:01_reference_end_ \cme throne of king or ruler, or judge \cmf trône du roi ou chef, ou un juge _reference_start_1 Kings 2:19_reference_end_ _reference_start_1 Kings 7:07_reference_end_ _reference_start_1 Kings 10:18_reference_end_ _reference_start_1 Kings 22:10_reference_end_ _reference_start_Esther 5:01_reference_end_ _reference_start_Exodus 11:05_reference_end_ _reference_start_Exodus 12:29_reference_end_ _reference_start_Genesis 41:40_reference_end_ _reference_start_Jonah 3:06_reference_end_ VVothronethrone\h 'EÐsiÐk \f trône \cme God as heavenly king \cmf Dieu comme roi céleste _reference_start_1 Kings 22:19_reference_end_ _reference_start ?tfXJ<. xj\N@2$|n`RD6( "! !: ;          2 $         2 3 %&             !       ~ }! | { z  y  x  w  v u  t)( s  r  q p  o  n  m  l k  j  i  h  g f e  d  yypgtonguetongue\h €ôHAl \f langue \cme organ of speech; what is said, figurative sense \cmf organ de parole; ce qui est dit, sense figuré _reference_start_Proverbs 6:24_reference_end_ _reference_start_Proverbs 10:20_reference_end_ _reference_start_Proverbs 10:31_reference_end_ _reference_start_Proverbs 12:18_reference_end_ _reference_start_Proverbs 12:19_reference_end_ _reference_start_Proverbs 15:02_reference_end_ _reference_start_Proverbs 15:04_reference_end_ _reference_start_Proverbs 15:33_reference_end_ _reference_start_Proverbs 16:01_reference_end_ _reference_start_Proverbs 16:17_reference_end_ _reference_start_Proverbs 17:04_reference_end_ _reference_start_Proverbs 17:20_reference_end_ _reference_start_Proverbs 21:06_reference_end_ _reference_start_Proverbs 21:23_reference_end_ _reference_start_Proverbs 25:15_reference_end_ _reference_start_Proverbs 28:33_reference_end_ TdT r++Utransgress (to)transgress (to)\h vaHAKp \f pécher \cme nation rebel against nation \cmf une nation rebelle contre une nation _reference_start_1 Kings 12:19_reference_end_ _reference_start_2 Kings 1:01_reference_end_ _reference_start_2 Kings 3:05_reference_end_ _reference_start_2 Kings 3:07_reference_end_ \cme rebel against a person \cmf rebeller contre une personne _reference_start_Proverbs 18:19_reference_end_ \cme rebel against God \cmf rébeller contre Dieu _reference_start_Daniel 8:23_reference_end_ _reference_start_Proverbs 28:21_reference_end_ _reference_start_Psalms 37:38_reference_end_ _reference_start_Psalms 51:15_reference_end_ \cme rebel against God - its forgiveness \cmf rebeller contre Dieu, son pardon _reference_start_1 Kings 8:50_reference_end_q++mtongue, use thetongue, use the\h €aHAl \f langue, utiliser la \cme slander, to \cmf calomnier _reference_start_Proverbs 30:10_reference_end_ Psalms 5:11_reference_end_ _reference_start_Psalms 19:14_reference_end_ \cme rebellion agains a person \cmf rébellion contre une personne _reference_start_1 Samuel 24:12_reference_end_ _reference_start_1 Samuel 25:28_reference_end_ _reference_start_Exodus 22:08_reference_end_ _reference_start_Genesis 31:36_reference_end_ _reference_start_Genesis 50:17_reference_end_ _reference_start_Proverbs 10:12_reference_end_ _reference_start_Proverbs 10:19_reference_end_ _reference_start_Proverbs 12:13_reference_end_ _reference_start_Proverbs 17:09_reference_end_ _reference_start_Proverbs 28:24_reference_end_ _reference_start_Proverbs 29:06_reference_end_ _reference_start_Proverbs 29:16_reference_end_ _reference_start_Proverbs 29:22_reference_end_ _reference_start_Psalms 59:04_reference_end_ \cme rebellion against God \cmf rébellion contre Dieu _reference_start_Isaiah 58:01_reference_end_ _reference_start_Micah 1:05_reference_end_ _reference_start_Psalms 36:02_reference_end_ _reference_start_Psalms 51:05_reference_end_ \cme rebellion against God - its forgiveness \cmf rébellion contre Dieu, son pardon _reference_start_1 Kings 8:50_reference_end_ _reference_start_Exodus 34:07_reference_end_ _reference_start_Leviticus 16:16_reference_end_ _reference_start_Numbers 14:18_reference_end_ _reference_start_Proverbs 19:11_reference_end_ _reference_start_Psalms 32:01_reference_end_ _reference_start_Psalms 39:09_reference_end_ _reference_start_Psalms 51:03_reference_end_ _reference_start_Psalms 65:04_reference_end_ _reference_start_Psalms 32:05_reference_end_ \cme rebellion against God - its punishment \cmf rébellion contre Dieu, sa punition _reference_start_Daniel 8:12_reference_end_ _reference_start_Daniel 8:13_reference_end_ _reference_start_Daniel 9:24_reference_end_ _reference_start_Exodus 23:21_reference_end_ _reference_start_Joshua 24:19_reference_end_ \cme rebellion of nation against nation \cmf rébellion de nation contre nation _reference_start_Amos 1:03_reference_end_ _reference_start_Proverbs 28:02_reference_end_ g tw%%1truth, righttruth, right\h XûHÙq \f vérité \cme righteousness of God \cmf vérité - la justice de Dieu _reference_start_Daniel 4:34_reference_end_ \cme what is true \cmf ce qui est vrai _reference_start_Daniel 2:47_reference_end_5v!!;trust (to)trust (to)\h xaXAÐb \f croire, avoir confier en \cme be confident \cmf avoire confiance (en soit) _reference_start_Proverbs 14:16_reference_end_ _reference_start_Pr @u''Etrust in (to)trust in (to)\h ŠaxÙr \f confiance, avoir confieance en \cme trust in someone or something \cmf avoir confiance en qqn/qqch _reference_start_Daniel 3:28_reference_end_Rt trusttrust\h xaXübim \f confiance \cme object of confidence, of trust \cmf object de confiance, de croyance _reference_start_Proverbs 14:26_reference_end_ _reference_start_Psalms 71:05_reference_end_ s''Wtransgressiontransgression\h vaHeKp \f iniquité, péché \cme guilt of transgression \cmf culpabilité de rébellion _reference_start_ ?tfXJ<. xj\N@2$|n`RD6( a ` _ ^ ]A \  [ Z Y X W V U  T  S  R  Q  P + O  N/ M" L> K8 J8 I8 H4 G4 F E D C B A @4 ?  > = <  ; : 9 8 7G 6 5 4 3 2 1  0 / .  -A ,3 +' *  ) ( ' &" % 2 $3 #$overbs 28:01_reference_end_ \cme rely on God, someone or something \cmf faire confiance en Dieu, en qqn ou en qqch _reference_start_2 Chronicles 32:10_reference_end_ _reference_start_2 Kings 18:21_reference_end_ _reference_start_Proverbs 28:25_reference_end_ _reference_start_Psalms 31:15_reference_end_ \cme trust in God, someone or something \cmf en Dieu, en qqn or en qqch _reference_start_1 Chronicles 5:20_reference_end_ _reference_start_Deuteronomy 28:52_reference_end_ _reference_start_Isaiah 26:03_reference_end_ _reference_start_Isaiah 26:04_reference_end_ _reference_start_Proverbs 3:05_reference_end_ _reference_start_Proverbs 28:26_reference_end_ _reference_start_Proverbs 31:11_reference_end_ _reference_start_Psalms 32:10_reference_end_ _reference_start_Psalms 52:09_reference_end_ _reference_start_Psalms 52:10_reference_end_ _reference_start_Psalms 56:04_reference_end_ _reference_start_Psalms 56:05_reference_end_ _reference_start_Psalms 56:12_reference_end_ _reference_start_Psalms 62:09_reference_end_carter des commandements de Dieu (BDB-Q1.) _reference_start_1 Kings 15:05_reference_end_ _reference_start_1 Kings 22:43_reference_end_ _reference_start_1 Samuel 6:12_reference_end_ _reference_start_1 Samuel 12:20_reference_end_ _reference_start_1 Samuel 12:21_reference_end_ _reference_start_2 Samuel 2:22_reference_end_ _reference_start_2 Samuel 22:23_reference_end_ _reference_start_Daniel 9:11_reference_end_ _reference_start_Deuteronomy 5:29_reference_end_ _reference_start_Deuteronomy 7:04_reference_end_ _reference_start_Deuteronomy 9:12_reference_end_ _reference_start_Deuteronomy 28:14_reference_end_ _reference_start_Deuteronomy 31:29_reference_end_ _reference_start_Exodus 32:08_reference_end_ _reference_start_Jude 2:17_reference_end_ _reference_start_Proverbs 3:07_reference_end_ _reference_start_Proverbs 28:09_reference_end_ _reference_start_Psalms 14:03_reference_end_ _reference_start_Psalms 18:23_reference_end_ _reference_start_Psalms 34:15_reference_end_ _reference_start_Psalms 119:102_reference_end_ Ryuncleanunclean\h hA'ümuX \f impur \cme defilement of temple by idols, etc \cmf impurté dans le temple à cause des idols, etc. _reference_start_2 Chronicles 29:16_reference_end_ \cme physical ritual uncleanness \cmf impurté physique rituel _reference_start_2 Samuel 11:04_reference_end_ _reference_start_Leviticus 5:03_reference_end_ _reference_start_Leviticus 7:20_reference_end_ _reference_start_Leviticus 13:08_reference_end_ _reference_start_Leviticus 18:19_reference_end_ \cme ritually unclean \cmf impur rituellement _reference_start_1 Samuel 20:26_reference_end_ _reference_start_Deuteronomy 23:11_reference_end_ _reference_start_Genesis 7:02_reference_end_ _reference_start_Genesis 7:08_reference_end_hx++ turn aside (to)turn aside (to)\h rCws \f s'écarter \cme turn aside from commands of God \cmf s'é ?tfXJ<. xj\N@2$|n`RD6(      !       + +                           ~ }" |" {" zj' y#" x w v u t sO r q$ p o n m l k j  i h  g f e  d cwf b"_reference_end_ \cme defile God's house or people by idols, etc. \cmf rendre la maison de Dieu impurite par des idols, etc. _reference_start_2 Chronicles 36:14_reference_end_ _reference_start_Leviticus 18:30_reference_end_ _reference_start_Psalms 79:01_reference_end_ \cme defile the land and people of Isael by immoral actions \cmf rendre le pays ou peuple d'Israël impurs par actions imorales _reference_start_Deuteronomy 24:04_reference_end_ _reference_start_Leviticus 18:24_reference_end_ _reference_start_Leviticus 18:25_reference_end_ _reference_start_Leviticus 18:27_reference_end_ _reference_start_Leviticus 18:28_reference_end_ _reference_start_Numbers 35:34_reference_end_ _reference_start_Psalms 106:39_reference_end_ \cme immoral sexual impurity \cmf impureté moral sexuel _reference_start_Genesis 34:05_reference_end_ _reference_start_Genesis 34:13_reference_end_ _reference_start_Genesis 34:27_reference_end_ _reference_start_Leviticus 18:20_reference_end_ _reference_start_Leviticus 18:23_reference_end_ z++wunclean (to be)unclean (to be)\h 'EmAX \f impur, être impur \cme be or make physically ritually unclean \cmf causer ou avoir impurités physiques rituels _reference_start_Leviticus 5:03_reference_end_ _reference_start_Leviticus 15:18_reference_end_ _reference_start_Numbers 6:09 ${'' understandingunderstanding\h hÃnyiÐb \f comprehention \cme faculty of understanding \cmf la faculté de comprendre _reference_start_Proverbs 3:05_reference_end_ _reference_start_Proverbs 4:05_reference_end_ _reference_start_Proverbs 4:06_reference_end_ _reference_start_Proverbs 16:16_reference_end_ _reference_start_Proverbs 23:04_reference_end_ _reference_start_Proverbs 30:02_reference_end_ \cme personification of understanding \cmf personification de comprehention _reference_start_Proverbs 2:08_reference_end_ _reference_start_Proverbs 7:04_reference_end_ _reference_start_Proverbs 8:14_reference_end_ \cme persuasiveness \cmf force de persuasion _reference_start_Proverbs 7:21_reference_end_ _reference_start_Proverbs 16:21_reference_end_ _reference_start_Proverbs 16:23_reference_end_ AA;|!!Gunfaithfulunfaithful\h lavAm. \f infidèle \cme act unfaithfully towards a person \cmf agir sans fidélité contre une personne _reference_start_Proverbs 16:10_reference_end_ \cme act unfaithfully towards God \cmf agir sans fidélité contre Dieu _reference_start_1 Chronicles 2:07_reference_end_ _reference_start_1 Chronicles 5:25_reference_end_ _reference_start_1 Chronicles 10:13_reference_end_ _reference_start_Daniel 9:07_reference_end_ _reference_start_Joshua 7:01_reference_end_ _reference_start_Leviticus 5:15_reference_end_ \cme unfaithfulness in marriage \cmf infidélité dans un marriage _reference_start_Numbers 5:12_reference_end_ _reference_start_Numbers 5:27_reference_end_ b}11uunfaithful (to be)unfaithful (to be)\h tûnÌz \f infidèle, être infidèle \cme worship other gods (figure of sexual unfaithfulness) \cmf adorer autres dieux (figure de infidélité sexuel) _reference_start_Ezekiel 23:27_reference_end_ _reference_start_Ezekiel 43:07_reference_end_ _reference_start_Ezekiel 43:09_reference_end_ _reference_start_Hosea 4:11_reference_end_ _reference_start_Hosea 6:10_reference_end_ _reference_start_Jeremiah 3:02_reference_end_ _reference_start_Jeremiah 3:09_reference_end_ _reference_start_Jeremiah 13:27_reference_end_ _reference_start_Numbers 14:33_reference_end_ G~557unholy (to be, make)unholy (to be, make)\h lalAx. \f souiller \cme damage God's reputation \cmf endomager la réputation de Dieu _reference_start_Ezekiel 13:19_reference_end_ _reference_start_Leviticus 18:21_reference_end_ \cme dishonor, insult \cmf déshonorer, insulter _reference_start_1 Chronicles 5:01_reference_end_ _reference_start_Genesis 49:04_reference_end_ _reference_start_Isaiah 43:28_reference_end_ _reference_start_Leviticus 19:29_reference_end_ \cme make unholy, defile \cmf faire devenir impure, souiller _reference_start_Daniel 11:31_reference_end_ _reference_start_Exodus 20:25_reference_end_ _reference_start_Exodus 31:14_reference_end_ _reference_start_Jeremiah 16:18_reference_end_ _reference_start_Psalms 74:07_reference_end_ \cme make use of \cmf utiliser _reference_start_Deuteronomy 28:30_reference_end_ ?tfXJ<. wi[M?1#{m_QC5' _ ^ ] \ [ Z Y X W  V  U T . S  R Q P O N M L K  J I H  G F E D C B A @ ? > = < ; : 9 8 7 6 5  4R 3  2 1 0 / . - , + *  ) (J ' & % $  # "+ !1e_start_Proverbs 21:02_reference_end_ \cme upright, just \cmf droit, justse _reference_start_Proverbs 2:07_reference_end_ _reference_start_Proverbs 2:21_reference_end_ _reference_start_Proverbs 3:11_reference_end_ _reference_start_Proverbs 3:32_reference_end_ _reference_start_Proverbs 8:09_reference_end_ _reference_start_Proverbs 11:03_reference_end_ _reference_start_Proverbs 1106:1_reference_end_ _reference_start_Proverbs 12:06_reference_end_ _reference_start_Proverbs 14:09_reference_end_ _reference_start_Proverbs 14:11_reference_end_ _reference_start_Proverbs 15:08_reference_end_ _reference_start_Proverbs 15:19_reference_end_ _reference_start_Proverbs 16:07_reference_end_ _reference_start_Proverbs 16:13_reference_end_ _reference_start_Proverbs 20:11_reference_end_ _reference_start_Proverbs 21:08_reference_end_ _reference_start_Proverbs 21:18_reference_end_ _reference_start_Proverbs 21:29_reference_end_ _reference_start_Proverbs 28:10_reference_end_ Pro29.10 _reference_start_Proverbs 29:27_reference_end_ 7 7O##kuprightnessuprightness\h rAHyEm \f droiture \cme equity, moral uprightness \cmf équité, droiture morale _reference_start_Proverbs 1:03_reference_end_ _reference_start_Proverbs 2:09_reference_end_ _reference_start_Proverbs 8:06_reference_end_ _reference_start_Proverbs 23:16_reference_end_ \cme moral straightness, righteousness \cmf droiture morale, justesse _reference_start_Proverbs 2:13_reference_end_ _reference_start_Proverbs 4:11_reference_end_ _reference_start_Proverbs 11:24_reference_end_ _reference_start_Proverbs 14:02_reference_end_ _reference_start_Proverbs 17:26_reference_end_ \cme what is right, what is due \cmf ce qui est juste, ce qui est du _reference_start_Proverbs 11:24_reference_end_j1uprightupright\h rAHAy \f droiture \cme right, pleasing \cmf droit, agréable _reference_start_Proverbs 12:15_reference_end_ _reference_start_Proverbs 14:12_reference_end_ _reference_start_Proverbs 16:25_reference_end_ _referenc >>>avoicevoice\h lOwq \f voie \cme speech, what is said; figurative sense \cmf parole, ce qui est dit; sense figuré _reference_start_Proverbs 1:20_reference_end_ _reference_start_Proverbs 2:03_reference_end_ _reference_start_Proverbs 5:13_reference_end_ _reference_start_Proverbs 8:01_reference_end_ _reference_start_Proverbs 8:04_reference_end_ _reference_start_Proverbs 26:25_reference_end_ _reference_start_Proverbs 27:14_reference_end_ ]]Qwway, roadway, road\h ªåråÐd \f voie, chemin \cme action, undertaking; figurative sense \c 0Iwarnwarn\h dûv \f avertir \cme command, prohibit \cmf commander, proscrir _reference_start_2 Kings 17:03_reference_end_ _reference_start_Deuteronomy 32:46_reference_end_ _reference_start_Exodus 19:23_reference_end_ _reference_start_Jeremiah 11:07_reference_end_ \cme obey \cmf obéir _reference_start_Jeremiah 11:07_reference_end_ \cme swear in, desigante as a witness \cmf jurer, désignier qqn comme témoin _reference_start_Deuteronomy 4:26_reference_end_ _reference_start_Isaiah 8:02_reference_end_ _reference_start_Jeremiah 32:10_reference_end_ mf action, entreprise; sense figuré _reference_start_Proverbs 1:15_reference_end_ _reference_start_Proverbs 1:31_reference_end_ _reference_start_Proverbs 2:08_reference_end_ _reference_start_Proverbs 2:12_reference_end_ _reference_start_Proverbs 2:13_reference_end_ _reference_start_Proverbs 2:20_reference_end_ _reference_start_Proverbs 3:06_reference_end_ _reference_start_Proverbs 3:13_reference_end_ _reference_start_Proverbs 3:17_reference_end_ _reference_start_Proverbs 3:31_reference_end_ _reference_start_Proverbs 4:11_reference_end_ _reference_start_Proverbs 4:19_reference_end_ _reference_start_Proverbs 6:06_reference_end_ _reference_start_Proverbs 6:23_reference_end_ _reference_start_Proverbs 7:25_reference_end_ _reference_start_Proverbs 8:13_reference_end_ _reference_start_Proverbs 8:22_reference_end_ _reference_start_Proverbs 8:22_reference_end_ _reference_start_Proverbs 9:06_reference_end_ _reference_start_Proverbs 10:29_reference_end_ _reference_start_Proverbs 11:03_reference_end_ _reference_star t_Proverbs 11:20_reference_end_ _reference_start_Proverbs 12:15_reference_end_ _reference_start_Proverbs 12:28_reference_end_ _reference_start_Proverbs 13:06_reference_end_ _reference_start_Proverbs 13:15_reference_end_ _reference_start_Proverbs 14:12_reference_end_ _reference_start_Proverbs 14:14_reference_end_ _reference_start_Proverbs 15:09_reference_end_ _reference_start_Proverbs 15:29_reference_end_ _reference_start_Proverbs 16:25_reference_end_ _reference_start_Proverbs 16:29_reference_end_ _reference_start_Proverbs 16:31_reference_end_ _reference_start_Proverbs 20:24_reference_end_ _reference_start_Proverbs 21:08_reference_end_ _reference_start_Proverbs 22:05_reference_end_ _reference_start_Proverbs 23:26_reference_end_ _reference_start_Proverbs 28:06_reference_end_ _reference_start_Proverbs 28:10_reference_end_ _reference_start_Proverbs 28:18_reference_end_ _reference_start_Proverbs 29:27_reference_end_ _reference_start_Proverbs 31:03_reference_end_ \cme duty; figurative sense \cmf obligation, devoir; sense figuré _reference_start_Proverbs 12:19_reference_end_ _reference_start_Proverbs 21:16_reference_end_ _reference_start_Proverbs 22:06_reference_end_ \cme moral action or character; figurative sense \cmf action morale or caractère moral; sense figuré _reference_start_Proverbs 4:26_reference_end_ _reference_start_Proverbs 5:21_reference_end_ _reference_start_Proverbs 1:1_reference_end_ _reference_start_Proverbs 10:09_reference_end_ _reference_start_Proverbs 14:02_reference_end_ _reference_start_Proverbs 14:08_reference_end_ _reference_start_Proverbs 14:12_reference_end_ _reference_start_Proverbs 16:02_reference_end_ _reference_start_Proverbs 16:07_reference_end_ _reference_start_Proverbs 16:09_reference_end_ _reference_start_Proverbs 16:17_reference_end_ _reference_start_Proverbs 16:25_reference_end_ _reference_start_Proverbs 19:03_reference_end_ _reference_start_Proverbs 19:16_reference_end_ _reference_start_Proverbs 21:02_reference_end_ _reference_start_Proverbs 21:29_reference_end_ ?tfXJ<. xj\N@2$|n`RD6(         %  /                           ~ } | { z y x w v u t  s  r  q  p  o  n  m  l k j i h g f e d c b a ` _ _reference_start_Daniel 12:10_reference_end_ _reference_start_Ecclesiastes 9:02_reference_end_ _reference_start_Proverbs 11:11_reference_end_ _reference_start_Proverbs 16:12_reference_end_ _reference_start_Proverbs 24:19_reference_end_ _reference_start_Proverbs 24:20_reference_end_ _reference_start_Proverbs 28:01_reference_end_ _reference_start_Proverbs 29:16_reference_end_ _reference_start_Psalms 1:04_reference_end_ _reference_start_Psalms 17:09_reference_end_ _reference_start_Psalms 18:22_reference_end_ _reference_start_Psalms 34:22_reference_end_ _reference_start_Psalms 139:19_reference_end_ _reference_start_Psalms 141:06_reference_end_ \cme condem as guilty, morally and religiouslly \cmf condamné comme coupable, moralement, réligeusement _reference_start_1 Kings 8:32_reference_end_ _reference_start_Proverbs 12:02_reference_end_ _reference_start_Psalms 1:05_reference_end_ _reference_start_Psalms 3:08_reference_end_ \cme condemn as guilty, civil court \cmf condamné comme coupable, cour civil _refer ence_start_Exodus 22:08_reference_end_ _reference_start_Psalms 94:21_reference_end_ \cme ethical evil; one who does evil \cmf mal moralement; celui qui fait mal _reference_start_Proverbs 6:12_reference_end_ _reference_start_Proverbs 6:18_reference_end_ _reference_start_Proverbs 10:29_reference_end_ _reference_start_Proverbs 11:07_reference_end_ _reference_start_Proverbs 17:04_reference_end_ _reference_start_Proverbs 19:28_reference_end_ _reference_start_Proverbs 21:15_reference_end_ _reference_start_Proverbs 30:20_reference_end_ _reference_start_Psalms 5:06_reference_end_ \cme guilty of a crime \cmf être coupable d'un crime _reference_start_1 Samuel 24:14_reference_end_ _reference_start_1 Samuel 24:14_reference_end_ _reference_start_2 Samuel 4:11_reference_end_ _reference_start_Exodus 2:13_reference_end_ _reference_start_Exodus 23:01_reference_end_ _reference_start_Exodus 23:07_reference_end_ _reference_start_Genesis 18:23_reference_end_ _reference_start_Genesis 18:25_reference_end_ _reference_start_Prov erbs 3:33_reference_end_ _reference_start_Proverbs 4:17_reference_end_ _reference_start_Proverbs 10:02_reference_end_ _reference_start_Proverbs 12:03_reference_end_ _reference_start_Proverbs 16:02_reference_end_ _reference_start_Proverbs 17:13_reference_end_ _reference_start_Proverbs 17:23_reference_end_ _reference_start_Proverbs 18:05_reference_end_ _reference_start_Proverbs 20:26_reference_end_ _reference_start_Proverbs 24:24_reference_end_ _reference_start_Proverbs 25:05_reference_end_ _reference_start_Proverbs 28:04_reference_end_ _reference_start_Proverbs 28:15_reference_end_ _reference_start_Proverbs 29:02_reference_end_ _reference_start_Proverbs 29:12_reference_end_ \cme guilty of sin \cmf coupable du péché _reference_start_Numbers 16:26_reference_end_ _reference_start_Proverbs 4:19_reference_end_ _reference_start_Proverbs 9:07_reference_end_ _reference_start_Proverbs 10:03_reference_end_ _reference_start_Proverbs 11:07_reference_end_ _reference_start_Proverbs 12:26_reference_end_ _reference_star t_Proverbs 15:09_reference_end_ _reference_start_Proverbs 21:29_reference_end_ _reference_start_Psalms 1:06_reference_end_ _reference_start_Psalms 32:10_reference_end_ _reference_start_Psalms 119:053_reference_end_ _reference_start_Psalms 119:119_reference_end_ \cme hostile to God \cmf hostile contre Dieu _reference_start_2 Samuel 22:22_reference_end_ _reference_start_Daniel 12:10_reference_end_ _reference_start_Ecclesiastes 8:13_reference_end_ _reference_start_Exodus 9:27_reference_end_ _reference_start_Proverbs 14:11_reference_end_ _reference_start_Proverbs 15:29_reference_end_ _reference_start_Psalms 7:10_reference_end_ _reference_start_Psalms 9:06_reference_end_ _reference_start_Psalms 9:17_reference_end_ _reference_start_Psalms 9:18_reference_end_ _reference_start_Psalms 17:13_reference_end_ \cme idolatry \cmf idolatrie _reference_start_1 Samuel 15:23_reference_end_ \cme trouble, sorrow \cmf malheur, chagrin _reference_start_Deuteronomy 26:14_reference_end_ _reference_start_Genesis 35:18_reference_end_ _reference_start_Proverbs 12:21_reference_end_ _reference_start_Proverbs 22:08_reference_end_ _reference_start_Proverbs 22:08_reference_end_ _reference_start_Psalms 7:15_reference_end_ _reference_start_Psalms 10:07_reference_end_ _reference_start_Psalms 55:11_reference_end_ _reference_start_Psalms 90:10_reference_end_ \cme unethical relations \cmf rélations immorals _reference_start_Proverbs 8:07_reference_end_ _reference_start_Proverbs 11:18_reference_end_ _reference_start_Proverbs 12:21_reference_end_ _reference_start_Proverbs 15:28_reference_end_ _reference_start_Proverbs 19:28_reference_end_ _reference_start_Proverbs 29:07_reference_end_ _reference_start_Psalms 1:01_reference_end_ _reference_start_Psalms 5:05_reference_end_ _reference_start_Psalms 28:03_reference_end_ _reference_start_Psalms 71:04_reference_end_ \cme wickedness, sin \cmf péché, mechanceté _reference_start_Ecclesiastes 3:16_reference_end_ _reference_start_Proverbs 10:04_reference_end_ _reference_start_Psalms 45:08_reference_end_ ;!!Gwickednesswickedness\h vaHAr / vAHAr \f méchanceté \cme act wickedly \cmf agir avec méchanceté _reference_start_1 Kings 8:47_reference_end_ _reference_start_2 Chronicles 6:37_reference_end_ _reference_start_Daniel 9:05_reference_end_ _reference_start_Daniel 9:15_reference_end_ _reference_start_Daniel 11:32_reference_end ?teVH:,vhZL>0"zl^PB4& ]  \ww [w5 Z Y X W V  U  T  S  R Q P O N M L K J I H G F E  D  C B! A @ ? > = <  ;  :  9 8 7 6 5 4  3  2 1 0^ / . - ,  +  * ) (" ' & % $ # " !   >N x  '.5<CJQX_fmt{qjc\UN ܂ قY ӂ Ђ[ ˂ ɂ]  T  łR ʂ тP ڂ ۂN ߂ 䂸L 点 J H  F  D  B  @  &> -} 5< 6{ :: Dy E8 Hw P6 Qu c4 ds e2 fq g0 jo m. {m |, }k * i ( g & e $ c " a _ ‚ ?tfXJ<. xj\N@2${m_QC5'                     w            ~- }  | {G z y x w v u t  s  r qZ p7 o  n m l k  j# i h  g f  e  d  c b a `  _ ^ ==?--7wickedness, evilwickedness, evil\h hAGmÇz \f méchanceté, infamie \cme acts that are repugnant to God \cmf acts que Dieu haïse, qui lui sont répugnants _reference_start_Hosea 6:09_reference_end_ _reference_start_Isaiah 32:07_reference_end_ _reference_start_Leviticus 18:17_reference_end_ _reference_start_Leviticus 19:29_reference_end_ _reference_start_Leviticus 20:14_reference_end_ _reference_start_Psalms 26:10_reference_end_ \cme plans that are evil, sinful \cmf plans qui sont mauvais, scandaleux _reference_start_Proverbs 10:23_reference_end_ _reference_start_Proverbs 21:27_reference_end_ _reference_start_Proverbs 24:09_reference_end_ _reference_start_Psalms 119:150_reference_end_ ence_end_ _reference_start_Proverbs 2:02_reference_end_ _reference_start_Proverbs 2:10_reference_end_ _reference_start_Proverbs 3:13_reference_end_ Pro10.23 _reference_start_Proverbs 4:05_reference_end_ _reference_start_Proverbs 4:07_reference_end_ _reference_start_Proverbs 4:07_reference_end_ _reference_start_Proverbs 4:11_reference_end_ _reference_start_Proverbs 5:01_reference_end_ _reference_start_Proverbs 8:11_reference_end_ _reference_start_Proverbs 9:10_reference_end_ _reference_start_Proverbs 10:13_reference_end_ _reference_start_Proverbs 13:10_reference_end_ _reference_start_Proverbs 14:01_reference_end_ _reference_start_Proverbs 14:06_reference_end_ _reference_start_Proverbs 14:08_reference_end_ _reference_start_Proverbs 14:33_reference_end_ _reference_start_Proverbs 15:33_reference_end_ _reference_start_Proverbs 16:16_reference_end_ _reference_start_Proverbs 17:16_reference_end_ _reference_start_Proverbs 17:24_reference_end_ _reference_start_Proverbs 18:04_reference_end_ _reference_start_Proverbs 21:30_reference_end_ _reference_start_Proverbs 23:23_reference_end_ _reference_start_Proverbs 24:03_reference_end_ Pro28.26 _reference_start_Proverbs 24:07_reference_end_ _reference_start_Proverbs 24:14_reference_end_ _reference_start_Proverbs 29:03_reference_end_ _reference_start_Proverbs 29:15_reference_end_ _reference_start_Proverbs 30:03_reference_end_ _reference_start_Proverbs 31:25_reference_end_ \cme God's wisdom personified \cmf la sagesse de Dieu personnifier _reference_start_Proverbs 1:20_reference_end_ _reference_start_Proverbs 1:23_reference_end_ _reference_start_Proverbs 8:01_reference_end_ _reference_start_Proverbs 8:05_reference_end_ _reference_start_Proverbs 8:11_reference_end_ _reference_start_Proverbs 8:12_reference_end_ _reference_start_Proverbs 8:14_reference_end_ _reference_start_Proverbs 8:22_reference_end_ _reference_start_Proverbs 9:01_reference_end_ \cme wisdom of God \cmf sagesse de Dieu _reference_start_Proverbs 2:06_reference_end_ _reference_start_Proverbs 3:19_reference_end_ !!]wise (adj)wise (adj)\h £AkAx \f sage (adj) \cme ethically and religiously wise, fear God \cmf sage moralement et réligieusement, craindre Dieu _reference_start_Proverbs 1:05_reference_end_ _reference_start_Proverbs 1:06_reference_end_ _reference_start_Proverbs 3:35_reference_end_ _reference_start_Proverbs 9:08_reference_end_ _reference_start_Proverbs 9:09_reference_end_ _reference_st ѓYwisdomwisdom\h hÃCyiHûGt \f sagesse \cme abiding success, sound wisdom \cmf success qui dure, sagesse justse _reference_start_Proverbs 2:07_reference_end_ _reference_start_Proverbs 3:21_reference_end_ _reference_start_Proverbs 8:14_reference_end_ _reference_start_Proverbs 18:01_reference_end_ \cme ethical and religious wisdom, fear God \cmf sagesse morale et religieuse, craindre Dieu _reference_start_Proverbs 1:02_reference_end_ _reference_start_Proverbs 1:07_refer ?tfXJ<. xj\N@2$|n`RD6( [ Z Y  X W V U T S R Q P O N M L K J I H G F E  D  C  B  A  @  ?  >  =  < ;  :# 9 8 7 6 5  4 3 2 1 0 / . - , + * ) ( ' & % $ # " !  ! !  art_Proverbs 10:01_reference_end_ _reference_start_Proverbs 10:08_reference_end_ _reference_start_Proverbs 10:14_reference_end_ _reference_start_Proverbs 11:30_reference_end_ _reference_start_Proverbs 12:15_reference_end_ _reference_start_Proverbs 12:18_reference_end_ _reference_start_Proverbs 13:01_reference_end_ _reference_start_Proverbs 13:14_reference_end_ _reference_start_Proverbs 13:20_reference_end_ _reference_start_Proverbs 14:03_reference_end_ _reference_start_Proverbs 14:16_reference_end_ _reference_start_Proverbs 14:24_reference_end_ _reference_start_Proverbs 15:02_reference_end_ _reference_start_Proverbs 15:07_reference_end_ _reference_start_Proverbs 15:12_reference_end_ _reference_start_Proverbs 15:20_reference_end_ _reference_start_Proverbs 15:31_reference_end_ _reference_start_Proverbs 16:21_reference_end_ _reference_start_Proverbs 16:23_reference_end_ _reference_start_Proverbs 17:28_reference_end_ _reference_start_Proverbs 18:15_reference_end_ _reference_start_Proverbs 21:11_reference_end_ _reference_start_Proverbs 21:20_reference_end_ _reference_start_Proverbs 21:22_reference_end_ _reference_start_Proverbs 22:17_reference_end_ _reference_start_Proverbs 23:24_reference_end_ _reference_start_Proverbs 24:05_reference_end_ _reference_start_Proverbs 25:12_reference_end_ \cme prudent \cmf prudent _reference_start_Proverbs 11:29_reference_end_ _reference_start_Proverbs 16:14_reference_end_ _reference_start_Proverbs 29:08_reference_end_ _reference_start_Proverbs 29:09_reference_end_ _reference_start_Proverbs 29:11_reference_end_ \cme shrewd, crafty, cunning \cmf sagace, astucieux, rusé _reference_start_Proverbs 3:07_reference_end_ _reference_start_Proverbs 26:05_reference_end_ _reference_start_Proverbs 26:12_reference_end_ _reference_start_Proverbs 26:16_reference_end_ _reference_start_Proverbs 28:11_reference_end_ _reference_start_Proverbs 30:24_reference_end_ \cme wise in administration of government \cmf sage dans l'administration du gouvernement _reference_start_Proverbs 20:26_reference_end_ ?tfXJ<. xj\N@2$zl^PB4&                                              ,      M  G   ~  }  |   {  z  y  x  w ! v  u  t ; s  r  q  p o n m l k j i  h g f! e d c b a ` _ ^ ] \ xx { wonderwonder\h 'AlAKp \f merveille \cme extaordinary, unusual \cmf exceptionel, étrange _reference_start_2 Chronicles 2:08_reference_e Յk+wise (be)wise (be)\h £akAx \f sage (être) \cme be wise, act wisely \cmf avoir de la sagesse, agir avec sagesse _reference_start_Proverbs 6:06_reference_end_ _reference_start_Proverbs 8:33_reference_end_ _reference_start_Proverbs 9:09_reference_end_ _reference_start_Proverbs 9:12_reference_end_ _reference_start_Proverbs 13:20_reference_end_ _reference_start_Proverbs 19:20_reference_end_ _reference_start_Proverbs 20:01_reference_end_ _reference_start_Proverbs 21:11_reference_end_ _reference_start_Proverbs 23:15_reference_end_ _reference_start_Proverbs 23:19_reference_end_ _reference_start_Proverbs 27:11_reference_end_ \cme embodiment of wisdom \cmf la personnification de la sagesse _reference_start_Proverbs 30:24_reference_end_nd_ _reference_start_2 Samuel 1:26_reference_end_ _reference_start_Daniel 8:24_reference_end_ _reference_start_Deuteronomy 28:59_reference_end_ _reference_start_Proverbs 30:18_reference_end_ \cme something showing the power of God \cmf qqch qui montre le pouvoir de Dieu _reference_start_Daniel 3:32_reference_end_ _reference_start_Daniel 3:33_reference_end_ _reference_start_Daniel 6:28_reference_end_ \cme wonder of God's judgements and redemption \cmf le merveille des jugements et la rédemption de Dieu _reference_start_1 Chronicles 16:09_reference_end_ _reference_start_1 Chronicles 16:12_reference_end_ _reference_start_1 Chronicles 16:24_reference_end_ _reference_start_Daniel 12:06_reference_end_ _reference_start_Exodus 3:20_reference_end_ _reference_start_Exodus 15:11_reference_end_ _reference_start_Joshua 3:05_reference_end_ _reference_start_Psalms 71:17_reference_end_ _reference_start_Psalms 77:15_reference_end_ _reference_start_Psalms 136:04_reference_end_ _reference_start_Psalms 139:14_reference_end_ start_Proverbs 25:02_reference_end_ \cme speech act \cmf parole _reference_start_Proverbs 1:02_reference_end_ _reference_start_Proverbs 1:06_reference_end_ _reference_start_Proverbs 1:21_reference_end_ _reference_start_Proverbs 1:23_reference_end_ _reference_start_Proverbs 2:01_reference_end_ _reference_start_Proverbs 2:16_reference_end_ _reference_start_Proverbs 4:05_reference_end_ _reference_start_Proverbs 4:10_reference_end_ _reference_start_Proverbs 4:20_reference_end_ _reference_start_Proverbs 5:07_reference_end_ _reference_start_Proverbs 6:02_reference_end_ _reference_start_Proverbs 7:01_reference_end_ _reference_start_Proverbs 7:05_reference_end_ _reference_start_Proverbs 7:24_reference_end_ _reference_start_Proverbs 8:08_reference_end_ _reference_start_Proverbs 10:19_reference_end_ _reference_start_Proverbs 12:06_reference_end_ _reference_start_Proverbs 12:25_reference_end_ _reference_start_Proverbs 13:05_reference_end_ _reference_start_Proverbs 14:15_reference_end_ _reference_start_Proverbs 14:23_reference_end_ _reference_start_Proverbs 15:01_reference_end_ _reference_start_Proverbs 15:23_reference_end_ _reference_start_Proverbs 15:26_reference_end_ _reference_start_Proverbs 16:24_reference_end_ _reference_start_Proverbs 17:27_reference_end_ Pro19.07 _reference_start_Proverbs 18:04_reference_end_ _reference_start_Proverbs 18:08_reference_end_ _reference_start_Proverbs 22:12_reference_end_ _reference_start_Proverbs 22:17_reference_end_ _reference_start_Proverbs 22:21_reference_end_ Pro23.12 _reference_start_Proverbs 23:08_reference_end_ _reference_start_Proverbs 24:16_reference_end_ _reference_start_Proverbs 25:11_reference_end_ _reference_start_Proverbs 26:06_reference_end_ _reference_start_Proverbs 26:22_reference_end_ _reference_start_Proverbs 27:11_reference_end_ _reference_start_Proverbs 29:12_reference_end_ _reference_start_Proverbs 29:19_reference_end_ _reference_start_Proverbs 29:20_reference_end_ _reference_start_Proverbs 30:06_reference_end_ _reference_start_Proverbs 30:08_reference_end_ PPe 3 workwork\h hßdôbáv \f travail \cme worship of God by sacrifice, cult of temple and tabernacl ڔ/ G wordword\h rAbßÐd \f parole \cme advice, counsel, teaching \cmf avis, conseil, enseignement _reference_start_2 Samuel 19:44_reference_end_ _reference_start_Esther 5:05_reference_end_ _reference_start_Proverbs 4:04_reference_end_ _reference_start_Proverbs 4:20_reference_end_ _reference_start_Proverbs 13:13_reference_end_ \cme matter, affaire \cmf affaire _reference_start_Proverbs 11:13_reference_end_ _reference_start_Proverbs 16:20_reference_end_ _reference_start_Proverbs 17:09_reference_end_ _reference_start_Proverbs 18:13_reference_end_ _reference_ ?tfXJ<. xj\N@2$|n`RD6( Y 8 X 2 W 2 V  U d T _ S E R * Q  P   O  N  ( M  & L   K  J   I   H   G  F  E  D  C  B  A  @  ?  >  =  <  ;  : 9 ! 8  7  6  5  4  3  2  1  0  /  .  -  ,  +  *  )  (  '  &  %  $  #  "  !                 e \cmf adorer Dieu en donnant une sacrifice, culte du temple et tabernacle _reference_start_1 Chronicles 6:17_reference_end_ _reference_start_1 Chronicles 6:33_reference_end_ _reference_start_1 Chronicles 9:13_reference_end_ _reference_start_1 Chronicles 9:19_reference_end_ _reference_start_1 Chronicles 9:28_reference_end_ _reference_start_1 Chronicles 23:24_reference_end_ _reference_start_1 Chronicles 23:26_reference_end_ _reference_start_1 Chronicles 23:28_reference_end_ _reference_start_1 Chronicles 23:32_reference_end_ _reference_start_1 Chronicles 24:03_reference_end_ _reference_start_1 Chronicles 28:13_reference_end_ _reference_start_1 Chronicles 28:14_reference_end_ _reference_start_1 Chronicles 28:15_reference_end_ _reference_start_1 Chronicles 28:20_reference_end_ _reference_start_1 Chronicles 28:21_reference_end_ _reference_start_1 Chronicles 29:07_reference_end_ _reference_start_Exodus 12:25_reference_end_ _reference_start_Exodus 12:26_reference_end_ _reference_start_Exodus 13:05_reference_end_ $$X   worshipworship\h hßdôGt \f louer \cme choir \cmf choral _reference_start_Jeremiah 30:19_reference_end_ _reference_start_Nehemiah 12:31_reference_end_ _reference_start_Nehemiah 12:38_reference_end_ _reference_start_Nehemiah 12:40_reference_end_ \cme song of worship \cmf chançons de louange _reference_start_Jonah 2:10_reference_end_ _reference_start_Nehemiah 12:27_reference_end_ _reference_start_Psalms 26:07_reference_end_ _reference_start_Psalms 42:05_reference_end_ _reference_start_Psalms 69:31_reference_end_ _reference_start_Psalms 95:02_reference_end_ _reference_start_Psalms 100:04_reference_end_ \cme thank offering \cmf offrande de remerciment _reference_start_Leviticus 7:12_reference_end_ _reference_start_Psalms 50:14_reference_end_ _reference_start_Psalms 50:23_reference_end_ _reference_start_Psalms 56:13_reference_end_ \cme thank, praise God and abandon sin \cmf remercier, louer Dieu en abandonant le péché _reference_start_Joshua 7:19_reference_end_ ?tfXJ<. xj\N@2$|n`RD6(        /  A      !         @  /  $                        ~  }  |  {  z  y  x  w   v   u   t   s  r   q   p   o  n   m  l  k  j  i  h  g d f ' e  d  c  b  a  `  _  ^  ]  \ [  Z  _reference_end_ _reference_start_2 Samuel 15:08_reference_end_ _reference_start_Exodus 7:16_reference_end_ _reference_start_Exodus 7:26_reference_end_ _reference_start_Exodus 8:16_reference_end_ _reference_start_Exodus 9:01_reference_end_ _reference_start_Exodus 9:13_reference_end_ _reference_start_Exodus 10:03_reference_end_ _reference_start_Exodus 10:07_reference_end_ _reference_start_Exodus 10:08_reference_end_ _reference_start_Exodus 10:11_reference_end_ _reference_start_Exodus 10:24_reference_end_ _reference_start_Exodus 10:26_reference_end_ _reference_start_Exodus 12:31_reference_end_ _reference_start_Exodus 13:05_reference_end_ _reference_start_Isaiah 19:21_reference_end_ _reference_start_Numbers 3:07_reference_end_ _reference_start_Numbers 3:08_reference_end_ _reference_start_Numbers 8:25_reference_end_ _reference_start_Numbers 16:09_reference_end_ _reference_start_Numbers 18:07_reference_end_ _reference_start_Numbers 18:21_reference_end_ _reference_start_Numbers 18:23_reference_end_ \cme worship other gods \cmf adorer autes dieux _reference_start_1 Kings 9:06_reference_end_ _reference_start_1 Kings 9:09_reference_end_ _reference_start_1 Kings 16:31_reference_end_ _reference_start_1 Samuel 8:08_reference_end_ _reference_start_1 Samuel 1:1_reference_end_ _reference_start_1 Samuel 1:1_reference_end_ _reference_start_1 Samuel 26:19_reference_end_ _reference_start_2 Chronicles 7:19_reference_end_ _reference_start_2 Chronicles 7:22_reference_end_ _reference_start_Deuteronomy 4:28_reference_end_ _reference_start_Deuteronomy 28:14_reference_end_ _reference_start_Deuteronomy 28:36_reference_end_ _reference_start_Deuteronomy 28:47_reference_end_ _reference_start_Deuteronomy 28:64_reference_end_ _reference_start_Deuteronomy 29:25_reference_end_ _reference_start_Exodus 10:05_reference_end_ _reference_start_Exodus 23:24_reference_end_ _reference_start_Exodus 23:33_reference_end_ _reference_start_Jeremiah 5:19_reference_end_ _reference_start_Joshua 23:07_reference_end_ _reference_start_Jude 2:19_reference_end_ HH( %% worship (to)worship (to)\h dabAv \f adorer \cme worship God by keeing his covenant \cmf adorer Dieu par garder son alliance _reference_start_1 Chronicles 28:09_reference_end_ _reference_start_1 Samuel 12:10_reference_end_ _reference_start_1 Samuel 12:14_reference_end_ _reference_start_1 Samuel 12:20_reference_end_ _reference_start_1 Samuel 12:24_reference_end_ _reference_start_Deuteronomy 6:13_reference_end_ _reference_start_Exodus 3:12_reference_end_ _reference_start_Exodus 4:23_reference_end_ _reference_start_Exodus 14:12_reference_end_ _reference_start_Exodus 23:25_reference_end_ _reference_start_Jeremiah 2:20_reference_end_ _reference_start_Malachi 3:18_reference_end_ _reference_start_Psalms 100:02_reference_end_ \cme worship God by sacrifice & cult of temple or tabernacle \cmf adorer Dieu par sacrifice et le culte du temple et le tabernacle _reference_start_1 Samuel 7:03_reference_end_ _reference_start_1 Samuel 7:04 \''}wrong (to do)wrong (to do)\h hAwâââAv \f mal, faire mal \cme commit sin, pervert \cmf faire tort, faire mal _reference_start_1 Kings 8:47_reference_end_ _reference_start_1 Samuel 20:30_reference_end_ _reference_start_2 Samuel 7:14_reference_end_ _reference_start_2 Samuel 19:20_reference_end_ _reference_start_2 Samuel 24:17_reference_end_ _reference_start_Daniel 9:05_reference_end_ _reference_start_Esther 1:16_reference_end_ _reference_start_Jeremiah 9:04_reference_end_ _reference_start_Proverbs 12:08_reference_end_ \cme crooked \cmf courbé _reference_start_Psalms 38:07_reference_end_  &         bibledit-gtk-4.9/templates/language_djimini.xml000664 000766 000024 00000020475 12221507126 022071 0ustar00teusstaff000000 000000 1 Genesis Zhenɛsi Zhenɛ 2 Exodus Ɛkizɔdi Ɛki 3 Leviticus Levitiki Levi 4 Numbers Nɔmburu Nɔmbu 5 Deuteronomy Deteronɔmu Dete 6 Joshua Zhozuwe Zhozu 7 Judges Kiti Kɔnfɛnnɛ Kiti 8 Ruth Uruti Uru 9 1 Samuel 1 Samiyɛli 1 Sami 10 2 Samuel 2 Samiyɛli 2 Sami 11 1 Kings 1 Wunlumbolo 1 Wunlu 12 2 Kings 2 Wunlumbolo 2 Wunlu 13 1 Chronicles 1 Kuroniki 1 Kuro 14 2 Chronicles 2 Kuroniki 2 Kuro 15 Ezra Ɛsidirasi Ɛsidi 16 Nehemiah Neemi Nee 17 Esther Ɛsitɛri Ɛsitɛ 18 Job Zhɔbu Zhɔbu 19 Psalms Yuuro Yuuro 20 Proverbs Yomiyɛgɛlɛ Yomi 21 Ecclesiastes Yɛnŋɛlɛ Sɛnrɛ Yofɔ Yofɔ 22 Song of Solomon Salomɔ Yuuro Salo 23 Isaiah Ezayi Eza 24 Jeremiah Zheremi Zhere 25 Lamentations Zheremi wi Jɔlɔgɔ Sɛnrɛ Jɔlɔ 26 Ezekiel Ezekiyɛli Eze 27 Daniel Daniyɛli Dani 28 Hosea Oze Oze 29 Joel Zhowɛli Zhowɛ 30 Amos Amɔsi Amɔ 31 Obadiah Abidiyasi Abi 32 Jonah Zhonasi Zhona 33 Micah Mishe Mishe 34 Nahum Nawumu Nawu 35 Habakkuk Abaku Aba 36 Zephaniah Sofoni Sofo 37 Haggai Azhe Azhe 38 Zechariah Zakari Zaka 39 Malachi Malaki Mala 40 Matthew Matiye Mati 41 Mark Mariki Maki 42 Luke Luki Lui 43 John Zhan Zhan 44 Acts Kapyegele Kapye 45 Romans Ɔrɔmu Ɔrɔ 46 1 Corinthians 1 Korɛnti 1 Korɛn 47 2 Corinthians 2 Korɛnti 2 Korɛn 48 Galatians Galasi Gala 49 Ephesians Efɛzi Efɛ 50 Philippians Filipi Fili 51 Colossians Kolɔsi Kolɔ 52 1 Thessalonians 1 Tesaloniki 1 Tesa 53 2 Thessalonians 2 Tesaloniki 2 Tesa 54 1 Timothy 1 Timote 1 Timo 55 2 Timothy 2 Timote 2 Timo 56 Titus Tite Tite 57 Philemon Filemɔ File 58 Hebrews Eburuye Ebu 59 James Zhaki Zhaki 60 1 Peter 1 Pyɛri 1 Pyɛ 61 2 Peter 2 Pyɛri 2 Pyɛ 62 1 John 1 Zhan 1 Zhan 63 2 John 2 Zhan 2 Zhan 64 3 John 3 Zhan 3 Zhan 65 Jude Zhude Zhude 66 Revelation Nagawa Nara bibledit-gtk-4.9/templates/language_english.xml000664 000766 000024 00000020423 12221507126 022070 0ustar00teusstaff000000 000000 1 Genesis Genesis Gen. 2 Exodus Exodus Exod. 3 Leviticus Leviticus Lev. 4 Numbers Numbers Num. 5 Deuteronomy Deuteronomy Deut. 6 Joshua Joshua Josh. 7 Judges Judges Judg. 8 Ruth Ruth Ruth 9 1 Samuel 1 Samuel 1 Sam. 10 2 Samuel 2 Samuel 2 Sam. 11 1 Kings 1 Kings 1 Kings 12 2 Kings 2 Kings 2 Kings 13 1 Chronicles 1 Chronicles 1 Chron. 14 2 Chronicles 2 Chronicles 2 Chron. 15 Ezra Ezra Ezra 16 Nehemiah Nehemiah Neh. 17 Esther Esther Esth. 18 Job Job Job 19 Psalms Psalms Ps. 20 Proverbs Proverbs Prov. 21 Ecclesiastes Ecclesiastes Eccles. 22 Song of Solomon Song of Solomon Song 23 Isaiah Isaiah Isa. 24 Jeremiah Jeremiah Jer. 25 Lamentations Lamentations Lam. 26 Ezekiel Ezekiel Ezek. 27 Daniel Daniel Dan. 28 Hosea Hosea Hos. 29 Joel Joel Joel 30 Amos Amos Amos 31 Obadiah Obadiah Obad. 32 Jonah Jonah Jon. 33 Micah Micah Mic. 34 Nahum Nahum Nah. 35 Habakkuk Habakkuk Hab. 36 Zephaniah Zephaniah Zeph. 37 Haggai Haggai Hag. 38 Zechariah Zechariah Zech. 39 Malachi Malachi Mal. 40 Matthew Matthew Matt. 41 Mark Mark Mark 42 Luke Luke Luke 43 John John John 44 Acts Acts Acts 45 Romans Romans Rom. 46 1 Corinthians 1 Corinthians 1 Cor. 47 2 Corinthians 2 Corinthians 2 Cor. 48 Galatians Galatians Gal. 49 Ephesians Ephesians Eph. 50 Philippians Philippians Phil. 51 Colossians Colossians Col. 52 1 Thessalonians 1 Thessalonians 1 Thess. 53 2 Thessalonians 2 Thessalonians 2 Thess. 54 1 Timothy 1 Timothy 1 Tim. 55 2 Timothy 2 Timothy 2 Tim. 56 Titus Titus Tit. 57 Philemon Philemon Philem. 58 Hebrews Hebrews Heb. 59 James James Jas. 60 1 Peter 1 Peter 1 Pet. 61 2 Peter 2 Peter 2 Pet. 62 1 John 1 John 1 John 63 2 John 2 John 2 John 64 3 John 3 John 3 John 65 Jude Jude Jude 66 Revelation Revelation Rev. bibledit-gtk-4.9/templates/language_farsi.xml000664 000766 000024 00000021437 12221507126 021551 0ustar00teusstaff000000 000000 1 Genesis پیدایش پیدا 2 Exodus خروج خرو 3 Leviticus لاویان لاو 4 Numbers اعداد اعد 5 Deuteronomy تثنیه تث 6 Joshua یوشع یوش 7 Judges داوران داو 8 Ruth روت روت 9 1 Samuel اول سمو‌ییل ۱ سمو‌ 10 2 Samuel دوم سموییل ۲ سمو 11 1 Kings اول پادشاهان ۱ پاد 12 2 Kings دوم پادشاهان ۲ پاد 13 1 Chronicles اول تواریخ ۱ توا 14 2 Chronicles دوم تواریخ ۲ توا 15 Ezra عزرا عز 16 Nehemiah نحمیا نح 17 Esther استر است 18 Job ایوب ایو 19 Psalms مزامیر مزا 20 Proverbs امثال سلیمان ام 21 Ecclesiastes جامعه جام 22 Song of Solomon غزل غزلها غزل 23 Isaiah اشعیا اش 24 Jeremiah ارمیا ار 25 Lamentations مراثی ارمیا مراث 26 Ezekiel حزقیال حز 27 Daniel دانیال دان 28 Hosea هوشع هوش 29 Joel یوییل یوی 30 Amos عاموس عامو 31 Obadiah عوبدیا عوب 32 Jonah یونس یون 33 Micah میکاه میک 34 Nahum ناحوم ناحو 35 Habakkuk حبقوق حبق 36 Zephaniah ضفنیا ضفن 37 Haggai حجی حجی 38 Zechariah زکریا زکر 39 Malachi ملاکی ملا 40 Matthew متی متی 41 Mark مرقس مرق 42 Luke لوقا لوق 43 John یوحنا یوح 44 Acts اعمال رسولان اعمال 45 Romans رومیان روم 46 1 Corinthians اول قرنتیان ۱ قر 47 2 Corinthians دوم قرنتیان ۲ قر 48 Galatians غلاطیان غلا 49 Ephesians افسسیان افس 50 Philippians فیلیپیان فیل 51 Colossians کولسیان کول 52 1 Thessalonians اول تسالونکیان ۱ تسا 53 2 Thessalonians دوم تسالونکیان ۲ تسا 54 1 Timothy اول تیموتاوس ۱ تیمو 55 2 Timothy دوم تیموتاوس ۲ تیمو 56 Titus تیطوس تیط 57 Philemon فلیمون فلیم 58 Hebrews عبرانیان عبر 59 James یعقوب یعق 60 1 Peter اول پطرس ۱ پطر 61 2 Peter دوم پطرس ۲ پطر 62 1 John اول یوحنا ۱ یوح 63 2 John دوم یوحنا ۲ یوح 64 3 John سوم یوحنا ۳ یوح 65 Jude یهودا یهو 66 Revelation مکاشفه مکا bibledit-gtk-4.9/templates/language_french_tob.xml000664 000766 000024 00000020201 12221507126 022542 0ustar00teusstaff000000 000000 1 Genesis Genèse Gn 2 Exodus Exode Ex 3 Leviticus Lévitique Lv 4 Numbers Nombres Nb 5 Deuteronomy Deutéronome Dt 6 Joshua Josué Jos 7 Judges Juges Jg 8 Ruth Ruth Rt 9 1 Samuel 1 Samuel 1S 10 2 Samuel 2 Samuel 2S 11 1 Kings 1 Rois 1K 12 2 Kings 2 Rois 2K 13 1 Chronicles 1 Chroniques 1Ch 14 2 Chronicles 2 Chroniques 2Ch 15 Ezra Esdras Esd 16 Nehemiah Néhémie Ne 17 Esther Esther Est 18 Job Job Jb 19 Psalms Psaumes Ps 20 Proverbs Proverbes Pr 21 Ecclesiastes Ecclésiaste Qo 22 Song of Solomon Cantique des cantiques Ct 23 Isaiah Esaïe Es 24 Jeremiah Jérémie Jr 25 Lamentations Lamentations Lm 26 Ezekiel Ezéchiel Ez 27 Daniel Daniel Dn 28 Hosea Osée Os 29 Joel Joël Jl 30 Amos Amos Am 31 Obadiah Abdias Ab 32 Jonah Jonas Jon 33 Micah Michée Mi 34 Nahum Nahum Na 35 Habakkuk Habakuk Ha 36 Zephaniah Sophonie So 37 Haggai Aggée Ag 38 Zechariah Zacharie Za 39 Malachi Malachie Ml 40 Matthew Matthieu Mt 41 Mark Marc Mc 42 Luke Luc Lc 43 John Jean Jn 44 Acts Actes Ac 45 Romans Romains Rm 46 1 Corinthians 1 Corinthiens 1Co 47 2 Corinthians 2 Corinthiens 2Co 48 Galatians Galates Ga 49 Ephesians Ephésiens Ep 50 Philippians Philippiens Ph 51 Colossians Colossiens Col 52 1 Thessalonians 1 Thessaloniciens 1Th 53 2 Thessalonians 2 Thessaloniciens 2Th 54 1 Timothy 1 Timothée 1Tm 55 2 Timothy 2 Timothée 2Tm 56 Titus Tite Tt 57 Philemon Philémon Phm 58 Hebrews Hébreux He 59 James Jacques Jc 60 1 Peter 1 Pierre 1P 61 2 Peter 2 Pierre 2P 62 1 John 1 Jean 1Jn 63 2 John 2 Jean 2Jn 64 3 John 3 Jean 3Jn 65 Jude Jude Jude 66 Revelation Apocalypse Ap bibledit-gtk-4.9/templates/language_german_einheitsuebersetzung.xml000664 000766 000024 00000022662 12221507125 026251 0ustar00teusstaff000000 000000 1 Genesis Das Buch Genesis Gen 2 Exodus Das Buch Exodus Ex 3 Leviticus Das Buch Levitikus Lev 4 Numbers Das Buch Numeri Num 5 Deuteronomy Das Buch Deuteronomium Dtn 6 Joshua Das Buch Josua Jos 7 Judges Das Buch der Richter Ri 8 Ruth Das Buch Rut Rut 9 1 Samuel Das erste Buch Samuel 1Sam 10 2 Samuel Das zweite Buch Samuel 2Sam 11 1 Kings Das erste Buch der Könige 1Kön 12 2 Kings Das zweite Buch der Könige 2Kön 13 1 Chronicles Das erste Buch der Chronik 1Chr 14 2 Chronicles Das zweite Buch der Chronik 2Chr 15 Ezra Das Buch Esra Esra 16 Nehemiah Das Buch Nehemia Neh 17 Esther Das Buch Ester Est 18 Job Das Buch Ijob Ijob 19 Psalms Die Psalmen Ps 20 Proverbs Das Buch der Sprüche Spr 21 Ecclesiastes Das Buch Kohelet Koh 22 Song of Solomon Das Hoheslied Hld 23 Isaiah Der Prophet Jesaja Jes 24 Jeremiah Der Prophet Jeremia Jer 25 Lamentations Die Klagelieder Klgl 26 Ezekiel Das Buch Ezechiel Ez 27 Daniel Das Buch Daniel Dan 28 Hosea Das Buch Hosea Hos 29 Joel Das Buch Joël Joël 30 Amos Das Buch Amos Am 31 Obadiah Das Buch Obadja Obd 32 Jonah Das Buch Jona Jona 33 Micah Das Buch Micha Mi 34 Nahum Das Buch Nahum Nah 35 Habakkuk Das Buch Habakuk Hab 36 Zephaniah Das Buch Zefanja Zef 37 Haggai Das Buch Haggai Hag 38 Zechariah Das Buch Sacharja Sach 39 Malachi Das Buch Maleachi Mal 40 Matthew Das Evangelium nach Matthäus Mt 41 Mark Das Evangelium nach Markus Mk 42 Luke Das Evangelium nach Lukas Lk 43 John Das Evangelium nach Johannes Joh 44 Acts Die Apostelgeschichte Apg 45 Romans Der Brief an die Römer Röm 46 1 Corinthians Der erste Brief an die Korinther 1Kor 47 2 Corinthians Der zweite Brief an die Korinther 2Kor 48 Galatians Der Brief an die Galater Gal 49 Ephesians Der Brief an die Epheser Eph 50 Philippians Der Brief an die Philipper Phil 51 Colossians Der Brief an die Kolosser Kol 52 1 Thessalonians Der erste Brief an die Thessalonicher 1Thes 53 2 Thessalonians Der zweite Brief an die Thessalonicher 2Thes 54 1 Timothy Der erste Brief an Timotheus 1Tim 55 2 Timothy Der zweite Brief an Timotheus 2Tim 56 Titus Der Brief an Titus Tit 57 Philemon Der Brief an Philemon Phlm 58 Hebrews Der Brief an die Hebräer Hebr 59 James Der Brief des Jakobus Jak 60 1 Peter Der erste Brief des Petrus 1Petr 61 2 Peter Der zweite Brief des Petrus 2Petr 62 1 John Der erste Brief des Johannes 1Jo 63 2 John Der zweite Brief des Johannes 2Jo 64 3 John Der dritte Brief des Johannes 3Jo 65 Jude Der Brief des Judas Jud 66 Revelation Die Offenbarung des Johannes Offb 67 Front Matter Einleitung Einl. 68 Back Matter Anhang Anh. 69 Other Material Weiteres Material Weit. bibledit-gtk-4.9/templates/language_german_gute_nachricht.xml000664 000766 000024 00000021131 12221507126 024754 0ustar00teusstaff000000 000000 1 Genesis Genesis Gen 2 Exodus Exodus Exo 3 Leviticus Levitikus Lev 4 Numbers Numeri Num 5 Deuteronomy Deuteronomium Dtn 6 Joshua Josua Jos 7 Judges Richter Ri 8 Ruth Rut Rut 9 1 Samuel 1 Samuel 1Sam 10 2 Samuel 2 Samuel 2Sam 11 1 Kings 1 Könige 1Kön 12 2 Kings 2 Könige 2Kön 13 1 Chronicles 1 Chronik 1Chr 14 2 Chronicles 2 Chronik 2Chr 15 Ezra Esra Esra 16 Nehemiah Nehemia Neh 17 Esther Ester Est 18 Job Ijob Ijob 19 Psalms Psalmen Ps 20 Proverbs Sprüche Spr 21 Ecclesiastes Kohelet Koh 22 Song of Solomon Hoheslied Hld 23 Isaiah Jesaja Jes 24 Jeremiah Jeremia Jer 25 Lamentations Klagelieder Klgl 26 Ezekiel Ezechiël Ez 27 Daniel Daniel Dan 28 Hosea Hosea Hos 29 Joel Joël Joël 30 Amos Amos Am 31 Obadiah Obadja Obd 32 Jonah Jona Jona 33 Micah Micha Mi 34 Nahum Nahum Nah 35 Habakkuk Habakuk Hab 36 Zephaniah Zefanja Zef 37 Haggai Haggai Hag 38 Zechariah Sacharja Sach 39 Malachi Maleachi Mal 40 Matthew Matthäus Mt 41 Mark Markus Mk 42 Luke Lukas Lk 43 John Johannes Joh 44 Acts Apostelgeschichte Apg 45 Romans Römer Röm 46 1 Corinthians 1 Korinther 1Kor 47 2 Corinthians 2 Korinther 2Kor 48 Galatians Galater Gal 49 Ephesians Epheser Eph 50 Philippians Philipper Phil 51 Colossians Kolosser Kol 52 1 Thessalonians 1 Thessalonicher 1Thess 53 2 Thessalonians 2 Thessalonicher 2Thess 54 1 Timothy 1 Timotheus 1Tim 55 2 Timothy 2 Timotheus 2Tim 56 Titus Titus Tit 57 Philemon Philemon Phlm 58 Hebrews Hebräer Hebr 59 James Jakobus Jak 60 1 Peter 1 Petrus 1Petr 61 2 Peter 2 Petrus 2Petr 62 1 John 1 Johannes 1Joh 63 2 John 2 Johannes 2Joh 64 3 John 3 Johannes 3Joh 65 Jude Judas Jud 66 Revelation Offenbarung Offb 67 Front Matter Einleitung Einl. 68 Back Matter Anhang Anh. 69 Other Material Weiteres Material Weit. bibledit-gtk-4.9/templates/language_german_gute_nachricht_2.xml000664 000766 000024 00000021117 12221507126 025201 0ustar00teusstaff000000 000000 1 Genesis 1 Mose Gen 2 Exodus 2 Mose Exo 3 Leviticus 3 Mose Lev 4 Numbers 4 Mose Num 5 Deuteronomy 5 Mose Dtn 6 Joshua Josua Jos 7 Judges Richter Ri 8 Ruth Rut Rut 9 1 Samuel 1 Samuel 1Sam 10 2 Samuel 2 Samuel 2Sam 11 1 Kings 1 Könige 1Kön 12 2 Kings 2 Könige 2Kön 13 1 Chronicles 1 Chronik 1Chr 14 2 Chronicles 2 Chronik 2Chr 15 Ezra Esra Esra 16 Nehemiah Nehemia Neh 17 Esther Ester Est 18 Job Ijob Ijob 19 Psalms Psalmen Ps 20 Proverbs Sprüche Spr 21 Ecclesiastes Prediger Koh 22 Song of Solomon Hoheslied Hld 23 Isaiah Jesaja Jes 24 Jeremiah Jeremia Jer 25 Lamentations Klagelieder Klgl 26 Ezekiel Ezechiël Ez 27 Daniel Daniel Dan 28 Hosea Hosea Hos 29 Joel Joël Joël 30 Amos Amos Am 31 Obadiah Obadja Obd 32 Jonah Jona Jona 33 Micah Micha Mi 34 Nahum Nahum Nah 35 Habakkuk Habakuk Hab 36 Zephaniah Zefanja Zef 37 Haggai Haggai Hag 38 Zechariah Sacharja Sach 39 Malachi Maleachi Mal 40 Matthew Matthäus Mt 41 Mark Markus Mk 42 Luke Lukas Lk 43 John Johannes Joh 44 Acts Apostelgeschichte Apg 45 Romans Römer Röm 46 1 Corinthians 1 Korinther 1Kor 47 2 Corinthians 2 Korinther 2Kor 48 Galatians Galater Gal 49 Ephesians Epheser Eph 50 Philippians Philipper Phil 51 Colossians Kolosser Kol 52 1 Thessalonians 1 Thessalonicher 1Thess 53 2 Thessalonians 2 Thessalonicher 2Thess 54 1 Timothy 1 Timotheus 1Tim 55 2 Timothy 2 Timotheus 2Tim 56 Titus Titus Tit 57 Philemon Philemon Phlm 58 Hebrews Hebräer Hebr 59 James Jakobus Jak 60 1 Peter 1 Petrus 1Petr 61 2 Peter 2 Petrus 2Petr 62 1 John 1 Johannes 1Joh 63 2 John 2 Johannes 2Joh 64 3 John 3 Johannes 3Joh 65 Jude Judas Jud 66 Revelation Offenbarung Offb 67 Front Matter Einleitung Einl. 68 Back Matter Anhang Anh. 69 Other Material Weiteres Material Weit. bibledit-gtk-4.9/templates/language_german_luther.xml000664 000766 000024 00000021211 12221507125 023266 0ustar00teusstaff000000 000000 1 Genesis 1. Mose 1. Mose 2 Exodus 2. Mose 2. Mose 3 Leviticus 3. Mose 3. Mose 4 Numbers 4. Mose 4. Mose 5 Deuteronomy 5. Mose 5. Mose 6 Joshua Josua Jos 7 Judges Richter Ri 8 Ruth Rut Rut 9 1 Samuel 1 Samuel 1. Sam 10 2 Samuel 2 Samuel 2. Sam 11 1 Kings 1 Könige 1. Kön 12 2 Kings 2 Könige 2. Kön 13 1 Chronicles 1 Chronik 1. Chr 14 2 Chronicles 2 Chronik 2. Chr 15 Ezra Esra Esra 16 Nehemiah Nehemia Neh 17 Esther Ester Est 18 Job Hiob Hiob 19 Psalms Psalmen Ps 20 Proverbs Sprüche Spr 21 Ecclesiastes Prediger Pred 22 Song of Solomon Hoheslied Hld 23 Isaiah Jesaja Jes 24 Jeremiah Jeremia Jer 25 Lamentations Klagelieder Klgl 26 Ezekiel Hesekiel Hes 27 Daniel Daniel Dan 28 Hosea Hosea Hos 29 Joel Joel Joel 30 Amos Amos Am 31 Obadiah Obadja Obd 32 Jonah Jona Jona 33 Micah Micha Mi 34 Nahum Nahum Nah 35 Habakkuk Habakuk Hab 36 Zephaniah Zefanja Zef 37 Haggai Haggai Hag 38 Zechariah Sacharja Sach 39 Malachi Maleachi Mal 40 Matthew Matthäus Mt 41 Mark Markus Mk 42 Luke Lukas Lk 43 John Johannes Joh 44 Acts Apostelgeschichte Apg 45 Romans Römer Röm 46 1 Corinthians 1 Korinther 1. Kor 47 2 Corinthians 2 Korinther 2. Kor 48 Galatians Galater Gal 49 Ephesians Epheser Eph 50 Philippians Philipper Phil 51 Colossians Kolosser Kol 52 1 Thessalonians 1 Thessalonicher 1. Thess 53 2 Thessalonians 2 Thessalonicher 2. Thess 54 1 Timothy 1 Timotheus 1. Tim 55 2 Timothy 2 Timotheus 2. Tim 56 Titus Titus Tit 57 Philemon Philemon Phlm 58 Hebrews Hebräer Hebr 59 James Jakobus Jak 60 1 Peter 1 Petrus 1. Petr 61 2 Peter 2 Petrus 2. Petr 62 1 John 1 Johannes 1. Joh 63 2 John 2 Johannes 2. Joh 64 3 John 3 Johannes 3. Joh 65 Jude Judas Jud 66 Revelation Offenbarung Offb 67 Front Matter Einleitung Einl. 68 Back Matter Anhang Anh. 69 Other Material Weiteres Material Weit. bibledit-gtk-4.9/templates/language_german_luther_2.xml000664 000766 000024 00000021217 12221507126 023516 0ustar00teusstaff000000 000000 1 Genesis Genesis 1. Mose 2 Exodus Exodus 2. Mose 3 Leviticus Levitikus 3. Mose 4 Numbers Numeri 4. Mose 5 Deuteronomy Deuteronomium 5. Mose 6 Joshua Josua Jos 7 Judges Richter Ri 8 Ruth Rut Rut 9 1 Samuel 1 Samuel 1. Sam 10 2 Samuel 2 Samuel 2. Sam 11 1 Kings 1 Könige 1. Kön 12 2 Kings 2 Könige 2. Kön 13 1 Chronicles 1 Chronik 1. Chr 14 2 Chronicles 2 Chronik 2. Chr 15 Ezra Esra Esra 16 Nehemiah Nehemia Neh 17 Esther Ester Est 18 Job Ijob Hiob 19 Psalms Psalmen Ps 20 Proverbs Sprüche Spr 21 Ecclesiastes Kohelet Pred 22 Song of Solomon Hoheslied Hld 23 Isaiah Jesaja Jes 24 Jeremiah Jeremia Jer 25 Lamentations Klagelieder Klgl 26 Ezekiel Ezechiël Hes 27 Daniel Daniel Dan 28 Hosea Hosea Hos 29 Joel Joel Joel 30 Amos Amos Am 31 Obadiah Obadja Obd 32 Jonah Jona Jona 33 Micah Micha Mi 34 Nahum Nahum Nah 35 Habakkuk Habakuk Hab 36 Zephaniah Zefanja Zef 37 Haggai Haggai Hag 38 Zechariah Sacharja Sach 39 Malachi Maleachi Mal 40 Matthew Matthäus Mt 41 Mark Markus Mk 42 Luke Lukas Lk 43 John Johannes Joh 44 Acts Apostelgeschichte Apg 45 Romans Römer Röm 46 1 Corinthians 1 Korinther 1. Kor 47 2 Corinthians 2 Korinther 2. Kor 48 Galatians Galater Gal 49 Ephesians Epheser Eph 50 Philippians Philipper Phil 51 Colossians Kolosser Kol 52 1 Thessalonians 1 Thessalonicher 1. Thess 53 2 Thessalonians 2 Thessalonicher 2. Thess 54 1 Timothy 1 Timotheus 1. Tim 55 2 Timothy 2 Timotheus 2. Tim 56 Titus Titus Tit 57 Philemon Philemon Phlm 58 Hebrews Hebräer Hebr 59 James Jakobus Jak 60 1 Peter 1 Petrus 1. Petr 61 2 Peter 2 Petrus 2. Petr 62 1 John 1 Johannes 1. Joh 63 2 John 2 Johannes 2. Joh 64 3 John 3 Johannes 3. Joh 65 Jude Judas Jud 66 Revelation Offenbarung Offb 67 Front Matter Einleitung Einl. 68 Back Matter Anhang Anh. 69 Other Material Weiteres Material Weit. bibledit-gtk-4.9/templates/language_german_revidierte_elberfelder.xml000664 000766 000024 00000022733 12221507125 026472 0ustar00teusstaff000000 000000 1 Genesis Das erste Buch Mose 1Mo 2 Exodus Das zweite Buch Mose 2Mo 3 Leviticus Das dritte Buch Mose 3Mo 4 Numbers Das vierte Buch Mose 4Mo 5 Deuteronomy Das fünfte Buch Mose 5Mo 6 Joshua Das Buch Josua Jos 7 Judges Das Buch der Richter Ri 8 Ruth Das Buch Rut Rt 9 1 Samuel Das erste Buch Samuel 1Sam 10 2 Samuel Das zweite Buch Samuel 2Sam 11 1 Kings Das erste Buch der Könige 1Kön 12 2 Kings Das zweite Buch der Könige 2Kön 13 1 Chronicles Das erste Buch der Chronik 1Chr 14 2 Chronicles Das zweite Buch der Chronik 2Chr 15 Ezra Das Buch Esra Esr 16 Nehemiah Das Buch Nehemia Neh 17 Esther Das Buch Ester Est 18 Job Das Buch Hiob Hi 19 Psalms Das Buch der Psalmen Ps 20 Proverbs Die Sprüche Spr 21 Ecclesiastes Der Prediger Pred 22 Song of Solomon Das Lied der Lieder Hl 23 Isaiah Der Prophet Jesaja Jes 24 Jeremiah Der Prophet Jeremia Jer 25 Lamentations Die Klagelieder Kla 26 Ezekiel Der Prophet Hesekiel Hes 27 Daniel Der Prophet Daniel Dan 28 Hosea Der Prophet Hosea Hos 29 Joel Der Prophet Joel Joe 30 Amos Der Prophet Amos Am 31 Obadiah Der Prophet Obadja Obd 32 Jonah Der Prophet Jona Jona 33 Micah Der Prophet Micha Mi 34 Nahum Der Prophet Nahum Nah 35 Habakkuk Der Prophet Habakuk Hab 36 Zephaniah Der Prophet Zephanja Zeph 37 Haggai Der Prophet Haggai Hag 38 Zechariah Der Prophet Sacharja Sach 39 Malachi Der Prophet Maleachi Mal 40 Matthew Das Evangelium nach Matthäus Mt 41 Mark Das Evangelium nach Markus Mk 42 Luke Das Evangelium nach Lukas Lk 43 John Das Evangelium nach Johannes Joh 44 Acts Die Apostelgeschichte Apg 45 Romans Der Brief an die Römer Röm 46 1 Corinthians Der erste Brief an die Korinther 1Kor 47 2 Corinthians Der zweite Brief an die Korinther 2Kor 48 Galatians Der Brief an die Galater Gal 49 Ephesians Der Brief an die Epheser Eph 50 Philippians Der Brief an die Philipper Phil 51 Colossians Der Brief an die Kolosser Kol 52 1 Thessalonians Der erste Brief an die Thessalonicher 1Thes 53 2 Thessalonians Der zweite Brief an die Thessalonicher 2Thes 54 1 Timothy Der erste Brief an Timotheus 1Tim 55 2 Timothy Der zweite Brief an Timotheus 2Tim 56 Titus Der Brief an Titus Tit 57 Philemon Der Brief an Philemon Phim 58 Hebrews Der Brief an die Hebräer Hebr 59 James Der Brief des Jakobus Jak 60 1 Peter Der erste Brief des Petrus 1Petr 61 2 Peter Der zweite Brief des Petrus 2Petr 62 1 John Der erste Brief des Johannes 1Jo 63 2 John Der zweite Brief des Johannes 2Jo 64 3 John Der dritte Brief des Johannes 3Jo 65 Jude Der Brief des Judas Jud 66 Revelation Die Offenbarung Offb 67 Front Matter Einleitung Einl. 68 Back Matter Anhang Anh. 69 Other Material Weiteres Material Weit. bibledit-gtk-4.9/templates/language_german_revidierte_elberfelder_2.xml000664 000766 000024 00000022616 12221507126 026714 0ustar00teusstaff000000 000000 1 Genesis Genesis 1Mo 2 Exodus Exodus 2Mo 3 Leviticus Levitikus 3Mo 4 Numbers Numeri 4Mo 5 Deuteronomy Deuteronomium 5Mo 6 Joshua Das Buch Josua Jos 7 Judges Das Buch der Richter Ri 8 Ruth Das Buch Rut Rt 9 1 Samuel Das erste Buch Samuel 1Sam 10 2 Samuel Das zweite Buch Samuel 2Sam 11 1 Kings Das erste Buch der Könige 1Kön 12 2 Kings Das zweite Buch der Könige 2Kön 13 1 Chronicles Das erste Buch der Chronik 1Chr 14 2 Chronicles Das zweite Buch der Chronik 2Chr 15 Ezra Das Buch Esra Esr 16 Nehemiah Das Buch Nehemia Neh 17 Esther Das Buch Ester Est 18 Job Das Buch Hiob Hi 19 Psalms Das Buch der Psalmen Ps 20 Proverbs Die Sprüche Spr 21 Ecclesiastes Der Prediger Pred 22 Song of Solomon Das Hoheslied Hl 23 Isaiah Der Prophet Jesaja Jes 24 Jeremiah Der Prophet Jeremia Jer 25 Lamentations Die Klagelieder Kla 26 Ezekiel Ezechiel Hes 27 Daniel Der Prophet Daniel Dan 28 Hosea Der Prophet Hosea Hos 29 Joel Der Prophet Joel Joe 30 Amos Der Prophet Amos Am 31 Obadiah Der Prophet Obadja Obd 32 Jonah Der Prophet Jona Jona 33 Micah Der Prophet Micha Mi 34 Nahum Der Prophet Nahum Nah 35 Habakkuk Der Prophet Habakuk Hab 36 Zephaniah Der Prophet Zephanja Zeph 37 Haggai Der Prophet Haggai Hag 38 Zechariah Der Prophet Sacharja Sach 39 Malachi Der Prophet Maleachi Mal 40 Matthew Das Evangelium nach Matthäus Mt 41 Mark Das Evangelium nach Markus Mk 42 Luke Das Evangelium nach Lukas Lk 43 John Das Evangelium nach Johannes Joh 44 Acts Die Apostelgeschichte Apg 45 Romans Der Brief an die Römer Röm 46 1 Corinthians Der erste Brief an die Korinther 1Kor 47 2 Corinthians Der zweite Brief an die Korinther 2Kor 48 Galatians Der Brief an die Galater Gal 49 Ephesians Der Brief an die Epheser Eph 50 Philippians Der Brief an die Philipper Phil 51 Colossians Der Brief an die Kolosser Kol 52 1 Thessalonians Der erste Brief an die Thessalonicher 1Thes 53 2 Thessalonians Der zweite Brief an die Thessalonicher 2Thes 54 1 Timothy Der erste Brief an Timotheus 1Tim 55 2 Timothy Der zweite Brief an Timotheus 2Tim 56 Titus Der Brief an Titus Tit 57 Philemon Der Brief an Philemon Phim 58 Hebrews Der Brief an die Hebräer Hebr 59 James Der Brief des Jakobus Jak 60 1 Peter Der erste Brief des Petrus 1Petr 61 2 Peter Der zweite Brief des Petrus 2Petr 62 1 John Der erste Brief des Johannes 1Jo 63 2 John Der zweite Brief des Johannes 2Jo 64 3 John Der dritte Brief des Johannes 3Jo 65 Jude Der Brief des Judas Jud 66 Revelation Die Offenbarung Offb 67 Front Matter Einleitung Einl. 68 Back Matter Anhang Anh. 69 Other Material Weiteres Material Weit. bibledit-gtk-4.9/templates/language_indonesian.xml000664 000766 000024 00000020317 12221507126 022570 0ustar00teusstaff000000 000000 1 Genesis Kejadian Kej. 2 Exodus Keluaran Kel. 3 Leviticus Imamat Im. 4 Numbers Bilangan Bil. 5 Deuteronomy Ulangan Ul. 6 Joshua Yosua Yos. 7 Judges Hakim-hakim Hak. 8 Ruth Rut Rut 9 1 Samuel 1 Samuel 1Sam. 10 2 Samuel 2 Samuel 2Sam. 11 1 Kings 1 Raja-raja 1Raj. 12 2 Kings 2 Raja-raja 2Raj. 13 1 Chronicles 1 Tawarikh 1Taw. 14 2 Chronicles 2 Tawarikh 2Taw. 15 Ezra Ezra Ezr. 16 Nehemiah Nehemia Neh. 17 Esther Ester Est. 18 Job Ayub Ayb. 19 Psalms Mazmur Mzm. 20 Proverbs Amsal Ams. 21 Ecclesiastes Pengkhotbah Pkh. 22 Song of Solomon Kidung Agung Kid. 23 Isaiah Yesaya Yes. 24 Jeremiah Yeremia Yer. 25 Lamentations Ratapan Rat. 26 Ezekiel Yehezkiel Yeh. 27 Daniel Daniel Dan. 28 Hosea Hosea Hos. 29 Joel Yoël Yl. 30 Amos Amos Am. 31 Obadiah Obaja Ob. 32 Jonah Yunus Yun. 33 Micah Mikha Mi. 34 Nahum Nahum Nah. 35 Habakkuk Habakuk Hab. 36 Zephaniah Zefanya Zef. 37 Haggai Hagai Hag. 38 Zechariah Zakharia Za. 39 Malachi Maleakhi Mal. 40 Matthew Matius Mat. 41 Mark Markus Mrk. 42 Luke Lukas Luk. 43 John Yohanes Yoh. 44 Acts Kisah Para Rasul Kis. 45 Romans Roma Rm. 46 1 Corinthians 1 Korintus 1Kor. 47 2 Corinthians 2 Korintus 2Kor. 48 Galatians Galatia Gal. 49 Ephesians Efesus Ef. 50 Philippians Filipi Flp. 51 Colossians Kolose Kol. 52 1 Thessalonians 1 Tesalonika 1Tes. 53 2 Thessalonians 2 Tesalonika 2Tes. 54 1 Timothy 1 Timotius 1Tim. 55 2 Timothy 2 Timotius 2Tim. 56 Titus Titus Tit. 57 Philemon Filemon Flm. 58 Hebrews Ibrani Ibr. 59 James Yakobus Yak. 60 1 Peter 1 Petrus 1Ptr. 61 2 Peter 2 Petrus 2Ptr. 62 1 John 1 Yohanes 1Yoh. 63 2 John 2 Yohanes 2Yoh. 64 3 John 3 Yohanes 3Yoh. 65 Jude Yudas Yud. 66 Revelation Wahyu Why. bibledit-gtk-4.9/templates/language_indonesian_tanpa_titik.xml000664 000766 000024 00000020216 12221507126 025155 0ustar00teusstaff000000 000000 1 Genesis Kejadian Kej 2 Exodus Keluaran Kel 3 Leviticus Imamat Im 4 Numbers Bilangan Bil 5 Deuteronomy Ulangan Ul 6 Joshua Yosua Yos 7 Judges Hakim-hakim Hak 8 Ruth Rut Rut 9 1 Samuel 1 Samuel 1Sam 10 2 Samuel 2 Samuel 2Sam 11 1 Kings 1 Raja-raja 1Raj 12 2 Kings 2 Raja-raja 2Raj 13 1 Chronicles 1 Tawarikh 1Taw 14 2 Chronicles 2 Tawarikh 2Taw 15 Ezra Ezra Ezr 16 Nehemiah Nehemia Neh 17 Esther Ester Est 18 Job Ayub Ayb 19 Psalms Mazmur Mzm 20 Proverbs Amsal Ams 21 Ecclesiastes Pengkhotbah Pkh 22 Song of Solomon Kidung Agung Kid 23 Isaiah Yesaya Yes 24 Jeremiah Yeremia Yer 25 Lamentations Ratapan Rat 26 Ezekiel Yehezkiel Yeh 27 Daniel Daniel Dan 28 Hosea Hosea Hos 29 Joel Yoël Yl 30 Amos Amos Am 31 Obadiah Obaja Ob 32 Jonah Yunus Yun 33 Micah Mikha Mi 34 Nahum Nahum Nah 35 Habakkuk Habakuk Hab 36 Zephaniah Zefanya Zef 37 Haggai Hagai Hag 38 Zechariah Zakharia Za 39 Malachi Maleakhi Mal 40 Matthew Matius Mat 41 Mark Markus Mrk 42 Luke Lukas Luk 43 John Yohanes Yoh 44 Acts Kisah Para Rasul Kis 45 Romans Roma Rm 46 1 Corinthians 1 Korintus 1Kor 47 2 Corinthians 2 Korintus 2Kor 48 Galatians Galatia Gal 49 Ephesians Efesus Ef 50 Philippians Filipi Flp 51 Colossians Kolose Kol 52 1 Thessalonians 1 Tesalonika 1Tes 53 2 Thessalonians 2 Tesalonika 2Tes 54 1 Timothy 1 Timotius 1Tim 55 2 Timothy 2 Timotius 2Tim 56 Titus Titus Tit 57 Philemon Filemon Flm 58 Hebrews Ibrani Ibr 59 James Yakobus Yak 60 1 Peter 1 Petrus 1Ptr 61 2 Peter 2 Petrus 2Ptr 62 1 John 1 Yohanes 1Yoh 63 2 John 2 Yohanes 2Yoh 64 3 John 3 Yohanes 3Yoh 65 Jude Yudas Yud 66 Revelation Wahyu Why bibledit-gtk-4.9/templates/language_matigsalug.xml000664 000766 000024 00000020537 12221507126 022602 0ustar00teusstaff000000 000000 1 Genesis Hinisis Hin. 2 Exodus Iksudu Iks. 3 Leviticus Libitiku Lib. 4 Numbers Numirus Num. 5 Deuteronomy Diyuturunuiyu Dut. 6 Joshua Huswi Hus. 7 Judges Me Talaggukum Huk. 8 Ruth Rut Rut 9 1 Samuel 1 Samuwil 1 Sam. 10 2 Samuel 2 Samuwil 2 Sam. 11 1 Kings 1 Me Hari 1 Har. 12 2 Kings 2 Me Hari 2 Hari. 13 1 Chronicles 1 Me Kurunikas 1 Kurun. 14 2 Chronicles 2 Me Kurunikas 2 Kurun. 15 Ezra Isdras Isd. 16 Nehemiah Nihimiyas Nih. 17 Esther Istir Ist. 18 Job Hub Hub 19 Psalms Me Salmu Sal. 20 Proverbs Me Talagtambag Tam. 21 Ecclesiastes Iklisyastis Ikl. 22 Song of Solomon Me Ulahingen Ula. 23 Isaiah Isayas Isa. 24 Jeremiah Hirimiyas Hir. 25 Lamentations Me Pegkalaggew Kal. 26 Ezekiel Isikil Isi. 27 Daniel Danyil Dan. 28 Hosea Usiyas Usi. 29 Joel Dyuwil Dyu. 30 Amos Amus Amus 31 Obadiah Abdiyas Abd. 32 Jonah Hunas Hun. 33 Micah Mikiyas Mik. 34 Nahum Nahum Nah. 35 Habakkuk Habakuk Hab. 36 Zephaniah Supuniyas Sup. 37 Haggai Haggiyu Hag. 38 Zechariah Sakariyas Sak. 39 Malachi Malakiyas Mal. 40 Matthew Matiyu Mat. 41 Mark Markus Mar. 42 Luke Lukas Luk. 43 John Huwan Huw. 44 Acts Me Buhat Buh. 45 Romans Me Matig-Ruma Rum. 46 1 Corinthians 1 Me Matig-Kurintu 1 Kur. 47 2 Corinthians 2 Me Matig-Kurintu 2 Kur. 48 Galatians Me Matig-Galasya Gal. 49 Ephesians Me Matig-Ipisu Ipi. 50 Philippians Me Matig-Pilipus Pil. 51 Colossians Me Matig-Kulusas Kul. 52 1 Thessalonians 1 Me Matig-Tisalunika 1 Tis. 53 2 Thessalonians 2 Me Matig-Tisalunika 2 Tis. 54 1 Timothy 1 Timitiyu 1 Tim. 55 2 Timothy 2 Timitiyu 2 Tim. 56 Titus Titu Tit. 57 Philemon Pilimun Pilim. 58 Hebrews Hibruhanun Hib. 59 James Hakubu Hak. 60 1 Peter 1 Pedru 1 Pid. 61 2 Peter 2 Pedru 2 Pid. 62 1 John 1 Huwan 1 Huw. 63 2 John 2 Huwan 2 Huw. 64 3 John 3 Huwan 3 Huw. 65 Jude Hudas Hud. 66 Revelation Pegpataha Pat. bibledit-gtk-4.9/templates/language_ndebele.xml000664 000766 000024 00000020550 12221507126 022036 0ustar00teusstaff000000 000000 1 Genesis UGenesise Gen. 2 Exodus UEksodusi Eks. 3 Leviticus ULevi Levi 4 Numbers AmaNani Nani 5 Deuteronomy UDuteronomi Dute. 6 Joshua UJoshuwa Josh. 7 Judges AbaHluleli Hlu. 8 Ruth URuthe Ruthe 9 1 Samuel 1 USamuweli 1 Sam. 10 2 Samuel 2 USamuweli 2 Sam. 11 1 Kings 1 AmaKhosi 1 Kho. 12 2 Kings 2 AmaKhosi 2 Kho. 13 1 Chronicles 1 Imilando 1 Lan. 14 2 Chronicles 2 Imilando 2 Lan. 15 Ezra UEzra Ezra 16 Nehemiah UNehemiya Neh. 17 Esther UEsta Esta 18 Job UJobe Jobe 19 Psalms Izihlabelelo Hlab. 20 Proverbs Izaga Zaga 21 Ecclesiastes UmTshumayeli Tshu. 22 Song of Solomon INgoma Yezingoma Ngoma 23 Isaiah UIsaya Isa. 24 Jeremiah UJeremiya Jer. 25 Lamentations IziLilo Lilo 26 Ezekiel UHezekeli Hez. 27 Daniel UDaniyeli Dan. 28 Hosea UHoseya Hos. 29 Joel UJoweli Jow. 30 Amos UAmosi Amos 31 Obadiah UObadiya Obad. 32 Jonah UJona Jona 33 Micah UMika Mika 34 Nahum UNahume Nah. 35 Habakkuk UHabhakhukhi Hab. 36 Zephaniah UZefaniya Zef. 37 Haggai UHagayi Hag. 38 Zechariah UZekhariya Zek. 39 Malachi UMalaki Mal. 40 Matthew UMathewu Mat. 41 Mark UMarko Mark. 42 Luke ULuka Luka 43 John UJohane Joha. 44 Acts ImiSebenzi Seb. 45 Romans AbaseRoma Roma 46 1 Corinthians 1 AbaseKorinte 1 Kor. 47 2 Corinthians 2 AbaseKorinte 2 Kor. 48 Galatians AbaseGalathiya Gal. 49 Ephesians AbaseEfesu Efe. 50 Philippians AbaseFiliphi Fil. 51 Colossians AbaseKolose Kol. 52 1 Thessalonians 1 AbaseThesalonika 1 Thes. 53 2 Thessalonians 2 AbaseThesalonika 2 Thes. 54 1 Timothy 1 UTimothi 1 Tim. 55 2 Timothy 2 UTimothi 2 Tim. 56 Titus UTitosi Tit. 57 Philemon UFilimoni Filim. 58 Hebrews AmaHeberu Heb. 59 James UJakobe Jak. 60 1 Peter 1 UPetro 1 Pet. 61 2 Peter 2 UPetro 2 Pet. 62 1 John 1 UJohane 1 Joha. 63 2 John 2 UJohane 2 Joha. 64 3 John 3 UJohane 3 Joha. 65 Jude UJuda Juda 66 Revelation Isambulelo Isam. bibledit-gtk-4.9/templates/language_portuguese.xml000664 000766 000024 00000022774 12221507126 022654 0ustar00teusstaff000000 000000 1 Genesis Génesis Gn 2 Exodus Êxodo Ex 3 Leviticus Levítico Lv 4 Numbers Números Nm 5 Deuteronomy Deuteronómio Dt 6 Joshua Josué Js 7 Judges Juízes Jz 8 Ruth Rute Rt 9 1 Samuel 1 Samuel 1 Sm 10 2 Samuel 2 Samuel 2 Sm 11 1 Kings 1 Reis 1 Rs 12 2 Kings 2 Reis 2 Rs 13 1 Chronicles 1 Crónicas 1 Cr 14 2 Chronicles 2 Crónicas 2 Cr 15 Ezra Esdras Esd 16 Nehemiah Neemias Ne 17 Esther Ester Est 18 Job Job Jb 19 Psalms Salmos Sl 20 Proverbs Provérbios Pr 21 Ecclesiastes Eclesiastes Ecl 22 Song of Solomon Cântico dos Cânticos Ct 23 Isaiah Isaías Is 24 Jeremiah Jeremias Jr 25 Lamentations Lamentações Lm 26 Ezekiel Ezequiel Ez 27 Daniel Daniel Dn 28 Hosea Oseias Os 29 Joel Joel Jl 30 Amos Amós Am 31 Obadiah Adbias Abd 32 Jonah Jonas Jn 33 Micah Miqueias Mq 34 Nahum Naum Na 35 Habakkuk Habacuc Hab 36 Zephaniah Sofonias Sf 37 Haggai Ageu Hag 38 Zechariah Zacarias Zc 39 Malachi Malaquias Ml 40 Matthew São Mateus Mt 41 Mark São Marcos Mc 42 Luke São Lucas Lc 43 John São João Jo 44 Acts Actos dos Apóstolos Act 45 Romans Romanos Rm 46 1 Corinthians 1 Coríntios 1 Cor 47 2 Corinthians 2 Coríntios 2 Cor 48 Galatians Gálatas Gl 49 Ephesians Efésios Ef 50 Philippians Filipenses Fl 51 Colossians Colossenses Cl 52 1 Thessalonians 1 Tessalonicenses 1 Ts 53 2 Thessalonians 2 Tessalonicenses 2 Ts 54 1 Timothy 1 Timóteo 1 Tm 55 2 Timothy 2 Timóteo 2 Tm 56 Titus Tito Tt 57 Philemon Filémon Flm 58 Hebrews Hebreus Heb 59 James São Tiago Tg 60 1 Peter 1 São Pedro 1 Pe 61 2 Peter 2 São Pedro 2 Pe 62 1 John 1 São João 1 Jo 63 2 John 2 São João 2 Jo 64 3 John 3 São João 3 Jo 65 Jude Judas Jd 66 Revelation Apocalipse Ap 67 Front Matter Introduções Intro. 68 Back Matter Suplementos Supl. 69 Other Material Outros Materiais Diversos 70 Tobit Tobite Tb 71 Judith Judite Jdt 73 Book of Wisdom Sabedoria Sb 74 Sirach Ben Sira Sir 75 Baruch Baruc Br 80 1 Maccabees 1 Macabeus 1 Mac 81 2 Maccabees 2 Macabeus 2 Mac bibledit-gtk-4.9/templates/language_shona.xml000664 000766 000024 00000020467 12221507126 021557 0ustar00teusstaff000000 000000 1 Genesis Genesisi Gen. 2 Exodus Ekisodho Eki. 3 Leviticus Revhitiko Rev. 4 Numbers Numeri Num 5 Deuteronomy Deteronomio Det. 6 Joshua Joshuwa Josh. 7 Judges Vatongi Vato. 8 Ruth Rute Rut. 9 1 Samuel 1 Samueri 1 Sam. 10 2 Samuel 2 Samueri 2 Sam. 11 1 Kings 1 Madzimambo 1 Madz. 12 2 Kings 2 Madzimambo 2 Madz. 13 1 Chronicles 1 Makoronike 1 Makor. 14 2 Chronicles 2 Makoronike 2 Makor. 15 Ezra Ezira Ezi 16 Nehemiah Nehemia Neh. 17 Esther Esiteri Esi 18 Job Jobho Job. 19 Psalms Mapisarema Map. 20 Proverbs Zvirevo Zvir. 21 Ecclesiastes Muparidzi Mup. 22 Song of Solomon Rwiyo RwaSoromoni Rwiyo 23 Isaiah Isaya Isa. 24 Jeremiah Jeremia Jer. 25 Lamentations Mariro Marir. 26 Ezekiel Ezekieri Eze. 27 Daniel Dhanieri Dhan. 28 Hosea Hosiya Hos. 29 Joel Joweri Jow. 30 Amos Amosi Amo. 31 Obadiah Obhadhiya Obh. 32 Jonah Jona Jona 33 Micah Mika Mik. 34 Nahum Nahumi Nah. 35 Habakkuk Habhakuku Habh. 36 Zephaniah Zefania Zef. 37 Haggai Hagai Hag. 38 Zechariah Zekaria Zek. 39 Malachi Maraki Mara. 40 Matthew Matewu Mat. 41 Mark Mako Mako 42 Luke Ruka Ruk. 43 John Johwani Joh. 44 Acts Mabasa Mab. 45 Romans VaRoma VaRom. 46 1 Corinthians 1 VaKorinde 1 VaKori. 47 2 Corinthians 2 VaKorinde 2 VaKori. 48 Galatians VaGaratia VaGar. 49 Ephesians VaEfeso VaEfe. 50 Philippians VaFiripi VaFir. 51 Colossians VaKorosi VaKoro. 52 1 Thessalonians 1 VaTesaronika 1 VaTes. 53 2 Thessalonians 2 VaTesaronika 2 VaTes. 54 1 Timothy 1 Timoti 1 Tim. 55 2 Timothy 2 Timoti 2 Tim. 56 Titus Titosi Tit. 57 Philemon Firimoni Fir. 58 Hebrews VaHebheru VaHeb. 59 James Jakobho Jak. 60 1 Peter 1 Peturo 1 Pet. 61 2 Peter 2 Peturo 2 Pet. 62 1 John 1 Johwani 1 Joh. 63 2 John 2 Johwani 2 Joh. 64 3 John 3 Johwani 3 Joh. 65 Jude Judhasi Jud. 66 Revelation Zvakazarurwa Zvak. bibledit-gtk-4.9/templates/Makefile000644 000766 000024 00000046442 12517415743 017534 0ustar00teusstaff000000 000000 # Makefile.in generated by automake 1.15 from Makefile.am. # templates/Makefile. Generated from Makefile.in by configure. # Copyright (C) 1994-2014 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. am__is_gnu_make = { \ if test -z '$(MAKELEVEL)'; then \ false; \ elif test -n '$(MAKE_HOST)'; then \ true; \ elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ true; \ else \ false; \ fi; \ } am__make_running_with_option = \ case $${target_option-} in \ ?) ;; \ *) echo "am__make_running_with_option: internal error: invalid" \ "target option '$${target_option-}' specified" >&2; \ exit 1;; \ esac; \ has_opt=no; \ sane_makeflags=$$MAKEFLAGS; \ if $(am__is_gnu_make); then \ sane_makeflags=$$MFLAGS; \ else \ case $$MAKEFLAGS in \ *\\[\ \ ]*) \ bs=\\; \ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ esac; \ fi; \ skip_next=no; \ strip_trailopt () \ { \ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ }; \ for flg in $$sane_makeflags; do \ test $$skip_next = yes && { skip_next=no; continue; }; \ case $$flg in \ *=*|--*) continue;; \ -*I) strip_trailopt 'I'; skip_next=yes;; \ -*I?*) strip_trailopt 'I';; \ -*O) strip_trailopt 'O'; skip_next=yes;; \ -*O?*) strip_trailopt 'O';; \ -*l) strip_trailopt 'l'; skip_next=yes;; \ -*l?*) strip_trailopt 'l';; \ -[dEDm]) skip_next=yes;; \ -[JT]) skip_next=yes;; \ esac; \ case $$flg in \ *$$target_option*) has_opt=yes; break;; \ esac; \ done; \ test $$has_opt = yes am__make_dryrun = (target_option=n; $(am__make_running_with_option)) am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) pkgdatadir = $(datadir)/bibledit-gtk pkgincludedir = $(includedir)/bibledit-gtk pkglibdir = $(libdir)/bibledit-gtk pkglibexecdir = $(libexecdir)/bibledit-gtk am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = i686-apple-darwin14.3.0 host_triplet = i686-apple-darwin14.3.0 target_triplet = i686-apple-darwin14.3.0 subdir = templates ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) DIST_COMMON = $(srcdir)/Makefile.am $(dist_pkgdata_DATA) \ $(am__DIST_COMMON) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = AM_V_P = $(am__v_P_$(V)) am__v_P_ = $(am__v_P_$(AM_DEFAULT_VERBOSITY)) am__v_P_0 = false am__v_P_1 = : AM_V_GEN = $(am__v_GEN_$(V)) am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) am__v_GEN_0 = @echo " GEN " $@; am__v_GEN_1 = AM_V_at = $(am__v_at_$(V)) am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) am__v_at_0 = @ am__v_at_1 = SOURCES = DIST_SOURCES = am__can_run_installinfo = \ case $$AM_UPDATE_INFO_DIR in \ n|no|NO) false;; \ *) (install-info --version) >/dev/null 2>&1;; \ esac am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ *) f=$$p;; \ esac; am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; am__install_max = 40 am__nobase_strip_setup = \ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` am__nobase_strip = \ for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" am__nobase_list = $(am__nobase_strip_setup); \ for p in $$list; do echo "$$p $$p"; done | \ sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ if (++n[$$2] == $(am__install_max)) \ { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ END { for (dir in files) print dir, files[dir] }' am__base_list = \ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' am__uninstall_files_from_dir = { \ test -z "$$files" \ || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ $(am__cd) "$$dir" && rm -f $$files; }; \ } am__installdirs = "$(DESTDIR)$(pkgdatadir)" DATA = $(dist_pkgdata_DATA) am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/mkinstalldirs \ README DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = ${SHELL} /Users/teus/Documents/dev/bibledit/gtk/missing aclocal-1.15 AMTAR = $${TAR-tar} AM_DEFAULT_VERBOSITY = 1 AUTOCONF = ${SHELL} /Users/teus/Documents/dev/bibledit/gtk/missing autoconf AUTOHEADER = ${SHELL} /Users/teus/Documents/dev/bibledit/gtk/missing autoheader AUTOMAKE = ${SHELL} /Users/teus/Documents/dev/bibledit/gtk/missing automake-1.15 AWK = gawk CAT_PATH = /bin/cat CC = gcc CCDEPMODE = depmode=gcc3 CFLAGS = -g -O2 CPP = gcc -E CPPFLAGS = CXX = g++ CXXCPP = g++ -E CXXDEPMODE = depmode=gcc3 CXXFLAGS = -g -O2 -std=c++11 CYGPATH_W = echo DATE_PATH = /bin/date DEFS = -DHAVE_CONFIG_H DEPDIR = .deps ECHO_C = \c ECHO_N = ECHO_T = EGREP = /usr/bin/grep -E ENCHANT_CFLAGS = -D_REENTRANT -I/opt/local/include/enchant -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include ENCHANT_LIBS = -L/opt/local/lib -lenchant -lgmodule-2.0 -lglib-2.0 -lintl EXEEXT = FIND_CURL = /opt/local/bin/curl FIND_DIFF = /usr/bin/diff FIND_GPP = /usr/bin/g++ FIND_MERGE = /opt/local/bin/merge FIND_PATCH = /usr/bin/patch FIND_PATH = /usr/bin/find FIND_TAR = /usr/bin/tar FIND_XARGS = /usr/bin/xargs GLIB_CFLAGS = -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include GLIB_LIBS = -L/opt/local/lib -lglib-2.0 -lintl GOBJECT_CFLAGS = -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include GOBJECT_LIBS = -L/opt/local/lib -lgobject-2.0 -lglib-2.0 -lintl GREP = /usr/bin/grep GREP_PATH = /usr/bin/grep GTHREAD_CFLAGS = -D_REENTRANT -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include GTHREAD_LIBS = -L/opt/local/lib -lgthread-2.0 -lglib-2.0 -lintl GTKSOURCEVIEW_CFLAGS = -D_REENTRANT -I/opt/local/include/gtksourceview-2.0 -I/opt/local/include/libxml2 -I/opt/local/include/gtk-2.0 -I/opt/local/lib/gtk-2.0/include -I/opt/local/include/pango-1.0 -I/opt/local/include/gio-unix-2.0/ -I/opt/local/include -I/opt/local/include/cairo -I/opt/local/include/atk-1.0 -I/opt/local/include/cairo -I/opt/local/include/pixman-1 -I/opt/local/include -I/opt/local/include/gdk-pixbuf-2.0 -I/opt/local/include/libpng16 -I/opt/local/include/pango-1.0 -I/opt/local/include/harfbuzz -I/opt/local/include/pango-1.0 -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include -I/opt/local/include/freetype2 -I/opt/local/include -I/opt/local/include/freetype2 -I/opt/local/include -I/opt/local/include/libpng16 GTKSOURCEVIEW_LIBS = -L/opt/local/lib -lgtksourceview-2.0 -lgtk-x11-2.0 -lgdk-x11-2.0 -lpangocairo-1.0 -lgio-2.0 -lXrender -lXinerama -lXi -lXrandr -lXcursor -lXcomposite -lXdamage -lXfixes -lX11 -lXext -latk-1.0 -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lpangoft2-1.0 -lpango-1.0 -lm -lgobject-2.0 -lglib-2.0 -lintl -lfontconfig -lfreetype GTK_CFLAGS = -D_REENTRANT -I/opt/local/include/gtk-2.0 -I/opt/local/lib/gtk-2.0/include -I/opt/local/include/atk-1.0 -I/opt/local/include/gtk-2.0 -I/opt/local/lib/gtk-2.0/include -I/opt/local/include/pango-1.0 -I/opt/local/include/harfbuzz -I/opt/local/include/pango-1.0 -I/opt/local/include/gio-unix-2.0/ -I/opt/local/include -I/opt/local/include/gdk-pixbuf-2.0 -I/opt/local/include/libpng16 -I/opt/local/include/cairo -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include -I/opt/local/include/pixman-1 -I/opt/local/include -I/opt/local/include/freetype2 -I/opt/local/include -I/opt/local/include/freetype2 -I/opt/local/include -I/opt/local/include/libpng16 -I/opt/local/include GTK_LIBS = -L/opt/local/lib -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk-x11-2.0 -lpangocairo-1.0 -lpangoft2-1.0 -lpango-1.0 -lm -lgio-2.0 -lfontconfig -lfreetype -lXrender -lXinerama -lXi -lXrandr -lXcursor -lXcomposite -lXdamage -lXfixes -lgdk_pixbuf-2.0 -lgobject-2.0 -lglib-2.0 -lintl -lcairo -lX11 -lXext GUNZIP_PATH = /usr/bin/gunzip GZIP_PATH = /usr/bin/gzip HAVE_CXX11 = HEAD_PATH = /usr/bin/head ICONV_PATH = /opt/local/bin/iconv INSTALL = /opt/local/bin/ginstall -c INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = $(install_sh) -c -s LDFLAGS = LIBOBJS = LIBS = LIBSOUP_CFLAGS = -D_REENTRANT -I/opt/local/include/libsoup-2.4 -I/opt/local/include/libxml2 -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include LIBSOUP_LIBS = -L/opt/local/lib -lsoup-2.4 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lintl LTLIBOBJS = MAKEINFO = ${SHELL} /Users/teus/Documents/dev/bibledit/gtk/missing makeinfo MAKE_PATH = /usr/bin/make MKDIR_P = /opt/local/bin/gmkdir -p OBJEXT = o PACKAGE = bibledit-gtk PACKAGE_BUGREPORT = http://www.nongnu.org/bibledit PACKAGE_NAME = bibledit-gtk PACKAGE_STRING = bibledit-gtk 4.9 PACKAGE_TARNAME = bibledit-gtk PACKAGE_URL = PACKAGE_VERSION = 4.9 PANGO_CFLAGS = -D_REENTRANT -I/opt/local/include/pango-1.0 -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include PANGO_LIBS = -L/opt/local/lib -lpango-1.0 -lm -lgobject-2.0 -lglib-2.0 -lintl PATH_SEPARATOR = : PKG_CONFIG = /opt/local/bin/pkg-config PKG_CONFIG_LIBDIR = PKG_CONFIG_PATH = /opt/local/bin/pkg-config SET_MAKE = SHELL = /bin/sh SORT_PATH = /usr/bin/sort SQLITE_CFLAGS = -I/opt/local/include SQLITE_LIBS = -L/opt/local/lib -lsqlite3 STRINGS_PATH = /usr/bin/strings STRIP = TAIL_PATH = /usr/bin/tail TEE_TOUCH = /usr/bin/touch VERSION = 4.9 WEBKIT_CFLAGS = -D_REENTRANT -I/opt/local/include/webkitgtk-1.0 -I/opt/local/include/gtk-2.0 -I/opt/local/lib/gtk-2.0/include -I/opt/local/include/pango-1.0 -I/opt/local/include/gio-unix-2.0/ -I/opt/local/include -I/opt/local/include/cairo -I/opt/local/include/atk-1.0 -I/opt/local/include/cairo -I/opt/local/include/pixman-1 -I/opt/local/include -I/opt/local/include/gdk-pixbuf-2.0 -I/opt/local/include/libpng16 -I/opt/local/include/pango-1.0 -I/opt/local/include/harfbuzz -I/opt/local/include/pango-1.0 -I/opt/local/include -I/opt/local/include/freetype2 -I/opt/local/include -I/opt/local/include/freetype2 -I/opt/local/include -I/opt/local/include/libpng16 -I/opt/local/include/libsoup-2.4 -I/opt/local/include/libxml2 -I/opt/local/include/webkitgtk-1.0 -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include WEBKIT_LIBS = -L/opt/local/lib -lwebkitgtk-1.0 -lgtk-x11-2.0 -lgdk-x11-2.0 -lpangocairo-1.0 -lgio-2.0 -lXrender -lXinerama -lXi -lXrandr -lXcursor -lXcomposite -lXdamage -lXfixes -lX11 -lXext -latk-1.0 -lcairo -lgdk_pixbuf-2.0 -lpangoft2-1.0 -lpango-1.0 -lm -lfontconfig -lfreetype -lsoup-2.4 -lgio-2.0 -lgobject-2.0 -ljavascriptcoregtk-1.0 -lglib-2.0 -lintl XML2_CONFIG = /opt/local/bin/xml2-config XML_CPPFLAGS = -I/opt/local/include/libxml2 XML_LIBS = -L/opt/local/lib -lxml2 -lz -lpthread -liconv -lm abs_builddir = /Users/teus/Documents/dev/bibledit/gtk/templates abs_srcdir = /Users/teus/Documents/dev/bibledit/gtk/templates abs_top_builddir = /Users/teus/Documents/dev/bibledit/gtk abs_top_srcdir = /Users/teus/Documents/dev/bibledit/gtk ac_ct_CC = gcc ac_ct_CXX = g++ am__include = include am__leading_dot = . am__quote = am__tar = tar --format=ustar -chf - "$$tardir" am__untar = tar -xf - bindir = ${exec_prefix}/bin build = i686-apple-darwin14.3.0 build_alias = build_cpu = i686 build_os = darwin14.3.0 build_vendor = apple builddir = . datadir = ${datarootdir} datarootdir = ${prefix}/share docdir = ${datarootdir}/doc/${PACKAGE_TARNAME} dvidir = ${docdir} exec_prefix = ${prefix} host = i686-apple-darwin14.3.0 host_alias = host_cpu = i686 host_os = darwin14.3.0 host_vendor = apple htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info install_sh = ${SHELL} /Users/teus/Documents/dev/bibledit/gtk/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale localstatedir = ${prefix}/var mandir = ${datarootdir}/man mkdir_p = $(MKDIR_P) oldincludedir = /usr/include packagedatadir = share/bibledit-gtk pdfdir = ${docdir} prefix = /usr program_transform_name = s,x,x, psdir = ${docdir} sbindir = ${exec_prefix}/sbin sharedstatedir = ${prefix}/com srcdir = . sysconfdir = ${prefix}/etc target = i686-apple-darwin14.3.0 target_alias = target_cpu = i686 target_os = darwin14.3.0 target_vendor = apple top_build_prefix = ../ top_builddir = .. top_srcdir = .. dist_pkgdata_DATA = * CLEANFILES = *~ all: all-am .SUFFIXES: $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu templates/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --gnu templates/Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): install-dist_pkgdataDATA: $(dist_pkgdata_DATA) @$(NORMAL_INSTALL) @list='$(dist_pkgdata_DATA)'; test -n "$(pkgdatadir)" || list=; \ if test -n "$$list"; then \ echo " $(MKDIR_P) '$(DESTDIR)$(pkgdatadir)'"; \ $(MKDIR_P) "$(DESTDIR)$(pkgdatadir)" || exit 1; \ fi; \ for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; \ done | $(am__base_list) | \ while read files; do \ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(pkgdatadir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(pkgdatadir)" || exit $$?; \ done uninstall-dist_pkgdataDATA: @$(NORMAL_UNINSTALL) @list='$(dist_pkgdata_DATA)'; test -n "$(pkgdatadir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ dir='$(DESTDIR)$(pkgdatadir)'; $(am__uninstall_files_from_dir) tags TAGS: ctags CTAGS: cscope cscopelist: distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done check-am: all-am check: check-am all-am: Makefile $(DATA) installdirs: for dir in "$(DESTDIR)$(pkgdatadir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: if test -z '$(STRIP)'; then \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ install; \ else \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ fi mostlyclean-generic: clean-generic: -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-generic mostlyclean-am distclean: distclean-am -rm -f Makefile distclean-am: clean-am distclean-generic dvi: dvi-am dvi-am: html: html-am html-am: info: info-am info-am: install-data-am: install-dist_pkgdataDATA install-dvi: install-dvi-am install-dvi-am: install-exec-am: install-html: install-html-am install-html-am: install-info: install-info-am install-info-am: install-man: install-pdf: install-pdf-am install-pdf-am: install-ps: install-ps-am install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-am -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-generic pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-dist_pkgdataDATA .MAKE: install-am install-strip .PHONY: all all-am check check-am clean clean-generic cscopelist-am \ ctags-am distclean distclean-generic distdir dvi dvi-am html \ html-am info info-am install install-am install-data \ install-data-am install-dist_pkgdataDATA install-dvi \ install-dvi-am install-exec install-exec-am install-html \ install-html-am install-info install-info-am install-man \ install-pdf install-pdf-am install-ps install-ps-am \ install-strip installcheck installcheck-am installdirs \ maintainer-clean maintainer-clean-generic mostlyclean \ mostlyclean-generic pdf pdf-am ps ps-am tags-am uninstall \ uninstall-am uninstall-dist_pkgdataDATA .PRECIOUS: Makefile # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: bibledit-gtk-4.9/templates/Makefile.am000664 000766 000024 00000000046 12221507125 020104 0ustar00teusstaff000000 000000 dist_pkgdata_DATA = * CLEANFILES = *~ bibledit-gtk-4.9/templates/Makefile.in000644 000766 000024 00000035631 12517415675 020143 0ustar00teusstaff000000 000000 # Makefile.in generated by automake 1.15 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2014 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ am__is_gnu_make = { \ if test -z '$(MAKELEVEL)'; then \ false; \ elif test -n '$(MAKE_HOST)'; then \ true; \ elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ true; \ else \ false; \ fi; \ } am__make_running_with_option = \ case $${target_option-} in \ ?) ;; \ *) echo "am__make_running_with_option: internal error: invalid" \ "target option '$${target_option-}' specified" >&2; \ exit 1;; \ esac; \ has_opt=no; \ sane_makeflags=$$MAKEFLAGS; \ if $(am__is_gnu_make); then \ sane_makeflags=$$MFLAGS; \ else \ case $$MAKEFLAGS in \ *\\[\ \ ]*) \ bs=\\; \ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ esac; \ fi; \ skip_next=no; \ strip_trailopt () \ { \ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ }; \ for flg in $$sane_makeflags; do \ test $$skip_next = yes && { skip_next=no; continue; }; \ case $$flg in \ *=*|--*) continue;; \ -*I) strip_trailopt 'I'; skip_next=yes;; \ -*I?*) strip_trailopt 'I';; \ -*O) strip_trailopt 'O'; skip_next=yes;; \ -*O?*) strip_trailopt 'O';; \ -*l) strip_trailopt 'l'; skip_next=yes;; \ -*l?*) strip_trailopt 'l';; \ -[dEDm]) skip_next=yes;; \ -[JT]) skip_next=yes;; \ esac; \ case $$flg in \ *$$target_option*) has_opt=yes; break;; \ esac; \ done; \ test $$has_opt = yes am__make_dryrun = (target_option=n; $(am__make_running_with_option)) am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ target_triplet = @target@ subdir = templates ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) DIST_COMMON = $(srcdir)/Makefile.am $(dist_pkgdata_DATA) \ $(am__DIST_COMMON) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = AM_V_P = $(am__v_P_@AM_V@) am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) am__v_P_0 = false am__v_P_1 = : AM_V_GEN = $(am__v_GEN_@AM_V@) am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) am__v_GEN_0 = @echo " GEN " $@; am__v_GEN_1 = AM_V_at = $(am__v_at_@AM_V@) am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) am__v_at_0 = @ am__v_at_1 = SOURCES = DIST_SOURCES = am__can_run_installinfo = \ case $$AM_UPDATE_INFO_DIR in \ n|no|NO) false;; \ *) (install-info --version) >/dev/null 2>&1;; \ esac am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ *) f=$$p;; \ esac; am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; am__install_max = 40 am__nobase_strip_setup = \ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` am__nobase_strip = \ for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" am__nobase_list = $(am__nobase_strip_setup); \ for p in $$list; do echo "$$p $$p"; done | \ sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ if (++n[$$2] == $(am__install_max)) \ { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ END { for (dir in files) print dir, files[dir] }' am__base_list = \ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' am__uninstall_files_from_dir = { \ test -z "$$files" \ || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ $(am__cd) "$$dir" && rm -f $$files; }; \ } am__installdirs = "$(DESTDIR)$(pkgdatadir)" DATA = $(dist_pkgdata_DATA) am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/mkinstalldirs \ README DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CAT_PATH = @CAT_PATH@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DATE_PATH = @DATE_PATH@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ ENCHANT_CFLAGS = @ENCHANT_CFLAGS@ ENCHANT_LIBS = @ENCHANT_LIBS@ EXEEXT = @EXEEXT@ FIND_CURL = @FIND_CURL@ FIND_DIFF = @FIND_DIFF@ FIND_GPP = @FIND_GPP@ FIND_MERGE = @FIND_MERGE@ FIND_PATCH = @FIND_PATCH@ FIND_PATH = @FIND_PATH@ FIND_TAR = @FIND_TAR@ FIND_XARGS = @FIND_XARGS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_LIBS = @GLIB_LIBS@ GOBJECT_CFLAGS = @GOBJECT_CFLAGS@ GOBJECT_LIBS = @GOBJECT_LIBS@ GREP = @GREP@ GREP_PATH = @GREP_PATH@ GTHREAD_CFLAGS = @GTHREAD_CFLAGS@ GTHREAD_LIBS = @GTHREAD_LIBS@ GTKSOURCEVIEW_CFLAGS = @GTKSOURCEVIEW_CFLAGS@ GTKSOURCEVIEW_LIBS = @GTKSOURCEVIEW_LIBS@ GTK_CFLAGS = @GTK_CFLAGS@ GTK_LIBS = @GTK_LIBS@ GUNZIP_PATH = @GUNZIP_PATH@ GZIP_PATH = @GZIP_PATH@ HAVE_CXX11 = @HAVE_CXX11@ HEAD_PATH = @HEAD_PATH@ ICONV_PATH = @ICONV_PATH@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBSOUP_CFLAGS = @LIBSOUP_CFLAGS@ LIBSOUP_LIBS = @LIBSOUP_LIBS@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MAKE_PATH = @MAKE_PATH@ MKDIR_P = @MKDIR_P@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PANGO_CFLAGS = @PANGO_CFLAGS@ PANGO_LIBS = @PANGO_LIBS@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SORT_PATH = @SORT_PATH@ SQLITE_CFLAGS = @SQLITE_CFLAGS@ SQLITE_LIBS = @SQLITE_LIBS@ STRINGS_PATH = @STRINGS_PATH@ STRIP = @STRIP@ TAIL_PATH = @TAIL_PATH@ TEE_TOUCH = @TEE_TOUCH@ VERSION = @VERSION@ WEBKIT_CFLAGS = @WEBKIT_CFLAGS@ WEBKIT_LIBS = @WEBKIT_LIBS@ XML2_CONFIG = @XML2_CONFIG@ XML_CPPFLAGS = @XML_CPPFLAGS@ XML_LIBS = @XML_LIBS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ ac_ct_CXX = @ac_ct_CXX@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ packagedatadir = @packagedatadir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target = @target@ target_alias = @target_alias@ target_cpu = @target_cpu@ target_os = @target_os@ target_vendor = @target_vendor@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ dist_pkgdata_DATA = * CLEANFILES = *~ all: all-am .SUFFIXES: $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu templates/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --gnu templates/Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): install-dist_pkgdataDATA: $(dist_pkgdata_DATA) @$(NORMAL_INSTALL) @list='$(dist_pkgdata_DATA)'; test -n "$(pkgdatadir)" || list=; \ if test -n "$$list"; then \ echo " $(MKDIR_P) '$(DESTDIR)$(pkgdatadir)'"; \ $(MKDIR_P) "$(DESTDIR)$(pkgdatadir)" || exit 1; \ fi; \ for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; \ done | $(am__base_list) | \ while read files; do \ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(pkgdatadir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(pkgdatadir)" || exit $$?; \ done uninstall-dist_pkgdataDATA: @$(NORMAL_UNINSTALL) @list='$(dist_pkgdata_DATA)'; test -n "$(pkgdatadir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ dir='$(DESTDIR)$(pkgdatadir)'; $(am__uninstall_files_from_dir) tags TAGS: ctags CTAGS: cscope cscopelist: distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done check-am: all-am check: check-am all-am: Makefile $(DATA) installdirs: for dir in "$(DESTDIR)$(pkgdatadir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: if test -z '$(STRIP)'; then \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ install; \ else \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ fi mostlyclean-generic: clean-generic: -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-generic mostlyclean-am distclean: distclean-am -rm -f Makefile distclean-am: clean-am distclean-generic dvi: dvi-am dvi-am: html: html-am html-am: info: info-am info-am: install-data-am: install-dist_pkgdataDATA install-dvi: install-dvi-am install-dvi-am: install-exec-am: install-html: install-html-am install-html-am: install-info: install-info-am install-info-am: install-man: install-pdf: install-pdf-am install-pdf-am: install-ps: install-ps-am install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-am -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-generic pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-dist_pkgdataDATA .MAKE: install-am install-strip .PHONY: all all-am check check-am clean clean-generic cscopelist-am \ ctags-am distclean distclean-generic distdir dvi dvi-am html \ html-am info info-am install install-am install-data \ install-data-am install-dist_pkgdataDATA install-dvi \ install-dvi-am install-exec install-exec-am install-html \ install-html-am install-info install-info-am install-man \ install-pdf install-pdf-am install-ps install-ps-am \ install-strip installcheck installcheck-am installdirs \ maintainer-clean maintainer-clean-generic mostlyclean \ mostlyclean-generic pdf pdf-am ps ps-am tags-am uninstall \ uninstall-am uninstall-dist_pkgdataDATA .PRECIOUS: Makefile # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: bibledit-gtk-4.9/templates/mapping_dutch_traditional.xml000664 000766 000024 00000735050 12221507126 024021 0ustar00teusstaff000000 000000 Genesis 1 31 55 Genesis 1 32 1 Genesis 1 32 1 Genesis 1 32 2 Genesis 1 32 2 Genesis 1 32 3 Genesis 1 32 3 Genesis 1 32 4 Genesis 1 32 4 Genesis 1 32 5 Genesis 1 32 5 Genesis 1 32 6 Genesis 1 32 6 Genesis 1 32 7 Genesis 1 32 7 Genesis 1 32 8 Genesis 1 32 8 Genesis 1 32 9 Genesis 1 32 9 Genesis 1 32 10 Genesis 1 32 10 Genesis 1 32 11 Genesis 1 32 11 Genesis 1 32 12 Genesis 1 32 12 Genesis 1 32 13 Genesis 1 32 13 Genesis 1 32 14 Genesis 1 32 14 Genesis 1 32 15 Genesis 1 32 15 Genesis 1 32 16 Genesis 1 32 16 Genesis 1 32 17 Genesis 1 32 17 Genesis 1 32 18 Genesis 1 32 18 Genesis 1 32 19 Genesis 1 32 19 Genesis 1 32 20 Genesis 1 32 20 Genesis 1 32 21 Genesis 1 32 21 Genesis 1 32 22 Genesis 1 32 22 Genesis 1 32 23 Genesis 1 32 23 Genesis 1 32 24 Genesis 1 32 24 Genesis 1 32 25 Genesis 1 32 25 Genesis 1 32 26 Genesis 1 32 26 Genesis 1 32 27 Genesis 1 32 27 Genesis 1 32 28 Genesis 1 32 28 Genesis 1 32 29 Genesis 1 32 29 Genesis 1 32 30 Genesis 1 32 30 Genesis 1 32 31 Genesis 1 32 31 Genesis 1 32 32 Genesis 1 32 32 Genesis 1 32 33 Exodus 2 5 24 Exodus 2 6 1 Exodus 2 6 2 Exodus 2 6 1 Exodus 2 6 3 Exodus 2 6 2 Exodus 2 6 4 Exodus 2 6 3 Exodus 2 6 5 Exodus 2 6 4 Exodus 2 6 6 Exodus 2 6 5 Exodus 2 6 7 Exodus 2 6 6 Exodus 2 6 8 Exodus 2 6 7 Exodus 2 6 9 Exodus 2 6 8 Exodus 2 6 10 Exodus 2 6 9 Exodus 2 6 11 Exodus 2 6 10 Exodus 2 6 12 Exodus 2 6 11 Exodus 2 6 13 Exodus 2 6 12 Exodus 2 6 14 Exodus 2 6 13 Exodus 2 6 15 Exodus 2 6 14 Exodus 2 6 16 Exodus 2 6 15 Exodus 2 6 17 Exodus 2 6 16 Exodus 2 6 18 Exodus 2 6 17 Exodus 2 6 19 Exodus 2 6 18 Exodus 2 6 20 Exodus 2 6 19 Exodus 2 6 21 Exodus 2 6 20 Exodus 2 6 22 Exodus 2 6 21 Exodus 2 6 23 Exodus 2 6 22 Exodus 2 6 24 Exodus 2 6 23 Exodus 2 6 25 Exodus 2 6 24 Exodus 2 6 26 Exodus 2 6 25 Exodus 2 6 27 Exodus 2 6 26 Exodus 2 6 28 Exodus 2 6 27 Exodus 2 6 29 Exodus 2 6 28 Exodus 2 6 30 Exodus 2 6 29 Exodus 2 8 1 Exodus 2 7 26 Exodus 2 8 2 Exodus 2 7 27 Exodus 2 8 3 Exodus 2 7 28 Exodus 2 8 4 Exodus 2 7 29 Exodus 2 8 5 Exodus 2 8 1 Exodus 2 8 6 Exodus 2 8 2 Exodus 2 8 7 Exodus 2 8 3 Exodus 2 8 8 Exodus 2 8 4 Exodus 2 8 9 Exodus 2 8 5 Exodus 2 8 10 Exodus 2 8 6 Exodus 2 8 11 Exodus 2 8 7 Exodus 2 8 12 Exodus 2 8 8 Exodus 2 8 13 Exodus 2 8 9 Exodus 2 8 14 Exodus 2 8 10 Exodus 2 8 15 Exodus 2 8 11 Exodus 2 8 16 Exodus 2 8 12 Exodus 2 8 17 Exodus 2 8 13 Exodus 2 8 18 Exodus 2 8 14 Exodus 2 8 19 Exodus 2 8 15 Exodus 2 8 20 Exodus 2 8 16 Exodus 2 8 21 Exodus 2 8 17 Exodus 2 8 22 Exodus 2 8 18 Exodus 2 8 23 Exodus 2 8 19 Exodus 2 8 24 Exodus 2 8 20 Exodus 2 8 25 Exodus 2 8 21 Exodus 2 8 26 Exodus 2 8 22 Exodus 2 8 27 Exodus 2 8 23 Exodus 2 8 28 Exodus 2 8 24 Exodus 2 8 29 Exodus 2 8 25 Exodus 2 8 30 Exodus 2 8 26 Exodus 2 8 31 Exodus 2 8 27 Exodus 2 8 32 Exodus 2 8 28 Exodus 2 22 1 Exodus 2 21 37 Exodus 2 22 2 Exodus 2 22 1 Exodus 2 22 3 Exodus 2 22 2 Exodus 2 22 4 Exodus 2 22 3 Exodus 2 22 5 Exodus 2 22 4 Exodus 2 22 6 Exodus 2 22 5 Exodus 2 22 7 Exodus 2 22 6 Exodus 2 22 8 Exodus 2 22 7 Exodus 2 22 9 Exodus 2 22 8 Exodus 2 22 10 Exodus 2 22 9 Exodus 2 22 11 Exodus 2 22 10 Exodus 2 22 12 Exodus 2 22 11 Exodus 2 22 13 Exodus 2 22 12 Exodus 2 22 14 Exodus 2 22 13 Exodus 2 22 15 Exodus 2 22 14 Exodus 2 22 16 Exodus 2 22 15 Exodus 2 22 17 Exodus 2 22 16 Exodus 2 22 18 Exodus 2 22 17 Exodus 2 22 19 Exodus 2 22 18 Exodus 2 22 20 Exodus 2 22 19 Exodus 2 22 21 Exodus 2 22 20 Exodus 2 22 22 Exodus 2 22 21 Exodus 2 22 23 Exodus 2 22 22 Exodus 2 22 24 Exodus 2 22 23 Exodus 2 22 25 Exodus 2 22 24 Exodus 2 22 26 Exodus 2 22 25 Exodus 2 22 27 Exodus 2 22 26 Exodus 2 22 28 Exodus 2 22 27 Exodus 2 22 29 Exodus 2 22 28 Exodus 2 22 30 Exodus 2 22 29 Exodus 2 22 31 Exodus 2 22 30 Leviticus 3 6 1 Leviticus 3 5 20 Leviticus 3 6 2 Leviticus 3 5 21 Leviticus 3 6 3 Leviticus 3 5 22 Leviticus 3 6 4 Leviticus 3 5 23 Leviticus 3 6 5 Leviticus 3 5 24 Leviticus 3 6 6 Leviticus 3 5 25 Leviticus 3 6 7 Leviticus 3 5 26 Leviticus 3 6 8 Leviticus 3 6 1 Leviticus 3 6 9 Leviticus 3 6 2 Leviticus 3 6 10 Leviticus 3 6 3 Leviticus 3 6 11 Leviticus 3 6 4 Leviticus 3 6 12 Leviticus 3 6 5 Leviticus 3 6 13 Leviticus 3 6 6 Leviticus 3 6 14 Leviticus 3 6 7 Leviticus 3 6 15 Leviticus 3 6 8 Leviticus 3 6 16 Leviticus 3 6 9 Leviticus 3 6 17 Leviticus 3 6 10 Leviticus 3 6 18 Leviticus 3 6 11 Leviticus 3 6 19 Leviticus 3 6 12 Leviticus 3 6 20 Leviticus 3 6 13 Leviticus 3 6 21 Leviticus 3 6 14 Leviticus 3 6 22 Leviticus 3 6 15 Leviticus 3 6 23 Leviticus 3 6 16 Leviticus 3 6 24 Leviticus 3 6 17 Leviticus 3 6 25 Leviticus 3 6 18 Leviticus 3 6 26 Leviticus 3 6 19 Leviticus 3 6 27 Leviticus 3 6 20 Leviticus 3 6 28 Leviticus 3 6 21 Leviticus 3 6 29 Leviticus 3 6 22 Leviticus 3 6 30 Leviticus 3 6 23 Numbers 4 16 36 Numbers 4 17 1 Numbers 4 16 37 Numbers 4 17 2 Numbers 4 16 38 Numbers 4 17 3 Numbers 4 16 39 Numbers 4 17 4 Numbers 4 16 40 Numbers 4 17 5 Numbers 4 16 41 Numbers 4 17 6 Numbers 4 16 42 Numbers 4 17 7 Numbers 4 16 43 Numbers 4 17 8 Numbers 4 16 44 Numbers 4 17 9 Numbers 4 16 45 Numbers 4 17 10 Numbers 4 16 46 Numbers 4 17 11 Numbers 4 16 47 Numbers 4 17 12 Numbers 4 16 48 Numbers 4 17 13 Numbers 4 16 49 Numbers 4 17 14 Numbers 4 16 50 Numbers 4 17 15 Numbers 4 17 1 Numbers 4 17 16 Numbers 4 17 2 Numbers 4 17 17 Numbers 4 17 3 Numbers 4 17 18 Numbers 4 17 4 Numbers 4 17 19 Numbers 4 17 5 Numbers 4 17 20 Numbers 4 17 6 Numbers 4 17 21 Numbers 4 17 7 Numbers 4 17 22 Numbers 4 17 8 Numbers 4 17 23 Numbers 4 17 9 Numbers 4 17 24 Numbers 4 17 10 Numbers 4 17 25 Numbers 4 17 11 Numbers 4 17 26 Numbers 4 17 12 Numbers 4 17 27 Numbers 4 17 13 Numbers 4 17 28 Numbers 4 26 1 Numbers 4 25 19 Numbers 4 26 1 Numbers 4 26 1 Numbers 4 29 40 Numbers 4 30 1 Numbers 4 30 1 Numbers 4 30 2 Numbers 4 30 2 Numbers 4 30 3 Numbers 4 30 3 Numbers 4 30 4 Numbers 4 30 4 Numbers 4 30 5 Numbers 4 30 5 Numbers 4 30 6 Numbers 4 30 6 Numbers 4 30 7 Numbers 4 30 7 Numbers 4 30 8 Numbers 4 30 8 Numbers 4 30 9 Numbers 4 30 9 Numbers 4 30 10 Numbers 4 30 10 Numbers 4 30 11 Numbers 4 30 11 Numbers 4 30 12 Numbers 4 30 12 Numbers 4 30 13 Numbers 4 30 13 Numbers 4 30 14 Numbers 4 30 14 Numbers 4 30 15 Numbers 4 30 15 Numbers 4 30 16 Numbers 4 30 16 Numbers 4 30 17 Deuteronomy 5 12 32 Deuteronomy 5 13 1 Deuteronomy 5 13 1 Deuteronomy 5 13 2 Deuteronomy 5 13 2 Deuteronomy 5 13 3 Deuteronomy 5 13 3 Deuteronomy 5 13 4 Deuteronomy 5 13 4 Deuteronomy 5 13 5 Deuteronomy 5 13 5 Deuteronomy 5 13 6 Deuteronomy 5 13 6 Deuteronomy 5 13 7 Deuteronomy 5 13 7 Deuteronomy 5 13 8 Deuteronomy 5 13 8 Deuteronomy 5 13 9 Deuteronomy 5 13 9 Deuteronomy 5 13 10 Deuteronomy 5 13 10 Deuteronomy 5 13 11 Deuteronomy 5 13 11 Deuteronomy 5 13 12 Deuteronomy 5 13 12 Deuteronomy 5 13 13 Deuteronomy 5 13 13 Deuteronomy 5 13 14 Deuteronomy 5 13 14 Deuteronomy 5 13 15 Deuteronomy 5 13 15 Deuteronomy 5 13 16 Deuteronomy 5 13 16 Deuteronomy 5 13 17 Deuteronomy 5 13 17 Deuteronomy 5 13 18 Deuteronomy 5 13 18 Deuteronomy 5 13 19 Deuteronomy 5 22 30 Deuteronomy 5 23 1 Deuteronomy 5 23 1 Deuteronomy 5 23 2 Deuteronomy 5 23 2 Deuteronomy 5 23 3 Deuteronomy 5 23 3 Deuteronomy 5 23 4 Deuteronomy 5 23 4 Deuteronomy 5 23 5 Deuteronomy 5 23 5 Deuteronomy 5 23 6 Deuteronomy 5 23 6 Deuteronomy 5 23 7 Deuteronomy 5 23 7 Deuteronomy 5 23 8 Deuteronomy 5 23 8 Deuteronomy 5 23 9 Deuteronomy 5 23 9 Deuteronomy 5 23 10 Deuteronomy 5 23 10 Deuteronomy 5 23 11 Deuteronomy 5 23 11 Deuteronomy 5 23 12 Deuteronomy 5 23 12 Deuteronomy 5 23 13 Deuteronomy 5 23 13 Deuteronomy 5 23 14 Deuteronomy 5 23 14 Deuteronomy 5 23 15 Deuteronomy 5 23 15 Deuteronomy 5 23 16 Deuteronomy 5 23 16 Deuteronomy 5 23 17 Deuteronomy 5 23 17 Deuteronomy 5 23 18 Deuteronomy 5 23 18 Deuteronomy 5 23 19 Deuteronomy 5 23 19 Deuteronomy 5 23 20 Deuteronomy 5 23 20 Deuteronomy 5 23 21 Deuteronomy 5 23 21 Deuteronomy 5 23 22 Deuteronomy 5 23 22 Deuteronomy 5 23 23 Deuteronomy 5 23 23 Deuteronomy 5 23 24 Deuteronomy 5 23 24 Deuteronomy 5 23 25 Deuteronomy 5 23 25 Deuteronomy 5 23 26 Deuteronomy 5 29 1 Deuteronomy 5 28 69 Deuteronomy 5 29 2 Deuteronomy 5 29 1 Deuteronomy 5 29 3 Deuteronomy 5 29 2 Deuteronomy 5 29 4 Deuteronomy 5 29 3 Deuteronomy 5 29 5 Deuteronomy 5 29 4 Deuteronomy 5 29 6 Deuteronomy 5 29 5 Deuteronomy 5 29 7 Deuteronomy 5 29 6 Deuteronomy 5 29 8 Deuteronomy 5 29 7 Deuteronomy 5 29 9 Deuteronomy 5 29 8 Deuteronomy 5 29 10 Deuteronomy 5 29 9 Deuteronomy 5 29 11 Deuteronomy 5 29 10 Deuteronomy 5 29 12 Deuteronomy 5 29 11 Deuteronomy 5 29 13 Deuteronomy 5 29 12 Deuteronomy 5 29 14 Deuteronomy 5 29 13 Deuteronomy 5 29 15 Deuteronomy 5 29 14 Deuteronomy 5 29 16 Deuteronomy 5 29 15 Deuteronomy 5 29 17 Deuteronomy 5 29 16 Deuteronomy 5 29 18 Deuteronomy 5 29 17 Deuteronomy 5 29 19 Deuteronomy 5 29 18 Deuteronomy 5 29 20 Deuteronomy 5 29 19 Deuteronomy 5 29 21 Deuteronomy 5 29 20 Deuteronomy 5 29 22 Deuteronomy 5 29 21 Deuteronomy 5 29 23 Deuteronomy 5 29 22 Deuteronomy 5 29 24 Deuteronomy 5 29 23 Deuteronomy 5 29 25 Deuteronomy 5 29 24 Deuteronomy 5 29 26 Deuteronomy 5 29 25 Deuteronomy 5 29 27 Deuteronomy 5 29 26 Deuteronomy 5 29 28 Deuteronomy 5 29 27 Deuteronomy 5 29 29 Deuteronomy 5 29 28 1 Samuel 9 20 43 1 Samuel 9 21 1 1 Samuel 9 21 1 1 Samuel 9 21 2 1 Samuel 9 21 2 1 Samuel 9 21 3 1 Samuel 9 21 3 1 Samuel 9 21 4 1 Samuel 9 21 4 1 Samuel 9 21 5 1 Samuel 9 21 5 1 Samuel 9 21 6 1 Samuel 9 21 6 1 Samuel 9 21 7 1 Samuel 9 21 7 1 Samuel 9 21 8 1 Samuel 9 21 8 1 Samuel 9 21 9 1 Samuel 9 21 9 1 Samuel 9 21 10 1 Samuel 9 21 10 1 Samuel 9 21 11 1 Samuel 9 21 11 1 Samuel 9 21 12 1 Samuel 9 21 12 1 Samuel 9 21 13 1 Samuel 9 21 13 1 Samuel 9 21 14 1 Samuel 9 21 14 1 Samuel 9 21 15 1 Samuel 9 21 15 1 Samuel 9 21 16 2 Samuel 10 18 33 2 Samuel 10 19 1 2 Samuel 10 19 1 2 Samuel 10 19 2 2 Samuel 10 19 2 2 Samuel 10 19 3 2 Samuel 10 19 3 2 Samuel 10 19 4 2 Samuel 10 19 4 2 Samuel 10 19 5 2 Samuel 10 19 5 2 Samuel 10 19 6 2 Samuel 10 19 6 2 Samuel 10 19 7 2 Samuel 10 19 7 2 Samuel 10 19 8 2 Samuel 10 19 8 2 Samuel 10 19 9 2 Samuel 10 19 9 2 Samuel 10 19 10 2 Samuel 10 19 10 2 Samuel 10 19 11 2 Samuel 10 19 11 2 Samuel 10 19 12 2 Samuel 10 19 12 2 Samuel 10 19 13 2 Samuel 10 19 13 2 Samuel 10 19 14 2 Samuel 10 19 14 2 Samuel 10 19 15 2 Samuel 10 19 15 2 Samuel 10 19 16 2 Samuel 10 19 16 2 Samuel 10 19 17 2 Samuel 10 19 17 2 Samuel 10 19 18 2 Samuel 10 19 18 2 Samuel 10 19 19 2 Samuel 10 19 19 2 Samuel 10 19 20 2 Samuel 10 19 20 2 Samuel 10 19 21 2 Samuel 10 19 21 2 Samuel 10 19 22 2 Samuel 10 19 22 2 Samuel 10 19 23 2 Samuel 10 19 23 2 Samuel 10 19 24 2 Samuel 10 19 24 2 Samuel 10 19 25 2 Samuel 10 19 25 2 Samuel 10 19 26 2 Samuel 10 19 26 2 Samuel 10 19 27 2 Samuel 10 19 27 2 Samuel 10 19 28 2 Samuel 10 19 28 2 Samuel 10 19 29 2 Samuel 10 19 29 2 Samuel 10 19 30 2 Samuel 10 19 30 2 Samuel 10 19 31 2 Samuel 10 19 31 2 Samuel 10 19 32 2 Samuel 10 19 32 2 Samuel 10 19 33 2 Samuel 10 19 33 2 Samuel 10 19 34 2 Samuel 10 19 34 2 Samuel 10 19 35 2 Samuel 10 19 35 2 Samuel 10 19 36 2 Samuel 10 19 36 2 Samuel 10 19 37 2 Samuel 10 19 37 2 Samuel 10 19 38 2 Samuel 10 19 38 2 Samuel 10 19 39 2 Samuel 10 19 39 2 Samuel 10 19 40 2 Samuel 10 19 40 2 Samuel 10 19 41 2 Samuel 10 19 41 2 Samuel 10 19 42 2 Samuel 10 19 42 2 Samuel 10 19 43 2 Samuel 10 19 43 2 Samuel 10 19 44 1 Kings 11 4 21 1 Kings 11 5 1 1 Kings 11 4 22 1 Kings 11 5 2 1 Kings 11 4 23 1 Kings 11 5 3 1 Kings 11 4 24 1 Kings 11 5 4 1 Kings 11 4 25 1 Kings 11 5 5 1 Kings 11 4 26 1 Kings 11 5 6 1 Kings 11 4 27 1 Kings 11 5 7 1 Kings 11 4 28 1 Kings 11 5 8 1 Kings 11 4 29 1 Kings 11 5 9 1 Kings 11 4 30 1 Kings 11 5 10 1 Kings 11 4 31 1 Kings 11 5 11 1 Kings 11 4 32 1 Kings 11 5 12 1 Kings 11 4 33 1 Kings 11 5 13 1 Kings 11 4 34 1 Kings 11 5 14 1 Kings 11 5 1 1 Kings 11 5 15 1 Kings 11 5 2 1 Kings 11 5 16 1 Kings 11 5 3 1 Kings 11 5 17 1 Kings 11 5 4 1 Kings 11 5 18 1 Kings 11 5 5 1 Kings 11 5 19 1 Kings 11 5 6 1 Kings 11 5 20 1 Kings 11 5 7 1 Kings 11 5 21 1 Kings 11 5 8 1 Kings 11 5 22 1 Kings 11 5 9 1 Kings 11 5 23 1 Kings 11 5 10 1 Kings 11 5 24 1 Kings 11 5 11 1 Kings 11 5 25 1 Kings 11 5 12 1 Kings 11 5 26 1 Kings 11 5 13 1 Kings 11 5 27 1 Kings 11 5 14 1 Kings 11 5 28 1 Kings 11 5 15 1 Kings 11 5 29 1 Kings 11 5 16 1 Kings 11 5 30 1 Kings 11 5 17 1 Kings 11 5 31 1 Kings 11 5 18 1 Kings 11 5 32 2 Kings 12 11 21 2 Kings 12 12 1 2 Kings 12 12 1 2 Kings 12 12 2 2 Kings 12 12 2 2 Kings 12 12 3 2 Kings 12 12 3 2 Kings 12 12 4 2 Kings 12 12 4 2 Kings 12 12 5 2 Kings 12 12 5 2 Kings 12 12 6 2 Kings 12 12 6 2 Kings 12 12 7 2 Kings 12 12 7 2 Kings 12 12 8 2 Kings 12 12 8 2 Kings 12 12 9 2 Kings 12 12 9 2 Kings 12 12 10 2 Kings 12 12 10 2 Kings 12 12 11 2 Kings 12 12 11 2 Kings 12 12 12 2 Kings 12 12 12 2 Kings 12 12 13 2 Kings 12 12 13 2 Kings 12 12 14 2 Kings 12 12 14 2 Kings 12 12 15 2 Kings 12 12 15 2 Kings 12 12 16 2 Kings 12 12 16 2 Kings 12 12 17 2 Kings 12 12 17 2 Kings 12 12 18 2 Kings 12 12 18 2 Kings 12 12 19 2 Kings 12 12 19 2 Kings 12 12 20 2 Kings 12 12 20 2 Kings 12 12 21 2 Kings 12 12 21 2 Kings 12 12 22 1 Chronicles 13 6 1 1 Chronicles 13 5 27 1 Chronicles 13 6 2 1 Chronicles 13 5 28 1 Chronicles 13 6 3 1 Chronicles 13 5 29 1 Chronicles 13 6 4 1 Chronicles 13 5 30 1 Chronicles 13 6 5 1 Chronicles 13 5 31 1 Chronicles 13 6 6 1 Chronicles 13 5 32 1 Chronicles 13 6 7 1 Chronicles 13 5 33 1 Chronicles 13 6 8 1 Chronicles 13 5 34 1 Chronicles 13 6 9 1 Chronicles 13 5 35 1 Chronicles 13 6 10 1 Chronicles 13 5 36 1 Chronicles 13 6 11 1 Chronicles 13 5 37 1 Chronicles 13 6 12 1 Chronicles 13 5 38 1 Chronicles 13 6 13 1 Chronicles 13 5 39 1 Chronicles 13 6 14 1 Chronicles 13 5 40 1 Chronicles 13 6 15 1 Chronicles 13 5 41 1 Chronicles 13 6 16 1 Chronicles 13 6 1 1 Chronicles 13 6 17 1 Chronicles 13 6 2 1 Chronicles 13 6 18 1 Chronicles 13 6 3 1 Chronicles 13 6 19 1 Chronicles 13 6 4 1 Chronicles 13 6 20 1 Chronicles 13 6 5 1 Chronicles 13 6 21 1 Chronicles 13 6 6 1 Chronicles 13 6 22 1 Chronicles 13 6 7 1 Chronicles 13 6 23 1 Chronicles 13 6 8 1 Chronicles 13 6 24 1 Chronicles 13 6 9 1 Chronicles 13 6 25 1 Chronicles 13 6 10 1 Chronicles 13 6 26 1 Chronicles 13 6 11 1 Chronicles 13 6 27 1 Chronicles 13 6 12 1 Chronicles 13 6 28 1 Chronicles 13 6 13 1 Chronicles 13 6 29 1 Chronicles 13 6 14 1 Chronicles 13 6 30 1 Chronicles 13 6 15 1 Chronicles 13 6 31 1 Chronicles 13 6 16 1 Chronicles 13 6 32 1 Chronicles 13 6 17 1 Chronicles 13 6 33 1 Chronicles 13 6 18 1 Chronicles 13 6 34 1 Chronicles 13 6 19 1 Chronicles 13 6 35 1 Chronicles 13 6 20 1 Chronicles 13 6 36 1 Chronicles 13 6 21 1 Chronicles 13 6 37 1 Chronicles 13 6 22 1 Chronicles 13 6 38 1 Chronicles 13 6 23 1 Chronicles 13 6 39 1 Chronicles 13 6 24 1 Chronicles 13 6 40 1 Chronicles 13 6 25 1 Chronicles 13 6 41 1 Chronicles 13 6 26 1 Chronicles 13 6 42 1 Chronicles 13 6 27 1 Chronicles 13 6 43 1 Chronicles 13 6 28 1 Chronicles 13 6 44 1 Chronicles 13 6 29 1 Chronicles 13 6 45 1 Chronicles 13 6 30 1 Chronicles 13 6 46 1 Chronicles 13 6 31 1 Chronicles 13 6 47 1 Chronicles 13 6 32 1 Chronicles 13 6 48 1 Chronicles 13 6 33 1 Chronicles 13 6 49 1 Chronicles 13 6 34 1 Chronicles 13 6 50 1 Chronicles 13 6 35 1 Chronicles 13 6 51 1 Chronicles 13 6 36 1 Chronicles 13 6 52 1 Chronicles 13 6 37 1 Chronicles 13 6 53 1 Chronicles 13 6 38 1 Chronicles 13 6 54 1 Chronicles 13 6 39 1 Chronicles 13 6 55 1 Chronicles 13 6 40 1 Chronicles 13 6 56 1 Chronicles 13 6 41 1 Chronicles 13 6 57 1 Chronicles 13 6 42 1 Chronicles 13 6 58 1 Chronicles 13 6 43 1 Chronicles 13 6 59 1 Chronicles 13 6 44 1 Chronicles 13 6 60 1 Chronicles 13 6 45 1 Chronicles 13 6 61 1 Chronicles 13 6 46 1 Chronicles 13 6 62 1 Chronicles 13 6 47 1 Chronicles 13 6 63 1 Chronicles 13 6 48 1 Chronicles 13 6 64 1 Chronicles 13 6 49 1 Chronicles 13 6 65 1 Chronicles 13 6 50 1 Chronicles 13 6 66 1 Chronicles 13 6 51 1 Chronicles 13 6 67 1 Chronicles 13 6 52 1 Chronicles 13 6 68 1 Chronicles 13 6 53 1 Chronicles 13 6 69 1 Chronicles 13 6 54 1 Chronicles 13 6 70 1 Chronicles 13 6 55 1 Chronicles 13 6 71 1 Chronicles 13 6 56 1 Chronicles 13 6 72 1 Chronicles 13 6 57 1 Chronicles 13 6 73 1 Chronicles 13 6 58 1 Chronicles 13 6 74 1 Chronicles 13 6 59 1 Chronicles 13 6 75 1 Chronicles 13 6 60 1 Chronicles 13 6 76 1 Chronicles 13 6 61 1 Chronicles 13 6 77 1 Chronicles 13 6 62 1 Chronicles 13 6 78 1 Chronicles 13 6 63 1 Chronicles 13 6 79 1 Chronicles 13 6 64 1 Chronicles 13 6 80 1 Chronicles 13 6 65 1 Chronicles 13 6 81 1 Chronicles 13 6 66 1 Chronicles 13 12 4 1 Chronicles 13 12 4 1 Chronicles 13 12 4 1 Chronicles 13 12 5 1 Chronicles 13 12 5 1 Chronicles 13 12 6 1 Chronicles 13 12 6 1 Chronicles 13 12 7 1 Chronicles 13 12 7 1 Chronicles 13 12 8 1 Chronicles 13 12 8 1 Chronicles 13 12 9 1 Chronicles 13 12 9 1 Chronicles 13 12 10 1 Chronicles 13 12 10 1 Chronicles 13 12 11 1 Chronicles 13 12 11 1 Chronicles 13 12 12 1 Chronicles 13 12 12 1 Chronicles 13 12 13 1 Chronicles 13 12 13 1 Chronicles 13 12 14 1 Chronicles 13 12 14 1 Chronicles 13 12 15 1 Chronicles 13 12 15 1 Chronicles 13 12 16 1 Chronicles 13 12 16 1 Chronicles 13 12 17 1 Chronicles 13 12 17 1 Chronicles 13 12 18 1 Chronicles 13 12 18 1 Chronicles 13 12 19 1 Chronicles 13 12 19 1 Chronicles 13 12 20 1 Chronicles 13 12 20 1 Chronicles 13 12 21 1 Chronicles 13 12 21 1 Chronicles 13 12 22 1 Chronicles 13 12 22 1 Chronicles 13 12 23 1 Chronicles 13 12 23 1 Chronicles 13 12 24 1 Chronicles 13 12 24 1 Chronicles 13 12 25 1 Chronicles 13 12 25 1 Chronicles 13 12 26 1 Chronicles 13 12 26 1 Chronicles 13 12 27 1 Chronicles 13 12 27 1 Chronicles 13 12 28 1 Chronicles 13 12 28 1 Chronicles 13 12 29 1 Chronicles 13 12 29 1 Chronicles 13 12 30 1 Chronicles 13 12 30 1 Chronicles 13 12 31 1 Chronicles 13 12 31 1 Chronicles 13 12 32 1 Chronicles 13 12 32 1 Chronicles 13 12 33 1 Chronicles 13 12 33 1 Chronicles 13 12 34 1 Chronicles 13 12 34 1 Chronicles 13 12 35 1 Chronicles 13 12 35 1 Chronicles 13 12 36 1 Chronicles 13 12 36 1 Chronicles 13 12 37 1 Chronicles 13 12 37 1 Chronicles 13 12 38 1 Chronicles 13 12 38 1 Chronicles 13 12 39 1 Chronicles 13 12 39 1 Chronicles 13 12 40 1 Chronicles 13 12 40 1 Chronicles 13 12 41 2 Chronicles 14 2 1 2 Chronicles 14 1 18 2 Chronicles 14 2 2 2 Chronicles 14 2 1 2 Chronicles 14 2 3 2 Chronicles 14 2 2 2 Chronicles 14 2 4 2 Chronicles 14 2 3 2 Chronicles 14 2 5 2 Chronicles 14 2 4 2 Chronicles 14 2 6 2 Chronicles 14 2 5 2 Chronicles 14 2 7 2 Chronicles 14 2 6 2 Chronicles 14 2 8 2 Chronicles 14 2 7 2 Chronicles 14 2 9 2 Chronicles 14 2 8 2 Chronicles 14 2 10 2 Chronicles 14 2 9 2 Chronicles 14 2 11 2 Chronicles 14 2 10 2 Chronicles 14 2 12 2 Chronicles 14 2 11 2 Chronicles 14 2 13 2 Chronicles 14 2 12 2 Chronicles 14 2 14 2 Chronicles 14 2 13 2 Chronicles 14 2 15 2 Chronicles 14 2 14 2 Chronicles 14 2 16 2 Chronicles 14 2 15 2 Chronicles 14 2 17 2 Chronicles 14 2 16 2 Chronicles 14 2 18 2 Chronicles 14 2 17 2 Chronicles 14 14 1 2 Chronicles 14 13 23 2 Chronicles 14 14 2 2 Chronicles 14 14 1 2 Chronicles 14 14 3 2 Chronicles 14 14 2 2 Chronicles 14 14 4 2 Chronicles 14 14 3 2 Chronicles 14 14 5 2 Chronicles 14 14 4 2 Chronicles 14 14 6 2 Chronicles 14 14 5 2 Chronicles 14 14 7 2 Chronicles 14 14 6 2 Chronicles 14 14 8 2 Chronicles 14 14 7 2 Chronicles 14 14 9 2 Chronicles 14 14 8 2 Chronicles 14 14 10 2 Chronicles 14 14 9 2 Chronicles 14 14 11 2 Chronicles 14 14 10 2 Chronicles 14 14 12 2 Chronicles 14 14 11 2 Chronicles 14 14 13 2 Chronicles 14 14 12 2 Chronicles 14 14 14 2 Chronicles 14 14 13 2 Chronicles 14 14 15 2 Chronicles 14 14 14 Nehemiah 16 4 1 Nehemiah 16 3 33 Nehemiah 16 4 2 Nehemiah 16 3 34 Nehemiah 16 4 3 Nehemiah 16 3 35 Nehemiah 16 4 4 Nehemiah 16 3 36 Nehemiah 16 4 5 Nehemiah 16 3 37 Nehemiah 16 4 6 Nehemiah 16 3 38 Nehemiah 16 4 7 Nehemiah 16 4 1 Nehemiah 16 4 8 Nehemiah 16 4 2 Nehemiah 16 4 9 Nehemiah 16 4 3 Nehemiah 16 4 10 Nehemiah 16 4 4 Nehemiah 16 4 11 Nehemiah 16 4 5 Nehemiah 16 4 12 Nehemiah 16 4 6 Nehemiah 16 4 13 Nehemiah 16 4 7 Nehemiah 16 4 14 Nehemiah 16 4 8 Nehemiah 16 4 15 Nehemiah 16 4 9 Nehemiah 16 4 16 Nehemiah 16 4 10 Nehemiah 16 4 17 Nehemiah 16 4 11 Nehemiah 16 4 18 Nehemiah 16 4 12 Nehemiah 16 4 19 Nehemiah 16 4 13 Nehemiah 16 4 20 Nehemiah 16 4 14 Nehemiah 16 4 21 Nehemiah 16 4 15 Nehemiah 16 4 22 Nehemiah 16 4 16 Nehemiah 16 4 23 Nehemiah 16 4 17 Nehemiah 16 7 72 Nehemiah 16 7 72 Nehemiah 16 8 1 Nehemiah 16 7 72 Nehemiah 16 8 2 Nehemiah 16 8 1 Nehemiah 16 8 3 Nehemiah 16 8 2 Nehemiah 16 8 4 Nehemiah 16 8 3 Nehemiah 16 8 5 Nehemiah 16 8 4 Nehemiah 16 8 6 Nehemiah 16 8 5 Nehemiah 16 8 7 Nehemiah 16 8 6 Nehemiah 16 8 8 Nehemiah 16 8 7 Nehemiah 16 8 9 Nehemiah 16 8 8 Nehemiah 16 8 10 Nehemiah 16 8 9 Nehemiah 16 8 11 Nehemiah 16 8 10 Nehemiah 16 8 12 Nehemiah 16 8 11 Nehemiah 16 8 13 Nehemiah 16 8 12 Nehemiah 16 8 14 Nehemiah 16 8 13 Nehemiah 16 8 15 Nehemiah 16 8 14 Nehemiah 16 8 16 Nehemiah 16 8 15 Nehemiah 16 8 17 Nehemiah 16 8 16 Nehemiah 16 8 18 Nehemiah 16 8 17 Nehemiah 16 8 19 Nehemiah 16 8 18 Nehemiah 16 9 38 Nehemiah 16 10 1 Nehemiah 16 10 1 Nehemiah 16 10 2 Nehemiah 16 10 2 Nehemiah 16 10 3 Nehemiah 16 10 3 Nehemiah 16 10 4 Nehemiah 16 10 4 Nehemiah 16 10 5 Nehemiah 16 10 5 Nehemiah 16 10 6 Nehemiah 16 10 6 Nehemiah 16 10 7 Nehemiah 16 10 7 Nehemiah 16 10 8 Nehemiah 16 10 8 Nehemiah 16 10 9 Nehemiah 16 10 9 Nehemiah 16 10 10 Nehemiah 16 10 10 Nehemiah 16 10 11 Nehemiah 16 10 11 Nehemiah 16 10 12 Nehemiah 16 10 12 Nehemiah 16 10 13 Nehemiah 16 10 13 Nehemiah 16 10 14 Nehemiah 16 10 14 Nehemiah 16 10 15 Nehemiah 16 10 15 Nehemiah 16 10 16 Nehemiah 16 10 16 Nehemiah 16 10 17 Nehemiah 16 10 17 Nehemiah 16 10 18 Nehemiah 16 10 18 Nehemiah 16 10 19 Nehemiah 16 10 19 Nehemiah 16 10 20 Nehemiah 16 10 20 Nehemiah 16 10 21 Nehemiah 16 10 21 Nehemiah 16 10 22 Nehemiah 16 10 22 Nehemiah 16 10 23 Nehemiah 16 10 23 Nehemiah 16 10 24 Nehemiah 16 10 24 Nehemiah 16 10 25 Nehemiah 16 10 25 Nehemiah 16 10 26 Nehemiah 16 10 26 Nehemiah 16 10 27 Nehemiah 16 10 27 Nehemiah 16 10 28 Nehemiah 16 10 28 Nehemiah 16 10 29 Nehemiah 16 10 29 Nehemiah 16 10 30 Nehemiah 16 10 30 Nehemiah 16 10 31 Nehemiah 16 10 31 Nehemiah 16 10 32 Nehemiah 16 10 32 Nehemiah 16 10 33 Nehemiah 16 10 33 Nehemiah 16 10 34 Nehemiah 16 10 34 Nehemiah 16 10 35 Nehemiah 16 10 35 Nehemiah 16 10 36 Nehemiah 16 10 36 Nehemiah 16 10 37 Nehemiah 16 10 37 Nehemiah 16 10 38 Nehemiah 16 10 38 Nehemiah 16 10 39 Nehemiah 16 10 39 Nehemiah 16 10 40 Job 18 39 1 Job 18 38 39 Job 18 39 2 Job 18 38 40 Job 18 39 3 Job 18 38 41 Job 18 39 4 Job 18 39 1 Job 18 39 5 Job 18 39 2 Job 18 39 6 Job 18 39 3 Job 18 39 7 Job 18 39 4 Job 18 39 8 Job 18 39 5 Job 18 39 9 Job 18 39 6 Job 18 39 10 Job 18 39 7 Job 18 39 11 Job 18 39 8 Job 18 39 12 Job 18 39 9 Job 18 39 13 Job 18 39 10 Job 18 39 14 Job 18 39 11 Job 18 39 15 Job 18 39 12 Job 18 39 16 Job 18 39 13 Job 18 39 17 Job 18 39 14 Job 18 39 18 Job 18 39 15 Job 18 39 19 Job 18 39 16 Job 18 39 20 Job 18 39 17 Job 18 39 21 Job 18 39 18 Job 18 39 22 Job 18 39 19 Job 18 39 23 Job 18 39 20 Job 18 39 24 Job 18 39 21 Job 18 39 25 Job 18 39 22 Job 18 39 26 Job 18 39 23 Job 18 39 27 Job 18 39 24 Job 18 39 28 Job 18 39 25 Job 18 39 29 Job 18 39 26 Job 18 39 30 Job 18 39 27 Job 18 39 31 Job 18 39 28 Job 18 39 32 Job 18 39 29 Job 18 39 33 Job 18 39 30 Job 18 39 34 Job 18 40 1 Job 18 39 35 Job 18 40 2 Job 18 39 36 Job 18 40 3 Job 18 39 37 Job 18 40 4 Job 18 39 38 Job 18 40 5 Job 18 40 1 Job 18 40 6 Job 18 40 2 Job 18 40 7 Job 18 40 3 Job 18 40 8 Job 18 40 4 Job 18 40 9 Job 18 40 5 Job 18 40 10 Job 18 40 6 Job 18 40 11 Job 18 40 7 Job 18 40 12 Job 18 40 8 Job 18 40 13 Job 18 40 9 Job 18 40 14 Job 18 40 10 Job 18 40 15 Job 18 40 11 Job 18 40 16 Job 18 40 12 Job 18 40 17 Job 18 40 13 Job 18 40 18 Job 18 40 14 Job 18 40 19 Job 18 40 15 Job 18 40 20 Job 18 40 16 Job 18 40 21 Job 18 40 17 Job 18 40 22 Job 18 40 18 Job 18 40 23 Job 18 40 19 Job 18 40 24 Job 18 40 20 Job 18 40 25 Job 18 40 21 Job 18 40 26 Job 18 40 22 Job 18 40 27 Job 18 40 23 Job 18 40 28 Job 18 40 24 Job 18 40 29 Job 18 40 25 Job 18 40 30 Job 18 40 26 Job 18 40 31 Job 18 40 27 Job 18 40 32 Job 18 40 28 Job 18 41 1 Job 18 41 1 Job 18 41 2 Job 18 41 2 Job 18 41 3 Job 18 41 3 Job 18 41 4 Job 18 41 4 Job 18 41 5 Job 18 41 5 Job 18 41 6 Job 18 41 6 Job 18 41 7 Job 18 41 7 Job 18 41 8 Job 18 41 8 Job 18 41 9 Job 18 41 9 Job 18 41 10 Job 18 41 10 Job 18 41 11 Job 18 41 11 Job 18 41 12 Job 18 41 12 Job 18 41 13 Job 18 41 13 Job 18 41 14 Job 18 41 14 Job 18 41 15 Job 18 41 15 Job 18 41 16 Job 18 41 16 Job 18 41 17 Job 18 41 17 Job 18 41 18 Job 18 41 18 Job 18 41 19 Job 18 41 19 Job 18 41 20 Job 18 41 20 Job 18 41 21 Job 18 41 21 Job 18 41 22 Job 18 41 22 Job 18 41 23 Job 18 41 23 Job 18 41 24 Job 18 41 24 Job 18 41 25 Job 18 41 25 Job 18 41 26 Song of Solomon 22 6 13 Song of Solomon 22 7 1 Song of Solomon 22 7 1 Song of Solomon 22 7 2 Song of Solomon 22 7 2 Song of Solomon 22 7 3 Song of Solomon 22 7 3 Song of Solomon 22 7 4 Song of Solomon 22 7 4 Song of Solomon 22 7 5 Song of Solomon 22 7 5 Song of Solomon 22 7 6 Song of Solomon 22 7 6 Song of Solomon 22 7 7 Song of Solomon 22 7 7 Song of Solomon 22 7 8 Song of Solomon 22 7 8 Song of Solomon 22 7 9 Song of Solomon 22 7 9 Song of Solomon 22 7 10 Song of Solomon 22 7 10 Song of Solomon 22 7 11 Song of Solomon 22 7 11 Song of Solomon 22 7 12 Song of Solomon 22 7 12 Song of Solomon 22 7 13 Song of Solomon 22 7 13 Song of Solomon 22 7 14 Isaiah 23 63 19 Isaiah 23 63 19 Isaiah 23 64 1 Isaiah 23 63 19 Isaiah 23 64 2 Isaiah 23 64 1 Isaiah 23 64 3 Isaiah 23 64 2 Isaiah 23 64 4 Isaiah 23 64 3 Isaiah 23 64 5 Isaiah 23 64 4 Isaiah 23 64 6 Isaiah 23 64 5 Isaiah 23 64 7 Isaiah 23 64 6 Isaiah 23 64 8 Isaiah 23 64 7 Isaiah 23 64 9 Isaiah 23 64 8 Isaiah 23 64 10 Isaiah 23 64 9 Isaiah 23 64 11 Isaiah 23 64 10 Isaiah 23 64 12 Isaiah 23 64 11 Jeremiah 24 9 1 Jeremiah 24 8 23 Jeremiah 24 9 2 Jeremiah 24 9 1 Jeremiah 24 9 3 Jeremiah 24 9 2 Jeremiah 24 9 4 Jeremiah 24 9 3 Jeremiah 24 9 5 Jeremiah 24 9 4 Jeremiah 24 9 6 Jeremiah 24 9 5 Jeremiah 24 9 7 Jeremiah 24 9 6 Jeremiah 24 9 8 Jeremiah 24 9 7 Jeremiah 24 9 9 Jeremiah 24 9 8 Jeremiah 24 9 10 Jeremiah 24 9 9 Jeremiah 24 9 11 Jeremiah 24 9 10 Jeremiah 24 9 12 Jeremiah 24 9 11 Jeremiah 24 9 13 Jeremiah 24 9 12 Jeremiah 24 9 14 Jeremiah 24 9 13 Jeremiah 24 9 15 Jeremiah 24 9 14 Jeremiah 24 9 16 Jeremiah 24 9 15 Jeremiah 24 9 17 Jeremiah 24 9 16 Jeremiah 24 9 18 Jeremiah 24 9 17 Jeremiah 24 9 19 Jeremiah 24 9 18 Jeremiah 24 9 20 Jeremiah 24 9 19 Jeremiah 24 9 21 Jeremiah 24 9 20 Jeremiah 24 9 22 Jeremiah 24 9 21 Jeremiah 24 9 23 Jeremiah 24 9 22 Jeremiah 24 9 24 Jeremiah 24 9 23 Jeremiah 24 9 25 Jeremiah 24 9 24 Jeremiah 24 9 26 Jeremiah 24 9 25 Ezekiel 26 20 45 Ezekiel 26 21 1 Ezekiel 26 20 46 Ezekiel 26 21 2 Ezekiel 26 20 47 Ezekiel 26 21 3 Ezekiel 26 20 48 Ezekiel 26 21 4 Ezekiel 26 20 49 Ezekiel 26 21 5 Ezekiel 26 21 1 Ezekiel 26 21 6 Ezekiel 26 21 2 Ezekiel 26 21 7 Ezekiel 26 21 3 Ezekiel 26 21 8 Ezekiel 26 21 4 Ezekiel 26 21 9 Ezekiel 26 21 5 Ezekiel 26 21 10 Ezekiel 26 21 6 Ezekiel 26 21 11 Ezekiel 26 21 7 Ezekiel 26 21 12 Ezekiel 26 21 8 Ezekiel 26 21 13 Ezekiel 26 21 9 Ezekiel 26 21 14 Ezekiel 26 21 10 Ezekiel 26 21 15 Ezekiel 26 21 11 Ezekiel 26 21 16 Ezekiel 26 21 12 Ezekiel 26 21 17 Ezekiel 26 21 13 Ezekiel 26 21 18 Ezekiel 26 21 14 Ezekiel 26 21 19 Ezekiel 26 21 15 Ezekiel 26 21 20 Ezekiel 26 21 16 Ezekiel 26 21 21 Ezekiel 26 21 17 Ezekiel 26 21 22 Ezekiel 26 21 18 Ezekiel 26 21 23 Ezekiel 26 21 19 Ezekiel 26 21 24 Ezekiel 26 21 20 Ezekiel 26 21 25 Ezekiel 26 21 21 Ezekiel 26 21 26 Ezekiel 26 21 22 Ezekiel 26 21 27 Ezekiel 26 21 23 Ezekiel 26 21 28 Ezekiel 26 21 24 Ezekiel 26 21 29 Ezekiel 26 21 25 Ezekiel 26 21 30 Ezekiel 26 21 26 Ezekiel 26 21 31 Ezekiel 26 21 27 Ezekiel 26 21 32 Ezekiel 26 21 28 Ezekiel 26 21 33 Ezekiel 26 21 29 Ezekiel 26 21 34 Ezekiel 26 21 30 Ezekiel 26 21 35 Ezekiel 26 21 31 Ezekiel 26 21 36 Ezekiel 26 21 32 Ezekiel 26 21 37 Daniel 27 4 1 Daniel 27 3 31 Daniel 27 4 2 Daniel 27 3 32 Daniel 27 4 3 Daniel 27 3 33 Daniel 27 4 4 Daniel 27 4 1 Daniel 27 4 5 Daniel 27 4 2 Daniel 27 4 6 Daniel 27 4 3 Daniel 27 4 7 Daniel 27 4 4 Daniel 27 4 8 Daniel 27 4 5 Daniel 27 4 9 Daniel 27 4 6 Daniel 27 4 10 Daniel 27 4 7 Daniel 27 4 11 Daniel 27 4 8 Daniel 27 4 12 Daniel 27 4 9 Daniel 27 4 13 Daniel 27 4 10 Daniel 27 4 14 Daniel 27 4 11 Daniel 27 4 15 Daniel 27 4 12 Daniel 27 4 16 Daniel 27 4 13 Daniel 27 4 17 Daniel 27 4 14 Daniel 27 4 18 Daniel 27 4 15 Daniel 27 4 19 Daniel 27 4 16 Daniel 27 4 20 Daniel 27 4 17 Daniel 27 4 21 Daniel 27 4 18 Daniel 27 4 22 Daniel 27 4 19 Daniel 27 4 23 Daniel 27 4 20 Daniel 27 4 24 Daniel 27 4 21 Daniel 27 4 25 Daniel 27 4 22 Daniel 27 4 26 Daniel 27 4 23 Daniel 27 4 27 Daniel 27 4 24 Daniel 27 4 28 Daniel 27 4 25 Daniel 27 4 29 Daniel 27 4 26 Daniel 27 4 30 Daniel 27 4 27 Daniel 27 4 31 Daniel 27 4 28 Daniel 27 4 32 Daniel 27 4 29 Daniel 27 4 33 Daniel 27 4 30 Daniel 27 4 34 Daniel 27 4 31 Daniel 27 4 35 Daniel 27 4 32 Daniel 27 4 36 Daniel 27 4 33 Daniel 27 4 37 Daniel 27 4 34 Hosea 28 1 10 Hosea 28 2 1 Hosea 28 1 11 Hosea 28 2 2 Hosea 28 1 12 Hosea 28 2 3 Hosea 28 2 1 Hosea 28 2 4 Hosea 28 2 2 Hosea 28 2 5 Hosea 28 2 3 Hosea 28 2 6 Hosea 28 2 4 Hosea 28 2 7 Hosea 28 2 5 Hosea 28 2 8 Hosea 28 2 6 Hosea 28 2 9 Hosea 28 2 7 Hosea 28 2 10 Hosea 28 2 8 Hosea 28 2 11 Hosea 28 2 9 Hosea 28 2 12 Hosea 28 2 10 Hosea 28 2 13 Hosea 28 2 11 Hosea 28 2 14 Hosea 28 2 12 Hosea 28 2 15 Hosea 28 2 13 Hosea 28 2 16 Hosea 28 2 14 Hosea 28 2 17 Hosea 28 2 15 Hosea 28 2 18 Hosea 28 2 16 Hosea 28 2 19 Hosea 28 2 17 Hosea 28 2 20 Hosea 28 2 18 Hosea 28 2 21 Hosea 28 2 19 Hosea 28 2 22 Hosea 28 2 20 Hosea 28 2 23 Hosea 28 2 21 Hosea 28 2 24 Hosea 28 2 22 Hosea 28 2 25 Joel 29 2 28 Joel 29 3 1 Joel 29 2 29 Joel 29 3 2 Joel 29 2 30 Joel 29 3 3 Joel 29 2 31 Joel 29 3 4 Joel 29 2 32 Joel 29 3 5 Joel 29 3 1 Joel 29 4 1 Joel 29 3 2 Joel 29 4 2 Joel 29 3 3 Joel 29 4 3 Joel 29 3 4 Joel 29 4 4 Joel 29 3 5 Joel 29 4 5 Joel 29 3 6 Joel 29 4 6 Joel 29 3 7 Joel 29 4 7 Joel 29 3 8 Joel 29 4 8 Joel 29 3 9 Joel 29 4 9 Joel 29 3 10 Joel 29 4 10 Joel 29 3 11 Joel 29 4 11 Joel 29 3 12 Joel 29 4 12 Joel 29 3 13 Joel 29 4 13 Joel 29 3 14 Joel 29 4 14 Joel 29 3 15 Joel 29 4 15 Joel 29 3 16 Joel 29 4 16 Joel 29 3 17 Joel 29 4 17 Joel 29 3 18 Joel 29 4 18 Joel 29 3 19 Joel 29 4 19 Joel 29 3 20 Joel 29 4 20 Joel 29 3 21 Joel 29 4 21 Jonah 32 1 17 Jonah 32 2 1 Jonah 32 2 1 Jonah 32 2 2 Jonah 32 2 2 Jonah 32 2 3 Jonah 32 2 3 Jonah 32 2 4 Jonah 32 2 4 Jonah 32 2 5 Jonah 32 2 5 Jonah 32 2 6 Jonah 32 2 6 Jonah 32 2 7 Jonah 32 2 7 Jonah 32 2 8 Jonah 32 2 8 Jonah 32 2 9 Jonah 32 2 9 Jonah 32 2 10 Jonah 32 2 10 Jonah 32 2 11 Nahum 34 1 15 Nahum 34 2 1 Nahum 34 2 1 Nahum 34 2 2 Nahum 34 2 2 Nahum 34 2 3 Nahum 34 2 3 Nahum 34 2 4 Nahum 34 2 4 Nahum 34 2 5 Nahum 34 2 5 Nahum 34 2 6 Nahum 34 2 6 Nahum 34 2 7 Nahum 34 2 7 Nahum 34 2 8 Nahum 34 2 8 Nahum 34 2 9 Nahum 34 2 9 Nahum 34 2 10 Nahum 34 2 10 Nahum 34 2 11 Nahum 34 2 11 Nahum 34 2 12 Nahum 34 2 12 Nahum 34 2 13 Nahum 34 2 13 Nahum 34 2 14 Haggai 37 2 1 Haggai 37 1 15 Haggai 37 2 2 Haggai 37 2 1 Haggai 37 2 3 Haggai 37 2 2 Haggai 37 2 4 Haggai 37 2 3 Haggai 37 2 5 Haggai 37 2 4 Haggai 37 2 6 Haggai 37 2 5 Haggai 37 2 7 Haggai 37 2 6 Haggai 37 2 8 Haggai 37 2 7 Haggai 37 2 9 Haggai 37 2 8 Haggai 37 2 10 Haggai 37 2 9 Haggai 37 2 11 Haggai 37 2 10 Haggai 37 2 12 Haggai 37 2 11 Haggai 37 2 13 Haggai 37 2 12 Haggai 37 2 14 Haggai 37 2 13 Haggai 37 2 15 Haggai 37 2 14 Haggai 37 2 16 Haggai 37 2 15 Haggai 37 2 17 Haggai 37 2 16 Haggai 37 2 18 Haggai 37 2 17 Haggai 37 2 19 Haggai 37 2 18 Haggai 37 2 20 Haggai 37 2 19 Haggai 37 2 21 Haggai 37 2 20 Haggai 37 2 22 Haggai 37 2 21 Haggai 37 2 23 Haggai 37 2 22 Haggai 37 2 24 Haggai 37 2 23 Zechariah 38 1 18 Zechariah 38 2 1 Zechariah 38 1 19 Zechariah 38 2 2 Zechariah 38 1 20 Zechariah 38 2 3 Zechariah 38 1 21 Zechariah 38 2 4 Zechariah 38 2 1 Zechariah 38 2 5 Zechariah 38 2 2 Zechariah 38 2 6 Zechariah 38 2 3 Zechariah 38 2 7 Zechariah 38 2 4 Zechariah 38 2 8 Zechariah 38 2 5 Zechariah 38 2 9 Zechariah 38 2 6 Zechariah 38 2 10 Zechariah 38 2 7 Zechariah 38 2 11 Zechariah 38 2 8 Zechariah 38 2 12 Zechariah 38 2 9 Zechariah 38 2 13 Zechariah 38 2 10 Zechariah 38 2 14 Zechariah 38 2 11 Zechariah 38 2 15 Zechariah 38 2 12 Zechariah 38 2 16 Zechariah 38 2 13 Zechariah 38 2 17 Malachi 39 4 1 Malachi 39 3 19 Malachi 39 4 2 Malachi 39 3 20 Malachi 39 4 3 Malachi 39 3 21 Malachi 39 4 4 Malachi 39 3 22 Malachi 39 4 5 Malachi 39 3 23 Malachi 39 4 6 Malachi 39 3 24 John 43 1 38 John 43 1 38 John 43 1 39 John 43 1 38 John 43 1 40 John 43 1 39 John 43 1 41 John 43 1 40 John 43 1 42 John 43 1 41 John 43 1 43 John 43 1 42 John 43 1 44 John 43 1 43 John 43 1 45 John 43 1 44 John 43 1 46 John 43 1 45 John 43 1 47 John 43 1 46 John 43 1 48 John 43 1 47 John 43 1 49 John 43 1 48 John 43 1 50 John 43 1 49 John 43 1 51 John 43 1 50 John 43 1 52 John 43 1 51 Romans 45 7 25 Romans 45 7 25 Romans 45 7 26 Romans 45 7 25 bibledit-gtk-4.9/templates/mapping_english.xml000664 000766 000024 00001733171 12221507125 021753 0ustar00teusstaff000000 000000 Genesis 1 31 55 Genesis 1 32 1 Genesis 1 32 1 Genesis 1 32 2 Genesis 1 32 2 Genesis 1 32 3 Genesis 1 32 3 Genesis 1 32 4 Genesis 1 32 4 Genesis 1 32 5 Genesis 1 32 5 Genesis 1 32 6 Genesis 1 32 6 Genesis 1 32 7 Genesis 1 32 7 Genesis 1 32 8 Genesis 1 32 8 Genesis 1 32 9 Genesis 1 32 9 Genesis 1 32 10 Genesis 1 32 10 Genesis 1 32 11 Genesis 1 32 11 Genesis 1 32 12 Genesis 1 32 12 Genesis 1 32 13 Genesis 1 32 13 Genesis 1 32 14 Genesis 1 32 14 Genesis 1 32 15 Genesis 1 32 15 Genesis 1 32 16 Genesis 1 32 16 Genesis 1 32 17 Genesis 1 32 17 Genesis 1 32 18 Genesis 1 32 18 Genesis 1 32 19 Genesis 1 32 19 Genesis 1 32 20 Genesis 1 32 20 Genesis 1 32 21 Genesis 1 32 21 Genesis 1 32 22 Genesis 1 32 22 Genesis 1 32 23 Genesis 1 32 23 Genesis 1 32 24 Genesis 1 32 24 Genesis 1 32 25 Genesis 1 32 25 Genesis 1 32 26 Genesis 1 32 26 Genesis 1 32 27 Genesis 1 32 27 Genesis 1 32 28 Genesis 1 32 28 Genesis 1 32 29 Genesis 1 32 29 Genesis 1 32 30 Genesis 1 32 30 Genesis 1 32 31 Genesis 1 32 31 Genesis 1 32 32 Genesis 1 32 32 Genesis 1 32 33 Exodus 2 8 1 Exodus 2 7 26 Exodus 2 8 2 Exodus 2 7 27 Exodus 2 8 3 Exodus 2 7 28 Exodus 2 8 4 Exodus 2 7 29 Exodus 2 8 5 Exodus 2 8 1 Exodus 2 8 6 Exodus 2 8 2 Exodus 2 8 7 Exodus 2 8 3 Exodus 2 8 8 Exodus 2 8 4 Exodus 2 8 9 Exodus 2 8 5 Exodus 2 8 10 Exodus 2 8 6 Exodus 2 8 11 Exodus 2 8 7 Exodus 2 8 12 Exodus 2 8 8 Exodus 2 8 13 Exodus 2 8 9 Exodus 2 8 14 Exodus 2 8 10 Exodus 2 8 15 Exodus 2 8 11 Exodus 2 8 16 Exodus 2 8 12 Exodus 2 8 17 Exodus 2 8 13 Exodus 2 8 18 Exodus 2 8 14 Exodus 2 8 19 Exodus 2 8 15 Exodus 2 8 20 Exodus 2 8 16 Exodus 2 8 21 Exodus 2 8 17 Exodus 2 8 22 Exodus 2 8 18 Exodus 2 8 23 Exodus 2 8 19 Exodus 2 8 24 Exodus 2 8 20 Exodus 2 8 25 Exodus 2 8 21 Exodus 2 8 26 Exodus 2 8 22 Exodus 2 8 27 Exodus 2 8 23 Exodus 2 8 28 Exodus 2 8 24 Exodus 2 8 29 Exodus 2 8 25 Exodus 2 8 30 Exodus 2 8 26 Exodus 2 8 31 Exodus 2 8 27 Exodus 2 8 32 Exodus 2 8 28 Exodus 2 22 1 Exodus 2 21 37 Exodus 2 22 2 Exodus 2 22 1 Exodus 2 22 3 Exodus 2 22 2 Exodus 2 22 4 Exodus 2 22 3 Exodus 2 22 5 Exodus 2 22 4 Exodus 2 22 6 Exodus 2 22 5 Exodus 2 22 7 Exodus 2 22 6 Exodus 2 22 8 Exodus 2 22 7 Exodus 2 22 9 Exodus 2 22 8 Exodus 2 22 10 Exodus 2 22 9 Exodus 2 22 11 Exodus 2 22 10 Exodus 2 22 12 Exodus 2 22 11 Exodus 2 22 13 Exodus 2 22 12 Exodus 2 22 14 Exodus 2 22 13 Exodus 2 22 15 Exodus 2 22 14 Exodus 2 22 16 Exodus 2 22 15 Exodus 2 22 17 Exodus 2 22 16 Exodus 2 22 18 Exodus 2 22 17 Exodus 2 22 19 Exodus 2 22 18 Exodus 2 22 20 Exodus 2 22 19 Exodus 2 22 21 Exodus 2 22 20 Exodus 2 22 22 Exodus 2 22 21 Exodus 2 22 23 Exodus 2 22 22 Exodus 2 22 24 Exodus 2 22 23 Exodus 2 22 25 Exodus 2 22 24 Exodus 2 22 26 Exodus 2 22 25 Exodus 2 22 27 Exodus 2 22 26 Exodus 2 22 28 Exodus 2 22 27 Exodus 2 22 29 Exodus 2 22 28 Exodus 2 22 30 Exodus 2 22 29 Exodus 2 22 31 Exodus 2 22 30 Leviticus 3 6 1 Leviticus 3 5 20 Leviticus 3 6 2 Leviticus 3 5 21 Leviticus 3 6 3 Leviticus 3 5 22 Leviticus 3 6 4 Leviticus 3 5 23 Leviticus 3 6 5 Leviticus 3 5 24 Leviticus 3 6 6 Leviticus 3 5 25 Leviticus 3 6 7 Leviticus 3 5 26 Leviticus 3 6 8 Leviticus 3 6 1 Leviticus 3 6 9 Leviticus 3 6 2 Leviticus 3 6 10 Leviticus 3 6 3 Leviticus 3 6 11 Leviticus 3 6 4 Leviticus 3 6 12 Leviticus 3 6 5 Leviticus 3 6 13 Leviticus 3 6 6 Leviticus 3 6 14 Leviticus 3 6 7 Leviticus 3 6 15 Leviticus 3 6 8 Leviticus 3 6 16 Leviticus 3 6 9 Leviticus 3 6 17 Leviticus 3 6 10 Leviticus 3 6 18 Leviticus 3 6 11 Leviticus 3 6 19 Leviticus 3 6 12 Leviticus 3 6 20 Leviticus 3 6 13 Leviticus 3 6 21 Leviticus 3 6 14 Leviticus 3 6 22 Leviticus 3 6 15 Leviticus 3 6 23 Leviticus 3 6 16 Leviticus 3 6 24 Leviticus 3 6 17 Leviticus 3 6 25 Leviticus 3 6 18 Leviticus 3 6 26 Leviticus 3 6 19 Leviticus 3 6 27 Leviticus 3 6 20 Leviticus 3 6 28 Leviticus 3 6 21 Leviticus 3 6 29 Leviticus 3 6 22 Leviticus 3 6 30 Leviticus 3 6 23 Numbers 4 16 36 Numbers 4 17 1 Numbers 4 16 37 Numbers 4 17 2 Numbers 4 16 38 Numbers 4 17 3 Numbers 4 16 39 Numbers 4 17 4 Numbers 4 16 40 Numbers 4 17 5 Numbers 4 16 41 Numbers 4 17 6 Numbers 4 16 42 Numbers 4 17 7 Numbers 4 16 43 Numbers 4 17 8 Numbers 4 16 44 Numbers 4 17 9 Numbers 4 16 45 Numbers 4 17 10 Numbers 4 16 46 Numbers 4 17 11 Numbers 4 16 47 Numbers 4 17 12 Numbers 4 16 48 Numbers 4 17 13 Numbers 4 16 49 Numbers 4 17 14 Numbers 4 16 50 Numbers 4 17 15 Numbers 4 17 1 Numbers 4 17 16 Numbers 4 17 2 Numbers 4 17 17 Numbers 4 17 3 Numbers 4 17 18 Numbers 4 17 4 Numbers 4 17 19 Numbers 4 17 5 Numbers 4 17 20 Numbers 4 17 6 Numbers 4 17 21 Numbers 4 17 7 Numbers 4 17 22 Numbers 4 17 8 Numbers 4 17 23 Numbers 4 17 9 Numbers 4 17 24 Numbers 4 17 10 Numbers 4 17 25 Numbers 4 17 11 Numbers 4 17 26 Numbers 4 17 12 Numbers 4 17 27 Numbers 4 17 13 Numbers 4 17 28 Numbers 4 26 1 Numbers 4 25 19 Numbers 4 26 1 Numbers 4 26 1 Numbers 4 29 40 Numbers 4 30 1 Numbers 4 30 1 Numbers 4 30 2 Numbers 4 30 2 Numbers 4 30 3 Numbers 4 30 3 Numbers 4 30 4 Numbers 4 30 4 Numbers 4 30 5 Numbers 4 30 5 Numbers 4 30 6 Numbers 4 30 6 Numbers 4 30 7 Numbers 4 30 7 Numbers 4 30 8 Numbers 4 30 8 Numbers 4 30 9 Numbers 4 30 9 Numbers 4 30 10 Numbers 4 30 10 Numbers 4 30 11 Numbers 4 30 11 Numbers 4 30 12 Numbers 4 30 12 Numbers 4 30 13 Numbers 4 30 13 Numbers 4 30 14 Numbers 4 30 14 Numbers 4 30 15 Numbers 4 30 15 Numbers 4 30 16 Numbers 4 30 16 Numbers 4 30 17 Deuteronomy 5 12 32 Deuteronomy 5 13 1 Deuteronomy 5 13 1 Deuteronomy 5 13 2 Deuteronomy 5 13 2 Deuteronomy 5 13 3 Deuteronomy 5 13 3 Deuteronomy 5 13 4 Deuteronomy 5 13 4 Deuteronomy 5 13 5 Deuteronomy 5 13 5 Deuteronomy 5 13 6 Deuteronomy 5 13 6 Deuteronomy 5 13 7 Deuteronomy 5 13 7 Deuteronomy 5 13 8 Deuteronomy 5 13 8 Deuteronomy 5 13 9 Deuteronomy 5 13 9 Deuteronomy 5 13 10 Deuteronomy 5 13 10 Deuteronomy 5 13 11 Deuteronomy 5 13 11 Deuteronomy 5 13 12 Deuteronomy 5 13 12 Deuteronomy 5 13 13 Deuteronomy 5 13 13 Deuteronomy 5 13 14 Deuteronomy 5 13 14 Deuteronomy 5 13 15 Deuteronomy 5 13 15 Deuteronomy 5 13 16 Deuteronomy 5 13 16 Deuteronomy 5 13 17 Deuteronomy 5 13 17 Deuteronomy 5 13 18 Deuteronomy 5 13 18 Deuteronomy 5 13 19 Deuteronomy 5 22 30 Deuteronomy 5 23 1 Deuteronomy 5 23 1 Deuteronomy 5 23 2 Deuteronomy 5 23 2 Deuteronomy 5 23 3 Deuteronomy 5 23 3 Deuteronomy 5 23 4 Deuteronomy 5 23 4 Deuteronomy 5 23 5 Deuteronomy 5 23 5 Deuteronomy 5 23 6 Deuteronomy 5 23 6 Deuteronomy 5 23 7 Deuteronomy 5 23 7 Deuteronomy 5 23 8 Deuteronomy 5 23 8 Deuteronomy 5 23 9 Deuteronomy 5 23 9 Deuteronomy 5 23 10 Deuteronomy 5 23 10 Deuteronomy 5 23 11 Deuteronomy 5 23 11 Deuteronomy 5 23 12 Deuteronomy 5 23 12 Deuteronomy 5 23 13 Deuteronomy 5 23 13 Deuteronomy 5 23 14 Deuteronomy 5 23 14 Deuteronomy 5 23 15 Deuteronomy 5 23 15 Deuteronomy 5 23 16 Deuteronomy 5 23 16 Deuteronomy 5 23 17 Deuteronomy 5 23 17 Deuteronomy 5 23 18 Deuteronomy 5 23 18 Deuteronomy 5 23 19 Deuteronomy 5 23 19 Deuteronomy 5 23 20 Deuteronomy 5 23 20 Deuteronomy 5 23 21 Deuteronomy 5 23 21 Deuteronomy 5 23 22 Deuteronomy 5 23 22 Deuteronomy 5 23 23 Deuteronomy 5 23 23 Deuteronomy 5 23 24 Deuteronomy 5 23 24 Deuteronomy 5 23 25 Deuteronomy 5 23 25 Deuteronomy 5 23 26 Deuteronomy 5 29 1 Deuteronomy 5 28 69 Deuteronomy 5 29 2 Deuteronomy 5 29 1 Deuteronomy 5 29 3 Deuteronomy 5 29 2 Deuteronomy 5 29 4 Deuteronomy 5 29 3 Deuteronomy 5 29 5 Deuteronomy 5 29 4 Deuteronomy 5 29 6 Deuteronomy 5 29 5 Deuteronomy 5 29 7 Deuteronomy 5 29 6 Deuteronomy 5 29 8 Deuteronomy 5 29 7 Deuteronomy 5 29 9 Deuteronomy 5 29 8 Deuteronomy 5 29 10 Deuteronomy 5 29 9 Deuteronomy 5 29 11 Deuteronomy 5 29 10 Deuteronomy 5 29 12 Deuteronomy 5 29 11 Deuteronomy 5 29 13 Deuteronomy 5 29 12 Deuteronomy 5 29 14 Deuteronomy 5 29 13 Deuteronomy 5 29 15 Deuteronomy 5 29 14 Deuteronomy 5 29 16 Deuteronomy 5 29 15 Deuteronomy 5 29 17 Deuteronomy 5 29 16 Deuteronomy 5 29 18 Deuteronomy 5 29 17 Deuteronomy 5 29 19 Deuteronomy 5 29 18 Deuteronomy 5 29 20 Deuteronomy 5 29 19 Deuteronomy 5 29 21 Deuteronomy 5 29 20 Deuteronomy 5 29 22 Deuteronomy 5 29 21 Deuteronomy 5 29 23 Deuteronomy 5 29 22 Deuteronomy 5 29 24 Deuteronomy 5 29 23 Deuteronomy 5 29 25 Deuteronomy 5 29 24 Deuteronomy 5 29 26 Deuteronomy 5 29 25 Deuteronomy 5 29 27 Deuteronomy 5 29 26 Deuteronomy 5 29 28 Deuteronomy 5 29 27 Deuteronomy 5 29 29 Deuteronomy 5 29 28 1 Samuel 9 20 42 1 Samuel 9 20 41 1 Samuel 9 21 1 1 Samuel 9 21 2 1 Samuel 9 21 2 1 Samuel 9 21 3 1 Samuel 9 21 3 1 Samuel 9 21 4 1 Samuel 9 21 4 1 Samuel 9 21 5 1 Samuel 9 21 5 1 Samuel 9 21 6 1 Samuel 9 21 6 1 Samuel 9 21 7 1 Samuel 9 21 7 1 Samuel 9 21 8 1 Samuel 9 21 8 1 Samuel 9 21 9 1 Samuel 9 21 9 1 Samuel 9 21 10 1 Samuel 9 21 10 1 Samuel 9 21 11 1 Samuel 9 21 11 1 Samuel 9 21 12 1 Samuel 9 21 12 1 Samuel 9 21 13 1 Samuel 9 21 13 1 Samuel 9 21 14 1 Samuel 9 21 14 1 Samuel 9 21 15 1 Samuel 9 21 15 1 Samuel 9 21 16 1 Samuel 9 23 29 1 Samuel 9 24 1 1 Samuel 9 24 1 1 Samuel 9 24 2 1 Samuel 9 24 2 1 Samuel 9 24 3 1 Samuel 9 24 3 1 Samuel 9 24 4 1 Samuel 9 24 4 1 Samuel 9 24 5 1 Samuel 9 24 5 1 Samuel 9 24 6 1 Samuel 9 24 6 1 Samuel 9 24 7 1 Samuel 9 24 7 1 Samuel 9 24 8 1 Samuel 9 24 8 1 Samuel 9 24 9 1 Samuel 9 24 9 1 Samuel 9 24 10 1 Samuel 9 24 10 1 Samuel 9 24 11 1 Samuel 9 24 11 1 Samuel 9 24 12 1 Samuel 9 24 12 1 Samuel 9 24 13 1 Samuel 9 24 13 1 Samuel 9 24 14 1 Samuel 9 24 14 1 Samuel 9 24 15 1 Samuel 9 24 15 1 Samuel 9 24 16 1 Samuel 9 24 16 1 Samuel 9 24 17 1 Samuel 9 24 17 1 Samuel 9 24 18 1 Samuel 9 24 18 1 Samuel 9 24 19 1 Samuel 9 24 19 1 Samuel 9 24 20 1 Samuel 9 24 20 1 Samuel 9 24 21 1 Samuel 9 24 21 1 Samuel 9 24 22 1 Samuel 9 24 22 1 Samuel 9 24 23 2 Samuel 10 18 33 2 Samuel 10 19 1 2 Samuel 10 19 1 2 Samuel 10 19 2 2 Samuel 10 19 2 2 Samuel 10 19 3 2 Samuel 10 19 3 2 Samuel 10 19 4 2 Samuel 10 19 4 2 Samuel 10 19 5 2 Samuel 10 19 5 2 Samuel 10 19 6 2 Samuel 10 19 6 2 Samuel 10 19 7 2 Samuel 10 19 7 2 Samuel 10 19 8 2 Samuel 10 19 8 2 Samuel 10 19 9 2 Samuel 10 19 9 2 Samuel 10 19 10 2 Samuel 10 19 10 2 Samuel 10 19 11 2 Samuel 10 19 11 2 Samuel 10 19 12 2 Samuel 10 19 12 2 Samuel 10 19 13 2 Samuel 10 19 13 2 Samuel 10 19 14 2 Samuel 10 19 14 2 Samuel 10 19 15 2 Samuel 10 19 15 2 Samuel 10 19 16 2 Samuel 10 19 16 2 Samuel 10 19 17 2 Samuel 10 19 17 2 Samuel 10 19 18 2 Samuel 10 19 18 2 Samuel 10 19 19 2 Samuel 10 19 19 2 Samuel 10 19 20 2 Samuel 10 19 20 2 Samuel 10 19 21 2 Samuel 10 19 21 2 Samuel 10 19 22 2 Samuel 10 19 22 2 Samuel 10 19 23 2 Samuel 10 19 23 2 Samuel 10 19 24 2 Samuel 10 19 24 2 Samuel 10 19 25 2 Samuel 10 19 25 2 Samuel 10 19 26 2 Samuel 10 19 26 2 Samuel 10 19 27 2 Samuel 10 19 27 2 Samuel 10 19 28 2 Samuel 10 19 28 2 Samuel 10 19 29 2 Samuel 10 19 29 2 Samuel 10 19 30 2 Samuel 10 19 30 2 Samuel 10 19 31 2 Samuel 10 19 31 2 Samuel 10 19 32 2 Samuel 10 19 32 2 Samuel 10 19 33 2 Samuel 10 19 33 2 Samuel 10 19 34 2 Samuel 10 19 34 2 Samuel 10 19 35 2 Samuel 10 19 35 2 Samuel 10 19 36 2 Samuel 10 19 36 2 Samuel 10 19 37 2 Samuel 10 19 37 2 Samuel 10 19 38 2 Samuel 10 19 38 2 Samuel 10 19 39 2 Samuel 10 19 39 2 Samuel 10 19 40 2 Samuel 10 19 40 2 Samuel 10 19 41 2 Samuel 10 19 41 2 Samuel 10 19 42 2 Samuel 10 19 42 2 Samuel 10 19 43 2 Samuel 10 19 43 2 Samuel 10 19 44 1 Kings 11 4 21 1 Kings 11 5 1 1 Kings 11 4 22 1 Kings 11 5 2 1 Kings 11 4 23 1 Kings 11 5 3 1 Kings 11 4 24 1 Kings 11 5 4 1 Kings 11 4 25 1 Kings 11 5 5 1 Kings 11 4 26 1 Kings 11 5 6 1 Kings 11 4 27 1 Kings 11 5 7 1 Kings 11 4 28 1 Kings 11 5 8 1 Kings 11 4 29 1 Kings 11 5 9 1 Kings 11 4 30 1 Kings 11 5 10 1 Kings 11 4 31 1 Kings 11 5 11 1 Kings 11 4 32 1 Kings 11 5 12 1 Kings 11 4 33 1 Kings 11 5 13 1 Kings 11 4 34 1 Kings 11 5 14 1 Kings 11 5 1 1 Kings 11 5 15 1 Kings 11 5 2 1 Kings 11 5 16 1 Kings 11 5 3 1 Kings 11 5 17 1 Kings 11 5 4 1 Kings 11 5 18 1 Kings 11 5 5 1 Kings 11 5 19 1 Kings 11 5 6 1 Kings 11 5 20 1 Kings 11 5 7 1 Kings 11 5 21 1 Kings 11 5 8 1 Kings 11 5 22 1 Kings 11 5 9 1 Kings 11 5 23 1 Kings 11 5 10 1 Kings 11 5 24 1 Kings 11 5 11 1 Kings 11 5 25 1 Kings 11 5 12 1 Kings 11 5 26 1 Kings 11 5 13 1 Kings 11 5 27 1 Kings 11 5 14 1 Kings 11 5 28 1 Kings 11 5 15 1 Kings 11 5 29 1 Kings 11 5 16 1 Kings 11 5 30 1 Kings 11 5 17 1 Kings 11 5 31 1 Kings 11 5 18 1 Kings 11 5 32 1 Kings 11 18 33 1 Kings 11 18 33 1 Kings 11 18 33 1 Kings 11 18 34 1 Kings 11 22 43 1 Kings 11 22 43 1 Kings 11 22 43 1 Kings 11 22 44 1 Kings 11 22 44 1 Kings 11 22 45 1 Kings 11 22 45 1 Kings 11 22 46 1 Kings 11 22 46 1 Kings 11 22 47 1 Kings 11 22 47 1 Kings 11 22 48 1 Kings 11 22 48 1 Kings 11 22 49 1 Kings 11 22 49 1 Kings 11 22 50 1 Kings 11 22 50 1 Kings 11 22 51 1 Kings 11 22 51 1 Kings 11 22 52 1 Kings 11 22 52 1 Kings 11 22 53 1 Kings 11 22 53 1 Kings 11 22 54 2 Kings 12 11 21 2 Kings 12 12 1 2 Kings 12 12 1 2 Kings 12 12 2 2 Kings 12 12 2 2 Kings 12 12 3 2 Kings 12 12 3 2 Kings 12 12 4 2 Kings 12 12 4 2 Kings 12 12 5 2 Kings 12 12 5 2 Kings 12 12 6 2 Kings 12 12 6 2 Kings 12 12 7 2 Kings 12 12 7 2 Kings 12 12 8 2 Kings 12 12 8 2 Kings 12 12 9 2 Kings 12 12 9 2 Kings 12 12 10 2 Kings 12 12 10 2 Kings 12 12 11 2 Kings 12 12 11 2 Kings 12 12 12 2 Kings 12 12 12 2 Kings 12 12 13 2 Kings 12 12 13 2 Kings 12 12 14 2 Kings 12 12 14 2 Kings 12 12 15 2 Kings 12 12 15 2 Kings 12 12 16 2 Kings 12 12 16 2 Kings 12 12 17 2 Kings 12 12 17 2 Kings 12 12 18 2 Kings 12 12 18 2 Kings 12 12 19 2 Kings 12 12 19 2 Kings 12 12 20 2 Kings 12 12 20 2 Kings 12 12 21 2 Kings 12 12 21 2 Kings 12 12 22 1 Chronicles 13 6 1 1 Chronicles 13 5 27 1 Chronicles 13 6 2 1 Chronicles 13 5 28 1 Chronicles 13 6 3 1 Chronicles 13 5 29 1 Chronicles 13 6 4 1 Chronicles 13 5 30 1 Chronicles 13 6 5 1 Chronicles 13 5 31 1 Chronicles 13 6 6 1 Chronicles 13 5 32 1 Chronicles 13 6 7 1 Chronicles 13 5 33 1 Chronicles 13 6 8 1 Chronicles 13 5 34 1 Chronicles 13 6 9 1 Chronicles 13 5 35 1 Chronicles 13 6 10 1 Chronicles 13 5 36 1 Chronicles 13 6 11 1 Chronicles 13 5 37 1 Chronicles 13 6 12 1 Chronicles 13 5 38 1 Chronicles 13 6 13 1 Chronicles 13 5 39 1 Chronicles 13 6 14 1 Chronicles 13 5 40 1 Chronicles 13 6 15 1 Chronicles 13 5 41 1 Chronicles 13 6 16 1 Chronicles 13 6 1 1 Chronicles 13 6 17 1 Chronicles 13 6 2 1 Chronicles 13 6 18 1 Chronicles 13 6 3 1 Chronicles 13 6 19 1 Chronicles 13 6 4 1 Chronicles 13 6 20 1 Chronicles 13 6 5 1 Chronicles 13 6 21 1 Chronicles 13 6 6 1 Chronicles 13 6 22 1 Chronicles 13 6 7 1 Chronicles 13 6 23 1 Chronicles 13 6 8 1 Chronicles 13 6 24 1 Chronicles 13 6 9 1 Chronicles 13 6 25 1 Chronicles 13 6 10 1 Chronicles 13 6 26 1 Chronicles 13 6 11 1 Chronicles 13 6 27 1 Chronicles 13 6 12 1 Chronicles 13 6 28 1 Chronicles 13 6 13 1 Chronicles 13 6 29 1 Chronicles 13 6 14 1 Chronicles 13 6 30 1 Chronicles 13 6 15 1 Chronicles 13 6 31 1 Chronicles 13 6 16 1 Chronicles 13 6 32 1 Chronicles 13 6 17 1 Chronicles 13 6 33 1 Chronicles 13 6 18 1 Chronicles 13 6 34 1 Chronicles 13 6 19 1 Chronicles 13 6 35 1 Chronicles 13 6 20 1 Chronicles 13 6 36 1 Chronicles 13 6 21 1 Chronicles 13 6 37 1 Chronicles 13 6 22 1 Chronicles 13 6 38 1 Chronicles 13 6 23 1 Chronicles 13 6 39 1 Chronicles 13 6 24 1 Chronicles 13 6 40 1 Chronicles 13 6 25 1 Chronicles 13 6 41 1 Chronicles 13 6 26 1 Chronicles 13 6 42 1 Chronicles 13 6 27 1 Chronicles 13 6 43 1 Chronicles 13 6 28 1 Chronicles 13 6 44 1 Chronicles 13 6 29 1 Chronicles 13 6 45 1 Chronicles 13 6 30 1 Chronicles 13 6 46 1 Chronicles 13 6 31 1 Chronicles 13 6 47 1 Chronicles 13 6 32 1 Chronicles 13 6 48 1 Chronicles 13 6 33 1 Chronicles 13 6 49 1 Chronicles 13 6 34 1 Chronicles 13 6 50 1 Chronicles 13 6 35 1 Chronicles 13 6 51 1 Chronicles 13 6 36 1 Chronicles 13 6 52 1 Chronicles 13 6 37 1 Chronicles 13 6 53 1 Chronicles 13 6 38 1 Chronicles 13 6 54 1 Chronicles 13 6 39 1 Chronicles 13 6 55 1 Chronicles 13 6 40 1 Chronicles 13 6 56 1 Chronicles 13 6 41 1 Chronicles 13 6 57 1 Chronicles 13 6 42 1 Chronicles 13 6 58 1 Chronicles 13 6 43 1 Chronicles 13 6 59 1 Chronicles 13 6 44 1 Chronicles 13 6 60 1 Chronicles 13 6 45 1 Chronicles 13 6 61 1 Chronicles 13 6 46 1 Chronicles 13 6 62 1 Chronicles 13 6 47 1 Chronicles 13 6 63 1 Chronicles 13 6 48 1 Chronicles 13 6 64 1 Chronicles 13 6 49 1 Chronicles 13 6 65 1 Chronicles 13 6 50 1 Chronicles 13 6 66 1 Chronicles 13 6 51 1 Chronicles 13 6 67 1 Chronicles 13 6 52 1 Chronicles 13 6 68 1 Chronicles 13 6 53 1 Chronicles 13 6 69 1 Chronicles 13 6 54 1 Chronicles 13 6 70 1 Chronicles 13 6 55 1 Chronicles 13 6 71 1 Chronicles 13 6 56 1 Chronicles 13 6 72 1 Chronicles 13 6 57 1 Chronicles 13 6 73 1 Chronicles 13 6 58 1 Chronicles 13 6 74 1 Chronicles 13 6 59 1 Chronicles 13 6 75 1 Chronicles 13 6 60 1 Chronicles 13 6 76 1 Chronicles 13 6 61 1 Chronicles 13 6 77 1 Chronicles 13 6 62 1 Chronicles 13 6 78 1 Chronicles 13 6 63 1 Chronicles 13 6 79 1 Chronicles 13 6 64 1 Chronicles 13 6 80 1 Chronicles 13 6 65 1 Chronicles 13 6 81 1 Chronicles 13 6 66 1 Chronicles 13 12 4 1 Chronicles 13 12 4 1 Chronicles 13 12 4 1 Chronicles 13 12 5 1 Chronicles 13 12 5 1 Chronicles 13 12 6 1 Chronicles 13 12 6 1 Chronicles 13 12 7 1 Chronicles 13 12 7 1 Chronicles 13 12 8 1 Chronicles 13 12 8 1 Chronicles 13 12 9 1 Chronicles 13 12 9 1 Chronicles 13 12 10 1 Chronicles 13 12 10 1 Chronicles 13 12 11 1 Chronicles 13 12 11 1 Chronicles 13 12 12 1 Chronicles 13 12 12 1 Chronicles 13 12 13 1 Chronicles 13 12 13 1 Chronicles 13 12 14 1 Chronicles 13 12 14 1 Chronicles 13 12 15 1 Chronicles 13 12 15 1 Chronicles 13 12 16 1 Chronicles 13 12 16 1 Chronicles 13 12 17 1 Chronicles 13 12 17 1 Chronicles 13 12 18 1 Chronicles 13 12 18 1 Chronicles 13 12 19 1 Chronicles 13 12 19 1 Chronicles 13 12 20 1 Chronicles 13 12 20 1 Chronicles 13 12 21 1 Chronicles 13 12 21 1 Chronicles 13 12 22 1 Chronicles 13 12 22 1 Chronicles 13 12 23 1 Chronicles 13 12 23 1 Chronicles 13 12 24 1 Chronicles 13 12 24 1 Chronicles 13 12 25 1 Chronicles 13 12 25 1 Chronicles 13 12 26 1 Chronicles 13 12 26 1 Chronicles 13 12 27 1 Chronicles 13 12 27 1 Chronicles 13 12 28 1 Chronicles 13 12 28 1 Chronicles 13 12 29 1 Chronicles 13 12 29 1 Chronicles 13 12 30 1 Chronicles 13 12 30 1 Chronicles 13 12 31 1 Chronicles 13 12 31 1 Chronicles 13 12 32 1 Chronicles 13 12 32 1 Chronicles 13 12 33 1 Chronicles 13 12 33 1 Chronicles 13 12 34 1 Chronicles 13 12 34 1 Chronicles 13 12 35 1 Chronicles 13 12 35 1 Chronicles 13 12 36 1 Chronicles 13 12 36 1 Chronicles 13 12 37 1 Chronicles 13 12 37 1 Chronicles 13 12 38 1 Chronicles 13 12 38 1 Chronicles 13 12 39 1 Chronicles 13 12 39 1 Chronicles 13 12 40 1 Chronicles 13 12 40 1 Chronicles 13 12 41 2 Chronicles 14 2 1 2 Chronicles 14 1 18 2 Chronicles 14 2 2 2 Chronicles 14 2 1 2 Chronicles 14 2 3 2 Chronicles 14 2 2 2 Chronicles 14 2 4 2 Chronicles 14 2 3 2 Chronicles 14 2 5 2 Chronicles 14 2 4 2 Chronicles 14 2 6 2 Chronicles 14 2 5 2 Chronicles 14 2 7 2 Chronicles 14 2 6 2 Chronicles 14 2 8 2 Chronicles 14 2 7 2 Chronicles 14 2 9 2 Chronicles 14 2 8 2 Chronicles 14 2 10 2 Chronicles 14 2 9 2 Chronicles 14 2 11 2 Chronicles 14 2 10 2 Chronicles 14 2 12 2 Chronicles 14 2 11 2 Chronicles 14 2 13 2 Chronicles 14 2 12 2 Chronicles 14 2 14 2 Chronicles 14 2 13 2 Chronicles 14 2 15 2 Chronicles 14 2 14 2 Chronicles 14 2 16 2 Chronicles 14 2 15 2 Chronicles 14 2 17 2 Chronicles 14 2 16 2 Chronicles 14 2 18 2 Chronicles 14 2 17 2 Chronicles 14 14 1 2 Chronicles 14 13 23 2 Chronicles 14 14 2 2 Chronicles 14 14 1 2 Chronicles 14 14 3 2 Chronicles 14 14 2 2 Chronicles 14 14 4 2 Chronicles 14 14 3 2 Chronicles 14 14 5 2 Chronicles 14 14 4 2 Chronicles 14 14 6 2 Chronicles 14 14 5 2 Chronicles 14 14 7 2 Chronicles 14 14 6 2 Chronicles 14 14 8 2 Chronicles 14 14 7 2 Chronicles 14 14 9 2 Chronicles 14 14 8 2 Chronicles 14 14 10 2 Chronicles 14 14 9 2 Chronicles 14 14 11 2 Chronicles 14 14 10 2 Chronicles 14 14 12 2 Chronicles 14 14 11 2 Chronicles 14 14 13 2 Chronicles 14 14 12 2 Chronicles 14 14 14 2 Chronicles 14 14 13 2 Chronicles 14 14 15 2 Chronicles 14 14 14 Nehemiah 16 4 1 Nehemiah 16 3 33 Nehemiah 16 4 2 Nehemiah 16 3 34 Nehemiah 16 4 3 Nehemiah 16 3 35 Nehemiah 16 4 4 Nehemiah 16 3 36 Nehemiah 16 4 5 Nehemiah 16 3 37 Nehemiah 16 4 6 Nehemiah 16 3 38 Nehemiah 16 4 7 Nehemiah 16 4 1 Nehemiah 16 4 8 Nehemiah 16 4 2 Nehemiah 16 4 9 Nehemiah 16 4 3 Nehemiah 16 4 10 Nehemiah 16 4 4 Nehemiah 16 4 11 Nehemiah 16 4 5 Nehemiah 16 4 12 Nehemiah 16 4 6 Nehemiah 16 4 13 Nehemiah 16 4 7 Nehemiah 16 4 14 Nehemiah 16 4 8 Nehemiah 16 4 15 Nehemiah 16 4 9 Nehemiah 16 4 16 Nehemiah 16 4 10 Nehemiah 16 4 17 Nehemiah 16 4 11 Nehemiah 16 4 18 Nehemiah 16 4 12 Nehemiah 16 4 19 Nehemiah 16 4 13 Nehemiah 16 4 20 Nehemiah 16 4 14 Nehemiah 16 4 21 Nehemiah 16 4 15 Nehemiah 16 4 22 Nehemiah 16 4 16 Nehemiah 16 4 23 Nehemiah 16 4 17 Nehemiah 16 7 68 Nehemiah 16 7 67 Nehemiah 16 7 69 Nehemiah 16 7 68 Nehemiah 16 7 70 Nehemiah 16 7 69 Nehemiah 16 7 71 Nehemiah 16 7 70 Nehemiah 16 7 72 Nehemiah 16 7 71 Nehemiah 16 7 73 Nehemiah 16 7 72 Nehemiah 16 9 38 Nehemiah 16 10 1 Nehemiah 16 10 1 Nehemiah 16 10 2 Nehemiah 16 10 2 Nehemiah 16 10 3 Nehemiah 16 10 3 Nehemiah 16 10 4 Nehemiah 16 10 4 Nehemiah 16 10 5 Nehemiah 16 10 5 Nehemiah 16 10 6 Nehemiah 16 10 6 Nehemiah 16 10 7 Nehemiah 16 10 7 Nehemiah 16 10 8 Nehemiah 16 10 8 Nehemiah 16 10 9 Nehemiah 16 10 9 Nehemiah 16 10 10 Nehemiah 16 10 10 Nehemiah 16 10 11 Nehemiah 16 10 11 Nehemiah 16 10 12 Nehemiah 16 10 12 Nehemiah 16 10 13 Nehemiah 16 10 13 Nehemiah 16 10 14 Nehemiah 16 10 14 Nehemiah 16 10 15 Nehemiah 16 10 15 Nehemiah 16 10 16 Nehemiah 16 10 16 Nehemiah 16 10 17 Nehemiah 16 10 17 Nehemiah 16 10 18 Nehemiah 16 10 18 Nehemiah 16 10 19 Nehemiah 16 10 19 Nehemiah 16 10 20 Nehemiah 16 10 20 Nehemiah 16 10 21 Nehemiah 16 10 21 Nehemiah 16 10 22 Nehemiah 16 10 22 Nehemiah 16 10 23 Nehemiah 16 10 23 Nehemiah 16 10 24 Nehemiah 16 10 24 Nehemiah 16 10 25 Nehemiah 16 10 25 Nehemiah 16 10 26 Nehemiah 16 10 26 Nehemiah 16 10 27 Nehemiah 16 10 27 Nehemiah 16 10 28 Nehemiah 16 10 28 Nehemiah 16 10 29 Nehemiah 16 10 29 Nehemiah 16 10 30 Nehemiah 16 10 30 Nehemiah 16 10 31 Nehemiah 16 10 31 Nehemiah 16 10 32 Nehemiah 16 10 32 Nehemiah 16 10 33 Nehemiah 16 10 33 Nehemiah 16 10 34 Nehemiah 16 10 34 Nehemiah 16 10 35 Nehemiah 16 10 35 Nehemiah 16 10 36 Nehemiah 16 10 36 Nehemiah 16 10 37 Nehemiah 16 10 37 Nehemiah 16 10 38 Nehemiah 16 10 38 Nehemiah 16 10 39 Nehemiah 16 10 39 Nehemiah 16 10 40 Job 18 41 1 Job 18 40 25 Job 18 41 2 Job 18 40 26 Job 18 41 3 Job 18 40 27 Job 18 41 4 Job 18 40 28 Job 18 41 5 Job 18 40 29 Job 18 41 6 Job 18 40 30 Job 18 41 7 Job 18 40 31 Job 18 41 8 Job 18 40 32 Job 18 41 9 Job 18 41 1 Job 18 41 10 Job 18 41 2 Job 18 41 11 Job 18 41 3 Job 18 41 12 Job 18 41 4 Job 18 41 13 Job 18 41 5 Job 18 41 14 Job 18 41 6 Job 18 41 15 Job 18 41 7 Job 18 41 16 Job 18 41 8 Job 18 41 17 Job 18 41 9 Job 18 41 18 Job 18 41 10 Job 18 41 19 Job 18 41 11 Job 18 41 20 Job 18 41 12 Job 18 41 21 Job 18 41 13 Job 18 41 22 Job 18 41 14 Job 18 41 23 Job 18 41 15 Job 18 41 24 Job 18 41 16 Job 18 41 25 Job 18 41 17 Job 18 41 26 Job 18 41 18 Job 18 41 27 Job 18 41 19 Job 18 41 28 Job 18 41 20 Job 18 41 29 Job 18 41 21 Job 18 41 30 Job 18 41 22 Job 18 41 31 Job 18 41 23 Job 18 41 32 Job 18 41 24 Job 18 41 33 Job 18 41 25 Job 18 41 34 Job 18 41 26 Psalms 19 3 0 Psalms 19 3 1 Psalms 19 3 1 Psalms 19 3 2 Psalms 19 3 2 Psalms 19 3 3 Psalms 19 3 3 Psalms 19 3 4 Psalms 19 3 4 Psalms 19 3 5 Psalms 19 3 5 Psalms 19 3 6 Psalms 19 3 6 Psalms 19 3 7 Psalms 19 3 7 Psalms 19 3 8 Psalms 19 3 8 Psalms 19 3 9 Psalms 19 4 0 Psalms 19 4 1 Psalms 19 4 1 Psalms 19 4 2 Psalms 19 4 2 Psalms 19 4 3 Psalms 19 4 3 Psalms 19 4 4 Psalms 19 4 4 Psalms 19 4 5 Psalms 19 4 5 Psalms 19 4 6 Psalms 19 4 6 Psalms 19 4 7 Psalms 19 4 7 Psalms 19 4 8 Psalms 19 4 8 Psalms 19 4 9 Psalms 19 5 0 Psalms 19 5 1 Psalms 19 5 1 Psalms 19 5 2 Psalms 19 5 2 Psalms 19 5 3 Psalms 19 5 3 Psalms 19 5 4 Psalms 19 5 4 Psalms 19 5 5 Psalms 19 5 5 Psalms 19 5 6 Psalms 19 5 6 Psalms 19 5 7 Psalms 19 5 7 Psalms 19 5 8 Psalms 19 5 8 Psalms 19 5 9 Psalms 19 5 9 Psalms 19 5 10 Psalms 19 5 10 Psalms 19 5 11 Psalms 19 5 11 Psalms 19 5 12 Psalms 19 5 12 Psalms 19 5 13 Psalms 19 6 0 Psalms 19 6 1 Psalms 19 6 1 Psalms 19 6 2 Psalms 19 6 2 Psalms 19 6 3 Psalms 19 6 3 Psalms 19 6 4 Psalms 19 6 4 Psalms 19 6 5 Psalms 19 6 5 Psalms 19 6 6 Psalms 19 6 6 Psalms 19 6 7 Psalms 19 6 7 Psalms 19 6 8 Psalms 19 6 8 Psalms 19 6 9 Psalms 19 6 9 Psalms 19 6 10 Psalms 19 6 10 Psalms 19 6 11 Psalms 19 7 0 Psalms 19 7 1 Psalms 19 7 1 Psalms 19 7 2 Psalms 19 7 2 Psalms 19 7 3 Psalms 19 7 3 Psalms 19 7 4 Psalms 19 7 4 Psalms 19 7 5 Psalms 19 7 5 Psalms 19 7 6 Psalms 19 7 6 Psalms 19 7 7 Psalms 19 7 7 Psalms 19 7 8 Psalms 19 7 8 Psalms 19 7 9 Psalms 19 7 9 Psalms 19 7 10 Psalms 19 7 10 Psalms 19 7 11 Psalms 19 7 11 Psalms 19 7 12 Psalms 19 7 12 Psalms 19 7 13 Psalms 19 7 13 Psalms 19 7 14 Psalms 19 7 14 Psalms 19 7 15 Psalms 19 7 15 Psalms 19 7 16 Psalms 19 7 16 Psalms 19 7 17 Psalms 19 7 17 Psalms 19 7 18 Psalms 19 8 0 Psalms 19 8 1 Psalms 19 8 1 Psalms 19 8 2 Psalms 19 8 2 Psalms 19 8 3 Psalms 19 8 3 Psalms 19 8 4 Psalms 19 8 4 Psalms 19 8 5 Psalms 19 8 5 Psalms 19 8 6 Psalms 19 8 6 Psalms 19 8 7 Psalms 19 8 7 Psalms 19 8 8 Psalms 19 8 8 Psalms 19 8 9 Psalms 19 8 9 Psalms 19 8 10 Psalms 19 9 0 Psalms 19 9 1 Psalms 19 9 1 Psalms 19 9 2 Psalms 19 9 2 Psalms 19 9 3 Psalms 19 9 3 Psalms 19 9 4 Psalms 19 9 4 Psalms 19 9 5 Psalms 19 9 5 Psalms 19 9 6 Psalms 19 9 6 Psalms 19 9 7 Psalms 19 9 7 Psalms 19 9 8 Psalms 19 9 8 Psalms 19 9 9 Psalms 19 9 9 Psalms 19 9 10 Psalms 19 9 10 Psalms 19 9 11 Psalms 19 9 11 Psalms 19 9 12 Psalms 19 9 12 Psalms 19 9 13 Psalms 19 9 13 Psalms 19 9 14 Psalms 19 9 14 Psalms 19 9 15 Psalms 19 9 15 Psalms 19 9 16 Psalms 19 9 16 Psalms 19 9 17 Psalms 19 9 17 Psalms 19 9 18 Psalms 19 9 18 Psalms 19 9 19 Psalms 19 9 19 Psalms 19 9 20 Psalms 19 9 20 Psalms 19 9 21 Psalms 19 12 0 Psalms 19 12 1 Psalms 19 12 1 Psalms 19 12 2 Psalms 19 12 2 Psalms 19 12 3 Psalms 19 12 3 Psalms 19 12 4 Psalms 19 12 4 Psalms 19 12 5 Psalms 19 12 5 Psalms 19 12 6 Psalms 19 12 6 Psalms 19 12 7 Psalms 19 12 7 Psalms 19 12 8 Psalms 19 12 8 Psalms 19 12 9 Psalms 19 13 0 Psalms 19 13 1 Psalms 19 13 1 Psalms 19 13 2 Psalms 19 13 2 Psalms 19 13 3 Psalms 19 13 3 Psalms 19 13 4 Psalms 19 13 4 Psalms 19 13 5 Psalms 19 13 5 Psalms 19 13 6 Psalms 19 18 0 Psalms 19 18 1 Psalms 19 18 1 Psalms 19 18 2 Psalms 19 18 2 Psalms 19 18 3 Psalms 19 18 3 Psalms 19 18 4 Psalms 19 18 4 Psalms 19 18 5 Psalms 19 18 5 Psalms 19 18 6 Psalms 19 18 6 Psalms 19 18 7 Psalms 19 18 7 Psalms 19 18 8 Psalms 19 18 8 Psalms 19 18 9 Psalms 19 18 9 Psalms 19 18 10 Psalms 19 18 10 Psalms 19 18 11 Psalms 19 18 11 Psalms 19 18 12 Psalms 19 18 12 Psalms 19 18 13 Psalms 19 18 13 Psalms 19 18 14 Psalms 19 18 14 Psalms 19 18 15 Psalms 19 18 15 Psalms 19 18 16 Psalms 19 18 16 Psalms 19 18 17 Psalms 19 18 17 Psalms 19 18 18 Psalms 19 18 18 Psalms 19 18 19 Psalms 19 18 19 Psalms 19 18 20 Psalms 19 18 20 Psalms 19 18 21 Psalms 19 18 21 Psalms 19 18 22 Psalms 19 18 22 Psalms 19 18 23 Psalms 19 18 23 Psalms 19 18 24 Psalms 19 18 24 Psalms 19 18 25 Psalms 19 18 25 Psalms 19 18 26 Psalms 19 18 26 Psalms 19 18 27 Psalms 19 18 27 Psalms 19 18 28 Psalms 19 18 28 Psalms 19 18 29 Psalms 19 18 29 Psalms 19 18 30 Psalms 19 18 30 Psalms 19 18 31 Psalms 19 18 31 Psalms 19 18 32 Psalms 19 18 32 Psalms 19 18 33 Psalms 19 18 33 Psalms 19 18 34 Psalms 19 18 34 Psalms 19 18 35 Psalms 19 18 35 Psalms 19 18 36 Psalms 19 18 36 Psalms 19 18 37 Psalms 19 18 37 Psalms 19 18 38 Psalms 19 18 38 Psalms 19 18 39 Psalms 19 18 39 Psalms 19 18 40 Psalms 19 18 40 Psalms 19 18 41 Psalms 19 18 41 Psalms 19 18 42 Psalms 19 18 42 Psalms 19 18 43 Psalms 19 18 43 Psalms 19 18 44 Psalms 19 18 44 Psalms 19 18 45 Psalms 19 18 45 Psalms 19 18 46 Psalms 19 18 46 Psalms 19 18 47 Psalms 19 18 47 Psalms 19 18 48 Psalms 19 18 48 Psalms 19 18 49 Psalms 19 18 49 Psalms 19 18 50 Psalms 19 18 50 Psalms 19 18 51 Psalms 19 19 0 Psalms 19 19 1 Psalms 19 19 1 Psalms 19 19 2 Psalms 19 19 2 Psalms 19 19 3 Psalms 19 19 3 Psalms 19 19 4 Psalms 19 19 4 Psalms 19 19 5 Psalms 19 19 5 Psalms 19 19 6 Psalms 19 19 6 Psalms 19 19 7 Psalms 19 19 7 Psalms 19 19 8 Psalms 19 19 8 Psalms 19 19 9 Psalms 19 19 9 Psalms 19 19 10 Psalms 19 19 10 Psalms 19 19 11 Psalms 19 19 11 Psalms 19 19 12 Psalms 19 19 12 Psalms 19 19 13 Psalms 19 19 13 Psalms 19 19 14 Psalms 19 19 14 Psalms 19 19 15 Psalms 19 20 0 Psalms 19 20 1 Psalms 19 20 1 Psalms 19 20 2 Psalms 19 20 2 Psalms 19 20 3 Psalms 19 20 3 Psalms 19 20 4 Psalms 19 20 4 Psalms 19 20 5 Psalms 19 20 5 Psalms 19 20 6 Psalms 19 20 6 Psalms 19 20 7 Psalms 19 20 7 Psalms 19 20 8 Psalms 19 20 8 Psalms 19 20 9 Psalms 19 20 9 Psalms 19 20 10 Psalms 19 21 0 Psalms 19 21 1 Psalms 19 21 1 Psalms 19 21 2 Psalms 19 21 2 Psalms 19 21 3 Psalms 19 21 3 Psalms 19 21 4 Psalms 19 21 4 Psalms 19 21 5 Psalms 19 21 5 Psalms 19 21 6 Psalms 19 21 6 Psalms 19 21 7 Psalms 19 21 7 Psalms 19 21 8 Psalms 19 21 8 Psalms 19 21 9 Psalms 19 21 9 Psalms 19 21 10 Psalms 19 21 10 Psalms 19 21 11 Psalms 19 21 11 Psalms 19 21 12 Psalms 19 21 12 Psalms 19 21 13 Psalms 19 21 13 Psalms 19 21 14 Psalms 19 22 0 Psalms 19 22 1 Psalms 19 22 1 Psalms 19 22 2 Psalms 19 22 2 Psalms 19 22 3 Psalms 19 22 3 Psalms 19 22 4 Psalms 19 22 4 Psalms 19 22 5 Psalms 19 22 5 Psalms 19 22 6 Psalms 19 22 6 Psalms 19 22 7 Psalms 19 22 7 Psalms 19 22 8 Psalms 19 22 8 Psalms 19 22 9 Psalms 19 22 9 Psalms 19 22 10 Psalms 19 22 10 Psalms 19 22 11 Psalms 19 22 11 Psalms 19 22 12 Psalms 19 22 12 Psalms 19 22 13 Psalms 19 22 13 Psalms 19 22 14 Psalms 19 22 14 Psalms 19 22 15 Psalms 19 22 15 Psalms 19 22 16 Psalms 19 22 16 Psalms 19 22 17 Psalms 19 22 17 Psalms 19 22 18 Psalms 19 22 18 Psalms 19 22 19 Psalms 19 22 19 Psalms 19 22 20 Psalms 19 22 20 Psalms 19 22 21 Psalms 19 22 21 Psalms 19 22 22 Psalms 19 22 22 Psalms 19 22 23 Psalms 19 22 23 Psalms 19 22 24 Psalms 19 22 24 Psalms 19 22 25 Psalms 19 22 25 Psalms 19 22 26 Psalms 19 22 26 Psalms 19 22 27 Psalms 19 22 27 Psalms 19 22 28 Psalms 19 22 28 Psalms 19 22 29 Psalms 19 22 29 Psalms 19 22 30 Psalms 19 22 30 Psalms 19 22 31 Psalms 19 22 31 Psalms 19 22 32 Psalms 19 30 0 Psalms 19 30 1 Psalms 19 30 1 Psalms 19 30 2 Psalms 19 30 2 Psalms 19 30 3 Psalms 19 30 3 Psalms 19 30 4 Psalms 19 30 4 Psalms 19 30 5 Psalms 19 30 5 Psalms 19 30 6 Psalms 19 30 6 Psalms 19 30 7 Psalms 19 30 7 Psalms 19 30 8 Psalms 19 30 8 Psalms 19 30 9 Psalms 19 30 9 Psalms 19 30 10 Psalms 19 30 10 Psalms 19 30 11 Psalms 19 30 11 Psalms 19 30 12 Psalms 19 30 12 Psalms 19 30 13 Psalms 19 31 0 Psalms 19 31 1 Psalms 19 31 1 Psalms 19 31 2 Psalms 19 31 2 Psalms 19 31 3 Psalms 19 31 3 Psalms 19 31 4 Psalms 19 31 4 Psalms 19 31 5 Psalms 19 31 5 Psalms 19 31 6 Psalms 19 31 6 Psalms 19 31 7 Psalms 19 31 7 Psalms 19 31 8 Psalms 19 31 8 Psalms 19 31 9 Psalms 19 31 9 Psalms 19 31 10 Psalms 19 31 10 Psalms 19 31 11 Psalms 19 31 11 Psalms 19 31 12 Psalms 19 31 12 Psalms 19 31 13 Psalms 19 31 13 Psalms 19 31 14 Psalms 19 31 14 Psalms 19 31 15 Psalms 19 31 15 Psalms 19 31 16 Psalms 19 31 16 Psalms 19 31 17 Psalms 19 31 17 Psalms 19 31 18 Psalms 19 31 18 Psalms 19 31 19 Psalms 19 31 19 Psalms 19 31 20 Psalms 19 31 20 Psalms 19 31 21 Psalms 19 31 21 Psalms 19 31 22 Psalms 19 31 22 Psalms 19 31 23 Psalms 19 31 23 Psalms 19 31 24 Psalms 19 31 24 Psalms 19 31 25 Psalms 19 34 0 Psalms 19 34 1 Psalms 19 34 1 Psalms 19 34 2 Psalms 19 34 2 Psalms 19 34 3 Psalms 19 34 3 Psalms 19 34 4 Psalms 19 34 4 Psalms 19 34 5 Psalms 19 34 5 Psalms 19 34 6 Psalms 19 34 6 Psalms 19 34 7 Psalms 19 34 7 Psalms 19 34 8 Psalms 19 34 8 Psalms 19 34 9 Psalms 19 34 9 Psalms 19 34 10 Psalms 19 34 10 Psalms 19 34 11 Psalms 19 34 11 Psalms 19 34 12 Psalms 19 34 12 Psalms 19 34 13 Psalms 19 34 13 Psalms 19 34 14 Psalms 19 34 14 Psalms 19 34 15 Psalms 19 34 15 Psalms 19 34 16 Psalms 19 34 16 Psalms 19 34 17 Psalms 19 34 17 Psalms 19 34 18 Psalms 19 34 18 Psalms 19 34 19 Psalms 19 34 19 Psalms 19 34 20 Psalms 19 34 20 Psalms 19 34 21 Psalms 19 34 21 Psalms 19 34 22 Psalms 19 34 22 Psalms 19 34 23 Psalms 19 36 0 Psalms 19 36 1 Psalms 19 36 1 Psalms 19 36 2 Psalms 19 36 2 Psalms 19 36 3 Psalms 19 36 3 Psalms 19 36 4 Psalms 19 36 4 Psalms 19 36 5 Psalms 19 36 5 Psalms 19 36 6 Psalms 19 36 6 Psalms 19 36 7 Psalms 19 36 7 Psalms 19 36 8 Psalms 19 36 8 Psalms 19 36 9 Psalms 19 36 9 Psalms 19 36 10 Psalms 19 36 10 Psalms 19 36 11 Psalms 19 36 11 Psalms 19 36 12 Psalms 19 36 12 Psalms 19 36 13 Psalms 19 38 0 Psalms 19 38 1 Psalms 19 38 1 Psalms 19 38 2 Psalms 19 38 2 Psalms 19 38 3 Psalms 19 38 3 Psalms 19 38 4 Psalms 19 38 4 Psalms 19 38 5 Psalms 19 38 5 Psalms 19 38 6 Psalms 19 38 6 Psalms 19 38 7 Psalms 19 38 7 Psalms 19 38 8 Psalms 19 38 8 Psalms 19 38 9 Psalms 19 38 9 Psalms 19 38 10 Psalms 19 38 10 Psalms 19 38 11 Psalms 19 38 11 Psalms 19 38 12 Psalms 19 38 12 Psalms 19 38 13 Psalms 19 38 13 Psalms 19 38 14 Psalms 19 38 14 Psalms 19 38 15 Psalms 19 38 15 Psalms 19 38 16 Psalms 19 38 16 Psalms 19 38 17 Psalms 19 38 17 Psalms 19 38 18 Psalms 19 38 18 Psalms 19 38 19 Psalms 19 38 19 Psalms 19 38 20 Psalms 19 38 20 Psalms 19 38 21 Psalms 19 38 21 Psalms 19 38 22 Psalms 19 38 22 Psalms 19 38 23 Psalms 19 39 0 Psalms 19 39 1 Psalms 19 39 1 Psalms 19 39 2 Psalms 19 39 2 Psalms 19 39 3 Psalms 19 39 3 Psalms 19 39 4 Psalms 19 39 4 Psalms 19 39 5 Psalms 19 39 5 Psalms 19 39 6 Psalms 19 39 6 Psalms 19 39 7 Psalms 19 39 7 Psalms 19 39 8 Psalms 19 39 8 Psalms 19 39 9 Psalms 19 39 9 Psalms 19 39 10 Psalms 19 39 10 Psalms 19 39 11 Psalms 19 39 11 Psalms 19 39 12 Psalms 19 39 12 Psalms 19 39 13 Psalms 19 39 13 Psalms 19 39 14 Psalms 19 40 0 Psalms 19 40 1 Psalms 19 40 1 Psalms 19 40 2 Psalms 19 40 2 Psalms 19 40 3 Psalms 19 40 3 Psalms 19 40 4 Psalms 19 40 4 Psalms 19 40 5 Psalms 19 40 5 Psalms 19 40 6 Psalms 19 40 6 Psalms 19 40 7 Psalms 19 40 7 Psalms 19 40 8 Psalms 19 40 8 Psalms 19 40 9 Psalms 19 40 9 Psalms 19 40 10 Psalms 19 40 10 Psalms 19 40 11 Psalms 19 40 11 Psalms 19 40 12 Psalms 19 40 12 Psalms 19 40 13 Psalms 19 40 13 Psalms 19 40 14 Psalms 19 40 14 Psalms 19 40 15 Psalms 19 40 15 Psalms 19 40 16 Psalms 19 40 16 Psalms 19 40 17 Psalms 19 40 17 Psalms 19 40 18 Psalms 19 41 0 Psalms 19 41 1 Psalms 19 41 1 Psalms 19 41 2 Psalms 19 41 2 Psalms 19 41 3 Psalms 19 41 3 Psalms 19 41 4 Psalms 19 41 4 Psalms 19 41 5 Psalms 19 41 5 Psalms 19 41 6 Psalms 19 41 6 Psalms 19 41 7 Psalms 19 41 7 Psalms 19 41 8 Psalms 19 41 8 Psalms 19 41 9 Psalms 19 41 9 Psalms 19 41 10 Psalms 19 41 10 Psalms 19 41 11 Psalms 19 41 11 Psalms 19 41 12 Psalms 19 41 12 Psalms 19 41 13 Psalms 19 41 13 Psalms 19 41 14 Psalms 19 42 0 Psalms 19 42 1 Psalms 19 42 1 Psalms 19 42 2 Psalms 19 42 2 Psalms 19 42 3 Psalms 19 42 3 Psalms 19 42 4 Psalms 19 42 4 Psalms 19 42 5 Psalms 19 42 5 Psalms 19 42 6 Psalms 19 42 6 Psalms 19 42 7 Psalms 19 42 7 Psalms 19 42 8 Psalms 19 42 8 Psalms 19 42 9 Psalms 19 42 9 Psalms 19 42 10 Psalms 19 42 10 Psalms 19 42 11 Psalms 19 42 11 Psalms 19 42 12 Psalms 19 44 0 Psalms 19 44 1 Psalms 19 44 1 Psalms 19 44 2 Psalms 19 44 2 Psalms 19 44 3 Psalms 19 44 3 Psalms 19 44 4 Psalms 19 44 4 Psalms 19 44 5 Psalms 19 44 5 Psalms 19 44 6 Psalms 19 44 6 Psalms 19 44 7 Psalms 19 44 7 Psalms 19 44 8 Psalms 19 44 8 Psalms 19 44 9 Psalms 19 44 9 Psalms 19 44 10 Psalms 19 44 10 Psalms 19 44 11 Psalms 19 44 11 Psalms 19 44 12 Psalms 19 44 12 Psalms 19 44 13 Psalms 19 44 13 Psalms 19 44 14 Psalms 19 44 14 Psalms 19 44 15 Psalms 19 44 15 Psalms 19 44 16 Psalms 19 44 16 Psalms 19 44 17 Psalms 19 44 17 Psalms 19 44 18 Psalms 19 44 18 Psalms 19 44 19 Psalms 19 44 19 Psalms 19 44 20 Psalms 19 44 20 Psalms 19 44 21 Psalms 19 44 21 Psalms 19 44 22 Psalms 19 44 22 Psalms 19 44 23 Psalms 19 44 23 Psalms 19 44 24 Psalms 19 44 24 Psalms 19 44 25 Psalms 19 44 25 Psalms 19 44 26 Psalms 19 44 26 Psalms 19 44 27 Psalms 19 45 0 Psalms 19 45 1 Psalms 19 45 1 Psalms 19 45 2 Psalms 19 45 2 Psalms 19 45 3 Psalms 19 45 3 Psalms 19 45 4 Psalms 19 45 4 Psalms 19 45 5 Psalms 19 45 5 Psalms 19 45 6 Psalms 19 45 6 Psalms 19 45 7 Psalms 19 45 7 Psalms 19 45 8 Psalms 19 45 8 Psalms 19 45 9 Psalms 19 45 9 Psalms 19 45 10 Psalms 19 45 10 Psalms 19 45 11 Psalms 19 45 11 Psalms 19 45 12 Psalms 19 45 12 Psalms 19 45 13 Psalms 19 45 13 Psalms 19 45 14 Psalms 19 45 14 Psalms 19 45 15 Psalms 19 45 15 Psalms 19 45 16 Psalms 19 45 16 Psalms 19 45 17 Psalms 19 45 17 Psalms 19 45 18 Psalms 19 46 0 Psalms 19 46 1 Psalms 19 46 1 Psalms 19 46 2 Psalms 19 46 2 Psalms 19 46 3 Psalms 19 46 3 Psalms 19 46 4 Psalms 19 46 4 Psalms 19 46 5 Psalms 19 46 5 Psalms 19 46 6 Psalms 19 46 6 Psalms 19 46 7 Psalms 19 46 7 Psalms 19 46 8 Psalms 19 46 8 Psalms 19 46 9 Psalms 19 46 9 Psalms 19 46 10 Psalms 19 46 10 Psalms 19 46 11 Psalms 19 46 11 Psalms 19 46 12 Psalms 19 47 0 Psalms 19 47 1 Psalms 19 47 1 Psalms 19 47 2 Psalms 19 47 2 Psalms 19 47 3 Psalms 19 47 3 Psalms 19 47 4 Psalms 19 47 4 Psalms 19 47 5 Psalms 19 47 5 Psalms 19 47 6 Psalms 19 47 6 Psalms 19 47 7 Psalms 19 47 7 Psalms 19 47 8 Psalms 19 47 8 Psalms 19 47 9 Psalms 19 47 9 Psalms 19 47 10 Psalms 19 48 0 Psalms 19 48 1 Psalms 19 48 1 Psalms 19 48 2 Psalms 19 48 2 Psalms 19 48 3 Psalms 19 48 3 Psalms 19 48 4 Psalms 19 48 4 Psalms 19 48 5 Psalms 19 48 5 Psalms 19 48 6 Psalms 19 48 6 Psalms 19 48 7 Psalms 19 48 7 Psalms 19 48 8 Psalms 19 48 8 Psalms 19 48 9 Psalms 19 48 9 Psalms 19 48 10 Psalms 19 48 10 Psalms 19 48 11 Psalms 19 48 11 Psalms 19 48 12 Psalms 19 48 12 Psalms 19 48 13 Psalms 19 48 13 Psalms 19 48 14 Psalms 19 48 14 Psalms 19 48 15 Psalms 19 49 0 Psalms 19 49 1 Psalms 19 49 1 Psalms 19 49 2 Psalms 19 49 2 Psalms 19 49 3 Psalms 19 49 3 Psalms 19 49 4 Psalms 19 49 4 Psalms 19 49 5 Psalms 19 49 5 Psalms 19 49 6 Psalms 19 49 6 Psalms 19 49 7 Psalms 19 49 7 Psalms 19 49 8 Psalms 19 49 8 Psalms 19 49 9 Psalms 19 49 9 Psalms 19 49 10 Psalms 19 49 10 Psalms 19 49 11 Psalms 19 49 11 Psalms 19 49 12 Psalms 19 49 12 Psalms 19 49 13 Psalms 19 49 13 Psalms 19 49 14 Psalms 19 49 14 Psalms 19 49 15 Psalms 19 49 15 Psalms 19 49 16 Psalms 19 49 16 Psalms 19 49 17 Psalms 19 49 17 Psalms 19 49 18 Psalms 19 49 18 Psalms 19 49 19 Psalms 19 49 19 Psalms 19 49 20 Psalms 19 49 20 Psalms 19 49 21 Psalms 19 51 0 Psalms 19 51 1 Psalms 19 51 0 Psalms 19 51 2 Psalms 19 51 1 Psalms 19 51 3 Psalms 19 51 2 Psalms 19 51 4 Psalms 19 51 3 Psalms 19 51 5 Psalms 19 51 4 Psalms 19 51 6 Psalms 19 51 5 Psalms 19 51 7 Psalms 19 51 6 Psalms 19 51 8 Psalms 19 51 7 Psalms 19 51 9 Psalms 19 51 8 Psalms 19 51 10 Psalms 19 51 9 Psalms 19 51 11 Psalms 19 51 10 Psalms 19 51 12 Psalms 19 51 11 Psalms 19 51 13 Psalms 19 51 12 Psalms 19 51 14 Psalms 19 51 13 Psalms 19 51 15 Psalms 19 51 14 Psalms 19 51 16 Psalms 19 51 15 Psalms 19 51 17 Psalms 19 51 16 Psalms 19 51 18 Psalms 19 51 17 Psalms 19 51 19 Psalms 19 51 18 Psalms 19 51 20 Psalms 19 51 19 Psalms 19 51 21 Psalms 19 52 0 Psalms 19 52 1 Psalms 19 52 0 Psalms 19 52 2 Psalms 19 52 1 Psalms 19 52 3 Psalms 19 52 2 Psalms 19 52 4 Psalms 19 52 3 Psalms 19 52 5 Psalms 19 52 4 Psalms 19 52 6 Psalms 19 52 5 Psalms 19 52 7 Psalms 19 52 6 Psalms 19 52 8 Psalms 19 52 7 Psalms 19 52 9 Psalms 19 52 8 Psalms 19 52 10 Psalms 19 52 9 Psalms 19 52 11 Psalms 19 53 0 Psalms 19 53 1 Psalms 19 53 1 Psalms 19 53 2 Psalms 19 53 2 Psalms 19 53 3 Psalms 19 53 3 Psalms 19 53 4 Psalms 19 53 4 Psalms 19 53 5 Psalms 19 53 5 Psalms 19 53 6 Psalms 19 53 6 Psalms 19 53 7 Psalms 19 54 0 Psalms 19 54 1 Psalms 19 54 0 Psalms 19 54 2 Psalms 19 54 1 Psalms 19 54 3 Psalms 19 54 2 Psalms 19 54 4 Psalms 19 54 3 Psalms 19 54 5 Psalms 19 54 4 Psalms 19 54 6 Psalms 19 54 5 Psalms 19 54 7 Psalms 19 54 6 Psalms 19 54 8 Psalms 19 54 7 Psalms 19 54 9 Psalms 19 55 0 Psalms 19 55 1 Psalms 19 55 1 Psalms 19 55 2 Psalms 19 55 2 Psalms 19 55 3 Psalms 19 55 3 Psalms 19 55 4 Psalms 19 55 4 Psalms 19 55 5 Psalms 19 55 5 Psalms 19 55 6 Psalms 19 55 6 Psalms 19 55 7 Psalms 19 55 7 Psalms 19 55 8 Psalms 19 55 8 Psalms 19 55 9 Psalms 19 55 9 Psalms 19 55 10 Psalms 19 55 10 Psalms 19 55 11 Psalms 19 55 11 Psalms 19 55 12 Psalms 19 55 12 Psalms 19 55 13 Psalms 19 55 13 Psalms 19 55 14 Psalms 19 55 14 Psalms 19 55 15 Psalms 19 55 15 Psalms 19 55 16 Psalms 19 55 16 Psalms 19 55 17 Psalms 19 55 17 Psalms 19 55 18 Psalms 19 55 18 Psalms 19 55 19 Psalms 19 55 19 Psalms 19 55 20 Psalms 19 55 20 Psalms 19 55 21 Psalms 19 55 21 Psalms 19 55 22 Psalms 19 55 22 Psalms 19 55 23 Psalms 19 55 23 Psalms 19 55 24 Psalms 19 56 0 Psalms 19 56 1 Psalms 19 56 1 Psalms 19 56 2 Psalms 19 56 2 Psalms 19 56 3 Psalms 19 56 3 Psalms 19 56 4 Psalms 19 56 4 Psalms 19 56 5 Psalms 19 56 5 Psalms 19 56 6 Psalms 19 56 6 Psalms 19 56 7 Psalms 19 56 7 Psalms 19 56 8 Psalms 19 56 8 Psalms 19 56 9 Psalms 19 56 9 Psalms 19 56 10 Psalms 19 56 10 Psalms 19 56 11 Psalms 19 56 11 Psalms 19 56 12 Psalms 19 56 12 Psalms 19 56 13 Psalms 19 56 13 Psalms 19 56 14 Psalms 19 57 0 Psalms 19 57 1 Psalms 19 57 1 Psalms 19 57 2 Psalms 19 57 2 Psalms 19 57 3 Psalms 19 57 3 Psalms 19 57 4 Psalms 19 57 4 Psalms 19 57 5 Psalms 19 57 5 Psalms 19 57 6 Psalms 19 57 6 Psalms 19 57 7 Psalms 19 57 7 Psalms 19 57 8 Psalms 19 57 8 Psalms 19 57 9 Psalms 19 57 9 Psalms 19 57 10 Psalms 19 57 10 Psalms 19 57 11 Psalms 19 57 11 Psalms 19 57 12 Psalms 19 58 0 Psalms 19 58 1 Psalms 19 58 1 Psalms 19 58 2 Psalms 19 58 2 Psalms 19 58 3 Psalms 19 58 3 Psalms 19 58 4 Psalms 19 58 4 Psalms 19 58 5 Psalms 19 58 5 Psalms 19 58 6 Psalms 19 58 6 Psalms 19 58 7 Psalms 19 58 7 Psalms 19 58 8 Psalms 19 58 8 Psalms 19 58 9 Psalms 19 58 9 Psalms 19 58 10 Psalms 19 58 10 Psalms 19 58 11 Psalms 19 58 11 Psalms 19 58 12 Psalms 19 59 0 Psalms 19 59 1 Psalms 19 59 1 Psalms 19 59 2 Psalms 19 59 2 Psalms 19 59 3 Psalms 19 59 3 Psalms 19 59 4 Psalms 19 59 4 Psalms 19 59 5 Psalms 19 59 5 Psalms 19 59 6 Psalms 19 59 6 Psalms 19 59 7 Psalms 19 59 7 Psalms 19 59 8 Psalms 19 59 8 Psalms 19 59 9 Psalms 19 59 9 Psalms 19 59 10 Psalms 19 59 10 Psalms 19 59 11 Psalms 19 59 11 Psalms 19 59 12 Psalms 19 59 12 Psalms 19 59 13 Psalms 19 59 13 Psalms 19 59 14 Psalms 19 59 14 Psalms 19 59 15 Psalms 19 59 15 Psalms 19 59 16 Psalms 19 59 16 Psalms 19 59 17 Psalms 19 59 17 Psalms 19 59 18 Psalms 19 60 0 Psalms 19 60 1 Psalms 19 60 0 Psalms 19 60 2 Psalms 19 60 1 Psalms 19 60 3 Psalms 19 60 2 Psalms 19 60 4 Psalms 19 60 3 Psalms 19 60 5 Psalms 19 60 4 Psalms 19 60 6 Psalms 19 60 5 Psalms 19 60 7 Psalms 19 60 6 Psalms 19 60 8 Psalms 19 60 7 Psalms 19 60 9 Psalms 19 60 8 Psalms 19 60 10 Psalms 19 60 9 Psalms 19 60 11 Psalms 19 60 10 Psalms 19 60 12 Psalms 19 60 11 Psalms 19 60 13 Psalms 19 60 12 Psalms 19 60 14 Psalms 19 61 0 Psalms 19 61 1 Psalms 19 61 1 Psalms 19 61 2 Psalms 19 61 2 Psalms 19 61 3 Psalms 19 61 3 Psalms 19 61 4 Psalms 19 61 4 Psalms 19 61 5 Psalms 19 61 5 Psalms 19 61 6 Psalms 19 61 6 Psalms 19 61 7 Psalms 19 61 7 Psalms 19 61 8 Psalms 19 61 8 Psalms 19 61 9 Psalms 19 62 0 Psalms 19 62 1 Psalms 19 62 1 Psalms 19 62 2 Psalms 19 62 2 Psalms 19 62 3 Psalms 19 62 3 Psalms 19 62 4 Psalms 19 62 4 Psalms 19 62 5 Psalms 19 62 5 Psalms 19 62 6 Psalms 19 62 6 Psalms 19 62 7 Psalms 19 62 7 Psalms 19 62 8 Psalms 19 62 8 Psalms 19 62 9 Psalms 19 62 9 Psalms 19 62 10 Psalms 19 62 10 Psalms 19 62 11 Psalms 19 62 11 Psalms 19 62 12 Psalms 19 62 12 Psalms 19 62 13 Psalms 19 63 0 Psalms 19 63 1 Psalms 19 63 1 Psalms 19 63 2 Psalms 19 63 2 Psalms 19 63 3 Psalms 19 63 3 Psalms 19 63 4 Psalms 19 63 4 Psalms 19 63 5 Psalms 19 63 5 Psalms 19 63 6 Psalms 19 63 6 Psalms 19 63 7 Psalms 19 63 7 Psalms 19 63 8 Psalms 19 63 8 Psalms 19 63 9 Psalms 19 63 9 Psalms 19 63 10 Psalms 19 63 10 Psalms 19 63 11 Psalms 19 63 11 Psalms 19 63 12 Psalms 19 64 0 Psalms 19 64 1 Psalms 19 64 1 Psalms 19 64 2 Psalms 19 64 2 Psalms 19 64 3 Psalms 19 64 3 Psalms 19 64 4 Psalms 19 64 4 Psalms 19 64 5 Psalms 19 64 5 Psalms 19 64 6 Psalms 19 64 6 Psalms 19 64 7 Psalms 19 64 7 Psalms 19 64 8 Psalms 19 64 8 Psalms 19 64 9 Psalms 19 64 9 Psalms 19 64 10 Psalms 19 64 10 Psalms 19 64 11 Psalms 19 65 0 Psalms 19 65 1 Psalms 19 65 1 Psalms 19 65 2 Psalms 19 65 2 Psalms 19 65 3 Psalms 19 65 3 Psalms 19 65 4 Psalms 19 65 4 Psalms 19 65 5 Psalms 19 65 5 Psalms 19 65 6 Psalms 19 65 6 Psalms 19 65 7 Psalms 19 65 7 Psalms 19 65 8 Psalms 19 65 8 Psalms 19 65 9 Psalms 19 65 9 Psalms 19 65 10 Psalms 19 65 10 Psalms 19 65 11 Psalms 19 65 11 Psalms 19 65 12 Psalms 19 65 12 Psalms 19 65 13 Psalms 19 65 13 Psalms 19 65 14 Psalms 19 67 0 Psalms 19 67 1 Psalms 19 67 1 Psalms 19 67 2 Psalms 19 67 2 Psalms 19 67 3 Psalms 19 67 3 Psalms 19 67 4 Psalms 19 67 4 Psalms 19 67 5 Psalms 19 67 5 Psalms 19 67 6 Psalms 19 67 6 Psalms 19 67 7 Psalms 19 67 7 Psalms 19 67 8 Psalms 19 68 0 Psalms 19 68 1 Psalms 19 68 1 Psalms 19 68 2 Psalms 19 68 2 Psalms 19 68 3 Psalms 19 68 3 Psalms 19 68 4 Psalms 19 68 4 Psalms 19 68 5 Psalms 19 68 5 Psalms 19 68 6 Psalms 19 68 6 Psalms 19 68 7 Psalms 19 68 7 Psalms 19 68 8 Psalms 19 68 8 Psalms 19 68 9 Psalms 19 68 9 Psalms 19 68 10 Psalms 19 68 10 Psalms 19 68 11 Psalms 19 68 11 Psalms 19 68 12 Psalms 19 68 12 Psalms 19 68 13 Psalms 19 68 13 Psalms 19 68 14 Psalms 19 68 14 Psalms 19 68 15 Psalms 19 68 15 Psalms 19 68 16 Psalms 19 68 16 Psalms 19 68 17 Psalms 19 68 17 Psalms 19 68 18 Psalms 19 68 18 Psalms 19 68 19 Psalms 19 68 19 Psalms 19 68 20 Psalms 19 68 20 Psalms 19 68 21 Psalms 19 68 21 Psalms 19 68 22 Psalms 19 68 22 Psalms 19 68 23 Psalms 19 68 23 Psalms 19 68 24 Psalms 19 68 24 Psalms 19 68 25 Psalms 19 68 25 Psalms 19 68 26 Psalms 19 68 26 Psalms 19 68 27 Psalms 19 68 27 Psalms 19 68 28 Psalms 19 68 28 Psalms 19 68 29 Psalms 19 68 29 Psalms 19 68 30 Psalms 19 68 30 Psalms 19 68 31 Psalms 19 68 31 Psalms 19 68 32 Psalms 19 68 32 Psalms 19 68 33 Psalms 19 68 33 Psalms 19 68 34 Psalms 19 68 34 Psalms 19 68 35 Psalms 19 68 35 Psalms 19 68 36 Psalms 19 69 0 Psalms 19 69 1 Psalms 19 69 1 Psalms 19 69 2 Psalms 19 69 2 Psalms 19 69 3 Psalms 19 69 3 Psalms 19 69 4 Psalms 19 69 4 Psalms 19 69 5 Psalms 19 69 5 Psalms 19 69 6 Psalms 19 69 6 Psalms 19 69 7 Psalms 19 69 7 Psalms 19 69 8 Psalms 19 69 8 Psalms 19 69 9 Psalms 19 69 9 Psalms 19 69 10 Psalms 19 69 10 Psalms 19 69 11 Psalms 19 69 11 Psalms 19 69 12 Psalms 19 69 12 Psalms 19 69 13 Psalms 19 69 13 Psalms 19 69 14 Psalms 19 69 14 Psalms 19 69 15 Psalms 19 69 15 Psalms 19 69 16 Psalms 19 69 16 Psalms 19 69 17 Psalms 19 69 17 Psalms 19 69 18 Psalms 19 69 18 Psalms 19 69 19 Psalms 19 69 19 Psalms 19 69 20 Psalms 19 69 20 Psalms 19 69 21 Psalms 19 69 21 Psalms 19 69 22 Psalms 19 69 22 Psalms 19 69 23 Psalms 19 69 23 Psalms 19 69 24 Psalms 19 69 24 Psalms 19 69 25 Psalms 19 69 25 Psalms 19 69 26 Psalms 19 69 26 Psalms 19 69 27 Psalms 19 69 27 Psalms 19 69 28 Psalms 19 69 28 Psalms 19 69 29 Psalms 19 69 29 Psalms 19 69 30 Psalms 19 69 30 Psalms 19 69 31 Psalms 19 69 31 Psalms 19 69 32 Psalms 19 69 32 Psalms 19 69 33 Psalms 19 69 33 Psalms 19 69 34 Psalms 19 69 34 Psalms 19 69 35 Psalms 19 69 35 Psalms 19 69 36 Psalms 19 69 36 Psalms 19 69 37 Psalms 19 70 0 Psalms 19 70 1 Psalms 19 70 1 Psalms 19 70 2 Psalms 19 70 2 Psalms 19 70 3 Psalms 19 70 3 Psalms 19 70 4 Psalms 19 70 4 Psalms 19 70 5 Psalms 19 70 5 Psalms 19 70 6 Psalms 19 75 0 Psalms 19 75 1 Psalms 19 75 1 Psalms 19 75 2 Psalms 19 75 2 Psalms 19 75 3 Psalms 19 75 3 Psalms 19 75 4 Psalms 19 75 4 Psalms 19 75 5 Psalms 19 75 5 Psalms 19 75 6 Psalms 19 75 6 Psalms 19 75 7 Psalms 19 75 7 Psalms 19 75 8 Psalms 19 75 8 Psalms 19 75 9 Psalms 19 75 9 Psalms 19 75 10 Psalms 19 75 10 Psalms 19 75 11 Psalms 19 76 0 Psalms 19 76 1 Psalms 19 76 1 Psalms 19 76 2 Psalms 19 76 2 Psalms 19 76 3 Psalms 19 76 3 Psalms 19 76 4 Psalms 19 76 4 Psalms 19 76 5 Psalms 19 76 5 Psalms 19 76 6 Psalms 19 76 6 Psalms 19 76 7 Psalms 19 76 7 Psalms 19 76 8 Psalms 19 76 8 Psalms 19 76 9 Psalms 19 76 9 Psalms 19 76 10 Psalms 19 76 10 Psalms 19 76 11 Psalms 19 76 11 Psalms 19 76 12 Psalms 19 76 12 Psalms 19 76 13 Psalms 19 77 0 Psalms 19 77 1 Psalms 19 77 1 Psalms 19 77 2 Psalms 19 77 2 Psalms 19 77 3 Psalms 19 77 3 Psalms 19 77 4 Psalms 19 77 4 Psalms 19 77 5 Psalms 19 77 5 Psalms 19 77 6 Psalms 19 77 6 Psalms 19 77 7 Psalms 19 77 7 Psalms 19 77 8 Psalms 19 77 8 Psalms 19 77 9 Psalms 19 77 9 Psalms 19 77 10 Psalms 19 77 10 Psalms 19 77 11 Psalms 19 77 11 Psalms 19 77 12 Psalms 19 77 12 Psalms 19 77 13 Psalms 19 77 13 Psalms 19 77 14 Psalms 19 77 14 Psalms 19 77 15 Psalms 19 77 15 Psalms 19 77 16 Psalms 19 77 16 Psalms 19 77 17 Psalms 19 77 17 Psalms 19 77 18 Psalms 19 77 18 Psalms 19 77 19 Psalms 19 77 19 Psalms 19 77 20 Psalms 19 77 20 Psalms 19 77 21 Psalms 19 80 0 Psalms 19 80 1 Psalms 19 80 1 Psalms 19 80 2 Psalms 19 80 2 Psalms 19 80 3 Psalms 19 80 3 Psalms 19 80 4 Psalms 19 80 4 Psalms 19 80 5 Psalms 19 80 5 Psalms 19 80 6 Psalms 19 80 6 Psalms 19 80 7 Psalms 19 80 7 Psalms 19 80 8 Psalms 19 80 8 Psalms 19 80 9 Psalms 19 80 9 Psalms 19 80 10 Psalms 19 80 10 Psalms 19 80 11 Psalms 19 80 11 Psalms 19 80 12 Psalms 19 80 12 Psalms 19 80 13 Psalms 19 80 13 Psalms 19 80 14 Psalms 19 80 14 Psalms 19 80 15 Psalms 19 80 15 Psalms 19 80 16 Psalms 19 80 16 Psalms 19 80 17 Psalms 19 80 17 Psalms 19 80 18 Psalms 19 80 18 Psalms 19 80 19 Psalms 19 80 19 Psalms 19 80 20 Psalms 19 81 0 Psalms 19 81 1 Psalms 19 81 1 Psalms 19 81 2 Psalms 19 81 2 Psalms 19 81 3 Psalms 19 81 3 Psalms 19 81 4 Psalms 19 81 4 Psalms 19 81 5 Psalms 19 81 5 Psalms 19 81 6 Psalms 19 81 6 Psalms 19 81 7 Psalms 19 81 7 Psalms 19 81 8 Psalms 19 81 8 Psalms 19 81 9 Psalms 19 81 9 Psalms 19 81 10 Psalms 19 81 10 Psalms 19 81 11 Psalms 19 81 11 Psalms 19 81 12 Psalms 19 81 12 Psalms 19 81 13 Psalms 19 81 13 Psalms 19 81 14 Psalms 19 81 14 Psalms 19 81 15 Psalms 19 81 15 Psalms 19 81 16 Psalms 19 81 16 Psalms 19 81 17 Psalms 19 83 0 Psalms 19 83 1 Psalms 19 83 1 Psalms 19 83 2 Psalms 19 83 2 Psalms 19 83 3 Psalms 19 83 3 Psalms 19 83 4 Psalms 19 83 4 Psalms 19 83 5 Psalms 19 83 5 Psalms 19 83 6 Psalms 19 83 6 Psalms 19 83 7 Psalms 19 83 7 Psalms 19 83 8 Psalms 19 83 8 Psalms 19 83 9 Psalms 19 83 9 Psalms 19 83 10 Psalms 19 83 10 Psalms 19 83 11 Psalms 19 83 11 Psalms 19 83 12 Psalms 19 83 12 Psalms 19 83 13 Psalms 19 83 13 Psalms 19 83 14 Psalms 19 83 14 Psalms 19 83 15 Psalms 19 83 15 Psalms 19 83 16 Psalms 19 83 16 Psalms 19 83 17 Psalms 19 83 17 Psalms 19 83 18 Psalms 19 83 18 Psalms 19 83 19 Psalms 19 84 0 Psalms 19 84 1 Psalms 19 84 1 Psalms 19 84 2 Psalms 19 84 2 Psalms 19 84 3 Psalms 19 84 3 Psalms 19 84 4 Psalms 19 84 4 Psalms 19 84 5 Psalms 19 84 5 Psalms 19 84 6 Psalms 19 84 6 Psalms 19 84 7 Psalms 19 84 7 Psalms 19 84 8 Psalms 19 84 8 Psalms 19 84 9 Psalms 19 84 9 Psalms 19 84 10 Psalms 19 84 10 Psalms 19 84 11 Psalms 19 84 11 Psalms 19 84 12 Psalms 19 84 12 Psalms 19 84 13 Psalms 19 85 0 Psalms 19 85 1 Psalms 19 85 1 Psalms 19 85 2 Psalms 19 85 2 Psalms 19 85 3 Psalms 19 85 3 Psalms 19 85 4 Psalms 19 85 4 Psalms 19 85 5 Psalms 19 85 5 Psalms 19 85 6 Psalms 19 85 6 Psalms 19 85 7 Psalms 19 85 7 Psalms 19 85 8 Psalms 19 85 8 Psalms 19 85 9 Psalms 19 85 9 Psalms 19 85 10 Psalms 19 85 10 Psalms 19 85 11 Psalms 19 85 11 Psalms 19 85 12 Psalms 19 85 12 Psalms 19 85 13 Psalms 19 85 13 Psalms 19 85 14 Psalms 19 88 0 Psalms 19 88 1 Psalms 19 88 1 Psalms 19 88 2 Psalms 19 88 2 Psalms 19 88 3 Psalms 19 88 3 Psalms 19 88 4 Psalms 19 88 4 Psalms 19 88 5 Psalms 19 88 5 Psalms 19 88 6 Psalms 19 88 6 Psalms 19 88 7 Psalms 19 88 7 Psalms 19 88 8 Psalms 19 88 8 Psalms 19 88 9 Psalms 19 88 9 Psalms 19 88 10 Psalms 19 88 10 Psalms 19 88 11 Psalms 19 88 11 Psalms 19 88 12 Psalms 19 88 12 Psalms 19 88 13 Psalms 19 88 13 Psalms 19 88 14 Psalms 19 88 14 Psalms 19 88 15 Psalms 19 88 15 Psalms 19 88 16 Psalms 19 88 16 Psalms 19 88 17 Psalms 19 88 17 Psalms 19 88 18 Psalms 19 88 18 Psalms 19 88 19 Psalms 19 89 0 Psalms 19 89 1 Psalms 19 89 1 Psalms 19 89 2 Psalms 19 89 2 Psalms 19 89 3 Psalms 19 89 3 Psalms 19 89 4 Psalms 19 89 4 Psalms 19 89 5 Psalms 19 89 5 Psalms 19 89 6 Psalms 19 89 6 Psalms 19 89 7 Psalms 19 89 7 Psalms 19 89 8 Psalms 19 89 8 Psalms 19 89 9 Psalms 19 89 9 Psalms 19 89 10 Psalms 19 89 10 Psalms 19 89 11 Psalms 19 89 11 Psalms 19 89 12 Psalms 19 89 12 Psalms 19 89 13 Psalms 19 89 13 Psalms 19 89 14 Psalms 19 89 14 Psalms 19 89 15 Psalms 19 89 15 Psalms 19 89 16 Psalms 19 89 16 Psalms 19 89 17 Psalms 19 89 17 Psalms 19 89 18 Psalms 19 89 18 Psalms 19 89 19 Psalms 19 89 19 Psalms 19 89 20 Psalms 19 89 20 Psalms 19 89 21 Psalms 19 89 21 Psalms 19 89 22 Psalms 19 89 22 Psalms 19 89 23 Psalms 19 89 23 Psalms 19 89 24 Psalms 19 89 24 Psalms 19 89 25 Psalms 19 89 25 Psalms 19 89 26 Psalms 19 89 26 Psalms 19 89 27 Psalms 19 89 27 Psalms 19 89 28 Psalms 19 89 28 Psalms 19 89 29 Psalms 19 89 29 Psalms 19 89 30 Psalms 19 89 30 Psalms 19 89 31 Psalms 19 89 31 Psalms 19 89 32 Psalms 19 89 32 Psalms 19 89 33 Psalms 19 89 33 Psalms 19 89 34 Psalms 19 89 34 Psalms 19 89 35 Psalms 19 89 35 Psalms 19 89 36 Psalms 19 89 36 Psalms 19 89 37 Psalms 19 89 37 Psalms 19 89 38 Psalms 19 89 38 Psalms 19 89 39 Psalms 19 89 39 Psalms 19 89 40 Psalms 19 89 40 Psalms 19 89 41 Psalms 19 89 41 Psalms 19 89 42 Psalms 19 89 42 Psalms 19 89 43 Psalms 19 89 43 Psalms 19 89 44 Psalms 19 89 44 Psalms 19 89 45 Psalms 19 89 45 Psalms 19 89 46 Psalms 19 89 46 Psalms 19 89 47 Psalms 19 89 47 Psalms 19 89 48 Psalms 19 89 48 Psalms 19 89 49 Psalms 19 89 49 Psalms 19 89 50 Psalms 19 89 50 Psalms 19 89 51 Psalms 19 89 51 Psalms 19 89 52 Psalms 19 89 52 Psalms 19 89 53 Psalms 19 92 0 Psalms 19 92 1 Psalms 19 92 1 Psalms 19 92 2 Psalms 19 92 2 Psalms 19 92 3 Psalms 19 92 3 Psalms 19 92 4 Psalms 19 92 4 Psalms 19 92 5 Psalms 19 92 5 Psalms 19 92 6 Psalms 19 92 6 Psalms 19 92 7 Psalms 19 92 7 Psalms 19 92 8 Psalms 19 92 8 Psalms 19 92 9 Psalms 19 92 9 Psalms 19 92 10 Psalms 19 92 10 Psalms 19 92 11 Psalms 19 92 11 Psalms 19 92 12 Psalms 19 92 12 Psalms 19 92 13 Psalms 19 92 13 Psalms 19 92 14 Psalms 19 92 14 Psalms 19 92 15 Psalms 19 92 15 Psalms 19 92 16 Psalms 19 102 0 Psalms 19 102 1 Psalms 19 102 1 Psalms 19 102 2 Psalms 19 102 2 Psalms 19 102 3 Psalms 19 102 3 Psalms 19 102 4 Psalms 19 102 4 Psalms 19 102 5 Psalms 19 102 5 Psalms 19 102 6 Psalms 19 102 6 Psalms 19 102 7 Psalms 19 102 7 Psalms 19 102 8 Psalms 19 102 8 Psalms 19 102 9 Psalms 19 102 9 Psalms 19 102 10 Psalms 19 102 10 Psalms 19 102 11 Psalms 19 102 11 Psalms 19 102 12 Psalms 19 102 12 Psalms 19 102 13 Psalms 19 102 13 Psalms 19 102 14 Psalms 19 102 14 Psalms 19 102 15 Psalms 19 102 15 Psalms 19 102 16 Psalms 19 102 16 Psalms 19 102 17 Psalms 19 102 17 Psalms 19 102 18 Psalms 19 102 18 Psalms 19 102 19 Psalms 19 102 19 Psalms 19 102 20 Psalms 19 102 20 Psalms 19 102 21 Psalms 19 102 21 Psalms 19 102 22 Psalms 19 102 22 Psalms 19 102 23 Psalms 19 102 23 Psalms 19 102 24 Psalms 19 102 24 Psalms 19 102 25 Psalms 19 102 25 Psalms 19 102 26 Psalms 19 102 26 Psalms 19 102 27 Psalms 19 102 27 Psalms 19 102 28 Psalms 19 102 28 Psalms 19 102 29 Psalms 19 108 0 Psalms 19 108 1 Psalms 19 108 1 Psalms 19 108 2 Psalms 19 108 2 Psalms 19 108 3 Psalms 19 108 3 Psalms 19 108 4 Psalms 19 108 4 Psalms 19 108 5 Psalms 19 108 5 Psalms 19 108 6 Psalms 19 108 6 Psalms 19 108 7 Psalms 19 108 7 Psalms 19 108 8 Psalms 19 108 8 Psalms 19 108 9 Psalms 19 108 9 Psalms 19 108 10 Psalms 19 108 10 Psalms 19 108 11 Psalms 19 108 11 Psalms 19 108 12 Psalms 19 108 12 Psalms 19 108 13 Psalms 19 108 13 Psalms 19 108 14 Psalms 19 140 0 Psalms 19 140 1 Psalms 19 140 1 Psalms 19 140 2 Psalms 19 140 2 Psalms 19 140 3 Psalms 19 140 3 Psalms 19 140 4 Psalms 19 140 4 Psalms 19 140 5 Psalms 19 140 5 Psalms 19 140 6 Psalms 19 140 6 Psalms 19 140 7 Psalms 19 140 7 Psalms 19 140 8 Psalms 19 140 8 Psalms 19 140 9 Psalms 19 140 9 Psalms 19 140 10 Psalms 19 140 10 Psalms 19 140 11 Psalms 19 140 11 Psalms 19 140 12 Psalms 19 140 12 Psalms 19 140 13 Psalms 19 140 13 Psalms 19 140 14 Psalms 19 142 0 Psalms 19 142 1 Psalms 19 142 1 Psalms 19 142 2 Psalms 19 142 2 Psalms 19 142 3 Psalms 19 142 3 Psalms 19 142 4 Psalms 19 142 4 Psalms 19 142 5 Psalms 19 142 5 Psalms 19 142 6 Psalms 19 142 6 Psalms 19 142 7 Psalms 19 142 7 Psalms 19 142 8 Ecclesiastes 21 5 1 Ecclesiastes 21 4 17 Ecclesiastes 21 5 2 Ecclesiastes 21 5 1 Ecclesiastes 21 5 3 Ecclesiastes 21 5 2 Ecclesiastes 21 5 4 Ecclesiastes 21 5 3 Ecclesiastes 21 5 5 Ecclesiastes 21 5 4 Ecclesiastes 21 5 6 Ecclesiastes 21 5 5 Ecclesiastes 21 5 7 Ecclesiastes 21 5 6 Ecclesiastes 21 5 8 Ecclesiastes 21 5 7 Ecclesiastes 21 5 9 Ecclesiastes 21 5 8 Ecclesiastes 21 5 10 Ecclesiastes 21 5 9 Ecclesiastes 21 5 11 Ecclesiastes 21 5 10 Ecclesiastes 21 5 12 Ecclesiastes 21 5 11 Ecclesiastes 21 5 13 Ecclesiastes 21 5 12 Ecclesiastes 21 5 14 Ecclesiastes 21 5 13 Ecclesiastes 21 5 15 Ecclesiastes 21 5 14 Ecclesiastes 21 5 16 Ecclesiastes 21 5 15 Ecclesiastes 21 5 17 Ecclesiastes 21 5 16 Ecclesiastes 21 5 18 Ecclesiastes 21 5 17 Ecclesiastes 21 5 19 Ecclesiastes 21 5 18 Ecclesiastes 21 5 20 Ecclesiastes 21 5 19 Song of Solomon 22 6 13 Song of Solomon 22 7 1 Song of Solomon 22 7 1 Song of Solomon 22 7 2 Song of Solomon 22 7 2 Song of Solomon 22 7 3 Song of Solomon 22 7 3 Song of Solomon 22 7 4 Song of Solomon 22 7 4 Song of Solomon 22 7 5 Song of Solomon 22 7 5 Song of Solomon 22 7 6 Song of Solomon 22 7 6 Song of Solomon 22 7 7 Song of Solomon 22 7 7 Song of Solomon 22 7 8 Song of Solomon 22 7 8 Song of Solomon 22 7 9 Song of Solomon 22 7 9 Song of Solomon 22 7 10 Song of Solomon 22 7 10 Song of Solomon 22 7 11 Song of Solomon 22 7 11 Song of Solomon 22 7 12 Song of Solomon 22 7 12 Song of Solomon 22 7 13 Song of Solomon 22 7 13 Song of Solomon 22 7 14 Isaiah 23 9 1 Isaiah 23 8 23 Isaiah 23 9 2 Isaiah 23 9 1 Isaiah 23 9 3 Isaiah 23 9 2 Isaiah 23 9 4 Isaiah 23 9 3 Isaiah 23 9 5 Isaiah 23 9 4 Isaiah 23 9 6 Isaiah 23 9 5 Isaiah 23 9 7 Isaiah 23 9 6 Isaiah 23 9 8 Isaiah 23 9 7 Isaiah 23 9 9 Isaiah 23 9 8 Isaiah 23 9 10 Isaiah 23 9 9 Isaiah 23 9 11 Isaiah 23 9 10 Isaiah 23 9 12 Isaiah 23 9 11 Isaiah 23 9 13 Isaiah 23 9 12 Isaiah 23 9 14 Isaiah 23 9 13 Isaiah 23 9 15 Isaiah 23 9 14 Isaiah 23 9 16 Isaiah 23 9 15 Isaiah 23 9 17 Isaiah 23 9 16 Isaiah 23 9 18 Isaiah 23 9 17 Isaiah 23 9 19 Isaiah 23 9 18 Isaiah 23 9 20 Isaiah 23 9 19 Isaiah 23 9 21 Isaiah 23 9 20 Isaiah 23 64 2 Isaiah 23 64 1 Isaiah 23 64 3 Isaiah 23 64 2 Isaiah 23 64 4 Isaiah 23 64 3 Isaiah 23 64 5 Isaiah 23 64 4 Isaiah 23 64 6 Isaiah 23 64 5 Isaiah 23 64 7 Isaiah 23 64 6 Isaiah 23 64 8 Isaiah 23 64 7 Isaiah 23 64 9 Isaiah 23 64 8 Isaiah 23 64 10 Isaiah 23 64 9 Isaiah 23 64 11 Isaiah 23 64 10 Isaiah 23 64 12 Isaiah 23 64 11 Jeremiah 24 9 1 Jeremiah 24 8 23 Jeremiah 24 9 2 Jeremiah 24 9 1 Jeremiah 24 9 3 Jeremiah 24 9 2 Jeremiah 24 9 4 Jeremiah 24 9 3 Jeremiah 24 9 5 Jeremiah 24 9 4 Jeremiah 24 9 6 Jeremiah 24 9 5 Jeremiah 24 9 7 Jeremiah 24 9 6 Jeremiah 24 9 8 Jeremiah 24 9 7 Jeremiah 24 9 9 Jeremiah 24 9 8 Jeremiah 24 9 10 Jeremiah 24 9 9 Jeremiah 24 9 11 Jeremiah 24 9 10 Jeremiah 24 9 12 Jeremiah 24 9 11 Jeremiah 24 9 13 Jeremiah 24 9 12 Jeremiah 24 9 14 Jeremiah 24 9 13 Jeremiah 24 9 15 Jeremiah 24 9 14 Jeremiah 24 9 16 Jeremiah 24 9 15 Jeremiah 24 9 17 Jeremiah 24 9 16 Jeremiah 24 9 18 Jeremiah 24 9 17 Jeremiah 24 9 19 Jeremiah 24 9 18 Jeremiah 24 9 20 Jeremiah 24 9 19 Jeremiah 24 9 21 Jeremiah 24 9 20 Jeremiah 24 9 22 Jeremiah 24 9 21 Jeremiah 24 9 23 Jeremiah 24 9 22 Jeremiah 24 9 24 Jeremiah 24 9 23 Jeremiah 24 9 25 Jeremiah 24 9 24 Jeremiah 24 9 26 Jeremiah 24 9 25 Ezekiel 26 20 45 Ezekiel 26 21 1 Ezekiel 26 20 46 Ezekiel 26 21 2 Ezekiel 26 20 44 Ezekiel 26 21 3 Ezekiel 26 20 47 Ezekiel 26 21 3 Ezekiel 26 20 48 Ezekiel 26 21 4 Ezekiel 26 20 49 Ezekiel 26 21 5 Ezekiel 26 21 1 Ezekiel 26 21 6 Ezekiel 26 21 2 Ezekiel 26 21 7 Ezekiel 26 21 3 Ezekiel 26 21 8 Ezekiel 26 21 4 Ezekiel 26 21 9 Ezekiel 26 21 5 Ezekiel 26 21 10 Ezekiel 26 21 6 Ezekiel 26 21 11 Ezekiel 26 21 7 Ezekiel 26 21 12 Ezekiel 26 21 8 Ezekiel 26 21 13 Ezekiel 26 21 9 Ezekiel 26 21 14 Ezekiel 26 21 10 Ezekiel 26 21 15 Ezekiel 26 21 11 Ezekiel 26 21 16 Ezekiel 26 21 12 Ezekiel 26 21 17 Ezekiel 26 21 13 Ezekiel 26 21 18 Ezekiel 26 21 14 Ezekiel 26 21 19 Ezekiel 26 21 15 Ezekiel 26 21 20 Ezekiel 26 21 16 Ezekiel 26 21 21 Ezekiel 26 21 17 Ezekiel 26 21 22 Ezekiel 26 21 18 Ezekiel 26 21 23 Ezekiel 26 21 19 Ezekiel 26 21 24 Ezekiel 26 21 20 Ezekiel 26 21 25 Ezekiel 26 21 21 Ezekiel 26 21 26 Ezekiel 26 21 22 Ezekiel 26 21 27 Ezekiel 26 21 23 Ezekiel 26 21 28 Ezekiel 26 21 24 Ezekiel 26 21 29 Ezekiel 26 21 25 Ezekiel 26 21 30 Ezekiel 26 21 26 Ezekiel 26 21 31 Ezekiel 26 21 27 Ezekiel 26 21 32 Ezekiel 26 21 28 Ezekiel 26 21 33 Ezekiel 26 21 29 Ezekiel 26 21 34 Ezekiel 26 21 30 Ezekiel 26 21 35 Ezekiel 26 21 31 Ezekiel 26 21 36 Ezekiel 26 21 32 Ezekiel 26 21 37 Daniel 27 4 1 Daniel 27 3 31 Daniel 27 4 2 Daniel 27 3 32 Daniel 27 4 3 Daniel 27 3 33 Daniel 27 4 4 Daniel 27 4 1 Daniel 27 4 5 Daniel 27 4 2 Daniel 27 4 6 Daniel 27 4 3 Daniel 27 4 7 Daniel 27 4 4 Daniel 27 4 8 Daniel 27 4 5 Daniel 27 4 9 Daniel 27 4 6 Daniel 27 4 10 Daniel 27 4 7 Daniel 27 4 11 Daniel 27 4 8 Daniel 27 4 12 Daniel 27 4 9 Daniel 27 4 13 Daniel 27 4 10 Daniel 27 4 14 Daniel 27 4 11 Daniel 27 4 15 Daniel 27 4 12 Daniel 27 4 16 Daniel 27 4 13 Daniel 27 4 17 Daniel 27 4 14 Daniel 27 4 18 Daniel 27 4 15 Daniel 27 4 19 Daniel 27 4 16 Daniel 27 4 20 Daniel 27 4 17 Daniel 27 4 21 Daniel 27 4 18 Daniel 27 4 22 Daniel 27 4 19 Daniel 27 4 23 Daniel 27 4 20 Daniel 27 4 24 Daniel 27 4 21 Daniel 27 4 25 Daniel 27 4 22 Daniel 27 4 26 Daniel 27 4 23 Daniel 27 4 27 Daniel 27 4 24 Daniel 27 4 28 Daniel 27 4 25 Daniel 27 4 29 Daniel 27 4 26 Daniel 27 4 30 Daniel 27 4 27 Daniel 27 4 31 Daniel 27 4 28 Daniel 27 4 32 Daniel 27 4 29 Daniel 27 4 33 Daniel 27 4 30 Daniel 27 4 34 Daniel 27 4 31 Daniel 27 4 35 Daniel 27 4 32 Daniel 27 4 36 Daniel 27 4 33 Daniel 27 4 37 Daniel 27 4 34 Daniel 27 5 31 Daniel 27 6 1 Daniel 27 6 1 Daniel 27 6 2 Daniel 27 6 2 Daniel 27 6 3 Daniel 27 6 3 Daniel 27 6 4 Daniel 27 6 4 Daniel 27 6 5 Daniel 27 6 5 Daniel 27 6 6 Daniel 27 6 6 Daniel 27 6 7 Daniel 27 6 7 Daniel 27 6 8 Daniel 27 6 8 Daniel 27 6 9 Daniel 27 6 9 Daniel 27 6 10 Daniel 27 6 10 Daniel 27 6 11 Daniel 27 6 11 Daniel 27 6 12 Daniel 27 6 12 Daniel 27 6 13 Daniel 27 6 13 Daniel 27 6 14 Daniel 27 6 14 Daniel 27 6 15 Daniel 27 6 15 Daniel 27 6 16 Daniel 27 6 16 Daniel 27 6 17 Daniel 27 6 17 Daniel 27 6 18 Daniel 27 6 18 Daniel 27 6 19 Daniel 27 6 19 Daniel 27 6 20 Daniel 27 6 20 Daniel 27 6 21 Daniel 27 6 21 Daniel 27 6 22 Daniel 27 6 22 Daniel 27 6 23 Daniel 27 6 23 Daniel 27 6 24 Daniel 27 6 24 Daniel 27 6 25 Daniel 27 6 25 Daniel 27 6 26 Daniel 27 6 26 Daniel 27 6 27 Daniel 27 6 27 Daniel 27 6 28 Daniel 27 6 28 Daniel 27 6 29 Hosea 28 1 10 Hosea 28 2 1 Hosea 28 1 11 Hosea 28 2 2 Hosea 28 2 1 Hosea 28 2 3 Hosea 28 2 2 Hosea 28 2 4 Hosea 28 2 3 Hosea 28 2 5 Hosea 28 2 4 Hosea 28 2 6 Hosea 28 2 5 Hosea 28 2 7 Hosea 28 2 6 Hosea 28 2 8 Hosea 28 2 7 Hosea 28 2 9 Hosea 28 2 8 Hosea 28 2 10 Hosea 28 2 9 Hosea 28 2 11 Hosea 28 2 10 Hosea 28 2 12 Hosea 28 2 11 Hosea 28 2 13 Hosea 28 2 12 Hosea 28 2 14 Hosea 28 2 13 Hosea 28 2 15 Hosea 28 2 14 Hosea 28 2 16 Hosea 28 2 15 Hosea 28 2 17 Hosea 28 2 16 Hosea 28 2 18 Hosea 28 2 17 Hosea 28 2 19 Hosea 28 2 18 Hosea 28 2 20 Hosea 28 2 19 Hosea 28 2 21 Hosea 28 2 20 Hosea 28 2 22 Hosea 28 2 21 Hosea 28 2 23 Hosea 28 2 22 Hosea 28 2 24 Hosea 28 2 23 Hosea 28 2 25 Hosea 28 11 12 Hosea 28 12 1 Hosea 28 12 1 Hosea 28 12 2 Hosea 28 12 2 Hosea 28 12 3 Hosea 28 12 3 Hosea 28 12 4 Hosea 28 12 4 Hosea 28 12 5 Hosea 28 12 5 Hosea 28 12 6 Hosea 28 12 6 Hosea 28 12 7 Hosea 28 12 7 Hosea 28 12 8 Hosea 28 12 8 Hosea 28 12 9 Hosea 28 12 9 Hosea 28 12 10 Hosea 28 12 10 Hosea 28 12 11 Hosea 28 12 11 Hosea 28 12 12 Hosea 28 12 12 Hosea 28 12 13 Hosea 28 12 13 Hosea 28 12 14 Hosea 28 12 14 Hosea 28 12 15 Hosea 28 13 16 Hosea 28 14 1 Hosea 28 14 1 Hosea 28 14 2 Hosea 28 14 2 Hosea 28 14 3 Hosea 28 14 3 Hosea 28 14 4 Hosea 28 14 4 Hosea 28 14 5 Hosea 28 14 5 Hosea 28 14 6 Hosea 28 14 6 Hosea 28 14 7 Hosea 28 14 7 Hosea 28 14 8 Hosea 28 14 8 Hosea 28 14 9 Hosea 28 14 9 Hosea 28 14 10 Joel 29 2 28 Joel 29 3 1 Joel 29 2 29 Joel 29 3 2 Joel 29 2 30 Joel 29 3 3 Joel 29 2 31 Joel 29 3 4 Joel 29 2 32 Joel 29 3 5 Joel 29 3 1 Joel 29 4 1 Joel 29 3 2 Joel 29 4 2 Joel 29 3 3 Joel 29 4 3 Joel 29 3 4 Joel 29 4 4 Joel 29 3 5 Joel 29 4 5 Joel 29 3 6 Joel 29 4 6 Joel 29 3 7 Joel 29 4 7 Joel 29 3 8 Joel 29 4 8 Joel 29 3 9 Joel 29 4 9 Joel 29 3 10 Joel 29 4 10 Joel 29 3 11 Joel 29 4 11 Joel 29 3 12 Joel 29 4 12 Joel 29 3 13 Joel 29 4 13 Joel 29 3 14 Joel 29 4 14 Joel 29 3 15 Joel 29 4 15 Joel 29 3 16 Joel 29 4 16 Joel 29 3 17 Joel 29 4 17 Joel 29 3 18 Joel 29 4 18 Joel 29 3 19 Joel 29 4 19 Joel 29 3 20 Joel 29 4 20 Joel 29 3 21 Joel 29 4 21 Jonah 32 1 17 Jonah 32 2 1 Jonah 32 2 1 Jonah 32 2 2 Jonah 32 2 2 Jonah 32 2 3 Jonah 32 2 3 Jonah 32 2 4 Jonah 32 2 4 Jonah 32 2 5 Jonah 32 2 5 Jonah 32 2 6 Jonah 32 2 6 Jonah 32 2 7 Jonah 32 2 7 Jonah 32 2 8 Jonah 32 2 8 Jonah 32 2 9 Jonah 32 2 9 Jonah 32 2 10 Jonah 32 2 10 Jonah 32 2 11 Micah 33 5 1 Micah 33 4 14 Micah 33 5 2 Micah 33 5 1 Micah 33 5 3 Micah 33 5 2 Micah 33 5 4 Micah 33 5 3 Micah 33 5 5 Micah 33 5 4 Micah 33 5 6 Micah 33 5 5 Micah 33 5 7 Micah 33 5 6 Micah 33 5 8 Micah 33 5 7 Micah 33 5 9 Micah 33 5 8 Micah 33 5 10 Micah 33 5 9 Micah 33 5 11 Micah 33 5 10 Micah 33 5 12 Micah 33 5 11 Micah 33 5 13 Micah 33 5 12 Micah 33 5 14 Micah 33 5 13 Micah 33 5 15 Micah 33 5 14 Nahum 34 1 15 Nahum 34 2 1 Nahum 34 2 1 Nahum 34 2 2 Nahum 34 2 2 Nahum 34 2 3 Nahum 34 2 3 Nahum 34 2 4 Nahum 34 2 4 Nahum 34 2 5 Nahum 34 2 5 Nahum 34 2 6 Nahum 34 2 6 Nahum 34 2 7 Nahum 34 2 7 Nahum 34 2 8 Nahum 34 2 8 Nahum 34 2 9 Nahum 34 2 9 Nahum 34 2 10 Nahum 34 2 10 Nahum 34 2 11 Nahum 34 2 11 Nahum 34 2 12 Nahum 34 2 12 Nahum 34 2 13 Nahum 34 2 13 Nahum 34 2 14 Zechariah 38 1 18 Zechariah 38 2 1 Zechariah 38 1 19 Zechariah 38 2 2 Zechariah 38 1 20 Zechariah 38 2 3 Zechariah 38 1 21 Zechariah 38 2 4 Zechariah 38 2 1 Zechariah 38 2 5 Zechariah 38 2 2 Zechariah 38 2 6 Zechariah 38 2 3 Zechariah 38 2 7 Zechariah 38 2 4 Zechariah 38 2 8 Zechariah 38 2 5 Zechariah 38 2 9 Zechariah 38 2 6 Zechariah 38 2 10 Zechariah 38 2 7 Zechariah 38 2 11 Zechariah 38 2 8 Zechariah 38 2 12 Zechariah 38 2 9 Zechariah 38 2 13 Zechariah 38 2 10 Zechariah 38 2 14 Zechariah 38 2 11 Zechariah 38 2 15 Zechariah 38 2 12 Zechariah 38 2 16 Zechariah 38 2 13 Zechariah 38 2 17 Malachi 39 4 1 Malachi 39 3 19 Malachi 39 4 2 Malachi 39 3 20 Malachi 39 4 3 Malachi 39 3 21 Malachi 39 4 4 Malachi 39 3 22 Malachi 39 4 5 Malachi 39 3 23 Malachi 39 4 6 Malachi 39 3 24 Acts 44 19 41 Acts 44 19 40 bibledit-gtk-4.9/templates/mapping_french_louise_segond.xml000664 000766 000024 00002022335 12221507125 024500 0ustar00teusstaff000000 000000 Genesis 1 31 55 Genesis 1 32 1 Genesis 1 32 1 Genesis 1 32 2 Genesis 1 32 2 Genesis 1 32 3 Genesis 1 32 3 Genesis 1 32 4 Genesis 1 32 4 Genesis 1 32 5 Genesis 1 32 5 Genesis 1 32 6 Genesis 1 32 6 Genesis 1 32 7 Genesis 1 32 7 Genesis 1 32 8 Genesis 1 32 8 Genesis 1 32 9 Genesis 1 32 9 Genesis 1 32 10 Genesis 1 32 10 Genesis 1 32 11 Genesis 1 32 11 Genesis 1 32 12 Genesis 1 32 12 Genesis 1 32 13 Genesis 1 32 13 Genesis 1 32 14 Genesis 1 32 14 Genesis 1 32 15 Genesis 1 32 15 Genesis 1 32 16 Genesis 1 32 16 Genesis 1 32 17 Genesis 1 32 17 Genesis 1 32 18 Genesis 1 32 18 Genesis 1 32 19 Genesis 1 32 19 Genesis 1 32 20 Genesis 1 32 20 Genesis 1 32 21 Genesis 1 32 21 Genesis 1 32 22 Genesis 1 32 22 Genesis 1 32 23 Genesis 1 32 23 Genesis 1 32 24 Genesis 1 32 24 Genesis 1 32 25 Genesis 1 32 25 Genesis 1 32 26 Genesis 1 32 26 Genesis 1 32 27 Genesis 1 32 27 Genesis 1 32 28 Genesis 1 32 28 Genesis 1 32 29 Genesis 1 32 29 Genesis 1 32 30 Genesis 1 32 30 Genesis 1 32 31 Genesis 1 32 31 Genesis 1 32 32 Genesis 1 32 32 Genesis 1 32 33 Exodus 2 8 1 Exodus 2 7 26 Exodus 2 8 2 Exodus 2 7 27 Exodus 2 8 3 Exodus 2 7 28 Exodus 2 8 4 Exodus 2 7 29 Exodus 2 8 5 Exodus 2 8 1 Exodus 2 8 6 Exodus 2 8 2 Exodus 2 8 7 Exodus 2 8 3 Exodus 2 8 8 Exodus 2 8 4 Exodus 2 8 9 Exodus 2 8 5 Exodus 2 8 10 Exodus 2 8 6 Exodus 2 8 11 Exodus 2 8 7 Exodus 2 8 12 Exodus 2 8 8 Exodus 2 8 13 Exodus 2 8 9 Exodus 2 8 14 Exodus 2 8 10 Exodus 2 8 15 Exodus 2 8 11 Exodus 2 8 16 Exodus 2 8 12 Exodus 2 8 17 Exodus 2 8 13 Exodus 2 8 18 Exodus 2 8 14 Exodus 2 8 19 Exodus 2 8 15 Exodus 2 8 20 Exodus 2 8 16 Exodus 2 8 21 Exodus 2 8 17 Exodus 2 8 22 Exodus 2 8 18 Exodus 2 8 23 Exodus 2 8 19 Exodus 2 8 24 Exodus 2 8 20 Exodus 2 8 25 Exodus 2 8 21 Exodus 2 8 26 Exodus 2 8 22 Exodus 2 8 27 Exodus 2 8 23 Exodus 2 8 28 Exodus 2 8 24 Exodus 2 8 29 Exodus 2 8 25 Exodus 2 8 30 Exodus 2 8 26 Exodus 2 8 31 Exodus 2 8 27 Exodus 2 8 32 Exodus 2 8 28 Exodus 2 22 1 Exodus 2 21 37 Exodus 2 22 2 Exodus 2 22 1 Exodus 2 22 3 Exodus 2 22 2 Exodus 2 22 4 Exodus 2 22 3 Exodus 2 22 5 Exodus 2 22 4 Exodus 2 22 6 Exodus 2 22 5 Exodus 2 22 7 Exodus 2 22 6 Exodus 2 22 8 Exodus 2 22 7 Exodus 2 22 9 Exodus 2 22 8 Exodus 2 22 10 Exodus 2 22 9 Exodus 2 22 11 Exodus 2 22 10 Exodus 2 22 12 Exodus 2 22 11 Exodus 2 22 13 Exodus 2 22 12 Exodus 2 22 14 Exodus 2 22 13 Exodus 2 22 15 Exodus 2 22 14 Exodus 2 22 16 Exodus 2 22 15 Exodus 2 22 17 Exodus 2 22 16 Exodus 2 22 18 Exodus 2 22 17 Exodus 2 22 19 Exodus 2 22 18 Exodus 2 22 20 Exodus 2 22 19 Exodus 2 22 21 Exodus 2 22 20 Exodus 2 22 22 Exodus 2 22 21 Exodus 2 22 23 Exodus 2 22 22 Exodus 2 22 24 Exodus 2 22 23 Exodus 2 22 25 Exodus 2 22 24 Exodus 2 22 26 Exodus 2 22 25 Exodus 2 22 27 Exodus 2 22 26 Exodus 2 22 28 Exodus 2 22 27 Exodus 2 22 29 Exodus 2 22 28 Exodus 2 22 30 Exodus 2 22 29 Exodus 2 22 31 Exodus 2 22 30 Leviticus 3 6 1 Leviticus 3 5 20 Leviticus 3 6 2 Leviticus 3 5 21 Leviticus 3 6 3 Leviticus 3 5 22 Leviticus 3 6 4 Leviticus 3 5 23 Leviticus 3 6 5 Leviticus 3 5 24 Leviticus 3 6 6 Leviticus 3 5 25 Leviticus 3 6 7 Leviticus 3 5 26 Leviticus 3 6 8 Leviticus 3 6 1 Leviticus 3 6 9 Leviticus 3 6 2 Leviticus 3 6 10 Leviticus 3 6 3 Leviticus 3 6 11 Leviticus 3 6 4 Leviticus 3 6 12 Leviticus 3 6 5 Leviticus 3 6 13 Leviticus 3 6 6 Leviticus 3 6 14 Leviticus 3 6 7 Leviticus 3 6 15 Leviticus 3 6 8 Leviticus 3 6 16 Leviticus 3 6 9 Leviticus 3 6 17 Leviticus 3 6 10 Leviticus 3 6 18 Leviticus 3 6 11 Leviticus 3 6 19 Leviticus 3 6 12 Leviticus 3 6 20 Leviticus 3 6 13 Leviticus 3 6 21 Leviticus 3 6 14 Leviticus 3 6 22 Leviticus 3 6 15 Leviticus 3 6 23 Leviticus 3 6 16 Leviticus 3 6 24 Leviticus 3 6 17 Leviticus 3 6 25 Leviticus 3 6 18 Leviticus 3 6 26 Leviticus 3 6 19 Leviticus 3 6 27 Leviticus 3 6 20 Leviticus 3 6 28 Leviticus 3 6 21 Leviticus 3 6 29 Leviticus 3 6 22 Leviticus 3 6 30 Leviticus 3 6 23 Numbers 4 16 36 Numbers 4 17 1 Numbers 4 16 37 Numbers 4 17 2 Numbers 4 16 38 Numbers 4 17 3 Numbers 4 16 39 Numbers 4 17 4 Numbers 4 16 40 Numbers 4 17 5 Numbers 4 16 41 Numbers 4 17 6 Numbers 4 16 42 Numbers 4 17 7 Numbers 4 16 43 Numbers 4 17 8 Numbers 4 16 44 Numbers 4 17 9 Numbers 4 16 45 Numbers 4 17 10 Numbers 4 16 46 Numbers 4 17 11 Numbers 4 16 47 Numbers 4 17 12 Numbers 4 16 48 Numbers 4 17 13 Numbers 4 16 49 Numbers 4 17 14 Numbers 4 16 50 Numbers 4 17 15 Numbers 4 17 1 Numbers 4 17 16 Numbers 4 17 2 Numbers 4 17 17 Numbers 4 17 3 Numbers 4 17 18 Numbers 4 17 4 Numbers 4 17 19 Numbers 4 17 5 Numbers 4 17 20 Numbers 4 17 6 Numbers 4 17 21 Numbers 4 17 7 Numbers 4 17 22 Numbers 4 17 8 Numbers 4 17 23 Numbers 4 17 9 Numbers 4 17 24 Numbers 4 17 10 Numbers 4 17 25 Numbers 4 17 11 Numbers 4 17 26 Numbers 4 17 12 Numbers 4 17 27 Numbers 4 17 13 Numbers 4 17 28 Numbers 4 26 1 Numbers 4 25 19 Numbers 4 26 1 Numbers 4 26 1 Numbers 4 29 40 Numbers 4 30 1 Numbers 4 30 1 Numbers 4 30 2 Numbers 4 30 2 Numbers 4 30 3 Numbers 4 30 3 Numbers 4 30 4 Numbers 4 30 4 Numbers 4 30 5 Numbers 4 30 5 Numbers 4 30 6 Numbers 4 30 6 Numbers 4 30 7 Numbers 4 30 7 Numbers 4 30 8 Numbers 4 30 8 Numbers 4 30 9 Numbers 4 30 9 Numbers 4 30 10 Numbers 4 30 10 Numbers 4 30 11 Numbers 4 30 11 Numbers 4 30 12 Numbers 4 30 12 Numbers 4 30 13 Numbers 4 30 13 Numbers 4 30 14 Numbers 4 30 14 Numbers 4 30 15 Numbers 4 30 15 Numbers 4 30 16 Numbers 4 30 16 Numbers 4 30 17 Deuteronomy 5 12 32 Deuteronomy 5 13 1 Deuteronomy 5 13 1 Deuteronomy 5 13 2 Deuteronomy 5 13 2 Deuteronomy 5 13 3 Deuteronomy 5 13 3 Deuteronomy 5 13 4 Deuteronomy 5 13 4 Deuteronomy 5 13 5 Deuteronomy 5 13 5 Deuteronomy 5 13 6 Deuteronomy 5 13 6 Deuteronomy 5 13 7 Deuteronomy 5 13 7 Deuteronomy 5 13 8 Deuteronomy 5 13 8 Deuteronomy 5 13 9 Deuteronomy 5 13 9 Deuteronomy 5 13 10 Deuteronomy 5 13 10 Deuteronomy 5 13 11 Deuteronomy 5 13 11 Deuteronomy 5 13 12 Deuteronomy 5 13 12 Deuteronomy 5 13 13 Deuteronomy 5 13 13 Deuteronomy 5 13 14 Deuteronomy 5 13 14 Deuteronomy 5 13 15 Deuteronomy 5 13 15 Deuteronomy 5 13 16 Deuteronomy 5 13 16 Deuteronomy 5 13 17 Deuteronomy 5 13 17 Deuteronomy 5 13 18 Deuteronomy 5 13 18 Deuteronomy 5 13 19 Deuteronomy 5 22 30 Deuteronomy 5 23 1 Deuteronomy 5 23 1 Deuteronomy 5 23 2 Deuteronomy 5 23 2 Deuteronomy 5 23 3 Deuteronomy 5 23 3 Deuteronomy 5 23 4 Deuteronomy 5 23 4 Deuteronomy 5 23 5 Deuteronomy 5 23 5 Deuteronomy 5 23 6 Deuteronomy 5 23 6 Deuteronomy 5 23 7 Deuteronomy 5 23 7 Deuteronomy 5 23 8 Deuteronomy 5 23 8 Deuteronomy 5 23 9 Deuteronomy 5 23 9 Deuteronomy 5 23 10 Deuteronomy 5 23 10 Deuteronomy 5 23 11 Deuteronomy 5 23 11 Deuteronomy 5 23 12 Deuteronomy 5 23 12 Deuteronomy 5 23 13 Deuteronomy 5 23 13 Deuteronomy 5 23 14 Deuteronomy 5 23 14 Deuteronomy 5 23 15 Deuteronomy 5 23 15 Deuteronomy 5 23 16 Deuteronomy 5 23 16 Deuteronomy 5 23 17 Deuteronomy 5 23 17 Deuteronomy 5 23 18 Deuteronomy 5 23 18 Deuteronomy 5 23 19 Deuteronomy 5 23 19 Deuteronomy 5 23 20 Deuteronomy 5 23 20 Deuteronomy 5 23 21 Deuteronomy 5 23 21 Deuteronomy 5 23 22 Deuteronomy 5 23 22 Deuteronomy 5 23 23 Deuteronomy 5 23 23 Deuteronomy 5 23 24 Deuteronomy 5 23 24 Deuteronomy 5 23 25 Deuteronomy 5 23 25 Deuteronomy 5 23 26 Deuteronomy 5 29 1 Deuteronomy 5 28 69 Deuteronomy 5 29 2 Deuteronomy 5 29 1 Deuteronomy 5 29 3 Deuteronomy 5 29 2 Deuteronomy 5 29 4 Deuteronomy 5 29 3 Deuteronomy 5 29 5 Deuteronomy 5 29 4 Deuteronomy 5 29 6 Deuteronomy 5 29 5 Deuteronomy 5 29 7 Deuteronomy 5 29 6 Deuteronomy 5 29 8 Deuteronomy 5 29 7 Deuteronomy 5 29 9 Deuteronomy 5 29 8 Deuteronomy 5 29 10 Deuteronomy 5 29 9 Deuteronomy 5 29 11 Deuteronomy 5 29 10 Deuteronomy 5 29 12 Deuteronomy 5 29 11 Deuteronomy 5 29 13 Deuteronomy 5 29 12 Deuteronomy 5 29 14 Deuteronomy 5 29 13 Deuteronomy 5 29 15 Deuteronomy 5 29 14 Deuteronomy 5 29 16 Deuteronomy 5 29 15 Deuteronomy 5 29 17 Deuteronomy 5 29 16 Deuteronomy 5 29 18 Deuteronomy 5 29 17 Deuteronomy 5 29 19 Deuteronomy 5 29 18 Deuteronomy 5 29 20 Deuteronomy 5 29 19 Deuteronomy 5 29 21 Deuteronomy 5 29 20 Deuteronomy 5 29 22 Deuteronomy 5 29 21 Deuteronomy 5 29 23 Deuteronomy 5 29 22 Deuteronomy 5 29 24 Deuteronomy 5 29 23 Deuteronomy 5 29 25 Deuteronomy 5 29 24 Deuteronomy 5 29 26 Deuteronomy 5 29 25 Deuteronomy 5 29 27 Deuteronomy 5 29 26 Deuteronomy 5 29 28 Deuteronomy 5 29 27 Deuteronomy 5 29 29 Deuteronomy 5 29 28 1 Samuel 9 20 42 1 Samuel 9 20 41 1 Samuel 9 21 1 1 Samuel 9 21 2 1 Samuel 9 21 2 1 Samuel 9 21 3 1 Samuel 9 21 3 1 Samuel 9 21 4 1 Samuel 9 21 4 1 Samuel 9 21 5 1 Samuel 9 21 5 1 Samuel 9 21 6 1 Samuel 9 21 6 1 Samuel 9 21 7 1 Samuel 9 21 7 1 Samuel 9 21 8 1 Samuel 9 21 8 1 Samuel 9 21 9 1 Samuel 9 21 9 1 Samuel 9 21 10 1 Samuel 9 21 10 1 Samuel 9 21 11 1 Samuel 9 21 11 1 Samuel 9 21 12 1 Samuel 9 21 12 1 Samuel 9 21 13 1 Samuel 9 21 13 1 Samuel 9 21 14 1 Samuel 9 21 14 1 Samuel 9 21 15 1 Samuel 9 21 15 1 Samuel 9 21 16 1 Samuel 9 23 28 1 Samuel 9 24 1 1 Samuel 9 23 29 1 Samuel 9 24 1 1 Samuel 9 24 1 1 Samuel 9 24 2 1 Samuel 9 24 2 1 Samuel 9 24 3 1 Samuel 9 24 3 1 Samuel 9 24 4 1 Samuel 9 24 4 1 Samuel 9 24 5 1 Samuel 9 24 5 1 Samuel 9 24 6 1 Samuel 9 24 6 1 Samuel 9 24 7 1 Samuel 9 24 7 1 Samuel 9 24 8 1 Samuel 9 24 8 1 Samuel 9 24 9 1 Samuel 9 24 9 1 Samuel 9 24 10 1 Samuel 9 24 10 1 Samuel 9 24 11 1 Samuel 9 24 11 1 Samuel 9 24 12 1 Samuel 9 24 12 1 Samuel 9 24 13 1 Samuel 9 24 13 1 Samuel 9 24 14 1 Samuel 9 24 14 1 Samuel 9 24 15 1 Samuel 9 24 15 1 Samuel 9 24 16 1 Samuel 9 24 16 1 Samuel 9 24 17 1 Samuel 9 24 17 1 Samuel 9 24 18 1 Samuel 9 24 18 1 Samuel 9 24 19 1 Samuel 9 24 19 1 Samuel 9 24 20 1 Samuel 9 24 20 1 Samuel 9 24 21 1 Samuel 9 24 21 1 Samuel 9 24 22 1 Samuel 9 24 22 1 Samuel 9 24 23 2 Samuel 10 18 33 2 Samuel 10 19 1 2 Samuel 10 19 1 2 Samuel 10 19 2 2 Samuel 10 19 2 2 Samuel 10 19 3 2 Samuel 10 19 3 2 Samuel 10 19 4 2 Samuel 10 19 4 2 Samuel 10 19 5 2 Samuel 10 19 5 2 Samuel 10 19 6 2 Samuel 10 19 6 2 Samuel 10 19 7 2 Samuel 10 19 7 2 Samuel 10 19 8 2 Samuel 10 19 8 2 Samuel 10 19 9 2 Samuel 10 19 9 2 Samuel 10 19 10 2 Samuel 10 19 10 2 Samuel 10 19 11 2 Samuel 10 19 11 2 Samuel 10 19 12 2 Samuel 10 19 12 2 Samuel 10 19 13 2 Samuel 10 19 13 2 Samuel 10 19 14 2 Samuel 10 19 14 2 Samuel 10 19 15 2 Samuel 10 19 15 2 Samuel 10 19 16 2 Samuel 10 19 16 2 Samuel 10 19 17 2 Samuel 10 19 17 2 Samuel 10 19 18 2 Samuel 10 19 18 2 Samuel 10 19 19 2 Samuel 10 19 19 2 Samuel 10 19 20 2 Samuel 10 19 20 2 Samuel 10 19 21 2 Samuel 10 19 21 2 Samuel 10 19 22 2 Samuel 10 19 22 2 Samuel 10 19 23 2 Samuel 10 19 23 2 Samuel 10 19 24 2 Samuel 10 19 24 2 Samuel 10 19 25 2 Samuel 10 19 25 2 Samuel 10 19 26 2 Samuel 10 19 26 2 Samuel 10 19 27 2 Samuel 10 19 27 2 Samuel 10 19 28 2 Samuel 10 19 28 2 Samuel 10 19 29 2 Samuel 10 19 29 2 Samuel 10 19 30 2 Samuel 10 19 30 2 Samuel 10 19 31 2 Samuel 10 19 31 2 Samuel 10 19 32 2 Samuel 10 19 32 2 Samuel 10 19 33 2 Samuel 10 19 33 2 Samuel 10 19 34 2 Samuel 10 19 34 2 Samuel 10 19 35 2 Samuel 10 19 35 2 Samuel 10 19 36 2 Samuel 10 19 36 2 Samuel 10 19 37 2 Samuel 10 19 37 2 Samuel 10 19 38 2 Samuel 10 19 38 2 Samuel 10 19 39 2 Samuel 10 19 39 2 Samuel 10 19 40 2 Samuel 10 19 40 2 Samuel 10 19 41 2 Samuel 10 19 41 2 Samuel 10 19 42 2 Samuel 10 19 42 2 Samuel 10 19 43 2 Samuel 10 19 43 2 Samuel 10 19 44 1 Kings 11 4 21 1 Kings 11 5 1 1 Kings 11 4 22 1 Kings 11 5 2 1 Kings 11 4 23 1 Kings 11 5 3 1 Kings 11 4 24 1 Kings 11 5 4 1 Kings 11 4 25 1 Kings 11 5 5 1 Kings 11 4 26 1 Kings 11 5 6 1 Kings 11 4 27 1 Kings 11 5 7 1 Kings 11 4 28 1 Kings 11 5 8 1 Kings 11 4 29 1 Kings 11 5 9 1 Kings 11 4 30 1 Kings 11 5 10 1 Kings 11 4 31 1 Kings 11 5 11 1 Kings 11 4 32 1 Kings 11 5 12 1 Kings 11 4 33 1 Kings 11 5 13 1 Kings 11 4 34 1 Kings 11 5 14 1 Kings 11 5 1 1 Kings 11 5 15 1 Kings 11 5 2 1 Kings 11 5 16 1 Kings 11 5 3 1 Kings 11 5 17 1 Kings 11 5 4 1 Kings 11 5 18 1 Kings 11 5 5 1 Kings 11 5 19 1 Kings 11 5 6 1 Kings 11 5 20 1 Kings 11 5 7 1 Kings 11 5 21 1 Kings 11 5 8 1 Kings 11 5 22 1 Kings 11 5 9 1 Kings 11 5 23 1 Kings 11 5 10 1 Kings 11 5 24 1 Kings 11 5 11 1 Kings 11 5 25 1 Kings 11 5 12 1 Kings 11 5 26 1 Kings 11 5 13 1 Kings 11 5 27 1 Kings 11 5 14 1 Kings 11 5 28 1 Kings 11 5 15 1 Kings 11 5 29 1 Kings 11 5 16 1 Kings 11 5 30 1 Kings 11 5 17 1 Kings 11 5 31 1 Kings 11 5 18 1 Kings 11 5 32 1 Kings 11 18 33 1 Kings 11 18 33 1 Kings 11 18 33 1 Kings 11 18 34 1 Kings 11 22 43 1 Kings 11 22 43 1 Kings 11 22 43 1 Kings 11 22 44 1 Kings 11 22 44 1 Kings 11 22 45 1 Kings 11 22 45 1 Kings 11 22 46 1 Kings 11 22 46 1 Kings 11 22 47 1 Kings 11 22 47 1 Kings 11 22 48 1 Kings 11 22 48 1 Kings 11 22 49 1 Kings 11 22 49 1 Kings 11 22 50 1 Kings 11 22 50 1 Kings 11 22 51 1 Kings 11 22 51 1 Kings 11 22 52 1 Kings 11 22 52 1 Kings 11 22 53 1 Kings 11 22 53 1 Kings 11 22 54 2 Kings 12 11 21 2 Kings 12 12 1 2 Kings 12 12 1 2 Kings 12 12 2 2 Kings 12 12 2 2 Kings 12 12 3 2 Kings 12 12 3 2 Kings 12 12 4 2 Kings 12 12 4 2 Kings 12 12 5 2 Kings 12 12 5 2 Kings 12 12 6 2 Kings 12 12 6 2 Kings 12 12 7 2 Kings 12 12 7 2 Kings 12 12 8 2 Kings 12 12 8 2 Kings 12 12 9 2 Kings 12 12 9 2 Kings 12 12 10 2 Kings 12 12 10 2 Kings 12 12 11 2 Kings 12 12 11 2 Kings 12 12 12 2 Kings 12 12 12 2 Kings 12 12 13 2 Kings 12 12 13 2 Kings 12 12 14 2 Kings 12 12 14 2 Kings 12 12 15 2 Kings 12 12 15 2 Kings 12 12 16 2 Kings 12 12 16 2 Kings 12 12 17 2 Kings 12 12 17 2 Kings 12 12 18 2 Kings 12 12 18 2 Kings 12 12 19 2 Kings 12 12 19 2 Kings 12 12 20 2 Kings 12 12 20 2 Kings 12 12 21 2 Kings 12 12 21 2 Kings 12 12 22 1 Chronicles 13 6 1 1 Chronicles 13 5 27 1 Chronicles 13 6 2 1 Chronicles 13 5 28 1 Chronicles 13 6 3 1 Chronicles 13 5 29 1 Chronicles 13 6 4 1 Chronicles 13 5 30 1 Chronicles 13 6 5 1 Chronicles 13 5 31 1 Chronicles 13 6 6 1 Chronicles 13 5 32 1 Chronicles 13 6 7 1 Chronicles 13 5 33 1 Chronicles 13 6 8 1 Chronicles 13 5 34 1 Chronicles 13 6 9 1 Chronicles 13 5 35 1 Chronicles 13 6 10 1 Chronicles 13 5 36 1 Chronicles 13 6 11 1 Chronicles 13 5 37 1 Chronicles 13 6 12 1 Chronicles 13 5 38 1 Chronicles 13 6 13 1 Chronicles 13 5 39 1 Chronicles 13 6 14 1 Chronicles 13 5 40 1 Chronicles 13 6 15 1 Chronicles 13 5 41 1 Chronicles 13 6 16 1 Chronicles 13 6 1 1 Chronicles 13 6 17 1 Chronicles 13 6 2 1 Chronicles 13 6 18 1 Chronicles 13 6 3 1 Chronicles 13 6 19 1 Chronicles 13 6 4 1 Chronicles 13 6 20 1 Chronicles 13 6 5 1 Chronicles 13 6 21 1 Chronicles 13 6 6 1 Chronicles 13 6 22 1 Chronicles 13 6 7 1 Chronicles 13 6 23 1 Chronicles 13 6 8 1 Chronicles 13 6 24 1 Chronicles 13 6 9 1 Chronicles 13 6 25 1 Chronicles 13 6 10 1 Chronicles 13 6 26 1 Chronicles 13 6 11 1 Chronicles 13 6 27 1 Chronicles 13 6 12 1 Chronicles 13 6 28 1 Chronicles 13 6 13 1 Chronicles 13 6 29 1 Chronicles 13 6 14 1 Chronicles 13 6 30 1 Chronicles 13 6 15 1 Chronicles 13 6 31 1 Chronicles 13 6 16 1 Chronicles 13 6 32 1 Chronicles 13 6 17 1 Chronicles 13 6 33 1 Chronicles 13 6 18 1 Chronicles 13 6 34 1 Chronicles 13 6 19 1 Chronicles 13 6 35 1 Chronicles 13 6 20 1 Chronicles 13 6 36 1 Chronicles 13 6 21 1 Chronicles 13 6 37 1 Chronicles 13 6 22 1 Chronicles 13 6 38 1 Chronicles 13 6 23 1 Chronicles 13 6 39 1 Chronicles 13 6 24 1 Chronicles 13 6 40 1 Chronicles 13 6 25 1 Chronicles 13 6 41 1 Chronicles 13 6 26 1 Chronicles 13 6 42 1 Chronicles 13 6 27 1 Chronicles 13 6 43 1 Chronicles 13 6 28 1 Chronicles 13 6 44 1 Chronicles 13 6 29 1 Chronicles 13 6 45 1 Chronicles 13 6 30 1 Chronicles 13 6 46 1 Chronicles 13 6 31 1 Chronicles 13 6 47 1 Chronicles 13 6 32 1 Chronicles 13 6 48 1 Chronicles 13 6 33 1 Chronicles 13 6 49 1 Chronicles 13 6 34 1 Chronicles 13 6 50 1 Chronicles 13 6 35 1 Chronicles 13 6 51 1 Chronicles 13 6 36 1 Chronicles 13 6 52 1 Chronicles 13 6 37 1 Chronicles 13 6 53 1 Chronicles 13 6 38 1 Chronicles 13 6 54 1 Chronicles 13 6 39 1 Chronicles 13 6 55 1 Chronicles 13 6 40 1 Chronicles 13 6 56 1 Chronicles 13 6 41 1 Chronicles 13 6 57 1 Chronicles 13 6 42 1 Chronicles 13 6 58 1 Chronicles 13 6 43 1 Chronicles 13 6 59 1 Chronicles 13 6 44 1 Chronicles 13 6 60 1 Chronicles 13 6 45 1 Chronicles 13 6 61 1 Chronicles 13 6 46 1 Chronicles 13 6 62 1 Chronicles 13 6 47 1 Chronicles 13 6 63 1 Chronicles 13 6 48 1 Chronicles 13 6 64 1 Chronicles 13 6 49 1 Chronicles 13 6 65 1 Chronicles 13 6 50 1 Chronicles 13 6 66 1 Chronicles 13 6 51 1 Chronicles 13 6 67 1 Chronicles 13 6 52 1 Chronicles 13 6 68 1 Chronicles 13 6 53 1 Chronicles 13 6 69 1 Chronicles 13 6 54 1 Chronicles 13 6 70 1 Chronicles 13 6 55 1 Chronicles 13 6 71 1 Chronicles 13 6 56 1 Chronicles 13 6 72 1 Chronicles 13 6 57 1 Chronicles 13 6 73 1 Chronicles 13 6 58 1 Chronicles 13 6 74 1 Chronicles 13 6 59 1 Chronicles 13 6 75 1 Chronicles 13 6 60 1 Chronicles 13 6 76 1 Chronicles 13 6 61 1 Chronicles 13 6 77 1 Chronicles 13 6 62 1 Chronicles 13 6 78 1 Chronicles 13 6 63 1 Chronicles 13 6 79 1 Chronicles 13 6 64 1 Chronicles 13 6 80 1 Chronicles 13 6 65 1 Chronicles 13 6 81 1 Chronicles 13 6 66 1 Chronicles 13 12 4 1 Chronicles 13 12 4 1 Chronicles 13 12 4 1 Chronicles 13 12 5 1 Chronicles 13 12 5 1 Chronicles 13 12 6 1 Chronicles 13 12 6 1 Chronicles 13 12 7 1 Chronicles 13 12 7 1 Chronicles 13 12 8 1 Chronicles 13 12 8 1 Chronicles 13 12 9 1 Chronicles 13 12 9 1 Chronicles 13 12 10 1 Chronicles 13 12 10 1 Chronicles 13 12 11 1 Chronicles 13 12 11 1 Chronicles 13 12 12 1 Chronicles 13 12 12 1 Chronicles 13 12 13 1 Chronicles 13 12 13 1 Chronicles 13 12 14 1 Chronicles 13 12 14 1 Chronicles 13 12 15 1 Chronicles 13 12 15 1 Chronicles 13 12 16 1 Chronicles 13 12 16 1 Chronicles 13 12 17 1 Chronicles 13 12 17 1 Chronicles 13 12 18 1 Chronicles 13 12 18 1 Chronicles 13 12 19 1 Chronicles 13 12 19 1 Chronicles 13 12 20 1 Chronicles 13 12 20 1 Chronicles 13 12 21 1 Chronicles 13 12 21 1 Chronicles 13 12 22 1 Chronicles 13 12 22 1 Chronicles 13 12 23 1 Chronicles 13 12 23 1 Chronicles 13 12 24 1 Chronicles 13 12 24 1 Chronicles 13 12 25 1 Chronicles 13 12 25 1 Chronicles 13 12 26 1 Chronicles 13 12 26 1 Chronicles 13 12 27 1 Chronicles 13 12 27 1 Chronicles 13 12 28 1 Chronicles 13 12 28 1 Chronicles 13 12 29 1 Chronicles 13 12 29 1 Chronicles 13 12 30 1 Chronicles 13 12 30 1 Chronicles 13 12 31 1 Chronicles 13 12 31 1 Chronicles 13 12 32 1 Chronicles 13 12 32 1 Chronicles 13 12 33 1 Chronicles 13 12 33 1 Chronicles 13 12 34 1 Chronicles 13 12 34 1 Chronicles 13 12 35 1 Chronicles 13 12 35 1 Chronicles 13 12 36 1 Chronicles 13 12 36 1 Chronicles 13 12 37 1 Chronicles 13 12 37 1 Chronicles 13 12 38 1 Chronicles 13 12 38 1 Chronicles 13 12 39 1 Chronicles 13 12 39 1 Chronicles 13 12 40 1 Chronicles 13 12 40 1 Chronicles 13 12 41 2 Chronicles 14 2 1 2 Chronicles 14 1 18 2 Chronicles 14 2 2 2 Chronicles 14 2 1 2 Chronicles 14 2 3 2 Chronicles 14 2 2 2 Chronicles 14 2 4 2 Chronicles 14 2 3 2 Chronicles 14 2 5 2 Chronicles 14 2 4 2 Chronicles 14 2 6 2 Chronicles 14 2 5 2 Chronicles 14 2 7 2 Chronicles 14 2 6 2 Chronicles 14 2 8 2 Chronicles 14 2 7 2 Chronicles 14 2 9 2 Chronicles 14 2 8 2 Chronicles 14 2 10 2 Chronicles 14 2 9 2 Chronicles 14 2 11 2 Chronicles 14 2 10 2 Chronicles 14 2 12 2 Chronicles 14 2 11 2 Chronicles 14 2 13 2 Chronicles 14 2 12 2 Chronicles 14 2 14 2 Chronicles 14 2 13 2 Chronicles 14 2 15 2 Chronicles 14 2 14 2 Chronicles 14 2 16 2 Chronicles 14 2 15 2 Chronicles 14 2 17 2 Chronicles 14 2 16 2 Chronicles 14 2 18 2 Chronicles 14 2 17 2 Chronicles 14 14 1 2 Chronicles 14 13 23 2 Chronicles 14 14 2 2 Chronicles 14 14 1 2 Chronicles 14 14 3 2 Chronicles 14 14 2 2 Chronicles 14 14 4 2 Chronicles 14 14 3 2 Chronicles 14 14 5 2 Chronicles 14 14 4 2 Chronicles 14 14 6 2 Chronicles 14 14 5 2 Chronicles 14 14 7 2 Chronicles 14 14 6 2 Chronicles 14 14 8 2 Chronicles 14 14 7 2 Chronicles 14 14 9 2 Chronicles 14 14 8 2 Chronicles 14 14 10 2 Chronicles 14 14 9 2 Chronicles 14 14 11 2 Chronicles 14 14 10 2 Chronicles 14 14 12 2 Chronicles 14 14 11 2 Chronicles 14 14 13 2 Chronicles 14 14 12 2 Chronicles 14 14 14 2 Chronicles 14 14 13 2 Chronicles 14 14 15 2 Chronicles 14 14 14 Nehemiah 16 4 1 Nehemiah 16 3 33 Nehemiah 16 4 2 Nehemiah 16 3 34 Nehemiah 16 4 3 Nehemiah 16 3 35 Nehemiah 16 4 4 Nehemiah 16 3 36 Nehemiah 16 4 5 Nehemiah 16 3 37 Nehemiah 16 4 6 Nehemiah 16 3 38 Nehemiah 16 4 7 Nehemiah 16 4 1 Nehemiah 16 4 8 Nehemiah 16 4 2 Nehemiah 16 4 9 Nehemiah 16 4 3 Nehemiah 16 4 10 Nehemiah 16 4 4 Nehemiah 16 4 11 Nehemiah 16 4 5 Nehemiah 16 4 12 Nehemiah 16 4 6 Nehemiah 16 4 13 Nehemiah 16 4 7 Nehemiah 16 4 14 Nehemiah 16 4 8 Nehemiah 16 4 15 Nehemiah 16 4 9 Nehemiah 16 4 16 Nehemiah 16 4 10 Nehemiah 16 4 17 Nehemiah 16 4 11 Nehemiah 16 4 18 Nehemiah 16 4 12 Nehemiah 16 4 19 Nehemiah 16 4 13 Nehemiah 16 4 20 Nehemiah 16 4 14 Nehemiah 16 4 21 Nehemiah 16 4 15 Nehemiah 16 4 22 Nehemiah 16 4 16 Nehemiah 16 4 23 Nehemiah 16 4 17 Nehemiah 16 7 68 Nehemiah 16 7 67 Nehemiah 16 7 69 Nehemiah 16 7 68 Nehemiah 16 7 70 Nehemiah 16 7 69 Nehemiah 16 7 71 Nehemiah 16 7 70 Nehemiah 16 7 72 Nehemiah 16 7 71 Nehemiah 16 7 73 Nehemiah 16 7 72 Nehemiah 16 9 38 Nehemiah 16 10 1 Nehemiah 16 10 1 Nehemiah 16 10 2 Nehemiah 16 10 2 Nehemiah 16 10 3 Nehemiah 16 10 3 Nehemiah 16 10 4 Nehemiah 16 10 4 Nehemiah 16 10 5 Nehemiah 16 10 5 Nehemiah 16 10 6 Nehemiah 16 10 6 Nehemiah 16 10 7 Nehemiah 16 10 7 Nehemiah 16 10 8 Nehemiah 16 10 8 Nehemiah 16 10 9 Nehemiah 16 10 9 Nehemiah 16 10 10 Nehemiah 16 10 10 Nehemiah 16 10 11 Nehemiah 16 10 11 Nehemiah 16 10 12 Nehemiah 16 10 12 Nehemiah 16 10 13 Nehemiah 16 10 13 Nehemiah 16 10 14 Nehemiah 16 10 14 Nehemiah 16 10 15 Nehemiah 16 10 15 Nehemiah 16 10 16 Nehemiah 16 10 16 Nehemiah 16 10 17 Nehemiah 16 10 17 Nehemiah 16 10 18 Nehemiah 16 10 18 Nehemiah 16 10 19 Nehemiah 16 10 19 Nehemiah 16 10 20 Nehemiah 16 10 20 Nehemiah 16 10 21 Nehemiah 16 10 21 Nehemiah 16 10 22 Nehemiah 16 10 22 Nehemiah 16 10 23 Nehemiah 16 10 23 Nehemiah 16 10 24 Nehemiah 16 10 24 Nehemiah 16 10 25 Nehemiah 16 10 25 Nehemiah 16 10 26 Nehemiah 16 10 26 Nehemiah 16 10 27 Nehemiah 16 10 27 Nehemiah 16 10 28 Nehemiah 16 10 28 Nehemiah 16 10 29 Nehemiah 16 10 29 Nehemiah 16 10 30 Nehemiah 16 10 30 Nehemiah 16 10 31 Nehemiah 16 10 31 Nehemiah 16 10 32 Nehemiah 16 10 32 Nehemiah 16 10 33 Nehemiah 16 10 33 Nehemiah 16 10 34 Nehemiah 16 10 34 Nehemiah 16 10 35 Nehemiah 16 10 35 Nehemiah 16 10 36 Nehemiah 16 10 36 Nehemiah 16 10 37 Nehemiah 16 10 37 Nehemiah 16 10 38 Nehemiah 16 10 38 Nehemiah 16 10 39 Nehemiah 16 10 39 Nehemiah 16 10 40 Job 18 41 1 Job 18 40 25 Job 18 41 2 Job 18 40 26 Job 18 41 3 Job 18 40 27 Job 18 41 4 Job 18 40 28 Job 18 41 5 Job 18 40 29 Job 18 41 6 Job 18 40 30 Job 18 41 7 Job 18 40 31 Job 18 41 8 Job 18 40 32 Job 18 41 9 Job 18 41 1 Job 18 41 10 Job 18 41 2 Job 18 41 11 Job 18 41 3 Job 18 41 12 Job 18 41 4 Job 18 41 13 Job 18 41 5 Job 18 41 14 Job 18 41 6 Job 18 41 15 Job 18 41 7 Job 18 41 16 Job 18 41 8 Job 18 41 17 Job 18 41 9 Job 18 41 18 Job 18 41 10 Job 18 41 19 Job 18 41 11 Job 18 41 20 Job 18 41 12 Job 18 41 21 Job 18 41 13 Job 18 41 22 Job 18 41 14 Job 18 41 23 Job 18 41 15 Job 18 41 24 Job 18 41 16 Job 18 41 25 Job 18 41 17 Job 18 41 26 Job 18 41 18 Job 18 41 27 Job 18 41 19 Job 18 41 28 Job 18 41 20 Job 18 41 29 Job 18 41 21 Job 18 41 30 Job 18 41 22 Job 18 41 31 Job 18 41 23 Job 18 41 32 Job 18 41 24 Job 18 41 33 Job 18 41 25 Job 18 41 34 Job 18 41 26 Psalms 19 3 0 Psalms 19 3 1 Psalms 19 3 1 Psalms 19 3 2 Psalms 19 3 2 Psalms 19 3 3 Psalms 19 3 3 Psalms 19 3 4 Psalms 19 3 4 Psalms 19 3 5 Psalms 19 3 5 Psalms 19 3 6 Psalms 19 3 6 Psalms 19 3 7 Psalms 19 3 7 Psalms 19 3 8 Psalms 19 3 8 Psalms 19 3 9 Psalms 19 4 0 Psalms 19 4 1 Psalms 19 4 1 Psalms 19 4 2 Psalms 19 4 2 Psalms 19 4 3 Psalms 19 4 3 Psalms 19 4 4 Psalms 19 4 4 Psalms 19 4 5 Psalms 19 4 5 Psalms 19 4 6 Psalms 19 4 6 Psalms 19 4 7 Psalms 19 4 7 Psalms 19 4 8 Psalms 19 4 8 Psalms 19 4 9 Psalms 19 5 0 Psalms 19 5 1 Psalms 19 5 1 Psalms 19 5 2 Psalms 19 5 2 Psalms 19 5 3 Psalms 19 5 3 Psalms 19 5 4 Psalms 19 5 4 Psalms 19 5 5 Psalms 19 5 5 Psalms 19 5 6 Psalms 19 5 6 Psalms 19 5 7 Psalms 19 5 7 Psalms 19 5 8 Psalms 19 5 8 Psalms 19 5 9 Psalms 19 5 9 Psalms 19 5 10 Psalms 19 5 10 Psalms 19 5 11 Psalms 19 5 11 Psalms 19 5 12 Psalms 19 5 12 Psalms 19 5 13 Psalms 19 6 0 Psalms 19 6 1 Psalms 19 6 1 Psalms 19 6 2 Psalms 19 6 2 Psalms 19 6 3 Psalms 19 6 3 Psalms 19 6 4 Psalms 19 6 4 Psalms 19 6 5 Psalms 19 6 5 Psalms 19 6 6 Psalms 19 6 6 Psalms 19 6 7 Psalms 19 6 7 Psalms 19 6 8 Psalms 19 6 8 Psalms 19 6 9 Psalms 19 6 9 Psalms 19 6 10 Psalms 19 6 10 Psalms 19 6 11 Psalms 19 7 0 Psalms 19 7 1 Psalms 19 7 1 Psalms 19 7 2 Psalms 19 7 2 Psalms 19 7 3 Psalms 19 7 3 Psalms 19 7 4 Psalms 19 7 4 Psalms 19 7 5 Psalms 19 7 5 Psalms 19 7 6 Psalms 19 7 6 Psalms 19 7 7 Psalms 19 7 7 Psalms 19 7 8 Psalms 19 7 8 Psalms 19 7 9 Psalms 19 7 9 Psalms 19 7 10 Psalms 19 7 10 Psalms 19 7 11 Psalms 19 7 11 Psalms 19 7 12 Psalms 19 7 12 Psalms 19 7 13 Psalms 19 7 13 Psalms 19 7 14 Psalms 19 7 14 Psalms 19 7 15 Psalms 19 7 15 Psalms 19 7 16 Psalms 19 7 16 Psalms 19 7 17 Psalms 19 7 17 Psalms 19 7 18 Psalms 19 8 0 Psalms 19 8 1 Psalms 19 8 1 Psalms 19 8 2 Psalms 19 8 2 Psalms 19 8 3 Psalms 19 8 3 Psalms 19 8 4 Psalms 19 8 4 Psalms 19 8 5 Psalms 19 8 5 Psalms 19 8 6 Psalms 19 8 6 Psalms 19 8 7 Psalms 19 8 7 Psalms 19 8 8 Psalms 19 8 8 Psalms 19 8 9 Psalms 19 8 9 Psalms 19 8 10 Psalms 19 9 0 Psalms 19 9 1 Psalms 19 9 1 Psalms 19 9 2 Psalms 19 9 2 Psalms 19 9 3 Psalms 19 9 3 Psalms 19 9 4 Psalms 19 9 4 Psalms 19 9 5 Psalms 19 9 5 Psalms 19 9 6 Psalms 19 9 6 Psalms 19 9 7 Psalms 19 9 7 Psalms 19 9 8 Psalms 19 9 8 Psalms 19 9 9 Psalms 19 9 9 Psalms 19 9 10 Psalms 19 9 10 Psalms 19 9 11 Psalms 19 9 11 Psalms 19 9 12 Psalms 19 9 12 Psalms 19 9 13 Psalms 19 9 13 Psalms 19 9 14 Psalms 19 9 14 Psalms 19 9 15 Psalms 19 9 15 Psalms 19 9 16 Psalms 19 9 16 Psalms 19 9 17 Psalms 19 9 17 Psalms 19 9 18 Psalms 19 9 18 Psalms 19 9 19 Psalms 19 9 19 Psalms 19 9 20 Psalms 19 9 20 Psalms 19 9 21 Psalms 19 12 0 Psalms 19 12 1 Psalms 19 12 1 Psalms 19 12 2 Psalms 19 12 2 Psalms 19 12 3 Psalms 19 12 3 Psalms 19 12 4 Psalms 19 12 4 Psalms 19 12 5 Psalms 19 12 5 Psalms 19 12 6 Psalms 19 12 6 Psalms 19 12 7 Psalms 19 12 7 Psalms 19 12 8 Psalms 19 12 8 Psalms 19 12 9 Psalms 19 13 0 Psalms 19 13 1 Psalms 19 13 1 Psalms 19 13 2 Psalms 19 13 2 Psalms 19 13 3 Psalms 19 13 3 Psalms 19 13 4 Psalms 19 13 4 Psalms 19 13 5 Psalms 19 13 5 Psalms 19 13 6 Psalms 19 18 0 Psalms 19 18 1 Psalms 19 18 1 Psalms 19 18 2 Psalms 19 18 2 Psalms 19 18 3 Psalms 19 18 3 Psalms 19 18 4 Psalms 19 18 4 Psalms 19 18 5 Psalms 19 18 5 Psalms 19 18 6 Psalms 19 18 6 Psalms 19 18 7 Psalms 19 18 7 Psalms 19 18 8 Psalms 19 18 8 Psalms 19 18 9 Psalms 19 18 9 Psalms 19 18 10 Psalms 19 18 10 Psalms 19 18 11 Psalms 19 18 11 Psalms 19 18 12 Psalms 19 18 12 Psalms 19 18 13 Psalms 19 18 13 Psalms 19 18 14 Psalms 19 18 14 Psalms 19 18 15 Psalms 19 18 15 Psalms 19 18 16 Psalms 19 18 16 Psalms 19 18 17 Psalms 19 18 17 Psalms 19 18 18 Psalms 19 18 18 Psalms 19 18 19 Psalms 19 18 19 Psalms 19 18 20 Psalms 19 18 20 Psalms 19 18 21 Psalms 19 18 21 Psalms 19 18 22 Psalms 19 18 22 Psalms 19 18 23 Psalms 19 18 23 Psalms 19 18 24 Psalms 19 18 24 Psalms 19 18 25 Psalms 19 18 25 Psalms 19 18 26 Psalms 19 18 26 Psalms 19 18 27 Psalms 19 18 27 Psalms 19 18 28 Psalms 19 18 28 Psalms 19 18 29 Psalms 19 18 29 Psalms 19 18 30 Psalms 19 18 30 Psalms 19 18 31 Psalms 19 18 31 Psalms 19 18 32 Psalms 19 18 32 Psalms 19 18 33 Psalms 19 18 33 Psalms 19 18 34 Psalms 19 18 34 Psalms 19 18 35 Psalms 19 18 35 Psalms 19 18 36 Psalms 19 18 36 Psalms 19 18 37 Psalms 19 18 37 Psalms 19 18 38 Psalms 19 18 38 Psalms 19 18 39 Psalms 19 18 39 Psalms 19 18 40 Psalms 19 18 40 Psalms 19 18 41 Psalms 19 18 41 Psalms 19 18 42 Psalms 19 18 42 Psalms 19 18 43 Psalms 19 18 43 Psalms 19 18 44 Psalms 19 18 44 Psalms 19 18 45 Psalms 19 18 45 Psalms 19 18 46 Psalms 19 18 46 Psalms 19 18 47 Psalms 19 18 47 Psalms 19 18 48 Psalms 19 18 48 Psalms 19 18 49 Psalms 19 18 49 Psalms 19 18 50 Psalms 19 18 50 Psalms 19 18 51 Psalms 19 19 0 Psalms 19 19 1 Psalms 19 19 1 Psalms 19 19 2 Psalms 19 19 2 Psalms 19 19 3 Psalms 19 19 3 Psalms 19 19 4 Psalms 19 19 4 Psalms 19 19 5 Psalms 19 19 5 Psalms 19 19 6 Psalms 19 19 6 Psalms 19 19 7 Psalms 19 19 7 Psalms 19 19 8 Psalms 19 19 8 Psalms 19 19 9 Psalms 19 19 9 Psalms 19 19 10 Psalms 19 19 10 Psalms 19 19 11 Psalms 19 19 11 Psalms 19 19 12 Psalms 19 19 12 Psalms 19 19 13 Psalms 19 19 13 Psalms 19 19 14 Psalms 19 19 14 Psalms 19 19 15 Psalms 19 20 0 Psalms 19 20 1 Psalms 19 20 1 Psalms 19 20 2 Psalms 19 20 2 Psalms 19 20 3 Psalms 19 20 3 Psalms 19 20 4 Psalms 19 20 4 Psalms 19 20 5 Psalms 19 20 5 Psalms 19 20 6 Psalms 19 20 6 Psalms 19 20 7 Psalms 19 20 7 Psalms 19 20 8 Psalms 19 20 8 Psalms 19 20 9 Psalms 19 20 9 Psalms 19 20 10 Psalms 19 21 0 Psalms 19 21 1 Psalms 19 21 1 Psalms 19 21 2 Psalms 19 21 2 Psalms 19 21 3 Psalms 19 21 3 Psalms 19 21 4 Psalms 19 21 4 Psalms 19 21 5 Psalms 19 21 5 Psalms 19 21 6 Psalms 19 21 6 Psalms 19 21 7 Psalms 19 21 7 Psalms 19 21 8 Psalms 19 21 8 Psalms 19 21 9 Psalms 19 21 9 Psalms 19 21 10 Psalms 19 21 10 Psalms 19 21 11 Psalms 19 21 11 Psalms 19 21 12 Psalms 19 21 12 Psalms 19 21 13 Psalms 19 21 13 Psalms 19 21 14 Psalms 19 22 0 Psalms 19 22 1 Psalms 19 22 1 Psalms 19 22 2 Psalms 19 22 2 Psalms 19 22 3 Psalms 19 22 3 Psalms 19 22 4 Psalms 19 22 4 Psalms 19 22 5 Psalms 19 22 5 Psalms 19 22 6 Psalms 19 22 6 Psalms 19 22 7 Psalms 19 22 7 Psalms 19 22 8 Psalms 19 22 8 Psalms 19 22 9 Psalms 19 22 9 Psalms 19 22 10 Psalms 19 22 10 Psalms 19 22 11 Psalms 19 22 11 Psalms 19 22 12 Psalms 19 22 12 Psalms 19 22 13 Psalms 19 22 13 Psalms 19 22 14 Psalms 19 22 14 Psalms 19 22 15 Psalms 19 22 15 Psalms 19 22 16 Psalms 19 22 16 Psalms 19 22 17 Psalms 19 22 17 Psalms 19 22 18 Psalms 19 22 18 Psalms 19 22 19 Psalms 19 22 19 Psalms 19 22 20 Psalms 19 22 20 Psalms 19 22 21 Psalms 19 22 21 Psalms 19 22 22 Psalms 19 22 22 Psalms 19 22 23 Psalms 19 22 23 Psalms 19 22 24 Psalms 19 22 24 Psalms 19 22 25 Psalms 19 22 25 Psalms 19 22 26 Psalms 19 22 26 Psalms 19 22 27 Psalms 19 22 27 Psalms 19 22 28 Psalms 19 22 28 Psalms 19 22 29 Psalms 19 22 29 Psalms 19 22 30 Psalms 19 22 30 Psalms 19 22 31 Psalms 19 22 31 Psalms 19 22 32 Psalms 19 30 0 Psalms 19 30 1 Psalms 19 30 1 Psalms 19 30 2 Psalms 19 30 2 Psalms 19 30 3 Psalms 19 30 3 Psalms 19 30 4 Psalms 19 30 4 Psalms 19 30 5 Psalms 19 30 5 Psalms 19 30 6 Psalms 19 30 6 Psalms 19 30 7 Psalms 19 30 7 Psalms 19 30 8 Psalms 19 30 8 Psalms 19 30 9 Psalms 19 30 9 Psalms 19 30 10 Psalms 19 30 10 Psalms 19 30 11 Psalms 19 30 11 Psalms 19 30 12 Psalms 19 30 12 Psalms 19 30 13 Psalms 19 31 0 Psalms 19 31 1 Psalms 19 31 1 Psalms 19 31 2 Psalms 19 31 2 Psalms 19 31 3 Psalms 19 31 3 Psalms 19 31 4 Psalms 19 31 4 Psalms 19 31 5 Psalms 19 31 5 Psalms 19 31 6 Psalms 19 31 6 Psalms 19 31 7 Psalms 19 31 7 Psalms 19 31 8 Psalms 19 31 8 Psalms 19 31 9 Psalms 19 31 9 Psalms 19 31 10 Psalms 19 31 10 Psalms 19 31 11 Psalms 19 31 11 Psalms 19 31 12 Psalms 19 31 12 Psalms 19 31 13 Psalms 19 31 13 Psalms 19 31 14 Psalms 19 31 14 Psalms 19 31 15 Psalms 19 31 15 Psalms 19 31 16 Psalms 19 31 16 Psalms 19 31 17 Psalms 19 31 17 Psalms 19 31 18 Psalms 19 31 18 Psalms 19 31 19 Psalms 19 31 19 Psalms 19 31 20 Psalms 19 31 20 Psalms 19 31 21 Psalms 19 31 21 Psalms 19 31 22 Psalms 19 31 22 Psalms 19 31 23 Psalms 19 31 23 Psalms 19 31 24 Psalms 19 31 24 Psalms 19 31 25 Psalms 19 34 0 Psalms 19 34 1 Psalms 19 34 1 Psalms 19 34 2 Psalms 19 34 2 Psalms 19 34 3 Psalms 19 34 3 Psalms 19 34 4 Psalms 19 34 4 Psalms 19 34 5 Psalms 19 34 5 Psalms 19 34 6 Psalms 19 34 6 Psalms 19 34 7 Psalms 19 34 7 Psalms 19 34 8 Psalms 19 34 8 Psalms 19 34 9 Psalms 19 34 9 Psalms 19 34 10 Psalms 19 34 10 Psalms 19 34 11 Psalms 19 34 11 Psalms 19 34 12 Psalms 19 34 12 Psalms 19 34 13 Psalms 19 34 13 Psalms 19 34 14 Psalms 19 34 14 Psalms 19 34 15 Psalms 19 34 15 Psalms 19 34 16 Psalms 19 34 16 Psalms 19 34 17 Psalms 19 34 17 Psalms 19 34 18 Psalms 19 34 18 Psalms 19 34 19 Psalms 19 34 19 Psalms 19 34 20 Psalms 19 34 20 Psalms 19 34 21 Psalms 19 34 21 Psalms 19 34 22 Psalms 19 34 22 Psalms 19 34 23 Psalms 19 36 0 Psalms 19 36 1 Psalms 19 36 1 Psalms 19 36 2 Psalms 19 36 2 Psalms 19 36 3 Psalms 19 36 3 Psalms 19 36 4 Psalms 19 36 4 Psalms 19 36 5 Psalms 19 36 5 Psalms 19 36 6 Psalms 19 36 6 Psalms 19 36 7 Psalms 19 36 7 Psalms 19 36 8 Psalms 19 36 8 Psalms 19 36 9 Psalms 19 36 9 Psalms 19 36 10 Psalms 19 36 10 Psalms 19 36 11 Psalms 19 36 11 Psalms 19 36 12 Psalms 19 36 12 Psalms 19 36 13 Psalms 19 38 0 Psalms 19 38 1 Psalms 19 38 1 Psalms 19 38 2 Psalms 19 38 2 Psalms 19 38 3 Psalms 19 38 3 Psalms 19 38 4 Psalms 19 38 4 Psalms 19 38 5 Psalms 19 38 5 Psalms 19 38 6 Psalms 19 38 6 Psalms 19 38 7 Psalms 19 38 7 Psalms 19 38 8 Psalms 19 38 8 Psalms 19 38 9 Psalms 19 38 9 Psalms 19 38 10 Psalms 19 38 10 Psalms 19 38 11 Psalms 19 38 11 Psalms 19 38 12 Psalms 19 38 12 Psalms 19 38 13 Psalms 19 38 13 Psalms 19 38 14 Psalms 19 38 14 Psalms 19 38 15 Psalms 19 38 15 Psalms 19 38 16 Psalms 19 38 16 Psalms 19 38 17 Psalms 19 38 17 Psalms 19 38 18 Psalms 19 38 18 Psalms 19 38 19 Psalms 19 38 19 Psalms 19 38 20 Psalms 19 38 20 Psalms 19 38 21 Psalms 19 38 21 Psalms 19 38 22 Psalms 19 38 22 Psalms 19 38 23 Psalms 19 39 0 Psalms 19 39 1 Psalms 19 39 1 Psalms 19 39 2 Psalms 19 39 2 Psalms 19 39 3 Psalms 19 39 3 Psalms 19 39 4 Psalms 19 39 4 Psalms 19 39 5 Psalms 19 39 5 Psalms 19 39 6 Psalms 19 39 6 Psalms 19 39 7 Psalms 19 39 7 Psalms 19 39 8 Psalms 19 39 8 Psalms 19 39 9 Psalms 19 39 9 Psalms 19 39 10 Psalms 19 39 10 Psalms 19 39 11 Psalms 19 39 11 Psalms 19 39 12 Psalms 19 39 12 Psalms 19 39 13 Psalms 19 39 13 Psalms 19 39 14 Psalms 19 40 0 Psalms 19 40 1 Psalms 19 40 1 Psalms 19 40 2 Psalms 19 40 2 Psalms 19 40 3 Psalms 19 40 3 Psalms 19 40 4 Psalms 19 40 4 Psalms 19 40 5 Psalms 19 40 5 Psalms 19 40 6 Psalms 19 40 6 Psalms 19 40 7 Psalms 19 40 7 Psalms 19 40 8 Psalms 19 40 8 Psalms 19 40 9 Psalms 19 40 9 Psalms 19 40 10 Psalms 19 40 10 Psalms 19 40 11 Psalms 19 40 11 Psalms 19 40 12 Psalms 19 40 12 Psalms 19 40 13 Psalms 19 40 13 Psalms 19 40 14 Psalms 19 40 14 Psalms 19 40 15 Psalms 19 40 15 Psalms 19 40 16 Psalms 19 40 16 Psalms 19 40 17 Psalms 19 40 17 Psalms 19 40 18 Psalms 19 41 0 Psalms 19 41 1 Psalms 19 41 1 Psalms 19 41 2 Psalms 19 41 2 Psalms 19 41 3 Psalms 19 41 3 Psalms 19 41 4 Psalms 19 41 4 Psalms 19 41 5 Psalms 19 41 5 Psalms 19 41 6 Psalms 19 41 6 Psalms 19 41 7 Psalms 19 41 7 Psalms 19 41 8 Psalms 19 41 8 Psalms 19 41 9 Psalms 19 41 9 Psalms 19 41 10 Psalms 19 41 10 Psalms 19 41 11 Psalms 19 41 11 Psalms 19 41 12 Psalms 19 41 12 Psalms 19 41 13 Psalms 19 41 13 Psalms 19 41 14 Psalms 19 42 0 Psalms 19 42 1 Psalms 19 42 1 Psalms 19 42 2 Psalms 19 42 2 Psalms 19 42 3 Psalms 19 42 3 Psalms 19 42 4 Psalms 19 42 4 Psalms 19 42 5 Psalms 19 42 5 Psalms 19 42 6 Psalms 19 42 5 Psalms 19 42 7 Psalms 19 42 6 Psalms 19 42 7 Psalms 19 42 7 Psalms 19 42 8 Psalms 19 42 8 Psalms 19 42 9 Psalms 19 42 9 Psalms 19 42 10 Psalms 19 42 10 Psalms 19 42 11 Psalms 19 42 11 Psalms 19 42 12 Psalms 19 44 0 Psalms 19 44 1 Psalms 19 44 1 Psalms 19 44 2 Psalms 19 44 2 Psalms 19 44 3 Psalms 19 44 3 Psalms 19 44 4 Psalms 19 44 4 Psalms 19 44 5 Psalms 19 44 5 Psalms 19 44 6 Psalms 19 44 6 Psalms 19 44 7 Psalms 19 44 7 Psalms 19 44 8 Psalms 19 44 8 Psalms 19 44 9 Psalms 19 44 9 Psalms 19 44 10 Psalms 19 44 10 Psalms 19 44 11 Psalms 19 44 11 Psalms 19 44 12 Psalms 19 44 12 Psalms 19 44 13 Psalms 19 44 13 Psalms 19 44 14 Psalms 19 44 14 Psalms 19 44 15 Psalms 19 44 15 Psalms 19 44 16 Psalms 19 44 16 Psalms 19 44 17 Psalms 19 44 17 Psalms 19 44 18 Psalms 19 44 18 Psalms 19 44 19 Psalms 19 44 19 Psalms 19 44 20 Psalms 19 44 20 Psalms 19 44 21 Psalms 19 44 21 Psalms 19 44 22 Psalms 19 44 22 Psalms 19 44 23 Psalms 19 44 23 Psalms 19 44 24 Psalms 19 44 24 Psalms 19 44 25 Psalms 19 44 25 Psalms 19 44 26 Psalms 19 44 26 Psalms 19 44 27 Psalms 19 45 0 Psalms 19 45 1 Psalms 19 45 1 Psalms 19 45 2 Psalms 19 45 2 Psalms 19 45 3 Psalms 19 45 3 Psalms 19 45 4 Psalms 19 45 4 Psalms 19 45 5 Psalms 19 45 5 Psalms 19 45 6 Psalms 19 45 6 Psalms 19 45 7 Psalms 19 45 7 Psalms 19 45 8 Psalms 19 45 8 Psalms 19 45 9 Psalms 19 45 9 Psalms 19 45 10 Psalms 19 45 10 Psalms 19 45 11 Psalms 19 45 11 Psalms 19 45 12 Psalms 19 45 12 Psalms 19 45 13 Psalms 19 45 13 Psalms 19 45 14 Psalms 19 45 14 Psalms 19 45 15 Psalms 19 45 15 Psalms 19 45 16 Psalms 19 45 16 Psalms 19 45 17 Psalms 19 45 17 Psalms 19 45 18 Psalms 19 46 0 Psalms 19 46 1 Psalms 19 46 1 Psalms 19 46 2 Psalms 19 46 2 Psalms 19 46 3 Psalms 19 46 3 Psalms 19 46 4 Psalms 19 46 4 Psalms 19 46 5 Psalms 19 46 5 Psalms 19 46 6 Psalms 19 46 6 Psalms 19 46 7 Psalms 19 46 7 Psalms 19 46 8 Psalms 19 46 8 Psalms 19 46 9 Psalms 19 46 9 Psalms 19 46 10 Psalms 19 46 10 Psalms 19 46 11 Psalms 19 46 11 Psalms 19 46 12 Psalms 19 47 0 Psalms 19 47 1 Psalms 19 47 1 Psalms 19 47 2 Psalms 19 47 2 Psalms 19 47 3 Psalms 19 47 3 Psalms 19 47 4 Psalms 19 47 4 Psalms 19 47 5 Psalms 19 47 5 Psalms 19 47 6 Psalms 19 47 6 Psalms 19 47 7 Psalms 19 47 7 Psalms 19 47 8 Psalms 19 47 8 Psalms 19 47 9 Psalms 19 47 9 Psalms 19 47 10 Psalms 19 48 0 Psalms 19 48 1 Psalms 19 48 1 Psalms 19 48 2 Psalms 19 48 2 Psalms 19 48 3 Psalms 19 48 3 Psalms 19 48 4 Psalms 19 48 4 Psalms 19 48 5 Psalms 19 48 5 Psalms 19 48 6 Psalms 19 48 6 Psalms 19 48 7 Psalms 19 48 7 Psalms 19 48 8 Psalms 19 48 8 Psalms 19 48 9 Psalms 19 48 9 Psalms 19 48 10 Psalms 19 48 10 Psalms 19 48 11 Psalms 19 48 11 Psalms 19 48 12 Psalms 19 48 12 Psalms 19 48 13 Psalms 19 48 13 Psalms 19 48 14 Psalms 19 48 14 Psalms 19 48 15 Psalms 19 49 0 Psalms 19 49 1 Psalms 19 49 1 Psalms 19 49 2 Psalms 19 49 2 Psalms 19 49 3 Psalms 19 49 3 Psalms 19 49 4 Psalms 19 49 4 Psalms 19 49 5 Psalms 19 49 5 Psalms 19 49 6 Psalms 19 49 6 Psalms 19 49 7 Psalms 19 49 7 Psalms 19 49 8 Psalms 19 49 8 Psalms 19 49 9 Psalms 19 49 9 Psalms 19 49 10 Psalms 19 49 10 Psalms 19 49 11 Psalms 19 49 11 Psalms 19 49 12 Psalms 19 49 12 Psalms 19 49 13 Psalms 19 49 13 Psalms 19 49 14 Psalms 19 49 14 Psalms 19 49 15 Psalms 19 49 15 Psalms 19 49 16 Psalms 19 49 16 Psalms 19 49 17 Psalms 19 49 17 Psalms 19 49 18 Psalms 19 49 18 Psalms 19 49 19 Psalms 19 49 19 Psalms 19 49 20 Psalms 19 49 20 Psalms 19 49 21 Psalms 19 51 0 Psalms 19 51 1 Psalms 19 51 0 Psalms 19 51 2 Psalms 19 51 1 Psalms 19 51 2 Psalms 19 51 1 Psalms 19 51 3 Psalms 19 51 2 Psalms 19 51 4 Psalms 19 51 3 Psalms 19 51 5 Psalms 19 51 4 Psalms 19 51 6 Psalms 19 51 5 Psalms 19 51 7 Psalms 19 51 6 Psalms 19 51 8 Psalms 19 51 7 Psalms 19 51 9 Psalms 19 51 8 Psalms 19 51 10 Psalms 19 51 9 Psalms 19 51 11 Psalms 19 51 10 Psalms 19 51 12 Psalms 19 51 11 Psalms 19 51 13 Psalms 19 51 12 Psalms 19 51 14 Psalms 19 51 13 Psalms 19 51 15 Psalms 19 51 14 Psalms 19 51 16 Psalms 19 51 15 Psalms 19 51 17 Psalms 19 51 16 Psalms 19 51 18 Psalms 19 51 17 Psalms 19 51 19 Psalms 19 51 18 Psalms 19 51 20 Psalms 19 51 19 Psalms 19 51 21 Psalms 19 52 0 Psalms 19 52 1 Psalms 19 52 0 Psalms 19 52 2 Psalms 19 52 1 Psalms 19 52 2 Psalms 19 52 1 Psalms 19 52 3 Psalms 19 52 2 Psalms 19 52 4 Psalms 19 52 3 Psalms 19 52 5 Psalms 19 52 4 Psalms 19 52 6 Psalms 19 52 5 Psalms 19 52 7 Psalms 19 52 6 Psalms 19 52 8 Psalms 19 52 7 Psalms 19 52 9 Psalms 19 52 8 Psalms 19 52 10 Psalms 19 52 9 Psalms 19 52 11 Psalms 19 53 0 Psalms 19 53 1 Psalms 19 53 1 Psalms 19 53 2 Psalms 19 53 2 Psalms 19 53 3 Psalms 19 53 3 Psalms 19 53 4 Psalms 19 53 4 Psalms 19 53 5 Psalms 19 53 5 Psalms 19 53 6 Psalms 19 53 6 Psalms 19 53 7 Psalms 19 54 0 Psalms 19 54 1 Psalms 19 54 1 Psalms 19 54 3 Psalms 19 54 2 Psalms 19 54 4 Psalms 19 54 3 Psalms 19 54 5 Psalms 19 54 4 Psalms 19 54 6 Psalms 19 54 5 Psalms 19 54 7 Psalms 19 54 6 Psalms 19 54 8 Psalms 19 54 7 Psalms 19 54 9 Psalms 19 55 0 Psalms 19 55 1 Psalms 19 55 1 Psalms 19 55 2 Psalms 19 55 2 Psalms 19 55 3 Psalms 19 55 3 Psalms 19 55 4 Psalms 19 55 4 Psalms 19 55 5 Psalms 19 55 5 Psalms 19 55 6 Psalms 19 55 6 Psalms 19 55 7 Psalms 19 55 7 Psalms 19 55 8 Psalms 19 55 8 Psalms 19 55 9 Psalms 19 55 9 Psalms 19 55 10 Psalms 19 55 10 Psalms 19 55 11 Psalms 19 55 11 Psalms 19 55 12 Psalms 19 55 12 Psalms 19 55 13 Psalms 19 55 13 Psalms 19 55 14 Psalms 19 55 14 Psalms 19 55 15 Psalms 19 55 15 Psalms 19 55 16 Psalms 19 55 16 Psalms 19 55 17 Psalms 19 55 17 Psalms 19 55 18 Psalms 19 55 18 Psalms 19 55 19 Psalms 19 55 19 Psalms 19 55 20 Psalms 19 55 20 Psalms 19 55 21 Psalms 19 55 21 Psalms 19 55 22 Psalms 19 55 22 Psalms 19 55 23 Psalms 19 55 23 Psalms 19 55 24 Psalms 19 56 0 Psalms 19 56 1 Psalms 19 56 1 Psalms 19 56 2 Psalms 19 56 2 Psalms 19 56 3 Psalms 19 56 3 Psalms 19 56 4 Psalms 19 56 4 Psalms 19 56 5 Psalms 19 56 5 Psalms 19 56 6 Psalms 19 56 6 Psalms 19 56 7 Psalms 19 56 7 Psalms 19 56 8 Psalms 19 56 8 Psalms 19 56 9 Psalms 19 56 9 Psalms 19 56 10 Psalms 19 56 10 Psalms 19 56 11 Psalms 19 56 11 Psalms 19 56 12 Psalms 19 56 12 Psalms 19 56 13 Psalms 19 56 13 Psalms 19 56 14 Psalms 19 57 0 Psalms 19 57 1 Psalms 19 57 1 Psalms 19 57 2 Psalms 19 57 2 Psalms 19 57 3 Psalms 19 57 3 Psalms 19 57 4 Psalms 19 57 4 Psalms 19 57 5 Psalms 19 57 5 Psalms 19 57 6 Psalms 19 57 6 Psalms 19 57 7 Psalms 19 57 7 Psalms 19 57 8 Psalms 19 57 8 Psalms 19 57 9 Psalms 19 57 9 Psalms 19 57 10 Psalms 19 57 10 Psalms 19 57 11 Psalms 19 57 11 Psalms 19 57 12 Psalms 19 58 0 Psalms 19 58 1 Psalms 19 58 1 Psalms 19 58 2 Psalms 19 58 2 Psalms 19 58 3 Psalms 19 58 3 Psalms 19 58 4 Psalms 19 58 4 Psalms 19 58 5 Psalms 19 58 5 Psalms 19 58 6 Psalms 19 58 6 Psalms 19 58 7 Psalms 19 58 7 Psalms 19 58 8 Psalms 19 58 8 Psalms 19 58 9 Psalms 19 58 9 Psalms 19 58 10 Psalms 19 58 10 Psalms 19 58 11 Psalms 19 58 11 Psalms 19 58 12 Psalms 19 59 0 Psalms 19 59 1 Psalms 19 59 1 Psalms 19 59 2 Psalms 19 59 2 Psalms 19 59 3 Psalms 19 59 3 Psalms 19 59 4 Psalms 19 59 4 Psalms 19 59 5 Psalms 19 59 5 Psalms 19 59 6 Psalms 19 59 6 Psalms 19 59 7 Psalms 19 59 7 Psalms 19 59 8 Psalms 19 59 8 Psalms 19 59 9 Psalms 19 59 9 Psalms 19 59 10 Psalms 19 59 10 Psalms 19 59 11 Psalms 19 59 11 Psalms 19 59 12 Psalms 19 59 12 Psalms 19 59 13 Psalms 19 59 13 Psalms 19 59 14 Psalms 19 59 14 Psalms 19 59 15 Psalms 19 59 15 Psalms 19 59 16 Psalms 19 59 16 Psalms 19 59 17 Psalms 19 59 17 Psalms 19 59 18 Psalms 19 60 0 Psalms 19 60 1 Psalms 19 60 1 Psalms 19 60 3 Psalms 19 60 2 Psalms 19 60 4 Psalms 19 60 3 Psalms 19 60 5 Psalms 19 60 4 Psalms 19 60 6 Psalms 19 60 5 Psalms 19 60 7 Psalms 19 60 6 Psalms 19 60 8 Psalms 19 60 7 Psalms 19 60 9 Psalms 19 60 8 Psalms 19 60 10 Psalms 19 60 9 Psalms 19 60 11 Psalms 19 60 10 Psalms 19 60 12 Psalms 19 60 11 Psalms 19 60 13 Psalms 19 60 12 Psalms 19 60 14 Psalms 19 61 0 Psalms 19 61 1 Psalms 19 61 1 Psalms 19 61 2 Psalms 19 61 2 Psalms 19 61 3 Psalms 19 61 3 Psalms 19 61 4 Psalms 19 61 4 Psalms 19 61 5 Psalms 19 61 5 Psalms 19 61 6 Psalms 19 61 6 Psalms 19 61 7 Psalms 19 61 7 Psalms 19 61 8 Psalms 19 61 8 Psalms 19 61 9 Psalms 19 62 0 Psalms 19 62 1 Psalms 19 62 1 Psalms 19 62 2 Psalms 19 62 2 Psalms 19 62 3 Psalms 19 62 3 Psalms 19 62 4 Psalms 19 62 4 Psalms 19 62 5 Psalms 19 62 5 Psalms 19 62 6 Psalms 19 62 6 Psalms 19 62 7 Psalms 19 62 7 Psalms 19 62 8 Psalms 19 62 8 Psalms 19 62 9 Psalms 19 62 9 Psalms 19 62 10 Psalms 19 62 10 Psalms 19 62 11 Psalms 19 62 11 Psalms 19 62 12 Psalms 19 62 12 Psalms 19 62 13 Psalms 19 63 0 Psalms 19 63 1 Psalms 19 63 1 Psalms 19 63 2 Psalms 19 63 2 Psalms 19 63 3 Psalms 19 63 3 Psalms 19 63 4 Psalms 19 63 4 Psalms 19 63 5 Psalms 19 63 5 Psalms 19 63 6 Psalms 19 63 6 Psalms 19 63 7 Psalms 19 63 7 Psalms 19 63 8 Psalms 19 63 8 Psalms 19 63 9 Psalms 19 63 9 Psalms 19 63 10 Psalms 19 63 10 Psalms 19 63 11 Psalms 19 63 11 Psalms 19 63 12 Psalms 19 64 0 Psalms 19 64 1 Psalms 19 64 1 Psalms 19 64 2 Psalms 19 64 2 Psalms 19 64 3 Psalms 19 64 3 Psalms 19 64 4 Psalms 19 64 4 Psalms 19 64 5 Psalms 19 64 5 Psalms 19 64 6 Psalms 19 64 6 Psalms 19 64 7 Psalms 19 64 7 Psalms 19 64 8 Psalms 19 64 8 Psalms 19 64 9 Psalms 19 64 9 Psalms 19 64 10 Psalms 19 64 10 Psalms 19 64 11 Psalms 19 65 0 Psalms 19 65 1 Psalms 19 65 1 Psalms 19 65 2 Psalms 19 65 2 Psalms 19 65 3 Psalms 19 65 3 Psalms 19 65 4 Psalms 19 65 4 Psalms 19 65 5 Psalms 19 65 5 Psalms 19 65 6 Psalms 19 65 6 Psalms 19 65 7 Psalms 19 65 7 Psalms 19 65 8 Psalms 19 65 8 Psalms 19 65 9 Psalms 19 65 9 Psalms 19 65 10 Psalms 19 65 10 Psalms 19 65 11 Psalms 19 65 11 Psalms 19 65 12 Psalms 19 65 12 Psalms 19 65 13 Psalms 19 65 13 Psalms 19 65 14 Psalms 19 67 0 Psalms 19 67 1 Psalms 19 67 1 Psalms 19 67 2 Psalms 19 67 2 Psalms 19 67 3 Psalms 19 67 3 Psalms 19 67 4 Psalms 19 67 4 Psalms 19 67 5 Psalms 19 67 5 Psalms 19 67 6 Psalms 19 67 6 Psalms 19 67 7 Psalms 19 67 7 Psalms 19 67 8 Psalms 19 68 0 Psalms 19 68 1 Psalms 19 68 1 Psalms 19 68 2 Psalms 19 68 2 Psalms 19 68 3 Psalms 19 68 3 Psalms 19 68 4 Psalms 19 68 4 Psalms 19 68 5 Psalms 19 68 5 Psalms 19 68 6 Psalms 19 68 6 Psalms 19 68 7 Psalms 19 68 7 Psalms 19 68 8 Psalms 19 68 8 Psalms 19 68 9 Psalms 19 68 9 Psalms 19 68 10 Psalms 19 68 10 Psalms 19 68 11 Psalms 19 68 11 Psalms 19 68 12 Psalms 19 68 12 Psalms 19 68 13 Psalms 19 68 13 Psalms 19 68 14 Psalms 19 68 14 Psalms 19 68 15 Psalms 19 68 15 Psalms 19 68 16 Psalms 19 68 16 Psalms 19 68 17 Psalms 19 68 17 Psalms 19 68 18 Psalms 19 68 18 Psalms 19 68 19 Psalms 19 68 19 Psalms 19 68 20 Psalms 19 68 20 Psalms 19 68 21 Psalms 19 68 21 Psalms 19 68 22 Psalms 19 68 22 Psalms 19 68 23 Psalms 19 68 23 Psalms 19 68 24 Psalms 19 68 24 Psalms 19 68 25 Psalms 19 68 25 Psalms 19 68 26 Psalms 19 68 26 Psalms 19 68 27 Psalms 19 68 27 Psalms 19 68 28 Psalms 19 68 28 Psalms 19 68 29 Psalms 19 68 29 Psalms 19 68 30 Psalms 19 68 30 Psalms 19 68 31 Psalms 19 68 31 Psalms 19 68 32 Psalms 19 68 32 Psalms 19 68 33 Psalms 19 68 33 Psalms 19 68 34 Psalms 19 68 34 Psalms 19 68 35 Psalms 19 68 35 Psalms 19 68 36 Psalms 19 69 0 Psalms 19 69 1 Psalms 19 69 1 Psalms 19 69 2 Psalms 19 69 2 Psalms 19 69 3 Psalms 19 69 3 Psalms 19 69 4 Psalms 19 69 4 Psalms 19 69 5 Psalms 19 69 5 Psalms 19 69 6 Psalms 19 69 6 Psalms 19 69 7 Psalms 19 69 7 Psalms 19 69 8 Psalms 19 69 8 Psalms 19 69 9 Psalms 19 69 9 Psalms 19 69 10 Psalms 19 69 10 Psalms 19 69 11 Psalms 19 69 11 Psalms 19 69 12 Psalms 19 69 12 Psalms 19 69 13 Psalms 19 69 13 Psalms 19 69 14 Psalms 19 69 14 Psalms 19 69 15 Psalms 19 69 15 Psalms 19 69 16 Psalms 19 69 16 Psalms 19 69 17 Psalms 19 69 17 Psalms 19 69 18 Psalms 19 69 18 Psalms 19 69 19 Psalms 19 69 19 Psalms 19 69 20 Psalms 19 69 20 Psalms 19 69 21 Psalms 19 69 21 Psalms 19 69 22 Psalms 19 69 22 Psalms 19 69 23 Psalms 19 69 23 Psalms 19 69 24 Psalms 19 69 24 Psalms 19 69 25 Psalms 19 69 25 Psalms 19 69 26 Psalms 19 69 26 Psalms 19 69 27 Psalms 19 69 27 Psalms 19 69 28 Psalms 19 69 28 Psalms 19 69 29 Psalms 19 69 29 Psalms 19 69 30 Psalms 19 69 30 Psalms 19 69 31 Psalms 19 69 31 Psalms 19 69 32 Psalms 19 69 32 Psalms 19 69 33 Psalms 19 69 33 Psalms 19 69 34 Psalms 19 69 34 Psalms 19 69 35 Psalms 19 69 35 Psalms 19 69 36 Psalms 19 69 36 Psalms 19 69 37 Psalms 19 70 0 Psalms 19 70 1 Psalms 19 70 1 Psalms 19 70 2 Psalms 19 70 2 Psalms 19 70 3 Psalms 19 70 3 Psalms 19 70 4 Psalms 19 70 4 Psalms 19 70 5 Psalms 19 70 5 Psalms 19 70 6 Psalms 19 75 0 Psalms 19 75 1 Psalms 19 75 1 Psalms 19 75 2 Psalms 19 75 2 Psalms 19 75 3 Psalms 19 75 3 Psalms 19 75 4 Psalms 19 75 4 Psalms 19 75 5 Psalms 19 75 5 Psalms 19 75 6 Psalms 19 75 6 Psalms 19 75 7 Psalms 19 75 7 Psalms 19 75 8 Psalms 19 75 8 Psalms 19 75 9 Psalms 19 75 9 Psalms 19 75 10 Psalms 19 75 10 Psalms 19 75 11 Psalms 19 76 0 Psalms 19 76 1 Psalms 19 76 1 Psalms 19 76 2 Psalms 19 76 2 Psalms 19 76 3 Psalms 19 76 3 Psalms 19 76 4 Psalms 19 76 4 Psalms 19 76 5 Psalms 19 76 5 Psalms 19 76 6 Psalms 19 76 6 Psalms 19 76 7 Psalms 19 76 7 Psalms 19 76 8 Psalms 19 76 8 Psalms 19 76 9 Psalms 19 76 9 Psalms 19 76 10 Psalms 19 76 10 Psalms 19 76 11 Psalms 19 76 11 Psalms 19 76 12 Psalms 19 76 12 Psalms 19 76 13 Psalms 19 77 0 Psalms 19 77 1 Psalms 19 77 1 Psalms 19 77 2 Psalms 19 77 2 Psalms 19 77 3 Psalms 19 77 3 Psalms 19 77 4 Psalms 19 77 4 Psalms 19 77 5 Psalms 19 77 5 Psalms 19 77 6 Psalms 19 77 6 Psalms 19 77 7 Psalms 19 77 7 Psalms 19 77 8 Psalms 19 77 8 Psalms 19 77 9 Psalms 19 77 9 Psalms 19 77 10 Psalms 19 77 10 Psalms 19 77 11 Psalms 19 77 11 Psalms 19 77 12 Psalms 19 77 12 Psalms 19 77 13 Psalms 19 77 13 Psalms 19 77 14 Psalms 19 77 14 Psalms 19 77 15 Psalms 19 77 15 Psalms 19 77 16 Psalms 19 77 16 Psalms 19 77 17 Psalms 19 77 17 Psalms 19 77 18 Psalms 19 77 18 Psalms 19 77 19 Psalms 19 77 19 Psalms 19 77 20 Psalms 19 77 20 Psalms 19 77 21 Psalms 19 80 0 Psalms 19 80 1 Psalms 19 80 1 Psalms 19 80 2 Psalms 19 80 2 Psalms 19 80 3 Psalms 19 80 3 Psalms 19 80 4 Psalms 19 80 4 Psalms 19 80 5 Psalms 19 80 5 Psalms 19 80 6 Psalms 19 80 6 Psalms 19 80 7 Psalms 19 80 7 Psalms 19 80 8 Psalms 19 80 8 Psalms 19 80 9 Psalms 19 80 9 Psalms 19 80 10 Psalms 19 80 10 Psalms 19 80 11 Psalms 19 80 11 Psalms 19 80 12 Psalms 19 80 12 Psalms 19 80 13 Psalms 19 80 13 Psalms 19 80 14 Psalms 19 80 14 Psalms 19 80 15 Psalms 19 80 15 Psalms 19 80 16 Psalms 19 80 16 Psalms 19 80 17 Psalms 19 80 17 Psalms 19 80 18 Psalms 19 80 18 Psalms 19 80 19 Psalms 19 80 19 Psalms 19 80 20 Psalms 19 81 0 Psalms 19 81 1 Psalms 19 81 1 Psalms 19 81 2 Psalms 19 81 2 Psalms 19 81 3 Psalms 19 81 3 Psalms 19 81 4 Psalms 19 81 4 Psalms 19 81 5 Psalms 19 81 5 Psalms 19 81 6 Psalms 19 81 6 Psalms 19 81 7 Psalms 19 81 7 Psalms 19 81 8 Psalms 19 81 8 Psalms 19 81 9 Psalms 19 81 9 Psalms 19 81 10 Psalms 19 81 10 Psalms 19 81 11 Psalms 19 81 11 Psalms 19 81 12 Psalms 19 81 12 Psalms 19 81 13 Psalms 19 81 13 Psalms 19 81 14 Psalms 19 81 14 Psalms 19 81 15 Psalms 19 81 15 Psalms 19 81 16 Psalms 19 81 16 Psalms 19 81 17 Psalms 19 83 0 Psalms 19 83 1 Psalms 19 83 1 Psalms 19 83 2 Psalms 19 83 2 Psalms 19 83 3 Psalms 19 83 3 Psalms 19 83 4 Psalms 19 83 4 Psalms 19 83 5 Psalms 19 83 5 Psalms 19 83 6 Psalms 19 83 6 Psalms 19 83 7 Psalms 19 83 7 Psalms 19 83 8 Psalms 19 83 8 Psalms 19 83 9 Psalms 19 83 9 Psalms 19 83 10 Psalms 19 83 10 Psalms 19 83 11 Psalms 19 83 11 Psalms 19 83 12 Psalms 19 83 12 Psalms 19 83 13 Psalms 19 83 13 Psalms 19 83 14 Psalms 19 83 14 Psalms 19 83 15 Psalms 19 83 15 Psalms 19 83 16 Psalms 19 83 16 Psalms 19 83 17 Psalms 19 83 17 Psalms 19 83 18 Psalms 19 83 18 Psalms 19 83 19 Psalms 19 84 0 Psalms 19 84 1 Psalms 19 84 1 Psalms 19 84 2 Psalms 19 84 2 Psalms 19 84 3 Psalms 19 84 3 Psalms 19 84 4 Psalms 19 84 4 Psalms 19 84 5 Psalms 19 84 5 Psalms 19 84 6 Psalms 19 84 6 Psalms 19 84 7 Psalms 19 84 7 Psalms 19 84 8 Psalms 19 84 8 Psalms 19 84 9 Psalms 19 84 9 Psalms 19 84 10 Psalms 19 84 10 Psalms 19 84 11 Psalms 19 84 11 Psalms 19 84 12 Psalms 19 84 12 Psalms 19 84 13 Psalms 19 85 0 Psalms 19 85 1 Psalms 19 85 1 Psalms 19 85 2 Psalms 19 85 2 Psalms 19 85 3 Psalms 19 85 3 Psalms 19 85 4 Psalms 19 85 4 Psalms 19 85 5 Psalms 19 85 5 Psalms 19 85 6 Psalms 19 85 6 Psalms 19 85 7 Psalms 19 85 7 Psalms 19 85 8 Psalms 19 85 8 Psalms 19 85 9 Psalms 19 85 9 Psalms 19 85 10 Psalms 19 85 10 Psalms 19 85 11 Psalms 19 85 11 Psalms 19 85 12 Psalms 19 85 12 Psalms 19 85 13 Psalms 19 85 13 Psalms 19 85 14 Psalms 19 88 0 Psalms 19 88 1 Psalms 19 88 1 Psalms 19 88 2 Psalms 19 88 2 Psalms 19 88 3 Psalms 19 88 3 Psalms 19 88 4 Psalms 19 88 4 Psalms 19 88 5 Psalms 19 88 5 Psalms 19 88 6 Psalms 19 88 6 Psalms 19 88 7 Psalms 19 88 7 Psalms 19 88 8 Psalms 19 88 8 Psalms 19 88 9 Psalms 19 88 9 Psalms 19 88 10 Psalms 19 88 10 Psalms 19 88 11 Psalms 19 88 11 Psalms 19 88 12 Psalms 19 88 12 Psalms 19 88 13 Psalms 19 88 13 Psalms 19 88 14 Psalms 19 88 14 Psalms 19 88 15 Psalms 19 88 15 Psalms 19 88 16 Psalms 19 88 16 Psalms 19 88 17 Psalms 19 88 17 Psalms 19 88 18 Psalms 19 88 18 Psalms 19 88 19 Psalms 19 89 0 Psalms 19 89 1 Psalms 19 89 1 Psalms 19 89 2 Psalms 19 89 2 Psalms 19 89 3 Psalms 19 89 3 Psalms 19 89 4 Psalms 19 89 4 Psalms 19 89 5 Psalms 19 89 5 Psalms 19 89 6 Psalms 19 89 6 Psalms 19 89 7 Psalms 19 89 7 Psalms 19 89 8 Psalms 19 89 8 Psalms 19 89 9 Psalms 19 89 9 Psalms 19 89 10 Psalms 19 89 10 Psalms 19 89 11 Psalms 19 89 11 Psalms 19 89 12 Psalms 19 89 12 Psalms 19 89 13 Psalms 19 89 13 Psalms 19 89 14 Psalms 19 89 14 Psalms 19 89 15 Psalms 19 89 15 Psalms 19 89 16 Psalms 19 89 16 Psalms 19 89 17 Psalms 19 89 17 Psalms 19 89 18 Psalms 19 89 18 Psalms 19 89 19 Psalms 19 89 19 Psalms 19 89 20 Psalms 19 89 20 Psalms 19 89 21 Psalms 19 89 21 Psalms 19 89 22 Psalms 19 89 22 Psalms 19 89 23 Psalms 19 89 23 Psalms 19 89 24 Psalms 19 89 24 Psalms 19 89 25 Psalms 19 89 25 Psalms 19 89 26 Psalms 19 89 26 Psalms 19 89 27 Psalms 19 89 27 Psalms 19 89 28 Psalms 19 89 28 Psalms 19 89 29 Psalms 19 89 29 Psalms 19 89 30 Psalms 19 89 30 Psalms 19 89 31 Psalms 19 89 31 Psalms 19 89 32 Psalms 19 89 32 Psalms 19 89 33 Psalms 19 89 33 Psalms 19 89 34 Psalms 19 89 34 Psalms 19 89 35 Psalms 19 89 35 Psalms 19 89 36 Psalms 19 89 36 Psalms 19 89 37 Psalms 19 89 37 Psalms 19 89 38 Psalms 19 89 38 Psalms 19 89 39 Psalms 19 89 39 Psalms 19 89 40 Psalms 19 89 40 Psalms 19 89 41 Psalms 19 89 41 Psalms 19 89 42 Psalms 19 89 42 Psalms 19 89 43 Psalms 19 89 43 Psalms 19 89 44 Psalms 19 89 44 Psalms 19 89 45 Psalms 19 89 45 Psalms 19 89 46 Psalms 19 89 46 Psalms 19 89 47 Psalms 19 89 47 Psalms 19 89 48 Psalms 19 89 48 Psalms 19 89 49 Psalms 19 89 49 Psalms 19 89 50 Psalms 19 89 50 Psalms 19 89 51 Psalms 19 89 51 Psalms 19 89 52 Psalms 19 89 52 Psalms 19 89 53 Psalms 19 92 0 Psalms 19 92 1 Psalms 19 92 1 Psalms 19 92 2 Psalms 19 92 2 Psalms 19 92 3 Psalms 19 92 3 Psalms 19 92 4 Psalms 19 92 4 Psalms 19 92 5 Psalms 19 92 5 Psalms 19 92 6 Psalms 19 92 6 Psalms 19 92 7 Psalms 19 92 7 Psalms 19 92 8 Psalms 19 92 8 Psalms 19 92 9 Psalms 19 92 9 Psalms 19 92 10 Psalms 19 92 10 Psalms 19 92 11 Psalms 19 92 11 Psalms 19 92 12 Psalms 19 92 12 Psalms 19 92 13 Psalms 19 92 13 Psalms 19 92 14 Psalms 19 92 14 Psalms 19 92 15 Psalms 19 92 15 Psalms 19 92 16 Psalms 19 102 0 Psalms 19 102 1 Psalms 19 102 1 Psalms 19 102 2 Psalms 19 102 2 Psalms 19 102 3 Psalms 19 102 3 Psalms 19 102 4 Psalms 19 102 4 Psalms 19 102 5 Psalms 19 102 5 Psalms 19 102 6 Psalms 19 102 6 Psalms 19 102 7 Psalms 19 102 7 Psalms 19 102 8 Psalms 19 102 8 Psalms 19 102 9 Psalms 19 102 9 Psalms 19 102 10 Psalms 19 102 10 Psalms 19 102 11 Psalms 19 102 11 Psalms 19 102 12 Psalms 19 102 12 Psalms 19 102 13 Psalms 19 102 13 Psalms 19 102 14 Psalms 19 102 14 Psalms 19 102 15 Psalms 19 102 15 Psalms 19 102 16 Psalms 19 102 16 Psalms 19 102 17 Psalms 19 102 17 Psalms 19 102 18 Psalms 19 102 18 Psalms 19 102 19 Psalms 19 102 19 Psalms 19 102 20 Psalms 19 102 20 Psalms 19 102 21 Psalms 19 102 21 Psalms 19 102 22 Psalms 19 102 22 Psalms 19 102 23 Psalms 19 102 23 Psalms 19 102 24 Psalms 19 102 24 Psalms 19 102 25 Psalms 19 102 25 Psalms 19 102 26 Psalms 19 102 26 Psalms 19 102 27 Psalms 19 102 27 Psalms 19 102 28 Psalms 19 102 28 Psalms 19 102 29 Psalms 19 108 0 Psalms 19 108 1 Psalms 19 108 1 Psalms 19 108 2 Psalms 19 108 2 Psalms 19 108 3 Psalms 19 108 3 Psalms 19 108 4 Psalms 19 108 4 Psalms 19 108 5 Psalms 19 108 5 Psalms 19 108 6 Psalms 19 108 6 Psalms 19 108 7 Psalms 19 108 7 Psalms 19 108 8 Psalms 19 108 8 Psalms 19 108 9 Psalms 19 108 9 Psalms 19 108 10 Psalms 19 108 10 Psalms 19 108 11 Psalms 19 108 11 Psalms 19 108 12 Psalms 19 108 12 Psalms 19 108 13 Psalms 19 108 13 Psalms 19 108 14 Psalms 19 140 0 Psalms 19 140 1 Psalms 19 140 1 Psalms 19 140 2 Psalms 19 140 2 Psalms 19 140 3 Psalms 19 140 3 Psalms 19 140 4 Psalms 19 140 4 Psalms 19 140 5 Psalms 19 140 5 Psalms 19 140 6 Psalms 19 140 6 Psalms 19 140 7 Psalms 19 140 7 Psalms 19 140 8 Psalms 19 140 8 Psalms 19 140 9 Psalms 19 140 9 Psalms 19 140 10 Psalms 19 140 10 Psalms 19 140 11 Psalms 19 140 11 Psalms 19 140 12 Psalms 19 140 12 Psalms 19 140 13 Psalms 19 140 13 Psalms 19 140 14 Psalms 19 142 0 Psalms 19 142 1 Psalms 19 142 1 Psalms 19 142 2 Psalms 19 142 2 Psalms 19 142 3 Psalms 19 142 3 Psalms 19 142 4 Psalms 19 142 4 Psalms 19 142 5 Psalms 19 142 5 Psalms 19 142 6 Psalms 19 142 6 Psalms 19 142 7 Psalms 19 142 7 Psalms 19 142 8 Ecclesiastes 21 5 1 Ecclesiastes 21 4 17 Ecclesiastes 21 5 2 Ecclesiastes 21 5 1 Ecclesiastes 21 5 3 Ecclesiastes 21 5 2 Ecclesiastes 21 5 4 Ecclesiastes 21 5 3 Ecclesiastes 21 5 5 Ecclesiastes 21 5 4 Ecclesiastes 21 5 6 Ecclesiastes 21 5 5 Ecclesiastes 21 5 7 Ecclesiastes 21 5 6 Ecclesiastes 21 5 8 Ecclesiastes 21 5 7 Ecclesiastes 21 5 9 Ecclesiastes 21 5 8 Ecclesiastes 21 5 10 Ecclesiastes 21 5 9 Ecclesiastes 21 5 11 Ecclesiastes 21 5 10 Ecclesiastes 21 5 12 Ecclesiastes 21 5 11 Ecclesiastes 21 5 13 Ecclesiastes 21 5 12 Ecclesiastes 21 5 14 Ecclesiastes 21 5 13 Ecclesiastes 21 5 15 Ecclesiastes 21 5 14 Ecclesiastes 21 5 16 Ecclesiastes 21 5 15 Ecclesiastes 21 5 17 Ecclesiastes 21 5 16 Ecclesiastes 21 5 18 Ecclesiastes 21 5 17 Ecclesiastes 21 5 19 Ecclesiastes 21 5 18 Ecclesiastes 21 5 20 Ecclesiastes 21 5 19 Song of Solomon 22 6 13 Song of Solomon 22 7 1 Song of Solomon 22 7 1 Song of Solomon 22 7 2 Song of Solomon 22 7 2 Song of Solomon 22 7 3 Song of Solomon 22 7 3 Song of Solomon 22 7 4 Song of Solomon 22 7 4 Song of Solomon 22 7 5 Song of Solomon 22 7 5 Song of Solomon 22 7 6 Song of Solomon 22 7 6 Song of Solomon 22 7 7 Song of Solomon 22 7 7 Song of Solomon 22 7 8 Song of Solomon 22 7 8 Song of Solomon 22 7 9 Song of Solomon 22 7 9 Song of Solomon 22 7 10 Song of Solomon 22 7 10 Song of Solomon 22 7 11 Song of Solomon 22 7 11 Song of Solomon 22 7 12 Song of Solomon 22 7 12 Song of Solomon 22 7 13 Song of Solomon 22 7 13 Song of Solomon 22 7 14 Isaiah 23 9 1 Isaiah 23 8 23 Isaiah 23 9 2 Isaiah 23 9 1 Isaiah 23 9 3 Isaiah 23 9 2 Isaiah 23 9 4 Isaiah 23 9 3 Isaiah 23 9 5 Isaiah 23 9 4 Isaiah 23 9 6 Isaiah 23 9 5 Isaiah 23 9 7 Isaiah 23 9 6 Isaiah 23 9 8 Isaiah 23 9 7 Isaiah 23 9 9 Isaiah 23 9 8 Isaiah 23 9 10 Isaiah 23 9 9 Isaiah 23 9 11 Isaiah 23 9 10 Isaiah 23 9 12 Isaiah 23 9 11 Isaiah 23 9 13 Isaiah 23 9 12 Isaiah 23 9 14 Isaiah 23 9 13 Isaiah 23 9 15 Isaiah 23 9 14 Isaiah 23 9 16 Isaiah 23 9 15 Isaiah 23 9 17 Isaiah 23 9 16 Isaiah 23 9 18 Isaiah 23 9 17 Isaiah 23 9 19 Isaiah 23 9 18 Isaiah 23 9 20 Isaiah 23 9 19 Isaiah 23 9 21 Isaiah 23 9 20 Isaiah 23 64 2 Isaiah 23 64 1 Isaiah 23 64 3 Isaiah 23 64 2 Isaiah 23 64 4 Isaiah 23 64 3 Isaiah 23 64 5 Isaiah 23 64 4 Isaiah 23 64 6 Isaiah 23 64 5 Isaiah 23 64 7 Isaiah 23 64 6 Isaiah 23 64 8 Isaiah 23 64 7 Isaiah 23 64 9 Isaiah 23 64 8 Isaiah 23 64 10 Isaiah 23 64 9 Isaiah 23 64 11 Isaiah 23 64 10 Isaiah 23 64 12 Isaiah 23 64 11 Jeremiah 24 9 1 Jeremiah 24 8 23 Jeremiah 24 9 2 Jeremiah 24 9 1 Jeremiah 24 9 3 Jeremiah 24 9 2 Jeremiah 24 9 4 Jeremiah 24 9 3 Jeremiah 24 9 5 Jeremiah 24 9 4 Jeremiah 24 9 6 Jeremiah 24 9 5 Jeremiah 24 9 7 Jeremiah 24 9 6 Jeremiah 24 9 8 Jeremiah 24 9 7 Jeremiah 24 9 9 Jeremiah 24 9 8 Jeremiah 24 9 10 Jeremiah 24 9 9 Jeremiah 24 9 11 Jeremiah 24 9 10 Jeremiah 24 9 12 Jeremiah 24 9 11 Jeremiah 24 9 13 Jeremiah 24 9 12 Jeremiah 24 9 14 Jeremiah 24 9 13 Jeremiah 24 9 15 Jeremiah 24 9 14 Jeremiah 24 9 16 Jeremiah 24 9 15 Jeremiah 24 9 17 Jeremiah 24 9 16 Jeremiah 24 9 18 Jeremiah 24 9 17 Jeremiah 24 9 19 Jeremiah 24 9 18 Jeremiah 24 9 20 Jeremiah 24 9 19 Jeremiah 24 9 21 Jeremiah 24 9 20 Jeremiah 24 9 22 Jeremiah 24 9 21 Jeremiah 24 9 23 Jeremiah 24 9 22 Jeremiah 24 9 24 Jeremiah 24 9 23 Jeremiah 24 9 25 Jeremiah 24 9 24 Jeremiah 24 9 26 Jeremiah 24 9 25 Ezekiel 26 20 45 Ezekiel 26 21 1 Ezekiel 26 20 46 Ezekiel 26 21 2 Ezekiel 26 20 44 Ezekiel 26 21 3 Ezekiel 26 20 47 Ezekiel 26 21 3 Ezekiel 26 20 48 Ezekiel 26 21 4 Ezekiel 26 20 49 Ezekiel 26 21 5 Ezekiel 26 21 1 Ezekiel 26 21 6 Ezekiel 26 21 2 Ezekiel 26 21 7 Ezekiel 26 21 3 Ezekiel 26 21 8 Ezekiel 26 21 4 Ezekiel 26 21 9 Ezekiel 26 21 5 Ezekiel 26 21 10 Ezekiel 26 21 6 Ezekiel 26 21 11 Ezekiel 26 21 7 Ezekiel 26 21 12 Ezekiel 26 21 8 Ezekiel 26 21 13 Ezekiel 26 21 9 Ezekiel 26 21 14 Ezekiel 26 21 10 Ezekiel 26 21 15 Ezekiel 26 21 11 Ezekiel 26 21 16 Ezekiel 26 21 12 Ezekiel 26 21 17 Ezekiel 26 21 13 Ezekiel 26 21 18 Ezekiel 26 21 14 Ezekiel 26 21 19 Ezekiel 26 21 15 Ezekiel 26 21 20 Ezekiel 26 21 16 Ezekiel 26 21 21 Ezekiel 26 21 17 Ezekiel 26 21 22 Ezekiel 26 21 18 Ezekiel 26 21 23 Ezekiel 26 21 19 Ezekiel 26 21 24 Ezekiel 26 21 20 Ezekiel 26 21 25 Ezekiel 26 21 21 Ezekiel 26 21 26 Ezekiel 26 21 22 Ezekiel 26 21 27 Ezekiel 26 21 23 Ezekiel 26 21 28 Ezekiel 26 21 24 Ezekiel 26 21 29 Ezekiel 26 21 25 Ezekiel 26 21 30 Ezekiel 26 21 26 Ezekiel 26 21 31 Ezekiel 26 21 27 Ezekiel 26 21 32 Ezekiel 26 21 28 Ezekiel 26 21 33 Ezekiel 26 21 29 Ezekiel 26 21 34 Ezekiel 26 21 30 Ezekiel 26 21 35 Ezekiel 26 21 31 Ezekiel 26 21 36 Ezekiel 26 21 32 Ezekiel 26 21 37 Daniel 27 4 1 Daniel 27 3 31 Daniel 27 4 2 Daniel 27 3 32 Daniel 27 4 3 Daniel 27 3 33 Daniel 27 4 4 Daniel 27 4 1 Daniel 27 4 5 Daniel 27 4 2 Daniel 27 4 6 Daniel 27 4 3 Daniel 27 4 7 Daniel 27 4 4 Daniel 27 4 8 Daniel 27 4 5 Daniel 27 4 9 Daniel 27 4 6 Daniel 27 4 10 Daniel 27 4 7 Daniel 27 4 11 Daniel 27 4 8 Daniel 27 4 12 Daniel 27 4 9 Daniel 27 4 13 Daniel 27 4 10 Daniel 27 4 14 Daniel 27 4 11 Daniel 27 4 15 Daniel 27 4 12 Daniel 27 4 16 Daniel 27 4 13 Daniel 27 4 17 Daniel 27 4 14 Daniel 27 4 18 Daniel 27 4 15 Daniel 27 4 19 Daniel 27 4 16 Daniel 27 4 20 Daniel 27 4 17 Daniel 27 4 21 Daniel 27 4 18 Daniel 27 4 22 Daniel 27 4 19 Daniel 27 4 23 Daniel 27 4 20 Daniel 27 4 24 Daniel 27 4 21 Daniel 27 4 25 Daniel 27 4 22 Daniel 27 4 26 Daniel 27 4 23 Daniel 27 4 27 Daniel 27 4 24 Daniel 27 4 28 Daniel 27 4 25 Daniel 27 4 29 Daniel 27 4 26 Daniel 27 4 30 Daniel 27 4 27 Daniel 27 4 31 Daniel 27 4 28 Daniel 27 4 32 Daniel 27 4 29 Daniel 27 4 33 Daniel 27 4 30 Daniel 27 4 34 Daniel 27 4 31 Daniel 27 4 35 Daniel 27 4 32 Daniel 27 4 36 Daniel 27 4 33 Daniel 27 4 37 Daniel 27 4 34 Daniel 27 5 31 Daniel 27 6 1 Daniel 27 6 1 Daniel 27 6 2 Daniel 27 6 2 Daniel 27 6 3 Daniel 27 6 3 Daniel 27 6 4 Daniel 27 6 4 Daniel 27 6 5 Daniel 27 6 5 Daniel 27 6 6 Daniel 27 6 6 Daniel 27 6 7 Daniel 27 6 7 Daniel 27 6 8 Daniel 27 6 8 Daniel 27 6 9 Daniel 27 6 9 Daniel 27 6 10 Daniel 27 6 10 Daniel 27 6 11 Daniel 27 6 11 Daniel 27 6 12 Daniel 27 6 12 Daniel 27 6 13 Daniel 27 6 13 Daniel 27 6 14 Daniel 27 6 14 Daniel 27 6 15 Daniel 27 6 15 Daniel 27 6 16 Daniel 27 6 16 Daniel 27 6 17 Daniel 27 6 17 Daniel 27 6 18 Daniel 27 6 18 Daniel 27 6 19 Daniel 27 6 19 Daniel 27 6 20 Daniel 27 6 20 Daniel 27 6 21 Daniel 27 6 21 Daniel 27 6 22 Daniel 27 6 22 Daniel 27 6 23 Daniel 27 6 23 Daniel 27 6 24 Daniel 27 6 24 Daniel 27 6 25 Daniel 27 6 25 Daniel 27 6 26 Daniel 27 6 26 Daniel 27 6 27 Daniel 27 6 27 Daniel 27 6 28 Daniel 27 6 28 Daniel 27 6 29 Hosea 28 1 10 Hosea 28 2 1 Hosea 28 1 11 Hosea 28 2 2 Hosea 28 2 1 Hosea 28 2 3 Hosea 28 2 2 Hosea 28 2 4 Hosea 28 2 3 Hosea 28 2 5 Hosea 28 2 4 Hosea 28 2 6 Hosea 28 2 5 Hosea 28 2 7 Hosea 28 2 6 Hosea 28 2 8 Hosea 28 2 7 Hosea 28 2 9 Hosea 28 2 8 Hosea 28 2 10 Hosea 28 2 9 Hosea 28 2 11 Hosea 28 2 10 Hosea 28 2 12 Hosea 28 2 11 Hosea 28 2 13 Hosea 28 2 12 Hosea 28 2 14 Hosea 28 2 13 Hosea 28 2 15 Hosea 28 2 14 Hosea 28 2 16 Hosea 28 2 15 Hosea 28 2 17 Hosea 28 2 16 Hosea 28 2 18 Hosea 28 2 17 Hosea 28 2 19 Hosea 28 2 18 Hosea 28 2 20 Hosea 28 2 19 Hosea 28 2 21 Hosea 28 2 20 Hosea 28 2 22 Hosea 28 2 21 Hosea 28 2 23 Hosea 28 2 22 Hosea 28 2 24 Hosea 28 2 23 Hosea 28 2 25 Hosea 28 11 12 Hosea 28 12 1 Hosea 28 12 1 Hosea 28 12 2 Hosea 28 12 2 Hosea 28 12 3 Hosea 28 12 3 Hosea 28 12 4 Hosea 28 12 4 Hosea 28 12 5 Hosea 28 12 5 Hosea 28 12 6 Hosea 28 12 6 Hosea 28 12 7 Hosea 28 12 7 Hosea 28 12 8 Hosea 28 12 8 Hosea 28 12 9 Hosea 28 12 9 Hosea 28 12 10 Hosea 28 12 10 Hosea 28 12 11 Hosea 28 12 11 Hosea 28 12 12 Hosea 28 12 12 Hosea 28 12 13 Hosea 28 12 13 Hosea 28 12 14 Hosea 28 12 14 Hosea 28 12 15 Hosea 28 13 16 Hosea 28 14 1 Hosea 28 14 1 Hosea 28 14 2 Hosea 28 14 2 Hosea 28 14 3 Hosea 28 14 3 Hosea 28 14 4 Hosea 28 14 4 Hosea 28 14 5 Hosea 28 14 5 Hosea 28 14 6 Hosea 28 14 6 Hosea 28 14 7 Hosea 28 14 7 Hosea 28 14 8 Hosea 28 14 8 Hosea 28 14 9 Hosea 28 14 9 Hosea 28 14 10 Joel 29 2 28 Joel 29 3 1 Joel 29 2 29 Joel 29 3 2 Joel 29 2 30 Joel 29 3 3 Joel 29 2 31 Joel 29 3 4 Joel 29 2 32 Joel 29 3 5 Joel 29 3 1 Joel 29 4 1 Joel 29 3 2 Joel 29 4 2 Joel 29 3 3 Joel 29 4 3 Joel 29 3 4 Joel 29 4 4 Joel 29 3 5 Joel 29 4 5 Joel 29 3 6 Joel 29 4 6 Joel 29 3 7 Joel 29 4 7 Joel 29 3 8 Joel 29 4 8 Joel 29 3 9 Joel 29 4 9 Joel 29 3 10 Joel 29 4 10 Joel 29 3 11 Joel 29 4 11 Joel 29 3 12 Joel 29 4 12 Joel 29 3 13 Joel 29 4 13 Joel 29 3 14 Joel 29 4 14 Joel 29 3 15 Joel 29 4 15 Joel 29 3 16 Joel 29 4 16 Joel 29 3 17 Joel 29 4 17 Joel 29 3 18 Joel 29 4 18 Joel 29 3 19 Joel 29 4 19 Joel 29 3 20 Joel 29 4 20 Joel 29 3 21 Joel 29 4 21 Jonah 32 1 17 Jonah 32 2 1 Jonah 32 2 1 Jonah 32 2 2 Jonah 32 2 2 Jonah 32 2 3 Jonah 32 2 3 Jonah 32 2 4 Jonah 32 2 4 Jonah 32 2 5 Jonah 32 2 5 Jonah 32 2 6 Jonah 32 2 6 Jonah 32 2 7 Jonah 32 2 7 Jonah 32 2 8 Jonah 32 2 8 Jonah 32 2 9 Jonah 32 2 9 Jonah 32 2 10 Jonah 32 2 10 Jonah 32 2 11 Micah 33 5 1 Micah 33 4 14 Micah 33 5 2 Micah 33 5 1 Micah 33 5 3 Micah 33 5 2 Micah 33 5 4 Micah 33 5 3 Micah 33 5 5 Micah 33 5 4 Micah 33 5 6 Micah 33 5 5 Micah 33 5 7 Micah 33 5 6 Micah 33 5 8 Micah 33 5 7 Micah 33 5 9 Micah 33 5 8 Micah 33 5 10 Micah 33 5 9 Micah 33 5 11 Micah 33 5 10 Micah 33 5 12 Micah 33 5 11 Micah 33 5 13 Micah 33 5 12 Micah 33 5 14 Micah 33 5 13 Micah 33 5 15 Micah 33 5 14 Nahum 34 1 15 Nahum 34 2 1 Nahum 34 2 1 Nahum 34 2 2 Nahum 34 2 2 Nahum 34 2 3 Nahum 34 2 3 Nahum 34 2 4 Nahum 34 2 4 Nahum 34 2 5 Nahum 34 2 5 Nahum 34 2 6 Nahum 34 2 6 Nahum 34 2 7 Nahum 34 2 7 Nahum 34 2 8 Nahum 34 2 8 Nahum 34 2 9 Nahum 34 2 9 Nahum 34 2 10 Nahum 34 2 10 Nahum 34 2 11 Nahum 34 2 11 Nahum 34 2 12 Nahum 34 2 12 Nahum 34 2 13 Nahum 34 2 13 Nahum 34 2 14 Zechariah 38 1 18 Zechariah 38 2 1 Zechariah 38 1 19 Zechariah 38 2 2 Zechariah 38 1 20 Zechariah 38 2 3 Zechariah 38 1 21 Zechariah 38 2 4 Zechariah 38 2 1 Zechariah 38 2 5 Zechariah 38 2 2 Zechariah 38 2 6 Zechariah 38 2 3 Zechariah 38 2 7 Zechariah 38 2 4 Zechariah 38 2 8 Zechariah 38 2 5 Zechariah 38 2 9 Zechariah 38 2 6 Zechariah 38 2 10 Zechariah 38 2 7 Zechariah 38 2 11 Zechariah 38 2 8 Zechariah 38 2 12 Zechariah 38 2 9 Zechariah 38 2 13 Zechariah 38 2 10 Zechariah 38 2 14 Zechariah 38 2 11 Zechariah 38 2 15 Zechariah 38 2 12 Zechariah 38 2 16 Zechariah 38 2 13 Zechariah 38 2 17 Malachi 39 4 1 Malachi 39 3 19 Malachi 39 4 2 Malachi 39 3 20 Malachi 39 4 3 Malachi 39 3 21 Malachi 39 4 4 Malachi 39 3 22 Malachi 39 4 5 Malachi 39 3 23 Malachi 39 4 6 Malachi 39 3 24 Matthew 40 17 14 Matthew 40 17 14 Matthew 40 17 14 Matthew 40 17 15 Matthew 40 20 4 Matthew 40 20 4 Matthew 40 20 4 Matthew 40 20 5 Mark 41 3 19 Mark 41 3 19 Mark 41 3 19 Mark 41 3 20 Mark 41 7 21 Mark 41 7 21 Mark 41 7 21 Mark 41 7 22 Mark 41 7 22 Mark 41 7 21 Luke 42 1 73 Luke 42 1 73 Luke 42 1 74 Luke 42 1 74 Luke 42 1 74 Luke 42 1 73 Luke 42 6 17 Luke 42 6 17 Luke 42 6 18 Luke 42 6 18 Luke 42 6 17 Luke 42 6 18 Luke 42 7 18 Luke 42 7 18 Luke 42 7 19 Luke 42 7 19 Luke 42 7 19 Luke 42 7 18 Luke 42 22 66 Luke 42 22 66 Luke 42 22 67 Luke 42 22 67 Luke 42 22 66 Luke 42 22 67 Acts 44 2 10 Acts 44 2 10 Acts 44 2 11 Acts 44 2 11 Acts 44 2 10 Acts 44 2 11 Acts 44 3 19 Acts 44 3 19 Acts 44 3 20 Acts 44 3 20 Acts 44 3 19 Acts 44 3 20 Acts 44 4 5 Acts 44 4 5 Acts 44 4 6 Acts 44 4 6 Acts 44 4 6 Acts 44 4 5 Acts 44 5 39 Acts 44 5 39 Acts 44 5 40 Acts 44 5 40 Acts 44 5 40 Acts 44 5 39 Acts 44 9 28 Acts 44 9 28 Acts 44 9 29 Acts 44 9 29 Acts 44 9 29 Acts 44 9 28 Acts 44 13 38 Acts 44 13 38 Acts 44 13 39 Acts 44 13 39 Acts 44 13 39 Acts 44 13 38 Acts 44 19 41 Acts 44 19 40 Acts 44 19 40 Acts 44 19 40 Acts 44 24 2 Acts 44 24 2 Acts 44 24 3 Acts 44 24 3 Acts 44 24 3 Acts 44 24 2 Acts 44 24 18 Acts 44 24 18 Acts 44 24 19 Acts 44 24 19 Acts 44 24 18 Acts 44 24 19 Romans 45 3 25 Romans 45 3 25 Romans 45 3 26 Romans 45 3 26 Romans 45 3 25 Romans 45 3 26 Romans 45 7 9 Romans 45 7 9 Romans 45 7 10 Romans 45 7 10 Romans 45 7 9 Romans 45 7 10 Romans 45 9 11 Romans 45 9 11 Romans 45 9 12 Romans 45 9 12 Romans 45 9 11 Romans 45 9 12 2 Corinthians 47 8 13 2 Corinthians 47 8 13 2 Corinthians 47 8 14 2 Corinthians 47 8 14 2 Corinthians 47 8 14 2 Corinthians 47 8 13 2 Corinthians 47 10 4 2 Corinthians 47 10 4 2 Corinthians 47 10 5 2 Corinthians 47 10 5 2 Corinthians 47 10 5 2 Corinthians 47 10 4 2 Corinthians 47 13 12 2 Corinthians 47 13 12 2 Corinthians 47 13 13 2 Corinthians 47 13 12 2 Corinthians 47 13 14 2 Corinthians 47 13 13 Galatians 48 2 19 Galatians 48 2 19 Galatians 48 2 20 Galatians 48 2 20 Galatians 48 2 20 Galatians 48 2 19 Ephesians 49 1 4 Ephesians 49 1 4 Ephesians 49 1 5 Ephesians 49 1 5 Ephesians 49 1 5 Ephesians 49 1 4 Ephesians 49 2 14 Ephesians 49 2 14 Ephesians 49 2 15 Ephesians 49 2 15 Ephesians 49 2 15 Ephesians 49 2 14 Ephesians 49 5 13 Ephesians 49 5 13 Ephesians 49 5 14 Ephesians 49 5 14 Ephesians 49 5 13 Ephesians 49 5 14 Philippians 50 2 7 Philippians 50 2 7 Philippians 50 2 8 Philippians 50 2 8 Philippians 50 2 8 Philippians 50 2 7 Colossians 51 1 21 Colossians 51 1 21 Colossians 51 1 22 Colossians 51 1 22 Colossians 51 1 21 Colossians 51 1 22 1 Thessalonians 52 1 2 1 Thessalonians 52 1 2 1 Thessalonians 52 1 3 1 Thessalonians 52 1 3 1 Thessalonians 52 1 3 1 Thessalonians 52 1 2 1 Thessalonians 52 2 6 1 Thessalonians 52 2 6 1 Thessalonians 52 2 6 1 Thessalonians 52 2 7 1 Thessalonians 52 2 11 1 Thessalonians 52 2 11 1 Thessalonians 52 2 12 1 Thessalonians 52 2 12 1 Thessalonians 52 2 11 1 Thessalonians 52 2 12 Hebrews 58 3 9 Hebrews 58 3 9 Hebrews 58 3 10 Hebrews 58 3 109 Hebrews 58 3 9 Hebrews 58 3 10 Hebrews 58 7 20 Hebrews 58 7 20 Hebrews 58 7 21 Hebrews 58 7 21 Hebrews 58 7 21 Hebrews 58 7 20 1 Peter 60 3 15 1 Peter 60 3 15 1 Peter 60 3 16 1 Peter 60 3 16 1 Peter 60 3 15 1 Peter 60 3 16 1 John 62 2 13 1 John 62 2 13 1 John 62 2 14 1 John 62 2 14 1 John 62 2 13 1 John 62 2 14 3 John 64 1 14 3 John 64 1 14 3 John 64 1 14 3 John 64 1 15 Revelation 66 2 27 Revelation 66 2 27 Revelation 66 2 28 Revelation 66 2 28 Revelation 66 2 27 Revelation 66 2 28 Revelation 66 13 1 Revelation 66 12 18 Revelation 66 13 1 Revelation 66 13 1 Revelation 66 17 9 Revelation 66 17 9 Revelation 66 17 10 Revelation 66 17 10 Revelation 66 17 10 Revelation 66 17 9 bibledit-gtk-4.9/templates/mapping_original.xml000664 000766 000024 00000000101 12221507125 022101 0ustar00teusstaff000000 000000 bibledit-gtk-4.9/templates/mapping_russian_canonical.xml000664 000766 000024 00003073443 12221507125 024016 0ustar00teusstaff000000 000000 Genesis 1 31 55 Genesis 1 32 1 Genesis 1 32 1 Genesis 1 32 2 Genesis 1 32 2 Genesis 1 32 3 Genesis 1 32 3 Genesis 1 32 4 Genesis 1 32 4 Genesis 1 32 5 Genesis 1 32 5 Genesis 1 32 6 Genesis 1 32 6 Genesis 1 32 7 Genesis 1 32 7 Genesis 1 32 8 Genesis 1 32 8 Genesis 1 32 9 Genesis 1 32 9 Genesis 1 32 10 Genesis 1 32 10 Genesis 1 32 11 Genesis 1 32 11 Genesis 1 32 12 Genesis 1 32 12 Genesis 1 32 13 Genesis 1 32 13 Genesis 1 32 14 Genesis 1 32 14 Genesis 1 32 15 Genesis 1 32 15 Genesis 1 32 16 Genesis 1 32 16 Genesis 1 32 17 Genesis 1 32 17 Genesis 1 32 18 Genesis 1 32 18 Genesis 1 32 19 Genesis 1 32 19 Genesis 1 32 20 Genesis 1 32 20 Genesis 1 32 21 Genesis 1 32 21 Genesis 1 32 22 Genesis 1 32 22 Genesis 1 32 23 Genesis 1 32 23 Genesis 1 32 24 Genesis 1 32 24 Genesis 1 32 25 Genesis 1 32 25 Genesis 1 32 26 Genesis 1 32 26 Genesis 1 32 27 Genesis 1 32 27 Genesis 1 32 28 Genesis 1 32 28 Genesis 1 32 29 Genesis 1 32 29 Genesis 1 32 30 Genesis 1 32 30 Genesis 1 32 31 Genesis 1 32 31 Genesis 1 32 32 Genesis 1 32 32 Genesis 1 32 33 Exodus 2 8 1 Exodus 2 7 26 Exodus 2 8 2 Exodus 2 7 27 Exodus 2 8 3 Exodus 2 7 28 Exodus 2 8 4 Exodus 2 7 29 Exodus 2 8 5 Exodus 2 8 1 Exodus 2 8 6 Exodus 2 8 2 Exodus 2 8 7 Exodus 2 8 3 Exodus 2 8 8 Exodus 2 8 4 Exodus 2 8 9 Exodus 2 8 5 Exodus 2 8 10 Exodus 2 8 6 Exodus 2 8 11 Exodus 2 8 7 Exodus 2 8 12 Exodus 2 8 8 Exodus 2 8 13 Exodus 2 8 9 Exodus 2 8 14 Exodus 2 8 10 Exodus 2 8 15 Exodus 2 8 11 Exodus 2 8 16 Exodus 2 8 12 Exodus 2 8 17 Exodus 2 8 13 Exodus 2 8 18 Exodus 2 8 14 Exodus 2 8 19 Exodus 2 8 15 Exodus 2 8 20 Exodus 2 8 16 Exodus 2 8 21 Exodus 2 8 17 Exodus 2 8 22 Exodus 2 8 18 Exodus 2 8 23 Exodus 2 8 19 Exodus 2 8 24 Exodus 2 8 20 Exodus 2 8 25 Exodus 2 8 21 Exodus 2 8 26 Exodus 2 8 22 Exodus 2 8 27 Exodus 2 8 23 Exodus 2 8 28 Exodus 2 8 24 Exodus 2 8 29 Exodus 2 8 25 Exodus 2 8 30 Exodus 2 8 26 Exodus 2 8 31 Exodus 2 8 27 Exodus 2 8 32 Exodus 2 8 28 Exodus 2 22 1 Exodus 2 21 37 Exodus 2 22 2 Exodus 2 22 1 Exodus 2 22 3 Exodus 2 22 2 Exodus 2 22 4 Exodus 2 22 3 Exodus 2 22 5 Exodus 2 22 4 Exodus 2 22 6 Exodus 2 22 5 Exodus 2 22 7 Exodus 2 22 6 Exodus 2 22 8 Exodus 2 22 7 Exodus 2 22 9 Exodus 2 22 8 Exodus 2 22 10 Exodus 2 22 9 Exodus 2 22 11 Exodus 2 22 10 Exodus 2 22 12 Exodus 2 22 11 Exodus 2 22 13 Exodus 2 22 12 Exodus 2 22 14 Exodus 2 22 13 Exodus 2 22 15 Exodus 2 22 14 Exodus 2 22 16 Exodus 2 22 15 Exodus 2 22 17 Exodus 2 22 16 Exodus 2 22 18 Exodus 2 22 17 Exodus 2 22 19 Exodus 2 22 18 Exodus 2 22 20 Exodus 2 22 19 Exodus 2 22 21 Exodus 2 22 20 Exodus 2 22 22 Exodus 2 22 21 Exodus 2 22 23 Exodus 2 22 22 Exodus 2 22 24 Exodus 2 22 23 Exodus 2 22 25 Exodus 2 22 24 Exodus 2 22 26 Exodus 2 22 25 Exodus 2 22 27 Exodus 2 22 26 Exodus 2 22 28 Exodus 2 22 27 Exodus 2 22 29 Exodus 2 22 28 Exodus 2 22 30 Exodus 2 22 29 Exodus 2 22 31 Exodus 2 22 30 Leviticus 3 6 1 Leviticus 3 5 20 Leviticus 3 6 2 Leviticus 3 5 21 Leviticus 3 6 3 Leviticus 3 5 22 Leviticus 3 6 4 Leviticus 3 5 23 Leviticus 3 6 5 Leviticus 3 5 24 Leviticus 3 6 6 Leviticus 3 5 25 Leviticus 3 6 7 Leviticus 3 5 26 Leviticus 3 6 8 Leviticus 3 6 1 Leviticus 3 6 9 Leviticus 3 6 2 Leviticus 3 6 10 Leviticus 3 6 3 Leviticus 3 6 11 Leviticus 3 6 4 Leviticus 3 6 12 Leviticus 3 6 5 Leviticus 3 6 13 Leviticus 3 6 6 Leviticus 3 6 14 Leviticus 3 6 7 Leviticus 3 6 15 Leviticus 3 6 8 Leviticus 3 6 16 Leviticus 3 6 9 Leviticus 3 6 17 Leviticus 3 6 10 Leviticus 3 6 18 Leviticus 3 6 11 Leviticus 3 6 19 Leviticus 3 6 12 Leviticus 3 6 20 Leviticus 3 6 13 Leviticus 3 6 21 Leviticus 3 6 14 Leviticus 3 6 22 Leviticus 3 6 15 Leviticus 3 6 23 Leviticus 3 6 16 Leviticus 3 6 24 Leviticus 3 6 17 Leviticus 3 6 25 Leviticus 3 6 18 Leviticus 3 6 26 Leviticus 3 6 19 Leviticus 3 6 27 Leviticus 3 6 20 Leviticus 3 6 28 Leviticus 3 6 21 Leviticus 3 6 29 Leviticus 3 6 22 Leviticus 3 6 30 Leviticus 3 6 23 Leviticus 3 14 55 Leviticus 3 14 55 Leviticus 3 14 55 Leviticus 3 14 56 Leviticus 3 14 56 Leviticus 3 14 57 Numbers 4 16 36 Numbers 4 17 1 Numbers 4 16 37 Numbers 4 17 2 Numbers 4 16 38 Numbers 4 17 3 Numbers 4 16 39 Numbers 4 17 4 Numbers 4 16 40 Numbers 4 17 5 Numbers 4 16 41 Numbers 4 17 6 Numbers 4 16 42 Numbers 4 17 7 Numbers 4 16 43 Numbers 4 17 8 Numbers 4 16 44 Numbers 4 17 9 Numbers 4 16 45 Numbers 4 17 10 Numbers 4 16 46 Numbers 4 17 11 Numbers 4 16 47 Numbers 4 17 12 Numbers 4 16 48 Numbers 4 17 13 Numbers 4 16 49 Numbers 4 17 14 Numbers 4 16 50 Numbers 4 17 15 Numbers 4 17 1 Numbers 4 17 16 Numbers 4 17 2 Numbers 4 17 17 Numbers 4 17 3 Numbers 4 17 18 Numbers 4 17 4 Numbers 4 17 19 Numbers 4 17 5 Numbers 4 17 20 Numbers 4 17 6 Numbers 4 17 21 Numbers 4 17 7 Numbers 4 17 22 Numbers 4 17 8 Numbers 4 17 23 Numbers 4 17 9 Numbers 4 17 24 Numbers 4 17 10 Numbers 4 17 25 Numbers 4 17 11 Numbers 4 17 26 Numbers 4 17 12 Numbers 4 17 27 Numbers 4 17 13 Numbers 4 17 28 Numbers 4 26 1 Numbers 4 25 19 Numbers 4 26 1 Numbers 4 26 1 Deuteronomy 5 12 32 Deuteronomy 5 13 1 Deuteronomy 5 13 1 Deuteronomy 5 13 2 Deuteronomy 5 13 2 Deuteronomy 5 13 3 Deuteronomy 5 13 3 Deuteronomy 5 13 4 Deuteronomy 5 13 4 Deuteronomy 5 13 5 Deuteronomy 5 13 5 Deuteronomy 5 13 6 Deuteronomy 5 13 6 Deuteronomy 5 13 7 Deuteronomy 5 13 7 Deuteronomy 5 13 8 Deuteronomy 5 13 8 Deuteronomy 5 13 9 Deuteronomy 5 13 9 Deuteronomy 5 13 10 Deuteronomy 5 13 10 Deuteronomy 5 13 11 Deuteronomy 5 13 11 Deuteronomy 5 13 12 Deuteronomy 5 13 12 Deuteronomy 5 13 13 Deuteronomy 5 13 13 Deuteronomy 5 13 14 Deuteronomy 5 13 14 Deuteronomy 5 13 15 Deuteronomy 5 13 15 Deuteronomy 5 13 16 Deuteronomy 5 13 16 Deuteronomy 5 13 17 Deuteronomy 5 13 17 Deuteronomy 5 13 18 Deuteronomy 5 13 18 Deuteronomy 5 13 19 Deuteronomy 5 22 30 Deuteronomy 5 23 1 Deuteronomy 5 23 1 Deuteronomy 5 23 2 Deuteronomy 5 23 2 Deuteronomy 5 23 3 Deuteronomy 5 23 3 Deuteronomy 5 23 4 Deuteronomy 5 23 4 Deuteronomy 5 23 5 Deuteronomy 5 23 5 Deuteronomy 5 23 6 Deuteronomy 5 23 6 Deuteronomy 5 23 7 Deuteronomy 5 23 7 Deuteronomy 5 23 8 Deuteronomy 5 23 8 Deuteronomy 5 23 9 Deuteronomy 5 23 9 Deuteronomy 5 23 10 Deuteronomy 5 23 10 Deuteronomy 5 23 11 Deuteronomy 5 23 11 Deuteronomy 5 23 12 Deuteronomy 5 23 12 Deuteronomy 5 23 13 Deuteronomy 5 23 13 Deuteronomy 5 23 14 Deuteronomy 5 23 14 Deuteronomy 5 23 15 Deuteronomy 5 23 15 Deuteronomy 5 23 16 Deuteronomy 5 23 16 Deuteronomy 5 23 17 Deuteronomy 5 23 17 Deuteronomy 5 23 18 Deuteronomy 5 23 18 Deuteronomy 5 23 19 Deuteronomy 5 23 19 Deuteronomy 5 23 20 Deuteronomy 5 23 20 Deuteronomy 5 23 21 Deuteronomy 5 23 21 Deuteronomy 5 23 22 Deuteronomy 5 23 22 Deuteronomy 5 23 23 Deuteronomy 5 23 23 Deuteronomy 5 23 24 Deuteronomy 5 23 24 Deuteronomy 5 23 25 Deuteronomy 5 23 25 Deuteronomy 5 23 26 Deuteronomy 5 29 1 Deuteronomy 5 28 69 Deuteronomy 5 29 2 Deuteronomy 5 29 1 Deuteronomy 5 29 3 Deuteronomy 5 29 2 Deuteronomy 5 29 4 Deuteronomy 5 29 3 Deuteronomy 5 29 5 Deuteronomy 5 29 4 Deuteronomy 5 29 6 Deuteronomy 5 29 5 Deuteronomy 5 29 7 Deuteronomy 5 29 6 Deuteronomy 5 29 8 Deuteronomy 5 29 7 Deuteronomy 5 29 9 Deuteronomy 5 29 8 Deuteronomy 5 29 10 Deuteronomy 5 29 9 Deuteronomy 5 29 11 Deuteronomy 5 29 10 Deuteronomy 5 29 12 Deuteronomy 5 29 11 Deuteronomy 5 29 13 Deuteronomy 5 29 12 Deuteronomy 5 29 14 Deuteronomy 5 29 13 Deuteronomy 5 29 15 Deuteronomy 5 29 14 Deuteronomy 5 29 16 Deuteronomy 5 29 15 Deuteronomy 5 29 17 Deuteronomy 5 29 16 Deuteronomy 5 29 18 Deuteronomy 5 29 17 Deuteronomy 5 29 19 Deuteronomy 5 29 18 Deuteronomy 5 29 20 Deuteronomy 5 29 19 Deuteronomy 5 29 21 Deuteronomy 5 29 20 Deuteronomy 5 29 22 Deuteronomy 5 29 21 Deuteronomy 5 29 23 Deuteronomy 5 29 22 Deuteronomy 5 29 24 Deuteronomy 5 29 23 Deuteronomy 5 29 25 Deuteronomy 5 29 24 Deuteronomy 5 29 26 Deuteronomy 5 29 25 Deuteronomy 5 29 27 Deuteronomy 5 29 26 Deuteronomy 5 29 28 Deuteronomy 5 29 27 Deuteronomy 5 29 29 Deuteronomy 5 29 28 Joshua 6 5 16 Joshua 6 6 1 Joshua 6 6 1 Joshua 6 6 2 Joshua 6 6 2 Joshua 6 6 3 Joshua 6 6 3 Joshua 6 6 4 Joshua 6 6 4 Joshua 6 6 5 Joshua 6 6 5 Joshua 6 6 6 Joshua 6 6 6 Joshua 6 6 7 Joshua 6 6 7 Joshua 6 6 8 Joshua 6 6 8 Joshua 6 6 9 Joshua 6 6 9 Joshua 6 6 10 Joshua 6 6 10 Joshua 6 6 11 Joshua 6 6 11 Joshua 6 6 12 Joshua 6 6 12 Joshua 6 6 13 Joshua 6 6 13 Joshua 6 6 14 Joshua 6 6 14 Joshua 6 6 15 Joshua 6 6 15 Joshua 6 6 16 Joshua 6 6 16 Joshua 6 6 17 Joshua 6 6 17 Joshua 6 6 18 Joshua 6 6 18 Joshua 6 6 19 Joshua 6 6 19 Joshua 6 6 20 Joshua 6 6 20 Joshua 6 6 21 Joshua 6 6 21 Joshua 6 6 22 Joshua 6 6 22 Joshua 6 6 23 Joshua 6 6 23 Joshua 6 6 24 Joshua 6 6 24 Joshua 6 6 25 Joshua 6 6 25 Joshua 6 6 26 Joshua 6 6 26 Joshua 6 6 27 1 Samuel 9 20 43 1 Samuel 9 21 1 1 Samuel 9 21 1 1 Samuel 9 21 2 1 Samuel 9 21 2 1 Samuel 9 21 3 1 Samuel 9 21 3 1 Samuel 9 21 4 1 Samuel 9 21 4 1 Samuel 9 21 5 1 Samuel 9 21 5 1 Samuel 9 21 6 1 Samuel 9 21 6 1 Samuel 9 21 7 1 Samuel 9 21 7 1 Samuel 9 21 8 1 Samuel 9 21 8 1 Samuel 9 21 9 1 Samuel 9 21 9 1 Samuel 9 21 10 1 Samuel 9 21 10 1 Samuel 9 21 11 1 Samuel 9 21 11 1 Samuel 9 21 12 1 Samuel 9 21 12 1 Samuel 9 21 13 1 Samuel 9 21 13 1 Samuel 9 21 14 1 Samuel 9 21 14 1 Samuel 9 21 15 1 Samuel 9 21 15 1 Samuel 9 21 16 2 Samuel 10 18 33 2 Samuel 10 19 1 2 Samuel 10 19 1 2 Samuel 10 19 2 2 Samuel 10 19 2 2 Samuel 10 19 3 2 Samuel 10 19 3 2 Samuel 10 19 4 2 Samuel 10 19 4 2 Samuel 10 19 5 2 Samuel 10 19 5 2 Samuel 10 19 6 2 Samuel 10 19 6 2 Samuel 10 19 7 2 Samuel 10 19 7 2 Samuel 10 19 8 2 Samuel 10 19 8 2 Samuel 10 19 9 2 Samuel 10 19 9 2 Samuel 10 19 10 2 Samuel 10 19 10 2 Samuel 10 19 11 2 Samuel 10 19 11 2 Samuel 10 19 12 2 Samuel 10 19 12 2 Samuel 10 19 13 2 Samuel 10 19 13 2 Samuel 10 19 14 2 Samuel 10 19 14 2 Samuel 10 19 15 2 Samuel 10 19 15 2 Samuel 10 19 16 2 Samuel 10 19 16 2 Samuel 10 19 17 2 Samuel 10 19 17 2 Samuel 10 19 18 2 Samuel 10 19 18 2 Samuel 10 19 19 2 Samuel 10 19 19 2 Samuel 10 19 20 2 Samuel 10 19 20 2 Samuel 10 19 21 2 Samuel 10 19 21 2 Samuel 10 19 22 2 Samuel 10 19 22 2 Samuel 10 19 23 2 Samuel 10 19 23 2 Samuel 10 19 24 2 Samuel 10 19 24 2 Samuel 10 19 25 2 Samuel 10 19 25 2 Samuel 10 19 26 2 Samuel 10 19 26 2 Samuel 10 19 27 2 Samuel 10 19 27 2 Samuel 10 19 28 2 Samuel 10 19 28 2 Samuel 10 19 29 2 Samuel 10 19 29 2 Samuel 10 19 30 2 Samuel 10 19 30 2 Samuel 10 19 31 2 Samuel 10 19 31 2 Samuel 10 19 32 2 Samuel 10 19 32 2 Samuel 10 19 33 2 Samuel 10 19 33 2 Samuel 10 19 34 2 Samuel 10 19 34 2 Samuel 10 19 35 2 Samuel 10 19 35 2 Samuel 10 19 36 2 Samuel 10 19 36 2 Samuel 10 19 37 2 Samuel 10 19 37 2 Samuel 10 19 38 2 Samuel 10 19 38 2 Samuel 10 19 39 2 Samuel 10 19 39 2 Samuel 10 19 40 2 Samuel 10 19 40 2 Samuel 10 19 41 2 Samuel 10 19 41 2 Samuel 10 19 42 2 Samuel 10 19 42 2 Samuel 10 19 43 2 Samuel 10 19 43 2 Samuel 10 19 44 1 Kings 11 4 21 1 Kings 11 5 1 1 Kings 11 4 22 1 Kings 11 5 2 1 Kings 11 4 23 1 Kings 11 5 3 1 Kings 11 4 24 1 Kings 11 5 4 1 Kings 11 4 25 1 Kings 11 5 5 1 Kings 11 4 26 1 Kings 11 5 6 1 Kings 11 4 27 1 Kings 11 5 7 1 Kings 11 4 28 1 Kings 11 5 8 1 Kings 11 4 29 1 Kings 11 5 9 1 Kings 11 4 30 1 Kings 11 5 10 1 Kings 11 4 31 1 Kings 11 5 11 1 Kings 11 4 32 1 Kings 11 5 12 1 Kings 11 4 33 1 Kings 11 5 13 1 Kings 11 4 34 1 Kings 11 5 14 1 Kings 11 5 1 1 Kings 11 5 15 1 Kings 11 5 2 1 Kings 11 5 16 1 Kings 11 5 3 1 Kings 11 5 17 1 Kings 11 5 4 1 Kings 11 5 18 1 Kings 11 5 5 1 Kings 11 5 19 1 Kings 11 5 6 1 Kings 11 5 20 1 Kings 11 5 7 1 Kings 11 5 21 1 Kings 11 5 8 1 Kings 11 5 22 1 Kings 11 5 9 1 Kings 11 5 23 1 Kings 11 5 10 1 Kings 11 5 24 1 Kings 11 5 11 1 Kings 11 5 25 1 Kings 11 5 12 1 Kings 11 5 26 1 Kings 11 5 13 1 Kings 11 5 27 1 Kings 11 5 14 1 Kings 11 5 28 1 Kings 11 5 15 1 Kings 11 5 29 1 Kings 11 5 16 1 Kings 11 5 30 1 Kings 11 5 17 1 Kings 11 5 31 1 Kings 11 5 18 1 Kings 11 5 32 1 Kings 11 22 43 1 Kings 11 22 43 1 Kings 11 22 43 1 Kings 11 22 44 1 Kings 11 22 44 1 Kings 11 22 45 1 Kings 11 22 45 1 Kings 11 22 46 1 Kings 11 22 46 1 Kings 11 22 47 1 Kings 11 22 47 1 Kings 11 22 48 1 Kings 11 22 48 1 Kings 11 22 49 1 Kings 11 22 49 1 Kings 11 22 50 1 Kings 11 22 50 1 Kings 11 22 51 1 Kings 11 22 51 1 Kings 11 22 52 1 Kings 11 22 52 1 Kings 11 22 53 1 Kings 11 22 53 1 Kings 11 22 54 2 Kings 12 11 21 2 Kings 12 12 1 2 Kings 12 12 1 2 Kings 12 12 2 2 Kings 12 12 2 2 Kings 12 12 3 2 Kings 12 12 3 2 Kings 12 12 4 2 Kings 12 12 4 2 Kings 12 12 5 2 Kings 12 12 5 2 Kings 12 12 6 2 Kings 12 12 6 2 Kings 12 12 7 2 Kings 12 12 7 2 Kings 12 12 8 2 Kings 12 12 8 2 Kings 12 12 9 2 Kings 12 12 9 2 Kings 12 12 10 2 Kings 12 12 10 2 Kings 12 12 11 2 Kings 12 12 11 2 Kings 12 12 12 2 Kings 12 12 12 2 Kings 12 12 13 2 Kings 12 12 13 2 Kings 12 12 14 2 Kings 12 12 14 2 Kings 12 12 15 2 Kings 12 12 15 2 Kings 12 12 16 2 Kings 12 12 16 2 Kings 12 12 17 2 Kings 12 12 17 2 Kings 12 12 18 2 Kings 12 12 18 2 Kings 12 12 19 2 Kings 12 12 19 2 Kings 12 12 20 2 Kings 12 12 20 2 Kings 12 12 21 2 Kings 12 12 21 2 Kings 12 12 22 1 Chronicles 13 6 1 1 Chronicles 13 5 27 1 Chronicles 13 6 2 1 Chronicles 13 5 28 1 Chronicles 13 6 3 1 Chronicles 13 5 29 1 Chronicles 13 6 4 1 Chronicles 13 5 30 1 Chronicles 13 6 5 1 Chronicles 13 5 31 1 Chronicles 13 6 6 1 Chronicles 13 5 32 1 Chronicles 13 6 7 1 Chronicles 13 5 33 1 Chronicles 13 6 8 1 Chronicles 13 5 34 1 Chronicles 13 6 9 1 Chronicles 13 5 35 1 Chronicles 13 6 10 1 Chronicles 13 5 36 1 Chronicles 13 6 11 1 Chronicles 13 5 37 1 Chronicles 13 6 12 1 Chronicles 13 5 38 1 Chronicles 13 6 13 1 Chronicles 13 5 39 1 Chronicles 13 6 14 1 Chronicles 13 5 40 1 Chronicles 13 6 15 1 Chronicles 13 5 41 1 Chronicles 13 6 16 1 Chronicles 13 6 1 1 Chronicles 13 6 17 1 Chronicles 13 6 2 1 Chronicles 13 6 18 1 Chronicles 13 6 3 1 Chronicles 13 6 19 1 Chronicles 13 6 4 1 Chronicles 13 6 20 1 Chronicles 13 6 5 1 Chronicles 13 6 21 1 Chronicles 13 6 6 1 Chronicles 13 6 22 1 Chronicles 13 6 7 1 Chronicles 13 6 23 1 Chronicles 13 6 8 1 Chronicles 13 6 24 1 Chronicles 13 6 9 1 Chronicles 13 6 25 1 Chronicles 13 6 10 1 Chronicles 13 6 26 1 Chronicles 13 6 11 1 Chronicles 13 6 27 1 Chronicles 13 6 12 1 Chronicles 13 6 28 1 Chronicles 13 6 13 1 Chronicles 13 6 29 1 Chronicles 13 6 14 1 Chronicles 13 6 30 1 Chronicles 13 6 15 1 Chronicles 13 6 31 1 Chronicles 13 6 16 1 Chronicles 13 6 32 1 Chronicles 13 6 17 1 Chronicles 13 6 33 1 Chronicles 13 6 18 1 Chronicles 13 6 34 1 Chronicles 13 6 19 1 Chronicles 13 6 35 1 Chronicles 13 6 20 1 Chronicles 13 6 36 1 Chronicles 13 6 21 1 Chronicles 13 6 37 1 Chronicles 13 6 22 1 Chronicles 13 6 38 1 Chronicles 13 6 23 1 Chronicles 13 6 39 1 Chronicles 13 6 24 1 Chronicles 13 6 40 1 Chronicles 13 6 25 1 Chronicles 13 6 41 1 Chronicles 13 6 26 1 Chronicles 13 6 42 1 Chronicles 13 6 27 1 Chronicles 13 6 43 1 Chronicles 13 6 28 1 Chronicles 13 6 44 1 Chronicles 13 6 29 1 Chronicles 13 6 45 1 Chronicles 13 6 30 1 Chronicles 13 6 46 1 Chronicles 13 6 31 1 Chronicles 13 6 47 1 Chronicles 13 6 32 1 Chronicles 13 6 48 1 Chronicles 13 6 33 1 Chronicles 13 6 49 1 Chronicles 13 6 34 1 Chronicles 13 6 50 1 Chronicles 13 6 35 1 Chronicles 13 6 51 1 Chronicles 13 6 36 1 Chronicles 13 6 52 1 Chronicles 13 6 37 1 Chronicles 13 6 53 1 Chronicles 13 6 38 1 Chronicles 13 6 54 1 Chronicles 13 6 39 1 Chronicles 13 6 55 1 Chronicles 13 6 40 1 Chronicles 13 6 56 1 Chronicles 13 6 41 1 Chronicles 13 6 57 1 Chronicles 13 6 42 1 Chronicles 13 6 58 1 Chronicles 13 6 43 1 Chronicles 13 6 59 1 Chronicles 13 6 44 1 Chronicles 13 6 60 1 Chronicles 13 6 45 1 Chronicles 13 6 61 1 Chronicles 13 6 46 1 Chronicles 13 6 62 1 Chronicles 13 6 47 1 Chronicles 13 6 63 1 Chronicles 13 6 48 1 Chronicles 13 6 64 1 Chronicles 13 6 49 1 Chronicles 13 6 65 1 Chronicles 13 6 50 1 Chronicles 13 6 66 1 Chronicles 13 6 51 1 Chronicles 13 6 67 1 Chronicles 13 6 52 1 Chronicles 13 6 68 1 Chronicles 13 6 53 1 Chronicles 13 6 69 1 Chronicles 13 6 54 1 Chronicles 13 6 70 1 Chronicles 13 6 55 1 Chronicles 13 6 71 1 Chronicles 13 6 56 1 Chronicles 13 6 72 1 Chronicles 13 6 57 1 Chronicles 13 6 73 1 Chronicles 13 6 58 1 Chronicles 13 6 74 1 Chronicles 13 6 59 1 Chronicles 13 6 75 1 Chronicles 13 6 60 1 Chronicles 13 6 76 1 Chronicles 13 6 61 1 Chronicles 13 6 77 1 Chronicles 13 6 62 1 Chronicles 13 6 78 1 Chronicles 13 6 63 1 Chronicles 13 6 79 1 Chronicles 13 6 64 1 Chronicles 13 6 80 1 Chronicles 13 6 65 1 Chronicles 13 6 81 1 Chronicles 13 6 66 1 Chronicles 13 12 4 1 Chronicles 13 12 4 1 Chronicles 13 12 4 1 Chronicles 13 12 5 1 Chronicles 13 12 5 1 Chronicles 13 12 6 1 Chronicles 13 12 6 1 Chronicles 13 12 7 1 Chronicles 13 12 7 1 Chronicles 13 12 8 1 Chronicles 13 12 8 1 Chronicles 13 12 9 1 Chronicles 13 12 9 1 Chronicles 13 12 10 1 Chronicles 13 12 10 1 Chronicles 13 12 11 1 Chronicles 13 12 11 1 Chronicles 13 12 12 1 Chronicles 13 12 12 1 Chronicles 13 12 13 1 Chronicles 13 12 13 1 Chronicles 13 12 14 1 Chronicles 13 12 14 1 Chronicles 13 12 15 1 Chronicles 13 12 15 1 Chronicles 13 12 16 1 Chronicles 13 12 16 1 Chronicles 13 12 17 1 Chronicles 13 12 17 1 Chronicles 13 12 18 1 Chronicles 13 12 18 1 Chronicles 13 12 19 1 Chronicles 13 12 19 1 Chronicles 13 12 20 1 Chronicles 13 12 20 1 Chronicles 13 12 21 1 Chronicles 13 12 21 1 Chronicles 13 12 22 1 Chronicles 13 12 22 1 Chronicles 13 12 23 1 Chronicles 13 12 23 1 Chronicles 13 12 24 1 Chronicles 13 12 24 1 Chronicles 13 12 25 1 Chronicles 13 12 25 1 Chronicles 13 12 26 1 Chronicles 13 12 26 1 Chronicles 13 12 27 1 Chronicles 13 12 27 1 Chronicles 13 12 28 1 Chronicles 13 12 28 1 Chronicles 13 12 29 1 Chronicles 13 12 29 1 Chronicles 13 12 30 1 Chronicles 13 12 30 1 Chronicles 13 12 31 1 Chronicles 13 12 31 1 Chronicles 13 12 32 1 Chronicles 13 12 32 1 Chronicles 13 12 33 1 Chronicles 13 12 33 1 Chronicles 13 12 34 1 Chronicles 13 12 34 1 Chronicles 13 12 35 1 Chronicles 13 12 35 1 Chronicles 13 12 36 1 Chronicles 13 12 36 1 Chronicles 13 12 37 1 Chronicles 13 12 37 1 Chronicles 13 12 38 1 Chronicles 13 12 38 1 Chronicles 13 12 39 1 Chronicles 13 12 39 1 Chronicles 13 12 40 1 Chronicles 13 12 40 1 Chronicles 13 12 41 2 Chronicles 14 2 1 2 Chronicles 14 1 18 2 Chronicles 14 2 2 2 Chronicles 14 2 1 2 Chronicles 14 2 3 2 Chronicles 14 2 2 2 Chronicles 14 2 4 2 Chronicles 14 2 3 2 Chronicles 14 2 5 2 Chronicles 14 2 4 2 Chronicles 14 2 6 2 Chronicles 14 2 5 2 Chronicles 14 2 7 2 Chronicles 14 2 6 2 Chronicles 14 2 8 2 Chronicles 14 2 7 2 Chronicles 14 2 9 2 Chronicles 14 2 8 2 Chronicles 14 2 10 2 Chronicles 14 2 9 2 Chronicles 14 2 11 2 Chronicles 14 2 10 2 Chronicles 14 2 12 2 Chronicles 14 2 11 2 Chronicles 14 2 13 2 Chronicles 14 2 12 2 Chronicles 14 2 14 2 Chronicles 14 2 13 2 Chronicles 14 2 15 2 Chronicles 14 2 14 2 Chronicles 14 2 16 2 Chronicles 14 2 15 2 Chronicles 14 2 17 2 Chronicles 14 2 16 2 Chronicles 14 2 18 2 Chronicles 14 2 17 2 Chronicles 14 14 1 2 Chronicles 14 13 23 2 Chronicles 14 14 2 2 Chronicles 14 14 1 2 Chronicles 14 14 3 2 Chronicles 14 14 2 2 Chronicles 14 14 4 2 Chronicles 14 14 3 2 Chronicles 14 14 5 2 Chronicles 14 14 4 2 Chronicles 14 14 6 2 Chronicles 14 14 5 2 Chronicles 14 14 7 2 Chronicles 14 14 6 2 Chronicles 14 14 8 2 Chronicles 14 14 7 2 Chronicles 14 14 9 2 Chronicles 14 14 8 2 Chronicles 14 14 10 2 Chronicles 14 14 9 2 Chronicles 14 14 11 2 Chronicles 14 14 10 2 Chronicles 14 14 12 2 Chronicles 14 14 11 2 Chronicles 14 14 13 2 Chronicles 14 14 12 2 Chronicles 14 14 14 2 Chronicles 14 14 13 2 Chronicles 14 14 15 2 Chronicles 14 14 14 Nehemiah 16 4 1 Nehemiah 16 3 33 Nehemiah 16 4 2 Nehemiah 16 3 34 Nehemiah 16 4 3 Nehemiah 16 3 35 Nehemiah 16 4 4 Nehemiah 16 3 36 Nehemiah 16 4 5 Nehemiah 16 3 37 Nehemiah 16 4 6 Nehemiah 16 3 38 Nehemiah 16 4 7 Nehemiah 16 4 1 Nehemiah 16 4 8 Nehemiah 16 4 2 Nehemiah 16 4 9 Nehemiah 16 4 3 Nehemiah 16 4 10 Nehemiah 16 4 4 Nehemiah 16 4 11 Nehemiah 16 4 5 Nehemiah 16 4 12 Nehemiah 16 4 6 Nehemiah 16 4 13 Nehemiah 16 4 7 Nehemiah 16 4 14 Nehemiah 16 4 8 Nehemiah 16 4 15 Nehemiah 16 4 9 Nehemiah 16 4 16 Nehemiah 16 4 10 Nehemiah 16 4 17 Nehemiah 16 4 11 Nehemiah 16 4 18 Nehemiah 16 4 12 Nehemiah 16 4 19 Nehemiah 16 4 13 Nehemiah 16 4 20 Nehemiah 16 4 14 Nehemiah 16 4 21 Nehemiah 16 4 15 Nehemiah 16 4 22 Nehemiah 16 4 16 Nehemiah 16 4 23 Nehemiah 16 4 17 Nehemiah 16 7 67 Nehemiah 16 7 67 Nehemiah 16 7 68 Nehemiah 16 7 67 Nehemiah 16 7 69 Nehemiah 16 7 68 Nehemiah 16 7 70 Nehemiah 16 7 69 Nehemiah 16 7 71 Nehemiah 16 7 70 Nehemiah 16 7 72 Nehemiah 16 7 71 Nehemiah 16 7 73 Nehemiah 16 7 72 Nehemiah 16 9 38 Nehemiah 16 10 1 Nehemiah 16 10 1 Nehemiah 16 10 2 Nehemiah 16 10 2 Nehemiah 16 10 3 Nehemiah 16 10 3 Nehemiah 16 10 4 Nehemiah 16 10 4 Nehemiah 16 10 5 Nehemiah 16 10 5 Nehemiah 16 10 6 Nehemiah 16 10 6 Nehemiah 16 10 7 Nehemiah 16 10 7 Nehemiah 16 10 8 Nehemiah 16 10 8 Nehemiah 16 10 9 Nehemiah 16 10 9 Nehemiah 16 10 10 Nehemiah 16 10 10 Nehemiah 16 10 11 Nehemiah 16 10 11 Nehemiah 16 10 12 Nehemiah 16 10 12 Nehemiah 16 10 13 Nehemiah 16 10 13 Nehemiah 16 10 14 Nehemiah 16 10 14 Nehemiah 16 10 15 Nehemiah 16 10 15 Nehemiah 16 10 16 Nehemiah 16 10 16 Nehemiah 16 10 17 Nehemiah 16 10 17 Nehemiah 16 10 18 Nehemiah 16 10 18 Nehemiah 16 10 19 Nehemiah 16 10 19 Nehemiah 16 10 20 Nehemiah 16 10 20 Nehemiah 16 10 21 Nehemiah 16 10 21 Nehemiah 16 10 22 Nehemiah 16 10 22 Nehemiah 16 10 23 Nehemiah 16 10 23 Nehemiah 16 10 24 Nehemiah 16 10 24 Nehemiah 16 10 25 Nehemiah 16 10 25 Nehemiah 16 10 26 Nehemiah 16 10 26 Nehemiah 16 10 27 Nehemiah 16 10 27 Nehemiah 16 10 28 Nehemiah 16 10 28 Nehemiah 16 10 29 Nehemiah 16 10 29 Nehemiah 16 10 30 Nehemiah 16 10 30 Nehemiah 16 10 31 Nehemiah 16 10 31 Nehemiah 16 10 32 Nehemiah 16 10 32 Nehemiah 16 10 33 Nehemiah 16 10 33 Nehemiah 16 10 34 Nehemiah 16 10 34 Nehemiah 16 10 35 Nehemiah 16 10 35 Nehemiah 16 10 36 Nehemiah 16 10 36 Nehemiah 16 10 37 Nehemiah 16 10 37 Nehemiah 16 10 38 Nehemiah 16 10 38 Nehemiah 16 10 39 Nehemiah 16 10 39 Nehemiah 16 10 40 Job 18 39 31 Job 18 40 1 Job 18 39 32 Job 18 40 2 Job 18 39 33 Job 18 40 3 Job 18 39 34 Job 18 40 4 Job 18 39 35 Job 18 40 5 Job 18 40 1 Job 18 40 6 Job 18 40 2 Job 18 40 7 Job 18 40 3 Job 18 40 8 Job 18 40 4 Job 18 40 9 Job 18 40 5 Job 18 40 10 Job 18 40 6 Job 18 40 11 Job 18 40 7 Job 18 40 12 Job 18 40 8 Job 18 40 13 Job 18 40 9 Job 18 40 14 Job 18 40 10 Job 18 40 15 Job 18 40 11 Job 18 40 16 Job 18 40 12 Job 18 40 17 Job 18 40 13 Job 18 40 18 Job 18 40 14 Job 18 40 19 Job 18 40 15 Job 18 40 20 Job 18 40 16 Job 18 40 21 Job 18 40 17 Job 18 40 22 Job 18 40 18 Job 18 40 23 Job 18 40 19 Job 18 40 24 Job 18 40 20 Job 18 40 25 Job 18 40 21 Job 18 40 26 Job 18 40 22 Job 18 40 27 Job 18 40 23 Job 18 40 28 Job 18 40 24 Job 18 40 29 Job 18 40 25 Job 18 40 30 Job 18 40 26 Job 18 40 31 Job 18 40 27 Job 18 40 32 Psalms 19 9 22 Psalms 19 10 1 Psalms 19 9 23 Psalms 19 10 2 Psalms 19 9 24 Psalms 19 10 3 Psalms 19 9 25 Psalms 19 10 4 Psalms 19 9 26 Psalms 19 10 5 Psalms 19 9 27 Psalms 19 10 6 Psalms 19 9 28 Psalms 19 10 7 Psalms 19 9 29 Psalms 19 10 8 Psalms 19 9 30 Psalms 19 10 9 Psalms 19 9 31 Psalms 19 10 10 Psalms 19 9 32 Psalms 19 10 11 Psalms 19 9 33 Psalms 19 10 12 Psalms 19 9 34 Psalms 19 10 13 Psalms 19 9 35 Psalms 19 10 14 Psalms 19 9 36 Psalms 19 10 15 Psalms 19 9 37 Psalms 19 10 16 Psalms 19 9 38 Psalms 19 10 17 Psalms 19 9 39 Psalms 19 10 18 Psalms 19 10 1 Psalms 19 11 1 Psalms 19 10 2 Psalms 19 11 2 Psalms 19 10 3 Psalms 19 11 3 Psalms 19 10 4 Psalms 19 11 4 Psalms 19 10 5 Psalms 19 11 5 Psalms 19 10 6 Psalms 19 11 6 Psalms 19 10 7 Psalms 19 11 7 Psalms 19 11 1 Psalms 19 12 1 Psalms 19 11 2 Psalms 19 12 2 Psalms 19 11 3 Psalms 19 12 3 Psalms 19 11 4 Psalms 19 12 4 Psalms 19 11 5 Psalms 19 12 5 Psalms 19 11 6 Psalms 19 12 6 Psalms 19 11 7 Psalms 19 12 7 Psalms 19 11 8 Psalms 19 12 8 Psalms 19 11 9 Psalms 19 12 9 Psalms 19 12 1 Psalms 19 13 1 Psalms 19 12 2 Psalms 19 13 2 Psalms 19 12 3 Psalms 19 13 3 Psalms 19 12 4 Psalms 19 13 4 Psalms 19 12 5 Psalms 19 13 5 Psalms 19 12 6 Psalms 19 13 6 Psalms 19 13 1 Psalms 19 14 1 Psalms 19 13 2 Psalms 19 14 2 Psalms 19 13 3 Psalms 19 14 3 Psalms 19 13 4 Psalms 19 14 4 Psalms 19 13 5 Psalms 19 14 5 Psalms 19 13 6 Psalms 19 14 6 Psalms 19 13 7 Psalms 19 14 7 Psalms 19 14 1 Psalms 19 15 1 Psalms 19 14 2 Psalms 19 15 2 Psalms 19 14 3 Psalms 19 15 3 Psalms 19 14 4 Psalms 19 15 4 Psalms 19 14 5 Psalms 19 15 5 Psalms 19 15 1 Psalms 19 16 1 Psalms 19 15 2 Psalms 19 16 2 Psalms 19 15 3 Psalms 19 16 3 Psalms 19 15 4 Psalms 19 16 4 Psalms 19 15 5 Psalms 19 16 5 Psalms 19 15 6 Psalms 19 16 6 Psalms 19 15 7 Psalms 19 16 7 Psalms 19 15 8 Psalms 19 16 8 Psalms 19 15 9 Psalms 19 16 9 Psalms 19 15 10 Psalms 19 16 10 Psalms 19 15 11 Psalms 19 16 11 Psalms 19 16 1 Psalms 19 17 1 Psalms 19 16 2 Psalms 19 17 2 Psalms 19 16 3 Psalms 19 17 3 Psalms 19 16 4 Psalms 19 17 4 Psalms 19 16 5 Psalms 19 17 5 Psalms 19 16 6 Psalms 19 17 6 Psalms 19 16 7 Psalms 19 17 7 Psalms 19 16 8 Psalms 19 17 8 Psalms 19 16 9 Psalms 19 17 9 Psalms 19 16 10 Psalms 19 17 10 Psalms 19 16 11 Psalms 19 17 11 Psalms 19 16 12 Psalms 19 17 12 Psalms 19 16 13 Psalms 19 17 13 Psalms 19 16 14 Psalms 19 17 14 Psalms 19 16 15 Psalms 19 17 15 Psalms 19 17 1 Psalms 19 18 2 Psalms 19 17 2 Psalms 19 18 3 Psalms 19 17 3 Psalms 19 18 4 Psalms 19 17 4 Psalms 19 18 5 Psalms 19 17 5 Psalms 19 18 6 Psalms 19 17 6 Psalms 19 18 7 Psalms 19 17 7 Psalms 19 18 8 Psalms 19 17 8 Psalms 19 18 9 Psalms 19 17 9 Psalms 19 18 10 Psalms 19 17 10 Psalms 19 18 11 Psalms 19 17 11 Psalms 19 18 12 Psalms 19 17 12 Psalms 19 18 13 Psalms 19 17 13 Psalms 19 18 14 Psalms 19 17 14 Psalms 19 18 15 Psalms 19 17 15 Psalms 19 18 16 Psalms 19 17 16 Psalms 19 18 17 Psalms 19 17 17 Psalms 19 18 18 Psalms 19 17 18 Psalms 19 18 19 Psalms 19 17 19 Psalms 19 18 20 Psalms 19 17 20 Psalms 19 18 21 Psalms 19 17 21 Psalms 19 18 22 Psalms 19 17 22 Psalms 19 18 23 Psalms 19 17 23 Psalms 19 18 24 Psalms 19 17 24 Psalms 19 18 25 Psalms 19 17 25 Psalms 19 18 26 Psalms 19 17 26 Psalms 19 18 27 Psalms 19 17 27 Psalms 19 18 28 Psalms 19 17 28 Psalms 19 18 29 Psalms 19 17 29 Psalms 19 18 30 Psalms 19 17 30 Psalms 19 18 31 Psalms 19 17 31 Psalms 19 18 32 Psalms 19 17 32 Psalms 19 18 33 Psalms 19 17 33 Psalms 19 18 34 Psalms 19 17 34 Psalms 19 18 35 Psalms 19 17 35 Psalms 19 18 36 Psalms 19 17 36 Psalms 19 18 37 Psalms 19 17 37 Psalms 19 18 38 Psalms 19 17 38 Psalms 19 18 39 Psalms 19 17 39 Psalms 19 18 40 Psalms 19 17 40 Psalms 19 18 41 Psalms 19 17 41 Psalms 19 18 42 Psalms 19 17 42 Psalms 19 18 43 Psalms 19 17 43 Psalms 19 18 44 Psalms 19 17 44 Psalms 19 18 45 Psalms 19 17 45 Psalms 19 18 46 Psalms 19 17 46 Psalms 19 18 47 Psalms 19 17 47 Psalms 19 18 48 Psalms 19 17 48 Psalms 19 18 49 Psalms 19 17 49 Psalms 19 18 50 Psalms 19 17 50 Psalms 19 18 51 Psalms 19 18 1 Psalms 19 19 1 Psalms 19 18 2 Psalms 19 19 2 Psalms 19 18 3 Psalms 19 19 3 Psalms 19 18 4 Psalms 19 19 4 Psalms 19 18 5 Psalms 19 19 5 Psalms 19 18 6 Psalms 19 19 6 Psalms 19 18 7 Psalms 19 19 7 Psalms 19 18 8 Psalms 19 19 8 Psalms 19 18 9 Psalms 19 19 9 Psalms 19 18 10 Psalms 19 19 10 Psalms 19 18 11 Psalms 19 19 11 Psalms 19 18 12 Psalms 19 19 12 Psalms 19 18 13 Psalms 19 19 13 Psalms 19 18 14 Psalms 19 19 14 Psalms 19 18 15 Psalms 19 19 15 Psalms 19 19 1 Psalms 19 20 1 Psalms 19 19 2 Psalms 19 20 2 Psalms 19 19 3 Psalms 19 20 3 Psalms 19 19 4 Psalms 19 20 4 Psalms 19 19 5 Psalms 19 20 5 Psalms 19 19 6 Psalms 19 20 6 Psalms 19 19 7 Psalms 19 20 7 Psalms 19 19 8 Psalms 19 20 8 Psalms 19 19 9 Psalms 19 20 9 Psalms 19 19 10 Psalms 19 20 10 Psalms 19 20 1 Psalms 19 21 1 Psalms 19 20 2 Psalms 19 21 2 Psalms 19 20 3 Psalms 19 21 3 Psalms 19 20 4 Psalms 19 21 4 Psalms 19 20 5 Psalms 19 21 5 Psalms 19 20 6 Psalms 19 21 6 Psalms 19 20 7 Psalms 19 21 7 Psalms 19 20 8 Psalms 19 21 8 Psalms 19 20 9 Psalms 19 21 9 Psalms 19 20 10 Psalms 19 21 10 Psalms 19 20 11 Psalms 19 21 11 Psalms 19 20 12 Psalms 19 21 12 Psalms 19 20 13 Psalms 19 21 13 Psalms 19 20 14 Psalms 19 21 14 Psalms 19 21 1 Psalms 19 22 1 Psalms 19 21 2 Psalms 19 22 2 Psalms 19 21 3 Psalms 19 22 3 Psalms 19 21 4 Psalms 19 22 4 Psalms 19 21 5 Psalms 19 22 5 Psalms 19 21 6 Psalms 19 22 6 Psalms 19 21 7 Psalms 19 22 7 Psalms 19 21 8 Psalms 19 22 8 Psalms 19 21 9 Psalms 19 22 9 Psalms 19 21 10 Psalms 19 22 10 Psalms 19 21 11 Psalms 19 22 11 Psalms 19 21 12 Psalms 19 22 12 Psalms 19 21 13 Psalms 19 22 13 Psalms 19 21 14 Psalms 19 22 14 Psalms 19 21 15 Psalms 19 22 15 Psalms 19 21 16 Psalms 19 22 16 Psalms 19 21 17 Psalms 19 22 17 Psalms 19 21 18 Psalms 19 22 18 Psalms 19 21 19 Psalms 19 22 19 Psalms 19 21 20 Psalms 19 22 20 Psalms 19 21 21 Psalms 19 22 21 Psalms 19 21 22 Psalms 19 22 22 Psalms 19 21 23 Psalms 19 22 23 Psalms 19 21 24 Psalms 19 22 24 Psalms 19 21 25 Psalms 19 22 25 Psalms 19 21 26 Psalms 19 22 26 Psalms 19 21 27 Psalms 19 22 27 Psalms 19 21 28 Psalms 19 22 28 Psalms 19 21 29 Psalms 19 22 29 Psalms 19 21 30 Psalms 19 22 30 Psalms 19 21 31 Psalms 19 22 31 Psalms 19 21 32 Psalms 19 22 32 Psalms 19 22 1 Psalms 19 23 1 Psalms 19 22 2 Psalms 19 23 2 Psalms 19 22 3 Psalms 19 23 3 Psalms 19 22 4 Psalms 19 23 4 Psalms 19 22 5 Psalms 19 23 5 Psalms 19 22 6 Psalms 19 23 6 Psalms 19 23 1 Psalms 19 24 1 Psalms 19 23 2 Psalms 19 24 2 Psalms 19 23 3 Psalms 19 24 3 Psalms 19 23 4 Psalms 19 24 4 Psalms 19 23 5 Psalms 19 24 5 Psalms 19 23 6 Psalms 19 24 6 Psalms 19 23 7 Psalms 19 24 7 Psalms 19 23 8 Psalms 19 24 8 Psalms 19 23 9 Psalms 19 24 9 Psalms 19 23 10 Psalms 19 24 10 Psalms 19 24 1 Psalms 19 25 1 Psalms 19 24 2 Psalms 19 25 2 Psalms 19 24 3 Psalms 19 25 3 Psalms 19 24 4 Psalms 19 25 4 Psalms 19 24 5 Psalms 19 25 5 Psalms 19 24 6 Psalms 19 25 6 Psalms 19 24 7 Psalms 19 25 7 Psalms 19 24 8 Psalms 19 25 8 Psalms 19 24 9 Psalms 19 25 9 Psalms 19 24 10 Psalms 19 25 10 Psalms 19 24 11 Psalms 19 25 11 Psalms 19 24 12 Psalms 19 25 12 Psalms 19 24 13 Psalms 19 25 13 Psalms 19 24 14 Psalms 19 25 14 Psalms 19 24 15 Psalms 19 25 15 Psalms 19 24 16 Psalms 19 25 16 Psalms 19 24 17 Psalms 19 25 17 Psalms 19 24 18 Psalms 19 25 18 Psalms 19 24 19 Psalms 19 25 19 Psalms 19 24 20 Psalms 19 25 20 Psalms 19 24 21 Psalms 19 25 21 Psalms 19 24 22 Psalms 19 25 22 Psalms 19 25 1 Psalms 19 26 1 Psalms 19 25 2 Psalms 19 26 2 Psalms 19 25 3 Psalms 19 26 3 Psalms 19 25 4 Psalms 19 26 4 Psalms 19 25 5 Psalms 19 26 5 Psalms 19 25 6 Psalms 19 26 6 Psalms 19 25 7 Psalms 19 26 7 Psalms 19 25 8 Psalms 19 26 8 Psalms 19 25 9 Psalms 19 26 9 Psalms 19 25 10 Psalms 19 26 10 Psalms 19 25 11 Psalms 19 26 11 Psalms 19 25 12 Psalms 19 26 12 Psalms 19 26 1 Psalms 19 27 1 Psalms 19 26 2 Psalms 19 27 2 Psalms 19 26 3 Psalms 19 27 3 Psalms 19 26 4 Psalms 19 27 4 Psalms 19 26 5 Psalms 19 27 5 Psalms 19 26 6 Psalms 19 27 6 Psalms 19 26 7 Psalms 19 27 7 Psalms 19 26 8 Psalms 19 27 8 Psalms 19 26 9 Psalms 19 27 9 Psalms 19 26 10 Psalms 19 27 10 Psalms 19 26 11 Psalms 19 27 11 Psalms 19 26 12 Psalms 19 27 12 Psalms 19 26 13 Psalms 19 27 13 Psalms 19 26 14 Psalms 19 27 14 Psalms 19 27 1 Psalms 19 28 1 Psalms 19 27 2 Psalms 19 28 2 Psalms 19 27 3 Psalms 19 28 3 Psalms 19 27 4 Psalms 19 28 4 Psalms 19 27 5 Psalms 19 28 5 Psalms 19 27 6 Psalms 19 28 6 Psalms 19 27 7 Psalms 19 28 7 Psalms 19 27 8 Psalms 19 28 8 Psalms 19 27 9 Psalms 19 28 9 Psalms 19 28 1 Psalms 19 29 1 Psalms 19 28 2 Psalms 19 29 2 Psalms 19 28 3 Psalms 19 29 3 Psalms 19 28 4 Psalms 19 29 4 Psalms 19 28 5 Psalms 19 29 5 Psalms 19 28 6 Psalms 19 29 6 Psalms 19 28 7 Psalms 19 29 7 Psalms 19 28 8 Psalms 19 29 8 Psalms 19 28 9 Psalms 19 29 9 Psalms 19 28 10 Psalms 19 29 10 Psalms 19 28 11 Psalms 19 29 11 Psalms 19 29 1 Psalms 19 30 1 Psalms 19 29 2 Psalms 19 30 2 Psalms 19 29 3 Psalms 19 30 3 Psalms 19 29 4 Psalms 19 30 4 Psalms 19 29 5 Psalms 19 30 5 Psalms 19 29 6 Psalms 19 30 6 Psalms 19 29 7 Psalms 19 30 7 Psalms 19 29 8 Psalms 19 30 8 Psalms 19 29 9 Psalms 19 30 9 Psalms 19 29 10 Psalms 19 30 10 Psalms 19 29 11 Psalms 19 30 11 Psalms 19 29 12 Psalms 19 30 12 Psalms 19 29 13 Psalms 19 30 13 Psalms 19 30 1 Psalms 19 31 1 Psalms 19 30 2 Psalms 19 31 2 Psalms 19 30 3 Psalms 19 31 3 Psalms 19 30 4 Psalms 19 31 4 Psalms 19 30 5 Psalms 19 31 5 Psalms 19 30 6 Psalms 19 31 6 Psalms 19 30 7 Psalms 19 31 7 Psalms 19 30 8 Psalms 19 31 8 Psalms 19 30 9 Psalms 19 31 9 Psalms 19 30 10 Psalms 19 31 10 Psalms 19 30 11 Psalms 19 31 11 Psalms 19 30 12 Psalms 19 31 12 Psalms 19 30 13 Psalms 19 31 13 Psalms 19 30 14 Psalms 19 31 14 Psalms 19 30 15 Psalms 19 31 15 Psalms 19 30 16 Psalms 19 31 16 Psalms 19 30 17 Psalms 19 31 17 Psalms 19 30 18 Psalms 19 31 18 Psalms 19 30 19 Psalms 19 31 19 Psalms 19 30 20 Psalms 19 31 20 Psalms 19 30 21 Psalms 19 31 21 Psalms 19 30 22 Psalms 19 31 22 Psalms 19 30 23 Psalms 19 31 23 Psalms 19 30 24 Psalms 19 31 24 Psalms 19 30 25 Psalms 19 31 25 Psalms 19 31 1 Psalms 19 32 1 Psalms 19 31 2 Psalms 19 32 2 Psalms 19 31 3 Psalms 19 32 3 Psalms 19 31 4 Psalms 19 32 4 Psalms 19 31 5 Psalms 19 32 5 Psalms 19 31 6 Psalms 19 32 6 Psalms 19 31 7 Psalms 19 32 7 Psalms 19 31 8 Psalms 19 32 8 Psalms 19 31 9 Psalms 19 32 9 Psalms 19 31 10 Psalms 19 32 10 Psalms 19 31 11 Psalms 19 32 11 Psalms 19 32 1 Psalms 19 33 1 Psalms 19 32 2 Psalms 19 33 2 Psalms 19 32 3 Psalms 19 33 3 Psalms 19 32 4 Psalms 19 33 4 Psalms 19 32 5 Psalms 19 33 5 Psalms 19 32 6 Psalms 19 33 6 Psalms 19 32 7 Psalms 19 33 7 Psalms 19 32 8 Psalms 19 33 8 Psalms 19 32 9 Psalms 19 33 9 Psalms 19 32 10 Psalms 19 33 10 Psalms 19 32 11 Psalms 19 33 11 Psalms 19 32 12 Psalms 19 33 12 Psalms 19 32 13 Psalms 19 33 13 Psalms 19 32 14 Psalms 19 33 14 Psalms 19 32 15 Psalms 19 33 15 Psalms 19 32 16 Psalms 19 33 16 Psalms 19 32 17 Psalms 19 33 17 Psalms 19 32 18 Psalms 19 33 18 Psalms 19 32 19 Psalms 19 33 19 Psalms 19 32 20 Psalms 19 33 20 Psalms 19 32 21 Psalms 19 33 21 Psalms 19 32 22 Psalms 19 33 22 Psalms 19 33 1 Psalms 19 34 1 Psalms 19 33 2 Psalms 19 34 2 Psalms 19 33 3 Psalms 19 34 3 Psalms 19 33 4 Psalms 19 34 4 Psalms 19 33 5 Psalms 19 34 5 Psalms 19 33 6 Psalms 19 34 6 Psalms 19 33 7 Psalms 19 34 7 Psalms 19 33 8 Psalms 19 34 8 Psalms 19 33 9 Psalms 19 34 9 Psalms 19 33 10 Psalms 19 34 10 Psalms 19 33 11 Psalms 19 34 11 Psalms 19 33 12 Psalms 19 34 12 Psalms 19 33 13 Psalms 19 34 13 Psalms 19 33 14 Psalms 19 34 14 Psalms 19 33 15 Psalms 19 34 15 Psalms 19 33 16 Psalms 19 34 16 Psalms 19 33 17 Psalms 19 34 17 Psalms 19 33 18 Psalms 19 34 18 Psalms 19 33 19 Psalms 19 34 19 Psalms 19 33 20 Psalms 19 34 20 Psalms 19 33 21 Psalms 19 34 21 Psalms 19 33 22 Psalms 19 34 22 Psalms 19 33 23 Psalms 19 34 23 Psalms 19 34 1 Psalms 19 35 1 Psalms 19 34 2 Psalms 19 35 2 Psalms 19 34 3 Psalms 19 35 3 Psalms 19 34 4 Psalms 19 35 4 Psalms 19 34 5 Psalms 19 35 5 Psalms 19 34 6 Psalms 19 35 6 Psalms 19 34 7 Psalms 19 35 7 Psalms 19 34 8 Psalms 19 35 8 Psalms 19 34 9 Psalms 19 35 9 Psalms 19 34 10 Psalms 19 35 10 Psalms 19 34 11 Psalms 19 35 11 Psalms 19 34 12 Psalms 19 35 12 Psalms 19 34 13 Psalms 19 35 13 Psalms 19 34 14 Psalms 19 35 14 Psalms 19 34 15 Psalms 19 35 15 Psalms 19 34 16 Psalms 19 35 16 Psalms 19 34 17 Psalms 19 35 17 Psalms 19 34 18 Psalms 19 35 18 Psalms 19 34 19 Psalms 19 35 19 Psalms 19 34 20 Psalms 19 35 20 Psalms 19 34 21 Psalms 19 35 21 Psalms 19 34 22 Psalms 19 35 22 Psalms 19 34 23 Psalms 19 35 23 Psalms 19 34 24 Psalms 19 35 24 Psalms 19 34 25 Psalms 19 35 25 Psalms 19 34 26 Psalms 19 35 26 Psalms 19 34 27 Psalms 19 35 27 Psalms 19 34 28 Psalms 19 35 28 Psalms 19 35 1 Psalms 19 36 1 Psalms 19 35 2 Psalms 19 36 2 Psalms 19 35 3 Psalms 19 36 3 Psalms 19 35 4 Psalms 19 36 4 Psalms 19 35 5 Psalms 19 36 5 Psalms 19 35 6 Psalms 19 36 6 Psalms 19 35 7 Psalms 19 36 7 Psalms 19 35 8 Psalms 19 36 8 Psalms 19 35 9 Psalms 19 36 9 Psalms 19 35 10 Psalms 19 36 10 Psalms 19 35 11 Psalms 19 36 11 Psalms 19 35 12 Psalms 19 36 12 Psalms 19 35 13 Psalms 19 36 13 Psalms 19 36 1 Psalms 19 37 1 Psalms 19 36 2 Psalms 19 37 2 Psalms 19 36 3 Psalms 19 37 3 Psalms 19 36 4 Psalms 19 37 4 Psalms 19 36 5 Psalms 19 37 5 Psalms 19 36 6 Psalms 19 37 6 Psalms 19 36 7 Psalms 19 37 7 Psalms 19 36 8 Psalms 19 37 8 Psalms 19 36 9 Psalms 19 37 9 Psalms 19 36 10 Psalms 19 37 10 Psalms 19 36 11 Psalms 19 37 11 Psalms 19 36 12 Psalms 19 37 12 Psalms 19 36 13 Psalms 19 37 13 Psalms 19 36 14 Psalms 19 37 14 Psalms 19 36 15 Psalms 19 37 15 Psalms 19 36 16 Psalms 19 37 16 Psalms 19 36 17 Psalms 19 37 17 Psalms 19 36 18 Psalms 19 37 18 Psalms 19 36 19 Psalms 19 37 19 Psalms 19 36 20 Psalms 19 37 20 Psalms 19 36 21 Psalms 19 37 21 Psalms 19 36 22 Psalms 19 37 22 Psalms 19 36 23 Psalms 19 37 23 Psalms 19 36 24 Psalms 19 37 24 Psalms 19 36 25 Psalms 19 37 25 Psalms 19 36 26 Psalms 19 37 26 Psalms 19 36 27 Psalms 19 37 27 Psalms 19 36 28 Psalms 19 37 28 Psalms 19 36 29 Psalms 19 37 29 Psalms 19 36 30 Psalms 19 37 30 Psalms 19 36 31 Psalms 19 37 31 Psalms 19 36 32 Psalms 19 37 32 Psalms 19 36 33 Psalms 19 37 33 Psalms 19 36 34 Psalms 19 37 34 Psalms 19 36 35 Psalms 19 37 35 Psalms 19 36 36 Psalms 19 37 36 Psalms 19 36 37 Psalms 19 37 37 Psalms 19 36 38 Psalms 19 37 38 Psalms 19 36 39 Psalms 19 37 39 Psalms 19 36 40 Psalms 19 37 40 Psalms 19 37 1 Psalms 19 38 1 Psalms 19 37 2 Psalms 19 38 2 Psalms 19 37 3 Psalms 19 38 3 Psalms 19 37 4 Psalms 19 38 4 Psalms 19 37 5 Psalms 19 38 5 Psalms 19 37 6 Psalms 19 38 6 Psalms 19 37 7 Psalms 19 38 7 Psalms 19 37 8 Psalms 19 38 8 Psalms 19 37 9 Psalms 19 38 9 Psalms 19 37 10 Psalms 19 38 10 Psalms 19 37 11 Psalms 19 38 11 Psalms 19 37 12 Psalms 19 38 12 Psalms 19 37 13 Psalms 19 38 13 Psalms 19 37 14 Psalms 19 38 14 Psalms 19 37 15 Psalms 19 38 15 Psalms 19 37 16 Psalms 19 38 16 Psalms 19 37 17 Psalms 19 38 17 Psalms 19 37 18 Psalms 19 38 18 Psalms 19 37 19 Psalms 19 38 19 Psalms 19 37 20 Psalms 19 38 20 Psalms 19 37 21 Psalms 19 38 21 Psalms 19 37 22 Psalms 19 38 22 Psalms 19 37 23 Psalms 19 38 23 Psalms 19 38 1 Psalms 19 39 1 Psalms 19 38 2 Psalms 19 39 2 Psalms 19 38 3 Psalms 19 39 3 Psalms 19 38 4 Psalms 19 39 4 Psalms 19 38 5 Psalms 19 39 5 Psalms 19 38 6 Psalms 19 39 6 Psalms 19 38 7 Psalms 19 39 7 Psalms 19 38 8 Psalms 19 39 8 Psalms 19 38 9 Psalms 19 39 9 Psalms 19 38 10 Psalms 19 39 10 Psalms 19 38 11 Psalms 19 39 11 Psalms 19 38 12 Psalms 19 39 12 Psalms 19 38 13 Psalms 19 39 13 Psalms 19 38 14 Psalms 19 39 14 Psalms 19 39 1 Psalms 19 40 1 Psalms 19 39 2 Psalms 19 40 2 Psalms 19 39 3 Psalms 19 40 3 Psalms 19 39 4 Psalms 19 40 4 Psalms 19 39 5 Psalms 19 40 5 Psalms 19 39 6 Psalms 19 40 6 Psalms 19 39 7 Psalms 19 40 7 Psalms 19 39 8 Psalms 19 40 8 Psalms 19 39 9 Psalms 19 40 9 Psalms 19 39 10 Psalms 19 40 10 Psalms 19 39 11 Psalms 19 40 11 Psalms 19 39 12 Psalms 19 40 12 Psalms 19 39 13 Psalms 19 40 13 Psalms 19 39 14 Psalms 19 40 14 Psalms 19 39 15 Psalms 19 40 15 Psalms 19 39 16 Psalms 19 40 16 Psalms 19 39 17 Psalms 19 40 17 Psalms 19 39 18 Psalms 19 40 18 Psalms 19 40 1 Psalms 19 41 1 Psalms 19 40 2 Psalms 19 41 2 Psalms 19 40 3 Psalms 19 41 3 Psalms 19 40 4 Psalms 19 41 4 Psalms 19 40 5 Psalms 19 41 5 Psalms 19 40 6 Psalms 19 41 6 Psalms 19 40 7 Psalms 19 41 7 Psalms 19 40 8 Psalms 19 41 8 Psalms 19 40 9 Psalms 19 41 9 Psalms 19 40 10 Psalms 19 41 10 Psalms 19 40 11 Psalms 19 41 11 Psalms 19 40 12 Psalms 19 41 12 Psalms 19 40 13 Psalms 19 41 13 Psalms 19 40 14 Psalms 19 41 14 Psalms 19 41 1 Psalms 19 42 1 Psalms 19 41 2 Psalms 19 42 2 Psalms 19 41 3 Psalms 19 42 3 Psalms 19 41 4 Psalms 19 42 4 Psalms 19 41 5 Psalms 19 42 5 Psalms 19 41 6 Psalms 19 42 6 Psalms 19 41 7 Psalms 19 42 7 Psalms 19 41 8 Psalms 19 42 8 Psalms 19 41 9 Psalms 19 42 9 Psalms 19 41 10 Psalms 19 42 10 Psalms 19 41 11 Psalms 19 42 11 Psalms 19 41 12 Psalms 19 42 12 Psalms 19 42 1 Psalms 19 43 1 Psalms 19 42 2 Psalms 19 43 2 Psalms 19 42 3 Psalms 19 43 3 Psalms 19 42 4 Psalms 19 43 4 Psalms 19 42 5 Psalms 19 43 5 Psalms 19 43 1 Psalms 19 44 1 Psalms 19 43 2 Psalms 19 44 2 Psalms 19 43 3 Psalms 19 44 3 Psalms 19 43 4 Psalms 19 44 4 Psalms 19 43 5 Psalms 19 44 5 Psalms 19 43 6 Psalms 19 44 6 Psalms 19 43 7 Psalms 19 44 7 Psalms 19 43 8 Psalms 19 44 8 Psalms 19 43 9 Psalms 19 44 9 Psalms 19 43 10 Psalms 19 44 10 Psalms 19 43 11 Psalms 19 44 11 Psalms 19 43 12 Psalms 19 44 12 Psalms 19 43 13 Psalms 19 44 13 Psalms 19 43 14 Psalms 19 44 14 Psalms 19 43 15 Psalms 19 44 15 Psalms 19 43 16 Psalms 19 44 16 Psalms 19 43 17 Psalms 19 44 17 Psalms 19 43 18 Psalms 19 44 18 Psalms 19 43 19 Psalms 19 44 19 Psalms 19 43 20 Psalms 19 44 20 Psalms 19 43 21 Psalms 19 44 21 Psalms 19 43 22 Psalms 19 44 22 Psalms 19 43 23 Psalms 19 44 23 Psalms 19 43 24 Psalms 19 44 24 Psalms 19 43 25 Psalms 19 44 25 Psalms 19 43 26 Psalms 19 44 26 Psalms 19 43 27 Psalms 19 44 27 Psalms 19 44 1 Psalms 19 45 1 Psalms 19 44 2 Psalms 19 45 2 Psalms 19 44 3 Psalms 19 45 3 Psalms 19 44 4 Psalms 19 45 4 Psalms 19 44 5 Psalms 19 45 5 Psalms 19 44 6 Psalms 19 45 6 Psalms 19 44 7 Psalms 19 45 7 Psalms 19 44 8 Psalms 19 45 8 Psalms 19 44 9 Psalms 19 45 9 Psalms 19 44 10 Psalms 19 45 10 Psalms 19 44 11 Psalms 19 45 11 Psalms 19 44 12 Psalms 19 45 12 Psalms 19 44 13 Psalms 19 45 13 Psalms 19 44 14 Psalms 19 45 14 Psalms 19 44 15 Psalms 19 45 15 Psalms 19 44 16 Psalms 19 45 16 Psalms 19 44 17 Psalms 19 45 17 Psalms 19 44 18 Psalms 19 45 18 Psalms 19 45 1 Psalms 19 46 1 Psalms 19 45 2 Psalms 19 46 2 Psalms 19 45 3 Psalms 19 46 3 Psalms 19 45 4 Psalms 19 46 4 Psalms 19 45 5 Psalms 19 46 5 Psalms 19 45 6 Psalms 19 46 6 Psalms 19 45 7 Psalms 19 46 7 Psalms 19 45 8 Psalms 19 46 8 Psalms 19 45 9 Psalms 19 46 9 Psalms 19 45 10 Psalms 19 46 10 Psalms 19 45 11 Psalms 19 46 11 Psalms 19 45 12 Psalms 19 46 12 Psalms 19 46 1 Psalms 19 47 1 Psalms 19 46 2 Psalms 19 47 2 Psalms 19 46 3 Psalms 19 47 3 Psalms 19 46 4 Psalms 19 47 4 Psalms 19 46 5 Psalms 19 47 5 Psalms 19 46 6 Psalms 19 47 6 Psalms 19 46 7 Psalms 19 47 7 Psalms 19 46 8 Psalms 19 47 8 Psalms 19 46 9 Psalms 19 47 9 Psalms 19 46 10 Psalms 19 47 10 Psalms 19 47 1 Psalms 19 48 1 Psalms 19 47 2 Psalms 19 48 2 Psalms 19 47 3 Psalms 19 48 3 Psalms 19 47 4 Psalms 19 48 4 Psalms 19 47 5 Psalms 19 48 5 Psalms 19 47 6 Psalms 19 48 6 Psalms 19 47 7 Psalms 19 48 7 Psalms 19 47 8 Psalms 19 48 8 Psalms 19 47 9 Psalms 19 48 9 Psalms 19 47 10 Psalms 19 48 10 Psalms 19 47 11 Psalms 19 48 11 Psalms 19 47 12 Psalms 19 48 12 Psalms 19 47 13 Psalms 19 48 13 Psalms 19 47 14 Psalms 19 48 14 Psalms 19 47 15 Psalms 19 48 15 Psalms 19 48 1 Psalms 19 49 1 Psalms 19 48 2 Psalms 19 49 2 Psalms 19 48 3 Psalms 19 49 3 Psalms 19 48 4 Psalms 19 49 4 Psalms 19 48 5 Psalms 19 49 5 Psalms 19 48 6 Psalms 19 49 6 Psalms 19 48 7 Psalms 19 49 7 Psalms 19 48 8 Psalms 19 49 8 Psalms 19 48 9 Psalms 19 49 9 Psalms 19 48 10 Psalms 19 49 10 Psalms 19 48 11 Psalms 19 49 11 Psalms 19 48 12 Psalms 19 49 12 Psalms 19 48 13 Psalms 19 49 13 Psalms 19 48 14 Psalms 19 49 14 Psalms 19 48 15 Psalms 19 49 15 Psalms 19 48 16 Psalms 19 49 16 Psalms 19 48 17 Psalms 19 49 17 Psalms 19 48 18 Psalms 19 49 18 Psalms 19 48 19 Psalms 19 49 19 Psalms 19 48 20 Psalms 19 49 20 Psalms 19 48 21 Psalms 19 49 21 Psalms 19 49 1 Psalms 19 50 1 Psalms 19 49 2 Psalms 19 50 2 Psalms 19 49 3 Psalms 19 50 3 Psalms 19 49 4 Psalms 19 50 4 Psalms 19 49 5 Psalms 19 50 5 Psalms 19 49 6 Psalms 19 50 6 Psalms 19 49 7 Psalms 19 50 7 Psalms 19 49 8 Psalms 19 50 8 Psalms 19 49 9 Psalms 19 50 9 Psalms 19 49 10 Psalms 19 50 10 Psalms 19 49 11 Psalms 19 50 11 Psalms 19 49 12 Psalms 19 50 12 Psalms 19 49 13 Psalms 19 50 13 Psalms 19 49 14 Psalms 19 50 14 Psalms 19 49 15 Psalms 19 50 15 Psalms 19 49 16 Psalms 19 50 16 Psalms 19 49 17 Psalms 19 50 17 Psalms 19 49 18 Psalms 19 50 18 Psalms 19 49 19 Psalms 19 50 19 Psalms 19 49 20 Psalms 19 50 20 Psalms 19 49 21 Psalms 19 50 21 Psalms 19 49 22 Psalms 19 50 22 Psalms 19 49 23 Psalms 19 50 23 Psalms 19 50 1 Psalms 19 51 1 Psalms 19 50 2 Psalms 19 51 2 Psalms 19 50 3 Psalms 19 51 3 Psalms 19 50 4 Psalms 19 51 4 Psalms 19 50 5 Psalms 19 51 5 Psalms 19 50 6 Psalms 19 51 6 Psalms 19 50 7 Psalms 19 51 7 Psalms 19 50 8 Psalms 19 51 8 Psalms 19 50 9 Psalms 19 51 9 Psalms 19 50 10 Psalms 19 51 10 Psalms 19 50 11 Psalms 19 51 11 Psalms 19 50 12 Psalms 19 51 12 Psalms 19 50 13 Psalms 19 51 13 Psalms 19 50 14 Psalms 19 51 14 Psalms 19 50 15 Psalms 19 51 15 Psalms 19 50 16 Psalms 19 51 16 Psalms 19 50 17 Psalms 19 51 17 Psalms 19 50 18 Psalms 19 51 18 Psalms 19 50 19 Psalms 19 51 19 Psalms 19 50 20 Psalms 19 51 20 Psalms 19 50 21 Psalms 19 51 21 Psalms 19 51 1 Psalms 19 52 1 Psalms 19 51 2 Psalms 19 52 2 Psalms 19 51 3 Psalms 19 52 3 Psalms 19 51 4 Psalms 19 52 4 Psalms 19 51 5 Psalms 19 52 5 Psalms 19 51 6 Psalms 19 52 6 Psalms 19 51 7 Psalms 19 52 7 Psalms 19 51 8 Psalms 19 52 8 Psalms 19 51 9 Psalms 19 52 9 Psalms 19 51 10 Psalms 19 52 10 Psalms 19 51 11 Psalms 19 52 11 Psalms 19 52 1 Psalms 19 53 1 Psalms 19 52 2 Psalms 19 53 2 Psalms 19 52 3 Psalms 19 53 3 Psalms 19 52 4 Psalms 19 53 4 Psalms 19 52 5 Psalms 19 53 5 Psalms 19 52 6 Psalms 19 53 6 Psalms 19 52 7 Psalms 19 53 7 Psalms 19 53 1 Psalms 19 54 1 Psalms 19 53 2 Psalms 19 54 2 Psalms 19 53 3 Psalms 19 54 3 Psalms 19 53 4 Psalms 19 54 4 Psalms 19 53 5 Psalms 19 54 5 Psalms 19 53 6 Psalms 19 54 6 Psalms 19 53 7 Psalms 19 54 7 Psalms 19 53 8 Psalms 19 54 8 Psalms 19 53 9 Psalms 19 54 9 Psalms 19 54 1 Psalms 19 55 1 Psalms 19 54 2 Psalms 19 55 2 Psalms 19 54 3 Psalms 19 55 3 Psalms 19 54 4 Psalms 19 55 4 Psalms 19 54 5 Psalms 19 55 5 Psalms 19 54 6 Psalms 19 55 6 Psalms 19 54 7 Psalms 19 55 7 Psalms 19 54 8 Psalms 19 55 8 Psalms 19 54 9 Psalms 19 55 9 Psalms 19 54 10 Psalms 19 55 10 Psalms 19 54 11 Psalms 19 55 11 Psalms 19 54 12 Psalms 19 55 12 Psalms 19 54 13 Psalms 19 55 13 Psalms 19 54 14 Psalms 19 55 14 Psalms 19 54 15 Psalms 19 55 15 Psalms 19 54 16 Psalms 19 55 16 Psalms 19 54 17 Psalms 19 55 17 Psalms 19 54 18 Psalms 19 55 18 Psalms 19 54 19 Psalms 19 55 19 Psalms 19 54 20 Psalms 19 55 20 Psalms 19 54 21 Psalms 19 55 21 Psalms 19 54 22 Psalms 19 55 22 Psalms 19 54 23 Psalms 19 55 23 Psalms 19 54 24 Psalms 19 55 24 Psalms 19 55 1 Psalms 19 56 1 Psalms 19 55 2 Psalms 19 56 2 Psalms 19 55 3 Psalms 19 56 3 Psalms 19 55 4 Psalms 19 56 4 Psalms 19 55 5 Psalms 19 56 5 Psalms 19 55 6 Psalms 19 56 6 Psalms 19 55 7 Psalms 19 56 7 Psalms 19 55 8 Psalms 19 56 8 Psalms 19 55 9 Psalms 19 56 9 Psalms 19 55 10 Psalms 19 56 10 Psalms 19 55 11 Psalms 19 56 11 Psalms 19 55 12 Psalms 19 56 12 Psalms 19 55 13 Psalms 19 56 13 Psalms 19 55 14 Psalms 19 56 14 Psalms 19 56 1 Psalms 19 57 1 Psalms 19 56 2 Psalms 19 57 2 Psalms 19 56 3 Psalms 19 57 3 Psalms 19 56 4 Psalms 19 57 4 Psalms 19 56 5 Psalms 19 57 5 Psalms 19 56 6 Psalms 19 57 6 Psalms 19 56 7 Psalms 19 57 7 Psalms 19 56 8 Psalms 19 57 8 Psalms 19 56 9 Psalms 19 57 9 Psalms 19 56 10 Psalms 19 57 10 Psalms 19 56 11 Psalms 19 57 11 Psalms 19 56 12 Psalms 19 57 12 Psalms 19 57 1 Psalms 19 58 1 Psalms 19 57 2 Psalms 19 58 2 Psalms 19 57 3 Psalms 19 58 3 Psalms 19 57 4 Psalms 19 58 4 Psalms 19 57 5 Psalms 19 58 5 Psalms 19 57 6 Psalms 19 58 6 Psalms 19 57 7 Psalms 19 58 7 Psalms 19 57 8 Psalms 19 58 8 Psalms 19 57 9 Psalms 19 58 9 Psalms 19 57 10 Psalms 19 58 10 Psalms 19 57 11 Psalms 19 58 11 Psalms 19 57 12 Psalms 19 58 12 Psalms 19 58 1 Psalms 19 59 1 Psalms 19 58 2 Psalms 19 59 2 Psalms 19 58 3 Psalms 19 59 3 Psalms 19 58 4 Psalms 19 59 4 Psalms 19 58 5 Psalms 19 59 5 Psalms 19 58 6 Psalms 19 59 6 Psalms 19 58 7 Psalms 19 59 7 Psalms 19 58 8 Psalms 19 59 8 Psalms 19 58 9 Psalms 19 59 9 Psalms 19 58 10 Psalms 19 59 10 Psalms 19 58 11 Psalms 19 59 11 Psalms 19 58 12 Psalms 19 59 12 Psalms 19 58 13 Psalms 19 59 13 Psalms 19 58 14 Psalms 19 59 14 Psalms 19 58 15 Psalms 19 59 15 Psalms 19 58 16 Psalms 19 59 16 Psalms 19 58 17 Psalms 19 59 17 Psalms 19 58 18 Psalms 19 59 18 Psalms 19 59 1 Psalms 19 60 1 Psalms 19 59 2 Psalms 19 60 2 Psalms 19 59 3 Psalms 19 60 3 Psalms 19 59 4 Psalms 19 60 4 Psalms 19 59 5 Psalms 19 60 5 Psalms 19 59 6 Psalms 19 60 6 Psalms 19 59 7 Psalms 19 60 7 Psalms 19 59 8 Psalms 19 60 8 Psalms 19 59 9 Psalms 19 60 9 Psalms 19 59 10 Psalms 19 60 10 Psalms 19 59 11 Psalms 19 60 11 Psalms 19 59 12 Psalms 19 60 12 Psalms 19 59 13 Psalms 19 60 13 Psalms 19 59 14 Psalms 19 60 14 Psalms 19 60 1 Psalms 19 61 1 Psalms 19 60 2 Psalms 19 61 2 Psalms 19 60 3 Psalms 19 61 3 Psalms 19 60 4 Psalms 19 61 4 Psalms 19 60 5 Psalms 19 61 5 Psalms 19 60 6 Psalms 19 61 6 Psalms 19 60 7 Psalms 19 61 7 Psalms 19 60 8 Psalms 19 61 8 Psalms 19 60 9 Psalms 19 61 9 Psalms 19 61 1 Psalms 19 62 1 Psalms 19 61 2 Psalms 19 62 2 Psalms 19 61 3 Psalms 19 62 3 Psalms 19 61 4 Psalms 19 62 4 Psalms 19 61 5 Psalms 19 62 5 Psalms 19 61 6 Psalms 19 62 6 Psalms 19 61 7 Psalms 19 62 7 Psalms 19 61 8 Psalms 19 62 8 Psalms 19 61 9 Psalms 19 62 9 Psalms 19 61 10 Psalms 19 62 10 Psalms 19 61 11 Psalms 19 62 11 Psalms 19 61 12 Psalms 19 62 12 Psalms 19 61 13 Psalms 19 62 13 Psalms 19 62 1 Psalms 19 63 1 Psalms 19 62 2 Psalms 19 63 2 Psalms 19 62 3 Psalms 19 63 3 Psalms 19 62 4 Psalms 19 63 4 Psalms 19 62 5 Psalms 19 63 5 Psalms 19 62 6 Psalms 19 63 6 Psalms 19 62 7 Psalms 19 63 7 Psalms 19 62 8 Psalms 19 63 8 Psalms 19 62 9 Psalms 19 63 9 Psalms 19 62 10 Psalms 19 63 10 Psalms 19 62 11 Psalms 19 63 11 Psalms 19 62 12 Psalms 19 63 12 Psalms 19 63 1 Psalms 19 64 1 Psalms 19 63 2 Psalms 19 64 2 Psalms 19 63 3 Psalms 19 64 3 Psalms 19 63 4 Psalms 19 64 4 Psalms 19 63 5 Psalms 19 64 5 Psalms 19 63 6 Psalms 19 64 6 Psalms 19 63 7 Psalms 19 64 7 Psalms 19 63 8 Psalms 19 64 8 Psalms 19 63 9 Psalms 19 64 9 Psalms 19 63 10 Psalms 19 64 10 Psalms 19 63 11 Psalms 19 64 11 Psalms 19 64 1 Psalms 19 65 1 Psalms 19 64 2 Psalms 19 65 2 Psalms 19 64 3 Psalms 19 65 3 Psalms 19 64 4 Psalms 19 65 4 Psalms 19 64 5 Psalms 19 65 5 Psalms 19 64 6 Psalms 19 65 6 Psalms 19 64 7 Psalms 19 65 7 Psalms 19 64 8 Psalms 19 65 8 Psalms 19 64 9 Psalms 19 65 9 Psalms 19 64 10 Psalms 19 65 10 Psalms 19 64 11 Psalms 19 65 11 Psalms 19 64 12 Psalms 19 65 12 Psalms 19 64 13 Psalms 19 65 13 Psalms 19 64 14 Psalms 19 65 14 Psalms 19 65 1 Psalms 19 66 1 Psalms 19 65 2 Psalms 19 66 2 Psalms 19 65 3 Psalms 19 66 3 Psalms 19 65 4 Psalms 19 66 4 Psalms 19 65 5 Psalms 19 66 5 Psalms 19 65 6 Psalms 19 66 6 Psalms 19 65 7 Psalms 19 66 7 Psalms 19 65 8 Psalms 19 66 8 Psalms 19 65 9 Psalms 19 66 9 Psalms 19 65 10 Psalms 19 66 10 Psalms 19 65 11 Psalms 19 66 11 Psalms 19 65 12 Psalms 19 66 12 Psalms 19 65 13 Psalms 19 66 13 Psalms 19 65 14 Psalms 19 66 14 Psalms 19 65 15 Psalms 19 66 15 Psalms 19 65 16 Psalms 19 66 16 Psalms 19 65 17 Psalms 19 66 17 Psalms 19 65 18 Psalms 19 66 18 Psalms 19 65 19 Psalms 19 66 19 Psalms 19 65 20 Psalms 19 66 20 Psalms 19 66 1 Psalms 19 67 1 Psalms 19 66 2 Psalms 19 67 2 Psalms 19 66 3 Psalms 19 67 3 Psalms 19 66 4 Psalms 19 67 4 Psalms 19 66 5 Psalms 19 67 5 Psalms 19 66 6 Psalms 19 67 6 Psalms 19 66 7 Psalms 19 67 7 Psalms 19 66 8 Psalms 19 67 8 Psalms 19 67 1 Psalms 19 68 1 Psalms 19 67 2 Psalms 19 68 2 Psalms 19 67 3 Psalms 19 68 3 Psalms 19 67 4 Psalms 19 68 4 Psalms 19 67 5 Psalms 19 68 5 Psalms 19 67 6 Psalms 19 68 6 Psalms 19 67 7 Psalms 19 68 7 Psalms 19 67 8 Psalms 19 68 8 Psalms 19 67 9 Psalms 19 68 9 Psalms 19 67 10 Psalms 19 68 10 Psalms 19 67 11 Psalms 19 68 11 Psalms 19 67 12 Psalms 19 68 12 Psalms 19 67 13 Psalms 19 68 13 Psalms 19 67 14 Psalms 19 68 14 Psalms 19 67 15 Psalms 19 68 15 Psalms 19 67 16 Psalms 19 68 16 Psalms 19 67 17 Psalms 19 68 17 Psalms 19 67 18 Psalms 19 68 18 Psalms 19 67 19 Psalms 19 68 19 Psalms 19 67 20 Psalms 19 68 20 Psalms 19 67 21 Psalms 19 68 21 Psalms 19 67 22 Psalms 19 68 22 Psalms 19 67 23 Psalms 19 68 23 Psalms 19 67 24 Psalms 19 68 24 Psalms 19 67 25 Psalms 19 68 25 Psalms 19 67 26 Psalms 19 68 26 Psalms 19 67 27 Psalms 19 68 27 Psalms 19 67 28 Psalms 19 68 28 Psalms 19 67 29 Psalms 19 68 29 Psalms 19 67 30 Psalms 19 68 30 Psalms 19 67 31 Psalms 19 68 31 Psalms 19 67 32 Psalms 19 68 32 Psalms 19 67 33 Psalms 19 68 33 Psalms 19 67 34 Psalms 19 68 34 Psalms 19 67 35 Psalms 19 68 35 Psalms 19 67 36 Psalms 19 68 36 Psalms 19 68 1 Psalms 19 69 1 Psalms 19 68 2 Psalms 19 69 2 Psalms 19 68 3 Psalms 19 69 3 Psalms 19 68 4 Psalms 19 69 4 Psalms 19 68 5 Psalms 19 69 5 Psalms 19 68 6 Psalms 19 69 6 Psalms 19 68 7 Psalms 19 69 7 Psalms 19 68 8 Psalms 19 69 8 Psalms 19 68 9 Psalms 19 69 9 Psalms 19 68 10 Psalms 19 69 10 Psalms 19 68 11 Psalms 19 69 11 Psalms 19 68 12 Psalms 19 69 12 Psalms 19 68 13 Psalms 19 69 13 Psalms 19 68 14 Psalms 19 69 14 Psalms 19 68 15 Psalms 19 69 15 Psalms 19 68 16 Psalms 19 69 16 Psalms 19 68 17 Psalms 19 69 17 Psalms 19 68 18 Psalms 19 69 18 Psalms 19 68 19 Psalms 19 69 19 Psalms 19 68 20 Psalms 19 69 20 Psalms 19 68 21 Psalms 19 69 21 Psalms 19 68 22 Psalms 19 69 22 Psalms 19 68 23 Psalms 19 69 23 Psalms 19 68 24 Psalms 19 69 24 Psalms 19 68 25 Psalms 19 69 25 Psalms 19 68 26 Psalms 19 69 26 Psalms 19 68 27 Psalms 19 69 27 Psalms 19 68 28 Psalms 19 69 28 Psalms 19 68 29 Psalms 19 69 29 Psalms 19 68 30 Psalms 19 69 30 Psalms 19 68 31 Psalms 19 69 31 Psalms 19 68 32 Psalms 19 69 32 Psalms 19 68 33 Psalms 19 69 33 Psalms 19 68 34 Psalms 19 69 34 Psalms 19 68 35 Psalms 19 69 35 Psalms 19 68 36 Psalms 19 69 36 Psalms 19 68 37 Psalms 19 69 37 Psalms 19 69 1 Psalms 19 70 1 Psalms 19 69 2 Psalms 19 70 2 Psalms 19 69 3 Psalms 19 70 3 Psalms 19 69 4 Psalms 19 70 4 Psalms 19 69 5 Psalms 19 70 5 Psalms 19 69 6 Psalms 19 70 6 Psalms 19 70 1 Psalms 19 71 1 Psalms 19 70 2 Psalms 19 71 2 Psalms 19 70 3 Psalms 19 71 3 Psalms 19 70 4 Psalms 19 71 4 Psalms 19 70 5 Psalms 19 71 5 Psalms 19 70 6 Psalms 19 71 6 Psalms 19 70 7 Psalms 19 71 7 Psalms 19 70 8 Psalms 19 71 8 Psalms 19 70 9 Psalms 19 71 9 Psalms 19 70 10 Psalms 19 71 10 Psalms 19 70 11 Psalms 19 71 11 Psalms 19 70 12 Psalms 19 71 12 Psalms 19 70 13 Psalms 19 71 13 Psalms 19 70 14 Psalms 19 71 14 Psalms 19 70 15 Psalms 19 71 15 Psalms 19 70 16 Psalms 19 71 16 Psalms 19 70 17 Psalms 19 71 17 Psalms 19 70 18 Psalms 19 71 18 Psalms 19 70 19 Psalms 19 71 19 Psalms 19 70 20 Psalms 19 71 20 Psalms 19 70 21 Psalms 19 71 21 Psalms 19 70 22 Psalms 19 71 22 Psalms 19 70 23 Psalms 19 71 23 Psalms 19 70 24 Psalms 19 71 24 Psalms 19 71 1 Psalms 19 72 1 Psalms 19 71 2 Psalms 19 72 2 Psalms 19 71 3 Psalms 19 72 3 Psalms 19 71 4 Psalms 19 72 4 Psalms 19 71 5 Psalms 19 72 5 Psalms 19 71 6 Psalms 19 72 6 Psalms 19 71 7 Psalms 19 72 7 Psalms 19 71 8 Psalms 19 72 8 Psalms 19 71 9 Psalms 19 72 9 Psalms 19 71 10 Psalms 19 72 10 Psalms 19 71 11 Psalms 19 72 11 Psalms 19 71 12 Psalms 19 72 12 Psalms 19 71 13 Psalms 19 72 13 Psalms 19 71 14 Psalms 19 72 14 Psalms 19 71 15 Psalms 19 72 15 Psalms 19 71 16 Psalms 19 72 16 Psalms 19 71 17 Psalms 19 72 17 Psalms 19 71 18 Psalms 19 72 18 Psalms 19 71 19 Psalms 19 72 19 Psalms 19 71 20 Psalms 19 72 20 Psalms 19 72 1 Psalms 19 73 1 Psalms 19 72 2 Psalms 19 73 2 Psalms 19 72 3 Psalms 19 73 3 Psalms 19 72 4 Psalms 19 73 4 Psalms 19 72 5 Psalms 19 73 5 Psalms 19 72 6 Psalms 19 73 6 Psalms 19 72 7 Psalms 19 73 7 Psalms 19 72 8 Psalms 19 73 8 Psalms 19 72 9 Psalms 19 73 9 Psalms 19 72 10 Psalms 19 73 10 Psalms 19 72 11 Psalms 19 73 11 Psalms 19 72 12 Psalms 19 73 12 Psalms 19 72 13 Psalms 19 73 13 Psalms 19 72 14 Psalms 19 73 14 Psalms 19 72 15 Psalms 19 73 15 Psalms 19 72 16 Psalms 19 73 16 Psalms 19 72 17 Psalms 19 73 17 Psalms 19 72 18 Psalms 19 73 18 Psalms 19 72 19 Psalms 19 73 19 Psalms 19 72 20 Psalms 19 73 20 Psalms 19 72 21 Psalms 19 73 21 Psalms 19 72 22 Psalms 19 73 22 Psalms 19 72 23 Psalms 19 73 23 Psalms 19 72 24 Psalms 19 73 24 Psalms 19 72 25 Psalms 19 73 25 Psalms 19 72 26 Psalms 19 73 26 Psalms 19 72 27 Psalms 19 73 27 Psalms 19 72 28 Psalms 19 73 28 Psalms 19 73 1 Psalms 19 74 1 Psalms 19 73 2 Psalms 19 74 2 Psalms 19 73 3 Psalms 19 74 3 Psalms 19 73 4 Psalms 19 74 4 Psalms 19 73 5 Psalms 19 74 5 Psalms 19 73 6 Psalms 19 74 6 Psalms 19 73 7 Psalms 19 74 7 Psalms 19 73 8 Psalms 19 74 8 Psalms 19 73 9 Psalms 19 74 9 Psalms 19 73 10 Psalms 19 74 10 Psalms 19 73 11 Psalms 19 74 11 Psalms 19 73 12 Psalms 19 74 12 Psalms 19 73 13 Psalms 19 74 13 Psalms 19 73 14 Psalms 19 74 14 Psalms 19 73 15 Psalms 19 74 15 Psalms 19 73 16 Psalms 19 74 16 Psalms 19 73 17 Psalms 19 74 17 Psalms 19 73 18 Psalms 19 74 18 Psalms 19 73 19 Psalms 19 74 19 Psalms 19 73 20 Psalms 19 74 20 Psalms 19 73 21 Psalms 19 74 21 Psalms 19 73 22 Psalms 19 74 22 Psalms 19 73 23 Psalms 19 74 23 Psalms 19 74 1 Psalms 19 75 1 Psalms 19 74 2 Psalms 19 75 2 Psalms 19 74 3 Psalms 19 75 3 Psalms 19 74 4 Psalms 19 75 4 Psalms 19 74 5 Psalms 19 75 5 Psalms 19 74 6 Psalms 19 75 6 Psalms 19 74 7 Psalms 19 75 7 Psalms 19 74 8 Psalms 19 75 8 Psalms 19 74 9 Psalms 19 75 9 Psalms 19 74 10 Psalms 19 75 10 Psalms 19 74 11 Psalms 19 75 11 Psalms 19 75 1 Psalms 19 76 1 Psalms 19 75 2 Psalms 19 76 2 Psalms 19 75 3 Psalms 19 76 3 Psalms 19 75 4 Psalms 19 76 4 Psalms 19 75 5 Psalms 19 76 5 Psalms 19 75 6 Psalms 19 76 6 Psalms 19 75 7 Psalms 19 76 7 Psalms 19 75 8 Psalms 19 76 8 Psalms 19 75 9 Psalms 19 76 9 Psalms 19 75 10 Psalms 19 76 10 Psalms 19 75 11 Psalms 19 76 11 Psalms 19 75 12 Psalms 19 76 12 Psalms 19 75 13 Psalms 19 76 13 Psalms 19 76 1 Psalms 19 77 1 Psalms 19 76 2 Psalms 19 77 2 Psalms 19 76 3 Psalms 19 77 3 Psalms 19 76 4 Psalms 19 77 4 Psalms 19 76 5 Psalms 19 77 5 Psalms 19 76 6 Psalms 19 77 6 Psalms 19 76 7 Psalms 19 77 7 Psalms 19 76 8 Psalms 19 77 8 Psalms 19 76 9 Psalms 19 77 9 Psalms 19 76 10 Psalms 19 77 10 Psalms 19 76 11 Psalms 19 77 11 Psalms 19 76 12 Psalms 19 77 12 Psalms 19 76 13 Psalms 19 77 13 Psalms 19 76 14 Psalms 19 77 14 Psalms 19 76 15 Psalms 19 77 15 Psalms 19 76 16 Psalms 19 77 16 Psalms 19 76 17 Psalms 19 77 17 Psalms 19 76 18 Psalms 19 77 18 Psalms 19 76 19 Psalms 19 77 19 Psalms 19 76 20 Psalms 19 77 20 Psalms 19 76 21 Psalms 19 77 21 Psalms 19 77 1 Psalms 19 78 1 Psalms 19 77 2 Psalms 19 78 2 Psalms 19 77 3 Psalms 19 78 3 Psalms 19 77 4 Psalms 19 78 4 Psalms 19 77 5 Psalms 19 78 5 Psalms 19 77 6 Psalms 19 78 6 Psalms 19 77 7 Psalms 19 78 7 Psalms 19 77 8 Psalms 19 78 8 Psalms 19 77 9 Psalms 19 78 9 Psalms 19 77 10 Psalms 19 78 10 Psalms 19 77 11 Psalms 19 78 11 Psalms 19 77 12 Psalms 19 78 12 Psalms 19 77 13 Psalms 19 78 13 Psalms 19 77 14 Psalms 19 78 14 Psalms 19 77 15 Psalms 19 78 15 Psalms 19 77 16 Psalms 19 78 16 Psalms 19 77 17 Psalms 19 78 17 Psalms 19 77 18 Psalms 19 78 18 Psalms 19 77 19 Psalms 19 78 19 Psalms 19 77 20 Psalms 19 78 20 Psalms 19 77 21 Psalms 19 78 21 Psalms 19 77 22 Psalms 19 78 22 Psalms 19 77 23 Psalms 19 78 23 Psalms 19 77 24 Psalms 19 78 24 Psalms 19 77 25 Psalms 19 78 25 Psalms 19 77 26 Psalms 19 78 26 Psalms 19 77 27 Psalms 19 78 27 Psalms 19 77 28 Psalms 19 78 28 Psalms 19 77 29 Psalms 19 78 29 Psalms 19 77 30 Psalms 19 78 30 Psalms 19 77 31 Psalms 19 78 31 Psalms 19 77 32 Psalms 19 78 32 Psalms 19 77 33 Psalms 19 78 33 Psalms 19 77 34 Psalms 19 78 34 Psalms 19 77 35 Psalms 19 78 35 Psalms 19 77 36 Psalms 19 78 36 Psalms 19 77 37 Psalms 19 78 37 Psalms 19 77 38 Psalms 19 78 38 Psalms 19 77 39 Psalms 19 78 39 Psalms 19 77 40 Psalms 19 78 40 Psalms 19 77 41 Psalms 19 78 41 Psalms 19 77 42 Psalms 19 78 42 Psalms 19 77 43 Psalms 19 78 43 Psalms 19 77 44 Psalms 19 78 44 Psalms 19 77 45 Psalms 19 78 45 Psalms 19 77 46 Psalms 19 78 46 Psalms 19 77 47 Psalms 19 78 47 Psalms 19 77 48 Psalms 19 78 48 Psalms 19 77 49 Psalms 19 78 49 Psalms 19 77 50 Psalms 19 78 50 Psalms 19 77 51 Psalms 19 78 51 Psalms 19 77 52 Psalms 19 78 52 Psalms 19 77 53 Psalms 19 78 53 Psalms 19 77 54 Psalms 19 78 54 Psalms 19 77 55 Psalms 19 78 55 Psalms 19 77 56 Psalms 19 78 56 Psalms 19 77 57 Psalms 19 78 57 Psalms 19 77 58 Psalms 19 78 58 Psalms 19 77 59 Psalms 19 78 59 Psalms 19 77 60 Psalms 19 78 60 Psalms 19 77 61 Psalms 19 78 61 Psalms 19 77 62 Psalms 19 78 62 Psalms 19 77 63 Psalms 19 78 63 Psalms 19 77 64 Psalms 19 78 64 Psalms 19 77 65 Psalms 19 78 65 Psalms 19 77 66 Psalms 19 78 66 Psalms 19 77 67 Psalms 19 78 67 Psalms 19 77 68 Psalms 19 78 68 Psalms 19 77 69 Psalms 19 78 69 Psalms 19 77 70 Psalms 19 78 70 Psalms 19 77 71 Psalms 19 78 71 Psalms 19 77 72 Psalms 19 78 72 Psalms 19 78 1 Psalms 19 79 1 Psalms 19 78 2 Psalms 19 79 2 Psalms 19 78 3 Psalms 19 79 3 Psalms 19 78 4 Psalms 19 79 4 Psalms 19 78 5 Psalms 19 79 5 Psalms 19 78 6 Psalms 19 79 6 Psalms 19 78 7 Psalms 19 79 7 Psalms 19 78 8 Psalms 19 79 8 Psalms 19 78 9 Psalms 19 79 9 Psalms 19 78 10 Psalms 19 79 10 Psalms 19 78 11 Psalms 19 79 11 Psalms 19 78 12 Psalms 19 79 12 Psalms 19 78 13 Psalms 19 79 13 Psalms 19 79 1 Psalms 19 80 1 Psalms 19 79 2 Psalms 19 80 2 Psalms 19 79 3 Psalms 19 80 3 Psalms 19 79 4 Psalms 19 80 4 Psalms 19 79 5 Psalms 19 80 5 Psalms 19 79 6 Psalms 19 80 6 Psalms 19 79 7 Psalms 19 80 7 Psalms 19 79 8 Psalms 19 80 8 Psalms 19 79 9 Psalms 19 80 9 Psalms 19 79 10 Psalms 19 80 10 Psalms 19 79 11 Psalms 19 80 11 Psalms 19 79 12 Psalms 19 80 12 Psalms 19 79 13 Psalms 19 80 13 Psalms 19 79 14 Psalms 19 80 14 Psalms 19 79 15 Psalms 19 80 15 Psalms 19 79 16 Psalms 19 80 16 Psalms 19 79 17 Psalms 19 80 17 Psalms 19 79 18 Psalms 19 80 18 Psalms 19 79 19 Psalms 19 80 19 Psalms 19 79 20 Psalms 19 80 20 Psalms 19 80 1 Psalms 19 81 1 Psalms 19 80 2 Psalms 19 81 2 Psalms 19 80 3 Psalms 19 81 3 Psalms 19 80 4 Psalms 19 81 4 Psalms 19 80 5 Psalms 19 81 5 Psalms 19 80 6 Psalms 19 81 6 Psalms 19 80 7 Psalms 19 81 7 Psalms 19 80 8 Psalms 19 81 8 Psalms 19 80 9 Psalms 19 81 9 Psalms 19 80 10 Psalms 19 81 10 Psalms 19 80 11 Psalms 19 81 11 Psalms 19 80 12 Psalms 19 81 12 Psalms 19 80 13 Psalms 19 81 13 Psalms 19 80 14 Psalms 19 81 14 Psalms 19 80 15 Psalms 19 81 15 Psalms 19 80 16 Psalms 19 81 16 Psalms 19 80 17 Psalms 19 81 17 Psalms 19 81 1 Psalms 19 82 1 Psalms 19 81 2 Psalms 19 82 2 Psalms 19 81 3 Psalms 19 82 3 Psalms 19 81 4 Psalms 19 82 4 Psalms 19 81 5 Psalms 19 82 5 Psalms 19 81 6 Psalms 19 82 6 Psalms 19 81 7 Psalms 19 82 7 Psalms 19 81 8 Psalms 19 82 8 Psalms 19 82 1 Psalms 19 83 1 Psalms 19 82 2 Psalms 19 83 2 Psalms 19 82 3 Psalms 19 83 3 Psalms 19 82 4 Psalms 19 83 4 Psalms 19 82 5 Psalms 19 83 5 Psalms 19 82 6 Psalms 19 83 6 Psalms 19 82 7 Psalms 19 83 7 Psalms 19 82 8 Psalms 19 83 8 Psalms 19 82 9 Psalms 19 83 9 Psalms 19 82 10 Psalms 19 83 10 Psalms 19 82 11 Psalms 19 83 11 Psalms 19 82 12 Psalms 19 83 12 Psalms 19 82 13 Psalms 19 83 13 Psalms 19 82 14 Psalms 19 83 14 Psalms 19 82 15 Psalms 19 83 15 Psalms 19 82 16 Psalms 19 83 16 Psalms 19 82 17 Psalms 19 83 17 Psalms 19 82 18 Psalms 19 83 18 Psalms 19 82 19 Psalms 19 83 19 Psalms 19 83 1 Psalms 19 84 1 Psalms 19 83 2 Psalms 19 84 2 Psalms 19 83 3 Psalms 19 84 3 Psalms 19 83 4 Psalms 19 84 4 Psalms 19 83 5 Psalms 19 84 5 Psalms 19 83 6 Psalms 19 84 6 Psalms 19 83 7 Psalms 19 84 7 Psalms 19 83 8 Psalms 19 84 8 Psalms 19 83 9 Psalms 19 84 9 Psalms 19 83 10 Psalms 19 84 10 Psalms 19 83 11 Psalms 19 84 11 Psalms 19 83 12 Psalms 19 84 12 Psalms 19 83 13 Psalms 19 84 13 Psalms 19 84 1 Psalms 19 85 1 Psalms 19 84 2 Psalms 19 85 2 Psalms 19 84 3 Psalms 19 85 3 Psalms 19 84 4 Psalms 19 85 4 Psalms 19 84 5 Psalms 19 85 5 Psalms 19 84 6 Psalms 19 85 6 Psalms 19 84 7 Psalms 19 85 7 Psalms 19 84 8 Psalms 19 85 8 Psalms 19 84 9 Psalms 19 85 9 Psalms 19 84 10 Psalms 19 85 10 Psalms 19 84 11 Psalms 19 85 11 Psalms 19 84 12 Psalms 19 85 12 Psalms 19 84 13 Psalms 19 85 13 Psalms 19 84 14 Psalms 19 85 14 Psalms 19 85 1 Psalms 19 86 1 Psalms 19 85 2 Psalms 19 86 2 Psalms 19 85 3 Psalms 19 86 3 Psalms 19 85 4 Psalms 19 86 4 Psalms 19 85 5 Psalms 19 86 5 Psalms 19 85 6 Psalms 19 86 6 Psalms 19 85 7 Psalms 19 86 7 Psalms 19 85 8 Psalms 19 86 8 Psalms 19 85 9 Psalms 19 86 9 Psalms 19 85 10 Psalms 19 86 10 Psalms 19 85 11 Psalms 19 86 11 Psalms 19 85 12 Psalms 19 86 12 Psalms 19 85 13 Psalms 19 86 13 Psalms 19 85 14 Psalms 19 86 14 Psalms 19 85 15 Psalms 19 86 15 Psalms 19 85 16 Psalms 19 86 16 Psalms 19 85 17 Psalms 19 86 17 Psalms 19 86 1 Psalms 19 87 1 Psalms 19 86 2 Psalms 19 87 1 Psalms 19 86 2 Psalms 19 87 2 Psalms 19 86 3 Psalms 19 87 3 Psalms 19 86 4 Psalms 19 87 4 Psalms 19 86 5 Psalms 19 87 5 Psalms 19 86 6 Psalms 19 87 6 Psalms 19 86 7 Psalms 19 87 7 Psalms 19 87 1 Psalms 19 88 1 Psalms 19 87 2 Psalms 19 88 2 Psalms 19 87 3 Psalms 19 88 3 Psalms 19 87 4 Psalms 19 88 4 Psalms 19 87 5 Psalms 19 88 5 Psalms 19 87 6 Psalms 19 88 6 Psalms 19 87 7 Psalms 19 88 7 Psalms 19 87 8 Psalms 19 88 8 Psalms 19 87 9 Psalms 19 88 9 Psalms 19 87 10 Psalms 19 88 10 Psalms 19 87 11 Psalms 19 88 11 Psalms 19 87 12 Psalms 19 88 12 Psalms 19 87 13 Psalms 19 88 13 Psalms 19 87 14 Psalms 19 88 14 Psalms 19 87 15 Psalms 19 88 15 Psalms 19 87 16 Psalms 19 88 16 Psalms 19 87 17 Psalms 19 88 17 Psalms 19 87 18 Psalms 19 88 18 Psalms 19 87 19 Psalms 19 88 19 Psalms 19 88 1 Psalms 19 89 1 Psalms 19 88 2 Psalms 19 89 2 Psalms 19 88 3 Psalms 19 89 3 Psalms 19 88 4 Psalms 19 89 4 Psalms 19 88 5 Psalms 19 89 5 Psalms 19 88 6 Psalms 19 89 6 Psalms 19 88 7 Psalms 19 89 7 Psalms 19 88 8 Psalms 19 89 8 Psalms 19 88 9 Psalms 19 89 9 Psalms 19 88 10 Psalms 19 89 10 Psalms 19 88 11 Psalms 19 89 11 Psalms 19 88 12 Psalms 19 89 12 Psalms 19 88 13 Psalms 19 89 13 Psalms 19 88 14 Psalms 19 89 14 Psalms 19 88 15 Psalms 19 89 15 Psalms 19 88 16 Psalms 19 89 16 Psalms 19 88 17 Psalms 19 89 17 Psalms 19 88 18 Psalms 19 89 18 Psalms 19 88 19 Psalms 19 89 19 Psalms 19 88 20 Psalms 19 89 20 Psalms 19 88 21 Psalms 19 89 21 Psalms 19 88 22 Psalms 19 89 22 Psalms 19 88 23 Psalms 19 89 23 Psalms 19 88 24 Psalms 19 89 24 Psalms 19 88 25 Psalms 19 89 25 Psalms 19 88 26 Psalms 19 89 26 Psalms 19 88 27 Psalms 19 89 27 Psalms 19 88 28 Psalms 19 89 28 Psalms 19 88 29 Psalms 19 89 29 Psalms 19 88 30 Psalms 19 89 30 Psalms 19 88 31 Psalms 19 89 31 Psalms 19 88 32 Psalms 19 89 32 Psalms 19 88 33 Psalms 19 89 33 Psalms 19 88 34 Psalms 19 89 34 Psalms 19 88 35 Psalms 19 89 35 Psalms 19 88 36 Psalms 19 89 36 Psalms 19 88 37 Psalms 19 89 37 Psalms 19 88 38 Psalms 19 89 38 Psalms 19 88 39 Psalms 19 89 39 Psalms 19 88 40 Psalms 19 89 40 Psalms 19 88 41 Psalms 19 89 41 Psalms 19 88 42 Psalms 19 89 42 Psalms 19 88 43 Psalms 19 89 43 Psalms 19 88 44 Psalms 19 89 44 Psalms 19 88 45 Psalms 19 89 45 Psalms 19 88 46 Psalms 19 89 46 Psalms 19 88 47 Psalms 19 89 47 Psalms 19 88 48 Psalms 19 89 48 Psalms 19 88 49 Psalms 19 89 49 Psalms 19 88 50 Psalms 19 89 50 Psalms 19 88 51 Psalms 19 89 51 Psalms 19 88 52 Psalms 19 89 52 Psalms 19 88 53 Psalms 19 89 53 Psalms 19 89 2 Psalms 19 90 1 Psalms 19 89 3 Psalms 19 90 2 Psalms 19 89 4 Psalms 19 90 3 Psalms 19 89 5 Psalms 19 90 4 Psalms 19 89 6 Psalms 19 90 5 Psalms 19 89 7 Psalms 19 90 7 Psalms 19 89 8 Psalms 19 90 8 Psalms 19 89 9 Psalms 19 90 9 Psalms 19 89 10 Psalms 19 90 10 Psalms 19 89 11 Psalms 19 90 11 Psalms 19 89 12 Psalms 19 90 12 Psalms 19 89 13 Psalms 19 90 13 Psalms 19 89 14 Psalms 19 90 14 Psalms 19 89 15 Psalms 19 90 15 Psalms 19 89 16 Psalms 19 90 16 Psalms 19 89 17 Psalms 19 90 17 Psalms 19 90 1 Psalms 19 91 1 Psalms 19 90 2 Psalms 19 91 2 Psalms 19 90 3 Psalms 19 91 3 Psalms 19 90 4 Psalms 19 91 4 Psalms 19 90 5 Psalms 19 91 5 Psalms 19 90 6 Psalms 19 91 6 Psalms 19 90 7 Psalms 19 91 7 Psalms 19 90 8 Psalms 19 91 8 Psalms 19 90 9 Psalms 19 91 9 Psalms 19 90 10 Psalms 19 91 10 Psalms 19 90 11 Psalms 19 91 11 Psalms 19 90 12 Psalms 19 91 12 Psalms 19 90 13 Psalms 19 91 13 Psalms 19 90 14 Psalms 19 91 14 Psalms 19 90 15 Psalms 19 91 15 Psalms 19 90 16 Psalms 19 91 16 Psalms 19 91 1 Psalms 19 92 1 Psalms 19 91 2 Psalms 19 92 2 Psalms 19 91 3 Psalms 19 92 3 Psalms 19 91 4 Psalms 19 92 4 Psalms 19 91 5 Psalms 19 92 5 Psalms 19 91 6 Psalms 19 92 6 Psalms 19 91 7 Psalms 19 92 7 Psalms 19 91 8 Psalms 19 92 8 Psalms 19 91 9 Psalms 19 92 9 Psalms 19 91 10 Psalms 19 92 10 Psalms 19 91 11 Psalms 19 92 11 Psalms 19 91 12 Psalms 19 92 12 Psalms 19 91 13 Psalms 19 92 13 Psalms 19 91 14 Psalms 19 92 14 Psalms 19 91 15 Psalms 19 92 15 Psalms 19 91 16 Psalms 19 92 16 Psalms 19 92 1 Psalms 19 93 1 Psalms 19 92 2 Psalms 19 93 2 Psalms 19 92 3 Psalms 19 93 3 Psalms 19 92 4 Psalms 19 93 4 Psalms 19 92 5 Psalms 19 93 5 Psalms 19 93 1 Psalms 19 94 1 Psalms 19 93 2 Psalms 19 94 2 Psalms 19 93 3 Psalms 19 94 3 Psalms 19 93 4 Psalms 19 94 4 Psalms 19 93 5 Psalms 19 94 5 Psalms 19 93 6 Psalms 19 94 6 Psalms 19 93 7 Psalms 19 94 7 Psalms 19 93 8 Psalms 19 94 8 Psalms 19 93 9 Psalms 19 94 9 Psalms 19 93 10 Psalms 19 94 10 Psalms 19 93 11 Psalms 19 94 11 Psalms 19 93 12 Psalms 19 94 12 Psalms 19 93 13 Psalms 19 94 13 Psalms 19 93 14 Psalms 19 94 14 Psalms 19 93 15 Psalms 19 94 15 Psalms 19 93 16 Psalms 19 94 16 Psalms 19 93 17 Psalms 19 94 17 Psalms 19 93 18 Psalms 19 94 18 Psalms 19 93 19 Psalms 19 94 19 Psalms 19 93 20 Psalms 19 94 20 Psalms 19 93 21 Psalms 19 94 21 Psalms 19 93 22 Psalms 19 94 22 Psalms 19 93 23 Psalms 19 94 23 Psalms 19 94 1 Psalms 19 95 1 Psalms 19 94 2 Psalms 19 95 2 Psalms 19 94 3 Psalms 19 95 3 Psalms 19 94 4 Psalms 19 95 4 Psalms 19 94 5 Psalms 19 95 5 Psalms 19 94 6 Psalms 19 95 6 Psalms 19 94 7 Psalms 19 95 7 Psalms 19 94 8 Psalms 19 95 8 Psalms 19 94 9 Psalms 19 95 9 Psalms 19 94 10 Psalms 19 95 10 Psalms 19 94 11 Psalms 19 95 11 Psalms 19 95 1 Psalms 19 96 1 Psalms 19 95 2 Psalms 19 96 2 Psalms 19 95 3 Psalms 19 96 3 Psalms 19 95 4 Psalms 19 96 4 Psalms 19 95 5 Psalms 19 96 5 Psalms 19 95 6 Psalms 19 96 6 Psalms 19 95 7 Psalms 19 96 7 Psalms 19 95 8 Psalms 19 96 8 Psalms 19 95 9 Psalms 19 96 9 Psalms 19 95 10 Psalms 19 96 10 Psalms 19 95 11 Psalms 19 96 11 Psalms 19 95 12 Psalms 19 96 12 Psalms 19 95 13 Psalms 19 96 13 Psalms 19 96 1 Psalms 19 97 1 Psalms 19 96 2 Psalms 19 97 2 Psalms 19 96 3 Psalms 19 97 3 Psalms 19 96 4 Psalms 19 97 4 Psalms 19 96 5 Psalms 19 97 5 Psalms 19 96 6 Psalms 19 97 6 Psalms 19 96 7 Psalms 19 97 7 Psalms 19 96 8 Psalms 19 97 8 Psalms 19 96 9 Psalms 19 97 9 Psalms 19 96 10 Psalms 19 97 10 Psalms 19 96 11 Psalms 19 97 11 Psalms 19 96 12 Psalms 19 97 12 Psalms 19 97 1 Psalms 19 98 1 Psalms 19 97 2 Psalms 19 98 2 Psalms 19 97 3 Psalms 19 98 3 Psalms 19 97 4 Psalms 19 98 4 Psalms 19 97 5 Psalms 19 98 5 Psalms 19 97 6 Psalms 19 98 6 Psalms 19 97 7 Psalms 19 98 7 Psalms 19 97 8 Psalms 19 98 8 Psalms 19 97 9 Psalms 19 98 9 Psalms 19 98 1 Psalms 19 99 1 Psalms 19 98 2 Psalms 19 99 2 Psalms 19 98 3 Psalms 19 99 3 Psalms 19 98 4 Psalms 19 99 4 Psalms 19 98 5 Psalms 19 99 5 Psalms 19 98 6 Psalms 19 99 6 Psalms 19 98 7 Psalms 19 99 7 Psalms 19 98 8 Psalms 19 99 8 Psalms 19 98 9 Psalms 19 99 9 Psalms 19 99 1 Psalms 19 100 1 Psalms 19 99 2 Psalms 19 100 2 Psalms 19 99 3 Psalms 19 100 3 Psalms 19 99 4 Psalms 19 100 4 Psalms 19 99 5 Psalms 19 100 5 Psalms 19 100 1 Psalms 19 101 1 Psalms 19 100 2 Psalms 19 101 2 Psalms 19 100 3 Psalms 19 101 3 Psalms 19 100 4 Psalms 19 101 4 Psalms 19 100 5 Psalms 19 101 5 Psalms 19 100 6 Psalms 19 101 6 Psalms 19 100 7 Psalms 19 101 7 Psalms 19 100 8 Psalms 19 101 8 Psalms 19 101 1 Psalms 19 102 1 Psalms 19 101 2 Psalms 19 102 2 Psalms 19 101 3 Psalms 19 102 3 Psalms 19 101 4 Psalms 19 102 4 Psalms 19 101 5 Psalms 19 102 5 Psalms 19 101 6 Psalms 19 102 6 Psalms 19 101 7 Psalms 19 102 7 Psalms 19 101 8 Psalms 19 102 8 Psalms 19 101 9 Psalms 19 102 9 Psalms 19 101 10 Psalms 19 102 10 Psalms 19 101 11 Psalms 19 102 11 Psalms 19 101 12 Psalms 19 102 12 Psalms 19 101 13 Psalms 19 102 13 Psalms 19 101 14 Psalms 19 102 14 Psalms 19 101 15 Psalms 19 102 15 Psalms 19 101 16 Psalms 19 102 16 Psalms 19 101 17 Psalms 19 102 17 Psalms 19 101 18 Psalms 19 102 18 Psalms 19 101 19 Psalms 19 102 19 Psalms 19 101 20 Psalms 19 102 20 Psalms 19 101 21 Psalms 19 102 21 Psalms 19 101 22 Psalms 19 102 22 Psalms 19 101 23 Psalms 19 102 23 Psalms 19 101 24 Psalms 19 102 24 Psalms 19 101 25 Psalms 19 102 25 Psalms 19 101 26 Psalms 19 102 26 Psalms 19 101 27 Psalms 19 102 27 Psalms 19 101 28 Psalms 19 102 28 Psalms 19 101 29 Psalms 19 102 29 Psalms 19 102 1 Psalms 19 103 1 Psalms 19 102 2 Psalms 19 103 2 Psalms 19 102 3 Psalms 19 103 3 Psalms 19 102 4 Psalms 19 103 4 Psalms 19 102 5 Psalms 19 103 5 Psalms 19 102 6 Psalms 19 103 6 Psalms 19 102 7 Psalms 19 103 7 Psalms 19 102 8 Psalms 19 103 8 Psalms 19 102 9 Psalms 19 103 9 Psalms 19 102 10 Psalms 19 103 10 Psalms 19 102 11 Psalms 19 103 11 Psalms 19 102 12 Psalms 19 103 12 Psalms 19 102 13 Psalms 19 103 13 Psalms 19 102 14 Psalms 19 103 14 Psalms 19 102 15 Psalms 19 103 15 Psalms 19 102 16 Psalms 19 103 16 Psalms 19 102 17 Psalms 19 103 17 Psalms 19 102 18 Psalms 19 103 18 Psalms 19 102 19 Psalms 19 103 19 Psalms 19 102 20 Psalms 19 103 20 Psalms 19 102 21 Psalms 19 103 21 Psalms 19 102 22 Psalms 19 103 22 Psalms 19 103 1 Psalms 19 104 1 Psalms 19 103 2 Psalms 19 104 2 Psalms 19 103 3 Psalms 19 104 3 Psalms 19 103 4 Psalms 19 104 4 Psalms 19 103 5 Psalms 19 104 5 Psalms 19 103 6 Psalms 19 104 6 Psalms 19 103 7 Psalms 19 104 7 Psalms 19 103 8 Psalms 19 104 8 Psalms 19 103 9 Psalms 19 104 9 Psalms 19 103 10 Psalms 19 104 10 Psalms 19 103 11 Psalms 19 104 11 Psalms 19 103 12 Psalms 19 104 12 Psalms 19 103 13 Psalms 19 104 13 Psalms 19 103 14 Psalms 19 104 14 Psalms 19 103 15 Psalms 19 104 15 Psalms 19 103 16 Psalms 19 104 16 Psalms 19 103 17 Psalms 19 104 17 Psalms 19 103 18 Psalms 19 104 18 Psalms 19 103 19 Psalms 19 104 19 Psalms 19 103 20 Psalms 19 104 20 Psalms 19 103 21 Psalms 19 104 21 Psalms 19 103 22 Psalms 19 104 22 Psalms 19 103 23 Psalms 19 104 23 Psalms 19 103 24 Psalms 19 104 24 Psalms 19 103 25 Psalms 19 104 25 Psalms 19 103 26 Psalms 19 104 26 Psalms 19 103 27 Psalms 19 104 27 Psalms 19 103 28 Psalms 19 104 28 Psalms 19 103 29 Psalms 19 104 29 Psalms 19 103 30 Psalms 19 104 30 Psalms 19 103 31 Psalms 19 104 31 Psalms 19 103 32 Psalms 19 104 32 Psalms 19 103 33 Psalms 19 104 33 Psalms 19 103 34 Psalms 19 104 34 Psalms 19 103 35 Psalms 19 104 35 Psalms 19 104 1 Psalms 19 105 1 Psalms 19 104 2 Psalms 19 105 2 Psalms 19 104 3 Psalms 19 105 3 Psalms 19 104 4 Psalms 19 105 4 Psalms 19 104 5 Psalms 19 105 5 Psalms 19 104 6 Psalms 19 105 6 Psalms 19 104 7 Psalms 19 105 7 Psalms 19 104 8 Psalms 19 105 8 Psalms 19 104 9 Psalms 19 105 9 Psalms 19 104 10 Psalms 19 105 10 Psalms 19 104 11 Psalms 19 105 11 Psalms 19 104 12 Psalms 19 105 12 Psalms 19 104 13 Psalms 19 105 13 Psalms 19 104 14 Psalms 19 105 14 Psalms 19 104 15 Psalms 19 105 15 Psalms 19 104 16 Psalms 19 105 16 Psalms 19 104 17 Psalms 19 105 17 Psalms 19 104 18 Psalms 19 105 18 Psalms 19 104 19 Psalms 19 105 19 Psalms 19 104 20 Psalms 19 105 20 Psalms 19 104 21 Psalms 19 105 21 Psalms 19 104 22 Psalms 19 105 22 Psalms 19 104 23 Psalms 19 105 23 Psalms 19 104 24 Psalms 19 105 24 Psalms 19 104 25 Psalms 19 105 25 Psalms 19 104 26 Psalms 19 105 26 Psalms 19 104 27 Psalms 19 105 27 Psalms 19 104 28 Psalms 19 105 28 Psalms 19 104 29 Psalms 19 105 29 Psalms 19 104 30 Psalms 19 105 30 Psalms 19 104 31 Psalms 19 105 31 Psalms 19 104 32 Psalms 19 105 32 Psalms 19 104 33 Psalms 19 105 33 Psalms 19 104 34 Psalms 19 105 34 Psalms 19 104 35 Psalms 19 105 35 Psalms 19 104 36 Psalms 19 105 36 Psalms 19 104 37 Psalms 19 105 37 Psalms 19 104 38 Psalms 19 105 38 Psalms 19 104 39 Psalms 19 105 39 Psalms 19 104 40 Psalms 19 105 40 Psalms 19 104 41 Psalms 19 105 41 Psalms 19 104 42 Psalms 19 105 42 Psalms 19 104 43 Psalms 19 105 43 Psalms 19 104 44 Psalms 19 105 44 Psalms 19 104 45 Psalms 19 105 45 Psalms 19 105 1 Psalms 19 106 1 Psalms 19 105 2 Psalms 19 106 2 Psalms 19 105 3 Psalms 19 106 3 Psalms 19 105 4 Psalms 19 106 4 Psalms 19 105 5 Psalms 19 106 5 Psalms 19 105 6 Psalms 19 106 6 Psalms 19 105 7 Psalms 19 106 7 Psalms 19 105 8 Psalms 19 106 8 Psalms 19 105 9 Psalms 19 106 9 Psalms 19 105 10 Psalms 19 106 10 Psalms 19 105 11 Psalms 19 106 11 Psalms 19 105 12 Psalms 19 106 12 Psalms 19 105 13 Psalms 19 106 13 Psalms 19 105 14 Psalms 19 106 14 Psalms 19 105 15 Psalms 19 106 15 Psalms 19 105 16 Psalms 19 106 16 Psalms 19 105 17 Psalms 19 106 17 Psalms 19 105 18 Psalms 19 106 18 Psalms 19 105 19 Psalms 19 106 19 Psalms 19 105 20 Psalms 19 106 20 Psalms 19 105 21 Psalms 19 106 21 Psalms 19 105 22 Psalms 19 106 22 Psalms 19 105 23 Psalms 19 106 23 Psalms 19 105 24 Psalms 19 106 24 Psalms 19 105 25 Psalms 19 106 25 Psalms 19 105 26 Psalms 19 106 26 Psalms 19 105 27 Psalms 19 106 27 Psalms 19 105 28 Psalms 19 106 28 Psalms 19 105 29 Psalms 19 106 29 Psalms 19 105 30 Psalms 19 106 30 Psalms 19 105 31 Psalms 19 106 31 Psalms 19 105 32 Psalms 19 106 32 Psalms 19 105 33 Psalms 19 106 33 Psalms 19 105 34 Psalms 19 106 34 Psalms 19 105 35 Psalms 19 106 35 Psalms 19 105 36 Psalms 19 106 36 Psalms 19 105 37 Psalms 19 106 37 Psalms 19 105 38 Psalms 19 106 38 Psalms 19 105 39 Psalms 19 106 39 Psalms 19 105 40 Psalms 19 106 40 Psalms 19 105 41 Psalms 19 106 41 Psalms 19 105 42 Psalms 19 106 42 Psalms 19 105 43 Psalms 19 106 43 Psalms 19 105 44 Psalms 19 106 44 Psalms 19 105 45 Psalms 19 106 45 Psalms 19 105 46 Psalms 19 106 46 Psalms 19 105 47 Psalms 19 106 47 Psalms 19 105 48 Psalms 19 106 48 Psalms 19 106 1 Psalms 19 107 1 Psalms 19 106 2 Psalms 19 107 2 Psalms 19 106 3 Psalms 19 107 3 Psalms 19 106 4 Psalms 19 107 4 Psalms 19 106 5 Psalms 19 107 5 Psalms 19 106 6 Psalms 19 107 6 Psalms 19 106 7 Psalms 19 107 7 Psalms 19 106 8 Psalms 19 107 8 Psalms 19 106 9 Psalms 19 107 9 Psalms 19 106 10 Psalms 19 107 10 Psalms 19 106 11 Psalms 19 107 11 Psalms 19 106 12 Psalms 19 107 12 Psalms 19 106 13 Psalms 19 107 13 Psalms 19 106 14 Psalms 19 107 14 Psalms 19 106 15 Psalms 19 107 15 Psalms 19 106 16 Psalms 19 107 16 Psalms 19 106 17 Psalms 19 107 17 Psalms 19 106 18 Psalms 19 107 18 Psalms 19 106 19 Psalms 19 107 19 Psalms 19 106 20 Psalms 19 107 20 Psalms 19 106 21 Psalms 19 107 21 Psalms 19 106 22 Psalms 19 107 22 Psalms 19 106 23 Psalms 19 107 23 Psalms 19 106 24 Psalms 19 107 24 Psalms 19 106 25 Psalms 19 107 25 Psalms 19 106 26 Psalms 19 107 26 Psalms 19 106 27 Psalms 19 107 27 Psalms 19 106 28 Psalms 19 107 28 Psalms 19 106 29 Psalms 19 107 29 Psalms 19 106 30 Psalms 19 107 30 Psalms 19 106 31 Psalms 19 107 31 Psalms 19 106 32 Psalms 19 107 32 Psalms 19 106 33 Psalms 19 107 33 Psalms 19 106 34 Psalms 19 107 34 Psalms 19 106 35 Psalms 19 107 35 Psalms 19 106 36 Psalms 19 107 36 Psalms 19 106 37 Psalms 19 107 37 Psalms 19 106 38 Psalms 19 107 38 Psalms 19 106 39 Psalms 19 107 39 Psalms 19 106 40 Psalms 19 107 40 Psalms 19 106 41 Psalms 19 107 41 Psalms 19 106 42 Psalms 19 107 42 Psalms 19 106 43 Psalms 19 107 43 Psalms 19 107 1 Psalms 19 108 1 Psalms 19 107 2 Psalms 19 108 2 Psalms 19 107 3 Psalms 19 108 3 Psalms 19 107 4 Psalms 19 108 4 Psalms 19 107 5 Psalms 19 108 5 Psalms 19 107 6 Psalms 19 108 6 Psalms 19 107 7 Psalms 19 108 7 Psalms 19 107 8 Psalms 19 108 8 Psalms 19 107 9 Psalms 19 108 9 Psalms 19 107 10 Psalms 19 108 10 Psalms 19 107 11 Psalms 19 108 11 Psalms 19 107 12 Psalms 19 108 12 Psalms 19 107 13 Psalms 19 108 13 Psalms 19 107 14 Psalms 19 108 14 Psalms 19 108 1 Psalms 19 109 1 Psalms 19 108 2 Psalms 19 109 2 Psalms 19 108 3 Psalms 19 109 3 Psalms 19 108 4 Psalms 19 109 4 Psalms 19 108 5 Psalms 19 109 5 Psalms 19 108 6 Psalms 19 109 6 Psalms 19 108 7 Psalms 19 109 7 Psalms 19 108 8 Psalms 19 109 8 Psalms 19 108 9 Psalms 19 109 9 Psalms 19 108 10 Psalms 19 109 10 Psalms 19 108 11 Psalms 19 109 11 Psalms 19 108 12 Psalms 19 109 12 Psalms 19 108 13 Psalms 19 109 13 Psalms 19 108 14 Psalms 19 109 14 Psalms 19 108 15 Psalms 19 109 15 Psalms 19 108 16 Psalms 19 109 16 Psalms 19 108 17 Psalms 19 109 17 Psalms 19 108 18 Psalms 19 109 18 Psalms 19 108 19 Psalms 19 109 19 Psalms 19 108 20 Psalms 19 109 20 Psalms 19 108 21 Psalms 19 109 21 Psalms 19 108 22 Psalms 19 109 22 Psalms 19 108 23 Psalms 19 109 23 Psalms 19 108 24 Psalms 19 109 24 Psalms 19 108 25 Psalms 19 109 25 Psalms 19 108 26 Psalms 19 109 26 Psalms 19 108 27 Psalms 19 109 27 Psalms 19 108 28 Psalms 19 109 28 Psalms 19 108 29 Psalms 19 109 29 Psalms 19 108 30 Psalms 19 109 30 Psalms 19 108 31 Psalms 19 109 31 Psalms 19 109 1 Psalms 19 110 1 Psalms 19 109 2 Psalms 19 110 2 Psalms 19 109 3 Psalms 19 110 3 Psalms 19 109 4 Psalms 19 110 4 Psalms 19 109 5 Psalms 19 110 5 Psalms 19 109 6 Psalms 19 110 6 Psalms 19 109 7 Psalms 19 110 7 Psalms 19 110 1 Psalms 19 111 1 Psalms 19 110 2 Psalms 19 111 2 Psalms 19 110 3 Psalms 19 111 3 Psalms 19 110 4 Psalms 19 111 4 Psalms 19 110 5 Psalms 19 111 5 Psalms 19 110 6 Psalms 19 111 6 Psalms 19 110 7 Psalms 19 111 7 Psalms 19 110 8 Psalms 19 111 8 Psalms 19 110 9 Psalms 19 111 9 Psalms 19 110 10 Psalms 19 111 10 Psalms 19 111 1 Psalms 19 112 1 Psalms 19 111 2 Psalms 19 112 2 Psalms 19 111 3 Psalms 19 112 3 Psalms 19 111 4 Psalms 19 112 4 Psalms 19 111 5 Psalms 19 112 5 Psalms 19 111 6 Psalms 19 112 6 Psalms 19 111 7 Psalms 19 112 7 Psalms 19 111 8 Psalms 19 112 8 Psalms 19 111 9 Psalms 19 112 9 Psalms 19 111 10 Psalms 19 112 10 Psalms 19 112 1 Psalms 19 113 1 Psalms 19 112 2 Psalms 19 113 2 Psalms 19 112 3 Psalms 19 113 3 Psalms 19 112 4 Psalms 19 113 4 Psalms 19 112 5 Psalms 19 113 5 Psalms 19 112 6 Psalms 19 113 6 Psalms 19 112 7 Psalms 19 113 7 Psalms 19 112 8 Psalms 19 113 8 Psalms 19 112 9 Psalms 19 113 9 Psalms 19 113 1 Psalms 19 114 1 Psalms 19 113 2 Psalms 19 114 2 Psalms 19 113 3 Psalms 19 114 3 Psalms 19 113 4 Psalms 19 114 4 Psalms 19 113 5 Psalms 19 114 5 Psalms 19 113 6 Psalms 19 114 6 Psalms 19 113 7 Psalms 19 114 7 Psalms 19 113 8 Psalms 19 114 8 Psalms 19 113 9 Psalms 19 115 1 Psalms 19 113 10 Psalms 19 115 2 Psalms 19 113 11 Psalms 19 115 3 Psalms 19 113 12 Psalms 19 115 4 Psalms 19 113 13 Psalms 19 115 5 Psalms 19 113 14 Psalms 19 115 6 Psalms 19 113 15 Psalms 19 115 7 Psalms 19 113 16 Psalms 19 115 8 Psalms 19 113 17 Psalms 19 115 9 Psalms 19 113 18 Psalms 19 115 10 Psalms 19 113 19 Psalms 19 115 11 Psalms 19 113 20 Psalms 19 115 12 Psalms 19 113 21 Psalms 19 115 13 Psalms 19 113 22 Psalms 19 115 14 Psalms 19 113 23 Psalms 19 115 15 Psalms 19 113 24 Psalms 19 115 16 Psalms 19 113 25 Psalms 19 115 17 Psalms 19 113 26 Psalms 19 115 18 Psalms 19 114 1 Psalms 19 116 1 Psalms 19 114 2 Psalms 19 116 2 Psalms 19 114 3 Psalms 19 116 3 Psalms 19 114 4 Psalms 19 116 4 Psalms 19 114 5 Psalms 19 116 5 Psalms 19 114 6 Psalms 19 116 6 Psalms 19 114 7 Psalms 19 116 7 Psalms 19 114 8 Psalms 19 116 8 Psalms 19 114 9 Psalms 19 116 9 Psalms 19 115 1 Psalms 19 116 10 Psalms 19 115 2 Psalms 19 116 11 Psalms 19 115 3 Psalms 19 116 12 Psalms 19 115 4 Psalms 19 116 13 Psalms 19 115 5 Psalms 19 116 14 Psalms 19 115 6 Psalms 19 116 15 Psalms 19 115 7 Psalms 19 116 16 Psalms 19 115 8 Psalms 19 116 17 Psalms 19 115 9 Psalms 19 116 18 Psalms 19 115 10 Psalms 19 116 19 Psalms 19 116 1 Psalms 19 117 1 Psalms 19 116 2 Psalms 19 117 2 Psalms 19 117 1 Psalms 19 118 1 Psalms 19 117 2 Psalms 19 118 2 Psalms 19 117 3 Psalms 19 118 3 Psalms 19 117 4 Psalms 19 118 4 Psalms 19 117 5 Psalms 19 118 5 Psalms 19 117 6 Psalms 19 118 6 Psalms 19 117 7 Psalms 19 118 7 Psalms 19 117 8 Psalms 19 118 8 Psalms 19 117 9 Psalms 19 118 9 Psalms 19 117 10 Psalms 19 118 10 Psalms 19 117 11 Psalms 19 118 11 Psalms 19 117 12 Psalms 19 118 12 Psalms 19 117 13 Psalms 19 118 13 Psalms 19 117 14 Psalms 19 118 14 Psalms 19 117 15 Psalms 19 118 15 Psalms 19 117 16 Psalms 19 118 16 Psalms 19 117 17 Psalms 19 118 17 Psalms 19 117 18 Psalms 19 118 18 Psalms 19 117 19 Psalms 19 118 19 Psalms 19 117 20 Psalms 19 118 20 Psalms 19 117 21 Psalms 19 118 21 Psalms 19 117 22 Psalms 19 118 22 Psalms 19 117 23 Psalms 19 118 23 Psalms 19 117 24 Psalms 19 118 24 Psalms 19 117 25 Psalms 19 118 25 Psalms 19 117 26 Psalms 19 118 26 Psalms 19 117 27 Psalms 19 118 27 Psalms 19 117 28 Psalms 19 118 28 Psalms 19 117 29 Psalms 19 118 29 Psalms 19 118 1 Psalms 19 119 1 Psalms 19 118 2 Psalms 19 119 2 Psalms 19 118 3 Psalms 19 119 3 Psalms 19 118 4 Psalms 19 119 4 Psalms 19 118 5 Psalms 19 119 5 Psalms 19 118 6 Psalms 19 119 6 Psalms 19 118 7 Psalms 19 119 7 Psalms 19 118 8 Psalms 19 119 8 Psalms 19 118 9 Psalms 19 119 9 Psalms 19 118 10 Psalms 19 119 10 Psalms 19 118 11 Psalms 19 119 11 Psalms 19 118 12 Psalms 19 119 12 Psalms 19 118 13 Psalms 19 119 13 Psalms 19 118 14 Psalms 19 119 14 Psalms 19 118 15 Psalms 19 119 15 Psalms 19 118 16 Psalms 19 119 16 Psalms 19 118 17 Psalms 19 119 17 Psalms 19 118 18 Psalms 19 119 18 Psalms 19 118 19 Psalms 19 119 19 Psalms 19 118 20 Psalms 19 119 20 Psalms 19 118 21 Psalms 19 119 21 Psalms 19 118 22 Psalms 19 119 22 Psalms 19 118 23 Psalms 19 119 23 Psalms 19 118 24 Psalms 19 119 24 Psalms 19 118 25 Psalms 19 119 25 Psalms 19 118 26 Psalms 19 119 26 Psalms 19 118 27 Psalms 19 119 27 Psalms 19 118 28 Psalms 19 119 28 Psalms 19 118 29 Psalms 19 119 29 Psalms 19 118 30 Psalms 19 119 30 Psalms 19 118 31 Psalms 19 119 31 Psalms 19 118 32 Psalms 19 119 32 Psalms 19 118 33 Psalms 19 119 33 Psalms 19 118 34 Psalms 19 119 34 Psalms 19 118 35 Psalms 19 119 35 Psalms 19 118 36 Psalms 19 119 36 Psalms 19 118 37 Psalms 19 119 37 Psalms 19 118 38 Psalms 19 119 38 Psalms 19 118 39 Psalms 19 119 39 Psalms 19 118 40 Psalms 19 119 40 Psalms 19 118 41 Psalms 19 119 41 Psalms 19 118 42 Psalms 19 119 42 Psalms 19 118 43 Psalms 19 119 43 Psalms 19 118 44 Psalms 19 119 44 Psalms 19 118 45 Psalms 19 119 45 Psalms 19 118 46 Psalms 19 119 46 Psalms 19 118 47 Psalms 19 119 47 Psalms 19 118 48 Psalms 19 119 48 Psalms 19 118 49 Psalms 19 119 49 Psalms 19 118 50 Psalms 19 119 50 Psalms 19 118 51 Psalms 19 119 51 Psalms 19 118 52 Psalms 19 119 52 Psalms 19 118 53 Psalms 19 119 53 Psalms 19 118 54 Psalms 19 119 54 Psalms 19 118 55 Psalms 19 119 55 Psalms 19 118 56 Psalms 19 119 56 Psalms 19 118 57 Psalms 19 119 57 Psalms 19 118 58 Psalms 19 119 58 Psalms 19 118 59 Psalms 19 119 59 Psalms 19 118 60 Psalms 19 119 60 Psalms 19 118 61 Psalms 19 119 61 Psalms 19 118 62 Psalms 19 119 62 Psalms 19 118 63 Psalms 19 119 63 Psalms 19 118 64 Psalms 19 119 64 Psalms 19 118 65 Psalms 19 119 65 Psalms 19 118 66 Psalms 19 119 66 Psalms 19 118 67 Psalms 19 119 67 Psalms 19 118 68 Psalms 19 119 68 Psalms 19 118 69 Psalms 19 119 69 Psalms 19 118 70 Psalms 19 119 70 Psalms 19 118 71 Psalms 19 119 71 Psalms 19 118 72 Psalms 19 119 72 Psalms 19 118 73 Psalms 19 119 73 Psalms 19 118 74 Psalms 19 119 74 Psalms 19 118 75 Psalms 19 119 75 Psalms 19 118 76 Psalms 19 119 76 Psalms 19 118 77 Psalms 19 119 77 Psalms 19 118 78 Psalms 19 119 78 Psalms 19 118 79 Psalms 19 119 79 Psalms 19 118 80 Psalms 19 119 80 Psalms 19 118 81 Psalms 19 119 81 Psalms 19 118 82 Psalms 19 119 82 Psalms 19 118 83 Psalms 19 119 83 Psalms 19 118 84 Psalms 19 119 84 Psalms 19 118 85 Psalms 19 119 85 Psalms 19 118 86 Psalms 19 119 86 Psalms 19 118 87 Psalms 19 119 87 Psalms 19 118 88 Psalms 19 119 88 Psalms 19 118 89 Psalms 19 119 89 Psalms 19 118 90 Psalms 19 119 90 Psalms 19 118 91 Psalms 19 119 91 Psalms 19 118 92 Psalms 19 119 92 Psalms 19 118 93 Psalms 19 119 93 Psalms 19 118 94 Psalms 19 119 94 Psalms 19 118 95 Psalms 19 119 95 Psalms 19 118 96 Psalms 19 119 96 Psalms 19 118 97 Psalms 19 119 97 Psalms 19 118 98 Psalms 19 119 98 Psalms 19 118 99 Psalms 19 119 99 Psalms 19 118 100 Psalms 19 119 100 Psalms 19 118 101 Psalms 19 119 101 Psalms 19 118 102 Psalms 19 119 102 Psalms 19 118 103 Psalms 19 119 103 Psalms 19 118 104 Psalms 19 119 104 Psalms 19 118 105 Psalms 19 119 105 Psalms 19 118 106 Psalms 19 119 106 Psalms 19 118 107 Psalms 19 119 107 Psalms 19 118 108 Psalms 19 119 108 Psalms 19 118 109 Psalms 19 119 109 Psalms 19 118 110 Psalms 19 119 110 Psalms 19 118 111 Psalms 19 119 111 Psalms 19 118 112 Psalms 19 119 112 Psalms 19 118 113 Psalms 19 119 113 Psalms 19 118 114 Psalms 19 119 114 Psalms 19 118 115 Psalms 19 119 115 Psalms 19 118 116 Psalms 19 119 116 Psalms 19 118 117 Psalms 19 119 117 Psalms 19 118 118 Psalms 19 119 118 Psalms 19 118 119 Psalms 19 119 119 Psalms 19 118 120 Psalms 19 119 120 Psalms 19 118 121 Psalms 19 119 121 Psalms 19 118 122 Psalms 19 119 122 Psalms 19 118 123 Psalms 19 119 123 Psalms 19 118 124 Psalms 19 119 124 Psalms 19 118 125 Psalms 19 119 125 Psalms 19 118 126 Psalms 19 119 126 Psalms 19 118 127 Psalms 19 119 127 Psalms 19 118 128 Psalms 19 119 128 Psalms 19 118 129 Psalms 19 119 129 Psalms 19 118 130 Psalms 19 119 130 Psalms 19 118 131 Psalms 19 119 131 Psalms 19 118 132 Psalms 19 119 132 Psalms 19 118 133 Psalms 19 119 133 Psalms 19 118 134 Psalms 19 119 134 Psalms 19 118 135 Psalms 19 119 135 Psalms 19 118 136 Psalms 19 119 136 Psalms 19 118 137 Psalms 19 119 137 Psalms 19 118 138 Psalms 19 119 138 Psalms 19 118 139 Psalms 19 119 139 Psalms 19 118 140 Psalms 19 119 140 Psalms 19 118 141 Psalms 19 119 141 Psalms 19 118 142 Psalms 19 119 142 Psalms 19 118 143 Psalms 19 119 143 Psalms 19 118 144 Psalms 19 119 144 Psalms 19 118 145 Psalms 19 119 145 Psalms 19 118 146 Psalms 19 119 146 Psalms 19 118 147 Psalms 19 119 147 Psalms 19 118 148 Psalms 19 119 148 Psalms 19 118 149 Psalms 19 119 149 Psalms 19 118 150 Psalms 19 119 150 Psalms 19 118 151 Psalms 19 119 151 Psalms 19 118 152 Psalms 19 119 152 Psalms 19 118 153 Psalms 19 119 153 Psalms 19 118 154 Psalms 19 119 154 Psalms 19 118 155 Psalms 19 119 155 Psalms 19 118 156 Psalms 19 119 156 Psalms 19 118 157 Psalms 19 119 157 Psalms 19 118 158 Psalms 19 119 158 Psalms 19 118 159 Psalms 19 119 159 Psalms 19 118 160 Psalms 19 119 160 Psalms 19 118 161 Psalms 19 119 161 Psalms 19 118 162 Psalms 19 119 162 Psalms 19 118 163 Psalms 19 119 163 Psalms 19 118 164 Psalms 19 119 164 Psalms 19 118 165 Psalms 19 119 165 Psalms 19 118 166 Psalms 19 119 166 Psalms 19 118 167 Psalms 19 119 167 Psalms 19 118 168 Psalms 19 119 168 Psalms 19 118 169 Psalms 19 119 169 Psalms 19 118 170 Psalms 19 119 170 Psalms 19 118 171 Psalms 19 119 171 Psalms 19 118 172 Psalms 19 119 172 Psalms 19 118 173 Psalms 19 119 173 Psalms 19 118 174 Psalms 19 119 174 Psalms 19 118 175 Psalms 19 119 175 Psalms 19 118 176 Psalms 19 119 176 Psalms 19 119 1 Psalms 19 120 1 Psalms 19 119 2 Psalms 19 120 2 Psalms 19 119 3 Psalms 19 120 3 Psalms 19 119 4 Psalms 19 120 4 Psalms 19 119 5 Psalms 19 120 5 Psalms 19 119 6 Psalms 19 120 6 Psalms 19 119 7 Psalms 19 120 7 Psalms 19 120 1 Psalms 19 121 1 Psalms 19 120 2 Psalms 19 121 2 Psalms 19 120 3 Psalms 19 121 3 Psalms 19 120 4 Psalms 19 121 4 Psalms 19 120 5 Psalms 19 121 5 Psalms 19 120 6 Psalms 19 121 6 Psalms 19 120 7 Psalms 19 121 7 Psalms 19 120 8 Psalms 19 121 8 Psalms 19 121 1 Psalms 19 122 1 Psalms 19 121 2 Psalms 19 122 2 Psalms 19 121 3 Psalms 19 122 3 Psalms 19 121 4 Psalms 19 122 4 Psalms 19 121 5 Psalms 19 122 5 Psalms 19 121 6 Psalms 19 122 6 Psalms 19 121 7 Psalms 19 122 7 Psalms 19 121 8 Psalms 19 122 8 Psalms 19 121 9 Psalms 19 122 9 Psalms 19 122 1 Psalms 19 123 1 Psalms 19 122 2 Psalms 19 123 2 Psalms 19 122 3 Psalms 19 123 3 Psalms 19 122 4 Psalms 19 123 4 Psalms 19 123 1 Psalms 19 124 1 Psalms 19 123 2 Psalms 19 124 2 Psalms 19 123 3 Psalms 19 124 3 Psalms 19 123 4 Psalms 19 124 4 Psalms 19 123 5 Psalms 19 124 5 Psalms 19 123 6 Psalms 19 124 6 Psalms 19 123 7 Psalms 19 124 7 Psalms 19 123 8 Psalms 19 124 8 Psalms 19 124 1 Psalms 19 125 1 Psalms 19 124 2 Psalms 19 125 2 Psalms 19 124 3 Psalms 19 125 3 Psalms 19 124 4 Psalms 19 125 4 Psalms 19 124 5 Psalms 19 125 5 Psalms 19 125 1 Psalms 19 126 1 Psalms 19 125 2 Psalms 19 126 2 Psalms 19 125 3 Psalms 19 126 3 Psalms 19 125 4 Psalms 19 126 4 Psalms 19 125 5 Psalms 19 126 5 Psalms 19 125 6 Psalms 19 126 6 Psalms 19 126 1 Psalms 19 127 1 Psalms 19 126 2 Psalms 19 127 2 Psalms 19 126 3 Psalms 19 127 3 Psalms 19 126 4 Psalms 19 127 4 Psalms 19 126 5 Psalms 19 127 5 Psalms 19 127 1 Psalms 19 128 1 Psalms 19 127 2 Psalms 19 128 2 Psalms 19 127 3 Psalms 19 128 3 Psalms 19 127 4 Psalms 19 128 4 Psalms 19 127 5 Psalms 19 128 5 Psalms 19 127 6 Psalms 19 128 6 Psalms 19 128 1 Psalms 19 129 1 Psalms 19 128 2 Psalms 19 129 2 Psalms 19 128 3 Psalms 19 129 3 Psalms 19 128 4 Psalms 19 129 4 Psalms 19 128 5 Psalms 19 129 5 Psalms 19 128 6 Psalms 19 129 6 Psalms 19 128 7 Psalms 19 129 7 Psalms 19 128 8 Psalms 19 129 8 Psalms 19 129 1 Psalms 19 130 1 Psalms 19 129 2 Psalms 19 130 2 Psalms 19 129 3 Psalms 19 130 3 Psalms 19 129 4 Psalms 19 130 4 Psalms 19 129 5 Psalms 19 130 5 Psalms 19 129 6 Psalms 19 130 6 Psalms 19 129 7 Psalms 19 130 7 Psalms 19 129 8 Psalms 19 130 8 Psalms 19 130 1 Psalms 19 131 1 Psalms 19 130 2 Psalms 19 131 2 Psalms 19 130 3 Psalms 19 131 3 Psalms 19 131 1 Psalms 19 132 1 Psalms 19 131 2 Psalms 19 132 2 Psalms 19 131 3 Psalms 19 132 3 Psalms 19 131 4 Psalms 19 132 4 Psalms 19 131 5 Psalms 19 132 5 Psalms 19 131 6 Psalms 19 132 6 Psalms 19 131 7 Psalms 19 132 7 Psalms 19 131 8 Psalms 19 132 8 Psalms 19 131 9 Psalms 19 132 9 Psalms 19 131 10 Psalms 19 132 10 Psalms 19 131 11 Psalms 19 132 11 Psalms 19 131 12 Psalms 19 132 12 Psalms 19 131 13 Psalms 19 132 13 Psalms 19 131 14 Psalms 19 132 14 Psalms 19 131 15 Psalms 19 132 15 Psalms 19 131 16 Psalms 19 132 16 Psalms 19 131 17 Psalms 19 132 17 Psalms 19 131 18 Psalms 19 132 18 Psalms 19 132 1 Psalms 19 133 1 Psalms 19 132 2 Psalms 19 133 2 Psalms 19 132 3 Psalms 19 133 3 Psalms 19 133 1 Psalms 19 134 1 Psalms 19 133 2 Psalms 19 134 2 Psalms 19 133 3 Psalms 19 134 3 Psalms 19 134 1 Psalms 19 135 1 Psalms 19 134 2 Psalms 19 135 2 Psalms 19 134 3 Psalms 19 135 3 Psalms 19 134 4 Psalms 19 135 4 Psalms 19 134 5 Psalms 19 135 5 Psalms 19 134 6 Psalms 19 135 6 Psalms 19 134 7 Psalms 19 135 7 Psalms 19 134 8 Psalms 19 135 8 Psalms 19 134 9 Psalms 19 135 9 Psalms 19 134 10 Psalms 19 135 10 Psalms 19 134 11 Psalms 19 135 11 Psalms 19 134 12 Psalms 19 135 12 Psalms 19 134 13 Psalms 19 135 13 Psalms 19 134 14 Psalms 19 135 14 Psalms 19 134 15 Psalms 19 135 15 Psalms 19 134 16 Psalms 19 135 16 Psalms 19 134 17 Psalms 19 135 17 Psalms 19 134 18 Psalms 19 135 18 Psalms 19 134 19 Psalms 19 135 19 Psalms 19 134 20 Psalms 19 135 20 Psalms 19 134 21 Psalms 19 135 21 Psalms 19 135 1 Psalms 19 136 1 Psalms 19 135 2 Psalms 19 136 2 Psalms 19 135 3 Psalms 19 136 3 Psalms 19 135 4 Psalms 19 136 4 Psalms 19 135 5 Psalms 19 136 5 Psalms 19 135 6 Psalms 19 136 6 Psalms 19 135 7 Psalms 19 136 7 Psalms 19 135 8 Psalms 19 136 8 Psalms 19 135 9 Psalms 19 136 9 Psalms 19 135 10 Psalms 19 136 10 Psalms 19 135 11 Psalms 19 136 11 Psalms 19 135 12 Psalms 19 136 12 Psalms 19 135 13 Psalms 19 136 13 Psalms 19 135 14 Psalms 19 136 14 Psalms 19 135 15 Psalms 19 136 15 Psalms 19 135 16 Psalms 19 136 16 Psalms 19 135 17 Psalms 19 136 17 Psalms 19 135 18 Psalms 19 136 18 Psalms 19 135 19 Psalms 19 136 19 Psalms 19 135 20 Psalms 19 136 20 Psalms 19 135 21 Psalms 19 136 21 Psalms 19 135 22 Psalms 19 136 22 Psalms 19 135 23 Psalms 19 136 23 Psalms 19 135 24 Psalms 19 136 24 Psalms 19 135 25 Psalms 19 136 25 Psalms 19 135 26 Psalms 19 136 26 Psalms 19 136 1 Psalms 19 137 1 Psalms 19 136 2 Psalms 19 137 2 Psalms 19 136 3 Psalms 19 137 3 Psalms 19 136 4 Psalms 19 137 4 Psalms 19 136 5 Psalms 19 137 5 Psalms 19 136 6 Psalms 19 137 6 Psalms 19 136 7 Psalms 19 137 7 Psalms 19 136 8 Psalms 19 137 8 Psalms 19 136 9 Psalms 19 137 9 Psalms 19 137 1 Psalms 19 138 1 Psalms 19 137 2 Psalms 19 138 2 Psalms 19 137 3 Psalms 19 138 3 Psalms 19 137 4 Psalms 19 138 4 Psalms 19 137 5 Psalms 19 138 5 Psalms 19 137 6 Psalms 19 138 6 Psalms 19 137 7 Psalms 19 138 7 Psalms 19 137 8 Psalms 19 138 8 Psalms 19 138 1 Psalms 19 139 1 Psalms 19 138 2 Psalms 19 139 2 Psalms 19 138 3 Psalms 19 139 3 Psalms 19 138 4 Psalms 19 139 4 Psalms 19 138 5 Psalms 19 139 5 Psalms 19 138 6 Psalms 19 139 6 Psalms 19 138 7 Psalms 19 139 7 Psalms 19 138 8 Psalms 19 139 8 Psalms 19 138 9 Psalms 19 139 9 Psalms 19 138 10 Psalms 19 139 10 Psalms 19 138 11 Psalms 19 139 11 Psalms 19 138 12 Psalms 19 139 12 Psalms 19 138 13 Psalms 19 139 13 Psalms 19 138 14 Psalms 19 139 14 Psalms 19 138 15 Psalms 19 139 15 Psalms 19 138 16 Psalms 19 139 16 Psalms 19 138 17 Psalms 19 139 17 Psalms 19 138 18 Psalms 19 139 18 Psalms 19 138 19 Psalms 19 139 19 Psalms 19 138 20 Psalms 19 139 20 Psalms 19 138 21 Psalms 19 139 21 Psalms 19 138 22 Psalms 19 139 22 Psalms 19 138 23 Psalms 19 139 23 Psalms 19 138 24 Psalms 19 139 24 Psalms 19 139 1 Psalms 19 140 1 Psalms 19 139 2 Psalms 19 140 2 Psalms 19 139 3 Psalms 19 140 3 Psalms 19 139 4 Psalms 19 140 4 Psalms 19 139 5 Psalms 19 140 5 Psalms 19 139 6 Psalms 19 140 6 Psalms 19 139 7 Psalms 19 140 7 Psalms 19 139 8 Psalms 19 140 8 Psalms 19 139 9 Psalms 19 140 9 Psalms 19 139 10 Psalms 19 140 10 Psalms 19 139 11 Psalms 19 140 11 Psalms 19 139 12 Psalms 19 140 12 Psalms 19 139 13 Psalms 19 140 13 Psalms 19 139 14 Psalms 19 140 14 Psalms 19 140 1 Psalms 19 141 1 Psalms 19 140 2 Psalms 19 141 2 Psalms 19 140 3 Psalms 19 141 3 Psalms 19 140 4 Psalms 19 141 4 Psalms 19 140 5 Psalms 19 141 5 Psalms 19 140 6 Psalms 19 141 6 Psalms 19 140 7 Psalms 19 141 7 Psalms 19 140 8 Psalms 19 141 8 Psalms 19 140 9 Psalms 19 141 9 Psalms 19 140 10 Psalms 19 141 10 Psalms 19 141 1 Psalms 19 142 2 Psalms 19 141 2 Psalms 19 142 3 Psalms 19 141 3 Psalms 19 142 4 Psalms 19 141 4 Psalms 19 142 5 Psalms 19 141 5 Psalms 19 142 6 Psalms 19 141 6 Psalms 19 142 7 Psalms 19 141 7 Psalms 19 142 8 Psalms 19 142 1 Psalms 19 143 1 Psalms 19 142 2 Psalms 19 143 2 Psalms 19 142 3 Psalms 19 143 3 Psalms 19 142 4 Psalms 19 143 4 Psalms 19 142 5 Psalms 19 143 5 Psalms 19 142 6 Psalms 19 143 6 Psalms 19 142 7 Psalms 19 143 7 Psalms 19 142 8 Psalms 19 143 8 Psalms 19 142 9 Psalms 19 143 9 Psalms 19 142 10 Psalms 19 143 10 Psalms 19 142 11 Psalms 19 143 11 Psalms 19 142 12 Psalms 19 143 12 Psalms 19 143 1 Psalms 19 144 1 Psalms 19 143 2 Psalms 19 144 2 Psalms 19 143 3 Psalms 19 144 3 Psalms 19 143 4 Psalms 19 144 4 Psalms 19 143 5 Psalms 19 144 5 Psalms 19 143 6 Psalms 19 144 6 Psalms 19 143 7 Psalms 19 144 7 Psalms 19 143 8 Psalms 19 144 8 Psalms 19 143 9 Psalms 19 144 9 Psalms 19 143 10 Psalms 19 144 10 Psalms 19 143 11 Psalms 19 144 11 Psalms 19 143 12 Psalms 19 144 12 Psalms 19 143 13 Psalms 19 144 13 Psalms 19 143 14 Psalms 19 144 14 Psalms 19 143 15 Psalms 19 144 15 Psalms 19 144 1 Psalms 19 145 1 Psalms 19 144 2 Psalms 19 145 2 Psalms 19 144 3 Psalms 19 145 3 Psalms 19 144 4 Psalms 19 145 4 Psalms 19 144 5 Psalms 19 145 5 Psalms 19 144 6 Psalms 19 145 6 Psalms 19 144 7 Psalms 19 145 7 Psalms 19 144 8 Psalms 19 145 8 Psalms 19 144 9 Psalms 19 145 9 Psalms 19 144 10 Psalms 19 145 10 Psalms 19 144 11 Psalms 19 145 11 Psalms 19 144 12 Psalms 19 145 12 Psalms 19 144 13 Psalms 19 145 13 Psalms 19 144 14 Psalms 19 145 14 Psalms 19 144 15 Psalms 19 145 15 Psalms 19 144 16 Psalms 19 145 16 Psalms 19 144 17 Psalms 19 145 17 Psalms 19 144 18 Psalms 19 145 18 Psalms 19 144 19 Psalms 19 145 19 Psalms 19 144 20 Psalms 19 145 20 Psalms 19 144 21 Psalms 19 145 21 Psalms 19 145 1 Psalms 19 146 1 Psalms 19 145 2 Psalms 19 146 2 Psalms 19 145 3 Psalms 19 146 3 Psalms 19 145 4 Psalms 19 146 4 Psalms 19 145 5 Psalms 19 146 5 Psalms 19 145 6 Psalms 19 146 6 Psalms 19 145 7 Psalms 19 146 7 Psalms 19 145 8 Psalms 19 146 8 Psalms 19 145 9 Psalms 19 146 9 Psalms 19 145 10 Psalms 19 146 10 Psalms 19 146 1 Psalms 19 147 1 Psalms 19 146 2 Psalms 19 147 2 Psalms 19 146 3 Psalms 19 147 3 Psalms 19 146 4 Psalms 19 147 4 Psalms 19 146 5 Psalms 19 147 5 Psalms 19 146 6 Psalms 19 147 6 Psalms 19 146 7 Psalms 19 147 7 Psalms 19 146 8 Psalms 19 147 8 Psalms 19 146 9 Psalms 19 147 9 Psalms 19 146 10 Psalms 19 147 10 Psalms 19 146 11 Psalms 19 147 11 Psalms 19 147 1 Psalms 19 147 12 Psalms 19 147 2 Psalms 19 147 13 Psalms 19 147 3 Psalms 19 147 14 Psalms 19 147 4 Psalms 19 147 15 Psalms 19 147 5 Psalms 19 147 16 Psalms 19 147 6 Psalms 19 147 17 Psalms 19 147 7 Psalms 19 147 18 Psalms 19 147 8 Psalms 19 147 19 Psalms 19 147 9 Psalms 19 147 20 Song of Solomon 22 1 1 Song of Solomon 22 1 2 Song of Solomon 22 1 2 Song of Solomon 22 1 3 Song of Solomon 22 1 3 Song of Solomon 22 1 4 Song of Solomon 22 1 4 Song of Solomon 22 1 5 Song of Solomon 22 1 5 Song of Solomon 22 1 6 Song of Solomon 22 1 6 Song of Solomon 22 1 7 Song of Solomon 22 1 7 Song of Solomon 22 1 8 Song of Solomon 22 1 8 Song of Solomon 22 1 9 Song of Solomon 22 1 9 Song of Solomon 22 1 10 Song of Solomon 22 1 10 Song of Solomon 22 1 11 Song of Solomon 22 1 11 Song of Solomon 22 1 12 Song of Solomon 22 1 12 Song of Solomon 22 1 13 Song of Solomon 22 1 13 Song of Solomon 22 1 14 Song of Solomon 22 1 14 Song of Solomon 22 1 15 Song of Solomon 22 1 15 Song of Solomon 22 1 16 Song of Solomon 22 1 16 Song of Solomon 22 1 17 Isaiah 23 3 19 Isaiah 23 3 19 Isaiah 23 3 19 Isaiah 23 3 20 Isaiah 23 3 20 Isaiah 23 3 21 Isaiah 23 3 21 Isaiah 23 3 22 Isaiah 23 3 22 Isaiah 23 3 23 Isaiah 23 3 23 Isaiah 23 3 24 Isaiah 23 3 24 Isaiah 23 3 25 Isaiah 23 3 25 Isaiah 23 3 26 Isaiah 23 9 1 Isaiah 23 8 23 Isaiah 23 9 2 Isaiah 23 9 1 Isaiah 23 9 3 Isaiah 23 9 2 Isaiah 23 9 4 Isaiah 23 9 3 Isaiah 23 9 5 Isaiah 23 9 4 Isaiah 23 9 6 Isaiah 23 9 5 Isaiah 23 9 7 Isaiah 23 9 6 Isaiah 23 9 8 Isaiah 23 9 7 Isaiah 23 9 9 Isaiah 23 9 8 Isaiah 23 9 10 Isaiah 23 9 9 Isaiah 23 9 11 Isaiah 23 9 10 Isaiah 23 9 12 Isaiah 23 9 11 Isaiah 23 9 13 Isaiah 23 9 12 Isaiah 23 9 14 Isaiah 23 9 13 Isaiah 23 9 15 Isaiah 23 9 14 Isaiah 23 9 16 Isaiah 23 9 15 Isaiah 23 9 17 Isaiah 23 9 16 Isaiah 23 9 18 Isaiah 23 9 17 Isaiah 23 9 19 Isaiah 23 9 18 Isaiah 23 9 20 Isaiah 23 9 19 Isaiah 23 9 21 Isaiah 23 9 20 Isaiah 23 63 19 Isaiah 23 63 19 Isaiah 23 64 1 Isaiah 23 63 19 Isaiah 23 64 2 Isaiah 23 64 1 Isaiah 23 64 3 Isaiah 23 64 2 Isaiah 23 64 4 Isaiah 23 64 3 Isaiah 23 64 5 Isaiah 23 64 4 Isaiah 23 64 6 Isaiah 23 64 5 Isaiah 23 64 7 Isaiah 23 64 6 Isaiah 23 64 8 Isaiah 23 64 7 Isaiah 23 64 9 Isaiah 23 64 8 Isaiah 23 64 10 Isaiah 23 64 9 Isaiah 23 64 11 Isaiah 23 64 10 Isaiah 23 64 12 Isaiah 23 64 11 Jeremiah 24 9 1 Jeremiah 24 8 23 Jeremiah 24 9 2 Jeremiah 24 9 1 Jeremiah 24 9 3 Jeremiah 24 9 2 Jeremiah 24 9 4 Jeremiah 24 9 3 Jeremiah 24 9 5 Jeremiah 24 9 4 Jeremiah 24 9 6 Jeremiah 24 9 5 Jeremiah 24 9 7 Jeremiah 24 9 6 Jeremiah 24 9 8 Jeremiah 24 9 7 Jeremiah 24 9 9 Jeremiah 24 9 8 Jeremiah 24 9 10 Jeremiah 24 9 9 Jeremiah 24 9 11 Jeremiah 24 9 10 Jeremiah 24 9 12 Jeremiah 24 9 11 Jeremiah 24 9 13 Jeremiah 24 9 12 Jeremiah 24 9 14 Jeremiah 24 9 13 Jeremiah 24 9 15 Jeremiah 24 9 14 Jeremiah 24 9 16 Jeremiah 24 9 15 Jeremiah 24 9 17 Jeremiah 24 9 16 Jeremiah 24 9 18 Jeremiah 24 9 17 Jeremiah 24 9 19 Jeremiah 24 9 18 Jeremiah 24 9 20 Jeremiah 24 9 19 Jeremiah 24 9 21 Jeremiah 24 9 20 Jeremiah 24 9 22 Jeremiah 24 9 21 Jeremiah 24 9 23 Jeremiah 24 9 22 Jeremiah 24 9 24 Jeremiah 24 9 23 Jeremiah 24 9 25 Jeremiah 24 9 24 Jeremiah 24 9 26 Jeremiah 24 9 25 Ezekiel 26 20 45 Ezekiel 26 21 1 Ezekiel 26 20 46 Ezekiel 26 21 2 Ezekiel 26 20 47 Ezekiel 26 21 3 Ezekiel 26 20 48 Ezekiel 26 21 4 Ezekiel 26 20 49 Ezekiel 26 21 5 Ezekiel 26 21 1 Ezekiel 26 21 6 Ezekiel 26 21 2 Ezekiel 26 21 7 Ezekiel 26 21 3 Ezekiel 26 21 8 Ezekiel 26 21 4 Ezekiel 26 21 9 Ezekiel 26 21 5 Ezekiel 26 21 10 Ezekiel 26 21 6 Ezekiel 26 21 11 Ezekiel 26 21 7 Ezekiel 26 21 12 Ezekiel 26 21 8 Ezekiel 26 21 13 Ezekiel 26 21 9 Ezekiel 26 21 14 Ezekiel 26 21 10 Ezekiel 26 21 15 Ezekiel 26 21 11 Ezekiel 26 21 16 Ezekiel 26 21 12 Ezekiel 26 21 17 Ezekiel 26 21 13 Ezekiel 26 21 18 Ezekiel 26 21 14 Ezekiel 26 21 19 Ezekiel 26 21 15 Ezekiel 26 21 20 Ezekiel 26 21 16 Ezekiel 26 21 21 Ezekiel 26 21 17 Ezekiel 26 21 22 Ezekiel 26 21 18 Ezekiel 26 21 23 Ezekiel 26 21 19 Ezekiel 26 21 24 Ezekiel 26 21 20 Ezekiel 26 21 25 Ezekiel 26 21 21 Ezekiel 26 21 26 Ezekiel 26 21 22 Ezekiel 26 21 27 Ezekiel 26 21 23 Ezekiel 26 21 28 Ezekiel 26 21 24 Ezekiel 26 21 29 Ezekiel 26 21 25 Ezekiel 26 21 30 Ezekiel 26 21 26 Ezekiel 26 21 31 Ezekiel 26 21 27 Ezekiel 26 21 32 Ezekiel 26 21 28 Ezekiel 26 21 33 Ezekiel 26 21 29 Ezekiel 26 21 34 Ezekiel 26 21 30 Ezekiel 26 21 35 Ezekiel 26 21 31 Ezekiel 26 21 36 Ezekiel 26 21 32 Ezekiel 26 21 37 Daniel 27 5 31 Daniel 27 6 1 Daniel 27 6 1 Daniel 27 6 2 Daniel 27 6 2 Daniel 27 6 3 Daniel 27 6 3 Daniel 27 6 4 Daniel 27 6 4 Daniel 27 6 5 Daniel 27 6 5 Daniel 27 6 6 Daniel 27 6 6 Daniel 27 6 7 Daniel 27 6 7 Daniel 27 6 8 Daniel 27 6 8 Daniel 27 6 9 Daniel 27 6 9 Daniel 27 6 10 Daniel 27 6 10 Daniel 27 6 11 Daniel 27 6 11 Daniel 27 6 12 Daniel 27 6 12 Daniel 27 6 13 Daniel 27 6 13 Daniel 27 6 14 Daniel 27 6 14 Daniel 27 6 15 Daniel 27 6 15 Daniel 27 6 16 Daniel 27 6 16 Daniel 27 6 17 Daniel 27 6 17 Daniel 27 6 18 Daniel 27 6 18 Daniel 27 6 19 Daniel 27 6 19 Daniel 27 6 20 Daniel 27 6 20 Daniel 27 6 21 Daniel 27 6 21 Daniel 27 6 22 Daniel 27 6 22 Daniel 27 6 23 Daniel 27 6 23 Daniel 27 6 24 Daniel 27 6 24 Daniel 27 6 25 Daniel 27 6 25 Daniel 27 6 26 Daniel 27 6 26 Daniel 27 6 27 Daniel 27 6 27 Daniel 27 6 28 Daniel 27 6 28 Daniel 27 6 29 Hosea 28 1 10 Hosea 28 2 1 Hosea 28 1 11 Hosea 28 2 2 Hosea 28 2 1 Hosea 28 2 3 Hosea 28 2 2 Hosea 28 2 4 Hosea 28 2 3 Hosea 28 2 5 Hosea 28 2 4 Hosea 28 2 6 Hosea 28 2 5 Hosea 28 2 7 Hosea 28 2 6 Hosea 28 2 8 Hosea 28 2 7 Hosea 28 2 9 Hosea 28 2 8 Hosea 28 2 10 Hosea 28 2 9 Hosea 28 2 11 Hosea 28 2 10 Hosea 28 2 12 Hosea 28 2 11 Hosea 28 2 13 Hosea 28 2 12 Hosea 28 2 14 Hosea 28 2 13 Hosea 28 2 15 Hosea 28 2 14 Hosea 28 2 16 Hosea 28 2 15 Hosea 28 2 17 Hosea 28 2 16 Hosea 28 2 18 Hosea 28 2 17 Hosea 28 2 19 Hosea 28 2 18 Hosea 28 2 20 Hosea 28 2 19 Hosea 28 2 21 Hosea 28 2 20 Hosea 28 2 22 Hosea 28 2 21 Hosea 28 2 23 Hosea 28 2 22 Hosea 28 2 24 Hosea 28 2 23 Hosea 28 2 25 Hosea 28 11 12 Hosea 28 12 1 Hosea 28 12 1 Hosea 28 12 2 Hosea 28 12 2 Hosea 28 12 3 Hosea 28 12 3 Hosea 28 12 4 Hosea 28 12 4 Hosea 28 12 5 Hosea 28 12 5 Hosea 28 12 6 Hosea 28 12 6 Hosea 28 12 7 Hosea 28 12 7 Hosea 28 12 8 Hosea 28 12 8 Hosea 28 12 9 Hosea 28 12 9 Hosea 28 12 10 Hosea 28 12 10 Hosea 28 12 11 Hosea 28 12 11 Hosea 28 12 12 Hosea 28 12 12 Hosea 28 12 13 Hosea 28 12 13 Hosea 28 12 14 Hosea 28 12 14 Hosea 28 12 15 Joel 29 2 28 Joel 29 3 1 Joel 29 2 29 Joel 29 3 2 Joel 29 2 30 Joel 29 3 3 Joel 29 2 31 Joel 29 3 4 Joel 29 2 32 Joel 29 3 5 Joel 29 3 1 Joel 29 4 1 Joel 29 3 2 Joel 29 4 2 Joel 29 3 3 Joel 29 4 3 Joel 29 3 4 Joel 29 4 4 Joel 29 3 5 Joel 29 4 5 Joel 29 3 6 Joel 29 4 6 Joel 29 3 7 Joel 29 4 7 Joel 29 3 8 Joel 29 4 8 Joel 29 3 9 Joel 29 4 9 Joel 29 3 10 Joel 29 4 10 Joel 29 3 11 Joel 29 4 11 Joel 29 3 12 Joel 29 4 12 Joel 29 3 13 Joel 29 4 13 Joel 29 3 14 Joel 29 4 14 Joel 29 3 15 Joel 29 4 15 Joel 29 3 16 Joel 29 4 16 Joel 29 3 17 Joel 29 4 17 Joel 29 3 18 Joel 29 4 18 Joel 29 3 19 Joel 29 4 19 Joel 29 3 20 Joel 29 4 20 Joel 29 3 21 Joel 29 4 21 Micah 33 5 1 Micah 33 4 14 Micah 33 5 2 Micah 33 5 1 Micah 33 5 3 Micah 33 5 2 Micah 33 5 4 Micah 33 5 3 Micah 33 5 5 Micah 33 5 4 Micah 33 5 6 Micah 33 5 5 Micah 33 5 7 Micah 33 5 6 Micah 33 5 8 Micah 33 5 7 Micah 33 5 9 Micah 33 5 8 Micah 33 5 10 Micah 33 5 9 Micah 33 5 11 Micah 33 5 10 Micah 33 5 12 Micah 33 5 11 Micah 33 5 13 Micah 33 5 12 Micah 33 5 14 Micah 33 5 13 Micah 33 5 15 Micah 33 5 14 Nahum 34 1 15 Nahum 34 2 1 Nahum 34 2 1 Nahum 34 2 2 Nahum 34 2 2 Nahum 34 2 3 Nahum 34 2 3 Nahum 34 2 4 Nahum 34 2 4 Nahum 34 2 5 Nahum 34 2 5 Nahum 34 2 6 Nahum 34 2 6 Nahum 34 2 7 Nahum 34 2 7 Nahum 34 2 8 Nahum 34 2 8 Nahum 34 2 9 Nahum 34 2 9 Nahum 34 2 10 Nahum 34 2 10 Nahum 34 2 11 Nahum 34 2 11 Nahum 34 2 12 Nahum 34 2 12 Nahum 34 2 13 Nahum 34 2 13 Nahum 34 2 14 Zechariah 38 1 18 Zechariah 38 2 1 Zechariah 38 1 19 Zechariah 38 2 2 Zechariah 38 1 20 Zechariah 38 2 3 Zechariah 38 1 21 Zechariah 38 2 4 Zechariah 38 2 1 Zechariah 38 2 5 Zechariah 38 2 2 Zechariah 38 2 6 Zechariah 38 2 3 Zechariah 38 2 7 Zechariah 38 2 4 Zechariah 38 2 8 Zechariah 38 2 5 Zechariah 38 2 9 Zechariah 38 2 6 Zechariah 38 2 10 Zechariah 38 2 7 Zechariah 38 2 11 Zechariah 38 2 8 Zechariah 38 2 12 Zechariah 38 2 9 Zechariah 38 2 13 Zechariah 38 2 10 Zechariah 38 2 14 Zechariah 38 2 11 Zechariah 38 2 15 Zechariah 38 2 12 Zechariah 38 2 16 Zechariah 38 2 13 Zechariah 38 2 17 Malachi 39 4 1 Malachi 39 3 19 Malachi 39 4 2 Malachi 39 3 20 Malachi 39 4 3 Malachi 39 3 21 Malachi 39 4 4 Malachi 39 3 22 Malachi 39 4 5 Malachi 39 3 23 Malachi 39 4 6 Malachi 39 3 24 Romans 45 14 24 Romans 45 16 25 Romans 45 14 25 Romans 45 16 26 Romans 45 14 26 Romans 45 16 27 2 Corinthians 47 11 32 2 Corinthians 47 11 32 2 Corinthians 47 11 32 2 Corinthians 47 11 33 Revelation 66 13 1 Revelation 66 12 18 Revelation 66 13 1 Revelation 66 13 1 bibledit-gtk-4.9/templates/mapping_russian_orthodox.xml000664 000766 000024 00003116442 12221507126 023733 0ustar00teusstaff000000 000000 Genesis 1 31 55 Genesis 1 32 1 Genesis 1 32 1 Genesis 1 32 2 Genesis 1 32 2 Genesis 1 32 3 Genesis 1 32 3 Genesis 1 32 4 Genesis 1 32 4 Genesis 1 32 5 Genesis 1 32 5 Genesis 1 32 6 Genesis 1 32 6 Genesis 1 32 7 Genesis 1 32 7 Genesis 1 32 8 Genesis 1 32 8 Genesis 1 32 9 Genesis 1 32 9 Genesis 1 32 10 Genesis 1 32 10 Genesis 1 32 11 Genesis 1 32 11 Genesis 1 32 12 Genesis 1 32 12 Genesis 1 32 13 Genesis 1 32 13 Genesis 1 32 14 Genesis 1 32 14 Genesis 1 32 15 Genesis 1 32 15 Genesis 1 32 16 Genesis 1 32 16 Genesis 1 32 17 Genesis 1 32 17 Genesis 1 32 18 Genesis 1 32 18 Genesis 1 32 19 Genesis 1 32 19 Genesis 1 32 20 Genesis 1 32 20 Genesis 1 32 21 Genesis 1 32 21 Genesis 1 32 22 Genesis 1 32 22 Genesis 1 32 23 Genesis 1 32 23 Genesis 1 32 24 Genesis 1 32 24 Genesis 1 32 25 Genesis 1 32 25 Genesis 1 32 26 Genesis 1 32 26 Genesis 1 32 27 Genesis 1 32 27 Genesis 1 32 28 Genesis 1 32 28 Genesis 1 32 29 Genesis 1 32 29 Genesis 1 32 30 Genesis 1 32 30 Genesis 1 32 31 Genesis 1 32 31 Genesis 1 32 32 Genesis 1 32 32 Genesis 1 32 33 Exodus 2 8 1 Exodus 2 7 26 Exodus 2 8 2 Exodus 2 7 27 Exodus 2 8 3 Exodus 2 7 28 Exodus 2 8 4 Exodus 2 7 29 Exodus 2 8 5 Exodus 2 8 1 Exodus 2 8 6 Exodus 2 8 2 Exodus 2 8 7 Exodus 2 8 3 Exodus 2 8 8 Exodus 2 8 4 Exodus 2 8 9 Exodus 2 8 5 Exodus 2 8 10 Exodus 2 8 6 Exodus 2 8 11 Exodus 2 8 7 Exodus 2 8 12 Exodus 2 8 8 Exodus 2 8 13 Exodus 2 8 9 Exodus 2 8 14 Exodus 2 8 10 Exodus 2 8 15 Exodus 2 8 11 Exodus 2 8 16 Exodus 2 8 12 Exodus 2 8 17 Exodus 2 8 13 Exodus 2 8 18 Exodus 2 8 14 Exodus 2 8 19 Exodus 2 8 15 Exodus 2 8 20 Exodus 2 8 16 Exodus 2 8 21 Exodus 2 8 17 Exodus 2 8 22 Exodus 2 8 18 Exodus 2 8 23 Exodus 2 8 19 Exodus 2 8 24 Exodus 2 8 20 Exodus 2 8 25 Exodus 2 8 21 Exodus 2 8 26 Exodus 2 8 22 Exodus 2 8 27 Exodus 2 8 23 Exodus 2 8 28 Exodus 2 8 24 Exodus 2 8 29 Exodus 2 8 25 Exodus 2 8 30 Exodus 2 8 26 Exodus 2 8 31 Exodus 2 8 27 Exodus 2 8 32 Exodus 2 8 28 Exodus 2 22 1 Exodus 2 21 37 Exodus 2 22 2 Exodus 2 22 1 Exodus 2 22 3 Exodus 2 22 2 Exodus 2 22 4 Exodus 2 22 3 Exodus 2 22 5 Exodus 2 22 4 Exodus 2 22 6 Exodus 2 22 5 Exodus 2 22 7 Exodus 2 22 6 Exodus 2 22 8 Exodus 2 22 7 Exodus 2 22 9 Exodus 2 22 8 Exodus 2 22 10 Exodus 2 22 9 Exodus 2 22 11 Exodus 2 22 10 Exodus 2 22 12 Exodus 2 22 11 Exodus 2 22 13 Exodus 2 22 12 Exodus 2 22 14 Exodus 2 22 13 Exodus 2 22 15 Exodus 2 22 14 Exodus 2 22 16 Exodus 2 22 15 Exodus 2 22 17 Exodus 2 22 16 Exodus 2 22 18 Exodus 2 22 17 Exodus 2 22 19 Exodus 2 22 18 Exodus 2 22 20 Exodus 2 22 19 Exodus 2 22 21 Exodus 2 22 20 Exodus 2 22 22 Exodus 2 22 21 Exodus 2 22 23 Exodus 2 22 22 Exodus 2 22 24 Exodus 2 22 23 Exodus 2 22 25 Exodus 2 22 24 Exodus 2 22 26 Exodus 2 22 25 Exodus 2 22 27 Exodus 2 22 26 Exodus 2 22 28 Exodus 2 22 27 Exodus 2 22 29 Exodus 2 22 28 Exodus 2 22 30 Exodus 2 22 29 Exodus 2 22 31 Exodus 2 22 30 Leviticus 3 6 1 Leviticus 3 5 20 Leviticus 3 6 2 Leviticus 3 5 21 Leviticus 3 6 3 Leviticus 3 5 22 Leviticus 3 6 4 Leviticus 3 5 23 Leviticus 3 6 5 Leviticus 3 5 24 Leviticus 3 6 6 Leviticus 3 5 25 Leviticus 3 6 7 Leviticus 3 5 26 Leviticus 3 6 8 Leviticus 3 6 1 Leviticus 3 6 9 Leviticus 3 6 2 Leviticus 3 6 10 Leviticus 3 6 3 Leviticus 3 6 11 Leviticus 3 6 4 Leviticus 3 6 12 Leviticus 3 6 5 Leviticus 3 6 13 Leviticus 3 6 6 Leviticus 3 6 14 Leviticus 3 6 7 Leviticus 3 6 15 Leviticus 3 6 8 Leviticus 3 6 16 Leviticus 3 6 9 Leviticus 3 6 17 Leviticus 3 6 10 Leviticus 3 6 18 Leviticus 3 6 11 Leviticus 3 6 19 Leviticus 3 6 12 Leviticus 3 6 20 Leviticus 3 6 13 Leviticus 3 6 21 Leviticus 3 6 14 Leviticus 3 6 22 Leviticus 3 6 15 Leviticus 3 6 23 Leviticus 3 6 16 Leviticus 3 6 24 Leviticus 3 6 17 Leviticus 3 6 25 Leviticus 3 6 18 Leviticus 3 6 26 Leviticus 3 6 19 Leviticus 3 6 27 Leviticus 3 6 20 Leviticus 3 6 28 Leviticus 3 6 21 Leviticus 3 6 29 Leviticus 3 6 22 Leviticus 3 6 30 Leviticus 3 6 23 Leviticus 3 14 55 Leviticus 3 14 55 Leviticus 3 14 55 Leviticus 3 14 56 Leviticus 3 14 56 Leviticus 3 14 57 Numbers 4 16 36 Numbers 4 17 1 Numbers 4 16 37 Numbers 4 17 2 Numbers 4 16 38 Numbers 4 17 3 Numbers 4 16 39 Numbers 4 17 4 Numbers 4 16 40 Numbers 4 17 5 Numbers 4 16 41 Numbers 4 17 6 Numbers 4 16 42 Numbers 4 17 7 Numbers 4 16 43 Numbers 4 17 8 Numbers 4 16 44 Numbers 4 17 9 Numbers 4 16 45 Numbers 4 17 10 Numbers 4 16 46 Numbers 4 17 11 Numbers 4 16 47 Numbers 4 17 12 Numbers 4 16 48 Numbers 4 17 13 Numbers 4 16 49 Numbers 4 17 14 Numbers 4 16 50 Numbers 4 17 15 Numbers 4 17 1 Numbers 4 17 16 Numbers 4 17 2 Numbers 4 17 17 Numbers 4 17 3 Numbers 4 17 18 Numbers 4 17 4 Numbers 4 17 19 Numbers 4 17 5 Numbers 4 17 20 Numbers 4 17 6 Numbers 4 17 21 Numbers 4 17 7 Numbers 4 17 22 Numbers 4 17 8 Numbers 4 17 23 Numbers 4 17 9 Numbers 4 17 24 Numbers 4 17 10 Numbers 4 17 25 Numbers 4 17 11 Numbers 4 17 26 Numbers 4 17 12 Numbers 4 17 27 Numbers 4 17 13 Numbers 4 17 28 Numbers 4 26 1 Numbers 4 25 19 Numbers 4 26 1 Numbers 4 26 1 Deuteronomy 5 12 32 Deuteronomy 5 13 1 Deuteronomy 5 13 1 Deuteronomy 5 13 2 Deuteronomy 5 13 2 Deuteronomy 5 13 3 Deuteronomy 5 13 3 Deuteronomy 5 13 4 Deuteronomy 5 13 4 Deuteronomy 5 13 5 Deuteronomy 5 13 5 Deuteronomy 5 13 6 Deuteronomy 5 13 6 Deuteronomy 5 13 7 Deuteronomy 5 13 7 Deuteronomy 5 13 8 Deuteronomy 5 13 8 Deuteronomy 5 13 9 Deuteronomy 5 13 9 Deuteronomy 5 13 10 Deuteronomy 5 13 10 Deuteronomy 5 13 11 Deuteronomy 5 13 11 Deuteronomy 5 13 12 Deuteronomy 5 13 12 Deuteronomy 5 13 13 Deuteronomy 5 13 13 Deuteronomy 5 13 14 Deuteronomy 5 13 14 Deuteronomy 5 13 15 Deuteronomy 5 13 15 Deuteronomy 5 13 16 Deuteronomy 5 13 16 Deuteronomy 5 13 17 Deuteronomy 5 13 17 Deuteronomy 5 13 18 Deuteronomy 5 13 18 Deuteronomy 5 13 19 Deuteronomy 5 22 30 Deuteronomy 5 23 1 Deuteronomy 5 23 1 Deuteronomy 5 23 2 Deuteronomy 5 23 2 Deuteronomy 5 23 3 Deuteronomy 5 23 3 Deuteronomy 5 23 4 Deuteronomy 5 23 4 Deuteronomy 5 23 5 Deuteronomy 5 23 5 Deuteronomy 5 23 6 Deuteronomy 5 23 6 Deuteronomy 5 23 7 Deuteronomy 5 23 7 Deuteronomy 5 23 8 Deuteronomy 5 23 8 Deuteronomy 5 23 9 Deuteronomy 5 23 9 Deuteronomy 5 23 10 Deuteronomy 5 23 10 Deuteronomy 5 23 11 Deuteronomy 5 23 11 Deuteronomy 5 23 12 Deuteronomy 5 23 12 Deuteronomy 5 23 13 Deuteronomy 5 23 13 Deuteronomy 5 23 14 Deuteronomy 5 23 14 Deuteronomy 5 23 15 Deuteronomy 5 23 15 Deuteronomy 5 23 16 Deuteronomy 5 23 16 Deuteronomy 5 23 17 Deuteronomy 5 23 17 Deuteronomy 5 23 18 Deuteronomy 5 23 18 Deuteronomy 5 23 19 Deuteronomy 5 23 19 Deuteronomy 5 23 20 Deuteronomy 5 23 20 Deuteronomy 5 23 21 Deuteronomy 5 23 21 Deuteronomy 5 23 22 Deuteronomy 5 23 22 Deuteronomy 5 23 23 Deuteronomy 5 23 23 Deuteronomy 5 23 24 Deuteronomy 5 23 24 Deuteronomy 5 23 25 Deuteronomy 5 23 25 Deuteronomy 5 23 26 Deuteronomy 5 29 1 Deuteronomy 5 28 69 Deuteronomy 5 29 2 Deuteronomy 5 29 1 Deuteronomy 5 29 3 Deuteronomy 5 29 2 Deuteronomy 5 29 4 Deuteronomy 5 29 3 Deuteronomy 5 29 5 Deuteronomy 5 29 4 Deuteronomy 5 29 6 Deuteronomy 5 29 5 Deuteronomy 5 29 7 Deuteronomy 5 29 6 Deuteronomy 5 29 8 Deuteronomy 5 29 7 Deuteronomy 5 29 9 Deuteronomy 5 29 8 Deuteronomy 5 29 10 Deuteronomy 5 29 9 Deuteronomy 5 29 11 Deuteronomy 5 29 10 Deuteronomy 5 29 12 Deuteronomy 5 29 11 Deuteronomy 5 29 13 Deuteronomy 5 29 12 Deuteronomy 5 29 14 Deuteronomy 5 29 13 Deuteronomy 5 29 15 Deuteronomy 5 29 14 Deuteronomy 5 29 16 Deuteronomy 5 29 15 Deuteronomy 5 29 17 Deuteronomy 5 29 16 Deuteronomy 5 29 18 Deuteronomy 5 29 17 Deuteronomy 5 29 19 Deuteronomy 5 29 18 Deuteronomy 5 29 20 Deuteronomy 5 29 19 Deuteronomy 5 29 21 Deuteronomy 5 29 20 Deuteronomy 5 29 22 Deuteronomy 5 29 21 Deuteronomy 5 29 23 Deuteronomy 5 29 22 Deuteronomy 5 29 24 Deuteronomy 5 29 23 Deuteronomy 5 29 25 Deuteronomy 5 29 24 Deuteronomy 5 29 26 Deuteronomy 5 29 25 Deuteronomy 5 29 27 Deuteronomy 5 29 26 Deuteronomy 5 29 28 Deuteronomy 5 29 27 Deuteronomy 5 29 29 Deuteronomy 5 29 28 Joshua 6 5 16 Joshua 6 6 1 Joshua 6 6 1 Joshua 6 6 2 Joshua 6 6 2 Joshua 6 6 3 Joshua 6 6 3 Joshua 6 6 4 Joshua 6 6 4 Joshua 6 6 5 Joshua 6 6 5 Joshua 6 6 6 Joshua 6 6 6 Joshua 6 6 7 Joshua 6 6 7 Joshua 6 6 8 Joshua 6 6 8 Joshua 6 6 9 Joshua 6 6 9 Joshua 6 6 10 Joshua 6 6 10 Joshua 6 6 11 Joshua 6 6 11 Joshua 6 6 12 Joshua 6 6 12 Joshua 6 6 13 Joshua 6 6 13 Joshua 6 6 14 Joshua 6 6 14 Joshua 6 6 15 Joshua 6 6 15 Joshua 6 6 16 Joshua 6 6 16 Joshua 6 6 17 Joshua 6 6 17 Joshua 6 6 18 Joshua 6 6 18 Joshua 6 6 19 Joshua 6 6 19 Joshua 6 6 20 Joshua 6 6 20 Joshua 6 6 21 Joshua 6 6 21 Joshua 6 6 22 Joshua 6 6 22 Joshua 6 6 23 Joshua 6 6 23 Joshua 6 6 24 Joshua 6 6 24 Joshua 6 6 25 Joshua 6 6 25 Joshua 6 6 26 Joshua 6 6 26 Joshua 6 6 27 1 Samuel 9 20 43 1 Samuel 9 21 1 1 Samuel 9 21 1 1 Samuel 9 21 2 1 Samuel 9 21 2 1 Samuel 9 21 3 1 Samuel 9 21 3 1 Samuel 9 21 4 1 Samuel 9 21 4 1 Samuel 9 21 5 1 Samuel 9 21 5 1 Samuel 9 21 6 1 Samuel 9 21 6 1 Samuel 9 21 7 1 Samuel 9 21 7 1 Samuel 9 21 8 1 Samuel 9 21 8 1 Samuel 9 21 9 1 Samuel 9 21 9 1 Samuel 9 21 10 1 Samuel 9 21 10 1 Samuel 9 21 11 1 Samuel 9 21 11 1 Samuel 9 21 12 1 Samuel 9 21 12 1 Samuel 9 21 13 1 Samuel 9 21 13 1 Samuel 9 21 14 1 Samuel 9 21 14 1 Samuel 9 21 15 1 Samuel 9 21 15 1 Samuel 9 21 16 2 Samuel 10 18 33 2 Samuel 10 19 1 2 Samuel 10 19 1 2 Samuel 10 19 2 2 Samuel 10 19 2 2 Samuel 10 19 3 2 Samuel 10 19 3 2 Samuel 10 19 4 2 Samuel 10 19 4 2 Samuel 10 19 5 2 Samuel 10 19 5 2 Samuel 10 19 6 2 Samuel 10 19 6 2 Samuel 10 19 7 2 Samuel 10 19 7 2 Samuel 10 19 8 2 Samuel 10 19 8 2 Samuel 10 19 9 2 Samuel 10 19 9 2 Samuel 10 19 10 2 Samuel 10 19 10 2 Samuel 10 19 11 2 Samuel 10 19 11 2 Samuel 10 19 12 2 Samuel 10 19 12 2 Samuel 10 19 13 2 Samuel 10 19 13 2 Samuel 10 19 14 2 Samuel 10 19 14 2 Samuel 10 19 15 2 Samuel 10 19 15 2 Samuel 10 19 16 2 Samuel 10 19 16 2 Samuel 10 19 17 2 Samuel 10 19 17 2 Samuel 10 19 18 2 Samuel 10 19 18 2 Samuel 10 19 19 2 Samuel 10 19 19 2 Samuel 10 19 20 2 Samuel 10 19 20 2 Samuel 10 19 21 2 Samuel 10 19 21 2 Samuel 10 19 22 2 Samuel 10 19 22 2 Samuel 10 19 23 2 Samuel 10 19 23 2 Samuel 10 19 24 2 Samuel 10 19 24 2 Samuel 10 19 25 2 Samuel 10 19 25 2 Samuel 10 19 26 2 Samuel 10 19 26 2 Samuel 10 19 27 2 Samuel 10 19 27 2 Samuel 10 19 28 2 Samuel 10 19 28 2 Samuel 10 19 29 2 Samuel 10 19 29 2 Samuel 10 19 30 2 Samuel 10 19 30 2 Samuel 10 19 31 2 Samuel 10 19 31 2 Samuel 10 19 32 2 Samuel 10 19 32 2 Samuel 10 19 33 2 Samuel 10 19 33 2 Samuel 10 19 34 2 Samuel 10 19 34 2 Samuel 10 19 35 2 Samuel 10 19 35 2 Samuel 10 19 36 2 Samuel 10 19 36 2 Samuel 10 19 37 2 Samuel 10 19 37 2 Samuel 10 19 38 2 Samuel 10 19 38 2 Samuel 10 19 39 2 Samuel 10 19 39 2 Samuel 10 19 40 2 Samuel 10 19 40 2 Samuel 10 19 41 2 Samuel 10 19 41 2 Samuel 10 19 42 2 Samuel 10 19 42 2 Samuel 10 19 43 2 Samuel 10 19 43 2 Samuel 10 19 44 1 Kings 11 4 21 1 Kings 11 5 1 1 Kings 11 4 22 1 Kings 11 5 2 1 Kings 11 4 23 1 Kings 11 5 3 1 Kings 11 4 24 1 Kings 11 5 4 1 Kings 11 4 25 1 Kings 11 5 5 1 Kings 11 4 26 1 Kings 11 5 6 1 Kings 11 4 27 1 Kings 11 5 7 1 Kings 11 4 28 1 Kings 11 5 8 1 Kings 11 4 29 1 Kings 11 5 9 1 Kings 11 4 30 1 Kings 11 5 10 1 Kings 11 4 31 1 Kings 11 5 11 1 Kings 11 4 32 1 Kings 11 5 12 1 Kings 11 4 33 1 Kings 11 5 13 1 Kings 11 4 34 1 Kings 11 5 14 1 Kings 11 5 1 1 Kings 11 5 15 1 Kings 11 5 2 1 Kings 11 5 16 1 Kings 11 5 3 1 Kings 11 5 17 1 Kings 11 5 4 1 Kings 11 5 18 1 Kings 11 5 5 1 Kings 11 5 19 1 Kings 11 5 6 1 Kings 11 5 20 1 Kings 11 5 7 1 Kings 11 5 21 1 Kings 11 5 8 1 Kings 11 5 22 1 Kings 11 5 9 1 Kings 11 5 23 1 Kings 11 5 10 1 Kings 11 5 24 1 Kings 11 5 11 1 Kings 11 5 25 1 Kings 11 5 12 1 Kings 11 5 26 1 Kings 11 5 13 1 Kings 11 5 27 1 Kings 11 5 14 1 Kings 11 5 28 1 Kings 11 5 15 1 Kings 11 5 29 1 Kings 11 5 16 1 Kings 11 5 30 1 Kings 11 5 17 1 Kings 11 5 31 1 Kings 11 5 18 1 Kings 11 5 32 1 Kings 11 22 43 1 Kings 11 22 43 1 Kings 11 22 43 1 Kings 11 22 44 1 Kings 11 22 44 1 Kings 11 22 45 1 Kings 11 22 45 1 Kings 11 22 46 1 Kings 11 22 46 1 Kings 11 22 47 1 Kings 11 22 47 1 Kings 11 22 48 1 Kings 11 22 48 1 Kings 11 22 49 1 Kings 11 22 49 1 Kings 11 22 50 1 Kings 11 22 50 1 Kings 11 22 51 1 Kings 11 22 51 1 Kings 11 22 52 1 Kings 11 22 52 1 Kings 11 22 53 1 Kings 11 22 53 1 Kings 11 22 54 2 Kings 12 11 21 2 Kings 12 12 1 2 Kings 12 12 1 2 Kings 12 12 2 2 Kings 12 12 2 2 Kings 12 12 3 2 Kings 12 12 3 2 Kings 12 12 4 2 Kings 12 12 4 2 Kings 12 12 5 2 Kings 12 12 5 2 Kings 12 12 6 2 Kings 12 12 6 2 Kings 12 12 7 2 Kings 12 12 7 2 Kings 12 12 8 2 Kings 12 12 8 2 Kings 12 12 9 2 Kings 12 12 9 2 Kings 12 12 10 2 Kings 12 12 10 2 Kings 12 12 11 2 Kings 12 12 11 2 Kings 12 12 12 2 Kings 12 12 12 2 Kings 12 12 13 2 Kings 12 12 13 2 Kings 12 12 14 2 Kings 12 12 14 2 Kings 12 12 15 2 Kings 12 12 15 2 Kings 12 12 16 2 Kings 12 12 16 2 Kings 12 12 17 2 Kings 12 12 17 2 Kings 12 12 18 2 Kings 12 12 18 2 Kings 12 12 19 2 Kings 12 12 19 2 Kings 12 12 20 2 Kings 12 12 20 2 Kings 12 12 21 2 Kings 12 12 21 2 Kings 12 12 22 1 Chronicles 13 6 1 1 Chronicles 13 5 27 1 Chronicles 13 6 2 1 Chronicles 13 5 28 1 Chronicles 13 6 3 1 Chronicles 13 5 29 1 Chronicles 13 6 4 1 Chronicles 13 5 30 1 Chronicles 13 6 5 1 Chronicles 13 5 31 1 Chronicles 13 6 6 1 Chronicles 13 5 32 1 Chronicles 13 6 7 1 Chronicles 13 5 33 1 Chronicles 13 6 8 1 Chronicles 13 5 34 1 Chronicles 13 6 9 1 Chronicles 13 5 35 1 Chronicles 13 6 10 1 Chronicles 13 5 36 1 Chronicles 13 6 11 1 Chronicles 13 5 37 1 Chronicles 13 6 12 1 Chronicles 13 5 38 1 Chronicles 13 6 13 1 Chronicles 13 5 39 1 Chronicles 13 6 14 1 Chronicles 13 5 40 1 Chronicles 13 6 15 1 Chronicles 13 5 41 1 Chronicles 13 6 16 1 Chronicles 13 6 1 1 Chronicles 13 6 17 1 Chronicles 13 6 2 1 Chronicles 13 6 18 1 Chronicles 13 6 3 1 Chronicles 13 6 19 1 Chronicles 13 6 4 1 Chronicles 13 6 20 1 Chronicles 13 6 5 1 Chronicles 13 6 21 1 Chronicles 13 6 6 1 Chronicles 13 6 22 1 Chronicles 13 6 7 1 Chronicles 13 6 23 1 Chronicles 13 6 8 1 Chronicles 13 6 24 1 Chronicles 13 6 9 1 Chronicles 13 6 25 1 Chronicles 13 6 10 1 Chronicles 13 6 26 1 Chronicles 13 6 11 1 Chronicles 13 6 27 1 Chronicles 13 6 12 1 Chronicles 13 6 28 1 Chronicles 13 6 13 1 Chronicles 13 6 29 1 Chronicles 13 6 14 1 Chronicles 13 6 30 1 Chronicles 13 6 15 1 Chronicles 13 6 31 1 Chronicles 13 6 16 1 Chronicles 13 6 32 1 Chronicles 13 6 17 1 Chronicles 13 6 33 1 Chronicles 13 6 18 1 Chronicles 13 6 34 1 Chronicles 13 6 19 1 Chronicles 13 6 35 1 Chronicles 13 6 20 1 Chronicles 13 6 36 1 Chronicles 13 6 21 1 Chronicles 13 6 37 1 Chronicles 13 6 22 1 Chronicles 13 6 38 1 Chronicles 13 6 23 1 Chronicles 13 6 39 1 Chronicles 13 6 24 1 Chronicles 13 6 40 1 Chronicles 13 6 25 1 Chronicles 13 6 41 1 Chronicles 13 6 26 1 Chronicles 13 6 42 1 Chronicles 13 6 27 1 Chronicles 13 6 43 1 Chronicles 13 6 28 1 Chronicles 13 6 44 1 Chronicles 13 6 29 1 Chronicles 13 6 45 1 Chronicles 13 6 30 1 Chronicles 13 6 46 1 Chronicles 13 6 31 1 Chronicles 13 6 47 1 Chronicles 13 6 32 1 Chronicles 13 6 48 1 Chronicles 13 6 33 1 Chronicles 13 6 49 1 Chronicles 13 6 34 1 Chronicles 13 6 50 1 Chronicles 13 6 35 1 Chronicles 13 6 51 1 Chronicles 13 6 36 1 Chronicles 13 6 52 1 Chronicles 13 6 37 1 Chronicles 13 6 53 1 Chronicles 13 6 38 1 Chronicles 13 6 54 1 Chronicles 13 6 39 1 Chronicles 13 6 55 1 Chronicles 13 6 40 1 Chronicles 13 6 56 1 Chronicles 13 6 41 1 Chronicles 13 6 57 1 Chronicles 13 6 42 1 Chronicles 13 6 58 1 Chronicles 13 6 43 1 Chronicles 13 6 59 1 Chronicles 13 6 44 1 Chronicles 13 6 60 1 Chronicles 13 6 45 1 Chronicles 13 6 61 1 Chronicles 13 6 46 1 Chronicles 13 6 62 1 Chronicles 13 6 47 1 Chronicles 13 6 63 1 Chronicles 13 6 48 1 Chronicles 13 6 64 1 Chronicles 13 6 49 1 Chronicles 13 6 65 1 Chronicles 13 6 50 1 Chronicles 13 6 66 1 Chronicles 13 6 51 1 Chronicles 13 6 67 1 Chronicles 13 6 52 1 Chronicles 13 6 68 1 Chronicles 13 6 53 1 Chronicles 13 6 69 1 Chronicles 13 6 54 1 Chronicles 13 6 70 1 Chronicles 13 6 55 1 Chronicles 13 6 71 1 Chronicles 13 6 56 1 Chronicles 13 6 72 1 Chronicles 13 6 57 1 Chronicles 13 6 73 1 Chronicles 13 6 58 1 Chronicles 13 6 74 1 Chronicles 13 6 59 1 Chronicles 13 6 75 1 Chronicles 13 6 60 1 Chronicles 13 6 76 1 Chronicles 13 6 61 1 Chronicles 13 6 77 1 Chronicles 13 6 62 1 Chronicles 13 6 78 1 Chronicles 13 6 63 1 Chronicles 13 6 79 1 Chronicles 13 6 64 1 Chronicles 13 6 80 1 Chronicles 13 6 65 1 Chronicles 13 6 81 1 Chronicles 13 6 66 1 Chronicles 13 12 4 1 Chronicles 13 12 4 1 Chronicles 13 12 4 1 Chronicles 13 12 5 1 Chronicles 13 12 5 1 Chronicles 13 12 6 1 Chronicles 13 12 6 1 Chronicles 13 12 7 1 Chronicles 13 12 7 1 Chronicles 13 12 8 1 Chronicles 13 12 8 1 Chronicles 13 12 9 1 Chronicles 13 12 9 1 Chronicles 13 12 10 1 Chronicles 13 12 10 1 Chronicles 13 12 11 1 Chronicles 13 12 11 1 Chronicles 13 12 12 1 Chronicles 13 12 12 1 Chronicles 13 12 13 1 Chronicles 13 12 13 1 Chronicles 13 12 14 1 Chronicles 13 12 14 1 Chronicles 13 12 15 1 Chronicles 13 12 15 1 Chronicles 13 12 16 1 Chronicles 13 12 16 1 Chronicles 13 12 17 1 Chronicles 13 12 17 1 Chronicles 13 12 18 1 Chronicles 13 12 18 1 Chronicles 13 12 19 1 Chronicles 13 12 19 1 Chronicles 13 12 20 1 Chronicles 13 12 20 1 Chronicles 13 12 21 1 Chronicles 13 12 21 1 Chronicles 13 12 22 1 Chronicles 13 12 22 1 Chronicles 13 12 23 1 Chronicles 13 12 23 1 Chronicles 13 12 24 1 Chronicles 13 12 24 1 Chronicles 13 12 25 1 Chronicles 13 12 25 1 Chronicles 13 12 26 1 Chronicles 13 12 26 1 Chronicles 13 12 27 1 Chronicles 13 12 27 1 Chronicles 13 12 28 1 Chronicles 13 12 28 1 Chronicles 13 12 29 1 Chronicles 13 12 29 1 Chronicles 13 12 30 1 Chronicles 13 12 30 1 Chronicles 13 12 31 1 Chronicles 13 12 31 1 Chronicles 13 12 32 1 Chronicles 13 12 32 1 Chronicles 13 12 33 1 Chronicles 13 12 33 1 Chronicles 13 12 34 1 Chronicles 13 12 34 1 Chronicles 13 12 35 1 Chronicles 13 12 35 1 Chronicles 13 12 36 1 Chronicles 13 12 36 1 Chronicles 13 12 37 1 Chronicles 13 12 37 1 Chronicles 13 12 38 1 Chronicles 13 12 38 1 Chronicles 13 12 39 1 Chronicles 13 12 39 1 Chronicles 13 12 40 1 Chronicles 13 12 40 1 Chronicles 13 12 41 2 Chronicles 14 2 1 2 Chronicles 14 1 18 2 Chronicles 14 2 2 2 Chronicles 14 2 1 2 Chronicles 14 2 3 2 Chronicles 14 2 2 2 Chronicles 14 2 4 2 Chronicles 14 2 3 2 Chronicles 14 2 5 2 Chronicles 14 2 4 2 Chronicles 14 2 6 2 Chronicles 14 2 5 2 Chronicles 14 2 7 2 Chronicles 14 2 6 2 Chronicles 14 2 8 2 Chronicles 14 2 7 2 Chronicles 14 2 9 2 Chronicles 14 2 8 2 Chronicles 14 2 10 2 Chronicles 14 2 9 2 Chronicles 14 2 11 2 Chronicles 14 2 10 2 Chronicles 14 2 12 2 Chronicles 14 2 11 2 Chronicles 14 2 13 2 Chronicles 14 2 12 2 Chronicles 14 2 14 2 Chronicles 14 2 13 2 Chronicles 14 2 15 2 Chronicles 14 2 14 2 Chronicles 14 2 16 2 Chronicles 14 2 15 2 Chronicles 14 2 17 2 Chronicles 14 2 16 2 Chronicles 14 2 18 2 Chronicles 14 2 17 2 Chronicles 14 14 1 2 Chronicles 14 13 23 2 Chronicles 14 14 2 2 Chronicles 14 14 1 2 Chronicles 14 14 3 2 Chronicles 14 14 2 2 Chronicles 14 14 4 2 Chronicles 14 14 3 2 Chronicles 14 14 5 2 Chronicles 14 14 4 2 Chronicles 14 14 6 2 Chronicles 14 14 5 2 Chronicles 14 14 7 2 Chronicles 14 14 6 2 Chronicles 14 14 8 2 Chronicles 14 14 7 2 Chronicles 14 14 9 2 Chronicles 14 14 8 2 Chronicles 14 14 10 2 Chronicles 14 14 9 2 Chronicles 14 14 11 2 Chronicles 14 14 10 2 Chronicles 14 14 12 2 Chronicles 14 14 11 2 Chronicles 14 14 13 2 Chronicles 14 14 12 2 Chronicles 14 14 14 2 Chronicles 14 14 13 2 Chronicles 14 14 15 2 Chronicles 14 14 14 Nehemiah 16 4 1 Nehemiah 16 3 33 Nehemiah 16 4 2 Nehemiah 16 3 34 Nehemiah 16 4 3 Nehemiah 16 3 35 Nehemiah 16 4 4 Nehemiah 16 3 36 Nehemiah 16 4 5 Nehemiah 16 3 37 Nehemiah 16 4 6 Nehemiah 16 3 38 Nehemiah 16 4 7 Nehemiah 16 4 1 Nehemiah 16 4 8 Nehemiah 16 4 2 Nehemiah 16 4 9 Nehemiah 16 4 3 Nehemiah 16 4 10 Nehemiah 16 4 4 Nehemiah 16 4 11 Nehemiah 16 4 5 Nehemiah 16 4 12 Nehemiah 16 4 6 Nehemiah 16 4 13 Nehemiah 16 4 7 Nehemiah 16 4 14 Nehemiah 16 4 8 Nehemiah 16 4 15 Nehemiah 16 4 9 Nehemiah 16 4 16 Nehemiah 16 4 10 Nehemiah 16 4 17 Nehemiah 16 4 11 Nehemiah 16 4 18 Nehemiah 16 4 12 Nehemiah 16 4 19 Nehemiah 16 4 13 Nehemiah 16 4 20 Nehemiah 16 4 14 Nehemiah 16 4 21 Nehemiah 16 4 15 Nehemiah 16 4 22 Nehemiah 16 4 16 Nehemiah 16 4 23 Nehemiah 16 4 17 Nehemiah 16 7 67 Nehemiah 16 7 67 Nehemiah 16 7 68 Nehemiah 16 7 67 Nehemiah 16 7 69 Nehemiah 16 7 68 Nehemiah 16 7 70 Nehemiah 16 7 69 Nehemiah 16 7 71 Nehemiah 16 7 70 Nehemiah 16 7 72 Nehemiah 16 7 71 Nehemiah 16 7 73 Nehemiah 16 7 72 Nehemiah 16 9 38 Nehemiah 16 10 1 Nehemiah 16 10 1 Nehemiah 16 10 2 Nehemiah 16 10 2 Nehemiah 16 10 3 Nehemiah 16 10 3 Nehemiah 16 10 4 Nehemiah 16 10 4 Nehemiah 16 10 5 Nehemiah 16 10 5 Nehemiah 16 10 6 Nehemiah 16 10 6 Nehemiah 16 10 7 Nehemiah 16 10 7 Nehemiah 16 10 8 Nehemiah 16 10 8 Nehemiah 16 10 9 Nehemiah 16 10 9 Nehemiah 16 10 10 Nehemiah 16 10 10 Nehemiah 16 10 11 Nehemiah 16 10 11 Nehemiah 16 10 12 Nehemiah 16 10 12 Nehemiah 16 10 13 Nehemiah 16 10 13 Nehemiah 16 10 14 Nehemiah 16 10 14 Nehemiah 16 10 15 Nehemiah 16 10 15 Nehemiah 16 10 16 Nehemiah 16 10 16 Nehemiah 16 10 17 Nehemiah 16 10 17 Nehemiah 16 10 18 Nehemiah 16 10 18 Nehemiah 16 10 19 Nehemiah 16 10 19 Nehemiah 16 10 20 Nehemiah 16 10 20 Nehemiah 16 10 21 Nehemiah 16 10 21 Nehemiah 16 10 22 Nehemiah 16 10 22 Nehemiah 16 10 23 Nehemiah 16 10 23 Nehemiah 16 10 24 Nehemiah 16 10 24 Nehemiah 16 10 25 Nehemiah 16 10 25 Nehemiah 16 10 26 Nehemiah 16 10 26 Nehemiah 16 10 27 Nehemiah 16 10 27 Nehemiah 16 10 28 Nehemiah 16 10 28 Nehemiah 16 10 29 Nehemiah 16 10 29 Nehemiah 16 10 30 Nehemiah 16 10 30 Nehemiah 16 10 31 Nehemiah 16 10 31 Nehemiah 16 10 32 Nehemiah 16 10 32 Nehemiah 16 10 33 Nehemiah 16 10 33 Nehemiah 16 10 34 Nehemiah 16 10 34 Nehemiah 16 10 35 Nehemiah 16 10 35 Nehemiah 16 10 36 Nehemiah 16 10 36 Nehemiah 16 10 37 Nehemiah 16 10 37 Nehemiah 16 10 38 Nehemiah 16 10 38 Nehemiah 16 10 39 Nehemiah 16 10 39 Nehemiah 16 10 40 Job 18 39 31 Job 18 40 1 Job 18 39 32 Job 18 40 2 Job 18 39 33 Job 18 40 3 Job 18 39 34 Job 18 40 4 Job 18 39 35 Job 18 40 5 Job 18 40 1 Job 18 40 6 Job 18 40 2 Job 18 40 7 Job 18 40 3 Job 18 40 8 Job 18 40 4 Job 18 40 9 Job 18 40 5 Job 18 40 10 Job 18 40 6 Job 18 40 11 Job 18 40 7 Job 18 40 12 Job 18 40 8 Job 18 40 13 Job 18 40 9 Job 18 40 14 Job 18 40 10 Job 18 40 15 Job 18 40 11 Job 18 40 16 Job 18 40 12 Job 18 40 17 Job 18 40 13 Job 18 40 18 Job 18 40 14 Job 18 40 19 Job 18 40 15 Job 18 40 20 Job 18 40 16 Job 18 40 21 Job 18 40 17 Job 18 40 22 Job 18 40 18 Job 18 40 23 Job 18 40 19 Job 18 40 24 Job 18 40 20 Job 18 40 25 Job 18 40 21 Job 18 40 26 Job 18 40 22 Job 18 40 27 Job 18 40 23 Job 18 40 28 Job 18 40 24 Job 18 40 29 Job 18 40 25 Job 18 40 30 Job 18 40 26 Job 18 40 31 Job 18 40 27 Job 18 40 32 Psalms 19 9 22 Psalms 19 10 1 Psalms 19 9 23 Psalms 19 10 2 Psalms 19 9 24 Psalms 19 10 3 Psalms 19 9 25 Psalms 19 10 4 Psalms 19 9 26 Psalms 19 10 5 Psalms 19 9 27 Psalms 19 10 6 Psalms 19 9 28 Psalms 19 10 7 Psalms 19 9 29 Psalms 19 10 8 Psalms 19 9 30 Psalms 19 10 9 Psalms 19 9 31 Psalms 19 10 10 Psalms 19 9 32 Psalms 19 10 11 Psalms 19 9 33 Psalms 19 10 12 Psalms 19 9 34 Psalms 19 10 13 Psalms 19 9 35 Psalms 19 10 14 Psalms 19 9 36 Psalms 19 10 15 Psalms 19 9 37 Psalms 19 10 16 Psalms 19 9 38 Psalms 19 10 17 Psalms 19 9 39 Psalms 19 10 18 Psalms 19 10 1 Psalms 19 11 1 Psalms 19 10 2 Psalms 19 11 2 Psalms 19 10 3 Psalms 19 11 3 Psalms 19 10 4 Psalms 19 11 4 Psalms 19 10 5 Psalms 19 11 5 Psalms 19 10 6 Psalms 19 11 6 Psalms 19 10 7 Psalms 19 11 7 Psalms 19 11 1 Psalms 19 12 1 Psalms 19 11 2 Psalms 19 12 2 Psalms 19 11 3 Psalms 19 12 3 Psalms 19 11 4 Psalms 19 12 4 Psalms 19 11 5 Psalms 19 12 5 Psalms 19 11 6 Psalms 19 12 6 Psalms 19 11 7 Psalms 19 12 7 Psalms 19 11 8 Psalms 19 12 8 Psalms 19 11 9 Psalms 19 12 9 Psalms 19 12 1 Psalms 19 13 1 Psalms 19 12 2 Psalms 19 13 2 Psalms 19 12 3 Psalms 19 13 3 Psalms 19 12 4 Psalms 19 13 4 Psalms 19 12 5 Psalms 19 13 5 Psalms 19 12 6 Psalms 19 13 6 Psalms 19 13 1 Psalms 19 14 1 Psalms 19 13 2 Psalms 19 14 2 Psalms 19 13 3 Psalms 19 14 3 Psalms 19 13 4 Psalms 19 14 4 Psalms 19 13 5 Psalms 19 14 5 Psalms 19 13 6 Psalms 19 14 6 Psalms 19 13 7 Psalms 19 14 7 Psalms 19 14 1 Psalms 19 15 1 Psalms 19 14 2 Psalms 19 15 2 Psalms 19 14 3 Psalms 19 15 3 Psalms 19 14 4 Psalms 19 15 4 Psalms 19 14 5 Psalms 19 15 5 Psalms 19 15 1 Psalms 19 16 1 Psalms 19 15 2 Psalms 19 16 2 Psalms 19 15 3 Psalms 19 16 3 Psalms 19 15 4 Psalms 19 16 4 Psalms 19 15 5 Psalms 19 16 5 Psalms 19 15 6 Psalms 19 16 6 Psalms 19 15 7 Psalms 19 16 7 Psalms 19 15 8 Psalms 19 16 8 Psalms 19 15 9 Psalms 19 16 9 Psalms 19 15 10 Psalms 19 16 10 Psalms 19 15 11 Psalms 19 16 11 Psalms 19 16 1 Psalms 19 17 1 Psalms 19 16 2 Psalms 19 17 2 Psalms 19 16 3 Psalms 19 17 3 Psalms 19 16 4 Psalms 19 17 4 Psalms 19 16 5 Psalms 19 17 5 Psalms 19 16 6 Psalms 19 17 6 Psalms 19 16 7 Psalms 19 17 7 Psalms 19 16 8 Psalms 19 17 8 Psalms 19 16 9 Psalms 19 17 9 Psalms 19 16 10 Psalms 19 17 10 Psalms 19 16 11 Psalms 19 17 11 Psalms 19 16 12 Psalms 19 17 12 Psalms 19 16 13 Psalms 19 17 13 Psalms 19 16 14 Psalms 19 17 14 Psalms 19 16 15 Psalms 19 17 15 Psalms 19 17 1 Psalms 19 18 2 Psalms 19 17 2 Psalms 19 18 3 Psalms 19 17 3 Psalms 19 18 4 Psalms 19 17 4 Psalms 19 18 5 Psalms 19 17 5 Psalms 19 18 6 Psalms 19 17 6 Psalms 19 18 7 Psalms 19 17 7 Psalms 19 18 8 Psalms 19 17 8 Psalms 19 18 9 Psalms 19 17 9 Psalms 19 18 10 Psalms 19 17 10 Psalms 19 18 11 Psalms 19 17 11 Psalms 19 18 12 Psalms 19 17 12 Psalms 19 18 13 Psalms 19 17 13 Psalms 19 18 14 Psalms 19 17 14 Psalms 19 18 15 Psalms 19 17 15 Psalms 19 18 16 Psalms 19 17 16 Psalms 19 18 17 Psalms 19 17 17 Psalms 19 18 18 Psalms 19 17 18 Psalms 19 18 19 Psalms 19 17 19 Psalms 19 18 20 Psalms 19 17 20 Psalms 19 18 21 Psalms 19 17 21 Psalms 19 18 22 Psalms 19 17 22 Psalms 19 18 23 Psalms 19 17 23 Psalms 19 18 24 Psalms 19 17 24 Psalms 19 18 25 Psalms 19 17 25 Psalms 19 18 26 Psalms 19 17 26 Psalms 19 18 27 Psalms 19 17 27 Psalms 19 18 28 Psalms 19 17 28 Psalms 19 18 29 Psalms 19 17 29 Psalms 19 18 30 Psalms 19 17 30 Psalms 19 18 31 Psalms 19 17 31 Psalms 19 18 32 Psalms 19 17 32 Psalms 19 18 33 Psalms 19 17 33 Psalms 19 18 34 Psalms 19 17 34 Psalms 19 18 35 Psalms 19 17 35 Psalms 19 18 36 Psalms 19 17 36 Psalms 19 18 37 Psalms 19 17 37 Psalms 19 18 38 Psalms 19 17 38 Psalms 19 18 39 Psalms 19 17 39 Psalms 19 18 40 Psalms 19 17 40 Psalms 19 18 41 Psalms 19 17 41 Psalms 19 18 42 Psalms 19 17 42 Psalms 19 18 43 Psalms 19 17 43 Psalms 19 18 44 Psalms 19 17 44 Psalms 19 18 45 Psalms 19 17 45 Psalms 19 18 46 Psalms 19 17 46 Psalms 19 18 47 Psalms 19 17 47 Psalms 19 18 48 Psalms 19 17 48 Psalms 19 18 49 Psalms 19 17 49 Psalms 19 18 50 Psalms 19 17 50 Psalms 19 18 51 Psalms 19 18 1 Psalms 19 19 1 Psalms 19 18 2 Psalms 19 19 2 Psalms 19 18 3 Psalms 19 19 3 Psalms 19 18 4 Psalms 19 19 4 Psalms 19 18 5 Psalms 19 19 5 Psalms 19 18 6 Psalms 19 19 6 Psalms 19 18 7 Psalms 19 19 7 Psalms 19 18 8 Psalms 19 19 8 Psalms 19 18 9 Psalms 19 19 9 Psalms 19 18 10 Psalms 19 19 10 Psalms 19 18 11 Psalms 19 19 11 Psalms 19 18 12 Psalms 19 19 12 Psalms 19 18 13 Psalms 19 19 13 Psalms 19 18 14 Psalms 19 19 14 Psalms 19 18 15 Psalms 19 19 15 Psalms 19 19 1 Psalms 19 20 1 Psalms 19 19 2 Psalms 19 20 2 Psalms 19 19 3 Psalms 19 20 3 Psalms 19 19 4 Psalms 19 20 4 Psalms 19 19 5 Psalms 19 20 5 Psalms 19 19 6 Psalms 19 20 6 Psalms 19 19 7 Psalms 19 20 7 Psalms 19 19 8 Psalms 19 20 8 Psalms 19 19 9 Psalms 19 20 9 Psalms 19 19 10 Psalms 19 20 10 Psalms 19 20 1 Psalms 19 21 1 Psalms 19 20 2 Psalms 19 21 2 Psalms 19 20 3 Psalms 19 21 3 Psalms 19 20 4 Psalms 19 21 4 Psalms 19 20 5 Psalms 19 21 5 Psalms 19 20 6 Psalms 19 21 6 Psalms 19 20 7 Psalms 19 21 7 Psalms 19 20 8 Psalms 19 21 8 Psalms 19 20 9 Psalms 19 21 9 Psalms 19 20 10 Psalms 19 21 10 Psalms 19 20 11 Psalms 19 21 11 Psalms 19 20 12 Psalms 19 21 12 Psalms 19 20 13 Psalms 19 21 13 Psalms 19 20 14 Psalms 19 21 14 Psalms 19 21 1 Psalms 19 22 1 Psalms 19 21 2 Psalms 19 22 2 Psalms 19 21 3 Psalms 19 22 3 Psalms 19 21 4 Psalms 19 22 4 Psalms 19 21 5 Psalms 19 22 5 Psalms 19 21 6 Psalms 19 22 6 Psalms 19 21 7 Psalms 19 22 7 Psalms 19 21 8 Psalms 19 22 8 Psalms 19 21 9 Psalms 19 22 9 Psalms 19 21 10 Psalms 19 22 10 Psalms 19 21 11 Psalms 19 22 11 Psalms 19 21 12 Psalms 19 22 12 Psalms 19 21 13 Psalms 19 22 13 Psalms 19 21 14 Psalms 19 22 14 Psalms 19 21 15 Psalms 19 22 15 Psalms 19 21 16 Psalms 19 22 16 Psalms 19 21 17 Psalms 19 22 17 Psalms 19 21 18 Psalms 19 22 18 Psalms 19 21 19 Psalms 19 22 19 Psalms 19 21 20 Psalms 19 22 20 Psalms 19 21 21 Psalms 19 22 21 Psalms 19 21 22 Psalms 19 22 22 Psalms 19 21 23 Psalms 19 22 23 Psalms 19 21 24 Psalms 19 22 24 Psalms 19 21 25 Psalms 19 22 25 Psalms 19 21 26 Psalms 19 22 26 Psalms 19 21 27 Psalms 19 22 27 Psalms 19 21 28 Psalms 19 22 28 Psalms 19 21 29 Psalms 19 22 29 Psalms 19 21 30 Psalms 19 22 30 Psalms 19 21 31 Psalms 19 22 31 Psalms 19 21 32 Psalms 19 22 32 Psalms 19 22 1 Psalms 19 23 1 Psalms 19 22 2 Psalms 19 23 2 Psalms 19 22 3 Psalms 19 23 3 Psalms 19 22 4 Psalms 19 23 4 Psalms 19 22 5 Psalms 19 23 5 Psalms 19 22 6 Psalms 19 23 6 Psalms 19 23 1 Psalms 19 24 1 Psalms 19 23 2 Psalms 19 24 2 Psalms 19 23 3 Psalms 19 24 3 Psalms 19 23 4 Psalms 19 24 4 Psalms 19 23 5 Psalms 19 24 5 Psalms 19 23 6 Psalms 19 24 6 Psalms 19 23 7 Psalms 19 24 7 Psalms 19 23 8 Psalms 19 24 8 Psalms 19 23 9 Psalms 19 24 9 Psalms 19 23 10 Psalms 19 24 10 Psalms 19 24 1 Psalms 19 25 1 Psalms 19 24 2 Psalms 19 25 2 Psalms 19 24 3 Psalms 19 25 3 Psalms 19 24 4 Psalms 19 25 4 Psalms 19 24 5 Psalms 19 25 5 Psalms 19 24 6 Psalms 19 25 6 Psalms 19 24 7 Psalms 19 25 7 Psalms 19 24 8 Psalms 19 25 8 Psalms 19 24 9 Psalms 19 25 9 Psalms 19 24 10 Psalms 19 25 10 Psalms 19 24 11 Psalms 19 25 11 Psalms 19 24 12 Psalms 19 25 12 Psalms 19 24 13 Psalms 19 25 13 Psalms 19 24 14 Psalms 19 25 14 Psalms 19 24 15 Psalms 19 25 15 Psalms 19 24 16 Psalms 19 25 16 Psalms 19 24 17 Psalms 19 25 17 Psalms 19 24 18 Psalms 19 25 18 Psalms 19 24 19 Psalms 19 25 19 Psalms 19 24 20 Psalms 19 25 20 Psalms 19 24 21 Psalms 19 25 21 Psalms 19 24 22 Psalms 19 25 22 Psalms 19 25 1 Psalms 19 26 1 Psalms 19 25 2 Psalms 19 26 2 Psalms 19 25 3 Psalms 19 26 3 Psalms 19 25 4 Psalms 19 26 4 Psalms 19 25 5 Psalms 19 26 5 Psalms 19 25 6 Psalms 19 26 6 Psalms 19 25 7 Psalms 19 26 7 Psalms 19 25 8 Psalms 19 26 8 Psalms 19 25 9 Psalms 19 26 9 Psalms 19 25 10 Psalms 19 26 10 Psalms 19 25 11 Psalms 19 26 11 Psalms 19 25 12 Psalms 19 26 12 Psalms 19 26 1 Psalms 19 27 1 Psalms 19 26 2 Psalms 19 27 2 Psalms 19 26 3 Psalms 19 27 3 Psalms 19 26 4 Psalms 19 27 4 Psalms 19 26 5 Psalms 19 27 5 Psalms 19 26 6 Psalms 19 27 6 Psalms 19 26 7 Psalms 19 27 7 Psalms 19 26 8 Psalms 19 27 8 Psalms 19 26 9 Psalms 19 27 9 Psalms 19 26 10 Psalms 19 27 10 Psalms 19 26 11 Psalms 19 27 11 Psalms 19 26 12 Psalms 19 27 12 Psalms 19 26 13 Psalms 19 27 13 Psalms 19 26 14 Psalms 19 27 14 Psalms 19 27 1 Psalms 19 28 1 Psalms 19 27 2 Psalms 19 28 2 Psalms 19 27 3 Psalms 19 28 3 Psalms 19 27 4 Psalms 19 28 4 Psalms 19 27 5 Psalms 19 28 5 Psalms 19 27 6 Psalms 19 28 6 Psalms 19 27 7 Psalms 19 28 7 Psalms 19 27 8 Psalms 19 28 8 Psalms 19 27 9 Psalms 19 28 9 Psalms 19 28 1 Psalms 19 29 1 Psalms 19 28 2 Psalms 19 29 2 Psalms 19 28 3 Psalms 19 29 3 Psalms 19 28 4 Psalms 19 29 4 Psalms 19 28 5 Psalms 19 29 5 Psalms 19 28 6 Psalms 19 29 6 Psalms 19 28 7 Psalms 19 29 7 Psalms 19 28 8 Psalms 19 29 8 Psalms 19 28 9 Psalms 19 29 9 Psalms 19 28 10 Psalms 19 29 10 Psalms 19 28 11 Psalms 19 29 11 Psalms 19 29 1 Psalms 19 30 1 Psalms 19 29 2 Psalms 19 30 2 Psalms 19 29 3 Psalms 19 30 3 Psalms 19 29 4 Psalms 19 30 4 Psalms 19 29 5 Psalms 19 30 5 Psalms 19 29 6 Psalms 19 30 6 Psalms 19 29 7 Psalms 19 30 7 Psalms 19 29 8 Psalms 19 30 8 Psalms 19 29 9 Psalms 19 30 9 Psalms 19 29 10 Psalms 19 30 10 Psalms 19 29 11 Psalms 19 30 11 Psalms 19 29 12 Psalms 19 30 12 Psalms 19 29 13 Psalms 19 30 13 Psalms 19 30 1 Psalms 19 31 1 Psalms 19 30 2 Psalms 19 31 2 Psalms 19 30 3 Psalms 19 31 3 Psalms 19 30 4 Psalms 19 31 4 Psalms 19 30 5 Psalms 19 31 5 Psalms 19 30 6 Psalms 19 31 6 Psalms 19 30 7 Psalms 19 31 7 Psalms 19 30 8 Psalms 19 31 8 Psalms 19 30 9 Psalms 19 31 9 Psalms 19 30 10 Psalms 19 31 10 Psalms 19 30 11 Psalms 19 31 11 Psalms 19 30 12 Psalms 19 31 12 Psalms 19 30 13 Psalms 19 31 13 Psalms 19 30 14 Psalms 19 31 14 Psalms 19 30 15 Psalms 19 31 15 Psalms 19 30 16 Psalms 19 31 16 Psalms 19 30 17 Psalms 19 31 17 Psalms 19 30 18 Psalms 19 31 18 Psalms 19 30 19 Psalms 19 31 19 Psalms 19 30 20 Psalms 19 31 20 Psalms 19 30 21 Psalms 19 31 21 Psalms 19 30 22 Psalms 19 31 22 Psalms 19 30 23 Psalms 19 31 23 Psalms 19 30 24 Psalms 19 31 24 Psalms 19 30 25 Psalms 19 31 25 Psalms 19 31 1 Psalms 19 32 1 Psalms 19 31 2 Psalms 19 32 2 Psalms 19 31 3 Psalms 19 32 3 Psalms 19 31 4 Psalms 19 32 4 Psalms 19 31 5 Psalms 19 32 5 Psalms 19 31 6 Psalms 19 32 6 Psalms 19 31 7 Psalms 19 32 7 Psalms 19 31 8 Psalms 19 32 8 Psalms 19 31 9 Psalms 19 32 9 Psalms 19 31 10 Psalms 19 32 10 Psalms 19 31 11 Psalms 19 32 11 Psalms 19 32 1 Psalms 19 33 1 Psalms 19 32 2 Psalms 19 33 2 Psalms 19 32 3 Psalms 19 33 3 Psalms 19 32 4 Psalms 19 33 4 Psalms 19 32 5 Psalms 19 33 5 Psalms 19 32 6 Psalms 19 33 6 Psalms 19 32 7 Psalms 19 33 7 Psalms 19 32 8 Psalms 19 33 8 Psalms 19 32 9 Psalms 19 33 9 Psalms 19 32 10 Psalms 19 33 10 Psalms 19 32 11 Psalms 19 33 11 Psalms 19 32 12 Psalms 19 33 12 Psalms 19 32 13 Psalms 19 33 13 Psalms 19 32 14 Psalms 19 33 14 Psalms 19 32 15 Psalms 19 33 15 Psalms 19 32 16 Psalms 19 33 16 Psalms 19 32 17 Psalms 19 33 17 Psalms 19 32 18 Psalms 19 33 18 Psalms 19 32 19 Psalms 19 33 19 Psalms 19 32 20 Psalms 19 33 20 Psalms 19 32 21 Psalms 19 33 21 Psalms 19 32 22 Psalms 19 33 22 Psalms 19 33 1 Psalms 19 34 1 Psalms 19 33 2 Psalms 19 34 2 Psalms 19 33 3 Psalms 19 34 3 Psalms 19 33 4 Psalms 19 34 4 Psalms 19 33 5 Psalms 19 34 5 Psalms 19 33 6 Psalms 19 34 6 Psalms 19 33 7 Psalms 19 34 7 Psalms 19 33 8 Psalms 19 34 8 Psalms 19 33 9 Psalms 19 34 9 Psalms 19 33 10 Psalms 19 34 10 Psalms 19 33 11 Psalms 19 34 11 Psalms 19 33 12 Psalms 19 34 12 Psalms 19 33 13 Psalms 19 34 13 Psalms 19 33 14 Psalms 19 34 14 Psalms 19 33 15 Psalms 19 34 15 Psalms 19 33 16 Psalms 19 34 16 Psalms 19 33 17 Psalms 19 34 17 Psalms 19 33 18 Psalms 19 34 18 Psalms 19 33 19 Psalms 19 34 19 Psalms 19 33 20 Psalms 19 34 20 Psalms 19 33 21 Psalms 19 34 21 Psalms 19 33 22 Psalms 19 34 22 Psalms 19 33 23 Psalms 19 34 23 Psalms 19 34 1 Psalms 19 35 1 Psalms 19 34 2 Psalms 19 35 2 Psalms 19 34 3 Psalms 19 35 3 Psalms 19 34 4 Psalms 19 35 4 Psalms 19 34 5 Psalms 19 35 5 Psalms 19 34 6 Psalms 19 35 6 Psalms 19 34 7 Psalms 19 35 7 Psalms 19 34 8 Psalms 19 35 8 Psalms 19 34 9 Psalms 19 35 9 Psalms 19 34 10 Psalms 19 35 10 Psalms 19 34 11 Psalms 19 35 11 Psalms 19 34 12 Psalms 19 35 12 Psalms 19 34 13 Psalms 19 35 13 Psalms 19 34 14 Psalms 19 35 14 Psalms 19 34 15 Psalms 19 35 15 Psalms 19 34 16 Psalms 19 35 16 Psalms 19 34 17 Psalms 19 35 17 Psalms 19 34 18 Psalms 19 35 18 Psalms 19 34 19 Psalms 19 35 19 Psalms 19 34 20 Psalms 19 35 20 Psalms 19 34 21 Psalms 19 35 21 Psalms 19 34 22 Psalms 19 35 22 Psalms 19 34 23 Psalms 19 35 23 Psalms 19 34 24 Psalms 19 35 24 Psalms 19 34 25 Psalms 19 35 25 Psalms 19 34 26 Psalms 19 35 26 Psalms 19 34 27 Psalms 19 35 27 Psalms 19 34 28 Psalms 19 35 28 Psalms 19 35 1 Psalms 19 36 1 Psalms 19 35 2 Psalms 19 36 2 Psalms 19 35 3 Psalms 19 36 3 Psalms 19 35 4 Psalms 19 36 4 Psalms 19 35 5 Psalms 19 36 5 Psalms 19 35 6 Psalms 19 36 6 Psalms 19 35 7 Psalms 19 36 7 Psalms 19 35 8 Psalms 19 36 8 Psalms 19 35 9 Psalms 19 36 9 Psalms 19 35 10 Psalms 19 36 10 Psalms 19 35 11 Psalms 19 36 11 Psalms 19 35 12 Psalms 19 36 12 Psalms 19 35 13 Psalms 19 36 13 Psalms 19 36 1 Psalms 19 37 1 Psalms 19 36 2 Psalms 19 37 2 Psalms 19 36 3 Psalms 19 37 3 Psalms 19 36 4 Psalms 19 37 4 Psalms 19 36 5 Psalms 19 37 5 Psalms 19 36 6 Psalms 19 37 6 Psalms 19 36 7 Psalms 19 37 7 Psalms 19 36 8 Psalms 19 37 8 Psalms 19 36 9 Psalms 19 37 9 Psalms 19 36 10 Psalms 19 37 10 Psalms 19 36 11 Psalms 19 37 11 Psalms 19 36 12 Psalms 19 37 12 Psalms 19 36 13 Psalms 19 37 13 Psalms 19 36 14 Psalms 19 37 14 Psalms 19 36 15 Psalms 19 37 15 Psalms 19 36 16 Psalms 19 37 16 Psalms 19 36 17 Psalms 19 37 17 Psalms 19 36 18 Psalms 19 37 18 Psalms 19 36 19 Psalms 19 37 19 Psalms 19 36 20 Psalms 19 37 20 Psalms 19 36 21 Psalms 19 37 21 Psalms 19 36 22 Psalms 19 37 22 Psalms 19 36 23 Psalms 19 37 23 Psalms 19 36 24 Psalms 19 37 24 Psalms 19 36 25 Psalms 19 37 25 Psalms 19 36 26 Psalms 19 37 26 Psalms 19 36 27 Psalms 19 37 27 Psalms 19 36 28 Psalms 19 37 28 Psalms 19 36 29 Psalms 19 37 29 Psalms 19 36 30 Psalms 19 37 30 Psalms 19 36 31 Psalms 19 37 31 Psalms 19 36 32 Psalms 19 37 32 Psalms 19 36 33 Psalms 19 37 33 Psalms 19 36 34 Psalms 19 37 34 Psalms 19 36 35 Psalms 19 37 35 Psalms 19 36 36 Psalms 19 37 36 Psalms 19 36 37 Psalms 19 37 37 Psalms 19 36 38 Psalms 19 37 38 Psalms 19 36 39 Psalms 19 37 39 Psalms 19 36 40 Psalms 19 37 40 Psalms 19 37 1 Psalms 19 38 1 Psalms 19 37 2 Psalms 19 38 2 Psalms 19 37 3 Psalms 19 38 3 Psalms 19 37 4 Psalms 19 38 4 Psalms 19 37 5 Psalms 19 38 5 Psalms 19 37 6 Psalms 19 38 6 Psalms 19 37 7 Psalms 19 38 7 Psalms 19 37 8 Psalms 19 38 8 Psalms 19 37 9 Psalms 19 38 9 Psalms 19 37 10 Psalms 19 38 10 Psalms 19 37 11 Psalms 19 38 11 Psalms 19 37 12 Psalms 19 38 12 Psalms 19 37 13 Psalms 19 38 13 Psalms 19 37 14 Psalms 19 38 14 Psalms 19 37 15 Psalms 19 38 15 Psalms 19 37 16 Psalms 19 38 16 Psalms 19 37 17 Psalms 19 38 17 Psalms 19 37 18 Psalms 19 38 18 Psalms 19 37 19 Psalms 19 38 19 Psalms 19 37 20 Psalms 19 38 20 Psalms 19 37 21 Psalms 19 38 21 Psalms 19 37 22 Psalms 19 38 22 Psalms 19 37 23 Psalms 19 38 23 Psalms 19 38 1 Psalms 19 39 1 Psalms 19 38 2 Psalms 19 39 2 Psalms 19 38 3 Psalms 19 39 3 Psalms 19 38 4 Psalms 19 39 4 Psalms 19 38 5 Psalms 19 39 5 Psalms 19 38 6 Psalms 19 39 6 Psalms 19 38 7 Psalms 19 39 7 Psalms 19 38 8 Psalms 19 39 8 Psalms 19 38 9 Psalms 19 39 9 Psalms 19 38 10 Psalms 19 39 10 Psalms 19 38 11 Psalms 19 39 11 Psalms 19 38 12 Psalms 19 39 12 Psalms 19 38 13 Psalms 19 39 13 Psalms 19 38 14 Psalms 19 39 14 Psalms 19 39 1 Psalms 19 40 1 Psalms 19 39 2 Psalms 19 40 2 Psalms 19 39 3 Psalms 19 40 3 Psalms 19 39 4 Psalms 19 40 4 Psalms 19 39 5 Psalms 19 40 5 Psalms 19 39 6 Psalms 19 40 6 Psalms 19 39 7 Psalms 19 40 7 Psalms 19 39 8 Psalms 19 40 8 Psalms 19 39 9 Psalms 19 40 9 Psalms 19 39 10 Psalms 19 40 10 Psalms 19 39 11 Psalms 19 40 11 Psalms 19 39 12 Psalms 19 40 12 Psalms 19 39 13 Psalms 19 40 13 Psalms 19 39 14 Psalms 19 40 14 Psalms 19 39 15 Psalms 19 40 15 Psalms 19 39 16 Psalms 19 40 16 Psalms 19 39 17 Psalms 19 40 17 Psalms 19 39 18 Psalms 19 40 18 Psalms 19 40 1 Psalms 19 41 1 Psalms 19 40 2 Psalms 19 41 2 Psalms 19 40 3 Psalms 19 41 3 Psalms 19 40 4 Psalms 19 41 4 Psalms 19 40 5 Psalms 19 41 5 Psalms 19 40 6 Psalms 19 41 6 Psalms 19 40 7 Psalms 19 41 7 Psalms 19 40 8 Psalms 19 41 8 Psalms 19 40 9 Psalms 19 41 9 Psalms 19 40 10 Psalms 19 41 10 Psalms 19 40 11 Psalms 19 41 11 Psalms 19 40 12 Psalms 19 41 12 Psalms 19 40 13 Psalms 19 41 13 Psalms 19 40 14 Psalms 19 41 14 Psalms 19 41 1 Psalms 19 42 1 Psalms 19 41 2 Psalms 19 42 2 Psalms 19 41 3 Psalms 19 42 3 Psalms 19 41 4 Psalms 19 42 4 Psalms 19 41 5 Psalms 19 42 5 Psalms 19 41 6 Psalms 19 42 6 Psalms 19 41 7 Psalms 19 42 7 Psalms 19 41 8 Psalms 19 42 8 Psalms 19 41 9 Psalms 19 42 9 Psalms 19 41 10 Psalms 19 42 10 Psalms 19 41 11 Psalms 19 42 11 Psalms 19 41 12 Psalms 19 42 12 Psalms 19 42 1 Psalms 19 43 1 Psalms 19 42 2 Psalms 19 43 2 Psalms 19 42 3 Psalms 19 43 3 Psalms 19 42 4 Psalms 19 43 4 Psalms 19 42 5 Psalms 19 43 5 Psalms 19 43 1 Psalms 19 44 1 Psalms 19 43 2 Psalms 19 44 2 Psalms 19 43 3 Psalms 19 44 3 Psalms 19 43 4 Psalms 19 44 4 Psalms 19 43 5 Psalms 19 44 5 Psalms 19 43 6 Psalms 19 44 6 Psalms 19 43 7 Psalms 19 44 7 Psalms 19 43 8 Psalms 19 44 8 Psalms 19 43 9 Psalms 19 44 9 Psalms 19 43 10 Psalms 19 44 10 Psalms 19 43 11 Psalms 19 44 11 Psalms 19 43 12 Psalms 19 44 12 Psalms 19 43 13 Psalms 19 44 13 Psalms 19 43 14 Psalms 19 44 14 Psalms 19 43 15 Psalms 19 44 15 Psalms 19 43 16 Psalms 19 44 16 Psalms 19 43 17 Psalms 19 44 17 Psalms 19 43 18 Psalms 19 44 18 Psalms 19 43 19 Psalms 19 44 19 Psalms 19 43 20 Psalms 19 44 20 Psalms 19 43 21 Psalms 19 44 21 Psalms 19 43 22 Psalms 19 44 22 Psalms 19 43 23 Psalms 19 44 23 Psalms 19 43 24 Psalms 19 44 24 Psalms 19 43 25 Psalms 19 44 25 Psalms 19 43 26 Psalms 19 44 26 Psalms 19 43 27 Psalms 19 44 27 Psalms 19 44 1 Psalms 19 45 1 Psalms 19 44 2 Psalms 19 45 2 Psalms 19 44 3 Psalms 19 45 3 Psalms 19 44 4 Psalms 19 45 4 Psalms 19 44 5 Psalms 19 45 5 Psalms 19 44 6 Psalms 19 45 6 Psalms 19 44 7 Psalms 19 45 7 Psalms 19 44 8 Psalms 19 45 8 Psalms 19 44 9 Psalms 19 45 9 Psalms 19 44 10 Psalms 19 45 10 Psalms 19 44 11 Psalms 19 45 11 Psalms 19 44 12 Psalms 19 45 12 Psalms 19 44 13 Psalms 19 45 13 Psalms 19 44 14 Psalms 19 45 14 Psalms 19 44 15 Psalms 19 45 15 Psalms 19 44 16 Psalms 19 45 16 Psalms 19 44 17 Psalms 19 45 17 Psalms 19 44 18 Psalms 19 45 18 Psalms 19 45 1 Psalms 19 46 1 Psalms 19 45 2 Psalms 19 46 2 Psalms 19 45 3 Psalms 19 46 3 Psalms 19 45 4 Psalms 19 46 4 Psalms 19 45 5 Psalms 19 46 5 Psalms 19 45 6 Psalms 19 46 6 Psalms 19 45 7 Psalms 19 46 7 Psalms 19 45 8 Psalms 19 46 8 Psalms 19 45 9 Psalms 19 46 9 Psalms 19 45 10 Psalms 19 46 10 Psalms 19 45 11 Psalms 19 46 11 Psalms 19 45 12 Psalms 19 46 12 Psalms 19 46 1 Psalms 19 47 1 Psalms 19 46 2 Psalms 19 47 2 Psalms 19 46 3 Psalms 19 47 3 Psalms 19 46 4 Psalms 19 47 4 Psalms 19 46 5 Psalms 19 47 5 Psalms 19 46 6 Psalms 19 47 6 Psalms 19 46 7 Psalms 19 47 7 Psalms 19 46 8 Psalms 19 47 8 Psalms 19 46 9 Psalms 19 47 9 Psalms 19 46 10 Psalms 19 47 10 Psalms 19 47 1 Psalms 19 48 1 Psalms 19 47 2 Psalms 19 48 2 Psalms 19 47 3 Psalms 19 48 3 Psalms 19 47 4 Psalms 19 48 4 Psalms 19 47 5 Psalms 19 48 5 Psalms 19 47 6 Psalms 19 48 6 Psalms 19 47 7 Psalms 19 48 7 Psalms 19 47 8 Psalms 19 48 8 Psalms 19 47 9 Psalms 19 48 9 Psalms 19 47 10 Psalms 19 48 10 Psalms 19 47 11 Psalms 19 48 11 Psalms 19 47 12 Psalms 19 48 12 Psalms 19 47 13 Psalms 19 48 13 Psalms 19 47 14 Psalms 19 48 14 Psalms 19 47 15 Psalms 19 48 15 Psalms 19 48 1 Psalms 19 49 1 Psalms 19 48 2 Psalms 19 49 2 Psalms 19 48 3 Psalms 19 49 3 Psalms 19 48 4 Psalms 19 49 4 Psalms 19 48 5 Psalms 19 49 5 Psalms 19 48 6 Psalms 19 49 6 Psalms 19 48 7 Psalms 19 49 7 Psalms 19 48 8 Psalms 19 49 8 Psalms 19 48 9 Psalms 19 49 9 Psalms 19 48 10 Psalms 19 49 10 Psalms 19 48 11 Psalms 19 49 11 Psalms 19 48 12 Psalms 19 49 12 Psalms 19 48 13 Psalms 19 49 13 Psalms 19 48 14 Psalms 19 49 14 Psalms 19 48 15 Psalms 19 49 15 Psalms 19 48 16 Psalms 19 49 16 Psalms 19 48 17 Psalms 19 49 17 Psalms 19 48 18 Psalms 19 49 18 Psalms 19 48 19 Psalms 19 49 19 Psalms 19 48 20 Psalms 19 49 20 Psalms 19 48 21 Psalms 19 49 21 Psalms 19 49 1 Psalms 19 50 1 Psalms 19 49 2 Psalms 19 50 2 Psalms 19 49 3 Psalms 19 50 3 Psalms 19 49 4 Psalms 19 50 4 Psalms 19 49 5 Psalms 19 50 5 Psalms 19 49 6 Psalms 19 50 6 Psalms 19 49 7 Psalms 19 50 7 Psalms 19 49 8 Psalms 19 50 8 Psalms 19 49 9 Psalms 19 50 9 Psalms 19 49 10 Psalms 19 50 10 Psalms 19 49 11 Psalms 19 50 11 Psalms 19 49 12 Psalms 19 50 12 Psalms 19 49 13 Psalms 19 50 13 Psalms 19 49 14 Psalms 19 50 14 Psalms 19 49 15 Psalms 19 50 15 Psalms 19 49 16 Psalms 19 50 16 Psalms 19 49 17 Psalms 19 50 17 Psalms 19 49 18 Psalms 19 50 18 Psalms 19 49 19 Psalms 19 50 19 Psalms 19 49 20 Psalms 19 50 20 Psalms 19 49 21 Psalms 19 50 21 Psalms 19 49 22 Psalms 19 50 22 Psalms 19 49 23 Psalms 19 50 23 Psalms 19 50 1 Psalms 19 51 1 Psalms 19 50 2 Psalms 19 51 2 Psalms 19 50 3 Psalms 19 51 3 Psalms 19 50 4 Psalms 19 51 4 Psalms 19 50 5 Psalms 19 51 5 Psalms 19 50 6 Psalms 19 51 6 Psalms 19 50 7 Psalms 19 51 7 Psalms 19 50 8 Psalms 19 51 8 Psalms 19 50 9 Psalms 19 51 9 Psalms 19 50 10 Psalms 19 51 10 Psalms 19 50 11 Psalms 19 51 11 Psalms 19 50 12 Psalms 19 51 12 Psalms 19 50 13 Psalms 19 51 13 Psalms 19 50 14 Psalms 19 51 14 Psalms 19 50 15 Psalms 19 51 15 Psalms 19 50 16 Psalms 19 51 16 Psalms 19 50 17 Psalms 19 51 17 Psalms 19 50 18 Psalms 19 51 18 Psalms 19 50 19 Psalms 19 51 19 Psalms 19 50 20 Psalms 19 51 20 Psalms 19 50 21 Psalms 19 51 21 Psalms 19 51 1 Psalms 19 52 1 Psalms 19 51 2 Psalms 19 52 2 Psalms 19 51 3 Psalms 19 52 3 Psalms 19 51 4 Psalms 19 52 4 Psalms 19 51 5 Psalms 19 52 5 Psalms 19 51 6 Psalms 19 52 6 Psalms 19 51 7 Psalms 19 52 7 Psalms 19 51 8 Psalms 19 52 8 Psalms 19 51 9 Psalms 19 52 9 Psalms 19 51 10 Psalms 19 52 10 Psalms 19 51 11 Psalms 19 52 11 Psalms 19 52 1 Psalms 19 53 1 Psalms 19 52 2 Psalms 19 53 2 Psalms 19 52 3 Psalms 19 53 3 Psalms 19 52 4 Psalms 19 53 4 Psalms 19 52 5 Psalms 19 53 5 Psalms 19 52 6 Psalms 19 53 6 Psalms 19 52 7 Psalms 19 53 7 Psalms 19 53 1 Psalms 19 54 1 Psalms 19 53 2 Psalms 19 54 2 Psalms 19 53 3 Psalms 19 54 3 Psalms 19 53 4 Psalms 19 54 4 Psalms 19 53 5 Psalms 19 54 5 Psalms 19 53 6 Psalms 19 54 6 Psalms 19 53 7 Psalms 19 54 7 Psalms 19 53 8 Psalms 19 54 8 Psalms 19 53 9 Psalms 19 54 9 Psalms 19 54 1 Psalms 19 55 1 Psalms 19 54 2 Psalms 19 55 2 Psalms 19 54 3 Psalms 19 55 3 Psalms 19 54 4 Psalms 19 55 4 Psalms 19 54 5 Psalms 19 55 5 Psalms 19 54 6 Psalms 19 55 6 Psalms 19 54 7 Psalms 19 55 7 Psalms 19 54 8 Psalms 19 55 8 Psalms 19 54 9 Psalms 19 55 9 Psalms 19 54 10 Psalms 19 55 10 Psalms 19 54 11 Psalms 19 55 11 Psalms 19 54 12 Psalms 19 55 12 Psalms 19 54 13 Psalms 19 55 13 Psalms 19 54 14 Psalms 19 55 14 Psalms 19 54 15 Psalms 19 55 15 Psalms 19 54 16 Psalms 19 55 16 Psalms 19 54 17 Psalms 19 55 17 Psalms 19 54 18 Psalms 19 55 18 Psalms 19 54 19 Psalms 19 55 19 Psalms 19 54 20 Psalms 19 55 20 Psalms 19 54 21 Psalms 19 55 21 Psalms 19 54 22 Psalms 19 55 22 Psalms 19 54 23 Psalms 19 55 23 Psalms 19 54 24 Psalms 19 55 24 Psalms 19 55 1 Psalms 19 56 1 Psalms 19 55 2 Psalms 19 56 2 Psalms 19 55 3 Psalms 19 56 3 Psalms 19 55 4 Psalms 19 56 4 Psalms 19 55 5 Psalms 19 56 5 Psalms 19 55 6 Psalms 19 56 6 Psalms 19 55 7 Psalms 19 56 7 Psalms 19 55 8 Psalms 19 56 8 Psalms 19 55 9 Psalms 19 56 9 Psalms 19 55 10 Psalms 19 56 10 Psalms 19 55 11 Psalms 19 56 11 Psalms 19 55 12 Psalms 19 56 12 Psalms 19 55 13 Psalms 19 56 13 Psalms 19 55 14 Psalms 19 56 14 Psalms 19 56 1 Psalms 19 57 1 Psalms 19 56 2 Psalms 19 57 2 Psalms 19 56 3 Psalms 19 57 3 Psalms 19 56 4 Psalms 19 57 4 Psalms 19 56 5 Psalms 19 57 5 Psalms 19 56 6 Psalms 19 57 6 Psalms 19 56 7 Psalms 19 57 7 Psalms 19 56 8 Psalms 19 57 8 Psalms 19 56 9 Psalms 19 57 9 Psalms 19 56 10 Psalms 19 57 10 Psalms 19 56 11 Psalms 19 57 11 Psalms 19 56 12 Psalms 19 57 12 Psalms 19 57 1 Psalms 19 58 1 Psalms 19 57 2 Psalms 19 58 2 Psalms 19 57 3 Psalms 19 58 3 Psalms 19 57 4 Psalms 19 58 4 Psalms 19 57 5 Psalms 19 58 5 Psalms 19 57 6 Psalms 19 58 6 Psalms 19 57 7 Psalms 19 58 7 Psalms 19 57 8 Psalms 19 58 8 Psalms 19 57 9 Psalms 19 58 9 Psalms 19 57 10 Psalms 19 58 10 Psalms 19 57 11 Psalms 19 58 11 Psalms 19 57 12 Psalms 19 58 12 Psalms 19 58 1 Psalms 19 59 1 Psalms 19 58 2 Psalms 19 59 2 Psalms 19 58 3 Psalms 19 59 3 Psalms 19 58 4 Psalms 19 59 4 Psalms 19 58 5 Psalms 19 59 5 Psalms 19 58 6 Psalms 19 59 6 Psalms 19 58 7 Psalms 19 59 7 Psalms 19 58 8 Psalms 19 59 8 Psalms 19 58 9 Psalms 19 59 9 Psalms 19 58 10 Psalms 19 59 10 Psalms 19 58 11 Psalms 19 59 11 Psalms 19 58 12 Psalms 19 59 12 Psalms 19 58 13 Psalms 19 59 13 Psalms 19 58 14 Psalms 19 59 14 Psalms 19 58 15 Psalms 19 59 15 Psalms 19 58 16 Psalms 19 59 16 Psalms 19 58 17 Psalms 19 59 17 Psalms 19 58 18 Psalms 19 59 18 Psalms 19 59 1 Psalms 19 60 1 Psalms 19 59 2 Psalms 19 60 2 Psalms 19 59 3 Psalms 19 60 3 Psalms 19 59 4 Psalms 19 60 4 Psalms 19 59 5 Psalms 19 60 5 Psalms 19 59 6 Psalms 19 60 6 Psalms 19 59 7 Psalms 19 60 7 Psalms 19 59 8 Psalms 19 60 8 Psalms 19 59 9 Psalms 19 60 9 Psalms 19 59 10 Psalms 19 60 10 Psalms 19 59 11 Psalms 19 60 11 Psalms 19 59 12 Psalms 19 60 12 Psalms 19 59 13 Psalms 19 60 13 Psalms 19 59 14 Psalms 19 60 14 Psalms 19 60 1 Psalms 19 61 1 Psalms 19 60 2 Psalms 19 61 2 Psalms 19 60 3 Psalms 19 61 3 Psalms 19 60 4 Psalms 19 61 4 Psalms 19 60 5 Psalms 19 61 5 Psalms 19 60 6 Psalms 19 61 6 Psalms 19 60 7 Psalms 19 61 7 Psalms 19 60 8 Psalms 19 61 8 Psalms 19 60 9 Psalms 19 61 9 Psalms 19 61 1 Psalms 19 62 1 Psalms 19 61 2 Psalms 19 62 2 Psalms 19 61 3 Psalms 19 62 3 Psalms 19 61 4 Psalms 19 62 4 Psalms 19 61 5 Psalms 19 62 5 Psalms 19 61 6 Psalms 19 62 6 Psalms 19 61 7 Psalms 19 62 7 Psalms 19 61 8 Psalms 19 62 8 Psalms 19 61 9 Psalms 19 62 9 Psalms 19 61 10 Psalms 19 62 10 Psalms 19 61 11 Psalms 19 62 11 Psalms 19 61 12 Psalms 19 62 12 Psalms 19 61 13 Psalms 19 62 13 Psalms 19 62 1 Psalms 19 63 1 Psalms 19 62 2 Psalms 19 63 2 Psalms 19 62 3 Psalms 19 63 3 Psalms 19 62 4 Psalms 19 63 4 Psalms 19 62 5 Psalms 19 63 5 Psalms 19 62 6 Psalms 19 63 6 Psalms 19 62 7 Psalms 19 63 7 Psalms 19 62 8 Psalms 19 63 8 Psalms 19 62 9 Psalms 19 63 9 Psalms 19 62 10 Psalms 19 63 10 Psalms 19 62 11 Psalms 19 63 11 Psalms 19 62 12 Psalms 19 63 12 Psalms 19 63 1 Psalms 19 64 1 Psalms 19 63 2 Psalms 19 64 2 Psalms 19 63 3 Psalms 19 64 3 Psalms 19 63 4 Psalms 19 64 4 Psalms 19 63 5 Psalms 19 64 5 Psalms 19 63 6 Psalms 19 64 6 Psalms 19 63 7 Psalms 19 64 7 Psalms 19 63 8 Psalms 19 64 8 Psalms 19 63 9 Psalms 19 64 9 Psalms 19 63 10 Psalms 19 64 10 Psalms 19 63 11 Psalms 19 64 11 Psalms 19 64 1 Psalms 19 65 1 Psalms 19 64 2 Psalms 19 65 2 Psalms 19 64 3 Psalms 19 65 3 Psalms 19 64 4 Psalms 19 65 4 Psalms 19 64 5 Psalms 19 65 5 Psalms 19 64 6 Psalms 19 65 6 Psalms 19 64 7 Psalms 19 65 7 Psalms 19 64 8 Psalms 19 65 8 Psalms 19 64 9 Psalms 19 65 9 Psalms 19 64 10 Psalms 19 65 10 Psalms 19 64 11 Psalms 19 65 11 Psalms 19 64 12 Psalms 19 65 12 Psalms 19 64 13 Psalms 19 65 13 Psalms 19 64 14 Psalms 19 65 14 Psalms 19 65 1 Psalms 19 66 1 Psalms 19 65 2 Psalms 19 66 2 Psalms 19 65 3 Psalms 19 66 3 Psalms 19 65 4 Psalms 19 66 4 Psalms 19 65 5 Psalms 19 66 5 Psalms 19 65 6 Psalms 19 66 6 Psalms 19 65 7 Psalms 19 66 7 Psalms 19 65 8 Psalms 19 66 8 Psalms 19 65 9 Psalms 19 66 9 Psalms 19 65 10 Psalms 19 66 10 Psalms 19 65 11 Psalms 19 66 11 Psalms 19 65 12 Psalms 19 66 12 Psalms 19 65 13 Psalms 19 66 13 Psalms 19 65 14 Psalms 19 66 14 Psalms 19 65 15 Psalms 19 66 15 Psalms 19 65 16 Psalms 19 66 16 Psalms 19 65 17 Psalms 19 66 17 Psalms 19 65 18 Psalms 19 66 18 Psalms 19 65 19 Psalms 19 66 19 Psalms 19 65 20 Psalms 19 66 20 Psalms 19 66 1 Psalms 19 67 1 Psalms 19 66 2 Psalms 19 67 2 Psalms 19 66 3 Psalms 19 67 3 Psalms 19 66 4 Psalms 19 67 4 Psalms 19 66 5 Psalms 19 67 5 Psalms 19 66 6 Psalms 19 67 6 Psalms 19 66 7 Psalms 19 67 7 Psalms 19 66 8 Psalms 19 67 8 Psalms 19 67 1 Psalms 19 68 1 Psalms 19 67 2 Psalms 19 68 2 Psalms 19 67 3 Psalms 19 68 3 Psalms 19 67 4 Psalms 19 68 4 Psalms 19 67 5 Psalms 19 68 5 Psalms 19 67 6 Psalms 19 68 6 Psalms 19 67 7 Psalms 19 68 7 Psalms 19 67 8 Psalms 19 68 8 Psalms 19 67 9 Psalms 19 68 9 Psalms 19 67 10 Psalms 19 68 10 Psalms 19 67 11 Psalms 19 68 11 Psalms 19 67 12 Psalms 19 68 12 Psalms 19 67 13 Psalms 19 68 13 Psalms 19 67 14 Psalms 19 68 14 Psalms 19 67 15 Psalms 19 68 15 Psalms 19 67 16 Psalms 19 68 16 Psalms 19 67 17 Psalms 19 68 17 Psalms 19 67 18 Psalms 19 68 18 Psalms 19 67 19 Psalms 19 68 19 Psalms 19 67 20 Psalms 19 68 20 Psalms 19 67 21 Psalms 19 68 21 Psalms 19 67 22 Psalms 19 68 22 Psalms 19 67 23 Psalms 19 68 23 Psalms 19 67 24 Psalms 19 68 24 Psalms 19 67 25 Psalms 19 68 25 Psalms 19 67 26 Psalms 19 68 26 Psalms 19 67 27 Psalms 19 68 27 Psalms 19 67 28 Psalms 19 68 28 Psalms 19 67 29 Psalms 19 68 29 Psalms 19 67 30 Psalms 19 68 30 Psalms 19 67 31 Psalms 19 68 31 Psalms 19 67 32 Psalms 19 68 32 Psalms 19 67 33 Psalms 19 68 33 Psalms 19 67 34 Psalms 19 68 34 Psalms 19 67 35 Psalms 19 68 35 Psalms 19 67 36 Psalms 19 68 36 Psalms 19 68 1 Psalms 19 69 1 Psalms 19 68 2 Psalms 19 69 2 Psalms 19 68 3 Psalms 19 69 3 Psalms 19 68 4 Psalms 19 69 4 Psalms 19 68 5 Psalms 19 69 5 Psalms 19 68 6 Psalms 19 69 6 Psalms 19 68 7 Psalms 19 69 7 Psalms 19 68 8 Psalms 19 69 8 Psalms 19 68 9 Psalms 19 69 9 Psalms 19 68 10 Psalms 19 69 10 Psalms 19 68 11 Psalms 19 69 11 Psalms 19 68 12 Psalms 19 69 12 Psalms 19 68 13 Psalms 19 69 13 Psalms 19 68 14 Psalms 19 69 14 Psalms 19 68 15 Psalms 19 69 15 Psalms 19 68 16 Psalms 19 69 16 Psalms 19 68 17 Psalms 19 69 17 Psalms 19 68 18 Psalms 19 69 18 Psalms 19 68 19 Psalms 19 69 19 Psalms 19 68 20 Psalms 19 69 20 Psalms 19 68 21 Psalms 19 69 21 Psalms 19 68 22 Psalms 19 69 22 Psalms 19 68 23 Psalms 19 69 23 Psalms 19 68 24 Psalms 19 69 24 Psalms 19 68 25 Psalms 19 69 25 Psalms 19 68 26 Psalms 19 69 26 Psalms 19 68 27 Psalms 19 69 27 Psalms 19 68 28 Psalms 19 69 28 Psalms 19 68 29 Psalms 19 69 29 Psalms 19 68 30 Psalms 19 69 30 Psalms 19 68 31 Psalms 19 69 31 Psalms 19 68 32 Psalms 19 69 32 Psalms 19 68 33 Psalms 19 69 33 Psalms 19 68 34 Psalms 19 69 34 Psalms 19 68 35 Psalms 19 69 35 Psalms 19 68 36 Psalms 19 69 36 Psalms 19 68 37 Psalms 19 69 37 Psalms 19 69 1 Psalms 19 70 1 Psalms 19 69 2 Psalms 19 70 2 Psalms 19 69 3 Psalms 19 70 3 Psalms 19 69 4 Psalms 19 70 4 Psalms 19 69 5 Psalms 19 70 5 Psalms 19 69 6 Psalms 19 70 6 Psalms 19 70 1 Psalms 19 71 1 Psalms 19 70 2 Psalms 19 71 2 Psalms 19 70 3 Psalms 19 71 3 Psalms 19 70 4 Psalms 19 71 4 Psalms 19 70 5 Psalms 19 71 5 Psalms 19 70 6 Psalms 19 71 6 Psalms 19 70 7 Psalms 19 71 7 Psalms 19 70 8 Psalms 19 71 8 Psalms 19 70 9 Psalms 19 71 9 Psalms 19 70 10 Psalms 19 71 10 Psalms 19 70 11 Psalms 19 71 11 Psalms 19 70 12 Psalms 19 71 12 Psalms 19 70 13 Psalms 19 71 13 Psalms 19 70 14 Psalms 19 71 14 Psalms 19 70 15 Psalms 19 71 15 Psalms 19 70 16 Psalms 19 71 16 Psalms 19 70 17 Psalms 19 71 17 Psalms 19 70 18 Psalms 19 71 18 Psalms 19 70 19 Psalms 19 71 19 Psalms 19 70 20 Psalms 19 71 20 Psalms 19 70 21 Psalms 19 71 21 Psalms 19 70 22 Psalms 19 71 22 Psalms 19 70 23 Psalms 19 71 23 Psalms 19 70 24 Psalms 19 71 24 Psalms 19 71 1 Psalms 19 72 1 Psalms 19 71 2 Psalms 19 72 2 Psalms 19 71 3 Psalms 19 72 3 Psalms 19 71 4 Psalms 19 72 4 Psalms 19 71 5 Psalms 19 72 5 Psalms 19 71 6 Psalms 19 72 6 Psalms 19 71 7 Psalms 19 72 7 Psalms 19 71 8 Psalms 19 72 8 Psalms 19 71 9 Psalms 19 72 9 Psalms 19 71 10 Psalms 19 72 10 Psalms 19 71 11 Psalms 19 72 11 Psalms 19 71 12 Psalms 19 72 12 Psalms 19 71 13 Psalms 19 72 13 Psalms 19 71 14 Psalms 19 72 14 Psalms 19 71 15 Psalms 19 72 15 Psalms 19 71 16 Psalms 19 72 16 Psalms 19 71 17 Psalms 19 72 17 Psalms 19 71 18 Psalms 19 72 18 Psalms 19 71 19 Psalms 19 72 19 Psalms 19 71 20 Psalms 19 72 20 Psalms 19 72 1 Psalms 19 73 1 Psalms 19 72 2 Psalms 19 73 2 Psalms 19 72 3 Psalms 19 73 3 Psalms 19 72 4 Psalms 19 73 4 Psalms 19 72 5 Psalms 19 73 5 Psalms 19 72 6 Psalms 19 73 6 Psalms 19 72 7 Psalms 19 73 7 Psalms 19 72 8 Psalms 19 73 8 Psalms 19 72 9 Psalms 19 73 9 Psalms 19 72 10 Psalms 19 73 10 Psalms 19 72 11 Psalms 19 73 11 Psalms 19 72 12 Psalms 19 73 12 Psalms 19 72 13 Psalms 19 73 13 Psalms 19 72 14 Psalms 19 73 14 Psalms 19 72 15 Psalms 19 73 15 Psalms 19 72 16 Psalms 19 73 16 Psalms 19 72 17 Psalms 19 73 17 Psalms 19 72 18 Psalms 19 73 18 Psalms 19 72 19 Psalms 19 73 19 Psalms 19 72 20 Psalms 19 73 20 Psalms 19 72 21 Psalms 19 73 21 Psalms 19 72 22 Psalms 19 73 22 Psalms 19 72 23 Psalms 19 73 23 Psalms 19 72 24 Psalms 19 73 24 Psalms 19 72 25 Psalms 19 73 25 Psalms 19 72 26 Psalms 19 73 26 Psalms 19 72 27 Psalms 19 73 27 Psalms 19 72 28 Psalms 19 73 28 Psalms 19 73 1 Psalms 19 74 1 Psalms 19 73 2 Psalms 19 74 2 Psalms 19 73 3 Psalms 19 74 3 Psalms 19 73 4 Psalms 19 74 4 Psalms 19 73 5 Psalms 19 74 5 Psalms 19 73 6 Psalms 19 74 6 Psalms 19 73 7 Psalms 19 74 7 Psalms 19 73 8 Psalms 19 74 8 Psalms 19 73 9 Psalms 19 74 9 Psalms 19 73 10 Psalms 19 74 10 Psalms 19 73 11 Psalms 19 74 11 Psalms 19 73 12 Psalms 19 74 12 Psalms 19 73 13 Psalms 19 74 13 Psalms 19 73 14 Psalms 19 74 14 Psalms 19 73 15 Psalms 19 74 15 Psalms 19 73 16 Psalms 19 74 16 Psalms 19 73 17 Psalms 19 74 17 Psalms 19 73 18 Psalms 19 74 18 Psalms 19 73 19 Psalms 19 74 19 Psalms 19 73 20 Psalms 19 74 20 Psalms 19 73 21 Psalms 19 74 21 Psalms 19 73 22 Psalms 19 74 22 Psalms 19 73 23 Psalms 19 74 23 Psalms 19 74 1 Psalms 19 75 1 Psalms 19 74 2 Psalms 19 75 2 Psalms 19 74 3 Psalms 19 75 3 Psalms 19 74 4 Psalms 19 75 4 Psalms 19 74 5 Psalms 19 75 5 Psalms 19 74 6 Psalms 19 75 6 Psalms 19 74 7 Psalms 19 75 7 Psalms 19 74 8 Psalms 19 75 8 Psalms 19 74 9 Psalms 19 75 9 Psalms 19 74 10 Psalms 19 75 10 Psalms 19 74 11 Psalms 19 75 11 Psalms 19 75 1 Psalms 19 76 1 Psalms 19 75 2 Psalms 19 76 2 Psalms 19 75 3 Psalms 19 76 3 Psalms 19 75 4 Psalms 19 76 4 Psalms 19 75 5 Psalms 19 76 5 Psalms 19 75 6 Psalms 19 76 6 Psalms 19 75 7 Psalms 19 76 7 Psalms 19 75 8 Psalms 19 76 8 Psalms 19 75 9 Psalms 19 76 9 Psalms 19 75 10 Psalms 19 76 10 Psalms 19 75 11 Psalms 19 76 11 Psalms 19 75 12 Psalms 19 76 12 Psalms 19 75 13 Psalms 19 76 13 Psalms 19 76 1 Psalms 19 77 1 Psalms 19 76 2 Psalms 19 77 2 Psalms 19 76 3 Psalms 19 77 3 Psalms 19 76 4 Psalms 19 77 4 Psalms 19 76 5 Psalms 19 77 5 Psalms 19 76 6 Psalms 19 77 6 Psalms 19 76 7 Psalms 19 77 7 Psalms 19 76 8 Psalms 19 77 8 Psalms 19 76 9 Psalms 19 77 9 Psalms 19 76 10 Psalms 19 77 10 Psalms 19 76 11 Psalms 19 77 11 Psalms 19 76 12 Psalms 19 77 12 Psalms 19 76 13 Psalms 19 77 13 Psalms 19 76 14 Psalms 19 77 14 Psalms 19 76 15 Psalms 19 77 15 Psalms 19 76 16 Psalms 19 77 16 Psalms 19 76 17 Psalms 19 77 17 Psalms 19 76 18 Psalms 19 77 18 Psalms 19 76 19 Psalms 19 77 19 Psalms 19 76 20 Psalms 19 77 20 Psalms 19 76 21 Psalms 19 77 21 Psalms 19 77 1 Psalms 19 78 1 Psalms 19 77 2 Psalms 19 78 2 Psalms 19 77 3 Psalms 19 78 3 Psalms 19 77 4 Psalms 19 78 4 Psalms 19 77 5 Psalms 19 78 5 Psalms 19 77 6 Psalms 19 78 6 Psalms 19 77 7 Psalms 19 78 7 Psalms 19 77 8 Psalms 19 78 8 Psalms 19 77 9 Psalms 19 78 9 Psalms 19 77 10 Psalms 19 78 10 Psalms 19 77 11 Psalms 19 78 11 Psalms 19 77 12 Psalms 19 78 12 Psalms 19 77 13 Psalms 19 78 13 Psalms 19 77 14 Psalms 19 78 14 Psalms 19 77 15 Psalms 19 78 15 Psalms 19 77 16 Psalms 19 78 16 Psalms 19 77 17 Psalms 19 78 17 Psalms 19 77 18 Psalms 19 78 18 Psalms 19 77 19 Psalms 19 78 19 Psalms 19 77 20 Psalms 19 78 20 Psalms 19 77 21 Psalms 19 78 21 Psalms 19 77 22 Psalms 19 78 22 Psalms 19 77 23 Psalms 19 78 23 Psalms 19 77 24 Psalms 19 78 24 Psalms 19 77 25 Psalms 19 78 25 Psalms 19 77 26 Psalms 19 78 26 Psalms 19 77 27 Psalms 19 78 27 Psalms 19 77 28 Psalms 19 78 28 Psalms 19 77 29 Psalms 19 78 29 Psalms 19 77 30 Psalms 19 78 30 Psalms 19 77 31 Psalms 19 78 31 Psalms 19 77 32 Psalms 19 78 32 Psalms 19 77 33 Psalms 19 78 33 Psalms 19 77 34 Psalms 19 78 34 Psalms 19 77 35 Psalms 19 78 35 Psalms 19 77 36 Psalms 19 78 36 Psalms 19 77 37 Psalms 19 78 37 Psalms 19 77 38 Psalms 19 78 38 Psalms 19 77 39 Psalms 19 78 39 Psalms 19 77 40 Psalms 19 78 40 Psalms 19 77 41 Psalms 19 78 41 Psalms 19 77 42 Psalms 19 78 42 Psalms 19 77 43 Psalms 19 78 43 Psalms 19 77 44 Psalms 19 78 44 Psalms 19 77 45 Psalms 19 78 45 Psalms 19 77 46 Psalms 19 78 46 Psalms 19 77 47 Psalms 19 78 47 Psalms 19 77 48 Psalms 19 78 48 Psalms 19 77 49 Psalms 19 78 49 Psalms 19 77 50 Psalms 19 78 50 Psalms 19 77 51 Psalms 19 78 51 Psalms 19 77 52 Psalms 19 78 52 Psalms 19 77 53 Psalms 19 78 53 Psalms 19 77 54 Psalms 19 78 54 Psalms 19 77 55 Psalms 19 78 55 Psalms 19 77 56 Psalms 19 78 56 Psalms 19 77 57 Psalms 19 78 57 Psalms 19 77 58 Psalms 19 78 58 Psalms 19 77 59 Psalms 19 78 59 Psalms 19 77 60 Psalms 19 78 60 Psalms 19 77 61 Psalms 19 78 61 Psalms 19 77 62 Psalms 19 78 62 Psalms 19 77 63 Psalms 19 78 63 Psalms 19 77 64 Psalms 19 78 64 Psalms 19 77 65 Psalms 19 78 65 Psalms 19 77 66 Psalms 19 78 66 Psalms 19 77 67 Psalms 19 78 67 Psalms 19 77 68 Psalms 19 78 68 Psalms 19 77 69 Psalms 19 78 69 Psalms 19 77 70 Psalms 19 78 70 Psalms 19 77 71 Psalms 19 78 71 Psalms 19 77 72 Psalms 19 78 72 Psalms 19 78 1 Psalms 19 79 1 Psalms 19 78 2 Psalms 19 79 2 Psalms 19 78 3 Psalms 19 79 3 Psalms 19 78 4 Psalms 19 79 4 Psalms 19 78 5 Psalms 19 79 5 Psalms 19 78 6 Psalms 19 79 6 Psalms 19 78 7 Psalms 19 79 7 Psalms 19 78 8 Psalms 19 79 8 Psalms 19 78 9 Psalms 19 79 9 Psalms 19 78 10 Psalms 19 79 10 Psalms 19 78 11 Psalms 19 79 11 Psalms 19 78 12 Psalms 19 79 12 Psalms 19 78 13 Psalms 19 79 13 Psalms 19 79 1 Psalms 19 80 1 Psalms 19 79 2 Psalms 19 80 2 Psalms 19 79 3 Psalms 19 80 3 Psalms 19 79 4 Psalms 19 80 4 Psalms 19 79 5 Psalms 19 80 5 Psalms 19 79 6 Psalms 19 80 6 Psalms 19 79 7 Psalms 19 80 7 Psalms 19 79 8 Psalms 19 80 8 Psalms 19 79 9 Psalms 19 80 9 Psalms 19 79 10 Psalms 19 80 10 Psalms 19 79 11 Psalms 19 80 11 Psalms 19 79 12 Psalms 19 80 12 Psalms 19 79 13 Psalms 19 80 13 Psalms 19 79 14 Psalms 19 80 14 Psalms 19 79 15 Psalms 19 80 15 Psalms 19 79 16 Psalms 19 80 16 Psalms 19 79 17 Psalms 19 80 17 Psalms 19 79 18 Psalms 19 80 18 Psalms 19 79 19 Psalms 19 80 19 Psalms 19 79 20 Psalms 19 80 20 Psalms 19 80 1 Psalms 19 81 1 Psalms 19 80 2 Psalms 19 81 2 Psalms 19 80 3 Psalms 19 81 3 Psalms 19 80 4 Psalms 19 81 4 Psalms 19 80 5 Psalms 19 81 5 Psalms 19 80 6 Psalms 19 81 6 Psalms 19 80 7 Psalms 19 81 7 Psalms 19 80 8 Psalms 19 81 8 Psalms 19 80 9 Psalms 19 81 9 Psalms 19 80 10 Psalms 19 81 10 Psalms 19 80 11 Psalms 19 81 11 Psalms 19 80 12 Psalms 19 81 12 Psalms 19 80 13 Psalms 19 81 13 Psalms 19 80 14 Psalms 19 81 14 Psalms 19 80 15 Psalms 19 81 15 Psalms 19 80 16 Psalms 19 81 16 Psalms 19 80 17 Psalms 19 81 17 Psalms 19 81 1 Psalms 19 82 1 Psalms 19 81 2 Psalms 19 82 2 Psalms 19 81 3 Psalms 19 82 3 Psalms 19 81 4 Psalms 19 82 4 Psalms 19 81 5 Psalms 19 82 5 Psalms 19 81 6 Psalms 19 82 6 Psalms 19 81 7 Psalms 19 82 7 Psalms 19 81 8 Psalms 19 82 8 Psalms 19 82 1 Psalms 19 83 1 Psalms 19 82 2 Psalms 19 83 2 Psalms 19 82 3 Psalms 19 83 3 Psalms 19 82 4 Psalms 19 83 4 Psalms 19 82 5 Psalms 19 83 5 Psalms 19 82 6 Psalms 19 83 6 Psalms 19 82 7 Psalms 19 83 7 Psalms 19 82 8 Psalms 19 83 8 Psalms 19 82 9 Psalms 19 83 9 Psalms 19 82 10 Psalms 19 83 10 Psalms 19 82 11 Psalms 19 83 11 Psalms 19 82 12 Psalms 19 83 12 Psalms 19 82 13 Psalms 19 83 13 Psalms 19 82 14 Psalms 19 83 14 Psalms 19 82 15 Psalms 19 83 15 Psalms 19 82 16 Psalms 19 83 16 Psalms 19 82 17 Psalms 19 83 17 Psalms 19 82 18 Psalms 19 83 18 Psalms 19 82 19 Psalms 19 83 19 Psalms 19 83 1 Psalms 19 84 1 Psalms 19 83 2 Psalms 19 84 2 Psalms 19 83 3 Psalms 19 84 3 Psalms 19 83 4 Psalms 19 84 4 Psalms 19 83 5 Psalms 19 84 5 Psalms 19 83 6 Psalms 19 84 6 Psalms 19 83 7 Psalms 19 84 7 Psalms 19 83 8 Psalms 19 84 8 Psalms 19 83 9 Psalms 19 84 9 Psalms 19 83 10 Psalms 19 84 10 Psalms 19 83 11 Psalms 19 84 11 Psalms 19 83 12 Psalms 19 84 12 Psalms 19 83 13 Psalms 19 84 13 Psalms 19 84 1 Psalms 19 85 1 Psalms 19 84 2 Psalms 19 85 2 Psalms 19 84 3 Psalms 19 85 3 Psalms 19 84 4 Psalms 19 85 4 Psalms 19 84 5 Psalms 19 85 5 Psalms 19 84 6 Psalms 19 85 6 Psalms 19 84 7 Psalms 19 85 7 Psalms 19 84 8 Psalms 19 85 8 Psalms 19 84 9 Psalms 19 85 9 Psalms 19 84 10 Psalms 19 85 10 Psalms 19 84 11 Psalms 19 85 11 Psalms 19 84 12 Psalms 19 85 12 Psalms 19 84 13 Psalms 19 85 13 Psalms 19 84 14 Psalms 19 85 14 Psalms 19 85 1 Psalms 19 86 1 Psalms 19 85 2 Psalms 19 86 2 Psalms 19 85 3 Psalms 19 86 3 Psalms 19 85 4 Psalms 19 86 4 Psalms 19 85 5 Psalms 19 86 5 Psalms 19 85 6 Psalms 19 86 6 Psalms 19 85 7 Psalms 19 86 7 Psalms 19 85 8 Psalms 19 86 8 Psalms 19 85 9 Psalms 19 86 9 Psalms 19 85 10 Psalms 19 86 10 Psalms 19 85 11 Psalms 19 86 11 Psalms 19 85 12 Psalms 19 86 12 Psalms 19 85 13 Psalms 19 86 13 Psalms 19 85 14 Psalms 19 86 14 Psalms 19 85 15 Psalms 19 86 15 Psalms 19 85 16 Psalms 19 86 16 Psalms 19 85 17 Psalms 19 86 17 Psalms 19 86 1 Psalms 19 87 1 Psalms 19 86 2 Psalms 19 87 1 Psalms 19 86 2 Psalms 19 87 2 Psalms 19 86 3 Psalms 19 87 3 Psalms 19 86 4 Psalms 19 87 4 Psalms 19 86 5 Psalms 19 87 5 Psalms 19 86 6 Psalms 19 87 6 Psalms 19 86 7 Psalms 19 87 7 Psalms 19 87 1 Psalms 19 88 1 Psalms 19 87 2 Psalms 19 88 2 Psalms 19 87 3 Psalms 19 88 3 Psalms 19 87 4 Psalms 19 88 4 Psalms 19 87 5 Psalms 19 88 5 Psalms 19 87 6 Psalms 19 88 6 Psalms 19 87 7 Psalms 19 88 7 Psalms 19 87 8 Psalms 19 88 8 Psalms 19 87 9 Psalms 19 88 9 Psalms 19 87 10 Psalms 19 88 10 Psalms 19 87 11 Psalms 19 88 11 Psalms 19 87 12 Psalms 19 88 12 Psalms 19 87 13 Psalms 19 88 13 Psalms 19 87 14 Psalms 19 88 14 Psalms 19 87 15 Psalms 19 88 15 Psalms 19 87 16 Psalms 19 88 16 Psalms 19 87 17 Psalms 19 88 17 Psalms 19 87 18 Psalms 19 88 18 Psalms 19 87 19 Psalms 19 88 19 Psalms 19 88 1 Psalms 19 89 1 Psalms 19 88 2 Psalms 19 89 2 Psalms 19 88 3 Psalms 19 89 3 Psalms 19 88 4 Psalms 19 89 4 Psalms 19 88 5 Psalms 19 89 5 Psalms 19 88 6 Psalms 19 89 6 Psalms 19 88 7 Psalms 19 89 7 Psalms 19 88 8 Psalms 19 89 8 Psalms 19 88 9 Psalms 19 89 9 Psalms 19 88 10 Psalms 19 89 10 Psalms 19 88 11 Psalms 19 89 11 Psalms 19 88 12 Psalms 19 89 12 Psalms 19 88 13 Psalms 19 89 13 Psalms 19 88 14 Psalms 19 89 14 Psalms 19 88 15 Psalms 19 89 15 Psalms 19 88 16 Psalms 19 89 16 Psalms 19 88 17 Psalms 19 89 17 Psalms 19 88 18 Psalms 19 89 18 Psalms 19 88 19 Psalms 19 89 19 Psalms 19 88 20 Psalms 19 89 20 Psalms 19 88 21 Psalms 19 89 21 Psalms 19 88 22 Psalms 19 89 22 Psalms 19 88 23 Psalms 19 89 23 Psalms 19 88 24 Psalms 19 89 24 Psalms 19 88 25 Psalms 19 89 25 Psalms 19 88 26 Psalms 19 89 26 Psalms 19 88 27 Psalms 19 89 27 Psalms 19 88 28 Psalms 19 89 28 Psalms 19 88 29 Psalms 19 89 29 Psalms 19 88 30 Psalms 19 89 30 Psalms 19 88 31 Psalms 19 89 31 Psalms 19 88 32 Psalms 19 89 32 Psalms 19 88 33 Psalms 19 89 33 Psalms 19 88 34 Psalms 19 89 34 Psalms 19 88 35 Psalms 19 89 35 Psalms 19 88 36 Psalms 19 89 36 Psalms 19 88 37 Psalms 19 89 37 Psalms 19 88 38 Psalms 19 89 38 Psalms 19 88 39 Psalms 19 89 39 Psalms 19 88 40 Psalms 19 89 40 Psalms 19 88 41 Psalms 19 89 41 Psalms 19 88 42 Psalms 19 89 42 Psalms 19 88 43 Psalms 19 89 43 Psalms 19 88 44 Psalms 19 89 44 Psalms 19 88 45 Psalms 19 89 45 Psalms 19 88 46 Psalms 19 89 46 Psalms 19 88 47 Psalms 19 89 47 Psalms 19 88 48 Psalms 19 89 48 Psalms 19 88 49 Psalms 19 89 49 Psalms 19 88 50 Psalms 19 89 50 Psalms 19 88 51 Psalms 19 89 51 Psalms 19 88 52 Psalms 19 89 52 Psalms 19 88 53 Psalms 19 89 53 Psalms 19 89 2 Psalms 19 90 1 Psalms 19 89 3 Psalms 19 90 2 Psalms 19 89 4 Psalms 19 90 3 Psalms 19 89 5 Psalms 19 90 4 Psalms 19 89 6 Psalms 19 90 5 Psalms 19 89 7 Psalms 19 90 7 Psalms 19 89 8 Psalms 19 90 8 Psalms 19 89 9 Psalms 19 90 9 Psalms 19 89 10 Psalms 19 90 10 Psalms 19 89 11 Psalms 19 90 11 Psalms 19 89 12 Psalms 19 90 12 Psalms 19 89 13 Psalms 19 90 13 Psalms 19 89 14 Psalms 19 90 14 Psalms 19 89 15 Psalms 19 90 15 Psalms 19 89 16 Psalms 19 90 16 Psalms 19 89 17 Psalms 19 90 17 Psalms 19 90 1 Psalms 19 91 1 Psalms 19 90 2 Psalms 19 91 2 Psalms 19 90 3 Psalms 19 91 3 Psalms 19 90 4 Psalms 19 91 4 Psalms 19 90 5 Psalms 19 91 5 Psalms 19 90 6 Psalms 19 91 6 Psalms 19 90 7 Psalms 19 91 7 Psalms 19 90 8 Psalms 19 91 8 Psalms 19 90 9 Psalms 19 91 9 Psalms 19 90 10 Psalms 19 91 10 Psalms 19 90 11 Psalms 19 91 11 Psalms 19 90 12 Psalms 19 91 12 Psalms 19 90 13 Psalms 19 91 13 Psalms 19 90 14 Psalms 19 91 14 Psalms 19 90 15 Psalms 19 91 15 Psalms 19 90 16 Psalms 19 91 16 Psalms 19 91 1 Psalms 19 92 1 Psalms 19 91 2 Psalms 19 92 2 Psalms 19 91 3 Psalms 19 92 3 Psalms 19 91 4 Psalms 19 92 4 Psalms 19 91 5 Psalms 19 92 5 Psalms 19 91 6 Psalms 19 92 6 Psalms 19 91 7 Psalms 19 92 7 Psalms 19 91 8 Psalms 19 92 8 Psalms 19 91 9 Psalms 19 92 9 Psalms 19 91 10 Psalms 19 92 10 Psalms 19 91 11 Psalms 19 92 11 Psalms 19 91 12 Psalms 19 92 12 Psalms 19 91 13 Psalms 19 92 13 Psalms 19 91 14 Psalms 19 92 14 Psalms 19 91 15 Psalms 19 92 15 Psalms 19 91 16 Psalms 19 92 16 Psalms 19 92 1 Psalms 19 93 1 Psalms 19 92 2 Psalms 19 93 2 Psalms 19 92 3 Psalms 19 93 3 Psalms 19 92 4 Psalms 19 93 4 Psalms 19 92 5 Psalms 19 93 5 Psalms 19 93 1 Psalms 19 94 1 Psalms 19 93 2 Psalms 19 94 2 Psalms 19 93 3 Psalms 19 94 3 Psalms 19 93 4 Psalms 19 94 4 Psalms 19 93 5 Psalms 19 94 5 Psalms 19 93 6 Psalms 19 94 6 Psalms 19 93 7 Psalms 19 94 7 Psalms 19 93 8 Psalms 19 94 8 Psalms 19 93 9 Psalms 19 94 9 Psalms 19 93 10 Psalms 19 94 10 Psalms 19 93 11 Psalms 19 94 11 Psalms 19 93 12 Psalms 19 94 12 Psalms 19 93 13 Psalms 19 94 13 Psalms 19 93 14 Psalms 19 94 14 Psalms 19 93 15 Psalms 19 94 15 Psalms 19 93 16 Psalms 19 94 16 Psalms 19 93 17 Psalms 19 94 17 Psalms 19 93 18 Psalms 19 94 18 Psalms 19 93 19 Psalms 19 94 19 Psalms 19 93 20 Psalms 19 94 20 Psalms 19 93 21 Psalms 19 94 21 Psalms 19 93 22 Psalms 19 94 22 Psalms 19 93 23 Psalms 19 94 23 Psalms 19 94 1 Psalms 19 95 1 Psalms 19 94 2 Psalms 19 95 2 Psalms 19 94 3 Psalms 19 95 3 Psalms 19 94 4 Psalms 19 95 4 Psalms 19 94 5 Psalms 19 95 5 Psalms 19 94 6 Psalms 19 95 6 Psalms 19 94 7 Psalms 19 95 7 Psalms 19 94 8 Psalms 19 95 8 Psalms 19 94 9 Psalms 19 95 9 Psalms 19 94 10 Psalms 19 95 10 Psalms 19 94 11 Psalms 19 95 11 Psalms 19 95 1 Psalms 19 96 1 Psalms 19 95 2 Psalms 19 96 2 Psalms 19 95 3 Psalms 19 96 3 Psalms 19 95 4 Psalms 19 96 4 Psalms 19 95 5 Psalms 19 96 5 Psalms 19 95 6 Psalms 19 96 6 Psalms 19 95 7 Psalms 19 96 7 Psalms 19 95 8 Psalms 19 96 8 Psalms 19 95 9 Psalms 19 96 9 Psalms 19 95 10 Psalms 19 96 10 Psalms 19 95 11 Psalms 19 96 11 Psalms 19 95 12 Psalms 19 96 12 Psalms 19 95 13 Psalms 19 96 13 Psalms 19 96 1 Psalms 19 97 1 Psalms 19 96 2 Psalms 19 97 2 Psalms 19 96 3 Psalms 19 97 3 Psalms 19 96 4 Psalms 19 97 4 Psalms 19 96 5 Psalms 19 97 5 Psalms 19 96 6 Psalms 19 97 6 Psalms 19 96 7 Psalms 19 97 7 Psalms 19 96 8 Psalms 19 97 8 Psalms 19 96 9 Psalms 19 97 9 Psalms 19 96 10 Psalms 19 97 10 Psalms 19 96 11 Psalms 19 97 11 Psalms 19 96 12 Psalms 19 97 12 Psalms 19 97 1 Psalms 19 98 1 Psalms 19 97 2 Psalms 19 98 2 Psalms 19 97 3 Psalms 19 98 3 Psalms 19 97 4 Psalms 19 98 4 Psalms 19 97 5 Psalms 19 98 5 Psalms 19 97 6 Psalms 19 98 6 Psalms 19 97 7 Psalms 19 98 7 Psalms 19 97 8 Psalms 19 98 8 Psalms 19 97 9 Psalms 19 98 9 Psalms 19 98 1 Psalms 19 99 1 Psalms 19 98 2 Psalms 19 99 2 Psalms 19 98 3 Psalms 19 99 3 Psalms 19 98 4 Psalms 19 99 4 Psalms 19 98 5 Psalms 19 99 5 Psalms 19 98 6 Psalms 19 99 6 Psalms 19 98 7 Psalms 19 99 7 Psalms 19 98 8 Psalms 19 99 8 Psalms 19 98 9 Psalms 19 99 9 Psalms 19 99 1 Psalms 19 100 1 Psalms 19 99 2 Psalms 19 100 2 Psalms 19 99 3 Psalms 19 100 3 Psalms 19 99 4 Psalms 19 100 4 Psalms 19 99 5 Psalms 19 100 5 Psalms 19 100 1 Psalms 19 101 1 Psalms 19 100 2 Psalms 19 101 2 Psalms 19 100 3 Psalms 19 101 3 Psalms 19 100 4 Psalms 19 101 4 Psalms 19 100 5 Psalms 19 101 5 Psalms 19 100 6 Psalms 19 101 6 Psalms 19 100 7 Psalms 19 101 7 Psalms 19 100 8 Psalms 19 101 8 Psalms 19 101 1 Psalms 19 102 1 Psalms 19 101 2 Psalms 19 102 2 Psalms 19 101 3 Psalms 19 102 3 Psalms 19 101 4 Psalms 19 102 4 Psalms 19 101 5 Psalms 19 102 5 Psalms 19 101 6 Psalms 19 102 6 Psalms 19 101 7 Psalms 19 102 7 Psalms 19 101 8 Psalms 19 102 8 Psalms 19 101 9 Psalms 19 102 9 Psalms 19 101 10 Psalms 19 102 10 Psalms 19 101 11 Psalms 19 102 11 Psalms 19 101 12 Psalms 19 102 12 Psalms 19 101 13 Psalms 19 102 13 Psalms 19 101 14 Psalms 19 102 14 Psalms 19 101 15 Psalms 19 102 15 Psalms 19 101 16 Psalms 19 102 16 Psalms 19 101 17 Psalms 19 102 17 Psalms 19 101 18 Psalms 19 102 18 Psalms 19 101 19 Psalms 19 102 19 Psalms 19 101 20 Psalms 19 102 20 Psalms 19 101 21 Psalms 19 102 21 Psalms 19 101 22 Psalms 19 102 22 Psalms 19 101 23 Psalms 19 102 23 Psalms 19 101 24 Psalms 19 102 24 Psalms 19 101 25 Psalms 19 102 25 Psalms 19 101 26 Psalms 19 102 26 Psalms 19 101 27 Psalms 19 102 27 Psalms 19 101 28 Psalms 19 102 28 Psalms 19 101 29 Psalms 19 102 29 Psalms 19 102 1 Psalms 19 103 1 Psalms 19 102 2 Psalms 19 103 2 Psalms 19 102 3 Psalms 19 103 3 Psalms 19 102 4 Psalms 19 103 4 Psalms 19 102 5 Psalms 19 103 5 Psalms 19 102 6 Psalms 19 103 6 Psalms 19 102 7 Psalms 19 103 7 Psalms 19 102 8 Psalms 19 103 8 Psalms 19 102 9 Psalms 19 103 9 Psalms 19 102 10 Psalms 19 103 10 Psalms 19 102 11 Psalms 19 103 11 Psalms 19 102 12 Psalms 19 103 12 Psalms 19 102 13 Psalms 19 103 13 Psalms 19 102 14 Psalms 19 103 14 Psalms 19 102 15 Psalms 19 103 15 Psalms 19 102 16 Psalms 19 103 16 Psalms 19 102 17 Psalms 19 103 17 Psalms 19 102 18 Psalms 19 103 18 Psalms 19 102 19 Psalms 19 103 19 Psalms 19 102 20 Psalms 19 103 20 Psalms 19 102 21 Psalms 19 103 21 Psalms 19 102 22 Psalms 19 103 22 Psalms 19 103 1 Psalms 19 104 1 Psalms 19 103 2 Psalms 19 104 2 Psalms 19 103 3 Psalms 19 104 3 Psalms 19 103 4 Psalms 19 104 4 Psalms 19 103 5 Psalms 19 104 5 Psalms 19 103 6 Psalms 19 104 6 Psalms 19 103 7 Psalms 19 104 7 Psalms 19 103 8 Psalms 19 104 8 Psalms 19 103 9 Psalms 19 104 9 Psalms 19 103 10 Psalms 19 104 10 Psalms 19 103 11 Psalms 19 104 11 Psalms 19 103 12 Psalms 19 104 12 Psalms 19 103 13 Psalms 19 104 13 Psalms 19 103 14 Psalms 19 104 14 Psalms 19 103 15 Psalms 19 104 15 Psalms 19 103 16 Psalms 19 104 16 Psalms 19 103 17 Psalms 19 104 17 Psalms 19 103 18 Psalms 19 104 18 Psalms 19 103 19 Psalms 19 104 19 Psalms 19 103 20 Psalms 19 104 20 Psalms 19 103 21 Psalms 19 104 21 Psalms 19 103 22 Psalms 19 104 22 Psalms 19 103 23 Psalms 19 104 23 Psalms 19 103 24 Psalms 19 104 24 Psalms 19 103 25 Psalms 19 104 25 Psalms 19 103 26 Psalms 19 104 26 Psalms 19 103 27 Psalms 19 104 27 Psalms 19 103 28 Psalms 19 104 28 Psalms 19 103 29 Psalms 19 104 29 Psalms 19 103 30 Psalms 19 104 30 Psalms 19 103 31 Psalms 19 104 31 Psalms 19 103 32 Psalms 19 104 32 Psalms 19 103 33 Psalms 19 104 33 Psalms 19 103 34 Psalms 19 104 34 Psalms 19 103 35 Psalms 19 104 35 Psalms 19 104 1 Psalms 19 105 1 Psalms 19 104 2 Psalms 19 105 2 Psalms 19 104 3 Psalms 19 105 3 Psalms 19 104 4 Psalms 19 105 4 Psalms 19 104 5 Psalms 19 105 5 Psalms 19 104 6 Psalms 19 105 6 Psalms 19 104 7 Psalms 19 105 7 Psalms 19 104 8 Psalms 19 105 8 Psalms 19 104 9 Psalms 19 105 9 Psalms 19 104 10 Psalms 19 105 10 Psalms 19 104 11 Psalms 19 105 11 Psalms 19 104 12 Psalms 19 105 12 Psalms 19 104 13 Psalms 19 105 13 Psalms 19 104 14 Psalms 19 105 14 Psalms 19 104 15 Psalms 19 105 15 Psalms 19 104 16 Psalms 19 105 16 Psalms 19 104 17 Psalms 19 105 17 Psalms 19 104 18 Psalms 19 105 18 Psalms 19 104 19 Psalms 19 105 19 Psalms 19 104 20 Psalms 19 105 20 Psalms 19 104 21 Psalms 19 105 21 Psalms 19 104 22 Psalms 19 105 22 Psalms 19 104 23 Psalms 19 105 23 Psalms 19 104 24 Psalms 19 105 24 Psalms 19 104 25 Psalms 19 105 25 Psalms 19 104 26 Psalms 19 105 26 Psalms 19 104 27 Psalms 19 105 27 Psalms 19 104 28 Psalms 19 105 28 Psalms 19 104 29 Psalms 19 105 29 Psalms 19 104 30 Psalms 19 105 30 Psalms 19 104 31 Psalms 19 105 31 Psalms 19 104 32 Psalms 19 105 32 Psalms 19 104 33 Psalms 19 105 33 Psalms 19 104 34 Psalms 19 105 34 Psalms 19 104 35 Psalms 19 105 35 Psalms 19 104 36 Psalms 19 105 36 Psalms 19 104 37 Psalms 19 105 37 Psalms 19 104 38 Psalms 19 105 38 Psalms 19 104 39 Psalms 19 105 39 Psalms 19 104 40 Psalms 19 105 40 Psalms 19 104 41 Psalms 19 105 41 Psalms 19 104 42 Psalms 19 105 42 Psalms 19 104 43 Psalms 19 105 43 Psalms 19 104 44 Psalms 19 105 44 Psalms 19 104 45 Psalms 19 105 45 Psalms 19 105 1 Psalms 19 106 1 Psalms 19 105 2 Psalms 19 106 2 Psalms 19 105 3 Psalms 19 106 3 Psalms 19 105 4 Psalms 19 106 4 Psalms 19 105 5 Psalms 19 106 5 Psalms 19 105 6 Psalms 19 106 6 Psalms 19 105 7 Psalms 19 106 7 Psalms 19 105 8 Psalms 19 106 8 Psalms 19 105 9 Psalms 19 106 9 Psalms 19 105 10 Psalms 19 106 10 Psalms 19 105 11 Psalms 19 106 11 Psalms 19 105 12 Psalms 19 106 12 Psalms 19 105 13 Psalms 19 106 13 Psalms 19 105 14 Psalms 19 106 14 Psalms 19 105 15 Psalms 19 106 15 Psalms 19 105 16 Psalms 19 106 16 Psalms 19 105 17 Psalms 19 106 17 Psalms 19 105 18 Psalms 19 106 18 Psalms 19 105 19 Psalms 19 106 19 Psalms 19 105 20 Psalms 19 106 20 Psalms 19 105 21 Psalms 19 106 21 Psalms 19 105 22 Psalms 19 106 22 Psalms 19 105 23 Psalms 19 106 23 Psalms 19 105 24 Psalms 19 106 24 Psalms 19 105 25 Psalms 19 106 25 Psalms 19 105 26 Psalms 19 106 26 Psalms 19 105 27 Psalms 19 106 27 Psalms 19 105 28 Psalms 19 106 28 Psalms 19 105 29 Psalms 19 106 29 Psalms 19 105 30 Psalms 19 106 30 Psalms 19 105 31 Psalms 19 106 31 Psalms 19 105 32 Psalms 19 106 32 Psalms 19 105 33 Psalms 19 106 33 Psalms 19 105 34 Psalms 19 106 34 Psalms 19 105 35 Psalms 19 106 35 Psalms 19 105 36 Psalms 19 106 36 Psalms 19 105 37 Psalms 19 106 37 Psalms 19 105 38 Psalms 19 106 38 Psalms 19 105 39 Psalms 19 106 39 Psalms 19 105 40 Psalms 19 106 40 Psalms 19 105 41 Psalms 19 106 41 Psalms 19 105 42 Psalms 19 106 42 Psalms 19 105 43 Psalms 19 106 43 Psalms 19 105 44 Psalms 19 106 44 Psalms 19 105 45 Psalms 19 106 45 Psalms 19 105 46 Psalms 19 106 46 Psalms 19 105 47 Psalms 19 106 47 Psalms 19 105 48 Psalms 19 106 48 Psalms 19 106 1 Psalms 19 107 1 Psalms 19 106 2 Psalms 19 107 2 Psalms 19 106 3 Psalms 19 107 3 Psalms 19 106 4 Psalms 19 107 4 Psalms 19 106 5 Psalms 19 107 5 Psalms 19 106 6 Psalms 19 107 6 Psalms 19 106 7 Psalms 19 107 7 Psalms 19 106 8 Psalms 19 107 8 Psalms 19 106 9 Psalms 19 107 9 Psalms 19 106 10 Psalms 19 107 10 Psalms 19 106 11 Psalms 19 107 11 Psalms 19 106 12 Psalms 19 107 12 Psalms 19 106 13 Psalms 19 107 13 Psalms 19 106 14 Psalms 19 107 14 Psalms 19 106 15 Psalms 19 107 15 Psalms 19 106 16 Psalms 19 107 16 Psalms 19 106 17 Psalms 19 107 17 Psalms 19 106 18 Psalms 19 107 18 Psalms 19 106 19 Psalms 19 107 19 Psalms 19 106 20 Psalms 19 107 20 Psalms 19 106 21 Psalms 19 107 21 Psalms 19 106 22 Psalms 19 107 22 Psalms 19 106 23 Psalms 19 107 23 Psalms 19 106 24 Psalms 19 107 24 Psalms 19 106 25 Psalms 19 107 25 Psalms 19 106 26 Psalms 19 107 26 Psalms 19 106 27 Psalms 19 107 27 Psalms 19 106 28 Psalms 19 107 28 Psalms 19 106 29 Psalms 19 107 29 Psalms 19 106 30 Psalms 19 107 30 Psalms 19 106 31 Psalms 19 107 31 Psalms 19 106 32 Psalms 19 107 32 Psalms 19 106 33 Psalms 19 107 33 Psalms 19 106 34 Psalms 19 107 34 Psalms 19 106 35 Psalms 19 107 35 Psalms 19 106 36 Psalms 19 107 36 Psalms 19 106 37 Psalms 19 107 37 Psalms 19 106 38 Psalms 19 107 38 Psalms 19 106 39 Psalms 19 107 39 Psalms 19 106 40 Psalms 19 107 40 Psalms 19 106 41 Psalms 19 107 41 Psalms 19 106 42 Psalms 19 107 42 Psalms 19 106 43 Psalms 19 107 43 Psalms 19 107 1 Psalms 19 108 1 Psalms 19 107 2 Psalms 19 108 2 Psalms 19 107 3 Psalms 19 108 3 Psalms 19 107 4 Psalms 19 108 4 Psalms 19 107 5 Psalms 19 108 5 Psalms 19 107 6 Psalms 19 108 6 Psalms 19 107 7 Psalms 19 108 7 Psalms 19 107 8 Psalms 19 108 8 Psalms 19 107 9 Psalms 19 108 9 Psalms 19 107 10 Psalms 19 108 10 Psalms 19 107 11 Psalms 19 108 11 Psalms 19 107 12 Psalms 19 108 12 Psalms 19 107 13 Psalms 19 108 13 Psalms 19 107 14 Psalms 19 108 14 Psalms 19 108 1 Psalms 19 109 1 Psalms 19 108 2 Psalms 19 109 2 Psalms 19 108 3 Psalms 19 109 3 Psalms 19 108 4 Psalms 19 109 4 Psalms 19 108 5 Psalms 19 109 5 Psalms 19 108 6 Psalms 19 109 6 Psalms 19 108 7 Psalms 19 109 7 Psalms 19 108 8 Psalms 19 109 8 Psalms 19 108 9 Psalms 19 109 9 Psalms 19 108 10 Psalms 19 109 10 Psalms 19 108 11 Psalms 19 109 11 Psalms 19 108 12 Psalms 19 109 12 Psalms 19 108 13 Psalms 19 109 13 Psalms 19 108 14 Psalms 19 109 14 Psalms 19 108 15 Psalms 19 109 15 Psalms 19 108 16 Psalms 19 109 16 Psalms 19 108 17 Psalms 19 109 17 Psalms 19 108 18 Psalms 19 109 18 Psalms 19 108 19 Psalms 19 109 19 Psalms 19 108 20 Psalms 19 109 20 Psalms 19 108 21 Psalms 19 109 21 Psalms 19 108 22 Psalms 19 109 22 Psalms 19 108 23 Psalms 19 109 23 Psalms 19 108 24 Psalms 19 109 24 Psalms 19 108 25 Psalms 19 109 25 Psalms 19 108 26 Psalms 19 109 26 Psalms 19 108 27 Psalms 19 109 27 Psalms 19 108 28 Psalms 19 109 28 Psalms 19 108 29 Psalms 19 109 29 Psalms 19 108 30 Psalms 19 109 30 Psalms 19 108 31 Psalms 19 109 31 Psalms 19 109 1 Psalms 19 110 1 Psalms 19 109 2 Psalms 19 110 2 Psalms 19 109 3 Psalms 19 110 3 Psalms 19 109 4 Psalms 19 110 4 Psalms 19 109 5 Psalms 19 110 5 Psalms 19 109 6 Psalms 19 110 6 Psalms 19 109 7 Psalms 19 110 7 Psalms 19 110 1 Psalms 19 111 1 Psalms 19 110 2 Psalms 19 111 2 Psalms 19 110 3 Psalms 19 111 3 Psalms 19 110 4 Psalms 19 111 4 Psalms 19 110 5 Psalms 19 111 5 Psalms 19 110 6 Psalms 19 111 6 Psalms 19 110 7 Psalms 19 111 7 Psalms 19 110 8 Psalms 19 111 8 Psalms 19 110 9 Psalms 19 111 9 Psalms 19 110 10 Psalms 19 111 10 Psalms 19 111 1 Psalms 19 112 1 Psalms 19 111 2 Psalms 19 112 2 Psalms 19 111 3 Psalms 19 112 3 Psalms 19 111 4 Psalms 19 112 4 Psalms 19 111 5 Psalms 19 112 5 Psalms 19 111 6 Psalms 19 112 6 Psalms 19 111 7 Psalms 19 112 7 Psalms 19 111 8 Psalms 19 112 8 Psalms 19 111 9 Psalms 19 112 9 Psalms 19 111 10 Psalms 19 112 10 Psalms 19 112 1 Psalms 19 113 1 Psalms 19 112 2 Psalms 19 113 2 Psalms 19 112 3 Psalms 19 113 3 Psalms 19 112 4 Psalms 19 113 4 Psalms 19 112 5 Psalms 19 113 5 Psalms 19 112 6 Psalms 19 113 6 Psalms 19 112 7 Psalms 19 113 7 Psalms 19 112 8 Psalms 19 113 8 Psalms 19 112 9 Psalms 19 113 9 Psalms 19 113 1 Psalms 19 114 1 Psalms 19 113 2 Psalms 19 114 2 Psalms 19 113 3 Psalms 19 114 3 Psalms 19 113 4 Psalms 19 114 4 Psalms 19 113 5 Psalms 19 114 5 Psalms 19 113 6 Psalms 19 114 6 Psalms 19 113 7 Psalms 19 114 7 Psalms 19 113 8 Psalms 19 114 8 Psalms 19 113 9 Psalms 19 115 1 Psalms 19 113 10 Psalms 19 115 2 Psalms 19 113 11 Psalms 19 115 3 Psalms 19 113 12 Psalms 19 115 4 Psalms 19 113 13 Psalms 19 115 5 Psalms 19 113 14 Psalms 19 115 6 Psalms 19 113 15 Psalms 19 115 7 Psalms 19 113 16 Psalms 19 115 8 Psalms 19 113 17 Psalms 19 115 9 Psalms 19 113 18 Psalms 19 115 10 Psalms 19 113 19 Psalms 19 115 11 Psalms 19 113 20 Psalms 19 115 12 Psalms 19 113 21 Psalms 19 115 13 Psalms 19 113 22 Psalms 19 115 14 Psalms 19 113 23 Psalms 19 115 15 Psalms 19 113 24 Psalms 19 115 16 Psalms 19 113 25 Psalms 19 115 17 Psalms 19 113 26 Psalms 19 115 18 Psalms 19 114 1 Psalms 19 116 1 Psalms 19 114 2 Psalms 19 116 2 Psalms 19 114 3 Psalms 19 116 3 Psalms 19 114 4 Psalms 19 116 4 Psalms 19 114 5 Psalms 19 116 5 Psalms 19 114 6 Psalms 19 116 6 Psalms 19 114 7 Psalms 19 116 7 Psalms 19 114 8 Psalms 19 116 8 Psalms 19 114 8 Psalms 19 116 9 Psalms 19 115 1 Psalms 19 116 10 Psalms 19 115 2 Psalms 19 116 11 Psalms 19 115 3 Psalms 19 116 12 Psalms 19 115 4 Psalms 19 116 13 Psalms 19 115 5 Psalms 19 116 14 Psalms 19 115 6 Psalms 19 116 15 Psalms 19 115 7 Psalms 19 116 16 Psalms 19 115 8 Psalms 19 116 17 Psalms 19 115 9 Psalms 19 116 18 Psalms 19 115 10 Psalms 19 116 19 Psalms 19 116 1 Psalms 19 117 1 Psalms 19 116 2 Psalms 19 117 2 Psalms 19 117 1 Psalms 19 118 1 Psalms 19 117 2 Psalms 19 118 2 Psalms 19 117 3 Psalms 19 118 3 Psalms 19 117 4 Psalms 19 118 4 Psalms 19 117 5 Psalms 19 118 5 Psalms 19 117 6 Psalms 19 118 6 Psalms 19 117 7 Psalms 19 118 7 Psalms 19 117 8 Psalms 19 118 8 Psalms 19 117 9 Psalms 19 118 9 Psalms 19 117 10 Psalms 19 118 10 Psalms 19 117 11 Psalms 19 118 11 Psalms 19 117 12 Psalms 19 118 12 Psalms 19 117 13 Psalms 19 118 13 Psalms 19 117 14 Psalms 19 118 14 Psalms 19 117 15 Psalms 19 118 15 Psalms 19 117 16 Psalms 19 118 16 Psalms 19 117 17 Psalms 19 118 17 Psalms 19 117 18 Psalms 19 118 18 Psalms 19 117 19 Psalms 19 118 19 Psalms 19 117 20 Psalms 19 118 20 Psalms 19 117 21 Psalms 19 118 21 Psalms 19 117 22 Psalms 19 118 22 Psalms 19 117 23 Psalms 19 118 23 Psalms 19 117 24 Psalms 19 118 24 Psalms 19 117 25 Psalms 19 118 25 Psalms 19 117 26 Psalms 19 118 26 Psalms 19 117 27 Psalms 19 118 27 Psalms 19 117 28 Psalms 19 118 28 Psalms 19 117 29 Psalms 19 118 29 Psalms 19 118 1 Psalms 19 119 1 Psalms 19 118 2 Psalms 19 119 2 Psalms 19 118 3 Psalms 19 119 3 Psalms 19 118 4 Psalms 19 119 4 Psalms 19 118 5 Psalms 19 119 5 Psalms 19 118 6 Psalms 19 119 6 Psalms 19 118 7 Psalms 19 119 7 Psalms 19 118 8 Psalms 19 119 8 Psalms 19 118 9 Psalms 19 119 9 Psalms 19 118 10 Psalms 19 119 10 Psalms 19 118 11 Psalms 19 119 11 Psalms 19 118 12 Psalms 19 119 12 Psalms 19 118 13 Psalms 19 119 13 Psalms 19 118 14 Psalms 19 119 14 Psalms 19 118 15 Psalms 19 119 15 Psalms 19 118 16 Psalms 19 119 16 Psalms 19 118 17 Psalms 19 119 17 Psalms 19 118 18 Psalms 19 119 18 Psalms 19 118 19 Psalms 19 119 19 Psalms 19 118 20 Psalms 19 119 20 Psalms 19 118 21 Psalms 19 119 21 Psalms 19 118 22 Psalms 19 119 22 Psalms 19 118 23 Psalms 19 119 23 Psalms 19 118 24 Psalms 19 119 24 Psalms 19 118 25 Psalms 19 119 25 Psalms 19 118 26 Psalms 19 119 26 Psalms 19 118 27 Psalms 19 119 27 Psalms 19 118 28 Psalms 19 119 28 Psalms 19 118 29 Psalms 19 119 29 Psalms 19 118 30 Psalms 19 119 30 Psalms 19 118 31 Psalms 19 119 31 Psalms 19 118 32 Psalms 19 119 32 Psalms 19 118 33 Psalms 19 119 33 Psalms 19 118 34 Psalms 19 119 34 Psalms 19 118 35 Psalms 19 119 35 Psalms 19 118 36 Psalms 19 119 36 Psalms 19 118 37 Psalms 19 119 37 Psalms 19 118 38 Psalms 19 119 38 Psalms 19 118 39 Psalms 19 119 39 Psalms 19 118 40 Psalms 19 119 40 Psalms 19 118 41 Psalms 19 119 41 Psalms 19 118 42 Psalms 19 119 42 Psalms 19 118 43 Psalms 19 119 43 Psalms 19 118 44 Psalms 19 119 44 Psalms 19 118 45 Psalms 19 119 45 Psalms 19 118 46 Psalms 19 119 46 Psalms 19 118 47 Psalms 19 119 47 Psalms 19 118 48 Psalms 19 119 48 Psalms 19 118 49 Psalms 19 119 49 Psalms 19 118 50 Psalms 19 119 50 Psalms 19 118 51 Psalms 19 119 51 Psalms 19 118 52 Psalms 19 119 52 Psalms 19 118 53 Psalms 19 119 53 Psalms 19 118 54 Psalms 19 119 54 Psalms 19 118 55 Psalms 19 119 55 Psalms 19 118 56 Psalms 19 119 56 Psalms 19 118 57 Psalms 19 119 57 Psalms 19 118 58 Psalms 19 119 58 Psalms 19 118 59 Psalms 19 119 59 Psalms 19 118 60 Psalms 19 119 60 Psalms 19 118 61 Psalms 19 119 61 Psalms 19 118 62 Psalms 19 119 62 Psalms 19 118 63 Psalms 19 119 63 Psalms 19 118 64 Psalms 19 119 64 Psalms 19 118 65 Psalms 19 119 65 Psalms 19 118 66 Psalms 19 119 66 Psalms 19 118 67 Psalms 19 119 67 Psalms 19 118 68 Psalms 19 119 68 Psalms 19 118 69 Psalms 19 119 69 Psalms 19 118 70 Psalms 19 119 70 Psalms 19 118 71 Psalms 19 119 71 Psalms 19 118 72 Psalms 19 119 72 Psalms 19 118 73 Psalms 19 119 73 Psalms 19 118 74 Psalms 19 119 74 Psalms 19 118 75 Psalms 19 119 75 Psalms 19 118 76 Psalms 19 119 76 Psalms 19 118 77 Psalms 19 119 77 Psalms 19 118 78 Psalms 19 119 78 Psalms 19 118 79 Psalms 19 119 79 Psalms 19 118 80 Psalms 19 119 80 Psalms 19 118 81 Psalms 19 119 81 Psalms 19 118 82 Psalms 19 119 82 Psalms 19 118 83 Psalms 19 119 83 Psalms 19 118 84 Psalms 19 119 84 Psalms 19 118 85 Psalms 19 119 85 Psalms 19 118 86 Psalms 19 119 86 Psalms 19 118 87 Psalms 19 119 87 Psalms 19 118 88 Psalms 19 119 88 Psalms 19 118 89 Psalms 19 119 89 Psalms 19 118 90 Psalms 19 119 90 Psalms 19 118 91 Psalms 19 119 91 Psalms 19 118 92 Psalms 19 119 92 Psalms 19 118 93 Psalms 19 119 93 Psalms 19 118 94 Psalms 19 119 94 Psalms 19 118 95 Psalms 19 119 95 Psalms 19 118 96 Psalms 19 119 96 Psalms 19 118 97 Psalms 19 119 97 Psalms 19 118 98 Psalms 19 119 98 Psalms 19 118 99 Psalms 19 119 99 Psalms 19 118 100 Psalms 19 119 100 Psalms 19 118 101 Psalms 19 119 101 Psalms 19 118 102 Psalms 19 119 102 Psalms 19 118 103 Psalms 19 119 103 Psalms 19 118 104 Psalms 19 119 104 Psalms 19 118 105 Psalms 19 119 105 Psalms 19 118 106 Psalms 19 119 106 Psalms 19 118 107 Psalms 19 119 107 Psalms 19 118 108 Psalms 19 119 108 Psalms 19 118 109 Psalms 19 119 109 Psalms 19 118 110 Psalms 19 119 110 Psalms 19 118 111 Psalms 19 119 111 Psalms 19 118 112 Psalms 19 119 112 Psalms 19 118 113 Psalms 19 119 113 Psalms 19 118 114 Psalms 19 119 114 Psalms 19 118 115 Psalms 19 119 115 Psalms 19 118 116 Psalms 19 119 116 Psalms 19 118 117 Psalms 19 119 117 Psalms 19 118 118 Psalms 19 119 118 Psalms 19 118 119 Psalms 19 119 119 Psalms 19 118 120 Psalms 19 119 120 Psalms 19 118 121 Psalms 19 119 121 Psalms 19 118 122 Psalms 19 119 122 Psalms 19 118 123 Psalms 19 119 123 Psalms 19 118 124 Psalms 19 119 124 Psalms 19 118 125 Psalms 19 119 125 Psalms 19 118 126 Psalms 19 119 126 Psalms 19 118 127 Psalms 19 119 127 Psalms 19 118 128 Psalms 19 119 128 Psalms 19 118 129 Psalms 19 119 129 Psalms 19 118 130 Psalms 19 119 130 Psalms 19 118 131 Psalms 19 119 131 Psalms 19 118 132 Psalms 19 119 132 Psalms 19 118 133 Psalms 19 119 133 Psalms 19 118 134 Psalms 19 119 134 Psalms 19 118 135 Psalms 19 119 135 Psalms 19 118 136 Psalms 19 119 136 Psalms 19 118 137 Psalms 19 119 137 Psalms 19 118 138 Psalms 19 119 138 Psalms 19 118 139 Psalms 19 119 139 Psalms 19 118 140 Psalms 19 119 140 Psalms 19 118 141 Psalms 19 119 141 Psalms 19 118 142 Psalms 19 119 142 Psalms 19 118 143 Psalms 19 119 143 Psalms 19 118 144 Psalms 19 119 144 Psalms 19 118 145 Psalms 19 119 145 Psalms 19 118 146 Psalms 19 119 146 Psalms 19 118 147 Psalms 19 119 147 Psalms 19 118 148 Psalms 19 119 148 Psalms 19 118 149 Psalms 19 119 149 Psalms 19 118 150 Psalms 19 119 150 Psalms 19 118 151 Psalms 19 119 151 Psalms 19 118 152 Psalms 19 119 152 Psalms 19 118 153 Psalms 19 119 153 Psalms 19 118 154 Psalms 19 119 154 Psalms 19 118 155 Psalms 19 119 155 Psalms 19 118 156 Psalms 19 119 156 Psalms 19 118 157 Psalms 19 119 157 Psalms 19 118 158 Psalms 19 119 158 Psalms 19 118 159 Psalms 19 119 159 Psalms 19 118 160 Psalms 19 119 160 Psalms 19 118 161 Psalms 19 119 161 Psalms 19 118 162 Psalms 19 119 162 Psalms 19 118 163 Psalms 19 119 163 Psalms 19 118 164 Psalms 19 119 164 Psalms 19 118 165 Psalms 19 119 165 Psalms 19 118 166 Psalms 19 119 166 Psalms 19 118 167 Psalms 19 119 167 Psalms 19 118 168 Psalms 19 119 168 Psalms 19 118 169 Psalms 19 119 169 Psalms 19 118 170 Psalms 19 119 170 Psalms 19 118 171 Psalms 19 119 171 Psalms 19 118 172 Psalms 19 119 172 Psalms 19 118 173 Psalms 19 119 173 Psalms 19 118 174 Psalms 19 119 174 Psalms 19 118 175 Psalms 19 119 175 Psalms 19 118 176 Psalms 19 119 176 Psalms 19 119 1 Psalms 19 120 1 Psalms 19 119 2 Psalms 19 120 2 Psalms 19 119 3 Psalms 19 120 3 Psalms 19 119 4 Psalms 19 120 4 Psalms 19 119 5 Psalms 19 120 5 Psalms 19 119 6 Psalms 19 120 6 Psalms 19 119 7 Psalms 19 120 7 Psalms 19 120 1 Psalms 19 121 1 Psalms 19 120 2 Psalms 19 121 2 Psalms 19 120 3 Psalms 19 121 3 Psalms 19 120 4 Psalms 19 121 4 Psalms 19 120 5 Psalms 19 121 5 Psalms 19 120 6 Psalms 19 121 6 Psalms 19 120 7 Psalms 19 121 7 Psalms 19 120 8 Psalms 19 121 8 Psalms 19 121 1 Psalms 19 122 1 Psalms 19 121 2 Psalms 19 122 2 Psalms 19 121 3 Psalms 19 122 3 Psalms 19 121 4 Psalms 19 122 4 Psalms 19 121 5 Psalms 19 122 5 Psalms 19 121 6 Psalms 19 122 6 Psalms 19 121 7 Psalms 19 122 7 Psalms 19 121 8 Psalms 19 122 8 Psalms 19 121 9 Psalms 19 122 9 Psalms 19 122 1 Psalms 19 123 1 Psalms 19 122 2 Psalms 19 123 2 Psalms 19 122 3 Psalms 19 123 3 Psalms 19 122 4 Psalms 19 123 4 Psalms 19 123 1 Psalms 19 124 1 Psalms 19 123 2 Psalms 19 124 2 Psalms 19 123 3 Psalms 19 124 3 Psalms 19 123 4 Psalms 19 124 4 Psalms 19 123 5 Psalms 19 124 5 Psalms 19 123 6 Psalms 19 124 6 Psalms 19 123 7 Psalms 19 124 7 Psalms 19 123 8 Psalms 19 124 8 Psalms 19 124 1 Psalms 19 125 1 Psalms 19 124 2 Psalms 19 125 2 Psalms 19 124 3 Psalms 19 125 3 Psalms 19 124 4 Psalms 19 125 4 Psalms 19 124 5 Psalms 19 125 5 Psalms 19 125 1 Psalms 19 126 1 Psalms 19 125 2 Psalms 19 126 2 Psalms 19 125 3 Psalms 19 126 3 Psalms 19 125 4 Psalms 19 126 4 Psalms 19 125 5 Psalms 19 126 5 Psalms 19 125 6 Psalms 19 126 6 Psalms 19 126 1 Psalms 19 127 1 Psalms 19 126 2 Psalms 19 127 2 Psalms 19 126 3 Psalms 19 127 3 Psalms 19 126 4 Psalms 19 127 4 Psalms 19 126 5 Psalms 19 127 5 Psalms 19 127 1 Psalms 19 128 1 Psalms 19 127 2 Psalms 19 128 2 Psalms 19 127 3 Psalms 19 128 3 Psalms 19 127 4 Psalms 19 128 4 Psalms 19 127 5 Psalms 19 128 5 Psalms 19 127 6 Psalms 19 128 6 Psalms 19 128 1 Psalms 19 129 1 Psalms 19 128 2 Psalms 19 129 2 Psalms 19 128 3 Psalms 19 129 3 Psalms 19 128 4 Psalms 19 129 4 Psalms 19 128 5 Psalms 19 129 5 Psalms 19 128 6 Psalms 19 129 6 Psalms 19 128 7 Psalms 19 129 7 Psalms 19 128 8 Psalms 19 129 8 Psalms 19 129 1 Psalms 19 130 1 Psalms 19 129 2 Psalms 19 130 2 Psalms 19 129 3 Psalms 19 130 3 Psalms 19 129 4 Psalms 19 130 4 Psalms 19 129 5 Psalms 19 130 5 Psalms 19 129 6 Psalms 19 130 6 Psalms 19 129 7 Psalms 19 130 7 Psalms 19 129 8 Psalms 19 130 8 Psalms 19 130 1 Psalms 19 131 1 Psalms 19 130 2 Psalms 19 131 2 Psalms 19 130 3 Psalms 19 131 3 Psalms 19 131 1 Psalms 19 132 1 Psalms 19 131 2 Psalms 19 132 2 Psalms 19 131 3 Psalms 19 132 3 Psalms 19 131 4 Psalms 19 132 4 Psalms 19 131 5 Psalms 19 132 5 Psalms 19 131 6 Psalms 19 132 6 Psalms 19 131 7 Psalms 19 132 7 Psalms 19 131 8 Psalms 19 132 8 Psalms 19 131 9 Psalms 19 132 9 Psalms 19 131 10 Psalms 19 132 10 Psalms 19 131 11 Psalms 19 132 11 Psalms 19 131 12 Psalms 19 132 12 Psalms 19 131 13 Psalms 19 132 13 Psalms 19 131 14 Psalms 19 132 14 Psalms 19 131 15 Psalms 19 132 15 Psalms 19 131 16 Psalms 19 132 16 Psalms 19 131 17 Psalms 19 132 17 Psalms 19 131 18 Psalms 19 132 18 Psalms 19 132 1 Psalms 19 133 1 Psalms 19 132 2 Psalms 19 133 2 Psalms 19 132 3 Psalms 19 133 3 Psalms 19 133 1 Psalms 19 134 1 Psalms 19 133 2 Psalms 19 134 2 Psalms 19 133 3 Psalms 19 134 3 Psalms 19 134 1 Psalms 19 135 1 Psalms 19 134 2 Psalms 19 135 2 Psalms 19 134 3 Psalms 19 135 3 Psalms 19 134 4 Psalms 19 135 4 Psalms 19 134 5 Psalms 19 135 5 Psalms 19 134 6 Psalms 19 135 6 Psalms 19 134 7 Psalms 19 135 7 Psalms 19 134 8 Psalms 19 135 8 Psalms 19 134 9 Psalms 19 135 9 Psalms 19 134 10 Psalms 19 135 10 Psalms 19 134 11 Psalms 19 135 11 Psalms 19 134 12 Psalms 19 135 12 Psalms 19 134 13 Psalms 19 135 13 Psalms 19 134 14 Psalms 19 135 14 Psalms 19 134 15 Psalms 19 135 15 Psalms 19 134 16 Psalms 19 135 16 Psalms 19 134 17 Psalms 19 135 17 Psalms 19 134 18 Psalms 19 135 18 Psalms 19 134 19 Psalms 19 135 19 Psalms 19 134 20 Psalms 19 135 20 Psalms 19 134 21 Psalms 19 135 21 Psalms 19 135 1 Psalms 19 136 1 Psalms 19 135 2 Psalms 19 136 2 Psalms 19 135 3 Psalms 19 136 3 Psalms 19 135 4 Psalms 19 136 4 Psalms 19 135 5 Psalms 19 136 5 Psalms 19 135 6 Psalms 19 136 6 Psalms 19 135 7 Psalms 19 136 7 Psalms 19 135 8 Psalms 19 136 8 Psalms 19 135 9 Psalms 19 136 9 Psalms 19 135 10 Psalms 19 136 10 Psalms 19 135 11 Psalms 19 136 11 Psalms 19 135 12 Psalms 19 136 12 Psalms 19 135 13 Psalms 19 136 13 Psalms 19 135 14 Psalms 19 136 14 Psalms 19 135 15 Psalms 19 136 15 Psalms 19 135 16 Psalms 19 136 16 Psalms 19 135 17 Psalms 19 136 17 Psalms 19 135 18 Psalms 19 136 18 Psalms 19 135 19 Psalms 19 136 19 Psalms 19 135 20 Psalms 19 136 20 Psalms 19 135 21 Psalms 19 136 21 Psalms 19 135 22 Psalms 19 136 22 Psalms 19 135 23 Psalms 19 136 23 Psalms 19 135 24 Psalms 19 136 24 Psalms 19 135 25 Psalms 19 136 25 Psalms 19 135 26 Psalms 19 136 26 Psalms 19 136 1 Psalms 19 137 1 Psalms 19 136 2 Psalms 19 137 2 Psalms 19 136 3 Psalms 19 137 3 Psalms 19 136 4 Psalms 19 137 4 Psalms 19 136 5 Psalms 19 137 5 Psalms 19 136 6 Psalms 19 137 6 Psalms 19 136 7 Psalms 19 137 7 Psalms 19 136 8 Psalms 19 137 8 Psalms 19 136 9 Psalms 19 137 9 Psalms 19 137 1 Psalms 19 138 1 Psalms 19 137 2 Psalms 19 138 2 Psalms 19 137 3 Psalms 19 138 3 Psalms 19 137 4 Psalms 19 138 4 Psalms 19 137 5 Psalms 19 138 5 Psalms 19 137 6 Psalms 19 138 6 Psalms 19 137 7 Psalms 19 138 7 Psalms 19 137 8 Psalms 19 138 8 Psalms 19 138 1 Psalms 19 139 1 Psalms 19 138 2 Psalms 19 139 2 Psalms 19 138 3 Psalms 19 139 3 Psalms 19 138 4 Psalms 19 139 4 Psalms 19 138 5 Psalms 19 139 5 Psalms 19 138 6 Psalms 19 139 6 Psalms 19 138 7 Psalms 19 139 7 Psalms 19 138 8 Psalms 19 139 8 Psalms 19 138 9 Psalms 19 139 9 Psalms 19 138 10 Psalms 19 139 10 Psalms 19 138 11 Psalms 19 139 11 Psalms 19 138 12 Psalms 19 139 12 Psalms 19 138 13 Psalms 19 139 13 Psalms 19 138 14 Psalms 19 139 14 Psalms 19 138 15 Psalms 19 139 15 Psalms 19 138 16 Psalms 19 139 16 Psalms 19 138 17 Psalms 19 139 17 Psalms 19 138 18 Psalms 19 139 18 Psalms 19 138 19 Psalms 19 139 19 Psalms 19 138 20 Psalms 19 139 20 Psalms 19 138 21 Psalms 19 139 21 Psalms 19 138 22 Psalms 19 139 22 Psalms 19 138 23 Psalms 19 139 23 Psalms 19 138 24 Psalms 19 139 24 Psalms 19 139 1 Psalms 19 140 1 Psalms 19 139 2 Psalms 19 140 2 Psalms 19 139 3 Psalms 19 140 3 Psalms 19 139 4 Psalms 19 140 4 Psalms 19 139 5 Psalms 19 140 5 Psalms 19 139 6 Psalms 19 140 6 Psalms 19 139 7 Psalms 19 140 7 Psalms 19 139 8 Psalms 19 140 8 Psalms 19 139 9 Psalms 19 140 9 Psalms 19 139 10 Psalms 19 140 10 Psalms 19 139 11 Psalms 19 140 11 Psalms 19 139 12 Psalms 19 140 12 Psalms 19 139 13 Psalms 19 140 13 Psalms 19 139 14 Psalms 19 140 14 Psalms 19 140 1 Psalms 19 141 1 Psalms 19 140 2 Psalms 19 141 2 Psalms 19 140 3 Psalms 19 141 3 Psalms 19 140 4 Psalms 19 141 4 Psalms 19 140 5 Psalms 19 141 5 Psalms 19 140 6 Psalms 19 141 6 Psalms 19 140 7 Psalms 19 141 7 Psalms 19 140 8 Psalms 19 141 8 Psalms 19 140 9 Psalms 19 141 9 Psalms 19 140 10 Psalms 19 141 10 Psalms 19 141 1 Psalms 19 142 2 Psalms 19 141 2 Psalms 19 142 3 Psalms 19 141 3 Psalms 19 142 4 Psalms 19 141 4 Psalms 19 142 5 Psalms 19 141 5 Psalms 19 142 6 Psalms 19 141 6 Psalms 19 142 7 Psalms 19 141 7 Psalms 19 142 8 Psalms 19 142 1 Psalms 19 143 1 Psalms 19 142 2 Psalms 19 143 2 Psalms 19 142 3 Psalms 19 143 3 Psalms 19 142 4 Psalms 19 143 4 Psalms 19 142 5 Psalms 19 143 5 Psalms 19 142 6 Psalms 19 143 6 Psalms 19 142 7 Psalms 19 143 7 Psalms 19 142 8 Psalms 19 143 8 Psalms 19 142 9 Psalms 19 143 9 Psalms 19 142 10 Psalms 19 143 10 Psalms 19 142 11 Psalms 19 143 11 Psalms 19 142 12 Psalms 19 143 12 Psalms 19 143 1 Psalms 19 144 1 Psalms 19 143 2 Psalms 19 144 2 Psalms 19 143 3 Psalms 19 144 3 Psalms 19 143 4 Psalms 19 144 4 Psalms 19 143 5 Psalms 19 144 5 Psalms 19 143 6 Psalms 19 144 6 Psalms 19 143 7 Psalms 19 144 7 Psalms 19 143 8 Psalms 19 144 8 Psalms 19 143 9 Psalms 19 144 9 Psalms 19 143 10 Psalms 19 144 10 Psalms 19 143 11 Psalms 19 144 11 Psalms 19 143 12 Psalms 19 144 12 Psalms 19 143 13 Psalms 19 144 13 Psalms 19 143 14 Psalms 19 144 14 Psalms 19 143 15 Psalms 19 144 15 Psalms 19 144 1 Psalms 19 145 1 Psalms 19 144 2 Psalms 19 145 2 Psalms 19 144 3 Psalms 19 145 3 Psalms 19 144 4 Psalms 19 145 4 Psalms 19 144 5 Psalms 19 145 5 Psalms 19 144 6 Psalms 19 145 6 Psalms 19 144 7 Psalms 19 145 7 Psalms 19 144 8 Psalms 19 145 8 Psalms 19 144 9 Psalms 19 145 9 Psalms 19 144 10 Psalms 19 145 10 Psalms 19 144 11 Psalms 19 145 11 Psalms 19 144 12 Psalms 19 145 12 Psalms 19 144 13 Psalms 19 145 13 Psalms 19 144 14 Psalms 19 145 14 Psalms 19 144 15 Psalms 19 145 15 Psalms 19 144 16 Psalms 19 145 16 Psalms 19 144 17 Psalms 19 145 17 Psalms 19 144 18 Psalms 19 145 18 Psalms 19 144 19 Psalms 19 145 19 Psalms 19 144 20 Psalms 19 145 20 Psalms 19 144 21 Psalms 19 145 21 Psalms 19 145 1 Psalms 19 146 1 Psalms 19 145 2 Psalms 19 146 2 Psalms 19 145 3 Psalms 19 146 3 Psalms 19 145 4 Psalms 19 146 4 Psalms 19 145 5 Psalms 19 146 5 Psalms 19 145 6 Psalms 19 146 6 Psalms 19 145 7 Psalms 19 146 7 Psalms 19 145 8 Psalms 19 146 8 Psalms 19 145 9 Psalms 19 146 9 Psalms 19 145 10 Psalms 19 146 10 Psalms 19 146 1 Psalms 19 147 1 Psalms 19 146 2 Psalms 19 147 2 Psalms 19 146 3 Psalms 19 147 3 Psalms 19 146 4 Psalms 19 147 4 Psalms 19 146 5 Psalms 19 147 5 Psalms 19 146 6 Psalms 19 147 6 Psalms 19 146 7 Psalms 19 147 7 Psalms 19 146 8 Psalms 19 147 8 Psalms 19 146 9 Psalms 19 147 9 Psalms 19 146 10 Psalms 19 147 10 Psalms 19 146 11 Psalms 19 147 11 Psalms 19 147 1 Psalms 19 147 12 Psalms 19 147 2 Psalms 19 147 13 Psalms 19 147 3 Psalms 19 147 14 Psalms 19 147 4 Psalms 19 147 15 Psalms 19 147 5 Psalms 19 147 16 Psalms 19 147 6 Psalms 19 147 17 Psalms 19 147 7 Psalms 19 147 18 Psalms 19 147 8 Psalms 19 147 19 Psalms 19 147 9 Psalms 19 147 20 Proverbs 20 13 15 Proverbs 20 13 14 Proverbs 20 13 16 Proverbs 20 13 15 Proverbs 20 13 17 Proverbs 20 13 16 Proverbs 20 13 18 Proverbs 20 13 17 Proverbs 20 13 19 Proverbs 20 13 18 Proverbs 20 13 20 Proverbs 20 13 19 Proverbs 20 13 21 Proverbs 20 13 20 Proverbs 20 13 22 Proverbs 20 13 21 Proverbs 20 13 23 Proverbs 20 13 22 Proverbs 20 13 24 Proverbs 20 13 23 Proverbs 20 13 25 Proverbs 20 13 24 Proverbs 20 13 26 Proverbs 20 13 25 Proverbs 20 18 9 Proverbs 20 18 8 Proverbs 20 18 10 Proverbs 20 18 9 Proverbs 20 18 11 Proverbs 20 18 10 Proverbs 20 18 12 Proverbs 20 18 11 Proverbs 20 18 13 Proverbs 20 18 12 Proverbs 20 18 14 Proverbs 20 18 13 Proverbs 20 18 15 Proverbs 20 18 14 Proverbs 20 18 16 Proverbs 20 18 15 Proverbs 20 18 17 Proverbs 20 18 16 Proverbs 20 18 18 Proverbs 20 18 17 Proverbs 20 18 19 Proverbs 20 18 18 Proverbs 20 18 20 Proverbs 20 18 19 Proverbs 20 18 21 Proverbs 20 18 20 Proverbs 20 18 22 Proverbs 20 18 21 Proverbs 20 18 23 Proverbs 20 18 22 Proverbs 20 18 24 Proverbs 20 18 23 Proverbs 20 18 25 Proverbs 20 18 24 Song of Solomon 22 1 1 Song of Solomon 22 1 2 Song of Solomon 22 1 2 Song of Solomon 22 1 3 Song of Solomon 22 1 3 Song of Solomon 22 1 4 Song of Solomon 22 1 4 Song of Solomon 22 1 5 Song of Solomon 22 1 5 Song of Solomon 22 1 6 Song of Solomon 22 1 6 Song of Solomon 22 1 7 Song of Solomon 22 1 7 Song of Solomon 22 1 8 Song of Solomon 22 1 8 Song of Solomon 22 1 9 Song of Solomon 22 1 9 Song of Solomon 22 1 10 Song of Solomon 22 1 10 Song of Solomon 22 1 11 Song of Solomon 22 1 11 Song of Solomon 22 1 12 Song of Solomon 22 1 12 Song of Solomon 22 1 13 Song of Solomon 22 1 13 Song of Solomon 22 1 14 Song of Solomon 22 1 14 Song of Solomon 22 1 15 Song of Solomon 22 1 15 Song of Solomon 22 1 16 Song of Solomon 22 1 16 Song of Solomon 22 1 17 Isaiah 23 3 19 Isaiah 23 3 19 Isaiah 23 3 19 Isaiah 23 3 20 Isaiah 23 3 20 Isaiah 23 3 16 Isaiah 23 3 21 Isaiah 23 3 17 Isaiah 23 3 22 Isaiah 23 3 18 Isaiah 23 3 23 Isaiah 23 3 19 Isaiah 23 3 24 Isaiah 23 3 20 Isaiah 23 3 25 Isaiah 23 3 21 Isaiah 23 9 1 Isaiah 23 8 23 Isaiah 23 9 2 Isaiah 23 9 1 Isaiah 23 9 3 Isaiah 23 9 2 Isaiah 23 9 4 Isaiah 23 9 3 Isaiah 23 9 5 Isaiah 23 9 4 Isaiah 23 9 6 Isaiah 23 9 5 Isaiah 23 9 7 Isaiah 23 9 6 Isaiah 23 9 8 Isaiah 23 9 7 Isaiah 23 9 9 Isaiah 23 9 8 Isaiah 23 9 10 Isaiah 23 9 9 Isaiah 23 9 11 Isaiah 23 9 10 Isaiah 23 9 12 Isaiah 23 9 11 Isaiah 23 9 13 Isaiah 23 9 12 Isaiah 23 9 14 Isaiah 23 9 13 Isaiah 23 9 15 Isaiah 23 9 14 Isaiah 23 9 16 Isaiah 23 9 15 Isaiah 23 9 17 Isaiah 23 9 16 Isaiah 23 9 18 Isaiah 23 9 17 Isaiah 23 9 19 Isaiah 23 9 18 Isaiah 23 9 20 Isaiah 23 9 19 Isaiah 23 9 21 Isaiah 23 9 20 Isaiah 23 63 19 Isaiah 23 63 19 Isaiah 23 64 1 Isaiah 23 63 19 Isaiah 23 64 2 Isaiah 23 64 1 Isaiah 23 64 3 Isaiah 23 64 2 Isaiah 23 64 4 Isaiah 23 64 3 Isaiah 23 64 5 Isaiah 23 64 4 Isaiah 23 64 6 Isaiah 23 64 5 Isaiah 23 64 7 Isaiah 23 64 6 Isaiah 23 64 8 Isaiah 23 64 7 Isaiah 23 64 9 Isaiah 23 64 8 Isaiah 23 64 10 Isaiah 23 64 9 Isaiah 23 64 11 Isaiah 23 64 10 Isaiah 23 64 12 Isaiah 23 64 11 Jeremiah 24 9 1 Jeremiah 24 8 23 Jeremiah 24 9 2 Jeremiah 24 9 1 Jeremiah 24 9 3 Jeremiah 24 9 2 Jeremiah 24 9 4 Jeremiah 24 9 3 Jeremiah 24 9 5 Jeremiah 24 9 4 Jeremiah 24 9 6 Jeremiah 24 9 5 Jeremiah 24 9 7 Jeremiah 24 9 6 Jeremiah 24 9 8 Jeremiah 24 9 7 Jeremiah 24 9 9 Jeremiah 24 9 8 Jeremiah 24 9 10 Jeremiah 24 9 9 Jeremiah 24 9 11 Jeremiah 24 9 10 Jeremiah 24 9 12 Jeremiah 24 9 11 Jeremiah 24 9 13 Jeremiah 24 9 12 Jeremiah 24 9 14 Jeremiah 24 9 13 Jeremiah 24 9 15 Jeremiah 24 9 14 Jeremiah 24 9 16 Jeremiah 24 9 15 Jeremiah 24 9 17 Jeremiah 24 9 16 Jeremiah 24 9 18 Jeremiah 24 9 17 Jeremiah 24 9 19 Jeremiah 24 9 18 Jeremiah 24 9 20 Jeremiah 24 9 19 Jeremiah 24 9 21 Jeremiah 24 9 20 Jeremiah 24 9 22 Jeremiah 24 9 21 Jeremiah 24 9 23 Jeremiah 24 9 22 Jeremiah 24 9 24 Jeremiah 24 9 23 Jeremiah 24 9 25 Jeremiah 24 9 24 Jeremiah 24 9 26 Jeremiah 24 9 25 Ezekiel 26 20 45 Ezekiel 26 21 1 Ezekiel 26 20 46 Ezekiel 26 21 2 Ezekiel 26 20 47 Ezekiel 26 21 3 Ezekiel 26 20 48 Ezekiel 26 21 4 Ezekiel 26 20 49 Ezekiel 26 21 5 Ezekiel 26 21 1 Ezekiel 26 21 6 Ezekiel 26 21 2 Ezekiel 26 21 7 Ezekiel 26 21 3 Ezekiel 26 21 8 Ezekiel 26 21 4 Ezekiel 26 21 9 Ezekiel 26 21 5 Ezekiel 26 21 10 Ezekiel 26 21 6 Ezekiel 26 21 11 Ezekiel 26 21 7 Ezekiel 26 21 12 Ezekiel 26 21 8 Ezekiel 26 21 13 Ezekiel 26 21 9 Ezekiel 26 21 14 Ezekiel 26 21 10 Ezekiel 26 21 15 Ezekiel 26 21 11 Ezekiel 26 21 16 Ezekiel 26 21 12 Ezekiel 26 21 17 Ezekiel 26 21 13 Ezekiel 26 21 18 Ezekiel 26 21 14 Ezekiel 26 21 19 Ezekiel 26 21 15 Ezekiel 26 21 20 Ezekiel 26 21 16 Ezekiel 26 21 21 Ezekiel 26 21 17 Ezekiel 26 21 22 Ezekiel 26 21 18 Ezekiel 26 21 23 Ezekiel 26 21 19 Ezekiel 26 21 24 Ezekiel 26 21 20 Ezekiel 26 21 25 Ezekiel 26 21 21 Ezekiel 26 21 26 Ezekiel 26 21 22 Ezekiel 26 21 27 Ezekiel 26 21 23 Ezekiel 26 21 28 Ezekiel 26 21 24 Ezekiel 26 21 29 Ezekiel 26 21 25 Ezekiel 26 21 30 Ezekiel 26 21 26 Ezekiel 26 21 31 Ezekiel 26 21 27 Ezekiel 26 21 32 Ezekiel 26 21 28 Ezekiel 26 21 33 Ezekiel 26 21 29 Ezekiel 26 21 34 Ezekiel 26 21 30 Ezekiel 26 21 35 Ezekiel 26 21 31 Ezekiel 26 21 36 Ezekiel 26 21 32 Ezekiel 26 21 37 Daniel 27 3 91 Daniel 27 3 24 Daniel 27 3 92 Daniel 27 3 25 Daniel 27 3 93 Daniel 27 3 26 Daniel 27 3 94 Daniel 27 3 27 Daniel 27 3 95 Daniel 27 3 28 Daniel 27 3 96 Daniel 27 3 29 Daniel 27 3 97 Daniel 27 3 30 Daniel 27 3 98 Daniel 27 3 31 Daniel 27 3 99 Daniel 27 3 32 Daniel 27 3 100 Daniel 27 3 33 Daniel 27 5 31 Daniel 27 6 1 Daniel 27 6 1 Daniel 27 6 2 Daniel 27 6 2 Daniel 27 6 3 Daniel 27 6 3 Daniel 27 6 4 Daniel 27 6 4 Daniel 27 6 5 Daniel 27 6 5 Daniel 27 6 6 Daniel 27 6 6 Daniel 27 6 7 Daniel 27 6 7 Daniel 27 6 8 Daniel 27 6 8 Daniel 27 6 9 Daniel 27 6 9 Daniel 27 6 10 Daniel 27 6 10 Daniel 27 6 11 Daniel 27 6 11 Daniel 27 6 12 Daniel 27 6 12 Daniel 27 6 13 Daniel 27 6 13 Daniel 27 6 14 Daniel 27 6 14 Daniel 27 6 15 Daniel 27 6 15 Daniel 27 6 16 Daniel 27 6 16 Daniel 27 6 17 Daniel 27 6 17 Daniel 27 6 18 Daniel 27 6 18 Daniel 27 6 19 Daniel 27 6 19 Daniel 27 6 20 Daniel 27 6 20 Daniel 27 6 21 Daniel 27 6 21 Daniel 27 6 22 Daniel 27 6 22 Daniel 27 6 23 Daniel 27 6 23 Daniel 27 6 24 Daniel 27 6 24 Daniel 27 6 25 Daniel 27 6 25 Daniel 27 6 26 Daniel 27 6 26 Daniel 27 6 27 Daniel 27 6 27 Daniel 27 6 28 Daniel 27 6 28 Daniel 27 6 29 Hosea 28 1 10 Hosea 28 2 1 Hosea 28 1 11 Hosea 28 2 2 Hosea 28 2 1 Hosea 28 2 3 Hosea 28 2 2 Hosea 28 2 4 Hosea 28 2 3 Hosea 28 2 5 Hosea 28 2 4 Hosea 28 2 6 Hosea 28 2 5 Hosea 28 2 7 Hosea 28 2 6 Hosea 28 2 8 Hosea 28 2 7 Hosea 28 2 9 Hosea 28 2 8 Hosea 28 2 10 Hosea 28 2 9 Hosea 28 2 11 Hosea 28 2 10 Hosea 28 2 12 Hosea 28 2 11 Hosea 28 2 13 Hosea 28 2 12 Hosea 28 2 14 Hosea 28 2 13 Hosea 28 2 15 Hosea 28 2 14 Hosea 28 2 16 Hosea 28 2 15 Hosea 28 2 17 Hosea 28 2 16 Hosea 28 2 18 Hosea 28 2 17 Hosea 28 2 19 Hosea 28 2 18 Hosea 28 2 20 Hosea 28 2 19 Hosea 28 2 21 Hosea 28 2 20 Hosea 28 2 22 Hosea 28 2 21 Hosea 28 2 23 Hosea 28 2 22 Hosea 28 2 24 Hosea 28 2 23 Hosea 28 2 25 Hosea 28 11 12 Hosea 28 12 1 Hosea 28 12 1 Hosea 28 12 2 Hosea 28 12 2 Hosea 28 12 3 Hosea 28 12 3 Hosea 28 12 4 Hosea 28 12 4 Hosea 28 12 5 Hosea 28 12 5 Hosea 28 12 6 Hosea 28 12 6 Hosea 28 12 7 Hosea 28 12 7 Hosea 28 12 8 Hosea 28 12 8 Hosea 28 12 9 Hosea 28 12 9 Hosea 28 12 10 Hosea 28 12 10 Hosea 28 12 11 Hosea 28 12 11 Hosea 28 12 12 Hosea 28 12 12 Hosea 28 12 13 Hosea 28 12 13 Hosea 28 12 14 Hosea 28 12 14 Hosea 28 12 15 Joel 29 2 28 Joel 29 3 1 Joel 29 2 29 Joel 29 3 2 Joel 29 2 30 Joel 29 3 3 Joel 29 2 31 Joel 29 3 4 Joel 29 2 32 Joel 29 3 5 Joel 29 3 1 Joel 29 4 1 Joel 29 3 2 Joel 29 4 2 Joel 29 3 3 Joel 29 4 3 Joel 29 3 4 Joel 29 4 4 Joel 29 3 5 Joel 29 4 5 Joel 29 3 6 Joel 29 4 6 Joel 29 3 7 Joel 29 4 7 Joel 29 3 8 Joel 29 4 8 Joel 29 3 9 Joel 29 4 9 Joel 29 3 10 Joel 29 4 10 Joel 29 3 11 Joel 29 4 11 Joel 29 3 12 Joel 29 4 12 Joel 29 3 13 Joel 29 4 13 Joel 29 3 14 Joel 29 4 14 Joel 29 3 15 Joel 29 4 15 Joel 29 3 16 Joel 29 4 16 Joel 29 3 17 Joel 29 4 17 Joel 29 3 18 Joel 29 4 18 Joel 29 3 19 Joel 29 4 19 Joel 29 3 20 Joel 29 4 20 Joel 29 3 21 Joel 29 4 21 Micah 33 5 1 Micah 33 4 14 Micah 33 5 2 Micah 33 5 1 Micah 33 5 3 Micah 33 5 2 Micah 33 5 4 Micah 33 5 3 Micah 33 5 5 Micah 33 5 4 Micah 33 5 6 Micah 33 5 5 Micah 33 5 7 Micah 33 5 6 Micah 33 5 8 Micah 33 5 7 Micah 33 5 9 Micah 33 5 8 Micah 33 5 10 Micah 33 5 9 Micah 33 5 11 Micah 33 5 10 Micah 33 5 12 Micah 33 5 11 Micah 33 5 13 Micah 33 5 12 Micah 33 5 14 Micah 33 5 13 Micah 33 5 15 Micah 33 5 14 Nahum 34 1 15 Nahum 34 2 1 Nahum 34 2 1 Nahum 34 2 2 Nahum 34 2 2 Nahum 34 2 3 Nahum 34 2 3 Nahum 34 2 4 Nahum 34 2 4 Nahum 34 2 5 Nahum 34 2 5 Nahum 34 2 6 Nahum 34 2 6 Nahum 34 2 7 Nahum 34 2 7 Nahum 34 2 8 Nahum 34 2 8 Nahum 34 2 9 Nahum 34 2 9 Nahum 34 2 10 Nahum 34 2 10 Nahum 34 2 11 Nahum 34 2 11 Nahum 34 2 12 Nahum 34 2 12 Nahum 34 2 13 Nahum 34 2 13 Nahum 34 2 14 Zechariah 38 1 18 Zechariah 38 2 1 Zechariah 38 1 19 Zechariah 38 2 2 Zechariah 38 1 20 Zechariah 38 2 3 Zechariah 38 1 21 Zechariah 38 2 4 Zechariah 38 2 1 Zechariah 38 2 5 Zechariah 38 2 2 Zechariah 38 2 6 Zechariah 38 2 3 Zechariah 38 2 7 Zechariah 38 2 4 Zechariah 38 2 8 Zechariah 38 2 5 Zechariah 38 2 9 Zechariah 38 2 6 Zechariah 38 2 10 Zechariah 38 2 7 Zechariah 38 2 11 Zechariah 38 2 8 Zechariah 38 2 12 Zechariah 38 2 9 Zechariah 38 2 13 Zechariah 38 2 10 Zechariah 38 2 14 Zechariah 38 2 11 Zechariah 38 2 15 Zechariah 38 2 12 Zechariah 38 2 16 Zechariah 38 2 13 Zechariah 38 2 17 Malachi 39 4 1 Malachi 39 3 19 Malachi 39 4 2 Malachi 39 3 20 Malachi 39 4 3 Malachi 39 3 21 Malachi 39 4 4 Malachi 39 3 22 Malachi 39 4 5 Malachi 39 3 23 Malachi 39 4 6 Malachi 39 3 24 Romans 45 14 24 Romans 45 16 25 Romans 45 14 25 Romans 45 16 26 Romans 45 14 26 Romans 45 16 27 2 Corinthians 47 11 32 2 Corinthians 47 11 32 2 Corinthians 47 11 32 2 Corinthians 47 11 33 Revelation 66 13 1 Revelation 66 12 18 Revelation 66 13 1 Revelation 66 13 1 bibledit-gtk-4.9/templates/mapping_russian_protestant.xml000664 000766 000024 00003073443 12221507125 024272 0ustar00teusstaff000000 000000 Genesis 1 31 55 Genesis 1 32 1 Genesis 1 32 1 Genesis 1 32 2 Genesis 1 32 2 Genesis 1 32 3 Genesis 1 32 3 Genesis 1 32 4 Genesis 1 32 4 Genesis 1 32 5 Genesis 1 32 5 Genesis 1 32 6 Genesis 1 32 6 Genesis 1 32 7 Genesis 1 32 7 Genesis 1 32 8 Genesis 1 32 8 Genesis 1 32 9 Genesis 1 32 9 Genesis 1 32 10 Genesis 1 32 10 Genesis 1 32 11 Genesis 1 32 11 Genesis 1 32 12 Genesis 1 32 12 Genesis 1 32 13 Genesis 1 32 13 Genesis 1 32 14 Genesis 1 32 14 Genesis 1 32 15 Genesis 1 32 15 Genesis 1 32 16 Genesis 1 32 16 Genesis 1 32 17 Genesis 1 32 17 Genesis 1 32 18 Genesis 1 32 18 Genesis 1 32 19 Genesis 1 32 19 Genesis 1 32 20 Genesis 1 32 20 Genesis 1 32 21 Genesis 1 32 21 Genesis 1 32 22 Genesis 1 32 22 Genesis 1 32 23 Genesis 1 32 23 Genesis 1 32 24 Genesis 1 32 24 Genesis 1 32 25 Genesis 1 32 25 Genesis 1 32 26 Genesis 1 32 26 Genesis 1 32 27 Genesis 1 32 27 Genesis 1 32 28 Genesis 1 32 28 Genesis 1 32 29 Genesis 1 32 29 Genesis 1 32 30 Genesis 1 32 30 Genesis 1 32 31 Genesis 1 32 31 Genesis 1 32 32 Genesis 1 32 32 Genesis 1 32 33 Exodus 2 8 1 Exodus 2 7 26 Exodus 2 8 2 Exodus 2 7 27 Exodus 2 8 3 Exodus 2 7 28 Exodus 2 8 4 Exodus 2 7 29 Exodus 2 8 5 Exodus 2 8 1 Exodus 2 8 6 Exodus 2 8 2 Exodus 2 8 7 Exodus 2 8 3 Exodus 2 8 8 Exodus 2 8 4 Exodus 2 8 9 Exodus 2 8 5 Exodus 2 8 10 Exodus 2 8 6 Exodus 2 8 11 Exodus 2 8 7 Exodus 2 8 12 Exodus 2 8 8 Exodus 2 8 13 Exodus 2 8 9 Exodus 2 8 14 Exodus 2 8 10 Exodus 2 8 15 Exodus 2 8 11 Exodus 2 8 16 Exodus 2 8 12 Exodus 2 8 17 Exodus 2 8 13 Exodus 2 8 18 Exodus 2 8 14 Exodus 2 8 19 Exodus 2 8 15 Exodus 2 8 20 Exodus 2 8 16 Exodus 2 8 21 Exodus 2 8 17 Exodus 2 8 22 Exodus 2 8 18 Exodus 2 8 23 Exodus 2 8 19 Exodus 2 8 24 Exodus 2 8 20 Exodus 2 8 25 Exodus 2 8 21 Exodus 2 8 26 Exodus 2 8 22 Exodus 2 8 27 Exodus 2 8 23 Exodus 2 8 28 Exodus 2 8 24 Exodus 2 8 29 Exodus 2 8 25 Exodus 2 8 30 Exodus 2 8 26 Exodus 2 8 31 Exodus 2 8 27 Exodus 2 8 32 Exodus 2 8 28 Exodus 2 22 1 Exodus 2 21 37 Exodus 2 22 2 Exodus 2 22 1 Exodus 2 22 3 Exodus 2 22 2 Exodus 2 22 4 Exodus 2 22 3 Exodus 2 22 5 Exodus 2 22 4 Exodus 2 22 6 Exodus 2 22 5 Exodus 2 22 7 Exodus 2 22 6 Exodus 2 22 8 Exodus 2 22 7 Exodus 2 22 9 Exodus 2 22 8 Exodus 2 22 10 Exodus 2 22 9 Exodus 2 22 11 Exodus 2 22 10 Exodus 2 22 12 Exodus 2 22 11 Exodus 2 22 13 Exodus 2 22 12 Exodus 2 22 14 Exodus 2 22 13 Exodus 2 22 15 Exodus 2 22 14 Exodus 2 22 16 Exodus 2 22 15 Exodus 2 22 17 Exodus 2 22 16 Exodus 2 22 18 Exodus 2 22 17 Exodus 2 22 19 Exodus 2 22 18 Exodus 2 22 20 Exodus 2 22 19 Exodus 2 22 21 Exodus 2 22 20 Exodus 2 22 22 Exodus 2 22 21 Exodus 2 22 23 Exodus 2 22 22 Exodus 2 22 24 Exodus 2 22 23 Exodus 2 22 25 Exodus 2 22 24 Exodus 2 22 26 Exodus 2 22 25 Exodus 2 22 27 Exodus 2 22 26 Exodus 2 22 28 Exodus 2 22 27 Exodus 2 22 29 Exodus 2 22 28 Exodus 2 22 30 Exodus 2 22 29 Exodus 2 22 31 Exodus 2 22 30 Leviticus 3 6 1 Leviticus 3 5 20 Leviticus 3 6 2 Leviticus 3 5 21 Leviticus 3 6 3 Leviticus 3 5 22 Leviticus 3 6 4 Leviticus 3 5 23 Leviticus 3 6 5 Leviticus 3 5 24 Leviticus 3 6 6 Leviticus 3 5 25 Leviticus 3 6 7 Leviticus 3 5 26 Leviticus 3 6 8 Leviticus 3 6 1 Leviticus 3 6 9 Leviticus 3 6 2 Leviticus 3 6 10 Leviticus 3 6 3 Leviticus 3 6 11 Leviticus 3 6 4 Leviticus 3 6 12 Leviticus 3 6 5 Leviticus 3 6 13 Leviticus 3 6 6 Leviticus 3 6 14 Leviticus 3 6 7 Leviticus 3 6 15 Leviticus 3 6 8 Leviticus 3 6 16 Leviticus 3 6 9 Leviticus 3 6 17 Leviticus 3 6 10 Leviticus 3 6 18 Leviticus 3 6 11 Leviticus 3 6 19 Leviticus 3 6 12 Leviticus 3 6 20 Leviticus 3 6 13 Leviticus 3 6 21 Leviticus 3 6 14 Leviticus 3 6 22 Leviticus 3 6 15 Leviticus 3 6 23 Leviticus 3 6 16 Leviticus 3 6 24 Leviticus 3 6 17 Leviticus 3 6 25 Leviticus 3 6 18 Leviticus 3 6 26 Leviticus 3 6 19 Leviticus 3 6 27 Leviticus 3 6 20 Leviticus 3 6 28 Leviticus 3 6 21 Leviticus 3 6 29 Leviticus 3 6 22 Leviticus 3 6 30 Leviticus 3 6 23 Leviticus 3 14 55 Leviticus 3 14 55 Leviticus 3 14 55 Leviticus 3 14 56 Leviticus 3 14 56 Leviticus 3 14 57 Numbers 4 16 36 Numbers 4 17 1 Numbers 4 16 37 Numbers 4 17 2 Numbers 4 16 38 Numbers 4 17 3 Numbers 4 16 39 Numbers 4 17 4 Numbers 4 16 40 Numbers 4 17 5 Numbers 4 16 41 Numbers 4 17 6 Numbers 4 16 42 Numbers 4 17 7 Numbers 4 16 43 Numbers 4 17 8 Numbers 4 16 44 Numbers 4 17 9 Numbers 4 16 45 Numbers 4 17 10 Numbers 4 16 46 Numbers 4 17 11 Numbers 4 16 47 Numbers 4 17 12 Numbers 4 16 48 Numbers 4 17 13 Numbers 4 16 49 Numbers 4 17 14 Numbers 4 16 50 Numbers 4 17 15 Numbers 4 17 1 Numbers 4 17 16 Numbers 4 17 2 Numbers 4 17 17 Numbers 4 17 3 Numbers 4 17 18 Numbers 4 17 4 Numbers 4 17 19 Numbers 4 17 5 Numbers 4 17 20 Numbers 4 17 6 Numbers 4 17 21 Numbers 4 17 7 Numbers 4 17 22 Numbers 4 17 8 Numbers 4 17 23 Numbers 4 17 9 Numbers 4 17 24 Numbers 4 17 10 Numbers 4 17 25 Numbers 4 17 11 Numbers 4 17 26 Numbers 4 17 12 Numbers 4 17 27 Numbers 4 17 13 Numbers 4 17 28 Numbers 4 26 1 Numbers 4 25 19 Numbers 4 26 1 Numbers 4 26 1 Deuteronomy 5 12 32 Deuteronomy 5 13 1 Deuteronomy 5 13 1 Deuteronomy 5 13 2 Deuteronomy 5 13 2 Deuteronomy 5 13 3 Deuteronomy 5 13 3 Deuteronomy 5 13 4 Deuteronomy 5 13 4 Deuteronomy 5 13 5 Deuteronomy 5 13 5 Deuteronomy 5 13 6 Deuteronomy 5 13 6 Deuteronomy 5 13 7 Deuteronomy 5 13 7 Deuteronomy 5 13 8 Deuteronomy 5 13 8 Deuteronomy 5 13 9 Deuteronomy 5 13 9 Deuteronomy 5 13 10 Deuteronomy 5 13 10 Deuteronomy 5 13 11 Deuteronomy 5 13 11 Deuteronomy 5 13 12 Deuteronomy 5 13 12 Deuteronomy 5 13 13 Deuteronomy 5 13 13 Deuteronomy 5 13 14 Deuteronomy 5 13 14 Deuteronomy 5 13 15 Deuteronomy 5 13 15 Deuteronomy 5 13 16 Deuteronomy 5 13 16 Deuteronomy 5 13 17 Deuteronomy 5 13 17 Deuteronomy 5 13 18 Deuteronomy 5 13 18 Deuteronomy 5 13 19 Deuteronomy 5 22 30 Deuteronomy 5 23 1 Deuteronomy 5 23 1 Deuteronomy 5 23 2 Deuteronomy 5 23 2 Deuteronomy 5 23 3 Deuteronomy 5 23 3 Deuteronomy 5 23 4 Deuteronomy 5 23 4 Deuteronomy 5 23 5 Deuteronomy 5 23 5 Deuteronomy 5 23 6 Deuteronomy 5 23 6 Deuteronomy 5 23 7 Deuteronomy 5 23 7 Deuteronomy 5 23 8 Deuteronomy 5 23 8 Deuteronomy 5 23 9 Deuteronomy 5 23 9 Deuteronomy 5 23 10 Deuteronomy 5 23 10 Deuteronomy 5 23 11 Deuteronomy 5 23 11 Deuteronomy 5 23 12 Deuteronomy 5 23 12 Deuteronomy 5 23 13 Deuteronomy 5 23 13 Deuteronomy 5 23 14 Deuteronomy 5 23 14 Deuteronomy 5 23 15 Deuteronomy 5 23 15 Deuteronomy 5 23 16 Deuteronomy 5 23 16 Deuteronomy 5 23 17 Deuteronomy 5 23 17 Deuteronomy 5 23 18 Deuteronomy 5 23 18 Deuteronomy 5 23 19 Deuteronomy 5 23 19 Deuteronomy 5 23 20 Deuteronomy 5 23 20 Deuteronomy 5 23 21 Deuteronomy 5 23 21 Deuteronomy 5 23 22 Deuteronomy 5 23 22 Deuteronomy 5 23 23 Deuteronomy 5 23 23 Deuteronomy 5 23 24 Deuteronomy 5 23 24 Deuteronomy 5 23 25 Deuteronomy 5 23 25 Deuteronomy 5 23 26 Deuteronomy 5 29 1 Deuteronomy 5 28 69 Deuteronomy 5 29 2 Deuteronomy 5 29 1 Deuteronomy 5 29 3 Deuteronomy 5 29 2 Deuteronomy 5 29 4 Deuteronomy 5 29 3 Deuteronomy 5 29 5 Deuteronomy 5 29 4 Deuteronomy 5 29 6 Deuteronomy 5 29 5 Deuteronomy 5 29 7 Deuteronomy 5 29 6 Deuteronomy 5 29 8 Deuteronomy 5 29 7 Deuteronomy 5 29 9 Deuteronomy 5 29 8 Deuteronomy 5 29 10 Deuteronomy 5 29 9 Deuteronomy 5 29 11 Deuteronomy 5 29 10 Deuteronomy 5 29 12 Deuteronomy 5 29 11 Deuteronomy 5 29 13 Deuteronomy 5 29 12 Deuteronomy 5 29 14 Deuteronomy 5 29 13 Deuteronomy 5 29 15 Deuteronomy 5 29 14 Deuteronomy 5 29 16 Deuteronomy 5 29 15 Deuteronomy 5 29 17 Deuteronomy 5 29 16 Deuteronomy 5 29 18 Deuteronomy 5 29 17 Deuteronomy 5 29 19 Deuteronomy 5 29 18 Deuteronomy 5 29 20 Deuteronomy 5 29 19 Deuteronomy 5 29 21 Deuteronomy 5 29 20 Deuteronomy 5 29 22 Deuteronomy 5 29 21 Deuteronomy 5 29 23 Deuteronomy 5 29 22 Deuteronomy 5 29 24 Deuteronomy 5 29 23 Deuteronomy 5 29 25 Deuteronomy 5 29 24 Deuteronomy 5 29 26 Deuteronomy 5 29 25 Deuteronomy 5 29 27 Deuteronomy 5 29 26 Deuteronomy 5 29 28 Deuteronomy 5 29 27 Deuteronomy 5 29 29 Deuteronomy 5 29 28 Joshua 6 5 16 Joshua 6 6 1 Joshua 6 6 1 Joshua 6 6 2 Joshua 6 6 2 Joshua 6 6 3 Joshua 6 6 3 Joshua 6 6 4 Joshua 6 6 4 Joshua 6 6 5 Joshua 6 6 5 Joshua 6 6 6 Joshua 6 6 6 Joshua 6 6 7 Joshua 6 6 7 Joshua 6 6 8 Joshua 6 6 8 Joshua 6 6 9 Joshua 6 6 9 Joshua 6 6 10 Joshua 6 6 10 Joshua 6 6 11 Joshua 6 6 11 Joshua 6 6 12 Joshua 6 6 12 Joshua 6 6 13 Joshua 6 6 13 Joshua 6 6 14 Joshua 6 6 14 Joshua 6 6 15 Joshua 6 6 15 Joshua 6 6 16 Joshua 6 6 16 Joshua 6 6 17 Joshua 6 6 17 Joshua 6 6 18 Joshua 6 6 18 Joshua 6 6 19 Joshua 6 6 19 Joshua 6 6 20 Joshua 6 6 20 Joshua 6 6 21 Joshua 6 6 21 Joshua 6 6 22 Joshua 6 6 22 Joshua 6 6 23 Joshua 6 6 23 Joshua 6 6 24 Joshua 6 6 24 Joshua 6 6 25 Joshua 6 6 25 Joshua 6 6 26 Joshua 6 6 26 Joshua 6 6 27 1 Samuel 9 20 43 1 Samuel 9 21 1 1 Samuel 9 21 1 1 Samuel 9 21 2 1 Samuel 9 21 2 1 Samuel 9 21 3 1 Samuel 9 21 3 1 Samuel 9 21 4 1 Samuel 9 21 4 1 Samuel 9 21 5 1 Samuel 9 21 5 1 Samuel 9 21 6 1 Samuel 9 21 6 1 Samuel 9 21 7 1 Samuel 9 21 7 1 Samuel 9 21 8 1 Samuel 9 21 8 1 Samuel 9 21 9 1 Samuel 9 21 9 1 Samuel 9 21 10 1 Samuel 9 21 10 1 Samuel 9 21 11 1 Samuel 9 21 11 1 Samuel 9 21 12 1 Samuel 9 21 12 1 Samuel 9 21 13 1 Samuel 9 21 13 1 Samuel 9 21 14 1 Samuel 9 21 14 1 Samuel 9 21 15 1 Samuel 9 21 15 1 Samuel 9 21 16 2 Samuel 10 18 33 2 Samuel 10 19 1 2 Samuel 10 19 1 2 Samuel 10 19 2 2 Samuel 10 19 2 2 Samuel 10 19 3 2 Samuel 10 19 3 2 Samuel 10 19 4 2 Samuel 10 19 4 2 Samuel 10 19 5 2 Samuel 10 19 5 2 Samuel 10 19 6 2 Samuel 10 19 6 2 Samuel 10 19 7 2 Samuel 10 19 7 2 Samuel 10 19 8 2 Samuel 10 19 8 2 Samuel 10 19 9 2 Samuel 10 19 9 2 Samuel 10 19 10 2 Samuel 10 19 10 2 Samuel 10 19 11 2 Samuel 10 19 11 2 Samuel 10 19 12 2 Samuel 10 19 12 2 Samuel 10 19 13 2 Samuel 10 19 13 2 Samuel 10 19 14 2 Samuel 10 19 14 2 Samuel 10 19 15 2 Samuel 10 19 15 2 Samuel 10 19 16 2 Samuel 10 19 16 2 Samuel 10 19 17 2 Samuel 10 19 17 2 Samuel 10 19 18 2 Samuel 10 19 18 2 Samuel 10 19 19 2 Samuel 10 19 19 2 Samuel 10 19 20 2 Samuel 10 19 20 2 Samuel 10 19 21 2 Samuel 10 19 21 2 Samuel 10 19 22 2 Samuel 10 19 22 2 Samuel 10 19 23 2 Samuel 10 19 23 2 Samuel 10 19 24 2 Samuel 10 19 24 2 Samuel 10 19 25 2 Samuel 10 19 25 2 Samuel 10 19 26 2 Samuel 10 19 26 2 Samuel 10 19 27 2 Samuel 10 19 27 2 Samuel 10 19 28 2 Samuel 10 19 28 2 Samuel 10 19 29 2 Samuel 10 19 29 2 Samuel 10 19 30 2 Samuel 10 19 30 2 Samuel 10 19 31 2 Samuel 10 19 31 2 Samuel 10 19 32 2 Samuel 10 19 32 2 Samuel 10 19 33 2 Samuel 10 19 33 2 Samuel 10 19 34 2 Samuel 10 19 34 2 Samuel 10 19 35 2 Samuel 10 19 35 2 Samuel 10 19 36 2 Samuel 10 19 36 2 Samuel 10 19 37 2 Samuel 10 19 37 2 Samuel 10 19 38 2 Samuel 10 19 38 2 Samuel 10 19 39 2 Samuel 10 19 39 2 Samuel 10 19 40 2 Samuel 10 19 40 2 Samuel 10 19 41 2 Samuel 10 19 41 2 Samuel 10 19 42 2 Samuel 10 19 42 2 Samuel 10 19 43 2 Samuel 10 19 43 2 Samuel 10 19 44 1 Kings 11 4 21 1 Kings 11 5 1 1 Kings 11 4 22 1 Kings 11 5 2 1 Kings 11 4 23 1 Kings 11 5 3 1 Kings 11 4 24 1 Kings 11 5 4 1 Kings 11 4 25 1 Kings 11 5 5 1 Kings 11 4 26 1 Kings 11 5 6 1 Kings 11 4 27 1 Kings 11 5 7 1 Kings 11 4 28 1 Kings 11 5 8 1 Kings 11 4 29 1 Kings 11 5 9 1 Kings 11 4 30 1 Kings 11 5 10 1 Kings 11 4 31 1 Kings 11 5 11 1 Kings 11 4 32 1 Kings 11 5 12 1 Kings 11 4 33 1 Kings 11 5 13 1 Kings 11 4 34 1 Kings 11 5 14 1 Kings 11 5 1 1 Kings 11 5 15 1 Kings 11 5 2 1 Kings 11 5 16 1 Kings 11 5 3 1 Kings 11 5 17 1 Kings 11 5 4 1 Kings 11 5 18 1 Kings 11 5 5 1 Kings 11 5 19 1 Kings 11 5 6 1 Kings 11 5 20 1 Kings 11 5 7 1 Kings 11 5 21 1 Kings 11 5 8 1 Kings 11 5 22 1 Kings 11 5 9 1 Kings 11 5 23 1 Kings 11 5 10 1 Kings 11 5 24 1 Kings 11 5 11 1 Kings 11 5 25 1 Kings 11 5 12 1 Kings 11 5 26 1 Kings 11 5 13 1 Kings 11 5 27 1 Kings 11 5 14 1 Kings 11 5 28 1 Kings 11 5 15 1 Kings 11 5 29 1 Kings 11 5 16 1 Kings 11 5 30 1 Kings 11 5 17 1 Kings 11 5 31 1 Kings 11 5 18 1 Kings 11 5 32 1 Kings 11 22 43 1 Kings 11 22 43 1 Kings 11 22 43 1 Kings 11 22 44 1 Kings 11 22 44 1 Kings 11 22 45 1 Kings 11 22 45 1 Kings 11 22 46 1 Kings 11 22 46 1 Kings 11 22 47 1 Kings 11 22 47 1 Kings 11 22 48 1 Kings 11 22 48 1 Kings 11 22 49 1 Kings 11 22 49 1 Kings 11 22 50 1 Kings 11 22 50 1 Kings 11 22 51 1 Kings 11 22 51 1 Kings 11 22 52 1 Kings 11 22 52 1 Kings 11 22 53 1 Kings 11 22 53 1 Kings 11 22 54 2 Kings 12 11 21 2 Kings 12 12 1 2 Kings 12 12 1 2 Kings 12 12 2 2 Kings 12 12 2 2 Kings 12 12 3 2 Kings 12 12 3 2 Kings 12 12 4 2 Kings 12 12 4 2 Kings 12 12 5 2 Kings 12 12 5 2 Kings 12 12 6 2 Kings 12 12 6 2 Kings 12 12 7 2 Kings 12 12 7 2 Kings 12 12 8 2 Kings 12 12 8 2 Kings 12 12 9 2 Kings 12 12 9 2 Kings 12 12 10 2 Kings 12 12 10 2 Kings 12 12 11 2 Kings 12 12 11 2 Kings 12 12 12 2 Kings 12 12 12 2 Kings 12 12 13 2 Kings 12 12 13 2 Kings 12 12 14 2 Kings 12 12 14 2 Kings 12 12 15 2 Kings 12 12 15 2 Kings 12 12 16 2 Kings 12 12 16 2 Kings 12 12 17 2 Kings 12 12 17 2 Kings 12 12 18 2 Kings 12 12 18 2 Kings 12 12 19 2 Kings 12 12 19 2 Kings 12 12 20 2 Kings 12 12 20 2 Kings 12 12 21 2 Kings 12 12 21 2 Kings 12 12 22 1 Chronicles 13 6 1 1 Chronicles 13 5 27 1 Chronicles 13 6 2 1 Chronicles 13 5 28 1 Chronicles 13 6 3 1 Chronicles 13 5 29 1 Chronicles 13 6 4 1 Chronicles 13 5 30 1 Chronicles 13 6 5 1 Chronicles 13 5 31 1 Chronicles 13 6 6 1 Chronicles 13 5 32 1 Chronicles 13 6 7 1 Chronicles 13 5 33 1 Chronicles 13 6 8 1 Chronicles 13 5 34 1 Chronicles 13 6 9 1 Chronicles 13 5 35 1 Chronicles 13 6 10 1 Chronicles 13 5 36 1 Chronicles 13 6 11 1 Chronicles 13 5 37 1 Chronicles 13 6 12 1 Chronicles 13 5 38 1 Chronicles 13 6 13 1 Chronicles 13 5 39 1 Chronicles 13 6 14 1 Chronicles 13 5 40 1 Chronicles 13 6 15 1 Chronicles 13 5 41 1 Chronicles 13 6 16 1 Chronicles 13 6 1 1 Chronicles 13 6 17 1 Chronicles 13 6 2 1 Chronicles 13 6 18 1 Chronicles 13 6 3 1 Chronicles 13 6 19 1 Chronicles 13 6 4 1 Chronicles 13 6 20 1 Chronicles 13 6 5 1 Chronicles 13 6 21 1 Chronicles 13 6 6 1 Chronicles 13 6 22 1 Chronicles 13 6 7 1 Chronicles 13 6 23 1 Chronicles 13 6 8 1 Chronicles 13 6 24 1 Chronicles 13 6 9 1 Chronicles 13 6 25 1 Chronicles 13 6 10 1 Chronicles 13 6 26 1 Chronicles 13 6 11 1 Chronicles 13 6 27 1 Chronicles 13 6 12 1 Chronicles 13 6 28 1 Chronicles 13 6 13 1 Chronicles 13 6 29 1 Chronicles 13 6 14 1 Chronicles 13 6 30 1 Chronicles 13 6 15 1 Chronicles 13 6 31 1 Chronicles 13 6 16 1 Chronicles 13 6 32 1 Chronicles 13 6 17 1 Chronicles 13 6 33 1 Chronicles 13 6 18 1 Chronicles 13 6 34 1 Chronicles 13 6 19 1 Chronicles 13 6 35 1 Chronicles 13 6 20 1 Chronicles 13 6 36 1 Chronicles 13 6 21 1 Chronicles 13 6 37 1 Chronicles 13 6 22 1 Chronicles 13 6 38 1 Chronicles 13 6 23 1 Chronicles 13 6 39 1 Chronicles 13 6 24 1 Chronicles 13 6 40 1 Chronicles 13 6 25 1 Chronicles 13 6 41 1 Chronicles 13 6 26 1 Chronicles 13 6 42 1 Chronicles 13 6 27 1 Chronicles 13 6 43 1 Chronicles 13 6 28 1 Chronicles 13 6 44 1 Chronicles 13 6 29 1 Chronicles 13 6 45 1 Chronicles 13 6 30 1 Chronicles 13 6 46 1 Chronicles 13 6 31 1 Chronicles 13 6 47 1 Chronicles 13 6 32 1 Chronicles 13 6 48 1 Chronicles 13 6 33 1 Chronicles 13 6 49 1 Chronicles 13 6 34 1 Chronicles 13 6 50 1 Chronicles 13 6 35 1 Chronicles 13 6 51 1 Chronicles 13 6 36 1 Chronicles 13 6 52 1 Chronicles 13 6 37 1 Chronicles 13 6 53 1 Chronicles 13 6 38 1 Chronicles 13 6 54 1 Chronicles 13 6 39 1 Chronicles 13 6 55 1 Chronicles 13 6 40 1 Chronicles 13 6 56 1 Chronicles 13 6 41 1 Chronicles 13 6 57 1 Chronicles 13 6 42 1 Chronicles 13 6 58 1 Chronicles 13 6 43 1 Chronicles 13 6 59 1 Chronicles 13 6 44 1 Chronicles 13 6 60 1 Chronicles 13 6 45 1 Chronicles 13 6 61 1 Chronicles 13 6 46 1 Chronicles 13 6 62 1 Chronicles 13 6 47 1 Chronicles 13 6 63 1 Chronicles 13 6 48 1 Chronicles 13 6 64 1 Chronicles 13 6 49 1 Chronicles 13 6 65 1 Chronicles 13 6 50 1 Chronicles 13 6 66 1 Chronicles 13 6 51 1 Chronicles 13 6 67 1 Chronicles 13 6 52 1 Chronicles 13 6 68 1 Chronicles 13 6 53 1 Chronicles 13 6 69 1 Chronicles 13 6 54 1 Chronicles 13 6 70 1 Chronicles 13 6 55 1 Chronicles 13 6 71 1 Chronicles 13 6 56 1 Chronicles 13 6 72 1 Chronicles 13 6 57 1 Chronicles 13 6 73 1 Chronicles 13 6 58 1 Chronicles 13 6 74 1 Chronicles 13 6 59 1 Chronicles 13 6 75 1 Chronicles 13 6 60 1 Chronicles 13 6 76 1 Chronicles 13 6 61 1 Chronicles 13 6 77 1 Chronicles 13 6 62 1 Chronicles 13 6 78 1 Chronicles 13 6 63 1 Chronicles 13 6 79 1 Chronicles 13 6 64 1 Chronicles 13 6 80 1 Chronicles 13 6 65 1 Chronicles 13 6 81 1 Chronicles 13 6 66 1 Chronicles 13 12 4 1 Chronicles 13 12 4 1 Chronicles 13 12 4 1 Chronicles 13 12 5 1 Chronicles 13 12 5 1 Chronicles 13 12 6 1 Chronicles 13 12 6 1 Chronicles 13 12 7 1 Chronicles 13 12 7 1 Chronicles 13 12 8 1 Chronicles 13 12 8 1 Chronicles 13 12 9 1 Chronicles 13 12 9 1 Chronicles 13 12 10 1 Chronicles 13 12 10 1 Chronicles 13 12 11 1 Chronicles 13 12 11 1 Chronicles 13 12 12 1 Chronicles 13 12 12 1 Chronicles 13 12 13 1 Chronicles 13 12 13 1 Chronicles 13 12 14 1 Chronicles 13 12 14 1 Chronicles 13 12 15 1 Chronicles 13 12 15 1 Chronicles 13 12 16 1 Chronicles 13 12 16 1 Chronicles 13 12 17 1 Chronicles 13 12 17 1 Chronicles 13 12 18 1 Chronicles 13 12 18 1 Chronicles 13 12 19 1 Chronicles 13 12 19 1 Chronicles 13 12 20 1 Chronicles 13 12 20 1 Chronicles 13 12 21 1 Chronicles 13 12 21 1 Chronicles 13 12 22 1 Chronicles 13 12 22 1 Chronicles 13 12 23 1 Chronicles 13 12 23 1 Chronicles 13 12 24 1 Chronicles 13 12 24 1 Chronicles 13 12 25 1 Chronicles 13 12 25 1 Chronicles 13 12 26 1 Chronicles 13 12 26 1 Chronicles 13 12 27 1 Chronicles 13 12 27 1 Chronicles 13 12 28 1 Chronicles 13 12 28 1 Chronicles 13 12 29 1 Chronicles 13 12 29 1 Chronicles 13 12 30 1 Chronicles 13 12 30 1 Chronicles 13 12 31 1 Chronicles 13 12 31 1 Chronicles 13 12 32 1 Chronicles 13 12 32 1 Chronicles 13 12 33 1 Chronicles 13 12 33 1 Chronicles 13 12 34 1 Chronicles 13 12 34 1 Chronicles 13 12 35 1 Chronicles 13 12 35 1 Chronicles 13 12 36 1 Chronicles 13 12 36 1 Chronicles 13 12 37 1 Chronicles 13 12 37 1 Chronicles 13 12 38 1 Chronicles 13 12 38 1 Chronicles 13 12 39 1 Chronicles 13 12 39 1 Chronicles 13 12 40 1 Chronicles 13 12 40 1 Chronicles 13 12 41 2 Chronicles 14 2 1 2 Chronicles 14 1 18 2 Chronicles 14 2 2 2 Chronicles 14 2 1 2 Chronicles 14 2 3 2 Chronicles 14 2 2 2 Chronicles 14 2 4 2 Chronicles 14 2 3 2 Chronicles 14 2 5 2 Chronicles 14 2 4 2 Chronicles 14 2 6 2 Chronicles 14 2 5 2 Chronicles 14 2 7 2 Chronicles 14 2 6 2 Chronicles 14 2 8 2 Chronicles 14 2 7 2 Chronicles 14 2 9 2 Chronicles 14 2 8 2 Chronicles 14 2 10 2 Chronicles 14 2 9 2 Chronicles 14 2 11 2 Chronicles 14 2 10 2 Chronicles 14 2 12 2 Chronicles 14 2 11 2 Chronicles 14 2 13 2 Chronicles 14 2 12 2 Chronicles 14 2 14 2 Chronicles 14 2 13 2 Chronicles 14 2 15 2 Chronicles 14 2 14 2 Chronicles 14 2 16 2 Chronicles 14 2 15 2 Chronicles 14 2 17 2 Chronicles 14 2 16 2 Chronicles 14 2 18 2 Chronicles 14 2 17 2 Chronicles 14 14 1 2 Chronicles 14 13 23 2 Chronicles 14 14 2 2 Chronicles 14 14 1 2 Chronicles 14 14 3 2 Chronicles 14 14 2 2 Chronicles 14 14 4 2 Chronicles 14 14 3 2 Chronicles 14 14 5 2 Chronicles 14 14 4 2 Chronicles 14 14 6 2 Chronicles 14 14 5 2 Chronicles 14 14 7 2 Chronicles 14 14 6 2 Chronicles 14 14 8 2 Chronicles 14 14 7 2 Chronicles 14 14 9 2 Chronicles 14 14 8 2 Chronicles 14 14 10 2 Chronicles 14 14 9 2 Chronicles 14 14 11 2 Chronicles 14 14 10 2 Chronicles 14 14 12 2 Chronicles 14 14 11 2 Chronicles 14 14 13 2 Chronicles 14 14 12 2 Chronicles 14 14 14 2 Chronicles 14 14 13 2 Chronicles 14 14 15 2 Chronicles 14 14 14 Nehemiah 16 4 1 Nehemiah 16 3 33 Nehemiah 16 4 2 Nehemiah 16 3 34 Nehemiah 16 4 3 Nehemiah 16 3 35 Nehemiah 16 4 4 Nehemiah 16 3 36 Nehemiah 16 4 5 Nehemiah 16 3 37 Nehemiah 16 4 6 Nehemiah 16 3 38 Nehemiah 16 4 7 Nehemiah 16 4 1 Nehemiah 16 4 8 Nehemiah 16 4 2 Nehemiah 16 4 9 Nehemiah 16 4 3 Nehemiah 16 4 10 Nehemiah 16 4 4 Nehemiah 16 4 11 Nehemiah 16 4 5 Nehemiah 16 4 12 Nehemiah 16 4 6 Nehemiah 16 4 13 Nehemiah 16 4 7 Nehemiah 16 4 14 Nehemiah 16 4 8 Nehemiah 16 4 15 Nehemiah 16 4 9 Nehemiah 16 4 16 Nehemiah 16 4 10 Nehemiah 16 4 17 Nehemiah 16 4 11 Nehemiah 16 4 18 Nehemiah 16 4 12 Nehemiah 16 4 19 Nehemiah 16 4 13 Nehemiah 16 4 20 Nehemiah 16 4 14 Nehemiah 16 4 21 Nehemiah 16 4 15 Nehemiah 16 4 22 Nehemiah 16 4 16 Nehemiah 16 4 23 Nehemiah 16 4 17 Nehemiah 16 7 67 Nehemiah 16 7 67 Nehemiah 16 7 68 Nehemiah 16 7 67 Nehemiah 16 7 69 Nehemiah 16 7 68 Nehemiah 16 7 70 Nehemiah 16 7 69 Nehemiah 16 7 71 Nehemiah 16 7 70 Nehemiah 16 7 72 Nehemiah 16 7 71 Nehemiah 16 7 73 Nehemiah 16 7 72 Nehemiah 16 9 38 Nehemiah 16 10 1 Nehemiah 16 10 1 Nehemiah 16 10 2 Nehemiah 16 10 2 Nehemiah 16 10 3 Nehemiah 16 10 3 Nehemiah 16 10 4 Nehemiah 16 10 4 Nehemiah 16 10 5 Nehemiah 16 10 5 Nehemiah 16 10 6 Nehemiah 16 10 6 Nehemiah 16 10 7 Nehemiah 16 10 7 Nehemiah 16 10 8 Nehemiah 16 10 8 Nehemiah 16 10 9 Nehemiah 16 10 9 Nehemiah 16 10 10 Nehemiah 16 10 10 Nehemiah 16 10 11 Nehemiah 16 10 11 Nehemiah 16 10 12 Nehemiah 16 10 12 Nehemiah 16 10 13 Nehemiah 16 10 13 Nehemiah 16 10 14 Nehemiah 16 10 14 Nehemiah 16 10 15 Nehemiah 16 10 15 Nehemiah 16 10 16 Nehemiah 16 10 16 Nehemiah 16 10 17 Nehemiah 16 10 17 Nehemiah 16 10 18 Nehemiah 16 10 18 Nehemiah 16 10 19 Nehemiah 16 10 19 Nehemiah 16 10 20 Nehemiah 16 10 20 Nehemiah 16 10 21 Nehemiah 16 10 21 Nehemiah 16 10 22 Nehemiah 16 10 22 Nehemiah 16 10 23 Nehemiah 16 10 23 Nehemiah 16 10 24 Nehemiah 16 10 24 Nehemiah 16 10 25 Nehemiah 16 10 25 Nehemiah 16 10 26 Nehemiah 16 10 26 Nehemiah 16 10 27 Nehemiah 16 10 27 Nehemiah 16 10 28 Nehemiah 16 10 28 Nehemiah 16 10 29 Nehemiah 16 10 29 Nehemiah 16 10 30 Nehemiah 16 10 30 Nehemiah 16 10 31 Nehemiah 16 10 31 Nehemiah 16 10 32 Nehemiah 16 10 32 Nehemiah 16 10 33 Nehemiah 16 10 33 Nehemiah 16 10 34 Nehemiah 16 10 34 Nehemiah 16 10 35 Nehemiah 16 10 35 Nehemiah 16 10 36 Nehemiah 16 10 36 Nehemiah 16 10 37 Nehemiah 16 10 37 Nehemiah 16 10 38 Nehemiah 16 10 38 Nehemiah 16 10 39 Nehemiah 16 10 39 Nehemiah 16 10 40 Job 18 39 31 Job 18 40 1 Job 18 39 32 Job 18 40 2 Job 18 39 33 Job 18 40 3 Job 18 39 34 Job 18 40 4 Job 18 39 35 Job 18 40 5 Job 18 40 1 Job 18 40 6 Job 18 40 2 Job 18 40 7 Job 18 40 3 Job 18 40 8 Job 18 40 4 Job 18 40 9 Job 18 40 5 Job 18 40 10 Job 18 40 6 Job 18 40 11 Job 18 40 7 Job 18 40 12 Job 18 40 8 Job 18 40 13 Job 18 40 9 Job 18 40 14 Job 18 40 10 Job 18 40 15 Job 18 40 11 Job 18 40 16 Job 18 40 12 Job 18 40 17 Job 18 40 13 Job 18 40 18 Job 18 40 14 Job 18 40 19 Job 18 40 15 Job 18 40 20 Job 18 40 16 Job 18 40 21 Job 18 40 17 Job 18 40 22 Job 18 40 18 Job 18 40 23 Job 18 40 19 Job 18 40 24 Job 18 40 20 Job 18 40 25 Job 18 40 21 Job 18 40 26 Job 18 40 22 Job 18 40 27 Job 18 40 23 Job 18 40 28 Job 18 40 24 Job 18 40 29 Job 18 40 25 Job 18 40 30 Job 18 40 26 Job 18 40 31 Job 18 40 27 Job 18 40 32 Psalms 19 9 22 Psalms 19 10 1 Psalms 19 9 23 Psalms 19 10 2 Psalms 19 9 24 Psalms 19 10 3 Psalms 19 9 25 Psalms 19 10 4 Psalms 19 9 26 Psalms 19 10 5 Psalms 19 9 27 Psalms 19 10 6 Psalms 19 9 28 Psalms 19 10 7 Psalms 19 9 29 Psalms 19 10 8 Psalms 19 9 30 Psalms 19 10 9 Psalms 19 9 31 Psalms 19 10 10 Psalms 19 9 32 Psalms 19 10 11 Psalms 19 9 33 Psalms 19 10 12 Psalms 19 9 34 Psalms 19 10 13 Psalms 19 9 35 Psalms 19 10 14 Psalms 19 9 36 Psalms 19 10 15 Psalms 19 9 37 Psalms 19 10 16 Psalms 19 9 38 Psalms 19 10 17 Psalms 19 9 39 Psalms 19 10 18 Psalms 19 10 1 Psalms 19 11 1 Psalms 19 10 2 Psalms 19 11 2 Psalms 19 10 3 Psalms 19 11 3 Psalms 19 10 4 Psalms 19 11 4 Psalms 19 10 5 Psalms 19 11 5 Psalms 19 10 6 Psalms 19 11 6 Psalms 19 10 7 Psalms 19 11 7 Psalms 19 11 1 Psalms 19 12 1 Psalms 19 11 2 Psalms 19 12 2 Psalms 19 11 3 Psalms 19 12 3 Psalms 19 11 4 Psalms 19 12 4 Psalms 19 11 5 Psalms 19 12 5 Psalms 19 11 6 Psalms 19 12 6 Psalms 19 11 7 Psalms 19 12 7 Psalms 19 11 8 Psalms 19 12 8 Psalms 19 11 9 Psalms 19 12 9 Psalms 19 12 1 Psalms 19 13 1 Psalms 19 12 2 Psalms 19 13 2 Psalms 19 12 3 Psalms 19 13 3 Psalms 19 12 4 Psalms 19 13 4 Psalms 19 12 5 Psalms 19 13 5 Psalms 19 12 6 Psalms 19 13 6 Psalms 19 13 1 Psalms 19 14 1 Psalms 19 13 2 Psalms 19 14 2 Psalms 19 13 3 Psalms 19 14 3 Psalms 19 13 4 Psalms 19 14 4 Psalms 19 13 5 Psalms 19 14 5 Psalms 19 13 6 Psalms 19 14 6 Psalms 19 13 7 Psalms 19 14 7 Psalms 19 14 1 Psalms 19 15 1 Psalms 19 14 2 Psalms 19 15 2 Psalms 19 14 3 Psalms 19 15 3 Psalms 19 14 4 Psalms 19 15 4 Psalms 19 14 5 Psalms 19 15 5 Psalms 19 15 1 Psalms 19 16 1 Psalms 19 15 2 Psalms 19 16 2 Psalms 19 15 3 Psalms 19 16 3 Psalms 19 15 4 Psalms 19 16 4 Psalms 19 15 5 Psalms 19 16 5 Psalms 19 15 6 Psalms 19 16 6 Psalms 19 15 7 Psalms 19 16 7 Psalms 19 15 8 Psalms 19 16 8 Psalms 19 15 9 Psalms 19 16 9 Psalms 19 15 10 Psalms 19 16 10 Psalms 19 15 11 Psalms 19 16 11 Psalms 19 16 1 Psalms 19 17 1 Psalms 19 16 2 Psalms 19 17 2 Psalms 19 16 3 Psalms 19 17 3 Psalms 19 16 4 Psalms 19 17 4 Psalms 19 16 5 Psalms 19 17 5 Psalms 19 16 6 Psalms 19 17 6 Psalms 19 16 7 Psalms 19 17 7 Psalms 19 16 8 Psalms 19 17 8 Psalms 19 16 9 Psalms 19 17 9 Psalms 19 16 10 Psalms 19 17 10 Psalms 19 16 11 Psalms 19 17 11 Psalms 19 16 12 Psalms 19 17 12 Psalms 19 16 13 Psalms 19 17 13 Psalms 19 16 14 Psalms 19 17 14 Psalms 19 16 15 Psalms 19 17 15 Psalms 19 17 1 Psalms 19 18 2 Psalms 19 17 2 Psalms 19 18 3 Psalms 19 17 3 Psalms 19 18 4 Psalms 19 17 4 Psalms 19 18 5 Psalms 19 17 5 Psalms 19 18 6 Psalms 19 17 6 Psalms 19 18 7 Psalms 19 17 7 Psalms 19 18 8 Psalms 19 17 8 Psalms 19 18 9 Psalms 19 17 9 Psalms 19 18 10 Psalms 19 17 10 Psalms 19 18 11 Psalms 19 17 11 Psalms 19 18 12 Psalms 19 17 12 Psalms 19 18 13 Psalms 19 17 13 Psalms 19 18 14 Psalms 19 17 14 Psalms 19 18 15 Psalms 19 17 15 Psalms 19 18 16 Psalms 19 17 16 Psalms 19 18 17 Psalms 19 17 17 Psalms 19 18 18 Psalms 19 17 18 Psalms 19 18 19 Psalms 19 17 19 Psalms 19 18 20 Psalms 19 17 20 Psalms 19 18 21 Psalms 19 17 21 Psalms 19 18 22 Psalms 19 17 22 Psalms 19 18 23 Psalms 19 17 23 Psalms 19 18 24 Psalms 19 17 24 Psalms 19 18 25 Psalms 19 17 25 Psalms 19 18 26 Psalms 19 17 26 Psalms 19 18 27 Psalms 19 17 27 Psalms 19 18 28 Psalms 19 17 28 Psalms 19 18 29 Psalms 19 17 29 Psalms 19 18 30 Psalms 19 17 30 Psalms 19 18 31 Psalms 19 17 31 Psalms 19 18 32 Psalms 19 17 32 Psalms 19 18 33 Psalms 19 17 33 Psalms 19 18 34 Psalms 19 17 34 Psalms 19 18 35 Psalms 19 17 35 Psalms 19 18 36 Psalms 19 17 36 Psalms 19 18 37 Psalms 19 17 37 Psalms 19 18 38 Psalms 19 17 38 Psalms 19 18 39 Psalms 19 17 39 Psalms 19 18 40 Psalms 19 17 40 Psalms 19 18 41 Psalms 19 17 41 Psalms 19 18 42 Psalms 19 17 42 Psalms 19 18 43 Psalms 19 17 43 Psalms 19 18 44 Psalms 19 17 44 Psalms 19 18 45 Psalms 19 17 45 Psalms 19 18 46 Psalms 19 17 46 Psalms 19 18 47 Psalms 19 17 47 Psalms 19 18 48 Psalms 19 17 48 Psalms 19 18 49 Psalms 19 17 49 Psalms 19 18 50 Psalms 19 17 50 Psalms 19 18 51 Psalms 19 18 1 Psalms 19 19 1 Psalms 19 18 2 Psalms 19 19 2 Psalms 19 18 3 Psalms 19 19 3 Psalms 19 18 4 Psalms 19 19 4 Psalms 19 18 5 Psalms 19 19 5 Psalms 19 18 6 Psalms 19 19 6 Psalms 19 18 7 Psalms 19 19 7 Psalms 19 18 8 Psalms 19 19 8 Psalms 19 18 9 Psalms 19 19 9 Psalms 19 18 10 Psalms 19 19 10 Psalms 19 18 11 Psalms 19 19 11 Psalms 19 18 12 Psalms 19 19 12 Psalms 19 18 13 Psalms 19 19 13 Psalms 19 18 14 Psalms 19 19 14 Psalms 19 18 15 Psalms 19 19 15 Psalms 19 19 1 Psalms 19 20 1 Psalms 19 19 2 Psalms 19 20 2 Psalms 19 19 3 Psalms 19 20 3 Psalms 19 19 4 Psalms 19 20 4 Psalms 19 19 5 Psalms 19 20 5 Psalms 19 19 6 Psalms 19 20 6 Psalms 19 19 7 Psalms 19 20 7 Psalms 19 19 8 Psalms 19 20 8 Psalms 19 19 9 Psalms 19 20 9 Psalms 19 19 10 Psalms 19 20 10 Psalms 19 20 1 Psalms 19 21 1 Psalms 19 20 2 Psalms 19 21 2 Psalms 19 20 3 Psalms 19 21 3 Psalms 19 20 4 Psalms 19 21 4 Psalms 19 20 5 Psalms 19 21 5 Psalms 19 20 6 Psalms 19 21 6 Psalms 19 20 7 Psalms 19 21 7 Psalms 19 20 8 Psalms 19 21 8 Psalms 19 20 9 Psalms 19 21 9 Psalms 19 20 10 Psalms 19 21 10 Psalms 19 20 11 Psalms 19 21 11 Psalms 19 20 12 Psalms 19 21 12 Psalms 19 20 13 Psalms 19 21 13 Psalms 19 20 14 Psalms 19 21 14 Psalms 19 21 1 Psalms 19 22 1 Psalms 19 21 2 Psalms 19 22 2 Psalms 19 21 3 Psalms 19 22 3 Psalms 19 21 4 Psalms 19 22 4 Psalms 19 21 5 Psalms 19 22 5 Psalms 19 21 6 Psalms 19 22 6 Psalms 19 21 7 Psalms 19 22 7 Psalms 19 21 8 Psalms 19 22 8 Psalms 19 21 9 Psalms 19 22 9 Psalms 19 21 10 Psalms 19 22 10 Psalms 19 21 11 Psalms 19 22 11 Psalms 19 21 12 Psalms 19 22 12 Psalms 19 21 13 Psalms 19 22 13 Psalms 19 21 14 Psalms 19 22 14 Psalms 19 21 15 Psalms 19 22 15 Psalms 19 21 16 Psalms 19 22 16 Psalms 19 21 17 Psalms 19 22 17 Psalms 19 21 18 Psalms 19 22 18 Psalms 19 21 19 Psalms 19 22 19 Psalms 19 21 20 Psalms 19 22 20 Psalms 19 21 21 Psalms 19 22 21 Psalms 19 21 22 Psalms 19 22 22 Psalms 19 21 23 Psalms 19 22 23 Psalms 19 21 24 Psalms 19 22 24 Psalms 19 21 25 Psalms 19 22 25 Psalms 19 21 26 Psalms 19 22 26 Psalms 19 21 27 Psalms 19 22 27 Psalms 19 21 28 Psalms 19 22 28 Psalms 19 21 29 Psalms 19 22 29 Psalms 19 21 30 Psalms 19 22 30 Psalms 19 21 31 Psalms 19 22 31 Psalms 19 21 32 Psalms 19 22 32 Psalms 19 22 1 Psalms 19 23 1 Psalms 19 22 2 Psalms 19 23 2 Psalms 19 22 3 Psalms 19 23 3 Psalms 19 22 4 Psalms 19 23 4 Psalms 19 22 5 Psalms 19 23 5 Psalms 19 22 6 Psalms 19 23 6 Psalms 19 23 1 Psalms 19 24 1 Psalms 19 23 2 Psalms 19 24 2 Psalms 19 23 3 Psalms 19 24 3 Psalms 19 23 4 Psalms 19 24 4 Psalms 19 23 5 Psalms 19 24 5 Psalms 19 23 6 Psalms 19 24 6 Psalms 19 23 7 Psalms 19 24 7 Psalms 19 23 8 Psalms 19 24 8 Psalms 19 23 9 Psalms 19 24 9 Psalms 19 23 10 Psalms 19 24 10 Psalms 19 24 1 Psalms 19 25 1 Psalms 19 24 2 Psalms 19 25 2 Psalms 19 24 3 Psalms 19 25 3 Psalms 19 24 4 Psalms 19 25 4 Psalms 19 24 5 Psalms 19 25 5 Psalms 19 24 6 Psalms 19 25 6 Psalms 19 24 7 Psalms 19 25 7 Psalms 19 24 8 Psalms 19 25 8 Psalms 19 24 9 Psalms 19 25 9 Psalms 19 24 10 Psalms 19 25 10 Psalms 19 24 11 Psalms 19 25 11 Psalms 19 24 12 Psalms 19 25 12 Psalms 19 24 13 Psalms 19 25 13 Psalms 19 24 14 Psalms 19 25 14 Psalms 19 24 15 Psalms 19 25 15 Psalms 19 24 16 Psalms 19 25 16 Psalms 19 24 17 Psalms 19 25 17 Psalms 19 24 18 Psalms 19 25 18 Psalms 19 24 19 Psalms 19 25 19 Psalms 19 24 20 Psalms 19 25 20 Psalms 19 24 21 Psalms 19 25 21 Psalms 19 24 22 Psalms 19 25 22 Psalms 19 25 1 Psalms 19 26 1 Psalms 19 25 2 Psalms 19 26 2 Psalms 19 25 3 Psalms 19 26 3 Psalms 19 25 4 Psalms 19 26 4 Psalms 19 25 5 Psalms 19 26 5 Psalms 19 25 6 Psalms 19 26 6 Psalms 19 25 7 Psalms 19 26 7 Psalms 19 25 8 Psalms 19 26 8 Psalms 19 25 9 Psalms 19 26 9 Psalms 19 25 10 Psalms 19 26 10 Psalms 19 25 11 Psalms 19 26 11 Psalms 19 25 12 Psalms 19 26 12 Psalms 19 26 1 Psalms 19 27 1 Psalms 19 26 2 Psalms 19 27 2 Psalms 19 26 3 Psalms 19 27 3 Psalms 19 26 4 Psalms 19 27 4 Psalms 19 26 5 Psalms 19 27 5 Psalms 19 26 6 Psalms 19 27 6 Psalms 19 26 7 Psalms 19 27 7 Psalms 19 26 8 Psalms 19 27 8 Psalms 19 26 9 Psalms 19 27 9 Psalms 19 26 10 Psalms 19 27 10 Psalms 19 26 11 Psalms 19 27 11 Psalms 19 26 12 Psalms 19 27 12 Psalms 19 26 13 Psalms 19 27 13 Psalms 19 26 14 Psalms 19 27 14 Psalms 19 27 1 Psalms 19 28 1 Psalms 19 27 2 Psalms 19 28 2 Psalms 19 27 3 Psalms 19 28 3 Psalms 19 27 4 Psalms 19 28 4 Psalms 19 27 5 Psalms 19 28 5 Psalms 19 27 6 Psalms 19 28 6 Psalms 19 27 7 Psalms 19 28 7 Psalms 19 27 8 Psalms 19 28 8 Psalms 19 27 9 Psalms 19 28 9 Psalms 19 28 1 Psalms 19 29 1 Psalms 19 28 2 Psalms 19 29 2 Psalms 19 28 3 Psalms 19 29 3 Psalms 19 28 4 Psalms 19 29 4 Psalms 19 28 5 Psalms 19 29 5 Psalms 19 28 6 Psalms 19 29 6 Psalms 19 28 7 Psalms 19 29 7 Psalms 19 28 8 Psalms 19 29 8 Psalms 19 28 9 Psalms 19 29 9 Psalms 19 28 10 Psalms 19 29 10 Psalms 19 28 11 Psalms 19 29 11 Psalms 19 29 1 Psalms 19 30 1 Psalms 19 29 2 Psalms 19 30 2 Psalms 19 29 3 Psalms 19 30 3 Psalms 19 29 4 Psalms 19 30 4 Psalms 19 29 5 Psalms 19 30 5 Psalms 19 29 6 Psalms 19 30 6 Psalms 19 29 7 Psalms 19 30 7 Psalms 19 29 8 Psalms 19 30 8 Psalms 19 29 9 Psalms 19 30 9 Psalms 19 29 10 Psalms 19 30 10 Psalms 19 29 11 Psalms 19 30 11 Psalms 19 29 12 Psalms 19 30 12 Psalms 19 29 13 Psalms 19 30 13 Psalms 19 30 1 Psalms 19 31 1 Psalms 19 30 2 Psalms 19 31 2 Psalms 19 30 3 Psalms 19 31 3 Psalms 19 30 4 Psalms 19 31 4 Psalms 19 30 5 Psalms 19 31 5 Psalms 19 30 6 Psalms 19 31 6 Psalms 19 30 7 Psalms 19 31 7 Psalms 19 30 8 Psalms 19 31 8 Psalms 19 30 9 Psalms 19 31 9 Psalms 19 30 10 Psalms 19 31 10 Psalms 19 30 11 Psalms 19 31 11 Psalms 19 30 12 Psalms 19 31 12 Psalms 19 30 13 Psalms 19 31 13 Psalms 19 30 14 Psalms 19 31 14 Psalms 19 30 15 Psalms 19 31 15 Psalms 19 30 16 Psalms 19 31 16 Psalms 19 30 17 Psalms 19 31 17 Psalms 19 30 18 Psalms 19 31 18 Psalms 19 30 19 Psalms 19 31 19 Psalms 19 30 20 Psalms 19 31 20 Psalms 19 30 21 Psalms 19 31 21 Psalms 19 30 22 Psalms 19 31 22 Psalms 19 30 23 Psalms 19 31 23 Psalms 19 30 24 Psalms 19 31 24 Psalms 19 30 25 Psalms 19 31 25 Psalms 19 31 1 Psalms 19 32 1 Psalms 19 31 2 Psalms 19 32 2 Psalms 19 31 3 Psalms 19 32 3 Psalms 19 31 4 Psalms 19 32 4 Psalms 19 31 5 Psalms 19 32 5 Psalms 19 31 6 Psalms 19 32 6 Psalms 19 31 7 Psalms 19 32 7 Psalms 19 31 8 Psalms 19 32 8 Psalms 19 31 9 Psalms 19 32 9 Psalms 19 31 10 Psalms 19 32 10 Psalms 19 31 11 Psalms 19 32 11 Psalms 19 32 1 Psalms 19 33 1 Psalms 19 32 2 Psalms 19 33 2 Psalms 19 32 3 Psalms 19 33 3 Psalms 19 32 4 Psalms 19 33 4 Psalms 19 32 5 Psalms 19 33 5 Psalms 19 32 6 Psalms 19 33 6 Psalms 19 32 7 Psalms 19 33 7 Psalms 19 32 8 Psalms 19 33 8 Psalms 19 32 9 Psalms 19 33 9 Psalms 19 32 10 Psalms 19 33 10 Psalms 19 32 11 Psalms 19 33 11 Psalms 19 32 12 Psalms 19 33 12 Psalms 19 32 13 Psalms 19 33 13 Psalms 19 32 14 Psalms 19 33 14 Psalms 19 32 15 Psalms 19 33 15 Psalms 19 32 16 Psalms 19 33 16 Psalms 19 32 17 Psalms 19 33 17 Psalms 19 32 18 Psalms 19 33 18 Psalms 19 32 19 Psalms 19 33 19 Psalms 19 32 20 Psalms 19 33 20 Psalms 19 32 21 Psalms 19 33 21 Psalms 19 32 22 Psalms 19 33 22 Psalms 19 33 1 Psalms 19 34 1 Psalms 19 33 2 Psalms 19 34 2 Psalms 19 33 3 Psalms 19 34 3 Psalms 19 33 4 Psalms 19 34 4 Psalms 19 33 5 Psalms 19 34 5 Psalms 19 33 6 Psalms 19 34 6 Psalms 19 33 7 Psalms 19 34 7 Psalms 19 33 8 Psalms 19 34 8 Psalms 19 33 9 Psalms 19 34 9 Psalms 19 33 10 Psalms 19 34 10 Psalms 19 33 11 Psalms 19 34 11 Psalms 19 33 12 Psalms 19 34 12 Psalms 19 33 13 Psalms 19 34 13 Psalms 19 33 14 Psalms 19 34 14 Psalms 19 33 15 Psalms 19 34 15 Psalms 19 33 16 Psalms 19 34 16 Psalms 19 33 17 Psalms 19 34 17 Psalms 19 33 18 Psalms 19 34 18 Psalms 19 33 19 Psalms 19 34 19 Psalms 19 33 20 Psalms 19 34 20 Psalms 19 33 21 Psalms 19 34 21 Psalms 19 33 22 Psalms 19 34 22 Psalms 19 33 23 Psalms 19 34 23 Psalms 19 34 1 Psalms 19 35 1 Psalms 19 34 2 Psalms 19 35 2 Psalms 19 34 3 Psalms 19 35 3 Psalms 19 34 4 Psalms 19 35 4 Psalms 19 34 5 Psalms 19 35 5 Psalms 19 34 6 Psalms 19 35 6 Psalms 19 34 7 Psalms 19 35 7 Psalms 19 34 8 Psalms 19 35 8 Psalms 19 34 9 Psalms 19 35 9 Psalms 19 34 10 Psalms 19 35 10 Psalms 19 34 11 Psalms 19 35 11 Psalms 19 34 12 Psalms 19 35 12 Psalms 19 34 13 Psalms 19 35 13 Psalms 19 34 14 Psalms 19 35 14 Psalms 19 34 15 Psalms 19 35 15 Psalms 19 34 16 Psalms 19 35 16 Psalms 19 34 17 Psalms 19 35 17 Psalms 19 34 18 Psalms 19 35 18 Psalms 19 34 19 Psalms 19 35 19 Psalms 19 34 20 Psalms 19 35 20 Psalms 19 34 21 Psalms 19 35 21 Psalms 19 34 22 Psalms 19 35 22 Psalms 19 34 23 Psalms 19 35 23 Psalms 19 34 24 Psalms 19 35 24 Psalms 19 34 25 Psalms 19 35 25 Psalms 19 34 26 Psalms 19 35 26 Psalms 19 34 27 Psalms 19 35 27 Psalms 19 34 28 Psalms 19 35 28 Psalms 19 35 1 Psalms 19 36 1 Psalms 19 35 2 Psalms 19 36 2 Psalms 19 35 3 Psalms 19 36 3 Psalms 19 35 4 Psalms 19 36 4 Psalms 19 35 5 Psalms 19 36 5 Psalms 19 35 6 Psalms 19 36 6 Psalms 19 35 7 Psalms 19 36 7 Psalms 19 35 8 Psalms 19 36 8 Psalms 19 35 9 Psalms 19 36 9 Psalms 19 35 10 Psalms 19 36 10 Psalms 19 35 11 Psalms 19 36 11 Psalms 19 35 12 Psalms 19 36 12 Psalms 19 35 13 Psalms 19 36 13 Psalms 19 36 1 Psalms 19 37 1 Psalms 19 36 2 Psalms 19 37 2 Psalms 19 36 3 Psalms 19 37 3 Psalms 19 36 4 Psalms 19 37 4 Psalms 19 36 5 Psalms 19 37 5 Psalms 19 36 6 Psalms 19 37 6 Psalms 19 36 7 Psalms 19 37 7 Psalms 19 36 8 Psalms 19 37 8 Psalms 19 36 9 Psalms 19 37 9 Psalms 19 36 10 Psalms 19 37 10 Psalms 19 36 11 Psalms 19 37 11 Psalms 19 36 12 Psalms 19 37 12 Psalms 19 36 13 Psalms 19 37 13 Psalms 19 36 14 Psalms 19 37 14 Psalms 19 36 15 Psalms 19 37 15 Psalms 19 36 16 Psalms 19 37 16 Psalms 19 36 17 Psalms 19 37 17 Psalms 19 36 18 Psalms 19 37 18 Psalms 19 36 19 Psalms 19 37 19 Psalms 19 36 20 Psalms 19 37 20 Psalms 19 36 21 Psalms 19 37 21 Psalms 19 36 22 Psalms 19 37 22 Psalms 19 36 23 Psalms 19 37 23 Psalms 19 36 24 Psalms 19 37 24 Psalms 19 36 25 Psalms 19 37 25 Psalms 19 36 26 Psalms 19 37 26 Psalms 19 36 27 Psalms 19 37 27 Psalms 19 36 28 Psalms 19 37 28 Psalms 19 36 29 Psalms 19 37 29 Psalms 19 36 30 Psalms 19 37 30 Psalms 19 36 31 Psalms 19 37 31 Psalms 19 36 32 Psalms 19 37 32 Psalms 19 36 33 Psalms 19 37 33 Psalms 19 36 34 Psalms 19 37 34 Psalms 19 36 35 Psalms 19 37 35 Psalms 19 36 36 Psalms 19 37 36 Psalms 19 36 37 Psalms 19 37 37 Psalms 19 36 38 Psalms 19 37 38 Psalms 19 36 39 Psalms 19 37 39 Psalms 19 36 40 Psalms 19 37 40 Psalms 19 37 1 Psalms 19 38 1 Psalms 19 37 2 Psalms 19 38 2 Psalms 19 37 3 Psalms 19 38 3 Psalms 19 37 4 Psalms 19 38 4 Psalms 19 37 5 Psalms 19 38 5 Psalms 19 37 6 Psalms 19 38 6 Psalms 19 37 7 Psalms 19 38 7 Psalms 19 37 8 Psalms 19 38 8 Psalms 19 37 9 Psalms 19 38 9 Psalms 19 37 10 Psalms 19 38 10 Psalms 19 37 11 Psalms 19 38 11 Psalms 19 37 12 Psalms 19 38 12 Psalms 19 37 13 Psalms 19 38 13 Psalms 19 37 14 Psalms 19 38 14 Psalms 19 37 15 Psalms 19 38 15 Psalms 19 37 16 Psalms 19 38 16 Psalms 19 37 17 Psalms 19 38 17 Psalms 19 37 18 Psalms 19 38 18 Psalms 19 37 19 Psalms 19 38 19 Psalms 19 37 20 Psalms 19 38 20 Psalms 19 37 21 Psalms 19 38 21 Psalms 19 37 22 Psalms 19 38 22 Psalms 19 37 23 Psalms 19 38 23 Psalms 19 38 1 Psalms 19 39 1 Psalms 19 38 2 Psalms 19 39 2 Psalms 19 38 3 Psalms 19 39 3 Psalms 19 38 4 Psalms 19 39 4 Psalms 19 38 5 Psalms 19 39 5 Psalms 19 38 6 Psalms 19 39 6 Psalms 19 38 7 Psalms 19 39 7 Psalms 19 38 8 Psalms 19 39 8 Psalms 19 38 9 Psalms 19 39 9 Psalms 19 38 10 Psalms 19 39 10 Psalms 19 38 11 Psalms 19 39 11 Psalms 19 38 12 Psalms 19 39 12 Psalms 19 38 13 Psalms 19 39 13 Psalms 19 38 14 Psalms 19 39 14 Psalms 19 39 1 Psalms 19 40 1 Psalms 19 39 2 Psalms 19 40 2 Psalms 19 39 3 Psalms 19 40 3 Psalms 19 39 4 Psalms 19 40 4 Psalms 19 39 5 Psalms 19 40 5 Psalms 19 39 6 Psalms 19 40 6 Psalms 19 39 7 Psalms 19 40 7 Psalms 19 39 8 Psalms 19 40 8 Psalms 19 39 9 Psalms 19 40 9 Psalms 19 39 10 Psalms 19 40 10 Psalms 19 39 11 Psalms 19 40 11 Psalms 19 39 12 Psalms 19 40 12 Psalms 19 39 13 Psalms 19 40 13 Psalms 19 39 14 Psalms 19 40 14 Psalms 19 39 15 Psalms 19 40 15 Psalms 19 39 16 Psalms 19 40 16 Psalms 19 39 17 Psalms 19 40 17 Psalms 19 39 18 Psalms 19 40 18 Psalms 19 40 1 Psalms 19 41 1 Psalms 19 40 2 Psalms 19 41 2 Psalms 19 40 3 Psalms 19 41 3 Psalms 19 40 4 Psalms 19 41 4 Psalms 19 40 5 Psalms 19 41 5 Psalms 19 40 6 Psalms 19 41 6 Psalms 19 40 7 Psalms 19 41 7 Psalms 19 40 8 Psalms 19 41 8 Psalms 19 40 9 Psalms 19 41 9 Psalms 19 40 10 Psalms 19 41 10 Psalms 19 40 11 Psalms 19 41 11 Psalms 19 40 12 Psalms 19 41 12 Psalms 19 40 13 Psalms 19 41 13 Psalms 19 40 14 Psalms 19 41 14 Psalms 19 41 1 Psalms 19 42 1 Psalms 19 41 2 Psalms 19 42 2 Psalms 19 41 3 Psalms 19 42 3 Psalms 19 41 4 Psalms 19 42 4 Psalms 19 41 5 Psalms 19 42 5 Psalms 19 41 6 Psalms 19 42 6 Psalms 19 41 7 Psalms 19 42 7 Psalms 19 41 8 Psalms 19 42 8 Psalms 19 41 9 Psalms 19 42 9 Psalms 19 41 10 Psalms 19 42 10 Psalms 19 41 11 Psalms 19 42 11 Psalms 19 41 12 Psalms 19 42 12 Psalms 19 42 1 Psalms 19 43 1 Psalms 19 42 2 Psalms 19 43 2 Psalms 19 42 3 Psalms 19 43 3 Psalms 19 42 4 Psalms 19 43 4 Psalms 19 42 5 Psalms 19 43 5 Psalms 19 43 1 Psalms 19 44 1 Psalms 19 43 2 Psalms 19 44 2 Psalms 19 43 3 Psalms 19 44 3 Psalms 19 43 4 Psalms 19 44 4 Psalms 19 43 5 Psalms 19 44 5 Psalms 19 43 6 Psalms 19 44 6 Psalms 19 43 7 Psalms 19 44 7 Psalms 19 43 8 Psalms 19 44 8 Psalms 19 43 9 Psalms 19 44 9 Psalms 19 43 10 Psalms 19 44 10 Psalms 19 43 11 Psalms 19 44 11 Psalms 19 43 12 Psalms 19 44 12 Psalms 19 43 13 Psalms 19 44 13 Psalms 19 43 14 Psalms 19 44 14 Psalms 19 43 15 Psalms 19 44 15 Psalms 19 43 16 Psalms 19 44 16 Psalms 19 43 17 Psalms 19 44 17 Psalms 19 43 18 Psalms 19 44 18 Psalms 19 43 19 Psalms 19 44 19 Psalms 19 43 20 Psalms 19 44 20 Psalms 19 43 21 Psalms 19 44 21 Psalms 19 43 22 Psalms 19 44 22 Psalms 19 43 23 Psalms 19 44 23 Psalms 19 43 24 Psalms 19 44 24 Psalms 19 43 25 Psalms 19 44 25 Psalms 19 43 26 Psalms 19 44 26 Psalms 19 43 27 Psalms 19 44 27 Psalms 19 44 1 Psalms 19 45 1 Psalms 19 44 2 Psalms 19 45 2 Psalms 19 44 3 Psalms 19 45 3 Psalms 19 44 4 Psalms 19 45 4 Psalms 19 44 5 Psalms 19 45 5 Psalms 19 44 6 Psalms 19 45 6 Psalms 19 44 7 Psalms 19 45 7 Psalms 19 44 8 Psalms 19 45 8 Psalms 19 44 9 Psalms 19 45 9 Psalms 19 44 10 Psalms 19 45 10 Psalms 19 44 11 Psalms 19 45 11 Psalms 19 44 12 Psalms 19 45 12 Psalms 19 44 13 Psalms 19 45 13 Psalms 19 44 14 Psalms 19 45 14 Psalms 19 44 15 Psalms 19 45 15 Psalms 19 44 16 Psalms 19 45 16 Psalms 19 44 17 Psalms 19 45 17 Psalms 19 44 18 Psalms 19 45 18 Psalms 19 45 1 Psalms 19 46 1 Psalms 19 45 2 Psalms 19 46 2 Psalms 19 45 3 Psalms 19 46 3 Psalms 19 45 4 Psalms 19 46 4 Psalms 19 45 5 Psalms 19 46 5 Psalms 19 45 6 Psalms 19 46 6 Psalms 19 45 7 Psalms 19 46 7 Psalms 19 45 8 Psalms 19 46 8 Psalms 19 45 9 Psalms 19 46 9 Psalms 19 45 10 Psalms 19 46 10 Psalms 19 45 11 Psalms 19 46 11 Psalms 19 45 12 Psalms 19 46 12 Psalms 19 46 1 Psalms 19 47 1 Psalms 19 46 2 Psalms 19 47 2 Psalms 19 46 3 Psalms 19 47 3 Psalms 19 46 4 Psalms 19 47 4 Psalms 19 46 5 Psalms 19 47 5 Psalms 19 46 6 Psalms 19 47 6 Psalms 19 46 7 Psalms 19 47 7 Psalms 19 46 8 Psalms 19 47 8 Psalms 19 46 9 Psalms 19 47 9 Psalms 19 46 10 Psalms 19 47 10 Psalms 19 47 1 Psalms 19 48 1 Psalms 19 47 2 Psalms 19 48 2 Psalms 19 47 3 Psalms 19 48 3 Psalms 19 47 4 Psalms 19 48 4 Psalms 19 47 5 Psalms 19 48 5 Psalms 19 47 6 Psalms 19 48 6 Psalms 19 47 7 Psalms 19 48 7 Psalms 19 47 8 Psalms 19 48 8 Psalms 19 47 9 Psalms 19 48 9 Psalms 19 47 10 Psalms 19 48 10 Psalms 19 47 11 Psalms 19 48 11 Psalms 19 47 12 Psalms 19 48 12 Psalms 19 47 13 Psalms 19 48 13 Psalms 19 47 14 Psalms 19 48 14 Psalms 19 47 15 Psalms 19 48 15 Psalms 19 48 1 Psalms 19 49 1 Psalms 19 48 2 Psalms 19 49 2 Psalms 19 48 3 Psalms 19 49 3 Psalms 19 48 4 Psalms 19 49 4 Psalms 19 48 5 Psalms 19 49 5 Psalms 19 48 6 Psalms 19 49 6 Psalms 19 48 7 Psalms 19 49 7 Psalms 19 48 8 Psalms 19 49 8 Psalms 19 48 9 Psalms 19 49 9 Psalms 19 48 10 Psalms 19 49 10 Psalms 19 48 11 Psalms 19 49 11 Psalms 19 48 12 Psalms 19 49 12 Psalms 19 48 13 Psalms 19 49 13 Psalms 19 48 14 Psalms 19 49 14 Psalms 19 48 15 Psalms 19 49 15 Psalms 19 48 16 Psalms 19 49 16 Psalms 19 48 17 Psalms 19 49 17 Psalms 19 48 18 Psalms 19 49 18 Psalms 19 48 19 Psalms 19 49 19 Psalms 19 48 20 Psalms 19 49 20 Psalms 19 48 21 Psalms 19 49 21 Psalms 19 49 1 Psalms 19 50 1 Psalms 19 49 2 Psalms 19 50 2 Psalms 19 49 3 Psalms 19 50 3 Psalms 19 49 4 Psalms 19 50 4 Psalms 19 49 5 Psalms 19 50 5 Psalms 19 49 6 Psalms 19 50 6 Psalms 19 49 7 Psalms 19 50 7 Psalms 19 49 8 Psalms 19 50 8 Psalms 19 49 9 Psalms 19 50 9 Psalms 19 49 10 Psalms 19 50 10 Psalms 19 49 11 Psalms 19 50 11 Psalms 19 49 12 Psalms 19 50 12 Psalms 19 49 13 Psalms 19 50 13 Psalms 19 49 14 Psalms 19 50 14 Psalms 19 49 15 Psalms 19 50 15 Psalms 19 49 16 Psalms 19 50 16 Psalms 19 49 17 Psalms 19 50 17 Psalms 19 49 18 Psalms 19 50 18 Psalms 19 49 19 Psalms 19 50 19 Psalms 19 49 20 Psalms 19 50 20 Psalms 19 49 21 Psalms 19 50 21 Psalms 19 49 22 Psalms 19 50 22 Psalms 19 49 23 Psalms 19 50 23 Psalms 19 50 1 Psalms 19 51 1 Psalms 19 50 2 Psalms 19 51 2 Psalms 19 50 3 Psalms 19 51 3 Psalms 19 50 4 Psalms 19 51 4 Psalms 19 50 5 Psalms 19 51 5 Psalms 19 50 6 Psalms 19 51 6 Psalms 19 50 7 Psalms 19 51 7 Psalms 19 50 8 Psalms 19 51 8 Psalms 19 50 9 Psalms 19 51 9 Psalms 19 50 10 Psalms 19 51 10 Psalms 19 50 11 Psalms 19 51 11 Psalms 19 50 12 Psalms 19 51 12 Psalms 19 50 13 Psalms 19 51 13 Psalms 19 50 14 Psalms 19 51 14 Psalms 19 50 15 Psalms 19 51 15 Psalms 19 50 16 Psalms 19 51 16 Psalms 19 50 17 Psalms 19 51 17 Psalms 19 50 18 Psalms 19 51 18 Psalms 19 50 19 Psalms 19 51 19 Psalms 19 50 20 Psalms 19 51 20 Psalms 19 50 21 Psalms 19 51 21 Psalms 19 51 1 Psalms 19 52 1 Psalms 19 51 2 Psalms 19 52 2 Psalms 19 51 3 Psalms 19 52 3 Psalms 19 51 4 Psalms 19 52 4 Psalms 19 51 5 Psalms 19 52 5 Psalms 19 51 6 Psalms 19 52 6 Psalms 19 51 7 Psalms 19 52 7 Psalms 19 51 8 Psalms 19 52 8 Psalms 19 51 9 Psalms 19 52 9 Psalms 19 51 10 Psalms 19 52 10 Psalms 19 51 11 Psalms 19 52 11 Psalms 19 52 1 Psalms 19 53 1 Psalms 19 52 2 Psalms 19 53 2 Psalms 19 52 3 Psalms 19 53 3 Psalms 19 52 4 Psalms 19 53 4 Psalms 19 52 5 Psalms 19 53 5 Psalms 19 52 6 Psalms 19 53 6 Psalms 19 52 7 Psalms 19 53 7 Psalms 19 53 1 Psalms 19 54 1 Psalms 19 53 2 Psalms 19 54 2 Psalms 19 53 3 Psalms 19 54 3 Psalms 19 53 4 Psalms 19 54 4 Psalms 19 53 5 Psalms 19 54 5 Psalms 19 53 6 Psalms 19 54 6 Psalms 19 53 7 Psalms 19 54 7 Psalms 19 53 8 Psalms 19 54 8 Psalms 19 53 9 Psalms 19 54 9 Psalms 19 54 1 Psalms 19 55 1 Psalms 19 54 2 Psalms 19 55 2 Psalms 19 54 3 Psalms 19 55 3 Psalms 19 54 4 Psalms 19 55 4 Psalms 19 54 5 Psalms 19 55 5 Psalms 19 54 6 Psalms 19 55 6 Psalms 19 54 7 Psalms 19 55 7 Psalms 19 54 8 Psalms 19 55 8 Psalms 19 54 9 Psalms 19 55 9 Psalms 19 54 10 Psalms 19 55 10 Psalms 19 54 11 Psalms 19 55 11 Psalms 19 54 12 Psalms 19 55 12 Psalms 19 54 13 Psalms 19 55 13 Psalms 19 54 14 Psalms 19 55 14 Psalms 19 54 15 Psalms 19 55 15 Psalms 19 54 16 Psalms 19 55 16 Psalms 19 54 17 Psalms 19 55 17 Psalms 19 54 18 Psalms 19 55 18 Psalms 19 54 19 Psalms 19 55 19 Psalms 19 54 20 Psalms 19 55 20 Psalms 19 54 21 Psalms 19 55 21 Psalms 19 54 22 Psalms 19 55 22 Psalms 19 54 23 Psalms 19 55 23 Psalms 19 54 24 Psalms 19 55 24 Psalms 19 55 1 Psalms 19 56 1 Psalms 19 55 2 Psalms 19 56 2 Psalms 19 55 3 Psalms 19 56 3 Psalms 19 55 4 Psalms 19 56 4 Psalms 19 55 5 Psalms 19 56 5 Psalms 19 55 6 Psalms 19 56 6 Psalms 19 55 7 Psalms 19 56 7 Psalms 19 55 8 Psalms 19 56 8 Psalms 19 55 9 Psalms 19 56 9 Psalms 19 55 10 Psalms 19 56 10 Psalms 19 55 11 Psalms 19 56 11 Psalms 19 55 12 Psalms 19 56 12 Psalms 19 55 13 Psalms 19 56 13 Psalms 19 55 14 Psalms 19 56 14 Psalms 19 56 1 Psalms 19 57 1 Psalms 19 56 2 Psalms 19 57 2 Psalms 19 56 3 Psalms 19 57 3 Psalms 19 56 4 Psalms 19 57 4 Psalms 19 56 5 Psalms 19 57 5 Psalms 19 56 6 Psalms 19 57 6 Psalms 19 56 7 Psalms 19 57 7 Psalms 19 56 8 Psalms 19 57 8 Psalms 19 56 9 Psalms 19 57 9 Psalms 19 56 10 Psalms 19 57 10 Psalms 19 56 11 Psalms 19 57 11 Psalms 19 56 12 Psalms 19 57 12 Psalms 19 57 1 Psalms 19 58 1 Psalms 19 57 2 Psalms 19 58 2 Psalms 19 57 3 Psalms 19 58 3 Psalms 19 57 4 Psalms 19 58 4 Psalms 19 57 5 Psalms 19 58 5 Psalms 19 57 6 Psalms 19 58 6 Psalms 19 57 7 Psalms 19 58 7 Psalms 19 57 8 Psalms 19 58 8 Psalms 19 57 9 Psalms 19 58 9 Psalms 19 57 10 Psalms 19 58 10 Psalms 19 57 11 Psalms 19 58 11 Psalms 19 57 12 Psalms 19 58 12 Psalms 19 58 1 Psalms 19 59 1 Psalms 19 58 2 Psalms 19 59 2 Psalms 19 58 3 Psalms 19 59 3 Psalms 19 58 4 Psalms 19 59 4 Psalms 19 58 5 Psalms 19 59 5 Psalms 19 58 6 Psalms 19 59 6 Psalms 19 58 7 Psalms 19 59 7 Psalms 19 58 8 Psalms 19 59 8 Psalms 19 58 9 Psalms 19 59 9 Psalms 19 58 10 Psalms 19 59 10 Psalms 19 58 11 Psalms 19 59 11 Psalms 19 58 12 Psalms 19 59 12 Psalms 19 58 13 Psalms 19 59 13 Psalms 19 58 14 Psalms 19 59 14 Psalms 19 58 15 Psalms 19 59 15 Psalms 19 58 16 Psalms 19 59 16 Psalms 19 58 17 Psalms 19 59 17 Psalms 19 58 18 Psalms 19 59 18 Psalms 19 59 1 Psalms 19 60 1 Psalms 19 59 2 Psalms 19 60 2 Psalms 19 59 3 Psalms 19 60 3 Psalms 19 59 4 Psalms 19 60 4 Psalms 19 59 5 Psalms 19 60 5 Psalms 19 59 6 Psalms 19 60 6 Psalms 19 59 7 Psalms 19 60 7 Psalms 19 59 8 Psalms 19 60 8 Psalms 19 59 9 Psalms 19 60 9 Psalms 19 59 10 Psalms 19 60 10 Psalms 19 59 11 Psalms 19 60 11 Psalms 19 59 12 Psalms 19 60 12 Psalms 19 59 13 Psalms 19 60 13 Psalms 19 59 14 Psalms 19 60 14 Psalms 19 60 1 Psalms 19 61 1 Psalms 19 60 2 Psalms 19 61 2 Psalms 19 60 3 Psalms 19 61 3 Psalms 19 60 4 Psalms 19 61 4 Psalms 19 60 5 Psalms 19 61 5 Psalms 19 60 6 Psalms 19 61 6 Psalms 19 60 7 Psalms 19 61 7 Psalms 19 60 8 Psalms 19 61 8 Psalms 19 60 9 Psalms 19 61 9 Psalms 19 61 1 Psalms 19 62 1 Psalms 19 61 2 Psalms 19 62 2 Psalms 19 61 3 Psalms 19 62 3 Psalms 19 61 4 Psalms 19 62 4 Psalms 19 61 5 Psalms 19 62 5 Psalms 19 61 6 Psalms 19 62 6 Psalms 19 61 7 Psalms 19 62 7 Psalms 19 61 8 Psalms 19 62 8 Psalms 19 61 9 Psalms 19 62 9 Psalms 19 61 10 Psalms 19 62 10 Psalms 19 61 11 Psalms 19 62 11 Psalms 19 61 12 Psalms 19 62 12 Psalms 19 61 13 Psalms 19 62 13 Psalms 19 62 1 Psalms 19 63 1 Psalms 19 62 2 Psalms 19 63 2 Psalms 19 62 3 Psalms 19 63 3 Psalms 19 62 4 Psalms 19 63 4 Psalms 19 62 5 Psalms 19 63 5 Psalms 19 62 6 Psalms 19 63 6 Psalms 19 62 7 Psalms 19 63 7 Psalms 19 62 8 Psalms 19 63 8 Psalms 19 62 9 Psalms 19 63 9 Psalms 19 62 10 Psalms 19 63 10 Psalms 19 62 11 Psalms 19 63 11 Psalms 19 62 12 Psalms 19 63 12 Psalms 19 63 1 Psalms 19 64 1 Psalms 19 63 2 Psalms 19 64 2 Psalms 19 63 3 Psalms 19 64 3 Psalms 19 63 4 Psalms 19 64 4 Psalms 19 63 5 Psalms 19 64 5 Psalms 19 63 6 Psalms 19 64 6 Psalms 19 63 7 Psalms 19 64 7 Psalms 19 63 8 Psalms 19 64 8 Psalms 19 63 9 Psalms 19 64 9 Psalms 19 63 10 Psalms 19 64 10 Psalms 19 63 11 Psalms 19 64 11 Psalms 19 64 1 Psalms 19 65 1 Psalms 19 64 2 Psalms 19 65 2 Psalms 19 64 3 Psalms 19 65 3 Psalms 19 64 4 Psalms 19 65 4 Psalms 19 64 5 Psalms 19 65 5 Psalms 19 64 6 Psalms 19 65 6 Psalms 19 64 7 Psalms 19 65 7 Psalms 19 64 8 Psalms 19 65 8 Psalms 19 64 9 Psalms 19 65 9 Psalms 19 64 10 Psalms 19 65 10 Psalms 19 64 11 Psalms 19 65 11 Psalms 19 64 12 Psalms 19 65 12 Psalms 19 64 13 Psalms 19 65 13 Psalms 19 64 14 Psalms 19 65 14 Psalms 19 65 1 Psalms 19 66 1 Psalms 19 65 2 Psalms 19 66 2 Psalms 19 65 3 Psalms 19 66 3 Psalms 19 65 4 Psalms 19 66 4 Psalms 19 65 5 Psalms 19 66 5 Psalms 19 65 6 Psalms 19 66 6 Psalms 19 65 7 Psalms 19 66 7 Psalms 19 65 8 Psalms 19 66 8 Psalms 19 65 9 Psalms 19 66 9 Psalms 19 65 10 Psalms 19 66 10 Psalms 19 65 11 Psalms 19 66 11 Psalms 19 65 12 Psalms 19 66 12 Psalms 19 65 13 Psalms 19 66 13 Psalms 19 65 14 Psalms 19 66 14 Psalms 19 65 15 Psalms 19 66 15 Psalms 19 65 16 Psalms 19 66 16 Psalms 19 65 17 Psalms 19 66 17 Psalms 19 65 18 Psalms 19 66 18 Psalms 19 65 19 Psalms 19 66 19 Psalms 19 65 20 Psalms 19 66 20 Psalms 19 66 1 Psalms 19 67 1 Psalms 19 66 2 Psalms 19 67 2 Psalms 19 66 3 Psalms 19 67 3 Psalms 19 66 4 Psalms 19 67 4 Psalms 19 66 5 Psalms 19 67 5 Psalms 19 66 6 Psalms 19 67 6 Psalms 19 66 7 Psalms 19 67 7 Psalms 19 66 8 Psalms 19 67 8 Psalms 19 67 1 Psalms 19 68 1 Psalms 19 67 2 Psalms 19 68 2 Psalms 19 67 3 Psalms 19 68 3 Psalms 19 67 4 Psalms 19 68 4 Psalms 19 67 5 Psalms 19 68 5 Psalms 19 67 6 Psalms 19 68 6 Psalms 19 67 7 Psalms 19 68 7 Psalms 19 67 8 Psalms 19 68 8 Psalms 19 67 9 Psalms 19 68 9 Psalms 19 67 10 Psalms 19 68 10 Psalms 19 67 11 Psalms 19 68 11 Psalms 19 67 12 Psalms 19 68 12 Psalms 19 67 13 Psalms 19 68 13 Psalms 19 67 14 Psalms 19 68 14 Psalms 19 67 15 Psalms 19 68 15 Psalms 19 67 16 Psalms 19 68 16 Psalms 19 67 17 Psalms 19 68 17 Psalms 19 67 18 Psalms 19 68 18 Psalms 19 67 19 Psalms 19 68 19 Psalms 19 67 20 Psalms 19 68 20 Psalms 19 67 21 Psalms 19 68 21 Psalms 19 67 22 Psalms 19 68 22 Psalms 19 67 23 Psalms 19 68 23 Psalms 19 67 24 Psalms 19 68 24 Psalms 19 67 25 Psalms 19 68 25 Psalms 19 67 26 Psalms 19 68 26 Psalms 19 67 27 Psalms 19 68 27 Psalms 19 67 28 Psalms 19 68 28 Psalms 19 67 29 Psalms 19 68 29 Psalms 19 67 30 Psalms 19 68 30 Psalms 19 67 31 Psalms 19 68 31 Psalms 19 67 32 Psalms 19 68 32 Psalms 19 67 33 Psalms 19 68 33 Psalms 19 67 34 Psalms 19 68 34 Psalms 19 67 35 Psalms 19 68 35 Psalms 19 67 36 Psalms 19 68 36 Psalms 19 68 1 Psalms 19 69 1 Psalms 19 68 2 Psalms 19 69 2 Psalms 19 68 3 Psalms 19 69 3 Psalms 19 68 4 Psalms 19 69 4 Psalms 19 68 5 Psalms 19 69 5 Psalms 19 68 6 Psalms 19 69 6 Psalms 19 68 7 Psalms 19 69 7 Psalms 19 68 8 Psalms 19 69 8 Psalms 19 68 9 Psalms 19 69 9 Psalms 19 68 10 Psalms 19 69 10 Psalms 19 68 11 Psalms 19 69 11 Psalms 19 68 12 Psalms 19 69 12 Psalms 19 68 13 Psalms 19 69 13 Psalms 19 68 14 Psalms 19 69 14 Psalms 19 68 15 Psalms 19 69 15 Psalms 19 68 16 Psalms 19 69 16 Psalms 19 68 17 Psalms 19 69 17 Psalms 19 68 18 Psalms 19 69 18 Psalms 19 68 19 Psalms 19 69 19 Psalms 19 68 20 Psalms 19 69 20 Psalms 19 68 21 Psalms 19 69 21 Psalms 19 68 22 Psalms 19 69 22 Psalms 19 68 23 Psalms 19 69 23 Psalms 19 68 24 Psalms 19 69 24 Psalms 19 68 25 Psalms 19 69 25 Psalms 19 68 26 Psalms 19 69 26 Psalms 19 68 27 Psalms 19 69 27 Psalms 19 68 28 Psalms 19 69 28 Psalms 19 68 29 Psalms 19 69 29 Psalms 19 68 30 Psalms 19 69 30 Psalms 19 68 31 Psalms 19 69 31 Psalms 19 68 32 Psalms 19 69 32 Psalms 19 68 33 Psalms 19 69 33 Psalms 19 68 34 Psalms 19 69 34 Psalms 19 68 35 Psalms 19 69 35 Psalms 19 68 36 Psalms 19 69 36 Psalms 19 68 37 Psalms 19 69 37 Psalms 19 69 1 Psalms 19 70 1 Psalms 19 69 2 Psalms 19 70 2 Psalms 19 69 3 Psalms 19 70 3 Psalms 19 69 4 Psalms 19 70 4 Psalms 19 69 5 Psalms 19 70 5 Psalms 19 69 6 Psalms 19 70 6 Psalms 19 70 1 Psalms 19 71 1 Psalms 19 70 2 Psalms 19 71 2 Psalms 19 70 3 Psalms 19 71 3 Psalms 19 70 4 Psalms 19 71 4 Psalms 19 70 5 Psalms 19 71 5 Psalms 19 70 6 Psalms 19 71 6 Psalms 19 70 7 Psalms 19 71 7 Psalms 19 70 8 Psalms 19 71 8 Psalms 19 70 9 Psalms 19 71 9 Psalms 19 70 10 Psalms 19 71 10 Psalms 19 70 11 Psalms 19 71 11 Psalms 19 70 12 Psalms 19 71 12 Psalms 19 70 13 Psalms 19 71 13 Psalms 19 70 14 Psalms 19 71 14 Psalms 19 70 15 Psalms 19 71 15 Psalms 19 70 16 Psalms 19 71 16 Psalms 19 70 17 Psalms 19 71 17 Psalms 19 70 18 Psalms 19 71 18 Psalms 19 70 19 Psalms 19 71 19 Psalms 19 70 20 Psalms 19 71 20 Psalms 19 70 21 Psalms 19 71 21 Psalms 19 70 22 Psalms 19 71 22 Psalms 19 70 23 Psalms 19 71 23 Psalms 19 70 24 Psalms 19 71 24 Psalms 19 71 1 Psalms 19 72 1 Psalms 19 71 2 Psalms 19 72 2 Psalms 19 71 3 Psalms 19 72 3 Psalms 19 71 4 Psalms 19 72 4 Psalms 19 71 5 Psalms 19 72 5 Psalms 19 71 6 Psalms 19 72 6 Psalms 19 71 7 Psalms 19 72 7 Psalms 19 71 8 Psalms 19 72 8 Psalms 19 71 9 Psalms 19 72 9 Psalms 19 71 10 Psalms 19 72 10 Psalms 19 71 11 Psalms 19 72 11 Psalms 19 71 12 Psalms 19 72 12 Psalms 19 71 13 Psalms 19 72 13 Psalms 19 71 14 Psalms 19 72 14 Psalms 19 71 15 Psalms 19 72 15 Psalms 19 71 16 Psalms 19 72 16 Psalms 19 71 17 Psalms 19 72 17 Psalms 19 71 18 Psalms 19 72 18 Psalms 19 71 19 Psalms 19 72 19 Psalms 19 71 20 Psalms 19 72 20 Psalms 19 72 1 Psalms 19 73 1 Psalms 19 72 2 Psalms 19 73 2 Psalms 19 72 3 Psalms 19 73 3 Psalms 19 72 4 Psalms 19 73 4 Psalms 19 72 5 Psalms 19 73 5 Psalms 19 72 6 Psalms 19 73 6 Psalms 19 72 7 Psalms 19 73 7 Psalms 19 72 8 Psalms 19 73 8 Psalms 19 72 9 Psalms 19 73 9 Psalms 19 72 10 Psalms 19 73 10 Psalms 19 72 11 Psalms 19 73 11 Psalms 19 72 12 Psalms 19 73 12 Psalms 19 72 13 Psalms 19 73 13 Psalms 19 72 14 Psalms 19 73 14 Psalms 19 72 15 Psalms 19 73 15 Psalms 19 72 16 Psalms 19 73 16 Psalms 19 72 17 Psalms 19 73 17 Psalms 19 72 18 Psalms 19 73 18 Psalms 19 72 19 Psalms 19 73 19 Psalms 19 72 20 Psalms 19 73 20 Psalms 19 72 21 Psalms 19 73 21 Psalms 19 72 22 Psalms 19 73 22 Psalms 19 72 23 Psalms 19 73 23 Psalms 19 72 24 Psalms 19 73 24 Psalms 19 72 25 Psalms 19 73 25 Psalms 19 72 26 Psalms 19 73 26 Psalms 19 72 27 Psalms 19 73 27 Psalms 19 72 28 Psalms 19 73 28 Psalms 19 73 1 Psalms 19 74 1 Psalms 19 73 2 Psalms 19 74 2 Psalms 19 73 3 Psalms 19 74 3 Psalms 19 73 4 Psalms 19 74 4 Psalms 19 73 5 Psalms 19 74 5 Psalms 19 73 6 Psalms 19 74 6 Psalms 19 73 7 Psalms 19 74 7 Psalms 19 73 8 Psalms 19 74 8 Psalms 19 73 9 Psalms 19 74 9 Psalms 19 73 10 Psalms 19 74 10 Psalms 19 73 11 Psalms 19 74 11 Psalms 19 73 12 Psalms 19 74 12 Psalms 19 73 13 Psalms 19 74 13 Psalms 19 73 14 Psalms 19 74 14 Psalms 19 73 15 Psalms 19 74 15 Psalms 19 73 16 Psalms 19 74 16 Psalms 19 73 17 Psalms 19 74 17 Psalms 19 73 18 Psalms 19 74 18 Psalms 19 73 19 Psalms 19 74 19 Psalms 19 73 20 Psalms 19 74 20 Psalms 19 73 21 Psalms 19 74 21 Psalms 19 73 22 Psalms 19 74 22 Psalms 19 73 23 Psalms 19 74 23 Psalms 19 74 1 Psalms 19 75 1 Psalms 19 74 2 Psalms 19 75 2 Psalms 19 74 3 Psalms 19 75 3 Psalms 19 74 4 Psalms 19 75 4 Psalms 19 74 5 Psalms 19 75 5 Psalms 19 74 6 Psalms 19 75 6 Psalms 19 74 7 Psalms 19 75 7 Psalms 19 74 8 Psalms 19 75 8 Psalms 19 74 9 Psalms 19 75 9 Psalms 19 74 10 Psalms 19 75 10 Psalms 19 74 11 Psalms 19 75 11 Psalms 19 75 1 Psalms 19 76 1 Psalms 19 75 2 Psalms 19 76 2 Psalms 19 75 3 Psalms 19 76 3 Psalms 19 75 4 Psalms 19 76 4 Psalms 19 75 5 Psalms 19 76 5 Psalms 19 75 6 Psalms 19 76 6 Psalms 19 75 7 Psalms 19 76 7 Psalms 19 75 8 Psalms 19 76 8 Psalms 19 75 9 Psalms 19 76 9 Psalms 19 75 10 Psalms 19 76 10 Psalms 19 75 11 Psalms 19 76 11 Psalms 19 75 12 Psalms 19 76 12 Psalms 19 75 13 Psalms 19 76 13 Psalms 19 76 1 Psalms 19 77 1 Psalms 19 76 2 Psalms 19 77 2 Psalms 19 76 3 Psalms 19 77 3 Psalms 19 76 4 Psalms 19 77 4 Psalms 19 76 5 Psalms 19 77 5 Psalms 19 76 6 Psalms 19 77 6 Psalms 19 76 7 Psalms 19 77 7 Psalms 19 76 8 Psalms 19 77 8 Psalms 19 76 9 Psalms 19 77 9 Psalms 19 76 10 Psalms 19 77 10 Psalms 19 76 11 Psalms 19 77 11 Psalms 19 76 12 Psalms 19 77 12 Psalms 19 76 13 Psalms 19 77 13 Psalms 19 76 14 Psalms 19 77 14 Psalms 19 76 15 Psalms 19 77 15 Psalms 19 76 16 Psalms 19 77 16 Psalms 19 76 17 Psalms 19 77 17 Psalms 19 76 18 Psalms 19 77 18 Psalms 19 76 19 Psalms 19 77 19 Psalms 19 76 20 Psalms 19 77 20 Psalms 19 76 21 Psalms 19 77 21 Psalms 19 77 1 Psalms 19 78 1 Psalms 19 77 2 Psalms 19 78 2 Psalms 19 77 3 Psalms 19 78 3 Psalms 19 77 4 Psalms 19 78 4 Psalms 19 77 5 Psalms 19 78 5 Psalms 19 77 6 Psalms 19 78 6 Psalms 19 77 7 Psalms 19 78 7 Psalms 19 77 8 Psalms 19 78 8 Psalms 19 77 9 Psalms 19 78 9 Psalms 19 77 10 Psalms 19 78 10 Psalms 19 77 11 Psalms 19 78 11 Psalms 19 77 12 Psalms 19 78 12 Psalms 19 77 13 Psalms 19 78 13 Psalms 19 77 14 Psalms 19 78 14 Psalms 19 77 15 Psalms 19 78 15 Psalms 19 77 16 Psalms 19 78 16 Psalms 19 77 17 Psalms 19 78 17 Psalms 19 77 18 Psalms 19 78 18 Psalms 19 77 19 Psalms 19 78 19 Psalms 19 77 20 Psalms 19 78 20 Psalms 19 77 21 Psalms 19 78 21 Psalms 19 77 22 Psalms 19 78 22 Psalms 19 77 23 Psalms 19 78 23 Psalms 19 77 24 Psalms 19 78 24 Psalms 19 77 25 Psalms 19 78 25 Psalms 19 77 26 Psalms 19 78 26 Psalms 19 77 27 Psalms 19 78 27 Psalms 19 77 28 Psalms 19 78 28 Psalms 19 77 29 Psalms 19 78 29 Psalms 19 77 30 Psalms 19 78 30 Psalms 19 77 31 Psalms 19 78 31 Psalms 19 77 32 Psalms 19 78 32 Psalms 19 77 33 Psalms 19 78 33 Psalms 19 77 34 Psalms 19 78 34 Psalms 19 77 35 Psalms 19 78 35 Psalms 19 77 36 Psalms 19 78 36 Psalms 19 77 37 Psalms 19 78 37 Psalms 19 77 38 Psalms 19 78 38 Psalms 19 77 39 Psalms 19 78 39 Psalms 19 77 40 Psalms 19 78 40 Psalms 19 77 41 Psalms 19 78 41 Psalms 19 77 42 Psalms 19 78 42 Psalms 19 77 43 Psalms 19 78 43 Psalms 19 77 44 Psalms 19 78 44 Psalms 19 77 45 Psalms 19 78 45 Psalms 19 77 46 Psalms 19 78 46 Psalms 19 77 47 Psalms 19 78 47 Psalms 19 77 48 Psalms 19 78 48 Psalms 19 77 49 Psalms 19 78 49 Psalms 19 77 50 Psalms 19 78 50 Psalms 19 77 51 Psalms 19 78 51 Psalms 19 77 52 Psalms 19 78 52 Psalms 19 77 53 Psalms 19 78 53 Psalms 19 77 54 Psalms 19 78 54 Psalms 19 77 55 Psalms 19 78 55 Psalms 19 77 56 Psalms 19 78 56 Psalms 19 77 57 Psalms 19 78 57 Psalms 19 77 58 Psalms 19 78 58 Psalms 19 77 59 Psalms 19 78 59 Psalms 19 77 60 Psalms 19 78 60 Psalms 19 77 61 Psalms 19 78 61 Psalms 19 77 62 Psalms 19 78 62 Psalms 19 77 63 Psalms 19 78 63 Psalms 19 77 64 Psalms 19 78 64 Psalms 19 77 65 Psalms 19 78 65 Psalms 19 77 66 Psalms 19 78 66 Psalms 19 77 67 Psalms 19 78 67 Psalms 19 77 68 Psalms 19 78 68 Psalms 19 77 69 Psalms 19 78 69 Psalms 19 77 70 Psalms 19 78 70 Psalms 19 77 71 Psalms 19 78 71 Psalms 19 77 72 Psalms 19 78 72 Psalms 19 78 1 Psalms 19 79 1 Psalms 19 78 2 Psalms 19 79 2 Psalms 19 78 3 Psalms 19 79 3 Psalms 19 78 4 Psalms 19 79 4 Psalms 19 78 5 Psalms 19 79 5 Psalms 19 78 6 Psalms 19 79 6 Psalms 19 78 7 Psalms 19 79 7 Psalms 19 78 8 Psalms 19 79 8 Psalms 19 78 9 Psalms 19 79 9 Psalms 19 78 10 Psalms 19 79 10 Psalms 19 78 11 Psalms 19 79 11 Psalms 19 78 12 Psalms 19 79 12 Psalms 19 78 13 Psalms 19 79 13 Psalms 19 79 1 Psalms 19 80 1 Psalms 19 79 2 Psalms 19 80 2 Psalms 19 79 3 Psalms 19 80 3 Psalms 19 79 4 Psalms 19 80 4 Psalms 19 79 5 Psalms 19 80 5 Psalms 19 79 6 Psalms 19 80 6 Psalms 19 79 7 Psalms 19 80 7 Psalms 19 79 8 Psalms 19 80 8 Psalms 19 79 9 Psalms 19 80 9 Psalms 19 79 10 Psalms 19 80 10 Psalms 19 79 11 Psalms 19 80 11 Psalms 19 79 12 Psalms 19 80 12 Psalms 19 79 13 Psalms 19 80 13 Psalms 19 79 14 Psalms 19 80 14 Psalms 19 79 15 Psalms 19 80 15 Psalms 19 79 16 Psalms 19 80 16 Psalms 19 79 17 Psalms 19 80 17 Psalms 19 79 18 Psalms 19 80 18 Psalms 19 79 19 Psalms 19 80 19 Psalms 19 79 20 Psalms 19 80 20 Psalms 19 80 1 Psalms 19 81 1 Psalms 19 80 2 Psalms 19 81 2 Psalms 19 80 3 Psalms 19 81 3 Psalms 19 80 4 Psalms 19 81 4 Psalms 19 80 5 Psalms 19 81 5 Psalms 19 80 6 Psalms 19 81 6 Psalms 19 80 7 Psalms 19 81 7 Psalms 19 80 8 Psalms 19 81 8 Psalms 19 80 9 Psalms 19 81 9 Psalms 19 80 10 Psalms 19 81 10 Psalms 19 80 11 Psalms 19 81 11 Psalms 19 80 12 Psalms 19 81 12 Psalms 19 80 13 Psalms 19 81 13 Psalms 19 80 14 Psalms 19 81 14 Psalms 19 80 15 Psalms 19 81 15 Psalms 19 80 16 Psalms 19 81 16 Psalms 19 80 17 Psalms 19 81 17 Psalms 19 81 1 Psalms 19 82 1 Psalms 19 81 2 Psalms 19 82 2 Psalms 19 81 3 Psalms 19 82 3 Psalms 19 81 4 Psalms 19 82 4 Psalms 19 81 5 Psalms 19 82 5 Psalms 19 81 6 Psalms 19 82 6 Psalms 19 81 7 Psalms 19 82 7 Psalms 19 81 8 Psalms 19 82 8 Psalms 19 82 1 Psalms 19 83 1 Psalms 19 82 2 Psalms 19 83 2 Psalms 19 82 3 Psalms 19 83 3 Psalms 19 82 4 Psalms 19 83 4 Psalms 19 82 5 Psalms 19 83 5 Psalms 19 82 6 Psalms 19 83 6 Psalms 19 82 7 Psalms 19 83 7 Psalms 19 82 8 Psalms 19 83 8 Psalms 19 82 9 Psalms 19 83 9 Psalms 19 82 10 Psalms 19 83 10 Psalms 19 82 11 Psalms 19 83 11 Psalms 19 82 12 Psalms 19 83 12 Psalms 19 82 13 Psalms 19 83 13 Psalms 19 82 14 Psalms 19 83 14 Psalms 19 82 15 Psalms 19 83 15 Psalms 19 82 16 Psalms 19 83 16 Psalms 19 82 17 Psalms 19 83 17 Psalms 19 82 18 Psalms 19 83 18 Psalms 19 82 19 Psalms 19 83 19 Psalms 19 83 1 Psalms 19 84 1 Psalms 19 83 2 Psalms 19 84 2 Psalms 19 83 3 Psalms 19 84 3 Psalms 19 83 4 Psalms 19 84 4 Psalms 19 83 5 Psalms 19 84 5 Psalms 19 83 6 Psalms 19 84 6 Psalms 19 83 7 Psalms 19 84 7 Psalms 19 83 8 Psalms 19 84 8 Psalms 19 83 9 Psalms 19 84 9 Psalms 19 83 10 Psalms 19 84 10 Psalms 19 83 11 Psalms 19 84 11 Psalms 19 83 12 Psalms 19 84 12 Psalms 19 83 13 Psalms 19 84 13 Psalms 19 84 1 Psalms 19 85 1 Psalms 19 84 2 Psalms 19 85 2 Psalms 19 84 3 Psalms 19 85 3 Psalms 19 84 4 Psalms 19 85 4 Psalms 19 84 5 Psalms 19 85 5 Psalms 19 84 6 Psalms 19 85 6 Psalms 19 84 7 Psalms 19 85 7 Psalms 19 84 8 Psalms 19 85 8 Psalms 19 84 9 Psalms 19 85 9 Psalms 19 84 10 Psalms 19 85 10 Psalms 19 84 11 Psalms 19 85 11 Psalms 19 84 12 Psalms 19 85 12 Psalms 19 84 13 Psalms 19 85 13 Psalms 19 84 14 Psalms 19 85 14 Psalms 19 85 1 Psalms 19 86 1 Psalms 19 85 2 Psalms 19 86 2 Psalms 19 85 3 Psalms 19 86 3 Psalms 19 85 4 Psalms 19 86 4 Psalms 19 85 5 Psalms 19 86 5 Psalms 19 85 6 Psalms 19 86 6 Psalms 19 85 7 Psalms 19 86 7 Psalms 19 85 8 Psalms 19 86 8 Psalms 19 85 9 Psalms 19 86 9 Psalms 19 85 10 Psalms 19 86 10 Psalms 19 85 11 Psalms 19 86 11 Psalms 19 85 12 Psalms 19 86 12 Psalms 19 85 13 Psalms 19 86 13 Psalms 19 85 14 Psalms 19 86 14 Psalms 19 85 15 Psalms 19 86 15 Psalms 19 85 16 Psalms 19 86 16 Psalms 19 85 17 Psalms 19 86 17 Psalms 19 86 1 Psalms 19 87 1 Psalms 19 86 2 Psalms 19 87 1 Psalms 19 86 2 Psalms 19 87 2 Psalms 19 86 3 Psalms 19 87 3 Psalms 19 86 4 Psalms 19 87 4 Psalms 19 86 5 Psalms 19 87 5 Psalms 19 86 6 Psalms 19 87 6 Psalms 19 86 7 Psalms 19 87 7 Psalms 19 87 1 Psalms 19 88 1 Psalms 19 87 2 Psalms 19 88 2 Psalms 19 87 3 Psalms 19 88 3 Psalms 19 87 4 Psalms 19 88 4 Psalms 19 87 5 Psalms 19 88 5 Psalms 19 87 6 Psalms 19 88 6 Psalms 19 87 7 Psalms 19 88 7 Psalms 19 87 8 Psalms 19 88 8 Psalms 19 87 9 Psalms 19 88 9 Psalms 19 87 10 Psalms 19 88 10 Psalms 19 87 11 Psalms 19 88 11 Psalms 19 87 12 Psalms 19 88 12 Psalms 19 87 13 Psalms 19 88 13 Psalms 19 87 14 Psalms 19 88 14 Psalms 19 87 15 Psalms 19 88 15 Psalms 19 87 16 Psalms 19 88 16 Psalms 19 87 17 Psalms 19 88 17 Psalms 19 87 18 Psalms 19 88 18 Psalms 19 87 19 Psalms 19 88 19 Psalms 19 88 1 Psalms 19 89 1 Psalms 19 88 2 Psalms 19 89 2 Psalms 19 88 3 Psalms 19 89 3 Psalms 19 88 4 Psalms 19 89 4 Psalms 19 88 5 Psalms 19 89 5 Psalms 19 88 6 Psalms 19 89 6 Psalms 19 88 7 Psalms 19 89 7 Psalms 19 88 8 Psalms 19 89 8 Psalms 19 88 9 Psalms 19 89 9 Psalms 19 88 10 Psalms 19 89 10 Psalms 19 88 11 Psalms 19 89 11 Psalms 19 88 12 Psalms 19 89 12 Psalms 19 88 13 Psalms 19 89 13 Psalms 19 88 14 Psalms 19 89 14 Psalms 19 88 15 Psalms 19 89 15 Psalms 19 88 16 Psalms 19 89 16 Psalms 19 88 17 Psalms 19 89 17 Psalms 19 88 18 Psalms 19 89 18 Psalms 19 88 19 Psalms 19 89 19 Psalms 19 88 20 Psalms 19 89 20 Psalms 19 88 21 Psalms 19 89 21 Psalms 19 88 22 Psalms 19 89 22 Psalms 19 88 23 Psalms 19 89 23 Psalms 19 88 24 Psalms 19 89 24 Psalms 19 88 25 Psalms 19 89 25 Psalms 19 88 26 Psalms 19 89 26 Psalms 19 88 27 Psalms 19 89 27 Psalms 19 88 28 Psalms 19 89 28 Psalms 19 88 29 Psalms 19 89 29 Psalms 19 88 30 Psalms 19 89 30 Psalms 19 88 31 Psalms 19 89 31 Psalms 19 88 32 Psalms 19 89 32 Psalms 19 88 33 Psalms 19 89 33 Psalms 19 88 34 Psalms 19 89 34 Psalms 19 88 35 Psalms 19 89 35 Psalms 19 88 36 Psalms 19 89 36 Psalms 19 88 37 Psalms 19 89 37 Psalms 19 88 38 Psalms 19 89 38 Psalms 19 88 39 Psalms 19 89 39 Psalms 19 88 40 Psalms 19 89 40 Psalms 19 88 41 Psalms 19 89 41 Psalms 19 88 42 Psalms 19 89 42 Psalms 19 88 43 Psalms 19 89 43 Psalms 19 88 44 Psalms 19 89 44 Psalms 19 88 45 Psalms 19 89 45 Psalms 19 88 46 Psalms 19 89 46 Psalms 19 88 47 Psalms 19 89 47 Psalms 19 88 48 Psalms 19 89 48 Psalms 19 88 49 Psalms 19 89 49 Psalms 19 88 50 Psalms 19 89 50 Psalms 19 88 51 Psalms 19 89 51 Psalms 19 88 52 Psalms 19 89 52 Psalms 19 88 53 Psalms 19 89 53 Psalms 19 89 2 Psalms 19 90 1 Psalms 19 89 3 Psalms 19 90 2 Psalms 19 89 4 Psalms 19 90 3 Psalms 19 89 5 Psalms 19 90 4 Psalms 19 89 6 Psalms 19 90 5 Psalms 19 89 7 Psalms 19 90 7 Psalms 19 89 8 Psalms 19 90 8 Psalms 19 89 9 Psalms 19 90 9 Psalms 19 89 10 Psalms 19 90 10 Psalms 19 89 11 Psalms 19 90 11 Psalms 19 89 12 Psalms 19 90 12 Psalms 19 89 13 Psalms 19 90 13 Psalms 19 89 14 Psalms 19 90 14 Psalms 19 89 15 Psalms 19 90 15 Psalms 19 89 16 Psalms 19 90 16 Psalms 19 89 17 Psalms 19 90 17 Psalms 19 90 1 Psalms 19 91 1 Psalms 19 90 2 Psalms 19 91 2 Psalms 19 90 3 Psalms 19 91 3 Psalms 19 90 4 Psalms 19 91 4 Psalms 19 90 5 Psalms 19 91 5 Psalms 19 90 6 Psalms 19 91 6 Psalms 19 90 7 Psalms 19 91 7 Psalms 19 90 8 Psalms 19 91 8 Psalms 19 90 9 Psalms 19 91 9 Psalms 19 90 10 Psalms 19 91 10 Psalms 19 90 11 Psalms 19 91 11 Psalms 19 90 12 Psalms 19 91 12 Psalms 19 90 13 Psalms 19 91 13 Psalms 19 90 14 Psalms 19 91 14 Psalms 19 90 15 Psalms 19 91 15 Psalms 19 90 16 Psalms 19 91 16 Psalms 19 91 1 Psalms 19 92 1 Psalms 19 91 2 Psalms 19 92 2 Psalms 19 91 3 Psalms 19 92 3 Psalms 19 91 4 Psalms 19 92 4 Psalms 19 91 5 Psalms 19 92 5 Psalms 19 91 6 Psalms 19 92 6 Psalms 19 91 7 Psalms 19 92 7 Psalms 19 91 8 Psalms 19 92 8 Psalms 19 91 9 Psalms 19 92 9 Psalms 19 91 10 Psalms 19 92 10 Psalms 19 91 11 Psalms 19 92 11 Psalms 19 91 12 Psalms 19 92 12 Psalms 19 91 13 Psalms 19 92 13 Psalms 19 91 14 Psalms 19 92 14 Psalms 19 91 15 Psalms 19 92 15 Psalms 19 91 16 Psalms 19 92 16 Psalms 19 92 1 Psalms 19 93 1 Psalms 19 92 2 Psalms 19 93 2 Psalms 19 92 3 Psalms 19 93 3 Psalms 19 92 4 Psalms 19 93 4 Psalms 19 92 5 Psalms 19 93 5 Psalms 19 93 1 Psalms 19 94 1 Psalms 19 93 2 Psalms 19 94 2 Psalms 19 93 3 Psalms 19 94 3 Psalms 19 93 4 Psalms 19 94 4 Psalms 19 93 5 Psalms 19 94 5 Psalms 19 93 6 Psalms 19 94 6 Psalms 19 93 7 Psalms 19 94 7 Psalms 19 93 8 Psalms 19 94 8 Psalms 19 93 9 Psalms 19 94 9 Psalms 19 93 10 Psalms 19 94 10 Psalms 19 93 11 Psalms 19 94 11 Psalms 19 93 12 Psalms 19 94 12 Psalms 19 93 13 Psalms 19 94 13 Psalms 19 93 14 Psalms 19 94 14 Psalms 19 93 15 Psalms 19 94 15 Psalms 19 93 16 Psalms 19 94 16 Psalms 19 93 17 Psalms 19 94 17 Psalms 19 93 18 Psalms 19 94 18 Psalms 19 93 19 Psalms 19 94 19 Psalms 19 93 20 Psalms 19 94 20 Psalms 19 93 21 Psalms 19 94 21 Psalms 19 93 22 Psalms 19 94 22 Psalms 19 93 23 Psalms 19 94 23 Psalms 19 94 1 Psalms 19 95 1 Psalms 19 94 2 Psalms 19 95 2 Psalms 19 94 3 Psalms 19 95 3 Psalms 19 94 4 Psalms 19 95 4 Psalms 19 94 5 Psalms 19 95 5 Psalms 19 94 6 Psalms 19 95 6 Psalms 19 94 7 Psalms 19 95 7 Psalms 19 94 8 Psalms 19 95 8 Psalms 19 94 9 Psalms 19 95 9 Psalms 19 94 10 Psalms 19 95 10 Psalms 19 94 11 Psalms 19 95 11 Psalms 19 95 1 Psalms 19 96 1 Psalms 19 95 2 Psalms 19 96 2 Psalms 19 95 3 Psalms 19 96 3 Psalms 19 95 4 Psalms 19 96 4 Psalms 19 95 5 Psalms 19 96 5 Psalms 19 95 6 Psalms 19 96 6 Psalms 19 95 7 Psalms 19 96 7 Psalms 19 95 8 Psalms 19 96 8 Psalms 19 95 9 Psalms 19 96 9 Psalms 19 95 10 Psalms 19 96 10 Psalms 19 95 11 Psalms 19 96 11 Psalms 19 95 12 Psalms 19 96 12 Psalms 19 95 13 Psalms 19 96 13 Psalms 19 96 1 Psalms 19 97 1 Psalms 19 96 2 Psalms 19 97 2 Psalms 19 96 3 Psalms 19 97 3 Psalms 19 96 4 Psalms 19 97 4 Psalms 19 96 5 Psalms 19 97 5 Psalms 19 96 6 Psalms 19 97 6 Psalms 19 96 7 Psalms 19 97 7 Psalms 19 96 8 Psalms 19 97 8 Psalms 19 96 9 Psalms 19 97 9 Psalms 19 96 10 Psalms 19 97 10 Psalms 19 96 11 Psalms 19 97 11 Psalms 19 96 12 Psalms 19 97 12 Psalms 19 97 1 Psalms 19 98 1 Psalms 19 97 2 Psalms 19 98 2 Psalms 19 97 3 Psalms 19 98 3 Psalms 19 97 4 Psalms 19 98 4 Psalms 19 97 5 Psalms 19 98 5 Psalms 19 97 6 Psalms 19 98 6 Psalms 19 97 7 Psalms 19 98 7 Psalms 19 97 8 Psalms 19 98 8 Psalms 19 97 9 Psalms 19 98 9 Psalms 19 98 1 Psalms 19 99 1 Psalms 19 98 2 Psalms 19 99 2 Psalms 19 98 3 Psalms 19 99 3 Psalms 19 98 4 Psalms 19 99 4 Psalms 19 98 5 Psalms 19 99 5 Psalms 19 98 6 Psalms 19 99 6 Psalms 19 98 7 Psalms 19 99 7 Psalms 19 98 8 Psalms 19 99 8 Psalms 19 98 9 Psalms 19 99 9 Psalms 19 99 1 Psalms 19 100 1 Psalms 19 99 2 Psalms 19 100 2 Psalms 19 99 3 Psalms 19 100 3 Psalms 19 99 4 Psalms 19 100 4 Psalms 19 99 5 Psalms 19 100 5 Psalms 19 100 1 Psalms 19 101 1 Psalms 19 100 2 Psalms 19 101 2 Psalms 19 100 3 Psalms 19 101 3 Psalms 19 100 4 Psalms 19 101 4 Psalms 19 100 5 Psalms 19 101 5 Psalms 19 100 6 Psalms 19 101 6 Psalms 19 100 7 Psalms 19 101 7 Psalms 19 100 8 Psalms 19 101 8 Psalms 19 101 1 Psalms 19 102 1 Psalms 19 101 2 Psalms 19 102 2 Psalms 19 101 3 Psalms 19 102 3 Psalms 19 101 4 Psalms 19 102 4 Psalms 19 101 5 Psalms 19 102 5 Psalms 19 101 6 Psalms 19 102 6 Psalms 19 101 7 Psalms 19 102 7 Psalms 19 101 8 Psalms 19 102 8 Psalms 19 101 9 Psalms 19 102 9 Psalms 19 101 10 Psalms 19 102 10 Psalms 19 101 11 Psalms 19 102 11 Psalms 19 101 12 Psalms 19 102 12 Psalms 19 101 13 Psalms 19 102 13 Psalms 19 101 14 Psalms 19 102 14 Psalms 19 101 15 Psalms 19 102 15 Psalms 19 101 16 Psalms 19 102 16 Psalms 19 101 17 Psalms 19 102 17 Psalms 19 101 18 Psalms 19 102 18 Psalms 19 101 19 Psalms 19 102 19 Psalms 19 101 20 Psalms 19 102 20 Psalms 19 101 21 Psalms 19 102 21 Psalms 19 101 22 Psalms 19 102 22 Psalms 19 101 23 Psalms 19 102 23 Psalms 19 101 24 Psalms 19 102 24 Psalms 19 101 25 Psalms 19 102 25 Psalms 19 101 26 Psalms 19 102 26 Psalms 19 101 27 Psalms 19 102 27 Psalms 19 101 28 Psalms 19 102 28 Psalms 19 101 29 Psalms 19 102 29 Psalms 19 102 1 Psalms 19 103 1 Psalms 19 102 2 Psalms 19 103 2 Psalms 19 102 3 Psalms 19 103 3 Psalms 19 102 4 Psalms 19 103 4 Psalms 19 102 5 Psalms 19 103 5 Psalms 19 102 6 Psalms 19 103 6 Psalms 19 102 7 Psalms 19 103 7 Psalms 19 102 8 Psalms 19 103 8 Psalms 19 102 9 Psalms 19 103 9 Psalms 19 102 10 Psalms 19 103 10 Psalms 19 102 11 Psalms 19 103 11 Psalms 19 102 12 Psalms 19 103 12 Psalms 19 102 13 Psalms 19 103 13 Psalms 19 102 14 Psalms 19 103 14 Psalms 19 102 15 Psalms 19 103 15 Psalms 19 102 16 Psalms 19 103 16 Psalms 19 102 17 Psalms 19 103 17 Psalms 19 102 18 Psalms 19 103 18 Psalms 19 102 19 Psalms 19 103 19 Psalms 19 102 20 Psalms 19 103 20 Psalms 19 102 21 Psalms 19 103 21 Psalms 19 102 22 Psalms 19 103 22 Psalms 19 103 1 Psalms 19 104 1 Psalms 19 103 2 Psalms 19 104 2 Psalms 19 103 3 Psalms 19 104 3 Psalms 19 103 4 Psalms 19 104 4 Psalms 19 103 5 Psalms 19 104 5 Psalms 19 103 6 Psalms 19 104 6 Psalms 19 103 7 Psalms 19 104 7 Psalms 19 103 8 Psalms 19 104 8 Psalms 19 103 9 Psalms 19 104 9 Psalms 19 103 10 Psalms 19 104 10 Psalms 19 103 11 Psalms 19 104 11 Psalms 19 103 12 Psalms 19 104 12 Psalms 19 103 13 Psalms 19 104 13 Psalms 19 103 14 Psalms 19 104 14 Psalms 19 103 15 Psalms 19 104 15 Psalms 19 103 16 Psalms 19 104 16 Psalms 19 103 17 Psalms 19 104 17 Psalms 19 103 18 Psalms 19 104 18 Psalms 19 103 19 Psalms 19 104 19 Psalms 19 103 20 Psalms 19 104 20 Psalms 19 103 21 Psalms 19 104 21 Psalms 19 103 22 Psalms 19 104 22 Psalms 19 103 23 Psalms 19 104 23 Psalms 19 103 24 Psalms 19 104 24 Psalms 19 103 25 Psalms 19 104 25 Psalms 19 103 26 Psalms 19 104 26 Psalms 19 103 27 Psalms 19 104 27 Psalms 19 103 28 Psalms 19 104 28 Psalms 19 103 29 Psalms 19 104 29 Psalms 19 103 30 Psalms 19 104 30 Psalms 19 103 31 Psalms 19 104 31 Psalms 19 103 32 Psalms 19 104 32 Psalms 19 103 33 Psalms 19 104 33 Psalms 19 103 34 Psalms 19 104 34 Psalms 19 103 35 Psalms 19 104 35 Psalms 19 104 1 Psalms 19 105 1 Psalms 19 104 2 Psalms 19 105 2 Psalms 19 104 3 Psalms 19 105 3 Psalms 19 104 4 Psalms 19 105 4 Psalms 19 104 5 Psalms 19 105 5 Psalms 19 104 6 Psalms 19 105 6 Psalms 19 104 7 Psalms 19 105 7 Psalms 19 104 8 Psalms 19 105 8 Psalms 19 104 9 Psalms 19 105 9 Psalms 19 104 10 Psalms 19 105 10 Psalms 19 104 11 Psalms 19 105 11 Psalms 19 104 12 Psalms 19 105 12 Psalms 19 104 13 Psalms 19 105 13 Psalms 19 104 14 Psalms 19 105 14 Psalms 19 104 15 Psalms 19 105 15 Psalms 19 104 16 Psalms 19 105 16 Psalms 19 104 17 Psalms 19 105 17 Psalms 19 104 18 Psalms 19 105 18 Psalms 19 104 19 Psalms 19 105 19 Psalms 19 104 20 Psalms 19 105 20 Psalms 19 104 21 Psalms 19 105 21 Psalms 19 104 22 Psalms 19 105 22 Psalms 19 104 23 Psalms 19 105 23 Psalms 19 104 24 Psalms 19 105 24 Psalms 19 104 25 Psalms 19 105 25 Psalms 19 104 26 Psalms 19 105 26 Psalms 19 104 27 Psalms 19 105 27 Psalms 19 104 28 Psalms 19 105 28 Psalms 19 104 29 Psalms 19 105 29 Psalms 19 104 30 Psalms 19 105 30 Psalms 19 104 31 Psalms 19 105 31 Psalms 19 104 32 Psalms 19 105 32 Psalms 19 104 33 Psalms 19 105 33 Psalms 19 104 34 Psalms 19 105 34 Psalms 19 104 35 Psalms 19 105 35 Psalms 19 104 36 Psalms 19 105 36 Psalms 19 104 37 Psalms 19 105 37 Psalms 19 104 38 Psalms 19 105 38 Psalms 19 104 39 Psalms 19 105 39 Psalms 19 104 40 Psalms 19 105 40 Psalms 19 104 41 Psalms 19 105 41 Psalms 19 104 42 Psalms 19 105 42 Psalms 19 104 43 Psalms 19 105 43 Psalms 19 104 44 Psalms 19 105 44 Psalms 19 104 45 Psalms 19 105 45 Psalms 19 105 1 Psalms 19 106 1 Psalms 19 105 2 Psalms 19 106 2 Psalms 19 105 3 Psalms 19 106 3 Psalms 19 105 4 Psalms 19 106 4 Psalms 19 105 5 Psalms 19 106 5 Psalms 19 105 6 Psalms 19 106 6 Psalms 19 105 7 Psalms 19 106 7 Psalms 19 105 8 Psalms 19 106 8 Psalms 19 105 9 Psalms 19 106 9 Psalms 19 105 10 Psalms 19 106 10 Psalms 19 105 11 Psalms 19 106 11 Psalms 19 105 12 Psalms 19 106 12 Psalms 19 105 13 Psalms 19 106 13 Psalms 19 105 14 Psalms 19 106 14 Psalms 19 105 15 Psalms 19 106 15 Psalms 19 105 16 Psalms 19 106 16 Psalms 19 105 17 Psalms 19 106 17 Psalms 19 105 18 Psalms 19 106 18 Psalms 19 105 19 Psalms 19 106 19 Psalms 19 105 20 Psalms 19 106 20 Psalms 19 105 21 Psalms 19 106 21 Psalms 19 105 22 Psalms 19 106 22 Psalms 19 105 23 Psalms 19 106 23 Psalms 19 105 24 Psalms 19 106 24 Psalms 19 105 25 Psalms 19 106 25 Psalms 19 105 26 Psalms 19 106 26 Psalms 19 105 27 Psalms 19 106 27 Psalms 19 105 28 Psalms 19 106 28 Psalms 19 105 29 Psalms 19 106 29 Psalms 19 105 30 Psalms 19 106 30 Psalms 19 105 31 Psalms 19 106 31 Psalms 19 105 32 Psalms 19 106 32 Psalms 19 105 33 Psalms 19 106 33 Psalms 19 105 34 Psalms 19 106 34 Psalms 19 105 35 Psalms 19 106 35 Psalms 19 105 36 Psalms 19 106 36 Psalms 19 105 37 Psalms 19 106 37 Psalms 19 105 38 Psalms 19 106 38 Psalms 19 105 39 Psalms 19 106 39 Psalms 19 105 40 Psalms 19 106 40 Psalms 19 105 41 Psalms 19 106 41 Psalms 19 105 42 Psalms 19 106 42 Psalms 19 105 43 Psalms 19 106 43 Psalms 19 105 44 Psalms 19 106 44 Psalms 19 105 45 Psalms 19 106 45 Psalms 19 105 46 Psalms 19 106 46 Psalms 19 105 47 Psalms 19 106 47 Psalms 19 105 48 Psalms 19 106 48 Psalms 19 106 1 Psalms 19 107 1 Psalms 19 106 2 Psalms 19 107 2 Psalms 19 106 3 Psalms 19 107 3 Psalms 19 106 4 Psalms 19 107 4 Psalms 19 106 5 Psalms 19 107 5 Psalms 19 106 6 Psalms 19 107 6 Psalms 19 106 7 Psalms 19 107 7 Psalms 19 106 8 Psalms 19 107 8 Psalms 19 106 9 Psalms 19 107 9 Psalms 19 106 10 Psalms 19 107 10 Psalms 19 106 11 Psalms 19 107 11 Psalms 19 106 12 Psalms 19 107 12 Psalms 19 106 13 Psalms 19 107 13 Psalms 19 106 14 Psalms 19 107 14 Psalms 19 106 15 Psalms 19 107 15 Psalms 19 106 16 Psalms 19 107 16 Psalms 19 106 17 Psalms 19 107 17 Psalms 19 106 18 Psalms 19 107 18 Psalms 19 106 19 Psalms 19 107 19 Psalms 19 106 20 Psalms 19 107 20 Psalms 19 106 21 Psalms 19 107 21 Psalms 19 106 22 Psalms 19 107 22 Psalms 19 106 23 Psalms 19 107 23 Psalms 19 106 24 Psalms 19 107 24 Psalms 19 106 25 Psalms 19 107 25 Psalms 19 106 26 Psalms 19 107 26 Psalms 19 106 27 Psalms 19 107 27 Psalms 19 106 28 Psalms 19 107 28 Psalms 19 106 29 Psalms 19 107 29 Psalms 19 106 30 Psalms 19 107 30 Psalms 19 106 31 Psalms 19 107 31 Psalms 19 106 32 Psalms 19 107 32 Psalms 19 106 33 Psalms 19 107 33 Psalms 19 106 34 Psalms 19 107 34 Psalms 19 106 35 Psalms 19 107 35 Psalms 19 106 36 Psalms 19 107 36 Psalms 19 106 37 Psalms 19 107 37 Psalms 19 106 38 Psalms 19 107 38 Psalms 19 106 39 Psalms 19 107 39 Psalms 19 106 40 Psalms 19 107 40 Psalms 19 106 41 Psalms 19 107 41 Psalms 19 106 42 Psalms 19 107 42 Psalms 19 106 43 Psalms 19 107 43 Psalms 19 107 1 Psalms 19 108 1 Psalms 19 107 2 Psalms 19 108 2 Psalms 19 107 3 Psalms 19 108 3 Psalms 19 107 4 Psalms 19 108 4 Psalms 19 107 5 Psalms 19 108 5 Psalms 19 107 6 Psalms 19 108 6 Psalms 19 107 7 Psalms 19 108 7 Psalms 19 107 8 Psalms 19 108 8 Psalms 19 107 9 Psalms 19 108 9 Psalms 19 107 10 Psalms 19 108 10 Psalms 19 107 11 Psalms 19 108 11 Psalms 19 107 12 Psalms 19 108 12 Psalms 19 107 13 Psalms 19 108 13 Psalms 19 107 14 Psalms 19 108 14 Psalms 19 108 1 Psalms 19 109 1 Psalms 19 108 2 Psalms 19 109 2 Psalms 19 108 3 Psalms 19 109 3 Psalms 19 108 4 Psalms 19 109 4 Psalms 19 108 5 Psalms 19 109 5 Psalms 19 108 6 Psalms 19 109 6 Psalms 19 108 7 Psalms 19 109 7 Psalms 19 108 8 Psalms 19 109 8 Psalms 19 108 9 Psalms 19 109 9 Psalms 19 108 10 Psalms 19 109 10 Psalms 19 108 11 Psalms 19 109 11 Psalms 19 108 12 Psalms 19 109 12 Psalms 19 108 13 Psalms 19 109 13 Psalms 19 108 14 Psalms 19 109 14 Psalms 19 108 15 Psalms 19 109 15 Psalms 19 108 16 Psalms 19 109 16 Psalms 19 108 17 Psalms 19 109 17 Psalms 19 108 18 Psalms 19 109 18 Psalms 19 108 19 Psalms 19 109 19 Psalms 19 108 20 Psalms 19 109 20 Psalms 19 108 21 Psalms 19 109 21 Psalms 19 108 22 Psalms 19 109 22 Psalms 19 108 23 Psalms 19 109 23 Psalms 19 108 24 Psalms 19 109 24 Psalms 19 108 25 Psalms 19 109 25 Psalms 19 108 26 Psalms 19 109 26 Psalms 19 108 27 Psalms 19 109 27 Psalms 19 108 28 Psalms 19 109 28 Psalms 19 108 29 Psalms 19 109 29 Psalms 19 108 30 Psalms 19 109 30 Psalms 19 108 31 Psalms 19 109 31 Psalms 19 109 1 Psalms 19 110 1 Psalms 19 109 2 Psalms 19 110 2 Psalms 19 109 3 Psalms 19 110 3 Psalms 19 109 4 Psalms 19 110 4 Psalms 19 109 5 Psalms 19 110 5 Psalms 19 109 6 Psalms 19 110 6 Psalms 19 109 7 Psalms 19 110 7 Psalms 19 110 1 Psalms 19 111 1 Psalms 19 110 2 Psalms 19 111 2 Psalms 19 110 3 Psalms 19 111 3 Psalms 19 110 4 Psalms 19 111 4 Psalms 19 110 5 Psalms 19 111 5 Psalms 19 110 6 Psalms 19 111 6 Psalms 19 110 7 Psalms 19 111 7 Psalms 19 110 8 Psalms 19 111 8 Psalms 19 110 9 Psalms 19 111 9 Psalms 19 110 10 Psalms 19 111 10 Psalms 19 111 1 Psalms 19 112 1 Psalms 19 111 2 Psalms 19 112 2 Psalms 19 111 3 Psalms 19 112 3 Psalms 19 111 4 Psalms 19 112 4 Psalms 19 111 5 Psalms 19 112 5 Psalms 19 111 6 Psalms 19 112 6 Psalms 19 111 7 Psalms 19 112 7 Psalms 19 111 8 Psalms 19 112 8 Psalms 19 111 9 Psalms 19 112 9 Psalms 19 111 10 Psalms 19 112 10 Psalms 19 112 1 Psalms 19 113 1 Psalms 19 112 2 Psalms 19 113 2 Psalms 19 112 3 Psalms 19 113 3 Psalms 19 112 4 Psalms 19 113 4 Psalms 19 112 5 Psalms 19 113 5 Psalms 19 112 6 Psalms 19 113 6 Psalms 19 112 7 Psalms 19 113 7 Psalms 19 112 8 Psalms 19 113 8 Psalms 19 112 9 Psalms 19 113 9 Psalms 19 113 1 Psalms 19 114 1 Psalms 19 113 2 Psalms 19 114 2 Psalms 19 113 3 Psalms 19 114 3 Psalms 19 113 4 Psalms 19 114 4 Psalms 19 113 5 Psalms 19 114 5 Psalms 19 113 6 Psalms 19 114 6 Psalms 19 113 7 Psalms 19 114 7 Psalms 19 113 8 Psalms 19 114 8 Psalms 19 113 9 Psalms 19 115 1 Psalms 19 113 10 Psalms 19 115 2 Psalms 19 113 11 Psalms 19 115 3 Psalms 19 113 12 Psalms 19 115 4 Psalms 19 113 13 Psalms 19 115 5 Psalms 19 113 14 Psalms 19 115 6 Psalms 19 113 15 Psalms 19 115 7 Psalms 19 113 16 Psalms 19 115 8 Psalms 19 113 17 Psalms 19 115 9 Psalms 19 113 18 Psalms 19 115 10 Psalms 19 113 19 Psalms 19 115 11 Psalms 19 113 20 Psalms 19 115 12 Psalms 19 113 21 Psalms 19 115 13 Psalms 19 113 22 Psalms 19 115 14 Psalms 19 113 23 Psalms 19 115 15 Psalms 19 113 24 Psalms 19 115 16 Psalms 19 113 25 Psalms 19 115 17 Psalms 19 113 26 Psalms 19 115 18 Psalms 19 114 1 Psalms 19 116 1 Psalms 19 114 2 Psalms 19 116 2 Psalms 19 114 3 Psalms 19 116 3 Psalms 19 114 4 Psalms 19 116 4 Psalms 19 114 5 Psalms 19 116 5 Psalms 19 114 6 Psalms 19 116 6 Psalms 19 114 7 Psalms 19 116 7 Psalms 19 114 8 Psalms 19 116 8 Psalms 19 114 9 Psalms 19 116 9 Psalms 19 115 1 Psalms 19 116 10 Psalms 19 115 2 Psalms 19 116 11 Psalms 19 115 3 Psalms 19 116 12 Psalms 19 115 4 Psalms 19 116 13 Psalms 19 115 5 Psalms 19 116 14 Psalms 19 115 6 Psalms 19 116 15 Psalms 19 115 7 Psalms 19 116 16 Psalms 19 115 8 Psalms 19 116 17 Psalms 19 115 9 Psalms 19 116 18 Psalms 19 115 10 Psalms 19 116 19 Psalms 19 116 1 Psalms 19 117 1 Psalms 19 116 2 Psalms 19 117 2 Psalms 19 117 1 Psalms 19 118 1 Psalms 19 117 2 Psalms 19 118 2 Psalms 19 117 3 Psalms 19 118 3 Psalms 19 117 4 Psalms 19 118 4 Psalms 19 117 5 Psalms 19 118 5 Psalms 19 117 6 Psalms 19 118 6 Psalms 19 117 7 Psalms 19 118 7 Psalms 19 117 8 Psalms 19 118 8 Psalms 19 117 9 Psalms 19 118 9 Psalms 19 117 10 Psalms 19 118 10 Psalms 19 117 11 Psalms 19 118 11 Psalms 19 117 12 Psalms 19 118 12 Psalms 19 117 13 Psalms 19 118 13 Psalms 19 117 14 Psalms 19 118 14 Psalms 19 117 15 Psalms 19 118 15 Psalms 19 117 16 Psalms 19 118 16 Psalms 19 117 17 Psalms 19 118 17 Psalms 19 117 18 Psalms 19 118 18 Psalms 19 117 19 Psalms 19 118 19 Psalms 19 117 20 Psalms 19 118 20 Psalms 19 117 21 Psalms 19 118 21 Psalms 19 117 22 Psalms 19 118 22 Psalms 19 117 23 Psalms 19 118 23 Psalms 19 117 24 Psalms 19 118 24 Psalms 19 117 25 Psalms 19 118 25 Psalms 19 117 26 Psalms 19 118 26 Psalms 19 117 27 Psalms 19 118 27 Psalms 19 117 28 Psalms 19 118 28 Psalms 19 117 29 Psalms 19 118 29 Psalms 19 118 1 Psalms 19 119 1 Psalms 19 118 2 Psalms 19 119 2 Psalms 19 118 3 Psalms 19 119 3 Psalms 19 118 4 Psalms 19 119 4 Psalms 19 118 5 Psalms 19 119 5 Psalms 19 118 6 Psalms 19 119 6 Psalms 19 118 7 Psalms 19 119 7 Psalms 19 118 8 Psalms 19 119 8 Psalms 19 118 9 Psalms 19 119 9 Psalms 19 118 10 Psalms 19 119 10 Psalms 19 118 11 Psalms 19 119 11 Psalms 19 118 12 Psalms 19 119 12 Psalms 19 118 13 Psalms 19 119 13 Psalms 19 118 14 Psalms 19 119 14 Psalms 19 118 15 Psalms 19 119 15 Psalms 19 118 16 Psalms 19 119 16 Psalms 19 118 17 Psalms 19 119 17 Psalms 19 118 18 Psalms 19 119 18 Psalms 19 118 19 Psalms 19 119 19 Psalms 19 118 20 Psalms 19 119 20 Psalms 19 118 21 Psalms 19 119 21 Psalms 19 118 22 Psalms 19 119 22 Psalms 19 118 23 Psalms 19 119 23 Psalms 19 118 24 Psalms 19 119 24 Psalms 19 118 25 Psalms 19 119 25 Psalms 19 118 26 Psalms 19 119 26 Psalms 19 118 27 Psalms 19 119 27 Psalms 19 118 28 Psalms 19 119 28 Psalms 19 118 29 Psalms 19 119 29 Psalms 19 118 30 Psalms 19 119 30 Psalms 19 118 31 Psalms 19 119 31 Psalms 19 118 32 Psalms 19 119 32 Psalms 19 118 33 Psalms 19 119 33 Psalms 19 118 34 Psalms 19 119 34 Psalms 19 118 35 Psalms 19 119 35 Psalms 19 118 36 Psalms 19 119 36 Psalms 19 118 37 Psalms 19 119 37 Psalms 19 118 38 Psalms 19 119 38 Psalms 19 118 39 Psalms 19 119 39 Psalms 19 118 40 Psalms 19 119 40 Psalms 19 118 41 Psalms 19 119 41 Psalms 19 118 42 Psalms 19 119 42 Psalms 19 118 43 Psalms 19 119 43 Psalms 19 118 44 Psalms 19 119 44 Psalms 19 118 45 Psalms 19 119 45 Psalms 19 118 46 Psalms 19 119 46 Psalms 19 118 47 Psalms 19 119 47 Psalms 19 118 48 Psalms 19 119 48 Psalms 19 118 49 Psalms 19 119 49 Psalms 19 118 50 Psalms 19 119 50 Psalms 19 118 51 Psalms 19 119 51 Psalms 19 118 52 Psalms 19 119 52 Psalms 19 118 53 Psalms 19 119 53 Psalms 19 118 54 Psalms 19 119 54 Psalms 19 118 55 Psalms 19 119 55 Psalms 19 118 56 Psalms 19 119 56 Psalms 19 118 57 Psalms 19 119 57 Psalms 19 118 58 Psalms 19 119 58 Psalms 19 118 59 Psalms 19 119 59 Psalms 19 118 60 Psalms 19 119 60 Psalms 19 118 61 Psalms 19 119 61 Psalms 19 118 62 Psalms 19 119 62 Psalms 19 118 63 Psalms 19 119 63 Psalms 19 118 64 Psalms 19 119 64 Psalms 19 118 65 Psalms 19 119 65 Psalms 19 118 66 Psalms 19 119 66 Psalms 19 118 67 Psalms 19 119 67 Psalms 19 118 68 Psalms 19 119 68 Psalms 19 118 69 Psalms 19 119 69 Psalms 19 118 70 Psalms 19 119 70 Psalms 19 118 71 Psalms 19 119 71 Psalms 19 118 72 Psalms 19 119 72 Psalms 19 118 73 Psalms 19 119 73 Psalms 19 118 74 Psalms 19 119 74 Psalms 19 118 75 Psalms 19 119 75 Psalms 19 118 76 Psalms 19 119 76 Psalms 19 118 77 Psalms 19 119 77 Psalms 19 118 78 Psalms 19 119 78 Psalms 19 118 79 Psalms 19 119 79 Psalms 19 118 80 Psalms 19 119 80 Psalms 19 118 81 Psalms 19 119 81 Psalms 19 118 82 Psalms 19 119 82 Psalms 19 118 83 Psalms 19 119 83 Psalms 19 118 84 Psalms 19 119 84 Psalms 19 118 85 Psalms 19 119 85 Psalms 19 118 86 Psalms 19 119 86 Psalms 19 118 87 Psalms 19 119 87 Psalms 19 118 88 Psalms 19 119 88 Psalms 19 118 89 Psalms 19 119 89 Psalms 19 118 90 Psalms 19 119 90 Psalms 19 118 91 Psalms 19 119 91 Psalms 19 118 92 Psalms 19 119 92 Psalms 19 118 93 Psalms 19 119 93 Psalms 19 118 94 Psalms 19 119 94 Psalms 19 118 95 Psalms 19 119 95 Psalms 19 118 96 Psalms 19 119 96 Psalms 19 118 97 Psalms 19 119 97 Psalms 19 118 98 Psalms 19 119 98 Psalms 19 118 99 Psalms 19 119 99 Psalms 19 118 100 Psalms 19 119 100 Psalms 19 118 101 Psalms 19 119 101 Psalms 19 118 102 Psalms 19 119 102 Psalms 19 118 103 Psalms 19 119 103 Psalms 19 118 104 Psalms 19 119 104 Psalms 19 118 105 Psalms 19 119 105 Psalms 19 118 106 Psalms 19 119 106 Psalms 19 118 107 Psalms 19 119 107 Psalms 19 118 108 Psalms 19 119 108 Psalms 19 118 109 Psalms 19 119 109 Psalms 19 118 110 Psalms 19 119 110 Psalms 19 118 111 Psalms 19 119 111 Psalms 19 118 112 Psalms 19 119 112 Psalms 19 118 113 Psalms 19 119 113 Psalms 19 118 114 Psalms 19 119 114 Psalms 19 118 115 Psalms 19 119 115 Psalms 19 118 116 Psalms 19 119 116 Psalms 19 118 117 Psalms 19 119 117 Psalms 19 118 118 Psalms 19 119 118 Psalms 19 118 119 Psalms 19 119 119 Psalms 19 118 120 Psalms 19 119 120 Psalms 19 118 121 Psalms 19 119 121 Psalms 19 118 122 Psalms 19 119 122 Psalms 19 118 123 Psalms 19 119 123 Psalms 19 118 124 Psalms 19 119 124 Psalms 19 118 125 Psalms 19 119 125 Psalms 19 118 126 Psalms 19 119 126 Psalms 19 118 127 Psalms 19 119 127 Psalms 19 118 128 Psalms 19 119 128 Psalms 19 118 129 Psalms 19 119 129 Psalms 19 118 130 Psalms 19 119 130 Psalms 19 118 131 Psalms 19 119 131 Psalms 19 118 132 Psalms 19 119 132 Psalms 19 118 133 Psalms 19 119 133 Psalms 19 118 134 Psalms 19 119 134 Psalms 19 118 135 Psalms 19 119 135 Psalms 19 118 136 Psalms 19 119 136 Psalms 19 118 137 Psalms 19 119 137 Psalms 19 118 138 Psalms 19 119 138 Psalms 19 118 139 Psalms 19 119 139 Psalms 19 118 140 Psalms 19 119 140 Psalms 19 118 141 Psalms 19 119 141 Psalms 19 118 142 Psalms 19 119 142 Psalms 19 118 143 Psalms 19 119 143 Psalms 19 118 144 Psalms 19 119 144 Psalms 19 118 145 Psalms 19 119 145 Psalms 19 118 146 Psalms 19 119 146 Psalms 19 118 147 Psalms 19 119 147 Psalms 19 118 148 Psalms 19 119 148 Psalms 19 118 149 Psalms 19 119 149 Psalms 19 118 150 Psalms 19 119 150 Psalms 19 118 151 Psalms 19 119 151 Psalms 19 118 152 Psalms 19 119 152 Psalms 19 118 153 Psalms 19 119 153 Psalms 19 118 154 Psalms 19 119 154 Psalms 19 118 155 Psalms 19 119 155 Psalms 19 118 156 Psalms 19 119 156 Psalms 19 118 157 Psalms 19 119 157 Psalms 19 118 158 Psalms 19 119 158 Psalms 19 118 159 Psalms 19 119 159 Psalms 19 118 160 Psalms 19 119 160 Psalms 19 118 161 Psalms 19 119 161 Psalms 19 118 162 Psalms 19 119 162 Psalms 19 118 163 Psalms 19 119 163 Psalms 19 118 164 Psalms 19 119 164 Psalms 19 118 165 Psalms 19 119 165 Psalms 19 118 166 Psalms 19 119 166 Psalms 19 118 167 Psalms 19 119 167 Psalms 19 118 168 Psalms 19 119 168 Psalms 19 118 169 Psalms 19 119 169 Psalms 19 118 170 Psalms 19 119 170 Psalms 19 118 171 Psalms 19 119 171 Psalms 19 118 172 Psalms 19 119 172 Psalms 19 118 173 Psalms 19 119 173 Psalms 19 118 174 Psalms 19 119 174 Psalms 19 118 175 Psalms 19 119 175 Psalms 19 118 176 Psalms 19 119 176 Psalms 19 119 1 Psalms 19 120 1 Psalms 19 119 2 Psalms 19 120 2 Psalms 19 119 3 Psalms 19 120 3 Psalms 19 119 4 Psalms 19 120 4 Psalms 19 119 5 Psalms 19 120 5 Psalms 19 119 6 Psalms 19 120 6 Psalms 19 119 7 Psalms 19 120 7 Psalms 19 120 1 Psalms 19 121 1 Psalms 19 120 2 Psalms 19 121 2 Psalms 19 120 3 Psalms 19 121 3 Psalms 19 120 4 Psalms 19 121 4 Psalms 19 120 5 Psalms 19 121 5 Psalms 19 120 6 Psalms 19 121 6 Psalms 19 120 7 Psalms 19 121 7 Psalms 19 120 8 Psalms 19 121 8 Psalms 19 121 1 Psalms 19 122 1 Psalms 19 121 2 Psalms 19 122 2 Psalms 19 121 3 Psalms 19 122 3 Psalms 19 121 4 Psalms 19 122 4 Psalms 19 121 5 Psalms 19 122 5 Psalms 19 121 6 Psalms 19 122 6 Psalms 19 121 7 Psalms 19 122 7 Psalms 19 121 8 Psalms 19 122 8 Psalms 19 121 9 Psalms 19 122 9 Psalms 19 122 1 Psalms 19 123 1 Psalms 19 122 2 Psalms 19 123 2 Psalms 19 122 3 Psalms 19 123 3 Psalms 19 122 4 Psalms 19 123 4 Psalms 19 123 1 Psalms 19 124 1 Psalms 19 123 2 Psalms 19 124 2 Psalms 19 123 3 Psalms 19 124 3 Psalms 19 123 4 Psalms 19 124 4 Psalms 19 123 5 Psalms 19 124 5 Psalms 19 123 6 Psalms 19 124 6 Psalms 19 123 7 Psalms 19 124 7 Psalms 19 123 8 Psalms 19 124 8 Psalms 19 124 1 Psalms 19 125 1 Psalms 19 124 2 Psalms 19 125 2 Psalms 19 124 3 Psalms 19 125 3 Psalms 19 124 4 Psalms 19 125 4 Psalms 19 124 5 Psalms 19 125 5 Psalms 19 125 1 Psalms 19 126 1 Psalms 19 125 2 Psalms 19 126 2 Psalms 19 125 3 Psalms 19 126 3 Psalms 19 125 4 Psalms 19 126 4 Psalms 19 125 5 Psalms 19 126 5 Psalms 19 125 6 Psalms 19 126 6 Psalms 19 126 1 Psalms 19 127 1 Psalms 19 126 2 Psalms 19 127 2 Psalms 19 126 3 Psalms 19 127 3 Psalms 19 126 4 Psalms 19 127 4 Psalms 19 126 5 Psalms 19 127 5 Psalms 19 127 1 Psalms 19 128 1 Psalms 19 127 2 Psalms 19 128 2 Psalms 19 127 3 Psalms 19 128 3 Psalms 19 127 4 Psalms 19 128 4 Psalms 19 127 5 Psalms 19 128 5 Psalms 19 127 6 Psalms 19 128 6 Psalms 19 128 1 Psalms 19 129 1 Psalms 19 128 2 Psalms 19 129 2 Psalms 19 128 3 Psalms 19 129 3 Psalms 19 128 4 Psalms 19 129 4 Psalms 19 128 5 Psalms 19 129 5 Psalms 19 128 6 Psalms 19 129 6 Psalms 19 128 7 Psalms 19 129 7 Psalms 19 128 8 Psalms 19 129 8 Psalms 19 129 1 Psalms 19 130 1 Psalms 19 129 2 Psalms 19 130 2 Psalms 19 129 3 Psalms 19 130 3 Psalms 19 129 4 Psalms 19 130 4 Psalms 19 129 5 Psalms 19 130 5 Psalms 19 129 6 Psalms 19 130 6 Psalms 19 129 7 Psalms 19 130 7 Psalms 19 129 8 Psalms 19 130 8 Psalms 19 130 1 Psalms 19 131 1 Psalms 19 130 2 Psalms 19 131 2 Psalms 19 130 3 Psalms 19 131 3 Psalms 19 131 1 Psalms 19 132 1 Psalms 19 131 2 Psalms 19 132 2 Psalms 19 131 3 Psalms 19 132 3 Psalms 19 131 4 Psalms 19 132 4 Psalms 19 131 5 Psalms 19 132 5 Psalms 19 131 6 Psalms 19 132 6 Psalms 19 131 7 Psalms 19 132 7 Psalms 19 131 8 Psalms 19 132 8 Psalms 19 131 9 Psalms 19 132 9 Psalms 19 131 10 Psalms 19 132 10 Psalms 19 131 11 Psalms 19 132 11 Psalms 19 131 12 Psalms 19 132 12 Psalms 19 131 13 Psalms 19 132 13 Psalms 19 131 14 Psalms 19 132 14 Psalms 19 131 15 Psalms 19 132 15 Psalms 19 131 16 Psalms 19 132 16 Psalms 19 131 17 Psalms 19 132 17 Psalms 19 131 18 Psalms 19 132 18 Psalms 19 132 1 Psalms 19 133 1 Psalms 19 132 2 Psalms 19 133 2 Psalms 19 132 3 Psalms 19 133 3 Psalms 19 133 1 Psalms 19 134 1 Psalms 19 133 2 Psalms 19 134 2 Psalms 19 133 3 Psalms 19 134 3 Psalms 19 134 1 Psalms 19 135 1 Psalms 19 134 2 Psalms 19 135 2 Psalms 19 134 3 Psalms 19 135 3 Psalms 19 134 4 Psalms 19 135 4 Psalms 19 134 5 Psalms 19 135 5 Psalms 19 134 6 Psalms 19 135 6 Psalms 19 134 7 Psalms 19 135 7 Psalms 19 134 8 Psalms 19 135 8 Psalms 19 134 9 Psalms 19 135 9 Psalms 19 134 10 Psalms 19 135 10 Psalms 19 134 11 Psalms 19 135 11 Psalms 19 134 12 Psalms 19 135 12 Psalms 19 134 13 Psalms 19 135 13 Psalms 19 134 14 Psalms 19 135 14 Psalms 19 134 15 Psalms 19 135 15 Psalms 19 134 16 Psalms 19 135 16 Psalms 19 134 17 Psalms 19 135 17 Psalms 19 134 18 Psalms 19 135 18 Psalms 19 134 19 Psalms 19 135 19 Psalms 19 134 20 Psalms 19 135 20 Psalms 19 134 21 Psalms 19 135 21 Psalms 19 135 1 Psalms 19 136 1 Psalms 19 135 2 Psalms 19 136 2 Psalms 19 135 3 Psalms 19 136 3 Psalms 19 135 4 Psalms 19 136 4 Psalms 19 135 5 Psalms 19 136 5 Psalms 19 135 6 Psalms 19 136 6 Psalms 19 135 7 Psalms 19 136 7 Psalms 19 135 8 Psalms 19 136 8 Psalms 19 135 9 Psalms 19 136 9 Psalms 19 135 10 Psalms 19 136 10 Psalms 19 135 11 Psalms 19 136 11 Psalms 19 135 12 Psalms 19 136 12 Psalms 19 135 13 Psalms 19 136 13 Psalms 19 135 14 Psalms 19 136 14 Psalms 19 135 15 Psalms 19 136 15 Psalms 19 135 16 Psalms 19 136 16 Psalms 19 135 17 Psalms 19 136 17 Psalms 19 135 18 Psalms 19 136 18 Psalms 19 135 19 Psalms 19 136 19 Psalms 19 135 20 Psalms 19 136 20 Psalms 19 135 21 Psalms 19 136 21 Psalms 19 135 22 Psalms 19 136 22 Psalms 19 135 23 Psalms 19 136 23 Psalms 19 135 24 Psalms 19 136 24 Psalms 19 135 25 Psalms 19 136 25 Psalms 19 135 26 Psalms 19 136 26 Psalms 19 136 1 Psalms 19 137 1 Psalms 19 136 2 Psalms 19 137 2 Psalms 19 136 3 Psalms 19 137 3 Psalms 19 136 4 Psalms 19 137 4 Psalms 19 136 5 Psalms 19 137 5 Psalms 19 136 6 Psalms 19 137 6 Psalms 19 136 7 Psalms 19 137 7 Psalms 19 136 8 Psalms 19 137 8 Psalms 19 136 9 Psalms 19 137 9 Psalms 19 137 1 Psalms 19 138 1 Psalms 19 137 2 Psalms 19 138 2 Psalms 19 137 3 Psalms 19 138 3 Psalms 19 137 4 Psalms 19 138 4 Psalms 19 137 5 Psalms 19 138 5 Psalms 19 137 6 Psalms 19 138 6 Psalms 19 137 7 Psalms 19 138 7 Psalms 19 137 8 Psalms 19 138 8 Psalms 19 138 1 Psalms 19 139 1 Psalms 19 138 2 Psalms 19 139 2 Psalms 19 138 3 Psalms 19 139 3 Psalms 19 138 4 Psalms 19 139 4 Psalms 19 138 5 Psalms 19 139 5 Psalms 19 138 6 Psalms 19 139 6 Psalms 19 138 7 Psalms 19 139 7 Psalms 19 138 8 Psalms 19 139 8 Psalms 19 138 9 Psalms 19 139 9 Psalms 19 138 10 Psalms 19 139 10 Psalms 19 138 11 Psalms 19 139 11 Psalms 19 138 12 Psalms 19 139 12 Psalms 19 138 13 Psalms 19 139 13 Psalms 19 138 14 Psalms 19 139 14 Psalms 19 138 15 Psalms 19 139 15 Psalms 19 138 16 Psalms 19 139 16 Psalms 19 138 17 Psalms 19 139 17 Psalms 19 138 18 Psalms 19 139 18 Psalms 19 138 19 Psalms 19 139 19 Psalms 19 138 20 Psalms 19 139 20 Psalms 19 138 21 Psalms 19 139 21 Psalms 19 138 22 Psalms 19 139 22 Psalms 19 138 23 Psalms 19 139 23 Psalms 19 138 24 Psalms 19 139 24 Psalms 19 139 1 Psalms 19 140 1 Psalms 19 139 2 Psalms 19 140 2 Psalms 19 139 3 Psalms 19 140 3 Psalms 19 139 4 Psalms 19 140 4 Psalms 19 139 5 Psalms 19 140 5 Psalms 19 139 6 Psalms 19 140 6 Psalms 19 139 7 Psalms 19 140 7 Psalms 19 139 8 Psalms 19 140 8 Psalms 19 139 9 Psalms 19 140 9 Psalms 19 139 10 Psalms 19 140 10 Psalms 19 139 11 Psalms 19 140 11 Psalms 19 139 12 Psalms 19 140 12 Psalms 19 139 13 Psalms 19 140 13 Psalms 19 139 14 Psalms 19 140 14 Psalms 19 140 1 Psalms 19 141 1 Psalms 19 140 2 Psalms 19 141 2 Psalms 19 140 3 Psalms 19 141 3 Psalms 19 140 4 Psalms 19 141 4 Psalms 19 140 5 Psalms 19 141 5 Psalms 19 140 6 Psalms 19 141 6 Psalms 19 140 7 Psalms 19 141 7 Psalms 19 140 8 Psalms 19 141 8 Psalms 19 140 9 Psalms 19 141 9 Psalms 19 140 10 Psalms 19 141 10 Psalms 19 141 1 Psalms 19 142 2 Psalms 19 141 2 Psalms 19 142 3 Psalms 19 141 3 Psalms 19 142 4 Psalms 19 141 4 Psalms 19 142 5 Psalms 19 141 5 Psalms 19 142 6 Psalms 19 141 6 Psalms 19 142 7 Psalms 19 141 7 Psalms 19 142 8 Psalms 19 142 1 Psalms 19 143 1 Psalms 19 142 2 Psalms 19 143 2 Psalms 19 142 3 Psalms 19 143 3 Psalms 19 142 4 Psalms 19 143 4 Psalms 19 142 5 Psalms 19 143 5 Psalms 19 142 6 Psalms 19 143 6 Psalms 19 142 7 Psalms 19 143 7 Psalms 19 142 8 Psalms 19 143 8 Psalms 19 142 9 Psalms 19 143 9 Psalms 19 142 10 Psalms 19 143 10 Psalms 19 142 11 Psalms 19 143 11 Psalms 19 142 12 Psalms 19 143 12 Psalms 19 143 1 Psalms 19 144 1 Psalms 19 143 2 Psalms 19 144 2 Psalms 19 143 3 Psalms 19 144 3 Psalms 19 143 4 Psalms 19 144 4 Psalms 19 143 5 Psalms 19 144 5 Psalms 19 143 6 Psalms 19 144 6 Psalms 19 143 7 Psalms 19 144 7 Psalms 19 143 8 Psalms 19 144 8 Psalms 19 143 9 Psalms 19 144 9 Psalms 19 143 10 Psalms 19 144 10 Psalms 19 143 11 Psalms 19 144 11 Psalms 19 143 12 Psalms 19 144 12 Psalms 19 143 13 Psalms 19 144 13 Psalms 19 143 14 Psalms 19 144 14 Psalms 19 143 15 Psalms 19 144 15 Psalms 19 144 1 Psalms 19 145 1 Psalms 19 144 2 Psalms 19 145 2 Psalms 19 144 3 Psalms 19 145 3 Psalms 19 144 4 Psalms 19 145 4 Psalms 19 144 5 Psalms 19 145 5 Psalms 19 144 6 Psalms 19 145 6 Psalms 19 144 7 Psalms 19 145 7 Psalms 19 144 8 Psalms 19 145 8 Psalms 19 144 9 Psalms 19 145 9 Psalms 19 144 10 Psalms 19 145 10 Psalms 19 144 11 Psalms 19 145 11 Psalms 19 144 12 Psalms 19 145 12 Psalms 19 144 13 Psalms 19 145 13 Psalms 19 144 14 Psalms 19 145 14 Psalms 19 144 15 Psalms 19 145 15 Psalms 19 144 16 Psalms 19 145 16 Psalms 19 144 17 Psalms 19 145 17 Psalms 19 144 18 Psalms 19 145 18 Psalms 19 144 19 Psalms 19 145 19 Psalms 19 144 20 Psalms 19 145 20 Psalms 19 144 21 Psalms 19 145 21 Psalms 19 145 1 Psalms 19 146 1 Psalms 19 145 2 Psalms 19 146 2 Psalms 19 145 3 Psalms 19 146 3 Psalms 19 145 4 Psalms 19 146 4 Psalms 19 145 5 Psalms 19 146 5 Psalms 19 145 6 Psalms 19 146 6 Psalms 19 145 7 Psalms 19 146 7 Psalms 19 145 8 Psalms 19 146 8 Psalms 19 145 9 Psalms 19 146 9 Psalms 19 145 10 Psalms 19 146 10 Psalms 19 146 1 Psalms 19 147 1 Psalms 19 146 2 Psalms 19 147 2 Psalms 19 146 3 Psalms 19 147 3 Psalms 19 146 4 Psalms 19 147 4 Psalms 19 146 5 Psalms 19 147 5 Psalms 19 146 6 Psalms 19 147 6 Psalms 19 146 7 Psalms 19 147 7 Psalms 19 146 8 Psalms 19 147 8 Psalms 19 146 9 Psalms 19 147 9 Psalms 19 146 10 Psalms 19 147 10 Psalms 19 146 11 Psalms 19 147 11 Psalms 19 147 1 Psalms 19 147 12 Psalms 19 147 2 Psalms 19 147 13 Psalms 19 147 3 Psalms 19 147 14 Psalms 19 147 4 Psalms 19 147 15 Psalms 19 147 5 Psalms 19 147 16 Psalms 19 147 6 Psalms 19 147 17 Psalms 19 147 7 Psalms 19 147 18 Psalms 19 147 8 Psalms 19 147 19 Psalms 19 147 9 Psalms 19 147 20 Song of Solomon 22 1 1 Song of Solomon 22 1 2 Song of Solomon 22 1 2 Song of Solomon 22 1 3 Song of Solomon 22 1 3 Song of Solomon 22 1 4 Song of Solomon 22 1 4 Song of Solomon 22 1 5 Song of Solomon 22 1 5 Song of Solomon 22 1 6 Song of Solomon 22 1 6 Song of Solomon 22 1 7 Song of Solomon 22 1 7 Song of Solomon 22 1 8 Song of Solomon 22 1 8 Song of Solomon 22 1 9 Song of Solomon 22 1 9 Song of Solomon 22 1 10 Song of Solomon 22 1 10 Song of Solomon 22 1 11 Song of Solomon 22 1 11 Song of Solomon 22 1 12 Song of Solomon 22 1 12 Song of Solomon 22 1 13 Song of Solomon 22 1 13 Song of Solomon 22 1 14 Song of Solomon 22 1 14 Song of Solomon 22 1 15 Song of Solomon 22 1 15 Song of Solomon 22 1 16 Song of Solomon 22 1 16 Song of Solomon 22 1 17 Isaiah 23 3 19 Isaiah 23 3 19 Isaiah 23 3 19 Isaiah 23 3 20 Isaiah 23 3 20 Isaiah 23 3 21 Isaiah 23 3 21 Isaiah 23 3 22 Isaiah 23 3 22 Isaiah 23 3 23 Isaiah 23 3 23 Isaiah 23 3 24 Isaiah 23 3 24 Isaiah 23 3 25 Isaiah 23 3 25 Isaiah 23 3 26 Isaiah 23 9 1 Isaiah 23 8 23 Isaiah 23 9 2 Isaiah 23 9 1 Isaiah 23 9 3 Isaiah 23 9 2 Isaiah 23 9 4 Isaiah 23 9 3 Isaiah 23 9 5 Isaiah 23 9 4 Isaiah 23 9 6 Isaiah 23 9 5 Isaiah 23 9 7 Isaiah 23 9 6 Isaiah 23 9 8 Isaiah 23 9 7 Isaiah 23 9 9 Isaiah 23 9 8 Isaiah 23 9 10 Isaiah 23 9 9 Isaiah 23 9 11 Isaiah 23 9 10 Isaiah 23 9 12 Isaiah 23 9 11 Isaiah 23 9 13 Isaiah 23 9 12 Isaiah 23 9 14 Isaiah 23 9 13 Isaiah 23 9 15 Isaiah 23 9 14 Isaiah 23 9 16 Isaiah 23 9 15 Isaiah 23 9 17 Isaiah 23 9 16 Isaiah 23 9 18 Isaiah 23 9 17 Isaiah 23 9 19 Isaiah 23 9 18 Isaiah 23 9 20 Isaiah 23 9 19 Isaiah 23 9 21 Isaiah 23 9 20 Isaiah 23 63 19 Isaiah 23 63 19 Isaiah 23 64 1 Isaiah 23 63 19 Isaiah 23 64 2 Isaiah 23 64 1 Isaiah 23 64 3 Isaiah 23 64 2 Isaiah 23 64 4 Isaiah 23 64 3 Isaiah 23 64 5 Isaiah 23 64 4 Isaiah 23 64 6 Isaiah 23 64 5 Isaiah 23 64 7 Isaiah 23 64 6 Isaiah 23 64 8 Isaiah 23 64 7 Isaiah 23 64 9 Isaiah 23 64 8 Isaiah 23 64 10 Isaiah 23 64 9 Isaiah 23 64 11 Isaiah 23 64 10 Isaiah 23 64 12 Isaiah 23 64 11 Jeremiah 24 9 1 Jeremiah 24 8 23 Jeremiah 24 9 2 Jeremiah 24 9 1 Jeremiah 24 9 3 Jeremiah 24 9 2 Jeremiah 24 9 4 Jeremiah 24 9 3 Jeremiah 24 9 5 Jeremiah 24 9 4 Jeremiah 24 9 6 Jeremiah 24 9 5 Jeremiah 24 9 7 Jeremiah 24 9 6 Jeremiah 24 9 8 Jeremiah 24 9 7 Jeremiah 24 9 9 Jeremiah 24 9 8 Jeremiah 24 9 10 Jeremiah 24 9 9 Jeremiah 24 9 11 Jeremiah 24 9 10 Jeremiah 24 9 12 Jeremiah 24 9 11 Jeremiah 24 9 13 Jeremiah 24 9 12 Jeremiah 24 9 14 Jeremiah 24 9 13 Jeremiah 24 9 15 Jeremiah 24 9 14 Jeremiah 24 9 16 Jeremiah 24 9 15 Jeremiah 24 9 17 Jeremiah 24 9 16 Jeremiah 24 9 18 Jeremiah 24 9 17 Jeremiah 24 9 19 Jeremiah 24 9 18 Jeremiah 24 9 20 Jeremiah 24 9 19 Jeremiah 24 9 21 Jeremiah 24 9 20 Jeremiah 24 9 22 Jeremiah 24 9 21 Jeremiah 24 9 23 Jeremiah 24 9 22 Jeremiah 24 9 24 Jeremiah 24 9 23 Jeremiah 24 9 25 Jeremiah 24 9 24 Jeremiah 24 9 26 Jeremiah 24 9 25 Ezekiel 26 20 45 Ezekiel 26 21 1 Ezekiel 26 20 46 Ezekiel 26 21 2 Ezekiel 26 20 47 Ezekiel 26 21 3 Ezekiel 26 20 48 Ezekiel 26 21 4 Ezekiel 26 20 49 Ezekiel 26 21 5 Ezekiel 26 21 1 Ezekiel 26 21 6 Ezekiel 26 21 2 Ezekiel 26 21 7 Ezekiel 26 21 3 Ezekiel 26 21 8 Ezekiel 26 21 4 Ezekiel 26 21 9 Ezekiel 26 21 5 Ezekiel 26 21 10 Ezekiel 26 21 6 Ezekiel 26 21 11 Ezekiel 26 21 7 Ezekiel 26 21 12 Ezekiel 26 21 8 Ezekiel 26 21 13 Ezekiel 26 21 9 Ezekiel 26 21 14 Ezekiel 26 21 10 Ezekiel 26 21 15 Ezekiel 26 21 11 Ezekiel 26 21 16 Ezekiel 26 21 12 Ezekiel 26 21 17 Ezekiel 26 21 13 Ezekiel 26 21 18 Ezekiel 26 21 14 Ezekiel 26 21 19 Ezekiel 26 21 15 Ezekiel 26 21 20 Ezekiel 26 21 16 Ezekiel 26 21 21 Ezekiel 26 21 17 Ezekiel 26 21 22 Ezekiel 26 21 18 Ezekiel 26 21 23 Ezekiel 26 21 19 Ezekiel 26 21 24 Ezekiel 26 21 20 Ezekiel 26 21 25 Ezekiel 26 21 21 Ezekiel 26 21 26 Ezekiel 26 21 22 Ezekiel 26 21 27 Ezekiel 26 21 23 Ezekiel 26 21 28 Ezekiel 26 21 24 Ezekiel 26 21 29 Ezekiel 26 21 25 Ezekiel 26 21 30 Ezekiel 26 21 26 Ezekiel 26 21 31 Ezekiel 26 21 27 Ezekiel 26 21 32 Ezekiel 26 21 28 Ezekiel 26 21 33 Ezekiel 26 21 29 Ezekiel 26 21 34 Ezekiel 26 21 30 Ezekiel 26 21 35 Ezekiel 26 21 31 Ezekiel 26 21 36 Ezekiel 26 21 32 Ezekiel 26 21 37 Daniel 27 5 31 Daniel 27 6 1 Daniel 27 6 1 Daniel 27 6 2 Daniel 27 6 2 Daniel 27 6 3 Daniel 27 6 3 Daniel 27 6 4 Daniel 27 6 4 Daniel 27 6 5 Daniel 27 6 5 Daniel 27 6 6 Daniel 27 6 6 Daniel 27 6 7 Daniel 27 6 7 Daniel 27 6 8 Daniel 27 6 8 Daniel 27 6 9 Daniel 27 6 9 Daniel 27 6 10 Daniel 27 6 10 Daniel 27 6 11 Daniel 27 6 11 Daniel 27 6 12 Daniel 27 6 12 Daniel 27 6 13 Daniel 27 6 13 Daniel 27 6 14 Daniel 27 6 14 Daniel 27 6 15 Daniel 27 6 15 Daniel 27 6 16 Daniel 27 6 16 Daniel 27 6 17 Daniel 27 6 17 Daniel 27 6 18 Daniel 27 6 18 Daniel 27 6 19 Daniel 27 6 19 Daniel 27 6 20 Daniel 27 6 20 Daniel 27 6 21 Daniel 27 6 21 Daniel 27 6 22 Daniel 27 6 22 Daniel 27 6 23 Daniel 27 6 23 Daniel 27 6 24 Daniel 27 6 24 Daniel 27 6 25 Daniel 27 6 25 Daniel 27 6 26 Daniel 27 6 26 Daniel 27 6 27 Daniel 27 6 27 Daniel 27 6 28 Daniel 27 6 28 Daniel 27 6 29 Hosea 28 1 10 Hosea 28 2 1 Hosea 28 1 11 Hosea 28 2 2 Hosea 28 2 1 Hosea 28 2 3 Hosea 28 2 2 Hosea 28 2 4 Hosea 28 2 3 Hosea 28 2 5 Hosea 28 2 4 Hosea 28 2 6 Hosea 28 2 5 Hosea 28 2 7 Hosea 28 2 6 Hosea 28 2 8 Hosea 28 2 7 Hosea 28 2 9 Hosea 28 2 8 Hosea 28 2 10 Hosea 28 2 9 Hosea 28 2 11 Hosea 28 2 10 Hosea 28 2 12 Hosea 28 2 11 Hosea 28 2 13 Hosea 28 2 12 Hosea 28 2 14 Hosea 28 2 13 Hosea 28 2 15 Hosea 28 2 14 Hosea 28 2 16 Hosea 28 2 15 Hosea 28 2 17 Hosea 28 2 16 Hosea 28 2 18 Hosea 28 2 17 Hosea 28 2 19 Hosea 28 2 18 Hosea 28 2 20 Hosea 28 2 19 Hosea 28 2 21 Hosea 28 2 20 Hosea 28 2 22 Hosea 28 2 21 Hosea 28 2 23 Hosea 28 2 22 Hosea 28 2 24 Hosea 28 2 23 Hosea 28 2 25 Hosea 28 11 12 Hosea 28 12 1 Hosea 28 12 1 Hosea 28 12 2 Hosea 28 12 2 Hosea 28 12 3 Hosea 28 12 3 Hosea 28 12 4 Hosea 28 12 4 Hosea 28 12 5 Hosea 28 12 5 Hosea 28 12 6 Hosea 28 12 6 Hosea 28 12 7 Hosea 28 12 7 Hosea 28 12 8 Hosea 28 12 8 Hosea 28 12 9 Hosea 28 12 9 Hosea 28 12 10 Hosea 28 12 10 Hosea 28 12 11 Hosea 28 12 11 Hosea 28 12 12 Hosea 28 12 12 Hosea 28 12 13 Hosea 28 12 13 Hosea 28 12 14 Hosea 28 12 14 Hosea 28 12 15 Joel 29 2 28 Joel 29 3 1 Joel 29 2 29 Joel 29 3 2 Joel 29 2 30 Joel 29 3 3 Joel 29 2 31 Joel 29 3 4 Joel 29 2 32 Joel 29 3 5 Joel 29 3 1 Joel 29 4 1 Joel 29 3 2 Joel 29 4 2 Joel 29 3 3 Joel 29 4 3 Joel 29 3 4 Joel 29 4 4 Joel 29 3 5 Joel 29 4 5 Joel 29 3 6 Joel 29 4 6 Joel 29 3 7 Joel 29 4 7 Joel 29 3 8 Joel 29 4 8 Joel 29 3 9 Joel 29 4 9 Joel 29 3 10 Joel 29 4 10 Joel 29 3 11 Joel 29 4 11 Joel 29 3 12 Joel 29 4 12 Joel 29 3 13 Joel 29 4 13 Joel 29 3 14 Joel 29 4 14 Joel 29 3 15 Joel 29 4 15 Joel 29 3 16 Joel 29 4 16 Joel 29 3 17 Joel 29 4 17 Joel 29 3 18 Joel 29 4 18 Joel 29 3 19 Joel 29 4 19 Joel 29 3 20 Joel 29 4 20 Joel 29 3 21 Joel 29 4 21 Micah 33 5 1 Micah 33 4 14 Micah 33 5 2 Micah 33 5 1 Micah 33 5 3 Micah 33 5 2 Micah 33 5 4 Micah 33 5 3 Micah 33 5 5 Micah 33 5 4 Micah 33 5 6 Micah 33 5 5 Micah 33 5 7 Micah 33 5 6 Micah 33 5 8 Micah 33 5 7 Micah 33 5 9 Micah 33 5 8 Micah 33 5 10 Micah 33 5 9 Micah 33 5 11 Micah 33 5 10 Micah 33 5 12 Micah 33 5 11 Micah 33 5 13 Micah 33 5 12 Micah 33 5 14 Micah 33 5 13 Micah 33 5 15 Micah 33 5 14 Nahum 34 1 15 Nahum 34 2 1 Nahum 34 2 1 Nahum 34 2 2 Nahum 34 2 2 Nahum 34 2 3 Nahum 34 2 3 Nahum 34 2 4 Nahum 34 2 4 Nahum 34 2 5 Nahum 34 2 5 Nahum 34 2 6 Nahum 34 2 6 Nahum 34 2 7 Nahum 34 2 7 Nahum 34 2 8 Nahum 34 2 8 Nahum 34 2 9 Nahum 34 2 9 Nahum 34 2 10 Nahum 34 2 10 Nahum 34 2 11 Nahum 34 2 11 Nahum 34 2 12 Nahum 34 2 12 Nahum 34 2 13 Nahum 34 2 13 Nahum 34 2 14 Zechariah 38 1 18 Zechariah 38 2 1 Zechariah 38 1 19 Zechariah 38 2 2 Zechariah 38 1 20 Zechariah 38 2 3 Zechariah 38 1 21 Zechariah 38 2 4 Zechariah 38 2 1 Zechariah 38 2 5 Zechariah 38 2 2 Zechariah 38 2 6 Zechariah 38 2 3 Zechariah 38 2 7 Zechariah 38 2 4 Zechariah 38 2 8 Zechariah 38 2 5 Zechariah 38 2 9 Zechariah 38 2 6 Zechariah 38 2 10 Zechariah 38 2 7 Zechariah 38 2 11 Zechariah 38 2 8 Zechariah 38 2 12 Zechariah 38 2 9 Zechariah 38 2 13 Zechariah 38 2 10 Zechariah 38 2 14 Zechariah 38 2 11 Zechariah 38 2 15 Zechariah 38 2 12 Zechariah 38 2 16 Zechariah 38 2 13 Zechariah 38 2 17 Malachi 39 4 1 Malachi 39 3 19 Malachi 39 4 2 Malachi 39 3 20 Malachi 39 4 3 Malachi 39 3 21 Malachi 39 4 4 Malachi 39 3 22 Malachi 39 4 5 Malachi 39 3 23 Malachi 39 4 6 Malachi 39 3 24 Romans 45 14 24 Romans 45 16 25 Romans 45 14 25 Romans 45 16 26 Romans 45 14 26 Romans 45 16 27 2 Corinthians 47 11 32 2 Corinthians 47 11 32 2 Corinthians 47 11 32 2 Corinthians 47 11 33 Revelation 66 13 1 Revelation 66 12 18 Revelation 66 13 1 Revelation 66 13 1 bibledit-gtk-4.9/templates/mapping_septuagint.xml000664 000766 000024 00000000101 12221507126 022461 0ustar00teusstaff000000 000000 bibledit-gtk-4.9/templates/mapping_spanish.xml000664 000766 000024 00001732607 12221507126 021773 0ustar00teusstaff000000 000000 Genesis 1 31 55 Genesis 1 32 1 Genesis 1 32 1 Genesis 1 32 2 Genesis 1 32 2 Genesis 1 32 3 Genesis 1 32 3 Genesis 1 32 4 Genesis 1 32 4 Genesis 1 32 5 Genesis 1 32 5 Genesis 1 32 6 Genesis 1 32 6 Genesis 1 32 7 Genesis 1 32 7 Genesis 1 32 8 Genesis 1 32 8 Genesis 1 32 9 Genesis 1 32 9 Genesis 1 32 10 Genesis 1 32 10 Genesis 1 32 11 Genesis 1 32 11 Genesis 1 32 12 Genesis 1 32 12 Genesis 1 32 13 Genesis 1 32 13 Genesis 1 32 14 Genesis 1 32 14 Genesis 1 32 15 Genesis 1 32 15 Genesis 1 32 16 Genesis 1 32 16 Genesis 1 32 17 Genesis 1 32 17 Genesis 1 32 18 Genesis 1 32 18 Genesis 1 32 19 Genesis 1 32 19 Genesis 1 32 20 Genesis 1 32 20 Genesis 1 32 21 Genesis 1 32 21 Genesis 1 32 22 Genesis 1 32 22 Genesis 1 32 23 Genesis 1 32 23 Genesis 1 32 24 Genesis 1 32 24 Genesis 1 32 25 Genesis 1 32 25 Genesis 1 32 26 Genesis 1 32 26 Genesis 1 32 27 Genesis 1 32 27 Genesis 1 32 28 Genesis 1 32 28 Genesis 1 32 29 Genesis 1 32 29 Genesis 1 32 30 Genesis 1 32 30 Genesis 1 32 31 Genesis 1 32 31 Genesis 1 32 32 Genesis 1 32 32 Genesis 1 32 33 Exodus 2 8 1 Exodus 2 7 26 Exodus 2 8 2 Exodus 2 7 27 Exodus 2 8 3 Exodus 2 7 28 Exodus 2 8 4 Exodus 2 7 29 Exodus 2 8 5 Exodus 2 8 1 Exodus 2 8 6 Exodus 2 8 2 Exodus 2 8 7 Exodus 2 8 3 Exodus 2 8 8 Exodus 2 8 4 Exodus 2 8 9 Exodus 2 8 5 Exodus 2 8 10 Exodus 2 8 6 Exodus 2 8 11 Exodus 2 8 7 Exodus 2 8 12 Exodus 2 8 8 Exodus 2 8 13 Exodus 2 8 9 Exodus 2 8 14 Exodus 2 8 10 Exodus 2 8 15 Exodus 2 8 11 Exodus 2 8 16 Exodus 2 8 12 Exodus 2 8 17 Exodus 2 8 13 Exodus 2 8 18 Exodus 2 8 14 Exodus 2 8 19 Exodus 2 8 15 Exodus 2 8 20 Exodus 2 8 16 Exodus 2 8 21 Exodus 2 8 17 Exodus 2 8 22 Exodus 2 8 18 Exodus 2 8 23 Exodus 2 8 19 Exodus 2 8 24 Exodus 2 8 20 Exodus 2 8 25 Exodus 2 8 21 Exodus 2 8 26 Exodus 2 8 22 Exodus 2 8 27 Exodus 2 8 23 Exodus 2 8 28 Exodus 2 8 24 Exodus 2 8 29 Exodus 2 8 25 Exodus 2 8 30 Exodus 2 8 26 Exodus 2 8 31 Exodus 2 8 27 Exodus 2 8 32 Exodus 2 8 28 Exodus 2 22 1 Exodus 2 21 37 Exodus 2 22 2 Exodus 2 22 1 Exodus 2 22 3 Exodus 2 22 2 Exodus 2 22 4 Exodus 2 22 3 Exodus 2 22 5 Exodus 2 22 4 Exodus 2 22 6 Exodus 2 22 5 Exodus 2 22 7 Exodus 2 22 6 Exodus 2 22 8 Exodus 2 22 7 Exodus 2 22 9 Exodus 2 22 8 Exodus 2 22 10 Exodus 2 22 9 Exodus 2 22 11 Exodus 2 22 10 Exodus 2 22 12 Exodus 2 22 11 Exodus 2 22 13 Exodus 2 22 12 Exodus 2 22 14 Exodus 2 22 13 Exodus 2 22 15 Exodus 2 22 14 Exodus 2 22 16 Exodus 2 22 15 Exodus 2 22 17 Exodus 2 22 16 Exodus 2 22 18 Exodus 2 22 17 Exodus 2 22 19 Exodus 2 22 18 Exodus 2 22 20 Exodus 2 22 19 Exodus 2 22 21 Exodus 2 22 20 Exodus 2 22 22 Exodus 2 22 21 Exodus 2 22 23 Exodus 2 22 22 Exodus 2 22 24 Exodus 2 22 23 Exodus 2 22 25 Exodus 2 22 24 Exodus 2 22 26 Exodus 2 22 25 Exodus 2 22 27 Exodus 2 22 26 Exodus 2 22 28 Exodus 2 22 27 Exodus 2 22 29 Exodus 2 22 28 Exodus 2 22 30 Exodus 2 22 29 Exodus 2 22 31 Exodus 2 22 30 Leviticus 3 6 1 Leviticus 3 5 20 Leviticus 3 6 2 Leviticus 3 5 21 Leviticus 3 6 3 Leviticus 3 5 22 Leviticus 3 6 4 Leviticus 3 5 23 Leviticus 3 6 5 Leviticus 3 5 24 Leviticus 3 6 6 Leviticus 3 5 25 Leviticus 3 6 7 Leviticus 3 5 26 Leviticus 3 6 8 Leviticus 3 6 1 Leviticus 3 6 9 Leviticus 3 6 2 Leviticus 3 6 10 Leviticus 3 6 3 Leviticus 3 6 11 Leviticus 3 6 4 Leviticus 3 6 12 Leviticus 3 6 5 Leviticus 3 6 13 Leviticus 3 6 6 Leviticus 3 6 14 Leviticus 3 6 7 Leviticus 3 6 15 Leviticus 3 6 8 Leviticus 3 6 16 Leviticus 3 6 9 Leviticus 3 6 17 Leviticus 3 6 10 Leviticus 3 6 18 Leviticus 3 6 11 Leviticus 3 6 19 Leviticus 3 6 12 Leviticus 3 6 20 Leviticus 3 6 13 Leviticus 3 6 21 Leviticus 3 6 14 Leviticus 3 6 22 Leviticus 3 6 15 Leviticus 3 6 23 Leviticus 3 6 16 Leviticus 3 6 24 Leviticus 3 6 17 Leviticus 3 6 25 Leviticus 3 6 18 Leviticus 3 6 26 Leviticus 3 6 19 Leviticus 3 6 27 Leviticus 3 6 20 Leviticus 3 6 28 Leviticus 3 6 21 Leviticus 3 6 29 Leviticus 3 6 22 Leviticus 3 6 30 Leviticus 3 6 23 Numbers 4 16 36 Numbers 4 17 1 Numbers 4 16 37 Numbers 4 17 2 Numbers 4 16 38 Numbers 4 17 3 Numbers 4 16 39 Numbers 4 17 4 Numbers 4 16 40 Numbers 4 17 5 Numbers 4 16 41 Numbers 4 17 6 Numbers 4 16 42 Numbers 4 17 7 Numbers 4 16 43 Numbers 4 17 8 Numbers 4 16 44 Numbers 4 17 9 Numbers 4 16 45 Numbers 4 17 10 Numbers 4 16 46 Numbers 4 17 11 Numbers 4 16 47 Numbers 4 17 12 Numbers 4 16 48 Numbers 4 17 13 Numbers 4 16 49 Numbers 4 17 14 Numbers 4 16 50 Numbers 4 17 15 Numbers 4 17 1 Numbers 4 17 16 Numbers 4 17 2 Numbers 4 17 17 Numbers 4 17 3 Numbers 4 17 18 Numbers 4 17 4 Numbers 4 17 19 Numbers 4 17 5 Numbers 4 17 20 Numbers 4 17 6 Numbers 4 17 21 Numbers 4 17 7 Numbers 4 17 22 Numbers 4 17 8 Numbers 4 17 23 Numbers 4 17 9 Numbers 4 17 24 Numbers 4 17 10 Numbers 4 17 25 Numbers 4 17 11 Numbers 4 17 26 Numbers 4 17 12 Numbers 4 17 27 Numbers 4 17 13 Numbers 4 17 28 Numbers 4 26 1 Numbers 4 25 19 Numbers 4 26 1 Numbers 4 26 1 Numbers 4 29 40 Numbers 4 30 1 Numbers 4 30 1 Numbers 4 30 2 Numbers 4 30 2 Numbers 4 30 3 Numbers 4 30 3 Numbers 4 30 4 Numbers 4 30 4 Numbers 4 30 5 Numbers 4 30 5 Numbers 4 30 6 Numbers 4 30 6 Numbers 4 30 7 Numbers 4 30 7 Numbers 4 30 8 Numbers 4 30 8 Numbers 4 30 9 Numbers 4 30 9 Numbers 4 30 10 Numbers 4 30 10 Numbers 4 30 11 Numbers 4 30 11 Numbers 4 30 12 Numbers 4 30 12 Numbers 4 30 13 Numbers 4 30 13 Numbers 4 30 14 Numbers 4 30 14 Numbers 4 30 15 Numbers 4 30 15 Numbers 4 30 16 Numbers 4 30 16 Numbers 4 30 17 Deuteronomy 5 12 32 Deuteronomy 5 13 1 Deuteronomy 5 13 1 Deuteronomy 5 13 2 Deuteronomy 5 13 2 Deuteronomy 5 13 3 Deuteronomy 5 13 3 Deuteronomy 5 13 4 Deuteronomy 5 13 4 Deuteronomy 5 13 5 Deuteronomy 5 13 5 Deuteronomy 5 13 6 Deuteronomy 5 13 6 Deuteronomy 5 13 7 Deuteronomy 5 13 7 Deuteronomy 5 13 8 Deuteronomy 5 13 8 Deuteronomy 5 13 9 Deuteronomy 5 13 9 Deuteronomy 5 13 10 Deuteronomy 5 13 10 Deuteronomy 5 13 11 Deuteronomy 5 13 11 Deuteronomy 5 13 12 Deuteronomy 5 13 12 Deuteronomy 5 13 13 Deuteronomy 5 13 13 Deuteronomy 5 13 14 Deuteronomy 5 13 14 Deuteronomy 5 13 15 Deuteronomy 5 13 15 Deuteronomy 5 13 16 Deuteronomy 5 13 16 Deuteronomy 5 13 17 Deuteronomy 5 13 17 Deuteronomy 5 13 18 Deuteronomy 5 13 18 Deuteronomy 5 13 19 Deuteronomy 5 22 30 Deuteronomy 5 23 1 Deuteronomy 5 23 1 Deuteronomy 5 23 2 Deuteronomy 5 23 2 Deuteronomy 5 23 3 Deuteronomy 5 23 3 Deuteronomy 5 23 4 Deuteronomy 5 23 4 Deuteronomy 5 23 5 Deuteronomy 5 23 5 Deuteronomy 5 23 6 Deuteronomy 5 23 6 Deuteronomy 5 23 7 Deuteronomy 5 23 7 Deuteronomy 5 23 8 Deuteronomy 5 23 8 Deuteronomy 5 23 9 Deuteronomy 5 23 9 Deuteronomy 5 23 10 Deuteronomy 5 23 10 Deuteronomy 5 23 11 Deuteronomy 5 23 11 Deuteronomy 5 23 12 Deuteronomy 5 23 12 Deuteronomy 5 23 13 Deuteronomy 5 23 13 Deuteronomy 5 23 14 Deuteronomy 5 23 14 Deuteronomy 5 23 15 Deuteronomy 5 23 15 Deuteronomy 5 23 16 Deuteronomy 5 23 16 Deuteronomy 5 23 17 Deuteronomy 5 23 17 Deuteronomy 5 23 18 Deuteronomy 5 23 18 Deuteronomy 5 23 19 Deuteronomy 5 23 19 Deuteronomy 5 23 20 Deuteronomy 5 23 20 Deuteronomy 5 23 21 Deuteronomy 5 23 21 Deuteronomy 5 23 22 Deuteronomy 5 23 22 Deuteronomy 5 23 23 Deuteronomy 5 23 23 Deuteronomy 5 23 24 Deuteronomy 5 23 24 Deuteronomy 5 23 25 Deuteronomy 5 23 25 Deuteronomy 5 23 26 Deuteronomy 5 29 1 Deuteronomy 5 28 69 Deuteronomy 5 29 2 Deuteronomy 5 29 1 Deuteronomy 5 29 3 Deuteronomy 5 29 2 Deuteronomy 5 29 4 Deuteronomy 5 29 3 Deuteronomy 5 29 5 Deuteronomy 5 29 4 Deuteronomy 5 29 6 Deuteronomy 5 29 5 Deuteronomy 5 29 7 Deuteronomy 5 29 6 Deuteronomy 5 29 8 Deuteronomy 5 29 7 Deuteronomy 5 29 9 Deuteronomy 5 29 8 Deuteronomy 5 29 10 Deuteronomy 5 29 9 Deuteronomy 5 29 11 Deuteronomy 5 29 10 Deuteronomy 5 29 12 Deuteronomy 5 29 11 Deuteronomy 5 29 13 Deuteronomy 5 29 12 Deuteronomy 5 29 14 Deuteronomy 5 29 13 Deuteronomy 5 29 15 Deuteronomy 5 29 14 Deuteronomy 5 29 16 Deuteronomy 5 29 15 Deuteronomy 5 29 17 Deuteronomy 5 29 16 Deuteronomy 5 29 18 Deuteronomy 5 29 17 Deuteronomy 5 29 19 Deuteronomy 5 29 18 Deuteronomy 5 29 20 Deuteronomy 5 29 19 Deuteronomy 5 29 21 Deuteronomy 5 29 20 Deuteronomy 5 29 22 Deuteronomy 5 29 21 Deuteronomy 5 29 23 Deuteronomy 5 29 22 Deuteronomy 5 29 24 Deuteronomy 5 29 23 Deuteronomy 5 29 25 Deuteronomy 5 29 24 Deuteronomy 5 29 26 Deuteronomy 5 29 25 Deuteronomy 5 29 27 Deuteronomy 5 29 26 Deuteronomy 5 29 28 Deuteronomy 5 29 27 Deuteronomy 5 29 29 Deuteronomy 5 29 28 1 Samuel 9 20 42 1 Samuel 9 20 41 1 Samuel 9 21 1 1 Samuel 9 21 2 1 Samuel 9 21 2 1 Samuel 9 21 3 1 Samuel 9 21 3 1 Samuel 9 21 4 1 Samuel 9 21 4 1 Samuel 9 21 5 1 Samuel 9 21 5 1 Samuel 9 21 6 1 Samuel 9 21 6 1 Samuel 9 21 7 1 Samuel 9 21 7 1 Samuel 9 21 8 1 Samuel 9 21 8 1 Samuel 9 21 9 1 Samuel 9 21 9 1 Samuel 9 21 10 1 Samuel 9 21 10 1 Samuel 9 21 11 1 Samuel 9 21 11 1 Samuel 9 21 12 1 Samuel 9 21 12 1 Samuel 9 21 13 1 Samuel 9 21 13 1 Samuel 9 21 14 1 Samuel 9 21 14 1 Samuel 9 21 15 1 Samuel 9 21 15 1 Samuel 9 21 16 1 Samuel 9 23 28 1 Samuel 9 24 1 1 Samuel 9 23 29 1 Samuel 9 24 1 1 Samuel 9 24 1 1 Samuel 9 24 2 1 Samuel 9 24 2 1 Samuel 9 24 3 1 Samuel 9 24 3 1 Samuel 9 24 4 1 Samuel 9 24 4 1 Samuel 9 24 5 1 Samuel 9 24 5 1 Samuel 9 24 6 1 Samuel 9 24 6 1 Samuel 9 24 7 1 Samuel 9 24 7 1 Samuel 9 24 8 1 Samuel 9 24 8 1 Samuel 9 24 9 1 Samuel 9 24 9 1 Samuel 9 24 10 1 Samuel 9 24 10 1 Samuel 9 24 11 1 Samuel 9 24 11 1 Samuel 9 24 12 1 Samuel 9 24 12 1 Samuel 9 24 13 1 Samuel 9 24 13 1 Samuel 9 24 14 1 Samuel 9 24 14 1 Samuel 9 24 15 1 Samuel 9 24 15 1 Samuel 9 24 16 1 Samuel 9 24 16 1 Samuel 9 24 17 1 Samuel 9 24 17 1 Samuel 9 24 18 1 Samuel 9 24 18 1 Samuel 9 24 19 1 Samuel 9 24 19 1 Samuel 9 24 20 1 Samuel 9 24 20 1 Samuel 9 24 21 1 Samuel 9 24 21 1 Samuel 9 24 22 1 Samuel 9 24 22 1 Samuel 9 24 23 2 Samuel 10 18 33 2 Samuel 10 19 1 2 Samuel 10 19 1 2 Samuel 10 19 2 2 Samuel 10 19 2 2 Samuel 10 19 3 2 Samuel 10 19 3 2 Samuel 10 19 4 2 Samuel 10 19 4 2 Samuel 10 19 5 2 Samuel 10 19 5 2 Samuel 10 19 6 2 Samuel 10 19 6 2 Samuel 10 19 7 2 Samuel 10 19 7 2 Samuel 10 19 8 2 Samuel 10 19 8 2 Samuel 10 19 9 2 Samuel 10 19 9 2 Samuel 10 19 10 2 Samuel 10 19 10 2 Samuel 10 19 11 2 Samuel 10 19 11 2 Samuel 10 19 12 2 Samuel 10 19 12 2 Samuel 10 19 13 2 Samuel 10 19 13 2 Samuel 10 19 14 2 Samuel 10 19 14 2 Samuel 10 19 15 2 Samuel 10 19 15 2 Samuel 10 19 16 2 Samuel 10 19 16 2 Samuel 10 19 17 2 Samuel 10 19 17 2 Samuel 10 19 18 2 Samuel 10 19 18 2 Samuel 10 19 19 2 Samuel 10 19 19 2 Samuel 10 19 20 2 Samuel 10 19 20 2 Samuel 10 19 21 2 Samuel 10 19 21 2 Samuel 10 19 22 2 Samuel 10 19 22 2 Samuel 10 19 23 2 Samuel 10 19 23 2 Samuel 10 19 24 2 Samuel 10 19 24 2 Samuel 10 19 25 2 Samuel 10 19 25 2 Samuel 10 19 26 2 Samuel 10 19 26 2 Samuel 10 19 27 2 Samuel 10 19 27 2 Samuel 10 19 28 2 Samuel 10 19 28 2 Samuel 10 19 29 2 Samuel 10 19 29 2 Samuel 10 19 30 2 Samuel 10 19 30 2 Samuel 10 19 31 2 Samuel 10 19 31 2 Samuel 10 19 32 2 Samuel 10 19 32 2 Samuel 10 19 33 2 Samuel 10 19 33 2 Samuel 10 19 34 2 Samuel 10 19 34 2 Samuel 10 19 35 2 Samuel 10 19 35 2 Samuel 10 19 36 2 Samuel 10 19 36 2 Samuel 10 19 37 2 Samuel 10 19 37 2 Samuel 10 19 38 2 Samuel 10 19 38 2 Samuel 10 19 39 2 Samuel 10 19 39 2 Samuel 10 19 40 2 Samuel 10 19 40 2 Samuel 10 19 41 2 Samuel 10 19 41 2 Samuel 10 19 42 2 Samuel 10 19 42 2 Samuel 10 19 43 2 Samuel 10 19 43 2 Samuel 10 19 44 1 Kings 11 4 21 1 Kings 11 5 1 1 Kings 11 4 22 1 Kings 11 5 2 1 Kings 11 4 23 1 Kings 11 5 3 1 Kings 11 4 24 1 Kings 11 5 4 1 Kings 11 4 25 1 Kings 11 5 5 1 Kings 11 4 26 1 Kings 11 5 6 1 Kings 11 4 27 1 Kings 11 5 7 1 Kings 11 4 28 1 Kings 11 5 8 1 Kings 11 4 29 1 Kings 11 5 9 1 Kings 11 4 30 1 Kings 11 5 10 1 Kings 11 4 31 1 Kings 11 5 11 1 Kings 11 4 32 1 Kings 11 5 12 1 Kings 11 4 33 1 Kings 11 5 13 1 Kings 11 4 34 1 Kings 11 5 14 1 Kings 11 5 1 1 Kings 11 5 15 1 Kings 11 5 2 1 Kings 11 5 16 1 Kings 11 5 3 1 Kings 11 5 17 1 Kings 11 5 4 1 Kings 11 5 18 1 Kings 11 5 5 1 Kings 11 5 19 1 Kings 11 5 6 1 Kings 11 5 20 1 Kings 11 5 7 1 Kings 11 5 21 1 Kings 11 5 8 1 Kings 11 5 22 1 Kings 11 5 9 1 Kings 11 5 23 1 Kings 11 5 10 1 Kings 11 5 24 1 Kings 11 5 11 1 Kings 11 5 25 1 Kings 11 5 12 1 Kings 11 5 26 1 Kings 11 5 13 1 Kings 11 5 27 1 Kings 11 5 14 1 Kings 11 5 28 1 Kings 11 5 15 1 Kings 11 5 29 1 Kings 11 5 16 1 Kings 11 5 30 1 Kings 11 5 17 1 Kings 11 5 31 1 Kings 11 5 18 1 Kings 11 5 32 1 Kings 11 18 33 1 Kings 11 18 33 1 Kings 11 18 33 1 Kings 11 18 34 1 Kings 11 22 43 1 Kings 11 22 43 1 Kings 11 22 43 1 Kings 11 22 44 1 Kings 11 22 44 1 Kings 11 22 45 1 Kings 11 22 45 1 Kings 11 22 46 1 Kings 11 22 46 1 Kings 11 22 47 1 Kings 11 22 47 1 Kings 11 22 48 1 Kings 11 22 48 1 Kings 11 22 49 1 Kings 11 22 49 1 Kings 11 22 50 1 Kings 11 22 50 1 Kings 11 22 51 1 Kings 11 22 51 1 Kings 11 22 52 1 Kings 11 22 52 1 Kings 11 22 53 1 Kings 11 22 53 1 Kings 11 22 54 2 Kings 12 11 21 2 Kings 12 12 1 2 Kings 12 12 1 2 Kings 12 12 2 2 Kings 12 12 2 2 Kings 12 12 3 2 Kings 12 12 3 2 Kings 12 12 4 2 Kings 12 12 4 2 Kings 12 12 5 2 Kings 12 12 5 2 Kings 12 12 6 2 Kings 12 12 6 2 Kings 12 12 7 2 Kings 12 12 7 2 Kings 12 12 8 2 Kings 12 12 8 2 Kings 12 12 9 2 Kings 12 12 9 2 Kings 12 12 10 2 Kings 12 12 10 2 Kings 12 12 11 2 Kings 12 12 11 2 Kings 12 12 12 2 Kings 12 12 12 2 Kings 12 12 13 2 Kings 12 12 13 2 Kings 12 12 14 2 Kings 12 12 14 2 Kings 12 12 15 2 Kings 12 12 15 2 Kings 12 12 16 2 Kings 12 12 16 2 Kings 12 12 17 2 Kings 12 12 17 2 Kings 12 12 18 2 Kings 12 12 18 2 Kings 12 12 19 2 Kings 12 12 19 2 Kings 12 12 20 2 Kings 12 12 20 2 Kings 12 12 21 2 Kings 12 12 21 2 Kings 12 12 22 1 Chronicles 13 6 1 1 Chronicles 13 5 27 1 Chronicles 13 6 2 1 Chronicles 13 5 28 1 Chronicles 13 6 3 1 Chronicles 13 5 29 1 Chronicles 13 6 4 1 Chronicles 13 5 30 1 Chronicles 13 6 5 1 Chronicles 13 5 31 1 Chronicles 13 6 6 1 Chronicles 13 5 32 1 Chronicles 13 6 7 1 Chronicles 13 5 33 1 Chronicles 13 6 8 1 Chronicles 13 5 34 1 Chronicles 13 6 9 1 Chronicles 13 5 35 1 Chronicles 13 6 10 1 Chronicles 13 5 36 1 Chronicles 13 6 11 1 Chronicles 13 5 37 1 Chronicles 13 6 12 1 Chronicles 13 5 38 1 Chronicles 13 6 13 1 Chronicles 13 5 39 1 Chronicles 13 6 14 1 Chronicles 13 5 40 1 Chronicles 13 6 15 1 Chronicles 13 5 41 1 Chronicles 13 6 16 1 Chronicles 13 6 1 1 Chronicles 13 6 17 1 Chronicles 13 6 2 1 Chronicles 13 6 18 1 Chronicles 13 6 3 1 Chronicles 13 6 19 1 Chronicles 13 6 4 1 Chronicles 13 6 20 1 Chronicles 13 6 5 1 Chronicles 13 6 21 1 Chronicles 13 6 6 1 Chronicles 13 6 22 1 Chronicles 13 6 7 1 Chronicles 13 6 23 1 Chronicles 13 6 8 1 Chronicles 13 6 24 1 Chronicles 13 6 9 1 Chronicles 13 6 25 1 Chronicles 13 6 10 1 Chronicles 13 6 26 1 Chronicles 13 6 11 1 Chronicles 13 6 27 1 Chronicles 13 6 12 1 Chronicles 13 6 28 1 Chronicles 13 6 13 1 Chronicles 13 6 29 1 Chronicles 13 6 14 1 Chronicles 13 6 30 1 Chronicles 13 6 15 1 Chronicles 13 6 31 1 Chronicles 13 6 16 1 Chronicles 13 6 32 1 Chronicles 13 6 17 1 Chronicles 13 6 33 1 Chronicles 13 6 18 1 Chronicles 13 6 34 1 Chronicles 13 6 19 1 Chronicles 13 6 35 1 Chronicles 13 6 20 1 Chronicles 13 6 36 1 Chronicles 13 6 21 1 Chronicles 13 6 37 1 Chronicles 13 6 22 1 Chronicles 13 6 38 1 Chronicles 13 6 23 1 Chronicles 13 6 39 1 Chronicles 13 6 24 1 Chronicles 13 6 40 1 Chronicles 13 6 25 1 Chronicles 13 6 41 1 Chronicles 13 6 26 1 Chronicles 13 6 42 1 Chronicles 13 6 27 1 Chronicles 13 6 43 1 Chronicles 13 6 28 1 Chronicles 13 6 44 1 Chronicles 13 6 29 1 Chronicles 13 6 45 1 Chronicles 13 6 30 1 Chronicles 13 6 46 1 Chronicles 13 6 31 1 Chronicles 13 6 47 1 Chronicles 13 6 32 1 Chronicles 13 6 48 1 Chronicles 13 6 33 1 Chronicles 13 6 49 1 Chronicles 13 6 34 1 Chronicles 13 6 50 1 Chronicles 13 6 35 1 Chronicles 13 6 51 1 Chronicles 13 6 36 1 Chronicles 13 6 52 1 Chronicles 13 6 37 1 Chronicles 13 6 53 1 Chronicles 13 6 38 1 Chronicles 13 6 54 1 Chronicles 13 6 39 1 Chronicles 13 6 55 1 Chronicles 13 6 40 1 Chronicles 13 6 56 1 Chronicles 13 6 41 1 Chronicles 13 6 57 1 Chronicles 13 6 42 1 Chronicles 13 6 58 1 Chronicles 13 6 43 1 Chronicles 13 6 59 1 Chronicles 13 6 44 1 Chronicles 13 6 60 1 Chronicles 13 6 45 1 Chronicles 13 6 61 1 Chronicles 13 6 46 1 Chronicles 13 6 62 1 Chronicles 13 6 47 1 Chronicles 13 6 63 1 Chronicles 13 6 48 1 Chronicles 13 6 64 1 Chronicles 13 6 49 1 Chronicles 13 6 65 1 Chronicles 13 6 50 1 Chronicles 13 6 66 1 Chronicles 13 6 51 1 Chronicles 13 6 67 1 Chronicles 13 6 52 1 Chronicles 13 6 68 1 Chronicles 13 6 53 1 Chronicles 13 6 69 1 Chronicles 13 6 54 1 Chronicles 13 6 70 1 Chronicles 13 6 55 1 Chronicles 13 6 71 1 Chronicles 13 6 56 1 Chronicles 13 6 72 1 Chronicles 13 6 57 1 Chronicles 13 6 73 1 Chronicles 13 6 58 1 Chronicles 13 6 74 1 Chronicles 13 6 59 1 Chronicles 13 6 75 1 Chronicles 13 6 60 1 Chronicles 13 6 76 1 Chronicles 13 6 61 1 Chronicles 13 6 77 1 Chronicles 13 6 62 1 Chronicles 13 6 78 1 Chronicles 13 6 63 1 Chronicles 13 6 79 1 Chronicles 13 6 64 1 Chronicles 13 6 80 1 Chronicles 13 6 65 1 Chronicles 13 6 81 1 Chronicles 13 6 66 1 Chronicles 13 12 4 1 Chronicles 13 12 4 1 Chronicles 13 12 4 1 Chronicles 13 12 5 1 Chronicles 13 12 5 1 Chronicles 13 12 6 1 Chronicles 13 12 6 1 Chronicles 13 12 7 1 Chronicles 13 12 7 1 Chronicles 13 12 8 1 Chronicles 13 12 8 1 Chronicles 13 12 9 1 Chronicles 13 12 9 1 Chronicles 13 12 10 1 Chronicles 13 12 10 1 Chronicles 13 12 11 1 Chronicles 13 12 11 1 Chronicles 13 12 12 1 Chronicles 13 12 12 1 Chronicles 13 12 13 1 Chronicles 13 12 13 1 Chronicles 13 12 14 1 Chronicles 13 12 14 1 Chronicles 13 12 15 1 Chronicles 13 12 15 1 Chronicles 13 12 16 1 Chronicles 13 12 16 1 Chronicles 13 12 17 1 Chronicles 13 12 17 1 Chronicles 13 12 18 1 Chronicles 13 12 18 1 Chronicles 13 12 19 1 Chronicles 13 12 19 1 Chronicles 13 12 20 1 Chronicles 13 12 20 1 Chronicles 13 12 21 1 Chronicles 13 12 21 1 Chronicles 13 12 22 1 Chronicles 13 12 22 1 Chronicles 13 12 23 1 Chronicles 13 12 23 1 Chronicles 13 12 24 1 Chronicles 13 12 24 1 Chronicles 13 12 25 1 Chronicles 13 12 25 1 Chronicles 13 12 26 1 Chronicles 13 12 26 1 Chronicles 13 12 27 1 Chronicles 13 12 27 1 Chronicles 13 12 28 1 Chronicles 13 12 28 1 Chronicles 13 12 29 1 Chronicles 13 12 29 1 Chronicles 13 12 30 1 Chronicles 13 12 30 1 Chronicles 13 12 31 1 Chronicles 13 12 31 1 Chronicles 13 12 32 1 Chronicles 13 12 32 1 Chronicles 13 12 33 1 Chronicles 13 12 33 1 Chronicles 13 12 34 1 Chronicles 13 12 34 1 Chronicles 13 12 35 1 Chronicles 13 12 35 1 Chronicles 13 12 36 1 Chronicles 13 12 36 1 Chronicles 13 12 37 1 Chronicles 13 12 37 1 Chronicles 13 12 38 1 Chronicles 13 12 38 1 Chronicles 13 12 39 1 Chronicles 13 12 39 1 Chronicles 13 12 40 1 Chronicles 13 12 40 1 Chronicles 13 12 41 2 Chronicles 14 2 1 2 Chronicles 14 1 18 2 Chronicles 14 2 2 2 Chronicles 14 2 1 2 Chronicles 14 2 3 2 Chronicles 14 2 2 2 Chronicles 14 2 4 2 Chronicles 14 2 3 2 Chronicles 14 2 5 2 Chronicles 14 2 4 2 Chronicles 14 2 6 2 Chronicles 14 2 5 2 Chronicles 14 2 7 2 Chronicles 14 2 6 2 Chronicles 14 2 8 2 Chronicles 14 2 7 2 Chronicles 14 2 9 2 Chronicles 14 2 8 2 Chronicles 14 2 10 2 Chronicles 14 2 9 2 Chronicles 14 2 11 2 Chronicles 14 2 10 2 Chronicles 14 2 12 2 Chronicles 14 2 11 2 Chronicles 14 2 13 2 Chronicles 14 2 12 2 Chronicles 14 2 14 2 Chronicles 14 2 13 2 Chronicles 14 2 15 2 Chronicles 14 2 14 2 Chronicles 14 2 16 2 Chronicles 14 2 15 2 Chronicles 14 2 17 2 Chronicles 14 2 16 2 Chronicles 14 2 18 2 Chronicles 14 2 17 2 Chronicles 14 14 1 2 Chronicles 14 13 23 2 Chronicles 14 14 2 2 Chronicles 14 14 1 2 Chronicles 14 14 3 2 Chronicles 14 14 2 2 Chronicles 14 14 4 2 Chronicles 14 14 3 2 Chronicles 14 14 5 2 Chronicles 14 14 4 2 Chronicles 14 14 6 2 Chronicles 14 14 5 2 Chronicles 14 14 7 2 Chronicles 14 14 6 2 Chronicles 14 14 8 2 Chronicles 14 14 7 2 Chronicles 14 14 9 2 Chronicles 14 14 8 2 Chronicles 14 14 10 2 Chronicles 14 14 9 2 Chronicles 14 14 11 2 Chronicles 14 14 10 2 Chronicles 14 14 12 2 Chronicles 14 14 11 2 Chronicles 14 14 13 2 Chronicles 14 14 12 2 Chronicles 14 14 14 2 Chronicles 14 14 13 2 Chronicles 14 14 15 2 Chronicles 14 14 14 Nehemiah 16 4 1 Nehemiah 16 3 33 Nehemiah 16 4 2 Nehemiah 16 3 34 Nehemiah 16 4 3 Nehemiah 16 3 35 Nehemiah 16 4 4 Nehemiah 16 3 36 Nehemiah 16 4 5 Nehemiah 16 3 37 Nehemiah 16 4 6 Nehemiah 16 3 38 Nehemiah 16 4 7 Nehemiah 16 4 1 Nehemiah 16 4 8 Nehemiah 16 4 2 Nehemiah 16 4 9 Nehemiah 16 4 3 Nehemiah 16 4 10 Nehemiah 16 4 4 Nehemiah 16 4 11 Nehemiah 16 4 5 Nehemiah 16 4 12 Nehemiah 16 4 6 Nehemiah 16 4 13 Nehemiah 16 4 7 Nehemiah 16 4 14 Nehemiah 16 4 8 Nehemiah 16 4 15 Nehemiah 16 4 9 Nehemiah 16 4 16 Nehemiah 16 4 10 Nehemiah 16 4 17 Nehemiah 16 4 11 Nehemiah 16 4 18 Nehemiah 16 4 12 Nehemiah 16 4 19 Nehemiah 16 4 13 Nehemiah 16 4 20 Nehemiah 16 4 14 Nehemiah 16 4 21 Nehemiah 16 4 15 Nehemiah 16 4 22 Nehemiah 16 4 16 Nehemiah 16 4 23 Nehemiah 16 4 17 Nehemiah 16 7 68 Nehemiah 16 7 67 Nehemiah 16 7 69 Nehemiah 16 7 68 Nehemiah 16 7 70 Nehemiah 16 7 69 Nehemiah 16 7 71 Nehemiah 16 7 70 Nehemiah 16 7 72 Nehemiah 16 7 71 Nehemiah 16 7 73 Nehemiah 16 7 72 Nehemiah 16 9 38 Nehemiah 16 10 1 Nehemiah 16 10 1 Nehemiah 16 10 2 Nehemiah 16 10 2 Nehemiah 16 10 3 Nehemiah 16 10 3 Nehemiah 16 10 4 Nehemiah 16 10 4 Nehemiah 16 10 5 Nehemiah 16 10 5 Nehemiah 16 10 6 Nehemiah 16 10 6 Nehemiah 16 10 7 Nehemiah 16 10 7 Nehemiah 16 10 8 Nehemiah 16 10 8 Nehemiah 16 10 9 Nehemiah 16 10 9 Nehemiah 16 10 10 Nehemiah 16 10 10 Nehemiah 16 10 11 Nehemiah 16 10 11 Nehemiah 16 10 12 Nehemiah 16 10 12 Nehemiah 16 10 13 Nehemiah 16 10 13 Nehemiah 16 10 14 Nehemiah 16 10 14 Nehemiah 16 10 15 Nehemiah 16 10 15 Nehemiah 16 10 16 Nehemiah 16 10 16 Nehemiah 16 10 17 Nehemiah 16 10 17 Nehemiah 16 10 18 Nehemiah 16 10 18 Nehemiah 16 10 19 Nehemiah 16 10 19 Nehemiah 16 10 20 Nehemiah 16 10 20 Nehemiah 16 10 21 Nehemiah 16 10 21 Nehemiah 16 10 22 Nehemiah 16 10 22 Nehemiah 16 10 23 Nehemiah 16 10 23 Nehemiah 16 10 24 Nehemiah 16 10 24 Nehemiah 16 10 25 Nehemiah 16 10 25 Nehemiah 16 10 26 Nehemiah 16 10 26 Nehemiah 16 10 27 Nehemiah 16 10 27 Nehemiah 16 10 28 Nehemiah 16 10 28 Nehemiah 16 10 29 Nehemiah 16 10 29 Nehemiah 16 10 30 Nehemiah 16 10 30 Nehemiah 16 10 31 Nehemiah 16 10 31 Nehemiah 16 10 32 Nehemiah 16 10 32 Nehemiah 16 10 33 Nehemiah 16 10 33 Nehemiah 16 10 34 Nehemiah 16 10 34 Nehemiah 16 10 35 Nehemiah 16 10 35 Nehemiah 16 10 36 Nehemiah 16 10 36 Nehemiah 16 10 37 Nehemiah 16 10 37 Nehemiah 16 10 38 Nehemiah 16 10 38 Nehemiah 16 10 39 Nehemiah 16 10 39 Nehemiah 16 10 40 Job 18 41 1 Job 18 40 25 Job 18 41 2 Job 18 40 26 Job 18 41 3 Job 18 40 27 Job 18 41 4 Job 18 40 28 Job 18 41 5 Job 18 40 29 Job 18 41 6 Job 18 40 30 Job 18 41 7 Job 18 40 31 Job 18 41 8 Job 18 40 32 Job 18 41 9 Job 18 41 1 Job 18 41 10 Job 18 41 2 Job 18 41 11 Job 18 41 3 Job 18 41 12 Job 18 41 4 Job 18 41 13 Job 18 41 5 Job 18 41 14 Job 18 41 6 Job 18 41 15 Job 18 41 7 Job 18 41 16 Job 18 41 8 Job 18 41 17 Job 18 41 9 Job 18 41 18 Job 18 41 10 Job 18 41 19 Job 18 41 11 Job 18 41 20 Job 18 41 12 Job 18 41 21 Job 18 41 13 Job 18 41 22 Job 18 41 14 Job 18 41 23 Job 18 41 15 Job 18 41 24 Job 18 41 16 Job 18 41 25 Job 18 41 17 Job 18 41 26 Job 18 41 18 Job 18 41 27 Job 18 41 19 Job 18 41 28 Job 18 41 20 Job 18 41 29 Job 18 41 21 Job 18 41 30 Job 18 41 22 Job 18 41 31 Job 18 41 23 Job 18 41 32 Job 18 41 24 Job 18 41 33 Job 18 41 25 Job 18 41 34 Job 18 41 26 Psalms 19 3 0 Psalms 19 3 1 Psalms 19 3 1 Psalms 19 3 2 Psalms 19 3 2 Psalms 19 3 3 Psalms 19 3 3 Psalms 19 3 4 Psalms 19 3 4 Psalms 19 3 5 Psalms 19 3 5 Psalms 19 3 6 Psalms 19 3 6 Psalms 19 3 7 Psalms 19 3 7 Psalms 19 3 8 Psalms 19 3 8 Psalms 19 3 9 Psalms 19 4 0 Psalms 19 4 1 Psalms 19 4 1 Psalms 19 4 2 Psalms 19 4 2 Psalms 19 4 3 Psalms 19 4 3 Psalms 19 4 4 Psalms 19 4 4 Psalms 19 4 5 Psalms 19 4 5 Psalms 19 4 6 Psalms 19 4 6 Psalms 19 4 7 Psalms 19 4 7 Psalms 19 4 8 Psalms 19 4 8 Psalms 19 4 9 Psalms 19 5 0 Psalms 19 5 1 Psalms 19 5 1 Psalms 19 5 2 Psalms 19 5 2 Psalms 19 5 3 Psalms 19 5 3 Psalms 19 5 4 Psalms 19 5 4 Psalms 19 5 5 Psalms 19 5 5 Psalms 19 5 6 Psalms 19 5 6 Psalms 19 5 7 Psalms 19 5 7 Psalms 19 5 8 Psalms 19 5 8 Psalms 19 5 9 Psalms 19 5 9 Psalms 19 5 10 Psalms 19 5 10 Psalms 19 5 11 Psalms 19 5 11 Psalms 19 5 12 Psalms 19 5 12 Psalms 19 5 13 Psalms 19 6 0 Psalms 19 6 1 Psalms 19 6 1 Psalms 19 6 2 Psalms 19 6 2 Psalms 19 6 3 Psalms 19 6 3 Psalms 19 6 4 Psalms 19 6 4 Psalms 19 6 5 Psalms 19 6 5 Psalms 19 6 6 Psalms 19 6 6 Psalms 19 6 7 Psalms 19 6 7 Psalms 19 6 8 Psalms 19 6 8 Psalms 19 6 9 Psalms 19 6 9 Psalms 19 6 10 Psalms 19 6 10 Psalms 19 6 11 Psalms 19 7 0 Psalms 19 7 1 Psalms 19 7 1 Psalms 19 7 2 Psalms 19 7 2 Psalms 19 7 3 Psalms 19 7 3 Psalms 19 7 4 Psalms 19 7 4 Psalms 19 7 5 Psalms 19 7 5 Psalms 19 7 6 Psalms 19 7 6 Psalms 19 7 7 Psalms 19 7 7 Psalms 19 7 8 Psalms 19 7 8 Psalms 19 7 9 Psalms 19 7 9 Psalms 19 7 10 Psalms 19 7 10 Psalms 19 7 11 Psalms 19 7 11 Psalms 19 7 12 Psalms 19 7 12 Psalms 19 7 13 Psalms 19 7 13 Psalms 19 7 14 Psalms 19 7 14 Psalms 19 7 15 Psalms 19 7 15 Psalms 19 7 16 Psalms 19 7 16 Psalms 19 7 17 Psalms 19 7 17 Psalms 19 7 18 Psalms 19 8 0 Psalms 19 8 1 Psalms 19 8 1 Psalms 19 8 2 Psalms 19 8 2 Psalms 19 8 3 Psalms 19 8 3 Psalms 19 8 4 Psalms 19 8 4 Psalms 19 8 5 Psalms 19 8 5 Psalms 19 8 6 Psalms 19 8 6 Psalms 19 8 7 Psalms 19 8 7 Psalms 19 8 8 Psalms 19 8 8 Psalms 19 8 9 Psalms 19 8 9 Psalms 19 8 10 Psalms 19 9 0 Psalms 19 9 1 Psalms 19 9 1 Psalms 19 9 2 Psalms 19 9 2 Psalms 19 9 3 Psalms 19 9 3 Psalms 19 9 4 Psalms 19 9 4 Psalms 19 9 5 Psalms 19 9 5 Psalms 19 9 6 Psalms 19 9 6 Psalms 19 9 7 Psalms 19 9 7 Psalms 19 9 8 Psalms 19 9 8 Psalms 19 9 9 Psalms 19 9 9 Psalms 19 9 10 Psalms 19 9 10 Psalms 19 9 11 Psalms 19 9 11 Psalms 19 9 12 Psalms 19 9 12 Psalms 19 9 13 Psalms 19 9 13 Psalms 19 9 14 Psalms 19 9 14 Psalms 19 9 15 Psalms 19 9 15 Psalms 19 9 16 Psalms 19 9 16 Psalms 19 9 17 Psalms 19 9 17 Psalms 19 9 18 Psalms 19 9 18 Psalms 19 9 19 Psalms 19 9 19 Psalms 19 9 20 Psalms 19 9 20 Psalms 19 9 21 Psalms 19 12 0 Psalms 19 12 1 Psalms 19 12 1 Psalms 19 12 2 Psalms 19 12 2 Psalms 19 12 3 Psalms 19 12 3 Psalms 19 12 4 Psalms 19 12 4 Psalms 19 12 5 Psalms 19 12 5 Psalms 19 12 6 Psalms 19 12 6 Psalms 19 12 7 Psalms 19 12 7 Psalms 19 12 8 Psalms 19 12 8 Psalms 19 12 9 Psalms 19 13 0 Psalms 19 13 1 Psalms 19 13 1 Psalms 19 13 2 Psalms 19 13 2 Psalms 19 13 3 Psalms 19 13 3 Psalms 19 13 4 Psalms 19 13 4 Psalms 19 13 5 Psalms 19 13 5 Psalms 19 13 6 Psalms 19 18 0 Psalms 19 18 1 Psalms 19 18 1 Psalms 19 18 2 Psalms 19 18 2 Psalms 19 18 3 Psalms 19 18 3 Psalms 19 18 4 Psalms 19 18 4 Psalms 19 18 5 Psalms 19 18 5 Psalms 19 18 6 Psalms 19 18 6 Psalms 19 18 7 Psalms 19 18 7 Psalms 19 18 8 Psalms 19 18 8 Psalms 19 18 9 Psalms 19 18 9 Psalms 19 18 10 Psalms 19 18 10 Psalms 19 18 11 Psalms 19 18 11 Psalms 19 18 12 Psalms 19 18 12 Psalms 19 18 13 Psalms 19 18 13 Psalms 19 18 14 Psalms 19 18 14 Psalms 19 18 15 Psalms 19 18 15 Psalms 19 18 16 Psalms 19 18 16 Psalms 19 18 17 Psalms 19 18 17 Psalms 19 18 18 Psalms 19 18 18 Psalms 19 18 19 Psalms 19 18 19 Psalms 19 18 20 Psalms 19 18 20 Psalms 19 18 21 Psalms 19 18 21 Psalms 19 18 22 Psalms 19 18 22 Psalms 19 18 23 Psalms 19 18 23 Psalms 19 18 24 Psalms 19 18 24 Psalms 19 18 25 Psalms 19 18 25 Psalms 19 18 26 Psalms 19 18 26 Psalms 19 18 27 Psalms 19 18 27 Psalms 19 18 28 Psalms 19 18 28 Psalms 19 18 29 Psalms 19 18 29 Psalms 19 18 30 Psalms 19 18 30 Psalms 19 18 31 Psalms 19 18 31 Psalms 19 18 32 Psalms 19 18 32 Psalms 19 18 33 Psalms 19 18 33 Psalms 19 18 34 Psalms 19 18 34 Psalms 19 18 35 Psalms 19 18 35 Psalms 19 18 36 Psalms 19 18 36 Psalms 19 18 37 Psalms 19 18 37 Psalms 19 18 38 Psalms 19 18 38 Psalms 19 18 39 Psalms 19 18 39 Psalms 19 18 40 Psalms 19 18 40 Psalms 19 18 41 Psalms 19 18 41 Psalms 19 18 42 Psalms 19 18 42 Psalms 19 18 43 Psalms 19 18 43 Psalms 19 18 44 Psalms 19 18 44 Psalms 19 18 45 Psalms 19 18 45 Psalms 19 18 46 Psalms 19 18 46 Psalms 19 18 47 Psalms 19 18 47 Psalms 19 18 48 Psalms 19 18 48 Psalms 19 18 49 Psalms 19 18 49 Psalms 19 18 50 Psalms 19 18 50 Psalms 19 18 51 Psalms 19 19 0 Psalms 19 19 1 Psalms 19 19 1 Psalms 19 19 2 Psalms 19 19 2 Psalms 19 19 3 Psalms 19 19 3 Psalms 19 19 4 Psalms 19 19 4 Psalms 19 19 5 Psalms 19 19 5 Psalms 19 19 6 Psalms 19 19 6 Psalms 19 19 7 Psalms 19 19 7 Psalms 19 19 8 Psalms 19 19 8 Psalms 19 19 9 Psalms 19 19 9 Psalms 19 19 10 Psalms 19 19 10 Psalms 19 19 11 Psalms 19 19 11 Psalms 19 19 12 Psalms 19 19 12 Psalms 19 19 13 Psalms 19 19 13 Psalms 19 19 14 Psalms 19 19 14 Psalms 19 19 15 Psalms 19 20 0 Psalms 19 20 1 Psalms 19 20 1 Psalms 19 20 2 Psalms 19 20 2 Psalms 19 20 3 Psalms 19 20 3 Psalms 19 20 4 Psalms 19 20 4 Psalms 19 20 5 Psalms 19 20 5 Psalms 19 20 6 Psalms 19 20 6 Psalms 19 20 7 Psalms 19 20 7 Psalms 19 20 8 Psalms 19 20 8 Psalms 19 20 9 Psalms 19 20 9 Psalms 19 20 10 Psalms 19 21 0 Psalms 19 21 1 Psalms 19 21 1 Psalms 19 21 2 Psalms 19 21 2 Psalms 19 21 3 Psalms 19 21 3 Psalms 19 21 4 Psalms 19 21 4 Psalms 19 21 5 Psalms 19 21 5 Psalms 19 21 6 Psalms 19 21 6 Psalms 19 21 7 Psalms 19 21 7 Psalms 19 21 8 Psalms 19 21 8 Psalms 19 21 9 Psalms 19 21 9 Psalms 19 21 10 Psalms 19 21 10 Psalms 19 21 11 Psalms 19 21 11 Psalms 19 21 12 Psalms 19 21 12 Psalms 19 21 13 Psalms 19 21 13 Psalms 19 21 14 Psalms 19 22 0 Psalms 19 22 1 Psalms 19 22 1 Psalms 19 22 2 Psalms 19 22 2 Psalms 19 22 3 Psalms 19 22 3 Psalms 19 22 4 Psalms 19 22 4 Psalms 19 22 5 Psalms 19 22 5 Psalms 19 22 6 Psalms 19 22 6 Psalms 19 22 7 Psalms 19 22 7 Psalms 19 22 8 Psalms 19 22 8 Psalms 19 22 9 Psalms 19 22 9 Psalms 19 22 10 Psalms 19 22 10 Psalms 19 22 11 Psalms 19 22 11 Psalms 19 22 12 Psalms 19 22 12 Psalms 19 22 13 Psalms 19 22 13 Psalms 19 22 14 Psalms 19 22 14 Psalms 19 22 15 Psalms 19 22 15 Psalms 19 22 16 Psalms 19 22 16 Psalms 19 22 17 Psalms 19 22 17 Psalms 19 22 18 Psalms 19 22 18 Psalms 19 22 19 Psalms 19 22 19 Psalms 19 22 20 Psalms 19 22 20 Psalms 19 22 21 Psalms 19 22 21 Psalms 19 22 22 Psalms 19 22 22 Psalms 19 22 23 Psalms 19 22 23 Psalms 19 22 24 Psalms 19 22 24 Psalms 19 22 25 Psalms 19 22 25 Psalms 19 22 26 Psalms 19 22 26 Psalms 19 22 27 Psalms 19 22 27 Psalms 19 22 28 Psalms 19 22 28 Psalms 19 22 29 Psalms 19 22 29 Psalms 19 22 30 Psalms 19 22 30 Psalms 19 22 31 Psalms 19 22 31 Psalms 19 22 32 Psalms 19 30 0 Psalms 19 30 1 Psalms 19 30 1 Psalms 19 30 2 Psalms 19 30 2 Psalms 19 30 3 Psalms 19 30 3 Psalms 19 30 4 Psalms 19 30 4 Psalms 19 30 5 Psalms 19 30 5 Psalms 19 30 6 Psalms 19 30 6 Psalms 19 30 7 Psalms 19 30 7 Psalms 19 30 8 Psalms 19 30 8 Psalms 19 30 9 Psalms 19 30 9 Psalms 19 30 10 Psalms 19 30 10 Psalms 19 30 11 Psalms 19 30 11 Psalms 19 30 12 Psalms 19 30 12 Psalms 19 30 13 Psalms 19 31 0 Psalms 19 31 1 Psalms 19 31 1 Psalms 19 31 2 Psalms 19 31 2 Psalms 19 31 3 Psalms 19 31 3 Psalms 19 31 4 Psalms 19 31 4 Psalms 19 31 5 Psalms 19 31 5 Psalms 19 31 6 Psalms 19 31 6 Psalms 19 31 7 Psalms 19 31 7 Psalms 19 31 8 Psalms 19 31 8 Psalms 19 31 9 Psalms 19 31 9 Psalms 19 31 10 Psalms 19 31 10 Psalms 19 31 11 Psalms 19 31 11 Psalms 19 31 12 Psalms 19 31 12 Psalms 19 31 13 Psalms 19 31 13 Psalms 19 31 14 Psalms 19 31 14 Psalms 19 31 15 Psalms 19 31 15 Psalms 19 31 16 Psalms 19 31 16 Psalms 19 31 17 Psalms 19 31 17 Psalms 19 31 18 Psalms 19 31 18 Psalms 19 31 19 Psalms 19 31 19 Psalms 19 31 20 Psalms 19 31 20 Psalms 19 31 21 Psalms 19 31 21 Psalms 19 31 22 Psalms 19 31 22 Psalms 19 31 23 Psalms 19 31 23 Psalms 19 31 24 Psalms 19 31 24 Psalms 19 31 25 Psalms 19 34 0 Psalms 19 34 1 Psalms 19 34 1 Psalms 19 34 2 Psalms 19 34 2 Psalms 19 34 3 Psalms 19 34 3 Psalms 19 34 4 Psalms 19 34 4 Psalms 19 34 5 Psalms 19 34 5 Psalms 19 34 6 Psalms 19 34 6 Psalms 19 34 7 Psalms 19 34 7 Psalms 19 34 8 Psalms 19 34 8 Psalms 19 34 9 Psalms 19 34 9 Psalms 19 34 10 Psalms 19 34 10 Psalms 19 34 11 Psalms 19 34 11 Psalms 19 34 12 Psalms 19 34 12 Psalms 19 34 13 Psalms 19 34 13 Psalms 19 34 14 Psalms 19 34 14 Psalms 19 34 15 Psalms 19 34 15 Psalms 19 34 16 Psalms 19 34 16 Psalms 19 34 17 Psalms 19 34 17 Psalms 19 34 18 Psalms 19 34 18 Psalms 19 34 19 Psalms 19 34 19 Psalms 19 34 20 Psalms 19 34 20 Psalms 19 34 21 Psalms 19 34 21 Psalms 19 34 22 Psalms 19 34 22 Psalms 19 34 23 Psalms 19 36 0 Psalms 19 36 1 Psalms 19 36 1 Psalms 19 36 2 Psalms 19 36 2 Psalms 19 36 3 Psalms 19 36 3 Psalms 19 36 4 Psalms 19 36 4 Psalms 19 36 5 Psalms 19 36 5 Psalms 19 36 6 Psalms 19 36 6 Psalms 19 36 7 Psalms 19 36 7 Psalms 19 36 8 Psalms 19 36 8 Psalms 19 36 9 Psalms 19 36 9 Psalms 19 36 10 Psalms 19 36 10 Psalms 19 36 11 Psalms 19 36 11 Psalms 19 36 12 Psalms 19 36 12 Psalms 19 36 13 Psalms 19 38 0 Psalms 19 38 1 Psalms 19 38 1 Psalms 19 38 2 Psalms 19 38 2 Psalms 19 38 3 Psalms 19 38 3 Psalms 19 38 4 Psalms 19 38 4 Psalms 19 38 5 Psalms 19 38 5 Psalms 19 38 6 Psalms 19 38 6 Psalms 19 38 7 Psalms 19 38 7 Psalms 19 38 8 Psalms 19 38 8 Psalms 19 38 9 Psalms 19 38 9 Psalms 19 38 10 Psalms 19 38 10 Psalms 19 38 11 Psalms 19 38 11 Psalms 19 38 12 Psalms 19 38 12 Psalms 19 38 13 Psalms 19 38 13 Psalms 19 38 14 Psalms 19 38 14 Psalms 19 38 15 Psalms 19 38 15 Psalms 19 38 16 Psalms 19 38 16 Psalms 19 38 17 Psalms 19 38 17 Psalms 19 38 18 Psalms 19 38 18 Psalms 19 38 19 Psalms 19 38 19 Psalms 19 38 20 Psalms 19 38 20 Psalms 19 38 21 Psalms 19 38 21 Psalms 19 38 22 Psalms 19 38 22 Psalms 19 38 23 Psalms 19 39 0 Psalms 19 39 1 Psalms 19 39 1 Psalms 19 39 2 Psalms 19 39 2 Psalms 19 39 3 Psalms 19 39 3 Psalms 19 39 4 Psalms 19 39 4 Psalms 19 39 5 Psalms 19 39 5 Psalms 19 39 6 Psalms 19 39 6 Psalms 19 39 7 Psalms 19 39 7 Psalms 19 39 8 Psalms 19 39 8 Psalms 19 39 9 Psalms 19 39 9 Psalms 19 39 10 Psalms 19 39 10 Psalms 19 39 11 Psalms 19 39 11 Psalms 19 39 12 Psalms 19 39 12 Psalms 19 39 13 Psalms 19 39 13 Psalms 19 39 14 Psalms 19 40 0 Psalms 19 40 1 Psalms 19 40 1 Psalms 19 40 2 Psalms 19 40 2 Psalms 19 40 3 Psalms 19 40 3 Psalms 19 40 4 Psalms 19 40 4 Psalms 19 40 5 Psalms 19 40 5 Psalms 19 40 6 Psalms 19 40 6 Psalms 19 40 7 Psalms 19 40 7 Psalms 19 40 8 Psalms 19 40 8 Psalms 19 40 9 Psalms 19 40 9 Psalms 19 40 10 Psalms 19 40 10 Psalms 19 40 11 Psalms 19 40 11 Psalms 19 40 12 Psalms 19 40 12 Psalms 19 40 13 Psalms 19 40 13 Psalms 19 40 14 Psalms 19 40 14 Psalms 19 40 15 Psalms 19 40 15 Psalms 19 40 16 Psalms 19 40 16 Psalms 19 40 17 Psalms 19 40 17 Psalms 19 40 18 Psalms 19 41 0 Psalms 19 41 1 Psalms 19 41 1 Psalms 19 41 2 Psalms 19 41 2 Psalms 19 41 3 Psalms 19 41 3 Psalms 19 41 4 Psalms 19 41 4 Psalms 19 41 5 Psalms 19 41 5 Psalms 19 41 6 Psalms 19 41 6 Psalms 19 41 7 Psalms 19 41 7 Psalms 19 41 8 Psalms 19 41 8 Psalms 19 41 9 Psalms 19 41 9 Psalms 19 41 10 Psalms 19 41 10 Psalms 19 41 11 Psalms 19 41 11 Psalms 19 41 12 Psalms 19 41 12 Psalms 19 41 13 Psalms 19 41 13 Psalms 19 41 14 Psalms 19 42 0 Psalms 19 42 1 Psalms 19 42 1 Psalms 19 42 2 Psalms 19 42 2 Psalms 19 42 3 Psalms 19 42 3 Psalms 19 42 4 Psalms 19 42 4 Psalms 19 42 5 Psalms 19 42 5 Psalms 19 42 6 Psalms 19 42 6 Psalms 19 42 7 Psalms 19 42 7 Psalms 19 42 8 Psalms 19 42 8 Psalms 19 42 9 Psalms 19 42 9 Psalms 19 42 10 Psalms 19 42 10 Psalms 19 42 11 Psalms 19 42 11 Psalms 19 42 12 Psalms 19 44 0 Psalms 19 44 1 Psalms 19 44 1 Psalms 19 44 2 Psalms 19 44 2 Psalms 19 44 3 Psalms 19 44 3 Psalms 19 44 4 Psalms 19 44 4 Psalms 19 44 5 Psalms 19 44 5 Psalms 19 44 6 Psalms 19 44 6 Psalms 19 44 7 Psalms 19 44 7 Psalms 19 44 8 Psalms 19 44 8 Psalms 19 44 9 Psalms 19 44 9 Psalms 19 44 10 Psalms 19 44 10 Psalms 19 44 11 Psalms 19 44 11 Psalms 19 44 12 Psalms 19 44 12 Psalms 19 44 13 Psalms 19 44 13 Psalms 19 44 14 Psalms 19 44 14 Psalms 19 44 15 Psalms 19 44 15 Psalms 19 44 16 Psalms 19 44 16 Psalms 19 44 17 Psalms 19 44 17 Psalms 19 44 18 Psalms 19 44 18 Psalms 19 44 19 Psalms 19 44 19 Psalms 19 44 20 Psalms 19 44 20 Psalms 19 44 21 Psalms 19 44 21 Psalms 19 44 22 Psalms 19 44 22 Psalms 19 44 23 Psalms 19 44 23 Psalms 19 44 24 Psalms 19 44 24 Psalms 19 44 25 Psalms 19 44 25 Psalms 19 44 26 Psalms 19 44 26 Psalms 19 44 27 Psalms 19 45 0 Psalms 19 45 1 Psalms 19 45 1 Psalms 19 45 2 Psalms 19 45 2 Psalms 19 45 3 Psalms 19 45 3 Psalms 19 45 4 Psalms 19 45 4 Psalms 19 45 5 Psalms 19 45 5 Psalms 19 45 6 Psalms 19 45 6 Psalms 19 45 7 Psalms 19 45 7 Psalms 19 45 8 Psalms 19 45 8 Psalms 19 45 9 Psalms 19 45 9 Psalms 19 45 10 Psalms 19 45 10 Psalms 19 45 11 Psalms 19 45 11 Psalms 19 45 12 Psalms 19 45 12 Psalms 19 45 13 Psalms 19 45 13 Psalms 19 45 14 Psalms 19 45 14 Psalms 19 45 15 Psalms 19 45 15 Psalms 19 45 16 Psalms 19 45 16 Psalms 19 45 17 Psalms 19 45 17 Psalms 19 45 18 Psalms 19 46 0 Psalms 19 46 1 Psalms 19 46 1 Psalms 19 46 2 Psalms 19 46 2 Psalms 19 46 3 Psalms 19 46 3 Psalms 19 46 4 Psalms 19 46 4 Psalms 19 46 5 Psalms 19 46 5 Psalms 19 46 6 Psalms 19 46 6 Psalms 19 46 7 Psalms 19 46 7 Psalms 19 46 8 Psalms 19 46 8 Psalms 19 46 9 Psalms 19 46 9 Psalms 19 46 10 Psalms 19 46 10 Psalms 19 46 11 Psalms 19 46 11 Psalms 19 46 12 Psalms 19 47 0 Psalms 19 47 1 Psalms 19 47 1 Psalms 19 47 2 Psalms 19 47 2 Psalms 19 47 3 Psalms 19 47 3 Psalms 19 47 4 Psalms 19 47 4 Psalms 19 47 5 Psalms 19 47 5 Psalms 19 47 6 Psalms 19 47 6 Psalms 19 47 7 Psalms 19 47 7 Psalms 19 47 8 Psalms 19 47 8 Psalms 19 47 9 Psalms 19 47 9 Psalms 19 47 10 Psalms 19 48 0 Psalms 19 48 1 Psalms 19 48 1 Psalms 19 48 2 Psalms 19 48 2 Psalms 19 48 3 Psalms 19 48 3 Psalms 19 48 4 Psalms 19 48 4 Psalms 19 48 5 Psalms 19 48 5 Psalms 19 48 6 Psalms 19 48 6 Psalms 19 48 7 Psalms 19 48 7 Psalms 19 48 8 Psalms 19 48 8 Psalms 19 48 9 Psalms 19 48 9 Psalms 19 48 10 Psalms 19 48 10 Psalms 19 48 11 Psalms 19 48 11 Psalms 19 48 12 Psalms 19 48 12 Psalms 19 48 13 Psalms 19 48 13 Psalms 19 48 14 Psalms 19 48 14 Psalms 19 48 15 Psalms 19 49 0 Psalms 19 49 1 Psalms 19 49 1 Psalms 19 49 2 Psalms 19 49 2 Psalms 19 49 3 Psalms 19 49 3 Psalms 19 49 4 Psalms 19 49 4 Psalms 19 49 5 Psalms 19 49 5 Psalms 19 49 6 Psalms 19 49 6 Psalms 19 49 7 Psalms 19 49 7 Psalms 19 49 8 Psalms 19 49 8 Psalms 19 49 9 Psalms 19 49 9 Psalms 19 49 10 Psalms 19 49 10 Psalms 19 49 11 Psalms 19 49 11 Psalms 19 49 12 Psalms 19 49 12 Psalms 19 49 13 Psalms 19 49 13 Psalms 19 49 14 Psalms 19 49 14 Psalms 19 49 15 Psalms 19 49 15 Psalms 19 49 16 Psalms 19 49 16 Psalms 19 49 17 Psalms 19 49 17 Psalms 19 49 18 Psalms 19 49 18 Psalms 19 49 19 Psalms 19 49 19 Psalms 19 49 20 Psalms 19 49 20 Psalms 19 49 21 Psalms 19 51 0 Psalms 19 51 1 Psalms 19 51 0 Psalms 19 51 2 Psalms 19 51 1 Psalms 19 51 3 Psalms 19 51 2 Psalms 19 51 4 Psalms 19 51 3 Psalms 19 51 5 Psalms 19 51 4 Psalms 19 51 6 Psalms 19 51 5 Psalms 19 51 7 Psalms 19 51 6 Psalms 19 51 8 Psalms 19 51 7 Psalms 19 51 9 Psalms 19 51 8 Psalms 19 51 10 Psalms 19 51 9 Psalms 19 51 11 Psalms 19 51 10 Psalms 19 51 12 Psalms 19 51 11 Psalms 19 51 13 Psalms 19 51 12 Psalms 19 51 14 Psalms 19 51 13 Psalms 19 51 15 Psalms 19 51 14 Psalms 19 51 16 Psalms 19 51 15 Psalms 19 51 17 Psalms 19 51 16 Psalms 19 51 18 Psalms 19 51 17 Psalms 19 51 19 Psalms 19 51 18 Psalms 19 51 20 Psalms 19 51 19 Psalms 19 51 21 Psalms 19 52 0 Psalms 19 52 1 Psalms 19 52 0 Psalms 19 52 2 Psalms 19 52 1 Psalms 19 52 3 Psalms 19 52 2 Psalms 19 52 4 Psalms 19 52 3 Psalms 19 52 5 Psalms 19 52 4 Psalms 19 52 6 Psalms 19 52 5 Psalms 19 52 7 Psalms 19 52 6 Psalms 19 52 8 Psalms 19 52 7 Psalms 19 52 9 Psalms 19 52 8 Psalms 19 52 10 Psalms 19 52 9 Psalms 19 52 11 Psalms 19 53 0 Psalms 19 53 1 Psalms 19 53 1 Psalms 19 53 2 Psalms 19 53 2 Psalms 19 53 3 Psalms 19 53 3 Psalms 19 53 4 Psalms 19 53 4 Psalms 19 53 5 Psalms 19 53 5 Psalms 19 53 6 Psalms 19 53 6 Psalms 19 53 7 Psalms 19 54 0 Psalms 19 54 1 Psalms 19 54 1 Psalms 19 54 3 Psalms 19 54 2 Psalms 19 54 4 Psalms 19 54 3 Psalms 19 54 5 Psalms 19 54 4 Psalms 19 54 6 Psalms 19 54 5 Psalms 19 54 7 Psalms 19 54 6 Psalms 19 54 8 Psalms 19 54 7 Psalms 19 54 9 Psalms 19 55 0 Psalms 19 55 1 Psalms 19 55 1 Psalms 19 55 2 Psalms 19 55 2 Psalms 19 55 3 Psalms 19 55 3 Psalms 19 55 4 Psalms 19 55 4 Psalms 19 55 5 Psalms 19 55 5 Psalms 19 55 6 Psalms 19 55 6 Psalms 19 55 7 Psalms 19 55 7 Psalms 19 55 8 Psalms 19 55 8 Psalms 19 55 9 Psalms 19 55 9 Psalms 19 55 10 Psalms 19 55 10 Psalms 19 55 11 Psalms 19 55 11 Psalms 19 55 12 Psalms 19 55 12 Psalms 19 55 13 Psalms 19 55 13 Psalms 19 55 14 Psalms 19 55 14 Psalms 19 55 15 Psalms 19 55 15 Psalms 19 55 16 Psalms 19 55 16 Psalms 19 55 17 Psalms 19 55 17 Psalms 19 55 18 Psalms 19 55 18 Psalms 19 55 19 Psalms 19 55 19 Psalms 19 55 20 Psalms 19 55 20 Psalms 19 55 21 Psalms 19 55 21 Psalms 19 55 22 Psalms 19 55 22 Psalms 19 55 23 Psalms 19 55 23 Psalms 19 55 24 Psalms 19 56 0 Psalms 19 56 1 Psalms 19 56 1 Psalms 19 56 2 Psalms 19 56 2 Psalms 19 56 3 Psalms 19 56 3 Psalms 19 56 4 Psalms 19 56 4 Psalms 19 56 5 Psalms 19 56 5 Psalms 19 56 6 Psalms 19 56 6 Psalms 19 56 7 Psalms 19 56 7 Psalms 19 56 8 Psalms 19 56 8 Psalms 19 56 9 Psalms 19 56 9 Psalms 19 56 10 Psalms 19 56 10 Psalms 19 56 11 Psalms 19 56 11 Psalms 19 56 12 Psalms 19 56 12 Psalms 19 56 13 Psalms 19 56 13 Psalms 19 56 14 Psalms 19 57 0 Psalms 19 57 1 Psalms 19 57 1 Psalms 19 57 2 Psalms 19 57 2 Psalms 19 57 3 Psalms 19 57 3 Psalms 19 57 4 Psalms 19 57 4 Psalms 19 57 5 Psalms 19 57 5 Psalms 19 57 6 Psalms 19 57 6 Psalms 19 57 7 Psalms 19 57 7 Psalms 19 57 8 Psalms 19 57 8 Psalms 19 57 9 Psalms 19 57 9 Psalms 19 57 10 Psalms 19 57 10 Psalms 19 57 11 Psalms 19 57 11 Psalms 19 57 12 Psalms 19 58 0 Psalms 19 58 1 Psalms 19 58 1 Psalms 19 58 2 Psalms 19 58 2 Psalms 19 58 3 Psalms 19 58 3 Psalms 19 58 4 Psalms 19 58 4 Psalms 19 58 5 Psalms 19 58 5 Psalms 19 58 6 Psalms 19 58 6 Psalms 19 58 7 Psalms 19 58 7 Psalms 19 58 8 Psalms 19 58 8 Psalms 19 58 9 Psalms 19 58 9 Psalms 19 58 10 Psalms 19 58 10 Psalms 19 58 11 Psalms 19 58 11 Psalms 19 58 12 Psalms 19 59 0 Psalms 19 59 1 Psalms 19 59 1 Psalms 19 59 2 Psalms 19 59 2 Psalms 19 59 3 Psalms 19 59 3 Psalms 19 59 4 Psalms 19 59 4 Psalms 19 59 5 Psalms 19 59 5 Psalms 19 59 6 Psalms 19 59 6 Psalms 19 59 7 Psalms 19 59 7 Psalms 19 59 8 Psalms 19 59 8 Psalms 19 59 9 Psalms 19 59 9 Psalms 19 59 10 Psalms 19 59 10 Psalms 19 59 11 Psalms 19 59 11 Psalms 19 59 12 Psalms 19 59 12 Psalms 19 59 13 Psalms 19 59 13 Psalms 19 59 14 Psalms 19 59 14 Psalms 19 59 15 Psalms 19 59 15 Psalms 19 59 16 Psalms 19 59 16 Psalms 19 59 17 Psalms 19 59 17 Psalms 19 59 18 Psalms 19 60 0 Psalms 19 60 1 Psalms 19 60 1 Psalms 19 60 3 Psalms 19 60 2 Psalms 19 60 4 Psalms 19 60 3 Psalms 19 60 5 Psalms 19 60 4 Psalms 19 60 6 Psalms 19 60 5 Psalms 19 60 7 Psalms 19 60 6 Psalms 19 60 8 Psalms 19 60 7 Psalms 19 60 9 Psalms 19 60 8 Psalms 19 60 10 Psalms 19 60 9 Psalms 19 60 11 Psalms 19 60 10 Psalms 19 60 12 Psalms 19 60 11 Psalms 19 60 13 Psalms 19 60 12 Psalms 19 60 14 Psalms 19 61 0 Psalms 19 61 1 Psalms 19 61 1 Psalms 19 61 2 Psalms 19 61 2 Psalms 19 61 3 Psalms 19 61 3 Psalms 19 61 4 Psalms 19 61 4 Psalms 19 61 5 Psalms 19 61 5 Psalms 19 61 6 Psalms 19 61 6 Psalms 19 61 7 Psalms 19 61 7 Psalms 19 61 8 Psalms 19 61 8 Psalms 19 61 9 Psalms 19 62 0 Psalms 19 62 1 Psalms 19 62 1 Psalms 19 62 2 Psalms 19 62 2 Psalms 19 62 3 Psalms 19 62 3 Psalms 19 62 4 Psalms 19 62 4 Psalms 19 62 5 Psalms 19 62 5 Psalms 19 62 6 Psalms 19 62 6 Psalms 19 62 7 Psalms 19 62 7 Psalms 19 62 8 Psalms 19 62 8 Psalms 19 62 9 Psalms 19 62 9 Psalms 19 62 10 Psalms 19 62 10 Psalms 19 62 11 Psalms 19 62 11 Psalms 19 62 12 Psalms 19 62 12 Psalms 19 62 13 Psalms 19 63 0 Psalms 19 63 1 Psalms 19 63 1 Psalms 19 63 2 Psalms 19 63 2 Psalms 19 63 3 Psalms 19 63 3 Psalms 19 63 4 Psalms 19 63 4 Psalms 19 63 5 Psalms 19 63 5 Psalms 19 63 6 Psalms 19 63 6 Psalms 19 63 7 Psalms 19 63 7 Psalms 19 63 8 Psalms 19 63 8 Psalms 19 63 9 Psalms 19 63 9 Psalms 19 63 10 Psalms 19 63 10 Psalms 19 63 11 Psalms 19 63 11 Psalms 19 63 12 Psalms 19 64 0 Psalms 19 64 1 Psalms 19 64 1 Psalms 19 64 2 Psalms 19 64 2 Psalms 19 64 3 Psalms 19 64 3 Psalms 19 64 4 Psalms 19 64 4 Psalms 19 64 5 Psalms 19 64 5 Psalms 19 64 6 Psalms 19 64 6 Psalms 19 64 7 Psalms 19 64 7 Psalms 19 64 8 Psalms 19 64 8 Psalms 19 64 9 Psalms 19 64 9 Psalms 19 64 10 Psalms 19 64 10 Psalms 19 64 11 Psalms 19 65 0 Psalms 19 65 1 Psalms 19 65 1 Psalms 19 65 2 Psalms 19 65 2 Psalms 19 65 3 Psalms 19 65 3 Psalms 19 65 4 Psalms 19 65 4 Psalms 19 65 5 Psalms 19 65 5 Psalms 19 65 6 Psalms 19 65 6 Psalms 19 65 7 Psalms 19 65 7 Psalms 19 65 8 Psalms 19 65 8 Psalms 19 65 9 Psalms 19 65 9 Psalms 19 65 10 Psalms 19 65 10 Psalms 19 65 11 Psalms 19 65 11 Psalms 19 65 12 Psalms 19 65 12 Psalms 19 65 13 Psalms 19 65 13 Psalms 19 65 14 Psalms 19 67 0 Psalms 19 67 1 Psalms 19 67 1 Psalms 19 67 2 Psalms 19 67 2 Psalms 19 67 3 Psalms 19 67 3 Psalms 19 67 4 Psalms 19 67 4 Psalms 19 67 5 Psalms 19 67 5 Psalms 19 67 6 Psalms 19 67 6 Psalms 19 67 7 Psalms 19 67 7 Psalms 19 67 8 Psalms 19 68 0 Psalms 19 68 1 Psalms 19 68 1 Psalms 19 68 2 Psalms 19 68 2 Psalms 19 68 3 Psalms 19 68 3 Psalms 19 68 4 Psalms 19 68 4 Psalms 19 68 5 Psalms 19 68 5 Psalms 19 68 6 Psalms 19 68 6 Psalms 19 68 7 Psalms 19 68 7 Psalms 19 68 8 Psalms 19 68 8 Psalms 19 68 9 Psalms 19 68 9 Psalms 19 68 10 Psalms 19 68 10 Psalms 19 68 11 Psalms 19 68 11 Psalms 19 68 12 Psalms 19 68 12 Psalms 19 68 13 Psalms 19 68 13 Psalms 19 68 14 Psalms 19 68 14 Psalms 19 68 15 Psalms 19 68 15 Psalms 19 68 16 Psalms 19 68 16 Psalms 19 68 17 Psalms 19 68 17 Psalms 19 68 18 Psalms 19 68 18 Psalms 19 68 19 Psalms 19 68 19 Psalms 19 68 20 Psalms 19 68 20 Psalms 19 68 21 Psalms 19 68 21 Psalms 19 68 22 Psalms 19 68 22 Psalms 19 68 23 Psalms 19 68 23 Psalms 19 68 24 Psalms 19 68 24 Psalms 19 68 25 Psalms 19 68 25 Psalms 19 68 26 Psalms 19 68 26 Psalms 19 68 27 Psalms 19 68 27 Psalms 19 68 28 Psalms 19 68 28 Psalms 19 68 29 Psalms 19 68 29 Psalms 19 68 30 Psalms 19 68 30 Psalms 19 68 31 Psalms 19 68 31 Psalms 19 68 32 Psalms 19 68 32 Psalms 19 68 33 Psalms 19 68 33 Psalms 19 68 34 Psalms 19 68 34 Psalms 19 68 35 Psalms 19 68 35 Psalms 19 68 36 Psalms 19 69 0 Psalms 19 69 1 Psalms 19 69 1 Psalms 19 69 2 Psalms 19 69 2 Psalms 19 69 3 Psalms 19 69 3 Psalms 19 69 4 Psalms 19 69 4 Psalms 19 69 5 Psalms 19 69 5 Psalms 19 69 6 Psalms 19 69 6 Psalms 19 69 7 Psalms 19 69 7 Psalms 19 69 8 Psalms 19 69 8 Psalms 19 69 9 Psalms 19 69 9 Psalms 19 69 10 Psalms 19 69 10 Psalms 19 69 11 Psalms 19 69 11 Psalms 19 69 12 Psalms 19 69 12 Psalms 19 69 13 Psalms 19 69 13 Psalms 19 69 14 Psalms 19 69 14 Psalms 19 69 15 Psalms 19 69 15 Psalms 19 69 16 Psalms 19 69 16 Psalms 19 69 17 Psalms 19 69 17 Psalms 19 69 18 Psalms 19 69 18 Psalms 19 69 19 Psalms 19 69 19 Psalms 19 69 20 Psalms 19 69 20 Psalms 19 69 21 Psalms 19 69 21 Psalms 19 69 22 Psalms 19 69 22 Psalms 19 69 23 Psalms 19 69 23 Psalms 19 69 24 Psalms 19 69 24 Psalms 19 69 25 Psalms 19 69 25 Psalms 19 69 26 Psalms 19 69 26 Psalms 19 69 27 Psalms 19 69 27 Psalms 19 69 28 Psalms 19 69 28 Psalms 19 69 29 Psalms 19 69 29 Psalms 19 69 30 Psalms 19 69 30 Psalms 19 69 31 Psalms 19 69 31 Psalms 19 69 32 Psalms 19 69 32 Psalms 19 69 33 Psalms 19 69 33 Psalms 19 69 34 Psalms 19 69 34 Psalms 19 69 35 Psalms 19 69 35 Psalms 19 69 36 Psalms 19 69 36 Psalms 19 69 37 Psalms 19 70 0 Psalms 19 70 1 Psalms 19 70 1 Psalms 19 70 2 Psalms 19 70 2 Psalms 19 70 3 Psalms 19 70 3 Psalms 19 70 4 Psalms 19 70 4 Psalms 19 70 5 Psalms 19 70 5 Psalms 19 70 6 Psalms 19 75 0 Psalms 19 75 1 Psalms 19 75 1 Psalms 19 75 2 Psalms 19 75 2 Psalms 19 75 3 Psalms 19 75 3 Psalms 19 75 4 Psalms 19 75 4 Psalms 19 75 5 Psalms 19 75 5 Psalms 19 75 6 Psalms 19 75 6 Psalms 19 75 7 Psalms 19 75 7 Psalms 19 75 8 Psalms 19 75 8 Psalms 19 75 9 Psalms 19 75 9 Psalms 19 75 10 Psalms 19 75 10 Psalms 19 75 11 Psalms 19 76 0 Psalms 19 76 1 Psalms 19 76 1 Psalms 19 76 2 Psalms 19 76 2 Psalms 19 76 3 Psalms 19 76 3 Psalms 19 76 4 Psalms 19 76 4 Psalms 19 76 5 Psalms 19 76 5 Psalms 19 76 6 Psalms 19 76 6 Psalms 19 76 7 Psalms 19 76 7 Psalms 19 76 8 Psalms 19 76 8 Psalms 19 76 9 Psalms 19 76 9 Psalms 19 76 10 Psalms 19 76 10 Psalms 19 76 11 Psalms 19 76 11 Psalms 19 76 12 Psalms 19 76 12 Psalms 19 76 13 Psalms 19 77 0 Psalms 19 77 1 Psalms 19 77 1 Psalms 19 77 2 Psalms 19 77 2 Psalms 19 77 3 Psalms 19 77 3 Psalms 19 77 4 Psalms 19 77 4 Psalms 19 77 5 Psalms 19 77 5 Psalms 19 77 6 Psalms 19 77 6 Psalms 19 77 7 Psalms 19 77 7 Psalms 19 77 8 Psalms 19 77 8 Psalms 19 77 9 Psalms 19 77 9 Psalms 19 77 10 Psalms 19 77 10 Psalms 19 77 11 Psalms 19 77 11 Psalms 19 77 12 Psalms 19 77 12 Psalms 19 77 13 Psalms 19 77 13 Psalms 19 77 14 Psalms 19 77 14 Psalms 19 77 15 Psalms 19 77 15 Psalms 19 77 16 Psalms 19 77 16 Psalms 19 77 17 Psalms 19 77 17 Psalms 19 77 18 Psalms 19 77 18 Psalms 19 77 19 Psalms 19 77 19 Psalms 19 77 20 Psalms 19 77 20 Psalms 19 77 21 Psalms 19 80 0 Psalms 19 80 1 Psalms 19 80 1 Psalms 19 80 2 Psalms 19 80 2 Psalms 19 80 3 Psalms 19 80 3 Psalms 19 80 4 Psalms 19 80 4 Psalms 19 80 5 Psalms 19 80 5 Psalms 19 80 6 Psalms 19 80 6 Psalms 19 80 7 Psalms 19 80 7 Psalms 19 80 8 Psalms 19 80 8 Psalms 19 80 9 Psalms 19 80 9 Psalms 19 80 10 Psalms 19 80 10 Psalms 19 80 11 Psalms 19 80 11 Psalms 19 80 12 Psalms 19 80 12 Psalms 19 80 13 Psalms 19 80 13 Psalms 19 80 14 Psalms 19 80 14 Psalms 19 80 15 Psalms 19 80 15 Psalms 19 80 16 Psalms 19 80 16 Psalms 19 80 17 Psalms 19 80 17 Psalms 19 80 18 Psalms 19 80 18 Psalms 19 80 19 Psalms 19 80 19 Psalms 19 80 20 Psalms 19 81 0 Psalms 19 81 1 Psalms 19 81 1 Psalms 19 81 2 Psalms 19 81 2 Psalms 19 81 3 Psalms 19 81 3 Psalms 19 81 4 Psalms 19 81 4 Psalms 19 81 5 Psalms 19 81 5 Psalms 19 81 6 Psalms 19 81 6 Psalms 19 81 7 Psalms 19 81 7 Psalms 19 81 8 Psalms 19 81 8 Psalms 19 81 9 Psalms 19 81 9 Psalms 19 81 10 Psalms 19 81 10 Psalms 19 81 11 Psalms 19 81 11 Psalms 19 81 12 Psalms 19 81 12 Psalms 19 81 13 Psalms 19 81 13 Psalms 19 81 14 Psalms 19 81 14 Psalms 19 81 15 Psalms 19 81 15 Psalms 19 81 16 Psalms 19 81 16 Psalms 19 81 17 Psalms 19 83 0 Psalms 19 83 1 Psalms 19 83 1 Psalms 19 83 2 Psalms 19 83 2 Psalms 19 83 3 Psalms 19 83 3 Psalms 19 83 4 Psalms 19 83 4 Psalms 19 83 5 Psalms 19 83 5 Psalms 19 83 6 Psalms 19 83 6 Psalms 19 83 7 Psalms 19 83 7 Psalms 19 83 8 Psalms 19 83 8 Psalms 19 83 9 Psalms 19 83 9 Psalms 19 83 10 Psalms 19 83 10 Psalms 19 83 11 Psalms 19 83 11 Psalms 19 83 12 Psalms 19 83 12 Psalms 19 83 13 Psalms 19 83 13 Psalms 19 83 14 Psalms 19 83 14 Psalms 19 83 15 Psalms 19 83 15 Psalms 19 83 16 Psalms 19 83 16 Psalms 19 83 17 Psalms 19 83 17 Psalms 19 83 18 Psalms 19 83 18 Psalms 19 83 19 Psalms 19 84 0 Psalms 19 84 1 Psalms 19 84 1 Psalms 19 84 2 Psalms 19 84 2 Psalms 19 84 3 Psalms 19 84 3 Psalms 19 84 4 Psalms 19 84 4 Psalms 19 84 5 Psalms 19 84 5 Psalms 19 84 6 Psalms 19 84 6 Psalms 19 84 7 Psalms 19 84 7 Psalms 19 84 8 Psalms 19 84 8 Psalms 19 84 9 Psalms 19 84 9 Psalms 19 84 10 Psalms 19 84 10 Psalms 19 84 11 Psalms 19 84 11 Psalms 19 84 12 Psalms 19 84 12 Psalms 19 84 13 Psalms 19 85 0 Psalms 19 85 1 Psalms 19 85 1 Psalms 19 85 2 Psalms 19 85 2 Psalms 19 85 3 Psalms 19 85 3 Psalms 19 85 4 Psalms 19 85 4 Psalms 19 85 5 Psalms 19 85 5 Psalms 19 85 6 Psalms 19 85 6 Psalms 19 85 7 Psalms 19 85 7 Psalms 19 85 8 Psalms 19 85 8 Psalms 19 85 9 Psalms 19 85 9 Psalms 19 85 10 Psalms 19 85 10 Psalms 19 85 11 Psalms 19 85 11 Psalms 19 85 12 Psalms 19 85 12 Psalms 19 85 13 Psalms 19 85 13 Psalms 19 85 14 Psalms 19 88 0 Psalms 19 88 1 Psalms 19 88 1 Psalms 19 88 2 Psalms 19 88 2 Psalms 19 88 3 Psalms 19 88 3 Psalms 19 88 4 Psalms 19 88 4 Psalms 19 88 5 Psalms 19 88 5 Psalms 19 88 6 Psalms 19 88 6 Psalms 19 88 7 Psalms 19 88 7 Psalms 19 88 8 Psalms 19 88 8 Psalms 19 88 9 Psalms 19 88 9 Psalms 19 88 10 Psalms 19 88 10 Psalms 19 88 11 Psalms 19 88 11 Psalms 19 88 12 Psalms 19 88 12 Psalms 19 88 13 Psalms 19 88 13 Psalms 19 88 14 Psalms 19 88 14 Psalms 19 88 15 Psalms 19 88 15 Psalms 19 88 16 Psalms 19 88 16 Psalms 19 88 17 Psalms 19 88 17 Psalms 19 88 18 Psalms 19 88 18 Psalms 19 88 19 Psalms 19 89 0 Psalms 19 89 1 Psalms 19 89 1 Psalms 19 89 2 Psalms 19 89 2 Psalms 19 89 3 Psalms 19 89 3 Psalms 19 89 4 Psalms 19 89 4 Psalms 19 89 5 Psalms 19 89 5 Psalms 19 89 6 Psalms 19 89 6 Psalms 19 89 7 Psalms 19 89 7 Psalms 19 89 8 Psalms 19 89 8 Psalms 19 89 9 Psalms 19 89 9 Psalms 19 89 10 Psalms 19 89 10 Psalms 19 89 11 Psalms 19 89 11 Psalms 19 89 12 Psalms 19 89 12 Psalms 19 89 13 Psalms 19 89 13 Psalms 19 89 14 Psalms 19 89 14 Psalms 19 89 15 Psalms 19 89 15 Psalms 19 89 16 Psalms 19 89 16 Psalms 19 89 17 Psalms 19 89 17 Psalms 19 89 18 Psalms 19 89 18 Psalms 19 89 19 Psalms 19 89 19 Psalms 19 89 20 Psalms 19 89 20 Psalms 19 89 21 Psalms 19 89 21 Psalms 19 89 22 Psalms 19 89 22 Psalms 19 89 23 Psalms 19 89 23 Psalms 19 89 24 Psalms 19 89 24 Psalms 19 89 25 Psalms 19 89 25 Psalms 19 89 26 Psalms 19 89 26 Psalms 19 89 27 Psalms 19 89 27 Psalms 19 89 28 Psalms 19 89 28 Psalms 19 89 29 Psalms 19 89 29 Psalms 19 89 30 Psalms 19 89 30 Psalms 19 89 31 Psalms 19 89 31 Psalms 19 89 32 Psalms 19 89 32 Psalms 19 89 33 Psalms 19 89 33 Psalms 19 89 34 Psalms 19 89 34 Psalms 19 89 35 Psalms 19 89 35 Psalms 19 89 36 Psalms 19 89 36 Psalms 19 89 37 Psalms 19 89 37 Psalms 19 89 38 Psalms 19 89 38 Psalms 19 89 39 Psalms 19 89 39 Psalms 19 89 40 Psalms 19 89 40 Psalms 19 89 41 Psalms 19 89 41 Psalms 19 89 42 Psalms 19 89 42 Psalms 19 89 43 Psalms 19 89 43 Psalms 19 89 44 Psalms 19 89 44 Psalms 19 89 45 Psalms 19 89 45 Psalms 19 89 46 Psalms 19 89 46 Psalms 19 89 47 Psalms 19 89 47 Psalms 19 89 48 Psalms 19 89 48 Psalms 19 89 49 Psalms 19 89 49 Psalms 19 89 50 Psalms 19 89 50 Psalms 19 89 51 Psalms 19 89 51 Psalms 19 89 52 Psalms 19 89 52 Psalms 19 89 53 Psalms 19 92 0 Psalms 19 92 1 Psalms 19 92 1 Psalms 19 92 2 Psalms 19 92 2 Psalms 19 92 3 Psalms 19 92 3 Psalms 19 92 4 Psalms 19 92 4 Psalms 19 92 5 Psalms 19 92 5 Psalms 19 92 6 Psalms 19 92 6 Psalms 19 92 7 Psalms 19 92 7 Psalms 19 92 8 Psalms 19 92 8 Psalms 19 92 9 Psalms 19 92 9 Psalms 19 92 10 Psalms 19 92 10 Psalms 19 92 11 Psalms 19 92 11 Psalms 19 92 12 Psalms 19 92 12 Psalms 19 92 13 Psalms 19 92 13 Psalms 19 92 14 Psalms 19 92 14 Psalms 19 92 15 Psalms 19 92 15 Psalms 19 92 16 Psalms 19 102 0 Psalms 19 102 1 Psalms 19 102 1 Psalms 19 102 2 Psalms 19 102 2 Psalms 19 102 3 Psalms 19 102 3 Psalms 19 102 4 Psalms 19 102 4 Psalms 19 102 5 Psalms 19 102 5 Psalms 19 102 6 Psalms 19 102 6 Psalms 19 102 7 Psalms 19 102 7 Psalms 19 102 8 Psalms 19 102 8 Psalms 19 102 9 Psalms 19 102 9 Psalms 19 102 10 Psalms 19 102 10 Psalms 19 102 11 Psalms 19 102 11 Psalms 19 102 12 Psalms 19 102 12 Psalms 19 102 13 Psalms 19 102 13 Psalms 19 102 14 Psalms 19 102 14 Psalms 19 102 15 Psalms 19 102 15 Psalms 19 102 16 Psalms 19 102 16 Psalms 19 102 17 Psalms 19 102 17 Psalms 19 102 18 Psalms 19 102 18 Psalms 19 102 19 Psalms 19 102 19 Psalms 19 102 20 Psalms 19 102 20 Psalms 19 102 21 Psalms 19 102 21 Psalms 19 102 22 Psalms 19 102 22 Psalms 19 102 23 Psalms 19 102 23 Psalms 19 102 24 Psalms 19 102 24 Psalms 19 102 25 Psalms 19 102 25 Psalms 19 102 26 Psalms 19 102 26 Psalms 19 102 27 Psalms 19 102 27 Psalms 19 102 28 Psalms 19 102 28 Psalms 19 102 29 Psalms 19 108 0 Psalms 19 108 1 Psalms 19 108 1 Psalms 19 108 2 Psalms 19 108 2 Psalms 19 108 3 Psalms 19 108 3 Psalms 19 108 4 Psalms 19 108 4 Psalms 19 108 5 Psalms 19 108 5 Psalms 19 108 6 Psalms 19 108 6 Psalms 19 108 7 Psalms 19 108 7 Psalms 19 108 8 Psalms 19 108 8 Psalms 19 108 9 Psalms 19 108 9 Psalms 19 108 10 Psalms 19 108 10 Psalms 19 108 11 Psalms 19 108 11 Psalms 19 108 12 Psalms 19 108 12 Psalms 19 108 13 Psalms 19 108 13 Psalms 19 108 14 Psalms 19 140 0 Psalms 19 140 1 Psalms 19 140 1 Psalms 19 140 2 Psalms 19 140 2 Psalms 19 140 3 Psalms 19 140 3 Psalms 19 140 4 Psalms 19 140 4 Psalms 19 140 5 Psalms 19 140 5 Psalms 19 140 6 Psalms 19 140 6 Psalms 19 140 7 Psalms 19 140 7 Psalms 19 140 8 Psalms 19 140 8 Psalms 19 140 9 Psalms 19 140 9 Psalms 19 140 10 Psalms 19 140 10 Psalms 19 140 11 Psalms 19 140 11 Psalms 19 140 12 Psalms 19 140 12 Psalms 19 140 13 Psalms 19 140 13 Psalms 19 140 14 Psalms 19 142 0 Psalms 19 142 1 Psalms 19 142 1 Psalms 19 142 2 Psalms 19 142 2 Psalms 19 142 3 Psalms 19 142 3 Psalms 19 142 4 Psalms 19 142 4 Psalms 19 142 5 Psalms 19 142 5 Psalms 19 142 6 Psalms 19 142 6 Psalms 19 142 7 Psalms 19 142 7 Psalms 19 142 8 Ecclesiastes 21 5 1 Ecclesiastes 21 4 17 Ecclesiastes 21 5 2 Ecclesiastes 21 5 1 Ecclesiastes 21 5 3 Ecclesiastes 21 5 2 Ecclesiastes 21 5 4 Ecclesiastes 21 5 3 Ecclesiastes 21 5 5 Ecclesiastes 21 5 4 Ecclesiastes 21 5 6 Ecclesiastes 21 5 5 Ecclesiastes 21 5 7 Ecclesiastes 21 5 6 Ecclesiastes 21 5 8 Ecclesiastes 21 5 7 Ecclesiastes 21 5 9 Ecclesiastes 21 5 8 Ecclesiastes 21 5 10 Ecclesiastes 21 5 9 Ecclesiastes 21 5 11 Ecclesiastes 21 5 10 Ecclesiastes 21 5 12 Ecclesiastes 21 5 11 Ecclesiastes 21 5 13 Ecclesiastes 21 5 12 Ecclesiastes 21 5 14 Ecclesiastes 21 5 13 Ecclesiastes 21 5 15 Ecclesiastes 21 5 14 Ecclesiastes 21 5 16 Ecclesiastes 21 5 15 Ecclesiastes 21 5 17 Ecclesiastes 21 5 16 Ecclesiastes 21 5 18 Ecclesiastes 21 5 17 Ecclesiastes 21 5 19 Ecclesiastes 21 5 18 Ecclesiastes 21 5 20 Ecclesiastes 21 5 19 Song of Solomon 22 6 13 Song of Solomon 22 7 1 Song of Solomon 22 7 1 Song of Solomon 22 7 2 Song of Solomon 22 7 2 Song of Solomon 22 7 3 Song of Solomon 22 7 3 Song of Solomon 22 7 4 Song of Solomon 22 7 4 Song of Solomon 22 7 5 Song of Solomon 22 7 5 Song of Solomon 22 7 6 Song of Solomon 22 7 6 Song of Solomon 22 7 7 Song of Solomon 22 7 7 Song of Solomon 22 7 8 Song of Solomon 22 7 8 Song of Solomon 22 7 9 Song of Solomon 22 7 9 Song of Solomon 22 7 10 Song of Solomon 22 7 10 Song of Solomon 22 7 11 Song of Solomon 22 7 11 Song of Solomon 22 7 12 Song of Solomon 22 7 12 Song of Solomon 22 7 13 Song of Solomon 22 7 13 Song of Solomon 22 7 14 Isaiah 23 9 1 Isaiah 23 8 23 Isaiah 23 9 2 Isaiah 23 9 1 Isaiah 23 9 3 Isaiah 23 9 2 Isaiah 23 9 4 Isaiah 23 9 3 Isaiah 23 9 5 Isaiah 23 9 4 Isaiah 23 9 6 Isaiah 23 9 5 Isaiah 23 9 7 Isaiah 23 9 6 Isaiah 23 9 8 Isaiah 23 9 7 Isaiah 23 9 9 Isaiah 23 9 8 Isaiah 23 9 10 Isaiah 23 9 9 Isaiah 23 9 11 Isaiah 23 9 10 Isaiah 23 9 12 Isaiah 23 9 11 Isaiah 23 9 13 Isaiah 23 9 12 Isaiah 23 9 14 Isaiah 23 9 13 Isaiah 23 9 15 Isaiah 23 9 14 Isaiah 23 9 16 Isaiah 23 9 15 Isaiah 23 9 17 Isaiah 23 9 16 Isaiah 23 9 18 Isaiah 23 9 17 Isaiah 23 9 19 Isaiah 23 9 18 Isaiah 23 9 20 Isaiah 23 9 19 Isaiah 23 9 21 Isaiah 23 9 20 Isaiah 23 64 2 Isaiah 23 64 1 Isaiah 23 64 3 Isaiah 23 64 2 Isaiah 23 64 4 Isaiah 23 64 3 Isaiah 23 64 5 Isaiah 23 64 4 Isaiah 23 64 6 Isaiah 23 64 5 Isaiah 23 64 7 Isaiah 23 64 6 Isaiah 23 64 8 Isaiah 23 64 7 Isaiah 23 64 9 Isaiah 23 64 8 Isaiah 23 64 10 Isaiah 23 64 9 Isaiah 23 64 11 Isaiah 23 64 10 Isaiah 23 64 12 Isaiah 23 64 11 Jeremiah 24 9 1 Jeremiah 24 8 23 Jeremiah 24 9 2 Jeremiah 24 9 1 Jeremiah 24 9 3 Jeremiah 24 9 2 Jeremiah 24 9 4 Jeremiah 24 9 3 Jeremiah 24 9 5 Jeremiah 24 9 4 Jeremiah 24 9 6 Jeremiah 24 9 5 Jeremiah 24 9 7 Jeremiah 24 9 6 Jeremiah 24 9 8 Jeremiah 24 9 7 Jeremiah 24 9 9 Jeremiah 24 9 8 Jeremiah 24 9 10 Jeremiah 24 9 9 Jeremiah 24 9 11 Jeremiah 24 9 10 Jeremiah 24 9 12 Jeremiah 24 9 11 Jeremiah 24 9 13 Jeremiah 24 9 12 Jeremiah 24 9 14 Jeremiah 24 9 13 Jeremiah 24 9 15 Jeremiah 24 9 14 Jeremiah 24 9 16 Jeremiah 24 9 15 Jeremiah 24 9 17 Jeremiah 24 9 16 Jeremiah 24 9 18 Jeremiah 24 9 17 Jeremiah 24 9 19 Jeremiah 24 9 18 Jeremiah 24 9 20 Jeremiah 24 9 19 Jeremiah 24 9 21 Jeremiah 24 9 20 Jeremiah 24 9 22 Jeremiah 24 9 21 Jeremiah 24 9 23 Jeremiah 24 9 22 Jeremiah 24 9 24 Jeremiah 24 9 23 Jeremiah 24 9 25 Jeremiah 24 9 24 Jeremiah 24 9 26 Jeremiah 24 9 25 Ezekiel 26 20 45 Ezekiel 26 21 1 Ezekiel 26 20 46 Ezekiel 26 21 2 Ezekiel 26 20 44 Ezekiel 26 21 3 Ezekiel 26 20 47 Ezekiel 26 21 3 Ezekiel 26 20 48 Ezekiel 26 21 4 Ezekiel 26 20 49 Ezekiel 26 21 5 Ezekiel 26 21 1 Ezekiel 26 21 6 Ezekiel 26 21 2 Ezekiel 26 21 7 Ezekiel 26 21 3 Ezekiel 26 21 8 Ezekiel 26 21 4 Ezekiel 26 21 9 Ezekiel 26 21 5 Ezekiel 26 21 10 Ezekiel 26 21 6 Ezekiel 26 21 11 Ezekiel 26 21 7 Ezekiel 26 21 12 Ezekiel 26 21 8 Ezekiel 26 21 13 Ezekiel 26 21 9 Ezekiel 26 21 14 Ezekiel 26 21 10 Ezekiel 26 21 15 Ezekiel 26 21 11 Ezekiel 26 21 16 Ezekiel 26 21 12 Ezekiel 26 21 17 Ezekiel 26 21 13 Ezekiel 26 21 18 Ezekiel 26 21 14 Ezekiel 26 21 19 Ezekiel 26 21 15 Ezekiel 26 21 20 Ezekiel 26 21 16 Ezekiel 26 21 21 Ezekiel 26 21 17 Ezekiel 26 21 22 Ezekiel 26 21 18 Ezekiel 26 21 23 Ezekiel 26 21 19 Ezekiel 26 21 24 Ezekiel 26 21 20 Ezekiel 26 21 25 Ezekiel 26 21 21 Ezekiel 26 21 26 Ezekiel 26 21 22 Ezekiel 26 21 27 Ezekiel 26 21 23 Ezekiel 26 21 28 Ezekiel 26 21 24 Ezekiel 26 21 29 Ezekiel 26 21 25 Ezekiel 26 21 30 Ezekiel 26 21 26 Ezekiel 26 21 31 Ezekiel 26 21 27 Ezekiel 26 21 32 Ezekiel 26 21 28 Ezekiel 26 21 33 Ezekiel 26 21 29 Ezekiel 26 21 34 Ezekiel 26 21 30 Ezekiel 26 21 35 Ezekiel 26 21 31 Ezekiel 26 21 36 Ezekiel 26 21 32 Ezekiel 26 21 37 Daniel 27 4 1 Daniel 27 3 31 Daniel 27 4 2 Daniel 27 3 32 Daniel 27 4 3 Daniel 27 3 33 Daniel 27 4 4 Daniel 27 4 1 Daniel 27 4 5 Daniel 27 4 2 Daniel 27 4 6 Daniel 27 4 3 Daniel 27 4 7 Daniel 27 4 4 Daniel 27 4 8 Daniel 27 4 5 Daniel 27 4 9 Daniel 27 4 6 Daniel 27 4 10 Daniel 27 4 7 Daniel 27 4 11 Daniel 27 4 8 Daniel 27 4 12 Daniel 27 4 9 Daniel 27 4 13 Daniel 27 4 10 Daniel 27 4 14 Daniel 27 4 11 Daniel 27 4 15 Daniel 27 4 12 Daniel 27 4 16 Daniel 27 4 13 Daniel 27 4 17 Daniel 27 4 14 Daniel 27 4 18 Daniel 27 4 15 Daniel 27 4 19 Daniel 27 4 16 Daniel 27 4 20 Daniel 27 4 17 Daniel 27 4 21 Daniel 27 4 18 Daniel 27 4 22 Daniel 27 4 19 Daniel 27 4 23 Daniel 27 4 20 Daniel 27 4 24 Daniel 27 4 21 Daniel 27 4 25 Daniel 27 4 22 Daniel 27 4 26 Daniel 27 4 23 Daniel 27 4 27 Daniel 27 4 24 Daniel 27 4 28 Daniel 27 4 25 Daniel 27 4 29 Daniel 27 4 26 Daniel 27 4 30 Daniel 27 4 27 Daniel 27 4 31 Daniel 27 4 28 Daniel 27 4 32 Daniel 27 4 29 Daniel 27 4 33 Daniel 27 4 30 Daniel 27 4 34 Daniel 27 4 31 Daniel 27 4 35 Daniel 27 4 32 Daniel 27 4 36 Daniel 27 4 33 Daniel 27 4 37 Daniel 27 4 34 Daniel 27 5 31 Daniel 27 6 1 Daniel 27 6 1 Daniel 27 6 2 Daniel 27 6 2 Daniel 27 6 3 Daniel 27 6 3 Daniel 27 6 4 Daniel 27 6 4 Daniel 27 6 5 Daniel 27 6 5 Daniel 27 6 6 Daniel 27 6 6 Daniel 27 6 7 Daniel 27 6 7 Daniel 27 6 8 Daniel 27 6 8 Daniel 27 6 9 Daniel 27 6 9 Daniel 27 6 10 Daniel 27 6 10 Daniel 27 6 11 Daniel 27 6 11 Daniel 27 6 12 Daniel 27 6 12 Daniel 27 6 13 Daniel 27 6 13 Daniel 27 6 14 Daniel 27 6 14 Daniel 27 6 15 Daniel 27 6 15 Daniel 27 6 16 Daniel 27 6 16 Daniel 27 6 17 Daniel 27 6 17 Daniel 27 6 18 Daniel 27 6 18 Daniel 27 6 19 Daniel 27 6 19 Daniel 27 6 20 Daniel 27 6 20 Daniel 27 6 21 Daniel 27 6 21 Daniel 27 6 22 Daniel 27 6 22 Daniel 27 6 23 Daniel 27 6 23 Daniel 27 6 24 Daniel 27 6 24 Daniel 27 6 25 Daniel 27 6 25 Daniel 27 6 26 Daniel 27 6 26 Daniel 27 6 27 Daniel 27 6 27 Daniel 27 6 28 Daniel 27 6 28 Daniel 27 6 29 Hosea 28 1 10 Hosea 28 2 1 Hosea 28 1 11 Hosea 28 2 2 Hosea 28 2 1 Hosea 28 2 3 Hosea 28 2 2 Hosea 28 2 4 Hosea 28 2 3 Hosea 28 2 5 Hosea 28 2 4 Hosea 28 2 6 Hosea 28 2 5 Hosea 28 2 7 Hosea 28 2 6 Hosea 28 2 8 Hosea 28 2 7 Hosea 28 2 9 Hosea 28 2 8 Hosea 28 2 10 Hosea 28 2 9 Hosea 28 2 11 Hosea 28 2 10 Hosea 28 2 12 Hosea 28 2 11 Hosea 28 2 13 Hosea 28 2 12 Hosea 28 2 14 Hosea 28 2 13 Hosea 28 2 15 Hosea 28 2 14 Hosea 28 2 16 Hosea 28 2 15 Hosea 28 2 17 Hosea 28 2 16 Hosea 28 2 18 Hosea 28 2 17 Hosea 28 2 19 Hosea 28 2 18 Hosea 28 2 20 Hosea 28 2 19 Hosea 28 2 21 Hosea 28 2 20 Hosea 28 2 22 Hosea 28 2 21 Hosea 28 2 23 Hosea 28 2 22 Hosea 28 2 24 Hosea 28 2 23 Hosea 28 2 25 Hosea 28 11 12 Hosea 28 12 1 Hosea 28 12 1 Hosea 28 12 2 Hosea 28 12 2 Hosea 28 12 3 Hosea 28 12 3 Hosea 28 12 4 Hosea 28 12 4 Hosea 28 12 5 Hosea 28 12 5 Hosea 28 12 6 Hosea 28 12 6 Hosea 28 12 7 Hosea 28 12 7 Hosea 28 12 8 Hosea 28 12 8 Hosea 28 12 9 Hosea 28 12 9 Hosea 28 12 10 Hosea 28 12 10 Hosea 28 12 11 Hosea 28 12 11 Hosea 28 12 12 Hosea 28 12 12 Hosea 28 12 13 Hosea 28 12 13 Hosea 28 12 14 Hosea 28 12 14 Hosea 28 12 15 Hosea 28 13 16 Hosea 28 14 1 Hosea 28 14 1 Hosea 28 14 2 Hosea 28 14 2 Hosea 28 14 3 Hosea 28 14 3 Hosea 28 14 4 Hosea 28 14 4 Hosea 28 14 5 Hosea 28 14 5 Hosea 28 14 6 Hosea 28 14 6 Hosea 28 14 7 Hosea 28 14 7 Hosea 28 14 8 Hosea 28 14 8 Hosea 28 14 9 Hosea 28 14 9 Hosea 28 14 10 Joel 29 2 28 Joel 29 3 1 Joel 29 2 29 Joel 29 3 2 Joel 29 2 30 Joel 29 3 3 Joel 29 2 31 Joel 29 3 4 Joel 29 2 32 Joel 29 3 5 Joel 29 3 1 Joel 29 4 1 Joel 29 3 2 Joel 29 4 2 Joel 29 3 3 Joel 29 4 3 Joel 29 3 4 Joel 29 4 4 Joel 29 3 5 Joel 29 4 5 Joel 29 3 6 Joel 29 4 6 Joel 29 3 7 Joel 29 4 7 Joel 29 3 8 Joel 29 4 8 Joel 29 3 9 Joel 29 4 9 Joel 29 3 10 Joel 29 4 10 Joel 29 3 11 Joel 29 4 11 Joel 29 3 12 Joel 29 4 12 Joel 29 3 13 Joel 29 4 13 Joel 29 3 14 Joel 29 4 14 Joel 29 3 15 Joel 29 4 15 Joel 29 3 16 Joel 29 4 16 Joel 29 3 17 Joel 29 4 17 Joel 29 3 18 Joel 29 4 18 Joel 29 3 19 Joel 29 4 19 Joel 29 3 20 Joel 29 4 20 Joel 29 3 21 Joel 29 4 21 Jonah 32 1 17 Jonah 32 2 1 Jonah 32 2 1 Jonah 32 2 2 Jonah 32 2 2 Jonah 32 2 3 Jonah 32 2 3 Jonah 32 2 4 Jonah 32 2 4 Jonah 32 2 5 Jonah 32 2 5 Jonah 32 2 6 Jonah 32 2 6 Jonah 32 2 7 Jonah 32 2 7 Jonah 32 2 8 Jonah 32 2 8 Jonah 32 2 9 Jonah 32 2 9 Jonah 32 2 10 Jonah 32 2 10 Jonah 32 2 11 Micah 33 5 1 Micah 33 4 14 Micah 33 5 2 Micah 33 5 1 Micah 33 5 3 Micah 33 5 2 Micah 33 5 4 Micah 33 5 3 Micah 33 5 5 Micah 33 5 4 Micah 33 5 6 Micah 33 5 5 Micah 33 5 7 Micah 33 5 6 Micah 33 5 8 Micah 33 5 7 Micah 33 5 9 Micah 33 5 8 Micah 33 5 10 Micah 33 5 9 Micah 33 5 11 Micah 33 5 10 Micah 33 5 12 Micah 33 5 11 Micah 33 5 13 Micah 33 5 12 Micah 33 5 14 Micah 33 5 13 Micah 33 5 15 Micah 33 5 14 Nahum 34 1 15 Nahum 34 2 1 Nahum 34 2 1 Nahum 34 2 2 Nahum 34 2 2 Nahum 34 2 3 Nahum 34 2 3 Nahum 34 2 4 Nahum 34 2 4 Nahum 34 2 5 Nahum 34 2 5 Nahum 34 2 6 Nahum 34 2 6 Nahum 34 2 7 Nahum 34 2 7 Nahum 34 2 8 Nahum 34 2 8 Nahum 34 2 9 Nahum 34 2 9 Nahum 34 2 10 Nahum 34 2 10 Nahum 34 2 11 Nahum 34 2 11 Nahum 34 2 12 Nahum 34 2 12 Nahum 34 2 13 Nahum 34 2 13 Nahum 34 2 14 Zechariah 38 1 18 Zechariah 38 2 1 Zechariah 38 1 19 Zechariah 38 2 2 Zechariah 38 1 20 Zechariah 38 2 3 Zechariah 38 1 21 Zechariah 38 2 4 Zechariah 38 2 1 Zechariah 38 2 5 Zechariah 38 2 2 Zechariah 38 2 6 Zechariah 38 2 3 Zechariah 38 2 7 Zechariah 38 2 4 Zechariah 38 2 8 Zechariah 38 2 5 Zechariah 38 2 9 Zechariah 38 2 6 Zechariah 38 2 10 Zechariah 38 2 7 Zechariah 38 2 11 Zechariah 38 2 8 Zechariah 38 2 12 Zechariah 38 2 9 Zechariah 38 2 13 Zechariah 38 2 10 Zechariah 38 2 14 Zechariah 38 2 11 Zechariah 38 2 15 Zechariah 38 2 12 Zechariah 38 2 16 Zechariah 38 2 13 Zechariah 38 2 17 Malachi 39 4 1 Malachi 39 3 19 Malachi 39 4 2 Malachi 39 3 20 Malachi 39 4 3 Malachi 39 3 21 Malachi 39 4 4 Malachi 39 3 22 Malachi 39 4 5 Malachi 39 3 23 Malachi 39 4 6 Malachi 39 3 24 Acts 44 19 41 Acts 44 19 40 bibledit-gtk-4.9/templates/mapping_staten_bible.xml000664 000766 000024 00002044033 12221507126 022747 0ustar00teusstaff000000 000000 Genesis 1 31 55 Genesis 1 32 1 Genesis 1 32 1 Genesis 1 32 2 Genesis 1 32 2 Genesis 1 32 3 Genesis 1 32 3 Genesis 1 32 4 Genesis 1 32 4 Genesis 1 32 5 Genesis 1 32 5 Genesis 1 32 6 Genesis 1 32 6 Genesis 1 32 7 Genesis 1 32 7 Genesis 1 32 8 Genesis 1 32 8 Genesis 1 32 9 Genesis 1 32 9 Genesis 1 32 10 Genesis 1 32 10 Genesis 1 32 11 Genesis 1 32 11 Genesis 1 32 12 Genesis 1 32 12 Genesis 1 32 13 Genesis 1 32 13 Genesis 1 32 14 Genesis 1 32 14 Genesis 1 32 15 Genesis 1 32 15 Genesis 1 32 16 Genesis 1 32 16 Genesis 1 32 17 Genesis 1 32 17 Genesis 1 32 18 Genesis 1 32 18 Genesis 1 32 19 Genesis 1 32 19 Genesis 1 32 20 Genesis 1 32 20 Genesis 1 32 21 Genesis 1 32 21 Genesis 1 32 22 Genesis 1 32 22 Genesis 1 32 23 Genesis 1 32 23 Genesis 1 32 24 Genesis 1 32 24 Genesis 1 32 25 Genesis 1 32 25 Genesis 1 32 26 Genesis 1 32 26 Genesis 1 32 27 Genesis 1 32 27 Genesis 1 32 28 Genesis 1 32 28 Genesis 1 32 29 Genesis 1 32 29 Genesis 1 32 30 Genesis 1 32 30 Genesis 1 32 31 Genesis 1 32 31 Genesis 1 32 32 Genesis 1 32 32 Genesis 1 32 33 Exodus 2 8 1 Exodus 2 7 26 Exodus 2 8 2 Exodus 2 7 27 Exodus 2 8 3 Exodus 2 7 28 Exodus 2 8 4 Exodus 2 7 29 Exodus 2 8 5 Exodus 2 8 1 Exodus 2 8 6 Exodus 2 8 2 Exodus 2 8 7 Exodus 2 8 3 Exodus 2 8 8 Exodus 2 8 4 Exodus 2 8 9 Exodus 2 8 5 Exodus 2 8 10 Exodus 2 8 6 Exodus 2 8 11 Exodus 2 8 7 Exodus 2 8 12 Exodus 2 8 8 Exodus 2 8 13 Exodus 2 8 9 Exodus 2 8 14 Exodus 2 8 10 Exodus 2 8 15 Exodus 2 8 11 Exodus 2 8 16 Exodus 2 8 12 Exodus 2 8 17 Exodus 2 8 13 Exodus 2 8 18 Exodus 2 8 14 Exodus 2 8 19 Exodus 2 8 15 Exodus 2 8 20 Exodus 2 8 16 Exodus 2 8 21 Exodus 2 8 17 Exodus 2 8 22 Exodus 2 8 18 Exodus 2 8 23 Exodus 2 8 19 Exodus 2 8 24 Exodus 2 8 20 Exodus 2 8 25 Exodus 2 8 21 Exodus 2 8 26 Exodus 2 8 22 Exodus 2 8 27 Exodus 2 8 23 Exodus 2 8 28 Exodus 2 8 24 Exodus 2 8 29 Exodus 2 8 25 Exodus 2 8 30 Exodus 2 8 26 Exodus 2 8 31 Exodus 2 8 27 Exodus 2 8 32 Exodus 2 8 28 Exodus 2 22 1 Exodus 2 21 37 Exodus 2 22 2 Exodus 2 22 1 Exodus 2 22 3 Exodus 2 22 2 Exodus 2 22 4 Exodus 2 22 3 Exodus 2 22 5 Exodus 2 22 4 Exodus 2 22 6 Exodus 2 22 5 Exodus 2 22 7 Exodus 2 22 6 Exodus 2 22 8 Exodus 2 22 7 Exodus 2 22 9 Exodus 2 22 8 Exodus 2 22 10 Exodus 2 22 9 Exodus 2 22 11 Exodus 2 22 10 Exodus 2 22 12 Exodus 2 22 11 Exodus 2 22 13 Exodus 2 22 12 Exodus 2 22 14 Exodus 2 22 13 Exodus 2 22 15 Exodus 2 22 14 Exodus 2 22 16 Exodus 2 22 15 Exodus 2 22 17 Exodus 2 22 16 Exodus 2 22 18 Exodus 2 22 17 Exodus 2 22 19 Exodus 2 22 18 Exodus 2 22 20 Exodus 2 22 19 Exodus 2 22 21 Exodus 2 22 20 Exodus 2 22 22 Exodus 2 22 21 Exodus 2 22 23 Exodus 2 22 22 Exodus 2 22 24 Exodus 2 22 23 Exodus 2 22 25 Exodus 2 22 24 Exodus 2 22 26 Exodus 2 22 25 Exodus 2 22 27 Exodus 2 22 26 Exodus 2 22 28 Exodus 2 22 27 Exodus 2 22 29 Exodus 2 22 28 Exodus 2 22 30 Exodus 2 22 29 Exodus 2 22 31 Exodus 2 22 30 Leviticus 3 6 1 Leviticus 3 5 20 Leviticus 3 6 2 Leviticus 3 5 21 Leviticus 3 6 3 Leviticus 3 5 22 Leviticus 3 6 4 Leviticus 3 5 23 Leviticus 3 6 5 Leviticus 3 5 24 Leviticus 3 6 6 Leviticus 3 5 25 Leviticus 3 6 7 Leviticus 3 5 26 Leviticus 3 6 8 Leviticus 3 6 1 Leviticus 3 6 9 Leviticus 3 6 2 Leviticus 3 6 10 Leviticus 3 6 3 Leviticus 3 6 11 Leviticus 3 6 4 Leviticus 3 6 12 Leviticus 3 6 5 Leviticus 3 6 13 Leviticus 3 6 6 Leviticus 3 6 14 Leviticus 3 6 7 Leviticus 3 6 15 Leviticus 3 6 8 Leviticus 3 6 16 Leviticus 3 6 9 Leviticus 3 6 17 Leviticus 3 6 10 Leviticus 3 6 18 Leviticus 3 6 11 Leviticus 3 6 19 Leviticus 3 6 12 Leviticus 3 6 20 Leviticus 3 6 13 Leviticus 3 6 21 Leviticus 3 6 14 Leviticus 3 6 22 Leviticus 3 6 15 Leviticus 3 6 23 Leviticus 3 6 16 Leviticus 3 6 24 Leviticus 3 6 17 Leviticus 3 6 25 Leviticus 3 6 18 Leviticus 3 6 26 Leviticus 3 6 19 Leviticus 3 6 27 Leviticus 3 6 20 Leviticus 3 6 28 Leviticus 3 6 21 Leviticus 3 6 29 Leviticus 3 6 22 Leviticus 3 6 30 Leviticus 3 6 23 Numbers 4 16 36 Numbers 4 17 1 Numbers 4 16 37 Numbers 4 17 2 Numbers 4 16 38 Numbers 4 17 3 Numbers 4 16 39 Numbers 4 17 4 Numbers 4 16 40 Numbers 4 17 5 Numbers 4 16 41 Numbers 4 17 6 Numbers 4 16 42 Numbers 4 17 7 Numbers 4 16 43 Numbers 4 17 8 Numbers 4 16 44 Numbers 4 17 9 Numbers 4 16 45 Numbers 4 17 10 Numbers 4 16 46 Numbers 4 17 11 Numbers 4 16 47 Numbers 4 17 12 Numbers 4 16 48 Numbers 4 17 13 Numbers 4 16 49 Numbers 4 17 14 Numbers 4 16 50 Numbers 4 17 15 Numbers 4 17 1 Numbers 4 17 16 Numbers 4 17 2 Numbers 4 17 17 Numbers 4 17 3 Numbers 4 17 18 Numbers 4 17 4 Numbers 4 17 19 Numbers 4 17 5 Numbers 4 17 20 Numbers 4 17 6 Numbers 4 17 21 Numbers 4 17 7 Numbers 4 17 22 Numbers 4 17 8 Numbers 4 17 23 Numbers 4 17 9 Numbers 4 17 24 Numbers 4 17 10 Numbers 4 17 25 Numbers 4 17 11 Numbers 4 17 26 Numbers 4 17 12 Numbers 4 17 27 Numbers 4 17 13 Numbers 4 17 28 Numbers 4 29 40 Numbers 4 30 1 Numbers 4 30 1 Numbers 4 30 2 Numbers 4 30 2 Numbers 4 30 3 Numbers 4 30 3 Numbers 4 30 4 Numbers 4 30 4 Numbers 4 30 5 Numbers 4 30 5 Numbers 4 30 6 Numbers 4 30 6 Numbers 4 30 7 Numbers 4 30 7 Numbers 4 30 8 Numbers 4 30 8 Numbers 4 30 9 Numbers 4 30 9 Numbers 4 30 10 Numbers 4 30 10 Numbers 4 30 11 Numbers 4 30 11 Numbers 4 30 12 Numbers 4 30 12 Numbers 4 30 13 Numbers 4 30 13 Numbers 4 30 14 Numbers 4 30 14 Numbers 4 30 15 Numbers 4 30 15 Numbers 4 30 16 Numbers 4 30 16 Numbers 4 30 17 Deuteronomy 5 12 32 Deuteronomy 5 13 1 Deuteronomy 5 13 1 Deuteronomy 5 13 2 Deuteronomy 5 13 2 Deuteronomy 5 13 3 Deuteronomy 5 13 3 Deuteronomy 5 13 4 Deuteronomy 5 13 4 Deuteronomy 5 13 5 Deuteronomy 5 13 5 Deuteronomy 5 13 6 Deuteronomy 5 13 6 Deuteronomy 5 13 7 Deuteronomy 5 13 7 Deuteronomy 5 13 8 Deuteronomy 5 13 8 Deuteronomy 5 13 9 Deuteronomy 5 13 9 Deuteronomy 5 13 10 Deuteronomy 5 13 10 Deuteronomy 5 13 11 Deuteronomy 5 13 11 Deuteronomy 5 13 12 Deuteronomy 5 13 12 Deuteronomy 5 13 13 Deuteronomy 5 13 13 Deuteronomy 5 13 14 Deuteronomy 5 13 14 Deuteronomy 5 13 15 Deuteronomy 5 13 15 Deuteronomy 5 13 16 Deuteronomy 5 13 16 Deuteronomy 5 13 17 Deuteronomy 5 13 17 Deuteronomy 5 13 18 Deuteronomy 5 13 18 Deuteronomy 5 13 19 Deuteronomy 5 22 30 Deuteronomy 5 23 1 Deuteronomy 5 23 1 Deuteronomy 5 23 2 Deuteronomy 5 23 2 Deuteronomy 5 23 3 Deuteronomy 5 23 3 Deuteronomy 5 23 4 Deuteronomy 5 23 4 Deuteronomy 5 23 5 Deuteronomy 5 23 5 Deuteronomy 5 23 6 Deuteronomy 5 23 6 Deuteronomy 5 23 7 Deuteronomy 5 23 7 Deuteronomy 5 23 8 Deuteronomy 5 23 8 Deuteronomy 5 23 9 Deuteronomy 5 23 9 Deuteronomy 5 23 10 Deuteronomy 5 23 10 Deuteronomy 5 23 11 Deuteronomy 5 23 11 Deuteronomy 5 23 12 Deuteronomy 5 23 12 Deuteronomy 5 23 13 Deuteronomy 5 23 13 Deuteronomy 5 23 14 Deuteronomy 5 23 14 Deuteronomy 5 23 15 Deuteronomy 5 23 15 Deuteronomy 5 23 16 Deuteronomy 5 23 16 Deuteronomy 5 23 17 Deuteronomy 5 23 17 Deuteronomy 5 23 18 Deuteronomy 5 23 18 Deuteronomy 5 23 19 Deuteronomy 5 23 19 Deuteronomy 5 23 20 Deuteronomy 5 23 20 Deuteronomy 5 23 21 Deuteronomy 5 23 21 Deuteronomy 5 23 22 Deuteronomy 5 23 22 Deuteronomy 5 23 23 Deuteronomy 5 23 23 Deuteronomy 5 23 24 Deuteronomy 5 23 24 Deuteronomy 5 23 25 Deuteronomy 5 23 25 Deuteronomy 5 23 26 Deuteronomy 5 29 1 Deuteronomy 5 28 69 Deuteronomy 5 29 2 Deuteronomy 5 29 1 Deuteronomy 5 29 3 Deuteronomy 5 29 2 Deuteronomy 5 29 4 Deuteronomy 5 29 3 Deuteronomy 5 29 5 Deuteronomy 5 29 4 Deuteronomy 5 29 6 Deuteronomy 5 29 5 Deuteronomy 5 29 7 Deuteronomy 5 29 6 Deuteronomy 5 29 8 Deuteronomy 5 29 7 Deuteronomy 5 29 9 Deuteronomy 5 29 8 Deuteronomy 5 29 10 Deuteronomy 5 29 9 Deuteronomy 5 29 11 Deuteronomy 5 29 10 Deuteronomy 5 29 12 Deuteronomy 5 29 11 Deuteronomy 5 29 13 Deuteronomy 5 29 12 Deuteronomy 5 29 14 Deuteronomy 5 29 13 Deuteronomy 5 29 15 Deuteronomy 5 29 14 Deuteronomy 5 29 16 Deuteronomy 5 29 15 Deuteronomy 5 29 17 Deuteronomy 5 29 16 Deuteronomy 5 29 18 Deuteronomy 5 29 17 Deuteronomy 5 29 19 Deuteronomy 5 29 18 Deuteronomy 5 29 20 Deuteronomy 5 29 19 Deuteronomy 5 29 21 Deuteronomy 5 29 20 Deuteronomy 5 29 22 Deuteronomy 5 29 21 Deuteronomy 5 29 23 Deuteronomy 5 29 22 Deuteronomy 5 29 24 Deuteronomy 5 29 23 Deuteronomy 5 29 25 Deuteronomy 5 29 24 Deuteronomy 5 29 26 Deuteronomy 5 29 25 Deuteronomy 5 29 27 Deuteronomy 5 29 26 Deuteronomy 5 29 28 Deuteronomy 5 29 27 Deuteronomy 5 29 29 Deuteronomy 5 29 28 1 Samuel 9 20 42 1 Samuel 9 20 42 1 Samuel 9 20 42 1 Samuel 9 21 1 1 Samuel 9 21 1 1 Samuel 9 21 2 1 Samuel 9 21 2 1 Samuel 9 21 3 1 Samuel 9 21 3 1 Samuel 9 21 4 1 Samuel 9 21 4 1 Samuel 9 21 5 1 Samuel 9 21 5 1 Samuel 9 21 6 1 Samuel 9 21 6 1 Samuel 9 21 7 1 Samuel 9 21 7 1 Samuel 9 21 8 1 Samuel 9 21 8 1 Samuel 9 21 9 1 Samuel 9 21 9 1 Samuel 9 21 10 1 Samuel 9 21 10 1 Samuel 9 21 11 1 Samuel 9 21 11 1 Samuel 9 21 12 1 Samuel 9 21 12 1 Samuel 9 21 13 1 Samuel 9 21 13 1 Samuel 9 21 14 1 Samuel 9 21 14 1 Samuel 9 21 15 1 Samuel 9 21 15 1 Samuel 9 21 16 1 Samuel 9 23 29 1 Samuel 9 24 1 1 Samuel 9 24 1 1 Samuel 9 24 2 1 Samuel 9 24 2 1 Samuel 9 24 3 1 Samuel 9 24 3 1 Samuel 9 24 4 1 Samuel 9 24 4 1 Samuel 9 24 5 1 Samuel 9 24 5 1 Samuel 9 24 6 1 Samuel 9 24 6 1 Samuel 9 24 7 1 Samuel 9 24 7 1 Samuel 9 24 8 1 Samuel 9 24 8 1 Samuel 9 24 9 1 Samuel 9 24 9 1 Samuel 9 24 10 1 Samuel 9 24 10 1 Samuel 9 24 11 1 Samuel 9 24 11 1 Samuel 9 24 12 1 Samuel 9 24 12 1 Samuel 9 24 13 1 Samuel 9 24 13 1 Samuel 9 24 14 1 Samuel 9 24 14 1 Samuel 9 24 15 1 Samuel 9 24 15 1 Samuel 9 24 16 1 Samuel 9 24 16 1 Samuel 9 24 17 1 Samuel 9 24 17 1 Samuel 9 24 18 1 Samuel 9 24 18 1 Samuel 9 24 19 1 Samuel 9 24 19 1 Samuel 9 24 20 1 Samuel 9 24 20 1 Samuel 9 24 21 1 Samuel 9 24 21 1 Samuel 9 24 22 1 Samuel 9 24 22 1 Samuel 9 24 23 2 Samuel 10 18 33 2 Samuel 10 19 1 2 Samuel 10 19 1 2 Samuel 10 19 2 2 Samuel 10 19 2 2 Samuel 10 19 3 2 Samuel 10 19 3 2 Samuel 10 19 4 2 Samuel 10 19 4 2 Samuel 10 19 5 2 Samuel 10 19 5 2 Samuel 10 19 6 2 Samuel 10 19 6 2 Samuel 10 19 7 2 Samuel 10 19 7 2 Samuel 10 19 8 2 Samuel 10 19 8 2 Samuel 10 19 9 2 Samuel 10 19 9 2 Samuel 10 19 10 2 Samuel 10 19 10 2 Samuel 10 19 11 2 Samuel 10 19 11 2 Samuel 10 19 12 2 Samuel 10 19 12 2 Samuel 10 19 13 2 Samuel 10 19 13 2 Samuel 10 19 14 2 Samuel 10 19 14 2 Samuel 10 19 15 2 Samuel 10 19 15 2 Samuel 10 19 16 2 Samuel 10 19 16 2 Samuel 10 19 17 2 Samuel 10 19 17 2 Samuel 10 19 18 2 Samuel 10 19 18 2 Samuel 10 19 19 2 Samuel 10 19 19 2 Samuel 10 19 20 2 Samuel 10 19 20 2 Samuel 10 19 21 2 Samuel 10 19 21 2 Samuel 10 19 22 2 Samuel 10 19 22 2 Samuel 10 19 23 2 Samuel 10 19 23 2 Samuel 10 19 24 2 Samuel 10 19 24 2 Samuel 10 19 25 2 Samuel 10 19 25 2 Samuel 10 19 26 2 Samuel 10 19 26 2 Samuel 10 19 27 2 Samuel 10 19 27 2 Samuel 10 19 28 2 Samuel 10 19 28 2 Samuel 10 19 29 2 Samuel 10 19 29 2 Samuel 10 19 30 2 Samuel 10 19 30 2 Samuel 10 19 31 2 Samuel 10 19 31 2 Samuel 10 19 32 2 Samuel 10 19 32 2 Samuel 10 19 33 2 Samuel 10 19 33 2 Samuel 10 19 34 2 Samuel 10 19 34 2 Samuel 10 19 35 2 Samuel 10 19 35 2 Samuel 10 19 36 2 Samuel 10 19 36 2 Samuel 10 19 37 2 Samuel 10 19 37 2 Samuel 10 19 38 2 Samuel 10 19 38 2 Samuel 10 19 39 2 Samuel 10 19 39 2 Samuel 10 19 40 2 Samuel 10 19 40 2 Samuel 10 19 41 2 Samuel 10 19 41 2 Samuel 10 19 42 2 Samuel 10 19 42 2 Samuel 10 19 43 2 Samuel 10 19 43 2 Samuel 10 19 44 1 Kings 11 4 21 1 Kings 11 5 1 1 Kings 11 4 22 1 Kings 11 5 2 1 Kings 11 4 23 1 Kings 11 5 3 1 Kings 11 4 24 1 Kings 11 5 4 1 Kings 11 4 25 1 Kings 11 5 5 1 Kings 11 4 26 1 Kings 11 5 6 1 Kings 11 4 27 1 Kings 11 5 7 1 Kings 11 4 28 1 Kings 11 5 8 1 Kings 11 4 29 1 Kings 11 5 9 1 Kings 11 4 30 1 Kings 11 5 10 1 Kings 11 4 31 1 Kings 11 5 11 1 Kings 11 4 32 1 Kings 11 5 12 1 Kings 11 4 33 1 Kings 11 5 13 1 Kings 11 4 34 1 Kings 11 5 14 1 Kings 11 5 1 1 Kings 11 5 15 1 Kings 11 5 2 1 Kings 11 5 16 1 Kings 11 5 3 1 Kings 11 5 17 1 Kings 11 5 4 1 Kings 11 5 18 1 Kings 11 5 5 1 Kings 11 5 19 1 Kings 11 5 6 1 Kings 11 5 20 1 Kings 11 5 7 1 Kings 11 5 21 1 Kings 11 5 8 1 Kings 11 5 22 1 Kings 11 5 9 1 Kings 11 5 23 1 Kings 11 5 10 1 Kings 11 5 24 1 Kings 11 5 11 1 Kings 11 5 25 1 Kings 11 5 12 1 Kings 11 5 26 1 Kings 11 5 13 1 Kings 11 5 27 1 Kings 11 5 14 1 Kings 11 5 28 1 Kings 11 5 15 1 Kings 11 5 29 1 Kings 11 5 16 1 Kings 11 5 30 1 Kings 11 5 17 1 Kings 11 5 31 1 Kings 11 5 18 1 Kings 11 5 32 1 Kings 11 22 43 1 Kings 11 22 43 1 Kings 11 22 43 1 Kings 11 22 44 1 Kings 11 22 44 1 Kings 11 22 45 1 Kings 11 22 45 1 Kings 11 22 46 1 Kings 11 22 46 1 Kings 11 22 47 1 Kings 11 22 47 1 Kings 11 22 48 1 Kings 11 22 48 1 Kings 11 22 49 1 Kings 11 22 49 1 Kings 11 22 50 1 Kings 11 22 50 1 Kings 11 22 51 1 Kings 11 22 51 1 Kings 11 22 52 1 Kings 11 22 52 1 Kings 11 22 53 1 Kings 11 22 53 1 Kings 11 22 54 2 Kings 12 11 21 2 Kings 12 12 1 2 Kings 12 12 1 2 Kings 12 12 2 2 Kings 12 12 2 2 Kings 12 12 3 2 Kings 12 12 3 2 Kings 12 12 4 2 Kings 12 12 4 2 Kings 12 12 5 2 Kings 12 12 5 2 Kings 12 12 6 2 Kings 12 12 6 2 Kings 12 12 7 2 Kings 12 12 7 2 Kings 12 12 8 2 Kings 12 12 8 2 Kings 12 12 9 2 Kings 12 12 9 2 Kings 12 12 10 2 Kings 12 12 10 2 Kings 12 12 11 2 Kings 12 12 11 2 Kings 12 12 12 2 Kings 12 12 12 2 Kings 12 12 13 2 Kings 12 12 13 2 Kings 12 12 14 2 Kings 12 12 14 2 Kings 12 12 15 2 Kings 12 12 15 2 Kings 12 12 16 2 Kings 12 12 16 2 Kings 12 12 17 2 Kings 12 12 17 2 Kings 12 12 18 2 Kings 12 12 18 2 Kings 12 12 19 2 Kings 12 12 19 2 Kings 12 12 20 2 Kings 12 12 20 2 Kings 12 12 21 2 Kings 12 12 21 2 Kings 12 12 22 1 Chronicles 13 6 1 1 Chronicles 13 5 27 1 Chronicles 13 6 2 1 Chronicles 13 5 28 1 Chronicles 13 6 3 1 Chronicles 13 5 29 1 Chronicles 13 6 4 1 Chronicles 13 5 30 1 Chronicles 13 6 5 1 Chronicles 13 5 31 1 Chronicles 13 6 6 1 Chronicles 13 5 32 1 Chronicles 13 6 7 1 Chronicles 13 5 33 1 Chronicles 13 6 8 1 Chronicles 13 5 34 1 Chronicles 13 6 9 1 Chronicles 13 5 35 1 Chronicles 13 6 10 1 Chronicles 13 5 36 1 Chronicles 13 6 11 1 Chronicles 13 5 37 1 Chronicles 13 6 12 1 Chronicles 13 5 38 1 Chronicles 13 6 13 1 Chronicles 13 5 39 1 Chronicles 13 6 14 1 Chronicles 13 5 40 1 Chronicles 13 6 15 1 Chronicles 13 5 41 1 Chronicles 13 6 16 1 Chronicles 13 6 1 1 Chronicles 13 6 17 1 Chronicles 13 6 2 1 Chronicles 13 6 18 1 Chronicles 13 6 3 1 Chronicles 13 6 19 1 Chronicles 13 6 4 1 Chronicles 13 6 20 1 Chronicles 13 6 5 1 Chronicles 13 6 21 1 Chronicles 13 6 6 1 Chronicles 13 6 22 1 Chronicles 13 6 7 1 Chronicles 13 6 23 1 Chronicles 13 6 8 1 Chronicles 13 6 24 1 Chronicles 13 6 9 1 Chronicles 13 6 25 1 Chronicles 13 6 10 1 Chronicles 13 6 26 1 Chronicles 13 6 11 1 Chronicles 13 6 27 1 Chronicles 13 6 12 1 Chronicles 13 6 28 1 Chronicles 13 6 13 1 Chronicles 13 6 29 1 Chronicles 13 6 14 1 Chronicles 13 6 30 1 Chronicles 13 6 15 1 Chronicles 13 6 31 1 Chronicles 13 6 16 1 Chronicles 13 6 32 1 Chronicles 13 6 17 1 Chronicles 13 6 33 1 Chronicles 13 6 18 1 Chronicles 13 6 34 1 Chronicles 13 6 19 1 Chronicles 13 6 35 1 Chronicles 13 6 20 1 Chronicles 13 6 36 1 Chronicles 13 6 21 1 Chronicles 13 6 37 1 Chronicles 13 6 22 1 Chronicles 13 6 38 1 Chronicles 13 6 23 1 Chronicles 13 6 39 1 Chronicles 13 6 24 1 Chronicles 13 6 40 1 Chronicles 13 6 25 1 Chronicles 13 6 41 1 Chronicles 13 6 26 1 Chronicles 13 6 42 1 Chronicles 13 6 27 1 Chronicles 13 6 43 1 Chronicles 13 6 28 1 Chronicles 13 6 44 1 Chronicles 13 6 29 1 Chronicles 13 6 45 1 Chronicles 13 6 30 1 Chronicles 13 6 46 1 Chronicles 13 6 31 1 Chronicles 13 6 47 1 Chronicles 13 6 32 1 Chronicles 13 6 48 1 Chronicles 13 6 33 1 Chronicles 13 6 49 1 Chronicles 13 6 34 1 Chronicles 13 6 50 1 Chronicles 13 6 35 1 Chronicles 13 6 51 1 Chronicles 13 6 36 1 Chronicles 13 6 52 1 Chronicles 13 6 37 1 Chronicles 13 6 53 1 Chronicles 13 6 38 1 Chronicles 13 6 54 1 Chronicles 13 6 39 1 Chronicles 13 6 55 1 Chronicles 13 6 40 1 Chronicles 13 6 56 1 Chronicles 13 6 41 1 Chronicles 13 6 57 1 Chronicles 13 6 42 1 Chronicles 13 6 58 1 Chronicles 13 6 43 1 Chronicles 13 6 59 1 Chronicles 13 6 44 1 Chronicles 13 6 60 1 Chronicles 13 6 45 1 Chronicles 13 6 61 1 Chronicles 13 6 46 1 Chronicles 13 6 62 1 Chronicles 13 6 47 1 Chronicles 13 6 63 1 Chronicles 13 6 48 1 Chronicles 13 6 64 1 Chronicles 13 6 49 1 Chronicles 13 6 65 1 Chronicles 13 6 50 1 Chronicles 13 6 66 1 Chronicles 13 6 51 1 Chronicles 13 6 67 1 Chronicles 13 6 52 1 Chronicles 13 6 68 1 Chronicles 13 6 53 1 Chronicles 13 6 69 1 Chronicles 13 6 54 1 Chronicles 13 6 70 1 Chronicles 13 6 55 1 Chronicles 13 6 71 1 Chronicles 13 6 56 1 Chronicles 13 6 72 1 Chronicles 13 6 57 1 Chronicles 13 6 73 1 Chronicles 13 6 58 1 Chronicles 13 6 74 1 Chronicles 13 6 59 1 Chronicles 13 6 75 1 Chronicles 13 6 60 1 Chronicles 13 6 76 1 Chronicles 13 6 61 1 Chronicles 13 6 77 1 Chronicles 13 6 62 1 Chronicles 13 6 78 1 Chronicles 13 6 63 1 Chronicles 13 6 79 1 Chronicles 13 6 64 1 Chronicles 13 6 80 1 Chronicles 13 6 65 1 Chronicles 13 6 81 1 Chronicles 13 6 66 1 Chronicles 13 12 4 1 Chronicles 13 12 4 1 Chronicles 13 12 4 1 Chronicles 13 12 5 1 Chronicles 13 12 5 1 Chronicles 13 12 6 1 Chronicles 13 12 6 1 Chronicles 13 12 7 1 Chronicles 13 12 7 1 Chronicles 13 12 8 1 Chronicles 13 12 8 1 Chronicles 13 12 9 1 Chronicles 13 12 9 1 Chronicles 13 12 10 1 Chronicles 13 12 10 1 Chronicles 13 12 11 1 Chronicles 13 12 11 1 Chronicles 13 12 12 1 Chronicles 13 12 12 1 Chronicles 13 12 13 1 Chronicles 13 12 13 1 Chronicles 13 12 14 1 Chronicles 13 12 14 1 Chronicles 13 12 15 1 Chronicles 13 12 15 1 Chronicles 13 12 16 1 Chronicles 13 12 16 1 Chronicles 13 12 17 1 Chronicles 13 12 17 1 Chronicles 13 12 18 1 Chronicles 13 12 18 1 Chronicles 13 12 19 1 Chronicles 13 12 19 1 Chronicles 13 12 20 1 Chronicles 13 12 20 1 Chronicles 13 12 21 1 Chronicles 13 12 21 1 Chronicles 13 12 22 1 Chronicles 13 12 22 1 Chronicles 13 12 23 1 Chronicles 13 12 23 1 Chronicles 13 12 24 1 Chronicles 13 12 24 1 Chronicles 13 12 25 1 Chronicles 13 12 25 1 Chronicles 13 12 26 1 Chronicles 13 12 26 1 Chronicles 13 12 27 1 Chronicles 13 12 27 1 Chronicles 13 12 28 1 Chronicles 13 12 28 1 Chronicles 13 12 29 1 Chronicles 13 12 29 1 Chronicles 13 12 30 1 Chronicles 13 12 30 1 Chronicles 13 12 31 1 Chronicles 13 12 31 1 Chronicles 13 12 32 1 Chronicles 13 12 32 1 Chronicles 13 12 33 1 Chronicles 13 12 33 1 Chronicles 13 12 34 1 Chronicles 13 12 34 1 Chronicles 13 12 35 1 Chronicles 13 12 35 1 Chronicles 13 12 36 1 Chronicles 13 12 36 1 Chronicles 13 12 37 1 Chronicles 13 12 37 1 Chronicles 13 12 38 1 Chronicles 13 12 38 1 Chronicles 13 12 39 1 Chronicles 13 12 39 1 Chronicles 13 12 40 1 Chronicles 13 12 40 1 Chronicles 13 12 41 2 Chronicles 14 2 1 2 Chronicles 14 1 18 2 Chronicles 14 2 2 2 Chronicles 14 2 1 2 Chronicles 14 2 3 2 Chronicles 14 2 2 2 Chronicles 14 2 4 2 Chronicles 14 2 3 2 Chronicles 14 2 5 2 Chronicles 14 2 4 2 Chronicles 14 2 6 2 Chronicles 14 2 5 2 Chronicles 14 2 7 2 Chronicles 14 2 6 2 Chronicles 14 2 8 2 Chronicles 14 2 7 2 Chronicles 14 2 9 2 Chronicles 14 2 8 2 Chronicles 14 2 10 2 Chronicles 14 2 9 2 Chronicles 14 2 11 2 Chronicles 14 2 10 2 Chronicles 14 2 12 2 Chronicles 14 2 11 2 Chronicles 14 2 13 2 Chronicles 14 2 12 2 Chronicles 14 2 14 2 Chronicles 14 2 13 2 Chronicles 14 2 15 2 Chronicles 14 2 14 2 Chronicles 14 2 16 2 Chronicles 14 2 15 2 Chronicles 14 2 17 2 Chronicles 14 2 16 2 Chronicles 14 2 18 2 Chronicles 14 2 17 2 Chronicles 14 14 1 2 Chronicles 14 13 23 2 Chronicles 14 14 2 2 Chronicles 14 14 1 2 Chronicles 14 14 3 2 Chronicles 14 14 2 2 Chronicles 14 14 4 2 Chronicles 14 14 3 2 Chronicles 14 14 5 2 Chronicles 14 14 4 2 Chronicles 14 14 6 2 Chronicles 14 14 5 2 Chronicles 14 14 7 2 Chronicles 14 14 6 2 Chronicles 14 14 8 2 Chronicles 14 14 7 2 Chronicles 14 14 9 2 Chronicles 14 14 8 2 Chronicles 14 14 10 2 Chronicles 14 14 9 2 Chronicles 14 14 11 2 Chronicles 14 14 10 2 Chronicles 14 14 12 2 Chronicles 14 14 11 2 Chronicles 14 14 13 2 Chronicles 14 14 12 2 Chronicles 14 14 14 2 Chronicles 14 14 13 2 Chronicles 14 14 15 2 Chronicles 14 14 14 Nehemiah 16 4 1 Nehemiah 16 3 33 Nehemiah 16 4 2 Nehemiah 16 3 34 Nehemiah 16 4 3 Nehemiah 16 3 35 Nehemiah 16 4 4 Nehemiah 16 3 36 Nehemiah 16 4 5 Nehemiah 16 3 37 Nehemiah 16 4 6 Nehemiah 16 3 38 Nehemiah 16 4 7 Nehemiah 16 4 1 Nehemiah 16 4 8 Nehemiah 16 4 2 Nehemiah 16 4 9 Nehemiah 16 4 3 Nehemiah 16 4 10 Nehemiah 16 4 4 Nehemiah 16 4 11 Nehemiah 16 4 5 Nehemiah 16 4 12 Nehemiah 16 4 6 Nehemiah 16 4 13 Nehemiah 16 4 7 Nehemiah 16 4 14 Nehemiah 16 4 8 Nehemiah 16 4 15 Nehemiah 16 4 9 Nehemiah 16 4 16 Nehemiah 16 4 10 Nehemiah 16 4 17 Nehemiah 16 4 11 Nehemiah 16 4 18 Nehemiah 16 4 12 Nehemiah 16 4 19 Nehemiah 16 4 13 Nehemiah 16 4 20 Nehemiah 16 4 14 Nehemiah 16 4 21 Nehemiah 16 4 15 Nehemiah 16 4 22 Nehemiah 16 4 16 Nehemiah 16 4 23 Nehemiah 16 4 17 Nehemiah 16 7 68 Nehemiah 16 7 68 Nehemiah 16 7 69 Nehemiah 16 7 68 Nehemiah 16 7 70 Nehemiah 16 7 69 Nehemiah 16 7 71 Nehemiah 16 7 70 Nehemiah 16 7 72 Nehemiah 16 7 71 Nehemiah 16 7 73 Nehemiah 16 7 72 Nehemiah 16 9 38 Nehemiah 16 10 1 Nehemiah 16 10 1 Nehemiah 16 10 2 Nehemiah 16 10 2 Nehemiah 16 10 3 Nehemiah 16 10 3 Nehemiah 16 10 4 Nehemiah 16 10 4 Nehemiah 16 10 5 Nehemiah 16 10 5 Nehemiah 16 10 6 Nehemiah 16 10 6 Nehemiah 16 10 7 Nehemiah 16 10 7 Nehemiah 16 10 8 Nehemiah 16 10 8 Nehemiah 16 10 9 Nehemiah 16 10 9 Nehemiah 16 10 10 Nehemiah 16 10 10 Nehemiah 16 10 11 Nehemiah 16 10 11 Nehemiah 16 10 12 Nehemiah 16 10 12 Nehemiah 16 10 13 Nehemiah 16 10 13 Nehemiah 16 10 14 Nehemiah 16 10 14 Nehemiah 16 10 15 Nehemiah 16 10 15 Nehemiah 16 10 16 Nehemiah 16 10 16 Nehemiah 16 10 17 Nehemiah 16 10 17 Nehemiah 16 10 18 Nehemiah 16 10 18 Nehemiah 16 10 19 Nehemiah 16 10 19 Nehemiah 16 10 20 Nehemiah 16 10 20 Nehemiah 16 10 21 Nehemiah 16 10 21 Nehemiah 16 10 22 Nehemiah 16 10 22 Nehemiah 16 10 23 Nehemiah 16 10 23 Nehemiah 16 10 24 Nehemiah 16 10 24 Nehemiah 16 10 25 Nehemiah 16 10 25 Nehemiah 16 10 26 Nehemiah 16 10 26 Nehemiah 16 10 27 Nehemiah 16 10 27 Nehemiah 16 10 28 Nehemiah 16 10 28 Nehemiah 16 10 29 Nehemiah 16 10 29 Nehemiah 16 10 30 Nehemiah 16 10 30 Nehemiah 16 10 31 Nehemiah 16 10 31 Nehemiah 16 10 32 Nehemiah 16 10 32 Nehemiah 16 10 33 Nehemiah 16 10 33 Nehemiah 16 10 34 Nehemiah 16 10 34 Nehemiah 16 10 35 Nehemiah 16 10 35 Nehemiah 16 10 36 Nehemiah 16 10 36 Nehemiah 16 10 37 Nehemiah 16 10 37 Nehemiah 16 10 38 Nehemiah 16 10 38 Nehemiah 16 10 39 Nehemiah 16 10 39 Nehemiah 16 10 40 Job 18 41 1 Job 18 40 25 Job 18 41 2 Job 18 40 26 Job 18 41 3 Job 18 40 27 Job 18 41 4 Job 18 40 28 Job 18 41 5 Job 18 40 29 Job 18 41 6 Job 18 40 30 Job 18 41 7 Job 18 40 31 Job 18 41 8 Job 18 40 32 Job 18 41 9 Job 18 41 1 Job 18 41 10 Job 18 41 2 Job 18 41 11 Job 18 41 3 Job 18 41 12 Job 18 41 4 Job 18 41 13 Job 18 41 5 Job 18 41 14 Job 18 41 6 Job 18 41 15 Job 18 41 7 Job 18 41 16 Job 18 41 8 Job 18 41 17 Job 18 41 9 Job 18 41 18 Job 18 41 10 Job 18 41 19 Job 18 41 11 Job 18 41 20 Job 18 41 12 Job 18 41 21 Job 18 41 13 Job 18 41 22 Job 18 41 14 Job 18 41 23 Job 18 41 15 Job 18 41 24 Job 18 41 16 Job 18 41 25 Job 18 41 17 Job 18 41 26 Job 18 41 18 Job 18 41 27 Job 18 41 19 Job 18 41 28 Job 18 41 20 Job 18 41 29 Job 18 41 21 Job 18 41 30 Job 18 41 22 Job 18 41 31 Job 18 41 23 Job 18 41 32 Job 18 41 24 Job 18 41 33 Job 18 41 25 Job 18 41 34 Job 18 41 26 Psalms 19 3 1 Psalms 19 3 1 Psalms 19 3 1 Psalms 19 3 2 Psalms 19 3 2 Psalms 19 3 3 Psalms 19 3 3 Psalms 19 3 4 Psalms 19 3 4 Psalms 19 3 5 Psalms 19 3 5 Psalms 19 3 6 Psalms 19 3 6 Psalms 19 3 7 Psalms 19 3 7 Psalms 19 3 8 Psalms 19 3 8 Psalms 19 3 9 Psalms 19 4 1 Psalms 19 4 1 Psalms 19 4 1 Psalms 19 4 2 Psalms 19 4 2 Psalms 19 4 3 Psalms 19 4 3 Psalms 19 4 4 Psalms 19 4 4 Psalms 19 4 5 Psalms 19 4 5 Psalms 19 4 6 Psalms 19 4 6 Psalms 19 4 7 Psalms 19 4 7 Psalms 19 4 8 Psalms 19 4 8 Psalms 19 4 9 Psalms 19 5 1 Psalms 19 5 1 Psalms 19 5 1 Psalms 19 5 2 Psalms 19 5 2 Psalms 19 5 3 Psalms 19 5 3 Psalms 19 5 4 Psalms 19 5 4 Psalms 19 5 5 Psalms 19 5 5 Psalms 19 5 6 Psalms 19 5 6 Psalms 19 5 7 Psalms 19 5 7 Psalms 19 5 8 Psalms 19 5 8 Psalms 19 5 9 Psalms 19 5 9 Psalms 19 5 10 Psalms 19 5 10 Psalms 19 5 11 Psalms 19 5 11 Psalms 19 5 12 Psalms 19 5 12 Psalms 19 5 13 Psalms 19 6 1 Psalms 19 6 1 Psalms 19 6 1 Psalms 19 6 2 Psalms 19 6 2 Psalms 19 6 3 Psalms 19 6 3 Psalms 19 6 4 Psalms 19 6 4 Psalms 19 6 5 Psalms 19 6 5 Psalms 19 6 6 Psalms 19 6 6 Psalms 19 6 7 Psalms 19 6 7 Psalms 19 6 8 Psalms 19 6 8 Psalms 19 6 9 Psalms 19 6 9 Psalms 19 6 10 Psalms 19 6 10 Psalms 19 6 11 Psalms 19 7 1 Psalms 19 7 1 Psalms 19 7 1 Psalms 19 7 2 Psalms 19 7 2 Psalms 19 7 3 Psalms 19 7 3 Psalms 19 7 4 Psalms 19 7 4 Psalms 19 7 5 Psalms 19 7 5 Psalms 19 7 6 Psalms 19 7 6 Psalms 19 7 7 Psalms 19 7 7 Psalms 19 7 8 Psalms 19 7 8 Psalms 19 7 9 Psalms 19 7 9 Psalms 19 7 10 Psalms 19 7 10 Psalms 19 7 11 Psalms 19 7 11 Psalms 19 7 12 Psalms 19 7 12 Psalms 19 7 13 Psalms 19 7 13 Psalms 19 7 14 Psalms 19 7 14 Psalms 19 7 15 Psalms 19 7 15 Psalms 19 7 16 Psalms 19 7 16 Psalms 19 7 17 Psalms 19 7 17 Psalms 19 7 18 Psalms 19 8 1 Psalms 19 8 1 Psalms 19 8 1 Psalms 19 8 2 Psalms 19 8 2 Psalms 19 8 3 Psalms 19 8 3 Psalms 19 8 4 Psalms 19 8 4 Psalms 19 8 5 Psalms 19 8 5 Psalms 19 8 6 Psalms 19 8 6 Psalms 19 8 7 Psalms 19 8 7 Psalms 19 8 8 Psalms 19 8 8 Psalms 19 8 9 Psalms 19 8 9 Psalms 19 8 10 Psalms 19 9 1 Psalms 19 9 1 Psalms 19 9 1 Psalms 19 9 2 Psalms 19 9 2 Psalms 19 9 3 Psalms 19 9 3 Psalms 19 9 4 Psalms 19 9 4 Psalms 19 9 5 Psalms 19 9 5 Psalms 19 9 6 Psalms 19 9 6 Psalms 19 9 7 Psalms 19 9 7 Psalms 19 9 8 Psalms 19 9 8 Psalms 19 9 9 Psalms 19 9 9 Psalms 19 9 10 Psalms 19 9 10 Psalms 19 9 11 Psalms 19 9 11 Psalms 19 9 12 Psalms 19 9 12 Psalms 19 9 13 Psalms 19 9 13 Psalms 19 9 14 Psalms 19 9 14 Psalms 19 9 15 Psalms 19 9 15 Psalms 19 9 16 Psalms 19 9 16 Psalms 19 9 17 Psalms 19 9 17 Psalms 19 9 18 Psalms 19 9 18 Psalms 19 9 19 Psalms 19 9 19 Psalms 19 9 20 Psalms 19 9 20 Psalms 19 9 21 Psalms 19 12 1 Psalms 19 12 1 Psalms 19 12 1 Psalms 19 12 2 Psalms 19 12 2 Psalms 19 12 3 Psalms 19 12 3 Psalms 19 12 4 Psalms 19 12 4 Psalms 19 12 5 Psalms 19 12 5 Psalms 19 12 6 Psalms 19 12 6 Psalms 19 12 7 Psalms 19 12 7 Psalms 19 12 8 Psalms 19 12 8 Psalms 19 12 9 Psalms 19 13 1 Psalms 19 13 1 Psalms 19 13 1 Psalms 19 13 2 Psalms 19 13 2 Psalms 19 13 3 Psalms 19 13 3 Psalms 19 13 4 Psalms 19 13 4 Psalms 19 13 5 Psalms 19 13 5 Psalms 19 13 6 Psalms 19 13 6 Psalms 19 13 6 Psalms 19 18 1 Psalms 19 18 1 Psalms 19 18 1 Psalms 19 18 2 Psalms 19 18 2 Psalms 19 18 3 Psalms 19 18 3 Psalms 19 18 4 Psalms 19 18 4 Psalms 19 18 5 Psalms 19 18 5 Psalms 19 18 6 Psalms 19 18 6 Psalms 19 18 7 Psalms 19 18 7 Psalms 19 18 8 Psalms 19 18 8 Psalms 19 18 9 Psalms 19 18 9 Psalms 19 18 10 Psalms 19 18 10 Psalms 19 18 11 Psalms 19 18 11 Psalms 19 18 12 Psalms 19 18 12 Psalms 19 18 13 Psalms 19 18 13 Psalms 19 18 14 Psalms 19 18 14 Psalms 19 18 15 Psalms 19 18 15 Psalms 19 18 16 Psalms 19 18 16 Psalms 19 18 17 Psalms 19 18 17 Psalms 19 18 18 Psalms 19 18 18 Psalms 19 18 19 Psalms 19 18 19 Psalms 19 18 20 Psalms 19 18 20 Psalms 19 18 21 Psalms 19 18 21 Psalms 19 18 22 Psalms 19 18 22 Psalms 19 18 23 Psalms 19 18 23 Psalms 19 18 24 Psalms 19 18 24 Psalms 19 18 25 Psalms 19 18 25 Psalms 19 18 26 Psalms 19 18 26 Psalms 19 18 27 Psalms 19 18 27 Psalms 19 18 28 Psalms 19 18 28 Psalms 19 18 29 Psalms 19 18 29 Psalms 19 18 30 Psalms 19 18 30 Psalms 19 18 31 Psalms 19 18 31 Psalms 19 18 32 Psalms 19 18 32 Psalms 19 18 33 Psalms 19 18 33 Psalms 19 18 34 Psalms 19 18 34 Psalms 19 18 35 Psalms 19 18 35 Psalms 19 18 36 Psalms 19 18 36 Psalms 19 18 37 Psalms 19 18 37 Psalms 19 18 38 Psalms 19 18 38 Psalms 19 18 39 Psalms 19 18 39 Psalms 19 18 40 Psalms 19 18 40 Psalms 19 18 41 Psalms 19 18 41 Psalms 19 18 42 Psalms 19 18 42 Psalms 19 18 43 Psalms 19 18 43 Psalms 19 18 44 Psalms 19 18 44 Psalms 19 18 45 Psalms 19 18 45 Psalms 19 18 46 Psalms 19 18 46 Psalms 19 18 47 Psalms 19 18 47 Psalms 19 18 48 Psalms 19 18 48 Psalms 19 18 49 Psalms 19 18 49 Psalms 19 18 50 Psalms 19 18 50 Psalms 19 18 51 Psalms 19 19 1 Psalms 19 19 1 Psalms 19 19 1 Psalms 19 19 2 Psalms 19 19 2 Psalms 19 19 3 Psalms 19 19 3 Psalms 19 19 4 Psalms 19 19 4 Psalms 19 19 5 Psalms 19 19 5 Psalms 19 19 6 Psalms 19 19 6 Psalms 19 19 7 Psalms 19 19 7 Psalms 19 19 8 Psalms 19 19 8 Psalms 19 19 9 Psalms 19 19 9 Psalms 19 19 10 Psalms 19 19 10 Psalms 19 19 11 Psalms 19 19 11 Psalms 19 19 12 Psalms 19 19 12 Psalms 19 19 13 Psalms 19 19 13 Psalms 19 19 14 Psalms 19 19 14 Psalms 19 19 15 Psalms 19 20 1 Psalms 19 20 1 Psalms 19 20 1 Psalms 19 20 2 Psalms 19 20 2 Psalms 19 20 3 Psalms 19 20 3 Psalms 19 20 4 Psalms 19 20 4 Psalms 19 20 5 Psalms 19 20 5 Psalms 19 20 6 Psalms 19 20 6 Psalms 19 20 7 Psalms 19 20 7 Psalms 19 20 8 Psalms 19 20 8 Psalms 19 20 9 Psalms 19 20 9 Psalms 19 20 10 Psalms 19 21 1 Psalms 19 21 1 Psalms 19 21 1 Psalms 19 21 2 Psalms 19 21 2 Psalms 19 21 3 Psalms 19 21 3 Psalms 19 21 4 Psalms 19 21 4 Psalms 19 21 5 Psalms 19 21 5 Psalms 19 21 6 Psalms 19 21 6 Psalms 19 21 7 Psalms 19 21 7 Psalms 19 21 8 Psalms 19 21 8 Psalms 19 21 9 Psalms 19 21 9 Psalms 19 21 10 Psalms 19 21 10 Psalms 19 21 11 Psalms 19 21 11 Psalms 19 21 12 Psalms 19 21 12 Psalms 19 21 13 Psalms 19 21 13 Psalms 19 21 14 Psalms 19 22 1 Psalms 19 22 1 Psalms 19 22 1 Psalms 19 22 2 Psalms 19 22 2 Psalms 19 22 3 Psalms 19 22 3 Psalms 19 22 4 Psalms 19 22 4 Psalms 19 22 5 Psalms 19 22 5 Psalms 19 22 6 Psalms 19 22 6 Psalms 19 22 7 Psalms 19 22 7 Psalms 19 22 8 Psalms 19 22 8 Psalms 19 22 9 Psalms 19 22 9 Psalms 19 22 10 Psalms 19 22 10 Psalms 19 22 11 Psalms 19 22 11 Psalms 19 22 12 Psalms 19 22 12 Psalms 19 22 13 Psalms 19 22 13 Psalms 19 22 14 Psalms 19 22 14 Psalms 19 22 15 Psalms 19 22 15 Psalms 19 22 16 Psalms 19 22 16 Psalms 19 22 17 Psalms 19 22 17 Psalms 19 22 18 Psalms 19 22 18 Psalms 19 22 19 Psalms 19 22 19 Psalms 19 22 20 Psalms 19 22 20 Psalms 19 22 21 Psalms 19 22 21 Psalms 19 22 22 Psalms 19 22 22 Psalms 19 22 23 Psalms 19 22 23 Psalms 19 22 24 Psalms 19 22 24 Psalms 19 22 25 Psalms 19 22 25 Psalms 19 22 26 Psalms 19 22 26 Psalms 19 22 27 Psalms 19 22 27 Psalms 19 22 28 Psalms 19 22 28 Psalms 19 22 29 Psalms 19 22 29 Psalms 19 22 30 Psalms 19 22 30 Psalms 19 22 31 Psalms 19 22 31 Psalms 19 22 32 Psalms 19 30 1 Psalms 19 30 1 Psalms 19 30 1 Psalms 19 30 2 Psalms 19 30 2 Psalms 19 30 3 Psalms 19 30 3 Psalms 19 30 4 Psalms 19 30 4 Psalms 19 30 5 Psalms 19 30 5 Psalms 19 30 6 Psalms 19 30 6 Psalms 19 30 7 Psalms 19 30 7 Psalms 19 30 8 Psalms 19 30 8 Psalms 19 30 9 Psalms 19 30 9 Psalms 19 30 10 Psalms 19 30 10 Psalms 19 30 11 Psalms 19 30 11 Psalms 19 30 12 Psalms 19 30 12 Psalms 19 30 13 Psalms 19 31 1 Psalms 19 31 1 Psalms 19 31 1 Psalms 19 31 2 Psalms 19 31 2 Psalms 19 31 3 Psalms 19 31 3 Psalms 19 31 4 Psalms 19 31 4 Psalms 19 31 5 Psalms 19 31 5 Psalms 19 31 6 Psalms 19 31 6 Psalms 19 31 7 Psalms 19 31 7 Psalms 19 31 8 Psalms 19 31 8 Psalms 19 31 9 Psalms 19 31 9 Psalms 19 31 10 Psalms 19 31 10 Psalms 19 31 11 Psalms 19 31 11 Psalms 19 31 12 Psalms 19 31 12 Psalms 19 31 13 Psalms 19 31 13 Psalms 19 31 14 Psalms 19 31 14 Psalms 19 31 15 Psalms 19 31 15 Psalms 19 31 16 Psalms 19 31 16 Psalms 19 31 17 Psalms 19 31 17 Psalms 19 31 18 Psalms 19 31 18 Psalms 19 31 19 Psalms 19 31 19 Psalms 19 31 20 Psalms 19 31 20 Psalms 19 31 21 Psalms 19 31 21 Psalms 19 31 22 Psalms 19 31 22 Psalms 19 31 23 Psalms 19 31 23 Psalms 19 31 24 Psalms 19 31 24 Psalms 19 31 25 Psalms 19 34 1 Psalms 19 34 1 Psalms 19 34 1 Psalms 19 34 2 Psalms 19 34 2 Psalms 19 34 3 Psalms 19 34 3 Psalms 19 34 4 Psalms 19 34 4 Psalms 19 34 5 Psalms 19 34 5 Psalms 19 34 6 Psalms 19 34 6 Psalms 19 34 7 Psalms 19 34 7 Psalms 19 34 8 Psalms 19 34 8 Psalms 19 34 9 Psalms 19 34 9 Psalms 19 34 10 Psalms 19 34 10 Psalms 19 34 11 Psalms 19 34 11 Psalms 19 34 12 Psalms 19 34 12 Psalms 19 34 13 Psalms 19 34 13 Psalms 19 34 14 Psalms 19 34 14 Psalms 19 34 15 Psalms 19 34 15 Psalms 19 34 16 Psalms 19 34 16 Psalms 19 34 17 Psalms 19 34 17 Psalms 19 34 18 Psalms 19 34 18 Psalms 19 34 19 Psalms 19 34 19 Psalms 19 34 20 Psalms 19 34 20 Psalms 19 34 21 Psalms 19 34 21 Psalms 19 34 22 Psalms 19 34 22 Psalms 19 34 23 Psalms 19 36 1 Psalms 19 36 1 Psalms 19 36 1 Psalms 19 36 2 Psalms 19 36 2 Psalms 19 36 3 Psalms 19 36 3 Psalms 19 36 4 Psalms 19 36 4 Psalms 19 36 5 Psalms 19 36 5 Psalms 19 36 6 Psalms 19 36 6 Psalms 19 36 7 Psalms 19 36 7 Psalms 19 36 8 Psalms 19 36 8 Psalms 19 36 9 Psalms 19 36 9 Psalms 19 36 10 Psalms 19 36 10 Psalms 19 36 11 Psalms 19 36 11 Psalms 19 36 12 Psalms 19 36 12 Psalms 19 36 13 Psalms 19 38 1 Psalms 19 38 1 Psalms 19 38 1 Psalms 19 38 2 Psalms 19 38 2 Psalms 19 38 3 Psalms 19 38 3 Psalms 19 38 4 Psalms 19 38 4 Psalms 19 38 5 Psalms 19 38 5 Psalms 19 38 6 Psalms 19 38 6 Psalms 19 38 7 Psalms 19 38 7 Psalms 19 38 8 Psalms 19 38 8 Psalms 19 38 9 Psalms 19 38 9 Psalms 19 38 10 Psalms 19 38 10 Psalms 19 38 11 Psalms 19 38 11 Psalms 19 38 12 Psalms 19 38 12 Psalms 19 38 13 Psalms 19 38 13 Psalms 19 38 14 Psalms 19 38 14 Psalms 19 38 15 Psalms 19 38 15 Psalms 19 38 16 Psalms 19 38 16 Psalms 19 38 17 Psalms 19 38 17 Psalms 19 38 18 Psalms 19 38 18 Psalms 19 38 19 Psalms 19 38 19 Psalms 19 38 20 Psalms 19 38 20 Psalms 19 38 21 Psalms 19 38 21 Psalms 19 38 22 Psalms 19 38 22 Psalms 19 38 23 Psalms 19 39 1 Psalms 19 39 1 Psalms 19 39 1 Psalms 19 39 2 Psalms 19 39 2 Psalms 19 39 3 Psalms 19 39 3 Psalms 19 39 4 Psalms 19 39 4 Psalms 19 39 5 Psalms 19 39 5 Psalms 19 39 6 Psalms 19 39 6 Psalms 19 39 7 Psalms 19 39 7 Psalms 19 39 8 Psalms 19 39 8 Psalms 19 39 9 Psalms 19 39 9 Psalms 19 39 10 Psalms 19 39 10 Psalms 19 39 11 Psalms 19 39 11 Psalms 19 39 12 Psalms 19 39 12 Psalms 19 39 13 Psalms 19 39 13 Psalms 19 39 14 Psalms 19 40 1 Psalms 19 40 1 Psalms 19 40 1 Psalms 19 40 2 Psalms 19 40 2 Psalms 19 40 3 Psalms 19 40 3 Psalms 19 40 4 Psalms 19 40 4 Psalms 19 40 5 Psalms 19 40 5 Psalms 19 40 6 Psalms 19 40 6 Psalms 19 40 7 Psalms 19 40 7 Psalms 19 40 8 Psalms 19 40 8 Psalms 19 40 9 Psalms 19 40 9 Psalms 19 40 10 Psalms 19 40 10 Psalms 19 40 11 Psalms 19 40 11 Psalms 19 40 12 Psalms 19 40 12 Psalms 19 40 13 Psalms 19 40 13 Psalms 19 40 14 Psalms 19 40 14 Psalms 19 40 15 Psalms 19 40 15 Psalms 19 40 16 Psalms 19 40 16 Psalms 19 40 17 Psalms 19 40 17 Psalms 19 40 18 Psalms 19 41 1 Psalms 19 41 1 Psalms 19 41 1 Psalms 19 41 2 Psalms 19 41 2 Psalms 19 41 3 Psalms 19 41 3 Psalms 19 41 4 Psalms 19 41 4 Psalms 19 41 5 Psalms 19 41 5 Psalms 19 41 6 Psalms 19 41 6 Psalms 19 41 7 Psalms 19 41 7 Psalms 19 41 8 Psalms 19 41 8 Psalms 19 41 9 Psalms 19 41 9 Psalms 19 41 10 Psalms 19 41 10 Psalms 19 41 11 Psalms 19 41 11 Psalms 19 41 12 Psalms 19 41 12 Psalms 19 41 13 Psalms 19 41 13 Psalms 19 41 14 Psalms 19 42 1 Psalms 19 42 1 Psalms 19 42 1 Psalms 19 42 2 Psalms 19 42 2 Psalms 19 42 3 Psalms 19 42 3 Psalms 19 42 4 Psalms 19 42 4 Psalms 19 42 5 Psalms 19 42 5 Psalms 19 42 6 Psalms 19 42 6 Psalms 19 42 7 Psalms 19 42 7 Psalms 19 42 8 Psalms 19 42 8 Psalms 19 42 9 Psalms 19 42 9 Psalms 19 42 10 Psalms 19 42 10 Psalms 19 42 11 Psalms 19 42 11 Psalms 19 42 12 Psalms 19 44 1 Psalms 19 44 1 Psalms 19 44 1 Psalms 19 44 2 Psalms 19 44 2 Psalms 19 44 3 Psalms 19 44 3 Psalms 19 44 4 Psalms 19 44 4 Psalms 19 44 5 Psalms 19 44 5 Psalms 19 44 6 Psalms 19 44 6 Psalms 19 44 7 Psalms 19 44 7 Psalms 19 44 8 Psalms 19 44 8 Psalms 19 44 9 Psalms 19 44 9 Psalms 19 44 10 Psalms 19 44 10 Psalms 19 44 11 Psalms 19 44 11 Psalms 19 44 12 Psalms 19 44 12 Psalms 19 44 13 Psalms 19 44 13 Psalms 19 44 14 Psalms 19 44 14 Psalms 19 44 15 Psalms 19 44 15 Psalms 19 44 16 Psalms 19 44 16 Psalms 19 44 17 Psalms 19 44 17 Psalms 19 44 18 Psalms 19 44 18 Psalms 19 44 19 Psalms 19 44 19 Psalms 19 44 20 Psalms 19 44 20 Psalms 19 44 21 Psalms 19 44 21 Psalms 19 44 22 Psalms 19 44 22 Psalms 19 44 23 Psalms 19 44 23 Psalms 19 44 24 Psalms 19 44 24 Psalms 19 44 25 Psalms 19 44 25 Psalms 19 44 26 Psalms 19 44 26 Psalms 19 44 27 Psalms 19 45 1 Psalms 19 45 1 Psalms 19 45 1 Psalms 19 45 2 Psalms 19 45 2 Psalms 19 45 3 Psalms 19 45 3 Psalms 19 45 4 Psalms 19 45 4 Psalms 19 45 5 Psalms 19 45 5 Psalms 19 45 6 Psalms 19 45 6 Psalms 19 45 7 Psalms 19 45 7 Psalms 19 45 8 Psalms 19 45 8 Psalms 19 45 9 Psalms 19 45 9 Psalms 19 45 10 Psalms 19 45 10 Psalms 19 45 11 Psalms 19 45 11 Psalms 19 45 12 Psalms 19 45 12 Psalms 19 45 13 Psalms 19 45 13 Psalms 19 45 14 Psalms 19 45 14 Psalms 19 45 15 Psalms 19 45 15 Psalms 19 45 16 Psalms 19 45 16 Psalms 19 45 17 Psalms 19 45 17 Psalms 19 45 18 Psalms 19 46 1 Psalms 19 46 1 Psalms 19 46 1 Psalms 19 46 2 Psalms 19 46 2 Psalms 19 46 3 Psalms 19 46 3 Psalms 19 46 4 Psalms 19 46 4 Psalms 19 46 5 Psalms 19 46 5 Psalms 19 46 6 Psalms 19 46 6 Psalms 19 46 7 Psalms 19 46 7 Psalms 19 46 8 Psalms 19 46 8 Psalms 19 46 9 Psalms 19 46 9 Psalms 19 46 10 Psalms 19 46 10 Psalms 19 46 11 Psalms 19 46 11 Psalms 19 46 12 Psalms 19 47 1 Psalms 19 47 1 Psalms 19 47 1 Psalms 19 47 2 Psalms 19 47 2 Psalms 19 47 3 Psalms 19 47 3 Psalms 19 47 4 Psalms 19 47 4 Psalms 19 47 5 Psalms 19 47 5 Psalms 19 47 6 Psalms 19 47 6 Psalms 19 47 7 Psalms 19 47 7 Psalms 19 47 8 Psalms 19 47 8 Psalms 19 47 9 Psalms 19 47 9 Psalms 19 47 10 Psalms 19 48 1 Psalms 19 48 1 Psalms 19 48 1 Psalms 19 48 2 Psalms 19 48 2 Psalms 19 48 3 Psalms 19 48 3 Psalms 19 48 4 Psalms 19 48 4 Psalms 19 48 5 Psalms 19 48 5 Psalms 19 48 6 Psalms 19 48 6 Psalms 19 48 7 Psalms 19 48 7 Psalms 19 48 8 Psalms 19 48 8 Psalms 19 48 9 Psalms 19 48 9 Psalms 19 48 10 Psalms 19 48 10 Psalms 19 48 11 Psalms 19 48 11 Psalms 19 48 12 Psalms 19 48 12 Psalms 19 48 13 Psalms 19 48 13 Psalms 19 48 14 Psalms 19 48 14 Psalms 19 48 15 Psalms 19 49 1 Psalms 19 49 1 Psalms 19 49 1 Psalms 19 49 2 Psalms 19 49 2 Psalms 19 49 3 Psalms 19 49 3 Psalms 19 49 4 Psalms 19 49 4 Psalms 19 49 5 Psalms 19 49 5 Psalms 19 49 6 Psalms 19 49 6 Psalms 19 49 7 Psalms 19 49 7 Psalms 19 49 8 Psalms 19 49 8 Psalms 19 49 9 Psalms 19 49 9 Psalms 19 49 10 Psalms 19 49 10 Psalms 19 49 11 Psalms 19 49 11 Psalms 19 49 12 Psalms 19 49 12 Psalms 19 49 13 Psalms 19 49 13 Psalms 19 49 14 Psalms 19 49 14 Psalms 19 49 15 Psalms 19 49 15 Psalms 19 49 16 Psalms 19 49 16 Psalms 19 49 17 Psalms 19 49 17 Psalms 19 49 18 Psalms 19 49 18 Psalms 19 49 19 Psalms 19 49 19 Psalms 19 49 20 Psalms 19 49 20 Psalms 19 49 21 Psalms 19 51 1 Psalms 19 51 1 Psalms 19 51 1 Psalms 19 51 2 Psalms 19 51 1 Psalms 19 51 3 Psalms 19 51 2 Psalms 19 51 4 Psalms 19 51 3 Psalms 19 51 5 Psalms 19 51 4 Psalms 19 51 6 Psalms 19 51 5 Psalms 19 51 7 Psalms 19 51 6 Psalms 19 51 8 Psalms 19 51 7 Psalms 19 51 9 Psalms 19 51 8 Psalms 19 51 10 Psalms 19 51 9 Psalms 19 51 11 Psalms 19 51 10 Psalms 19 51 12 Psalms 19 51 11 Psalms 19 51 13 Psalms 19 51 12 Psalms 19 51 14 Psalms 19 51 13 Psalms 19 51 15 Psalms 19 51 14 Psalms 19 51 16 Psalms 19 51 15 Psalms 19 51 17 Psalms 19 51 16 Psalms 19 51 18 Psalms 19 51 17 Psalms 19 51 19 Psalms 19 51 18 Psalms 19 51 20 Psalms 19 51 19 Psalms 19 51 21 Psalms 19 52 1 Psalms 19 52 1 Psalms 19 52 1 Psalms 19 52 2 Psalms 19 52 1 Psalms 19 52 3 Psalms 19 52 2 Psalms 19 52 4 Psalms 19 52 3 Psalms 19 52 5 Psalms 19 52 4 Psalms 19 52 6 Psalms 19 52 5 Psalms 19 52 7 Psalms 19 52 6 Psalms 19 52 8 Psalms 19 52 7 Psalms 19 52 9 Psalms 19 52 8 Psalms 19 52 10 Psalms 19 52 9 Psalms 19 52 11 Psalms 19 53 1 Psalms 19 53 1 Psalms 19 53 1 Psalms 19 53 2 Psalms 19 53 2 Psalms 19 53 3 Psalms 19 53 3 Psalms 19 53 4 Psalms 19 53 4 Psalms 19 53 5 Psalms 19 53 5 Psalms 19 53 6 Psalms 19 53 6 Psalms 19 53 7 Psalms 19 54 1 Psalms 19 54 1 Psalms 19 54 1 Psalms 19 54 2 Psalms 19 54 1 Psalms 19 54 3 Psalms 19 54 2 Psalms 19 54 4 Psalms 19 54 3 Psalms 19 54 5 Psalms 19 54 4 Psalms 19 54 6 Psalms 19 54 5 Psalms 19 54 7 Psalms 19 54 6 Psalms 19 54 8 Psalms 19 54 7 Psalms 19 54 9 Psalms 19 55 1 Psalms 19 55 1 Psalms 19 55 1 Psalms 19 55 2 Psalms 19 55 2 Psalms 19 55 3 Psalms 19 55 3 Psalms 19 55 4 Psalms 19 55 4 Psalms 19 55 5 Psalms 19 55 5 Psalms 19 55 6 Psalms 19 55 6 Psalms 19 55 7 Psalms 19 55 7 Psalms 19 55 8 Psalms 19 55 8 Psalms 19 55 9 Psalms 19 55 9 Psalms 19 55 10 Psalms 19 55 10 Psalms 19 55 11 Psalms 19 55 11 Psalms 19 55 12 Psalms 19 55 12 Psalms 19 55 13 Psalms 19 55 13 Psalms 19 55 14 Psalms 19 55 14 Psalms 19 55 15 Psalms 19 55 15 Psalms 19 55 16 Psalms 19 55 16 Psalms 19 55 17 Psalms 19 55 17 Psalms 19 55 18 Psalms 19 55 18 Psalms 19 55 19 Psalms 19 55 19 Psalms 19 55 20 Psalms 19 55 20 Psalms 19 55 21 Psalms 19 55 21 Psalms 19 55 22 Psalms 19 55 22 Psalms 19 55 23 Psalms 19 55 23 Psalms 19 55 24 Psalms 19 56 1 Psalms 19 56 1 Psalms 19 56 1 Psalms 19 56 2 Psalms 19 56 2 Psalms 19 56 3 Psalms 19 56 3 Psalms 19 56 4 Psalms 19 56 4 Psalms 19 56 5 Psalms 19 56 5 Psalms 19 56 6 Psalms 19 56 6 Psalms 19 56 7 Psalms 19 56 7 Psalms 19 56 8 Psalms 19 56 8 Psalms 19 56 9 Psalms 19 56 9 Psalms 19 56 10 Psalms 19 56 10 Psalms 19 56 11 Psalms 19 56 11 Psalms 19 56 12 Psalms 19 56 12 Psalms 19 56 13 Psalms 19 56 13 Psalms 19 56 14 Psalms 19 57 1 Psalms 19 57 1 Psalms 19 57 1 Psalms 19 57 2 Psalms 19 57 2 Psalms 19 57 3 Psalms 19 57 3 Psalms 19 57 4 Psalms 19 57 4 Psalms 19 57 5 Psalms 19 57 5 Psalms 19 57 6 Psalms 19 57 6 Psalms 19 57 7 Psalms 19 57 7 Psalms 19 57 8 Psalms 19 57 8 Psalms 19 57 9 Psalms 19 57 9 Psalms 19 57 10 Psalms 19 57 10 Psalms 19 57 11 Psalms 19 57 11 Psalms 19 57 12 Psalms 19 58 1 Psalms 19 58 1 Psalms 19 58 1 Psalms 19 58 2 Psalms 19 58 2 Psalms 19 58 3 Psalms 19 58 3 Psalms 19 58 4 Psalms 19 58 4 Psalms 19 58 5 Psalms 19 58 5 Psalms 19 58 6 Psalms 19 58 6 Psalms 19 58 7 Psalms 19 58 7 Psalms 19 58 8 Psalms 19 58 8 Psalms 19 58 9 Psalms 19 58 9 Psalms 19 58 10 Psalms 19 58 10 Psalms 19 58 11 Psalms 19 58 11 Psalms 19 58 12 Psalms 19 59 1 Psalms 19 59 1 Psalms 19 59 1 Psalms 19 59 2 Psalms 19 59 2 Psalms 19 59 3 Psalms 19 59 3 Psalms 19 59 4 Psalms 19 59 4 Psalms 19 59 5 Psalms 19 59 5 Psalms 19 59 6 Psalms 19 59 6 Psalms 19 59 7 Psalms 19 59 7 Psalms 19 59 8 Psalms 19 59 8 Psalms 19 59 9 Psalms 19 59 9 Psalms 19 59 10 Psalms 19 59 10 Psalms 19 59 11 Psalms 19 59 11 Psalms 19 59 12 Psalms 19 59 12 Psalms 19 59 13 Psalms 19 59 13 Psalms 19 59 14 Psalms 19 59 14 Psalms 19 59 15 Psalms 19 59 15 Psalms 19 59 16 Psalms 19 59 16 Psalms 19 59 17 Psalms 19 59 17 Psalms 19 59 18 Psalms 19 60 1 Psalms 19 60 1 Psalms 19 60 1 Psalms 19 60 2 Psalms 19 60 1 Psalms 19 60 3 Psalms 19 60 2 Psalms 19 60 4 Psalms 19 60 3 Psalms 19 60 5 Psalms 19 60 4 Psalms 19 60 6 Psalms 19 60 5 Psalms 19 60 7 Psalms 19 60 6 Psalms 19 60 8 Psalms 19 60 7 Psalms 19 60 9 Psalms 19 60 8 Psalms 19 60 10 Psalms 19 60 9 Psalms 19 60 11 Psalms 19 60 10 Psalms 19 60 12 Psalms 19 60 11 Psalms 19 60 13 Psalms 19 60 12 Psalms 19 60 14 Psalms 19 61 1 Psalms 19 61 1 Psalms 19 61 1 Psalms 19 61 2 Psalms 19 61 2 Psalms 19 61 3 Psalms 19 61 3 Psalms 19 61 4 Psalms 19 61 4 Psalms 19 61 5 Psalms 19 61 5 Psalms 19 61 6 Psalms 19 61 6 Psalms 19 61 7 Psalms 19 61 7 Psalms 19 61 8 Psalms 19 61 8 Psalms 19 61 9 Psalms 19 62 1 Psalms 19 62 1 Psalms 19 62 1 Psalms 19 62 2 Psalms 19 62 2 Psalms 19 62 3 Psalms 19 62 3 Psalms 19 62 4 Psalms 19 62 4 Psalms 19 62 5 Psalms 19 62 5 Psalms 19 62 6 Psalms 19 62 6 Psalms 19 62 7 Psalms 19 62 7 Psalms 19 62 8 Psalms 19 62 8 Psalms 19 62 9 Psalms 19 62 9 Psalms 19 62 10 Psalms 19 62 10 Psalms 19 62 11 Psalms 19 62 11 Psalms 19 62 12 Psalms 19 62 12 Psalms 19 62 13 Psalms 19 63 1 Psalms 19 63 1 Psalms 19 63 1 Psalms 19 63 2 Psalms 19 63 2 Psalms 19 63 3 Psalms 19 63 3 Psalms 19 63 4 Psalms 19 63 4 Psalms 19 63 5 Psalms 19 63 5 Psalms 19 63 6 Psalms 19 63 6 Psalms 19 63 7 Psalms 19 63 7 Psalms 19 63 8 Psalms 19 63 8 Psalms 19 63 9 Psalms 19 63 9 Psalms 19 63 10 Psalms 19 63 10 Psalms 19 63 11 Psalms 19 63 11 Psalms 19 63 12 Psalms 19 64 1 Psalms 19 64 1 Psalms 19 64 1 Psalms 19 64 2 Psalms 19 64 2 Psalms 19 64 3 Psalms 19 64 3 Psalms 19 64 4 Psalms 19 64 4 Psalms 19 64 5 Psalms 19 64 5 Psalms 19 64 6 Psalms 19 64 6 Psalms 19 64 7 Psalms 19 64 7 Psalms 19 64 8 Psalms 19 64 8 Psalms 19 64 9 Psalms 19 64 9 Psalms 19 64 10 Psalms 19 64 10 Psalms 19 64 11 Psalms 19 65 1 Psalms 19 65 1 Psalms 19 65 1 Psalms 19 65 2 Psalms 19 65 2 Psalms 19 65 3 Psalms 19 65 3 Psalms 19 65 4 Psalms 19 65 4 Psalms 19 65 5 Psalms 19 65 5 Psalms 19 65 6 Psalms 19 65 6 Psalms 19 65 7 Psalms 19 65 7 Psalms 19 65 8 Psalms 19 65 8 Psalms 19 65 9 Psalms 19 65 9 Psalms 19 65 10 Psalms 19 65 10 Psalms 19 65 11 Psalms 19 65 11 Psalms 19 65 12 Psalms 19 65 12 Psalms 19 65 13 Psalms 19 65 13 Psalms 19 65 14 Psalms 19 67 1 Psalms 19 67 1 Psalms 19 67 1 Psalms 19 67 2 Psalms 19 67 2 Psalms 19 67 3 Psalms 19 67 3 Psalms 19 67 4 Psalms 19 67 4 Psalms 19 67 5 Psalms 19 67 5 Psalms 19 67 6 Psalms 19 67 6 Psalms 19 67 7 Psalms 19 67 7 Psalms 19 67 8 Psalms 19 68 1 Psalms 19 68 1 Psalms 19 68 1 Psalms 19 68 2 Psalms 19 68 2 Psalms 19 68 3 Psalms 19 68 3 Psalms 19 68 4 Psalms 19 68 4 Psalms 19 68 5 Psalms 19 68 5 Psalms 19 68 6 Psalms 19 68 6 Psalms 19 68 7 Psalms 19 68 7 Psalms 19 68 8 Psalms 19 68 8 Psalms 19 68 9 Psalms 19 68 9 Psalms 19 68 10 Psalms 19 68 10 Psalms 19 68 11 Psalms 19 68 11 Psalms 19 68 12 Psalms 19 68 12 Psalms 19 68 13 Psalms 19 68 13 Psalms 19 68 14 Psalms 19 68 14 Psalms 19 68 15 Psalms 19 68 15 Psalms 19 68 16 Psalms 19 68 16 Psalms 19 68 17 Psalms 19 68 17 Psalms 19 68 18 Psalms 19 68 18 Psalms 19 68 19 Psalms 19 68 19 Psalms 19 68 20 Psalms 19 68 20 Psalms 19 68 21 Psalms 19 68 21 Psalms 19 68 22 Psalms 19 68 22 Psalms 19 68 23 Psalms 19 68 23 Psalms 19 68 24 Psalms 19 68 24 Psalms 19 68 25 Psalms 19 68 25 Psalms 19 68 26 Psalms 19 68 26 Psalms 19 68 27 Psalms 19 68 27 Psalms 19 68 28 Psalms 19 68 28 Psalms 19 68 29 Psalms 19 68 29 Psalms 19 68 30 Psalms 19 68 30 Psalms 19 68 31 Psalms 19 68 31 Psalms 19 68 32 Psalms 19 68 32 Psalms 19 68 33 Psalms 19 68 33 Psalms 19 68 34 Psalms 19 68 34 Psalms 19 68 35 Psalms 19 68 35 Psalms 19 68 36 Psalms 19 69 1 Psalms 19 69 1 Psalms 19 69 1 Psalms 19 69 2 Psalms 19 69 2 Psalms 19 69 3 Psalms 19 69 3 Psalms 19 69 4 Psalms 19 69 4 Psalms 19 69 5 Psalms 19 69 5 Psalms 19 69 6 Psalms 19 69 6 Psalms 19 69 7 Psalms 19 69 7 Psalms 19 69 8 Psalms 19 69 8 Psalms 19 69 9 Psalms 19 69 9 Psalms 19 69 10 Psalms 19 69 10 Psalms 19 69 11 Psalms 19 69 11 Psalms 19 69 12 Psalms 19 69 12 Psalms 19 69 13 Psalms 19 69 13 Psalms 19 69 14 Psalms 19 69 14 Psalms 19 69 15 Psalms 19 69 15 Psalms 19 69 16 Psalms 19 69 16 Psalms 19 69 17 Psalms 19 69 17 Psalms 19 69 18 Psalms 19 69 18 Psalms 19 69 19 Psalms 19 69 19 Psalms 19 69 20 Psalms 19 69 20 Psalms 19 69 21 Psalms 19 69 21 Psalms 19 69 22 Psalms 19 69 22 Psalms 19 69 23 Psalms 19 69 23 Psalms 19 69 24 Psalms 19 69 24 Psalms 19 69 25 Psalms 19 69 25 Psalms 19 69 26 Psalms 19 69 26 Psalms 19 69 27 Psalms 19 69 27 Psalms 19 69 28 Psalms 19 69 28 Psalms 19 69 29 Psalms 19 69 29 Psalms 19 69 30 Psalms 19 69 30 Psalms 19 69 31 Psalms 19 69 31 Psalms 19 69 32 Psalms 19 69 32 Psalms 19 69 33 Psalms 19 69 33 Psalms 19 69 34 Psalms 19 69 34 Psalms 19 69 35 Psalms 19 69 35 Psalms 19 69 36 Psalms 19 69 36 Psalms 19 69 37 Psalms 19 70 1 Psalms 19 70 1 Psalms 19 70 1 Psalms 19 70 2 Psalms 19 70 2 Psalms 19 70 3 Psalms 19 70 3 Psalms 19 70 4 Psalms 19 70 4 Psalms 19 70 5 Psalms 19 70 5 Psalms 19 70 6 Psalms 19 75 1 Psalms 19 75 1 Psalms 19 75 1 Psalms 19 75 2 Psalms 19 75 2 Psalms 19 75 3 Psalms 19 75 3 Psalms 19 75 4 Psalms 19 75 4 Psalms 19 75 5 Psalms 19 75 5 Psalms 19 75 6 Psalms 19 75 6 Psalms 19 75 7 Psalms 19 75 7 Psalms 19 75 8 Psalms 19 75 8 Psalms 19 75 9 Psalms 19 75 9 Psalms 19 75 10 Psalms 19 75 10 Psalms 19 75 11 Psalms 19 76 1 Psalms 19 76 1 Psalms 19 76 1 Psalms 19 76 2 Psalms 19 76 2 Psalms 19 76 3 Psalms 19 76 3 Psalms 19 76 4 Psalms 19 76 4 Psalms 19 76 5 Psalms 19 76 5 Psalms 19 76 6 Psalms 19 76 6 Psalms 19 76 7 Psalms 19 76 7 Psalms 19 76 8 Psalms 19 76 8 Psalms 19 76 9 Psalms 19 76 9 Psalms 19 76 10 Psalms 19 76 10 Psalms 19 76 11 Psalms 19 76 11 Psalms 19 76 12 Psalms 19 76 12 Psalms 19 76 13 Psalms 19 77 1 Psalms 19 77 1 Psalms 19 77 1 Psalms 19 77 2 Psalms 19 77 2 Psalms 19 77 3 Psalms 19 77 3 Psalms 19 77 4 Psalms 19 77 4 Psalms 19 77 5 Psalms 19 77 5 Psalms 19 77 6 Psalms 19 77 6 Psalms 19 77 7 Psalms 19 77 7 Psalms 19 77 8 Psalms 19 77 8 Psalms 19 77 9 Psalms 19 77 9 Psalms 19 77 10 Psalms 19 77 10 Psalms 19 77 11 Psalms 19 77 11 Psalms 19 77 12 Psalms 19 77 12 Psalms 19 77 13 Psalms 19 77 13 Psalms 19 77 14 Psalms 19 77 14 Psalms 19 77 15 Psalms 19 77 15 Psalms 19 77 16 Psalms 19 77 16 Psalms 19 77 17 Psalms 19 77 17 Psalms 19 77 18 Psalms 19 77 18 Psalms 19 77 19 Psalms 19 77 19 Psalms 19 77 20 Psalms 19 77 20 Psalms 19 77 21 Psalms 19 80 1 Psalms 19 80 1 Psalms 19 80 1 Psalms 19 80 2 Psalms 19 80 2 Psalms 19 80 3 Psalms 19 80 3 Psalms 19 80 4 Psalms 19 80 4 Psalms 19 80 5 Psalms 19 80 5 Psalms 19 80 6 Psalms 19 80 6 Psalms 19 80 7 Psalms 19 80 7 Psalms 19 80 8 Psalms 19 80 8 Psalms 19 80 9 Psalms 19 80 9 Psalms 19 80 10 Psalms 19 80 10 Psalms 19 80 11 Psalms 19 80 11 Psalms 19 80 12 Psalms 19 80 12 Psalms 19 80 13 Psalms 19 80 13 Psalms 19 80 14 Psalms 19 80 14 Psalms 19 80 15 Psalms 19 80 15 Psalms 19 80 16 Psalms 19 80 16 Psalms 19 80 17 Psalms 19 80 17 Psalms 19 80 18 Psalms 19 80 18 Psalms 19 80 19 Psalms 19 80 19 Psalms 19 80 20 Psalms 19 81 1 Psalms 19 81 1 Psalms 19 81 1 Psalms 19 81 2 Psalms 19 81 2 Psalms 19 81 3 Psalms 19 81 3 Psalms 19 81 4 Psalms 19 81 4 Psalms 19 81 5 Psalms 19 81 5 Psalms 19 81 6 Psalms 19 81 6 Psalms 19 81 7 Psalms 19 81 7 Psalms 19 81 8 Psalms 19 81 8 Psalms 19 81 9 Psalms 19 81 9 Psalms 19 81 10 Psalms 19 81 10 Psalms 19 81 11 Psalms 19 81 11 Psalms 19 81 12 Psalms 19 81 12 Psalms 19 81 13 Psalms 19 81 13 Psalms 19 81 14 Psalms 19 81 14 Psalms 19 81 15 Psalms 19 81 15 Psalms 19 81 16 Psalms 19 81 16 Psalms 19 81 17 Psalms 19 83 1 Psalms 19 83 1 Psalms 19 83 1 Psalms 19 83 2 Psalms 19 83 2 Psalms 19 83 3 Psalms 19 83 3 Psalms 19 83 4 Psalms 19 83 4 Psalms 19 83 5 Psalms 19 83 5 Psalms 19 83 6 Psalms 19 83 6 Psalms 19 83 7 Psalms 19 83 7 Psalms 19 83 8 Psalms 19 83 8 Psalms 19 83 9 Psalms 19 83 9 Psalms 19 83 10 Psalms 19 83 10 Psalms 19 83 11 Psalms 19 83 11 Psalms 19 83 12 Psalms 19 83 12 Psalms 19 83 13 Psalms 19 83 13 Psalms 19 83 14 Psalms 19 83 14 Psalms 19 83 15 Psalms 19 83 15 Psalms 19 83 16 Psalms 19 83 16 Psalms 19 83 17 Psalms 19 83 17 Psalms 19 83 18 Psalms 19 83 18 Psalms 19 83 19 Psalms 19 84 1 Psalms 19 84 1 Psalms 19 84 1 Psalms 19 84 2 Psalms 19 84 2 Psalms 19 84 3 Psalms 19 84 3 Psalms 19 84 4 Psalms 19 84 4 Psalms 19 84 5 Psalms 19 84 5 Psalms 19 84 6 Psalms 19 84 6 Psalms 19 84 7 Psalms 19 84 7 Psalms 19 84 8 Psalms 19 84 8 Psalms 19 84 9 Psalms 19 84 9 Psalms 19 84 10 Psalms 19 84 10 Psalms 19 84 11 Psalms 19 84 11 Psalms 19 84 12 Psalms 19 84 12 Psalms 19 84 13 Psalms 19 85 1 Psalms 19 85 1 Psalms 19 85 1 Psalms 19 85 2 Psalms 19 85 2 Psalms 19 85 3 Psalms 19 85 3 Psalms 19 85 4 Psalms 19 85 4 Psalms 19 85 5 Psalms 19 85 5 Psalms 19 85 6 Psalms 19 85 6 Psalms 19 85 7 Psalms 19 85 7 Psalms 19 85 8 Psalms 19 85 8 Psalms 19 85 9 Psalms 19 85 9 Psalms 19 85 10 Psalms 19 85 10 Psalms 19 85 11 Psalms 19 85 11 Psalms 19 85 12 Psalms 19 85 12 Psalms 19 85 13 Psalms 19 85 13 Psalms 19 85 14 Psalms 19 88 1 Psalms 19 88 1 Psalms 19 88 1 Psalms 19 88 2 Psalms 19 88 2 Psalms 19 88 3 Psalms 19 88 3 Psalms 19 88 4 Psalms 19 88 4 Psalms 19 88 5 Psalms 19 88 5 Psalms 19 88 6 Psalms 19 88 6 Psalms 19 88 7 Psalms 19 88 7 Psalms 19 88 8 Psalms 19 88 8 Psalms 19 88 9 Psalms 19 88 9 Psalms 19 88 10 Psalms 19 88 10 Psalms 19 88 11 Psalms 19 88 11 Psalms 19 88 12 Psalms 19 88 12 Psalms 19 88 13 Psalms 19 88 13 Psalms 19 88 14 Psalms 19 88 14 Psalms 19 88 15 Psalms 19 88 15 Psalms 19 88 16 Psalms 19 88 16 Psalms 19 88 17 Psalms 19 88 17 Psalms 19 88 18 Psalms 19 88 18 Psalms 19 88 19 Psalms 19 89 1 Psalms 19 89 1 Psalms 19 89 1 Psalms 19 89 2 Psalms 19 89 2 Psalms 19 89 3 Psalms 19 89 3 Psalms 19 89 4 Psalms 19 89 4 Psalms 19 89 5 Psalms 19 89 5 Psalms 19 89 6 Psalms 19 89 6 Psalms 19 89 7 Psalms 19 89 7 Psalms 19 89 8 Psalms 19 89 8 Psalms 19 89 9 Psalms 19 89 9 Psalms 19 89 10 Psalms 19 89 10 Psalms 19 89 11 Psalms 19 89 11 Psalms 19 89 12 Psalms 19 89 12 Psalms 19 89 13 Psalms 19 89 13 Psalms 19 89 14 Psalms 19 89 14 Psalms 19 89 15 Psalms 19 89 15 Psalms 19 89 16 Psalms 19 89 16 Psalms 19 89 17 Psalms 19 89 17 Psalms 19 89 18 Psalms 19 89 18 Psalms 19 89 19 Psalms 19 89 19 Psalms 19 89 20 Psalms 19 89 20 Psalms 19 89 21 Psalms 19 89 21 Psalms 19 89 22 Psalms 19 89 22 Psalms 19 89 23 Psalms 19 89 23 Psalms 19 89 24 Psalms 19 89 24 Psalms 19 89 25 Psalms 19 89 25 Psalms 19 89 26 Psalms 19 89 26 Psalms 19 89 27 Psalms 19 89 27 Psalms 19 89 28 Psalms 19 89 28 Psalms 19 89 29 Psalms 19 89 29 Psalms 19 89 30 Psalms 19 89 30 Psalms 19 89 31 Psalms 19 89 31 Psalms 19 89 32 Psalms 19 89 32 Psalms 19 89 33 Psalms 19 89 33 Psalms 19 89 34 Psalms 19 89 34 Psalms 19 89 35 Psalms 19 89 35 Psalms 19 89 36 Psalms 19 89 36 Psalms 19 89 37 Psalms 19 89 37 Psalms 19 89 38 Psalms 19 89 38 Psalms 19 89 39 Psalms 19 89 39 Psalms 19 89 40 Psalms 19 89 40 Psalms 19 89 41 Psalms 19 89 41 Psalms 19 89 42 Psalms 19 89 42 Psalms 19 89 43 Psalms 19 89 43 Psalms 19 89 44 Psalms 19 89 44 Psalms 19 89 45 Psalms 19 89 45 Psalms 19 89 46 Psalms 19 89 46 Psalms 19 89 47 Psalms 19 89 47 Psalms 19 89 48 Psalms 19 89 48 Psalms 19 89 49 Psalms 19 89 49 Psalms 19 89 50 Psalms 19 89 50 Psalms 19 89 51 Psalms 19 89 51 Psalms 19 89 52 Psalms 19 89 52 Psalms 19 89 53 Psalms 19 92 1 Psalms 19 92 1 Psalms 19 92 1 Psalms 19 92 2 Psalms 19 92 2 Psalms 19 92 3 Psalms 19 92 3 Psalms 19 92 4 Psalms 19 92 4 Psalms 19 92 5 Psalms 19 92 5 Psalms 19 92 6 Psalms 19 92 6 Psalms 19 92 7 Psalms 19 92 7 Psalms 19 92 8 Psalms 19 92 8 Psalms 19 92 9 Psalms 19 92 9 Psalms 19 92 10 Psalms 19 92 10 Psalms 19 92 11 Psalms 19 92 11 Psalms 19 92 12 Psalms 19 92 12 Psalms 19 92 13 Psalms 19 92 13 Psalms 19 92 14 Psalms 19 92 14 Psalms 19 92 15 Psalms 19 92 15 Psalms 19 92 16 Psalms 19 102 1 Psalms 19 102 1 Psalms 19 102 1 Psalms 19 102 2 Psalms 19 102 2 Psalms 19 102 3 Psalms 19 102 3 Psalms 19 102 4 Psalms 19 102 4 Psalms 19 102 5 Psalms 19 102 5 Psalms 19 102 6 Psalms 19 102 6 Psalms 19 102 7 Psalms 19 102 7 Psalms 19 102 8 Psalms 19 102 8 Psalms 19 102 9 Psalms 19 102 9 Psalms 19 102 10 Psalms 19 102 10 Psalms 19 102 11 Psalms 19 102 11 Psalms 19 102 12 Psalms 19 102 12 Psalms 19 102 13 Psalms 19 102 13 Psalms 19 102 14 Psalms 19 102 14 Psalms 19 102 15 Psalms 19 102 15 Psalms 19 102 16 Psalms 19 102 16 Psalms 19 102 17 Psalms 19 102 17 Psalms 19 102 18 Psalms 19 102 18 Psalms 19 102 19 Psalms 19 102 19 Psalms 19 102 20 Psalms 19 102 20 Psalms 19 102 21 Psalms 19 102 21 Psalms 19 102 22 Psalms 19 102 22 Psalms 19 102 23 Psalms 19 102 23 Psalms 19 102 24 Psalms 19 102 24 Psalms 19 102 25 Psalms 19 102 25 Psalms 19 102 26 Psalms 19 102 26 Psalms 19 102 27 Psalms 19 102 27 Psalms 19 102 28 Psalms 19 102 28 Psalms 19 102 29 Psalms 19 108 1 Psalms 19 108 1 Psalms 19 108 1 Psalms 19 108 2 Psalms 19 108 2 Psalms 19 108 3 Psalms 19 108 3 Psalms 19 108 4 Psalms 19 108 4 Psalms 19 108 5 Psalms 19 108 5 Psalms 19 108 6 Psalms 19 108 6 Psalms 19 108 7 Psalms 19 108 7 Psalms 19 108 8 Psalms 19 108 8 Psalms 19 108 9 Psalms 19 108 9 Psalms 19 108 10 Psalms 19 108 10 Psalms 19 108 11 Psalms 19 108 11 Psalms 19 108 12 Psalms 19 108 12 Psalms 19 108 13 Psalms 19 108 13 Psalms 19 108 14 Psalms 19 140 1 Psalms 19 140 1 Psalms 19 140 1 Psalms 19 140 2 Psalms 19 140 2 Psalms 19 140 3 Psalms 19 140 3 Psalms 19 140 4 Psalms 19 140 4 Psalms 19 140 5 Psalms 19 140 5 Psalms 19 140 6 Psalms 19 140 6 Psalms 19 140 7 Psalms 19 140 7 Psalms 19 140 8 Psalms 19 140 8 Psalms 19 140 9 Psalms 19 140 9 Psalms 19 140 10 Psalms 19 140 10 Psalms 19 140 11 Psalms 19 140 11 Psalms 19 140 12 Psalms 19 140 12 Psalms 19 140 13 Psalms 19 140 13 Psalms 19 140 14 Psalms 19 142 1 Psalms 19 142 1 Psalms 19 142 1 Psalms 19 142 2 Psalms 19 142 2 Psalms 19 142 3 Psalms 19 142 3 Psalms 19 142 4 Psalms 19 142 4 Psalms 19 142 5 Psalms 19 142 5 Psalms 19 142 6 Psalms 19 142 6 Psalms 19 142 7 Psalms 19 142 7 Psalms 19 142 8 Ecclesiastes 21 5 1 Ecclesiastes 21 4 17 Ecclesiastes 21 5 2 Ecclesiastes 21 5 1 Ecclesiastes 21 5 3 Ecclesiastes 21 5 2 Ecclesiastes 21 5 4 Ecclesiastes 21 5 3 Ecclesiastes 21 5 5 Ecclesiastes 21 5 4 Ecclesiastes 21 5 6 Ecclesiastes 21 5 5 Ecclesiastes 21 5 7 Ecclesiastes 21 5 6 Ecclesiastes 21 5 8 Ecclesiastes 21 5 7 Ecclesiastes 21 5 9 Ecclesiastes 21 5 8 Ecclesiastes 21 5 10 Ecclesiastes 21 5 9 Ecclesiastes 21 5 11 Ecclesiastes 21 5 10 Ecclesiastes 21 5 12 Ecclesiastes 21 5 11 Ecclesiastes 21 5 13 Ecclesiastes 21 5 12 Ecclesiastes 21 5 14 Ecclesiastes 21 5 13 Ecclesiastes 21 5 15 Ecclesiastes 21 5 14 Ecclesiastes 21 5 16 Ecclesiastes 21 5 15 Ecclesiastes 21 5 17 Ecclesiastes 21 5 16 Ecclesiastes 21 5 18 Ecclesiastes 21 5 17 Ecclesiastes 21 5 19 Ecclesiastes 21 5 18 Ecclesiastes 21 5 20 Ecclesiastes 21 5 19 Song of Solomon 22 6 13 Song of Solomon 22 7 1 Song of Solomon 22 7 1 Song of Solomon 22 7 2 Song of Solomon 22 7 2 Song of Solomon 22 7 3 Song of Solomon 22 7 3 Song of Solomon 22 7 4 Song of Solomon 22 7 4 Song of Solomon 22 7 5 Song of Solomon 22 7 5 Song of Solomon 22 7 6 Song of Solomon 22 7 6 Song of Solomon 22 7 7 Song of Solomon 22 7 7 Song of Solomon 22 7 8 Song of Solomon 22 7 8 Song of Solomon 22 7 9 Song of Solomon 22 7 9 Song of Solomon 22 7 10 Song of Solomon 22 7 10 Song of Solomon 22 7 11 Song of Solomon 22 7 11 Song of Solomon 22 7 12 Song of Solomon 22 7 12 Song of Solomon 22 7 13 Song of Solomon 22 7 13 Song of Solomon 22 7 14 Isaiah 23 9 1 Isaiah 23 8 23 Isaiah 23 9 2 Isaiah 23 9 1 Isaiah 23 9 3 Isaiah 23 9 2 Isaiah 23 9 4 Isaiah 23 9 3 Isaiah 23 9 5 Isaiah 23 9 4 Isaiah 23 9 6 Isaiah 23 9 5 Isaiah 23 9 7 Isaiah 23 9 6 Isaiah 23 9 8 Isaiah 23 9 7 Isaiah 23 9 9 Isaiah 23 9 8 Isaiah 23 9 10 Isaiah 23 9 9 Isaiah 23 9 11 Isaiah 23 9 10 Isaiah 23 9 12 Isaiah 23 9 11 Isaiah 23 9 13 Isaiah 23 9 12 Isaiah 23 9 14 Isaiah 23 9 13 Isaiah 23 9 15 Isaiah 23 9 14 Isaiah 23 9 16 Isaiah 23 9 15 Isaiah 23 9 17 Isaiah 23 9 16 Isaiah 23 9 18 Isaiah 23 9 17 Isaiah 23 9 19 Isaiah 23 9 18 Isaiah 23 9 20 Isaiah 23 9 19 Isaiah 23 9 21 Isaiah 23 9 20 Isaiah 23 63 19 Isaiah 23 63 19 Isaiah 23 64 1 Isaiah 23 63 19 Isaiah 23 64 2 Isaiah 23 64 1 Isaiah 23 64 3 Isaiah 23 64 2 Isaiah 23 64 4 Isaiah 23 64 3 Isaiah 23 64 5 Isaiah 23 64 4 Isaiah 23 64 6 Isaiah 23 64 5 Isaiah 23 64 7 Isaiah 23 64 6 Isaiah 23 64 8 Isaiah 23 64 7 Isaiah 23 64 9 Isaiah 23 64 8 Isaiah 23 64 10 Isaiah 23 64 9 Isaiah 23 64 11 Isaiah 23 64 10 Isaiah 23 64 12 Isaiah 23 64 11 Jeremiah 24 9 1 Jeremiah 24 8 23 Jeremiah 24 9 2 Jeremiah 24 9 1 Jeremiah 24 9 3 Jeremiah 24 9 2 Jeremiah 24 9 4 Jeremiah 24 9 3 Jeremiah 24 9 5 Jeremiah 24 9 4 Jeremiah 24 9 6 Jeremiah 24 9 5 Jeremiah 24 9 7 Jeremiah 24 9 6 Jeremiah 24 9 8 Jeremiah 24 9 7 Jeremiah 24 9 9 Jeremiah 24 9 8 Jeremiah 24 9 10 Jeremiah 24 9 9 Jeremiah 24 9 11 Jeremiah 24 9 10 Jeremiah 24 9 12 Jeremiah 24 9 11 Jeremiah 24 9 13 Jeremiah 24 9 12 Jeremiah 24 9 14 Jeremiah 24 9 13 Jeremiah 24 9 15 Jeremiah 24 9 14 Jeremiah 24 9 16 Jeremiah 24 9 15 Jeremiah 24 9 17 Jeremiah 24 9 16 Jeremiah 24 9 18 Jeremiah 24 9 17 Jeremiah 24 9 19 Jeremiah 24 9 18 Jeremiah 24 9 20 Jeremiah 24 9 19 Jeremiah 24 9 21 Jeremiah 24 9 20 Jeremiah 24 9 22 Jeremiah 24 9 21 Jeremiah 24 9 23 Jeremiah 24 9 22 Jeremiah 24 9 24 Jeremiah 24 9 23 Jeremiah 24 9 25 Jeremiah 24 9 24 Jeremiah 24 9 26 Jeremiah 24 9 25 Ezekiel 26 20 45 Ezekiel 26 21 1 Ezekiel 26 20 46 Ezekiel 26 21 2 Ezekiel 26 20 47 Ezekiel 26 21 3 Ezekiel 26 20 48 Ezekiel 26 21 4 Ezekiel 26 20 49 Ezekiel 26 21 5 Ezekiel 26 21 1 Ezekiel 26 21 6 Ezekiel 26 21 2 Ezekiel 26 21 7 Ezekiel 26 21 3 Ezekiel 26 21 8 Ezekiel 26 21 4 Ezekiel 26 21 9 Ezekiel 26 21 5 Ezekiel 26 21 10 Ezekiel 26 21 6 Ezekiel 26 21 11 Ezekiel 26 21 7 Ezekiel 26 21 12 Ezekiel 26 21 8 Ezekiel 26 21 13 Ezekiel 26 21 9 Ezekiel 26 21 14 Ezekiel 26 21 10 Ezekiel 26 21 15 Ezekiel 26 21 11 Ezekiel 26 21 16 Ezekiel 26 21 12 Ezekiel 26 21 17 Ezekiel 26 21 13 Ezekiel 26 21 18 Ezekiel 26 21 14 Ezekiel 26 21 19 Ezekiel 26 21 15 Ezekiel 26 21 20 Ezekiel 26 21 16 Ezekiel 26 21 21 Ezekiel 26 21 17 Ezekiel 26 21 22 Ezekiel 26 21 18 Ezekiel 26 21 23 Ezekiel 26 21 19 Ezekiel 26 21 24 Ezekiel 26 21 20 Ezekiel 26 21 25 Ezekiel 26 21 21 Ezekiel 26 21 26 Ezekiel 26 21 22 Ezekiel 26 21 27 Ezekiel 26 21 23 Ezekiel 26 21 28 Ezekiel 26 21 24 Ezekiel 26 21 29 Ezekiel 26 21 25 Ezekiel 26 21 30 Ezekiel 26 21 26 Ezekiel 26 21 31 Ezekiel 26 21 27 Ezekiel 26 21 32 Ezekiel 26 21 28 Ezekiel 26 21 33 Ezekiel 26 21 29 Ezekiel 26 21 34 Ezekiel 26 21 30 Ezekiel 26 21 35 Ezekiel 26 21 31 Ezekiel 26 21 36 Ezekiel 26 21 32 Ezekiel 26 21 37 Daniel 27 4 1 Daniel 27 3 31 Daniel 27 4 2 Daniel 27 3 32 Daniel 27 4 3 Daniel 27 3 33 Daniel 27 4 4 Daniel 27 4 1 Daniel 27 4 5 Daniel 27 4 2 Daniel 27 4 6 Daniel 27 4 3 Daniel 27 4 7 Daniel 27 4 4 Daniel 27 4 8 Daniel 27 4 5 Daniel 27 4 9 Daniel 27 4 6 Daniel 27 4 10 Daniel 27 4 7 Daniel 27 4 11 Daniel 27 4 8 Daniel 27 4 12 Daniel 27 4 9 Daniel 27 4 13 Daniel 27 4 10 Daniel 27 4 14 Daniel 27 4 11 Daniel 27 4 15 Daniel 27 4 12 Daniel 27 4 16 Daniel 27 4 13 Daniel 27 4 17 Daniel 27 4 14 Daniel 27 4 18 Daniel 27 4 15 Daniel 27 4 19 Daniel 27 4 16 Daniel 27 4 20 Daniel 27 4 17 Daniel 27 4 21 Daniel 27 4 18 Daniel 27 4 22 Daniel 27 4 19 Daniel 27 4 23 Daniel 27 4 20 Daniel 27 4 24 Daniel 27 4 21 Daniel 27 4 25 Daniel 27 4 22 Daniel 27 4 26 Daniel 27 4 23 Daniel 27 4 27 Daniel 27 4 24 Daniel 27 4 28 Daniel 27 4 25 Daniel 27 4 29 Daniel 27 4 26 Daniel 27 4 30 Daniel 27 4 27 Daniel 27 4 31 Daniel 27 4 28 Daniel 27 4 32 Daniel 27 4 29 Daniel 27 4 33 Daniel 27 4 30 Daniel 27 4 34 Daniel 27 4 31 Daniel 27 4 35 Daniel 27 4 32 Daniel 27 4 36 Daniel 27 4 33 Daniel 27 4 37 Daniel 27 4 34 Daniel 27 5 31 Daniel 27 6 1 Daniel 27 6 1 Daniel 27 6 2 Daniel 27 6 2 Daniel 27 6 3 Daniel 27 6 3 Daniel 27 6 4 Daniel 27 6 4 Daniel 27 6 5 Daniel 27 6 5 Daniel 27 6 6 Daniel 27 6 6 Daniel 27 6 7 Daniel 27 6 7 Daniel 27 6 8 Daniel 27 6 8 Daniel 27 6 9 Daniel 27 6 9 Daniel 27 6 10 Daniel 27 6 10 Daniel 27 6 11 Daniel 27 6 11 Daniel 27 6 12 Daniel 27 6 12 Daniel 27 6 13 Daniel 27 6 13 Daniel 27 6 14 Daniel 27 6 14 Daniel 27 6 15 Daniel 27 6 15 Daniel 27 6 16 Daniel 27 6 16 Daniel 27 6 17 Daniel 27 6 17 Daniel 27 6 18 Daniel 27 6 18 Daniel 27 6 19 Daniel 27 6 19 Daniel 27 6 20 Daniel 27 6 20 Daniel 27 6 21 Daniel 27 6 21 Daniel 27 6 22 Daniel 27 6 22 Daniel 27 6 23 Daniel 27 6 23 Daniel 27 6 24 Daniel 27 6 24 Daniel 27 6 25 Daniel 27 6 25 Daniel 27 6 26 Daniel 27 6 26 Daniel 27 6 27 Daniel 27 6 27 Daniel 27 6 28 Daniel 27 6 28 Daniel 27 6 29 Hosea 28 1 10 Hosea 28 2 1 Hosea 28 1 11 Hosea 28 2 2 Hosea 28 2 1 Hosea 28 2 3 Hosea 28 2 2 Hosea 28 2 4 Hosea 28 2 3 Hosea 28 2 5 Hosea 28 2 4 Hosea 28 2 6 Hosea 28 2 5 Hosea 28 2 7 Hosea 28 2 6 Hosea 28 2 8 Hosea 28 2 7 Hosea 28 2 9 Hosea 28 2 8 Hosea 28 2 10 Hosea 28 2 9 Hosea 28 2 11 Hosea 28 2 10 Hosea 28 2 12 Hosea 28 2 11 Hosea 28 2 13 Hosea 28 2 12 Hosea 28 2 14 Hosea 28 2 13 Hosea 28 2 15 Hosea 28 2 14 Hosea 28 2 16 Hosea 28 2 15 Hosea 28 2 17 Hosea 28 2 16 Hosea 28 2 18 Hosea 28 2 17 Hosea 28 2 19 Hosea 28 2 18 Hosea 28 2 20 Hosea 28 2 19 Hosea 28 2 21 Hosea 28 2 20 Hosea 28 2 22 Hosea 28 2 21 Hosea 28 2 23 Hosea 28 2 22 Hosea 28 2 24 Hosea 28 2 23 Hosea 28 2 25 Hosea 28 11 12 Hosea 28 12 1 Hosea 28 12 1 Hosea 28 12 2 Hosea 28 12 2 Hosea 28 12 3 Hosea 28 12 3 Hosea 28 12 4 Hosea 28 12 4 Hosea 28 12 5 Hosea 28 12 5 Hosea 28 12 6 Hosea 28 12 6 Hosea 28 12 7 Hosea 28 12 7 Hosea 28 12 8 Hosea 28 12 8 Hosea 28 12 9 Hosea 28 12 9 Hosea 28 12 10 Hosea 28 12 10 Hosea 28 12 11 Hosea 28 12 11 Hosea 28 12 12 Hosea 28 12 12 Hosea 28 12 13 Hosea 28 12 13 Hosea 28 12 14 Hosea 28 12 14 Hosea 28 12 15 Hosea 28 13 16 Hosea 28 14 1 Hosea 28 14 1 Hosea 28 14 2 Hosea 28 14 2 Hosea 28 14 3 Hosea 28 14 3 Hosea 28 14 4 Hosea 28 14 4 Hosea 28 14 5 Hosea 28 14 5 Hosea 28 14 6 Hosea 28 14 6 Hosea 28 14 7 Hosea 28 14 7 Hosea 28 14 8 Hosea 28 14 8 Hosea 28 14 9 Hosea 28 14 9 Hosea 28 14 10 Joel 29 2 28 Joel 29 3 1 Joel 29 2 29 Joel 29 3 2 Joel 29 2 30 Joel 29 3 3 Joel 29 2 31 Joel 29 3 4 Joel 29 2 32 Joel 29 3 5 Joel 29 3 1 Joel 29 4 1 Joel 29 3 2 Joel 29 4 2 Joel 29 3 3 Joel 29 4 3 Joel 29 3 4 Joel 29 4 4 Joel 29 3 5 Joel 29 4 5 Joel 29 3 6 Joel 29 4 6 Joel 29 3 7 Joel 29 4 7 Joel 29 3 8 Joel 29 4 8 Joel 29 3 9 Joel 29 4 9 Joel 29 3 10 Joel 29 4 10 Joel 29 3 11 Joel 29 4 11 Joel 29 3 12 Joel 29 4 12 Joel 29 3 13 Joel 29 4 13 Joel 29 3 14 Joel 29 4 14 Joel 29 3 15 Joel 29 4 15 Joel 29 3 16 Joel 29 4 16 Joel 29 3 17 Joel 29 4 17 Joel 29 3 18 Joel 29 4 18 Joel 29 3 19 Joel 29 4 19 Joel 29 3 20 Joel 29 4 20 Joel 29 3 21 Joel 29 4 21 Jonah 32 1 17 Jonah 32 2 1 Jonah 32 2 1 Jonah 32 2 2 Jonah 32 2 2 Jonah 32 2 3 Jonah 32 2 3 Jonah 32 2 4 Jonah 32 2 4 Jonah 32 2 5 Jonah 32 2 5 Jonah 32 2 6 Jonah 32 2 6 Jonah 32 2 7 Jonah 32 2 7 Jonah 32 2 8 Jonah 32 2 8 Jonah 32 2 9 Jonah 32 2 9 Jonah 32 2 10 Jonah 32 2 10 Jonah 32 2 11 Micah 33 5 1 Micah 33 4 14 Micah 33 5 2 Micah 33 5 1 Micah 33 5 3 Micah 33 5 2 Micah 33 5 4 Micah 33 5 3 Micah 33 5 5 Micah 33 5 4 Micah 33 5 6 Micah 33 5 5 Micah 33 5 7 Micah 33 5 6 Micah 33 5 8 Micah 33 5 7 Micah 33 5 9 Micah 33 5 8 Micah 33 5 10 Micah 33 5 9 Micah 33 5 11 Micah 33 5 10 Micah 33 5 12 Micah 33 5 11 Micah 33 5 13 Micah 33 5 12 Micah 33 5 14 Micah 33 5 13 Micah 33 5 15 Micah 33 5 14 Nahum 34 1 15 Nahum 34 2 1 Nahum 34 2 1 Nahum 34 2 2 Nahum 34 2 2 Nahum 34 2 3 Nahum 34 2 3 Nahum 34 2 4 Nahum 34 2 4 Nahum 34 2 5 Nahum 34 2 5 Nahum 34 2 6 Nahum 34 2 6 Nahum 34 2 7 Nahum 34 2 7 Nahum 34 2 8 Nahum 34 2 8 Nahum 34 2 9 Nahum 34 2 9 Nahum 34 2 10 Nahum 34 2 10 Nahum 34 2 11 Nahum 34 2 11 Nahum 34 2 12 Nahum 34 2 12 Nahum 34 2 13 Nahum 34 2 13 Nahum 34 2 14 Zechariah 38 1 18 Zechariah 38 2 1 Zechariah 38 1 19 Zechariah 38 2 2 Zechariah 38 1 20 Zechariah 38 2 3 Zechariah 38 1 21 Zechariah 38 2 4 Zechariah 38 2 1 Zechariah 38 2 5 Zechariah 38 2 2 Zechariah 38 2 6 Zechariah 38 2 3 Zechariah 38 2 7 Zechariah 38 2 4 Zechariah 38 2 8 Zechariah 38 2 5 Zechariah 38 2 9 Zechariah 38 2 6 Zechariah 38 2 10 Zechariah 38 2 7 Zechariah 38 2 11 Zechariah 38 2 8 Zechariah 38 2 12 Zechariah 38 2 9 Zechariah 38 2 13 Zechariah 38 2 10 Zechariah 38 2 14 Zechariah 38 2 11 Zechariah 38 2 15 Zechariah 38 2 12 Zechariah 38 2 16 Zechariah 38 2 13 Zechariah 38 2 17 Malachi 39 4 1 Malachi 39 3 19 Malachi 39 4 2 Malachi 39 3 20 Malachi 39 4 3 Malachi 39 3 21 Malachi 39 4 4 Malachi 39 3 22 Malachi 39 4 5 Malachi 39 3 23 Malachi 39 4 6 Malachi 39 3 24 Matthew 40 15 5 Matthew 40 15 5 Matthew 40 15 6 Matthew 40 15 6 Matthew 40 15 5 Matthew 40 15 6 Matthew 40 20 4 Matthew 40 20 4 Matthew 40 20 5 Matthew 40 20 5 Matthew 40 20 4 Matthew 40 20 5 Matthew 40 26 60 Matthew 40 26 60 Matthew 40 26 61 Matthew 40 26 61 Matthew 40 26 61 Matthew 40 26 60 Luke 42 4 18 Luke 42 4 18 Luke 42 4 19 Luke 42 4 19 Luke 42 4 19 Luke 42 4 18 Luke 42 7 18 Luke 42 7 18 Luke 42 7 19 Luke 42 7 19 Luke 42 7 19 Luke 42 7 18 Acts 44 2 10 Acts 44 2 10 Acts 44 2 11 Acts 44 2 11 Acts 44 2 10 Acts 44 2 11 Acts 44 3 19 Acts 44 3 19 Acts 44 3 20 Acts 44 3 20 Acts 44 3 19 Acts 44 3 20 Acts 44 5 39 Acts 44 5 39 Acts 44 5 40 Acts 44 5 40 Acts 44 5 40 Acts 44 5 39 Acts 44 9 28 Acts 44 9 28 Acts 44 9 29 Acts 44 9 29 Acts 44 9 29 Acts 44 9 28 Acts 44 11 25 Acts 44 11 25 Acts 44 11 26 Acts 44 11 26 Acts 44 11 25 Acts 44 11 26 Acts 44 13 32 Acts 44 13 32 Acts 44 13 33 Acts 44 13 33 Acts 44 13 34 Acts 44 13 34 Acts 44 13 35 Acts 44 13 35 Acts 44 13 36 Acts 44 13 36 Acts 44 13 37 Acts 44 13 37 Acts 44 13 38 Acts 44 13 38 Acts 44 13 39 Acts 44 13 39 Acts 44 13 32 Acts 44 13 33 Acts 44 13 39 Acts 44 13 38 Acts 44 19 41 Acts 44 19 40 Acts 44 19 40 Acts 44 19 40 Acts 44 24 2 Acts 44 24 2 Acts 44 24 3 Acts 44 24 3 Acts 44 24 4 Acts 44 24 4 Acts 44 24 5 Acts 44 24 5 Acts 44 24 6 Acts 44 24 6 Acts 44 24 7 Acts 44 24 7 Acts 44 24 8 Acts 44 24 8 Acts 44 24 9 Acts 44 24 9 Acts 44 24 10 Acts 44 24 10 Acts 44 24 11 Acts 44 24 11 Acts 44 24 12 Acts 44 24 12 Acts 44 24 13 Acts 44 24 13 Acts 44 24 14 Acts 44 24 14 Acts 44 24 15 Acts 44 24 15 Acts 44 24 16 Acts 44 24 16 Acts 44 24 17 Acts 44 24 17 Acts 44 24 18 Acts 44 24 18 Acts 44 24 19 Acts 44 24 19 Acts 44 24 3 Acts 44 24 2 Acts 44 24 18 Acts 44 24 19 Romans 45 3 25 Romans 45 3 25 Romans 45 3 26 Romans 45 3 26 Romans 45 3 25 Romans 45 3 26 Romans 45 7 9 Romans 45 7 9 Romans 45 7 10 Romans 45 7 10 Romans 45 7 9 Romans 45 7 10 Romans 45 9 11 Romans 45 9 11 Romans 45 9 12 Romans 45 9 12 Romans 45 9 11 Romans 45 9 12 Romans 45 12 6 Romans 45 12 6 Romans 45 12 7 Romans 45 12 7 Romans 45 12 7 Romans 45 12 6 2 Corinthians 47 5 14 2 Corinthians 47 5 14 2 Corinthians 47 5 15 2 Corinthians 47 5 15 2 Corinthians 47 5 15 2 Corinthians 47 5 14 2 Corinthians 47 10 4 2 Corinthians 47 10 4 2 Corinthians 47 10 5 2 Corinthians 47 10 5 2 Corinthians 47 10 5 2 Corinthians 47 10 4 2 Corinthians 47 11 8 2 Corinthians 47 11 8 2 Corinthians 47 11 9 2 Corinthians 47 11 9 2 Corinthians 47 11 8 2 Corinthians 47 11 9 2 Corinthians 47 13 12 2 Corinthians 47 13 12 2 Corinthians 47 13 13 2 Corinthians 47 13 12 2 Corinthians 47 13 14 2 Corinthians 47 13 13 Galatians 48 2 19 Galatians 48 2 19 Galatians 48 2 20 Galatians 48 2 20 Galatians 48 2 20 Galatians 48 2 19 Ephesians 49 1 10 Ephesians 49 1 10 Ephesians 49 1 11 Ephesians 49 1 11 Ephesians 49 1 11 Ephesians 49 1 10 Ephesians 49 2 14 Ephesians 49 2 14 Ephesians 49 2 15 Ephesians 49 2 15 Ephesians 49 2 15 Ephesians 49 2 14 Ephesians 49 5 13 Ephesians 49 5 13 Ephesians 49 5 14 Ephesians 49 5 14 Ephesians 49 5 13 Ephesians 49 5 14 Philippians 50 1 16 Philippians 50 1 17 Philippians 50 1 17 Philippians 50 1 16 Philippians 50 2 7 Philippians 50 2 7 Philippians 50 2 8 Philippians 50 2 8 Philippians 50 2 8 Philippians 50 2 7 Philippians 50 3 13 Philippians 50 3 13 Philippians 50 3 14 Philippians 50 3 14 Philippians 50 3 14 Philippians 50 3 13 Colossians 51 1 21 Colossians 51 1 21 Colossians 51 1 22 Colossians 51 1 22 Colossians 51 1 21 Colossians 51 1 22 1 Thessalonians 52 1 2 1 Thessalonians 52 1 2 1 Thessalonians 52 1 3 1 Thessalonians 52 1 3 1 Thessalonians 52 1 3 1 Thessalonians 52 1 2 1 Thessalonians 52 2 6 1 Thessalonians 52 2 6 1 Thessalonians 52 2 7 1 Thessalonians 52 2 7 1 Thessalonians 52 2 8 1 Thessalonians 52 2 8 1 Thessalonians 52 2 9 1 Thessalonians 52 2 9 1 Thessalonians 52 2 10 1 Thessalonians 52 2 10 1 Thessalonians 52 2 11 1 Thessalonians 52 2 11 1 Thessalonians 52 2 12 1 Thessalonians 52 2 12 1 Thessalonians 52 2 6 1 Thessalonians 52 2 7 1 Thessalonians 52 2 11 1 Thessalonians 52 2 12 Philemon 57 1 11 Philemon 57 1 11 Philemon 57 1 12 Philemon 57 1 12 Philemon 57 1 11 Philemon 57 1 12 Hebrews 58 1 1 Hebrews 58 1 1 Hebrews 58 1 2 Hebrews 58 1 2 Hebrews 58 1 1 Hebrews 58 1 2 Hebrews 58 3 9 Hebrews 58 3 9 Hebrews 58 3 10 Hebrews 58 3 10 Hebrews 58 3 9 Hebrews 58 3 10 Hebrews 58 12 22 Hebrews 58 12 22 Hebrews 58 12 23 Hebrews 58 12 23 Hebrews 58 12 23 Hebrews 58 12 22 1 Peter 60 3 15 1 Peter 60 3 15 1 Peter 60 3 16 1 Peter 60 3 16 1 Peter 60 3 15 1 Peter 60 3 16 1 John 62 2 13 1 John 62 2 13 1 John 62 2 14 1 John 62 2 14 1 John 62 2 13 1 John 62 2 14 3 John 64 1 14 3 John 64 1 14 3 John 64 1 14 3 John 64 1 15 Revelation 66 2 27 Revelation 66 2 27 Revelation 66 2 28 Revelation 66 2 28 Revelation 66 2 27 Revelation 66 2 28 Revelation 66 13 1 Revelation 66 12 18 Revelation 66 13 1 Revelation 66 13 1 Revelation 66 17 9 Revelation 66 17 9 Revelation 66 17 10 Revelation 66 17 10 Revelation 66 17 10 Revelation 66 17 9 Revelation 66 18 16 Revelation 66 18 16 Revelation 66 18 17 Revelation 66 18 17 Revelation 66 18 16 Revelation 66 18 17 bibledit-gtk-4.9/templates/mapping_vulgate.xml000664 000766 000024 00003454014 12221507126 021770 0ustar00teusstaff000000 000000 Genesis 1 31 55 Genesis 1 32 1 Genesis 1 32 1 Genesis 1 32 2 Genesis 1 32 2 Genesis 1 32 3 Genesis 1 32 3 Genesis 1 32 4 Genesis 1 32 4 Genesis 1 32 5 Genesis 1 32 5 Genesis 1 32 6 Genesis 1 32 6 Genesis 1 32 7 Genesis 1 32 7 Genesis 1 32 8 Genesis 1 32 8 Genesis 1 32 9 Genesis 1 32 9 Genesis 1 32 10 Genesis 1 32 10 Genesis 1 32 11 Genesis 1 32 11 Genesis 1 32 12 Genesis 1 32 12 Genesis 1 32 13 Genesis 1 32 13 Genesis 1 32 14 Genesis 1 32 14 Genesis 1 32 15 Genesis 1 32 15 Genesis 1 32 16 Genesis 1 32 16 Genesis 1 32 17 Genesis 1 32 17 Genesis 1 32 18 Genesis 1 32 18 Genesis 1 32 19 Genesis 1 32 19 Genesis 1 32 20 Genesis 1 32 20 Genesis 1 32 21 Genesis 1 32 21 Genesis 1 32 22 Genesis 1 32 22 Genesis 1 32 23 Genesis 1 32 23 Genesis 1 32 24 Genesis 1 32 24 Genesis 1 32 25 Genesis 1 32 25 Genesis 1 32 26 Genesis 1 32 26 Genesis 1 32 27 Genesis 1 32 27 Genesis 1 32 28 Genesis 1 32 28 Genesis 1 32 29 Genesis 1 32 29 Genesis 1 32 30 Genesis 1 32 30 Genesis 1 32 31 Genesis 1 32 31 Genesis 1 32 32 Genesis 1 32 32 Genesis 1 32 33 Genesis 1 49 31 Genesis 1 49 31 Genesis 1 49 31 Genesis 1 49 32 Genesis 1 49 32 Genesis 1 49 33 Genesis 1 50 22 Genesis 1 50 22 Genesis 1 50 22 Genesis 1 50 23 Genesis 1 50 23 Genesis 1 50 24 Genesis 1 50 24 Genesis 1 50 25 Genesis 1 50 25 Genesis 1 50 26 Exodus 2 8 1 Exodus 2 7 26 Exodus 2 8 2 Exodus 2 7 27 Exodus 2 8 3 Exodus 2 7 28 Exodus 2 8 4 Exodus 2 7 29 Exodus 2 8 5 Exodus 2 8 1 Exodus 2 8 6 Exodus 2 8 2 Exodus 2 8 7 Exodus 2 8 3 Exodus 2 8 8 Exodus 2 8 4 Exodus 2 8 9 Exodus 2 8 5 Exodus 2 8 10 Exodus 2 8 6 Exodus 2 8 11 Exodus 2 8 7 Exodus 2 8 12 Exodus 2 8 8 Exodus 2 8 13 Exodus 2 8 9 Exodus 2 8 14 Exodus 2 8 10 Exodus 2 8 15 Exodus 2 8 11 Exodus 2 8 16 Exodus 2 8 12 Exodus 2 8 17 Exodus 2 8 13 Exodus 2 8 18 Exodus 2 8 14 Exodus 2 8 19 Exodus 2 8 15 Exodus 2 8 20 Exodus 2 8 16 Exodus 2 8 21 Exodus 2 8 17 Exodus 2 8 22 Exodus 2 8 18 Exodus 2 8 23 Exodus 2 8 19 Exodus 2 8 24 Exodus 2 8 20 Exodus 2 8 25 Exodus 2 8 21 Exodus 2 8 26 Exodus 2 8 22 Exodus 2 8 27 Exodus 2 8 23 Exodus 2 8 28 Exodus 2 8 24 Exodus 2 8 29 Exodus 2 8 25 Exodus 2 8 30 Exodus 2 8 26 Exodus 2 8 31 Exodus 2 8 27 Exodus 2 8 32 Exodus 2 8 28 Exodus 2 22 1 Exodus 2 21 37 Exodus 2 22 2 Exodus 2 22 1 Exodus 2 22 3 Exodus 2 22 2 Exodus 2 22 4 Exodus 2 22 3 Exodus 2 22 5 Exodus 2 22 4 Exodus 2 22 6 Exodus 2 22 5 Exodus 2 22 7 Exodus 2 22 6 Exodus 2 22 8 Exodus 2 22 7 Exodus 2 22 9 Exodus 2 22 8 Exodus 2 22 10 Exodus 2 22 9 Exodus 2 22 11 Exodus 2 22 10 Exodus 2 22 12 Exodus 2 22 11 Exodus 2 22 13 Exodus 2 22 12 Exodus 2 22 14 Exodus 2 22 13 Exodus 2 22 15 Exodus 2 22 14 Exodus 2 22 16 Exodus 2 22 15 Exodus 2 22 17 Exodus 2 22 16 Exodus 2 22 18 Exodus 2 22 17 Exodus 2 22 19 Exodus 2 22 18 Exodus 2 22 20 Exodus 2 22 19 Exodus 2 22 21 Exodus 2 22 20 Exodus 2 22 22 Exodus 2 22 21 Exodus 2 22 23 Exodus 2 22 22 Exodus 2 22 24 Exodus 2 22 23 Exodus 2 22 25 Exodus 2 22 24 Exodus 2 22 26 Exodus 2 22 25 Exodus 2 22 27 Exodus 2 22 26 Exodus 2 22 28 Exodus 2 22 27 Exodus 2 22 29 Exodus 2 22 28 Exodus 2 22 30 Exodus 2 22 29 Exodus 2 22 31 Exodus 2 22 30 Exodus 2 40 13 Exodus 2 40 13 Exodus 2 40 13 Exodus 2 40 14 Exodus 2 40 13 Exodus 2 40 15 Exodus 2 40 14 Exodus 2 40 16 Exodus 2 40 15 Exodus 2 40 17 Exodus 2 40 16 Exodus 2 40 18 Exodus 2 40 17 Exodus 2 40 19 Exodus 2 40 18 Exodus 2 40 20 Exodus 2 40 19 Exodus 2 40 21 Exodus 2 40 20 Exodus 2 40 22 Exodus 2 40 21 Exodus 2 40 23 Exodus 2 40 22 Exodus 2 40 24 Exodus 2 40 23 Exodus 2 40 25 Exodus 2 40 24 Exodus 2 40 26 Exodus 2 40 25 Exodus 2 40 27 Exodus 2 40 26 Exodus 2 40 28 Exodus 2 40 27 Exodus 2 40 29 Exodus 2 40 28 Exodus 2 40 30 Exodus 2 40 29 Exodus 2 40 31 Exodus 2 40 30 Exodus 2 40 32 Exodus 2 40 31 Exodus 2 40 33 Exodus 2 40 32 Exodus 2 40 34 Exodus 2 40 33 Exodus 2 40 35 Exodus 2 40 34 Exodus 2 40 36 Exodus 2 40 35 Exodus 2 40 37 Exodus 2 40 36 Exodus 2 40 38 Leviticus 3 6 1 Leviticus 3 5 20 Leviticus 3 6 2 Leviticus 3 5 21 Leviticus 3 6 3 Leviticus 3 5 22 Leviticus 3 6 4 Leviticus 3 5 23 Leviticus 3 6 5 Leviticus 3 5 24 Leviticus 3 6 6 Leviticus 3 5 25 Leviticus 3 6 7 Leviticus 3 5 26 Leviticus 3 6 8 Leviticus 3 6 1 Leviticus 3 6 9 Leviticus 3 6 2 Leviticus 3 6 10 Leviticus 3 6 3 Leviticus 3 6 11 Leviticus 3 6 4 Leviticus 3 6 12 Leviticus 3 6 5 Leviticus 3 6 13 Leviticus 3 6 6 Leviticus 3 6 14 Leviticus 3 6 7 Leviticus 3 6 15 Leviticus 3 6 8 Leviticus 3 6 16 Leviticus 3 6 9 Leviticus 3 6 17 Leviticus 3 6 10 Leviticus 3 6 18 Leviticus 3 6 11 Leviticus 3 6 19 Leviticus 3 6 12 Leviticus 3 6 20 Leviticus 3 6 13 Leviticus 3 6 21 Leviticus 3 6 14 Leviticus 3 6 22 Leviticus 3 6 15 Leviticus 3 6 23 Leviticus 3 6 16 Leviticus 3 6 24 Leviticus 3 6 17 Leviticus 3 6 25 Leviticus 3 6 18 Leviticus 3 6 26 Leviticus 3 6 19 Leviticus 3 6 27 Leviticus 3 6 20 Leviticus 3 6 28 Leviticus 3 6 21 Leviticus 3 6 29 Leviticus 3 6 22 Leviticus 3 6 30 Leviticus 3 6 23 Leviticus 3 26 45 Leviticus 3 26 45 Leviticus 3 26 45 Leviticus 3 26 46 Numbers 4 11 34 Numbers 4 11 34 Numbers 4 11 34 Numbers 4 11 35 Numbers 4 13 1 Numbers 4 12 16 Numbers 4 13 2 Numbers 4 13 1 Numbers 4 13 3 Numbers 4 13 2 Numbers 4 13 4 Numbers 4 13 3 Numbers 4 13 5 Numbers 4 13 4 Numbers 4 13 6 Numbers 4 13 5 Numbers 4 13 7 Numbers 4 13 6 Numbers 4 13 8 Numbers 4 13 7 Numbers 4 13 9 Numbers 4 13 8 Numbers 4 13 10 Numbers 4 13 9 Numbers 4 13 11 Numbers 4 13 10 Numbers 4 13 12 Numbers 4 13 11 Numbers 4 13 13 Numbers 4 13 12 Numbers 4 13 14 Numbers 4 13 13 Numbers 4 13 15 Numbers 4 13 14 Numbers 4 13 16 Numbers 4 13 15 Numbers 4 13 17 Numbers 4 13 16 Numbers 4 13 18 Numbers 4 13 17 Numbers 4 13 19 Numbers 4 13 18 Numbers 4 13 20 Numbers 4 13 19 Numbers 4 13 21 Numbers 4 13 20 Numbers 4 13 22 Numbers 4 13 21 Numbers 4 13 23 Numbers 4 13 22 Numbers 4 13 24 Numbers 4 13 23 Numbers 4 13 25 Numbers 4 13 24 Numbers 4 13 26 Numbers 4 13 25 Numbers 4 13 27 Numbers 4 13 26 Numbers 4 13 28 Numbers 4 13 27 Numbers 4 13 29 Numbers 4 13 28 Numbers 4 13 30 Numbers 4 13 29 Numbers 4 13 31 Numbers 4 13 30 Numbers 4 13 32 Numbers 4 13 31 Numbers 4 13 33 Numbers 4 13 32 Numbers 4 13 34 Numbers 4 13 33 Numbers 4 16 36 Numbers 4 17 1 Numbers 4 16 37 Numbers 4 17 2 Numbers 4 16 38 Numbers 4 17 3 Numbers 4 16 39 Numbers 4 17 4 Numbers 4 16 40 Numbers 4 17 5 Numbers 4 16 41 Numbers 4 17 6 Numbers 4 16 42 Numbers 4 17 7 Numbers 4 16 43 Numbers 4 17 8 Numbers 4 16 44 Numbers 4 17 9 Numbers 4 16 45 Numbers 4 17 10 Numbers 4 16 46 Numbers 4 17 11 Numbers 4 16 47 Numbers 4 17 12 Numbers 4 16 48 Numbers 4 17 13 Numbers 4 16 49 Numbers 4 17 14 Numbers 4 16 50 Numbers 4 17 15 Numbers 4 17 1 Numbers 4 17 16 Numbers 4 17 2 Numbers 4 17 17 Numbers 4 17 3 Numbers 4 17 18 Numbers 4 17 4 Numbers 4 17 19 Numbers 4 17 5 Numbers 4 17 20 Numbers 4 17 6 Numbers 4 17 21 Numbers 4 17 7 Numbers 4 17 22 Numbers 4 17 8 Numbers 4 17 23 Numbers 4 17 9 Numbers 4 17 24 Numbers 4 17 10 Numbers 4 17 25 Numbers 4 17 11 Numbers 4 17 26 Numbers 4 17 12 Numbers 4 17 27 Numbers 4 17 13 Numbers 4 17 28 Numbers 4 20 28 Numbers 4 20 28 Numbers 4 20 29 Numbers 4 20 28 Numbers 4 20 30 Numbers 4 20 29 Numbers 4 26 1 Numbers 4 25 19 Numbers 4 26 1 Numbers 4 26 1 Deuteronomy 5 12 32 Deuteronomy 5 13 1 Deuteronomy 5 13 1 Deuteronomy 5 13 2 Deuteronomy 5 13 2 Deuteronomy 5 13 3 Deuteronomy 5 13 3 Deuteronomy 5 13 4 Deuteronomy 5 13 4 Deuteronomy 5 13 5 Deuteronomy 5 13 5 Deuteronomy 5 13 6 Deuteronomy 5 13 6 Deuteronomy 5 13 7 Deuteronomy 5 13 7 Deuteronomy 5 13 8 Deuteronomy 5 13 8 Deuteronomy 5 13 9 Deuteronomy 5 13 9 Deuteronomy 5 13 10 Deuteronomy 5 13 10 Deuteronomy 5 13 11 Deuteronomy 5 13 11 Deuteronomy 5 13 12 Deuteronomy 5 13 12 Deuteronomy 5 13 13 Deuteronomy 5 13 13 Deuteronomy 5 13 14 Deuteronomy 5 13 14 Deuteronomy 5 13 15 Deuteronomy 5 13 15 Deuteronomy 5 13 16 Deuteronomy 5 13 16 Deuteronomy 5 13 17 Deuteronomy 5 13 17 Deuteronomy 5 13 18 Deuteronomy 5 13 18 Deuteronomy 5 13 19 Deuteronomy 5 22 30 Deuteronomy 5 23 1 Deuteronomy 5 23 1 Deuteronomy 5 23 2 Deuteronomy 5 23 2 Deuteronomy 5 23 3 Deuteronomy 5 23 3 Deuteronomy 5 23 4 Deuteronomy 5 23 4 Deuteronomy 5 23 5 Deuteronomy 5 23 5 Deuteronomy 5 23 6 Deuteronomy 5 23 6 Deuteronomy 5 23 7 Deuteronomy 5 23 7 Deuteronomy 5 23 8 Deuteronomy 5 23 8 Deuteronomy 5 23 9 Deuteronomy 5 23 9 Deuteronomy 5 23 10 Deuteronomy 5 23 10 Deuteronomy 5 23 11 Deuteronomy 5 23 11 Deuteronomy 5 23 12 Deuteronomy 5 23 12 Deuteronomy 5 23 13 Deuteronomy 5 23 13 Deuteronomy 5 23 14 Deuteronomy 5 23 14 Deuteronomy 5 23 15 Deuteronomy 5 23 15 Deuteronomy 5 23 16 Deuteronomy 5 23 16 Deuteronomy 5 23 17 Deuteronomy 5 23 17 Deuteronomy 5 23 18 Deuteronomy 5 23 18 Deuteronomy 5 23 19 Deuteronomy 5 23 19 Deuteronomy 5 23 20 Deuteronomy 5 23 20 Deuteronomy 5 23 21 Deuteronomy 5 23 21 Deuteronomy 5 23 22 Deuteronomy 5 23 22 Deuteronomy 5 23 23 Deuteronomy 5 23 23 Deuteronomy 5 23 24 Deuteronomy 5 23 24 Deuteronomy 5 23 25 Deuteronomy 5 23 25 Deuteronomy 5 23 26 Deuteronomy 5 29 1 Deuteronomy 5 28 69 Deuteronomy 5 29 2 Deuteronomy 5 29 1 Deuteronomy 5 29 3 Deuteronomy 5 29 2 Deuteronomy 5 29 4 Deuteronomy 5 29 3 Deuteronomy 5 29 5 Deuteronomy 5 29 4 Deuteronomy 5 29 6 Deuteronomy 5 29 5 Deuteronomy 5 29 7 Deuteronomy 5 29 6 Deuteronomy 5 29 8 Deuteronomy 5 29 7 Deuteronomy 5 29 9 Deuteronomy 5 29 8 Deuteronomy 5 29 10 Deuteronomy 5 29 9 Deuteronomy 5 29 11 Deuteronomy 5 29 10 Deuteronomy 5 29 12 Deuteronomy 5 29 11 Deuteronomy 5 29 13 Deuteronomy 5 29 12 Deuteronomy 5 29 14 Deuteronomy 5 29 13 Deuteronomy 5 29 15 Deuteronomy 5 29 14 Deuteronomy 5 29 16 Deuteronomy 5 29 15 Deuteronomy 5 29 17 Deuteronomy 5 29 16 Deuteronomy 5 29 18 Deuteronomy 5 29 17 Deuteronomy 5 29 19 Deuteronomy 5 29 18 Deuteronomy 5 29 20 Deuteronomy 5 29 19 Deuteronomy 5 29 21 Deuteronomy 5 29 20 Deuteronomy 5 29 22 Deuteronomy 5 29 21 Deuteronomy 5 29 23 Deuteronomy 5 29 22 Deuteronomy 5 29 24 Deuteronomy 5 29 23 Deuteronomy 5 29 25 Deuteronomy 5 29 24 Deuteronomy 5 29 26 Deuteronomy 5 29 25 Deuteronomy 5 29 27 Deuteronomy 5 29 26 Deuteronomy 5 29 28 Deuteronomy 5 29 27 Deuteronomy 5 29 29 Deuteronomy 5 29 28 Joshua 6 4 23 Joshua 6 4 23 Joshua 6 4 24 Joshua 6 4 23 Joshua 6 4 25 Joshua 6 4 24 Joshua 6 5 14 Joshua 6 5 14 Joshua 6 5 15 Joshua 6 5 14 Joshua 6 5 16 Joshua 6 5 15 Joshua 6 21 36 Joshua 6 21 36 Joshua 6 21 36 Joshua 6 21 37 Joshua 6 21 37 Joshua 6 21 38 Joshua 6 21 37 Joshua 6 21 39 Joshua 6 21 38 Joshua 6 21 40 Joshua 6 21 39 Joshua 6 21 41 Joshua 6 21 40 Joshua 6 21 42 Joshua 6 21 41 Joshua 6 21 43 Joshua 6 21 42 Joshua 6 21 44 Joshua 6 21 43 Joshua 6 21 45 Judges 7 5 31 Judges 7 5 31 Judges 7 5 32 Judges 7 5 31 Judges 7 21 24 Judges 7 21 24 Judges 7 21 24 Judges 7 21 25 1 Samuel 9 20 43 1 Samuel 9 21 1 1 Samuel 9 21 1 1 Samuel 9 21 2 1 Samuel 9 21 2 1 Samuel 9 21 3 1 Samuel 9 21 3 1 Samuel 9 21 4 1 Samuel 9 21 4 1 Samuel 9 21 5 1 Samuel 9 21 5 1 Samuel 9 21 6 1 Samuel 9 21 6 1 Samuel 9 21 7 1 Samuel 9 21 7 1 Samuel 9 21 8 1 Samuel 9 21 8 1 Samuel 9 21 9 1 Samuel 9 21 9 1 Samuel 9 21 10 1 Samuel 9 21 10 1 Samuel 9 21 11 1 Samuel 9 21 11 1 Samuel 9 21 12 1 Samuel 9 21 12 1 Samuel 9 21 13 1 Samuel 9 21 13 1 Samuel 9 21 14 1 Samuel 9 21 14 1 Samuel 9 21 15 1 Samuel 9 21 15 1 Samuel 9 21 16 2 Samuel 10 18 33 2 Samuel 10 19 1 2 Samuel 10 19 1 2 Samuel 10 19 2 2 Samuel 10 19 2 2 Samuel 10 19 3 2 Samuel 10 19 3 2 Samuel 10 19 4 2 Samuel 10 19 4 2 Samuel 10 19 5 2 Samuel 10 19 5 2 Samuel 10 19 6 2 Samuel 10 19 6 2 Samuel 10 19 7 2 Samuel 10 19 7 2 Samuel 10 19 8 2 Samuel 10 19 8 2 Samuel 10 19 9 2 Samuel 10 19 9 2 Samuel 10 19 10 2 Samuel 10 19 10 2 Samuel 10 19 11 2 Samuel 10 19 11 2 Samuel 10 19 12 2 Samuel 10 19 12 2 Samuel 10 19 13 2 Samuel 10 19 13 2 Samuel 10 19 14 2 Samuel 10 19 14 2 Samuel 10 19 15 2 Samuel 10 19 15 2 Samuel 10 19 16 2 Samuel 10 19 16 2 Samuel 10 19 17 2 Samuel 10 19 17 2 Samuel 10 19 18 2 Samuel 10 19 18 2 Samuel 10 19 19 2 Samuel 10 19 19 2 Samuel 10 19 20 2 Samuel 10 19 20 2 Samuel 10 19 21 2 Samuel 10 19 21 2 Samuel 10 19 22 2 Samuel 10 19 22 2 Samuel 10 19 23 2 Samuel 10 19 23 2 Samuel 10 19 24 2 Samuel 10 19 24 2 Samuel 10 19 25 2 Samuel 10 19 25 2 Samuel 10 19 26 2 Samuel 10 19 26 2 Samuel 10 19 27 2 Samuel 10 19 27 2 Samuel 10 19 28 2 Samuel 10 19 28 2 Samuel 10 19 29 2 Samuel 10 19 29 2 Samuel 10 19 30 2 Samuel 10 19 30 2 Samuel 10 19 31 2 Samuel 10 19 31 2 Samuel 10 19 32 2 Samuel 10 19 32 2 Samuel 10 19 33 2 Samuel 10 19 33 2 Samuel 10 19 34 2 Samuel 10 19 34 2 Samuel 10 19 35 2 Samuel 10 19 35 2 Samuel 10 19 36 2 Samuel 10 19 36 2 Samuel 10 19 37 2 Samuel 10 19 37 2 Samuel 10 19 38 2 Samuel 10 19 38 2 Samuel 10 19 39 2 Samuel 10 19 39 2 Samuel 10 19 40 2 Samuel 10 19 40 2 Samuel 10 19 41 2 Samuel 10 19 41 2 Samuel 10 19 42 2 Samuel 10 19 42 2 Samuel 10 19 43 2 Samuel 10 19 43 2 Samuel 10 19 44 1 Kings 11 4 21 1 Kings 11 5 1 1 Kings 11 4 22 1 Kings 11 5 2 1 Kings 11 4 23 1 Kings 11 5 3 1 Kings 11 4 24 1 Kings 11 5 4 1 Kings 11 4 25 1 Kings 11 5 5 1 Kings 11 4 26 1 Kings 11 5 6 1 Kings 11 4 27 1 Kings 11 5 7 1 Kings 11 4 28 1 Kings 11 5 8 1 Kings 11 4 29 1 Kings 11 5 9 1 Kings 11 4 30 1 Kings 11 5 10 1 Kings 11 4 31 1 Kings 11 5 11 1 Kings 11 4 32 1 Kings 11 5 12 1 Kings 11 4 33 1 Kings 11 5 13 1 Kings 11 4 34 1 Kings 11 5 14 1 Kings 11 5 1 1 Kings 11 5 15 1 Kings 11 5 2 1 Kings 11 5 16 1 Kings 11 5 3 1 Kings 11 5 17 1 Kings 11 5 4 1 Kings 11 5 18 1 Kings 11 5 5 1 Kings 11 5 19 1 Kings 11 5 6 1 Kings 11 5 20 1 Kings 11 5 7 1 Kings 11 5 21 1 Kings 11 5 8 1 Kings 11 5 22 1 Kings 11 5 9 1 Kings 11 5 23 1 Kings 11 5 10 1 Kings 11 5 24 1 Kings 11 5 11 1 Kings 11 5 25 1 Kings 11 5 12 1 Kings 11 5 26 1 Kings 11 5 13 1 Kings 11 5 27 1 Kings 11 5 14 1 Kings 11 5 28 1 Kings 11 5 15 1 Kings 11 5 29 1 Kings 11 5 16 1 Kings 11 5 30 1 Kings 11 5 17 1 Kings 11 5 31 1 Kings 11 5 18 1 Kings 11 5 32 2 Kings 12 11 21 2 Kings 12 12 1 2 Kings 12 12 1 2 Kings 12 12 2 2 Kings 12 12 2 2 Kings 12 12 3 2 Kings 12 12 3 2 Kings 12 12 4 2 Kings 12 12 4 2 Kings 12 12 5 2 Kings 12 12 5 2 Kings 12 12 6 2 Kings 12 12 6 2 Kings 12 12 7 2 Kings 12 12 7 2 Kings 12 12 8 2 Kings 12 12 8 2 Kings 12 12 9 2 Kings 12 12 9 2 Kings 12 12 10 2 Kings 12 12 10 2 Kings 12 12 11 2 Kings 12 12 11 2 Kings 12 12 12 2 Kings 12 12 12 2 Kings 12 12 13 2 Kings 12 12 13 2 Kings 12 12 14 2 Kings 12 12 14 2 Kings 12 12 15 2 Kings 12 12 15 2 Kings 12 12 16 2 Kings 12 12 16 2 Kings 12 12 17 2 Kings 12 12 17 2 Kings 12 12 18 2 Kings 12 12 18 2 Kings 12 12 19 2 Kings 12 12 19 2 Kings 12 12 20 2 Kings 12 12 20 2 Kings 12 12 21 2 Kings 12 12 21 2 Kings 12 12 22 1 Chronicles 13 6 1 1 Chronicles 13 5 27 1 Chronicles 13 6 2 1 Chronicles 13 5 28 1 Chronicles 13 6 3 1 Chronicles 13 5 29 1 Chronicles 13 6 4 1 Chronicles 13 5 30 1 Chronicles 13 6 5 1 Chronicles 13 5 31 1 Chronicles 13 6 6 1 Chronicles 13 5 32 1 Chronicles 13 6 7 1 Chronicles 13 5 33 1 Chronicles 13 6 8 1 Chronicles 13 5 34 1 Chronicles 13 6 9 1 Chronicles 13 5 35 1 Chronicles 13 6 10 1 Chronicles 13 5 36 1 Chronicles 13 6 11 1 Chronicles 13 5 37 1 Chronicles 13 6 12 1 Chronicles 13 5 38 1 Chronicles 13 6 13 1 Chronicles 13 5 39 1 Chronicles 13 6 14 1 Chronicles 13 5 40 1 Chronicles 13 6 15 1 Chronicles 13 5 41 1 Chronicles 13 6 16 1 Chronicles 13 6 1 1 Chronicles 13 6 17 1 Chronicles 13 6 2 1 Chronicles 13 6 18 1 Chronicles 13 6 3 1 Chronicles 13 6 19 1 Chronicles 13 6 4 1 Chronicles 13 6 20 1 Chronicles 13 6 5 1 Chronicles 13 6 21 1 Chronicles 13 6 6 1 Chronicles 13 6 22 1 Chronicles 13 6 7 1 Chronicles 13 6 23 1 Chronicles 13 6 8 1 Chronicles 13 6 24 1 Chronicles 13 6 9 1 Chronicles 13 6 25 1 Chronicles 13 6 10 1 Chronicles 13 6 26 1 Chronicles 13 6 11 1 Chronicles 13 6 27 1 Chronicles 13 6 12 1 Chronicles 13 6 28 1 Chronicles 13 6 13 1 Chronicles 13 6 29 1 Chronicles 13 6 14 1 Chronicles 13 6 30 1 Chronicles 13 6 15 1 Chronicles 13 6 31 1 Chronicles 13 6 16 1 Chronicles 13 6 32 1 Chronicles 13 6 17 1 Chronicles 13 6 33 1 Chronicles 13 6 18 1 Chronicles 13 6 34 1 Chronicles 13 6 19 1 Chronicles 13 6 35 1 Chronicles 13 6 20 1 Chronicles 13 6 36 1 Chronicles 13 6 21 1 Chronicles 13 6 37 1 Chronicles 13 6 22 1 Chronicles 13 6 38 1 Chronicles 13 6 23 1 Chronicles 13 6 39 1 Chronicles 13 6 24 1 Chronicles 13 6 40 1 Chronicles 13 6 25 1 Chronicles 13 6 41 1 Chronicles 13 6 26 1 Chronicles 13 6 42 1 Chronicles 13 6 27 1 Chronicles 13 6 43 1 Chronicles 13 6 28 1 Chronicles 13 6 44 1 Chronicles 13 6 29 1 Chronicles 13 6 45 1 Chronicles 13 6 30 1 Chronicles 13 6 46 1 Chronicles 13 6 31 1 Chronicles 13 6 47 1 Chronicles 13 6 32 1 Chronicles 13 6 48 1 Chronicles 13 6 33 1 Chronicles 13 6 49 1 Chronicles 13 6 34 1 Chronicles 13 6 50 1 Chronicles 13 6 35 1 Chronicles 13 6 51 1 Chronicles 13 6 36 1 Chronicles 13 6 52 1 Chronicles 13 6 37 1 Chronicles 13 6 53 1 Chronicles 13 6 38 1 Chronicles 13 6 54 1 Chronicles 13 6 39 1 Chronicles 13 6 55 1 Chronicles 13 6 40 1 Chronicles 13 6 56 1 Chronicles 13 6 41 1 Chronicles 13 6 57 1 Chronicles 13 6 42 1 Chronicles 13 6 58 1 Chronicles 13 6 43 1 Chronicles 13 6 59 1 Chronicles 13 6 44 1 Chronicles 13 6 60 1 Chronicles 13 6 45 1 Chronicles 13 6 61 1 Chronicles 13 6 46 1 Chronicles 13 6 62 1 Chronicles 13 6 47 1 Chronicles 13 6 63 1 Chronicles 13 6 48 1 Chronicles 13 6 64 1 Chronicles 13 6 49 1 Chronicles 13 6 65 1 Chronicles 13 6 50 1 Chronicles 13 6 66 1 Chronicles 13 6 51 1 Chronicles 13 6 67 1 Chronicles 13 6 52 1 Chronicles 13 6 68 1 Chronicles 13 6 53 1 Chronicles 13 6 69 1 Chronicles 13 6 54 1 Chronicles 13 6 70 1 Chronicles 13 6 55 1 Chronicles 13 6 71 1 Chronicles 13 6 56 1 Chronicles 13 6 72 1 Chronicles 13 6 57 1 Chronicles 13 6 73 1 Chronicles 13 6 58 1 Chronicles 13 6 74 1 Chronicles 13 6 59 1 Chronicles 13 6 75 1 Chronicles 13 6 60 1 Chronicles 13 6 76 1 Chronicles 13 6 61 1 Chronicles 13 6 77 1 Chronicles 13 6 62 1 Chronicles 13 6 78 1 Chronicles 13 6 63 1 Chronicles 13 6 79 1 Chronicles 13 6 64 1 Chronicles 13 6 80 1 Chronicles 13 6 65 1 Chronicles 13 6 81 1 Chronicles 13 6 66 1 Chronicles 13 11 46 1 Chronicles 13 11 46 1 Chronicles 13 11 46 1 Chronicles 13 11 47 1 Chronicles 13 12 4 1 Chronicles 13 12 4 1 Chronicles 13 12 4 1 Chronicles 13 12 5 1 Chronicles 13 12 5 1 Chronicles 13 12 6 1 Chronicles 13 12 6 1 Chronicles 13 12 7 1 Chronicles 13 12 7 1 Chronicles 13 12 8 1 Chronicles 13 12 8 1 Chronicles 13 12 9 1 Chronicles 13 12 9 1 Chronicles 13 12 10 1 Chronicles 13 12 10 1 Chronicles 13 12 11 1 Chronicles 13 12 11 1 Chronicles 13 12 12 1 Chronicles 13 12 12 1 Chronicles 13 12 13 1 Chronicles 13 12 13 1 Chronicles 13 12 14 1 Chronicles 13 12 14 1 Chronicles 13 12 15 1 Chronicles 13 12 15 1 Chronicles 13 12 16 1 Chronicles 13 12 16 1 Chronicles 13 12 17 1 Chronicles 13 12 17 1 Chronicles 13 12 18 1 Chronicles 13 12 18 1 Chronicles 13 12 19 1 Chronicles 13 12 19 1 Chronicles 13 12 20 1 Chronicles 13 12 20 1 Chronicles 13 12 21 1 Chronicles 13 12 21 1 Chronicles 13 12 22 1 Chronicles 13 12 22 1 Chronicles 13 12 23 1 Chronicles 13 12 23 1 Chronicles 13 12 24 1 Chronicles 13 12 24 1 Chronicles 13 12 25 1 Chronicles 13 12 25 1 Chronicles 13 12 26 1 Chronicles 13 12 26 1 Chronicles 13 12 27 1 Chronicles 13 12 27 1 Chronicles 13 12 28 1 Chronicles 13 12 28 1 Chronicles 13 12 29 1 Chronicles 13 12 29 1 Chronicles 13 12 30 1 Chronicles 13 12 30 1 Chronicles 13 12 31 1 Chronicles 13 12 31 1 Chronicles 13 12 32 1 Chronicles 13 12 32 1 Chronicles 13 12 33 1 Chronicles 13 12 33 1 Chronicles 13 12 34 1 Chronicles 13 12 34 1 Chronicles 13 12 35 1 Chronicles 13 12 35 1 Chronicles 13 12 36 1 Chronicles 13 12 36 1 Chronicles 13 12 37 1 Chronicles 13 12 37 1 Chronicles 13 12 38 1 Chronicles 13 12 38 1 Chronicles 13 12 39 1 Chronicles 13 12 39 1 Chronicles 13 12 40 1 Chronicles 13 12 40 1 Chronicles 13 12 41 1 Chronicles 13 20 7 1 Chronicles 13 20 7 1 Chronicles 13 20 7 1 Chronicles 13 20 8 2 Chronicles 14 2 1 2 Chronicles 14 1 18 2 Chronicles 14 2 2 2 Chronicles 14 2 1 2 Chronicles 14 2 3 2 Chronicles 14 2 2 2 Chronicles 14 2 4 2 Chronicles 14 2 3 2 Chronicles 14 2 5 2 Chronicles 14 2 4 2 Chronicles 14 2 6 2 Chronicles 14 2 5 2 Chronicles 14 2 7 2 Chronicles 14 2 6 2 Chronicles 14 2 8 2 Chronicles 14 2 7 2 Chronicles 14 2 9 2 Chronicles 14 2 8 2 Chronicles 14 2 10 2 Chronicles 14 2 9 2 Chronicles 14 2 11 2 Chronicles 14 2 10 2 Chronicles 14 2 12 2 Chronicles 14 2 11 2 Chronicles 14 2 13 2 Chronicles 14 2 12 2 Chronicles 14 2 14 2 Chronicles 14 2 13 2 Chronicles 14 2 15 2 Chronicles 14 2 14 2 Chronicles 14 2 16 2 Chronicles 14 2 15 2 Chronicles 14 2 17 2 Chronicles 14 2 16 2 Chronicles 14 2 18 2 Chronicles 14 2 17 2 Chronicles 14 14 1 2 Chronicles 14 13 23 2 Chronicles 14 14 2 2 Chronicles 14 14 1 2 Chronicles 14 14 3 2 Chronicles 14 14 2 2 Chronicles 14 14 4 2 Chronicles 14 14 3 2 Chronicles 14 14 5 2 Chronicles 14 14 4 2 Chronicles 14 14 6 2 Chronicles 14 14 5 2 Chronicles 14 14 7 2 Chronicles 14 14 6 2 Chronicles 14 14 8 2 Chronicles 14 14 7 2 Chronicles 14 14 9 2 Chronicles 14 14 8 2 Chronicles 14 14 10 2 Chronicles 14 14 9 2 Chronicles 14 14 11 2 Chronicles 14 14 10 2 Chronicles 14 14 12 2 Chronicles 14 14 11 2 Chronicles 14 14 13 2 Chronicles 14 14 12 2 Chronicles 14 14 14 2 Chronicles 14 14 13 2 Chronicles 14 14 15 2 Chronicles 14 14 14 Nehemiah 16 3 30 Nehemiah 16 3 30 Nehemiah 16 3 30 Nehemiah 16 3 31 Nehemiah 16 3 31 Nehemiah 16 3 32 Nehemiah 16 4 1 Nehemiah 16 3 33 Nehemiah 16 4 2 Nehemiah 16 3 34 Nehemiah 16 4 3 Nehemiah 16 3 35 Nehemiah 16 4 4 Nehemiah 16 3 36 Nehemiah 16 4 5 Nehemiah 16 3 37 Nehemiah 16 4 6 Nehemiah 16 3 38 Nehemiah 16 4 7 Nehemiah 16 4 1 Nehemiah 16 4 8 Nehemiah 16 4 2 Nehemiah 16 4 9 Nehemiah 16 4 3 Nehemiah 16 4 10 Nehemiah 16 4 4 Nehemiah 16 4 11 Nehemiah 16 4 5 Nehemiah 16 4 12 Nehemiah 16 4 6 Nehemiah 16 4 13 Nehemiah 16 4 7 Nehemiah 16 4 14 Nehemiah 16 4 8 Nehemiah 16 4 15 Nehemiah 16 4 9 Nehemiah 16 4 16 Nehemiah 16 4 10 Nehemiah 16 4 17 Nehemiah 16 4 11 Nehemiah 16 4 18 Nehemiah 16 4 12 Nehemiah 16 4 19 Nehemiah 16 4 13 Nehemiah 16 4 20 Nehemiah 16 4 14 Nehemiah 16 4 21 Nehemiah 16 4 15 Nehemiah 16 4 22 Nehemiah 16 4 16 Nehemiah 16 4 23 Nehemiah 16 4 17 Nehemiah 16 7 67 Nehemiah 16 7 67 Nehemiah 16 7 68 Nehemiah 16 7 67 Nehemiah 16 7 69 Nehemiah 16 7 68 Nehemiah 16 7 70 Nehemiah 16 7 69 Nehemiah 16 7 71 Nehemiah 16 7 70 Nehemiah 16 7 72 Nehemiah 16 7 71 Nehemiah 16 7 73 Nehemiah 16 7 72 Nehemiah 16 9 38 Nehemiah 16 10 1 Nehemiah 16 10 1 Nehemiah 16 10 2 Nehemiah 16 10 2 Nehemiah 16 10 3 Nehemiah 16 10 3 Nehemiah 16 10 4 Nehemiah 16 10 4 Nehemiah 16 10 5 Nehemiah 16 10 5 Nehemiah 16 10 6 Nehemiah 16 10 6 Nehemiah 16 10 7 Nehemiah 16 10 7 Nehemiah 16 10 8 Nehemiah 16 10 8 Nehemiah 16 10 9 Nehemiah 16 10 9 Nehemiah 16 10 10 Nehemiah 16 10 10 Nehemiah 16 10 11 Nehemiah 16 10 11 Nehemiah 16 10 12 Nehemiah 16 10 12 Nehemiah 16 10 13 Nehemiah 16 10 13 Nehemiah 16 10 14 Nehemiah 16 10 14 Nehemiah 16 10 15 Nehemiah 16 10 15 Nehemiah 16 10 16 Nehemiah 16 10 16 Nehemiah 16 10 17 Nehemiah 16 10 17 Nehemiah 16 10 18 Nehemiah 16 10 18 Nehemiah 16 10 19 Nehemiah 16 10 19 Nehemiah 16 10 20 Nehemiah 16 10 20 Nehemiah 16 10 21 Nehemiah 16 10 21 Nehemiah 16 10 22 Nehemiah 16 10 22 Nehemiah 16 10 23 Nehemiah 16 10 23 Nehemiah 16 10 24 Nehemiah 16 10 24 Nehemiah 16 10 25 Nehemiah 16 10 25 Nehemiah 16 10 26 Nehemiah 16 10 26 Nehemiah 16 10 27 Nehemiah 16 10 27 Nehemiah 16 10 28 Nehemiah 16 10 28 Nehemiah 16 10 29 Nehemiah 16 10 29 Nehemiah 16 10 30 Nehemiah 16 10 30 Nehemiah 16 10 31 Nehemiah 16 10 31 Nehemiah 16 10 32 Nehemiah 16 10 32 Nehemiah 16 10 33 Nehemiah 16 10 33 Nehemiah 16 10 34 Nehemiah 16 10 34 Nehemiah 16 10 35 Nehemiah 16 10 35 Nehemiah 16 10 36 Nehemiah 16 10 36 Nehemiah 16 10 37 Nehemiah 16 10 37 Nehemiah 16 10 38 Nehemiah 16 10 38 Nehemiah 16 10 39 Nehemiah 16 10 39 Nehemiah 16 10 40 Nehemiah 16 12 33 Nehemiah 16 12 33 Nehemiah 16 12 33 Nehemiah 16 12 34 Nehemiah 16 12 34 Nehemiah 16 12 35 Nehemiah 16 12 35 Nehemiah 16 12 36 Nehemiah 16 12 36 Nehemiah 16 12 37 Nehemiah 16 12 37 Nehemiah 16 12 38 Nehemiah 16 12 38 Nehemiah 16 12 39 Nehemiah 16 12 39 Nehemiah 16 12 40 Nehemiah 16 12 40 Nehemiah 16 12 41 Nehemiah 16 12 41 Nehemiah 16 12 42 Nehemiah 16 12 42 Nehemiah 16 12 43 Nehemiah 16 12 43 Nehemiah 16 12 44 Nehemiah 16 12 44 Nehemiah 16 12 45 Nehemiah 16 12 45 Nehemiah 16 12 46 Nehemiah 16 12 46 Nehemiah 16 12 47 Job 18 16 4 Job 18 16 4 Job 18 16 5 Job 18 16 4 Job 18 16 6 Job 18 16 5 Job 18 16 7 Job 18 16 6 Job 18 16 8 Job 18 16 7 Job 18 16 9 Job 18 16 8 Job 18 16 10 Job 18 16 9 Job 18 16 11 Job 18 16 10 Job 18 16 12 Job 18 16 11 Job 18 16 13 Job 18 16 12 Job 18 16 14 Job 18 16 13 Job 18 16 15 Job 18 16 14 Job 18 16 16 Job 18 16 15 Job 18 16 17 Job 18 16 16 Job 18 16 18 Job 18 16 17 Job 18 16 19 Job 18 16 18 Job 18 16 20 Job 18 16 19 Job 18 16 21 Job 18 16 20 Job 18 16 22 Job 18 16 21 Job 18 16 23 Job 18 16 22 Job 18 39 31 Job 18 40 1 Job 18 39 32 Job 18 40 2 Job 18 39 33 Job 18 40 3 Job 18 39 34 Job 18 40 4 Job 18 39 35 Job 18 40 5 Job 18 40 1 Job 18 40 6 Job 18 40 2 Job 18 40 7 Job 18 40 3 Job 18 40 8 Job 18 40 4 Job 18 40 9 Job 18 40 5 Job 18 40 10 Job 18 40 6 Job 18 40 11 Job 18 40 7 Job 18 40 12 Job 18 40 8 Job 18 40 13 Job 18 40 9 Job 18 40 14 Job 18 40 10 Job 18 40 15 Job 18 40 11 Job 18 40 16 Job 18 40 12 Job 18 40 17 Job 18 40 13 Job 18 40 18 Job 18 40 14 Job 18 40 19 Job 18 40 15 Job 18 40 20 Job 18 40 16 Job 18 40 21 Job 18 40 17 Job 18 40 22 Job 18 40 18 Job 18 40 23 Job 18 40 19 Job 18 40 24 Job 18 40 20 Job 18 40 25 Job 18 40 21 Job 18 40 26 Job 18 40 22 Job 18 40 27 Job 18 40 23 Job 18 40 28 Job 18 40 24 Job 18 40 29 Job 18 40 25 Job 18 40 30 Job 18 40 26 Job 18 40 31 Job 18 40 27 Job 18 40 32 Job 18 40 28 Job 18 41 1 Job 18 41 1 Job 18 41 2 Job 18 41 2 Job 18 41 3 Job 18 41 3 Job 18 41 4 Job 18 41 4 Job 18 41 5 Job 18 41 5 Job 18 41 6 Job 18 41 6 Job 18 41 7 Job 18 41 7 Job 18 41 8 Job 18 41 8 Job 18 41 9 Job 18 41 9 Job 18 41 10 Job 18 41 10 Job 18 41 11 Job 18 41 11 Job 18 41 12 Job 18 41 12 Job 18 41 13 Job 18 41 13 Job 18 41 14 Job 18 41 14 Job 18 41 15 Job 18 41 15 Job 18 41 16 Job 18 41 16 Job 18 41 17 Job 18 41 17 Job 18 41 18 Job 18 41 18 Job 18 41 19 Job 18 41 19 Job 18 41 20 Job 18 41 20 Job 18 41 21 Job 18 41 21 Job 18 41 22 Job 18 41 22 Job 18 41 23 Job 18 41 23 Job 18 41 24 Job 18 41 24 Job 18 41 25 Job 18 41 25 Job 18 41 26 Job 18 42 16 Job 18 42 16 Job 18 42 16 Job 18 42 17 Psalms 19 1 1 Psalms 19 1 1 Psalms 19 1 2 Psalms 19 1 2 Psalms 19 1 3 Psalms 19 1 3 Psalms 19 1 4 Psalms 19 1 4 Psalms 19 1 5 Psalms 19 1 5 Psalms 19 1 6 Psalms 19 1 6 Psalms 19 2 1 Psalms 19 2 1 Psalms 19 2 2 Psalms 19 2 2 Psalms 19 2 3 Psalms 19 2 3 Psalms 19 2 4 Psalms 19 2 4 Psalms 19 2 5 Psalms 19 2 5 Psalms 19 2 6 Psalms 19 2 6 Psalms 19 2 7 Psalms 19 2 7 Psalms 19 2 8 Psalms 19 2 8 Psalms 19 2 9 Psalms 19 2 9 Psalms 19 2 10 Psalms 19 2 10 Psalms 19 2 11 Psalms 19 2 11 Psalms 19 2 12 Psalms 19 2 12 Psalms 19 2 13 Psalms 19 2 12 Psalms 19 3 1 Psalms 19 3 1 Psalms 19 3 2 Psalms 19 3 2 Psalms 19 3 3 Psalms 19 3 3 Psalms 19 3 4 Psalms 19 3 4 Psalms 19 3 5 Psalms 19 3 5 Psalms 19 3 6 Psalms 19 3 6 Psalms 19 3 7 Psalms 19 3 7 Psalms 19 3 8 Psalms 19 3 8 Psalms 19 3 9 Psalms 19 3 9 Psalms 19 4 1 Psalms 19 4 1 Psalms 19 4 2 Psalms 19 4 2 Psalms 19 4 3 Psalms 19 4 3 Psalms 19 4 4 Psalms 19 4 4 Psalms 19 4 5 Psalms 19 4 5 Psalms 19 4 6 Psalms 19 4 6 Psalms 19 4 7 Psalms 19 4 7 Psalms 19 4 8 Psalms 19 4 8 Psalms 19 4 9 Psalms 19 4 9 Psalms 19 4 10 Psalms 19 4 9 Psalms 19 5 1 Psalms 19 5 1 Psalms 19 5 2 Psalms 19 5 2 Psalms 19 5 3 Psalms 19 5 3 Psalms 19 5 4 Psalms 19 5 4 Psalms 19 5 5 Psalms 19 5 5 Psalms 19 5 6 Psalms 19 5 6 Psalms 19 5 7 Psalms 19 5 7 Psalms 19 5 8 Psalms 19 5 8 Psalms 19 5 9 Psalms 19 5 9 Psalms 19 5 10 Psalms 19 5 10 Psalms 19 5 11 Psalms 19 5 11 Psalms 19 5 12 Psalms 19 5 12 Psalms 19 5 13 Psalms 19 5 13 Psalms 19 6 1 Psalms 19 6 1 Psalms 19 6 2 Psalms 19 6 2 Psalms 19 6 3 Psalms 19 6 3 Psalms 19 6 4 Psalms 19 6 4 Psalms 19 6 5 Psalms 19 6 5 Psalms 19 6 6 Psalms 19 6 6 Psalms 19 6 7 Psalms 19 6 7 Psalms 19 6 8 Psalms 19 6 8 Psalms 19 6 9 Psalms 19 6 9 Psalms 19 6 10 Psalms 19 6 10 Psalms 19 6 11 Psalms 19 6 11 Psalms 19 7 1 Psalms 19 7 1 Psalms 19 7 2 Psalms 19 7 2 Psalms 19 7 3 Psalms 19 7 3 Psalms 19 7 4 Psalms 19 7 4 Psalms 19 7 5 Psalms 19 7 5 Psalms 19 7 6 Psalms 19 7 6 Psalms 19 7 7 Psalms 19 7 7 Psalms 19 7 8 Psalms 19 7 8 Psalms 19 7 9 Psalms 19 7 9 Psalms 19 7 10 Psalms 19 7 10 Psalms 19 7 11 Psalms 19 7 11 Psalms 19 7 12 Psalms 19 7 12 Psalms 19 7 13 Psalms 19 7 13 Psalms 19 7 14 Psalms 19 7 14 Psalms 19 7 15 Psalms 19 7 15 Psalms 19 7 16 Psalms 19 7 16 Psalms 19 7 17 Psalms 19 7 17 Psalms 19 7 18 Psalms 19 7 18 Psalms 19 8 1 Psalms 19 8 1 Psalms 19 8 2 Psalms 19 8 2 Psalms 19 8 3 Psalms 19 8 3 Psalms 19 8 4 Psalms 19 8 4 Psalms 19 8 5 Psalms 19 8 5 Psalms 19 8 6 Psalms 19 8 6 Psalms 19 8 7 Psalms 19 8 7 Psalms 19 8 8 Psalms 19 8 8 Psalms 19 8 9 Psalms 19 8 9 Psalms 19 8 10 Psalms 19 8 10 Psalms 19 9 1 Psalms 19 9 1 Psalms 19 9 2 Psalms 19 9 2 Psalms 19 9 3 Psalms 19 9 3 Psalms 19 9 4 Psalms 19 9 4 Psalms 19 9 5 Psalms 19 9 5 Psalms 19 9 6 Psalms 19 9 6 Psalms 19 9 7 Psalms 19 9 7 Psalms 19 9 8 Psalms 19 9 8 Psalms 19 9 9 Psalms 19 9 9 Psalms 19 9 10 Psalms 19 9 10 Psalms 19 9 11 Psalms 19 9 11 Psalms 19 9 12 Psalms 19 9 12 Psalms 19 9 13 Psalms 19 9 13 Psalms 19 9 14 Psalms 19 9 14 Psalms 19 9 15 Psalms 19 9 15 Psalms 19 9 16 Psalms 19 9 16 Psalms 19 9 17 Psalms 19 9 17 Psalms 19 9 18 Psalms 19 9 18 Psalms 19 9 19 Psalms 19 9 19 Psalms 19 9 20 Psalms 19 9 20 Psalms 19 9 21 Psalms 19 9 21 Psalms 19 9 22 Psalms 19 10 1 Psalms 19 9 23 Psalms 19 10 2 Psalms 19 9 24 Psalms 19 10 3 Psalms 19 9 25 Psalms 19 10 4 Psalms 19 9 26 Psalms 19 10 5 Psalms 19 9 27 Psalms 19 10 6 Psalms 19 9 28 Psalms 19 10 7 Psalms 19 9 29 Psalms 19 10 8 Psalms 19 9 30 Psalms 19 10 9 Psalms 19 9 31 Psalms 19 10 10 Psalms 19 9 32 Psalms 19 10 11 Psalms 19 9 33 Psalms 19 10 12 Psalms 19 9 34 Psalms 19 10 13 Psalms 19 9 35 Psalms 19 10 14 Psalms 19 9 36 Psalms 19 10 15 Psalms 19 9 37 Psalms 19 10 16 Psalms 19 9 38 Psalms 19 10 17 Psalms 19 9 39 Psalms 19 10 18 Psalms 19 10 1 Psalms 19 11 1 Psalms 19 10 2 Psalms 19 11 1 Psalms 19 10 3 Psalms 19 11 2 Psalms 19 10 4 Psalms 19 11 3 Psalms 19 10 5 Psalms 19 11 4 Psalms 19 10 6 Psalms 19 11 5 Psalms 19 10 7 Psalms 19 11 6 Psalms 19 10 8 Psalms 19 11 7 Psalms 19 11 1 Psalms 19 12 1 Psalms 19 11 2 Psalms 19 12 2 Psalms 19 11 3 Psalms 19 12 3 Psalms 19 11 4 Psalms 19 12 4 Psalms 19 11 5 Psalms 19 12 5 Psalms 19 11 6 Psalms 19 12 6 Psalms 19 11 7 Psalms 19 12 7 Psalms 19 11 8 Psalms 19 12 8 Psalms 19 11 9 Psalms 19 12 9 Psalms 19 12 1 Psalms 19 13 1 Psalms 19 12 1 Psalms 19 13 2 Psalms 19 12 2 Psalms 19 13 3 Psalms 19 12 3 Psalms 19 13 3 Psalms 19 12 4 Psalms 19 13 4 Psalms 19 12 5 Psalms 19 13 5 Psalms 19 12 6 Psalms 19 13 6 Psalms 19 13 1 Psalms 19 14 1 Psalms 19 13 2 Psalms 19 14 2 Psalms 19 13 3 Psalms 19 14 3 Psalms 19 13 4 Psalms 19 14 4 Psalms 19 13 5 Psalms 19 14 5 Psalms 19 13 6 Psalms 19 14 6 Psalms 19 13 7 Psalms 19 14 7 Psalms 19 14 1 Psalms 19 15 1 Psalms 19 14 2 Psalms 19 15 2 Psalms 19 14 3 Psalms 19 15 2 Psalms 19 14 3 Psalms 19 15 3 Psalms 19 14 4 Psalms 19 15 4 Psalms 19 14 5 Psalms 19 15 5 Psalms 19 15 1 Psalms 19 16 1 Psalms 19 15 2 Psalms 19 16 2 Psalms 19 15 3 Psalms 19 16 3 Psalms 19 15 4 Psalms 19 16 4 Psalms 19 15 5 Psalms 19 16 5 Psalms 19 15 6 Psalms 19 16 6 Psalms 19 15 7 Psalms 19 16 7 Psalms 19 15 8 Psalms 19 16 8 Psalms 19 15 9 Psalms 19 16 9 Psalms 19 15 10 Psalms 19 16 10 Psalms 19 15 10 Psalms 19 16 11 Psalms 19 16 1 Psalms 19 17 1 Psalms 19 16 2 Psalms 19 17 2 Psalms 19 16 3 Psalms 19 17 3 Psalms 19 16 4 Psalms 19 17 4 Psalms 19 16 5 Psalms 19 17 5 Psalms 19 16 6 Psalms 19 17 6 Psalms 19 16 7 Psalms 19 17 7 Psalms 19 16 8 Psalms 19 17 8 Psalms 19 16 9 Psalms 19 17 9 Psalms 19 16 10 Psalms 19 17 10 Psalms 19 16 11 Psalms 19 17 11 Psalms 19 16 12 Psalms 19 17 12 Psalms 19 16 13 Psalms 19 17 13 Psalms 19 16 14 Psalms 19 17 14 Psalms 19 16 15 Psalms 19 17 15 Psalms 19 17 1 Psalms 19 18 1 Psalms 19 17 2 Psalms 19 18 2 Psalms 19 17 3 Psalms 19 18 3 Psalms 19 17 4 Psalms 19 18 4 Psalms 19 17 5 Psalms 19 18 5 Psalms 19 17 6 Psalms 19 18 6 Psalms 19 17 7 Psalms 19 18 7 Psalms 19 17 8 Psalms 19 18 8 Psalms 19 17 9 Psalms 19 18 9 Psalms 19 17 10 Psalms 19 18 10 Psalms 19 17 11 Psalms 19 18 11 Psalms 19 17 12 Psalms 19 18 12 Psalms 19 17 13 Psalms 19 18 13 Psalms 19 17 14 Psalms 19 18 14 Psalms 19 17 15 Psalms 19 18 15 Psalms 19 17 16 Psalms 19 18 16 Psalms 19 17 17 Psalms 19 18 17 Psalms 19 17 18 Psalms 19 18 18 Psalms 19 17 19 Psalms 19 18 19 Psalms 19 17 20 Psalms 19 18 20 Psalms 19 17 21 Psalms 19 18 21 Psalms 19 17 22 Psalms 19 18 22 Psalms 19 17 23 Psalms 19 18 23 Psalms 19 17 24 Psalms 19 18 24 Psalms 19 17 25 Psalms 19 18 25 Psalms 19 17 26 Psalms 19 18 26 Psalms 19 17 27 Psalms 19 18 27 Psalms 19 17 28 Psalms 19 18 28 Psalms 19 17 29 Psalms 19 18 29 Psalms 19 17 30 Psalms 19 18 30 Psalms 19 17 31 Psalms 19 18 31 Psalms 19 17 32 Psalms 19 18 32 Psalms 19 17 33 Psalms 19 18 33 Psalms 19 17 34 Psalms 19 18 34 Psalms 19 17 35 Psalms 19 18 35 Psalms 19 17 36 Psalms 19 18 36 Psalms 19 17 37 Psalms 19 18 37 Psalms 19 17 38 Psalms 19 18 38 Psalms 19 17 39 Psalms 19 18 39 Psalms 19 17 40 Psalms 19 18 40 Psalms 19 17 41 Psalms 19 18 41 Psalms 19 17 42 Psalms 19 18 42 Psalms 19 17 43 Psalms 19 18 43 Psalms 19 17 44 Psalms 19 18 44 Psalms 19 17 45 Psalms 19 18 45 Psalms 19 17 46 Psalms 19 18 46 Psalms 19 17 47 Psalms 19 18 47 Psalms 19 17 48 Psalms 19 18 48 Psalms 19 17 49 Psalms 19 18 49 Psalms 19 17 50 Psalms 19 18 50 Psalms 19 17 51 Psalms 19 18 51 Psalms 19 18 1 Psalms 19 19 1 Psalms 19 18 2 Psalms 19 19 2 Psalms 19 18 3 Psalms 19 19 3 Psalms 19 18 4 Psalms 19 19 4 Psalms 19 18 5 Psalms 19 19 5 Psalms 19 18 6 Psalms 19 19 6 Psalms 19 18 7 Psalms 19 19 7 Psalms 19 18 8 Psalms 19 19 8 Psalms 19 18 9 Psalms 19 19 9 Psalms 19 18 10 Psalms 19 19 10 Psalms 19 18 11 Psalms 19 19 11 Psalms 19 18 12 Psalms 19 19 12 Psalms 19 18 13 Psalms 19 19 13 Psalms 19 18 14 Psalms 19 19 14 Psalms 19 18 15 Psalms 19 19 15 Psalms 19 19 1 Psalms 19 20 1 Psalms 19 19 2 Psalms 19 20 2 Psalms 19 19 3 Psalms 19 20 3 Psalms 19 19 4 Psalms 19 20 4 Psalms 19 19 5 Psalms 19 20 5 Psalms 19 19 6 Psalms 19 20 6 Psalms 19 19 7 Psalms 19 20 7 Psalms 19 19 8 Psalms 19 20 8 Psalms 19 19 9 Psalms 19 20 9 Psalms 19 19 10 Psalms 19 20 10 Psalms 19 20 1 Psalms 19 21 1 Psalms 19 20 2 Psalms 19 21 2 Psalms 19 20 3 Psalms 19 21 3 Psalms 19 20 4 Psalms 19 21 4 Psalms 19 20 5 Psalms 19 21 5 Psalms 19 20 6 Psalms 19 21 6 Psalms 19 20 7 Psalms 19 21 7 Psalms 19 20 8 Psalms 19 21 8 Psalms 19 20 9 Psalms 19 21 9 Psalms 19 20 10 Psalms 19 21 10 Psalms 19 20 11 Psalms 19 21 11 Psalms 19 20 12 Psalms 19 21 12 Psalms 19 20 13 Psalms 19 21 13 Psalms 19 20 14 Psalms 19 21 14 Psalms 19 21 1 Psalms 19 22 1 Psalms 19 21 2 Psalms 19 22 2 Psalms 19 21 3 Psalms 19 22 3 Psalms 19 21 4 Psalms 19 22 4 Psalms 19 21 5 Psalms 19 22 5 Psalms 19 21 6 Psalms 19 22 6 Psalms 19 21 7 Psalms 19 22 7 Psalms 19 21 8 Psalms 19 22 8 Psalms 19 21 9 Psalms 19 22 9 Psalms 19 21 10 Psalms 19 22 10 Psalms 19 21 11 Psalms 19 22 11 Psalms 19 21 12 Psalms 19 22 12 Psalms 19 21 13 Psalms 19 22 13 Psalms 19 21 14 Psalms 19 22 14 Psalms 19 21 15 Psalms 19 22 15 Psalms 19 21 16 Psalms 19 22 16 Psalms 19 21 17 Psalms 19 22 17 Psalms 19 21 18 Psalms 19 22 18 Psalms 19 21 19 Psalms 19 22 19 Psalms 19 21 20 Psalms 19 22 20 Psalms 19 21 21 Psalms 19 22 21 Psalms 19 21 22 Psalms 19 22 22 Psalms 19 21 23 Psalms 19 22 23 Psalms 19 21 24 Psalms 19 22 24 Psalms 19 21 25 Psalms 19 22 25 Psalms 19 21 26 Psalms 19 22 26 Psalms 19 21 27 Psalms 19 22 27 Psalms 19 21 28 Psalms 19 22 28 Psalms 19 21 29 Psalms 19 22 29 Psalms 19 21 30 Psalms 19 22 30 Psalms 19 21 31 Psalms 19 22 31 Psalms 19 21 32 Psalms 19 22 32 Psalms 19 22 1 Psalms 19 23 1 Psalms 19 22 2 Psalms 19 23 2 Psalms 19 22 3 Psalms 19 23 3 Psalms 19 22 4 Psalms 19 23 4 Psalms 19 22 5 Psalms 19 23 5 Psalms 19 22 6 Psalms 19 23 6 Psalms 19 23 1 Psalms 19 24 1 Psalms 19 23 2 Psalms 19 24 2 Psalms 19 23 3 Psalms 19 24 3 Psalms 19 23 4 Psalms 19 24 4 Psalms 19 23 5 Psalms 19 24 5 Psalms 19 23 6 Psalms 19 24 6 Psalms 19 23 7 Psalms 19 24 7 Psalms 19 23 8 Psalms 19 24 8 Psalms 19 23 9 Psalms 19 24 9 Psalms 19 23 10 Psalms 19 24 10 Psalms 19 24 1 Psalms 19 25 1 Psalms 19 24 2 Psalms 19 25 2 Psalms 19 24 3 Psalms 19 25 3 Psalms 19 24 4 Psalms 19 25 4 Psalms 19 24 5 Psalms 19 25 5 Psalms 19 24 6 Psalms 19 25 6 Psalms 19 24 7 Psalms 19 25 7 Psalms 19 24 8 Psalms 19 25 8 Psalms 19 24 9 Psalms 19 25 9 Psalms 19 24 10 Psalms 19 25 10 Psalms 19 24 11 Psalms 19 25 11 Psalms 19 24 12 Psalms 19 25 12 Psalms 19 24 13 Psalms 19 25 13 Psalms 19 24 14 Psalms 19 25 14 Psalms 19 24 15 Psalms 19 25 15 Psalms 19 24 16 Psalms 19 25 16 Psalms 19 24 17 Psalms 19 25 17 Psalms 19 24 18 Psalms 19 25 18 Psalms 19 24 19 Psalms 19 25 19 Psalms 19 24 20 Psalms 19 25 20 Psalms 19 24 21 Psalms 19 25 21 Psalms 19 24 22 Psalms 19 25 22 Psalms 19 25 1 Psalms 19 26 1 Psalms 19 25 2 Psalms 19 26 2 Psalms 19 25 3 Psalms 19 26 3 Psalms 19 25 4 Psalms 19 26 4 Psalms 19 25 5 Psalms 19 26 5 Psalms 19 25 6 Psalms 19 26 6 Psalms 19 25 7 Psalms 19 26 7 Psalms 19 25 8 Psalms 19 26 8 Psalms 19 25 9 Psalms 19 26 9 Psalms 19 25 10 Psalms 19 26 10 Psalms 19 25 11 Psalms 19 26 11 Psalms 19 25 12 Psalms 19 26 12 Psalms 19 26 1 Psalms 19 27 1 Psalms 19 26 2 Psalms 19 27 2 Psalms 19 26 3 Psalms 19 27 3 Psalms 19 26 4 Psalms 19 27 4 Psalms 19 26 5 Psalms 19 27 5 Psalms 19 26 6 Psalms 19 27 6 Psalms 19 26 7 Psalms 19 27 7 Psalms 19 26 8 Psalms 19 27 8 Psalms 19 26 9 Psalms 19 27 9 Psalms 19 26 10 Psalms 19 27 10 Psalms 19 26 11 Psalms 19 27 11 Psalms 19 26 12 Psalms 19 27 12 Psalms 19 26 13 Psalms 19 27 13 Psalms 19 26 14 Psalms 19 27 14 Psalms 19 27 1 Psalms 19 28 1 Psalms 19 27 2 Psalms 19 28 2 Psalms 19 27 3 Psalms 19 28 3 Psalms 19 27 4 Psalms 19 28 4 Psalms 19 27 5 Psalms 19 28 5 Psalms 19 27 6 Psalms 19 28 6 Psalms 19 27 7 Psalms 19 28 7 Psalms 19 27 8 Psalms 19 28 8 Psalms 19 27 9 Psalms 19 28 9 Psalms 19 28 1 Psalms 19 29 1 Psalms 19 28 2 Psalms 19 29 2 Psalms 19 28 3 Psalms 19 29 3 Psalms 19 28 4 Psalms 19 29 4 Psalms 19 28 5 Psalms 19 29 5 Psalms 19 28 6 Psalms 19 29 6 Psalms 19 28 7 Psalms 19 29 7 Psalms 19 28 8 Psalms 19 29 8 Psalms 19 28 9 Psalms 19 29 9 Psalms 19 28 10 Psalms 19 29 10 Psalms 19 28 11 Psalms 19 29 11 Psalms 19 29 1 Psalms 19 30 1 Psalms 19 29 2 Psalms 19 30 2 Psalms 19 29 3 Psalms 19 30 3 Psalms 19 29 4 Psalms 19 30 4 Psalms 19 29 5 Psalms 19 30 5 Psalms 19 29 6 Psalms 19 30 6 Psalms 19 29 7 Psalms 19 30 7 Psalms 19 29 8 Psalms 19 30 8 Psalms 19 29 9 Psalms 19 30 9 Psalms 19 29 10 Psalms 19 30 10 Psalms 19 29 11 Psalms 19 30 11 Psalms 19 29 12 Psalms 19 30 12 Psalms 19 29 13 Psalms 19 30 13 Psalms 19 30 1 Psalms 19 31 1 Psalms 19 30 2 Psalms 19 31 2 Psalms 19 30 3 Psalms 19 31 3 Psalms 19 30 4 Psalms 19 31 4 Psalms 19 30 5 Psalms 19 31 5 Psalms 19 30 6 Psalms 19 31 6 Psalms 19 30 7 Psalms 19 31 7 Psalms 19 30 8 Psalms 19 31 8 Psalms 19 30 9 Psalms 19 31 9 Psalms 19 30 10 Psalms 19 31 10 Psalms 19 30 11 Psalms 19 31 11 Psalms 19 30 12 Psalms 19 31 12 Psalms 19 30 13 Psalms 19 31 13 Psalms 19 30 14 Psalms 19 31 14 Psalms 19 30 15 Psalms 19 31 15 Psalms 19 30 16 Psalms 19 31 16 Psalms 19 30 17 Psalms 19 31 17 Psalms 19 30 18 Psalms 19 31 18 Psalms 19 30 19 Psalms 19 31 19 Psalms 19 30 20 Psalms 19 31 20 Psalms 19 30 21 Psalms 19 31 21 Psalms 19 30 22 Psalms 19 31 22 Psalms 19 30 23 Psalms 19 31 23 Psalms 19 30 24 Psalms 19 31 24 Psalms 19 30 25 Psalms 19 31 25 Psalms 19 31 1 Psalms 19 32 1 Psalms 19 31 2 Psalms 19 32 2 Psalms 19 31 3 Psalms 19 32 3 Psalms 19 31 4 Psalms 19 32 4 Psalms 19 31 5 Psalms 19 32 5 Psalms 19 31 6 Psalms 19 32 6 Psalms 19 31 7 Psalms 19 32 7 Psalms 19 31 8 Psalms 19 32 8 Psalms 19 31 9 Psalms 19 32 9 Psalms 19 31 10 Psalms 19 32 10 Psalms 19 31 11 Psalms 19 32 11 Psalms 19 32 1 Psalms 19 33 1 Psalms 19 32 2 Psalms 19 33 2 Psalms 19 32 3 Psalms 19 33 3 Psalms 19 32 4 Psalms 19 33 4 Psalms 19 32 5 Psalms 19 33 5 Psalms 19 32 6 Psalms 19 33 6 Psalms 19 32 7 Psalms 19 33 7 Psalms 19 32 8 Psalms 19 33 8 Psalms 19 32 9 Psalms 19 33 9 Psalms 19 32 10 Psalms 19 33 10 Psalms 19 32 11 Psalms 19 33 11 Psalms 19 32 12 Psalms 19 33 12 Psalms 19 32 13 Psalms 19 33 13 Psalms 19 32 14 Psalms 19 33 14 Psalms 19 32 15 Psalms 19 33 15 Psalms 19 32 16 Psalms 19 33 16 Psalms 19 32 17 Psalms 19 33 17 Psalms 19 32 18 Psalms 19 33 18 Psalms 19 32 19 Psalms 19 33 19 Psalms 19 32 20 Psalms 19 33 20 Psalms 19 32 21 Psalms 19 33 21 Psalms 19 32 22 Psalms 19 33 22 Psalms 19 33 1 Psalms 19 34 1 Psalms 19 33 2 Psalms 19 34 2 Psalms 19 33 3 Psalms 19 34 3 Psalms 19 33 4 Psalms 19 34 4 Psalms 19 33 5 Psalms 19 34 5 Psalms 19 33 6 Psalms 19 34 6 Psalms 19 33 7 Psalms 19 34 7 Psalms 19 33 8 Psalms 19 34 8 Psalms 19 33 9 Psalms 19 34 9 Psalms 19 33 10 Psalms 19 34 10 Psalms 19 33 11 Psalms 19 34 11 Psalms 19 33 12 Psalms 19 34 12 Psalms 19 33 13 Psalms 19 34 13 Psalms 19 33 14 Psalms 19 34 14 Psalms 19 33 15 Psalms 19 34 15 Psalms 19 33 16 Psalms 19 34 16 Psalms 19 33 17 Psalms 19 34 17 Psalms 19 33 18 Psalms 19 34 18 Psalms 19 33 19 Psalms 19 34 19 Psalms 19 33 20 Psalms 19 34 20 Psalms 19 33 21 Psalms 19 34 21 Psalms 19 33 22 Psalms 19 34 22 Psalms 19 33 23 Psalms 19 34 23 Psalms 19 34 1 Psalms 19 35 1 Psalms 19 34 2 Psalms 19 35 2 Psalms 19 34 3 Psalms 19 35 3 Psalms 19 34 4 Psalms 19 35 4 Psalms 19 34 5 Psalms 19 35 5 Psalms 19 34 6 Psalms 19 35 6 Psalms 19 34 7 Psalms 19 35 7 Psalms 19 34 8 Psalms 19 35 8 Psalms 19 34 9 Psalms 19 35 9 Psalms 19 34 10 Psalms 19 35 10 Psalms 19 34 11 Psalms 19 35 11 Psalms 19 34 12 Psalms 19 35 12 Psalms 19 34 13 Psalms 19 35 13 Psalms 19 34 14 Psalms 19 35 14 Psalms 19 34 15 Psalms 19 35 15 Psalms 19 34 16 Psalms 19 35 16 Psalms 19 34 17 Psalms 19 35 17 Psalms 19 34 18 Psalms 19 35 18 Psalms 19 34 19 Psalms 19 35 19 Psalms 19 34 20 Psalms 19 35 20 Psalms 19 34 21 Psalms 19 35 21 Psalms 19 34 22 Psalms 19 35 22 Psalms 19 34 23 Psalms 19 35 23 Psalms 19 34 24 Psalms 19 35 24 Psalms 19 34 25 Psalms 19 35 25 Psalms 19 34 26 Psalms 19 35 26 Psalms 19 34 27 Psalms 19 35 27 Psalms 19 34 28 Psalms 19 35 28 Psalms 19 35 1 Psalms 19 36 1 Psalms 19 35 2 Psalms 19 36 2 Psalms 19 35 3 Psalms 19 36 3 Psalms 19 35 4 Psalms 19 36 4 Psalms 19 35 5 Psalms 19 36 5 Psalms 19 35 6 Psalms 19 36 6 Psalms 19 35 7 Psalms 19 36 7 Psalms 19 35 8 Psalms 19 36 8 Psalms 19 35 9 Psalms 19 36 9 Psalms 19 35 10 Psalms 19 36 10 Psalms 19 35 11 Psalms 19 36 11 Psalms 19 35 12 Psalms 19 36 12 Psalms 19 35 13 Psalms 19 36 13 Psalms 19 36 1 Psalms 19 37 1 Psalms 19 36 2 Psalms 19 37 2 Psalms 19 36 3 Psalms 19 37 3 Psalms 19 36 4 Psalms 19 37 4 Psalms 19 36 5 Psalms 19 37 5 Psalms 19 36 6 Psalms 19 37 6 Psalms 19 36 7 Psalms 19 37 7 Psalms 19 36 8 Psalms 19 37 8 Psalms 19 36 9 Psalms 19 37 9 Psalms 19 36 10 Psalms 19 37 10 Psalms 19 36 11 Psalms 19 37 11 Psalms 19 36 12 Psalms 19 37 12 Psalms 19 36 13 Psalms 19 37 13 Psalms 19 36 14 Psalms 19 37 14 Psalms 19 36 15 Psalms 19 37 15 Psalms 19 36 16 Psalms 19 37 16 Psalms 19 36 17 Psalms 19 37 17 Psalms 19 36 18 Psalms 19 37 18 Psalms 19 36 19 Psalms 19 37 19 Psalms 19 36 20 Psalms 19 37 20 Psalms 19 36 21 Psalms 19 37 21 Psalms 19 36 22 Psalms 19 37 22 Psalms 19 36 23 Psalms 19 37 23 Psalms 19 36 24 Psalms 19 37 24 Psalms 19 36 25 Psalms 19 37 25 Psalms 19 36 26 Psalms 19 37 26 Psalms 19 36 27 Psalms 19 37 27 Psalms 19 36 28 Psalms 19 37 28 Psalms 19 36 29 Psalms 19 37 29 Psalms 19 36 30 Psalms 19 37 30 Psalms 19 36 31 Psalms 19 37 31 Psalms 19 36 32 Psalms 19 37 32 Psalms 19 36 33 Psalms 19 37 33 Psalms 19 36 34 Psalms 19 37 34 Psalms 19 36 35 Psalms 19 37 35 Psalms 19 36 36 Psalms 19 37 36 Psalms 19 36 37 Psalms 19 37 37 Psalms 19 36 38 Psalms 19 37 38 Psalms 19 36 39 Psalms 19 37 39 Psalms 19 36 40 Psalms 19 37 40 Psalms 19 37 1 Psalms 19 38 1 Psalms 19 37 2 Psalms 19 38 2 Psalms 19 37 3 Psalms 19 38 3 Psalms 19 37 4 Psalms 19 38 4 Psalms 19 37 5 Psalms 19 38 5 Psalms 19 37 6 Psalms 19 38 6 Psalms 19 37 7 Psalms 19 38 7 Psalms 19 37 8 Psalms 19 38 8 Psalms 19 37 9 Psalms 19 38 9 Psalms 19 37 10 Psalms 19 38 10 Psalms 19 37 11 Psalms 19 38 11 Psalms 19 37 12 Psalms 19 38 12 Psalms 19 37 13 Psalms 19 38 13 Psalms 19 37 14 Psalms 19 38 14 Psalms 19 37 15 Psalms 19 38 15 Psalms 19 37 16 Psalms 19 38 16 Psalms 19 37 17 Psalms 19 38 17 Psalms 19 37 18 Psalms 19 38 18 Psalms 19 37 19 Psalms 19 38 19 Psalms 19 37 20 Psalms 19 38 20 Psalms 19 37 21 Psalms 19 38 21 Psalms 19 37 22 Psalms 19 38 22 Psalms 19 37 23 Psalms 19 38 23 Psalms 19 38 1 Psalms 19 39 1 Psalms 19 38 2 Psalms 19 39 2 Psalms 19 38 3 Psalms 19 39 3 Psalms 19 38 4 Psalms 19 39 4 Psalms 19 38 5 Psalms 19 39 5 Psalms 19 38 6 Psalms 19 39 6 Psalms 19 38 7 Psalms 19 39 7 Psalms 19 38 8 Psalms 19 39 8 Psalms 19 38 9 Psalms 19 39 9 Psalms 19 38 10 Psalms 19 39 10 Psalms 19 38 11 Psalms 19 39 11 Psalms 19 38 12 Psalms 19 39 12 Psalms 19 38 13 Psalms 19 39 13 Psalms 19 38 14 Psalms 19 39 14 Psalms 19 39 1 Psalms 19 40 1 Psalms 19 39 2 Psalms 19 40 2 Psalms 19 39 3 Psalms 19 40 3 Psalms 19 39 4 Psalms 19 40 4 Psalms 19 39 5 Psalms 19 40 5 Psalms 19 39 6 Psalms 19 40 6 Psalms 19 39 7 Psalms 19 40 7 Psalms 19 39 8 Psalms 19 40 8 Psalms 19 39 9 Psalms 19 40 9 Psalms 19 39 10 Psalms 19 40 10 Psalms 19 39 11 Psalms 19 40 11 Psalms 19 39 12 Psalms 19 40 12 Psalms 19 39 13 Psalms 19 40 13 Psalms 19 39 14 Psalms 19 40 14 Psalms 19 39 15 Psalms 19 40 15 Psalms 19 39 16 Psalms 19 40 16 Psalms 19 39 17 Psalms 19 40 17 Psalms 19 39 18 Psalms 19 40 18 Psalms 19 40 1 Psalms 19 41 1 Psalms 19 40 2 Psalms 19 41 2 Psalms 19 40 3 Psalms 19 41 3 Psalms 19 40 4 Psalms 19 41 4 Psalms 19 40 5 Psalms 19 41 5 Psalms 19 40 6 Psalms 19 41 6 Psalms 19 40 7 Psalms 19 41 7 Psalms 19 40 8 Psalms 19 41 8 Psalms 19 40 9 Psalms 19 41 9 Psalms 19 40 10 Psalms 19 41 10 Psalms 19 40 11 Psalms 19 41 11 Psalms 19 40 12 Psalms 19 41 12 Psalms 19 40 13 Psalms 19 41 13 Psalms 19 40 14 Psalms 19 41 14 Psalms 19 41 1 Psalms 19 42 1 Psalms 19 41 2 Psalms 19 42 2 Psalms 19 41 3 Psalms 19 42 3 Psalms 19 41 4 Psalms 19 42 4 Psalms 19 41 5 Psalms 19 42 5 Psalms 19 41 6 Psalms 19 42 6 Psalms 19 41 7 Psalms 19 42 7 Psalms 19 41 8 Psalms 19 42 8 Psalms 19 41 9 Psalms 19 42 9 Psalms 19 41 10 Psalms 19 42 10 Psalms 19 41 11 Psalms 19 42 11 Psalms 19 41 12 Psalms 19 42 12 Psalms 19 42 1 Psalms 19 43 1 Psalms 19 42 2 Psalms 19 43 2 Psalms 19 42 3 Psalms 19 43 3 Psalms 19 42 4 Psalms 19 43 4 Psalms 19 42 5 Psalms 19 43 5 Psalms 19 43 1 Psalms 19 44 1 Psalms 19 43 2 Psalms 19 44 2 Psalms 19 43 3 Psalms 19 44 3 Psalms 19 43 4 Psalms 19 44 4 Psalms 19 43 5 Psalms 19 44 5 Psalms 19 43 6 Psalms 19 44 6 Psalms 19 43 7 Psalms 19 44 7 Psalms 19 43 8 Psalms 19 44 8 Psalms 19 43 9 Psalms 19 44 9 Psalms 19 43 10 Psalms 19 44 10 Psalms 19 43 11 Psalms 19 44 11 Psalms 19 43 12 Psalms 19 44 12 Psalms 19 43 13 Psalms 19 44 13 Psalms 19 43 14 Psalms 19 44 14 Psalms 19 43 15 Psalms 19 44 15 Psalms 19 43 16 Psalms 19 44 16 Psalms 19 43 17 Psalms 19 44 17 Psalms 19 43 18 Psalms 19 44 18 Psalms 19 43 19 Psalms 19 44 19 Psalms 19 43 20 Psalms 19 44 20 Psalms 19 43 21 Psalms 19 44 21 Psalms 19 43 22 Psalms 19 44 22 Psalms 19 43 22 Psalms 19 44 23 Psalms 19 43 23 Psalms 19 44 24 Psalms 19 43 24 Psalms 19 44 25 Psalms 19 43 25 Psalms 19 44 26 Psalms 19 43 26 Psalms 19 44 27 Psalms 19 44 1 Psalms 19 45 1 Psalms 19 44 2 Psalms 19 45 2 Psalms 19 44 3 Psalms 19 45 3 Psalms 19 44 4 Psalms 19 45 4 Psalms 19 44 5 Psalms 19 45 5 Psalms 19 44 6 Psalms 19 45 6 Psalms 19 44 7 Psalms 19 45 7 Psalms 19 44 8 Psalms 19 45 8 Psalms 19 44 9 Psalms 19 45 9 Psalms 19 44 10 Psalms 19 45 10 Psalms 19 44 11 Psalms 19 45 11 Psalms 19 44 12 Psalms 19 45 12 Psalms 19 44 13 Psalms 19 45 13 Psalms 19 44 14 Psalms 19 45 14 Psalms 19 44 15 Psalms 19 45 15 Psalms 19 44 16 Psalms 19 45 16 Psalms 19 44 17 Psalms 19 45 17 Psalms 19 44 18 Psalms 19 45 18 Psalms 19 45 1 Psalms 19 46 1 Psalms 19 45 2 Psalms 19 46 2 Psalms 19 45 3 Psalms 19 46 3 Psalms 19 45 4 Psalms 19 46 4 Psalms 19 45 5 Psalms 19 46 5 Psalms 19 45 6 Psalms 19 46 6 Psalms 19 45 7 Psalms 19 46 7 Psalms 19 45 8 Psalms 19 46 8 Psalms 19 45 9 Psalms 19 46 9 Psalms 19 45 10 Psalms 19 46 10 Psalms 19 45 11 Psalms 19 46 11 Psalms 19 45 12 Psalms 19 46 12 Psalms 19 46 1 Psalms 19 47 1 Psalms 19 46 2 Psalms 19 47 2 Psalms 19 46 3 Psalms 19 47 3 Psalms 19 46 4 Psalms 19 47 4 Psalms 19 46 5 Psalms 19 47 5 Psalms 19 46 6 Psalms 19 47 6 Psalms 19 46 7 Psalms 19 47 7 Psalms 19 46 8 Psalms 19 47 8 Psalms 19 46 9 Psalms 19 47 9 Psalms 19 46 10 Psalms 19 47 10 Psalms 19 47 1 Psalms 19 48 1 Psalms 19 47 2 Psalms 19 48 2 Psalms 19 47 3 Psalms 19 48 3 Psalms 19 47 4 Psalms 19 48 4 Psalms 19 47 5 Psalms 19 48 5 Psalms 19 47 6 Psalms 19 48 6 Psalms 19 47 7 Psalms 19 48 7 Psalms 19 47 8 Psalms 19 48 8 Psalms 19 47 9 Psalms 19 48 9 Psalms 19 47 10 Psalms 19 48 10 Psalms 19 47 11 Psalms 19 48 11 Psalms 19 47 12 Psalms 19 48 12 Psalms 19 47 13 Psalms 19 48 13 Psalms 19 47 14 Psalms 19 48 14 Psalms 19 47 15 Psalms 19 48 15 Psalms 19 48 1 Psalms 19 49 1 Psalms 19 48 2 Psalms 19 49 2 Psalms 19 48 3 Psalms 19 49 3 Psalms 19 48 4 Psalms 19 49 4 Psalms 19 48 5 Psalms 19 49 5 Psalms 19 48 6 Psalms 19 49 6 Psalms 19 48 7 Psalms 19 49 7 Psalms 19 48 8 Psalms 19 49 8 Psalms 19 48 9 Psalms 19 49 9 Psalms 19 48 10 Psalms 19 49 10 Psalms 19 48 11 Psalms 19 49 11 Psalms 19 48 12 Psalms 19 49 12 Psalms 19 48 13 Psalms 19 49 13 Psalms 19 48 14 Psalms 19 49 14 Psalms 19 48 15 Psalms 19 49 15 Psalms 19 48 16 Psalms 19 49 16 Psalms 19 48 17 Psalms 19 49 17 Psalms 19 48 18 Psalms 19 49 18 Psalms 19 48 19 Psalms 19 49 19 Psalms 19 48 20 Psalms 19 49 20 Psalms 19 48 21 Psalms 19 49 21 Psalms 19 49 1 Psalms 19 50 1 Psalms 19 49 2 Psalms 19 50 2 Psalms 19 49 3 Psalms 19 50 3 Psalms 19 49 4 Psalms 19 50 4 Psalms 19 49 5 Psalms 19 50 5 Psalms 19 49 6 Psalms 19 50 6 Psalms 19 49 7 Psalms 19 50 7 Psalms 19 49 8 Psalms 19 50 8 Psalms 19 49 9 Psalms 19 50 9 Psalms 19 49 10 Psalms 19 50 10 Psalms 19 49 11 Psalms 19 50 11 Psalms 19 49 12 Psalms 19 50 12 Psalms 19 49 13 Psalms 19 50 13 Psalms 19 49 14 Psalms 19 50 14 Psalms 19 49 15 Psalms 19 50 15 Psalms 19 49 16 Psalms 19 50 16 Psalms 19 49 17 Psalms 19 50 17 Psalms 19 49 18 Psalms 19 50 18 Psalms 19 49 19 Psalms 19 50 19 Psalms 19 49 20 Psalms 19 50 20 Psalms 19 49 21 Psalms 19 50 21 Psalms 19 49 22 Psalms 19 50 22 Psalms 19 49 23 Psalms 19 50 23 Psalms 19 50 1 Psalms 19 51 1 Psalms 19 50 2 Psalms 19 51 2 Psalms 19 50 3 Psalms 19 51 3 Psalms 19 50 4 Psalms 19 51 4 Psalms 19 50 5 Psalms 19 51 5 Psalms 19 50 6 Psalms 19 51 6 Psalms 19 50 7 Psalms 19 51 7 Psalms 19 50 8 Psalms 19 51 8 Psalms 19 50 9 Psalms 19 51 9 Psalms 19 50 10 Psalms 19 51 10 Psalms 19 50 11 Psalms 19 51 11 Psalms 19 50 12 Psalms 19 51 12 Psalms 19 50 13 Psalms 19 51 13 Psalms 19 50 14 Psalms 19 51 14 Psalms 19 50 15 Psalms 19 51 15 Psalms 19 50 16 Psalms 19 51 16 Psalms 19 50 17 Psalms 19 51 17 Psalms 19 50 18 Psalms 19 51 18 Psalms 19 50 19 Psalms 19 51 19 Psalms 19 50 20 Psalms 19 51 20 Psalms 19 50 21 Psalms 19 51 21 Psalms 19 51 1 Psalms 19 52 1 Psalms 19 51 2 Psalms 19 52 2 Psalms 19 51 3 Psalms 19 52 3 Psalms 19 51 4 Psalms 19 52 4 Psalms 19 51 5 Psalms 19 52 5 Psalms 19 51 6 Psalms 19 52 6 Psalms 19 51 7 Psalms 19 52 7 Psalms 19 51 8 Psalms 19 52 8 Psalms 19 51 9 Psalms 19 52 9 Psalms 19 51 10 Psalms 19 52 10 Psalms 19 51 11 Psalms 19 52 11 Psalms 19 52 1 Psalms 19 53 1 Psalms 19 52 2 Psalms 19 53 2 Psalms 19 52 3 Psalms 19 53 3 Psalms 19 52 4 Psalms 19 53 4 Psalms 19 52 5 Psalms 19 53 5 Psalms 19 52 6 Psalms 19 53 6 Psalms 19 52 7 Psalms 19 53 7 Psalms 19 53 1 Psalms 19 54 1 Psalms 19 53 2 Psalms 19 54 2 Psalms 19 53 3 Psalms 19 54 3 Psalms 19 53 4 Psalms 19 54 4 Psalms 19 53 5 Psalms 19 54 5 Psalms 19 53 6 Psalms 19 54 6 Psalms 19 53 7 Psalms 19 54 7 Psalms 19 53 8 Psalms 19 54 8 Psalms 19 53 9 Psalms 19 54 9 Psalms 19 54 1 Psalms 19 55 1 Psalms 19 54 2 Psalms 19 55 2 Psalms 19 54 3 Psalms 19 55 3 Psalms 19 54 4 Psalms 19 55 4 Psalms 19 54 5 Psalms 19 55 5 Psalms 19 54 6 Psalms 19 55 6 Psalms 19 54 7 Psalms 19 55 7 Psalms 19 54 8 Psalms 19 55 8 Psalms 19 54 9 Psalms 19 55 9 Psalms 19 54 10 Psalms 19 55 10 Psalms 19 54 11 Psalms 19 55 11 Psalms 19 54 12 Psalms 19 55 12 Psalms 19 54 13 Psalms 19 55 13 Psalms 19 54 14 Psalms 19 55 14 Psalms 19 54 15 Psalms 19 55 15 Psalms 19 54 16 Psalms 19 55 16 Psalms 19 54 17 Psalms 19 55 17 Psalms 19 54 18 Psalms 19 55 18 Psalms 19 54 19 Psalms 19 55 19 Psalms 19 54 20 Psalms 19 55 20 Psalms 19 54 21 Psalms 19 55 21 Psalms 19 54 22 Psalms 19 55 22 Psalms 19 54 23 Psalms 19 55 23 Psalms 19 54 24 Psalms 19 55 24 Psalms 19 55 1 Psalms 19 56 1 Psalms 19 55 2 Psalms 19 56 2 Psalms 19 55 3 Psalms 19 56 3 Psalms 19 55 4 Psalms 19 56 4 Psalms 19 55 5 Psalms 19 56 5 Psalms 19 55 6 Psalms 19 56 6 Psalms 19 55 7 Psalms 19 56 7 Psalms 19 55 8 Psalms 19 56 8 Psalms 19 55 9 Psalms 19 56 9 Psalms 19 55 10 Psalms 19 56 10 Psalms 19 55 11 Psalms 19 56 11 Psalms 19 55 11 Psalms 19 56 12 Psalms 19 55 12 Psalms 19 56 13 Psalms 19 55 13 Psalms 19 56 14 Psalms 19 56 1 Psalms 19 57 1 Psalms 19 56 2 Psalms 19 57 2 Psalms 19 56 3 Psalms 19 57 3 Psalms 19 56 4 Psalms 19 57 4 Psalms 19 56 5 Psalms 19 57 5 Psalms 19 56 6 Psalms 19 57 6 Psalms 19 56 7 Psalms 19 57 7 Psalms 19 56 8 Psalms 19 57 8 Psalms 19 56 9 Psalms 19 57 9 Psalms 19 56 10 Psalms 19 57 10 Psalms 19 56 11 Psalms 19 57 11 Psalms 19 56 12 Psalms 19 57 12 Psalms 19 57 1 Psalms 19 58 1 Psalms 19 57 2 Psalms 19 58 2 Psalms 19 57 3 Psalms 19 58 3 Psalms 19 57 4 Psalms 19 58 4 Psalms 19 57 5 Psalms 19 58 5 Psalms 19 57 6 Psalms 19 58 6 Psalms 19 57 7 Psalms 19 58 7 Psalms 19 57 8 Psalms 19 58 8 Psalms 19 57 9 Psalms 19 58 9 Psalms 19 57 10 Psalms 19 58 10 Psalms 19 57 11 Psalms 19 58 11 Psalms 19 57 12 Psalms 19 58 12 Psalms 19 58 1 Psalms 19 59 1 Psalms 19 58 2 Psalms 19 59 2 Psalms 19 58 3 Psalms 19 59 3 Psalms 19 58 4 Psalms 19 59 4 Psalms 19 58 5 Psalms 19 59 5 Psalms 19 58 6 Psalms 19 59 6 Psalms 19 58 7 Psalms 19 59 7 Psalms 19 58 8 Psalms 19 59 8 Psalms 19 58 9 Psalms 19 59 9 Psalms 19 58 10 Psalms 19 59 10 Psalms 19 58 11 Psalms 19 59 11 Psalms 19 58 12 Psalms 19 59 12 Psalms 19 58 13 Psalms 19 59 13 Psalms 19 58 14 Psalms 19 59 14 Psalms 19 58 15 Psalms 19 59 15 Psalms 19 58 16 Psalms 19 59 16 Psalms 19 58 17 Psalms 19 59 17 Psalms 19 58 18 Psalms 19 59 18 Psalms 19 59 1 Psalms 19 60 1 Psalms 19 59 2 Psalms 19 60 2 Psalms 19 59 3 Psalms 19 60 3 Psalms 19 59 4 Psalms 19 60 4 Psalms 19 59 5 Psalms 19 60 5 Psalms 19 59 6 Psalms 19 60 6 Psalms 19 59 7 Psalms 19 60 7 Psalms 19 59 8 Psalms 19 60 8 Psalms 19 59 9 Psalms 19 60 9 Psalms 19 59 10 Psalms 19 60 10 Psalms 19 59 11 Psalms 19 60 11 Psalms 19 59 12 Psalms 19 60 12 Psalms 19 59 13 Psalms 19 60 13 Psalms 19 59 14 Psalms 19 60 14 Psalms 19 60 1 Psalms 19 61 1 Psalms 19 60 2 Psalms 19 61 2 Psalms 19 60 3 Psalms 19 61 3 Psalms 19 60 4 Psalms 19 61 4 Psalms 19 60 5 Psalms 19 61 5 Psalms 19 60 6 Psalms 19 61 6 Psalms 19 60 7 Psalms 19 61 7 Psalms 19 60 8 Psalms 19 61 8 Psalms 19 60 9 Psalms 19 61 9 Psalms 19 61 1 Psalms 19 62 1 Psalms 19 61 2 Psalms 19 62 2 Psalms 19 61 3 Psalms 19 62 3 Psalms 19 61 4 Psalms 19 62 4 Psalms 19 61 5 Psalms 19 62 5 Psalms 19 61 6 Psalms 19 62 6 Psalms 19 61 7 Psalms 19 62 7 Psalms 19 61 8 Psalms 19 62 8 Psalms 19 61 9 Psalms 19 62 9 Psalms 19 61 10 Psalms 19 62 10 Psalms 19 61 11 Psalms 19 62 11 Psalms 19 61 12 Psalms 19 62 12 Psalms 19 61 13 Psalms 19 62 13 Psalms 19 62 1 Psalms 19 63 1 Psalms 19 62 2 Psalms 19 63 2 Psalms 19 62 3 Psalms 19 63 3 Psalms 19 62 4 Psalms 19 63 4 Psalms 19 62 5 Psalms 19 63 5 Psalms 19 62 6 Psalms 19 63 6 Psalms 19 62 7 Psalms 19 63 7 Psalms 19 62 8 Psalms 19 63 8 Psalms 19 62 9 Psalms 19 63 9 Psalms 19 62 10 Psalms 19 63 10 Psalms 19 62 11 Psalms 19 63 11 Psalms 19 62 12 Psalms 19 63 12 Psalms 19 63 1 Psalms 19 64 1 Psalms 19 63 2 Psalms 19 64 2 Psalms 19 63 3 Psalms 19 64 3 Psalms 19 63 4 Psalms 19 64 4 Psalms 19 63 5 Psalms 19 64 5 Psalms 19 63 6 Psalms 19 64 6 Psalms 19 63 7 Psalms 19 64 7 Psalms 19 63 8 Psalms 19 64 8 Psalms 19 63 9 Psalms 19 64 9 Psalms 19 63 10 Psalms 19 64 10 Psalms 19 63 11 Psalms 19 64 11 Psalms 19 64 1 Psalms 19 65 1 Psalms 19 64 2 Psalms 19 65 2 Psalms 19 64 3 Psalms 19 65 3 Psalms 19 64 4 Psalms 19 65 4 Psalms 19 64 5 Psalms 19 65 5 Psalms 19 64 6 Psalms 19 65 6 Psalms 19 64 7 Psalms 19 65 7 Psalms 19 64 8 Psalms 19 65 8 Psalms 19 64 9 Psalms 19 65 9 Psalms 19 64 10 Psalms 19 65 10 Psalms 19 64 11 Psalms 19 65 11 Psalms 19 64 12 Psalms 19 65 12 Psalms 19 64 13 Psalms 19 65 13 Psalms 19 64 14 Psalms 19 65 14 Psalms 19 65 1 Psalms 19 66 1 Psalms 19 65 2 Psalms 19 66 2 Psalms 19 65 3 Psalms 19 66 3 Psalms 19 65 4 Psalms 19 66 4 Psalms 19 65 5 Psalms 19 66 5 Psalms 19 65 6 Psalms 19 66 6 Psalms 19 65 7 Psalms 19 66 7 Psalms 19 65 8 Psalms 19 66 8 Psalms 19 65 9 Psalms 19 66 9 Psalms 19 65 10 Psalms 19 66 10 Psalms 19 65 11 Psalms 19 66 11 Psalms 19 65 12 Psalms 19 66 12 Psalms 19 65 13 Psalms 19 66 13 Psalms 19 65 14 Psalms 19 66 14 Psalms 19 65 15 Psalms 19 66 15 Psalms 19 65 16 Psalms 19 66 16 Psalms 19 65 17 Psalms 19 66 17 Psalms 19 65 18 Psalms 19 66 18 Psalms 19 65 19 Psalms 19 66 19 Psalms 19 65 20 Psalms 19 66 20 Psalms 19 66 1 Psalms 19 67 1 Psalms 19 66 2 Psalms 19 67 2 Psalms 19 66 3 Psalms 19 67 3 Psalms 19 66 4 Psalms 19 67 4 Psalms 19 66 5 Psalms 19 67 5 Psalms 19 66 6 Psalms 19 67 6 Psalms 19 66 7 Psalms 19 67 7 Psalms 19 66 8 Psalms 19 67 8 Psalms 19 67 1 Psalms 19 68 1 Psalms 19 67 2 Psalms 19 68 2 Psalms 19 67 3 Psalms 19 68 3 Psalms 19 67 4 Psalms 19 68 4 Psalms 19 67 5 Psalms 19 68 5 Psalms 19 67 6 Psalms 19 68 6 Psalms 19 67 7 Psalms 19 68 7 Psalms 19 67 8 Psalms 19 68 8 Psalms 19 67 9 Psalms 19 68 9 Psalms 19 67 10 Psalms 19 68 10 Psalms 19 67 11 Psalms 19 68 11 Psalms 19 67 12 Psalms 19 68 12 Psalms 19 67 13 Psalms 19 68 13 Psalms 19 67 14 Psalms 19 68 14 Psalms 19 67 15 Psalms 19 68 15 Psalms 19 67 16 Psalms 19 68 16 Psalms 19 67 17 Psalms 19 68 17 Psalms 19 67 18 Psalms 19 68 18 Psalms 19 67 19 Psalms 19 68 19 Psalms 19 67 20 Psalms 19 68 20 Psalms 19 67 21 Psalms 19 68 21 Psalms 19 67 22 Psalms 19 68 22 Psalms 19 67 23 Psalms 19 68 23 Psalms 19 67 24 Psalms 19 68 24 Psalms 19 67 25 Psalms 19 68 25 Psalms 19 67 26 Psalms 19 68 26 Psalms 19 67 27 Psalms 19 68 27 Psalms 19 67 28 Psalms 19 68 28 Psalms 19 67 29 Psalms 19 68 29 Psalms 19 67 30 Psalms 19 68 30 Psalms 19 67 31 Psalms 19 68 31 Psalms 19 67 32 Psalms 19 68 32 Psalms 19 67 33 Psalms 19 68 33 Psalms 19 67 34 Psalms 19 68 34 Psalms 19 67 35 Psalms 19 68 35 Psalms 19 67 36 Psalms 19 68 36 Psalms 19 68 1 Psalms 19 69 1 Psalms 19 68 2 Psalms 19 69 2 Psalms 19 68 3 Psalms 19 69 3 Psalms 19 68 4 Psalms 19 69 4 Psalms 19 68 5 Psalms 19 69 5 Psalms 19 68 6 Psalms 19 69 6 Psalms 19 68 7 Psalms 19 69 7 Psalms 19 68 8 Psalms 19 69 8 Psalms 19 68 9 Psalms 19 69 9 Psalms 19 68 10 Psalms 19 69 10 Psalms 19 68 11 Psalms 19 69 11 Psalms 19 68 12 Psalms 19 69 12 Psalms 19 68 13 Psalms 19 69 13 Psalms 19 68 14 Psalms 19 69 14 Psalms 19 68 15 Psalms 19 69 15 Psalms 19 68 16 Psalms 19 69 16 Psalms 19 68 17 Psalms 19 69 17 Psalms 19 68 18 Psalms 19 69 18 Psalms 19 68 19 Psalms 19 69 19 Psalms 19 68 20 Psalms 19 69 20 Psalms 19 68 21 Psalms 19 69 21 Psalms 19 68 22 Psalms 19 69 22 Psalms 19 68 23 Psalms 19 69 23 Psalms 19 68 24 Psalms 19 69 24 Psalms 19 68 25 Psalms 19 69 25 Psalms 19 68 26 Psalms 19 69 26 Psalms 19 68 27 Psalms 19 69 27 Psalms 19 68 28 Psalms 19 69 28 Psalms 19 68 29 Psalms 19 69 29 Psalms 19 68 30 Psalms 19 69 30 Psalms 19 68 31 Psalms 19 69 31 Psalms 19 68 32 Psalms 19 69 32 Psalms 19 68 33 Psalms 19 69 33 Psalms 19 68 34 Psalms 19 69 34 Psalms 19 68 35 Psalms 19 69 35 Psalms 19 68 36 Psalms 19 69 36 Psalms 19 68 37 Psalms 19 69 37 Psalms 19 69 1 Psalms 19 70 1 Psalms 19 69 2 Psalms 19 70 2 Psalms 19 69 3 Psalms 19 70 3 Psalms 19 69 4 Psalms 19 70 4 Psalms 19 69 5 Psalms 19 70 5 Psalms 19 69 6 Psalms 19 70 6 Psalms 19 70 1 Psalms 19 71 1 Psalms 19 70 2 Psalms 19 71 2 Psalms 19 70 3 Psalms 19 71 3 Psalms 19 70 4 Psalms 19 71 4 Psalms 19 70 5 Psalms 19 71 5 Psalms 19 70 6 Psalms 19 71 6 Psalms 19 70 7 Psalms 19 71 7 Psalms 19 70 8 Psalms 19 71 8 Psalms 19 70 9 Psalms 19 71 9 Psalms 19 70 10 Psalms 19 71 10 Psalms 19 70 11 Psalms 19 71 11 Psalms 19 70 12 Psalms 19 71 12 Psalms 19 70 13 Psalms 19 71 13 Psalms 19 70 14 Psalms 19 71 14 Psalms 19 70 15 Psalms 19 71 15 Psalms 19 70 16 Psalms 19 71 16 Psalms 19 70 17 Psalms 19 71 17 Psalms 19 70 18 Psalms 19 71 18 Psalms 19 70 19 Psalms 19 71 19 Psalms 19 70 20 Psalms 19 71 20 Psalms 19 70 21 Psalms 19 71 21 Psalms 19 70 22 Psalms 19 71 22 Psalms 19 70 23 Psalms 19 71 23 Psalms 19 70 24 Psalms 19 71 24 Psalms 19 71 1 Psalms 19 72 1 Psalms 19 71 2 Psalms 19 72 2 Psalms 19 71 3 Psalms 19 72 3 Psalms 19 71 4 Psalms 19 72 4 Psalms 19 71 5 Psalms 19 72 5 Psalms 19 71 6 Psalms 19 72 6 Psalms 19 71 7 Psalms 19 72 7 Psalms 19 71 8 Psalms 19 72 8 Psalms 19 71 9 Psalms 19 72 9 Psalms 19 71 10 Psalms 19 72 10 Psalms 19 71 11 Psalms 19 72 11 Psalms 19 71 12 Psalms 19 72 12 Psalms 19 71 13 Psalms 19 72 13 Psalms 19 71 14 Psalms 19 72 14 Psalms 19 71 15 Psalms 19 72 15 Psalms 19 71 16 Psalms 19 72 16 Psalms 19 71 17 Psalms 19 72 17 Psalms 19 71 18 Psalms 19 72 18 Psalms 19 71 19 Psalms 19 72 19 Psalms 19 71 20 Psalms 19 72 20 Psalms 19 72 1 Psalms 19 73 1 Psalms 19 72 2 Psalms 19 73 2 Psalms 19 72 3 Psalms 19 73 3 Psalms 19 72 4 Psalms 19 73 4 Psalms 19 72 5 Psalms 19 73 5 Psalms 19 72 6 Psalms 19 73 6 Psalms 19 72 7 Psalms 19 73 7 Psalms 19 72 8 Psalms 19 73 8 Psalms 19 72 9 Psalms 19 73 9 Psalms 19 72 10 Psalms 19 73 10 Psalms 19 72 11 Psalms 19 73 11 Psalms 19 72 12 Psalms 19 73 12 Psalms 19 72 13 Psalms 19 73 13 Psalms 19 72 14 Psalms 19 73 14 Psalms 19 72 15 Psalms 19 73 15 Psalms 19 72 16 Psalms 19 73 16 Psalms 19 72 17 Psalms 19 73 17 Psalms 19 72 18 Psalms 19 73 18 Psalms 19 72 19 Psalms 19 73 19 Psalms 19 72 20 Psalms 19 73 20 Psalms 19 72 21 Psalms 19 73 21 Psalms 19 72 22 Psalms 19 73 22 Psalms 19 72 23 Psalms 19 73 23 Psalms 19 72 24 Psalms 19 73 24 Psalms 19 72 25 Psalms 19 73 25 Psalms 19 72 26 Psalms 19 73 26 Psalms 19 72 27 Psalms 19 73 27 Psalms 19 72 28 Psalms 19 73 28 Psalms 19 73 1 Psalms 19 74 1 Psalms 19 73 2 Psalms 19 74 2 Psalms 19 73 3 Psalms 19 74 3 Psalms 19 73 4 Psalms 19 74 4 Psalms 19 73 5 Psalms 19 74 5 Psalms 19 73 6 Psalms 19 74 6 Psalms 19 73 7 Psalms 19 74 7 Psalms 19 73 8 Psalms 19 74 8 Psalms 19 73 9 Psalms 19 74 9 Psalms 19 73 10 Psalms 19 74 10 Psalms 19 73 11 Psalms 19 74 11 Psalms 19 73 12 Psalms 19 74 12 Psalms 19 73 13 Psalms 19 74 13 Psalms 19 73 14 Psalms 19 74 14 Psalms 19 73 15 Psalms 19 74 15 Psalms 19 73 16 Psalms 19 74 16 Psalms 19 73 17 Psalms 19 74 17 Psalms 19 73 18 Psalms 19 74 18 Psalms 19 73 19 Psalms 19 74 19 Psalms 19 73 20 Psalms 19 74 20 Psalms 19 73 21 Psalms 19 74 21 Psalms 19 73 22 Psalms 19 74 22 Psalms 19 73 23 Psalms 19 74 23 Psalms 19 74 1 Psalms 19 75 1 Psalms 19 74 2 Psalms 19 75 2 Psalms 19 74 3 Psalms 19 75 3 Psalms 19 74 4 Psalms 19 75 4 Psalms 19 74 5 Psalms 19 75 5 Psalms 19 74 6 Psalms 19 75 6 Psalms 19 74 7 Psalms 19 75 7 Psalms 19 74 8 Psalms 19 75 8 Psalms 19 74 9 Psalms 19 75 9 Psalms 19 74 10 Psalms 19 75 10 Psalms 19 74 11 Psalms 19 75 11 Psalms 19 75 1 Psalms 19 76 1 Psalms 19 75 2 Psalms 19 76 2 Psalms 19 75 3 Psalms 19 76 3 Psalms 19 75 4 Psalms 19 76 4 Psalms 19 75 5 Psalms 19 76 5 Psalms 19 75 6 Psalms 19 76 6 Psalms 19 75 7 Psalms 19 76 7 Psalms 19 75 8 Psalms 19 76 8 Psalms 19 75 9 Psalms 19 76 9 Psalms 19 75 10 Psalms 19 76 10 Psalms 19 75 11 Psalms 19 76 11 Psalms 19 75 12 Psalms 19 76 12 Psalms 19 75 13 Psalms 19 76 13 Psalms 19 76 1 Psalms 19 77 1 Psalms 19 76 2 Psalms 19 77 2 Psalms 19 76 3 Psalms 19 77 3 Psalms 19 76 4 Psalms 19 77 4 Psalms 19 76 5 Psalms 19 77 5 Psalms 19 76 6 Psalms 19 77 6 Psalms 19 76 7 Psalms 19 77 7 Psalms 19 76 8 Psalms 19 77 8 Psalms 19 76 9 Psalms 19 77 9 Psalms 19 76 10 Psalms 19 77 10 Psalms 19 76 11 Psalms 19 77 11 Psalms 19 76 12 Psalms 19 77 12 Psalms 19 76 13 Psalms 19 77 13 Psalms 19 76 14 Psalms 19 77 14 Psalms 19 76 15 Psalms 19 77 15 Psalms 19 76 16 Psalms 19 77 16 Psalms 19 76 17 Psalms 19 77 17 Psalms 19 76 18 Psalms 19 77 18 Psalms 19 76 19 Psalms 19 77 19 Psalms 19 76 20 Psalms 19 77 20 Psalms 19 76 21 Psalms 19 77 21 Psalms 19 77 1 Psalms 19 78 1 Psalms 19 77 2 Psalms 19 78 2 Psalms 19 77 3 Psalms 19 78 3 Psalms 19 77 4 Psalms 19 78 4 Psalms 19 77 5 Psalms 19 78 5 Psalms 19 77 6 Psalms 19 78 6 Psalms 19 77 7 Psalms 19 78 7 Psalms 19 77 8 Psalms 19 78 8 Psalms 19 77 9 Psalms 19 78 9 Psalms 19 77 10 Psalms 19 78 10 Psalms 19 77 11 Psalms 19 78 11 Psalms 19 77 12 Psalms 19 78 12 Psalms 19 77 13 Psalms 19 78 13 Psalms 19 77 14 Psalms 19 78 14 Psalms 19 77 15 Psalms 19 78 15 Psalms 19 77 16 Psalms 19 78 16 Psalms 19 77 17 Psalms 19 78 17 Psalms 19 77 18 Psalms 19 78 18 Psalms 19 77 19 Psalms 19 78 19 Psalms 19 77 20 Psalms 19 78 20 Psalms 19 77 21 Psalms 19 78 21 Psalms 19 77 22 Psalms 19 78 22 Psalms 19 77 23 Psalms 19 78 23 Psalms 19 77 24 Psalms 19 78 24 Psalms 19 77 25 Psalms 19 78 25 Psalms 19 77 26 Psalms 19 78 26 Psalms 19 77 27 Psalms 19 78 27 Psalms 19 77 28 Psalms 19 78 28 Psalms 19 77 29 Psalms 19 78 29 Psalms 19 77 30 Psalms 19 78 30 Psalms 19 77 31 Psalms 19 78 31 Psalms 19 77 32 Psalms 19 78 32 Psalms 19 77 33 Psalms 19 78 33 Psalms 19 77 34 Psalms 19 78 34 Psalms 19 77 35 Psalms 19 78 35 Psalms 19 77 36 Psalms 19 78 36 Psalms 19 77 37 Psalms 19 78 37 Psalms 19 77 38 Psalms 19 78 38 Psalms 19 77 39 Psalms 19 78 39 Psalms 19 77 40 Psalms 19 78 40 Psalms 19 77 41 Psalms 19 78 41 Psalms 19 77 42 Psalms 19 78 42 Psalms 19 77 43 Psalms 19 78 43 Psalms 19 77 44 Psalms 19 78 44 Psalms 19 77 45 Psalms 19 78 45 Psalms 19 77 46 Psalms 19 78 46 Psalms 19 77 47 Psalms 19 78 47 Psalms 19 77 48 Psalms 19 78 48 Psalms 19 77 49 Psalms 19 78 49 Psalms 19 77 50 Psalms 19 78 50 Psalms 19 77 51 Psalms 19 78 51 Psalms 19 77 52 Psalms 19 78 52 Psalms 19 77 53 Psalms 19 78 53 Psalms 19 77 54 Psalms 19 78 54 Psalms 19 77 55 Psalms 19 78 55 Psalms 19 77 56 Psalms 19 78 56 Psalms 19 77 57 Psalms 19 78 57 Psalms 19 77 58 Psalms 19 78 58 Psalms 19 77 59 Psalms 19 78 59 Psalms 19 77 60 Psalms 19 78 60 Psalms 19 77 61 Psalms 19 78 61 Psalms 19 77 62 Psalms 19 78 62 Psalms 19 77 63 Psalms 19 78 63 Psalms 19 77 64 Psalms 19 78 64 Psalms 19 77 65 Psalms 19 78 65 Psalms 19 77 66 Psalms 19 78 66 Psalms 19 77 67 Psalms 19 78 67 Psalms 19 77 68 Psalms 19 78 68 Psalms 19 77 69 Psalms 19 78 69 Psalms 19 77 70 Psalms 19 78 70 Psalms 19 77 71 Psalms 19 78 71 Psalms 19 77 72 Psalms 19 78 72 Psalms 19 78 1 Psalms 19 79 1 Psalms 19 78 2 Psalms 19 79 2 Psalms 19 78 3 Psalms 19 79 3 Psalms 19 78 4 Psalms 19 79 4 Psalms 19 78 5 Psalms 19 79 5 Psalms 19 78 6 Psalms 19 79 6 Psalms 19 78 7 Psalms 19 79 7 Psalms 19 78 8 Psalms 19 79 8 Psalms 19 78 9 Psalms 19 79 9 Psalms 19 78 10 Psalms 19 79 10 Psalms 19 78 11 Psalms 19 79 11 Psalms 19 78 12 Psalms 19 79 12 Psalms 19 78 13 Psalms 19 79 13 Psalms 19 79 1 Psalms 19 80 1 Psalms 19 79 2 Psalms 19 80 2 Psalms 19 79 3 Psalms 19 80 3 Psalms 19 79 4 Psalms 19 80 4 Psalms 19 79 5 Psalms 19 80 5 Psalms 19 79 6 Psalms 19 80 6 Psalms 19 79 7 Psalms 19 80 7 Psalms 19 79 8 Psalms 19 80 8 Psalms 19 79 9 Psalms 19 80 9 Psalms 19 79 10 Psalms 19 80 10 Psalms 19 79 11 Psalms 19 80 11 Psalms 19 79 12 Psalms 19 80 12 Psalms 19 79 13 Psalms 19 80 13 Psalms 19 79 14 Psalms 19 80 14 Psalms 19 79 15 Psalms 19 80 15 Psalms 19 79 16 Psalms 19 80 16 Psalms 19 79 17 Psalms 19 80 17 Psalms 19 79 18 Psalms 19 80 18 Psalms 19 79 19 Psalms 19 80 19 Psalms 19 79 20 Psalms 19 80 20 Psalms 19 80 1 Psalms 19 81 1 Psalms 19 80 2 Psalms 19 81 2 Psalms 19 80 3 Psalms 19 81 3 Psalms 19 80 4 Psalms 19 81 4 Psalms 19 80 5 Psalms 19 81 5 Psalms 19 80 6 Psalms 19 81 6 Psalms 19 80 7 Psalms 19 81 7 Psalms 19 80 8 Psalms 19 81 8 Psalms 19 80 9 Psalms 19 81 9 Psalms 19 80 10 Psalms 19 81 10 Psalms 19 80 11 Psalms 19 81 11 Psalms 19 80 12 Psalms 19 81 12 Psalms 19 80 13 Psalms 19 81 13 Psalms 19 80 14 Psalms 19 81 14 Psalms 19 80 15 Psalms 19 81 15 Psalms 19 80 16 Psalms 19 81 16 Psalms 19 80 17 Psalms 19 81 17 Psalms 19 81 1 Psalms 19 82 1 Psalms 19 81 2 Psalms 19 82 2 Psalms 19 81 3 Psalms 19 82 3 Psalms 19 81 4 Psalms 19 82 4 Psalms 19 81 5 Psalms 19 82 5 Psalms 19 81 6 Psalms 19 82 6 Psalms 19 81 7 Psalms 19 82 7 Psalms 19 81 8 Psalms 19 82 8 Psalms 19 82 1 Psalms 19 83 1 Psalms 19 82 2 Psalms 19 83 2 Psalms 19 82 3 Psalms 19 83 3 Psalms 19 82 4 Psalms 19 83 4 Psalms 19 82 5 Psalms 19 83 5 Psalms 19 82 6 Psalms 19 83 6 Psalms 19 82 7 Psalms 19 83 7 Psalms 19 82 8 Psalms 19 83 8 Psalms 19 82 9 Psalms 19 83 9 Psalms 19 82 10 Psalms 19 83 10 Psalms 19 82 11 Psalms 19 83 11 Psalms 19 82 12 Psalms 19 83 12 Psalms 19 82 13 Psalms 19 83 13 Psalms 19 82 14 Psalms 19 83 14 Psalms 19 82 15 Psalms 19 83 15 Psalms 19 82 16 Psalms 19 83 16 Psalms 19 82 17 Psalms 19 83 17 Psalms 19 82 18 Psalms 19 83 18 Psalms 19 82 19 Psalms 19 83 19 Psalms 19 83 1 Psalms 19 84 1 Psalms 19 83 2 Psalms 19 84 2 Psalms 19 83 3 Psalms 19 84 3 Psalms 19 83 4 Psalms 19 84 4 Psalms 19 83 5 Psalms 19 84 5 Psalms 19 83 6 Psalms 19 84 6 Psalms 19 83 7 Psalms 19 84 7 Psalms 19 83 8 Psalms 19 84 8 Psalms 19 83 9 Psalms 19 84 9 Psalms 19 83 10 Psalms 19 84 10 Psalms 19 83 11 Psalms 19 84 11 Psalms 19 83 12 Psalms 19 84 12 Psalms 19 83 13 Psalms 19 84 13 Psalms 19 84 1 Psalms 19 85 1 Psalms 19 84 2 Psalms 19 85 2 Psalms 19 84 3 Psalms 19 85 3 Psalms 19 84 4 Psalms 19 85 4 Psalms 19 84 5 Psalms 19 85 5 Psalms 19 84 6 Psalms 19 85 6 Psalms 19 84 7 Psalms 19 85 7 Psalms 19 84 8 Psalms 19 85 8 Psalms 19 84 9 Psalms 19 85 9 Psalms 19 84 10 Psalms 19 85 10 Psalms 19 84 11 Psalms 19 85 11 Psalms 19 84 12 Psalms 19 85 12 Psalms 19 84 13 Psalms 19 85 13 Psalms 19 84 14 Psalms 19 85 14 Psalms 19 85 1 Psalms 19 86 1 Psalms 19 85 2 Psalms 19 86 2 Psalms 19 85 3 Psalms 19 86 3 Psalms 19 85 4 Psalms 19 86 4 Psalms 19 85 5 Psalms 19 86 5 Psalms 19 85 6 Psalms 19 86 6 Psalms 19 85 7 Psalms 19 86 7 Psalms 19 85 8 Psalms 19 86 8 Psalms 19 85 9 Psalms 19 86 9 Psalms 19 85 10 Psalms 19 86 10 Psalms 19 85 11 Psalms 19 86 11 Psalms 19 85 12 Psalms 19 86 12 Psalms 19 85 13 Psalms 19 86 13 Psalms 19 85 14 Psalms 19 86 14 Psalms 19 85 15 Psalms 19 86 15 Psalms 19 85 16 Psalms 19 86 16 Psalms 19 85 17 Psalms 19 86 17 Psalms 19 86 1 Psalms 19 87 1 Psalms 19 86 2 Psalms 19 87 2 Psalms 19 86 3 Psalms 19 87 3 Psalms 19 86 4 Psalms 19 87 4 Psalms 19 86 5 Psalms 19 87 5 Psalms 19 86 6 Psalms 19 87 6 Psalms 19 86 7 Psalms 19 87 7 Psalms 19 87 1 Psalms 19 88 1 Psalms 19 87 2 Psalms 19 88 2 Psalms 19 87 3 Psalms 19 88 3 Psalms 19 87 4 Psalms 19 88 4 Psalms 19 87 5 Psalms 19 88 5 Psalms 19 87 6 Psalms 19 88 6 Psalms 19 87 7 Psalms 19 88 7 Psalms 19 87 8 Psalms 19 88 8 Psalms 19 87 9 Psalms 19 88 9 Psalms 19 87 10 Psalms 19 88 10 Psalms 19 87 11 Psalms 19 88 11 Psalms 19 87 12 Psalms 19 88 12 Psalms 19 87 13 Psalms 19 88 13 Psalms 19 87 14 Psalms 19 88 14 Psalms 19 87 15 Psalms 19 88 15 Psalms 19 87 16 Psalms 19 88 16 Psalms 19 87 17 Psalms 19 88 17 Psalms 19 87 18 Psalms 19 88 18 Psalms 19 87 19 Psalms 19 88 19 Psalms 19 88 1 Psalms 19 89 1 Psalms 19 88 2 Psalms 19 89 2 Psalms 19 88 3 Psalms 19 89 3 Psalms 19 88 4 Psalms 19 89 4 Psalms 19 88 5 Psalms 19 89 5 Psalms 19 88 6 Psalms 19 89 6 Psalms 19 88 7 Psalms 19 89 7 Psalms 19 88 8 Psalms 19 89 8 Psalms 19 88 9 Psalms 19 89 9 Psalms 19 88 10 Psalms 19 89 10 Psalms 19 88 11 Psalms 19 89 11 Psalms 19 88 12 Psalms 19 89 12 Psalms 19 88 13 Psalms 19 89 13 Psalms 19 88 14 Psalms 19 89 14 Psalms 19 88 15 Psalms 19 89 15 Psalms 19 88 16 Psalms 19 89 16 Psalms 19 88 17 Psalms 19 89 17 Psalms 19 88 18 Psalms 19 89 18 Psalms 19 88 19 Psalms 19 89 19 Psalms 19 88 20 Psalms 19 89 20 Psalms 19 88 21 Psalms 19 89 21 Psalms 19 88 22 Psalms 19 89 22 Psalms 19 88 23 Psalms 19 89 23 Psalms 19 88 24 Psalms 19 89 24 Psalms 19 88 25 Psalms 19 89 25 Psalms 19 88 26 Psalms 19 89 26 Psalms 19 88 27 Psalms 19 89 27 Psalms 19 88 28 Psalms 19 89 28 Psalms 19 88 29 Psalms 19 89 29 Psalms 19 88 30 Psalms 19 89 30 Psalms 19 88 31 Psalms 19 89 31 Psalms 19 88 32 Psalms 19 89 32 Psalms 19 88 33 Psalms 19 89 33 Psalms 19 88 34 Psalms 19 89 34 Psalms 19 88 35 Psalms 19 89 35 Psalms 19 88 36 Psalms 19 89 36 Psalms 19 88 37 Psalms 19 89 37 Psalms 19 88 38 Psalms 19 89 38 Psalms 19 88 39 Psalms 19 89 39 Psalms 19 88 40 Psalms 19 89 40 Psalms 19 88 41 Psalms 19 89 41 Psalms 19 88 42 Psalms 19 89 42 Psalms 19 88 43 Psalms 19 89 43 Psalms 19 88 44 Psalms 19 89 44 Psalms 19 88 45 Psalms 19 89 45 Psalms 19 88 46 Psalms 19 89 46 Psalms 19 88 47 Psalms 19 89 47 Psalms 19 88 48 Psalms 19 89 48 Psalms 19 88 49 Psalms 19 89 49 Psalms 19 88 50 Psalms 19 89 50 Psalms 19 88 51 Psalms 19 89 51 Psalms 19 88 52 Psalms 19 89 52 Psalms 19 88 53 Psalms 19 89 53 Psalms 19 89 1 Psalms 19 90 1 Psalms 19 89 2 Psalms 19 90 2 Psalms 19 89 3 Psalms 19 90 3 Psalms 19 89 4 Psalms 19 90 4 Psalms 19 89 5 Psalms 19 90 5 Psalms 19 89 6 Psalms 19 90 6 Psalms 19 89 7 Psalms 19 90 7 Psalms 19 89 8 Psalms 19 90 8 Psalms 19 89 9 Psalms 19 90 9 Psalms 19 89 10 Psalms 19 90 10 Psalms 19 89 11 Psalms 19 90 11 Psalms 19 89 12 Psalms 19 90 12 Psalms 19 89 13 Psalms 19 90 13 Psalms 19 89 14 Psalms 19 90 14 Psalms 19 89 15 Psalms 19 90 15 Psalms 19 89 16 Psalms 19 90 16 Psalms 19 89 17 Psalms 19 90 17 Psalms 19 90 1 Psalms 19 91 1 Psalms 19 90 2 Psalms 19 91 2 Psalms 19 90 3 Psalms 19 91 3 Psalms 19 90 4 Psalms 19 91 4 Psalms 19 90 5 Psalms 19 91 5 Psalms 19 90 6 Psalms 19 91 6 Psalms 19 90 7 Psalms 19 91 7 Psalms 19 90 8 Psalms 19 91 8 Psalms 19 90 9 Psalms 19 91 9 Psalms 19 90 10 Psalms 19 91 10 Psalms 19 90 11 Psalms 19 91 11 Psalms 19 90 12 Psalms 19 91 12 Psalms 19 90 13 Psalms 19 91 13 Psalms 19 90 14 Psalms 19 91 14 Psalms 19 90 15 Psalms 19 91 15 Psalms 19 90 16 Psalms 19 91 16 Psalms 19 91 1 Psalms 19 92 1 Psalms 19 91 2 Psalms 19 92 2 Psalms 19 91 3 Psalms 19 92 3 Psalms 19 91 4 Psalms 19 92 4 Psalms 19 91 5 Psalms 19 92 5 Psalms 19 91 6 Psalms 19 92 6 Psalms 19 91 7 Psalms 19 92 7 Psalms 19 91 8 Psalms 19 92 8 Psalms 19 91 9 Psalms 19 92 9 Psalms 19 91 10 Psalms 19 92 10 Psalms 19 91 11 Psalms 19 92 11 Psalms 19 91 12 Psalms 19 92 12 Psalms 19 91 13 Psalms 19 92 13 Psalms 19 91 14 Psalms 19 92 14 Psalms 19 91 15 Psalms 19 92 15 Psalms 19 91 16 Psalms 19 92 16 Psalms 19 92 1 Psalms 19 93 1 Psalms 19 92 2 Psalms 19 93 2 Psalms 19 92 3 Psalms 19 93 3 Psalms 19 92 4 Psalms 19 93 4 Psalms 19 92 5 Psalms 19 93 5 Psalms 19 93 1 Psalms 19 94 1 Psalms 19 93 2 Psalms 19 94 2 Psalms 19 93 3 Psalms 19 94 3 Psalms 19 93 4 Psalms 19 94 4 Psalms 19 93 5 Psalms 19 94 5 Psalms 19 93 6 Psalms 19 94 6 Psalms 19 93 7 Psalms 19 94 7 Psalms 19 93 8 Psalms 19 94 8 Psalms 19 93 9 Psalms 19 94 9 Psalms 19 93 10 Psalms 19 94 10 Psalms 19 93 11 Psalms 19 94 11 Psalms 19 93 12 Psalms 19 94 12 Psalms 19 93 13 Psalms 19 94 13 Psalms 19 93 14 Psalms 19 94 14 Psalms 19 93 15 Psalms 19 94 15 Psalms 19 93 16 Psalms 19 94 16 Psalms 19 93 17 Psalms 19 94 17 Psalms 19 93 18 Psalms 19 94 18 Psalms 19 93 19 Psalms 19 94 19 Psalms 19 93 20 Psalms 19 94 20 Psalms 19 93 21 Psalms 19 94 21 Psalms 19 93 22 Psalms 19 94 22 Psalms 19 93 23 Psalms 19 94 23 Psalms 19 94 1 Psalms 19 95 1 Psalms 19 94 2 Psalms 19 95 2 Psalms 19 94 3 Psalms 19 95 3 Psalms 19 94 4 Psalms 19 95 4 Psalms 19 94 5 Psalms 19 95 5 Psalms 19 94 6 Psalms 19 95 6 Psalms 19 94 7 Psalms 19 95 7 Psalms 19 94 8 Psalms 19 95 8 Psalms 19 94 9 Psalms 19 95 9 Psalms 19 94 10 Psalms 19 95 10 Psalms 19 94 11 Psalms 19 95 11 Psalms 19 95 1 Psalms 19 96 1 Psalms 19 95 2 Psalms 19 96 2 Psalms 19 95 3 Psalms 19 96 3 Psalms 19 95 4 Psalms 19 96 4 Psalms 19 95 5 Psalms 19 96 5 Psalms 19 95 6 Psalms 19 96 6 Psalms 19 95 7 Psalms 19 96 7 Psalms 19 95 8 Psalms 19 96 8 Psalms 19 95 9 Psalms 19 96 9 Psalms 19 95 10 Psalms 19 96 10 Psalms 19 95 11 Psalms 19 96 11 Psalms 19 95 12 Psalms 19 96 12 Psalms 19 95 13 Psalms 19 96 13 Psalms 19 96 1 Psalms 19 97 1 Psalms 19 96 2 Psalms 19 97 2 Psalms 19 96 3 Psalms 19 97 3 Psalms 19 96 4 Psalms 19 97 4 Psalms 19 96 5 Psalms 19 97 5 Psalms 19 96 6 Psalms 19 97 6 Psalms 19 96 7 Psalms 19 97 7 Psalms 19 96 8 Psalms 19 97 8 Psalms 19 96 9 Psalms 19 97 9 Psalms 19 96 10 Psalms 19 97 10 Psalms 19 96 11 Psalms 19 97 11 Psalms 19 96 12 Psalms 19 97 12 Psalms 19 97 1 Psalms 19 98 1 Psalms 19 97 2 Psalms 19 98 2 Psalms 19 97 3 Psalms 19 98 3 Psalms 19 97 4 Psalms 19 98 4 Psalms 19 97 5 Psalms 19 98 5 Psalms 19 97 6 Psalms 19 98 6 Psalms 19 97 7 Psalms 19 98 7 Psalms 19 97 8 Psalms 19 98 8 Psalms 19 97 9 Psalms 19 98 9 Psalms 19 98 1 Psalms 19 99 1 Psalms 19 98 2 Psalms 19 99 2 Psalms 19 98 3 Psalms 19 99 3 Psalms 19 98 4 Psalms 19 99 4 Psalms 19 98 5 Psalms 19 99 5 Psalms 19 98 6 Psalms 19 99 6 Psalms 19 98 7 Psalms 19 99 7 Psalms 19 98 8 Psalms 19 99 8 Psalms 19 98 9 Psalms 19 99 9 Psalms 19 99 1 Psalms 19 100 1 Psalms 19 99 2 Psalms 19 100 2 Psalms 19 99 3 Psalms 19 100 3 Psalms 19 99 4 Psalms 19 100 4 Psalms 19 99 5 Psalms 19 100 5 Psalms 19 100 1 Psalms 19 101 1 Psalms 19 100 2 Psalms 19 101 2 Psalms 19 100 3 Psalms 19 101 3 Psalms 19 100 4 Psalms 19 101 4 Psalms 19 100 5 Psalms 19 101 5 Psalms 19 100 6 Psalms 19 101 6 Psalms 19 100 7 Psalms 19 101 7 Psalms 19 100 8 Psalms 19 101 8 Psalms 19 101 1 Psalms 19 102 1 Psalms 19 101 2 Psalms 19 102 2 Psalms 19 101 3 Psalms 19 102 3 Psalms 19 101 4 Psalms 19 102 4 Psalms 19 101 5 Psalms 19 102 5 Psalms 19 101 6 Psalms 19 102 6 Psalms 19 101 7 Psalms 19 102 7 Psalms 19 101 8 Psalms 19 102 8 Psalms 19 101 9 Psalms 19 102 9 Psalms 19 101 10 Psalms 19 102 10 Psalms 19 101 11 Psalms 19 102 11 Psalms 19 101 12 Psalms 19 102 12 Psalms 19 101 13 Psalms 19 102 13 Psalms 19 101 14 Psalms 19 102 14 Psalms 19 101 15 Psalms 19 102 15 Psalms 19 101 16 Psalms 19 102 16 Psalms 19 101 17 Psalms 19 102 17 Psalms 19 101 18 Psalms 19 102 18 Psalms 19 101 19 Psalms 19 102 19 Psalms 19 101 20 Psalms 19 102 20 Psalms 19 101 21 Psalms 19 102 21 Psalms 19 101 22 Psalms 19 102 22 Psalms 19 101 23 Psalms 19 102 23 Psalms 19 101 24 Psalms 19 102 24 Psalms 19 101 25 Psalms 19 102 25 Psalms 19 101 26 Psalms 19 102 26 Psalms 19 101 27 Psalms 19 102 27 Psalms 19 101 28 Psalms 19 102 28 Psalms 19 101 29 Psalms 19 102 29 Psalms 19 102 1 Psalms 19 103 1 Psalms 19 102 2 Psalms 19 103 2 Psalms 19 102 3 Psalms 19 103 3 Psalms 19 102 4 Psalms 19 103 4 Psalms 19 102 5 Psalms 19 103 5 Psalms 19 102 6 Psalms 19 103 6 Psalms 19 102 7 Psalms 19 103 7 Psalms 19 102 8 Psalms 19 103 8 Psalms 19 102 9 Psalms 19 103 9 Psalms 19 102 10 Psalms 19 103 10 Psalms 19 102 11 Psalms 19 103 11 Psalms 19 102 12 Psalms 19 103 12 Psalms 19 102 13 Psalms 19 103 13 Psalms 19 102 14 Psalms 19 103 14 Psalms 19 102 15 Psalms 19 103 15 Psalms 19 102 16 Psalms 19 103 16 Psalms 19 102 17 Psalms 19 103 17 Psalms 19 102 18 Psalms 19 103 18 Psalms 19 102 19 Psalms 19 103 19 Psalms 19 102 20 Psalms 19 103 20 Psalms 19 102 21 Psalms 19 103 21 Psalms 19 102 22 Psalms 19 103 22 Psalms 19 103 1 Psalms 19 104 1 Psalms 19 103 2 Psalms 19 104 2 Psalms 19 103 3 Psalms 19 104 3 Psalms 19 103 4 Psalms 19 104 4 Psalms 19 103 5 Psalms 19 104 5 Psalms 19 103 6 Psalms 19 104 6 Psalms 19 103 7 Psalms 19 104 7 Psalms 19 103 8 Psalms 19 104 8 Psalms 19 103 9 Psalms 19 104 9 Psalms 19 103 10 Psalms 19 104 10 Psalms 19 103 11 Psalms 19 104 11 Psalms 19 103 12 Psalms 19 104 12 Psalms 19 103 13 Psalms 19 104 13 Psalms 19 103 14 Psalms 19 104 14 Psalms 19 103 15 Psalms 19 104 15 Psalms 19 103 16 Psalms 19 104 16 Psalms 19 103 17 Psalms 19 104 17 Psalms 19 103 18 Psalms 19 104 18 Psalms 19 103 19 Psalms 19 104 19 Psalms 19 103 20 Psalms 19 104 20 Psalms 19 103 21 Psalms 19 104 21 Psalms 19 103 22 Psalms 19 104 22 Psalms 19 103 23 Psalms 19 104 23 Psalms 19 103 24 Psalms 19 104 24 Psalms 19 103 25 Psalms 19 104 25 Psalms 19 103 26 Psalms 19 104 26 Psalms 19 103 27 Psalms 19 104 27 Psalms 19 103 28 Psalms 19 104 28 Psalms 19 103 29 Psalms 19 104 29 Psalms 19 103 30 Psalms 19 104 30 Psalms 19 103 31 Psalms 19 104 31 Psalms 19 103 32 Psalms 19 104 32 Psalms 19 103 33 Psalms 19 104 33 Psalms 19 103 34 Psalms 19 104 34 Psalms 19 103 35 Psalms 19 104 35 Psalms 19 104 1 Psalms 19 105 1 Psalms 19 104 2 Psalms 19 105 2 Psalms 19 104 3 Psalms 19 105 3 Psalms 19 104 4 Psalms 19 105 4 Psalms 19 104 5 Psalms 19 105 5 Psalms 19 104 6 Psalms 19 105 6 Psalms 19 104 7 Psalms 19 105 7 Psalms 19 104 8 Psalms 19 105 8 Psalms 19 104 9 Psalms 19 105 9 Psalms 19 104 10 Psalms 19 105 10 Psalms 19 104 11 Psalms 19 105 11 Psalms 19 104 12 Psalms 19 105 12 Psalms 19 104 13 Psalms 19 105 13 Psalms 19 104 14 Psalms 19 105 14 Psalms 19 104 15 Psalms 19 105 15 Psalms 19 104 16 Psalms 19 105 16 Psalms 19 104 17 Psalms 19 105 17 Psalms 19 104 18 Psalms 19 105 18 Psalms 19 104 19 Psalms 19 105 19 Psalms 19 104 20 Psalms 19 105 20 Psalms 19 104 21 Psalms 19 105 21 Psalms 19 104 22 Psalms 19 105 22 Psalms 19 104 23 Psalms 19 105 23 Psalms 19 104 24 Psalms 19 105 24 Psalms 19 104 25 Psalms 19 105 25 Psalms 19 104 26 Psalms 19 105 26 Psalms 19 104 27 Psalms 19 105 27 Psalms 19 104 28 Psalms 19 105 28 Psalms 19 104 29 Psalms 19 105 29 Psalms 19 104 30 Psalms 19 105 30 Psalms 19 104 31 Psalms 19 105 31 Psalms 19 104 32 Psalms 19 105 32 Psalms 19 104 33 Psalms 19 105 33 Psalms 19 104 34 Psalms 19 105 34 Psalms 19 104 35 Psalms 19 105 35 Psalms 19 104 36 Psalms 19 105 36 Psalms 19 104 37 Psalms 19 105 37 Psalms 19 104 38 Psalms 19 105 38 Psalms 19 104 39 Psalms 19 105 39 Psalms 19 104 40 Psalms 19 105 40 Psalms 19 104 41 Psalms 19 105 41 Psalms 19 104 42 Psalms 19 105 42 Psalms 19 104 43 Psalms 19 105 43 Psalms 19 104 44 Psalms 19 105 44 Psalms 19 104 45 Psalms 19 105 45 Psalms 19 105 1 Psalms 19 106 1 Psalms 19 105 2 Psalms 19 106 2 Psalms 19 105 3 Psalms 19 106 3 Psalms 19 105 4 Psalms 19 106 4 Psalms 19 105 5 Psalms 19 106 5 Psalms 19 105 6 Psalms 19 106 6 Psalms 19 105 7 Psalms 19 106 7 Psalms 19 105 8 Psalms 19 106 8 Psalms 19 105 9 Psalms 19 106 9 Psalms 19 105 10 Psalms 19 106 10 Psalms 19 105 11 Psalms 19 106 11 Psalms 19 105 12 Psalms 19 106 12 Psalms 19 105 13 Psalms 19 106 13 Psalms 19 105 14 Psalms 19 106 14 Psalms 19 105 15 Psalms 19 106 15 Psalms 19 105 16 Psalms 19 106 16 Psalms 19 105 17 Psalms 19 106 17 Psalms 19 105 18 Psalms 19 106 18 Psalms 19 105 19 Psalms 19 106 19 Psalms 19 105 20 Psalms 19 106 20 Psalms 19 105 21 Psalms 19 106 21 Psalms 19 105 22 Psalms 19 106 22 Psalms 19 105 23 Psalms 19 106 23 Psalms 19 105 24 Psalms 19 106 24 Psalms 19 105 25 Psalms 19 106 25 Psalms 19 105 26 Psalms 19 106 26 Psalms 19 105 27 Psalms 19 106 27 Psalms 19 105 28 Psalms 19 106 28 Psalms 19 105 29 Psalms 19 106 29 Psalms 19 105 30 Psalms 19 106 30 Psalms 19 105 31 Psalms 19 106 31 Psalms 19 105 32 Psalms 19 106 32 Psalms 19 105 33 Psalms 19 106 33 Psalms 19 105 34 Psalms 19 106 34 Psalms 19 105 35 Psalms 19 106 35 Psalms 19 105 36 Psalms 19 106 36 Psalms 19 105 37 Psalms 19 106 37 Psalms 19 105 38 Psalms 19 106 38 Psalms 19 105 39 Psalms 19 106 39 Psalms 19 105 40 Psalms 19 106 40 Psalms 19 105 41 Psalms 19 106 41 Psalms 19 105 42 Psalms 19 106 42 Psalms 19 105 43 Psalms 19 106 43 Psalms 19 105 44 Psalms 19 106 44 Psalms 19 105 45 Psalms 19 106 45 Psalms 19 105 46 Psalms 19 106 46 Psalms 19 105 47 Psalms 19 106 47 Psalms 19 105 48 Psalms 19 106 48 Psalms 19 106 1 Psalms 19 107 1 Psalms 19 106 2 Psalms 19 107 2 Psalms 19 106 3 Psalms 19 107 3 Psalms 19 106 4 Psalms 19 107 4 Psalms 19 106 5 Psalms 19 107 5 Psalms 19 106 6 Psalms 19 107 6 Psalms 19 106 7 Psalms 19 107 7 Psalms 19 106 8 Psalms 19 107 8 Psalms 19 106 9 Psalms 19 107 9 Psalms 19 106 10 Psalms 19 107 10 Psalms 19 106 11 Psalms 19 107 11 Psalms 19 106 12 Psalms 19 107 12 Psalms 19 106 13 Psalms 19 107 13 Psalms 19 106 14 Psalms 19 107 14 Psalms 19 106 15 Psalms 19 107 15 Psalms 19 106 16 Psalms 19 107 16 Psalms 19 106 17 Psalms 19 107 17 Psalms 19 106 18 Psalms 19 107 18 Psalms 19 106 19 Psalms 19 107 19 Psalms 19 106 20 Psalms 19 107 20 Psalms 19 106 21 Psalms 19 107 21 Psalms 19 106 22 Psalms 19 107 22 Psalms 19 106 23 Psalms 19 107 23 Psalms 19 106 24 Psalms 19 107 24 Psalms 19 106 25 Psalms 19 107 25 Psalms 19 106 26 Psalms 19 107 26 Psalms 19 106 27 Psalms 19 107 27 Psalms 19 106 28 Psalms 19 107 28 Psalms 19 106 29 Psalms 19 107 29 Psalms 19 106 30 Psalms 19 107 30 Psalms 19 106 31 Psalms 19 107 31 Psalms 19 106 32 Psalms 19 107 32 Psalms 19 106 33 Psalms 19 107 33 Psalms 19 106 34 Psalms 19 107 34 Psalms 19 106 35 Psalms 19 107 35 Psalms 19 106 36 Psalms 19 107 36 Psalms 19 106 37 Psalms 19 107 37 Psalms 19 106 38 Psalms 19 107 38 Psalms 19 106 39 Psalms 19 107 39 Psalms 19 106 40 Psalms 19 107 40 Psalms 19 106 41 Psalms 19 107 41 Psalms 19 106 42 Psalms 19 107 42 Psalms 19 106 43 Psalms 19 107 43 Psalms 19 107 1 Psalms 19 108 1 Psalms 19 107 2 Psalms 19 108 2 Psalms 19 107 3 Psalms 19 108 3 Psalms 19 107 4 Psalms 19 108 4 Psalms 19 107 5 Psalms 19 108 5 Psalms 19 107 6 Psalms 19 108 6 Psalms 19 107 7 Psalms 19 108 7 Psalms 19 107 8 Psalms 19 108 8 Psalms 19 107 9 Psalms 19 108 9 Psalms 19 107 10 Psalms 19 108 10 Psalms 19 107 11 Psalms 19 108 11 Psalms 19 107 12 Psalms 19 108 12 Psalms 19 107 13 Psalms 19 108 13 Psalms 19 107 14 Psalms 19 108 14 Psalms 19 108 1 Psalms 19 109 1 Psalms 19 108 2 Psalms 19 109 2 Psalms 19 108 3 Psalms 19 109 3 Psalms 19 108 4 Psalms 19 109 4 Psalms 19 108 5 Psalms 19 109 5 Psalms 19 108 6 Psalms 19 109 6 Psalms 19 108 7 Psalms 19 109 7 Psalms 19 108 8 Psalms 19 109 8 Psalms 19 108 9 Psalms 19 109 9 Psalms 19 108 10 Psalms 19 109 10 Psalms 19 108 11 Psalms 19 109 11 Psalms 19 108 12 Psalms 19 109 12 Psalms 19 108 13 Psalms 19 109 13 Psalms 19 108 14 Psalms 19 109 14 Psalms 19 108 15 Psalms 19 109 15 Psalms 19 108 16 Psalms 19 109 16 Psalms 19 108 17 Psalms 19 109 17 Psalms 19 108 18 Psalms 19 109 18 Psalms 19 108 19 Psalms 19 109 19 Psalms 19 108 20 Psalms 19 109 20 Psalms 19 108 21 Psalms 19 109 21 Psalms 19 108 22 Psalms 19 109 22 Psalms 19 108 23 Psalms 19 109 23 Psalms 19 108 24 Psalms 19 109 24 Psalms 19 108 25 Psalms 19 109 25 Psalms 19 108 26 Psalms 19 109 26 Psalms 19 108 27 Psalms 19 109 27 Psalms 19 108 28 Psalms 19 109 28 Psalms 19 108 29 Psalms 19 109 29 Psalms 19 108 30 Psalms 19 109 30 Psalms 19 108 31 Psalms 19 109 31 Psalms 19 109 1 Psalms 19 110 1 Psalms 19 109 2 Psalms 19 110 2 Psalms 19 109 3 Psalms 19 110 3 Psalms 19 109 4 Psalms 19 110 4 Psalms 19 109 5 Psalms 19 110 5 Psalms 19 109 6 Psalms 19 110 6 Psalms 19 109 7 Psalms 19 110 7 Psalms 19 110 1 Psalms 19 111 1 Psalms 19 110 2 Psalms 19 111 2 Psalms 19 110 3 Psalms 19 111 3 Psalms 19 110 4 Psalms 19 111 4 Psalms 19 110 5 Psalms 19 111 5 Psalms 19 110 6 Psalms 19 111 6 Psalms 19 110 7 Psalms 19 111 7 Psalms 19 110 8 Psalms 19 111 8 Psalms 19 110 9 Psalms 19 111 9 Psalms 19 110 10 Psalms 19 111 10 Psalms 19 111 1 Psalms 19 112 1 Psalms 19 111 2 Psalms 19 112 2 Psalms 19 111 3 Psalms 19 112 3 Psalms 19 111 4 Psalms 19 112 4 Psalms 19 111 5 Psalms 19 112 5 Psalms 19 111 6 Psalms 19 112 6 Psalms 19 111 7 Psalms 19 112 7 Psalms 19 111 8 Psalms 19 112 8 Psalms 19 111 9 Psalms 19 112 9 Psalms 19 111 10 Psalms 19 112 10 Psalms 19 112 1 Psalms 19 113 1 Psalms 19 112 2 Psalms 19 113 2 Psalms 19 112 3 Psalms 19 113 3 Psalms 19 112 4 Psalms 19 113 4 Psalms 19 112 5 Psalms 19 113 5 Psalms 19 112 6 Psalms 19 113 6 Psalms 19 112 7 Psalms 19 113 7 Psalms 19 112 8 Psalms 19 113 8 Psalms 19 112 9 Psalms 19 113 9 Psalms 19 113 1 Psalms 19 114 1 Psalms 19 113 2 Psalms 19 114 2 Psalms 19 113 3 Psalms 19 114 3 Psalms 19 113 4 Psalms 19 114 4 Psalms 19 113 5 Psalms 19 114 5 Psalms 19 113 6 Psalms 19 114 6 Psalms 19 113 7 Psalms 19 114 7 Psalms 19 113 8 Psalms 19 114 8 Psalms 19 113 9 Psalms 19 115 1 Psalms 19 113 10 Psalms 19 115 2 Psalms 19 113 11 Psalms 19 115 3 Psalms 19 113 12 Psalms 19 115 4 Psalms 19 113 13 Psalms 19 115 5 Psalms 19 113 14 Psalms 19 115 6 Psalms 19 113 15 Psalms 19 115 7 Psalms 19 113 16 Psalms 19 115 8 Psalms 19 113 17 Psalms 19 115 9 Psalms 19 113 18 Psalms 19 115 10 Psalms 19 113 19 Psalms 19 115 11 Psalms 19 113 20 Psalms 19 115 12 Psalms 19 113 21 Psalms 19 115 13 Psalms 19 113 22 Psalms 19 115 14 Psalms 19 113 23 Psalms 19 115 15 Psalms 19 113 24 Psalms 19 115 16 Psalms 19 113 25 Psalms 19 115 17 Psalms 19 113 26 Psalms 19 115 18 Psalms 19 114 1 Psalms 19 116 1 Psalms 19 114 2 Psalms 19 116 2 Psalms 19 114 3 Psalms 19 116 3 Psalms 19 114 4 Psalms 19 116 4 Psalms 19 114 5 Psalms 19 116 5 Psalms 19 114 6 Psalms 19 116 6 Psalms 19 114 7 Psalms 19 116 7 Psalms 19 114 8 Psalms 19 116 8 Psalms 19 114 9 Psalms 19 116 9 Psalms 19 115 10 Psalms 19 116 10 Psalms 19 115 11 Psalms 19 116 11 Psalms 19 115 12 Psalms 19 116 12 Psalms 19 115 13 Psalms 19 116 13 Psalms 19 115 14 Psalms 19 116 14 Psalms 19 115 15 Psalms 19 116 15 Psalms 19 115 16 Psalms 19 116 16 Psalms 19 115 17 Psalms 19 116 17 Psalms 19 115 18 Psalms 19 116 18 Psalms 19 115 19 Psalms 19 116 19 Psalms 19 116 1 Psalms 19 117 1 Psalms 19 116 2 Psalms 19 117 2 Psalms 19 117 1 Psalms 19 118 1 Psalms 19 117 2 Psalms 19 118 2 Psalms 19 117 3 Psalms 19 118 3 Psalms 19 117 4 Psalms 19 118 4 Psalms 19 117 5 Psalms 19 118 5 Psalms 19 117 6 Psalms 19 118 6 Psalms 19 117 7 Psalms 19 118 7 Psalms 19 117 8 Psalms 19 118 8 Psalms 19 117 9 Psalms 19 118 9 Psalms 19 117 10 Psalms 19 118 10 Psalms 19 117 11 Psalms 19 118 11 Psalms 19 117 12 Psalms 19 118 12 Psalms 19 117 13 Psalms 19 118 13 Psalms 19 117 14 Psalms 19 118 14 Psalms 19 117 15 Psalms 19 118 15 Psalms 19 117 16 Psalms 19 118 16 Psalms 19 117 17 Psalms 19 118 17 Psalms 19 117 18 Psalms 19 118 18 Psalms 19 117 19 Psalms 19 118 19 Psalms 19 117 20 Psalms 19 118 20 Psalms 19 117 21 Psalms 19 118 21 Psalms 19 117 22 Psalms 19 118 22 Psalms 19 117 23 Psalms 19 118 23 Psalms 19 117 24 Psalms 19 118 24 Psalms 19 117 25 Psalms 19 118 25 Psalms 19 117 26 Psalms 19 118 26 Psalms 19 117 27 Psalms 19 118 27 Psalms 19 117 28 Psalms 19 118 28 Psalms 19 117 29 Psalms 19 118 29 Psalms 19 118 1 Psalms 19 119 1 Psalms 19 118 2 Psalms 19 119 2 Psalms 19 118 3 Psalms 19 119 3 Psalms 19 118 4 Psalms 19 119 4 Psalms 19 118 5 Psalms 19 119 5 Psalms 19 118 6 Psalms 19 119 6 Psalms 19 118 7 Psalms 19 119 7 Psalms 19 118 8 Psalms 19 119 8 Psalms 19 118 9 Psalms 19 119 9 Psalms 19 118 10 Psalms 19 119 10 Psalms 19 118 11 Psalms 19 119 11 Psalms 19 118 12 Psalms 19 119 12 Psalms 19 118 13 Psalms 19 119 13 Psalms 19 118 14 Psalms 19 119 14 Psalms 19 118 15 Psalms 19 119 15 Psalms 19 118 16 Psalms 19 119 16 Psalms 19 118 17 Psalms 19 119 17 Psalms 19 118 18 Psalms 19 119 18 Psalms 19 118 19 Psalms 19 119 19 Psalms 19 118 20 Psalms 19 119 20 Psalms 19 118 21 Psalms 19 119 21 Psalms 19 118 22 Psalms 19 119 22 Psalms 19 118 23 Psalms 19 119 23 Psalms 19 118 24 Psalms 19 119 24 Psalms 19 118 25 Psalms 19 119 25 Psalms 19 118 26 Psalms 19 119 26 Psalms 19 118 27 Psalms 19 119 27 Psalms 19 118 28 Psalms 19 119 28 Psalms 19 118 29 Psalms 19 119 29 Psalms 19 118 30 Psalms 19 119 30 Psalms 19 118 31 Psalms 19 119 31 Psalms 19 118 32 Psalms 19 119 32 Psalms 19 118 33 Psalms 19 119 33 Psalms 19 118 34 Psalms 19 119 34 Psalms 19 118 35 Psalms 19 119 35 Psalms 19 118 36 Psalms 19 119 36 Psalms 19 118 37 Psalms 19 119 37 Psalms 19 118 38 Psalms 19 119 38 Psalms 19 118 39 Psalms 19 119 39 Psalms 19 118 40 Psalms 19 119 40 Psalms 19 118 41 Psalms 19 119 41 Psalms 19 118 42 Psalms 19 119 42 Psalms 19 118 43 Psalms 19 119 43 Psalms 19 118 44 Psalms 19 119 44 Psalms 19 118 45 Psalms 19 119 45 Psalms 19 118 46 Psalms 19 119 46 Psalms 19 118 47 Psalms 19 119 47 Psalms 19 118 48 Psalms 19 119 48 Psalms 19 118 49 Psalms 19 119 49 Psalms 19 118 50 Psalms 19 119 50 Psalms 19 118 51 Psalms 19 119 51 Psalms 19 118 52 Psalms 19 119 52 Psalms 19 118 53 Psalms 19 119 53 Psalms 19 118 54 Psalms 19 119 54 Psalms 19 118 55 Psalms 19 119 55 Psalms 19 118 56 Psalms 19 119 56 Psalms 19 118 57 Psalms 19 119 57 Psalms 19 118 58 Psalms 19 119 58 Psalms 19 118 59 Psalms 19 119 59 Psalms 19 118 60 Psalms 19 119 60 Psalms 19 118 61 Psalms 19 119 61 Psalms 19 118 62 Psalms 19 119 62 Psalms 19 118 63 Psalms 19 119 63 Psalms 19 118 64 Psalms 19 119 64 Psalms 19 118 65 Psalms 19 119 65 Psalms 19 118 66 Psalms 19 119 66 Psalms 19 118 67 Psalms 19 119 67 Psalms 19 118 68 Psalms 19 119 68 Psalms 19 118 69 Psalms 19 119 69 Psalms 19 118 70 Psalms 19 119 70 Psalms 19 118 71 Psalms 19 119 71 Psalms 19 118 72 Psalms 19 119 72 Psalms 19 118 73 Psalms 19 119 73 Psalms 19 118 74 Psalms 19 119 74 Psalms 19 118 75 Psalms 19 119 75 Psalms 19 118 76 Psalms 19 119 76 Psalms 19 118 77 Psalms 19 119 77 Psalms 19 118 78 Psalms 19 119 78 Psalms 19 118 79 Psalms 19 119 79 Psalms 19 118 80 Psalms 19 119 80 Psalms 19 118 81 Psalms 19 119 81 Psalms 19 118 82 Psalms 19 119 82 Psalms 19 118 83 Psalms 19 119 83 Psalms 19 118 84 Psalms 19 119 84 Psalms 19 118 85 Psalms 19 119 85 Psalms 19 118 86 Psalms 19 119 86 Psalms 19 118 87 Psalms 19 119 87 Psalms 19 118 88 Psalms 19 119 88 Psalms 19 118 89 Psalms 19 119 89 Psalms 19 118 90 Psalms 19 119 90 Psalms 19 118 91 Psalms 19 119 91 Psalms 19 118 92 Psalms 19 119 92 Psalms 19 118 93 Psalms 19 119 93 Psalms 19 118 94 Psalms 19 119 94 Psalms 19 118 95 Psalms 19 119 95 Psalms 19 118 96 Psalms 19 119 96 Psalms 19 118 97 Psalms 19 119 97 Psalms 19 118 98 Psalms 19 119 98 Psalms 19 118 99 Psalms 19 119 99 Psalms 19 118 100 Psalms 19 119 100 Psalms 19 118 101 Psalms 19 119 101 Psalms 19 118 102 Psalms 19 119 102 Psalms 19 118 103 Psalms 19 119 103 Psalms 19 118 104 Psalms 19 119 104 Psalms 19 118 105 Psalms 19 119 105 Psalms 19 118 106 Psalms 19 119 106 Psalms 19 118 107 Psalms 19 119 107 Psalms 19 118 108 Psalms 19 119 108 Psalms 19 118 109 Psalms 19 119 109 Psalms 19 118 110 Psalms 19 119 110 Psalms 19 118 111 Psalms 19 119 111 Psalms 19 118 112 Psalms 19 119 112 Psalms 19 118 113 Psalms 19 119 113 Psalms 19 118 114 Psalms 19 119 114 Psalms 19 118 115 Psalms 19 119 115 Psalms 19 118 116 Psalms 19 119 116 Psalms 19 118 117 Psalms 19 119 117 Psalms 19 118 118 Psalms 19 119 118 Psalms 19 118 119 Psalms 19 119 119 Psalms 19 118 120 Psalms 19 119 120 Psalms 19 118 121 Psalms 19 119 121 Psalms 19 118 122 Psalms 19 119 122 Psalms 19 118 123 Psalms 19 119 123 Psalms 19 118 124 Psalms 19 119 124 Psalms 19 118 125 Psalms 19 119 125 Psalms 19 118 126 Psalms 19 119 126 Psalms 19 118 127 Psalms 19 119 127 Psalms 19 118 128 Psalms 19 119 128 Psalms 19 118 129 Psalms 19 119 129 Psalms 19 118 130 Psalms 19 119 130 Psalms 19 118 131 Psalms 19 119 131 Psalms 19 118 132 Psalms 19 119 132 Psalms 19 118 133 Psalms 19 119 133 Psalms 19 118 134 Psalms 19 119 134 Psalms 19 118 135 Psalms 19 119 135 Psalms 19 118 136 Psalms 19 119 136 Psalms 19 118 137 Psalms 19 119 137 Psalms 19 118 138 Psalms 19 119 138 Psalms 19 118 139 Psalms 19 119 139 Psalms 19 118 140 Psalms 19 119 140 Psalms 19 118 141 Psalms 19 119 141 Psalms 19 118 142 Psalms 19 119 142 Psalms 19 118 143 Psalms 19 119 143 Psalms 19 118 144 Psalms 19 119 144 Psalms 19 118 145 Psalms 19 119 145 Psalms 19 118 146 Psalms 19 119 146 Psalms 19 118 147 Psalms 19 119 147 Psalms 19 118 148 Psalms 19 119 148 Psalms 19 118 149 Psalms 19 119 149 Psalms 19 118 150 Psalms 19 119 150 Psalms 19 118 151 Psalms 19 119 151 Psalms 19 118 152 Psalms 19 119 152 Psalms 19 118 153 Psalms 19 119 153 Psalms 19 118 154 Psalms 19 119 154 Psalms 19 118 155 Psalms 19 119 155 Psalms 19 118 156 Psalms 19 119 156 Psalms 19 118 157 Psalms 19 119 157 Psalms 19 118 158 Psalms 19 119 158 Psalms 19 118 159 Psalms 19 119 159 Psalms 19 118 160 Psalms 19 119 160 Psalms 19 118 161 Psalms 19 119 161 Psalms 19 118 162 Psalms 19 119 162 Psalms 19 118 163 Psalms 19 119 163 Psalms 19 118 164 Psalms 19 119 164 Psalms 19 118 165 Psalms 19 119 165 Psalms 19 118 166 Psalms 19 119 166 Psalms 19 118 167 Psalms 19 119 167 Psalms 19 118 168 Psalms 19 119 168 Psalms 19 118 169 Psalms 19 119 169 Psalms 19 118 170 Psalms 19 119 170 Psalms 19 118 171 Psalms 19 119 171 Psalms 19 118 172 Psalms 19 119 172 Psalms 19 118 173 Psalms 19 119 173 Psalms 19 118 174 Psalms 19 119 174 Psalms 19 118 175 Psalms 19 119 175 Psalms 19 118 176 Psalms 19 119 176 Psalms 19 119 1 Psalms 19 120 1 Psalms 19 119 2 Psalms 19 120 2 Psalms 19 119 3 Psalms 19 120 3 Psalms 19 119 4 Psalms 19 120 4 Psalms 19 119 5 Psalms 19 120 5 Psalms 19 119 6 Psalms 19 120 6 Psalms 19 119 7 Psalms 19 120 7 Psalms 19 120 1 Psalms 19 121 1 Psalms 19 120 2 Psalms 19 121 2 Psalms 19 120 3 Psalms 19 121 3 Psalms 19 120 4 Psalms 19 121 4 Psalms 19 120 5 Psalms 19 121 5 Psalms 19 120 6 Psalms 19 121 6 Psalms 19 120 7 Psalms 19 121 7 Psalms 19 120 8 Psalms 19 121 8 Psalms 19 121 1 Psalms 19 122 1 Psalms 19 121 2 Psalms 19 122 2 Psalms 19 121 3 Psalms 19 122 3 Psalms 19 121 4 Psalms 19 122 4 Psalms 19 121 5 Psalms 19 122 5 Psalms 19 121 6 Psalms 19 122 6 Psalms 19 121 7 Psalms 19 122 7 Psalms 19 121 8 Psalms 19 122 8 Psalms 19 121 9 Psalms 19 122 9 Psalms 19 122 1 Psalms 19 123 1 Psalms 19 122 2 Psalms 19 123 2 Psalms 19 122 3 Psalms 19 123 3 Psalms 19 122 4 Psalms 19 123 4 Psalms 19 123 1 Psalms 19 124 1 Psalms 19 123 2 Psalms 19 124 2 Psalms 19 123 3 Psalms 19 124 3 Psalms 19 123 4 Psalms 19 124 4 Psalms 19 123 5 Psalms 19 124 5 Psalms 19 123 6 Psalms 19 124 6 Psalms 19 123 7 Psalms 19 124 7 Psalms 19 123 8 Psalms 19 124 8 Psalms 19 124 1 Psalms 19 125 1 Psalms 19 124 2 Psalms 19 125 2 Psalms 19 124 3 Psalms 19 125 3 Psalms 19 124 4 Psalms 19 125 4 Psalms 19 124 5 Psalms 19 125 5 Psalms 19 125 1 Psalms 19 126 1 Psalms 19 125 2 Psalms 19 126 2 Psalms 19 125 3 Psalms 19 126 3 Psalms 19 125 4 Psalms 19 126 4 Psalms 19 125 5 Psalms 19 126 5 Psalms 19 125 6 Psalms 19 126 6 Psalms 19 126 1 Psalms 19 127 1 Psalms 19 126 2 Psalms 19 127 2 Psalms 19 126 3 Psalms 19 127 3 Psalms 19 126 4 Psalms 19 127 4 Psalms 19 126 5 Psalms 19 127 5 Psalms 19 127 1 Psalms 19 128 1 Psalms 19 127 2 Psalms 19 128 2 Psalms 19 127 3 Psalms 19 128 3 Psalms 19 127 4 Psalms 19 128 4 Psalms 19 127 5 Psalms 19 128 5 Psalms 19 127 6 Psalms 19 128 6 Psalms 19 128 1 Psalms 19 129 1 Psalms 19 128 2 Psalms 19 129 2 Psalms 19 128 3 Psalms 19 129 3 Psalms 19 128 4 Psalms 19 129 4 Psalms 19 128 5 Psalms 19 129 5 Psalms 19 128 6 Psalms 19 129 6 Psalms 19 128 7 Psalms 19 129 7 Psalms 19 128 8 Psalms 19 129 8 Psalms 19 129 1 Psalms 19 130 1 Psalms 19 129 2 Psalms 19 130 2 Psalms 19 129 3 Psalms 19 130 3 Psalms 19 129 4 Psalms 19 130 4 Psalms 19 129 5 Psalms 19 130 5 Psalms 19 129 6 Psalms 19 130 6 Psalms 19 129 7 Psalms 19 130 7 Psalms 19 129 8 Psalms 19 130 8 Psalms 19 130 1 Psalms 19 131 1 Psalms 19 130 2 Psalms 19 131 2 Psalms 19 130 3 Psalms 19 131 3 Psalms 19 131 1 Psalms 19 132 1 Psalms 19 131 2 Psalms 19 132 2 Psalms 19 131 3 Psalms 19 132 3 Psalms 19 131 4 Psalms 19 132 4 Psalms 19 131 5 Psalms 19 132 5 Psalms 19 131 6 Psalms 19 132 6 Psalms 19 131 7 Psalms 19 132 7 Psalms 19 131 8 Psalms 19 132 8 Psalms 19 131 9 Psalms 19 132 9 Psalms 19 131 10 Psalms 19 132 10 Psalms 19 131 11 Psalms 19 132 11 Psalms 19 131 12 Psalms 19 132 12 Psalms 19 131 13 Psalms 19 132 13 Psalms 19 131 14 Psalms 19 132 14 Psalms 19 131 15 Psalms 19 132 15 Psalms 19 131 16 Psalms 19 132 16 Psalms 19 131 17 Psalms 19 132 17 Psalms 19 131 18 Psalms 19 132 18 Psalms 19 132 1 Psalms 19 133 1 Psalms 19 132 2 Psalms 19 133 2 Psalms 19 132 3 Psalms 19 133 3 Psalms 19 133 1 Psalms 19 134 1 Psalms 19 133 2 Psalms 19 134 2 Psalms 19 133 3 Psalms 19 134 3 Psalms 19 134 1 Psalms 19 135 1 Psalms 19 134 2 Psalms 19 135 2 Psalms 19 134 3 Psalms 19 135 3 Psalms 19 134 4 Psalms 19 135 4 Psalms 19 134 5 Psalms 19 135 5 Psalms 19 134 6 Psalms 19 135 6 Psalms 19 134 7 Psalms 19 135 7 Psalms 19 134 8 Psalms 19 135 8 Psalms 19 134 9 Psalms 19 135 9 Psalms 19 134 10 Psalms 19 135 10 Psalms 19 134 11 Psalms 19 135 11 Psalms 19 134 12 Psalms 19 135 12 Psalms 19 134 13 Psalms 19 135 13 Psalms 19 134 14 Psalms 19 135 14 Psalms 19 134 15 Psalms 19 135 15 Psalms 19 134 16 Psalms 19 135 16 Psalms 19 134 17 Psalms 19 135 17 Psalms 19 134 18 Psalms 19 135 18 Psalms 19 134 19 Psalms 19 135 19 Psalms 19 134 20 Psalms 19 135 20 Psalms 19 134 21 Psalms 19 135 21 Psalms 19 135 1 Psalms 19 136 1 Psalms 19 135 2 Psalms 19 136 2 Psalms 19 135 3 Psalms 19 136 3 Psalms 19 135 4 Psalms 19 136 4 Psalms 19 135 5 Psalms 19 136 5 Psalms 19 135 6 Psalms 19 136 6 Psalms 19 135 7 Psalms 19 136 7 Psalms 19 135 8 Psalms 19 136 8 Psalms 19 135 9 Psalms 19 136 9 Psalms 19 135 10 Psalms 19 136 10 Psalms 19 135 11 Psalms 19 136 11 Psalms 19 135 12 Psalms 19 136 12 Psalms 19 135 13 Psalms 19 136 13 Psalms 19 135 14 Psalms 19 136 14 Psalms 19 135 15 Psalms 19 136 15 Psalms 19 135 16 Psalms 19 136 16 Psalms 19 135 17 Psalms 19 136 17 Psalms 19 135 18 Psalms 19 136 18 Psalms 19 135 19 Psalms 19 136 19 Psalms 19 135 20 Psalms 19 136 20 Psalms 19 135 21 Psalms 19 136 21 Psalms 19 135 22 Psalms 19 136 22 Psalms 19 135 23 Psalms 19 136 23 Psalms 19 135 24 Psalms 19 136 24 Psalms 19 135 25 Psalms 19 136 25 Psalms 19 135 26 Psalms 19 136 26 Psalms 19 136 1 Psalms 19 137 1 Psalms 19 136 2 Psalms 19 137 2 Psalms 19 136 3 Psalms 19 137 3 Psalms 19 136 4 Psalms 19 137 4 Psalms 19 136 5 Psalms 19 137 5 Psalms 19 136 6 Psalms 19 137 6 Psalms 19 136 7 Psalms 19 137 7 Psalms 19 136 8 Psalms 19 137 8 Psalms 19 136 9 Psalms 19 137 9 Psalms 19 137 1 Psalms 19 138 1 Psalms 19 137 2 Psalms 19 138 2 Psalms 19 137 3 Psalms 19 138 3 Psalms 19 137 4 Psalms 19 138 4 Psalms 19 137 5 Psalms 19 138 5 Psalms 19 137 6 Psalms 19 138 6 Psalms 19 137 7 Psalms 19 138 7 Psalms 19 137 8 Psalms 19 138 8 Psalms 19 138 1 Psalms 19 139 1 Psalms 19 138 2 Psalms 19 139 2 Psalms 19 138 3 Psalms 19 139 3 Psalms 19 138 4 Psalms 19 139 4 Psalms 19 138 5 Psalms 19 139 5 Psalms 19 138 6 Psalms 19 139 6 Psalms 19 138 7 Psalms 19 139 7 Psalms 19 138 8 Psalms 19 139 8 Psalms 19 138 9 Psalms 19 139 9 Psalms 19 138 10 Psalms 19 139 10 Psalms 19 138 11 Psalms 19 139 11 Psalms 19 138 12 Psalms 19 139 12 Psalms 19 138 13 Psalms 19 139 13 Psalms 19 138 14 Psalms 19 139 14 Psalms 19 138 15 Psalms 19 139 15 Psalms 19 138 16 Psalms 19 139 16 Psalms 19 138 17 Psalms 19 139 17 Psalms 19 138 18 Psalms 19 139 18 Psalms 19 138 19 Psalms 19 139 19 Psalms 19 138 20 Psalms 19 139 20 Psalms 19 138 21 Psalms 19 139 21 Psalms 19 138 22 Psalms 19 139 22 Psalms 19 138 23 Psalms 19 139 23 Psalms 19 138 24 Psalms 19 139 24 Psalms 19 139 1 Psalms 19 140 1 Psalms 19 139 2 Psalms 19 140 2 Psalms 19 139 3 Psalms 19 140 3 Psalms 19 139 4 Psalms 19 140 4 Psalms 19 139 5 Psalms 19 140 5 Psalms 19 139 6 Psalms 19 140 6 Psalms 19 139 7 Psalms 19 140 7 Psalms 19 139 8 Psalms 19 140 8 Psalms 19 139 9 Psalms 19 140 9 Psalms 19 139 10 Psalms 19 140 10 Psalms 19 139 11 Psalms 19 140 11 Psalms 19 139 12 Psalms 19 140 12 Psalms 19 139 13 Psalms 19 140 13 Psalms 19 139 14 Psalms 19 140 14 Psalms 19 140 1 Psalms 19 141 1 Psalms 19 140 2 Psalms 19 141 2 Psalms 19 140 3 Psalms 19 141 3 Psalms 19 140 4 Psalms 19 141 4 Psalms 19 140 5 Psalms 19 141 5 Psalms 19 140 6 Psalms 19 141 6 Psalms 19 140 7 Psalms 19 141 7 Psalms 19 140 8 Psalms 19 141 8 Psalms 19 140 9 Psalms 19 141 9 Psalms 19 140 10 Psalms 19 141 10 Psalms 19 141 1 Psalms 19 142 1 Psalms 19 141 2 Psalms 19 142 2 Psalms 19 141 3 Psalms 19 142 3 Psalms 19 141 4 Psalms 19 142 4 Psalms 19 141 5 Psalms 19 142 5 Psalms 19 141 6 Psalms 19 142 6 Psalms 19 141 7 Psalms 19 142 7 Psalms 19 141 8 Psalms 19 142 8 Psalms 19 142 1 Psalms 19 143 1 Psalms 19 142 2 Psalms 19 143 2 Psalms 19 142 3 Psalms 19 143 3 Psalms 19 142 4 Psalms 19 143 4 Psalms 19 142 5 Psalms 19 143 5 Psalms 19 142 6 Psalms 19 143 6 Psalms 19 142 7 Psalms 19 143 7 Psalms 19 142 8 Psalms 19 143 8 Psalms 19 142 9 Psalms 19 143 9 Psalms 19 142 10 Psalms 19 143 10 Psalms 19 142 11 Psalms 19 143 11 Psalms 19 142 12 Psalms 19 143 12 Psalms 19 143 1 Psalms 19 144 1 Psalms 19 143 2 Psalms 19 144 2 Psalms 19 143 3 Psalms 19 144 3 Psalms 19 143 4 Psalms 19 144 4 Psalms 19 143 5 Psalms 19 144 5 Psalms 19 143 6 Psalms 19 144 6 Psalms 19 143 7 Psalms 19 144 7 Psalms 19 143 8 Psalms 19 144 8 Psalms 19 143 9 Psalms 19 144 9 Psalms 19 143 10 Psalms 19 144 10 Psalms 19 143 11 Psalms 19 144 11 Psalms 19 143 12 Psalms 19 144 12 Psalms 19 143 13 Psalms 19 144 13 Psalms 19 143 14 Psalms 19 144 14 Psalms 19 143 15 Psalms 19 144 15 Psalms 19 144 1 Psalms 19 145 1 Psalms 19 144 2 Psalms 19 145 2 Psalms 19 144 3 Psalms 19 145 3 Psalms 19 144 4 Psalms 19 145 4 Psalms 19 144 5 Psalms 19 145 5 Psalms 19 144 6 Psalms 19 145 6 Psalms 19 144 7 Psalms 19 145 7 Psalms 19 144 8 Psalms 19 145 8 Psalms 19 144 9 Psalms 19 145 9 Psalms 19 144 10 Psalms 19 145 10 Psalms 19 144 11 Psalms 19 145 11 Psalms 19 144 12 Psalms 19 145 12 Psalms 19 144 13 Psalms 19 145 13 Psalms 19 144 14 Psalms 19 145 14 Psalms 19 144 15 Psalms 19 145 15 Psalms 19 144 16 Psalms 19 145 16 Psalms 19 144 17 Psalms 19 145 17 Psalms 19 144 18 Psalms 19 145 18 Psalms 19 144 19 Psalms 19 145 19 Psalms 19 144 20 Psalms 19 145 20 Psalms 19 144 21 Psalms 19 145 21 Psalms 19 145 1 Psalms 19 146 1 Psalms 19 145 2 Psalms 19 146 1 Psalms 19 145 2 Psalms 19 146 2 Psalms 19 145 3 Psalms 19 146 3 Psalms 19 145 4 Psalms 19 146 4 Psalms 19 145 5 Psalms 19 146 5 Psalms 19 145 6 Psalms 19 146 6 Psalms 19 145 7 Psalms 19 146 7 Psalms 19 145 8 Psalms 19 146 8 Psalms 19 145 9 Psalms 19 146 9 Psalms 19 145 10 Psalms 19 146 10 Psalms 19 146 1 Psalms 19 147 1 Psalms 19 146 2 Psalms 19 147 2 Psalms 19 146 3 Psalms 19 147 3 Psalms 19 146 4 Psalms 19 147 4 Psalms 19 146 5 Psalms 19 147 5 Psalms 19 146 6 Psalms 19 147 6 Psalms 19 146 7 Psalms 19 147 7 Psalms 19 146 8 Psalms 19 147 8 Psalms 19 146 9 Psalms 19 147 9 Psalms 19 146 10 Psalms 19 147 10 Psalms 19 146 11 Psalms 19 147 11 Psalms 19 147 12 Psalms 19 147 12 Psalms 19 147 13 Psalms 19 147 13 Psalms 19 147 14 Psalms 19 147 14 Psalms 19 147 15 Psalms 19 147 15 Psalms 19 147 16 Psalms 19 147 16 Psalms 19 147 17 Psalms 19 147 17 Psalms 19 147 18 Psalms 19 147 18 Psalms 19 147 19 Psalms 19 147 19 Psalms 19 147 20 Psalms 19 147 20 Psalms 19 148 1 Psalms 19 148 1 Psalms 19 148 2 Psalms 19 148 2 Psalms 19 148 3 Psalms 19 148 3 Psalms 19 148 4 Psalms 19 148 4 Psalms 19 148 5 Psalms 19 148 5 Psalms 19 148 6 Psalms 19 148 6 Psalms 19 148 7 Psalms 19 148 7 Psalms 19 148 8 Psalms 19 148 8 Psalms 19 148 9 Psalms 19 148 9 Psalms 19 148 10 Psalms 19 148 10 Psalms 19 148 11 Psalms 19 148 11 Psalms 19 148 12 Psalms 19 148 12 Psalms 19 148 13 Psalms 19 148 13 Psalms 19 148 14 Psalms 19 148 14 Psalms 19 149 1 Psalms 19 149 1 Psalms 19 149 2 Psalms 19 149 2 Psalms 19 149 3 Psalms 19 149 3 Psalms 19 149 4 Psalms 19 149 4 Psalms 19 149 5 Psalms 19 149 5 Psalms 19 149 6 Psalms 19 149 6 Psalms 19 149 7 Psalms 19 149 7 Psalms 19 149 8 Psalms 19 149 8 Psalms 19 149 9 Psalms 19 149 9 Psalms 19 150 1 Psalms 19 150 1 Psalms 19 150 2 Psalms 19 150 2 Psalms 19 150 3 Psalms 19 150 3 Psalms 19 150 4 Psalms 19 150 4 Psalms 19 150 5 Psalms 19 150 5 Psalms 19 150 6 Psalms 19 150 6 Ecclesiastes 21 7 1 Ecclesiastes 21 6 12 Ecclesiastes 21 7 2 Ecclesiastes 21 7 1 Ecclesiastes 21 7 3 Ecclesiastes 21 7 2 Ecclesiastes 21 7 4 Ecclesiastes 21 7 3 Ecclesiastes 21 7 5 Ecclesiastes 21 7 4 Ecclesiastes 21 7 6 Ecclesiastes 21 7 5 Ecclesiastes 21 7 7 Ecclesiastes 21 7 6 Ecclesiastes 21 7 8 Ecclesiastes 21 7 7 Ecclesiastes 21 7 9 Ecclesiastes 21 7 8 Ecclesiastes 21 7 10 Ecclesiastes 21 7 9 Ecclesiastes 21 7 11 Ecclesiastes 21 7 10 Ecclesiastes 21 7 12 Ecclesiastes 21 7 11 Ecclesiastes 21 7 13 Ecclesiastes 21 7 12 Ecclesiastes 21 7 14 Ecclesiastes 21 7 13 Ecclesiastes 21 7 15 Ecclesiastes 21 7 14 Ecclesiastes 21 7 16 Ecclesiastes 21 7 15 Ecclesiastes 21 7 17 Ecclesiastes 21 7 16 Ecclesiastes 21 7 18 Ecclesiastes 21 7 17 Ecclesiastes 21 7 19 Ecclesiastes 21 7 18 Ecclesiastes 21 7 20 Ecclesiastes 21 7 19 Ecclesiastes 21 7 21 Ecclesiastes 21 7 20 Ecclesiastes 21 7 22 Ecclesiastes 21 7 21 Ecclesiastes 21 7 23 Ecclesiastes 21 7 22 Ecclesiastes 21 7 24 Ecclesiastes 21 7 23 Ecclesiastes 21 7 25 Ecclesiastes 21 7 24 Ecclesiastes 21 7 26 Ecclesiastes 21 7 25 Ecclesiastes 21 7 27 Ecclesiastes 21 7 26 Ecclesiastes 21 7 28 Ecclesiastes 21 7 27 Ecclesiastes 21 7 29 Ecclesiastes 21 7 28 Ecclesiastes 21 7 30 Ecclesiastes 21 7 29 Song of Solomon 22 1 1 Song of Solomon 22 1 1 Song of Solomon 22 1 1 Song of Solomon 22 1 2 Song of Solomon 22 1 2 Song of Solomon 22 1 3 Song of Solomon 22 1 3 Song of Solomon 22 1 4 Song of Solomon 22 1 4 Song of Solomon 22 1 5 Song of Solomon 22 1 5 Song of Solomon 22 1 6 Song of Solomon 22 1 6 Song of Solomon 22 1 7 Song of Solomon 22 1 7 Song of Solomon 22 1 8 Song of Solomon 22 1 8 Song of Solomon 22 1 9 Song of Solomon 22 1 9 Song of Solomon 22 1 10 Song of Solomon 22 1 10 Song of Solomon 22 1 11 Song of Solomon 22 1 11 Song of Solomon 22 1 12 Song of Solomon 22 1 12 Song of Solomon 22 1 13 Song of Solomon 22 1 13 Song of Solomon 22 1 14 Song of Solomon 22 1 14 Song of Solomon 22 1 15 Song of Solomon 22 1 15 Song of Solomon 22 1 16 Song of Solomon 22 1 16 Song of Solomon 22 1 17 Song of Solomon 22 5 17 Song of Solomon 22 6 1 Song of Solomon 22 6 1 Song of Solomon 22 6 2 Song of Solomon 22 6 2 Song of Solomon 22 6 3 Song of Solomon 22 6 3 Song of Solomon 22 6 4 Song of Solomon 22 6 4 Song of Solomon 22 6 5 Song of Solomon 22 6 5 Song of Solomon 22 6 6 Song of Solomon 22 6 6 Song of Solomon 22 6 7 Song of Solomon 22 6 7 Song of Solomon 22 6 8 Song of Solomon 22 6 8 Song of Solomon 22 6 9 Song of Solomon 22 6 9 Song of Solomon 22 6 10 Song of Solomon 22 6 10 Song of Solomon 22 6 11 Song of Solomon 22 6 11 Song of Solomon 22 6 12 Song of Solomon 22 6 12 Song of Solomon 22 7 1 Song of Solomon 22 7 1 Song of Solomon 22 7 1 Song of Solomon 22 7 1 Song of Solomon 22 7 2 Song of Solomon 22 7 2 Song of Solomon 22 7 3 Song of Solomon 22 7 3 Song of Solomon 22 7 4 Song of Solomon 22 7 4 Song of Solomon 22 7 5 Song of Solomon 22 7 5 Song of Solomon 22 7 6 Song of Solomon 22 7 6 Song of Solomon 22 7 7 Song of Solomon 22 7 7 Song of Solomon 22 7 8 Song of Solomon 22 7 8 Song of Solomon 22 7 9 Song of Solomon 22 7 9 Song of Solomon 22 7 10 Song of Solomon 22 7 10 Song of Solomon 22 7 11 Song of Solomon 22 7 11 Song of Solomon 22 7 12 Song of Solomon 22 7 12 Song of Solomon 22 7 13 Song of Solomon 22 7 13 Song of Solomon 22 7 14 Isaiah 23 8 22 Isaiah 23 8 22 Isaiah 23 8 22 Isaiah 23 8 23 Isaiah 23 9 1 Isaiah 23 8 23 Isaiah 23 9 2 Isaiah 23 9 1 Isaiah 23 9 3 Isaiah 23 9 2 Isaiah 23 9 4 Isaiah 23 9 3 Isaiah 23 9 5 Isaiah 23 9 4 Isaiah 23 9 6 Isaiah 23 9 5 Isaiah 23 9 7 Isaiah 23 9 6 Isaiah 23 9 8 Isaiah 23 9 7 Isaiah 23 9 9 Isaiah 23 9 8 Isaiah 23 9 10 Isaiah 23 9 9 Isaiah 23 9 11 Isaiah 23 9 10 Isaiah 23 9 12 Isaiah 23 9 11 Isaiah 23 9 13 Isaiah 23 9 12 Isaiah 23 9 14 Isaiah 23 9 13 Isaiah 23 9 15 Isaiah 23 9 14 Isaiah 23 9 16 Isaiah 23 9 15 Isaiah 23 9 17 Isaiah 23 9 16 Isaiah 23 9 18 Isaiah 23 9 17 Isaiah 23 9 19 Isaiah 23 9 18 Isaiah 23 9 20 Isaiah 23 9 19 Isaiah 23 9 21 Isaiah 23 9 20 Isaiah 23 9 20 Isaiah 23 9 19 Isaiah 23 9 20 Isaiah 23 9 20 Isaiah 23 9 21 Isaiah 23 9 20 Isaiah 23 63 19 Isaiah 23 63 19 Isaiah 23 64 1 Isaiah 23 63 19 Isaiah 23 64 2 Isaiah 23 64 1 Isaiah 23 64 3 Isaiah 23 64 2 Isaiah 23 64 4 Isaiah 23 64 3 Isaiah 23 64 5 Isaiah 23 64 4 Isaiah 23 64 6 Isaiah 23 64 5 Isaiah 23 64 7 Isaiah 23 64 6 Isaiah 23 64 8 Isaiah 23 64 7 Isaiah 23 64 9 Isaiah 23 64 8 Isaiah 23 64 10 Isaiah 23 64 9 Isaiah 23 64 11 Isaiah 23 64 10 Isaiah 23 64 12 Isaiah 23 64 11 Jeremiah 24 9 1 Jeremiah 24 8 23 Jeremiah 24 9 2 Jeremiah 24 9 1 Jeremiah 24 9 3 Jeremiah 24 9 2 Jeremiah 24 9 4 Jeremiah 24 9 3 Jeremiah 24 9 5 Jeremiah 24 9 4 Jeremiah 24 9 6 Jeremiah 24 9 5 Jeremiah 24 9 7 Jeremiah 24 9 6 Jeremiah 24 9 8 Jeremiah 24 9 7 Jeremiah 24 9 9 Jeremiah 24 9 8 Jeremiah 24 9 10 Jeremiah 24 9 9 Jeremiah 24 9 11 Jeremiah 24 9 10 Jeremiah 24 9 12 Jeremiah 24 9 11 Jeremiah 24 9 13 Jeremiah 24 9 12 Jeremiah 24 9 14 Jeremiah 24 9 13 Jeremiah 24 9 15 Jeremiah 24 9 14 Jeremiah 24 9 16 Jeremiah 24 9 15 Jeremiah 24 9 17 Jeremiah 24 9 16 Jeremiah 24 9 18 Jeremiah 24 9 17 Jeremiah 24 9 19 Jeremiah 24 9 18 Jeremiah 24 9 20 Jeremiah 24 9 19 Jeremiah 24 9 21 Jeremiah 24 9 20 Jeremiah 24 9 22 Jeremiah 24 9 21 Jeremiah 24 9 23 Jeremiah 24 9 22 Jeremiah 24 9 24 Jeremiah 24 9 23 Jeremiah 24 9 25 Jeremiah 24 9 24 Jeremiah 24 9 26 Jeremiah 24 9 25 Jeremiah 24 37 4 Jeremiah 24 37 4 Jeremiah 24 37 4 Jeremiah 24 37 5 Jeremiah 24 37 5 Jeremiah 24 37 6 Jeremiah 24 37 6 Jeremiah 24 37 7 Jeremiah 24 37 7 Jeremiah 24 37 8 Jeremiah 24 37 8 Jeremiah 24 37 9 Jeremiah 24 37 9 Jeremiah 24 37 10 Jeremiah 24 37 10 Jeremiah 24 37 11 Jeremiah 24 37 11 Jeremiah 24 37 12 Jeremiah 24 37 12 Jeremiah 24 37 13 Jeremiah 24 37 13 Jeremiah 24 37 14 Jeremiah 24 37 14 Jeremiah 24 37 15 Jeremiah 24 37 15 Jeremiah 24 37 16 Jeremiah 24 37 16 Jeremiah 24 37 17 Jeremiah 24 37 17 Jeremiah 24 37 18 Jeremiah 24 37 18 Jeremiah 24 37 19 Jeremiah 24 37 19 Jeremiah 24 37 20 Jeremiah 24 37 20 Jeremiah 24 37 21 Ezekiel 26 2 9 Ezekiel 26 2 9 Ezekiel 26 2 9 Ezekiel 26 2 10 Ezekiel 26 20 45 Ezekiel 26 21 1 Ezekiel 26 20 46 Ezekiel 26 21 2 Ezekiel 26 20 47 Ezekiel 26 21 3 Ezekiel 26 20 48 Ezekiel 26 21 4 Ezekiel 26 20 49 Ezekiel 26 21 5 Ezekiel 26 21 1 Ezekiel 26 21 6 Ezekiel 26 21 2 Ezekiel 26 21 7 Ezekiel 26 21 3 Ezekiel 26 21 8 Ezekiel 26 21 4 Ezekiel 26 21 9 Ezekiel 26 21 5 Ezekiel 26 21 10 Ezekiel 26 21 6 Ezekiel 26 21 11 Ezekiel 26 21 7 Ezekiel 26 21 12 Ezekiel 26 21 8 Ezekiel 26 21 13 Ezekiel 26 21 9 Ezekiel 26 21 14 Ezekiel 26 21 10 Ezekiel 26 21 15 Ezekiel 26 21 11 Ezekiel 26 21 16 Ezekiel 26 21 12 Ezekiel 26 21 17 Ezekiel 26 21 13 Ezekiel 26 21 18 Ezekiel 26 21 14 Ezekiel 26 21 19 Ezekiel 26 21 15 Ezekiel 26 21 20 Ezekiel 26 21 16 Ezekiel 26 21 21 Ezekiel 26 21 17 Ezekiel 26 21 22 Ezekiel 26 21 18 Ezekiel 26 21 23 Ezekiel 26 21 19 Ezekiel 26 21 24 Ezekiel 26 21 20 Ezekiel 26 21 25 Ezekiel 26 21 21 Ezekiel 26 21 26 Ezekiel 26 21 22 Ezekiel 26 21 27 Ezekiel 26 21 23 Ezekiel 26 21 28 Ezekiel 26 21 24 Ezekiel 26 21 29 Ezekiel 26 21 25 Ezekiel 26 21 30 Ezekiel 26 21 26 Ezekiel 26 21 31 Ezekiel 26 21 27 Ezekiel 26 21 32 Ezekiel 26 21 28 Ezekiel 26 21 33 Ezekiel 26 21 29 Ezekiel 26 21 34 Ezekiel 26 21 30 Ezekiel 26 21 35 Ezekiel 26 21 31 Ezekiel 26 21 36 Ezekiel 26 21 32 Ezekiel 26 21 37 Daniel 27 3 91 Daniel 27 3 24 Daniel 27 3 92 Daniel 27 3 25 Daniel 27 3 93 Daniel 27 3 26 Daniel 27 3 94 Daniel 27 3 27 Daniel 27 3 95 Daniel 27 3 28 Daniel 27 3 96 Daniel 27 3 29 Daniel 27 3 97 Daniel 27 3 30 Daniel 27 3 98 Daniel 27 3 31 Daniel 27 3 99 Daniel 27 3 32 Daniel 27 3 100 Daniel 27 3 33 Daniel 27 5 31 Daniel 27 6 1 Daniel 27 6 1 Daniel 27 6 2 Daniel 27 6 2 Daniel 27 6 3 Daniel 27 6 3 Daniel 27 6 4 Daniel 27 6 4 Daniel 27 6 5 Daniel 27 6 5 Daniel 27 6 6 Daniel 27 6 6 Daniel 27 6 7 Daniel 27 6 7 Daniel 27 6 8 Daniel 27 6 8 Daniel 27 6 9 Daniel 27 6 9 Daniel 27 6 10 Daniel 27 6 10 Daniel 27 6 11 Daniel 27 6 11 Daniel 27 6 12 Daniel 27 6 12 Daniel 27 6 13 Daniel 27 6 13 Daniel 27 6 14 Daniel 27 6 14 Daniel 27 6 15 Daniel 27 6 15 Daniel 27 6 16 Daniel 27 6 16 Daniel 27 6 17 Daniel 27 6 17 Daniel 27 6 18 Daniel 27 6 18 Daniel 27 6 19 Daniel 27 6 19 Daniel 27 6 20 Daniel 27 6 20 Daniel 27 6 21 Daniel 27 6 21 Daniel 27 6 22 Daniel 27 6 22 Daniel 27 6 23 Daniel 27 6 23 Daniel 27 6 24 Daniel 27 6 24 Daniel 27 6 25 Daniel 27 6 25 Daniel 27 6 26 Daniel 27 6 26 Daniel 27 6 27 Daniel 27 6 27 Daniel 27 6 28 Daniel 27 6 28 Daniel 27 6 29 Hosea 28 1 10 Hosea 28 2 1 Hosea 28 1 11 Hosea 28 2 2 Hosea 28 2 1 Hosea 28 2 3 Hosea 28 2 2 Hosea 28 2 4 Hosea 28 2 3 Hosea 28 2 5 Hosea 28 2 4 Hosea 28 2 6 Hosea 28 2 5 Hosea 28 2 7 Hosea 28 2 6 Hosea 28 2 8 Hosea 28 2 7 Hosea 28 2 9 Hosea 28 2 8 Hosea 28 2 10 Hosea 28 2 9 Hosea 28 2 11 Hosea 28 2 10 Hosea 28 2 12 Hosea 28 2 11 Hosea 28 2 13 Hosea 28 2 12 Hosea 28 2 14 Hosea 28 2 13 Hosea 28 2 15 Hosea 28 2 14 Hosea 28 2 16 Hosea 28 2 15 Hosea 28 2 17 Hosea 28 2 16 Hosea 28 2 18 Hosea 28 2 17 Hosea 28 2 19 Hosea 28 2 18 Hosea 28 2 20 Hosea 28 2 19 Hosea 28 2 21 Hosea 28 2 20 Hosea 28 2 22 Hosea 28 2 21 Hosea 28 2 23 Hosea 28 2 22 Hosea 28 2 24 Hosea 28 2 23 Hosea 28 2 25 Hosea 28 2 24 Hosea 28 2 25 Hosea 28 11 12 Hosea 28 12 1 Hosea 28 12 1 Hosea 28 12 2 Hosea 28 12 2 Hosea 28 12 3 Hosea 28 12 3 Hosea 28 12 4 Hosea 28 12 4 Hosea 28 12 5 Hosea 28 12 5 Hosea 28 12 6 Hosea 28 12 6 Hosea 28 12 7 Hosea 28 12 7 Hosea 28 12 8 Hosea 28 12 8 Hosea 28 12 9 Hosea 28 12 9 Hosea 28 12 10 Hosea 28 12 10 Hosea 28 12 11 Hosea 28 12 11 Hosea 28 12 12 Hosea 28 12 12 Hosea 28 12 13 Hosea 28 12 13 Hosea 28 12 14 Hosea 28 12 14 Hosea 28 12 15 Joel 29 2 28 Joel 29 3 1 Joel 29 2 29 Joel 29 3 2 Joel 29 2 30 Joel 29 3 3 Joel 29 2 31 Joel 29 3 4 Joel 29 2 32 Joel 29 3 5 Joel 29 3 1 Joel 29 4 1 Joel 29 3 2 Joel 29 4 2 Joel 29 3 3 Joel 29 4 3 Joel 29 3 4 Joel 29 4 4 Joel 29 3 5 Joel 29 4 5 Joel 29 3 6 Joel 29 4 6 Joel 29 3 7 Joel 29 4 7 Joel 29 3 8 Joel 29 4 8 Joel 29 3 9 Joel 29 4 9 Joel 29 3 10 Joel 29 4 10 Joel 29 3 11 Joel 29 4 11 Joel 29 3 12 Joel 29 4 12 Joel 29 3 13 Joel 29 4 13 Joel 29 3 14 Joel 29 4 14 Joel 29 3 15 Joel 29 4 15 Joel 29 3 16 Joel 29 4 16 Joel 29 3 17 Joel 29 4 17 Joel 29 3 18 Joel 29 4 18 Joel 29 3 19 Joel 29 4 19 Joel 29 3 20 Joel 29 4 20 Joel 29 3 21 Joel 29 4 21 Amos 30 6 10 Amos 30 6 10 Amos 30 6 11 Amos 30 6 10 Amos 30 6 12 Amos 30 6 11 Amos 30 6 13 Amos 30 6 12 Amos 30 6 14 Amos 30 6 13 Amos 30 6 15 Amos 30 6 14 Micah 33 5 1 Micah 33 4 14 Micah 33 5 2 Micah 33 5 1 Micah 33 5 3 Micah 33 5 2 Micah 33 5 4 Micah 33 5 3 Micah 33 5 5 Micah 33 5 4 Micah 33 5 6 Micah 33 5 5 Micah 33 5 7 Micah 33 5 6 Micah 33 5 8 Micah 33 5 7 Micah 33 5 9 Micah 33 5 8 Micah 33 5 10 Micah 33 5 9 Micah 33 5 11 Micah 33 5 10 Micah 33 5 11 Micah 33 5 11 Jonah 32 1 17 Jonah 32 2 1 Jonah 32 2 1 Jonah 32 2 2 Jonah 32 2 2 Jonah 32 2 3 Jonah 32 2 3 Jonah 32 2 4 Jonah 32 2 4 Jonah 32 2 5 Jonah 32 2 5 Jonah 32 2 6 Jonah 32 2 6 Jonah 32 2 7 Jonah 32 2 7 Jonah 32 2 8 Jonah 32 2 8 Jonah 32 2 9 Jonah 32 2 9 Jonah 32 2 10 Jonah 32 2 10 Jonah 32 2 11 Nahum 34 1 15 Nahum 34 2 1 Nahum 34 2 1 Nahum 34 2 2 Nahum 34 2 2 Nahum 34 2 3 Nahum 34 2 3 Nahum 34 2 4 Nahum 34 2 4 Nahum 34 2 5 Nahum 34 2 5 Nahum 34 2 6 Nahum 34 2 6 Nahum 34 2 7 Nahum 34 2 7 Nahum 34 2 8 Nahum 34 2 8 Nahum 34 2 9 Nahum 34 2 9 Nahum 34 2 10 Nahum 34 2 10 Nahum 34 2 11 Nahum 34 2 11 Nahum 34 2 12 Nahum 34 2 12 Nahum 34 2 13 Nahum 34 2 13 Nahum 34 2 14 Haggai 37 2 1 Haggai 37 1 15 Haggai 37 2 2 Haggai 37 2 1 Haggai 37 2 3 Haggai 37 2 2 Haggai 37 2 4 Haggai 37 2 3 Haggai 37 2 5 Haggai 37 2 4 Haggai 37 2 6 Haggai 37 2 5 Haggai 37 2 7 Haggai 37 2 6 Haggai 37 2 8 Haggai 37 2 7 Haggai 37 2 9 Haggai 37 2 8 Haggai 37 2 10 Haggai 37 2 9 Haggai 37 2 11 Haggai 37 2 10 Haggai 37 2 12 Haggai 37 2 11 Haggai 37 2 13 Haggai 37 2 12 Haggai 37 2 14 Haggai 37 2 13 Haggai 37 2 15 Haggai 37 2 14 Haggai 37 2 16 Haggai 37 2 15 Haggai 37 2 17 Haggai 37 2 16 Haggai 37 2 18 Haggai 37 2 17 Haggai 37 2 19 Haggai 37 2 18 Haggai 37 2 20 Haggai 37 2 19 Haggai 37 2 21 Haggai 37 2 20 Haggai 37 2 22 Haggai 37 2 21 Haggai 37 2 23 Haggai 37 2 22 Haggai 37 2 24 Haggai 37 2 23 Zechariah 38 1 18 Zechariah 38 2 1 Zechariah 38 1 19 Zechariah 38 2 2 Zechariah 38 1 20 Zechariah 38 2 3 Zechariah 38 1 21 Zechariah 38 2 4 Zechariah 38 2 1 Zechariah 38 2 5 Zechariah 38 2 2 Zechariah 38 2 6 Zechariah 38 2 3 Zechariah 38 2 7 Zechariah 38 2 4 Zechariah 38 2 8 Zechariah 38 2 5 Zechariah 38 2 9 Zechariah 38 2 6 Zechariah 38 2 10 Zechariah 38 2 7 Zechariah 38 2 11 Zechariah 38 2 8 Zechariah 38 2 12 Zechariah 38 2 9 Zechariah 38 2 13 Zechariah 38 2 10 Zechariah 38 2 14 Zechariah 38 2 11 Zechariah 38 2 15 Zechariah 38 2 12 Zechariah 38 2 16 Zechariah 38 2 13 Zechariah 38 2 17 Malachi 39 4 1 Malachi 39 3 19 Malachi 39 4 2 Malachi 39 3 20 Malachi 39 4 3 Malachi 39 3 21 Malachi 39 4 4 Malachi 39 3 22 Malachi 39 4 5 Malachi 39 3 23 Malachi 39 4 6 Malachi 39 3 24 Matthew 40 17 15 Matthew 40 17 16 Matthew 40 17 16 Matthew 40 17 17 Matthew 40 17 17 Matthew 40 17 18 Matthew 40 17 18 Matthew 40 17 19 Matthew 40 17 19 Matthew 40 17 20 Matthew 40 17 20 Matthew 40 17 21 Matthew 40 17 21 Matthew 40 17 22 Matthew 40 17 22 Matthew 40 17 23 Matthew 40 17 23 Matthew 40 17 24 Matthew 40 17 24 Matthew 40 17 25 Matthew 40 17 25 Matthew 40 17 26 Matthew 40 17 26 Matthew 40 17 27 Mark 41 4 40 Mark 41 4 40 Mark 41 4 40 Mark 41 4 41 Mark 41 8 39 Mark 41 9 1 Mark 41 9 1 Mark 41 9 2 Mark 41 9 2 Mark 41 9 3 Mark 41 9 3 Mark 41 9 4 Mark 41 9 4 Mark 41 9 5 Mark 41 9 5 Mark 41 9 6 Mark 41 9 6 Mark 41 9 7 Mark 41 9 7 Mark 41 9 8 Mark 41 9 8 Mark 41 9 9 Mark 41 9 9 Mark 41 9 10 Mark 41 9 10 Mark 41 9 11 Mark 41 9 11 Mark 41 9 12 Mark 41 9 12 Mark 41 9 13 Mark 41 9 13 Mark 41 9 14 Mark 41 9 14 Mark 41 9 15 Mark 41 9 15 Mark 41 9 16 Mark 41 9 16 Mark 41 9 17 Mark 41 9 17 Mark 41 9 18 Mark 41 9 18 Mark 41 9 19 Mark 41 9 19 Mark 41 9 20 Mark 41 9 20 Mark 41 9 21 Mark 41 9 21 Mark 41 9 22 Mark 41 9 22 Mark 41 9 23 Mark 41 9 23 Mark 41 9 24 Mark 41 9 24 Mark 41 9 25 Mark 41 9 25 Mark 41 9 26 Mark 41 9 26 Mark 41 9 27 Mark 41 9 27 Mark 41 9 28 Mark 41 9 28 Mark 41 9 29 Mark 41 9 29 Mark 41 9 30 Mark 41 9 30 Mark 41 9 31 Mark 41 9 31 Mark 41 9 32 Mark 41 9 32 Mark 41 9 33 Mark 41 9 33 Mark 41 9 34 Mark 41 9 34 Mark 41 9 35 Mark 41 9 35 Mark 41 9 36 Mark 41 9 36 Mark 41 9 37 Mark 41 9 37 Mark 41 9 38 Mark 41 9 38 Mark 41 9 39 Mark 41 9 39 Mark 41 9 40 Mark 41 9 40 Mark 41 9 41 Mark 41 9 41 Mark 41 9 42 Mark 41 9 42 Mark 41 9 43 Mark 41 9 43 Mark 41 9 44 Mark 41 9 44 Mark 41 9 45 Mark 41 9 45 Mark 41 9 46 Mark 41 9 46 Mark 41 9 47 Mark 41 9 47 Mark 41 9 48 Mark 41 9 48 Mark 41 9 49 Mark 41 9 49 Mark 41 9 50 John 43 6 51 John 43 6 51 John 43 6 52 John 43 6 51 John 43 6 53 John 43 6 52 John 43 6 54 John 43 6 53 John 43 6 55 John 43 6 54 John 43 6 56 John 43 6 55 John 43 6 57 John 43 6 56 John 43 6 58 John 43 6 57 John 43 6 59 John 43 6 58 John 43 6 60 John 43 6 59 John 43 6 61 John 43 6 60 John 43 6 62 John 43 6 61 John 43 6 63 John 43 6 62 John 43 6 64 John 43 6 63 John 43 6 65 John 43 6 64 John 43 6 66 John 43 6 65 John 43 6 67 John 43 6 66 John 43 6 68 John 43 6 67 John 43 6 69 John 43 6 68 John 43 6 70 John 43 6 69 John 43 6 71 John 43 6 70 John 43 6 72 John 43 6 71 Acts 44 7 55 Acts 44 7 55 Acts 44 7 55 Acts 44 7 56 Acts 44 7 56 Acts 44 7 57 Acts 44 7 57 Acts 44 7 58 Acts 44 7 58 Acts 44 7 59 Acts 44 7 59 Acts 44 7 60 Acts 44 14 6 Acts 44 14 6 Acts 44 14 6 Acts 44 14 7 Acts 44 14 7 Acts 44 14 8 Acts 44 14 8 Acts 44 14 9 Acts 44 14 9 Acts 44 14 10 Acts 44 14 10 Acts 44 14 11 Acts 44 14 11 Acts 44 14 12 Acts 44 14 12 Acts 44 14 13 Acts 44 14 13 Acts 44 14 14 Acts 44 14 14 Acts 44 14 15 Acts 44 14 15 Acts 44 14 16 Acts 44 14 16 Acts 44 14 17 Acts 44 14 17 Acts 44 14 18 Acts 44 14 18 Acts 44 14 19 Acts 44 14 19 Acts 44 14 20 Acts 44 14 20 Acts 44 14 21 Acts 44 14 21 Acts 44 14 22 Acts 44 14 22 Acts 44 14 23 Acts 44 14 23 Acts 44 14 24 Acts 44 14 24 Acts 44 14 25 Acts 44 14 25 Acts 44 14 26 Acts 44 14 26 Acts 44 14 27 Acts 44 14 27 Acts 44 14 28 bibledit-gtk-4.9/templates/masoretic-paragraphs000664 000766 000024 00000222567 12221507125 022125 0ustar00teusstaff000000 000000 GEN 1:5 0 GEN 1:6 GEN 1:8 0 GEN 1:9 GEN 1:13 0 GEN 1:14 GEN 1:19 0 GEN 1:20 GEN 1:23 0 GEN 1:24 GEN 1:31 0 GEN 2:1 GEN 2:3 0 GEN 2:4 GEN 3:15 0 GEN 3:16 GEN 3:16 0 GEN 3:17 GEN 3:21 0 GEN 3:22 GEN 3:24 0 GEN 4:1 GEN 4:16 0 GEN 4:17 GEN 4:24 0 GEN 4:25 GEN 4:26 0 GEN 5:1 GEN 5:2 0 GEN 5:3 GEN 5:5 0 GEN 5:6 GEN 5:8 0 GEN 5:9 GEN 5:11 0 GEN 5:12 GEN 5:14 0 GEN 5:15 GEN 5:17 0 GEN 5:18 GEN 5:20 0 GEN 5:21 GEN 5:24 0 GEN 5:25 GEN 5:27 0 GEN 5:28 GEN 5:31 0 GEN 5:32 GEN 6:4 0 GEN 6:5 GEN 6:8 0 GEN 6:9 GEN 6:12 0 GEN 6:13 GEN 6:22 0 GEN 7:1 GEN 8:14 0 GEN 8:15 GEN 9:7 0 GEN 9:8 GEN 9:17 0 GEN 9:18 GEN 9:29 0 GEN 10:1 GEN 10:14 0 GEN 10:15 GEN 10:20 0 GEN 10:21 GEN 10:32 0 GEN 11:1 GEN 11:9 0 GEN 11:10 GEN 11:11 0 GEN 11:12 GEN 11:13 0 GEN 11:14 GEN 11:15 0 GEN 11:16 GEN 11:17 0 GEN 11:18 GEN 11:19 0 GEN 11:20 GEN 11:21 0 GEN 11:22 GEN 11:23 0 GEN 11:24 GEN 11:25 0 GEN 11:26 GEN 11:26 0 GEN 11:27 GEN 11:32 0 GEN 12:1 GEN 12:9 0 GEN 12:10 GEN 13:18 0 GEN 14:1 GEN 14:24 0 GEN 15:1 GEN 15:21 0 GEN 16:1 GEN 16:16 0 GEN 17:1 GEN 17:14 0 GEN 17:15 GEN 17:27 0 GEN 18:1 GEN 18:15 0 GEN 18:16 GEN 19:38 0 GEN 20:1 GEN 20:18 0 GEN 21:1 GEN 21:7 0 GEN 21:8 GEN 21:21 0 GEN 21:22 GEN 21:34 0 GEN 22:1 GEN 22:19 0 GEN 22:20 GEN 22:24 0 GEN 23:1 GEN 23:20 0 GEN 24:1 GEN 24:67 0 GEN 25:1 GEN 25:11 0 GEN 25:12 GEN 25:18 0 GEN 25:19 GEN 25:34 0 GEN 26:1 GEN 26:33 0 GEN 26:34 GEN 26:35 0 GEN 27:1 GEN 27:45 0 GEN 27:46 GEN 28:9 0 GEN 28:10 GEN 29:14 63 GEN 29:15 GEN 29:30 0 GEN 29:31 GEN 30:24 0 GEN 30:25 GEN 31:54 0 GEN 32:1 GEN 32:3 0 GEN 32:4 GEN 32:22 0 GEN 32:23 GEN 33:17 0 GEN 33:18 GEN 33:20 0 GEN 34:1 GEN 34:31 0 GEN 35:1 GEN 35:8 0 GEN 35:9 GEN 35:15 0 GEN 35:16 GEN 35:22 76 GEN 35:23 GEN 35:29 0 GEN 36:1 GEN 36:19 0 GEN 36:20 GEN 36:30 0 GEN 36:31 GEN 36:43 0 GEN 37:1 GEN 37:11 0 GEN 37:12 GEN 37:36 0 GEN 38:1 GEN 38:11 0 GEN 38:12 GEN 38:30 0 GEN 39:1 GEN 39:23 0 GEN 40:1 GEN 40:23 0 GEN 41:1 GEN 41:36 0 GEN 41:37 GEN 44:17 0 GEN 44:18 GEN 46:7 0 GEN 46:8 GEN 46:27 0 GEN 46:28 GEN 47:12 0 GEN 47:13 GEN 47:26 0 GEN 47:27 GEN 47:31 0 GEN 48:1 GEN 48:22 0 GEN 49:1 GEN 49:4 0 GEN 49:5 GEN 49:7 0 GEN 49:8 GEN 49:12 0 GEN 49:13 GEN 49:13 0 GEN 49:14 GEN 49:15 0 GEN 49:16 GEN 49:18 0 GEN 49:19 GEN 49:19 0 GEN 49:20 GEN 49:20 0 GEN 49:21 GEN 49:21 0 GEN 49:22 GEN 49:26 0 GEN 49:27 GEN 50:21 0 GEN 50:22 EXO 1:7 0 EXO 1:8 EXO 1:22 0 EXO 2:1 EXO 2:10 0 EXO 2:11 EXO 2:22 0 EXO 2:23 EXO 2:25 0 EXO 3:1 EXO 4:17 0 EXO 4:18 EXO 4:26 0 EXO 4:27 EXO 6:1 0 EXO 6:2 EXO 6:9 0 EXO 6:10 EXO 6:12 0 EXO 6:13 EXO 6:13 0 EXO 6:14 EXO 6:27 0 EXO 6:28 EXO 6:28 0 EXO 6:29 EXO 6:30 0 EXO 7:1 EXO 7:7 0 EXO 7:8 EXO 7:13 0 EXO 7:14 EXO 7:18 0 EXO 7:19 EXO 7:25 0 EXO 7:26 EXO 8:11 0 EXO 8:12 EXO 8:15 0 EXO 8:16 EXO 8:28 0 EXO 9:1 EXO 9:7 0 EXO 9:8 EXO 9:12 0 EXO 9:13 EXO 9:21 0 EXO 9:22 EXO 9:35 0 EXO 10:1 EXO 10:11 0 EXO 10:12 EXO 10:20 0 EXO 10:21 EXO 10:29 0 EXO 11:1 EXO 11:3 0 EXO 11:4 EXO 11:8 0 EXO 11:9 EXO 11:10 0 EXO 12:1 EXO 12:20 0 EXO 12:21 EXO 12:28 0 EXO 12:29 EXO 12:36 0 EXO 12:37 EXO 12:42 0 EXO 12:43 EXO 12:50 0 EXO 12:51 EXO 12:51 0 EXO 13:1 EXO 13:10 0 EXO 13:11 EXO 13:16 0 EXO 13:17 EXO 13:22 0 EXO 14:1 EXO 14:14 0 EXO 14:15 EXO 14:25 0 EXO 14:26 EXO 14:31 0 EXO 15:1 EXO 15:19 0 EXO 15:20 EXO 15:21 0 EXO 15:22 EXO 15:26 0 EXO 15:27 EXO 16:3 0 EXO 16:4 EXO 16:5 0 EXO 16:6 EXO 16:10 0 EXO 16:11 EXO 16:27 0 EXO 16:28 EXO 16:36 0 EXO 17:1 EXO 17:7 0 EXO 17:8 EXO 17:13 0 EXO 17:14 EXO 17:16 0 EXO 18:1 EXO 18:12 0 EXO 18:13 EXO 18:27 0 EXO 19:1 EXO 19:25 0 EXO 20:1 EXO 20:1 0 EXO 20:2 EXO 20:6 0 EXO 20:7 EXO 20:7 0 EXO 20:8 EXO 20:11 0 EXO 20:12 EXO 20:12 0 EXO 20:13 EXO 20:13 0 EXO 20:14 EXO 20:14 0 EXO 20:15 EXO 20:15 0 EXO 20:16 EXO 20:16 0 EXO 20:17 EXO 20:17 0 EXO 20:18 EXO 20:21 0 EXO 20:22 EXO 20:26 0 EXO 21:1 EXO 21:6 0 EXO 21:7 EXO 21:11 0 EXO 21:12 EXO 21:13 0 EXO 21:14 EXO 21:14 0 EXO 21:15 EXO 21:16 0 EXO 21:17 EXO 21:17 0 EXO 21:18 EXO 21:19 0 EXO 21:20 EXO 21:21 0 EXO 21:22 EXO 21:25 0 EXO 21:26 EXO 21:26 0 EXO 21:27 EXO 21:27 0 EXO 21:28 EXO 21:32 0 EXO 21:33 EXO 21:34 0 EXO 21:35 EXO 21:36 0 EXO 21:37 EXO 22:3 0 EXO 22:4 EXO 22:4 0 EXO 22:5 EXO 22:5 0 EXO 22:6 EXO 22:8 0 EXO 22:9 EXO 22:12 0 EXO 22:13 EXO 22:14 0 EXO 22:15 EXO 22:16 0 EXO 22:17 EXO 22:17 0 EXO 22:18 EXO 22:18 0 EXO 22:19 EXO 22:23 0 EXO 22:24 EXO 22:26 0 EXO 22:27 EXO 22:30 0 EXO 23:1 EXO 23:1 0 EXO 23:2 EXO 23:3 0 EXO 23:4 EXO 23:4 0 EXO 23:5 EXO 23:5 0 EXO 23:6 EXO 23:19 0 EXO 23:20 EXO 23:33 0 EXO 24:1 EXO 24:11 0 EXO 24:12 EXO 24:18 0 EXO 25:1 EXO 25:9 0 EXO 25:10 EXO 25:22 0 EXO 25:23 EXO 25:30 0 EXO 25:31 EXO 25:40 0 EXO 26:1 EXO 26:6 0 EXO 26:7 EXO 26:14 0 EXO 26:15 EXO 26:30 0 EXO 26:31 EXO 26:37 0 EXO 27:1 EXO 27:8 0 EXO 27:9 EXO 27:19 0 EXO 27:20 EXO 27:21 0 EXO 28:1 EXO 28:5 0 EXO 28:6 EXO 28:12 0 EXO 28:13 EXO 28:14 0 EXO 28:15 EXO 28:30 0 EXO 28:31 EXO 28:35 0 EXO 28:36 EXO 28:43 0 EXO 29:1 EXO 29:37 0 EXO 29:38 EXO 29:46 0 EXO 30:1 EXO 30:10 0 EXO 30:11 EXO 30:16 0 EXO 30:17 EXO 30:21 0 EXO 30:22 EXO 30:33 0 EXO 30:34 EXO 30:38 0 EXO 31:1 EXO 31:11 0 EXO 31:12 EXO 31:17 0 EXO 31:18 EXO 32:6 0 EXO 32:7 EXO 32:14 0 EXO 32:15 EXO 32:35 0 EXO 33:1 EXO 33:11 0 EXO 33:12 EXO 33:16 0 EXO 33:17 EXO 33:23 0 EXO 34:1 EXO 34:26 0 EXO 34:27 EXO 34:35 0 EXO 35:1 EXO 35:3 0 EXO 35:4 EXO 35:29 0 EXO 35:30 EXO 36:7 0 EXO 36:8 EXO 36:13 0 EXO 36:14 EXO 36:19 0 EXO 36:20 EXO 36:38 0 EXO 37:1 EXO 37:9 0 EXO 37:10 EXO 37:16 0 EXO 37:17 EXO 37:24 0 EXO 37:25 EXO 37:29 0 EXO 38:1 EXO 38:7 0 EXO 38:8 EXO 38:8 0 EXO 38:9 EXO 38:20 0 EXO 38:21 EXO 38:23 0 EXO 38:24 EXO 39:1 0 EXO 39:2 EXO 39:7 0 EXO 39:8 EXO 39:26 0 EXO 39:27 EXO 39:29 0 EXO 39:30 EXO 39:31 0 EXO 39:32 EXO 39:32 0 EXO 39:33 EXO 39:43 0 EXO 40:1 EXO 40:16 0 EXO 40:17 EXO 40:19 0 EXO 40:20 EXO 40:21 0 EXO 40:22 EXO 40:23 0 EXO 40:24 EXO 40:25 0 EXO 40:26 EXO 40:27 0 EXO 40:28 EXO 40:29 0 EXO 40:30 EXO 40:32 0 EXO 40:33 EXO 40:33 0 EXO 40:34 LEV 1:9 0 LEV 1:10 LEV 1:13 0 LEV 1:14 LEV 1:17 0 LEV 2:1 LEV 2:3 0 LEV 2:4 LEV 2:4 0 LEV 2:5 LEV 2:6 0 LEV 2:7 LEV 2:13 0 LEV 2:14 LEV 2:16 0 LEV 3:1 LEV 3:5 0 LEV 3:6 LEV 3:11 0 LEV 3:12 LEV 3:17 0 LEV 4:1 LEV 4:12 0 LEV 4:13 LEV 4:21 0 LEV 4:22 LEV 4:26 0 LEV 4:27 LEV 4:31 0 LEV 4:32 LEV 4:35 0 LEV 5:1 LEV 5:10 0 LEV 5:11 LEV 5:13 0 LEV 5:14 LEV 5:16 0 LEV 5:17 LEV 5:19 0 LEV 5:20 LEV 5:26 0 LEV 6:1 LEV 6:6 0 LEV 6:7 LEV 6:11 0 LEV 6:12 LEV 6:16 0 LEV 6:17 LEV 6:23 0 LEV 7:1 LEV 7:10 0 LEV 7:11 LEV 7:21 0 LEV 7:22 LEV 7:27 0 LEV 7:28 LEV 7:38 0 LEV 8:1 LEV 8:36 0 LEV 9:1 LEV 10:7 0 LEV 10:8 LEV 10:11 0 LEV 10:12 LEV 10:20 0 LEV 11:1 LEV 11:20 0 LEV 11:21 LEV 11:28 0 LEV 11:29 LEV 11:38 0 LEV 11:39 LEV 11:47 0 LEV 12:1 LEV 12:8 0 LEV 13:1 LEV 13:8 0 LEV 13:9 LEV 13:17 0 LEV 13:18 LEV 13:23 0 LEV 13:24 LEV 13:28 0 LEV 13:29 LEV 13:37 0 LEV 13:38 LEV 13:39 0 LEV 13:40 LEV 13:46 0 LEV 13:47 LEV 13:59 0 LEV 14:1 LEV 14:20 0 LEV 14:21 LEV 14:32 0 LEV 14:33 LEV 14:57 0 LEV 15:1 LEV 15:15 0 LEV 15:16 LEV 15:17 0 LEV 15:18 LEV 15:24 0 LEV 15:25 LEV 15:33 0 LEV 16:1 LEV 16:34 0 LEV 17:1 LEV 17:12 0 LEV 17:13 LEV 17:16 0 LEV 18:1 LEV 18:5 0 LEV 18:6 LEV 18:6 0 LEV 18:7 LEV 18:7 0 LEV 18:8 LEV 18:8 0 LEV 18:9 LEV 18:9 0 LEV 18:10 LEV 18:10 0 LEV 18:11 LEV 18:11 0 LEV 18:12 LEV 18:12 0 LEV 18:13 LEV 18:13 0 LEV 18:14 LEV 18:14 0 LEV 18:15 LEV 18:15 0 LEV 18:16 LEV 18:16 0 LEV 18:17 LEV 18:30 0 LEV 19:1 LEV 19:19 0 LEV 19:20 LEV 19:22 0 LEV 19:23 LEV 19:32 0 LEV 19:33 LEV 19:37 0 LEV 20:1 LEV 20:27 0 LEV 21:1 LEV 21:9 0 LEV 21:10 LEV 21:15 0 LEV 21:16 LEV 21:24 0 LEV 22:1 LEV 22:13 0 LEV 22:14 LEV 22:16 0 LEV 22:17 LEV 22:25 0 LEV 22:26 LEV 22:33 0 LEV 23:1 LEV 23:3 0 LEV 23:4 LEV 23:8 0 LEV 23:9 LEV 23:14 0 LEV 23:15 LEV 23:22 0 LEV 23:23 LEV 23:25 0 LEV 23:26 LEV 23:32 0 LEV 23:33 LEV 23:44 0 LEV 24:1 LEV 24:4 0 LEV 24:5 LEV 24:9 0 LEV 24:10 LEV 24:12 0 LEV 24:13 LEV 24:23 0 LEV 25:1 LEV 25:7 0 LEV 25:8 LEV 25:24 0 LEV 25:25 LEV 25:34 0 LEV 25:35 LEV 25:38 0 LEV 25:39 LEV 25:46 0 LEV 25:47 LEV 26:2 0 LEV 26:3 LEV 26:13 0 LEV 26:14 LEV 26:17 0 LEV 26:18 LEV 26:26 0 LEV 26:27 LEV 26:46 0 LEV 27:1 LEV 27:8 0 LEV 27:9 LEV 27:25 0 LEV 27:26 NUM 1:19 0 NUM 1:20 NUM 1:21 0 NUM 1:22 NUM 1:23 0 NUM 1:24 NUM 1:25 0 NUM 1:26 NUM 1:27 0 NUM 1:28 NUM 1:29 0 NUM 1:30 NUM 1:31 0 NUM 1:32 NUM 1:33 0 NUM 1:34 NUM 1:35 0 NUM 1:36 NUM 1:37 0 NUM 1:38 NUM 1:39 0 NUM 1:40 NUM 1:41 0 NUM 1:42 NUM 1:43 0 NUM 1:44 NUM 1:47 0 NUM 1:48 NUM 1:54 0 NUM 2:1 NUM 2:6 0 NUM 2:7 NUM 2:9 0 NUM 2:10 NUM 2:16 0 NUM 2:17 NUM 2:17 0 NUM 2:18 NUM 2:24 0 NUM 2:25 NUM 2:31 0 NUM 2:32 NUM 3:4 0 NUM 3:5 NUM 3:10 0 NUM 3:11 NUM 3:13 0 NUM 3:14 NUM 3:39 0 NUM 3:40 NUM 3:43 0 NUM 3:44 NUM 3:51 0 NUM 4:1 NUM 4:16 0 NUM 4:17 NUM 4:20 0 NUM 4:21 NUM 4:28 0 NUM 4:29 NUM 4:37 0 NUM 4:38 NUM 4:49 0 NUM 5:1 NUM 5:4 0 NUM 5:5 NUM 5:10 0 NUM 5:11 NUM 5:31 0 NUM 6:1 NUM 6:21 0 NUM 6:22 NUM 6:23 0 NUM 6:24 NUM 6:24 0 NUM 6:25 NUM 6:25 0 NUM 6:26 NUM 6:26 0 NUM 6:27 NUM 6:27 0 NUM 7:1 NUM 7:11 0 NUM 7:12 NUM 7:17 0 NUM 7:18 NUM 7:23 0 NUM 7:24 NUM 7:29 0 NUM 7:30 NUM 7:35 0 NUM 7:36 NUM 7:41 0 NUM 7:42 NUM 7:47 0 NUM 7:48 NUM 7:53 0 NUM 7:54 NUM 7:65 0 NUM 7:66 NUM 7:71 0 NUM 7:72 NUM 7:77 0 NUM 7:78 NUM 7:83 0 NUM 7:84 NUM 7:89 0 NUM 8:1 NUM 8:4 0 NUM 8:5 NUM 8:22 0 NUM 8:23 NUM 8:26 0 NUM 9:1 NUM 9:8 0 NUM 9:9 NUM 9:14 0 NUM 9:15 NUM 9:23 0 NUM 10:1 NUM 10:10 0 NUM 10:11 NUM 10:17 0 NUM 10:18 NUM 10:21 0 NUM 10:22 NUM 10:24 0 NUM 10:25 NUM 10:28 0 NUM 10:29 NUM 10:34 0 NUM 10:35 NUM 10:36 0 NUM 11:1 NUM 11:15 0 NUM 11:16 NUM 11:22 0 NUM 11:23 NUM 11:35 0 NUM 12:1 NUM 12:3 0 NUM 12:4 NUM 12:13 0 NUM 12:14 NUM 12:16 0 NUM 13:1 NUM 14:10 0 NUM 14:11 NUM 14:25 0 NUM 14:26 NUM 14:45 0 NUM 15:1 NUM 15:16 0 NUM 15:17 NUM 15:21 0 NUM 15:22 NUM 15:26 0 NUM 15:27 NUM 15:31 0 NUM 15:32 NUM 15:34 0 NUM 15:35 NUM 15:36 0 NUM 15:37 NUM 15:41 0 NUM 16:1 NUM 16:19 0 NUM 16:20 NUM 16:22 0 NUM 16:23 NUM 16:35 0 NUM 17:1 NUM 17:8 0 NUM 17:9 NUM 17:15 0 NUM 17:16 NUM 17:24 0 NUM 17:25 NUM 17:26 0 NUM 17:27 NUM 17:28 0 NUM 18:1 NUM 18:7 0 NUM 18:8 NUM 18:20 0 NUM 18:21 NUM 18:24 0 NUM 18:25 NUM 18:32 0 NUM 19:1 NUM 19:22 0 NUM 20:1 NUM 20:6 0 NUM 20:7 NUM 20:11 0 NUM 20:12 NUM 20:13 0 NUM 20:14 NUM 20:21 0 NUM 20:22 NUM 20:29 0 NUM 21:1 NUM 21:3 0 NUM 21:4 NUM 21:16 0 NUM 21:17 NUM 21:20 0 NUM 21:21 NUM 22:1 0 NUM 22:2 NUM 24:25 0 NUM 25:1 NUM 25:9 0 NUM 25:10 NUM 25:15 0 NUM 25:16 NUM 25:19 0 NUM 26:1 NUM 26:11 0 NUM 26:12 NUM 26:14 0 NUM 26:15 NUM 26:18 0 NUM 26:19 NUM 26:22 0 NUM 26:23 NUM 26:25 0 NUM 26:26 NUM 26:27 0 NUM 26:28 NUM 26:34 0 NUM 26:35 NUM 26:37 0 NUM 26:38 NUM 26:41 0 NUM 26:42 NUM 26:43 0 NUM 26:44 NUM 26:47 0 NUM 26:48 NUM 26:51 0 NUM 26:52 NUM 26:56 0 NUM 26:57 NUM 26:65 0 NUM 27:1 NUM 27:5 0 NUM 27:6 NUM 27:11 0 NUM 27:12 NUM 27:14 0 NUM 27:15 NUM 27:23 0 NUM 28:1 NUM 28:8 0 NUM 28:9 NUM 28:10 0 NUM 28:11 NUM 28:15 0 NUM 28:16 NUM 28:25 0 NUM 28:26 NUM 28:31 0 NUM 29:1 NUM 29:6 0 NUM 29:7 NUM 29:11 0 NUM 29:12 NUM 29:16 0 NUM 29:17 NUM 29:19 0 NUM 29:20 NUM 29:22 0 NUM 29:23 NUM 29:25 0 NUM 29:26 NUM 29:28 0 NUM 29:29 NUM 29:31 0 NUM 29:32 NUM 29:34 0 NUM 29:35 NUM 30:1 0 NUM 30:2 NUM 30:17 0 NUM 31:1 NUM 31:12 0 NUM 31:13 NUM 31:20 0 NUM 31:21 NUM 31:24 0 NUM 31:25 NUM 31:54 0 NUM 32:1 NUM 32:4 0 NUM 32:5 NUM 32:15 0 NUM 32:16 NUM 32:19 0 NUM 32:20 NUM 32:42 0 NUM 33:1 NUM 33:39 0 NUM 33:40 NUM 33:49 0 NUM 33:50 NUM 33:56 0 NUM 34:1 NUM 34:15 0 NUM 34:16 NUM 34:29 0 NUM 35:1 NUM 35:8 0 NUM 35:9 NUM 35:34 0 NUM 36:1 DEU 2:1 0 DEU 2:2 DEU 2:8 72 DEU 2:9 DEU 2:16 0 DEU 2:17 DEU 2:30 0 DEU 2:31 DEU 3:22 0 DEU 3:23 DEU 3:29 0 DEU 4:1 DEU 4:24 0 DEU 4:25 DEU 4:40 0 DEU 4:41 DEU 4:49 0 DEU 5:1 DEU 5:5 0 DEU 5:6 DEU 5:10 0 DEU 5:11 DEU 5:11 0 DEU 5:12 DEU 5:15 0 DEU 5:16 DEU 5:16 0 DEU 5:17 DEU 5:17 0 DEU 5:18 DEU 5:18 0 DEU 5:19 DEU 5:19 0 DEU 5:20 DEU 5:20 0 DEU 5:21 DEU 5:21 0 DEU 5:22 DEU 5:21 24 DEU 5:22 DEU 6:3 0 DEU 6:4 DEU 6:9 0 DEU 6:10 DEU 6:15 0 DEU 6:16 DEU 6:19 0 DEU 6:20 DEU 6:25 0 DEU 7:1 DEU 7:6 0 DEU 7:7 DEU 7:11 0 DEU 7:12 DEU 7:16 0 DEU 7:17 DEU 7:26 0 DEU 8:1 DEU 8:18 0 DEU 8:19 DEU 8:20 0 DEU 9:1 DEU 9:29 0 DEU 10:1 DEU 10:11 0 DEU 10:12 DEU 11:9 0 DEU 11:10 DEU 11:12 0 DEU 11:13 DEU 11:21 0 DEU 11:22 DEU 11:25 0 DEU 11:26 DEU 11:28 0 DEU 11:29 DEU 12:19 0 DEU 12:20 DEU 12:28 0 DEU 12:29 DEU 13:1 0 DEU 13:2 DEU 13:12 0 DEU 13:13 DEU 13:19 0 DEU 14:1 DEU 14:2 0 DEU 14:3 DEU 14:8 0 DEU 14:9 DEU 14:10 0 DEU 14:11 DEU 14:21 0 DEU 14:22 DEU 14:27 0 DEU 14:28 DEU 14:29 0 DEU 15:1 DEU 15:6 0 DEU 15:7 DEU 15:11 0 DEU 15:12 DEU 15:18 0 DEU 15:19 DEU 15:23 0 DEU 16:1 DEU 16:8 0 DEU 16:9 DEU 16:12 0 DEU 16:13 DEU 16:17 0 DEU 16:18 DEU 16:20 0 DEU 16:21 DEU 16:21 0 DEU 16:22 DEU 16:22 0 DEU 17:1 DEU 17:1 0 DEU 17:2 DEU 17:7 0 DEU 17:8 DEU 17:13 0 DEU 17:14 DEU 17:20 0 DEU 18:1 DEU 18:2 0 DEU 18:3 DEU 18:5 0 DEU 18:6 DEU 18:8 0 DEU 18:9 DEU 18:13 0 DEU 18:14 DEU 18:22 0 DEU 19:1 DEU 19:7 0 DEU 19:8 DEU 19:10 0 DEU 19:11 DEU 19:13 0 DEU 19:14 DEU 19:14 0 DEU 19:15 DEU 19:21 0 DEU 20:1 DEU 20:9 0 DEU 20:10 DEU 20:18 0 DEU 20:19 DEU 20:20 0 DEU 21:1 DEU 21:9 0 DEU 21:10 DEU 21:14 0 DEU 21:15 DEU 21:17 0 DEU 21:18 DEU 21:21 0 DEU 21:22 DEU 21:23 0 DEU 22:1 DEU 22:3 0 DEU 22:4 DEU 22:4 0 DEU 22:5 DEU 22:5 0 DEU 22:6 DEU 22:7 0 DEU 22:8 DEU 22:8 0 DEU 22:9 DEU 22:9 0 DEU 22:10 DEU 22:10 0 DEU 22:11 DEU 22:11 0 DEU 22:12 DEU 22:12 0 DEU 22:13 DEU 22:19 0 DEU 22:20 DEU 22:21 0 DEU 22:22 DEU 22:22 0 DEU 22:23 DEU 22:24 0 DEU 22:25 DEU 22:27 0 DEU 22:28 DEU 22:29 0 DEU 23:1 DEU 23:1 0 DEU 23:2 DEU 23:2 0 DEU 23:3 DEU 23:3 0 DEU 23:4 DEU 23:7 0 DEU 23:8 DEU 23:8 46 DEU 23:9 DEU 23:9 0 DEU 23:10 DEU 23:15 0 DEU 23:16 DEU 23:17 0 DEU 23:18 DEU 23:21 0 DEU 23:22 DEU 23:24 0 DEU 23:25 DEU 23:25 0 DEU 23:26 DEU 23:26 0 DEU 24:1 DEU 24:4 0 DEU 24:5 DEU 24:5 0 DEU 24:6 DEU 24:6 0 DEU 24:7 DEU 24:8 0 DEU 24:9 DEU 24:9 0 DEU 24:10 DEU 24:13 0 DEU 24:14 DEU 24:15 0 DEU 24:16 DEU 24:16 0 DEU 24:17 DEU 24:18 0 DEU 24:19 DEU 24:20 0 DEU 24:21 DEU 24:22 0 DEU 25:1 DEU 25:3 0 DEU 25:4 DEU 25:4 0 DEU 25:5 DEU 25:10 0 DEU 25:11 DEU 25:12 0 DEU 25:13 DEU 25:13 0 DEU 25:14 DEU 25:16 0 DEU 25:17 DEU 25:19 0 DEU 26:1 DEU 26:11 0 DEU 26:12 DEU 26:15 0 DEU 26:16 DEU 26:19 0 DEU 27:1 DEU 27:8 0 DEU 27:9 DEU 27:10 0 DEU 27:11 DEU 27:14 0 DEU 27:15 DEU 27:15 0 DEU 27:16 DEU 27:16 0 DEU 27:17 DEU 27:17 0 DEU 27:18 DEU 27:18 0 DEU 27:19 DEU 27:19 0 DEU 27:20 DEU 27:20 0 DEU 27:21 DEU 27:21 0 DEU 27:22 DEU 27:22 0 DEU 27:23 DEU 27:23 0 DEU 27:24 DEU 27:24 0 DEU 27:25 DEU 27:25 0 DEU 27:26 DEU 27:26 0 DEU 28:1 DEU 28:14 0 DEU 28:15 DEU 28:68 0 DEU 28:69 DEU 28:69 0 DEU 29:1 DEU 29:8 0 DEU 29:9 DEU 29:28 0 DEU 30:1 DEU 30:10 0 DEU 30:11 DEU 30:14 0 DEU 30:15 DEU 30:20 0 DEU 31:1 DEU 31:6 0 DEU 31:7 DEU 31:13 0 DEU 31:14 DEU 31:15 0 DEU 31:16 DEU 31:30 0 DEU 32:1 DEU 32:43 0 DEU 32:44 DEU 32:47 0 DEU 32:48 DEU 32:52 0 DEU 33:1 DEU 33:6 0 DEU 33:7 DEU 33:7 0 DEU 33:8 DEU 33:11 0 DEU 33:12 DEU 33:12 0 DEU 33:13 DEU 33:17 0 DEU 33:18 DEU 33:19 0 DEU 33:20 DEU 33:21 0 DEU 33:22 DEU 33:23 0 DEU 33:24 DEU 33:29 0 DEU 34:1 JOS 1:9 0 JOS 1:10 JOS 1:11 0 JOS 1:12 JOS 1:18 0 JOS 2:1 JOS 2:24 0 JOS 3:1 JOS 3:4 0 JOS 3:5 JOS 3:6 0 JOS 3:7 JOS 3:8 0 JOS 3:9 JOS 4:1 60 JOS 4:2 JOS 4:3 0 JOS 4:4 JOS 4:13 0 JOS 4:14 JOS 4:14 0 JOS 4:15 JOS 4:24 0 JOS 5:1 JOS 5:1 0 JOS 5:2 JOS 5:8 0 JOS 5:9 JOS 5:12 0 JOS 5:13 JOS 6:1 0 JOS 6:2 JOS 6:11 0 JOS 6:12 JOS 6:25 0 JOS 6:26 JOS 7:9 0 JOS 7:10 JOS 7:26 0 JOS 8:1 JOS 8:17 0 JOS 8:18 JOS 8:29 0 JOS 8:30 JOS 8:35 0 JOS 9:1 JOS 9:2 0 JOS 9:3 JOS 9:27 0 JOS 10:1 JOS 10:7 0 JOS 10:8 JOS 10:11 0 JOS 10:12 JOS 10:14 0 JOS 10:15 JOS 10:27 0 JOS 10:28 JOS 10:30 0 JOS 10:31 JOS 10:32 0 JOS 10:33 JOS 10:35 0 JOS 10:36 JOS 10:37 0 JOS 10:38 JOS 10:43 0 JOS 11:1 JOS 11:5 0 JOS 11:6 JOS 11:9 0 JOS 11:10 JOS 11:20 0 JOS 11:21 JOS 11:23 0 JOS 12:1 JOS 12:6 0 JOS 12:7 JOS 12:8 0 JOS 12:9 JOS 12:24 0 JOS 13:1 JOS 13:14 0 JOS 13:15 JOS 13:23 0 JOS 13:24 JOS 13:32 0 JOS 13:33 JOS 14:5 0 JOS 14:6 JOS 14:15 0 JOS 15:1 JOS 15:19 0 JOS 15:20 JOS 15:32 0 JOS 15:33 JOS 15:41 0 JOS 15:42 JOS 15:47 0 JOS 15:48 JOS 15:54 0 JOS 15:55 JOS 15:60 0 JOS 15:61 JOS 15:63 0 JOS 16:1 JOS 16:10 0 JOS 17:1 JOS 17:13 0 JOS 17:14 JOS 17:18 0 JOS 18:1 JOS 18:10 0 JOS 18:11 JOS 18:28 0 JOS 19:1 JOS 19:9 0 JOS 19:10 JOS 19:16 0 JOS 19:17 JOS 19:23 0 JOS 19:24 JOS 19:31 0 JOS 19:32 JOS 19:39 0 JOS 19:40 JOS 19:48 0 JOS 19:49 JOS 19:51 0 JOS 20:1 JOS 20:9 0 JOS 21:1 JOS 21:4 0 JOS 21:5 JOS 21:5 0 JOS 21:6 JOS 21:6 0 JOS 21:7 JOS 21:8 0 JOS 21:9 JOS 21:12 0 JOS 21:13 JOS 21:16 0 JOS 21:17 JOS 21:19 0 JOS 21:20 JOS 21:22 0 JOS 21:23 JOS 21:24 0 JOS 21:25 JOS 21:26 0 JOS 21:27 JOS 21:27 0 JOS 21:28 JOS 21:29 0 JOS 21:30 JOS 21:31 0 JOS 21:32 JOS 21:33 0 JOS 21:34 JOS 21:37 0 JOS 21:38 JOS 21:42 0 JOS 21:43 JOS 21:45 0 JOS 22:1 JOS 22:6 0 JOS 22:7 JOS 22:8 0 JOS 22:9 JOS 22:12 0 JOS 22:13 JOS 22:20 0 JOS 22:21 JOS 22:29 0 JOS 22:30 JOS 22:34 0 JOS 23:1 JOS 23:16 0 JOS 24:1 JOS 24:15 0 JOS 24:16 JOS 24:18 0 JOS 24:19 JOS 24:26 0 JOS 24:27 JOS 24:28 0 JOS 24:29 JDG 1:7 0 JDG 1:8 JDG 1:15 0 JDG 1:16 JDG 1:21 0 JDG 1:22 JDG 1:26 0 JDG 1:27 JDG 1:28 0 JDG 1:29 JDG 1:29 0 JDG 1:30 JDG 1:30 0 JDG 1:31 JDG 1:32 0 JDG 1:33 JDG 1:33 0 JDG 1:34 JDG 1:36 0 JDG 2:1 JDG 2:1 26 JDG 2:2 JDG 2:5 0 JDG 2:6 JDG 2:10 0 JDG 2:11 JDG 2:23 0 JDG 3:1 JDG 3:6 0 JDG 3:7 JDG 3:11 0 JDG 3:12 JDG 3:14 0 JDG 3:15 JDG 3:30 0 JDG 3:31 JDG 3:31 0 JDG 4:1 JDG 4:3 0 JDG 4:4 JDG 4:12 0 JDG 4:13 JDG 4:24 0 JDG 5:1 JDG 5:31 0 JDG 6:1 JDG 6:6 0 JDG 6:7 JDG 6:10 0 JDG 6:11 JDG 6:19 0 JDG 6:20 JDG 6:22 30 JDG 6:23 JDG 6:24 0 JDG 6:25 JDG 6:32 0 JDG 6:33 JDG 6:40 0 JDG 7:1 JDG 7:3 0 JDG 7:4 JDG 7:5 17 JDG 7:6 JDG 7:6 0 JDG 7:7 JDG 7:8 0 JDG 7:9 JDG 7:14 0 JDG 7:15 JDG 7:18 0 JDG 7:19 JDG 8:9 0 JDG 8:10 JDG 8:28 0 JDG 8:29 JDG 8:32 0 JDG 8:33 JDG 8:35 0 JDG 9:1 JDG 9:5 0 JDG 9:6 JDG 9:21 0 JDG 9:22 JDG 9:25 0 JDG 9:26 JDG 9:33 0 JDG 9:34 JDG 9:36 0 JDG 9:37 JDG 9:38 0 JDG 9:39 JDG 9:45 0 JDG 9:46 JDG 9:49 0 JDG 9:50 JDG 9:57 0 JDG 10:1 JDG 10:2 0 JDG 10:3 JDG 10:5 0 JDG 10:6 JDG 10:10 0 JDG 10:11 JDG 10:16 0 JDG 10:17 JDG 10:18 0 JDG 11:1 JDG 11:3 0 JDG 11:4 JDG 11:11 0 JDG 11:12 JDG 11:28 0 JDG 11:29 JDG 11:31 0 JDG 11:32 JDG 11:33 0 JDG 11:34 JDG 11:40 0 JDG 12:1 JDG 12:7 0 JDG 12:8 JDG 12:10 0 JDG 12:11 JDG 12:12 0 JDG 12:13 JDG 12:15 0 JDG 13:1 JDG 13:1 0 JDG 13:2 JDG 13:7 0 JDG 13:8 JDG 13:18 0 JDG 13:19 JDG 13:25 0 JDG 14:1 JDG 14:4 0 JDG 14:5 JDG 14:19 0 JDG 14:20 JDG 15:8 0 JDG 15:9 JDG 15:20 0 JDG 16:1 JDG 16:3 0 JDG 16:4 JDG 16:22 0 JDG 16:23 JDG 16:31 0 JDG 17:1 JDG 17:6 0 JDG 17:7 JDG 18:1 0 JDG 18:2 JDG 18:6 0 JDG 18:7 JDG 18:31 0 JDG 19:1 JDG 19:30 0 JDG 20:1 JDG 20:2 0 JDG 20:3 JDG 20:11 0 JDG 20:12 JDG 20:16 0 JDG 20:17 JDG 20:19 0 JDG 20:20 JDG 20:23 0 JDG 20:24 JDG 20:29 0 JDG 20:30 JDG 20:34 0 JDG 20:35 JDG 20:48 0 JDG 21:1 JDG 21:4 0 JDG 21:5 JDG 21:12 0 JDG 21:13 JDG 21:18 0 JDG 21:19 JDG 21:22 0 JDG 21:23 RUT 4:17 0 RUT 4:18 1SA 1:28 0 1SA 2:1 1SA 2:10 0 1SA 2:11 1SA 2:21 0 1SA 2:22 1SA 2:26 0 1SA 2:27 1SA 2:36 0 1SA 3:1 1SA 3:1 0 1SA 3:2 1SA 3:3 0 1SA 3:4 1SA 3:5 0 1SA 3:6 1SA 3:10 0 1SA 3:11 1SA 3:18 0 1SA 3:19 1SA 3:21 0 1SA 4:1 1SA 4:17 0 1SA 4:18 1SA 4:22 0 1SA 5:1 1SA 5:5 0 1SA 5:6 1SA 5:8 0 1SA 5:9 1SA 6:14 0 1SA 6:15 1SA 6:16 0 1SA 6:17 1SA 6:17 0 1SA 6:18 1SA 6:20 0 1SA 6:21 1SA 7:1 0 1SA 7:2 1SA 7:2 0 1SA 7:3 1SA 7:4 0 1SA 7:5 1SA 7:17 0 1SA 8:1 1SA 8:3 0 1SA 8:4 1SA 8:6 0 1SA 8:7 1SA 8:9 0 1SA 8:10 1SA 8:10 0 1SA 8:11 1SA 8:21 0 1SA 8:22 1SA 8:22 0 1SA 9:1 1SA 9:14 0 1SA 9:15 1SA 9:20 0 1SA 9:21 1SA 9:21 0 1SA 9:22 1SA 9:27 0 1SA 10:1 1SA 10:9 0 1SA 10:10 1SA 10:16 0 1SA 10:17 1SA 10:18 17 1SA 10:19 1SA 10:22 50 1SA 10:23 1SA 10:24 0 1SA 10:25 1SA 10:27 0 1SA 11:1 1SA 11:10 0 1SA 11:11 1SA 11:13 0 1SA 11:14 1SA 11:15 0 1SA 12:1 1SA 12:5 0 1SA 12:6 1SA 12:17 0 1SA 12:18 1SA 12:19 0 1SA 12:20 1SA 12:25 0 1SA 13:1 1SA 13:12 0 1SA 13:13 1SA 13:14 0 1SA 13:15 1SA 13:18 0 1SA 13:19 1SA 13:23 0 1SA 14:1 1SA 14:5 0 1SA 14:6 1SA 14:7 0 1SA 14:8 1SA 14:12 56 1SA 14:13 1SA 14:16 0 1SA 14:17 1SA 14:19 71 1SA 14:20 1SA 14:24 0 1SA 14:25 1SA 14:35 0 1SA 14:36 1SA 14:36 75 1SA 14:37 1SA 14:40 0 1SA 14:41 1SA 14:45 0 1SA 14:46 1SA 14:48 0 1SA 14:49 1SA 14:51 0 1SA 14:52 1SA 14:52 0 1SA 15:1 1SA 15:1 0 1SA 15:2 1SA 15:3 0 1SA 15:4 1SA 15:9 0 1SA 15:10 1SA 15:15 0 1SA 15:16 1SA 15:16 0 1SA 15:17 1SA 15:19 0 1SA 15:20 1SA 15:23 0 1SA 15:24 1SA 15:26 0 1SA 15:27 1SA 15:31 0 1SA 15:32 1SA 15:32 0 1SA 15:33 1SA 15:33 0 1SA 15:34 1SA 15:35 0 1SA 16:1 1SA 16:2 40 1SA 16:3 1SA 16:12 62 1SA 16:13 1SA 16:13 0 1SA 16:14 1SA 16:16 0 1SA 16:17 1SA 16:23 0 1SA 17:1 1SA 17:11 0 1SA 17:12 1SA 17:14 0 1SA 17:15 1SA 17:16 0 1SA 17:17 1SA 17:33 0 1SA 17:34 1SA 17:36 0 1SA 17:37 1SA 17:37 67 1SA 17:38 1SA 17:44 0 1SA 17:45 1SA 17:54 0 1SA 17:55 1SA 17:56 0 1SA 17:57 1SA 18:5 0 1SA 18:6 1SA 18:9 0 1SA 18:10 1SA 18:13 0 1SA 18:14 1SA 18:16 0 1SA 18:17 1SA 18:17 0 1SA 18:18 1SA 18:24 0 1SA 18:25 1SA 18:27 0 1SA 18:28 1SA 18:29 0 1SA 18:30 1SA 18:30 0 1SA 19:1 1SA 19:3 0 1SA 19:4 1SA 19:7 0 1SA 19:8 1SA 19:10 0 1SA 19:11 1SA 19:13 0 1SA 19:14 1SA 19:14 0 1SA 19:15 1SA 19:24 0 1SA 20:1 1SA 20:4 0 1SA 20:5 1SA 20:8 0 1SA 20:9 1SA 20:9 0 1SA 20:10 1SA 20:10 0 1SA 20:11 1SA 20:11 0 1SA 20:12 1SA 20:17 0 1SA 20:18 1SA 20:23 0 1SA 20:24 1SA 20:26 0 1SA 20:27 1SA 20:27 40 1SA 20:28 1SA 20:29 0 1SA 20:30 1SA 20:31 0 1SA 20:32 1SA 20:33 0 1SA 20:34 1SA 20:34 0 1SA 20:35 1SA 20:42 0 1SA 21:1 1SA 21:5 0 1SA 21:6 1SA 21:9 0 1SA 21:10 1SA 21:16 0 1SA 22:1 1SA 22:4 0 1SA 22:5 1SA 22:5 0 1SA 22:6 1SA 22:8 0 1SA 22:9 1SA 22:11 0 1SA 22:12 1SA 22:13 0 1SA 22:14 1SA 22:17 0 1SA 22:18 1SA 23:2 48 1SA 23:3 1SA 23:3 0 1SA 23:4 1SA 23:4 29 1SA 23:5 1SA 23:5 0 1SA 23:6 1SA 23:9 0 1SA 23:10 1SA 23:11 84 1SA 23:12 1SA 23:12 0 1SA 23:13 1SA 23:15 0 1SA 23:16 1SA 23:18 0 1SA 23:19 1SA 24:2 0 1SA 24:3 1SA 24:6 0 1SA 24:7 1SA 24:8 0 1SA 24:9 1SA 24:9 0 1SA 24:10 1SA 24:16 0 1SA 24:17 1SA 24:23 0 1SA 25:1 1SA 25:1 0 1SA 25:2 1SA 25:31 0 1SA 25:32 1SA 25:43 0 1SA 25:44 1SA 26:7 0 1SA 26:8 1SA 26:9 0 1SA 26:10 1SA 26:14 0 1SA 26:15 1SA 26:24 0 1SA 26:25 1SA 26:25 0 1SA 27:1 1SA 27:4 0 1SA 27:5 1SA 27:6 0 1SA 27:7 1SA 27:12 0 1SA 28:1 1SA 28:2 0 1SA 28:3 1SA 28:14 0 1SA 28:15 1SA 28:15 0 1SA 28:16 1SA 28:25 0 1SA 29:1 1SA 29:3 0 1SA 29:4 1SA 29:5 0 1SA 29:6 1SA 29:7 0 1SA 29:8 1SA 29:11 0 1SA 30:1 1SA 30:6 0 1SA 30:7 1SA 30:12 0 1SA 30:13 1SA 30:21 0 1SA 30:22 1SA 30:22 0 1SA 30:23 1SA 30:24 0 1SA 30:25 1SA 30:25 0 1SA 30:26 1SA 30:28 0 1SA 30:29 1SA 30:31 0 1SA 31:1 1SA 31:7 0 1SA 31:8 1SA 31:13 0 2SA 1:1 2SA 1:12 0 2SA 1:13 2SA 1:16 0 2SA 1:17 2SA 1:27 0 2SA 2:1 2SA 2:4 0 2SA 2:5 2SA 2:7 0 2SA 2:8 2SA 2:9 0 2SA 2:10 2SA 2:11 0 2SA 2:12 2SA 3:1 0 2SA 3:2 2SA 3:5 0 2SA 3:6 2SA 3:11 0 2SA 3:12 2SA 3:13 0 2SA 3:14 2SA 3:30 0 2SA 3:31 2SA 3:32 0 2SA 3:33 2SA 3:37 0 2SA 3:38 2SA 3:39 0 2SA 4:1 2SA 4:3 0 2SA 4:4 2SA 4:8 0 2SA 4:9 2SA 4:12 0 2SA 5:1 2SA 5:3 0 2SA 5:4 2SA 5:10 0 2SA 5:11 2SA 5:12 0 2SA 5:13 2SA 5:16 0 2SA 5:17 2SA 5:21 0 2SA 5:22 2SA 5:25 0 2SA 6:1 2SA 6:23 0 2SA 7:1 2SA 7:3 0 2SA 7:4 2SA 7:17 0 2SA 7:18 2SA 7:24 0 2SA 7:25 2SA 7:29 0 2SA 8:1 2SA 8:8 0 2SA 8:9 2SA 8:18 0 2SA 9:1 2SA 9:13 0 2SA 10:1 2SA 10:17 14 2SA 10:18 2SA 10:19 0 2SA 11:1 2SA 11:1 0 2SA 11:2 2SA 11:15 0 2SA 11:16 2SA 11:24 0 2SA 11:25 2SA 11:27 0 2SA 12:1 2SA 12:10 0 2SA 12:11 2SA 12:12 0 2SA 12:13 2SA 12:13 40 2SA 12:14 2SA 12:25 0 2SA 12:26 2SA 12:31 0 2SA 13:1 2SA 13:22 0 2SA 13:23 2SA 13:27 0 2SA 13:28 2SA 13:30 0 2SA 13:31 2SA 13:31 0 2SA 13:32 2SA 13:33 0 2SA 13:34 2SA 13:39 0 2SA 14:1 2SA 14:4 0 2SA 14:5 2SA 14:7 0 2SA 14:8 2SA 14:9 0 2SA 14:10 2SA 14:12 0 2SA 14:13 2SA 14:17 0 2SA 14:18 2SA 14:20 0 2SA 14:21 2SA 14:23 0 2SA 14:24 2SA 14:24 0 2SA 14:25 2SA 14:27 0 2SA 14:28 2SA 14:30 0 2SA 14:31 2SA 14:33 0 2SA 15:1 2SA 15:6 0 2SA 15:7 2SA 15:9 0 2SA 15:10 2SA 15:26 0 2SA 15:27 2SA 16:9 0 2SA 16:10 2SA 16:10 0 2SA 16:11 2SA 16:13 0 2SA 16:14 2SA 16:13 25 2SA 16:14 2SA 16:19 0 2SA 16:20 2SA 16:23 0 2SA 17:1 2SA 17:4 0 2SA 17:5 2SA 17:6 0 2SA 17:7 2SA 17:13 0 2SA 17:14 2SA 17:14 0 2SA 17:15 2SA 17:20 0 2SA 17:21 2SA 17:23 0 2SA 17:24 2SA 17:26 0 2SA 17:27 2SA 18:2 70 2SA 18:3 2SA 18:3 0 2SA 18:4 2SA 18:17 0 2SA 18:18 2SA 18:18 0 2SA 18:19 2SA 18:28 46 2SA 18:29 2SA 18:31 0 2SA 18:32 2SA 18:32 0 2SA 19:1 2SA 19:5 0 2SA 19:6 2SA 19:8 0 2SA 19:9 2SA 19:9 0 2SA 19:10 2SA 19:11 0 2SA 19:12 2SA 19:21 0 2SA 19:22 2SA 19:22 0 2SA 19:23 2SA 19:24 0 2SA 19:25 2SA 19:29 0 2SA 19:30 2SA 19:31 0 2SA 19:32 2SA 19:38 0 2SA 19:39 2SA 19:40 0 2SA 19:41 2SA 19:42 0 2SA 19:43 2SA 19:43 0 2SA 19:44 2SA 19:44 0 2SA 20:1 2SA 20:3 0 2SA 20:4 2SA 20:5 0 2SA 20:6 2SA 20:8 0 2SA 20:9 2SA 20:10 68 2SA 20:11 2SA 20:14 61 2SA 20:15 2SA 20:19 0 2SA 20:20 2SA 20:22 0 2SA 20:23 2SA 20:26 0 2SA 21:1 2SA 21:1 55 2SA 21:2 2SA 21:6 77 2SA 21:7 2SA 21:14 0 2SA 21:15 2SA 21:17 0 2SA 21:18 2SA 21:18 0 2SA 21:19 2SA 21:19 0 2SA 21:20 2SA 21:22 0 2SA 22:1 2SA 22:51 0 2SA 23:1 2SA 23:7 0 2SA 23:8 2SA 23:8 0 2SA 23:9 2SA 23:10 0 2SA 23:11 2SA 23:12 0 2SA 23:13 2SA 23:17 0 2SA 23:18 2SA 23:19 0 2SA 23:20 2SA 23:23 0 2SA 23:24 2SA 23:25 0 2SA 23:26 2SA 23:26 0 2SA 23:27 2SA 23:27 0 2SA 23:28 2SA 23:28 0 2SA 23:29 2SA 23:29 0 2SA 23:30 2SA 23:29 41 2SA 23:30 2SA 23:30 0 2SA 23:31 2SA 23:31 0 2SA 23:32 2SA 23:32 0 2SA 23:33 2SA 23:33 0 2SA 23:34 2SA 23:34 0 2SA 23:35 2SA 23:34 54 2SA 23:35 2SA 23:35 0 2SA 23:36 2SA 23:36 0 2SA 23:37 2SA 23:36 62 2SA 23:37 2SA 23:37 0 2SA 23:38 2SA 23:37 21 2SA 23:38 2SA 23:38 0 2SA 23:39 2SA 23:39 0 2SA 24:1 2SA 24:2 0 2SA 24:3 2SA 24:10 28 2SA 24:11 2SA 24:11 29 2SA 24:12 2SA 24:13 0 2SA 24:14 2SA 24:16 0 2SA 24:17 2SA 24:17 0 2SA 24:18 2SA 24:23 42 2SA 24:24 1KI 1:27 0 1KI 1:28 1KI 1:31 0 1KI 1:32 1KI 1:53 0 1KI 2:1 1KI 2:6 0 1KI 2:7 1KI 2:10 0 1KI 2:11 1KI 2:22 0 1KI 2:23 1KI 2:25 0 1KI 2:26 1KI 2:27 0 1KI 2:28 1KI 2:38 0 1KI 2:39 1KI 3:2 0 1KI 3:3 1KI 3:14 0 1KI 3:15 1KI 3:15 0 1KI 3:16 1KI 3:23 0 1KI 3:24 1KI 3:28 0 1KI 4:1 1KI 4:1 0 1KI 4:2 1KI 4:2 0 1KI 4:3 1KI 4:4 0 1KI 4:5 1KI 4:6 0 1KI 4:7 1KI 4:7 0 1KI 4:8 1KI 4:8 0 1KI 4:9 1KI 4:9 0 1KI 4:10 1KI 4:10 0 1KI 4:11 1KI 4:11 0 1KI 4:12 1KI 4:12 0 1KI 4:13 1KI 4:13 0 1KI 4:14 1KI 4:16 0 1KI 4:17 1KI 4:17 0 1KI 4:18 1KI 4:18 0 1KI 4:19 1KI 5:1 0 1KI 5:2 1KI 5:5 0 1KI 5:6 1KI 5:8 0 1KI 5:9 1KI 5:14 0 1KI 5:15 1KI 5:15 0 1KI 5:16 1KI 5:25 0 1KI 5:26 1KI 5:28 0 1KI 5:29 1KI 5:32 0 1KI 6:1 1KI 6:10 0 1KI 6:11 1KI 6:13 0 1KI 6:14 1KI 7:12 0 1KI 7:13 1KI 7:26 0 1KI 7:27 1KI 7:37 0 1KI 7:38 1KI 7:39 0 1KI 7:40 1KI 7:50 0 1KI 7:51 1KI 7:51 0 1KI 8:1 1KI 8:11 0 1KI 8:12 1KI 8:21 0 1KI 8:22 1KI 8:32 0 1KI 8:33 1KI 8:34 0 1KI 8:35 1KI 8:36 0 1KI 8:37 1KI 8:53 0 1KI 8:54 1KI 9:1 0 1KI 9:2 1KI 9:9 0 1KI 9:10 1KI 9:13 0 1KI 9:14 1KI 9:22 0 1KI 9:23 1KI 9:28 0 1KI 10:1 1KI 10:13 0 1KI 10:14 1KI 10:17 0 1KI 10:18 1KI 10:25 0 1KI 10:26 1KI 10:29 0 1KI 11:1 1KI 11:6 0 1KI 11:7 1KI 11:10 0 1KI 11:11 1KI 11:25 0 1KI 11:26 1KI 11:28 0 1KI 11:29 1KI 11:39 0 1KI 11:40 1KI 11:43 0 1KI 12:1 1KI 12:17 0 1KI 12:18 1KI 12:19 0 1KI 12:20 1KI 12:21 0 1KI 12:22 1KI 12:24 0 1KI 12:25 1KI 12:33 0 1KI 13:1 1KI 13:10 0 1KI 13:11 1KI 13:20 43 1KI 13:21 1KI 13:32 0 1KI 13:33 1KI 13:34 0 1KI 14:1 1KI 14:4 0 1KI 14:5 1KI 14:9 0 1KI 14:10 1KI 14:20 0 1KI 14:21 1KI 14:24 0 1KI 14:25 1KI 14:31 0 1KI 15:1 1KI 15:8 0 1KI 15:9 1KI 15:24 0 1KI 15:25 1KI 15:32 0 1KI 15:33 1KI 15:34 0 1KI 16:1 1KI 16:7 0 1KI 16:8 1KI 16:14 0 1KI 16:15 1KI 16:20 0 1KI 16:21 1KI 16:22 0 1KI 16:23 1KI 16:28 0 1KI 16:29 1KI 16:34 0 1KI 17:1 1KI 17:1 0 1KI 17:2 1KI 17:7 0 1KI 17:8 1KI 17:13 0 1KI 17:14 1KI 17:16 0 1KI 17:17 1KI 17:24 0 1KI 18:1 1KI 18:14 0 1KI 18:15 1KI 19:14 0 1KI 19:15 1KI 19:21 0 1KI 20:1 1KI 20:22 0 1KI 20:23 1KI 20:25 0 1KI 20:26 1KI 20:30 0 1KI 20:31 1KI 20:34 0 1KI 20:35 1KI 20:43 0 1KI 21:1 1KI 21:16 0 1KI 21:17 1KI 21:26 0 1KI 21:27 1KI 21:27 0 1KI 21:28 1KI 22:1 0 1KI 22:2 1KI 22:40 0 1KI 22:41 1KI 22:51 0 1KI 22:52 2KI 1:2 0 2KI 1:3 2KI 1:14 0 2KI 1:15 2KI 1:17 49 2KI 1:18 2KI 1:18 0 2KI 2:1 2KI 2:22 0 2KI 2:23 2KI 2:25 0 2KI 3:1 2KI 3:3 0 2KI 3:4 2KI 3:27 0 2KI 4:1 2KI 4:7 0 2KI 4:8 2KI 4:37 0 2KI 4:38 2KI 4:41 0 2KI 4:42 2KI 4:44 0 2KI 5:1 2KI 5:19 0 2KI 5:20 2KI 5:27 0 2KI 6:1 2KI 6:7 0 2KI 6:8 2KI 6:23 0 2KI 6:24 2KI 6:33 0 2KI 7:1 2KI 7:2 0 2KI 7:3 2KI 7:20 0 2KI 8:1 2KI 8:6 0 2KI 8:7 2KI 8:15 0 2KI 8:16 2KI 8:24 0 2KI 8:25 2KI 8:29 0 2KI 9:1 2KI 9:28 0 2KI 9:29 2KI 9:37 0 2KI 10:1 2KI 10:14 0 2KI 10:15 2KI 10:17 0 2KI 10:18 2KI 10:29 0 2KI 10:30 2KI 10:36 0 2KI 11:1 2KI 11:3 0 2KI 11:4 2KI 11:12 0 2KI 11:13 2KI 11:14 0 2KI 11:15 2KI 11:16 0 2KI 11:17 2KI 11:20 0 2KI 12:1 2KI 12:1 0 2KI 12:2 2KI 12:6 0 2KI 12:7 2KI 12:17 0 2KI 12:18 2KI 12:22 0 2KI 13:1 2KI 13:9 0 2KI 13:10 2KI 13:13 0 2KI 13:14 2KI 13:19 0 2KI 13:20 2KI 13:21 0 2KI 13:22 2KI 13:25 0 2KI 14:1 2KI 14:7 0 2KI 14:8 2KI 14:16 0 2KI 14:17 2KI 14:22 0 2KI 14:23 2KI 14:29 0 2KI 15:1 2KI 15:7 0 2KI 15:8 2KI 15:12 0 2KI 15:13 2KI 15:15 0 2KI 15:16 2KI 15:16 0 2KI 15:17 2KI 15:22 0 2KI 15:23 2KI 15:26 0 2KI 15:27 2KI 15:31 0 2KI 15:32 2KI 15:38 0 2KI 16:1 2KI 16:6 0 2KI 16:7 2KI 16:20 0 2KI 17:1 2KI 17:6 0 2KI 17:7 2KI 17:23 0 2KI 17:24 2KI 17:41 0 2KI 18:1 2KI 18:8 0 2KI 18:9 2KI 18:12 0 2KI 18:13 2KI 18:16 0 2KI 18:17 2KI 19:14 0 2KI 19:15 2KI 19:19 0 2KI 19:20 2KI 19:31 0 2KI 19:32 2KI 19:37 0 2KI 20:1 2KI 20:3 0 2KI 20:4 2KI 20:11 0 2KI 20:12 2KI 20:21 0 2KI 21:1 2KI 21:11 0 2KI 21:12 2KI 21:18 0 2KI 21:19 2KI 21:26 0 2KI 22:1 2KI 22:2 0 2KI 22:3 2KI 23:30 0 2KI 23:31 2KI 23:35 0 2KI 23:36 2KI 24:7 0 2KI 24:8 2KI 24:17 0 2KI 24:18 2KI 24:20 0 2KI 25:1 2KI 25:7 0 2KI 25:8 2KI 25:22 0 2KI 25:23 2KI 25:24 0 2KI 25:25 2KI 25:26 0 2KI 25:27 1CH 1:4 0 1CH 1:5 1CH 1:5 0 1CH 1:6 1CH 1:7 0 1CH 1:8 1CH 1:9 0 1CH 1:10 1CH 1:10 0 1CH 1:11 1CH 1:12 0 1CH 1:13 1CH 1:16 0 1CH 1:17 1CH 1:17 0 1CH 1:18 1CH 1:23 0 1CH 1:24 1CH 1:27 0 1CH 1:28 1CH 1:28 0 1CH 1:29 1CH 1:31 0 1CH 1:32 1CH 1:32 0 1CH 1:33 1CH 1:33 0 1CH 1:34 1CH 1:34 0 1CH 1:35 1CH 1:34 47 1CH 1:35 1CH 1:35 0 1CH 1:36 1CH 1:36 0 1CH 1:37 1CH 1:37 0 1CH 1:38 1CH 1:39 0 1CH 1:40 1CH 1:40 65 1CH 1:41 1CH 1:41 0 1CH 1:42 1CH 1:41 29 1CH 1:42 1CH 1:42 0 1CH 1:43 1CH 1:51 17 1CH 1:52 1CH 1:54 0 1CH 2:1 1CH 2:2 0 1CH 2:3 1CH 2:3 0 1CH 2:4 1CH 2:4 0 1CH 2:5 1CH 2:5 0 1CH 2:6 1CH 2:6 0 1CH 2:7 1CH 2:7 0 1CH 2:8 1CH 2:20 0 1CH 2:21 1CH 2:26 0 1CH 2:27 1CH 2:30 0 1CH 2:31 1CH 2:32 0 1CH 2:33 1CH 2:46 0 1CH 2:47 1CH 2:49 0 1CH 2:50 1CH 2:53 0 1CH 2:54 1CH 2:55 0 1CH 3:1 1CH 3:4 0 1CH 3:5 1CH 3:9 0 1CH 3:10 1CH 3:21 0 1CH 3:22 1CH 3:24 0 1CH 4:1 1CH 4:2 0 1CH 4:3 1CH 4:12 0 1CH 4:13 1CH 4:14 0 1CH 4:15 1CH 4:18 0 1CH 4:19 1CH 4:23 0 1CH 4:24 1CH 4:27 0 1CH 4:28 1CH 5:2 0 1CH 5:3 1CH 5:10 0 1CH 5:11 1CH 5:13 0 1CH 5:14 1CH 5:17 0 1CH 5:18 1CH 5:22 0 1CH 5:23 1CH 5:26 0 1CH 5:27 1CH 5:28 0 1CH 5:29 1CH 5:29 0 1CH 5:30 1CH 5:29 42 1CH 5:30 1CH 5:41 0 1CH 6:1 1CH 6:13 0 1CH 6:14 1CH 6:15 0 1CH 6:16 1CH 6:28 0 1CH 6:29 1CH 6:32 0 1CH 6:33 1CH 6:34 0 1CH 6:35 1CH 6:38 0 1CH 6:39 1CH 6:41 0 1CH 6:42 1CH 6:44 0 1CH 6:45 1CH 6:45 0 1CH 6:46 1CH 6:46 0 1CH 6:47 1CH 6:47 0 1CH 6:48 1CH 6:50 0 1CH 6:51 1CH 6:54 0 1CH 6:55 1CH 6:55 0 1CH 6:56 1CH 6:56 0 1CH 6:57 1CH 6:58 0 1CH 6:59 1CH 6:61 0 1CH 6:62 1CH 6:66 0 1CH 7:1 1CH 7:1 0 1CH 7:2 1CH 7:2 0 1CH 7:3 1CH 7:5 0 1CH 7:6 1CH 7:7 0 1CH 7:8 1CH 7:9 0 1CH 7:10 1CH 7:13 0 1CH 7:14 1CH 7:19 0 1CH 7:20 1CH 7:29 0 1CH 7:30 1CH 7:40 0 1CH 8:1 1CH 8:2 0 1CH 8:3 1CH 8:28 0 1CH 8:29 1CH 8:32 0 1CH 8:33 1CH 8:34 0 1CH 8:35 1CH 8:40 0 1CH 9:1 1CH 9:1 0 1CH 9:2 1CH 9:9 0 1CH 9:10 1CH 9:11 0 1CH 9:12 1CH 9:32 0 1CH 9:33 1CH 9:34 0 1CH 9:35 1CH 9:38 0 1CH 9:39 1CH 9:44 0 1CH 10:1 1CH 10:4 79 1CH 10:5 1CH 10:5 0 1CH 10:6 1CH 10:7 0 1CH 10:8 1CH 10:10 0 1CH 10:11 1CH 10:14 0 1CH 11:1 1CH 11:3 0 1CH 11:4 1CH 11:9 0 1CH 11:10 1CH 11:10 0 1CH 11:11 1CH 11:21 0 1CH 11:22 1CH 11:25 0 1CH 11:26 1CH 11:26 0 1CH 11:27 1CH 11:27 0 1CH 11:28 1CH 11:28 0 1CH 11:29 1CH 11:29 0 1CH 11:30 1CH 11:30 0 1CH 11:31 1CH 11:31 68 1CH 11:32 1CH 11:32 0 1CH 11:33 1CH 11:32 51 1CH 11:33 1CH 11:33 0 1CH 11:34 1CH 11:34 0 1CH 11:35 1CH 11:35 0 1CH 11:36 1CH 11:36 0 1CH 11:37 1CH 11:37 0 1CH 11:38 1CH 11:38 0 1CH 11:39 1CH 11:39 0 1CH 11:40 1CH 11:40 0 1CH 11:41 1CH 11:41 0 1CH 11:42 1CH 11:42 0 1CH 11:43 1CH 11:43 0 1CH 11:44 1CH 11:44 0 1CH 11:45 1CH 11:44 66 1CH 11:45 1CH 11:45 0 1CH 11:46 1CH 11:47 0 1CH 12:1 1CH 12:9 0 1CH 12:10 1CH 12:14 49 1CH 12:15 1CH 12:16 0 1CH 12:17 1CH 12:18 0 1CH 12:19 1CH 12:19 0 1CH 12:20 1CH 12:23 0 1CH 12:24 1CH 12:24 0 1CH 12:25 1CH 12:25 0 1CH 12:26 1CH 12:26 0 1CH 12:27 1CH 12:27 0 1CH 12:28 1CH 12:28 0 1CH 12:29 1CH 12:29 0 1CH 12:30 1CH 12:30 0 1CH 12:31 1CH 12:31 0 1CH 12:32 1CH 12:32 0 1CH 12:33 1CH 12:33 0 1CH 12:34 1CH 12:34 0 1CH 12:35 1CH 12:35 0 1CH 12:36 1CH 12:36 0 1CH 12:37 1CH 12:37 0 1CH 12:38 1CH 12:41 0 1CH 13:1 1CH 13:14 0 1CH 14:1 1CH 14:2 0 1CH 14:3 1CH 14:12 0 1CH 14:13 1CH 15:2 0 1CH 15:3 1CH 15:5 0 1CH 15:6 1CH 15:6 0 1CH 15:7 1CH 15:7 0 1CH 15:8 1CH 15:8 0 1CH 15:9 1CH 15:9 0 1CH 15:10 1CH 15:10 0 1CH 15:11 1CH 15:15 0 1CH 15:16 1CH 15:16 0 1CH 15:17 1CH 15:17 63 1CH 15:18 1CH 15:25 0 1CH 15:26 1CH 15:29 0 1CH 16:1 1CH 16:4 0 1CH 16:5 1CH 16:7 0 1CH 16:8 1CH 16:22 0 1CH 16:23 1CH 16:36 0 1CH 16:37 1CH 16:43 0 1CH 17:1 1CH 17:2 0 1CH 17:3 1CH 17:7 27 1CH 17:8 1CH 17:15 0 1CH 17:16 1CH 17:27 0 1CH 18:1 1CH 18:8 0 1CH 18:9 1CH 18:17 0 1CH 19:1 1CH 19:3 0 1CH 19:4 1CH 19:7 0 1CH 19:8 1CH 19:12 57 1CH 19:13 1CH 19:15 0 1CH 19:16 1CH 19:19 0 1CH 20:1 1CH 20:3 0 1CH 20:4 1CH 20:8 0 1CH 21:1 1CH 21:7 0 1CH 21:8 1CH 21:8 0 1CH 21:9 1CH 21:12 0 1CH 21:13 1CH 21:15 0 1CH 21:16 1CH 21:17 0 1CH 21:18 1CH 21:26 0 1CH 21:27 1CH 21:30 0 1CH 22:1 1CH 22:1 0 1CH 22:2 1CH 22:4 0 1CH 22:5 1CH 22:6 0 1CH 22:7 1CH 22:19 0 1CH 23:1 1CH 23:6 0 1CH 23:7 1CH 23:6 42 1CH 23:7 1CH 23:7 0 1CH 23:8 1CH 23:8 0 1CH 23:9 1CH 23:9 0 1CH 23:10 1CH 23:11 0 1CH 23:12 1CH 23:12 0 1CH 23:13 1CH 23:18 0 1CH 23:19 1CH 23:20 0 1CH 23:21 1CH 23:32 0 1CH 24:1 1CH 24:5 0 1CH 24:6 1CH 24:6 0 1CH 24:7 1CH 24:18 0 1CH 24:19 1CH 24:19 0 1CH 24:20 1CH 24:31 0 1CH 25:1 1CH 25:3 0 1CH 25:4 1CH 25:6 84 1CH 25:7 1CH 25:8 0 1CH 25:9 1CH 25:31 0 1CH 26:1 1CH 26:5 0 1CH 26:6 1CH 26:9 0 1CH 26:10 1CH 26:13 0 1CH 26:14 1CH 26:14 0 1CH 26:15 1CH 26:28 0 1CH 26:29 1CH 26:32 0 1CH 27:1 1CH 27:1 0 1CH 27:2 1CH 27:4 0 1CH 27:5 1CH 27:6 0 1CH 27:7 1CH 27:7 0 1CH 27:8 1CH 27:8 0 1CH 27:9 1CH 27:9 0 1CH 27:10 1CH 27:10 0 1CH 27:11 1CH 27:11 0 1CH 27:12 1CH 27:12 0 1CH 27:13 1CH 27:13 0 1CH 27:14 1CH 27:14 0 1CH 27:15 1CH 27:15 0 1CH 27:16 1CH 27:16 0 1CH 27:17 1CH 27:16 64 1CH 27:17 1CH 27:17 0 1CH 27:18 1CH 27:18 0 1CH 27:19 1CH 27:19 0 1CH 27:20 1CH 27:20 0 1CH 27:21 1CH 27:21 0 1CH 27:22 1CH 27:21 58 1CH 27:22 1CH 27:24 0 1CH 27:25 1CH 27:25 0 1CH 27:26 1CH 27:25 36 1CH 27:26 1CH 27:27 0 1CH 27:28 1CH 27:28 0 1CH 27:29 1CH 27:28 69 1CH 27:29 1CH 27:29 0 1CH 27:30 1CH 27:30 0 1CH 27:31 1CH 27:33 47 1CH 27:34 1CH 27:34 0 1CH 28:1 1CH 28:8 0 1CH 28:9 1CH 28:10 0 1CH 28:11 1CH 28:19 0 1CH 28:20 1CH 28:21 0 1CH 29:1 1CH 29:9 0 1CH 29:10 1CH 29:19 0 1CH 29:20 1CH 29:25 0 1CH 29:26 1CH 29:30 0 2CH 1:1 2CH 1:10 0 2CH 1:11 2CH 1:13 0 2CH 1:14 2CH 2:1 0 2CH 2:2 2CH 2:9 0 2CH 2:10 2CH 2:15 0 2CH 2:16 2CH 3:7 0 2CH 3:8 2CH 3:13 0 2CH 3:14 2CH 3:14 0 2CH 3:15 2CH 3:15 0 2CH 3:16 2CH 3:17 0 2CH 4:1 2CH 4:1 0 2CH 4:2 2CH 4:5 0 2CH 4:6 2CH 4:6 0 2CH 4:7 2CH 4:7 0 2CH 4:8 2CH 4:11 39 2CH 4:12 2CH 4:18 0 2CH 4:19 2CH 5:1 0 2CH 5:2 2CH 5:1 33 2CH 5:2 2CH 5:10 0 2CH 5:11 2CH 5:14 0 2CH 6:1 2CH 6:23 0 2CH 6:24 2CH 6:25 0 2CH 6:26 2CH 6:27 0 2CH 6:28 2CH 6:31 0 2CH 6:32 2CH 6:40 0 2CH 6:41 2CH 6:42 0 2CH 7:1 2CH 7:4 0 2CH 7:5 2CH 7:6 0 2CH 7:7 2CH 7:11 0 2CH 7:12 2CH 7:22 0 2CH 8:1 2CH 8:9 0 2CH 8:10 2CH 8:11 0 2CH 8:12 2CH 8:16 0 2CH 8:17 2CH 8:18 0 2CH 9:1 2CH 9:12 0 2CH 9:13 2CH 9:16 0 2CH 9:17 2CH 9:21 0 2CH 9:22 2CH 9:24 0 2CH 9:25 2CH 9:31 0 2CH 10:1 2CH 10:5 0 2CH 10:6 2CH 10:11 0 2CH 10:12 2CH 10:16 0 2CH 10:17 2CH 10:18 0 2CH 10:19 2CH 10:19 0 2CH 11:1 2CH 11:1 0 2CH 11:2 2CH 11:4 0 2CH 11:5 2CH 11:12 0 2CH 11:13 2CH 12:1 0 2CH 12:2 2CH 12:4 0 2CH 12:5 2CH 12:8 0 2CH 12:9 2CH 12:12 0 2CH 12:13 2CH 12:14 0 2CH 12:15 2CH 12:16 0 2CH 13:1 2CH 13:3 0 2CH 13:4 2CH 13:3 53 2CH 13:4 2CH 13:5 0 2CH 13:6 2CH 13:9 0 2CH 13:10 2CH 13:20 0 2CH 13:21 2CH 13:21 0 2CH 13:22 2CH 13:23 0 2CH 14:1 2CH 14:6 0 2CH 14:7 2CH 14:7 44 2CH 14:8 2CH 14:10 0 2CH 14:11 2CH 14:14 0 2CH 15:1 2CH 15:2 0 2CH 15:3 2CH 15:7 0 2CH 15:8 2CH 15:9 0 2CH 15:10 2CH 15:19 0 2CH 16:1 2CH 16:5 0 2CH 16:6 2CH 16:6 0 2CH 16:7 2CH 16:14 0 2CH 17:1 2CH 17:6 0 2CH 17:7 2CH 17:11 0 2CH 17:12 2CH 17:14 0 2CH 17:15 2CH 17:15 0 2CH 17:16 2CH 17:16 0 2CH 17:17 2CH 17:17 0 2CH 17:18 2CH 17:18 0 2CH 17:19 2CH 17:19 0 2CH 18:1 2CH 18:17 0 2CH 18:18 2CH 18:22 0 2CH 18:23 2CH 18:27 0 2CH 18:28 2CH 19:4 25 2CH 19:5 2CH 19:11 0 2CH 20:1 2CH 20:13 0 2CH 20:14 2CH 20:30 0 2CH 20:31 2CH 21:3 0 2CH 21:4 2CH 21:11 0 2CH 21:12 2CH 22:1 0 2CH 22:2 2CH 22:12 0 2CH 23:1 2CH 23:11 0 2CH 23:12 2CH 23:13 0 2CH 23:14 2CH 23:15 0 2CH 23:16 2CH 23:21 0 2CH 24:1 2CH 24:14 0 2CH 24:15 2CH 24:16 0 2CH 24:17 2CH 24:19 0 2CH 24:20 2CH 24:22 0 2CH 24:23 2CH 24:25 0 2CH 24:26 2CH 24:27 0 2CH 25:1 2CH 25:4 0 2CH 25:5 2CH 25:10 0 2CH 25:11 2CH 25:12 0 2CH 25:13 2CH 25:13 0 2CH 25:14 2CH 25:16 0 2CH 25:17 2CH 25:24 0 2CH 25:25 2CH 26:2 0 2CH 26:3 2CH 26:5 0 2CH 26:6 2CH 26:10 0 2CH 26:11 2CH 26:23 0 2CH 27:1 2CH 27:5 87 2CH 27:6 2CH 27:9 0 2CH 28:1 2CH 28:5 0 2CH 28:6 2CH 28:7 0 2CH 28:8 2CH 28:8 0 2CH 28:9 2CH 28:11 0 2CH 28:12 2CH 28:13 0 2CH 28:14 2CH 28:15 0 2CH 28:16 2CH 28:27 0 2CH 29:1 2CH 29:11 0 2CH 29:12 2CH 29:13 0 2CH 29:14 2CH 29:14 55 2CH 29:15 2CH 29:17 0 2CH 29:18 2CH 29:19 0 2CH 29:20 2CH 29:25 0 2CH 29:26 2CH 29:26 0 2CH 29:27 2CH 29:30 0 2CH 29:31 2CH 29:36 0 2CH 30:1 2CH 30:9 0 2CH 30:10 2CH 30:19 0 2CH 30:20 2CH 30:20 0 2CH 30:21 2CH 30:21 0 2CH 30:22 2CH 30:22 0 2CH 30:23 2CH 30:24 47 2CH 30:25 2CH 30:26 0 2CH 30:27 2CH 30:27 0 2CH 31:1 2CH 31:1 0 2CH 31:2 2CH 31:2 0 2CH 31:3 2CH 31:6 0 2CH 31:7 2CH 31:7 0 2CH 31:8 2CH 31:8 0 2CH 31:9 2CH 31:10 0 2CH 31:11 2CH 31:21 0 2CH 32:1 2CH 32:8 0 2CH 32:9 2CH 32:19 0 2CH 32:20 2CH 32:20 0 2CH 32:21 2CH 32:23 0 2CH 32:24 2CH 32:33 0 2CH 33:1 2CH 33:9 0 2CH 33:10 2CH 33:20 0 2CH 33:21 2CH 33:25 0 2CH 34:1 2CH 34:7 0 2CH 34:8 2CH 34:21 0 2CH 34:22 2CH 34:22 0 2CH 34:23 2CH 34:23 0 2CH 34:24 2CH 34:26 55 2CH 34:27 2CH 34:28 0 2CH 34:29 2CH 34:33 0 2CH 35:1 2CH 35:6 0 2CH 35:7 2CH 35:7 0 2CH 35:8 2CH 35:18 0 2CH 35:19 2CH 35:24 0 2CH 35:25 2CH 36:4 0 2CH 36:5 2CH 36:8 0 2CH 36:9 2CH 36:10 0 2CH 36:11 2CH 36:19 0 2CH 36:20 2CH 36:21 0 2CH 36:22 2CH 36:22 0 2CH 36:23 EZR 1:6 0 EZR 1:7 EZR 1:9 0 EZR 1:10 EZR 1:10 0 EZR 1:11 EZR 1:11 0 EZR 2:1 EZR 2:2 0 EZR 2:3 EZR 2:3 0 EZR 2:4 EZR 2:4 0 EZR 2:5 EZR 2:5 0 EZR 2:6 EZR 2:6 0 EZR 2:7 EZR 2:7 0 EZR 2:8 EZR 2:8 0 EZR 2:9 EZR 2:9 0 EZR 2:10 EZR 2:10 0 EZR 2:11 EZR 2:11 0 EZR 2:12 EZR 2:12 0 EZR 2:13 EZR 2:13 0 EZR 2:14 EZR 2:14 0 EZR 2:15 EZR 2:15 0 EZR 2:16 EZR 2:16 0 EZR 2:17 EZR 2:17 0 EZR 2:18 EZR 2:18 0 EZR 2:19 EZR 2:19 0 EZR 2:20 EZR 2:20 0 EZR 2:21 EZR 2:21 0 EZR 2:22 EZR 2:23 0 EZR 2:24 EZR 2:24 0 EZR 2:25 EZR 2:25 0 EZR 2:26 EZR 2:26 0 EZR 2:27 EZR 2:27 0 EZR 2:28 EZR 2:28 0 EZR 2:29 EZR 2:29 0 EZR 2:30 EZR 2:30 0 EZR 2:31 EZR 2:31 0 EZR 2:32 EZR 2:32 0 EZR 2:33 EZR 2:33 0 EZR 2:34 EZR 2:34 0 EZR 2:35 EZR 2:35 0 EZR 2:36 EZR 2:36 0 EZR 2:37 EZR 2:37 0 EZR 2:38 EZR 2:38 0 EZR 2:39 EZR 2:39 0 EZR 2:40 EZR 2:40 0 EZR 2:41 EZR 2:41 0 EZR 2:42 EZR 2:42 0 EZR 2:43 EZR 2:58 0 EZR 2:59 EZR 2:60 0 EZR 2:61 EZR 2:67 0 EZR 2:68 EZR 2:69 0 EZR 2:70 EZR 2:69 55 EZR 2:70 EZR 2:70 0 EZR 3:1 EZR 3:1 0 EZR 3:2 EZR 3:1 53 EZR 3:2 EZR 3:7 0 EZR 3:8 EZR 3:8 0 EZR 3:9 EZR 3:9 73 EZR 3:10 EZR 3:11 0 EZR 3:12 EZR 3:13 0 EZR 4:1 EZR 4:6 0 EZR 4:7 EZR 4:7 0 EZR 4:8 EZR 4:11 0 EZR 4:12 EZR 4:16 0 EZR 4:17 EZR 4:17 0 EZR 4:18 EZR 4:22 0 EZR 4:23 EZR 4:23 0 EZR 4:24 EZR 4:24 0 EZR 5:1 EZR 5:1 0 EZR 5:2 EZR 5:2 0 EZR 5:3 EZR 5:3 0 EZR 5:4 EZR 5:5 0 EZR 5:6 EZR 5:7 0 EZR 5:8 EZR 5:8 0 EZR 5:9 EZR 5:10 0 EZR 5:11 EZR 5:12 0 EZR 5:13 EZR 5:15 0 EZR 5:16 EZR 5:17 0 EZR 6:1 EZR 6:2 0 EZR 6:3 EZR 6:5 0 EZR 6:6 EZR 6:12 0 EZR 6:13 EZR 6:15 0 EZR 6:16 EZR 6:18 0 EZR 6:19 EZR 6:22 0 EZR 7:1 EZR 7:6 0 EZR 7:7 EZR 7:10 0 EZR 7:11 EZR 7:11 0 EZR 7:12 EZR 7:26 0 EZR 7:27 EZR 7:28 0 EZR 8:1 EZR 8:1 0 EZR 8:2 EZR 8:2 0 EZR 8:3 EZR 8:2 70 EZR 8:3 EZR 8:3 0 EZR 8:4 EZR 8:3 21 EZR 8:4 EZR 8:4 0 EZR 8:5 EZR 8:5 0 EZR 8:6 EZR 8:6 0 EZR 8:7 EZR 8:7 0 EZR 8:8 EZR 8:8 0 EZR 8:9 EZR 8:9 0 EZR 8:10 EZR 8:10 0 EZR 8:11 EZR 8:11 0 EZR 8:12 EZR 8:12 0 EZR 8:13 EZR 8:13 0 EZR 8:14 EZR 8:14 0 EZR 8:15 EZR 8:19 0 EZR 8:20 EZR 8:30 0 EZR 8:31 EZR 8:34 0 EZR 8:35 EZR 8:35 0 EZR 8:36 EZR 8:36 0 EZR 9:1 EZR 9:2 0 EZR 9:3 EZR 9:9 0 EZR 9:10 EZR 9:14 0 EZR 9:15 EZR 9:15 0 EZR 10:1 EZR 10:1 0 EZR 10:2 EZR 10:4 0 EZR 10:5 EZR 10:6 0 EZR 10:7 EZR 10:8 0 EZR 10:9 EZR 10:9 0 EZR 10:10 EZR 10:14 0 EZR 10:15 EZR 10:17 0 EZR 10:18 EZR 10:19 0 EZR 10:20 EZR 10:20 0 EZR 10:21 EZR 10:22 0 EZR 10:23 EZR 10:23 0 EZR 10:24 EZR 10:24 0 EZR 10:25 EZR 10:25 0 EZR 10:26 EZR 10:26 0 EZR 10:27 EZR 10:27 0 EZR 10:28 EZR 10:28 0 EZR 10:29 EZR 10:29 0 EZR 10:30 EZR 10:30 0 EZR 10:31 EZR 10:32 0 EZR 10:33 EZR 10:33 0 EZR 10:34 EZR 10:34 0 EZR 10:35 EZR 10:42 0 EZR 10:43 EZR 10:44 0 NEH 1:1 NEH 1:11 0 NEH 2:1 NEH 2:3 0 NEH 2:4 NEH 2:9 0 NEH 2:10 NEH 2:18 0 NEH 2:19 NEH 3:1 0 NEH 3:2 NEH 3:2 0 NEH 3:3 NEH 3:2 47 NEH 3:3 NEH 3:3 0 NEH 3:4 NEH 3:4 0 NEH 3:5 NEH 3:4 73 NEH 3:5 NEH 3:5 0 NEH 3:6 NEH 3:6 0 NEH 3:7 NEH 3:7 0 NEH 3:8 NEH 3:8 0 NEH 3:9 NEH 3:8 37 NEH 3:9 NEH 3:9 0 NEH 3:10 NEH 3:10 57 NEH 3:11 NEH 3:11 0 NEH 3:12 NEH 3:12 0 NEH 3:13 NEH 3:14 0 NEH 3:15 NEH 3:15 0 NEH 3:16 NEH 3:16 0 NEH 3:17 NEH 3:17 0 NEH 3:18 NEH 3:18 0 NEH 3:19 NEH 3:19 0 NEH 3:20 NEH 3:20 0 NEH 3:21 NEH 3:21 0 NEH 3:22 NEH 3:23 0 NEH 3:24 NEH 3:23 41 NEH 3:24 NEH 3:25 0 NEH 3:26 NEH 3:26 0 NEH 3:27 NEH 3:28 0 NEH 3:29 NEH 3:29 0 NEH 3:30 NEH 3:29 41 NEH 3:30 NEH 3:30 0 NEH 3:31 NEH 3:30 61 NEH 3:31 NEH 3:32 0 NEH 3:33 NEH 3:35 0 NEH 3:36 NEH 3:38 0 NEH 4:1 NEH 4:8 0 NEH 4:9 NEH 4:17 0 NEH 5:1 NEH 5:8 0 NEH 5:9 NEH 5:19 0 NEH 6:1 NEH 6:4 0 NEH 6:5 NEH 6:7 0 NEH 6:8 NEH 6:13 0 NEH 6:14 NEH 6:15 0 NEH 6:16 NEH 7:5 0 NEH 7:6 NEH 7:7 0 NEH 7:8 NEH 7:8 0 NEH 7:9 NEH 7:9 0 NEH 7:10 NEH 7:10 0 NEH 7:11 NEH 7:11 0 NEH 7:12 NEH 7:12 0 NEH 7:13 NEH 7:13 0 NEH 7:14 NEH 7:14 0 NEH 7:15 NEH 7:15 0 NEH 7:16 NEH 7:16 0 NEH 7:17 NEH 7:17 0 NEH 7:18 NEH 7:18 0 NEH 7:19 NEH 7:19 0 NEH 7:20 NEH 7:20 0 NEH 7:21 NEH 7:21 0 NEH 7:22 NEH 7:22 0 NEH 7:23 NEH 7:23 0 NEH 7:24 NEH 7:24 0 NEH 7:25 NEH 7:25 0 NEH 7:26 NEH 7:26 0 NEH 7:27 NEH 7:27 0 NEH 7:28 NEH 7:28 0 NEH 7:29 NEH 7:29 0 NEH 7:30 NEH 7:30 0 NEH 7:31 NEH 7:31 0 NEH 7:32 NEH 7:32 0 NEH 7:33 NEH 7:33 0 NEH 7:34 NEH 7:34 0 NEH 7:35 NEH 7:35 0 NEH 7:36 NEH 7:36 0 NEH 7:37 NEH 7:37 0 NEH 7:38 NEH 7:38 0 NEH 7:39 NEH 7:39 0 NEH 7:40 NEH 7:40 0 NEH 7:41 NEH 7:41 0 NEH 7:42 NEH 7:42 0 NEH 7:43 NEH 7:43 0 NEH 7:44 NEH 7:44 0 NEH 7:45 NEH 7:45 0 NEH 7:46 NEH 7:60 0 NEH 7:61 NEH 7:62 0 NEH 7:63 NEH 7:67 0 NEH 7:68 NEH 7:68 48 NEH 7:69 NEH 7:71 0 NEH 7:72 NEH 8:4 0 NEH 8:5 NEH 8:8 0 NEH 8:9 NEH 8:12 0 NEH 8:13 NEH 8:15 0 NEH 8:16 NEH 8:18 0 NEH 9:1 NEH 9:3 0 NEH 9:4 NEH 9:37 0 NEH 10:1 NEH 10:9 0 NEH 10:10 NEH 10:14 0 NEH 10:15 NEH 10:34 0 NEH 10:35 NEH 11:2 0 NEH 11:3 NEH 11:6 0 NEH 11:7 NEH 11:9 0 NEH 11:10 NEH 11:14 0 NEH 11:15 NEH 11:18 0 NEH 11:19 NEH 11:21 0 NEH 11:22 NEH 11:36 0 NEH 12:1 NEH 12:7 0 NEH 12:8 NEH 12:22 0 NEH 12:23 NEH 12:26 0 NEH 12:27 NEH 12:34 0 NEH 12:35 NEH 12:47 0 NEH 13:1 NEH 13:9 0 NEH 13:10 NEH 13:13 0 NEH 13:14 NEH 13:18 0 NEH 13:19 NEH 13:21 0 NEH 13:22 NEH 13:22 0 NEH 13:23 EST 1:9 0 EST 1:10 EST 1:15 0 EST 1:16 EST 1:22 0 EST 2:1 EST 2:4 0 EST 2:5 EST 2:20 0 EST 2:21 EST 2:23 0 EST 3:1 EST 3:7 0 EST 3:8 EST 3:15 0 EST 4:1 EST 4:12 0 EST 4:13 EST 4:17 0 EST 5:1 EST 5:2 0 EST 5:3 EST 5:14 0 EST 6:1 EST 7:4 0 EST 7:5 EST 7:8 0 EST 7:9 EST 7:10 0 EST 8:1 EST 8:2 0 EST 8:3 EST 8:6 0 EST 8:7 EST 8:14 0 EST 8:15 EST 9:4 0 EST 9:5 EST 9:11 0 EST 9:12 EST 9:19 0 EST 9:20 EST 9:28 0 EST 9:29 EST 9:32 0 EST 10:1 JOB 1:5 0 JOB 1:6 JOB 1:22 0 JOB 2:1 JOB 2:10 0 JOB 2:11 JOB 3:1 0 JOB 3:2 JOB 3:26 0 JOB 4:1 JOB 5:27 0 JOB 6:1 JOB 7:21 0 JOB 8:1 JOB 8:22 0 JOB 9:1 JOB 10:22 0 JOB 11:1 JOB 11:20 0 JOB 12:1 JOB 14:22 0 JOB 15:1 JOB 15:35 0 JOB 16:1 JOB 17:16 0 JOB 18:1 JOB 18:21 0 JOB 19:1 JOB 19:29 0 JOB 20:1 JOB 20:29 0 JOB 21:1 JOB 21:34 0 JOB 22:1 JOB 22:30 0 JOB 23:1 JOB 24:25 0 JOB 25:1 JOB 25:6 0 JOB 26:1 JOB 26:14 0 JOB 27:1 JOB 28:11 0 JOB 28:12 JOB 28:19 0 JOB 28:20 JOB 28:28 0 JOB 29:1 JOB 31:7 0 JOB 31:8 JOB 31:40 0 JOB 32:1 JOB 32:1 0 JOB 32:2 JOB 32:5 0 JOB 32:6 JOB 33:33 0 JOB 34:1 JOB 34:37 0 JOB 35:1 JOB 35:16 0 JOB 36:1 JOB 37:24 0 JOB 38:1 JOB 39:30 0 JOB 40:1 JOB 40:2 0 JOB 40:3 JOB 40:5 0 JOB 40:6 JOB 41:26 0 JOB 42:1 JOB 42:6 0 JOB 42:7 JOB 42:11 0 JOB 42:12 JOB 42:15 0 JOB 42:16 PRO 1:7 0 PRO 1:8 PRO 1:19 0 PRO 1:20 PRO 1:33 0 PRO 2:1 PRO 2:22 0 PRO 3:1 PRO 3:4 0 PRO 3:5 PRO 3:10 0 PRO 3:11 PRO 3:18 0 PRO 3:19 PRO 3:35 0 PRO 4:1 PRO 4:19 0 PRO 4:20 PRO 5:6 0 PRO 5:7 PRO 5:23 0 PRO 6:1 PRO 6:5 0 PRO 6:6 PRO 6:11 0 PRO 6:12 PRO 6:15 0 PRO 6:16 PRO 6:19 0 PRO 6:20 PRO 6:26 0 PRO 6:27 PRO 6:35 0 PRO 7:1 PRO 7:23 0 PRO 7:24 PRO 7:27 0 PRO 8:1 PRO 8:21 0 PRO 8:22 PRO 8:31 0 PRO 8:32 PRO 8:36 0 PRO 9:1 PRO 9:9 0 PRO 9:10 PRO 9:18 0 PRO 10:1 PRO 10:1 27 PRO 10:2 PRO 13:25 0 PRO 14:1 PRO 19:9 0 PRO 19:10 PRO 21:30 0 PRO 21:31 PRO 22:21 0 PRO 22:22 PRO 22:29 0 PRO 23:1 PRO 23:5 0 PRO 23:6 PRO 24:14 0 PRO 24:15 PRO 24:22 0 PRO 24:23 PRO 24:27 0 PRO 24:28 PRO 24:34 0 PRO 25:1 PRO 25:13 0 PRO 25:14 PRO 25:20 0 PRO 25:21 PRO 26:21 0 PRO 26:22 PRO 27:22 0 PRO 27:23 PRO 28:4 0 PRO 28:5 PRO 28:16 0 PRO 28:17 PRO 29:17 0 PRO 29:18 PRO 29:27 0 PRO 30:1 PRO 30:6 0 PRO 30:7 PRO 30:9 0 PRO 30:10 PRO 30:14 0 PRO 30:15 PRO 30:17 0 PRO 30:18 PRO 30:20 0 PRO 30:21 PRO 30:23 0 PRO 30:24 PRO 30:28 0 PRO 30:29 PRO 30:33 0 PRO 31:1 PRO 31:9 0 PRO 31:10 ECC 1:11 0 ECC 1:12 ECC 3:1 0 ECC 3:2 ECC 3:8 0 ECC 3:9 ECC 9:10 0 ECC 9:11 SNG 1:4 0 SNG 1:5 SNG 1:8 0 SNG 1:9 SNG 1:14 0 SNG 1:15 SNG 2:7 0 SNG 2:8 SNG 2:13 0 SNG 2:14 SNG 2:14 0 SNG 2:15 SNG 2:17 0 SNG 3:1 SNG 3:5 0 SNG 3:6 SNG 3:8 0 SNG 3:9 SNG 3:11 0 SNG 4:1 SNG 4:7 0 SNG 4:8 SNG 4:11 0 SNG 4:12 SNG 5:1 0 SNG 5:2 SNG 6:3 0 SNG 6:4 SNG 6:9 0 SNG 6:10 SNG 6:10 0 SNG 6:11 SNG 7:11 0 SNG 7:12 SNG 8:4 0 SNG 8:5 SNG 8:7 0 SNG 8:8 SNG 8:10 0 SNG 8:11 ISA 1:9 0 ISA 1:10 ISA 1:17 0 ISA 1:18 ISA 1:20 0 ISA 1:21 ISA 1:23 0 ISA 1:24 ISA 1:31 0 ISA 2:1 ISA 2:4 0 ISA 2:5 ISA 2:11 0 ISA 2:12 ISA 2:22 0 ISA 3:1 ISA 3:12 0 ISA 3:13 ISA 3:15 0 ISA 3:16 ISA 3:17 0 ISA 3:18 ISA 4:1 0 ISA 4:2 ISA 4:6 0 ISA 5:1 ISA 5:7 0 ISA 5:8 ISA 5:10 0 ISA 5:11 ISA 5:19 0 ISA 5:20 ISA 5:20 0 ISA 5:21 ISA 5:23 0 ISA 5:24 ISA 5:30 0 ISA 6:1 ISA 6:13 0 ISA 7:1 ISA 7:6 0 ISA 7:7 ISA 7:9 0 ISA 7:10 ISA 7:17 0 ISA 7:18 ISA 7:20 0 ISA 7:21 ISA 7:25 0 ISA 8:1 ISA 8:4 0 ISA 8:5 ISA 8:8 0 ISA 8:9 ISA 8:10 0 ISA 8:11 ISA 8:15 0 ISA 8:16 ISA 8:18 0 ISA 8:19 ISA 9:6 0 ISA 9:7 ISA 9:12 0 ISA 9:13 ISA 9:20 0 ISA 10:1 ISA 10:4 0 ISA 10:5 ISA 10:11 0 ISA 10:12 ISA 10:19 0 ISA 10:20 ISA 10:23 0 ISA 10:24 ISA 10:32 0 ISA 10:33 ISA 10:34 0 ISA 11:1 ISA 11:9 0 ISA 11:10 ISA 11:10 0 ISA 11:11 ISA 12:6 0 ISA 13:1 ISA 14:2 0 ISA 14:3 ISA 14:23 0 ISA 14:24 ISA 14:27 0 ISA 14:28 ISA 14:32 0 ISA 15:1 ISA 16:6 0 ISA 16:7 ISA 16:14 0 ISA 17:1 ISA 17:3 0 ISA 17:4 ISA 17:6 0 ISA 17:7 ISA 17:11 0 ISA 17:12 ISA 17:14 0 ISA 18:1 ISA 18:3 0 ISA 18:4 ISA 18:7 0 ISA 19:1 ISA 19:15 0 ISA 19:16 ISA 19:17 0 ISA 19:18 ISA 19:18 0 ISA 19:19 ISA 19:23 0 ISA 19:24 ISA 19:25 0 ISA 20:1 ISA 20:2 0 ISA 20:3 ISA 20:6 0 ISA 21:1 ISA 21:5 0 ISA 21:6 ISA 21:10 0 ISA 21:11 ISA 21:12 0 ISA 21:13 ISA 21:15 0 ISA 21:16 ISA 21:17 0 ISA 22:1 ISA 22:14 0 ISA 22:15 ISA 22:25 0 ISA 23:1 ISA 23:14 0 ISA 23:15 ISA 23:18 0 ISA 24:1 ISA 24:15 0 ISA 24:16 ISA 24:20 0 ISA 24:21 ISA 24:23 0 ISA 25:1 ISA 25:5 0 ISA 25:6 ISA 25:8 0 ISA 25:9 ISA 25:12 0 ISA 26:1 ISA 26:10 0 ISA 26:11 ISA 26:11 0 ISA 26:12 ISA 26:19 0 ISA 26:20 ISA 26:21 0 ISA 27:1 ISA 27:1 0 ISA 27:2 ISA 27:6 0 ISA 27:7 ISA 27:11 0 ISA 27:12 ISA 27:12 0 ISA 27:13 ISA 28:4 0 ISA 28:5 ISA 28:6 0 ISA 28:7 ISA 28:8 0 ISA 28:9 ISA 28:13 0 ISA 28:14 ISA 28:15 0 ISA 28:16 ISA 28:29 0 ISA 29:1 ISA 29:8 0 ISA 29:9 ISA 29:12 0 ISA 29:13 ISA 29:14 0 ISA 29:15 ISA 29:21 0 ISA 29:22 ISA 30:5 0 ISA 30:6 ISA 30:11 0 ISA 30:12 ISA 30:14 0 ISA 30:15 ISA 30:18 0 ISA 30:19 ISA 30:26 0 ISA 30:27 ISA 30:33 0 ISA 31:1 ISA 31:3 0 ISA 31:4 ISA 31:9 0 ISA 32:1 ISA 32:8 0 ISA 32:9 ISA 32:20 0 ISA 33:1 ISA 33:1 0 ISA 33:2 ISA 33:6 0 ISA 33:7 ISA 33:12 0 ISA 33:13 ISA 34:17 0 ISA 35:1 ISA 35:2 0 ISA 35:3 ISA 35:10 0 ISA 36:1 ISA 36:16 19 ISA 36:17 ISA 36:22 0 ISA 37:1 ISA 37:32 0 ISA 37:33 ISA 37:35 0 ISA 37:36 ISA 37:38 0 ISA 38:1 ISA 38:3 0 ISA 38:4 ISA 38:8 0 ISA 38:9 ISA 38:22 0 ISA 39:1 ISA 39:8 0 ISA 40:1 ISA 40:2 0 ISA 40:3 ISA 40:5 0 ISA 40:6 ISA 40:8 0 ISA 40:9 ISA 40:11 0 ISA 40:12 ISA 40:16 0 ISA 40:17 ISA 40:24 0 ISA 40:25 ISA 40:26 0 ISA 40:27 ISA 40:31 0 ISA 41:1 ISA 41:7 0 ISA 41:8 ISA 41:13 0 ISA 41:14 ISA 41:16 0 ISA 41:17 ISA 41:20 0 ISA 41:21 ISA 41:29 0 ISA 42:1 ISA 42:4 0 ISA 42:5 ISA 42:9 0 ISA 42:10 ISA 42:13 0 ISA 42:14 ISA 42:17 0 ISA 42:18 ISA 42:25 0 ISA 43:1 ISA 43:10 0 ISA 43:11 ISA 43:13 0 ISA 43:14 ISA 43:15 0 ISA 43:16 ISA 43:21 0 ISA 43:22 ISA 43:24 0 ISA 43:25 ISA 43:28 0 ISA 44:1 ISA 44:5 0 ISA 44:6 ISA 44:20 0 ISA 44:21 ISA 44:23 0 ISA 44:24 ISA 44:28 0 ISA 45:1 ISA 45:7 0 ISA 45:8 ISA 45:8 0 ISA 45:9 ISA 45:9 0 ISA 45:10 ISA 45:10 0 ISA 45:11 ISA 45:13 0 ISA 45:14 ISA 45:17 0 ISA 45:18 ISA 46:2 0 ISA 46:3 ISA 46:4 0 ISA 46:5 ISA 46:7 0 ISA 46:8 ISA 46:11 0 ISA 46:12 ISA 46:13 0 ISA 47:1 ISA 47:3 0 ISA 47:4 ISA 47:7 0 ISA 47:8 ISA 47:15 0 ISA 48:1 ISA 48:2 0 ISA 48:3 ISA 48:11 0 ISA 48:12 ISA 48:16 0 ISA 48:17 ISA 48:22 0 ISA 49:1 ISA 49:6 0 ISA 49:7 ISA 49:13 0 ISA 49:14 ISA 49:21 0 ISA 49:22 ISA 49:23 0 ISA 49:24 ISA 49:26 0 ISA 50:1 ISA 50:3 0 ISA 50:4 ISA 50:11 0 ISA 51:1 ISA 51:2 0 ISA 51:3 ISA 51:3 0 ISA 51:4 ISA 51:6 0 ISA 51:7 ISA 51:8 0 ISA 51:9 ISA 51:11 0 ISA 51:12 ISA 51:16 0 ISA 51:17 ISA 51:21 0 ISA 51:22 ISA 51:23 0 ISA 52:1 ISA 52:2 0 ISA 52:3 ISA 52:10 0 ISA 52:11 ISA 52:12 0 ISA 52:13 ISA 53:12 0 ISA 54:1 ISA 54:8 0 ISA 54:9 ISA 54:10 0 ISA 54:11 ISA 54:17 0 ISA 55:1 ISA 55:5 0 ISA 55:6 ISA 55:13 0 ISA 56:1 ISA 56:2 0 ISA 56:3 ISA 56:3 0 ISA 56:4 ISA 56:5 0 ISA 56:6 ISA 56:9 0 ISA 56:10 ISA 57:14 0 ISA 57:15 ISA 57:21 0 ISA 58:1 ISA 58:14 0 ISA 59:1 ISA 59:21 0 ISA 60:1 ISA 60:22 0 ISA 61:1 ISA 61:9 0 ISA 61:10 ISA 62:9 0 ISA 62:10 ISA 62:12 0 ISA 63:1 ISA 63:6 0 ISA 63:7 ISA 64:11 0 ISA 65:1 ISA 65:7 0 ISA 65:8 ISA 65:12 0 ISA 65:13 ISA 65:25 0 ISA 66:1 ISA 66:4 0 ISA 66:5 ISA 66:9 0 ISA 66:10 ISA 66:11 0 ISA 66:12 JER 1:3 0 JER 1:4 JER 1:6 0 JER 1:7 JER 1:10 0 JER 1:11 JER 1:12 0 JER 1:13 JER 1:19 0 JER 2:1 JER 2:3 0 JER 2:4 JER 2:28 0 JER 2:29 JER 3:5 0 JER 3:6 JER 3:10 0 JER 3:11 JER 3:17 0 JER 3:18 JER 3:25 0 JER 4:1 JER 4:2 0 JER 4:3 JER 4:8 0 JER 4:9 JER 4:18 0 JER 4:19 JER 4:21 0 JER 4:22 JER 4:26 0 JER 4:27 JER 4:31 0 JER 5:1 JER 5:9 0 JER 5:10 JER 5:13 0 JER 5:14 JER 5:19 0 JER 5:20 JER 5:29 0 JER 5:30 JER 6:5 0 JER 6:6 JER 6:8 0 JER 6:9 JER 6:15 0 JER 6:16 JER 6:20 0 JER 6:21 JER 6:21 0 JER 6:22 JER 6:30 0 JER 7:1 JER 7:2 0 JER 7:3 JER 7:11 0 JER 7:12 JER 7:15 0 JER 7:16 JER 7:19 0 JER 7:20 JER 7:20 0 JER 7:21 JER 7:28 0 JER 7:29 JER 7:31 0 JER 7:32 JER 8:3 0 JER 8:4 JER 8:9 0 JER 8:10 JER 8:12 0 JER 8:13 JER 8:16 0 JER 8:17 JER 8:17 0 JER 8:18 JER 9:2 0 JER 9:3 JER 9:5 0 JER 9:6 JER 9:8 0 JER 9:9 JER 9:10 0 JER 9:11 JER 9:11 0 JER 9:12 JER 9:13 0 JER 9:14 JER 9:15 0 JER 9:16 JER 9:18 0 JER 9:19 JER 9:21 0 JER 9:22 JER 9:23 0 JER 9:24 JER 9:25 0 JER 10:1 JER 10:5 0 JER 10:6 JER 10:10 0 JER 10:11 JER 10:11 0 JER 10:12 JER 10:16 0 JER 10:17 JER 10:17 0 JER 10:18 JER 10:18 0 JER 10:19 JER 10:21 0 JER 10:22 JER 10:22 0 JER 10:23 JER 10:25 0 JER 11:1 JER 11:5 0 JER 11:6 JER 11:8 0 JER 11:9 JER 11:10 0 JER 11:11 JER 11:13 0 JER 11:14 JER 11:14 0 JER 11:15 JER 11:17 0 JER 11:18 JER 11:20 0 JER 11:21 JER 11:21 0 JER 11:22 JER 11:23 0 JER 12:1 JER 12:3 0 JER 12:4 JER 12:6 0 JER 12:7 JER 12:12 0 JER 12:13 JER 12:13 0 JER 12:14 JER 12:17 0 JER 13:1 JER 13:2 0 JER 13:3 JER 13:7 0 JER 13:8 JER 13:12 24 JER 13:13 JER 13:14 0 JER 13:15 JER 13:17 0 JER 13:18 JER 13:19 0 JER 13:20 JER 13:27 0 JER 14:1 JER 14:9 0 JER 14:10 JER 14:10 0 JER 14:11 JER 14:12 0 JER 14:13 JER 14:13 0 JER 14:14 JER 14:14 0 JER 14:15 JER 14:18 0 JER 14:19 JER 14:22 0 JER 15:1 JER 15:9 0 JER 15:10 JER 15:10 0 JER 15:11 JER 15:14 0 JER 15:15 JER 15:16 0 JER 15:17 JER 15:17 0 JER 15:18 JER 15:18 0 JER 15:19 JER 15:21 0 JER 16:1 JER 16:4 0 JER 16:5 JER 16:8 0 JER 16:9 JER 16:13 0 JER 16:14 JER 16:15 0 JER 16:16 JER 16:18 0 JER 16:19 JER 16:21 0 JER 17:1 JER 17:4 0 JER 17:5 JER 17:6 0 JER 17:7 JER 17:10 0 JER 17:11 JER 17:13 0 JER 17:14 JER 17:18 0 JER 17:19 JER 17:20 0 JER 17:21 JER 17:27 0 JER 18:1 JER 18:4 0 JER 18:5 JER 18:6 0 JER 18:7 JER 18:8 0 JER 18:9 JER 18:10 0 JER 18:11 JER 18:12 0 JER 18:13 JER 18:17 0 JER 18:18 JER 18:23 0 JER 19:1 JER 19:5 0 JER 19:6 JER 19:13 0 JER 19:14 JER 19:14 0 JER 19:15 JER 20:3 0 JER 20:4 JER 20:6 0 JER 20:7 JER 20:12 0 JER 20:13 JER 20:13 0 JER 20:14 JER 20:18 0 JER 21:1 JER 21:2 0 JER 21:3 JER 21:10 0 JER 21:11 JER 21:14 0 JER 22:1 JER 22:2 0 JER 22:3 JER 22:5 0 JER 22:6 JER 22:9 0 JER 22:10 JER 22:10 0 JER 22:11 JER 22:12 0 JER 22:13 JER 22:17 0 JER 22:18 JER 22:19 0 JER 22:20 JER 22:27 0 JER 22:28 JER 22:29 0 JER 22:30 JER 23:4 0 JER 23:5 JER 23:6 0 JER 23:7 JER 23:8 0 JER 23:9 JER 23:13 0 JER 23:14 JER 23:14 0 JER 23:15 JER 23:15 0 JER 23:16 JER 23:18 0 JER 23:19 JER 23:22 0 JER 23:23 JER 23:29 0 JER 23:30 JER 23:40 0 JER 24:1 JER 24:2 0 JER 24:3 JER 24:3 0 JER 24:4 JER 24:7 0 JER 24:8 JER 24:10 0 JER 25:1 JER 25:7 0 JER 25:8 JER 25:14 0 JER 25:15 JER 25:27 13 JER 25:28 JER 25:31 0 JER 25:32 JER 25:38 0 JER 26:1 JER 26:6 0 JER 26:7 JER 26:10 0 JER 26:11 JER 26:15 0 JER 26:16 JER 26:24 0 JER 27:1 JER 27:18 0 JER 27:19 JER 27:20 0 JER 27:21 JER 27:22 0 JER 28:1 JER 28:11 0 JER 28:12 JER 28:17 0 JER 29:1 JER 29:3 0 JER 29:4 JER 29:7 0 JER 29:8 JER 29:9 0 JER 29:10 JER 29:15 0 JER 29:16 JER 29:20 0 JER 29:21 JER 29:23 0 JER 29:24 JER 29:29 0 JER 29:30 JER 29:32 0 JER 30:1 JER 30:3 0 JER 30:4 JER 30:9 0 JER 30:10 JER 30:11 0 JER 30:12 JER 30:17 0 JER 30:18 JER 30:22 0 JER 30:23 JER 31:1 0 JER 31:2 JER 31:6 0 JER 31:7 JER 31:9 0 JER 31:10 JER 31:14 0 JER 31:15 JER 31:15 0 JER 31:16 JER 31:17 0 JER 31:18 JER 31:20 0 JER 31:21 JER 31:22 0 JER 31:23 JER 31:26 0 JER 31:27 JER 31:30 0 JER 31:31 JER 31:34 0 JER 31:35 JER 31:36 0 JER 31:37 JER 31:37 0 JER 31:38 JER 31:40 0 JER 32:1 JER 32:5 0 JER 32:6 JER 32:14 0 JER 32:15 JER 32:15 0 JER 32:16 JER 32:35 0 JER 32:36 JER 32:41 0 JER 32:42 JER 32:44 0 JER 33:1 JER 33:3 0 JER 33:4 JER 33:9 0 JER 33:10 JER 33:11 0 JER 33:12 JER 33:13 0 JER 33:14 JER 33:16 0 JER 33:17 JER 33:18 0 JER 33:19 JER 33:22 0 JER 33:23 JER 33:24 0 JER 33:25 JER 33:26 0 JER 34:1 JER 34:5 0 JER 34:6 JER 34:7 0 JER 34:8 JER 34:11 0 JER 34:12 JER 34:16 0 JER 34:17 JER 34:22 0 JER 35:1 JER 35:11 0 JER 35:12 JER 35:16 0 JER 35:17 JER 35:18 0 JER 35:19 JER 35:19 0 JER 36:1 JER 36:3 0 JER 36:4 JER 36:8 0 JER 36:9 JER 36:18 0 JER 36:19 JER 36:26 0 JER 36:27 JER 36:29 0 JER 36:30 JER 36:31 0 JER 36:32 JER 36:32 0 JER 37:1 JER 37:5 0 JER 37:6 JER 37:8 0 JER 37:9 JER 37:11 0 JER 37:12 JER 37:16 0 JER 37:17 JER 37:17 0 JER 37:18 JER 38:1 0 JER 38:2 JER 38:2 0 JER 38:3 JER 38:6 0 JER 38:7 JER 38:13 0 JER 38:14 JER 38:16 0 JER 38:17 JER 38:18 0 JER 38:19 JER 38:19 0 JER 38:20 JER 38:23 0 JER 38:24 JER 38:26 0 JER 38:27 JER 38:27 0 JER 38:28 JER 38:28 0 JER 39:1 JER 38:28 65 JER 39:1 JER 39:1 0 JER 39:2 JER 39:14 0 JER 39:15 JER 39:18 0 JER 40:1 JER 40:6 0 JER 40:7 JER 40:12 0 JER 40:13 JER 40:16 0 JER 41:1 JER 41:6 0 JER 41:7 JER 41:10 0 JER 41:11 JER 41:15 0 JER 41:16 JER 41:18 0 JER 42:1 JER 42:6 0 JER 42:7 JER 42:17 0 JER 42:18 JER 42:22 0 JER 43:1 JER 43:1 0 JER 43:2 JER 43:7 0 JER 43:8 JER 43:13 0 JER 44:1 JER 44:1 0 JER 44:2 JER 44:6 0 JER 44:7 JER 44:10 0 JER 44:11 JER 44:14 0 JER 44:15 JER 44:19 0 JER 44:20 JER 44:23 0 JER 44:24 JER 44:24 0 JER 44:25 JER 44:25 0 JER 44:26 JER 44:29 0 JER 44:30 JER 44:30 0 JER 45:1 JER 45:1 0 JER 45:2 JER 45:3 0 JER 45:4 JER 45:5 0 JER 46:1 JER 46:12 0 JER 46:13 JER 46:19 0 JER 46:20 JER 46:26 0 JER 46:27 JER 46:27 0 JER 46:28 JER 46:28 0 JER 47:1 JER 47:1 0 JER 47:2 JER 47:5 0 JER 47:6 JER 47:7 0 JER 48:1 JER 48:11 0 JER 48:12 JER 48:39 0 JER 48:40 JER 48:47 0 JER 49:1 JER 49:6 0 JER 49:7 JER 49:11 0 JER 49:12 JER 49:19 0 JER 49:20 JER 49:22 0 JER 49:23 JER 49:27 0 JER 49:28 JER 49:33 0 JER 49:34 JER 49:39 0 JER 50:1 JER 50:5 0 JER 50:6 JER 50:7 0 JER 50:8 JER 50:16 0 JER 50:17 JER 50:17 0 JER 50:18 JER 50:21 0 JER 50:22 JER 50:27 0 JER 50:28 JER 50:30 0 JER 50:31 JER 50:32 0 JER 50:33 JER 50:46 0 JER 51:1 JER 51:14 0 JER 51:15 JER 51:19 0 JER 51:20 JER 51:24 0 JER 51:25 JER 51:32 0 JER 51:33 JER 51:35 0 JER 51:36 JER 51:51 0 JER 51:52 JER 51:53 0 JER 51:54 JER 51:57 0 JER 51:58 JER 51:58 0 JER 51:59 JER 51:64 0 JER 52:1 JER 52:30 0 JER 52:31 LAM 1:1 0 LAM 1:2 LAM 1:2 0 LAM 1:3 LAM 1:3 0 LAM 1:4 LAM 1:4 0 LAM 1:5 LAM 1:5 0 LAM 1:6 LAM 1:6 0 LAM 1:7 LAM 1:7 0 LAM 1:8 LAM 1:8 0 LAM 1:9 LAM 1:9 0 LAM 1:10 LAM 1:10 0 LAM 1:11 LAM 1:11 0 LAM 1:12 LAM 1:12 0 LAM 1:13 LAM 1:13 0 LAM 1:14 LAM 1:14 0 LAM 1:15 LAM 1:15 0 LAM 1:16 LAM 1:16 0 LAM 1:17 LAM 1:17 0 LAM 1:18 LAM 1:18 0 LAM 1:19 LAM 1:19 0 LAM 1:20 LAM 1:20 0 LAM 1:21 LAM 1:21 0 LAM 1:22 LAM 1:22 0 LAM 2:1 LAM 2:1 0 LAM 2:2 LAM 2:2 0 LAM 2:3 LAM 2:3 0 LAM 2:4 LAM 2:4 0 LAM 2:5 LAM 2:5 0 LAM 2:6 LAM 2:6 0 LAM 2:7 LAM 2:7 0 LAM 2:8 LAM 2:8 0 LAM 2:9 LAM 2:9 0 LAM 2:10 LAM 2:10 0 LAM 2:11 LAM 2:11 0 LAM 2:12 LAM 2:12 0 LAM 2:13 LAM 2:13 0 LAM 2:14 LAM 2:14 0 LAM 2:15 LAM 2:15 0 LAM 2:16 LAM 2:16 0 LAM 2:17 LAM 2:17 0 LAM 2:18 LAM 2:18 0 LAM 2:19 LAM 2:19 0 LAM 2:20 LAM 2:20 0 LAM 2:21 LAM 2:21 0 LAM 2:22 LAM 2:22 0 LAM 3:1 LAM 3:3 0 LAM 3:4 LAM 3:6 0 LAM 3:7 LAM 3:9 0 LAM 3:10 LAM 3:12 0 LAM 3:13 LAM 3:15 0 LAM 3:16 LAM 3:18 0 LAM 3:19 LAM 3:21 0 LAM 3:22 LAM 3:24 0 LAM 3:25 LAM 3:27 0 LAM 3:28 LAM 3:30 0 LAM 3:31 LAM 3:33 0 LAM 3:34 LAM 3:36 0 LAM 3:37 LAM 3:39 0 LAM 3:40 LAM 3:42 0 LAM 3:43 LAM 3:45 0 LAM 3:46 LAM 3:48 0 LAM 3:49 LAM 3:51 0 LAM 3:52 LAM 3:54 0 LAM 3:55 LAM 3:57 0 LAM 3:58 LAM 3:60 0 LAM 3:61 LAM 3:63 0 LAM 3:64 LAM 3:66 0 LAM 4:1 LAM 4:1 0 LAM 4:2 LAM 4:2 0 LAM 4:3 LAM 4:3 0 LAM 4:4 LAM 4:4 0 LAM 4:5 LAM 4:5 0 LAM 4:6 LAM 4:6 0 LAM 4:7 LAM 4:7 0 LAM 4:8 LAM 4:8 0 LAM 4:9 LAM 4:9 0 LAM 4:10 LAM 4:10 0 LAM 4:11 LAM 4:11 0 LAM 4:12 LAM 4:12 0 LAM 4:13 LAM 4:13 0 LAM 4:14 LAM 4:14 0 LAM 4:15 LAM 4:15 0 LAM 4:16 LAM 4:16 0 LAM 4:17 LAM 4:17 0 LAM 4:18 LAM 4:18 0 LAM 4:19 LAM 4:19 0 LAM 4:20 LAM 4:20 0 LAM 4:21 LAM 4:21 0 LAM 4:22 LAM 4:22 0 LAM 5:1 LAM 5:18 0 LAM 5:19 EZK 1:28 0 EZK 2:1 EZK 2:2 0 EZK 2:3 EZK 2:5 0 EZK 2:6 EZK 2:7 0 EZK 2:8 EZK 2:10 0 EZK 3:1 EZK 3:3 0 EZK 3:4 EZK 3:9 0 EZK 3:10 EZK 3:16 49 EZK 3:17 EZK 3:19 0 EZK 3:20 EZK 3:21 0 EZK 3:22 EZK 3:27 0 EZK 4:1 EZK 4:3 0 EZK 4:4 EZK 4:12 0 EZK 4:13 EZK 4:14 0 EZK 4:15 EZK 4:15 0 EZK 4:16 EZK 4:17 0 EZK 5:1 EZK 5:4 0 EZK 5:5 EZK 5:6 0 EZK 5:7 EZK 5:7 0 EZK 5:8 EZK 5:9 0 EZK 5:10 EZK 5:10 0 EZK 5:11 EZK 5:17 0 EZK 6:1 EZK 6:10 0 EZK 6:11 EZK 6:14 0 EZK 7:1 EZK 7:4 0 EZK 7:5 EZK 7:22 0 EZK 7:23 EZK 7:27 0 EZK 8:1 EZK 8:6 0 EZK 8:7 EZK 8:14 0 EZK 8:15 EZK 9:3 0 EZK 9:4 EZK 9:11 0 EZK 10:1 EZK 11:1 0 EZK 11:2 EZK 11:6 0 EZK 11:7 EZK 11:13 0 EZK 11:14 EZK 11:15 0 EZK 11:16 EZK 11:16 0 EZK 11:17 EZK 11:25 0 EZK 12:1 EZK 12:7 0 EZK 12:8 EZK 12:16 0 EZK 12:17 EZK 12:20 0 EZK 12:21 EZK 12:25 0 EZK 12:26 EZK 12:28 0 EZK 13:1 EZK 13:7 0 EZK 13:8 EZK 13:12 0 EZK 13:13 EZK 13:16 0 EZK 13:17 EZK 13:19 0 EZK 13:20 EZK 14:1 0 EZK 14:2 EZK 14:3 0 EZK 14:4 EZK 14:5 0 EZK 14:6 EZK 14:8 0 EZK 14:9 EZK 14:11 0 EZK 14:12 EZK 14:20 0 EZK 14:21 EZK 14:23 0 EZK 15:1 EZK 15:5 0 EZK 15:6 EZK 15:8 0 EZK 16:1 EZK 16:35 0 EZK 16:36 EZK 16:50 0 EZK 16:51 EZK 16:58 0 EZK 16:59 EZK 16:63 0 EZK 17:1 EZK 17:8 0 EZK 17:9 EZK 17:10 0 EZK 17:11 EZK 17:18 0 EZK 17:19 EZK 17:21 0 EZK 17:22 EZK 17:24 0 EZK 18:1 EZK 18:4 0 EZK 18:5 EZK 18:20 0 EZK 18:21 EZK 18:23 0 EZK 18:24 EZK 18:26 0 EZK 18:27 EZK 18:32 0 EZK 19:1 EZK 19:9 0 EZK 19:10 EZK 19:14 0 EZK 20:1 EZK 20:1 0 EZK 20:2 EZK 20:26 0 EZK 20:27 EZK 20:44 0 EZK 21:1 EZK 21:5 0 EZK 21:6 EZK 21:10 0 EZK 21:11 EZK 21:12 0 EZK 21:13 EZK 21:18 0 EZK 21:19 EZK 21:22 0 EZK 21:23 EZK 21:28 0 EZK 21:29 EZK 21:29 0 EZK 21:30 EZK 21:30 0 EZK 21:31 EZK 21:32 0 EZK 21:33 EZK 21:37 0 EZK 22:1 EZK 22:16 0 EZK 22:17 EZK 22:18 0 EZK 22:19 EZK 22:22 0 EZK 22:23 EZK 22:31 0 EZK 23:1 EZK 23:10 0 EZK 23:11 EZK 23:21 0 EZK 23:22 EZK 23:27 0 EZK 23:28 EZK 23:31 0 EZK 23:32 EZK 23:34 0 EZK 23:35 EZK 23:35 0 EZK 23:36 EZK 23:45 0 EZK 23:46 EZK 23:49 0 EZK 24:1 EZK 24:5 0 EZK 24:6 EZK 24:8 0 EZK 24:9 EZK 24:14 0 EZK 24:15 EZK 24:24 0 EZK 24:25 EZK 24:27 0 EZK 25:1 EZK 25:5 0 EZK 25:6 EZK 25:7 0 EZK 25:8 EZK 25:11 0 EZK 25:12 EZK 25:14 0 EZK 25:15 EZK 25:17 0 EZK 26:1 EZK 26:6 0 EZK 26:7 EZK 26:14 0 EZK 26:15 EZK 26:18 0 EZK 26:19 EZK 26:21 0 EZK 27:1 EZK 27:36 0 EZK 28:1 EZK 28:5 0 EZK 28:6 EZK 28:10 0 EZK 28:11 EZK 28:19 0 EZK 28:20 EZK 28:24 0 EZK 28:25 EZK 28:26 0 EZK 29:1 EZK 29:7 0 EZK 29:8 EZK 29:12 0 EZK 29:13 EZK 29:16 0 EZK 29:17 EZK 29:18 0 EZK 29:19 EZK 29:20 0 EZK 29:21 EZK 29:21 0 EZK 30:1 EZK 30:5 0 EZK 30:6 EZK 30:9 0 EZK 30:10 EZK 30:12 0 EZK 30:13 EZK 30:19 0 EZK 30:20 EZK 30:21 0 EZK 30:22 EZK 30:26 0 EZK 31:1 EZK 31:9 0 EZK 31:10 EZK 31:14 0 EZK 31:15 EZK 31:18 0 EZK 32:1 EZK 32:10 0 EZK 32:11 EZK 32:16 0 EZK 32:17 EZK 32:32 0 EZK 33:1 EZK 33:6 0 EZK 33:7 EZK 33:9 0 EZK 33:10 EZK 33:11 0 EZK 33:12 EZK 33:20 0 EZK 33:21 EZK 33:22 0 EZK 33:23 EZK 33:24 0 EZK 33:25 EZK 33:26 0 EZK 33:27 EZK 33:29 0 EZK 33:30 EZK 33:33 0 EZK 34:1 EZK 34:8 0 EZK 34:9 EZK 34:10 0 EZK 34:11 EZK 34:19 0 EZK 34:20 EZK 34:31 0 EZK 35:1 EZK 35:13 0 EZK 35:14 EZK 35:15 0 EZK 36:1 EZK 36:4 0 EZK 36:5 EZK 36:12 0 EZK 36:13 EZK 36:15 0 EZK 36:16 EZK 36:21 0 EZK 36:22 EZK 36:32 0 EZK 36:33 EZK 36:36 0 EZK 36:37 EZK 36:38 0 EZK 37:1 EZK 37:10 0 EZK 37:11 EZK 37:12 0 EZK 37:13 EZK 37:14 0 EZK 37:15 EZK 37:28 0 EZK 38:1 EZK 38:9 0 EZK 38:10 EZK 38:13 0 EZK 38:14 EZK 38:16 0 EZK 38:17 EZK 38:17 0 EZK 38:18 EZK 38:23 0 EZK 39:1 EZK 39:10 0 EZK 39:11 EZK 39:16 0 EZK 39:17 EZK 39:24 0 EZK 39:25 EZK 39:29 0 EZK 40:1 EZK 43:9 0 EZK 43:10 EZK 43:27 0 EZK 44:1 EZK 43:27 14 EZK 44:1 EZK 44:14 0 EZK 44:15 EZK 44:31 0 EZK 45:1 EZK 45:8 0 EZK 45:9 EZK 45:17 0 EZK 45:18 EZK 45:25 0 EZK 46:1 EZK 46:11 0 EZK 46:12 EZK 46:15 0 EZK 46:16 EZK 46:19 0 EZK 46:20 EZK 47:12 0 EZK 47:13 EZK 47:23 0 EZK 48:1 EZK 48:11 0 EZK 48:12 EZK 48:29 0 EZK 48:30 DAN 1:21 0 DAN 2:1 DAN 2:13 0 DAN 2:14 DAN 2:16 0 DAN 2:17 DAN 2:24 0 DAN 2:25 DAN 2:28 0 DAN 2:29 DAN 2:45 0 DAN 2:46 DAN 2:49 0 DAN 3:1 DAN 3:12 0 DAN 3:13 DAN 3:18 0 DAN 3:19 DAN 3:23 0 DAN 3:24 DAN 3:25 0 DAN 3:26 DAN 3:30 0 DAN 3:31 DAN 4:25 0 DAN 4:26 DAN 4:34 0 DAN 5:1 DAN 5:7 0 DAN 5:8 DAN 5:12 0 DAN 5:13 DAN 5:16 0 DAN 5:17 DAN 5:30 0 DAN 6:1 DAN 6:6 0 DAN 6:7 DAN 6:11 0 DAN 6:12 DAN 6:29 0 DAN 7:1 DAN 7:14 0 DAN 7:15 DAN 7:28 0 DAN 8:1 DAN 8:27 0 DAN 9:1 DAN 9:27 0 DAN 10:1 DAN 10:3 0 DAN 10:4 DAN 10:21 0 DAN 11:1 DAN 12:2 0 DAN 12:3 DAN 12:3 0 DAN 12:4 DAN 12:8 0 DAN 12:9 HOS 1:2 20 HOS 1:3 HOS 1:9 0 HOS 2:1 HOS 2:15 0 HOS 2:16 HOS 2:17 0 HOS 2:18 HOS 2:22 0 HOS 2:23 HOS 2:25 0 HOS 3:1 HOS 3:5 0 HOS 4:1 HOS 4:19 0 HOS 5:1 HOS 5:7 0 HOS 5:8 HOS 6:11 0 HOS 7:1 HOS 7:12 0 HOS 7:13 HOS 8:14 0 HOS 9:1 HOS 9:9 0 HOS 9:10 HOS 9:16 0 HOS 9:17 HOS 9:17 0 HOS 10:1 HOS 10:8 0 HOS 10:9 HOS 11:11 0 HOS 12:1 HOS 13:11 0 HOS 13:12 HOS 14:1 0 HOS 14:2 HOS 14:8 0 HOS 14:9 JOL 1:12 0 JOL 1:13 JOL 1:20 0 JOL 2:1 JOL 2:14 0 JOL 2:15 JOL 2:27 0 JOL 3:1 JOL 4:8 0 JOL 4:9 JOL 4:17 0 JOL 4:18 AMO 1:2 0 AMO 1:3 AMO 1:5 0 AMO 1:6 AMO 1:8 0 AMO 1:9 AMO 1:10 0 AMO 1:11 AMO 1:12 0 AMO 1:13 AMO 1:15 0 AMO 2:1 AMO 2:3 0 AMO 2:4 AMO 2:5 0 AMO 2:6 AMO 2:16 0 AMO 3:1 AMO 3:10 0 AMO 3:11 AMO 3:15 0 AMO 4:1 AMO 4:9 0 AMO 4:10 AMO 4:11 0 AMO 4:12 AMO 4:13 0 AMO 5:1 AMO 5:3 0 AMO 5:4 AMO 5:8 0 AMO 5:9 AMO 5:15 0 AMO 5:16 AMO 5:17 0 AMO 5:18 AMO 5:27 0 AMO 6:1 AMO 6:7 0 AMO 6:8 AMO 6:14 0 AMO 7:1 AMO 7:6 0 AMO 7:7 AMO 7:9 0 AMO 7:10 AMO 7:11 0 AMO 7:12 AMO 7:13 0 AMO 7:14 AMO 7:17 0 AMO 8:1 AMO 8:3 0 AMO 8:4 AMO 8:8 0 AMO 8:9 AMO 8:14 0 AMO 9:1 AMO 9:12 0 AMO 9:13 JON 2:10 0 JON 2:11 JON 2:11 0 JON 3:1 JON 4:3 0 JON 4:4 MIC 1:16 0 MIC 2:1 MIC 2:2 0 MIC 2:3 MIC 2:13 0 MIC 3:1 MIC 3:4 0 MIC 3:5 MIC 3:8 0 MIC 3:9 MIC 3:12 0 MIC 4:1 MIC 4:5 0 MIC 4:6 MIC 4:7 0 MIC 4:8 MIC 4:14 0 MIC 5:1 MIC 5:5 0 MIC 5:6 MIC 5:8 0 MIC 5:9 MIC 5:14 0 MIC 6:1 MIC 6:8 0 MIC 6:9 MIC 6:16 0 MIC 7:1 MIC 7:8 0 MIC 7:9 MIC 7:13 0 MIC 7:14 NAM 1:11 0 NAM 1:12 NAM 1:14 0 NAM 2:1 NAM 2:14 0 NAM 3:1 HAB 1:17 0 HAB 2:1 HAB 2:8 0 HAB 2:9 HAB 2:11 0 HAB 2:12 HAB 2:14 0 HAB 2:15 HAB 2:17 0 HAB 2:18 HAB 2:18 0 HAB 2:19 HAB 2:20 0 HAB 3:1 HAB 3:7 0 HAB 3:8 HAB 3:13 0 HAB 3:14 ZEP 1:9 0 ZEP 1:10 ZEP 1:18 0 ZEP 2:1 ZEP 2:4 0 ZEP 2:5 ZEP 2:15 0 ZEP 3:1 ZEP 3:13 0 ZEP 3:14 HAG 1:2 0 HAG 1:3 HAG 1:6 0 HAG 1:7 HAG 1:11 0 HAG 1:12 HAG 1:14 0 HAG 1:15 HAG 2:5 0 HAG 2:6 HAG 2:9 0 HAG 2:10 HAG 2:19 0 HAG 2:20 ZEC 1:6 0 ZEC 1:7 ZEC 1:17 0 ZEC 2:1 ZEC 2:2 0 ZEC 2:3 ZEC 2:4 0 ZEC 2:5 ZEC 2:9 0 ZEC 2:10 ZEC 2:11 0 ZEC 2:12 ZEC 2:13 0 ZEC 2:14 ZEC 2:17 0 ZEC 3:1 ZEC 4:7 0 ZEC 4:8 ZEC 5:8 0 ZEC 5:9 ZEC 5:11 0 ZEC 6:1 ZEC 6:8 0 ZEC 6:9 ZEC 6:15 0 ZEC 7:1 ZEC 7:3 0 ZEC 7:4 ZEC 7:7 0 ZEC 7:8 ZEC 7:14 0 ZEC 8:1 ZEC 8:3 0 ZEC 8:4 ZEC 8:5 0 ZEC 8:6 ZEC 8:6 0 ZEC 8:7 ZEC 8:8 0 ZEC 8:9 ZEC 8:13 0 ZEC 8:14 ZEC 8:17 0 ZEC 8:18 ZEC 8:19 0 ZEC 8:20 ZEC 8:22 0 ZEC 8:23 ZEC 8:23 0 ZEC 9:1 ZEC 9:8 0 ZEC 9:9 ZEC 10:2 0 ZEC 10:3 ZEC 10:12 0 ZEC 11:1 ZEC 11:3 0 ZEC 11:4 ZEC 11:14 0 ZEC 11:15 ZEC 11:16 0 ZEC 11:17 ZEC 11:17 0 ZEC 12:1 ZEC 12:1 0 ZEC 12:2 ZEC 12:6 0 ZEC 12:7 ZEC 12:14 0 ZEC 13:1 ZEC 13:6 0 ZEC 13:7 ZEC 13:9 0 ZEC 14:1 MAL 1:13 0 MAL 1:14 MAL 2:9 0 MAL 2:10 MAL 2:12 0 MAL 2:13 MAL 2:16 0 MAL 2:17 MAL 3:12 0 MAL 3:13 MAL 3:18 0 MAL 3:19 MAL 3:21 0 MAL 3:22 bibledit-gtk-4.9/templates/nt-parallel-passages.xml000664 000766 000024 00000320154 12221507126 022617 0ustar00teusstaff000000 000000
bibledit-gtk-4.9/templates/numerals_farsi.xml000664 000766 000024 00000001441 12221507125 021604 0ustar00teusstaff000000 000000 0 ۰ 1 ۱ 2 ۲ 3 ۳ 4 ۴ 5 ۵ 6 ۶ 7 ۷ 8 ۸ 9 ۹ bibledit-gtk-4.9/templates/ot-parallel-passages.xml000664 000766 000024 00000312320 12221507126 022614 0ustar00teusstaff000000 000000
bibledit-gtk-4.9/templates/ot-quotations-in-nt.xml000664 000766 000024 00000120600 12221507125 022442 0ustar00teusstaff000000 000000 1 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 1 1 1 0 0 0 1 0 1 1 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 0 0 0 1 1 1 1 0 0 1 0 0 0 1 0 0 0 0 1 1 1 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 1 0 1 0 1 0 1 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 1 0 0 1 0 1 0 0 0 1 0 0 1 0 0 1 1 1 0 0 1 1 0 bibledit-gtk-4.9/templates/other_material.usfm000664 000766 000024 00000000112 12221507126 021736 0ustar00teusstaff000000 000000 \id OTH \cov \zelastic \mt HOLY \mt BIBLE \zelastic \spine \mt HOLY BIBLE bibledit-gtk-4.9/templates/README000664 000766 000024 00000000151 12221507126 016726 0ustar00teusstaff000000 000000 The file KTREF.DB was converted to utf8 encoding. This should be done every time a new file is put here. bibledit-gtk-4.9/templates/resource-nextbible-chapter.ini000664 000766 000024 00000001742 12221507126 024003 0ustar00teusstaff000000 000000 [general] title = NextBible per chapter home page = http://net.bible.org/ url constructor = http://net.bible.org/bible.php?book=&chapter=#v2 [books] Genesis=Gen Exodus=Exo Leviticus=Lev Numbers=Num Deuteronomy=Deu Joshua=Jos Judges=Jdg Ruth=Rut 1 Samuel=1Sa 2 Samuel=2Sa 1 Kings=1Ki 2 Kings=2Ki 1 Chronicles=1Ch 2 Chronicles=2Ch Ezra=Ezr Nehemiah=Neh Esther=Est Job=Job Psalms=Psa Proverbs=Pro Ecclesiastes=Ecc Song of Solomon=Sos Isaiah=Isa Jeremiah=Jer Lamentations=Lam Ezekiel=Eze Daniel=Dan Hosea=Hos Joel=Joe Amos=Amo Obadiah=Oba Jonah=Jon Micah=Mic Nahum=Nah Habakkuk=Hab Zephaniah=Zep Haggai=Hag Zechariah=Zec Malachi=Mal Matthew=Mat Mark=Mar Luke=Luk John=Joh Acts=Act Romans=Rom 1 Corinthians=1Co 2 Corinthians=2Co Galatians=Gal Ephesians=Eph Philippians=Phi Colossians=Col 1 Thessalonians=1Th 2 Thessalonians=2Th 1 Timothy=1Ti 2 Timothy=2Ti Titus=Tit Philemon=Phm Hebrews=Heb James=Jam 1 Peter=1Pe 2 Peter=2Pe 1 John=1Jo 2 John=2Jo 3 John=3Jo Jude=Jud Revelation=Rev bibledit-gtk-4.9/templates/resource-nextbible-verse.ini000664 000766 000024 00000001753 12221507126 023503 0ustar00teusstaff000000 000000 [general] title = NextBible per verse home page = http://net.bible.org/ url constructor = http://net.bible.org/verse.php?book=&chapter=&verse= [books] Genesis=Gen Exodus=Exo Leviticus=Lev Numbers=Num Deuteronomy=Deu Joshua=Jos Judges=Jdg Ruth=Rut 1 Samuel=1Sa 2 Samuel=2Sa 1 Kings=1Ki 2 Kings=2Ki 1 Chronicles=1Ch 2 Chronicles=2Ch Ezra=Ezr Nehemiah=Neh Esther=Est Job=Job Psalms=Psa Proverbs=Pro Ecclesiastes=Ecc Song of Solomon=Sos Isaiah=Isa Jeremiah=Jer Lamentations=Lam Ezekiel=Eze Daniel=Dan Hosea=Hos Joel=Joe Amos=Amo Obadiah=Oba Jonah=Jon Micah=Mic Nahum=Nah Habakkuk=Hab Zephaniah=Zep Haggai=Hag Zechariah=Zec Malachi=Mal Matthew=Mat Mark=Mar Luke=Luk John=Joh Acts=Act Romans=Rom 1 Corinthians=1Co 2 Corinthians=2Co Galatians=Gal Ephesians=Eph Philippians=Phi Colossians=Col 1 Thessalonians=1Th 2 Thessalonians=2Th 1 Timothy=1Ti 2 Timothy=2Ti Titus=Tit Philemon=Phm Hebrews=Heb James=Jam 1 Peter=1Pe 2 Peter=2Pe 1 John=1Jo 2 John=2Jo 3 John=3Jo Jude=Jud Revelation=Rev bibledit-gtk-4.9/templates/resource-sabda-chapter.ini000664 000766 000024 00000001704 12221507125 023076 0ustar00teusstaff000000 000000 [general] title=Sabda Web per Chapter home page=http://www.sabda.org/sabdaweb/bible/chapter url constructor=http://www.sabda.org/sabdaweb/bible/chapter/?b=&c=&version=drft_wbtc# [books] Genesis=1 Exodus=2 Leviticus=3 Numbers=4 Deuteronomy=5 Joshua=6 Judges=7 Ruth=8 1 Samuel=9 2 Samuel=10 1 Kings=11 2 Kings=12 1 Chronicles=13 2 Chronicles=14 Ezra=15 Nehemiah=16 Esther=17 Job=18 Psalms=19 Proverbs=20 Ecclesiastes=21 Song of Solomon=22 Isaiah=23 Jeremiah=24 Lamentations=25 Ezekiel=26 Daniel=27 Hosea=28 Joel=29 Amos=30 Obadiah=31 Jonah=32 Micah=33 Nahum=34 Habakkuk=35 Zephaniah=36 Haggai=37 Zechariah=38 Malachi=39 Matthew=40 Mark=41 Luke=42 John=43 Acts=44 Romans=45 1 Corinthians=46 2 Corinthians=47 Galatians=48 Ephesians=49 Philippians=50 Colossians=51 1 Thessalonians=52 2 Thessalonians=53 1 Timothy=54 2 Timothy=55 Titus=56 Philemon=57 Hebrews=58 James=59 1 Peter=60 2 Peter=61 1 John=62 2 John=63 3 John=64 Jude=65 Revelation=66 bibledit-gtk-4.9/templates/resource-sabda-verse.ini000664 000766 000024 00000001752 12221507126 022600 0ustar00teusstaff000000 000000 [general] title = Sabda Web per Verse home page = http://www.sabda.org/sabdaweb/bible/ url constructor = http://www.sabda.org/sabdaweb/bible/verse/?b=&c=&v=&version=drft_wbtc&view=single&lang=indonesia&theme=clearsky [books] Genesis=1 Exodus=2 Leviticus=3 Numbers=4 Deuteronomy=5 Joshua=6 Judges=7 Ruth=8 1 Samuel=9 2 Samuel=10 1 Kings=11 2 Kings=12 1 Chronicles=13 2 Chronicles=14 Ezra=15 Nehemiah=16 Esther=17 Job=18 Psalms=19 Proverbs=20 Ecclesiastes=21 Song of Solomon=22 Isaiah=23 Jeremiah=24 Lamentations=25 Ezekiel=26 Daniel=27 Hosea=28 Joel=29 Amos=30 Obadiah=31 Jonah=32 Micah=33 Nahum=34 Habakkuk=35 Zephaniah=36 Haggai=37 Zechariah=38 Malachi=39 Matthew=40 Mark=41 Luke=42 John=43 Acts=44 Romans=45 1 Corinthians=46 2 Corinthians=47 Galatians=48 Ephesians=49 Philippians=50 Colossians=51 1 Thessalonians=52 2 Thessalonians=53 1 Timothy=54 2 Timothy=55 Titus=56 Philemon=57 Hebrews=58 James=59 1 Peter=60 2 Peter=61 1 John=62 2 John=63 3 John=64 Jude=65 Revelation=66 bibledit-gtk-4.9/templates/stylesheet.xml000664 000766 000024 00000461734 12221507126 021003 0ustar00teusstaff000000 000000 bibledit-gtk-4.9/templates/template.odt000664 000766 000024 00000007170 12221507126 020401 0ustar00teusstaff000000 000000 PK [5Configurations2/UT RDިDUxPK#$5\qd content.xmlUT jDDUxVn0+zi=$jEQ@| JSL,$m=+Vmrg%駗ўjÔt#**{<=df"&DI B4-3 3Ă̒LTYŒG>C;#._كBv.a!TsÓRƖQqL㝵uP۶vPB#N0puGQNbZA @Dž`]v jX% z;3oy/l fjj,<4px7`.Qrbȶ- =˷<_kƅDPK &k5 META-INF/UT /DިDUxPK[5bi42META-INF/manifest.xmlUT RDDUx1o0 {Se T0ttK\A P6~ݓn2WƔ?M[,S^g>My^J- ޼O\5DݖR.u-3_r1EUkoB]WdTڄ oƘޱ3(l@nuBRY) w{Ep.i4mS.("Xaj,lRn5Ђօ"c8 uu1 H: ˶FmԗrlQ\SyPK [5^2 ''mimetypeUT RDDUxapplication/vnd.oasis.opendocument.textPK [5 Pictures/UT RDިDUxPK*2$5 styles.xmlUT ШDШDUxXn8) -ze% 66aOS)" >ΐ嬺m{(`7?f8s%W'njdM\>/|x{E!W8*[r('U;Mp;E+vSڍѻ*cKx/UFD{vniTӱz*$&LWzqY mޛ]6MnlݦAz \rtl.T]]UU鸘԰iy}Ǻ博<@[-If5#zCEؠ!}͛ ބ3*Yq]% pY OHdՎzTaBqs&׉ "s^Zn Z OR0pقb,z}J놀 =9JD"[N )!v*M #`WH BWkm>$ܠ$qT:}Z 4f(BBkL`sTvB) 8` 0J.->,,P9Gc5Le$Lu(6No>(`WT(iϴ0s r;$Uǚራpt2|< l:6=N❬5'lؔ|j/;7e ;y;Ք\׊HܒD3bSuH. ]?fCLYj Dg>(Oޯa ϕ1)y[P̆O}Jva D%'7Uֿ=]ΕV['.z0HG}f8.88?Mn%u)6A,m륭TףBhwߦǝEr*mx KyERm^Lf= bibledit-gtk-4.9/templates/versification_dutch_traditional.xml000664 000766 000024 00000307462 12221507125 025234 0ustar00teusstaff000000 000000 Genesis 1 31 Genesis 2 25 Genesis 3 24 Genesis 4 26 Genesis 5 32 Genesis 6 22 Genesis 7 24 Genesis 8 22 Genesis 9 29 Genesis 10 32 Genesis 11 32 Genesis 12 20 Genesis 13 18 Genesis 14 24 Genesis 15 21 Genesis 16 16 Genesis 17 27 Genesis 18 33 Genesis 19 38 Genesis 20 18 Genesis 21 34 Genesis 22 24 Genesis 23 20 Genesis 24 67 Genesis 25 34 Genesis 26 35 Genesis 27 46 Genesis 28 22 Genesis 29 35 Genesis 30 43 Genesis 31 55 Genesis 32 32 Genesis 33 20 Genesis 34 31 Genesis 35 29 Genesis 36 43 Genesis 37 36 Genesis 38 30 Genesis 39 23 Genesis 40 23 Genesis 41 57 Genesis 42 38 Genesis 43 34 Genesis 44 34 Genesis 45 28 Genesis 46 34 Genesis 47 31 Genesis 48 22 Genesis 49 33 Genesis 50 26 Exodus 1 22 Exodus 2 25 Exodus 3 22 Exodus 4 31 Exodus 5 24 Exodus 6 29 Exodus 7 25 Exodus 8 32 Exodus 9 35 Exodus 10 29 Exodus 11 10 Exodus 12 51 Exodus 13 22 Exodus 14 31 Exodus 15 27 Exodus 16 36 Exodus 17 16 Exodus 18 27 Exodus 19 25 Exodus 20 26 Exodus 21 36 Exodus 22 31 Exodus 23 33 Exodus 24 18 Exodus 25 40 Exodus 26 37 Exodus 27 21 Exodus 28 43 Exodus 29 46 Exodus 30 38 Exodus 31 18 Exodus 32 35 Exodus 33 23 Exodus 34 35 Exodus 35 35 Exodus 36 38 Exodus 37 29 Exodus 38 31 Exodus 39 43 Exodus 40 38 Leviticus 1 17 Leviticus 2 16 Leviticus 3 17 Leviticus 4 35 Leviticus 5 19 Leviticus 6 30 Leviticus 7 38 Leviticus 8 36 Leviticus 9 24 Leviticus 10 20 Leviticus 11 47 Leviticus 12 8 Leviticus 13 59 Leviticus 14 57 Leviticus 15 33 Leviticus 16 34 Leviticus 17 16 Leviticus 18 30 Leviticus 19 37 Leviticus 20 27 Leviticus 21 24 Leviticus 22 33 Leviticus 23 44 Leviticus 24 23 Leviticus 25 55 Leviticus 26 46 Leviticus 27 34 Numbers 1 54 Numbers 2 34 Numbers 3 51 Numbers 4 49 Numbers 5 31 Numbers 6 27 Numbers 7 89 Numbers 8 26 Numbers 9 23 Numbers 10 36 Numbers 11 35 Numbers 12 16 Numbers 13 33 Numbers 14 45 Numbers 15 41 Numbers 16 50 Numbers 17 13 Numbers 18 32 Numbers 19 22 Numbers 20 29 Numbers 21 35 Numbers 22 41 Numbers 23 30 Numbers 24 25 Numbers 25 18 Numbers 26 65 Numbers 27 23 Numbers 28 31 Numbers 29 40 Numbers 30 16 Numbers 31 54 Numbers 32 42 Numbers 33 56 Numbers 34 29 Numbers 35 34 Numbers 36 13 Deuteronomy 1 46 Deuteronomy 2 37 Deuteronomy 3 29 Deuteronomy 4 49 Deuteronomy 5 33 Deuteronomy 6 25 Deuteronomy 7 26 Deuteronomy 8 20 Deuteronomy 9 29 Deuteronomy 10 22 Deuteronomy 11 32 Deuteronomy 12 32 Deuteronomy 13 18 Deuteronomy 14 29 Deuteronomy 15 23 Deuteronomy 16 22 Deuteronomy 17 20 Deuteronomy 18 22 Deuteronomy 19 21 Deuteronomy 20 20 Deuteronomy 21 23 Deuteronomy 22 30 Deuteronomy 23 25 Deuteronomy 24 22 Deuteronomy 25 19 Deuteronomy 26 19 Deuteronomy 27 26 Deuteronomy 28 68 Deuteronomy 29 29 Deuteronomy 30 20 Deuteronomy 31 30 Deuteronomy 32 52 Deuteronomy 33 29 Deuteronomy 34 12 Joshua 1 18 Joshua 2 24 Joshua 3 17 Joshua 4 24 Joshua 5 15 Joshua 6 27 Joshua 7 26 Joshua 8 35 Joshua 9 27 Joshua 10 43 Joshua 11 23 Joshua 12 24 Joshua 13 33 Joshua 14 15 Joshua 15 63 Joshua 16 10 Joshua 17 18 Joshua 18 28 Joshua 19 51 Joshua 20 9 Joshua 21 45 Joshua 22 34 Joshua 23 16 Joshua 24 33 Judges 1 36 Judges 2 23 Judges 3 31 Judges 4 24 Judges 5 31 Judges 6 40 Judges 7 25 Judges 8 35 Judges 9 57 Judges 10 18 Judges 11 40 Judges 12 15 Judges 13 25 Judges 14 20 Judges 15 20 Judges 16 31 Judges 17 13 Judges 18 31 Judges 19 30 Judges 20 48 Judges 21 25 Ruth 1 22 Ruth 2 23 Ruth 3 18 Ruth 4 22 1 Samuel 1 28 1 Samuel 2 36 1 Samuel 3 21 1 Samuel 4 22 1 Samuel 5 12 1 Samuel 6 21 1 Samuel 7 17 1 Samuel 8 22 1 Samuel 9 27 1 Samuel 10 27 1 Samuel 11 15 1 Samuel 12 25 1 Samuel 13 23 1 Samuel 14 52 1 Samuel 15 35 1 Samuel 16 23 1 Samuel 17 58 1 Samuel 18 30 1 Samuel 19 24 1 Samuel 20 43 1 Samuel 21 15 1 Samuel 22 23 1 Samuel 23 28 1 Samuel 24 23 1 Samuel 25 44 1 Samuel 26 25 1 Samuel 27 12 1 Samuel 28 25 1 Samuel 29 11 1 Samuel 30 31 1 Samuel 31 13 2 Samuel 1 27 2 Samuel 2 32 2 Samuel 3 39 2 Samuel 4 12 2 Samuel 5 25 2 Samuel 6 23 2 Samuel 7 29 2 Samuel 8 18 2 Samuel 9 13 2 Samuel 10 19 2 Samuel 11 27 2 Samuel 12 31 2 Samuel 13 39 2 Samuel 14 33 2 Samuel 15 37 2 Samuel 16 23 2 Samuel 17 29 2 Samuel 18 33 2 Samuel 19 43 2 Samuel 20 26 2 Samuel 21 22 2 Samuel 22 51 2 Samuel 23 39 2 Samuel 24 25 1 Kings 1 53 1 Kings 2 46 1 Kings 3 28 1 Kings 4 34 1 Kings 5 18 1 Kings 6 38 1 Kings 7 51 1 Kings 8 66 1 Kings 9 28 1 Kings 10 29 1 Kings 11 43 1 Kings 12 33 1 Kings 13 34 1 Kings 14 31 1 Kings 15 34 1 Kings 16 34 1 Kings 17 24 1 Kings 18 46 1 Kings 19 21 1 Kings 20 43 1 Kings 21 29 1 Kings 22 54 2 Kings 1 18 2 Kings 2 25 2 Kings 3 27 2 Kings 4 44 2 Kings 5 27 2 Kings 6 33 2 Kings 7 20 2 Kings 8 29 2 Kings 9 37 2 Kings 10 36 2 Kings 11 21 2 Kings 12 21 2 Kings 13 25 2 Kings 14 29 2 Kings 15 38 2 Kings 16 20 2 Kings 17 41 2 Kings 18 37 2 Kings 19 37 2 Kings 20 21 2 Kings 21 26 2 Kings 22 20 2 Kings 23 37 2 Kings 24 20 2 Kings 25 30 1 Chronicles 1 54 1 Chronicles 2 55 1 Chronicles 3 24 1 Chronicles 4 43 1 Chronicles 5 26 1 Chronicles 6 81 1 Chronicles 7 40 1 Chronicles 8 40 1 Chronicles 9 44 1 Chronicles 10 14 1 Chronicles 11 47 1 Chronicles 12 40 1 Chronicles 13 14 1 Chronicles 14 17 1 Chronicles 15 29 1 Chronicles 16 43 1 Chronicles 17 27 1 Chronicles 18 17 1 Chronicles 19 19 1 Chronicles 20 8 1 Chronicles 21 30 1 Chronicles 22 19 1 Chronicles 23 32 1 Chronicles 24 31 1 Chronicles 25 31 1 Chronicles 26 32 1 Chronicles 27 34 1 Chronicles 28 21 1 Chronicles 29 30 2 Chronicles 1 17 2 Chronicles 2 18 2 Chronicles 3 17 2 Chronicles 4 22 2 Chronicles 5 14 2 Chronicles 6 42 2 Chronicles 7 22 2 Chronicles 8 18 2 Chronicles 9 31 2 Chronicles 10 19 2 Chronicles 11 23 2 Chronicles 12 16 2 Chronicles 13 22 2 Chronicles 14 15 2 Chronicles 15 19 2 Chronicles 16 14 2 Chronicles 17 19 2 Chronicles 18 34 2 Chronicles 19 11 2 Chronicles 20 37 2 Chronicles 21 20 2 Chronicles 22 12 2 Chronicles 23 21 2 Chronicles 24 27 2 Chronicles 25 28 2 Chronicles 26 23 2 Chronicles 27 9 2 Chronicles 28 27 2 Chronicles 29 36 2 Chronicles 30 27 2 Chronicles 31 21 2 Chronicles 32 33 2 Chronicles 33 25 2 Chronicles 34 33 2 Chronicles 35 27 2 Chronicles 36 23 Ezra 1 11 Ezra 2 70 Ezra 3 13 Ezra 4 24 Ezra 5 17 Ezra 6 22 Ezra 7 28 Ezra 8 36 Ezra 9 15 Ezra 10 44 Nehemiah 1 11 Nehemiah 2 20 Nehemiah 3 32 Nehemiah 4 23 Nehemiah 5 19 Nehemiah 6 19 Nehemiah 7 72 Nehemiah 8 19 Nehemiah 9 38 Nehemiah 10 39 Nehemiah 11 36 Nehemiah 12 47 Nehemiah 13 31 Esther 1 22 Esther 2 23 Esther 3 15 Esther 4 17 Esther 5 14 Esther 6 14 Esther 7 10 Esther 8 17 Esther 9 32 Esther 10 3 Job 1 22 Job 2 13 Job 3 26 Job 4 21 Job 5 27 Job 6 30 Job 7 21 Job 8 22 Job 9 35 Job 10 22 Job 11 20 Job 12 25 Job 13 28 Job 14 22 Job 15 35 Job 16 22 Job 17 16 Job 18 21 Job 19 29 Job 20 29 Job 21 34 Job 22 30 Job 23 17 Job 24 25 Job 25 6 Job 26 14 Job 27 23 Job 28 28 Job 29 25 Job 30 31 Job 31 40 Job 32 22 Job 33 33 Job 34 37 Job 35 16 Job 36 33 Job 37 24 Job 38 38 Job 39 38 Job 40 28 Job 41 25 Job 42 17 Psalms 1 6 Psalms 2 12 Psalms 3 9 Psalms 4 9 Psalms 5 13 Psalms 6 11 Psalms 7 18 Psalms 8 10 Psalms 9 21 Psalms 10 18 Psalms 11 7 Psalms 12 9 Psalms 13 6 Psalms 14 7 Psalms 15 5 Psalms 16 11 Psalms 17 15 Psalms 18 51 Psalms 19 15 Psalms 20 10 Psalms 21 14 Psalms 22 32 Psalms 23 6 Psalms 24 10 Psalms 25 22 Psalms 26 12 Psalms 27 14 Psalms 28 9 Psalms 29 11 Psalms 30 13 Psalms 31 25 Psalms 32 11 Psalms 33 22 Psalms 34 23 Psalms 35 28 Psalms 36 13 Psalms 37 40 Psalms 38 23 Psalms 39 14 Psalms 40 18 Psalms 41 14 Psalms 42 12 Psalms 43 5 Psalms 44 27 Psalms 45 18 Psalms 46 12 Psalms 47 10 Psalms 48 15 Psalms 49 21 Psalms 50 23 Psalms 51 21 Psalms 52 11 Psalms 53 7 Psalms 54 9 Psalms 55 24 Psalms 56 14 Psalms 57 12 Psalms 58 12 Psalms 59 18 Psalms 60 14 Psalms 61 9 Psalms 62 13 Psalms 63 12 Psalms 64 11 Psalms 65 14 Psalms 66 20 Psalms 67 8 Psalms 68 36 Psalms 69 37 Psalms 70 6 Psalms 71 24 Psalms 72 20 Psalms 73 28 Psalms 74 23 Psalms 75 11 Psalms 76 13 Psalms 77 21 Psalms 78 72 Psalms 79 13 Psalms 80 20 Psalms 81 17 Psalms 82 8 Psalms 83 19 Psalms 84 13 Psalms 85 14 Psalms 86 17 Psalms 87 7 Psalms 88 19 Psalms 89 53 Psalms 90 17 Psalms 91 16 Psalms 92 16 Psalms 93 5 Psalms 94 23 Psalms 95 11 Psalms 96 13 Psalms 97 12 Psalms 98 9 Psalms 99 9 Psalms 100 5 Psalms 101 8 Psalms 102 29 Psalms 103 22 Psalms 104 35 Psalms 105 45 Psalms 106 48 Psalms 107 43 Psalms 108 14 Psalms 109 31 Psalms 110 7 Psalms 111 10 Psalms 112 10 Psalms 113 9 Psalms 114 8 Psalms 115 18 Psalms 116 19 Psalms 117 2 Psalms 118 29 Psalms 119 176 Psalms 120 7 Psalms 121 8 Psalms 122 9 Psalms 123 4 Psalms 124 8 Psalms 125 5 Psalms 126 6 Psalms 127 5 Psalms 128 6 Psalms 129 8 Psalms 130 8 Psalms 131 3 Psalms 132 18 Psalms 133 3 Psalms 134 3 Psalms 135 21 Psalms 136 26 Psalms 137 9 Psalms 138 8 Psalms 139 24 Psalms 140 14 Psalms 141 10 Psalms 142 8 Psalms 143 12 Psalms 144 15 Psalms 145 21 Psalms 146 10 Psalms 147 20 Psalms 148 14 Psalms 149 9 Psalms 150 6 Proverbs 1 33 Proverbs 2 22 Proverbs 3 35 Proverbs 4 27 Proverbs 5 23 Proverbs 6 35 Proverbs 7 27 Proverbs 8 36 Proverbs 9 18 Proverbs 10 32 Proverbs 11 31 Proverbs 12 28 Proverbs 13 25 Proverbs 14 35 Proverbs 15 33 Proverbs 16 33 Proverbs 17 28 Proverbs 18 24 Proverbs 19 29 Proverbs 20 30 Proverbs 21 31 Proverbs 22 29 Proverbs 23 35 Proverbs 24 34 Proverbs 25 28 Proverbs 26 28 Proverbs 27 27 Proverbs 28 28 Proverbs 29 27 Proverbs 30 33 Proverbs 31 31 Ecclesiastes 1 18 Ecclesiastes 2 26 Ecclesiastes 3 22 Ecclesiastes 4 17 Ecclesiastes 5 19 Ecclesiastes 6 12 Ecclesiastes 7 29 Ecclesiastes 8 17 Ecclesiastes 9 18 Ecclesiastes 10 20 Ecclesiastes 11 10 Ecclesiastes 12 14 Song of Solomon 1 17 Song of Solomon 2 17 Song of Solomon 3 11 Song of Solomon 4 16 Song of Solomon 5 16 Song of Solomon 6 13 Song of Solomon 7 13 Song of Solomon 8 14 Isaiah 1 31 Isaiah 2 22 Isaiah 3 26 Isaiah 4 6 Isaiah 5 30 Isaiah 6 13 Isaiah 7 25 Isaiah 8 23 Isaiah 9 20 Isaiah 10 34 Isaiah 11 16 Isaiah 12 6 Isaiah 13 22 Isaiah 14 32 Isaiah 15 9 Isaiah 16 14 Isaiah 17 14 Isaiah 18 7 Isaiah 19 25 Isaiah 20 6 Isaiah 21 17 Isaiah 22 25 Isaiah 23 18 Isaiah 24 23 Isaiah 25 12 Isaiah 26 21 Isaiah 27 13 Isaiah 28 29 Isaiah 29 24 Isaiah 30 33 Isaiah 31 9 Isaiah 32 20 Isaiah 33 24 Isaiah 34 17 Isaiah 35 10 Isaiah 36 22 Isaiah 37 38 Isaiah 38 22 Isaiah 39 8 Isaiah 40 31 Isaiah 41 29 Isaiah 42 25 Isaiah 43 28 Isaiah 44 28 Isaiah 45 25 Isaiah 46 13 Isaiah 47 15 Isaiah 48 22 Isaiah 49 26 Isaiah 50 11 Isaiah 51 23 Isaiah 52 15 Isaiah 53 12 Isaiah 54 17 Isaiah 55 13 Isaiah 56 12 Isaiah 57 21 Isaiah 58 14 Isaiah 59 21 Isaiah 60 22 Isaiah 61 11 Isaiah 62 12 Isaiah 63 19 Isaiah 64 12 Isaiah 65 25 Isaiah 66 24 Jeremiah 1 19 Jeremiah 2 37 Jeremiah 3 25 Jeremiah 4 31 Jeremiah 5 31 Jeremiah 6 30 Jeremiah 7 34 Jeremiah 8 22 Jeremiah 9 26 Jeremiah 10 25 Jeremiah 11 23 Jeremiah 12 17 Jeremiah 13 27 Jeremiah 14 22 Jeremiah 15 21 Jeremiah 16 21 Jeremiah 17 27 Jeremiah 18 23 Jeremiah 19 15 Jeremiah 20 18 Jeremiah 21 14 Jeremiah 22 30 Jeremiah 23 40 Jeremiah 24 10 Jeremiah 25 38 Jeremiah 26 24 Jeremiah 27 22 Jeremiah 28 17 Jeremiah 29 32 Jeremiah 30 24 Jeremiah 31 40 Jeremiah 32 44 Jeremiah 33 26 Jeremiah 34 22 Jeremiah 35 19 Jeremiah 36 32 Jeremiah 37 21 Jeremiah 38 28 Jeremiah 39 18 Jeremiah 40 16 Jeremiah 41 18 Jeremiah 42 22 Jeremiah 43 13 Jeremiah 44 30 Jeremiah 45 5 Jeremiah 46 28 Jeremiah 47 7 Jeremiah 48 47 Jeremiah 49 39 Jeremiah 50 46 Jeremiah 51 64 Jeremiah 52 34 Lamentations 1 22 Lamentations 2 22 Lamentations 3 66 Lamentations 4 22 Lamentations 5 22 Ezekiel 1 28 Ezekiel 2 10 Ezekiel 3 27 Ezekiel 4 17 Ezekiel 5 17 Ezekiel 6 14 Ezekiel 7 27 Ezekiel 8 18 Ezekiel 9 11 Ezekiel 10 22 Ezekiel 11 25 Ezekiel 12 28 Ezekiel 13 23 Ezekiel 14 23 Ezekiel 15 8 Ezekiel 16 63 Ezekiel 17 24 Ezekiel 18 32 Ezekiel 19 14 Ezekiel 20 49 Ezekiel 21 32 Ezekiel 22 31 Ezekiel 23 49 Ezekiel 24 27 Ezekiel 25 17 Ezekiel 26 21 Ezekiel 27 36 Ezekiel 28 26 Ezekiel 29 21 Ezekiel 30 26 Ezekiel 31 18 Ezekiel 32 32 Ezekiel 33 33 Ezekiel 34 31 Ezekiel 35 15 Ezekiel 36 38 Ezekiel 37 28 Ezekiel 38 23 Ezekiel 39 29 Ezekiel 40 49 Ezekiel 41 26 Ezekiel 42 20 Ezekiel 43 27 Ezekiel 44 31 Ezekiel 45 25 Ezekiel 46 24 Ezekiel 47 23 Ezekiel 48 35 Daniel 1 21 Daniel 2 49 Daniel 3 30 Daniel 4 37 Daniel 5 30 Daniel 6 29 Daniel 7 28 Daniel 8 27 Daniel 9 27 Daniel 10 21 Daniel 11 45 Daniel 12 13 Hosea 1 12 Hosea 2 22 Hosea 3 5 Hosea 4 19 Hosea 5 15 Hosea 6 11 Hosea 7 16 Hosea 8 14 Hosea 9 17 Hosea 10 15 Hosea 11 11 Hosea 12 15 Hosea 13 15 Hosea 14 10 Joel 1 20 Joel 2 32 Joel 3 21 Amos 1 15 Amos 2 16 Amos 3 15 Amos 4 13 Amos 5 27 Amos 6 14 Amos 7 17 Amos 8 14 Amos 9 15 Obadiah 1 21 Jonah 1 17 Jonah 2 10 Jonah 3 10 Jonah 4 11 Micah 1 16 Micah 2 13 Micah 3 12 Micah 4 14 Micah 5 14 Micah 6 16 Micah 7 20 Nahum 1 15 Nahum 2 13 Nahum 3 19 Habakkuk 1 17 Habakkuk 2 20 Habakkuk 3 19 Zephaniah 1 18 Zephaniah 2 15 Zephaniah 3 20 Haggai 1 14 Haggai 2 24 Zechariah 1 21 Zechariah 2 13 Zechariah 3 10 Zechariah 4 14 Zechariah 5 11 Zechariah 6 15 Zechariah 7 14 Zechariah 8 23 Zechariah 9 17 Zechariah 10 12 Zechariah 11 17 Zechariah 12 14 Zechariah 13 9 Zechariah 14 21 Malachi 1 14 Malachi 2 17 Malachi 3 18 Malachi 4 6 Matthew 1 25 Matthew 2 23 Matthew 3 17 Matthew 4 25 Matthew 5 48 Matthew 6 34 Matthew 7 29 Matthew 8 34 Matthew 9 38 Matthew 10 42 Matthew 11 30 Matthew 12 50 Matthew 13 58 Matthew 14 36 Matthew 15 39 Matthew 16 28 Matthew 17 27 Matthew 18 35 Matthew 19 30 Matthew 20 34 Matthew 21 46 Matthew 22 46 Matthew 23 39 Matthew 24 51 Matthew 25 46 Matthew 26 75 Matthew 27 66 Matthew 28 20 Mark 1 45 Mark 2 28 Mark 3 35 Mark 4 41 Mark 5 43 Mark 6 56 Mark 7 37 Mark 8 38 Mark 9 50 Mark 10 52 Mark 11 33 Mark 12 44 Mark 13 37 Mark 14 72 Mark 15 47 Mark 16 20 Luke 1 80 Luke 2 52 Luke 3 38 Luke 4 44 Luke 5 39 Luke 6 49 Luke 7 50 Luke 8 56 Luke 9 62 Luke 10 42 Luke 11 54 Luke 12 59 Luke 13 35 Luke 14 35 Luke 15 32 Luke 16 31 Luke 17 37 Luke 18 43 Luke 19 48 Luke 20 47 Luke 21 38 Luke 22 71 Luke 23 56 Luke 24 53 John 1 52 John 2 25 John 3 36 John 4 54 John 5 47 John 6 71 John 7 53 John 8 59 John 9 41 John 10 42 John 11 57 John 12 50 John 13 38 John 14 31 John 15 27 John 16 33 John 17 26 John 18 40 John 19 42 John 20 31 John 21 25 Acts 1 26 Acts 2 47 Acts 3 26 Acts 4 37 Acts 5 42 Acts 6 15 Acts 7 60 Acts 8 40 Acts 9 43 Acts 10 48 Acts 11 30 Acts 12 25 Acts 13 52 Acts 14 28 Acts 15 41 Acts 16 40 Acts 17 34 Acts 18 28 Acts 19 40 Acts 20 38 Acts 21 40 Acts 22 30 Acts 23 35 Acts 24 27 Acts 25 27 Acts 26 32 Acts 27 44 Acts 28 31 Romans 1 32 Romans 2 29 Romans 3 31 Romans 4 25 Romans 5 21 Romans 6 23 Romans 7 26 Romans 8 39 Romans 9 33 Romans 10 21 Romans 11 36 Romans 12 21 Romans 13 14 Romans 14 23 Romans 15 33 Romans 16 27 1 Corinthians 1 31 1 Corinthians 2 16 1 Corinthians 3 23 1 Corinthians 4 21 1 Corinthians 5 13 1 Corinthians 6 20 1 Corinthians 7 40 1 Corinthians 8 13 1 Corinthians 9 27 1 Corinthians 10 33 1 Corinthians 11 34 1 Corinthians 12 31 1 Corinthians 13 13 1 Corinthians 14 40 1 Corinthians 15 58 1 Corinthians 16 24 2 Corinthians 1 24 2 Corinthians 2 17 2 Corinthians 3 18 2 Corinthians 4 18 2 Corinthians 5 21 2 Corinthians 6 18 2 Corinthians 7 16 2 Corinthians 8 24 2 Corinthians 9 15 2 Corinthians 10 18 2 Corinthians 11 33 2 Corinthians 12 21 2 Corinthians 13 13 Galatians 1 24 Galatians 2 21 Galatians 3 29 Galatians 4 31 Galatians 5 26 Galatians 6 18 Ephesians 1 23 Ephesians 2 22 Ephesians 3 21 Ephesians 4 32 Ephesians 5 33 Ephesians 6 24 Philippians 1 30 Philippians 2 30 Philippians 3 21 Philippians 4 23 Colossians 1 29 Colossians 2 23 Colossians 3 25 Colossians 4 18 1 Thessalonians 1 10 1 Thessalonians 2 20 1 Thessalonians 3 13 1 Thessalonians 4 18 1 Thessalonians 5 28 2 Thessalonians 1 12 2 Thessalonians 2 17 2 Thessalonians 3 18 1 Timothy 1 20 1 Timothy 2 15 1 Timothy 3 16 1 Timothy 4 16 1 Timothy 5 25 1 Timothy 6 21 2 Timothy 1 18 2 Timothy 2 26 2 Timothy 3 17 2 Timothy 4 22 Titus 1 16 Titus 2 15 Titus 3 15 Philemon 1 25 Hebrews 1 14 Hebrews 2 18 Hebrews 3 19 Hebrews 4 16 Hebrews 5 14 Hebrews 6 20 Hebrews 7 28 Hebrews 8 13 Hebrews 9 28 Hebrews 10 39 Hebrews 11 40 Hebrews 12 29 Hebrews 13 25 James 1 27 James 2 26 James 3 18 James 4 17 James 5 20 1 Peter 1 25 1 Peter 2 25 1 Peter 3 22 1 Peter 4 19 1 Peter 5 14 2 Peter 1 21 2 Peter 2 22 2 Peter 3 18 1 John 1 10 1 John 2 29 1 John 3 24 1 John 4 21 1 John 5 21 2 John 1 13 3 John 1 15 Jude 1 25 Revelation 1 20 Revelation 2 29 Revelation 3 22 Revelation 4 11 Revelation 5 14 Revelation 6 17 Revelation 7 17 Revelation 8 13 Revelation 9 21 Revelation 10 11 Revelation 11 19 Revelation 12 18 Revelation 13 18 Revelation 14 20 Revelation 15 8 Revelation 16 21 Revelation 17 18 Revelation 18 24 Revelation 19 21 Revelation 20 15 Revelation 21 27 Revelation 22 21 bibledit-gtk-4.9/templates/versification_english.xml000664 000766 000024 00000307455 12221507126 023167 0ustar00teusstaff000000 000000 Genesis 1 31 Genesis 2 25 Genesis 3 24 Genesis 4 26 Genesis 5 32 Genesis 6 22 Genesis 7 24 Genesis 8 22 Genesis 9 29 Genesis 10 32 Genesis 11 32 Genesis 12 20 Genesis 13 18 Genesis 14 24 Genesis 15 21 Genesis 16 16 Genesis 17 27 Genesis 18 33 Genesis 19 38 Genesis 20 18 Genesis 21 34 Genesis 22 24 Genesis 23 20 Genesis 24 67 Genesis 25 34 Genesis 26 35 Genesis 27 46 Genesis 28 22 Genesis 29 35 Genesis 30 43 Genesis 31 55 Genesis 32 32 Genesis 33 20 Genesis 34 31 Genesis 35 29 Genesis 36 43 Genesis 37 36 Genesis 38 30 Genesis 39 23 Genesis 40 23 Genesis 41 57 Genesis 42 38 Genesis 43 34 Genesis 44 34 Genesis 45 28 Genesis 46 34 Genesis 47 31 Genesis 48 22 Genesis 49 33 Genesis 50 26 Exodus 1 22 Exodus 2 25 Exodus 3 22 Exodus 4 31 Exodus 5 23 Exodus 6 30 Exodus 7 25 Exodus 8 32 Exodus 9 35 Exodus 10 29 Exodus 11 10 Exodus 12 51 Exodus 13 22 Exodus 14 31 Exodus 15 27 Exodus 16 36 Exodus 17 16 Exodus 18 27 Exodus 19 25 Exodus 20 26 Exodus 21 36 Exodus 22 31 Exodus 23 33 Exodus 24 18 Exodus 25 40 Exodus 26 37 Exodus 27 21 Exodus 28 43 Exodus 29 46 Exodus 30 38 Exodus 31 18 Exodus 32 35 Exodus 33 23 Exodus 34 35 Exodus 35 35 Exodus 36 38 Exodus 37 29 Exodus 38 31 Exodus 39 43 Exodus 40 38 Leviticus 1 17 Leviticus 2 16 Leviticus 3 17 Leviticus 4 35 Leviticus 5 19 Leviticus 6 30 Leviticus 7 38 Leviticus 8 36 Leviticus 9 24 Leviticus 10 20 Leviticus 11 47 Leviticus 12 8 Leviticus 13 59 Leviticus 14 57 Leviticus 15 33 Leviticus 16 34 Leviticus 17 16 Leviticus 18 30 Leviticus 19 37 Leviticus 20 27 Leviticus 21 24 Leviticus 22 33 Leviticus 23 44 Leviticus 24 23 Leviticus 25 55 Leviticus 26 46 Leviticus 27 34 Numbers 1 54 Numbers 2 34 Numbers 3 51 Numbers 4 49 Numbers 5 31 Numbers 6 27 Numbers 7 89 Numbers 8 26 Numbers 9 23 Numbers 10 36 Numbers 11 35 Numbers 12 16 Numbers 13 33 Numbers 14 45 Numbers 15 41 Numbers 16 50 Numbers 17 13 Numbers 18 32 Numbers 19 22 Numbers 20 29 Numbers 21 35 Numbers 22 41 Numbers 23 30 Numbers 24 25 Numbers 25 18 Numbers 26 65 Numbers 27 23 Numbers 28 31 Numbers 29 40 Numbers 30 16 Numbers 31 54 Numbers 32 42 Numbers 33 56 Numbers 34 29 Numbers 35 34 Numbers 36 13 Deuteronomy 1 46 Deuteronomy 2 37 Deuteronomy 3 29 Deuteronomy 4 49 Deuteronomy 5 33 Deuteronomy 6 25 Deuteronomy 7 26 Deuteronomy 8 20 Deuteronomy 9 29 Deuteronomy 10 22 Deuteronomy 11 32 Deuteronomy 12 32 Deuteronomy 13 18 Deuteronomy 14 29 Deuteronomy 15 23 Deuteronomy 16 22 Deuteronomy 17 20 Deuteronomy 18 22 Deuteronomy 19 21 Deuteronomy 20 20 Deuteronomy 21 23 Deuteronomy 22 30 Deuteronomy 23 25 Deuteronomy 24 22 Deuteronomy 25 19 Deuteronomy 26 19 Deuteronomy 27 26 Deuteronomy 28 68 Deuteronomy 29 29 Deuteronomy 30 20 Deuteronomy 31 30 Deuteronomy 32 52 Deuteronomy 33 29 Deuteronomy 34 12 Joshua 1 18 Joshua 2 24 Joshua 3 17 Joshua 4 24 Joshua 5 15 Joshua 6 27 Joshua 7 26 Joshua 8 35 Joshua 9 27 Joshua 10 43 Joshua 11 23 Joshua 12 24 Joshua 13 33 Joshua 14 15 Joshua 15 63 Joshua 16 10 Joshua 17 18 Joshua 18 28 Joshua 19 51 Joshua 20 9 Joshua 21 45 Joshua 22 34 Joshua 23 16 Joshua 24 33 Judges 1 36 Judges 2 23 Judges 3 31 Judges 4 24 Judges 5 31 Judges 6 40 Judges 7 25 Judges 8 35 Judges 9 57 Judges 10 18 Judges 11 40 Judges 12 15 Judges 13 25 Judges 14 20 Judges 15 20 Judges 16 31 Judges 17 13 Judges 18 31 Judges 19 30 Judges 20 48 Judges 21 25 Ruth 1 22 Ruth 2 23 Ruth 3 18 Ruth 4 22 1 Samuel 1 28 1 Samuel 2 36 1 Samuel 3 21 1 Samuel 4 22 1 Samuel 5 12 1 Samuel 6 21 1 Samuel 7 17 1 Samuel 8 22 1 Samuel 9 27 1 Samuel 10 27 1 Samuel 11 15 1 Samuel 12 25 1 Samuel 13 23 1 Samuel 14 52 1 Samuel 15 35 1 Samuel 16 23 1 Samuel 17 58 1 Samuel 18 30 1 Samuel 19 24 1 Samuel 20 42 1 Samuel 21 15 1 Samuel 22 23 1 Samuel 23 29 1 Samuel 24 22 1 Samuel 25 44 1 Samuel 26 25 1 Samuel 27 12 1 Samuel 28 25 1 Samuel 29 11 1 Samuel 30 31 1 Samuel 31 13 2 Samuel 1 27 2 Samuel 2 32 2 Samuel 3 39 2 Samuel 4 12 2 Samuel 5 25 2 Samuel 6 23 2 Samuel 7 29 2 Samuel 8 18 2 Samuel 9 13 2 Samuel 10 19 2 Samuel 11 27 2 Samuel 12 31 2 Samuel 13 39 2 Samuel 14 33 2 Samuel 15 37 2 Samuel 16 23 2 Samuel 17 29 2 Samuel 18 33 2 Samuel 19 43 2 Samuel 20 26 2 Samuel 21 22 2 Samuel 22 51 2 Samuel 23 39 2 Samuel 24 25 1 Kings 1 53 1 Kings 2 46 1 Kings 3 28 1 Kings 4 34 1 Kings 5 18 1 Kings 6 38 1 Kings 7 51 1 Kings 8 66 1 Kings 9 28 1 Kings 10 29 1 Kings 11 43 1 Kings 12 33 1 Kings 13 34 1 Kings 14 31 1 Kings 15 34 1 Kings 16 34 1 Kings 17 24 1 Kings 18 46 1 Kings 19 21 1 Kings 20 43 1 Kings 21 29 1 Kings 22 53 2 Kings 1 18 2 Kings 2 25 2 Kings 3 27 2 Kings 4 44 2 Kings 5 27 2 Kings 6 33 2 Kings 7 20 2 Kings 8 29 2 Kings 9 37 2 Kings 10 36 2 Kings 11 21 2 Kings 12 21 2 Kings 13 25 2 Kings 14 29 2 Kings 15 38 2 Kings 16 20 2 Kings 17 41 2 Kings 18 37 2 Kings 19 37 2 Kings 20 21 2 Kings 21 26 2 Kings 22 20 2 Kings 23 37 2 Kings 24 20 2 Kings 25 30 1 Chronicles 1 54 1 Chronicles 2 55 1 Chronicles 3 24 1 Chronicles 4 43 1 Chronicles 5 26 1 Chronicles 6 81 1 Chronicles 7 40 1 Chronicles 8 40 1 Chronicles 9 44 1 Chronicles 10 14 1 Chronicles 11 47 1 Chronicles 12 40 1 Chronicles 13 14 1 Chronicles 14 17 1 Chronicles 15 29 1 Chronicles 16 43 1 Chronicles 17 27 1 Chronicles 18 17 1 Chronicles 19 19 1 Chronicles 20 8 1 Chronicles 21 30 1 Chronicles 22 19 1 Chronicles 23 32 1 Chronicles 24 31 1 Chronicles 25 31 1 Chronicles 26 32 1 Chronicles 27 34 1 Chronicles 28 21 1 Chronicles 29 30 2 Chronicles 1 17 2 Chronicles 2 18 2 Chronicles 3 17 2 Chronicles 4 22 2 Chronicles 5 14 2 Chronicles 6 42 2 Chronicles 7 22 2 Chronicles 8 18 2 Chronicles 9 31 2 Chronicles 10 19 2 Chronicles 11 23 2 Chronicles 12 16 2 Chronicles 13 22 2 Chronicles 14 15 2 Chronicles 15 19 2 Chronicles 16 14 2 Chronicles 17 19 2 Chronicles 18 34 2 Chronicles 19 11 2 Chronicles 20 37 2 Chronicles 21 20 2 Chronicles 22 12 2 Chronicles 23 21 2 Chronicles 24 27 2 Chronicles 25 28 2 Chronicles 26 23 2 Chronicles 27 9 2 Chronicles 28 27 2 Chronicles 29 36 2 Chronicles 30 27 2 Chronicles 31 21 2 Chronicles 32 33 2 Chronicles 33 25 2 Chronicles 34 33 2 Chronicles 35 27 2 Chronicles 36 23 Ezra 1 11 Ezra 2 70 Ezra 3 13 Ezra 4 24 Ezra 5 17 Ezra 6 22 Ezra 7 28 Ezra 8 36 Ezra 9 15 Ezra 10 44 Nehemiah 1 11 Nehemiah 2 20 Nehemiah 3 32 Nehemiah 4 23 Nehemiah 5 19 Nehemiah 6 19 Nehemiah 7 73 Nehemiah 8 18 Nehemiah 9 38 Nehemiah 10 39 Nehemiah 11 36 Nehemiah 12 47 Nehemiah 13 31 Esther 1 22 Esther 2 23 Esther 3 15 Esther 4 17 Esther 5 14 Esther 6 14 Esther 7 10 Esther 8 17 Esther 9 32 Esther 10 3 Job 1 22 Job 2 13 Job 3 26 Job 4 21 Job 5 27 Job 6 30 Job 7 21 Job 8 22 Job 9 35 Job 10 22 Job 11 20 Job 12 25 Job 13 28 Job 14 22 Job 15 35 Job 16 22 Job 17 16 Job 18 21 Job 19 29 Job 20 29 Job 21 34 Job 22 30 Job 23 17 Job 24 25 Job 25 6 Job 26 14 Job 27 23 Job 28 28 Job 29 25 Job 30 31 Job 31 40 Job 32 22 Job 33 33 Job 34 37 Job 35 16 Job 36 33 Job 37 24 Job 38 41 Job 39 30 Job 40 24 Job 41 34 Job 42 17 Psalms 1 6 Psalms 2 12 Psalms 3 8 Psalms 4 8 Psalms 5 12 Psalms 6 10 Psalms 7 17 Psalms 8 9 Psalms 9 20 Psalms 10 18 Psalms 11 7 Psalms 12 8 Psalms 13 6 Psalms 14 7 Psalms 15 5 Psalms 16 11 Psalms 17 15 Psalms 18 50 Psalms 19 14 Psalms 20 9 Psalms 21 13 Psalms 22 31 Psalms 23 6 Psalms 24 10 Psalms 25 22 Psalms 26 12 Psalms 27 14 Psalms 28 9 Psalms 29 11 Psalms 30 12 Psalms 31 24 Psalms 32 11 Psalms 33 22 Psalms 34 22 Psalms 35 28 Psalms 36 12 Psalms 37 40 Psalms 38 22 Psalms 39 13 Psalms 40 17 Psalms 41 13 Psalms 42 11 Psalms 43 5 Psalms 44 26 Psalms 45 17 Psalms 46 11 Psalms 47 9 Psalms 48 14 Psalms 49 20 Psalms 50 23 Psalms 51 19 Psalms 52 9 Psalms 53 6 Psalms 54 7 Psalms 55 23 Psalms 56 13 Psalms 57 11 Psalms 58 11 Psalms 59 17 Psalms 60 12 Psalms 61 8 Psalms 62 12 Psalms 63 11 Psalms 64 10 Psalms 65 13 Psalms 66 20 Psalms 67 7 Psalms 68 35 Psalms 69 36 Psalms 70 5 Psalms 71 24 Psalms 72 20 Psalms 73 28 Psalms 74 23 Psalms 75 10 Psalms 76 12 Psalms 77 20 Psalms 78 72 Psalms 79 13 Psalms 80 19 Psalms 81 16 Psalms 82 8 Psalms 83 18 Psalms 84 12 Psalms 85 13 Psalms 86 17 Psalms 87 7 Psalms 88 18 Psalms 89 52 Psalms 90 17 Psalms 91 16 Psalms 92 15 Psalms 93 5 Psalms 94 23 Psalms 95 11 Psalms 96 13 Psalms 97 12 Psalms 98 9 Psalms 99 9 Psalms 100 5 Psalms 101 8 Psalms 102 28 Psalms 103 22 Psalms 104 35 Psalms 105 45 Psalms 106 48 Psalms 107 43 Psalms 108 13 Psalms 109 31 Psalms 110 7 Psalms 111 10 Psalms 112 10 Psalms 113 9 Psalms 114 8 Psalms 115 18 Psalms 116 19 Psalms 117 2 Psalms 118 29 Psalms 119 176 Psalms 120 7 Psalms 121 8 Psalms 122 9 Psalms 123 4 Psalms 124 8 Psalms 125 5 Psalms 126 6 Psalms 127 5 Psalms 128 6 Psalms 129 8 Psalms 130 8 Psalms 131 3 Psalms 132 18 Psalms 133 3 Psalms 134 3 Psalms 135 21 Psalms 136 26 Psalms 137 9 Psalms 138 8 Psalms 139 24 Psalms 140 13 Psalms 141 10 Psalms 142 7 Psalms 143 12 Psalms 144 15 Psalms 145 21 Psalms 146 10 Psalms 147 20 Psalms 148 14 Psalms 149 9 Psalms 150 6 Proverbs 1 33 Proverbs 2 22 Proverbs 3 35 Proverbs 4 27 Proverbs 5 23 Proverbs 6 35 Proverbs 7 27 Proverbs 8 36 Proverbs 9 18 Proverbs 10 32 Proverbs 11 31 Proverbs 12 28 Proverbs 13 25 Proverbs 14 35 Proverbs 15 33 Proverbs 16 33 Proverbs 17 28 Proverbs 18 24 Proverbs 19 29 Proverbs 20 30 Proverbs 21 31 Proverbs 22 29 Proverbs 23 35 Proverbs 24 34 Proverbs 25 28 Proverbs 26 28 Proverbs 27 27 Proverbs 28 28 Proverbs 29 27 Proverbs 30 33 Proverbs 31 31 Ecclesiastes 1 18 Ecclesiastes 2 26 Ecclesiastes 3 22 Ecclesiastes 4 16 Ecclesiastes 5 20 Ecclesiastes 6 12 Ecclesiastes 7 29 Ecclesiastes 8 17 Ecclesiastes 9 18 Ecclesiastes 10 20 Ecclesiastes 11 10 Ecclesiastes 12 14 Song of Solomon 1 17 Song of Solomon 2 17 Song of Solomon 3 11 Song of Solomon 4 16 Song of Solomon 5 16 Song of Solomon 6 13 Song of Solomon 7 13 Song of Solomon 8 14 Isaiah 1 31 Isaiah 2 22 Isaiah 3 26 Isaiah 4 6 Isaiah 5 30 Isaiah 6 13 Isaiah 7 25 Isaiah 8 22 Isaiah 9 21 Isaiah 10 34 Isaiah 11 16 Isaiah 12 6 Isaiah 13 22 Isaiah 14 32 Isaiah 15 9 Isaiah 16 14 Isaiah 17 14 Isaiah 18 7 Isaiah 19 25 Isaiah 20 6 Isaiah 21 17 Isaiah 22 25 Isaiah 23 18 Isaiah 24 23 Isaiah 25 12 Isaiah 26 21 Isaiah 27 13 Isaiah 28 29 Isaiah 29 24 Isaiah 30 33 Isaiah 31 9 Isaiah 32 20 Isaiah 33 24 Isaiah 34 17 Isaiah 35 10 Isaiah 36 22 Isaiah 37 38 Isaiah 38 22 Isaiah 39 8 Isaiah 40 31 Isaiah 41 29 Isaiah 42 25 Isaiah 43 28 Isaiah 44 28 Isaiah 45 25 Isaiah 46 13 Isaiah 47 15 Isaiah 48 22 Isaiah 49 26 Isaiah 50 11 Isaiah 51 23 Isaiah 52 15 Isaiah 53 12 Isaiah 54 17 Isaiah 55 13 Isaiah 56 12 Isaiah 57 21 Isaiah 58 14 Isaiah 59 21 Isaiah 60 22 Isaiah 61 11 Isaiah 62 12 Isaiah 63 19 Isaiah 64 12 Isaiah 65 25 Isaiah 66 24 Jeremiah 1 19 Jeremiah 2 37 Jeremiah 3 25 Jeremiah 4 31 Jeremiah 5 31 Jeremiah 6 30 Jeremiah 7 34 Jeremiah 8 22 Jeremiah 9 26 Jeremiah 10 25 Jeremiah 11 23 Jeremiah 12 17 Jeremiah 13 27 Jeremiah 14 22 Jeremiah 15 21 Jeremiah 16 21 Jeremiah 17 27 Jeremiah 18 23 Jeremiah 19 15 Jeremiah 20 18 Jeremiah 21 14 Jeremiah 22 30 Jeremiah 23 40 Jeremiah 24 10 Jeremiah 25 38 Jeremiah 26 24 Jeremiah 27 22 Jeremiah 28 17 Jeremiah 29 32 Jeremiah 30 24 Jeremiah 31 40 Jeremiah 32 44 Jeremiah 33 26 Jeremiah 34 22 Jeremiah 35 19 Jeremiah 36 32 Jeremiah 37 21 Jeremiah 38 28 Jeremiah 39 18 Jeremiah 40 16 Jeremiah 41 18 Jeremiah 42 22 Jeremiah 43 13 Jeremiah 44 30 Jeremiah 45 5 Jeremiah 46 28 Jeremiah 47 7 Jeremiah 48 47 Jeremiah 49 39 Jeremiah 50 46 Jeremiah 51 64 Jeremiah 52 34 Lamentations 1 22 Lamentations 2 22 Lamentations 3 66 Lamentations 4 22 Lamentations 5 22 Ezekiel 1 28 Ezekiel 2 10 Ezekiel 3 27 Ezekiel 4 17 Ezekiel 5 17 Ezekiel 6 14 Ezekiel 7 27 Ezekiel 8 18 Ezekiel 9 11 Ezekiel 10 22 Ezekiel 11 25 Ezekiel 12 28 Ezekiel 13 23 Ezekiel 14 23 Ezekiel 15 8 Ezekiel 16 63 Ezekiel 17 24 Ezekiel 18 32 Ezekiel 19 14 Ezekiel 20 49 Ezekiel 21 32 Ezekiel 22 31 Ezekiel 23 49 Ezekiel 24 27 Ezekiel 25 17 Ezekiel 26 21 Ezekiel 27 36 Ezekiel 28 26 Ezekiel 29 21 Ezekiel 30 26 Ezekiel 31 18 Ezekiel 32 32 Ezekiel 33 33 Ezekiel 34 31 Ezekiel 35 15 Ezekiel 36 38 Ezekiel 37 28 Ezekiel 38 23 Ezekiel 39 29 Ezekiel 40 49 Ezekiel 41 26 Ezekiel 42 20 Ezekiel 43 27 Ezekiel 44 31 Ezekiel 45 25 Ezekiel 46 24 Ezekiel 47 23 Ezekiel 48 35 Daniel 1 21 Daniel 2 49 Daniel 3 30 Daniel 4 37 Daniel 5 31 Daniel 6 28 Daniel 7 28 Daniel 8 27 Daniel 9 27 Daniel 10 21 Daniel 11 45 Daniel 12 13 Hosea 1 11 Hosea 2 23 Hosea 3 5 Hosea 4 19 Hosea 5 15 Hosea 6 11 Hosea 7 16 Hosea 8 14 Hosea 9 17 Hosea 10 15 Hosea 11 12 Hosea 12 14 Hosea 13 16 Hosea 14 9 Joel 1 20 Joel 2 32 Joel 3 21 Amos 1 15 Amos 2 16 Amos 3 15 Amos 4 13 Amos 5 27 Amos 6 14 Amos 7 17 Amos 8 14 Amos 9 15 Obadiah 1 21 Jonah 1 17 Jonah 2 10 Jonah 3 10 Jonah 4 11 Micah 1 16 Micah 2 13 Micah 3 12 Micah 4 13 Micah 5 15 Micah 6 16 Micah 7 20 Nahum 1 15 Nahum 2 13 Nahum 3 19 Habakkuk 1 17 Habakkuk 2 20 Habakkuk 3 19 Zephaniah 1 18 Zephaniah 2 15 Zephaniah 3 20 Haggai 1 15 Haggai 2 23 Zechariah 1 21 Zechariah 2 13 Zechariah 3 10 Zechariah 4 14 Zechariah 5 11 Zechariah 6 15 Zechariah 7 14 Zechariah 8 23 Zechariah 9 17 Zechariah 10 12 Zechariah 11 17 Zechariah 12 14 Zechariah 13 9 Zechariah 14 21 Malachi 1 14 Malachi 2 17 Malachi 3 18 Malachi 4 6 Matthew 1 25 Matthew 2 23 Matthew 3 17 Matthew 4 25 Matthew 5 48 Matthew 6 34 Matthew 7 29 Matthew 8 34 Matthew 9 38 Matthew 10 42 Matthew 11 30 Matthew 12 50 Matthew 13 58 Matthew 14 36 Matthew 15 39 Matthew 16 28 Matthew 17 27 Matthew 18 35 Matthew 19 30 Matthew 20 34 Matthew 21 46 Matthew 22 46 Matthew 23 39 Matthew 24 51 Matthew 25 46 Matthew 26 75 Matthew 27 66 Matthew 28 20 Mark 1 45 Mark 2 28 Mark 3 35 Mark 4 41 Mark 5 43 Mark 6 56 Mark 7 37 Mark 8 38 Mark 9 50 Mark 10 52 Mark 11 33 Mark 12 44 Mark 13 37 Mark 14 72 Mark 15 47 Mark 16 20 Luke 1 80 Luke 2 52 Luke 3 38 Luke 4 44 Luke 5 39 Luke 6 49 Luke 7 50 Luke 8 56 Luke 9 62 Luke 10 42 Luke 11 54 Luke 12 59 Luke 13 35 Luke 14 35 Luke 15 32 Luke 16 31 Luke 17 37 Luke 18 43 Luke 19 48 Luke 20 47 Luke 21 38 Luke 22 71 Luke 23 56 Luke 24 53 John 1 51 John 2 25 John 3 36 John 4 54 John 5 47 John 6 71 John 7 53 John 8 59 John 9 41 John 10 42 John 11 57 John 12 50 John 13 38 John 14 31 John 15 27 John 16 33 John 17 26 John 18 40 John 19 42 John 20 31 John 21 25 Acts 1 26 Acts 2 47 Acts 3 26 Acts 4 37 Acts 5 42 Acts 6 15 Acts 7 60 Acts 8 40 Acts 9 43 Acts 10 48 Acts 11 30 Acts 12 25 Acts 13 52 Acts 14 28 Acts 15 41 Acts 16 40 Acts 17 34 Acts 18 28 Acts 19 41 Acts 20 38 Acts 21 40 Acts 22 30 Acts 23 35 Acts 24 27 Acts 25 27 Acts 26 32 Acts 27 44 Acts 28 31 Romans 1 32 Romans 2 29 Romans 3 31 Romans 4 25 Romans 5 21 Romans 6 23 Romans 7 25 Romans 8 39 Romans 9 33 Romans 10 21 Romans 11 36 Romans 12 21 Romans 13 14 Romans 14 23 Romans 15 33 Romans 16 27 1 Corinthians 1 31 1 Corinthians 2 16 1 Corinthians 3 23 1 Corinthians 4 21 1 Corinthians 5 13 1 Corinthians 6 20 1 Corinthians 7 40 1 Corinthians 8 13 1 Corinthians 9 27 1 Corinthians 10 33 1 Corinthians 11 34 1 Corinthians 12 31 1 Corinthians 13 13 1 Corinthians 14 40 1 Corinthians 15 58 1 Corinthians 16 24 2 Corinthians 1 24 2 Corinthians 2 17 2 Corinthians 3 18 2 Corinthians 4 18 2 Corinthians 5 21 2 Corinthians 6 18 2 Corinthians 7 16 2 Corinthians 8 24 2 Corinthians 9 15 2 Corinthians 10 18 2 Corinthians 11 33 2 Corinthians 12 21 2 Corinthians 13 14 Galatians 1 24 Galatians 2 21 Galatians 3 29 Galatians 4 31 Galatians 5 26 Galatians 6 18 Ephesians 1 23 Ephesians 2 22 Ephesians 3 21 Ephesians 4 32 Ephesians 5 33 Ephesians 6 24 Philippians 1 30 Philippians 2 30 Philippians 3 21 Philippians 4 23 Colossians 1 29 Colossians 2 23 Colossians 3 25 Colossians 4 18 1 Thessalonians 1 10 1 Thessalonians 2 20 1 Thessalonians 3 13 1 Thessalonians 4 18 1 Thessalonians 5 28 2 Thessalonians 1 12 2 Thessalonians 2 17 2 Thessalonians 3 18 1 Timothy 1 20 1 Timothy 2 15 1 Timothy 3 16 1 Timothy 4 16 1 Timothy 5 25 1 Timothy 6 21 2 Timothy 1 18 2 Timothy 2 26 2 Timothy 3 17 2 Timothy 4 22 Titus 1 16 Titus 2 15 Titus 3 15 Philemon 1 25 Hebrews 1 14 Hebrews 2 18 Hebrews 3 19 Hebrews 4 16 Hebrews 5 14 Hebrews 6 20 Hebrews 7 28 Hebrews 8 13 Hebrews 9 28 Hebrews 10 39 Hebrews 11 40 Hebrews 12 29 Hebrews 13 25 James 1 27 James 2 26 James 3 18 James 4 17 James 5 20 1 Peter 1 25 1 Peter 2 25 1 Peter 3 22 1 Peter 4 19 1 Peter 5 14 2 Peter 1 21 2 Peter 2 22 2 Peter 3 18 1 John 1 10 1 John 2 29 1 John 3 24 1 John 4 21 1 John 5 21 2 John 1 13 3 John 1 14 Jude 1 25 Revelation 1 20 Revelation 2 29 Revelation 3 22 Revelation 4 11 Revelation 5 14 Revelation 6 17 Revelation 7 17 Revelation 8 13 Revelation 9 21 Revelation 10 11 Revelation 11 19 Revelation 12 17 Revelation 13 18 Revelation 14 20 Revelation 15 8 Revelation 16 21 Revelation 17 18 Revelation 18 24 Revelation 19 21 Revelation 20 15 Revelation 21 27 Revelation 22 21 bibledit-gtk-4.9/templates/versification_original.xml000664 000766 000024 00000307456 12221507125 023342 0ustar00teusstaff000000 000000 Genesis 1 31 Genesis 2 25 Genesis 3 24 Genesis 4 26 Genesis 5 32 Genesis 6 22 Genesis 7 24 Genesis 8 22 Genesis 9 29 Genesis 10 32 Genesis 11 32 Genesis 12 20 Genesis 13 18 Genesis 14 24 Genesis 15 21 Genesis 16 16 Genesis 17 27 Genesis 18 33 Genesis 19 38 Genesis 20 18 Genesis 21 34 Genesis 22 24 Genesis 23 20 Genesis 24 67 Genesis 25 34 Genesis 26 35 Genesis 27 46 Genesis 28 22 Genesis 29 35 Genesis 30 43 Genesis 31 54 Genesis 32 33 Genesis 33 20 Genesis 34 31 Genesis 35 29 Genesis 36 43 Genesis 37 36 Genesis 38 30 Genesis 39 23 Genesis 40 23 Genesis 41 57 Genesis 42 38 Genesis 43 34 Genesis 44 34 Genesis 45 28 Genesis 46 34 Genesis 47 31 Genesis 48 22 Genesis 49 33 Genesis 50 26 Exodus 1 22 Exodus 2 25 Exodus 3 22 Exodus 4 31 Exodus 5 23 Exodus 6 30 Exodus 7 29 Exodus 8 28 Exodus 9 35 Exodus 10 29 Exodus 11 10 Exodus 12 51 Exodus 13 22 Exodus 14 31 Exodus 15 27 Exodus 16 36 Exodus 17 16 Exodus 18 27 Exodus 19 25 Exodus 20 26 Exodus 21 37 Exodus 22 30 Exodus 23 33 Exodus 24 18 Exodus 25 40 Exodus 26 37 Exodus 27 21 Exodus 28 43 Exodus 29 46 Exodus 30 38 Exodus 31 18 Exodus 32 35 Exodus 33 23 Exodus 34 35 Exodus 35 35 Exodus 36 38 Exodus 37 29 Exodus 38 31 Exodus 39 43 Exodus 40 38 Leviticus 1 17 Leviticus 2 16 Leviticus 3 17 Leviticus 4 35 Leviticus 5 26 Leviticus 6 23 Leviticus 7 38 Leviticus 8 36 Leviticus 9 24 Leviticus 10 20 Leviticus 11 47 Leviticus 12 8 Leviticus 13 59 Leviticus 14 57 Leviticus 15 33 Leviticus 16 34 Leviticus 17 16 Leviticus 18 30 Leviticus 19 37 Leviticus 20 27 Leviticus 21 24 Leviticus 22 33 Leviticus 23 44 Leviticus 24 23 Leviticus 25 55 Leviticus 26 46 Leviticus 27 34 Numbers 1 54 Numbers 2 34 Numbers 3 51 Numbers 4 49 Numbers 5 31 Numbers 6 27 Numbers 7 89 Numbers 8 26 Numbers 9 23 Numbers 10 36 Numbers 11 35 Numbers 12 16 Numbers 13 33 Numbers 14 45 Numbers 15 41 Numbers 16 35 Numbers 17 28 Numbers 18 32 Numbers 19 22 Numbers 20 29 Numbers 21 35 Numbers 22 41 Numbers 23 30 Numbers 24 25 Numbers 25 19 Numbers 26 65 Numbers 27 23 Numbers 28 31 Numbers 29 39 Numbers 30 17 Numbers 31 54 Numbers 32 42 Numbers 33 56 Numbers 34 29 Numbers 35 34 Numbers 36 13 Deuteronomy 1 46 Deuteronomy 2 37 Deuteronomy 3 29 Deuteronomy 4 49 Deuteronomy 5 33 Deuteronomy 6 25 Deuteronomy 7 26 Deuteronomy 8 20 Deuteronomy 9 29 Deuteronomy 10 22 Deuteronomy 11 32 Deuteronomy 12 31 Deuteronomy 13 19 Deuteronomy 14 29 Deuteronomy 15 23 Deuteronomy 16 22 Deuteronomy 17 20 Deuteronomy 18 22 Deuteronomy 19 21 Deuteronomy 20 20 Deuteronomy 21 23 Deuteronomy 22 29 Deuteronomy 23 26 Deuteronomy 24 22 Deuteronomy 25 19 Deuteronomy 26 19 Deuteronomy 27 26 Deuteronomy 28 69 Deuteronomy 29 28 Deuteronomy 30 20 Deuteronomy 31 30 Deuteronomy 32 52 Deuteronomy 33 29 Deuteronomy 34 12 Joshua 1 18 Joshua 2 24 Joshua 3 17 Joshua 4 24 Joshua 5 15 Joshua 6 27 Joshua 7 26 Joshua 8 35 Joshua 9 27 Joshua 10 43 Joshua 11 23 Joshua 12 24 Joshua 13 33 Joshua 14 15 Joshua 15 63 Joshua 16 10 Joshua 17 18 Joshua 18 28 Joshua 19 51 Joshua 20 9 Joshua 21 45 Joshua 22 34 Joshua 23 16 Joshua 24 33 Judges 1 36 Judges 2 23 Judges 3 31 Judges 4 24 Judges 5 31 Judges 6 40 Judges 7 25 Judges 8 35 Judges 9 57 Judges 10 18 Judges 11 40 Judges 12 15 Judges 13 25 Judges 14 20 Judges 15 20 Judges 16 31 Judges 17 13 Judges 18 31 Judges 19 30 Judges 20 48 Judges 21 25 Ruth 1 22 Ruth 2 23 Ruth 3 18 Ruth 4 22 1 Samuel 1 28 1 Samuel 2 36 1 Samuel 3 21 1 Samuel 4 22 1 Samuel 5 12 1 Samuel 6 21 1 Samuel 7 17 1 Samuel 8 22 1 Samuel 9 27 1 Samuel 10 27 1 Samuel 11 15 1 Samuel 12 25 1 Samuel 13 23 1 Samuel 14 52 1 Samuel 15 35 1 Samuel 16 23 1 Samuel 17 58 1 Samuel 18 30 1 Samuel 19 24 1 Samuel 20 42 1 Samuel 21 16 1 Samuel 22 23 1 Samuel 23 28 1 Samuel 24 23 1 Samuel 25 44 1 Samuel 26 25 1 Samuel 27 12 1 Samuel 28 25 1 Samuel 29 11 1 Samuel 30 31 1 Samuel 31 13 2 Samuel 1 27 2 Samuel 2 32 2 Samuel 3 39 2 Samuel 4 12 2 Samuel 5 25 2 Samuel 6 23 2 Samuel 7 29 2 Samuel 8 18 2 Samuel 9 13 2 Samuel 10 19 2 Samuel 11 27 2 Samuel 12 31 2 Samuel 13 39 2 Samuel 14 33 2 Samuel 15 37 2 Samuel 16 23 2 Samuel 17 29 2 Samuel 18 32 2 Samuel 19 44 2 Samuel 20 26 2 Samuel 21 22 2 Samuel 22 51 2 Samuel 23 39 2 Samuel 24 25 1 Kings 1 53 1 Kings 2 46 1 Kings 3 28 1 Kings 4 20 1 Kings 5 32 1 Kings 6 38 1 Kings 7 51 1 Kings 8 66 1 Kings 9 28 1 Kings 10 29 1 Kings 11 43 1 Kings 12 33 1 Kings 13 34 1 Kings 14 31 1 Kings 15 34 1 Kings 16 34 1 Kings 17 24 1 Kings 18 46 1 Kings 19 21 1 Kings 20 43 1 Kings 21 29 1 Kings 22 54 2 Kings 1 18 2 Kings 2 25 2 Kings 3 27 2 Kings 4 44 2 Kings 5 27 2 Kings 6 33 2 Kings 7 20 2 Kings 8 29 2 Kings 9 37 2 Kings 10 36 2 Kings 11 20 2 Kings 12 22 2 Kings 13 25 2 Kings 14 29 2 Kings 15 38 2 Kings 16 20 2 Kings 17 41 2 Kings 18 37 2 Kings 19 37 2 Kings 20 21 2 Kings 21 26 2 Kings 22 20 2 Kings 23 37 2 Kings 24 20 2 Kings 25 30 1 Chronicles 1 54 1 Chronicles 2 55 1 Chronicles 3 24 1 Chronicles 4 43 1 Chronicles 5 41 1 Chronicles 6 66 1 Chronicles 7 40 1 Chronicles 8 40 1 Chronicles 9 44 1 Chronicles 10 14 1 Chronicles 11 47 1 Chronicles 12 41 1 Chronicles 13 14 1 Chronicles 14 17 1 Chronicles 15 29 1 Chronicles 16 43 1 Chronicles 17 27 1 Chronicles 18 17 1 Chronicles 19 19 1 Chronicles 20 8 1 Chronicles 21 30 1 Chronicles 22 19 1 Chronicles 23 32 1 Chronicles 24 31 1 Chronicles 25 31 1 Chronicles 26 32 1 Chronicles 27 34 1 Chronicles 28 21 1 Chronicles 29 30 2 Chronicles 1 18 2 Chronicles 2 17 2 Chronicles 3 17 2 Chronicles 4 22 2 Chronicles 5 14 2 Chronicles 6 42 2 Chronicles 7 22 2 Chronicles 8 18 2 Chronicles 9 31 2 Chronicles 10 19 2 Chronicles 11 23 2 Chronicles 12 16 2 Chronicles 13 23 2 Chronicles 14 14 2 Chronicles 15 19 2 Chronicles 16 14 2 Chronicles 17 19 2 Chronicles 18 34 2 Chronicles 19 11 2 Chronicles 20 37 2 Chronicles 21 20 2 Chronicles 22 12 2 Chronicles 23 21 2 Chronicles 24 27 2 Chronicles 25 28 2 Chronicles 26 23 2 Chronicles 27 9 2 Chronicles 28 27 2 Chronicles 29 36 2 Chronicles 30 27 2 Chronicles 31 21 2 Chronicles 32 33 2 Chronicles 33 25 2 Chronicles 34 33 2 Chronicles 35 27 2 Chronicles 36 23 Ezra 1 11 Ezra 2 70 Ezra 3 13 Ezra 4 24 Ezra 5 17 Ezra 6 22 Ezra 7 28 Ezra 8 36 Ezra 9 15 Ezra 10 44 Nehemiah 1 11 Nehemiah 2 20 Nehemiah 3 38 Nehemiah 4 17 Nehemiah 5 19 Nehemiah 6 19 Nehemiah 7 72 Nehemiah 8 18 Nehemiah 9 37 Nehemiah 10 40 Nehemiah 11 36 Nehemiah 12 47 Nehemiah 13 31 Esther 1 22 Esther 2 23 Esther 3 15 Esther 4 17 Esther 5 14 Esther 6 14 Esther 7 10 Esther 8 17 Esther 9 32 Esther 10 3 Job 1 22 Job 2 13 Job 3 26 Job 4 21 Job 5 27 Job 6 30 Job 7 21 Job 8 22 Job 9 35 Job 10 22 Job 11 20 Job 12 25 Job 13 28 Job 14 22 Job 15 35 Job 16 22 Job 17 16 Job 18 21 Job 19 29 Job 20 29 Job 21 34 Job 22 30 Job 23 17 Job 24 25 Job 25 6 Job 26 14 Job 27 23 Job 28 28 Job 29 25 Job 30 31 Job 31 40 Job 32 22 Job 33 33 Job 34 37 Job 35 16 Job 36 33 Job 37 24 Job 38 41 Job 39 30 Job 40 32 Job 41 26 Job 42 17 Psalms 1 6 Psalms 2 12 Psalms 3 9 Psalms 4 9 Psalms 5 13 Psalms 6 11 Psalms 7 18 Psalms 8 10 Psalms 9 21 Psalms 10 18 Psalms 11 7 Psalms 12 9 Psalms 13 6 Psalms 14 7 Psalms 15 5 Psalms 16 11 Psalms 17 15 Psalms 18 51 Psalms 19 15 Psalms 20 10 Psalms 21 14 Psalms 22 32 Psalms 23 6 Psalms 24 10 Psalms 25 22 Psalms 26 12 Psalms 27 14 Psalms 28 9 Psalms 29 11 Psalms 30 13 Psalms 31 25 Psalms 32 11 Psalms 33 22 Psalms 34 23 Psalms 35 28 Psalms 36 13 Psalms 37 40 Psalms 38 23 Psalms 39 14 Psalms 40 18 Psalms 41 14 Psalms 42 12 Psalms 43 5 Psalms 44 27 Psalms 45 18 Psalms 46 12 Psalms 47 10 Psalms 48 15 Psalms 49 21 Psalms 50 23 Psalms 51 21 Psalms 52 11 Psalms 53 7 Psalms 54 9 Psalms 55 24 Psalms 56 14 Psalms 57 12 Psalms 58 12 Psalms 59 18 Psalms 60 14 Psalms 61 9 Psalms 62 13 Psalms 63 12 Psalms 64 11 Psalms 65 14 Psalms 66 20 Psalms 67 8 Psalms 68 36 Psalms 69 37 Psalms 70 6 Psalms 71 24 Psalms 72 20 Psalms 73 28 Psalms 74 23 Psalms 75 11 Psalms 76 13 Psalms 77 21 Psalms 78 72 Psalms 79 13 Psalms 80 20 Psalms 81 17 Psalms 82 8 Psalms 83 19 Psalms 84 13 Psalms 85 14 Psalms 86 17 Psalms 87 7 Psalms 88 19 Psalms 89 53 Psalms 90 17 Psalms 91 16 Psalms 92 16 Psalms 93 5 Psalms 94 23 Psalms 95 11 Psalms 96 13 Psalms 97 12 Psalms 98 9 Psalms 99 9 Psalms 100 5 Psalms 101 8 Psalms 102 29 Psalms 103 22 Psalms 104 35 Psalms 105 45 Psalms 106 48 Psalms 107 43 Psalms 108 14 Psalms 109 31 Psalms 110 7 Psalms 111 10 Psalms 112 10 Psalms 113 9 Psalms 114 8 Psalms 115 18 Psalms 116 19 Psalms 117 2 Psalms 118 29 Psalms 119 176 Psalms 120 7 Psalms 121 8 Psalms 122 9 Psalms 123 4 Psalms 124 8 Psalms 125 5 Psalms 126 6 Psalms 127 5 Psalms 128 6 Psalms 129 8 Psalms 130 8 Psalms 131 3 Psalms 132 18 Psalms 133 3 Psalms 134 3 Psalms 135 21 Psalms 136 26 Psalms 137 9 Psalms 138 8 Psalms 139 24 Psalms 140 14 Psalms 141 10 Psalms 142 8 Psalms 143 12 Psalms 144 15 Psalms 145 21 Psalms 146 10 Psalms 147 20 Psalms 148 14 Psalms 149 9 Psalms 150 6 Proverbs 1 33 Proverbs 2 22 Proverbs 3 35 Proverbs 4 27 Proverbs 5 23 Proverbs 6 35 Proverbs 7 27 Proverbs 8 36 Proverbs 9 18 Proverbs 10 32 Proverbs 11 31 Proverbs 12 28 Proverbs 13 25 Proverbs 14 35 Proverbs 15 33 Proverbs 16 33 Proverbs 17 28 Proverbs 18 24 Proverbs 19 29 Proverbs 20 30 Proverbs 21 31 Proverbs 22 29 Proverbs 23 35 Proverbs 24 34 Proverbs 25 28 Proverbs 26 28 Proverbs 27 27 Proverbs 28 28 Proverbs 29 27 Proverbs 30 33 Proverbs 31 31 Ecclesiastes 1 18 Ecclesiastes 2 26 Ecclesiastes 3 22 Ecclesiastes 4 17 Ecclesiastes 5 19 Ecclesiastes 6 12 Ecclesiastes 7 29 Ecclesiastes 8 17 Ecclesiastes 9 18 Ecclesiastes 10 20 Ecclesiastes 11 10 Ecclesiastes 12 14 Song of Solomon 1 17 Song of Solomon 2 17 Song of Solomon 3 11 Song of Solomon 4 16 Song of Solomon 5 16 Song of Solomon 6 12 Song of Solomon 7 14 Song of Solomon 8 14 Isaiah 1 31 Isaiah 2 22 Isaiah 3 26 Isaiah 4 6 Isaiah 5 30 Isaiah 6 13 Isaiah 7 25 Isaiah 8 23 Isaiah 9 20 Isaiah 10 34 Isaiah 11 16 Isaiah 12 6 Isaiah 13 22 Isaiah 14 32 Isaiah 15 9 Isaiah 16 14 Isaiah 17 14 Isaiah 18 7 Isaiah 19 25 Isaiah 20 6 Isaiah 21 17 Isaiah 22 25 Isaiah 23 18 Isaiah 24 23 Isaiah 25 12 Isaiah 26 21 Isaiah 27 13 Isaiah 28 29 Isaiah 29 24 Isaiah 30 33 Isaiah 31 9 Isaiah 32 20 Isaiah 33 24 Isaiah 34 17 Isaiah 35 10 Isaiah 36 22 Isaiah 37 38 Isaiah 38 22 Isaiah 39 8 Isaiah 40 31 Isaiah 41 29 Isaiah 42 25 Isaiah 43 28 Isaiah 44 28 Isaiah 45 25 Isaiah 46 13 Isaiah 47 15 Isaiah 48 22 Isaiah 49 26 Isaiah 50 11 Isaiah 51 23 Isaiah 52 15 Isaiah 53 12 Isaiah 54 17 Isaiah 55 13 Isaiah 56 12 Isaiah 57 21 Isaiah 58 14 Isaiah 59 21 Isaiah 60 22 Isaiah 61 11 Isaiah 62 12 Isaiah 63 19 Isaiah 64 11 Isaiah 65 25 Isaiah 66 24 Jeremiah 1 19 Jeremiah 2 37 Jeremiah 3 25 Jeremiah 4 31 Jeremiah 5 31 Jeremiah 6 30 Jeremiah 7 34 Jeremiah 8 23 Jeremiah 9 25 Jeremiah 10 25 Jeremiah 11 23 Jeremiah 12 17 Jeremiah 13 27 Jeremiah 14 22 Jeremiah 15 21 Jeremiah 16 21 Jeremiah 17 27 Jeremiah 18 23 Jeremiah 19 15 Jeremiah 20 18 Jeremiah 21 14 Jeremiah 22 30 Jeremiah 23 40 Jeremiah 24 10 Jeremiah 25 38 Jeremiah 26 24 Jeremiah 27 22 Jeremiah 28 17 Jeremiah 29 32 Jeremiah 30 24 Jeremiah 31 40 Jeremiah 32 44 Jeremiah 33 26 Jeremiah 34 22 Jeremiah 35 19 Jeremiah 36 32 Jeremiah 37 21 Jeremiah 38 28 Jeremiah 39 18 Jeremiah 40 16 Jeremiah 41 18 Jeremiah 42 22 Jeremiah 43 13 Jeremiah 44 30 Jeremiah 45 5 Jeremiah 46 28 Jeremiah 47 7 Jeremiah 48 47 Jeremiah 49 39 Jeremiah 50 46 Jeremiah 51 64 Jeremiah 52 34 Lamentations 1 22 Lamentations 2 22 Lamentations 3 66 Lamentations 4 22 Lamentations 5 22 Ezekiel 1 28 Ezekiel 2 10 Ezekiel 3 27 Ezekiel 4 17 Ezekiel 5 17 Ezekiel 6 14 Ezekiel 7 27 Ezekiel 8 18 Ezekiel 9 11 Ezekiel 10 22 Ezekiel 11 25 Ezekiel 12 28 Ezekiel 13 23 Ezekiel 14 23 Ezekiel 15 8 Ezekiel 16 63 Ezekiel 17 24 Ezekiel 18 32 Ezekiel 19 14 Ezekiel 20 44 Ezekiel 21 37 Ezekiel 22 31 Ezekiel 23 49 Ezekiel 24 27 Ezekiel 25 17 Ezekiel 26 21 Ezekiel 27 36 Ezekiel 28 26 Ezekiel 29 21 Ezekiel 30 26 Ezekiel 31 18 Ezekiel 32 32 Ezekiel 33 33 Ezekiel 34 31 Ezekiel 35 15 Ezekiel 36 38 Ezekiel 37 28 Ezekiel 38 23 Ezekiel 39 29 Ezekiel 40 49 Ezekiel 41 26 Ezekiel 42 20 Ezekiel 43 27 Ezekiel 44 31 Ezekiel 45 25 Ezekiel 46 24 Ezekiel 47 23 Ezekiel 48 35 Daniel 1 21 Daniel 2 49 Daniel 3 33 Daniel 4 34 Daniel 5 30 Daniel 6 29 Daniel 7 28 Daniel 8 27 Daniel 9 27 Daniel 10 21 Daniel 11 45 Daniel 12 13 Hosea 1 9 Hosea 2 25 Hosea 3 5 Hosea 4 19 Hosea 5 15 Hosea 6 11 Hosea 7 16 Hosea 8 14 Hosea 9 17 Hosea 10 15 Hosea 11 11 Hosea 12 15 Hosea 13 15 Hosea 14 10 Joel 1 20 Joel 2 27 Joel 3 5 Joel 4 21 Amos 1 15 Amos 2 16 Amos 3 15 Amos 4 13 Amos 5 27 Amos 6 14 Amos 7 17 Amos 8 14 Amos 9 15 Obadiah 1 21 Jonah 1 16 Jonah 2 11 Jonah 3 10 Jonah 4 11 Micah 1 16 Micah 2 13 Micah 3 12 Micah 4 14 Micah 5 14 Micah 6 16 Micah 7 20 Nahum 1 14 Nahum 2 14 Nahum 3 19 Habakkuk 1 17 Habakkuk 2 20 Habakkuk 3 19 Zephaniah 1 18 Zephaniah 2 15 Zephaniah 3 20 Haggai 1 15 Haggai 2 23 Zechariah 1 17 Zechariah 2 17 Zechariah 3 10 Zechariah 4 14 Zechariah 5 11 Zechariah 6 15 Zechariah 7 14 Zechariah 8 23 Zechariah 9 17 Zechariah 10 12 Zechariah 11 17 Zechariah 12 14 Zechariah 13 9 Zechariah 14 21 Malachi 1 14 Malachi 2 17 Malachi 3 24 Matthew 1 25 Matthew 2 23 Matthew 3 17 Matthew 4 25 Matthew 5 48 Matthew 6 34 Matthew 7 29 Matthew 8 34 Matthew 9 38 Matthew 10 42 Matthew 11 30 Matthew 12 50 Matthew 13 58 Matthew 14 36 Matthew 15 39 Matthew 16 28 Matthew 17 27 Matthew 18 35 Matthew 19 30 Matthew 20 34 Matthew 21 46 Matthew 22 46 Matthew 23 39 Matthew 24 51 Matthew 25 46 Matthew 26 75 Matthew 27 66 Matthew 28 20 Mark 1 45 Mark 2 28 Mark 3 35 Mark 4 41 Mark 5 43 Mark 6 56 Mark 7 37 Mark 8 38 Mark 9 50 Mark 10 52 Mark 11 33 Mark 12 44 Mark 13 37 Mark 14 72 Mark 15 47 Mark 16 20 Luke 1 80 Luke 2 52 Luke 3 38 Luke 4 44 Luke 5 39 Luke 6 49 Luke 7 50 Luke 8 56 Luke 9 62 Luke 10 42 Luke 11 54 Luke 12 59 Luke 13 35 Luke 14 35 Luke 15 32 Luke 16 31 Luke 17 37 Luke 18 43 Luke 19 48 Luke 20 47 Luke 21 38 Luke 22 71 Luke 23 56 Luke 24 53 John 1 51 John 2 25 John 3 36 John 4 54 John 5 47 John 6 71 John 7 53 John 8 59 John 9 41 John 10 42 John 11 57 John 12 50 John 13 38 John 14 31 John 15 27 John 16 33 John 17 26 John 18 40 John 19 42 John 20 31 John 21 25 Acts 1 26 Acts 2 47 Acts 3 26 Acts 4 37 Acts 5 42 Acts 6 15 Acts 7 60 Acts 8 40 Acts 9 43 Acts 10 48 Acts 11 30 Acts 12 25 Acts 13 52 Acts 14 28 Acts 15 41 Acts 16 40 Acts 17 34 Acts 18 28 Acts 19 40 Acts 20 38 Acts 21 40 Acts 22 30 Acts 23 35 Acts 24 27 Acts 25 27 Acts 26 32 Acts 27 44 Acts 28 31 Romans 1 32 Romans 2 29 Romans 3 31 Romans 4 25 Romans 5 21 Romans 6 23 Romans 7 25 Romans 8 39 Romans 9 33 Romans 10 21 Romans 11 36 Romans 12 21 Romans 13 14 Romans 14 23 Romans 15 33 Romans 16 27 1 Corinthians 1 31 1 Corinthians 2 16 1 Corinthians 3 23 1 Corinthians 4 21 1 Corinthians 5 13 1 Corinthians 6 20 1 Corinthians 7 40 1 Corinthians 8 13 1 Corinthians 9 27 1 Corinthians 10 33 1 Corinthians 11 34 1 Corinthians 12 31 1 Corinthians 13 13 1 Corinthians 14 40 1 Corinthians 15 58 1 Corinthians 16 24 2 Corinthians 1 24 2 Corinthians 2 17 2 Corinthians 3 18 2 Corinthians 4 18 2 Corinthians 5 21 2 Corinthians 6 18 2 Corinthians 7 16 2 Corinthians 8 24 2 Corinthians 9 15 2 Corinthians 10 18 2 Corinthians 11 33 2 Corinthians 12 21 2 Corinthians 13 13 Galatians 1 24 Galatians 2 21 Galatians 3 29 Galatians 4 31 Galatians 5 26 Galatians 6 18 Ephesians 1 23 Ephesians 2 22 Ephesians 3 21 Ephesians 4 32 Ephesians 5 33 Ephesians 6 24 Philippians 1 30 Philippians 2 30 Philippians 3 21 Philippians 4 23 Colossians 1 29 Colossians 2 23 Colossians 3 25 Colossians 4 18 1 Thessalonians 1 10 1 Thessalonians 2 20 1 Thessalonians 3 13 1 Thessalonians 4 18 1 Thessalonians 5 28 2 Thessalonians 1 12 2 Thessalonians 2 17 2 Thessalonians 3 18 1 Timothy 1 20 1 Timothy 2 15 1 Timothy 3 16 1 Timothy 4 16 1 Timothy 5 25 1 Timothy 6 21 2 Timothy 1 18 2 Timothy 2 26 2 Timothy 3 17 2 Timothy 4 22 Titus 1 16 Titus 2 15 Titus 3 15 Philemon 1 25 Hebrews 1 14 Hebrews 2 18 Hebrews 3 19 Hebrews 4 16 Hebrews 5 14 Hebrews 6 20 Hebrews 7 28 Hebrews 8 13 Hebrews 9 28 Hebrews 10 39 Hebrews 11 40 Hebrews 12 29 Hebrews 13 25 James 1 27 James 2 26 James 3 18 James 4 17 James 5 20 1 Peter 1 25 1 Peter 2 25 1 Peter 3 22 1 Peter 4 19 1 Peter 5 14 2 Peter 1 21 2 Peter 2 22 2 Peter 3 18 1 John 1 10 1 John 2 29 1 John 3 24 1 John 4 21 1 John 5 21 2 John 1 13 3 John 1 15 Jude 1 25 Revelation 1 20 Revelation 2 29 Revelation 3 22 Revelation 4 11 Revelation 5 14 Revelation 6 17 Revelation 7 17 Revelation 8 13 Revelation 9 21 Revelation 10 11 Revelation 11 19 Revelation 12 18 Revelation 13 18 Revelation 14 20 Revelation 15 8 Revelation 16 21 Revelation 17 18 Revelation 18 24 Revelation 19 21 Revelation 20 15 Revelation 21 27 Revelation 22 21 bibledit-gtk-4.9/templates/versification_roman_catholic_1.xml000664 000766 000024 00000364624 12221507126 024741 0ustar00teusstaff000000 000000 Genesis 1 31 Genesis 2 25 Genesis 3 24 Genesis 4 26 Genesis 5 32 Genesis 6 22 Genesis 7 24 Genesis 8 22 Genesis 9 29 Genesis 10 32 Genesis 11 32 Genesis 12 20 Genesis 13 18 Genesis 14 24 Genesis 15 21 Genesis 16 16 Genesis 17 27 Genesis 18 33 Genesis 19 38 Genesis 20 18 Genesis 21 34 Genesis 22 24 Genesis 23 20 Genesis 24 67 Genesis 25 34 Genesis 26 35 Genesis 27 46 Genesis 28 22 Genesis 29 35 Genesis 30 43 Genesis 31 54 Genesis 32 33 Genesis 33 20 Genesis 34 31 Genesis 35 29 Genesis 36 43 Genesis 37 36 Genesis 38 30 Genesis 39 23 Genesis 40 23 Genesis 41 57 Genesis 42 38 Genesis 43 34 Genesis 44 34 Genesis 45 28 Genesis 46 34 Genesis 47 31 Genesis 48 22 Genesis 49 33 Genesis 50 26 Exodus 1 31 Exodus 2 25 Exodus 3 24 Exodus 4 26 Exodus 5 32 Exodus 6 22 Exodus 7 24 Exodus 8 22 Exodus 9 29 Exodus 10 32 Exodus 11 32 Exodus 12 20 Exodus 13 18 Exodus 14 24 Exodus 15 21 Exodus 16 16 Exodus 17 27 Exodus 18 33 Exodus 19 38 Exodus 20 18 Exodus 21 34 Exodus 22 24 Exodus 23 20 Exodus 24 67 Exodus 25 34 Exodus 26 35 Exodus 27 46 Exodus 28 22 Exodus 29 35 Exodus 30 43 Exodus 31 54 Exodus 32 33 Exodus 33 20 Exodus 34 31 Exodus 35 29 Exodus 36 43 Exodus 37 36 Exodus 38 30 Exodus 39 23 Exodus 40 23 Leviticus 1 31 Leviticus 2 25 Leviticus 3 24 Leviticus 4 26 Leviticus 5 32 Leviticus 6 22 Leviticus 7 24 Leviticus 8 22 Leviticus 9 29 Leviticus 10 32 Leviticus 11 32 Leviticus 12 20 Leviticus 13 18 Leviticus 14 24 Leviticus 15 21 Leviticus 16 16 Leviticus 17 27 Leviticus 18 33 Leviticus 19 38 Leviticus 20 18 Leviticus 21 34 Leviticus 22 24 Leviticus 23 20 Leviticus 24 67 Leviticus 25 34 Leviticus 26 35 Leviticus 27 46 Numbers 1 31 Numbers 2 25 Numbers 3 24 Numbers 4 26 Numbers 5 32 Numbers 6 22 Numbers 7 24 Numbers 8 22 Numbers 9 29 Numbers 10 32 Numbers 11 32 Numbers 12 20 Numbers 13 18 Numbers 14 24 Numbers 15 21 Numbers 16 16 Numbers 17 27 Numbers 18 33 Numbers 19 38 Numbers 20 18 Numbers 21 34 Numbers 22 24 Numbers 23 20 Numbers 24 67 Numbers 25 34 Numbers 26 35 Numbers 27 46 Numbers 28 22 Numbers 29 35 Numbers 30 43 Numbers 31 54 Numbers 32 33 Numbers 33 20 Numbers 34 31 Numbers 35 29 Numbers 36 43 Deuteronomy 1 31 Deuteronomy 2 25 Deuteronomy 3 24 Deuteronomy 4 26 Deuteronomy 5 32 Deuteronomy 6 22 Deuteronomy 7 24 Deuteronomy 8 22 Deuteronomy 9 29 Deuteronomy 10 32 Deuteronomy 11 32 Deuteronomy 12 20 Deuteronomy 13 18 Deuteronomy 14 24 Deuteronomy 15 21 Deuteronomy 16 16 Deuteronomy 17 27 Deuteronomy 18 33 Deuteronomy 19 38 Deuteronomy 20 18 Deuteronomy 21 34 Deuteronomy 22 24 Deuteronomy 23 20 Deuteronomy 24 67 Deuteronomy 25 34 Deuteronomy 26 35 Deuteronomy 27 46 Deuteronomy 28 22 Deuteronomy 29 35 Deuteronomy 30 43 Deuteronomy 31 54 Deuteronomy 32 33 Deuteronomy 33 20 Deuteronomy 34 31 Joshua 1 31 Joshua 2 25 Joshua 3 24 Joshua 4 26 Joshua 5 32 Joshua 6 22 Joshua 7 24 Joshua 8 22 Joshua 9 29 Joshua 10 32 Joshua 11 32 Joshua 12 20 Joshua 13 18 Joshua 14 24 Joshua 15 21 Joshua 16 16 Joshua 17 27 Joshua 18 33 Joshua 19 38 Joshua 20 18 Joshua 21 34 Joshua 22 24 Joshua 23 20 Joshua 24 67 Judges 1 31 Judges 2 25 Judges 3 24 Judges 4 26 Judges 5 32 Judges 6 22 Judges 7 24 Judges 8 22 Judges 9 29 Judges 10 32 Judges 11 32 Judges 12 20 Judges 13 18 Judges 14 24 Judges 15 21 Judges 16 16 Judges 17 27 Judges 18 33 Judges 19 38 Judges 20 18 Judges 21 34 Ruth 1 31 Ruth 2 25 Ruth 3 24 Ruth 4 26 1 Samuel 1 31 1 Samuel 2 25 1 Samuel 3 24 1 Samuel 4 26 1 Samuel 5 32 1 Samuel 6 22 1 Samuel 7 24 1 Samuel 8 22 1 Samuel 9 29 1 Samuel 10 32 1 Samuel 11 32 1 Samuel 12 20 1 Samuel 13 18 1 Samuel 14 24 1 Samuel 15 21 1 Samuel 16 16 1 Samuel 17 27 1 Samuel 18 33 1 Samuel 19 38 1 Samuel 20 18 1 Samuel 21 34 1 Samuel 22 24 1 Samuel 23 20 1 Samuel 24 67 1 Samuel 25 34 1 Samuel 26 35 1 Samuel 27 46 1 Samuel 28 22 1 Samuel 29 35 1 Samuel 30 43 1 Samuel 31 54 2 Samuel 1 31 2 Samuel 2 25 2 Samuel 3 24 2 Samuel 4 26 2 Samuel 5 32 2 Samuel 6 22 2 Samuel 7 24 2 Samuel 8 22 2 Samuel 9 29 2 Samuel 10 32 2 Samuel 11 32 2 Samuel 12 20 2 Samuel 13 18 2 Samuel 14 24 2 Samuel 15 21 2 Samuel 16 16 2 Samuel 17 27 2 Samuel 18 33 2 Samuel 19 38 2 Samuel 20 18 2 Samuel 21 34 2 Samuel 22 24 2 Samuel 23 20 2 Samuel 24 67 1 Kings 1 31 1 Kings 2 25 1 Kings 3 24 1 Kings 4 26 1 Kings 5 32 1 Kings 6 22 1 Kings 7 24 1 Kings 8 22 1 Kings 9 29 1 Kings 10 32 1 Kings 11 32 1 Kings 12 20 1 Kings 13 18 1 Kings 14 24 1 Kings 15 21 1 Kings 16 16 1 Kings 17 27 1 Kings 18 33 1 Kings 19 38 1 Kings 20 18 1 Kings 21 34 1 Kings 22 24 2 Kings 1 31 2 Kings 2 25 2 Kings 3 24 2 Kings 4 26 2 Kings 5 32 2 Kings 6 22 2 Kings 7 24 2 Kings 8 22 2 Kings 9 29 2 Kings 10 32 2 Kings 11 32 2 Kings 12 20 2 Kings 13 18 2 Kings 14 24 2 Kings 15 21 2 Kings 16 16 2 Kings 17 27 2 Kings 18 33 2 Kings 19 38 2 Kings 20 18 2 Kings 21 34 2 Kings 22 24 2 Kings 23 20 2 Kings 24 67 2 Kings 25 34 1 Chronicles 1 31 1 Chronicles 2 25 1 Chronicles 3 24 1 Chronicles 4 26 1 Chronicles 5 32 1 Chronicles 6 22 1 Chronicles 7 24 1 Chronicles 8 22 1 Chronicles 9 29 1 Chronicles 10 32 1 Chronicles 11 32 1 Chronicles 12 20 1 Chronicles 13 18 1 Chronicles 14 24 1 Chronicles 15 21 1 Chronicles 16 16 1 Chronicles 17 27 1 Chronicles 18 33 1 Chronicles 19 38 1 Chronicles 20 18 1 Chronicles 21 34 1 Chronicles 22 24 1 Chronicles 23 20 1 Chronicles 24 67 1 Chronicles 25 34 1 Chronicles 26 35 1 Chronicles 27 46 1 Chronicles 28 22 1 Chronicles 29 35 2 Chronicles 1 31 2 Chronicles 2 25 2 Chronicles 3 24 2 Chronicles 4 26 2 Chronicles 5 32 2 Chronicles 6 22 2 Chronicles 7 24 2 Chronicles 8 22 2 Chronicles 9 29 2 Chronicles 10 32 2 Chronicles 11 32 2 Chronicles 12 20 2 Chronicles 13 18 2 Chronicles 14 24 2 Chronicles 15 21 2 Chronicles 16 16 2 Chronicles 17 27 2 Chronicles 18 33 2 Chronicles 19 38 2 Chronicles 20 18 2 Chronicles 21 34 2 Chronicles 22 24 2 Chronicles 23 20 2 Chronicles 24 67 2 Chronicles 25 34 2 Chronicles 26 35 2 Chronicles 27 46 2 Chronicles 28 22 2 Chronicles 29 35 2 Chronicles 30 43 2 Chronicles 31 54 2 Chronicles 32 33 2 Chronicles 33 20 2 Chronicles 34 31 2 Chronicles 35 29 2 Chronicles 36 43 Ezra 1 31 Ezra 2 25 Ezra 3 24 Ezra 4 26 Ezra 5 32 Ezra 6 22 Ezra 7 24 Ezra 8 22 Ezra 9 29 Ezra 10 32 Nehemiah 1 31 Nehemiah 2 25 Nehemiah 3 24 Nehemiah 4 26 Nehemiah 5 32 Nehemiah 6 22 Nehemiah 7 24 Nehemiah 8 22 Nehemiah 9 29 Nehemiah 10 32 Nehemiah 11 32 Nehemiah 12 20 Nehemiah 13 18 Tobit 1 31 Tobit 2 25 Tobit 3 24 Tobit 4 26 Tobit 5 32 Tobit 6 22 Tobit 7 24 Tobit 8 22 Tobit 9 29 Tobit 10 32 Tobit 11 32 Tobit 12 20 Tobit 13 18 Tobit 14 24 Judith 1 31 Judith 2 25 Judith 3 24 Judith 4 26 Judith 5 32 Judith 6 22 Judith 7 24 Judith 8 22 Judith 9 29 Judith 10 32 Judith 11 32 Judith 12 20 Judith 13 18 Judith 14 24 Judith 15 21 Judith 16 16 Esther 1 31 Esther 2 25 Esther 3 24 Esther 4 26 Esther 5 32 Esther 6 22 Esther 7 24 Esther 8 22 Esther 9 29 Esther 10 32 Esther 11 32 Esther 12 20 Esther 13 18 Esther 14 24 Esther 15 21 Esther 16 16 1 Maccabees 1 31 1 Maccabees 2 25 1 Maccabees 3 24 1 Maccabees 4 26 1 Maccabees 5 32 1 Maccabees 6 22 1 Maccabees 7 24 1 Maccabees 8 22 1 Maccabees 9 29 1 Maccabees 10 32 1 Maccabees 11 32 1 Maccabees 12 20 1 Maccabees 13 18 1 Maccabees 14 24 1 Maccabees 15 21 1 Maccabees 16 16 2 Maccabees 1 31 2 Maccabees 2 25 2 Maccabees 3 24 2 Maccabees 4 26 2 Maccabees 5 32 2 Maccabees 6 22 2 Maccabees 7 24 2 Maccabees 8 22 2 Maccabees 9 29 2 Maccabees 10 32 2 Maccabees 11 32 2 Maccabees 12 20 2 Maccabees 13 18 2 Maccabees 14 24 2 Maccabees 15 21 Job 1 31 Job 2 25 Job 3 24 Job 4 26 Job 5 32 Job 6 22 Job 7 24 Job 8 22 Job 9 29 Job 10 32 Job 11 32 Job 12 20 Job 13 18 Job 14 24 Job 15 21 Job 16 16 Job 17 27 Job 18 33 Job 19 38 Job 20 18 Job 21 34 Job 22 24 Job 23 20 Job 24 67 Job 25 34 Job 26 35 Job 27 46 Job 28 22 Job 29 35 Job 30 43 Job 31 54 Job 32 33 Job 33 20 Job 34 31 Job 35 29 Job 36 43 Job 37 36 Job 38 30 Job 39 23 Job 40 23 Job 41 57 Job 42 38 Psalms 1 31 Psalms 2 25 Psalms 3 24 Psalms 4 26 Psalms 5 32 Psalms 6 22 Psalms 7 24 Psalms 8 22 Psalms 9 29 Psalms 10 32 Psalms 11 32 Psalms 12 20 Psalms 13 18 Psalms 14 24 Psalms 15 21 Psalms 16 16 Psalms 17 27 Psalms 18 33 Psalms 19 38 Psalms 20 18 Psalms 21 34 Psalms 22 24 Psalms 23 20 Psalms 24 67 Psalms 25 34 Psalms 26 35 Psalms 27 46 Psalms 28 22 Psalms 29 35 Psalms 30 43 Psalms 31 54 Psalms 32 33 Psalms 33 20 Psalms 34 31 Psalms 35 29 Psalms 36 43 Psalms 37 36 Psalms 38 30 Psalms 39 23 Psalms 40 23 Psalms 41 57 Psalms 42 38 Psalms 43 34 Psalms 44 34 Psalms 45 28 Psalms 46 34 Psalms 47 31 Psalms 48 22 Psalms 49 33 Psalms 50 26 Psalms 51 22 Psalms 52 25 Psalms 53 22 Psalms 54 31 Psalms 55 23 Psalms 56 30 Psalms 57 29 Psalms 58 28 Psalms 59 35 Psalms 60 29 Psalms 61 10 Psalms 62 51 Psalms 63 22 Psalms 64 31 Psalms 65 27 Psalms 66 36 Psalms 67 16 Psalms 68 27 Psalms 69 25 Psalms 70 26 Psalms 71 37 Psalms 72 30 Psalms 73 33 Psalms 74 18 Psalms 75 40 Psalms 76 37 Psalms 77 21 Psalms 78 43 Psalms 79 46 Psalms 80 38 Psalms 81 18 Psalms 82 35 Psalms 83 23 Psalms 84 35 Psalms 85 35 Psalms 86 38 Psalms 87 29 Psalms 88 31 Psalms 89 43 Psalms 90 38 Psalms 91 17 Psalms 92 16 Psalms 93 17 Psalms 94 35 Psalms 95 26 Psalms 96 23 Psalms 97 38 Psalms 98 36 Psalms 99 24 Psalms 100 20 Psalms 101 47 Psalms 102 8 Psalms 103 59 Psalms 104 57 Psalms 105 33 Psalms 106 34 Psalms 107 16 Psalms 108 30 Psalms 109 37 Psalms 110 27 Psalms 111 24 Psalms 112 33 Psalms 113 44 Psalms 114 23 Psalms 115 55 Psalms 116 46 Psalms 117 34 Psalms 118 54 Psalms 119 34 Psalms 120 51 Psalms 121 49 Psalms 122 31 Psalms 123 27 Psalms 124 89 Psalms 125 26 Psalms 126 23 Psalms 127 36 Psalms 128 35 Psalms 129 16 Psalms 130 33 Psalms 131 45 Psalms 132 41 Psalms 133 35 Psalms 134 28 Psalms 135 32 Psalms 136 22 Psalms 137 29 Psalms 138 35 Psalms 139 41 Psalms 140 30 Psalms 141 25 Psalms 142 19 Psalms 143 66 Psalms 144 23 Psalms 145 31 Psalms 146 39 Psalms 147 17 Psalms 148 54 Psalms 149 42 Psalms 150 56 Proverbs 1 31 Proverbs 2 25 Proverbs 3 24 Proverbs 4 26 Proverbs 5 32 Proverbs 6 22 Proverbs 7 24 Proverbs 8 22 Proverbs 9 29 Proverbs 10 32 Proverbs 11 32 Proverbs 12 20 Proverbs 13 18 Proverbs 14 24 Proverbs 15 21 Proverbs 16 16 Proverbs 17 27 Proverbs 18 33 Proverbs 19 38 Proverbs 20 18 Proverbs 21 34 Proverbs 22 24 Proverbs 23 20 Proverbs 24 67 Proverbs 25 34 Proverbs 26 35 Proverbs 27 46 Proverbs 28 22 Proverbs 29 35 Proverbs 30 43 Proverbs 31 54 Ecclesiastes 1 31 Ecclesiastes 2 25 Ecclesiastes 3 24 Ecclesiastes 4 26 Ecclesiastes 5 32 Ecclesiastes 6 22 Ecclesiastes 7 24 Ecclesiastes 8 22 Ecclesiastes 9 29 Ecclesiastes 10 32 Ecclesiastes 11 32 Ecclesiastes 12 20 Song of Solomon 1 31 Song of Solomon 2 25 Song of Solomon 3 24 Song of Solomon 4 26 Song of Solomon 5 32 Song of Solomon 6 22 Song of Solomon 7 24 Song of Solomon 8 22 Wisdom 1 31 Wisdom 2 25 Wisdom 3 24 Wisdom 4 26 Wisdom 5 32 Wisdom 6 22 Wisdom 7 24 Wisdom 8 22 Wisdom 9 29 Wisdom 10 32 Wisdom 11 32 Wisdom 12 20 Wisdom 13 18 Wisdom 14 24 Wisdom 15 21 Wisdom 16 16 Wisdom 17 27 Wisdom 18 33 Wisdom 19 38 Sirach 1 31 Sirach 2 25 Sirach 3 24 Sirach 4 26 Sirach 5 32 Sirach 6 22 Sirach 7 24 Sirach 8 22 Sirach 9 29 Sirach 10 32 Sirach 11 32 Sirach 12 20 Sirach 13 18 Sirach 14 24 Sirach 15 21 Sirach 16 16 Sirach 17 27 Sirach 18 33 Sirach 19 38 Sirach 20 18 Sirach 21 34 Sirach 22 24 Sirach 23 20 Sirach 24 67 Sirach 25 34 Sirach 26 35 Sirach 27 46 Sirach 28 22 Sirach 29 35 Sirach 30 43 Sirach 31 54 Sirach 32 33 Sirach 33 20 Sirach 34 31 Sirach 35 29 Sirach 36 43 Sirach 37 36 Sirach 38 30 Sirach 39 23 Sirach 40 23 Sirach 41 57 Sirach 42 38 Sirach 43 34 Sirach 44 34 Sirach 45 28 Sirach 46 34 Sirach 47 31 Sirach 48 22 Sirach 49 33 Sirach 50 26 Sirach 51 22 Isaiah 1 31 Isaiah 2 25 Isaiah 3 24 Isaiah 4 26 Isaiah 5 32 Isaiah 6 22 Isaiah 7 24 Isaiah 8 22 Isaiah 9 29 Isaiah 10 32 Isaiah 11 32 Isaiah 12 20 Isaiah 13 18 Isaiah 14 24 Isaiah 15 21 Isaiah 16 16 Isaiah 17 27 Isaiah 18 33 Isaiah 19 38 Isaiah 20 18 Isaiah 21 34 Isaiah 22 24 Isaiah 23 20 Isaiah 24 67 Isaiah 25 34 Isaiah 26 35 Isaiah 27 46 Isaiah 28 22 Isaiah 29 35 Isaiah 30 43 Isaiah 31 54 Isaiah 32 33 Isaiah 33 20 Isaiah 34 31 Isaiah 35 29 Isaiah 36 43 Isaiah 37 36 Isaiah 38 30 Isaiah 39 23 Isaiah 40 23 Isaiah 41 57 Isaiah 42 38 Isaiah 43 34 Isaiah 44 34 Isaiah 45 28 Isaiah 46 34 Isaiah 47 31 Isaiah 48 22 Isaiah 49 33 Isaiah 50 26 Isaiah 51 22 Isaiah 52 25 Isaiah 53 22 Isaiah 54 31 Isaiah 55 23 Isaiah 56 30 Isaiah 57 29 Isaiah 58 28 Isaiah 59 35 Isaiah 60 29 Isaiah 61 10 Isaiah 62 51 Isaiah 63 22 Isaiah 64 31 Isaiah 65 27 Isaiah 66 36 Jeremiah 1 31 Jeremiah 2 25 Jeremiah 3 24 Jeremiah 4 26 Jeremiah 5 32 Jeremiah 6 22 Jeremiah 7 24 Jeremiah 8 22 Jeremiah 9 29 Jeremiah 10 32 Jeremiah 11 32 Jeremiah 12 20 Jeremiah 13 18 Jeremiah 14 24 Jeremiah 15 21 Jeremiah 16 16 Jeremiah 17 27 Jeremiah 18 33 Jeremiah 19 38 Jeremiah 20 18 Jeremiah 21 34 Jeremiah 22 24 Jeremiah 23 20 Jeremiah 24 67 Jeremiah 25 34 Jeremiah 26 35 Jeremiah 27 46 Jeremiah 28 22 Jeremiah 29 35 Jeremiah 30 43 Jeremiah 31 54 Jeremiah 32 33 Jeremiah 33 20 Jeremiah 34 31 Jeremiah 35 29 Jeremiah 36 43 Jeremiah 37 36 Jeremiah 38 30 Jeremiah 39 23 Jeremiah 40 23 Jeremiah 41 57 Jeremiah 42 38 Jeremiah 43 34 Jeremiah 44 34 Jeremiah 45 28 Jeremiah 46 34 Jeremiah 47 31 Jeremiah 48 22 Jeremiah 49 33 Jeremiah 50 26 Jeremiah 51 22 Jeremiah 52 25 Lamentations 1 31 Lamentations 2 25 Lamentations 3 24 Lamentations 4 26 Lamentations 5 32 Baruch 1 31 Baruch 2 25 Baruch 3 24 Baruch 4 26 Baruch 5 32 Baruch 6 22 Ezekiel 1 31 Ezekiel 2 25 Ezekiel 3 24 Ezekiel 4 26 Ezekiel 5 32 Ezekiel 6 22 Ezekiel 7 24 Ezekiel 8 22 Ezekiel 9 29 Ezekiel 10 32 Ezekiel 11 32 Ezekiel 12 20 Ezekiel 13 18 Ezekiel 14 24 Ezekiel 15 21 Ezekiel 16 16 Ezekiel 17 27 Ezekiel 18 33 Ezekiel 19 38 Ezekiel 20 18 Ezekiel 21 34 Ezekiel 22 24 Ezekiel 23 20 Ezekiel 24 67 Ezekiel 25 34 Ezekiel 26 35 Ezekiel 27 46 Ezekiel 28 22 Ezekiel 29 35 Ezekiel 30 43 Ezekiel 31 54 Ezekiel 32 33 Ezekiel 33 20 Ezekiel 34 31 Ezekiel 35 29 Ezekiel 36 43 Ezekiel 37 36 Ezekiel 38 30 Ezekiel 39 23 Ezekiel 40 23 Ezekiel 41 57 Ezekiel 42 38 Ezekiel 43 34 Ezekiel 44 34 Ezekiel 45 28 Ezekiel 46 34 Ezekiel 47 31 Ezekiel 48 22 Daniel 1 31 Daniel 2 25 Daniel 3 24 Daniel 4 26 Daniel 5 32 Daniel 6 22 Daniel 7 24 Daniel 8 22 Daniel 9 29 Daniel 10 32 Daniel 11 32 Daniel 12 20 Daniel 13 18 Daniel 14 24 Hosea 1 31 Hosea 2 25 Hosea 3 24 Hosea 4 26 Hosea 5 32 Hosea 6 22 Hosea 7 24 Hosea 8 22 Hosea 9 29 Hosea 10 32 Hosea 11 32 Hosea 12 20 Hosea 13 18 Hosea 14 24 Joel 1 31 Joel 2 25 Joel 3 24 Joel 4 26 Amos 1 31 Amos 2 25 Amos 3 24 Amos 4 26 Amos 5 32 Amos 6 22 Amos 7 24 Amos 8 22 Amos 9 29 Obadiah 1 31 Jonah 1 31 Jonah 2 25 Jonah 3 24 Jonah 4 26 Micah 1 31 Micah 2 25 Micah 3 24 Micah 4 26 Micah 5 32 Micah 6 22 Micah 7 24 Nahum 1 31 Nahum 2 25 Nahum 3 24 Habakkuk 1 31 Habakkuk 2 25 Habakkuk 3 24 Zephaniah 1 31 Zephaniah 2 25 Zephaniah 3 24 Haggai 1 31 Haggai 2 25 Zechariah 1 31 Zechariah 2 25 Zechariah 3 24 Zechariah 4 26 Zechariah 5 32 Zechariah 6 22 Zechariah 7 24 Zechariah 8 22 Zechariah 9 29 Zechariah 10 32 Zechariah 11 32 Zechariah 12 20 Zechariah 13 18 Zechariah 14 24 Malachi 1 31 Malachi 2 25 Malachi 3 24 Matthew 1 25 Matthew 2 23 Matthew 3 17 Matthew 4 25 Matthew 5 48 Matthew 6 34 Matthew 7 29 Matthew 8 34 Matthew 9 38 Matthew 10 42 Matthew 11 30 Matthew 12 50 Matthew 13 58 Matthew 14 36 Matthew 15 39 Matthew 16 28 Matthew 17 27 Matthew 18 35 Matthew 19 30 Matthew 20 34 Matthew 21 46 Matthew 22 46 Matthew 23 39 Matthew 24 51 Matthew 25 46 Matthew 26 75 Matthew 27 66 Matthew 28 20 Mark 1 45 Mark 2 28 Mark 3 35 Mark 4 41 Mark 5 43 Mark 6 56 Mark 7 37 Mark 8 38 Mark 9 50 Mark 10 52 Mark 11 33 Mark 12 44 Mark 13 37 Mark 14 72 Mark 15 47 Mark 16 20 Luke 1 80 Luke 2 52 Luke 3 38 Luke 4 44 Luke 5 39 Luke 6 49 Luke 7 50 Luke 8 56 Luke 9 62 Luke 10 42 Luke 11 54 Luke 12 59 Luke 13 35 Luke 14 35 Luke 15 32 Luke 16 31 Luke 17 37 Luke 18 43 Luke 19 48 Luke 20 47 Luke 21 38 Luke 22 71 Luke 23 56 Luke 24 53 John 1 51 John 2 25 John 3 36 John 4 54 John 5 47 John 6 71 John 7 53 John 8 59 John 9 41 John 10 42 John 11 57 John 12 50 John 13 38 John 14 31 John 15 27 John 16 33 John 17 26 John 18 40 John 19 42 John 20 31 John 21 25 Acts 1 26 Acts 2 47 Acts 3 26 Acts 4 37 Acts 5 42 Acts 6 15 Acts 7 60 Acts 8 40 Acts 9 43 Acts 10 48 Acts 11 30 Acts 12 25 Acts 13 52 Acts 14 28 Acts 15 41 Acts 16 40 Acts 17 34 Acts 18 28 Acts 19 41 Acts 20 38 Acts 21 40 Acts 22 30 Acts 23 35 Acts 24 27 Acts 25 27 Acts 26 32 Acts 27 44 Acts 28 31 Romans 1 32 Romans 2 29 Romans 3 31 Romans 4 25 Romans 5 21 Romans 6 23 Romans 7 25 Romans 8 39 Romans 9 33 Romans 10 21 Romans 11 36 Romans 12 21 Romans 13 14 Romans 14 23 Romans 15 33 Romans 16 27 1 Corinthians 1 31 1 Corinthians 2 16 1 Corinthians 3 23 1 Corinthians 4 21 1 Corinthians 5 13 1 Corinthians 6 20 1 Corinthians 7 40 1 Corinthians 8 13 1 Corinthians 9 27 1 Corinthians 10 33 1 Corinthians 11 34 1 Corinthians 12 31 1 Corinthians 13 13 1 Corinthians 14 40 1 Corinthians 15 58 1 Corinthians 16 24 2 Corinthians 1 24 2 Corinthians 2 17 2 Corinthians 3 18 2 Corinthians 4 18 2 Corinthians 5 21 2 Corinthians 6 18 2 Corinthians 7 16 2 Corinthians 8 24 2 Corinthians 9 15 2 Corinthians 10 18 2 Corinthians 11 33 2 Corinthians 12 21 2 Corinthians 13 14 Galatians 1 24 Galatians 2 21 Galatians 3 29 Galatians 4 31 Galatians 5 26 Galatians 6 18 Ephesians 1 23 Ephesians 2 22 Ephesians 3 21 Ephesians 4 32 Ephesians 5 33 Ephesians 6 24 Philippians 1 30 Philippians 2 30 Philippians 3 21 Philippians 4 23 Colossians 1 29 Colossians 2 23 Colossians 3 25 Colossians 4 18 1 Thessalonians 1 10 1 Thessalonians 2 20 1 Thessalonians 3 13 1 Thessalonians 4 18 1 Thessalonians 5 28 2 Thessalonians 1 12 2 Thessalonians 2 17 2 Thessalonians 3 18 1 Timothy 1 20 1 Timothy 2 15 1 Timothy 3 16 1 Timothy 4 16 1 Timothy 5 25 1 Timothy 6 21 2 Timothy 1 18 2 Timothy 2 26 2 Timothy 3 17 2 Timothy 4 22 Titus 1 16 Titus 2 15 Titus 3 15 Philemon 1 25 Hebrews 1 14 Hebrews 2 18 Hebrews 3 19 Hebrews 4 16 Hebrews 5 14 Hebrews 6 20 Hebrews 7 28 Hebrews 8 13 Hebrews 9 28 Hebrews 10 39 Hebrews 11 40 Hebrews 12 29 Hebrews 13 25 James 1 27 James 2 26 James 3 18 James 4 17 James 5 20 1 Peter 1 25 1 Peter 2 25 1 Peter 3 22 1 Peter 4 19 1 Peter 5 14 2 Peter 1 21 2 Peter 2 22 2 Peter 3 18 1 John 1 10 1 John 2 29 1 John 3 24 1 John 4 21 1 John 5 21 2 John 1 13 3 John 1 14 Jude 1 25 Revelation 1 20 Revelation 2 29 Revelation 3 22 Revelation 4 11 Revelation 5 14 Revelation 6 17 Revelation 7 17 Revelation 8 13 Revelation 9 21 Revelation 10 11 Revelation 11 19 Revelation 12 17 Revelation 13 18 Revelation 14 20 Revelation 15 8 Revelation 16 21 Revelation 17 18 Revelation 18 24 Revelation 19 21 Revelation 20 15 Revelation 21 27 Revelation 22 21 bibledit-gtk-4.9/templates/versification_russian_canonical.xml000664 000766 000024 00000307461 12221507126 025226 0ustar00teusstaff000000 000000 Genesis 1 31 Genesis 2 25 Genesis 3 24 Genesis 4 26 Genesis 5 32 Genesis 6 22 Genesis 7 24 Genesis 8 22 Genesis 9 29 Genesis 10 32 Genesis 11 32 Genesis 12 20 Genesis 13 18 Genesis 14 24 Genesis 15 21 Genesis 16 16 Genesis 17 27 Genesis 18 33 Genesis 19 38 Genesis 20 18 Genesis 21 34 Genesis 22 24 Genesis 23 20 Genesis 24 67 Genesis 25 34 Genesis 26 35 Genesis 27 46 Genesis 28 22 Genesis 29 35 Genesis 30 43 Genesis 31 55 Genesis 32 32 Genesis 33 20 Genesis 34 31 Genesis 35 29 Genesis 36 43 Genesis 37 36 Genesis 38 30 Genesis 39 23 Genesis 40 23 Genesis 41 57 Genesis 42 38 Genesis 43 34 Genesis 44 34 Genesis 45 28 Genesis 46 34 Genesis 47 31 Genesis 48 22 Genesis 49 33 Genesis 50 26 Exodus 1 22 Exodus 2 25 Exodus 3 22 Exodus 4 31 Exodus 5 23 Exodus 6 30 Exodus 7 25 Exodus 8 32 Exodus 9 35 Exodus 10 29 Exodus 11 10 Exodus 12 51 Exodus 13 22 Exodus 14 31 Exodus 15 27 Exodus 16 36 Exodus 17 16 Exodus 18 27 Exodus 19 25 Exodus 20 26 Exodus 21 36 Exodus 22 31 Exodus 23 33 Exodus 24 18 Exodus 25 40 Exodus 26 37 Exodus 27 21 Exodus 28 43 Exodus 29 46 Exodus 30 38 Exodus 31 18 Exodus 32 35 Exodus 33 23 Exodus 34 35 Exodus 35 35 Exodus 36 38 Exodus 37 29 Exodus 38 31 Exodus 39 43 Exodus 40 38 Leviticus 1 17 Leviticus 2 16 Leviticus 3 17 Leviticus 4 35 Leviticus 5 19 Leviticus 6 30 Leviticus 7 38 Leviticus 8 36 Leviticus 9 24 Leviticus 10 20 Leviticus 11 47 Leviticus 12 8 Leviticus 13 59 Leviticus 14 56 Leviticus 15 33 Leviticus 16 34 Leviticus 17 16 Leviticus 18 30 Leviticus 19 37 Leviticus 20 27 Leviticus 21 24 Leviticus 22 33 Leviticus 23 44 Leviticus 24 23 Leviticus 25 55 Leviticus 26 46 Leviticus 27 34 Numbers 1 54 Numbers 2 34 Numbers 3 51 Numbers 4 49 Numbers 5 31 Numbers 6 27 Numbers 7 89 Numbers 8 26 Numbers 9 23 Numbers 10 36 Numbers 11 35 Numbers 12 15 Numbers 13 34 Numbers 14 45 Numbers 15 41 Numbers 16 50 Numbers 17 13 Numbers 18 32 Numbers 19 22 Numbers 20 29 Numbers 21 35 Numbers 22 41 Numbers 23 30 Numbers 24 25 Numbers 25 18 Numbers 26 65 Numbers 27 23 Numbers 28 31 Numbers 29 39 Numbers 30 17 Numbers 31 54 Numbers 32 42 Numbers 33 56 Numbers 34 29 Numbers 35 34 Numbers 36 13 Deuteronomy 1 46 Deuteronomy 2 37 Deuteronomy 3 29 Deuteronomy 4 49 Deuteronomy 5 33 Deuteronomy 6 25 Deuteronomy 7 26 Deuteronomy 8 20 Deuteronomy 9 29 Deuteronomy 10 22 Deuteronomy 11 32 Deuteronomy 12 32 Deuteronomy 13 18 Deuteronomy 14 29 Deuteronomy 15 23 Deuteronomy 16 22 Deuteronomy 17 20 Deuteronomy 18 22 Deuteronomy 19 21 Deuteronomy 20 20 Deuteronomy 21 23 Deuteronomy 22 30 Deuteronomy 23 25 Deuteronomy 24 22 Deuteronomy 25 19 Deuteronomy 26 19 Deuteronomy 27 26 Deuteronomy 28 68 Deuteronomy 29 29 Deuteronomy 30 20 Deuteronomy 31 30 Deuteronomy 32 52 Deuteronomy 33 29 Deuteronomy 34 12 Joshua 1 18 Joshua 2 24 Joshua 3 17 Joshua 4 24 Joshua 5 16 Joshua 6 26 Joshua 7 26 Joshua 8 35 Joshua 9 27 Joshua 10 43 Joshua 11 23 Joshua 12 24 Joshua 13 33 Joshua 14 15 Joshua 15 63 Joshua 16 10 Joshua 17 18 Joshua 18 28 Joshua 19 51 Joshua 20 9 Joshua 21 45 Joshua 22 34 Joshua 23 16 Joshua 24 33 Judges 1 36 Judges 2 23 Judges 3 31 Judges 4 24 Judges 5 31 Judges 6 40 Judges 7 25 Judges 8 35 Judges 9 57 Judges 10 18 Judges 11 40 Judges 12 15 Judges 13 25 Judges 14 20 Judges 15 20 Judges 16 31 Judges 17 13 Judges 18 31 Judges 19 30 Judges 20 48 Judges 21 25 Ruth 1 22 Ruth 2 23 Ruth 3 18 Ruth 4 22 1 Samuel 1 28 1 Samuel 2 36 1 Samuel 3 21 1 Samuel 4 22 1 Samuel 5 12 1 Samuel 6 21 1 Samuel 7 17 1 Samuel 8 22 1 Samuel 9 27 1 Samuel 10 27 1 Samuel 11 15 1 Samuel 12 25 1 Samuel 13 23 1 Samuel 14 52 1 Samuel 15 35 1 Samuel 16 23 1 Samuel 17 58 1 Samuel 18 30 1 Samuel 19 24 1 Samuel 20 43 1 Samuel 21 15 1 Samuel 22 23 1 Samuel 23 28 1 Samuel 24 23 1 Samuel 25 44 1 Samuel 26 25 1 Samuel 27 12 1 Samuel 28 25 1 Samuel 29 11 1 Samuel 30 31 1 Samuel 31 13 2 Samuel 1 27 2 Samuel 2 32 2 Samuel 3 39 2 Samuel 4 12 2 Samuel 5 25 2 Samuel 6 23 2 Samuel 7 29 2 Samuel 8 18 2 Samuel 9 13 2 Samuel 10 19 2 Samuel 11 27 2 Samuel 12 31 2 Samuel 13 39 2 Samuel 14 33 2 Samuel 15 37 2 Samuel 16 23 2 Samuel 17 29 2 Samuel 18 33 2 Samuel 19 43 2 Samuel 20 26 2 Samuel 21 22 2 Samuel 22 51 2 Samuel 23 39 2 Samuel 24 25 1 Kings 1 53 1 Kings 2 46 1 Kings 3 28 1 Kings 4 34 1 Kings 5 18 1 Kings 6 38 1 Kings 7 51 1 Kings 8 66 1 Kings 9 28 1 Kings 10 29 1 Kings 11 43 1 Kings 12 33 1 Kings 13 34 1 Kings 14 31 1 Kings 15 34 1 Kings 16 34 1 Kings 17 24 1 Kings 18 46 1 Kings 19 21 1 Kings 20 43 1 Kings 21 29 1 Kings 22 53 2 Kings 1 18 2 Kings 2 25 2 Kings 3 27 2 Kings 4 44 2 Kings 5 27 2 Kings 6 33 2 Kings 7 20 2 Kings 8 29 2 Kings 9 37 2 Kings 10 36 2 Kings 11 21 2 Kings 12 21 2 Kings 13 25 2 Kings 14 29 2 Kings 15 38 2 Kings 16 20 2 Kings 17 41 2 Kings 18 37 2 Kings 19 37 2 Kings 20 21 2 Kings 21 26 2 Kings 22 20 2 Kings 23 37 2 Kings 24 20 2 Kings 25 30 1 Chronicles 1 54 1 Chronicles 2 55 1 Chronicles 3 24 1 Chronicles 4 43 1 Chronicles 5 26 1 Chronicles 6 81 1 Chronicles 7 40 1 Chronicles 8 40 1 Chronicles 9 44 1 Chronicles 10 14 1 Chronicles 11 47 1 Chronicles 12 40 1 Chronicles 13 14 1 Chronicles 14 17 1 Chronicles 15 29 1 Chronicles 16 43 1 Chronicles 17 27 1 Chronicles 18 17 1 Chronicles 19 19 1 Chronicles 20 8 1 Chronicles 21 30 1 Chronicles 22 19 1 Chronicles 23 32 1 Chronicles 24 31 1 Chronicles 25 31 1 Chronicles 26 32 1 Chronicles 27 34 1 Chronicles 28 21 1 Chronicles 29 30 2 Chronicles 1 17 2 Chronicles 2 18 2 Chronicles 3 17 2 Chronicles 4 22 2 Chronicles 5 14 2 Chronicles 6 42 2 Chronicles 7 22 2 Chronicles 8 18 2 Chronicles 9 31 2 Chronicles 10 19 2 Chronicles 11 23 2 Chronicles 12 16 2 Chronicles 13 22 2 Chronicles 14 15 2 Chronicles 15 19 2 Chronicles 16 14 2 Chronicles 17 19 2 Chronicles 18 34 2 Chronicles 19 11 2 Chronicles 20 37 2 Chronicles 21 20 2 Chronicles 22 12 2 Chronicles 23 21 2 Chronicles 24 27 2 Chronicles 25 28 2 Chronicles 26 23 2 Chronicles 27 9 2 Chronicles 28 27 2 Chronicles 29 36 2 Chronicles 30 27 2 Chronicles 31 21 2 Chronicles 32 33 2 Chronicles 33 25 2 Chronicles 34 33 2 Chronicles 35 27 2 Chronicles 36 23 Ezra 1 11 Ezra 2 70 Ezra 3 13 Ezra 4 24 Ezra 5 17 Ezra 6 22 Ezra 7 28 Ezra 8 36 Ezra 9 15 Ezra 10 44 Nehemiah 1 11 Nehemiah 2 20 Nehemiah 3 32 Nehemiah 4 23 Nehemiah 5 19 Nehemiah 6 19 Nehemiah 7 73 Nehemiah 8 18 Nehemiah 9 38 Nehemiah 10 39 Nehemiah 11 36 Nehemiah 12 47 Nehemiah 13 31 Esther 1 22 Esther 2 23 Esther 3 15 Esther 4 17 Esther 5 14 Esther 6 14 Esther 7 10 Esther 8 17 Esther 9 32 Esther 10 3 Job 1 22 Job 2 13 Job 3 26 Job 4 21 Job 5 27 Job 6 30 Job 7 21 Job 8 22 Job 9 35 Job 10 22 Job 11 20 Job 12 25 Job 13 28 Job 14 22 Job 15 35 Job 16 22 Job 17 16 Job 18 21 Job 19 29 Job 20 29 Job 21 34 Job 22 30 Job 23 17 Job 24 25 Job 25 6 Job 26 14 Job 27 23 Job 28 28 Job 29 25 Job 30 31 Job 31 40 Job 32 22 Job 33 33 Job 34 37 Job 35 16 Job 36 33 Job 37 24 Job 38 41 Job 39 35 Job 40 27 Job 41 26 Job 42 17 Psalms 1 6 Psalms 2 12 Psalms 3 9 Psalms 4 9 Psalms 5 13 Psalms 6 11 Psalms 7 18 Psalms 8 10 Psalms 9 39 Psalms 10 7 Psalms 11 9 Psalms 12 6 Psalms 13 7 Psalms 14 5 Psalms 15 11 Psalms 16 15 Psalms 17 51 Psalms 18 15 Psalms 19 10 Psalms 20 14 Psalms 21 32 Psalms 22 6 Psalms 23 10 Psalms 24 22 Psalms 25 12 Psalms 26 14 Psalms 27 9 Psalms 28 11 Psalms 29 13 Psalms 30 25 Psalms 31 11 Psalms 32 22 Psalms 33 23 Psalms 34 28 Psalms 35 13 Psalms 36 40 Psalms 37 23 Psalms 38 14 Psalms 39 18 Psalms 40 14 Psalms 41 12 Psalms 42 5 Psalms 43 27 Psalms 44 18 Psalms 45 12 Psalms 46 10 Psalms 47 15 Psalms 48 21 Psalms 49 23 Psalms 50 21 Psalms 51 11 Psalms 52 7 Psalms 53 9 Psalms 54 24 Psalms 55 14 Psalms 56 12 Psalms 57 12 Psalms 58 18 Psalms 59 14 Psalms 60 9 Psalms 61 13 Psalms 62 12 Psalms 63 11 Psalms 64 14 Psalms 65 20 Psalms 66 8 Psalms 67 36 Psalms 68 37 Psalms 69 6 Psalms 70 24 Psalms 71 20 Psalms 72 28 Psalms 73 23 Psalms 74 11 Psalms 75 13 Psalms 76 21 Psalms 77 72 Psalms 78 13 Psalms 79 20 Psalms 80 17 Psalms 81 8 Psalms 82 19 Psalms 83 13 Psalms 84 14 Psalms 85 17 Psalms 86 7 Psalms 87 19 Psalms 88 53 Psalms 89 17 Psalms 90 16 Psalms 91 16 Psalms 92 5 Psalms 93 23 Psalms 94 11 Psalms 95 13 Psalms 96 12 Psalms 97 9 Psalms 98 9 Psalms 99 5 Psalms 100 8 Psalms 101 29 Psalms 102 22 Psalms 103 35 Psalms 104 45 Psalms 105 48 Psalms 106 43 Psalms 107 14 Psalms 108 31 Psalms 109 7 Psalms 110 10 Psalms 111 10 Psalms 112 9 Psalms 113 26 Psalms 114 9 Psalms 115 10 Psalms 116 2 Psalms 117 29 Psalms 118 176 Psalms 119 7 Psalms 120 8 Psalms 121 9 Psalms 122 4 Psalms 123 8 Psalms 124 5 Psalms 125 6 Psalms 126 5 Psalms 127 6 Psalms 128 8 Psalms 129 8 Psalms 130 3 Psalms 131 18 Psalms 132 3 Psalms 133 3 Psalms 134 21 Psalms 135 26 Psalms 136 9 Psalms 137 8 Psalms 138 24 Psalms 139 14 Psalms 140 10 Psalms 141 7 Psalms 142 12 Psalms 143 15 Psalms 144 21 Psalms 145 10 Psalms 146 11 Psalms 147 9 Psalms 148 14 Psalms 149 9 Psalms 150 6 Proverbs 1 33 Proverbs 2 22 Proverbs 3 35 Proverbs 4 27 Proverbs 5 23 Proverbs 6 35 Proverbs 7 27 Proverbs 8 36 Proverbs 9 18 Proverbs 10 32 Proverbs 11 31 Proverbs 12 28 Proverbs 13 25 Proverbs 14 35 Proverbs 15 33 Proverbs 16 33 Proverbs 17 28 Proverbs 18 24 Proverbs 19 29 Proverbs 20 30 Proverbs 21 31 Proverbs 22 29 Proverbs 23 35 Proverbs 24 34 Proverbs 25 28 Proverbs 26 28 Proverbs 27 27 Proverbs 28 28 Proverbs 29 27 Proverbs 30 33 Proverbs 31 31 Ecclesiastes 1 18 Ecclesiastes 2 26 Ecclesiastes 3 22 Ecclesiastes 4 17 Ecclesiastes 5 19 Ecclesiastes 6 12 Ecclesiastes 7 29 Ecclesiastes 8 17 Ecclesiastes 9 18 Ecclesiastes 10 20 Ecclesiastes 11 10 Ecclesiastes 12 14 Song of Solomon 1 16 Song of Solomon 2 17 Song of Solomon 3 11 Song of Solomon 4 16 Song of Solomon 5 16 Song of Solomon 6 12 Song of Solomon 7 14 Song of Solomon 8 14 Isaiah 1 31 Isaiah 2 22 Isaiah 3 25 Isaiah 4 6 Isaiah 5 30 Isaiah 6 13 Isaiah 7 25 Isaiah 8 22 Isaiah 9 21 Isaiah 10 34 Isaiah 11 16 Isaiah 12 6 Isaiah 13 22 Isaiah 14 32 Isaiah 15 9 Isaiah 16 14 Isaiah 17 14 Isaiah 18 7 Isaiah 19 25 Isaiah 20 6 Isaiah 21 17 Isaiah 22 25 Isaiah 23 18 Isaiah 24 23 Isaiah 25 12 Isaiah 26 21 Isaiah 27 13 Isaiah 28 29 Isaiah 29 24 Isaiah 30 33 Isaiah 31 9 Isaiah 32 20 Isaiah 33 24 Isaiah 34 17 Isaiah 35 10 Isaiah 36 22 Isaiah 37 38 Isaiah 38 22 Isaiah 39 8 Isaiah 40 31 Isaiah 41 29 Isaiah 42 25 Isaiah 43 28 Isaiah 44 28 Isaiah 45 25 Isaiah 46 13 Isaiah 47 15 Isaiah 48 22 Isaiah 49 26 Isaiah 50 11 Isaiah 51 23 Isaiah 52 15 Isaiah 53 12 Isaiah 54 17 Isaiah 55 13 Isaiah 56 12 Isaiah 57 21 Isaiah 58 14 Isaiah 59 21 Isaiah 60 22 Isaiah 61 11 Isaiah 62 12 Isaiah 63 19 Isaiah 64 12 Isaiah 65 25 Isaiah 66 24 Jeremiah 1 19 Jeremiah 2 37 Jeremiah 3 25 Jeremiah 4 31 Jeremiah 5 31 Jeremiah 6 30 Jeremiah 7 34 Jeremiah 8 22 Jeremiah 9 26 Jeremiah 10 25 Jeremiah 11 23 Jeremiah 12 17 Jeremiah 13 27 Jeremiah 14 22 Jeremiah 15 21 Jeremiah 16 21 Jeremiah 17 27 Jeremiah 18 23 Jeremiah 19 15 Jeremiah 20 18 Jeremiah 21 14 Jeremiah 22 30 Jeremiah 23 40 Jeremiah 24 10 Jeremiah 25 38 Jeremiah 26 24 Jeremiah 27 22 Jeremiah 28 17 Jeremiah 29 32 Jeremiah 30 24 Jeremiah 31 40 Jeremiah 32 44 Jeremiah 33 26 Jeremiah 34 22 Jeremiah 35 19 Jeremiah 36 32 Jeremiah 37 21 Jeremiah 38 28 Jeremiah 39 18 Jeremiah 40 16 Jeremiah 41 18 Jeremiah 42 22 Jeremiah 43 13 Jeremiah 44 30 Jeremiah 45 5 Jeremiah 46 28 Jeremiah 47 7 Jeremiah 48 47 Jeremiah 49 39 Jeremiah 50 46 Jeremiah 51 64 Jeremiah 52 34 Lamentations 1 22 Lamentations 2 22 Lamentations 3 66 Lamentations 4 22 Lamentations 5 22 Ezekiel 1 28 Ezekiel 2 10 Ezekiel 3 27 Ezekiel 4 17 Ezekiel 5 17 Ezekiel 6 14 Ezekiel 7 27 Ezekiel 8 18 Ezekiel 9 11 Ezekiel 10 22 Ezekiel 11 25 Ezekiel 12 28 Ezekiel 13 23 Ezekiel 14 23 Ezekiel 15 8 Ezekiel 16 63 Ezekiel 17 24 Ezekiel 18 32 Ezekiel 19 14 Ezekiel 20 49 Ezekiel 21 32 Ezekiel 22 31 Ezekiel 23 49 Ezekiel 24 27 Ezekiel 25 17 Ezekiel 26 21 Ezekiel 27 36 Ezekiel 28 26 Ezekiel 29 21 Ezekiel 30 26 Ezekiel 31 18 Ezekiel 32 32 Ezekiel 33 33 Ezekiel 34 31 Ezekiel 35 15 Ezekiel 36 38 Ezekiel 37 28 Ezekiel 38 23 Ezekiel 39 29 Ezekiel 40 49 Ezekiel 41 26 Ezekiel 42 20 Ezekiel 43 27 Ezekiel 44 31 Ezekiel 45 25 Ezekiel 46 24 Ezekiel 47 23 Ezekiel 48 35 Daniel 1 21 Daniel 2 49 Daniel 3 33 Daniel 4 34 Daniel 5 31 Daniel 6 28 Daniel 7 28 Daniel 8 27 Daniel 9 27 Daniel 10 21 Daniel 11 45 Daniel 12 13 Hosea 1 11 Hosea 2 23 Hosea 3 5 Hosea 4 19 Hosea 5 15 Hosea 6 11 Hosea 7 16 Hosea 8 14 Hosea 9 17 Hosea 10 15 Hosea 11 12 Hosea 12 14 Hosea 13 15 Hosea 14 10 Joel 1 20 Joel 2 32 Joel 3 21 Amos 1 15 Amos 2 16 Amos 3 15 Amos 4 13 Amos 5 27 Amos 6 14 Amos 7 17 Amos 8 14 Amos 9 15 Obadiah 1 21 Jonah 1 16 Jonah 2 11 Jonah 3 10 Jonah 4 11 Micah 1 16 Micah 2 13 Micah 3 12 Micah 4 13 Micah 5 15 Micah 6 16 Micah 7 20 Nahum 1 15 Nahum 2 13 Nahum 3 19 Habakkuk 1 17 Habakkuk 2 20 Habakkuk 3 19 Zephaniah 1 18 Zephaniah 2 15 Zephaniah 3 20 Haggai 1 15 Haggai 2 23 Zechariah 1 21 Zechariah 2 13 Zechariah 3 10 Zechariah 4 14 Zechariah 5 11 Zechariah 6 15 Zechariah 7 14 Zechariah 8 23 Zechariah 9 17 Zechariah 10 12 Zechariah 11 17 Zechariah 12 14 Zechariah 13 9 Zechariah 14 21 Malachi 1 14 Malachi 2 17 Malachi 3 18 Malachi 4 6 Matthew 1 25 Matthew 2 23 Matthew 3 17 Matthew 4 25 Matthew 5 48 Matthew 6 34 Matthew 7 29 Matthew 8 34 Matthew 9 38 Matthew 10 42 Matthew 11 30 Matthew 12 50 Matthew 13 58 Matthew 14 36 Matthew 15 39 Matthew 16 28 Matthew 17 27 Matthew 18 35 Matthew 19 30 Matthew 20 34 Matthew 21 46 Matthew 22 46 Matthew 23 39 Matthew 24 51 Matthew 25 46 Matthew 26 75 Matthew 27 66 Matthew 28 20 Mark 1 45 Mark 2 28 Mark 3 35 Mark 4 41 Mark 5 43 Mark 6 56 Mark 7 37 Mark 8 38 Mark 9 50 Mark 10 52 Mark 11 33 Mark 12 44 Mark 13 37 Mark 14 72 Mark 15 47 Mark 16 20 Luke 1 80 Luke 2 52 Luke 3 38 Luke 4 44 Luke 5 39 Luke 6 49 Luke 7 50 Luke 8 56 Luke 9 62 Luke 10 42 Luke 11 54 Luke 12 59 Luke 13 35 Luke 14 35 Luke 15 32 Luke 16 31 Luke 17 37 Luke 18 43 Luke 19 48 Luke 20 47 Luke 21 38 Luke 22 71 Luke 23 56 Luke 24 53 John 1 51 John 2 25 John 3 36 John 4 54 John 5 47 John 6 71 John 7 53 John 8 59 John 9 41 John 10 42 John 11 57 John 12 50 John 13 38 John 14 31 John 15 27 John 16 33 John 17 26 John 18 40 John 19 42 John 20 31 John 21 25 Acts 1 26 Acts 2 47 Acts 3 26 Acts 4 37 Acts 5 42 Acts 6 15 Acts 7 60 Acts 8 40 Acts 9 43 Acts 10 48 Acts 11 30 Acts 12 25 Acts 13 52 Acts 14 28 Acts 15 41 Acts 16 40 Acts 17 34 Acts 18 28 Acts 19 40 Acts 20 38 Acts 21 40 Acts 22 30 Acts 23 35 Acts 24 27 Acts 25 27 Acts 26 32 Acts 27 44 Acts 28 31 Romans 1 32 Romans 2 29 Romans 3 31 Romans 4 25 Romans 5 21 Romans 6 23 Romans 7 25 Romans 8 39 Romans 9 33 Romans 10 21 Romans 11 36 Romans 12 21 Romans 13 14 Romans 14 26 Romans 15 33 Romans 16 24 1 Corinthians 1 31 1 Corinthians 2 16 1 Corinthians 3 23 1 Corinthians 4 21 1 Corinthians 5 13 1 Corinthians 6 20 1 Corinthians 7 40 1 Corinthians 8 13 1 Corinthians 9 27 1 Corinthians 10 33 1 Corinthians 11 34 1 Corinthians 12 31 1 Corinthians 13 13 1 Corinthians 14 40 1 Corinthians 15 58 1 Corinthians 16 24 2 Corinthians 1 24 2 Corinthians 2 17 2 Corinthians 3 18 2 Corinthians 4 18 2 Corinthians 5 21 2 Corinthians 6 18 2 Corinthians 7 16 2 Corinthians 8 24 2 Corinthians 9 15 2 Corinthians 10 18 2 Corinthians 11 32 2 Corinthians 12 21 2 Corinthians 13 13 Galatians 1 24 Galatians 2 21 Galatians 3 29 Galatians 4 31 Galatians 5 26 Galatians 6 18 Ephesians 1 23 Ephesians 2 22 Ephesians 3 21 Ephesians 4 32 Ephesians 5 33 Ephesians 6 24 Philippians 1 30 Philippians 2 30 Philippians 3 21 Philippians 4 23 Colossians 1 29 Colossians 2 23 Colossians 3 25 Colossians 4 18 1 Thessalonians 1 10 1 Thessalonians 2 20 1 Thessalonians 3 13 1 Thessalonians 4 18 1 Thessalonians 5 28 2 Thessalonians 1 12 2 Thessalonians 2 17 2 Thessalonians 3 18 1 Timothy 1 20 1 Timothy 2 15 1 Timothy 3 16 1 Timothy 4 16 1 Timothy 5 25 1 Timothy 6 21 2 Timothy 1 18 2 Timothy 2 26 2 Timothy 3 17 2 Timothy 4 22 Titus 1 16 Titus 2 15 Titus 3 15 Philemon 1 25 Hebrews 1 14 Hebrews 2 18 Hebrews 3 19 Hebrews 4 16 Hebrews 5 14 Hebrews 6 20 Hebrews 7 28 Hebrews 8 13 Hebrews 9 28 Hebrews 10 39 Hebrews 11 40 Hebrews 12 29 Hebrews 13 25 James 1 27 James 2 26 James 3 18 James 4 17 James 5 20 1 Peter 1 25 1 Peter 2 25 1 Peter 3 22 1 Peter 4 19 1 Peter 5 14 2 Peter 1 21 2 Peter 2 22 2 Peter 3 18 1 John 1 10 1 John 2 29 1 John 3 24 1 John 4 21 1 John 5 21 2 John 1 13 3 John 1 15 Jude 1 25 Revelation 1 20 Revelation 2 29 Revelation 3 22 Revelation 4 11 Revelation 5 14 Revelation 6 17 Revelation 7 17 Revelation 8 13 Revelation 9 21 Revelation 10 11 Revelation 11 19 Revelation 12 17 Revelation 13 18 Revelation 14 20 Revelation 15 8 Revelation 16 21 Revelation 17 18 Revelation 18 24 Revelation 19 21 Revelation 20 15 Revelation 21 27 Revelation 22 21 bibledit-gtk-4.9/templates/versification_russian_orthodox.xml000664 000766 000024 00000310214 12221507126 025133 0ustar00teusstaff000000 000000 Genesis 1 31 Genesis 2 25 Genesis 3 24 Genesis 4 26 Genesis 5 32 Genesis 6 22 Genesis 7 24 Genesis 8 22 Genesis 9 29 Genesis 10 32 Genesis 11 32 Genesis 12 20 Genesis 13 18 Genesis 14 24 Genesis 15 21 Genesis 16 16 Genesis 17 27 Genesis 18 33 Genesis 19 38 Genesis 20 18 Genesis 21 34 Genesis 22 24 Genesis 23 20 Genesis 24 67 Genesis 25 34 Genesis 26 35 Genesis 27 46 Genesis 28 22 Genesis 29 35 Genesis 30 43 Genesis 31 55 Genesis 32 32 Genesis 33 20 Genesis 34 31 Genesis 35 29 Genesis 36 43 Genesis 37 36 Genesis 38 30 Genesis 39 23 Genesis 40 23 Genesis 41 57 Genesis 42 38 Genesis 43 34 Genesis 44 34 Genesis 45 28 Genesis 46 34 Genesis 47 31 Genesis 48 22 Genesis 49 33 Genesis 50 26 Exodus 1 22 Exodus 2 25 Exodus 3 22 Exodus 4 31 Exodus 5 23 Exodus 6 30 Exodus 7 25 Exodus 8 32 Exodus 9 35 Exodus 10 29 Exodus 11 10 Exodus 12 51 Exodus 13 22 Exodus 14 31 Exodus 15 27 Exodus 16 36 Exodus 17 16 Exodus 18 27 Exodus 19 25 Exodus 20 26 Exodus 21 36 Exodus 22 31 Exodus 23 33 Exodus 24 18 Exodus 25 40 Exodus 26 37 Exodus 27 21 Exodus 28 43 Exodus 29 46 Exodus 30 38 Exodus 31 18 Exodus 32 35 Exodus 33 23 Exodus 34 35 Exodus 35 35 Exodus 36 38 Exodus 37 29 Exodus 38 31 Exodus 39 43 Exodus 40 38 Leviticus 1 17 Leviticus 2 16 Leviticus 3 17 Leviticus 4 35 Leviticus 5 19 Leviticus 6 30 Leviticus 7 38 Leviticus 8 36 Leviticus 9 24 Leviticus 10 20 Leviticus 11 47 Leviticus 12 8 Leviticus 13 59 Leviticus 14 56 Leviticus 15 33 Leviticus 16 34 Leviticus 17 16 Leviticus 18 30 Leviticus 19 37 Leviticus 20 27 Leviticus 21 24 Leviticus 22 33 Leviticus 23 44 Leviticus 24 23 Leviticus 25 55 Leviticus 26 46 Leviticus 27 34 Numbers 1 54 Numbers 2 34 Numbers 3 51 Numbers 4 49 Numbers 5 31 Numbers 6 27 Numbers 7 89 Numbers 8 26 Numbers 9 23 Numbers 10 36 Numbers 11 35 Numbers 12 15 Numbers 13 34 Numbers 14 45 Numbers 15 41 Numbers 16 50 Numbers 17 13 Numbers 18 32 Numbers 19 22 Numbers 20 29 Numbers 21 35 Numbers 22 41 Numbers 23 30 Numbers 24 25 Numbers 25 18 Numbers 26 65 Numbers 27 23 Numbers 28 31 Numbers 29 39 Numbers 30 17 Numbers 31 54 Numbers 32 42 Numbers 33 56 Numbers 34 29 Numbers 35 34 Numbers 36 13 Deuteronomy 1 46 Deuteronomy 2 37 Deuteronomy 3 29 Deuteronomy 4 49 Deuteronomy 5 33 Deuteronomy 6 25 Deuteronomy 7 26 Deuteronomy 8 20 Deuteronomy 9 29 Deuteronomy 10 22 Deuteronomy 11 32 Deuteronomy 12 32 Deuteronomy 13 18 Deuteronomy 14 29 Deuteronomy 15 23 Deuteronomy 16 22 Deuteronomy 17 20 Deuteronomy 18 22 Deuteronomy 19 21 Deuteronomy 20 20 Deuteronomy 21 23 Deuteronomy 22 30 Deuteronomy 23 25 Deuteronomy 24 22 Deuteronomy 25 19 Deuteronomy 26 19 Deuteronomy 27 26 Deuteronomy 28 68 Deuteronomy 29 29 Deuteronomy 30 20 Deuteronomy 31 30 Deuteronomy 32 52 Deuteronomy 33 29 Deuteronomy 34 12 Joshua 1 18 Joshua 2 24 Joshua 3 17 Joshua 4 24 Joshua 5 16 Joshua 6 26 Joshua 7 26 Joshua 8 35 Joshua 9 27 Joshua 10 43 Joshua 11 23 Joshua 12 24 Joshua 13 33 Joshua 14 15 Joshua 15 63 Joshua 16 10 Joshua 17 18 Joshua 18 28 Joshua 19 51 Joshua 20 9 Joshua 21 45 Joshua 22 34 Joshua 23 16 Joshua 24 36 Judges 1 36 Judges 2 23 Judges 3 31 Judges 4 24 Judges 5 31 Judges 6 40 Judges 7 25 Judges 8 35 Judges 9 57 Judges 10 18 Judges 11 40 Judges 12 15 Judges 13 25 Judges 14 20 Judges 15 20 Judges 16 31 Judges 17 13 Judges 18 31 Judges 19 30 Judges 20 48 Judges 21 25 Ruth 1 22 Ruth 2 23 Ruth 3 18 Ruth 4 22 1 Samuel 1 28 1 Samuel 2 36 1 Samuel 3 21 1 Samuel 4 22 1 Samuel 5 12 1 Samuel 6 21 1 Samuel 7 17 1 Samuel 8 22 1 Samuel 9 27 1 Samuel 10 27 1 Samuel 11 15 1 Samuel 12 25 1 Samuel 13 23 1 Samuel 14 52 1 Samuel 15 35 1 Samuel 16 23 1 Samuel 17 58 1 Samuel 18 30 1 Samuel 19 24 1 Samuel 20 43 1 Samuel 21 15 1 Samuel 22 23 1 Samuel 23 28 1 Samuel 24 23 1 Samuel 25 44 1 Samuel 26 25 1 Samuel 27 12 1 Samuel 28 25 1 Samuel 29 11 1 Samuel 30 31 1 Samuel 31 13 2 Samuel 1 27 2 Samuel 2 32 2 Samuel 3 39 2 Samuel 4 12 2 Samuel 5 25 2 Samuel 6 23 2 Samuel 7 29 2 Samuel 8 18 2 Samuel 9 13 2 Samuel 10 19 2 Samuel 11 27 2 Samuel 12 31 2 Samuel 13 39 2 Samuel 14 33 2 Samuel 15 37 2 Samuel 16 23 2 Samuel 17 29 2 Samuel 18 33 2 Samuel 19 43 2 Samuel 20 26 2 Samuel 21 22 2 Samuel 22 51 2 Samuel 23 39 2 Samuel 24 25 1 Kings 1 53 1 Kings 2 46 1 Kings 3 28 1 Kings 4 34 1 Kings 5 18 1 Kings 6 38 1 Kings 7 51 1 Kings 8 66 1 Kings 9 28 1 Kings 10 29 1 Kings 11 43 1 Kings 12 33 1 Kings 13 34 1 Kings 14 31 1 Kings 15 34 1 Kings 16 34 1 Kings 17 24 1 Kings 18 46 1 Kings 19 21 1 Kings 20 43 1 Kings 21 29 1 Kings 22 53 2 Kings 1 18 2 Kings 2 25 2 Kings 3 27 2 Kings 4 44 2 Kings 5 27 2 Kings 6 33 2 Kings 7 20 2 Kings 8 29 2 Kings 9 37 2 Kings 10 36 2 Kings 11 21 2 Kings 12 21 2 Kings 13 25 2 Kings 14 29 2 Kings 15 38 2 Kings 16 20 2 Kings 17 41 2 Kings 18 37 2 Kings 19 37 2 Kings 20 21 2 Kings 21 26 2 Kings 22 20 2 Kings 23 37 2 Kings 24 20 2 Kings 25 30 1 Chronicles 1 54 1 Chronicles 2 55 1 Chronicles 3 24 1 Chronicles 4 43 1 Chronicles 5 26 1 Chronicles 6 81 1 Chronicles 7 40 1 Chronicles 8 40 1 Chronicles 9 44 1 Chronicles 10 14 1 Chronicles 11 47 1 Chronicles 12 40 1 Chronicles 13 14 1 Chronicles 14 17 1 Chronicles 15 29 1 Chronicles 16 43 1 Chronicles 17 27 1 Chronicles 18 17 1 Chronicles 19 19 1 Chronicles 20 8 1 Chronicles 21 30 1 Chronicles 22 19 1 Chronicles 23 32 1 Chronicles 24 31 1 Chronicles 25 31 1 Chronicles 26 32 1 Chronicles 27 34 1 Chronicles 28 21 1 Chronicles 29 30 2 Chronicles 1 17 2 Chronicles 2 18 2 Chronicles 3 17 2 Chronicles 4 22 2 Chronicles 5 14 2 Chronicles 6 42 2 Chronicles 7 22 2 Chronicles 8 18 2 Chronicles 9 31 2 Chronicles 10 19 2 Chronicles 11 23 2 Chronicles 12 16 2 Chronicles 13 22 2 Chronicles 14 15 2 Chronicles 15 19 2 Chronicles 16 14 2 Chronicles 17 19 2 Chronicles 18 34 2 Chronicles 19 11 2 Chronicles 20 37 2 Chronicles 21 20 2 Chronicles 22 12 2 Chronicles 23 21 2 Chronicles 24 27 2 Chronicles 25 28 2 Chronicles 26 23 2 Chronicles 27 9 2 Chronicles 28 27 2 Chronicles 29 36 2 Chronicles 30 27 2 Chronicles 31 21 2 Chronicles 32 33 2 Chronicles 33 25 2 Chronicles 34 33 2 Chronicles 35 27 2 Chronicles 36 23 2 Chronicles 37 12 Ezra 1 11 Ezra 2 70 Ezra 3 13 Ezra 4 24 Ezra 5 17 Ezra 6 22 Ezra 7 28 Ezra 8 36 Ezra 9 15 Ezra 10 44 Nehemiah 1 11 Nehemiah 2 20 Nehemiah 3 32 Nehemiah 4 23 Nehemiah 5 19 Nehemiah 6 19 Nehemiah 7 73 Nehemiah 8 18 Nehemiah 9 38 Nehemiah 10 39 Nehemiah 11 36 Nehemiah 12 47 Nehemiah 13 31 Esther 1 22 Esther 2 23 Esther 3 15 Esther 4 17 Esther 5 14 Esther 6 14 Esther 7 10 Esther 8 17 Esther 9 32 Esther 10 3 Job 1 22 Job 2 13 Job 3 26 Job 4 21 Job 5 27 Job 6 30 Job 7 21 Job 8 22 Job 9 35 Job 10 22 Job 11 20 Job 12 25 Job 13 28 Job 14 22 Job 15 35 Job 16 22 Job 17 16 Job 18 21 Job 19 29 Job 20 29 Job 21 34 Job 22 30 Job 23 17 Job 24 25 Job 25 6 Job 26 14 Job 27 23 Job 28 28 Job 29 25 Job 30 31 Job 31 40 Job 32 22 Job 33 33 Job 34 37 Job 35 16 Job 36 33 Job 37 24 Job 38 41 Job 39 35 Job 40 27 Job 41 26 Job 42 17 Psalms 1 6 Psalms 2 12 Psalms 3 9 Psalms 4 9 Psalms 5 13 Psalms 6 11 Psalms 7 18 Psalms 8 10 Psalms 9 39 Psalms 10 7 Psalms 11 9 Psalms 12 6 Psalms 13 7 Psalms 14 5 Psalms 15 11 Psalms 16 15 Psalms 17 51 Psalms 18 15 Psalms 19 10 Psalms 20 14 Psalms 21 32 Psalms 22 6 Psalms 23 10 Psalms 24 22 Psalms 25 12 Psalms 26 14 Psalms 27 9 Psalms 28 11 Psalms 29 13 Psalms 30 25 Psalms 31 11 Psalms 32 22 Psalms 33 23 Psalms 34 28 Psalms 35 13 Psalms 36 40 Psalms 37 23 Psalms 38 14 Psalms 39 18 Psalms 40 14 Psalms 41 12 Psalms 42 5 Psalms 43 27 Psalms 44 18 Psalms 45 12 Psalms 46 10 Psalms 47 15 Psalms 48 21 Psalms 49 23 Psalms 50 21 Psalms 51 11 Psalms 52 7 Psalms 53 9 Psalms 54 24 Psalms 55 14 Psalms 56 12 Psalms 57 12 Psalms 58 18 Psalms 59 14 Psalms 60 9 Psalms 61 13 Psalms 62 12 Psalms 63 11 Psalms 64 14 Psalms 65 20 Psalms 66 8 Psalms 67 36 Psalms 68 37 Psalms 69 6 Psalms 70 24 Psalms 71 20 Psalms 72 28 Psalms 73 23 Psalms 74 11 Psalms 75 13 Psalms 76 21 Psalms 77 72 Psalms 78 13 Psalms 79 20 Psalms 80 17 Psalms 81 8 Psalms 82 19 Psalms 83 13 Psalms 84 14 Psalms 85 17 Psalms 86 7 Psalms 87 19 Psalms 88 53 Psalms 89 17 Psalms 90 16 Psalms 91 16 Psalms 92 5 Psalms 93 23 Psalms 94 11 Psalms 95 13 Psalms 96 12 Psalms 97 9 Psalms 98 9 Psalms 99 5 Psalms 100 8 Psalms 101 29 Psalms 102 22 Psalms 103 35 Psalms 104 45 Psalms 105 48 Psalms 106 43 Psalms 107 14 Psalms 108 31 Psalms 109 7 Psalms 110 10 Psalms 111 10 Psalms 112 9 Psalms 113 26 Psalms 114 8 Psalms 115 10 Psalms 116 2 Psalms 117 29 Psalms 118 176 Psalms 119 7 Psalms 120 8 Psalms 121 9 Psalms 122 4 Psalms 123 8 Psalms 124 5 Psalms 125 6 Psalms 126 5 Psalms 127 6 Psalms 128 8 Psalms 129 8 Psalms 130 3 Psalms 131 18 Psalms 132 3 Psalms 133 3 Psalms 134 21 Psalms 135 26 Psalms 136 9 Psalms 137 8 Psalms 138 24 Psalms 139 14 Psalms 140 10 Psalms 141 7 Psalms 142 12 Psalms 143 15 Psalms 144 21 Psalms 145 10 Psalms 146 11 Psalms 147 9 Psalms 148 14 Psalms 149 9 Psalms 150 6 Psalms 151 7 Proverbs 1 33 Proverbs 2 22 Proverbs 3 35 Proverbs 4 29 Proverbs 5 23 Proverbs 6 35 Proverbs 7 27 Proverbs 8 36 Proverbs 9 18 Proverbs 10 32 Proverbs 11 31 Proverbs 12 28 Proverbs 13 26 Proverbs 14 35 Proverbs 15 33 Proverbs 16 33 Proverbs 17 28 Proverbs 18 25 Proverbs 19 29 Proverbs 20 30 Proverbs 21 31 Proverbs 22 29 Proverbs 23 35 Proverbs 24 34 Proverbs 25 28 Proverbs 26 28 Proverbs 27 27 Proverbs 28 28 Proverbs 29 27 Proverbs 30 33 Proverbs 31 31 Ecclesiastes 1 18 Ecclesiastes 2 26 Ecclesiastes 3 22 Ecclesiastes 4 17 Ecclesiastes 5 19 Ecclesiastes 6 12 Ecclesiastes 7 29 Ecclesiastes 8 17 Ecclesiastes 9 18 Ecclesiastes 10 20 Ecclesiastes 11 10 Ecclesiastes 12 14 Song of Solomon 1 16 Song of Solomon 2 17 Song of Solomon 3 11 Song of Solomon 4 16 Song of Solomon 5 16 Song of Solomon 6 12 Song of Solomon 7 14 Song of Solomon 8 14 Isaiah 1 31 Isaiah 2 22 Isaiah 3 25 Isaiah 4 6 Isaiah 5 30 Isaiah 6 13 Isaiah 7 25 Isaiah 8 22 Isaiah 9 21 Isaiah 10 34 Isaiah 11 16 Isaiah 12 6 Isaiah 13 22 Isaiah 14 32 Isaiah 15 9 Isaiah 16 14 Isaiah 17 14 Isaiah 18 7 Isaiah 19 25 Isaiah 20 6 Isaiah 21 17 Isaiah 22 25 Isaiah 23 18 Isaiah 24 23 Isaiah 25 12 Isaiah 26 21 Isaiah 27 13 Isaiah 28 29 Isaiah 29 24 Isaiah 30 33 Isaiah 31 9 Isaiah 32 20 Isaiah 33 24 Isaiah 34 17 Isaiah 35 10 Isaiah 36 22 Isaiah 37 38 Isaiah 38 22 Isaiah 39 8 Isaiah 40 31 Isaiah 41 29 Isaiah 42 25 Isaiah 43 28 Isaiah 44 28 Isaiah 45 25 Isaiah 46 13 Isaiah 47 15 Isaiah 48 22 Isaiah 49 26 Isaiah 50 11 Isaiah 51 23 Isaiah 52 15 Isaiah 53 12 Isaiah 54 17 Isaiah 55 13 Isaiah 56 12 Isaiah 57 21 Isaiah 58 14 Isaiah 59 21 Isaiah 60 22 Isaiah 61 11 Isaiah 62 12 Isaiah 63 19 Isaiah 64 12 Isaiah 65 25 Isaiah 66 24 Jeremiah 1 19 Jeremiah 2 37 Jeremiah 3 25 Jeremiah 4 31 Jeremiah 5 31 Jeremiah 6 30 Jeremiah 7 34 Jeremiah 8 22 Jeremiah 9 26 Jeremiah 10 25 Jeremiah 11 23 Jeremiah 12 17 Jeremiah 13 27 Jeremiah 14 22 Jeremiah 15 21 Jeremiah 16 21 Jeremiah 17 27 Jeremiah 18 23 Jeremiah 19 15 Jeremiah 20 18 Jeremiah 21 14 Jeremiah 22 30 Jeremiah 23 40 Jeremiah 24 10 Jeremiah 25 38 Jeremiah 26 24 Jeremiah 27 22 Jeremiah 28 17 Jeremiah 29 32 Jeremiah 30 24 Jeremiah 31 40 Jeremiah 32 44 Jeremiah 33 26 Jeremiah 34 22 Jeremiah 35 19 Jeremiah 36 32 Jeremiah 37 21 Jeremiah 38 28 Jeremiah 39 18 Jeremiah 40 16 Jeremiah 41 18 Jeremiah 42 22 Jeremiah 43 13 Jeremiah 44 30 Jeremiah 45 5 Jeremiah 46 28 Jeremiah 47 7 Jeremiah 48 47 Jeremiah 49 39 Jeremiah 50 46 Jeremiah 51 64 Jeremiah 52 34 Lamentations 1 22 Lamentations 2 22 Lamentations 3 66 Lamentations 4 22 Lamentations 5 22 Ezekiel 1 28 Ezekiel 2 10 Ezekiel 3 27 Ezekiel 4 17 Ezekiel 5 17 Ezekiel 6 14 Ezekiel 7 27 Ezekiel 8 18 Ezekiel 9 11 Ezekiel 10 22 Ezekiel 11 25 Ezekiel 12 28 Ezekiel 13 23 Ezekiel 14 23 Ezekiel 15 8 Ezekiel 16 63 Ezekiel 17 24 Ezekiel 18 32 Ezekiel 19 14 Ezekiel 20 49 Ezekiel 21 32 Ezekiel 22 31 Ezekiel 23 49 Ezekiel 24 27 Ezekiel 25 17 Ezekiel 26 21 Ezekiel 27 36 Ezekiel 28 26 Ezekiel 29 21 Ezekiel 30 26 Ezekiel 31 18 Ezekiel 32 32 Ezekiel 33 33 Ezekiel 34 31 Ezekiel 35 15 Ezekiel 36 38 Ezekiel 37 28 Ezekiel 38 23 Ezekiel 39 29 Ezekiel 40 49 Ezekiel 41 26 Ezekiel 42 20 Ezekiel 43 27 Ezekiel 44 31 Ezekiel 45 25 Ezekiel 46 24 Ezekiel 47 23 Ezekiel 48 35 Daniel 1 21 Daniel 2 49 Daniel 3 100 Daniel 4 34 Daniel 5 31 Daniel 6 28 Daniel 7 28 Daniel 8 27 Daniel 9 27 Daniel 10 21 Daniel 11 45 Daniel 12 13 Daniel 13 64 Daniel 14 42 Hosea 1 11 Hosea 2 23 Hosea 3 5 Hosea 4 19 Hosea 5 15 Hosea 6 11 Hosea 7 16 Hosea 8 14 Hosea 9 17 Hosea 10 15 Hosea 11 12 Hosea 12 14 Hosea 13 15 Hosea 14 10 Joel 1 20 Joel 2 32 Joel 3 21 Amos 1 15 Amos 2 16 Amos 3 15 Amos 4 13 Amos 5 27 Amos 6 14 Amos 7 17 Amos 8 14 Amos 9 15 Obadiah 1 21 Jonah 1 16 Jonah 2 11 Jonah 3 10 Jonah 4 11 Micah 1 16 Micah 2 13 Micah 3 12 Micah 4 13 Micah 5 15 Micah 6 16 Micah 7 20 Nahum 1 15 Nahum 2 13 Nahum 3 19 Habakkuk 1 17 Habakkuk 2 20 Habakkuk 3 19 Zephaniah 1 18 Zephaniah 2 15 Zephaniah 3 20 Haggai 1 15 Haggai 2 23 Zechariah 1 21 Zechariah 2 13 Zechariah 3 10 Zechariah 4 14 Zechariah 5 11 Zechariah 6 15 Zechariah 7 14 Zechariah 8 23 Zechariah 9 17 Zechariah 10 12 Zechariah 11 17 Zechariah 12 14 Zechariah 13 9 Zechariah 14 21 Malachi 1 14 Malachi 2 17 Malachi 3 18 Malachi 4 6 Matthew 1 25 Matthew 2 23 Matthew 3 17 Matthew 4 25 Matthew 5 48 Matthew 6 34 Matthew 7 29 Matthew 8 34 Matthew 9 38 Matthew 10 42 Matthew 11 30 Matthew 12 50 Matthew 13 58 Matthew 14 36 Matthew 15 39 Matthew 16 28 Matthew 17 27 Matthew 18 35 Matthew 19 30 Matthew 20 34 Matthew 21 46 Matthew 22 46 Matthew 23 39 Matthew 24 51 Matthew 25 46 Matthew 26 75 Matthew 27 66 Matthew 28 20 Mark 1 45 Mark 2 28 Mark 3 35 Mark 4 41 Mark 5 43 Mark 6 56 Mark 7 37 Mark 8 38 Mark 9 50 Mark 10 52 Mark 11 33 Mark 12 44 Mark 13 37 Mark 14 72 Mark 15 47 Mark 16 20 Luke 1 80 Luke 2 52 Luke 3 38 Luke 4 44 Luke 5 39 Luke 6 49 Luke 7 50 Luke 8 56 Luke 9 62 Luke 10 42 Luke 11 54 Luke 12 59 Luke 13 35 Luke 14 35 Luke 15 32 Luke 16 31 Luke 17 37 Luke 18 43 Luke 19 48 Luke 20 47 Luke 21 38 Luke 22 71 Luke 23 56 Luke 24 53 John 1 51 John 2 25 John 3 36 John 4 54 John 5 47 John 6 71 John 7 53 John 8 59 John 9 41 John 10 42 John 11 57 John 12 50 John 13 38 John 14 31 John 15 27 John 16 33 John 17 26 John 18 40 John 19 42 John 20 31 John 21 25 Acts 1 26 Acts 2 47 Acts 3 26 Acts 4 37 Acts 5 42 Acts 6 15 Acts 7 60 Acts 8 40 Acts 9 43 Acts 10 48 Acts 11 30 Acts 12 25 Acts 13 52 Acts 14 28 Acts 15 41 Acts 16 40 Acts 17 34 Acts 18 28 Acts 19 40 Acts 20 38 Acts 21 40 Acts 22 30 Acts 23 35 Acts 24 27 Acts 25 27 Acts 26 32 Acts 27 44 Acts 28 31 Romans 1 32 Romans 2 29 Romans 3 31 Romans 4 25 Romans 5 21 Romans 6 23 Romans 7 25 Romans 8 39 Romans 9 33 Romans 10 21 Romans 11 36 Romans 12 21 Romans 13 14 Romans 14 26 Romans 15 33 Romans 16 24 1 Corinthians 1 31 1 Corinthians 2 16 1 Corinthians 3 23 1 Corinthians 4 21 1 Corinthians 5 13 1 Corinthians 6 20 1 Corinthians 7 40 1 Corinthians 8 13 1 Corinthians 9 27 1 Corinthians 10 33 1 Corinthians 11 34 1 Corinthians 12 31 1 Corinthians 13 13 1 Corinthians 14 40 1 Corinthians 15 58 1 Corinthians 16 24 2 Corinthians 1 24 2 Corinthians 2 17 2 Corinthians 3 18 2 Corinthians 4 18 2 Corinthians 5 21 2 Corinthians 6 18 2 Corinthians 7 16 2 Corinthians 8 24 2 Corinthians 9 15 2 Corinthians 10 18 2 Corinthians 11 32 2 Corinthians 12 21 2 Corinthians 13 13 Galatians 1 24 Galatians 2 21 Galatians 3 29 Galatians 4 31 Galatians 5 26 Galatians 6 18 Ephesians 1 23 Ephesians 2 22 Ephesians 3 21 Ephesians 4 32 Ephesians 5 33 Ephesians 6 24 Philippians 1 30 Philippians 2 30 Philippians 3 21 Philippians 4 23 Colossians 1 29 Colossians 2 23 Colossians 3 25 Colossians 4 18 1 Thessalonians 1 10 1 Thessalonians 2 20 1 Thessalonians 3 13 1 Thessalonians 4 18 1 Thessalonians 5 28 2 Thessalonians 1 12 2 Thessalonians 2 17 2 Thessalonians 3 18 1 Timothy 1 20 1 Timothy 2 15 1 Timothy 3 16 1 Timothy 4 16 1 Timothy 5 25 1 Timothy 6 21 2 Timothy 1 18 2 Timothy 2 26 2 Timothy 3 17 2 Timothy 4 22 Titus 1 16 Titus 2 15 Titus 3 15 Philemon 1 25 Hebrews 1 14 Hebrews 2 18 Hebrews 3 19 Hebrews 4 16 Hebrews 5 14 Hebrews 6 20 Hebrews 7 28 Hebrews 8 13 Hebrews 9 28 Hebrews 10 39 Hebrews 11 40 Hebrews 12 29 Hebrews 13 25 James 1 27 James 2 26 James 3 18 James 4 17 James 5 20 1 Peter 1 25 1 Peter 2 25 1 Peter 3 22 1 Peter 4 19 1 Peter 5 14 2 Peter 1 21 2 Peter 2 22 2 Peter 3 18 1 John 1 10 1 John 2 29 1 John 3 24 1 John 4 21 1 John 5 21 2 John 1 13 3 John 1 15 Jude 1 25 Revelation 1 20 Revelation 2 29 Revelation 3 22 Revelation 4 11 Revelation 5 14 Revelation 6 17 Revelation 7 17 Revelation 8 13 Revelation 9 21 Revelation 10 11 Revelation 11 19 Revelation 12 17 Revelation 13 18 Revelation 14 20 Revelation 15 8 Revelation 16 21 Revelation 17 18 Revelation 18 24 Revelation 19 21 Revelation 20 15 Revelation 21 27 Revelation 22 21 bibledit-gtk-4.9/templates/versification_russian_protestant.xml000664 000766 000024 00000307461 12221507125 025501 0ustar00teusstaff000000 000000 Genesis 1 31 Genesis 2 25 Genesis 3 24 Genesis 4 26 Genesis 5 32 Genesis 6 22 Genesis 7 24 Genesis 8 22 Genesis 9 29 Genesis 10 32 Genesis 11 32 Genesis 12 20 Genesis 13 18 Genesis 14 24 Genesis 15 21 Genesis 16 16 Genesis 17 27 Genesis 18 33 Genesis 19 38 Genesis 20 18 Genesis 21 34 Genesis 22 24 Genesis 23 20 Genesis 24 67 Genesis 25 34 Genesis 26 35 Genesis 27 46 Genesis 28 22 Genesis 29 35 Genesis 30 43 Genesis 31 55 Genesis 32 32 Genesis 33 20 Genesis 34 31 Genesis 35 29 Genesis 36 43 Genesis 37 36 Genesis 38 30 Genesis 39 23 Genesis 40 23 Genesis 41 57 Genesis 42 38 Genesis 43 34 Genesis 44 34 Genesis 45 28 Genesis 46 34 Genesis 47 31 Genesis 48 22 Genesis 49 33 Genesis 50 26 Exodus 1 22 Exodus 2 25 Exodus 3 22 Exodus 4 31 Exodus 5 23 Exodus 6 30 Exodus 7 25 Exodus 8 32 Exodus 9 35 Exodus 10 29 Exodus 11 10 Exodus 12 51 Exodus 13 22 Exodus 14 31 Exodus 15 27 Exodus 16 36 Exodus 17 16 Exodus 18 27 Exodus 19 25 Exodus 20 26 Exodus 21 36 Exodus 22 31 Exodus 23 33 Exodus 24 18 Exodus 25 40 Exodus 26 37 Exodus 27 21 Exodus 28 43 Exodus 29 46 Exodus 30 38 Exodus 31 18 Exodus 32 35 Exodus 33 23 Exodus 34 35 Exodus 35 35 Exodus 36 38 Exodus 37 29 Exodus 38 31 Exodus 39 43 Exodus 40 38 Leviticus 1 17 Leviticus 2 16 Leviticus 3 17 Leviticus 4 35 Leviticus 5 19 Leviticus 6 30 Leviticus 7 38 Leviticus 8 36 Leviticus 9 24 Leviticus 10 20 Leviticus 11 47 Leviticus 12 8 Leviticus 13 59 Leviticus 14 56 Leviticus 15 33 Leviticus 16 34 Leviticus 17 16 Leviticus 18 30 Leviticus 19 37 Leviticus 20 27 Leviticus 21 24 Leviticus 22 33 Leviticus 23 44 Leviticus 24 23 Leviticus 25 55 Leviticus 26 46 Leviticus 27 34 Numbers 1 54 Numbers 2 34 Numbers 3 51 Numbers 4 49 Numbers 5 31 Numbers 6 27 Numbers 7 89 Numbers 8 26 Numbers 9 23 Numbers 10 36 Numbers 11 35 Numbers 12 15 Numbers 13 34 Numbers 14 45 Numbers 15 41 Numbers 16 50 Numbers 17 13 Numbers 18 32 Numbers 19 22 Numbers 20 29 Numbers 21 35 Numbers 22 41 Numbers 23 30 Numbers 24 25 Numbers 25 18 Numbers 26 65 Numbers 27 23 Numbers 28 31 Numbers 29 39 Numbers 30 17 Numbers 31 54 Numbers 32 42 Numbers 33 56 Numbers 34 29 Numbers 35 34 Numbers 36 13 Deuteronomy 1 46 Deuteronomy 2 37 Deuteronomy 3 29 Deuteronomy 4 49 Deuteronomy 5 33 Deuteronomy 6 25 Deuteronomy 7 26 Deuteronomy 8 20 Deuteronomy 9 29 Deuteronomy 10 22 Deuteronomy 11 32 Deuteronomy 12 32 Deuteronomy 13 18 Deuteronomy 14 29 Deuteronomy 15 23 Deuteronomy 16 22 Deuteronomy 17 20 Deuteronomy 18 22 Deuteronomy 19 21 Deuteronomy 20 20 Deuteronomy 21 23 Deuteronomy 22 30 Deuteronomy 23 25 Deuteronomy 24 22 Deuteronomy 25 19 Deuteronomy 26 19 Deuteronomy 27 26 Deuteronomy 28 68 Deuteronomy 29 29 Deuteronomy 30 20 Deuteronomy 31 30 Deuteronomy 32 52 Deuteronomy 33 29 Deuteronomy 34 12 Joshua 1 18 Joshua 2 24 Joshua 3 17 Joshua 4 24 Joshua 5 16 Joshua 6 26 Joshua 7 26 Joshua 8 35 Joshua 9 27 Joshua 10 43 Joshua 11 23 Joshua 12 24 Joshua 13 33 Joshua 14 15 Joshua 15 63 Joshua 16 10 Joshua 17 18 Joshua 18 28 Joshua 19 51 Joshua 20 9 Joshua 21 45 Joshua 22 34 Joshua 23 16 Joshua 24 33 Judges 1 36 Judges 2 23 Judges 3 31 Judges 4 24 Judges 5 31 Judges 6 40 Judges 7 25 Judges 8 35 Judges 9 57 Judges 10 18 Judges 11 40 Judges 12 15 Judges 13 25 Judges 14 20 Judges 15 20 Judges 16 31 Judges 17 13 Judges 18 31 Judges 19 30 Judges 20 48 Judges 21 25 Ruth 1 22 Ruth 2 23 Ruth 3 18 Ruth 4 22 1 Samuel 1 28 1 Samuel 2 36 1 Samuel 3 21 1 Samuel 4 22 1 Samuel 5 12 1 Samuel 6 21 1 Samuel 7 17 1 Samuel 8 22 1 Samuel 9 27 1 Samuel 10 27 1 Samuel 11 15 1 Samuel 12 25 1 Samuel 13 23 1 Samuel 14 52 1 Samuel 15 35 1 Samuel 16 23 1 Samuel 17 58 1 Samuel 18 30 1 Samuel 19 24 1 Samuel 20 43 1 Samuel 21 15 1 Samuel 22 23 1 Samuel 23 28 1 Samuel 24 23 1 Samuel 25 44 1 Samuel 26 25 1 Samuel 27 12 1 Samuel 28 25 1 Samuel 29 11 1 Samuel 30 31 1 Samuel 31 13 2 Samuel 1 27 2 Samuel 2 32 2 Samuel 3 39 2 Samuel 4 12 2 Samuel 5 25 2 Samuel 6 23 2 Samuel 7 29 2 Samuel 8 18 2 Samuel 9 13 2 Samuel 10 19 2 Samuel 11 27 2 Samuel 12 31 2 Samuel 13 39 2 Samuel 14 33 2 Samuel 15 37 2 Samuel 16 23 2 Samuel 17 29 2 Samuel 18 33 2 Samuel 19 43 2 Samuel 20 26 2 Samuel 21 22 2 Samuel 22 51 2 Samuel 23 39 2 Samuel 24 25 1 Kings 1 53 1 Kings 2 46 1 Kings 3 28 1 Kings 4 34 1 Kings 5 18 1 Kings 6 38 1 Kings 7 51 1 Kings 8 66 1 Kings 9 28 1 Kings 10 29 1 Kings 11 43 1 Kings 12 33 1 Kings 13 34 1 Kings 14 31 1 Kings 15 34 1 Kings 16 34 1 Kings 17 24 1 Kings 18 46 1 Kings 19 21 1 Kings 20 43 1 Kings 21 29 1 Kings 22 53 2 Kings 1 18 2 Kings 2 25 2 Kings 3 27 2 Kings 4 44 2 Kings 5 27 2 Kings 6 33 2 Kings 7 20 2 Kings 8 29 2 Kings 9 37 2 Kings 10 36 2 Kings 11 21 2 Kings 12 21 2 Kings 13 25 2 Kings 14 29 2 Kings 15 38 2 Kings 16 20 2 Kings 17 41 2 Kings 18 37 2 Kings 19 37 2 Kings 20 21 2 Kings 21 26 2 Kings 22 20 2 Kings 23 37 2 Kings 24 20 2 Kings 25 30 1 Chronicles 1 54 1 Chronicles 2 55 1 Chronicles 3 24 1 Chronicles 4 43 1 Chronicles 5 26 1 Chronicles 6 81 1 Chronicles 7 40 1 Chronicles 8 40 1 Chronicles 9 44 1 Chronicles 10 14 1 Chronicles 11 47 1 Chronicles 12 40 1 Chronicles 13 14 1 Chronicles 14 17 1 Chronicles 15 29 1 Chronicles 16 43 1 Chronicles 17 27 1 Chronicles 18 17 1 Chronicles 19 19 1 Chronicles 20 8 1 Chronicles 21 30 1 Chronicles 22 19 1 Chronicles 23 32 1 Chronicles 24 31 1 Chronicles 25 31 1 Chronicles 26 32 1 Chronicles 27 34 1 Chronicles 28 21 1 Chronicles 29 30 2 Chronicles 1 17 2 Chronicles 2 18 2 Chronicles 3 17 2 Chronicles 4 22 2 Chronicles 5 14 2 Chronicles 6 42 2 Chronicles 7 22 2 Chronicles 8 18 2 Chronicles 9 31 2 Chronicles 10 19 2 Chronicles 11 23 2 Chronicles 12 16 2 Chronicles 13 22 2 Chronicles 14 15 2 Chronicles 15 19 2 Chronicles 16 14 2 Chronicles 17 19 2 Chronicles 18 34 2 Chronicles 19 11 2 Chronicles 20 37 2 Chronicles 21 20 2 Chronicles 22 12 2 Chronicles 23 21 2 Chronicles 24 27 2 Chronicles 25 28 2 Chronicles 26 23 2 Chronicles 27 9 2 Chronicles 28 27 2 Chronicles 29 36 2 Chronicles 30 27 2 Chronicles 31 21 2 Chronicles 32 33 2 Chronicles 33 25 2 Chronicles 34 33 2 Chronicles 35 27 2 Chronicles 36 23 Ezra 1 11 Ezra 2 70 Ezra 3 13 Ezra 4 24 Ezra 5 17 Ezra 6 22 Ezra 7 28 Ezra 8 36 Ezra 9 15 Ezra 10 44 Nehemiah 1 11 Nehemiah 2 20 Nehemiah 3 32 Nehemiah 4 23 Nehemiah 5 19 Nehemiah 6 19 Nehemiah 7 73 Nehemiah 8 18 Nehemiah 9 38 Nehemiah 10 39 Nehemiah 11 36 Nehemiah 12 47 Nehemiah 13 31 Esther 1 22 Esther 2 23 Esther 3 15 Esther 4 17 Esther 5 14 Esther 6 14 Esther 7 10 Esther 8 17 Esther 9 32 Esther 10 3 Job 1 22 Job 2 13 Job 3 26 Job 4 21 Job 5 27 Job 6 30 Job 7 21 Job 8 22 Job 9 35 Job 10 22 Job 11 20 Job 12 25 Job 13 28 Job 14 22 Job 15 35 Job 16 22 Job 17 16 Job 18 21 Job 19 29 Job 20 29 Job 21 34 Job 22 30 Job 23 17 Job 24 25 Job 25 6 Job 26 14 Job 27 23 Job 28 28 Job 29 25 Job 30 31 Job 31 40 Job 32 22 Job 33 33 Job 34 37 Job 35 16 Job 36 33 Job 37 24 Job 38 41 Job 39 35 Job 40 27 Job 41 26 Job 42 17 Psalms 1 6 Psalms 2 12 Psalms 3 9 Psalms 4 9 Psalms 5 13 Psalms 6 11 Psalms 7 18 Psalms 8 10 Psalms 9 39 Psalms 10 7 Psalms 11 9 Psalms 12 6 Psalms 13 7 Psalms 14 5 Psalms 15 11 Psalms 16 15 Psalms 17 51 Psalms 18 15 Psalms 19 10 Psalms 20 14 Psalms 21 32 Psalms 22 6 Psalms 23 10 Psalms 24 22 Psalms 25 12 Psalms 26 14 Psalms 27 9 Psalms 28 11 Psalms 29 13 Psalms 30 25 Psalms 31 11 Psalms 32 22 Psalms 33 23 Psalms 34 28 Psalms 35 13 Psalms 36 40 Psalms 37 23 Psalms 38 14 Psalms 39 18 Psalms 40 14 Psalms 41 12 Psalms 42 5 Psalms 43 27 Psalms 44 18 Psalms 45 12 Psalms 46 10 Psalms 47 15 Psalms 48 21 Psalms 49 23 Psalms 50 21 Psalms 51 11 Psalms 52 7 Psalms 53 9 Psalms 54 24 Psalms 55 14 Psalms 56 12 Psalms 57 12 Psalms 58 18 Psalms 59 14 Psalms 60 9 Psalms 61 13 Psalms 62 12 Psalms 63 11 Psalms 64 14 Psalms 65 20 Psalms 66 8 Psalms 67 36 Psalms 68 37 Psalms 69 6 Psalms 70 24 Psalms 71 20 Psalms 72 28 Psalms 73 23 Psalms 74 11 Psalms 75 13 Psalms 76 21 Psalms 77 72 Psalms 78 13 Psalms 79 20 Psalms 80 17 Psalms 81 8 Psalms 82 19 Psalms 83 13 Psalms 84 14 Psalms 85 17 Psalms 86 7 Psalms 87 19 Psalms 88 53 Psalms 89 17 Psalms 90 16 Psalms 91 16 Psalms 92 5 Psalms 93 23 Psalms 94 11 Psalms 95 13 Psalms 96 12 Psalms 97 9 Psalms 98 9 Psalms 99 5 Psalms 100 8 Psalms 101 29 Psalms 102 22 Psalms 103 35 Psalms 104 45 Psalms 105 48 Psalms 106 43 Psalms 107 14 Psalms 108 31 Psalms 109 7 Psalms 110 10 Psalms 111 10 Psalms 112 9 Psalms 113 26 Psalms 114 9 Psalms 115 10 Psalms 116 2 Psalms 117 29 Psalms 118 176 Psalms 119 7 Psalms 120 8 Psalms 121 9 Psalms 122 4 Psalms 123 8 Psalms 124 5 Psalms 125 6 Psalms 126 5 Psalms 127 6 Psalms 128 8 Psalms 129 8 Psalms 130 3 Psalms 131 18 Psalms 132 3 Psalms 133 3 Psalms 134 21 Psalms 135 26 Psalms 136 9 Psalms 137 8 Psalms 138 24 Psalms 139 14 Psalms 140 10 Psalms 141 7 Psalms 142 12 Psalms 143 15 Psalms 144 21 Psalms 145 10 Psalms 146 11 Psalms 147 9 Psalms 148 14 Psalms 149 9 Psalms 150 6 Proverbs 1 33 Proverbs 2 22 Proverbs 3 35 Proverbs 4 27 Proverbs 5 23 Proverbs 6 35 Proverbs 7 27 Proverbs 8 36 Proverbs 9 18 Proverbs 10 32 Proverbs 11 31 Proverbs 12 28 Proverbs 13 25 Proverbs 14 35 Proverbs 15 33 Proverbs 16 33 Proverbs 17 28 Proverbs 18 24 Proverbs 19 29 Proverbs 20 30 Proverbs 21 31 Proverbs 22 29 Proverbs 23 35 Proverbs 24 34 Proverbs 25 28 Proverbs 26 28 Proverbs 27 27 Proverbs 28 28 Proverbs 29 27 Proverbs 30 33 Proverbs 31 31 Ecclesiastes 1 18 Ecclesiastes 2 26 Ecclesiastes 3 22 Ecclesiastes 4 17 Ecclesiastes 5 19 Ecclesiastes 6 12 Ecclesiastes 7 29 Ecclesiastes 8 17 Ecclesiastes 9 18 Ecclesiastes 10 20 Ecclesiastes 11 10 Ecclesiastes 12 14 Song of Solomon 1 16 Song of Solomon 2 17 Song of Solomon 3 11 Song of Solomon 4 16 Song of Solomon 5 16 Song of Solomon 6 12 Song of Solomon 7 14 Song of Solomon 8 14 Isaiah 1 31 Isaiah 2 22 Isaiah 3 25 Isaiah 4 6 Isaiah 5 30 Isaiah 6 13 Isaiah 7 25 Isaiah 8 22 Isaiah 9 21 Isaiah 10 34 Isaiah 11 16 Isaiah 12 6 Isaiah 13 22 Isaiah 14 32 Isaiah 15 9 Isaiah 16 14 Isaiah 17 14 Isaiah 18 7 Isaiah 19 25 Isaiah 20 6 Isaiah 21 17 Isaiah 22 25 Isaiah 23 18 Isaiah 24 23 Isaiah 25 12 Isaiah 26 21 Isaiah 27 13 Isaiah 28 29 Isaiah 29 24 Isaiah 30 33 Isaiah 31 9 Isaiah 32 20 Isaiah 33 24 Isaiah 34 17 Isaiah 35 10 Isaiah 36 22 Isaiah 37 38 Isaiah 38 22 Isaiah 39 8 Isaiah 40 31 Isaiah 41 29 Isaiah 42 25 Isaiah 43 28 Isaiah 44 28 Isaiah 45 25 Isaiah 46 13 Isaiah 47 15 Isaiah 48 22 Isaiah 49 26 Isaiah 50 11 Isaiah 51 23 Isaiah 52 15 Isaiah 53 12 Isaiah 54 17 Isaiah 55 13 Isaiah 56 12 Isaiah 57 21 Isaiah 58 14 Isaiah 59 21 Isaiah 60 22 Isaiah 61 11 Isaiah 62 12 Isaiah 63 19 Isaiah 64 12 Isaiah 65 25 Isaiah 66 24 Jeremiah 1 19 Jeremiah 2 37 Jeremiah 3 25 Jeremiah 4 31 Jeremiah 5 31 Jeremiah 6 30 Jeremiah 7 34 Jeremiah 8 22 Jeremiah 9 26 Jeremiah 10 25 Jeremiah 11 23 Jeremiah 12 17 Jeremiah 13 27 Jeremiah 14 22 Jeremiah 15 21 Jeremiah 16 21 Jeremiah 17 27 Jeremiah 18 23 Jeremiah 19 15 Jeremiah 20 18 Jeremiah 21 14 Jeremiah 22 30 Jeremiah 23 40 Jeremiah 24 10 Jeremiah 25 38 Jeremiah 26 24 Jeremiah 27 22 Jeremiah 28 17 Jeremiah 29 32 Jeremiah 30 24 Jeremiah 31 40 Jeremiah 32 44 Jeremiah 33 26 Jeremiah 34 22 Jeremiah 35 19 Jeremiah 36 32 Jeremiah 37 21 Jeremiah 38 28 Jeremiah 39 18 Jeremiah 40 16 Jeremiah 41 18 Jeremiah 42 22 Jeremiah 43 13 Jeremiah 44 30 Jeremiah 45 5 Jeremiah 46 28 Jeremiah 47 7 Jeremiah 48 47 Jeremiah 49 39 Jeremiah 50 46 Jeremiah 51 64 Jeremiah 52 34 Lamentations 1 22 Lamentations 2 22 Lamentations 3 66 Lamentations 4 22 Lamentations 5 22 Ezekiel 1 28 Ezekiel 2 10 Ezekiel 3 27 Ezekiel 4 17 Ezekiel 5 17 Ezekiel 6 14 Ezekiel 7 27 Ezekiel 8 18 Ezekiel 9 11 Ezekiel 10 22 Ezekiel 11 25 Ezekiel 12 28 Ezekiel 13 23 Ezekiel 14 23 Ezekiel 15 8 Ezekiel 16 63 Ezekiel 17 24 Ezekiel 18 32 Ezekiel 19 14 Ezekiel 20 49 Ezekiel 21 32 Ezekiel 22 31 Ezekiel 23 49 Ezekiel 24 27 Ezekiel 25 17 Ezekiel 26 21 Ezekiel 27 36 Ezekiel 28 26 Ezekiel 29 21 Ezekiel 30 26 Ezekiel 31 18 Ezekiel 32 32 Ezekiel 33 33 Ezekiel 34 31 Ezekiel 35 15 Ezekiel 36 38 Ezekiel 37 28 Ezekiel 38 23 Ezekiel 39 29 Ezekiel 40 49 Ezekiel 41 26 Ezekiel 42 20 Ezekiel 43 27 Ezekiel 44 31 Ezekiel 45 25 Ezekiel 46 24 Ezekiel 47 23 Ezekiel 48 35 Daniel 1 21 Daniel 2 49 Daniel 3 33 Daniel 4 34 Daniel 5 31 Daniel 6 28 Daniel 7 28 Daniel 8 27 Daniel 9 27 Daniel 10 21 Daniel 11 45 Daniel 12 13 Hosea 1 11 Hosea 2 23 Hosea 3 5 Hosea 4 19 Hosea 5 15 Hosea 6 11 Hosea 7 16 Hosea 8 14 Hosea 9 17 Hosea 10 15 Hosea 11 12 Hosea 12 14 Hosea 13 15 Hosea 14 10 Joel 1 20 Joel 2 32 Joel 3 21 Amos 1 15 Amos 2 16 Amos 3 15 Amos 4 13 Amos 5 27 Amos 6 14 Amos 7 17 Amos 8 14 Amos 9 15 Obadiah 1 21 Jonah 1 16 Jonah 2 11 Jonah 3 10 Jonah 4 11 Micah 1 16 Micah 2 13 Micah 3 12 Micah 4 13 Micah 5 15 Micah 6 16 Micah 7 20 Nahum 1 15 Nahum 2 13 Nahum 3 19 Habakkuk 1 17 Habakkuk 2 20 Habakkuk 3 19 Zephaniah 1 18 Zephaniah 2 15 Zephaniah 3 20 Haggai 1 15 Haggai 2 23 Zechariah 1 21 Zechariah 2 13 Zechariah 3 10 Zechariah 4 14 Zechariah 5 11 Zechariah 6 15 Zechariah 7 14 Zechariah 8 23 Zechariah 9 17 Zechariah 10 12 Zechariah 11 17 Zechariah 12 14 Zechariah 13 9 Zechariah 14 21 Malachi 1 14 Malachi 2 17 Malachi 3 18 Malachi 4 6 Matthew 1 25 Matthew 2 23 Matthew 3 17 Matthew 4 25 Matthew 5 48 Matthew 6 34 Matthew 7 29 Matthew 8 34 Matthew 9 38 Matthew 10 42 Matthew 11 30 Matthew 12 50 Matthew 13 58 Matthew 14 36 Matthew 15 39 Matthew 16 28 Matthew 17 27 Matthew 18 35 Matthew 19 30 Matthew 20 34 Matthew 21 46 Matthew 22 46 Matthew 23 39 Matthew 24 51 Matthew 25 46 Matthew 26 75 Matthew 27 66 Matthew 28 20 Mark 1 45 Mark 2 28 Mark 3 35 Mark 4 41 Mark 5 43 Mark 6 56 Mark 7 37 Mark 8 38 Mark 9 50 Mark 10 52 Mark 11 33 Mark 12 44 Mark 13 37 Mark 14 72 Mark 15 47 Mark 16 20 Luke 1 80 Luke 2 52 Luke 3 38 Luke 4 44 Luke 5 39 Luke 6 49 Luke 7 50 Luke 8 56 Luke 9 62 Luke 10 42 Luke 11 54 Luke 12 59 Luke 13 35 Luke 14 35 Luke 15 32 Luke 16 31 Luke 17 37 Luke 18 43 Luke 19 48 Luke 20 47 Luke 21 38 Luke 22 71 Luke 23 56 Luke 24 53 John 1 51 John 2 25 John 3 36 John 4 54 John 5 47 John 6 71 John 7 53 John 8 59 John 9 41 John 10 42 John 11 57 John 12 50 John 13 38 John 14 31 John 15 27 John 16 33 John 17 26 John 18 40 John 19 42 John 20 31 John 21 25 Acts 1 26 Acts 2 47 Acts 3 26 Acts 4 37 Acts 5 42 Acts 6 15 Acts 7 60 Acts 8 40 Acts 9 43 Acts 10 48 Acts 11 30 Acts 12 25 Acts 13 52 Acts 14 28 Acts 15 41 Acts 16 40 Acts 17 34 Acts 18 28 Acts 19 40 Acts 20 38 Acts 21 40 Acts 22 30 Acts 23 35 Acts 24 27 Acts 25 27 Acts 26 32 Acts 27 44 Acts 28 31 Romans 1 32 Romans 2 29 Romans 3 31 Romans 4 25 Romans 5 21 Romans 6 23 Romans 7 25 Romans 8 39 Romans 9 33 Romans 10 21 Romans 11 36 Romans 12 21 Romans 13 14 Romans 14 26 Romans 15 33 Romans 16 24 1 Corinthians 1 31 1 Corinthians 2 16 1 Corinthians 3 23 1 Corinthians 4 21 1 Corinthians 5 13 1 Corinthians 6 20 1 Corinthians 7 40 1 Corinthians 8 13 1 Corinthians 9 27 1 Corinthians 10 33 1 Corinthians 11 34 1 Corinthians 12 31 1 Corinthians 13 13 1 Corinthians 14 40 1 Corinthians 15 58 1 Corinthians 16 24 2 Corinthians 1 24 2 Corinthians 2 17 2 Corinthians 3 18 2 Corinthians 4 18 2 Corinthians 5 21 2 Corinthians 6 18 2 Corinthians 7 16 2 Corinthians 8 24 2 Corinthians 9 15 2 Corinthians 10 18 2 Corinthians 11 32 2 Corinthians 12 21 2 Corinthians 13 13 Galatians 1 24 Galatians 2 21 Galatians 3 29 Galatians 4 31 Galatians 5 26 Galatians 6 18 Ephesians 1 23 Ephesians 2 22 Ephesians 3 21 Ephesians 4 32 Ephesians 5 33 Ephesians 6 24 Philippians 1 30 Philippians 2 30 Philippians 3 21 Philippians 4 23 Colossians 1 29 Colossians 2 23 Colossians 3 25 Colossians 4 18 1 Thessalonians 1 10 1 Thessalonians 2 20 1 Thessalonians 3 13 1 Thessalonians 4 18 1 Thessalonians 5 28 2 Thessalonians 1 12 2 Thessalonians 2 17 2 Thessalonians 3 18 1 Timothy 1 20 1 Timothy 2 15 1 Timothy 3 16 1 Timothy 4 16 1 Timothy 5 25 1 Timothy 6 21 2 Timothy 1 18 2 Timothy 2 26 2 Timothy 3 17 2 Timothy 4 22 Titus 1 16 Titus 2 15 Titus 3 15 Philemon 1 25 Hebrews 1 14 Hebrews 2 18 Hebrews 3 19 Hebrews 4 16 Hebrews 5 14 Hebrews 6 20 Hebrews 7 28 Hebrews 8 13 Hebrews 9 28 Hebrews 10 39 Hebrews 11 40 Hebrews 12 29 Hebrews 13 25 James 1 27 James 2 26 James 3 18 James 4 17 James 5 20 1 Peter 1 25 1 Peter 2 25 1 Peter 3 22 1 Peter 4 19 1 Peter 5 14 2 Peter 1 21 2 Peter 2 22 2 Peter 3 18 1 John 1 10 1 John 2 29 1 John 3 24 1 John 4 21 1 John 5 21 2 John 1 13 3 John 1 15 Jude 1 25 Revelation 1 20 Revelation 2 29 Revelation 3 22 Revelation 4 11 Revelation 5 14 Revelation 6 17 Revelation 7 17 Revelation 8 13 Revelation 9 21 Revelation 10 11 Revelation 11 19 Revelation 12 17 Revelation 13 18 Revelation 14 20 Revelation 15 8 Revelation 16 21 Revelation 17 18 Revelation 18 24 Revelation 19 21 Revelation 20 15 Revelation 21 27 Revelation 22 21 bibledit-gtk-4.9/templates/versification_septuagint.xml000664 000766 000024 00000303754 12221507126 023717 0ustar00teusstaff000000 000000 Genesis 1 31 Genesis 2 25 Genesis 3 24 Genesis 4 26 Genesis 5 32 Genesis 6 22 Genesis 7 24 Genesis 8 22 Genesis 9 29 Genesis 10 32 Genesis 11 32 Genesis 12 20 Genesis 13 18 Genesis 14 24 Genesis 15 21 Genesis 16 16 Genesis 17 27 Genesis 18 33 Genesis 19 38 Genesis 20 18 Genesis 21 34 Genesis 22 24 Genesis 23 20 Genesis 24 67 Genesis 25 34 Genesis 26 35 Genesis 27 46 Genesis 28 22 Genesis 29 35 Genesis 30 43 Genesis 31 54 Genesis 32 33 Genesis 33 20 Genesis 34 31 Genesis 35 29 Genesis 36 43 Genesis 37 36 Genesis 38 30 Genesis 39 23 Genesis 40 23 Genesis 41 57 Genesis 42 38 Genesis 43 34 Genesis 44 34 Genesis 45 28 Genesis 46 34 Genesis 47 31 Genesis 48 22 Genesis 49 33 Genesis 50 26 Exodus 1 22 Exodus 2 25 Exodus 3 22 Exodus 4 31 Exodus 5 23 Exodus 6 30 Exodus 7 29 Exodus 8 28 Exodus 9 35 Exodus 10 29 Exodus 11 10 Exodus 12 51 Exodus 13 22 Exodus 14 31 Exodus 15 27 Exodus 16 36 Exodus 17 16 Exodus 18 27 Exodus 19 25 Exodus 20 26 Exodus 21 37 Exodus 22 30 Exodus 23 33 Exodus 24 18 Exodus 25 40 Exodus 26 37 Exodus 27 21 Exodus 28 43 Exodus 29 46 Exodus 30 38 Exodus 31 18 Exodus 32 35 Exodus 33 23 Exodus 34 35 Exodus 35 35 Exodus 36 38 Exodus 37 21 Exodus 38 27 Exodus 39 23 Exodus 40 38 Leviticus 1 17 Leviticus 2 16 Leviticus 3 17 Leviticus 4 35 Leviticus 5 26 Leviticus 6 23 Leviticus 7 38 Leviticus 8 36 Leviticus 9 24 Leviticus 10 20 Leviticus 11 47 Leviticus 12 8 Leviticus 13 59 Leviticus 14 57 Leviticus 15 33 Leviticus 16 34 Leviticus 17 16 Leviticus 18 30 Leviticus 19 37 Leviticus 20 27 Leviticus 21 24 Leviticus 22 33 Leviticus 23 44 Leviticus 24 23 Leviticus 25 55 Leviticus 26 46 Leviticus 27 34 Numbers 1 54 Numbers 2 34 Numbers 3 51 Numbers 4 49 Numbers 5 31 Numbers 6 26 Numbers 7 89 Numbers 8 26 Numbers 9 23 Numbers 10 36 Numbers 11 35 Numbers 12 16 Numbers 13 33 Numbers 14 45 Numbers 15 41 Numbers 16 35 Numbers 17 28 Numbers 18 32 Numbers 19 22 Numbers 20 29 Numbers 21 35 Numbers 22 41 Numbers 23 30 Numbers 24 25 Numbers 25 18 Numbers 26 65 Numbers 27 23 Numbers 28 31 Numbers 29 39 Numbers 30 17 Numbers 31 54 Numbers 32 42 Numbers 33 56 Numbers 34 29 Numbers 35 34 Numbers 36 13 Deuteronomy 1 46 Deuteronomy 2 37 Deuteronomy 3 29 Deuteronomy 4 49 Deuteronomy 5 33 Deuteronomy 6 25 Deuteronomy 7 26 Deuteronomy 8 20 Deuteronomy 9 29 Deuteronomy 10 22 Deuteronomy 11 32 Deuteronomy 12 31 Deuteronomy 13 19 Deuteronomy 14 29 Deuteronomy 15 23 Deuteronomy 16 22 Deuteronomy 17 20 Deuteronomy 18 22 Deuteronomy 19 21 Deuteronomy 20 20 Deuteronomy 21 23 Deuteronomy 22 29 Deuteronomy 23 26 Deuteronomy 24 22 Deuteronomy 25 19 Deuteronomy 26 19 Deuteronomy 27 26 Deuteronomy 28 69 Deuteronomy 29 28 Deuteronomy 30 20 Deuteronomy 31 30 Deuteronomy 32 52 Deuteronomy 33 29 Deuteronomy 34 12 Joshua 1 18 Joshua 2 24 Joshua 3 17 Joshua 4 24 Joshua 5 15 Joshua 6 27 Joshua 7 26 Joshua 8 29 Joshua 9 27 Joshua 10 42 Joshua 11 23 Joshua 12 24 Joshua 13 32 Joshua 14 15 Joshua 15 63 Joshua 16 10 Joshua 17 18 Joshua 18 28 Joshua 19 51 Joshua 20 9 Joshua 21 45 Joshua 22 34 Joshua 23 16 Joshua 24 33 Judges 1 36 Judges 2 23 Judges 3 31 Judges 4 24 Judges 5 31 Judges 6 40 Judges 7 25 Judges 8 35 Judges 9 57 Judges 10 18 Judges 11 40 Judges 12 15 Judges 13 25 Judges 14 20 Judges 15 20 Judges 16 31 Judges 17 13 Judges 18 31 Judges 19 30 Judges 20 48 Judges 21 25 Ruth 1 22 Ruth 2 23 Ruth 3 18 Ruth 4 22 1 Samuel 1 28 1 Samuel 2 36 1 Samuel 3 21 1 Samuel 4 22 1 Samuel 5 12 1 Samuel 6 21 1 Samuel 7 17 1 Samuel 8 22 1 Samuel 9 27 1 Samuel 10 27 1 Samuel 11 15 1 Samuel 12 25 1 Samuel 13 23 1 Samuel 14 52 1 Samuel 15 35 1 Samuel 16 23 1 Samuel 17 54 1 Samuel 18 29 1 Samuel 19 24 1 Samuel 20 42 1 Samuel 21 16 1 Samuel 22 23 1 Samuel 23 28 1 Samuel 24 23 1 Samuel 25 44 1 Samuel 26 25 1 Samuel 27 12 1 Samuel 28 25 1 Samuel 29 11 1 Samuel 30 31 1 Samuel 31 13 2 Samuel 1 27 2 Samuel 2 32 2 Samuel 3 39 2 Samuel 4 12 2 Samuel 5 25 2 Samuel 6 23 2 Samuel 7 29 2 Samuel 8 18 2 Samuel 9 13 2 Samuel 10 19 2 Samuel 11 27 2 Samuel 12 31 2 Samuel 13 39 2 Samuel 14 33 2 Samuel 15 37 2 Samuel 16 23 2 Samuel 17 29 2 Samuel 18 32 2 Samuel 19 44 2 Samuel 20 26 2 Samuel 21 22 2 Samuel 22 51 2 Samuel 23 39 2 Samuel 24 25 1 Kings 1 53 1 Kings 2 46 1 Kings 3 28 1 Kings 4 19 1 Kings 5 32 1 Kings 6 36 1 Kings 7 50 1 Kings 8 66 1 Kings 9 28 1 Kings 10 29 1 Kings 11 43 1 Kings 12 33 1 Kings 13 34 1 Kings 14 31 1 Kings 15 34 1 Kings 16 34 1 Kings 17 24 1 Kings 18 46 1 Kings 19 21 1 Kings 20 29 1 Kings 21 43 1 Kings 22 54 2 Kings 1 18 2 Kings 2 25 2 Kings 3 27 2 Kings 4 44 2 Kings 5 27 2 Kings 6 33 2 Kings 7 20 2 Kings 8 29 2 Kings 9 37 2 Kings 10 36 2 Kings 11 20 2 Kings 12 22 2 Kings 13 25 2 Kings 14 29 2 Kings 15 38 2 Kings 16 20 2 Kings 17 41 2 Kings 18 37 2 Kings 19 37 2 Kings 20 21 2 Kings 21 26 2 Kings 22 20 2 Kings 23 37 2 Kings 24 20 2 Kings 25 30 1 Chronicles 1 54 1 Chronicles 2 55 1 Chronicles 3 24 1 Chronicles 4 43 1 Chronicles 5 41 1 Chronicles 6 66 1 Chronicles 7 40 1 Chronicles 8 40 1 Chronicles 9 44 1 Chronicles 10 14 1 Chronicles 11 47 1 Chronicles 12 41 1 Chronicles 13 14 1 Chronicles 14 17 1 Chronicles 15 29 1 Chronicles 16 43 1 Chronicles 17 27 1 Chronicles 18 17 1 Chronicles 19 19 1 Chronicles 20 8 1 Chronicles 21 30 1 Chronicles 22 19 1 Chronicles 23 32 1 Chronicles 24 31 1 Chronicles 25 31 1 Chronicles 26 32 1 Chronicles 27 34 1 Chronicles 28 21 1 Chronicles 29 30 2 Chronicles 1 18 2 Chronicles 2 17 2 Chronicles 3 17 2 Chronicles 4 22 2 Chronicles 5 14 2 Chronicles 6 42 2 Chronicles 7 22 2 Chronicles 8 18 2 Chronicles 9 31 2 Chronicles 10 19 2 Chronicles 11 23 2 Chronicles 12 16 2 Chronicles 13 23 2 Chronicles 14 14 2 Chronicles 15 19 2 Chronicles 16 14 2 Chronicles 17 19 2 Chronicles 18 34 2 Chronicles 19 11 2 Chronicles 20 37 2 Chronicles 21 20 2 Chronicles 22 12 2 Chronicles 23 21 2 Chronicles 24 27 2 Chronicles 25 28 2 Chronicles 26 23 2 Chronicles 27 9 2 Chronicles 28 27 2 Chronicles 29 36 2 Chronicles 30 27 2 Chronicles 31 21 2 Chronicles 32 33 2 Chronicles 33 25 2 Chronicles 34 33 2 Chronicles 35 27 2 Chronicles 36 23 Esther 1 22 Esther 2 23 Esther 3 15 Esther 4 17 Esther 5 14 Esther 6 14 Esther 7 10 Esther 8 17 Esther 9 32 Esther 10 3 Job 1 22 Job 2 13 Job 3 26 Job 4 21 Job 5 27 Job 6 30 Job 7 21 Job 8 22 Job 9 35 Job 10 22 Job 11 20 Job 12 25 Job 13 28 Job 14 22 Job 15 35 Job 16 22 Job 17 16 Job 18 21 Job 19 29 Job 20 29 Job 21 34 Job 22 30 Job 23 17 Job 24 25 Job 25 6 Job 26 14 Job 27 23 Job 28 28 Job 29 25 Job 30 31 Job 31 40 Job 32 22 Job 33 33 Job 34 37 Job 35 16 Job 36 33 Job 37 24 Job 38 41 Job 39 30 Job 40 32 Job 41 26 Job 42 17 Psalms 1 6 Psalms 2 12 Psalms 3 9 Psalms 4 9 Psalms 5 13 Psalms 6 11 Psalms 7 18 Psalms 8 10 Psalms 9 39 Psalms 10 7 Psalms 11 9 Psalms 12 6 Psalms 13 7 Psalms 14 5 Psalms 15 11 Psalms 16 15 Psalms 17 51 Psalms 18 15 Psalms 19 10 Psalms 20 14 Psalms 21 32 Psalms 22 6 Psalms 23 10 Psalms 24 22 Psalms 25 12 Psalms 26 14 Psalms 27 9 Psalms 28 11 Psalms 29 13 Psalms 30 25 Psalms 31 11 Psalms 32 22 Psalms 33 23 Psalms 34 28 Psalms 35 13 Psalms 36 40 Psalms 37 23 Psalms 38 14 Psalms 39 18 Psalms 40 14 Psalms 41 12 Psalms 42 5 Psalms 43 27 Psalms 44 18 Psalms 45 12 Psalms 46 10 Psalms 47 15 Psalms 48 21 Psalms 49 23 Psalms 50 21 Psalms 51 11 Psalms 52 7 Psalms 53 9 Psalms 54 24 Psalms 55 14 Psalms 56 12 Psalms 57 12 Psalms 58 18 Psalms 59 14 Psalms 60 9 Psalms 61 13 Psalms 62 12 Psalms 63 11 Psalms 64 14 Psalms 65 20 Psalms 66 8 Psalms 67 36 Psalms 68 37 Psalms 69 6 Psalms 70 24 Psalms 71 20 Psalms 72 28 Psalms 73 23 Psalms 74 11 Psalms 75 13 Psalms 76 21 Psalms 77 72 Psalms 78 13 Psalms 79 20 Psalms 80 17 Psalms 81 8 Psalms 82 19 Psalms 83 13 Psalms 84 14 Psalms 85 17 Psalms 86 7 Psalms 87 19 Psalms 88 53 Psalms 89 17 Psalms 90 16 Psalms 91 16 Psalms 92 5 Psalms 93 23 Psalms 94 11 Psalms 95 13 Psalms 96 12 Psalms 97 9 Psalms 98 9 Psalms 99 5 Psalms 100 8 Psalms 101 29 Psalms 102 22 Psalms 103 35 Psalms 104 45 Psalms 105 48 Psalms 106 43 Psalms 107 14 Psalms 108 31 Psalms 109 7 Psalms 110 10 Psalms 111 10 Psalms 112 9 Psalms 113 26 Psalms 114 9 Psalms 115 10 Psalms 116 2 Psalms 117 29 Psalms 118 176 Psalms 119 7 Psalms 120 8 Psalms 121 9 Psalms 122 4 Psalms 123 8 Psalms 124 5 Psalms 125 6 Psalms 126 5 Psalms 127 6 Psalms 128 8 Psalms 129 8 Psalms 130 3 Psalms 131 18 Psalms 132 3 Psalms 133 3 Psalms 134 21 Psalms 135 26 Psalms 136 9 Psalms 137 8 Psalms 138 24 Psalms 139 14 Psalms 140 10 Psalms 141 8 Psalms 142 12 Psalms 143 15 Psalms 144 21 Psalms 145 10 Psalms 146 11 Psalms 147 9 Psalms 148 14 Psalms 149 9 Psalms 150 6 Psalms 151 7 Proverbs 1 33 Proverbs 2 22 Proverbs 3 35 Proverbs 4 27 Proverbs 5 23 Proverbs 6 35 Proverbs 7 27 Proverbs 8 36 Proverbs 9 18 Proverbs 10 32 Proverbs 11 31 Proverbs 12 28 Proverbs 13 25 Proverbs 14 35 Proverbs 15 33 Proverbs 16 33 Proverbs 17 28 Proverbs 18 22 Proverbs 19 29 Proverbs 20 30 Proverbs 21 31 Proverbs 22 29 Proverbs 23 35 Proverbs 24 34 Proverbs 25 28 Proverbs 26 28 Proverbs 27 27 Proverbs 28 28 Proverbs 29 27 Proverbs 30 33 Proverbs 31 31 Ecclesiastes 1 18 Ecclesiastes 2 26 Ecclesiastes 3 22 Ecclesiastes 4 17 Ecclesiastes 5 19 Ecclesiastes 6 12 Ecclesiastes 7 29 Ecclesiastes 8 17 Ecclesiastes 9 18 Ecclesiastes 10 20 Ecclesiastes 11 10 Ecclesiastes 12 14 Song of Solomon 1 17 Song of Solomon 2 17 Song of Solomon 3 11 Song of Solomon 4 16 Song of Solomon 5 16 Song of Solomon 6 12 Song of Solomon 7 14 Song of Solomon 8 14 Isaiah 1 31 Isaiah 2 21 Isaiah 3 26 Isaiah 4 6 Isaiah 5 30 Isaiah 6 13 Isaiah 7 25 Isaiah 8 23 Isaiah 9 20 Isaiah 10 34 Isaiah 11 16 Isaiah 12 6 Isaiah 13 22 Isaiah 14 32 Isaiah 15 9 Isaiah 16 14 Isaiah 17 14 Isaiah 18 7 Isaiah 19 25 Isaiah 20 6 Isaiah 21 17 Isaiah 22 25 Isaiah 23 18 Isaiah 24 23 Isaiah 25 12 Isaiah 26 21 Isaiah 27 13 Isaiah 28 29 Isaiah 29 24 Isaiah 30 33 Isaiah 31 9 Isaiah 32 20 Isaiah 33 24 Isaiah 34 17 Isaiah 35 10 Isaiah 36 22 Isaiah 37 38 Isaiah 38 22 Isaiah 39 8 Isaiah 40 31 Isaiah 41 29 Isaiah 42 25 Isaiah 43 28 Isaiah 44 28 Isaiah 45 25 Isaiah 46 13 Isaiah 47 15 Isaiah 48 22 Isaiah 49 26 Isaiah 50 11 Isaiah 51 23 Isaiah 52 15 Isaiah 53 12 Isaiah 54 17 Isaiah 55 13 Isaiah 56 11 Isaiah 57 21 Isaiah 58 14 Isaiah 59 21 Isaiah 60 22 Isaiah 61 11 Isaiah 62 12 Isaiah 63 19 Isaiah 64 11 Isaiah 65 25 Isaiah 66 24 Jeremiah 1 19 Jeremiah 2 37 Jeremiah 3 25 Jeremiah 4 31 Jeremiah 5 31 Jeremiah 6 30 Jeremiah 7 34 Jeremiah 8 23 Jeremiah 9 25 Jeremiah 10 25 Jeremiah 11 23 Jeremiah 12 17 Jeremiah 13 27 Jeremiah 14 22 Jeremiah 15 21 Jeremiah 16 21 Jeremiah 17 27 Jeremiah 18 23 Jeremiah 19 15 Jeremiah 20 18 Jeremiah 21 14 Jeremiah 22 30 Jeremiah 23 40 Jeremiah 24 10 Jeremiah 25 20 Jeremiah 26 28 Jeremiah 27 46 Jeremiah 28 64 Jeremiah 29 7 Jeremiah 30 33 Jeremiah 31 44 Jeremiah 32 38 Jeremiah 33 24 Jeremiah 34 22 Jeremiah 35 17 Jeremiah 36 32 Jeremiah 37 24 Jeremiah 38 40 Jeremiah 39 44 Jeremiah 40 13 Jeremiah 41 22 Jeremiah 42 19 Jeremiah 43 32 Jeremiah 44 21 Jeremiah 45 28 Jeremiah 46 18 Jeremiah 47 16 Jeremiah 48 18 Jeremiah 49 22 Jeremiah 50 13 Jeremiah 51 35 Jeremiah 52 34 Lamentations 1 22 Lamentations 2 22 Lamentations 3 66 Lamentations 4 22 Lamentations 5 22 Ezekiel 1 28 Ezekiel 2 10 Ezekiel 3 27 Ezekiel 4 17 Ezekiel 5 17 Ezekiel 6 14 Ezekiel 7 27 Ezekiel 8 18 Ezekiel 9 11 Ezekiel 10 22 Ezekiel 11 25 Ezekiel 12 28 Ezekiel 13 23 Ezekiel 14 23 Ezekiel 15 8 Ezekiel 16 63 Ezekiel 17 24 Ezekiel 18 32 Ezekiel 19 14 Ezekiel 20 44 Ezekiel 21 37 Ezekiel 22 31 Ezekiel 23 49 Ezekiel 24 27 Ezekiel 25 17 Ezekiel 26 21 Ezekiel 27 36 Ezekiel 28 26 Ezekiel 29 21 Ezekiel 30 26 Ezekiel 31 18 Ezekiel 32 32 Ezekiel 33 33 Ezekiel 34 31 Ezekiel 35 15 Ezekiel 36 38 Ezekiel 37 28 Ezekiel 38 23 Ezekiel 39 29 Ezekiel 40 49 Ezekiel 41 26 Ezekiel 42 20 Ezekiel 43 27 Ezekiel 44 31 Ezekiel 45 25 Ezekiel 46 24 Ezekiel 47 23 Ezekiel 48 35 Daniel 1 21 Daniel 2 49 Daniel 3 97 Daniel 4 37 Daniel 5 30 Daniel 6 29 Daniel 7 28 Daniel 8 27 Daniel 9 27 Daniel 10 21 Daniel 11 45 Daniel 12 13 Hosea 1 9 Hosea 2 25 Hosea 3 5 Hosea 4 19 Hosea 5 15 Hosea 6 11 Hosea 7 16 Hosea 8 14 Hosea 9 17 Hosea 10 15 Hosea 11 11 Hosea 12 15 Hosea 13 15 Hosea 14 10 Joel 1 20 Joel 2 27 Joel 3 5 Joel 4 21 Amos 1 15 Amos 2 16 Amos 3 15 Amos 4 13 Amos 5 27 Amos 6 14 Amos 7 17 Amos 8 14 Amos 9 15 Obadiah 1 21 Jonah 1 16 Jonah 2 11 Jonah 3 10 Jonah 4 11 Micah 1 16 Micah 2 13 Micah 3 12 Micah 4 14 Micah 5 14 Micah 6 16 Micah 7 20 Nahum 1 14 Nahum 2 14 Nahum 3 19 Habakkuk 1 17 Habakkuk 2 20 Habakkuk 3 19 Zephaniah 1 18 Zephaniah 2 15 Zephaniah 3 20 Haggai 1 15 Haggai 2 23 Zechariah 1 17 Zechariah 2 17 Zechariah 3 10 Zechariah 4 14 Zechariah 5 11 Zechariah 6 15 Zechariah 7 14 Zechariah 8 23 Zechariah 9 17 Zechariah 10 12 Zechariah 11 17 Zechariah 12 14 Zechariah 13 9 Zechariah 14 21 Malachi 1 14 Malachi 2 17 Malachi 3 24 Matthew 1 25 Matthew 2 23 Matthew 3 17 Matthew 4 25 Matthew 5 48 Matthew 6 34 Matthew 7 29 Matthew 8 34 Matthew 9 38 Matthew 10 42 Matthew 11 30 Matthew 12 50 Matthew 13 58 Matthew 14 36 Matthew 15 39 Matthew 16 28 Matthew 17 27 Matthew 18 35 Matthew 19 30 Matthew 20 34 Matthew 21 46 Matthew 22 46 Matthew 23 39 Matthew 24 51 Matthew 25 46 Matthew 26 75 Matthew 27 66 Matthew 28 20 Mark 1 45 Mark 2 28 Mark 3 35 Mark 4 41 Mark 5 43 Mark 6 56 Mark 7 37 Mark 8 38 Mark 9 50 Mark 10 52 Mark 11 33 Mark 12 44 Mark 13 37 Mark 14 72 Mark 15 47 Mark 16 20 Luke 1 80 Luke 2 52 Luke 3 38 Luke 4 44 Luke 5 39 Luke 6 49 Luke 7 50 Luke 8 56 Luke 9 62 Luke 10 42 Luke 11 54 Luke 12 59 Luke 13 35 Luke 14 35 Luke 15 32 Luke 16 31 Luke 17 37 Luke 18 43 Luke 19 48 Luke 20 47 Luke 21 38 Luke 22 71 Luke 23 56 Luke 24 53 John 1 51 John 2 25 John 3 36 John 4 54 John 5 47 John 6 71 John 7 53 John 8 59 John 9 41 John 10 42 John 11 57 John 12 50 John 13 38 John 14 31 John 15 27 John 16 33 John 17 26 John 18 40 John 19 42 John 20 31 John 21 25 Acts 1 26 Acts 2 47 Acts 3 26 Acts 4 37 Acts 5 42 Acts 6 15 Acts 7 60 Acts 8 40 Acts 9 43 Acts 10 48 Acts 11 30 Acts 12 25 Acts 13 52 Acts 14 28 Acts 15 41 Acts 16 40 Acts 17 34 Acts 18 28 Acts 19 40 Acts 20 38 Acts 21 40 Acts 22 30 Acts 23 35 Acts 24 27 Acts 25 27 Acts 26 32 Acts 27 44 Acts 28 31 Romans 1 32 Romans 2 29 Romans 3 31 Romans 4 25 Romans 5 21 Romans 6 23 Romans 7 25 Romans 8 39 Romans 9 33 Romans 10 21 Romans 11 36 Romans 12 21 Romans 13 14 Romans 14 23 Romans 15 33 Romans 16 27 1 Corinthians 1 31 1 Corinthians 2 16 1 Corinthians 3 23 1 Corinthians 4 21 1 Corinthians 5 13 1 Corinthians 6 20 1 Corinthians 7 40 1 Corinthians 8 13 1 Corinthians 9 27 1 Corinthians 10 33 1 Corinthians 11 34 1 Corinthians 12 31 1 Corinthians 13 13 1 Corinthians 14 40 1 Corinthians 15 58 1 Corinthians 16 24 2 Corinthians 1 24 2 Corinthians 2 17 2 Corinthians 3 18 2 Corinthians 4 18 2 Corinthians 5 21 2 Corinthians 6 18 2 Corinthians 7 16 2 Corinthians 8 24 2 Corinthians 9 15 2 Corinthians 10 18 2 Corinthians 11 33 2 Corinthians 12 21 2 Corinthians 13 13 Galatians 1 24 Galatians 2 21 Galatians 3 29 Galatians 4 31 Galatians 5 26 Galatians 6 18 Ephesians 1 23 Ephesians 2 22 Ephesians 3 21 Ephesians 4 32 Ephesians 5 33 Ephesians 6 24 Philippians 1 30 Philippians 2 30 Philippians 3 21 Philippians 4 23 Colossians 1 29 Colossians 2 23 Colossians 3 25 Colossians 4 18 1 Thessalonians 1 10 1 Thessalonians 2 20 1 Thessalonians 3 13 1 Thessalonians 4 18 1 Thessalonians 5 28 2 Thessalonians 1 12 2 Thessalonians 2 17 2 Thessalonians 3 18 1 Timothy 1 20 1 Timothy 2 15 1 Timothy 3 16 1 Timothy 4 16 1 Timothy 5 25 1 Timothy 6 21 2 Timothy 1 18 2 Timothy 2 26 2 Timothy 3 17 2 Timothy 4 22 Titus 1 16 Titus 2 15 Titus 3 15 Philemon 1 25 Hebrews 1 14 Hebrews 2 18 Hebrews 3 19 Hebrews 4 16 Hebrews 5 14 Hebrews 6 20 Hebrews 7 28 Hebrews 8 13 Hebrews 9 28 Hebrews 10 39 Hebrews 11 40 Hebrews 12 29 Hebrews 13 25 James 1 27 James 2 26 James 3 18 James 4 17 James 5 20 1 Peter 1 25 1 Peter 2 25 1 Peter 3 22 1 Peter 4 19 1 Peter 5 14 2 Peter 1 21 2 Peter 2 22 2 Peter 3 18 1 John 1 10 1 John 2 29 1 John 3 24 1 John 4 21 1 John 5 21 2 John 1 13 3 John 1 15 Jude 1 25 Revelation 1 20 Revelation 2 29 Revelation 3 22 Revelation 4 11 Revelation 5 14 Revelation 6 17 Revelation 7 17 Revelation 8 13 Revelation 9 21 Revelation 10 11 Revelation 11 19 Revelation 12 18 Revelation 13 18 Revelation 14 20 Revelation 15 8 Revelation 16 21 Revelation 17 18 Revelation 18 24 Revelation 19 21 Revelation 20 15 Revelation 21 27 Revelation 22 21 bibledit-gtk-4.9/templates/versification_spanish.xml000664 000766 000024 00000307456 12221507126 023204 0ustar00teusstaff000000 000000 Genesis 1 31 Genesis 2 25 Genesis 3 24 Genesis 4 26 Genesis 5 32 Genesis 6 22 Genesis 7 24 Genesis 8 22 Genesis 9 29 Genesis 10 32 Genesis 11 32 Genesis 12 20 Genesis 13 18 Genesis 14 24 Genesis 15 21 Genesis 16 16 Genesis 17 27 Genesis 18 33 Genesis 19 38 Genesis 20 18 Genesis 21 34 Genesis 22 24 Genesis 23 20 Genesis 24 67 Genesis 25 34 Genesis 26 35 Genesis 27 46 Genesis 28 22 Genesis 29 35 Genesis 30 43 Genesis 31 55 Genesis 32 32 Genesis 33 20 Genesis 34 31 Genesis 35 29 Genesis 36 43 Genesis 37 36 Genesis 38 30 Genesis 39 23 Genesis 40 23 Genesis 41 57 Genesis 42 38 Genesis 43 34 Genesis 44 34 Genesis 45 28 Genesis 46 34 Genesis 47 31 Genesis 48 22 Genesis 49 33 Genesis 50 26 Exodus 1 22 Exodus 2 25 Exodus 3 22 Exodus 4 31 Exodus 5 23 Exodus 6 30 Exodus 7 25 Exodus 8 32 Exodus 9 35 Exodus 10 29 Exodus 11 10 Exodus 12 51 Exodus 13 22 Exodus 14 31 Exodus 15 27 Exodus 16 36 Exodus 17 16 Exodus 18 27 Exodus 19 25 Exodus 20 26 Exodus 21 36 Exodus 22 31 Exodus 23 33 Exodus 24 18 Exodus 25 40 Exodus 26 37 Exodus 27 21 Exodus 28 43 Exodus 29 46 Exodus 30 38 Exodus 31 18 Exodus 32 35 Exodus 33 23 Exodus 34 35 Exodus 35 35 Exodus 36 38 Exodus 37 29 Exodus 38 31 Exodus 39 43 Exodus 40 38 Leviticus 1 17 Leviticus 2 16 Leviticus 3 17 Leviticus 4 35 Leviticus 5 19 Leviticus 6 30 Leviticus 7 38 Leviticus 8 36 Leviticus 9 24 Leviticus 10 20 Leviticus 11 47 Leviticus 12 8 Leviticus 13 59 Leviticus 14 57 Leviticus 15 33 Leviticus 16 34 Leviticus 17 16 Leviticus 18 30 Leviticus 19 37 Leviticus 20 27 Leviticus 21 24 Leviticus 22 33 Leviticus 23 44 Leviticus 24 23 Leviticus 25 55 Leviticus 26 46 Leviticus 27 34 Numbers 1 54 Numbers 2 34 Numbers 3 51 Numbers 4 49 Numbers 5 31 Numbers 6 27 Numbers 7 89 Numbers 8 26 Numbers 9 23 Numbers 10 36 Numbers 11 35 Numbers 12 16 Numbers 13 33 Numbers 14 45 Numbers 15 41 Numbers 16 50 Numbers 17 13 Numbers 18 32 Numbers 19 22 Numbers 20 29 Numbers 21 35 Numbers 22 41 Numbers 23 30 Numbers 24 25 Numbers 25 19 Numbers 26 65 Numbers 27 23 Numbers 28 31 Numbers 29 40 Numbers 30 16 Numbers 31 54 Numbers 32 42 Numbers 33 56 Numbers 34 29 Numbers 35 34 Numbers 36 13 Deuteronomy 1 46 Deuteronomy 2 37 Deuteronomy 3 29 Deuteronomy 4 49 Deuteronomy 5 33 Deuteronomy 6 25 Deuteronomy 7 26 Deuteronomy 8 20 Deuteronomy 9 29 Deuteronomy 10 22 Deuteronomy 11 32 Deuteronomy 12 32 Deuteronomy 13 18 Deuteronomy 14 29 Deuteronomy 15 23 Deuteronomy 16 22 Deuteronomy 17 20 Deuteronomy 18 22 Deuteronomy 19 21 Deuteronomy 20 20 Deuteronomy 21 23 Deuteronomy 22 30 Deuteronomy 23 25 Deuteronomy 24 22 Deuteronomy 25 19 Deuteronomy 26 19 Deuteronomy 27 26 Deuteronomy 28 68 Deuteronomy 29 29 Deuteronomy 30 20 Deuteronomy 31 30 Deuteronomy 32 52 Deuteronomy 33 29 Deuteronomy 34 12 Joshua 1 18 Joshua 2 24 Joshua 3 17 Joshua 4 24 Joshua 5 15 Joshua 6 27 Joshua 7 26 Joshua 8 35 Joshua 9 27 Joshua 10 43 Joshua 11 23 Joshua 12 24 Joshua 13 33 Joshua 14 15 Joshua 15 63 Joshua 16 10 Joshua 17 18 Joshua 18 28 Joshua 19 51 Joshua 20 9 Joshua 21 45 Joshua 22 34 Joshua 23 16 Joshua 24 33 Judges 1 36 Judges 2 23 Judges 3 31 Judges 4 24 Judges 5 31 Judges 6 40 Judges 7 25 Judges 8 35 Judges 9 57 Judges 10 18 Judges 11 40 Judges 12 15 Judges 13 25 Judges 14 20 Judges 15 20 Judges 16 31 Judges 17 13 Judges 18 31 Judges 19 30 Judges 20 48 Judges 21 25 Ruth 1 22 Ruth 2 23 Ruth 3 18 Ruth 4 22 1 Samuel 1 28 1 Samuel 2 36 1 Samuel 3 21 1 Samuel 4 22 1 Samuel 5 12 1 Samuel 6 21 1 Samuel 7 17 1 Samuel 8 22 1 Samuel 9 27 1 Samuel 10 27 1 Samuel 11 15 1 Samuel 12 25 1 Samuel 13 23 1 Samuel 14 52 1 Samuel 15 35 1 Samuel 16 23 1 Samuel 17 58 1 Samuel 18 30 1 Samuel 19 24 1 Samuel 20 42 1 Samuel 21 15 1 Samuel 22 23 1 Samuel 23 29 1 Samuel 24 22 1 Samuel 25 44 1 Samuel 26 25 1 Samuel 27 12 1 Samuel 28 25 1 Samuel 29 11 1 Samuel 30 31 1 Samuel 31 13 2 Samuel 1 27 2 Samuel 2 32 2 Samuel 3 39 2 Samuel 4 12 2 Samuel 5 25 2 Samuel 6 23 2 Samuel 7 29 2 Samuel 8 18 2 Samuel 9 13 2 Samuel 10 19 2 Samuel 11 27 2 Samuel 12 31 2 Samuel 13 39 2 Samuel 14 33 2 Samuel 15 37 2 Samuel 16 23 2 Samuel 17 29 2 Samuel 18 33 2 Samuel 19 43 2 Samuel 20 26 2 Samuel 21 22 2 Samuel 22 51 2 Samuel 23 39 2 Samuel 24 25 1 Kings 1 53 1 Kings 2 46 1 Kings 3 28 1 Kings 4 34 1 Kings 5 18 1 Kings 6 38 1 Kings 7 51 1 Kings 8 66 1 Kings 9 28 1 Kings 10 29 1 Kings 11 43 1 Kings 12 33 1 Kings 13 34 1 Kings 14 31 1 Kings 15 34 1 Kings 16 34 1 Kings 17 24 1 Kings 18 46 1 Kings 19 21 1 Kings 20 43 1 Kings 21 29 1 Kings 22 53 2 Kings 1 18 2 Kings 2 25 2 Kings 3 27 2 Kings 4 44 2 Kings 5 27 2 Kings 6 33 2 Kings 7 20 2 Kings 8 29 2 Kings 9 37 2 Kings 10 36 2 Kings 11 21 2 Kings 12 21 2 Kings 13 25 2 Kings 14 29 2 Kings 15 38 2 Kings 16 20 2 Kings 17 41 2 Kings 18 37 2 Kings 19 37 2 Kings 20 21 2 Kings 21 26 2 Kings 22 20 2 Kings 23 37 2 Kings 24 20 2 Kings 25 30 1 Chronicles 1 54 1 Chronicles 2 55 1 Chronicles 3 24 1 Chronicles 4 43 1 Chronicles 5 26 1 Chronicles 6 81 1 Chronicles 7 40 1 Chronicles 8 40 1 Chronicles 9 44 1 Chronicles 10 14 1 Chronicles 11 47 1 Chronicles 12 40 1 Chronicles 13 14 1 Chronicles 14 17 1 Chronicles 15 29 1 Chronicles 16 43 1 Chronicles 17 27 1 Chronicles 18 17 1 Chronicles 19 19 1 Chronicles 20 8 1 Chronicles 21 30 1 Chronicles 22 19 1 Chronicles 23 32 1 Chronicles 24 31 1 Chronicles 25 31 1 Chronicles 26 32 1 Chronicles 27 34 1 Chronicles 28 21 1 Chronicles 29 30 2 Chronicles 1 17 2 Chronicles 2 18 2 Chronicles 3 17 2 Chronicles 4 22 2 Chronicles 5 14 2 Chronicles 6 42 2 Chronicles 7 22 2 Chronicles 8 18 2 Chronicles 9 31 2 Chronicles 10 19 2 Chronicles 11 23 2 Chronicles 12 17 2 Chronicles 13 22 2 Chronicles 14 15 2 Chronicles 15 19 2 Chronicles 16 14 2 Chronicles 17 19 2 Chronicles 18 34 2 Chronicles 19 11 2 Chronicles 20 37 2 Chronicles 21 20 2 Chronicles 22 12 2 Chronicles 23 21 2 Chronicles 24 27 2 Chronicles 25 28 2 Chronicles 26 23 2 Chronicles 27 9 2 Chronicles 28 27 2 Chronicles 29 36 2 Chronicles 30 27 2 Chronicles 31 21 2 Chronicles 32 33 2 Chronicles 33 25 2 Chronicles 34 33 2 Chronicles 35 27 2 Chronicles 36 23 Ezra 1 11 Ezra 2 70 Ezra 3 13 Ezra 4 24 Ezra 5 17 Ezra 6 22 Ezra 7 28 Ezra 8 36 Ezra 9 15 Ezra 10 44 Nehemiah 1 11 Nehemiah 2 20 Nehemiah 3 32 Nehemiah 4 23 Nehemiah 5 19 Nehemiah 6 19 Nehemiah 7 73 Nehemiah 8 18 Nehemiah 9 38 Nehemiah 10 39 Nehemiah 11 36 Nehemiah 12 47 Nehemiah 13 31 Esther 1 22 Esther 2 23 Esther 3 15 Esther 4 17 Esther 5 14 Esther 6 14 Esther 7 10 Esther 8 17 Esther 9 32 Esther 10 3 Job 1 22 Job 2 13 Job 3 26 Job 4 21 Job 5 27 Job 6 30 Job 7 21 Job 8 22 Job 9 35 Job 10 22 Job 11 20 Job 12 25 Job 13 28 Job 14 22 Job 15 35 Job 16 22 Job 17 16 Job 18 21 Job 19 29 Job 20 29 Job 21 34 Job 22 30 Job 23 17 Job 24 25 Job 25 6 Job 26 14 Job 27 23 Job 28 28 Job 29 25 Job 30 31 Job 31 40 Job 32 22 Job 33 33 Job 34 37 Job 35 16 Job 36 33 Job 37 24 Job 38 41 Job 39 30 Job 40 24 Job 41 34 Job 42 17 Psalms 1 6 Psalms 2 12 Psalms 3 8 Psalms 4 8 Psalms 5 12 Psalms 6 10 Psalms 7 17 Psalms 8 9 Psalms 9 20 Psalms 10 18 Psalms 11 7 Psalms 12 8 Psalms 13 6 Psalms 14 7 Psalms 15 5 Psalms 16 11 Psalms 17 15 Psalms 18 50 Psalms 19 14 Psalms 20 9 Psalms 21 13 Psalms 22 31 Psalms 23 6 Psalms 24 10 Psalms 25 22 Psalms 26 12 Psalms 27 14 Psalms 28 9 Psalms 29 11 Psalms 30 12 Psalms 31 24 Psalms 32 11 Psalms 33 22 Psalms 34 22 Psalms 35 28 Psalms 36 12 Psalms 37 40 Psalms 38 22 Psalms 39 13 Psalms 40 17 Psalms 41 13 Psalms 42 11 Psalms 43 5 Psalms 44 26 Psalms 45 17 Psalms 46 11 Psalms 47 10 Psalms 48 14 Psalms 49 20 Psalms 50 23 Psalms 51 19 Psalms 52 9 Psalms 53 6 Psalms 54 7 Psalms 55 23 Psalms 56 13 Psalms 57 11 Psalms 58 11 Psalms 59 17 Psalms 60 12 Psalms 61 8 Psalms 62 12 Psalms 63 11 Psalms 64 10 Psalms 65 13 Psalms 66 20 Psalms 67 7 Psalms 68 35 Psalms 69 36 Psalms 70 5 Psalms 71 24 Psalms 72 20 Psalms 73 28 Psalms 74 23 Psalms 75 10 Psalms 76 12 Psalms 77 20 Psalms 78 72 Psalms 79 13 Psalms 80 19 Psalms 81 16 Psalms 82 8 Psalms 83 18 Psalms 84 12 Psalms 85 13 Psalms 86 17 Psalms 87 7 Psalms 88 18 Psalms 89 52 Psalms 90 17 Psalms 91 16 Psalms 92 15 Psalms 93 5 Psalms 94 23 Psalms 95 11 Psalms 96 13 Psalms 97 12 Psalms 98 9 Psalms 99 9 Psalms 100 5 Psalms 101 8 Psalms 102 28 Psalms 103 22 Psalms 104 35 Psalms 105 45 Psalms 106 48 Psalms 107 43 Psalms 108 13 Psalms 109 31 Psalms 110 7 Psalms 111 10 Psalms 112 10 Psalms 113 9 Psalms 114 8 Psalms 115 18 Psalms 116 19 Psalms 117 2 Psalms 118 29 Psalms 119 176 Psalms 120 7 Psalms 121 8 Psalms 122 9 Psalms 123 4 Psalms 124 8 Psalms 125 5 Psalms 126 6 Psalms 127 5 Psalms 128 6 Psalms 129 8 Psalms 130 8 Psalms 131 3 Psalms 132 18 Psalms 133 3 Psalms 134 3 Psalms 135 21 Psalms 136 26 Psalms 137 9 Psalms 138 8 Psalms 139 24 Psalms 140 13 Psalms 141 10 Psalms 142 7 Psalms 143 12 Psalms 144 15 Psalms 145 21 Psalms 146 10 Psalms 147 20 Psalms 148 14 Psalms 149 9 Psalms 150 6 Proverbs 1 33 Proverbs 2 22 Proverbs 3 35 Proverbs 4 27 Proverbs 5 23 Proverbs 6 35 Proverbs 7 27 Proverbs 8 36 Proverbs 9 18 Proverbs 10 32 Proverbs 11 31 Proverbs 12 28 Proverbs 13 25 Proverbs 14 35 Proverbs 15 33 Proverbs 16 33 Proverbs 17 28 Proverbs 18 24 Proverbs 19 29 Proverbs 20 30 Proverbs 21 31 Proverbs 22 29 Proverbs 23 35 Proverbs 24 34 Proverbs 25 28 Proverbs 26 28 Proverbs 27 27 Proverbs 28 28 Proverbs 29 27 Proverbs 30 33 Proverbs 31 31 Ecclesiastes 1 18 Ecclesiastes 2 26 Ecclesiastes 3 22 Ecclesiastes 4 16 Ecclesiastes 5 20 Ecclesiastes 6 12 Ecclesiastes 7 29 Ecclesiastes 8 17 Ecclesiastes 9 18 Ecclesiastes 10 20 Ecclesiastes 11 10 Ecclesiastes 12 14 Song of Solomon 1 17 Song of Solomon 2 17 Song of Solomon 3 11 Song of Solomon 4 16 Song of Solomon 5 16 Song of Solomon 6 13 Song of Solomon 7 13 Song of Solomon 8 14 Isaiah 1 31 Isaiah 2 22 Isaiah 3 26 Isaiah 4 6 Isaiah 5 30 Isaiah 6 13 Isaiah 7 25 Isaiah 8 22 Isaiah 9 21 Isaiah 10 34 Isaiah 11 16 Isaiah 12 6 Isaiah 13 22 Isaiah 14 32 Isaiah 15 9 Isaiah 16 14 Isaiah 17 14 Isaiah 18 7 Isaiah 19 25 Isaiah 20 6 Isaiah 21 17 Isaiah 22 25 Isaiah 23 18 Isaiah 24 23 Isaiah 25 12 Isaiah 26 21 Isaiah 27 13 Isaiah 28 29 Isaiah 29 24 Isaiah 30 33 Isaiah 31 9 Isaiah 32 20 Isaiah 33 24 Isaiah 34 17 Isaiah 35 10 Isaiah 36 22 Isaiah 37 38 Isaiah 38 22 Isaiah 39 8 Isaiah 40 31 Isaiah 41 29 Isaiah 42 25 Isaiah 43 28 Isaiah 44 28 Isaiah 45 25 Isaiah 46 13 Isaiah 47 15 Isaiah 48 22 Isaiah 49 26 Isaiah 50 11 Isaiah 51 23 Isaiah 52 15 Isaiah 53 12 Isaiah 54 17 Isaiah 55 13 Isaiah 56 12 Isaiah 57 21 Isaiah 58 14 Isaiah 59 21 Isaiah 60 22 Isaiah 61 11 Isaiah 62 12 Isaiah 63 19 Isaiah 64 12 Isaiah 65 25 Isaiah 66 24 Jeremiah 1 19 Jeremiah 2 37 Jeremiah 3 25 Jeremiah 4 31 Jeremiah 5 31 Jeremiah 6 30 Jeremiah 7 34 Jeremiah 8 22 Jeremiah 9 26 Jeremiah 10 25 Jeremiah 11 23 Jeremiah 12 17 Jeremiah 13 27 Jeremiah 14 22 Jeremiah 15 21 Jeremiah 16 21 Jeremiah 17 27 Jeremiah 18 23 Jeremiah 19 15 Jeremiah 20 18 Jeremiah 21 14 Jeremiah 22 30 Jeremiah 23 40 Jeremiah 24 10 Jeremiah 25 38 Jeremiah 26 24 Jeremiah 27 22 Jeremiah 28 17 Jeremiah 29 32 Jeremiah 30 24 Jeremiah 31 40 Jeremiah 32 44 Jeremiah 33 26 Jeremiah 34 22 Jeremiah 35 19 Jeremiah 36 32 Jeremiah 37 21 Jeremiah 38 28 Jeremiah 39 18 Jeremiah 40 16 Jeremiah 41 18 Jeremiah 42 22 Jeremiah 43 13 Jeremiah 44 30 Jeremiah 45 5 Jeremiah 46 28 Jeremiah 47 7 Jeremiah 48 47 Jeremiah 49 39 Jeremiah 50 46 Jeremiah 51 64 Jeremiah 52 34 Lamentations 1 22 Lamentations 2 22 Lamentations 3 66 Lamentations 4 22 Lamentations 5 22 Ezekiel 1 28 Ezekiel 2 10 Ezekiel 3 27 Ezekiel 4 17 Ezekiel 5 17 Ezekiel 6 14 Ezekiel 7 27 Ezekiel 8 18 Ezekiel 9 11 Ezekiel 10 22 Ezekiel 11 25 Ezekiel 12 28 Ezekiel 13 23 Ezekiel 14 23 Ezekiel 15 8 Ezekiel 16 63 Ezekiel 17 24 Ezekiel 18 32 Ezekiel 19 14 Ezekiel 20 49 Ezekiel 21 32 Ezekiel 22 31 Ezekiel 23 49 Ezekiel 24 27 Ezekiel 25 17 Ezekiel 26 21 Ezekiel 27 36 Ezekiel 28 26 Ezekiel 29 21 Ezekiel 30 26 Ezekiel 31 18 Ezekiel 32 32 Ezekiel 33 33 Ezekiel 34 31 Ezekiel 35 15 Ezekiel 36 38 Ezekiel 37 28 Ezekiel 38 23 Ezekiel 39 29 Ezekiel 40 49 Ezekiel 41 26 Ezekiel 42 20 Ezekiel 43 27 Ezekiel 44 31 Ezekiel 45 25 Ezekiel 46 24 Ezekiel 47 23 Ezekiel 48 35 Daniel 1 21 Daniel 2 49 Daniel 3 30 Daniel 4 37 Daniel 5 31 Daniel 6 28 Daniel 7 28 Daniel 8 27 Daniel 9 27 Daniel 10 21 Daniel 11 45 Daniel 12 13 Hosea 1 11 Hosea 2 23 Hosea 3 5 Hosea 4 19 Hosea 5 15 Hosea 6 11 Hosea 7 16 Hosea 8 14 Hosea 9 17 Hosea 10 15 Hosea 11 12 Hosea 12 14 Hosea 13 16 Hosea 14 9 Joel 1 20 Joel 2 32 Joel 3 21 Amos 1 15 Amos 2 16 Amos 3 15 Amos 4 13 Amos 5 27 Amos 6 14 Amos 7 17 Amos 8 14 Amos 9 15 Obadiah 1 21 Jonah 1 17 Jonah 2 10 Jonah 3 10 Jonah 4 11 Micah 1 16 Micah 2 13 Micah 3 12 Micah 4 13 Micah 5 15 Micah 6 16 Micah 7 20 Nahum 1 15 Nahum 2 13 Nahum 3 19 Habakkuk 1 17 Habakkuk 2 20 Habakkuk 3 19 Zephaniah 1 18 Zephaniah 2 15 Zephaniah 3 20 Haggai 1 15 Haggai 2 23 Zechariah 1 21 Zechariah 2 13 Zechariah 3 10 Zechariah 4 14 Zechariah 5 11 Zechariah 6 15 Zechariah 7 14 Zechariah 8 23 Zechariah 9 17 Zechariah 10 12 Zechariah 11 17 Zechariah 12 14 Zechariah 13 9 Zechariah 14 21 Malachi 1 14 Malachi 2 17 Malachi 3 18 Malachi 4 6 Matthew 1 25 Matthew 2 23 Matthew 3 17 Matthew 4 25 Matthew 5 48 Matthew 6 34 Matthew 7 29 Matthew 8 34 Matthew 9 38 Matthew 10 42 Matthew 11 30 Matthew 12 50 Matthew 13 58 Matthew 14 36 Matthew 15 39 Matthew 16 28 Matthew 17 27 Matthew 18 35 Matthew 19 30 Matthew 20 34 Matthew 21 46 Matthew 22 46 Matthew 23 39 Matthew 24 51 Matthew 25 46 Matthew 26 75 Matthew 27 66 Matthew 28 20 Mark 1 45 Mark 2 28 Mark 3 35 Mark 4 41 Mark 5 43 Mark 6 56 Mark 7 37 Mark 8 38 Mark 9 50 Mark 10 52 Mark 11 33 Mark 12 44 Mark 13 37 Mark 14 72 Mark 15 47 Mark 16 20 Luke 1 80 Luke 2 52 Luke 3 38 Luke 4 44 Luke 5 39 Luke 6 49 Luke 7 50 Luke 8 56 Luke 9 62 Luke 10 42 Luke 11 54 Luke 12 59 Luke 13 35 Luke 14 35 Luke 15 32 Luke 16 31 Luke 17 37 Luke 18 43 Luke 19 48 Luke 20 47 Luke 21 38 Luke 22 71 Luke 23 56 Luke 24 53 John 1 51 John 2 25 John 3 36 John 4 54 John 5 47 John 6 71 John 7 53 John 8 59 John 9 41 John 10 42 John 11 57 John 12 50 John 13 38 John 14 31 John 15 27 John 16 33 John 17 26 John 18 40 John 19 42 John 20 31 John 21 25 Acts 1 26 Acts 2 47 Acts 3 26 Acts 4 37 Acts 5 42 Acts 6 15 Acts 7 60 Acts 8 40 Acts 9 43 Acts 10 48 Acts 11 30 Acts 12 25 Acts 13 52 Acts 14 28 Acts 15 41 Acts 16 40 Acts 17 34 Acts 18 28 Acts 19 41 Acts 20 38 Acts 21 40 Acts 22 30 Acts 23 35 Acts 24 27 Acts 25 27 Acts 26 32 Acts 27 44 Acts 28 31 Romans 1 32 Romans 2 29 Romans 3 31 Romans 4 25 Romans 5 21 Romans 6 23 Romans 7 25 Romans 8 39 Romans 9 33 Romans 10 21 Romans 11 36 Romans 12 21 Romans 13 14 Romans 14 23 Romans 15 33 Romans 16 27 1 Corinthians 1 31 1 Corinthians 2 16 1 Corinthians 3 23 1 Corinthians 4 21 1 Corinthians 5 13 1 Corinthians 6 20 1 Corinthians 7 40 1 Corinthians 8 13 1 Corinthians 9 27 1 Corinthians 10 33 1 Corinthians 11 34 1 Corinthians 12 31 1 Corinthians 13 13 1 Corinthians 14 40 1 Corinthians 15 58 1 Corinthians 16 24 2 Corinthians 1 24 2 Corinthians 2 17 2 Corinthians 3 18 2 Corinthians 4 18 2 Corinthians 5 21 2 Corinthians 6 18 2 Corinthians 7 16 2 Corinthians 8 24 2 Corinthians 9 15 2 Corinthians 10 18 2 Corinthians 11 33 2 Corinthians 12 21 2 Corinthians 13 13 Galatians 1 24 Galatians 2 21 Galatians 3 29 Galatians 4 31 Galatians 5 26 Galatians 6 18 Ephesians 1 23 Ephesians 2 22 Ephesians 3 21 Ephesians 4 32 Ephesians 5 33 Ephesians 6 24 Philippians 1 30 Philippians 2 30 Philippians 3 21 Philippians 4 23 Colossians 1 29 Colossians 2 23 Colossians 3 25 Colossians 4 18 1 Thessalonians 1 10 1 Thessalonians 2 20 1 Thessalonians 3 13 1 Thessalonians 4 18 1 Thessalonians 5 28 2 Thessalonians 1 12 2 Thessalonians 2 17 2 Thessalonians 3 18 1 Timothy 1 20 1 Timothy 2 15 1 Timothy 3 16 1 Timothy 4 16 1 Timothy 5 25 1 Timothy 6 21 2 Timothy 1 18 2 Timothy 2 26 2 Timothy 3 17 2 Timothy 4 22 Titus 1 16 Titus 2 15 Titus 3 15 Philemon 1 25 Hebrews 1 14 Hebrews 2 18 Hebrews 3 19 Hebrews 4 16 Hebrews 5 14 Hebrews 6 20 Hebrews 7 28 Hebrews 8 13 Hebrews 9 28 Hebrews 10 39 Hebrews 11 40 Hebrews 12 29 Hebrews 13 25 James 1 27 James 2 26 James 3 18 James 4 17 James 5 20 1 Peter 1 25 1 Peter 2 25 1 Peter 3 22 1 Peter 4 19 1 Peter 5 14 2 Peter 1 21 2 Peter 2 22 2 Peter 3 18 1 John 1 10 1 John 2 29 1 John 3 24 1 John 4 21 1 John 5 21 2 John 1 13 3 John 1 15 Jude 1 25 Revelation 1 20 Revelation 2 29 Revelation 3 22 Revelation 4 11 Revelation 5 14 Revelation 6 17 Revelation 7 17 Revelation 8 13 Revelation 9 21 Revelation 10 11 Revelation 11 19 Revelation 12 18 Revelation 13 18 Revelation 14 20 Revelation 15 8 Revelation 16 21 Revelation 17 18 Revelation 18 24 Revelation 19 21 Revelation 20 15 Revelation 21 27 Revelation 22 21 bibledit-gtk-4.9/templates/versification_staten_bible.xml000664 000766 000024 00000307462 12221507126 024167 0ustar00teusstaff000000 000000 Genesis 1 31 Genesis 2 25 Genesis 3 24 Genesis 4 26 Genesis 5 32 Genesis 6 22 Genesis 7 24 Genesis 8 22 Genesis 9 29 Genesis 10 32 Genesis 11 32 Genesis 12 20 Genesis 13 18 Genesis 14 24 Genesis 15 21 Genesis 16 16 Genesis 17 27 Genesis 18 33 Genesis 19 38 Genesis 20 18 Genesis 21 34 Genesis 22 24 Genesis 23 20 Genesis 24 67 Genesis 25 34 Genesis 26 35 Genesis 27 46 Genesis 28 22 Genesis 29 35 Genesis 30 43 Genesis 31 55 Genesis 32 32 Genesis 33 20 Genesis 34 31 Genesis 35 29 Genesis 36 43 Genesis 37 36 Genesis 38 30 Genesis 39 23 Genesis 40 23 Genesis 41 57 Genesis 42 38 Genesis 43 34 Genesis 44 34 Genesis 45 28 Genesis 46 34 Genesis 47 31 Genesis 48 22 Genesis 49 33 Genesis 50 26 Exodus 1 22 Exodus 2 25 Exodus 3 22 Exodus 4 31 Exodus 5 24 Exodus 6 29 Exodus 7 25 Exodus 8 32 Exodus 9 35 Exodus 10 29 Exodus 11 10 Exodus 12 51 Exodus 13 22 Exodus 14 31 Exodus 15 27 Exodus 16 36 Exodus 17 16 Exodus 18 27 Exodus 19 25 Exodus 20 26 Exodus 21 36 Exodus 22 31 Exodus 23 33 Exodus 24 18 Exodus 25 40 Exodus 26 37 Exodus 27 21 Exodus 28 43 Exodus 29 46 Exodus 30 38 Exodus 31 18 Exodus 32 35 Exodus 33 23 Exodus 34 35 Exodus 35 35 Exodus 36 38 Exodus 37 29 Exodus 38 31 Exodus 39 43 Exodus 40 38 Leviticus 1 17 Leviticus 2 16 Leviticus 3 17 Leviticus 4 35 Leviticus 5 19 Leviticus 6 30 Leviticus 7 38 Leviticus 8 36 Leviticus 9 24 Leviticus 10 20 Leviticus 11 47 Leviticus 12 8 Leviticus 13 59 Leviticus 14 57 Leviticus 15 33 Leviticus 16 34 Leviticus 17 16 Leviticus 18 30 Leviticus 19 37 Leviticus 20 27 Leviticus 21 24 Leviticus 22 33 Leviticus 23 44 Leviticus 24 23 Leviticus 25 55 Leviticus 26 46 Leviticus 27 34 Numbers 1 54 Numbers 2 34 Numbers 3 51 Numbers 4 49 Numbers 5 31 Numbers 6 27 Numbers 7 89 Numbers 8 26 Numbers 9 23 Numbers 10 36 Numbers 11 35 Numbers 12 16 Numbers 13 33 Numbers 14 45 Numbers 15 41 Numbers 16 50 Numbers 17 13 Numbers 18 32 Numbers 19 22 Numbers 20 29 Numbers 21 35 Numbers 22 41 Numbers 23 30 Numbers 24 25 Numbers 25 18 Numbers 26 65 Numbers 27 23 Numbers 28 31 Numbers 29 40 Numbers 30 16 Numbers 31 54 Numbers 32 42 Numbers 33 56 Numbers 34 29 Numbers 35 34 Numbers 36 13 Deuteronomy 1 46 Deuteronomy 2 37 Deuteronomy 3 29 Deuteronomy 4 49 Deuteronomy 5 33 Deuteronomy 6 25 Deuteronomy 7 26 Deuteronomy 8 20 Deuteronomy 9 29 Deuteronomy 10 22 Deuteronomy 11 32 Deuteronomy 12 32 Deuteronomy 13 18 Deuteronomy 14 29 Deuteronomy 15 23 Deuteronomy 16 22 Deuteronomy 17 20 Deuteronomy 18 22 Deuteronomy 19 21 Deuteronomy 20 20 Deuteronomy 21 23 Deuteronomy 22 30 Deuteronomy 23 25 Deuteronomy 24 22 Deuteronomy 25 19 Deuteronomy 26 19 Deuteronomy 27 26 Deuteronomy 28 68 Deuteronomy 29 29 Deuteronomy 30 20 Deuteronomy 31 30 Deuteronomy 32 52 Deuteronomy 33 29 Deuteronomy 34 12 Joshua 1 18 Joshua 2 24 Joshua 3 17 Joshua 4 24 Joshua 5 15 Joshua 6 27 Joshua 7 26 Joshua 8 35 Joshua 9 27 Joshua 10 43 Joshua 11 23 Joshua 12 24 Joshua 13 33 Joshua 14 15 Joshua 15 63 Joshua 16 10 Joshua 17 18 Joshua 18 28 Joshua 19 51 Joshua 20 9 Joshua 21 45 Joshua 22 34 Joshua 23 16 Joshua 24 33 Judges 1 36 Judges 2 23 Judges 3 31 Judges 4 24 Judges 5 31 Judges 6 40 Judges 7 25 Judges 8 35 Judges 9 57 Judges 10 18 Judges 11 40 Judges 12 15 Judges 13 25 Judges 14 20 Judges 15 20 Judges 16 31 Judges 17 13 Judges 18 31 Judges 19 30 Judges 20 48 Judges 21 25 Ruth 1 22 Ruth 2 23 Ruth 3 18 Ruth 4 22 1 Samuel 1 28 1 Samuel 2 36 1 Samuel 3 21 1 Samuel 4 22 1 Samuel 5 12 1 Samuel 6 21 1 Samuel 7 17 1 Samuel 8 22 1 Samuel 9 27 1 Samuel 10 27 1 Samuel 11 15 1 Samuel 12 25 1 Samuel 13 23 1 Samuel 14 52 1 Samuel 15 35 1 Samuel 16 23 1 Samuel 17 58 1 Samuel 18 30 1 Samuel 19 24 1 Samuel 20 43 1 Samuel 21 15 1 Samuel 22 23 1 Samuel 23 28 1 Samuel 24 23 1 Samuel 25 44 1 Samuel 26 25 1 Samuel 27 12 1 Samuel 28 25 1 Samuel 29 11 1 Samuel 30 31 1 Samuel 31 13 2 Samuel 1 27 2 Samuel 2 32 2 Samuel 3 39 2 Samuel 4 12 2 Samuel 5 25 2 Samuel 6 23 2 Samuel 7 29 2 Samuel 8 18 2 Samuel 9 13 2 Samuel 10 19 2 Samuel 11 27 2 Samuel 12 31 2 Samuel 13 39 2 Samuel 14 33 2 Samuel 15 37 2 Samuel 16 23 2 Samuel 17 29 2 Samuel 18 33 2 Samuel 19 43 2 Samuel 20 26 2 Samuel 21 22 2 Samuel 22 51 2 Samuel 23 39 2 Samuel 24 25 1 Kings 1 53 1 Kings 2 46 1 Kings 3 28 1 Kings 4 34 1 Kings 5 18 1 Kings 6 38 1 Kings 7 51 1 Kings 8 66 1 Kings 9 28 1 Kings 10 29 1 Kings 11 43 1 Kings 12 33 1 Kings 13 34 1 Kings 14 31 1 Kings 15 34 1 Kings 16 34 1 Kings 17 24 1 Kings 18 46 1 Kings 19 21 1 Kings 20 43 1 Kings 21 29 1 Kings 22 54 2 Kings 1 18 2 Kings 2 25 2 Kings 3 27 2 Kings 4 44 2 Kings 5 27 2 Kings 6 33 2 Kings 7 20 2 Kings 8 29 2 Kings 9 37 2 Kings 10 36 2 Kings 11 21 2 Kings 12 21 2 Kings 13 25 2 Kings 14 29 2 Kings 15 38 2 Kings 16 20 2 Kings 17 41 2 Kings 18 37 2 Kings 19 37 2 Kings 20 21 2 Kings 21 26 2 Kings 22 20 2 Kings 23 37 2 Kings 24 20 2 Kings 25 30 1 Chronicles 1 54 1 Chronicles 2 55 1 Chronicles 3 24 1 Chronicles 4 43 1 Chronicles 5 26 1 Chronicles 6 81 1 Chronicles 7 40 1 Chronicles 8 40 1 Chronicles 9 44 1 Chronicles 10 14 1 Chronicles 11 47 1 Chronicles 12 40 1 Chronicles 13 14 1 Chronicles 14 17 1 Chronicles 15 29 1 Chronicles 16 43 1 Chronicles 17 27 1 Chronicles 18 17 1 Chronicles 19 19 1 Chronicles 20 8 1 Chronicles 21 30 1 Chronicles 22 19 1 Chronicles 23 32 1 Chronicles 24 31 1 Chronicles 25 31 1 Chronicles 26 32 1 Chronicles 27 34 1 Chronicles 28 21 1 Chronicles 29 30 2 Chronicles 1 17 2 Chronicles 2 18 2 Chronicles 3 17 2 Chronicles 4 22 2 Chronicles 5 14 2 Chronicles 6 42 2 Chronicles 7 22 2 Chronicles 8 18 2 Chronicles 9 31 2 Chronicles 10 19 2 Chronicles 11 23 2 Chronicles 12 16 2 Chronicles 13 22 2 Chronicles 14 15 2 Chronicles 15 19 2 Chronicles 16 14 2 Chronicles 17 19 2 Chronicles 18 34 2 Chronicles 19 11 2 Chronicles 20 37 2 Chronicles 21 20 2 Chronicles 22 12 2 Chronicles 23 21 2 Chronicles 24 27 2 Chronicles 25 28 2 Chronicles 26 23 2 Chronicles 27 9 2 Chronicles 28 27 2 Chronicles 29 36 2 Chronicles 30 27 2 Chronicles 31 21 2 Chronicles 32 33 2 Chronicles 33 25 2 Chronicles 34 33 2 Chronicles 35 27 2 Chronicles 36 23 Ezra 1 11 Ezra 2 70 Ezra 3 13 Ezra 4 24 Ezra 5 17 Ezra 6 22 Ezra 7 28 Ezra 8 36 Ezra 9 15 Ezra 10 44 Nehemiah 1 11 Nehemiah 2 20 Nehemiah 3 32 Nehemiah 4 23 Nehemiah 5 19 Nehemiah 6 19 Nehemiah 7 73 Nehemiah 8 19 Nehemiah 9 38 Nehemiah 10 39 Nehemiah 11 36 Nehemiah 12 47 Nehemiah 13 31 Esther 1 22 Esther 2 23 Esther 3 15 Esther 4 17 Esther 5 14 Esther 6 14 Esther 7 10 Esther 8 17 Esther 9 32 Esther 10 3 Job 1 22 Job 2 13 Job 3 26 Job 4 21 Job 5 27 Job 6 30 Job 7 21 Job 8 22 Job 9 35 Job 10 22 Job 11 20 Job 12 25 Job 13 28 Job 14 22 Job 15 35 Job 16 22 Job 17 16 Job 18 21 Job 19 29 Job 20 29 Job 21 34 Job 22 30 Job 23 17 Job 24 25 Job 25 6 Job 26 14 Job 27 23 Job 28 28 Job 29 25 Job 30 31 Job 31 40 Job 32 22 Job 33 33 Job 34 37 Job 35 16 Job 36 33 Job 37 24 Job 38 38 Job 39 38 Job 40 28 Job 41 25 Job 42 17 Psalms 1 6 Psalms 2 12 Psalms 3 9 Psalms 4 9 Psalms 5 13 Psalms 6 11 Psalms 7 18 Psalms 8 10 Psalms 9 21 Psalms 10 18 Psalms 11 7 Psalms 12 9 Psalms 13 6 Psalms 14 7 Psalms 15 5 Psalms 16 11 Psalms 17 15 Psalms 18 51 Psalms 19 15 Psalms 20 10 Psalms 21 14 Psalms 22 32 Psalms 23 6 Psalms 24 10 Psalms 25 22 Psalms 26 12 Psalms 27 14 Psalms 28 9 Psalms 29 11 Psalms 30 13 Psalms 31 25 Psalms 32 11 Psalms 33 22 Psalms 34 23 Psalms 35 28 Psalms 36 13 Psalms 37 40 Psalms 38 23 Psalms 39 14 Psalms 40 18 Psalms 41 14 Psalms 42 12 Psalms 43 5 Psalms 44 27 Psalms 45 18 Psalms 46 12 Psalms 47 10 Psalms 48 15 Psalms 49 21 Psalms 50 23 Psalms 51 21 Psalms 52 11 Psalms 53 7 Psalms 54 9 Psalms 55 24 Psalms 56 14 Psalms 57 12 Psalms 58 12 Psalms 59 18 Psalms 60 14 Psalms 61 9 Psalms 62 13 Psalms 63 12 Psalms 64 11 Psalms 65 14 Psalms 66 20 Psalms 67 8 Psalms 68 36 Psalms 69 37 Psalms 70 6 Psalms 71 24 Psalms 72 20 Psalms 73 28 Psalms 74 23 Psalms 75 11 Psalms 76 13 Psalms 77 21 Psalms 78 72 Psalms 79 13 Psalms 80 20 Psalms 81 17 Psalms 82 8 Psalms 83 19 Psalms 84 13 Psalms 85 14 Psalms 86 17 Psalms 87 7 Psalms 88 19 Psalms 89 53 Psalms 90 17 Psalms 91 16 Psalms 92 16 Psalms 93 5 Psalms 94 23 Psalms 95 11 Psalms 96 13 Psalms 97 12 Psalms 98 9 Psalms 99 9 Psalms 100 5 Psalms 101 8 Psalms 102 29 Psalms 103 22 Psalms 104 35 Psalms 105 45 Psalms 106 48 Psalms 107 43 Psalms 108 14 Psalms 109 31 Psalms 110 7 Psalms 111 10 Psalms 112 10 Psalms 113 9 Psalms 114 8 Psalms 115 18 Psalms 116 19 Psalms 117 2 Psalms 118 29 Psalms 119 176 Psalms 120 7 Psalms 121 8 Psalms 122 9 Psalms 123 4 Psalms 124 8 Psalms 125 5 Psalms 126 6 Psalms 127 5 Psalms 128 6 Psalms 129 8 Psalms 130 8 Psalms 131 3 Psalms 132 18 Psalms 133 3 Psalms 134 3 Psalms 135 21 Psalms 136 26 Psalms 137 9 Psalms 138 8 Psalms 139 24 Psalms 140 14 Psalms 141 10 Psalms 142 8 Psalms 143 12 Psalms 144 15 Psalms 145 21 Psalms 146 10 Psalms 147 20 Psalms 148 14 Psalms 149 9 Psalms 150 6 Proverbs 1 33 Proverbs 2 22 Proverbs 3 35 Proverbs 4 27 Proverbs 5 23 Proverbs 6 35 Proverbs 7 27 Proverbs 8 36 Proverbs 9 18 Proverbs 10 32 Proverbs 11 31 Proverbs 12 28 Proverbs 13 25 Proverbs 14 35 Proverbs 15 33 Proverbs 16 33 Proverbs 17 28 Proverbs 18 24 Proverbs 19 29 Proverbs 20 30 Proverbs 21 31 Proverbs 22 29 Proverbs 23 35 Proverbs 24 34 Proverbs 25 28 Proverbs 26 28 Proverbs 27 27 Proverbs 28 28 Proverbs 29 27 Proverbs 30 33 Proverbs 31 31 Ecclesiastes 1 18 Ecclesiastes 2 26 Ecclesiastes 3 22 Ecclesiastes 4 17 Ecclesiastes 5 19 Ecclesiastes 6 12 Ecclesiastes 7 29 Ecclesiastes 8 17 Ecclesiastes 9 18 Ecclesiastes 10 20 Ecclesiastes 11 10 Ecclesiastes 12 14 Song of Solomon 1 17 Song of Solomon 2 17 Song of Solomon 3 11 Song of Solomon 4 16 Song of Solomon 5 16 Song of Solomon 6 13 Song of Solomon 7 13 Song of Solomon 8 14 Isaiah 1 31 Isaiah 2 22 Isaiah 3 26 Isaiah 4 6 Isaiah 5 30 Isaiah 6 13 Isaiah 7 25 Isaiah 8 23 Isaiah 9 20 Isaiah 10 34 Isaiah 11 16 Isaiah 12 6 Isaiah 13 22 Isaiah 14 32 Isaiah 15 9 Isaiah 16 14 Isaiah 17 14 Isaiah 18 7 Isaiah 19 25 Isaiah 20 6 Isaiah 21 17 Isaiah 22 25 Isaiah 23 18 Isaiah 24 23 Isaiah 25 12 Isaiah 26 21 Isaiah 27 13 Isaiah 28 29 Isaiah 29 24 Isaiah 30 33 Isaiah 31 9 Isaiah 32 20 Isaiah 33 24 Isaiah 34 17 Isaiah 35 10 Isaiah 36 22 Isaiah 37 38 Isaiah 38 22 Isaiah 39 8 Isaiah 40 31 Isaiah 41 29 Isaiah 42 25 Isaiah 43 28 Isaiah 44 28 Isaiah 45 25 Isaiah 46 13 Isaiah 47 15 Isaiah 48 22 Isaiah 49 26 Isaiah 50 11 Isaiah 51 23 Isaiah 52 15 Isaiah 53 12 Isaiah 54 17 Isaiah 55 13 Isaiah 56 12 Isaiah 57 21 Isaiah 58 14 Isaiah 59 21 Isaiah 60 22 Isaiah 61 11 Isaiah 62 12 Isaiah 63 19 Isaiah 64 12 Isaiah 65 25 Isaiah 66 24 Jeremiah 1 19 Jeremiah 2 37 Jeremiah 3 25 Jeremiah 4 31 Jeremiah 5 31 Jeremiah 6 30 Jeremiah 7 34 Jeremiah 8 22 Jeremiah 9 26 Jeremiah 10 25 Jeremiah 11 23 Jeremiah 12 17 Jeremiah 13 27 Jeremiah 14 22 Jeremiah 15 21 Jeremiah 16 21 Jeremiah 17 27 Jeremiah 18 23 Jeremiah 19 15 Jeremiah 20 18 Jeremiah 21 14 Jeremiah 22 30 Jeremiah 23 40 Jeremiah 24 10 Jeremiah 25 38 Jeremiah 26 24 Jeremiah 27 22 Jeremiah 28 17 Jeremiah 29 32 Jeremiah 30 24 Jeremiah 31 40 Jeremiah 32 44 Jeremiah 33 26 Jeremiah 34 22 Jeremiah 35 19 Jeremiah 36 32 Jeremiah 37 21 Jeremiah 38 28 Jeremiah 39 18 Jeremiah 40 16 Jeremiah 41 18 Jeremiah 42 22 Jeremiah 43 13 Jeremiah 44 30 Jeremiah 45 5 Jeremiah 46 28 Jeremiah 47 7 Jeremiah 48 47 Jeremiah 49 39 Jeremiah 50 46 Jeremiah 51 64 Jeremiah 52 34 Lamentations 1 22 Lamentations 2 22 Lamentations 3 66 Lamentations 4 22 Lamentations 5 22 Ezekiel 1 28 Ezekiel 2 10 Ezekiel 3 27 Ezekiel 4 17 Ezekiel 5 17 Ezekiel 6 14 Ezekiel 7 27 Ezekiel 8 18 Ezekiel 9 11 Ezekiel 10 22 Ezekiel 11 25 Ezekiel 12 28 Ezekiel 13 23 Ezekiel 14 23 Ezekiel 15 8 Ezekiel 16 63 Ezekiel 17 24 Ezekiel 18 32 Ezekiel 19 14 Ezekiel 20 49 Ezekiel 21 32 Ezekiel 22 31 Ezekiel 23 49 Ezekiel 24 27 Ezekiel 25 17 Ezekiel 26 21 Ezekiel 27 36 Ezekiel 28 26 Ezekiel 29 21 Ezekiel 30 26 Ezekiel 31 18 Ezekiel 32 32 Ezekiel 33 33 Ezekiel 34 31 Ezekiel 35 15 Ezekiel 36 38 Ezekiel 37 28 Ezekiel 38 23 Ezekiel 39 29 Ezekiel 40 49 Ezekiel 41 26 Ezekiel 42 20 Ezekiel 43 27 Ezekiel 44 31 Ezekiel 45 25 Ezekiel 46 24 Ezekiel 47 23 Ezekiel 48 35 Daniel 1 21 Daniel 2 49 Daniel 3 30 Daniel 4 37 Daniel 5 30 Daniel 6 29 Daniel 7 28 Daniel 8 27 Daniel 9 27 Daniel 10 21 Daniel 11 45 Daniel 12 13 Hosea 1 12 Hosea 2 22 Hosea 3 5 Hosea 4 19 Hosea 5 15 Hosea 6 11 Hosea 7 16 Hosea 8 14 Hosea 9 17 Hosea 10 15 Hosea 11 11 Hosea 12 15 Hosea 13 15 Hosea 14 10 Joel 1 20 Joel 2 32 Joel 3 21 Amos 1 15 Amos 2 16 Amos 3 15 Amos 4 13 Amos 5 27 Amos 6 14 Amos 7 17 Amos 8 14 Amos 9 15 Obadiah 1 21 Jonah 1 17 Jonah 2 10 Jonah 3 10 Jonah 4 11 Micah 1 16 Micah 2 13 Micah 3 12 Micah 4 14 Micah 5 14 Micah 6 16 Micah 7 20 Nahum 1 15 Nahum 2 13 Nahum 3 19 Habakkuk 1 17 Habakkuk 2 20 Habakkuk 3 19 Zephaniah 1 18 Zephaniah 2 15 Zephaniah 3 20 Haggai 1 14 Haggai 2 24 Zechariah 1 21 Zechariah 2 13 Zechariah 3 10 Zechariah 4 14 Zechariah 5 11 Zechariah 6 15 Zechariah 7 14 Zechariah 8 23 Zechariah 9 17 Zechariah 10 12 Zechariah 11 17 Zechariah 12 14 Zechariah 13 9 Zechariah 14 21 Malachi 1 14 Malachi 2 17 Malachi 3 18 Malachi 4 6 Matthew 1 25 Matthew 2 23 Matthew 3 17 Matthew 4 25 Matthew 5 48 Matthew 6 34 Matthew 7 29 Matthew 8 34 Matthew 9 38 Matthew 10 42 Matthew 11 30 Matthew 12 50 Matthew 13 58 Matthew 14 36 Matthew 15 39 Matthew 16 28 Matthew 17 27 Matthew 18 35 Matthew 19 30 Matthew 20 34 Matthew 21 46 Matthew 22 46 Matthew 23 39 Matthew 24 51 Matthew 25 46 Matthew 26 75 Matthew 27 66 Matthew 28 20 Mark 1 45 Mark 2 28 Mark 3 35 Mark 4 41 Mark 5 43 Mark 6 56 Mark 7 37 Mark 8 38 Mark 9 50 Mark 10 52 Mark 11 33 Mark 12 44 Mark 13 37 Mark 14 72 Mark 15 47 Mark 16 20 Luke 1 80 Luke 2 52 Luke 3 38 Luke 4 44 Luke 5 39 Luke 6 49 Luke 7 50 Luke 8 56 Luke 9 62 Luke 10 42 Luke 11 54 Luke 12 59 Luke 13 35 Luke 14 35 Luke 15 32 Luke 16 31 Luke 17 37 Luke 18 43 Luke 19 48 Luke 20 47 Luke 21 38 Luke 22 71 Luke 23 56 Luke 24 53 John 1 52 John 2 25 John 3 36 John 4 54 John 5 47 John 6 71 John 7 53 John 8 59 John 9 41 John 10 42 John 11 57 John 12 50 John 13 38 John 14 31 John 15 27 John 16 33 John 17 26 John 18 40 John 19 42 John 20 31 John 21 25 Acts 1 26 Acts 2 47 Acts 3 26 Acts 4 37 Acts 5 42 Acts 6 15 Acts 7 60 Acts 8 40 Acts 9 43 Acts 10 48 Acts 11 30 Acts 12 25 Acts 13 52 Acts 14 28 Acts 15 41 Acts 16 40 Acts 17 34 Acts 18 28 Acts 19 40 Acts 20 38 Acts 21 40 Acts 22 30 Acts 23 35 Acts 24 27 Acts 25 27 Acts 26 32 Acts 27 44 Acts 28 31 Romans 1 32 Romans 2 29 Romans 3 31 Romans 4 25 Romans 5 21 Romans 6 23 Romans 7 26 Romans 8 39 Romans 9 33 Romans 10 21 Romans 11 36 Romans 12 21 Romans 13 14 Romans 14 23 Romans 15 33 Romans 16 27 1 Corinthians 1 31 1 Corinthians 2 16 1 Corinthians 3 23 1 Corinthians 4 21 1 Corinthians 5 13 1 Corinthians 6 20 1 Corinthians 7 40 1 Corinthians 8 13 1 Corinthians 9 27 1 Corinthians 10 33 1 Corinthians 11 34 1 Corinthians 12 31 1 Corinthians 13 13 1 Corinthians 14 40 1 Corinthians 15 58 1 Corinthians 16 24 2 Corinthians 1 24 2 Corinthians 2 17 2 Corinthians 3 18 2 Corinthians 4 18 2 Corinthians 5 21 2 Corinthians 6 18 2 Corinthians 7 16 2 Corinthians 8 24 2 Corinthians 9 15 2 Corinthians 10 18 2 Corinthians 11 33 2 Corinthians 12 21 2 Corinthians 13 13 Galatians 1 24 Galatians 2 21 Galatians 3 29 Galatians 4 31 Galatians 5 26 Galatians 6 18 Ephesians 1 23 Ephesians 2 22 Ephesians 3 21 Ephesians 4 32 Ephesians 5 33 Ephesians 6 24 Philippians 1 30 Philippians 2 30 Philippians 3 21 Philippians 4 23 Colossians 1 29 Colossians 2 23 Colossians 3 25 Colossians 4 18 1 Thessalonians 1 10 1 Thessalonians 2 20 1 Thessalonians 3 13 1 Thessalonians 4 18 1 Thessalonians 5 28 2 Thessalonians 1 12 2 Thessalonians 2 17 2 Thessalonians 3 18 1 Timothy 1 20 1 Timothy 2 15 1 Timothy 3 16 1 Timothy 4 16 1 Timothy 5 25 1 Timothy 6 21 2 Timothy 1 18 2 Timothy 2 26 2 Timothy 3 17 2 Timothy 4 22 Titus 1 16 Titus 2 15 Titus 3 15 Philemon 1 25 Hebrews 1 14 Hebrews 2 18 Hebrews 3 19 Hebrews 4 16 Hebrews 5 14 Hebrews 6 20 Hebrews 7 28 Hebrews 8 13 Hebrews 9 28 Hebrews 10 39 Hebrews 11 40 Hebrews 12 29 Hebrews 13 25 James 1 27 James 2 26 James 3 18 James 4 17 James 5 20 1 Peter 1 25 1 Peter 2 25 1 Peter 3 22 1 Peter 4 19 1 Peter 5 14 2 Peter 1 21 2 Peter 2 22 2 Peter 3 18 1 John 1 10 1 John 2 29 1 John 3 24 1 John 4 21 1 John 5 21 2 John 1 13 3 John 1 15 Jude 1 25 Revelation 1 20 Revelation 2 29 Revelation 3 22 Revelation 4 11 Revelation 5 14 Revelation 6 17 Revelation 7 17 Revelation 8 13 Revelation 9 21 Revelation 10 11 Revelation 11 19 Revelation 12 18 Revelation 13 18 Revelation 14 20 Revelation 15 8 Revelation 16 21 Revelation 17 18 Revelation 18 24 Revelation 19 21 Revelation 20 15 Revelation 21 27 Revelation 22 21 bibledit-gtk-4.9/templates/versification_vulgate.xml000664 000766 000024 00000310733 12221507126 023176 0ustar00teusstaff000000 000000 Genesis 1 31 Genesis 2 25 Genesis 3 24 Genesis 4 26 Genesis 5 32 Genesis 6 22 Genesis 7 24 Genesis 8 22 Genesis 9 29 Genesis 10 32 Genesis 11 32 Genesis 12 20 Genesis 13 18 Genesis 14 24 Genesis 15 21 Genesis 16 16 Genesis 17 27 Genesis 18 33 Genesis 19 38 Genesis 20 18 Genesis 21 34 Genesis 22 24 Genesis 23 20 Genesis 24 67 Genesis 25 34 Genesis 26 35 Genesis 27 46 Genesis 28 22 Genesis 29 35 Genesis 30 43 Genesis 31 55 Genesis 32 32 Genesis 33 20 Genesis 34 31 Genesis 35 29 Genesis 36 43 Genesis 37 36 Genesis 38 30 Genesis 39 23 Genesis 40 23 Genesis 41 57 Genesis 42 38 Genesis 43 34 Genesis 44 34 Genesis 45 28 Genesis 46 34 Genesis 47 31 Genesis 48 22 Genesis 49 32 Genesis 50 25 Exodus 1 22 Exodus 2 25 Exodus 3 22 Exodus 4 31 Exodus 5 23 Exodus 6 30 Exodus 7 25 Exodus 8 32 Exodus 9 35 Exodus 10 29 Exodus 11 10 Exodus 12 51 Exodus 13 22 Exodus 14 31 Exodus 15 27 Exodus 16 36 Exodus 17 16 Exodus 18 27 Exodus 19 25 Exodus 20 26 Exodus 21 36 Exodus 22 31 Exodus 23 33 Exodus 24 18 Exodus 25 40 Exodus 26 37 Exodus 27 21 Exodus 28 43 Exodus 29 46 Exodus 30 38 Exodus 31 18 Exodus 32 35 Exodus 33 23 Exodus 34 35 Exodus 35 35 Exodus 36 38 Exodus 37 29 Exodus 38 31 Exodus 39 43 Exodus 40 36 Leviticus 1 17 Leviticus 2 16 Leviticus 3 17 Leviticus 4 35 Leviticus 5 19 Leviticus 6 30 Leviticus 7 38 Leviticus 8 36 Leviticus 9 24 Leviticus 10 20 Leviticus 11 47 Leviticus 12 8 Leviticus 13 59 Leviticus 14 57 Leviticus 15 33 Leviticus 16 34 Leviticus 17 16 Leviticus 18 30 Leviticus 19 37 Leviticus 20 27 Leviticus 21 24 Leviticus 22 33 Leviticus 23 44 Leviticus 24 23 Leviticus 25 55 Leviticus 26 45 Leviticus 27 34 Numbers 1 54 Numbers 2 34 Numbers 3 51 Numbers 4 49 Numbers 5 31 Numbers 6 27 Numbers 7 89 Numbers 8 26 Numbers 9 23 Numbers 10 36 Numbers 11 34 Numbers 12 15 Numbers 13 34 Numbers 14 45 Numbers 15 41 Numbers 16 50 Numbers 17 13 Numbers 18 32 Numbers 19 22 Numbers 20 30 Numbers 21 35 Numbers 22 41 Numbers 23 30 Numbers 24 25 Numbers 25 18 Numbers 26 65 Numbers 27 23 Numbers 28 31 Numbers 29 39 Numbers 30 17 Numbers 31 54 Numbers 32 42 Numbers 33 56 Numbers 34 29 Numbers 35 34 Numbers 36 13 Deuteronomy 1 46 Deuteronomy 2 37 Deuteronomy 3 29 Deuteronomy 4 49 Deuteronomy 5 33 Deuteronomy 6 25 Deuteronomy 7 26 Deuteronomy 8 20 Deuteronomy 9 29 Deuteronomy 10 22 Deuteronomy 11 32 Deuteronomy 12 32 Deuteronomy 13 18 Deuteronomy 14 29 Deuteronomy 15 23 Deuteronomy 16 22 Deuteronomy 17 20 Deuteronomy 18 22 Deuteronomy 19 21 Deuteronomy 20 20 Deuteronomy 21 23 Deuteronomy 22 30 Deuteronomy 23 25 Deuteronomy 24 22 Deuteronomy 25 19 Deuteronomy 26 19 Deuteronomy 27 26 Deuteronomy 28 68 Deuteronomy 29 29 Deuteronomy 30 20 Deuteronomy 31 30 Deuteronomy 32 52 Deuteronomy 33 29 Deuteronomy 34 12 Joshua 1 18 Joshua 2 24 Joshua 3 17 Joshua 4 25 Joshua 5 16 Joshua 6 27 Joshua 7 26 Joshua 8 35 Joshua 9 27 Joshua 10 43 Joshua 11 23 Joshua 12 24 Joshua 13 33 Joshua 14 15 Joshua 15 63 Joshua 16 10 Joshua 17 18 Joshua 18 28 Joshua 19 51 Joshua 20 9 Joshua 21 43 Joshua 22 34 Joshua 23 16 Joshua 24 33 Judges 1 36 Judges 2 23 Judges 3 31 Judges 4 24 Judges 5 32 Judges 6 40 Judges 7 25 Judges 8 35 Judges 9 57 Judges 10 18 Judges 11 40 Judges 12 15 Judges 13 25 Judges 14 20 Judges 15 20 Judges 16 31 Judges 17 13 Judges 18 31 Judges 19 30 Judges 20 48 Judges 21 24 Ruth 1 22 Ruth 2 23 Ruth 3 18 Ruth 4 22 1 Samuel 1 28 1 Samuel 2 36 1 Samuel 3 21 1 Samuel 4 22 1 Samuel 5 12 1 Samuel 6 21 1 Samuel 7 17 1 Samuel 8 22 1 Samuel 9 27 1 Samuel 10 27 1 Samuel 11 15 1 Samuel 12 25 1 Samuel 13 23 1 Samuel 14 52 1 Samuel 15 35 1 Samuel 16 23 1 Samuel 17 58 1 Samuel 18 30 1 Samuel 19 24 1 Samuel 20 43 1 Samuel 21 15 1 Samuel 22 23 1 Samuel 23 28 1 Samuel 24 23 1 Samuel 25 44 1 Samuel 26 25 1 Samuel 27 12 1 Samuel 28 25 1 Samuel 29 11 1 Samuel 30 31 1 Samuel 31 13 2 Samuel 1 27 2 Samuel 2 32 2 Samuel 3 39 2 Samuel 4 12 2 Samuel 5 25 2 Samuel 6 23 2 Samuel 7 29 2 Samuel 8 18 2 Samuel 9 13 2 Samuel 10 19 2 Samuel 11 27 2 Samuel 12 31 2 Samuel 13 39 2 Samuel 14 33 2 Samuel 15 37 2 Samuel 16 23 2 Samuel 17 29 2 Samuel 18 33 2 Samuel 19 43 2 Samuel 20 26 2 Samuel 21 22 2 Samuel 22 51 2 Samuel 23 39 2 Samuel 24 25 1 Kings 1 53 1 Kings 2 46 1 Kings 3 28 1 Kings 4 34 1 Kings 5 18 1 Kings 6 38 1 Kings 7 51 1 Kings 8 66 1 Kings 9 28 1 Kings 10 29 1 Kings 11 43 1 Kings 12 33 1 Kings 13 34 1 Kings 14 31 1 Kings 15 34 1 Kings 16 34 1 Kings 17 24 1 Kings 18 46 1 Kings 19 21 1 Kings 20 43 1 Kings 21 29 1 Kings 22 54 2 Kings 1 18 2 Kings 2 25 2 Kings 3 27 2 Kings 4 44 2 Kings 5 27 2 Kings 6 33 2 Kings 7 20 2 Kings 8 29 2 Kings 9 37 2 Kings 10 36 2 Kings 11 21 2 Kings 12 21 2 Kings 13 25 2 Kings 14 29 2 Kings 15 38 2 Kings 16 20 2 Kings 17 41 2 Kings 18 37 2 Kings 19 37 2 Kings 20 21 2 Kings 21 26 2 Kings 22 20 2 Kings 23 37 2 Kings 24 20 2 Kings 25 30 1 Chronicles 1 54 1 Chronicles 2 55 1 Chronicles 3 24 1 Chronicles 4 43 1 Chronicles 5 26 1 Chronicles 6 81 1 Chronicles 7 40 1 Chronicles 8 40 1 Chronicles 9 44 1 Chronicles 10 14 1 Chronicles 11 46 1 Chronicles 12 40 1 Chronicles 13 14 1 Chronicles 14 17 1 Chronicles 15 29 1 Chronicles 16 43 1 Chronicles 17 27 1 Chronicles 18 17 1 Chronicles 19 19 1 Chronicles 20 7 1 Chronicles 21 30 1 Chronicles 22 19 1 Chronicles 23 32 1 Chronicles 24 31 1 Chronicles 25 31 1 Chronicles 26 32 1 Chronicles 27 34 1 Chronicles 28 21 1 Chronicles 29 30 2 Chronicles 1 17 2 Chronicles 2 18 2 Chronicles 3 17 2 Chronicles 4 22 2 Chronicles 5 14 2 Chronicles 6 42 2 Chronicles 7 22 2 Chronicles 8 18 2 Chronicles 9 31 2 Chronicles 10 19 2 Chronicles 11 23 2 Chronicles 12 16 2 Chronicles 13 22 2 Chronicles 14 15 2 Chronicles 15 19 2 Chronicles 16 14 2 Chronicles 17 19 2 Chronicles 18 34 2 Chronicles 19 11 2 Chronicles 20 37 2 Chronicles 21 20 2 Chronicles 22 12 2 Chronicles 23 21 2 Chronicles 24 27 2 Chronicles 25 28 2 Chronicles 26 23 2 Chronicles 27 9 2 Chronicles 28 27 2 Chronicles 29 36 2 Chronicles 30 27 2 Chronicles 31 21 2 Chronicles 32 33 2 Chronicles 33 25 2 Chronicles 34 33 2 Chronicles 35 27 2 Chronicles 36 23 Ezra 1 11 Ezra 2 70 Ezra 3 13 Ezra 4 24 Ezra 5 17 Ezra 6 22 Ezra 7 28 Ezra 8 36 Ezra 9 15 Ezra 10 44 Nehemiah 1 11 Nehemiah 2 20 Nehemiah 3 31 Nehemiah 4 23 Nehemiah 5 19 Nehemiah 6 19 Nehemiah 7 73 Nehemiah 8 18 Nehemiah 9 38 Nehemiah 10 39 Nehemiah 11 36 Nehemiah 12 46 Nehemiah 13 31 Esther 1 22 Esther 2 23 Esther 3 15 Esther 4 17 Esther 5 14 Esther 6 14 Esther 7 10 Esther 8 17 Esther 9 32 Esther 10 13 Esther 11 12 Esther 12 6 Esther 13 18 Esther 14 19 Esther 15 19 Esther 16 24 Job 1 22 Job 2 13 Job 3 26 Job 4 21 Job 5 27 Job 6 30 Job 7 21 Job 8 22 Job 9 35 Job 10 22 Job 11 20 Job 12 25 Job 13 28 Job 14 22 Job 15 35 Job 16 23 Job 17 16 Job 18 21 Job 19 29 Job 20 29 Job 21 34 Job 22 30 Job 23 17 Job 24 25 Job 25 6 Job 26 14 Job 27 23 Job 28 28 Job 29 25 Job 30 31 Job 31 40 Job 32 22 Job 33 33 Job 34 37 Job 35 16 Job 36 33 Job 37 24 Job 38 41 Job 39 35 Job 40 28 Job 41 25 Job 42 16 Psalms 1 6 Psalms 2 13 Psalms 3 9 Psalms 4 10 Psalms 5 13 Psalms 6 11 Psalms 7 18 Psalms 8 10 Psalms 9 39 Psalms 10 8 Psalms 11 9 Psalms 12 6 Psalms 13 7 Psalms 14 5 Psalms 15 10 Psalms 16 15 Psalms 17 51 Psalms 18 15 Psalms 19 10 Psalms 20 14 Psalms 21 32 Psalms 22 6 Psalms 23 10 Psalms 24 22 Psalms 25 12 Psalms 26 14 Psalms 27 9 Psalms 28 11 Psalms 29 13 Psalms 30 25 Psalms 31 11 Psalms 32 22 Psalms 33 23 Psalms 34 28 Psalms 35 13 Psalms 36 40 Psalms 37 23 Psalms 38 14 Psalms 39 18 Psalms 40 14 Psalms 41 12 Psalms 42 5 Psalms 43 26 Psalms 44 18 Psalms 45 12 Psalms 46 10 Psalms 47 15 Psalms 48 21 Psalms 49 23 Psalms 50 21 Psalms 51 11 Psalms 52 7 Psalms 53 9 Psalms 54 24 Psalms 55 13 Psalms 56 12 Psalms 57 12 Psalms 58 18 Psalms 59 14 Psalms 60 9 Psalms 61 13 Psalms 62 12 Psalms 63 11 Psalms 64 14 Psalms 65 20 Psalms 66 8 Psalms 67 36 Psalms 68 37 Psalms 69 6 Psalms 70 24 Psalms 71 20 Psalms 72 28 Psalms 73 23 Psalms 74 11 Psalms 75 13 Psalms 76 21 Psalms 77 72 Psalms 78 13 Psalms 79 20 Psalms 80 17 Psalms 81 8 Psalms 82 19 Psalms 83 13 Psalms 84 14 Psalms 85 17 Psalms 86 7 Psalms 87 19 Psalms 88 53 Psalms 89 17 Psalms 90 16 Psalms 91 16 Psalms 92 5 Psalms 93 23 Psalms 94 11 Psalms 95 13 Psalms 96 12 Psalms 97 9 Psalms 98 9 Psalms 99 5 Psalms 100 8 Psalms 101 29 Psalms 102 22 Psalms 103 35 Psalms 104 45 Psalms 105 48 Psalms 106 43 Psalms 107 14 Psalms 108 31 Psalms 109 7 Psalms 110 10 Psalms 111 10 Psalms 112 9 Psalms 113 26 Psalms 114 9 Psalms 115 19 Psalms 116 2 Psalms 117 29 Psalms 118 176 Psalms 119 7 Psalms 120 8 Psalms 121 9 Psalms 122 4 Psalms 123 8 Psalms 124 5 Psalms 125 6 Psalms 126 5 Psalms 127 6 Psalms 128 8 Psalms 129 8 Psalms 130 3 Psalms 131 18 Psalms 132 3 Psalms 133 3 Psalms 134 21 Psalms 135 26 Psalms 136 9 Psalms 137 8 Psalms 138 24 Psalms 139 14 Psalms 140 10 Psalms 141 8 Psalms 142 12 Psalms 143 15 Psalms 144 21 Psalms 145 10 Psalms 146 11 Psalms 147 20 Psalms 148 14 Psalms 149 9 Psalms 150 6 Proverbs 1 33 Proverbs 2 22 Proverbs 3 35 Proverbs 4 27 Proverbs 5 23 Proverbs 6 35 Proverbs 7 27 Proverbs 8 36 Proverbs 9 18 Proverbs 10 32 Proverbs 11 31 Proverbs 12 28 Proverbs 13 25 Proverbs 14 35 Proverbs 15 33 Proverbs 16 33 Proverbs 17 28 Proverbs 18 24 Proverbs 19 29 Proverbs 20 30 Proverbs 21 31 Proverbs 22 29 Proverbs 23 35 Proverbs 24 34 Proverbs 25 28 Proverbs 26 28 Proverbs 27 27 Proverbs 28 28 Proverbs 29 27 Proverbs 30 33 Proverbs 31 31 Ecclesiastes 1 18 Ecclesiastes 2 26 Ecclesiastes 3 22 Ecclesiastes 4 17 Ecclesiastes 5 19 Ecclesiastes 6 11 Ecclesiastes 7 30 Ecclesiastes 8 17 Ecclesiastes 9 18 Ecclesiastes 10 20 Ecclesiastes 11 10 Ecclesiastes 12 14 Song of Solomon 1 16 Song of Solomon 2 17 Song of Solomon 3 11 Song of Solomon 4 16 Song of Solomon 5 17 Song of Solomon 6 12 Song of Solomon 7 13 Song of Solomon 8 14 Isaiah 1 31 Isaiah 2 22 Isaiah 3 26 Isaiah 4 6 Isaiah 5 30 Isaiah 6 13 Isaiah 7 25 Isaiah 8 22 Isaiah 9 21 Isaiah 10 34 Isaiah 11 16 Isaiah 12 6 Isaiah 13 22 Isaiah 14 32 Isaiah 15 9 Isaiah 16 14 Isaiah 17 14 Isaiah 18 7 Isaiah 19 25 Isaiah 20 6 Isaiah 21 17 Isaiah 22 25 Isaiah 23 18 Isaiah 24 23 Isaiah 25 12 Isaiah 26 21 Isaiah 27 13 Isaiah 28 29 Isaiah 29 24 Isaiah 30 33 Isaiah 31 9 Isaiah 32 20 Isaiah 33 24 Isaiah 34 17 Isaiah 35 10 Isaiah 36 22 Isaiah 37 38 Isaiah 38 22 Isaiah 39 8 Isaiah 40 31 Isaiah 41 29 Isaiah 42 25 Isaiah 43 28 Isaiah 44 28 Isaiah 45 25 Isaiah 46 13 Isaiah 47 15 Isaiah 48 22 Isaiah 49 26 Isaiah 50 11 Isaiah 51 23 Isaiah 52 15 Isaiah 53 12 Isaiah 54 17 Isaiah 55 13 Isaiah 56 12 Isaiah 57 21 Isaiah 58 14 Isaiah 59 21 Isaiah 60 22 Isaiah 61 11 Isaiah 62 12 Isaiah 63 19 Isaiah 64 12 Isaiah 65 25 Isaiah 66 24 Jeremiah 1 19 Jeremiah 2 37 Jeremiah 3 25 Jeremiah 4 31 Jeremiah 5 31 Jeremiah 6 30 Jeremiah 7 34 Jeremiah 8 22 Jeremiah 9 26 Jeremiah 10 25 Jeremiah 11 23 Jeremiah 12 17 Jeremiah 13 27 Jeremiah 14 22 Jeremiah 15 21 Jeremiah 16 21 Jeremiah 17 27 Jeremiah 18 23 Jeremiah 19 15 Jeremiah 20 18 Jeremiah 21 14 Jeremiah 22 30 Jeremiah 23 40 Jeremiah 24 10 Jeremiah 25 38 Jeremiah 26 24 Jeremiah 27 22 Jeremiah 28 17 Jeremiah 29 32 Jeremiah 30 24 Jeremiah 31 40 Jeremiah 32 44 Jeremiah 33 26 Jeremiah 34 22 Jeremiah 35 19 Jeremiah 36 32 Jeremiah 37 20 Jeremiah 38 28 Jeremiah 39 18 Jeremiah 40 16 Jeremiah 41 18 Jeremiah 42 22 Jeremiah 43 13 Jeremiah 44 30 Jeremiah 45 5 Jeremiah 46 28 Jeremiah 47 7 Jeremiah 48 47 Jeremiah 49 39 Jeremiah 50 46 Jeremiah 51 64 Jeremiah 52 34 Lamentations 1 22 Lamentations 2 22 Lamentations 3 66 Lamentations 4 22 Lamentations 5 22 Ezekiel 1 28 Ezekiel 2 9 Ezekiel 3 27 Ezekiel 4 17 Ezekiel 5 17 Ezekiel 6 14 Ezekiel 7 27 Ezekiel 8 18 Ezekiel 9 11 Ezekiel 10 22 Ezekiel 11 25 Ezekiel 12 28 Ezekiel 13 23 Ezekiel 14 23 Ezekiel 15 8 Ezekiel 16 63 Ezekiel 17 24 Ezekiel 18 32 Ezekiel 19 14 Ezekiel 20 49 Ezekiel 21 32 Ezekiel 22 31 Ezekiel 23 49 Ezekiel 24 27 Ezekiel 25 17 Ezekiel 26 21 Ezekiel 27 36 Ezekiel 28 26 Ezekiel 29 21 Ezekiel 30 26 Ezekiel 31 18 Ezekiel 32 32 Ezekiel 33 33 Ezekiel 34 31 Ezekiel 35 15 Ezekiel 36 38 Ezekiel 37 28 Ezekiel 38 23 Ezekiel 39 29 Ezekiel 40 49 Ezekiel 41 26 Ezekiel 42 20 Ezekiel 43 27 Ezekiel 44 31 Ezekiel 45 25 Ezekiel 46 24 Ezekiel 47 23 Ezekiel 48 35 Daniel 1 21 Daniel 2 49 Daniel 3 100 Daniel 4 34 Daniel 5 31 Daniel 6 28 Daniel 7 28 Daniel 8 27 Daniel 9 27 Daniel 10 21 Daniel 11 45 Daniel 12 13 Daniel 13 65 Daniel 14 41 Hosea 1 11 Hosea 2 24 Hosea 3 5 Hosea 4 19 Hosea 5 15 Hosea 6 11 Hosea 7 16 Hosea 8 14 Hosea 9 17 Hosea 10 15 Hosea 11 12 Hosea 12 14 Hosea 13 15 Hosea 14 10 Joel 1 20 Joel 2 32 Joel 3 21 Amos 1 15 Amos 2 16 Amos 3 15 Amos 4 13 Amos 5 27 Amos 6 15 Amos 7 17 Amos 8 14 Amos 9 15 Obadiah 1 21 Jonah 1 16 Jonah 2 11 Jonah 3 10 Jonah 4 11 Micah 1 16 Micah 2 13 Micah 3 12 Micah 4 13 Micah 5 14 Micah 6 16 Micah 7 20 Nahum 1 15 Nahum 2 13 Nahum 3 19 Habakkuk 1 17 Habakkuk 2 20 Habakkuk 3 19 Zephaniah 1 18 Zephaniah 2 15 Zephaniah 3 20 Haggai 1 14 Haggai 2 24 Zechariah 1 21 Zechariah 2 13 Zechariah 3 10 Zechariah 4 14 Zechariah 5 11 Zechariah 6 15 Zechariah 7 14 Zechariah 8 23 Zechariah 9 17 Zechariah 10 12 Zechariah 11 17 Zechariah 12 14 Zechariah 13 9 Zechariah 14 21 Malachi 1 14 Malachi 2 17 Malachi 3 18 Malachi 4 6 Matthew 1 25 Matthew 2 23 Matthew 3 17 Matthew 4 25 Matthew 5 48 Matthew 6 34 Matthew 7 29 Matthew 8 34 Matthew 9 38 Matthew 10 42 Matthew 11 30 Matthew 12 50 Matthew 13 58 Matthew 14 36 Matthew 15 39 Matthew 16 28 Matthew 17 26 Matthew 18 35 Matthew 19 30 Matthew 20 34 Matthew 21 46 Matthew 22 46 Matthew 23 39 Matthew 24 51 Matthew 25 46 Matthew 26 75 Matthew 27 66 Matthew 28 20 Mark 1 45 Mark 2 28 Mark 3 35 Mark 4 40 Mark 5 43 Mark 6 56 Mark 7 37 Mark 8 39 Mark 9 49 Mark 10 52 Mark 11 33 Mark 12 44 Mark 13 37 Mark 14 72 Mark 15 47 Mark 16 20 Luke 1 80 Luke 2 52 Luke 3 38 Luke 4 44 Luke 5 39 Luke 6 49 Luke 7 50 Luke 8 56 Luke 9 62 Luke 10 42 Luke 11 54 Luke 12 59 Luke 13 35 Luke 14 35 Luke 15 32 Luke 16 31 Luke 17 37 Luke 18 43 Luke 19 48 Luke 20 47 Luke 21 38 Luke 22 71 Luke 23 56 Luke 24 53 John 1 51 John 2 25 John 3 36 John 4 54 John 5 47 John 6 72 John 7 53 John 8 59 John 9 41 John 10 42 John 11 57 John 12 50 John 13 38 John 14 31 John 15 27 John 16 33 John 17 26 John 18 40 John 19 42 John 20 31 John 21 25 Acts 1 26 Acts 2 47 Acts 3 26 Acts 4 37 Acts 5 42 Acts 6 15 Acts 7 59 Acts 8 40 Acts 9 43 Acts 10 48 Acts 11 30 Acts 12 25 Acts 13 52 Acts 14 27 Acts 15 41 Acts 16 40 Acts 17 34 Acts 18 28 Acts 19 40 Acts 20 38 Acts 21 40 Acts 22 30 Acts 23 35 Acts 24 27 Acts 25 27 Acts 26 32 Acts 27 44 Acts 28 31 Romans 1 32 Romans 2 29 Romans 3 31 Romans 4 25 Romans 5 21 Romans 6 23 Romans 7 25 Romans 8 39 Romans 9 33 Romans 10 21 Romans 11 36 Romans 12 21 Romans 13 14 Romans 14 23 Romans 15 33 Romans 16 27 1 Corinthians 1 31 1 Corinthians 2 16 1 Corinthians 3 23 1 Corinthians 4 21 1 Corinthians 5 13 1 Corinthians 6 20 1 Corinthians 7 40 1 Corinthians 8 13 1 Corinthians 9 27 1 Corinthians 10 33 1 Corinthians 11 34 1 Corinthians 12 31 1 Corinthians 13 13 1 Corinthians 14 40 1 Corinthians 15 58 1 Corinthians 16 24 2 Corinthians 1 24 2 Corinthians 2 17 2 Corinthians 3 18 2 Corinthians 4 18 2 Corinthians 5 21 2 Corinthians 6 18 2 Corinthians 7 16 2 Corinthians 8 24 2 Corinthians 9 15 2 Corinthians 10 18 2 Corinthians 11 33 2 Corinthians 12 21 2 Corinthians 13 13 Galatians 1 24 Galatians 2 21 Galatians 3 29 Galatians 4 31 Galatians 5 26 Galatians 6 18 Ephesians 1 23 Ephesians 2 22 Ephesians 3 21 Ephesians 4 32 Ephesians 5 33 Ephesians 6 24 Philippians 1 30 Philippians 2 30 Philippians 3 21 Philippians 4 23 Colossians 1 29 Colossians 2 23 Colossians 3 25 Colossians 4 18 1 Thessalonians 1 10 1 Thessalonians 2 20 1 Thessalonians 3 13 1 Thessalonians 4 18 1 Thessalonians 5 28 2 Thessalonians 1 12 2 Thessalonians 2 17 2 Thessalonians 3 18 1 Timothy 1 20 1 Timothy 2 15 1 Timothy 3 16 1 Timothy 4 16 1 Timothy 5 25 1 Timothy 6 21 2 Timothy 1 18 2 Timothy 2 26 2 Timothy 3 17 2 Timothy 4 22 Titus 1 16 Titus 2 15 Titus 3 15 Philemon 1 25 Hebrews 1 14 Hebrews 2 18 Hebrews 3 19 Hebrews 4 16 Hebrews 5 14 Hebrews 6 20 Hebrews 7 28 Hebrews 8 13 Hebrews 9 28 Hebrews 10 39 Hebrews 11 40 Hebrews 12 29 Hebrews 13 25 James 1 27 James 2 26 James 3 18 James 4 17 James 5 20 1 Peter 1 25 1 Peter 2 25 1 Peter 3 22 1 Peter 4 19 1 Peter 5 14 2 Peter 1 21 2 Peter 2 22 2 Peter 3 18 1 John 1 10 1 John 2 29 1 John 3 24 1 John 4 21 1 John 5 21 2 John 1 13 3 John 1 15 Jude 1 25 Revelation 1 20 Revelation 2 29 Revelation 3 22 Revelation 4 11 Revelation 5 14 Revelation 6 17 Revelation 7 17 Revelation 8 13 Revelation 9 21 Revelation 10 11 Revelation 11 19 Revelation 12 18 Revelation 13 18 Revelation 14 20 Revelation 15 8 Revelation 16 21 Revelation 17 18 Revelation 18 24 Revelation 19 21 Revelation 20 15 Revelation 21 27 Revelation 22 21 bibledit-gtk-4.9/src/.indent.pro000664 000766 000024 00000000111 12221507150 016711 0ustar00teusstaff000000 000000 --line-length500 --no-tabs --k-and-r-style --linux-style --indent-level2 bibledit-gtk-4.9/src/assistantbackup.cpp000664 000766 000024 00000040454 12221507145 020555 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "assistantbackup.h" #include "help.h" #include "settings.h" #include "utilities.h" #include "gwrappers.h" #include "tiny_utilities.h" #include "directories.h" #include "unixwrappers.h" #include "git.h" #include "projectutils.h" #include "snapshots.h" #include "gtkwrappers.h" #include "compress.h" #include "resource_utils.h" BackupAssistant::BackupAssistant(int dummy) : AssistantBase("Backup", "backup") // Backup assistant. { gtk_assistant_set_forward_page_func (GTK_ASSISTANT (assistant), GtkAssistantPageFunc (assistant_forward_function), gpointer(this), NULL); g_signal_connect (G_OBJECT (assistant), "apply", G_CALLBACK (on_assistant_apply_signal), gpointer(this)); g_signal_connect (G_OBJECT (assistant), "prepare", G_CALLBACK (on_assistant_prepare_signal), gpointer(this)); introduction ("A backup helps keeping your data safe"); // Configuration and initialization. extern Settings *settings; ustring project = settings->genconfig.project_get(); // Build the GUI for the task selector. vbox_select_type = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox_select_type); page_number_select_type = gtk_assistant_append_page (GTK_ASSISTANT (assistant), vbox_select_type); gtk_container_set_border_width (GTK_CONTAINER (vbox_select_type), 10); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), vbox_select_type, "What would you like to backup?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), vbox_select_type, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_select_type, true); GSList *radiobutton_select_type_group = NULL; radiobutton_select_type_bible = gtk_radio_button_new_with_mnemonic (NULL, "Bible"); gtk_widget_show (radiobutton_select_type_bible); gtk_box_pack_start (GTK_BOX (vbox_select_type), radiobutton_select_type_bible, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_select_type_bible), radiobutton_select_type_group); radiobutton_select_type_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_select_type_bible)); radiobutton_select_type_notes = gtk_radio_button_new_with_mnemonic (NULL, "Notes"); gtk_widget_show (radiobutton_select_type_notes); gtk_box_pack_start (GTK_BOX (vbox_select_type), radiobutton_select_type_notes, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_select_type_notes), radiobutton_select_type_group); radiobutton_select_type_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_select_type_notes)); radiobutton_select_type_resource = gtk_radio_button_new_with_mnemonic (NULL, "Resource"); gtk_widget_show (radiobutton_select_type_resource); gtk_box_pack_start (GTK_BOX (vbox_select_type), radiobutton_select_type_resource, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_select_type_resource), radiobutton_select_type_group); radiobutton_select_type_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_select_type_resource)); radiobutton_select_type_everything = gtk_radio_button_new_with_mnemonic (NULL, "Everything"); gtk_widget_show (radiobutton_select_type_everything); gtk_box_pack_start (GTK_BOX (vbox_select_type), radiobutton_select_type_everything, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_select_type_everything), radiobutton_select_type_group); radiobutton_select_type_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_select_type_everything)); Shortcuts shortcuts_select_type (0); shortcuts_select_type.button (radiobutton_select_type_bible); shortcuts_select_type.button (radiobutton_select_type_notes); shortcuts_select_type.button (radiobutton_select_type_resource); shortcuts_select_type.button (radiobutton_select_type_everything); shortcuts_select_type.consider_assistant(); shortcuts_select_type.process(); // Confirm or change Bible. vbox_bible_name = gtk_vbox_new (FALSE, 5); gtk_widget_show (vbox_bible_name); page_number_bible_name = gtk_assistant_append_page (GTK_ASSISTANT (assistant), vbox_bible_name); gtk_container_set_border_width (GTK_CONTAINER (vbox_bible_name), 10); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), vbox_bible_name, "Is this the right Bible?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), vbox_bible_name, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_bible_name, true); label_bible_name = gtk_label_new ("Bible name"); gtk_widget_show (label_bible_name); gtk_box_pack_start (GTK_BOX (vbox_bible_name), label_bible_name, FALSE, FALSE, 0); button_bible_name = gtk_button_new (); gtk_widget_show (button_bible_name); gtk_box_pack_start (GTK_BOX (vbox_bible_name), button_bible_name, FALSE, FALSE, 0); g_signal_connect ((gpointer) button_bible_name, "clicked", G_CALLBACK (on_button_bible_name_clicked), gpointer (this)); GtkWidget *alignment1; GtkWidget *hbox1; GtkWidget *image1; GtkWidget *label1; alignment1 = gtk_alignment_new (0.5, 0.5, 0, 0); gtk_widget_show (alignment1); gtk_container_add (GTK_CONTAINER (button_bible_name), alignment1); hbox1 = gtk_hbox_new (FALSE, 2); gtk_widget_show (hbox1); gtk_container_add (GTK_CONTAINER (alignment1), hbox1); image1 = gtk_image_new_from_stock ("gtk-open", GTK_ICON_SIZE_BUTTON); gtk_widget_show (image1); gtk_box_pack_start (GTK_BOX (hbox1), image1, FALSE, FALSE, 0); label1 = gtk_label_new_with_mnemonic ("Choose another one"); gtk_widget_show (label1); gtk_box_pack_start (GTK_BOX (hbox1), label1, FALSE, FALSE, 0); Shortcuts shortcuts_bible_name (0); shortcuts_bible_name.label (label1); shortcuts_bible_name.consider_assistant(); shortcuts_bible_name.process(); // Confirm or change Resource. vbox_resource_name = gtk_vbox_new (FALSE, 5); gtk_widget_show (vbox_resource_name); page_number_resource_name = gtk_assistant_append_page (GTK_ASSISTANT (assistant), vbox_resource_name); gtk_container_set_border_width (GTK_CONTAINER (vbox_resource_name), 10); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), vbox_resource_name, "Is this the right Resource?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), vbox_resource_name, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_resource_name, true); label_resource_name = gtk_label_new ("Resource name"); gtk_widget_show (label_resource_name); gtk_box_pack_start (GTK_BOX (vbox_resource_name), label_resource_name, FALSE, FALSE, 0); button_resource_name = gtk_button_new (); gtk_widget_show (button_resource_name); gtk_box_pack_start (GTK_BOX (vbox_resource_name), button_resource_name, FALSE, FALSE, 0); g_signal_connect ((gpointer) button_resource_name, "clicked", G_CALLBACK (on_button_resource_name_clicked), gpointer (this)); alignment1 = gtk_alignment_new (0.5, 0.5, 0, 0); gtk_widget_show (alignment1); gtk_container_add (GTK_CONTAINER (button_resource_name), alignment1); hbox1 = gtk_hbox_new (FALSE, 2); gtk_widget_show (hbox1); gtk_container_add (GTK_CONTAINER (alignment1), hbox1); image1 = gtk_image_new_from_stock ("gtk-open", GTK_ICON_SIZE_BUTTON); gtk_widget_show (image1); gtk_box_pack_start (GTK_BOX (hbox1), image1, FALSE, FALSE, 0); label1 = gtk_label_new_with_mnemonic ("Choose another one"); gtk_widget_show (label1); gtk_box_pack_start (GTK_BOX (hbox1), label1, FALSE, FALSE, 0); Shortcuts shortcuts_resource_name (0); shortcuts_resource_name.label (label1); shortcuts_resource_name.consider_assistant(); shortcuts_resource_name.process(); // Select file where to save to. vbox_file = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox_file); page_number_file = gtk_assistant_append_page (GTK_ASSISTANT (assistant), vbox_file); gtk_container_set_border_width (GTK_CONTAINER (vbox_file), 10); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), vbox_file, "Where would you like to save it?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), vbox_file, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_file, false); button_file = gtk_button_new (); gtk_widget_show (button_file); gtk_box_pack_start (GTK_BOX (vbox_file), button_file, FALSE, FALSE, 0); GtkWidget *alignment2; GtkWidget *hbox2; GtkWidget *image2; alignment2 = gtk_alignment_new (0.5, 0.5, 0, 0); gtk_widget_show (alignment2); gtk_container_add (GTK_CONTAINER (button_file), alignment2); hbox2 = gtk_hbox_new (FALSE, 2); gtk_widget_show (hbox2); gtk_container_add (GTK_CONTAINER (alignment2), hbox2); image2 = gtk_image_new_from_stock ("gtk-open", GTK_ICON_SIZE_BUTTON); gtk_widget_show (image2); gtk_box_pack_start (GTK_BOX (hbox2), image2, FALSE, FALSE, 0); label_file = gtk_label_new_with_mnemonic (""); gtk_widget_show (label_file); gtk_box_pack_start (GTK_BOX (hbox2), label_file, FALSE, FALSE, 0); g_signal_connect ((gpointer) button_file, "clicked", G_CALLBACK (on_button_file_clicked), gpointer(this)); // Build the confirmation stuff. label_confirm = gtk_label_new ("Backup is about to be made"); gtk_widget_show (label_confirm); page_number_confirm = gtk_assistant_append_page (GTK_ASSISTANT (assistant), label_confirm); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), label_confirm, "Backup is about to be made"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), label_confirm, GTK_ASSISTANT_PAGE_CONFIRM); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), label_confirm, true); label_progress = gtk_label_new (""); gtk_widget_show (label_progress); gtk_assistant_append_page (GTK_ASSISTANT (assistant), label_progress); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), label_progress, ""); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), label_progress, GTK_ASSISTANT_PAGE_PROGRESS); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), label_progress, true); label_summary = gtk_label_new ("Backup was made"); gtk_widget_show (label_summary); summary_page_number = gtk_assistant_append_page (GTK_ASSISTANT (assistant), label_summary); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), label_summary, "Ready"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), label_summary, GTK_ASSISTANT_PAGE_SUMMARY); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), label_summary, true); // Finish building assistant. gtk_widget_show_all (assistant); gtk_assistant_set_current_page (GTK_ASSISTANT (assistant), 0); } BackupAssistant::~BackupAssistant() { } void BackupAssistant::on_assistant_prepare_signal (GtkAssistant *assistant, GtkWidget *page, gpointer user_data) { ((BackupAssistant *) user_data)->on_assistant_prepare(page); } void BackupAssistant::on_assistant_prepare (GtkWidget *page) { extern Settings *settings; if (page == vbox_bible_name) { // Prepare for the page to confirm or change the Bible. if (bible_name.empty()) { bible_name = settings->genconfig.project_get(); } gtk_label_set_text (GTK_LABEL (label_bible_name), bible_name.c_str()); if (bible_name.empty()) { gtk_label_set_text (GTK_LABEL (label_bible_name), "No Bible selected"); } gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_bible_name, !bible_name.empty()); } if (page == vbox_resource_name) { // Prepare for the page to confirm or change the Resource. gtk_label_set_text (GTK_LABEL (label_resource_name), resource_name.c_str()); if (resource_name.empty()) { gtk_label_set_text (GTK_LABEL (label_resource_name), "No Resource selected"); } gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_resource_name, !resource_name.empty()); } if (page == vbox_file) { gtk_label_set_text (GTK_LABEL (label_file), filename.c_str()); if (filename.empty()) { gtk_label_set_text (GTK_LABEL (label_file), "(None)"); } gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_file, !filename.empty()); } } void BackupAssistant::on_assistant_apply_signal (GtkAssistant *assistant, gpointer user_data) { ((BackupAssistant *) user_data)->on_assistant_apply(); } void BackupAssistant::on_assistant_apply () { // Save all configurations. extern Settings *settings; settings->save(); // Make the backup. switch (get_type()) { case btBible: { backup_bible (bible_name, filename); break; } case btNotes: { backup_notes (filename); break; } case btResource: { backup_resource (resource_name, filename); break; } case btAll: { backup_all (filename); break; } } // Show summary. gtk_assistant_set_current_page (GTK_ASSISTANT (assistant), summary_page_number); } gint BackupAssistant::assistant_forward_function (gint current_page, gpointer user_data) { return ((BackupAssistant *) user_data)->assistant_forward (current_page); } gint BackupAssistant::assistant_forward (gint current_page) { // Create forward sequence. forward_sequence.clear(); forward_sequence.insert (page_number_select_type); switch (get_type()) { case btBible: { forward_sequence.insert (page_number_bible_name); forward_sequence.insert (page_number_file); break; } case btNotes: { forward_sequence.insert (page_number_file); break; } case btResource: { forward_sequence.insert (page_number_resource_name); forward_sequence.insert (page_number_file); break; } case btAll: { forward_sequence.insert (page_number_file); break; } } // Always end up going to the confirmation and summary pages. forward_sequence.insert (page_number_confirm); forward_sequence.insert (summary_page_number); // Take the next page in the forward sequence. do { current_page++; if (current_page > (gint) summary_page_number) break; } while (forward_sequence.find (current_page) == forward_sequence.end()); if (current_page > (gint) summary_page_number) current_page = summary_page_number; return current_page; } void BackupAssistant::on_button_bible_name_clicked (GtkButton *button, gpointer user_data) { ((BackupAssistant *) user_data)->on_button_bible_name (); } void BackupAssistant::on_button_bible_name () { project_select(bible_name); on_assistant_prepare (vbox_bible_name); } void BackupAssistant::on_button_resource_name_clicked (GtkButton *button, gpointer user_data) { ((BackupAssistant *) user_data)->on_button_resource_name (); } void BackupAssistant::on_button_resource_name () { ustring name = resource_select (NULL); if (!name.empty()) { resource_name = name; } on_assistant_prepare (vbox_resource_name); } void BackupAssistant::on_button_file_clicked (GtkButton *button, gpointer user_data) { ((BackupAssistant *) user_data)->on_button_file (); } void BackupAssistant::on_button_file () { ustring file = gtkw_file_chooser_save (assistant, "", filename); if (!file.empty()) { filename = file; compress_ensure_tar_gz_suffix (filename); on_assistant_prepare (vbox_file); } } BackupType BackupAssistant::get_type () { if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_select_type_bible))) { return btBible; } if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_select_type_notes))) { return btNotes; } if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_select_type_resource))) { return btResource; } if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_select_type_everything))) { return btAll; } return btAll; } bibledit-gtk-4.9/src/assistantbackup.h000664 000766 000024 00000005505 12221507143 020216 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_ASSISTANT_BACKUP_H #define INCLUDED_ASSISTANT_BACKUP_H #include #include "ustring.h" #include "assistants.h" #include "backup.h" class BackupAssistant : public AssistantBase { public: BackupAssistant(int dummy); virtual ~BackupAssistant(); private: // Assistant page preparation. static void on_assistant_prepare_signal (GtkAssistant *assistant, GtkWidget *page, gpointer user_data); void on_assistant_prepare (GtkWidget *page); // Backup type selection. int page_number_select_type; GtkWidget *vbox_select_type; GtkWidget *radiobutton_select_type_bible; GtkWidget *radiobutton_select_type_notes; GtkWidget *radiobutton_select_type_resource; GtkWidget *radiobutton_select_type_everything; BackupType get_type (); // Confirm or change Bible. int page_number_bible_name; GtkWidget *vbox_bible_name; GtkWidget *label_bible_name; GtkWidget *button_bible_name; static void on_button_bible_name_clicked (GtkButton *button, gpointer user_data); void on_button_bible_name (); ustring bible_name; // Confirm or change Resource. int page_number_resource_name; GtkWidget *vbox_resource_name; GtkWidget *label_resource_name; GtkWidget *button_resource_name; static void on_button_resource_name_clicked (GtkButton *button, gpointer user_data); void on_button_resource_name (); ustring resource_name; // Select file. int page_number_file; GtkWidget *vbox_file; GtkWidget *button_file; GtkWidget *label_file; static void on_button_file_clicked (GtkButton *button, gpointer user_data); void on_button_file (); ustring filename; // Confirmation stuff. int page_number_confirm; GtkWidget *label_confirm; GtkWidget *label_progress; GtkWidget *label_summary; unsigned int summary_page_number; static void on_assistant_apply_signal (GtkAssistant *assistant, gpointer user_data); void on_assistant_apply (); static gint assistant_forward_function (gint current_page, gpointer user_data); gint assistant_forward (gint current_page); set forward_sequence; }; #endif bibledit-gtk-4.9/src/assistantchanges.cpp000664 000766 000024 00000031710 12221507143 020711 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "assistantchanges.h" #include "help.h" #include "settings.h" #include "date_time_utils.h" #include "projectutils.h" #include "gtkwrappers.h" #include "tiny_utilities.h" #include "progresswindow.h" #include "gwrappers.h" #include "compareutils.h" #include "snapshots.h" #include "utilities.h" ChangesAssistant::ChangesAssistant(WindowReferences * references_window) : AssistantBase("Changes", "changes") // Assistant for adding keyterms. { my_references_window = references_window; gtk_assistant_set_forward_page_func (GTK_ASSISTANT (assistant), GtkAssistantPageFunc (assistant_forward_function), gpointer(this), NULL); g_signal_connect (G_OBJECT (assistant), "apply", G_CALLBACK (on_assistant_apply_signal), gpointer(this)); // Configurations. extern Settings *settings; ProjectConfiguration *projectconfig = settings->projectconfig(settings->genconfig.project_get()); // Introduction. introduction ("You can view the changes that have been made in the project."); // Ask user what he wants. vbox1 = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox1); question_page = gtk_assistant_append_page (GTK_ASSISTANT (assistant), vbox1); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), vbox1, "Which changes would you like to see?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), vbox1, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox1, true); GSList *radiobutton_since_last_review_group = NULL; radiobutton_since_last_review = gtk_radio_button_new_with_mnemonic (NULL, "The ones made since my last review"); gtk_widget_show (radiobutton_since_last_review); gtk_box_pack_start (GTK_BOX (vbox1), radiobutton_since_last_review, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_since_last_review), radiobutton_since_last_review_group); radiobutton_since_last_review_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_since_last_review)); radiobutton_since_date = gtk_radio_button_new_with_mnemonic (NULL, "The ones made since a certain date I will give"); gtk_widget_show (radiobutton_since_date); gtk_box_pack_start (GTK_BOX (vbox1), radiobutton_since_date, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_since_date), radiobutton_since_last_review_group); radiobutton_since_last_review_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_since_date)); radiobutton_between_dates = gtk_radio_button_new_with_mnemonic (NULL, "The ones made between two dates I will give"); gtk_widget_show (radiobutton_between_dates); gtk_box_pack_start (GTK_BOX (vbox1), radiobutton_between_dates, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_between_dates), radiobutton_since_last_review_group); radiobutton_since_last_review_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_between_dates)); // Date last review page. label_last_review = gtk_label_new (""); gtk_widget_show (label_last_review); last_review_page = gtk_assistant_append_page (GTK_ASSISTANT (assistant), label_last_review); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), label_last_review, "Information"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), label_last_review, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), label_last_review, true); // Show the date and time of last review. // If that is uninitialized, take the date/time from the oldest revision in the Snapshots. unsigned int last_review_seconds = projectconfig->changes_last_review_get(); if (last_review_seconds == 0) { last_review_seconds = snapshots_oldest_second (settings->genconfig.project_get()); if (last_review_seconds == 0) last_review_seconds--; projectconfig->changes_last_review_set(last_review_seconds); } ustring last_review_label = "Last review was on " + date_time_seconds_human_readable(last_review_seconds, true); gtk_label_set_text(GTK_LABEL(label_last_review), last_review_label.c_str()); // Date from. date_from_seconds = projectconfig->changes_since_get(); if (date_from_seconds == 0) { date_from_seconds = snapshots_oldest_second (settings->genconfig.project_get()); if (date_from_seconds == 0) date_from_seconds--; projectconfig->changes_since_set(date_from_seconds); } date_from_object = new DateWidget (&date_from_seconds, true); date_from_page = gtk_assistant_append_page (GTK_ASSISTANT (assistant), date_from_object->hbox); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), date_from_object->hbox, ""); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), date_from_object->hbox, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), date_from_object->hbox, true); // Date to. date_to_seconds = projectconfig->changes_till_get(); if (date_to_seconds == 0) { date_to_seconds = date_time_seconds_get_current(); projectconfig->changes_till_set(date_to_seconds); } date_to_object = new DateWidget (&date_to_seconds, true); date_to_page = gtk_assistant_append_page (GTK_ASSISTANT (assistant), date_to_object->hbox); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), date_to_object->hbox, "Changes till which date?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), date_to_object->hbox, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), date_to_object->hbox, true); // Confirm. label_confirm = gtk_label_new ("Ready for generating changes"); gtk_widget_show (label_confirm); confirm_page = gtk_assistant_append_page (GTK_ASSISTANT (assistant), label_confirm); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), label_confirm, "Ready for generating changes"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), label_confirm, GTK_ASSISTANT_PAGE_CONFIRM); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), label_confirm, true); // Progress. label_progress = gtk_label_new ("Generating changes..., please wait"); gtk_widget_show (label_progress); gtk_assistant_append_page (GTK_ASSISTANT (assistant), label_progress); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), label_progress, "Generating changes"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), label_progress, GTK_ASSISTANT_PAGE_PROGRESS); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), label_progress, true); // Summary. label_summary = gtk_label_new ("Done."); gtk_widget_show (label_summary); summary_page_number = gtk_assistant_append_page (GTK_ASSISTANT (assistant), label_summary); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), label_summary, "Ready"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), label_summary, GTK_ASSISTANT_PAGE_SUMMARY); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), label_summary, true); // Finish assistant. gtk_widget_show_all (assistant); gtk_assistant_set_current_page (GTK_ASSISTANT (assistant), 0); } ChangesAssistant::~ChangesAssistant() { delete date_from_object; delete date_to_object; if (!temporal_from_project.empty()) { project_delete(temporal_from_project); } if (!temporal_to_project.empty()) { project_delete(temporal_to_project); } } gint ChangesAssistant::assistant_forward_function (gint current_page, gpointer user_data) { return ((ChangesAssistant *) user_data)->assistant_forward (current_page); } gint ChangesAssistant::assistant_forward (gint current_page) { // Go to the right page from the question what to do, and set the gui. if (current_page == question_page) { if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_since_date))) gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), date_from_object->hbox, "Changes since which date?"); if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_between_dates))) gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), date_from_object->hbox, "Changes from which date?"); if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_since_last_review))) return last_review_page; else return date_from_page; } // If reviewing since last change, go straight to the confirmation page. if (current_page == last_review_page) { return confirm_page; } // If on the date-from/since, decide whether to ask for the date-to, // and ensure that the date-to is more recent. if (current_page == date_from_page) { if (date_to_seconds < date_from_seconds) { date_to_seconds = date_from_seconds; date_to_object->set_date(); } if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_since_date))) return confirm_page; } // Default behaviour is to go to the next page. return ++current_page; } void ChangesAssistant::on_assistant_apply_signal (GtkAssistant *assistant, gpointer user_data) { ((ChangesAssistant *) user_data)->on_assistant_apply(); } void ChangesAssistant::on_assistant_apply () { // Configuration. extern Settings *settings; ProjectConfiguration *projectconfig = settings->projectconfig(settings->genconfig.project_get()); // Save times. projectconfig->changes_since_set(date_from_seconds); projectconfig->changes_till_set(date_to_seconds); // The actions. ustring project = settings->genconfig.project_get(); if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_since_last_review))) { temporal_from_project = copy_project_and_move_back_in_history (project, projectconfig->changes_last_review_get ()); view_changes(project, temporal_from_project); // Set the date for the next review. projectconfig->changes_last_review_set(date_time_seconds_get_current()); } if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_since_date))) { temporal_from_project = copy_project_and_move_back_in_history (project, date_from_seconds); view_changes(project, temporal_from_project); } if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_between_dates))) { temporal_from_project = copy_project_and_move_back_in_history (project, date_from_seconds); temporal_to_project = copy_project_and_move_back_in_history (project, date_to_seconds); view_changes(temporal_to_project, temporal_from_project); } // Show summary. gtk_assistant_set_current_page (GTK_ASSISTANT (assistant), summary_page_number); } ustring ChangesAssistant::copy_project_and_move_back_in_history (const ustring& project, unsigned int second) { // Progress. ProgressWindow progresswindow("Going back in history", false); // Create a temporal history project. ustring copiedproject = project + " as it was on " + date_time_seconds_human_readable (second, false); project_create_restore (copiedproject, ""); // Go through all the books of the original project. vector books = project_get_books (project); progresswindow.set_iterate (0, 1, books.size()); for (unsigned int bk = 0; bk < books.size(); bk++) { progresswindow.iterate (); unsigned int book = books[bk]; // Go through all the chapters of the book. vector chapters = project_get_chapters (project, book); for (unsigned int ch = 0; ch < chapters.size(); ch++) { unsigned int chapter = chapters[ch]; // Store the chapter in the state as it was on the second given. unsigned int second_to_restore_to = 0; vector seconds = snapshots_get_seconds (project, book, chapter); for (unsigned int s = 0; s < seconds.size(); s++) { if (second_to_restore_to == 0) { if (second >= seconds[s]) { second_to_restore_to = seconds[s]; } } } if (second_to_restore_to) { ustring data = snapshots_get_chapter (project, book, chapter, second_to_restore_to); ParseLine parseline (data); CategorizeChapterVerse ccv(parseline.lines); project_store_chapter(copiedproject, book, ccv); } } } // Give result. return copiedproject; } void ChangesAssistant::view_changes(const ustring& current_stage_project, const ustring& previous_stage_project) { compare_with(my_references_window, previous_stage_project, current_stage_project, true); } bibledit-gtk-4.9/src/assistantchanges.h000664 000766 000024 00000004305 12221507130 020352 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_ASSISTANT_CHANGES_H #define INCLUDED_ASSISTANT_CHANGES_H #include #include "ustring.h" #include "assistants.h" #include "widgetdate.h" #include "windowreferences.h" class ChangesAssistant : public AssistantBase { public: ChangesAssistant(WindowReferences * references_window); virtual ~ChangesAssistant(); private: GtkWidget *vbox1; GtkWidget *radiobutton_since_last_review; GtkWidget *radiobutton_since_date; GtkWidget *radiobutton_between_dates; int question_page; GtkWidget *label_last_review; int last_review_page; unsigned int date_from_seconds; DateWidget * date_from_object; int date_from_page; unsigned int date_to_seconds; DateWidget * date_to_object; int date_to_page; GtkWidget *label_confirm; int confirm_page; GtkWidget *label_progress; GtkWidget *label_summary; unsigned int summary_page_number; static gint assistant_forward_function (gint current_page, gpointer user_data); gint assistant_forward (gint current_page); static void on_assistant_apply_signal (GtkAssistant *assistant, gpointer user_data); void on_assistant_apply (); ustring temporal_from_project; ustring temporal_to_project; WindowReferences * my_references_window; ustring copy_project_and_move_back_in_history (const ustring& project, unsigned int second); void view_changes(const ustring& current_stage_project, const ustring& previous_stage_project); }; #endif bibledit-gtk-4.9/src/assistantdeletekeyterms.cpp000664 000766 000024 00000010473 12221507143 022332 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "assistantdeletekeyterms.h" #include "help.h" #include "keyterms.h" #include "combobox.h" DeleteKeytermsAssistant::DeleteKeytermsAssistant(int dummy) : AssistantBase("Keyterms", "deletekeyterms") // Assistant for deleting keyterms. { gtk_assistant_set_forward_page_func (GTK_ASSISTANT (assistant), GtkAssistantPageFunc (assistant_forward_function), gpointer(this), NULL); g_signal_connect (G_OBJECT (assistant), "apply", G_CALLBACK (on_assistant_apply_signal), gpointer(this)); introduction ("You can delete categories from the keyterms database."); vbox1 = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox1); gtk_assistant_append_page (GTK_ASSISTANT (assistant), vbox1); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), vbox1, "Which collection would you like to delete?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), vbox1, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox1, true); combobox1 = gtk_combo_box_new_text (); gtk_widget_show (combobox1); gtk_box_pack_start (GTK_BOX (vbox1), combobox1, TRUE, TRUE, 0); vector categories = keyterms_get_categories (); combobox_set_strings (combobox1, categories); combobox_set_index (combobox1, 0); label_confirm = gtk_label_new ("Ready for delete"); gtk_widget_show (label_confirm); gtk_assistant_append_page (GTK_ASSISTANT (assistant), label_confirm); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), label_confirm, "Ready for delete"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), label_confirm, GTK_ASSISTANT_PAGE_CONFIRM); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), label_confirm, true); label_progress = gtk_label_new ("Deleting..."); gtk_widget_show (label_progress); gtk_assistant_append_page (GTK_ASSISTANT (assistant), label_progress); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), label_progress, "Deleting"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), label_progress, GTK_ASSISTANT_PAGE_PROGRESS); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), label_progress, true); label_summary = gtk_label_new ("Delete done."); gtk_widget_show (label_summary); summary_page_number = gtk_assistant_append_page (GTK_ASSISTANT (assistant), label_summary); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), label_summary, "Ready"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), label_summary, GTK_ASSISTANT_PAGE_SUMMARY); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), label_summary, true); // Finish assistant. gtk_widget_show_all (assistant); gtk_assistant_set_current_page (GTK_ASSISTANT (assistant), 0); } DeleteKeytermsAssistant::~DeleteKeytermsAssistant() { } void DeleteKeytermsAssistant::on_assistant_apply_signal (GtkAssistant *assistant, gpointer user_data) { ((DeleteKeytermsAssistant *) user_data)->on_assistant_apply(); } void DeleteKeytermsAssistant::on_assistant_apply () { ustring category = combobox_get_active_string (combobox1); keyterms_delete_collection (category); // Show summary. gtk_assistant_set_current_page (GTK_ASSISTANT (assistant), summary_page_number); } gint DeleteKeytermsAssistant::assistant_forward_function (gint current_page, gpointer user_data) { return ((DeleteKeytermsAssistant *) user_data)->assistant_forward (current_page); } gint DeleteKeytermsAssistant::assistant_forward (gint current_page) { // Default behaviour is to go to the next page. return ++current_page; } bibledit-gtk-4.9/src/assistantdeletekeyterms.h000664 000766 000024 00000002771 12221507151 022000 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_ASSISTANT_DELETE_KEYTERMS_H #define INCLUDED_ASSISTANT_DELETE_KEYTERMS_H #include #include "ustring.h" #include "assistants.h" class DeleteKeytermsAssistant : public AssistantBase { public: DeleteKeytermsAssistant(int dummy); virtual ~DeleteKeytermsAssistant(); private: GtkWidget *vbox1; GtkWidget *combobox1; GtkWidget *label_confirm; GtkWidget *label_progress; GtkWidget *label_summary; unsigned int summary_page_number; static void on_assistant_apply_signal (GtkAssistant *assistant, gpointer user_data); void on_assistant_apply (); static gint assistant_forward_function (gint current_page, gpointer user_data); gint assistant_forward (gint current_page); }; #endif bibledit-gtk-4.9/src/assistantexport.cpp000644 000766 000024 00000144742 12446064052 020640 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "assistantexport.h" #include "help.h" #include "settings.h" #include "utilities.h" #include "gwrappers.h" #include "tiny_utilities.h" #include "directories.h" #include "unixwrappers.h" #include "git.h" #include "projectutils.h" #include "snapshots.h" #include "gtkwrappers.h" #include "compress.h" #include "dialogdate.h" #include "date_time_utils.h" #include "keyterms.h" ExportAssistant::ExportAssistant(WindowReferences * references_window, WindowStyles * styles_window, WindowCheckKeyterms * check_keyterms_window) : AssistantBase("Export", "export") // Export assistant. { gtk_assistant_set_forward_page_func (GTK_ASSISTANT (assistant), GtkAssistantPageFunc (assistant_forward_function), gpointer(this), NULL); g_signal_connect (G_OBJECT (assistant), "apply", G_CALLBACK (on_assistant_apply_signal), gpointer(this)); g_signal_connect (G_OBJECT (assistant), "prepare", G_CALLBACK (on_assistant_prepare_signal), gpointer(this)); introduction ("This helps you exporting your data"); // Configuration and initialization. extern Settings *settings; ustring project = settings->genconfig.project_get(); sword_module_created = false; my_references_window = references_window; my_styles_window = styles_window; my_check_keyterms_window = check_keyterms_window; date_time = 0; // Build the GUI for the task selector. vbox_select_type = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox_select_type); page_number_select_type = gtk_assistant_append_page (GTK_ASSISTANT (assistant), vbox_select_type); gtk_container_set_border_width (GTK_CONTAINER (vbox_select_type), 10); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), vbox_select_type, "What would you like to export?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), vbox_select_type, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_select_type, true); GSList *radiobutton_select_type_group = NULL; radiobutton_select_type_bible = gtk_radio_button_new_with_mnemonic (NULL, "Bible"); gtk_widget_show (radiobutton_select_type_bible); gtk_box_pack_start (GTK_BOX (vbox_select_type), radiobutton_select_type_bible, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_select_type_bible), radiobutton_select_type_group); radiobutton_select_type_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_select_type_bible)); radiobutton_select_type_references = gtk_radio_button_new_with_mnemonic (NULL, "References"); gtk_widget_show (radiobutton_select_type_references); gtk_box_pack_start (GTK_BOX (vbox_select_type), radiobutton_select_type_references, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_select_type_references), radiobutton_select_type_group); radiobutton_select_type_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_select_type_references)); // Exporting references only works when the references window shows. gtk_widget_set_sensitive (radiobutton_select_type_references, references_window != NULL); radiobutton_select_type_stylesheet = gtk_radio_button_new_with_mnemonic (NULL, "Stylesheet"); gtk_widget_show (radiobutton_select_type_stylesheet); gtk_box_pack_start (GTK_BOX (vbox_select_type), radiobutton_select_type_stylesheet, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_select_type_stylesheet), radiobutton_select_type_group); radiobutton_select_type_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_select_type_stylesheet)); // Exporting references only works when the styles window shows. gtk_widget_set_sensitive (radiobutton_select_type_stylesheet, my_styles_window != NULL); radiobutton_select_type_notes = gtk_radio_button_new_with_mnemonic (NULL, "Notes"); gtk_widget_show (radiobutton_select_type_notes); gtk_box_pack_start (GTK_BOX (vbox_select_type), radiobutton_select_type_notes, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_select_type_notes), radiobutton_select_type_group); radiobutton_select_type_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_select_type_notes)); radiobutton_select_type_keyterms = gtk_radio_button_new_with_mnemonic (NULL, "Keyterms"); gtk_widget_show (radiobutton_select_type_keyterms); gtk_box_pack_start (GTK_BOX (vbox_select_type), radiobutton_select_type_keyterms, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_select_type_keyterms), radiobutton_select_type_group); radiobutton_select_type_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_select_type_keyterms)); // Exporting keyterms only works when the check keyterms window shows. gtk_widget_set_sensitive (radiobutton_select_type_keyterms, my_check_keyterms_window != NULL); Shortcuts shortcuts_select_type (0); shortcuts_select_type.button (radiobutton_select_type_bible); shortcuts_select_type.button (radiobutton_select_type_references); shortcuts_select_type.button (radiobutton_select_type_stylesheet); shortcuts_select_type.button (radiobutton_select_type_notes); shortcuts_select_type.button (radiobutton_select_type_keyterms); shortcuts_select_type.consider_assistant(); shortcuts_select_type.process(); // Confirm or change Bible. vbox_bible_name = gtk_vbox_new (FALSE, 5); gtk_widget_show (vbox_bible_name); page_number_bible_name = gtk_assistant_append_page (GTK_ASSISTANT (assistant), vbox_bible_name); gtk_container_set_border_width (GTK_CONTAINER (vbox_bible_name), 10); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), vbox_bible_name, "Is this the right Bible?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), vbox_bible_name, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_bible_name, true); label_project_name = gtk_label_new ("Bible name"); gtk_widget_show (label_project_name); gtk_box_pack_start (GTK_BOX (vbox_bible_name), label_project_name, FALSE, FALSE, 0); button_bible_name = gtk_button_new (); gtk_widget_show (button_bible_name); gtk_box_pack_start (GTK_BOX (vbox_bible_name), button_bible_name, FALSE, FALSE, 0); g_signal_connect ((gpointer) button_bible_name, "clicked", G_CALLBACK (on_button_bible_name_clicked), gpointer (this)); GtkWidget *alignment1; GtkWidget *hbox1; GtkWidget *image1; GtkWidget *label12; alignment1 = gtk_alignment_new (0.5, 0.5, 0, 0); gtk_widget_show (alignment1); gtk_container_add (GTK_CONTAINER (button_bible_name), alignment1); hbox1 = gtk_hbox_new (FALSE, 2); gtk_widget_show (hbox1); gtk_container_add (GTK_CONTAINER (alignment1), hbox1); image1 = gtk_image_new_from_stock ("gtk-open", GTK_ICON_SIZE_BUTTON); gtk_widget_show (image1); gtk_box_pack_start (GTK_BOX (hbox1), image1, FALSE, FALSE, 0); label12 = gtk_label_new_with_mnemonic ("Choose another one"); gtk_widget_show (label12); gtk_box_pack_start (GTK_BOX (hbox1), label12, FALSE, FALSE, 0); Shortcuts shortcuts_bible_name (0); shortcuts_bible_name.label (label12); shortcuts_bible_name.consider_assistant(); shortcuts_bible_name.process(); // Select what type to export a Bible to. vbox_bible_type = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox_bible_type); page_number_bible_type = gtk_assistant_append_page (GTK_ASSISTANT (assistant), vbox_bible_type); gtk_container_set_border_width (GTK_CONTAINER (vbox_bible_type), 10); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), vbox_bible_type, "What would you like to export it to?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), vbox_bible_type, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_bible_type, true); GSList *radiobutton_bible_type_group = NULL; radiobutton_bible_usfm = gtk_radio_button_new_with_mnemonic (NULL, "Unified Standard Format Markers (USFM)"); gtk_widget_show (radiobutton_bible_usfm); gtk_box_pack_start (GTK_BOX (vbox_bible_type), radiobutton_bible_usfm, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_bible_usfm), radiobutton_bible_type_group); radiobutton_bible_type_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_bible_usfm)); radiobutton_bible_bibleworks = gtk_radio_button_new_with_mnemonic (NULL, "BibleWorks Version Database Compiler"); gtk_widget_show (radiobutton_bible_bibleworks); gtk_box_pack_start (GTK_BOX (vbox_bible_type), radiobutton_bible_bibleworks, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_bible_bibleworks), radiobutton_bible_type_group); radiobutton_bible_type_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_bible_bibleworks)); radiobutton_bible_osis = gtk_radio_button_new_with_mnemonic (NULL, "Open Scripture Information Standard (OSIS)"); gtk_widget_show (radiobutton_bible_osis); gtk_box_pack_start (GTK_BOX (vbox_bible_type), radiobutton_bible_osis, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_bible_osis), radiobutton_bible_type_group); radiobutton_bible_type_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_bible_osis)); radiobutton_bible_sword = gtk_radio_button_new_with_mnemonic (NULL, "CrossWire SWORD"); gtk_widget_show (radiobutton_bible_sword); gtk_box_pack_start (GTK_BOX (vbox_bible_type), radiobutton_bible_sword, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_bible_sword), radiobutton_bible_type_group); radiobutton_bible_type_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_bible_sword)); radiobutton_bible_opendocument = gtk_radio_button_new_with_mnemonic (NULL, "OpenDocument"); gtk_widget_show (radiobutton_bible_opendocument); gtk_box_pack_start (GTK_BOX (vbox_bible_type), radiobutton_bible_opendocument, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_bible_opendocument), radiobutton_bible_type_group); radiobutton_bible_type_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_bible_opendocument)); radiobutton_bible_gobible = gtk_radio_button_new_with_mnemonic (NULL, "Go Bible"); gtk_widget_show (radiobutton_bible_gobible); gtk_box_pack_start (GTK_BOX (vbox_bible_type), radiobutton_bible_gobible, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_bible_gobible), radiobutton_bible_type_group); radiobutton_bible_type_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_bible_gobible)); Shortcuts shortcuts_select_bible_type (0); shortcuts_select_bible_type.button (radiobutton_bible_usfm); shortcuts_select_bible_type.button (radiobutton_bible_bibleworks); shortcuts_select_bible_type.button (radiobutton_bible_osis); shortcuts_select_bible_type.button (radiobutton_bible_sword); shortcuts_select_bible_type.button (radiobutton_bible_opendocument); shortcuts_select_bible_type.button (radiobutton_bible_gobible); shortcuts_select_bible_type.consider_assistant(); shortcuts_select_bible_type.process(); // Select what type of USFM export to make. vbox_usfm_type = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox_usfm_type); page_number_usfm_type = gtk_assistant_append_page (GTK_ASSISTANT (assistant), vbox_usfm_type); gtk_container_set_border_width (GTK_CONTAINER (vbox_usfm_type), 10); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), vbox_usfm_type, "What type of USFM export will you make?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), vbox_usfm_type, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_usfm_type, true); GSList *radiobutton_usfm_type_group = NULL; radiobutton_usfm_everything = gtk_radio_button_new_with_mnemonic (NULL, "Everything"); gtk_widget_show (radiobutton_usfm_everything); gtk_box_pack_start (GTK_BOX (vbox_usfm_type), radiobutton_usfm_everything, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_usfm_everything), radiobutton_usfm_type_group); radiobutton_usfm_type_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_usfm_everything)); radiobutton_usfm_changes_only = gtk_radio_button_new_with_mnemonic (NULL, "Changes only"); gtk_widget_show (radiobutton_usfm_changes_only); gtk_box_pack_start (GTK_BOX (vbox_usfm_type), radiobutton_usfm_changes_only, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_usfm_changes_only), radiobutton_usfm_type_group); radiobutton_usfm_type_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_usfm_changes_only)); Shortcuts shortcuts_select_usfm_type (0); shortcuts_select_usfm_type.button (radiobutton_usfm_everything); shortcuts_select_usfm_type.button (radiobutton_usfm_changes_only); shortcuts_select_usfm_type.consider_assistant(); shortcuts_select_usfm_type.process(); // Select what changes of USFM to export. vbox_usfm_changes_type = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox_usfm_changes_type); page_number_usfm_changes_type = gtk_assistant_append_page (GTK_ASSISTANT (assistant), vbox_usfm_changes_type); gtk_container_set_border_width (GTK_CONTAINER (vbox_usfm_changes_type), 10); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), vbox_usfm_changes_type, "Which changes will you export?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), vbox_usfm_changes_type, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_usfm_changes_type, true); GSList *radiobutton_usfm_changes_type_group = NULL; radiobutton_usfm_changes_since_last = gtk_radio_button_new_with_mnemonic (NULL, "The ones introduced since last time that the changes were exported"); gtk_widget_show (radiobutton_usfm_changes_since_last); gtk_box_pack_start (GTK_BOX (vbox_usfm_changes_type), radiobutton_usfm_changes_since_last, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_usfm_changes_since_last), radiobutton_usfm_changes_type_group); radiobutton_usfm_changes_type_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_usfm_changes_since_last)); radiobutton_usfm_changes_since_date = gtk_radio_button_new_with_mnemonic (NULL, "The ones introduces since a certain date and time I'll give"); gtk_widget_show (radiobutton_usfm_changes_since_date); gtk_box_pack_start (GTK_BOX (vbox_usfm_changes_type), radiobutton_usfm_changes_since_date, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_usfm_changes_since_date), radiobutton_usfm_changes_type_group); radiobutton_usfm_changes_type_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_usfm_changes_since_date)); Shortcuts shortcuts_select_usfm_changes_type (0); shortcuts_select_usfm_changes_type.button (radiobutton_usfm_changes_since_last); shortcuts_select_usfm_changes_type.button (radiobutton_usfm_changes_since_date); shortcuts_select_usfm_changes_type.consider_assistant(); shortcuts_select_usfm_changes_type.process(); // Select what type of OSIS file to create. vbox_osis_type = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox_osis_type); page_number_osis_type = gtk_assistant_append_page (GTK_ASSISTANT (assistant), vbox_osis_type); gtk_container_set_border_width (GTK_CONTAINER (vbox_osis_type), 10); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), vbox_osis_type, "What type of OSIS file would you prefer?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), vbox_osis_type, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_osis_type, true); GSList *radiobutton_osis_type_group = NULL; radiobutton_osis_recommended = gtk_radio_button_new_with_mnemonic (NULL, "Recommended transformation"); gtk_widget_show (radiobutton_osis_recommended); gtk_box_pack_start (GTK_BOX (vbox_osis_type), radiobutton_osis_recommended, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_osis_recommended), radiobutton_osis_type_group); radiobutton_osis_type_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_osis_recommended)); radiobutton_osis_go_bible = gtk_radio_button_new_with_mnemonic (NULL, "For Go Bible Creator"); gtk_widget_show (radiobutton_osis_go_bible); gtk_box_pack_start (GTK_BOX (vbox_osis_type), radiobutton_osis_go_bible, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_osis_go_bible), radiobutton_osis_type_group); radiobutton_osis_type_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_osis_go_bible)); radiobutton_osis_old = gtk_radio_button_new_with_mnemonic (NULL, "Old method"); gtk_widget_show (radiobutton_osis_old); gtk_box_pack_start (GTK_BOX (vbox_osis_type), radiobutton_osis_old, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_osis_old), radiobutton_osis_type_group); radiobutton_osis_type_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_osis_old)); Shortcuts shortcuts_select_osis_type (0); shortcuts_select_osis_type.button (radiobutton_osis_recommended); shortcuts_select_osis_type.button (radiobutton_osis_go_bible); shortcuts_select_osis_type.button (radiobutton_osis_old); shortcuts_select_osis_type.consider_assistant(); shortcuts_select_osis_type.process(); // SWORD module variables. entry_sword_name = gtk_entry_new (); gtk_widget_show (entry_sword_name); page_number_sword_name = gtk_assistant_append_page (GTK_ASSISTANT (assistant), entry_sword_name); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), entry_sword_name, "What is the name for the module?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), entry_sword_name, GTK_ASSISTANT_PAGE_CONTENT); g_signal_connect((gpointer) entry_sword_name, "changed", G_CALLBACK(on_entry_sword_changed), gpointer(this)); entry_sword_description = gtk_entry_new (); gtk_widget_show (entry_sword_description); page_number_sword_description = gtk_assistant_append_page (GTK_ASSISTANT (assistant), entry_sword_description); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), entry_sword_description, "What is the description for the module?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), entry_sword_description, GTK_ASSISTANT_PAGE_CONTENT); g_signal_connect((gpointer) entry_sword_description, "changed", G_CALLBACK(on_entry_sword_changed), gpointer(this)); entry_sword_about = gtk_entry_new (); gtk_widget_show (entry_sword_about); page_number_sword_about = gtk_assistant_append_page (GTK_ASSISTANT (assistant), entry_sword_about); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), entry_sword_about, "What can you say about the module?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), entry_sword_about, GTK_ASSISTANT_PAGE_CONTENT); g_signal_connect((gpointer) entry_sword_about, "changed", G_CALLBACK(on_entry_sword_changed), gpointer(this)); entry_sword_license = gtk_entry_new (); gtk_widget_show (entry_sword_license); page_number_sword_license = gtk_assistant_append_page (GTK_ASSISTANT (assistant), entry_sword_license); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), entry_sword_license, "What is the license of the module?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), entry_sword_license, GTK_ASSISTANT_PAGE_CONTENT); g_signal_connect((gpointer) entry_sword_license, "changed", G_CALLBACK(on_entry_sword_changed), gpointer(this)); entry_sword_version = gtk_entry_new (); gtk_widget_show (entry_sword_version); page_number_sword_version = gtk_assistant_append_page (GTK_ASSISTANT (assistant), entry_sword_version); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), entry_sword_version, "What is the version of the module?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), entry_sword_version, GTK_ASSISTANT_PAGE_CONTENT); g_signal_connect((gpointer) entry_sword_version, "changed", G_CALLBACK(on_entry_sword_changed), gpointer(this)); entry_sword_language = gtk_entry_new (); gtk_widget_show (entry_sword_language); page_number_sword_language = gtk_assistant_append_page (GTK_ASSISTANT (assistant), entry_sword_language); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), entry_sword_language, "What is the language of the module?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), entry_sword_language, GTK_ASSISTANT_PAGE_CONTENT); g_signal_connect((gpointer) entry_sword_language, "changed", G_CALLBACK(on_entry_sword_changed), gpointer(this)); entry_sword_install_path = gtk_entry_new (); gtk_widget_show (entry_sword_install_path); page_number_sword_install_path = gtk_assistant_append_page (GTK_ASSISTANT (assistant), entry_sword_install_path); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), entry_sword_install_path, "Where is the module to be installed?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), entry_sword_install_path, GTK_ASSISTANT_PAGE_CONTENT); g_signal_connect((gpointer) entry_sword_install_path, "changed", G_CALLBACK(on_entry_sword_changed), gpointer(this)); sword_values_set (); // Stylesheet format. vbox_stylesheet_format = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox_stylesheet_format); page_number_stylesheet_format = gtk_assistant_append_page (GTK_ASSISTANT (assistant), vbox_stylesheet_format); gtk_container_set_border_width (GTK_CONTAINER (vbox_stylesheet_format), 10); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), vbox_stylesheet_format, "What type of export do you chooseS?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), vbox_stylesheet_format, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_stylesheet_format, true); GSList *radiobutton_stylesheet_export_type_group = NULL; radiobutton_stylesheet_format_bibledit = gtk_radio_button_new_with_mnemonic (NULL, "Standard Bibledit-Gtk format"); gtk_widget_show (radiobutton_stylesheet_format_bibledit); gtk_box_pack_start (GTK_BOX (vbox_stylesheet_format), radiobutton_stylesheet_format_bibledit, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_stylesheet_format_bibledit), radiobutton_stylesheet_export_type_group); radiobutton_stylesheet_export_type_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_stylesheet_format_bibledit)); radiobutton_stylesheet_format_paratext = gtk_radio_button_new_with_mnemonic (NULL, "Paratext format"); gtk_widget_show (radiobutton_stylesheet_format_paratext); gtk_box_pack_start (GTK_BOX (vbox_stylesheet_format), radiobutton_stylesheet_format_paratext, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_stylesheet_format_paratext), radiobutton_stylesheet_export_type_group); radiobutton_stylesheet_export_type_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_stylesheet_format_paratext)); Shortcuts shortcuts_select_stylesheet_export_type (0); shortcuts_select_stylesheet_export_type.button (radiobutton_stylesheet_format_bibledit); shortcuts_select_stylesheet_export_type.button (radiobutton_stylesheet_format_paratext); shortcuts_select_stylesheet_export_type.consider_assistant(); shortcuts_select_stylesheet_export_type.process(); // Include keyterms without a rendering? checkbutton_keyterms_without_rendering = gtk_check_button_new_with_mnemonic ("Include keyterms without a rendering"); gtk_widget_show (checkbutton_keyterms_without_rendering); page_number_keyterms_without_rendering = gtk_assistant_append_page (GTK_ASSISTANT (assistant), checkbutton_keyterms_without_rendering); gtk_container_set_border_width (GTK_CONTAINER (checkbutton_keyterms_without_rendering), 10); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), checkbutton_keyterms_without_rendering, "Include keyterms without a rendering?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), checkbutton_keyterms_without_rendering, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), checkbutton_keyterms_without_rendering, true); Shortcuts shortcuts_keyterms_wo_rendering (0); shortcuts_keyterms_wo_rendering.button (checkbutton_keyterms_without_rendering); shortcuts_keyterms_wo_rendering.consider_assistant(); shortcuts_keyterms_wo_rendering.process(); // Compress it? checkbutton_zip = gtk_check_button_new_with_mnemonic ("Compress it"); gtk_widget_show (checkbutton_zip); page_number_zip = gtk_assistant_append_page (GTK_ASSISTANT (assistant), checkbutton_zip); gtk_container_set_border_width (GTK_CONTAINER (checkbutton_zip), 10); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), checkbutton_zip, "Would you like to compress it?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), checkbutton_zip, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), checkbutton_zip, true); Shortcuts shortcuts_compress (0); shortcuts_compress.button (checkbutton_zip); shortcuts_compress.consider_assistant(); shortcuts_compress.process(); // Select date and time. vbox_date_time = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox_date_time); page_number_date_time = gtk_assistant_append_page (GTK_ASSISTANT (assistant), vbox_date_time); gtk_container_set_border_width (GTK_CONTAINER (vbox_date_time), 10); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), vbox_date_time, "Please enter the date and time?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), vbox_date_time, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_date_time, true); button_date_time = gtk_button_new (); gtk_widget_show (button_date_time); gtk_box_pack_start (GTK_BOX (vbox_date_time), button_date_time, FALSE, FALSE, 0); GtkWidget *alignment2; GtkWidget *hbox2; GtkWidget *image2; alignment2 = gtk_alignment_new (0.5, 0.5, 0, 0); gtk_widget_show (alignment2); gtk_container_add (GTK_CONTAINER (button_date_time), alignment2); hbox2 = gtk_hbox_new (FALSE, 2); gtk_widget_show (hbox2); gtk_container_add (GTK_CONTAINER (alignment2), hbox2); image2 = gtk_image_new_from_stock ("gtk-open", GTK_ICON_SIZE_BUTTON); gtk_widget_show (image2); gtk_box_pack_start (GTK_BOX (hbox2), image2, FALSE, FALSE, 0); label_date_time = gtk_label_new_with_mnemonic (""); gtk_widget_show (label_date_time); gtk_box_pack_start (GTK_BOX (hbox2), label_date_time, FALSE, FALSE, 0); g_signal_connect ((gpointer) button_date_time, "clicked", G_CALLBACK (on_button_date_time_clicked), gpointer(this)); // Comment entry. entry_comment = gtk_entry_new (); gtk_widget_show (entry_comment); page_number_comment = gtk_assistant_append_page (GTK_ASSISTANT (assistant), entry_comment); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), entry_comment, "Any comments on this export?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), entry_comment, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), entry_comment, true); // Select file where to save to. vbox_file = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox_file); page_number_file = gtk_assistant_append_page (GTK_ASSISTANT (assistant), vbox_file); gtk_container_set_border_width (GTK_CONTAINER (vbox_file), 10); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), vbox_file, "Where would you like to save it?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), vbox_file, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_file, false); button_file = gtk_button_new (); gtk_widget_show (button_file); gtk_box_pack_start (GTK_BOX (vbox_file), button_file, FALSE, FALSE, 0); alignment2 = gtk_alignment_new (0.5, 0.5, 0, 0); gtk_widget_show (alignment2); gtk_container_add (GTK_CONTAINER (button_file), alignment2); hbox2 = gtk_hbox_new (FALSE, 2); gtk_widget_show (hbox2); gtk_container_add (GTK_CONTAINER (alignment2), hbox2); image2 = gtk_image_new_from_stock ("gtk-open", GTK_ICON_SIZE_BUTTON); gtk_widget_show (image2); gtk_box_pack_start (GTK_BOX (hbox2), image2, FALSE, FALSE, 0); label_file = gtk_label_new_with_mnemonic (""); gtk_widget_show (label_file); gtk_box_pack_start (GTK_BOX (hbox2), label_file, FALSE, FALSE, 0); g_signal_connect ((gpointer) button_file, "clicked", G_CALLBACK (on_button_file_clicked), gpointer(this)); // Select folder where to save to. vbox_folder = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox_folder); page_number_folder = gtk_assistant_append_page (GTK_ASSISTANT (assistant), vbox_folder); gtk_container_set_border_width (GTK_CONTAINER (vbox_folder), 10); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), vbox_folder, "Where would you like to save it?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), vbox_folder, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_folder, false); button_folder = gtk_button_new (); gtk_widget_show (button_folder); gtk_box_pack_start (GTK_BOX (vbox_folder), button_folder, FALSE, FALSE, 0); alignment2 = gtk_alignment_new (0.5, 0.5, 0, 0); gtk_widget_show (alignment2); gtk_container_add (GTK_CONTAINER (button_folder), alignment2); hbox2 = gtk_hbox_new (FALSE, 2); gtk_widget_show (hbox2); gtk_container_add (GTK_CONTAINER (alignment2), hbox2); image2 = gtk_image_new_from_stock ("gtk-open", GTK_ICON_SIZE_BUTTON); gtk_widget_show (image2); gtk_box_pack_start (GTK_BOX (hbox2), image2, FALSE, FALSE, 0); label_folder = gtk_label_new_with_mnemonic (""); gtk_widget_show (label_folder); gtk_box_pack_start (GTK_BOX (hbox2), label_folder, FALSE, FALSE, 0); g_signal_connect ((gpointer) button_folder, "clicked", G_CALLBACK (on_button_folder_clicked), gpointer(this)); // Build the confirmation stuff. label_confirm = gtk_label_new ("Export about to be done"); gtk_widget_show (label_confirm); page_number_confirm = gtk_assistant_append_page (GTK_ASSISTANT (assistant), label_confirm); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), label_confirm, "The export is about to be done"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), label_confirm, GTK_ASSISTANT_PAGE_CONFIRM); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), label_confirm, true); label_progress = gtk_label_new ("Export in progress"); gtk_widget_show (label_progress); page_number_progress = gtk_assistant_append_page (GTK_ASSISTANT (assistant), label_progress); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), label_progress, "The export is in progress"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), label_progress, GTK_ASSISTANT_PAGE_PROGRESS); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), label_progress, true); label_summary = gtk_label_new ("Export done"); gtk_widget_show (label_summary); summary_page_number = gtk_assistant_append_page (GTK_ASSISTANT (assistant), label_summary); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), label_summary, "The export was completed successfully"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), label_summary, GTK_ASSISTANT_PAGE_SUMMARY); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), label_summary, true); // Finish building assistant. gtk_widget_show_all (assistant); gtk_assistant_set_current_page (GTK_ASSISTANT (assistant), 0); } ExportAssistant::~ExportAssistant() { } void ExportAssistant::on_assistant_prepare_signal (GtkAssistant *assistant, GtkWidget *page, gpointer user_data) { ((ExportAssistant *) user_data)->on_assistant_prepare(page); } void ExportAssistant::on_assistant_prepare (GtkWidget *page) { extern Settings *settings; // Page to confirm or change the name of the Bible. if (page == vbox_bible_name) { if (bible_name.empty()) { bible_name = settings->genconfig.project_get(); } gtk_label_set_text (GTK_LABEL (label_project_name), bible_name.c_str()); if (bible_name.empty()) { gtk_label_set_text (GTK_LABEL (label_project_name), "No Bible selected"); } gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_bible_name, !bible_name.empty()); } // Page for date / time. if (page == vbox_date_time) { if (date_time == 0) { ProjectConfiguration * projectconfig = settings->projectconfig (bible_name); date_time = projectconfig->backup_incremental_last_time_get(); } gtk_label_set_text (GTK_LABEL (label_date_time), date_time_seconds_human_readable (date_time, true).c_str()); } // Page for comment. if (page == entry_comment) { ustring comment = gtk_entry_get_text (GTK_ENTRY (entry_comment)); if (comment.empty()) { ProjectConfiguration * projectconfig = settings->projectconfig (bible_name); gtk_entry_set_text (GTK_ENTRY (entry_comment), projectconfig->backup_comment_get().c_str()); } } // Page for filename to save to. if (page == vbox_file) { // We may have to retrieve the filename from the configuration under certain circumstances. if (filename.empty ()) { if (get_type () == etBible) { if (get_bible_type () == ebtBibleWorks) { filename = settings->genconfig.export_to_bibleworks_filename_get(); } } if (get_type () == etReferences) { filename = settings->genconfig.references_file_get(); } } gtk_label_set_text (GTK_LABEL (label_file), filename.c_str()); if (filename.empty()) { gtk_label_set_text (GTK_LABEL (label_file), "(None)"); } gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_file, !filename.empty()); } // Page for foldername where to save to. if (page == vbox_folder) { // Optionally retrieve the folder where to save the Sword module to. if (foldername.empty ()) { if (get_type () == etBible) { if (get_bible_type () == ebtSWORD) { foldername = settings->genconfig.export_to_sword_module_path_get().c_str(); } } } // By default save to the home directory. if (foldername.empty ()) { foldername = g_get_home_dir (); } gtk_label_set_text (GTK_LABEL (label_folder), foldername.c_str()); if (foldername.empty()) { gtk_label_set_text (GTK_LABEL (label_folder), "(None)"); } gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_folder, !foldername.empty()); } } void ExportAssistant::on_assistant_apply_signal (GtkAssistant *assistant, gpointer user_data) { ((ExportAssistant *) user_data)->on_assistant_apply(); } void ExportAssistant::on_assistant_apply () { // Take action depending on the type of export. switch (get_type()) { case etBible: { switch (get_bible_type()) { case ebtUSFM: { switch (get_usfm_type ()) { case eutEverything: { if (get_compressed ()) { export_to_usfm(bible_name, filename, true); } else { export_to_usfm(bible_name, foldername, false); } break; } case eutChangesOnly: { extern Settings * settings; ProjectConfiguration * projectconfig = settings->projectconfig (bible_name); ustring comment = gtk_entry_get_text (GTK_ENTRY (entry_comment)); projectconfig->backup_comment_set (comment); switch (get_usfm_changes_type ()) { case euctSinceLast: { guint32 last_time = projectconfig->backup_incremental_last_time_get(); export_to_usfm_changes (bible_name, last_time, comment); projectconfig->backup_incremental_last_time_set(date_time_seconds_get_current()); break; } case euctSinceDateTime: { export_to_usfm_changes (bible_name, date_time, comment); projectconfig->backup_incremental_last_time_set(date_time); break; } } break; } } break; } case ebtBibleWorks: { export_to_bibleworks(bible_name, filename); break; } case ebtOSIS: { switch (get_osis_type ()) { case eotRecommended: { export_to_osis_recommended (bible_name, filename); break; } case eotGoBibleCreator: { export_to_osis_for_go_bible_creator (bible_name, filename); break; } case eotOld: { export_to_osis_old (bible_name, filename); break; } } break; } case ebtSWORD: { extern Settings *settings; ProjectConfiguration *projectconfig = settings->projectconfig(bible_name); ustring name = gtk_entry_get_text(GTK_ENTRY(entry_sword_name)); replace_text(name, " ", "_"); projectconfig->sword_name_set(name); projectconfig->sword_description_set(gtk_entry_get_text(GTK_ENTRY(entry_sword_description))); projectconfig->sword_about_set(gtk_entry_get_text(GTK_ENTRY(entry_sword_about))); projectconfig->sword_license_set(gtk_entry_get_text(GTK_ENTRY(entry_sword_license))); projectconfig->sword_version_set(gtk_entry_get_text(GTK_ENTRY(entry_sword_version))); projectconfig->sword_language_set(gtk_entry_get_text(GTK_ENTRY(entry_sword_language))); settings->genconfig.export_to_sword_install_path_set(gtk_entry_get_text(GTK_ENTRY(entry_sword_install_path))); settings->genconfig.export_to_sword_module_path_set(foldername); export_to_sword (bible_name, foldername); sword_module_created = true; break; } case ebtOpenDocument: { extern Settings *settings; settings->genconfig.references_file_set(filename); export_to_opendocument(bible_name, filename); break; } case ebtGoBible: { if (gw_find_program_in_path("gobiblecreator")) { export_to_go_bible (bible_name, foldername); } else { gtkw_dialog_info (NULL, "The GoBibleCreator was not found. Install it. See the online help."); } break; } } break; } case etReferences: { if (my_references_window) { my_references_window->save(filename); } break; } case etStylesheet: { if (my_styles_window) { my_styles_window->export_sheet(filename, get_stylesheet_export_format ()); } break; } case etNotes: { vector ids_to_display; export_translation_notes(filename, ids_to_display, true); break; } case etKeyterms: { keyterms_export_renderings (my_check_keyterms_window->collection(), get_include_keyterms_without_rendering ()); break; } } // Save values. extern Settings * settings; if (get_type () == etBible) { if (get_bible_type () == ebtBibleWorks) { settings->genconfig.export_to_bibleworks_filename_set(filename); } } } gint ExportAssistant::assistant_forward_function (gint current_page, gpointer user_data) { return ((ExportAssistant *) user_data)->assistant_forward (current_page); } gint ExportAssistant::assistant_forward (gint current_page) { // Create forward sequence. forward_sequence.clear(); switch (get_type()) { case etBible: { switch (get_bible_type()) { case ebtUSFM: { switch (get_usfm_type ()) { case eutEverything: { forward_sequence.insert (page_number_select_type); forward_sequence.insert (page_number_bible_name); forward_sequence.insert (page_number_bible_type); forward_sequence.insert (page_number_usfm_type); forward_sequence.insert (page_number_zip); if (get_compressed ()) { forward_sequence.insert (page_number_file); } else { forward_sequence.insert (page_number_folder); } break; } case eutChangesOnly: { forward_sequence.insert (page_number_select_type); forward_sequence.insert (page_number_bible_name); forward_sequence.insert (page_number_bible_type); forward_sequence.insert (page_number_usfm_type); forward_sequence.insert (page_number_usfm_changes_type); switch (get_usfm_changes_type ()) { case euctSinceLast: { break; } case euctSinceDateTime: { forward_sequence.insert (page_number_date_time); break; } } forward_sequence.insert (page_number_comment); break; } } break; } case ebtBibleWorks: { forward_sequence.insert (page_number_select_type); forward_sequence.insert (page_number_bible_name); forward_sequence.insert (page_number_bible_type); forward_sequence.insert (page_number_file); break; } case ebtOSIS: { forward_sequence.insert (page_number_select_type); forward_sequence.insert (page_number_bible_name); forward_sequence.insert (page_number_bible_type); forward_sequence.insert (page_number_osis_type); forward_sequence.insert (page_number_file); switch (get_osis_type ()) { case eotRecommended: { break; } case eotGoBibleCreator: { break; } case eotOld: { break; } } break; } case ebtSWORD: { forward_sequence.insert (page_number_select_type); forward_sequence.insert (page_number_bible_name); forward_sequence.insert (page_number_bible_type); forward_sequence.insert (page_number_sword_name); forward_sequence.insert (page_number_sword_description); forward_sequence.insert (page_number_sword_about); forward_sequence.insert (page_number_sword_license); forward_sequence.insert (page_number_sword_version); forward_sequence.insert (page_number_sword_language); forward_sequence.insert (page_number_sword_install_path); forward_sequence.insert (page_number_folder); break; } case ebtOpenDocument: { forward_sequence.insert (page_number_select_type); forward_sequence.insert (page_number_bible_name); forward_sequence.insert (page_number_bible_type); forward_sequence.insert (page_number_file); break; } case ebtGoBible: { forward_sequence.insert (page_number_select_type); forward_sequence.insert (page_number_bible_name); forward_sequence.insert (page_number_bible_type); forward_sequence.insert (page_number_folder); break; } } break; } case etReferences: { forward_sequence.insert (page_number_select_type); forward_sequence.insert (page_number_file); break; } case etStylesheet: { forward_sequence.insert (page_number_select_type); forward_sequence.insert (page_number_stylesheet_format); forward_sequence.insert (page_number_file); break; } case etNotes: { forward_sequence.insert (page_number_select_type); forward_sequence.insert (page_number_file); break; } case etKeyterms: { forward_sequence.insert (page_number_keyterms_without_rendering); break; } } // Always end up going to the confirmation and summary pages. forward_sequence.insert (page_number_confirm); forward_sequence.insert (summary_page_number); // Take the next page in the forward sequence if there's one available. if (current_page < summary_page_number) { do { current_page++; } while (forward_sequence.find (current_page) == forward_sequence.end()); } return current_page; } void ExportAssistant::on_button_bible_name_clicked (GtkButton *button, gpointer user_data) { ((ExportAssistant *) user_data)->on_button_bible_name (); } void ExportAssistant::on_button_bible_name () { project_select(bible_name); on_assistant_prepare (vbox_bible_name); sword_values_set (); } void ExportAssistant::on_button_date_time_clicked (GtkButton *button, gpointer user_data) { ((ExportAssistant *) user_data)->on_button_date_time (); } void ExportAssistant::on_button_date_time () { DateDialog dialog(&date_time, true); dialog.run(); on_assistant_prepare (vbox_date_time); } void ExportAssistant::on_button_file_clicked (GtkButton *button, gpointer user_data) { ((ExportAssistant *) user_data)->on_button_file (); } void ExportAssistant::on_button_file () { ustring file = gtkw_file_chooser_save (assistant, "", filename); if (!file.empty()) { filename = file; if ((get_type() == etBible) && (get_bible_type() == ebtUSFM)) { compress_ensure_zip_suffix (filename); } on_assistant_prepare (vbox_file); } } void ExportAssistant::on_button_folder_clicked (GtkButton *button, gpointer user_data) { ((ExportAssistant *) user_data)->on_button_folder (); } void ExportAssistant::on_button_folder () { ustring folder = gtkw_file_chooser_select_folder (assistant, "", foldername); if (!folder.empty()) { foldername = folder; on_assistant_prepare (vbox_folder); } } ExportType ExportAssistant::get_type () { if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_select_type_bible))) { return etBible; } if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_select_type_references))) { return etReferences; } if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_select_type_stylesheet))) { return etStylesheet; } if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_select_type_notes))) { return etNotes; } if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_select_type_keyterms))) { return etKeyterms; } return etBible; } ExportBibleType ExportAssistant::get_bible_type () { if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_bible_usfm))) { return ebtUSFM; } if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_bible_bibleworks))) { return ebtBibleWorks; } if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_bible_osis))) { return ebtOSIS; } if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_bible_sword))) { return ebtSWORD; } if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_bible_opendocument))) { return ebtOpenDocument; } if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_bible_gobible))) { return ebtGoBible; } return ebtUSFM; } ExportUsfmType ExportAssistant::get_usfm_type () { if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_usfm_everything))) { return eutEverything; } if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_usfm_changes_only))) { return eutChangesOnly; } return eutEverything; } ExportUsfmChangesType ExportAssistant::get_usfm_changes_type () { if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_usfm_changes_since_last))) { return euctSinceLast; } if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_usfm_changes_since_date))) { return euctSinceDateTime; } return euctSinceLast; } bool ExportAssistant::get_compressed () { return gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (checkbutton_zip)); } ExportOsisType ExportAssistant::get_osis_type () { if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_osis_recommended))) { return eotRecommended; } if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_osis_go_bible))) { return eotGoBibleCreator; } if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_osis_old))) { return eotOld; } return eotRecommended; } void ExportAssistant::on_entry_sword_changed(GtkEditable * editable, gpointer user_data) { ((ExportAssistant *) user_data)->on_entry_sword(editable); } void ExportAssistant::on_entry_sword(GtkEditable *editable) { ustring value = gtk_entry_get_text(GTK_ENTRY(editable)); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), GTK_WIDGET (editable), !value.empty()); } void ExportAssistant::sword_values_set () { extern Settings * settings; ProjectConfiguration * projectconfig = settings->projectconfig (bible_name); gtk_entry_set_text(GTK_ENTRY(entry_sword_name), projectconfig->sword_name_get().c_str()); gtk_entry_set_text(GTK_ENTRY(entry_sword_description), projectconfig->sword_description_get().c_str()); gtk_entry_set_text(GTK_ENTRY(entry_sword_about), projectconfig->sword_about_get().c_str()); gtk_entry_set_text(GTK_ENTRY(entry_sword_license), projectconfig->sword_license_get().c_str()); gtk_entry_set_text(GTK_ENTRY(entry_sword_version), projectconfig->sword_version_get().c_str()); gtk_entry_set_text(GTK_ENTRY(entry_sword_language), projectconfig->sword_language_get().c_str()); gtk_entry_set_text(GTK_ENTRY(entry_sword_install_path), settings->genconfig.export_to_sword_install_path_get().c_str()); } bool ExportAssistant::get_include_keyterms_without_rendering () { return gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (checkbutton_keyterms_without_rendering)); } StylesheetExportFormatType ExportAssistant::get_stylesheet_export_format () { if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_stylesheet_format_bibledit))) { return seftBibledit; } if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_stylesheet_format_paratext))) { return seftParatext; } return seftBibledit; } bibledit-gtk-4.9/src/assistantexport.h000664 000766 000024 00000013674 12221507131 020275 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_ASSISTANT_EXPORT_H #define INCLUDED_ASSISTANT_EXPORT_H #include #include "ustring.h" #include "assistants.h" #include "backup.h" #include "export_utils.h" #include "windowreferences.h" #include "windowstyles.h" #include "windowcheckkeyterms.h" #include "stylesheetutils.h" class ExportAssistant : public AssistantBase { public: ExportAssistant(WindowReferences * references_window, WindowStyles * styles_window, WindowCheckKeyterms * check_keyterms_window); virtual ~ExportAssistant(); bool sword_module_created; private: // Local variables. WindowReferences * my_references_window; WindowStyles * my_styles_window; WindowCheckKeyterms * my_check_keyterms_window; // Assistant page preparation. static void on_assistant_prepare_signal (GtkAssistant *assistant, GtkWidget *page, gpointer user_data); void on_assistant_prepare (GtkWidget *page); // Backup type selection. int page_number_select_type; GtkWidget *vbox_select_type; GtkWidget *radiobutton_select_type_bible; GtkWidget *radiobutton_select_type_references; GtkWidget *radiobutton_select_type_stylesheet; GtkWidget *radiobutton_select_type_notes; GtkWidget *radiobutton_select_type_keyterms; ExportType get_type (); // Confirm or change Bible. int page_number_bible_name; GtkWidget *vbox_bible_name; GtkWidget *label_project_name; GtkWidget *button_bible_name; GtkWidget *alignment1; GtkWidget *hbox1; GtkWidget *image1; GtkWidget *label12; static void on_button_bible_name_clicked (GtkButton *button, gpointer user_data); void on_button_bible_name (); ustring bible_name; // Bible export type. int page_number_bible_type; GtkWidget *vbox_bible_type; GtkWidget *radiobutton_bible_usfm; GtkWidget *radiobutton_bible_bibleworks; GtkWidget *radiobutton_bible_osis; GtkWidget *radiobutton_bible_sword; GtkWidget *radiobutton_bible_opendocument; GtkWidget *radiobutton_bible_gobible; ExportBibleType get_bible_type (); // USFM export type. int page_number_usfm_type; GtkWidget *vbox_usfm_type; GtkWidget *radiobutton_usfm_everything; GtkWidget *radiobutton_usfm_changes_only; ExportUsfmType get_usfm_type (); // Changed USFM export type. int page_number_usfm_changes_type; GtkWidget *vbox_usfm_changes_type; GtkWidget *radiobutton_usfm_changes_since_last; GtkWidget *radiobutton_usfm_changes_since_date; ExportUsfmChangesType get_usfm_changes_type (); // OSIS export type. int page_number_osis_type; GtkWidget *vbox_osis_type; GtkWidget *radiobutton_osis_recommended; GtkWidget *radiobutton_osis_go_bible; GtkWidget *radiobutton_osis_old; ExportOsisType get_osis_type (); // Sword module variables. int page_number_sword_name; GtkWidget * entry_sword_name; int page_number_sword_description; GtkWidget * entry_sword_description; int page_number_sword_about; GtkWidget * entry_sword_about; int page_number_sword_license; GtkWidget * entry_sword_license; int page_number_sword_version; GtkWidget * entry_sword_version; int page_number_sword_language; GtkWidget * entry_sword_language; int page_number_sword_install_path; GtkWidget * entry_sword_install_path; static void on_entry_sword_changed (GtkEditable *editable, gpointer user_data); void on_entry_sword (GtkEditable *editable); void sword_values_set (); // Stylesheet format. int page_number_stylesheet_format; GtkWidget *vbox_stylesheet_format; GtkWidget *radiobutton_stylesheet_format_bibledit; GtkWidget *radiobutton_stylesheet_format_paratext; StylesheetExportFormatType get_stylesheet_export_format (); // Include keyterms without rendering? int page_number_keyterms_without_rendering; GtkWidget *checkbutton_keyterms_without_rendering; bool get_include_keyterms_without_rendering (); // Compress it? int page_number_zip; GtkWidget *checkbutton_zip; bool get_compressed (); // Select date and time. int page_number_date_time; GtkWidget *vbox_date_time; GtkWidget *button_date_time; GtkWidget *label_date_time; static void on_button_date_time_clicked (GtkButton *button, gpointer user_data); void on_button_date_time (); unsigned int date_time; // Comment entry. int page_number_comment; GtkWidget * entry_comment; // Select file. int page_number_file; GtkWidget *vbox_file; GtkWidget *button_file; GtkWidget *label_file; static void on_button_file_clicked (GtkButton *button, gpointer user_data); void on_button_file (); ustring filename; // Select folder. int page_number_folder; GtkWidget *vbox_folder; GtkWidget *button_folder; GtkWidget *label_folder; static void on_button_folder_clicked (GtkButton *button, gpointer user_data); void on_button_folder (); ustring foldername; // Confirmation stuff. int page_number_confirm; GtkWidget *label_confirm; int page_number_progress; GtkWidget *label_progress; GtkWidget *label_summary; int summary_page_number; static void on_assistant_apply_signal (GtkAssistant *assistant, gpointer user_data); void on_assistant_apply (); static gint assistant_forward_function (gint current_page, gpointer user_data); gint assistant_forward (gint current_page); set forward_sequence; }; #endif bibledit-gtk-4.9/src/assistantimport.cpp000644 000766 000024 00000070510 12453001367 020616 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "assistantimport.h" #include "help.h" #include "settings.h" #include "utilities.h" #include "gwrappers.h" #include "tiny_utilities.h" #include "directories.h" #include "unixwrappers.h" #include "git.h" #include "projectutils.h" #include "snapshots.h" #include "gtkwrappers.h" #include "compress.h" #include "dialogdate.h" #include "date_time_utils.h" #include "keyterms.h" #include "usfmtools.h" #include "books.h" #include "onlinebible.h" #include "combobox.h" ImportAssistant::ImportAssistant(WindowReferences * references_window, WindowStyles * styles_window, WindowCheckKeyterms * check_keyterms_window, WindowsOutpost * windows_outpost) : AssistantBase("Import", "import") // Import assistant. { gtk_assistant_set_forward_page_func (GTK_ASSISTANT (assistant), GtkAssistantPageFunc (assistant_forward_function), gpointer(this), NULL); g_signal_connect (G_OBJECT (assistant), "apply", G_CALLBACK (on_assistant_apply_signal), gpointer(this)); g_signal_connect (G_OBJECT (assistant), "prepare", G_CALLBACK (on_assistant_prepare_signal), gpointer(this)); introduction ("This helps you importing data"); // Configuration and initialization. extern Settings *settings; ustring project = settings->genconfig.project_get(); my_references_window = references_window; my_styles_window = styles_window; my_check_keyterms_window = check_keyterms_window; my_windows_outpost = windows_outpost; import_notes = false; import_keyterms = false; // Build the GUI for the task selector. vbox_select_type = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox_select_type); page_number_select_type = gtk_assistant_append_page (GTK_ASSISTANT (assistant), vbox_select_type); gtk_container_set_border_width (GTK_CONTAINER (vbox_select_type), 10); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), vbox_select_type, "What would you like to import?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), vbox_select_type, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_select_type, true); GSList *radiobutton_select_type_group = NULL; radiobutton_select_type_bible = gtk_radio_button_new_with_mnemonic (NULL, "Bible"); gtk_widget_show (radiobutton_select_type_bible); gtk_box_pack_start (GTK_BOX (vbox_select_type), radiobutton_select_type_bible, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_select_type_bible), radiobutton_select_type_group); radiobutton_select_type_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_select_type_bible)); radiobutton_select_type_references = gtk_radio_button_new_with_mnemonic (NULL, "References"); gtk_widget_show (radiobutton_select_type_references); gtk_box_pack_start (GTK_BOX (vbox_select_type), radiobutton_select_type_references, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_select_type_references), radiobutton_select_type_group); radiobutton_select_type_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_select_type_references)); // Importing references only works when the references window shows. gtk_widget_set_sensitive (radiobutton_select_type_references, references_window != NULL); radiobutton_select_type_stylesheet = gtk_radio_button_new_with_mnemonic (NULL, "Stylesheet"); gtk_widget_show (radiobutton_select_type_stylesheet); gtk_box_pack_start (GTK_BOX (vbox_select_type), radiobutton_select_type_stylesheet, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_select_type_stylesheet), radiobutton_select_type_group); radiobutton_select_type_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_select_type_stylesheet)); // Importing styles only works when the styles window shows. gtk_widget_set_sensitive (radiobutton_select_type_stylesheet, my_styles_window != NULL); radiobutton_select_type_notes = gtk_radio_button_new_with_mnemonic (NULL, "Notes"); gtk_widget_show (radiobutton_select_type_notes); gtk_box_pack_start (GTK_BOX (vbox_select_type), radiobutton_select_type_notes, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_select_type_notes), radiobutton_select_type_group); radiobutton_select_type_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_select_type_notes)); radiobutton_select_type_keyterms = gtk_radio_button_new_with_mnemonic (NULL, "Keyterms"); gtk_widget_show (radiobutton_select_type_keyterms); gtk_box_pack_start (GTK_BOX (vbox_select_type), radiobutton_select_type_keyterms, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_select_type_keyterms), radiobutton_select_type_group); radiobutton_select_type_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_select_type_keyterms)); // Importing keyterms only works when the check keyterms window shows. gtk_widget_set_sensitive (radiobutton_select_type_keyterms, my_check_keyterms_window != NULL); Shortcuts shortcuts_select_type (0); shortcuts_select_type.button (radiobutton_select_type_bible); shortcuts_select_type.button (radiobutton_select_type_references); shortcuts_select_type.button (radiobutton_select_type_stylesheet); shortcuts_select_type.button (radiobutton_select_type_notes); shortcuts_select_type.button (radiobutton_select_type_keyterms); shortcuts_select_type.consider_assistant(); shortcuts_select_type.process(); // Confirm or change Bible to import into. vbox_bible_name = gtk_vbox_new (FALSE, 5); gtk_widget_show (vbox_bible_name); page_number_bible_name = gtk_assistant_append_page (GTK_ASSISTANT (assistant), vbox_bible_name); gtk_container_set_border_width (GTK_CONTAINER (vbox_bible_name), 10); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), vbox_bible_name, "Is this the right Bible to import into?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), vbox_bible_name, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_bible_name, true); label_project_name = gtk_label_new ("Bible name"); gtk_widget_show (label_project_name); gtk_box_pack_start (GTK_BOX (vbox_bible_name), label_project_name, FALSE, FALSE, 0); button_bible_name = gtk_button_new (); gtk_widget_show (button_bible_name); gtk_box_pack_start (GTK_BOX (vbox_bible_name), button_bible_name, FALSE, FALSE, 0); g_signal_connect ((gpointer) button_bible_name, "clicked", G_CALLBACK (on_button_bible_name_clicked), gpointer (this)); GtkWidget *alignment1; GtkWidget *hbox1; GtkWidget *image1; GtkWidget *label12; alignment1 = gtk_alignment_new (0.5, 0.5, 0, 0); gtk_widget_show (alignment1); gtk_container_add (GTK_CONTAINER (button_bible_name), alignment1); hbox1 = gtk_hbox_new (FALSE, 2); gtk_widget_show (hbox1); gtk_container_add (GTK_CONTAINER (alignment1), hbox1); image1 = gtk_image_new_from_stock ("gtk-open", GTK_ICON_SIZE_BUTTON); gtk_widget_show (image1); gtk_box_pack_start (GTK_BOX (hbox1), image1, FALSE, FALSE, 0); label12 = gtk_label_new_with_mnemonic ("Choose another one"); gtk_widget_show (label12); gtk_box_pack_start (GTK_BOX (hbox1), label12, FALSE, FALSE, 0); Shortcuts shortcuts_bible_name (0); shortcuts_bible_name.label (label12); shortcuts_bible_name.consider_assistant(); shortcuts_bible_name.process(); // Select what type of Bible data to import. vbox_bible_type = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox_bible_type); page_number_bible_type = gtk_assistant_append_page (GTK_ASSISTANT (assistant), vbox_bible_type); gtk_container_set_border_width (GTK_CONTAINER (vbox_bible_type), 10); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), vbox_bible_type, "What type of data would you like to import?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), vbox_bible_type, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_bible_type, true); GSList *radiobutton_bible_type_group = NULL; radiobutton_bible_usfm = gtk_radio_button_new_with_mnemonic (NULL, "Unified Standard Format Markers (USFM)"); gtk_widget_show (radiobutton_bible_usfm); gtk_box_pack_start (GTK_BOX (vbox_bible_type), radiobutton_bible_usfm, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_bible_usfm), radiobutton_bible_type_group); radiobutton_bible_type_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_bible_usfm)); radiobutton_bible_bibleworks = gtk_radio_button_new_with_mnemonic (NULL, "BibleWorks Exported Database"); gtk_widget_show (radiobutton_bible_bibleworks); gtk_box_pack_start (GTK_BOX (vbox_bible_type), radiobutton_bible_bibleworks, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_bible_bibleworks), radiobutton_bible_type_group); radiobutton_bible_type_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_bible_bibleworks)); radiobutton_bible_online_bible = gtk_radio_button_new_with_mnemonic (NULL, "Online Bible Text"); gtk_widget_show (radiobutton_bible_online_bible); gtk_box_pack_start (GTK_BOX (vbox_bible_type), radiobutton_bible_online_bible, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_bible_online_bible), radiobutton_bible_type_group); radiobutton_bible_type_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_bible_online_bible)); radiobutton_bible_raw_text = gtk_radio_button_new_with_mnemonic (NULL, "Raw Text"); gtk_widget_show (radiobutton_bible_raw_text); gtk_box_pack_start (GTK_BOX (vbox_bible_type), radiobutton_bible_raw_text, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_bible_raw_text), radiobutton_bible_type_group); radiobutton_bible_type_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_bible_raw_text)); Shortcuts shortcuts_select_bible_type (0); shortcuts_select_bible_type.button (radiobutton_bible_usfm); shortcuts_select_bible_type.button (radiobutton_bible_bibleworks); shortcuts_select_bible_type.button (radiobutton_bible_online_bible); shortcuts_select_bible_type.button (radiobutton_bible_raw_text); shortcuts_select_bible_type.consider_assistant(); shortcuts_select_bible_type.process(); // Online Bible connection? label_online_bible_running = gtk_label_new (""); gtk_widget_show (label_online_bible_running); page_number_online_bible_running = gtk_assistant_append_page (GTK_ASSISTANT (assistant), label_online_bible_running); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), label_online_bible_running, "Connected to the Online Bible?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), label_online_bible_running, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), label_online_bible_running, false); // In case there's no data in the project, the Online Bible won't get connected. // Therefore connect manually. if (online_bible_is_running ()) { my_windows_outpost->OnlineBibleReferenceGet (); } // Online Bible to import. vbox_online_bible_bible = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox_online_bible_bible); page_number_online_bible_bible = gtk_assistant_append_page (GTK_ASSISTANT (assistant), vbox_online_bible_bible); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), vbox_online_bible_bible, "Which Bible would you like to import?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), vbox_online_bible_bible, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_online_bible_bible, false); combobox_online_bible_bible = gtk_combo_box_new_text (); gtk_widget_show (combobox_online_bible_bible); gtk_box_pack_start (GTK_BOX (vbox_online_bible_bible), combobox_online_bible_bible, false, false, 0); g_signal_connect ((gpointer) combobox_online_bible_bible, "changed", G_CALLBACK (on_combobox_online_bible_bible_changed), gpointer (this)); // Select files to import from. vbox_files = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox_files); page_number_files = gtk_assistant_append_page (GTK_ASSISTANT (assistant), vbox_files); gtk_container_set_border_width (GTK_CONTAINER (vbox_files), 10); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), vbox_files, "Which file or files would you like to import?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), vbox_files, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_files, false); button_files = gtk_button_new (); gtk_widget_show (button_files); gtk_box_pack_start (GTK_BOX (vbox_files), button_files, FALSE, FALSE, 0); GtkWidget * alignment2 = gtk_alignment_new (0.5, 0.5, 0, 0); gtk_widget_show (alignment2); gtk_container_add (GTK_CONTAINER (button_files), alignment2); GtkWidget * hbox2 = gtk_hbox_new (FALSE, 2); gtk_widget_show (hbox2); gtk_container_add (GTK_CONTAINER (alignment2), hbox2); GtkWidget * image2 = gtk_image_new_from_stock ("gtk-open", GTK_ICON_SIZE_BUTTON); gtk_widget_show (image2); gtk_box_pack_start (GTK_BOX (hbox2), image2, FALSE, FALSE, 0); GtkWidget * label = gtk_label_new_with_mnemonic ("Select files"); gtk_widget_show (label); gtk_box_pack_start (GTK_BOX (hbox2), label, FALSE, FALSE, 0); g_signal_connect ((gpointer) button_files, "clicked", G_CALLBACK (on_button_files_clicked), gpointer(this)); label_files = gtk_label_new (""); gtk_widget_show (label_files); gtk_box_pack_start (GTK_BOX (vbox_files), label_files, FALSE, FALSE, 0); // Build the confirmation stuff. label_confirm = gtk_label_new ("Import about to be done"); gtk_widget_show (label_confirm); page_number_confirm = gtk_assistant_append_page (GTK_ASSISTANT (assistant), label_confirm); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), label_confirm, "The import is about to be done"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), label_confirm, GTK_ASSISTANT_PAGE_CONFIRM); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), label_confirm, true); label_progress = gtk_label_new (""); gtk_widget_show (label_progress); gtk_assistant_append_page (GTK_ASSISTANT (assistant), label_progress); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), label_progress, ""); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), label_progress, GTK_ASSISTANT_PAGE_PROGRESS); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), label_progress, true); label_summary = gtk_label_new ("Import done"); gtk_widget_show (label_summary); summary_page_number = gtk_assistant_append_page (GTK_ASSISTANT (assistant), label_summary); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), label_summary, "Ready"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), label_summary, GTK_ASSISTANT_PAGE_SUMMARY); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), label_summary, true); // Finish building assistant. gtk_widget_show_all (assistant); gtk_assistant_set_current_page (GTK_ASSISTANT (assistant), 0); } ImportAssistant::~ImportAssistant() { my_windows_outpost->OnlineBibleDirectMode = false; } void ImportAssistant::on_assistant_prepare_signal (GtkAssistant *assistant, GtkWidget *page, gpointer user_data) { ((ImportAssistant *) user_data)->on_assistant_prepare(page); } void ImportAssistant::on_assistant_prepare (GtkWidget *page) { extern Settings *settings; // Page to confirm or change the name of the Bible. if (page == vbox_bible_name) { if (bible_name.empty()) { bible_name = settings->genconfig.project_get(); } gtk_label_set_text (GTK_LABEL (label_project_name), bible_name.c_str()); if (bible_name.empty()) { gtk_label_set_text (GTK_LABEL (label_project_name), "No Bible selected"); } gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_bible_name, !bible_name.empty()); } // Online Bible connected? if (page == label_online_bible_running) { if (my_windows_outpost->online_bible_server_connected) { gtk_label_set_text (GTK_LABEL (label_online_bible_running), "Yes, connected to the Online Bible"); } else { gtk_label_set_text (GTK_LABEL (label_online_bible_running), "No, could not connect to the Online Bible\nIs the Online Bible running?"); } gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), label_online_bible_running, my_windows_outpost->online_bible_server_connected); } // Online Bible to import. Set the available Bibles. if (page == vbox_online_bible_bible) { my_windows_outpost->OnlineBibleDirectMode = true; vector bibles = combobox_get_strings (combobox_online_bible_bible); if (bibles.empty()) { ustring response = my_windows_outpost->OnlineBibleDirectCommandResponseGet ("GetVersionList"); if (online_bible_ok_reply_validate (response)) { ParseLine parseline (response); if (!parseline.lines.empty()) { combobox_set_strings (combobox_online_bible_bible, parseline.lines); combobox_set_index (combobox_online_bible_bible, 0); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_online_bible_bible, true); } } } } // Page for filenames to import. if (page == vbox_files) { if (files_names.empty()) { files_messages.push_back ("No files selected"); } ustring label; label.append ("Files count: "); label.append (convert_to_string (files_names.size())); label.append ("\n"); for (unsigned int i = 0; i < files_messages.size(); i++) { label.append ("\n"); label.append (files_messages[i]); } gtk_label_set_text (GTK_LABEL (label_files), label.c_str()); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_files, files_messages.empty()); } // Page for summary. if (page == label_summary) { ustring label; for (unsigned int i = 0; i < summary_messages.size(); i++) { if (i) label.append ("\n"); label.append (summary_messages[i]); } if (!label.empty()) { gtk_label_set_text (GTK_LABEL (label_summary), label.c_str()); } gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), label_summary, summary_messages.empty()); } } void ImportAssistant::on_assistant_apply_signal (GtkAssistant *assistant, gpointer user_data) { ((ImportAssistant *) user_data)->on_assistant_apply(); } void ImportAssistant::on_assistant_apply () { // Take action depending on the type of import. switch (get_type()) { case itBible: { switch (get_bible_type()) { case ibtUsfm: { ProgressWindow progresswindow("Importing files", false); progresswindow.set_iterate(0, 1, files_names.size()); for (unsigned int i = 0; i < files_names.size(); i++) { progresswindow.iterate(); import_usfm_file (files_names[i], files_book_ids[i], bible_name, summary_messages); } break; } case ibtBibleWorks: { import_bibleworks_text_file (files_names[0], bible_name, summary_messages); break; } case ibtOnlineBible: { import_online_bible (my_windows_outpost, combobox_get_active_string (combobox_online_bible_bible), bible_name, summary_messages); break; } case ibtRawText: { summary_messages.push_back ("Importing raw text is a manual process. The online help provides more information on that."); break; } } break; } case itReferences: { summary_messages.push_back ("Importing references is done in the references window."); summary_messages.push_back ("In that window, click on [actions], then click on \"Import a list of references\"."); break; } case itStylesheet: { if (my_styles_window) { my_styles_window->on_stylesheet_import(); } break; } case itNotes: { summary_messages.push_back ("After this window closes an opportunity will be offered to import notes."); import_notes = true; break; } case itKeyterms: { summary_messages.push_back ("After this window closes an opportunity will be offered to import keyterms."); import_keyterms = true; break; } } } gint ImportAssistant::assistant_forward_function (gint current_page, gpointer user_data) { return ((ImportAssistant *) user_data)->assistant_forward (current_page); } gint ImportAssistant::assistant_forward (gint current_page) { // Create forward sequence. forward_sequence.clear(); forward_sequence.insert (page_number_select_type); switch (get_type()) { case itBible: { switch (get_bible_type()) { case ibtUsfm: { forward_sequence.insert (page_number_bible_name); forward_sequence.insert (page_number_bible_type); forward_sequence.insert (page_number_files); break; } case ibtBibleWorks: { forward_sequence.insert (page_number_bible_name); forward_sequence.insert (page_number_bible_type); forward_sequence.insert (page_number_files); break; } case ibtOnlineBible: { forward_sequence.insert (page_number_bible_name); forward_sequence.insert (page_number_bible_type); forward_sequence.insert (page_number_online_bible_running); forward_sequence.insert (page_number_online_bible_bible); break; } case ibtRawText: { forward_sequence.insert (page_number_bible_name); forward_sequence.insert (page_number_bible_type); break; } } break; } case itReferences: { break; } case itStylesheet: { break; } case itNotes: { break; } case itKeyterms: { break; } } // Always end up going to the confirmation and summary pages. forward_sequence.insert (page_number_confirm); forward_sequence.insert (summary_page_number); // Take the next page in the forward sequence. if (current_page < summary_page_number) { do { current_page++; } while (forward_sequence.find (current_page) == forward_sequence.end()); } return current_page; } void ImportAssistant::on_button_bible_name_clicked (GtkButton *button, gpointer user_data) { ((ImportAssistant *) user_data)->on_button_bible_name (); } void ImportAssistant::on_button_bible_name () { project_select(bible_name); on_assistant_prepare (vbox_bible_name); } void ImportAssistant::on_button_files_clicked (GtkButton *button, gpointer user_data) { ((ImportAssistant *) user_data)->on_button_files (); } void ImportAssistant::on_button_files () // Selection and processing of the files to import. { // Set directory. ustring directory; if (!files_names.empty()) { directory = gw_path_get_dirname (files_names[0]); } // Processing variables. files_messages.clear(); files_book_ids.clear(); // Select files. { vector files = gtkw_file_chooser_open_multiple (assistant, "", directory); if (!files.empty()) { files_names = files; } } // Ensure that there are only uncompressed files, or only one compressed file. vector compressed_files; for (unsigned int i = 0; i < files_names.size(); i++) { if (compressed_archive_recognized (files_names[i])) compressed_files.push_back (files_names[i]); } if (!compressed_files.empty()) { if (compressed_files.size() > 1) { files_messages.push_back ("You have selected more than one compressed file"); } if (compressed_files.size() == 1) { if (files_names.size() != 1) { files_messages.push_back ("You have selected a mixture of normal and compressed files"); } } } // Optionally uncompress the archive and let the user select files from within it. if (files_messages.empty()) { if (compressed_files.size() == 1) { ustring unpack_directory = gw_build_filename (Directories->get_temp (), "uncompress"); unix_rmdir (unpack_directory); uncompress (compressed_files[0], unpack_directory); gtkw_dialog_info (assistant, "You will now be asked to select files from within the compressed archive"); files_names = gtkw_file_chooser_open_multiple (assistant, "", unpack_directory); } } // Check that all files are in Unicode. if (files_messages.empty()) { vector unicode_files; vector non_unicode_files; for (unsigned int i = 0; i < files_names.size(); i++) { ustring contents; gchar *s; g_file_get_contents(files_names[i].c_str(), &s, NULL, NULL); contents = s; g_free(s); if (contents.validate()) { unicode_files.push_back (files_names[i]); } else { non_unicode_files.push_back (files_names[i]); } } files_names = unicode_files; if (!non_unicode_files.empty()) { files_messages.push_back ("The following files are not in the right Unicode format and are therefore not fit for import:"); for (unsigned int i = 0; i < non_unicode_files.size(); i++) { files_messages.push_back (non_unicode_files[i]); } files_messages.push_back ("The online help provides more information about how to make these fit for use."); } } // Check that at least one file was selected. if (files_messages.empty()) { if (files_names.empty()) { files_messages.push_back ("No files were selected"); } } // Specific checks for each import type. if (files_messages.empty()) { switch (get_type ()) { case itBible: { switch (get_bible_type()) { case ibtUsfm: { import_check_usfm_files (files_names, files_book_ids, bible_name, files_messages); break; } case ibtBibleWorks: { import_check_bibleworks_file (files_names, files_book_ids, bible_name, files_messages); break; } case ibtOnlineBible: { break; } case ibtRawText: { break; } } break; } case itReferences: { break; } case itStylesheet: { break; } case itNotes: { break; } case itKeyterms: { break; } } } // Gui update. on_assistant_prepare (vbox_files); } ImportType ImportAssistant::get_type () { if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_select_type_bible))) { return itBible; } if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_select_type_references))) { return itReferences; } if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_select_type_stylesheet))) { return itStylesheet; } if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_select_type_notes))) { return itNotes; } if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_select_type_keyterms))) { return itKeyterms; } return itBible; } ImportBibleType ImportAssistant::get_bible_type () { if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_bible_usfm))) { return ibtUsfm; } if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_bible_bibleworks))) { return ibtBibleWorks; } if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_bible_online_bible))) { return ibtOnlineBible; } if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_bible_raw_text))) { return ibtRawText; } return ibtUsfm; } void ImportAssistant::on_combobox_online_bible_bible_changed (GtkComboBox *combobox, gpointer user_data) { ((ImportAssistant *) user_data)->on_combobox_online_bible_bible (); } void ImportAssistant::on_combobox_online_bible_bible () { } bibledit-gtk-4.9/src/assistantimport.h000664 000766 000024 00000007760 12221507150 020266 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_ASSISTANT_IMPORT_H #define INCLUDED_ASSISTANT_IMPORT_H #include #include "ustring.h" #include "assistants.h" #include "backup.h" #include "export_utils.h" #include "windowreferences.h" #include "windowstyles.h" #include "windowcheckkeyterms.h" #include "import.h" #include "bibleworks.h" #include "windowsoutpost.h" class ImportAssistant : public AssistantBase { public: ImportAssistant(WindowReferences * references_window, WindowStyles * styles_window, WindowCheckKeyterms * check_keyterms_window, WindowsOutpost * windows_outpost); virtual ~ImportAssistant(); bool import_notes; bool import_keyterms; private: // Local variables. WindowReferences * my_references_window; WindowStyles * my_styles_window; WindowCheckKeyterms * my_check_keyterms_window; WindowsOutpost * my_windows_outpost; // Assistant page preparation. static void on_assistant_prepare_signal (GtkAssistant *assistant, GtkWidget *page, gpointer user_data); void on_assistant_prepare (GtkWidget *page); // Import type selection. int page_number_select_type; GtkWidget *vbox_select_type; GtkWidget *radiobutton_select_type_bible; GtkWidget *radiobutton_select_type_references; GtkWidget *radiobutton_select_type_stylesheet; GtkWidget *radiobutton_select_type_notes; GtkWidget *radiobutton_select_type_keyterms; ImportType get_type (); // Confirm or change Bible. int page_number_bible_name; GtkWidget *vbox_bible_name; GtkWidget *label_project_name; GtkWidget *button_bible_name; GtkWidget *alignment1; GtkWidget *hbox1; GtkWidget *image1; GtkWidget *label12; static void on_button_bible_name_clicked (GtkButton *button, gpointer user_data); void on_button_bible_name (); ustring bible_name; // Bible import type. int page_number_bible_type; GtkWidget *vbox_bible_type; GtkWidget *radiobutton_bible_usfm; GtkWidget *radiobutton_bible_bibleworks; GtkWidget *radiobutton_bible_online_bible; GtkWidget *radiobutton_bible_raw_text; ImportBibleType get_bible_type (); // Online Bible running? int page_number_online_bible_running; GtkWidget * label_online_bible_running; // Online Bible to import. int page_number_online_bible_bible; GtkWidget * vbox_online_bible_bible; GtkWidget * combobox_online_bible_bible; static void on_combobox_online_bible_bible_changed (GtkComboBox *combobox, gpointer user_data); void on_combobox_online_bible_bible (); // Select files. int page_number_files; GtkWidget *vbox_files; GtkWidget *button_files; GtkWidget *label_files; static void on_button_files_clicked (GtkButton *button, gpointer user_data); void on_button_files (); vector files_names; vector files_book_ids; vector files_messages; // Confirmation stuff. int page_number_confirm; GtkWidget *label_confirm; GtkWidget *label_progress; GtkWidget *label_summary; int summary_page_number; vector summary_messages; static void on_assistant_apply_signal (GtkAssistant *assistant, gpointer user_data); void on_assistant_apply (); static gint assistant_forward_function (gint current_page, gpointer user_data); gint assistant_forward (gint current_page); set forward_sequence; }; #endif bibledit-gtk-4.9/src/assistantimportkeyterms.cpp000664 000766 000024 00000023564 12221507140 022404 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "assistantimportkeyterms.h" #include "help.h" #include "floatingwindow.h" #include "keyterms.h" #include "tiny_utilities.h" #include "projectutils.h" #include "settings.h" #include "gtkwrappers.h" ImportKeytermsAssistant::ImportKeytermsAssistant(int dummy) : AssistantBase("Keyterms", "importkeyterms") // Assistant for adding keyterms. { gtk_assistant_set_forward_page_func (GTK_ASSISTANT (assistant), GtkAssistantPageFunc (assistant_forward_function), gpointer(this), NULL); g_signal_connect (G_OBJECT (assistant), "apply", G_CALLBACK (on_assistant_apply_signal), gpointer(this)); introduction ("Text files that contain keyterms can be imported into the keyterms database."); // File to import. vbox_select_file = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox_select_file); gtk_assistant_append_page (GTK_ASSISTANT (assistant), vbox_select_file); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), vbox_select_file, "Which file would you like to import?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), vbox_select_file, GTK_ASSISTANT_PAGE_CONTENT); label5 = gtk_label_new ("The file that will be imported should satisfy certain conditions. The online help provides more information."); gtk_widget_show (label5); gtk_box_pack_start (GTK_BOX (vbox_select_file), label5, FALSE, FALSE, 0); gtk_label_set_line_wrap (GTK_LABEL (label5), TRUE); button_open = gtk_file_chooser_button_new ("", GTK_FILE_CHOOSER_ACTION_OPEN); gtk_widget_show (button_open); gtk_box_pack_start (GTK_BOX (vbox_select_file), button_open, FALSE, FALSE, 0); g_signal_connect ((gpointer) button_open, "selection-changed", G_CALLBACK (on_file_chooser_open_file_activated), gpointer (this)); // Type to import. vbox_type = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox_type); gtk_assistant_append_page (GTK_ASSISTANT (assistant), vbox_type); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), vbox_type, "What type of file are you importing?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), vbox_type, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_type, true); GSList *radiobutton_type_standard_group = NULL; radiobutton_type_standard = gtk_radio_button_new_with_mnemonic (NULL, "Standard textfile"); gtk_widget_show (radiobutton_type_standard); gtk_box_pack_start (GTK_BOX (vbox_type), radiobutton_type_standard, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_type_standard), radiobutton_type_standard_group); radiobutton_type_standard_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_type_standard)); radiobutton_type_otkey_db = gtk_radio_button_new_with_mnemonic (NULL, "OTKEY.DB"); gtk_widget_show (radiobutton_type_otkey_db); gtk_box_pack_start (GTK_BOX (vbox_type), radiobutton_type_otkey_db, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_type_otkey_db), radiobutton_type_standard_group); radiobutton_type_standard_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_type_otkey_db)); radiobutton_type_ktref_db = gtk_radio_button_new_with_mnemonic (NULL, "KTREF.DB"); gtk_widget_show (radiobutton_type_ktref_db); gtk_box_pack_start (GTK_BOX (vbox_type), radiobutton_type_ktref_db, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_type_ktref_db), radiobutton_type_standard_group); radiobutton_type_standard_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_type_ktref_db)); radiobutton_type_ktbh = gtk_radio_button_new_with_mnemonic (NULL, "Key Terms in Biblical Hebrew Project"); gtk_widget_show (radiobutton_type_ktbh); gtk_box_pack_start (GTK_BOX (vbox_type), radiobutton_type_ktbh, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_type_ktbh), radiobutton_type_standard_group); radiobutton_type_standard_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_type_ktbh)); // Collection. vbox_category = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox_category); gtk_assistant_append_page (GTK_ASSISTANT (assistant), vbox_category); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), vbox_category, "Into which collection will you import?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), vbox_category, GTK_ASSISTANT_PAGE_CONTENT); entry_category = gtk_entry_new (); gtk_widget_show (entry_category); gtk_box_pack_start (GTK_BOX (vbox_category), entry_category, FALSE, FALSE, 0); g_signal_connect ((gpointer) entry_category, "changed", G_CALLBACK (on_entry_category_changed), gpointer (this)); label_category = gtk_label_new (""); gtk_widget_show (label_category); gtk_box_pack_start (GTK_BOX (vbox_category), label_category, FALSE, FALSE, 0); gtk_label_set_line_wrap (GTK_LABEL (label_category), TRUE); on_entry_category(); // Importing. label_confirm = gtk_label_new ("Ready for import"); gtk_widget_show (label_confirm); gtk_assistant_append_page (GTK_ASSISTANT (assistant), label_confirm); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), label_confirm, "Ready for import"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), label_confirm, GTK_ASSISTANT_PAGE_CONFIRM); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), label_confirm, true); label_progress = gtk_label_new ("Importing..."); gtk_widget_show (label_progress); gtk_assistant_append_page (GTK_ASSISTANT (assistant), label_progress); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), label_progress, "Importing"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), label_progress, GTK_ASSISTANT_PAGE_PROGRESS); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), label_progress, true); label_summary = gtk_label_new ("Import done."); gtk_widget_show (label_summary); summary_page_number = gtk_assistant_append_page (GTK_ASSISTANT (assistant), label_summary); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), label_summary, "Ready"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), label_summary, GTK_ASSISTANT_PAGE_SUMMARY); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), label_summary, true); // Finish assistant. gtk_widget_show_all (assistant); gtk_assistant_set_current_page (GTK_ASSISTANT (assistant), 0); } ImportKeytermsAssistant::~ImportKeytermsAssistant() { } void ImportKeytermsAssistant::on_assistant_apply_signal (GtkAssistant *assistant, gpointer user_data) { ((ImportKeytermsAssistant *) user_data)->on_assistant_apply(); } void ImportKeytermsAssistant::on_assistant_apply () { ustring filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (button_open)); ustring category = gtk_entry_get_text (GTK_ENTRY (entry_category)); if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_type_standard))) { keyterms_import_textfile (filename, category); } if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_type_otkey_db))) { keyterms_import_otkey_db (filename, category); } if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_type_ktref_db))) { keyterms_import_ktref_db (filename, category); } if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_type_ktbh))) { keyterms_import_ktbh_txt (filename, category); } // Show summary. gtk_assistant_set_current_page (GTK_ASSISTANT (assistant), summary_page_number); } gint ImportKeytermsAssistant::assistant_forward_function (gint current_page, gpointer user_data) { return ((ImportKeytermsAssistant *) user_data)->assistant_forward (current_page); } gint ImportKeytermsAssistant::assistant_forward (gint current_page) { // Default behaviour is to go to the next page. return ++current_page; } void ImportKeytermsAssistant::on_file_chooser_open_file_activated (GtkFileChooser *chooser, gpointer user_data) { ((ImportKeytermsAssistant *) user_data)->on_file_chooser_open (); } void ImportKeytermsAssistant::on_file_chooser_open () { ustring filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (button_open)); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_select_file, !filename.empty ()); } void ImportKeytermsAssistant::on_entry_category_changed (GtkEditable *editable, gpointer user_data) { ((ImportKeytermsAssistant *) user_data)->on_entry_category (); } void ImportKeytermsAssistant::on_entry_category () // Give appropriate information about entering the category. { ustring category = gtk_entry_get_text (GTK_ENTRY (entry_category)); ustring information; bool exists = false; if (category.empty ()) { information = "Please enter a collection."; } else { vector categories = keyterms_get_categories(); for (unsigned int i = 0; i < categories.size(); i++) { if (category == categories[i]) { exists = true; } } if (exists) { information = "This collection already exists."; } } gtk_label_set_text (GTK_LABEL (label_category), information.c_str()); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_category, (!category.empty()) && (!exists)); } bibledit-gtk-4.9/src/assistantimportkeyterms.h000664 000766 000024 00000004203 12221507141 022037 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_ASSISTANT_IMPORT_KEYTERMS_H #define INCLUDED_ASSISTANT_IMPORT_KEYTERMS_H #include #include "ustring.h" #include "reference.h" #include "assistants.h" class ImportKeytermsAssistant : public AssistantBase { public: ImportKeytermsAssistant(int dummy); virtual ~ImportKeytermsAssistant(); private: // File to import. GtkWidget *vbox_select_file; GtkWidget *label5; GtkWidget *button_open; static void on_file_chooser_open_file_activated (GtkFileChooser *chooser, gpointer user_data); void on_file_chooser_open (); // Type to import. GtkWidget *vbox_type; GtkWidget *radiobutton_type_standard; GtkWidget *radiobutton_type_otkey_db; GtkWidget *radiobutton_type_ktref_db; GtkWidget *radiobutton_type_ktbh; // Category. GtkWidget *vbox_category; GtkWidget *entry_category; GtkWidget *label_category; static void on_entry_category_changed (GtkEditable *editable, gpointer user_data); void on_entry_category (); // Importing. GtkWidget *label_confirm; GtkWidget *label_progress; GtkWidget *label_summary; unsigned int summary_page_number; static void on_assistant_apply_signal (GtkAssistant *assistant, gpointer user_data); void on_assistant_apply (); static gint assistant_forward_function (gint current_page, gpointer user_data); gint assistant_forward (gint current_page); }; #endif bibledit-gtk-4.9/src/assistantremoterepository.cpp000644 000766 000024 00000111427 12453001367 022742 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "assistantremoterepository.h" #include "help.h" #include "settings.h" #include "utilities.h" #include "gwrappers.h" #include "tiny_utilities.h" #include "directories.h" #include "unixwrappers.h" #include "git.h" #include "projectutils.h" #include "snapshots.h" #include "progresswindow.h" #include "notes_utils.h" RemoteRepositoryAssistant::RemoteRepositoryAssistant(int dummy) : AssistantBase("Remote repository setup", "menu-preferences/dialog-remote-repository") // Assistant for managing the remote repository. { // Configuration and initialization. extern Settings *settings; bible = settings->genconfig.project_get(); event_id_entry_repository = 0; persistent_clone_directory = git_testing_directory ("clone"); write_access_granted = false; ignore_entry_repository_changed = false; gtk_assistant_set_forward_page_func (GTK_ASSISTANT (assistant), GtkAssistantPageFunc (assistant_forward_function), gpointer(this), NULL); g_signal_connect (G_OBJECT (assistant), "apply", G_CALLBACK (on_assistant_apply_signal), gpointer(this)); g_signal_connect (G_OBJECT (assistant), "prepare", G_CALLBACK (on_assistant_prepare_signal), gpointer(this)); introduction ("Remote repository management for Bible " + bible + " or the project notes"); // Build the GUI for the Bible or notes selector. vbox_bible_notes_selector = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox_bible_notes_selector); page_number_bible_notes_selector = gtk_assistant_append_page (GTK_ASSISTANT (assistant), vbox_bible_notes_selector); GSList *radiobutton_bible_notes_selector_group = NULL; radiobutton_bible_notes_selector_bible = gtk_radio_button_new_with_mnemonic (NULL, "B_ible repository"); gtk_widget_show (radiobutton_bible_notes_selector_bible); gtk_box_pack_start (GTK_BOX (vbox_bible_notes_selector), radiobutton_bible_notes_selector_bible, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_bible_notes_selector_bible), radiobutton_bible_notes_selector_group); radiobutton_bible_notes_selector_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_bible_notes_selector_bible)); radiobutton_bible_notes_selector_notes = gtk_radio_button_new_with_mnemonic (NULL, "Project _notes repository"); gtk_widget_show (radiobutton_bible_notes_selector_notes); gtk_box_pack_start (GTK_BOX (vbox_bible_notes_selector), radiobutton_bible_notes_selector_notes, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_bible_notes_selector_notes), radiobutton_bible_notes_selector_group); radiobutton_bible_notes_selector_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_bible_notes_selector_notes)); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), vbox_bible_notes_selector, "What type of repository would you like to set?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), vbox_bible_notes_selector, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_bible_notes_selector, true); // Build the GUI for the setting whether to use a remote repository. checkbutton_use_repository = gtk_check_button_new_with_mnemonic ("_Use remote repository"); gtk_widget_show (checkbutton_use_repository); page_number_use_repository = gtk_assistant_append_page (GTK_ASSISTANT (assistant), checkbutton_use_repository); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), checkbutton_use_repository, "Would you like to use a remote repository?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), checkbutton_use_repository, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), checkbutton_use_repository, true); // System for trying out git. git_tried_and_okay = false; label_try_git = gtk_label_new ("The local content tracker has been tested and works fine"); gtk_widget_show (label_try_git); page_number_try_git = gtk_assistant_append_page (GTK_ASSISTANT (assistant), label_try_git); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), label_try_git, "Trying out the content tracker"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), label_try_git, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), label_try_git, false); // Build GUI for the repository URL. vbox_repository = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox_repository); page_number_repository = gtk_assistant_append_page (GTK_ASSISTANT (assistant), vbox_repository); hbox_repository = gtk_hbox_new (FALSE, 3); gtk_widget_show (hbox_repository); gtk_box_pack_start (GTK_BOX (vbox_repository), hbox_repository, TRUE, TRUE, 0); label_repository = gtk_label_new_with_mnemonic ("_Repository"); gtk_widget_show (label_repository); gtk_box_pack_start (GTK_BOX (hbox_repository), label_repository, FALSE, FALSE, 0); entry_repository = gtk_entry_new (); gtk_widget_show (entry_repository); gtk_box_pack_start (GTK_BOX (hbox_repository), entry_repository, TRUE, TRUE, 0); gtk_entry_set_invisible_char (GTK_ENTRY (entry_repository), 9679); label_repository_accessible = gtk_label_new (""); gtk_widget_show (label_repository_accessible); gtk_box_pack_start (GTK_BOX (vbox_repository), label_repository_accessible, FALSE, FALSE, 0); gtk_misc_set_alignment (GTK_MISC (label_repository_accessible), 0, 0.5); gtk_label_set_mnemonic_widget (GTK_LABEL (label_repository), entry_repository); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), vbox_repository, "Enter the location of the remote repository"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), vbox_repository, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_repository, false); g_signal_connect ((gpointer) entry_repository, "changed", G_CALLBACK (on_entry_repository_changed), gpointer (this)); // GUI for cloning the repository. vbox_clone = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox_clone); page_number_clone = gtk_assistant_append_page (GTK_ASSISTANT (assistant), vbox_clone); label_clone = gtk_label_new (""); gtk_widget_show (label_clone); gtk_box_pack_start (GTK_BOX (vbox_clone), label_clone, FALSE, FALSE, 0); gtk_misc_set_alignment (GTK_MISC (label_clone), 0, 0.5); button_clone = gtk_button_new (); gtk_widget_show (button_clone); gtk_box_pack_start (GTK_BOX (vbox_clone), button_clone, FALSE, FALSE, 0); GtkWidget *alignment1; GtkWidget *hbox1; GtkWidget *image1; GtkWidget *label1; alignment1 = gtk_alignment_new (0.5, 0.5, 0, 0); gtk_widget_show (alignment1); gtk_container_add (GTK_CONTAINER (button_clone), alignment1); hbox1 = gtk_hbox_new (FALSE, 2); gtk_widget_show (hbox1); gtk_container_add (GTK_CONTAINER (alignment1), hbox1); image1 = gtk_image_new_from_stock ("gtk-copy", GTK_ICON_SIZE_BUTTON); gtk_widget_show (image1); gtk_box_pack_start (GTK_BOX (hbox1), image1, FALSE, FALSE, 0); label1 = gtk_label_new_with_mnemonic ("C_lone the remote repository"); gtk_widget_show (label1); gtk_box_pack_start (GTK_BOX (hbox1), label1, FALSE, FALSE, 0); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), vbox_clone, "Cloning data"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), vbox_clone, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_clone, false); g_signal_connect ((gpointer) button_clone, "clicked", G_CALLBACK (on_button_clone_clicked), gpointer (this)); // Write tester. label_write_test = gtk_label_new (""); gtk_widget_show (label_write_test); page_number_write_test = gtk_assistant_append_page (GTK_ASSISTANT (assistant), label_write_test); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), label_write_test, "Remote repository write test"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), label_write_test, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), label_write_test, false); // GUI for pushing our data into the remote repository. vbox_push = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox_push); page_number_push = gtk_assistant_append_page (GTK_ASSISTANT (assistant), vbox_push); label_push = gtk_label_new (""); gtk_widget_show (label_push); gtk_box_pack_start (GTK_BOX (vbox_push), label_push, FALSE, FALSE, 0); gtk_misc_set_alignment (GTK_MISC (label_push), 0, 0.5); button_push = gtk_button_new (); gtk_widget_show (button_push); gtk_box_pack_start (GTK_BOX (vbox_push), button_push, FALSE, FALSE, 0); alignment1 = gtk_alignment_new (0.5, 0.5, 0, 0); gtk_widget_show (alignment1); gtk_container_add (GTK_CONTAINER (button_push), alignment1); hbox1 = gtk_hbox_new (FALSE, 2); gtk_widget_show (hbox1); gtk_container_add (GTK_CONTAINER (alignment1), hbox1); image1 = gtk_image_new_from_stock ("gtk-copy", GTK_ICON_SIZE_BUTTON); gtk_widget_show (image1); gtk_box_pack_start (GTK_BOX (hbox1), image1, FALSE, FALSE, 0); label1 = gtk_label_new_with_mnemonic ("_Push my data to the remote repository"); gtk_widget_show (label1); gtk_box_pack_start (GTK_BOX (hbox1), label1, FALSE, FALSE, 0); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), vbox_push, "Would you like to push your data to the repository?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), vbox_push, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_push, true); g_signal_connect ((gpointer) button_push, "clicked", G_CALLBACK (on_button_push_clicked), gpointer (this)); // Build the confirmation stuff. label_confirm = gtk_label_new ("Settings are ready to be applied"); gtk_widget_show (label_confirm); page_number_confirm = gtk_assistant_append_page (GTK_ASSISTANT (assistant), label_confirm); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), label_confirm, "Settings are ready to be applied"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), label_confirm, GTK_ASSISTANT_PAGE_CONFIRM); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), label_confirm, true); label_progress = gtk_label_new (""); gtk_widget_show (label_progress); gtk_assistant_append_page (GTK_ASSISTANT (assistant), label_progress); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), label_progress, ""); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), label_progress, GTK_ASSISTANT_PAGE_PROGRESS); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), label_progress, true); label_summary = gtk_label_new ("Settings have been applied"); gtk_widget_show (label_summary); summary_page_number = gtk_assistant_append_page (GTK_ASSISTANT (assistant), label_summary); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), label_summary, "Ready"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), label_summary, GTK_ASSISTANT_PAGE_SUMMARY); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), label_summary, true); // Finish building assistant. gtk_widget_show_all (assistant); gtk_assistant_set_current_page (GTK_ASSISTANT (assistant), 0); } RemoteRepositoryAssistant::~RemoteRepositoryAssistant() { gw_destroy_source(event_id_entry_repository); } void RemoteRepositoryAssistant::on_assistant_prepare_signal (GtkAssistant *assistant, GtkWidget *page, gpointer user_data) { ((RemoteRepositoryAssistant *) user_data)->on_assistant_prepare(page); } void RemoteRepositoryAssistant::on_assistant_prepare (GtkWidget *page) { extern Settings * settings; ProjectConfiguration *projectconfig = settings->projectconfig(bible); if (page == checkbutton_use_repository) { // Set all values in the GUI, according to the project configuration if it is a Bible, // or the general configuration for project notes. // Whether to use the remote repository. bool use_remote_repository = false; if (bible_notes_selector_bible ()) { use_remote_repository = projectconfig->git_use_remote_repository_get(); } else { use_remote_repository = settings->genconfig.consultation_notes_git_use_remote_repository_get(); } gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_use_repository), use_remote_repository); // Set the repository location. ustring repository_url; if (bible_notes_selector_bible ()) { repository_url = projectconfig->git_remote_repository_url_get(); } else { repository_url = settings->genconfig.consultation_notes_git_remote_repository_url_get(); } ignore_entry_repository_changed = true; gtk_entry_set_text (GTK_ENTRY (entry_repository), repository_url.c_str()); ignore_entry_repository_changed = false; } if (page == label_try_git) { // Prepare for the page to try git. if (!git_tried_and_okay) { git_tried_and_okay = try_git (); if (git_tried_and_okay) { gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), label_try_git, true); } } } if (page == vbox_repository) { // Prepare for the page where the repository URL is set. gtk_widget_grab_focus (entry_repository); on_entry_repository(); } if (page == vbox_clone) { // Prepare for the page where the cloning is done. if (repository_url_get() != previously_cloned_url) { repository_unclone(); } gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_clone, repository_was_cloned()); if (!repository_was_cloned()) { gtk_label_set_text (GTK_LABEL (label_clone), ""); } } if (page == label_write_test) { // Prepare for the page for testing write access. if (!write_access_granted) { test_write_access (); } } } void RemoteRepositoryAssistant::on_assistant_apply_signal (GtkAssistant *assistant, gpointer user_data) { ((RemoteRepositoryAssistant *) user_data)->on_assistant_apply(); } void RemoteRepositoryAssistant::on_assistant_apply () { // Configurations. extern Settings *settings; ProjectConfiguration *projectconfig = settings->projectconfig(bible); // Whether to use the remote repository. bool use_remote_repository = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_use_repository)); if (bible_notes_selector_bible ()) projectconfig->git_use_remote_repository_set(use_remote_repository); else settings->genconfig.consultation_notes_git_use_remote_repository_set(use_remote_repository); // The remote repository URL. if (bible_notes_selector_bible ()) projectconfig->git_remote_repository_url_set(repository_url_get()); else settings->genconfig.consultation_notes_git_remote_repository_url_set(repository_url_get()); // If the repository was cloned, move it into place. if (repository_was_cloned()) { ustring destination_data_directory; if (bible_notes_selector_bible ()) destination_data_directory = project_data_directory_project(bible); else destination_data_directory = notes_shared_storage_folder (); unix_rmdir(destination_data_directory); unix_mv(persistent_clone_directory, destination_data_directory); // Switch rename detection off. // This is necessary for the consultation notes, since git has been seen to cause spurious renames. GwSpawn spawn ("git"); spawn.workingdirectory (destination_data_directory); spawn.arg ("config"); spawn.arg ("--global"); spawn.arg ("diff.renamelimit"); spawn.arg ("0"); spawn.run (); } if (bible_notes_selector_bible ()) { // Take a snapshot of the whole project. snapshots_shoot_project (bible); } else{ // Create the index for the consultation notes. notes_create_index (); } // Show summary. gtk_assistant_set_current_page (GTK_ASSISTANT (assistant), summary_page_number); } gint RemoteRepositoryAssistant::assistant_forward_function (gint current_page, gpointer user_data) { return ((RemoteRepositoryAssistant *) user_data)->assistant_forward (current_page); } gint RemoteRepositoryAssistant::assistant_forward (gint current_page) { // Default behaviour is to go to the next page. gint new_page_number = current_page + 1; if (current_page == page_number_use_repository) { // If the repository is not used, go straight to the confirmation page. if (!gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (checkbutton_use_repository))) { new_page_number = page_number_confirm; } } if (current_page == page_number_clone) { if (!repository_was_cloned()) { // If we pushed data to the repository, skip the write access test. new_page_number = page_number_push; } } // Return the new page. return new_page_number; } bool RemoteRepositoryAssistant::try_git () // Tries git and returns true if everything's fine. { // Progress. ProgressWindow progresswindow ("Trying the contents tracker", false); // Whether git is okay. bool okay = true; if (okay) { progresswindow.set_fraction (0.05); gw_message ("Check git version number"); okay = check_git_version (); } // Clean the directory to work in. { ustring directory = git_testing_directory (""); unix_rmdir (directory); gw_mkdir_with_parents (directory); } if (okay) { progresswindow.set_fraction (0.11); gw_message ("Create first local repository"); okay = try_git_create_repository ("local1", false); } if (okay) { progresswindow.set_fraction (0.17); gw_message ("Store data into first local repository"); okay = try_git_store_data_in_repository ("local1", "--test--"); } if (okay) { progresswindow.set_fraction (0.23); gw_message ("Create remote repository"); okay = try_git_create_repository ("remote", true); } if (okay) { progresswindow.set_fraction (0.29); gw_message ("Fetch data from the first local repository into the remote one"); okay = try_git_fetch_repository ("remote", "local1"); } if (okay) { progresswindow.set_fraction (0.35); gw_message ("Checkout the first local repository"); okay = try_git_checkout_repository ("local1", "remote"); } if (okay) { progresswindow.set_fraction (0.41); gw_message ("Check data of first local repository"); okay = try_git_check_data_in_repository ("local1", "--test--"); } if (okay) { progresswindow.set_fraction (0.47); gw_message ("Checkout the second local repository"); okay = try_git_checkout_repository ("local2", "remote"); } if (okay) { progresswindow.set_fraction (0.52); gw_message ("Check data of second local repository"); okay = try_git_check_data_in_repository ("local2", "--test--"); } if (okay) { progresswindow.set_fraction (0.58); gw_message ("Store different data into first repository"); okay = try_git_store_data_in_repository ("local1", "---test---"); } if (okay) { progresswindow.set_fraction (0.64); gw_message ("Push first repository"); okay = try_git_push_repository ("local1"); } if (okay) { progresswindow.set_fraction (0.70); gw_message ("Pull second repository"); okay = try_git_pull_repository ("local2"); } if (okay) { progresswindow.set_fraction (0.76); gw_message ("Check data in second repository"); okay = try_git_check_data_in_repository ("local2", "---test---"); } if (okay) { progresswindow.set_fraction (0.82); gw_message ("Store different data into second repository"); okay = try_git_store_data_in_repository ("local2", "----test----"); } if (okay) { progresswindow.set_fraction (0.88); gw_message ("Push second repository"); okay = try_git_push_repository ("local2"); } if (okay) { progresswindow.set_fraction (0.94); gw_message ("Pull first repository"); okay = try_git_pull_repository ("local1"); } if (okay) { progresswindow.set_fraction (1); gw_message ("Check data in first repository"); okay = try_git_check_data_in_repository ("local1", "----test----"); } // Return whether git is ok. return okay; } bool RemoteRepositoryAssistant::check_git_version () // Checks the git version. { bool okay = false; GwSpawn spawn("git"); spawn.arg("--version"); spawn.read(); spawn.run(); ustring versiontext; if (!spawn.standardout.empty()) versiontext = spawn.standardout[0]; gw_message (versiontext); Parse parse1(versiontext, false); if (parse1.words.size() >= 3) { Parse parse2(parse1.words[2], false, "."); if (parse2.words.size() >= 3) { unsigned int version = 100 * convert_to_int(parse2.words[0]) + 10 * convert_to_int(parse2.words[1]) + convert_to_int(parse2.words[2]); if (version >= 150) okay = true; } } if (!okay) { versiontext.append(", but should be 1.5.0 or higher"); gtk_label_set_text(GTK_LABEL(label_try_git), versiontext.c_str()); } if (!spawn.result) { gtk_label_set_text(GTK_LABEL(label_try_git), "Program git failed to run. Has git been installed?"); } return okay; } ustring RemoteRepositoryAssistant::git_testing_directory (const ustring& name) // Get the directory of the repository for testing git. { ustring directory = gw_build_filename (Directories->get_temp(), "git-test", name); return directory; } ustring RemoteRepositoryAssistant::git_testing_file (const ustring& name) // Gets the filename of the repository for testing git. { ustring filename = gw_build_filename (git_testing_directory (name), "data"); return filename; } bool RemoteRepositoryAssistant::try_git_create_repository (const ustring& name, bool remote) { ustring directory = git_testing_directory (name); gw_mkdir_with_parents (directory); GwSpawn spawn ("git"); spawn.workingdirectory (directory); if (remote) spawn.arg ("--bare"); spawn.arg ("init"); if (remote) spawn.arg ("--shared"); spawn.run(); bool okay = (spawn.exitstatus == 0); if (!okay) { gtk_label_set_text(GTK_LABEL(label_try_git), "git init fails to create a repository"); } return okay; } bool RemoteRepositoryAssistant::try_git_store_data_in_repository (const ustring& repository, const gchar* data) // Put data into the repository. { ustring filename = git_testing_file (repository); g_file_set_contents(filename.c_str(), data, -1, NULL); ustring directory = git_testing_directory (repository); GwSpawn spawn ("git"); spawn.workingdirectory (directory); spawn.arg ("add"); spawn.arg ("."); spawn.run(); bool okay = (spawn.exitstatus == 0); if (!okay) { gtk_label_set_text(GTK_LABEL(label_try_git), "git add fails to add data to the repository"); } if (okay) { GwSpawn spawn ("git"); spawn.workingdirectory (directory); spawn.arg ("commit"); spawn.arg ("-m"); spawn.arg ("Commit"); spawn.arg ("-a"); spawn.run(); okay = (spawn.exitstatus == 0); } if (!okay) { gtk_label_set_text(GTK_LABEL(label_try_git), "git commit fails to commit data to the repository"); } return okay; } bool RemoteRepositoryAssistant::try_git_check_data_in_repository (const ustring& repository, const gchar* data) // Checks the data into the repository. { ustring filename = git_testing_file (repository); gchar *contents; g_file_get_contents(filename.c_str(), &contents, NULL, NULL); bool okay = (contents); if (!okay) { gtk_label_set_text(GTK_LABEL(label_try_git), "cannot read data in repository"); } ustring repository_data; if (contents) { repository_data = contents; g_free (contents); } ustring standard_data (data); if (okay) { if (repository_data != standard_data) { gtk_label_set_text(GTK_LABEL(label_try_git), "unexpected data in repository"); } } return okay; } bool RemoteRepositoryAssistant::try_git_fetch_repository (const ustring& remote, const ustring& local) // Fetch the local into the remote repository. { GwSpawn spawn ("git"); spawn.workingdirectory (git_testing_directory (remote)); spawn.arg ("--bare"); spawn.arg ("fetch"); spawn.arg (git_testing_directory (local)); spawn.arg ("master:master"); spawn.run(); bool okay = (spawn.exitstatus == 0); if (!okay) { gtk_label_set_text(GTK_LABEL(label_try_git), "git --bare fetch fails to fetch data into remote repository"); } return okay; } bool RemoteRepositoryAssistant::try_git_checkout_repository (const ustring& local, const ustring& remote) // Checks the remote repository out into the local one. { // Directory to run the cloning process in. ustring cloning_directory = git_testing_directory (local) + "clone"; gw_mkdir_with_parents(cloning_directory); // Clone the remote repository. GwSpawn spawn("git"); spawn.arg("clone"); spawn.workingdirectory(cloning_directory); spawn.arg(git_testing_directory (remote)); spawn.run(); bool okay = (spawn.exitstatus == 0); // Message if things didn't work out. if (!okay) { gtk_label_set_text(GTK_LABEL(label_try_git), "git clone fails to clone the repository"); } // Move the repository into place. ustring cloned_directory = gw_build_filename (cloning_directory, remote); ustring local_directory = git_testing_directory (local); unix_rmdir(local_directory); if (okay) { unix_mv(cloned_directory, local_directory); } unix_rmdir(cloning_directory); // Return result. return okay; } bool RemoteRepositoryAssistant::try_git_pull_repository (const ustring& name) // Pull repository. { GwSpawn spawn ("git"); spawn.workingdirectory (git_testing_directory (name)); spawn.arg ("pull"); spawn.run(); bool okay = (spawn.exitstatus == 0); if (!okay) { gtk_label_set_text(GTK_LABEL(label_try_git), "git pull from remote repository failed"); } return okay; } bool RemoteRepositoryAssistant::try_git_push_repository (const ustring& name) // Push repository. { GwSpawn spawn ("git"); spawn.workingdirectory (git_testing_directory (name)); spawn.arg ("push"); spawn.run(); bool okay = (spawn.exitstatus == 0); if (!okay) { gtk_label_set_text(GTK_LABEL(label_try_git), "git push to remote repository failed"); } return okay; } void RemoteRepositoryAssistant::on_entry_repository_changed (GtkEditable *editable, gpointer user_data) { ((RemoteRepositoryAssistant *) user_data)->on_entry_repository(); } void RemoteRepositoryAssistant::on_entry_repository () { if (ignore_entry_repository_changed) return; gw_destroy_source(event_id_entry_repository); event_id_entry_repository = g_timeout_add_full(G_PRIORITY_DEFAULT, 1000, GSourceFunc(on_entry_changed_timeout), gpointer(this), NULL); } bool RemoteRepositoryAssistant::on_entry_changed_timeout(gpointer user_data) { ((RemoteRepositoryAssistant *) user_data)->entry_changed_timeout(); return false; } void RemoteRepositoryAssistant::entry_changed_timeout() { // Progress. ProgressWindow progresswindow ("Testing read access", false); progresswindow.set_fraction (0.5); // Event done. event_id_entry_repository = 0; // Test read access to the repository. GwSpawn spawn("git"); spawn.arg("ls-remote"); spawn.arg(repository_url_get()); spawn.read(); spawn.run(); bool access = spawn.exitstatus == 0; ustring message; if (access) { message = "Read access to the repository has been granted"; } else { message = "Cannot access the repository:"; for (unsigned int i = 0; i < spawn.standarderr.size(); i++) { message.append("\n"); message.append(spawn.standarderr[i]); } } gtk_label_set_text (GTK_LABEL (label_repository_accessible), message.c_str()); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_repository, access); } ustring RemoteRepositoryAssistant::repository_url_get() // Gets the URL of the remote repository. { ustring url; url = gtk_entry_get_text (GTK_ENTRY (entry_repository)); url = trim (url); return url; } void RemoteRepositoryAssistant::on_button_clone_clicked (GtkButton *button, gpointer user_data) { ((RemoteRepositoryAssistant *) user_data)->on_button_clone(); } void RemoteRepositoryAssistant::on_button_clone () { // Progress. ProgressWindow progresswindow ("Cloning repository", false); progresswindow.set_fraction (0.5); // Clear out persistent clone directory. repository_unclone(); // Create temporal clone directory. ustring temporal_clone_directory = git_testing_directory ("tempclone"); unix_rmdir(temporal_clone_directory); gw_mkdir_with_parents(temporal_clone_directory); // Clone the remote repository GwSpawn spawn("git"); spawn.workingdirectory(temporal_clone_directory); spawn.arg ("clone"); spawn.arg(repository_url_get()); spawn.run(); if (spawn.exitstatus == 0) { // Move the cloned repository into the persistent clone directory. ReadDirectories rd (temporal_clone_directory, "", ""); if (!rd.directories.empty()) { ustring subdirectory = rd.directories[0]; subdirectory = gw_build_filename (temporal_clone_directory, subdirectory); unix_mv (subdirectory, persistent_clone_directory); } unix_rmdir(temporal_clone_directory); } else { // Clone failed, clear out any remains. repository_unclone(); } // Update structures. gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_clone, repository_was_cloned()); if (repository_was_cloned()) { gtk_label_set_text (GTK_LABEL (label_clone), "The data has been cloned, you can go forward"); previously_cloned_url = repository_url_get(); } else { gtk_label_set_text (GTK_LABEL (label_clone), "Cloning the data failed, please try again"); repository_unclone(); } } bool RemoteRepositoryAssistant::repository_was_cloned () // Check whether the repository was cloned. { return g_file_test (persistent_clone_directory.c_str(), G_FILE_TEST_IS_DIR); } void RemoteRepositoryAssistant::repository_unclone () // Does the house keeping for indicating that the repository was not cloned. { unix_rmdir(persistent_clone_directory); previously_cloned_url.clear(); write_access_granted = false; } void RemoteRepositoryAssistant::test_write_access () // Checks whether there is write access from the local clone to the remote repository. { // GUI update. // If a wrong host is entered as the git repository, the testing for the write access // may "hang" for a long time. For that reason it can be cancelled by the user. ProgressWindow progresswindow ("Testing write access", true); gtk_label_set_text (GTK_LABEL (label_write_test), "Testing write access to the remote repository"); // Temporal file for trying write access. ustring filename = "test_repository_writable"; g_file_set_contents(gw_build_filename(persistent_clone_directory, filename).c_str(), "", 0, NULL); // Add this file and commit it locally. progresswindow.set_fraction (0.2); { GwSpawn spawn("git"); spawn.workingdirectory(persistent_clone_directory); spawn.arg("add"); spawn.arg("."); spawn.run(); write_access_granted = (spawn.exitstatus == 0); } if (write_access_granted) { GwSpawn spawn("git"); spawn.workingdirectory(persistent_clone_directory); spawn.arg("commit"); spawn.arg("-m"); spawn.arg("Write test"); spawn.arg("-a"); spawn.run(); write_access_granted = (spawn.exitstatus == 0); } // Pull changes. progresswindow.set_fraction (0.4); if (write_access_granted) { GwSpawn spawn("git"); spawn.workingdirectory(persistent_clone_directory); spawn.arg ("pull"); spawn.run(); // When pulling from an empty repository, the exit status is undefined. // So we cannot test for it here. // write_access_granted = (spawn.exitstatus == 0); } // Push the changes to see if there is write access. // Notice the --all switch to be used when pushing to an empty remote repository. progresswindow.set_fraction (0.6); if (write_access_granted) { GwSpawn spawn("git"); spawn.workingdirectory(persistent_clone_directory); spawn.arg ("push"); spawn.arg ("--all"); spawn.run(); write_access_granted = (spawn.exitstatus == 0); } // Remove the temporal file again from the remote repository. progresswindow.set_fraction (0.8); unlink(gw_build_filename(persistent_clone_directory, filename).c_str()); if (write_access_granted) { GwSpawn spawn("git"); spawn.workingdirectory(persistent_clone_directory); spawn.arg("commit"); spawn.arg("-m"); spawn.arg("Write test"); spawn.arg("-a"); spawn.run(); write_access_granted = (spawn.exitstatus == 0); } progresswindow.set_fraction (1); if (write_access_granted) { GwSpawn spawn("git"); spawn.workingdirectory(persistent_clone_directory); spawn.arg ("push"); spawn.run(); write_access_granted = (spawn.exitstatus == 0); } // Set the GUI. gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), label_write_test, write_access_granted); if (write_access_granted) { gtk_label_set_text (GTK_LABEL (label_write_test), "Write access was granted, you can go forward"); } else { gtk_label_set_text (GTK_LABEL (label_write_test), "No write access. Please check the system log for more information"); } } void RemoteRepositoryAssistant::on_button_push_clicked (GtkButton *button, gpointer user_data) { ((RemoteRepositoryAssistant *) user_data)->on_button_push(); } void RemoteRepositoryAssistant::on_button_push () /* It copies the existing data, without the .git directory, into the persistent clone, replaces any data that was there, and then pushes this data to the remote repository. This makes the remote repository to have an exact copy of our data. */ { // Progress. ProgressWindow progresswindow ("Pushing your data", false); progresswindow.set_fraction (0.2); // Copy our data into a temporal location. ustring my_data_directory = notes_shared_storage_folder (); if (bible_notes_selector_bible ()) my_data_directory = project_data_directory_project(bible); ustring temporal_data_directory = git_testing_directory ("mydata"); unix_cp_r (my_data_directory, temporal_data_directory); // In rare cases a .git directory could have been copied along with our data. Remove that. unix_rmdir (gw_build_filename (temporal_data_directory, ".git")); // Remove all directories and all files from the persistent clone directory, but leave the .git directory { ReadDirectories rd (persistent_clone_directory, "", ""); for (unsigned int i = 0; i < rd.directories.size(); i++) { if (rd.directories[i] != ".git") { unix_rmdir (gw_build_filename (persistent_clone_directory, rd.directories[i])); } } ReadFiles rf (persistent_clone_directory, "", ""); for (unsigned int i = 0; i < rf.files.size(); i++) { unlink (gw_build_filename (persistent_clone_directory, rf.files[i]).c_str()); } } // Move our data, from its temporal location, into the persistent clone directory. progresswindow.set_fraction (0.4); { ReadDirectories rd (temporal_data_directory, "", ""); for (unsigned int i = 0; i < rd.directories.size(); i++) { unix_mv (gw_build_filename (temporal_data_directory, rd.directories[i]), persistent_clone_directory); } ReadFiles rf (temporal_data_directory, "", ""); for (unsigned int i = 0; i < rf.files.size(); i++) { unix_mv (gw_build_filename (temporal_data_directory, rf.files[i]), persistent_clone_directory); } } // Commit the new data in the persistent clone directory. progresswindow.set_fraction (0.55); { GwSpawn spawn ("git"); spawn.workingdirectory (persistent_clone_directory); spawn.arg ("add"); spawn.arg ("."); spawn.run (); } progresswindow.set_fraction (0.65); { GwSpawn spawn ("git"); spawn.workingdirectory (persistent_clone_directory); spawn.arg ("commit"); spawn.arg ("-a"); spawn.arg ("-m"); spawn.arg ("user data into repo"); spawn.run (); } // Push our data to the remote repository. progresswindow.set_fraction (0.8); GwSpawn spawn("git"); spawn.workingdirectory(persistent_clone_directory); spawn.arg ("push"); spawn.run(); // Take action depending on the outcome of pushing to the remote repository. if (spawn.exitstatus == 0) { // Clone okay. gtk_label_set_text (GTK_LABEL (label_push), "Your data has been pushed to the remote repository"); } else { // Clone failed. gtk_label_set_text (GTK_LABEL (label_push), "Your data could not be pushed to the remote repository,\nplease restart the assistant"); repository_unclone(); } } bool RemoteRepositoryAssistant::bible_notes_selector_bible () { return gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_bible_notes_selector_bible)); } bibledit-gtk-4.9/src/assistantremoterepository.h000664 000766 000024 00000010163 12221507137 022403 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_ASSISTANT_REMOTE_REPOSITORY_H #define INCLUDED_ASSISTANT_REMOTE_REPOSITORY_H #include #include "ustring.h" #include "assistants.h" class RemoteRepositoryAssistant : public AssistantBase { public: RemoteRepositoryAssistant(int dummy); virtual ~RemoteRepositoryAssistant(); private: // Our data. ustring bible; // Assistant page preparation. static void on_assistant_prepare_signal (GtkAssistant *assistant, GtkWidget *page, gpointer user_data); void on_assistant_prepare (GtkWidget *page); // Bible / notes selection. int page_number_bible_notes_selector; GtkWidget *vbox_bible_notes_selector; GtkWidget *radiobutton_bible_notes_selector_bible; GtkWidget *radiobutton_bible_notes_selector_notes; bool bible_notes_selector_bible (); // Use remote repository. int page_number_use_repository; GtkWidget *checkbutton_use_repository; // Git tester. int page_number_try_git; GtkWidget *label_try_git; bool git_tried_and_okay; bool try_git (); bool check_git_version (); ustring git_testing_directory (const ustring& name); ustring git_testing_file (const ustring& name); bool try_git_create_repository (const ustring& name, bool remote); bool try_git_store_data_in_repository (const ustring& repository, const gchar* data); bool try_git_check_data_in_repository (const ustring& repository, const gchar* data); bool try_git_fetch_repository (const ustring& remote, const ustring& local); bool try_git_checkout_repository (const ustring& local, const ustring& remote); bool try_git_pull_repository (const ustring& name); bool try_git_push_repository (const ustring& name); // Repository path and accessibility check. int page_number_repository; GtkWidget *vbox_repository; GtkWidget *hbox_repository; GtkWidget *label_repository; GtkWidget *entry_repository; GtkWidget *label_repository_accessible; bool ignore_entry_repository_changed; static void on_entry_repository_changed (GtkEditable *editable, gpointer user_data); void on_entry_repository (); guint event_id_entry_repository; static bool on_entry_changed_timeout(gpointer user_data); void entry_changed_timeout(); ustring repository_url_get(); // Repository cloning. int page_number_clone; GtkWidget *vbox_clone; GtkWidget *label_clone; GtkWidget *button_clone; static void on_button_clone_clicked (GtkButton *button, gpointer user_data); void on_button_clone (); ustring persistent_clone_directory; ustring previously_cloned_url; bool repository_was_cloned(); void repository_unclone (); // Write test. int page_number_write_test; GtkWidget *label_write_test; bool write_access_granted; void test_write_access(); // Pushing our data into the remote repository. int page_number_push; GtkWidget *vbox_push; GtkWidget *label_push; GtkWidget *button_push; static void on_button_push_clicked (GtkButton *button, gpointer user_data); void on_button_push (); // Confirmation stuff. int page_number_confirm; GtkWidget *label_confirm; GtkWidget *label_progress; GtkWidget *label_summary; unsigned int summary_page_number; static void on_assistant_apply_signal (GtkAssistant *assistant, gpointer user_data); void on_assistant_apply (); static gint assistant_forward_function (gint current_page, gpointer user_data); gint assistant_forward (gint current_page); }; #endif bibledit-gtk-4.9/src/assistantresource.cpp000644 000766 000024 00000104144 12453001367 021134 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "assistantresource.h" #include "help.h" #include "settings.h" #include "utilities.h" #include "gwrappers.h" #include "gtkwrappers.h" #include "tiny_utilities.h" #include "directories.h" #include "resource_utils.h" #include "unixwrappers.h" #include "progresswindow.h" #include "dialogbooknames.h" #include "books.h" #include "combobox.h" #include "shell.h" #include "dialoglistview.h" #include "dialogresourceconverter.h" #include "resource_conversion_utils.h" ResourceAssistant::ResourceAssistant(const ustring& resource_template) : AssistantBase("Resource editor", "resource_editor") // Assistant for editing or creating a resource. { // Since this Assistant contains browsers, it needs a bigger size. gtk_window_resize (GTK_WINDOW (assistant), 800, 600); gtk_assistant_set_forward_page_func (GTK_ASSISTANT (assistant), GtkAssistantPageFunc (assistant_forward_function), gpointer(this), NULL); g_signal_connect (G_OBJECT (assistant), "apply", G_CALLBACK (on_assistant_apply_signal), gpointer(this)); g_signal_connect (G_OBJECT (assistant), "prepare", G_CALLBACK (on_assistant_prepare_signal), gpointer(this)); // Configuration and initialization. edited_resource_template = resource_template; // Working directory. unix_rmdir(working_directory()); gw_mkdir_with_parents(working_directory()); // If a Resource is being edited, copy it into the working directory. { if (!edited_resource_template.empty()) { ustring resource_directory = gw_path_get_dirname (edited_resource_template); if (resource_directory == Directories->get_package_data()) { // It's a template, copy the template only. unix_cp (edited_resource_template, working_configuration_file ()); } else { // It's an existing editable resource, copy the whole thing. ustring command = "cd" + shell_quote_space(resource_directory); command.append("; cp -r *" + shell_quote_space(working_directory())); if (system(command.c_str())); // This one does not work with GwSpawn. } } } // Introduction. ustring intro_message = "Step by step you will be "; if (edited_resource_template.empty()) intro_message.append ("creating a new Resource"); else intro_message.append ("editing the Resource"); intro_message.append (".\nAny changes you make show up immediately.\n" "\n" "The online help provides more information for each step." ); introduction (intro_message); // Title. vbox_title = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox_title); gtk_assistant_append_page (GTK_ASSISTANT (assistant), vbox_title); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), vbox_title, "What is the title of the Resource?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), vbox_title, GTK_ASSISTANT_PAGE_CONTENT); entry_title = gtk_entry_new (); gtk_widget_show (entry_title); gtk_box_pack_start (GTK_BOX (vbox_title), entry_title, FALSE, FALSE, 0); gtk_entry_set_text (GTK_ENTRY (entry_title), resource_get_title(working_configuration_file ()).c_str()); g_signal_connect((gpointer) entry_title, "changed", G_CALLBACK(on_entry_title_changed), gpointer(this)); label_title = gtk_label_new (""); gtk_widget_show (label_title); gtk_box_pack_start (GTK_BOX (vbox_title), label_title, FALSE, FALSE, 0); // Files and folders. table_files = gtk_table_new (2, 2, FALSE); gtk_widget_show (table_files); gtk_assistant_append_page (GTK_ASSISTANT (assistant), table_files); gtk_container_set_border_width (GTK_CONTAINER (table_files), 10); gtk_table_set_row_spacings (GTK_TABLE (table_files), 10); gtk_table_set_col_spacings (GTK_TABLE (table_files), 10); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), table_files, "Would you like to add local files to the Resource?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), table_files, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), table_files, true); button_add_files = gtk_button_new (); gtk_widget_show (button_add_files); gtk_table_attach (GTK_TABLE (table_files), button_add_files, 0, 1, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); alignment1 = gtk_alignment_new (0.5, 0.5, 0, 0); gtk_widget_show (alignment1); gtk_container_add (GTK_CONTAINER (button_add_files), alignment1); hbox2 = gtk_hbox_new (FALSE, 2); gtk_widget_show (hbox2); gtk_container_add (GTK_CONTAINER (alignment1), hbox2); image1 = gtk_image_new_from_stock ("gtk-add", GTK_ICON_SIZE_BUTTON); gtk_widget_show (image1); gtk_box_pack_start (GTK_BOX (hbox2), image1, FALSE, FALSE, 0); label6 = gtk_label_new_with_mnemonic ("_Add files"); gtk_widget_show (label6); gtk_box_pack_start (GTK_BOX (hbox2), label6, FALSE, FALSE, 0); button_add_folders = gtk_button_new (); gtk_widget_show (button_add_folders); gtk_table_attach (GTK_TABLE (table_files), button_add_folders, 0, 1, 1, 2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); alignment2 = gtk_alignment_new (0.5, 0.5, 0, 0); gtk_widget_show (alignment2); gtk_container_add (GTK_CONTAINER (button_add_folders), alignment2); hbox3 = gtk_hbox_new (FALSE, 2); gtk_widget_show (hbox3); gtk_container_add (GTK_CONTAINER (alignment2), hbox3); image2 = gtk_image_new_from_stock ("gtk-open", GTK_ICON_SIZE_BUTTON); gtk_widget_show (image2); gtk_box_pack_start (GTK_BOX (hbox3), image2, FALSE, FALSE, 0); label7 = gtk_label_new_with_mnemonic ("Add f_olders"); gtk_widget_show (label7); gtk_box_pack_start (GTK_BOX (hbox3), label7, FALSE, FALSE, 0); label_files = gtk_label_new (""); gtk_widget_show (label_files); gtk_table_attach (GTK_TABLE (table_files), label_files, 1, 2, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment (GTK_MISC (label_files), 0, 0.5); label_folders = gtk_label_new (""); gtk_widget_show (label_folders); gtk_table_attach (GTK_TABLE (table_files), label_folders, 1, 2, 1, 2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment (GTK_MISC (label_folders), 0, 0.5); g_signal_connect ((gpointer) button_add_files, "clicked", G_CALLBACK (on_button_add_files_clicked), gpointer (this)); g_signal_connect ((gpointer) button_add_folders, "clicked", G_CALLBACK (on_button_add_folders_clicked), gpointer (this)); on_button_add_files (true); on_button_add_folders (true); // Home page. vbox_home_page = gtk_vbox_new (FALSE, 20); gtk_widget_show (vbox_home_page); gtk_assistant_append_page (GTK_ASSISTANT (assistant), vbox_home_page); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), vbox_home_page, "What is the home page of the Resource?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), vbox_home_page, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_home_page, true); entry_home_page = gtk_entry_new (); gtk_widget_show (entry_home_page); gtk_box_pack_start (GTK_BOX (vbox_home_page), entry_home_page, FALSE, FALSE, 0); gtk_entry_set_text (GTK_ENTRY (entry_home_page), resource_get_home_page(working_configuration_file ()).c_str()); vbox_home_page_resource = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox_home_page_resource); gtk_box_pack_start (GTK_BOX (vbox_home_page), vbox_home_page_resource, TRUE, TRUE, 0); browser_home_page = new WebkitBrowser (vbox_home_page_resource); g_signal_connect ((gpointer) entry_home_page, "changed", G_CALLBACK (on_entry_home_page_changed), gpointer (this)); on_entry_home_page (); // Book set. vbox_bookset = gtk_vbox_new (FALSE, 10); gtk_widget_show (vbox_bookset); gtk_container_set_border_width (GTK_CONTAINER (vbox_bookset), 10); gtk_assistant_append_page (GTK_ASSISTANT (assistant), vbox_bookset); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), vbox_bookset, "What are the abbreviations for the books of the Resource?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), vbox_bookset, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_bookset, true); hbox_bookset = gtk_hbox_new (FALSE, 10); gtk_widget_show (hbox_bookset); gtk_box_pack_start (GTK_BOX (vbox_bookset), hbox_bookset, FALSE, FALSE, 0); button_bookset = gtk_button_new (); gtk_widget_show (button_bookset); gtk_box_pack_start (GTK_BOX (hbox_bookset), button_bookset, FALSE, FALSE, 0); GtkWidget *alignment3; GtkWidget *hbox5; GtkWidget *image3; GtkWidget *label12; alignment3 = gtk_alignment_new (0.5, 0.5, 0, 0); gtk_widget_show (alignment3); gtk_container_add (GTK_CONTAINER (button_bookset), alignment3); hbox5 = gtk_hbox_new (FALSE, 2); gtk_widget_show (hbox5); gtk_container_add (GTK_CONTAINER (alignment3), hbox5); image3 = gtk_image_new_from_stock ("gtk-info", GTK_ICON_SIZE_BUTTON); gtk_widget_show (image3); gtk_box_pack_start (GTK_BOX (hbox5), image3, FALSE, FALSE, 0); label12 = gtk_label_new_with_mnemonic ("_Abbreviations"); gtk_widget_show (label12); gtk_box_pack_start (GTK_BOX (hbox5), label12, FALSE, FALSE, 0); label_bookset = gtk_label_new (""); gtk_widget_show (label_bookset); gtk_box_pack_start (GTK_BOX (hbox_bookset), label_bookset, FALSE, FALSE, 0); g_signal_connect ((gpointer) button_bookset, "clicked", G_CALLBACK (on_button_bookset_clicked), gpointer (this)); hbox_books_import = gtk_hbox_new (FALSE, 0); gtk_widget_show (hbox_books_import); gtk_box_pack_start (GTK_BOX (vbox_bookset), hbox_books_import, FALSE, FALSE, 0); button_books_import = gtk_button_new (); gtk_widget_show (button_books_import); gtk_box_pack_start (GTK_BOX (hbox_books_import), button_books_import, FALSE, FALSE, 0); GtkWidget *alignment4; GtkWidget *hbox7; GtkWidget *image4; GtkWidget *label23; alignment4 = gtk_alignment_new (0.5, 0.5, 0, 0); gtk_widget_show (alignment4); gtk_container_add (GTK_CONTAINER (button_books_import), alignment4); hbox7 = gtk_hbox_new (FALSE, 2); gtk_widget_show (hbox7); gtk_container_add (GTK_CONTAINER (alignment4), hbox7); image4 = gtk_image_new_from_stock ("gtk-add", GTK_ICON_SIZE_BUTTON); gtk_widget_show (image4); gtk_box_pack_start (GTK_BOX (hbox7), image4, FALSE, FALSE, 0); label23 = gtk_label_new_with_mnemonic ("_Import"); gtk_widget_show (label23); gtk_box_pack_start (GTK_BOX (hbox7), label23, FALSE, FALSE, 0); g_signal_connect ((gpointer) button_books_import, "clicked", G_CALLBACK (on_button_books_import_clicked), gpointer (this)); books = resource_get_books(working_configuration_file()); on_button_bookset (true); // Book set 2. vbox_bookset2 = gtk_vbox_new (FALSE, 10); gtk_widget_show (vbox_bookset2); gtk_container_set_border_width (GTK_CONTAINER (vbox_bookset2), 10); gtk_assistant_append_page (GTK_ASSISTANT (assistant), vbox_bookset2); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), vbox_bookset2, "What are the second abbreviations for the books of the Resource?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), vbox_bookset2, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_bookset2, true); hbox_bookset2 = gtk_hbox_new (FALSE, 10); gtk_widget_show (hbox_bookset2); gtk_box_pack_start (GTK_BOX (vbox_bookset2), hbox_bookset2, FALSE, FALSE, 0); button_bookset2 = gtk_button_new (); gtk_widget_show (button_bookset2); gtk_box_pack_start (GTK_BOX (hbox_bookset2), button_bookset2, FALSE, FALSE, 0); alignment3 = gtk_alignment_new (0.5, 0.5, 0, 0); gtk_widget_show (alignment3); gtk_container_add (GTK_CONTAINER (button_bookset2), alignment3); hbox5 = gtk_hbox_new (FALSE, 2); gtk_widget_show (hbox5); gtk_container_add (GTK_CONTAINER (alignment3), hbox5); image3 = gtk_image_new_from_stock ("gtk-info", GTK_ICON_SIZE_BUTTON); gtk_widget_show (image3); gtk_box_pack_start (GTK_BOX (hbox5), image3, FALSE, FALSE, 0); label12 = gtk_label_new_with_mnemonic ("_Abbreviations"); gtk_widget_show (label12); gtk_box_pack_start (GTK_BOX (hbox5), label12, FALSE, FALSE, 0); label_bookset2 = gtk_label_new (""); gtk_widget_show (label_bookset2); gtk_box_pack_start (GTK_BOX (hbox_bookset2), label_bookset2, FALSE, FALSE, 0); g_signal_connect ((gpointer) button_bookset2, "clicked", G_CALLBACK (on_button_bookset2_clicked), gpointer (this)); hbox_books2_import = gtk_hbox_new (FALSE, 0); gtk_widget_show (hbox_books2_import); gtk_box_pack_start (GTK_BOX (vbox_bookset2), hbox_books2_import, FALSE, FALSE, 0); button_books2_import = gtk_button_new (); gtk_widget_show (button_books2_import); gtk_box_pack_start (GTK_BOX (hbox_books2_import), button_books2_import, FALSE, FALSE, 0); alignment4 = gtk_alignment_new (0.5, 0.5, 0, 0); gtk_widget_show (alignment4); gtk_container_add (GTK_CONTAINER (button_books2_import), alignment4); hbox7 = gtk_hbox_new (FALSE, 2); gtk_widget_show (hbox7); gtk_container_add (GTK_CONTAINER (alignment4), hbox7); image4 = gtk_image_new_from_stock ("gtk-add", GTK_ICON_SIZE_BUTTON); gtk_widget_show (image4); gtk_box_pack_start (GTK_BOX (hbox7), image4, FALSE, FALSE, 0); label23 = gtk_label_new_with_mnemonic ("_Import"); gtk_widget_show (label23); gtk_box_pack_start (GTK_BOX (hbox7), label23, FALSE, FALSE, 0); g_signal_connect ((gpointer) button_books2_import, "clicked", G_CALLBACK (on_button_books2_import_clicked), gpointer (this)); books2 = resource_get_books2(working_configuration_file()); on_button_bookset2 (true); // Anchors. vbox_anchors = gtk_vbox_new (FALSE, 10); gtk_widget_show (vbox_anchors); gtk_container_set_border_width (GTK_CONTAINER (vbox_anchors), 10); gtk_assistant_append_page (GTK_ASSISTANT (assistant), vbox_anchors); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), vbox_anchors, "Would you like to write the anchors in the pages of the Resource?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), vbox_anchors, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_anchors, true); hbox_anchors = gtk_hbox_new (FALSE, 10); gtk_widget_show (hbox_anchors); gtk_box_pack_start (GTK_BOX (vbox_anchors), hbox_anchors, FALSE, FALSE, 0); button_anchors = gtk_button_new (); gtk_widget_show (button_anchors); gtk_box_pack_start (GTK_BOX (hbox_anchors), button_anchors, FALSE, FALSE, 0); alignment3 = gtk_alignment_new (0.5, 0.5, 0, 0); gtk_widget_show (alignment3); gtk_container_add (GTK_CONTAINER (button_anchors), alignment3); hbox5 = gtk_hbox_new (FALSE, 2); gtk_widget_show (hbox5); gtk_container_add (GTK_CONTAINER (alignment3), hbox5); image3 = gtk_image_new_from_stock ("gtk-info", GTK_ICON_SIZE_BUTTON); gtk_widget_show (image3); gtk_box_pack_start (GTK_BOX (hbox5), image3, FALSE, FALSE, 0); label12 = gtk_label_new_with_mnemonic ("_Anchors"); gtk_widget_show (label12); gtk_box_pack_start (GTK_BOX (hbox5), label12, FALSE, FALSE, 0); g_signal_connect ((gpointer) button_anchors, "clicked", G_CALLBACK (on_button_anchors_clicked), gpointer (this)); // URL. vbox_url = gtk_vbox_new (FALSE, 10); gtk_widget_show (vbox_url); gtk_assistant_append_page (GTK_ASSISTANT (assistant), vbox_url); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), vbox_url, "What is the URL constructor for the Resource?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), vbox_url, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_url, true); entry_url = gtk_entry_new (); gtk_widget_show (entry_url); gtk_box_pack_start (GTK_BOX (vbox_url), entry_url, FALSE, FALSE, 0); gtk_entry_set_invisible_char (GTK_ENTRY (entry_url), 9679); gtk_entry_set_text (GTK_ENTRY (entry_url), resource_get_url_constructor(working_configuration_file()).c_str()); hbox_tester = gtk_hbox_new (FALSE, 0); gtk_widget_show (hbox_tester); gtk_box_pack_start (GTK_BOX (vbox_url), hbox_tester, FALSE, FALSE, 0); combobox_test_book = gtk_combo_box_new_text (); gtk_widget_show (combobox_test_book); gtk_box_pack_start (GTK_BOX (hbox_tester), combobox_test_book, FALSE, FALSE, 0); vector bookids = books_type_to_ids(btUnknown); vector booknames; for (unsigned int i = 0; i < bookids.size(); i++) { booknames.push_back (books_id_to_english (bookids[bookids[i]])); } combobox_set_strings (combobox_test_book, booknames); vector nt_ids = books_type_to_ids (btNewTestament); combobox_set_string (combobox_test_book, books_id_to_english (nt_ids[0])); combobox_test_chapter = gtk_combo_box_new_text (); gtk_widget_show (combobox_test_chapter); gtk_box_pack_start (GTK_BOX (hbox_tester), combobox_test_chapter, FALSE, FALSE, 0); vector chapters; for (unsigned int i = 1; i <= 150; i++) { chapters.push_back (i); } combobox_set_strings (combobox_test_chapter, chapters); combobox_set_index (combobox_test_chapter, 0); combobox_test_verse = gtk_combo_box_new_text (); gtk_widget_show (combobox_test_verse); gtk_box_pack_start (GTK_BOX (hbox_tester), combobox_test_verse, FALSE, FALSE, 0); vector verses; for (unsigned int i = 1; i <= 186; i++) { verses.push_back (i); } combobox_set_strings (combobox_test_verse, verses); combobox_set_index (combobox_test_verse, 0); g_signal_connect ((gpointer) entry_url, "changed", G_CALLBACK (on_entry_url_changed), gpointer (this)); g_signal_connect ((gpointer) combobox_test_book, "changed", G_CALLBACK (on_combobox_test_changed), gpointer (this)); g_signal_connect ((gpointer) combobox_test_chapter, "changed", G_CALLBACK (on_combobox_test_changed), gpointer (this)); g_signal_connect ((gpointer) combobox_test_verse, "changed", G_CALLBACK (on_combobox_test_changed), gpointer (this)); browser_tester = new WebkitBrowser (vbox_url); on_url (); // Build the confirmation stuff. label_confirm = gtk_label_new ("Settings are ready to be applied"); gtk_widget_show (label_confirm); page_number_confirm = gtk_assistant_append_page (GTK_ASSISTANT (assistant), label_confirm); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), label_confirm, "Settings are ready to be applied"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), label_confirm, GTK_ASSISTANT_PAGE_CONFIRM); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), label_confirm, true); label_progress = gtk_label_new (""); gtk_widget_show (label_progress); gtk_assistant_append_page (GTK_ASSISTANT (assistant), label_progress); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), label_progress, ""); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), label_progress, GTK_ASSISTANT_PAGE_PROGRESS); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), label_progress, true); label_summary = gtk_label_new ("Settings have been applied"); gtk_widget_show (label_summary); summary_page_number = gtk_assistant_append_page (GTK_ASSISTANT (assistant), label_summary); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), label_summary, "Ready"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), label_summary, GTK_ASSISTANT_PAGE_SUMMARY); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), label_summary, true); // Finish building assistant. gtk_widget_show_all (assistant); gtk_assistant_set_current_page (GTK_ASSISTANT (assistant), 0); } ResourceAssistant::~ResourceAssistant() { delete browser_home_page; delete browser_tester; } void ResourceAssistant::on_assistant_prepare_signal (GtkAssistant *assistant, GtkWidget *page, gpointer user_data) { ((ResourceAssistant *) user_data)->on_assistant_prepare(page); } void ResourceAssistant::on_assistant_prepare (GtkWidget *page) { if (page == vbox_title) { on_entry_title(); } } void ResourceAssistant::on_assistant_apply_signal (GtkAssistant *assistant, gpointer user_data) { ((ResourceAssistant *) user_data)->on_assistant_apply(); } void ResourceAssistant::on_assistant_apply () { // Assemble the template. GKeyFile *keyfile = g_key_file_new(); vector templatedata; // Title. g_key_file_set_string(keyfile, resource_template_general_group(), resource_template_title_key(), title().c_str()); // Home page. g_key_file_set_string(keyfile, resource_template_general_group(), resource_template_home_page_key(), home_page().c_str()); // Book set. { vector ids = books_type_to_ids(btUnknown); for (unsigned int i = 0; i < ids.size(); i++) { ustring book = books[ids[i]]; if (!book.empty()) { g_key_file_set_string(keyfile, resource_template_books_group(), books_id_to_english(ids[i]).c_str(), book.c_str()); } } } // Book set 2. { vector ids = books_type_to_ids(btUnknown); for (unsigned int i = 0; i < ids.size(); i++) { ustring book = books2[ids[i]]; if (!book.empty()) { g_key_file_set_string(keyfile, resource_template_books2_group(), books_id_to_english(ids[i]).c_str(), book.c_str()); } } } // URL constructor. g_key_file_set_string(keyfile, resource_template_general_group(), resource_template_url_constructor_key(), url_constructor ().c_str()); // Write the template. gchar *data = g_key_file_to_data(keyfile, NULL, NULL); if (data) { g_file_set_contents(working_configuration_file ().c_str(), data, -1, NULL); g_free(data); } g_key_file_free(keyfile); // Move the Resource into place. ustring directory = shell_clean_filename(title()); directory = gw_build_filename(Directories->get_resources(), directory); unix_rmdir (directory); unix_mv (working_directory (), directory); // Store where the resource was put. created_resource_template = gw_build_filename (directory, resource_template_ini()); // Show summary. gtk_assistant_set_current_page (GTK_ASSISTANT (assistant), summary_page_number); } gint ResourceAssistant::assistant_forward_function (gint current_page, gpointer user_data) { return ((ResourceAssistant *) user_data)->assistant_forward (current_page); } gint ResourceAssistant::assistant_forward (gint current_page) { // Default behaviour is to go to the next page. gint new_page_number = current_page + 1; /* if (current_page == page_number_task_selector) { // Go to the right page depending on which task is selected. if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_task_selector_settings))) { new_page_number = page_number_interval; } } */ // Return the new page. return new_page_number; } void ResourceAssistant::on_entry_title_changed (GtkEditable *editable, gpointer user_data) { ((ResourceAssistant *) user_data)->on_entry_title(); } void ResourceAssistant::on_entry_title () { gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_title, false); // Handle situation that no title is given. if (title().empty()) { gtk_label_set_text (GTK_LABEL (label_title), "Enter the title"); return; } // Check that the title is available. // If the title is the same as the one of the Resource being edited, that's fine. vector < ustring > resources; vector < ustring > filenames; resources = resource_get_resources(filenames, false); set resource_set(resources.begin(), resources.end()); bool title_is_available = (resource_set.find(title()) == resource_set.end()); if (title() == resource_get_title(working_configuration_file ())) title_is_available = true; gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_title, title_is_available); ustring message; if (!title_is_available) message = "This title already exists"; gtk_label_set_text (GTK_LABEL (label_title), message.c_str()); } ustring ResourceAssistant::title () // Get the title { ustring title = gtk_entry_get_text(GTK_ENTRY(entry_title)); title = trim(title); return title; } ustring ResourceAssistant::working_directory () { return gw_build_filename(Directories->get_temp(), "resource-editor"); } ustring ResourceAssistant::working_configuration_file () { return gw_build_filename (working_directory (), resource_template_ini()); } void ResourceAssistant::on_button_add_files_clicked (GtkButton *button, gpointer user_data) { ((ResourceAssistant *) user_data)->on_button_add_files(false); } void ResourceAssistant::on_button_add_files (bool gui_only) { if (!gui_only) { vector files; files = gtkw_file_chooser_open_multiple(NULL, "", ""); if (!files.empty()) { ProgressWindow progresswindow("Adding files", false); progresswindow.set_iterate(0, 1, files.size()); for (unsigned int i = 0; i < files.size(); i++) { progresswindow.iterate(); unix_cp(files[i], working_directory()); } } } ReadFiles rf(working_directory(), "", ""); ustring text; text.append("Files in resource: "); text.append(convert_to_string(rf.files.size())); gtk_label_set_text(GTK_LABEL(label_files), text.c_str()); } void ResourceAssistant::on_button_add_folders_clicked (GtkButton *button, gpointer user_data) { ((ResourceAssistant *) user_data)->on_button_add_folders(false); } void ResourceAssistant::on_button_add_folders (bool gui_only) { if (!gui_only) { ustring directory = gtkw_file_chooser_select_folder(NULL, "", ""); if (!directory.empty()) { ProgressWindow progresswindow("Adding directory", false); unix_cp_r(directory, working_directory()); } } ReadDirectories rd(working_directory(), "", ""); ustring text; text.append("Directories in resource: "); text.append(convert_to_string(rd.directories.size())); gtk_label_set_text(GTK_LABEL(label_folders), text.c_str()); } void ResourceAssistant::on_entry_home_page_changed (GtkEditable *editable, gpointer user_data) { ((ResourceAssistant *) user_data)->on_entry_home_page(); } void ResourceAssistant::on_entry_home_page () { ustring homepage = resource_url_get(home_page (), working_configuration_file ()); browser_home_page->set_home_page (homepage); browser_home_page->go_to(homepage); } ustring ResourceAssistant::home_page () // Retrieves the home page from the gui. { ustring homepage = gtk_entry_get_text (GTK_ENTRY (entry_home_page)); homepage = trim (homepage); return homepage; } void ResourceAssistant::on_button_bookset_clicked (GtkButton *button, gpointer user_data) { ((ResourceAssistant *) user_data)->on_button_bookset(false); } void ResourceAssistant::on_button_bookset (bool update_gui_only) { if (!update_gui_only) { BooknamesDialog dialog(books, "Enter the abbreviations for the books", "Abbreviations"); if (dialog.run() == GTK_RESPONSE_OK) { books = dialog.newbooks; } } ustring text = "Abbreviations entered: "; text.append(convert_to_string(books.size())); gtk_label_set_text(GTK_LABEL(label_bookset), text.c_str()); } void ResourceAssistant::on_button_books_import_clicked (GtkButton *button, gpointer user_data) { ((ResourceAssistant *) user_data)->on_button_books_import(); } void ResourceAssistant::on_button_books_import () // Import the books from another resource. { vector filenames; vector resources = resource_get_resources(filenames, false); quick_sort(resources, filenames, 0, resources.size()); ListviewDialog dialog("Import from resource", resources, "", false, NULL); if (dialog.run() == GTK_RESPONSE_OK) { ustring resource = dialog.focus; ustring filename; for (unsigned int i = 0; i < resources.size(); i++) { if (resource == resources[i]) { filename = filenames[i]; } } if (!filename.empty()) { books = resource_get_books (filename); on_button_bookset (true); } } } void ResourceAssistant::on_button_bookset2_clicked (GtkButton *button, gpointer user_data) { ((ResourceAssistant *) user_data)->on_button_bookset2(false); } void ResourceAssistant::on_button_bookset2 (bool update_gui_only) { if (!update_gui_only) { BooknamesDialog dialog(books2, "Enter the second abbreviations for the books", "Abbreviations"); if (dialog.run() == GTK_RESPONSE_OK) { books2 = dialog.newbooks; } } ustring text = "Abbreviations entered: "; text.append(convert_to_string(books2.size())); gtk_label_set_text(GTK_LABEL(label_bookset2), text.c_str()); } void ResourceAssistant::on_button_books2_import_clicked (GtkButton *button, gpointer user_data) { ((ResourceAssistant *) user_data)->on_button_books2_import(); } void ResourceAssistant::on_button_books2_import () // Import the second lot of books from another resource. { vector < ustring > filenames; vector < ustring > resources = resource_get_resources(filenames, false); quick_sort(resources, filenames, 0, resources.size()); ListviewDialog dialog("Import from resource", resources, "", false, NULL); if (dialog.run() == GTK_RESPONSE_OK) { ustring resource = dialog.focus; ustring filename; for (unsigned int i = 0; i < resources.size(); i++) { if (resource == resources[i]) { filename = filenames[i]; } } if (!filename.empty()) { books2 = resource_get_books2 (filename); on_button_bookset2 (true); } } } void ResourceAssistant::on_button_anchors_clicked (GtkButton *button, gpointer user_data) { ((ResourceAssistant *) user_data)->on_button_anchors(); } void ResourceAssistant::on_button_anchors () { ResourceConverterDialog dialog(working_directory ()); if (dialog.run() == GTK_RESPONSE_OK) { // Modify the url constructor by adding the anchor to it, except if one is already there. ustring constructor = url_constructor (); if (constructor.find ("#") == string::npos) { constructor.append ("#"); constructor.append (resource_conversion_anchor_prefix ()); constructor.append (resource_url_constructor_chapter()); constructor.append ("_"); constructor.append (resource_url_constructor_verse()); gtk_entry_set_text (GTK_ENTRY (entry_url), constructor.c_str()); } } } ustring ResourceAssistant::url_constructor () // Retrieves the URL constructor from the gui. { ustring url = gtk_entry_get_text (GTK_ENTRY (entry_url)); url = trim (url); return url; } void ResourceAssistant::on_entry_url_changed (GtkEditable *editable, gpointer user_data) { ((ResourceAssistant *) user_data)->on_url(); } void ResourceAssistant::on_combobox_test_changed (GtkComboBox *combobox, gpointer user_data) { ((ResourceAssistant *) user_data)->on_url(); } void ResourceAssistant::on_url () { ustring url = resource_url_get(url_constructor (), working_configuration_file ()); unsigned int book = books_english_to_id (combobox_get_active_string (combobox_test_book)); unsigned int chapter = convert_to_int (combobox_get_active_string (combobox_test_chapter)); ustring verse = combobox_get_active_string (combobox_test_verse); Reference reference (book, chapter, verse); url = resource_url_enter_reference(url, books, books2, reference); browser_tester->go_to (url); } ustring ResourceAssistant::new_resource_get () // If there's a new resource, returns its name. { if (edited_resource_template.empty()) { return title (); } return ""; } ustring ResourceAssistant::edited_resource_get () // If there's an edited resource, return its name. { if (!edited_resource_template.empty()) { return title (); } return ""; } /* todo resources. We may need an option to download all verses and store these locally. So Bibledit goes to a website, downloads all verses, stores them under the URL's, so these can be kept for later use offline. Bibledit may use httrack to download sites to local files for offline viewing. But httrack may produce huge files, so a warning may have to be given to the user. Else Bibledit can manually download the page for each verse, using htmltrack 2 levels deep and store that info, then retrieve it later for each verse. To make an engine in bibledit that downloads the online version. This requires the Versification for the Resource to be set. We need predictable locations for this resource, so that if this location is found, the URL is not used. When found, the local copy is used. The page for this needs a button that downloads all verses, and another one that removes all locally cached information. As wget is more common, we better use that utility. The maximum depth to which the retrieval may descend is specified with the ‘-l’ option. The default maximum depth is five layers. When downloading from Internet servers, consider using the ‘-w’ option to introduce a delay between accesses to the server. If you want to download only one page, use ‘--page-requisites’ without any additional recursion. wget --recursive --no-clobber --page-requisites --convert-links --domains net.bible.org --user-agent=Mozilla --level=1 "http://net.bible.org/bible.php?book=Mat&chapter=1" --quiet --wait=10 http://net.bible.org/bible.php?book=Mat&chapter=1 http://net.bible.org/verse.php?book=Mat&chapter=1&verse=1 We may need to have an option to --wait some time, as optional, so by default it speeds on. If using the --no-clobber option, and downloading everything to the same directory, we st are going to do a lot of saving the more we download, because no file will be downloaded twice. E.g. the strong's numbers are downloaded only once, and be re-used by all pages. Some recommend httrack as if that beats wget. httrack 'http://net.bible.org/bible.php?book=Mat&chapter=1' -O "." -%v -r2 --can-go-down -c8 */ bibledit-gtk-4.9/src/assistantresource.h000664 000766 000024 00000011171 12221507137 020577 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_ASSISTANT_RESOURCE_H #define INCLUDED_ASSISTANT_RESOURCE_H #include #include "ustring.h" #include "assistants.h" #include "webkitbrowser.h" class ResourceAssistant : public AssistantBase { public: ResourceAssistant(const ustring& resource_template); virtual ~ResourceAssistant(); ustring new_resource_get (); ustring edited_resource_get (); private: // Assistant page preparation. static void on_assistant_prepare_signal (GtkAssistant *assistant, GtkWidget *page, gpointer user_data); void on_assistant_prepare (GtkWidget *page); // General variables. ustring edited_resource_template; ustring created_resource_template; // Working data. ustring working_directory (); ustring working_configuration_file (); // Title. GtkWidget *vbox_title; GtkWidget *entry_title; GtkWidget *label_title; static void on_entry_title_changed (GtkEditable *editable, gpointer user_data); void on_entry_title (); ustring title (); // Files and folders. GtkWidget *table_files; GtkWidget *button_add_files; GtkWidget *alignment1; GtkWidget *hbox2; GtkWidget *image1; GtkWidget *label6; GtkWidget *button_add_folders; GtkWidget *alignment2; GtkWidget *hbox3; GtkWidget *image2; GtkWidget *label7; GtkWidget *label_files; GtkWidget *label_folders; static void on_button_add_files_clicked (GtkButton *button, gpointer user_data); void on_button_add_files (bool gui_only); static void on_button_add_folders_clicked (GtkButton *button, gpointer user_data); void on_button_add_folders (bool gui_only); // Home page. GtkWidget *vbox_home_page; GtkWidget *entry_home_page; GtkWidget *vbox_home_page_resource; WebkitBrowser *browser_home_page; static void on_entry_home_page_changed (GtkEditable *editable, gpointer user_data); void on_entry_home_page (); ustring home_page (); // Book set. GtkWidget *vbox_bookset; GtkWidget *hbox_bookset; GtkWidget *button_bookset; GtkWidget *label_bookset; GtkWidget *hbox_books_import; GtkWidget *button_books_import; map books; static void on_button_bookset_clicked (GtkButton *button, gpointer user_data); void on_button_bookset (bool update_gui_only); static void on_button_books_import_clicked (GtkButton *button, gpointer user_data); void on_button_books_import (); // Book set 2. GtkWidget *vbox_bookset2; GtkWidget *hbox_bookset2; GtkWidget *button_bookset2; GtkWidget *label_bookset2; GtkWidget *hbox_books2_import; GtkWidget *button_books2_import; map books2; static void on_button_bookset2_clicked (GtkButton *button, gpointer user_data); void on_button_bookset2 (bool update_gui_only); static void on_button_books2_import_clicked (GtkButton *button, gpointer user_data); void on_button_books2_import (); // Anchors. GtkWidget *vbox_anchors; GtkWidget *hbox_anchors; GtkWidget *button_anchors; static void on_button_anchors_clicked (GtkButton *button, gpointer user_data); void on_button_anchors (); // URL. GtkWidget *vbox_url; GtkWidget *entry_url; static void on_entry_url_changed (GtkEditable *editable, gpointer user_data); ustring url_constructor (); GtkWidget *hbox_tester; GtkWidget *combobox_test_book; GtkWidget *combobox_test_chapter; GtkWidget *combobox_test_verse; WebkitBrowser *browser_tester; static void on_combobox_test_changed (GtkComboBox *combobox, gpointer user_data); void on_url (); // Confirmation stuff. int page_number_confirm; GtkWidget *label_confirm; GtkWidget *label_progress; GtkWidget *label_summary; unsigned int summary_page_number; static void on_assistant_apply_signal (GtkAssistant *assistant, gpointer user_data); void on_assistant_apply (); static gint assistant_forward_function (gint current_page, gpointer user_data); gint assistant_forward (gint current_page); }; #endif bibledit-gtk-4.9/src/assistantrestore.cpp000644 000766 000024 00000031762 12453001367 020775 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "assistantrestore.h" #include "help.h" #include "settings.h" #include "utilities.h" #include "gwrappers.h" #include "tiny_utilities.h" #include "directories.h" #include "unixwrappers.h" #include "git.h" #include "projectutils.h" #include "snapshots.h" #include "gtkwrappers.h" #include "compress.h" #include "restore.h" RestoreAssistant::RestoreAssistant(int dummy) : AssistantBase("Restore", "restore") // Restore assistant. { gtk_assistant_set_forward_page_func (GTK_ASSISTANT (assistant), GtkAssistantPageFunc (assistant_forward_function), gpointer(this), NULL); g_signal_connect (G_OBJECT (assistant), "apply", G_CALLBACK (on_assistant_apply_signal), gpointer(this)); g_signal_connect (G_OBJECT (assistant), "prepare", G_CALLBACK (on_assistant_prepare_signal), gpointer(this)); introduction ("This assists you with restoring a backup"); // Configuration and initialization. extern Settings *settings; ustring project = settings->genconfig.project_get(); // Build the GUI for the task selector. vbox_select_type = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox_select_type); page_number_select_type = gtk_assistant_append_page (GTK_ASSISTANT (assistant), vbox_select_type); gtk_container_set_border_width (GTK_CONTAINER (vbox_select_type), 10); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), vbox_select_type, "What would you like to restore?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), vbox_select_type, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_select_type, true); GSList *radiobutton_select_type_group = NULL; radiobutton_select_type_bible = gtk_radio_button_new_with_mnemonic (NULL, "Bible"); gtk_widget_show (radiobutton_select_type_bible); gtk_box_pack_start (GTK_BOX (vbox_select_type), radiobutton_select_type_bible, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_select_type_bible), radiobutton_select_type_group); radiobutton_select_type_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_select_type_bible)); radiobutton_select_type_notes = gtk_radio_button_new_with_mnemonic (NULL, "Notes"); gtk_widget_show (radiobutton_select_type_notes); gtk_box_pack_start (GTK_BOX (vbox_select_type), radiobutton_select_type_notes, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_select_type_notes), radiobutton_select_type_group); radiobutton_select_type_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_select_type_notes)); radiobutton_select_type_resource = gtk_radio_button_new_with_mnemonic (NULL, "Resource"); gtk_widget_show (radiobutton_select_type_resource); gtk_box_pack_start (GTK_BOX (vbox_select_type), radiobutton_select_type_resource, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_select_type_resource), radiobutton_select_type_group); radiobutton_select_type_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_select_type_resource)); radiobutton_select_type_everything = gtk_radio_button_new_with_mnemonic (NULL, "Everything"); gtk_widget_show (radiobutton_select_type_everything); gtk_box_pack_start (GTK_BOX (vbox_select_type), radiobutton_select_type_everything, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_select_type_everything), radiobutton_select_type_group); radiobutton_select_type_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_select_type_everything)); Shortcuts shortcuts_select_type (0); shortcuts_select_type.button (radiobutton_select_type_bible); shortcuts_select_type.button (radiobutton_select_type_notes); shortcuts_select_type.button (radiobutton_select_type_resource); shortcuts_select_type.button (radiobutton_select_type_everything); shortcuts_select_type.consider_assistant(); shortcuts_select_type.process(); // Confirm or change Bible. vbox_bible_name = gtk_vbox_new (FALSE, 5); gtk_widget_show (vbox_bible_name); page_number_bible_name = gtk_assistant_append_page (GTK_ASSISTANT (assistant), vbox_bible_name); gtk_container_set_border_width (GTK_CONTAINER (vbox_bible_name), 10); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), vbox_bible_name, "What will be the name of the Bible?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), vbox_bible_name, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_bible_name, true); entry_bible_name = gtk_entry_new (); gtk_widget_show (entry_bible_name); gtk_box_pack_start (GTK_BOX (vbox_bible_name), entry_bible_name, FALSE, FALSE, 0); label_bible_name = gtk_label_new (""); gtk_widget_show (label_bible_name); gtk_box_pack_start (GTK_BOX (vbox_bible_name), label_bible_name, FALSE, FALSE, 0); g_signal_connect_after ((gpointer) entry_bible_name, "changed", G_CALLBACK (on_entry_bible_name_changed), gpointer (this)); // Select file. vbox_file = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox_file); page_number_file = gtk_assistant_append_page (GTK_ASSISTANT (assistant), vbox_file); gtk_container_set_border_width (GTK_CONTAINER (vbox_file), 10); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), vbox_file, "What is the file to restore?"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), vbox_file, GTK_ASSISTANT_PAGE_CONTENT); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_file, false); button_file = gtk_button_new (); gtk_widget_show (button_file); gtk_box_pack_start (GTK_BOX (vbox_file), button_file, FALSE, FALSE, 0); GtkWidget *alignment2; GtkWidget *hbox2; GtkWidget *image2; alignment2 = gtk_alignment_new (0.5, 0.5, 0, 0); gtk_widget_show (alignment2); gtk_container_add (GTK_CONTAINER (button_file), alignment2); hbox2 = gtk_hbox_new (FALSE, 2); gtk_widget_show (hbox2); gtk_container_add (GTK_CONTAINER (alignment2), hbox2); image2 = gtk_image_new_from_stock ("gtk-open", GTK_ICON_SIZE_BUTTON); gtk_widget_show (image2); gtk_box_pack_start (GTK_BOX (hbox2), image2, FALSE, FALSE, 0); label_file = gtk_label_new_with_mnemonic (""); gtk_widget_show (label_file); gtk_box_pack_start (GTK_BOX (hbox2), label_file, FALSE, FALSE, 0); g_signal_connect ((gpointer) button_file, "clicked", G_CALLBACK (on_button_file_clicked), gpointer(this)); // Build the confirmation stuff. label_confirm = gtk_label_new ("Restore is about to be done"); gtk_widget_show (label_confirm); page_number_confirm = gtk_assistant_append_page (GTK_ASSISTANT (assistant), label_confirm); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), label_confirm, "Restore is about to be done"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), label_confirm, GTK_ASSISTANT_PAGE_CONFIRM); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), label_confirm, true); label_progress = gtk_label_new ("Restore is in progress"); gtk_widget_show (label_progress); page_number_progress = gtk_assistant_append_page (GTK_ASSISTANT (assistant), label_progress); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), label_progress, ""); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), label_progress, GTK_ASSISTANT_PAGE_PROGRESS); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), label_progress, true); label_summary = gtk_label_new (""); gtk_widget_show (label_summary); summary_page_number = gtk_assistant_append_page (GTK_ASSISTANT (assistant), label_summary); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), label_summary, "Ready"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), label_summary, GTK_ASSISTANT_PAGE_SUMMARY); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), label_summary, true); // Finish building assistant. gtk_widget_show_all (assistant); gtk_assistant_set_current_page (GTK_ASSISTANT (assistant), 0); } RestoreAssistant::~RestoreAssistant() { } void RestoreAssistant::on_assistant_prepare_signal (GtkAssistant *assistant, GtkWidget *page, gpointer user_data) { ((RestoreAssistant *) user_data)->on_assistant_prepare(page); } void RestoreAssistant::on_assistant_prepare (GtkWidget *page) { if (page == vbox_bible_name) { bool bible_name_is_ok = !bible_name.empty(); ustring message = "Will restore to Bible " + bible_name; vector available_bibles = projects_get_all (); set bible_set (available_bibles.begin (), available_bibles.end()); if (bible_set.find (bible_name) != bible_set.end ()) { bible_name_is_ok = false; message = "This Bible already exists"; } if (bible_name.empty()) { message = "Please enter a name for the Bible to restore to"; } gtk_label_set_text (GTK_LABEL (label_bible_name), message.c_str()); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_bible_name, bible_name_is_ok); } if (page == vbox_file) { gtk_label_set_text (GTK_LABEL (label_file), filename.c_str()); if (filename.empty()) { gtk_label_set_text (GTK_LABEL (label_file), "(None)"); } gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), vbox_file, !filename.empty()); } if (page == label_summary) { ustring summary; for (unsigned int i = 0; i < restore_feedback.size(); i++) { if (i) summary.append ("\n"); summary.append (restore_feedback[i]); } gtk_label_set_text (GTK_LABEL (label_summary), summary.c_str()); } } void RestoreAssistant::on_assistant_apply_signal (GtkAssistant *assistant, gpointer user_data) { ((RestoreAssistant *) user_data)->on_assistant_apply(); } void RestoreAssistant::on_assistant_apply () { // Unpack the tarball. ustring unpack_directory = gw_build_filename (Directories->get_temp (), "restore"); unix_rmdir (unpack_directory); gw_mkdir_with_parents (unpack_directory); if (uncompress (filename, unpack_directory)) { // Do specialized operations on the unpacked data. switch (get_type()) { case btBible: { restore_project (unpack_directory, bible_name, restore_feedback); break; } case btNotes: { restore_notes (unpack_directory, restore_feedback); break; } case btResource: { restore_resource (unpack_directory, restore_feedback); break; } case btAll: { restore_all_stage_one (unpack_directory, restore_feedback); break; } } } else { restore_feedback.push_back ("Failed to unpack file " + filename); } // Show summary. gtk_assistant_set_current_page (GTK_ASSISTANT (assistant), page_number_progress); } gint RestoreAssistant::assistant_forward_function (gint current_page, gpointer user_data) { return ((RestoreAssistant *) user_data)->assistant_forward (current_page); } gint RestoreAssistant::assistant_forward (gint current_page) { // Default behaviour is to go to the next page. gint new_page_number = current_page + 1; if (current_page == page_number_select_type) { if (get_type () != btBible) { new_page_number = page_number_file; } } // Return the new page. return new_page_number; } void RestoreAssistant::on_entry_bible_name_changed (GtkEditable *editable, gpointer user_data) { ((RestoreAssistant *) user_data)->on_entry_bible_name (); } void RestoreAssistant::on_entry_bible_name () { bible_name = gtk_entry_get_text (GTK_ENTRY (entry_bible_name)); on_assistant_prepare (vbox_bible_name); } void RestoreAssistant::on_button_file_clicked (GtkButton *button, gpointer user_data) { ((RestoreAssistant *) user_data)->on_button_file (); } void RestoreAssistant::on_button_file () { ustring file = gtkw_file_chooser_open (assistant, "", filename); if (!file.empty()) { filename = file; on_assistant_prepare (vbox_file); } } BackupType RestoreAssistant::get_type () { if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_select_type_bible))) { return btBible; } if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_select_type_notes))) { return btNotes; } if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_select_type_resource))) { return btResource; } if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_select_type_everything))) { return btAll; } return btAll; } bibledit-gtk-4.9/src/assistantrestore.h000664 000766 000024 00000005046 12221507146 020437 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_ASSISTANT_RESTORE_H #define INCLUDED_ASSISTANT_RESTORE_H #include #include "ustring.h" #include "assistants.h" #include "backup.h" class RestoreAssistant : public AssistantBase { public: RestoreAssistant(int dummy); virtual ~RestoreAssistant(); private: // Assistant page preparation. static void on_assistant_prepare_signal (GtkAssistant *assistant, GtkWidget *page, gpointer user_data); void on_assistant_prepare (GtkWidget *page); // Restore type selection. int page_number_select_type; GtkWidget *vbox_select_type; GtkWidget *radiobutton_select_type_bible; GtkWidget *radiobutton_select_type_notes; GtkWidget *radiobutton_select_type_resource; GtkWidget *radiobutton_select_type_everything; BackupType get_type (); // Bible name. int page_number_bible_name; GtkWidget *vbox_bible_name; GtkWidget *entry_bible_name; GtkWidget *label_bible_name; static void on_entry_bible_name_changed (GtkEditable *editable, gpointer user_data); void on_entry_bible_name (); ustring bible_name; // Select file. int page_number_file; GtkWidget *vbox_file; GtkWidget *button_file; GtkWidget *label_file; static void on_button_file_clicked (GtkButton *button, gpointer user_data); void on_button_file (); ustring filename; // Confirmation stuff. int page_number_confirm; GtkWidget *label_confirm; GtkWidget *label_progress; GtkWidget *label_summary; unsigned int summary_page_number; int page_number_progress; static void on_assistant_apply_signal (GtkAssistant *assistant, gpointer user_data); void on_assistant_apply (); static gint assistant_forward_function (gint current_page, gpointer user_data); gint assistant_forward (gint current_page); vector restore_feedback; }; #endif bibledit-gtk-4.9/src/assistants.cpp000664 000766 000024 00000011216 12221507150 017540 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "assistants.h" #include "settings.h" #include "gwrappers.h" #include "unixwrappers.h" #include "tiny_utilities.h" #include "screen.h" #include "gtkwrappers.h" #include "htmlbrowser.h" AssistantBase::AssistantBase(const ustring& title, const gchar * helptopic) // Base class for each assistant. { // Variables. process_id = 0; topic = helptopic; // If no help is given, take a default one. if (!topic) topic = "none"; // Signalling button. signal_button = gtk_button_new (); // Create the assistant. assistant = gtk_assistant_new(); gtk_widget_show (assistant); gtk_window_set_modal (GTK_WINDOW (assistant), true); gtk_window_set_title (GTK_WINDOW (assistant), title.c_str()); // Let it remain above other windows. gdk_window_set_keep_above (gtk_widget_get_root_window (assistant), true); // Introduction. label_intro = gtk_label_new (title.c_str()); gtk_widget_show (label_intro); gtk_assistant_append_page (GTK_ASSISTANT (assistant), label_intro); gtk_label_set_line_wrap (GTK_LABEL (label_intro), TRUE); gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), label_intro, "Introduction"); gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), label_intro, GTK_ASSISTANT_PAGE_INTRO); gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), label_intro, true); // Help button. //button_help = gtk_button_new(); //gtk_widget_show(button_help); //gtk_assistant_add_action_widget (GTK_ASSISTANT (assistant), button_help); //GtkWidget *alignment = gtk_alignment_new(0.5, 0.5, 0, 0); //gtk_widget_show(alignment); //gtk_container_add(GTK_CONTAINER(button_help), alignment); //GtkWidget *hbox = gtk_hbox_new(FALSE, 2); //gtk_widget_show(hbox); //gtk_container_add(GTK_CONTAINER(alignment), hbox); //GtkWidget *image = gtk_image_new_from_stock("gtk-help", GTK_ICON_SIZE_BUTTON); //gtk_widget_show(image); //gtk_box_pack_start(GTK_BOX(hbox), image, FALSE, FALSE, 0); //GtkWidget *label = gtk_label_new_with_mnemonic("_Help"); //gtk_widget_show(label); //gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); // Signal handlers. //g_signal_connect((gpointer) button_help, "clicked", G_CALLBACK(on_button_help_activated), gpointer(this)); g_signal_connect (G_OBJECT (assistant), "cancel", G_CALLBACK (on_assistant_cancel_signal), gpointer(this)); g_signal_connect (G_OBJECT (assistant), "close", G_CALLBACK (on_assistant_close_signal), gpointer(this)); // g_signal_connect (G_OBJECT (assistant), "delete_event", G_CALLBACK(on_assistant_delete_event), gpointer(this)); } AssistantBase::~AssistantBase() { gtk_widget_destroy (assistant); gtk_widget_destroy (signal_button); if (process_id) { unix_kill(process_id); } } void AssistantBase::introduction (const ustring& text) // Sets the introduction text. { gtk_label_set_text (GTK_LABEL (label_intro), text.c_str()); } void AssistantBase::on_assistant_cancel_signal (GtkAssistant *assistant, gpointer user_data) { ((AssistantBase *) user_data)->on_assistant_end(); } void AssistantBase::on_assistant_close_signal (GtkAssistant *assistant, gpointer user_data) { ((AssistantBase *) user_data)->on_assistant_end(); } bool AssistantBase::on_assistant_delete_event(GtkWidget *widget, GdkEvent *event, gpointer user_data) { ((AssistantBase *) user_data)->on_assistant_end(); return true; } void AssistantBase::on_assistant_end () { gtk_button_clicked (GTK_BUTTON (signal_button)); } void AssistantBase::on_button_help_activated(GtkButton * button, gpointer user_data) { ((AssistantBase *) user_data)->on_button_help(); } void AssistantBase::on_button_help() { // Assemble the url to load. ustring url = html_server_url ("site/"); url.append ("reference/menu/"); url.append(topic); url.append(".html"); gtkw_show_uri (url, false); // Present the window. g_usleep(500000); gtk_window_present(GTK_WINDOW(assistant)); } bibledit-gtk-4.9/src/assistants.h000664 000766 000024 00000003160 12221507150 017204 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_ASSISTANTS_H #define INCLUDED_ASSISTANTS_H #include "libraries.h" #include class AssistantBase { public: AssistantBase(const ustring& title, const gchar * helptopic); virtual ~AssistantBase(); GtkWidget * signal_button; GtkWidget * assistant; void introduction (const ustring& text); private: GtkWidget *label_intro; static void on_assistant_cancel_signal (GtkAssistant *assistant, gpointer user_data); static void on_assistant_close_signal (GtkAssistant *assistant, gpointer user_data); static bool on_assistant_delete_event(GtkWidget *widget, GdkEvent *event, gpointer user_data); void on_assistant_end (); GtkWidget *button_help; static void on_button_help_activated (GtkButton * button, gpointer user_data); void on_button_help (); const gchar * topic; GPid process_id; }; #endif bibledit-gtk-4.9/src/backup.cpp000644 000766 000024 00000004743 12453001367 016624 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "backup.h" #include "gwrappers.h" #include "directories.h" #include "tiny_utilities.h" #include "resource_utils.h" void backup_bible (const ustring& bible, const ustring& filename) // Backs up a complete Bible. { unlink (filename.c_str()); GwSpawn spawn ("tar"); spawn.arg ("-czf"); spawn.arg (filename); spawn.arg ("."); spawn.workingdirectory (tiny_project_directory (bible)); spawn.progress ("Backing up Bible " + bible, false); spawn.run (); } void backup_notes (const ustring& filename) { unlink (filename.c_str()); GwSpawn spawn ("tar"); spawn.arg ("-czf"); spawn.arg (filename); spawn.arg ("."); spawn.workingdirectory (Directories->get_notes ()); spawn.progress ("Backing up notes", false); spawn.run (); } void backup_resource (const ustring& resource, const ustring& filename) // Backs up a Resource. { ustring templatename; vector filenames; vector resources = resource_get_resources(filenames, false); for (unsigned int i = 0; i < resources.size(); i++) { if (resource == resources[i]) { templatename = filenames[i]; } } if (templatename.empty()) { return; } ustring folder = gw_path_get_dirname (templatename); unlink (filename.c_str()); GwSpawn spawn ("tar"); spawn.arg ("-czf"); spawn.arg (filename); spawn.arg ("."); spawn.workingdirectory (folder); spawn.progress ("Backing up Resource " + resource, false); spawn.run (); } void backup_all (const ustring& filename) { unlink (filename.c_str()); GwSpawn spawn ("tar"); spawn.arg ("-czf"); spawn.arg (filename); spawn.arg ("."); spawn.workingdirectory (Directories->get_root ()); spawn.progress ("Backing up everything", false); spawn.run (); } bibledit-gtk-4.9/src/backup.h000664 000766 000024 00000002252 12221507147 016264 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_BACKUP_H #define INCLUDED_BACKUP_H #include "libraries.h" #include #include enum BackupType {btBible, btNotes, btResource, btAll}; void backup_bible (const ustring& bible, const ustring& filename); void backup_notes (const ustring& filename); void backup_resource (const ustring& resource, const ustring& filename); void backup_all (const ustring& filename); #endif bibledit-gtk-4.9/src/bible.cpp000664 000766 000024 00000061113 12221507150 016422 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "bible.h" #include "utilities.h" #include "unixwrappers.h" #include "projectutils.h" #include "books.h" #include "settings.h" #include "settings.h" #include "localizedbooks.h" #include "tiny_utilities.h" #include "referencememory.h" void quick_swap2(unsigned int &a, unsigned int &b) { unsigned int t = a; a = b; b = t; } void quick_swap(Reference & a, Reference & b) { Reference t = a; a = b; b = t; } void quick_sort(vector < unsigned int >&one, vector < Reference > &two, unsigned int beg, unsigned int end) { if (end > beg + 1) { unsigned int piv = one[beg]; unsigned int l = beg + 1; unsigned int r = end; while (l < r) { if (one[l] <= piv) { l++; } else { --r; quick_swap2(one[l], one[r]); quick_swap(two[l], two[r]); } } --l; quick_swap2(one[l], one[beg]); quick_swap(two[l], two[beg]); quick_sort(one, two, beg, l); quick_sort(one, two, r, end); } } void sort_references(vector < Reference > &references) /* Sorts all references from Genesis to Revelation. Sorts on book first, then chapter, and finally verse. */ { // When there are less than two entries no sorting is needed. if (references.size() < 2) return; try { // Make a vector that contains the numerical equivalent of the references. vector < unsigned int >numerical; for (unsigned int i = 0; i < references.size(); i++) { numerical.push_back(reference_to_numerical_equivalent(references[i])); } // Sort the references. quick_sort(numerical, references, 0, numerical.size()); } catch(exception & ex) { cerr << "Sorting references: " << ex.what() << endl; } } void decode_reference(const ustring & reference, ustring & book, ustring & chapter, ustring & verse) /* * Decodes "reference" and provides: * - book * - chapter * - verse * * E.g. "Song of Solomon 1:1" becomes "Song of Solomon", * chapter "1" and verse "1". */ { try { ustring ref(reference); // Extract the book. // Deal with books like "1 Samuel" or "Song of Solomon". int booklength; booklength = ref.rfind(" "); book = ref.substr(0, booklength); ref.erase(0, booklength); ref = trim(ref); // Extract chapter. chapter = number_in_string(ref); ref.erase(0, chapter.length() + 1); ref = trim(ref); // Extract verse. verse = ref; } catch(exception & ex) { cerr << ex.what() << endl; } } bool reference_discover_internal(unsigned int oldbook, unsigned int oldchapter, const ustring & oldverse, const ustring & reference, unsigned int &newbook, unsigned int &newchapter, ustring & newverse, bool consult_memory) /* This interprets "reference" as a valid reference. If needed it will use information of the current reference to complete the info. For example, when "reference" is "1", it is interpreted as verse 1 of the current chapter of the current book. If "reference" is "21 10" it is interpreted as the current book, chapter 21 verse 10. And so forth. If any changes are made to the discovery routine, then it is recommended to run the tests specified below. It should be able to successfully discover the following references: Language Reference English Song of Solomon 1:1,2 Indonesian Kisa Rasul-rasul 2:1a-3b English 2 Corinthians 3:3-4 */ { // Filter the response. string response = trim(reference); // Change a colon to a space. size_t position = response.find(":"); while (position != string::npos) { response[position] = ' '; position = response.find(":"); } // Change a dot to a space. // Dots are in OSIS references. position = response.find("."); while (position != string::npos) { response[position] = ' '; position = response.find("."); } // Change to upper case. response = upperCase(response); // Trim again. response = trim(response); // Divide the response in parts. // A special algorithm ensures that the book is properly formed. // Think of "1 Corinthians 10:1" and "Song of Songs". // Deal with verses like 1-10, and 1,2, and 1a-3b, and so on. ustring bookpart; vector < ustring > numbers; { Parse parse(response); int highest_text_offset = -1; for (unsigned int i = 0; i < parse.words.size(); i++) { ustring vs(parse.words[i]); replace_text(vs, "a", ""); replace_text(vs, "b", ""); replace_text(vs, "-", ""); replace_text(vs, ",", ""); if (number_in_string(vs) != vs) { highest_text_offset = i; } } for (unsigned int i = 0; i < parse.words.size(); i++) { if ((int)i > highest_text_offset) { numbers.push_back(parse.words[i]); } else { if (!bookpart.empty()) bookpart.append(" "); bookpart.append(parse.words[i]); } } } /* We now come to the interpretation of the tokens passed to us. The following situations can occur: - Only book given, e.g. "Genesis". - One number given, e.g. "10". - Two numbers given, e.g. "1 2". - Book and one number given, e.g. "Exodus 10". - Book and two numbers given, e.g. "Song of Solomon 2 3". These situations will be dealt with below. */ // Handle situation where a book is passed. if (!bookpart.empty()) { newbook = book_find_valid(bookpart); if (newbook == 0) { // If something like "1 co" has been added, deal with that by making it "1co", and checking again. ustring s = bookpart; if (s.length() > 2) { if (s[1] == ' ') { s.erase(1, 1); newbook = book_find_valid(s); } } } } // Handle a situation where no book is given. if (bookpart.empty()) { newbook = oldbook; } // Bail out on a bad book. if (newbook == 0) { return false; } // From here and down we can be sure of having a proper book. // Only chapter and/or verse remain to be dealt with, if they're there. // Handle a situation where only the book was given, e.g. "Genesis". if (!bookpart.empty() && numbers.empty()) { newchapter = 1; newverse = "1"; // Optionally retrieve information from the references memory. if (consult_memory) { Reference reference (newbook, newchapter, newverse); if (references_memory_retrieve (reference, false)) { newchapter = reference.chapter; newverse = reference.verse; } } } // Handle a situation where only one number is given, e.g. "10". This is interpreted as the verse. if (bookpart.empty() && numbers.size() == 1) { newchapter = oldchapter; newverse = lowerCase(numbers[0]); } // Handle a situation where only two numbers are given, e.g. "1 2". These are the chapter and verse. if (bookpart.empty() && numbers.size() == 2) { newchapter = convert_to_int(numbers[0]); newverse = lowerCase(numbers[1]); } // Handle a situation where a book and a number is given, e.g. "Exodus 10". These are book and chapter. if (!bookpart.empty() && numbers.size() == 1) { newchapter = convert_to_int(numbers[0]); newverse = "1"; // Optionally retrieve information from the references memory. if (consult_memory) { Reference reference (newbook, newchapter, newverse); if (references_memory_retrieve (reference, true)) { newverse = reference.verse; } } } // Handle situation where book and two numbers are given, e.g. "Song of Solomon 2 3". if (!bookpart.empty() && numbers.size() == 2) { newchapter = convert_to_int(numbers[0]); newverse = lowerCase(numbers[1]); } // Return okay. return true; } bool reference_discover(unsigned int oldbook, unsigned int oldchapter, const ustring & oldverse, const ustring & reference, unsigned int &newbook, unsigned int &newchapter, ustring & newverse, bool consult_memory) { /* This is the new function "reference_discover". It uses the previous one which has now been renamed "reference_discover_internal". This new function iterates even more over a referencereference_discover, and is able to cut off bits at the beginning that would not be a references. This occurs when loading a file with references saved by BibleWorks. It has a format as shown here: BWRL 1 KJV 2Ki 25:18 KJV 1Ch 6:36 In this example the "KJV" needs to be taken out and then the reference will appear cleanly. If "consult_memory" is true, it tries to find out from the verses memory where to go. */ // Do the discovery. bool result; result = reference_discover_internal(oldbook, oldchapter, oldverse, reference, newbook, newchapter, newverse, consult_memory); if (!result) { if (reference.length() >= 11) { ustring adaptedreference(reference); adaptedreference.erase(0, 4); result = reference_discover_internal(oldbook, oldchapter, oldverse, adaptedreference, newbook, newchapter, newverse, consult_memory); } } return result; } unsigned int book_find_valid_internal(const ustring & rawbook) // This looks whether "rawbook" can be interpreted as a valid book in any way. { unsigned int index; // Check on names entered like Genesis or 1 Corinthians, the full English name // A bug was discovered so that "Judges" was interpreted as "Jude", because // of the three letters "JUD". Solved by checking on full English name first. // This also is faster, as most books come in with their normal English names. index = books_english_to_id(rawbook); if (index) { return index; } // Recognise the abbreviations used by Paratext. index = books_paratext_to_id(rawbook); if (index) { return index; } // Try the abbreviations defined by the OSIS project. index = books_osis_to_id(rawbook); if (index) { return index; } // Try the abbreviations of BibleWorks. index = books_bibleworks_to_id(rawbook); if (index) { return index; } // Abbreviations in Paratext: See if shortening the bookname helps. if (rawbook.length() >= 3) { ustring abbrev = rawbook.substr(0, 3); index = books_paratext_to_id(abbrev); if (index) { return index; } } // BibleWorks: See if shortening the bookname helps. if (rawbook.length() >= 3) { ustring abbrev = rawbook.substr(0, 3); index = books_bibleworks_to_id(abbrev); if (index) { return index; } } // OSIS. See if shortening the bookname helps. // The shortest abbreviation is 2 characters long, // and the longest 6. So we've to try them all. // Length: 2 if (rawbook.length() >= 2) { ustring abbrev = rawbook.substr(0, 2); index = books_osis_to_id(abbrev); if (index) { return index; } } // Length: 3 if (rawbook.length() >= 3) { ustring abbrev = rawbook.substr(0, 3); index = books_osis_to_id(abbrev); if (index) { return index; } } // Length: 4 if (rawbook.length() >= 4) { ustring abbrev = rawbook.substr(0, 4); index = books_osis_to_id(abbrev); if (index) { return index; } } // Length: 5 if (rawbook.length() >= 5) { ustring abbrev = rawbook.substr(0, 5); index = books_osis_to_id(abbrev); if (index) { return index; } } // Length: 6 if (rawbook.length() >= 6) { ustring abbrev = rawbook.substr(0, 6); index = books_osis_to_id(abbrev); if (index) { return index; } } // The book has not yet been found. // Not found yet, check on names like "1Corinthians". if (rawbook.length() >= 1) { ustring s = rawbook.substr(0, 1); ustring s2 = rawbook; if (s == "1" || s == "2" || s == "3") s2.insert(1, " "); index = books_english_to_id(s2); if (index) { return index; } } // Not yet found. // Go through the language of the project, and see if the book is among the // booknames or abbreviations. { extern Settings *settings; ProjectConfiguration *projectconfig = settings->projectconfig(settings->genconfig.project_get()); index = books_name_to_id(projectconfig->language_get(), rawbook); if (index) return index; index = books_abbreviation_to_id(projectconfig->language_get(), rawbook); if (index) return index; index = books_abbreviation_to_id_loose(projectconfig->language_get(), rawbook); if (index) return index; } // Still not found. // Go through all available languages, and see if the book is among the // names or abbreviations of the book. { extern BookLocalizations *booklocalizations; vector < ustring > languages = booklocalizations->localizations_get(); for (unsigned int i = 0; i < languages.size(); i++) { index = books_name_to_id(languages[i], rawbook); if (index) return index; index = books_abbreviation_to_id(languages[i], rawbook); if (index) return index; index = books_abbreviation_to_id_loose(languages[i], rawbook); if (index) return index; } } return 0; } unsigned int book_find_valid(const ustring & rawbook) // Returns the id of the raw book. Returns 0 if no book was found. { // It uses a mechanism to speed up discovery of the book. // We keep a list of raw books in memory, // and a list of the ids that have been assigned to those raw books. // If the same raw book is passed again, we just return the previously // discovered id. static vector < unsigned int >assigned_ids; static vector < ustring > raw_books; for (unsigned int i = 0; i < raw_books.size(); i++) { if (rawbook == raw_books[i]) { return assigned_ids[i]; } } int id = book_find_valid_internal(rawbook); assigned_ids.push_back(id); raw_books.push_back(rawbook); return id; } unsigned int reference_to_numerical_equivalent(const ustring & book, const ustring & chapter, const ustring & verse) /* Produces the numerical equivalent of a reference. Supports half verses, like 10a, and 11b. Genesis 1:1 becomes 1001002 Genesis 1:2 becomes 1001004 Exodus 2:1 becomes 2001002 Etc. */ { unsigned int i; i = books_english_to_id(book) * 1000000; i = i + (convert_to_int(chapter) * 1000); vector < int >verses = verses_encode(verse); i = i + verses[0]; return i; } unsigned int reference_to_numerical_equivalent(const Reference & reference) /* Produces the numerical equivalent of a reference. Supports half verses, like 10a, and 11b. Genesis 1:1 becomes 1001002 Genesis 1:2 becomes 1001004 Exodus 2:1 becomes 2001002 Etc. */ { unsigned int i; i = reference.book * 1000000; i = i + (reference.chapter * 1000); vector < int >verses = verses_encode(reference.verse); i = i + verses[0]; return i; } ustring book_chapter_verse_to_reference(const ustring & book, int chapter, const ustring & verse) /* Changes a bookname, with a chapter number, and a verse number, to a full references, e.g. "Genesis 1:1a-4". */ { ustring reference(book); reference.append(" "); reference.append(convert_to_string(chapter)); reference.append(":"); reference.append(verse); return reference; } bool looks_like_verse(const ustring & text) // This checks the text given and sees whether it looks like a verse. If so // it returns true. { // If it is a number only, it looks like a verse. if (number_in_string(text) == text) return true; // If it contains a hyphen (-) or a comma (,) it is a verse number. if (text.find_first_of(",-") != string::npos) return true; // If it contains a digit followed by either an "a" or a "b", it's a verse. // Note everything is capitalized, so we check for "A" or "B". if (unix_fnmatch((char *)"*[0-9][A,B]*", text)) return true; return false; } void verses_encode_internal(const ustring & verse, vector < int >&expanded_verses) { int expanded_verse; expanded_verse = 2 * (convert_to_int(verse)); if (verse.find_first_of("aA") != string::npos) { expanded_verses.push_back(expanded_verse); } else if (verse.find_first_of("bB") != string::npos) { expanded_verses.push_back(++expanded_verse); } else { expanded_verses.push_back(expanded_verse); expanded_verses.push_back(++expanded_verse); } } vector < int >verses_encode(const ustring & verse) /* This encodes a verse into a number of integers. As we may have ranges of verses, like 1b-5, or 1b,2, we handle these ranges or sequences by converting them to a series of integers values, each integer value representing half of a verse. So verse 0 becomes then "0, 1", and verse 1 will be "2, 3". Verse 1a will be "2". */ { // Storage. vector < int >expanded_verses; // Work on a copy of the verse; ustring vs = verse; // If there is a range, take the beginning and the end and fill up in between. if (vs.find("-") != string::npos) { size_t position; position = vs.find("-"); ustring start_range, end_range; start_range = vs.substr(0, position); vs.erase(0, ++position); end_range = vs; int start_expanded_verse = 2 * convert_to_int(number_in_string(start_range)); if (start_range.find_first_of("bB") != string::npos) start_expanded_verse++; int end_expanded_verse = 2 * convert_to_int(number_in_string(end_range)); if (end_range.find_first_of("aA") == string::npos) end_expanded_verse++; // Sometimes people give start higher than the end, so swap them here. { int min = MIN(start_expanded_verse, end_expanded_verse); int max = MAX(start_expanded_verse, end_expanded_verse); start_expanded_verse = min; end_expanded_verse = max; } for (int i2 = start_expanded_verse; i2 <= end_expanded_verse; i2++) { expanded_verses.push_back(i2); } } // If there is a sequence, take each verse in the sequence, and store it. else if (vs.find(",") != string::npos) { int iterations = 0; do { // In case of an unusual range formation, do not hang, but give message. iterations++; if (iterations > 50) { break; } size_t position = vs.find(","); ustring localverse; if (position == string::npos) { localverse = vs; vs.clear(); } else { localverse = vs.substr(0, position); vs.erase(0, ++position); } verses_encode_internal(localverse, expanded_verses); } while (!vs.empty()); } // No range and no sequence: a "normal" verse. else { verses_encode_internal(vs, expanded_verses); } // Return result. return expanded_verses; } bool chapter_span_discover(const ustring & reference, ustring & chapter1, ustring & verse1, ustring & chapter2, ustring & verse2) // Discover whether the reference spans the chapter boundary. // E.g. Luke 1:3-2.5 { // Work on a copy of the reference. ustring ref_in(reference); // Change colons to spaced dots, space hyphens. replace_text(ref_in, ".", " . "); replace_text(ref_in, ":", " . "); replace_text(ref_in, "-", " - "); // Remove double spaces. replace_text(ref_in, " ", " "); replace_text(ref_in, " ", " "); replace_text(ref_in, " ", " "); // Parse it into the separate words. Parse parse(ref_in, false); // Is the chapter spanning signature (two dots, one hyphen) in it? int hyphencount = 0; int dotcount = 0; for (unsigned int i = 0; i < parse.words.size(); i++) { if (parse.words[i] == "-") hyphencount++; if (parse.words[i] == ".") dotcount++; } if (hyphencount == 0) return false; if (dotcount < 2) return false; // There might be chapter spanning at this point. // Are the dots and hyphens in the right order? Should be: dot, hyphen, dot. int firstdotlocation = -1; int seconddotlocation = -1; int hyphenlocation = -1; for (unsigned int i = 0; i < parse.words.size(); i++) { if (parse.words[i] == ".") { if (firstdotlocation == -1) { firstdotlocation = i; } else { seconddotlocation = i; } } if (parse.words[i] == "-") { hyphenlocation = i; } } if (firstdotlocation > hyphenlocation) return false; if (hyphenlocation > seconddotlocation) return false; // We'll take it that there is chapter spanning at this point. // Let's extract the chapter / verse boundaries. if (firstdotlocation > 0) chapter1 = parse.words[firstdotlocation - 1]; verse1 = parse.words[hyphenlocation - 1]; chapter2 = parse.words[seconddotlocation - 1]; if ((unsigned int)(seconddotlocation + 1) < parse.words.size()) verse2 = parse.words[seconddotlocation + 1]; // Do we have all information? if (chapter1.empty()) return false; if (verse1.empty()) return false; if (chapter2.empty()) return false; if (verse2.empty()) return false; // Right then, it spans the chapter boundary. return true; } vector < unsigned int >verse_range_sequence(const ustring & verse) // Returns the verse(s) that are in variable "verse". // It handles a single verse, a range of verses, or a sequence of verses. // Examples: // 10 // 10-12 // 10,11 // Note: Do not improve this function anymore, but instead use verse_range_sequence_v2 { // Result. vector < unsigned int >verses; // Work on a copy. ustring vs(verse); // If there is a range, take the beginning and the end and fill up in between. if (vs.find("-") != string::npos) { size_t position; position = vs.find("-"); ustring start_range, end_range; start_range = vs.substr(0, position); vs.erase(0, ++position); end_range = vs; unsigned int start_verse_i = convert_to_int(number_in_string(start_range)); unsigned int end_verse_i = convert_to_int(number_in_string(end_range)); for (unsigned int i = start_verse_i; i <= end_verse_i; i++) { verses.push_back(i); } } // Else if there is a sequence, take each verse in the sequence, and store it. else if (vs.find(",") != string::npos) { int iterations = 0; do { // In case of an unusual range formation, do not hang, but give message. iterations++; if (iterations > 50) { break; } size_t position = vs.find(","); ustring verse; if (position == string::npos) { verse = vs; vs.clear(); } else { verse = vs.substr(0, position); vs.erase(0, ++position); } verses.push_back(convert_to_int(verse)); } while (!vs.empty()); } // No range and no sequence: a "normal" verse. else { verses.push_back(convert_to_int(vs)); } // Return the verses we got. return verses; } vector < ustring > verse_range_sequence_v2(ustring verse) // Returns the verse(s) that are in variable "verse". // It handles a single verse, a range of verses, or a sequence of verses. // Examples: // 10 // 10-12b // 10,11a // 10,12 { // Result. vector < ustring > verses; // If there is a range, take the beginning and the end and fill up in between. if (verse.find("-") != string::npos) { size_t position; position = verse.find("-"); ustring start_range, end_range; start_range = verse.substr(0, position); verse.erase(0, ++position); end_range = verse; unsigned int start_verse_i = convert_to_int(number_in_string(start_range)); unsigned int end_verse_i = convert_to_int(number_in_string(end_range)); for (unsigned int i = start_verse_i; i <= end_verse_i; i++) { if (i == start_verse_i) verses.push_back(start_range); else if (i == end_verse_i) verses.push_back(end_range); else verses.push_back(convert_to_string(i)); } } // Else if there is a sequence, take each verse in the sequence, and store it. else if (verse.find(",") != string::npos) { int iterations = 0; do { // In case of an unusual range formation, do not hang, but give message. iterations++; if (iterations > 50) { break; } size_t position = verse.find(","); ustring vs; if (position == string::npos) { vs = verse; verse.clear(); } else { vs = verse.substr(0, position); verse.erase(0, ++position); } verses.push_back(vs); } while (!verse.empty()); } // No range and no sequence: a "normal" verse. else { verses.push_back(verse); } // Return the verses we got. return verses; } bibledit-gtk-4.9/src/bible.h000664 000766 000024 00000004017 12221507136 016073 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_BIBLE_H #define INCLUDED_BIBLE_H #include "libraries.h" #include "reference.h" void sort_references (vector &references); void decode_reference (const ustring & reference, ustring & book, ustring & chapter, ustring & verse); bool reference_discover (unsigned int oldbook, unsigned int oldchapter, const ustring& oldverse, const ustring& reference, unsigned int& newbook, unsigned int& newchapter, ustring& newverse, bool consult_memory = false); unsigned int book_find_valid (const ustring & rawbook); unsigned int reference_to_numerical_equivalent (const ustring& book, const ustring& chapter, const ustring& verse); unsigned int reference_to_numerical_equivalent (const Reference& reference); ustring book_chapter_verse_to_reference (const ustring& book, int chapter, const ustring& verse); bool looks_like_verse (const ustring& text); vector verses_encode (const ustring& verse); bool chapter_span_discover (const ustring& reference, ustring& chapter1, ustring& verse1, ustring& chapter2, ustring& verse2); vector verse_range_sequence (const ustring& verse); vector verse_range_sequence_v2 (ustring verse); #endif bibledit-gtk-4.9/src/bibledit-rdwrt.cpp000644 000766 000024 00000004213 12455172335 020273 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "directories.h" #include "gwrappers.h" #include "settings.h" #include "localizedbooks.h" #include "versifications.h" #include "mappings.h" #include "styles.h" #include "urltransport.h" #include "vcs.h" #include "readwrite.h" #include "books.h" // TEMP - MAP directories *Directories; Settings *settings; BookLocalizations *booklocalizations; Versifications *versifications; Mappings *mappings; Styles *styles; GtkAccelGroup *accelerator_group; URLTransport * urltransport; VCS *vcs; int main(int argc, char *argv[]) { // g_type_init has been deprecated since version 2.36. // The type system is now initialised automatically. // g_type_init(); // Settings object. Settings mysettings(true); settings = &mysettings; // Create a new directories 'factory' and initialize it with argv[0] Directories = new directories(argv[0]); books_init(); // TEMP - MAP // Bibledit can read from or write to Bible data. // Syntax: bibledit-rdwrt -r|-w ... bool readdata = false; bool writedata = false; if (argc > 2) { readdata = (strcmp(argv[1], "-r") == 0); writedata = (strcmp(argv[1], "-w") == 0); } if (readdata ^ writedata) { // Do the reading or the writing. read_write_data (argc, argv, readdata, writedata); } else { // Nothing to do. gw_message ("Nothing was done"); } // Quit. return 0; } bibledit-gtk-4.9/src/bibledit.cpp000644 000766 000024 00000015204 12455172335 017135 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "mainwindow.h" #include "directories.h" #include "utilities.h" #include "gwrappers.h" #include "dialogsystemlog.h" #include "shell.h" #include "maintenance.h" #include "gtkwrappers.h" #include "upgrade.h" #include "unixwrappers.h" #include "settings.h" #include "constants.h" #include "localizedbooks.h" #include "versifications.h" #include "mappings.h" #include "ot-quotations.h" #include "styles.h" #include #include "startup.h" #include #include "urltransport.h" #include "runtime.h" #include "vcs.h" #include "books.h" // TEMP - MAP #include directories *Directories; Settings *settings; BookLocalizations *booklocalizations; Versifications *versifications; Mappings *mappings; Styles *styles; GtkAccelGroup *accelerator_group; URLTransport * urltransport; VCS *vcs; int main(int argc, char *argv[]) { // Initialize g threads. // g_thread_init has been deprecated since version 2.32 and should not be used in newly-written code. // This function is no longer necessary. // The GLib threading system is automatically initialized at the start of your program. // Initialize g types. // g_type_init has been deprecated since version 2.36. // The type system is now initialised automatically. // g_type_init(); // Initialize GTK gtk_init(&argc, &argv); // Check whether it is fine to start the program. // If not, quit the program normally. if (!check_bibledit_startup_okay(argc, argv)) { return 0; } // Create a new directories 'factory' and initialize it with argv[0] Directories = new directories(argv[0]); books_init(); // TEMP - MAP // Check on required directory structure. Directories->check_structure(); // Move logfile for shutdown program. move_log_file (lftShutdown); // Redirect stdout and stderr to file. { move_log_file (lftMain); // When a file is opened it is always allocated the lowest available file // descriptor. Therefore the following commands cause stdout to be // redirected to the logfile. close(1); creat (log_file_name (lftMain, false).c_str(), 0666); // The dup() routine makes a duplicate file descriptor for an already opened // file using the first available file descriptor. Therefore the following // commands cause stderr to be redirected to the file stdout writes to. close(2); if (dup(1)); } // Check on runtime requirements. runtime_initialize (); // Initialize the xml library. xmlInitParser(); // Initialize the http libraries. xmlNanoHTTPInit(); // Maintenance system. maintenance_initialize (); // Settings object. settings = new Settings(true); // LocalizedBooks object. booklocalizations = new BookLocalizations(0); // Versifications object. versifications = new Versifications(0); // Verse mappings object. mappings = new Mappings(0); // Styles object. styles = new Styles(0); // Version control object. vcs = new VCS(0); // URLTransport object. urltransport = new URLTransport(0); /* We used a trick to get Bibledit to operate as a true activity on OLPC. The problem is that any regular X11 program that is started, eg by os.system in an activity.py, appears as an extra icon in the "wheel" on the home screen, and sugar doesn't see it as being connected in any way with the original activity that started it. It will also have a generic icon. So I decided to use GTK's cross-process embedding (GtkSocket/GtkPlug) to make the Bibledit window be a pane inside the Python activity's window. This uses the XEmbed protocol behind the scenes, and requires a window ID to be passed to Bibledit. You can then quit Bibledit from the File menu, and the activity goes away, or you can Stop the activity and Bibledit goes away. I changed Bibledit to accept a --xembed argument with a window ID. If that argument is present, it then creates a plug for its main window instead of a normal top-level window. */ // Accelerators. accelerator_group = gtk_accel_group_new(); // Window. unsigned long xembed = 0; if (argc > 2 && strcmp(argv[1], "--xembed") == 0) { xembed = strtoul(argv[2], &argv[2], 0); if (*argv[2] != 0) { fprintf(stderr, "Bad xembed value: %s\n", argv[2]); return 0; } } // Upgrade data. upgrade(); // Window icon fallback. gtk_window_set_default_icon_from_file(gw_build_filename(Directories->get_package_data(), "bibledit.xpm").c_str(), NULL); // Start the gui. MainWindow *mainwindow = new MainWindow(xembed, accelerator_group, settings, urltransport, vcs); gtk_main(); delete mainwindow; // Destroy the accelerator group. g_object_unref(G_OBJECT(accelerator_group)); // Clean up XML library. xmlCleanupParser(); // Clean up http libraries. xmlNanoHTTPCleanup(); //------------------------------------------------------- // Destroy global objects. For now, this order is // important. It shouldn't be, but it is. MAP 1/9/2015. // TO DO: Have ProjectConfiguration and Settings write out // their status using a method we call, NOT relying on // a destructor to do the work of saving important state. //------------------------------------------------------- delete urltransport; delete vcs; delete styles; delete mappings; delete versifications; delete booklocalizations; delete settings; delete Directories; // must be last, because above rely on it // Quit. return 0; } /* Gtk3 http://developer.gnome.org/gtk3/stable/gtk-migrating-2-to-3.html http://developer.gnome.org/gtk/2.24/ Do not include individual headers: Done. Do not use deprecated symbols: Done. Use accessor functions instead of direct access: Done. Replace GDK_ with GDK_KEY_: Done. Use GIO for launching applications: Done. Use cairo for drawing: Done. Gtk3 is available on Windows. Switching to Gtk3 needs the webkitgtk for gtk3 also. pkg-config gtk+-3.0 --modversion */ bibledit-gtk-4.9/src/biblenotes.cpp000664 000766 000024 00000010160 12221507130 017465 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "biblenotes.h" #include "utilities.h" #include "usfmtools.h" #include "tiny_utilities.h" ustring biblenotes_get_note_marker(NoteType notetype) // Gets the opening and closing marker, e.g. "f". { ustring marker; switch (notetype) { case indtFootnote:{ marker = "f"; break; } case indtEndnote:{ marker = "fe"; break; } case indtCrossreference:{ marker = "x"; break; } } return marker; } NoteType biblenotes_get_note_type(const ustring & text) // Gets the note type, e.g. indtFootnote. { ustring marker(text); marker = trim(marker); if (!marker.empty()) { if (marker.substr(0, 1) == "\\") marker.erase(0, 1); replace_text(marker, "*", ""); if (marker == biblenotes_get_note_marker(indtEndnote)) return indtEndnote; if (marker == biblenotes_get_note_marker(indtCrossreference)) return indtCrossreference; } return indtFootnote; } ustring biblenotes_get_note_caller(NumberingType numberingtype, char *character) // Gets the caller, e.g. "+". { ustring caller; switch (numberingtype) { case ntAutomatic:{ caller = "+"; break; } case ntNone:{ caller = "-"; break; } case ntCharacter:{ caller = character; break; } } return caller; } void biblenotes_get_note_numbering(const ustring & caller, NumberingType & numberingtype, ustring & character) // Given the "caller", it returns: // - the "NumberingType", and // - any possible character used in custom numbering. { if (caller == "+") numberingtype = ntAutomatic; else if (caller == "-") numberingtype = ntNone; else { numberingtype = ntCharacter; character = caller; } } void biblenotes_extract_note_opener_caller_closer(const ustring & text, ustring & opener, ustring & caller, ustring & closer) // Takes the full note text, e.g.: // \f + \fr 1.1: \fk zokuzidla: \fl Heb. \fq ezinkulu.\f* // Returns the main body of it, e.g.: // \fr 1.1: \fk zokuzidla: \fl Heb. \fq ezinkulu. { Parse parse(text, false); if (parse.words.size() < 3) return; opener = parse.words[0]; caller = parse.words[1]; closer = text; size_t pos = closer.find_last_of("\\"); if (pos != string::npos) closer.erase(0, pos); } ustring biblenotes_extract_note_body(ustring text) // Takes the full note text, e.g.: // \f + \fr 1.1: \fk zokuzidla: \fl Heb. \fq ezinkulu.\f* // Returns the main body of it, e.g.: // \fr 1.1: \fk zokuzidla: \fl Heb. \fq ezinkulu. { // Remove the opener and the caller, e.g. the \f and the +. for (unsigned int i = 0; i < 2; i++) { size_t pos = text.find(" "); if (pos != string::npos) text.erase(0, ++pos); } // Remove the closer, e.g. \f* size_t pos = text.find_last_of("\\"); if (pos != string::npos) text.erase(pos, 10); // Return result. return text; } void biblenotes_switch_markers(ustring & bodytext, gchar * from_marker, gchar * to_marker) // Changes "bodytext", switching from "from_marker" to "to_marker". // It changes both opening and closing markers. { ustring oldmarker, newmarker; oldmarker = usfm_get_full_opening_marker(from_marker); newmarker = usfm_get_full_opening_marker(to_marker); replace_text(bodytext, oldmarker, newmarker); oldmarker = usfm_get_full_closing_marker(from_marker); newmarker = usfm_get_full_closing_marker(to_marker); replace_text(bodytext, oldmarker, newmarker); } bibledit-gtk-4.9/src/biblenotes.h000664 000766 000024 00000002765 12221507140 017147 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_BIBLENOTES_H #define INCLUDED_BIBLENOTES_H #include "libraries.h" #include "types.h" ustring biblenotes_get_note_marker (NoteType notetype); NoteType biblenotes_get_note_type (const ustring& text); ustring biblenotes_get_note_caller (NumberingType numberingtype, char * character); void biblenotes_get_note_numbering (const ustring& caller, NumberingType& numberingtype, ustring& character); void biblenotes_extract_note_opener_caller_closer (const ustring& text, ustring& opener, ustring& caller, ustring& closer); ustring biblenotes_extract_note_body (ustring text); void biblenotes_switch_markers (ustring& bodytext, gchar * from_marker, gchar * to_marker); #endif bibledit-gtk-4.9/src/bibletime.cpp000664 000766 000024 00000002224 12221507141 017277 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "utilities.h" #include #include "bibletime.h" #include "bible.h" #include "shell.h" #include "books.h" #include "directories.h" #include "sqlite_reader.h" #include #include "tiny_utilities.h" #include "settings.h" /* To checkout bibletime: svn co https://bibletime.svn.sourceforge.net/svnroot/bibletime/trunk/bibletime bibletime */ bibledit-gtk-4.9/src/bibletime.h000664 000766 000024 00000001677 12221507147 016765 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_BIBLETIME_H #define INCLUDED_BIBLETIME_H #include "libraries.h" #include #include #include "reference.h" #include "gwrappers.h" #endif bibledit-gtk-4.9/src/bibleworks.cpp000644 000766 000024 00000054421 12460404402 017513 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "bibleworks.h" #include "utilities.h" #include "clean.h" #include "usfmtools.h" #include "bible.h" #include "books.h" #include "gwrappers.h" #include "directories.h" #include "unixwrappers.h" #include "tiny_utilities.h" #include "dialogradiobutton.h" #include "localizedbooks.h" #include "categorize.h" #include "projectutils.h" #include "progresswindow.h" #include "gtkwrappers.h" #include "shell.h" #include ustring bibleworks_exported_file_get_bookname(const ustring & filename) // Retrieves the bookname from a file exported by BibleWorks. Though there can // be several books in such a file, this functions retrieves only the name // of the first book. { #define MYMAX 10 ReadText rt(filename, true, false); unsigned int maximum = MYMAX; maximum = CLAMP(maximum, 0, rt.lines.size()); unsigned int goodline = 0; ustring bookname; try { for (unsigned int i = 0; i < maximum; i++) { de_byte_order_mark (rt.lines[i]); ustring bookabbreviation = rt.lines[i].substr(0, 3); unsigned int id = books_bibleworks_to_id(bookabbreviation); if (id) { goodline++; bookname = books_id_to_english(id); } } } catch(exception & ex) { gw_critical(ex.what()); } if (goodline != MYMAX) bookname.clear(); return bookname; #undef MYMAX } bool bibleworks_clipboard_file_okay (const ustring& filename) // Looks whether a file as copied from BibleWorks through the clipboard looks okay. { #define MYMAX 10 ReadText rt(filename, true, false); unsigned int maximum = MYMAX; maximum = CLAMP(maximum, 0, rt.lines.size()); for (unsigned int i = 0; i < maximum; i++) { if (bibleworks_clipboard_file_line_get_extract_book_id (rt.lines[i]) == 0) return false; } return true; #undef MYMAX } unsigned int bibleworks_clipboard_file_line_get_extract_book_id (ustring& line) // Gets the id of a book from a line of a BibleWorks database copied through the clipboard. // The amount of text that make up the book is removed from the line. // Normally a line of text would look like this: // SCR Matthew 1:1 Βίβλος γενέσεως Ἰησοῦ Χριστοῦ, υἱοῦ Δαβὶδ, υἱοῦ Ἀβραάμ. // or: // SCR 1 Corinthians 1:1 Παῦλος κλητὸς ἀπόστολος Ἰησοῦ Χριστοῦ διὰ θελήματος Θεοῦ, καὶ Σωσθένης ὁ ἀδελφός, { // Remove whitespace from the start of the line. while (line.substr (0, 1) == " ") line.erase (0, 1); // Remove the module abbreviation. size_t pos = line.find (" "); if (pos == string::npos) return 0; line.erase (0, ++pos); // Get the name of the book. vector ids = books_type_to_ids (btUnknown); for (unsigned int i = 0; i < ids.size(); i++) { ustring english_name = books_id_to_english (ids[i]); if (line.find (english_name) == 0) { line.erase (0, english_name.length()); return ids[i]; } } return 0; } void import_check_bibleworks_file (vector & filenames, vector & bookids, const ustring& bible, vector & messages) // Checks the file exported from BibleWorks and meant to be imported as a Bible. { // Check whether there's only one file selected. if (messages.empty()) { if (filenames.size() > 1) { messages.push_back ("You have selected more than one file"); } } // Check that the BibleWorks file is a valid one. if (messages.empty()) { ustring english_name = bibleworks_exported_file_get_bookname(filenames[0]); unsigned int id = books_english_to_id (english_name); if (id == 0) { messages.push_back ("The file cannot be recognized as coming from BibleWorks"); } } // Check that the Bible to import the file into is empty. if (messages.empty()) { vector books = project_get_books (bible); if (!books.empty()) { messages.push_back ("You try to import data into a Bible that is not empty"); } } } void import_bibleworks_text_file (const ustring& file, const ustring& bible, vector & messages) // Imports a bibleworks text file. { // Read the file. ReadText rt (file, true, false); // If there's nothing to import, bail out. if (rt.lines.empty()) { messages.push_back ("The file is empty"); } // Divide the input into separate bits for each book. vector bookdata; if (messages.empty()) { try { ustring previousbook; vector < ustring > booklines; de_byte_order_mark (rt.lines[0]); for (unsigned int i = 0; i < rt.lines.size(); i++) { ustring currentbook = rt.lines[i].substr(0, 3); if (i == 0) { previousbook = currentbook; } if (currentbook != previousbook) { bookdata.push_back (booklines); booklines.clear(); previousbook = currentbook; } booklines.push_back(rt.lines[i]); } bookdata.push_back (booklines); } catch(exception & ex) { messages.push_back(ex.what()); } } // Import each book. if (messages.empty ()) { ProgressWindow progresswindow ("Importing", false); progresswindow.set_iterate (0, 1, bookdata.size()); for (unsigned int i = 0; i < bookdata.size(); i++) { progresswindow.iterate (); try { // Input and output data. vector rawlines = bookdata[i]; vector usfmlines; // Get the name of the book. unsigned int book_id = books_bibleworks_to_id(rawlines[0].substr(0, 3)); if (book_id == 0) { messages.push_back ("Unknown book: " + rawlines[0]); return; } // Store USFM id. ustring usfmid = books_id_to_paratext (book_id); usfmlines.push_back("\\id " + usfmid); // Convert the BibleWorks lines to USFM code. ustring previouschapter = "0"; for (unsigned int i = 0; i < rawlines.size(); i++) { // Convert chapter information. ustring line = rawlines[i]; line.erase(0, 4); ustring currentchapter = number_in_string(line); line.erase(0, currentchapter.length() + 1); if (currentchapter != previouschapter) { usfmlines.push_back("\\c " + currentchapter); usfmlines.push_back("\\p"); previouschapter = currentchapter; } // Convert verse data. usfmlines.push_back("\\v " + line); } // Store into the Bible. CategorizeChapterVerse ccv(usfmlines); project_store_book(bible, book_id, ccv); } catch(exception & ex) { messages.push_back(ex.what()); } } } } void check_bibleworks_source_language (vector & filenames, vector & messages) { // Check that two files were selected. if (filenames.size() != 2) { messages.push_back ("Please select two files for this import"); return; } // Check that both files are valid. for (unsigned int i = 0; i < 2; i++) { if (!bibleworks_clipboard_file_okay (filenames[i])) { messages.push_back ("File " + filenames[i] + " cannot be recognized as a textfile coming from BibleWorks"); } } // If the second file does not have the "@" character, it is not the morphology, then swap the filenames. { ReadText rt (filenames[1]); if (!rt.lines.empty()) { if (rt.lines[0].find ("@") == string::npos) { ustring filename = filenames[0]; filenames[0] = filenames[1]; filenames[1] = filename; } } } // Check that the first file has the text. { ReadText rt (filenames[0]); if (!rt.lines.empty()) { if (rt.lines[0].find ("@") != string::npos) { messages.push_back ("File " + filenames[0] + " should have the normal text"); } } } // Check that the second file has the morphology. { ReadText rt (filenames[1]); if (!rt.lines.empty()) { if (rt.lines[0].find ("@") == string::npos) { messages.push_back ("File " + filenames[1] + " should have the morphology"); } } } } typedef struct { const char *input; const char *output; } bibleworks_greek_record; // A table of double ascii characters and their Greek UTF8 equivalents. bibleworks_greek_record bibleworks_greek_table_2[] = { { "i,", "ί" }, { "e,", "έ" }, { "VI", "Ἰ" }, { "u/", "ῦ" }, { "i`", "ἱ" }, { "i.", "ὶ" }, { "VA", "Ἀ" }, { "a,", "ά" }, { "a.", "ὰ" }, { "o.", "ὸ" }, { "e.", "ὲ" }, }; // A table of single ascii characters and their Greek UTF8 equivalents. bibleworks_greek_record bibleworks_greek_table_1[] = { { "B", "Β" }, { "b", "β" }, { "l", "λ" }, { "o", "ο" }, { "j", "ς" }, { "g", "γ" }, { "e", "ε" }, { "n", "ν" }, { "s", "σ" }, { "w", "ω" }, { "h", "η" }, { "C", "Χ" }, { "r", "ρ" }, { "t", "τ" }, { "u", "υ" }, { "D", "Δ" }, { "a", "α" }, { "d", "δ" }, { "(", "," }, { "m", "μ" }, { "Å", "." }, { " ", " " }, { "i", "ι" }, { "v", "γ" }, { "k", "κ" }, { "\\", "·" }, }; ustring convert_bibleworks_greek (ustring line) { ustring outputline; while (!line.empty()) { ustring character; bool converted = false; // Convert the combined characters. character = line.substr (0, 2); for (unsigned int i = 0; i < sizeof(bibleworks_greek_table_2) / sizeof(*bibleworks_greek_table_2); i++) { if (!converted) { if (character == bibleworks_greek_table_2[i].input) { outputline.append (bibleworks_greek_table_2[i].output); line.erase (0, 2); converted = true; } } } // Convert the single character. if (!converted) { character = line.substr (0, 1); for (unsigned int i = 0; i < sizeof(bibleworks_greek_table_1) / sizeof(*bibleworks_greek_table_1); i++) { if (!converted) { if (character == bibleworks_greek_table_1[i].input) { outputline.append (bibleworks_greek_table_1[i].output); line.erase (0, 1); converted = true; } } } } // Message if the conversion didn't work out. if (!converted) { gw_critical ("Output so far: " + outputline + " - unhandled character: " + character + " - input stream: " + line); outputline.append (character); line.erase (0, 1); } } return outputline; } void bibleworks_define_parsing_case (ustring& parsing, ustring& definition) // Parse the case. { ustring case_code = parsing.substr (0, 1); parsing.erase (0, 1); if (case_code == "n") { definition.append (" nominative"); } if (case_code == "g") { definition.append (" genitive"); } if (case_code == "d") { definition.append (" dative"); } if (case_code == "a") { definition.append (" accusative"); } if (case_code == "v") { definition.append (" vocative"); } } void bibleworks_define_parsing_gender (ustring& parsing, ustring& definition) // Parse the gender. { ustring gender_code = parsing.substr (0, 1); parsing.erase (0, 1); if (gender_code == "m") { definition.append (" masculine"); } if (gender_code == "f") { definition.append (" feminine"); } if (gender_code == "n") { definition.append (" neuter"); } } void bibleworks_define_parsing_pronoun (ustring& parsing, ustring& definition) // Parse the extra bits of the pronoun. { ustring code = parsing.substr (0, 1); parsing.erase (0, 1); if (code == "r") { definition.append (" relative"); } if (code == "e") { definition.append (" reciprocal"); } if (code == "d") { definition.append (" demonstrative"); } if (code == "c") { definition.append (" correlative"); } if (code == "q") { definition.append (" interrogative"); } if (code == "i") { definition.append (" indefinite"); } if (code == "o") { definition.append (" correlative/interrogative"); } if (code == "x") { definition.append (" reflexive"); } if (code == "s") { definition.append (" possessive"); } if (code == "p") { definition.append (" personal"); } } void bibleworks_define_parsing_indeclinable_form_suffix (ustring& parsing, ustring& definition) // Parse the suffix of the indeclinable form. { if (parsing == "a") definition.append (" Aramaic word"); if (parsing == "h") definition.append (" Hebrew word"); if (parsing == "p") definition.append (" indeclinable noun"); if (parsing == "n") definition.append (" indeclinable numeral"); if (parsing == "l") definition.append (" indeclinable letter"); if (parsing == "o") definition.append (" indeclinable other"); } void bibleworks_define_parsing_conjunction_suffix (ustring& parsing, ustring& definition) // Parse the suffix of the conjunction. { if (parsing == "c") definition.append (" contracted"); if (parsing == "n") definition.append (" not contracted"); } void bibleworks_define_parsing_adjective_suffix (ustring& parsing, ustring& definition) // Parse the suffix of the adjective. { if (parsing == "c") definition.append (" comparative"); if (parsing == "s") definition.append (" superlative"); if (parsing == "n") definition.append (" no degree"); } void bibleworks_define_parsing_particle_suffix (ustring& parsing, ustring& definition) // Parse the suffix of the particle. { if (parsing == "i") definition.append (" interrogative"); if (parsing == "n") definition.append (" negative"); if (parsing == "o") definition.append (" other"); } void bibleworks_define_parsing_adverb_suffix (ustring& parsing, ustring& definition) // Parse the suffix of the adverb. { if (parsing == "c") definition.append (" comparative"); if (parsing == "s") definition.append (" superlative"); if (parsing == "i") definition.append (" interrogative"); if (parsing == "n") definition.append (" normal"); } void bibleworks_define_parsing_mood (ustring& parsing, ustring& definition) // Parse the mood of verbs. { ustring mood = parsing.substr (0, 1); parsing.erase (0, 1); if (mood == "i") definition.append (" indicative"); if (mood == "s") definition.append (" subjunctive"); if (mood == "o") definition.append (" optative"); if (mood == "d") definition.append (" imperative"); if (mood == "n") definition.append (" infinitive"); if (mood == "p") definition.append (" participle"); } void bibleworks_define_parsing_tense (ustring& parsing, ustring& definition) // Parse the tense of verbs. { ustring tense = parsing.substr (0, 1); parsing.erase (0, 1); if (tense == "p") definition.append (" present"); if (tense == "i") definition.append (" imperfect"); if (tense == "f") definition.append (" future"); if (tense == "a") definition.append (" aorist"); if (tense == "x") definition.append (" perfect"); if (tense == "y") definition.append (" pluperfect"); } void bibleworks_define_parsing_voice (ustring& parsing, ustring& definition) // Parse the voice of verbs. { ustring voice = parsing.substr (0, 1); parsing.erase (0, 1); if (voice == "a") definition.append (" active"); if (voice == "m") definition.append (" middle"); if (voice == "p") definition.append (" passive"); if (voice == "e") definition.append (" middle or passive"); if (voice == "d") definition.append (" middle deponent"); if (voice == "o") definition.append (" passive deponent"); if (voice == "n") definition.append (" middle or passive deponent"); if (voice == "q") definition.append (" impersonal active"); if (voice == "x") definition.append (" no voice stated"); } void bibleworks_define_parsing_person (ustring& parsing, ustring& definition) // This looks in the "parsing" whether the person is given. // If so, it adds the description to the "definition" and removes the relevant code from the "parsing". { ustring person = parsing.substr (0, 1); bool person_found = true; if (person == "1") { definition.append (" first person"); } else if (person == "2") { definition.append (" second person"); } else if (person == "3") { definition.append (" third person"); } else { person_found = false; } if (person_found) { parsing.erase (0, 1); } } void bibleworks_define_parsing_number (ustring& parsing, ustring& definition) // Parse the number. { ustring number = parsing.substr (0, 1); bool remove_code = true; if (number == "s") { definition.append (" singular"); } else if (number == "p") { definition.append (" plural"); } else { remove_code = false; } if (remove_code) { parsing.erase (0, 1); } } bool bibleworks_define_parsing (ustring parsing, ustring& definition) // Tries to define the parsing as coming from BibleWorks. // Returns true if it managed. // The definitions were assembled by trial and error, by searching for a parsing, then looking what BibleWorks gave for it. { // A parsing as imported from BibleWorks should start with the @ character. if (parsing.substr (0, 1) != "@") { return false; } parsing.erase (0, 1); ustring prefix = parsing.substr (0, 1); parsing.erase (0, 1); if (prefix == "n") { definition = "noun"; bibleworks_define_parsing_case (parsing, definition); bibleworks_define_parsing_gender (parsing, definition); bibleworks_define_parsing_number (parsing, definition); return true; } if (prefix == "v") { definition = "verb"; // Parsing of the verb may follow different routes depending on the length of the parsing. size_t length_after_v = parsing.length(); if (length_after_v == 3) { bibleworks_define_parsing_mood (parsing, definition); bibleworks_define_parsing_tense (parsing, definition); bibleworks_define_parsing_voice (parsing, definition); } if (length_after_v == 4) { bibleworks_define_parsing_mood (parsing, definition); bibleworks_define_parsing_tense (parsing, definition); bibleworks_define_parsing_voice (parsing, definition); } if (length_after_v == 5) { bibleworks_define_parsing_mood (parsing, definition); bibleworks_define_parsing_tense (parsing, definition); bibleworks_define_parsing_voice (parsing, definition); bibleworks_define_parsing_person (parsing, definition); bibleworks_define_parsing_number (parsing, definition); } if (length_after_v == 6) { // These are the participles. bibleworks_define_parsing_mood (parsing, definition); bibleworks_define_parsing_tense (parsing, definition); bibleworks_define_parsing_voice (parsing, definition); bibleworks_define_parsing_case (parsing, definition); bibleworks_define_parsing_gender (parsing, definition); bibleworks_define_parsing_number (parsing, definition); } return true; } if (prefix == "a") { definition = "adjective"; bibleworks_define_parsing_case (parsing, definition); bibleworks_define_parsing_gender (parsing, definition); bibleworks_define_parsing_number (parsing, definition); bibleworks_define_parsing_adjective_suffix (parsing, definition); return true; } if (prefix == "d") { definition = "definite article"; bibleworks_define_parsing_case (parsing, definition); bibleworks_define_parsing_gender (parsing, definition); bibleworks_define_parsing_number (parsing, definition); return true; } if (prefix == "p") { definition = "preposition"; return true; } if (prefix == "c") { definition = "conjunction"; return true; } if (prefix == "x") { definition = "particle or disjunctive particle"; bibleworks_define_parsing_particle_suffix (parsing, definition); return true; } if (prefix == "i") { definition = "interjection"; return true; } if (prefix == "b") { definition = "adverb"; bibleworks_define_parsing_adverb_suffix (parsing, definition); return true; } if (prefix == "r") { definition = "pronoun"; bibleworks_define_parsing_pronoun (parsing, definition); bibleworks_define_parsing_case (parsing, definition); bibleworks_define_parsing_gender (parsing, definition); bibleworks_define_parsing_number (parsing, definition); return true; } if (prefix == "t") { definition = "indeclinable form"; bibleworks_define_parsing_indeclinable_form_suffix (parsing, definition); return true; } if (prefix == "q") { definition = "conjunction or conjunctive part"; bibleworks_define_parsing_conjunction_suffix (parsing, definition); return true; } return false; } bool bibleworks_is_running () // Returns whether BibleWorks runs. // The reason this was introduced is so that older and future versions of BibleWorks are likely to be recognized. { bool running = false; vector processes = list_processes (); for (unsigned int i = 0; i < processes.size(); i++) { ustring process = lowerCase (processes[i]); size_t pos = process.find ("0.exe"); if (pos != string::npos) { process.erase (0, pos - 6); pos = process.find ("bw"); running = (pos != string::npos); } } return running; } bool bibleworks_reference_get_decode (ustring response, Reference& reference) { // If BibleWorks was not running it might get started at this point, but the value it returns is empty as a result of a timeout. if (response.empty()) return false; // The response could be, e.g.: "OK Jer 39:10" (without the quotes). replace_text (response, ":", " "); Parse parse (response); if (parse.words.size() != 4) return false; reference.book = books_bibleworks_to_id (parse.words[1]); reference.chapter = convert_to_int (parse.words[2]); reference.verse = parse.words[3]; return true; } bibledit-gtk-4.9/src/bibleworks.h000664 000766 000024 00000003312 12221507140 017151 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_BIBLEWORKS_H #define INCLUDED_BIBLEWORKS_H #include "libraries.h" #include #include "types.h" #include "reference.h" ustring bibleworks_exported_file_get_bookname (const ustring& filename); bool bibleworks_clipboard_file_okay (const ustring& filename); unsigned int bibleworks_clipboard_file_line_get_extract_book_id (ustring& line); void import_check_bibleworks_file (vector & filenames, vector & bookids, const ustring& bible, vector & messages); void import_bibleworks_text_file (const ustring& file, const ustring& bible, vector & messages); void check_bibleworks_source_language (vector & filenames, vector & messages); ustring convert_bibleworks_greek (ustring line); bool bibleworks_define_parsing (ustring parsing, ustring& definition); bool bibleworks_is_running (); bool bibleworks_reference_get_decode (ustring response, Reference& reference); #endif bibledit-gtk-4.9/src/bookdata.cpp000644 000766 000024 00000024064 12460404402 017134 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "bookdata.h" /* This table gives the books Bibledit knows about. The books are put in the standard order. A note about this data. The id should always be a number higher than 0, because 0 is taken for "not found". The id is connected to a book, and is used in the notes database too. Therefore, ids are not supposed to be changed; new ones can be added though. */ book_record books_table[] = { { "Front Matter", "", "FRT", "", "", 67, btFrontBackMatter, false}, { "Genesis", "Gen", "GEN", "Gen", "Ge", 1, btOldTestament, false}, { "Exodus", "Exod", "EXO", "Exo", "Ex", 2, btOldTestament, false}, { "Leviticus", "Lev", "LEV", "Lev", "Le", 3, btOldTestament, false}, { "Numbers", "Num", "NUM", "Num", "Nu", 4, btOldTestament, false}, { "Deuteronomy", "Deut", "DEU", "Deu", "De", 5, btOldTestament, false}, { "Joshua", "Josh", "JOS", "Jos", "Jos", 6, btOldTestament, false}, { "Judges", "Judg", "JDG", "Jdg", "Jud", 7, btOldTestament, false}, { "Ruth", "Ruth", "RUT", "Rut", "Ru", 8, btOldTestament, false}, { "1 Samuel", "1Sam", "1SA", "1Sa", "1Sa", 9, btOldTestament, false}, { "2 Samuel", "2Sam", "2SA", "2Sa", "2Sa", 10, btOldTestament, false}, { "1 Kings", "1Kgs", "1KI", "1Ki", "1Ki", 11, btOldTestament, false}, { "2 Kings", "2Kgs", "2KI", "2Ki", "2Ki", 12, btOldTestament, false}, { "1 Chronicles", "1Chr", "1CH", "1Ch", "1Ch", 13, btOldTestament, false}, { "2 Chronicles", "2Chr", "2CH", "2Ch", "2Ch", 14, btOldTestament, false}, { "Ezra", "Ezra", "EZR", "Ezr", "Ezr", 15, btOldTestament, false}, { "Nehemiah", "Neh", "NEH", "Neh", "Ne", 16, btOldTestament, false}, { "Esther", "Esth", "EST", "Est", "Es", 17, btOldTestament, false}, { "Job", "Job", "JOB", "Job", "Job", 18, btOldTestament, false}, { "Psalms", "Ps", "PSA", "Psa", "Ps", 19, btOldTestament, false}, { "Proverbs", "Prov", "PRO", "Pro", "Pr", 20, btOldTestament, false}, { "Ecclesiastes", "Eccl", "ECC", "Ecc", "Ec", 21, btOldTestament, false}, { "Song of Solomon", "Song", "SNG", "Sol", "So", 22, btOldTestament, false}, { "Isaiah", "Isa", "ISA", "Isa", "Isa", 23, btOldTestament, false}, { "Jeremiah", "Jer", "JER", "Jer", "Jer", 24, btOldTestament, false}, { "Lamentations", "Lam", "LAM", "Lam", "La", 25, btOldTestament, false}, { "Ezekiel", "Ezek", "EZK", "Eze", "Eze", 26, btOldTestament, false}, { "Daniel", "Dan", "DAN", "Dan", "Da", 27, btOldTestament, false}, { "Hosea", "Hos", "HOS", "Hos", "Ho", 28, btOldTestament, false}, { "Joel", "Joel", "JOL", "Joe", "Joe", 29, btOldTestament, false}, { "Amos", "Amos", "AMO", "Amo", "Am", 30, btOldTestament, false}, { "Obadiah", "Obad", "OBA", "Oba", "Ob", 31, btOldTestament, true}, { "Jonah", "Jonah", "JON", "Jon", "Jon", 32, btOldTestament, false}, { "Micah", "Mic", "MIC", "Mic", "Mic", 33, btOldTestament, false}, { "Nahum", "Nah", "NAM", "Nah", "Na", 34, btOldTestament, false}, { "Habakkuk", "Hab", "HAB", "Hab", "Hab", 35, btOldTestament, false}, { "Zephaniah", "Zeph", "ZEP", "Zep", "Zep", 36, btOldTestament, false}, { "Haggai", "Hag", "HAG", "Hag", "Hag", 37, btOldTestament, false}, { "Zechariah", "Zech", "ZEC", "Zec", "Zec", 38, btOldTestament, false}, { "Malachi", "Mal", "MAL", "Mal", "Mal", 39, btOldTestament, false}, { "Matthew", "Matt", "MAT", "Mat", "Mt", 40, btNewTestament, false}, { "Mark", "Mark", "MRK", "Mar", "Mr", 41, btNewTestament, false}, { "Luke", "Luke", "LUK", "Luk", "Lu", 42, btNewTestament, false}, { "John", "John", "JHN", "Joh", "Joh", 43, btNewTestament, false}, { "Acts", "Acts", "ACT", "Act", "Ac", 44, btNewTestament, false}, { "Romans", "Rom", "ROM", "Rom", "Ro", 45, btNewTestament, false}, { "1 Corinthians", "1Cor", "1CO", "1Co", "1Co", 46, btNewTestament, false}, { "2 Corinthians", "2Cor", "2CO", "2Co", "2Co", 47, btNewTestament, false}, { "Galatians", "Gal", "GAL", "Gal", "Ga", 48, btNewTestament, false}, { "Ephesians", "Eph", "EPH", "Eph", "Eph", 49, btNewTestament, false}, { "Philippians", "Phil", "PHP", "Phi", "Php", 50, btNewTestament, false}, { "Colossians", "Col", "COL", "Col", "Col", 51, btNewTestament, false}, { "1 Thessalonians", "1Thess", "1TH", "1Th", "1Th", 52, btNewTestament, false}, { "2 Thessalonians", "2Thess", "2TH", "2Th", "2Th", 53, btNewTestament, false}, { "1 Timothy", "1Tim", "1TI", "1Ti", "1Ti", 54, btNewTestament, false}, { "2 Timothy", "2Tim", "2TI", "2Ti", "2Ti", 55, btNewTestament, false}, { "Titus", "Titus", "TIT", "Tit", "Tit", 56, btNewTestament, false}, { "Philemon", "Phlm", "PHM", "Phm", "Phm", 57, btNewTestament, true}, { "Hebrews", "Heb", "HEB", "Heb", "Heb", 58, btNewTestament, false}, { "James", "Jas", "JAS", "Jam", "Jas", 59, btNewTestament, false}, { "1 Peter", "1Pet", "1PE", "1Pe", "1Pe", 60, btNewTestament, false}, { "2 Peter", "2Pet", "2PE", "2Pe", "2Pe", 61, btNewTestament, false}, { "1 John", "1John", "1JN", "1Jo", "1Jo", 62, btNewTestament, false}, { "2 John", "2John", "2JN", "2Jo", "2Jo", 63, btNewTestament, false}, { "3 John", "3John", "3JN", "3Jo", "3Jo", 64, btNewTestament, true}, { "Jude", "Jude", "JUD", "Jud", "Jude", 65, btNewTestament, true}, { "Revelation", "Rev", "REV", "Rev", "Re", 66, btNewTestament, false}, { "Back Matter", "", "BAK", "", "", 68, btFrontBackMatter, false}, { "Other Material", "", "OTH", "", "", 69, btOtherMaterial, false}, { "Tobit", "Tob", "TOB", "Tob", "", 70, btApocrypha, false}, { "Judith", "Jdt", "JDT", "Jdt", "", 71, btApocrypha, false}, { "Esther (Greek)", "AddEsth", "ESG", "EsG", "", 72, btApocrypha, false}, { "Wisdom of Solomon", "Wis", "WIS", "Wis", "", 73, btApocrypha, false}, { "Sirach", "Sir", "SIR", "Sir", "", 74, btApocrypha, false}, { "Baruch", "Bar", "BAR", "Bar", "", 75, btApocrypha, false}, { "Letter of Jeremiah", "EpJer", "LJE", "LJe", "", 76, btApocrypha, true}, { "Song of the Three Children", "PrAzar", "S3Y", "S3Y", "", 77, btApocrypha, true}, { "Susanna", "Sus", "SUS", "Sus", "", 78, btApocrypha, true}, { "Bel and the Dragon", "Bel", "BEL", "Bel", "", 79, btApocrypha, true}, { "1 Maccabees", "1Macc", "1MA", "1Ma", "", 80, btApocrypha, false}, { "2 Maccabees", "2Macc", "2MA", "2Ma", "", 81, btApocrypha, false}, { "1 Esdras", "1Esd", "1ES", "1Es", "", 82, btApocrypha, false}, { "Prayer of Manasses", "PrMan", "MAN", "Man", "", 83, btApocrypha, true}, { "Psalm 151", "Ps151", "PS2", "Ps2", "", 84, btApocrypha, true}, { "3 Maccabees", "3Macc", "3MA", "3Ma", "", 85, btApocrypha, false}, { "2 Esdras", "2Esd", "2ES", "2Es", "", 86, btApocrypha, false}, { "4 Maccabees", "4Macc", "4MA", "4Ma", "", 87, btApocrypha, false}, { "Daniel (Greek)", "AddDan", "DNT", "Dnt", "", 88, btApocrypha, false} }; unsigned int bookdata_books_count() { unsigned int count = sizeof(books_table) / sizeof(*books_table); return count; } // For OSIS abbreviations see http://www.crosswire.org/wiki/OSIS_Book_Abbreviations. bibledit-gtk-4.9/src/bookdata.h000664 000766 000024 00000002555 12221507137 016610 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_BOOKDATA_H #define INCLUDED_BOOKDATA_H enum BookType {btOldTestament, btNewTestament, btFrontBackMatter, btOtherMaterial, btUnknown, btApocrypha}; typedef struct { const char *name; // English name. const char *osis; // Osis name. const char *paratext; // Paratext ID. const char *bibleworks; // BibleWorks name. const char *onlinebible; // Online Bible name. unsigned int id; // Bibledit's internal id. BookType type; // The type of the book. bool onechapter; // The book has one chapter. } book_record; unsigned int bookdata_books_count(); #endif bibledit-gtk-4.9/src/books.cpp000644 000766 000024 00000034245 12460404402 016467 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "books.h" #include "directories.h" #include "gwrappers.h" #include "utilities.h" #include "shell.h" #include "settings.h" #include "localizedbooks.h" extern book_record books_table[]; void books_order(const ustring & project, vector < unsigned int >&books) // Books read from the database usually are out of order. // Reorder the books in agreement with the user's settings. // When Bibledit got new defined books, there will be books not yet in the user's // settings. These will be reordered depending on their relative position with // the existing books. { // Configuration extern Settings *settings; ProjectConfiguration *projectconfig = settings->projectconfig(project); vector < int >project_books = projectconfig->book_order_get(); // Sort part or all of the books following the project. vector < unsigned int >books_sorted; { set < unsigned int >books_sorted_inserted; set < unsigned int >bookset(books.begin(), books.end()); for (unsigned int i = 0; i < project_books.size(); i++) { if (bookset.find(project_books[i]) != bookset.end()) { if (books_sorted_inserted.find(project_books[i]) == books_sorted_inserted.end()) { books_sorted.push_back(project_books[i]); books_sorted_inserted.insert(project_books[i]); } } } } // Give a sequence to each book already sorted. vector < unsigned int >books_sorted_sequences; for (unsigned int i = 0; i < books_sorted.size(); i++) { unsigned int sequence; for (unsigned int i2 = 0; i2 < bookdata_books_count(); i2++) { if (books_sorted[i] == books_table[i2].id) { sequence = i2; break; } } books_sorted_sequences.push_back(sequence); } // Store any books still left out. vector < unsigned int >books_left; { set < unsigned int >bookset(books_sorted.begin(), books_sorted.end()); for (unsigned int i = 0; i < books.size(); i++) { if (bookset.find(books[i]) == bookset.end()) { books_left.push_back(books[i]); } } } // Give a sequence to each book left out. vector < unsigned int >books_left_sequences; for (unsigned int i = 0; i < books_left.size(); i++) { unsigned int sequence; for (unsigned int i2 = 0; i2 < bookdata_books_count(); i2++) { if (books_left[i] == books_table[i2].id) { sequence = i2; break; } } books_left_sequences.push_back(sequence); } // If we had no books, just add the ones left out, after sorting them. if (books_sorted.empty()) { books.clear(); quick_sort(books_left_sequences, books_left, 0, books_left_sequences.size()); for (unsigned int i = 0; i < books_left.size(); i++) { books.push_back(books_left[i]); } return; } // Depending on the sequence of each book left out, insert it at the right // location in the already sorted books. // The algorithm is that we check to which book each of them comes nearest, // and the insert it before of after that location, depending on whether it // follows or precedes it. for (unsigned int i = 0; i < books_left.size(); i++) { unsigned int smallest_absolute_distance = 1000; size_t insert_location = 1000; unsigned int sequence_left = books_left_sequences[i]; for (unsigned int i2 = 0; i2 < books_sorted.size(); i2++) { unsigned int sequence_sorted = books_sorted_sequences[i2]; unsigned int absolute_distance = ABS(sequence_sorted - sequence_left); if (absolute_distance < smallest_absolute_distance) { smallest_absolute_distance = absolute_distance; insert_location = i2; } } if (sequence_left > books_sorted_sequences[insert_location]) insert_location++; if (insert_location >= books_sorted.size()) { books_sorted.push_back(books_left[i]); books_sorted_sequences.push_back(books_left_sequences[i]); } else { vector < unsigned int >::iterator book_iter = books_sorted.begin(); vector < unsigned int >::iterator sequence_iter = books_sorted_sequences.begin(); for (size_t i2 = 0; i2 < insert_location; i2++) { book_iter++; sequence_iter++; } books_sorted.insert(book_iter, books_left[i]); books_sorted_sequences.insert(sequence_iter, books_left_sequences[i]); } } // Store the books already sorted, with the possible ones left out, in the // books variable. books.clear(); for (unsigned int i = 0; i < books_sorted.size(); i++) { books.push_back(books_sorted[i]); } } void books_standard_order(vector < unsigned int >&books) // This orders the books into the standard order. { set < unsigned int >books_set(books.begin(), books.end()); books.clear(); for (unsigned int i = 0; i < bookdata_books_count(); i++) { if (books_set.find(books_table[i].id) != books_set.end()) books.push_back(books_table[i].id); } } unsigned int books_name_to_id(const ustring & language, const ustring & book) /* This returns the id of "book" in "language". The id is Bibledit's internal id for a given book. This id uniquely identifies the book. We could have identified books by the Paratext ID, or by the OSIS name, but as there aren't Paratext IDs or OSIS names for every book that Bibledit supports, we need to have our own id. */ { extern BookLocalizations *booklocalizations; return booklocalizations->name2id(language, book); } unsigned int books_abbreviation_to_id(const ustring & language, const ustring & abbreviation) // This returns the id of "abbreviation" in "language". { extern BookLocalizations *booklocalizations; return booklocalizations->abbrev2id(language, abbreviation); } unsigned int books_abbreviation_to_id_loose(const ustring & language, const ustring & abbreviation) // This returns the id of "abbreviation" in "language". // It uses a looser searching algorithm. { extern BookLocalizations *booklocalizations; return booklocalizations->abbrev2id_loose(language, abbreviation); } ustring books_id_to_name(const ustring & language, unsigned int id) // Returns the language's human readable bookname from the Bibledit id. { extern BookLocalizations *booklocalizations; return booklocalizations->id2name(language, id); } ustring books_id_to_abbreviation(const ustring & language, unsigned int id) // Returns the language's abbreviation of the Bibledit id. { extern BookLocalizations *booklocalizations; return booklocalizations->id2abbrev(language, id); } ustring books_id_to_paratext(unsigned int id) { for (unsigned int i = 0; i < bookdata_books_count(); i++) if (id == books_table[i].id) return books_table[i].paratext; return ""; } unsigned int books_paratext_to_id(const ustring & paratext) { ustring s1(paratext.casefold()); for (unsigned int i = 0; i < bookdata_books_count(); i++) { ustring s2(books_table[i].paratext); s2 = s2.casefold(); if (s1 == s2) { return books_table[i].id; } } return 0; } ustring books_id_to_bibleworks(unsigned int id) { for (unsigned int i = 0; i < bookdata_books_count(); i++) if (id == books_table[i].id) return books_table[i].bibleworks; return ""; } unsigned int books_bibleworks_to_id(const ustring & bibleworks) { ustring s1(bibleworks.casefold()); for (unsigned int i = 0; i < bookdata_books_count(); i++) { ustring s2(books_table[i].bibleworks); s2 = s2.casefold(); if (s1 == s2) { return books_table[i].id; } } return 0; } ustring books_id_to_osis(unsigned int id) { for (unsigned int i = 0; i < bookdata_books_count(); i++) if (id == books_table[i].id) return books_table[i].osis; return ""; } unsigned int books_osis_to_id(const ustring & osis) { ustring s1(osis.casefold()); for (unsigned int i = 0; i < bookdata_books_count(); i++) { ustring s2(books_table[i].osis); s2 = s2.casefold(); if (s1 == s2) { return books_table[i].id; } } return 0; } // Could be much more efficient if the id was the index into the books_table[] ustring books_id_to_english(unsigned int id) { for (unsigned int i = 0; i < bookdata_books_count(); i++) if (id == books_table[i].id) return books_table[i].name; return ""; } // This requires the compiler flag -std=c++11. This, in turn, requires // the ax_cxx_compile_stdcxx11.m4 script to make configure.ac know how // to do the right thing. On Ubuntu, I had to install the // autoconf-archive package to get this macro. Then run // aclocal; autoconf; ./configure // Matt Postiff 1/12/2015 #include std::unordered_map bookmap; void books_init(void) { bookmap["front matter"]=67; bookmap["genesis"]=1; bookmap["exodus"]=2; bookmap["leviticus"]=3; bookmap["numbers"]=4; bookmap["deuteronomy"]=5; bookmap["joshua"]=6; bookmap["judges"]=7; bookmap["ruth"]=8; bookmap["1 samuel"]=9; bookmap["2 samuel"]=10; bookmap["1 kings"]=11; bookmap["2 kings"]=12; bookmap["1 chronicles"]=13; bookmap["2 chronicles"]=14; bookmap["ezra"]=15; bookmap["nehemiah"]=16; bookmap["esther"]=17; bookmap["job"]=18; bookmap["psalms"]=19; bookmap["proverbs"]=20; bookmap["ecclesiastes"]=21; bookmap["song of solomon"]=22; bookmap["isaiah"]=23; bookmap["jeremiah"]=24; bookmap["lamentations"]=25; bookmap["ezekiel"]=26; bookmap["daniel"]=27; bookmap["hosea"]=28; bookmap["joel"]=29; bookmap["amos"]=30; bookmap["obadiah"]=31; bookmap["jonah"]=32; bookmap["micah"]=33; bookmap["nahum"]=34; bookmap["habakkuk"]=35; bookmap["zephaniah"]=36; bookmap["haggai"]=37; bookmap["zechariah"]=38; bookmap["malachi"]=39; bookmap["matthew"]=40; bookmap["mark"]=41; bookmap["luke"]=42; bookmap["john"]=43; bookmap["acts"]=44; bookmap["romans"]=45; bookmap["1 corinthians"]=46; bookmap["2 corinthians"]=47; bookmap["galatians"]=48; bookmap["ephesians"]=49; bookmap["philippians"]=50; bookmap["colossians"]=51; bookmap["1 thessalonians"]= 52; bookmap["2 thessalonians"]= 53; bookmap["1 timothy"]= 54; bookmap["2 timothy"]= 55; bookmap["titus"]= 56; bookmap["philemon"]= 57; bookmap["hebrews"]= 58; bookmap["james"]= 59; bookmap["1 peter"]= 60; bookmap["2 peter"]= 61; bookmap["1 john"]= 62; bookmap["2 john"]= 63; bookmap["3 john"]= 64; bookmap["jude"]=65; bookmap["revelation"]= 66; bookmap["back matter"]= 68; bookmap["other material"]= 69; bookmap["tobit"]= 70; bookmap["judith"]= 71; bookmap["esther (greek)"]= 72; bookmap["wisdom of solomon"]= 73; bookmap["sirach"]= 74; bookmap["baruch"]= 75; bookmap["letter of jeremiah"]= 76; bookmap["song of the three children"]= 77; bookmap["susanna"]= 78; bookmap["bel and the dragon"]= 79; bookmap["1 maccabees"]= 80; bookmap["2 maccabees"]= 81; bookmap["1 esdras"]= 82; bookmap["prayer of manasses"]= 83; bookmap["psalm 151"]= 84; bookmap["3 maccabees"]= 85; bookmap["2 esdras"]= 86; bookmap["4 maccabees"]= 87; bookmap["daniel (greek)"]= 88; } // Return 0 if no book found unsigned int books_english_to_id(const ustring & english) { // According to gprof, this procedure took 10% of all execution time // of bibledit in a simple editing session. It used an O(n) // algorithm to match book names where n = 70 or so, and it is // called many times. We first attempt to match using the bookmap // hash at O(1) complexity, and if that fails, we fall back to the // old way. ustring s1(english.casefold()); int id = bookmap[s1]; // the unordered_map provides O(1) time to lookup instead of O(n) if (id != 0) { return id; } // For some reason, there are many thousands of calls to this // routine with a blank string argument in english. I don't get it, // but we can return 0 if so. if (english.length() == 0) { return 0; } // Otherwise, search for it the old fashion way... for (unsigned int i = 0; i < bookdata_books_count(); i++) { ustring s2(books_table[i].name); s2 = s2.casefold(); cerr << "Comparing '" << s1 << "' to " << s2 << endl; if (s1 == s2) { // ... and put it into the bookmap too to save time if we see it again later bookmap[s1] = books_table[i].id; return books_table[i].id; } } return 0; } ustring books_id_to_online_bible(unsigned int id) { for (unsigned int i = 0; i < bookdata_books_count(); i++) if (id == books_table[i].id) return books_table[i].onlinebible; return ""; } unsigned int books_online_bible_to_id(const ustring & onlinebible) { ustring s1(onlinebible.casefold()); for (unsigned int i = 0; i < bookdata_books_count(); i++) { ustring s2(books_table[i].onlinebible); s2 = s2.casefold(); if (s1 == s2) { return books_table[i].id; } } return 0; } BookType books_id_to_type(unsigned int id) { for (unsigned int i = 0; i < bookdata_books_count(); i++) if (id == books_table[i].id) return books_table[i].type; return btUnknown; } vector < unsigned int >books_type_to_ids(BookType type) // Gives the book ids of a certain type. // If the unknown type is given, it means "doesn't matter", so it gives all ids. { vector < unsigned int >ids; for (unsigned int i = 0; i < bookdata_books_count(); i++) { if ((type == books_table[i].type) || (type == btUnknown)) { ids.push_back(books_table[i].id); } } return ids; } bool books_id_to_one_chapter(unsigned int id) // Gives whether this is a book with one chapter. { for (unsigned int i = 0; i < bookdata_books_count(); i++) if (id == books_table[i].id) return books_table[i].onechapter; return false; } /* There are still many functions around that employ books_id_to_english or books_english_to_id. Check them all, and see if they can be modified. */ bibledit-gtk-4.9/src/books.h000644 000766 000024 00000004160 12455172335 016140 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_BOOKS_H #define INCLUDED_BOOKS_H #include "libraries.h" #include "bookdata.h" void books_init(void); void books_order (const ustring& project, vector& books); void books_standard_order (vector& books); unsigned int books_name_to_id (const ustring& language, const ustring& book); unsigned int books_abbreviation_to_id (const ustring& language, const ustring& abbreviation); unsigned int books_abbreviation_to_id_loose (const ustring& language, const ustring& abbreviation); unsigned int books_paratext_to_id (const ustring& paratext); unsigned int books_bibleworks_to_id (const ustring& bibleworks); unsigned int books_osis_to_id (const ustring& osis); unsigned int books_english_to_id (const ustring& english); unsigned int books_online_bible_to_id (const ustring& onlinebible); ustring books_id_to_name (const ustring& language, unsigned int id); ustring books_id_to_abbreviation (const ustring& language, unsigned int id); ustring books_id_to_paratext (unsigned int id); ustring books_id_to_bibleworks (unsigned int id); ustring books_id_to_osis (unsigned int id); ustring books_id_to_english (unsigned int id); ustring books_id_to_online_bible (unsigned int id); BookType books_id_to_type (unsigned int id); vector books_type_to_ids (BookType type); bool books_id_to_one_chapter (unsigned int id); #endif bibledit-gtk-4.9/src/categorize.cpp000664 000766 000024 00000030053 12221507130 017476 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "utilities.h" #include "categorize.h" #include "usfmtools.h" #include "tiny_utilities.h" #include "gwrappers.h" CategorizeChapterVerse::CategorizeChapterVerse(const vector < ustring > &lines) // Categorizes the lines by adding chapter and verse information to it. // It expects each \c and \v to start a new line, i.e. the lines are "clean". // Gives one line per verse. { // Variables. unsigned int chapternumber = 0; ustring versenumber = "0"; ustring text; unsigned int previous_chapter = 0; ustring previous_verse = "0"; // Go through all the lines. for (unsigned int i = 0; i < lines.size(); i++) { // Extract the marker, and deal with it. ustring ln = lines[i]; ustring marker = usfm_extract_marker(ln); // Chapter. if (marker == "c") { ustring number_in_line = number_in_string(ln); // Only accept the number if it is well-formed. if ((ln.substr(0, number_in_line.length()) == number_in_line) && (!number_in_line.empty())) { chapternumber = convert_to_int(number_in_line); if (i == 0) previous_chapter = chapternumber; // For one-chapter texts versenumber = "0"; } } // Verse if (marker == "v") { versenumber = ln; // Make it robust, even handling cases like: // - \v 1-2“Moi - No space after verse number. size_t spaceposition = versenumber.find_first_not_of("0123456789,-ab"); if (spaceposition != string::npos) { versenumber = versenumber.substr(0, spaceposition); } // Handle case that the usfm file does not contain the \c 1. if ((versenumber != "0") && (chapternumber == 0)) { chapternumber = 1; } } // Store data. if ((chapternumber != previous_chapter) || (versenumber != previous_verse)) { store(previous_chapter, previous_verse, text); text.clear(); previous_chapter = chapternumber; previous_verse = versenumber; } // Save text. if (!text.empty()) text.append("\n"); text.append(lines[i]); } if (!text.empty()) store(chapternumber, versenumber, text); } void CategorizeChapterVerse::store(unsigned int chapternumber, const ustring & versenumber, const ustring & text) { chapter.push_back(chapternumber); verse.push_back(versenumber); line.push_back(text); } CategorizeLine::CategorizeLine(const ustring & data) { // As the data may exist of several lines, handle those separately. ParseLine parseline(data); for (unsigned int ln = 0; ln < parseline.lines.size(); ln++) { // Get the line to work on. ustring line = parseline.lines[ln]; // Extract the marker for this line. ustring marker = usfm_extract_marker(line); // Marker to work with for this line. ustring actual_marker; if (marker.empty()) actual_marker = previous_marker; else actual_marker = marker; // Re-insert bible note markers. if (marker == footnote_opener(false)) { line.insert(0, footnote_opener(true)); } if (marker == endnote_opener(false)) { line.insert(0, endnote_opener(true)); } if (marker == xref_opener(false)) { line.insert(0, xref_opener(true)); } // Subdivide the line into categories. // Each category removes something from this content, until it is empty. // Footnotes, endnotes. if (!line.empty()) { size_t beginposition, endposition; ustring opening_marker = footnote_opener(true); ustring closing_marker = footnote_closer(); beginposition = line.find(opening_marker); endposition = line.find(closing_marker); while ((beginposition != string::npos) && (endposition != string::npos)) { ustring notetext; notetext = line.substr(beginposition + opening_marker.length(), endposition - beginposition - closing_marker.length()); line.erase(beginposition, endposition - beginposition + closing_marker.length()); clear_out_any_marker(notetext); append_text(note, notetext); beginposition = line.find(opening_marker); endposition = line.find(closing_marker); } opening_marker = endnote_opener(true); closing_marker = endnote_closer(); beginposition = line.find(opening_marker); endposition = line.find(closing_marker); while ((beginposition != string::npos) && (endposition != string::npos)) { ustring notetext; notetext = line.substr(beginposition + opening_marker.length(), endposition - beginposition - closing_marker.length()); line.erase(beginposition, endposition - beginposition + closing_marker.length()); clear_out_any_marker(notetext); append_text(note, notetext); beginposition = line.find(opening_marker); endposition = line.find(closing_marker); } } // Crossreferences. if (!line.empty()) { size_t beginposition, endposition; ustring opening_marker = xref_opener(true); ustring closing_marker = xref_closer(); beginposition = line.find(opening_marker); endposition = line.find(closing_marker); while ((beginposition != string::npos) && (endposition != string::npos)) { ustring referencetext; referencetext = line.substr(beginposition + opening_marker.length(), endposition - beginposition - closing_marker.length()); line.erase(beginposition, endposition - beginposition + closing_marker.length()); clear_out_any_marker(referencetext); append_text(ref, referencetext); beginposition = line.find(opening_marker); endposition = line.find(closing_marker); } } // Identifiers. if (!line.empty()) { if (is_id_marker(actual_marker)) { clear_out_any_marker(line); append_text(id, line); line.clear(); } } // Introduction elements. if (!line.empty()) { if (is_intro_marker(actual_marker)) { clear_out_any_marker(line); append_text(intro, line); line.clear(); } } // Headings, titles, labels. if (!line.empty()) { if (is_head_marker(actual_marker)) { clear_out_any_marker(line); append_text(head, line); line.clear(); } } // Chapter text. if (!line.empty()) { if (is_chap_marker(actual_marker)) { clear_out_any_marker(line); append_text(chap, line); line.clear(); } } // Extended study notes. As these use the existing footnote markers, // deal with the study notes first. if (!line.empty()) { if (is_study_marker(actual_marker)) { clear_out_any_marker(line); append_text(study, line); line.clear(); } } // After everything else has been removed, output the rest as main text. // This includes the "Verses" group, the "Paragraph Elements", and the // "Poetry Elements", the "Table Elements", and the "Special Text and // Character Styles", which have been filtered out already above. if (!line.empty()) { clear_out_any_marker(line); append_text(verse, line); line.clear(); } // Store previous marker. previous_marker = marker; } } void CategorizeLine::append_text(ustring & container, const ustring & text) { if (!container.empty()) container.append(" "); container.append(text); } void CategorizeLine::clear_out_any_marker(ustring & line) { size_t startpos = 0; startpos = line.find("\\", startpos); while (startpos != string::npos) { ustring marker; size_t endpos = line.find_first_of(" *", startpos); if (endpos == string::npos) { marker = line.substr(startpos + 1, line.length() - startpos); } else { marker = line.substr(startpos + 1, endpos - startpos - 1); } line.erase(startpos, marker.length() + 2); startpos++; startpos = line.find("\\", startpos); } } bool CategorizeLine::is_id_marker(const ustring & marker) { return ((marker == "id") || (marker == "ide") || (marker == "rem") || (marker == "h") || (marker == "h1") || (marker == "h2") || (marker == "h3") || (marker == "toc") || (marker == "toc1") || (marker == "toc2") || (marker == "toc3")); } bool CategorizeLine::is_intro_marker(const ustring & marker) { return ((marker == "imt") || (marker == "imt1") || (marker == "imt2") || (marker == "imt3") || (marker == "imt4") || (marker == "is") || (marker == "is1") || (marker == "is2") || (marker == "ip") || (marker == "ipi") || (marker == "im") || (marker == "imi") || (marker == "ipq") || (marker == "imq") || (marker == "ipr") || (marker == "ib") || (marker == "iex") || (marker == "iq") || (marker == "iq1") || (marker == "iq2") || (marker == "iq3") || (marker == "iot") || (marker == "io") || (marker == "io") || (marker == "io1") || (marker == "io2") || (marker == "io3") || (marker == "io4") || (marker == "imte") || (marker == "ie")); } bool CategorizeLine::is_head_marker(const ustring & marker) { return ((marker == "mt") || (marker == "mt1") || (marker == "mt2") || (marker == "mt3") || (marker == "mt4") || (marker == "mte") || (marker == "mte1") || (marker == "mte2") || (marker == "mte3") || (marker == "mte4") || (marker == "ms") || (marker == "ms1") || (marker == "ms2") || (marker == "ms3") || (marker == "ms4") || (marker == "mr") || (marker == "s") || (marker == "s1") || (marker == "s2") || (marker == "s3") || (marker == "s4") || (marker == "sr") || (marker == "r") || (marker == "rq") || (marker == "d") || (marker == "sp")); } bool CategorizeLine::is_chap_marker(const ustring & marker) { return ((marker == "c") || (marker == "ca") || (marker == "cl") || (marker == "cp") || (marker == "cd")); } bool CategorizeLine::is_study_marker(const ustring & marker) { return ((marker == "env") || (marker == "enw") || (marker == "enk") || (marker == "enc")); } ustring CategorizeLine::footnote_opener(bool full) { ustring opener; if (full) opener.append("\\"); opener.append("f"); if (full) opener.append(" "); return opener; } ustring CategorizeLine::footnote_closer() { return "\\f*"; } ustring CategorizeLine::endnote_opener(bool full) { ustring opener; if (full) opener.append("\\"); opener.append("fe"); if (full) opener.append(" "); return opener; } ustring CategorizeLine::endnote_closer() { return "\\fe*"; } ustring CategorizeLine::xref_opener(bool full) { ustring opener; if (full) opener.append("\\"); opener.append("x"); if (full) opener.append(" "); return opener; } ustring CategorizeLine::xref_closer() { return "\\x*"; } bool CategorizeLine::is_verse_marker(const ustring & marker) // We take the rough and fast road and say that if the marker is nothing else, // then it is a verse marker. { bool is_verse = true; if (is_verse) if (is_id_marker(marker)) is_verse = false; if (is_verse) if (is_intro_marker(marker)) is_verse = false; if (is_verse) if (is_head_marker(marker)) is_verse = false; if (is_verse) if (is_chap_marker(marker)) is_verse = false; if (is_verse) if (is_study_marker(marker)) is_verse = false; return is_verse; } void CategorizeLine::remove_verse_number(const ustring & versenumber) // This removes the verse number if "versenumber" is found in the text. { size_t pos = verse.find(" "); if (pos == string::npos) return; ustring vs = verse.substr(0, pos); if (vs == versenumber) verse.erase(0, ++pos); } bibledit-gtk-4.9/src/categorize.h000664 000766 000024 00000003765 12221507130 017155 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_CATEGORIZE_H #define INCLUDED_CATEGORIZE_H #include "libraries.h" class CategorizeChapterVerse { public: CategorizeChapterVerse(const vector& lines); vector chapter; vector verse; vector line; private: void store(unsigned int chapternumber, const ustring& versenumber, const ustring& text); }; class CategorizeLine { public: CategorizeLine(const ustring& data); ustring id; ustring intro; ustring head; ustring chap; ustring study; ustring note; ustring ref; ustring verse; bool is_id_marker(const ustring& marker); bool is_intro_marker(const ustring& marker); bool is_head_marker(const ustring& marker); bool is_chap_marker(const ustring& marker); bool is_study_marker(const ustring& marker); ustring footnote_opener(bool full); ustring footnote_closer(); ustring endnote_opener(bool full); ustring endnote_closer(); ustring xref_opener(bool full); ustring xref_closer(); bool is_verse_marker(const ustring& marker); void remove_verse_number(const ustring& versenumber); private: ustring previous_marker; void append_text(ustring& container, const ustring& text); void clear_out_any_marker(ustring& line); }; #endif bibledit-gtk-4.9/src/check_capitalization.cpp000664 000766 000024 00000037063 12221507150 021524 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "check_capitalization.h" #include "projectutils.h" #include "settings.h" #include "stylesheetutils.h" #include "utilities.h" #include "usfmtools.h" #include "books.h" #include "scripturechecks.h" #include "referenceutils.h" #include "tiny_utilities.h" CheckCapitalization::CheckCapitalization(const ustring & project, const vector < unsigned int >&books, const ustring & punctuation_followed_by_capitals, const ustring & ignore_lowercase_following, const ustring & abbreviations_filename, bool any_prefixes, const ustring & uncapitalized_prefixes_filename, const ustring & capitalized_suffixes_filename, bool gui) /* It checks the capitalization in the text. project: project to check. books: books to check; if empty it checks them all. punctuation_followed_by_capitals: give punctuation that may be followed by capitals. ignore_lowercase_following: ignore the error if a lower case character follows these characters. abbreviations_filename: filename with the abbreviations. any_prefixes: allow any prefixes before the capitals. uncapitalized_prefixes_filename: filename with the list of uncapitalized prefixes. capitalized_suffixes_filename: filename with the list of the capitalized suffixes. gui: whether to show graphical progressbar. */ { cancelled = false; vector < unsigned int >mybooks(books.begin(), books.end()); if (mybooks.empty()) mybooks = project_get_books(project); for (unsigned int i = 0; i < punctuation_followed_by_capitals.length(); i++) { punctuation_followed_by_capitals_set.insert(g_utf8_get_char(punctuation_followed_by_capitals.substr(i, 1).c_str())); } for (unsigned int i = 0; i < ignore_lowercase_following.length(); i++) { ignore_lower_case_following_set.insert(g_utf8_get_char(ignore_lowercase_following.substr(i, 1).c_str())); } { ReadText rt(abbreviations_filename, true); for (unsigned int i = 0; i < rt.lines.size(); i++) { abbreviations.insert(rt.lines[i]); } } allow_any_uncapitalized_prefixes = any_prefixes; { ReadText rt(uncapitalized_prefixes_filename, true); for (unsigned int i = 0; i < rt.lines.size(); i++) { uncapitalized_prefixes.insert(rt.lines[i]); } } { ReadText rt(capitalized_suffixes_filename, true); for (unsigned int i = 0; i < rt.lines.size(); i++) { capitalized_suffixes.insert(rt.lines[i]); } } progresswindow = NULL; if (gui) { progresswindow = new ProgressWindow("Capitalization", true); progresswindow->set_iterate(0, 1, mybooks.size()); } for (unsigned int bk = 0; bk < mybooks.size(); bk++) { book = mybooks[bk]; if (gui) { progresswindow->iterate(); if (progresswindow->cancel) { cancelled = true; return; } } vector < unsigned int >chapters = project_get_chapters(project, book); for (unsigned int ch = 0; ch < chapters.size(); ch++) { chapter = chapters[ch]; vector < ustring > verses = project_get_verses(project, book, chapter); for (unsigned int vs = 0; vs < verses.size(); vs++) { verse = verses[vs]; vector < int >mychapters; vector < ustring > myverses; vector < size_t > mypointers; mychapters.push_back(chapters[ch]); myverses.push_back(verses[vs]); mypointers.push_back(0); ustring line = project_retrieve_verse(project, book, chapter, verse); CategorizeLine categorize(line); // No checks done on id. // Introduction text. check_capitalization(mychapters, myverses, categorize.intro, mypointers, false); check_suspicious_capitalization(categorize.intro); // Heading text. check_capitalization(mychapters, myverses, categorize.head, mypointers, false); check_suspicious_capitalization(categorize.head); // No checks done on chapter. // Study notes. check_capitalization(mychapters, myverses, categorize.study, mypointers, true); check_suspicious_capitalization(categorize.study); // Foot- and endnotes. check_capitalization(mychapters, myverses, categorize.note, mypointers, true); check_suspicious_capitalization(categorize.note); // Crossreferences. check_capitalization(mychapters, myverses, categorize.ref, mypointers, true); check_suspicious_capitalization(categorize.ref); // Store verse text for checking at the end of the book. We cannot check // per verse or chapter, because sentences could span them. verse_chapter.push_back(chapter); verse_verse.push_back(verse); verse_pointer.push_back(verse_text.length()); if (!verse_text.empty()) verse_text.append(" "); verse_text.append(categorize.verse); // Check suspicious capitalization in the versetext. check_suspicious_capitalization(categorize.verse); } } // We've reached the end of the book. Check all verse text. check_capitalization(verse_chapter, verse_verse, verse_text, verse_pointer, true); // Clear containers for verse text. verse_chapter.clear(); verse_verse.clear(); verse_text.clear(); verse_pointer.clear(); } } CheckCapitalization::~CheckCapitalization() { if (progresswindow) delete progresswindow; } void CheckCapitalization::check_capitalization(vector < int >&chapters, vector < ustring > &verses, ustring & text, vector < size_t > &pointers, bool end_check) /* Check capitalization in text. If "end_check" is true, it also check for final sentence closing. */ { /* Note that this at first used gtk_text_iter_starts_sentence (&iter) and gtk_text_iter_ends_sentence (&iter), but these functions are not good enough, because do not work in several cases, like e.g. in the following line, it does not indicate the end of the sentence: As soon as the leaders of the tribes of Israel took their places, the Israelites said, “How could such a horrible thing happen?" Therefore we use other means to check sentences. */ // No check if there's no text. if (trim(text).empty()) return; // Some variables needed. bool expect_capital_now = false; bool expect_capital_caused_by_reference = false; gunichar previous_char = 0; int localchapter = 0; ustring localverse = "0"; GtkTextBuffer *textbuffer; textbuffer = gtk_text_buffer_new(NULL); gtk_text_buffer_set_text(textbuffer, text.c_str(), -1); GtkTextIter iter; gtk_text_buffer_get_start_iter(textbuffer, &iter); bool going = true; while (going) { // Get the unicode character. gunichar unichar = gtk_text_iter_get_char(&iter); // See whether to expect a capital now. if (punctuation_followed_by_capitals_set.find(unichar) != punctuation_followed_by_capitals_set.end()) { // Ok, expect capital. expect_capital_now = true; expect_capital_caused_by_reference = false; // Was this expectation caused by a reference? if (is_reference(iter)) expect_capital_caused_by_reference = true; } // If we expect a capital, and we find one, no longer look for one. if (expect_capital_now) { if (g_unichar_isupper(unichar)) { expect_capital_now = false; } } // If we expect a capital, and we get lower case, that might be trouble. if (expect_capital_now) { if (g_unichar_islower(unichar)) { // There is no trouble if it follows a character after which to ignore lower case. if (ignore_lower_case_following_set.find(previous_char) != ignore_lower_case_following_set.end()) { expect_capital_now = false; } // If the lowercase character follows an abbreviation, there is no trouble either. GtkTextIter iter2 = iter; gtk_text_iter_backward_word_start(&iter2); GtkTextIter iter3 = iter2; gtk_text_iter_forward_word_end(&iter3); gtk_text_iter_forward_char(&iter3); ustring abbreviation = gtk_text_iter_get_text(&iter2, &iter3); if (abbreviations.find(abbreviation) != abbreviations.end()) { expect_capital_now = false; } // If it follows a reference, there is no trouble. if (expect_capital_caused_by_reference) expect_capital_now = false; // Ok, give message. if (expect_capital_now) { // Determine chapter and verse. get_chapter_and_verse(chapters, verses, pointers, iter, localchapter, localverse); message(book, localchapter, localverse, "Capital expected: " + get_context(iter)); } // Only give one message about missing capitals in this context. expect_capital_now = false; } } // Store this characters as the previous characters for the next round. if (g_unichar_isgraph(unichar)) previous_char = unichar; // Next round. going = gtk_text_iter_forward_char(&iter); } // The sentence should be ended with proper punctuation. if (end_check) { if (expect_capital_now) if (g_unichar_isdigit(previous_char)) expect_capital_now = false; if (!expect_capital_now) { message(book, chapter, verse, "Unended sentence: " + get_context(iter)); } } // Free memory g_object_unref(textbuffer); } void CheckCapitalization::message(unsigned int book, unsigned int chapter, const ustring & verse, const ustring & message) { references.push_back(books_id_to_english(book) + " " + convert_to_string(chapter) + ":" + verse); comments.push_back(message); } bool CheckCapitalization::is_reference(GtkTextIter iter) /* Looks whether the text at iter looks like a reference. A reference, e.g. Mt.5.5 or Mt.5:5 or John 10:5 follows a certain pattern, while going through it. Some references are given without the bookname, e.g. "10.5". Handle these too. Patterns: - digit, dot/colon, digit. */ { GtkTextIter iter0 = iter; gtk_text_iter_backward_chars(&iter0, 4); gtk_text_iter_forward_chars(&iter, 4); ustring reference = gtk_text_iter_get_text(&iter0, &iter); return text_contains_reference(reference); } void CheckCapitalization::get_chapter_and_verse(vector < int >&chapters, vector < ustring > &verses, vector < size_t > &pointers, GtkTextIter iter, int &chapter, ustring & verse) // Based on the inputs (chapters, verses, pointers, iter), // it gets the chapter and verse we are now at. { size_t offset = gtk_text_iter_get_offset(&iter); for (unsigned int i = pointers.size() - 1; i >= 0; i--) { if (offset >= pointers[i]) { chapter = chapters[i]; verse = verses[i]; return; } } } ustring CheckCapitalization::get_context(GtkTextIter iter) // Returns the context at iter: A couple of words before and after. { GtkTextIter iter1 = iter; GtkTextIter iter2 = iter; gtk_text_iter_backward_word_starts(&iter1, 2); gtk_text_iter_forward_word_ends(&iter2, 2); return gtk_text_iter_get_text(&iter1, &iter2); } void CheckCapitalization::mixed_capitalization_message(ustring & word) { message(book, chapter, verse, "Mixed capitalization: " + word); } void CheckCapitalization::check_suspicious_capitalization(ustring & text) /* Checks on suspicious capitalization, like "bOat" or "BOat". There are exceptions to this check. */ { // Load text into buffer. ustring text2(text); text2.append(" "); GtkTextBuffer *textbuffer; textbuffer = gtk_text_buffer_new(NULL); gtk_text_buffer_set_text(textbuffer, text2.c_str(), -1); // Iterators. GtkTextIter startiter, enditer; // Check all separate words. gtk_text_buffer_get_start_iter(textbuffer, &enditer); while (gtk_text_iter_forward_word_end(&enditer)) { startiter = enditer; gtk_text_iter_backward_word_start(&startiter); vector < bool > capspattern; unsigned int capscount = 0; GtkTextIter iter = startiter; while (gtk_text_iter_in_range(&iter, &startiter, &enditer)) { bool upper = g_unichar_isupper(gtk_text_iter_get_char(&iter)); capspattern.push_back(upper); if (upper) capscount++; gtk_text_iter_forward_char(&iter); } // No further checking if words are too short. if (capspattern.size() < 2) continue; // No further checking if only small letters. if (capscount == 0) continue; // No further checking if all capitals. if (capscount == capspattern.size()) continue; // No further checking if first letter capitalized only. if ((capspattern[0]) && (capscount == 1)) continue; // Ok, there could be a problem of mixed capitalization. // Get the prefix before the first capital, and the suffix after it. ustring word = gtk_text_iter_get_text(&startiter, &enditer); ustring uncapitalized_prefix; ustring capitalized_suffix; for (unsigned int i = 1; i < capspattern.size(); i++) { if (capspattern[i]) { uncapitalized_prefix = word.substr(0, i); capitalized_suffix = word.substr(i, word.length() - i); break; } } // See whether the suffix is properly capitalized. unsigned int suffix_capital_count = 0; for (unsigned int i = 0; i < capitalized_suffix.length(); i++) { if (g_unichar_isupper(g_utf8_get_char(capitalized_suffix.substr(i, 1).c_str()))) suffix_capital_count++; } bool suffix_properly_capitalized = false; if (suffix_capital_count == 1) suffix_properly_capitalized = true; if (suffix_capital_count == capitalized_suffix.length()) suffix_properly_capitalized = true; // Give message and continue if capitalization error in suffix, but only // if this so-called wrongly capitalized suffix has not been approved af. if (!suffix_properly_capitalized) { if (capitalized_suffixes.find(capitalized_suffix) == capitalized_suffixes.end()) { mixed_capitalization_message(word); continue; } } // No further checking if this uncapitalized prefix is in the list, // or any is allowed. if (uncapitalized_prefixes.find(uncapitalized_prefix) != uncapitalized_prefixes.end()) continue; if (allow_any_uncapitalized_prefixes) continue; // Ok, not in the list. Try again with lower case initial. ustring initial = uncapitalized_prefix.substr(0, 1); initial = initial.casefold(); uncapitalized_prefix.replace(0, 1, initial); if (uncapitalized_prefixes.find(uncapitalized_prefix) != uncapitalized_prefixes.end()) continue; // No further checking if the suffix is in the list of approved suffixes. if (capitalized_suffixes.find(capitalized_suffix) != capitalized_suffixes.end()) continue; // Ok, not found, but it could be this suffix is in all capitals. Handle that. initial = capitalized_suffix.substr(0, 1); capitalized_suffix.erase(0, 1); capitalized_suffix = capitalized_suffix.casefold(); capitalized_suffix.insert(0, initial); if (capitalized_suffixes.find(capitalized_suffix) != capitalized_suffixes.end()) continue; // Ok, it appears we've got an error here -> give message. mixed_capitalization_message(word); } // Free memory g_object_unref(textbuffer); } bibledit-gtk-4.9/src/check_capitalization.h000664 000766 000024 00000005311 12221507136 021164 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_CHECK_CAPITALIZATION_H #define INCLUDED_CHECK_CAPITALIZATION_H #include "libraries.h" #include "progresswindow.h" class CheckCapitalization { public: CheckCapitalization (const ustring& project, const vector& books, const ustring& punctuation_followed_by_capitals, const ustring& ignore_lowercase_following, const ustring& abbreviations_filename, bool any_prefixes, const ustring& uncapitalized_prefixes_filename, const ustring& capitalized_suffixes_filename, bool gui); ~CheckCapitalization (); vector references; vector comments; bool cancelled; private: ProgressWindow * progresswindow; unsigned int book; unsigned int chapter; ustring verse; vector verse_chapter; vector verse_verse; vector verse_pointer; ustring verse_text; set punctuation_followed_by_capitals_set; set ignore_lower_case_following_set; set abbreviations; bool allow_any_uncapitalized_prefixes; set uncapitalized_prefixes; set capitalized_suffixes; void check_capitalization (vector& chapters, vector& verses, ustring& text, vector& pointers, bool end_check); void message (unsigned int book, unsigned int chapter, const ustring& verse, const ustring& message); bool is_reference (GtkTextIter iter); void get_chapter_and_verse (vector& chapters, vector& verses, vector& pointers, GtkTextIter iter, int& chapter, ustring& verse); ustring get_context (GtkTextIter iter); void mixed_capitalization_message (ustring& word); void check_suspicious_capitalization (ustring& text); }; #endif bibledit-gtk-4.9/src/check_chapters_verses.cpp000664 000766 000024 00000023141 12221507134 021703 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "check_chapters_verses.h" #include "projectutils.h" #include "settings.h" #include "stylesheetutils.h" #include "utilities.h" #include "usfmtools.h" #include "books.h" #include "checks.h" #include "versification.h" #include "tiny_utilities.h" CheckChaptersVerses::CheckChaptersVerses(const ustring & project, const vector < unsigned int >&books, bool gui) /* It checks the number of chapters per book and the number of verses per chapter. project: project to check. books: books to check; if empty it checks them all. gui: show graphical progressbar. */ { cancelled = false; myproject = project; extern Settings *settings; ProjectConfiguration *projectconfig = settings->projectconfig(project); myversification = projectconfig->versification_get(); // If no books given, take them all. vector < unsigned int >mybooks(books.begin(), books.end()); if (mybooks.empty()) mybooks = project_get_books(project); progresswindow = NULL; if (gui) { progresswindow = new ProgressWindow("Checking chapters and verses", true); progresswindow->set_iterate(0, 1, mybooks.size()); } for (unsigned int bk = 0; bk < mybooks.size(); bk++) { if (gui) { progresswindow->iterate(); progresswindow->set_text(books_id_to_english(mybooks[bk])); if (progresswindow->cancel) { cancelled = true; return; } } first_chapter_found = false; vector < unsigned int >chapters = project_get_chapters(project, mybooks[bk]); highest_chapter_get(mybooks[bk]); for (unsigned int ch = 0; ch < chapters.size(); ch++) { new_chapter_check(mybooks[bk], chapters[ch]); vector < ustring > verses; verses = project_get_verses(project, mybooks[bk], chapters[ch]); highest_verse_get(mybooks[bk], chapters[ch]); verses_check(mybooks[bk], chapters[ch], verses); } last_chapter_check(mybooks[bk], chapters); } } CheckChaptersVerses::~CheckChaptersVerses() { if (progresswindow) delete progresswindow; } void CheckChaptersVerses::highest_chapter_get(unsigned int book) // Get highest chapter of the book, according to the versification. { highest_chapter = 0; vector < unsigned int >chapters = versification_get_chapters(myversification, book); if (!chapters.empty()) highest_chapter = chapters[chapters.size() - 1]; } void CheckChaptersVerses::highest_verse_get(unsigned int book, unsigned int chapter) // Get highest verse of the chapter in the book, according to the versification. { highest_verse = convert_to_int(versification_get_last_verse(myversification, book, chapter)); if (chapter == 0) highest_verse = 0; } void CheckChaptersVerses::new_chapter_check(unsigned int book, unsigned int chapter) { // Deal with the first chapter in a book. if (!first_chapter_found) { if (chapter > 1) message(book, chapter, "0", "First chapter number is too high"); previous_chapter = chapter - 1; first_chapter_found = true; } // Check whether the chapter number follows the previous one. if ((int)chapter != (previous_chapter + 1)) { ustring msg = "Chapter out of sequence following " + convert_to_string(int (previous_chapter)); message(book, chapter, "0", msg); } previous_chapter = chapter; // Check whether the number is within limits. if (chapter > highest_chapter) message(book, chapter, "0", "Extra chapter or wrong versification"); } void CheckChaptersVerses::last_chapter_check(unsigned int book, vector < unsigned int >&chapters) // Check whether we have enough chapters in this book. { unsigned int lastchapter = 0; if (!chapters.empty()) lastchapter = chapters[chapters.size() - 1]; if (lastchapter < highest_chapter) message(book, lastchapter, "0", "Less than " + convert_to_string(highest_chapter) + " chapters or wrong versification"); } void CheckChaptersVerses::verses_check(unsigned int book, unsigned int chapter, const vector < ustring > &verses) // This checks all the verses that are in 'book' and 'chapter'. // It supports sequences in the form of \v 1,2,3, // and ranges in the form of \v 1b-3 and \v 2-4a and \v 2b-5a. { // Check whether there are any verses at all. If not, stop further // processing because the following code assumes there are verses. if (verses.empty()) { message(book, chapter, "1", "Chapter has no verses"); return; } // Check for verses in chapter 0, which indicates the \c 1 marker wasn't there. if ((chapter == 0) && (verses.size() > 1)) { message(book, chapter, "1", "Chapter marker missing"); } // Transform the verses in the internally used encoding, so as to accomodate // for sequences and ranges. vector < unsigned int >expanded_verses; vector < unsigned int >verses_pointers; for (unsigned int i = 0; i < verses.size(); i++) { // Do not work in the container, but on a copy. ustring vs(verses[i]); // If there is a range, take the beginning and the end and fill up in between. if (vs.find("-") != string::npos) { size_t position; position = vs.find("-"); ustring start_range, end_range; start_range = vs.substr(0, position); vs.erase(0, ++position); end_range = vs; int start_expanded_verse = 2 * convert_to_int(number_in_string(start_range)); if (start_range.find("b") != string::npos) start_expanded_verse++; // Checking on range start. if (start_range.find("a") != string::npos) message(book, chapter, verses[i], "Range starts with \"a\""); int end_expanded_verse = 2 * convert_to_int(number_in_string(end_range)); if (end_range.find("a") == string::npos) end_expanded_verse++; // Check on range end. if (end_range.find("b") != string::npos) message(book, chapter, verses[i], "Range ends with \"b\""); for (int i2 = start_expanded_verse; i2 <= end_expanded_verse; i2++) { expanded_verses.push_back(i2); verses_pointers.push_back(i); } } // If there is a sequence, take each verse in the sequence, and store it. else if (vs.find(",") != string::npos) { int iterations = 0; do { // In case of an unusual range formation, do not hang, but give message. iterations++; if (iterations > 50) { message(book, chapter, verses[i], "Unusual verse sequence"); break; } size_t position = vs.find(","); ustring verse; if (position == string::npos) { verse = vs; vs.clear(); } else { verse = vs.substr(0, position); vs.erase(0, ++position); } store_expanded_verse(verse, i, expanded_verses, verses_pointers); } while (!vs.empty()); } // No range and no sequence: a "normal" verse. else { store_expanded_verse(vs, i, expanded_verses, verses_pointers); } } // See whether it starts at verse 0 or 1. if (expanded_verses[0] > 2) message(book, chapter, verses[0], "Verse 1 missing"); // See whether the verses are within the limit. for (unsigned int i = 0; i < expanded_verses.size(); i += 2) { unsigned int verse; verse = expanded_verses[i] / 2; if (verse > highest_verse) { message(book, chapter, convert_to_string(verse), "Extra verse or wrong versification"); } } // See whether there are verses or bits out of sequence. int previous_verse = expanded_verses[0] - 1; for (unsigned int i = 0; i < expanded_verses.size(); i++) { ustring previous_verse_text; unsigned int pointer = verses_pointers[i]; if (pointer == 0) previous_verse_text = "beginning"; else previous_verse_text = verses[pointer - 1]; if ((int)expanded_verses[i] != previous_verse + 1) { message(book, chapter, verses[pointer], "Verse out of sequence following " + previous_verse_text); } previous_verse = expanded_verses[i]; } // Check whether we have enough verses. int highverse = expanded_verses[expanded_verses.size() - 1]; highverse = highverse / 2; if (highverse < (int)highest_verse) { message(book, chapter, verses[verses.size() - 1], "Not enough verses in chapter"); } // Clear storage. expanded_verses.clear(); verses_pointers.clear(); } void CheckChaptersVerses::message(unsigned int book, unsigned int chapter, const ustring & verse, const ustring & message) { references.push_back(books_id_to_english(book) + " " + convert_to_string(chapter) + ":" + verse); comments.push_back(message); } void CheckChaptersVerses::store_expanded_verse(const ustring & verse, unsigned int verses_pointer, vector < unsigned int >&expanded_verses, vector < unsigned int >&verses_pointers) { int expanded_verse; expanded_verse = 2 * (convert_to_int(verse)); if (verse.find("b") == string::npos) { expanded_verses.push_back(expanded_verse); verses_pointers.push_back(verses_pointer); } if (verse.find("a") == string::npos) { expanded_verses.push_back(++expanded_verse); verses_pointers.push_back(verses_pointer); } } bibledit-gtk-4.9/src/check_chapters_verses.h000664 000766 000024 00000003742 12221507150 021353 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_CHECK_CHAPTERS_VERSES_H #define INCLUDED_CHECK_CHAPTERS_VERSES_H #include "libraries.h" #include "progresswindow.h" class CheckChaptersVerses { public: CheckChaptersVerses (const ustring& project, const vector& books, bool gui); ~CheckChaptersVerses (); vector references; vector comments; bool cancelled; private: ProgressWindow * progresswindow; ustring myproject; ustring myversification; unsigned int highest_chapter; unsigned int highest_verse; bool first_chapter_found; int previous_chapter; void highest_chapter_get (unsigned int book); void highest_verse_get (unsigned int book, unsigned int chapter); void new_chapter_check (unsigned int book, unsigned int chapter); void last_chapter_check (unsigned int book, vector& chapters); void verses_check (unsigned int book, unsigned int chapter, const vector& verses); void message (unsigned int book, unsigned int chapter, const ustring& verse, const ustring& message); void store_expanded_verse (const ustring& verse, unsigned int verses_pointer, vector& expanded_verses, vector& verses_pointers); }; #endif bibledit-gtk-4.9/src/check_compare_usfm.cpp000664 000766 000024 00000020276 12221507140 021166 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "check_compare_usfm.h" #include "projectutils.h" #include "settings.h" #include "stylesheetutils.h" #include "utilities.h" #include "usfmtools.h" #include "books.h" #include "checks.h" #include "versification.h" #include "tiny_utilities.h" CheckCompareUsfms::CheckCompareUsfms(const ustring & project, const ustring & project2, const vector < unsigned int >&books, bool gui, bool allmarkers, const ustring & includeonly, const ustring & ignore, bool ignoreverse0) /* It compares the USFMs of one project with the USFMs of the other project. project: project to check. books: books to check; if empty it checks them all. gui: show graphical progressbar. */ { // Initialize variables. cancelled = false; myproject = project; myproject2 = project2; myallmarkers = allmarkers; if (!includeonly.empty()) { Parse parse(includeonly); for (unsigned int i = 0; i < parse.words.size(); i++) myincludeonly.insert(parse.words[i]); } if (!ignore.empty()) { Parse parse(ignore); for (unsigned int i = 0; i < parse.words.size(); i++) myignore.insert(parse.words[i]); } myignoreverse0 = ignoreverse0; // Get the books of the two projects. vector < unsigned int >scripture_books = project_get_books(project); vector < unsigned int >scripture2_books = project_get_books(project2); // Container with flags to verify all books in scripture2 have been processed. vector < bool > scripture2_checked; for (unsigned int i = 0; i < scripture2_books.size(); i++) scripture2_checked.push_back(false); // Progress information. progresswindow = NULL; if (gui) { progresswindow = new ProgressWindow("Comparing USFMs", true); progresswindow->set_iterate(0, 1, scripture_books.size()); } // Book selecton: If no books given, take them all. set < unsigned int >selected_books; if (books.empty()) { for (unsigned int i = 0; i < scripture_books.size(); i++) selected_books.insert(scripture_books[i]); } else { for (unsigned int i = 0; i < books.size(); i++) selected_books.insert(books[i]); } // Go through each book we have in this scripture. for (unsigned int i = 0; i < scripture_books.size(); i++) { // Progress. if (gui) { progresswindow->iterate(); progresswindow->set_text(books_id_to_english(scripture_books[i])); if (progresswindow->cancel) { cancelled = true; return; } } // See whether this book is included in the ones to check. if (selected_books.find(scripture_books[i]) != selected_books.end()) { // Get pointer to same book in second scripture, if it exists. int pointer2 = -1; for (unsigned int i2 = 0; i2 < scripture2_books.size(); i2++) { if (scripture_books[i] == scripture2_books[i2]) { pointer2 = i2; break; } } // Does the book exist in the second project? if (project_book_exists(project2, scripture_books[i])) { // Ok, same book found in second scripture: check the book. comparebook(scripture_books[i]); // Mark this book as done. scripture2_checked[pointer2] = true; } else { // Same book not found: give message about that. message(scripture_books[i], 0, "0", "Extra book"); } } } // See whether there are still some unchecked books in the second scripture. // Give message if there are unchecked ones, but only in case ALL books // were selected for checking. if (scripture_books.size() == selected_books.size()) { for (unsigned int i = 0; i < scripture2_checked.size(); i++) { if (!scripture2_checked[i]) { message(scripture2_books[i], 0, "0", "Missing book"); } } } } CheckCompareUsfms::~CheckCompareUsfms() { if (progresswindow) delete progresswindow; } void CheckCompareUsfms::message(unsigned int book, unsigned int chapter, const ustring & verse, const ustring & message) { references.push_back(books_id_to_english(book) + " " + convert_to_string(chapter) + ":" + verse); comments.push_back(message); } void CheckCompareUsfms::comparebook(unsigned int book) { vector < unsigned int >chapters = project_get_chapters(myproject, book); set < unsigned int >chapterset(chapters.begin(), chapters.end()); vector < unsigned int >chapters2 = project_get_chapters(myproject2, book); set < unsigned int >chapter2set(chapters2.begin(), chapters2.end()); // Check all chapters in this book, give message if chapter isn't there in // the second project. for (unsigned int i = 0; i < chapters.size(); i++) { if (chapter2set.find(chapters[i]) != chapter2set.end()) { comparechapter(book, chapters[i]); } else { message(book, chapters[i], "0", "Extra chapter"); } } // See if there are any chapters in the second project, which are not // there in the first. for (unsigned int i = 0; i < chapters2.size(); i++) { if (chapterset.find(chapters2[i]) == chapterset.end()) message(book, chapters2[i], "0", "Missing chapter"); } } void CheckCompareUsfms::comparechapter(unsigned int book, unsigned int chapter) { vector < ustring > verses = project_get_verses(myproject, book, chapter); set < ustring > verseset(verses.begin(), verses.end()); vector < ustring > verses2 = project_get_verses(myproject2, book, chapter); set < ustring > verse2set(verses2.begin(), verses2.end()); // Check all verses in this chapter, give message if a verse isn't there in // the second project. for (unsigned int i = 0; i < verses.size(); i++) { if (verse2set.find(verses[i]) != verse2set.end()) { compareverse(book, chapter, verses[i]); } else { message(book, chapter, verses[i], "Extra verse"); } } // See if there are any verses in the second project, which are not // there in the first. for (unsigned int i = 0; i < verses.size(); i++) { if (verseset.find(verses2[i]) == verseset.end()) message(book, chapter, verses2[i], "Missing verse"); } } void CheckCompareUsfms::compareverse(unsigned int book, unsigned int chapter, const ustring & verse) { // Get markers for the (first) project. ustring markers; { ustring text = project_retrieve_verse(myproject, book, chapter, verse); ustring marker = usfm_extract_marker_within_line(text); while (!marker.empty()) { storemarker(marker, markers, verse); marker = usfm_extract_marker_within_line(text); } } // Get markers for the second project. ustring markers2; { ustring text = project_retrieve_verse(myproject2, book, chapter, verse); ustring marker = usfm_extract_marker_within_line(text); while (!marker.empty()) { storemarker(marker, markers2, verse); marker = usfm_extract_marker_within_line(text); } } // Compare the two lots of markers. if (markers != markers2) { message(book, chapter, verse, "Markers differ: " + markers + " (" + markers2 + ")"); } } void CheckCompareUsfms::storemarker(const ustring & marker, ustring & markers, const ustring & verse) { // Ignore verse zero? if (myignoreverse0) { if (verse == "0") return; } // Check whether to include this marker. bool include = false; if (myincludeonly.empty()) include = true; else include = myincludeonly.find(marker) != myincludeonly.end(); if (myallmarkers) include = true; if (!myignore.empty()) { if (myignore.find(marker) != myignore.end()) include = false; } if (!include) return; // Store the marker. if (!markers.empty()) markers.append(" "); markers.append(marker); } bibledit-gtk-4.9/src/check_compare_usfm.h000664 000766 000024 00000003550 12221507143 020632 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_CHECK_COMPARE_USFMS_H #define INCLUDED_CHECK_COMPARE_USFMS_H #include "libraries.h" #include "progresswindow.h" class CheckCompareUsfms { public: CheckCompareUsfms (const ustring& project, const ustring& project2, const vector& books, bool gui, bool allmarkers, const ustring& includeonly, const ustring& ignore, bool ignoreverse0); ~CheckCompareUsfms (); vector references; vector comments; bool cancelled; private: ProgressWindow * progresswindow; ustring myproject; ustring myproject2; bool myallmarkers; set myincludeonly; set myignore; bool myignoreverse0; void message (unsigned int book, unsigned int chapter, const ustring& verse, const ustring& message); void comparebook (unsigned int book); void comparechapter (unsigned int book, unsigned int chapter); void compareverse (unsigned int book, unsigned int chapter, const ustring& verse); void storemarker (const ustring& marker, ustring& markers, const ustring& verse); }; #endif bibledit-gtk-4.9/src/check_count_characters.cpp000664 000766 000024 00000007657 12221507134 022050 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "check_count_characters.h" #include "projectutils.h" #include "settings.h" #include "stylesheetutils.h" #include "utilities.h" #include "usfmtools.h" #include "books.h" #include "checks.h" CheckCountCharacters::CheckCountCharacters(const ustring & project, const vector < unsigned int >&books, bool sortcharacter, bool sortcount, bool gui) /* It counts the characters in the project. project: project to check. books: books to check; if empty it checks them all. sortcharacter: sort on word. sortcount: sort on count. gui: show graphical progressbar. */ { // Initialize variables. cancelled = false; // Get a list of the books to check. If no books were given, take them all. vector < unsigned int >mybooks(books.begin(), books.end()); if (mybooks.empty()) mybooks = project_get_books(project); // GUI. progresswindow = NULL; if (gui) { progresswindow = new ProgressWindow("Counting characters", true); progresswindow->set_iterate(0, 1, mybooks.size()); } // Check each book. for (unsigned int bk = 0; bk < mybooks.size(); bk++) { if (gui) { progresswindow->iterate(); if (progresswindow->cancel) { cancelled = true; return; } } // Get text of the book and go through each line. vector < ustring > lines = project_retrieve_book(project, mybooks[bk]); for (unsigned int ln = 0; ln < lines.size(); ln++) { ustring line(lines[ln]); for (unsigned int c = 0; c < line.size(); c++) { ustring character = line.substr(c, 1); gchar *g_character = g_strdup((gchar *) character.c_str()); bool character_found = false; for (unsigned int i2 = 0; i2 < characters.size(); i2++) { /* We would have said: if (character == characters[i2]) But something funny is going on here. In a text like nǀi nǂûî the ǀ would be considered equal to the ǂ, so the latter would not show up in the inventory under ǂ, but under ǀ. Comparing g_chars solves this. */ if (g_strrstr(g_characters[i2], g_character) != NULL) { character_found = true; counts[i2]++; break; } } if (!character_found) { characters.push_back(character); g_characters.push_back(g_strdup(g_character)); counts.push_back(1); } g_free(g_character); } } } // Sorting, if requested. if (sortcharacter) { quick_sort(characters, counts, 0, characters.size()); } if (sortcount) { quick_sort(counts, characters, 0, counts.size()); } } CheckCountCharacters::~CheckCountCharacters() { if (progresswindow) delete progresswindow; for (unsigned int i = 0; i < g_characters.size(); i++) { g_free(g_characters[i]); } } /* Paratext can find invalid characters, but as we have Unicode, where all characters are valid, there is no need for this check. Diacritics usage in Paratext. It shows all character sequences that have diacritics, how many times each sequence occurs, and the reference where it occurs. We don't use it as we have Unicode, and that views diacritics as any other character. */ bibledit-gtk-4.9/src/check_count_characters.h000664 000766 000024 00000002435 12221507146 021505 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_CHECK_COUNT_CHARACTERS_H #define INCLUDED_CHECK_COUNT_CHARACTERS_H #include "libraries.h" #include "progresswindow.h" class CheckCountCharacters { public: CheckCountCharacters (const ustring& project, const vector& books, bool sortcharacter, bool sortcount, bool gui); ~CheckCountCharacters (); vector characters; vector counts; bool cancelled; private: ProgressWindow * progresswindow; vector g_characters; }; #endif bibledit-gtk-4.9/src/check_count_usfms.cpp000664 000766 000024 00000006440 12221507146 021056 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "check_count_usfms.h" #include "projectutils.h" #include "settings.h" #include "stylesheetutils.h" #include "utilities.h" #include "usfmtools.h" #include "books.h" #include "checks.h" CheckCountUsfms::CheckCountUsfms(const ustring & project, const vector < unsigned int >&books, CheckSortType sorttype, bool gui) /* It counts the USFM in the project. project: project to check. books: books to check; if empty it checks them all. sorttype: if/how to sort. gui: show graphical progressbar. */ { // Initialize variables. cancelled = false; // Get a list of the books to check. If no books were given, take them all. vector < unsigned int >mybooks(books.begin(), books.end()); if (mybooks.empty()) mybooks = project_get_books(project); // GUI. progresswindow = NULL; if (gui) { progresswindow = new ProgressWindow("Counting markers", true); progresswindow->set_iterate(0, 1, mybooks.size()); } // Check each book. for (unsigned int bk = 0; bk < mybooks.size(); bk++) { if (gui) { progresswindow->iterate(); if (progresswindow->cancel) { cancelled = true; return; } } // Get text of the book and go through each line. vector < ustring > lines = project_retrieve_book(project, mybooks[bk]); for (unsigned int ln = 0; ln < lines.size(); ln++) { // Extract the markers, and deal with them. ustring marker = usfm_extract_marker_within_line(lines[ln]); // Discard lines without a marker and get more markers per line. while (!marker.empty()) { // Look whether this particular USFM is already in the list. int found_position = -1; for (unsigned int i3 = 0; i3 < markers.size(); i3++) { if (marker == markers[i3]) { found_position = i3; break; } } if (found_position >= 0) { // This USfM has been encountered before: increase its count. ++counts[found_position]; } else { // This is a new USFM: add it and set its count to one. markers.push_back(marker); counts.push_back(1); } marker = usfm_extract_marker_within_line(lines[ln]); } } } // Sorting, if requested. switch (sorttype) { case cstSort0: break; case cstSort1: quick_sort(markers, counts, 0, markers.size()); break; case cstSort2: quick_sort(counts, markers, 0, counts.size()); break; case cstSort3: break; } } CheckCountUsfms::~CheckCountUsfms() { if (progresswindow) delete progresswindow; } bibledit-gtk-4.9/src/check_count_usfms.h000664 000766 000024 00000002342 12221507136 020517 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_CHECK_COUNT_USFMS_H #define INCLUDED_CHECK_COUNT_USFMS_H #include "libraries.h" #include "types.h" #include "progresswindow.h" class CheckCountUsfms { public: CheckCountUsfms (const ustring& project, const vector& books, CheckSortType sorttype, bool gui); ~CheckCountUsfms (); vector markers; vector counts; bool cancelled; private: ProgressWindow * progresswindow; }; #endif bibledit-gtk-4.9/src/check_count_words.cpp000664 000766 000024 00000012711 12221507145 021054 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "check_count_words.h" #include "projectutils.h" #include "settings.h" #include "stylesheetutils.h" #include "utilities.h" #include "usfmtools.h" #include "books.h" #include "checks.h" CheckCountWords::CheckCountWords(const ustring & project, const vector < unsigned int >&books, const ustring & extrachars, bool sortword, bool sortcount, unsigned int excludecount, bool gui) /* It counts the words in the project. project: project to check. books: books to check; if empty it checks them all. extrachars: characters that are part of a word. sortword: sort on word. sortcount: sort on count. excludecount: exclude words with a count of n and up. gui: show graphical progressbar. */ { // Init variables. cancelled = false; // Get a list of the books to check. If no books were given, take them all. vector < unsigned int >mybooks(books.begin(), books.end()); if (mybooks.empty()) mybooks = project_get_books(project); // GUI. progresswindow = NULL; if (gui) { progresswindow = new ProgressWindow("Counting words", true); progresswindow->set_iterate(0, 1, mybooks.size()); } // Deal with extra word-forming characters. ustring extrachars_cleaned = get_non_alphanumericals(extrachars); for (unsigned int i = 0; i < extrachars_cleaned.length(); i++) { extra_character.push_back(extrachars_cleaned.substr(i, 1)); ustring s = "BIBLEDITREPLACEMENT"; for (unsigned int i2 = 0; i2 < i; i2++) s.append("X"); temporal_replacement.push_back(s); } // Check each book. for (unsigned int bk = 0; bk < mybooks.size(); bk++) { if (gui) { progresswindow->iterate(); if (progresswindow->cancel) { cancelled = true; return; } } // Get text of the book and go through each line. vector < ustring > lines = project_retrieve_book(project, mybooks[bk]); for (unsigned int ln = 0; ln < lines.size(); ln++) { // Handle extra characters. for (unsigned int i = 0; i < extra_character.size(); i++) { replace_text(lines[ln], extra_character[i], temporal_replacement[i]); } // Categorize the line for a cleaner results. CategorizeLine categorizeline(lines[ln]); // Count the words from all categories. ParseWords pwid(categorizeline.id); count(pwid.words); ParseWords pwintro(categorizeline.intro); count(pwintro.words); ParseWords pwhead(categorizeline.head); count(pwhead.words); ParseWords pwchap(categorizeline.chap); count(pwchap.words); ParseWords pwstudy(categorizeline.study); count(pwstudy.words); ParseWords pwnote(categorizeline.note); count(pwnote.words); ParseWords pwref(categorizeline.ref); count(pwref.words); ParseWords pwverse(categorizeline.verse); count(pwverse.words); } } // Store results. if (gui) { progresswindow->set_fraction(0.2); progresswindow->set_text("Processing results"); } words.assign(wordset.begin(), wordset.end()); for (unsigned int i = 0; i < words.size(); i++) { counts.push_back(counter[words[i]]); } // Change temporal replacements back to the original characters. if (gui) progresswindow->set_fraction(0.4); for (unsigned int i = 0; i < words.size(); i++) { for (int i2 = extra_character.size() - 1; i2 >= 0; i2--) { replace_text(words[i], temporal_replacement[i2], extra_character[i2]); } } // Store total counts. if (gui) progresswindow->set_fraction(0.6); total_unique_count = words.size(); total_count = 0; for (unsigned int i = 0; i < counts.size(); i++) { total_count += counts[i]; } // Exclude counts above a certain limit, if given. if (gui) progresswindow->set_fraction(0.8); if (excludecount > 0) { vector < ustring > mywords; vector < unsigned int >mycounts; for (unsigned int i = 0; i < words.size(); i++) { if (counts[i] < excludecount) { mywords.push_back(words[i]); mycounts.push_back(counts[i]); } } words.clear(); words = mywords; counts.clear(); counts = mycounts; } // Store filtered counts. filtered_unique_count = words.size(); filtered_count = 0; for (unsigned int i = 0; i < counts.size(); i++) { filtered_count += counts[i]; } // Sorting, if requested. if (gui) progresswindow->set_fraction(1); if (sortword) { quick_sort(words, counts, 0, words.size()); } if (sortcount) { quick_sort(counts, words, 0, counts.size()); } } CheckCountWords::~CheckCountWords() { if (progresswindow) delete progresswindow; } void CheckCountWords::count(vector < ustring > &words) { // Count each word. for (unsigned int i = 0; i < words.size(); i++) { wordset.insert(words[i]); counter[words[i]]++; } } bibledit-gtk-4.9/src/check_count_words.h000664 000766 000024 00000003124 12221507127 020517 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_CHECK_COUNT_WORDS_H #define INCLUDED_CHECK_COUNT_WORDS_H #include "libraries.h" #include "progresswindow.h" class CheckCountWords { public: CheckCountWords (const ustring& project, const vector& books, const ustring& extrachars, bool sortword, bool sortcount, unsigned int excludecount, bool gui); ~CheckCountWords (); vector words; vector counts; unsigned int total_count; unsigned int filtered_count; unsigned int total_unique_count; unsigned int filtered_unique_count; bool cancelled; private: ProgressWindow * progresswindow; void count (vector& words); set wordset; map counter; vector extra_character; vector temporal_replacement; }; #endif bibledit-gtk-4.9/src/check_markers_spacing.cpp000664 000766 000024 00000007451 12221507143 021661 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "check_markers_spacing.h" #include "projectutils.h" #include "progresswindow.h" #include "settings.h" #include "stylesheetutils.h" #include "utilities.h" #include "usfmtools.h" #include "books.h" #include "tiny_utilities.h" CheckMarkersSpacing::CheckMarkersSpacing(const ustring & project, const vector < unsigned int >&books, bool gui) /* It performs checks related to the USFM standard. project: project to check. books: books to check; if empty it checks them all. gui: whether to show graphical progressbar. */ { // Init variables. cancelled = false; // Get a list of the books to check. If no books were given, take them all. vector < unsigned int >mybooks(books.begin(), books.end()); if (mybooks.empty()) mybooks = project_get_books(project); // Get the markers to check the spacing for. extern Settings *settings; Parse parse(settings->genconfig.check_markers_spacing_include_get()); for (unsigned int i = 0; i < parse.words.size(); i++) { markers.insert(parse.words[i]); } // GUI. ProgressWindow *progresswindow = NULL; if (gui) { progresswindow = new ProgressWindow("Checking spacing", true); progresswindow->set_iterate(0, 1, mybooks.size()); } // Check each book. for (unsigned int bk = 0; bk < mybooks.size(); bk++) { if (gui) { progresswindow->iterate(); if (progresswindow->cancel) { cancelled = true; break; } } book = mybooks[bk]; // Check each chapter. vector < unsigned int >chapters = project_get_chapters(project, book); for (unsigned int ch = 0; ch < chapters.size(); ch++) { chapter = chapters[ch]; vector < ustring > verses = project_get_verses(project, book, chapter); // Check each verse. for (unsigned int vs = 0; vs < verses.size(); vs++) { verse = verses[vs]; ustring line = project_retrieve_verse(project, book, chapter, verse); check(line); } } } // Clean up. if (progresswindow) delete progresswindow; } CheckMarkersSpacing::~CheckMarkersSpacing() { } void CheckMarkersSpacing::check(ustring text) // Do the actual check of one verse. { // Extract the marker, and deal with it. text = trim(text); if (text.empty()) return; ustring marker = usfm_extract_marker_within_line(text); while (!marker.empty()) { if (markers.find(marker) != markers.end()) { size_t pos = text.find("\\"); if (pos != string::npos) { if (text.substr(--pos, 1) == " ") { if (pos > 1) { if (text.substr(--pos, 1) == " ") { message("Text of marker " + marker + " ends with more than one space"); } } } else { message("Text of marker " + marker + " doesn't end with a space"); } } } // Extract any next marker in this text. marker = usfm_extract_marker_within_line(text); } } void CheckMarkersSpacing::message(const ustring & message) { references.push_back(books_id_to_english(book) + " " + convert_to_string(chapter) + ":" + verse); comments.push_back(message); } bibledit-gtk-4.9/src/check_markers_spacing.h000664 000766 000024 00000002505 12221507151 021320 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_CHECK_MARKERS_SPACING_H #define INCLUDED_CHECK_MARKERS_SPACING_H #include "libraries.h" class CheckMarkersSpacing { public: CheckMarkersSpacing (const ustring& project, const vector& books, bool gui); ~CheckMarkersSpacing (); vector references; vector comments; bool cancelled; private: unsigned int book; unsigned int chapter; ustring verse; set markers; void check (ustring text); void message (const ustring& message); }; #endif bibledit-gtk-4.9/src/check_matching_pairs.cpp000664 000766 000024 00000015022 12221507136 021474 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "check_matching_pairs.h" #include "projectutils.h" #include "settings.h" #include "stylesheetutils.h" #include "utilities.h" #include "usfmtools.h" #include "books.h" #include "scripturechecks.h" #include "tiny_utilities.h" MatchingPairOpener::MatchingPairOpener(const ustring & char_in, gunichar unichar_in, unsigned int book_in, int chapter_in, const ustring & verse_in, const ustring & context_in) { character = char_in; unichar = unichar_in; book = book_in; chapter = chapter_in; verse = verse_in; context = context_in; } CheckMatchingPairs::CheckMatchingPairs(const ustring & project, const vector < unsigned int >&books, const ustring & ignore, bool gui) /* It checks matching pairs of punctuation, e.g. the ( matches with the ). project: project to check. books: books to check; if empty it checks them all. ignore: punctuation to ignore. gui: whether to show graphical progressbar. */ { cancelled = false; vector < unsigned int >mybooks(books.begin(), books.end()); if (mybooks.empty()) mybooks = project_get_books(project); for (unsigned int i = 0; i < ignore.length(); i++) { gunichar unichar = g_utf8_get_char(ignore.substr(i, 1).c_str()); ignores.insert(unichar); gunichar mirror; if (g_unichar_get_mirror_char(unichar, &mirror)) { ignores.insert(mirror); } } // Get list of openers and closers. for (gunichar i = 0; i < 1000000; i++) { gunichar mirror; if (g_unichar_get_mirror_char(i, &mirror)) { if (gclosers.find(i) == gclosers.end()) { gopeners.insert(i); gclosers.insert(mirror); } } } progresswindow = NULL; if (gui) { progresswindow = new ProgressWindow("Matching pairs", true); progresswindow->set_iterate(0, 1, mybooks.size()); } for (unsigned int bk = 0; bk < mybooks.size(); bk++) { book = mybooks[bk]; if (gui) { progresswindow->iterate(); if (progresswindow->cancel) { cancelled = true; break; } } vector < unsigned int >chapters = project_get_chapters(project, book); for (unsigned int ch = 0; ch < chapters.size(); ch++) { chapter = chapters[ch]; vector < ustring > verses = project_get_verses(project, book, chapter); for (unsigned int vs = 0; vs < verses.size(); vs++) { verse = verses[vs]; ustring line = project_retrieve_verse(project, book, chapter, verse); CategorizeLine categorize(line); check_matched_pairs(categorize.id); check_matched_pairs(categorize.intro); check_matched_pairs(categorize.head); check_matched_pairs(categorize.chap); check_matched_pairs(categorize.study); check_matched_pairs(categorize.note); check_matched_pairs(categorize.ref); check_matched_pairs(categorize.verse); } // At the end of each chapter, check whether all pairs are "clean" check_pairs_clean(); } } } CheckMatchingPairs::~CheckMatchingPairs() { if (progresswindow) delete progresswindow; } ustring CheckMatchingPairs::get_context(ustring & line, unsigned int offset) // Returns the context at offset: A couple of words before and after. { // Result. ustring returnvalue; // Load text into buffer. GtkTextBuffer *textbuffer; textbuffer = gtk_text_buffer_new(NULL); gtk_text_buffer_set_text(textbuffer, line.c_str(), -1); // Iterators. GtkTextIter iter1; GtkTextIter iter2; // Find boundaries of context to return. gtk_text_buffer_get_iter_at_offset(textbuffer, &iter1, offset); iter2 = iter1; gtk_text_iter_backward_word_starts(&iter1, 2); gtk_text_iter_forward_word_ends(&iter2, 2); return gtk_text_iter_get_text(&iter1, &iter2); // Free memory g_object_unref(textbuffer); // Give us the result. return returnvalue; } void CheckMatchingPairs::check_matched_pairs(ustring & text) // Checks on matched pairs. Output any problems found. { for (unsigned int i = 0; i < text.length(); i++) { // Get the unicode character; gunichar unichar; unichar = g_utf8_get_char(text.substr(i, 1).c_str()); // If we found a mirror character, investigate further. gunichar mirror; if (g_unichar_get_mirror_char(unichar, &mirror)) { // Do we ignore this one? if (ignores.find(unichar) != ignores.end()) continue; // See whether this one opens or closes a pair. if (gopeners.find(unichar) != gopeners.end()) { // It opens: Add data. MatchingPairOpener opener(text.substr(i, 1), unichar, book, chapter, verse, get_context(text, i)); openers.push_back(opener); continue; } else { // It closes: check for previously seen opener. bool give_message = false; if (openers.empty()) { give_message = true; } if (!give_message) { if (openers[openers.size() - 1].unichar == mirror) { // Remove last one. openers.pop_back(); } else { // Flag message. give_message = true; } } if (give_message) { // Give message; message(book, chapter, verse, "Pair not opened: " + get_context(text, i)); } } } } } void CheckMatchingPairs::check_pairs_clean() // See if there is still any opening punctuation that have not been matched with // closing punctuation. { // Check for them and give messages. for (unsigned int i = 0; i < openers.size(); i++) { message(openers[i].book, openers[i].chapter, openers[i].verse, "Pair not closed: " + openers[i].context); } // Clear them up. openers.clear(); } void CheckMatchingPairs::message(unsigned int book, unsigned int chapter, const ustring & verse, const ustring & message) { references.push_back(books_id_to_english(book) + " " + convert_to_string(chapter) + ":" + verse); comments.push_back(message); } bibledit-gtk-4.9/src/check_matching_pairs.h000664 000766 000024 00000004016 12221507142 021137 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_CHECK_MATCHING_PAIRS_H #define INCLUDED_CHECK_MATCHING_PAIRS_H #include "libraries.h" #include "progresswindow.h" class MatchingPairOpener { public: MatchingPairOpener (const ustring& char_in, gunichar unichar_in, unsigned int book_in, int chapter_in, const ustring& verse_in, const ustring& context_in); ustring character; gunichar unichar; unsigned int book; int chapter; ustring verse; ustring context; private: }; class CheckMatchingPairs { public: CheckMatchingPairs (const ustring& project, const vector& books, const ustring& ignore, bool gui); ~CheckMatchingPairs (); vector references; vector comments; bool cancelled; private: ProgressWindow * progresswindow; set ignores; set gopeners; set gclosers; unsigned int book; int chapter; ustring verse; vector openers; ustring get_context (ustring& line, unsigned int offset); void check_matched_pairs (ustring& text); void check_pairs_clean (); void message (unsigned int book, unsigned int chapter, const ustring& verse, const ustring& message); }; #endif bibledit-gtk-4.9/src/check_parallel_passages.cpp000664 000766 000024 00000026013 12221507143 022166 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "check_parallel_passages.h" #include "projectutils.h" #include "settings.h" #include "utilities.h" #include "ot-quotations.h" #include "ot-nt-parallels.h" #include "tiny_utilities.h" #include "books.h" #include "usfmtools.h" CheckOTQuotationsInNT::CheckOTQuotationsInNT(const ustring& project, const vector & books, bool includetext) { // Language and versification system. extern Settings *settings; ustring language = settings->projectconfig(project, false)->language_get(); ustring versification = settings->projectconfig(project, false)->versification_get(); Mapping mapping(versification, 0); // Get a list of the books to check. If no books were given, take them all. vector < unsigned int >mybooks(books.begin(), books.end()); if (mybooks.empty()) mybooks = project_get_books(project); set < unsigned int >bookset(mybooks.begin(), mybooks.end()); // Get all quotations in New Testament order, optionally also in OT order. OTQuotations otquotations(0); otquotations.read(); bool use_ot_order = settings->session.check_output_in_ot_order; if (use_ot_order) { otquotations.produce_in_ot_order(); } // GUI. progresswindow = new ProgressWindow("Producing passages", true); progresswindow->set_iterate(0, 1, use_ot_order ? otquotations.quotations_ot_order.size() : otquotations.quotations_nt_order.size()); // Go through the quotations. for (unsigned int i = 0; i < (use_ot_order ? otquotations.quotations_ot_order.size() : otquotations.quotations_nt_order.size()); i++) { progresswindow->iterate(); if (progresswindow->cancel) return; // Skip if the reference book is not to be included. unsigned int reference_book = use_ot_order ? otquotations.quotations_ot_order[i].reference.book : otquotations.quotations_nt_order[i].reference.book; if (bookset.find(reference_book) == bookset.end()) continue; // Optionally remapping of verses. mapping.book_change(reference_book); if (use_ot_order) mapping.original_to_me(otquotations.quotations_ot_order[i].reference); else mapping.original_to_me(otquotations.quotations_nt_order[i].reference); // Reference chapter and verse. unsigned int reference_chapter = use_ot_order ? otquotations.quotations_ot_order[i].reference.chapter : otquotations.quotations_nt_order[i].reference.chapter; ustring reference_verse = use_ot_order ? otquotations.quotations_ot_order[i].reference.verse : otquotations.quotations_nt_order[i].reference.verse; // Store reference, optionally verse text, and comment. ustring reference = use_ot_order ? otquotations.quotations_ot_order[i].reference.human_readable (language) : otquotations.quotations_nt_order[i].reference.human_readable(language); nt_refs.push_back(reference); ustring reference_verse_text; if (includetext) { reference_verse_text = project_retrieve_verse(project, reference_book, reference_chapter, reference_verse); reference_verse_text = usfm_get_verse_text_only (reference_verse_text); } nt_texts.push_back (reference_verse_text); references.push_back(reference); comments.push_back("Quoted in New Testament"); // Go through the OT quotations processing them. vector refs_store; vector text_store; unsigned int i2_limit = use_ot_order ? otquotations.quotations_ot_order[i].referents.size() : otquotations.quotations_nt_order[i].referents.size(); for (unsigned i2 = 0; i2 < i2_limit; i2++) { if (use_ot_order) { mapping.book_change(otquotations.quotations_ot_order[i].referents[i2].book); mapping.original_to_me(otquotations.quotations_ot_order[i].referents[i2]); } else { mapping.book_change(otquotations.quotations_nt_order[i].referents[i2].book); mapping.original_to_me(otquotations.quotations_nt_order[i].referents[i2]); } ustring reference = use_ot_order ? otquotations.quotations_ot_order[i].referents[i2].human_readable(language) : otquotations.quotations_nt_order[i].referents[i2].human_readable(language); ustring verse_text; if (includetext) { verse_text = project_retrieve_verse(project, use_ot_order ? otquotations.quotations_ot_order[i].referents[i2].book : otquotations.quotations_nt_order[i].referents[i2].book, use_ot_order ? otquotations.quotations_ot_order[i].referents[i2].chapter : otquotations.quotations_nt_order[i].referents[i2].chapter, use_ot_order ? otquotations.quotations_ot_order[i].referents[i2].verse : otquotations.quotations_nt_order[i].referents[i2].verse); verse_text = usfm_get_verse_text_only(verse_text); } refs_store.push_back(reference); text_store.push_back(verse_text); Reference ref ((use_ot_order ? otquotations.quotations_ot_order[i].referents[i2].book : otquotations.quotations_nt_order[i].referents[i2].book), (use_ot_order ? otquotations.quotations_ot_order[i].referents[i2].chapter : otquotations.quotations_nt_order[i].referents[i2].chapter), (use_ot_order ? otquotations.quotations_ot_order[i].referents[i2].verse : otquotations.quotations_nt_order[i].referents[i2].verse)); references.push_back(ref.human_readable ("")); comments.push_back("Old Testament verse quoted from"); } // Save data. ot_refs.push_back(refs_store); ot_texts.push_back(text_store); } } CheckOTQuotationsInNT::~CheckOTQuotationsInNT() { if (progresswindow) delete progresswindow; } CheckParallelPassages::CheckParallelPassages(bool nt, const ustring & project, const vector < unsigned int >&books, bool includetext, bool gui,const ustring & project2) { // Language. extern Settings *settings; ustring language = settings->projectconfig(project, false)->language_get(); // Mapping. ustring versification = settings->projectconfig(project, false)->versification_get(); Mapping mapping(versification, 0); // Get a list of the books to check. If no books were given, take them all. vector < unsigned int >mybooks(books.begin(), books.end()); if (mybooks.empty()) mybooks = project_get_books(project); set < unsigned int >bookset(mybooks.begin(), mybooks.end()); // Get the parallel passages. OtNtParallels otntparallels(0); if (nt) otntparallels.readnt(); else otntparallels.readot(); // GUI. progresswindow = NULL; if (gui) { progresswindow = new ProgressWindow("Producing passages", true); progresswindow->set_iterate(0, 1, otntparallels.sections.size()); } // Go through each section. for (unsigned int i = 0; i < otntparallels.sections.size(); i++) { if (gui) { progresswindow->iterate(); if (progresswindow->cancel) return; } OtNtParallelDataSection datasection(0); // Section's heading. datasection.title = otntparallels.sections[i].title; // Go through each set of references. for (unsigned int i2 = 0; i2 < otntparallels.sections[i].sets.size(); i2++) { // Go through the references in the set. OtNtParallelDataSet dataset(0); for (unsigned int i3 = 0; i3 < otntparallels.sections[i].sets[i2].references.size(); i3++) { // Skip if NT book is not to be included. if (bookset.find(otntparallels.sections[i].sets[i2].references[i3].book) == bookset.end()) continue; vector < int >remapped_chapter; vector < int >remapped_verse; mapping.book_change(otntparallels.sections[i].sets[i2].references[i3].book); mapping.original_to_me(otntparallels.sections[i].sets[i2].references[i3].chapter, otntparallels.sections[i].sets[i2].references[i3].verse, remapped_chapter, remapped_verse); Reference mapped_reference(otntparallels.sections[i].sets[i2].references[i3].book, remapped_chapter[0], convert_to_string(remapped_verse[0])); ustring verse = mapped_reference.human_readable(language); if (includetext) { verse.append(" "); verse.append(usfm_get_verse_text_only(project_retrieve_verse(project, mapped_reference.book, mapped_reference.chapter, mapped_reference.verse))); } dataset.data.push_back(verse); references.push_back(books_id_to_english(mapped_reference.book) + " " + convert_to_string(mapped_reference.chapter) + ":" + mapped_reference.verse); comments.push_back("Parallel"); } datasection.sets.push_back(dataset); //output verses of second project OtNtParallelDataSet dataset2(0); //TODO refactor this loop into a separate function if (project2!="") { ustring language2 = settings->projectconfig(project2, false)->language_get(); // Mapping. ustring versification2 = settings->projectconfig(project2, false)->versification_get(); Mapping mapping2(versification2, 0); for (unsigned int i3 = 0; i3 < otntparallels.sections[i].sets[i2].references.size(); i3++) { // Skip if NT book is not to be included. if (bookset.find(otntparallels.sections[i].sets[i2].references[i3].book) == bookset.end()) continue; vector < int >remapped_chapter; vector < int >remapped_verse; mapping2.book_change(otntparallels.sections[i].sets[i2].references[i3].book); mapping2.original_to_me(otntparallels.sections[i].sets[i2].references[i3].chapter, otntparallels.sections[i].sets[i2].references[i3].verse, remapped_chapter, remapped_verse); Reference mapped_reference(otntparallels.sections[i].sets[i2].references[i3].book, remapped_chapter[0], convert_to_string(remapped_verse[0])); ustring verse = mapped_reference.human_readable(language); if (includetext) { verse.append(" "); verse.append(usfm_get_verse_text_only(project_retrieve_verse(project2, mapped_reference.book, mapped_reference.chapter, mapped_reference.verse))); } dataset2.data.push_back(verse); references.push_back(books_id_to_english(mapped_reference.book) + " " + convert_to_string(mapped_reference.chapter) + ":" + mapped_reference.verse); comments.push_back("Parallel"); } datasection.sets.push_back(dataset2); } } data.push_back(datasection); } } CheckParallelPassages::~CheckParallelPassages() { if (progresswindow) delete progresswindow; } bibledit-gtk-4.9/src/check_parallel_passages.h000664 000766 000024 00000003621 12221507151 021632 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_CHECK_PARALLEL_PASSAGES_H #define INCLUDED_CHECK_PARALLEL_PASSAGES_H #include "libraries.h" #include "progresswindow.h" #include "types.h" #include "ot-nt-parallels.h" class CheckOTQuotationsInNT { public: CheckOTQuotationsInNT (const ustring& project, const vector& books, bool includetext); ~CheckOTQuotationsInNT (); vector nt_refs; vector nt_texts; vector ot_refs; vector ot_texts; vector references; vector comments; private: ProgressWindow * progresswindow; }; class CheckParallelPassages { public: CheckParallelPassages (bool nt, const ustring& project, const vector& books, bool includetext, bool gui, const ustring & project2=""); ~CheckParallelPassages (); vector data; vector references; vector comments; private: ProgressWindow * progresswindow; }; #endif bibledit-gtk-4.9/src/check_ref_inventory.cpp000664 000766 000024 00000007647 12221507143 021411 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "check_ref_inventory.h" #include "projectutils.h" #include "settings.h" #include "utilities.h" #include "books.h" #include "checks.h" #include "referenceutils.h" CheckReferenceInventory::CheckReferenceInventory(const ustring & project, const vector < unsigned int >&books, bool includetext, bool gui) /* It makes an inventory of the references in the project. project: project to check. books: books to check; if empty it checks them all. includetext: whether to include the text of the references. gui: show graphical progressbar. */ { // Variables. cancelled = false; // Language. extern Settings *settings; ustring language = settings->projectconfig(project, false)->language_get(); // Get a list of the books to check. If no books were given, take them all. vector < unsigned int >mybooks(books.begin(), books.end()); if (mybooks.empty()) mybooks = project_get_books(project); // GUI. progresswindow = NULL; if (gui) { progresswindow = new ProgressWindow("Producing inventory", true); progresswindow->set_iterate(0, 1, mybooks.size()); } // Check each book. for (unsigned int bk = 0; bk < mybooks.size(); bk++) { if (gui) { progresswindow->iterate(); if (progresswindow->cancel) { cancelled = true; return; } } // Check each chapter. vector < unsigned int >chapters = project_get_chapters(project, mybooks[bk]); for (unsigned int ch = 0; ch < chapters.size(); ch++) { // Check each verse. vector < ustring > verses2 = project_get_verses(project, mybooks[bk], chapters[ch]); for (unsigned int vs = 0; vs < verses2.size(); vs++) { ustring text = project_retrieve_verse(project, mybooks[bk], chapters[ch], verses2[vs]); // Check for references the verse has. if (text_contains_reference(text)) { // Retrieve the references. ReferencesScanner refscanner(language, mybooks[bk], text); if (!refscanner.references.empty()) { // Store the references. Reference verse_ref(mybooks[bk], chapters[ch], verses2[vs]); verses.push_back(verse_ref.human_readable(language)); ustring human_readable_references; for (unsigned int i = 0; i < refscanner.references.size(); i++) { if (i > 0) { if (includetext) human_readable_references.append(" | "); else human_readable_references.append(", "); } human_readable_references.append(refscanner.references[i].human_readable(language)); if (includetext) { human_readable_references.append(" "); ustring text = project_retrieve_verse(project, refscanner.references[i].book, refscanner.references[i].chapter, refscanner.references[i].verse); if (text.empty()) text = ""; human_readable_references.append(text); } } references.push_back(human_readable_references); } } } } } } CheckReferenceInventory::~CheckReferenceInventory() { if (progresswindow) delete progresswindow; } bibledit-gtk-4.9/src/check_ref_inventory.h000664 000766 000024 00000002446 12221507130 021042 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_CHECK_REF_INVENTORY_H #define INCLUDED_CHECK_REF_INVENTORY_H #include "libraries.h" #include "progresswindow.h" class CheckReferenceInventory { public: CheckReferenceInventory (const ustring& project, const vector& books, bool includetext, bool gui); ~CheckReferenceInventory (); vector verses; vector references; bool cancelled; private: ProgressWindow * progresswindow; }; #endif bibledit-gtk-4.9/src/check_repetition.cpp000664 000766 000024 00000012450 12221507145 020670 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "check_repetition.h" #include "projectutils.h" #include "settings.h" #include "stylesheetutils.h" #include "utilities.h" #include "usfmtools.h" #include "books.h" #include "scripturechecks.h" #include "tiny_utilities.h" CheckRepetition::CheckRepetition(const ustring & project, const vector < unsigned int >&books, bool ignorecase, const ustring & only_these, const ustring & ignore_these, bool gui) /* It checks repeating whole words in the text. project: project to check. books: books to check; if empty it checks them all. ignorecase: whether to ignore the case. only_these: if given, filename of the words to only include. ignore_these: if given, filename of the words to ignore. gui: whether to show graphical progressbar. */ { // Variables. cancelled = false; // Get a list of the books to check. If no books were given, take them all. vector < unsigned int >mybooks(books.begin(), books.end()); if (mybooks.empty()) mybooks = project_get_books(project); // Read possible words to only include, or to exclude. set < ustring > onlythese; if (!only_these.empty()) { ReadText rt(only_these, true, false); for (unsigned int i = 0; i < rt.lines.size(); i++) { if (ignorecase) rt.lines[i] = rt.lines[i].casefold(); onlythese.insert(rt.lines[i]); } } set < ustring > ignorethese_set; vector < ustring > ignorethese_list; if (!ignore_these.empty()) { ReadText rt(ignore_these, true, false); for (unsigned int i = 0; i < rt.lines.size(); i++) { if (ignorecase) rt.lines[i] = rt.lines[i].casefold(); ignorethese_set.insert(rt.lines[i]); ignorethese_list.push_back(rt.lines[i]); } ignorethese_list = rt.lines; } // GUI. progresswindow = NULL; if (gui) { progresswindow = new ProgressWindow("Repeating words", true); progresswindow->set_iterate(0, 1, mybooks.size()); } // Check each book in the project. for (unsigned int bk = 0; bk < mybooks.size(); bk++) { if (gui) { progresswindow->iterate(); if (progresswindow->cancel) { cancelled = true; return; } } // Check each chapter in the book. vector < unsigned int >chapters = project_get_chapters(project, mybooks[bk]); for (unsigned int ch = 0; ch < chapters.size(); ch++) { vector < ustring > verses = project_get_verses(project, mybooks[bk], chapters[ch]); // Check each verse in the chapter. for (unsigned int vs = 0; vs < verses.size(); vs++) { ustring line = project_retrieve_verse(project, mybooks[bk], chapters[ch], verses[vs]); // Check the verse. CategorizeLine categorize(line); ustring text(categorize.id); text.append(categorize.intro); text.append(categorize.head); text.append(categorize.chap); text.append(categorize.study); text.append(categorize.note); text.append(categorize.ref); text.append(categorize.verse); ParseWords parsewords(text); ustring previousword; for (unsigned int i = 0; i < parsewords.words.size(); i++) { ustring word = parsewords.words[i]; if (ignorecase) word = word.casefold(); if (word == previousword) { bool print = true; if (!onlythese.empty()) { if (onlythese.find(word) == onlythese.end()) print = false; } if (print) { if (!ignorethese_set.empty()) if (ignorethese_set.find(word) != ignorethese_set.end()) print = false; } // Deal with certain texts between repeating words, so that if these texts // are found in between, this repetition is ignored. if (print) { if (ignorecase) text = text.casefold(); for (unsigned int i2 = 0; i2 < ignorethese_list.size(); i2++) { ustring assembly = word + ignorethese_list[i2] + word; if (text.find(assembly) != string::npos) { print = false; continue; } } } if (print) { ustring message = "Repeated: "; message.append(word); references.push_back(books_id_to_english(mybooks[bk]) + " " + convert_to_string(chapters[ch]) + ":" + verses[vs]); comments.push_back(message); } } previousword = word; } } } } } CheckRepetition::~CheckRepetition() { if (progresswindow) delete progresswindow; } bibledit-gtk-4.9/src/check_repetition.h000664 000766 000024 00000002513 12221507137 020335 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_CHECK_REPETITION_H #define INCLUDED_CHECK_REPETITION_H #include "libraries.h" #include "progresswindow.h" class CheckRepetition { public: CheckRepetition (const ustring& project, const vector& books, bool ignorecase, const ustring& only_these, const ustring& ignore_these, bool gui); ~CheckRepetition (); vector references; vector comments; bool cancelled; private: ProgressWindow * progresswindow; }; #endif bibledit-gtk-4.9/src/check_sentence_structure.cpp000664 000766 000024 00000034200 12221507151 022424 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "check_sentence_structure.h" #include "projectutils.h" #include "progresswindow.h" #include "settings.h" #include "stylesheetutils.h" #include "utilities.h" #include "usfmtools.h" #include "books.h" #include "tiny_utilities.h" CheckSentenceStructure::CheckSentenceStructure(const ustring & project, const vector < unsigned int >&books, bool gui) /* It performs checks of the sentence structure. project: project to check. books: books to check; if empty it checks them all. gui: whether to show graphical progressbar. */ { // Init variables. cancelled = false; // Classify the styles. classify_styles(project); // Get a list of the books to check. If no books were given, take them all. vector < unsigned int >mybooks(books.begin(), books.end()); if (mybooks.empty()) mybooks = project_get_books(project); // GUI. ProgressWindow *progresswindow = NULL; if (gui) { progresswindow = new ProgressWindow("Checking sentence structure", true); progresswindow->set_iterate(0, 1, mybooks.size()); } // Go through each book. for (unsigned int bk = 0; bk < mybooks.size(); bk++) { if (gui) { progresswindow->iterate(); progresswindow->set_text(books_id_to_english(mybooks[bk])); if (progresswindow->cancel) { cancelled = true; break; } } book = mybooks[bk]; // Go through each chapter. vector < unsigned int >chapters = project_get_chapters(project, book); for (unsigned int ch = 0; ch < chapters.size(); ch++) { chapter = chapters[ch]; vector < ustring > lines = project_retrieve_chapter(project, book, chapter); // Assemble the line with all data in it. ustring line; for (unsigned int i = 0; i < lines.size(); i++) { line.append(lines[i]); line.append(" "); } create_blocks(line); } } // Clean up. if (progresswindow) delete progresswindow; } CheckSentenceStructure::~CheckSentenceStructure() { } void CheckSentenceStructure::classify_styles(const ustring & project) // Classifies the markers in the project. { ustring stylesheet = stylesheet_get_actual (); Usfm usfm(stylesheet); for (unsigned int i = 0; i < usfm.styles.size(); i++) { switch (usfm.styles[i].type) { case stIdentifier: case stNotUsedComment: case stNotUsedRunningHeader: { textdeleters.insert(usfm.styles[i].marker); break; } case stStartsParagraph: { switch (usfm.styles[i].subtype) { case ptMainTitle: case ptSubTitle: case ptSectionHeading: { headingstarters.insert(usfm.styles[i].marker); break; } case ptNormalParagraph: { ustring marker = usfm.styles[i].marker; bool poetry = false; // Markers starting with a "q" are poetry. if (g_str_has_prefix(marker.c_str(), "q")) poetry = true; if (g_str_has_prefix(marker.c_str(), "iq")) poetry = true; if (poetry) { markerdeleters.insert(marker); } else { paragraphstarters.insert(marker); } break; } } break; } case stInlineText: { markerdeleters.insert(usfm.styles[i].marker); break; } case stChapterNumber: { textdeleters.insert(usfm.styles[i].marker); break; } case stVerseNumber: { markerdeleters.insert(usfm.styles[i].marker); versemarkers.insert(usfm.styles[i].marker); break; } case stFootEndNote: { switch (usfm.styles[i].subtype) { case fentFootnote: case fentEndnote: { notestarters.insert(usfm.styles[i].marker); break; } case fentStandardContent: case fentContent: case fentContentWithEndmarker: { markerdeleters.insert(usfm.styles[i].marker); break; } case fentParagraph: { paragraphstarters.insert(usfm.styles[i].marker); break; } } break; } case stCrossreference: { switch (usfm.styles[i].subtype) { case ctCrossreference: { notestarters.insert(usfm.styles[i].marker); break; } case ctStandardContent: case ctContent: case ctContentWithEndmarker: { markerdeleters.insert(usfm.styles[i].marker); break; } } break; } case stPeripheral: { textdeleters.insert(usfm.styles[i].marker); break; } case stPicture: { textdeleters.insert(usfm.styles[i].marker); break; } case stPageBreak: { textdeleters.insert(usfm.styles[i].marker); break; } case stTableElement: { switch (usfm.styles[i].subtype) { case tetRow: { markerdeleters.insert(usfm.styles[i].marker); break; } case tetHeading: { headingstarters.insert(usfm.styles[i].marker); break; } case tetCell: { paragraphstarters.insert(usfm.styles[i].marker); break; } } break; } case stWordlistElement: { markerdeleters.insert(usfm.styles[i].marker); break; } } } } void CheckSentenceStructure::create_blocks(ustring & text) // This creates complete units ready for checking. { // Variables for defining the independent blocks of text, and for the verse numbers. ustring block; SentenceStructureType structuretype = sstParagraph; vector < ustring > versenumbers; versenumbers.push_back("0"); vector < size_t > verseoffsets; verseoffsets.push_back(0); // Go through the available text till ready. while (!text.empty()) { // Variables for USFM markers. ustring marker; size_t marker_position; size_t marker_length; bool is_opener; bool marker_found = usfm_search_marker(text, marker, marker_position, marker_length, is_opener); bool processed = false; if (marker_found) { if (marker_position == 0) { if (versemarkers.find(marker) != versemarkers.end()) { // Extract the verse number and offset within the block. ustring verse(text.substr(0, 10)); verse.erase(0, marker_length); size_t pos = verse.find(" "); if (pos != string::npos) { verse = verse.substr(0, pos); versenumbers.push_back(verse); verseoffsets.push_back(block.length()); } } if (textdeleters.find(marker) != textdeleters.end()) { // Handle markers whose text should be deleted from the input text. get_erase_code_till_next_marker(text, marker_position, marker_length, false); processed = true; } else if (headingstarters.find(marker) != headingstarters.end()) { // Handle markers that start a heading. check(structuretype, block, versenumbers, verseoffsets); block.append(get_erase_code_till_next_marker(text, marker_position, marker_length, false)); structuretype = sstHeading; processed = true; } else if (paragraphstarters.find(marker) != paragraphstarters.end()) { // Handle markers that start a normal paragraph. check(structuretype, block, versenumbers, verseoffsets); block.append(get_erase_code_till_next_marker(text, marker_position, marker_length, false)); structuretype = sstParagraph; processed = true; } else if (markerdeleters.find(marker) != markerdeleters.end()) { // Handle markers to be deleted from the text. text.erase(0, marker_length); processed = true; } else if (notestarters.find(marker) != notestarters.end()) { // Handle markers that start a note. text.erase(0, marker_length); if (is_opener) { // Look for marker that closes the note as well. size_t pos = text.find(usfm_get_full_closing_marker(marker)); if (pos != string::npos) { // Extract the note. ustring notetext = text.substr(0, pos); text.erase(0, pos + usfm_get_full_closing_marker(marker).length()); // Update the verse numbering system for this note, taking the current verse. vector < ustring > versenumbers2; if (versenumbers.empty()) { versenumbers2.push_back("0"); } else { ustring verse = versenumbers[versenumbers.size() - 1]; versenumbers2.push_back(verse); } vector < size_t > verseoffsets2; verseoffsets2.push_back(0); // Clean up the note text: Remove the caller marker, trim it, remove all markers from it. notetext.erase(0, 1); notetext = trim(notetext); vector < ustring > allmarkers = usfm_get_all_markers(notetext); for (unsigned int i = 0; i < allmarkers.size(); i++) { ustring opener = usfm_get_full_opening_marker(allmarkers[i]); replace_text(notetext, opener, ""); ustring closer = usfm_get_full_closing_marker(allmarkers[i]); replace_text(notetext, closer, ""); } // Check this note. check(sstNote, notetext, versenumbers2, verseoffsets2); } } processed = true; } } } if (!processed) { // Fall-back processing. block.append(text.substr(0, 1)); text.erase(0, 1); } } if (!block.empty()) { check(structuretype, block, versenumbers, verseoffsets); } } void CheckSentenceStructure::check(SentenceStructureType type, ustring text, vector < ustring > &versenumbers, vector < size_t > &verseoffsets) { // Bail out if there's no text. if (text.empty()) return; // Load text. GtkTextBuffer *buffer = gtk_text_buffer_new(NULL); text.append(" "); gtk_text_buffer_set_text(buffer, text.c_str(), -1); // Iterators. GtkTextIter iter; gtk_text_buffer_get_start_iter(buffer, &iter); // Variables for check: The start of the buffer is supposed to have a capital. // Skip this step if we're checking a note, as notes often start without capitals. bool initial_capital_done = (type == sstNote); // Variables for check: Sentence start and end. bool sentence_started = false; // Go through the whole buffer. do { // Get the character at the iterator. gunichar character = gtk_text_iter_get_char(&iter); // Check: The start of the buffer is supposed to have a capital. if (!initial_capital_done) { if (g_unichar_isalpha(character) || g_unichar_iscntrl(character)) { if (!g_unichar_isupper(character)) { message(versenumbers, verseoffsets, &iter, "The text does not start with a capital"); } initial_capital_done = true; } } // Check: Sentence starts with capital. if (!sentence_started) { if (g_unichar_islower(character)) { message(versenumbers, verseoffsets, &iter, "The text does not start with a capital"); } } // Check: Start / end sentence. if (gtk_text_iter_starts_sentence(&iter)) { if (sentence_started) { message(versenumbers, verseoffsets, &iter, "A new sentence starts within a sentence"); } sentence_started = true; } if (gtk_text_iter_ends_sentence(&iter)) { if (!sentence_started) { message(versenumbers, verseoffsets, &iter, "A sentence ends where none was started"); } sentence_started = false; } } while (gtk_text_iter_forward_char(&iter)); // Check: That a heading does not end the sentence. if (type == sstHeading) { if (!sentence_started) { message(versenumbers, verseoffsets, &iter, "A heading usually starts a sentence but does not finish it"); } } // Free buffer. g_object_unref(G_OBJECT(buffer)); // Prepare input for next check. text.clear(); ustring lastverse = versenumbers[versenumbers.size() - 1]; versenumbers.clear(); versenumbers.push_back(lastverse); verseoffsets.clear(); verseoffsets.push_back(0); } void CheckSentenceStructure::message(vector < ustring > &versenumbers, vector < size_t > &verseoffsets, GtkTextIter * iter, const ustring & message) { // Get the verse. ustring verse = "0"; size_t offset = gtk_text_iter_get_offset(iter); for (unsigned int i = 0; i < versenumbers.size(); i++) { if (offset >= verseoffsets[i]) { verse = versenumbers[i]; } } // Assemble the reference. ustring reference = books_id_to_english(book) + " " + convert_to_string(chapter) + ":" + verse; // Get the fragment of the text. GtkTextIter iter1 = *iter; GtkTextIter iter2 = *iter; gtk_text_iter_backward_word_starts(&iter1, 2); gtk_text_iter_forward_word_ends(&iter2, 2); ustring text = gtk_text_iter_get_text(&iter1, &iter2); // Assemble the comment. ustring comment(text + " - " + message); // Bail out of the message is already there. for (unsigned int i = 0; i < references.size(); i++) if (reference == references[i]) if (message == messages[i]) return; // Store the message. references.push_back(reference); comments.push_back(comment); messages.push_back(message); } bibledit-gtk-4.9/src/check_sentence_structure.h000664 000766 000024 00000003465 12221507143 022103 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_CHECK_SENTENCE_STRUCTURE_H #define INCLUDED_CHECK_SENTENCE_STRUCTURE_H #include "libraries.h" #include enum SentenceStructureType { sstHeading, sstParagraph, sstNote }; class CheckSentenceStructure { public: CheckSentenceStructure (const ustring& project, const vector& books, bool gui); ~CheckSentenceStructure (); vector references; vector comments; bool cancelled; private: unsigned int book; unsigned int chapter; void classify_styles (const ustring& project); void create_blocks (ustring& text); void check (SentenceStructureType type, ustring text, vector & versenumbers, vector & verseoffsets); void message (vector & versenumbers, vector & verseoffsets, GtkTextIter * iter, const ustring& message); vector messages; set textdeleters; set headingstarters; set paragraphstarters; set versemarkers; set markerdeleters; set notestarters; }; #endif bibledit-gtk-4.9/src/check_unwanted_patterns.cpp000664 000766 000024 00000007326 12221507140 022254 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "check_unwanted_patterns.h" #include "projectutils.h" #include "settings.h" #include "stylesheetutils.h" #include "utilities.h" #include "usfmtools.h" #include "books.h" #include "scripturechecks.h" #include "tiny_utilities.h" CheckUnwantedPatterns::CheckUnwantedPatterns(const ustring & project, const vector < unsigned int >&books, ustring patternsfile, bool gui) /* It checks for unwanted patterns in the text. project: project to check. books: books to check; if empty it checks them all. patternsfile: file that contains the patterns to look for. If empty, it takes the project's file with the patterns. gui: whether to show graphical progressbar. */ { // Variables. cancelled = false; // Get a list of the books to check. If no books were given, take them all. vector < unsigned int >mybooks(books.begin(), books.end()); if (mybooks.empty()) mybooks = project_get_books(project); // Read the patterns to look for. if (patternsfile.empty()) patternsfile = checks_unwanted_patterns_get_filename(project); vector < ustring > patterns; ReadText rt(patternsfile, true, false); for (unsigned int i = 0; i < rt.lines.size(); i++) patterns.push_back(rt.lines[i]); // GUI. progresswindow = NULL; if (gui) { progresswindow = new ProgressWindow("Looking for unwanted patterns", true); progresswindow->set_iterate(0, 1, mybooks.size()); } // Check each book in the project. for (unsigned int bk = 0; bk < mybooks.size(); bk++) { if (gui) { progresswindow->iterate(); if (progresswindow->cancel) { cancelled = true; return; } } // Check each chapter in the book. vector < unsigned int >chapters = project_get_chapters(project, mybooks[bk]); for (unsigned int ch = 0; ch < chapters.size(); ch++) { vector < ustring > verses = project_get_verses(project, mybooks[bk], chapters[ch]); // Check each verse in the chapter. for (unsigned int vs = 0; vs < verses.size(); vs++) { ustring line = project_retrieve_verse(project, mybooks[bk], chapters[ch], verses[vs]); // Check the verse. CategorizeLine categorize(line); ustring text(categorize.id); text.append(categorize.intro); text.append(categorize.head); text.append(categorize.chap); text.append(categorize.study); text.append(categorize.note); text.append(categorize.ref); text.append(categorize.verse); for (unsigned int i = 0; i < patterns.size(); i++) { if (text.find(patterns[i]) != string::npos) { ustring message = "Unwanted pattern "; message.append(patterns[i]); references.push_back(books_id_to_english(mybooks[bk]) + " " + convert_to_string(chapters[ch]) + ":" + verses[vs]); comments.push_back(message); } } } } } } CheckUnwantedPatterns::~CheckUnwantedPatterns() { // Clean up. if (progresswindow) delete progresswindow; } bibledit-gtk-4.9/src/check_unwanted_patterns.h000664 000766 000024 00000002444 12221507137 021723 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_CHECK_UNWANTED_PATTERNS_H #define INCLUDED_CHECK_UNWANTED_PATTERNS_H #include "libraries.h" #include "progresswindow.h" class CheckUnwantedPatterns { public: CheckUnwantedPatterns (const ustring& project, const vector& books, ustring patternsfile, bool gui); ~CheckUnwantedPatterns (); vector references; vector comments; bool cancelled; private: ProgressWindow * progresswindow; }; #endif bibledit-gtk-4.9/src/check_unwanted_words.cpp000664 000766 000024 00000007446 12221507151 021557 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "check_unwanted_words.h" #include "projectutils.h" #include "settings.h" #include "stylesheetutils.h" #include "utilities.h" #include "usfmtools.h" #include "books.h" #include "scripturechecks.h" #include "tiny_utilities.h" CheckUnwantedWords::CheckUnwantedWords(const ustring & project, const vector < unsigned int >&books, ustring wordsfile, bool gui) /* It checks for unwanted whole words in the text. project: project to check. books: books to check; if empty it checks them all. wordsfile: file that contains the whole words to look for. If empty, it takes the project's file with the patterns. gui: whether to show graphical progressbar. */ { // Variables. cancelled = false; // Get a list of the books to check. If no books were given, take them all. vector < unsigned int >mybooks(books.begin(), books.end()); if (mybooks.empty()) mybooks = project_get_books(project); // Read the words to look for. if (wordsfile.empty()) wordsfile = checks_unwanted_words_get_filename(project); vector < ustring > words; ReadText rt(wordsfile, true, false); for (unsigned int i = 0; i < rt.lines.size(); i++) words.push_back(rt.lines[i]); // GUI. progresswindow = NULL; if (gui) { progresswindow = new ProgressWindow("Looking for unwanted words", true); progresswindow->set_iterate(0, 1, mybooks.size()); } // Check each book in the project. for (unsigned int bk = 0; bk < mybooks.size(); bk++) { if (gui) { progresswindow->iterate(); if (progresswindow->cancel) { cancelled = true; return; } } // Check each chapter in the book. vector < unsigned int >chapters = project_get_chapters(project, mybooks[bk]); for (unsigned int ch = 0; ch < chapters.size(); ch++) { vector < ustring > verses = project_get_verses(project, mybooks[bk], chapters[ch]); // Check each verse in the chapter. for (unsigned int vs = 0; vs < verses.size(); vs++) { ustring line = project_retrieve_verse(project, mybooks[bk], chapters[ch], verses[vs]); // Check the verse. CategorizeLine categorize(line); ustring text(categorize.id); text.append(categorize.intro); text.append(categorize.head); text.append(categorize.chap); text.append(categorize.study); text.append(categorize.note); text.append(categorize.ref); text.append(categorize.verse); ParseWords parsewords(text); for (unsigned int i = 0; i < parsewords.words.size(); i++) { for (unsigned int i2 = 0; i2 < words.size(); i2++) { if (parsewords.words[i] == words[i2]) { ustring message = "Unwanted word: "; message.append(words[i2]); references.push_back(books_id_to_english(mybooks[bk]) + " " + convert_to_string(chapters[ch]) + ":" + verses[vs]); comments.push_back(message); } } } } } } } CheckUnwantedWords::~CheckUnwantedWords() { // Clean up. if (progresswindow) delete progresswindow; } bibledit-gtk-4.9/src/check_unwanted_words.h000664 000766 000024 00000002411 12221507143 021210 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_CHECK_UNWANTED_WORDS_H #define INCLUDED_CHECK_UNWANTED_WORDS_H #include "libraries.h" #include "progresswindow.h" class CheckUnwantedWords { public: CheckUnwantedWords (const ustring& project, const vector& books, ustring wordsfile, bool gui); ~CheckUnwantedWords (); vector references; vector comments; bool cancelled; private: ProgressWindow * progresswindow; }; #endif bibledit-gtk-4.9/src/check_validate_refs.cpp000664 000766 000024 00000013324 12221507143 021315 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "check_validate_refs.h" #include "projectutils.h" #include "settings.h" #include "utilities.h" #include "books.h" #include "reference.h" #include "referenceutils.h" #include "versification.h" #include "tiny_utilities.h" CheckValidateReferences::CheckValidateReferences(const ustring & project, const vector < unsigned int >&books, bool gui) /* It checks on the correctness and existence of the references found in the text and in the notes. project: project to check. books: books to check; if empty it checks them all. gui: whether to show graphical progressbar. */ { // The variables and settings. cancelled = false; myproject = project; extern Settings *settings; ProjectConfiguration *projectconfig = settings->projectconfig(project); versification = projectconfig->versification_get(); language = projectconfig->language_get(); // Get a list of the books to check. If no books were given, take them all. vector < unsigned int >mybooks(books.begin(), books.end()); if (mybooks.empty()) mybooks = project_get_books(project); // GUI. progresswindow = NULL; if (gui) { progresswindow = new ProgressWindow("Validating references", true); progresswindow->set_iterate(0, 1, mybooks.size()); } // Go through each book. for (unsigned int bk = 0; bk < mybooks.size(); bk++) { if (gui) { progresswindow->iterate(); if (progresswindow->cancel) { cancelled = true; return; } } book = mybooks[bk]; // Go through each chapter. vector < unsigned int >chapters = project_get_chapters(project, book); for (unsigned int ch = 0; ch < chapters.size(); ch++) { chapter = chapters[ch]; // Go through each verse. vector < ustring > verses = project_get_verses(project, book, chapter); for (unsigned int vs = 0; vs < verses.size(); vs++) { verse = verses[vs]; // Check the text. ustring line = project_retrieve_verse(project, book, chapter, verse); check(line); } } } } CheckValidateReferences::~CheckValidateReferences() { // Clean up. if (progresswindow) delete progresswindow; } void CheckValidateReferences::check(const ustring & text) // Do the actual check of one verse. { // Bail out if the verse is empty. if (text.empty()) return; // Extract the references and check them all. ReferencesScanner refscanner(language, book, text); for (unsigned int i = 0; i < references.size(); i++) { // Check whether the reference fits within the limits of the versification system. bool reference_fits = true; unsigned int highest_chapter = 0; vector < unsigned int >chapters = versification_get_chapters(versification, refscanner.references[i].book); if (!chapters.empty()) highest_chapter = chapters[chapters.size() - 1]; if (refscanner.references[i].chapter > highest_chapter) reference_fits = false; unsigned int last_verse = convert_to_int(versification_get_last_verse(versification, refscanner.references[i].book, refscanner.references[i].chapter)); unsigned int this_verse = convert_to_int(refscanner.references[i].verse); if (this_verse > last_verse) reference_fits = false; if (!reference_fits) { message(refscanner.references[i].human_readable(language) + " does not fit in the versification system"); } // Check whether the reference exists in the project. if (reference_fits) { ustring versetext = project_retrieve_verse(myproject, refscanner.references[i].book, refscanner.references[i].chapter, refscanner.references[i].verse); if (versetext.empty()) { message(refscanner.references[i].human_readable(language) + " contains no text"); } } } // Look for chapter/verse pairs by pattern, and check on these. ustring mytext(text); while (mytext.length() > 5) { if (text_starts_chapter_verse(mytext)) { // This text starts a chapter/verse string. // Look for the dot or colon. size_t position = mytext.find_first_of(".:"); if (position != string::npos) { unsigned int mychapter = convert_to_int(mytext.substr(0, position)); mytext.erase(0, ++position); ustring myverse = number_in_string(mytext); mytext.erase(0, myverse.length()); bool referencefound = false; for (unsigned int i = 0; i < references.size(); i++) { if (refscanner.references[i].chapter == mychapter) if (refscanner.references[i].verse == myverse) referencefound = true; } if (!referencefound) { message("Unrecognized chapter " + convert_to_string(mychapter) + " and verse " + myverse); } } mytext.erase(0, 3); } else { // No chapter/verse string: erase one character and try again. mytext.erase(0, 1); } } } void CheckValidateReferences::message(const ustring & message) { references.push_back(books_id_to_english(book) + " " + convert_to_string(chapter) + ":" + verse); comments.push_back(message); } bibledit-gtk-4.9/src/check_validate_refs.h000664 000766 000024 00000002630 12221507147 020764 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_CHECK_VALIDATE_REFERENCES_H #define INCLUDED_CHECK_VALIDATE_REFERENCES_H #include "libraries.h" #include "progresswindow.h" class CheckValidateReferences { public: CheckValidateReferences (const ustring& project, const vector& books, bool gui); ~CheckValidateReferences (); vector references; vector comments; bool cancelled; private: ustring myproject; ustring versification; ustring language; unsigned int book; unsigned int chapter; ustring verse; void check (const ustring& text); void message (const ustring& message); ProgressWindow * progresswindow; }; #endif bibledit-gtk-4.9/src/check_validate_usfm.cpp000664 000766 000024 00000052004 12221507137 021331 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "check_validate_usfm.h" #include "projectutils.h" #include "settings.h" #include "stylesheetutils.h" #include "utilities.h" #include "usfmtools.h" #include "books.h" #include "tiny_utilities.h" CheckValidateUsfm::CheckValidateUsfm(const ustring & project, const vector < unsigned int >&books, bool gui, bool checksheet) /* It performs checks related to the USFM standard. project: project to check. books: books to check; if empty it checks them all. gui: whether to show graphical progressbar. checksheet: check whether markers are in the stylesheet of the project. */ { // Init variables. cancelled = false; mychecksheet = checksheet; // Get a list of the books to check. If no books were given, take them all. vector < unsigned int >mybooks(books.begin(), books.end()); if (mybooks.empty()) mybooks = project_get_books(project); // Get all styles in the attached stylesheet. vector styless = stylesheet_get_markers(stylesheet_get_actual (), NULL); for (unsigned int i = 0; i < styless.size(); i++) styles.insert(styless[i]); // GUI. progresswindow = NULL; if (gui) { progresswindow = new ProgressWindow("Validating markers", true); progresswindow->set_iterate(0, 1, mybooks.size()); } // Check each book. for (unsigned int bk = 0; bk < mybooks.size(); bk++) { if (gui) { progresswindow->iterate(); progresswindow->set_text(books_id_to_english(book)); if (progresswindow->cancel) { cancelled = true; return; } } book = mybooks[bk]; // Check each chapter. vector chapters = project_get_chapters(project, book); for (unsigned int ch = 0; ch < chapters.size(); ch++) { chapter = chapters[ch]; vector verses = project_get_verses(project, book, chapter); // Check each verse. for (unsigned int vs = 0; vs < verses.size(); vs++) { verse = verses[vs]; ustring line = project_retrieve_verse(project, book, chapter, verse); // Check each line. ParseLine parseline(line); for (unsigned int ln = 0; ln < parseline.lines.size(); ln++) { check(parseline.lines[ln]); } } } } } CheckValidateUsfm::~CheckValidateUsfm() { if (progresswindow) delete progresswindow; } void CheckValidateUsfm::check(const ustring & text) // Do the actual check of one verse. { // Extract the marker, and deal with it. ustring utext = trim(text); if (utext.empty()) return; ustring line = utext; ustring marker = usfm_extract_marker_within_line(line); if (marker.empty()) { // No marker found. message("Line without USFM"); } while (!marker.empty()) { if (marker == "id") { // Is the line long enough? if (line.length() < 3) { message("ID line is too short: " + line); } else { ustring id = line.substr(0, 3); unsigned int myid = books_paratext_to_id(id); if (myid == 0) message("Unknown id " + id); if (id != upperCase(id)) message("Non-uppercase id code"); } } else if (marker == "c") { } else if (marker == "v") { // Is there a space after the verse number? // Check it by extracting the text will the first space, and see if any unusual characters are in it. // It should cover things like \v 10a-11b or \v 10,11 size_t position = line.find(" "); position = CLAMP(position, 0, line.length()); ustring verse_number = line.substr (0, position); for (unsigned int i = 0; i < verse_number.length(); i++) { ustring character = verse_number.substr (i, 1); if (number_in_string (character) != character) { if ((character != "a") || (character != "b") || (character != "-") || (character != ",")) { message ("Unusual character in verse number " + verse_number); break; } } } } else if (marker == "add") { check_on_endmarker(line, marker, false); } else if (marker == "bdit") { check_on_endmarker(line, marker, false); deprecated_marker(marker); } else if (marker == "bd") { check_on_endmarker(line, marker, false); deprecated_marker(marker); } else if (marker == "bk") { check_on_endmarker(line, marker, false); } else if (marker == "b") { } else if (marker == "ca") { } else if (marker == "cd") { } else if (marker == "cls") { } else if (marker == "cl") { } else if (marker == "conc") { } else if (marker == "cov") { } else if (marker == "cp") { } else if (marker == "dc") { check_on_endmarker(line, marker, false); } else if (marker == "d") { } else if (marker == "em") { check_on_endmarker(line, marker, false); deprecated_marker(marker); } else if (marker == "fdc") { check_on_endmarker(line, marker, true); } else if (marker == "fe") { check_on_endmarker(line, marker, false); } else if (marker == "fig") { check_on_endmarker(line, marker, false); } else if (marker == "fk") { check_on_endmarker(line, marker, true); } else if (marker == "fl") { check_on_endmarker(line, marker, true); } else if (marker == "fm") { check_on_endmarker(line, marker, false); } else if (marker == "fp") { } else if (marker == "fqa") { check_on_endmarker(line, marker, true); } else if (marker == "fq") { check_on_endmarker(line, marker, true); } else if (marker == "fr") { check_on_endmarker(line, marker, true); } else if (marker == "ft") { check_on_endmarker(line, marker, true); } else if (marker == "fv") { check_on_endmarker(line, marker, true); } else if (marker == "f") { check_on_endmarker(line, marker, false); } else if (marker == "fb") { // todo rogue fix - this check needs to be based on stylesheet, not hard coded. // A task was opened for this to be done. check_on_endmarker(line, marker, false); } else if (marker == "fx") { // todo rogue fix - this check needs to be based on stylesheet, not hard coded. // A task was opened for this to be done. check_on_endmarker(line, marker, false); } else if (marker == "glo") { } else if (marker == "h1") { } else if (marker == "h2") { } else if (marker == "h3") { } else if (marker == "h") { } else if (marker == "ib") { } else if (marker == "ide") { } else if (marker == "idx") { } else if (marker == "ie") { } else if (marker == "iex") { } else if (marker == "imi") { } else if (marker == "imq") { } else if (marker == "imt1") { } else if (marker == "imt2") { } else if (marker == "imt3") { } else if (marker == "imt4") { } else if (marker == "imte") { } else if (marker == "imt") { } else if (marker == "im") { } else if (marker == "intro") { } else if (marker == "io1") { } else if (marker == "io2") { } else if (marker == "io3") { } else if (marker == "io4") { } else if (marker == "ior") { check_on_endmarker(line, marker, false); } else if (marker == "iot") { } else if (marker == "io") { } else if (marker == "ipi") { } else if (marker == "ipq") { } else if (marker == "ipr") { } else if (marker == "ip") { } else if (marker == "iq1") { } else if (marker == "iq2") { } else if (marker == "iq3") { } else if (marker == "iq") { } else if (marker == "is1") { } else if (marker == "is2") { } else if (marker == "is") { } else if (marker == "it") { check_on_endmarker(line, marker, false); deprecated_marker(marker); } else if (marker == "k1") { } else if (marker == "k2") { } else if (marker == "k") { check_on_endmarker(line, marker, false); } else if (marker == "li1") { } else if (marker == "li2") { } else if (marker == "li3") { } else if (marker == "li4") { } else if (marker == "lit") { } else if (marker == "li") { } else if (marker == "maps") { } else if (marker == "mi") { } else if (marker == "mr") { } else if (marker == "ms1") { } else if (marker == "ms2") { } else if (marker == "ms") { } else if (marker == "mt1") { } else if (marker == "mt2") { } else if (marker == "mt3") { } else if (marker == "mt4") { } else if (marker == "mte1") { } else if (marker == "mte2") { } else if (marker == "mte") { } else if (marker == "mt") { } else if (marker == "m") { } else if (marker == "nb") { } else if (marker == "nd") { check_on_endmarker(line, marker, false); } else if (marker == "ndx") { check_on_endmarker(line, marker, false); } else if (marker == "no") { check_on_endmarker(line, marker, false); deprecated_marker(marker); } else if (marker == "ord") { check_on_endmarker(line, marker, false); } else if (marker == "p1") { } else if (marker == "p2") { } else if (marker == "pb") { } else if (marker == "pc") { } else if (marker == "pi1") { } else if (marker == "pi2") { } else if (marker == "pi3") { } else if (marker == "pi") { } else if (marker == "pmc") { } else if (marker == "pmo") { } else if (marker == "pmr") { } else if (marker == "pm") { } else if (marker == "pn") { check_on_endmarker(line, marker, false); } else if (marker == "pref") { } else if (marker == "pro") { check_on_endmarker(line, marker, false); } else if (marker == "pubinfo") { } else if (marker == "pub") { } else if (marker == "p") { } else if (marker == "q1") { } else if (marker == "q2") { } else if (marker == "q3") { } else if (marker == "qac") { check_on_endmarker(line, marker, false); } else if (marker == "qa") { } else if (marker == "qc") { } else if (marker == "qm1") { } else if (marker == "qm2") { } else if (marker == "qm3") { } else if (marker == "qm") { } else if (marker == "qr") { } else if (marker == "qs") { } else if (marker == "qt") { check_on_endmarker(line, marker, false); } else if (marker == "q") { } else if (marker == "rem") { } else if (marker == "restore") { } else if (marker == "r") { } else if (marker == "rq") { } else if (marker == "s1") { } else if (marker == "s2") { } else if (marker == "s3") { } else if (marker == "s4") { } else if (marker == "sc") { check_on_endmarker(line, marker, false); deprecated_marker(marker); } else if (marker == "sig") { check_on_endmarker(line, marker, false); } else if (marker == "sls") { check_on_endmarker(line, marker, false); } else if (marker == "spine") { } else if (marker == "sp") { } else if (marker == "sr") { } else if (marker == "s") { } else if (marker == "tc1") { } else if (marker == "tc2") { } else if (marker == "tc3") { } else if (marker == "tc4") { } else if (marker == "tcr1") { } else if (marker == "tcr2") { } else if (marker == "tcr3") { } else if (marker == "tcr4") { } else if (marker == "th1") { } else if (marker == "th2") { } else if (marker == "th3") { } else if (marker == "th4") { } else if (marker == "thr1") { } else if (marker == "thr2") { } else if (marker == "thr3") { } else if (marker == "thr4") { } else if (marker == "tl") { check_on_endmarker(line, marker, false); } else if (marker == "toc1") { } else if (marker == "toc2") { } else if (marker == "toc3") { } else if (marker == "toc") { } else if (marker == "tr") { } else if (marker == "va") { check_on_endmarker(line, marker, false); } else if (marker == "vp") { check_on_endmarker(line, marker, false); } else if (marker == "wg") { check_on_endmarker(line, marker, false); } else if (marker == "wh") { check_on_endmarker(line, marker, false); } else if (marker == "wj") { check_on_endmarker(line, marker, false); } else if (marker == "w") { check_on_endmarker(line, marker, false); } else if (marker == "xdc") { check_on_endmarker(line, marker, true); } else if (marker == "xk") { check_on_endmarker(line, marker, true); } else if (marker == "xo") { check_on_endmarker(line, marker, true); } else if (marker == "xq") { check_on_endmarker(line, marker, true); } else if (marker == "xt") { check_on_endmarker(line, marker, true); } else if (marker == "x") { check_on_endmarker(line, marker, false); } else if (marker.find("*") != string::npos) { message("Unmatched end marker " + marker); } else { message("Unknown USFM " + marker); } // Optionally check whether this marker is in the stylesheet. if (mychecksheet) { if (styles.find(marker) == styles.end()) { message("Marker " + marker + " not in stylesheet"); } } // Extract any next marker in this line. marker = usfm_extract_marker_within_line(line); } // Deal with accidentally entered forward slashes instead of backslashes. line = utext; marker = usfm_extract_marker_with_forwardslash(line); while (!marker.empty()) { ustring originalmarker(marker); size_t pos = marker.find("*"); if (pos != string::npos) { marker.erase(pos, 1); } if ((marker == "id") || (marker == "c") || (marker == "v") || (marker == "add") || (marker == "bdit") || (marker == "bd") || (marker == "bk") || (marker == "b") || (marker == "ca") || (marker == "cd") || (marker == "cls") || (marker == "cl") || (marker == "conc") || (marker == "cov") || (marker == "cp") || (marker == "dc") || (marker == "d") || (marker == "em") || (marker == "fdc") || (marker == "fe") || (marker == "fig") || (marker == "fk") || (marker == "fl") || (marker == "fm") || (marker == "fp") || (marker == "fqa") || (marker == "fq") || (marker == "fr") || (marker == "ft") || (marker == "fv") || (marker == "f") || (marker == "glo") || (marker == "h1") || (marker == "h2") || (marker == "h3") || (marker == "h") || (marker == "ib") || (marker == "ide") || (marker == "idx") || (marker == "ie") || (marker == "iex") || (marker == "imi") || (marker == "imq") || (marker == "imt1") || (marker == "imt2") || (marker == "imt3") || (marker == "imt4") || (marker == "imte") || (marker == "imt") || (marker == "im") || (marker == "intro") || (marker == "io1") || (marker == "io2") || (marker == "io3") || (marker == "io4") || (marker == "ior") || (marker == "iot") || (marker == "io") || (marker == "ipi") || (marker == "ipq") || (marker == "ipr") || (marker == "ip") || (marker == "iq1") || (marker == "iq2") || (marker == "iq3") || (marker == "iq") || (marker == "is1") || (marker == "is2") || (marker == "is") || (marker == "it") || (marker == "k1") || (marker == "k2") || (marker == "k") || (marker == "li1") || (marker == "li2") || (marker == "li3") || (marker == "li4") || (marker == "lit") || (marker == "li") || (marker == "maps") || (marker == "mi") || (marker == "mr") || (marker == "ms1") || (marker == "ms2") || (marker == "ms") || (marker == "mt1") || (marker == "mt2") || (marker == "mt3") || (marker == "mt4") || (marker == "mte1") || (marker == "mte2") || (marker == "mte") || (marker == "mt") || (marker == "m") || (marker == "nb") || (marker == "nd") || (marker == "ndx") || (marker == "no") || (marker == "ord") || (marker == "p1") || (marker == "p2") || (marker == "pb") || (marker == "pc") || (marker == "pi1") || (marker == "pi2") || (marker == "pi3") || (marker == "pi") || (marker == "pmc") || (marker == "pmo") || (marker == "pmr") || (marker == "pm") || (marker == "pn") || (marker == "pref") || (marker == "pro") || (marker == "pubinfo") || (marker == "pub") || (marker == "p") || (marker == "q1") || (marker == "q2") || (marker == "q3") || (marker == "qac") || (marker == "qa") || (marker == "qc") || (marker == "qm1") || (marker == "qm2") || (marker == "qm3") || (marker == "qm") || (marker == "qr") || (marker == "qs") || (marker == "qt") || (marker == "q") || (marker == "rem") || (marker == "restore") || (marker == "r") || (marker == "rq") || (marker == "s1") || (marker == "s2") || (marker == "s3") || (marker == "s4") || (marker == "sc") || (marker == "sig") || (marker == "sls") || (marker == "spine") || (marker == "sp") || (marker == "sr") || (marker == "s") || (marker == "tc1") || (marker == "tc2") || (marker == "tc3") || (marker == "tc4") || (marker == "tcr1") || (marker == "tcr2") || (marker == "tcr3") || (marker == "tcr4") || (marker == "th1") || (marker == "th2") || (marker == "th3") || (marker == "th4") || (marker == "thr1") || (marker == "thr2") || (marker == "thr3") || (marker == "thr4") || (marker == "tl") || (marker == "toc1") || (marker == "toc2") || (marker == "toc3") || (marker == "toc") || (marker == "tr") || (marker == "va") || (marker == "vp") || (marker == "wg") || (marker == "wh") || (marker == "wj") || (marker == "w") || (marker == "xdc") || (marker == "xk") || (marker == "xo") || (marker == "xq") || (marker == "xt") || (marker == "x") ) { message("Normal slash for /" + originalmarker); } // Extract any next marker in this line. marker = usfm_extract_marker_with_forwardslash(line); } // Check for widow backslashes. line = utext + " "; if ((line.find("\\ ") != string::npos) || (line == "\\")) { message("Widow backslash"); } } void CheckValidateUsfm::check_on_endmarker(ustring & line, const ustring & marker, bool optional) // This test is ran by any marker that needs an endmarker. // It checks on that, and if found, removes it from the line, // and if not found, gives a message. // If the endmarker is "optional" no message will be given. { // Look for the endmarker. ustring endmarker; endmarker = "\\" + marker + "*"; size_t endmarkerposition; endmarkerposition = line.find(endmarker); if (endmarkerposition != string::npos) { // Found: remove it from the line. line.erase(endmarkerposition, endmarker.length()); } else { // Not found: Error message. // No error message if the endmarker is optional. if (!optional) { message("Endmarker " + endmarker + " not found"); } } } void CheckValidateUsfm::deprecated_marker(const ustring & marker) { message("Deprecated marker " + marker); } ustring CheckValidateUsfm::usfm_extract_marker_with_forwardslash(ustring & line) // Returns the usfm marker from the line, but only if it starts with a forward slash { ustring returnvalue; line = trim(line); size_t offposition; offposition = line.find("/"); if (offposition != string::npos) { line.erase(0, offposition); size_t endposition; endposition = line.find_first_of(" *", 1); if (endposition != string::npos) { returnvalue = line.substr(0, ++endposition); line.erase(0, endposition); } else { returnvalue = line; line.clear(); } } if (returnvalue.length() > 0) returnvalue.erase(0, 1); // Remove slash. return trim(returnvalue); } void CheckValidateUsfm::message(const ustring & message) { references.push_back(books_id_to_english(book) + " " + convert_to_string(chapter) + ":" + verse); comments.push_back(message); } bibledit-gtk-4.9/src/check_validate_usfm.h000664 000766 000024 00000003173 12221507150 020774 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_CHECK_VALIDATE_USFM_H #define INCLUDED_CHECK_VALIDATE_USFM_H #include "libraries.h" #include "progresswindow.h" class CheckValidateUsfm { public: CheckValidateUsfm (const ustring& project, const vector& books, bool gui, bool checksheet); ~CheckValidateUsfm (); vector references; vector comments; bool cancelled; private: unsigned int book; unsigned int chapter; ustring verse; bool mychecksheet; set styles; void check (const ustring& text); void deprecated_marker (const ustring& marker); ustring usfm_extract_marker_with_forwardslash (ustring & line); void check_on_endmarker (ustring& line, const ustring& marker, bool optional); void message (const ustring& message); ProgressWindow * progresswindow; }; #endif bibledit-gtk-4.9/src/checks.cpp000644 000766 000024 00000030321 12453001367 016606 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "checks.h" #include "directories.h" #include "gwrappers.h" #include "xmlutils.h" #include "settings.h" #include "bible.h" #include "style.h" #include "tiny_utilities.h" #include "utilities.h" #include "gtkwrappers.h" void checks_output_references_comments(const vector < ustring > &references, const vector < ustring > &comments) // Outputs the results of check to stdout. { for (unsigned int i = 0; i < references.size(); i++) { ustring line = references[i] + " " + comments[i] + "\n"; if (write(1, line.c_str(), strlen(line.c_str()))) ; } } void checks_display_references_comments(vector < ustring > &references, vector < ustring > &comments, WindowReferences * references_window) // Displays the results of the checks to the user. { vector < Reference > refs; for (unsigned int i = 0; i < references.size(); i++) { Reference ref(0); reference_discover(0, 0, "", references[i], ref.book, ref.chapter, ref.verse); refs.push_back(ref); } extern Settings *settings; references_window->set (refs, settings->genconfig.project_get(), &comments); } DisplayCheckingResults::DisplayCheckingResults(const ustring & title) { // Opening html code. start(title); } void DisplayCheckingResults::word_inventory(const vector < ustring > &words, const vector < unsigned int >&count, int total, int unique, int filteredtotal, int filteredunique, int excludelimit) { ustring line; // Heading and information. heading(2, "Word Inventory"); paragraph("Total word count: " + convert_to_string(total)); paragraph("Unique word count: " + convert_to_string(unique)); if (filteredtotal != total) { paragraph("Words with a count of " + convert_to_string(excludelimit) + " and up were filtered out."); paragraph("Filtered total word count: " + convert_to_string(filteredtotal)); paragraph("Filtered unique word count: " + convert_to_string(filteredunique)); } paragraph("Click on a word to see the places where it occurs."); // Open the columns. open_table(); open_table_column(); add_table_cell("Word", true, false); add_table_cell("Count", true, true); close_table_column(); // Add the data. for (unsigned int i = 0; i < words.size(); i++) { open_table_column(); line = search_whole_words(words[i], words[i]); add_table_cell(line, false, false, false); add_table_cell(convert_to_string(count[i]), false, true); close_table_column(); } // Close everything. close_table(); finalize(); // Write data and display it. ustring outputfilename; outputfilename = gw_build_filename(Directories->get_temp(), "wordinventory.html"); write_lines(outputfilename, html); gtkw_show_uri (outputfilename); } void DisplayCheckingResults::usfm_count(const vector < ustring > &usfms, const vector < unsigned int >&count, const ustring & stylesheet) { ustring line; // Heading and information. heading(2, "Marker Count"); // Open the columns. open_table(); open_table_column(); add_table_cell("Marker", true, false); add_table_cell("Count", true, true); add_table_cell("Description", true, false); close_table_column(); // Add the data. for (unsigned int i = 0; i < usfms.size(); i++) { open_table_column(); add_table_cell(usfms[i], false, false); add_table_cell(convert_to_string(count[i]), false, true); Style style(stylesheet, usfms[i], false); add_table_cell(style.name, false, false); close_table_column(); } // Close everything. close_table(); finalize(); // Write data and display it. ustring outputfilename; outputfilename = gw_build_filename(Directories->get_temp(), "usfmcount.html"); write_lines(outputfilename, html); gtkw_show_uri (outputfilename); } void DisplayCheckingResults::character_count(const vector < ustring > &chars, const vector < unsigned int >&count) { ustring line; // Heading and information. heading(2, "Character Count"); // Open the columns. open_table(); open_table_column(); add_table_cell("Character", true, false); add_table_cell("Decimal", true, false); add_table_cell("Hexadecimal", true, false); add_table_cell("Count", true, true); close_table_column(); // Add the data. for (unsigned int i = 0; i < chars.size(); i++) { open_table_column(); add_table_cell(chars[i], false, false); ustring dec = character_to_decimal_entity(chars[i]); xml_handle_entities(dec, NULL); add_table_cell(dec, false, false); add_table_cell(character_to_hexadecimal_entity(chars[i]), false, false); add_table_cell(convert_to_string(count[i]), false, true); close_table_column(); } // Close everything. close_table(); finalize(); // Write data and display it. ustring outputfilename; outputfilename = gw_build_filename(Directories->get_temp(), "charactercount.html"); write_lines(outputfilename, html); gtkw_show_uri (outputfilename); } void DisplayCheckingResults::references_inventory(const vector < ustring > &verses, const vector < ustring > &references) { ustring line; // Heading and information. heading(2, "References Inventory"); // Open the columns. open_table(); open_table_column(); add_table_cell("Verse", true, false); add_table_cell("References", true, false); close_table_column(); // Add the data. for (unsigned int i = 0; i < verses.size(); i++) { open_table_column(); add_table_cell(verses[i], false, false); add_table_cell(references[i], false, false); close_table_column(); } // Close everything. close_table(); finalize(); // Write data and display it. ustring outputfilename; outputfilename = gw_build_filename(Directories->get_temp(), "referenceinventory.html"); write_lines(outputfilename, html); gtkw_show_uri (outputfilename); } void DisplayCheckingResults::ot_quotations_in_nt(const vector nt_refs, const vector nt_texts, const vector & ot_refs, const vector & ot_texts, const gchar * mainheading) { heading(2, mainheading); open_table(); ustring column_references = "New Testament"; ustring column_referents = "Old Testament"; open_table_column(); extern Settings * settings; if (settings->session.check_output_in_ot_order) { add_table_cell(column_referents, true, true); add_table_cell("", true, false); add_table_cell(column_references, true, true); add_table_cell("", true, false); } else { add_table_cell(column_references, true, true); add_table_cell("", true, false); add_table_cell(column_referents, true, true); add_table_cell("", true, false); } close_table_column(); for (unsigned int i = 0; i < nt_refs.size(); i++) { open_table_column(); add_table_cell(nt_refs[i], false, true); add_table_cell(nt_texts[i], false, false); for (unsigned int i2 = 0; i2 < ot_refs[i].size(); i2++) { if (i2) { close_table_column(); open_table_column(); add_table_cell("", false, false); add_table_cell("", false, false); } add_table_cell(ot_refs[i][i2], false, true); add_table_cell(ot_texts[i][i2], false, false); } close_table_column(); } close_table(); finalize(); ustring outputfilename; outputfilename = gw_build_filename(Directories->get_temp(), "nt-ot-quotations.html"); write_lines(outputfilename, html); gtkw_show_uri (outputfilename); } void DisplayCheckingResults::parallel_passages(const vector < OtNtParallelDataSection > &data, const gchar * mainheading) { heading(2, mainheading); for (unsigned int i = 0; i < data.size(); i++) { heading(3, data[i].title); open_table(); for (unsigned int i2 = 0; i2 < data[i].sets.size(); i2++) { open_table_column(); for (unsigned int i3 = 0; i3 < data[i].sets[i2].data.size(); i3++) { add_table_cell(data[i].sets[i2].data[i3], false, false); } close_table_column(); } close_table(); } finalize(); ustring outputfilename; outputfilename = gw_build_filename(Directories->get_temp(), "parallelpassages.html"); write_lines(outputfilename, html); gtkw_show_uri (outputfilename); } void DisplayCheckingResults::start(const ustring & title) { html.push_back(""); html.push_back(""); html.push_back(""); html.push_back("" + title + ""); html.push_back(""); html.push_back(""); html.push_back(""); html.push_back(""); } void DisplayCheckingResults::heading(unsigned int level, const ustring & text) { ustring line; line = ""); line.append(text); line.append(""); html.push_back(line); } void DisplayCheckingResults::paragraph(const ustring & text) { ustring line; line = "

"; line.append(text); line.append("

"); html.push_back(line); } void DisplayCheckingResults::open_table() { html.push_back(""); html.push_back(""); html.push_back(""); } void DisplayCheckingResults::close_table() { html.push_back(""); html.push_back(""); html.push_back("
"); } void DisplayCheckingResults::open_table_column() { html.push_back(""); } void DisplayCheckingResults::close_table_column() { html.push_back(""); } void DisplayCheckingResults::add_table_cell(const ustring & text, bool bold, bool right_aligned, bool translate_entities) { ustring line; line = ""); if (bold) line.append(""); ustring text2(text); if (translate_entities) xml_handle_entities(text2, NULL); line.append(text2); if (bold) line.append(""); line.append(""); html.push_back(line); } void DisplayCheckingResults::finalize() { html.push_back("
"); html.push_back(""); html.push_back(""); } ustring DisplayCheckingResults::search_whole_words(const ustring & text, const ustring & word) { ustring s; s = ""); s.append(text); s.append(""); return s; } ustring get_non_alphanumericals(const ustring & s) { ustring result; for (unsigned int i = 0; i < s.length(); i++) { ustring ch = s.substr(i, 1); gunichar gu = g_utf8_get_char(ch.c_str()); if (!g_unichar_isalnum(gu)) result.append(ch); } return result; } CollectCheckingResults::CollectCheckingResults(int dummy) { } void CollectCheckingResults::add(const vector < ustring > &refs, const vector < ustring > &cmts) { for (unsigned int i = 0; i < refs.size(); i++) { references.push_back(refs[i]); comments.push_back(cmts[i]); } } bibledit-gtk-4.9/src/checks.h000664 000766 000024 00000005470 12221507135 016261 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_CHECKS_H #define INCLUDED_CHECKS_H #include "libraries.h" #include #include "types.h" #include "ot-nt-parallels.h" #include "windowreferences.h" void checks_output_references_comments (const vector& references, const vector& comments); void checks_display_references_comments (vector& references, vector& comments, WindowReferences * references_window); class DisplayCheckingResults { public: DisplayCheckingResults (const ustring& title); void word_inventory (const vector& words, const vector& count, int total, int unique, int filteredtotal, int filteredunique, int excludelimit); void usfm_count (const vector& usfms, const vector& count, const ustring& stylesheet); void character_count (const vector& chars, const vector& count); void references_inventory (const vector & verses, const vector & references); void ot_quotations_in_nt (const vector nt_refs, const vector nt_texts, const vector & ot_refs, const vector & ot_texts, const gchar * mainheading); void parallel_passages (const vector & data, const gchar * mainheading); private: vector html; void start (const ustring& title); void heading (unsigned int level, const ustring& text); void paragraph (const ustring& text); void open_table (); void close_table (); void open_table_column (); void close_table_column (); void add_table_cell (const ustring& text, bool bold, bool right_aligned, bool translate_entities = true); void finalize (); ustring search_whole_words (const ustring& text, const ustring& word); }; ustring get_non_alphanumericals (const ustring& s); class CollectCheckingResults { public: CollectCheckingResults (int dummy); void add (const vector& refs, const vector& cmts); vector references; vector comments; private: }; #endif bibledit-gtk-4.9/src/clean.cpp000664 000766 000024 00000007762 12221507136 016445 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "utilities.h" #include "clean.h" #include "usfmtools.h" #include "tiny_utilities.h" const char *markers_that_dont_split[] = { "th1", "th2", "th3", "th4", "thr1", "thr2", "thr3", "thr4", "tc1", "tc2", "tc3", "tc4", "tcr1", "tcr2", "tcr3", "tcr4", "f", "fe", "fm", "fr", "fk", "fq", "fqa", "fl", "fp", "fv", "ft", "fdc", "f*", "fe*", "fm*", "fr*", "fk*", "fq*", "fqa*", "fl*", "fp*", "fv*", "ft*", "fdc*", "x", "xo", "xk", "xq", "xt", "xdc", "x*", "xo*", "xk*", "xq*", "xt*", "xdc*", "qt", "nd", "tl", "dc", "bk", "sig", "pn", "wj", "k", "sls", "ord", "add", "lit", "qt*", "nd*", "tl*", "dc*", "bk*", "sig*", "pn*", "wj*", "k*", "sls*", "ord*", "add*", "lit*", "no", "bd", "it", "bdit", "em", "sc", "no*", "bd*", "it*", "bdit*", "em*", "sc*", "pro", "w", "wh", "wg", "ndx", "pro*", "w*", "wh*", "wg*", "ndx*", "n", "n*" // These two are used in old projects. }; const char *markers_that_join_to_previous_line[] = { "f*", "fe*", "x*", "wj*", "add*", "it", "it*" }; CleanUsfm::CleanUsfm(vector < ustring > &input) // Clean the lines provided: each main USFM starts a new line. { // Markers that don't split a line. set < ustring > nonsplitters; for (unsigned int i = 0; i < sizeof(markers_that_dont_split) / sizeof(*markers_that_dont_split); i++) nonsplitters.insert(markers_that_dont_split[i]); // Markers that join to the previous line. set < ustring > joiners; for (unsigned int i = 0; i < sizeof(markers_that_join_to_previous_line) / sizeof(*markers_that_join_to_previous_line); i++) joiners.insert(markers_that_join_to_previous_line[i]); // Go through all lines. for (unsigned int i = 0; i < input.size(); i++) { // Change tabs to spaces. size_t position; position = input[i].find("\t"); while (position != string::npos) { input[i].replace(position, 1, " "); position = input[i].find("\t", position); } // Change multiple spaces to one space. position = input[i].find(" "); while (position != string::npos) { input[i].replace(position, 2, " "); position = input[i].find(" "); } // Cut into handsome lines, according to the USFM standard. vector < ustring > markers; markers = usfm_get_all_markers(input[i]); for (unsigned int i2 = 0; i2 < markers.size(); i2++) { if (nonsplitters.find(markers[i2]) == nonsplitters.end()) { split_line_on_marker(markers[i2], input[i]); } } // Add a line that does not start with a USFM to the previous one, or one // that starts with a marker supposed to be joined to the previous line. ustring line(input[i]); ustring marker = usfm_extract_marker(line); if ((marker.empty()) || (joiners.find(marker) != joiners.end())) { lines[lines.size() - 1].append(" "); lines[lines.size() - 1].append(input[i]); continue; } // Separate and trim these lines. position = input[i].find("\n"); while (position != string::npos) { ustring line = input[i].substr(0, position); line = trim(line); if (!line.empty()) lines.push_back(line); input[i].erase(0, ++position); position = input[i].find("\n"); } // Add to output. if (!input[i].empty()) lines.push_back(trim(input[i])); } } bibledit-gtk-4.9/src/clean.h000664 000766 000024 00000001713 12221507150 016074 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_CLEAN_H #define INCLUDED_CLEAN_H #include "libraries.h" class CleanUsfm { public: CleanUsfm (vector & input); vector lines; private: }; #endif bibledit-gtk-4.9/src/color.cpp000664 000766 000024 00000005362 12221507146 016474 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "color.h" #include "utilities.h" void color_decimal_to_gdk(unsigned int colour, GdkColor * color) { guint16 red, green, blue; blue = colour % 256; colour = colour / 256; green = colour % 256; colour = colour / 256; red = colour; color->red = 256 * red; color->green = 256 * green; color->blue = 256 * blue; } unsigned int color_gdk_to_decimal(GdkColor * color) { unsigned int result; result = (65536 * (color->red / 256)) + (256 * (color->green / 256)) + (color->blue / 256); return result; } ustring color_decimal_to_hex(unsigned int colour) { gchar *s = g_strdup_printf("%06X", colour); ustring result(s); g_free(s); return result; } void color_widget_default(GtkWidget * widget) // Set the widget to the default color. { gtk_widget_modify_base(widget, GTK_STATE_NORMAL, NULL); gtk_widget_modify_base(widget, GTK_STATE_SELECTED, NULL); gtk_widget_modify_base(widget, GTK_STATE_ACTIVE, NULL); gtk_widget_modify_text(widget, GTK_STATE_SELECTED, NULL); gtk_widget_modify_text(widget, GTK_STATE_ACTIVE, NULL); gtk_widget_modify_text(widget, GTK_STATE_NORMAL, NULL); // See the gedit source for this function. //modify_cursor_color (widget, NULL); } void color_widget_set(GtkWidget * widget, unsigned int normal_text, unsigned int background, unsigned int selected_text, unsigned int selection) { GdkColor gdkcolor; color_decimal_to_gdk(normal_text, &gdkcolor); gtk_widget_modify_text(widget, GTK_STATE_NORMAL, &gdkcolor); //modify_cursor_color (widget, &gdkcolor); color_decimal_to_gdk(background, &gdkcolor); gtk_widget_modify_base(widget, GTK_STATE_NORMAL, &gdkcolor); color_decimal_to_gdk(selected_text, &gdkcolor); gtk_widget_modify_text(widget, GTK_STATE_SELECTED, &gdkcolor); gtk_widget_modify_text(widget, GTK_STATE_ACTIVE, &gdkcolor); color_decimal_to_gdk(selection, &gdkcolor); gtk_widget_modify_base(widget, GTK_STATE_SELECTED, &gdkcolor); gtk_widget_modify_base(widget, GTK_STATE_ACTIVE, &gdkcolor); } bibledit-gtk-4.9/src/color.h000664 000766 000024 00000002456 12221507146 016142 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_COLOR_H #define INCLUDED_COLOR_H #include "libraries.h" #include #include void color_decimal_to_gdk (unsigned int colour, GdkColor * color); unsigned int color_gdk_to_decimal (GdkColor * color); ustring color_decimal_to_hex (unsigned int colour); void color_widget_default (GtkWidget * widget); void color_widget_set (GtkWidget * widget, unsigned int normal_text, unsigned int background, unsigned int selected_text, unsigned int selection); #endif bibledit-gtk-4.9/src/combobox.cpp000664 000766 000024 00000007623 12221507147 017171 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "combobox.h" #include "tiny_utilities.h" ustring combobox_get_active_string(GtkWidget * combobox) // Gets the currently active string in a combobox. { ustring active_string; GtkTreeModel *model; model = gtk_combo_box_get_model(GTK_COMBO_BOX(combobox)); GtkTreeIter iter; if (gtk_combo_box_get_active_iter(GTK_COMBO_BOX(combobox), &iter)) { gchar *value; gtk_tree_model_get(model, &iter, 0, &value, -1); active_string = value; g_free(value); } return active_string; } unsigned int combobox_get_active_index(GtkWidget * combobox) // Gets the currently active index in a combobox. { return gtk_combo_box_get_active(GTK_COMBO_BOX(combobox)); } unsigned int combobox_get_string_count(GtkWidget * combobox) // Gets the number of strings loaded in the combobox. { unsigned int string_count = 0; GtkTreeModel *model; model = gtk_combo_box_get_model(GTK_COMBO_BOX(combobox)); GtkTreeIter iter; if (gtk_tree_model_get_iter_first(model, &iter)) { string_count++; while (gtk_tree_model_iter_next(model, &iter)) string_count++; } return string_count; } void combobox_clear_strings(GtkWidget * combobox) // Clear the strings loaded in the combobox. { for (int i = combobox_get_string_count(combobox) - 1; i >= 0; i--) gtk_combo_box_remove_text(GTK_COMBO_BOX(combobox), i); } vector < ustring > combobox_get_strings(GtkWidget * combobox) { vector < ustring > strings; GtkTreeModel *model; model = gtk_combo_box_get_model(GTK_COMBO_BOX(combobox)); GtkTreeIter iter; if (gtk_tree_model_get_iter_first(model, &iter)) { gchar *value; gtk_tree_model_get(model, &iter, 0, &value, -1); strings.push_back(value); g_free(value); while (gtk_tree_model_iter_next(model, &iter)) { gchar *value; gtk_tree_model_get(model, &iter, 0, &value, -1); strings.push_back(value); g_free(value); } } return strings; } void combobox_set_strings(GtkWidget * combobox, const vector < ustring > &strings) { combobox_clear_strings(combobox); for (unsigned int i = 0; i < strings.size(); i++) gtk_combo_box_append_text(GTK_COMBO_BOX(combobox), strings[i].c_str()); } void combobox_set_strings(GtkWidget * combobox, const vector < unsigned int >&strings) { combobox_clear_strings(combobox); for (unsigned int i = 0; i < strings.size(); i++) gtk_combo_box_append_text(GTK_COMBO_BOX(combobox), convert_to_string(strings[i]).c_str()); } void combobox_set_string(GtkWidget * combobox, const ustring & string) // Sets the string that should be selected. // If this string does not exist, it gets set to the first string, if there are // strings loaded, else it will be empty. { vector < ustring > strings; strings = combobox_get_strings(combobox); int index = -1; for (unsigned int i = 0; i < strings.size(); i++) if (string == strings[i]) index = i; gtk_combo_box_set_active(GTK_COMBO_BOX(combobox), index); } void combobox_set_string(GtkWidget * combobox, unsigned int string) { combobox_set_string(combobox, convert_to_string(string)); } void combobox_set_index(GtkWidget * combobox, unsigned int index) { gtk_combo_box_set_active(GTK_COMBO_BOX(combobox), index); } bibledit-gtk-4.9/src/combobox.h000664 000766 000024 00000003066 12221507140 016624 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_COMBOBOX_H #define INCLUDED_COMBOBOX_H #include "libraries.h" #include #include ustring combobox_get_active_string (GtkWidget * combobox); unsigned int combobox_get_active_index (GtkWidget * combobox); unsigned int combobox_get_string_count (GtkWidget * combobox); void combobox_clear_strings (GtkWidget * combobox); vector combobox_get_strings (GtkWidget * combobox); void combobox_set_strings (GtkWidget * combobox, const vector& strings); void combobox_set_strings (GtkWidget * combobox, const vector& strings); void combobox_set_string (GtkWidget * combobox, const ustring& string); void combobox_set_string (GtkWidget * combobox, unsigned int string); void combobox_set_index (GtkWidget * combobox, unsigned int index); #endif bibledit-gtk-4.9/src/compareutils.cpp000644 000766 000024 00000043413 12453001367 020063 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "utilities.h" #include #include "constants.h" #include "compareutils.h" #include "usfmtools.h" #include "usfm.h" #include "printproject.h" #include "projectutils.h" #include "settings.h" #include "books.h" #include "print_parallel_references.h" #include "tiny_utilities.h" #include "merge_utils.h" #include "directories.h" #include "gwrappers.h" #include "shell.h" #include "constants.h" void compare_with(WindowReferences * references_window, const ustring & project, const ustring & secondproject, bool print_changes_only) { // Load the project, and the second project. ProjectMemory projectmemory(project, true); if (projectmemory.cancelled) return; ProjectMemory secondprojectmemory(secondproject, true); if (secondprojectmemory.cancelled) return; // The project to store the comparison. ProjectMemory comparedprojectmemory = projectmemory; comparedprojectmemory.name = project + " compared with " + secondproject; // Do the actual comparison. if (!compare_projects(projectmemory, secondprojectmemory, comparedprojectmemory)) return; // Look for added or deleted books / chapters / verses. vector additions_deletions; compare_get_additions_deletions(projectmemory, secondprojectmemory, additions_deletions); // See what to print. if (print_changes_only) { // Print changes only, and load them in the references. vector references; compare_get_changes(comparedprojectmemory, references); references_window->set (references, project, NULL); comparedprojectmemory.name = project; view_parallel_references_pdf(comparedprojectmemory, NULL, references, true, &additions_deletions, true); } else { // Print whole modified project, plus additions / deletions. // No bold, as bold might interfere with the marking of additions, which are in bold too. PrintProject printproject(&comparedprojectmemory); printproject.portion_project(project); for (unsigned int i = 0; i < additions_deletions.size(); i++) { printproject.comment(additions_deletions[i]); } printproject.no_bold(); printproject.print(); } } bool compare_projects(ProjectMemory & originalproject, ProjectMemory & secondproject, ProjectMemory & outputproject) // Compares originalproject with secondproject. Differences go in outputproject. { // Progress information. ProgressWindow progresswindow("Comparing", true); // Open the Scriptures. vector < unsigned int >originalscripture_books = originalproject.get_books(); vector < unsigned int >secondscripture_books = secondproject.get_books(); vector < unsigned int >outputscripture = outputproject.get_books(); // Portions. ScripturePortions scriptureportions(originalproject.name); // Progress information. progresswindow.set_iterate(0, 1, originalscripture_books.size()); // Go through the original scripture. for (unsigned int ib = 0; ib < originalscripture_books.size(); ib++) { // Progress. progresswindow.iterate(); // Skip book if it is not included in the portion. if (!scriptureportions.included(books_id_to_english(originalscripture_books[ib]))) { continue; } // Get a pointer to the book in the second project. ProjectBook *secondprojectbook = secondproject.get_book_pointer(originalscripture_books[ib]); // If that book does not exists in the second project, skip it. if (secondprojectbook == NULL) continue; // Go through each chapter of the original book. vector < unsigned int >originalchapters = originalproject.data[ib].get_chapters(); for (unsigned int ic = 1; ic < originalchapters.size(); ic++) { // Progress info. ustring info = books_id_to_english(originalscripture_books[ib]) + " " + convert_to_string(originalchapters[ic]); progresswindow.set_text(info); if (progresswindow.cancel) { return false; } // Get chapter text of the original. vector < ustring > originallines = originalproject.data[ib].data[ic].get_data(); // Get a pointer to the chapter in the second project. ProjectChapter *secondprojectchapter = secondprojectbook->get_chapter_pointer(originalchapters[ic]); // Skip if the chapter isn't there. if (secondprojectchapter == NULL) continue; // Get chapter text of the second. vector < ustring > secondlines = secondprojectchapter->get_data(); // If both chapters are the same, continue to the next one. ustring originalbook_chapter_contents; for (unsigned int i = 0; i < originallines.size(); i++) originalbook_chapter_contents.append(originallines[i]); ustring secondbook_chapter_contents; for (unsigned int i = 0; i < secondlines.size(); i++) secondbook_chapter_contents.append(secondlines[i]); if (originalbook_chapter_contents == secondbook_chapter_contents) continue; // At this stage the chapters are different. Compare them more thoroughly. ProjectChapter *outputprojectchapter = &outputproject.data[ib].data[ic]; vector < ustring > outputlines = outputprojectchapter->get_data(); compare_usfm_text(originallines, secondlines, outputlines, false); outputprojectchapter->set_data(outputlines); } } // Done: ok. return true; } void compare_usfm_text_remove_notes (ustring& text) { extern Settings * settings; bool disregard_notes = settings->genconfig.compare_disregard_notes_get(); if (disregard_notes) { replace_text_between (text, "\\f ", "\\f*", ""); replace_text_between (text, "\\fe ", "\\fe*", ""); replace_text_between (text, "\\x ", "\\x*", ""); } } void compare_get_changes(ProjectMemory & project, vector < Reference > &changed_references) // This produces all changed references in a project. { // Go through the whole scripture. vector < unsigned int >scripture_books = project.get_books(); for (unsigned int i = 0; i < scripture_books.size(); i++) { vector < unsigned int >chapters = project.data[i].get_chapters(); for (unsigned int chapter = 1; chapter < chapters.size(); chapter++) { vector < ustring > lines = project.data[i].data[chapter].get_data(); ustring currentverse = "1"; Reference last_reference_stored(0); for (unsigned int i2 = 0; i2 < lines.size(); i2++) { ustring line(lines[i2]); // Extract the verse number. ustring marker; marker = usfm_extract_marker(line); if (usfm_is_verse(marker)) { currentverse = number_in_string(line); } // See if this line contains a change. bool add_this_line = false; if (line.find(DELETION_FLAG) != string::npos) add_this_line = true; if (line.find(INSERTION_FLAG) != string::npos) add_this_line = true; if (add_this_line) { Reference ref(scripture_books[i], chapter, currentverse); if (!ref.equals(last_reference_stored)) { changed_references.push_back(ref); last_reference_stored = ref; } } } } } } void compare_get_additions_deletions_verses(ProjectMemory & originalproject, ProjectMemory & secondproject, unsigned int book, unsigned int chapter, vector < ustring > &results) { // Get the verses of the chapter of the book of the two projects. vector < ustring > originalverses; ProjectBook *originalbook = originalproject.get_book_pointer(book); if (originalbook) { ProjectChapter *originalchapter = originalbook->get_chapter_pointer(chapter); if (originalchapter) { originalverses = originalchapter->get_verses(); } } vector < ustring > secondverses; ProjectBook *secondbook = secondproject.get_book_pointer(book); if (secondbook) { ProjectChapter *secondchapter = secondbook->get_chapter_pointer(chapter); if (secondchapter) { secondverses = secondchapter->get_verses(); } } set < ustring > originalverses_set(originalverses.begin(), originalverses.end()); set < ustring > secondverses_set(secondverses.begin(), secondverses.end()); // Go through the original verses to see which were added. for (unsigned int b = 0; b < originalverses.size(); b++) { if (secondverses_set.find(originalverses[b]) == secondverses_set.end()) { results.push_back("Added: " + books_id_to_english(book) + " " + convert_to_string(chapter) + ":" + originalverses[b]); } } // Go through the second verses to see which were deleted. for (unsigned int b = 0; b < secondverses.size(); b++) { if (originalverses_set.find(secondverses[b]) == originalverses_set.end()) { results.push_back("Deleted: " + books_id_to_english(book) + " " + convert_to_string(chapter) + ":" + secondverses[b]); } } } void compare_get_additions_deletions_chapters(ProjectMemory & originalproject, ProjectMemory & secondproject, unsigned int book, vector < ustring > &results) { // Get the chapters of the book of the two projects. vector < unsigned int >originalchapters; ProjectBook *originalbook = originalproject.get_book_pointer(book); if (originalbook) originalchapters = originalbook->get_chapters(); vector < unsigned int >secondchapters; ProjectBook *secondbook = secondproject.get_book_pointer(book); if (secondbook) secondchapters = secondbook->get_chapters(); set < unsigned int >originalchapters_set(originalchapters.begin(), originalchapters.end()); set < unsigned int >secondchapters_set(secondchapters.begin(), secondchapters.end()); // Go through the original chapters to see which chapters were added. // Chapters that are there will be checked on their verses. for (unsigned int b = 0; b < originalchapters.size(); b++) { if (secondchapters_set.find(originalchapters[b]) != secondchapters_set.end()) { compare_get_additions_deletions_verses(originalproject, secondproject, book, originalchapters[b], results); } else { results.push_back("Added: " + books_id_to_english(book) + " " + convert_to_string(originalchapters[b])); } } // Go through the second chapters to see which chapters were deleted. // Chapters that are there will be checked on their verses. for (unsigned int b = 0; b < secondchapters.size(); b++) { if (originalchapters_set.find(secondchapters[b]) != originalchapters_set.end()) { compare_get_additions_deletions_verses(originalproject, secondproject, book, secondchapters[b], results); } else { results.push_back("Deleted: " + books_id_to_english(book) + " " + convert_to_string(secondchapters[b])); } } } void compare_get_additions_deletions(ProjectMemory & originalproject, ProjectMemory & secondproject, vector < ustring > &results) /* Compares the projects, and finds if books, chapters or verses were added or deleted. If anything was found, it puts human readable text in "results". */ { // Get the books of the two projects. vector < unsigned int >originalbooks = originalproject.get_books(); vector < unsigned int >secondbooks = secondproject.get_books(); set < unsigned int >originalbooks_set(originalbooks.begin(), originalbooks.end()); set < unsigned int >secondbooks_set(secondbooks.begin(), secondbooks.end()); // Progress information. ProgressWindow progresswindow("Finding additions and deletions", false); progresswindow.set_iterate(0, 1, originalbooks.size() + secondbooks.size()); // Go through the original books to see which books were added. // Books that are there will be checked on their chapters. for (unsigned int b = 0; b < originalbooks.size(); b++) { progresswindow.iterate(); if (secondbooks_set.find(originalbooks[b]) != secondbooks_set.end()) { compare_get_additions_deletions_chapters(originalproject, secondproject, originalbooks[b], results); } else { results.push_back("Added: " + books_id_to_english(originalbooks[b])); } } // Go through the second books to see which books were deleted. // Books that are there will be checked on their chapters. for (unsigned int b = 0; b < secondbooks.size(); b++) { progresswindow.iterate(); if (originalbooks_set.find(secondbooks[b]) != originalbooks_set.end()) { compare_get_additions_deletions_chapters(originalproject, secondproject, secondbooks[b], results); } else { results.push_back("Deleted: " + books_id_to_english(secondbooks[b])); } } // Remove double ones. set < ustring > results_set(results.begin(), results.end()); results.assign(results_set.begin(), results_set.end()); } void compare_insert_marked_text (ustring& line, const ustring& text, bool addition) // Insert marked text into the comparison line. // line: where to insert the text into. // text: text to insert. // addition: whether this is flagged as an addition. { for (unsigned int i = 0; i < text.length(); i++) { if (addition) line.append (INSERTION_FLAG); else line.append (DELETION_FLAG); line.append (text.substr (i, 1)); } } ustring disassemble_usfm_text_for_comparison (vector & text) // Disassembles USFM text making it ready for comparison. { ustring data; for (unsigned int i = 0; i < text.size(); i++) { ustring line = text[i]; compare_usfm_text_remove_notes (line); while (!line.empty()) { // Normally we have one character per line. // Thus the diff command will compare at character level. ustring character = line.substr (0, 1); line.erase (0, 1); data.append (character); // USFM markers go completely on one line, so that the diff command compares complete USFM markers. if (character == "\\") { size_t pos = line.find (" "); if (pos != string::npos) { character = line.substr (0, pos); line.erase (0, pos); data.append (character); } else { data.append (line); line.clear(); } } data.append ("\n"); } data.append ("linefeed\n"); } return data; } void compare_usfm_text (vector& original, vector& edit, vector& output, bool mark_new_line) // Compares the "original" usfm text with the "edit"ed usfm text. // Result goes into "output". // mark_new_line: whether to mark differences in places where a new line starts. { // Store the original to disk. ustring original_line = disassemble_usfm_text_for_comparison (original); ustring originalfile = gw_build_filename (Directories->get_temp(), "compare-original"); g_file_set_contents (originalfile.c_str(), original_line.c_str(), -1, NULL); // Store the edit to disk. ustring edit_line = disassemble_usfm_text_for_comparison (edit); ustring editfile = gw_build_filename (Directories->get_temp(), "compare-edit"); g_file_set_contents (editfile.c_str(), edit_line.c_str(), -1, NULL); // The output file. ustring outputfile = gw_build_filename (Directories->get_temp(), "compare-output"); // Clear output. output.clear (); // Run diff. ustring command = "diff -U 1000000" + shell_quote_space(originalfile) + shell_quote_space(editfile) + ">" + shell_quote_space(outputfile); if (system(command.c_str())); // GwSpawn needs a change before it can be used, because ::standardout trims the text. // Read the raw output. ReadText rt (outputfile, true, false); // If there's no output, there were no differences. Handle that. if (rt.lines.size() < 2) { output = original; } // Go through the output, skipping the first lines as these are irrelevant. ustring output_line; for (unsigned int i = 3; i < rt.lines.size(); i++) { ustring line = rt.lines[i]; if (!line.empty()) { // Two special characters mark insertions and deletions, // inserted right before the character it applies to. ustring first_character = line.substr (0, 1); bool is_insertion = (first_character == "+"); bool is_deletion = (first_character == "-"); line.erase (0, 1); bool is_marker = (line.find ("\\") == 0); bool is_new_line = (line == "linefeed"); // Deal with a marker. if (is_marker) { // The marker that is inserted becomes the new marker, // and the one deleted is removed and a message about that is inserted. if (!is_deletion) output_line.append (line); if (is_insertion || is_deletion) { output_line.append (" "); line.erase (0, 1); line.insert (0, "Marker "); compare_insert_marked_text (output_line, line, is_insertion); } line.clear(); } // Deal with a new line. else if (is_new_line) { if (is_insertion || is_deletion) { if (mark_new_line) { compare_insert_marked_text (output_line, "New line", is_insertion); } } line.clear(); } // Deal with other cases. else { if (is_insertion) { output_line.append (INSERTION_FLAG); } if (is_deletion) { output_line.append (DELETION_FLAG); } } if (is_new_line) { output.push_back (output_line); output_line.clear(); } else { output_line.append (line); } } } if (!output_line.empty()) { output.push_back (output_line); output_line.clear(); } } bibledit-gtk-4.9/src/compareutils.h000664 000766 000024 00000003027 12221507143 017523 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_COMPAREUTILS_H #define INCLUDED_COMPAREUTILS_H #include "libraries.h" #include "progresswindow.h" #include "project_memory.h" #include "windowreferences.h" void compare_with (WindowReferences * references_window, const ustring& project, const ustring& secondproject, bool print_changes_only); bool compare_projects (ProjectMemory& originalproject, ProjectMemory& secondproject, ProjectMemory& outputproject); void compare_get_changes (ProjectMemory& project, vector & changed_references); void compare_get_additions_deletions (ProjectMemory& originalproject, ProjectMemory& secondproject, vector& results); void compare_usfm_text (vector& original, vector& edit, vector& output, bool mark_new_line); #endif bibledit-gtk-4.9/src/completion.cpp000664 000766 000024 00000006062 12221507142 017521 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "completion.h" #include "settings.h" void completion_setup(GtkWidget * entry, CompletionType completiontype) // Sets up completion on an entry. { // Create completion. GtkEntryCompletion *completion; completion = gtk_entry_completion_new(); // Assign it to the entry. gtk_entry_set_completion(GTK_ENTRY(entry), completion); // Free memory. g_object_unref(completion); // Create a model / store and fill it with data. extern Settings *settings; GtkListStore *store; store = gtk_list_store_new(1, G_TYPE_STRING); GtkTreeIter iter; vector < ustring > completiontable; switch (completiontype) { case cpSearch: completiontable = settings->session.completion_search; case cpReplace: completiontable = settings->session.completion_replace; case cpGoto: completiontable = settings->session.completion_goto; } for (unsigned int i = 0; i < completiontable.size(); i++) { gtk_list_store_append(store, &iter); gtk_list_store_set(store, &iter, 0, completiontable[i].c_str(), -1); } gtk_entry_completion_set_model(completion, GTK_TREE_MODEL(store)); // Free memory. g_object_unref(store); // Point it to first column to use. gtk_entry_completion_set_text_column(completion, 0); } void completion_finish(GtkWidget * entry, CompletionType completiontype) // Finalizes completion on an entry. { // Get the word to add to the completion table. ustring word = gtk_entry_get_text(GTK_ENTRY(entry)); // No word? Finish here. if (word.length() == 0) return; // Word already in table? Finish now. vector < ustring > completiontable; extern Settings *settings; switch (completiontype) { case cpSearch: completiontable = settings->session.completion_search; case cpReplace: completiontable = settings->session.completion_replace; case cpGoto: completiontable = settings->session.completion_goto; } for (unsigned int i = 0; i < completiontable.size(); i++) if (completiontable[i] == word) return; // Add word to table. completiontable.push_back(word); // Store table. switch (completiontype) { case cpSearch: settings->session.completion_search = completiontable; case cpReplace: settings->session.completion_replace = completiontable; case cpGoto: settings->session.completion_goto = completiontable; } } bibledit-gtk-4.9/src/completion.h000664 000766 000024 00000002136 12221507151 017164 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_COMPLETION_H #define INCLUDED_COMPLETION_H #include "libraries.h" #include #include enum CompletionType {cpSearch, cpReplace, cpGoto}; void completion_setup (GtkWidget * entry, CompletionType completiontype); void completion_finish (GtkWidget * entry, CompletionType completiontype); #endif bibledit-gtk-4.9/src/compress.cpp000644 000766 000024 00000010243 12460404402 017175 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "compress.h" #include "utilities.h" #include "gwrappers.h" /* * Tar (.tar) archives, including those compressed with gzip (.tar.gz, .tgz), bzip (.tar.bz, .tbz), bzip2 (.tar.bz2, .tbz2), compress (.tar.Z, .taz), lzop (.tar.lzo, .tzo) and lzma (.tar.lzma) * Zip archives (.zip) * Jar archives (.jar, .ear, .war) * 7z archives (.7z) * iso9660 CD images (.iso) * Lha archives (.lzh) * Single files compressed with gzip (.gz), bzip (.bz), bzip2 (.bz2), compress (.Z), lzop (.lzo) and lzma (.lzma) */ typedef struct { const char *suffix; // Suffix of the archive. unsigned int compress; // Compression identifier. unsigned int uncompress; // Uncompression identifier. } compression_record_data; unsigned int compression_record_count(); unsigned int uncompression_identifier_get(const ustring & filename); compression_record_data compression_table[] = { { ".tar.gz", 0, 2}, { ".tgz", 0, 2}, { ".tar.bz", 0, 0}, { ".tbz", 0, 0}, { ".tar.bz2", 0, 0}, { ".tbz2", 0, 0}, { ".zip", 0, 1}, }; unsigned int compression_record_count() { unsigned int count = sizeof(compression_table) / sizeof(*compression_table); return count; } unsigned int uncompression_identifier_get(const ustring & filename) // Gets the identifier for uncompressing "filename". { for (unsigned int i = 0; i < compression_record_count(); i++) { if (g_str_has_suffix(filename.c_str(), compression_table[i].suffix)) { if (compression_table[i].uncompress) { return compression_table[i].uncompress; } } } return 0; } bool compressed_archive_recognized(const ustring & archive) // Returns true if the file is recognized as a compressed archive. { return uncompression_identifier_get(archive); } bool uncompress(const ustring & archive, const ustring & directory) // Uncompresses "archive" into "directory". // Returns whether this was successful. { // Bail out if the archive was not recognized. if (!compressed_archive_recognized(archive)) { gw_critical("cannot uncompress unrecognized archive"); return false; } // Ensure that the output directory is there. gw_mkdir_with_parents (directory); // Get the uncompression identifier. int uncompression_identifier = uncompression_identifier_get (archive); // Do the uncompression. int result = -1; switch (uncompression_identifier) { case 1: { GwSpawn spawn ("unzip"); spawn.arg ("-o"); if (!directory.empty ()) { spawn.arg ("-d"); spawn.arg (directory); } spawn.arg (archive); spawn.progress ("Unpacking", false); spawn.run (); result = 0; break; } case 2: { GwSpawn spawn("tar"); spawn.arg("-zxf"); if (!directory.empty()) { spawn.workingdirectory(directory); } spawn.arg(archive); spawn.progress("Unpacking", false); spawn.run(); result = spawn.exitstatus; break; } } // Return whether things were ok. return (result == 0); } void compress_ensure_tar_gz_suffix (ustring& filename) // Ensure that "filename" has the ".tar.gz" suffix. { if (!g_str_has_suffix (filename.c_str(), ".tar.gz")) { filename.append (".tar.gz"); } } void compress_ensure_zip_suffix (ustring& filename) // Ensure that "filename" has the ".zip" suffix. { if (!g_str_has_suffix (filename.c_str(), ".zip")) { filename.append (".zip"); } } bibledit-gtk-4.9/src/compress.h000664 000766 000024 00000002152 12221507146 016650 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_COMPRESS_H #define INCLUDED_COMPRESS_H #include "libraries.h" #include bool compressed_archive_recognized (const ustring& archive); bool uncompress (const ustring& archive, const ustring& directory); void compress_ensure_tar_gz_suffix (ustring& filename); void compress_ensure_zip_suffix (ustring& filename); #endif bibledit-gtk-4.9/src/config.xml.cpp000664 000766 000024 00000027074 12237164541 017433 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "config.xml.h" #include "gwrappers.h" #include "utilities.h" #include #include #include "tiny_utilities.h" bool config_xml_bool_get(const ustring & file, const ustring & key, bool standard) { return convert_to_bool(config_xml_string_get(file, key, convert_to_string(standard))); } int config_xml_int_get(const ustring & file, const ustring & key, int standard) { return convert_to_int(config_xml_string_get(file, key, convert_to_string(standard))); } ustring config_xml_string_get(const ustring & file, const ustring & key, const ustring & standard) { ustring value = standard; vector < ustring > values = config_xml_vector_string_get(file, key); if (!values.empty()) value = values[0]; return value; } double config_xml_double_get(const ustring & file, const ustring & key, double standard) { return convert_to_double(config_xml_string_get(file, key, convert_to_string(standard))); } vector < bool > config_xml_vector_bool_get(const ustring & file, const ustring & key) { vector < bool > value; vector < ustring > valuelist = config_xml_vector_string_get(file, key); for (unsigned int i = 0; i < valuelist.size(); i++) value.push_back(convert_to_bool(valuelist[i])); return value; } vector < int >config_xml_vector_int_get(const ustring & file, const ustring & key) { vector < int >value; vector < ustring > valuelist = config_xml_vector_string_get(file, key); for (unsigned int i = 0; i < valuelist.size(); i++) value.push_back(convert_to_int(valuelist[i])); return value; } vector < double >config_xml_vector_double_get(const ustring & file, const ustring & key) { vector < double >value; vector < ustring > valuelist = config_xml_vector_string_get(file, key); for (unsigned int i = 0; i < valuelist.size(); i++) value.push_back(convert_to_double(valuelist[i])); return value; } vector < ustring > config_xml_vector_string_get(const ustring & file, const ustring & key) { // A static mutex was introduced to try to solve the problem of rogue // resource creation, but it appeared that it didn't solve the problem. // Yet the mutex was left, because the configurations are accessed in // a thread, so it is always good to have a mutex in place. // New static GMutex config_xml_vector_string_get_mutex = G_STATIC_MUTEX_INIT; // New g_mutex_lock (&config_xml_vector_string_get_mutex); // Old static GStaticMutex config_xml_vector_string_get_mutex = G_STATIC_MUTEX_INIT; // Old g_static_mutex_lock(&config_xml_vector_string_get_mutex); vector < ustring > value; if (g_file_test(file.c_str(), G_FILE_TEST_IS_REGULAR)) { gchar *contents; g_file_get_contents(file.c_str(), &contents, NULL, NULL); xmlParserInputBufferPtr inputbuffer; inputbuffer = xmlParserInputBufferCreateMem(contents, strlen(contents), XML_CHAR_ENCODING_NONE); xmlTextReaderPtr reader = xmlNewTextReader(inputbuffer, NULL); if (reader) { gchar *myelement = g_strdup(config_xml_produce_element_name(key).c_str()); bool keyfound = false; while ((xmlTextReaderRead(reader) == 1)) { switch (xmlTextReaderNodeType(reader)) { case XML_READER_TYPE_ELEMENT: { xmlChar *element_name = xmlTextReaderName(reader); if (!xmlStrcmp(element_name, BAD_CAST myelement)) keyfound = true; if (element_name) xmlFree(element_name); break; } case XML_READER_TYPE_TEXT: { if (keyfound) { xmlChar *text = xmlTextReaderValue(reader); if (text) { value.push_back((const char *)text); xmlFree(text); } } break; } case XML_READER_TYPE_END_ELEMENT: { xmlChar *element_name = xmlTextReaderName(reader); if (!xmlStrcmp(element_name, BAD_CAST myelement)) keyfound = false; if (element_name) xmlFree(element_name); break; } } } if (myelement) g_free(myelement); } if (reader) xmlFreeTextReader(reader); if (inputbuffer) xmlFreeParserInputBuffer(inputbuffer); if (contents) g_free(contents); } // New g_mutex_unlock (&config_xml_vector_string_get_mutex); // Old g_static_mutex_unlock(&config_xml_vector_string_get_mutex); return value; } ustring config_xml_produce_element_name(ustring key) { replace_text(key, "_", "-"); return key; } ConfigXmlPair::ConfigXmlPair(const ustring & key_in, const vector < ustring > &value_in) { key = key_in; value = value_in; }; void config_xml_values_set_assemble(vector < ConfigXmlPair > &values, const ustring & key, bool value) { vector < ustring > strings; strings.push_back(convert_to_string(value)); config_xml_values_set_assemble(values, key, strings); } void config_xml_values_set_assemble(vector < ConfigXmlPair > &values, const ustring & key, int value) { vector < ustring > strings; strings.push_back(convert_to_string(value)); config_xml_values_set_assemble(values, key, strings); } void config_xml_values_set_assemble(vector < ConfigXmlPair > &values, const ustring & key, const ustring & value) { vector < ustring > strings; strings.push_back(value); config_xml_values_set_assemble(values, key, strings); } void config_xml_values_set_assemble(vector < ConfigXmlPair > &values, const ustring & key, double value) { vector < ustring > strings; strings.push_back(convert_to_string(value)); config_xml_values_set_assemble(values, key, strings); } void config_xml_values_set_assemble(vector < ConfigXmlPair > &values, const ustring & key, const vector < bool > &value) { vector < ustring > strings; for (unsigned int i = 0; i < value.size(); i++) { strings.push_back(convert_to_string(value[i])); } config_xml_values_set_assemble(values, key, strings); } void config_xml_values_set_assemble(vector < ConfigXmlPair > &values, const ustring & key, const vector < int >&value) { vector < ustring > strings; for (unsigned int i = 0; i < value.size(); i++) { strings.push_back(convert_to_string(value[i])); } config_xml_values_set_assemble(values, key, strings); } void config_xml_values_set_assemble(vector < ConfigXmlPair > &values, const ustring & key, const vector < ustring > &value) { ConfigXmlPair pair(key, value); pair.key = config_xml_produce_element_name(key); values.push_back(pair); } void config_xml_values_set_assemble(vector < ConfigXmlPair > &values, const ustring & key, const vector < double >&value) { vector < ustring > strings; for (unsigned int i = 0; i < value.size(); i++) { strings.push_back(convert_to_string(value[i])); } config_xml_values_set_assemble(values, key, strings); } void config_xml_values_set_execute(const ustring & file, const vector < ConfigXmlPair > &values) { // Bail out if there is nothing to write. if (values.empty()) return; // Read the information that is already in the configuration file. vector < ConfigXmlPair > existingpairs; if (g_file_test(file.c_str(), G_FILE_TEST_IS_REGULAR)) { bool firstelementfound = false; gchar *contents; g_file_get_contents(file.c_str(), &contents, NULL, NULL); xmlParserInputBufferPtr inputbuffer; inputbuffer = xmlParserInputBufferCreateMem(contents, strlen(contents), XML_CHAR_ENCODING_NONE); xmlTextReaderPtr reader = xmlNewTextReader(inputbuffer, NULL); if (reader) { vector < ustring > dummy; ConfigXmlPair pair("", dummy); while ((xmlTextReaderRead(reader) == 1)) { switch (xmlTextReaderNodeType(reader)) { case XML_READER_TYPE_ELEMENT: { if (firstelementfound) { char *element_name = (char *)xmlTextReaderName(reader); if (strcmp(element_name, "value")) { pair.key = element_name; pair.value.clear(); } if (element_name) xmlFree(element_name); } firstelementfound = true; break; } case XML_READER_TYPE_TEXT: { char *text = (char *)xmlTextReaderValue(reader); if (text) { pair.value.push_back(text); xmlFree(text); } break; } case XML_READER_TYPE_END_ELEMENT: { char *element_name = (char *)xmlTextReaderName(reader); ustring element(element_name); if (element == pair.key) { existingpairs.push_back(pair); pair.key.clear(); pair.value.clear(); } if (element_name) xmlFree(element_name); break; } } } } if (reader) xmlFreeTextReader(reader); if (inputbuffer) xmlFreeParserInputBuffer(inputbuffer); if (contents) g_free(contents); } // The information to be saved, insert it in the already existing information, // replacing the values it had before. // Or if that information isn't there yet, append it. for (unsigned int nw = 0; nw < values.size(); nw++) { bool inserted = false; for (unsigned int old = 0; old < existingpairs.size(); old++) { if (values[nw].key == existingpairs[old].key) { existingpairs[old].value = values[nw].value; inserted = true; break; } } if (!inserted) { existingpairs.push_back(values[nw]); } } // Start the new xml document. xmlBufferPtr buffer = xmlBufferCreate(); xmlTextWriterPtr writer = xmlNewTextWriterMemory(buffer, 0); xmlTextWriterStartDocument(writer, NULL, "UTF-8", NULL); xmlTextWriterSetIndent(writer, 1); xmlTextWriterStartElement(writer, BAD_CAST "bibledit-configuration"); // Get the combined information, and write it to the document. for (unsigned int i = 0; i < existingpairs.size(); i++) { // Do not write empty elements. This resolves a bug that occurred // if elements like "" were written. // Next time the file was read, it took contextual information. // In that case rogue resources were created that didn't exist. if (existingpairs[i].value.empty()) continue; xmlTextWriterStartElement(writer, BAD_CAST existingpairs[i].key.c_str()); for (unsigned int i2 = 0; i2 < existingpairs[i].value.size(); i2++) { xmlTextWriterStartElement(writer, BAD_CAST "value"); xmlTextWriterWriteFormatString(writer, "%s", existingpairs[i].value[i2].c_str()); xmlTextWriterEndElement(writer); } xmlTextWriterEndElement(writer); } // Close document and write it to disk. xmlTextWriterEndDocument(writer); xmlTextWriterFlush(writer); g_file_set_contents(file.c_str(), (const gchar *)buffer->content, -1, NULL); // Free memory. if (writer) xmlFreeTextWriter(writer); if (buffer) xmlBufferFree(buffer); } bibledit-gtk-4.9/src/config.xml.h000664 000766 000024 00000005345 12221507142 017064 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_CONFIG_XML_H #define INCLUDED_CONFIG_XML_H #include "libraries.h" #include "constants.h" bool config_xml_bool_get (const ustring& file, const ustring& key, bool standard); int config_xml_int_get (const ustring& file, const ustring& key, int standard); ustring config_xml_string_get (const ustring& file, const ustring& key, const ustring& standard); double config_xml_double_get (const ustring& file, const ustring& key, double standard); vector config_xml_vector_bool_get (const ustring& file, const ustring& key); vector config_xml_vector_string_get (const ustring& file, const ustring& key); vector config_xml_vector_int_get (const ustring& file, const ustring& key); vector config_xml_vector_double_get (const ustring& file, const ustring& key); ustring config_xml_produce_element_name (ustring key); class ConfigXmlPair { public: ConfigXmlPair (const ustring& key_in, const vector & value_in); ustring key; vector value; }; void config_xml_values_set_assemble (vector & values, const ustring& key, bool value); void config_xml_values_set_assemble (vector & values, const ustring& key, int value); void config_xml_values_set_assemble (vector & values, const ustring& key, const ustring& value); void config_xml_values_set_assemble (vector & values, const ustring& key, double value); void config_xml_values_set_assemble (vector & values, const ustring& key, const vector & value); void config_xml_values_set_assemble (vector & values, const ustring& key, const vector & value); void config_xml_values_set_assemble (vector & values, const ustring& key, const vector & value); void config_xml_values_set_assemble (vector & values, const ustring& key, const vector & value); void config_xml_values_set_execute (const ustring& file, const vector & values); #endif bibledit-gtk-4.9/src/constants.h000664 000766 000024 00000003450 12221507135 017031 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_CONSTANTS_H #define INCLUDED_CONSTANTS_H #define TEXT_REFERENCES "References" #define STANDARDSHEET "Standard" #define OFF "off" #define ON "on" #define INHERIT "inherit" #define TOGGLE "toggle" #define LEFT "left" #define CENTER "center" #define RIGHT "right" #define JUSTIFIED "justify" #define ALPHABET "abcdefghijklmnopqrstuvwxyz" #define CAPITALIZATION_PUNCTUATION ".!?" #define CAPITALIZATION_LOWERCASE ">" #define IDENTIFIER_TEXT_TAG "identifier-text" #define INTRODUCTION_TEXT_TAG "introduction-text" #define HEADING_TEXT_TAG "heading-text" #define CHAPTER_TEXT_TAG "chapter-text" #define STUDY_NOTE_TEXT_TAG "studynote-text" #define NOTE_TEXT_TAG "note-text" #define CROSSREFERENCE_TEXT_TAG "crossreference-text" #define VERSE_TEXT_TAG "verse-text" #define STYLE_SUFFIX ".style2" #define CHAPTER_VERSE_SELECTION_ALL "all" #define CHAPTER_VERSE_SELECTION_TO " to " #define CYGDRIVE_C "/cygdrive/c" #define ELASTIC_MARKER "zelastic" #define INSERTION_FLAG "⚑" #define DELETION_FLAG "⚐" #endif bibledit-gtk-4.9/src/convert.cpp000664 000766 000024 00000004141 12221507137 017030 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "convert.h" #include "tiny_utilities.h" gchar *unicode_convert(gchar * data, gchar * encoding) { gchar *output; output = g_convert(data, -1, "UTF-8", encoding, NULL, NULL, NULL); return output; } gchar *unicode_convert_automatic(gchar * data) { // Storage for the output. gchar *output; // If the data is already utf8, return a copy of it and that's it. if (g_utf8_validate(data, -1, NULL)) { output = g_strdup(data); return output; } // Convert from known encoding(s). // Note that these known one(s) can be expanded if need be. vector < ustring > encodings = encodings_get(); for (unsigned int i = 0; i < encodings.size(); i++) { output = unicode_convert(data, (gchar *) encodings[i].c_str()); if (output) { if (g_utf8_validate(data, -1, NULL)) { return output; } g_free(output); } } // None found. return NULL; } vector < ustring > encodings_get() // Get the available character encodings. { vector < ustring > encodings; FILE *stream = popen("iconv -l", "r"); char buf[1024]; while (fgets(buf, sizeof(buf), stream)) { ustring output = buf; output = trim(output); if (g_str_has_suffix(output.c_str(), "//")) { output = output.substr(0, output.length() - 2); } encodings.push_back(output); } pclose(stream); return encodings; } bibledit-gtk-4.9/src/convert.h000664 000766 000024 00000002034 12221507150 016467 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_CONVERT_H #define INCLUDED_CONVERT_H #include "libraries.h" #include #include "ustring.h" gchar * unicode_convert (gchar *data, gchar * encoding); gchar * unicode_convert_automatic (gchar *data); vector encodings_get (); #endif bibledit-gtk-4.9/src/date_time_utils.cpp000664 000766 000024 00000016401 12221507137 020525 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "utilities.h" #include #include "date_time_utils.h" #include "tiny_utilities.h" int date_time_seconds_get_current() // Get the seconds since the Epoch, modified with the timezone information. // Special code is used that works not only on Linux but also on BSD. { // Get seconds elapsed since Epoch: 00:00:00 1 January 1970 UTC. GTimeVal gtimeval; g_get_current_time(>imeval); // Get both local and UCT time data. time_t t_t = time(0); tm *tm = localtime(&t_t); int local_year = tm->tm_year; int local_day = tm->tm_yday; int local_hour = tm->tm_hour; int local_minute = tm->tm_min; tm = gmtime(&t_t); int gm_year = tm->tm_year; int gm_day = tm->tm_yday; int gm_hour = tm->tm_hour; int gm_minute = tm->tm_min; // Get the local minutes, since 1900. // Handle leap years. int local_time = local_year * 365; if (g_date_is_leap_year(local_year + 1900)) local_time++; local_time += local_day; local_time *= 24; local_time += local_hour; local_time *= 60; local_time += local_minute; // Get the minutes according to UCT, which is Greenwich Mean Time. // Handle leap years. int gm_time = gm_year * 365; if (g_date_is_leap_year(gm_year + 1900)) gm_time++; gm_time += gm_day; gm_time *= 24; gm_time += gm_hour; gm_time *= 60; gm_time += gm_minute; // Get the difference, in seconds; int difference = gm_time - local_time; difference *= 60; // Modify the seconds with this difference. gtimeval.tv_sec += (0 - difference); // Result. return gtimeval.tv_sec; } int date_time_julian_day_get_current() // Returns the julian day for today. { // New GDate using the current date. GDate *date = g_date_new(); g_date_set_time_t (date, date_time_seconds_get_current ()); // Get the Julian day out of it. int julian_day = g_date_get_julian(date); // Free memory. g_date_free(date); // Return Julian day. return julian_day; } ustring date_time_julian_human_readable(int julian_day, bool weekday) // Returns a Julian day in human readable form. { ustring returnvalue; GDate *date; date = g_date_new_julian(julian_day); gchar buf[1024]; if (weekday) g_date_strftime(buf, 1000, "%A, %e %B %Y", date); else g_date_strftime(buf, 1000, "%e %B %Y", date); returnvalue = buf; g_date_free(date); return returnvalue; } ustring date_time_julian_get_month_and_year(int julian_day) // Returns the month of a Julian day in human readable form. { ustring returnvalue; GDate *date; date = g_date_new_julian(julian_day); gchar buf[1024]; g_date_strftime(buf, 1000, "%B %Y", date); returnvalue = buf; g_date_free(date); return returnvalue; } ustring date_time_seconds_human_readable(int seconds, bool weekday) // Returns the seconds in human readable format. { // The day, monty and year. int julian_day = date_time_seconds_to_julian(seconds); ustring returnvalue = date_time_julian_human_readable(julian_day, weekday); int hour, minute, second; date_time_normal_get_hour_minute_second(seconds, hour, minute, second); ustring uhour, uminute, usecond; uhour = convert_to_string(hour); if (uhour.length() == 1) uhour.insert(0, "0"); uminute = convert_to_string(minute); if (uminute.length() == 1) uminute.insert(0, "0"); usecond = convert_to_string(second); if (usecond.length() == 1) usecond.insert(0, "0"); returnvalue.append(", " + uhour + ":" + uminute + ":" + usecond); return returnvalue; } int date_time_julian_day_get_parse(const ustring & date) // This takes a human readable date, and tries to get the Julian day out of it. { // Trim superfluous characters off. ustring cleaned_date = trim(date); // If the date has a time part, cut that off. size_t offposition = cleaned_date.find(":"); if (offposition != string::npos) { cleaned_date.erase(offposition, cleaned_date.length() - offposition); offposition = cleaned_date.find_last_of(" "); if (offposition != string::npos) { cleaned_date.erase(offposition, cleaned_date.length() - offposition); } } // New GDate object. GDate *gdate; gdate = g_date_new(); // Parse the date. g_date_set_parse(gdate, cleaned_date.c_str()); // Julian day to return. int julian_day; // Validate it. if (g_date_valid(gdate)) { julian_day = g_date_get_julian(gdate); } else { // Not valid, so take today's Julian day. julian_day = date_time_julian_day_get_current(); } // Free memory. g_date_free(gdate); // Return result return julian_day; } int date_time_julian_day_get_parse(guint year, guint month, guint day) { // New GDate object. GDate *gdate; gdate = g_date_new(); // Parse the date. g_date_set_day(gdate, day); g_date_set_month(gdate, GDateMonth(month)); g_date_set_year(gdate, year); // Julian day to return. int julian_day; // Validate it. if (g_date_valid(gdate)) { julian_day = g_date_get_julian(gdate); } else { // Not valid, so take today's Julian day. julian_day = date_time_julian_day_get_current(); } // Free memory. g_date_free(gdate); // Return result return julian_day; } void date_time_normal_get_year_month_day(guint32 julian_day, guint & year, guint & month, guint & day) { // New GDate object. GDate *gdate; gdate = g_date_new(); // Set Julian day. g_date_set_julian(gdate, julian_day); // Return results. year = g_date_get_year(gdate); month = g_date_get_month(gdate); day = g_date_get_day(gdate); // Free memory. g_date_free(gdate); } void date_time_normal_get_hour_minute_second(guint32 seconds, int &hour, int &minute, int &second) { unsigned int seconds_in_day = seconds % 86400; hour = seconds_in_day / 3600; unsigned int remaining_seconds = seconds_in_day - (3600 * hour); minute = remaining_seconds / 60; second = remaining_seconds % 60; } int date_time_seconds_to_julian(int seconds) // Converts seconds since Epoch to a Julian day. { GTime time = seconds; GDate *date; date = g_date_new(); g_date_set_time_t (date, time); int julian_day = g_date_get_julian(date); g_date_free(date); return julian_day; } int date_time_julian_to_seconds(int day) // Converts a Julian day to seconds since Epoch. { // Our date, from the Julian days. GDate *date; date = g_date_new_julian(day); // Date of the Epoch. GDate *epoch; epoch = g_date_new_dmy(1, G_DATE_JANUARY, 1970); // Days in between. int days = g_date_days_between(epoch, date); // Free memory. g_date_free(date); g_date_free(epoch); // Seconds since Epoch. int seconds = days * 86400; return seconds; } bibledit-gtk-4.9/src/date_time_utils.h000664 000766 000024 00000003120 12221507150 020157 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DATE_TIME_UTILS_H #define INCLUDED_DATE_TIME_UTILS_H #include "libraries.h" #include int date_time_seconds_get_current (); int date_time_julian_day_get_current (); ustring date_time_julian_human_readable (int julian_day, bool weekday); ustring date_time_julian_get_month_and_year (int julian_day); ustring date_time_seconds_human_readable (int seconds, bool weekday); int date_time_julian_day_get_parse (const ustring& date); int date_time_julian_day_get_parse (guint year, guint month, guint day); void date_time_normal_get_year_month_day (guint32 julian_day, guint& year, guint& month, guint& day); void date_time_normal_get_hour_minute_second (guint32 seconds, int& hour, int& minute, int& second); int date_time_seconds_to_julian (int seconds); int date_time_julian_to_seconds (int day); #endif bibledit-gtk-4.9/src/dialogarea.cpp000664 000766 000024 00000025036 12221507130 017437 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogarea.h" #include "utilities.h" #include #include "sqlite_reader.h" #include "notes_utils.h" #include "completion.h" #include "gwrappers.h" #include "settings.h" #include "help.h" #include "tiny_utilities.h" AreaDialog::AreaDialog(int dummy) { areadialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(areadialog), "Area selection"); gtk_window_set_position(GTK_WINDOW(areadialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(areadialog), TRUE); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(areadialog)); gtk_widget_show(dialog_vbox1); vbox1 = gtk_vbox_new(FALSE, 2); gtk_widget_show(vbox1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), vbox1, TRUE, TRUE, 0); gtk_container_set_border_width(GTK_CONTAINER(vbox1), 2); label4 = gtk_label_new("Select which part of the text to work on"); gtk_widget_show(label4); gtk_box_pack_start(GTK_BOX(vbox1), label4, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label4), 0, 0.5); GSList *radiobutton_raw_group = NULL; radiobutton_raw = gtk_radio_button_new_with_mnemonic(NULL, "The raw _USFM text"); gtk_widget_show(radiobutton_raw); gtk_box_pack_start(GTK_BOX(vbox1), radiobutton_raw, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_raw), radiobutton_raw_group); radiobutton_raw_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_raw)); radiobutton_all = gtk_radio_button_new_with_mnemonic(NULL, "_All the text except the USFM codes"); gtk_widget_show(radiobutton_all); gtk_box_pack_start(GTK_BOX(vbox1), radiobutton_all, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_all), radiobutton_raw_group); radiobutton_raw_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_all)); radiobutton_categories = gtk_radio_button_new_with_mnemonic(NULL, "C_ertain categories specified below"); gtk_widget_show(radiobutton_categories); gtk_box_pack_start(GTK_BOX(vbox1), radiobutton_categories, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_categories), radiobutton_raw_group); radiobutton_raw_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_categories)); checkbutton_id = gtk_check_button_new_with_mnemonic("_Identifiers"); gtk_widget_show(checkbutton_id); gtk_box_pack_start(GTK_BOX(vbox1), checkbutton_id, FALSE, FALSE, 0); checkbutton_intro = gtk_check_button_new_with_mnemonic("I_ntroductions"); gtk_widget_show(checkbutton_intro); gtk_box_pack_start(GTK_BOX(vbox1), checkbutton_intro, FALSE, FALSE, 0); checkbutton_heading = gtk_check_button_new_with_mnemonic("_Titles and headings"); gtk_widget_show(checkbutton_heading); gtk_box_pack_start(GTK_BOX(vbox1), checkbutton_heading, FALSE, FALSE, 0); checkbutton_chapter = gtk_check_button_new_with_mnemonic("Cha_pter text"); gtk_widget_show(checkbutton_chapter); gtk_box_pack_start(GTK_BOX(vbox1), checkbutton_chapter, FALSE, FALSE, 0); checkbutton_study = gtk_check_button_new_with_mnemonic("_Study notes"); gtk_widget_show(checkbutton_study); gtk_box_pack_start(GTK_BOX(vbox1), checkbutton_study, FALSE, FALSE, 0); checkbutton_notes = gtk_check_button_new_with_mnemonic("_Foot- and endnotes"); gtk_widget_show(checkbutton_notes); gtk_box_pack_start(GTK_BOX(vbox1), checkbutton_notes, FALSE, FALSE, 0); checkbutton_xref = gtk_check_button_new_with_mnemonic("C_rossreferences"); gtk_widget_show(checkbutton_xref); gtk_box_pack_start(GTK_BOX(vbox1), checkbutton_xref, FALSE, FALSE, 0); checkbutton_verse = gtk_check_button_new_with_mnemonic("_Verse text"); gtk_widget_show(checkbutton_verse); gtk_box_pack_start(GTK_BOX(vbox1), checkbutton_verse, FALSE, FALSE, 0); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(areadialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(areadialog, NULL, NULL, NULL); cancelbutton = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton); gtk_dialog_add_action_widget(GTK_DIALOG(areadialog), cancelbutton, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton), true); okbutton = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton); gtk_dialog_add_action_widget(GTK_DIALOG(areadialog), okbutton, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton), true); g_signal_connect((gpointer) radiobutton_raw, "toggled", G_CALLBACK(on_radiobutton_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_all, "toggled", G_CALLBACK(on_radiobutton_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_categories, "toggled", G_CALLBACK(on_radiobutton_toggled), gpointer(this)); g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(companiondialog_on_okbutton_clicked), gpointer(this)); gtk_widget_grab_default(okbutton); // Set the values in the gui from the session object. extern Settings *settings; switch (settings->session.area_type) { case atRaw: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_raw), true); break; case atAll: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_all), true); break; case atSelection: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_categories), true); break; } gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_id), settings->session.area_id); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_intro), settings->session.area_intro); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_heading), settings->session.area_heading); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_chapter), settings->session.area_chapter); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_study), settings->session.area_study); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_notes), settings->session.area_notes); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_xref), settings->session.area_xref); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_verse), settings->session.area_verse); set_gui(); } AreaDialog::~AreaDialog() { gtk_widget_destroy(areadialog); } int AreaDialog::run() { return gtk_dialog_run(GTK_DIALOG(areadialog)); } void AreaDialog::companiondialog_on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((AreaDialog *) user_data)->on_ok(); } void AreaDialog::on_radiobutton_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((AreaDialog *) user_data)->set_gui(); } void AreaDialog::on_ok() { extern Settings *settings; settings->session.area_type = get_area_type(); settings->session.area_id = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_id)); settings->session.area_intro = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_intro)); settings->session.area_heading = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_heading)); settings->session.area_chapter = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_chapter)); settings->session.area_study = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_study)); settings->session.area_notes = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_notes)); settings->session.area_xref = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_xref)); settings->session.area_verse = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_verse)); } void AreaDialog::set_gui() { AreaType areatype = get_area_type(); switch (areatype) { case atRaw: case atAll: set_selectors_sensitive(false); break; case atSelection: set_selectors_sensitive(true); break; } } AreaType AreaDialog::get_area_type() { AreaType returnvalue = atRaw; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_all))) returnvalue = atAll; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_categories))) returnvalue = atSelection; return returnvalue; } void AreaDialog::set_selectors_sensitive(bool sensitive) { gtk_widget_set_sensitive(checkbutton_id, sensitive); gtk_widget_set_sensitive(checkbutton_intro, sensitive); gtk_widget_set_sensitive(checkbutton_heading, sensitive); gtk_widget_set_sensitive(checkbutton_chapter, sensitive); gtk_widget_set_sensitive(checkbutton_study, sensitive); gtk_widget_set_sensitive(checkbutton_notes, sensitive); gtk_widget_set_sensitive(checkbutton_xref, sensitive); gtk_widget_set_sensitive(checkbutton_verse, sensitive); } ustring area_information() // Returns certain text that indicates the currently selected area to work on in the text. { vector < ustring > areas; ustring text; extern Settings *settings; switch (settings->session.area_type) { case atRaw: areas.push_back("Raw text"); break; case atAll: areas.push_back("All text"); break; case atSelection: if (settings->session.area_id) areas.push_back("Identifiers"); if (settings->session.area_intro) areas.push_back("Introductions"); if (settings->session.area_heading) areas.push_back("Headings"); if (settings->session.area_chapter) areas.push_back("Chapter text"); if (settings->session.area_study) areas.push_back("Study notes"); if (settings->session.area_notes) areas.push_back("Foot- and endnotes"); if (settings->session.area_xref) areas.push_back("Crossreferences"); if (settings->session.area_verse) areas.push_back("Verse text"); break; } if (areas.size() > 3) { text = convert_to_string(int (areas.size())) + " Areas"; } else { for (unsigned int i = 0; i < areas.size(); i++) { if (!text.empty()) text.append(", "); text.append(areas[i]); } } if (areas.empty()) text = "No areas selected"; return text; } bibledit-gtk-4.9/src/dialogarea.h000664 000766 000024 00000003503 12221507150 017101 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGAREA_H #define INCLUDED_DIALOGAREA_H #include #include "types.h" class AreaDialog { public: AreaDialog (int dummy); ~AreaDialog (); int run (); protected: GtkWidget *areadialog; GtkWidget *dialog_vbox1; GtkWidget *vbox1; GtkWidget *label4; GtkWidget *radiobutton_raw; GtkWidget *radiobutton_all; GtkWidget *radiobutton_categories; GtkWidget *checkbutton_id; GtkWidget *checkbutton_intro; GtkWidget *checkbutton_heading; GtkWidget *checkbutton_chapter; GtkWidget *checkbutton_study; GtkWidget *checkbutton_notes; GtkWidget *checkbutton_xref; GtkWidget *checkbutton_verse; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton; GtkWidget *okbutton; private: static void companiondialog_on_okbutton_clicked (GtkButton *button, gpointer user_data); static void on_radiobutton_toggled (GtkToggleButton *togglebutton, gpointer user_data); void on_ok (); void set_gui (); AreaType get_area_type (); void set_selectors_sensitive (bool sensitive); }; ustring area_information (); #endif bibledit-gtk-4.9/src/dialogbook.cpp000664 000766 000024 00000015737 12221507143 017474 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogbook.h" #include "utilities.h" #include "bible.h" #include "dialogselectchapters.h" #include "projectutils.h" #include "books.h" #include "help.h" #include "settings.h" #include "listview.h" #include "screen.h" enum { COLUMN_BOOK, NUM_COLUMNS }; BookDialog::BookDialog(const ustring & project) { // Store data. myproject = project; bookdialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(bookdialog), "Books"); gtk_window_set_position(GTK_WINDOW(bookdialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(bookdialog), TRUE); gtk_window_set_destroy_with_parent(GTK_WINDOW(bookdialog), TRUE); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(bookdialog)); gtk_widget_show(dialog_vbox1); vbox1 = gtk_vbox_new(FALSE, 2); gtk_widget_show(vbox1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), vbox1, TRUE, TRUE, 0); label11 = gtk_label_new("To reorder a book, drag it to the new location."); gtk_widget_show(label11); gtk_box_pack_start(GTK_BOX(vbox1), label11, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label11), 0, 0.5); scrolledwindow1 = gtk_scrolled_window_new(NULL, NULL); gtk_widget_show(scrolledwindow1); gtk_box_pack_start(GTK_BOX(vbox1), scrolledwindow1, TRUE, TRUE, 0); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow1), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scrolledwindow1), GTK_SHADOW_IN); treeview1 = gtk_tree_view_new(); gtk_widget_show(treeview1); gtk_container_add(GTK_CONTAINER(scrolledwindow1), treeview1); gtk_tree_view_set_reorderable(GTK_TREE_VIEW(treeview1), TRUE); hbox8 = gtk_hbox_new(FALSE, 0); gtk_widget_show(hbox8); gtk_box_pack_start (GTK_BOX (vbox1), hbox8, FALSE, FALSE, 0); button_standard_order = gtk_button_new(); gtk_widget_show(button_standard_order); gtk_box_pack_start(GTK_BOX(hbox8), button_standard_order, FALSE, FALSE, 0); alignment5 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment5); gtk_container_add(GTK_CONTAINER(button_standard_order), alignment5); hbox10 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox10); gtk_container_add(GTK_CONTAINER(alignment5), hbox10); image5 = gtk_image_new_from_stock("gtk-sort-ascending", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image5); gtk_box_pack_start(GTK_BOX(hbox10), image5, FALSE, FALSE, 0); label9 = gtk_label_new_with_mnemonic("_Standard order"); gtk_widget_show(label9); gtk_box_pack_start(GTK_BOX(hbox10), label9, FALSE, FALSE, 0); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(bookdialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(bookdialog, NULL, NULL, NULL); cancelbutton1 = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton1); gtk_dialog_add_action_widget(GTK_DIALOG(bookdialog), cancelbutton1, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton1), true); okbutton1 = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton1); gtk_dialog_add_action_widget(GTK_DIALOG(bookdialog), okbutton1, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton1), true); g_signal_connect((gpointer) button_standard_order, "clicked", G_CALLBACK(on_button_standard_order_clicked), gpointer(this)); g_signal_connect((gpointer) okbutton1, "clicked", G_CALLBACK(on_okbutton1_clicked), gpointer(this)); gtk_widget_grab_focus(treeview1); gtk_widget_grab_default(okbutton1); // Storage, renderer, column and selection. model = gtk_list_store_new(NUM_COLUMNS, G_TYPE_STRING, G_TYPE_BOOLEAN, G_TYPE_INT); gtk_tree_view_set_model(GTK_TREE_VIEW(treeview1), GTK_TREE_MODEL(model)); g_object_unref(model); GtkCellRenderer *renderer = gtk_cell_renderer_text_new(); gtk_tree_view_insert_column_with_attributes(GTK_TREE_VIEW(treeview1), -1, "Name", renderer, "text", COLUMN_BOOK, NULL); gtk_tree_selection_set_mode(gtk_tree_view_get_selection(GTK_TREE_VIEW(treeview1)), GTK_SELECTION_SINGLE); // Load content. extern Settings *settings; ProjectConfiguration *projectconfig = settings->projectconfig(myproject); vector < unsigned int >books = books_type_to_ids(btUnknown); books_order(myproject, books); GtkTreeIter iter; for (unsigned int i = 0; i < books.size(); i++) { gtk_list_store_append(model, &iter); gtk_list_store_set(model, &iter, COLUMN_BOOK, books_id_to_name(projectconfig->language_get(), books[i]).c_str(), -1); } new DialogAutoScaler (bookdialog, G_MAXINT); } BookDialog::~BookDialog() { gtk_widget_destroy(bookdialog); } int BookDialog::run() { return gtk_dialog_run(GTK_DIALOG(bookdialog)); } void BookDialog::on_okbutton1_clicked(GtkButton * button, gpointer user_data) { ((BookDialog *) user_data)->on_okbutton(); } void BookDialog::on_okbutton() { extern Settings *settings; ProjectConfiguration *projectconfig = settings->projectconfig(myproject); vector < ustring > ubooks = listview_get_strings(treeview1); vector < int >books; for (unsigned int i = 0; i < ubooks.size(); i++) { books.push_back(books_name_to_id(projectconfig->language_get(), ubooks[i])); } projectconfig->book_order_set(books); } void BookDialog::on_button_standard_order_clicked(GtkButton * button, gpointer user_data) { ((BookDialog *) user_data)->on_button_standard_order(); } void BookDialog::on_button_standard_order() { // Get all the book ids. vector < ustring > ubooks = listview_get_strings(treeview1); vector < unsigned int >books; extern Settings *settings; ProjectConfiguration *projectconfig = settings->projectconfig(myproject); for (unsigned int i = 0; i < ubooks.size(); i++) { books.push_back(books_name_to_id(projectconfig->language_get(), ubooks[i])); } // Order them. books_standard_order(books); // Make localized books of them. ubooks.clear(); for (unsigned int i = 0; i < books.size(); i++) { ustring book = books_id_to_name(projectconfig->language_get(), books[i]); ubooks.push_back(book); } // Show them. GtkTreeModel *model; model = gtk_tree_view_get_model(GTK_TREE_VIEW(treeview1)); listview_set_strings(treeview1, GTK_LIST_STORE(model), ubooks); } bibledit-gtk-4.9/src/dialogbook.h000664 000766 000024 00000003211 12221507143 017121 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003 The Free Software Foundation. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGBOOK_H #define INCLUDED_DIALOGBOOK_H #include #include "ustring.h" class BookDialog { public: BookDialog (const ustring& project); ~BookDialog (); int run (); protected: GtkWidget *bookdialog; GtkWidget *dialog_vbox1; GtkWidget *vbox1; GtkWidget *label11; GtkWidget *scrolledwindow1; GtkWidget *treeview1; GtkWidget *hbox8; GtkWidget *button_standard_order; GtkWidget *alignment5; GtkWidget *hbox10; GtkWidget *image5; GtkWidget *label9; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton1; GtkWidget *okbutton1; static void on_button_standard_order_clicked (GtkButton *button, gpointer user_data); void on_button_standard_order (); static void on_okbutton1_clicked (GtkButton *button, gpointer user_data); void on_okbutton (); private: ustring myproject; GtkListStore *model; }; #endif bibledit-gtk-4.9/src/dialogbooknames.cpp000664 000766 000024 00000016047 12221507146 020516 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogbooknames.h" #include "utilities.h" #include "projectutils.h" #include "books.h" #include "help.h" #include "settings.h" #include "shortcuts.h" #include "screen.h" enum { COLUMN_BIBLEDIT, COLUMN_EDITABLE, COLUMN_URL, NUM_COLUMNS }; BooknamesDialog::BooknamesDialog(const map & books, const gchar * info, const gchar * heading2) { // Shortcuts. Shortcuts shortcuts(0); resourcebooksdialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(resourcebooksdialog), "Books"); gtk_window_set_position(GTK_WINDOW(resourcebooksdialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(resourcebooksdialog), TRUE); gtk_window_set_type_hint(GTK_WINDOW(resourcebooksdialog), GDK_WINDOW_TYPE_HINT_DIALOG); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(resourcebooksdialog)); gtk_widget_show(dialog_vbox1); vbox1 = gtk_vbox_new(FALSE, 2); gtk_widget_show(vbox1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), vbox1, TRUE, TRUE, 0); label_info = gtk_label_new(info); gtk_widget_show(label_info); gtk_box_pack_start(GTK_BOX(vbox1), label_info, FALSE, FALSE, 0); gtk_label_set_line_wrap(GTK_LABEL(label_info), TRUE); gtk_misc_set_alignment(GTK_MISC(label_info), 0, 0.5); hseparator1 = gtk_hseparator_new(); gtk_widget_show(hseparator1); gtk_box_pack_start(GTK_BOX(vbox1), hseparator1, FALSE, FALSE, 0); scrolledwindow1 = gtk_scrolled_window_new(NULL, NULL); gtk_widget_show(scrolledwindow1); gtk_box_pack_start(GTK_BOX(vbox1), scrolledwindow1, TRUE, TRUE, 0); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow1), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scrolledwindow1), GTK_SHADOW_IN); treeview1 = gtk_tree_view_new(); gtk_widget_show(treeview1); gtk_container_add(GTK_CONTAINER(scrolledwindow1), treeview1); gtk_tree_view_set_reorderable(GTK_TREE_VIEW(treeview1), TRUE); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(resourcebooksdialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(resourcebooksdialog, NULL, &shortcuts, NULL); cancelbutton1 = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton1); gtk_dialog_add_action_widget(GTK_DIALOG(resourcebooksdialog), cancelbutton1, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton1), true); shortcuts.stockbutton(cancelbutton1); okbutton1 = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton1); gtk_dialog_add_action_widget(GTK_DIALOG(resourcebooksdialog), okbutton1, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton1), true); shortcuts.stockbutton(okbutton1); shortcuts.process(); g_signal_connect((gpointer) okbutton1, "clicked", G_CALLBACK(on_okbutton1_clicked), gpointer(this)); gtk_widget_grab_focus(okbutton1); gtk_widget_grab_default(okbutton1); // Storage, renderer, column and selection. model = gtk_list_store_new(NUM_COLUMNS, G_TYPE_STRING, G_TYPE_BOOLEAN, G_TYPE_STRING); gtk_tree_view_set_model(GTK_TREE_VIEW(treeview1), GTK_TREE_MODEL(model)); g_object_unref(model); GtkCellRenderer *renderer1 = gtk_cell_renderer_text_new(); gtk_tree_view_insert_column_with_attributes(GTK_TREE_VIEW(treeview1), -1, "Book in Bibledit-Gtk", renderer1, "text", COLUMN_BIBLEDIT, NULL); GtkCellRenderer *renderer2 = gtk_cell_renderer_text_new(); g_signal_connect(renderer2, "edited", G_CALLBACK(cell_edited), gpointer(this)); gtk_tree_view_insert_column_with_attributes(GTK_TREE_VIEW(treeview1), -1, heading2, renderer2, "text", COLUMN_URL, "editable", COLUMN_EDITABLE, NULL); gtk_tree_selection_set_mode(gtk_tree_view_get_selection(GTK_TREE_VIEW(treeview1)), GTK_SELECTION_SINGLE); // Load texts. vector < unsigned int >ids = books_type_to_ids(btUnknown); map books_copy = books; for (unsigned int i = 0; i < ids.size(); i++) { GtkTreeIter iter; gtk_list_store_append(model, &iter); unsigned int id = ids[i]; ustring text = books_copy[id]; gtk_list_store_set(model, &iter, COLUMN_BIBLEDIT, books_id_to_english(ids[i]).c_str(), COLUMN_EDITABLE, 1, COLUMN_URL, text.c_str(), -1); } new DialogAutoScaler (resourcebooksdialog, G_MAXINT); } BooknamesDialog::~BooknamesDialog() { gtk_widget_destroy(resourcebooksdialog); } int BooknamesDialog::run() { return gtk_dialog_run(GTK_DIALOG(resourcebooksdialog)); } void BooknamesDialog::on_okbutton1_clicked(GtkButton * button, gpointer user_data) { ((BooknamesDialog *) user_data)->on_okbutton(); } void BooknamesDialog::on_okbutton() { GtkTreeModel *model; model = gtk_tree_view_get_model(GTK_TREE_VIEW(treeview1)); GtkTreeIter iter; gboolean valid; int index = 0; valid = gtk_tree_model_get_iter_first(model, &iter); while (valid) { GtkTreePath *path = gtk_tree_path_new_from_indices(index, -1); gchar *str_abbrev; gchar *str_text; gtk_tree_model_get(GTK_TREE_MODEL(model), &iter, COLUMN_BIBLEDIT, &str_abbrev, COLUMN_URL, &str_text, -1); if (strcmp(str_text, "") != 0) { unsigned int id = books_english_to_id(str_abbrev); ustring text = str_text; if (!text.empty()) { newbooks[id] = text; } } gtk_tree_path_free(path); g_free(str_abbrev); g_free(str_text); valid = gtk_tree_model_iter_next(model, &iter); index++; } } void BooknamesDialog::cell_edited(GtkCellRendererText * cell, const gchar * path_string, const gchar * new_text, gpointer data) { ((BooknamesDialog *) data)->on_cell_edited(cell, path_string, new_text); } void BooknamesDialog::on_cell_edited(GtkCellRendererText * cell, const gchar * path_string, const gchar * new_text) { // Set / initialize some variables. GtkTreeModel *tmodel = (GtkTreeModel *) model; GtkTreePath *path = gtk_tree_path_new_from_string(path_string); GtkTreeIter iter; gtk_tree_model_get_iter(tmodel, &iter, path); // Free memory for the old text. gchar *old_text; gtk_tree_model_get(tmodel, &iter, COLUMN_URL, &old_text, -1); g_free(old_text); // Make copy of new text and put it in the store. gtk_list_store_set(GTK_LIST_STORE(model), &iter, COLUMN_URL, g_strdup(new_text), -1); // Free path. gtk_tree_path_free(path); } bibledit-gtk-4.9/src/dialogbooknames.h000664 000766 000024 00000003350 12221507127 020153 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003 The Free Software Foundation. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGBOOKNAMES_H #define INCLUDED_DIALOGBOOKNAMES_H #include #include "ustring.h" class BooknamesDialog { public: BooknamesDialog (const map & books, const gchar * info, const gchar * heading2); ~BooknamesDialog (); int run (); map newbooks; protected: GtkWidget *resourcebooksdialog; GtkWidget *dialog_vbox1; GtkWidget *vbox1; GtkWidget *label_info; GtkWidget *hseparator1; GtkWidget *scrolledwindow1; GtkWidget *treeview1; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton1; GtkWidget *okbutton1; static void cell_edited (GtkCellRendererText *cell, const gchar *path_string, const gchar *new_text, gpointer data); void on_cell_edited (GtkCellRendererText *cell, const gchar *path_string, const gchar *new_text); static void on_okbutton1_clicked (GtkButton *button, gpointer user_data); void on_okbutton (); private: GtkListStore *model; }; #endif bibledit-gtk-4.9/src/dialogbulkspelling.cpp000644 000766 000024 00000006422 12453001367 021226 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogbulkspelling.h" #include "utilities.h" #include "projectutils.h" #include "directories.h" #include "combobox.h" #include "dialogselectchapters.h" #include "portion_utils.h" #include "settings.h" #include "help.h" #include "books.h" #include "shortcuts.h" #include "tiny_utilities.h" #include "gwrappers.h" #include "screen.h" BulkSpellingDialog::BulkSpellingDialog(const vector words) { gtkbuilder = gtk_builder_new (); gtk_builder_add_from_file (gtkbuilder, gw_build_filename (Directories->get_package_data(), "gtkbuilder.bulkspellingdialog.xml").c_str(), NULL); Shortcuts shortcuts(0); dialog = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "dialog")); label = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "label")); gtk_label_set_text (GTK_LABEL (label), "All the words that are misspelled are visible below.\nClick on a word to approve the spelling."); vbox = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "vbox")); InDialogHelp * indialoghelp = new InDialogHelp(dialog, gtkbuilder, &shortcuts, NULL); cancelbutton = indialoghelp->cancelbutton; okbutton = indialoghelp->okbutton; gtk_widget_grab_default(okbutton); gtk_widget_grab_focus(okbutton); g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(on_okbutton_clicked), gpointer(this)); // Create a button for each misspelled word. GtkWidget * spellbutton; for (unsigned int i = 0; i < words.size(); i++) { spellbutton = gtk_button_new_with_label(words[i].c_str()); gtk_widget_show(spellbutton); gtk_box_pack_start(GTK_BOX(vbox), spellbutton, false, false, 0); g_signal_connect((gpointer) spellbutton, "clicked", G_CALLBACK(on_spellbutton_clicked), gpointer(this)); } shortcuts.process(); gtk_widget_show(dialog); new DialogAutoScaler (dialog, G_MAXINT); } BulkSpellingDialog::~BulkSpellingDialog() { g_object_unref (gtkbuilder); gtk_widget_destroy(dialog); } int BulkSpellingDialog::run() { return gtk_dialog_run(GTK_DIALOG(dialog)); } void BulkSpellingDialog::on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((BulkSpellingDialog *) user_data)->on_okbutton(); } void BulkSpellingDialog::on_okbutton() { } void BulkSpellingDialog::on_spellbutton_clicked(GtkButton * button, gpointer user_data) { ((BulkSpellingDialog *) user_data)->on_spellbutton(button); } void BulkSpellingDialog::on_spellbutton(GtkButton *button) { approved.push_back (gtk_button_get_label (button)); gtk_widget_destroy (GTK_WIDGET (button)); } bibledit-gtk-4.9/src/dialogbulkspelling.h000664 000766 000024 00000002702 12221507140 020663 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOG_BULK_SPELLING_H #define INCLUDED_DIALOG_BULK_SPELLING_H #include #include "ustring.h" #include "settings.h" class BulkSpellingDialog { public: BulkSpellingDialog (const vector words); ~BulkSpellingDialog (); int run (); vector approved; protected: GtkBuilder *gtkbuilder; GtkWidget *dialog; GtkWidget *label; GtkWidget *vbox; GtkWidget *cancelbutton; GtkWidget *okbutton; private: static void on_okbutton_clicked (GtkButton *button, gpointer user_data); void on_okbutton (); static void on_spellbutton_clicked (GtkButton *button, gpointer user_data); void on_spellbutton (GtkButton *button); }; #endif bibledit-gtk-4.9/src/dialogchapternumber.cpp000664 000766 000024 00000012766 12221507151 021377 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogchapternumber.h" #include "settings.h" #include "projectutils.h" #include "versification.h" #include "combobox.h" #include "help.h" #include "books.h" #include "tiny_utilities.h" ChapterNumberDialog::ChapterNumberDialog(int dummy) { // Build gui. dialogchapternumber = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(dialogchapternumber), "Insert Chapter"); gtk_window_set_position(GTK_WINDOW(dialogchapternumber), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_type_hint(GTK_WINDOW(dialogchapternumber), GDK_WINDOW_TYPE_HINT_DIALOG); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(dialogchapternumber)); gtk_widget_show(dialog_vbox1); label_purpose = gtk_label_new("Insert a new chapter"); gtk_widget_show(label_purpose); gtk_box_pack_start(GTK_BOX(dialog_vbox1), label_purpose, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label_purpose), 0, 0.5); hbox1 = gtk_hbox_new(FALSE, 5); gtk_widget_show(hbox1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), hbox1, TRUE, TRUE, 0); label1 = gtk_label_new("Number"); gtk_widget_show(label1); gtk_box_pack_start(GTK_BOX(hbox1), label1, FALSE, FALSE, 0); entry1 = gtk_entry_new(); gtk_widget_show(entry1); gtk_box_pack_start(GTK_BOX(hbox1), entry1, FALSE, FALSE, 0); gtk_entry_set_max_length(GTK_ENTRY(entry1), 4); gtk_entry_set_activates_default(GTK_ENTRY(entry1), TRUE); gtk_entry_set_width_chars(GTK_ENTRY(entry1), 4); label_info = gtk_label_new(""); gtk_widget_show(label_info); gtk_box_pack_start(GTK_BOX(dialog_vbox1), label_info, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label_info), 0, 0.5); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(dialogchapternumber)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(dialogchapternumber, NULL, NULL, NULL); cancelbutton1 = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton1); gtk_dialog_add_action_widget(GTK_DIALOG(dialogchapternumber), cancelbutton1, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton1), true); okbutton1 = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton1); gtk_dialog_add_action_widget(GTK_DIALOG(dialogchapternumber), okbutton1, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton1), true); g_signal_connect((gpointer) entry1, "changed", G_CALLBACK(on_entry1_changed), gpointer(this)); g_signal_connect((gpointer) okbutton1, "clicked", G_CALLBACK(on_okbutton1_clicked), gpointer(this)); gtk_label_set_mnemonic_widget(GTK_LABEL(label1), entry1); gtk_widget_grab_focus(okbutton1); gtk_widget_grab_default(okbutton1); // GUI. set_gui(); } ChapterNumberDialog::~ChapterNumberDialog() { gtk_widget_destroy(dialogchapternumber); } int ChapterNumberDialog::run() { return gtk_dialog_run(GTK_DIALOG(dialogchapternumber)); } void ChapterNumberDialog::on_okbutton1_clicked(GtkButton * button, gpointer user_data) { ((ChapterNumberDialog *) user_data)->on_ok(); } void ChapterNumberDialog::on_ok() // Insert a chapter { extern Settings *settings; ProjectConfiguration *projectconfig = settings->projectconfig(settings->genconfig.project_get()); unsigned int newchapter = get_chapter(); vector < ustring > lines; versification_create_chapter_template(projectconfig->versification_get(), settings->genconfig.book_get(), newchapter, lines); CategorizeChapterVerse ccv(lines); project_store_chapter(settings->genconfig.project_get(), settings->genconfig.book_get(), ccv); settings->genconfig.chapter_set(convert_to_string(newchapter)); } void ChapterNumberDialog::set_gui() { extern Settings *settings; set < unsigned int >current_chapters; { vector < unsigned int >chapters = project_get_chapters(settings->genconfig.project_get(), settings->genconfig.book_get()); for (unsigned int i = 0; i < chapters.size(); i++) current_chapters.insert(chapters[i]); } bool sensitive = true; ustring message; ustring ch = gtk_entry_get_text(GTK_ENTRY(entry1)); ch = number_in_string(ch); if (ch.empty()) { sensitive = false; message = "Enter a chapter number"; } else { if (current_chapters.find(convert_to_int(ch)) != current_chapters.end()) { sensitive = false; message = "This chapter exists in the book"; } } gtk_widget_set_sensitive(okbutton1, sensitive); gtk_label_set_text(GTK_LABEL(label_info), message.c_str()); } void ChapterNumberDialog::on_entry1_changed(GtkEditable * editable, gpointer user_data) { ((ChapterNumberDialog *) user_data)->set_gui(); } unsigned int ChapterNumberDialog::get_chapter() { return convert_to_int(gtk_entry_get_text(GTK_ENTRY(entry1))); } bibledit-gtk-4.9/src/dialogchapternumber.h000664 000766 000024 00000002740 12221507141 021032 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGCHAPTERNUMBER_H #define INCLUDED_DIALOGCHAPTERNUMBER_H #include "utilities.h" class ChapterNumberDialog { public: ChapterNumberDialog (int dummy); ~ChapterNumberDialog (); int run (); protected: GtkWidget *dialogchapternumber; GtkWidget *dialog_vbox1; GtkWidget *label_purpose; GtkWidget *hbox1; GtkWidget *label1; GtkWidget *entry1; GtkWidget *label_info; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton1; GtkWidget *okbutton1; static void on_okbutton1_clicked (GtkButton *button, gpointer user_data); void on_ok (); static void on_entry1_changed (GtkEditable *editable, gpointer user_data); void set_gui (); unsigned int get_chapter (); }; #endif bibledit-gtk-4.9/src/dialogcheck.cpp000664 000766 000024 00000153727 12343777712 017641 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogcheck.h" #include "dialogselectbooks.h" #include "utilities.h" #include "bible.h" #include "dialoglistview.h" #include "scripturechecks.h" #include "dialogeditlist.h" #include "dialogarea.h" #include "projectutils.h" #include "directories.h" #include "checks.h" #include "gtkwrappers.h" #include "settings.h" #include "gui.h" #include "books.h" CheckDialog::CheckDialog(CheckDialogType checkdialogtype) { // Save and initialize variables. mycheckdialogtype = checkdialogtype; extern Settings *settings; const ustring project_name = settings->genconfig.project_get().c_str(); checkdialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(checkdialog), project_name.c_str()); gtk_window_set_position(GTK_WINDOW(checkdialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(checkdialog), TRUE); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(checkdialog)); gtk_widget_show(dialog_vbox1); vbox1 = gtk_vbox_new(FALSE, 4); gtk_widget_show(vbox1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), vbox1, TRUE, TRUE, 0); gtk_container_set_border_width(GTK_CONTAINER(vbox1), 4); // Initialize some variables in case they're not used. radiobutton_sort0 = NULL; radiobutton_sort1 = NULL; radiobutton_sort2 = NULL; radiobutton_sort3 = NULL; selectprojectgui = NULL; selectparallelprojectgui = NULL; entry_capitalization_punctuation = NULL; checkbutton_repetition_case = NULL; entry_matching_pairs_ignore = NULL; wordcount_checkbutton1 = NULL; usfm_spacing_entry1 = NULL; checkbutton_include_verse_text = NULL; checkbutton_output_in_ot_order = NULL; checkbutton_include_second_project = NULL; // Build the gui for this check. switch (checkdialogtype) { case cdtChaptersVerses: information_setup("Checks the chapter and verse markers, to see whether they are correct according to the versification of the project."); book_selection_setup(); break; case cdtMarkersCount: information_setup("Counts the number of times a marker is used."); sorting_setup("_No sorting", "Sort on _marker", "_Sort on count", NULL); book_selection_setup(); break; case cdtMarkersValidate: information_setup("Verifies that the markers are valid."); book_selection_setup(); break; case cdtMarkersCompare: information_setup("Compares the markers of the current project with the ones in another project. This other project is taken as the standard to compare against."); markers_comparison_setup(); book_selection_setup(); break; case cdtMarkersSpacing: information_setup("Checks whether the text that belongs to selected markers has one space after it."); markers_spacing_setup(); book_selection_setup(); break; case cdtCharactersCount: information_setup("Counts the number of characters."); sorting_setup("_No sorting", "_Sort on character", "Sort on co_unt", NULL); book_selection_setup(); break; case cdtWordsCapitalization: information_setup("Check capitalization of the text. Looks for missing capitals after selected punctuation marks, and for suspicious use of capitals such as \"hOuse\" or \"HOuse\"."); words_capitalization_setup(); book_selection_setup(); break; case cdtWordsRepetition: information_setup("Checks for repeating contiguous words."); word_repetition_setup(); book_selection_setup(); break; case cdtMatchingPairs: information_setup("Check matching pairs of punctuation. Checks that opening and closing punctuation match, e.g. a [ needs a ]. Also checks that punctuation is closed in the reverse order that it was opened."); punctuation_matching_pairs_setup(); book_selection_setup(); break; case cdtSentenceStructure: information_setup("Check punctuation of sentences and headings."); book_selection_setup(); break; case cdtUnwantedPatterns: information_setup("Check for unwanted patterns of characters."); characters_unwanted_patterns_setup(); book_selection_setup(); break; case cdtWordsUnwanted: information_setup("Check for unwanted whole words in the text."); unwanted_words_setup(); book_selection_setup(); break; case cdtWordsCount: information_setup("Count the frequency of the words."); sorting_setup("_No sorting", "Sort on _word", "_Sort on count", NULL); word_count_setup(); book_selection_setup(); break; case cdtReferencesInventory: information_setup("Makes an inventory of the references contained in the text."); include_verse_text_setup(); book_selection_setup(); break; case cdtReferencesValidate: information_setup("Validates the references in the text and notes."); book_selection_setup(); break; case cdtNTQuotationsFromOT: information_setup("Shows the places where the New Testament quotes the Old Testament."); include_verse_text_setup(); output_in_ot_order_setup(); book_selection_setup(); break; case cdtSynopticParallelsNT: information_setup("Shows the synoptic parallel passages of the " + project_name + " New Testament."); include_verse_text_setup(); parallel_project_setup(); book_selection_setup(); break; case cdtParallelsOT: information_setup("Shows the parallel passages of the " + project_name + " Old Testament."); include_verse_text_setup(); parallel_project_setup(); book_selection_setup(); break; } dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(checkdialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); cancelbutton = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton); gtk_dialog_add_action_widget(GTK_DIALOG(checkdialog), cancelbutton, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton), true); okbutton = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton); gtk_dialog_add_action_widget(GTK_DIALOG(checkdialog), okbutton, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton), true); g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(on_okbutton_clicked), gpointer(this)); // Default / focus on OK. gtk_widget_grab_default(okbutton); gtk_widget_grab_focus(okbutton); // Set relevant books. set_relevant_books (); // Set gui elements. set_gui(); } CheckDialog::~CheckDialog() { if (selectprojectgui) delete selectprojectgui; if (selectparallelprojectgui) delete selectparallelprojectgui; gtk_widget_destroy(checkdialog); } int CheckDialog::run() { return gtk_dialog_run(GTK_DIALOG(checkdialog)); } void CheckDialog::information_setup(const ustring information) { infolabel = gtk_label_new(information.c_str()); gtk_widget_show(infolabel); gtk_container_add(GTK_CONTAINER(vbox1), infolabel); gtk_label_set_line_wrap(GTK_LABEL(infolabel), TRUE); gtk_misc_set_alignment(GTK_MISC(infolabel), 0, 0); } void CheckDialog::sorting_setup(const gchar * sort0, const gchar * sort1, const gchar * sort2, const gchar * sort3) { GSList *radiobutton_sort_group = NULL; if (sort0) { radiobutton_sort0 = gtk_radio_button_new_with_mnemonic(NULL, sort0); gtk_widget_show(radiobutton_sort0); gtk_box_pack_start(GTK_BOX(vbox1), radiobutton_sort0, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_sort0), radiobutton_sort_group); radiobutton_sort_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_sort0)); } if (sort1) { radiobutton_sort1 = gtk_radio_button_new_with_mnemonic(NULL, sort1); gtk_widget_show(radiobutton_sort1); gtk_box_pack_start(GTK_BOX(vbox1), radiobutton_sort1, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_sort1), radiobutton_sort_group); radiobutton_sort_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_sort1)); } if (sort2) { radiobutton_sort2 = gtk_radio_button_new_with_mnemonic(NULL, sort2); gtk_widget_show(radiobutton_sort2); gtk_box_pack_start(GTK_BOX(vbox1), radiobutton_sort2, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_sort2), radiobutton_sort_group); radiobutton_sort_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_sort2)); } if (sort3) { radiobutton_sort3 = gtk_radio_button_new_with_mnemonic(NULL, sort3); gtk_widget_show(radiobutton_sort3); gtk_box_pack_start(GTK_BOX(vbox1), radiobutton_sort3, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_sort3), radiobutton_sort_group); radiobutton_sort_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_sort3)); } // Set value in sorting buttons. extern Settings *settings; switch (settings->session.checksorttype) { case cstSort0: default: if (sort0) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_sort0), true); break; case cstSort1: if (sort1) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_sort1), true); break; case cstSort2: if (sort2) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_sort2), true); break; case cstSort3: if (sort3) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_sort3), true); break; } } void CheckDialog::book_selection_setup() { hbox1 = gtk_hbox_new(FALSE, 4); gtk_widget_show(hbox1); gtk_box_pack_start(GTK_BOX(vbox1), hbox1, TRUE, TRUE, 0); button_books = gtk_button_new(); gtk_widget_show(button_books); gtk_box_pack_start(GTK_BOX(hbox1), button_books, FALSE, FALSE, 0); alignment1 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment1); gtk_container_add(GTK_CONTAINER(button_books), alignment1); hbox2 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox2); gtk_container_add(GTK_CONTAINER(alignment1), hbox2); image1 = gtk_image_new_from_stock("gtk-properties", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image1); gtk_box_pack_start(GTK_BOX(hbox2), image1, FALSE, FALSE, 0); label5 = gtk_label_new_with_mnemonic("Select _books"); gtk_widget_show(label5); gtk_box_pack_start(GTK_BOX(hbox2), label5, FALSE, FALSE, 0); label_book = gtk_label_new(""); gtk_widget_show(label_book); gtk_box_pack_start(GTK_BOX(hbox1), label_book, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label_book), 0, 0.5); g_signal_connect((gpointer) button_books, "clicked", G_CALLBACK(on_button_books_clicked), gpointer(this)); extern Settings *settings; vector < unsigned int >scripture_books = project_get_books(settings->genconfig.project_get()); for (unsigned int i = 0; i < scripture_books.size(); i++) { selectable_books.push_back(scripture_books[i]); } set_gui_books(); } void CheckDialog::on_button_books_clicked(GtkButton * button, gpointer user_data) { ((CheckDialog *) user_data)->on_booksbutton(); } void CheckDialog::on_booksbutton() { extern Settings *settings; SelectBooksDialog dialog(false); dialog.selectables(selectable_books); dialog.selection_set(settings->session.selected_books); if (dialog.run() == GTK_RESPONSE_OK) { settings->session.selected_books = dialog.selectionset; } set_gui_books(); set_gui(); } void CheckDialog::set_gui_books() { extern Settings *settings; ustring message = gui_book_selection_information(settings->genconfig.project_get()); gtk_label_set_text(GTK_LABEL(label_book), message.c_str()); } void CheckDialog::area_selection_setup() { hbox15 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox15); gtk_container_add(GTK_CONTAINER(vbox1), hbox15); button_area = gtk_button_new(); gtk_widget_show(button_area); gtk_box_pack_start(GTK_BOX(hbox15), button_area, FALSE, FALSE, 0); alignment8 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment8); gtk_container_add(GTK_CONTAINER(button_area), alignment8); hbox16 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox16); gtk_container_add(GTK_CONTAINER(alignment8), hbox16); image8 = gtk_image_new_from_stock("gtk-zoom-in", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image8); gtk_box_pack_start(GTK_BOX(hbox16), image8, FALSE, FALSE, 0); label36 = gtk_label_new_with_mnemonic("Select _area"); gtk_widget_show(label36); gtk_box_pack_start(GTK_BOX(hbox16), label36, FALSE, FALSE, 0); label_area = gtk_label_new(""); gtk_widget_show(label_area); gtk_box_pack_start(GTK_BOX(hbox15), label_area, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label_area), 0, 0.5); g_signal_connect((gpointer) button_area, "clicked", G_CALLBACK(on_button_area_clicked), gpointer(this)); gtk_label_set_text(GTK_LABEL(label_area), area_information().c_str()); } void CheckDialog::on_button_area_clicked(GtkButton * button, gpointer user_data) { ((CheckDialog *) user_data)->on_area(); } void CheckDialog::on_area() { AreaDialog dialog(0); dialog.run(); gtk_label_set_text(GTK_LABEL(label_area), area_information().c_str()); } void CheckDialog::markers_comparison_setup() { extern Settings *settings; vbox3 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox3); gtk_container_add(GTK_CONTAINER(vbox1), vbox3); hseparator2 = gtk_hseparator_new(); gtk_widget_show(hseparator2); gtk_box_pack_start(GTK_BOX(vbox3), hseparator2, TRUE, TRUE, 0); // Project selection gui. selectprojectgui = new SelectProjectGui(0); selectprojectgui->build(vbox3, "Compare _with: ", settings->genconfig.check_markers_compare_project_get()); hseparator1 = gtk_hseparator_new(); gtk_widget_show(hseparator1); gtk_box_pack_start(GTK_BOX(vbox3), hseparator1, TRUE, TRUE, 0); checkbutton_compare_all = gtk_check_button_new_with_mnemonic("Compare _all markers"); gtk_widget_show(checkbutton_compare_all); gtk_box_pack_start(GTK_BOX(vbox3), checkbutton_compare_all, FALSE, FALSE, 0); // Set whether active. gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_compare_all), settings->genconfig.check_markers_compare_all_markers_get()); label17 = gtk_label_new("Below provide a list of markers to be included in the comparison, separated with spaces and without the backslashes, e.g.: id c v"); gtk_widget_show(label17); gtk_box_pack_start(GTK_BOX(vbox3), label17, FALSE, FALSE, 0); gtk_label_set_line_wrap(GTK_LABEL(label17), TRUE); gtk_misc_set_alignment(GTK_MISC(label17), 0, 0.5); entry_compare_include_only = gtk_entry_new(); gtk_widget_show(entry_compare_include_only); gtk_box_pack_start(GTK_BOX(vbox3), entry_compare_include_only, FALSE, FALSE, 0); gtk_entry_set_activates_default(GTK_ENTRY(entry_compare_include_only), TRUE); // Set the markers. gtk_entry_set_text(GTK_ENTRY(entry_compare_include_only), settings->genconfig.check_markers_compare_include_only_get().c_str()); hseparator3 = gtk_hseparator_new(); gtk_widget_show(hseparator3); gtk_box_pack_start(GTK_BOX(vbox3), hseparator3, TRUE, TRUE, 0); label18 = gtk_label_new_with_mnemonic("_Ignore the following markers:"); gtk_widget_show(label18); gtk_box_pack_start(GTK_BOX(vbox3), label18, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label18), 0, 0.5); entry_compare_ignore = gtk_entry_new(); gtk_widget_show(entry_compare_ignore); gtk_box_pack_start(GTK_BOX(vbox3), entry_compare_ignore, FALSE, FALSE, 0); gtk_entry_set_activates_default(GTK_ENTRY(entry_compare_ignore), TRUE); // Set the markers. gtk_entry_set_text(GTK_ENTRY(entry_compare_ignore), settings->genconfig.check_markers_compare_ignore_get().c_str()); hseparator4 = gtk_hseparator_new(); gtk_widget_show(hseparator4); gtk_box_pack_start(GTK_BOX(vbox3), hseparator4, TRUE, TRUE, 0); checkbutton_compare_ignore_verse_zero = gtk_check_button_new_with_mnemonic("Ignore anything before the _first verse"); gtk_widget_show(checkbutton_compare_ignore_verse_zero); gtk_box_pack_start(GTK_BOX(vbox3), checkbutton_compare_ignore_verse_zero, FALSE, FALSE, 0); // Set the state. gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_compare_ignore_verse_zero), settings->genconfig.check_markers_compare_ignore_verse_zero_get()); hseparator5 = gtk_hseparator_new(); gtk_widget_show(hseparator5); gtk_box_pack_start(GTK_BOX(vbox3), hseparator5, TRUE, TRUE, 0); g_signal_connect_after((gpointer) checkbutton_compare_all, "toggled", G_CALLBACK(on_checkbutton_compare_all_toggled), gpointer(this)); gtk_label_set_mnemonic_widget(GTK_LABEL(label18), entry_compare_ignore); // Set gui. on_checkbutton_compare_all(); } void CheckDialog::markers_spacing_setup() { extern Settings *settings; usfm_spacing_hseparator1 = gtk_hseparator_new(); gtk_widget_show(usfm_spacing_hseparator1); gtk_box_pack_start(GTK_BOX(vbox1), usfm_spacing_hseparator1, TRUE, TRUE, 0); usfm_spacing_label2 = gtk_label_new_with_mnemonic("_Provide a list of markers to be checked, separated with spaces, and without the backslashes, e.g.: xo xt"); gtk_widget_show(usfm_spacing_label2); gtk_box_pack_start(GTK_BOX(vbox1), usfm_spacing_label2, FALSE, FALSE, 0); gtk_label_set_line_wrap(GTK_LABEL(usfm_spacing_label2), TRUE); gtk_misc_set_alignment(GTK_MISC(usfm_spacing_label2), 0, 0.5); usfm_spacing_entry1 = gtk_entry_new(); gtk_widget_show(usfm_spacing_entry1); gtk_box_pack_start(GTK_BOX(vbox1), usfm_spacing_entry1, FALSE, FALSE, 0); gtk_entry_set_invisible_char(GTK_ENTRY(usfm_spacing_entry1), 8226); gtk_entry_set_activates_default(GTK_ENTRY(usfm_spacing_entry1), TRUE); gtk_label_set_mnemonic_widget(GTK_LABEL(usfm_spacing_label2), usfm_spacing_entry1); // Set the markers. gtk_entry_set_text(GTK_ENTRY(usfm_spacing_entry1), settings->genconfig.check_markers_spacing_include_get().c_str()); } void CheckDialog::on_checkbutton_compare_all_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((CheckDialog *) user_data)->on_checkbutton_compare_all(); } void CheckDialog::on_checkbutton_compare_all() { bool all; all = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_compare_all)); gtk_widget_set_sensitive(label17, !all); gtk_widget_set_sensitive(entry_compare_include_only, !all); if (!all) gtk_widget_grab_focus(entry_compare_include_only); } void CheckDialog::characters_unwanted_patterns_setup() { vbox12 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox12); gtk_container_add(GTK_CONTAINER(vbox1), vbox12); hseparator15 = gtk_hseparator_new(); gtk_widget_show(hseparator15); gtk_box_pack_start(GTK_BOX(vbox12), hseparator15, FALSE, FALSE, 0); hbox19 = gtk_hbox_new(FALSE, 0); gtk_widget_show(hbox19); gtk_box_pack_start(GTK_BOX(vbox12), hbox19, FALSE, FALSE, 0); label46 = gtk_label_new("Enter a list of sequences of characters that are unwanted.\nOne sequence per line."); gtk_widget_show(label46); gtk_box_pack_start(GTK_BOX(hbox19), label46, TRUE, TRUE, 0); gtk_label_set_line_wrap(GTK_LABEL(label46), TRUE); gtk_misc_set_alignment(GTK_MISC(label46), 0, 0.5); button_unwanted_patterns = gtk_button_new(); gtk_widget_show(button_unwanted_patterns); gtk_box_pack_start(GTK_BOX(hbox19), button_unwanted_patterns, FALSE, FALSE, 0); alignment11 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment11); gtk_container_add(GTK_CONTAINER(button_unwanted_patterns), alignment11); hbox20 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox20); gtk_container_add(GTK_CONTAINER(alignment11), hbox20); image11 = gtk_image_new_from_stock("gtk-properties", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image11); gtk_box_pack_start(GTK_BOX(hbox20), image11, FALSE, FALSE, 0); label47 = gtk_label_new_with_mnemonic("_Patterns"); gtk_widget_show(label47); gtk_box_pack_start(GTK_BOX(hbox20), label47, FALSE, FALSE, 0); g_signal_connect((gpointer) button_unwanted_patterns, "clicked", G_CALLBACK(on_button_unwanted_patterns_clicked), gpointer(this)); } void CheckDialog::on_button_unwanted_patterns_clicked(GtkButton * button, gpointer user_data) { ((CheckDialog *) user_data)->on_button_unwanted_patterns(); } void CheckDialog::on_button_unwanted_patterns() { extern Settings *settings; ReadText rt(checks_unwanted_patterns_get_filename(settings->genconfig.project_get()), true, false); EditListDialog dialog(&rt.lines, "Unwanted patterns", "of patterns that are not wanted", true, true, true, true, true, true, false, NULL); if (dialog.run() == GTK_RESPONSE_OK) { write_lines(checks_unwanted_patterns_get_filename(settings->genconfig.project_get()), rt.lines); } } void CheckDialog::on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((CheckDialog *) user_data)->on_okbutton(); } void CheckDialog::words_capitalization_setup() { extern Settings *settings; vbox5 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox5); gtk_container_add(GTK_CONTAINER(vbox1), vbox5); hseparator6 = gtk_hseparator_new(); gtk_widget_show(hseparator6); gtk_box_pack_start(GTK_BOX(vbox5), hseparator6, TRUE, TRUE, 0); label23 = gtk_label_new_with_mnemonic("Enter a list of p_unctuation characters, which must be followed by a capitalized word."); gtk_widget_show(label23); gtk_box_pack_start(GTK_BOX(vbox5), label23, FALSE, FALSE, 0); gtk_label_set_line_wrap(GTK_LABEL(label23), TRUE); gtk_misc_set_alignment(GTK_MISC(label23), 0, 0.5); hbox5 = gtk_hbox_new(FALSE, 0); gtk_widget_show(hbox5); gtk_box_pack_start(GTK_BOX(vbox5), hbox5, TRUE, TRUE, 0); entry_capitalization_punctuation = gtk_entry_new(); gtk_widget_show(entry_capitalization_punctuation); gtk_box_pack_start(GTK_BOX(hbox5), entry_capitalization_punctuation, TRUE, TRUE, 0); gtk_entry_set_activates_default(GTK_ENTRY(entry_capitalization_punctuation), TRUE); // Enter value. gtk_entry_set_text(GTK_ENTRY(entry_capitalization_punctuation), settings->genconfig.check_capitalization_punctuation_get().c_str()); button_capitalization_punctuation = gtk_button_new(); gtk_widget_show(button_capitalization_punctuation); gtk_box_pack_start(GTK_BOX(hbox5), button_capitalization_punctuation, FALSE, FALSE, 0); alignment3 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment3); gtk_container_add(GTK_CONTAINER(button_capitalization_punctuation), alignment3); hbox6 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox6); gtk_container_add(GTK_CONTAINER(alignment3), hbox6); image3 = gtk_image_new_from_stock("gtk-home", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image3); gtk_box_pack_start(GTK_BOX(hbox6), image3, FALSE, FALSE, 0); label24 = gtk_label_new_with_mnemonic("Default"); gtk_widget_show(label24); gtk_box_pack_start(GTK_BOX(hbox6), label24, FALSE, FALSE, 0); hseparator7 = gtk_hseparator_new(); gtk_widget_show(hseparator7); gtk_box_pack_start(GTK_BOX(vbox5), hseparator7, TRUE, TRUE, 0); label25 = gtk_label_new_with_mnemonic("Enter a list of characters, after which a _lower case letter is acceptable.\nExample: The '>' in the following makes the lowercase \"and\" correct:\n< and he goes.>>"); gtk_widget_show(label25); gtk_box_pack_start(GTK_BOX(vbox5), label25, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label25), 0, 0.5); hbox7 = gtk_hbox_new(FALSE, 0); gtk_widget_show(hbox7); gtk_box_pack_start(GTK_BOX(vbox5), hbox7, TRUE, TRUE, 0); entry_capitalization_lowercase = gtk_entry_new(); gtk_widget_show(entry_capitalization_lowercase); gtk_box_pack_start(GTK_BOX(hbox7), entry_capitalization_lowercase, TRUE, TRUE, 0); gtk_entry_set_activates_default(GTK_ENTRY(entry_capitalization_lowercase), TRUE); // Enter value. gtk_entry_set_text(GTK_ENTRY(entry_capitalization_lowercase), settings->genconfig.check_capitalization_ignore_get().c_str()); button_capitalization_lowercase = gtk_button_new(); gtk_widget_show(button_capitalization_lowercase); gtk_box_pack_start(GTK_BOX(hbox7), button_capitalization_lowercase, FALSE, FALSE, 0); alignment4 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment4); gtk_container_add(GTK_CONTAINER(button_capitalization_lowercase), alignment4); hbox8 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox8); gtk_container_add(GTK_CONTAINER(alignment4), hbox8); image4 = gtk_image_new_from_stock("gtk-home", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image4); gtk_box_pack_start(GTK_BOX(hbox8), image4, FALSE, FALSE, 0); label26 = gtk_label_new_with_mnemonic("Default"); gtk_widget_show(label26); gtk_box_pack_start(GTK_BOX(hbox8), label26, FALSE, FALSE, 0); hseparator8 = gtk_hseparator_new(); gtk_widget_show(hseparator8); gtk_box_pack_start(GTK_BOX(vbox5), hseparator8, TRUE, TRUE, 0); hbox9 = gtk_hbox_new(FALSE, 0); gtk_widget_show(hbox9); gtk_box_pack_start(GTK_BOX(vbox5), hbox9, FALSE, FALSE, 0); label27 = gtk_label_new("Enter a list of abbreviations that prevent errors saying that a period is not followed by an upper case letter."); gtk_widget_show(label27); gtk_box_pack_start(GTK_BOX(hbox9), label27, TRUE, TRUE, 0); gtk_label_set_line_wrap(GTK_LABEL(label27), TRUE); gtk_misc_set_alignment(GTK_MISC(label27), 0, 0.5); vbox6 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox6); gtk_box_pack_start(GTK_BOX(hbox9), vbox6, FALSE, FALSE, 0); button_capitalization_abbreviations = gtk_button_new(); gtk_widget_show(button_capitalization_abbreviations); gtk_box_pack_start(GTK_BOX(vbox6), button_capitalization_abbreviations, FALSE, FALSE, 0); alignment5 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment5); gtk_container_add(GTK_CONTAINER(button_capitalization_abbreviations), alignment5); hbox10 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox10); gtk_container_add(GTK_CONTAINER(alignment5), hbox10); image5 = gtk_image_new_from_stock("gtk-properties", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image5); gtk_box_pack_start(GTK_BOX(hbox10), image5, FALSE, FALSE, 0); label28 = gtk_label_new_with_mnemonic("_Abbrev."); gtk_widget_show(label28); gtk_box_pack_start(GTK_BOX(hbox10), label28, FALSE, FALSE, 0); hseparator9 = gtk_hseparator_new(); gtk_widget_show(hseparator9); gtk_box_pack_start(GTK_BOX(vbox5), hseparator9, TRUE, TRUE, 0); hbox11 = gtk_hbox_new(FALSE, 0); gtk_widget_show(hbox11); gtk_box_pack_start(GTK_BOX(vbox5), hbox11, TRUE, TRUE, 0); vbox9 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox9); gtk_box_pack_start(GTK_BOX(hbox11), vbox9, TRUE, TRUE, 0); label29 = gtk_label_new("Enter a list of prefixes which are allowed to occur uncapitalized before the first capital letter in a word."); gtk_widget_show(label29); gtk_box_pack_start(GTK_BOX(vbox9), label29, TRUE, TRUE, 0); gtk_label_set_line_wrap(GTK_LABEL(label29), TRUE); gtk_misc_set_alignment(GTK_MISC(label29), 0, 0.5); checkbutton_capitalization_prefixes = gtk_check_button_new_with_mnemonic("Allow an_y prefixes"); gtk_widget_show(checkbutton_capitalization_prefixes); gtk_box_pack_start(GTK_BOX(vbox9), checkbutton_capitalization_prefixes, FALSE, FALSE, 0); // Set value gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_capitalization_prefixes), settings->genconfig.check_capitalization_allow_any_prefixes_get()); vbox7 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox7); gtk_box_pack_start(GTK_BOX(hbox11), vbox7, FALSE, FALSE, 0); button_capitalization_prefixes = gtk_button_new(); gtk_widget_show(button_capitalization_prefixes); gtk_box_pack_start(GTK_BOX(vbox7), button_capitalization_prefixes, FALSE, FALSE, 0); alignment6 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment6); gtk_container_add(GTK_CONTAINER(button_capitalization_prefixes), alignment6); hbox12 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox12); gtk_container_add(GTK_CONTAINER(alignment6), hbox12); image6 = gtk_image_new_from_stock("gtk-properties", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image6); gtk_box_pack_start(GTK_BOX(hbox12), image6, FALSE, FALSE, 0); label30 = gtk_label_new_with_mnemonic("_Prefixes"); gtk_widget_show(label30); gtk_box_pack_start(GTK_BOX(hbox12), label30, FALSE, FALSE, 0); hseparator10 = gtk_hseparator_new(); gtk_widget_show(hseparator10); gtk_box_pack_start(GTK_BOX(vbox5), hseparator10, TRUE, TRUE, 0); hbox13 = gtk_hbox_new(FALSE, 0); gtk_widget_show(hbox13); gtk_box_pack_start(GTK_BOX(vbox5), hbox13, TRUE, TRUE, 0); label31 = gtk_label_new("Enter a list of suffixes which are allowed to occur capitalized at the end of a word.\nExample: If \"seaCan\" is a valid word because the \"Can\" suffix must be capitalized, enter \"Can\" in this list."); gtk_widget_show(label31); gtk_box_pack_start(GTK_BOX(hbox13), label31, TRUE, TRUE, 0); gtk_label_set_line_wrap(GTK_LABEL(label31), TRUE); gtk_misc_set_alignment(GTK_MISC(label31), 0, 0.5); vbox8 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox8); gtk_box_pack_start(GTK_BOX(hbox13), vbox8, FALSE, FALSE, 0); button_capitalization_suffixes = gtk_button_new(); gtk_widget_show(button_capitalization_suffixes); gtk_box_pack_start(GTK_BOX(vbox8), button_capitalization_suffixes, FALSE, FALSE, 0); alignment7 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment7); gtk_container_add(GTK_CONTAINER(button_capitalization_suffixes), alignment7); hbox14 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox14); gtk_container_add(GTK_CONTAINER(alignment7), hbox14); image7 = gtk_image_new_from_stock("gtk-properties", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image7); gtk_box_pack_start(GTK_BOX(hbox14), image7, FALSE, FALSE, 0); label32 = gtk_label_new_with_mnemonic("_Suffixes"); gtk_widget_show(label32); gtk_box_pack_start(GTK_BOX(hbox14), label32, FALSE, FALSE, 0); hseparator11 = gtk_hseparator_new(); gtk_widget_show(hseparator11); gtk_box_pack_start(GTK_BOX(vbox5), hseparator11, TRUE, TRUE, 0); g_signal_connect((gpointer) button_capitalization_punctuation, "clicked", G_CALLBACK(on_button_capitalization_punctuation_clicked), gpointer(this)); g_signal_connect((gpointer) button_capitalization_lowercase, "clicked", G_CALLBACK(on_button_capitalization_lowercase_clicked), gpointer(this)); g_signal_connect((gpointer) button_capitalization_abbreviations, "clicked", G_CALLBACK(on_button_capitalization_abbreviations_clicked), gpointer(this)); g_signal_connect((gpointer) checkbutton_capitalization_prefixes, "toggled", G_CALLBACK(on_checkbutton_capitalization_prefixes_toggled), gpointer(this)); g_signal_connect((gpointer) button_capitalization_prefixes, "clicked", G_CALLBACK(on_button_capitalization_prefixes_clicked), gpointer(this)); g_signal_connect((gpointer) button_capitalization_suffixes, "clicked", G_CALLBACK(on_button_capitalization_suffixes_clicked), gpointer(this)); on_checkbutton_prefixes(); gtk_label_set_mnemonic_widget(GTK_LABEL(label23), entry_capitalization_punctuation); gtk_label_set_mnemonic_widget(GTK_LABEL(label25), entry_capitalization_lowercase); } void CheckDialog::on_button_capitalization_punctuation_clicked(GtkButton * button, gpointer user_data) { ((CheckDialog *) user_data)->capitalization_punctuation_default(); } void CheckDialog::capitalization_punctuation_default() { gtk_entry_set_text(GTK_ENTRY(entry_capitalization_punctuation), CAPITALIZATION_PUNCTUATION); } void CheckDialog::on_button_capitalization_lowercase_clicked(GtkButton * button, gpointer user_data) { ((CheckDialog *) user_data)->capitalization_lowercase_default(); } void CheckDialog::capitalization_lowercase_default() { gtk_entry_set_text(GTK_ENTRY(entry_capitalization_lowercase), CAPITALIZATION_LOWERCASE); } void CheckDialog::on_button_capitalization_abbreviations_clicked(GtkButton * button, gpointer user_data) { ((CheckDialog *) user_data)->capitalization_abbreviations_edit(); } void CheckDialog::capitalization_abbreviations_edit() { extern Settings *settings; ReadText rt(checks_abbreviations_get_filename(settings->genconfig.project_get()), true); EditListDialog dialog(&rt.lines, "Abbreviations", "of abbreviations", true, true, true, true, true, true, false, NULL); if (dialog.run() == GTK_RESPONSE_OK) { write_lines(checks_abbreviations_get_filename(settings->genconfig.project_get()), rt.lines); } } void CheckDialog::on_checkbutton_capitalization_prefixes_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((CheckDialog *) user_data)->on_checkbutton_prefixes(); } void CheckDialog::on_checkbutton_prefixes() { // If ticked, the user cannot edit the prefixes anymore. gtk_widget_set_sensitive(button_capitalization_prefixes, !gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_capitalization_prefixes))); } void CheckDialog::on_button_capitalization_prefixes_clicked(GtkButton * button, gpointer user_data) { ((CheckDialog *) user_data)->button_capitalization_prefixes_edit(); } void CheckDialog::button_capitalization_prefixes_edit() { extern Settings *settings; ReadText rt(checks_uncapitalized_prefixes_get_filename(settings->genconfig.project_get()), true); EditListDialog dialog(&rt.lines, "Uncapitalized prefixes", "of uncapitalized prefixes", true, true, true, true, true, true, false, NULL); if (dialog.run() == GTK_RESPONSE_OK) { write_lines(checks_uncapitalized_prefixes_get_filename(settings->genconfig.project_get()), rt.lines); } } void CheckDialog::on_button_capitalization_suffixes_clicked(GtkButton * button, gpointer user_data) { ((CheckDialog *) user_data)->capitalization_suffixes_edit(); } void CheckDialog::capitalization_suffixes_edit() { extern Settings *settings; ReadText rt(checks_capitalized_suffixes_get_filename(settings->genconfig.project_get()), true); EditListDialog dialog(&rt.lines, "Capitalized suffixes", "of capitalized suffixes", true, true, true, true, true, true, false, NULL); if (dialog.run() == GTK_RESPONSE_OK) { write_lines(checks_capitalized_suffixes_get_filename(settings->genconfig.project_get()), rt.lines); } } void CheckDialog::word_repetition_setup() { extern Settings *settings; vbox10 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox10); gtk_container_add(GTK_CONTAINER(vbox1), vbox10); hseparator12 = gtk_hseparator_new(); gtk_widget_show(hseparator12); gtk_box_pack_start(GTK_BOX(vbox10), hseparator12, FALSE, FALSE, 0); checkbutton_repetition_case = gtk_check_button_new_with_mnemonic("C_ase insensitive"); gtk_widget_show(checkbutton_repetition_case); gtk_box_pack_start(GTK_BOX(vbox10), checkbutton_repetition_case, FALSE, FALSE, 0); // Set value. gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_repetition_case), settings->genconfig.check_repetition_ignore_case_get()); hseparator13 = gtk_hseparator_new(); gtk_widget_show(hseparator13); gtk_box_pack_start(GTK_BOX(vbox10), hseparator13, FALSE, FALSE, 0); table1 = gtk_table_new(2, 2, FALSE); gtk_widget_show(table1); gtk_box_pack_start(GTK_BOX(vbox10), table1, FALSE, FALSE, 0); button_repetition_show = gtk_button_new(); gtk_widget_show(button_repetition_show); gtk_table_attach(GTK_TABLE(table1), button_repetition_show, 1, 2, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); alignment9 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment9); gtk_container_add(GTK_CONTAINER(button_repetition_show), alignment9); hbox17 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox17); gtk_container_add(GTK_CONTAINER(alignment9), hbox17); image9 = gtk_image_new_from_stock("gtk-properties", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image9); gtk_box_pack_start(GTK_BOX(hbox17), image9, FALSE, FALSE, 0); label39 = gtk_label_new_with_mnemonic("S_how"); gtk_widget_show(label39); gtk_box_pack_start(GTK_BOX(hbox17), label39, FALSE, FALSE, 0); checkbutton_repetition_show = gtk_check_button_new_with_mnemonic("Only _show repeating words in this list ->"); gtk_widget_show(checkbutton_repetition_show); gtk_table_attach(GTK_TABLE(table1), checkbutton_repetition_show, 0, 1, 0, 1, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); // Set state. gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_repetition_show), settings->genconfig.check_repetition_show_only_these_get()); checkbutton_repetition_ignore = gtk_check_button_new_with_mnemonic("_Ignore repeating words given in this list ->\nor repeating word pairs that have texts in between them from this list ->"); gtk_widget_show(checkbutton_repetition_ignore); gtk_table_attach(GTK_TABLE(table1), checkbutton_repetition_ignore, 0, 1, 1, 2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); // Set state gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_repetition_ignore), settings->genconfig.check_repetition_ignore_these_get()); button_repetition_ignore = gtk_button_new(); gtk_widget_show(button_repetition_ignore); gtk_table_attach(GTK_TABLE(table1), button_repetition_ignore, 1, 2, 1, 2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); alignment10 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment10); gtk_container_add(GTK_CONTAINER(button_repetition_ignore), alignment10); hbox18 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox18); gtk_container_add(GTK_CONTAINER(alignment10), hbox18); image10 = gtk_image_new_from_stock("gtk-properties", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image10); gtk_box_pack_start(GTK_BOX(hbox18), image10, FALSE, FALSE, 0); label40 = gtk_label_new_with_mnemonic("I_gnore"); gtk_widget_show(label40); gtk_box_pack_start(GTK_BOX(hbox18), label40, FALSE, FALSE, 0); g_signal_connect((gpointer) button_repetition_show, "clicked", G_CALLBACK(on_button_repetition_show_clicked), gpointer(this)); g_signal_connect((gpointer) checkbutton_repetition_show, "toggled", G_CALLBACK(on_checkbutton_repetition_show_toggled), gpointer(this)); g_signal_connect((gpointer) checkbutton_repetition_ignore, "toggled", G_CALLBACK(on_checkbutton_repetition_ignore_toggled), gpointer(this)); g_signal_connect((gpointer) button_repetition_ignore, "clicked", G_CALLBACK(on_button_repetition_ignore_clicked), gpointer(this)); } void CheckDialog::on_checkbutton_repetition_show_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((CheckDialog *) user_data)->on_checkbutton_repetition_show(); } void CheckDialog::on_checkbutton_repetition_show() { set_gui(); } void CheckDialog::on_button_repetition_show_clicked(GtkButton * button, gpointer user_data) { ((CheckDialog *) user_data)->on_button_repetition_show(); } void CheckDialog::on_button_repetition_show() { extern Settings *settings; ReadText rt(checks_repetition_show_only_get_filename(settings->genconfig.project_get()), true); EditListDialog dialog(&rt.lines, "Repeating words", "of contiguous repeating words to show only in the report", true, true, true, true, true, true, false, NULL); if (dialog.run() == GTK_RESPONSE_OK) { write_lines(checks_repetition_show_only_get_filename(settings->genconfig.project_get()), rt.lines); } } void CheckDialog::on_checkbutton_repetition_ignore_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((CheckDialog *) user_data)->on_checkbutton_repetition_ignore(); } void CheckDialog::on_checkbutton_repetition_ignore() { set_gui(); } void CheckDialog::on_button_repetition_ignore_clicked(GtkButton * button, gpointer user_data) { ((CheckDialog *) user_data)->on_button_repetition_ignore(); } void CheckDialog::on_button_repetition_ignore() { extern Settings *settings; ReadText rt(checks_repetition_ignore_get_filename(settings->genconfig.project_get()), true); EditListDialog dialog(&rt.lines, "Repeating words", "of contiguous repeating words to ignore or text between these pairs of words", true, true, true, true, true, true, false, NULL); if (dialog.run() == GTK_RESPONSE_OK) { write_lines(checks_repetition_ignore_get_filename(settings->genconfig.project_get()), rt.lines); } } void CheckDialog::unwanted_words_setup() { vbox13 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox13); gtk_container_add(GTK_CONTAINER(vbox1), vbox13); hseparator16 = gtk_hseparator_new(); gtk_widget_show(hseparator16); gtk_box_pack_start(GTK_BOX(vbox13), hseparator16, FALSE, FALSE, 0); hbox21 = gtk_hbox_new(FALSE, 0); gtk_widget_show(hbox21); gtk_box_pack_start(GTK_BOX(vbox13), hbox21, FALSE, FALSE, 0); label50 = gtk_label_new("Enter a list of whole words that are unwanted in the text.\nOne word per line."); gtk_widget_show(label50); gtk_box_pack_start(GTK_BOX(hbox21), label50, TRUE, TRUE, 0); gtk_misc_set_alignment(GTK_MISC(label50), 0, 0.5); button_unwanted_words = gtk_button_new(); gtk_widget_show(button_unwanted_words); gtk_box_pack_start(GTK_BOX(hbox21), button_unwanted_words, FALSE, FALSE, 0); alignment12 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment12); gtk_container_add(GTK_CONTAINER(button_unwanted_words), alignment12); hbox22 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox22); gtk_container_add(GTK_CONTAINER(alignment12), hbox22); image12 = gtk_image_new_from_stock("gtk-properties", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image12); gtk_box_pack_start(GTK_BOX(hbox22), image12, FALSE, FALSE, 0); label51 = gtk_label_new_with_mnemonic("_Words"); gtk_widget_show(label51); gtk_box_pack_start(GTK_BOX(hbox22), label51, FALSE, FALSE, 0); g_signal_connect((gpointer) button_unwanted_words, "clicked", G_CALLBACK(on_button_unwanted_words_clicked), gpointer(this)); } void CheckDialog::on_button_unwanted_words_clicked(GtkButton * button, gpointer user_data) { ((CheckDialog *) user_data)->on_button_unwanted_words(); } void CheckDialog::on_button_unwanted_words() { extern Settings *settings; ReadText rt(checks_unwanted_words_get_filename(settings->genconfig.project_get()), true); EditListDialog dialog(&rt.lines, "Unwanted words", "of whole words that are not wanted", true, true, true, true, true, true, false, NULL); if (dialog.run() == GTK_RESPONSE_OK) { write_lines(checks_unwanted_words_get_filename(settings->genconfig.project_get()), rt.lines); } } void CheckDialog::punctuation_matching_pairs_setup() { extern Settings *settings; vbox11 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox11); gtk_container_add(GTK_CONTAINER(vbox1), vbox11); hseparator14 = gtk_hseparator_new(); gtk_widget_show(hseparator14); gtk_box_pack_start(GTK_BOX(vbox11), hseparator14, FALSE, FALSE, 0); label43 = gtk_label_new_with_mnemonic("Enter a list of punctuation characters to be _ignored.\nEnter them without spaces.\nOnly one of a pair is needed, the matching one is added automatically."); gtk_widget_show(label43); gtk_box_pack_start(GTK_BOX(vbox11), label43, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label43), 0, 0.5); entry_matching_pairs_ignore = gtk_entry_new(); gtk_widget_show(entry_matching_pairs_ignore); gtk_box_pack_start(GTK_BOX(vbox11), entry_matching_pairs_ignore, FALSE, FALSE, 0); gtk_entry_set_activates_default(GTK_ENTRY(entry_matching_pairs_ignore), TRUE); // Set value. gtk_entry_set_text(GTK_ENTRY(entry_matching_pairs_ignore), settings->genconfig.check_matching_pairs_ignore_get().c_str()); gtk_label_set_mnemonic_widget(GTK_LABEL(label43), entry_matching_pairs_ignore); } void CheckDialog::set_gui() // Update the GUI. { extern Settings *settings; bool sensitive = settings->session.selected_books.size(); gtk_widget_set_sensitive(okbutton, sensitive); if (checkbutton_repetition_case) { gtk_widget_set_sensitive(button_repetition_show, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_repetition_show))); gtk_widget_set_sensitive(button_repetition_ignore, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_repetition_ignore))); } } void CheckDialog::word_count_setup() { extern Settings *settings; wordcount_hbox1 = gtk_hbox_new(FALSE, 4); gtk_widget_show(wordcount_hbox1); gtk_box_pack_start(GTK_BOX(vbox1), wordcount_hbox1, TRUE, TRUE, 0); wordcount_checkbutton1 = gtk_check_button_new_with_mnemonic("Do not _include words with a count of"); gtk_widget_show(wordcount_checkbutton1); gtk_box_pack_start(GTK_BOX(wordcount_hbox1), wordcount_checkbutton1, FALSE, FALSE, 0); wordcount_spinbutton1_adj = gtk_adjustment_new(0, 0, 1000000, 1, 10, 0); wordcount_spinbutton1 = gtk_spin_button_new(GTK_ADJUSTMENT(wordcount_spinbutton1_adj), 1, 0); gtk_widget_show(wordcount_spinbutton1); gtk_box_pack_start(GTK_BOX(wordcount_hbox1), wordcount_spinbutton1, FALSE, FALSE, 0); wordcount_label2 = gtk_label_new("and up"); gtk_widget_show(wordcount_label2); gtk_box_pack_start(GTK_BOX(wordcount_hbox1), wordcount_label2, FALSE, FALSE, 0); wordcount_label1 = gtk_label_new_with_mnemonic("Bibledit-Gtk normally knows the right word boundaries, but if this is not done satisfactorily, you can enter _extra characters that should be part of a word"); gtk_widget_show(wordcount_label1); gtk_box_pack_start(GTK_BOX(vbox1), wordcount_label1, FALSE, FALSE, 0); gtk_label_set_line_wrap(GTK_LABEL(wordcount_label1), TRUE); gtk_misc_set_alignment(GTK_MISC(wordcount_label1), 0, 0.5); wordcount_entry1 = gtk_entry_new(); gtk_widget_show(wordcount_entry1); gtk_box_pack_start(GTK_BOX(vbox1), wordcount_entry1, FALSE, FALSE, 0); g_signal_connect_after((gpointer) wordcount_checkbutton1, "clicked", G_CALLBACK(on_wordcount_checkbutton1_activate), gpointer(this)); g_signal_connect((gpointer) wordcount_entry1, "changed", G_CALLBACK(on_wordcount_entry1_changed), gpointer(this)); gtk_label_set_mnemonic_widget(GTK_LABEL(wordcount_label1), wordcount_entry1); // Set GUI. unsigned int count = settings->genconfig.check_words_inventory_not_include_words_count_get(); gtk_spin_button_set_value(GTK_SPIN_BUTTON(wordcount_spinbutton1), count); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(wordcount_checkbutton1), count > 0); gtk_entry_set_text(GTK_ENTRY(wordcount_entry1), settings->genconfig.check_words_inventory_word_forming_characters_get().c_str()); on_wordcount_checkbutton1(); on_wordcount_entry1(); } void CheckDialog::on_wordcount_checkbutton1_activate(GtkButton * button, gpointer user_data) { ((CheckDialog *) user_data)->on_wordcount_checkbutton1(); } void CheckDialog::on_wordcount_checkbutton1() { bool active = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(wordcount_checkbutton1)); gtk_widget_set_sensitive(wordcount_spinbutton1, active); if (active) gtk_widget_grab_focus(wordcount_spinbutton1); } void CheckDialog::on_wordcount_entry1_changed(GtkEditable * editable, gpointer user_data) { ((CheckDialog *) user_data)->on_wordcount_entry1(); } void CheckDialog::on_wordcount_entry1() { ustring chars = gtk_entry_get_text(GTK_ENTRY(wordcount_entry1)); ustring non_alphas = get_non_alphanumericals(chars); if (chars != non_alphas) { gtk_entry_set_text(GTK_ENTRY(wordcount_entry1), non_alphas.c_str()); gtkw_dialog_info(checkdialog, "Bibledit-Gtk already recognizes this character as part of a word.\nIt has been removed as superfluous.\nThere is no need to enter your alphabet.\nEntering the special cases is enough."); } } void CheckDialog::parallel_project_setup() { extern Settings *settings; checkbutton_include_second_project = gtk_check_button_new_with_mnemonic("_Compare with another project:"); gtk_widget_show(checkbutton_include_second_project); gtk_box_pack_start(GTK_BOX(vbox1), checkbutton_include_second_project, TRUE, TRUE, 0); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_include_second_project), settings->session.check_include_second_project); g_signal_connect_after((gpointer) checkbutton_include_second_project, "clicked", G_CALLBACK(on_include_second_project_activate), gpointer(this)); selectparallelprojectgui = new SelectProjectGui(0); selectparallelprojectgui->build(vbox1, "", settings->genconfig.check_markers_compare_project_get()); } void CheckDialog::on_include_second_project_activate(GtkButton * button, gpointer user_data) { ((CheckDialog *) user_data)->on_include_second_project(); } void CheckDialog::on_include_second_project() { bool active = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_include_second_project)); selectparallelprojectgui->set_sensitive (active); if (active) selectparallelprojectgui->focus(); } void CheckDialog::include_verse_text_setup() { checkbutton_include_verse_text = gtk_check_button_new_with_mnemonic("_Include verse text"); gtk_widget_show(checkbutton_include_verse_text); gtk_box_pack_start(GTK_BOX(vbox1), checkbutton_include_verse_text, TRUE, TRUE, 0); extern Settings *settings; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_include_verse_text), settings->session.check_include_verse_text); } void CheckDialog::output_in_ot_order_setup() { checkbutton_output_in_ot_order = gtk_check_button_new_with_mnemonic("O_utput in Old Testament order"); gtk_widget_show(checkbutton_output_in_ot_order); gtk_box_pack_start(GTK_BOX(vbox1), checkbutton_output_in_ot_order, TRUE, TRUE, 0); extern Settings *settings; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_output_in_ot_order), settings->session.check_output_in_ot_order); } void CheckDialog::on_okbutton() { // Save sorting mechanism. extern Settings *settings; if (radiobutton_sort0) if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_sort0))) settings->session.checksorttype = cstSort0; if (radiobutton_sort1) if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_sort1))) settings->session.checksorttype = cstSort1; if (radiobutton_sort2) if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_sort2))) settings->session.checksorttype = cstSort2; if (radiobutton_sort3) if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_sort3))) settings->session.checksorttype = cstSort3; // Compare markers settings. if (selectprojectgui) { settings->genconfig.check_markers_compare_project_set(selectprojectgui->project); settings->genconfig.check_markers_compare_all_markers_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_compare_all))); settings->genconfig.check_markers_compare_include_only_set(gtk_entry_get_text(GTK_ENTRY(entry_compare_include_only))); settings->genconfig.check_markers_compare_ignore_set(gtk_entry_get_text(GTK_ENTRY(entry_compare_ignore))); settings->genconfig.check_markers_compare_ignore_verse_zero_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_compare_ignore_verse_zero))); } // Words - capitalization. if (entry_capitalization_punctuation) { settings->genconfig.check_capitalization_punctuation_set(remove_spaces(gtk_entry_get_text(GTK_ENTRY(entry_capitalization_punctuation)))); settings->genconfig.check_capitalization_ignore_set(remove_spaces(gtk_entry_get_text(GTK_ENTRY(entry_capitalization_lowercase)))); settings->genconfig.check_capitalization_allow_any_prefixes_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_capitalization_prefixes))); } // Words - repetition if (checkbutton_repetition_case) { settings->genconfig.check_repetition_ignore_case_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_repetition_case))); settings->genconfig.check_repetition_show_only_these_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_repetition_show))); settings->genconfig.check_repetition_ignore_these_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_repetition_ignore))); } // Punctuation - matching pairs. if (entry_matching_pairs_ignore) { settings->genconfig.check_matching_pairs_ignore_set(gtk_entry_get_text(GTK_ENTRY(entry_matching_pairs_ignore))); } // Words - Inventory / Count. if (wordcount_checkbutton1) { int count = gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(wordcount_spinbutton1)); if (!gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(wordcount_checkbutton1))) count = 0; settings->genconfig.check_words_inventory_not_include_words_count_set(count); settings->genconfig.check_words_inventory_word_forming_characters_set(gtk_entry_get_text(GTK_ENTRY(wordcount_entry1))); } // Markers - Spacing. if (usfm_spacing_entry1) { settings->genconfig.check_markers_spacing_include_set(gtk_entry_get_text(GTK_ENTRY(usfm_spacing_entry1))); } // Include verse text. if (checkbutton_include_verse_text) { settings->session.check_include_verse_text = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_include_verse_text)); } //Parallel passages - second project comparison if (selectparallelprojectgui) { settings->genconfig.check_markers_compare_project_set(selectparallelprojectgui->project); } if (checkbutton_include_second_project) { settings->session.check_include_second_project = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_include_second_project)); } // Output in OT order. if (checkbutton_output_in_ot_order) { settings->session.check_output_in_ot_order = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_output_in_ot_order)); } } void CheckDialog::set_relevant_books () { // Create a list of relevant books. vector relevant_list; if (mycheckdialogtype == cdtSynopticParallelsNT) { vector ntbooks = books_type_to_ids(btNewTestament); for (unsigned int i = 0; i < 4; i++) { relevant_list.push_back (ntbooks[i]); } } else if (mycheckdialogtype == cdtParallelsOT) { relevant_list = books_type_to_ids(btOldTestament); } else { // No relevant books to set: bail out. return; } set relevant_set (relevant_list.begin(), relevant_list.end()); // If the books in the current selection are all within the relevant list, bail out. extern Settings *settings; vector current_selection (settings->session.selected_books.begin(), settings->session.selected_books.end()); bool all_books_are_relevant = true; for (unsigned int i = 0; i < current_selection.size(); i++) { if (relevant_set.find (current_selection[i]) == relevant_set.end()) all_books_are_relevant = false; } if (all_books_are_relevant) return; // Set the relevant list. settings->session.selected_books = relevant_set; // Update the GUI. set_gui_books(); } bibledit-gtk-4.9/src/dialogcheck.h000664 000766 000024 00000021771 12221507140 017254 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGCHECK_H #define INCLUDED_DIALOGCHECK_H #include #include "ustring.h" #include "settings.h" #include "guiselectproject.h" enum CheckDialogType {cdtChaptersVerses, cdtMarkersCount, cdtMarkersValidate, cdtMarkersCompare, cdtMarkersSpacing, cdtCharactersCount, cdtUnwantedPatterns, cdtWordsCapitalization, cdtWordsRepetition, cdtWordsUnwanted, cdtWordsCount, cdtMatchingPairs, cdtSentenceStructure, cdtReferencesInventory, cdtReferencesValidate, cdtNTQuotationsFromOT, cdtSynopticParallelsNT, cdtParallelsOT }; class CheckDialog { public: CheckDialog (CheckDialogType checkdialogtype); ~CheckDialog (); int run (); protected: GtkWidget *checkdialog; GtkWidget *dialog_vbox1; GtkWidget *vbox1; // Information label. GtkWidget *infolabel; void information_setup (const ustring information); // Output sorting. GtkWidget *radiobutton_sort0; GtkWidget *radiobutton_sort1; GtkWidget *radiobutton_sort2; GtkWidget *radiobutton_sort3; void sorting_setup (const gchar * sort0, const gchar * sort1, const gchar * sort2, const gchar * sort3); // Book selection. GtkWidget *hbox1; GtkWidget *button_books; GtkWidget *alignment1; GtkWidget *hbox2; GtkWidget *image1; GtkWidget *label5; GtkWidget *label_book; vector selectable_books; void book_selection_setup (); static void on_button_books_clicked (GtkButton *button, gpointer user_data); void on_booksbutton (); void set_gui_books (); void set_relevant_books(); // Area selection. GtkWidget *hbox15; GtkWidget *button_area; GtkWidget *alignment8; GtkWidget *hbox16; GtkWidget *image8; GtkWidget *label36; GtkWidget *label_area; void area_selection_setup (); static void on_button_area_clicked (GtkButton *button, gpointer user_data); void on_area (); // Markers comparison. GtkWidget *vbox3; GtkWidget *hseparator2; SelectProjectGui * selectprojectgui; SelectProjectGui * selectparallelprojectgui; GtkWidget *hseparator1; GtkWidget *checkbutton_compare_all; GtkWidget *label17; GtkWidget *entry_compare_include_only; GtkWidget *hseparator3; GtkWidget *label18; GtkWidget *entry_compare_ignore; GtkWidget *hseparator4; GtkWidget *checkbutton_compare_ignore_verse_zero; GtkWidget *hseparator5; void markers_comparison_setup (); static void on_checkbutton_compare_all_toggled (GtkToggleButton *togglebutton, gpointer user_data); void on_checkbutton_compare_all (); // Characters, Unwanted Patterns. GtkWidget *vbox12; GtkWidget *label45; GtkWidget *hseparator15; GtkWidget *hbox19; GtkWidget *label46; GtkWidget *button_unwanted_patterns; GtkWidget *alignment11; GtkWidget *hbox20; GtkWidget *image11; GtkWidget *label47; void characters_unwanted_patterns_setup (); static void on_button_unwanted_patterns_clicked (GtkButton *button, gpointer user_data); void on_button_unwanted_patterns (); // Words, Capitalization. GtkWidget *vbox5; GtkWidget *hseparator6; GtkWidget *label23; GtkWidget *hbox5; GtkWidget *entry_capitalization_punctuation; GtkWidget *button_capitalization_punctuation; GtkWidget *alignment3; GtkWidget *hbox6; GtkWidget *image3; GtkWidget *label24; GtkWidget *hseparator7; GtkWidget *label25; GtkWidget *hbox7; GtkWidget *entry_capitalization_lowercase; GtkWidget *button_capitalization_lowercase; GtkWidget *alignment4; GtkWidget *hbox8; GtkWidget *image4; GtkWidget *label26; GtkWidget *hseparator8; GtkWidget *hbox9; GtkWidget *label27; GtkWidget *vbox6; GtkWidget *button_capitalization_abbreviations; GtkWidget *alignment5; GtkWidget *hbox10; GtkWidget *image5; GtkWidget *label28; GtkWidget *hseparator9; GtkWidget *hbox11; GtkWidget *vbox9; GtkWidget *label29; GtkWidget *checkbutton_capitalization_prefixes; GtkWidget *vbox7; GtkWidget *button_capitalization_prefixes; GtkWidget *alignment6; GtkWidget *hbox12; GtkWidget *image6; GtkWidget *label30; GtkWidget *hseparator10; GtkWidget *hbox13; GtkWidget *label31; GtkWidget *vbox8; GtkWidget *button_capitalization_suffixes; GtkWidget *alignment7; GtkWidget *hbox14; GtkWidget *image7; GtkWidget *label32; GtkWidget *hseparator11; void words_capitalization_setup (); static void on_button_capitalization_punctuation_clicked (GtkButton *button, gpointer user_data); void capitalization_punctuation_default (); static void on_button_capitalization_lowercase_clicked (GtkButton *button, gpointer user_data); void capitalization_lowercase_default (); static void on_button_capitalization_abbreviations_clicked (GtkButton *button, gpointer user_data); void capitalization_abbreviations_edit (); static void on_checkbutton_capitalization_prefixes_toggled (GtkToggleButton *togglebutton, gpointer user_data); void on_checkbutton_prefixes (); static void on_button_capitalization_prefixes_clicked (GtkButton *button, gpointer user_data); void button_capitalization_prefixes_edit (); static void on_button_capitalization_suffixes_clicked (GtkButton *button, gpointer user_data); void capitalization_suffixes_edit (); static void on_include_second_project_activate (GtkButton * button, gpointer user_data); void on_include_second_project (); // Word Repetition. GtkWidget *vbox10; GtkWidget *label38; GtkWidget *hseparator12; GtkWidget *checkbutton_repetition_case; GtkWidget *hseparator13; GtkWidget *table1; GtkWidget *button_repetition_show; GtkWidget *alignment9; GtkWidget *hbox17; GtkWidget *image9; GtkWidget *label39; GtkWidget *checkbutton_repetition_show; GtkWidget *checkbutton_repetition_ignore; GtkWidget *button_repetition_ignore; GtkWidget *alignment10; GtkWidget *hbox18; GtkWidget *image10; GtkWidget *label40; void word_repetition_setup (); static void on_checkbutton_repetition_show_toggled (GtkToggleButton *togglebutton, gpointer user_data); void on_checkbutton_repetition_show (); static void on_button_repetition_show_clicked (GtkButton *button, gpointer user_data); void on_button_repetition_show (); static void on_checkbutton_repetition_ignore_toggled (GtkToggleButton *togglebutton, gpointer user_data); void on_checkbutton_repetition_ignore (); static void on_button_repetition_ignore_clicked (GtkButton *button, gpointer user_data); void on_button_repetition_ignore (); // Words - Unwanted ones. GtkWidget *vbox13; GtkWidget *hseparator16; GtkWidget *hbox21; GtkWidget *label50; GtkWidget *button_unwanted_words; GtkWidget *alignment12; GtkWidget *hbox22; GtkWidget *image12; GtkWidget *label51; void unwanted_words_setup (); static void on_button_unwanted_words_clicked (GtkButton *button, gpointer user_data); void on_button_unwanted_words (); // Punctuation - Matching pairs. GtkWidget *vbox11; GtkWidget *label43; GtkWidget *hseparator14; GtkWidget *entry_matching_pairs_ignore; void punctuation_matching_pairs_setup (); // Words - Inventory. GtkWidget *wordcount_hbox1; GtkWidget *wordcount_checkbutton1; GtkObject *wordcount_spinbutton1_adj; GtkWidget *wordcount_spinbutton1; GtkWidget *wordcount_label2; GtkWidget *wordcount_label1; GtkWidget *wordcount_entry1; void word_count_setup (); static void on_wordcount_checkbutton1_activate (GtkButton *button, gpointer user_data); void on_wordcount_checkbutton1 (); static void on_wordcount_entry1_changed (GtkEditable *editable, gpointer user_data); void on_wordcount_entry1 (); // Markers - Spacing GtkWidget *usfm_spacing_hseparator1; GtkWidget *usfm_spacing_label2; GtkWidget *usfm_spacing_entry1; void markers_spacing_setup (); // Inclusion of verse text. GtkWidget *checkbutton_include_verse_text; GtkWidget *checkbutton_include_second_project; void include_verse_text_setup (); void parallel_project_setup(); // Output in Old Testament order. GtkWidget *checkbutton_output_in_ot_order; void output_in_ot_order_setup (); // Dialog actions. GtkWidget *dialog_action_area1; GtkWidget *cancelbutton; GtkWidget *okbutton; private: CheckDialogType mycheckdialogtype; static void on_okbutton_clicked (GtkButton *button, gpointer user_data); void on_okbutton (); void set_gui(); }; #endif bibledit-gtk-4.9/src/dialogcheckbutton.cpp000664 000766 000024 00000007130 12221507136 021041 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogcheckbutton.h" #include "help.h" #include "utilities.h" CheckbuttonDialog::CheckbuttonDialog(const ustring & title, const ustring & info, const vector < ustring > &labels, ustring bitpattern) { Shortcuts shortcuts(0); checkbuttondialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(checkbuttondialog), title.c_str()); gtk_window_set_position(GTK_WINDOW(checkbuttondialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(checkbuttondialog), TRUE); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(checkbuttondialog)); gtk_widget_show(dialog_vbox1); label = gtk_label_new(info.c_str()); gtk_widget_show(label); gtk_box_pack_start(GTK_BOX(dialog_vbox1), label, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label), 0, 0.5); for (unsigned int i = 0; i < labels.size(); i++) { GtkWidget *checkbutton; checkbutton = gtk_check_button_new_with_mnemonic(labels[i].c_str()); gtk_widget_show(checkbutton); gtk_box_pack_start(GTK_BOX(dialog_vbox1), checkbutton, FALSE, FALSE, 0); checkbuttons.push_back(checkbutton); shortcuts.button(checkbutton); if (bitpattern_take(bitpattern)) { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton), true); } } dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(checkbuttondialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(checkbuttondialog, NULL, &shortcuts, NULL); cancelbutton = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton); gtk_dialog_add_action_widget(GTK_DIALOG(checkbuttondialog), cancelbutton, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton), true); okbutton = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton); gtk_dialog_add_action_widget(GTK_DIALOG(checkbuttondialog), okbutton, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton), true); shortcuts.stockbutton(cancelbutton); shortcuts.stockbutton(okbutton); shortcuts.process(); g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(on_okbutton_clicked), gpointer(this)); gtk_widget_grab_default(okbutton); gtk_widget_grab_focus(okbutton); } CheckbuttonDialog::~CheckbuttonDialog() { gtk_widget_destroy(checkbuttondialog); } int CheckbuttonDialog::run() { return gtk_dialog_run(GTK_DIALOG(checkbuttondialog)); } void CheckbuttonDialog::on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((CheckbuttonDialog *) user_data)->on_okbutton(); } void CheckbuttonDialog::on_okbutton() { bitpattern.clear(); for (unsigned int i = 0; i < checkbuttons.size(); i++) { bitpattern_add(bitpattern, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbuttons[i]))); } } bibledit-gtk-4.9/src/dialogcheckbutton.h000664 000766 000024 00000002646 12221507143 020513 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOG_CHECKBUTTON_H #define INCLUDED_DIALOG_CHECKBUTTON_H #include #include "ustring.h" class CheckbuttonDialog { public: CheckbuttonDialog (const ustring& title, const ustring& info, const vector & labels, ustring bitpattern); ~CheckbuttonDialog (); int run (); ustring bitpattern; protected: GtkWidget *checkbuttondialog; GtkWidget *dialog_vbox1; GtkWidget *label; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton; GtkWidget *okbutton; private: vector checkbuttons; static void on_okbutton_clicked (GtkButton *button, gpointer user_data); void on_okbutton (); }; #endif bibledit-gtk-4.9/src/dialogcompare.cpp000664 000766 000024 00000015464 12221507131 020162 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "dialogcompare.h" #include "projectutils.h" #include "directories.h" #include "combobox.h" #include "keyboard.h" #include "settings.h" #include "generalconfig.h" #include "help.h" #include "compareutils.h" #include "dialogselectbooks.h" #include "scriptureportions.h" #include "shortcuts.h" CompareDialog::CompareDialog(WindowReferences * references_window) { // Store variables my_references_window = references_window; extern Settings *settings; Shortcuts shortcuts(0); comparedialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(comparedialog), "Compare project"); gtk_window_set_position(GTK_WINDOW(comparedialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(comparedialog), TRUE); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(comparedialog)); gtk_widget_show(dialog_vbox1); vbox1 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), vbox1, TRUE, TRUE, 0); label1 = gtk_label_new("Select a project to compare the current project with\n" "and then press OK"); gtk_widget_show(label1); gtk_box_pack_start(GTK_BOX(vbox1), label1, FALSE, FALSE, 4); gtk_misc_set_alignment(GTK_MISC(label1), 0, 0.5); selectprojectgui = new SelectProjectGui(0); selectprojectgui->build(vbox1, "", settings->genconfig.project_to_compare_with_get()); checkbutton1 = gtk_check_button_new_with_mnemonic("Print changed verses only"); gtk_widget_show(checkbutton1); gtk_box_pack_start(GTK_BOX(vbox1), checkbutton1, FALSE, FALSE, 0); shortcuts.button(checkbutton1); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton1), settings->genconfig.print_changes_only_get()); hbox1 = gtk_hbox_new(FALSE, 4); gtk_widget_show(hbox1); gtk_box_pack_start(GTK_BOX(vbox1), hbox1, TRUE, TRUE, 0); label2 = gtk_label_new("Portion"); gtk_widget_show(label2); gtk_box_pack_start(GTK_BOX(hbox1), label2, FALSE, FALSE, 0); label_portion = gtk_label_new(""); gtk_widget_show(label_portion); gtk_box_pack_start(GTK_BOX(hbox1), label_portion, FALSE, FALSE, 0); vseparator1 = gtk_vseparator_new(); gtk_widget_show(vseparator1); gtk_box_pack_start(GTK_BOX(hbox1), vseparator1, TRUE, TRUE, 0); button_change = gtk_button_new(); gtk_widget_show(button_change); gtk_box_pack_start(GTK_BOX(hbox1), button_change, FALSE, FALSE, 0); alignment1 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment1); gtk_container_add(GTK_CONTAINER(button_change), alignment1); hbox2 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox2); gtk_container_add(GTK_CONTAINER(alignment1), hbox2); image1 = gtk_image_new_from_stock("gtk-properties", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image1); gtk_box_pack_start(GTK_BOX(hbox2), image1, FALSE, FALSE, 0); label4 = gtk_label_new_with_mnemonic("C_hange"); gtk_widget_show(label4); gtk_box_pack_start(GTK_BOX(hbox2), label4, FALSE, FALSE, 0); shortcuts.label(label4); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(comparedialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(comparedialog, NULL, &shortcuts, NULL); cancelbutton = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton); gtk_dialog_add_action_widget(GTK_DIALOG(comparedialog), cancelbutton, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton), true); okbutton = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton); gtk_dialog_add_action_widget(GTK_DIALOG(comparedialog), okbutton, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton), true); shortcuts.stockbutton(cancelbutton); shortcuts.stockbutton(okbutton); shortcuts.process(); g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(static_on_okbutton_clicked), gpointer(this)); g_signal_connect((gpointer) button_change, "clicked", G_CALLBACK(on_button_portion_clicked), gpointer(this)); selectprojectgui->focus(); gtk_widget_grab_default(okbutton); // Set gui. gui_reorder_include(); } CompareDialog::~CompareDialog() { delete selectprojectgui; gtk_widget_destroy(comparedialog); } int CompareDialog::run() { return gtk_dialog_run(GTK_DIALOG(comparedialog)); } bool CompareDialog::on_combobox1_key_press_event(GtkWidget * widget, GdkEventKey * event, gpointer user_data) { return ((CompareDialog *) user_data)->on_combobox1_key_press(event); } bool CompareDialog::on_combobox1_key_press(GdkEventKey * event) { if (keyboard_enter_pressed(event)) { on_okbutton_clicked(); gtk_dialog_response(GTK_DIALOG(comparedialog), GTK_RESPONSE_OK); return true; } return false; } void CompareDialog::static_on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((CompareDialog *) user_data)->on_okbutton_clicked(); } void CompareDialog::on_okbutton_clicked() // Ok handler: do the comparison. { // Store user entered data. extern Settings *settings; settings->genconfig.project_to_compare_with_set(selectprojectgui->project); settings->genconfig.print_changes_only_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton1))); // Run comparison. compare_with(my_references_window, settings->genconfig.project_to_compare_with_get(), settings->genconfig.project_get(), settings->genconfig.print_changes_only_get()); } void CompareDialog::on_button_portion_clicked(GtkButton * button, gpointer user_data) { ((CompareDialog *) user_data)->on_button_portion(); } void CompareDialog::on_button_portion() { SelectBooksDialog dialog(true); if (dialog.run() == GTK_RESPONSE_OK) { gui_reorder_include(); } } void CompareDialog::gui_reorder_include() // Set labels whether the order of the books is standard and everything is included. { extern Settings *settings; ScripturePortions scriptureportions(settings->genconfig.project_get()); if (scriptureportions.reordering_portions_all()) gtk_label_set_text(GTK_LABEL(label_portion), CHAPTER_VERSE_SELECTION_ALL); else gtk_label_set_text(GTK_LABEL(label_portion), "part"); } bibledit-gtk-4.9/src/dialogcompare.h000664 000766 000024 00000003734 12221507134 017627 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGCOMPARE_H #define INCLUDED_DIALOGCOMPARE_H #include #include "ustring.h" #include "guiselectproject.h" #include "windowreferences.h" class CompareDialog { public: CompareDialog(WindowReferences * references_window); ~CompareDialog(); int run(); protected: GtkWidget *comparedialog; GtkWidget *dialog_vbox1; GtkWidget *vbox1; GtkWidget *label1; SelectProjectGui * selectprojectgui; GtkWidget *checkbutton1; GtkWidget *hbox1; GtkWidget *label2; GtkWidget *label_portion; GtkWidget *vseparator1; GtkWidget *button_change; GtkWidget *alignment1; GtkWidget *hbox2; GtkWidget *image1; GtkWidget *label4; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton; GtkWidget *okbutton; static bool on_combobox1_key_press_event(GtkWidget *widget, GdkEventKey *event, gpointer user_data); bool on_combobox1_key_press(GdkEventKey *event); static void static_on_okbutton_clicked(GtkButton * button, gpointer user_data); void on_okbutton_clicked(); static void on_button_portion_clicked(GtkButton *button, gpointer user_data); void on_button_portion(); void gui_reorder_include(); WindowReferences * my_references_window; }; #endif bibledit-gtk-4.9/src/dialogcompareprefs.cpp000664 000766 000024 00000006361 12221507142 021220 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogcompareprefs.h" #include "help.h" #include "settings.h" ComparePreferencesDialog::ComparePreferencesDialog(int dummy) { comparepreferencesdialog = gtk_dialog_new (); gtk_window_set_title (GTK_WINDOW (comparepreferencesdialog), "Enter"); gtk_window_set_position (GTK_WINDOW (comparepreferencesdialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal (GTK_WINDOW (comparepreferencesdialog), TRUE); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG (comparepreferencesdialog)); gtk_widget_show (dialog_vbox1); checkbutton_disregard_notes = gtk_check_button_new_with_mnemonic ("Disregard changes in notes"); gtk_widget_show (checkbutton_disregard_notes); gtk_box_pack_start (GTK_BOX (dialog_vbox1), checkbutton_disregard_notes, FALSE, FALSE, 0); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(comparepreferencesdialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(comparepreferencesdialog, NULL, NULL, NULL); cancelbutton = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton); gtk_dialog_add_action_widget(GTK_DIALOG(comparepreferencesdialog), cancelbutton, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton), true); okbutton = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton); gtk_dialog_add_action_widget(GTK_DIALOG(comparepreferencesdialog), okbutton, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton), true); g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(on_okbutton_clicked), gpointer(this)); gtk_widget_grab_focus(okbutton); gtk_widget_grab_default(okbutton); extern Settings * settings; gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (checkbutton_disregard_notes), settings->genconfig.compare_disregard_notes_get()); } ComparePreferencesDialog::~ComparePreferencesDialog() { gtk_widget_destroy(comparepreferencesdialog); } int ComparePreferencesDialog::run() { return gtk_dialog_run(GTK_DIALOG(comparepreferencesdialog)); } void ComparePreferencesDialog::on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((ComparePreferencesDialog *) user_data)->on_okbutton(); } void ComparePreferencesDialog::on_okbutton() { extern Settings * settings; settings->genconfig.compare_disregard_notes_set(gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (checkbutton_disregard_notes))); } bibledit-gtk-4.9/src/dialogcompareprefs.h000664 000766 000024 00000002531 12221507140 020656 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOG_COMPARE_PREFERENCES_H #define INCLUDED_DIALOG_COMPARE_PREFERENCES_H #include #include "ustring.h" class ComparePreferencesDialog { public: ComparePreferencesDialog (int dummy); ~ComparePreferencesDialog (); int run (); protected: GtkWidget *comparepreferencesdialog; GtkWidget *dialog_vbox1; GtkWidget *checkbutton_disregard_notes; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton; GtkWidget *okbutton; private: static void on_okbutton_clicked (GtkButton *button, gpointer user_data); void on_okbutton (); }; #endif bibledit-gtk-4.9/src/dialogdate.cpp000664 000766 000024 00000005413 12221507146 017450 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogdate.h" #include "date_time_utils.h" #include "help.h" DateDialog::DateDialog(guint32 * seconds_since_epoch, bool showtime) : datewidget (seconds_since_epoch, showtime) /* By default this dialog shows the calendar only. If showtime is true it shows the time also. */ { // Store variabeles. my_seconds_since_epoch = seconds_since_epoch; myshowtime = showtime; datedialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(datedialog), "Date"); gtk_window_set_position(GTK_WINDOW(datedialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_type_hint(GTK_WINDOW(datedialog), GDK_WINDOW_TYPE_HINT_DIALOG); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(datedialog)); gtk_widget_show(dialog_vbox1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), datewidget.hbox, TRUE, TRUE, 0); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(datedialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(datedialog, NULL, NULL, NULL); cancelbutton1 = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton1); gtk_dialog_add_action_widget(GTK_DIALOG(datedialog), cancelbutton1, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton1), true); okbutton1 = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton1); gtk_dialog_add_action_widget(GTK_DIALOG(datedialog), okbutton1, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton1), true); g_signal_connect((gpointer) okbutton1, "clicked", G_CALLBACK(on_okbutton_clicked), gpointer(this)); gtk_widget_grab_default(okbutton1); } DateDialog::~DateDialog() { gtk_widget_destroy(datedialog); } int DateDialog::run() { return gtk_dialog_run(GTK_DIALOG(datedialog)); } void DateDialog::on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((DateDialog *) user_data)->on_okbutton(); } void DateDialog::on_okbutton() { } bibledit-gtk-4.9/src/dialogdate.h000664 000766 000024 00000002525 12221507146 017116 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGDATE_H #define INCLUDED_DIALOGDATE_H #include #include "widgetdate.h" class DateDialog { public: DateDialog (guint32 * seconds_since_epoch, bool showtime = false); ~DateDialog (); int run (); protected: private: GtkWidget *datedialog; DateWidget datewidget; GtkWidget *dialog_vbox1; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton1; GtkWidget *okbutton1; static void on_okbutton_clicked (GtkButton * button, gpointer user_data); void on_okbutton (); guint * my_seconds_since_epoch; bool myshowtime; }; #endif bibledit-gtk-4.9/src/dialogdictionary.cpp000664 000766 000024 00000021561 12221507147 020703 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogdictionary.h" #include "utilities.h" #include "bible.h" #include "dialogselectchapters.h" #include "projectutils.h" #include "books.h" #include "help.h" #include "settings.h" #include "listview.h" #include "spelling.h" #include "dialoglistview.h" #include "dialogeditdictionary.h" #include "git.h" enum { COLUMN_BOOK, NUM_COLUMNS }; DictionaryDialog::DictionaryDialog(const ustring & project) { // Store data. myproject = project; dictionarydialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(dictionarydialog), "Dictionaries"); gtk_window_set_position(GTK_WINDOW(dictionarydialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(dictionarydialog), TRUE); gtk_window_set_destroy_with_parent(GTK_WINDOW(dictionarydialog), TRUE); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG (dictionarydialog)); gtk_widget_show(dialog_vbox1); label_info = gtk_label_new_with_mnemonic("To change the order in which a dictionary is consulted, drag it to another location."); gtk_widget_show(label_info); gtk_box_pack_start(GTK_BOX(dialog_vbox1), label_info, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label_info), 0, 0.5); treeview_dictionaries = gtk_tree_view_new(); gtk_widget_show(treeview_dictionaries); gtk_box_pack_start(GTK_BOX(dialog_vbox1), treeview_dictionaries, TRUE, TRUE, 0); gtk_widget_set_size_request(treeview_dictionaries, -1, 400); gtk_tree_view_set_headers_visible(GTK_TREE_VIEW(treeview_dictionaries), FALSE); gtk_tree_view_set_reorderable(GTK_TREE_VIEW(treeview_dictionaries), TRUE); hbox_buttons = gtk_hbox_new(FALSE, 0); gtk_widget_show(hbox_buttons); gtk_box_pack_start(GTK_BOX(dialog_vbox1), hbox_buttons, TRUE, TRUE, 0); button_add = gtk_button_new_from_stock("gtk-connect"); gtk_widget_show(button_add); gtk_box_pack_start(GTK_BOX(hbox_buttons), button_add, FALSE, FALSE, 0); button_delete = gtk_button_new_from_stock("gtk-disconnect"); gtk_widget_show(button_delete); gtk_box_pack_start(GTK_BOX(hbox_buttons), button_delete, FALSE, FALSE, 0); button_edit = gtk_button_new_from_stock("gtk-edit"); gtk_widget_show(button_edit); gtk_box_pack_start(GTK_BOX(hbox_buttons), button_edit, FALSE, FALSE, 0); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(dictionarydialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(dictionarydialog, NULL, NULL, "file/project/project-properties/dictionaries"); cancelbutton1 = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton1); gtk_dialog_add_action_widget(GTK_DIALOG(dictionarydialog), cancelbutton1, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton1), true); okbutton1 = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton1); gtk_dialog_add_action_widget(GTK_DIALOG(dictionarydialog), okbutton1, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton1), true); g_signal_connect((gpointer) treeview_dictionaries, "cursor_changed", G_CALLBACK(on_treeview_dictionaries_cursor_changed), gpointer(this)); g_signal_connect((gpointer) button_add, "clicked", G_CALLBACK(on_button_add_clicked), gpointer(this)); g_signal_connect((gpointer) button_delete, "clicked", G_CALLBACK(on_button_delete_clicked), gpointer(this)); g_signal_connect((gpointer) button_edit, "clicked", G_CALLBACK(on_button_edit_clicked), gpointer(this)); g_signal_connect((gpointer) okbutton1, "clicked", G_CALLBACK(on_okbutton1_clicked), gpointer(this)); gtk_widget_grab_focus(treeview_dictionaries); gtk_widget_grab_default(okbutton1); // Storage, renderer, column and selection. model = gtk_list_store_new(NUM_COLUMNS, G_TYPE_STRING); gtk_tree_view_set_model(GTK_TREE_VIEW(treeview_dictionaries), GTK_TREE_MODEL(model)); g_object_unref(model); GtkCellRenderer *renderer = gtk_cell_renderer_text_new(); gtk_tree_view_insert_column_with_attributes(GTK_TREE_VIEW(treeview_dictionaries), -1, "", renderer, "text", COLUMN_BOOK, NULL); gtk_tree_selection_set_mode(gtk_tree_view_get_selection(GTK_TREE_VIEW(treeview_dictionaries)), GTK_SELECTION_SINGLE); // Load content. extern Settings *settings; ProjectConfiguration *projectconfig = settings->projectconfig(myproject); vector < ustring > dictionaries = projectconfig->spelling_dictionaries_get(); GtkTreeIter iter; for (unsigned int i = 0; i < dictionaries.size(); i++) { gtk_list_store_append(model, &iter); gtk_list_store_set(model, &iter, COLUMN_BOOK, dictionaries[i].c_str(), -1); } // Gui update. on_treeview_dictionaries_cursor (); } DictionaryDialog::~DictionaryDialog() { gtk_widget_destroy(dictionarydialog); } int DictionaryDialog::run() { return gtk_dialog_run(GTK_DIALOG(dictionarydialog)); } void DictionaryDialog::on_okbutton1_clicked(GtkButton * button, gpointer user_data) { ((DictionaryDialog *) user_data)->on_okbutton(); } void DictionaryDialog::on_okbutton() { extern Settings *settings; ProjectConfiguration *projectconfig = settings->projectconfig(myproject); vector < ustring > dictionaries = listview_get_strings(treeview_dictionaries); projectconfig->spelling_dictionaries_set(dictionaries); } void DictionaryDialog::on_button_add_clicked(GtkButton * button, gpointer user_data) { ((DictionaryDialog *) user_data)->on_button_add(); } void DictionaryDialog::on_button_add() { // Get the available dictionaries in a certain order: vector < ustring > dictionaries; // - current project's shared dictionary. dictionaries.push_back(spelling_project_dictionary(myproject)); // - enchant provided dictionaries. vector < ustring > enchantdics = spelling_enchant_dictionaries(); for (unsigned int i = 0; i < enchantdics.size(); i++) { dictionaries.push_back(enchantdics[i]); } // - global dictionary. dictionaries.push_back(spelling_global_dictionary()); // - other projects' shared dictionaries. vector < ustring > projects = projects_get_all(); for (unsigned int i = 0; i < projects.size(); i++) { if (projects[i] != myproject) { dictionaries.push_back(spelling_project_dictionary(projects[i])); } } // Take out the ones already loaded. { vector < ustring > loaded_dictionaries = listview_get_strings(treeview_dictionaries); set < ustring > dictionary_set(loaded_dictionaries.begin(), loaded_dictionaries.end()); vector < ustring > temporal_dictionaries; for (unsigned int i = 0; i < dictionaries.size(); i++) { if (dictionary_set.find(dictionaries[i]) == dictionary_set.end()) { temporal_dictionaries.push_back(dictionaries[i]); } } dictionaries = temporal_dictionaries; } // Display these. ListviewDialog dialog("Select a dictionary", dictionaries, "", false, NULL); if (dialog.run() == GTK_RESPONSE_OK) { // Add to the list. GtkTreeIter iter; gtk_list_store_append(model, &iter); gtk_list_store_set(model, &iter, COLUMN_BOOK, dialog.focus.c_str(), -1); // Focus new dictionary. listview_focus_string(treeview_dictionaries, dialog.focus, true); } } void DictionaryDialog::on_button_delete_clicked(GtkButton * button, gpointer user_data) { ((DictionaryDialog *) user_data)->on_button_delete(); } void DictionaryDialog::on_button_delete() { list_view_erase_selection(treeview_dictionaries); } void DictionaryDialog::on_treeview_dictionaries_cursor_changed(GtkTreeView * treeview, gpointer user_data) { ((DictionaryDialog *) user_data)->on_treeview_dictionaries_cursor(); } void DictionaryDialog::on_treeview_dictionaries_cursor() { ustring dictionary = listview_get_active_string(treeview_dictionaries); gtk_widget_set_sensitive(button_delete, !dictionary.empty()); bool editable = spelling_dictionary_editable(dictionary); gtk_widget_set_sensitive(button_edit, editable); } void DictionaryDialog::on_button_edit_clicked(GtkButton * button, gpointer user_data) { ((DictionaryDialog *) user_data)->on_button_edit(); } void DictionaryDialog::on_button_edit() { // Edit dictionary. EditDictionaryDialog dialog(listview_get_active_string(treeview_dictionaries)); dialog.run(); } bibledit-gtk-4.9/src/dialogdictionary.h000664 000766 000024 00000003660 12221507140 020341 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003 The Free Software Foundation. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGDICTIONARY_H #define INCLUDED_DIALOGDICTIONARY_H #include #include "ustring.h" class DictionaryDialog { public: DictionaryDialog (const ustring& project); ~DictionaryDialog (); int run (); protected: GtkWidget *dictionarydialog; GtkWidget *dialog_vbox1; GtkWidget *label_info; GtkWidget *treeview_dictionaries; GtkWidget *hbox_buttons; GtkWidget *button_add; GtkWidget *button_delete; GtkWidget *button_edit; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton1; GtkWidget *okbutton1; static void on_treeview_dictionaries_cursor_changed (GtkTreeView *treeview, gpointer user_data); void on_treeview_dictionaries_cursor (); static void on_button_add_clicked (GtkButton *button, gpointer user_data); void on_button_add (); static void on_button_delete_clicked (GtkButton *button, gpointer user_data); void on_button_delete (); static void on_button_edit_clicked (GtkButton *button, gpointer user_data); void on_button_edit (); static void on_okbutton1_clicked (GtkButton *button, gpointer user_data); void on_okbutton (); private: ustring myproject; GtkListStore *model; }; #endif bibledit-gtk-4.9/src/dialogeditdictionary.cpp000664 000766 000024 00000035077 12221507140 021551 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogeditdictionary.h" #include "help.h" #include "spelling.h" #include "utilities.h" #include "shortcuts.h" #include "tiny_utilities.h" #include "projectutils.h" #include "dialoglistview.h" #include "gtkwrappers.h" #include "screen.h" EditDictionaryDialog::EditDictionaryDialog(const ustring & dictionary) { mydictionary = dictionary; Shortcuts shortcuts(0); textviewdialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(textviewdialog), "Edit Dictionary"); gtk_window_set_position(GTK_WINDOW(textviewdialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_type_hint(GTK_WINDOW(textviewdialog), GDK_WINDOW_TYPE_HINT_DIALOG); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(textviewdialog)); gtk_widget_show(dialog_vbox1); scrolledwindow1 = gtk_scrolled_window_new(NULL, NULL); gtk_widget_show(scrolledwindow1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), scrolledwindow1, TRUE, TRUE, 0); // Never show horizontal scrollbar. gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow1), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scrolledwindow1), GTK_SHADOW_IN); textview1 = gtk_text_view_new(); gtk_widget_show(textview1); gtk_container_add(GTK_CONTAINER(scrolledwindow1), textview1); table1 = gtk_table_new(3, 4, FALSE); gtk_widget_show(table1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), table1, FALSE, FALSE, 0); gtk_table_set_row_spacings(GTK_TABLE(table1), 5); gtk_table_set_col_spacings(GTK_TABLE(table1), 5); label4 = gtk_label_new("Import from"); gtk_widget_show(label4); gtk_table_attach(GTK_TABLE(table1), label4, 1, 2, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); label5 = gtk_label_new("Export to"); gtk_widget_show(label5); gtk_table_attach(GTK_TABLE(table1), label5, 2, 3, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); button_import_dict = gtk_button_new(); gtk_widget_show(button_import_dict); gtk_table_attach(GTK_TABLE(table1), button_import_dict, 1, 2, 1, 2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); alignment3 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment3); gtk_container_add(GTK_CONTAINER(button_import_dict), alignment3); hbox4 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox4); gtk_container_add(GTK_CONTAINER(alignment3), hbox4); image3 = gtk_image_new_from_stock("gtk-harddisk", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image3); gtk_box_pack_start(GTK_BOX(hbox4), image3, FALSE, FALSE, 0); label3 = gtk_label_new_with_mnemonic("Dictionary"); gtk_widget_show(label3); gtk_box_pack_start(GTK_BOX(hbox4), label3, FALSE, FALSE, 0); shortcuts.label(label3); button_import_file = gtk_button_new(); gtk_widget_show(button_import_file); gtk_table_attach(GTK_TABLE(table1), button_import_file, 1, 2, 2, 3, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); alignment2 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment2); gtk_container_add(GTK_CONTAINER(button_import_file), alignment2); hbox3 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox3); gtk_container_add(GTK_CONTAINER(alignment2), hbox3); image2 = gtk_image_new_from_stock("gtk-open", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image2); gtk_box_pack_start(GTK_BOX(hbox3), image2, FALSE, FALSE, 0); label2 = gtk_label_new_with_mnemonic("File"); gtk_widget_show(label2); gtk_box_pack_start(GTK_BOX(hbox3), label2, FALSE, FALSE, 0); shortcuts.label(label2); button_sort = gtk_button_new(); gtk_widget_show(button_sort); gtk_table_attach(GTK_TABLE(table1), button_sort, 0, 1, 1, 2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); alignment1 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment1); gtk_container_add(GTK_CONTAINER(button_sort), alignment1); hbox2 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox2); gtk_container_add(GTK_CONTAINER(alignment1), hbox2); image1 = gtk_image_new_from_stock("gtk-sort-ascending", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image1); gtk_box_pack_start(GTK_BOX(hbox2), image1, FALSE, FALSE, 0); label1 = gtk_label_new_with_mnemonic("Sort, remove duplicates"); gtk_widget_show(label1); gtk_box_pack_start(GTK_BOX(hbox2), label1, FALSE, FALSE, 0); shortcuts.label(label1); button_export_dict = gtk_button_new(); gtk_widget_show(button_export_dict); gtk_table_attach(GTK_TABLE(table1), button_export_dict, 2, 3, 1, 2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); alignment4 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment4); gtk_container_add(GTK_CONTAINER(button_export_dict), alignment4); hbox5 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox5); gtk_container_add(GTK_CONTAINER(alignment4), hbox5); image4 = gtk_image_new_from_stock("gtk-harddisk", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image4); gtk_box_pack_start(GTK_BOX(hbox5), image4, FALSE, FALSE, 0); label6 = gtk_label_new_with_mnemonic("Dictionary"); gtk_widget_show(label6); gtk_box_pack_start(GTK_BOX(hbox5), label6, FALSE, FALSE, 0); shortcuts.label(label6); button_export_file = gtk_button_new(); gtk_widget_show(button_export_file); gtk_table_attach(GTK_TABLE(table1), button_export_file, 2, 3, 2, 3, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); alignment5 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment5); gtk_container_add(GTK_CONTAINER(button_export_file), alignment5); hbox6 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox6); gtk_container_add(GTK_CONTAINER(alignment5), hbox6); image5 = gtk_image_new_from_stock("gtk-open", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image5); gtk_box_pack_start(GTK_BOX(hbox6), image5, FALSE, FALSE, 0); label7 = gtk_label_new_with_mnemonic("File"); gtk_widget_show(label7); gtk_box_pack_start(GTK_BOX(hbox6), label7, FALSE, FALSE, 0); shortcuts.label(label7); button_count = gtk_button_new(); gtk_widget_show(button_count); gtk_table_attach(GTK_TABLE(table1), button_count, 3, 4, 1, 2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); alignment6 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment6); gtk_container_add(GTK_CONTAINER(button_count), alignment6); hbox7 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox7); gtk_container_add(GTK_CONTAINER(alignment6), hbox7); image6 = gtk_image_new_from_stock("gtk-info", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image6); gtk_box_pack_start(GTK_BOX(hbox7), image6, FALSE, FALSE, 0); label8 = gtk_label_new_with_mnemonic("Word count"); gtk_widget_show(label8); gtk_box_pack_start(GTK_BOX(hbox7), label8, FALSE, FALSE, 0); shortcuts.label(label8); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(textviewdialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(textviewdialog, NULL, &shortcuts, "file/project/project-properties/dictionaries/edit"); cancelbutton1 = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton1); gtk_dialog_add_action_widget(GTK_DIALOG(textviewdialog), cancelbutton1, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton1), true); okbutton1 = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton1); gtk_dialog_add_action_widget(GTK_DIALOG(textviewdialog), okbutton1, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton1), true); shortcuts.stockbutton(cancelbutton1); shortcuts.stockbutton(okbutton1); shortcuts.process(); g_signal_connect((gpointer) button_sort, "clicked", G_CALLBACK(on_button_sort_clicked), gpointer(this)); g_signal_connect((gpointer) button_import_dict, "clicked", G_CALLBACK(on_button_import_dict_clicked), gpointer(this)); g_signal_connect((gpointer) button_import_file, "clicked", G_CALLBACK(on_button_import_file_clicked), gpointer(this)); g_signal_connect((gpointer) button_export_dict, "clicked", G_CALLBACK(on_button_export_dict_clicked), gpointer(this)); g_signal_connect((gpointer) button_export_file, "clicked", G_CALLBACK(on_button_export_file_clicked), gpointer(this)); g_signal_connect((gpointer) okbutton1, "clicked", G_CALLBACK(on_okbutton1_clicked), gpointer(this)); g_signal_connect((gpointer) button_count, "clicked", G_CALLBACK(on_button_count_clicked), gpointer(this)); gtk_widget_grab_focus(textview1); gtk_widget_grab_default(okbutton1); // Load dictionary. gtk_text_view_set_editable(GTK_TEXT_VIEW(textview1), true); textbuffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(textview1)); filename = spelling_dictionary_filename(dictionary); gchar *contents; g_file_get_contents(filename.c_str(), &contents, NULL, NULL); if (contents) { gtk_text_buffer_set_text(textbuffer, contents, -1); g_free(contents); } new DialogAutoScaler (textviewdialog, G_MAXINT); } EditDictionaryDialog::~EditDictionaryDialog() { gtk_widget_destroy(textviewdialog); } int EditDictionaryDialog::run() { return gtk_dialog_run(GTK_DIALOG(textviewdialog)); } void EditDictionaryDialog::on_button_sort_clicked(GtkButton * button, gpointer user_data) { ((EditDictionaryDialog *) user_data)->on_button_sort(NULL); } void EditDictionaryDialog::on_button_sort(vector < ustring > *lines_ptr) { vector < ustring > lines; vector < ustring > content; set < ustring > contentset; if (lines_ptr) lines = *lines_ptr; else textbuffer_get_lines(textbuffer, lines, true); for (unsigned int i = 0; i < lines.size(); i++) { if (lines[i].empty()) continue; if (contentset.find(lines[i]) != contentset.end()) continue; contentset.insert(lines[i]); content.push_back(lines[i]); } sort(content.begin(), content.end()); gtk_text_buffer_set_text(textbuffer, "", -1); for (unsigned int i = 0; i < content.size(); i++) { gtk_text_buffer_insert_at_cursor(textbuffer, content[i].c_str(), -1); gtk_text_buffer_insert_at_cursor(textbuffer, "\n", -1); } GtkTextIter iter; gtk_text_buffer_get_start_iter(textbuffer, &iter); gtk_text_buffer_place_cursor(textbuffer, &iter); } void EditDictionaryDialog::on_button_import_dict_clicked(GtkButton * button, gpointer user_data) { ((EditDictionaryDialog *) user_data)->on_button_import_dict(); } void EditDictionaryDialog::on_button_import_dict() { vector < ustring > dictionaries = get_other_editable_dictionaries(); ListviewDialog dialog("Select a dictionary", dictionaries, "", false, NULL); if (dialog.run() == GTK_RESPONSE_OK) { ustring filename = spelling_dictionary_filename(dialog.focus); ReadText rt(filename, true, false); vector < ustring > lines; textbuffer_get_lines(textbuffer, lines, true); for (unsigned int i = 0; i < rt.lines.size(); i++) { lines.push_back(rt.lines[i]); } on_button_sort(&lines); } } void EditDictionaryDialog::on_button_import_file_clicked(GtkButton * button, gpointer user_data) { ((EditDictionaryDialog *) user_data)->on_button_import_file(); } void EditDictionaryDialog::on_button_import_file() { ustring filename = gtkw_file_chooser_open(textviewdialog, "", ""); if (filename.empty()) return; ReadText rt(filename, true, false); vector < ustring > lines; textbuffer_get_lines(textbuffer, lines, true); for (unsigned int i = 0; i < rt.lines.size(); i++) { lines.push_back(rt.lines[i]); } on_button_sort(&lines); } void EditDictionaryDialog::on_button_export_dict_clicked(GtkButton * button, gpointer user_data) { ((EditDictionaryDialog *) user_data)->on_button_export_dict(); } void EditDictionaryDialog::on_button_export_dict() { vector < ustring > dictionaries = get_other_editable_dictionaries(); ListviewDialog dialog("Select a dictionary", dictionaries, "", false, NULL); if (dialog.run() == GTK_RESPONSE_OK) { ustring filename = spelling_dictionary_filename(dialog.focus); vector < ustring > lines; textbuffer_get_lines(textbuffer, lines, true); write_lines(filename, lines); } } void EditDictionaryDialog::on_button_export_file_clicked(GtkButton * button, gpointer user_data) { ((EditDictionaryDialog *) user_data)->on_button_export_file(); } void EditDictionaryDialog::on_button_export_file() { ustring filename = gtkw_file_chooser_save(textviewdialog, "", ""); if (filename.empty()) return; vector < ustring > lines; textbuffer_get_lines(textbuffer, lines, true); write_lines(filename, lines); } void EditDictionaryDialog::on_button_count_clicked(GtkButton * button, gpointer user_data) { ((EditDictionaryDialog *) user_data)->on_button_count(); } void EditDictionaryDialog::on_button_count() { vector < ustring > lines; textbuffer_get_lines(textbuffer, lines, true); int wordcount = lines.size(); for (unsigned int i = 0; i < lines.size(); i++) { if (lines[i].empty()) wordcount--; } gtkw_dialog_info(textviewdialog, "Word count is " + convert_to_string(wordcount)); write_lines(filename, lines); } void EditDictionaryDialog::on_okbutton1_clicked(GtkButton * button, gpointer user_data) { ((EditDictionaryDialog *) user_data)->on_okbutton(); } void EditDictionaryDialog::on_okbutton() { GtkTextIter startiter, enditer; gtk_text_buffer_get_start_iter(textbuffer, &startiter); gtk_text_buffer_get_end_iter(textbuffer, &enditer); g_file_set_contents(filename.c_str(), gtk_text_buffer_get_text(textbuffer, &startiter, &enditer, true), -1, NULL); } vector < ustring > EditDictionaryDialog::get_other_editable_dictionaries() { vector < ustring > dictionaries; if (mydictionary != spelling_global_dictionary()) dictionaries.push_back(spelling_global_dictionary()); vector < ustring > projects = projects_get_all(); for (unsigned int i = 0; i < projects.size(); i++) { if (mydictionary != spelling_project_dictionary(projects[i])) { dictionaries.push_back(spelling_project_dictionary(projects[i])); } } return dictionaries; } bibledit-gtk-4.9/src/dialogeditdictionary.h000664 000766 000024 00000005645 12221507130 021213 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGE_EDIT_DICTIONARY_H #define INCLUDED_DIALOGE_EDIT_DICTIONARY_H #include #include "ustring.h" class EditDictionaryDialog { public: EditDictionaryDialog (const ustring& dictionary); ~EditDictionaryDialog (); int run (); protected: GtkWidget *textviewdialog; GtkWidget *dialog_vbox1; GtkWidget *scrolledwindow1; GtkWidget *textview1; GtkWidget *table1; GtkWidget *label4; GtkWidget *label5; GtkWidget *button_import_dict; GtkWidget *alignment3; GtkWidget *hbox4; GtkWidget *image3; GtkWidget *label3; GtkWidget *button_import_file; GtkWidget *alignment2; GtkWidget *hbox3; GtkWidget *image2; GtkWidget *label2; GtkWidget *button_sort; GtkWidget *alignment1; GtkWidget *hbox2; GtkWidget *image1; GtkWidget *label1; GtkWidget *button_export_dict; GtkWidget *alignment4; GtkWidget *hbox5; GtkWidget *image4; GtkWidget *label6; GtkWidget *button_export_file; GtkWidget *alignment5; GtkWidget *hbox6; GtkWidget *image5; GtkWidget *label7; GtkWidget *button_count; GtkWidget *alignment6; GtkWidget *hbox7; GtkWidget *image6; GtkWidget *label8; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton1; GtkWidget *okbutton1; private: static void on_button_sort_clicked (GtkButton *button, gpointer user_data); void on_button_sort (vector * lines_ptr); static void on_button_import_dict_clicked (GtkButton *button, gpointer user_data); void on_button_import_dict (); static void on_button_import_file_clicked (GtkButton *button, gpointer user_data); void on_button_import_file (); static void on_button_export_dict_clicked (GtkButton *button, gpointer user_data); void on_button_export_dict (); static void on_button_export_file_clicked (GtkButton *button, gpointer user_data); void on_button_export_file (); static void on_button_count_clicked (GtkButton *button, gpointer user_data); void on_button_count (); static void on_okbutton1_clicked (GtkButton *button, gpointer user_data); void on_okbutton (); ustring mydictionary; GtkTextBuffer * textbuffer; ustring filename; vector get_other_editable_dictionaries (); }; #endif bibledit-gtk-4.9/src/dialogeditlist.cpp000664 000766 000024 00000037671 12221507143 020364 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogeditlist.h" #include "referenceutils.h" #include "listview.h" #include "dialogentry.h" #include "gtkwrappers.h" #include "utilities.h" #include "help.h" #include "tiny_utilities.h" #include "dialoglistviewm.h" EditListDialog::EditListDialog(vector * lines, const ustring & title, const ustring & info, bool remove, bool add, bool sort, bool import, bool exprt, bool duplicates, bool reorderable, vector * addables) { // Save variables. mylines = lines; myaddables = addables; editlistdialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(editlistdialog), title.c_str()); gtk_window_set_position(GTK_WINDOW(editlistdialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(editlistdialog), TRUE); gtk_window_set_resizable(GTK_WINDOW(editlistdialog), FALSE); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(editlistdialog)); gtk_widget_show(dialog_vbox1); vbox1 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), vbox1, FALSE, FALSE, 0); hbox3 = gtk_hbox_new(FALSE, 4); gtk_widget_show(hbox3); gtk_box_pack_start(GTK_BOX(vbox1), hbox3, FALSE, FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(hbox3), 2); label3 = gtk_label_new_with_mnemonic("_List"); gtk_widget_show(label3); gtk_box_pack_start(GTK_BOX(hbox3), label3, FALSE, FALSE, 0); label_info = gtk_label_new(info.c_str()); gtk_widget_show(label_info); gtk_box_pack_start(GTK_BOX(hbox3), label_info, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label_info), 0, 0.5); scrolledwindow1 = gtk_scrolled_window_new(NULL, NULL); gtk_widget_show(scrolledwindow1); gtk_box_pack_start(GTK_BOX(vbox1), scrolledwindow1, TRUE, TRUE, 0); gtk_widget_set_size_request(scrolledwindow1, -1, 300); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow1), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); treeview1 = gtk_tree_view_new(); gtk_widget_show(treeview1); gtk_container_add(GTK_CONTAINER(scrolledwindow1), treeview1); gtk_tree_view_set_headers_visible(GTK_TREE_VIEW(treeview1), FALSE); if (reorderable) gtk_tree_view_set_reorderable(GTK_TREE_VIEW(treeview1), TRUE); table1 = gtk_table_new(1, 5, TRUE); gtk_widget_show(table1); gtk_box_pack_start(GTK_BOX(vbox1), table1, TRUE, TRUE, 0); // Pointer for properly ordering any buttons that get used. int buttonpointer = 0; buttonremove = NULL; if (remove) { buttonremove = gtk_button_new_from_stock("gtk-remove"); gtk_widget_show(buttonremove); gtk_table_attach(GTK_TABLE(table1), buttonremove, buttonpointer, buttonpointer + 1, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); // Button remove is made sensitive only if there is something to remove. gtk_widget_set_sensitive(buttonremove, false); // Position of next button. buttonpointer++; } if (add) { button_add = gtk_button_new_from_stock("gtk-add"); gtk_widget_show(button_add); gtk_table_attach(GTK_TABLE(table1), button_add, buttonpointer, buttonpointer + 1, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); // Position of next button. buttonpointer++; } if (sort) { button_sort = gtk_button_new(); gtk_widget_show(button_sort); gtk_table_attach(GTK_TABLE(table1), button_sort, buttonpointer, buttonpointer + 1, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); alignment1 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment1); gtk_container_add(GTK_CONTAINER(button_sort), alignment1); hbox4 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox4); gtk_container_add(GTK_CONTAINER(alignment1), hbox4); image1 = gtk_image_new_from_stock("gtk-sort-ascending", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image1); gtk_box_pack_start(GTK_BOX(hbox4), image1, FALSE, FALSE, 0); label5 = gtk_label_new_with_mnemonic("_Sort"); gtk_widget_show(label5); gtk_box_pack_start(GTK_BOX(hbox4), label5, FALSE, FALSE, 0); // Position of next button. buttonpointer++; } if (import) { button_import = gtk_button_new(); gtk_widget_show(button_import); gtk_table_attach(GTK_TABLE(table1), button_import, buttonpointer, buttonpointer + 1, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); alignment2 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment2); gtk_container_add(GTK_CONTAINER(button_import), alignment2); hbox5 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox5); gtk_container_add(GTK_CONTAINER(alignment2), hbox5); image2 = gtk_image_new_from_stock("gtk-convert", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image2); gtk_box_pack_start(GTK_BOX(hbox5), image2, FALSE, FALSE, 0); label6 = gtk_label_new_with_mnemonic("_Import"); gtk_widget_show(label6); gtk_box_pack_start(GTK_BOX(hbox5), label6, FALSE, FALSE, 0); // Position of next button. buttonpointer++; } if (exprt) { button_export = gtk_button_new(); gtk_widget_show(button_export); gtk_table_attach(GTK_TABLE(table1), button_export, buttonpointer, buttonpointer + 1, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); alignment3 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment3); gtk_container_add(GTK_CONTAINER(button_export), alignment3); hbox6 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox6); gtk_container_add(GTK_CONTAINER(alignment3), hbox6); image3 = gtk_image_new_from_stock("gtk-convert", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image3); gtk_box_pack_start(GTK_BOX(hbox6), image3, FALSE, FALSE, 0); label7 = gtk_label_new_with_mnemonic("_Export"); gtk_widget_show(label7); gtk_box_pack_start(GTK_BOX(hbox6), label7, FALSE, FALSE, 0); // Position of next button. buttonpointer++; } if (duplicates) { button_doubles = gtk_button_new(); gtk_widget_show(button_doubles); gtk_table_attach(GTK_TABLE(table1), button_doubles, buttonpointer, buttonpointer + 1, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); alignment4 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment4); gtk_container_add(GTK_CONTAINER(button_doubles), alignment4); hbox7 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox7); gtk_container_add(GTK_CONTAINER(alignment4), hbox7); image4 = gtk_image_new_from_stock("gtk-clear", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image4); gtk_box_pack_start(GTK_BOX(hbox7), image4, FALSE, FALSE, 0); label8 = gtk_label_new_with_mnemonic("_Duplicates"); gtk_widget_show(label8); gtk_box_pack_start(GTK_BOX(hbox7), label8, FALSE, FALSE, 0); // Position of next button. buttonpointer++; } dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(editlistdialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(editlistdialog, NULL, NULL, NULL); cancelbutton = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton); gtk_dialog_add_action_widget(GTK_DIALOG(editlistdialog), cancelbutton, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton), true); okbutton = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton); gtk_dialog_add_action_widget(GTK_DIALOG(editlistdialog), okbutton, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton), true); g_signal_connect_after((gpointer) treeview1, "cursor_changed", G_CALLBACK(on_treeview1_cursor_changed), gpointer(this)); g_signal_connect_after((gpointer) treeview1, "move_cursor", G_CALLBACK(on_treeview1_move_cursor), gpointer(this)); g_signal_connect_after((gpointer) treeview1, "select_all", G_CALLBACK(on_treeview1_select_all), gpointer(this)); g_signal_connect_after((gpointer) treeview1, "select_cursor_parent", G_CALLBACK(on_treeview1_select_cursor_parent), gpointer(this)); g_signal_connect_after((gpointer) treeview1, "select_cursor_row", G_CALLBACK(on_treeview1_select_cursor_row), gpointer(this)); g_signal_connect_after((gpointer) treeview1, "toggle_cursor_row", G_CALLBACK(on_treeview1_toggle_cursor_row), gpointer(this)); g_signal_connect_after((gpointer) treeview1, "unselect_all", G_CALLBACK(on_treeview1_unselect_all), gpointer(this)); if (remove) g_signal_connect((gpointer) buttonremove, "clicked", G_CALLBACK(on_removebutton_clicked), gpointer(this)); if (add) g_signal_connect((gpointer) button_add, "clicked", G_CALLBACK(on_button_add_clicked), gpointer(this)); if (sort) g_signal_connect((gpointer) button_sort, "clicked", G_CALLBACK(on_button_sort_clicked), gpointer(this)); if (import) g_signal_connect((gpointer) button_import, "clicked", G_CALLBACK(on_button_import_clicked), gpointer(this)); if (exprt) g_signal_connect((gpointer) button_export, "clicked", G_CALLBACK(on_button_export_clicked), gpointer(this)); if (duplicates) g_signal_connect((gpointer) button_doubles, "clicked", G_CALLBACK(on_button_doubles_clicked), gpointer(this)); g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(on_okbutton_clicked), gpointer(this)); gtk_label_set_mnemonic_widget(GTK_LABEL(label3), treeview1); gtk_widget_grab_focus(treeview1); gtk_widget_grab_default(okbutton); // Storage. liststore = gtk_list_store_new(1, G_TYPE_STRING); gtk_tree_view_set_model(GTK_TREE_VIEW(treeview1), GTK_TREE_MODEL(liststore)); g_object_unref(liststore); listview_set_strings(treeview1, liststore, *mylines); GtkCellRenderer *renderer; renderer = gtk_cell_renderer_text_new(); column = gtk_tree_view_column_new_with_attributes("", renderer, "text", 0, NULL); gtk_tree_view_append_column(GTK_TREE_VIEW(treeview1), column); select = gtk_tree_view_get_selection(GTK_TREE_VIEW(treeview1)); gtk_tree_selection_set_mode(select, GTK_SELECTION_MULTIPLE); } EditListDialog::~EditListDialog() { gtk_widget_destroy(editlistdialog); } int EditListDialog::run() { return gtk_dialog_run(GTK_DIALOG(editlistdialog)); } void EditListDialog::on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((EditListDialog *) user_data)->on_okbutton(); } void EditListDialog::on_okbutton() { vector < ustring > strings = listview_get_strings(treeview1); mylines->assign(strings.begin(), strings.end()); } void EditListDialog::on_removebutton_clicked(GtkButton * button, gpointer user_data) { ((EditListDialog *) user_data)->on_remove(); } void EditListDialog::on_remove() { // Delete each selected row. vector < GtkTreeIter > iters; gtk_tree_selection_selected_foreach(select, EditListDialog::on_collect_iters, gpointer(&iters)); for (unsigned int i = 0; i < iters.size(); i++) { gtk_list_store_remove(liststore, &iters[i]); } // Set GUI. on_cursor(); } void EditListDialog::on_collect_iters(GtkTreeModel * model, GtkTreePath * path, GtkTreeIter * iter, gpointer data) { ((vector < GtkTreeIter > *)data)->push_back(*iter); } void EditListDialog::on_button_add_clicked(GtkButton * button, gpointer user_data) { ((EditListDialog *) user_data)->on_add(); } void EditListDialog::on_add() // Adds tasks. { if (myaddables) { ListviewMDialog dialog("Select a task to add", *myaddables, false, NULL); if (dialog.run() == GTK_RESPONSE_OK) { for (unsigned int i = 0; i < dialog.foci.size(); i++) { GtkTreeIter iter; gtk_list_store_append(liststore, &iter); gtk_list_store_set(liststore, &iter, 0, dialog.foci[i].c_str(), -1); } } } else { EntryDialog dialog("New value", "Enter a new value", ""); if (dialog.run() == GTK_RESPONSE_OK) { GtkTreeIter iter; gtk_list_store_append(liststore, &iter); gtk_list_store_set(liststore, &iter, 0, dialog.entered_value.c_str(), -1); } } } void EditListDialog::on_button_sort_clicked(GtkButton * button, gpointer user_data) { ((EditListDialog *) user_data)->on_sort(); } void EditListDialog::on_sort() { vector < ustring > lines; lines = listview_get_strings(treeview1); sort(lines.begin(), lines.end()); listview_set_strings(treeview1, liststore, lines); } void EditListDialog::on_button_import_clicked(GtkButton * button, gpointer user_data) { ((EditListDialog *) user_data)->on_import(); } void EditListDialog::on_import() { ustring filename = gtkw_file_chooser_open(editlistdialog, "Open File", ""); if (filename.empty()) return; vector < ustring > lines; lines = listview_get_strings(treeview1); ReadText rt(filename, true); for (unsigned int i = 0; i < rt.lines.size(); i++) lines.push_back(rt.lines[i]); listview_set_strings(treeview1, liststore, lines); } void EditListDialog::on_button_export_clicked(GtkButton * button, gpointer user_data) { ((EditListDialog *) user_data)->on_export(); } void EditListDialog::on_export() { ustring filename = gtkw_file_chooser_save(editlistdialog, "", ""); if (filename.empty()) return; vector < ustring > lines = listview_get_strings(treeview1); write_lines(filename, lines); } void EditListDialog::on_button_doubles_clicked(GtkButton * button, gpointer user_data) { ((EditListDialog *) user_data)->on_duplicates(); } void EditListDialog::on_duplicates() { vector < ustring > lines; lines = listview_get_strings(treeview1); vector < ustring > lines_without_duplicates; set < ustring > checked_duplicates; for (unsigned int i = 0; i < lines.size(); i++) { if (checked_duplicates.find(lines[i]) == checked_duplicates.end()) { lines_without_duplicates.push_back(lines[i]); checked_duplicates.insert(lines[i]); } } unsigned int duplicates_removed; duplicates_removed = lines.size() - lines_without_duplicates.size(); if (duplicates_removed == 0) { gtkw_dialog_info(editlistdialog, "There were no duplicates"); } else { if (gtkw_dialog_question(editlistdialog, "Do you want to remove " + convert_to_string(duplicates_removed) + " duplicates?", GTK_RESPONSE_YES) == GTK_RESPONSE_YES) { listview_set_strings(treeview1, liststore, lines_without_duplicates); } } } void EditListDialog::on_treeview1_cursor_changed(GtkTreeView * treeview, gpointer user_data) { ((EditListDialog *) user_data)->on_cursor(); } void EditListDialog::on_cursor() { if (buttonremove) { vector < GtkTreeIter > iters; gtk_tree_selection_selected_foreach(select, EditListDialog::on_collect_iters, gpointer(&iters)); gtk_widget_set_sensitive(buttonremove, iters.size() > 0); } } gboolean EditListDialog::on_treeview1_move_cursor(GtkTreeView * treeview, GtkMovementStep step, gint count, gpointer user_data) { return FALSE; } gboolean EditListDialog::on_treeview1_select_all(GtkTreeView * treeview, gpointer user_data) { ((EditListDialog *) user_data)->on_cursor(); return FALSE; } gboolean EditListDialog::on_treeview1_select_cursor_parent(GtkTreeView * treeview, gpointer user_data) { return FALSE; } gboolean EditListDialog::on_treeview1_select_cursor_row(GtkTreeView * treeview, gboolean start_editing, gpointer user_data) { return FALSE; } gboolean EditListDialog::on_treeview1_toggle_cursor_row(GtkTreeView * treeview, gpointer user_data) { return FALSE; } gboolean EditListDialog::on_treeview1_unselect_all(GtkTreeView * treeview, gpointer user_data) { ((EditListDialog *) user_data)->on_cursor(); return FALSE; } bibledit-gtk-4.9/src/dialogeditlist.h000664 000766 000024 00000007233 12221507150 020016 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGEDITLIST_H #define INCLUDED_DIALOGEDITLIST_H #include #include "ustring.h" class EditListDialog { public: EditListDialog (vector * lines, const ustring& title, const ustring& info, bool remove, bool add, bool sort, bool import, bool exprt, bool duplicates, bool reorderable, vector * addables); ~EditListDialog (); int run (); protected: GtkWidget *editlistdialog; GtkWidget *dialog_vbox1; GtkWidget *vbox1; GtkWidget *hbox3; GtkWidget *label3; GtkWidget *label_info; GtkWidget *scrolledwindow1; GtkWidget *treeview1; GtkWidget *table1; GtkWidget *buttonremove; GtkWidget *button_add; GtkWidget *button_sort; GtkWidget *alignment1; GtkWidget *hbox4; GtkWidget *image1; GtkWidget *label5; GtkWidget *button_import; GtkWidget *alignment2; GtkWidget *hbox5; GtkWidget *image2; GtkWidget *label6; GtkWidget *button_export; GtkWidget *alignment3; GtkWidget *hbox6; GtkWidget *image3; GtkWidget *label7; GtkWidget *button_doubles; GtkWidget *alignment4; GtkWidget *hbox7; GtkWidget *image4; GtkWidget *label8; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton; GtkWidget *okbutton; private: vector * myaddables; static void on_okbutton_clicked (GtkButton *button, gpointer user_data); void on_okbutton (); static void on_removebutton_clicked (GtkButton *button, gpointer user_data); void on_remove (); static void on_collect_iters (GtkTreeModel * model, GtkTreePath * path, GtkTreeIter * iter, gpointer data); static void on_button_add_clicked (GtkButton *button, gpointer user_data); void on_add (); static void on_button_sort_clicked (GtkButton *button, gpointer user_data); void on_sort (); static void on_button_import_clicked (GtkButton *button, gpointer user_data); void on_import (); static void on_button_export_clicked (GtkButton *button, gpointer user_data); void on_export (); static void on_button_doubles_clicked (GtkButton *button, gpointer user_data); void on_duplicates (); static void on_treeview1_cursor_changed (GtkTreeView *treeview, gpointer user_data); void on_cursor (); static gboolean on_treeview1_move_cursor (GtkTreeView *treeview, GtkMovementStep step, gint count, gpointer user_data); static gboolean on_treeview1_select_all (GtkTreeView *treeview, gpointer user_data); static gboolean on_treeview1_select_cursor_parent (GtkTreeView *treeview, gpointer user_data); static gboolean on_treeview1_select_cursor_row (GtkTreeView *treeview, gboolean start_editing, gpointer user_data); static gboolean on_treeview1_toggle_cursor_row (GtkTreeView *treeview, gpointer user_data); static gboolean on_treeview1_unselect_all (GtkTreeView *treeview, gpointer user_data); vector * mylines; GtkTreeViewColumn *column; GtkTreeSelection *select; GtkListStore * liststore; }; #endif bibledit-gtk-4.9/src/dialogeditnote.cpp000664 000766 000024 00000033711 12221507137 020350 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogeditnote.h" #include "utilities.h" #include "gwrappers.h" #include "usfmtools.h" #include "stylesheetutils.h" #include #include "help.h" #include "shortcuts.h" #include "biblenotes.h" #include "settings.h" #include "styles.h" #include "combobox.h" EditNoteDialog::EditNoteDialog(Editor2 * editor) { // Save variables. myeditor = editor; // Build dialog. Shortcuts shortcuts(0); editnotedialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(editnotedialog), "Edit note"); gtk_window_set_position(GTK_WINDOW(editnotedialog), GTK_WIN_POS_CENTER_ON_PARENT); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(editnotedialog)); gtk_widget_show(dialog_vbox1); hbox1 = gtk_hbox_new(FALSE, 10); gtk_widget_show(hbox1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), hbox1, TRUE, TRUE, 0); gtk_container_set_border_width(GTK_CONTAINER(hbox1), 1); label1 = gtk_label_new_with_mnemonic("Numbering"); gtk_widget_show(label1); gtk_box_pack_start(GTK_BOX(hbox1), label1, FALSE, FALSE, 0); GSList *radiobutton_numbering_automatic_group = NULL; radiobutton_numbering_automatic = gtk_radio_button_new_with_mnemonic(NULL, "Automatic"); gtk_widget_show(radiobutton_numbering_automatic); gtk_box_pack_start(GTK_BOX(hbox1), radiobutton_numbering_automatic, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_numbering_automatic), radiobutton_numbering_automatic_group); radiobutton_numbering_automatic_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_numbering_automatic)); shortcuts.button(radiobutton_numbering_automatic); radiobutton_numbering_none = gtk_radio_button_new_with_mnemonic(NULL, "None"); gtk_widget_show(radiobutton_numbering_none); gtk_box_pack_start(GTK_BOX(hbox1), radiobutton_numbering_none, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_numbering_none), radiobutton_numbering_automatic_group); radiobutton_numbering_automatic_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_numbering_none)); shortcuts.button(radiobutton_numbering_none); radiobutton_numbering_character = gtk_radio_button_new_with_mnemonic(NULL, "Character"); gtk_widget_show(radiobutton_numbering_character); gtk_box_pack_start(GTK_BOX(hbox1), radiobutton_numbering_character, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_numbering_character), radiobutton_numbering_automatic_group); radiobutton_numbering_automatic_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_numbering_character)); shortcuts.button(radiobutton_numbering_character); entry_numbering = gtk_entry_new(); gtk_widget_show(entry_numbering); gtk_box_pack_start(GTK_BOX(hbox1), entry_numbering, FALSE, FALSE, 0); gtk_entry_set_max_length(GTK_ENTRY(entry_numbering), 3); gtk_entry_set_width_chars(GTK_ENTRY(entry_numbering), 3); hseparator5 = gtk_hseparator_new(); gtk_widget_show(hseparator5); gtk_box_pack_start(GTK_BOX(dialog_vbox1), hseparator5, TRUE, TRUE, 0); hbox7 = gtk_hbox_new(FALSE, 10); gtk_widget_show(hbox7); gtk_box_pack_start(GTK_BOX(dialog_vbox1), hbox7, FALSE, FALSE, 0); label4 = gtk_label_new_with_mnemonic("Type"); gtk_widget_show(label4); gtk_box_pack_start(GTK_BOX(hbox7), label4, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label4), 0, 0.5); combobox1 = gtk_combo_box_new_text(); gtk_widget_show(combobox1); gtk_box_pack_start(GTK_BOX(hbox7), combobox1, TRUE, TRUE, 0); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(editnotedialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(editnotedialog, NULL, &shortcuts, NULL); cancelbutton1 = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton1); gtk_dialog_add_action_widget(GTK_DIALOG(editnotedialog), cancelbutton1, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton1), true); okbutton1 = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton1); gtk_dialog_add_action_widget(GTK_DIALOG(editnotedialog), okbutton1, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton1), true); shortcuts.stockbutton(cancelbutton1); shortcuts.stockbutton(okbutton1); shortcuts.process(); g_signal_connect((gpointer) radiobutton_numbering_automatic, "toggled", G_CALLBACK(on_radiobutton_numbering_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_numbering_none, "toggled", G_CALLBACK(on_radiobutton_numbering_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_numbering_character, "toggled", G_CALLBACK(on_radiobutton_numbering_toggled), gpointer(this)); g_signal_connect((gpointer) okbutton1, "clicked", G_CALLBACK(on_okbutton1_clicked), gpointer(this)); // Get a pointer to the focused note paragraph. note_paragraph = static_cast (myeditor->focused_paragraph); // If no EditorNote found, disable the OK button. gtk_widget_set_sensitive(okbutton1, note_paragraph != NULL); // Load the available note markers in the combobox. vector < ustring > names; ustring stylesheet = stylesheet_get_actual (); extern Styles *styles; Usfm *usfm = styles->usfm(stylesheet); for (unsigned int i = 0; i < usfm->styles.size(); i++) { bool record = false; if (usfm->styles[i].type == stFootEndNote) { if (usfm->styles[i].subtype == fentFootnote) record = true; if (usfm->styles[i].subtype == fentEndnote) record = true; } if (usfm->styles[i].type == stCrossreference) { if (usfm->styles[i].subtype == ctCrossreference) record = true; } if (record) { names.push_back(usfm->styles[i].marker + " " + usfm->styles[i].name); } } combobox_set_strings(combobox1, names); // Set GUI. if (note_paragraph) { for (unsigned int i = 0; i < names.size(); i++) { if (note_paragraph->opening_closing_marker == get_marker(names[i])) { combobox_set_string(combobox1, names[i]); } } NumberingType numberingtype; ustring character = "*"; biblenotes_get_note_numbering(note_paragraph->caller_usfm, numberingtype, character); numbering_set(numberingtype); gtk_entry_set_text(GTK_ENTRY(entry_numbering), character.c_str()); } } EditNoteDialog::~EditNoteDialog() { gtk_widget_destroy(editnotedialog); } int EditNoteDialog::run() { return gtk_dialog_run(GTK_DIALOG(editnotedialog)); } void EditNoteDialog::on_radiobutton_numbering_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((EditNoteDialog *) user_data)->on_radiobutton_numbering(togglebutton); } void EditNoteDialog::on_radiobutton_numbering(GtkToggleButton * togglebutton) { gtk_label_set_mnemonic_widget(GTK_LABEL(label1), GTK_WIDGET(togglebutton)); if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_numbering_character))) { gtk_widget_set_sensitive(entry_numbering, true); gtk_widget_grab_focus(entry_numbering); } else { gtk_widget_set_sensitive(entry_numbering, false); } } int EditNoteDialog::numbering_get() { if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_numbering_none))) return ntNone; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_numbering_character))) return ntCharacter; return ntAutomatic; } void EditNoteDialog::numbering_set(int numbering) { NumberingType numberingtype = (NumberingType) numbering; switch (numberingtype) { case ntAutomatic: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_numbering_automatic), true); on_radiobutton_numbering(GTK_TOGGLE_BUTTON(radiobutton_numbering_automatic)); break; case ntNone: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_numbering_none), true); on_radiobutton_numbering(GTK_TOGGLE_BUTTON(radiobutton_numbering_none)); break; case ntCharacter: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_numbering_character), true); on_radiobutton_numbering(GTK_TOGGLE_BUTTON(radiobutton_numbering_character)); break; } } void EditNoteDialog::on_okbutton1_clicked(GtkButton * button, gpointer user_data) { ((EditNoteDialog *) user_data)->on_okbutton(); } void EditNoteDialog::on_okbutton() { // Get the old note type. EditorNoteType oldnotetype = note_type_get(myeditor->project, note_paragraph->opening_closing_marker); // Get and store the new note marker and type. note_paragraph->opening_closing_marker = get_marker(combobox_get_active_string(combobox1)); EditorNoteType newnotetype = note_type_get(myeditor->project, note_paragraph->opening_closing_marker); // Change the caller, if needed. NumberingType numberingtype = (NumberingType) numbering_get(); gchar *character = (gchar *) gtk_entry_get_text(GTK_ENTRY(entry_numbering)); note_paragraph->caller_usfm = biblenotes_get_note_caller(numberingtype, character); /* Change the main body of the footnote if the note type changed sufficiently. There are some markers that only belong to foot/endnotes, and other ones that only belong to crossreferences. Switch between these markers, if that is needed. */ // Find out if there was a switch, and if so, what switch was made. bool switch_at_all = false; bool switch_to_xref = false; if ((oldnotetype == entCrossreference) && (newnotetype != oldnotetype)) { switch_at_all = true; } if ((newnotetype == entCrossreference) && (newnotetype != oldnotetype)) { switch_at_all = true; switch_to_xref = true; } if (switch_at_all) { // Go through the whole note, finding tags and replacing them with new ones. GtkTextIter startiter, enditer; gtk_text_buffer_get_start_iter(note_paragraph->textbuffer, &startiter); gtk_text_buffer_get_end_iter(note_paragraph->textbuffer, &enditer); GtkTextIter iter = startiter; do { ustring paragraph_style; ustring character_style; GSList *tags = NULL, *tagp = NULL; tags = gtk_text_iter_get_tags(&iter); for (tagp = tags; tagp != NULL; tagp = tagp->next) { GtkTextTag *tag = (GtkTextTag *) tagp->data; gchar *strval; g_object_get(G_OBJECT(tag), "name", &strval, NULL); if (strlen(strval)) { if (paragraph_style.empty()) paragraph_style = strval; else character_style = strval; } g_free(strval); } if (tags) { g_slist_free(tags); } GtkTextIter iter2 = iter; gtk_text_iter_forward_char(&iter2); if (!paragraph_style.empty()) { gtk_text_buffer_remove_tag_by_name(note_paragraph->textbuffer, paragraph_style.c_str(), &iter, &iter2); } if (!character_style.empty()) { gtk_text_buffer_remove_tag_by_name(note_paragraph->textbuffer, character_style.c_str(), &iter, &iter2); } if (!paragraph_style.empty()) { textbuffer_apply_named_tag(note_paragraph->textbuffer, switch_marker(paragraph_style, switch_to_xref), &iter, &iter2); } if (!character_style.empty()) { textbuffer_apply_named_tag(note_paragraph->textbuffer, switch_marker(character_style, switch_to_xref), &iter, &iter2); } gtk_text_iter_forward_char(&iter); } while (gtk_text_iter_in_range(&iter, &startiter, &enditer)); } } ustring EditNoteDialog::switch_marker(const ustring & marker, bool switch_to_xref) /* In case a footnote or endnote is changed to a crossreference, or vice versa, then the styles of the note's body need to be updated. This function takes a "marker", and returns the changed marker that corresponds to it. If switch_to_xref" is true, then the switch is made from foot/endnote to a crossreference. If this flag is false, then the change is from a crossreference to a footnote or endnote. */ { /* Markers for foot- and endnotes: fr Reference fk Keyword fq Quotation fqa Alternative translation. fl Labelled Text fp Additional Paragraph fv Verse in Text ft Text fdc Apocrypha Markers for crossreferences: xo Origin Reference xk Keyword xq Quotation xt Targets xdc Apocrypha */ ustring newmarker(marker); if (switch_to_xref) { if (marker == "fr") newmarker = "xo"; if (marker == "fk") newmarker = "xk"; if (marker == "fq") newmarker = "xq"; if (marker == "fqa") newmarker = "xt"; if (marker == "fl") newmarker = "xt"; if (marker == "fp") newmarker = "xt"; if (marker == "fv") newmarker = "xt"; if (marker == "ft") newmarker = "xt"; if (marker == "fdc") newmarker = "xdc"; } else { if (marker == "xo") newmarker = "fr"; if (marker == "xk") newmarker = "fk"; if (marker == "xq") newmarker = "fq"; if (marker == "xt") newmarker = "ft"; if (marker == "xdc") newmarker = "fdc"; } return newmarker; } ustring EditNoteDialog::get_marker(const ustring & text) // Given a string starting with a marker, then a space, then something else, // this returns the marker. // E.g. "f * Footnote" would yield "f". { ustring marker(text); size_t pos = text.find(" "); if (pos != string::npos) { marker.erase(pos, marker.length() - pos); } return marker; } bibledit-gtk-4.9/src/dialogeditnote.h000664 000766 000024 00000003725 12221507140 020011 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOG_EDIT_NOTE_H #define INCLUDED_DIALOG_EDIT_NOTE_H #include #include "types.h" #include "editor.h" class EditNoteDialog { public: EditNoteDialog (Editor2 * editor); ~EditNoteDialog (); int run (); protected: GtkWidget *editnotedialog; GtkWidget *dialog_vbox1; GtkWidget *hbox1; GtkWidget *label1; GtkWidget *radiobutton_numbering_automatic; GtkWidget *radiobutton_numbering_none; GtkWidget *radiobutton_numbering_character; GtkWidget *entry_numbering; GtkWidget *hseparator5; GtkWidget *hbox7; GtkWidget *label4; GtkWidget *combobox1; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton1; GtkWidget *okbutton1; private: Editor2 * myeditor; EditorActionCreateNoteParagraph * note_paragraph; static void on_radiobutton_numbering_toggled (GtkToggleButton *togglebutton, gpointer user_data); void on_radiobutton_numbering (GtkToggleButton *togglebutton); int numbering_get (); void numbering_set (int numbering); static void on_okbutton1_clicked (GtkButton *button, gpointer user_data); void on_okbutton (); ustring get_marker (const ustring& text); ustring switch_marker (const ustring& marker, bool switch_to_xref); }; #endif bibledit-gtk-4.9/src/dialogeditstatus.cpp000664 000766 000024 00000052722 12221507145 020730 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "dialogeditstatus.h" #include "help.h" #include "settings.h" #include "books.h" #include "tiny_utilities.h" #include "progresswindow.h" #include "listview.h" #include "screen.h" EditStatusDialog::EditStatusDialog(const ustring & project_in, unsigned int book, unsigned int chapter) { // Initialize variables. project = project_in; setting_status = false; // Settings. extern Settings *settings; // Project status. vector < ustring > alltasks = settings->genconfig.project_tasks_names_get(); alltasks_size = alltasks.size(); projectstatus = new ProjectStatus(project, alltasks, true); // Build dialog. editstatusdialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(editstatusdialog), "Edit Status"); gtk_window_set_position(GTK_WINDOW(editstatusdialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(editstatusdialog), TRUE); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG (editstatusdialog)); gtk_widget_show(dialog_vbox1); hbox = gtk_hbox_new(FALSE, 4); gtk_widget_show(hbox); gtk_box_pack_start(GTK_BOX(dialog_vbox1), hbox, TRUE, TRUE, 0); scrolledwindow_books = gtk_scrolled_window_new(NULL, NULL); gtk_widget_show(scrolledwindow_books); gtk_box_pack_start(GTK_BOX(hbox), scrolledwindow_books, TRUE, TRUE, 0); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow_books), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scrolledwindow_books), GTK_SHADOW_IN); treeview_books = gtk_tree_view_new(); gtk_widget_show(treeview_books); gtk_container_add(GTK_CONTAINER(scrolledwindow_books), treeview_books); liststore_books = gtk_list_store_new(1, G_TYPE_STRING); gtk_tree_view_set_model(GTK_TREE_VIEW(treeview_books), GTK_TREE_MODEL(liststore_books)); g_object_unref(liststore_books); GtkCellRenderer *renderer_books = gtk_cell_renderer_text_new(); gtk_tree_view_insert_column_with_attributes(GTK_TREE_VIEW(treeview_books), -1, "Books", renderer_books, "text", 0, NULL); gtk_tree_selection_set_mode(gtk_tree_view_get_selection(GTK_TREE_VIEW(treeview_books)), GTK_SELECTION_MULTIPLE); scrolledwindow_chapters = gtk_scrolled_window_new(NULL, NULL); gtk_widget_show(scrolledwindow_chapters); gtk_box_pack_start(GTK_BOX(hbox), scrolledwindow_chapters, TRUE, TRUE, 0); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow_chapters), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scrolledwindow_chapters), GTK_SHADOW_IN); treeview_chapters = gtk_tree_view_new(); gtk_widget_show(treeview_chapters); gtk_container_add(GTK_CONTAINER(scrolledwindow_chapters), treeview_chapters); liststore_chapters = gtk_list_store_new(1, G_TYPE_STRING); gtk_tree_view_set_model(GTK_TREE_VIEW(treeview_chapters), GTK_TREE_MODEL(liststore_chapters)); g_object_unref(liststore_chapters); GtkCellRenderer *renderer_chapters = gtk_cell_renderer_text_new(); gtk_tree_view_insert_column_with_attributes(GTK_TREE_VIEW(treeview_chapters), -1, "Chapters", renderer_chapters, "text", 0, NULL); gtk_tree_selection_set_mode(gtk_tree_view_get_selection(GTK_TREE_VIEW(treeview_chapters)), GTK_SELECTION_MULTIPLE); scrolledwindow_verses = gtk_scrolled_window_new(NULL, NULL); gtk_widget_show(scrolledwindow_verses); gtk_box_pack_start(GTK_BOX(hbox), scrolledwindow_verses, TRUE, TRUE, 0); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow_verses), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scrolledwindow_verses), GTK_SHADOW_IN); treeview_verses = gtk_tree_view_new(); gtk_widget_show(treeview_verses); gtk_container_add(GTK_CONTAINER(scrolledwindow_verses), treeview_verses); liststore_verses = gtk_list_store_new(1, G_TYPE_STRING); gtk_tree_view_set_model(GTK_TREE_VIEW(treeview_verses), GTK_TREE_MODEL(liststore_verses)); g_object_unref(liststore_verses); GtkCellRenderer *renderer_verses = gtk_cell_renderer_text_new(); gtk_tree_view_insert_column_with_attributes(GTK_TREE_VIEW(treeview_verses), -1, "Verses", renderer_verses, "text", 0, NULL); gtk_tree_selection_set_mode(gtk_tree_view_get_selection(GTK_TREE_VIEW(treeview_verses)), GTK_SELECTION_MULTIPLE); scrolledwindow_status = gtk_scrolled_window_new (NULL, NULL); gtk_widget_show (scrolledwindow_status); gtk_box_pack_start (GTK_BOX (hbox), scrolledwindow_status, TRUE, TRUE, 0); gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow_status), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (scrolledwindow_status), GTK_SHADOW_IN); viewport_status = gtk_viewport_new (NULL, NULL); gtk_widget_show (viewport_status); gtk_container_add (GTK_CONTAINER (scrolledwindow_status), viewport_status); vbox_status = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox_status); gtk_container_add (GTK_CONTAINER (viewport_status), vbox_status); // Build buttons for each state. for (unsigned int i = 0; i < alltasks.size(); i++) { GtkWidget *checkbutton_status; checkbutton_status = gtk_check_button_new_with_mnemonic(alltasks[i].c_str()); gtk_widget_show(checkbutton_status); gtk_box_pack_start(GTK_BOX(vbox_status), checkbutton_status, FALSE, FALSE, 0); g_signal_connect((gpointer) checkbutton_status, "toggled", G_CALLBACK(on_checkbutton_status_toggled), gpointer(this)); statusbuttons.push_back(checkbutton_status); } dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(editstatusdialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(editstatusdialog, NULL, NULL, "edit/status"); cancelbutton = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton); gtk_dialog_add_action_widget(GTK_DIALOG(editstatusdialog), cancelbutton, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton), true); okbutton = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton); gtk_dialog_add_action_widget(GTK_DIALOG(editstatusdialog), okbutton, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton), true); g_signal_connect_after((gpointer) treeview_books, "button_release_event", G_CALLBACK(on_treeview_books_button_event), gpointer(this)); g_signal_connect_after((gpointer) treeview_books, "key_release_event", G_CALLBACK(on_treeview_books_key_event), gpointer(this)); g_signal_connect_after((gpointer) treeview_chapters, "button_release_event", G_CALLBACK(on_treeview_chapters_button_event), gpointer(this)); g_signal_connect_after((gpointer) treeview_chapters, "key_release_event", G_CALLBACK(on_treeview_chapters_key_event), gpointer(this)); g_signal_connect_after((gpointer) treeview_verses, "button_release_event", G_CALLBACK(on_treeview_verses_button_event), gpointer(this)); g_signal_connect_after((gpointer) treeview_verses, "key_release_event", G_CALLBACK(on_treeview_verses_key_event), gpointer(this)); g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(on_okbutton_clicked), gpointer(this)); gtk_widget_grab_focus(okbutton); gtk_widget_grab_default(okbutton); // Load the books and focus the one that is in the editor. vector < ustring > books; for (unsigned int i = 0; i < projectstatus->books.size(); i++) { ProjectStatusBook *project_status_book = projectstatus->books.at(i); books.push_back(books_id_to_english(project_status_book->book)); } listview_set_strings(treeview_books, liststore_books, books); listview_focus_string(treeview_books, books_id_to_english(book), false); on_treeview_books_cursor(); // Focus the chapter that is in the editor. listview_focus_string(treeview_chapters, convert_to_string(chapter), false); on_treeview_chapters_cursor(); new DialogAutoScaler (editstatusdialog, G_MAXINT); } EditStatusDialog::~EditStatusDialog() { delete projectstatus; gtk_widget_destroy(editstatusdialog); } int EditStatusDialog::run() { return gtk_dialog_run(GTK_DIALOG(editstatusdialog)); } gboolean EditStatusDialog::on_treeview_books_button_event(GtkWidget * widget, GdkEventButton * event, gpointer user_data) { ((EditStatusDialog *) user_data)->on_treeview_books_cursor(); return FALSE; } gboolean EditStatusDialog::on_treeview_books_key_event(GtkWidget * widget, GdkEventKey * event, gpointer user_data) { ((EditStatusDialog *) user_data)->on_treeview_books_cursor(); return FALSE; } void EditStatusDialog::on_treeview_books_cursor() { currentbooks = listview_get_active_offsets(treeview_books); load_chapters(); } void EditStatusDialog::load_chapters() { currentchapters.clear(); vector < ustring > chapters; if (currentbooks.size() == 1) { ProjectStatusBook *project_status_book = projectstatus->books.at(currentbooks[0]); for (unsigned int i = 0; i < project_status_book->chapters.size(); i++) { ProjectStatusChapter *project_status_chapter = project_status_book->chapters.at(i); chapters.push_back(convert_to_string(project_status_chapter->chapter)); } } listview_set_strings(treeview_chapters, liststore_chapters, chapters); on_treeview_chapters_cursor(); show_status(); } gboolean EditStatusDialog::on_treeview_chapters_button_event(GtkWidget * widget, GdkEventButton * event, gpointer user_data) { ((EditStatusDialog *) user_data)->on_treeview_chapters_cursor(); return FALSE; } gboolean EditStatusDialog::on_treeview_chapters_key_event(GtkWidget * widget, GdkEventKey * event, gpointer user_data) { ((EditStatusDialog *) user_data)->on_treeview_chapters_cursor(); return FALSE; } void EditStatusDialog::on_treeview_chapters_cursor() { currentchapters = listview_get_active_offsets(treeview_chapters); load_verses(); } void EditStatusDialog::load_verses() { currentverses.clear(); vector < ustring > verses; if ((currentbooks.size() == 1) && (currentchapters.size() == 1)) { ProjectStatusChapter *project_status_chapter = projectstatus->books.at(currentbooks[0])->chapters.at(currentchapters[0]); for (unsigned int i = 0; i < project_status_chapter->status.size(); i++) { verses.push_back(convert_to_string(i)); } } listview_set_strings(treeview_verses, liststore_verses, verses); show_status(); } gboolean EditStatusDialog::on_treeview_verses_button_event(GtkWidget * widget, GdkEventButton * event, gpointer user_data) { ((EditStatusDialog *) user_data)->on_treeview_verses_cursor(); return FALSE; } gboolean EditStatusDialog::on_treeview_verses_key_event(GtkWidget * widget, GdkEventKey * event, gpointer user_data) { ((EditStatusDialog *) user_data)->on_treeview_verses_cursor(); return FALSE; } void EditStatusDialog::on_treeview_verses_cursor() { currentverses = listview_get_active_offsets(treeview_verses); show_status(); } EditStatusType EditStatusDialog::editstatustype() // Gets the type of status to be edited. { // First we deal with the books. // No books. if (currentbooks.empty()) return estNone; // Multiple books. if (currentbooks.size() > 1) return estBooks; // One book and no chapters. if ((currentbooks.size() == 1) && (currentchapters.empty())) return estBook; // Below this only one book is selected, and we deal with the chapters. // No chapters. if (currentchapters.empty()) return estNone; // Multiple chapters. if (currentchapters.size() > 1) return estChapters; // One chapter and no verses. if ((currentchapters.size() == 1) && (currentverses.empty())) return estChapter; // Below this one book and one chapter have been selected, and we deal with the verses. // No verses. if (currentverses.empty()) return estNone; // Multiple verses. if (currentverses.size() > 1) return estVerses; // One verse. if (currentverses.size() == 1) return estVerse; // At the end of all: no type. return estNone; } void EditStatusDialog::show_status() // Sets the status. { // Get status type. EditStatusType statustype = editstatustype(); // Set sensitivity of the status buttons. for (unsigned int i = 0; i < statusbuttons.size(); i++) { gtk_widget_set_sensitive(statusbuttons[i], (statustype != estNone)); } // Take action based on what type of status to set. switch (statustype) { case estNone: { for (unsigned int i = 0; i < statusbuttons.size(); i++) { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(statusbuttons[i]), false); gtk_toggle_button_set_inconsistent(GTK_TOGGLE_BUTTON(statusbuttons[i]), false); } break; } case estBook: { ProjectStatusBook *project_status_book = projectstatus->books.at(currentbooks[0]); ProjectStatusRecord statusrecord = project_status_book->get(); set_status(&statusrecord); break; } case estBooks: { ProjectStatusRecord combinedrecord(alltasks_size); for (unsigned int i = 0; i < currentbooks.size(); i++) { ProjectStatusBook *project_status_book = projectstatus->books.at(currentbooks[i]); ProjectStatusRecord statusrecord = project_status_book->get(); reporting_merge_child_status_into_parent(alltasks_size, i, combinedrecord, statusrecord); } set_status(&combinedrecord); break; } case estChapter: { ProjectStatusBook *project_status_book = projectstatus->books.at(currentbooks[0]); ProjectStatusChapter *project_status_chapter = project_status_book->chapters.at(currentchapters[0]); ProjectStatusRecord statusrecord = project_status_chapter->get(); set_status(&statusrecord); break; } case estChapters: { ProjectStatusRecord combinedrecord(alltasks_size); for (unsigned int i = 0; i < currentchapters.size(); i++) { ProjectStatusBook *project_status_book = projectstatus->books.at(currentbooks[0]); ProjectStatusChapter *project_status_chapter = project_status_book->chapters.at(currentchapters[i]); ProjectStatusRecord statusrecord = project_status_chapter->get(); reporting_merge_child_status_into_parent(alltasks_size, i, combinedrecord, statusrecord); } set_status(&combinedrecord); break; } case estVerse: { ProjectStatusBook *project_status_book = projectstatus->books.at(currentbooks[0]); ProjectStatusChapter *project_status_chapter = project_status_book->chapters.at(currentchapters[0]); int verse = currentverses[0]; ProjectStatusRecord statusrecord = project_status_chapter->status[verse]; set_status(&statusrecord); break; } case estVerses: { ProjectStatusRecord combinedrecord(alltasks_size); for (unsigned int i = 0; i < currentverses.size(); i++) { ProjectStatusBook *project_status_book = projectstatus->books.at(currentbooks[0]); ProjectStatusChapter *project_status_chapter = project_status_book->chapters.at(currentchapters[0]); int verse = currentverses[i]; ProjectStatusRecord statusrecord = project_status_chapter->status[verse]; reporting_merge_child_status_into_parent(alltasks_size, i, combinedrecord, statusrecord); } set_status(&combinedrecord); break; } } } void EditStatusDialog::set_status(ProjectStatusRecord * statusrecord) { setting_status = true; for (unsigned int i = 0; i < statusrecord->tasks_done.size(); i++) { gtk_toggle_button_set_inconsistent(GTK_TOGGLE_BUTTON(statusbuttons[i]), false); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(statusbuttons[i]), false); if (statusrecord->tasks_done[i] > 0) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(statusbuttons[i]), true); if (statusrecord->tasks_done[i] < 0) gtk_toggle_button_set_inconsistent(GTK_TOGGLE_BUTTON(statusbuttons[i]), true); } setting_status = false; } void EditStatusDialog::on_checkbutton_status_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((EditStatusDialog *) user_data)->on_checkbutton_status(togglebutton); } void EditStatusDialog::on_checkbutton_status(GtkToggleButton * togglebutton) { // Bail out if status is being set by the program. if (setting_status) return; // Deal with inconsistency. if (gtk_toggle_button_get_inconsistent(togglebutton)) { gtk_toggle_button_set_inconsistent(togglebutton, false); } // Get button's offset. unsigned int button_offset = 0; for (unsigned int i = 0; i < statusbuttons.size(); i++) { if (GTK_TOGGLE_BUTTON(statusbuttons[i]) == togglebutton) { button_offset = i; } } // Get button's value. int button_value = 0; if (gtk_toggle_button_get_inconsistent(togglebutton)) { button_value = -1; } else { if (gtk_toggle_button_get_active(togglebutton)) { button_value = 1; } } // Get status type. EditStatusType statustype = editstatustype(); // Take action based on what type of status to save. switch (statustype) { case estNone: { break; } case estBook: { ProjectStatusBook *project_status_book = projectstatus->books.at(currentbooks[0]); ProjectStatusRecord statusrecord = project_status_book->get(); statusrecord.tasks_done[button_offset] = button_value; project_status_book->set(statusrecord); break; } case estBooks: { ProjectStatusRecord combinedrecord(alltasks_size); for (unsigned int i = 0; i < currentbooks.size(); i++) { ProjectStatusBook *project_status_book = projectstatus->books.at(currentbooks[i]); ProjectStatusRecord statusrecord = project_status_book->get(); reporting_merge_child_status_into_parent(alltasks_size, i, combinedrecord, statusrecord); } combinedrecord.tasks_done[button_offset] = button_value; for (unsigned int i = 0; i < currentbooks.size(); i++) { ProjectStatusBook *project_status_book = projectstatus->books.at(currentbooks[i]); project_status_book->set(combinedrecord); } break; } case estChapter: { ProjectStatusBook *project_status_book = projectstatus->books.at(currentbooks[0]); ProjectStatusChapter *project_status_chapter = project_status_book->chapters.at(currentchapters[0]); ProjectStatusRecord statusrecord = project_status_chapter->get(); statusrecord.tasks_done[button_offset] = button_value; project_status_chapter->set(statusrecord); break; } case estChapters: { ProjectStatusRecord combinedrecord(alltasks_size); for (unsigned int i = 0; i < currentchapters.size(); i++) { ProjectStatusBook *project_status_book = projectstatus->books.at(currentbooks[0]); ProjectStatusChapter *project_status_chapter = project_status_book->chapters.at(currentchapters[i]); ProjectStatusRecord statusrecord = project_status_chapter->get(); reporting_merge_child_status_into_parent(alltasks_size, i, combinedrecord, statusrecord); } combinedrecord.tasks_done[button_offset] = button_value; for (unsigned int i = 0; i < currentchapters.size(); i++) { ProjectStatusBook *project_status_book = projectstatus->books.at(currentbooks[0]); ProjectStatusChapter *project_status_chapter = project_status_book->chapters.at(currentchapters[i]); project_status_chapter->set(combinedrecord); } break; } case estVerse: { ProjectStatusBook *project_status_book = projectstatus->books.at(currentbooks[0]); ProjectStatusChapter *project_status_chapter = project_status_book->chapters.at(currentchapters[0]); int verse = currentverses[0]; ProjectStatusRecord statusrecord = project_status_chapter->status[verse]; statusrecord.tasks_done[button_offset] = button_value; project_status_chapter->set_verse(verse, statusrecord); break; } case estVerses: { ProjectStatusRecord combinedrecord(alltasks_size); ProjectStatusBook *project_status_book = projectstatus->books.at(currentbooks[0]); ProjectStatusChapter *project_status_chapter = project_status_book->chapters.at(currentchapters[0]); for (unsigned int i = 0; i < currentverses.size(); i++) { int verse = currentverses[i]; ProjectStatusRecord statusrecord = project_status_chapter->status[verse]; reporting_merge_child_status_into_parent(alltasks_size, i, combinedrecord, statusrecord); } combinedrecord.tasks_done[button_offset] = button_value; for (unsigned int i = 0; i < currentverses.size(); i++) { int verse = currentverses[i]; ProjectStatusRecord statusrecord = project_status_chapter->status[verse]; statusrecord.tasks_done[button_offset] = button_value; project_status_chapter->set_verse(verse, statusrecord); } break; } } } void EditStatusDialog::on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((EditStatusDialog *) user_data)->on_okbutton(); } void EditStatusDialog::on_okbutton() // Called on OK. { // Save status. projectstatus->save(); } bibledit-gtk-4.9/src/dialogeditstatus.h000664 000766 000024 00000006237 12221507143 020373 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGEDITSTATUS_H #define INCLUDED_DIALOGEDITSTATUS_H #include #include "ustring.h" #include "libraries.h" #include "reporting.h" enum EditStatusType {estNone, estBook, estBooks, estChapter, estChapters, estVerse, estVerses}; class EditStatusDialog { public: EditStatusDialog(const ustring& project_in, unsigned int book, unsigned int chapter); ~EditStatusDialog(); int run(); protected: GtkWidget *editstatusdialog; GtkWidget *dialog_vbox1; GtkWidget *hbox; GtkWidget *scrolledwindow_books; GtkWidget *treeview_books; GtkWidget *scrolledwindow_chapters; GtkWidget *treeview_chapters; GtkWidget *scrolledwindow_verses; GtkWidget *treeview_verses; GtkWidget *scrolledwindow_status; GtkWidget *viewport_status; GtkWidget *vbox_status; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton; GtkWidget *okbutton; private: ustring project; ProjectStatus * projectstatus; unsigned int alltasks_size; GtkListStore *liststore_books; static gboolean on_treeview_books_button_event(GtkWidget *widget, GdkEventButton *event, gpointer user_data); static gboolean on_treeview_books_key_event(GtkWidget *widget, GdkEventKey *event, gpointer user_data); void on_treeview_books_cursor(); vector currentbooks; GtkListStore *liststore_chapters; void load_chapters(); static gboolean on_treeview_chapters_button_event(GtkWidget *widget, GdkEventButton *event, gpointer user_data); static gboolean on_treeview_chapters_key_event(GtkWidget *widget, GdkEventKey *event, gpointer user_data); void on_treeview_chapters_cursor(); vector currentchapters; GtkListStore *liststore_verses; void load_verses(); static gboolean on_treeview_verses_button_event(GtkWidget *widget, GdkEventButton *event, gpointer user_data); static gboolean on_treeview_verses_key_event(GtkWidget *widget, GdkEventKey *event, gpointer user_data); void on_treeview_verses_cursor(); vector currentverses; EditStatusType editstatustype(); vector statusbuttons; void show_status(); bool setting_status; void set_status (ProjectStatusRecord * statusrecord); static void on_checkbutton_status_toggled(GtkToggleButton *togglebutton, gpointer user_data); void on_checkbutton_status(GtkToggleButton *togglebutton); static void on_okbutton_clicked(GtkButton *button, gpointer user_data); void on_okbutton(); }; #endif bibledit-gtk-4.9/src/dialogentry.cpp000664 000766 000024 00000007636 12221507141 017700 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogentry.h" #include "help.h" EntryDialog::EntryDialog(const ustring & title, const ustring & info, const ustring & value) { my_always_ok = false; entrydialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(entrydialog), title.c_str()); gtk_window_set_position(GTK_WINDOW(entrydialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(entrydialog), TRUE); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(entrydialog)); gtk_widget_show(dialog_vbox1); vbox1 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), vbox1, TRUE, TRUE, 0); label = gtk_label_new(info.c_str()); gtk_widget_show(label); gtk_box_pack_start(GTK_BOX(vbox1), label, FALSE, FALSE, 4); gtk_misc_set_alignment(GTK_MISC(label), 0, 0.5); entry = gtk_entry_new(); gtk_widget_show(entry); gtk_box_pack_start(GTK_BOX(vbox1), entry, FALSE, FALSE, 4); gtk_entry_set_activates_default(GTK_ENTRY(entry), TRUE); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(entrydialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(entrydialog, NULL, NULL, NULL); cancelbutton = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton); gtk_dialog_add_action_widget(GTK_DIALOG(entrydialog), cancelbutton, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton), true); okbutton = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton); gtk_dialog_add_action_widget(GTK_DIALOG(entrydialog), okbutton, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton), true); gtk_widget_set_sensitive(okbutton, false); g_signal_connect((gpointer) entry, "changed", G_CALLBACK(on_entry_changed), gpointer(this)); g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(on_okbutton_clicked), gpointer(this)); // Set text and widget size. gtk_entry_set_text(GTK_ENTRY(entry), value.c_str()); gtk_entry_set_width_chars(GTK_ENTRY(entry), value.length()); on_entry(); gtk_widget_grab_focus(entry); gtk_widget_grab_default(okbutton); } EntryDialog::~EntryDialog() { gtk_widget_destroy(entrydialog); } int EntryDialog::run() { return gtk_dialog_run(GTK_DIALOG(entrydialog)); } void EntryDialog::on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((EntryDialog *) user_data)->on_okbutton(); } void EntryDialog::on_okbutton() { entered_value = gtk_entry_get_text(GTK_ENTRY(entry)); } void EntryDialog::on_entry_changed(GtkEditable * editable, gpointer user_data) { ((EntryDialog *) user_data)->on_entry(); } void EntryDialog::on_entry() // Activates the ok button only when we've a value in the entry or // when it is "always_ok". { string value = gtk_entry_get_text(GTK_ENTRY(entry)); gtk_widget_set_sensitive(okbutton, !value.empty() || my_always_ok); } void EntryDialog::text_invisible() // This function makes the text in the entry invisible. { gtk_entry_set_visibility(GTK_ENTRY(entry), false); } void EntryDialog::always_ok() { my_always_ok = true; on_entry(); } bibledit-gtk-4.9/src/dialogentry.h000664 000766 000024 00000003013 12221507150 017326 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGENTRY_H #define INCLUDED_DIALOGENTRY_H #include #include "ustring.h" class EntryDialog { public: EntryDialog (const ustring& title, const ustring& info, const ustring& value); ~EntryDialog (); int run (); ustring entered_value; void always_ok(); void text_invisible (); protected: GtkWidget *entrydialog; GtkWidget *dialog_vbox1; GtkWidget *vbox1; GtkWidget *label; GtkWidget *entry; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton; GtkWidget *okbutton; private: static void on_okbutton_clicked (GtkButton *button, gpointer user_data); void on_okbutton (); static void on_entry_changed (GtkEditable *editable, gpointer user_data); void on_entry (); bool my_always_ok; }; #endif bibledit-gtk-4.9/src/dialogentry3.cpp000664 000766 000024 00000012372 12221507127 017760 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogentry3.h" #include "help.h" Entry3Dialog::Entry3Dialog(const string & title, bool allow_empty_values, const string & info1, const ustring & value1, const string & info2, const ustring & value2, const string & info3, const ustring & value3) { // Save variables. my_allow_empty_values = allow_empty_values; entry3dialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(entry3dialog), title.c_str()); gtk_window_set_position(GTK_WINDOW(entry3dialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(entry3dialog), TRUE); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(entry3dialog)); gtk_widget_show(dialog_vbox1); vbox1 = gtk_vbox_new(FALSE, 2); gtk_widget_show(vbox1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), vbox1, TRUE, TRUE, 0); gtk_container_set_border_width(GTK_CONTAINER(vbox1), 2); label1 = gtk_label_new_with_mnemonic(info1.c_str()); gtk_widget_show(label1); gtk_box_pack_start(GTK_BOX(vbox1), label1, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label1), 0, 0.5); entry1 = gtk_entry_new(); gtk_widget_show(entry1); gtk_box_pack_start(GTK_BOX(vbox1), entry1, FALSE, FALSE, 0); gtk_entry_set_activates_default(GTK_ENTRY(entry1), TRUE); label2 = gtk_label_new_with_mnemonic(info2.c_str()); gtk_widget_show(label2); gtk_box_pack_start(GTK_BOX(vbox1), label2, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label2), 0, 0.5); entry2 = gtk_entry_new(); gtk_widget_show(entry2); gtk_box_pack_start(GTK_BOX(vbox1), entry2, FALSE, FALSE, 0); gtk_entry_set_activates_default(GTK_ENTRY(entry2), TRUE); label3 = gtk_label_new_with_mnemonic(info3.c_str()); gtk_widget_show(label3); gtk_box_pack_start(GTK_BOX(vbox1), label3, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label3), 0, 0.5); entry3 = gtk_entry_new(); gtk_widget_show(entry3); gtk_box_pack_start(GTK_BOX(vbox1), entry3, FALSE, FALSE, 0); gtk_entry_set_activates_default(GTK_ENTRY(entry3), TRUE); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(entry3dialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(entry3dialog, NULL, NULL, NULL); cancelbutton = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton); gtk_dialog_add_action_widget(GTK_DIALOG(entry3dialog), cancelbutton, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton), true); okbutton = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton); gtk_dialog_add_action_widget(GTK_DIALOG(entry3dialog), okbutton, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton), true); g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(on_okbutton_clicked), gpointer(this)); g_signal_connect((gpointer) entry1, "changed", G_CALLBACK(on_entry_changed), gpointer(this)); g_signal_connect((gpointer) entry2, "changed", G_CALLBACK(on_entry_changed), gpointer(this)); g_signal_connect((gpointer) entry3, "changed", G_CALLBACK(on_entry_changed), gpointer(this)); gtk_label_set_mnemonic_widget(GTK_LABEL(label1), entry1); gtk_label_set_mnemonic_widget(GTK_LABEL(label2), entry2); gtk_label_set_mnemonic_widget(GTK_LABEL(label3), entry3); if (!allow_empty_values) gtk_widget_set_sensitive(okbutton, false); gtk_entry_set_text(GTK_ENTRY(entry1), value1.c_str()); gtk_entry_set_text(GTK_ENTRY(entry2), value2.c_str()); gtk_entry_set_text(GTK_ENTRY(entry3), value3.c_str()); gtk_widget_grab_focus(entry1); gtk_widget_grab_default(okbutton); } Entry3Dialog::~Entry3Dialog() { gtk_widget_destroy(entry3dialog); } int Entry3Dialog::run() { return gtk_dialog_run(GTK_DIALOG(entry3dialog)); } void Entry3Dialog::on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((Entry3Dialog *) user_data)->on_okbutton(); } void Entry3Dialog::on_okbutton() { } void Entry3Dialog::on_entry_changed(GtkEditable * editable, gpointer user_data) { ((Entry3Dialog *) user_data)->on_entry(); } void Entry3Dialog::on_entry() // Activates the ok button only when we've valuesin the entries. { entered_value1 = gtk_entry_get_text(GTK_ENTRY(entry1)); entered_value2 = gtk_entry_get_text(GTK_ENTRY(entry2)); entered_value3 = gtk_entry_get_text(GTK_ENTRY(entry3)); bool sensitive; sensitive = !(entered_value1.empty() || entered_value2.empty() || entered_value3.empty()); if (my_allow_empty_values) sensitive = true; gtk_widget_set_sensitive(okbutton, sensitive); } bibledit-gtk-4.9/src/dialogentry3.h000664 000766 000024 00000003470 12221507147 017426 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGENTRY3_H #define INCLUDED_DIALOGENTRY3_H #include #include "ustring.h" class Entry3Dialog { public: Entry3Dialog (const string& title, bool allow_empty_values, const string& info1, const ustring& value1, const string& info2, const ustring& value2, const string& info3, const ustring& value3); virtual ~Entry3Dialog (); virtual int run (); ustring entered_value1; ustring entered_value2; ustring entered_value3; protected: GtkWidget *entry3dialog; GtkWidget *dialog_vbox1; GtkWidget *vbox1; GtkWidget *label1; GtkWidget *entry1; GtkWidget *label2; GtkWidget *entry2; GtkWidget *label3; GtkWidget *entry3; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton; GtkWidget *okbutton; private: static void on_okbutton_clicked (GtkButton *button, gpointer user_data); virtual void on_okbutton (); static void on_entry_changed (GtkEditable *editable, gpointer user_data); virtual void on_entry (); bool my_allow_empty_values; }; #endif bibledit-gtk-4.9/src/dialogfilters.cpp000644 000766 000024 00000034517 12453001367 020211 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 #include "dialogfilters.h" #include "help.h" #include "shortcuts.h" #include "scripts.h" #include "combobox.h" #include "dialogentry.h" #include "gtkwrappers.h" #include "gwrappers.h" #include "dialogradiobutton.h" #include "directories.h" FiltersDialog::FiltersDialog(int dummy) { rulesbuffer_changed_event_id = 0; Shortcuts shortcuts(0); filterdialog = gtk_dialog_new(); gtk_widget_set_size_request(filterdialog, 640, 640); gtk_window_set_title(GTK_WINDOW(filterdialog), "Filters"); gtk_window_set_position(GTK_WINDOW(filterdialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(filterdialog), TRUE); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG (filterdialog)); gtk_widget_show(dialog_vbox1); label_rules = gtk_label_new("Rules"); gtk_widget_show(label_rules); gtk_box_pack_start(GTK_BOX(dialog_vbox1), label_rules, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label_rules), 0, 0.5); shortcuts.label(label_rules); scrolledwindow_rules = gtk_scrolled_window_new(NULL, NULL); gtk_widget_show(scrolledwindow_rules); gtk_box_pack_start(GTK_BOX(dialog_vbox1), scrolledwindow_rules, TRUE, TRUE, 0); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow_rules), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scrolledwindow_rules), GTK_SHADOW_IN); textview_rules = gtk_text_view_new(); gtk_widget_show(textview_rules); gtk_container_add(GTK_CONTAINER(scrolledwindow_rules), textview_rules); gtk_label_set_mnemonic_widget(GTK_LABEL(label_rules), textview_rules); rulesbuffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(textview_rules)); label2 = gtk_label_new("Input <- Try the rules -> Output"); gtk_widget_show(label2); gtk_box_pack_start(GTK_BOX(dialog_vbox1), label2, FALSE, FALSE, 0); shortcuts.label(label2); hbox2 = gtk_hbox_new(FALSE, 0); gtk_widget_show(hbox2); gtk_box_pack_start(GTK_BOX(dialog_vbox1), hbox2, FALSE, TRUE, 0); scrolledwindow_input = gtk_scrolled_window_new(NULL, NULL); gtk_widget_show(scrolledwindow_input); gtk_box_pack_start(GTK_BOX(hbox2), scrolledwindow_input, TRUE, TRUE, 0); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow_input), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scrolledwindow_input), GTK_SHADOW_IN); textview_input = gtk_text_view_new(); gtk_widget_show(textview_input); gtk_container_add(GTK_CONTAINER(scrolledwindow_input), textview_input); gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(textview_input), GTK_WRAP_WORD); gtk_label_set_mnemonic_widget(GTK_LABEL(label2), textview_input); gtk_text_buffer_set_text(gtk_text_view_get_buffer(GTK_TEXT_VIEW(textview_input)), "\\p This is text to try the filter on.", -1); vbox1 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox1); gtk_box_pack_start(GTK_BOX(hbox2), vbox1, FALSE, FALSE, 0); button_try = gtk_button_new(); gtk_widget_show(button_try); gtk_box_pack_start(GTK_BOX(vbox1), button_try, FALSE, FALSE, 0); alignment1 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment1); gtk_container_add(GTK_CONTAINER(button_try), alignment1); hbox3 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox3); gtk_container_add(GTK_CONTAINER(alignment1), hbox3); image1 = gtk_image_new_from_stock("gtk-convert", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image1); gtk_box_pack_start(GTK_BOX(hbox3), image1, FALSE, FALSE, 0); label3 = gtk_label_new_with_mnemonic("Try"); gtk_widget_show(label3); gtk_box_pack_start(GTK_BOX(hbox3), label3, FALSE, FALSE, 0); shortcuts.label(label3); scrolledwindow_output = gtk_scrolled_window_new(NULL, NULL); gtk_widget_show(scrolledwindow_output); gtk_box_pack_start(GTK_BOX(hbox2), scrolledwindow_output, TRUE, TRUE, 0); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow_output), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scrolledwindow_output), GTK_SHADOW_IN); textview_output = gtk_text_view_new(); gtk_widget_show(textview_output); gtk_container_add(GTK_CONTAINER(scrolledwindow_output), textview_output); gtk_text_view_set_editable(GTK_TEXT_VIEW(textview_output), FALSE); gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(textview_output), GTK_WRAP_WORD); hbox1 = gtk_hbox_new(FALSE, 0); gtk_widget_show(hbox1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), hbox1, FALSE, FALSE, 0); button_new = gtk_button_new_from_stock("gtk-new"); gtk_widget_show(button_new); gtk_box_pack_start(GTK_BOX(hbox1), button_new, FALSE, FALSE, 0); shortcuts.stockbutton(button_new); combobox_filters = gtk_combo_box_new_text(); gtk_widget_show(combobox_filters); gtk_box_pack_start(GTK_BOX(hbox1), combobox_filters, TRUE, TRUE, 0); label_type = gtk_label_new(""); gtk_widget_show(label_type); gtk_box_pack_start(GTK_BOX(hbox1), label_type, FALSE, FALSE, 0); button_delete = gtk_button_new_from_stock("gtk-delete"); gtk_widget_show(button_delete); gtk_box_pack_start(GTK_BOX(hbox1), button_delete, FALSE, FALSE, 0); shortcuts.stockbutton(button_delete); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(filterdialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(filterdialog, NULL, &shortcuts, "menu-preferences/filters"); cancelbutton = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton); gtk_dialog_add_action_widget(GTK_DIALOG(filterdialog), cancelbutton, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton), true); okbutton = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton); gtk_dialog_add_action_widget(GTK_DIALOG(filterdialog), okbutton, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton), true); shortcuts.stockbutton(cancelbutton); shortcuts.stockbutton(okbutton); shortcuts.process(); g_signal_connect((gpointer) button_try, "clicked", G_CALLBACK(on_button_try_clicked), gpointer(this)); g_signal_connect((gpointer) button_new, "clicked", G_CALLBACK(on_button_new_clicked), gpointer(this)); g_signal_connect((gpointer) combobox_filters, "changed", G_CALLBACK(on_combobox_filters_changed), gpointer(this)); g_signal_connect((gpointer) button_delete, "clicked", G_CALLBACK(on_button_delete_clicked), gpointer(this)); g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(on_okbutton_clicked), gpointer(this)); g_signal_connect_after((gpointer) rulesbuffer, "changed", G_CALLBACK(on_rulesbuffer_changed), gpointer(this)); gtk_widget_grab_focus(textview_rules); gtk_widget_grab_default(okbutton); load_filters(""); } FiltersDialog::~FiltersDialog() { gtk_widget_destroy(filterdialog); } int FiltersDialog::run() { return gtk_dialog_run(GTK_DIALOG(filterdialog)); } void FiltersDialog::load_filters(const ustring & selection) { vector < ustring > filters = scripts_get_all(); combobox_set_strings(combobox_filters, filters); if (!selection.empty()) combobox_set_string(combobox_filters, selection); else if (filters.size() > 1) combobox_set_index(combobox_filters, 1); else combobox_set_index(combobox_filters, 0); on_combobox_filters(); } void FiltersDialog::on_button_try_clicked(GtkButton * button, gpointer user_data) { ((FiltersDialog *) user_data)->on_button_try(); } void FiltersDialog::on_button_try() { // Iterators. GtkTextIter startiter, enditer; // Input text. GtkTextBuffer *inputbuffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(textview_input)); gtk_text_buffer_get_start_iter(inputbuffer, &startiter); gtk_text_buffer_get_end_iter(inputbuffer, &enditer); ustring inputfile = script_temporal_input_file(); g_file_set_contents(inputfile.c_str(), gtk_text_buffer_get_text(inputbuffer, &startiter, &enditer, false), -1, NULL); // Filter. ustring scriptname = combobox_get_active_string(combobox_filters); bool straightthrough = scriptname == scripts_straight_through(); // Output file. ustring outputfile = script_temporal_output_file(); // Run filter. ustring error = script_filter(scriptname, straightthrough, inputfile, outputfile); // Show output in textview. gchar *outputtext; g_file_get_contents(outputfile.c_str(), &outputtext, NULL, NULL); GtkTextBuffer *outputbuffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(textview_output)); if (outputtext) { gtk_text_buffer_set_text(outputbuffer, outputtext, -1); g_free(outputtext); } else { gtk_text_buffer_set_text(outputbuffer, "", -1); } // If script failed, give the error for debugging purposes. if (!error.empty()) { gtk_text_buffer_set_text(outputbuffer, error.c_str(), -1); } // If there were compile errors before, show these. if (!compile_errors.empty()) { gtk_text_buffer_set_text(outputbuffer, "", -1); for (unsigned int i = 0; i < compile_errors.size(); i++) { gtk_text_buffer_insert_at_cursor(outputbuffer, compile_errors[i].c_str(), -1); gtk_text_buffer_insert_at_cursor(outputbuffer, "\n", -1); } } } void FiltersDialog::on_button_new_clicked(GtkButton * button, gpointer user_data) { ((FiltersDialog *) user_data)->on_button_new(); } void FiltersDialog::on_button_new() { // Enter the name of the new script. EntryDialog namedialog("New script", "Enter the name of the new script", ""); if (namedialog.run() != GTK_RESPONSE_OK) return; if (script_available(namedialog.entered_value)) { gtkw_dialog_error(filterdialog, "This one already exists"); return; } // Enter the type of the new script. vector < ustring > types; for (unsigned int i = 0; i < stEnd; i++) types.push_back(script_get_named_type((ScriptType) i)); RadiobuttonDialog typedialog("Script type", "Select the type of the script", types, 0, false); if (typedialog.run() != GTK_RESPONSE_OK) return; // Handle the rest. g_file_set_contents(script_get_path(namedialog.entered_value, (ScriptType) typedialog.selection).c_str(), "", -1, NULL); load_filters(namedialog.entered_value); } void FiltersDialog::on_combobox_filters_changed(GtkComboBox * combobox, gpointer user_data) { ((FiltersDialog *) user_data)->on_combobox_filters(); } void FiltersDialog::on_combobox_filters() { // Clear rules buffer. gtk_text_buffer_set_text(rulesbuffer, "", -1); // Get the name of the script. ustring filter = combobox_get_active_string(combobox_filters); // Set the type of the script. ScriptType scripttype; script_get_path(filter, &scripttype); gtk_label_set_text(GTK_LABEL(label_type), script_get_named_type(scripttype).c_str()); // Set sensitivity of widgets. bool editable = true; if (filter == scripts_straight_through()) editable = false; gtk_widget_set_sensitive(textview_rules, editable); gtk_widget_set_sensitive(button_delete, editable); // If not sensitive, bail out. if (!editable) return; // Load the script rules or code. ustring filename = script_get_path(filter, NULL); gchar *contents; g_file_get_contents(filename.c_str(), &contents, NULL, NULL); if (contents) { gtk_text_buffer_set_text(rulesbuffer, contents, -1); g_free(contents); } gtk_text_buffer_set_modified(rulesbuffer, false); } void FiltersDialog::on_button_delete_clicked(GtkButton * button, gpointer user_data) { ((FiltersDialog *) user_data)->on_button_delete(); } void FiltersDialog::on_button_delete() { ustring filter = combobox_get_active_string(combobox_filters); ustring filename = script_get_path(filter, NULL); unlink(filename.c_str()); load_filters(""); } void FiltersDialog::on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((FiltersDialog *) user_data)->on_okbutton(); } void FiltersDialog::on_okbutton() { } void FiltersDialog::on_rulesbuffer_changed(GtkTextBuffer * textbuffer, gpointer user_data) { ((FiltersDialog *) user_data)->on_rulesbuffer(); } void FiltersDialog::on_rulesbuffer() { gw_destroy_source(rulesbuffer_changed_event_id); rulesbuffer_changed_event_id = g_timeout_add_full(G_PRIORITY_DEFAULT, 100, GSourceFunc(on_rulesbuffer_changed_timeout), gpointer(this), NULL); } bool FiltersDialog::on_rulesbuffer_changed_timeout(gpointer user_data) { ((FiltersDialog *) user_data)->on_rulesbuffer_changed_execute(); return false; } void FiltersDialog::on_rulesbuffer_changed_execute() { // Bail out if there's no change in the rules buffer. if (!gtk_text_buffer_get_modified(rulesbuffer)) return; // Get the name of the script. Bail out if straight throug. ustring scriptname = combobox_get_active_string(combobox_filters); if (scriptname == scripts_straight_through()) return; // Get the filename and type of the script. ScriptType scripttype; ustring scriptfile = script_get_path(scriptname, &scripttype); // Save the rules to the script file. GtkTextIter startiter, enditer; gtk_text_buffer_get_start_iter(rulesbuffer, &startiter); gtk_text_buffer_get_end_iter(rulesbuffer, &enditer); g_file_set_contents(scriptfile.c_str(), gtk_text_buffer_get_text(rulesbuffer, &startiter, &enditer, false), -1, NULL); // If it is a TECkit mapping, compile it. if (scripttype == stTECkit) { compile_errors.clear(); GwSpawn spawn("teckit_compile"); spawn.workingdirectory(Directories->get_scripts()); spawn.arg(scriptfile); // To compile UTF-8 source that lacks an encoding signature, the –u flag must be specified on the compiler command line. spawn.arg("-u"); spawn.run(); if (spawn.exitstatus != 0) { ustring tecfile = script_get_path(scriptname, scripttype, true); unlink(tecfile.c_str()); spawn.read(); spawn.run(); compile_errors = spawn.standarderr; } } } bibledit-gtk-4.9/src/dialogfilters.h000664 000766 000024 00000005056 12221507134 017650 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGFILTERS_H #define INCLUDED_DIALOGFILTERS_H #include "libraries.h" #include #include "ustring.h" class FiltersDialog { public: FiltersDialog (int dummy); ~FiltersDialog (); int run (); protected: GtkWidget *filterdialog; GtkWidget *dialog_vbox1; GtkWidget *label_rules; GtkWidget *scrolledwindow_rules; GtkWidget *textview_rules; GtkWidget *label2; GtkWidget *hbox2; GtkWidget *scrolledwindow_input; GtkWidget *textview_input; GtkWidget *vbox1; GtkWidget *button_try; GtkWidget *alignment1; GtkWidget *hbox3; GtkWidget *image1; GtkWidget *label3; GtkWidget *scrolledwindow_output; GtkWidget *textview_output; GtkWidget *hbox1; GtkWidget *button_new; GtkWidget *combobox_filters; GtkWidget *label_type; GtkWidget *button_delete; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton; GtkWidget *okbutton; private: void load_filters (const ustring& selection); static void on_button_try_clicked (GtkButton *button, gpointer user_data); void on_button_try (); vector compile_errors; static void on_button_new_clicked (GtkButton *button, gpointer user_data); void on_button_new (); static void on_combobox_filters_changed (GtkComboBox *combobox, gpointer user_data); void on_combobox_filters (); static void on_button_delete_clicked (GtkButton *button, gpointer user_data); void on_button_delete (); static void on_okbutton_clicked (GtkButton *button, gpointer user_data); void on_okbutton (); GtkTextBuffer * rulesbuffer; static void on_rulesbuffer_changed (GtkTextBuffer * textbuffer, gpointer user_data); void on_rulesbuffer (); guint rulesbuffer_changed_event_id; static bool on_rulesbuffer_changed_timeout (gpointer user_data); void on_rulesbuffer_changed_execute (); }; #endif bibledit-gtk-4.9/src/dialogfindnote.cpp000664 000766 000024 00000015701 12221507146 020342 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogfindnote.h" #include "utilities.h" #include #include "sqlite_reader.h" #include "notes_utils.h" #include "completion.h" #include "gwrappers.h" #include "help.h" #include "settings.h" #include "tiny_utilities.h" FindNoteDialog::FindNoteDialog(int dummy) { extern Settings *settings; findnotedialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(findnotedialog), "Find in project notes"); gtk_window_set_position(GTK_WINDOW(findnotedialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(findnotedialog), TRUE); // Next one added to Glade's code. gtk_window_set_destroy_with_parent(GTK_WINDOW(findnotedialog), TRUE); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(findnotedialog)); gtk_widget_show(dialog_vbox1); hbox2 = gtk_hbox_new(FALSE, 0); gtk_widget_show(hbox2); gtk_box_pack_start(GTK_BOX(dialog_vbox1), hbox2, TRUE, TRUE, 0); label5 = gtk_label_new("Search for"); gtk_widget_show(label5); gtk_box_pack_start(GTK_BOX(hbox2), label5, FALSE, FALSE, 4); entry1 = gtk_entry_new(); // Next one has been added to Glade's code. gtk_entry_set_text(GTK_ENTRY(entry1), settings->session.searchword.c_str()); gtk_widget_show(entry1); gtk_box_pack_start(GTK_BOX(hbox2), entry1, TRUE, TRUE, 0); gtk_entry_set_activates_default(GTK_ENTRY(entry1), TRUE); checkbutton_case = gtk_check_button_new_with_mnemonic("Case _sensitive"); gtk_widget_show(checkbutton_case); gtk_box_pack_start(GTK_BOX(dialog_vbox1), checkbutton_case, FALSE, FALSE, 0); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_case), settings->session.search_case_sensitive); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(findnotedialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(findnotedialog, NULL, NULL, NULL); buttonfind = gtk_button_new_from_stock("gtk-find"); gtk_widget_show(buttonfind); gtk_dialog_add_action_widget(GTK_DIALOG(findnotedialog), buttonfind, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (buttonfind), true); buttoncancel = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(buttoncancel); gtk_dialog_add_action_widget(GTK_DIALOG(findnotedialog), buttoncancel, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (buttoncancel), true); // The next one modified from Glade's code. g_signal_connect((gpointer) buttonfind, "clicked", G_CALLBACK(findnotedialog_on_buttonfind_clicked), gpointer(this)); g_signal_connect((gpointer) entry1, "changed", G_CALLBACK(on_word_entry_changed), gpointer(this)); gtk_widget_grab_focus(entry1); gtk_widget_grab_default(buttonfind); // Entry completion completion_setup(entry1, cpSearch); set_gui(); } FindNoteDialog::~FindNoteDialog() { gtk_widget_destroy(findnotedialog); } int FindNoteDialog::run() { return gtk_dialog_run(GTK_DIALOG(findnotedialog)); } void FindNoteDialog::findnotedialog_on_buttonfind_clicked(GtkButton * button, gpointer user_data) { ((FindNoteDialog *) user_data)->on_buttonfind_clicked(); } void FindNoteDialog::on_buttonfind_clicked() { extern Settings *settings; // Connect to database. sqlite3 *db; int rc; char *error = NULL; try { rc = sqlite3_open(notes_index_filename().c_str(), &db); if (rc) throw runtime_error(sqlite3_errmsg(db)); sqlite3_busy_timeout(db, 1000); // Get the word to search for. settings->session.searchword = gtk_entry_get_text(GTK_ENTRY(entry1)); settings->session.search_case_sensitive = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_case)); // Get the string to search for. // We need to normalize the search expression, as prescribed, when comparing strings. ustring searchword_verbatim = settings->session.searchword.normalize(); ustring searchword_casefold = searchword_verbatim.casefold(); // Go through the whole index database. SqliteReader reader(0); char *sql; sql = g_strdup_printf("select id, casefolded from notes;"); rc = sqlite3_exec(db, sql, reader.callback, &reader, &error); g_free(sql); if (rc != SQLITE_OK) { throw runtime_error(error); } for (unsigned int i = 0; i < reader.ustring0.size(); i++) { // See whether the case-insensitive word to search for is in this note. ustring casefolded_note = reader.ustring1[i]; if (casefolded_note.find(searchword_casefold) != string::npos) { // Read the note from disk. gint32 id = convert_to_int(reader.ustring0[i]); ustring note; ustring project; ustring fullreference; ustring category; int date_created; ustring user_created; int date_modified; ustring logbook; notes_read_one_from_file (id, note, project, fullreference, category, date_created, user_created, date_modified, logbook); // If case sensitive search, do an additional test. if (settings->session.search_case_sensitive) { if (note.find (searchword_verbatim) == string::npos) { continue; } } // Get the numerical equivalent of the reference. ustring reference = fullreference; { // Parse the string into its possible several references. Parse parse(reference); // Take the first refence available. if (parse.words.size() > 0) reference = parse.words[0]; } // Store data. ids.push_back(id); references.push_back(reference); allreferences.push_back(fullreference); dates.push_back(date_modified); } } // Sort the notes. notes_sort(ids, references, allreferences, dates); } catch(exception & ex) { gw_critical(ex.what()); } // Close connection. sqlite3_close(db); // Entry completion completion_finish(entry1, cpSearch); } void FindNoteDialog::on_word_entry_changed(GtkEditable * editable, gpointer user_data) { ((FindNoteDialog *) user_data)->set_gui(); } void FindNoteDialog::set_gui() { string searchword = gtk_entry_get_text(GTK_ENTRY(entry1)); gtk_widget_set_sensitive(buttonfind, searchword.size() > 0); } bibledit-gtk-4.9/src/dialogfindnote.h000664 000766 000024 00000003054 12221507150 020000 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGFINDNOTE_H #define INCLUDED_DIALOGFINDNOTE_H #include class FindNoteDialog { public: FindNoteDialog (int dummy); ~FindNoteDialog (); int run (); vector ids; protected: private: GtkWidget *findnotedialog; GtkWidget *dialog_vbox1; GtkWidget *hbox2; GtkWidget *label5; GtkWidget *entry1; GtkWidget *checkbutton_case; GtkWidget *dialog_action_area1; GtkWidget *buttonfind; GtkWidget *buttoncancel; static void findnotedialog_on_buttonfind_clicked (GtkButton * button, gpointer user_data); void on_buttonfind_clicked (); vector references; vector allreferences; vector dates; static void on_word_entry_changed (GtkEditable * editable, gpointer user_data); void set_gui (); }; #endif bibledit-gtk-4.9/src/dialogfixmarkers.cpp000664 000766 000024 00000006737 12221507151 020714 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogfixmarkers.h" #include "help.h" #include "shortcuts.h" #include "fixmarkers.h" FixMarkersDialog::FixMarkersDialog(int dummy) { Shortcuts shortcuts(0); fixmarkersdialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(fixmarkersdialog), "Simple text corrections"); gtk_window_set_position(GTK_WINDOW(fixmarkersdialog), GTK_WIN_POS_CENTER_ON_PARENT); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(fixmarkersdialog)); gtk_widget_show(dialog_vbox1); label1 = gtk_label_new("This tool can make some automatic simple text corrections."); gtk_widget_show(label1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), label1, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label1), 0, 0.5); hseparator1 = gtk_hseparator_new(); gtk_widget_show(hseparator1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), hseparator1, TRUE, TRUE, 0); checkbutton_space_after_opener = gtk_check_button_new_with_mnemonic("Insert a space after an opening USFM marker that doesn't have one"); gtk_widget_show(checkbutton_space_after_opener); gtk_box_pack_start(GTK_BOX(dialog_vbox1), checkbutton_space_after_opener, FALSE, FALSE, 0); shortcuts.button(checkbutton_space_after_opener); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(fixmarkersdialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(fixmarkersdialog, NULL, &shortcuts, NULL); cancelbutton = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton); gtk_dialog_add_action_widget(GTK_DIALOG(fixmarkersdialog), cancelbutton, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton), true); okbutton = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton); gtk_dialog_add_action_widget(GTK_DIALOG(fixmarkersdialog), okbutton, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton), true); shortcuts.stockbutton(cancelbutton); shortcuts.stockbutton(okbutton); shortcuts.process(); g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(on_okbutton_clicked), gpointer(this)); gtk_widget_grab_focus(okbutton); gtk_widget_grab_default(okbutton); } FixMarkersDialog::~FixMarkersDialog() { gtk_widget_destroy(fixmarkersdialog); } int FixMarkersDialog::run() { return gtk_dialog_run(GTK_DIALOG(fixmarkersdialog)); } void FixMarkersDialog::on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((FixMarkersDialog *) user_data)->on_okbutton(); } void FixMarkersDialog::on_okbutton() { if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_space_after_opener))) { fix_markers_insert_space_after_opener(); } } bibledit-gtk-4.9/src/dialogfixmarkers.h000664 000766 000024 00000002533 12221507145 020352 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOG_FIX_MARKERS_H #define INCLUDED_DIALOG_FIX_MARKERS_H #include #include "ustring.h" class FixMarkersDialog { public: FixMarkersDialog (int dummy); ~FixMarkersDialog (); int run (); protected: GtkWidget *fixmarkersdialog; GtkWidget *dialog_vbox1; GtkWidget *label1; GtkWidget *hseparator1; GtkWidget *checkbutton_space_after_opener; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton; GtkWidget *okbutton; private: static void on_okbutton_clicked (GtkButton *button, gpointer user_data); void on_okbutton (); }; #endif bibledit-gtk-4.9/src/dialogfontcolor.cpp000664 000766 000024 00000024650 12221507146 020544 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "dialogfontcolor.h" #include "help.h" #include "shortcuts.h" #include "color.h" FontColorDialog::FontColorDialog(bool initial_use_default_font, const ustring & initial_font, unsigned int initial_line_spacing, bool initial_use_default_color, unsigned int initial_normal_text_color, unsigned int initial_background_color, unsigned int initial_selected_text_color, unsigned int initial_selection_color) { Shortcuts shortcuts(0); fontcolordialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(fontcolordialog), "Font and Color"); gtk_window_set_position(GTK_WINDOW(fontcolordialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(fontcolordialog), TRUE); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG (fontcolordialog)); gtk_widget_show(dialog_vbox1); checkbutton_font = gtk_check_button_new_with_mnemonic("Use default font"); gtk_widget_show(checkbutton_font); gtk_box_pack_start(GTK_BOX(dialog_vbox1), checkbutton_font, FALSE, FALSE, 0); shortcuts.button(checkbutton_font); fontselection = gtk_font_selection_new(); gtk_widget_show(fontselection); gtk_box_pack_start(GTK_BOX(dialog_vbox1), fontselection, TRUE, TRUE, 0); hbox_line_spacing = gtk_hbox_new(FALSE, 5); gtk_widget_show(hbox_line_spacing); gtk_box_pack_start(GTK_BOX(dialog_vbox1), hbox_line_spacing, TRUE, TRUE, 0); label7 = gtk_label_new_with_mnemonic("Line spacing"); gtk_widget_show(label7); gtk_box_pack_start(GTK_BOX(hbox_line_spacing), label7, FALSE, FALSE, 0); shortcuts.label(label7); spinbutton_line_spacing_adj = gtk_adjustment_new(initial_line_spacing, 50, 500, 1, 10, 0); spinbutton_line_spacing = gtk_spin_button_new(GTK_ADJUSTMENT(spinbutton_line_spacing_adj), 1, 0); gtk_widget_show(spinbutton_line_spacing); gtk_box_pack_start(GTK_BOX(hbox_line_spacing), spinbutton_line_spacing, FALSE, FALSE, 0); gtk_spin_button_set_numeric(GTK_SPIN_BUTTON(spinbutton_line_spacing), TRUE); label8 = gtk_label_new("%"); gtk_widget_show(label8); gtk_box_pack_start(GTK_BOX(hbox_line_spacing), label8, FALSE, FALSE, 0); hseparator1 = gtk_hseparator_new(); gtk_widget_show(hseparator1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), hseparator1, FALSE, FALSE, 0); checkbutton_colors = gtk_check_button_new_with_mnemonic("Use default colors"); gtk_widget_show(checkbutton_colors); gtk_box_pack_start(GTK_BOX(dialog_vbox1), checkbutton_colors, FALSE, FALSE, 0); shortcuts.button(checkbutton_colors); table1 = gtk_table_new(4, 2, FALSE); gtk_widget_show(table1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), table1, TRUE, TRUE, 0); gtk_table_set_col_spacings(GTK_TABLE(table1), 5); label3 = gtk_label_new("Normal text color"); gtk_widget_show(label3); gtk_table_attach(GTK_TABLE(table1), label3, 0, 1, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label3), 0, 0.5); shortcuts.label(label3); label4 = gtk_label_new("Background color"); gtk_widget_show(label4); gtk_table_attach(GTK_TABLE(table1), label4, 0, 1, 1, 2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label4), 0, 0.5); shortcuts.label(label4); label5 = gtk_label_new("Selected text color"); gtk_widget_show(label5); gtk_table_attach(GTK_TABLE(table1), label5, 0, 1, 2, 3, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label5), 0, 0.5); shortcuts.label(label5); label6 = gtk_label_new("Selection color"); gtk_widget_show(label6); gtk_table_attach(GTK_TABLE(table1), label6, 0, 1, 3, 4, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label6), 0, 0.5); shortcuts.label(label6); colorbutton_normal_text = gtk_color_button_new(); gtk_widget_show(colorbutton_normal_text); gtk_table_attach(GTK_TABLE(table1), colorbutton_normal_text, 1, 2, 0, 1, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); colorbutton_background = gtk_color_button_new(); gtk_widget_show(colorbutton_background); gtk_table_attach(GTK_TABLE(table1), colorbutton_background, 1, 2, 1, 2, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); colorbutton_selected_text = gtk_color_button_new(); gtk_widget_show(colorbutton_selected_text); gtk_table_attach(GTK_TABLE(table1), colorbutton_selected_text, 1, 2, 2, 3, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); colorbutton_selection = gtk_color_button_new(); gtk_widget_show(colorbutton_selection); gtk_table_attach(GTK_TABLE(table1), colorbutton_selection, 1, 2, 3, 4, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(fontcolordialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(fontcolordialog, NULL, &shortcuts, NULL); cancelbutton = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton); gtk_dialog_add_action_widget(GTK_DIALOG(fontcolordialog), cancelbutton, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton), true); okbutton = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton); gtk_dialog_add_action_widget(GTK_DIALOG(fontcolordialog), okbutton, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton), true); shortcuts.stockbutton(cancelbutton); shortcuts.stockbutton(okbutton); shortcuts.process(); g_signal_connect((gpointer) checkbutton_font, "toggled", G_CALLBACK(on_checkbutton_font_toggled), gpointer(this)); g_signal_connect((gpointer) checkbutton_colors, "toggled", G_CALLBACK(on_checkbutton_colors_toggled), gpointer(this)); g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(on_okbutton_clicked), gpointer(this)); gtk_label_set_mnemonic_widget(GTK_LABEL(label3), colorbutton_normal_text); gtk_label_set_mnemonic_widget(GTK_LABEL(label4), colorbutton_background); gtk_label_set_mnemonic_widget(GTK_LABEL(label5), colorbutton_selected_text); gtk_label_set_mnemonic_widget(GTK_LABEL(label6), colorbutton_selection); gtk_label_set_mnemonic_widget(GTK_LABEL(label7), spinbutton_line_spacing); gtk_widget_grab_focus(okbutton); gtk_widget_grab_default(okbutton); // Make the settings in the GUI. gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_font), initial_use_default_font); gtk_font_selection_set_font_name(GTK_FONT_SELECTION(fontselection), initial_font.c_str()); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_colors), initial_use_default_color); GdkColor gdkcolor; color_decimal_to_gdk(initial_normal_text_color, &gdkcolor); gtk_color_button_set_color(GTK_COLOR_BUTTON(colorbutton_normal_text), &gdkcolor); color_decimal_to_gdk(initial_background_color, &gdkcolor); gtk_color_button_set_color(GTK_COLOR_BUTTON(colorbutton_background), &gdkcolor); color_decimal_to_gdk(initial_selected_text_color, &gdkcolor); gtk_color_button_set_color(GTK_COLOR_BUTTON(colorbutton_selected_text), &gdkcolor); color_decimal_to_gdk(initial_selection_color, &gdkcolor); gtk_color_button_set_color(GTK_COLOR_BUTTON(colorbutton_selection), &gdkcolor); } FontColorDialog::~FontColorDialog() { gtk_widget_destroy(fontcolordialog); } int FontColorDialog::run() { return gtk_dialog_run(GTK_DIALOG(fontcolordialog)); } void FontColorDialog::on_checkbutton_font_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((FontColorDialog *) user_data)->on_checkbutton_font(); } void FontColorDialog::on_checkbutton_font() { bool sensitive = !gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_font)); gtk_widget_set_sensitive(fontselection, sensitive); gtk_widget_set_sensitive(hbox_line_spacing, sensitive); } void FontColorDialog::on_checkbutton_colors_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((FontColorDialog *) user_data)->on_checkbutton_colors(); } void FontColorDialog::on_checkbutton_colors() { bool sensitive = !gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_colors)); gtk_widget_set_sensitive(label3, sensitive); gtk_widget_set_sensitive(label4, sensitive); gtk_widget_set_sensitive(label5, sensitive); gtk_widget_set_sensitive(label6, sensitive); gtk_widget_set_sensitive(colorbutton_normal_text, sensitive); gtk_widget_set_sensitive(colorbutton_background, sensitive); gtk_widget_set_sensitive(colorbutton_selected_text, sensitive); gtk_widget_set_sensitive(colorbutton_selection, sensitive); } void FontColorDialog::on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((FontColorDialog *) user_data)->on_okbutton(); } void FontColorDialog::on_okbutton() { new_use_default_font = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_font)); new_font = gtk_font_selection_get_font_name(GTK_FONT_SELECTION(fontselection)); gtk_spin_button_update(GTK_SPIN_BUTTON(spinbutton_line_spacing)); new_line_spacing = gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(spinbutton_line_spacing)); new_use_default_color = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_colors)); GdkColor gdkcolor; gtk_color_button_get_color(GTK_COLOR_BUTTON(colorbutton_normal_text), &gdkcolor); new_normal_text_color = color_gdk_to_decimal(&gdkcolor); gtk_color_button_get_color(GTK_COLOR_BUTTON(colorbutton_background), &gdkcolor); new_background_color = color_gdk_to_decimal(&gdkcolor); gtk_color_button_get_color(GTK_COLOR_BUTTON(colorbutton_selected_text), &gdkcolor); new_selected_text_color = color_gdk_to_decimal(&gdkcolor); gtk_color_button_get_color(GTK_COLOR_BUTTON(colorbutton_selection), &gdkcolor); new_selection_color = color_gdk_to_decimal(&gdkcolor); } bibledit-gtk-4.9/src/dialogfontcolor.h000664 000766 000024 00000005251 12221507137 020205 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGFONTCOLOR_H #define INCLUDED_DIALOGFONTCOLOR_H #include #include "libraries.h" class FontColorDialog { public: FontColorDialog (bool initial_use_default_font, const ustring& initial_font, unsigned int initial_line_spacing, bool initial_use_default_color, unsigned int initial_normal_text_color, unsigned int initial_background_color, unsigned int initial_selected_text_color, unsigned int initial_selection_color); ~FontColorDialog (); int run (); bool new_use_default_font; ustring new_font; unsigned int new_line_spacing; bool new_use_default_color; unsigned int new_normal_text_color; unsigned int new_background_color; unsigned int new_selected_text_color; unsigned int new_selection_color; protected: GtkWidget *fontcolordialog; GtkWidget *dialog_vbox1; GtkWidget *checkbutton_font; GtkWidget *fontselection; GtkWidget *hbox_line_spacing; GtkWidget *label7; GtkObject *spinbutton_line_spacing_adj; GtkWidget *spinbutton_line_spacing; GtkWidget *label8; GtkWidget *hseparator1; GtkWidget *checkbutton_colors; GtkWidget *table1; GtkWidget *label3; GtkWidget *label4; GtkWidget *label5; GtkWidget *label6; GtkWidget *colorbutton_normal_text; GtkWidget *colorbutton_background; GtkWidget *colorbutton_selected_text; GtkWidget *colorbutton_selection; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton; GtkWidget *okbutton; private: static void on_checkbutton_font_toggled (GtkToggleButton *togglebutton, gpointer user_data); void on_checkbutton_font (); static void on_checkbutton_colors_toggled (GtkToggleButton *togglebutton, gpointer user_data); void on_checkbutton_colors (); static void on_okbutton_clicked (GtkButton *button, gpointer user_data); void on_okbutton (); }; #endif bibledit-gtk-4.9/src/dialoggotoreference.cpp000644 000766 000024 00000034261 12453001367 021364 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "dialoggotoreference.h" #include "utilities.h" #include "bible.h" #include "gtkwrappers.h" #include "completion.h" #include #include "listview.h" #include "projectutils.h" #include "help.h" #include "books.h" #include "settings.h" #include "tiny_utilities.h" #include "directories.h" #include "gwrappers.h" #include "keyboard.h" GotoReferenceDialog::GotoReferenceDialog(unsigned int currentbook, unsigned int currentchapter, const ustring & currentverse):reference(0) { // Init variables extern Settings *settings; ProjectConfiguration *projectconfig = settings->projectconfig(settings->genconfig.project_get()); language = projectconfig->language_get(); newreference = false; oldbook = currentbook; oldchapter = currentchapter; oldverse = currentverse; go_back = false; go_forward = false; Shortcuts shortcuts(0); gtkbuilder = gtk_builder_new (); gtk_builder_add_from_file (gtkbuilder, gw_build_filename (Directories->get_package_data(), "gtkbuilder.gotoreferencedialog.xml").c_str(), NULL); dialog = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "dialog")); g_signal_connect((gpointer) dialog, "key_press_event", G_CALLBACK(on_key_press_event), gpointer(this)); notebook = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "notebook")); // Enter current reference into the free entry, and select it, so user can use that. entry_free = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "entry_free")); gtk_widget_grab_focus(entry_free); ustring ref = books_id_to_name(language, currentbook) + " " + convert_to_string(currentchapter) + ":" + currentverse; gtk_entry_set_text(GTK_ENTRY(entry_free), ref.c_str()); gtk_editable_select_region(GTK_EDITABLE(entry_free), 0, -1); // Completion for the reference entry. completion_setup(entry_free, cpGoto); // Signals entry. g_signal_connect((gpointer) entry_free, "activate", G_CALLBACK(on_entry_free_activate), gpointer(this)); // Aided entry widgets. treeview_book = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "treeview_book")); treeview_chapter = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "treeview_chapter")); treeview_verse = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "treeview_verse")); // Connect to the signals of the treeviews. g_signal_connect_after((gpointer) treeview_book, "move_cursor", G_CALLBACK(on_treeview_book_move_cursor), gpointer(this)); g_signal_connect_after((gpointer) treeview_book, "row_activated", G_CALLBACK(on_treeview_book_row_activated), gpointer(this)); g_signal_connect_after((gpointer) treeview_chapter, "move_cursor", G_CALLBACK(on_treeview_chapter_move_cursor), gpointer(this)); g_signal_connect_after((gpointer) treeview_chapter, "row_activated", G_CALLBACK(on_treeview_chapter_row_activated), gpointer(this)); g_signal_connect_after((gpointer) treeview_verse, "move_cursor", G_CALLBACK(on_treeview_verse_move_cursor), gpointer(this)); g_signal_connect_after((gpointer) treeview_verse, "row_activated", G_CALLBACK(on_treeview_verse_row_activated), gpointer(this)); // Create stores and fill the book store. store_book = gtk_list_store_new(1, G_TYPE_STRING); store_chapter = gtk_list_store_new(1, G_TYPE_STRING); store_verse = gtk_list_store_new(1, G_TYPE_STRING); vector < unsigned int >ibooks = project_get_books(settings->genconfig.project_get()); vector < ustring > ubooks; for (unsigned int i = 0; i < ibooks.size(); i++) ubooks.push_back(books_id_to_name(language, ibooks[i])); listview_set_strings(treeview_book, store_book, ubooks); // Set the stores as models for the treeviews. gtk_tree_view_set_model(GTK_TREE_VIEW(treeview_book), GTK_TREE_MODEL(store_book)); gtk_tree_view_set_model(GTK_TREE_VIEW(treeview_chapter), GTK_TREE_MODEL(store_chapter)); gtk_tree_view_set_model(GTK_TREE_VIEW(treeview_verse), GTK_TREE_MODEL(store_verse)); // Unreference the stores once, so they get destroyed with the treeview. g_object_unref(store_book); g_object_unref(store_chapter); g_object_unref(store_verse); // Text cell renderer. GtkCellRenderer *renderer; renderer = gtk_cell_renderer_text_new(); // Columns. GtkTreeViewColumn *column_book; column_book = gtk_tree_view_column_new_with_attributes("", renderer, "text", 0, NULL); gtk_tree_view_append_column(GTK_TREE_VIEW(treeview_book), column_book); GtkTreeViewColumn *column_chapter; column_chapter = gtk_tree_view_column_new_with_attributes("", renderer, "text", 0, NULL); gtk_tree_view_append_column(GTK_TREE_VIEW(treeview_chapter), column_chapter); GtkTreeViewColumn *column_verse; column_verse = gtk_tree_view_column_new_with_attributes("", renderer, "text", 0, NULL); gtk_tree_view_append_column(GTK_TREE_VIEW(treeview_verse), column_verse); // Set up the selection for each of the tree views. GtkTreeSelection *select_book; select_book = gtk_tree_view_get_selection(GTK_TREE_VIEW(treeview_book)); gtk_tree_selection_set_mode(select_book, GTK_SELECTION_SINGLE); GtkTreeSelection *select_chapter; select_chapter = gtk_tree_view_get_selection(GTK_TREE_VIEW(treeview_chapter)); gtk_tree_selection_set_mode(select_chapter, GTK_SELECTION_SINGLE); GtkTreeSelection *select_verse; select_verse = gtk_tree_view_get_selection(GTK_TREE_VIEW(treeview_verse)); gtk_tree_selection_set_mode(select_verse, GTK_SELECTION_SINGLE); // History back. radiobutton_back = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "radiobutton_back")); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (radiobutton_back), true); // History forward. radiobutton_forward = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "radiobutton_forward")); // Link history button. GSList *history_button_group = NULL; gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_back), history_button_group); history_button_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_back)); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_forward), history_button_group); history_button_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_forward)); // Dialog action area. InDialogHelp * indialoghelp = new InDialogHelp(dialog, gtkbuilder, &shortcuts, NULL); cancelbutton = indialoghelp->cancelbutton; okbutton = indialoghelp->okbutton; gtk_widget_grab_default(okbutton); g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(on_okbutton_clicked), gpointer(this)); } GotoReferenceDialog::~GotoReferenceDialog() { gtk_widget_destroy(dialog); } int GotoReferenceDialog::run() { return gtk_dialog_run(GTK_DIALOG(dialog)); } void GotoReferenceDialog::on_jump() /* This interprets the text the user has typed in the entry as a valid reference. If needed it will use information of the current reference to complete the info. For example, when the user types "1", it is interpreted as verse one of the current chapter of the current book. If he types "21 10" it is interpreted as the current book, chapter 21 verse 10. And so forth. If enabled it consults the verses memory database for finding out where to go in case only a book or only book and chapter is given. */ { int page = gtk_notebook_get_current_page(GTK_NOTEBOOK(notebook)); if (page == 0) { if (reference_discover(oldbook, oldchapter, oldverse, gtk_entry_get_text(GTK_ENTRY(entry_free)), reference.book, reference.chapter, reference.verse, true)) { completion_finish(entry_free, cpGoto); newreference = true; } else { show_bad_reference(); } } else if (page == 1) { reference.book = books_name_to_id(language, listview_get_active_string(treeview_book)); reference.chapter = convert_to_int(listview_get_active_string(treeview_chapter)); reference.verse = listview_get_active_string(treeview_verse); newreference = true; } else { go_back = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_back)); go_forward = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_forward)); } } void GotoReferenceDialog::show_bad_reference() { ustring message = "No such reference: "; message.append(gtk_entry_get_text(GTK_ENTRY(entry_free))); gtkw_dialog_error(dialog, message); } void GotoReferenceDialog::on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((GotoReferenceDialog *) user_data)->on_jump(); } gboolean GotoReferenceDialog::on_key_press_event(GtkWidget * widget, GdkEventKey * event, gpointer user_data) { if (keyboard_control_state (event)) { if (event->keyval == GDK_g) { ((GotoReferenceDialog *) user_data)->on_control_g(); } } return FALSE; } void GotoReferenceDialog::on_control_g() { // Go to the next page. int page = gtk_notebook_get_current_page(GTK_NOTEBOOK(notebook)); page++; if (page > 2) page = 0; gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook), page); // On the aided page, set book, chapters, verse. if (page == 1) { // Activate the current book. listview_focus_string(treeview_book, books_id_to_name(language, oldbook)); // Fill chapters and verses too. on_move_book(); listview_focus_string(treeview_chapter, convert_to_string(oldchapter)); on_move_chapter(); listview_focus_string(treeview_verse, oldverse); gtk_widget_grab_focus(treeview_book); } } void GotoReferenceDialog::on_entry_free_activate(GtkEntry * entry, gpointer user_data) { ((GotoReferenceDialog *) user_data)->on_activate(); } void GotoReferenceDialog::on_activate() { on_jump(); gtk_dialog_response(GTK_DIALOG(dialog), GTK_RESPONSE_OK); } gboolean GotoReferenceDialog::on_treeview_book_move_cursor(GtkTreeView * treeview, GtkMovementStep step, gint count, gpointer user_data) { ((GotoReferenceDialog *) user_data)->on_move_book(); return false; } void GotoReferenceDialog::on_treeview_book_row_activated(GtkTreeView * treeview, GtkTreePath * path, GtkTreeViewColumn * column, gpointer user_data) { ((GotoReferenceDialog *) user_data)->on_activate_book(); } gboolean GotoReferenceDialog::on_treeview_chapter_move_cursor(GtkTreeView * treeview, GtkMovementStep step, gint count, gpointer user_data) { ((GotoReferenceDialog *) user_data)->on_move_chapter(); return FALSE; } void GotoReferenceDialog::on_treeview_chapter_row_activated(GtkTreeView * treeview, GtkTreePath * path, GtkTreeViewColumn * column, gpointer user_data) { ((GotoReferenceDialog *) user_data)->on_activate_chapter(); } gboolean GotoReferenceDialog::on_treeview_verse_move_cursor(GtkTreeView * treeview, GtkMovementStep step, gint count, gpointer user_data) { ((GotoReferenceDialog *) user_data)->on_move_verse(); return FALSE; } void GotoReferenceDialog::on_treeview_verse_row_activated(GtkTreeView * treeview, GtkTreePath * path, GtkTreeViewColumn * column, gpointer user_data) { ((GotoReferenceDialog *) user_data)->on_activate_verse(); } void GotoReferenceDialog::on_move_book() { extern Settings *settings; // As the book changed, update the number of chapters. unsigned int bookid = books_name_to_id(language, listview_get_active_string(treeview_book)); // Something weird in Gtk: If the listview was not in view, it gives no results. // Deal with that here. if (bookid == 0) return; vector < unsigned int >chapters; chapters = project_get_chapters(settings->genconfig.project_get(), bookid); listview_set_strings(treeview_chapter, store_chapter, chapters); if (oldbook == bookid) listview_focus_string(treeview_chapter, convert_to_string(oldchapter)); // Update the number of verses too. on_move_chapter(); } void GotoReferenceDialog::on_activate_book() { // Ok, book selection was made. // Update number of chapters, and then focus on the chapters selector. on_move_book(); gtk_widget_grab_focus(treeview_chapter); } void GotoReferenceDialog::on_move_chapter() { extern Settings *settings; // Chapter number changed, therefore update the verse numbers. ustring chapter = listview_get_active_string(treeview_chapter); // Something weird in Gtk: If the listview was not in view, it gives no results. // Deal with that here. if (chapter.empty()) return; // Get the verses as they are in the chapter. unsigned int bookid = books_name_to_id(language, listview_get_active_string(treeview_book)); vector < ustring > verses; verses = project_get_verses(settings->genconfig.project_get(), bookid, convert_to_int(chapter)); // The verses may contain sequences and ranges, but fill them up with the // verses contained in those. E.g.: 10-12 also contains 11. vector < ustring > verses2; set < ustring > verses2_set; for (unsigned int i = 0; i < verses.size(); i++) { verses2.push_back(verses[i]); if (number_in_string(verses[i]) != verses[i]) { vector < unsigned int >int_verses = verse_range_sequence(verses[i]); for (unsigned int i2 = 0; i2 < int_verses.size(); i2++) { ustring verse2 = convert_to_string(int_verses[i2]); // No double verses will be listed. if (verses2_set.find(verse2) == verses2_set.end()) { verses2.push_back(verse2); } verses2_set.insert(verse2); } } } listview_set_strings(treeview_verse, store_verse, verses2); if (oldbook == bookid) if (oldchapter == convert_to_int(chapter)) listview_focus_string(treeview_verse, oldverse); } void GotoReferenceDialog::on_activate_chapter() { // Ok, chapter selection was made. // Update number of verses, and then focus on the verses selector. on_move_chapter(); gtk_widget_grab_focus(treeview_verse); } void GotoReferenceDialog::on_move_verse() { } void GotoReferenceDialog::on_activate_verse() { on_activate(); } bibledit-gtk-4.9/src/dialoggotoreference.h000664 000766 000024 00000005776 12221507141 021036 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGGOTOREFERENCE_H #define INCLUDED_DIALOGGOTOREFERENCE_H #include #include #include "ustring.h" #include "settings.h" #include "reference.h" class GotoReferenceDialog { public: GotoReferenceDialog (unsigned int currentbook, unsigned int currentchapter, const ustring& currentverse); ~GotoReferenceDialog (); int run(); bool newreference; Reference reference; bool go_back; bool go_forward; protected: GtkBuilder *gtkbuilder; GtkWidget *dialog; GtkWidget *notebook; GtkWidget *entry_free; GtkWidget *treeview_book; GtkWidget *treeview_chapter; GtkWidget *treeview_verse; GtkWidget *radiobutton_back; GtkWidget *radiobutton_forward; GtkWidget *cancelbutton; GtkWidget *okbutton; private: unsigned int oldbook; unsigned int oldchapter; ustring oldverse; ustring language; vector input; void on_jump(); static void on_okbutton_clicked (GtkButton *button, gpointer user_data); void show_bad_reference (); static gboolean on_key_press_event(GtkWidget * widget, GdkEventKey * event, gpointer user_data); void on_control_g (); static void on_entry_free_activate (GtkEntry *entry, gpointer user_data); void on_activate (); GtkListStore *store_book; GtkListStore *store_chapter; GtkListStore *store_verse; static gboolean on_treeview_book_move_cursor (GtkTreeView *treeview, GtkMovementStep step, gint count, gpointer user_data); static void on_treeview_book_row_activated (GtkTreeView *treeview, GtkTreePath *path, GtkTreeViewColumn *column, gpointer user_data); static gboolean on_treeview_chapter_move_cursor (GtkTreeView *treeview, GtkMovementStep step, gint count, gpointer user_data); static void on_treeview_chapter_row_activated (GtkTreeView *treeview, GtkTreePath *path, GtkTreeViewColumn *column, gpointer user_data); static gboolean on_treeview_verse_move_cursor (GtkTreeView *treeview, GtkMovementStep step, gint count, gpointer user_data); static void on_treeview_verse_row_activated (GtkTreeView *treeview, GtkTreePath *path, GtkTreeViewColumn *column, gpointer user_data); void on_move_book (); void on_activate_book (); void on_move_chapter (); void on_activate_chapter (); void on_move_verse (); void on_activate_verse (); }; #endif bibledit-gtk-4.9/src/dialoggui.cpp000644 000766 000024 00000033507 12453001367 017323 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "dialoggui.h" #include "help.h" #include "shortcuts.h" #include "settings.h" #include "utilities.h" #include "gtkwrappers.h" #include "directories.h" #include "gwrappers.h" GuiDialog::GuiDialog(int dummy) { Shortcuts shortcuts(0); gtkbuilder = gtk_builder_new (); gtk_builder_add_from_file (gtkbuilder, gw_build_filename (Directories->get_package_data(), "gtkbuilder.guidialog.xml").c_str(), NULL); featuresdialog = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "guidialog")); radiobutton_basic = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "radiobutton_basic")); shortcuts.button(radiobutton_basic); radiobutton_full = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "radiobutton_full")); shortcuts.button(radiobutton_full); radiobutton_user = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "radiobutton_user")); shortcuts.button(radiobutton_user); checkbutton_printing = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "checkbutton_printing")); shortcuts.button(checkbutton_printing); checkbutton_project_management = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "checkbutton_project_management")); shortcuts.button(checkbutton_project_management); checkbutton_references_management = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "checkbutton_references_management")); shortcuts.button(checkbutton_references_management); checkbutton_styles = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "checkbutton_styles")); shortcuts.button(checkbutton_styles); checkbutton_styles_management = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "checkbutton_styles_management")); shortcuts.button(checkbutton_styles_management); checkbutton_project_notes = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "checkbutton_project_notes")); shortcuts.button(checkbutton_project_notes); checkbutton_project_notes_management = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "checkbutton_project_notes_management")); shortcuts.button(checkbutton_project_notes_management); checkbutton_references_and_find = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "checkbutton_references_find")); shortcuts.button(checkbutton_references_and_find); checkbutton_replace = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "checkbutton_replace")); shortcuts.button(checkbutton_replace); checkbutton_checks = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "checkbutton_checks")); shortcuts.button(checkbutton_checks); checkbutton_tools = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "checkbutton_tools")); shortcuts.button(checkbutton_tools); checkbutton_preferences = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "checkbutton_preferences")); shortcuts.button(checkbutton_preferences); checkbutton_remember_verse_chapter = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "checkbutton_remember_verse_chapter")); shortcuts.button(checkbutton_remember_verse_chapter); checkbutton_start_maximized = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "checkbutton_start_maximized")); shortcuts.button(checkbutton_start_maximized); InDialogHelp * indialoghelp = new InDialogHelp(featuresdialog, gtkbuilder, &shortcuts, "menu-preferences/user-interface"); cancelbutton = indialoghelp->cancelbutton; okbutton = indialoghelp->okbutton; shortcuts.process(); g_signal_connect((gpointer) radiobutton_basic, "toggled", G_CALLBACK(on_togglebutton_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_full, "toggled", G_CALLBACK(on_togglebutton_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_user, "toggled", G_CALLBACK(on_togglebutton_toggled), gpointer(this)); g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(on_okbutton_clicked), gpointer(this)); g_signal_connect((gpointer) checkbutton_printing, "toggled", G_CALLBACK(on_checkbutton_toggled), gpointer(this)); g_signal_connect((gpointer) checkbutton_project_management, "toggled", G_CALLBACK(on_checkbutton_toggled), gpointer(this)); g_signal_connect((gpointer) checkbutton_references_management, "toggled", G_CALLBACK(on_checkbutton_toggled), gpointer(this)); g_signal_connect((gpointer) checkbutton_styles, "toggled", G_CALLBACK(on_checkbutton_toggled), gpointer(this)); g_signal_connect((gpointer) checkbutton_styles_management, "toggled", G_CALLBACK(on_checkbutton_toggled), gpointer(this)); g_signal_connect((gpointer) checkbutton_project_notes, "toggled", G_CALLBACK(on_checkbutton_toggled), gpointer(this)); g_signal_connect((gpointer) checkbutton_project_notes_management, "toggled", G_CALLBACK(on_checkbutton_toggled), gpointer(this)); g_signal_connect((gpointer) checkbutton_references_and_find, "toggled", G_CALLBACK(on_checkbutton_toggled), gpointer(this)); g_signal_connect((gpointer) checkbutton_replace, "toggled", G_CALLBACK(on_checkbutton_toggled), gpointer(this)); g_signal_connect((gpointer) checkbutton_checks, "toggled", G_CALLBACK(on_checkbutton_toggled), gpointer(this)); g_signal_connect((gpointer) checkbutton_tools, "toggled", G_CALLBACK(on_checkbutton_toggled), gpointer(this)); gtk_widget_grab_focus(okbutton); gtk_widget_grab_default(okbutton); // Set the gui. extern Settings *settings; mode_set(settings->genconfig.features_mode_get()); list_set(settings->genconfig.features_list_get()); on_togglebutton(); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (checkbutton_remember_verse_chapter), settings->genconfig.remember_verse_per_chapter_get()); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (checkbutton_start_maximized), settings->genconfig.start_program_maximized_get()); } GuiDialog::~GuiDialog() { g_object_unref (gtkbuilder); gtk_widget_destroy(featuresdialog); } int GuiDialog::run() { return gtk_dialog_run(GTK_DIALOG(featuresdialog)); } void GuiDialog::on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((GuiDialog *) user_data)->on_okbutton(); } void GuiDialog::on_okbutton() // Store the new features. { // Settings object. extern Settings *settings; // Get the old and new features. unsigned int old_mode = settings->genconfig.features_mode_get(); unsigned int new_mode = mode_get(); ustring old_list = settings->genconfig.features_list_get(); ustring new_list = list_get(); // Store the data. settings->genconfig.features_mode_set(new_mode); settings->genconfig.features_list_set(new_list); settings->genconfig.remember_verse_per_chapter_set(gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (checkbutton_remember_verse_chapter))); settings->genconfig.start_program_maximized_set(gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (checkbutton_start_maximized))); // Restart needed if there was a change in the features. if ((old_mode != new_mode) || (old_list != new_list)) { gtkw_dialog_info(featuresdialog, "The changes will take effect after Bibledit-Gtk has been restarted"); } } void GuiDialog::on_togglebutton_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((GuiDialog *) user_data)->on_togglebutton(); } void GuiDialog::on_togglebutton() { bool usersettings = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_user)); gtk_widget_set_sensitive(checkbutton_printing, usersettings); gtk_widget_set_sensitive(checkbutton_project_management, usersettings); gtk_widget_set_sensitive(checkbutton_references_management, usersettings); gtk_widget_set_sensitive(checkbutton_styles, usersettings); gtk_widget_set_sensitive(checkbutton_styles_management, usersettings); gtk_widget_set_sensitive(checkbutton_project_notes, usersettings); gtk_widget_set_sensitive(checkbutton_project_notes_management, usersettings); gtk_widget_set_sensitive(checkbutton_references_and_find, usersettings); gtk_widget_set_sensitive(checkbutton_replace, usersettings); gtk_widget_set_sensitive(checkbutton_checks, usersettings); gtk_widget_set_sensitive(checkbutton_tools, usersettings); gtk_widget_set_sensitive(checkbutton_preferences, usersettings); } void GuiDialog::mode_set(unsigned int mode) // Sets the mode, e.g. basic, full or user-defined. { switch (mode) { case 0: { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_basic), true); break; } case 1: { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_full), true); break; } default: { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_user), true); } } } unsigned int GuiDialog::mode_get() // Gets the mode, e.g. basic, full, or user-defined. { if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_basic))) { return 0; } if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_full))) { return 1; } return 2; } void GuiDialog::list_set(ustring pattern) // Set the list of features. { // Note: The order of this list must be the same ad in function list_get (). gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_printing), bitpattern_take(pattern)); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_project_management), bitpattern_take(pattern)); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_references_management), bitpattern_take(pattern)); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_styles), bitpattern_take(pattern)); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_styles_management), bitpattern_take(pattern)); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_project_notes), bitpattern_take(pattern)); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_project_notes_management), bitpattern_take(pattern)); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_references_and_find), bitpattern_take(pattern)); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_replace), bitpattern_take(pattern)); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_checks), bitpattern_take(pattern)); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_tools), bitpattern_take(pattern)); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_preferences), bitpattern_take(pattern)); } ustring GuiDialog::list_get() // Get the list of features. { ustring pattern; // Note: The order of this list must be the same ad in function list_set (). bitpattern_add(pattern, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_printing))); bitpattern_add(pattern, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_project_management))); bitpattern_add(pattern, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_references_management))); bitpattern_add(pattern, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_styles))); bitpattern_add(pattern, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_styles_management))); bitpattern_add(pattern, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_project_notes))); bitpattern_add(pattern, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_project_notes_management))); bitpattern_add(pattern, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_references_and_find))); bitpattern_add(pattern, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_replace))); bitpattern_add(pattern, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_checks))); bitpattern_add(pattern, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_tools))); bitpattern_add(pattern, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_preferences))); return pattern; } void GuiDialog::on_checkbutton_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((GuiDialog *) user_data)->on_checkbutton(togglebutton); } void GuiDialog::on_checkbutton(GtkToggleButton * togglebutton) // Sets interdependent checkboxes. { bool switches_on = gtk_toggle_button_get_active(togglebutton); GtkWidget *button = GTK_WIDGET(togglebutton); if (button == checkbutton_printing) { } if (button == checkbutton_project_management) { } if (button == checkbutton_references_management) { if (switches_on) check(checkbutton_references_and_find, true); } if (button == checkbutton_styles) { if (!switches_on) check(checkbutton_styles_management, false); } if (button == checkbutton_styles_management) { if (switches_on) check(checkbutton_styles, true); } if (button == checkbutton_project_notes) { if (!switches_on) check(checkbutton_project_notes_management, false); } if (button == checkbutton_project_notes_management) { if (switches_on) check(checkbutton_project_notes, true); } if (button == checkbutton_references_and_find) { if (!switches_on) { check(checkbutton_references_management, false); check(checkbutton_replace, false); check(checkbutton_checks, false); } } if (button == checkbutton_replace) { if (switches_on) check(checkbutton_references_and_find, true); } if (button == checkbutton_checks) { if (switches_on) check(checkbutton_references_and_find, true); } if (button == checkbutton_tools) { } if (button == checkbutton_preferences) { } } void GuiDialog::check(GtkWidget * button, bool on) { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), on); } bibledit-gtk-4.9/src/dialoggui.h000664 000766 000024 00000004371 12221507136 016765 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGGUI_H #define INCLUDED_DIALOGGUI_H #include #include "ustring.h" class GuiDialog { public: GuiDialog (int dummy); ~GuiDialog (); int run (); protected: GtkBuilder *gtkbuilder; GtkWidget *featuresdialog; GtkWidget *radiobutton_basic; GtkWidget *radiobutton_full; GtkWidget *radiobutton_user; GtkWidget *checkbutton_printing; GtkWidget *checkbutton_project_management; GtkWidget *checkbutton_references_management; GtkWidget *checkbutton_styles; GtkWidget *checkbutton_styles_management; GtkWidget *checkbutton_project_notes; GtkWidget *checkbutton_project_notes_management; GtkWidget *checkbutton_references_and_find; GtkWidget *checkbutton_replace; GtkWidget *checkbutton_checks; GtkWidget *checkbutton_tools; GtkWidget *checkbutton_preferences; GtkWidget *checkbutton_remember_verse_chapter; GtkWidget *checkbutton_start_maximized; GtkWidget *cancelbutton; GtkWidget *okbutton; private: static void on_okbutton_clicked (GtkButton *button, gpointer user_data); void on_okbutton (); static void on_togglebutton_toggled (GtkToggleButton *togglebutton, gpointer user_data); void on_togglebutton (); void mode_set (unsigned int mode); unsigned int mode_get (); void list_set (ustring pattern); ustring list_get (); static void on_checkbutton_toggled (GtkToggleButton *togglebutton, gpointer user_data); void on_checkbutton (GtkToggleButton *togglebutton); void check (GtkWidget * button, bool on); }; #endif bibledit-gtk-4.9/src/dialogimportnotes.cpp000664 000766 000024 00000050745 12221507131 021120 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogimportnotes.h" #include "bible.h" #include "utilities.h" #include "dialogwait.h" #include "utilities.h" #include "notes_utils.h" #include "date_time_utils.h" #include #include "gtkwrappers.h" #include "gwrappers.h" #include "shell.h" #include "books.h" #include "help.h" #include "unixwrappers.h" #include "tiny_utilities.h" #define TEMP_FILE "bibledit.import.notes" ImportNotesDialog::ImportNotesDialog(int dummy) { importnotesdialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(importnotesdialog), "Import Notes"); gtk_window_set_position(GTK_WINDOW(importnotesdialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(importnotesdialog), TRUE); gtk_window_set_type_hint(GTK_WINDOW(importnotesdialog), GDK_WINDOW_TYPE_HINT_DIALOG); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(importnotesdialog)); gtk_widget_show(dialog_vbox1); vbox1 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), vbox1, TRUE, TRUE, 0); notebook = gtk_notebook_new(); gtk_widget_show(notebook); gtk_box_pack_start(GTK_BOX(vbox1), notebook, TRUE, TRUE, 0); gtk_container_set_border_width(GTK_CONTAINER(notebook), 4); gtk_notebook_set_show_tabs(GTK_NOTEBOOK(notebook), FALSE); vbox4 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox4); gtk_container_add(GTK_CONTAINER(notebook), vbox4); label13 = gtk_label_new("You are going to import notes into your notes editor.\n\nClick Forward to continue."); gtk_widget_show(label13); gtk_box_pack_start(GTK_BOX(vbox4), label13, FALSE, FALSE, 5); gtk_misc_set_alignment(GTK_MISC(label13), 0, 0.5); label24 = gtk_label_new(""); gtk_widget_show(label24); gtk_notebook_set_tab_label(GTK_NOTEBOOK(notebook), gtk_notebook_get_nth_page(GTK_NOTEBOOK(notebook), 0), label24); vbox2 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox2); gtk_container_add(GTK_CONTAINER(notebook), vbox2); label6 = gtk_label_new("Select the file to import"); gtk_widget_show(label6); gtk_box_pack_start(GTK_BOX(vbox2), label6, FALSE, FALSE, 10); select_directory_button = gtk_button_new(); gtk_widget_show(select_directory_button); gtk_box_pack_start(GTK_BOX(vbox2), select_directory_button, FALSE, FALSE, 0); alignment1 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment1); gtk_container_add(GTK_CONTAINER(select_directory_button), alignment1); hbox2 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox2); gtk_container_add(GTK_CONTAINER(alignment1), hbox2); image1 = gtk_image_new_from_stock("gtk-open", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image1); gtk_box_pack_start(GTK_BOX(hbox2), image1, FALSE, FALSE, 0); label8 = gtk_label_new_with_mnemonic(""); gtk_widget_show(label8); gtk_box_pack_start(GTK_BOX(hbox2), label8, FALSE, FALSE, 0); xml_file_label = gtk_label_new(""); gtk_widget_show(xml_file_label); gtk_box_pack_start(GTK_BOX(vbox2), xml_file_label, FALSE, FALSE, 10); label26 = gtk_label_new(""); gtk_widget_show(label26); gtk_notebook_set_tab_label(GTK_NOTEBOOK(notebook), gtk_notebook_get_nth_page(GTK_NOTEBOOK(notebook), 1), label26); vbox5 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox5); gtk_container_add(GTK_CONTAINER(notebook), vbox5); label18 = gtk_label_new("We now know which file to import.\nThe next thing is to check if the file is in Unicode format.\n\nIf it is not in Unicode format, you will be asked to convert it.\n\nNote: The conversion may take time, depending on the size of the file."); gtk_widget_show(label18); gtk_box_pack_start(GTK_BOX(vbox5), label18, FALSE, FALSE, 10); gtk_misc_set_alignment(GTK_MISC(label18), 0, 0.5); label28 = gtk_label_new(""); gtk_widget_show(label28); gtk_notebook_set_tab_label(GTK_NOTEBOOK(notebook), gtk_notebook_get_nth_page(GTK_NOTEBOOK(notebook), 2), label28); vbox6 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox6); gtk_container_add(GTK_CONTAINER(notebook), vbox6); label19 = gtk_label_new("It's now in Unicode format."); gtk_widget_show(label19); gtk_box_pack_start(GTK_BOX(vbox6), label19, FALSE, FALSE, 10); gtk_misc_set_alignment(GTK_MISC(label19), 0, 0.5); label30 = gtk_label_new(""); gtk_widget_show(label30); gtk_notebook_set_tab_label(GTK_NOTEBOOK(notebook), gtk_notebook_get_nth_page(GTK_NOTEBOOK(notebook), 3), label30); vbox8 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox8); gtk_container_add(GTK_CONTAINER(notebook), vbox8); label23 = gtk_label_new("All preparation is now ready.\n\nPress Apply to actually import the notes."); gtk_widget_show(label23); gtk_box_pack_start(GTK_BOX(vbox8), label23, FALSE, FALSE, 10); gtk_misc_set_alignment(GTK_MISC(label23), 0, 0.5); label32 = gtk_label_new(""); gtk_widget_show(label32); gtk_notebook_set_tab_label(GTK_NOTEBOOK(notebook), gtk_notebook_get_nth_page(GTK_NOTEBOOK(notebook), 4), label32); hbox1 = gtk_hbox_new(FALSE, 4); gtk_widget_show(hbox1); gtk_box_pack_start(GTK_BOX(vbox1), hbox1, FALSE, FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(hbox1), 4); backbutton = gtk_button_new_from_stock("gtk-go-back"); gtk_widget_show(backbutton); gtk_box_pack_start(GTK_BOX(hbox1), backbutton, FALSE, FALSE, 0); forwardbutton = gtk_button_new_from_stock("gtk-go-forward"); gtk_widget_show(forwardbutton); gtk_box_pack_start(GTK_BOX(hbox1), forwardbutton, FALSE, FALSE, 0); gtk_widget_set_can_default (GTK_WIDGET (forwardbutton), true); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(importnotesdialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(importnotesdialog, NULL, NULL, NULL); cancelbutton = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton); gtk_dialog_add_action_widget(GTK_DIALOG(importnotesdialog), cancelbutton, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton), true); applybutton = gtk_button_new_from_stock("gtk-apply"); gtk_widget_show(applybutton); gtk_dialog_add_action_widget(GTK_DIALOG(importnotesdialog), applybutton, GTK_RESPONSE_APPLY); gtk_widget_set_sensitive(applybutton, FALSE); gtk_widget_set_can_default (GTK_WIDGET (applybutton), true); g_signal_connect((gpointer) select_directory_button, "clicked", G_CALLBACK(on_select_file_button_clicked), gpointer(this)); g_signal_connect((gpointer) backbutton, "clicked", G_CALLBACK(on_backbutton_clicked), gpointer(this)); g_signal_connect((gpointer) forwardbutton, "clicked", G_CALLBACK(on_forwardbutton_clicked), gpointer(this)); g_signal_connect((gpointer) applybutton, "clicked", G_CALLBACK(on_applybutton_clicked), gpointer(this)); gtk_widget_grab_focus(forwardbutton); gtk_widget_grab_default(forwardbutton); set_gui(); } ImportNotesDialog::~ImportNotesDialog() { // Clean up temporary file. unlink(temporary_file(TEMP_FILE).c_str()); gtk_widget_destroy(importnotesdialog); } int ImportNotesDialog::run() { return gtk_dialog_run(GTK_DIALOG(importnotesdialog)); } void ImportNotesDialog::on_backbutton_clicked(GtkButton * button, gpointer user_data) { ((ImportNotesDialog *) user_data)->on_backbutton(); } void ImportNotesDialog::on_backbutton() { gtk_notebook_prev_page(GTK_NOTEBOOK(notebook)); set_gui(); } void ImportNotesDialog::on_forwardbutton_clicked(GtkButton * button, gpointer user_data) { ((ImportNotesDialog *) user_data)->on_forwardbutton(); } void ImportNotesDialog::on_forwardbutton() { gtk_notebook_next_page(GTK_NOTEBOOK(notebook)); set_gui(); } void ImportNotesDialog::on_select_file_button_clicked(GtkButton * button, gpointer user_data) { ((ImportNotesDialog *) user_data)->on_select_file_button(); } void ImportNotesDialog::on_select_file_button() { ustring filename = gtkw_file_chooser_open(importnotesdialog, "Open a file", ""); if (filename.empty()) return; file_to_import = filename; select_file_page(); } void ImportNotesDialog::set_gui() { gtk_widget_set_sensitive(backbutton, TRUE); gtk_widget_set_sensitive(forwardbutton, TRUE); gtk_widget_set_sensitive(applybutton, FALSE); gint currentpage = gtk_notebook_get_current_page(GTK_NOTEBOOK(notebook)); switch (currentpage) { case 0: { gtk_widget_set_sensitive(backbutton, FALSE); break; } case 1: { select_file_page(); break; } case 2: { // Nothing to do, text is already in the notebook. break; } case 3: { unicode_page(); break; } case 4: { // Some eye candy, because the process might take time. WaitDialog wd(500, 450, 300); wd.run(); // Make known corrections to the xml file. make_known_corrections_to_xml_file(); // Activate apply button. gtk_widget_set_sensitive(forwardbutton, FALSE); gtk_widget_set_sensitive(applybutton, TRUE); break; } } } void ImportNotesDialog::select_file_page() { // Show filename. gtk_label_set_text(GTK_LABEL(label8), file_to_import.c_str()); // See whether the file is of a known type. import_format = ifUnknown; if (!file_to_import.empty()) { GwSpawn spawn("head"); spawn.arg(file_to_import); spawn.read(); spawn.run(); for (unsigned int i = 0; i < spawn.standardout.size(); i++) { if (spawn.standardout[i].find("") != string::npos) import_format = ifBibleditNotesVersion3; if (spawn.standardout[i].find("") != string::npos) import_format = ifScriptureNotesVersion20; } // Info for user. ustring info_for_user; switch (import_format) { case ifUnknown: { info_for_user = "Bibledit-Gtk does not recognize the format of this file"; break; } case ifBibleditNotesVersion3: { note_element = "note"; reference_element = "references"; notetext_element = "text"; category_element = "category"; project_element = "project"; datemodified_element = "date-modified"; datecreated_element = "date-created"; createdby_element = "created-by"; info_for_user = "Found: Bibledit-Gtk Notes Version 3"; break; } case ifScriptureNotesVersion20: { note_element = "Note"; reference_element = "References"; notetext_element = "Contents"; category_element = "Status"; project_element = "Project"; datemodified_element = "ModificationDate"; datecreated_element = "CreationDate"; createdby_element = "CreatedBy"; info_for_user = "Found: TNE Scripture Notes Version 2.0"; break; } } gtk_label_set_text(GTK_LABEL(xml_file_label), info_for_user.c_str()); } // We only can go forward if we've found a known file. gtk_widget_set_sensitive(forwardbutton, import_format != ifUnknown); // Copy the xml file to the temporary location. if (import_format != ifUnknown) { unix_cp(file_to_import, temporary_file(TEMP_FILE)); } } void ImportNotesDialog::unicode_page() { // Filename of the file to import. ustring path = temporary_file(TEMP_FILE); // See whether the file contents is proper Unicode ustring file_contents; gchar *s; g_file_get_contents(path.c_str(), &s, NULL, NULL); file_contents = s; g_free(s); } void ImportNotesDialog::make_known_corrections_to_xml_file() { // Make a number of corrections to the xml file. ustring filename = temporary_file(TEMP_FILE); ReadText rt(filename, true); for (unsigned int i = 0; i < rt.lines.size(); i++) { // Get the line. ustring line = rt.lines[i]; // The Glib xml parser gives an error on lines like: //  // So remove that line. if (line.find("xml") != string::npos) line = ""; // Store the line again in the vector. rt.lines[i] = line; } // Write the corrected file back to disk. write_lines(filename, rt.lines); } void ImportNotesDialog::on_applybutton_clicked(GtkButton * button, gpointer user_data) { ((ImportNotesDialog *) user_data)->on_apply(); } void ImportNotesDialog::on_apply() /* Parse the xml file. The various handlers will then store the data in the database. */ { // Some error handling. bool was_error = false; ustring error_message; // Initialisation of depth control variables. depth = 0; depth_of_notetext = 100; // Get contents of file. ustring filename = temporary_file(TEMP_FILE); gchar *contents; gsize length; GError *error; error = NULL; if (!g_file_get_contents(filename.c_str(), &contents, &length, &error)) { cerr << error->message << endl; g_error_free(error); was_error = true; error_message = "Error reading xml file"; return; } // Set up parser. GMarkupParseContext *context; GMarkupParser parser = { start_element_handler, end_element_handler, text_handler, passthrough_handler, error_handler }; // Parse xml file. if (!was_error) { context = g_markup_parse_context_new(&parser, GMarkupParseFlags(0), gpointer(this), NULL); if (!g_markup_parse_context_parse(context, contents, length, NULL)) { g_markup_parse_context_free(context); was_error = true; error_message = "Error parsing the xml file"; } } if (!was_error) { if (!g_markup_parse_context_end_parse(context, NULL)) { g_markup_parse_context_free(context); was_error = true; error_message = "Error finishing parsing the xml file"; } } if (!was_error) g_markup_parse_context_free(context); // Display message? if (was_error) { gtkw_dialog_error(importnotesdialog, error_message); } // Update the notes categories with possible new ones imported. ReadText rt(notes_categories_filename()); notes_categories_add_from_database(rt.lines); write_lines(notes_categories_filename(), rt.lines); } void ImportNotesDialog::start_element_handler(GMarkupParseContext * context, const gchar * element_name, const gchar ** attribute_names, const gchar ** attribute_values, gpointer user_data, GError ** error) { ustring element; element = element_name; ((ImportNotesDialog *) user_data)->start_element_handler(element); } void ImportNotesDialog::end_element_handler(GMarkupParseContext * context, const gchar * element_name, gpointer user_data, GError ** error) { ustring element; element = element_name; ((ImportNotesDialog *) user_data)->end_element_handler(element); } void ImportNotesDialog::text_handler(GMarkupParseContext * context, const gchar * text, gsize text_len, gpointer user_data, GError ** error) { ustring utext; utext = text; ((ImportNotesDialog *) user_data)->text_handler(utext); } void ImportNotesDialog::passthrough_handler(GMarkupParseContext * context, const gchar * passthrough_text, gsize text_len, gpointer user_data, GError ** error) { } void ImportNotesDialog::error_handler(GMarkupParseContext * context, GError * error, gpointer user_data) { cerr << error->message << endl; } void ImportNotesDialog::start_element_handler(const ustring & element_name) /* When we encounter a new element that starts data, this handler deals with that. */ { // Deal with depth of the elements. depth++; // Store depth of the note, so that we can catch everything nested deeper, // and treat it as note text also. if (element_name == notetext_element) depth_of_notetext = depth; if (element_name == note_element) { // New note starts from now. Clear storage area for new data. reference_content.clear(); notetext_content.clear(); status_content.clear(); category_content.clear(); project_content.clear(); datemodified_content.clear(); datecreated_content.clear(); createdby_content.clear(); } // Store element currently open. current_element = element_name; } void ImportNotesDialog::end_element_handler(const ustring & element_name) /* When we encounter an element that ends data, this handler deals with that. */ { // If new paragraph, deal with that. if (current_element == "P") notetext_content.append("\n"); if (element_name == note_element) { // We are at the end of a note. Go through the data, and fill up // missing bits and pieces, and then store a new note in the database. // Right, let's get started. First the reference. ustring osis_reference; { // There may be more than one reference, so deal with each of them. ParseLine parse(reference_content); reference_content.clear(); for (unsigned int i = 0; i < parse.lines.size(); i++) { // Get the reference. Reference reference(0); if (reference_discover(0, 0, "", trim(parse.lines[i]), reference.book, reference.chapter, reference.verse)) { vector < int >verses = verses_encode(reference.verse); int book_chapter = reference_to_numerical_equivalent(books_id_to_english(reference.book), convert_to_string(reference.chapter), "0"); for (unsigned int i2 = 0; i2 < verses.size(); i2++) { reference_content.append(" "); reference_content.append(convert_to_string(int (book_chapter + verses[i2]))); } // Store the reference in OSIS format too. ustring osis_book = books_id_to_osis(reference.book); ustring osis_ref = osis_book + "." + convert_to_string(reference.chapter) + "." + reference.verse; if (!osis_reference.empty()) osis_reference.append(" "); osis_reference.append(osis_ref); } } reference_content.append(" "); // If we did not find any reference, take Genesis 0:0. if (reference_content.empty()) { reference_content = "0"; osis_reference = "Gen.0.0"; } } // Deal with the text of the note. notetext_content = trim(notetext_content); // Deal with the category of the note. category_content = trim(category_content); // Deal with the project name. project_content = trim(project_content); // Deal with the date modified. int julian_modified; julian_modified = date_time_julian_day_get_parse(datemodified_content); // Deal with the date created. int julian_created; julian_created = date_time_julian_day_get_parse(datecreated_content); // Deal with the user. createdby_content = trim(createdby_content); // We've cleaned and verified all data. Store this note. // ID (integer) gint unique_id; unique_id = notes_database_get_unique_id(); // References (text) // Project (text) // Category (text) // Note (text) Apostrophies need to be doubled before storing them. notetext_content = double_apostrophy(notetext_content); // Casefolded (text) ustring casefolded = notetext_content.casefold(); // Date created. // Date modified. // Username. // Logbook. ustring logbook; // Store the note to file. notes_store_one_in_file(unique_id, notetext_content, project_content, osis_reference, category_content, julian_created, createdby_content, julian_modified, logbook); } // Deal with depth of the elements. depth--; } void ImportNotesDialog::text_handler(const ustring & text) /* When we encounter the text inside an element, this handler deals with that. */ { if (current_element == reference_element) { reference_content.append(text); } else if (current_element == notetext_element) { notetext_content.append(text); } else if (current_element == category_element) { category_content.append(text); } else if (current_element == project_element) { project_content.append(text); } else if (current_element == datemodified_element) { datemodified_content.append(text); } else if (current_element == datecreated_element) { datecreated_content.append(text); } else if (current_element == createdby_element) { createdby_content.append(text); } if (depth > depth_of_notetext) notetext_content.append(text); } bibledit-gtk-4.9/src/dialogimportnotes.h000664 000766 000024 00000011454 12221507137 020565 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGIMPORT_NOTES_H #define INCLUDED_DIALOGIMPORT_NOTES_H #include #include "ustring.h" enum ImportFormat {ifUnknown, ifBibleditNotesVersion3, ifScriptureNotesVersion20}; class ImportNotesDialog { public: ImportNotesDialog (int dummy); ~ ImportNotesDialog (); int run (); protected: GtkWidget *importnotesdialog; GtkWidget *dialog_vbox1; GtkWidget *vbox1; GtkWidget *notebook; GtkWidget *vbox4; GtkWidget *label13; GtkWidget *label24; GtkWidget *vbox2; GtkWidget *label6; GtkWidget *select_directory_button; GtkWidget *alignment1; GtkWidget *hbox2; GtkWidget *image1; GtkWidget *label8; GtkWidget *xml_file_label; GtkWidget *label26; GtkWidget *vbox5; GtkWidget *label18; GtkWidget *label28; GtkWidget *vbox6; GtkWidget *label19; GtkWidget *label30; GtkWidget *vbox8; GtkWidget *label23; GtkWidget *label32; GtkWidget *hbox1; GtkWidget *backbutton; GtkWidget *forwardbutton; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton; GtkWidget *applybutton; private: ustring file_to_import; ImportFormat import_format; void set_gui (); void select_file_page (); void unicode_page (); void make_known_corrections_to_xml_file (); static void on_backbutton_clicked (GtkButton * button, gpointer user_data); void on_backbutton (); static void on_forwardbutton_clicked (GtkButton * button, gpointer user_data); void on_forwardbutton (); static void on_applybutton_clicked (GtkButton * button, gpointer user_data); static void on_select_file_button_clicked (GtkButton * button, gpointer user_data); void on_select_file_button (); void on_apply (); static void start_element_handler (GMarkupParseContext *context, const gchar *element_name, const gchar **attribute_names, const gchar **attribute_values, gpointer user_data, GError **error); void start_element_handler (const ustring& element_name); static void end_element_handler (GMarkupParseContext *context, const gchar *element_name, gpointer user_data, GError **error); void end_element_handler (const ustring& element_name); static void text_handler (GMarkupParseContext *context, const gchar *text, gsize text_len, gpointer user_data, GError **error); void text_handler (const ustring& text); static void passthrough_handler (GMarkupParseContext *context, const gchar *passthrough_text, gsize text_len, gpointer user_data, GError **error); static void error_handler (GMarkupParseContext *context, GError *error, gpointer user_data); // List of which elements are for what. ustring note_element; ustring reference_element; ustring notetext_element; ustring category_element; ustring project_element; ustring datemodified_element; ustring datecreated_element; ustring createdby_element; // Places to store data for gather together data for importing a new note. ustring reference_content; ustring notetext_content; ustring status_content; ustring category_content; ustring project_content; ustring datemodified_content; ustring datecreated_content; ustring createdby_content; // Some household data. ustring current_element; int depth; int depth_of_notetext; }; #endif bibledit-gtk-4.9/src/dialoginsertnote.cpp000644 000766 000024 00000113520 12460404402 020716 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialoginsertnote.h" #include "utilities.h" #include "directories.h" #include "combobox.h" #include "dialogentry.h" #include "gwrappers.h" #include "notetemplate.h" #include "usfmtools.h" #include "stylesheetutils.h" #include "shell.h" #include "settings.h" #include #include "help.h" #include "tidy.h" #include "screen.h" #include "tiny_utilities.h" InsertNoteDialog::InsertNoteDialog(NoteType dialogtype) { extern Settings *settings; mydialogtype = dialogtype; allow_entry_activate = true; insertnotedialog = gtk_dialog_new(); ustring title = "Insert "; switch (dialogtype) { case indtFootnote: title.append("footnote"); break; case indtEndnote: title.append("endnote"); break; case indtCrossreference: title.append("crossreference"); break; } gtk_window_set_title(GTK_WINDOW(insertnotedialog), title.c_str()); gtk_window_set_position(GTK_WINDOW(insertnotedialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(insertnotedialog), TRUE); gtk_window_set_resizable(GTK_WINDOW(insertnotedialog), FALSE); gtk_window_set_destroy_with_parent(GTK_WINDOW(insertnotedialog), TRUE); gtk_window_set_type_hint(GTK_WINDOW(insertnotedialog), GDK_WINDOW_TYPE_HINT_DIALOG); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(insertnotedialog)); gtk_widget_show(dialog_vbox1); vbox1 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), vbox1, TRUE, TRUE, 0); hbox1 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox1); gtk_box_pack_start(GTK_BOX(vbox1), hbox1, TRUE, TRUE, 0); gtk_container_set_border_width(GTK_CONTAINER(hbox1), 1); label1 = gtk_label_new_with_mnemonic("N_umbering"); gtk_widget_show(label1); gtk_box_pack_start(GTK_BOX(hbox1), label1, FALSE, FALSE, 0); GSList *radiobutton_numbering_automatic_group = NULL; radiobutton_numbering_automatic = gtk_radio_button_new_with_mnemonic(NULL, "Automatic"); gtk_widget_show(radiobutton_numbering_automatic); gtk_box_pack_start(GTK_BOX(hbox1), radiobutton_numbering_automatic, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_numbering_automatic), radiobutton_numbering_automatic_group); radiobutton_numbering_automatic_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_numbering_automatic)); radiobutton_numbering_none = gtk_radio_button_new_with_mnemonic(NULL, "None"); gtk_widget_show(radiobutton_numbering_none); gtk_box_pack_start(GTK_BOX(hbox1), radiobutton_numbering_none, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_numbering_none), radiobutton_numbering_automatic_group); radiobutton_numbering_automatic_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_numbering_none)); radiobutton_numbering_character = gtk_radio_button_new_with_mnemonic(NULL, "Character"); gtk_widget_show(radiobutton_numbering_character); gtk_box_pack_start(GTK_BOX(hbox1), radiobutton_numbering_character, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_numbering_character), radiobutton_numbering_automatic_group); radiobutton_numbering_automatic_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_numbering_character)); entry_numbering = gtk_entry_new(); gtk_widget_show(entry_numbering); gtk_box_pack_start(GTK_BOX(hbox1), entry_numbering, false, false, 0); gtk_entry_set_max_length(GTK_ENTRY(entry_numbering), 3); gtk_entry_set_activates_default(GTK_ENTRY(entry_numbering), TRUE); gtk_entry_set_width_chars(GTK_ENTRY(entry_numbering), 3); hseparator1 = gtk_hseparator_new(); gtk_widget_show(hseparator1); gtk_box_pack_start(GTK_BOX(vbox1), hseparator1, TRUE, TRUE, 6); checkbutton_automatic_reference = gtk_check_button_new_with_mnemonic("Automatically insert the current _reference"); gtk_widget_show(checkbutton_automatic_reference); gtk_box_pack_start(GTK_BOX(vbox1), checkbutton_automatic_reference, FALSE, FALSE, 0); hbox2 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox2); gtk_box_pack_start(GTK_BOX(vbox1), hbox2, FALSE, FALSE, 0); gtk_container_set_border_width(GTK_CONTAINER(hbox2), 1); checkbutton_chapter = gtk_check_button_new_with_mnemonic("Cha_pter"); gtk_widget_show(checkbutton_chapter); gtk_box_pack_start(GTK_BOX(hbox2), checkbutton_chapter, FALSE, FALSE, 0); entry_reference_separator = gtk_entry_new(); gtk_widget_show(entry_reference_separator); gtk_box_pack_start(GTK_BOX(hbox2), entry_reference_separator, FALSE, FALSE, 0); gtk_entry_set_max_length(GTK_ENTRY(entry_reference_separator), 3); gtk_entry_set_width_chars(GTK_ENTRY(entry_reference_separator), 3); checkbutton_verse = gtk_check_button_new_with_mnemonic("_Verse"); gtk_widget_show(checkbutton_verse); gtk_box_pack_start(GTK_BOX(hbox2), checkbutton_verse, FALSE, FALSE, 0); entry_reference_suffix = gtk_entry_new(); gtk_widget_show(entry_reference_suffix); gtk_box_pack_start(GTK_BOX(hbox2), entry_reference_suffix, FALSE, FALSE, 0); gtk_entry_set_max_length(GTK_ENTRY(entry_reference_suffix), 5); gtk_entry_set_width_chars(GTK_ENTRY(entry_reference_suffix), 5); vseparator1 = gtk_vseparator_new(); gtk_widget_show(vseparator1); gtk_box_pack_start(GTK_BOX(hbox2), vseparator1, FALSE, FALSE, 0); label_automatic_reference = gtk_label_new(""); gtk_widget_show(label_automatic_reference); gtk_box_pack_start(GTK_BOX(hbox2), label_automatic_reference, FALSE, FALSE, 0); // Add content button. hseparator5 = gtk_hseparator_new(); gtk_widget_show(hseparator5); gtk_box_pack_start(GTK_BOX(vbox1), hseparator5, TRUE, TRUE, 6); hbox6 = gtk_hbox_new(FALSE, 0); gtk_widget_show(hbox6); gtk_box_pack_start(GTK_BOX(vbox1), hbox6, FALSE, TRUE, 0); button_add = gtk_button_new(); gtk_widget_show(button_add); gtk_box_pack_start(GTK_BOX(hbox6), button_add, FALSE, FALSE, 0); alignment2 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment2); gtk_container_add(GTK_CONTAINER(button_add), alignment2); hbox7 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox7); gtk_container_add(GTK_CONTAINER(alignment2), hbox7); image2 = gtk_image_new_from_stock("gtk-add", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image2); gtk_box_pack_start(GTK_BOX(hbox7), image2, FALSE, FALSE, 0); label4 = gtk_label_new_with_mnemonic("_Add content"); gtk_widget_show(label4); gtk_box_pack_start(GTK_BOX(hbox7), label4, FALSE, FALSE, 0); // Templates. hseparator3 = gtk_hseparator_new(); gtk_widget_show(hseparator3); gtk_box_pack_start(GTK_BOX(vbox1), hseparator3, TRUE, TRUE, 6); label2 = gtk_label_new_with_mnemonic("_Templates"); gtk_widget_show(label2); gtk_box_pack_start(GTK_BOX(vbox1), label2, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label2), 0, 0.5); hbox3 = gtk_hbox_new(FALSE, 0); gtk_widget_show(hbox3); gtk_box_pack_start(GTK_BOX(vbox1), hbox3, TRUE, TRUE, 0); combobox_templates = gtk_combo_box_new_text(); gtk_widget_show(combobox_templates); gtk_box_pack_start(GTK_BOX(hbox3), combobox_templates, TRUE, TRUE, 0); gtk_widget_set_can_default (GTK_WIDGET (combobox_templates), true); button_template_new = gtk_button_new_from_stock("gtk-new"); gtk_widget_show(button_template_new); gtk_box_pack_start(GTK_BOX(hbox3), button_template_new, FALSE, FALSE, 0); button_template_delete = gtk_button_new_from_stock("gtk-delete"); gtk_widget_show(button_template_delete); gtk_box_pack_start(GTK_BOX(hbox3), button_template_delete, FALSE, FALSE, 0); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(insertnotedialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(insertnotedialog, NULL, NULL, "menu-none/insert-footnote-endnote-crossreference"); cancelbutton1 = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton1); gtk_dialog_add_action_widget(GTK_DIALOG(insertnotedialog), cancelbutton1, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton1), true); okbutton1 = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton1); gtk_dialog_add_action_widget(GTK_DIALOG(insertnotedialog), okbutton1, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton1), true); g_signal_connect((gpointer) radiobutton_numbering_automatic, "toggled", G_CALLBACK(on_radiobutton_numbering_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_numbering_none, "toggled", G_CALLBACK(on_radiobutton_numbering_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_numbering_character, "toggled", G_CALLBACK(on_radiobutton_numbering_toggled), gpointer(this)); g_signal_connect((gpointer) entry_numbering, "activate", G_CALLBACK(on_entry_numbering_activate), gpointer(this)); g_signal_connect((gpointer) checkbutton_automatic_reference, "toggled", G_CALLBACK(on_checkbutton_automatic_reference_toggled), gpointer(this)); g_signal_connect((gpointer) checkbutton_chapter, "toggled", G_CALLBACK(on_checkbutton_chapter_toggled), gpointer(this)); g_signal_connect((gpointer) entry_reference_separator, "changed", G_CALLBACK(on_entry_reference_separator_changed), gpointer(this)); g_signal_connect((gpointer) entry_reference_separator, "activate", G_CALLBACK(on_entry_reference_separator_activate), gpointer(this)); g_signal_connect((gpointer) checkbutton_verse, "toggled", G_CALLBACK(on_checkbutton_verse_toggled), gpointer(this)); g_signal_connect((gpointer) entry_reference_suffix, "changed", G_CALLBACK(on_entry_reference_suffix_changed), gpointer(this)); g_signal_connect((gpointer) entry_reference_suffix, "activate", G_CALLBACK(on_entry_reference_suffix_activate), gpointer(this)); g_signal_connect((gpointer) button_add, "clicked", G_CALLBACK(on_button_add_clicked), gpointer(this)); g_signal_connect((gpointer) combobox_templates, "changed", G_CALLBACK(on_combobox_templates_changed), gpointer(this)); g_signal_connect((gpointer) button_template_new, "clicked", G_CALLBACK(on_button_template_new_clicked), gpointer(this)); g_signal_connect((gpointer) button_template_delete, "clicked", G_CALLBACK(on_button_template_delete_clicked), gpointer(this)); g_signal_connect((gpointer) okbutton1, "clicked", G_CALLBACK(on_okbutton1_clicked), gpointer(this)); gtk_label_set_mnemonic_widget(GTK_LABEL(label2), combobox_templates); // Load available content markers. vector < Style > styles; stylesheet_get_styles(settings->genconfig.stylesheet_get(), styles); for (unsigned int i = 0; i < styles.size(); i++) { switch (dialogtype) { case indtFootnote: case indtEndnote: { if (styles[i].type == stFootEndNote) { if ((styles[i].subtype == fentStandardContent) || (styles[i].subtype == fentContent) || (styles[i].subtype == fentContentWithEndmarker) || (styles[i].subtype == fentParagraph)) { content_markers.push_back(styles[i].marker); content_endmarkers.push_back(styles[i].subtype == fentContentWithEndmarker); content_names.push_back(styles[i].name); } } break; } case indtCrossreference: { if (styles[i].type == stCrossreference) { if ((styles[i].subtype == ctStandardContent) || (styles[i].subtype == ctContent) || (styles[i].subtype == ctContentWithEndmarker)) { content_markers.push_back(styles[i].marker); content_endmarkers.push_back(styles[i].subtype == ctContentWithEndmarker); content_names.push_back(styles[i].name); } } break; } } } // Set gui. ustring template_name; switch (dialogtype) { case indtFootnote: template_name = settings->genconfig.insert_footnote_template_get(); break; case indtEndnote: template_name = settings->genconfig.insert_endnote_template_get(); break; case indtCrossreference: template_name = settings->genconfig.insert_xref_template_get(); break; } templates_load(template_name, true); on_combobox_templates(); dialog_position_restore(dptInsertNote, insertnotedialog); } InsertNoteDialog::~InsertNoteDialog() { dialog_position_save(dptInsertNote, insertnotedialog); gtk_widget_destroy(insertnotedialog); } int InsertNoteDialog::run() { return gtk_dialog_run(GTK_DIALOG(insertnotedialog)); } void InsertNoteDialog::on_radiobutton_numbering_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((InsertNoteDialog *) user_data)->on_radiobutton_numbering(togglebutton); } void InsertNoteDialog::on_radiobutton_numbering(GtkToggleButton * togglebutton) { gtk_label_set_mnemonic_widget(GTK_LABEL(label1), GTK_WIDGET(togglebutton)); if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_numbering_character))) { gtk_widget_set_sensitive(entry_numbering, true); } else { gtk_widget_set_sensitive(entry_numbering, false); } } int InsertNoteDialog::numbering_get() { if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_numbering_none))) return ntNone; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_numbering_character))) return ntCharacter; return ntAutomatic; } void InsertNoteDialog::numbering_set(int numbering) { NumberingType numberingtype = (NumberingType) numbering; switch (numberingtype) { case ntAutomatic: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_numbering_automatic), true); on_radiobutton_numbering(GTK_TOGGLE_BUTTON(radiobutton_numbering_automatic)); break; case ntNone: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_numbering_none), true); on_radiobutton_numbering(GTK_TOGGLE_BUTTON(radiobutton_numbering_none)); break; case ntCharacter: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_numbering_character), true); on_radiobutton_numbering(GTK_TOGGLE_BUTTON(radiobutton_numbering_character)); break; } } void InsertNoteDialog::on_entry_numbering_activate(GtkEntry * entry, gpointer user_data) { ((InsertNoteDialog *) user_data)->focus_next_widget(GTK_WIDGET(entry)); } void InsertNoteDialog::on_checkbutton_automatic_reference_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((InsertNoteDialog *) user_data)->on_checkbutton_automatic_reference(); } void InsertNoteDialog::on_checkbutton_automatic_reference() { bool active = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_automatic_reference)); gtk_widget_set_sensitive(checkbutton_chapter, active); gtk_widget_set_sensitive(checkbutton_verse, active); gtk_widget_set_sensitive(entry_reference_suffix, active); gtk_widget_set_sensitive(label_automatic_reference, active); on_checkbutton_chapter(); on_checkbutton_verse(); } void InsertNoteDialog::on_checkbutton_chapter_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((InsertNoteDialog *) user_data)->on_checkbutton_chapter(); } void InsertNoteDialog::on_checkbutton_chapter() { separator_sensitive_set(); reference_get(); } void InsertNoteDialog::separator_sensitive_set() { bool sensitive = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_automatic_reference)); if (sensitive) sensitive = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_chapter)); if (sensitive) sensitive = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_verse)); gtk_widget_set_sensitive(entry_reference_separator, sensitive); } void InsertNoteDialog::on_entry_reference_separator_changed(GtkEditable * editable, gpointer user_data) { ((InsertNoteDialog *) user_data)->on_entry_reference_separator_changed2(); } void InsertNoteDialog::on_entry_reference_separator_changed2() { reference_get(); } void InsertNoteDialog::on_entry_reference_separator_activate(GtkEntry * entry, gpointer user_data) { ((InsertNoteDialog *) user_data)->focus_next_widget(GTK_WIDGET(entry)); } void InsertNoteDialog::on_checkbutton_verse_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((InsertNoteDialog *) user_data)->on_checkbutton_verse(); } void InsertNoteDialog::on_checkbutton_verse() { separator_sensitive_set(); reference_get(); } void InsertNoteDialog::on_entry_reference_suffix_changed(GtkEditable * editable, gpointer user_data) { ((InsertNoteDialog *) user_data)->on_entry_reference_suffix_changed2(); } void InsertNoteDialog::on_entry_reference_suffix_changed2() { reference_get(); } void InsertNoteDialog::on_entry_reference_suffix_activate(GtkEntry * entry, gpointer user_data) { ((InsertNoteDialog *) user_data)->focus_next_widget(GTK_WIDGET(entry)); } ustring InsertNoteDialog::reference_get() // Returns the reference as is going to be inserted in the note. // Also set the label accordingly. { // Variable for result. ustring result; // Configuration extern Settings *settings; // If the separator widget is sensitive, get the chapter and verse. if (gtk_widget_get_sensitive (entry_reference_separator)) { result = settings->genconfig.chapter_get() + gtk_entry_get_text(GTK_ENTRY(entry_reference_separator)) + settings->genconfig.verse_get(); } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_chapter))) { result = settings->genconfig.chapter_get(); } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_verse))) { result = settings->genconfig.verse_get(); } // Add the suffix. result.append(gtk_entry_get_text(GTK_ENTRY(entry_reference_suffix))); // See whether we to insert it. if (!gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_automatic_reference))) result.clear(); // Set the label. ustring label; if (!result.empty()) label = "(" + result + ")"; gtk_label_set_text(GTK_LABEL(label_automatic_reference), label.c_str()); // Return result. return result; } void InsertNoteDialog::on_button_content_clicked(GtkButton * button, gpointer user_data) { ((InsertNoteDialog *) user_data)->on_button_content_remove(button); } void InsertNoteDialog::on_button_content_remove(GtkButton * button) { // Get the offset of the widget to remove. int widget_offset = -1; for (unsigned int i = 0; i < buttons_remove.size(); i++) { if (GTK_WIDGET(button) == buttons_remove[i]) widget_offset = i; } // Widget not found: bail out. if (widget_offset < 0) return; // Destroy the widgets. gtk_widget_destroy(vbox2s[widget_offset]); // Remove widget's pointers. vector_remove_content(vbox2s, widget_offset); vector_remove_content(combobox_styles, widget_offset); vector_remove_content(spinbutton_sizes, widget_offset); vector_remove_content(scrolledwindow_contents, widget_offset); vector_remove_content(textview_contents, widget_offset); vector_remove_content(checkbutton_contents, widget_offset); vector_remove_content(checkbutton_tidies, widget_offset); vector_remove_content(buttons_remove, widget_offset); vector_remove_content(buttons_remove_label, widget_offset); // Update shotcuts. set_dynamic_shortcuts(); } void InsertNoteDialog::vector_remove_content(vector < GtkWidget * >&container, int offset) { vector < GtkWidget * >::iterator iter; iter = container.begin(); for (int i = 0; i < offset; i++) iter++; container.erase(iter); } void InsertNoteDialog::on_button_add_clicked(GtkButton * button, gpointer user_data) { ((InsertNoteDialog *) user_data)->on_button_add(); } void InsertNoteDialog::on_button_add() // Adds a new content entry to the gui. { GtkWidget *vbox2; GtkWidget *hseparator4; GtkWidget *hbox8; GtkWidget *combobox_style; GtkWidget *label_size; GtkObject *spinbutton_size_adj; GtkWidget *spinbutton_size; GtkWidget *checkbutton_content; GtkWidget *vseparator2; GtkWidget *checkbutton_tidy; GtkWidget *vseparator3; GtkWidget *button_remove; GtkWidget *alignment1; GtkWidget *hbox5; GtkWidget *image1; GtkWidget *label3; GtkWidget *scrolledwindow_content; GtkWidget *textview_content; vbox2 = gtk_vbox_new(FALSE, 1); gtk_widget_show(vbox2); gtk_box_pack_start(GTK_BOX(vbox1), vbox2, TRUE, TRUE, 0); gtk_container_set_border_width(GTK_CONTAINER(vbox2), 1); hseparator4 = gtk_hseparator_new(); gtk_widget_show(hseparator4); gtk_box_pack_start(GTK_BOX(vbox2), hseparator4, TRUE, TRUE, 6); hbox8 = gtk_hbox_new(FALSE, 6); gtk_widget_show(hbox8); gtk_box_pack_start(GTK_BOX(vbox2), hbox8, TRUE, TRUE, 0); combobox_style = gtk_combo_box_new_text(); gtk_widget_show(combobox_style); gtk_box_pack_start(GTK_BOX(hbox8), combobox_style, TRUE, TRUE, 0); // Store the default size of the combobox for later use. gint defaultheight; { GtkRequisition sizerequisition; gtk_widget_size_request(combobox_style, &sizerequisition); defaultheight = (int)(sizerequisition.height * 0.8); } label_size = gtk_label_new("Size"); gtk_widget_show(label_size); gtk_box_pack_start(GTK_BOX(hbox8), label_size, FALSE, FALSE, 0); spinbutton_size_adj = gtk_adjustment_new(defaultheight, defaultheight, 30 * defaultheight, defaultheight, 3 * defaultheight, 0); spinbutton_size = gtk_spin_button_new(GTK_ADJUSTMENT(spinbutton_size_adj), 1, 0); gtk_widget_show(spinbutton_size); gtk_widget_set_size_request(spinbutton_size, defaultheight / 2, -1); gtk_box_pack_start(GTK_BOX(hbox8), spinbutton_size, FALSE, FALSE, 0); gtk_spin_button_set_numeric(GTK_SPIN_BUTTON(spinbutton_size), TRUE); checkbutton_content = gtk_check_button_new_with_mnemonic("Remember content"); gtk_widget_show(checkbutton_content); gtk_box_pack_start(GTK_BOX(hbox8), checkbutton_content, FALSE, FALSE, 0); vseparator2 = gtk_vseparator_new(); gtk_widget_show(vseparator2); gtk_box_pack_start(GTK_BOX(hbox8), vseparator2, TRUE, TRUE, 0); checkbutton_tidy = gtk_check_button_new_with_mnemonic("Tidy text"); gtk_widget_show(checkbutton_tidy); gtk_box_pack_start(GTK_BOX(hbox8), checkbutton_tidy, FALSE, FALSE, 0); vseparator3 = gtk_vseparator_new(); gtk_widget_show(vseparator3); gtk_box_pack_start(GTK_BOX(hbox8), vseparator3, TRUE, TRUE, 0); button_remove = gtk_button_new(); gtk_widget_show(button_remove); gtk_box_pack_start(GTK_BOX(hbox8), button_remove, FALSE, FALSE, 0); alignment1 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment1); gtk_container_add(GTK_CONTAINER(button_remove), alignment1); hbox5 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox5); gtk_container_add(GTK_CONTAINER(alignment1), hbox5); image1 = gtk_image_new_from_stock("gtk-remove", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image1); gtk_box_pack_start(GTK_BOX(hbox5), image1, FALSE, FALSE, 0); label3 = gtk_label_new_with_mnemonic(""); gtk_widget_show(label3); gtk_box_pack_start(GTK_BOX(hbox5), label3, FALSE, FALSE, 0); scrolledwindow_content = gtk_scrolled_window_new(NULL, NULL); gtk_widget_show(scrolledwindow_content); gtk_box_pack_start(GTK_BOX(vbox2), scrolledwindow_content, FALSE, FALSE, 0); gtk_widget_set_size_request(scrolledwindow_content, -1, defaultheight); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow_content), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scrolledwindow_content), GTK_SHADOW_IN); textview_content = gtk_text_view_new(); gtk_widget_show(textview_content); gtk_container_add(GTK_CONTAINER(scrolledwindow_content), textview_content); gtk_text_view_set_accepts_tab(GTK_TEXT_VIEW(textview_content), FALSE); gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(textview_content), GTK_WRAP_WORD); g_signal_connect((gpointer) button_remove, "clicked", G_CALLBACK(on_button_content_clicked), gpointer(this)); g_signal_connect((gpointer) spinbutton_size, "value_changed", G_CALLBACK(on_spinbutton_size_value_changed), gpointer(this)); g_signal_connect((gpointer) textview_content, "key_press_event", G_CALLBACK(on_textview_content_key_press_event), gpointer(this)); gtk_box_reorder_child(GTK_BOX(vbox1), vbox2, vbox2s.size() + 4); vector < ustring > lines; for (unsigned int i = 0; i < content_markers.size(); i++) { ustring line; line.append(content_names[i] + " (" + usfm_get_full_opening_marker(content_markers[i])); if (content_endmarkers[i]) line.append("..." + usfm_get_full_closing_marker(content_markers[i])); line.append(")"); lines.push_back(line); } combobox_set_strings(combobox_style, lines); if (lines.size() > 0) combobox_set_string(combobox_style, lines[0]); vbox2s.push_back(vbox2); combobox_styles.push_back(combobox_style); spinbutton_sizes.push_back(spinbutton_size); scrolledwindow_contents.push_back(scrolledwindow_content); textview_contents.push_back(textview_content); checkbutton_contents.push_back(checkbutton_content); checkbutton_tidies.push_back(checkbutton_tidy); buttons_remove.push_back(button_remove); buttons_remove_label.push_back(label3); set_dynamic_shortcuts(); } ustring InsertNoteDialog::template_filename_get(const ustring & template_name) { ustring filename; switch (mydialogtype) { case indtFootnote: filename = "template-footnote-"; break; case indtEndnote: filename = "template-endnote-"; break; case indtCrossreference: filename = "template-crossreference-"; break; } filename.append(template_name); return filename; } void InsertNoteDialog::templates_load(const ustring & template_name, bool update_gui) { updategui = update_gui; ReadFiles rd(Directories->get_configuration(), template_filename_get(""), ""); for (unsigned int i = 0; i < rd.files.size(); i++) rd.files[i].erase(0, template_filename_get("").length()); if (rd.files.size() == 0) rd.files.push_back(""); combobox_set_strings(combobox_templates, rd.files); for (unsigned int i = 0; i < rd.files.size(); i++) { if (rd.files[i] == template_name) { combobox_set_string(combobox_templates, template_name); } } updategui = true; } void InsertNoteDialog::on_combobox_templates_changed(GtkComboBox * combobox, gpointer user_data) { ((InsertNoteDialog *) user_data)->on_combobox_templates(); } void InsertNoteDialog::on_combobox_templates() // On a change of template, reload the values in the gui. { // Do nothing if we wish the gui not to be updated. if (!updategui) return; // Load the template. ustring template_name = combobox_get_active_string(combobox_templates); NoteTemplate notetemplate(gw_build_filename(Directories->get_configuration(), template_filename_get(template_name)), mydialogtype, false); // Set values in the fixed gui. gtk_entry_set_text(GTK_ENTRY(entry_numbering), notetemplate.anchor.c_str()); gtk_entry_set_text(GTK_ENTRY(entry_reference_separator), notetemplate.reference_division.c_str()); gtk_entry_set_text(GTK_ENTRY(entry_reference_suffix), notetemplate.reference_suffix.c_str()); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_chapter), notetemplate.reference_chapter); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_verse), notetemplate.reference_verse); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_automatic_reference), notetemplate.automatic_reference); // Clear away the dynamic gui. while (buttons_remove.size() > 0) on_button_content_remove(GTK_BUTTON(buttons_remove[0])); // Rebuild the dynamic gui. for (unsigned int i = 0; i < notetemplate.content_markers.size(); i++) { on_button_add(); combobox_set_string(combobox_styles[i], notetemplate.content_markers[i]); gtk_spin_button_set_value(GTK_SPIN_BUTTON(spinbutton_sizes[i]), notetemplate.content_sizes[i]); on_spinbutton_size(GTK_SPIN_BUTTON(spinbutton_sizes[i])); if (notetemplate.content_remembers[i]) { GtkTextBuffer *textbuffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(textview_contents[i])); gtk_text_buffer_set_text(textbuffer, notetemplate.content_texts[i].c_str(), -1); } gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_contents[i]), notetemplate.content_remembers[i]); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_tidies[i]), notetemplate.content_tidies[i]); } // Set remainder of gui. numbering_set(notetemplate.numbering); on_checkbutton_automatic_reference(); // Focus first content entry widget, if it is there. allow_entry_activate = true; focus_next_widget(entry_reference_suffix); } void InsertNoteDialog::on_button_template_new_clicked(GtkButton * button, gpointer user_data) { ((InsertNoteDialog *) user_data)->on_button_template_new(); } void InsertNoteDialog::on_button_template_new() { EntryDialog dialog("Template", "Enter a name for a new template", ""); dialog.run(); GwSpawn spawn("touch"); spawn.arg(gw_build_filename(Directories->get_configuration(), template_filename_get(dialog.entered_value))); spawn.run(); templates_load(dialog.entered_value, false); } void InsertNoteDialog::on_button_template_delete_clicked(GtkButton * button, gpointer user_data) { ((InsertNoteDialog *) user_data)->on_button_template_delete(); } void InsertNoteDialog::on_button_template_delete() { ustring filename = gw_build_filename(Directories->get_configuration(), template_filename_get(combobox_get_active_string(combobox_templates))); unlink(filename.c_str()); templates_load("", true); } void InsertNoteDialog::focus_next_widget(GtkWidget * widget) /* The point of this function is that, when an entry is focused and it gets activated (by Enter), then the next entry should be focused. This enables the user to quickly navigate through the gui and enter values. At the end the Ok button should be focused. */ { // There is a mechanism in place that any entry that activates within // a millisecond after the previos one, will not be handles. // This is because for some reason if an entry gets focus, it immediately // give the activated signal, so activating the next, and the next, until the // end of the chain. if (!allow_entry_activate) return; allow_entry_activate = false; g_timeout_add(1, GSourceFunc(on_timeout), gpointer(this)); int current_entry = 0; if (widget == entry_numbering) current_entry = 1; else if (widget == entry_reference_separator) current_entry = 2; else if (widget == entry_reference_suffix) current_entry = 3; else { for (unsigned int i = 0; i < textview_contents.size(); i++) if (gtk_widget_has_focus (textview_contents[i])) current_entry = 4; } switch (current_entry) { case 0: { if (gtk_widget_get_sensitive (entry_numbering)) { gtk_widget_grab_focus(entry_numbering); break; } } case 1: { if (gtk_widget_get_sensitive (entry_reference_separator)) { gtk_widget_grab_focus(entry_reference_separator); break; } } case 2: { if (gtk_widget_get_sensitive (entry_reference_suffix)) { gtk_widget_grab_focus(entry_reference_suffix); break; } } case 3: { if (textview_contents.empty()) break; gtk_widget_grab_focus(textview_contents[0]); break; } case 4: { unsigned int focused_entry = 0; for (unsigned int i = 0; i < textview_contents.size(); i++) { if (gtk_widget_has_focus (textview_contents[i])) focused_entry = i; } focused_entry++; if (focused_entry < textview_contents.size()) { gtk_widget_grab_focus(textview_contents[focused_entry]); break; } } case 5: { gtk_widget_grab_focus(okbutton1); } } } // MAP: I believe these two routines can be eliminated. Just set the // bool on on_timeout is set up. bool InsertNoteDialog::on_timeout(gpointer data) { ((InsertNoteDialog *) data)->timeout(); return false; } void InsertNoteDialog::timeout() { allow_entry_activate = true; } void InsertNoteDialog::on_okbutton1_clicked(GtkButton * button, gpointer user_data) { ((InsertNoteDialog *) user_data)->on_okbutton(); } void InsertNoteDialog::on_okbutton() { // Save the current gui. extern Settings *settings; NoteTemplate notetemplate(gw_build_filename(Directories->get_configuration(), template_filename_get(combobox_get_active_string(combobox_templates))), mydialogtype, true); notetemplate.numbering = numbering_get(); notetemplate.anchor = gtk_entry_get_text(GTK_ENTRY(entry_numbering)); notetemplate.automatic_reference = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_automatic_reference)); notetemplate.reference_chapter = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_chapter)); notetemplate.reference_division = gtk_entry_get_text(GTK_ENTRY(entry_reference_separator)); notetemplate.reference_verse = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_verse)); notetemplate.reference_suffix = gtk_entry_get_text(GTK_ENTRY(entry_reference_suffix)); notetemplate.content_markers.clear(); notetemplate.content_texts.clear(); notetemplate.content_remembers.clear(); notetemplate.content_tidies.clear(); notetemplate.content_sizes.clear(); for (unsigned int i = 0; i < vbox2s.size(); i++) { notetemplate.content_markers.push_back(combobox_get_active_string(combobox_styles[i])); // Get text, and convert new lines to spaces, as notes don't have newlines. GtkTextBuffer *textbuffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(textview_contents[i])); GtkTextIter start; gtk_text_buffer_get_start_iter(textbuffer, &start); GtkTextIter end; gtk_text_buffer_get_end_iter(textbuffer, &end); ustring text = gtk_text_buffer_get_text(textbuffer, &start, &end, false); replace_text(text, "\n", " "); if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_tidies[i]))) { tidy_text(text); } notetemplate.content_texts.push_back(text); notetemplate.content_remembers.push_back(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_contents[i]))); notetemplate.content_tidies.push_back(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_tidies[i]))); gtk_spin_button_update(GTK_SPIN_BUTTON(spinbutton_sizes[i])); gint size = gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(spinbutton_sizes[i])); notetemplate.content_sizes.push_back(size); } switch (mydialogtype) { case indtFootnote: { settings->genconfig.insert_footnote_template_set(combobox_get_active_string(combobox_templates)); break; } case indtEndnote: { settings->genconfig.insert_endnote_template_set(combobox_get_active_string(combobox_templates)); break; } case indtCrossreference: { settings->genconfig.insert_xref_template_set(combobox_get_active_string(combobox_templates)); break; } } // Get some markers. ustring reference_marker; switch (mydialogtype) { case indtFootnote: { reference_marker = "fr"; break; } case indtEndnote: { reference_marker = "fr"; break; } case indtCrossreference: { reference_marker = "xo"; break; } } // Add numbering. if (notetemplate.numbering == 0) rawtext.append("+"); else if (notetemplate.numbering == 1) rawtext.append("-"); else rawtext.append(notetemplate.anchor); rawtext.append(" "); // Deal with the reference. ustring reference = reference_get(); if (!reference.empty()) { rawtext.append(usfm_get_full_opening_marker(reference_marker)); rawtext.append(reference); } // Add possible content. for (unsigned int i = 0; i < notetemplate.content_markers.size(); i++) { ustring marker; size_t position, length; bool b; usfm_search_marker(notetemplate.content_markers[i], marker, position, length, b); if (!notetemplate.content_texts[i].empty()) { rawtext.append(usfm_get_full_opening_marker(marker)); rawtext.append(trim(notetemplate.content_texts[i])); for (unsigned int i2 = 0; i2 < content_markers.size(); i2++) { if (marker == content_markers[i2]) { if (content_endmarkers[i2]) { rawtext.append(usfm_get_full_closing_marker(marker)); } } } // Automatically add a space. rawtext = trim(rawtext); rawtext.append(" "); } } // Remove last space. rawtext = trim(rawtext); } void InsertNoteDialog::on_spinbutton_size_value_changed(GtkSpinButton * spinbutton, gpointer user_data) { ((InsertNoteDialog *) user_data)->on_spinbutton_size(spinbutton); } void InsertNoteDialog::on_spinbutton_size(GtkSpinButton * spinbutton) { // Get the offset of the widget to resize. Bail out if not found. int widget_offset = -1; for (unsigned int i = 0; i < spinbutton_sizes.size(); i++) { if (GTK_WIDGET(spinbutton) == spinbutton_sizes[i]) widget_offset = i; } if (widget_offset < 0) return; // Resize the widget. gtk_widget_set_size_request(scrolledwindow_contents[widget_offset], -1, gtk_spin_button_get_value_as_int(spinbutton)); } gboolean InsertNoteDialog::on_textview_content_key_press_event(GtkWidget * widget, GdkEventKey * event, gpointer user_data) // Handles pressing keys in the content textviews. { // Do not allow newlines in the editor, but when pressing Enter, go to the next widget. switch (event->keyval) { case GDK_KEY_Return: case GDK_KEY_KP_Enter: ((InsertNoteDialog *) user_data)->focus_next_widget(widget); return true; } // Handle other keypresses as usual. return false; } void InsertNoteDialog::set_dynamic_shortcuts() { for (unsigned int i = 0; i < buttons_remove_label.size(); i++) { ustring label = "_" + convert_to_string(i) + " Remove"; gtk_label_set_text_with_mnemonic(GTK_LABEL(buttons_remove_label[i]), label.c_str()); } } bibledit-gtk-4.9/src/dialoginsertnote.h000664 000766 000024 00000012305 12221507141 020363 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOG_INSERT_NOTE_H #define INCLUDED_DIALOG_INSERT_NOTE_H #include #include "types.h" #include "editor_aids.h" class InsertNoteDialog { public: InsertNoteDialog (NoteType dialogtype); ~InsertNoteDialog (); int run (); ustring rawtext; protected: private: // Dialog. GtkWidget *insertnotedialog; GtkWidget *dialog_vbox1; GtkWidget *vbox1; // Numbering. GtkWidget *hbox1; GtkWidget *label1; GtkWidget *radiobutton_numbering_automatic; GtkWidget *radiobutton_numbering_none; GtkWidget *radiobutton_numbering_character; GtkWidget *entry_numbering; // Automatic reference. GtkWidget *hseparator1; GtkWidget *checkbutton_automatic_reference; GtkWidget *hbox2; GtkWidget *checkbutton_chapter; GtkWidget *entry_reference_separator; GtkWidget *checkbutton_verse; GtkWidget *entry_reference_suffix; GtkWidget *vseparator1; GtkWidget *label_automatic_reference; // Content. vector vbox2s; vector combobox_styles; vector spinbutton_sizes; vector scrolledwindow_contents; vector textview_contents; vector checkbutton_contents; vector checkbutton_tidies; vector buttons_remove; vector buttons_remove_label; // Add content. GtkWidget *hseparator5; GtkWidget *hbox6; GtkWidget *button_add; GtkWidget *alignment2; GtkWidget *hbox7; GtkWidget *image2; GtkWidget *label4; // Templates. GtkWidget *hseparator3; GtkWidget *label2; GtkWidget *hbox3; GtkWidget *combobox_templates; GtkWidget *button_template_new; GtkWidget *button_template_delete; // Dialog. GtkWidget *dialog_action_area1; GtkWidget *cancelbutton1; GtkWidget *okbutton1; NoteType mydialogtype; vector content_markers; vector content_endmarkers; vector content_names; bool allow_entry_activate; static void on_radiobutton_numbering_toggled (GtkToggleButton *togglebutton, gpointer user_data); void on_radiobutton_numbering (GtkToggleButton *togglebutton); int numbering_get (); void numbering_set (int numbering); static void on_entry_numbering_activate (GtkEntry *entry, gpointer user_data); static void on_checkbutton_automatic_reference_toggled (GtkToggleButton *togglebutton, gpointer user_data); void on_checkbutton_automatic_reference (); static void on_checkbutton_chapter_toggled (GtkToggleButton *togglebutton, gpointer user_data); void on_checkbutton_chapter (); void separator_sensitive_set (); static void on_entry_reference_separator_changed (GtkEditable *editable, gpointer user_data); void on_entry_reference_separator_changed2 (); static void on_entry_reference_separator_activate (GtkEntry *entry, gpointer user_data); static void on_checkbutton_verse_toggled (GtkToggleButton *togglebutton, gpointer user_data); void on_checkbutton_verse (); static void on_entry_reference_suffix_changed (GtkEditable *editable, gpointer user_data); void on_entry_reference_suffix_changed2 (); static void on_entry_reference_suffix_activate (GtkEntry *entry, gpointer user_data); ustring reference_get (); static void on_button_content_clicked (GtkButton *button, gpointer user_data); void on_button_content_remove (GtkButton *button); void vector_remove_content (vector& container, int offset); static void on_button_add_clicked (GtkButton *button, gpointer user_data); void on_button_add (); ustring template_filename_get (const ustring& template_name); void templates_load (const ustring& template_name, bool update_gui); bool updategui; static void on_combobox_templates_changed (GtkComboBox *combobox, gpointer user_data); void on_combobox_templates (); static void on_button_template_new_clicked (GtkButton *button, gpointer user_data); void on_button_template_new (); static void on_button_template_delete_clicked (GtkButton *button, gpointer user_data); void on_button_template_delete (); void focus_next_widget (GtkWidget * widget); static bool on_timeout (gpointer data); void timeout (); static void on_okbutton1_clicked (GtkButton *button, gpointer user_data); void on_okbutton (); static void on_spinbutton_size_value_changed (GtkSpinButton *spinbutton, gpointer user_data); void on_spinbutton_size (GtkSpinButton *spinbutton); static gboolean on_textview_content_key_press_event (GtkWidget *widget, GdkEventKey *event, gpointer user_data); void set_dynamic_shortcuts (); }; #endif bibledit-gtk-4.9/src/dialoginserttable.cpp000664 000766 000024 00000011732 12221507141 021043 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialoginserttable.h" #include "help.h" #include "editor_aids.h" #include "usfmtools.h" InsertTableDialog::InsertTableDialog(const ustring & project) { inserttabledialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(inserttabledialog), "Insert table"); gtk_window_set_position(GTK_WINDOW(inserttabledialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(inserttabledialog), TRUE); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(inserttabledialog)); gtk_widget_show(dialog_vbox1); vbox1 = gtk_vbox_new(FALSE, 6); gtk_widget_show(vbox1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), vbox1, TRUE, TRUE, 0); label1 = gtk_label_new("Insert a new table"); gtk_widget_show(label1); gtk_box_pack_start(GTK_BOX(vbox1), label1, FALSE, FALSE, 0); table1 = gtk_table_new(2, 2, FALSE); gtk_widget_show(table1); gtk_box_pack_start(GTK_BOX(vbox1), table1, TRUE, TRUE, 0); gtk_table_set_row_spacings(GTK_TABLE(table1), 4); gtk_table_set_col_spacings(GTK_TABLE(table1), 4); label2 = gtk_label_new_with_mnemonic("_Rows:"); gtk_widget_show(label2); gtk_table_attach(GTK_TABLE(table1), label2, 0, 1, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label2), 1, 0.5); label3 = gtk_label_new_with_mnemonic("Co_lumns:"); gtk_widget_show(label3); gtk_table_attach(GTK_TABLE(table1), label3, 0, 1, 1, 2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label3), 1, 0.5); spinbutton_rows_adj = gtk_adjustment_new(2, 1, 100, 1, 10, 0); spinbutton_rows = gtk_spin_button_new(GTK_ADJUSTMENT(spinbutton_rows_adj), 1, 0); gtk_widget_show(spinbutton_rows); gtk_table_attach(GTK_TABLE(table1), spinbutton_rows, 1, 2, 0, 1, (GtkAttachOptions) (GTK_EXPAND), (GtkAttachOptions) (0), 0, 0); gtk_spin_button_set_numeric(GTK_SPIN_BUTTON(spinbutton_rows), TRUE); spinbutton_columns_adj = gtk_adjustment_new(2, 1, 4, 1, 10, 0); spinbutton_columns = gtk_spin_button_new(GTK_ADJUSTMENT(spinbutton_columns_adj), 1, 0); gtk_widget_show(spinbutton_columns); gtk_table_attach(GTK_TABLE(table1), spinbutton_columns, 1, 2, 1, 2, (GtkAttachOptions) (GTK_EXPAND), (GtkAttachOptions) (0), 0, 0); gtk_spin_button_set_numeric(GTK_SPIN_BUTTON(spinbutton_columns), TRUE); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(inserttabledialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(inserttabledialog, NULL, NULL, NULL); cancelbutton = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton); gtk_dialog_add_action_widget(GTK_DIALOG(inserttabledialog), cancelbutton, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton), true); okbutton = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton); gtk_dialog_add_action_widget(GTK_DIALOG(inserttabledialog), okbutton, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton), true); g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(on_okbutton_clicked), gpointer(this)); gtk_label_set_mnemonic_widget(GTK_LABEL(label2), spinbutton_rows); gtk_label_set_mnemonic_widget(GTK_LABEL(label3), spinbutton_columns); gtk_widget_grab_focus(okbutton); gtk_widget_grab_default(okbutton); } InsertTableDialog::~InsertTableDialog() { gtk_widget_destroy(inserttabledialog); } int InsertTableDialog::run() { return gtk_dialog_run(GTK_DIALOG(inserttabledialog)); } void InsertTableDialog::on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((InsertTableDialog *) user_data)->on_okbutton(); } void InsertTableDialog::on_okbutton() { unsigned int rows = gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(spinbutton_rows)); unsigned int columns = gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(spinbutton_columns)); for (unsigned int row = 0; row < rows; row++) { rawtext.append(usfm_get_full_opening_marker(style_get_table_row_marker(myproject))); for (unsigned int column = 1; column <= columns; column++) { rawtext.append(usfm_get_full_opening_marker(style_get_table_cell_marker(myproject, column))); } } } bibledit-gtk-4.9/src/dialoginserttable.h000664 000766 000024 00000003050 12221507147 020510 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOG_INSERT_TABLE_H #define INCLUDED_DIALOG_INSERT_TABLE_H #include #include "ustring.h" class InsertTableDialog { public: InsertTableDialog (const ustring& project); ~InsertTableDialog (); int run (); ustring rawtext; protected: GtkWidget *inserttabledialog; GtkWidget *dialog_vbox1; GtkWidget *vbox1; GtkWidget *label1; GtkWidget *table1; GtkWidget *label2; GtkWidget *label3; GtkObject *spinbutton_rows_adj; GtkWidget *spinbutton_rows; GtkObject *spinbutton_columns_adj; GtkWidget *spinbutton_columns; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton; GtkWidget *okbutton; private: ustring myproject; static void on_okbutton_clicked (GtkButton *button, gpointer user_data); void on_okbutton (); }; #endif bibledit-gtk-4.9/src/dialoglistview.cpp000664 000766 000024 00000024426 12221507142 020402 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "dialoglistview.h" #include "projectutils.h" #include "directories.h" #include "listview.h" #include "keyboard.h" #include "help.h" #include ListviewDialog::ListviewDialog(const ustring & title, vector &list, const ustring & focus, bool sortlist, gchar * help) // This dialog shows "list". // If the user selects one out of that, it returns it in "focus". { // Initialize variables. initialfocus = focus; action_text_1 = NULL; action_text_2 = NULL; // Build dialog. listviewdialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(listviewdialog), title.c_str()); gtk_window_set_position(GTK_WINDOW(listviewdialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(listviewdialog), TRUE); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG (listviewdialog)); gtk_widget_show(dialog_vbox1); vbox1 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), vbox1, TRUE, TRUE, 0); label1 = gtk_label_new("Type the first couple of characters of the item, or select it,\nand then press OK or Enter"); gtk_widget_show(label1); gtk_box_pack_start(GTK_BOX(vbox1), label1, FALSE, FALSE, 4); hbox1 = gtk_hbox_new(FALSE, 4); gtk_widget_show(hbox1); gtk_box_pack_start(GTK_BOX(vbox1), hbox1, TRUE, TRUE, 0); label_shortcut = gtk_label_new(""); gtk_widget_show(label_shortcut); gtk_box_pack_start(GTK_BOX(hbox1), label_shortcut, FALSE, FALSE, 0); label_action = gtk_label_new(""); gtk_widget_show(label_action); gtk_box_pack_start(GTK_BOX(hbox1), label_action, FALSE, FALSE, 0); notebook1 = gtk_notebook_new(); gtk_widget_show(notebook1); gtk_box_pack_start(GTK_BOX(vbox1), notebook1, TRUE, TRUE, 0); gtk_notebook_set_show_border(GTK_NOTEBOOK(notebook1), FALSE); gtk_notebook_set_show_tabs(GTK_NOTEBOOK(notebook1), FALSE); scrolledwindow1 = gtk_scrolled_window_new(NULL, NULL); gtk_widget_show(scrolledwindow1); gtk_container_add(GTK_CONTAINER(notebook1), scrolledwindow1); gtk_widget_set_size_request(scrolledwindow1, -1, 400); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow1), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); treeview1 = gtk_tree_view_new(); gtk_widget_show(treeview1); gtk_container_add(GTK_CONTAINER(scrolledwindow1), treeview1); gtk_tree_view_set_headers_visible(GTK_TREE_VIEW(treeview1), FALSE); // Storage, renderer, column and selection. store1 = gtk_list_store_new(1, G_TYPE_STRING); gtk_tree_view_set_model(GTK_TREE_VIEW(treeview1), GTK_TREE_MODEL(store1)); g_object_unref(store1); GtkCellRenderer *renderer = gtk_cell_renderer_text_new(); column1 = gtk_tree_view_column_new_with_attributes("", renderer, "text", 0, NULL); gtk_tree_view_append_column(GTK_TREE_VIEW(treeview1), column1); select1 = gtk_tree_view_get_selection(GTK_TREE_VIEW(treeview1)); gtk_tree_selection_set_mode(select1, GTK_SELECTION_SINGLE); // Fill the treeview with the items, sorted optionally if (sortlist) sort(list.begin(), list.end()); listview_set_strings(treeview1, store1, list); // Focus item. if (list.size() > 0) { listview_focus_string(treeview1, list[0]); } listview_focus_string(treeview1, focus); label_tab_1 = gtk_label_new(""); gtk_widget_show(label_tab_1); gtk_notebook_set_tab_label(GTK_NOTEBOOK(notebook1), gtk_notebook_get_nth_page(GTK_NOTEBOOK(notebook1), 0), label_tab_1); scrolledwindow2 = gtk_scrolled_window_new(NULL, NULL); gtk_widget_show(scrolledwindow2); gtk_container_add(GTK_CONTAINER(notebook1), scrolledwindow2); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow2), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); treeview2 = gtk_tree_view_new(); gtk_widget_show(treeview2); gtk_container_add(GTK_CONTAINER(scrolledwindow2), treeview2); gtk_tree_view_set_headers_visible(GTK_TREE_VIEW(treeview2), FALSE); // Storage, renderer, column and selection. store2 = gtk_list_store_new(1, G_TYPE_STRING); gtk_tree_view_set_model(GTK_TREE_VIEW(treeview2), GTK_TREE_MODEL(store2)); g_object_unref(store2); GtkCellRenderer *renderer2 = gtk_cell_renderer_text_new(); column2 = gtk_tree_view_column_new_with_attributes("", renderer2, "text", 0, NULL); gtk_tree_view_append_column(GTK_TREE_VIEW(treeview2), column2); select2 = gtk_tree_view_get_selection(GTK_TREE_VIEW(treeview2)); gtk_tree_selection_set_mode(select2, GTK_SELECTION_SINGLE); label_tab_2 = gtk_label_new(""); gtk_widget_show(label_tab_2); gtk_notebook_set_tab_label(GTK_NOTEBOOK(notebook1), gtk_notebook_get_nth_page(GTK_NOTEBOOK(notebook1), 1), label_tab_2); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG (listviewdialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(listviewdialog, NULL, NULL, help); cancelbutton = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton); gtk_dialog_add_action_widget(GTK_DIALOG(listviewdialog), cancelbutton, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton), true); okbutton = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton); gtk_dialog_add_action_widget(GTK_DIALOG(listviewdialog), okbutton, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton), true); g_signal_connect_after((gpointer) notebook1, "switch_page", G_CALLBACK(on_notebook1_switch_page), gpointer(this)); g_signal_connect((gpointer) treeview1, "row_activated", G_CALLBACK(on_treeview1_row_activated), gpointer(this)); g_signal_connect((gpointer) treeview2, "row_activated", G_CALLBACK(on_treeview1_row_activated), gpointer(this)); g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(static_on_okbutton_clicked), gpointer(this)); gtk_widget_grab_focus(treeview1); gtk_widget_grab_default(okbutton); // Gui. on_switch_page(); } ListviewDialog::~ListviewDialog() { gtk_widget_destroy(listviewdialog); } void ListviewDialog::two_pages(const gchar * tab1, const gchar * tab2, vector < ustring > &list, bool sortlist) { // Modify GUI. gtk_notebook_set_show_tabs(GTK_NOTEBOOK(notebook1), true); gtk_label_set_text(GTK_LABEL(label_tab_1), tab1); gtk_label_set_text(GTK_LABEL(label_tab_2), tab2); // Fill the treeview with the items, sorted optionally if (sortlist) sort(list.begin(), list.end()); listview_set_strings(treeview2, store2, list); // Focus an item. if (list.size() > 0) listview_focus_string(treeview2, list[0]); listview_focus_string(treeview2, initialfocus); // Switch to the second page if it has the initially focused item. // Focus the right treeview. set < ustring > items(list.begin(), list.end()); if (items.find(initialfocus) != items.end()) { on_focus(); gtk_widget_grab_focus(treeview2); } else { gtk_widget_grab_focus(treeview1); } } void ListviewDialog::tab_switcher(guint accel_key, GdkModifierType accel_mods, const gchar * acceleratortext, const gchar * actiontext1, const gchar * actiontext2) { // Integrate the accelerator. accel_group = gtk_accel_group_new(); gtk_widget_add_accelerator(listviewdialog, "activate_focus", accel_group, accel_key, accel_mods, GTK_ACCEL_VISIBLE); g_signal_connect((gpointer) listviewdialog, "activate_focus", G_CALLBACK(on_activate_focus), gpointer(this)); gtk_window_add_accel_group(GTK_WINDOW(listviewdialog), accel_group); // Store both of the action texts for the accelerator. action_text_1 = actiontext1; action_text_2 = actiontext2; // Update GUI. ustring infotext("Press "); infotext.append(acceleratortext); gtk_label_set_text(GTK_LABEL(label_shortcut), infotext.c_str()); on_switch_page(); } int ListviewDialog::run() { return gtk_dialog_run(GTK_DIALOG(listviewdialog)); } void ListviewDialog::on_treeview1_row_activated(GtkTreeView * treeview, GtkTreePath * path, GtkTreeViewColumn * column, gpointer user_data) { ((ListviewDialog *) user_data)->on_treeview(); } void ListviewDialog::on_treeview() { on_okbutton_clicked(); gtk_dialog_response(GTK_DIALOG(listviewdialog), GTK_RESPONSE_OK); } void ListviewDialog::static_on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((ListviewDialog *) user_data)->on_okbutton_clicked(); } void ListviewDialog::on_okbutton_clicked() { int page = gtk_notebook_get_current_page(GTK_NOTEBOOK(notebook1)); if (page == 0) { focus = listview_get_active_string(treeview1); } else { focus = listview_get_active_string(treeview2); } } void ListviewDialog::on_activate_focus(GtkWindow * window, gpointer user_data) { ((ListviewDialog *) user_data)->on_focus(); } void ListviewDialog::on_focus() { int page = gtk_notebook_get_current_page(GTK_NOTEBOOK(notebook1)); gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook1), 1 - page); } void ListviewDialog::on_notebook1_switch_page(GtkNotebook * notebook, GtkNotebookPage * page, guint page_num, gpointer user_data) { ((ListviewDialog *) user_data)->on_switch_page(); } void ListviewDialog::on_switch_page() { // Set the OK button (in)sensitive depending on whether an item is selected. int page = gtk_notebook_get_current_page(GTK_NOTEBOOK(notebook1)); bool sensitive; if (page == 0) { sensitive = !listview_get_active_string(treeview1).empty(); } else { sensitive = !listview_get_active_string(treeview2).empty(); } gtk_widget_set_sensitive(okbutton, sensitive); // Update the GUI. const gchar *actiontext; if (page == 0) { actiontext = action_text_2; } else { actiontext = action_text_1; } if (actiontext) gtk_label_set_text(GTK_LABEL(label_action), actiontext); } bibledit-gtk-4.9/src/dialoglistview.h000664 000766 000024 00000005230 12221507141 020036 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGLISTVIEW_H #define INCLUDED_DIALOGLISTVIEW_H #include class ListviewDialog { public: ListviewDialog (const ustring& title, vector& list, const ustring& focus, bool sortlist, gchar * help); ~ListviewDialog (); void two_pages (const gchar * tab1, const gchar * tab2, vector& list, bool sortlist); void tab_switcher (guint accel_key, GdkModifierType accel_mods, const gchar * acceleratortext, const gchar * actiontext1, const gchar * actiontext2); int run (); ustring focus; protected: GtkWidget *listviewdialog; GtkWidget *dialog_vbox1; GtkWidget *vbox1; GtkWidget *label1; GtkWidget *hbox1; GtkWidget *label_shortcut; GtkWidget *label_action; GtkWidget *notebook1; GtkWidget *scrolledwindow1; GtkWidget *treeview1; GtkWidget *label_tab_1; GtkWidget *scrolledwindow2; GtkWidget *treeview2; GtkWidget *label_tab_2; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton; GtkWidget *okbutton; GtkAccelGroup *accel_group; static void on_treeview1_row_activated (GtkTreeView *treeview, GtkTreePath *path, GtkTreeViewColumn *column, gpointer user_data); static void on_treeview2_row_activated (GtkTreeView *treeview, GtkTreePath *path, GtkTreeViewColumn *column, gpointer user_data); void on_treeview (); static void static_on_okbutton_clicked (GtkButton * button, gpointer user_data); void on_okbutton_clicked (); GtkListStore *store1; GtkTreeViewColumn *column1; GtkTreeSelection *select1; GtkListStore *store2; GtkTreeViewColumn *column2; GtkTreeSelection *select2; static void on_activate_focus (GtkWindow *window, gpointer user_data); void on_focus (); const gchar * action_text_1; const gchar * action_text_2; static void on_notebook1_switch_page (GtkNotebook *notebook, GtkNotebookPage *page, guint page_num, gpointer user_data); void on_switch_page (); ustring initialfocus; }; #endif bibledit-gtk-4.9/src/dialoglistviewm.cpp000664 000766 000024 00000011607 12221507134 020555 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "dialoglistviewm.h" #include "projectutils.h" #include "directories.h" #include "listview.h" #include "keyboard.h" #include "help.h" #include "screen.h" ListviewMDialog::ListviewMDialog(const ustring & title, vector &list, bool sortlist, gchar * help) // This dialog shows "list". // It returns the selected rows in "foci". { // Build dialog. dialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(dialog), title.c_str()); gtk_window_set_position(GTK_WINDOW(dialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(dialog), TRUE); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(dialog)); gtk_widget_show(dialog_vbox1); vbox1 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), vbox1, TRUE, TRUE, 0); label1 = gtk_label_new("Select one or more items, and then press OK or Enter"); gtk_widget_show(label1); gtk_box_pack_start(GTK_BOX(vbox1), label1, FALSE, FALSE, 4); scrolledwindow = gtk_scrolled_window_new(NULL, NULL); gtk_widget_show(scrolledwindow); gtk_box_pack_start(GTK_BOX(vbox1), scrolledwindow, TRUE, TRUE, 0); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); treeview = gtk_tree_view_new(); gtk_widget_show(treeview); gtk_container_add(GTK_CONTAINER(scrolledwindow), treeview); gtk_tree_view_set_headers_visible(GTK_TREE_VIEW(treeview), FALSE); // Storage, renderer, column and selection. store = gtk_list_store_new(1, G_TYPE_STRING); gtk_tree_view_set_model(GTK_TREE_VIEW(treeview), GTK_TREE_MODEL(store)); g_object_unref(store); GtkCellRenderer *renderer = gtk_cell_renderer_text_new(); gtk_tree_view_insert_column_with_attributes(GTK_TREE_VIEW(treeview), -1, "", renderer, "text", 0, NULL); gtk_tree_selection_set_mode(gtk_tree_view_get_selection(GTK_TREE_VIEW(treeview)), GTK_SELECTION_MULTIPLE); // Fill the treeview with the items, sorted optionally if (sortlist) sort(list.begin(), list.end()); listview_set_strings(treeview, store, list); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(dialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(dialog, NULL, NULL, help); cancelbutton = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton); gtk_dialog_add_action_widget(GTK_DIALOG(dialog), cancelbutton, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton), true); okbutton = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton); gtk_dialog_add_action_widget(GTK_DIALOG(dialog), okbutton, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton), true); g_signal_connect_after((gpointer) treeview, "button_release_event", G_CALLBACK(on_treeview_button_event), gpointer(this)); g_signal_connect_after((gpointer) treeview, "key_release_event", G_CALLBACK(on_treeview_key_event), gpointer(this)); g_signal_connect((gpointer) treeview, "row_activated", G_CALLBACK(on_treeview_row_activated), gpointer(this)); gtk_widget_grab_focus(treeview); gtk_widget_grab_default(okbutton); new DialogAutoScaler (dialog, G_MAXINT); } ListviewMDialog::~ListviewMDialog() { gtk_widget_destroy(dialog); } int ListviewMDialog::run() { return gtk_dialog_run(GTK_DIALOG(dialog)); } gboolean ListviewMDialog::on_treeview_button_event(GtkWidget * widget, GdkEventButton * event, gpointer user_data) { ((ListviewMDialog *) user_data)->on_treeview_cursor(); return FALSE; } gboolean ListviewMDialog::on_treeview_key_event(GtkWidget * widget, GdkEventKey * event, gpointer user_data) { ((ListviewMDialog *) user_data)->on_treeview_cursor(); return FALSE; } void ListviewMDialog::on_treeview_cursor() { foci = listview_get_active_strings(treeview); } void ListviewMDialog::on_treeview_row_activated(GtkTreeView * treeview, GtkTreePath * path, GtkTreeViewColumn * column, gpointer user_data) { ((ListviewMDialog *) user_data)->on_treeview(); } void ListviewMDialog::on_treeview() { gtk_dialog_response(GTK_DIALOG(dialog), GTK_RESPONSE_OK); } bibledit-gtk-4.9/src/dialoglistviewm.h000664 000766 000024 00000003367 12221507151 020225 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGLISTVIEWM_H #define INCLUDED_DIALOGLISTVIEWM_H #include class ListviewMDialog { public: ListviewMDialog (const ustring& title, vector& list, bool sortlist, gchar * help); ~ListviewMDialog (); int run (); vector foci; protected: GtkWidget *dialog; GtkWidget *dialog_vbox1; GtkWidget *vbox1; GtkWidget *label1; GtkWidget *scrolledwindow; GtkWidget *treeview; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton; GtkWidget *okbutton; static gboolean on_treeview_button_event(GtkWidget *widget, GdkEventButton *event, gpointer user_data); static gboolean on_treeview_key_event(GtkWidget *widget, GdkEventKey *event, gpointer user_data); void on_treeview_cursor(); static void on_treeview_row_activated(GtkTreeView * treeview, GtkTreePath * path, GtkTreeViewColumn * column, gpointer user_data); void on_treeview(); GtkListStore *store; GtkTreeViewColumn *column; GtkTreeSelection *select; }; #endif bibledit-gtk-4.9/src/dialogmaintenance.cpp000664 000766 000024 00000014314 12221507140 021007 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "dialogmaintenance.h" #include "help.h" #include "html.h" #include "kjv.h" #include "mechonmamre.h" #include "htmlbrowser.h" MaintenanceDialog::MaintenanceDialog(int dummy) { dialog = gtk_dialog_new (); gtk_window_set_title (GTK_WINDOW (dialog), "Maintenance"); gtk_window_set_position (GTK_WINDOW (dialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal (GTK_WINDOW (dialog), TRUE); gtk_window_set_default_size (GTK_WINDOW (dialog), 800, 600); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG (dialog)); gtk_widget_show (dialog_vbox1); scrolledwindow = gtk_scrolled_window_new (NULL, NULL); gtk_widget_show (scrolledwindow); gtk_box_pack_start (GTK_BOX (dialog_vbox1), scrolledwindow, TRUE, TRUE, 0); gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (scrolledwindow), GTK_SHADOW_IN); webview = webkit_web_view_new(); gtk_widget_show (webview); gtk_container_add(GTK_CONTAINER(scrolledwindow), webview); g_signal_connect((gpointer) webview, "navigation-policy-decision-requested", G_CALLBACK(on_navigation_policy_decision_requested), gpointer(this)); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(dialog)); gtk_widget_show (dialog_action_area1); gtk_button_box_set_layout (GTK_BUTTON_BOX (dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(dialog, NULL, NULL, NULL); cancelbutton = gtk_button_new_from_stock ("gtk-cancel"); gtk_widget_show (cancelbutton); gtk_dialog_add_action_widget (GTK_DIALOG (dialog), cancelbutton, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton), true); okbutton = gtk_button_new_from_stock ("gtk-ok"); gtk_widget_show (okbutton); gtk_dialog_add_action_widget (GTK_DIALOG (dialog), okbutton, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton), true); gtk_widget_grab_focus (webview); gtk_widget_grab_default (okbutton); // Home page. load_webview (""); } MaintenanceDialog::~MaintenanceDialog() { gtk_widget_destroy(dialog); } int MaintenanceDialog::run() { return gtk_dialog_run(GTK_DIALOG(dialog)); } gboolean MaintenanceDialog::on_navigation_policy_decision_requested (WebKitWebView *web_view, WebKitWebFrame *frame, WebKitNetworkRequest *request, WebKitWebNavigationAction *navigation_action, WebKitWebPolicyDecision *policy_decision, gpointer user_data) { ((MaintenanceDialog *) user_data)->navigation_policy_decision_requested (request, navigation_action, policy_decision); return true; } void MaintenanceDialog::navigation_policy_decision_requested (WebKitNetworkRequest *request, WebKitWebNavigationAction *navigation_action, WebKitWebPolicyDecision *policy_decision) { // Store scrolling position for the now active url. GtkAdjustment * adjustment = gtk_scrolled_window_get_vadjustment (GTK_SCROLLED_WINDOW (scrolledwindow)); scrolling_position[active_url] = gtk_adjustment_get_value (adjustment); // Get the reason for this navigation policy request. WebKitWebNavigationReason reason = webkit_web_navigation_action_get_reason (navigation_action); // If a new page if loaded, allow the navigation, and exit. if (reason == WEBKIT_WEB_NAVIGATION_REASON_OTHER) { webkit_web_policy_decision_use (policy_decision); return; } // Don't follow pseudo-links clicked on this page. webkit_web_policy_decision_ignore (policy_decision); // Load new page depending on the pseudo-link clicked. load_webview (webkit_network_request_get_uri (request)); } void MaintenanceDialog::load_webview (const gchar * url) { // New url. active_url = url; // Start writing a html page. HtmlWriter2 htmlwriter (""); bool display_another_page = true; if (active_url == mechon_mamre_html_entry_url ()) { html_add_home (htmlwriter); mechon_mamre_detailed_page (htmlwriter); } else if (active_url == mechon_mamre_download_url ()) { display_another_page = false; htmlbrowser ("http://www.mechon-mamre.org/dlct.htm", false, true); } else if (active_url == mechon_mamre_import_url ()) { mechon_mamre_action_page (htmlwriter); } else if (active_url == kjv_html_entry_url ()) { html_add_home (htmlwriter); kjv_detailed_page (htmlwriter); } else if (active_url == kjv_create_database_url ()) { html_add_home (htmlwriter); kjv_action_page (htmlwriter); } else { // The home page. htmlwriter.heading_open (3); htmlwriter.text_add ("Maintenance"); htmlwriter.heading_close (); htmlwriter.paragraph_open(); htmlwriter.text_add ("Some actions may have great impact on Bibledit-Gtk. Use with care."); htmlwriter.paragraph_close(); // Mechon Mamre Hebrew text link. mechon_mamre_home_entry (htmlwriter); // Import Sword KJV text link. kjv_home_entry (htmlwriter); } htmlwriter.finish(); if (display_another_page) { // Load the page. webkit_web_view_load_string (WEBKIT_WEB_VIEW (webview), htmlwriter.html.c_str(), NULL, NULL, NULL); // Scroll to the position that possibly was stored while this url was last active. GtkAdjustment * adjustment = gtk_scrolled_window_get_vadjustment (GTK_SCROLLED_WINDOW (scrolledwindow)); gtk_adjustment_set_value (adjustment, scrolling_position[active_url]); } } void MaintenanceDialog::html_add_home (HtmlWriter2& htmlwriter) { htmlwriter.paragraph_open(); htmlwriter.hyperlink_add ("home", "Home"); htmlwriter.paragraph_close(); } bibledit-gtk-4.9/src/dialogmaintenance.h000664 000766 000024 00000003521 12221507136 020457 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOG_MAINTENANCE_H #define INCLUDED_DIALOG_MAINTENANCE_H #include "libraries.h" #include #include "ustring.h" #include "htmlwriter2.h" #include class MaintenanceDialog { public: MaintenanceDialog (int dummy); ~MaintenanceDialog (); int run (); protected: GtkWidget *dialog; GtkWidget *dialog_vbox1; GtkWidget *scrolledwindow; GtkWidget *webview; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton; GtkWidget *okbutton; private: static gboolean on_navigation_policy_decision_requested (WebKitWebView *web_view, WebKitWebFrame *frame, WebKitNetworkRequest *request, WebKitWebNavigationAction *navigation_action, WebKitWebPolicyDecision *policy_decision, gpointer user_data); void navigation_policy_decision_requested (WebKitNetworkRequest *request, WebKitWebNavigationAction *navigation_action, WebKitWebPolicyDecision *policy_decision); void load_webview (const gchar * url); ustring active_url; map scrolling_position; void html_add_home (HtmlWriter2& htmlwriter); }; #endif bibledit-gtk-4.9/src/dialogmerge.cpp000664 000766 000024 00000025555 12221507145 017642 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogmerge.h" #include "help.h" #include "settings.h" #include "gwrappers.h" #include "screen.h" #include "utilities.h" MergeDialog::MergeDialog(const ustring & text) { event_textbuffer = 0; extern Settings *settings; mergedialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(mergedialog), "Merge"); gtk_window_set_position(GTK_WINDOW(mergedialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(mergedialog), TRUE); gtk_window_set_default_size(GTK_WINDOW(mergedialog), (int)(settings->genconfig.screen_width_get() * 0.8), (int)(settings->genconfig.screen_height_get() * 0.9)); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG (mergedialog)); gtk_widget_show(dialog_vbox1); label = gtk_label_new("The merge operation needs manual intervention. Each place that needs intervention shows two buttons with the two alternatives. Please press the buttons with the correct text."); gtk_label_set_line_wrap(GTK_LABEL(label), true); gtk_widget_show(label); gtk_box_pack_start(GTK_BOX(dialog_vbox1), label, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label), 0, 0.5); scrolledwindow = gtk_scrolled_window_new(NULL, NULL); gtk_widget_show(scrolledwindow); gtk_box_pack_start(GTK_BOX(dialog_vbox1), scrolledwindow, TRUE, TRUE, 0); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scrolledwindow), GTK_SHADOW_IN); textview = gtk_text_view_new(); gtk_widget_show(textview); gtk_container_add(GTK_CONTAINER(scrolledwindow), textview); gtk_text_view_set_accepts_tab(GTK_TEXT_VIEW(textview), FALSE); gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(textview), GTK_WRAP_WORD); textbuffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(textview)); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(mergedialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(mergedialog, NULL, NULL, NULL); cancelbutton = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton); gtk_dialog_add_action_widget(GTK_DIALOG(mergedialog), cancelbutton, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton), true); okbutton = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton); gtk_dialog_add_action_widget(GTK_DIALOG(mergedialog), okbutton, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton), true); gtk_widget_set_sensitive(okbutton, false); g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(on_okbutton_clicked), gpointer(this)); g_signal_connect_after((gpointer) textbuffer, "changed", G_CALLBACK(on_textbuffer_changed), gpointer(this)); gtk_widget_grab_focus(textview); gtk_widget_grab_default(okbutton); load_text(text); } MergeDialog::~MergeDialog() { gtk_widget_destroy(mergedialog); } int MergeDialog::run() { return gtk_dialog_run(GTK_DIALOG(mergedialog)); } void MergeDialog::load_text(ustring text) { // Variables for loading text in the textview. size_t pos; GtkTextIter iter; // Preprocess empty replacements. preprocess_empty_replacements(text); // Goo through the text looking for markers and processing them. pos = text.find(merge_conflict_markup(1)); while (pos != string::npos) { // Insert the bit of text before the first conflict marker. gtk_text_buffer_get_end_iter(textbuffer, &iter); gtk_text_buffer_insert(textbuffer, &iter, text.substr(0, pos).c_str(), -1); text.erase(0, pos + merge_conflict_markup(1).length()); // Retrieve the first alternative. ustring alternative1; pos = text.find(merge_conflict_markup(2)); if (pos != string::npos) { alternative1 = text.substr(1, pos - 2); text.erase(0, pos + merge_conflict_markup(2).length()); if (alternative1.empty()) alternative1 = empty_text(); } // Insert a button with the first alternative as a label. gtk_text_buffer_get_end_iter(textbuffer, &iter); GtkTextChildAnchor *childanchor1 = gtk_text_buffer_create_child_anchor(textbuffer, &iter); GtkWidget *button1 = gtk_button_new_with_label(alternative1.c_str()); gtk_text_view_add_child_at_anchor(GTK_TEXT_VIEW(textview), button1, childanchor1); gtk_widget_show_all(button1); g_signal_connect((gpointer) button1, "clicked", G_CALLBACK(on_mergebutton_clicked), gpointer(this)); // Store data about first alternative. MergeButton mergebutton1; mergebutton1.childanchor = childanchor1; mergebutton1.button = button1; mergebutton1.text = alternative1; // Retrieve the second alternative. ustring alternative2; pos = text.find(merge_conflict_markup(3)); if (pos != string::npos) { alternative2 = text.substr(1, pos - 2); text.erase(0, pos + merge_conflict_markup(3).length()); if (alternative2.empty()) alternative2 = empty_text(); } // Insert a button with the second alternative as a label. gtk_text_buffer_get_end_iter(textbuffer, &iter); GtkTextChildAnchor *childanchor2 = gtk_text_buffer_create_child_anchor(textbuffer, &iter); GtkWidget *button2 = gtk_button_new_with_label(alternative2.c_str()); gtk_text_view_add_child_at_anchor(GTK_TEXT_VIEW(textview), button2, childanchor2); gtk_widget_show_all(button2); g_signal_connect((gpointer) button2, "clicked", G_CALLBACK(on_mergebutton_clicked), gpointer(this)); // Store data about second alternative. MergeButton mergebutton2; mergebutton2.childanchor = childanchor2; mergebutton2.button = button2; mergebutton2.text = alternative2; // Store the button pair. MergeButtonPair mergebuttonpair; mergebuttonpair.button1 = mergebutton1; mergebuttonpair.button2 = mergebutton2; buttonpairs.push_back(mergebuttonpair); // Next iteration. pos = text.find(merge_conflict_markup(1)); } // Load remaining text in textview. gtk_text_buffer_get_end_iter(textbuffer, &iter); gtk_text_buffer_insert(textbuffer, &iter, text.substr(0, pos).c_str(), -1); // Scroll to beginning of buffer. gtk_text_buffer_get_start_iter(textbuffer, &iter); gtk_text_buffer_place_cursor(textbuffer, &iter); screen_scroll_to_iterator(GTK_TEXT_VIEW(textview), &iter); } void MergeDialog::on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((MergeDialog *) user_data)->on_okbutton(); } void MergeDialog::on_okbutton() { GtkTextIter startiter, enditer; gtk_text_buffer_get_start_iter(textbuffer, &startiter); gtk_text_buffer_get_end_iter(textbuffer, &enditer); reconciled_text = gtk_text_buffer_get_text(textbuffer, &startiter, &enditer, false); replace_text(reconciled_text, " ", " "); replace_text(reconciled_text, " ", " "); } void MergeDialog::on_textbuffer_changed(GtkTextBuffer * textbuffer, gpointer user_data) { ((MergeDialog *) user_data)->on_textbuffer(); } void MergeDialog::on_textbuffer() { gw_destroy_source(event_textbuffer); event_textbuffer = g_timeout_add_full(G_PRIORITY_DEFAULT, 200, GSourceFunc(on_textbuffer_delayed), gpointer(this), NULL); } bool MergeDialog::on_textbuffer_delayed(gpointer user_data) { ((MergeDialog *) user_data)->on_text_buffer_execute(); return false; } void MergeDialog::on_text_buffer_execute() { // Set the OK button sensitive if there are no conflicts anymore. bool conflicts_present = false; GtkTextIter iter; gtk_text_buffer_get_start_iter(textbuffer, &iter); do { if (gtk_text_iter_get_child_anchor(&iter)) { conflicts_present = true; } } while (gtk_text_iter_forward_char(&iter)); gtk_widget_set_sensitive(okbutton, !conflicts_present); } void MergeDialog::on_mergebutton_clicked(GtkButton * button, gpointer user_data) { ((MergeDialog *) user_data)->on_mergebutton(button); } void MergeDialog::on_mergebutton(GtkButton * button) // If a merge button is clicked, it inserts the right text, and deletes // the pair of buttons. { GtkWidget *mybutton = GTK_WIDGET(button); for (unsigned int i = 0; i < buttonpairs.size(); i++) { bool match = false; if (mybutton == buttonpairs[i].button1.button) match = true; if (mybutton == buttonpairs[i].button2.button) match = true; if (match) { ustring text; if (mybutton == buttonpairs[i].button1.button) { text = buttonpairs[i].button1.text; } if (mybutton == buttonpairs[i].button2.button) { text = buttonpairs[i].button2.text; } if (text == empty_text()) text.clear(); GtkTextIter iter, iter2; gtk_text_buffer_get_iter_at_child_anchor(textbuffer, &iter, buttonpairs[i].button1.childanchor); gtk_text_buffer_place_cursor(textbuffer, &iter); iter2 = iter; gtk_text_iter_forward_char(&iter2); gtk_text_buffer_delete(textbuffer, &iter, &iter2); gtk_text_buffer_get_iter_at_child_anchor(textbuffer, &iter, buttonpairs[i].button2.childanchor); iter2 = iter; gtk_text_iter_forward_char(&iter2); gtk_text_buffer_delete(textbuffer, &iter, &iter2); if (!text.empty()) gtk_text_buffer_insert_at_cursor(textbuffer, text.c_str(), -1); } } } ustring MergeDialog::empty_text() // The empty text is for cases that there was no text. { return ""; } void MergeDialog::preprocess_empty_replacements(ustring & text) /* There are cases that one text is completely removed in a conflict situation. The replacement for this text is empty. In the merge routine this shows as: <<<<<<< /home/joe/.bibledit_temp/merge/file1 servant of Jesus Christ and ======= >>>>>>> /home/joe/.bibledit_temp/merge/file3 And in the internal texts this shows as: __conflict__marker__before__ servant of Jesus Christ and __conflict__marker__middle__ __conflict__marker__after__ This function handles this case so that it does not lead to confusion. */ { replace_text(text, merge_conflict_markup(1) + " " + merge_conflict_markup(2), merge_conflict_markup(1) + " " + merge_conflict_markup(2)); replace_text(text, merge_conflict_markup(2) + " " + merge_conflict_markup(3), merge_conflict_markup(2) + " " + merge_conflict_markup(3)); } bibledit-gtk-4.9/src/dialogmerge.h000664 000766 000024 00000003567 12221507137 017307 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGMERGE_H #define INCLUDED_DIALOGMERGE_H #include #include "ustring.h" #include "merge_utils.h" class MergeDialog { public: MergeDialog (const ustring& text); ~MergeDialog (); int run (); ustring reconciled_text; protected: GtkWidget *mergedialog; GtkWidget *dialog_vbox1; GtkWidget *label; GtkWidget *scrolledwindow; GtkWidget *textview; GtkTextBuffer * textbuffer; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton; GtkWidget *okbutton; private: void load_text (ustring text); vector buttonpairs; static void on_okbutton_clicked (GtkButton *button, gpointer user_data); void on_okbutton (); static void on_textbuffer_changed (GtkTextBuffer * textbuffer, gpointer user_data); void on_textbuffer (); guint event_textbuffer; static bool on_textbuffer_delayed (gpointer user_data); void on_text_buffer_execute (); static void on_mergebutton_clicked (GtkButton *button, gpointer user_data); void on_mergebutton (GtkButton *button); ustring empty_text (); void preprocess_empty_replacements (ustring& text); }; #endif bibledit-gtk-4.9/src/dialogmychecks.cpp000664 000766 000024 00000033272 12221507141 020340 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogmychecks.h" #include "help.h" #include "utilities.h" #include "settings.h" #include "scripturechecks.h" #include "shortcuts.h" MyChecksDialog::MyChecksDialog(WindowReferences * references_window) { // Save variables. my_references_window = references_window; // Shortcuts. Shortcuts shortcuts(0); // Build gui. mychecksdialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(mychecksdialog), "My checks"); gtk_window_set_position(GTK_WINDOW(mychecksdialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(mychecksdialog), TRUE); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(mychecksdialog)); gtk_widget_show(dialog_vbox1); vbox1 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), vbox1, TRUE, TRUE, 0); label1 = gtk_label_new("Chapters and verses"); gtk_widget_show(label1); gtk_box_pack_start(GTK_BOX(vbox1), label1, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label1), 0, 0.5); checkbutton_chapters_verses = gtk_check_button_new_with_mnemonic("Chapters and verses"); gtk_widget_show(checkbutton_chapters_verses); gtk_box_pack_start(GTK_BOX(vbox1), checkbutton_chapters_verses, FALSE, FALSE, 0); shortcuts.button(checkbutton_chapters_verses); hseparator1 = gtk_hseparator_new(); gtk_widget_show(hseparator1); gtk_box_pack_start(GTK_BOX(vbox1), hseparator1, TRUE, TRUE, 0); label2 = gtk_label_new("Markers"); gtk_widget_show(label2); gtk_box_pack_start(GTK_BOX(vbox1), label2, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label2), 0, 0.5); checkbutton_markers_validate = gtk_check_button_new_with_mnemonic("Validate"); gtk_widget_show(checkbutton_markers_validate); gtk_box_pack_start(GTK_BOX(vbox1), checkbutton_markers_validate, FALSE, FALSE, 0); shortcuts.button(checkbutton_markers_validate); checkbutton_markers_count = gtk_check_button_new_with_mnemonic("Count"); gtk_widget_show(checkbutton_markers_count); gtk_box_pack_start(GTK_BOX(vbox1), checkbutton_markers_count, FALSE, FALSE, 0); shortcuts.button(checkbutton_markers_count); checkbutton_markers_compare = gtk_check_button_new_with_mnemonic("Compare"); gtk_widget_show(checkbutton_markers_compare); gtk_box_pack_start(GTK_BOX(vbox1), checkbutton_markers_compare, FALSE, FALSE, 0); shortcuts.button(checkbutton_markers_compare); checkbutton_markers_spacing = gtk_check_button_new_with_mnemonic("Spacing"); gtk_widget_show(checkbutton_markers_spacing); gtk_box_pack_start(GTK_BOX(vbox1), checkbutton_markers_spacing, FALSE, FALSE, 0); shortcuts.button(checkbutton_markers_spacing); hseparator2 = gtk_hseparator_new(); gtk_widget_show(hseparator2); gtk_box_pack_start(GTK_BOX(vbox1), hseparator2, TRUE, TRUE, 0); label3 = gtk_label_new("Characters"); gtk_widget_show(label3); gtk_box_pack_start(GTK_BOX(vbox1), label3, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label3), 0, 0.5); checkbutton_characters_inventory = gtk_check_button_new_with_mnemonic("Inventory"); gtk_widget_show(checkbutton_characters_inventory); gtk_box_pack_start(GTK_BOX(vbox1), checkbutton_characters_inventory, FALSE, FALSE, 0); shortcuts.button(checkbutton_characters_inventory); checkbutton_characters_unwanted_patterns = gtk_check_button_new_with_mnemonic("Unwanted patterns"); gtk_widget_show(checkbutton_characters_unwanted_patterns); gtk_box_pack_start(GTK_BOX(vbox1), checkbutton_characters_unwanted_patterns, FALSE, FALSE, 0); shortcuts.button(checkbutton_characters_unwanted_patterns); hseparator3 = gtk_hseparator_new(); gtk_widget_show(hseparator3); gtk_box_pack_start(GTK_BOX(vbox1), hseparator3, TRUE, TRUE, 0); label4 = gtk_label_new("Words"); gtk_widget_show(label4); gtk_box_pack_start(GTK_BOX(vbox1), label4, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label4), 0, 0.5); checkbutton_words_capitalization = gtk_check_button_new_with_mnemonic("Capitalization"); gtk_widget_show(checkbutton_words_capitalization); gtk_box_pack_start(GTK_BOX(vbox1), checkbutton_words_capitalization, FALSE, FALSE, 0); shortcuts.button(checkbutton_words_capitalization); checkbutton_words_repetition = gtk_check_button_new_with_mnemonic("Repetition"); gtk_widget_show(checkbutton_words_repetition); gtk_box_pack_start(GTK_BOX(vbox1), checkbutton_words_repetition, FALSE, FALSE, 0); shortcuts.button(checkbutton_words_repetition); checkbutton_words_unwanted = gtk_check_button_new_with_mnemonic("Unwanted"); gtk_widget_show(checkbutton_words_unwanted); gtk_box_pack_start(GTK_BOX(vbox1), checkbutton_words_unwanted, FALSE, FALSE, 0); shortcuts.button(checkbutton_words_unwanted); checkbutton_words_inventory = gtk_check_button_new_with_mnemonic("Inventory"); gtk_widget_show(checkbutton_words_inventory); gtk_box_pack_start(GTK_BOX(vbox1), checkbutton_words_inventory, FALSE, FALSE, 0); shortcuts.button(checkbutton_words_inventory); hseparator4 = gtk_hseparator_new(); gtk_widget_show(hseparator4); gtk_box_pack_start(GTK_BOX(vbox1), hseparator4, TRUE, TRUE, 0); label5 = gtk_label_new("Punctuation"); gtk_widget_show(label5); gtk_box_pack_start(GTK_BOX(vbox1), label5, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label5), 0, 0.5); checkbutton_punctuation_matching_pairs = gtk_check_button_new_with_mnemonic("Matching pairs"); gtk_widget_show(checkbutton_punctuation_matching_pairs); gtk_box_pack_start(GTK_BOX(vbox1), checkbutton_punctuation_matching_pairs, FALSE, FALSE, 0); shortcuts.button(checkbutton_punctuation_matching_pairs); hseparator5 = gtk_hseparator_new(); gtk_widget_show(hseparator5); gtk_box_pack_start(GTK_BOX(vbox1), hseparator5, TRUE, TRUE, 0); label6 = gtk_label_new("References"); gtk_widget_show(label6); gtk_box_pack_start(GTK_BOX(vbox1), label6, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label6), 0, 0.5); checkbutton_references_inventory = gtk_check_button_new_with_mnemonic("Inventory"); gtk_widget_show(checkbutton_references_inventory); gtk_box_pack_start(GTK_BOX(vbox1), checkbutton_references_inventory, FALSE, FALSE, 0); shortcuts.button(checkbutton_references_inventory); checkbutton_references_validate = gtk_check_button_new_with_mnemonic("Validate"); gtk_widget_show(checkbutton_references_validate); gtk_box_pack_start(GTK_BOX(vbox1), checkbutton_references_validate, FALSE, FALSE, 0); shortcuts.button(checkbutton_references_validate); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(mychecksdialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(mychecksdialog, NULL, &shortcuts, NULL); cancelbutton = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton); gtk_dialog_add_action_widget(GTK_DIALOG(mychecksdialog), cancelbutton, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton), true); shortcuts.stockbutton(cancelbutton); okbutton = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton); gtk_dialog_add_action_widget(GTK_DIALOG(mychecksdialog), okbutton, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton), true); shortcuts.stockbutton(okbutton); shortcuts.process(); g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(on_okbutton_clicked), gpointer(this)); gtk_widget_grab_default(okbutton); gtk_widget_grab_focus(okbutton); // Set checkbuttons. extern Settings *settings; ustring pattern = settings->genconfig.mychecks_get(); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_chapters_verses), bitpattern_take(pattern)); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_markers_validate), bitpattern_take(pattern)); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_markers_count), bitpattern_take(pattern)); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_markers_compare), bitpattern_take(pattern)); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_characters_inventory), bitpattern_take(pattern)); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_characters_unwanted_patterns), bitpattern_take(pattern)); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_words_capitalization), bitpattern_take(pattern)); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_words_repetition), bitpattern_take(pattern)); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_words_unwanted), bitpattern_take(pattern)); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_words_inventory), bitpattern_take(pattern)); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_punctuation_matching_pairs), bitpattern_take(pattern)); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_markers_spacing), bitpattern_take(pattern)); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_references_inventory), bitpattern_take(pattern)); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_references_validate), bitpattern_take(pattern)); } MyChecksDialog::~MyChecksDialog() { gtk_widget_destroy(mychecksdialog); } int MyChecksDialog::run() { return gtk_dialog_run(GTK_DIALOG(mychecksdialog)); } void MyChecksDialog::on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((MyChecksDialog *) user_data)->on_okbutton(); } void MyChecksDialog::on_okbutton() { // Hide widget. Necessary because else the cancelling of the various checks does not work. gtk_widget_hide(mychecksdialog); // Save the state of the checkbuttons. ustring pattern; bitpattern_add(pattern, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_chapters_verses))); bitpattern_add(pattern, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_markers_validate))); bitpattern_add(pattern, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_markers_count))); bitpattern_add(pattern, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_markers_compare))); bitpattern_add(pattern, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_characters_inventory))); bitpattern_add(pattern, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_characters_unwanted_patterns))); bitpattern_add(pattern, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_words_capitalization))); bitpattern_add(pattern, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_words_repetition))); bitpattern_add(pattern, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_words_unwanted))); bitpattern_add(pattern, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_words_inventory))); bitpattern_add(pattern, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_punctuation_matching_pairs))); bitpattern_add(pattern, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_markers_spacing))); bitpattern_add(pattern, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_references_inventory))); bitpattern_add(pattern, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_references_validate))); extern Settings *settings; settings->genconfig.mychecks_set(pattern); // Collect all checking results. CollectCheckingResults results(0); // Do all the checks. bool keep_going = true; if (bitpattern_take(pattern)) if (keep_going) keep_going = scripture_checks_chapters_verses(NULL, &results); if (bitpattern_take(pattern)) if (keep_going) keep_going = scripture_checks_validate_usfms(NULL, &results); if (bitpattern_take(pattern)) if (keep_going) keep_going = scripture_checks_count_usfms(false); if (bitpattern_take(pattern)) if (keep_going) keep_going = scripture_checks_compare_usfms(NULL, &results); if (bitpattern_take(pattern)) if (keep_going) keep_going = scripture_checks_count_characters(false); if (bitpattern_take(pattern)) if (keep_going) keep_going = scripture_checks_unwanted_patterns(NULL, &results); if (bitpattern_take(pattern)) if (keep_going) keep_going = scripture_checks_capitalization(NULL, &results); if (bitpattern_take(pattern)) if (keep_going) keep_going = scripture_checks_repetition(NULL, &results); if (bitpattern_take(pattern)) if (keep_going) keep_going = scripture_checks_unwanted_words(NULL, &results); if (bitpattern_take(pattern)) if (keep_going) keep_going = scripture_checks_word_inventory(false); if (bitpattern_take(pattern)) if (keep_going) keep_going = scripture_checks_matching_pairs(NULL, &results); if (bitpattern_take(pattern)) if (keep_going) keep_going = scripture_checks_usfm_spacing(NULL, &results); if (bitpattern_take(pattern)) if (keep_going) keep_going = scripture_checks_references_inventory(false); if (bitpattern_take(pattern)) if (keep_going) keep_going = scripture_checks_validate_references(NULL, &results); // Display checking results. if (keep_going) checks_display_references_comments(results.references, results.comments, my_references_window); } bibledit-gtk-4.9/src/dialogmychecks.h000664 000766 000024 00000004333 12221507137 020006 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOMYCHECKS_H #define INCLUDED_DIALOMYCHECKS_H #include #include "ustring.h" #include "windowreferences.h" class MyChecksDialog { public: MyChecksDialog (WindowReferences * references_window); ~MyChecksDialog (); int run (); protected: GtkWidget *mychecksdialog; GtkWidget *dialog_vbox1; GtkWidget *vbox1; GtkWidget *label1; GtkWidget *checkbutton_chapters_verses; GtkWidget *hseparator1; GtkWidget *label2; GtkWidget *checkbutton_markers_validate; GtkWidget *checkbutton_markers_count; GtkWidget *checkbutton_markers_compare; GtkWidget *checkbutton_markers_spacing; GtkWidget *hseparator2; GtkWidget *label3; GtkWidget *checkbutton_characters_inventory; GtkWidget *checkbutton_characters_unwanted_patterns; GtkWidget *hseparator3; GtkWidget *label4; GtkWidget *checkbutton_words_capitalization; GtkWidget *checkbutton_words_repetition; GtkWidget *checkbutton_words_unwanted; GtkWidget *checkbutton_words_inventory; GtkWidget *hseparator4; GtkWidget *label5; GtkWidget *checkbutton_punctuation_matching_pairs; GtkWidget *hseparator5; GtkWidget *label6; GtkWidget *checkbutton_references_inventory; GtkWidget *checkbutton_references_validate; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton; GtkWidget *okbutton; private: static void on_okbutton_clicked (GtkButton *button, gpointer user_data); void on_okbutton (); WindowReferences * my_references_window; }; #endif bibledit-gtk-4.9/src/dialognewstylesheet.cpp000664 000766 000024 00000027541 12221507140 021436 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialognewstylesheet.h" #include "help.h" #include "shortcuts.h" #include "stylesheetutils.h" #include "listview.h" #include "utilities.h" NewStylesheetDialog::NewStylesheetDialog(const ustring & worksheet) { myworksheet = worksheet; Shortcuts shortcuts(0); newstylesheetdialog = gtk_dialog_new(); if (!worksheet.empty()) gtk_window_set_title(GTK_WINDOW(newstylesheetdialog), "New style"); else gtk_window_set_title(GTK_WINDOW(newstylesheetdialog), "New stylesheet"); gtk_window_set_position(GTK_WINDOW(newstylesheetdialog), GTK_WIN_POS_CENTER_ON_PARENT); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG (newstylesheetdialog)); gtk_widget_show(dialog_vbox1); hbox2 = gtk_hbox_new(FALSE, 4); gtk_widget_show(hbox2); gtk_box_pack_start(GTK_BOX(dialog_vbox1), hbox2, TRUE, TRUE, 0); vbox1 = gtk_vbox_new(FALSE, 4); gtk_widget_show(vbox1); gtk_box_pack_start(GTK_BOX(hbox2), vbox1, TRUE, TRUE, 0); if (myworksheet.empty()) { hbox1 = gtk_hbox_new(FALSE, 4); gtk_widget_show(hbox1); gtk_box_pack_start(GTK_BOX(vbox1), hbox1, TRUE, TRUE, 0); label1 = gtk_label_new("Name"); gtk_widget_show(label1); gtk_box_pack_start(GTK_BOX(hbox1), label1, FALSE, FALSE, 0); shortcuts.label(label1); entry1 = gtk_entry_new(); gtk_widget_show(entry1); gtk_box_pack_start(GTK_BOX(hbox1), entry1, TRUE, TRUE, 0); } ustring info; if (!myworksheet.empty()) info = "Select one or more styles from the list"; label_info = gtk_label_new(info.c_str()); gtk_widget_show(label_info); gtk_box_pack_start(GTK_BOX(vbox1), label_info, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label_info), 0, 0.5); GSList *radiobutton_basic_group = NULL; radiobutton_basic = gtk_radio_button_new_with_mnemonic(NULL, "Basic"); gtk_widget_show(radiobutton_basic); gtk_box_pack_start(GTK_BOX(vbox1), radiobutton_basic, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_basic), radiobutton_basic_group); radiobutton_basic_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_basic)); shortcuts.button(radiobutton_basic); radiobutton_paragraph = gtk_radio_button_new_with_mnemonic(NULL, "Basic, paragraph"); gtk_widget_show(radiobutton_paragraph); gtk_box_pack_start(GTK_BOX(vbox1), radiobutton_paragraph, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_paragraph), radiobutton_basic_group); radiobutton_basic_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_paragraph)); shortcuts.button(radiobutton_paragraph); radiobutton_word_note = gtk_radio_button_new_with_mnemonic(NULL, "Basic, paragraph, word, note"); gtk_widget_show(radiobutton_word_note); gtk_box_pack_start(GTK_BOX(vbox1), radiobutton_word_note, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_word_note), radiobutton_basic_group); radiobutton_basic_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_word_note)); shortcuts.button(radiobutton_word_note); radiobutton_sbp = gtk_radio_button_new_with_mnemonic(NULL, "SIL best practice"); gtk_widget_show(radiobutton_sbp); gtk_box_pack_start(GTK_BOX(vbox1), radiobutton_sbp, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_sbp), radiobutton_basic_group); radiobutton_basic_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_sbp)); shortcuts.button(radiobutton_sbp); radiobutton_full = gtk_radio_button_new_with_mnemonic(NULL, "Full"); gtk_widget_show(radiobutton_full); gtk_box_pack_start(GTK_BOX(vbox1), radiobutton_full, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_full), radiobutton_basic_group); radiobutton_basic_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_full)); shortcuts.button(radiobutton_full); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_full), true); if (!myworksheet.empty()) { expander1 = gtk_expander_new(NULL); gtk_widget_show(expander1); gtk_box_pack_start(GTK_BOX(vbox1), expander1, TRUE, TRUE, 0); label2 = gtk_label_new("Add non-standard style"); gtk_widget_show(label2); gtk_expander_set_label_widget(GTK_EXPANDER(expander1), label2); shortcuts.label(label2); hbox1 = gtk_hbox_new(FALSE, 4); gtk_widget_show(hbox1); gtk_container_add(GTK_CONTAINER(expander1), hbox1); label1 = gtk_label_new("Name"); gtk_widget_show(label1); gtk_box_pack_start(GTK_BOX(hbox1), label1, FALSE, FALSE, 0); shortcuts.label(label1); entry1 = gtk_entry_new(); gtk_widget_show(entry1); gtk_box_pack_start(GTK_BOX(hbox1), entry1, TRUE, TRUE, 0); scrolledwindow1 = gtk_scrolled_window_new(NULL, NULL); gtk_widget_show(scrolledwindow1); gtk_box_pack_start(GTK_BOX(hbox2), scrolledwindow1, TRUE, TRUE, 0); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow1), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scrolledwindow1), GTK_SHADOW_IN); treeview1 = gtk_tree_view_new(); gtk_widget_show(treeview1); gtk_container_add(GTK_CONTAINER(scrolledwindow1), treeview1); gtk_tree_view_set_headers_visible(GTK_TREE_VIEW(treeview1), FALSE); store1 = gtk_list_store_new(1, G_TYPE_STRING); gtk_tree_view_set_model(GTK_TREE_VIEW(treeview1), GTK_TREE_MODEL(store1)); g_object_unref(store1); GtkCellRenderer *renderer = gtk_cell_renderer_text_new(); column1 = gtk_tree_view_column_new_with_attributes("", renderer, "text", 0, NULL); gtk_tree_view_append_column(GTK_TREE_VIEW(treeview1), column1); select1 = gtk_tree_view_get_selection(GTK_TREE_VIEW(treeview1)); gtk_tree_selection_set_mode(select1, GTK_SELECTION_SINGLE); } dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(newstylesheetdialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(newstylesheetdialog, NULL, &shortcuts, "file/styles/stylesheet/new"); cancelbutton1 = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton1); gtk_dialog_add_action_widget(GTK_DIALOG(newstylesheetdialog), cancelbutton1, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton1), true); okbutton = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton); gtk_dialog_add_action_widget(GTK_DIALOG(newstylesheetdialog), okbutton, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton), true); shortcuts.stockbutton(cancelbutton1); shortcuts.stockbutton(okbutton); shortcuts.process(); g_signal_connect((gpointer) entry1, "changed", G_CALLBACK(on_entry_changed), gpointer(this)); g_signal_connect((gpointer) radiobutton_basic, "toggled", G_CALLBACK(on_radiobutton_basic_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_paragraph, "toggled", G_CALLBACK(on_radiobutton_paragraph_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_word_note, "toggled", G_CALLBACK(on_radiobutton_word_note_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_sbp, "toggled", G_CALLBACK(on_radiobutton_sbp_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_full, "toggled", G_CALLBACK(on_radiobutton_full_toggled), gpointer(this)); g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(on_okbutton_clicked), gpointer(this)); gtk_widget_grab_focus(entry1); gtk_widget_grab_default(okbutton); gtk_label_set_mnemonic_widget(GTK_LABEL(label1), entry1); on_entry(); on_radiobutton(); } NewStylesheetDialog::~NewStylesheetDialog() { gtk_widget_destroy(newstylesheetdialog); } int NewStylesheetDialog::run() { return gtk_dialog_run(GTK_DIALOG(newstylesheetdialog)); } void NewStylesheetDialog::on_entry_changed(GtkEditable * editable, gpointer user_data) { ((NewStylesheetDialog *) user_data)->on_entry(); } void NewStylesheetDialog::on_entry() // Activates the ok button only when we've a non-existing stylesheet. // Or when there is a style given. { name = gtk_entry_get_text(GTK_ENTRY(entry1)); bool sensitive = !name.empty(); if (myworksheet.empty()) { if (sensitive) sensitive = !stylesheet_exists(name); ustring message; if (!sensitive) message = "A stylesheet with this name already exists"; else message.clear(); gtk_label_set_text(GTK_LABEL(label_info), message.c_str()); } else { if (!markers.empty()) sensitive = true; // Only lowercase styles. name = lowerCase(name); } gtk_widget_set_sensitive(okbutton, sensitive); } void NewStylesheetDialog::on_radiobutton_basic_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((NewStylesheetDialog *) user_data)->on_radiobutton(); } void NewStylesheetDialog::on_radiobutton_paragraph_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((NewStylesheetDialog *) user_data)->on_radiobutton(); } void NewStylesheetDialog::on_radiobutton_word_note_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((NewStylesheetDialog *) user_data)->on_radiobutton(); } void NewStylesheetDialog::on_radiobutton_sbp_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((NewStylesheetDialog *) user_data)->on_radiobutton(); } void NewStylesheetDialog::on_radiobutton_full_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((NewStylesheetDialog *) user_data)->on_radiobutton(); } void NewStylesheetDialog::on_radiobutton() { // Set the right stylesheet type. stylesheettype = stFull; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_basic))) stylesheettype = stBasic; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_paragraph))) stylesheettype = stBasicParagraph; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_word_note))) stylesheettype = stBasicParagraphWordNote; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_sbp))) stylesheettype = stSilBestPractice; // If in stylesheet mode, bail out. if (myworksheet.empty()) return; // Show a list with the available styles. markers.clear(); set < ustring > markers_of_type_set = stylesheet_get_styles_of_type(stylesheettype); vector < ustring > markers_of_type(markers_of_type_set.begin(), markers_of_type_set.end()); vector < ustring > markers_in_sheet = stylesheet_get_markers(myworksheet, NULL); set < ustring > markers_in_sheet_set(markers_in_sheet.begin(), markers_in_sheet.end()); for (unsigned int i = 0; i < markers_of_type.size(); i++) { if (markers_in_sheet_set.find(markers_of_type[i]) == markers_in_sheet_set.end()) markers.push_back(markers_of_type[i]); } sort(markers.begin(), markers.end()); listview_set_strings(treeview1, store1, markers); // Focus first item. if (!markers.empty()) listview_focus_string(treeview1, markers[0]); // GUI. on_entry(); } void NewStylesheetDialog::on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((NewStylesheetDialog *) user_data)->on_okbutton(); } void NewStylesheetDialog::on_okbutton() { if (!myworksheet.empty()) { if (name.empty()) name = listview_get_active_string(treeview1); } } bibledit-gtk-4.9/src/dialognewstylesheet.h000664 000766 000024 00000005153 12221507137 021104 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGNEWSTYLESHEET_H #define INCLUDED_DIALOGNEWSTYLESHEET_H #include #include "ustring.h" #include "types.h" class NewStylesheetDialog { public: NewStylesheetDialog (const ustring& worksheet); ~NewStylesheetDialog (); int run (); ustring name; StylesheetType stylesheettype; protected: GtkWidget *newstylesheetdialog; GtkWidget *dialog_vbox1; GtkWidget *hbox2; GtkWidget *vbox1; GtkWidget *hbox1; GtkWidget *label1; GtkWidget *entry1; GtkWidget *label_info; GtkWidget *radiobutton_basic; GtkWidget *radiobutton_paragraph; GtkWidget *radiobutton_word_note; GtkWidget *radiobutton_sbp; GtkWidget *radiobutton_full; GtkWidget *expander1; GtkWidget *label2; GtkWidget *scrolledwindow1; GtkWidget *treeview1; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton1; GtkWidget *okbutton; private: ustring myworksheet; static void on_entry_changed (GtkEditable *editable, gpointer user_data); void on_entry (); static void on_radiobutton_basic_toggled (GtkToggleButton *togglebutton, gpointer user_data); static void on_radiobutton_paragraph_toggled (GtkToggleButton *togglebutton, gpointer user_data); static void on_radiobutton_word_note_toggled (GtkToggleButton *togglebutton, gpointer user_data); static void on_radiobutton_sbp_toggled (GtkToggleButton *togglebutton, gpointer user_data); static void on_radiobutton_full_toggled (GtkToggleButton *togglebutton, gpointer user_data); void on_radiobutton (); static void on_okbutton_clicked (GtkButton *button, gpointer user_data); void on_okbutton (); static void on_treeview1_row_activated (GtkTreeView *treeview, GtkTreePath *path, GtkTreeViewColumn *column, gpointer user_data); void on_treeview (); GtkListStore *store1; GtkTreeViewColumn *column1; GtkTreeSelection *select1; vector markers; }; #endif bibledit-gtk-4.9/src/dialognotes.cpp000664 000766 000024 00000017547 12221507134 017673 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003 The Free Software Foundation. ** ** 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 3 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 "libraries.h" #include "dialognotes.h" #include "notes_utils.h" #include "utilities.h" #include "dialogentry.h" #include "gtkwrappers.h" #include "listview.h" #include "help.h" NotesDialog::NotesDialog(int dummy) { // Read all the categories and add possible new ones in the database. ReadText rt(notes_categories_filename()); vector < ustring > categories = rt.lines; notes_categories_add_from_database(categories); notesdialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(notesdialog), "Project notes"); gtk_window_set_position(GTK_WINDOW(notesdialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(notesdialog), TRUE); gtk_window_set_destroy_with_parent(GTK_WINDOW(notesdialog), TRUE); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(notesdialog)); gtk_widget_show(dialog_vbox1); label10 = gtk_label_new("While editing a project note, there are some categories that can be assigned to this note.\nThe list of categories can be edited here."); gtk_widget_show(label10); gtk_box_pack_start(GTK_BOX(dialog_vbox1), label10, FALSE, FALSE, 0); gtk_label_set_line_wrap(GTK_LABEL(label10), TRUE); gtk_misc_set_alignment(GTK_MISC(label10), 0, 0.5); // User can sort the categories to his preferred order. treeview1 = gtk_tree_view_new(); gtk_widget_show(treeview1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), treeview1, TRUE, TRUE, 0); gtk_tree_view_set_headers_visible(GTK_TREE_VIEW(treeview1), FALSE); gtk_tree_view_set_reorderable(GTK_TREE_VIEW(treeview1), TRUE); hbox1 = gtk_hbox_new(FALSE, 0); gtk_widget_show(hbox1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), hbox1, FALSE, FALSE, 0); buttondelete = gtk_button_new(); gtk_widget_show(buttondelete); gtk_box_pack_start(GTK_BOX(hbox1), buttondelete, FALSE, FALSE, 0); alignment1 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment1); gtk_container_add(GTK_CONTAINER(buttondelete), alignment1); hbox2 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox2); gtk_container_add(GTK_CONTAINER(alignment1), hbox2); image1 = gtk_image_new_from_stock("gtk-delete", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image1); gtk_box_pack_start(GTK_BOX(hbox2), image1, FALSE, FALSE, 0); label11 = gtk_label_new_with_mnemonic("_Delete"); gtk_widget_show(label11); gtk_box_pack_start(GTK_BOX(hbox2), label11, FALSE, FALSE, 0); buttonadd = gtk_button_new(); gtk_widget_show(buttonadd); gtk_box_pack_start(GTK_BOX(hbox1), buttonadd, FALSE, FALSE, 0); alignment2 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment2); gtk_container_add(GTK_CONTAINER(buttonadd), alignment2); hbox3 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox3); gtk_container_add(GTK_CONTAINER(alignment2), hbox3); image2 = gtk_image_new_from_stock("gtk-add", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image2); gtk_box_pack_start(GTK_BOX(hbox3), image2, FALSE, FALSE, 0); label12 = gtk_label_new_with_mnemonic("_Add"); gtk_widget_show(label12); gtk_box_pack_start(GTK_BOX(hbox3), label12, FALSE, FALSE, 0); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(notesdialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(notesdialog, NULL, NULL, (gchar *) "menu-preferences/project-notes"); cancelbutton1 = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton1); gtk_dialog_add_action_widget(GTK_DIALOG(notesdialog), cancelbutton1, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton1), true); okbutton1 = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton1); gtk_dialog_add_action_widget(GTK_DIALOG(notesdialog), okbutton1, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton1), true); g_signal_connect((gpointer) okbutton1, "clicked", G_CALLBACK(on_okbutton1_clicked), gpointer(this)); g_signal_connect((gpointer) buttondelete, "clicked", G_CALLBACK(on_buttondelete_clicked), gpointer(this)); g_signal_connect((gpointer) buttonadd, "clicked", G_CALLBACK(on_buttonadd_clicked), gpointer(this)); gtk_widget_grab_default(okbutton1); model = gtk_list_store_new(1, G_TYPE_STRING); gtk_tree_view_set_model(GTK_TREE_VIEW(treeview1), GTK_TREE_MODEL(model)); g_object_unref(model); GtkCellRenderer *renderer = gtk_cell_renderer_text_new(); gtk_tree_view_insert_column_with_attributes(GTK_TREE_VIEW(treeview1), -1, "", renderer, "text", 0, NULL); gtk_tree_selection_set_mode(gtk_tree_view_get_selection(GTK_TREE_VIEW(treeview1)), GTK_SELECTION_SINGLE); set_gui(categories, ""); } NotesDialog::~NotesDialog() { gtk_widget_destroy(notesdialog); } int NotesDialog::run() { return gtk_dialog_run(GTK_DIALOG(notesdialog)); } void NotesDialog::on_okbutton1_clicked(GtkButton * button, gpointer user_data) { ((NotesDialog *) user_data)->on_okbutton(); } void NotesDialog::on_okbutton() { // Save possibly edited categories. vector < ustring > categories = listview_get_strings(treeview1); write_lines(notes_categories_filename(), categories); } void NotesDialog::on_buttondelete_clicked(GtkButton * button, gpointer user_data) { ((NotesDialog *) user_data)->on_delete_category(); } void NotesDialog::on_delete_category() { // Get category to delete. ustring category = listview_get_active_string(treeview1); // If it is not in the database, delete it. vector < ustring > categories_in_database; notes_categories_add_from_database(categories_in_database); set < ustring > categories_in_db(categories_in_database.begin(), categories_in_database.end()); set < ustring >::const_iterator found; found = categories_in_db.find(category); if (found == categories_in_db.end()) { // Not in database: delete category. vector < ustring > categories = listview_get_strings(treeview1); vector < ustring > temporary(categories.begin(), categories.end()); categories.clear(); for (unsigned int i = 0; i < temporary.size(); i++) { if (temporary[i] != category) categories.push_back(temporary[i]); } set_gui(categories, ""); } else { // Category is in database: Can't be deleted. ustring message = "This category could not be deleted, because there are still notes\n" "in the database with this category."; gtkw_dialog_error(notesdialog, message); } } void NotesDialog::on_buttonadd_clicked(GtkButton * button, gpointer user_data) { ((NotesDialog *) user_data)->on_add_category(); } void NotesDialog::on_add_category() { EntryDialog dialog("New category name", "Enter a new category.", ""); if (dialog.run() == GTK_RESPONSE_OK) { vector < ustring > categories = listview_get_strings(treeview1); categories.push_back(dialog.entered_value); set_gui(categories, dialog.entered_value); } } void NotesDialog::set_gui(const vector < ustring > &categories, const ustring & display_value) { // Fill the listview with the categories we have. listview_set_strings(treeview1, model, categories); if (!display_value.empty()) listview_focus_string(treeview1, display_value); else if (categories.size() > 0) listview_focus_string(treeview1, categories[0]); } bibledit-gtk-4.9/src/dialognotes.h000664 000766 000024 00000003455 12221507140 017326 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003 The Free Software Foundation. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGNOTES_H #define INCLUDED_DIALOGNOTES_H #include class NotesDialog { public: NotesDialog (int dummy); ~NotesDialog (); int run (); protected: GtkWidget *notesdialog; GtkWidget *dialog_vbox1; GtkWidget *label10; GtkWidget *treeview1; GtkWidget *hbox1; GtkWidget *buttondelete; GtkWidget *alignment1; GtkWidget *hbox2; GtkWidget *image1; GtkWidget *label11; GtkWidget *buttonadd; GtkWidget *alignment2; GtkWidget *hbox3; GtkWidget *image2; GtkWidget *label12; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton1; GtkWidget *okbutton1; static void on_okbutton1_clicked (GtkButton *button, gpointer user_data); void on_okbutton (); static void on_buttondelete_clicked (GtkButton *button, gpointer user_data); void on_delete_category (); static void on_buttonadd_clicked (GtkButton *button, gpointer user_data); void on_add_category (); void set_gui(const vector& categories, const ustring& display_value); GtkListStore *model; }; #endif bibledit-gtk-4.9/src/dialognotestransfer.cpp000664 000766 000024 00000014474 12221507140 021431 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialognotestransfer.h" #include "notes_utils.h" #include "utilities.h" #include "combobox.h" #include "projectutils.h" #include "settings.h" #include "progresswindow.h" #include "gtkwrappers.h" #include "date_time_utils.h" #include "usfmtools.h" #include "help.h" #include "books.h" #include "tiny_utilities.h" NotesTransferDialog::NotesTransferDialog(int dummy) { notestransferdialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(notestransferdialog), "Transfer To Project Notes"); gtk_window_set_position(GTK_WINDOW(notestransferdialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(notestransferdialog), TRUE); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(notestransferdialog)); gtk_widget_show(dialog_vbox1); vbox1 = gtk_vbox_new(FALSE, 5); gtk_widget_show(vbox1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), vbox1, FALSE, FALSE, 0); label1 = gtk_label_new("This will transfer all text from the currently opened project into the Project notes."); gtk_widget_show(label1); gtk_box_pack_start(GTK_BOX(vbox1), label1, FALSE, FALSE, 0); gtk_label_set_line_wrap(GTK_LABEL(label1), TRUE); gtk_misc_set_alignment(GTK_MISC(label1), 0, 0.5); hbox1 = gtk_hbox_new(FALSE, 5); gtk_widget_show(hbox1); gtk_box_pack_start(GTK_BOX(vbox1), hbox1, TRUE, TRUE, 0); label2 = gtk_label_new("The notes will be put into category"); gtk_widget_show(label2); gtk_box_pack_start(GTK_BOX(hbox1), label2, FALSE, FALSE, 0); combobox1 = gtk_combo_box_new_text(); gtk_widget_show(combobox1); gtk_box_pack_start(GTK_BOX(hbox1), combobox1, TRUE, TRUE, 0); label3 = gtk_label_new("The transfer cannot be undone."); gtk_widget_show(label3); gtk_box_pack_start(GTK_BOX(vbox1), label3, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label3), 0, 0.5); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(notestransferdialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(notestransferdialog, NULL, NULL, NULL); cancelbutton = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton); gtk_dialog_add_action_widget(GTK_DIALOG(notestransferdialog), cancelbutton, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton), true); okbutton = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton); gtk_dialog_add_action_widget(GTK_DIALOG(notestransferdialog), okbutton, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton), true); g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(on_okbutton_clicked), gpointer(this)); // Read all the categories and add amy new ones from the database. ReadText rt(notes_categories_filename()); notes_categories_add_from_database(rt.lines); combobox_set_strings(combobox1, rt.lines); if (!rt.lines.empty()) combobox_set_string(combobox1, rt.lines[0]); } NotesTransferDialog::~NotesTransferDialog() { gtk_widget_destroy(notestransferdialog); } int NotesTransferDialog::run() { return gtk_dialog_run(GTK_DIALOG(notestransferdialog)); } void NotesTransferDialog::on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((NotesTransferDialog *) user_data)->on_okbutton(); } void NotesTransferDialog::on_okbutton() { // Get the project. extern Settings *settings; ustring project = settings->genconfig.project_get(); // Progress. ProgressWindow progresswindow("Transferring text to notes", false); // Get the category into which to insert notes. ustring category = combobox_get_active_string(combobox1); // Go through the books in the project. vector < unsigned int >books = project_get_books(project); for (unsigned int bk = 0; bk < books.size(); bk++) { // Progress. progresswindow.set_text(books_id_to_english(books[bk])); // Go through the chapters in this book. Progress. vector < unsigned int >chapters = project_get_chapters(project, books[bk]); progresswindow.set_iterate(0, 1, chapters.size()); for (unsigned int ch = 0; ch < chapters.size(); ch++) { progresswindow.iterate(); // Go through the verses in this chapter. vector < ustring > verses = project_get_verses(project, books[bk], chapters[ch]); for (unsigned int vs = 0; vs < verses.size(); vs++) { // Retrieve each verse and insert it into the notes. ustring text = project_retrieve_verse(project, books[bk], chapters[ch], verses[vs]); clean_note(text); if (!text.empty()) { transfer_note(project, books[bk], chapters[ch], verses[vs], text, category); } } } } } void NotesTransferDialog::clean_note(ustring & note) // "Cleans" the note: removes unnecessary stuff. { ustring working_copy(note); ustring marker = usfm_extract_marker(working_copy); if (marker == "v") { usfm_extract_marker(note); note = trim(note); ustring verse = number_in_string(note); note.erase(0, verse.length()); note = trim(note); } } void NotesTransferDialog::transfer_note(const ustring & project, unsigned int book, unsigned int chapter, const ustring & verse, ustring & text, const ustring & category) { int id = notes_database_get_unique_id(); ustring references = books_id_to_osis (book) + "." + convert_to_string (chapter) + "." + verse; int date_created = date_time_julian_day_get_current(); ustring user = g_get_real_name(); ustring logbook; notes_store_one_in_file(id, text, project, references, category, date_created, user, date_time_julian_day_get_current(), logbook); } bibledit-gtk-4.9/src/dialognotestransfer.h000664 000766 000024 00000003105 12221507151 021065 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGNOTESTRANSFER_H #define INCLUDED_DIALOGNOTESTRANSFER_H #include #include "ustring.h" class NotesTransferDialog { public: NotesTransferDialog (int dummy); ~NotesTransferDialog (); int run (); protected: GtkWidget *notestransferdialog; GtkWidget *dialog_vbox1; GtkWidget *vbox1; GtkWidget *label1; GtkWidget *hbox1; GtkWidget *label2; GtkWidget *combobox1; GtkWidget *label3; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton; GtkWidget *okbutton; private: static void on_okbutton_clicked (GtkButton *button, gpointer user_data); void on_okbutton (); void clean_note (ustring& note); void transfer_note (const ustring& project, unsigned int book, unsigned int chapter, const ustring& verse, ustring& text, const ustring& category); }; #endif bibledit-gtk-4.9/src/dialognotesupdate.cpp000664 000766 000024 00000021407 12221507151 021063 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "dialognotesupdate.h" #include "progresswindow.h" #include "gtkwrappers.h" #include "help.h" #include "gui.h" #include "shortcuts.h" #include "notes_utils.h" #include "combobox.h" #include "projectutils.h" #include "utilities.h" NotesUpdateDialog::NotesUpdateDialog(int dummy) { // Shortcuts. Shortcuts shortcuts1(0); Shortcuts shortcuts2(0); notesupdatedialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(notesupdatedialog), "Notes Mass Update"); gtk_window_set_position(GTK_WINDOW(notesupdatedialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_type_hint(GTK_WINDOW(notesupdatedialog), GDK_WINDOW_TYPE_HINT_DIALOG); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(notesupdatedialog)); gtk_widget_show(dialog_vbox1); notebook1 = gtk_notebook_new(); gtk_widget_show(notebook1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), notebook1, TRUE, TRUE, 0); gtk_notebook_set_tab_pos(GTK_NOTEBOOK(notebook1), GTK_POS_LEFT); label6 = gtk_label_new("This tool provides a way to update many project notes at once. It is a powerful tool, and changes made here cannot be made undone easily.\n\nAt the left, select the action you'd like to take."); gtk_widget_show(label6); gtk_container_add(GTK_CONTAINER(notebook1), label6); gtk_label_set_line_wrap(GTK_LABEL(label6), TRUE); gtk_misc_set_alignment(GTK_MISC(label6), 0, 0.5); label4 = gtk_label_new_with_mnemonic("Information"); gtk_widget_show(label4); gtk_notebook_set_tab_label(GTK_NOTEBOOK(notebook1), gtk_notebook_get_nth_page(GTK_NOTEBOOK(notebook1), 0), label4); shortcuts1.label(label4); shortcuts2.label(label4); vbox1 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox1); gtk_container_add(GTK_CONTAINER(notebook1), vbox1); gtk_container_set_border_width(GTK_CONTAINER(vbox1), 4); label7 = gtk_label_new("Move all notes that belong to project"); gtk_widget_show(label7); gtk_box_pack_start(GTK_BOX(vbox1), label7, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label7), 0, 0.5); combobox_project_from = gtk_combo_box_new_text(); gtk_widget_show(combobox_project_from); gtk_box_pack_start(GTK_BOX(vbox1), combobox_project_from, TRUE, TRUE, 0); shortcuts1.label(label7); gtk_label_set_mnemonic_widget(GTK_LABEL(label7), combobox_project_from); label8 = gtk_label_new("to project"); gtk_widget_show(label8); gtk_box_pack_start(GTK_BOX(vbox1), label8, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label8), 0, 0.5); combobox_project_to = gtk_combo_box_new_text(); gtk_widget_show(combobox_project_to); gtk_box_pack_start(GTK_BOX(vbox1), combobox_project_to, TRUE, TRUE, 0); shortcuts1.label(label8); gtk_label_set_mnemonic_widget(GTK_LABEL(label8), combobox_project_to); label5 = gtk_label_new_with_mnemonic("Project"); gtk_widget_show(label5); gtk_notebook_set_tab_label(GTK_NOTEBOOK(notebook1), gtk_notebook_get_nth_page(GTK_NOTEBOOK(notebook1), 1), label5); shortcuts1.label(label5); shortcuts2.label(label5); vbox2 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox2); gtk_container_add(GTK_CONTAINER(notebook1), vbox2); gtk_container_set_border_width(GTK_CONTAINER(vbox2), 4); label10 = gtk_label_new("Move all notes that are in category"); gtk_widget_show(label10); gtk_box_pack_start(GTK_BOX(vbox2), label10, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label10), 0, 0.5); combobox_category_from = gtk_combo_box_new_text(); gtk_widget_show(combobox_category_from); gtk_box_pack_start(GTK_BOX(vbox2), combobox_category_from, TRUE, TRUE, 0); shortcuts2.label(label10); gtk_label_set_mnemonic_widget(GTK_LABEL(label10), combobox_category_from); label11 = gtk_label_new("to category"); gtk_widget_show(label11); gtk_box_pack_start(GTK_BOX(vbox2), label11, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label11), 0, 0.5); combobox_category_to = gtk_combo_box_new_text(); gtk_widget_show(combobox_category_to); gtk_box_pack_start(GTK_BOX(vbox2), combobox_category_to, TRUE, TRUE, 0); shortcuts2.label(label11); gtk_label_set_mnemonic_widget(GTK_LABEL(label11), combobox_category_to); label9 = gtk_label_new_with_mnemonic("Category"); gtk_widget_show(label9); gtk_notebook_set_tab_label(GTK_NOTEBOOK(notebook1), gtk_notebook_get_nth_page(GTK_NOTEBOOK(notebook1), 2), label9); shortcuts1.label(label9); shortcuts2.label(label9); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(notesupdatedialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(notesupdatedialog, NULL, &shortcuts1, NULL); shortcuts2.stockbutton(shortcuts1.lastwidget); cancelbutton1 = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton1); gtk_dialog_add_action_widget(GTK_DIALOG(notesupdatedialog), cancelbutton1, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton1), true); shortcuts1.stockbutton(cancelbutton1); shortcuts2.stockbutton(cancelbutton1); okbutton1 = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton1); gtk_dialog_add_action_widget(GTK_DIALOG(notesupdatedialog), okbutton1, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton1), true); shortcuts1.stockbutton(okbutton1); shortcuts2.stockbutton(okbutton1); shortcuts1.process(); shortcuts2.process(); g_signal_connect((gpointer) okbutton1, "clicked", G_CALLBACK(on_okbutton1_clicked), gpointer(this)); gtk_widget_grab_default(okbutton1); // Load all projects that are now in the notes. vector < ustring > databaseprojects; notes_projects_add_from_database(databaseprojects); combobox_set_strings(combobox_project_from, databaseprojects); if (!databaseprojects.empty()) combobox_set_string(combobox_project_from, databaseprojects[0]); // Load all projects where we possibly can transfer to. vector < ustring > projects = projects_get_all(); combobox_set_strings(combobox_project_to, projects); if (!projects.empty()) combobox_set_string(combobox_project_to, projects[0]); // Load all categories that are now in the notes database. vector < ustring > databasecategories; notes_categories_add_from_database(databasecategories); sort(databasecategories.begin(), databasecategories.end()); combobox_set_strings(combobox_category_from, databasecategories); if (!databasecategories.empty()) combobox_set_string(combobox_category_from, databasecategories[0]); // Load all categories that we possibly can transfer to. ReadText categories(notes_categories_filename()); notes_categories_add_from_database(categories.lines); combobox_set_strings(combobox_category_to, categories.lines); if (!categories.lines.empty()) combobox_set_string(combobox_category_to, categories.lines[0]); } NotesUpdateDialog::~NotesUpdateDialog() { gtk_widget_destroy(notesupdatedialog); } int NotesUpdateDialog::run() { return gtk_dialog_run(GTK_DIALOG(notesupdatedialog)); } void NotesUpdateDialog::on_okbutton1_clicked(GtkButton * button, gpointer user_data) { ((NotesUpdateDialog *) user_data)->on_ok(); } void NotesUpdateDialog::on_ok() { // Get the page we are on. int page = gtk_notebook_get_current_page(GTK_NOTEBOOK(notebook1)); // Message to give. ustring message; // Give a double warning if we're going to do something serious. if (page) if (!gui_double_question(notesupdatedialog, "", "")) return; // Okay, take the action. switch (page) { case 0: { // Do nothing. message = "Nothing was done"; break; } case 1: { // Change project. notes_change_project(combobox_get_active_string(combobox_project_from), combobox_get_active_string(combobox_project_to)); message = "Notes were moved to the other project"; break; } case 2: { // Change category. notes_change_category(combobox_get_active_string(combobox_category_from), combobox_get_active_string(combobox_category_to)); message = "Notes were moved to the other category"; break; } } // Give message. gtkw_dialog_info(notesupdatedialog, message); } bibledit-gtk-4.9/src/dialognotesupdate.h000664 000766 000024 00000003157 12221507147 020537 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGNOTESUPDATE_H #define INCLUDED_DIALOGNOTESUPDATE_H #include "libraries.h" #include class NotesUpdateDialog { public: NotesUpdateDialog (int dummy); ~NotesUpdateDialog (); int run (); protected: GtkWidget *notesupdatedialog; GtkWidget *dialog_vbox1; GtkWidget *notebook1; GtkWidget *label6; GtkWidget *label4; GtkWidget *vbox1; GtkWidget *label7; GtkWidget *combobox_project_from; GtkWidget *label8; GtkWidget *combobox_project_to; GtkWidget *label5; GtkWidget *vbox2; GtkWidget *label10; GtkWidget *combobox_category_from; GtkWidget *label11; GtkWidget *combobox_category_to; GtkWidget *label9; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton1; GtkWidget *okbutton1; static void on_okbutton1_clicked (GtkButton *button, gpointer user_data); void on_ok (); }; #endif bibledit-gtk-4.9/src/dialogopenstylesheet.cpp000664 000766 000024 00000013341 12221507151 021601 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "dialogopenstylesheet.h" #include "directories.h" #include "listview.h" #include "keyboard.h" #include "stylesheetutils.h" #include "help.h" OpenStylesheetDialog::OpenStylesheetDialog(OpenStylesheetDialogType dialogtype, const ustring & currentstylesheet) { // Get all stylesheets and the title. vector < ustring > stylesheets; ustring title; switch (dialogtype) { case osdtSwitch: { // Show all stylesheets. stylesheet_get_ones_available(stylesheets); title = "Switch stylesheet"; break; } case osdtDelete: { // Show all sheets minus current one. vector < ustring > temp_sheets; stylesheet_get_ones_available(temp_sheets); for (unsigned int i = 0; i < temp_sheets.size(); i++) if (temp_sheets[i] != currentstylesheet) stylesheets.push_back(temp_sheets[i]); title = "Delete stylesheet"; break; } } openstyledialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(openstyledialog), title.c_str()); gtk_window_set_position(GTK_WINDOW(openstyledialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(openstyledialog), TRUE); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(openstyledialog)); gtk_widget_show(dialog_vbox1); vbox1 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), vbox1, TRUE, TRUE, 0); label1 = gtk_label_new("Type the first couple of characters of the stylesheet, or select it,\nand then press OK or Enter"); gtk_widget_show(label1); gtk_box_pack_start(GTK_BOX(vbox1), label1, FALSE, FALSE, 4); scrolledwindow1 = gtk_scrolled_window_new(NULL, NULL); gtk_widget_show(scrolledwindow1); gtk_box_pack_start(GTK_BOX(vbox1), scrolledwindow1, FALSE, FALSE, 4); gtk_widget_set_size_request(scrolledwindow1, -1, 400); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow1), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); treeview1 = gtk_tree_view_new(); gtk_widget_show(treeview1); gtk_container_add(GTK_CONTAINER(scrolledwindow1), treeview1); gtk_tree_view_set_headers_visible(GTK_TREE_VIEW(treeview1), FALSE); // Storage, renderer, column and selection. store1 = gtk_list_store_new(1, G_TYPE_STRING); gtk_tree_view_set_model(GTK_TREE_VIEW(treeview1), GTK_TREE_MODEL(store1)); g_object_unref(store1); GtkCellRenderer *renderer = gtk_cell_renderer_text_new(); column1 = gtk_tree_view_column_new_with_attributes("", renderer, "text", 0, NULL); gtk_tree_view_append_column(GTK_TREE_VIEW(treeview1), column1); select1 = gtk_tree_view_get_selection(GTK_TREE_VIEW(treeview1)); gtk_tree_selection_set_mode(select1, GTK_SELECTION_SINGLE); // Fill the treeview with the sorted projects. sort(stylesheets.begin(), stylesheets.end()); listview_set_strings(treeview1, store1, stylesheets); // Set the project now opened. if (currentstylesheet.empty()) { if (stylesheets.size() > 0) listview_focus_string(treeview1, stylesheets[0]); } else { listview_focus_string(treeview1, currentstylesheet); } dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(openstyledialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(openstyledialog, NULL, NULL, NULL); cancelbutton = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton); gtk_dialog_add_action_widget(GTK_DIALOG(openstyledialog), cancelbutton, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton), true); okbutton = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton); gtk_dialog_add_action_widget(GTK_DIALOG(openstyledialog), okbutton, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton), true); // Disable the OK button if there are no projects. if (stylesheets.size() == 0) gtk_widget_set_sensitive(okbutton, FALSE); g_signal_connect((gpointer) treeview1, "row_activated", G_CALLBACK(on_treeview1_row_activated), gpointer(this)); g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(static_on_okbutton_clicked), gpointer(this)); gtk_widget_grab_focus(treeview1); gtk_widget_grab_default(okbutton); } OpenStylesheetDialog::~OpenStylesheetDialog() { gtk_widget_destroy(openstyledialog); } int OpenStylesheetDialog::run() { return gtk_dialog_run(GTK_DIALOG(openstyledialog)); } void OpenStylesheetDialog::on_treeview1_row_activated(GtkTreeView * treeview, GtkTreePath * path, GtkTreeViewColumn * column, gpointer user_data) { ((OpenStylesheetDialog *) user_data)->on_treeview(); } void OpenStylesheetDialog::on_treeview() { on_okbutton_clicked(); gtk_dialog_response(GTK_DIALOG(openstyledialog), GTK_RESPONSE_OK); } void OpenStylesheetDialog::static_on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((OpenStylesheetDialog *) user_data)->on_okbutton_clicked(); } void OpenStylesheetDialog::on_okbutton_clicked() { stylesheet = listview_get_active_string(treeview1); } bibledit-gtk-4.9/src/dialogopenstylesheet.h000664 000766 000024 00000003331 12221507142 021244 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGOPENSTYLESHEET_H #define INCLUDED_DIALOGOPENSTYLESHEET_H #include enum OpenStylesheetDialogType {osdtSwitch, osdtDelete}; class OpenStylesheetDialog { public: OpenStylesheetDialog (OpenStylesheetDialogType dialogtype, const ustring & currentstylesheet); ~OpenStylesheetDialog (); int run (); ustring stylesheet; protected: GtkWidget *openstyledialog; GtkWidget *dialog_vbox1; GtkWidget *vbox1; GtkWidget *label1; GtkWidget *scrolledwindow1; GtkWidget *treeview1; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton; GtkWidget *okbutton; static void on_treeview1_row_activated (GtkTreeView *treeview, GtkTreePath *path, GtkTreeViewColumn *column, gpointer user_data); void on_treeview (); static void static_on_okbutton_clicked (GtkButton * button, gpointer user_data); void on_okbutton_clicked (); GtkListStore *store1; GtkTreeViewColumn *column1; GtkTreeSelection *select1; }; #endif bibledit-gtk-4.9/src/dialogoriginreferences.cpp000664 000766 000024 00000032537 12221507147 022074 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogoriginreferences.h" #include "gtkwrappers.h" #include "help.h" #include "originreferences.h" #include "settings.h" #include "shortcuts.h" OriginReferencesDialog::OriginReferencesDialog(int dummy) { extern Settings *settings; Shortcuts shortcuts(0); originreferencesdialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(originreferencesdialog), "Bible notes mass update"); gtk_window_set_position(GTK_WINDOW(originreferencesdialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(originreferencesdialog), TRUE); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(originreferencesdialog)); gtk_widget_show(dialog_vbox1); label3 = gtk_label_new("This tool can update all the footnotes, endnotes and crossreferences in the project."); gtk_widget_show(label3); gtk_box_pack_start(GTK_BOX(dialog_vbox1), label3, FALSE, FALSE, 0); gtk_label_set_line_wrap(GTK_LABEL(label3), TRUE); gtk_misc_set_alignment(GTK_MISC(label3), 0, 0.5); hseparator1 = gtk_hseparator_new(); gtk_widget_show(hseparator1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), hseparator1, TRUE, TRUE, 0); label4 = gtk_label_new("Types of note to consider:"); gtk_widget_show(label4); gtk_box_pack_start(GTK_BOX(dialog_vbox1), label4, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label4), 0, 0.5); checkbutton_footnotes = gtk_check_button_new_with_mnemonic("Footnotes"); gtk_widget_show(checkbutton_footnotes); gtk_box_pack_start(GTK_BOX(dialog_vbox1), checkbutton_footnotes, FALSE, FALSE, 0); shortcuts.button(checkbutton_footnotes); checkbutton_endnotes = gtk_check_button_new_with_mnemonic("Endnotes"); gtk_widget_show(checkbutton_endnotes); gtk_box_pack_start(GTK_BOX(dialog_vbox1), checkbutton_endnotes, FALSE, FALSE, 0); shortcuts.button(checkbutton_endnotes); checkbutton_xrefs = gtk_check_button_new_with_mnemonic("Crossreferences"); gtk_widget_show(checkbutton_xrefs); gtk_box_pack_start(GTK_BOX(dialog_vbox1), checkbutton_xrefs, FALSE, FALSE, 0); shortcuts.button(checkbutton_xrefs); hseparator2 = gtk_hseparator_new(); gtk_widget_show(hseparator2); gtk_box_pack_start(GTK_BOX(dialog_vbox1), hseparator2, FALSE, FALSE, 0); label5 = gtk_label_new("Action to take:"); gtk_widget_show(label5); gtk_box_pack_start(GTK_BOX(dialog_vbox1), label5, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label5), 0, 0.5); GSList *radiobutton_remove_group = NULL; radiobutton_nothing = gtk_radio_button_new_with_mnemonic(NULL, "_Make no changes but give statistics only"); gtk_widget_show(radiobutton_nothing); gtk_box_pack_start(GTK_BOX(dialog_vbox1), radiobutton_nothing, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_nothing), radiobutton_remove_group); radiobutton_remove_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_nothing)); shortcuts.button(checkbutton_xrefs); radiobutton_remove = gtk_radio_button_new_with_mnemonic(NULL, "_Remove all the references"); gtk_widget_show(radiobutton_remove); gtk_box_pack_start(GTK_BOX(dialog_vbox1), radiobutton_remove, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_remove), radiobutton_remove_group); radiobutton_remove_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_remove)); shortcuts.button(checkbutton_xrefs); hbox1 = gtk_hbox_new(FALSE, 4); gtk_widget_show(hbox1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), hbox1, FALSE, FALSE, 0); radiobutton_add = gtk_radio_button_new_with_mnemonic(NULL, "Add references"); gtk_widget_show(radiobutton_add); gtk_box_pack_start(GTK_BOX(hbox1), radiobutton_add, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_add), radiobutton_remove_group); radiobutton_remove_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_add)); shortcuts.button(radiobutton_add); checkbutton_book = gtk_check_button_new_with_mnemonic("Book"); gtk_widget_show(checkbutton_book); gtk_box_pack_start(GTK_BOX(hbox1), checkbutton_book, FALSE, FALSE, 0); shortcuts.button(checkbutton_book); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_book), settings->session.bnmu_add_book); checkbutton_chapter = gtk_check_button_new_with_mnemonic("Chapter"); gtk_widget_show(checkbutton_chapter); gtk_box_pack_start(GTK_BOX(hbox1), checkbutton_chapter, FALSE, FALSE, 0); shortcuts.button(checkbutton_chapter); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_chapter), settings->session.bnmu_add_chapter); entry_dot = gtk_entry_new(); gtk_widget_show(entry_dot); gtk_box_pack_start(GTK_BOX(hbox1), entry_dot, FALSE, FALSE, 0); gtk_entry_set_max_length(GTK_ENTRY(entry_dot), 1); gtk_entry_set_invisible_char(GTK_ENTRY(entry_dot), 8226); gtk_entry_set_width_chars(GTK_ENTRY(entry_dot), 2); gtk_entry_set_text(GTK_ENTRY(entry_dot), settings->session.bnmu_verse_prefix.c_str()); checkbutton_verse = gtk_check_button_new_with_mnemonic("Verse"); gtk_widget_show(checkbutton_verse); gtk_box_pack_start(GTK_BOX(hbox1), checkbutton_verse, FALSE, FALSE, 0); shortcuts.button(checkbutton_verse); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_verse), settings->session.bnmu_add_verse); entry2 = gtk_entry_new(); gtk_widget_show(entry2); gtk_box_pack_start(GTK_BOX(hbox1), entry2, FALSE, FALSE, 0); gtk_entry_set_max_length(GTK_ENTRY(entry2), 3); gtk_entry_set_invisible_char(GTK_ENTRY(entry2), 8226); gtk_entry_set_width_chars(GTK_ENTRY(entry2), 2); gtk_entry_set_text(GTK_ENTRY(entry2), settings->session.bnmu_verse_suffix.c_str()); vseparator1 = gtk_vseparator_new(); gtk_widget_show(vseparator1); gtk_box_pack_start(GTK_BOX(hbox1), vseparator1, FALSE, FALSE, 0); label_example = gtk_label_new(""); gtk_widget_show(label_example); gtk_box_pack_start(GTK_BOX(hbox1), label_example, FALSE, FALSE, 0); radiobutton_text_label = gtk_radio_button_new_with_mnemonic(NULL, "Add missing _text labels"); gtk_widget_show(radiobutton_text_label); gtk_box_pack_start(GTK_BOX(dialog_vbox1), radiobutton_text_label, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_text_label), radiobutton_remove_group); radiobutton_remove_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_text_label)); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(originreferencesdialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(originreferencesdialog, NULL, &shortcuts, "tools/bible-notes-mass-update"); cancelbutton = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton); gtk_dialog_add_action_widget(GTK_DIALOG(originreferencesdialog), cancelbutton, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton), true); okbutton = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton); gtk_dialog_add_action_widget(GTK_DIALOG(originreferencesdialog), okbutton, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton), true); shortcuts.stockbutton(cancelbutton); shortcuts.stockbutton(okbutton); shortcuts.process(); g_signal_connect((gpointer) radiobutton_nothing, "toggled", G_CALLBACK(on_radiobutton_action_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_remove, "toggled", G_CALLBACK(on_radiobutton_action_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_add, "toggled", G_CALLBACK(on_radiobutton_action_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_text_label, "toggled", G_CALLBACK(on_radiobutton_action_toggled), gpointer(this)); g_signal_connect((gpointer) checkbutton_book, "toggled", G_CALLBACK(on_checkbutton_reference_toggled), gpointer(this)); g_signal_connect((gpointer) checkbutton_chapter, "toggled", G_CALLBACK(on_checkbutton_reference_toggled), gpointer(this)); g_signal_connect((gpointer) entry_dot, "changed", G_CALLBACK(on_entry_reference_changed), gpointer(this)); g_signal_connect((gpointer) entry2, "changed", G_CALLBACK(on_entry_reference_changed), gpointer(this)); g_signal_connect((gpointer) checkbutton_verse, "toggled", G_CALLBACK(on_checkbutton_reference_toggled), gpointer(this)); g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(on_okbutton_clicked), gpointer(this)); gtk_widget_grab_default(okbutton); on_radiobutton_action(); on_reference(); } OriginReferencesDialog::~OriginReferencesDialog() { gtk_widget_destroy(originreferencesdialog); } int OriginReferencesDialog::run() { return gtk_dialog_run(GTK_DIALOG(originreferencesdialog)); } void OriginReferencesDialog::on_radiobutton_action_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((OriginReferencesDialog *) user_data)->on_radiobutton_action(); } void OriginReferencesDialog::on_radiobutton_action() { if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_nothing))) action = oratNothing; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_remove))) action = oratRemoveReferences; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_add))) action = oratAddReference; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_text_label))) action = oratTextLabels; bool sensitive = (action == oratAddReference); gtk_widget_set_sensitive(checkbutton_book, sensitive); gtk_widget_set_sensitive(checkbutton_chapter, sensitive); gtk_widget_set_sensitive(entry_dot, sensitive); gtk_widget_set_sensitive(checkbutton_verse, sensitive); gtk_widget_set_sensitive(entry2, sensitive); gtk_widget_set_sensitive(label_example, sensitive); } void OriginReferencesDialog::on_checkbutton_reference_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((OriginReferencesDialog *) user_data)->on_reference(); } void OriginReferencesDialog::on_entry_reference_changed(GtkEditable * editable, gpointer user_data) { ((OriginReferencesDialog *) user_data)->on_reference(); } void OriginReferencesDialog::on_reference() { ustring exampletext = origin_reference_produce(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_book)), 1, "English", gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_chapter)), 1, gtk_entry_get_text(GTK_ENTRY(entry_dot)), gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_verse)), "1", gtk_entry_get_text(GTK_ENTRY(entry2)), true); gtk_label_set_text(GTK_LABEL(label_example), exampletext.c_str()); } void OriginReferencesDialog::on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((OriginReferencesDialog *) user_data)->on_okbutton(); } void OriginReferencesDialog::on_okbutton() { // Double warning in case of an edit. if (action != oratNothing) { if (gtkw_dialog_question(originreferencesdialog, "Are you sure you wish to edit the notes?") == GTK_RESPONSE_NO) return; if (gtkw_dialog_question(originreferencesdialog, "This will permanently modify your project.\nThe changes cannot be undone.\nAre you sure?") == GTK_RESPONSE_NO) return; } // Store a few important settings in the session. extern Settings *settings; settings->session.bnmu_add_book = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_book)); settings->session.bnmu_add_chapter = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_chapter)); settings->session.bnmu_add_verse = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_verse)); settings->session.bnmu_verse_prefix = gtk_entry_get_text(GTK_ENTRY(entry_dot)); settings->session.bnmu_verse_suffix = gtk_entry_get_text(GTK_ENTRY(entry2)); // Do the thing. OriginReferences originreferences(settings->genconfig.project_get(), gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_footnotes)), gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_endnotes)), gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_xrefs)), action, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_book)), gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_chapter)), gtk_entry_get_text(GTK_ENTRY(entry_dot)), gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_verse)), gtk_entry_get_text(GTK_ENTRY(entry2)), true); } bibledit-gtk-4.9/src/dialogoriginreferences.h000664 000766 000024 00000004403 12221507136 021526 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGORIGINREFERENCES_H #define INCLUDED_DIALOGORIGINREFERENCES_H #include #include "ustring.h" #include "types.h" class OriginReferencesDialog { public: OriginReferencesDialog (int dummy); ~OriginReferencesDialog (); int run (); protected: GtkWidget *originreferencesdialog; GtkWidget *dialog_vbox1; GtkWidget *label3; GtkWidget *hseparator1; GtkWidget *label4; GtkWidget *checkbutton_footnotes; GtkWidget *checkbutton_endnotes; GtkWidget *checkbutton_xrefs; GtkWidget *hseparator2; GtkWidget *label5; GtkWidget *radiobutton_nothing; GtkWidget *radiobutton_remove; GtkWidget *hbox1; GtkWidget *radiobutton_add; GtkWidget *checkbutton_book; GtkWidget *checkbutton_chapter; GtkWidget *entry_dot; GtkWidget *checkbutton_verse; GtkWidget *entry2; GtkWidget *vseparator1; GtkWidget *label_example; GtkWidget *radiobutton_text_label; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton; GtkWidget *okbutton; private: static void on_radiobutton_action_toggled (GtkToggleButton *togglebutton, gpointer user_data); void on_radiobutton_action (); static void on_checkbutton_reference_toggled (GtkToggleButton *togglebutton, gpointer user_data); static void on_entry_reference_changed (GtkEditable *editable, gpointer user_data); void on_reference (); static void on_okbutton_clicked (GtkButton *button, gpointer user_data); void on_okbutton (); void get_relevant_markers (); OriginReferencesActionType action; }; #endif bibledit-gtk-4.9/src/dialogoutpost.cpp000664 000766 000024 00000006544 12221507146 020256 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogoutpost.h" #include "utilities.h" #include "gtkwrappers.h" #include "gwrappers.h" #include "uname.h" #include "unixwrappers.h" #include "directories.h" #include "gwrappers.h" #include "shell.h" #include "settings.h" #include "dialoglistview.h" #include "windowsoutpost.h" #include "progresswindow.h" #include "help.h" #include "tiny_utilities.h" OutpostDialog::OutpostDialog(int dummy) { // Save and initialize variables. // Build GUI. outpostdialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(outpostdialog), "Windows Outpost Setup"); gtk_window_set_position(GTK_WINDOW(outpostdialog), GTK_WIN_POS_CENTER_ON_PARENT); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(outpostdialog)); gtk_widget_show(dialog_vbox1); gtk_box_set_spacing (GTK_BOX (dialog_vbox1), 5); checkbutton_use = gtk_check_button_new_with_mnemonic ("_Use Windows Outpost"); gtk_widget_show (checkbutton_use); gtk_box_pack_start (GTK_BOX (dialog_vbox1), checkbutton_use, FALSE, FALSE, 0); // Set whether to use the outpost. extern Settings *settings; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_use), settings->genconfig.use_outpost_get()); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(outpostdialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(outpostdialog, NULL, NULL, "menu-preferences/windows-outpost"); cancelbutton = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton); gtk_dialog_add_action_widget(GTK_DIALOG(outpostdialog), cancelbutton, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton), true); okbutton = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton); gtk_dialog_add_action_widget(GTK_DIALOG(outpostdialog), okbutton, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton), true); g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(on_okbutton_clicked), gpointer(this)); gtk_widget_grab_default(okbutton); } OutpostDialog::~OutpostDialog() { gtk_widget_destroy(outpostdialog); } int OutpostDialog::run() { return gtk_dialog_run(GTK_DIALOG(outpostdialog)); } void OutpostDialog::on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((OutpostDialog *) user_data)->on_ok(); } void OutpostDialog::on_ok() { // Save variables. extern Settings *settings; bool use_outpost = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_use)); settings->genconfig.use_outpost_set(use_outpost); } bibledit-gtk-4.9/src/dialogoutpost.h000664 000766 000024 00000002417 12221507144 017714 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGOUTPOST_H #define INCLUDED_DIALOGOUTPOST_H #include #include "types.h" class OutpostDialog { public: OutpostDialog (int dummy); ~OutpostDialog (); int run (); bool changed; protected: private: GtkWidget *outpostdialog; GtkWidget *dialog_vbox1; GtkWidget *checkbutton_use; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton; GtkWidget *okbutton; static void on_okbutton_clicked (GtkButton *button, gpointer user_data); void on_ok (); }; #endif bibledit-gtk-4.9/src/dialogparallelbible.cpp000644 000766 000024 00000013565 12453001367 021333 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogparallelbible.h" #include "utilities.h" #include "projectutils.h" #include "directories.h" #include "combobox.h" #include "dialogselectchapters.h" #include "portion_utils.h" #include "settings.h" #include "help.h" #include "books.h" #include "shortcuts.h" #include "tiny_utilities.h" #include "gwrappers.h" #include "screen.h" ParallelBibleDialog::ParallelBibleDialog(int dummy) { gtkbuilder = gtk_builder_new (); gtk_builder_add_from_file (gtkbuilder, gw_build_filename (Directories->get_package_data(), "gtkbuilder.parallelbibledialog.xml").c_str(), NULL); Shortcuts shortcuts(0); extern Settings *settings; dialog = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "dialog")); label_main_project = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "label_main_project")); gtk_label_set_text (GTK_LABEL (label_main_project), settings->genconfig.project_get().c_str()); label_book = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "label_book")); gtk_label_set_text (GTK_LABEL (label_book), books_id_to_english(settings->genconfig.book_get()).c_str()); label_chapters = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "label_chapters")); vector chapters_from, chapters_to; vector verses_from, verses_to; select_portion_get_values(settings->genconfig.project_get(), settings->genconfig.book_get(), settings->genconfig.parallel_bible_chapters_verses_get(), chapters_from, verses_from, chapters_to, verses_to); ustring label; for (unsigned int i = 0; i < chapters_from.size(); i++) { if (i) label.append(" | "); label.append(select_portion_get_label(settings->genconfig.project_get(), settings->genconfig.book_get(), chapters_from[i], verses_from[i], chapters_to[i], verses_to[i])); } gtk_label_set_text(GTK_LABEL(label_chapters), label.c_str()); button_chapters = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "button_chapters")); g_signal_connect((gpointer) button_chapters, "clicked", G_CALLBACK(on_button_chapters_clicked), gpointer(this)); label_button_chapters = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "label_button_chapters")); shortcuts.label(label_button_chapters); hbox_select_bibles_gui = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "hbox_select_bibles_gui")); select_bibles_gui = new SelectBiblesGui (hbox_select_bibles_gui, shortcuts); vector bibles = settings->genconfig.parallel_bible_projects_get(); vector enabled = settings->genconfig.parallel_bible_enabled_get(); select_bibles_gui->set (enabled, bibles); checkbutton_keep_together = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "checkbutton_keep_together")); shortcuts.button(checkbutton_keep_together); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_keep_together), settings->genconfig.parallel_bible_keep_verses_together_get()); checkbutton_include_verse0 = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "checkbutton_include_verse0")); shortcuts.button(checkbutton_include_verse0); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_include_verse0), settings->genconfig.parallel_bible_include_verse_zero_get()); InDialogHelp * indialoghelp = new InDialogHelp(dialog, gtkbuilder, &shortcuts, NULL); cancelbutton = indialoghelp->cancelbutton; okbutton = indialoghelp->okbutton; gtk_widget_grab_default(okbutton); gtk_widget_grab_focus(okbutton); g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(on_okbutton_clicked), gpointer(this)); shortcuts.process(); gtk_widget_show(dialog); new DialogAutoScaler (dialog, G_MAXINT); } ParallelBibleDialog::~ParallelBibleDialog() { delete select_bibles_gui; g_object_unref (gtkbuilder); gtk_widget_destroy(dialog); } int ParallelBibleDialog::run() { return gtk_dialog_run(GTK_DIALOG(dialog)); } void ParallelBibleDialog::on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((ParallelBibleDialog *) user_data)->on_okbutton(); } void ParallelBibleDialog::on_okbutton() { // Save values. extern Settings *settings; vector enabled; vector bibles; select_bibles_gui->get (enabled, bibles); settings->genconfig.parallel_bible_projects_set(bibles); settings->genconfig.parallel_bible_enabled_set(enabled); settings->genconfig.parallel_bible_keep_verses_together_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_keep_together))); settings->genconfig.parallel_bible_chapters_verses_set(gtk_label_get_text(GTK_LABEL(label_chapters))); settings->genconfig.parallel_bible_include_verse_zero_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_include_verse0))); } void ParallelBibleDialog::on_button_chapters_clicked(GtkButton * button, gpointer user_data) { ((ParallelBibleDialog *) user_data)->on_button_chapters(); } void ParallelBibleDialog::on_button_chapters() { extern Settings *settings; SelectChaptersDialog dialog(settings->genconfig.project_get(), settings->genconfig.book_get(), gtk_label_get_text(GTK_LABEL(label_chapters))); if (dialog.run() == GTK_RESPONSE_OK) { gtk_label_set_text(GTK_LABEL(label_chapters), dialog.new_selection.c_str()); } } bibledit-gtk-4.9/src/dialogparallelbible.h000664 000766 000024 00000003330 12221507130 020757 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOG_PARALLEL_BIBLE_H #define INCLUDED_DIALOG_PARALLEL_BIBLE_H #include #include "ustring.h" #include "settings.h" #include "guiselectproject.h" #include "guiselectbibles.h" class ParallelBibleDialog { public: ParallelBibleDialog (int dummy); ~ParallelBibleDialog (); int run (); protected: GtkBuilder *gtkbuilder; GtkWidget *dialog; GtkWidget *label_main_project; GtkWidget *label_book; GtkWidget *label_chapters; GtkWidget *button_chapters; GtkWidget *label_button_chapters; GtkWidget *hbox_select_bibles_gui; SelectBiblesGui * select_bibles_gui; GtkWidget *checkbutton_keep_together; GtkWidget *checkbutton_include_verse0; GtkWidget *cancelbutton; GtkWidget *okbutton; private: static void on_okbutton_clicked (GtkButton *button, gpointer user_data); void on_okbutton (); static void on_button_chapters_clicked (GtkButton *button, gpointer user_data); void on_button_chapters (); }; #endif bibledit-gtk-4.9/src/dialogpdfviewer.cpp000664 000766 000024 00000014073 12221507144 020526 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "dialogpdfviewer.h" #include "help.h" #include "shortcuts.h" #include "settings.h" #include "pdfviewer.h" PDFViewerDialog::PDFViewerDialog(int dummy) { Shortcuts shortcuts(0); pdfviewerdialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(pdfviewerdialog), "PDF Viewer"); gtk_window_set_position(GTK_WINDOW(pdfviewerdialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(pdfviewerdialog), TRUE); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG (pdfviewerdialog)); gtk_widget_show(dialog_vbox1); GSList *radiobutton_automatic_group = NULL; radiobutton_automatic = gtk_radio_button_new_with_mnemonic(NULL, "Automatic"); gtk_widget_show(radiobutton_automatic); gtk_box_pack_start(GTK_BOX(dialog_vbox1), radiobutton_automatic, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_automatic), radiobutton_automatic_group); radiobutton_automatic_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_automatic)); shortcuts.button(radiobutton_automatic); radiobutton_manual = gtk_radio_button_new_with_mnemonic(NULL, "Manual"); gtk_widget_show(radiobutton_manual); gtk_box_pack_start(GTK_BOX(dialog_vbox1), radiobutton_manual, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_manual), radiobutton_automatic_group); radiobutton_automatic_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_manual)); shortcuts.button(radiobutton_manual); label_path = gtk_label_new("Path to PDF Viewer"); gtk_widget_show(label_path); gtk_box_pack_start(GTK_BOX(dialog_vbox1), label_path, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label_path), 0, 0.5); shortcuts.label(label_path); entry_path = gtk_entry_new(); gtk_widget_show(entry_path); gtk_box_pack_start(GTK_BOX(dialog_vbox1), entry_path, FALSE, FALSE, 0); gtk_label_set_mnemonic_widget(GTK_LABEL(label_path), entry_path); label_arguments = gtk_label_new("Optional arguments"); gtk_widget_show(label_arguments); gtk_box_pack_start(GTK_BOX(dialog_vbox1), label_arguments, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label_arguments), 0, 0.5); shortcuts.label(label_arguments); entry_arguments = gtk_entry_new(); gtk_widget_show(entry_arguments); gtk_box_pack_start(GTK_BOX(dialog_vbox1), entry_arguments, FALSE, FALSE, 0); gtk_label_set_mnemonic_widget(GTK_LABEL(label_arguments), entry_arguments); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(pdfviewerdialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(pdfviewerdialog, NULL, &shortcuts, NULL); cancelbutton = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton); gtk_dialog_add_action_widget(GTK_DIALOG(pdfviewerdialog), cancelbutton, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton), true); okbutton = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton); gtk_dialog_add_action_widget(GTK_DIALOG(pdfviewerdialog), okbutton, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton), true); shortcuts.stockbutton(cancelbutton); shortcuts.stockbutton(okbutton); shortcuts.process(); g_signal_connect((gpointer) radiobutton_automatic, "toggled", G_CALLBACK(on_radiobutton_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_manual, "toggled", G_CALLBACK(on_radiobutton_toggled), gpointer(this)); g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(on_okbutton_clicked), gpointer(this)); gtk_widget_grab_focus(okbutton); gtk_widget_grab_default(okbutton); // Initialize the GUI. extern Settings *settings; if (settings->genconfig.pdf_viewer_automatic_get()) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_automatic), true); else gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_manual), true); gtk_entry_set_text(GTK_ENTRY(entry_path), settings->genconfig.pdf_viewer_path_get().c_str()); gtk_entry_set_text(GTK_ENTRY(entry_arguments), settings->genconfig.pdf_viewer_arguments_get().c_str()); gui(); } PDFViewerDialog::~PDFViewerDialog() { gtk_widget_destroy(pdfviewerdialog); } int PDFViewerDialog::run() { return gtk_dialog_run(GTK_DIALOG(pdfviewerdialog)); } void PDFViewerDialog::on_radiobutton_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((PDFViewerDialog *) user_data)->on_radiobutton(); } void PDFViewerDialog::on_radiobutton() { gui(); } void PDFViewerDialog::on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((PDFViewerDialog *) user_data)->on_okbutton(); } void PDFViewerDialog::on_okbutton() { extern Settings *settings; settings->genconfig.pdf_viewer_automatic_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_automatic))); settings->genconfig.pdf_viewer_path_set(gtk_entry_get_text(GTK_ENTRY(entry_path))); settings->genconfig.pdf_viewer_arguments_set(gtk_entry_get_text(GTK_ENTRY(entry_arguments))); } void PDFViewerDialog::gui() { bool manual = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_manual)); gtk_widget_set_sensitive(label_path, manual); gtk_widget_set_sensitive(entry_path, manual); gtk_widget_set_sensitive(label_arguments, manual); gtk_widget_set_sensitive(entry_arguments, manual); } bibledit-gtk-4.9/src/dialogpdfviewer.h000664 000766 000024 00000003057 12221507142 020171 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOG_PDF_VIEWER_H #define INCLUDED_DIALOG_PDF_VIEWER_H #include #include "ustring.h" class PDFViewerDialog { public: PDFViewerDialog (int dummy); ~PDFViewerDialog (); int run (); protected: GtkWidget *pdfviewerdialog; GtkWidget *dialog_vbox1; GtkWidget *radiobutton_automatic; GtkWidget *radiobutton_manual; GtkWidget *label_path; GtkWidget *entry_path; GtkWidget *label_arguments; GtkWidget *entry_arguments; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton; GtkWidget *okbutton; private: static void on_radiobutton_toggled (GtkToggleButton *togglebutton, gpointer user_data); void on_radiobutton (); static void on_okbutton_clicked (GtkButton *button, gpointer user_data); void on_okbutton (); void gui (); }; #endif bibledit-gtk-4.9/src/dialogplanningedit.cpp000644 000766 000024 00000006710 12453001367 021207 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogplanningedit.h" #include "help.h" #include "settings.h" #include "dialogeditlist.h" #include "reporting.h" #include "dialogtaskduration.h" #include "date_time_utils.h" #include "dialogdate.h" #include "gwrappers.h" #include "directories.h" #include "dialogeditstatus.h" #include "planning.h" PlanningEditDialog::PlanningEditDialog(unsigned int book, unsigned int chapter) { // Initialize variables mybook = book; mychapter = chapter; // Build gui. gtkbuilder = gtk_builder_new (); gtk_builder_add_from_file (gtkbuilder, gw_build_filename (Directories->get_package_data(), "gtkbuilder.planningeditdialog.xml").c_str(), NULL); Shortcuts shortcuts(0); dialog = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "dialog")); button_status = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "button_status")); shortcuts.button (button_status); g_signal_connect((gpointer) button_status, "clicked", G_CALLBACK(on_button_status_clicked), gpointer(this)); button_tasks = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "button_tasks")); shortcuts.button (button_tasks); g_signal_connect((gpointer) button_tasks, "clicked", G_CALLBACK(on_button_tasks_clicked), gpointer(this)); InDialogHelp * indialoghelp = new InDialogHelp(dialog, gtkbuilder, &shortcuts, NULL); cancelbutton = indialoghelp->cancelbutton; shortcuts.stockbutton (cancelbutton); okbutton = indialoghelp->okbutton; shortcuts.stockbutton (okbutton); gtk_widget_grab_default(okbutton); gtk_widget_grab_focus(okbutton); g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(on_okbutton_clicked), gpointer(this)); shortcuts.process(); gui(); } PlanningEditDialog::~PlanningEditDialog() { g_object_unref (gtkbuilder); gtk_widget_destroy(dialog); } int PlanningEditDialog::run() { return gtk_dialog_run(GTK_DIALOG(dialog)); } void PlanningEditDialog::on_button_status_clicked(GtkButton * button, gpointer user_data) { ((PlanningEditDialog *) user_data)->on_button_status(); } void PlanningEditDialog::on_button_status() { extern Settings *settings; EditStatusDialog dialog(settings->genconfig.project_get(), mybook, mychapter); dialog.run(); } void PlanningEditDialog::on_button_tasks_clicked(GtkButton * button, gpointer user_data) { ((PlanningEditDialog *) user_data)->on_button_tasks(); } void PlanningEditDialog::on_button_tasks() { extern Settings *settings; planning_edit(settings->genconfig.project_get()); } void PlanningEditDialog::on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((PlanningEditDialog *) user_data)->on_okbutton(); } void PlanningEditDialog::on_okbutton() { } void PlanningEditDialog::gui() { } bibledit-gtk-4.9/src/dialogplanningedit.h000664 000766 000024 00000003264 12221507130 020647 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGPLANNING_EDIT_H #define INCLUDED_DIALOGPLANNING_EDIT_H #include #include "ustring.h" class PlanningEditDialog { public: PlanningEditDialog (unsigned int book, unsigned int chapter); ~PlanningEditDialog (); int run (); protected: GtkBuilder *gtkbuilder; GtkWidget *dialog; GtkWidget *button_status; GtkWidget *button_tasks; GtkWidget *cancelbutton; GtkWidget *okbutton; private: unsigned int mybook; unsigned int mychapter; static void on_button_status_clicked (GtkButton *button, gpointer user_data); void on_button_status (); static void on_button_tasks_clicked (GtkButton *button, gpointer user_data); void on_button_tasks (); static void on_button_time_clicked (GtkButton *button, gpointer user_data); void on_button_time (); static void on_okbutton_clicked (GtkButton *button, gpointer user_data); void on_okbutton (); void gui (); }; #endif bibledit-gtk-4.9/src/dialogplanningsetup.cpp000644 000766 000024 00000012374 12453001367 021425 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogplanningsetup.h" #include "help.h" #include "settings.h" #include "dialogeditlist.h" #include "reporting.h" #include "dialogtaskduration.h" #include "date_time_utils.h" #include "dialogdate.h" #include "gwrappers.h" #include "directories.h" PlanningSetupDialog::PlanningSetupDialog(int dummy) { // Initialize variables extern Settings *settings; startdate = settings->projectconfig(settings->genconfig.project_get())->planning_project_start_get(); tasks = settings->genconfig.project_tasks_names_get(); durations = settings->genconfig.project_tasks_durations_get(); reporting_check_tasks_and_durations(tasks, &durations); tasks_ever = tasks; durations_ever = durations; // Build gui. gtkbuilder = gtk_builder_new (); gtk_builder_add_from_file (gtkbuilder, gw_build_filename (Directories->get_package_data(), "gtkbuilder.planningsetupdialog.xml").c_str(), NULL); Shortcuts shortcuts(0); dialog = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "dialog")); button_start = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "button_start")); shortcuts.button (button_start); g_signal_connect((gpointer) button_start, "clicked", G_CALLBACK(on_button_start_clicked), gpointer(this)); button_tasks = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "button_tasks")); shortcuts.button (button_tasks); g_signal_connect((gpointer) button_tasks, "clicked", G_CALLBACK(on_button_tasks_clicked), gpointer(this)); button_time = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "button_time")); shortcuts.button (button_time); g_signal_connect((gpointer) button_time, "clicked", G_CALLBACK(on_button_time_clicked), gpointer(this)); InDialogHelp * indialoghelp = new InDialogHelp(dialog, gtkbuilder, &shortcuts, NULL); cancelbutton = indialoghelp->cancelbutton; shortcuts.stockbutton (cancelbutton); okbutton = indialoghelp->okbutton; shortcuts.stockbutton (okbutton); gtk_widget_grab_default(okbutton); gtk_widget_grab_focus(okbutton); g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(on_okbutton_clicked), gpointer(this)); shortcuts.process(); gui(); } PlanningSetupDialog::~PlanningSetupDialog() { g_object_unref (gtkbuilder); gtk_widget_destroy(dialog); } int PlanningSetupDialog::run() { return gtk_dialog_run(GTK_DIALOG(dialog)); } void PlanningSetupDialog::on_button_start_clicked(GtkButton * button, gpointer user_data) { ((PlanningSetupDialog *) user_data)->on_button_start(); } void PlanningSetupDialog::on_button_start() { guint seconds = date_time_julian_to_seconds(startdate); DateDialog dialog(&seconds); if (dialog.run() == GTK_RESPONSE_OK) { startdate = date_time_seconds_to_julian(seconds); gui(); } } void PlanningSetupDialog::on_button_tasks_clicked(GtkButton * button, gpointer user_data) { ((PlanningSetupDialog *) user_data)->on_button_tasks(); } void PlanningSetupDialog::on_button_tasks() { // Run the dialog for editing the tasks. EditListDialog dialog(&tasks, "Tasks", "of tasks - add, remove, or re-order them", true, true, false, false, false, false, true, NULL); if (dialog.run() == GTK_RESPONSE_OK) { // Get the appropriate values for the durations, aligned to the tasks. durations.clear(); for (unsigned int i = 0; i < tasks.size(); i++) { double duration = 0.5; for (unsigned int i2 = 0; i2 < tasks_ever.size(); i2++) { if (tasks[i] == tasks_ever[i2]) { duration = durations_ever[i2]; } } durations.push_back(duration); // Store task and duration in the ones we've ever seen. tasks_ever.push_back(tasks[i]); durations_ever.push_back(duration); } } } void PlanningSetupDialog::on_button_time_clicked(GtkButton * button, gpointer user_data) { ((PlanningSetupDialog *) user_data)->on_button_time(); } void PlanningSetupDialog::on_button_time() { TaskDurationDialog dialog(&tasks, &durations); dialog.run(); } void PlanningSetupDialog::on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((PlanningSetupDialog *) user_data)->on_okbutton(); } void PlanningSetupDialog::on_okbutton() { extern Settings *settings; settings->projectconfig(settings->genconfig.project_get())->planning_project_start_set(startdate); settings->genconfig.project_tasks_names_set(tasks); settings->genconfig.project_tasks_durations_set(durations); } void PlanningSetupDialog::gui() { gtk_button_set_label(GTK_BUTTON(button_start), date_time_julian_human_readable(startdate, false).c_str()); } bibledit-gtk-4.9/src/dialogplanningsetup.h000664 000766 000024 00000003405 12221507127 021065 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGPLANNINGSETUP_H #define INCLUDED_DIALOGPLANNINGSETUP_H #include #include "ustring.h" class PlanningSetupDialog { public: PlanningSetupDialog (int dummy); ~PlanningSetupDialog (); int run (); protected: GtkBuilder *gtkbuilder; GtkWidget *dialog; GtkWidget *button_start; GtkWidget *button_tasks; GtkWidget *button_time; GtkWidget *cancelbutton; GtkWidget *okbutton; private: static void on_button_start_clicked (GtkButton *button, gpointer user_data); void on_button_start (); int startdate; static void on_button_tasks_clicked (GtkButton *button, gpointer user_data); void on_button_tasks (); vector tasks; vector tasks_ever; static void on_button_time_clicked (GtkButton *button, gpointer user_data); void on_button_time (); vector durations; vector durations_ever; static void on_okbutton_clicked (GtkButton *button, gpointer user_data); void on_okbutton (); void gui (); }; #endif bibledit-gtk-4.9/src/dialogprintprefs.cpp000664 000766 000024 00000040302 12221507147 020724 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogprintprefs.h" #include "paper.h" #include "combobox.h" #include "settings.h" #include "help.h" PrintPreferencesDialog::PrintPreferencesDialog(int dummy) { // Settings extern Settings *settings; dialogprintpreferences = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(dialogprintpreferences), "Printing preferences"); gtk_window_set_position(GTK_WINDOW(dialogprintpreferences), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(dialogprintpreferences), TRUE); gtk_window_set_destroy_with_parent(GTK_WINDOW(dialogprintpreferences), TRUE); gtk_window_set_type_hint(GTK_WINDOW(dialogprintpreferences), GDK_WINDOW_TYPE_HINT_DIALOG); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(dialogprintpreferences)); gtk_widget_show(dialog_vbox1); notebook1 = gtk_notebook_new(); gtk_widget_show(notebook1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), notebook1, FALSE, TRUE, 0); gtk_container_set_border_width(GTK_CONTAINER(notebook1), 4); // Page setup. hbox1 = gtk_hbox_new(FALSE, 10); gtk_widget_show(hbox1); gtk_container_add(GTK_CONTAINER(notebook1), hbox1); gtk_container_set_border_width(GTK_CONTAINER(hbox1), 10); table1 = gtk_table_new(4, 2, FALSE); gtk_widget_show(table1); gtk_box_pack_start(GTK_BOX(hbox1), table1, TRUE, TRUE, 0); gtk_table_set_row_spacings(GTK_TABLE(table1), 6); gtk_table_set_col_spacings(GTK_TABLE(table1), 2); spinbutton_height_adj = gtk_adjustment_new(1, 0, 100, 0.01, 0.1, 0); spinbutton_height = gtk_spin_button_new(GTK_ADJUSTMENT(spinbutton_height_adj), 1, 2); gtk_widget_show(spinbutton_height); gtk_table_attach(GTK_TABLE(table1), spinbutton_height, 1, 2, 3, 4, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_spin_button_set_numeric(GTK_SPIN_BUTTON(spinbutton_height), TRUE); gtk_spin_button_set_value(GTK_SPIN_BUTTON(spinbutton_height), settings->genconfig.paper_height_get()); label4 = gtk_label_new("Height (cm)"); gtk_widget_show(label4); gtk_table_attach(GTK_TABLE(table1), label4, 0, 1, 3, 4, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label4), 1, 0.5); spinbutton_width_adj = gtk_adjustment_new(1, 0, 100, 0.01, 0.1, 0); spinbutton_width = gtk_spin_button_new(GTK_ADJUSTMENT(spinbutton_width_adj), 1, 2); gtk_widget_show(spinbutton_width); gtk_table_attach(GTK_TABLE(table1), spinbutton_width, 1, 2, 2, 3, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_spin_button_set_numeric(GTK_SPIN_BUTTON(spinbutton_width), TRUE); gtk_spin_button_set_value(GTK_SPIN_BUTTON(spinbutton_width), settings->genconfig.paper_width_get()); label3 = gtk_label_new("Width (cm)"); gtk_widget_show(label3); gtk_table_attach(GTK_TABLE(table1), label3, 0, 1, 2, 3, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label3), 1, 0.5); label2 = gtk_label_new("Format"); gtk_widget_show(label2); gtk_table_attach(GTK_TABLE(table1), label2, 0, 1, 1, 2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label2), 1, 0.5); combo_format = gtk_combo_box_new_text(); gtk_widget_show(combo_format); gtk_table_attach(GTK_TABLE(table1), combo_format, 1, 2, 1, 2, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); { vector < ustring > items; for (unsigned int i = 0; i <= NUMBER_OF_PAPERSIZES; i++) { items.push_back(paper_size_get_name(i)); } combobox_set_strings(combo_format, items); } gtk_widget_set_size_request(combo_format, 100, -1); combobox_set_string(combo_format, settings->genconfig.paper_format_get()); label5 = gtk_label_new("Paper format"); gtk_widget_show(label5); gtk_table_attach(GTK_TABLE(table1), label5, 0, 2, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label5), 0.06, 0.5); vseparator1 = gtk_vseparator_new(); gtk_widget_show(vseparator1); gtk_box_pack_start(GTK_BOX(hbox1), vseparator1, FALSE, TRUE, 0); table2 = gtk_table_new(5, 2, FALSE); gtk_widget_show(table2); gtk_box_pack_start(GTK_BOX(hbox1), table2, TRUE, TRUE, 0); gtk_table_set_row_spacings(GTK_TABLE(table2), 6); gtk_table_set_col_spacings(GTK_TABLE(table2), 2); label6 = gtk_label_new("Margins (cm)"); gtk_widget_show(label6); gtk_table_attach(GTK_TABLE(table2), label6, 0, 2, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label6), 0.06, 0.5); label7 = gtk_label_new("Inner"); gtk_widget_show(label7); gtk_table_attach(GTK_TABLE(table2), label7, 0, 1, 1, 2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label7), 1, 0.5); label8 = gtk_label_new("Outer"); gtk_widget_show(label8); gtk_table_attach(GTK_TABLE(table2), label8, 0, 1, 2, 3, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label8), 1, 0.5); label9 = gtk_label_new("Top"); gtk_widget_show(label9); gtk_table_attach(GTK_TABLE(table2), label9, 0, 1, 3, 4, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label9), 1, 0.5); label10 = gtk_label_new("Bottom"); gtk_widget_show(label10); gtk_table_attach(GTK_TABLE(table2), label10, 0, 1, 4, 5, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label10), 1, 0.5); spinbutton_left_adj = gtk_adjustment_new(1, 0, 100, 0.01, 0.1, 0); spinbutton_left = gtk_spin_button_new(GTK_ADJUSTMENT(spinbutton_left_adj), 1, 2); gtk_widget_show(spinbutton_left); gtk_table_attach(GTK_TABLE(table2), spinbutton_left, 1, 2, 1, 2, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_spin_button_set_numeric(GTK_SPIN_BUTTON(spinbutton_left), TRUE); gtk_spin_button_set_value(GTK_SPIN_BUTTON(spinbutton_left), settings->genconfig.paper_inside_margin_get()); spinbutton_right_adj = gtk_adjustment_new(1, 0, 100, 0.01, 0.1, 0); spinbutton_right = gtk_spin_button_new(GTK_ADJUSTMENT(spinbutton_right_adj), 1, 2); gtk_widget_show(spinbutton_right); gtk_table_attach(GTK_TABLE(table2), spinbutton_right, 1, 2, 2, 3, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_spin_button_set_numeric(GTK_SPIN_BUTTON(spinbutton_right), TRUE); gtk_spin_button_set_value(GTK_SPIN_BUTTON(spinbutton_right), settings->genconfig.paper_outside_margin_get()); spinbutton_top_adj = gtk_adjustment_new(1, 0, 100, 0.01, 0.1, 0); spinbutton_top = gtk_spin_button_new(GTK_ADJUSTMENT(spinbutton_top_adj), 1, 2); gtk_widget_show(spinbutton_top); gtk_table_attach(GTK_TABLE(table2), spinbutton_top, 1, 2, 3, 4, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_spin_button_set_numeric(GTK_SPIN_BUTTON(spinbutton_top), TRUE); gtk_spin_button_set_value(GTK_SPIN_BUTTON(spinbutton_top), settings->genconfig.paper_top_margin_get()); spinbutton_bottom_adj = gtk_adjustment_new(1, 0, 100, 0.01, 0.1, 0); spinbutton_bottom = gtk_spin_button_new(GTK_ADJUSTMENT(spinbutton_bottom_adj), 1, 2); gtk_widget_show(spinbutton_bottom); gtk_table_attach(GTK_TABLE(table2), spinbutton_bottom, 1, 2, 4, 5, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_spin_button_set_numeric(GTK_SPIN_BUTTON(spinbutton_bottom), TRUE); gtk_spin_button_set_value(GTK_SPIN_BUTTON(spinbutton_bottom), settings->genconfig.paper_bottom_margin_get()); vseparator2 = gtk_vseparator_new(); gtk_widget_show(vseparator2); gtk_box_pack_start(GTK_BOX(hbox1), vseparator2, TRUE, TRUE, 0); vbox1 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox1); gtk_box_pack_start(GTK_BOX(hbox1), vbox1, TRUE, TRUE, 0); checkbuttondate = gtk_check_button_new_with_mnemonic("Print date beside page number"); gtk_widget_show(checkbuttondate); gtk_box_pack_start(GTK_BOX(vbox1), checkbuttondate, FALSE, FALSE, 0); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbuttondate), settings->genconfig.printdate_get()); hbox2 = gtk_hbox_new(FALSE, 5); gtk_widget_show(hbox2); gtk_box_pack_start(GTK_BOX(vbox1), hbox2, FALSE, FALSE, 0); label12 = gtk_label_new("Header font size"); gtk_widget_show(label12); gtk_box_pack_start(GTK_BOX(hbox2), label12, FALSE, FALSE, 0); spinbutton_header_font_size_adj = gtk_adjustment_new(12, 5, 25, 0.1, 1, 0); spinbutton_header_font_size = gtk_spin_button_new(GTK_ADJUSTMENT(spinbutton_header_font_size_adj), 1, 1); gtk_widget_show(spinbutton_header_font_size); gtk_box_pack_start(GTK_BOX(hbox2), spinbutton_header_font_size, FALSE, FALSE, 0); gtk_spin_button_set_numeric(GTK_SPIN_BUTTON(spinbutton_header_font_size), TRUE); gtk_spin_button_set_value(GTK_SPIN_BUTTON(spinbutton_header_font_size), settings->genconfig.header_font_size_get()); label13 = gtk_label_new("points"); gtk_widget_show(label13); gtk_box_pack_start(GTK_BOX(hbox2), label13, FALSE, FALSE, 0); label1 = gtk_label_new("Page"); gtk_widget_show(label1); gtk_notebook_set_tab_label(GTK_NOTEBOOK(notebook1), gtk_notebook_get_nth_page(GTK_NOTEBOOK(notebook1), 0), label1); // Formatter setup. vbox2 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox2); gtk_container_add(GTK_CONTAINER(notebook1), vbox2); checkbutton_intermediate_text = gtk_check_button_new_with_mnemonic("Review or edit layout engine's commands"); gtk_widget_show(checkbutton_intermediate_text); gtk_box_pack_start(GTK_BOX(vbox2), checkbutton_intermediate_text, FALSE, FALSE, 0); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_intermediate_text), settings->genconfig.print_engine_use_intermediate_text_get()); label11 = gtk_label_new("Formatter"); gtk_widget_show(label11); gtk_notebook_set_tab_label(GTK_NOTEBOOK(notebook1), gtk_notebook_get_nth_page(GTK_NOTEBOOK(notebook1), 1), label11); // Dialog action area. dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(dialogprintpreferences)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(dialogprintpreferences, NULL, NULL, NULL); cancelbutton1 = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton1); gtk_dialog_add_action_widget(GTK_DIALOG(dialogprintpreferences), cancelbutton1, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton1), true); okbutton1 = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton1); gtk_dialog_add_action_widget(GTK_DIALOG(dialogprintpreferences), okbutton1, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton1), true); g_signal_connect((gpointer) spinbutton_height, "changed", G_CALLBACK(on_spinbutton_height_changed), gpointer(this)); g_signal_connect((gpointer) spinbutton_width, "changed", G_CALLBACK(on_spinbutton_width_changed), gpointer(this)); g_signal_connect((gpointer) combo_format, "changed", G_CALLBACK(on_combo_entry_format_changed), gpointer(this)); g_signal_connect((gpointer) okbutton1, "clicked", G_CALLBACK(on_okbutton1_clicked), gpointer(this)); gtk_widget_grab_default(okbutton1); // Control sizes, margins. on_combo_entry_format(); adjust_margin_limits(); } PrintPreferencesDialog::~PrintPreferencesDialog() { gtk_widget_destroy(dialogprintpreferences); } int PrintPreferencesDialog::run() { return gtk_dialog_run(GTK_DIALOG(dialogprintpreferences)); } void PrintPreferencesDialog::on_spinbutton_height_changed(GtkEditable * editable, gpointer user_data) { ((PrintPreferencesDialog *) user_data)->on_spinbutton_height(); } void PrintPreferencesDialog::on_spinbutton_height() { set_paper_format(); adjust_margin_limits(); } void PrintPreferencesDialog::on_spinbutton_width_changed(GtkEditable * editable, gpointer user_data) { ((PrintPreferencesDialog *) user_data)->on_spinbutton_width(); } void PrintPreferencesDialog::on_spinbutton_width() { set_paper_format(); adjust_margin_limits(); } void PrintPreferencesDialog::on_combo_entry_format_changed(GtkEditable * editable, gpointer user_data) { ((PrintPreferencesDialog *) user_data)->on_combo_entry_format(); } void PrintPreferencesDialog::on_combo_entry_format() { ustring format; format = combobox_get_active_string(combo_format); double width; width = paper_size_get_width(format); if (width != 0) { gtk_spin_button_set_value(GTK_SPIN_BUTTON(spinbutton_width), width); gtk_spin_button_set_value(GTK_SPIN_BUTTON(spinbutton_height), paper_size_get_height(format)); } } void PrintPreferencesDialog::on_okbutton1_clicked(GtkButton * button, gpointer user_data) { ((PrintPreferencesDialog *) user_data)->on_okbutton1(); } void PrintPreferencesDialog::on_okbutton1() { // Update all spinbuttons. gtk_spin_button_update(GTK_SPIN_BUTTON(spinbutton_width)); gtk_spin_button_update(GTK_SPIN_BUTTON(spinbutton_height)); gtk_spin_button_update(GTK_SPIN_BUTTON(spinbutton_left)); gtk_spin_button_update(GTK_SPIN_BUTTON(spinbutton_right)); gtk_spin_button_update(GTK_SPIN_BUTTON(spinbutton_top)); gtk_spin_button_update(GTK_SPIN_BUTTON(spinbutton_bottom)); gtk_spin_button_update(GTK_SPIN_BUTTON(spinbutton_header_font_size)); // Store all values in the configuration. extern Settings *settings; settings->genconfig.paper_format_set(combobox_get_active_string(combo_format)); settings->genconfig.paper_width_set(gtk_spin_button_get_value(GTK_SPIN_BUTTON(spinbutton_width))); settings->genconfig.paper_height_set(gtk_spin_button_get_value(GTK_SPIN_BUTTON(spinbutton_height))); settings->genconfig.paper_inside_margin_set(gtk_spin_button_get_value(GTK_SPIN_BUTTON(spinbutton_left))); settings->genconfig.paper_outside_margin_set(gtk_spin_button_get_value(GTK_SPIN_BUTTON(spinbutton_right))); settings->genconfig.paper_top_margin_set(gtk_spin_button_get_value(GTK_SPIN_BUTTON(spinbutton_top))); settings->genconfig.paper_bottom_margin_set(gtk_spin_button_get_value(GTK_SPIN_BUTTON(spinbutton_bottom))); settings->genconfig.printdate_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbuttondate))); settings->genconfig.header_font_size_set(gtk_spin_button_get_value(GTK_SPIN_BUTTON(spinbutton_header_font_size))); settings->genconfig.print_engine_use_intermediate_text_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_intermediate_text))); } void PrintPreferencesDialog::adjust_margin_limits() // Adjust the limits of the margins depending on the paper size. { // Any margin should be limited to 40 percent of the corresponding height or width. double limit; double size; // Deal with left and right margins. size = gtk_spin_button_get_value(GTK_SPIN_BUTTON(spinbutton_width)); limit = 0.4 * size; gtk_spin_button_set_range(GTK_SPIN_BUTTON(spinbutton_left), 0, limit); gtk_spin_button_set_range(GTK_SPIN_BUTTON(spinbutton_right), 0, limit); // Top and bottom margins. size = gtk_spin_button_get_value(GTK_SPIN_BUTTON(spinbutton_height)); limit = 0.4 * size; gtk_spin_button_set_range(GTK_SPIN_BUTTON(spinbutton_top), 0, limit); gtk_spin_button_set_range(GTK_SPIN_BUTTON(spinbutton_bottom), 0, limit); } void PrintPreferencesDialog::set_paper_format() // Depending on the width and height of the paper, select the right format // belonging to it, or if none fits, choose "User defined". { double width; width = gtk_spin_button_get_value(GTK_SPIN_BUTTON(spinbutton_width)); double height; height = gtk_spin_button_get_value(GTK_SPIN_BUTTON(spinbutton_height)); string size; size = paper_size_get_name(width, height); combobox_set_string(combo_format, size); } bibledit-gtk-4.9/src/dialogprintprefs.h000664 000766 000024 00000005435 12221507144 020376 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003 The Free Software Foundation. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGPRINTPREFS_H #define INCLUDED_DIALOGPRINTPREFS_H #include class PrintPreferencesDialog { public: PrintPreferencesDialog(int dummy); ~PrintPreferencesDialog(); int run(); protected: private: GtkWidget *dialogprintpreferences; GtkWidget *dialog_vbox1; GtkWidget *notebook1; // Page setup. GtkWidget *hbox1; GtkWidget *table1; GtkObject *spinbutton_height_adj; GtkWidget *spinbutton_height; GtkWidget *label4; GtkObject *spinbutton_width_adj; GtkWidget *spinbutton_width; GtkWidget *label3; GtkWidget *label2; GtkWidget *combo_format; GtkWidget *combo_entry_format; GtkWidget *label5; GtkWidget *vseparator1; GtkWidget *table2; GtkWidget *label6; GtkWidget *label7; GtkWidget *label8; GtkWidget *label9; GtkWidget *label10; GtkObject *spinbutton_left_adj; GtkWidget *spinbutton_left; GtkObject *spinbutton_right_adj; GtkWidget *spinbutton_right; GtkObject *spinbutton_top_adj; GtkWidget *spinbutton_top; GtkObject *spinbutton_bottom_adj; GtkWidget *spinbutton_bottom; GtkWidget *vseparator2; GtkWidget *vbox1; GtkWidget *checkbuttondate; GtkWidget *hbox2; GtkWidget *label12; GtkObject *spinbutton_header_font_size_adj; GtkWidget *spinbutton_header_font_size; GtkWidget *label13; GtkWidget *label1; // Formatter setup. GtkWidget *vbox2; GtkWidget *checkbutton_intermediate_text; GtkWidget *label11; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton1; GtkWidget *okbutton1; static void on_spinbutton_height_changed(GtkEditable *editable, gpointer user_data); void on_spinbutton_height(); static void on_spinbutton_width_changed(GtkEditable *editable, gpointer user_data); void on_spinbutton_width(); static void on_combo_entry_format_changed(GtkEditable *editable, gpointer user_data); void on_combo_entry_format(); static void on_okbutton1_clicked(GtkButton *button, gpointer user_data); void on_okbutton1(); void adjust_margin_limits(); void set_paper_format(); }; #endif bibledit-gtk-4.9/src/dialogprintproject.cpp000664 000766 000024 00000014700 12221507141 021250 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogprintproject.h" #include "utilities.h" #include "bible.h" #include "usfm.h" #include "usfmtools.h" #include "xmlutils.h" #include #include "settings.h" #include "scriptureportions.h" #include "help.h" #include "dialogselectbooks.h" #include "shortcuts.h" PrintProjectDialog::PrintProjectDialog(int dummy) { extern Settings *settings; Shortcuts shortcuts(0); printprojectdialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(printprojectdialog), "Print project"); gtk_window_set_position(GTK_WINDOW(printprojectdialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(printprojectdialog), TRUE); gtk_window_set_destroy_with_parent(GTK_WINDOW(printprojectdialog), TRUE); gtk_window_set_type_hint(GTK_WINDOW(printprojectdialog), GDK_WINDOW_TYPE_HINT_DIALOG); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(printprojectdialog)); gtk_widget_show(dialog_vbox1); vbox1 = gtk_vbox_new(FALSE, 2); gtk_widget_show(vbox1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), vbox1, TRUE, TRUE, 0); hbox1 = gtk_hbox_new(FALSE, 4); gtk_widget_show(hbox1); gtk_box_pack_start(GTK_BOX(vbox1), hbox1, TRUE, TRUE, 0); label1 = gtk_label_new("Portion:"); gtk_widget_show(label1); gtk_box_pack_start(GTK_BOX(hbox1), label1, FALSE, FALSE, 0); label_portion = gtk_label_new(""); gtk_widget_show(label_portion); gtk_box_pack_start(GTK_BOX(hbox1), label_portion, FALSE, FALSE, 0); button_portion = gtk_button_new(); gtk_widget_show(button_portion); gtk_box_pack_start(GTK_BOX(hbox1), button_portion, FALSE, FALSE, 0); alignment1 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment1); gtk_container_add(GTK_CONTAINER(button_portion), alignment1); hbox2 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox2); gtk_container_add(GTK_CONTAINER(alignment1), hbox2); image1 = gtk_image_new_from_stock("gtk-properties", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image1); gtk_box_pack_start(GTK_BOX(hbox2), image1, FALSE, FALSE, 0); label5 = gtk_label_new_with_mnemonic("Change"); gtk_widget_show(label5); gtk_box_pack_start(GTK_BOX(hbox2), label5, FALSE, FALSE, 0); shortcuts.label(label5); bool expand = false; if (settings->session.print_references_in_notes_in_full) expand = true; expander1 = gtk_expander_new(NULL); gtk_widget_show(expander1); gtk_box_pack_start(GTK_BOX(vbox1), expander1, TRUE, TRUE, 0); gtk_expander_set_expanded(GTK_EXPANDER(expander1), expand); vbox_expander = gtk_vbox_new(FALSE, 5); gtk_widget_show(vbox_expander); gtk_container_add(GTK_CONTAINER(expander1), vbox_expander); checkbutton_full_references = gtk_check_button_new_with_mnemonic("Write the references in the notes in full"); gtk_widget_show(checkbutton_full_references); gtk_box_pack_start(GTK_BOX(vbox_expander), checkbutton_full_references, FALSE, FALSE, 0); shortcuts.button(checkbutton_full_references); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_full_references), settings->session.print_references_in_notes_in_full); label_expander = gtk_label_new("Options"); gtk_widget_show(label_expander); gtk_expander_set_label_widget(GTK_EXPANDER(expander1), label_expander); shortcuts.label(label_expander); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(printprojectdialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(printprojectdialog, NULL, &shortcuts, "file/print/project"); cancelbutton1 = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton1); gtk_dialog_add_action_widget(GTK_DIALOG(printprojectdialog), cancelbutton1, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton1), true); okbutton1 = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton1); gtk_dialog_add_action_widget(GTK_DIALOG(printprojectdialog), okbutton1, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton1), true); shortcuts.stockbutton(cancelbutton1); shortcuts.stockbutton(okbutton1); shortcuts.process(); g_signal_connect((gpointer) button_portion, "clicked", G_CALLBACK(on_button_portion_clicked), gpointer(this)); g_signal_connect((gpointer) okbutton1, "clicked", G_CALLBACK(on_okbutton1_clicked), gpointer(this)); gtk_widget_grab_focus(okbutton1); gtk_widget_grab_default(okbutton1); // Set gui. gui_reorder_include(); } PrintProjectDialog::~PrintProjectDialog() { gtk_widget_destroy(printprojectdialog); } int PrintProjectDialog::run() { return gtk_dialog_run(GTK_DIALOG(printprojectdialog)); } void PrintProjectDialog::on_okbutton1_clicked(GtkButton * button, gpointer user_data) { ((PrintProjectDialog *) user_data)->on_okbutton(); } void PrintProjectDialog::on_okbutton() { extern Settings *settings; settings->session.print_references_in_notes_in_full = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_full_references)); } void PrintProjectDialog::on_button_portion_clicked(GtkButton * button, gpointer user_data) { ((PrintProjectDialog *) user_data)->on_button_portion(); } void PrintProjectDialog::on_button_portion() { SelectBooksDialog dialog(true); if (dialog.run() == GTK_RESPONSE_OK) { gui_reorder_include(); } } void PrintProjectDialog::gui_reorder_include() // Set labels whether the order of the books is standard and everything is included. { extern Settings *settings; ScripturePortions scriptureportions(settings->genconfig.project_get()); if (scriptureportions.reordering_portions_all()) gtk_label_set_text(GTK_LABEL(label_portion), CHAPTER_VERSE_SELECTION_ALL); else gtk_label_set_text(GTK_LABEL(label_portion), "part"); } bibledit-gtk-4.9/src/dialogprintproject.h000664 000766 000024 00000003340 12221507151 020714 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003 The Free Software Foundation. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGPRINTPROJECT_H #define INCLUDED_DIALOGPRINTPROJECT_H #include #include "ustring.h" class PrintProjectDialog { public: PrintProjectDialog (int dummy); ~PrintProjectDialog (); int run (); protected: GtkWidget *printprojectdialog; GtkWidget *dialog_vbox1; GtkWidget *vbox1; GtkWidget *hbox1; GtkWidget *label1; GtkWidget *label_portion; GtkWidget *button_portion; GtkWidget *alignment1; GtkWidget *hbox2; GtkWidget *image1; GtkWidget *label5; GtkWidget *expander1; GtkWidget *vbox_expander; GtkWidget *checkbutton_full_references; GtkWidget *label_expander; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton1; GtkWidget *okbutton1; static void on_okbutton1_clicked (GtkButton *button, gpointer user_data); void on_okbutton (); static void on_button_portion_clicked (GtkButton *button, gpointer user_data); void on_button_portion (); void gui_reorder_include (); }; #endif bibledit-gtk-4.9/src/dialogprintreferences.cpp000664 000766 000024 00000022575 12221507142 021735 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogprintreferences.h" #include "utilities.h" #include "projectutils.h" #include "directories.h" #include "combobox.h" #include "dialogselectchapters.h" #include "portion_utils.h" #include "settings.h" #include "help.h" #include "books.h" #include "tiny_utilities.h" PrintReferencesDialog::PrintReferencesDialog(int dummy) { extern Settings *settings; printreferencesdialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(printreferencesdialog), "Print References"); gtk_window_set_position(GTK_WINDOW(printreferencesdialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(printreferencesdialog), TRUE); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(printreferencesdialog)); gtk_widget_show(dialog_vbox1); vbox1 = gtk_vbox_new(FALSE, 2); gtk_widget_show(vbox1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), vbox1, FALSE, FALSE, 0); label12 = gtk_label_new("This prints worksheets with the text of all the references on it.\n" "The text is taken from the project that is open. Other projects can be added."); gtk_widget_show(label12); gtk_box_pack_start(GTK_BOX(vbox1), label12, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label12), 0, 0.5); hseparator1 = gtk_hseparator_new(); gtk_widget_show(hseparator1); gtk_box_pack_start(GTK_BOX(vbox1), hseparator1, TRUE, TRUE, 0); hbox3 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox3); gtk_box_pack_start(GTK_BOX(vbox1), hbox3, TRUE, TRUE, 0); label13 = gtk_label_new("Main project:"); gtk_widget_show(label13); gtk_box_pack_start(GTK_BOX(hbox3), label13, FALSE, FALSE, 0); label_main_project = gtk_label_new(""); gtk_widget_show(label_main_project); gtk_box_pack_start(GTK_BOX(hbox3), label_main_project, FALSE, FALSE, 0); hseparator2 = gtk_hseparator_new(); gtk_widget_show(hseparator2); gtk_box_pack_start(GTK_BOX(vbox1), hseparator2, TRUE, TRUE, 0); label15 = gtk_label_new("Additional projects:"); gtk_widget_show(label15); gtk_box_pack_start(GTK_BOX(vbox1), label15, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label15), 0, 0.5); hbox7 = gtk_hbox_new(FALSE, 0); gtk_widget_show(hbox7); gtk_box_pack_start(GTK_BOX(vbox1), hbox7, TRUE, TRUE, 0); button_add = gtk_button_new(); gtk_widget_show(button_add); gtk_box_pack_start(GTK_BOX(hbox7), button_add, FALSE, FALSE, 0); alignment2 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment2); gtk_container_add(GTK_CONTAINER(button_add), alignment2); hbox8 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox8); gtk_container_add(GTK_CONTAINER(alignment2), hbox8); image2 = gtk_image_new_from_stock("gtk-add", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image2); gtk_box_pack_start(GTK_BOX(hbox8), image2, FALSE, FALSE, 0); label18 = gtk_label_new_with_mnemonic("_Add project"); gtk_widget_show(label18); gtk_box_pack_start(GTK_BOX(hbox8), label18, FALSE, FALSE, 0); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(printreferencesdialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(printreferencesdialog, NULL, NULL, NULL); cancelbutton = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton); gtk_dialog_add_action_widget(GTK_DIALOG(printreferencesdialog), cancelbutton, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton), true); okbutton = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton); gtk_dialog_add_action_widget(GTK_DIALOG(printreferencesdialog), okbutton, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton), true); g_signal_connect((gpointer) button_add, "clicked", G_CALLBACK(on_button_add_clicked), gpointer(this)); g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(on_okbutton_clicked), gpointer(this)); gtk_widget_grab_default(okbutton); gtk_widget_grab_focus(okbutton); // Set the gui. gtk_label_set_text(GTK_LABEL(label_main_project), settings->genconfig.project_get().c_str()); vector < ustring > versions = settings->genconfig.print_references_projects_get(); for (unsigned int i = 0; i < versions.size(); i++) { on_button_add(versions[i]); } } PrintReferencesDialog::~PrintReferencesDialog() { gtk_widget_destroy(printreferencesdialog); } int PrintReferencesDialog::run() { return gtk_dialog_run(GTK_DIALOG(printreferencesdialog)); } void PrintReferencesDialog::on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((PrintReferencesDialog *) user_data)->on_okbutton(); } void PrintReferencesDialog::on_okbutton() { // Save values. extern Settings *settings; vector < ustring > projects; for (unsigned int i = 0; i < selectprojectguis.size(); i++) projects.push_back(selectprojectguis[i]->project); settings->genconfig.print_references_projects_set(projects); } void PrintReferencesDialog::on_button_additional_project_clicked(GtkButton * button, gpointer user_data) { ((PrintReferencesDialog *) user_data)->on_button_additional_project(button); } void PrintReferencesDialog::on_button_additional_project(GtkButton * button) // Removes an "additional" project. { // Get the offset of the widget to remove. int widget_offset = -1; for (unsigned int i = 0; i < buttons.size(); i++) { if (GTK_WIDGET(button) == buttons[i]) widget_offset = i; } // Widget not found: bail out. if (widget_offset < 0) return; // Destroy the widgets. gtk_widget_destroy(hboxes[widget_offset]); // Remove widget's pointers. vector_remove_content(hboxes, widget_offset); vector_remove_content(selectprojectguis, widget_offset); vector_remove_content(buttons, widget_offset); // Rewrite the labels. rewrite_button_labels(); } void PrintReferencesDialog::on_button_add_clicked(GtkButton * button, gpointer user_data) { ((PrintReferencesDialog *) user_data)->on_button_add(""); } void PrintReferencesDialog::on_button_add(const ustring & project) // Adds a new project to the gui. { // Get list of all projects. vector < ustring > projects = projects_get_all(); // Only add the project if it exists. if (!project.empty()) { if (!project_exists(project)) { return; } } // All the widgets we're going to insert. GtkWidget *hbox5; SelectProjectGui *selectprojectgui; GtkWidget *button_additional_project; GtkWidget *alignment1; GtkWidget *hbox6; GtkWidget *image1; GtkWidget *label17; // Build GUI. hbox5 = gtk_hbox_new(FALSE, 4); gtk_widget_show(hbox5); gtk_box_pack_start(GTK_BOX(vbox1), hbox5, TRUE, TRUE, 0); selectprojectgui = new SelectProjectGui(0); selectprojectgui->build(hbox5, "", project); button_additional_project = gtk_button_new(); gtk_widget_show(button_additional_project); gtk_box_pack_start(GTK_BOX(hbox5), button_additional_project, FALSE, FALSE, 0); alignment1 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment1); gtk_container_add(GTK_CONTAINER(button_additional_project), alignment1); hbox6 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox6); gtk_container_add(GTK_CONTAINER(alignment1), hbox6); image1 = gtk_image_new_from_stock("gtk-remove", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image1); gtk_box_pack_start(GTK_BOX(hbox6), image1, FALSE, FALSE, 0); label17 = gtk_label_new_with_mnemonic("Remove"); gtk_widget_show(label17); gtk_box_pack_start(GTK_BOX(hbox6), label17, FALSE, FALSE, 0); g_signal_connect((gpointer) button_additional_project, "clicked", G_CALLBACK(on_button_additional_project_clicked), gpointer(this)); gtk_box_reorder_child(GTK_BOX(vbox1), hbox5, hboxes.size() + 7); // Store the relevant widgets. hboxes.push_back(hbox5); selectprojectguis.push_back(selectprojectgui); buttons.push_back(button_additional_project); // Reorder the accelerators on the remove buttons. rewrite_button_labels(); } void PrintReferencesDialog::vector_remove_content(vector < GtkWidget * >&container, int offset) { vector < GtkWidget * >::iterator iter; iter = container.begin(); for (int i = 0; i < offset; i++) iter++; container.erase(iter); } void PrintReferencesDialog::vector_remove_content(vector < SelectProjectGui * >&container, int offset) { delete container[offset]; vector < SelectProjectGui * >::iterator iter; iter = container.begin(); for (int i = 0; i < offset; i++) iter++; container.erase(iter); } void PrintReferencesDialog::rewrite_button_labels() // Rewrites the accelerators on the buttons, , so that it goes from 1 till x. { for (unsigned int i = 0; i < selectprojectguis.size(); i++) { ustring label = "_" + convert_to_string(i + 1); selectprojectguis[i]->set_label(label); } } bibledit-gtk-4.9/src/dialogprintreferences.h000664 000766 000024 00000004356 12221507140 021375 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOG_PRINT_REFERENCES_H #define INCLUDED_DIALOG_PRINT_REFERENCES_H #include #include "ustring.h" #include "settings.h" #include "guiselectproject.h" class PrintReferencesDialog { public: PrintReferencesDialog (int dummy); ~PrintReferencesDialog (); int run (); protected: GtkWidget *printreferencesdialog; GtkWidget *dialog_vbox1; GtkWidget *vbox1; GtkWidget *label12; GtkWidget *hseparator1; GtkWidget *hbox3; GtkWidget *label13; GtkWidget *label_main_project; GtkWidget *hseparator2; GtkWidget *label15; // Additional project. vector hboxes; vector selectprojectguis; vector buttons; GtkWidget *hbox7; GtkWidget *button_add; GtkWidget *alignment2; GtkWidget *hbox8; GtkWidget *image2; GtkWidget *label18; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton; GtkWidget *okbutton; private: static void on_okbutton_clicked (GtkButton *button, gpointer user_data); void on_okbutton (); static void on_button_additional_project_clicked (GtkButton *button, gpointer user_data); void on_button_additional_project (GtkButton *button); static void on_button_add_clicked (GtkButton *button, gpointer user_data); void on_button_add (const ustring& project); void vector_remove_content (vector& container, int offset); void vector_remove_content (vector& container, int offset); void rewrite_button_labels (); }; #endif bibledit-gtk-4.9/src/dialogproject.cpp000644 000766 000024 00000065123 12453001367 020204 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "dialogproject.h" #include "utilities.h" #include "projectutils.h" #include "projectutils.h" #include "dialogselectbooks.h" #include "bible.h" #include "directories.h" #include #include "stylesheetutils.h" #include "constants.h" #include "gwrappers.h" #include "gtkwrappers.h" #include "combobox.h" #include "versification.h" #include "shell.h" #include "books.h" #include "settings.h" #include "date_time_utils.h" #include "help.h" #include "progresswindow.h" #include "localizedbooks.h" #include "versifications.h" #include "shortcuts.h" #include "tiny_utilities.h" #include "scripts.h" #include "dialogdictionary.h" #define NEW_PROJECT "New Project" ProjectDialog::ProjectDialog (bool newproject) { // Settings. extern Settings *settings; // Save variables. if (newproject) { // Make "New Project". project_create_restore (NEW_PROJECT, ""); currentprojectname = NEW_PROJECT; } else { currentprojectname = settings->genconfig.project_get (); } focusbook = 0; // Get project information. ProjectConfiguration *projectconfig = settings->projectconfig(settings->genconfig.project_get()); // Shortcuts. Shortcuts shortcuts(0); projectdialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(projectdialog), "Project properties"); gtk_window_set_position(GTK_WINDOW(projectdialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(projectdialog), TRUE); gtk_window_set_type_hint(GTK_WINDOW(projectdialog), GDK_WINDOW_TYPE_HINT_DIALOG); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(projectdialog)); gtk_widget_show(dialog_vbox1); vbox1 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), vbox1, TRUE, TRUE, 0); label1 = gtk_label_new_with_mnemonic("Name:"); gtk_widget_show(label1); gtk_box_pack_start(GTK_BOX(vbox1), label1, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label1), 0, 0.5); shortcuts.label(label1); nameentry = gtk_entry_new(); gtk_widget_show(nameentry); gtk_box_pack_start(GTK_BOX(vbox1), nameentry, FALSE, FALSE, 2); gtk_entry_set_text(GTK_ENTRY(nameentry), "name"); gtk_entry_set_activates_default(GTK_ENTRY(nameentry), TRUE); // Set name of project gtk_entry_set_text(GTK_ENTRY(nameentry), currentprojectname.c_str()); messagelabel = gtk_label_new(""); gtk_widget_show(messagelabel); gtk_box_pack_start(GTK_BOX(vbox1), messagelabel, FALSE, FALSE, 0); checkbutton_editable = gtk_check_button_new_with_mnemonic ("Editable"); gtk_widget_show(checkbutton_editable); gtk_box_pack_start(GTK_BOX(vbox1), checkbutton_editable, FALSE, FALSE, 0); shortcuts.button(checkbutton_editable); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_editable), projectconfig->editable_get() || newproject); table1 = gtk_table_new(3, 3, FALSE); gtk_widget_show(table1); gtk_box_pack_start(GTK_BOX(vbox1), table1, TRUE, TRUE, 0); gtk_container_set_border_width(GTK_CONTAINER(table1), 4); gtk_table_set_row_spacings(GTK_TABLE(table1), 6); gtk_table_set_col_spacings(GTK_TABLE(table1), 8); label9 = gtk_label_new("Remove books"); gtk_widget_show(label9); gtk_table_attach(GTK_TABLE(table1), label9, 2, 3, 0, 1, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); label8 = gtk_label_new("Add books"); gtk_widget_show(label8); gtk_table_attach(GTK_TABLE(table1), label8, 0, 1, 0, 1, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); vseparator1 = gtk_vseparator_new(); gtk_widget_show(vseparator1); gtk_table_attach(GTK_TABLE(table1), vseparator1, 1, 2, 0, 3, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), 0, 0); addbutton = gtk_button_new(); gtk_widget_show(addbutton); gtk_table_attach(GTK_TABLE(table1), addbutton, 0, 1, 1, 2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); alignment1 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment1); gtk_container_add(GTK_CONTAINER(addbutton), alignment1); hbox2 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox2); gtk_container_add(GTK_CONTAINER(alignment1), hbox2); image1 = gtk_image_new_from_stock("gtk-add", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image1); gtk_box_pack_start(GTK_BOX(hbox2), image1, FALSE, FALSE, 0); label5 = gtk_label_new_with_mnemonic("Templates"); gtk_widget_show(label5); gtk_box_pack_start(GTK_BOX(hbox2), label5, FALSE, FALSE, 0); shortcuts.label(label5); deletebutton = gtk_button_new(); gtk_widget_show(deletebutton); gtk_table_attach(GTK_TABLE(table1), deletebutton, 2, 3, 1, 2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); alignment2 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment2); gtk_container_add(GTK_CONTAINER(deletebutton), alignment2); hbox3 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox3); gtk_container_add(GTK_CONTAINER(alignment2), hbox3); image2 = gtk_image_new_from_stock("gtk-remove", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image2); gtk_box_pack_start(GTK_BOX(hbox3), image2, FALSE, FALSE, 0); label6 = gtk_label_new_with_mnemonic("Books"); gtk_widget_show(label6); gtk_box_pack_start(GTK_BOX(hbox3), label6, FALSE, FALSE, 0); shortcuts.label(label6); hseparator1 = gtk_hseparator_new(); gtk_widget_show(hseparator1); gtk_box_pack_start(GTK_BOX(vbox1), hseparator1, TRUE, TRUE, 2); table2 = gtk_table_new(2, 2, FALSE); gtk_widget_show(table2); gtk_box_pack_start(GTK_BOX(vbox1), table2, TRUE, TRUE, 0); gtk_container_set_border_width(GTK_CONTAINER(table2), 2); gtk_table_set_row_spacings(GTK_TABLE(table2), 2); gtk_table_set_col_spacings(GTK_TABLE(table2), 2); label11 = gtk_label_new_with_mnemonic("Versification"); gtk_widget_show(label11); gtk_table_attach(GTK_TABLE(table2), label11, 0, 1, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label11), 0, 0.5); shortcuts.label(label11); combobox_versification = gtk_combo_box_new_text(); gtk_widget_show(combobox_versification); gtk_table_attach(GTK_TABLE(table2), combobox_versification, 1, 2, 0, 1, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (GTK_FILL), 0, 0); // Load versifications. extern Versifications *versifications; vector < ustring > systems = versifications->systems_get(); combobox_set_strings(combobox_versification, systems); combobox_set_string(combobox_versification, projectconfig->versification_get()); label12 = gtk_label_new_with_mnemonic("Language"); gtk_widget_show(label12); gtk_table_attach(GTK_TABLE(table2), label12, 0, 1, 1, 2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label12), 0, 0.5); shortcuts.label(label12); combobox_language = gtk_combo_box_new_text(); gtk_widget_show(combobox_language); gtk_table_attach(GTK_TABLE(table2), combobox_language, 1, 2, 1, 2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_FILL), 0, 0); // Load languages. extern BookLocalizations *booklocalizations; vector < ustring > languages = booklocalizations->localizations_get(); combobox_set_strings(combobox_language, languages); combobox_set_string(combobox_language, projectconfig->language_get()); checkbutton_right_to_left = gtk_check_button_new_with_mnemonic("Predominantly right-to-left text"); gtk_widget_show(checkbutton_right_to_left); gtk_box_pack_start(GTK_BOX(vbox1), checkbutton_right_to_left, FALSE, FALSE, 0); shortcuts.button(checkbutton_right_to_left); // Set RTL. gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_right_to_left), projectconfig->right_to_left_get()); hbox_depend = gtk_hbox_new(FALSE, 5); gtk_widget_show(hbox_depend); gtk_box_pack_start(GTK_BOX(vbox1), hbox_depend, TRUE, TRUE, 0); checkbutton_dependent = gtk_check_button_new_with_mnemonic("Depend upon project"); gtk_widget_show(checkbutton_dependent); gtk_box_pack_start(GTK_BOX(hbox_depend), checkbutton_dependent, FALSE, FALSE, 0); shortcuts.button(checkbutton_dependent); // Set depend-button state. gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_dependent), projectconfig->depending_on_switch_get()); button_depend = gtk_button_new_with_mnemonic(dependent_project(projectconfig->depending_on_project_get()).c_str()); gtk_widget_show(button_depend); gtk_box_pack_start(GTK_BOX(hbox_depend), button_depend, FALSE, FALSE, 0); label_depend = gtk_label_new("through filter"); gtk_widget_show(label_depend); gtk_box_pack_start(GTK_BOX(hbox_depend), label_depend, FALSE, FALSE, 0); combobox_depend = gtk_combo_box_new_text(); gtk_widget_show(combobox_depend); gtk_box_pack_start(GTK_BOX(hbox_depend), combobox_depend, TRUE, TRUE, 0); // Set values. combobox_set_strings(combobox_depend, scripts_get_all()); ustring script = projectconfig->depending_on_script_get(); if (script_available(script)) combobox_set_string(combobox_depend, script); else combobox_set_index(combobox_depend, 0); hbox_spelling = gtk_hbox_new(FALSE, 10); gtk_widget_show(hbox_spelling); gtk_box_pack_start(GTK_BOX(vbox1), hbox_spelling, TRUE, TRUE, 0); checkbutton_spelling = gtk_check_button_new_with_mnemonic("Check spelling"); gtk_widget_show(checkbutton_spelling); gtk_box_pack_start(GTK_BOX(hbox_spelling), checkbutton_spelling, FALSE, FALSE, 0); shortcuts.button(checkbutton_spelling); // Set the spelling. A new project has the spelling on by default. gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_spelling), projectconfig->spelling_check_get() || newproject); button_dictionaries = gtk_button_new_with_mnemonic("Dictionaries"); gtk_widget_show(button_dictionaries); gtk_box_pack_start(GTK_BOX(hbox_spelling), button_dictionaries, FALSE, FALSE, 0); shortcuts.button(button_dictionaries); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(projectdialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(projectdialog, NULL, &shortcuts, "file/project/project-properties"); cancelbutton1 = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton1); gtk_dialog_add_action_widget(GTK_DIALOG(projectdialog), cancelbutton1, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton1), true); okbutton1 = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton1); gtk_dialog_add_action_widget(GTK_DIALOG(projectdialog), okbutton1, GTK_RESPONSE_OK); gtk_widget_set_sensitive(okbutton1, FALSE); gtk_widget_set_can_default (GTK_WIDGET (okbutton1), true); shortcuts.stockbutton(cancelbutton1); shortcuts.stockbutton(okbutton1); shortcuts.process(); g_signal_connect((gpointer) nameentry, "changed", G_CALLBACK(projectdialog_on_nameentry_changed), gpointer(this)); g_signal_connect((gpointer) checkbutton_editable, "toggled", G_CALLBACK(on_checkbutton_editable_toggled), gpointer(this)); g_signal_connect((gpointer) addbutton, "clicked", G_CALLBACK(projectdialog_on_addbutton_clicked), gpointer(this)); g_signal_connect((gpointer) deletebutton, "clicked", G_CALLBACK(projectdialog_on_deletebutton_clicked), gpointer(this)); g_signal_connect((gpointer) cancelbutton1, "clicked", G_CALLBACK(projectdialog_on_cancelbutton1_clicked), gpointer(this)); g_signal_connect((gpointer) okbutton1, "clicked", G_CALLBACK(projectdialog_on_okbutton1_clicked), gpointer(this)); g_signal_connect((gpointer) checkbutton_dependent, "toggled", G_CALLBACK(on_checkbutton_dependent_toggled), gpointer(this)); g_signal_connect((gpointer) button_depend, "clicked", G_CALLBACK(on_button_depend_clicked), gpointer(this)); g_signal_connect((gpointer) checkbutton_spelling, "toggled", G_CALLBACK(on_checkbutton_spelling_toggled), gpointer(this)); g_signal_connect((gpointer) button_dictionaries, "clicked", G_CALLBACK(on_button_dictionaries_clicked), gpointer(this)); gtk_label_set_mnemonic_widget(GTK_LABEL(label1), nameentry); gtk_label_set_mnemonic_widget(GTK_LABEL(label11), combobox_versification); gtk_label_set_mnemonic_widget(GTK_LABEL(label12), combobox_language); gtk_widget_grab_focus(nameentry); gtk_widget_grab_default(okbutton1); // Handle gui. on_checkbutton_dependent(); set_gui(); } ProjectDialog::~ProjectDialog() { gtk_widget_destroy(projectdialog); } int ProjectDialog::run() { return gtk_dialog_run(GTK_DIALOG(projectdialog)); } void ProjectDialog::set_gui() { bool sensitive = true; newprojectname = gtk_entry_get_text(GTK_ENTRY(nameentry)); newprojectname = trim(newprojectname); newprojectname = shell_clean_filename(newprojectname); // Reject "New Project" as a name. if (newprojectname == NEW_PROJECT) { sensitive = false; gtk_label_set_text(GTK_LABEL(messagelabel), "(the name of the project should be changed)"); } // Reject empty names. if (newprojectname.empty()) { sensitive = false; gtk_label_set_text(GTK_LABEL(messagelabel), "(the project needs a name)"); } // Reject names that already exist. if (currentprojectname != newprojectname) { if (project_exists(newprojectname)) { sensitive = false; gtk_label_set_text(GTK_LABEL(messagelabel), "(a project with this name already exists)"); } } // Reject "data". if (newprojectname == "data") { sensitive = false; gtk_label_set_text(GTK_LABEL(messagelabel), "(this name is not allowed)"); } // Deal with the sensitivity of the dialog. gtk_widget_set_sensitive(okbutton1, sensitive); if (sensitive) gtk_label_set_text(GTK_LABEL(messagelabel), ""); // If non-editable, set widgets insensitive. bool editable = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_editable)); gtk_widget_set_sensitive(nameentry, editable); gtk_widget_set_sensitive(messagelabel, editable); gtk_widget_set_sensitive(addbutton, editable); gtk_widget_set_sensitive(deletebutton, editable && project_get_books(currentprojectname).size() > 0); gtk_widget_set_sensitive(combobox_versification, editable); gtk_widget_set_sensitive(combobox_language, editable); gtk_widget_set_sensitive(label1, editable); gtk_widget_set_sensitive(label8, editable); gtk_widget_set_sensitive(label9, editable); gtk_widget_set_sensitive(label11, editable); gtk_widget_set_sensitive(label12, editable); gtk_widget_set_sensitive(checkbutton_right_to_left, editable); if (editable) { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_dependent), false); } // Spelling widgets. sensitive = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_spelling)); gtk_widget_set_sensitive(button_dictionaries, sensitive); } void ProjectDialog::on_ok () { // Deal with possible new projectname. if (currentprojectname != newprojectname) { // Move project. project_move (currentprojectname, newprojectname); } // Save settings. extern Settings *settings; settings->genconfig.project_set(newprojectname); ProjectConfiguration *projectconfig = settings->projectconfig (settings->genconfig.project_get ()); projectconfig->versification_set(combobox_get_active_string(combobox_versification)); projectconfig->language_set(combobox_get_active_string(combobox_language)); projectconfig->editable_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_editable))); projectconfig->right_to_left_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_right_to_left))); projectconfig->spelling_check_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_spelling))); // Save diglot-related settings. bool depend_switch = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_dependent)); projectconfig->depending_on_switch_set(depend_switch); ustring depend_project = dependent_project(); projectconfig->depending_on_project_set(depend_project); ustring depend_script = combobox_get_active_string(combobox_depend); if (depend_script == scripts_straight_through()) depend_script.clear(); if (!script_available(depend_script)) depend_script.clear(); projectconfig->depending_on_script_set(depend_script); // If the project depends on another, do the copy through the script. if (depend_switch && (!depend_project.empty())) { // Progress information. ProgressWindow progresswindow("Updating project", false); progresswindow.set_fraction(0.1); // Get the list of book/chapters that is in the source project. vector < unsigned int >source_books; vector < unsigned int >source_chapters; { vector < unsigned int >books = project_get_books(depend_project); for (unsigned int b = 0; b < books.size(); b++) { vector < unsigned int >chapters = project_get_chapters(depend_project, books[b]); for (unsigned c = 0; c < chapters.size(); c++) { source_books.push_back(books[b]); source_chapters.push_back(chapters[c]); } } } progresswindow.set_fraction(0.2); // Delete the books and chapters from this project that are not in the source project. { vector < unsigned int >books = project_get_books(newprojectname); for (unsigned int b = 0; b < books.size(); b++) { if (project_book_exists(depend_project, books[b])) { vector < unsigned int >chapters = project_get_chapters(newprojectname, books[b]); for (unsigned c = 0; c < chapters.size(); c++) { bool exists = false; for (unsigned int i = 0; i < source_books.size(); i++) { if (source_books[i] == books[b]) { if (source_chapters[i] == chapters[c]) { exists = true; } } } if (!exists) { project_remove_chapter(newprojectname, books[b], chapters[c]); } } } else { project_remove_book(newprojectname, books[b]); } } } progresswindow.set_iterate(0.2, 1, source_books.size()); // Copy everything from the source project to this project. // We need to "touch" the files of the project it depends on to make them // look newer, so as to ensure that they get loaded. for (unsigned int i = 0; i < source_books.size(); i++) { progresswindow.iterate(); GwSpawn spawn("touch"); spawn.arg(project_data_filename_chapter(depend_project, source_books[i], source_chapters[i], false)); spawn.run(); vector < ustring > lines = project_retrieve_chapter(newprojectname, source_books[i], source_chapters[i]); } } // Set the book to focus in the editor. if (focusbook == 0) { vector books = project_get_books (newprojectname); if (books.size () > 0) { focusbook = books [0]; } } } void ProjectDialog::on_cancel() { // Remove the "New Project". It was created but not used. project_delete(NEW_PROJECT); } void ProjectDialog::on_book_add() { /* * This gives the user the possibility to add books that are still missing in * the project. Only those books that are not yet in the project are shown. * If the user adds book(s), templates of the book are placed in the project. * The templates contain markers for chapters, verses, and the basics. */ vector selectables; set selection; vector scripture_books = project_get_books (currentprojectname); set currentbooks; for (unsigned int i = 0; i < scripture_books.size(); i++) currentbooks.insert (scripture_books[i]); { vector ids = books_type_to_ids (btUnknown); for (unsigned int i = 0; i < ids.size(); i++) { if (currentbooks.find(ids[i]) == currentbooks.end()) selectables.push_back (ids[i]); } } books_standard_order(selectables); SelectBooksDialog dialog(false); dialog.language(combobox_get_active_string(combobox_language)); dialog.selectables(selectables); dialog.selection_set(selection); int result = dialog.run(); if (result == GTK_RESPONSE_OK) { selection = dialog.selectionset; vector ids = books_type_to_ids(btUnknown); ProgressWindow progresswindow ("Adding books", false); progresswindow.set_iterate (0, 1, selection.size()); for (unsigned int i = 0; i < ids.size(); i++) { if (!(selection.find(ids[i]) == selection.end())) { progresswindow.iterate(); vector booktemplate; // If the book is found in the templates, take that, else create it. ustring englishbook = books_id_to_english (ids[i]); ustring templatefile = englishbook.casefold() + ".usfm"; replace_text(templatefile, " ", "_"); templatefile = gw_build_filename(Directories->get_package_data(), templatefile); if (g_file_test(templatefile.c_str(), G_FILE_TEST_IS_REGULAR)) { ReadText rt(templatefile, true, false); booktemplate.assign(rt.lines.begin(), rt.lines.end()); } else { versification_create_book_template(combobox_get_active_string(combobox_versification), ids[i], booktemplate); } // Change any _year_ to the current year, so as to remain fresh always. ustring myyear; { int julianday = date_time_julian_day_get_current(); guint year, month, day; date_time_normal_get_year_month_day(julianday, year, month, day); myyear = convert_to_string(year); } for (unsigned int bt = 0; bt < booktemplate.size(); bt++) { replace_text(booktemplate[bt], "_year_", myyear); } CategorizeChapterVerse ccv(booktemplate); project_store_book(currentprojectname, ids[i], ccv); // The book to be focused in the Bible text editor. if (focusbook == 0) { focusbook = ids[i]; } } } } // Update GUI. set_gui(); } void ProjectDialog::on_book_delete() { vector < unsigned int >selectables; set < unsigned int >selection; vector < unsigned int >scripture_books = project_get_books(currentprojectname); set < unsigned int >currentbooks; for (unsigned int i = 0; i < scripture_books.size(); i++) currentbooks.insert(scripture_books[i]); { vector < unsigned int >ids = books_type_to_ids(btUnknown); for (unsigned int i = 0; i < ids.size(); i++) { if (currentbooks.find(ids[i]) != currentbooks.end()) selectables.push_back(ids[i]); } } books_standard_order(selectables); SelectBooksDialog dialog(false); dialog.language(combobox_get_active_string(combobox_language)); dialog.selectables(selectables); dialog.selection_set(selection); int result = dialog.run(); if (result == GTK_RESPONSE_OK) { selection = dialog.selectionset; if (selection.empty()) return; if (gtkw_dialog_question(projectdialog, "Are you sure you want to delete the books?") != GTK_RESPONSE_YES) return; if (gtkw_dialog_question(projectdialog, "Are you really sure to delete something worth perhaps months of work?") != GTK_RESPONSE_YES) return; vector < unsigned int >ids = books_type_to_ids(btUnknown); ProgressWindow progresswindow("Deleting books", false); progresswindow.set_iterate(0, 1, ids.size()); for (unsigned int i = 0; i < ids.size(); i++) { // Remove the book. if (selection.find(ids[i]) != selection.end()) { project_remove_book(currentprojectname, ids[i]); } progresswindow.iterate(); } } // Update GUI. set_gui(); // No book yet to focus in the Bible text editor. focusbook = 0; } void ProjectDialog::projectdialog_on_nameentry_changed(GtkEditable * editable, gpointer user_data) { ((ProjectDialog *) user_data)->set_gui(); } void ProjectDialog::projectdialog_on_okbutton1_clicked(GtkButton * button, gpointer user_data) { ((ProjectDialog *) user_data)->on_ok(); } void ProjectDialog::projectdialog_on_addbutton_clicked(GtkButton * button, gpointer user_data) { ((ProjectDialog *) user_data)->on_book_add(); } void ProjectDialog::projectdialog_on_deletebutton_clicked(GtkButton * button, gpointer user_data) { ((ProjectDialog *) user_data)->on_book_delete(); } void ProjectDialog::projectdialog_on_cancelbutton1_clicked(GtkButton * button, gpointer user_data) { ((ProjectDialog *) user_data)->on_cancel(); } void ProjectDialog::on_checkbutton_editable_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((ProjectDialog *) user_data)->set_gui(); } void ProjectDialog::on_checkbutton_dependent_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((ProjectDialog *) user_data)->on_checkbutton_dependent(); } void ProjectDialog::on_checkbutton_dependent() { bool on = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_dependent)); if (on) { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_editable), false); } gtk_widget_set_sensitive(button_depend, on); gtk_widget_set_sensitive(label_depend, on); gtk_widget_set_sensitive(combobox_depend, on); } void ProjectDialog::on_button_depend_clicked(GtkButton * button, gpointer user_data) { ((ProjectDialog *) user_data)->on_button_depend(); } void ProjectDialog::on_button_depend() { ustring project(dependent_project()); if (project_select(project)) { gtk_button_set_label(GTK_BUTTON(button_depend), project.c_str()); } } ustring ProjectDialog::dependent_project(const ustring & project) { ustring label(project); if (label.empty() || !project_exists(project)) label = none_project(); return label; } ustring ProjectDialog::none_project() { return ""; } ustring ProjectDialog::dependent_project() // Gets the project name from the button. { ustring project = gtk_button_get_label(GTK_BUTTON(button_depend)); if (project == none_project()) project.clear(); return project; } void ProjectDialog::on_button_dictionaries_clicked(GtkButton * button, gpointer user_data) { ((ProjectDialog *) user_data)->on_button_dictionaries(); } void ProjectDialog::on_button_dictionaries() { DictionaryDialog dialog(currentprojectname); dialog.run(); } void ProjectDialog::on_checkbutton_spelling_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((ProjectDialog *) user_data)->set_gui(); } bibledit-gtk-4.9/src/dialogproject.h000664 000766 000024 00000006455 12221507150 017650 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGPROJECT_H #define INCLUDED_DIALOGPROJECT_H #include #include "settings.h" class ProjectDialog { public: ProjectDialog (bool newproject); ~ProjectDialog (); int run (); ustring newprojectname; int focusbook; protected: GtkWidget *projectdialog; GtkWidget *dialog_vbox1; GtkWidget *vbox1; GtkWidget *label1; GtkWidget *nameentry; GtkWidget *messagelabel; GtkWidget *checkbutton_editable; GtkWidget *table1; GtkWidget *label9; GtkWidget *label8; GtkWidget *vseparator1; GtkWidget *addbutton; GtkWidget *alignment1; GtkWidget *hbox2; GtkWidget *image1; GtkWidget *label5; GtkWidget *deletebutton; GtkWidget *alignment2; GtkWidget *hbox3; GtkWidget *image2; GtkWidget *label6; GtkWidget *hseparator1; GtkWidget *table2; GtkWidget *label11; GtkWidget *combobox_versification; GtkWidget *label12; GtkWidget *combobox_language; GtkWidget *checkbutton_right_to_left; GtkWidget *hbox_depend; GtkWidget *checkbutton_dependent; GtkWidget *button_depend; GtkWidget *label_depend; GtkWidget *combobox_depend; GtkWidget *hbox_spelling; GtkWidget *checkbutton_spelling; GtkWidget *button_dictionaries; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton1; GtkWidget *okbutton1; private: ustring currentprojectname; void set_gui (); void on_book_add (); void on_book_delete (); void on_ok (); void on_cancel (); static void projectdialog_on_nameentry_changed (GtkEditable * editable, gpointer user_data); static void projectdialog_on_okbutton1_clicked (GtkButton * button, gpointer user_data); static void projectdialog_on_addbutton_clicked (GtkButton * button, gpointer user_data); static void projectdialog_on_deletebutton_clicked (GtkButton * button, gpointer user_data); static void projectdialog_on_cancelbutton1_clicked (GtkButton * button, gpointer user_data); static void on_checkbutton_editable_toggled (GtkToggleButton *togglebutton, gpointer user_data); static void on_checkbutton_dependent_toggled (GtkToggleButton *togglebutton, gpointer user_data); void on_checkbutton_dependent (); static void on_button_depend_clicked (GtkButton *button, gpointer user_data); void on_button_depend (); ustring dependent_project (const ustring& project); ustring none_project (); ustring dependent_project (); static void on_button_dictionaries_clicked (GtkButton *button, gpointer user_data); void on_button_dictionaries (); static void on_checkbutton_spelling_toggled (GtkToggleButton *togglebutton, gpointer user_data); }; #endif bibledit-gtk-4.9/src/dialogprojectnote.cpp000664 000766 000024 00000012445 12221507147 021073 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogprojectnote.h" #include "help.h" #include "combobox.h" ProjectNoteDialog::ProjectNoteDialog(GtkWidget * parent, const vector < ustring > &projects_in, const ustring & project_in, const ustring & created_on, const ustring & created_by, const ustring & edited_on, const ustring & logbook) { dialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(dialog), "Project note"); gtk_window_set_position(GTK_WINDOW(dialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_type_hint(GTK_WINDOW(dialog), GDK_WINDOW_TYPE_HINT_DIALOG); gtk_window_set_transient_for(GTK_WINDOW(dialog), GTK_WINDOW(parent)); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(dialog)); gtk_widget_show(dialog_vbox1); vbox1 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), vbox1, TRUE, TRUE, 0); label_note_project = gtk_label_new_with_mnemonic("Pro_ject"); gtk_widget_show(label_note_project); gtk_box_pack_start(GTK_BOX(vbox1), label_note_project, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label_note_project), 0, 0.5); combobox_note_project = gtk_combo_box_new_text(); gtk_widget_show(combobox_note_project); gtk_box_pack_start(GTK_BOX(vbox1), combobox_note_project, FALSE, FALSE, 0); label_note_created_on = gtk_label_new("Created on"); gtk_widget_show(label_note_created_on); gtk_box_pack_start(GTK_BOX(vbox1), label_note_created_on, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label_note_created_on), 0, 0.5); label_note_created_by = gtk_label_new("Created by"); gtk_widget_show(label_note_created_by); gtk_box_pack_start(GTK_BOX(vbox1), label_note_created_by, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label_note_created_by), 0, 0.5); label_note_edited_on = gtk_label_new("Edited on"); gtk_widget_show(label_note_edited_on); gtk_box_pack_start(GTK_BOX(vbox1), label_note_edited_on, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label_note_edited_on), 0, 0.5); label_note_logbook = gtk_label_new("Logbook"); gtk_widget_show(label_note_logbook); gtk_box_pack_start(GTK_BOX(vbox1), label_note_logbook, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label_note_logbook), 0, 0.5); textview_note_logbook = gtk_text_view_new(); gtk_widget_show(textview_note_logbook); gtk_box_pack_start(GTK_BOX(vbox1), textview_note_logbook, TRUE, TRUE, 0); gtk_text_view_set_editable(GTK_TEXT_VIEW(textview_note_logbook), FALSE); gtk_text_view_set_accepts_tab(GTK_TEXT_VIEW(textview_note_logbook), FALSE); gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(textview_note_logbook), GTK_WRAP_WORD); gtk_text_view_set_cursor_visible(GTK_TEXT_VIEW(textview_note_logbook), FALSE); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(dialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(dialog, NULL, NULL, NULL); cancelbutton1 = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton1); gtk_dialog_add_action_widget(GTK_DIALOG(dialog), cancelbutton1, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton1), true); okbutton1 = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton1); gtk_dialog_add_action_widget(GTK_DIALOG(dialog), okbutton1, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton1), true); gtk_label_set_mnemonic_widget(GTK_LABEL(label_note_project), combobox_note_project); g_signal_connect((gpointer) okbutton1, "clicked", G_CALLBACK(on_okbutton1_clicked), gpointer(this)); gtk_widget_grab_default(okbutton1); combobox_set_strings(combobox_note_project, projects_in); combobox_set_string(combobox_note_project, project_in); gtk_label_set_text(GTK_LABEL(label_note_created_by), created_by.c_str()); gtk_label_set_text(GTK_LABEL(label_note_created_on), created_on.c_str()); gtk_label_set_text(GTK_LABEL(label_note_edited_on), edited_on.c_str()); GtkTextBuffer *textbuffer_logbook = gtk_text_view_get_buffer(GTK_TEXT_VIEW(textview_note_logbook)); gtk_text_buffer_set_text(textbuffer_logbook, logbook.c_str(), -1); } ProjectNoteDialog::~ProjectNoteDialog() { gtk_widget_destroy(dialog); } int ProjectNoteDialog::run() { return gtk_dialog_run(GTK_DIALOG(dialog)); } void ProjectNoteDialog::on_okbutton1_clicked(GtkButton * button, gpointer user_data) { ((ProjectNoteDialog *) user_data)->on_okbutton1(); } void ProjectNoteDialog::on_okbutton1() { project = combobox_get_active_string(combobox_note_project); } bibledit-gtk-4.9/src/dialogprojectnote.h000664 000766 000024 00000003323 12221507147 020533 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOG_PROJECT_NOTE_H #define INCLUDED_DIALOG_PROJECT_NOTE_H #include #include "ustring.h" class ProjectNoteDialog { public: ProjectNoteDialog(GtkWidget * parent, const vector & projects_in, const ustring& project_in, const ustring& created_on, const ustring& created_by, const ustring& edited_on, const ustring& logbook); ~ProjectNoteDialog(); int run(); ustring project; protected: GtkWidget *dialog; GtkWidget *dialog_vbox1; GtkWidget *vbox1; GtkWidget *label_note_project; GtkWidget *combobox_note_project; GtkWidget *label_note_created_on; GtkWidget *label_note_created_by; GtkWidget *label_note_edited_on; GtkWidget *label_note_logbook; GtkWidget *textview_note_logbook; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton1; GtkWidget *okbutton1; private: static void on_okbutton1_clicked(GtkButton *button, gpointer user_data); void on_okbutton1(); }; #endif bibledit-gtk-4.9/src/dialogradiobutton.cpp000664 000766 000024 00000012314 12221507130 021054 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogradiobutton.h" #include "help.h" #include "screen.h" RadiobuttonDialog::RadiobuttonDialog(const ustring & title, const ustring & info, const vector < ustring > &labels, unsigned int selection, bool autoscale) { Shortcuts shortcuts(0); radiobuttondialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(radiobuttondialog), title.c_str()); gtk_window_set_position(GTK_WINDOW(radiobuttondialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(radiobuttondialog), TRUE); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG (radiobuttondialog)); gtk_widget_show(dialog_vbox1); label = gtk_label_new(info.c_str()); gtk_widget_show(label); gtk_box_pack_start(GTK_BOX(dialog_vbox1), label, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label), 0, 0.5); if (autoscale) { scrolledwindow1 = gtk_scrolled_window_new (NULL, NULL); gtk_widget_show (scrolledwindow1); gtk_box_pack_start (GTK_BOX (dialog_vbox1), scrolledwindow1, TRUE, TRUE, 0); gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow1), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (scrolledwindow1), GTK_SHADOW_IN); viewport1 = gtk_viewport_new (NULL, NULL); gtk_widget_show (viewport1); gtk_container_add (GTK_CONTAINER (scrolledwindow1), viewport1); } vbox1 = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox1); if (autoscale) gtk_container_add (GTK_CONTAINER (viewport1), vbox1); else gtk_box_pack_start (GTK_BOX (dialog_vbox1), vbox1, TRUE, TRUE, 0); GSList *radiobutton_group = NULL; GtkWidget *radiobutton; for (unsigned int i = 0; i < labels.size(); i++) { radiobutton = gtk_radio_button_new_with_mnemonic(NULL, labels[i].c_str()); gtk_widget_show(radiobutton); gtk_box_pack_start (GTK_BOX (vbox1), radiobutton, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton), radiobutton_group); radiobutton_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton)); radiobuttons.push_back(radiobutton); shortcuts.button(radiobutton); if (i == selection) { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton), true); gtk_widget_grab_focus(radiobutton); } g_signal_connect ((gpointer) radiobutton, "button_press_event", G_CALLBACK (on_radiobutton_button_press_event), gpointer (this)); } dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(radiobuttondialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(radiobuttondialog, NULL, &shortcuts, NULL); cancelbutton = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton); gtk_dialog_add_action_widget(GTK_DIALOG(radiobuttondialog), cancelbutton, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton), true); okbutton = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton); gtk_dialog_add_action_widget(GTK_DIALOG(radiobuttondialog), okbutton, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton), true); shortcuts.stockbutton(cancelbutton); shortcuts.stockbutton(okbutton); shortcuts.process(); g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(on_okbutton_clicked), gpointer(this)); gtk_widget_grab_default(okbutton); if (autoscale) { new DialogAutoScaler (radiobuttondialog, G_MAXINT); } } RadiobuttonDialog::~RadiobuttonDialog() { gtk_widget_destroy(radiobuttondialog); } int RadiobuttonDialog::run() { return gtk_dialog_run(GTK_DIALOG(radiobuttondialog)); } gboolean RadiobuttonDialog::on_radiobutton_button_press_event (GtkWidget *widget, GdkEventButton *event, gpointer user_data) { ((RadiobuttonDialog *) user_data)->radiobutton_button_press_event(event); return false; } void RadiobuttonDialog::radiobutton_button_press_event (GdkEventButton *event) { if (event->type == GDK_2BUTTON_PRESS) { on_okbutton(); gtk_dialog_response(GTK_DIALOG(radiobuttondialog), GTK_RESPONSE_OK); } } void RadiobuttonDialog::on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((RadiobuttonDialog *) user_data)->on_okbutton(); } void RadiobuttonDialog::on_okbutton() { selection = 0; for (unsigned int i = 0; i < radiobuttons.size(); i++) { if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobuttons[i]))) selection = i; } } bibledit-gtk-4.9/src/dialogradiobutton.h000664 000766 000024 00000003273 12221507150 020527 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOG_RADIOBUTTON_H #define INCLUDED_DIALOG_RADIOBUTTON_H #include #include "ustring.h" class RadiobuttonDialog { public: RadiobuttonDialog (const ustring& title, const ustring& info, const vector & labels, unsigned int selection, bool autoscale); ~RadiobuttonDialog (); int run (); unsigned int selection; protected: GtkWidget *radiobuttondialog; GtkWidget *dialog_vbox1; GtkWidget *label; GtkWidget *scrolledwindow1; GtkWidget *viewport1; GtkWidget *vbox1; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton; GtkWidget *okbutton; private: vector radiobuttons; static gboolean on_radiobutton_button_press_event (GtkWidget *widget, GdkEventButton *event, gpointer user_data); void radiobutton_button_press_event (GdkEventButton *event); static void on_okbutton_clicked (GtkButton *button, gpointer user_data); void on_okbutton (); }; #endif bibledit-gtk-4.9/src/dialogreferencesettings.cpp000644 000766 000024 00000006520 12453001367 022251 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "dialogreferencesettings.h" #include "settings.h" #include "help.h" #include "shortcuts.h" #include "directories.h" #include "gwrappers.h" ReferenceSettingsDialog::ReferenceSettingsDialog(int dummy) { extern Settings *settings; Shortcuts shortcuts(0); gtkbuilder = gtk_builder_new (); gtk_builder_add_from_file (gtkbuilder, gw_build_filename (Directories->get_package_data(), "gtkbuilder.referencesettingsdialog.xml").c_str(), NULL); dialog = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "dialog")); checkbutton_verse_text = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "checkbutton_verse_text")); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_verse_text), settings->genconfig.reference_window_show_verse_text_get()); shortcuts.button (checkbutton_verse_text); checkbutton_relevant_bits = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "checkbutton_relevant_bits")); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_relevant_bits), settings->genconfig.reference_window_show_relevant_bits_get()); shortcuts.button (checkbutton_relevant_bits); InDialogHelp * indialoghelp = new InDialogHelp(dialog, gtkbuilder, &shortcuts, NULL); shortcuts.process(); cancelbutton = indialoghelp->cancelbutton; okbutton = indialoghelp->okbutton; gtk_widget_grab_default(okbutton); g_signal_connect((gpointer) checkbutton_verse_text, "toggled", G_CALLBACK(on_checkbutton_verse_text_toggled), gpointer(this)); g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(on_okbutton_clicked), gpointer(this)); set_gui(); } ReferenceSettingsDialog::~ReferenceSettingsDialog() { gtk_widget_destroy(dialog); } int ReferenceSettingsDialog::run() { return gtk_dialog_run(GTK_DIALOG(dialog)); } void ReferenceSettingsDialog::on_checkbutton_verse_text_toggled (GtkToggleButton *togglebutton, gpointer user_data) { ((ReferenceSettingsDialog *) user_data)->set_gui(); } void ReferenceSettingsDialog::set_gui() { gtk_widget_set_sensitive (checkbutton_relevant_bits, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_verse_text))); } void ReferenceSettingsDialog::on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((ReferenceSettingsDialog *) user_data)->on_ok(); } void ReferenceSettingsDialog::on_ok() { extern Settings *settings; settings->genconfig.reference_window_show_verse_text_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_verse_text))); settings->genconfig.reference_window_show_relevant_bits_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_relevant_bits))); } bibledit-gtk-4.9/src/dialogreferencesettings.h000664 000766 000024 00000002711 12221507146 021715 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOG_REFERENCE_SETTINGS #define INCLUDED_DIALOG_REFERENCE_SETTINGS #include #include "libraries.h" #include "notes_utils.h" class ReferenceSettingsDialog { public: ReferenceSettingsDialog (int dummy); ~ReferenceSettingsDialog (); int run(); protected: GtkBuilder *gtkbuilder; GtkWidget *dialog; GtkWidget *checkbutton_verse_text; GtkWidget *checkbutton_relevant_bits; GtkWidget *cancelbutton; GtkWidget *okbutton; private: static void on_checkbutton_verse_text_toggled (GtkToggleButton *togglebutton, gpointer user_data); void set_gui(); static void on_okbutton_clicked (GtkButton *button, gpointer user_data); void on_ok (); }; #endif bibledit-gtk-4.9/src/dialogrefexchange.cpp000644 000766 000024 00000007677 12453001367 021027 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogrefexchange.h" #include "settings.h" #include "shell.h" #include "windowsoutpost.h" #include "help.h" #include "directories.h" #include "gwrappers.h" ReferenceExchangeDialog::ReferenceExchangeDialog(int dummy) { extern Settings *settings; Shortcuts shortcuts (0); gtkbuilder = gtk_builder_new (); gtk_builder_add_from_file (gtkbuilder, gw_build_filename (Directories->get_package_data(), "gtkbuilder.referenceexchangedialog.xml").c_str(), NULL); dialog = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "dialog")); entry_url = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "entry_url")); gtk_entry_set_text (GTK_ENTRY (entry_url), settings->genconfig.bibledit_web_url_get().c_str()); entry_user = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "entry_user")); gtk_entry_set_text (GTK_ENTRY (entry_user), settings->genconfig.bibledit_web_user_get().c_str()); button_url = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "button_url")); shortcuts.button (button_url); label_url = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "label_url")); gtk_label_set_text (GTK_LABEL (label_url), ""); InDialogHelp * indialoghelp = new InDialogHelp(dialog, gtkbuilder, &shortcuts, NULL); cancelbutton = indialoghelp->cancelbutton; okbutton = indialoghelp->okbutton; gtk_widget_grab_default(okbutton); gtk_widget_grab_focus(okbutton); shortcuts.stockbutton (cancelbutton); shortcuts.stockbutton (okbutton); shortcuts.process (); g_signal_connect((gpointer) button_url, "clicked", G_CALLBACK(on_url_test_clicked), gpointer(this)); g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(on_okbutton_clicked), gpointer(this)); } ReferenceExchangeDialog::~ReferenceExchangeDialog() { g_object_unref (gtkbuilder); gtk_widget_destroy(dialog); } int ReferenceExchangeDialog::run() { return gtk_dialog_run(GTK_DIALOG(dialog)); } void ReferenceExchangeDialog::on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((ReferenceExchangeDialog *) user_data)->on_okbutton(); } void ReferenceExchangeDialog::on_okbutton() { extern Settings *settings; settings->genconfig.bibledit_web_url_set(gtk_entry_get_text (GTK_ENTRY (entry_url))); settings->genconfig.bibledit_web_user_set(gtk_entry_get_text (GTK_ENTRY (entry_user))); } void ReferenceExchangeDialog::on_url_test_clicked(GtkButton * button, gpointer user_data) { ((ReferenceExchangeDialog *) user_data)->on_url_test(); } void ReferenceExchangeDialog::on_url_test() { GwSpawn spawn ("curl"); // Makes curl silent, no checking of certificate, but still show errors. spawn.arg ("-sSk"); ustring url = gtk_entry_get_text (GTK_ENTRY (entry_url)); url.append ("/ipc/setmessage.php"); spawn.arg (url); spawn.read (); spawn.run (); ustring message; for (unsigned int i = 0; i < spawn.standardout.size(); i++) { message.append (spawn.standardout[i] + "\n"); } for (unsigned int i = 0; i < spawn.standarderr.size(); i++) { message.append (spawn.standarderr[i] + "\n"); } if (message.empty()) { if (spawn.exitstatus == 0) { message = "Access okay"; } } gtk_label_set_text (GTK_LABEL (label_url), message.c_str()); } bibledit-gtk-4.9/src/dialogrefexchange.h000664 000766 000024 00000002650 12221507142 020453 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGREFEXCHANGE_H #define INCLUDED_DIALOGREFEXCHANGE_H #include #include "ustring.h" class ReferenceExchangeDialog { public: ReferenceExchangeDialog (int dummy); ~ReferenceExchangeDialog (); int run (); protected: GtkBuilder *gtkbuilder; GtkWidget *dialog; GtkWidget *entry_url; GtkWidget *entry_user; GtkWidget *button_url; GtkWidget *label_url; GtkWidget *cancelbutton; GtkWidget *okbutton; private: static void on_url_test_clicked(GtkButton * button, gpointer user_data); void on_url_test(); static void on_okbutton_clicked (GtkButton *button, gpointer user_data); void on_okbutton (); }; #endif bibledit-gtk-4.9/src/dialogreplace.cpp000664 000766 000024 00000026137 12221507145 020153 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogreplace.h" #include "utilities.h" #include "bible.h" #include "dialogselectbooks.h" #include "search_utils.h" #include "completion.h" #include "projectutils.h" #include "help.h" #include "shortcuts.h" #include "settings.h" #include "tiny_utilities.h" ReplaceDialog::ReplaceDialog(int dummy) { Shortcuts shortcuts(0); extern Settings *settings; replacedialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(replacedialog), "Replace"); gtk_window_set_position(GTK_WINDOW(replacedialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(replacedialog), TRUE); gtk_window_set_destroy_with_parent(GTK_WINDOW(replacedialog), TRUE); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(replacedialog)); gtk_widget_show(dialog_vbox1); table1 = gtk_table_new(6, 2, FALSE); gtk_widget_show(table1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), table1, TRUE, TRUE, 0); label7 = gtk_label_new("Search for"); gtk_widget_show(label7); gtk_table_attach(GTK_TABLE(table1), label7, 0, 1, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 4, 4); gtk_misc_set_alignment(GTK_MISC(label7), 1, 0.5); shortcuts.label(label7); label8 = gtk_label_new("Replace with"); gtk_widget_show(label8); gtk_table_attach(GTK_TABLE(table1), label8, 0, 1, 1, 2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 4, 4); gtk_misc_set_alignment(GTK_MISC(label8), 1, 0.5); shortcuts.label(label8); entry2 = gtk_entry_new(); // Manually added code. gtk_entry_set_text(GTK_ENTRY(entry2), settings->session.searchword.c_str()); gtk_widget_show(entry2); gtk_table_attach(GTK_TABLE(table1), entry2, 1, 2, 0, 1, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 2); gtk_entry_set_activates_default(GTK_ENTRY(entry2), TRUE); entry3 = gtk_entry_new(); // Manually added code. gtk_entry_set_text(GTK_ENTRY(entry3), settings->session.replaceword.c_str()); gtk_widget_show(entry3); gtk_table_attach(GTK_TABLE(table1), entry3, 1, 2, 1, 2, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 2); gtk_entry_set_activates_default(GTK_ENTRY(entry3), TRUE); if (!settings->genconfig.text_editor_font_default_get()) { PangoFontDescription *font_desc = NULL; font_desc = pango_font_description_from_string(settings->genconfig.text_editor_font_name_get().c_str()); gtk_widget_modify_font(entry2, font_desc); gtk_widget_modify_font(entry3, font_desc); pango_font_description_free(font_desc); } checkbuttoncase = gtk_check_button_new_with_mnemonic("Case sensitive"); gtk_widget_show(checkbuttoncase); gtk_table_attach(GTK_TABLE(table1), checkbuttoncase, 0, 2, 2, 3, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); shortcuts.button(checkbuttoncase); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbuttoncase), settings->session.search_case_sensitive); checkbuttonbook = gtk_check_button_new_with_mnemonic("Current book only"); gtk_widget_show(checkbuttonbook); gtk_table_attach(GTK_TABLE(table1), checkbuttonbook, 0, 2, 3, 4, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); shortcuts.button(checkbuttonbook); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbuttonbook), settings->session.search_current_book); checkbuttonchapter = gtk_check_button_new_with_mnemonic("Current chapter only"); gtk_widget_show(checkbuttonchapter); gtk_table_attach(GTK_TABLE(table1), checkbuttonchapter, 0, 2, 4, 5, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); shortcuts.button(checkbuttonchapter); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbuttonchapter), settings->session.search_current_chapter); selectbutton = gtk_button_new(); gtk_widget_show(selectbutton); gtk_table_attach(GTK_TABLE(table1), selectbutton, 0, 1, 5, 6, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); alignment1 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment1); gtk_container_add(GTK_CONTAINER(selectbutton), alignment1); hbox1 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox1); gtk_container_add(GTK_CONTAINER(alignment1), hbox1); image1 = gtk_image_new_from_stock("gtk-properties", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image1); gtk_box_pack_start(GTK_BOX(hbox1), image1, FALSE, FALSE, 0); label9 = gtk_label_new_with_mnemonic("Select books"); gtk_widget_show(label9); gtk_box_pack_start(GTK_BOX(hbox1), label9, FALSE, FALSE, 0); shortcuts.label(label9); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(replacedialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(replacedialog, NULL, &shortcuts, NULL); buttonfind = gtk_button_new_from_stock("gtk-find"); gtk_widget_show(buttonfind); gtk_dialog_add_action_widget(GTK_DIALOG(replacedialog), buttonfind, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (buttonfind), true); buttoncancel = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(buttoncancel); gtk_dialog_add_action_widget(GTK_DIALOG(replacedialog), buttoncancel, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (buttoncancel), true); shortcuts.stockbutton(buttonfind); shortcuts.stockbutton(buttoncancel); shortcuts.process(); g_signal_connect((gpointer) checkbuttonbook, "toggled", G_CALLBACK(on_checkbuttonbook_toggled), gpointer(this)); g_signal_connect((gpointer) checkbuttonchapter, "toggled", G_CALLBACK(on_checkbuttonchapter_toggled), gpointer(this)); g_signal_connect((gpointer) selectbutton, "clicked", G_CALLBACK(on_selectbutton_clicked), gpointer(this)); g_signal_connect((gpointer) buttonfind, "clicked", G_CALLBACK(replacedialog_on_buttonfind_clicked), gpointer(this)); g_signal_connect((gpointer) entry2, "changed", G_CALLBACK(on_word_entry_changed), gpointer(this)); gtk_label_set_mnemonic_widget(GTK_LABEL(label7), entry2); gtk_label_set_mnemonic_widget(GTK_LABEL(label8), entry3); gtk_widget_grab_focus(entry2); gtk_widget_grab_default(buttonfind); // Select books feature. selectable_books = project_get_books(settings->genconfig.project_get()); // Entry completion completion_setup(entry2, cpSearch); completion_setup(entry3, cpReplace); set_gui(); } ReplaceDialog::~ReplaceDialog() { gtk_widget_destroy(replacedialog); } int ReplaceDialog::run() { return gtk_dialog_run(GTK_DIALOG(replacedialog)); } void ReplaceDialog::on_checkbuttonbook_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((ReplaceDialog *) user_data)->set_gui(); } void ReplaceDialog::on_checkbuttonchapter_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((ReplaceDialog *) user_data)->set_gui(); } void ReplaceDialog::replacedialog_on_buttonfind_clicked(GtkButton * button, gpointer user_data) { ((ReplaceDialog *) user_data)->on_buttonfind_clicked(); } void ReplaceDialog::on_buttonfind_clicked() { extern Settings *settings; // Get data from the user interface. ustring searchword = gtk_entry_get_text(GTK_ENTRY(entry2)); settings->session.searchword = searchword; ustring replaceword = gtk_entry_get_text(GTK_ENTRY(entry3)); settings->session.replaceword = replaceword; settings->session.search_case_sensitive = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbuttoncase)); settings->session.search_current_book = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbuttonbook)); settings->session.search_current_chapter = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbuttonchapter)); // Save the current book selection in case we modify it. set saved_book_selection = settings->session.selected_books; // In case we search in the current book only, modify the book selection. if (settings->session.search_current_book) { settings->session.selected_books.clear(); settings->session.selected_books.insert(settings->genconfig.book_get()); } // Search. unsigned int chapter = convert_to_int(settings->genconfig.chapter_get()); search_string_basic(settings->genconfig.project_get(), true, chapter, results); sort_references(results); // Restore current book selection. settings->session.selected_books = saved_book_selection; // Highlighting words in editor. settings->session.highlights.clear(); SessionHighlights sessionhighlights1(searchword, settings->session.search_case_sensitive, false, false, false, atRaw, false, false, false, false, false, false, false, false); settings->session.highlights.push_back(sessionhighlights1); SessionHighlights sessionhighlights2(replaceword, settings->session.search_case_sensitive, false, false, false, atRaw, false, false, false, false, false, false, false, false); settings->session.highlights.push_back(sessionhighlights2); // Entry completion completion_finish(entry2, cpSearch); completion_finish(entry3, cpReplace); } void ReplaceDialog::on_selectbutton_clicked(GtkButton * button, gpointer user_data) { ((ReplaceDialog *) user_data)->on_selectbutton_clicked2(); } void ReplaceDialog::on_selectbutton_clicked2() // The user can select which books to search and replace in. { extern Settings *settings; SelectBooksDialog dialog(false); dialog.selectables(selectable_books); dialog.selection_set(settings->session.selected_books); if (dialog.run() == GTK_RESPONSE_OK) { settings->session.selected_books = dialog.selectionset; } } void ReplaceDialog::on_word_entry_changed(GtkEditable * editable, gpointer user_data) { ((ReplaceDialog *) user_data)->set_gui(); } void ReplaceDialog::set_gui() { // Search only works when there's a word to look for. ustring searchword = gtk_entry_get_text(GTK_ENTRY(entry2)); gtk_widget_set_sensitive(buttonfind, !searchword.empty()); // Current book and current chapter selectors. bool current_book_active = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbuttonbook)); if (!current_book_active) { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbuttonchapter), false); } bool current_chapter_active = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbuttonchapter)); if (current_chapter_active) { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbuttonbook), true); } gtk_widget_set_sensitive (checkbuttonchapter, current_book_active); // Sensitivity of book selection. gtk_widget_set_sensitive (selectbutton, !(current_book_active || current_chapter_active)); } bibledit-gtk-4.9/src/dialogreplace.h000664 000766 000024 00000004046 12221507141 017607 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGREPLACE_H #define INCLUDED_DIALOGREPLACE_H #include #include "referenceutils.h" class ReplaceDialog { public: ReplaceDialog (int dummy); ~ ReplaceDialog (); int run (); vector results; protected: private: GtkWidget *replacedialog; GtkWidget *dialog_vbox1; GtkWidget *table1; GtkWidget *label7; GtkWidget *label8; GtkWidget *entry2; GtkWidget *entry3; GtkWidget *checkbuttoncase; GtkWidget *checkbuttonbook; GtkWidget *checkbuttonchapter; GtkWidget *selectbutton; GtkWidget *alignment1; GtkWidget *hbox1; GtkWidget *image1; GtkWidget *label9; GtkWidget *dialog_action_area1; GtkWidget *buttonfind; GtkWidget *buttoncancel; static void on_checkbuttonbook_toggled (GtkToggleButton *togglebutton, gpointer user_data); static void on_checkbuttonchapter_toggled (GtkToggleButton *togglebutton, gpointer user_data); vector selectable_books; static void replacedialog_on_buttonfind_clicked (GtkButton *button, gpointer user_data); void on_buttonfind_clicked (); static void on_selectbutton_clicked (GtkButton *button, gpointer user_data); void on_selectbutton_clicked2 (); static void on_word_entry_changed (GtkEditable * editable, gpointer user_data); void set_gui (); }; #endif bibledit-gtk-4.9/src/dialogreplacing.cpp000664 000766 000024 00000033346 12221507147 020506 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogreplacing.h" #include "utilities.h" #include "bible.h" #include "usfm.h" #include "usfmtools.h" #include "projectutils.h" #include "progresswindow.h" #include "help.h" #include "books.h" #include "settings.h" #include "tiny_utilities.h" ReplacingDialog::ReplacingDialog(const vector < Reference > &references_in) { extern Settings *settings; searchfor = settings->session.searchword; replacewith = settings->session.replaceword; mycasesensitive = settings->session.search_case_sensitive; myproject = settings->genconfig.project_get(); ProjectConfiguration *projectconfig = settings->projectconfig(myproject); mylanguage = projectconfig->language_get(); replacedialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(replacedialog), "Replace"); gtk_window_set_destroy_with_parent(GTK_WINDOW(replacedialog), TRUE); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(replacedialog)); gtk_widget_show(dialog_vbox1); referencelabel = gtk_label_new("referencelabel"); gtk_widget_show(referencelabel); gtk_box_pack_start(GTK_BOX(dialog_vbox1), referencelabel, FALSE, FALSE, 4); gtk_misc_set_alignment(GTK_MISC(referencelabel), 0, 0.5); vbox1 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), vbox1, TRUE, TRUE, 0); label1 = gtk_label_new("Do you wish to replace this text: ..."); gtk_widget_show(label1); gtk_box_pack_start(GTK_BOX(vbox1), label1, FALSE, FALSE, 4); scrolledwindow4 = gtk_scrolled_window_new(NULL, NULL); gtk_widget_show(scrolledwindow4); gtk_box_pack_start(GTK_BOX(vbox1), scrolledwindow4, TRUE, TRUE, 0); textview1 = gtk_text_view_new(); gtk_widget_show(textview1); gtk_container_add(GTK_CONTAINER(scrolledwindow4), textview1); gtk_widget_set_size_request(textview1, 500, 100); gtk_text_view_set_editable(GTK_TEXT_VIEW(textview1), FALSE); gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(textview1), GTK_WRAP_WORD); gtk_text_view_set_cursor_visible(GTK_TEXT_VIEW(textview1), FALSE); label2 = gtk_label_new("... with this text? It can be edited also."); gtk_widget_show(label2); gtk_box_pack_start(GTK_BOX(vbox1), label2, FALSE, FALSE, 4); scrolledwindow5 = gtk_scrolled_window_new(NULL, NULL); gtk_widget_show(scrolledwindow5); gtk_box_pack_start(GTK_BOX(vbox1), scrolledwindow5, TRUE, TRUE, 0); textview2 = gtk_text_view_new(); gtk_widget_show(textview2); gtk_container_add(GTK_CONTAINER(scrolledwindow5), textview2); gtk_widget_set_size_request(textview2, 500, 100); gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(textview2), GTK_WRAP_WORD); hbox3 = gtk_hbox_new(FALSE, 0); gtk_widget_show(hbox3); gtk_box_pack_start(GTK_BOX(vbox1), hbox3, FALSE, FALSE, 5); yesbutton = gtk_button_new_from_stock("gtk-yes"); gtk_widget_show(yesbutton); gtk_box_pack_start(GTK_BOX(hbox3), yesbutton, FALSE, FALSE, 4); gtk_widget_set_size_request(yesbutton, 80, -1); gtk_widget_set_can_default (GTK_WIDGET (yesbutton), true); nobutton = gtk_button_new_from_stock("gtk-no"); gtk_widget_show(nobutton); gtk_box_pack_start(GTK_BOX(hbox3), nobutton, FALSE, FALSE, 4); gtk_widget_set_size_request(nobutton, 80, -1); allbutton = gtk_button_new(); gtk_widget_show(allbutton); gtk_box_pack_start(GTK_BOX(hbox3), allbutton, FALSE, FALSE, 4); gtk_widget_set_size_request(allbutton, 80, -1); alignment1 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment1); gtk_container_add(GTK_CONTAINER(allbutton), alignment1); hbox4 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox4); gtk_container_add(GTK_CONTAINER(alignment1), hbox4); image1 = gtk_image_new_from_stock("gtk-dialog-warning", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image1); gtk_box_pack_start(GTK_BOX(hbox4), image1, FALSE, FALSE, 0); label3 = gtk_label_new_with_mnemonic("_All"); gtk_widget_show(label3); gtk_box_pack_start(GTK_BOX(hbox4), label3, FALSE, FALSE, 0); cancelbutton = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton); gtk_box_pack_start(GTK_BOX(hbox3), cancelbutton, FALSE, FALSE, 4); gtk_widget_set_size_request(cancelbutton, 80, -1); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(replacedialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(replacedialog, NULL, NULL, NULL); gtk_widget_grab_focus(yesbutton); gtk_widget_grab_default(yesbutton); // Get the buffers for later use. textbuffer1 = gtk_text_view_get_buffer(GTK_TEXT_VIEW(textview1)); textbuffer2 = gtk_text_view_get_buffer(GTK_TEXT_VIEW(textview2)); // Produce the tags for colouring the search/replace words. tag1 = gtk_text_buffer_create_tag(textbuffer1, "referencetag", "background", "khaki", NULL); tag2 = gtk_text_buffer_create_tag(textbuffer2, "referencetag", "background", "khaki", NULL); g_signal_connect((gpointer) yesbutton, "clicked", G_CALLBACK(replacedialog_on_yesbutton_clicked), gpointer(this)); g_signal_connect((gpointer) nobutton, "clicked", G_CALLBACK(replacedialog_on_nobutton_clicked), gpointer(this)); g_signal_connect((gpointer) allbutton, "clicked", G_CALLBACK(replacedialog_on_allbutton_clicked), gpointer(this)); g_signal_connect((gpointer) cancelbutton, "clicked", G_CALLBACK(replacedialog_on_cancelbutton_clicked), gpointer(this)); // Next one added to Glade's code. gtk_dialog_set_default_response(GTK_DIALOG(replacedialog), GTK_RESPONSE_OK); // Store results. for (unsigned int i = 0; i < references_in.size(); i++) references.push_back(references_in[i]); referencepointer = 0; set_gui(); } ReplacingDialog::~ReplacingDialog() { gtk_widget_destroy(replacedialog); } int ReplacingDialog::run() { return gtk_dialog_run(GTK_DIALOG(replacedialog)); } void ReplacingDialog::replacedialog_on_yesbutton_clicked(GtkButton * button, gpointer user_data) { ((ReplacingDialog *) user_data)->on_yesbutton_clicked(); } void ReplacingDialog::on_yesbutton_clicked() { accept_change(); referencepointer++; set_gui(); if (referencepointer >= references.size()) on_cancelbutton_clicked(); } void ReplacingDialog::replacedialog_on_nobutton_clicked(GtkButton * button, gpointer user_data) { ((ReplacingDialog *) user_data)->on_nobutton_clicked(); } void ReplacingDialog::on_nobutton_clicked() { referencepointer++; set_gui(); if (referencepointer >= references.size()) on_cancelbutton_clicked(); } void ReplacingDialog::replacedialog_on_allbutton_clicked(GtkButton * button, gpointer user_data) { ((ReplacingDialog *) user_data)->on_allbutton_clicked(); } void ReplacingDialog::on_allbutton_clicked() { ProgressWindow progresswindow("Replacing", false); progresswindow.set_iterate(0, 1, references.size() - referencepointer); while (referencepointer < references.size()) { progresswindow.iterate(); on_yesbutton_clicked(); } } void ReplacingDialog::replacedialog_on_cancelbutton_clicked(GtkButton * button, gpointer user_data) { ((ReplacingDialog *) user_data)->on_cancelbutton_clicked(); } void ReplacingDialog::on_cancelbutton_clicked() { gtk_dialog_response(GTK_DIALOG(replacedialog), GTK_RESPONSE_NONE); } void ReplacingDialog::set_gui() // The GUI is filled with all data needed. { if (referencepointer < references.size()) { // Show reference. gtk_label_set_text(GTK_LABEL(referencelabel), references[referencepointer].human_readable(mylanguage).c_str()); // Get the verse. ustring line = project_retrieve_verse(myproject, references[referencepointer].book, references[referencepointer].chapter, references[referencepointer].verse); // Verse exists? if (!line.empty()) { // Parse into lines. ParseLine parseline(line); // Clear the two textviews. gtk_text_buffer_set_text(textbuffer1, "", -1); gtk_text_buffer_set_text(textbuffer2, "", -1); ustring searchword; if (mycasesensitive) searchword = searchfor; else searchword = searchfor.casefold(); // Remove any previous highlights in both buffers. GtkTextIter startiter; GtkTextIter enditer; gtk_text_buffer_get_start_iter(textbuffer1, &startiter); gtk_text_buffer_get_end_iter(textbuffer1, &enditer); gtk_text_buffer_remove_tag(textbuffer1, tag1, &startiter, &enditer); gtk_text_buffer_get_start_iter(textbuffer2, &startiter); gtk_text_buffer_get_end_iter(textbuffer2, &enditer); gtk_text_buffer_remove_tag(textbuffer2, tag2, &startiter, &enditer); // As a verse may consist of more lines, deal with each. for (unsigned int i = 0; i < parseline.lines.size(); i++) { // Fill original text. ustring verse(parseline.lines[i]); gtk_text_buffer_insert_at_cursor(textbuffer1, verse.c_str(), -1); gtk_text_buffer_insert_at_cursor(textbuffer1, "\n", -1); // Storage for later colouring of text. vector < int >colourlines; vector < size_t > colourpositions; // Start producing modified text. ustring verse2; if (mycasesensitive) verse2 = verse; else verse2 = verse.casefold(); // Colour words in the original window. size_t offposition = verse2.find(searchword); unsigned int infinite_loop_counter = 0; while ((offposition != string::npos) && (infinite_loop_counter < 10)) { infinite_loop_counter++; // Handle differences in length between normal text and casefold. if (!mycasesensitive) { ustring normal_text = verse.substr(0, offposition); size_t normal_length = normal_text.length(); size_t casefold_length = normal_text.casefold().length(); int difference = normal_length - casefold_length; offposition += difference; } GtkTextIter begin; GtkTextIter end; gtk_text_buffer_get_iter_at_line_offset(textbuffer1, &begin, i, offposition); gtk_text_buffer_get_iter_at_line_offset(textbuffer1, &end, i, offposition + searchword.length()); gtk_text_buffer_apply_tag(textbuffer1, tag1, &begin, &end); offposition = verse2.find(searchword, offposition + searchword.length()); } // Continue producing modified text. ustring sfm(parseline.lines[i]); // Replace the text, except in the \id line. if (!usfm_is_id(usfm_extract_marker(sfm))) { size_t offposition = verse2.find(searchword); while (offposition != string::npos) { if (!mycasesensitive) { ustring normal_text = verse.substr(0, offposition); size_t normal_length = normal_text.length(); size_t casefold_length = normal_text.casefold().length(); int difference = normal_length - casefold_length; offposition += difference; } verse.replace(offposition, searchword.length(), replacewith); colourlines.push_back(i); colourpositions.push_back(offposition); if (mycasesensitive) verse2 = verse; else verse2 = verse.casefold(); offposition = verse2.find(searchword, offposition + replacewith.length()); } } // Insert modified text into the second buffer. gtk_text_buffer_insert_at_cursor(textbuffer2, verse.c_str(), -1); gtk_text_buffer_insert_at_cursor(textbuffer2, "\n", -1); // Colour all replacements. for (unsigned int i = 0; i < colourlines.size(); i++) { GtkTextIter begin; GtkTextIter end; gtk_text_buffer_get_iter_at_line_offset(textbuffer2, &begin, colourlines[i], colourpositions[i]); gtk_text_buffer_get_iter_at_line_offset(textbuffer2, &end, colourlines[i], colourpositions[i] + replacewith.length()); gtk_text_buffer_apply_tag(textbuffer2, tag2, &begin, &end); } } } } } void ReplacingDialog::accept_change() /* * This function accepts the change from the second textview * and saves it into the book. */ { // Get textbuffer. GtkTextBuffer *buffer; buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(textview2)); // Put the modified text back into the book. vector < ustring > verses; int linecount = gtk_text_buffer_get_line_count(GTK_TEXT_BUFFER(buffer)); for (int i = 0; i < linecount; i++) { GtkTextIter begin; GtkTextIter end; gtk_text_buffer_get_iter_at_line(GTK_TEXT_BUFFER(buffer), &begin, i); gtk_text_buffer_get_iter_at_line(GTK_TEXT_BUFFER(buffer), &end, i + 1); gtk_text_iter_backward_char(&end); ustring s; s = gtk_text_buffer_get_text(GTK_TEXT_BUFFER(buffer), &begin, &end, false); s = trim(s); if (s.length()) verses.push_back(s); } // Save the modified text. ustring data; for (unsigned int i = 0; i < verses.size(); i++) { if (!data.empty()) data.append("\n"); data.append(verses[i]); } if (verses.size() > 0) { project_store_verse(myproject, references[referencepointer].book, references[referencepointer].chapter, references[referencepointer].verse, data); } } bibledit-gtk-4.9/src/dialogreplacing.h000664 000766 000024 00000004527 12221507142 020145 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGREPLACING_H #define INCLUDED_DIALOGREPLACING_H #include #include "usfm.h" #include "reference.h" class ReplacingDialog { public: ReplacingDialog (const vector & references_in); ~ ReplacingDialog (); int run (); protected: private: GtkWidget *replacedialog; GtkWidget *dialog_vbox1; GtkWidget *referencelabel; GtkWidget *vbox1; GtkWidget *label1; GtkWidget *scrolledwindow4; GtkWidget *textview1; GtkWidget *label2; GtkWidget *scrolledwindow5; GtkWidget *textview2; GtkWidget *hbox3; GtkWidget *yesbutton; GtkWidget *nobutton; GtkWidget *allbutton; GtkWidget *alignment1; GtkWidget *hbox4; GtkWidget *image1; GtkWidget *label3; GtkWidget *cancelbutton; GtkWidget *dialog_action_area1; vector references; unsigned int referencepointer; ustring myproject; ustring mylanguage; bool mycasesensitive; GtkTextTag *tag1; GtkTextTag *tag2; GtkTextBuffer *textbuffer1; GtkTextBuffer *textbuffer2; void set_gui (); void accept_change (); ustring searchfor; ustring replacewith; static void replacedialog_on_cancelbutton_clicked (GtkButton * button, gpointer user_data); void on_cancelbutton_clicked (); static void replacedialog_on_yesbutton_clicked (GtkButton * button, gpointer user_data); void on_yesbutton_clicked (); static void replacedialog_on_nobutton_clicked (GtkButton * button, gpointer user_data); void on_nobutton_clicked (); static void replacedialog_on_allbutton_clicked (GtkButton * button, gpointer user_data); void on_allbutton_clicked (); }; #endif bibledit-gtk-4.9/src/dialogresourceconverter.cpp000644 000766 000024 00000066211 12453001367 022314 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogresourceconverter.h" #include "help.h" #include "gtkwrappers.h" #include "utilities.h" #include "progresswindow.h" #include "unixwrappers.h" #include "bible.h" #include "books.h" #include "html.h" #include "gui.h" #include "dialogreviewanchors.h" #include "resource_utils.h" #include "resource_conversion_utils.h" #include "tiny_utilities.h" #include "dialoglistview.h" #include "gwrappers.h" #include "directories.h" #include "screen.h" #include "gtkwrappers.h" #include "roman.h" #include "combobox.h" ResourceConverterDialog::ResourceConverterDialog(const ustring & working_directory) { // Initialize variables. workingdirectory = working_directory; resource_conversion_type = rctEnd; chapter_pattern_index = 0; verse_pattern_index = 0; anchors_written = false; table_attachment_offset = 0; table1 = NULL; // Shortcuts. Shortcuts shortcuts(0); // Dialog. resourceconverterdialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(resourceconverterdialog), "Resource Converter"); gtk_window_set_position(GTK_WINDOW(resourceconverterdialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(resourceconverterdialog), TRUE); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(resourceconverterdialog)); gtk_widget_show(dialog_vbox1); label1 = gtk_label_new(""); gtk_widget_show(label1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), label1, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label1), 0, 0.5); build_table_and_type(shortcuts); // Dialog action. dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(resourceconverterdialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(resourceconverterdialog, NULL, &shortcuts, "file/resource/converter"); helpbutton = gtk_button_new_from_stock("gtk-help"); gtk_dialog_add_action_widget(GTK_DIALOG(resourceconverterdialog), helpbutton, GTK_RESPONSE_NONE); cancelbutton = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton); gtk_dialog_add_action_widget(GTK_DIALOG(resourceconverterdialog), cancelbutton, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton), true); shortcuts.stockbutton(cancelbutton); okbutton = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton); gtk_dialog_add_action_widget(GTK_DIALOG(resourceconverterdialog), okbutton, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton), true); shortcuts.stockbutton(okbutton); gtk_widget_set_sensitive(okbutton, false); g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(on_okbutton_clicked), gpointer(this)); gtk_widget_grab_focus(okbutton); gtk_widget_grab_default(okbutton); build_gui(shortcuts); shortcuts.process(); if (type_gui()) { gui(); on_type_button(true); } } ResourceConverterDialog::~ResourceConverterDialog() { gtk_widget_destroy(resourceconverterdialog); } int ResourceConverterDialog::run() { return gtk_dialog_run(GTK_DIALOG(resourceconverterdialog)); } void ResourceConverterDialog::build_table_and_type(Shortcuts & shortcuts) { // Destroy anything old. if (table1) gtk_widget_destroy(table1); // The table that contains the widgets. table1 = gtk_table_new(6, 4, FALSE); gtk_widget_show(table1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), table1, TRUE, TRUE, 0); gtk_table_set_row_spacings(GTK_TABLE(table1), 3); gtk_table_set_col_spacings(GTK_TABLE(table1), 3); // Type of the resource. build_button(image_type_ok, label_type_ok, label_type_short, button_type, "Type", shortcuts, G_CALLBACK(on_type_button_clicked), label_type_long); } void ResourceConverterDialog::build_entry(GtkWidget * &image_ok, GtkWidget * &label_ok, GtkWidget * &label, const gchar * label_text, GtkWidget * &entry, const ustring & entry_text, GCallback handler) { GtkWidget *hseparator; hseparator = gtk_hseparator_new(); gtk_widget_show(hseparator); gtk_table_attach(GTK_TABLE(table1), hseparator, 0, 4, table_attachment_offset, table_attachment_offset + 1, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), 0, 0); table_attachment_offset++; image_ok = gtk_image_new_from_icon_name("gtk-apply", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image_ok); gtk_table_attach(GTK_TABLE(table1), image_ok, 0, 1, table_attachment_offset, table_attachment_offset + 1, (GtkAttachOptions) (0), (GtkAttachOptions) (0), 0, 0); label_ok = gtk_label_new(""); gtk_widget_show(label_ok); gtk_table_attach(GTK_TABLE(table1), label_ok, 1, 2, table_attachment_offset, table_attachment_offset + 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label_ok), 0, 0.5); label = gtk_label_new(label_text); gtk_widget_show(label); gtk_table_attach(GTK_TABLE(table1), label, 2, 4, table_attachment_offset, table_attachment_offset + 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label), 0, 0.5); table_attachment_offset++; entry = gtk_entry_new(); gtk_widget_show(entry); gtk_table_attach(GTK_TABLE(table1), entry, 0, 4, table_attachment_offset, table_attachment_offset + 1, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); table_attachment_offset++; gtk_entry_set_text(GTK_ENTRY(entry), entry_text.c_str()); g_signal_connect((gpointer) entry, "changed", handler, gpointer(this)); } void ResourceConverterDialog::build_button(GtkWidget * &image_ok, GtkWidget * &label_ok, GtkWidget * &label_short, GtkWidget * &button, const gchar * button_text, Shortcuts & shortcuts, GCallback handler, GtkWidget * &label_long) { GtkWidget *hseparator; hseparator = gtk_hseparator_new(); gtk_widget_show(hseparator); gtk_table_attach(GTK_TABLE(table1), hseparator, 0, 4, table_attachment_offset, table_attachment_offset + 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), 0, 0); table_attachment_offset++; image_ok = gtk_image_new_from_icon_name("gtk-apply", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image_ok); gtk_table_attach(GTK_TABLE(table1), image_ok, 0, 1, table_attachment_offset, table_attachment_offset + 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_FILL), 0, 0); label_ok = gtk_label_new(""); gtk_widget_show(label_ok); gtk_table_attach(GTK_TABLE(table1), label_ok, 1, 2, table_attachment_offset, table_attachment_offset + 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label_ok), 0, 0.5); label_short = gtk_label_new(""); gtk_widget_show(label_short); gtk_table_attach(GTK_TABLE(table1), label_short, 2, 3, table_attachment_offset, table_attachment_offset + 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label_short), 0, 0.5); button = gtk_button_new(); gtk_widget_show(button); gtk_table_attach(GTK_TABLE(table1), button, 3, 4, table_attachment_offset, table_attachment_offset + 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); table_attachment_offset++; GtkWidget *alignment; alignment = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment); gtk_container_add(GTK_CONTAINER(button), alignment); GtkWidget *hbox; hbox = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox); gtk_container_add(GTK_CONTAINER(alignment), hbox); GtkWidget *image_button_surface; image_button_surface = gtk_image_new_from_stock("gtk-index", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image_button_surface); gtk_box_pack_start(GTK_BOX(hbox), image_button_surface, FALSE, FALSE, 0); GtkWidget *label_button_surface; label_button_surface = gtk_label_new_with_mnemonic(button_text); gtk_widget_show(label_button_surface); gtk_box_pack_start(GTK_BOX(hbox), label_button_surface, FALSE, FALSE, 0); shortcuts.label(label_button_surface); label_long = gtk_label_new(""); gtk_widget_show(label_long); gtk_table_attach(GTK_TABLE(table1), label_long, 0, 4, table_attachment_offset, table_attachment_offset + 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label_long), 0, 0.5); table_attachment_offset++; g_signal_connect((gpointer) button, "clicked", handler, gpointer(this)); } void ResourceConverterDialog::build_checkbutton_button(GtkWidget * &image_ok, GtkWidget * &label_ok, GtkWidget * &checkbutton, const gchar * checkbutton_text, GCallback checkbutton_handler, GtkWidget * &button, const gchar * button_text, GCallback button_handler, Shortcuts & shortcuts, GtkWidget * &label) { GtkWidget *hseparator = gtk_hseparator_new(); gtk_widget_show(hseparator); gtk_table_attach(GTK_TABLE(table1), hseparator, 0, 4, table_attachment_offset, table_attachment_offset + 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), 0, 0); table_attachment_offset++; image_ok = gtk_image_new_from_icon_name("gtk-apply", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image_ok); gtk_table_attach(GTK_TABLE(table1), image_ok, 0, 1, table_attachment_offset, table_attachment_offset + 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), 0, 0); label_ok = gtk_label_new("Done"); gtk_widget_show(label_ok); gtk_table_attach(GTK_TABLE(table1), label_ok, 1, 2, table_attachment_offset, table_attachment_offset + 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label_ok), 0, 0.5); checkbutton = gtk_check_button_new_with_mnemonic(checkbutton_text); gtk_widget_show(checkbutton); gtk_table_attach(GTK_TABLE(table1), checkbutton, 2, 3, table_attachment_offset, table_attachment_offset + 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); shortcuts.button(checkbutton); button = gtk_button_new(); gtk_widget_show(button); gtk_table_attach(GTK_TABLE(table1), button, 3, 4, table_attachment_offset, table_attachment_offset + 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); table_attachment_offset++; GtkWidget *alignment2 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment2); gtk_container_add(GTK_CONTAINER(button), alignment2); GtkWidget *hbox2 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox2); gtk_container_add(GTK_CONTAINER(alignment2), hbox2); GtkWidget *image2 = gtk_image_new_from_stock("gtk-index", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image2); gtk_box_pack_start(GTK_BOX(hbox2), image2, FALSE, FALSE, 0); GtkWidget *label2 = gtk_label_new_with_mnemonic(button_text); gtk_widget_show(label2); gtk_box_pack_start(GTK_BOX(hbox2), label2, FALSE, FALSE, 0); shortcuts.label(label2); label = gtk_label_new(""); gtk_widget_show(label); gtk_table_attach(GTK_TABLE(table1), label, 0, 4, table_attachment_offset, table_attachment_offset + 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label), 0, 0.5); table_attachment_offset++; g_signal_connect((gpointer) checkbutton, "toggled", checkbutton_handler, gpointer(this)); g_signal_connect((gpointer) button, "clicked", button_handler, gpointer(this)); } void ResourceConverterDialog::build_textview(GtkWidget * &image_ok, GtkWidget * &label_ok, GtkWidget * &label, GtkWidget * &textview, gchar * text, GCallback handler) { GtkWidget *hseparator; hseparator = gtk_hseparator_new(); gtk_widget_show(hseparator); gtk_table_attach(GTK_TABLE(table1), hseparator, 0, 4, table_attachment_offset, table_attachment_offset + 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), 0, 0); table_attachment_offset++; image_ok = gtk_image_new_from_icon_name("gtk-apply", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image_ok); gtk_table_attach(GTK_TABLE(table1), image_ok, 0, 1, table_attachment_offset, table_attachment_offset + 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), 0, 0); label_ok = gtk_label_new("Done"); gtk_widget_show(label_ok); gtk_table_attach(GTK_TABLE(table1), label_ok, 1, 2, table_attachment_offset, table_attachment_offset + 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label_ok), 0, 0.5); label = gtk_label_new("Title"); gtk_widget_show(label); gtk_table_attach(GTK_TABLE(table1), label, 2, 4, table_attachment_offset, table_attachment_offset + 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label), 0, 0.5); table_attachment_offset++; GtkWidget *scrolledwindow; scrolledwindow = gtk_scrolled_window_new(NULL, NULL); gtk_widget_show(scrolledwindow); gtk_table_attach(GTK_TABLE(table1), scrolledwindow, 0, 4, table_attachment_offset, table_attachment_offset + 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), 0, 0); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scrolledwindow), GTK_SHADOW_IN); textview = gtk_text_view_new(); gtk_widget_show(textview); gtk_container_add(GTK_CONTAINER(scrolledwindow), textview); table_attachment_offset++; if (text) { GtkTextBuffer *buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(textview)); gtk_text_buffer_set_text(buffer, text, -1); } g_signal_connect((gpointer) textview, "key_press_event", handler, gpointer(this)); } // Entry, combo, entry. void ResourceConverterDialog::build_entry_combo_entry(GtkWidget * &image_ok, GtkWidget * &label_ok, GtkWidget * &label, GtkWidget * &label_entry_1, GtkWidget * &entry_1, GtkWidget * &label_combo, GtkWidget * &combo, GtkWidget * &label_entry_2, GtkWidget * &entry_2, GCallback entry_handler, Shortcuts & shortcuts) { GtkWidget *hseparator; hseparator = gtk_hseparator_new(); gtk_widget_show(hseparator); gtk_table_attach(GTK_TABLE(table1), hseparator, 0, 4, table_attachment_offset, table_attachment_offset + 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), 0, 0); table_attachment_offset++; image_ok = gtk_image_new_from_icon_name("gtk-apply", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image_ok); gtk_table_attach(GTK_TABLE(table1), image_ok, 0, 1, table_attachment_offset, table_attachment_offset + 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), 0, 0); label_ok = gtk_label_new("Done"); gtk_widget_show(label_ok); gtk_table_attach(GTK_TABLE(table1), label_ok, 1, 2, table_attachment_offset, table_attachment_offset + 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label_ok), 0, 0.5); label = gtk_label_new(""); gtk_widget_show(label); gtk_table_attach(GTK_TABLE(table1), label, 2, 4, table_attachment_offset, table_attachment_offset + 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label), 0, 0.5); table_attachment_offset++; GtkWidget *hbox; hbox = gtk_hbox_new(FALSE, 5); gtk_widget_show(hbox); gtk_table_attach(GTK_TABLE(table1), hbox, 0, 4, table_attachment_offset, table_attachment_offset + 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), 0, 0); table_attachment_offset++; label_entry_1 = gtk_label_new(""); gtk_widget_show(label_entry_1); gtk_box_pack_start(GTK_BOX(hbox), label_entry_1, FALSE, FALSE, 0); entry_1 = gtk_entry_new(); gtk_widget_show(entry_1); gtk_box_pack_start(GTK_BOX(hbox), entry_1, TRUE, TRUE, 0); shortcuts.label(label_entry_1); gtk_label_set_mnemonic_widget(GTK_LABEL(label_entry_1), entry_1); label_combo = gtk_label_new(""); gtk_widget_show(label_combo); gtk_box_pack_start(GTK_BOX(hbox), label_combo, FALSE, FALSE, 0); combo = gtk_combo_box_new_text(); gtk_widget_show(combo); gtk_box_pack_start(GTK_BOX(hbox), combo, TRUE, TRUE, 0); shortcuts.label(label_combo); gtk_label_set_mnemonic_widget(GTK_LABEL(label_combo), combo); label_entry_2 = gtk_label_new(""); gtk_widget_show(label_entry_2); gtk_box_pack_start(GTK_BOX(hbox), label_entry_2, FALSE, FALSE, 0); entry_2 = gtk_entry_new(); gtk_widget_show(entry_2); gtk_box_pack_start(GTK_BOX(hbox), entry_2, TRUE, TRUE, 0); shortcuts.label(label_entry_2); gtk_label_set_mnemonic_widget(GTK_LABEL(label_entry_2), entry_2); g_signal_connect((gpointer) entry_1, "changed", entry_handler, gpointer(this)); g_signal_connect((gpointer) entry_2, "changed", entry_handler, gpointer(this)); } // Resource conversion type. void ResourceConverterDialog::on_type_button_clicked(GtkButton * button, gpointer user_data) { ((ResourceConverterDialog *) user_data)->on_type_button(false); } void ResourceConverterDialog::on_type_button(bool no_ask) { bool dialog_ok = false; if (!no_ask) { vector < ustring > types; for (unsigned int i = 0; i < rctEnd; i++) { types.push_back(resource_conversion_type_to_text((ResourceConversionType) i)); } ListviewDialog dialog("Select resource conversion type", types, resource_conversion_type_to_text(resource_conversion_type), false, NULL); if (dialog.run() == GTK_RESPONSE_OK) { dialog_ok = true; resource_conversion_type = resource_conversion_text_to_type(dialog.focus); } } if (dialog_ok || no_ask) { Shortcuts shortcuts(0); shortcuts.stockbutton(okbutton); shortcuts.stockbutton(cancelbutton); shortcuts.stockbutton(helpbutton); build_table_and_type(shortcuts); build_gui(shortcuts); shortcuts.process(); } if (type_gui()) { gui(); } } bool ResourceConverterDialog::type_gui() { ustring type = resource_conversion_type_to_text(resource_conversion_type); bool ok = !type.empty(); gtk_label_set_text(GTK_LABEL(label_type_short), "Select the resource conversion type"); gtk_label_set_text(GTK_LABEL(label_type_long), type.c_str()); gui_okay(image_type_ok, label_type_ok, ok); return ok; } void ResourceConverterDialog::build_gui(Shortcuts & shortcuts) { switch (resource_conversion_type) { case rctChapterStartsAtPatternVerseOneStartsAtChapterVerseStartsAtPattern: { build_button(image_open_file_ok, label_open_file_ok, label_open_file_short, button_open_file, "Open", shortcuts, G_CALLBACK(on_open_file_button_clicked), label_open_file_long); build_button(image_view_file_ok, label_view_file_ok, label_view_file_short, button_view_file_html, "View", shortcuts, G_CALLBACK(on_view_file_button_clicked), label_view_file_long); build_entry_combo_entry(image_chapter_pattern_ok, label_chapter_pattern_ok, label_chapter_pattern, label_chapter_pattern_1, entry_chapter_pattern_1, label_chapter_pattern_combo, combo_chapter_pattern, label_chapter_pattern_2, entry_chapter_pattern_2, G_CALLBACK(on_chapter_pattern_entry_changed), shortcuts); gtk_entry_set_text(GTK_ENTRY(entry_chapter_pattern_1), chapter_pattern_prefix.c_str()); vector < ustring > chapters; chapters.push_back(integer_or_roman_sample(0)); chapters.push_back(integer_or_roman_sample(1)); combobox_set_strings(combo_chapter_pattern, chapters); combobox_set_index(combo_chapter_pattern, chapter_pattern_index); gtk_entry_set_text(GTK_ENTRY(entry_chapter_pattern_2), chapter_pattern_suffix.c_str()); gtk_label_set_text(GTK_LABEL(label_chapter_pattern), "Enter the text pattern to detect the chapter"); gtk_label_set_text(GTK_LABEL(label_chapter_pattern_1), "Prefix"); gtk_label_set_text(GTK_LABEL(label_chapter_pattern_combo), "Chapter number"); gtk_label_set_text(GTK_LABEL(label_chapter_pattern_2), "Suffix"); build_entry_combo_entry(image_verse_pattern_ok, label_verse_pattern_ok, label_verse_pattern, label_verse_pattern_1, entry_verse_pattern_1, label_verse_pattern_combo, combo_verse_pattern, label_verse_pattern_2, entry_verse_pattern_2, G_CALLBACK(on_verse_pattern_entry_changed), shortcuts); gtk_entry_set_text(GTK_ENTRY(entry_verse_pattern_1), verse_pattern_prefix.c_str()); vector < ustring > verses; verses.push_back(integer_or_roman_sample(0)); verses.push_back(integer_or_roman_sample(1)); combobox_set_strings(combo_verse_pattern, verses); combobox_set_index(combo_verse_pattern, verse_pattern_index); gtk_entry_set_text(GTK_ENTRY(entry_verse_pattern_2), verse_pattern_suffix.c_str()); gtk_label_set_text(GTK_LABEL(label_verse_pattern), "Enter the text pattern to detect the verse"); gtk_label_set_text(GTK_LABEL(label_verse_pattern_1), "Prefix"); gtk_label_set_text(GTK_LABEL(label_verse_pattern_combo), "Verse number"); gtk_label_set_text(GTK_LABEL(label_verse_pattern_2), "Suffix"); build_button(image_write_anchors_ok, label_write_anchors_ok, label_write_anchors_short, button_write_anchors, "Write", shortcuts, G_CALLBACK(on_write_anchors_button_clicked), label_write_anchors_long); break; } case rctEnd: { break; } } } void ResourceConverterDialog::on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((ResourceConverterDialog *) user_data)->on_okbutton(); } void ResourceConverterDialog::on_okbutton() { chapter_pattern_gui(); } void ResourceConverterDialog::gui() { bool ok = true; if (!type_gui()) ok = false; switch (resource_conversion_type) { case rctChapterStartsAtPatternVerseOneStartsAtChapterVerseStartsAtPattern: { if (!open_file_gui()) ok = false; if (!view_file_gui()) ok = false; if (!chapter_pattern_gui()) ok = false; if (!verse_pattern_gui()) ok = false; if (!write_anchors_gui()) ok = false; break; } case rctEnd: { break; } } gtk_widget_set_sensitive(okbutton, ok); } // Open file. void ResourceConverterDialog::on_open_file_button_clicked(GtkButton * button, gpointer user_data) { ((ResourceConverterDialog *) user_data)->on_open_file_button(); } void ResourceConverterDialog::on_open_file_button() { // List all files in the working directory. ReadFiles rf(workingdirectory, "", ""); // Select a file. ListviewDialog dialog("Select file", rf.files, filename, true, NULL); if (dialog.run() == GTK_RESPONSE_OK) { // Store filename, read it. filename = dialog.focus; ReadText rt(gw_build_filename(workingdirectory, filename), true, false); lines = rt.lines; anchors_written = false; } if (open_file_gui()) { gui(); } } bool ResourceConverterDialog::open_file_gui() { bool ok = !filename.empty(); ustring s(filename); if (ok) { s.append(": "); s.append(convert_to_string(lines.size())); s.append(" lines"); } gtk_label_set_text(GTK_LABEL(label_open_file_short), "Open a file for conversion"); gtk_label_set_text(GTK_LABEL(label_open_file_long), s.c_str()); gui_okay(image_open_file_ok, label_open_file_ok, ok); return ok; } // View file. void ResourceConverterDialog::on_view_file_button_clicked(GtkButton * button, gpointer user_data) { ((ResourceConverterDialog *) user_data)->on_view_file_button(); } void ResourceConverterDialog::on_view_file_button() { ustring tempfile = gw_build_filename(Directories->get_temp(), "resource-converter-view-file"); write_lines(tempfile, lines); gtkw_show_uri (tempfile, false); } bool ResourceConverterDialog::view_file_gui() { bool ok = !filename.empty(); gtk_label_set_text(GTK_LABEL(label_view_file_short), "View the file"); gui_okay(image_view_file_ok, label_view_file_ok, ok); return ok; } // Chapter detection pattern. void ResourceConverterDialog::on_chapter_pattern_entry_changed(GtkEditable * editable, gpointer user_data) { ((ResourceConverterDialog *) user_data)->on_chapter_pattern_entry(); } void ResourceConverterDialog::on_chapter_pattern_entry() { if (chapter_pattern_gui()) gui(); } bool ResourceConverterDialog::chapter_pattern_gui() { bool ok = true; chapter_pattern_prefix = gtk_entry_get_text(GTK_ENTRY(entry_chapter_pattern_1)); chapter_pattern_index = combobox_get_active_index(combo_chapter_pattern); chapter_pattern_suffix = gtk_entry_get_text(GTK_ENTRY(entry_chapter_pattern_2)); if (chapter_pattern_prefix.empty() && chapter_pattern_suffix.empty()) ok = false; gui_okay(image_chapter_pattern_ok, label_chapter_pattern_ok, ok); return ok; } // Verse detection pattern. void ResourceConverterDialog::on_verse_pattern_entry_changed(GtkEditable * editable, gpointer user_data) { ((ResourceConverterDialog *) user_data)->on_verse_pattern_entry(); } void ResourceConverterDialog::on_verse_pattern_entry() { if (verse_pattern_gui()) gui(); } bool ResourceConverterDialog::verse_pattern_gui() { bool ok = true; verse_pattern_prefix = gtk_entry_get_text(GTK_ENTRY(entry_verse_pattern_1)); verse_pattern_index = combobox_get_active_index(combo_verse_pattern); verse_pattern_suffix = gtk_entry_get_text(GTK_ENTRY(entry_verse_pattern_2)); if (verse_pattern_prefix.empty() && verse_pattern_suffix.empty()) ok = false; gui_okay(image_verse_pattern_ok, label_verse_pattern_ok, ok); return ok; } // Write anchors. void ResourceConverterDialog::on_write_anchors_button_clicked(GtkButton * button, gpointer user_data) { ((ResourceConverterDialog *) user_data)->on_write_anchors_button(); } void ResourceConverterDialog::on_write_anchors_button() { // Remove old anchors. resource_conversion_remove_anchors(lines); // Flags. anchors_written = true; // Do the conversion. switch (resource_conversion_type) { case rctChapterStartsAtPatternVerseOneStartsAtChapterVerseStartsAtPattern: { resource_conversion_insert_anchors(lines, chapter_pattern_prefix, chapter_pattern_index, chapter_pattern_suffix, verse_pattern_prefix, verse_pattern_index, verse_pattern_suffix); break; } case rctEnd: { break; } } // Write text to file. write_lines(gw_build_filename(workingdirectory, filename), lines); // Update gui. if (write_anchors_gui()) { gui(); } } bool ResourceConverterDialog::write_anchors_gui() { bool ok = true; if (!anchors_written) ok = false; gtk_label_set_text(GTK_LABEL(label_write_anchors_short), "Write anchors"); unsigned int anchor_count = 0; for (unsigned int i = 0; i < lines.size(); i++) { ustring s(lines[i]); size_t pos; do { pos = s.find(resource_conversion_anchor_prefix()); if (pos != string::npos) { anchor_count++; pos += 2; s.erase(0, pos); } } while (pos != string::npos); } if (anchor_count == 0) ok = false; ustring s = "Anchors in file: " + convert_to_string(anchor_count); gtk_label_set_text(GTK_LABEL(label_write_anchors_long), s.c_str()); gui_okay(image_write_anchors_ok, label_write_anchors_ok, ok); return ok; } bibledit-gtk-4.9/src/dialogresourceconverter.h000664 000766 000024 00000013646 12221507136 021765 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGRESOURCECONVERTER_H #define INCLUDED_DIALOGRESOURCECONVERTER_H #include #include "ustring.h" #include "types.h" #include "shortcuts.h" class ResourceConverterDialog { public: ResourceConverterDialog (const ustring& working_directory); ~ResourceConverterDialog (); int run (); ResourceConversionType resource_conversion_type; ustring chapter_pattern_prefix; unsigned int chapter_pattern_index; ustring chapter_pattern_suffix; ustring verse_pattern_prefix; unsigned int verse_pattern_index; ustring verse_pattern_suffix; private: // Dialog. GtkWidget *resourceconverterdialog; GtkWidget *dialog_vbox1; GtkWidget *label1; GtkWidget *table1; void build_table_and_type (Shortcuts& shortcuts); unsigned int table_attachment_offset; // Entry. void build_entry (GtkWidget *& image_ok, GtkWidget *& label_ok, GtkWidget *& label, const gchar * label_text, GtkWidget *& entry, const ustring& entry_text, GCallback handler); //static void on_entry_changed (GtkEditable *editable, gpointer user_data); //void on_entry (); // Button. void build_button (GtkWidget *& image_ok, GtkWidget *& label_ok, GtkWidget *& label_short, GtkWidget *& button, const gchar * button_text, Shortcuts& shortcuts, GCallback handler, GtkWidget *& label_long); // Checkbutton and button. void build_checkbutton_button (GtkWidget *& image_ok, GtkWidget *& label_ok, GtkWidget *& checkbutton, const gchar * checkbutton_text, GCallback checkbutton_handler, GtkWidget *& button, const gchar * button_text, GCallback button_handler, Shortcuts& shortcuts, GtkWidget *& label); // Textview. void build_textview (GtkWidget *& image_ok, GtkWidget *& label_ok, GtkWidget *& label, GtkWidget *& textview, gchar * text, GCallback handler); // Entry, combo, entry. void build_entry_combo_entry (GtkWidget *& image_ok, GtkWidget *& label_ok, GtkWidget *& label, GtkWidget *& label_entry_1, GtkWidget *& entry_1, GtkWidget *& label_combo, GtkWidget *& combo, GtkWidget *& label_entry_2, GtkWidget *& entry_2, GCallback entry_handler, Shortcuts& shortcuts); // Dialog action. GtkWidget *dialog_action_area1; GtkWidget *helpbutton; GtkWidget *cancelbutton; GtkWidget *okbutton; // Working directory and data. ustring workingdirectory; ustring filename; vector lines; // Resource conversion type. GtkWidget *image_type_ok; GtkWidget *label_type_ok; GtkWidget *label_type_short; GtkWidget *button_type; GtkWidget *label_type_long; static void on_type_button_clicked (GtkButton *button, gpointer user_data); void on_type_button (bool no_ask); bool type_gui (); // Open file. GtkWidget *image_open_file_ok; GtkWidget *label_open_file_ok; GtkWidget *label_open_file_short; GtkWidget *button_open_file; GtkWidget *label_open_file_long; static void on_open_file_button_clicked (GtkButton *button, gpointer user_data); void on_open_file_button (); bool open_file_gui (); // View file. GtkWidget *image_view_file_ok; GtkWidget *label_view_file_ok; GtkWidget *label_view_file_short; GtkWidget *button_view_file_html; GtkWidget *label_view_file_long; static void on_view_file_button_clicked (GtkButton *button, gpointer user_data); void on_view_file_button (); bool view_file_gui (); // Chapter detection pattern. GtkWidget *image_chapter_pattern_ok; GtkWidget *label_chapter_pattern_ok; GtkWidget *label_chapter_pattern; GtkWidget *label_chapter_pattern_1; GtkWidget *entry_chapter_pattern_1; GtkWidget *label_chapter_pattern_combo; GtkWidget *combo_chapter_pattern; GtkWidget *label_chapter_pattern_2; GtkWidget *entry_chapter_pattern_2; static void on_chapter_pattern_entry_changed (GtkEditable *editable, gpointer user_data); void on_chapter_pattern_entry (); bool chapter_pattern_gui (); // Verse detection pattern. GtkWidget *image_verse_pattern_ok; GtkWidget *label_verse_pattern_ok; GtkWidget *label_verse_pattern; GtkWidget *label_verse_pattern_1; GtkWidget *entry_verse_pattern_1; GtkWidget *label_verse_pattern_combo; GtkWidget *combo_verse_pattern; GtkWidget *label_verse_pattern_2; GtkWidget *entry_verse_pattern_2; static void on_verse_pattern_entry_changed (GtkEditable *editable, gpointer user_data); void on_verse_pattern_entry (); bool verse_pattern_gui (); // Write anchors. GtkWidget *image_write_anchors_ok; GtkWidget *label_write_anchors_ok; GtkWidget *label_write_anchors_short; GtkWidget *button_write_anchors; GtkWidget *label_write_anchors_long; static void on_write_anchors_button_clicked (GtkButton *button, gpointer user_data); void on_write_anchors_button (); bool write_anchors_gui (); bool anchors_written; // General gui. void gui (); void build_gui (Shortcuts& shortcuts); // Ok button. static void on_okbutton_clicked (GtkButton *button, gpointer user_data); void on_okbutton (); }; #endif bibledit-gtk-4.9/src/dialogrevert.cpp000664 000766 000024 00000034661 12221507143 020046 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogrevert.h" #include "help.h" #include "shortcuts.h" #include "settings.h" #include "combobox.h" #include "projectutils.h" #include "books.h" #include "utilities.h" #include "gwrappers.h" #include "gtkwrappers.h" #include "listview.h" #include "date_time_utils.h" #include "tiny_utilities.h" #include "directories.h" #include "unixwrappers.h" #include "compareutils.h" #include "snapshots.h" RevertDialog::RevertDialog(Reference * reference) { // Save variables. extern Settings *settings; project = settings->genconfig.project_get(); ProjectConfiguration *projectconfig = settings->projectconfig(project); language = projectconfig->language_get(); reference_chapter = reference->chapter; revisionloaded = false; branch = 0; // Build dialog. Shortcuts shortcuts(0); revertdialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(revertdialog), "Revert"); gtk_window_set_position(GTK_WINDOW(revertdialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_type_hint(GTK_WINDOW(revertdialog), GDK_WINDOW_TYPE_HINT_DIALOG); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG (revertdialog)); gtk_widget_show(dialog_vbox1); hbox1 = gtk_hbox_new(FALSE, 0); gtk_widget_show(hbox1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), hbox1, TRUE, TRUE, 0); vbox1 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox1); gtk_box_pack_start(GTK_BOX(hbox1), vbox1, TRUE, TRUE, 0); table1 = gtk_table_new(2, 2, FALSE); gtk_widget_show(table1); gtk_box_pack_start(GTK_BOX(vbox1), table1, FALSE, TRUE, 0); comboboxbook = gtk_combo_box_new_text(); gtk_widget_show(comboboxbook); gtk_table_attach(GTK_TABLE(table1), comboboxbook, 0, 1, 1, 2, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), 0, 0); comboboxchapter = gtk_combo_box_new_text(); gtk_widget_show(comboboxchapter); gtk_table_attach(GTK_TABLE(table1), comboboxchapter, 1, 2, 1, 2, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (GTK_FILL), 0, 0); labelbook = gtk_label_new("Book"); gtk_widget_show(labelbook); gtk_table_attach(GTK_TABLE(table1), labelbook, 0, 1, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(labelbook), 0, 0.5); shortcuts.label(labelbook); gtk_label_set_mnemonic_widget(GTK_LABEL(labelbook), comboboxbook); labelchapter = gtk_label_new("Chapter"); gtk_widget_show(labelchapter); gtk_table_attach(GTK_TABLE(table1), labelchapter, 1, 2, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(labelchapter), 0, 0.5); shortcuts.label(labelchapter); gtk_label_set_mnemonic_widget(GTK_LABEL(labelchapter), comboboxchapter); hseparator1 = gtk_hseparator_new(); gtk_widget_show(hseparator1); gtk_box_pack_start(GTK_BOX(vbox1), hseparator1, FALSE, TRUE, 0); labelrevisions = gtk_label_new("Revisions"); gtk_widget_show(labelrevisions); gtk_box_pack_start(GTK_BOX(vbox1), labelrevisions, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(labelrevisions), 0, 0.5); shortcuts.label(labelrevisions); scrolledwindowrevisions = gtk_scrolled_window_new(NULL, NULL); gtk_widget_show(scrolledwindowrevisions); gtk_box_pack_start(GTK_BOX(vbox1), scrolledwindowrevisions, TRUE, TRUE, 0); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindowrevisions), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scrolledwindowrevisions), GTK_SHADOW_IN); treeviewrevisions = gtk_tree_view_new(); gtk_widget_show(treeviewrevisions); gtk_container_add(GTK_CONTAINER(scrolledwindowrevisions), treeviewrevisions); gtk_tree_view_set_headers_visible(GTK_TREE_VIEW(treeviewrevisions), FALSE); gtk_label_set_mnemonic_widget(GTK_LABEL(labelrevisions), treeviewrevisions); // Create treeview related stuff. store = gtk_list_store_new(1, G_TYPE_STRING); gtk_tree_view_set_model(GTK_TREE_VIEW(treeviewrevisions), GTK_TREE_MODEL(store)); g_object_unref(store); GtkCellRenderer *renderer = gtk_cell_renderer_text_new(); column = gtk_tree_view_column_new_with_attributes("", renderer, "text", 0, NULL); gtk_tree_view_append_column(GTK_TREE_VIEW(treeviewrevisions), column); selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(treeviewrevisions)); gtk_tree_selection_set_mode(selection, GTK_SELECTION_SINGLE); vseparator1 = gtk_vseparator_new(); gtk_widget_show(vseparator1); gtk_box_pack_start(GTK_BOX(hbox1), vseparator1, FALSE, TRUE, 0); vbox2 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox2); gtk_box_pack_start(GTK_BOX(hbox1), vbox2, TRUE, TRUE, 0); GSList *radiobutton_current_group = NULL; radiobutton_current = gtk_radio_button_new_with_mnemonic (NULL, "View current version"); gtk_widget_show (radiobutton_current); gtk_box_pack_start (GTK_BOX (vbox2), radiobutton_current, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_current), radiobutton_current_group); radiobutton_current_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_current)); shortcuts.button(radiobutton_current); radiobutton_previous = gtk_radio_button_new_with_mnemonic (NULL, "View previous revision"); gtk_widget_show (radiobutton_previous); gtk_box_pack_start (GTK_BOX (vbox2), radiobutton_previous, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_previous), radiobutton_current_group); radiobutton_current_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_previous)); shortcuts.button(radiobutton_previous); radiobutton_changes = gtk_radio_button_new_with_mnemonic (NULL, "View changes if reverting to previous revision"); gtk_widget_show (radiobutton_changes); gtk_box_pack_start (GTK_BOX (vbox2), radiobutton_changes, FALSE, FALSE, 0); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_changes), radiobutton_current_group); radiobutton_current_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_changes)); shortcuts.button(radiobutton_changes); changes_gui = new DisplayChangesGui (vbox2); gtk_widget_set_size_request(changes_gui->textview, 450, 500); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(revertdialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(revertdialog, NULL, &shortcuts, "edit/revert"); cancelbutton1 = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton1); gtk_dialog_add_action_widget(GTK_DIALOG(revertdialog), cancelbutton1, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton1), true); okbutton1 = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton1); gtk_dialog_add_action_widget(GTK_DIALOG(revertdialog), okbutton1, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton1), true); shortcuts.stockbutton(cancelbutton1); shortcuts.stockbutton(okbutton1); shortcuts.process(); g_signal_connect((gpointer) comboboxbook, "changed", G_CALLBACK(on_comboboxbook_changed), gpointer(this)); g_signal_connect((gpointer) comboboxchapter, "changed", G_CALLBACK(on_comboboxchapter_changed), gpointer(this)); g_signal_connect((gpointer) treeviewrevisions, "row_activated", G_CALLBACK(on_treeviewrevisions_row_activated), gpointer(this)); g_signal_connect((gpointer) okbutton1, "clicked", G_CALLBACK(on_okbutton1_clicked), gpointer(this)); g_signal_connect ((gpointer) radiobutton_current, "toggled", G_CALLBACK (on_radiobutton_toggled), gpointer(this)); g_signal_connect ((gpointer) radiobutton_previous, "toggled", G_CALLBACK (on_radiobutton_toggled), gpointer(this)); g_signal_connect ((gpointer) radiobutton_changes, "toggled", G_CALLBACK (on_radiobutton_toggled), gpointer(this)); gtk_widget_grab_focus(okbutton1); gtk_widget_grab_default(okbutton1); // Load books. This also loads the chapters through the callback. vector < unsigned int >books = project_get_books(project); vector < ustring > localbooks; for (unsigned int i = 0; i < books.size(); i++) { localbooks.push_back(books_id_to_name(language, books[i])); } combobox_set_strings(comboboxbook, localbooks); combobox_set_string(comboboxbook, books_id_to_name(language, reference->book)); // By default view changes. gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (radiobutton_changes), true); } RevertDialog::~RevertDialog() { delete changes_gui; gtk_widget_destroy(revertdialog); } int RevertDialog::run() { return gtk_dialog_run(GTK_DIALOG(revertdialog)); } void RevertDialog::on_comboboxbook_changed(GtkComboBox * combobox, gpointer user_data) { ((RevertDialog *) user_data)->on_book_changed(); } void RevertDialog::on_book_changed() // Book changed: load chapters. { vector < unsigned int >chapters = project_get_chapters(project, book_get()); combobox_set_strings(comboboxchapter, chapters); if (reference_chapter >= 0) { combobox_set_string(comboboxchapter, reference_chapter); reference_chapter = -1; } else { if (!chapters.empty()) combobox_set_string(comboboxchapter, chapters[0]); } } void RevertDialog::on_comboboxchapter_changed(GtkComboBox * combobox, gpointer user_data) { ((RevertDialog *) user_data)->on_chapter_changed(); } void RevertDialog::on_chapter_changed() { // Load the revisions. listview_clear_strings(treeviewrevisions, store); ustring chapterdirectory = project_data_directory_chapter(project, book_get(), chapter_get()); ustring path = project_data_filename_chapter(project, book_get(), chapter_get(), false); path = gw_path_get_basename(path); seconds = snapshots_get_seconds (project, book_get(), chapter_get()); vector lines; for (unsigned int i = 0; i < seconds.size(); i++) { lines.push_back(date_time_seconds_human_readable(seconds[i], false)); } listview_set_strings(treeviewrevisions, store, lines); // Autosize columns. gtk_tree_view_columns_autosize(GTK_TREE_VIEW(treeviewrevisions)); // No revision loaded yet. revisionloaded = false; // Take action defined by radio button. on_radiobutton (NULL); } void RevertDialog::on_treeviewrevisions_row_activated(GtkTreeView * treeview, GtkTreePath * path, GtkTreeViewColumn * column, gpointer user_data) { ((RevertDialog *) user_data)->on_revision_activated(); } void RevertDialog::on_revision_activated() { // Get the second when the snapshot was taken. unsigned int second = 0; { ustring row = listview_get_active_string(treeviewrevisions); for (unsigned int i = 0; i < seconds.size(); i++) { if (row == date_time_seconds_human_readable(seconds[i], false)) { second = seconds[i]; break; } } } // Load the chapter's data. ustring data = snapshots_get_chapter (project, book_get(), chapter_get(), second); ParseLine parse (data); history_data = parse.lines; // Revision loaded. revisionloaded = true; // Display whatever the radiobutton indicates. on_radiobutton (NULL); } void RevertDialog::on_okbutton1_clicked(GtkButton * button, gpointer user_data) { ((RevertDialog *) user_data)->on_okbutton(); } void RevertDialog::on_okbutton() // On pressing Ok, if the user has selected a change, give warning we're going // to change the data, and if Yes is responded with, proceed with loading the change. { // If no revision loaded, bail out. if (!revisionloaded) return; // Get current and previous text. ustring current_text_filename = project_data_filename_chapter(project, book_get(), chapter_get(), false); ReadText rt (current_text_filename, true, false); // If no change, bail out. if (vector_strings_equal (rt.lines, history_data)) { gtkw_dialog_info (NULL, "No changes were applied"); return; } // Ask the user if he is sure to load the previous text. If not, bail out. int result = gtkw_dialog_question(revertdialog, "Are you sure you wish to revert this chapter to the previous revision?"); if (result != GTK_RESPONSE_YES) return; // Go back to previous revision. vector < ustring > lines2; for (unsigned int i = 0; i < history_data.size(); i++) if (!history_data[i].empty()) lines2.push_back(history_data[i]); CategorizeChapterVerse ccv(lines2); project_store_chapter(project, book_get(), ccv); } unsigned int RevertDialog::book_get() { ustring localbook = combobox_get_active_string(comboboxbook); unsigned int book = books_name_to_id(language, localbook); return book; } unsigned int RevertDialog::chapter_get() { ustring uchapter = combobox_get_active_string(comboboxchapter); unsigned int chapter = convert_to_int(uchapter); return chapter; } void RevertDialog::on_radiobutton_toggled (GtkToggleButton *togglebutton, gpointer user_data) { ((RevertDialog *) user_data)->on_radiobutton(togglebutton); } void RevertDialog::on_radiobutton (GtkToggleButton *togglebutton) { // Bail out if the toggle button gets inactive. if (togglebutton) if (!gtk_toggle_button_get_active (togglebutton)) return; // Clear view. changes_gui->clear (); // Load current text. ustring current_text_filename = project_data_filename_chapter(project, book_get(), chapter_get(), false); ReadText rt (current_text_filename, true, false); // View current text? if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_current))) { changes_gui->display (rt.lines); return; } // Bail out if no revison has been loaded yet. if (!revisionloaded) return; // View history? if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_previous))) { changes_gui->display (history_data); return; } // View comparison. vector comparison; compare_usfm_text (rt.lines, history_data, comparison, true); changes_gui->display (comparison); } bibledit-gtk-4.9/src/dialogrevert.h000664 000766 000024 00000005243 12221507130 017501 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGREVERT_H #define INCLUDED_DIALOGREVERT_H #include #include "ustring.h" #include "reference.h" #include "gui_display_changes.h" class RevertDialog { public: RevertDialog (Reference * reference); ~RevertDialog (); int run (); protected: GtkWidget *revertdialog; GtkWidget *dialog_vbox1; GtkWidget *hbox1; GtkWidget *vbox1; GtkWidget *table1; GtkWidget *comboboxbook; GtkWidget *comboboxchapter; GtkWidget *labelbook; GtkWidget *labelchapter; GtkWidget *hseparator1; GtkWidget *labelrevisions; GtkWidget *scrolledwindowrevisions; GtkWidget *treeviewrevisions; GtkWidget *vseparator1; GtkWidget *vbox2; GtkWidget *radiobutton_current; GtkWidget *radiobutton_previous; GtkWidget *radiobutton_changes; DisplayChangesGui * changes_gui; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton1; GtkWidget *okbutton1; private: static void on_comboboxbook_changed (GtkComboBox *combobox, gpointer user_data); void on_book_changed (); static void on_comboboxchapter_changed (GtkComboBox *combobox, gpointer user_data); void on_chapter_changed (); static void on_treeviewrevisions_row_activated (GtkTreeView *treeview, GtkTreePath *path, GtkTreeViewColumn *column, gpointer user_data); void on_revision_activated (); static void on_radiobutton_toggled (GtkToggleButton *togglebutton, gpointer user_data); void on_radiobutton (GtkToggleButton *togglebutton); static void on_okbutton1_clicked (GtkButton *button, gpointer user_data); void on_okbutton (); ustring project; ustring language; int reference_chapter; unsigned int book_get (); unsigned int chapter_get (); GtkListStore *store; GtkTreeViewColumn *column; GtkTreeSelection *selection; vector seconds; // Stores the seconds of the dates now loaded in the dialog. bool revisionloaded; unsigned int branch; vector history_data; }; #endif bibledit-gtk-4.9/src/dialogreviewanchors.cpp000664 000766 000024 00000030265 12221507145 021414 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "dialogreviewanchors.h" #include "listview.h" #include "keyboard.h" #include "help.h" #include #include "shortcuts.h" #include "books.h" ReviewAnchorsDialog::ReviewAnchorsDialog(vector < unsigned int >*books, vector < unsigned int >*chapters, vector < unsigned int >*verses, vector < unsigned int >*linenumbers) // Reviews anchors that would be placed in a file for the Resource Viewer. { // Initialize variables. mybooks = books; mychapters = chapters; myverses = verses; mylinenumbers = linenumbers; // Build dialog. Shortcuts shortcuts(0); reviewanchorsdialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(reviewanchorsdialog), "Review anchors"); gtk_window_set_position(GTK_WINDOW(reviewanchorsdialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(reviewanchorsdialog), TRUE); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(reviewanchorsdialog)); gtk_widget_show(dialog_vbox1); label1 = gtk_label_new("Review the anchors that will be placed.\nTo remove some anchors,\nselect them and press the Delete key."); gtk_widget_show(label1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), label1, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label1), 0, 0.5); scrolledwindow3 = gtk_scrolled_window_new(NULL, NULL); gtk_widget_show(scrolledwindow3); gtk_box_pack_start(GTK_BOX(dialog_vbox1), scrolledwindow3, TRUE, TRUE, 0); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow3), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scrolledwindow3), GTK_SHADOW_IN); treeview_anchors = gtk_tree_view_new(); gtk_widget_show(treeview_anchors); gtk_container_add(GTK_CONTAINER(scrolledwindow3), treeview_anchors); gtk_widget_set_size_request(treeview_anchors, -1, 350); hbox2 = gtk_hbox_new(FALSE, 0); gtk_widget_show(hbox2); gtk_box_pack_start(GTK_BOX(dialog_vbox1), hbox2, TRUE, TRUE, 0); button_spurious_anchors = gtk_button_new(); gtk_widget_show(button_spurious_anchors); gtk_box_pack_start(GTK_BOX(hbox2), button_spurious_anchors, FALSE, FALSE, 0); gtk_button_set_focus_on_click(GTK_BUTTON(button_spurious_anchors), FALSE); alignment1 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment1); gtk_container_add(GTK_CONTAINER(button_spurious_anchors), alignment1); hbox3 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox3); gtk_container_add(GTK_CONTAINER(alignment1), hbox3); image1 = gtk_image_new_from_stock("gtk-find", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image1); gtk_box_pack_start(GTK_BOX(hbox3), image1, FALSE, FALSE, 0); label3 = gtk_label_new_with_mnemonic("Select spurious anchors"); gtk_widget_show(label3); gtk_box_pack_start(GTK_BOX(hbox3), label3, FALSE, FALSE, 0); shortcuts.label(label3); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(reviewanchorsdialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(reviewanchorsdialog, NULL, &shortcuts, NULL); cancelbutton = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton); gtk_dialog_add_action_widget(GTK_DIALOG(reviewanchorsdialog), cancelbutton, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton), true); okbutton = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton); gtk_dialog_add_action_widget(GTK_DIALOG(reviewanchorsdialog), okbutton, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton), true); shortcuts.stockbutton(cancelbutton); shortcuts.stockbutton(okbutton); shortcuts.process(); // Storage, renderer, column and selection. store = gtk_list_store_new(5, G_TYPE_STRING, G_TYPE_INT, G_TYPE_INT, G_TYPE_INT, G_TYPE_INT); gtk_tree_view_set_model(GTK_TREE_VIEW(treeview_anchors), GTK_TREE_MODEL(store)); g_object_unref(store); GtkCellRenderer *renderer = gtk_cell_renderer_text_new(); column0 = gtk_tree_view_column_new_with_attributes("Book", renderer, "text", 0, NULL); gtk_tree_view_append_column(GTK_TREE_VIEW(treeview_anchors), column0); column1 = gtk_tree_view_column_new_with_attributes("Chapter", renderer, "text", 1, NULL); gtk_tree_view_append_column(GTK_TREE_VIEW(treeview_anchors), column1); column2 = gtk_tree_view_column_new_with_attributes("Verse", renderer, "text", 2, NULL); gtk_tree_view_append_column(GTK_TREE_VIEW(treeview_anchors), column2); column3 = gtk_tree_view_column_new_with_attributes("Line", renderer, "text", 3, NULL); gtk_tree_view_append_column(GTK_TREE_VIEW(treeview_anchors), column3); select = gtk_tree_view_get_selection(GTK_TREE_VIEW(treeview_anchors)); gtk_tree_selection_set_mode(select, GTK_SELECTION_MULTIPLE); // Fill the treeview with the items, sorted optionally GtkTreeIter iter; for (unsigned int i = 0; i < books->size(); i++) { gtk_list_store_append(store, &iter); gtk_list_store_set(store, &iter, 0, books_id_to_english(books->at(i)).c_str(), 1, chapters->at(i), 2, verses->at(i), 3, linenumbers->at(i), 4, books->at(i), -1); } g_signal_connect((gpointer) treeview_anchors, "key_press_event", G_CALLBACK(on_treeview_key_press_event), gpointer(this)); g_signal_connect((gpointer) button_spurious_anchors, "clicked", G_CALLBACK(on_button_spurious_anchors_clicked), gpointer(this)); g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(static_on_okbutton_clicked), gpointer(this)); gtk_widget_grab_focus(treeview_anchors); gtk_widget_grab_default(okbutton); } ReviewAnchorsDialog::~ReviewAnchorsDialog() { gtk_widget_destroy(reviewanchorsdialog); } int ReviewAnchorsDialog::run() { return gtk_dialog_run(GTK_DIALOG(reviewanchorsdialog)); } gboolean ReviewAnchorsDialog::on_treeview_key_press_event(GtkWidget * widget, GdkEventKey * event, gpointer user_data) { return ((ReviewAnchorsDialog *) user_data)->treeview_key_press_handler(event); } bool ReviewAnchorsDialog::treeview_key_press_handler(GdkEventKey * event) // Handles pressing keys in the treeview. { // Take action. if (event->keyval == GDK_KEY_Delete || event->keyval == GDK_KEY_KP_Delete) { // Delete each selected row. vector < GtkTreeIter > iters; gtk_tree_selection_selected_foreach(select, ReviewAnchorsDialog::on_collect_iters, gpointer(&iters)); for (unsigned int i = 0; i < iters.size(); i++) { GtkTreeIter iter = iters[i]; gtk_list_store_remove(store, &iter); } } // Handle other keypresses as usual. return false; } void ReviewAnchorsDialog::on_collect_iters(GtkTreeModel * model, GtkTreePath * path, GtkTreeIter * iter, gpointer data) { ((vector < GtkTreeIter > *)data)->push_back(*iter); } void ReviewAnchorsDialog::on_button_spurious_anchors_clicked(GtkButton * button, gpointer user_data) { ((ReviewAnchorsDialog *) user_data)->on_button_spurious_anchors(); } void ReviewAnchorsDialog::on_button_spurious_anchors() /* This selects spurious anchors. It does that in two passes. In the first pass, spurious anchors are defined as anchors for books that do not occur at least ten times in a row. These will be selected. In the second pass, spurious anchors are anchors that do not follow in sequence, looking at their book, chapter and verse. These will be selected too. */ { // Deselect everything. gtk_tree_selection_unselect_all(select); // Collect the books of all the anchors. vector < unsigned int >books; GtkTreeModel *model = gtk_tree_view_get_model(GTK_TREE_VIEW(treeview_anchors)); GtkTreeIter iter; gboolean valid; valid = gtk_tree_model_get_iter_first(model, &iter); while (valid) { gint book; gtk_tree_model_get(model, &iter, 4, &book, -1); books.push_back(book); valid = gtk_tree_model_iter_next(model, &iter); } // Get the genuine books. set < unsigned int >genuinebooks; { unsigned int previous_book = 0; unsigned int row_counter = 0; for (unsigned int i = 0; i < books.size(); i++) { if (books[i] != previous_book) { row_counter = 0; } row_counter++; if (row_counter >= 10) { genuinebooks.insert(books[i]); } previous_book = books[i]; } } // Select spurious books. valid = gtk_tree_model_get_iter_first(model, &iter); while (valid) { gint book; gtk_tree_model_get(model, &iter, 4, &book, -1); if (genuinebooks.find(book) == genuinebooks.end()) { gtk_tree_selection_select_iter(select, &iter); } valid = gtk_tree_model_iter_next(model, &iter); } // Second stage: Removing spurious anchors that are out of order. // Variables for the sequence. gint previousbook = 0; gint previouschapter = 0; gint previousverse = 0; // Go through the treeview, and consider the non-selected items. valid = gtk_tree_model_get_iter_first(model, &iter); while (valid) { if (!gtk_tree_selection_iter_is_selected(select, &iter)) { // Variables. bool checked = false; bool spurious = false; // Get book, chapter and verse from the treeview. gint book, chapter, verse; gtk_tree_model_get(model, &iter, 4, &book, 1, &chapter, 2, &verse, -1); // If the book differs from the previous one, accept that only in case // that both chapter and verse are 1. if (!checked) { if (book != previousbook) { if (chapter != 1) spurious = true; if (verse != 1) spurious = true; checked = true; } } // At this stage the reference has either been checked or the book is // the same. // If the chapter differs from the previous one, accept that only in // case that the verse is 1 and the chapter is one up. if (!checked) { if (chapter != previouschapter) { if (chapter != previouschapter + 1) spurious = true; if (verse != 1) spurious = true; checked = true; } } // The verse ought to be one up. if (!checked) { if (verse != previousverse + 1) spurious = true; checked = true; } // Select this anchor if it is a spurious one. if (spurious) { gtk_tree_selection_select_iter(select, &iter); } // Store reference for next iteration. if (!spurious) { previousbook = book; previouschapter = chapter; previousverse = verse; } } valid = gtk_tree_model_iter_next(model, &iter); } } void ReviewAnchorsDialog::static_on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((ReviewAnchorsDialog *) user_data)->on_okbutton_clicked(); } void ReviewAnchorsDialog::on_okbutton_clicked() { // Clear containers. mybooks->clear(); mychapters->clear(); myverses->clear(); mylinenumbers->clear(); // Get the model GtkTreeModel *model = gtk_tree_view_get_model(GTK_TREE_VIEW(treeview_anchors)); // Some variables needed. GtkTreeIter iter; gboolean valid; // Get the first iter in the store. valid = gtk_tree_model_get_iter_first(model, &iter); while (valid) { // Walk through the list, reading each row gint book, chapter, verse; gint linenumber; // Make sure you terminate calls to gtk_tree_model_get() with a '-1' value. gtk_tree_model_get(model, &iter, 1, &chapter, 2, &verse, 3, &linenumber, 4, &book, -1); // Store. mybooks->push_back(book); mychapters->push_back(chapter); myverses->push_back(verse); mylinenumbers->push_back(linenumber); // Go to next. valid = gtk_tree_model_iter_next(model, &iter); } } bibledit-gtk-4.9/src/dialogreviewanchors.h000664 000766 000024 00000004535 12221507136 021062 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGREVIEWANCHORS_H #define INCLUDED_DIALOGREVIEWANCHORS_H #include class ReviewAnchorsDialog { public: ReviewAnchorsDialog (vector * books, vector * chapters, vector * verses, vector * linenumbers); ~ReviewAnchorsDialog (); int run (); protected: GtkWidget *reviewanchorsdialog; GtkWidget *dialog_vbox1; GtkWidget *label1; GtkWidget *scrolledwindow3; GtkWidget *treeview_anchors; GtkWidget *hbox2; GtkWidget *button_spurious_anchors; GtkWidget *alignment1; GtkWidget *hbox3; GtkWidget *image1; GtkWidget *label3; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton; GtkWidget *okbutton; static gboolean on_treeview_key_press_event (GtkWidget *widget, GdkEventKey *event, gpointer user_data); bool treeview_key_press_handler (GdkEventKey *event); static void on_collect_iters (GtkTreeModel * model, GtkTreePath * path, GtkTreeIter * iter, gpointer data); static void on_button_spurious_anchors_clicked (GtkButton *button, gpointer user_data); void on_button_spurious_anchors (); static void static_on_okbutton_clicked (GtkButton * button, gpointer user_data); void on_okbutton_clicked (); GtkListStore *store; GtkTreeViewColumn *column0; // Book name GtkTreeViewColumn *column1; // Chapter GtkTreeViewColumn *column2; // Verse GtkTreeViewColumn *column3; // Line number GtkTreeSelection *select; vector * mybooks; vector * mychapters; vector * myverses; vector * mylinenumbers; }; #endif bibledit-gtk-4.9/src/dialogsearchspecial.cpp000644 000766 000024 00000055337 12460404402 021345 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "dialogsearchspecial.h" #include "dialogselectbooks.h" #include "completion.h" #include "combobox.h" #include #include "keyboard.h" #include "bible.h" #include "dialogarea.h" #include "projectutils.h" #include "help.h" #include "settings.h" #include "gui.h" #define RESULTS_LOAD "Load them in the references window" #define RESULTS_ADD "Add them to the ones already in the references window" #define RESULTS_REMOVE "Remove them from the ones already in the references window" #define RESULTS_SHARE "Share them with the ones already in the references window" SearchSpecialDialog::SearchSpecialDialog(int dummy) { extern Settings *settings; accel_group = gtk_accel_group_new(); searchspecialdialog = gtk_dialog_new(); gtk_widget_add_accelerator(searchspecialdialog, "activate_focus", accel_group, GDK_KEY_F, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE); gtk_window_set_title(GTK_WINDOW(searchspecialdialog), "Find"); gtk_window_set_position(GTK_WINDOW(searchspecialdialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(searchspecialdialog), TRUE); gtk_window_set_type_hint(GTK_WINDOW(searchspecialdialog), GDK_WINDOW_TYPE_HINT_DIALOG); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(searchspecialdialog)); gtk_widget_show(dialog_vbox1); vbox3 = gtk_vbox_new(FALSE, 4); gtk_widget_show(vbox3); gtk_box_pack_start(GTK_BOX(dialog_vbox1), vbox3, TRUE, TRUE, 0); gtk_container_set_border_width(GTK_CONTAINER(vbox3), 4); notebook_mode = gtk_notebook_new(); gtk_widget_show(notebook_mode); gtk_box_pack_start(GTK_BOX(vbox3), notebook_mode, TRUE, TRUE, 0); gtk_notebook_set_show_border(GTK_NOTEBOOK(notebook_mode), FALSE); label17 = gtk_label_new("Press Control-F for Advanced search"); gtk_widget_show(label17); gtk_container_add(GTK_CONTAINER(notebook_mode), label17); gtk_misc_set_alignment(GTK_MISC(label17), 0.5, 1); label19 = gtk_label_new("Basic"); gtk_widget_show(label19); gtk_notebook_set_tab_label(GTK_NOTEBOOK(notebook_mode), gtk_notebook_get_nth_page(GTK_NOTEBOOK(notebook_mode), 0), label19); label22 = gtk_label_new("Press Control-F for Basic search"); gtk_widget_show(label22); gtk_container_add(GTK_CONTAINER(notebook_mode), label22); label20 = gtk_label_new("Advanced"); gtk_widget_show(label20); gtk_notebook_set_tab_label(GTK_NOTEBOOK(notebook_mode), gtk_notebook_get_nth_page(GTK_NOTEBOOK(notebook_mode), 1), label20); hbox1 = gtk_hbox_new(FALSE, 4); gtk_widget_show(hbox1); gtk_box_pack_start(GTK_BOX(vbox3), hbox1, TRUE, TRUE, 0); label_word_entry = gtk_label_new_with_mnemonic("_Text to search for:"); gtk_widget_show(label_word_entry); gtk_box_pack_start(GTK_BOX(hbox1), label_word_entry, FALSE, FALSE, 0); word_entry = gtk_entry_new(); gtk_widget_show(word_entry); gtk_box_pack_start(GTK_BOX(hbox1), word_entry, TRUE, TRUE, 0); if (!settings->genconfig.text_editor_font_default_get()) { PangoFontDescription *font_desc = NULL; font_desc = pango_font_description_from_string(settings->genconfig.text_editor_font_name_get().c_str()); gtk_widget_modify_font(word_entry, font_desc); pango_font_description_free(font_desc); } // Set search text. gtk_entry_set_text(GTK_ENTRY(word_entry), settings->session.searchword.c_str()); // Activation of dialog. allow_activate = true; notebook_case_current = gtk_notebook_new(); gtk_widget_show(notebook_case_current); gtk_box_pack_start(GTK_BOX(vbox3), notebook_case_current, TRUE, TRUE, 0); gtk_widget_set_can_focus (notebook_case_current, false); gtk_notebook_set_show_tabs(GTK_NOTEBOOK(notebook_case_current), FALSE); gtk_notebook_set_show_border(GTK_NOTEBOOK(notebook_case_current), FALSE); vbox6 = gtk_vbox_new(FALSE, 4); gtk_widget_show(vbox6); gtk_container_add(GTK_CONTAINER(notebook_case_current), vbox6); checkbutton_casesensitive = gtk_check_button_new_with_mnemonic("C_ase sensitive"); gtk_widget_show(checkbutton_casesensitive); gtk_box_pack_start(GTK_BOX(vbox6), checkbutton_casesensitive, FALSE, FALSE, 0); // Set case sensitive. gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_casesensitive), settings->session.search_case_sensitive); checkbutton_current_book = gtk_check_button_new_with_mnemonic("Search in c_urrent book only"); gtk_widget_show(checkbutton_current_book); gtk_box_pack_start(GTK_BOX(vbox6), checkbutton_current_book, FALSE, FALSE, 0); // Set searching in current book. gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_current_book), settings->session.search_current_book); checkbutton_current_chapter = gtk_check_button_new_with_mnemonic("Search in current cha_pter only"); gtk_widget_show(checkbutton_current_chapter); gtk_box_pack_start(GTK_BOX(vbox6), checkbutton_current_chapter, FALSE, FALSE, 0); // Set searching in current chapter. gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_current_chapter), settings->session.search_current_chapter); label27 = gtk_label_new(""); gtk_widget_show(label27); gtk_notebook_set_tab_label(GTK_NOTEBOOK(notebook_case_current), gtk_notebook_get_nth_page(GTK_NOTEBOOK(notebook_case_current), 0), label27); empty_notebook_page = gtk_vbox_new(FALSE, 0); gtk_widget_show(empty_notebook_page); gtk_container_add(GTK_CONTAINER(notebook_case_current), empty_notebook_page); label28 = gtk_label_new(""); gtk_widget_show(label28); gtk_notebook_set_tab_label(GTK_NOTEBOOK(notebook_case_current), gtk_notebook_get_nth_page(GTK_NOTEBOOK(notebook_case_current), 1), label28); empty_notebook_page = gtk_vbox_new(FALSE, 0); gtk_widget_show(empty_notebook_page); gtk_container_add(GTK_CONTAINER(notebook_case_current), empty_notebook_page); label29 = gtk_label_new(""); gtk_widget_show(label29); gtk_notebook_set_tab_label(GTK_NOTEBOOK(notebook_case_current), gtk_notebook_get_nth_page(GTK_NOTEBOOK(notebook_case_current), 2), label29); empty_notebook_page = gtk_vbox_new(FALSE, 0); gtk_widget_show(empty_notebook_page); gtk_container_add(GTK_CONTAINER(notebook_case_current), empty_notebook_page); label30 = gtk_label_new(""); gtk_widget_show(label30); gtk_notebook_set_tab_label(GTK_NOTEBOOK(notebook_case_current), gtk_notebook_get_nth_page(GTK_NOTEBOOK(notebook_case_current), 3), label30); notebook_advanced = gtk_notebook_new(); gtk_widget_show(notebook_advanced); gtk_box_pack_start(GTK_BOX(vbox3), notebook_advanced, TRUE, TRUE, 0); gtk_notebook_set_show_border(GTK_NOTEBOOK(notebook_advanced), FALSE); // No tabs visible. gtk_notebook_set_show_tabs(GTK_NOTEBOOK(notebook_advanced), FALSE); vbox5 = gtk_vbox_new(FALSE, 4); gtk_widget_show(vbox5); gtk_container_add(GTK_CONTAINER(notebook_advanced), vbox5); checkbutton_glob = gtk_check_button_new_with_mnemonic("_Interprete * and ? as wildcards"); gtk_widget_show(checkbutton_glob); gtk_box_pack_start(GTK_BOX(vbox5), checkbutton_glob, FALSE, FALSE, 0); // Set active or not. gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_glob), settings->session.search_globbing); checkbutton_start_word = gtk_check_button_new_with_mnemonic("Match _start of word"); gtk_widget_show(checkbutton_start_word); gtk_box_pack_start(GTK_BOX(vbox5), checkbutton_start_word, FALSE, FALSE, 0); // Set active or not. gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_start_word), settings->session.search_start_word_match); checkbutton_end_word = gtk_check_button_new_with_mnemonic("Match _end of word"); gtk_widget_show(checkbutton_end_word); gtk_box_pack_start(GTK_BOX(vbox5), checkbutton_end_word, FALSE, FALSE, 0); // Set active or not. gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_end_word), settings->session.search_end_word_match); table2 = gtk_table_new(2, 2, FALSE); gtk_widget_show(table2); gtk_box_pack_start(GTK_BOX(vbox5), table2, TRUE, TRUE, 2); button_books = gtk_button_new(); gtk_widget_show(button_books); gtk_table_attach(GTK_TABLE(table2), button_books, 0, 1, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); alignment1 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment1); gtk_container_add(GTK_CONTAINER(button_books), alignment1); hbox3 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox3); gtk_container_add(GTK_CONTAINER(alignment1), hbox3); image1 = gtk_image_new_from_stock("gtk-properties", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image1); gtk_box_pack_start(GTK_BOX(hbox3), image1, FALSE, FALSE, 0); label13 = gtk_label_new_with_mnemonic("Select _books"); gtk_widget_show(label13); gtk_box_pack_start(GTK_BOX(hbox3), label13, FALSE, FALSE, 0); button_area = gtk_button_new(); gtk_widget_show(button_area); gtk_table_attach(GTK_TABLE(table2), button_area, 0, 1, 1, 2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); alignment2 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment2); gtk_container_add(GTK_CONTAINER(button_area), alignment2); hbox5 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox5); gtk_container_add(GTK_CONTAINER(alignment2), hbox5); image2 = gtk_image_new_from_stock("gtk-zoom-in", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image2); gtk_box_pack_start(GTK_BOX(hbox5), image2, FALSE, FALSE, 0); label39 = gtk_label_new_with_mnemonic("Se_lect parts of text"); gtk_widget_show(label39); gtk_box_pack_start(GTK_BOX(hbox5), label39, FALSE, FALSE, 0); label_book = gtk_label_new(""); gtk_widget_show(label_book); gtk_table_attach(GTK_TABLE(table2), label_book, 1, 2, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 2, 0); gtk_misc_set_alignment(GTK_MISC(label_book), 0, 0.5); label_area = gtk_label_new(""); gtk_widget_show(label_area); gtk_table_attach(GTK_TABLE(table2), label_area, 1, 2, 1, 2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 2, 0); gtk_misc_set_alignment(GTK_MISC(label_area), 0, 0.5); empty_notebook_page = gtk_vbox_new(FALSE, 0); gtk_widget_show(empty_notebook_page); gtk_container_add(GTK_CONTAINER(notebook_advanced), empty_notebook_page); label32 = gtk_label_new(""); gtk_widget_show(label32); gtk_notebook_set_tab_label(GTK_NOTEBOOK(notebook_advanced), gtk_notebook_get_nth_page(GTK_NOTEBOOK(notebook_advanced), 1), label32); notebook_results = gtk_notebook_new(); gtk_widget_show(notebook_results); gtk_box_pack_start(GTK_BOX(vbox3), notebook_results, TRUE, TRUE, 0); gtk_widget_set_can_focus (notebook_results, false); gtk_notebook_set_show_tabs(GTK_NOTEBOOK(notebook_results), FALSE); gtk_notebook_set_show_border(GTK_NOTEBOOK(notebook_results), FALSE); vbox7 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox7); gtk_container_add(GTK_CONTAINER(notebook_results), vbox7); label14 = gtk_label_new_with_mnemonic("What to do with the search _results"); gtk_widget_show(label14); gtk_box_pack_start(GTK_BOX(vbox7), label14, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label14), 0, 0.5); combobox_results = gtk_combo_box_new_text(); gtk_widget_show(combobox_results); gtk_box_pack_start(GTK_BOX(vbox7), combobox_results, TRUE, TRUE, 0); gtk_combo_box_append_text(GTK_COMBO_BOX(combobox_results), RESULTS_LOAD); gtk_combo_box_append_text(GTK_COMBO_BOX(combobox_results), RESULTS_ADD); gtk_combo_box_append_text(GTK_COMBO_BOX(combobox_results), RESULTS_REMOVE); gtk_combo_box_append_text(GTK_COMBO_BOX(combobox_results), RESULTS_SHARE); // Set selected value in combobox. int index = 0; switch (settings->session.searchresultstype) { case sstLoad: index = 0; break; case sstAdd: index = 1; break; case sstSubtract: index = 2; break; case sstShare: index = 3; break; } gtk_combo_box_set_active(GTK_COMBO_BOX(combobox_results), index); label35 = gtk_label_new(""); gtk_widget_show(label35); gtk_notebook_set_tab_label(GTK_NOTEBOOK(notebook_results), gtk_notebook_get_nth_page(GTK_NOTEBOOK(notebook_results), 0), label35); empty_notebook_page = gtk_vbox_new(FALSE, 0); gtk_widget_show(empty_notebook_page); gtk_container_add(GTK_CONTAINER(notebook_results), empty_notebook_page); label36 = gtk_label_new(""); gtk_widget_show(label36); gtk_notebook_set_tab_label(GTK_NOTEBOOK(notebook_results), gtk_notebook_get_nth_page(GTK_NOTEBOOK(notebook_results), 1), label36); empty_notebook_page = gtk_vbox_new(FALSE, 0); gtk_widget_show(empty_notebook_page); gtk_container_add(GTK_CONTAINER(notebook_results), empty_notebook_page); label37 = gtk_label_new(""); gtk_widget_show(label37); gtk_notebook_set_tab_label(GTK_NOTEBOOK(notebook_results), gtk_notebook_get_nth_page(GTK_NOTEBOOK(notebook_results), 2), label37); empty_notebook_page = gtk_vbox_new(FALSE, 0); gtk_widget_show(empty_notebook_page); gtk_container_add(GTK_CONTAINER(notebook_results), empty_notebook_page); label38 = gtk_label_new(""); gtk_widget_show(label38); gtk_notebook_set_tab_label(GTK_NOTEBOOK(notebook_results), gtk_notebook_get_nth_page(GTK_NOTEBOOK(notebook_results), 3), label38); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(searchspecialdialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(searchspecialdialog, NULL, NULL, NULL); cancelbutton = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton); gtk_dialog_add_action_widget(GTK_DIALOG(searchspecialdialog), cancelbutton, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton), true); findbutton = gtk_button_new_from_stock("gtk-find"); gtk_widget_show(findbutton); gtk_dialog_add_action_widget(GTK_DIALOG(searchspecialdialog), findbutton, GTK_RESPONSE_OK); gtk_widget_set_sensitive(findbutton, FALSE); gtk_widget_set_can_default (GTK_WIDGET (findbutton), true); g_signal_connect((gpointer) searchspecialdialog, "activate_focus", G_CALLBACK(on_searchspecialdialog_activate_focus), gpointer(this)); g_signal_connect((gpointer) word_entry, "changed", G_CALLBACK(on_word_entry_changed), gpointer(this)); g_signal_connect((gpointer) word_entry, "activate", G_CALLBACK(on_word_entry_activate), gpointer(this)); g_signal_connect((gpointer) checkbutton_current_book, "toggled", G_CALLBACK(on_checkbutton_current_book_toggled), gpointer(this)); g_signal_connect((gpointer) button_books, "clicked", G_CALLBACK(on_button_books_clicked), gpointer(this)); g_signal_connect((gpointer) button_area, "clicked", G_CALLBACK(on_button_area_clicked), gpointer(this)); g_signal_connect((gpointer) findbutton, "clicked", G_CALLBACK(on_findbutton_clicked), gpointer(this)); g_signal_connect_after((gpointer) notebook_mode, "switch_page", G_CALLBACK(on_notebook_mode_switch_page), gpointer(this)); gtk_label_set_mnemonic_widget(GTK_LABEL(label_word_entry), word_entry); gtk_label_set_mnemonic_widget(GTK_LABEL(label14), combobox_results); gtk_widget_grab_focus(word_entry); gtk_widget_grab_default(findbutton); gtk_window_add_accel_group(GTK_WINDOW(searchspecialdialog), accel_group); // Entry completion completion_setup(word_entry, cpSearch); set_gui(); // Set dialogbox to either simple or advanced search or .... if (settings->session.search_page == 0) { on_mode_change(settings->session.search_page); } else { for (int i = 0; i < settings->session.search_page; i++) on_control_f(); } // Present the window after a while because other windows created may take away the focus. dialogpresenter = new DialogPresenter(searchspecialdialog); } SearchSpecialDialog::~SearchSpecialDialog() { delete dialogpresenter; gtk_widget_destroy(searchspecialdialog); } int SearchSpecialDialog::run() { return gtk_dialog_run(GTK_DIALOG(searchspecialdialog)); } void SearchSpecialDialog::on_word_entry_changed(GtkEditable * editable, gpointer user_data) { ((SearchSpecialDialog *) user_data)->set_gui(); } void SearchSpecialDialog::set_gui() { extern Settings *settings; bool findbuttonsensitive; string searchword = gtk_entry_get_text(GTK_ENTRY(word_entry)); findbuttonsensitive = (searchword.size() > 0); gtk_widget_set_sensitive(findbutton, findbuttonsensitive); bool searchcurrentbook = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_current_book)); gtk_widget_set_sensitive(button_books, !searchcurrentbook); if (!searchcurrentbook) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_current_chapter), false); gtk_widget_set_sensitive(checkbutton_current_chapter, searchcurrentbook); ustring message = gui_book_selection_information(settings->genconfig.project_get()); gtk_label_set_text(GTK_LABEL(label_book), message.c_str()); gtk_label_set_text(GTK_LABEL(label_area), area_information().c_str()); } void SearchSpecialDialog::on_findbutton_clicked(GtkButton * button, gpointer user_data) { ((SearchSpecialDialog *) user_data)->on_find(); } void SearchSpecialDialog::on_find() { extern Settings *settings; settings->session.searchword = gtk_entry_get_text(GTK_ENTRY(word_entry)); settings->session.search_case_sensitive = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_casesensitive)); settings->session.search_current_book = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_current_book)); settings->session.search_current_chapter = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_current_chapter)); settings->session.search_globbing = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_glob)); settings->session.search_start_word_match = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_start_word)); settings->session.search_end_word_match = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_end_word)); settings->session.search_page = gtk_notebook_get_current_page(GTK_NOTEBOOK(notebook_mode)); ustring type = combobox_get_active_string(combobox_results); if (type == RESULTS_LOAD) settings->session.searchresultstype = sstLoad; if (type == RESULTS_ADD) settings->session.searchresultstype = sstAdd; if (type == RESULTS_REMOVE) settings->session.searchresultstype = sstSubtract; if (type == RESULTS_SHARE) settings->session.searchresultstype = sstShare; switch (settings->session.searchresultstype) { case sstLoad: settings->session.highlights.clear(); // Fall through, all the way to the bottom. case sstAdd: case sstSubtract: case sstShare: { SessionHighlights sessionhighlights(settings->session.searchword, settings->session.search_case_sensitive, settings->session.search_globbing, settings->session.search_start_word_match, settings->session.search_end_word_match, settings->session.area_type, settings->session.area_id, settings->session.area_intro, settings->session.area_heading, settings->session.area_chapter, settings->session.area_study, settings->session.area_notes, settings->session.area_xref, settings->session.area_verse); settings->session.highlights.push_back(sessionhighlights); } } completion_finish(word_entry, cpSearch); } void SearchSpecialDialog::on_button_books_clicked(GtkButton * button, gpointer user_data) { ((SearchSpecialDialog *) user_data)->on_books(); } void SearchSpecialDialog::on_books() { extern Settings *settings; SelectBooksDialog dialog(false); dialog.selection_set(settings->session.selected_books); if (dialog.run() == GTK_RESPONSE_OK) { settings->session.selected_books = dialog.selectionset; } set_gui(); } void SearchSpecialDialog::on_checkbutton_current_book_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((SearchSpecialDialog *) user_data)->set_gui(); } void SearchSpecialDialog::on_button_area_clicked(GtkButton * button, gpointer user_data) { ((SearchSpecialDialog *) user_data)->on_button_area(); } void SearchSpecialDialog::on_button_area() { AreaDialog dialog(0); dialog.run(); set_gui(); } void SearchSpecialDialog::on_searchspecialdialog_activate_focus(GtkWindow * window, gpointer user_data) { ((SearchSpecialDialog *) user_data)->on_control_f(); } void SearchSpecialDialog::on_control_f() { allow_activate = false; g_timeout_add(1, GSourceFunc(on_timeout), gpointer(this)); int page = gtk_notebook_get_current_page(GTK_NOTEBOOK(notebook_mode)); page++; if (page > 1) page = 0; gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook_mode), page); gtk_widget_grab_focus(word_entry); } void SearchSpecialDialog::on_notebook_mode_switch_page(GtkNotebook * notebook, GtkNotebookPage * page, guint page_num, gpointer user_data) { ((SearchSpecialDialog *) user_data)->on_mode_change(page_num); } void SearchSpecialDialog::on_mode_change(guint page_num) // When the search mode changes (Simple / Advanced / BibleTime / ...), then // update the other notebooks too. { // Show right page for casesensitive / search in current book if (page_num == 2) gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook_case_current), 1); else gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook_case_current), 0); // Show right page for advanced notebook. switch (page_num) { case 0: gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook_advanced), 1); break; case 1: gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook_advanced), 0); break; case 2: gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook_advanced), 2); break; } // Show right page for what to do with results. if (page_num == 0) gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook_results), 1); else gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook_results), 0); // Update rest of gui. set_gui(); } void SearchSpecialDialog::on_word_entry_activate(GtkEntry * entry, gpointer user_data) { ((SearchSpecialDialog *) user_data)->on_activate(); } void SearchSpecialDialog::on_activate() { // If the find button is disabled, bail out. if (!gtk_widget_get_sensitive (findbutton)) return; if (allow_activate) { on_find(); gtk_dialog_response(GTK_DIALOG(searchspecialdialog), GTK_RESPONSE_OK); } } // MAP: I believe these two routines can be eliminated. Just set the // bool on on_timeout is set up. bool SearchSpecialDialog::on_timeout(gpointer data) { ((SearchSpecialDialog *) data)->timeout(); return false; } void SearchSpecialDialog::timeout() { allow_activate = true; } bibledit-gtk-4.9/src/dialogsearchspecial.h000664 000766 000024 00000006552 12221507143 021010 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGSEARCHSPECIAL_H #define INCLUDED_DIALOGSEARCHSPECIAL_H #include #include "screen.h" class SearchSpecialDialog { public: SearchSpecialDialog(int dummy); ~ SearchSpecialDialog(); int run(); protected: GtkWidget *searchspecialdialog; GtkWidget *dialog_vbox1; GtkWidget *vbox3; GtkWidget *notebook_mode; GtkWidget *label17; GtkWidget *label19; GtkWidget *label22; GtkWidget *label20; GtkWidget *hbox1; GtkWidget *label_word_entry; GtkWidget *word_entry; GtkWidget *notebook_case_current; GtkWidget *vbox6; GtkWidget *checkbutton_casesensitive; GtkWidget *checkbutton_current_book; GtkWidget *checkbutton_current_chapter; GtkWidget *label27; GtkWidget *empty_notebook_page; GtkWidget *label28; GtkWidget *label29; GtkWidget *label30; GtkWidget *notebook_advanced; GtkWidget *vbox5; GtkWidget *checkbutton_glob; GtkWidget *checkbutton_start_word; GtkWidget *checkbutton_end_word; GtkWidget *table2; GtkWidget *button_books; GtkWidget *alignment1; GtkWidget *hbox3; GtkWidget *image1; GtkWidget *label13; GtkWidget *button_area; GtkWidget *alignment2; GtkWidget *hbox5; GtkWidget *image2; GtkWidget *label39; GtkWidget *label_book; GtkWidget *label_area; GtkWidget *label31; GtkWidget *label32; GtkWidget *notebook_results; GtkWidget *vbox7; GtkWidget *label14; GtkWidget *combobox_results; GtkWidget *label35; GtkWidget *label36; GtkWidget *label37; GtkWidget *label38; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton; GtkWidget *findbutton; GtkAccelGroup *accel_group; private: static void on_word_entry_activate(GtkEntry *entry, gpointer user_data); void on_activate(); static bool on_timeout(gpointer data); void timeout(); bool allow_activate; static void on_word_entry_changed(GtkEditable * editable, gpointer user_data); void set_gui(); static void on_findbutton_clicked(GtkButton * button, gpointer user_data); void on_find(); static void on_button_books_clicked(GtkButton *button, gpointer user_data); void on_books(); static void on_checkbutton_current_book_toggled(GtkToggleButton *togglebutton, gpointer user_data); static void on_button_area_clicked(GtkButton *button, gpointer user_data); void on_button_area(); static void on_searchspecialdialog_activate_focus(GtkWindow *window, gpointer user_data); void on_control_f(); static void on_notebook_mode_switch_page(GtkNotebook *notebook, GtkNotebookPage *page, guint page_num, gpointer user_data); void on_mode_change(guint page_num); DialogPresenter * dialogpresenter; }; #endif bibledit-gtk-4.9/src/dialogselectbooks.cpp000664 000766 000024 00000055456 12221507151 021060 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogselectbooks.h" #include "utilities.h" #include "bible.h" #include "dialogselectchapters.h" #include "projectutils.h" #include "books.h" #include "scriptureportions.h" #include "settings.h" #include "help.h" #include "shortcuts.h" #include "listview.h" #include #include "gwrappers.h" #include "screen.h" SelectBooksDialog::SelectBooksDialog(bool showportions) /* This dialog selects books. This function takes the book from the project that is now open, and the language of that project. It then loads the books. bookset: Indicator for the caller's relevant books. */ { // Initialize variables. extern Settings *settings; myproject = settings->genconfig.project_get(); ProjectConfiguration *projectconfig = settings->projectconfig(myproject); mylanguage = projectconfig->language_get(); myselectables = project_get_books(myproject); myshowportions = showportions; // Build dialog. Shortcuts shortcuts(0); selectbooksdialog = gtk_dialog_new(); ustring title("Select books"); if (showportions) title.append(" and portions"); gtk_window_set_title(GTK_WINDOW(selectbooksdialog), title.c_str()); gtk_window_set_position(GTK_WINDOW(selectbooksdialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(selectbooksdialog), TRUE); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(selectbooksdialog)); gtk_widget_show(dialog_vbox1); vbox1 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), vbox1, TRUE, TRUE, 0); hbox11 = gtk_hbox_new(FALSE, 0); gtk_widget_show(hbox11); gtk_box_pack_start(GTK_BOX(vbox1), hbox11, TRUE, TRUE, 0); vbox2 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox2); gtk_box_pack_start(GTK_BOX(hbox11), vbox2, TRUE, TRUE, 0); labelbooks = gtk_label_new("Books"); gtk_widget_show(labelbooks); gtk_box_pack_start(GTK_BOX(vbox2), labelbooks, FALSE, FALSE, 0); shortcuts.label(labelbooks); scrolledwindowbooks = gtk_scrolled_window_new(NULL, NULL); gtk_widget_show(scrolledwindowbooks); gtk_box_pack_start(GTK_BOX(vbox2), scrolledwindowbooks, TRUE, TRUE, 0); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindowbooks), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scrolledwindowbooks), GTK_SHADOW_IN); treeviewbooks = gtk_tree_view_new(); gtk_widget_show(treeviewbooks); gtk_container_add(GTK_CONTAINER(scrolledwindowbooks), treeviewbooks); gtk_tree_view_set_headers_visible(GTK_TREE_VIEW(treeviewbooks), FALSE); vbox3 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox3); gtk_box_pack_start(GTK_BOX(hbox11), vbox3, TRUE, TRUE, 0); if (myshowportions) { labelportions = gtk_label_new("Portions"); gtk_widget_show(labelportions); gtk_box_pack_start(GTK_BOX(vbox3), labelportions, FALSE, FALSE, 0); shortcuts.label(labelportions); scrolledwindowportions = gtk_scrolled_window_new(NULL, NULL); gtk_widget_show(scrolledwindowportions); gtk_box_pack_start(GTK_BOX(vbox3), scrolledwindowportions, TRUE, TRUE, 0); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindowportions), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scrolledwindowportions), GTK_SHADOW_IN); treeviewportions = gtk_tree_view_new(); gtk_widget_show(treeviewportions); gtk_container_add(GTK_CONTAINER(scrolledwindowportions), treeviewportions); gtk_tree_view_set_headers_visible(GTK_TREE_VIEW(treeviewportions), FALSE); } table1 = gtk_table_new(2, 3, FALSE); gtk_widget_show(table1); gtk_box_pack_start(GTK_BOX(vbox1), table1, FALSE, FALSE, 0); nobutton = gtk_button_new(); gtk_widget_show(nobutton); gtk_table_attach(GTK_TABLE(table1), nobutton, 0, 1, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); alignment1 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment1); gtk_container_add(GTK_CONTAINER(nobutton), alignment1); hbox4 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox4); gtk_container_add(GTK_CONTAINER(alignment1), hbox4); image1 = gtk_image_new_from_stock("gtk-clear", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image1); gtk_box_pack_start(GTK_BOX(hbox4), image1, FALSE, FALSE, 0); label6 = gtk_label_new_with_mnemonic("No books"); gtk_widget_show(label6); gtk_box_pack_start(GTK_BOX(hbox4), label6, FALSE, FALSE, 0); shortcuts.label(label6); otbutton = gtk_button_new(); gtk_widget_show(otbutton); gtk_table_attach(GTK_TABLE(table1), otbutton, 1, 2, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); alignment2 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment2); gtk_container_add(GTK_CONTAINER(otbutton), alignment2); hbox5 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox5); gtk_container_add(GTK_CONTAINER(alignment2), hbox5); image2 = gtk_image_new_from_stock("gtk-goto-first", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image2); gtk_box_pack_start(GTK_BOX(hbox5), image2, FALSE, FALSE, 0); label7 = gtk_label_new_with_mnemonic("Old Testament"); gtk_widget_show(label7); gtk_box_pack_start(GTK_BOX(hbox5), label7, FALSE, FALSE, 0); shortcuts.label(label7); ntbutton = gtk_button_new(); gtk_widget_show(ntbutton); gtk_table_attach(GTK_TABLE(table1), ntbutton, 2, 3, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); alignment3 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment3); gtk_container_add(GTK_CONTAINER(ntbutton), alignment3); hbox6 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox6); gtk_container_add(GTK_CONTAINER(alignment3), hbox6); image3 = gtk_image_new_from_stock("gtk-goto-last", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image3); gtk_box_pack_start(GTK_BOX(hbox6), image3, FALSE, FALSE, 0); label8 = gtk_label_new_with_mnemonic("New Testament"); gtk_widget_show(label8); gtk_box_pack_start(GTK_BOX(hbox6), label8, FALSE, FALSE, 0); shortcuts.label(label8); otherbutton = gtk_button_new(); gtk_widget_show(otherbutton); gtk_table_attach(GTK_TABLE(table1), otherbutton, 0, 1, 1, 2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); alignment6 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment6); gtk_container_add(GTK_CONTAINER(otherbutton), alignment6); hbox9 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox9); gtk_container_add(GTK_CONTAINER(alignment6), hbox9); image6 = gtk_image_new_from_stock("gtk-dialog-warning", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image6); gtk_box_pack_start(GTK_BOX(hbox9), image6, FALSE, FALSE, 0); label11 = gtk_label_new_with_mnemonic("Other books"); gtk_widget_show(label11); gtk_box_pack_start(GTK_BOX(hbox9), label11, FALSE, FALSE, 0); shortcuts.label(label11); allbutton = gtk_button_new(); gtk_widget_show(allbutton); gtk_table_attach(GTK_TABLE(table1), allbutton, 1, 2, 1, 2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); alignment4 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment4); gtk_container_add(GTK_CONTAINER(allbutton), alignment4); hbox7 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox7); gtk_container_add(GTK_CONTAINER(alignment4), hbox7); image4 = gtk_image_new_from_stock("gtk-add", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image4); gtk_box_pack_start(GTK_BOX(hbox7), image4, FALSE, FALSE, 0); label9 = gtk_label_new_with_mnemonic("All books"); gtk_widget_show(label9); gtk_box_pack_start(GTK_BOX(hbox7), label9, FALSE, FALSE, 0); shortcuts.label(label9); currentbutton = gtk_button_new(); gtk_widget_show(currentbutton); gtk_table_attach(GTK_TABLE(table1), currentbutton, 2, 3, 1, 2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); alignment5 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment5); gtk_container_add(GTK_CONTAINER(currentbutton), alignment5); hbox8 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox8); gtk_container_add(GTK_CONTAINER(alignment5), hbox8); image5 = gtk_image_new_from_stock("gtk-properties", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image5); gtk_box_pack_start(GTK_BOX(hbox8), image5, FALSE, FALSE, 0); label10 = gtk_label_new_with_mnemonic("Current book"); gtk_widget_show(label10); gtk_box_pack_start(GTK_BOX(hbox8), label10, FALSE, FALSE, 0); shortcuts.label(label10); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(selectbooksdialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); const gchar *helpfile; if (showportions) { helpfile = "file/print/portion"; } else { helpfile = "file/print/selection"; } new InDialogHelp(selectbooksdialog, NULL, &shortcuts, helpfile); cancelbutton = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton); gtk_dialog_add_action_widget(GTK_DIALOG(selectbooksdialog), cancelbutton, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton), true); shortcuts.stockbutton(cancelbutton); okbutton = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton); gtk_dialog_add_action_widget(GTK_DIALOG(selectbooksdialog), okbutton, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton), true); shortcuts.stockbutton(okbutton); shortcuts.process(); g_signal_connect((gpointer) treeviewbooks, "key_press_event", G_CALLBACK(on_treeviewbooks_key_press_event), gpointer(this)); if (myshowportions) { g_signal_connect((gpointer) treeviewportions, "row_activated", G_CALLBACK(on_treeviewportions_row_activated), gpointer(this)); } g_signal_connect((gpointer) nobutton, "clicked", G_CALLBACK(on_nobutton_clicked), gpointer(this)); g_signal_connect((gpointer) otbutton, "clicked", G_CALLBACK(on_otbutton_clicked), gpointer(this)); g_signal_connect((gpointer) ntbutton, "clicked", G_CALLBACK(on_ntbutton_clicked), gpointer(this)); g_signal_connect((gpointer) otherbutton, "clicked", G_CALLBACK(on_otherbutton_clicked), gpointer(this)); g_signal_connect((gpointer) allbutton, "clicked", G_CALLBACK(on_allbutton_clicked), gpointer(this)); g_signal_connect((gpointer) currentbutton, "clicked", G_CALLBACK(on_currentbutton_clicked), gpointer(this)); g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(on_okbutton_clicked), gpointer(this)); gtk_widget_grab_focus(treeviewbooks); gtk_widget_grab_default(okbutton); gtk_label_set_mnemonic_widget(GTK_LABEL(labelbooks), treeviewbooks); if (myshowportions) gtk_label_set_mnemonic_widget(GTK_LABEL(labelportions), treeviewportions); // Storage, renderer, column and selection for books. { storebooks = gtk_list_store_new(1, G_TYPE_STRING); gtk_tree_view_set_model(GTK_TREE_VIEW(treeviewbooks), GTK_TREE_MODEL(storebooks)); g_object_unref(storebooks); GtkCellRenderer *renderer = gtk_cell_renderer_text_new(); columnbooks = gtk_tree_view_column_new_with_attributes("", renderer, "text", 0, NULL); gtk_tree_view_append_column(GTK_TREE_VIEW(treeviewbooks), columnbooks); selectbooks = gtk_tree_view_get_selection(GTK_TREE_VIEW(treeviewbooks)); gtk_tree_selection_set_mode(selectbooks, GTK_SELECTION_MULTIPLE); } // Storage, renderer, column and selection for portions. if (myshowportions) { storeportions = gtk_list_store_new(1, G_TYPE_STRING); gtk_tree_view_set_model(GTK_TREE_VIEW(treeviewportions), GTK_TREE_MODEL(storeportions)); g_object_unref(storeportions); GtkCellRenderer *renderer = gtk_cell_renderer_text_new(); columnportions = gtk_tree_view_column_new_with_attributes("", renderer, "text", 0, NULL); gtk_tree_view_append_column(GTK_TREE_VIEW(treeviewportions), columnportions); selectportions = gtk_tree_view_get_selection(GTK_TREE_VIEW(treeviewportions)); gtk_tree_selection_set_mode(selectportions, GTK_SELECTION_SINGLE); } // Load content. myselectables = project_get_books(myproject); loadbooks(); if (myshowportions) loadportions(); // Update gui. update_gui_event_id = 0; if (myshowportions) { update_gui_event_id = g_timeout_add_full(G_PRIORITY_DEFAULT, 100, GSourceFunc(on_update_gui_timeout), gpointer(this), NULL); } new DialogAutoScaler (selectbooksdialog, G_MAXINT); } SelectBooksDialog::~SelectBooksDialog() { gw_destroy_source(update_gui_event_id); gtk_widget_destroy(selectbooksdialog); } int SelectBooksDialog::run() { return gtk_dialog_run(GTK_DIALOG(selectbooksdialog)); } void SelectBooksDialog::language(const ustring & language) /* Sets the language to display the books in. The language has been set already, but can be set here too if another language is required. It will reload the books. */ { mylanguage = language; loadbooks(); } void SelectBooksDialog::selectables(vector < unsigned int >&selectablebooks) // Sets the selectables books, if this is different from the books in the project. { myselectables = selectablebooks; loadbooks(); } void SelectBooksDialog::selection_set(const set < unsigned int >&selectedbooks) // Sets the selected books. { myselection = selectedbooks; loadbooks(); } gboolean SelectBooksDialog::on_treeviewbooks_key_press_event(GtkWidget * widget, GdkEventKey * event, gpointer user_data) { return ((SelectBooksDialog *) user_data)->on_treeviewbooks_key_press(event); } gboolean SelectBooksDialog::on_treeviewbooks_key_press(GdkEventKey * event) { // Take special action on Enter: OK button. if (event->keyval == GDK_KEY_Return || event->keyval == GDK_KEY_KP_Enter) { on_okbutton(); gtk_dialog_response(GTK_DIALOG(selectbooksdialog), GTK_RESPONSE_OK); return true; } // Let default handler take action. return false; } void SelectBooksDialog::on_treeviewportions_row_activated(GtkTreeView * treeview, GtkTreePath * path, GtkTreeViewColumn * column, gpointer user_data) { ((SelectBooksDialog *) user_data)->on_treeviewportions_row(); } void SelectBooksDialog::on_treeviewportions_row() { // Get the selected portion and the offset of it, and the corresponding book. ustring portion = listview_get_active_string(treeviewportions); int offset = listview_get_active_offset(treeviewportions); unsigned int book; { vector < ustring > books = listview_get_strings(treeviewbooks); book = books_name_to_id(mylanguage, books[offset]); } // Run the dialog to select a portion. SelectChaptersDialog dialog(myproject, book, portion); if (dialog.run() == GTK_RESPONSE_OK) { // Store new portion in treeview. GtkTreeModel *model = gtk_tree_view_get_model(GTK_TREE_VIEW(treeviewportions)); GtkTreeIter iter; if (gtk_tree_selection_get_selected(selectportions, &model, &iter)) { gtk_list_store_set(storeportions, &iter, 0, dialog.new_selection.c_str(), -1); } } // Unselect everything. gtk_tree_selection_unselect_all(selectportions); } void SelectBooksDialog::on_nobutton_clicked(GtkButton * button, gpointer user_data) { ((SelectBooksDialog *) user_data)->on_button_no(); } void SelectBooksDialog::on_button_no() { gtk_tree_selection_unselect_all(selectbooks); } void SelectBooksDialog::on_otbutton_clicked(GtkButton * button, gpointer user_data) { ((SelectBooksDialog *) user_data)->on_button_ot(); } void SelectBooksDialog::on_button_ot() { vector < unsigned int >ids = books_type_to_ids(btOldTestament); myselection.clear(); for (unsigned int i = 0; i < ids.size(); i++) { myselection.insert(ids[i]); } loadbooks(); } void SelectBooksDialog::on_ntbutton_clicked(GtkButton * button, gpointer user_data) { ((SelectBooksDialog *) user_data)->on_button_nt(); } void SelectBooksDialog::on_button_nt() { vector < unsigned int >ids = books_type_to_ids(btNewTestament); myselection.clear(); for (unsigned int i = 0; i < ids.size(); i++) { myselection.insert(ids[i]); } loadbooks(); } void SelectBooksDialog::on_otherbutton_clicked(GtkButton * button, gpointer user_data) { ((SelectBooksDialog *) user_data)->on_button_other(); } void SelectBooksDialog::on_button_other() { myselection.clear(); vector < unsigned int >ids = books_type_to_ids(btFrontBackMatter); for (unsigned int i = 0; i < ids.size(); i++) { myselection.insert(ids[i]); } ids = books_type_to_ids(btOtherMaterial); for (unsigned int i = 0; i < ids.size(); i++) { myselection.insert(ids[i]); } loadbooks(); } void SelectBooksDialog::on_allbutton_clicked(GtkButton * button, gpointer user_data) { ((SelectBooksDialog *) user_data)->on_button_all(); } void SelectBooksDialog::on_button_all() { gtk_tree_selection_select_all(selectbooks); } void SelectBooksDialog::on_currentbutton_clicked(GtkButton * button, gpointer user_data) { ((SelectBooksDialog *) user_data)->on_button_current(); } void SelectBooksDialog::on_button_current() { myselection.clear(); extern Settings *settings; myselection.insert(settings->genconfig.book_get()); loadbooks(); } void SelectBooksDialog::on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((SelectBooksDialog *) user_data)->on_okbutton(); } void SelectBooksDialog::on_okbutton() { // Get the list of books now selected. selection.clear(); vector < ustring > books; gtk_tree_selection_selected_foreach(selectbooks, selection_foreach_function, gpointer(&books)); for (unsigned int i = 0; i < books.size(); i++) { unsigned int book = books_name_to_id(mylanguage, books[i]); if (book) selection.push_back(book); } // Also produce a set out of that list. selectionset.clear(); for (unsigned int i = 0; i < selection.size(); i++) { selectionset.insert(selection[i]); } // If portions are showing, store the values there too. if (myshowportions) { // Get books, includes and portions. vector < ustring > reordered_books; vector < bool > reordered_includes; vector < ustring > reordered_portions; { vector < ustring > books = listview_get_strings(treeviewbooks); for (unsigned int i = 0; i < books.size(); i++) { unsigned int book = books_name_to_id(mylanguage, books[i]); reordered_books.push_back(books_id_to_english(book)); bool include = (selectionset.find(book) != selectionset.end()); reordered_includes.push_back(include); } } reordered_portions = listview_get_strings(treeviewportions); // Save books, includes and portions. extern Settings *settings; ProjectConfiguration *projectconfig = settings->projectconfig(myproject); projectconfig->reordered_books_set(reordered_books); projectconfig->reordered_includes_set(reordered_includes); projectconfig->reordered_portions_set(reordered_portions); } } void SelectBooksDialog::selection_display(set < unsigned int >&books) { // Get the model GtkTreeModel *model = gtk_tree_view_get_model(GTK_TREE_VIEW(treeviewbooks)); // Some variables needed. GtkTreeIter iter; gboolean valid; gint index = 0; bool focused = false; // Get the first iter in the store. valid = gtk_tree_model_get_iter_first(model, &iter); while (valid) { // Produce path. GtkTreePath *path = gtk_tree_path_new_from_indices(index, -1); // Walk through the list, reading each row gchar *str_data; // Make sure you terminate calls to gtk_tree_model_get() with a '-1' value. gtk_tree_model_get(model, &iter, 0, &str_data, -1); // See if this is a book we wish to select. unsigned int book_id = books_name_to_id(mylanguage, str_data); bool include = myselection.find(book_id) != myselection.end(); // Put cursor on first one selected and select it. if (include) { if (path) { gtk_tree_selection_select_iter(selectbooks, &iter); if (!focused) { gtk_tree_view_set_cursor(GTK_TREE_VIEW(treeviewbooks), path, NULL, false); gtk_tree_view_scroll_to_cell(GTK_TREE_VIEW(treeviewbooks), path, NULL, true, 0.5, 0.5); focused = true; } } gtk_widget_grab_focus(treeviewbooks); } // Free some data. gtk_tree_path_free(path); g_free(str_data); // Next row. valid = gtk_tree_model_iter_next(model, &iter); index++; } } void SelectBooksDialog::loadbooks() { // Translate and load the selectable books. vector < ustring > ubooks; for (unsigned int i = 0; i < myselectables.size(); i++) { ubooks.push_back(books_id_to_name(mylanguage, myselectables[i])); } listview_set_strings(treeviewbooks, storebooks, ubooks); // Initially select books. selection_display(myselection); } void SelectBooksDialog::selection_foreach_function(GtkTreeModel * model, GtkTreePath * path, GtkTreeIter * iter, gpointer data) { gchar *book; gtk_tree_model_get(model, iter, 0, &book, -1); ((vector < ustring > *)data)->push_back(book); g_free(book); } void SelectBooksDialog::loadportions() { // Get the list of (included) books and their portions. myselectables.clear(); myselection.clear(); vector < ustring > portions; ScripturePortions scriptureportions(myproject); for (unsigned int i = 0; i < scriptureportions.reordered_books.size(); i++) { unsigned int book = books_english_to_id(scriptureportions.reordered_books[i]); myselectables.push_back(book); if (scriptureportions.reordered_includes[i]) myselection.insert(book); portions.push_back(scriptureportions.reordered_portions[i]); } // Show both lists. loadbooks(); listview_set_strings(treeviewportions, storeportions, portions); } bool SelectBooksDialog::on_update_gui_timeout(gpointer user_data) { ((SelectBooksDialog *) user_data)->update_gui(); return true; } void SelectBooksDialog::update_gui() { // Get the upper corners of the visible area of both treeviews. // If one changed, then the other will be scrolled to the same position, // and vice versa. GdkRectangle gdk_rectangle; gtk_tree_view_get_visible_rect(GTK_TREE_VIEW(treeviewbooks), &gdk_rectangle); if (gdk_rectangle.y != treeviewbooks_previous_y) { treeviewbooks_previous_y = gdk_rectangle.y; gtk_tree_view_scroll_to_point(GTK_TREE_VIEW(treeviewportions), -1, gdk_rectangle.y); } gtk_tree_view_get_visible_rect(GTK_TREE_VIEW(treeviewportions), &gdk_rectangle); if (gdk_rectangle.y != treeviewportions_previous_y) { treeviewportions_previous_y = gdk_rectangle.y; gtk_tree_view_scroll_to_point(GTK_TREE_VIEW(treeviewbooks), -1, gdk_rectangle.y); } } bibledit-gtk-4.9/src/dialogselectbooks.h000664 000766 000024 00000010161 12221507127 020510 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003 The Free Software Foundation. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOG_SELECT_BOOKS_H #define INCLUDED_DIALOG_SELECT_BOOKS_H #include #include "ustring.h" #include "settings.h" class SelectBooksDialog { public: SelectBooksDialog (bool showportions); ~SelectBooksDialog (); void language (const ustring& language); void selectables (vector & selectablebooks); void selection_set (const set & selectedbooks); int run (); vector selection; set selectionset; protected: GtkWidget *selectbooksdialog; GtkWidget *dialog_vbox1; GtkWidget *vbox1; GtkWidget *hbox11; GtkWidget *vbox2; GtkWidget *labelbooks; GtkWidget *scrolledwindowbooks; GtkWidget *treeviewbooks; GtkWidget *vbox3; GtkWidget *labelportions; GtkWidget *scrolledwindowportions; GtkWidget *treeviewportions; GtkWidget *table1; GtkWidget *nobutton; GtkWidget *alignment1; GtkWidget *hbox4; GtkWidget *image1; GtkWidget *label6; GtkWidget *otbutton; GtkWidget *alignment2; GtkWidget *hbox5; GtkWidget *image2; GtkWidget *label7; GtkWidget *ntbutton; GtkWidget *alignment3; GtkWidget *hbox6; GtkWidget *image3; GtkWidget *label8; GtkWidget *otherbutton; GtkWidget *alignment6; GtkWidget *hbox9; GtkWidget *image6; GtkWidget *label11; GtkWidget *allbutton; GtkWidget *alignment4; GtkWidget *hbox7; GtkWidget *image4; GtkWidget *label9; GtkWidget *currentbutton; GtkWidget *alignment5; GtkWidget *hbox8; GtkWidget *image5; GtkWidget *label10; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton; GtkWidget *okbutton; static gboolean on_treeviewbooks_key_press_event (GtkWidget *widget, GdkEventKey *event, gpointer user_data); gboolean on_treeviewbooks_key_press (GdkEventKey *event); static void on_treeviewportions_row_activated (GtkTreeView *treeview, GtkTreePath *path, GtkTreeViewColumn *column, gpointer user_data); void on_treeviewportions_row (); static void on_nobutton_clicked (GtkButton *button, gpointer user_data); void on_button_no (); static void on_otbutton_clicked (GtkButton *button, gpointer user_data); void on_button_ot (); static void on_ntbutton_clicked (GtkButton *button, gpointer user_data); void on_button_nt (); static void on_otherbutton_clicked (GtkButton *button, gpointer user_data); void on_button_other (); static void on_allbutton_clicked (GtkButton *button, gpointer user_data); void on_button_all (); static void on_currentbutton_clicked (GtkButton *button, gpointer user_data); void on_button_current (); static void on_okbutton_clicked (GtkButton *button, gpointer user_data); void on_okbutton (); void selection_display (set& books); private: GtkListStore *storebooks; GtkTreeViewColumn *columnbooks; GtkTreeSelection *selectbooks; ustring myproject; ustring mylanguage; vector myselectables; set myselection; void loadbooks (); static void selection_foreach_function (GtkTreeModel * model, GtkTreePath * path, GtkTreeIter * iter, gpointer data); bool myshowportions; GtkListStore *storeportions; GtkTreeViewColumn *columnportions; GtkTreeSelection *selectportions; void loadportions (); guint update_gui_event_id; static bool on_update_gui_timeout (gpointer user_data); void update_gui (); gint treeviewbooks_previous_y; gint treeviewportions_previous_y; }; #endif bibledit-gtk-4.9/src/dialogselectchapters.cpp000664 000766 000024 00000060104 12221507136 021541 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogselectchapters.h" #include "listview.h" #include "utilities.h" #include "portion_utils.h" #include "projectutils.h" #include "constants.h" #include "help.h" #include "books.h" #include "tiny_utilities.h" #include "shortcuts.h" SelectChaptersDialog::SelectChaptersDialog(const ustring & project, unsigned int book, const ustring & currentselection) { // Save / check variables. myproject = project; mybook = book; // Build dialog. Shortcuts shortcuts(0); selectchaptersdialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(selectchaptersdialog), "Select portion"); gtk_window_set_position(GTK_WINDOW(selectchaptersdialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(selectchaptersdialog), TRUE); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(selectchaptersdialog)); gtk_widget_show(dialog_vbox1); table1 = gtk_table_new(4, 5, false); gtk_widget_show(table1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), table1, TRUE, TRUE, 0); gtk_table_set_row_spacings(GTK_TABLE(table1), 2); gtk_table_set_col_spacings(GTK_TABLE(table1), 2); buttonall = gtk_button_new(); gtk_widget_show(buttonall); gtk_table_attach(GTK_TABLE(table1), buttonall, 2, 3, 3, 4, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); alignment5 = gtk_alignment_new(0.5, 0.5, 0, 0); gtk_widget_show(alignment5); gtk_container_add(GTK_CONTAINER(buttonall), alignment5); hbox8 = gtk_hbox_new(FALSE, 2); gtk_widget_show(hbox8); gtk_container_add(GTK_CONTAINER(alignment5), hbox8); image5 = gtk_image_new_from_stock("gtk-justify-fill", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image5); gtk_box_pack_start(GTK_BOX(hbox8), image5, FALSE, FALSE, 0); label18 = gtk_label_new_with_mnemonic("All"); gtk_widget_show(label18); gtk_box_pack_start(GTK_BOX(hbox8), label18, FALSE, FALSE, 0); shortcuts.label(label18); label17 = gtk_label_new_with_mnemonic("To:"); gtk_widget_show(label17); gtk_table_attach(GTK_TABLE(table1), label17, 2, 3, 2, 3, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label17), 1, 0.5); shortcuts.label(label17); label16 = gtk_label_new_with_mnemonic("From:"); gtk_widget_show(label16); gtk_table_attach(GTK_TABLE(table1), label16, 2, 3, 1, 2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label16), 1, 0.5); shortcuts.label(label16); label19 = gtk_label_new("chapter"); gtk_widget_show(label19); gtk_table_attach(GTK_TABLE(table1), label19, 3, 4, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); label20 = gtk_label_new("verse"); gtk_widget_show(label20); gtk_table_attach(GTK_TABLE(table1), label20, 4, 5, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); scrolledwindow1 = gtk_scrolled_window_new(NULL, NULL); gtk_widget_show(scrolledwindow1); gtk_table_attach(GTK_TABLE(table1), scrolledwindow1, 3, 4, 1, 2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_FILL), 0, 0); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow1), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scrolledwindow1), GTK_SHADOW_IN); treeviewchapterfrom = gtk_tree_view_new(); gtk_widget_show(treeviewchapterfrom); gtk_container_add(GTK_CONTAINER(scrolledwindow1), treeviewchapterfrom); gtk_tree_view_set_headers_visible(GTK_TREE_VIEW(treeviewchapterfrom), FALSE); scrolledwindow2 = gtk_scrolled_window_new(NULL, NULL); gtk_widget_show(scrolledwindow2); gtk_table_attach(GTK_TABLE(table1), scrolledwindow2, 4, 5, 1, 2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_FILL), 0, 0); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow2), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scrolledwindow2), GTK_SHADOW_IN); treeviewversefrom = gtk_tree_view_new(); gtk_widget_show(treeviewversefrom); gtk_container_add(GTK_CONTAINER(scrolledwindow2), treeviewversefrom); gtk_tree_view_set_headers_visible(GTK_TREE_VIEW(treeviewversefrom), FALSE); scrolledwindow3 = gtk_scrolled_window_new(NULL, NULL); gtk_widget_show(scrolledwindow3); gtk_table_attach(GTK_TABLE(table1), scrolledwindow3, 3, 4, 2, 3, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_FILL), 0, 0); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow3), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scrolledwindow3), GTK_SHADOW_IN); treeviewchapterto = gtk_tree_view_new(); gtk_widget_show(treeviewchapterto); gtk_container_add(GTK_CONTAINER(scrolledwindow3), treeviewchapterto); gtk_tree_view_set_headers_visible(GTK_TREE_VIEW(treeviewchapterto), FALSE); scrolledwindow4 = gtk_scrolled_window_new(NULL, NULL); gtk_widget_show(scrolledwindow4); gtk_table_attach(GTK_TABLE(table1), scrolledwindow4, 4, 5, 2, 3, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_FILL), 0, 0); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow4), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scrolledwindow4), GTK_SHADOW_IN); treeviewverseto = gtk_tree_view_new(); gtk_widget_show(treeviewverseto); gtk_container_add(GTK_CONTAINER(scrolledwindow4), treeviewverseto); gtk_tree_view_set_headers_visible(GTK_TREE_VIEW(treeviewverseto), FALSE); scrolledwindow5 = gtk_scrolled_window_new(NULL, NULL); gtk_widget_show(scrolledwindow5); gtk_table_attach(GTK_TABLE(table1), scrolledwindow5, 0, 2, 1, 3, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (GTK_FILL), 0, 0); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow5), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scrolledwindow5), GTK_SHADOW_IN); treeviewportions = gtk_tree_view_new(); gtk_widget_show(treeviewportions); gtk_container_add(GTK_CONTAINER(scrolledwindow5), treeviewportions); gtk_tree_view_set_headers_visible(GTK_TREE_VIEW(treeviewportions), FALSE); button_add = gtk_button_new_from_stock("gtk-add"); gtk_widget_show(button_add); gtk_table_attach(GTK_TABLE(table1), button_add, 0, 1, 3, 4, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); shortcuts.stockbutton(button_add); button_delete = gtk_button_new_from_stock("gtk-delete"); gtk_widget_show(button_delete); gtk_table_attach(GTK_TABLE(table1), button_delete, 1, 2, 3, 4, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); shortcuts.stockbutton(button_delete); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(selectchaptersdialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(selectchaptersdialog, NULL, &shortcuts, NULL); cancelbutton = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton); gtk_dialog_add_action_widget(GTK_DIALOG(selectchaptersdialog), cancelbutton, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton), true); okbutton = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton); gtk_dialog_add_action_widget(GTK_DIALOG(selectchaptersdialog), okbutton, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton), true); shortcuts.stockbutton(cancelbutton); shortcuts.stockbutton(okbutton); shortcuts.process(); // Store, column, selection. liststorechapterfrom = gtk_list_store_new(1, G_TYPE_STRING); gtk_tree_view_set_model(GTK_TREE_VIEW(treeviewchapterfrom), GTK_TREE_MODEL(liststorechapterfrom)); g_object_unref(liststorechapterfrom); GtkCellRenderer *rendererchapterfrom = gtk_cell_renderer_text_new(); columnchapterfrom = gtk_tree_view_column_new_with_attributes("", rendererchapterfrom, "text", 0, NULL); gtk_tree_view_append_column(GTK_TREE_VIEW(treeviewchapterfrom), columnchapterfrom); selectchapterfrom = gtk_tree_view_get_selection(GTK_TREE_VIEW(treeviewchapterfrom)); gtk_tree_selection_set_mode(selectchapterfrom, GTK_SELECTION_SINGLE); liststoreversefrom = gtk_list_store_new(1, G_TYPE_STRING); gtk_tree_view_set_model(GTK_TREE_VIEW(treeviewversefrom), GTK_TREE_MODEL(liststoreversefrom)); g_object_unref(liststoreversefrom); GtkCellRenderer *rendererversefrom = gtk_cell_renderer_text_new(); columnversefrom = gtk_tree_view_column_new_with_attributes("", rendererversefrom, "text", 0, NULL); gtk_tree_view_append_column(GTK_TREE_VIEW(treeviewversefrom), columnversefrom); selectversefrom = gtk_tree_view_get_selection(GTK_TREE_VIEW(treeviewversefrom)); gtk_tree_selection_set_mode(selectversefrom, GTK_SELECTION_SINGLE); liststorechapterto = gtk_list_store_new(1, G_TYPE_STRING); gtk_tree_view_set_model(GTK_TREE_VIEW(treeviewchapterto), GTK_TREE_MODEL(liststorechapterto)); g_object_unref(liststorechapterto); GtkCellRenderer *rendererchapterto = gtk_cell_renderer_text_new(); columnchapterto = gtk_tree_view_column_new_with_attributes("", rendererchapterto, "text", 0, NULL); gtk_tree_view_append_column(GTK_TREE_VIEW(treeviewchapterto), columnchapterto); selectchapterto = gtk_tree_view_get_selection(GTK_TREE_VIEW(treeviewchapterto)); gtk_tree_selection_set_mode(selectchapterto, GTK_SELECTION_SINGLE); liststoreverseto = gtk_list_store_new(1, G_TYPE_STRING); gtk_tree_view_set_model(GTK_TREE_VIEW(treeviewverseto), GTK_TREE_MODEL(liststoreverseto)); g_object_unref(liststoreverseto); GtkCellRenderer *rendererverseto = gtk_cell_renderer_text_new(); columnverseto = gtk_tree_view_column_new_with_attributes("", rendererverseto, "text", 0, NULL); gtk_tree_view_append_column(GTK_TREE_VIEW(treeviewverseto), columnverseto); selectverseto = gtk_tree_view_get_selection(GTK_TREE_VIEW(treeviewverseto)); gtk_tree_selection_set_mode(selectverseto, GTK_SELECTION_SINGLE); liststoreportions = gtk_list_store_new(1, G_TYPE_STRING); gtk_tree_view_set_model(GTK_TREE_VIEW(treeviewportions), GTK_TREE_MODEL(liststoreportions)); g_object_unref(liststoreportions); GtkCellRenderer *rendererportions = gtk_cell_renderer_text_new(); columnportions = gtk_tree_view_column_new_with_attributes("", rendererportions, "text", 0, NULL); gtk_tree_view_append_column(GTK_TREE_VIEW(treeviewportions), columnportions); selectportions = gtk_tree_view_get_selection(GTK_TREE_VIEW(treeviewportions)); gtk_tree_selection_set_mode(selectportions, GTK_SELECTION_SINGLE); g_signal_connect((gpointer) treeviewchapterfrom, "row_activated", G_CALLBACK(on_treeviewchapterfrom_row_activated), gpointer(this)); g_signal_connect((gpointer) treeviewchapterfrom, "button_release_event", G_CALLBACK(on_treeviewchapterfrom_button_release_event), gpointer(this)); g_signal_connect((gpointer) treeviewchapterfrom, "key_release_event", G_CALLBACK(on_treeviewchapterfrom_key_release_event), gpointer(this)); g_signal_connect((gpointer) treeviewversefrom, "row_activated", G_CALLBACK(on_treeviewversefrom_row_activated), gpointer(this)); g_signal_connect((gpointer) treeviewversefrom, "button_release_event", G_CALLBACK(on_treeviewversefrom_button_release_event), gpointer(this)); g_signal_connect((gpointer) treeviewversefrom, "key_release_event", G_CALLBACK(on_treeviewversefrom_key_release_event), gpointer(this)); g_signal_connect((gpointer) treeviewchapterto, "row_activated", G_CALLBACK(on_treeviewchapterto_row_activated), gpointer(this)); g_signal_connect((gpointer) treeviewchapterto, "button_release_event", G_CALLBACK(on_treeviewchapterto_button_release_event), gpointer(this)); g_signal_connect((gpointer) treeviewchapterto, "key_release_event", G_CALLBACK(on_treeviewchapterto_key_release_event), gpointer(this)); g_signal_connect((gpointer) treeviewverseto, "row_activated", G_CALLBACK(on_treeviewverseto_row_activated), gpointer(this)); g_signal_connect((gpointer) treeviewverseto, "button_release_event", G_CALLBACK(on_treeviewverseto_button_release_event), gpointer(this)); g_signal_connect((gpointer) treeviewverseto, "key_release_event", G_CALLBACK(on_treeviewverseto_key_release_event), gpointer(this)); g_signal_connect((gpointer) buttonall, "clicked", G_CALLBACK(on_buttonall_clicked), gpointer(this)); g_signal_connect((gpointer) treeviewportions, "cursor_changed", G_CALLBACK(on_treeview1_cursor_changed), gpointer(this)); g_signal_connect((gpointer) treeviewportions, "move_cursor", G_CALLBACK(on_treeview1_move_cursor), gpointer(this)); g_signal_connect((gpointer) button_add, "clicked", G_CALLBACK(on_button_add_clicked), gpointer(this)); g_signal_connect((gpointer) button_delete, "clicked", G_CALLBACK(on_button_delete_clicked), gpointer(this)); g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(on_okbutton_clicked), gpointer(this)); gtk_label_set_mnemonic_widget(GTK_LABEL(label16), treeviewchapterfrom); gtk_label_set_mnemonic_widget(GTK_LABEL(label17), treeviewchapterto); gtk_widget_grab_focus(treeviewchapterfrom); gtk_widget_grab_default(okbutton); // Set listview. vector < ustring > portions = select_portion_get_portions(currentselection); listview_set_strings(treeviewportions, liststoreportions, portions); listview_focus_string(treeviewportions, portions[portions.size() - 1], false); } SelectChaptersDialog::~SelectChaptersDialog() { gtk_widget_destroy(selectchaptersdialog); } int SelectChaptersDialog::run() { return gtk_dialog_run(GTK_DIALOG(selectchaptersdialog)); } void SelectChaptersDialog::on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((SelectChaptersDialog *) user_data)->on_okbutton(); } void SelectChaptersDialog::on_okbutton() { new_selection = select_portion_get_portion(listview_get_strings(treeviewportions)); if (new_selection.empty()) new_selection = CHAPTER_VERSE_SELECTION_ALL; } void SelectChaptersDialog::on_fromchapter() { if (driving_listviews) return; // Fill verses listview. unsigned int from = convert_to_int(listview_get_active_string(treeviewchapterfrom)); vector < ustring > verses = project_get_verses(myproject, mybook, from); listview_set_strings(treeviewversefrom, liststoreversefrom, verses); listview_focus_string(treeviewversefrom, verses[0], false); // If from_chapter > to_chapter, push to_chapter up, as this is probably what the user wants. unsigned int to = convert_to_int(listview_get_active_string(treeviewchapterto)); if (from > to) { listview_focus_string(treeviewchapterto, from, false); } // Store new portion in the listview. update_active_portion(); } void SelectChaptersDialog::on_fromverse() { verses_from_to(true); } void SelectChaptersDialog::on_tochapter() { if (driving_listviews) return; // Fill verses listview. unsigned int to = convert_to_int(listview_get_active_string(treeviewchapterto)); vector < ustring > verses = project_get_verses(myproject, mybook, to); listview_set_strings(treeviewverseto, liststoreverseto, verses); listview_focus_string(treeviewverseto, verses[verses.size() - 1], false); // Modify "from" chapter, if need be. unsigned int from = convert_to_int(listview_get_active_string(treeviewchapterfrom)); if (to < from) { listview_focus_string(treeviewchapterfrom, to, false); } // Store new portion in the listview. update_active_portion(); } void SelectChaptersDialog::on_toverse() { verses_from_to(false); } void SelectChaptersDialog::on_buttonall_clicked(GtkButton * button, gpointer user_data) { ((SelectChaptersDialog *) user_data)->on_all(); } void SelectChaptersDialog::on_all() { portion_set(CHAPTER_VERSE_SELECTION_ALL); update_active_portion(); } void SelectChaptersDialog::portion_set(const ustring & selection) // Sets the portion in the gui. { // Get values for the portion. unsigned int chapter_from, chapter_to; ustring verse_from, verse_to; { vector < unsigned int >chapters_from, chapters_to; vector < ustring > verses_from, verses_to; select_portion_get_values(myproject, mybook, selection, chapters_from, verses_from, chapters_to, verses_to); chapter_from = chapters_from[0]; chapter_to = chapters_to[0]; verse_from = verses_from[0]; verse_to = verses_to[0]; } // Signal we're filling listviews. driving_listviews = true; // Set the chapter combos. vector < unsigned int >chapters = project_get_chapters(myproject, mybook); listview_set_strings(treeviewchapterfrom, liststorechapterfrom, chapters); listview_set_strings(treeviewchapterto, liststorechapterto, chapters); listview_focus_string(treeviewchapterfrom, chapter_from, false); listview_focus_string(treeviewchapterto, chapter_to, false); // Set the verse combox. listview_set_strings(treeviewversefrom, liststoreversefrom, project_get_verses(myproject, mybook, chapter_from)); listview_set_strings(treeviewverseto, liststoreverseto, project_get_verses(myproject, mybook, chapter_to)); listview_focus_string(treeviewversefrom, verse_from, false); listview_focus_string(treeviewverseto, verse_to, false); // Ready filling listviews. driving_listviews = false; } void SelectChaptersDialog::verses_from_to(bool called_by_from) { // Bail out if progamatically setting the values. if (driving_listviews) return; // Only bother about verse clashes the from/to chapters are the same. unsigned int chapter = convert_to_int(listview_get_active_string(treeviewchapterfrom)); if (convert_to_int(listview_get_active_string(treeviewchapterto)) == chapter) { // Ensure there's no clash between the verses "from" and "to". vector < ustring > verses = project_get_verses(myproject, mybook, chapter); ustring from = listview_get_active_string(treeviewversefrom); ustring to = listview_get_active_string(treeviewverseto); unsigned int from_offset = 0; unsigned int to_offset = 0; for (unsigned int i = 0; i < verses.size(); i++) { if (verses[i] == from) from_offset = i; if (verses[i] == to) to_offset = i; } if (called_by_from) { if (from_offset > to_offset) listview_focus_string(treeviewverseto, verses[from_offset], false); } else { if (to_offset < from_offset) listview_focus_string(treeviewversefrom, verses[to_offset], false); } } // Store new portion in the listview. update_active_portion(); } void SelectChaptersDialog::on_treeviewchapterfrom_row_activated(GtkTreeView * treeview, GtkTreePath * path, GtkTreeViewColumn * column, gpointer user_data) { ((SelectChaptersDialog *) user_data)->on_treeviewchapterfrom_row(); } void SelectChaptersDialog::on_treeviewchapterfrom_row() { on_fromchapter(); gtk_widget_grab_focus(treeviewversefrom); } gboolean SelectChaptersDialog::on_treeviewchapterfrom_button_release_event(GtkWidget * widget, GdkEventButton * event, gpointer user_data) { ((SelectChaptersDialog *) user_data)->on_fromchapter(); return false; } gboolean SelectChaptersDialog::on_treeviewchapterfrom_key_release_event(GtkWidget * widget, GdkEventKey * event, gpointer user_data) { ((SelectChaptersDialog *) user_data)->on_fromchapter(); return false; } void SelectChaptersDialog::on_treeviewversefrom_row_activated(GtkTreeView * treeview, GtkTreePath * path, GtkTreeViewColumn * column, gpointer user_data) { ((SelectChaptersDialog *) user_data)->on_treeviewversefrom_row(); } void SelectChaptersDialog::on_treeviewversefrom_row() { on_fromverse(); gtk_widget_grab_focus(treeviewchapterto); } gboolean SelectChaptersDialog::on_treeviewversefrom_button_release_event(GtkWidget * widget, GdkEventButton * event, gpointer user_data) { ((SelectChaptersDialog *) user_data)->on_fromverse(); return false; } gboolean SelectChaptersDialog::on_treeviewversefrom_key_release_event(GtkWidget * widget, GdkEventKey * event, gpointer user_data) { ((SelectChaptersDialog *) user_data)->on_fromverse(); return false; } void SelectChaptersDialog::on_treeviewchapterto_row_activated(GtkTreeView * treeview, GtkTreePath * path, GtkTreeViewColumn * column, gpointer user_data) { ((SelectChaptersDialog *) user_data)->on_treeviewchapterto_row(); } void SelectChaptersDialog::on_treeviewchapterto_row() { on_tochapter(); gtk_widget_grab_focus(treeviewverseto); } gboolean SelectChaptersDialog::on_treeviewchapterto_button_release_event(GtkWidget * widget, GdkEventButton * event, gpointer user_data) { ((SelectChaptersDialog *) user_data)->on_tochapter(); return false; } gboolean SelectChaptersDialog::on_treeviewchapterto_key_release_event(GtkWidget * widget, GdkEventKey * event, gpointer user_data) { ((SelectChaptersDialog *) user_data)->on_tochapter(); return false; } void SelectChaptersDialog::on_treeviewverseto_row_activated(GtkTreeView * treeview, GtkTreePath * path, GtkTreeViewColumn * column, gpointer user_data) { ((SelectChaptersDialog *) user_data)->on_treeviewverseto_row(); } void SelectChaptersDialog::on_treeviewverseto_row() { on_toverse(); gtk_widget_grab_focus(okbutton); } gboolean SelectChaptersDialog::on_treeviewverseto_button_release_event(GtkWidget * widget, GdkEventButton * event, gpointer user_data) { ((SelectChaptersDialog *) user_data)->on_toverse(); return false; } gboolean SelectChaptersDialog::on_treeviewverseto_key_release_event(GtkWidget * widget, GdkEventKey * event, gpointer user_data) { ((SelectChaptersDialog *) user_data)->on_toverse(); return false; } void SelectChaptersDialog::on_treeview1_cursor_changed(GtkTreeView * treeview, gpointer user_data) { ((SelectChaptersDialog *) user_data)->treeview1_cursor_changed(); } void SelectChaptersDialog::treeview1_cursor_changed() { // Set chapters and verses. ustring portion = listview_get_active_string(treeviewportions); portion_set(portion); } gboolean SelectChaptersDialog::on_treeview1_move_cursor(GtkTreeView * treeview, GtkMovementStep step, gint count, gpointer user_data) { ((SelectChaptersDialog *) user_data)->treeview1_move_cursor(); return false; } void SelectChaptersDialog::treeview1_move_cursor() { } void SelectChaptersDialog::on_button_add_clicked(GtkButton * button, gpointer user_data) { ((SelectChaptersDialog *) user_data)->button_add_clicked(); } void SelectChaptersDialog::button_add_clicked() // This adds portion "All" to the ones now in the listview. { vector < ustring > portions = listview_get_strings(treeviewportions); portions.push_back(CHAPTER_VERSE_SELECTION_ALL); listview_set_strings(treeviewportions, liststoreportions, portions); listview_focus_string(treeviewportions, CHAPTER_VERSE_SELECTION_ALL); } void SelectChaptersDialog::on_button_delete_clicked(GtkButton * button, gpointer user_data) { ((SelectChaptersDialog *) user_data)->button_delete_clicked(); } void SelectChaptersDialog::button_delete_clicked() // This deletes the selected portion in the listview. { list_view_erase_selection(treeviewportions); vector < ustring > portions = listview_get_strings(treeviewportions); if (portions.empty()) return; listview_focus_string(treeviewportions, portions[0], false); } ustring SelectChaptersDialog::portion_get() // This returns the portion as set in the chapter and verse selectors. { return select_portion_get_label(myproject, mybook, convert_to_int(listview_get_active_string(treeviewchapterfrom)), listview_get_active_string(treeviewversefrom), convert_to_int(listview_get_active_string(treeviewchapterto)), listview_get_active_string(treeviewverseto)); } void SelectChaptersDialog::update_active_portion() { unsigned int index = listview_get_active_offset(treeviewportions); if (index < 0) return; listview_set_row(treeviewportions, liststoreportions, index, portion_get()); } bibledit-gtk-4.9/src/dialogselectchapters.h000664 000766 000024 00000011766 12221507141 021214 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGSELECTCHAPTERS_H #define INCLUDED_DIALOGSELECTCHAPTERS_H #include #include "ustring.h" class SelectChaptersDialog { public: SelectChaptersDialog (const ustring& project, unsigned int book, const ustring& currentselection); ~SelectChaptersDialog (); int run (); ustring new_selection; protected: GtkWidget *selectchaptersdialog; GtkWidget *dialog_vbox1; GtkWidget *table1; GtkWidget *buttonall; GtkWidget *alignment5; GtkWidget *hbox8; GtkWidget *image5; GtkWidget *label18; GtkWidget *label17; GtkWidget *label16; GtkWidget *label19; GtkWidget *label20; GtkWidget *scrolledwindow1; GtkWidget *treeviewchapterfrom; GtkWidget *scrolledwindow2; GtkWidget *treeviewversefrom; GtkWidget *scrolledwindow3; GtkWidget *treeviewchapterto; GtkWidget *scrolledwindow4; GtkWidget *treeviewverseto; GtkWidget *scrolledwindow5; GtkWidget *treeviewportions; GtkWidget *button_add; GtkWidget *button_delete; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton; GtkWidget *okbutton; private: ustring myproject; unsigned int mybook; bool driving_listviews; static void on_okbutton_clicked (GtkButton *button, gpointer user_data); void on_okbutton (); void on_fromchapter (); void on_fromverse (); void on_tochapter (); void on_toverse (); static void on_buttonall_clicked (GtkButton *button, gpointer user_data); void on_all (); static void on_treeviewchapterfrom_row_activated (GtkTreeView *treeview, GtkTreePath *path, GtkTreeViewColumn *column, gpointer user_data); void on_treeviewchapterfrom_row (); static gboolean on_treeviewchapterfrom_button_release_event (GtkWidget *widget, GdkEventButton *event, gpointer user_data); static gboolean on_treeviewchapterfrom_key_release_event (GtkWidget *widget, GdkEventKey *event, gpointer user_data); static void on_treeviewversefrom_row_activated (GtkTreeView *treeview, GtkTreePath *path, GtkTreeViewColumn *column, gpointer user_data); void on_treeviewversefrom_row (); static gboolean on_treeviewversefrom_button_release_event (GtkWidget *widget, GdkEventButton *event, gpointer user_data); static gboolean on_treeviewversefrom_key_release_event (GtkWidget *widget, GdkEventKey *event, gpointer user_data); static void on_treeviewchapterto_row_activated (GtkTreeView *treeview, GtkTreePath *path, GtkTreeViewColumn *column, gpointer user_data); void on_treeviewchapterto_row (); static gboolean on_treeviewchapterto_button_release_event (GtkWidget *widget, GdkEventButton *event, gpointer user_data); static gboolean on_treeviewchapterto_key_release_event (GtkWidget *widget, GdkEventKey *event, gpointer user_data); static void on_treeviewverseto_row_activated (GtkTreeView *treeview, GtkTreePath *path, GtkTreeViewColumn *column, gpointer user_data); void on_treeviewverseto_row (); static gboolean on_treeviewverseto_button_release_event (GtkWidget *widget, GdkEventButton *event, gpointer user_data); static gboolean on_treeviewverseto_key_release_event (GtkWidget *widget, GdkEventKey *event, gpointer user_data); void portion_set (const ustring& selection); ustring portion_get (); void verses_from_to (bool called_by_from); GtkTreeViewColumn *columnchapterfrom; GtkTreeSelection *selectchapterfrom; GtkListStore * liststorechapterfrom; GtkTreeViewColumn *columnversefrom; GtkTreeSelection *selectversefrom; GtkListStore * liststoreversefrom; GtkTreeViewColumn *columnchapterto; GtkTreeSelection *selectchapterto; GtkListStore * liststorechapterto; GtkTreeViewColumn *columnverseto; GtkTreeSelection *selectverseto; GtkListStore * liststoreverseto; static void on_treeview1_cursor_changed (GtkTreeView *treeview, gpointer user_data); void treeview1_cursor_changed (); static gboolean on_treeview1_move_cursor (GtkTreeView *treeview, GtkMovementStep step, gint count, gpointer user_data); void treeview1_move_cursor (); static void on_button_add_clicked (GtkButton *button, gpointer user_data); void button_add_clicked (); static void on_button_delete_clicked (GtkButton *button, gpointer user_data); void button_delete_clicked (); GtkTreeViewColumn *columnportions; GtkTreeSelection *selectportions; GtkListStore * liststoreportions; void update_active_portion (); }; #endif bibledit-gtk-4.9/src/dialogshownotes.cpp000644 000766 000024 00000047065 12460404402 020567 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "utilities.h" #include "dialogshownotes.h" #include #include "notes_utils.h" #include "dialogdate.h" #include "date_time_utils.h" #include "combobox.h" #include "settings.h" #include "help.h" #include "shortcuts.h" #include "directories.h" #include "gwrappers.h" #include "tiny_utilities.h" #include "books.h" ShowNotesDialog::ShowNotesDialog(int dummy) { event_id = 0; extern Settings *settings; gtkbuilder = gtk_builder_new (); gtk_builder_add_from_file (gtkbuilder, gw_build_filename (Directories->get_package_data(), "gtkbuilder.showprojectnotesdialog.xml").c_str(), NULL); dialog = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "dialog")); GSList *verse_reference_group = NULL; radiobutton_current_verse = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "radiobutton_current_verse")); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_current_verse), verse_reference_group); verse_reference_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_current_verse)); g_signal_connect ((gpointer) radiobutton_current_verse, "clicked", G_CALLBACK (on_button_clicked), gpointer (this)); radiobutton_current_chapter = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "radiobutton_current_chapter")); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_current_chapter), verse_reference_group); verse_reference_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_current_chapter)); g_signal_connect ((gpointer) radiobutton_current_chapter, "clicked", G_CALLBACK (on_button_clicked), gpointer (this)); radiobutton_current_book = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "radiobutton_current_book")); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_current_book), verse_reference_group); verse_reference_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_current_book)); g_signal_connect ((gpointer) radiobutton_current_book, "clicked", G_CALLBACK (on_button_clicked), gpointer (this)); radiobutton_any_verse = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "radiobutton_any_verse")); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_any_verse), verse_reference_group); verse_reference_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_any_verse)); g_signal_connect ((gpointer) radiobutton_any_verse, "clicked", G_CALLBACK (on_button_clicked), gpointer (this)); GSList *radiobutton_date_group = NULL; radiobutton_today = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "radiobutton_today")); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_today), radiobutton_date_group); radiobutton_date_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_today)); g_signal_connect ((gpointer) radiobutton_today, "clicked", G_CALLBACK (on_button_clicked), gpointer (this)); radiobutton_between = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "radiobutton_between")); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_between), radiobutton_date_group); radiobutton_date_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_between)); g_signal_connect ((gpointer) radiobutton_between, "clicked", G_CALLBACK (on_button_clicked), gpointer (this)); button_start = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "button_start")); g_signal_connect((gpointer) button_start, "clicked", G_CALLBACK(on_fromdatebutton_clicked), gpointer(this)); g_signal_connect ((gpointer) button_start, "clicked", G_CALLBACK (on_button_clicked), gpointer (this)); button_end = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "button_end")); g_signal_connect((gpointer) button_end, "clicked", G_CALLBACK(on_todatebutton_clicked), gpointer(this)); g_signal_connect ((gpointer) button_end, "clicked", G_CALLBACK (on_button_clicked), gpointer (this)); radiobutton_at_any_time = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "radiobutton_at_any_time")); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_at_any_time), radiobutton_date_group); radiobutton_date_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_at_any_time)); g_signal_connect ((gpointer) radiobutton_at_any_time, "clicked", G_CALLBACK (on_button_clicked), gpointer (this)); // Glade-3 does not seem to be able to work with gtk_combo_box_new_text yet. Workaround below. label_category = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "label_category")); hbox_category = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "hbox_category")); combobox_category = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "combobox_category")); gtk_widget_destroy (combobox_category); combobox_category = gtk_combo_box_new_text(); gtk_widget_show(combobox_category); gtk_box_pack_start(GTK_BOX(hbox_category), combobox_category, TRUE, TRUE, 0); gtk_label_set_mnemonic_widget(GTK_LABEL(label_category), combobox_category); g_signal_connect ((gpointer) combobox_category, "changed", G_CALLBACK (on_combobox_changed), gpointer (this)); GSList *radiobutton_project_group = NULL; radiobutton_current_project = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "radiobutton_current_project")); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_current_project), radiobutton_project_group); radiobutton_project_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_current_project)); g_signal_connect ((gpointer) radiobutton_current_project, "clicked", G_CALLBACK (on_button_clicked), gpointer (this)); radiobutton_any_project = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "radiobutton_any_project")); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_any_project), radiobutton_project_group); radiobutton_project_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_any_project)); g_signal_connect ((gpointer) radiobutton_any_project, "clicked", G_CALLBACK (on_button_clicked), gpointer (this)); checkbutton_title = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "checkbutton_title")); g_signal_connect((gpointer) checkbutton_title, "toggled", G_CALLBACK(on_checkbutton_show_title_toggled), gpointer(this)); g_signal_connect ((gpointer) checkbutton_title, "clicked", G_CALLBACK (on_button_clicked), gpointer (this)); checkbutton_project = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "checkbutton_project")); g_signal_connect ((gpointer) checkbutton_project, "clicked", G_CALLBACK (on_button_clicked), gpointer (this)); checkbutton_category = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "checkbutton_category")); g_signal_connect ((gpointer) checkbutton_category, "clicked", G_CALLBACK (on_button_clicked), gpointer (this)); checkbutton_date_created = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "checkbutton_date_created")); g_signal_connect ((gpointer) checkbutton_date_created, "clicked", G_CALLBACK (on_button_clicked), gpointer (this)); checkbutton_created_by = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "checkbutton_created_by")); g_signal_connect ((gpointer) checkbutton_created_by, "clicked", G_CALLBACK (on_button_clicked), gpointer (this)); GSList *radiobutton_text_group = NULL; radiobutton_full = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "radiobutton_full")); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_full), radiobutton_text_group); radiobutton_text_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_full)); radiobutton_summary = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "radiobutton_summary")); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_summary), radiobutton_text_group); radiobutton_text_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_summary)); checkbutton_add_ref_text = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "checkbutton_add_ref_text")); // Set the reference selection. GtkToggleButton *refbutton = reference_get_button(settings->genconfig.notes_selection_reference_get()); if (refbutton) { gtk_toggle_button_set_active(refbutton, true); } // Set the edited selection. GtkToggleButton *editbutton = edited_get_button(settings->genconfig.notes_selection_edited_get()); if (editbutton) { gtk_toggle_button_set_active(editbutton, true); } from_day = settings->genconfig.notes_selection_date_from_get(); to_day = settings->genconfig.notes_selection_date_to_get(); // Load available categories and set the combo. ReadText rt(notes_categories_filename()); rt.lines.push_back(all_categories()); combobox_set_strings(combobox_category, rt.lines); ustring category = settings->genconfig.notes_selection_category_get(); if (category.empty()) category = all_categories(); combobox_set_string(combobox_category, category); // Project selection. gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_any_project), !settings->genconfig.notes_selection_current_project_get()); // Title and inclusions. gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_title), settings->session.project_notes_show_title); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_project), settings->genconfig.notes_display_project_get()); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_category), settings->genconfig.notes_display_category_get()); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_date_created), settings->genconfig.notes_display_date_created_get()); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_created_by), settings->genconfig.notes_display_created_by_get()); // Notes text display. gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_summary), settings->genconfig.notes_display_summary_get()); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_add_ref_text), settings->genconfig.notes_display_reference_text_get()); label_result = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "label_result")); Shortcuts shortcuts(0); InDialogHelp * indialoghelp = new InDialogHelp(dialog, gtkbuilder, &shortcuts, "view/project-notes"); shortcuts.process(); cancelbutton = indialoghelp->cancelbutton; okbutton = indialoghelp->okbutton; g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(on_okbutton_clicked), gpointer(this)); gtk_widget_grab_default(okbutton); set_gui(); } ShowNotesDialog::~ShowNotesDialog() { gtk_widget_destroy(dialog); } int ShowNotesDialog::run() { return gtk_dialog_run(GTK_DIALOG(dialog)); } void ShowNotesDialog::on_fromdatebutton_clicked(GtkButton * button, gpointer user_data) { ((ShowNotesDialog *) user_data)->on_from_date(); } void ShowNotesDialog::on_todatebutton_clicked(GtkButton * button, gpointer user_data) { ((ShowNotesDialog *) user_data)->on_to_date(); } void ShowNotesDialog::on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((ShowNotesDialog *) user_data)->on_ok(); } void ShowNotesDialog::on_from_date() { guint seconds = date_time_julian_to_seconds(from_day); DateDialog dialog(&seconds); if (dialog.run() == GTK_RESPONSE_OK) { from_day = date_time_seconds_to_julian(seconds); set_gui(); } } void ShowNotesDialog::on_to_date() { guint seconds = date_time_julian_to_seconds(to_day); DateDialog dialog(&seconds); if (dialog.run() == GTK_RESPONSE_OK) { to_day = date_time_seconds_to_julian(seconds); set_gui(); } } void ShowNotesDialog::on_ok() { extern Settings *settings; // Reference selection. settings->genconfig.notes_selection_reference_set(get_reference_selection ()); // Edited selection. settings->genconfig.notes_selection_edited_set(get_edited_selection ()); settings->genconfig.notes_selection_date_from_set(from_day); settings->genconfig.notes_selection_date_to_set(to_day); // Category. ustring category = combobox_get_active_string(combobox_category); if (category == all_categories()) category.clear(); settings->genconfig.notes_selection_category_set(category); // Project selection. settings->genconfig.notes_selection_current_project_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_current_project))); // Title and inclusions. settings->session.project_notes_show_title = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_title)); settings->genconfig.notes_display_project_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_project))); settings->genconfig.notes_display_category_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_category))); settings->genconfig.notes_display_date_created_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_date_created))); settings->genconfig.notes_display_created_by_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_created_by))); // Notes text display. settings->genconfig.notes_display_summary_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_summary))); settings->genconfig.notes_display_reference_text_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_add_ref_text))); } void ShowNotesDialog::set_gui() { // Set the labels on the date buttons. gtk_button_set_label(GTK_BUTTON(button_start), date_time_julian_human_readable(from_day, true).c_str()); gtk_button_set_label(GTK_BUTTON(button_end), date_time_julian_human_readable(to_day, true).c_str()); // Rewrite shortcuts. Shortcuts shortcuts(0); shortcuts.button(radiobutton_current_verse); shortcuts.button(radiobutton_current_chapter); shortcuts.button(radiobutton_current_book); shortcuts.button(radiobutton_any_verse); shortcuts.button(radiobutton_today); shortcuts.button(radiobutton_between); shortcuts.button(button_start); shortcuts.button(button_end); shortcuts.button(radiobutton_at_any_time); shortcuts.label(label_category); shortcuts.button(radiobutton_current_project); shortcuts.button(radiobutton_any_project); shortcuts.button(checkbutton_title); shortcuts.button(checkbutton_project); shortcuts.button(checkbutton_category); shortcuts.button(checkbutton_date_created); shortcuts.button(checkbutton_created_by); shortcuts.button(radiobutton_full); shortcuts.button(radiobutton_summary); shortcuts.button(checkbutton_add_ref_text); // Temporal helpbutton for correct processing of the _H. GtkWidget *helpbutton = gtk_button_new_from_stock("gtk-help"); shortcuts.stockbutton(helpbutton); shortcuts.stockbutton(cancelbutton); shortcuts.stockbutton(okbutton); shortcuts.process(); gtk_widget_destroy(helpbutton); on_checkbutton_show_title(); } ustring ShowNotesDialog::all_categories() { return "All categories"; } GtkToggleButton *ShowNotesDialog::reference_get_button(int selector) { GtkToggleButton *button = NULL; NotesSelectionReferenceType ref_selection = (NotesSelectionReferenceType) selector; switch (ref_selection) { case nsrtCurrentVerse: { button = GTK_TOGGLE_BUTTON(radiobutton_current_verse); break; } case nsrtCurrentChapter: { button = GTK_TOGGLE_BUTTON(radiobutton_current_chapter); break; } case nsrtCurrentBook: { button = GTK_TOGGLE_BUTTON(radiobutton_current_book); break; } case nsrtAny: { button = GTK_TOGGLE_BUTTON(radiobutton_any_verse); break; } } return button; } GtkToggleButton *ShowNotesDialog::edited_get_button(int selector) { GtkToggleButton *button = NULL; NotesSelectionEditedType edit_selection = (NotesSelectionEditedType) selector; switch (edit_selection) { case nsetToday: { button = GTK_TOGGLE_BUTTON(radiobutton_today); break; } case nsetDateRange: { button = GTK_TOGGLE_BUTTON(radiobutton_between); break; } case nsetAny: { button = GTK_TOGGLE_BUTTON(radiobutton_at_any_time); break; } } return button; } void ShowNotesDialog::on_checkbutton_show_title_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((ShowNotesDialog *) user_data)->on_checkbutton_show_title(); } void ShowNotesDialog::on_checkbutton_show_title() // Whether to show the title. { bool active = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_title)); gtk_widget_set_sensitive(checkbutton_project, active); gtk_widget_set_sensitive(checkbutton_category, active); gtk_widget_set_sensitive(checkbutton_date_created, active); gtk_widget_set_sensitive(checkbutton_created_by, active); } NotesSelectionReferenceType ShowNotesDialog::get_reference_selection () { if (gtk_toggle_button_get_active(reference_get_button(nsrtCurrentVerse))) return nsrtCurrentVerse; if (gtk_toggle_button_get_active(reference_get_button(nsrtCurrentChapter))) return nsrtCurrentChapter; if (gtk_toggle_button_get_active(reference_get_button(nsrtCurrentBook))) return nsrtCurrentBook; if (gtk_toggle_button_get_active(reference_get_button(nsrtAny))) return nsrtAny; return nsrtCurrentVerse; } NotesSelectionEditedType ShowNotesDialog::get_edited_selection () { if (gtk_toggle_button_get_active(edited_get_button(nsetToday))) return nsetToday; if (gtk_toggle_button_get_active(edited_get_button(nsetDateRange))) return nsetDateRange; if (gtk_toggle_button_get_active(edited_get_button(nsetAny))) return nsetAny; return nsetToday; } void ShowNotesDialog::on_button_clicked (GtkButton *button, gpointer user_data) { ((ShowNotesDialog *) user_data)->restart_timeout(); } void ShowNotesDialog::on_combobox_changed (GtkComboBox *combobox, gpointer user_data) { ((ShowNotesDialog *) user_data)->restart_timeout(); } void ShowNotesDialog::restart_timeout () { gw_destroy_source(event_id); event_id = g_timeout_add_full(G_PRIORITY_DEFAULT, 100, GSourceFunc(on_timeout), gpointer(this), NULL); } // MAP: I believe these two routines can be eliminated. Just set the // bool on on_timeout is set up. bool ShowNotesDialog::on_timeout(gpointer user_data) { ((ShowNotesDialog *) user_data)->timeout(); return false; } void ShowNotesDialog::timeout() { // Clear the event id. event_id = 0; // Get the parameters from the dialog, not from the Settings object, since these have not yet been stored. extern Settings * settings; ustring currentreference = books_id_to_english(settings->genconfig.book_get()) + " " + settings->genconfig.chapter_get() + ":" + settings->genconfig.verse_get(); NotesSelectionReferenceType refselection = get_reference_selection (); NotesSelectionEditedType editedselection = get_edited_selection (); ustring category = combobox_get_active_string(combobox_category); if (category == all_categories()) category.clear(); bool currentprojectselection = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_current_project)); // Get notes count. vector ids; unsigned int id_cursor; notes_select (ids, id_cursor, currentreference, category, refselection, editedselection, currentprojectselection, from_day, to_day); // Update GUI. ustring message = "This selection would display " + convert_to_string (ids.size()) + " "; if (ids.size() == 1) message.append ("note"); else message.append ("notes"); gtk_label_set_text (GTK_LABEL (label_result), message.c_str()); } bibledit-gtk-4.9/src/dialogshownotes.h000664 000766 000024 00000005652 12221507140 020230 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGSHOWNOTES #define INCLUDED_DIALOGSHOWNOTES #include #include "libraries.h" #include "notes_utils.h" class ShowNotesDialog { public: ShowNotesDialog (int dummy); ~ShowNotesDialog (); int run(); protected: GtkBuilder *gtkbuilder; GtkWidget *dialog; GtkWidget *radiobutton_current_verse; GtkWidget *radiobutton_current_chapter; GtkWidget *radiobutton_current_book; GtkWidget *radiobutton_any_verse; GtkWidget *radiobutton_today; GtkWidget *radiobutton_between; GtkWidget *button_start; GtkWidget *button_end; GtkWidget *radiobutton_at_any_time; GtkWidget *label_category; GtkWidget *hbox_category; GtkWidget *combobox_category; GtkWidget *radiobutton_current_project; GtkWidget *radiobutton_any_project; GtkWidget *checkbutton_title; GtkWidget *checkbutton_project; GtkWidget *checkbutton_category; GtkWidget *checkbutton_date_created; GtkWidget *checkbutton_created_by; GtkWidget *radiobutton_full; GtkWidget *radiobutton_summary; GtkWidget *checkbutton_add_ref_text; GtkWidget *label_result; GtkWidget *cancelbutton; GtkWidget *okbutton; private: static void on_fromdatebutton_clicked (GtkButton *button, gpointer user_data); static void on_todatebutton_clicked (GtkButton *button, gpointer user_data); static void on_okbutton_clicked (GtkButton *button, gpointer user_data); void on_from_date (); void on_to_date (); void on_ok (); void set_gui(); guint32 from_day; guint32 to_day; ustring all_categories (); GtkToggleButton * reference_get_button (int selector); GtkToggleButton * edited_get_button (int selector); static void on_checkbutton_show_title_toggled (GtkToggleButton *togglebutton, gpointer user_data); NotesSelectionReferenceType get_reference_selection (); NotesSelectionEditedType get_edited_selection (); // Gui update if a setting was changed. static void on_button_clicked (GtkButton *button, gpointer user_data); static void on_combobox_changed (GtkComboBox *combobox, gpointer user_data); void on_checkbutton_show_title(); void restart_timeout (); guint event_id; static bool on_timeout(gpointer user_data); void timeout(); }; #endif bibledit-gtk-4.9/src/dialogstylesheet.cpp000664 000766 000024 00000365521 12221507145 020734 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogstylesheet.h" #include "utilities.h" #include "stylesheetutils.h" #include "dialogentry.h" #include "projectutils.h" #include "directories.h" #include "usfm.h" #include "gtkwrappers.h" #include "constants.h" #include #include "color.h" #include "help.h" #include "tiny_utilities.h" #include "screen.h" /* Usage of user variables. userint1 - Footnote / crossreference / endnote: NoteNumberingType - Table Element, heading and cell: column number userint2 - Footnote / crossreference: NoteNumberingRestartType - Endnote: EndnotePositionType userbool1 - Chapter number: Whether to print at first verse. - \id: whether to start a new page. - Footnote/endnote/xref: whether it applies to the apocrypha. - Verse number: Whether to restart the paragraph. userbool2 - \id: whether to start an odd page number. - Chapter number (\c): Whether to include it in the left running header. - Running header (\h(#): Whether to include it in the left running header. userbool3 - Chapter number (\c): Whether to include it in the right running header. - Running header (\h(#): Whether to include it in the right running header. userstring1 - Footnotes / xrefs / endnotes: numbering sequence. - Chapter label: the label. - Word list entries: text to add after entry. userstring2 - Endnotes: dump notes upon encountering this marker. */ StylesheetDialog::StylesheetDialog(const ustring & stylesheet, const ustring & style) { // Save variables. mystylesheet = stylesheet; mystyle = style; stylesheetdialog = gtk_dialog_new(); ustring s; s = "Stylesheet " + stylesheet + ", style " + style; gtk_window_set_title(GTK_WINDOW(stylesheetdialog), s.c_str()); gtk_window_set_position(GTK_WINDOW(stylesheetdialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(stylesheetdialog), TRUE); gtk_window_set_destroy_with_parent(GTK_WINDOW(stylesheetdialog), TRUE); gtk_window_set_type_hint(GTK_WINDOW(stylesheetdialog), GDK_WINDOW_TYPE_HINT_DIALOG); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(stylesheetdialog)); gtk_widget_show(dialog_vbox1); scrolledwindow_main = gtk_scrolled_window_new (NULL, NULL); gtk_widget_show (scrolledwindow_main); gtk_box_pack_start (GTK_BOX (dialog_vbox1), scrolledwindow_main, TRUE, TRUE, 0); gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow_main), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (scrolledwindow_main), GTK_SHADOW_IN); viewport_main = gtk_viewport_new (NULL, NULL); gtk_widget_show (viewport_main); gtk_container_add (GTK_CONTAINER (scrolledwindow_main), viewport_main); vbox1 = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox1); gtk_container_add (GTK_CONTAINER (viewport_main), vbox1); vbox2 = gtk_vbox_new(FALSE, 6); gtk_widget_show(vbox2); gtk_box_pack_start(GTK_BOX(vbox1), vbox2, TRUE, TRUE, 0); hbox1 = gtk_hbox_new(FALSE, 4); gtk_widget_show(hbox1); gtk_box_pack_start(GTK_BOX(vbox2), hbox1, false, false, 0); gtk_container_set_border_width(GTK_CONTAINER(hbox1), 2); label6 = gtk_label_new_with_mnemonic("Style:"); gtk_widget_show(label6); gtk_box_pack_start(GTK_BOX(hbox1), label6, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label6), 0, 0.5); labelstyle = gtk_label_new(""); gtk_widget_show(labelstyle); gtk_box_pack_start(GTK_BOX(hbox1), labelstyle, TRUE, TRUE, 0); gtk_misc_set_alignment(GTK_MISC(labelstyle), 0, 0.5); label37 = gtk_label_new_with_mnemonic("N_ame"); gtk_widget_show(label37); gtk_box_pack_start(GTK_BOX(vbox2), label37, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label37), 0, 0.5); entryname = gtk_entry_new(); gtk_widget_show(entryname); gtk_box_pack_start(GTK_BOX(vbox2), entryname, FALSE, FALSE, 0); label36 = gtk_label_new_with_mnemonic("D_escription"); gtk_widget_show(label36); gtk_box_pack_start(GTK_BOX(vbox2), label36, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label36), 0, 0.5); scrolledwindow1 = gtk_scrolled_window_new(NULL, NULL); gtk_widget_show(scrolledwindow1); gtk_box_pack_start(GTK_BOX(vbox2), scrolledwindow1, TRUE, TRUE, 0); gtk_widget_set_size_request(scrolledwindow1, -1, 50); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow1), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); textview1 = gtk_text_view_new(); gtk_widget_show(textview1); gtk_container_add(GTK_CONTAINER(scrolledwindow1), textview1); gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(textview1), GTK_WRAP_WORD); hseparator1 = gtk_hseparator_new(); gtk_widget_show(hseparator1); gtk_box_pack_start(GTK_BOX(vbox2), hseparator1, TRUE, TRUE, 0); hbox8 = gtk_hbox_new(FALSE, 0); gtk_widget_show(hbox8); gtk_box_pack_start(GTK_BOX(vbox2), hbox8, TRUE, TRUE, 0); vbox5 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox5); gtk_box_pack_start(GTK_BOX(hbox8), vbox5, TRUE, TRUE, 0); label21 = gtk_label_new_with_mnemonic("_This style:"); gtk_widget_show(label21); gtk_box_pack_start(GTK_BOX(vbox5), label21, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label21), 0, 0.5); vbox3 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox3); gtk_box_pack_start(GTK_BOX(vbox5), vbox3, FALSE, TRUE, 0); GSList *radiobutton_id_group = NULL; radiobutton_id = gtk_radio_button_new_with_mnemonic(NULL, "is an identifier"); gtk_widget_show(radiobutton_id); gtk_box_pack_start(GTK_BOX(vbox3), radiobutton_id, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_id), radiobutton_id_group); radiobutton_id_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_id)); radiobutton_paragraph = gtk_radio_button_new_with_mnemonic(NULL, "starts a new paragraph"); gtk_widget_show(radiobutton_paragraph); gtk_box_pack_start(GTK_BOX(vbox3), radiobutton_paragraph, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_paragraph), radiobutton_id_group); radiobutton_id_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_paragraph)); radiobutton_inline = gtk_radio_button_new_with_mnemonic(NULL, "is inline text with endmarker"); gtk_widget_show(radiobutton_inline); gtk_box_pack_start(GTK_BOX(vbox3), radiobutton_inline, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_inline), radiobutton_id_group); radiobutton_id_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_inline)); radiobutton_chapter = gtk_radio_button_new_with_mnemonic(NULL, "is a chapter number"); gtk_widget_show(radiobutton_chapter); gtk_box_pack_start(GTK_BOX(vbox3), radiobutton_chapter, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_chapter), radiobutton_id_group); radiobutton_id_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_chapter)); radiobutton_verse = gtk_radio_button_new_with_mnemonic(NULL, "is a verse number"); gtk_widget_show(radiobutton_verse); gtk_box_pack_start(GTK_BOX(vbox3), radiobutton_verse, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_verse), radiobutton_id_group); radiobutton_id_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_verse)); radiobutton_footendnote = gtk_radio_button_new_with_mnemonic(NULL, "is a footnote or endnote"); gtk_widget_show(radiobutton_footendnote); gtk_box_pack_start(GTK_BOX(vbox3), radiobutton_footendnote, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_footendnote), radiobutton_id_group); radiobutton_id_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_footendnote)); radiobutton_crossreference = gtk_radio_button_new_with_mnemonic(NULL, "is a crossreference"); gtk_widget_show(radiobutton_crossreference); gtk_box_pack_start(GTK_BOX(vbox3), radiobutton_crossreference, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_crossreference), radiobutton_id_group); radiobutton_id_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_crossreference)); radiobutton_peripheral = gtk_radio_button_new_with_mnemonic(NULL, "is a peripheral element"); gtk_widget_show(radiobutton_peripheral); gtk_box_pack_start(GTK_BOX(vbox3), radiobutton_peripheral, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_peripheral), radiobutton_id_group); radiobutton_id_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_peripheral)); radiobutton_picture = gtk_radio_button_new_with_mnemonic(NULL, "is a picture"); gtk_widget_show(radiobutton_picture); gtk_box_pack_start(GTK_BOX(vbox3), radiobutton_picture, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_picture), radiobutton_id_group); radiobutton_id_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_picture)); radiobutton_pagebreak = gtk_radio_button_new_with_mnemonic(NULL, "starts a new page"); gtk_widget_show(radiobutton_pagebreak); gtk_box_pack_start(GTK_BOX(vbox3), radiobutton_pagebreak, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_pagebreak), radiobutton_id_group); radiobutton_id_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_pagebreak)); radiobutton_table_element = gtk_radio_button_new_with_mnemonic(NULL, "is a table element"); gtk_widget_show(radiobutton_table_element); gtk_box_pack_start(GTK_BOX(vbox3), radiobutton_table_element, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_table_element), radiobutton_id_group); radiobutton_id_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_table_element)); radiobutton_wordlist_element = gtk_radio_button_new_with_mnemonic(NULL, "is a word list element"); gtk_widget_show(radiobutton_wordlist_element); gtk_box_pack_start(GTK_BOX(vbox3), radiobutton_wordlist_element, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_wordlist_element), radiobutton_id_group); radiobutton_id_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_wordlist_element)); vseparator1 = gtk_vseparator_new(); gtk_widget_show(vseparator1); gtk_box_pack_start(GTK_BOX(hbox8), vseparator1, FALSE, FALSE, 0); notebook_subtype = gtk_notebook_new(); gtk_widget_show(notebook_subtype); gtk_box_pack_start(GTK_BOX(hbox8), notebook_subtype, TRUE, TRUE, 0); gtk_notebook_set_show_border(GTK_NOTEBOOK(notebook_subtype), FALSE); gtk_widget_set_can_focus (notebook_subtype, false); gtk_notebook_set_show_tabs(GTK_NOTEBOOK(notebook_subtype), FALSE); gtk_notebook_set_show_border(GTK_NOTEBOOK(notebook_subtype), FALSE); empty_notebook_page = gtk_vbox_new(FALSE, 0); gtk_widget_show(empty_notebook_page); gtk_container_add(GTK_CONTAINER(notebook_subtype), empty_notebook_page); label47 = gtk_label_new(""); gtk_widget_show(label47); gtk_notebook_set_tab_label(GTK_NOTEBOOK(notebook_subtype), gtk_notebook_get_nth_page(GTK_NOTEBOOK(notebook_subtype), 0), label47); vbox8 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox8); gtk_container_add(GTK_CONTAINER(notebook_subtype), vbox8); label50 = gtk_label_new("This one:"); gtk_widget_show(label50); gtk_box_pack_start(GTK_BOX(vbox8), label50, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label50), 0, 0.5); GSList *radiobutton_footnote_group = NULL; radiobutton_footnote = gtk_radio_button_new_with_mnemonic(NULL, "starts a footnote"); gtk_widget_show(radiobutton_footnote); gtk_box_pack_start(GTK_BOX(vbox8), radiobutton_footnote, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_footnote), radiobutton_footnote_group); radiobutton_footnote_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_footnote)); radiobutton_endnote = gtk_radio_button_new_with_mnemonic(NULL, "starts an endnote"); gtk_widget_show(radiobutton_endnote); gtk_box_pack_start(GTK_BOX(vbox8), radiobutton_endnote, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_endnote), radiobutton_footnote_group); radiobutton_footnote_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_endnote)); radiobutton_note_content_standard = gtk_radio_button_new_with_mnemonic(NULL, "is standard content"); gtk_widget_show(radiobutton_note_content_standard); gtk_box_pack_start(GTK_BOX(vbox8), radiobutton_note_content_standard, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_note_content_standard), radiobutton_footnote_group); radiobutton_footnote_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_note_content_standard)); radiobutton_note_content = gtk_radio_button_new_with_mnemonic(NULL, "is content"); gtk_widget_show(radiobutton_note_content); gtk_box_pack_start(GTK_BOX(vbox8), radiobutton_note_content, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_note_content), radiobutton_footnote_group); radiobutton_footnote_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_note_content)); radiobutton_note_content_endmarker = gtk_radio_button_new_with_mnemonic(NULL, "is content with endmarker"); gtk_widget_show(radiobutton_note_content_endmarker); gtk_box_pack_start(GTK_BOX(vbox8), radiobutton_note_content_endmarker, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_note_content_endmarker), radiobutton_footnote_group); radiobutton_footnote_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_note_content_endmarker)); radiobutton_note_paragraph = gtk_radio_button_new_with_mnemonic(NULL, "starts another paragraph"); gtk_widget_show(radiobutton_note_paragraph); gtk_box_pack_start(GTK_BOX(vbox8), radiobutton_note_paragraph, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_note_paragraph), radiobutton_footnote_group); radiobutton_footnote_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_note_paragraph)); label48 = gtk_label_new(""); gtk_widget_show(label48); gtk_notebook_set_tab_label(GTK_NOTEBOOK(notebook_subtype), gtk_notebook_get_nth_page(GTK_NOTEBOOK(notebook_subtype), 1), label48); vbox9 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox9); gtk_container_add(GTK_CONTAINER(notebook_subtype), vbox9); label51 = gtk_label_new("This one:"); gtk_widget_show(label51); gtk_box_pack_start(GTK_BOX(vbox9), label51, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label51), 0, 0.5); GSList *radiobutton_xref_group = NULL; radiobutton_xref = gtk_radio_button_new_with_mnemonic(NULL, "starts a crossreference"); gtk_widget_show(radiobutton_xref); gtk_box_pack_start(GTK_BOX(vbox9), radiobutton_xref, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_xref), radiobutton_xref_group); radiobutton_xref_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_xref)); radiobutton_xref_content_standard = gtk_radio_button_new_with_mnemonic(NULL, "is standard content"); gtk_widget_show(radiobutton_xref_content_standard); gtk_box_pack_start(GTK_BOX(vbox9), radiobutton_xref_content_standard, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_xref_content_standard), radiobutton_xref_group); radiobutton_xref_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_xref_content_standard)); radiobutton_xref_content = gtk_radio_button_new_with_mnemonic(NULL, "is content"); gtk_widget_show(radiobutton_xref_content); gtk_box_pack_start(GTK_BOX(vbox9), radiobutton_xref_content, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_xref_content), radiobutton_xref_group); radiobutton_xref_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_xref_content)); radiobutton_xref_content_endmarker = gtk_radio_button_new_with_mnemonic(NULL, "is content with endmarker"); gtk_widget_show(radiobutton_xref_content_endmarker); gtk_box_pack_start(GTK_BOX(vbox9), radiobutton_xref_content_endmarker, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_xref_content_endmarker), radiobutton_xref_group); radiobutton_xref_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_xref_content_endmarker)); label49 = gtk_label_new(""); gtk_widget_show(label49); gtk_notebook_set_tab_label(GTK_NOTEBOOK(notebook_subtype), gtk_notebook_get_nth_page(GTK_NOTEBOOK(notebook_subtype), 2), label49); vbox13 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox13); gtk_container_add(GTK_CONTAINER(notebook_subtype), vbox13); gtk_notebook_set_tab_label_packing(GTK_NOTEBOOK(notebook_subtype), vbox13, FALSE, FALSE, GTK_PACK_START); label55 = gtk_label_new("This one:"); gtk_widget_show(label55); gtk_box_pack_start(GTK_BOX(vbox13), label55, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label55), 0, 0.5); GSList *radiobutton_paragraph_type_main_title_group = NULL; radiobutton_paragraph_type_main_title = gtk_radio_button_new_with_mnemonic(NULL, "is a main title"); gtk_widget_show(radiobutton_paragraph_type_main_title); gtk_box_pack_start(GTK_BOX(vbox13), radiobutton_paragraph_type_main_title, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_paragraph_type_main_title), radiobutton_paragraph_type_main_title_group); radiobutton_paragraph_type_main_title_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_paragraph_type_main_title)); radiobutton_paragraph_type_subtitle = gtk_radio_button_new_with_mnemonic(NULL, "is a subtitle"); gtk_widget_show(radiobutton_paragraph_type_subtitle); gtk_box_pack_start(GTK_BOX(vbox13), radiobutton_paragraph_type_subtitle, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_paragraph_type_subtitle), radiobutton_paragraph_type_main_title_group); radiobutton_paragraph_type_main_title_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_paragraph_type_subtitle)); radiobutton_paragraph_type_section_heading = gtk_radio_button_new_with_mnemonic(NULL, "is a section heading"); gtk_widget_show(radiobutton_paragraph_type_section_heading); gtk_box_pack_start(GTK_BOX(vbox13), radiobutton_paragraph_type_section_heading, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_paragraph_type_section_heading), radiobutton_paragraph_type_main_title_group); radiobutton_paragraph_type_main_title_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_paragraph_type_section_heading)); radiobutton_paragraph_type_text = gtk_radio_button_new_with_mnemonic(NULL, "is a normal paragraph"); gtk_widget_show(radiobutton_paragraph_type_text); gtk_box_pack_start(GTK_BOX(vbox13), radiobutton_paragraph_type_text, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_paragraph_type_text), radiobutton_paragraph_type_main_title_group); radiobutton_paragraph_type_main_title_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_paragraph_type_text)); label54 = gtk_label_new(""); gtk_widget_show(label54); gtk_notebook_set_tab_label(GTK_NOTEBOOK(notebook_subtype), gtk_notebook_get_nth_page(GTK_NOTEBOOK(notebook_subtype), 3), label54); vbox14 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox14); gtk_container_add(GTK_CONTAINER(notebook_subtype), vbox14); labelperiph58 = gtk_label_new("This one:"); gtk_widget_show(labelperiph58); gtk_box_pack_start(GTK_BOX(vbox14), labelperiph58, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(labelperiph58), 0, 0.5); GSList *radiobutton_peripheral_pub_group = NULL; radiobutton_peripheral_pub = gtk_radio_button_new_with_mnemonic(NULL, "starts publication data"); gtk_widget_show(radiobutton_peripheral_pub); gtk_box_pack_start(GTK_BOX(vbox14), radiobutton_peripheral_pub, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_peripheral_pub), radiobutton_peripheral_pub_group); radiobutton_peripheral_pub_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_peripheral_pub)); radiobutton_peripheral_toc = gtk_radio_button_new_with_mnemonic(NULL, "starts table of contents"); gtk_widget_show(radiobutton_peripheral_toc); gtk_box_pack_start(GTK_BOX(vbox14), radiobutton_peripheral_toc, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_peripheral_toc), radiobutton_peripheral_pub_group); radiobutton_peripheral_pub_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_peripheral_toc)); radiobutton_peripheral_pref = gtk_radio_button_new_with_mnemonic(NULL, "starts preface"); gtk_widget_show(radiobutton_peripheral_pref); gtk_box_pack_start(GTK_BOX(vbox14), radiobutton_peripheral_pref, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_peripheral_pref), radiobutton_peripheral_pub_group); radiobutton_peripheral_pub_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_peripheral_pref)); radiobutton_peripheral_intro = gtk_radio_button_new_with_mnemonic(NULL, "starts introduction"); gtk_widget_show(radiobutton_peripheral_intro); gtk_box_pack_start(GTK_BOX(vbox14), radiobutton_peripheral_intro, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_peripheral_intro), radiobutton_peripheral_pub_group); radiobutton_peripheral_pub_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_peripheral_intro)); radiobutton_peripheral_conc = gtk_radio_button_new_with_mnemonic(NULL, "starts concordance"); gtk_widget_show(radiobutton_peripheral_conc); gtk_box_pack_start(GTK_BOX(vbox14), radiobutton_peripheral_conc, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_peripheral_conc), radiobutton_peripheral_pub_group); radiobutton_peripheral_pub_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_peripheral_conc)); radiobutton_peripheral_glo = gtk_radio_button_new_with_mnemonic(NULL, "starts glossary"); gtk_widget_show(radiobutton_peripheral_glo); gtk_box_pack_start(GTK_BOX(vbox14), radiobutton_peripheral_glo, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_peripheral_glo), radiobutton_peripheral_pub_group); radiobutton_peripheral_pub_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_peripheral_glo)); radiobutton_peripheral_idx = gtk_radio_button_new_with_mnemonic(NULL, "starts index"); gtk_widget_show(radiobutton_peripheral_idx); gtk_box_pack_start(GTK_BOX(vbox14), radiobutton_peripheral_idx, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_peripheral_idx), radiobutton_peripheral_pub_group); radiobutton_peripheral_pub_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_peripheral_idx)); radiobutton_peripheral_maps = gtk_radio_button_new_with_mnemonic(NULL, "starts map index"); gtk_widget_show(radiobutton_peripheral_maps); gtk_box_pack_start(GTK_BOX(vbox14), radiobutton_peripheral_maps, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_peripheral_maps), radiobutton_peripheral_pub_group); radiobutton_peripheral_pub_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_peripheral_maps)); radiobutton_peripheral_cov = gtk_radio_button_new_with_mnemonic(NULL, "starts cover"); gtk_widget_show(radiobutton_peripheral_cov); gtk_box_pack_start(GTK_BOX(vbox14), radiobutton_peripheral_cov, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_peripheral_cov), radiobutton_peripheral_pub_group); radiobutton_peripheral_pub_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_peripheral_cov)); radiobutton_peripheral_spine = gtk_radio_button_new_with_mnemonic(NULL, "starts spine"); gtk_widget_show(radiobutton_peripheral_spine); gtk_box_pack_start(GTK_BOX(vbox14), radiobutton_peripheral_spine, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_peripheral_spine), radiobutton_peripheral_pub_group); radiobutton_peripheral_pub_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_peripheral_spine)); label56 = gtk_label_new(""); gtk_widget_show(label56); gtk_notebook_set_tab_label(GTK_NOTEBOOK(notebook_subtype), gtk_notebook_get_nth_page(GTK_NOTEBOOK(notebook_subtype), 4), label56); vbox15 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox15); gtk_container_add(GTK_CONTAINER(notebook_subtype), vbox15); label_id_58 = gtk_label_new("This one:"); gtk_widget_show(label_id_58); gtk_box_pack_start(GTK_BOX(vbox15), label_id_58, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label_id_58), 0, 0.5); GSList *radiobutton_id_book_group = NULL; radiobutton_id_book = gtk_radio_button_new_with_mnemonic(NULL, "identifies the book"); gtk_widget_show(radiobutton_id_book); gtk_box_pack_start(GTK_BOX(vbox15), radiobutton_id_book, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_id_book), radiobutton_id_book_group); radiobutton_id_book_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_id_book)); radiobutton_id_encoding = gtk_radio_button_new_with_mnemonic(NULL, "identifies the encoding"); gtk_widget_show(radiobutton_id_encoding); gtk_box_pack_start(GTK_BOX(vbox15), radiobutton_id_encoding, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_id_encoding), radiobutton_id_book_group); radiobutton_id_book_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_id_encoding)); radiobutton_id_comment = gtk_radio_button_new_with_mnemonic(NULL, "is a comment"); gtk_widget_show(radiobutton_id_comment); gtk_box_pack_start(GTK_BOX(vbox15), radiobutton_id_comment, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_id_comment), radiobutton_id_book_group); radiobutton_id_book_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_id_comment)); radiobutton_id_comment_with_endmarker = gtk_radio_button_new_with_mnemonic(NULL, "is a comment with an endmarker"); gtk_widget_show(radiobutton_id_comment_with_endmarker); gtk_box_pack_start(GTK_BOX(vbox15), radiobutton_id_comment_with_endmarker, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_id_comment_with_endmarker), radiobutton_id_book_group); radiobutton_id_book_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_id_comment_with_endmarker)); radiobutton_id_running_header = gtk_radio_button_new_with_mnemonic(NULL, "is a running header"); gtk_widget_show(radiobutton_id_running_header); gtk_box_pack_start(GTK_BOX(vbox15), radiobutton_id_running_header, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_id_running_header), radiobutton_id_book_group); radiobutton_id_book_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_id_running_header)); radiobutton_is_long_toc_text = gtk_radio_button_new_with_mnemonic(NULL, "is long table of contents text"); gtk_widget_show(radiobutton_is_long_toc_text); gtk_box_pack_start(GTK_BOX(vbox15), radiobutton_is_long_toc_text, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_is_long_toc_text), radiobutton_id_book_group); radiobutton_id_book_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_is_long_toc_text)); radiobutton_is_short_toc_text = gtk_radio_button_new_with_mnemonic(NULL, "is short table of contents text"); gtk_widget_show(radiobutton_is_short_toc_text); gtk_box_pack_start(GTK_BOX(vbox15), radiobutton_is_short_toc_text, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_is_short_toc_text), radiobutton_id_book_group); radiobutton_id_book_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_is_short_toc_text)); radiobutton_is_book_abbrev = gtk_radio_button_new_with_mnemonic(NULL, "is the book abbreviation"); gtk_widget_show(radiobutton_is_book_abbrev); gtk_box_pack_start(GTK_BOX(vbox15), radiobutton_is_book_abbrev, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_is_book_abbrev), radiobutton_id_book_group); radiobutton_id_book_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_is_book_abbrev)); radiobutton_is_chapter_label = gtk_radio_button_new_with_mnemonic(NULL, "is the chapter label"); gtk_widget_show(radiobutton_is_chapter_label); gtk_box_pack_start(GTK_BOX(vbox15), radiobutton_is_chapter_label, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_is_chapter_label), radiobutton_id_book_group); radiobutton_id_book_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_is_chapter_label)); radiobutton_is_published_chapter_marker = gtk_radio_button_new_with_mnemonic(NULL, "is the published chapter marker"); gtk_widget_show(radiobutton_is_published_chapter_marker); gtk_box_pack_start(GTK_BOX(vbox15), radiobutton_is_published_chapter_marker, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_is_published_chapter_marker), radiobutton_id_book_group); radiobutton_id_book_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_is_published_chapter_marker)); label57 = gtk_label_new(""); gtk_widget_show(label57); gtk_notebook_set_tab_label(GTK_NOTEBOOK(notebook_subtype), gtk_notebook_get_nth_page(GTK_NOTEBOOK(notebook_subtype), 5), label57); // Here starts the table subtype. vbox17 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox17); gtk_container_add(GTK_CONTAINER(notebook_subtype), vbox17); label_table_sub = gtk_label_new("This one:"); gtk_widget_show(label_table_sub); gtk_box_pack_start(GTK_BOX(vbox17), label_table_sub, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label_table_sub), 0, 0.5); GSList *radiobutton_table_sub_new_row_group = NULL; radiobutton_table_sub_new_row = gtk_radio_button_new_with_mnemonic(NULL, "starts a new row"); gtk_widget_show(radiobutton_table_sub_new_row); gtk_box_pack_start(GTK_BOX(vbox17), radiobutton_table_sub_new_row, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_table_sub_new_row), radiobutton_table_sub_new_row_group); radiobutton_table_sub_new_row_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_table_sub_new_row)); radiobutton_table_sub_heading = gtk_radio_button_new_with_mnemonic(NULL, "is a column heading"); gtk_widget_show(radiobutton_table_sub_heading); gtk_box_pack_start(GTK_BOX(vbox17), radiobutton_table_sub_heading, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_table_sub_heading), radiobutton_table_sub_new_row_group); radiobutton_table_sub_new_row_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_table_sub_heading)); radiobutton_table_sub_cell = gtk_radio_button_new_with_mnemonic(NULL, "is cell data"); gtk_widget_show(radiobutton_table_sub_cell); gtk_box_pack_start(GTK_BOX(vbox17), radiobutton_table_sub_cell, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_table_sub_cell), radiobutton_table_sub_new_row_group); radiobutton_table_sub_new_row_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_table_sub_cell)); label61 = gtk_label_new(""); gtk_widget_show(label61); gtk_notebook_set_tab_label(GTK_NOTEBOOK(notebook_subtype), gtk_notebook_get_nth_page(GTK_NOTEBOOK(notebook_subtype), 6), label61); // Here ends the table subtype. // Word list subtype. vbox_subtype_wordlist = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox_subtype_wordlist); gtk_container_add(GTK_CONTAINER(notebook_subtype), vbox_subtype_wordlist); label_subtype_wordlist = gtk_label_new("This one:"); gtk_widget_show(label_subtype_wordlist); gtk_box_pack_start(GTK_BOX(vbox_subtype_wordlist), label_subtype_wordlist, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label_subtype_wordlist), 0, 0.5); GSList *radiobutton_subtype_wordlist_group = NULL; radiobutton_subtype_wordlist_glossary_dictionary_entry = gtk_radio_button_new_with_mnemonic(NULL, "Wordlist / glossary / dictionary entry"); gtk_widget_show(radiobutton_subtype_wordlist_glossary_dictionary_entry); gtk_box_pack_start(GTK_BOX(vbox_subtype_wordlist), radiobutton_subtype_wordlist_glossary_dictionary_entry, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_subtype_wordlist_glossary_dictionary_entry), radiobutton_subtype_wordlist_group); radiobutton_subtype_wordlist_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_subtype_wordlist_glossary_dictionary_entry)); radiobutton_subtype_hebrew_wordlist_entry = gtk_radio_button_new_with_mnemonic(NULL, "Hebrew wordlist entry"); gtk_widget_show(radiobutton_subtype_hebrew_wordlist_entry); gtk_box_pack_start(GTK_BOX(vbox_subtype_wordlist), radiobutton_subtype_hebrew_wordlist_entry, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_subtype_hebrew_wordlist_entry), radiobutton_subtype_wordlist_group); radiobutton_subtype_wordlist_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_subtype_hebrew_wordlist_entry)); radiobutton_subtype_greek_wordlist_entry = gtk_radio_button_new_with_mnemonic(NULL, "Greek wordlist entry"); gtk_widget_show(radiobutton_subtype_greek_wordlist_entry); gtk_box_pack_start(GTK_BOX(vbox_subtype_wordlist), radiobutton_subtype_greek_wordlist_entry, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_subtype_greek_wordlist_entry), radiobutton_subtype_wordlist_group); radiobutton_subtype_wordlist_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_subtype_greek_wordlist_entry)); radiobutton_subtype_subject_index_entry = gtk_radio_button_new_with_mnemonic(NULL, "Subject index entry"); gtk_widget_show(radiobutton_subtype_subject_index_entry); gtk_box_pack_start(GTK_BOX(vbox_subtype_wordlist), radiobutton_subtype_subject_index_entry, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_subtype_subject_index_entry), radiobutton_subtype_wordlist_group); radiobutton_subtype_wordlist_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_subtype_subject_index_entry)); label63 = gtk_label_new(""); gtk_widget_show(label63); gtk_notebook_set_tab_label(GTK_NOTEBOOK(notebook_subtype), gtk_notebook_get_nth_page(GTK_NOTEBOOK(notebook_subtype), 7), label63); // Here ends the word list subtype. vseparator2 = gtk_vseparator_new(); gtk_widget_show(vseparator2); gtk_box_pack_start(GTK_BOX(hbox8), vseparator2, TRUE, TRUE, 0); vbox6 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox6); gtk_box_pack_start(GTK_BOX(hbox8), vbox6, TRUE, TRUE, 0); // Optional widgets, set them all to NULL. hbox2 = NULL; checkbutton_italic = NULL; checkbutton_bold = NULL; checkbutton_underline = NULL; checkbutton_small_caps = NULL; table2 = NULL; checkbutton_superscript = NULL; vbox4 = NULL; checkbutton_apocrypha = NULL; checkbutton_span = NULL; vbox10 = NULL; hbox10 = NULL; print_chapter_at_first_verse = NULL; hbox_id = NULL; hbox_colour = NULL; checkbutton_print = NULL; hbox13 = NULL; hbox15 = NULL; checkbutton_print_in_running_header_left = NULL; hbox16 = NULL; checkbutton_restarts_paragraph = NULL; dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(stylesheetdialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(stylesheetdialog, NULL, NULL, NULL); cancelbutton1 = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton1); gtk_dialog_add_action_widget(GTK_DIALOG(stylesheetdialog), cancelbutton1, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton1), true); okbutton = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton); gtk_dialog_add_action_widget(GTK_DIALOG(stylesheetdialog), okbutton, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton), true); g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(on_okbutton_clicked), gpointer(this)); g_signal_connect((gpointer) radiobutton_id, "toggled", G_CALLBACK(on_style_type_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_paragraph, "toggled", G_CALLBACK(on_style_type_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_inline, "toggled", G_CALLBACK(on_style_type_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_chapter, "toggled", G_CALLBACK(on_style_type_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_verse, "toggled", G_CALLBACK(on_style_type_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_footendnote, "toggled", G_CALLBACK(on_style_type_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_crossreference, "toggled", G_CALLBACK(on_style_type_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_peripheral, "toggled", G_CALLBACK(on_style_type_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_picture, "toggled", G_CALLBACK(on_style_type_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_pagebreak, "toggled", G_CALLBACK(on_style_type_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_table_element, "toggled", G_CALLBACK(on_style_type_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_wordlist_element, "toggled", G_CALLBACK(on_style_type_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_footnote, "toggled", G_CALLBACK(on_radiobutton_note_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_endnote, "toggled", G_CALLBACK(on_radiobutton_note_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_note_content_standard, "toggled", G_CALLBACK(on_radiobutton_note_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_note_content, "toggled", G_CALLBACK(on_radiobutton_note_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_note_content_endmarker, "toggled", G_CALLBACK(on_radiobutton_note_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_note_paragraph, "toggled", G_CALLBACK(on_radiobutton_note_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_xref, "toggled", G_CALLBACK(on_radiobutton_xref_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_xref_content_standard, "toggled", G_CALLBACK(on_radiobutton_xref_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_xref_content, "toggled", G_CALLBACK(on_radiobutton_xref_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_xref_content_endmarker, "toggled", G_CALLBACK(on_radiobutton_xref_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_id_book, "toggled", G_CALLBACK(on_radiobutton_identifier_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_id_encoding, "toggled", G_CALLBACK(on_radiobutton_identifier_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_id_comment, "toggled", G_CALLBACK(on_radiobutton_identifier_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_id_running_header, "toggled", G_CALLBACK(on_radiobutton_identifier_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_is_long_toc_text, "toggled", G_CALLBACK(on_radiobutton_identifier_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_is_short_toc_text, "toggled", G_CALLBACK(on_radiobutton_identifier_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_is_book_abbrev, "toggled", G_CALLBACK(on_radiobutton_identifier_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_table_sub_new_row, "toggled", G_CALLBACK(on_checkbutton_table_element_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_table_sub_heading, "toggled", G_CALLBACK(on_checkbutton_table_element_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_table_sub_cell, "toggled", G_CALLBACK(on_checkbutton_table_element_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_subtype_wordlist_glossary_dictionary_entry, "toggled", G_CALLBACK(on_radiobutton_subtype_wordlist_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_subtype_hebrew_wordlist_entry, "toggled", G_CALLBACK(on_radiobutton_subtype_wordlist_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_subtype_greek_wordlist_entry, "toggled", G_CALLBACK(on_radiobutton_subtype_wordlist_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_subtype_subject_index_entry, "toggled", G_CALLBACK(on_radiobutton_subtype_wordlist_toggled), gpointer(this)); gtk_label_set_mnemonic_widget(GTK_LABEL(label37), entryname); gtk_label_set_mnemonic_widget(GTK_LABEL(label36), textview1); gtk_widget_grab_default(okbutton); // Display the style. set_gui(); new DialogAutoScaler (stylesheetdialog, G_MAXINT); } StylesheetDialog::~StylesheetDialog() { gtk_widget_destroy(stylesheetdialog); } int StylesheetDialog::run() { return gtk_dialog_run(GTK_DIALOG(stylesheetdialog)); } void StylesheetDialog::on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((StylesheetDialog *) user_data)->on_ok(); } void StylesheetDialog::on_ok() { save_style(); name = gtk_entry_get_text(GTK_ENTRY(entryname)); } void StylesheetDialog::on_style_type_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((StylesheetDialog *) user_data)->on_style_type(togglebutton); } void StylesheetDialog::on_style_type(GtkToggleButton * togglebutton) { // Set this togglebutton as the widget that gets activated on the shortcut. gtk_label_set_mnemonic_widget(GTK_LABEL(label21), GTK_WIDGET(togglebutton)); // Destroy any optional widgets. destroy_optional_widgets(); // Get the type of the style. StyleType type = get_styletype(); switch (type) { case stIdentifier: case stNotUsedComment: case stNotUsedRunningHeader: { // Notebook subtype // 0: hidden // 1: footnote/endnote // 2: crossreference // 3: paragraph // 4: peripheral // 5: identifier gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook_subtype), 5); on_radiobutton_identifier(); break; } case stStartsParagraph: { gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook_subtype), 3); fontsize_points_create(); italic_simple_create(); bold_simple_create(); underline_simple_create(); smallcaps_simple_create(); paragraph_create(NULL, false); span_columns_create(); break; } case stInlineText: { gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook_subtype), 0); italic_bold_underline_smallcaps_extended_create(); colour_create(); superscript_create(); break; } case stChapterNumber: { gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook_subtype), 0); fontsize_points_create(); italic_simple_create(); bold_simple_create(); underline_simple_create(); smallcaps_simple_create(); paragraph_create("chapter", false); span_columns_create(); print_chapter_at_first_verse_create(); print_in_running_header_create(); break; } case stVerseNumber: { gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook_subtype), 0); italic_bold_underline_smallcaps_extended_create(); colour_create(); superscript_create(); restarts_paragraph_create(); print_create(); break; } case stFootEndNote: { on_radiobutton_note(); break; } case stCrossreference: { on_radiobutton_xref(); break; } case stPeripheral: { gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook_subtype), 4); break; } case stPicture: { gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook_subtype), 0); break; } case stPageBreak: { gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook_subtype), 0); break; } case stTableElement: { gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook_subtype), 6); break; } case stWordlistElement: { gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook_subtype), 7); wordlist_add_text_create(); break; } } } void StylesheetDialog::on_alignment_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((StylesheetDialog *) user_data)->on_alignment(togglebutton); } void StylesheetDialog::on_alignment(GtkToggleButton * togglebutton) { // Set this togglebutton as the widget that gets activated on the shortcut. gtk_label_set_mnemonic_widget(GTK_LABEL(label10), GTK_WIDGET(togglebutton)); } void StylesheetDialog::set_gui() { // Get all available styles in this stylesheet. vector < Style > styles; stylesheet_get_styles(mystylesheet, styles); // Get the style we now display. int pointer = stylesheet_style_get_pointer(styles, mystyle); if (pointer >= 0) { // Store values in the object. fontsize_points = styles[pointer].fontsize; italic = styles[pointer].italic; bold = styles[pointer].bold; underline = styles[pointer].underline; smallcaps = styles[pointer].smallcaps; superscript = styles[pointer].superscript; justification = styles[pointer].justification; spacebefore = styles[pointer].spacebefore; spaceafter = styles[pointer].spaceafter; leftmargin = styles[pointer].leftmargin; rightmargin = styles[pointer].rightmargin; firstlineindent = styles[pointer].firstlineindent; spancolumns = styles[pointer].spancolumns; color = styles[pointer].color; print = styles[pointer].print; userbool1 = styles[pointer].userbool1; userbool2 = styles[pointer].userbool2; userbool3 = styles[pointer].userbool3; userint1 = styles[pointer].userint1; userint2 = styles[pointer].userint2; userint3 = styles[pointer].userint3; userstring1 = styles[pointer].userstring1; userstring2 = styles[pointer].userstring2; userstring3 = styles[pointer].userstring3; // Display information about this style. ustring info; info = "\\" + mystyle; gtk_label_set_text(GTK_LABEL(labelstyle), info.c_str()); gtk_entry_set_text(GTK_ENTRY(entryname), styles[pointer].name.c_str()); gtk_text_buffer_set_text(gtk_text_view_get_buffer(GTK_TEXT_VIEW(textview1)), styles[pointer].info.c_str(), -1); // Set publication information. GtkWidget *togglebutton = NULL; switch (styles[pointer].type) { case stIdentifier: case stNotUsedComment: case stNotUsedRunningHeader: togglebutton = radiobutton_id; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_id), true); gtk_label_set_mnemonic_widget(GTK_LABEL(label21), radiobutton_id); break; case stStartsParagraph: togglebutton = radiobutton_paragraph; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_paragraph), true); gtk_label_set_mnemonic_widget(GTK_LABEL(label21), radiobutton_paragraph); break; case stInlineText: togglebutton = radiobutton_inline; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_inline), true); gtk_label_set_mnemonic_widget(GTK_LABEL(label21), radiobutton_inline); break; case stChapterNumber: togglebutton = radiobutton_chapter; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_chapter), true); gtk_label_set_mnemonic_widget(GTK_LABEL(label21), radiobutton_chapter); break; case stVerseNumber: togglebutton = radiobutton_verse; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_verse), true); gtk_label_set_mnemonic_widget(GTK_LABEL(label21), radiobutton_verse); break; case stFootEndNote: togglebutton = radiobutton_footendnote; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_footendnote), true); gtk_label_set_mnemonic_widget(GTK_LABEL(label21), radiobutton_footendnote); break; case stCrossreference: togglebutton = radiobutton_crossreference; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_crossreference), true); gtk_label_set_mnemonic_widget(GTK_LABEL(label21), radiobutton_crossreference); break; case stPeripheral: togglebutton = radiobutton_peripheral; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_peripheral), true); gtk_label_set_mnemonic_widget(GTK_LABEL(label21), radiobutton_peripheral); break; case stPicture: togglebutton = radiobutton_picture; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_picture), true); gtk_label_set_mnemonic_widget(GTK_LABEL(label21), radiobutton_picture); break; case stPageBreak: togglebutton = radiobutton_pagebreak; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_pagebreak), true); gtk_label_set_mnemonic_widget(GTK_LABEL(label21), radiobutton_pagebreak); break; case stTableElement: togglebutton = radiobutton_table_element; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_table_element), true); gtk_label_set_mnemonic_widget(GTK_LABEL(label21), radiobutton_table_element); break; case stWordlistElement: togglebutton = radiobutton_wordlist_element; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_wordlist_element), true); gtk_label_set_mnemonic_widget(GTK_LABEL(label21), radiobutton_wordlist_element); break; } if (togglebutton) { on_style_type(GTK_TOGGLE_BUTTON(togglebutton)); set_subtype(styles[pointer].type, styles[pointer].subtype); } } } void StylesheetDialog::save_style() { // Destroy relevant widgets, so saving their value. destroy_optional_widgets(); // Get the type of this style. StyleType type = get_styletype(); // Get remaining value of this style. ustring info; GtkTextBuffer *buffer; buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(textview1)); GtkTextIter startiter; GtkTextIter enditer; gtk_text_buffer_get_start_iter(buffer, &startiter); gtk_text_buffer_get_end_iter(buffer, &enditer); info = gtk_text_buffer_get_text(GTK_TEXT_BUFFER(buffer), &startiter, &enditer, false); info = trim(info); // Save this style. stylesheet_save_style(mystylesheet, mystyle, gtk_entry_get_text(GTK_ENTRY(entryname)), info, type, get_subtype(), fontsize_points, italic, bold, underline, smallcaps, superscript, justification, spacebefore, spaceafter, leftmargin, rightmargin, firstlineindent, spancolumns, color, print, userbool1, userbool2, userbool3, userint1, userint2, userint3, userstring1, userstring2, userstring3); } void StylesheetDialog::set_justification(const ustring & justification) // Sets the GUI. { if (justification == CENTER) { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_center), true); on_alignment(GTK_TOGGLE_BUTTON(radiobutton_center)); } else if (justification == RIGHT) { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_right), true); on_alignment(GTK_TOGGLE_BUTTON(radiobutton_right)); } else if (justification == JUSTIFIED) { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_full), true); on_alignment(GTK_TOGGLE_BUTTON(radiobutton_full)); } else { // Defaults to left. gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_left), true); on_alignment(GTK_TOGGLE_BUTTON(radiobutton_left)); } } ustring StylesheetDialog::get_justification() // Get the string that indicates the justification, from the GUI. { ustring result; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_center))) { result = CENTER; } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_right))) { result = RIGHT; } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_full))) { result = JUSTIFIED; } else { // Defaults to left. result = LEFT; } return result; } void StylesheetDialog::set_italic() { if (italic == ON) { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_italics_on), true); on_radiobutton_italic(radiobutton_italics_on); } else if (italic == INHERIT) { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_italics_inherit), true); on_radiobutton_italic(radiobutton_italics_inherit); } else if (italic == TOGGLE) { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_italics_toggle), true); on_radiobutton_italic(radiobutton_italics_toggle); } else { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_italics_off), true); on_radiobutton_italic(radiobutton_italics_off); } } ustring StylesheetDialog::get_italic() { // Defaults to off. ustring result = OFF; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_italics_on))) { result = ON; } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_italics_inherit))) { result = INHERIT; } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_italics_toggle))) { result = TOGGLE; } return result; } void StylesheetDialog::set_bold() { if (bold == ON) { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_bold_on), true); on_radiobutton_bold(radiobutton_bold_on); } else if (bold == INHERIT) { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_bold_inherit), true); on_radiobutton_bold(radiobutton_bold_inherit); } else if (bold == TOGGLE) { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_bold_toggle), true); on_radiobutton_bold(radiobutton_bold_toggle); } else { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_bold_off), true); on_radiobutton_bold(radiobutton_bold_off); } } ustring StylesheetDialog::get_bold() { // Defaults to off. ustring result = OFF; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_bold_on))) { result = ON; } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_bold_inherit))) { result = INHERIT; } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_bold_toggle))) { result = TOGGLE; } return result; } void StylesheetDialog::set_underline() { if (underline == ON) { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_underline_on), true); on_radiobutton_underline(radiobutton_underline_on); } else if (underline == INHERIT) { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_underline_inherit), true); on_radiobutton_underline(radiobutton_underline_inherit); } else if (underline == TOGGLE) { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_underline_toggle), true); on_radiobutton_underline(radiobutton_underline_toggle); } else { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_underline_off), true); on_radiobutton_underline(radiobutton_underline_off); } } ustring StylesheetDialog::get_underline() { // Defaults to off. ustring result = OFF; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_underline_on))) { result = ON; } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_underline_inherit))) { result = INHERIT; } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_underline_toggle))) { result = TOGGLE; } return result; } void StylesheetDialog::set_small_caps() { if (smallcaps == ON) { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_small_caps_on), true); on_radiobutton_small_caps(radiobutton_small_caps_on); } else if (smallcaps == INHERIT) { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_small_caps_inherit), true); on_radiobutton_small_caps(radiobutton_small_caps_inherit); } else if (smallcaps == TOGGLE) { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_small_caps_toggle), true); on_radiobutton_small_caps(radiobutton_small_caps_toggle); } else { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_small_caps_off), true); on_radiobutton_small_caps(radiobutton_small_caps_off); } } ustring StylesheetDialog::get_small_caps() { // Defaults to off. ustring result = OFF; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_small_caps_on))) { result = ON; } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_small_caps_inherit))) { result = INHERIT; } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_small_caps_toggle))) { result = TOGGLE; } return result; } StyleType StylesheetDialog::get_styletype() { StyleType type = stNotUsedComment; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_id))) { type = stIdentifier; } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_paragraph))) { type = stStartsParagraph; } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_inline))) { type = stInlineText; } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_chapter))) { type = stChapterNumber; } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_verse))) { type = stVerseNumber; } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_footendnote))) { type = stFootEndNote; } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_crossreference))) { type = stCrossreference; } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_peripheral))) { type = stPeripheral; } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_picture))) { type = stPicture; } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_pagebreak))) { type = stPageBreak; } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_table_element))) { type = stTableElement; } else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_wordlist_element))) { type = stWordlistElement; } return type; } void StylesheetDialog::on_radiobutton_italic_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((StylesheetDialog *) user_data)->on_radiobutton_italic(GTK_WIDGET(togglebutton)); } void StylesheetDialog::on_radiobutton_italic(GtkWidget * togglebutton) { gtk_label_set_mnemonic_widget(GTK_LABEL(label40), togglebutton); } void StylesheetDialog::on_radiobutton_bold_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((StylesheetDialog *) user_data)->on_radiobutton_bold(GTK_WIDGET(togglebutton)); } void StylesheetDialog::on_radiobutton_bold(GtkWidget * togglebutton) { gtk_label_set_mnemonic_widget(GTK_LABEL(label41), togglebutton); } void StylesheetDialog::on_radiobutton_underline_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((StylesheetDialog *) user_data)->on_radiobutton_underline(GTK_WIDGET(togglebutton)); } void StylesheetDialog::on_radiobutton_underline(GtkWidget * togglebutton) { gtk_label_set_mnemonic_widget(GTK_LABEL(label42), togglebutton); } void StylesheetDialog::on_radiobutton_small_caps_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((StylesheetDialog *) user_data)->on_radiobutton_small_caps(GTK_WIDGET(togglebutton)); } void StylesheetDialog::on_radiobutton_small_caps(GtkWidget * togglebutton) { gtk_label_set_mnemonic_widget(GTK_LABEL(label_small_caps), togglebutton); } void StylesheetDialog::set_subtype(StyleType maintype, int subtype) { switch (maintype) { case stIdentifier: case stNotUsedComment: case stNotUsedRunningHeader: { IdentifierType identifiertype = (IdentifierType) subtype; switch (identifiertype) { case itBook: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_id_book), true); break; case itEncoding: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_id_encoding), true); break; case itComment: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_id_comment), true); break; case itRunningHeader: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_id_running_header), true); break; case itLongTOC: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_is_long_toc_text), true); break; case itShortTOC: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_is_short_toc_text), true); break; case itBookAbbrev: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_is_book_abbrev), true); break; case itChapterLabel: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_is_chapter_label), true); break; case itPublishedChapterMarker: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_is_published_chapter_marker), true); break; case itCommentWithEndmarker: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_id_comment_with_endmarker), true); break; } break; } case stStartsParagraph: { ParagraphType paragraphtype = (ParagraphType) subtype; switch (paragraphtype) { case ptMainTitle: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_paragraph_type_main_title), true); break; case ptSubTitle: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_paragraph_type_subtitle), true); break; case ptSectionHeading: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_paragraph_type_section_heading), true); break; case ptNormalParagraph: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_paragraph_type_text), true); break; } break; } case stInlineText: break; case stChapterNumber: break; case stVerseNumber: break; case stFootEndNote: { FootEndNoteType footnotetype = (FootEndNoteType) subtype; switch (footnotetype) { case fentFootnote: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_footnote), true); break; case fentEndnote: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_endnote), true); break; case fentStandardContent: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_note_content_standard), true); break; case fentContent: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_note_content), true); break; case fentContentWithEndmarker: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_note_content_endmarker), true); break; case fentParagraph: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_note_paragraph), true); break; } break; } case stCrossreference: { CrossreferenceType crossreferencetype = (CrossreferenceType) subtype; switch (crossreferencetype) { case ctCrossreference: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_xref), true); break; case ctStandardContent: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_xref_content_standard), true); break; case ctContent: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_xref_content), true); break; case ctContentWithEndmarker: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_xref_content_endmarker), true); break; } break; } case stPeripheral: { PeripheralType peripheraltype = (PeripheralType) subtype; switch (peripheraltype) { case ptPublication: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_peripheral_pub), true); break; case ptTableOfContents: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_peripheral_toc), true); break; case ptPreface: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_peripheral_pref), true); break; case ptIntroduction: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_peripheral_intro), true); break; case ptGlossary: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_peripheral_conc), true); break; case ptConcordance: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_peripheral_glo), true); break; case ptIndex: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_peripheral_idx), true); break; case ptMapIndex: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_peripheral_maps), true); break; case ptCover: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_peripheral_cov), true); break; case ptSpine: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_peripheral_spine), true); break; } break; } case stPicture: break; case stPageBreak: break; case stTableElement: { TableElementType table_element_type = (TableElementType) subtype; switch (table_element_type) { case tetRow: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_table_sub_new_row), true); break; case tetHeading: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_table_sub_heading), true); break; case tetCell: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_table_sub_cell), true); break; } break; } case stWordlistElement: { WordListElementType wordlist_element_type = (WordListElementType) subtype; switch (wordlist_element_type) { case wltWordlistGlossaryDictionary: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_subtype_wordlist_glossary_dictionary_entry), true); break; case wltHebrewWordlistEntry: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_subtype_hebrew_wordlist_entry), true); break; case wltGreekWordlistEntry: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_subtype_greek_wordlist_entry), true); break; case wltSubjectIndexEntry: gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_subtype_subject_index_entry), true); break; } break; } break; } } int StylesheetDialog::get_subtype() { int subtype = 0; switch (gtk_notebook_get_current_page(GTK_NOTEBOOK(notebook_subtype))) { case 0: // Subtype is not relevant here. break; case 1: // Get subtype for footnotes and endnotes. if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_footnote))) subtype = fentFootnote; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_endnote))) subtype = fentEndnote; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_note_content))) subtype = fentContent; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_note_content_standard))) subtype = fentStandardContent; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_note_content_endmarker))) subtype = fentContentWithEndmarker; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_note_paragraph))) subtype = fentParagraph; break; case 2: // Get subtype for crossreferences. if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_xref))) subtype = ctCrossreference; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_xref_content_standard))) subtype = ctStandardContent; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_xref_content))) subtype = ctContent; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_xref_content_endmarker))) subtype = ctContentWithEndmarker; break; case 3: // Get subtype for paragraphs. if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_paragraph_type_main_title))) subtype = ptMainTitle; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_paragraph_type_subtitle))) subtype = ptSubTitle; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_paragraph_type_section_heading))) subtype = ptSectionHeading; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_paragraph_type_text))) subtype = ptNormalParagraph; break; case 4: // Get subtype for peripherals. if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_peripheral_pub))) subtype = ptPublication; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_peripheral_toc))) subtype = ptTableOfContents; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_peripheral_pref))) subtype = ptPreface; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_peripheral_intro))) subtype = ptIntroduction; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_peripheral_glo))) subtype = ptGlossary; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_peripheral_conc))) subtype = ptConcordance; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_peripheral_idx))) subtype = ptIndex; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_peripheral_maps))) subtype = ptMapIndex; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_peripheral_cov))) subtype = ptCover; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_peripheral_spine))) subtype = ptSpine; break; case 5: // Get subtype for identifiers. if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_id_book))) subtype = itBook; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_id_encoding))) subtype = itEncoding; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_id_comment))) subtype = itComment; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_id_running_header))) subtype = itRunningHeader; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_is_long_toc_text))) subtype = itLongTOC; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_is_short_toc_text))) subtype = itShortTOC; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_is_book_abbrev))) subtype = itBookAbbrev; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_is_chapter_label))) subtype = itChapterLabel; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_is_published_chapter_marker))) subtype = itPublishedChapterMarker; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_id_comment_with_endmarker))) subtype = itCommentWithEndmarker; break; case 6: // Get subtype for table elements. if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_table_sub_new_row))) subtype = tetRow; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_table_sub_heading))) subtype = tetHeading; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_table_sub_cell))) subtype = tetCell; break; case 7: // Get subtype for wordlist elements. if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_subtype_wordlist_glossary_dictionary_entry))) subtype = wltWordlistGlossaryDictionary; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_subtype_hebrew_wordlist_entry))) subtype = wltHebrewWordlistEntry; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_subtype_greek_wordlist_entry))) subtype = wltGreekWordlistEntry; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_subtype_subject_index_entry))) subtype = wltSubjectIndexEntry; break; } return subtype; } void StylesheetDialog::on_radiobutton_note_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((StylesheetDialog *) user_data)->on_radiobutton_note(); } void StylesheetDialog::on_radiobutton_note() { // Destroy any optional widgets. destroy_optional_widgets(); // Show/hide notebooks with visual settings. FootEndNoteType subtype = (FootEndNoteType) get_subtype(); switch (subtype) { case fentFootnote: gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook_subtype), 1); italic_bold_underline_smallcaps_extended_create(); superscript_create(); note_numbering_type_create(); note_numering_restart_create(); print_create(); break; case fentEndnote: gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook_subtype), 1); italic_bold_underline_smallcaps_extended_create(); superscript_create(); note_numbering_type_create(); end_note_placement_create(); print_create(); break; case fentStandardContent: gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook_subtype), 1); fontsize_points_create(); italic_simple_create(); bold_simple_create(); underline_simple_create(); smallcaps_simple_create(); superscript_create(); paragraph_create(NULL, true); apocrypha_create(); break; case fentContent: gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook_subtype), 1); italic_bold_underline_smallcaps_extended_create(); colour_create(); superscript_create(); apocrypha_create(); break; case fentContentWithEndmarker: gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook_subtype), 1); italic_bold_underline_smallcaps_extended_create(); colour_create(); superscript_create(); apocrypha_create(); break; case fentParagraph: gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook_subtype), 1); fontsize_points_create(); italic_simple_create(); bold_simple_create(); underline_simple_create(); smallcaps_simple_create(); superscript_create(); paragraph_create(NULL, true); apocrypha_create(); break; } } void StylesheetDialog::on_radiobutton_xref_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((StylesheetDialog *) user_data)->on_radiobutton_xref(); } void StylesheetDialog::on_radiobutton_xref() { // Destroy any optional widgets. destroy_optional_widgets(); // Show/hide notebooks with visual settings. CrossreferenceType subtype = (CrossreferenceType) get_subtype(); switch (subtype) { case ctCrossreference: gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook_subtype), 2); italic_bold_underline_smallcaps_extended_create(); superscript_create(); note_numbering_type_create(); note_numering_restart_create(); print_create(); break; case ctStandardContent: gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook_subtype), 2); fontsize_points_create(); italic_simple_create(); bold_simple_create(); underline_simple_create(); smallcaps_simple_create(); superscript_create(); paragraph_create(NULL, true); apocrypha_create(); break; case ctContent: case ctContentWithEndmarker: gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook_subtype), 2); italic_bold_underline_smallcaps_extended_create(); colour_create(); apocrypha_create(); break; } } void StylesheetDialog::destroy_optional_widgets() /* Store the values of the optional widgets, and destroy them. General strategy. - If a widget is not NULL, it means it is in use and we need to handle it. - Update all spin buttons to get the correct value in them after manual edit. If this were not done, manual changes in a spinbutton might get lost. - Extract the value and store it. - Destroy the top widget, which will destroy all its children as well. - Set the top widget to NULL. */ { // Fontsize in points. if (hbox2) { gtk_spin_button_update(GTK_SPIN_BUTTON(spinbuttonfontsize)); fontsize_points = gtk_spin_button_get_value(GTK_SPIN_BUTTON(spinbuttonfontsize)); gtk_widget_destroy(hbox2); hbox2 = NULL; } // Simple italic; if (checkbutton_italic) { italic = OFF; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_italic))) italic = ON; gtk_widget_destroy(checkbutton_italic); checkbutton_italic = NULL; } // Simple bold; if (checkbutton_bold) { bold = OFF; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_bold))) bold = ON; gtk_widget_destroy(checkbutton_bold); checkbutton_bold = NULL; } // Simple underline; if (checkbutton_underline) { underline = OFF; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_underline))) underline = ON; gtk_widget_destroy(checkbutton_underline); checkbutton_underline = NULL; } // Simple small caps; if (checkbutton_small_caps) { smallcaps = OFF; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_small_caps))) smallcaps = ON; gtk_widget_destroy(checkbutton_small_caps); checkbutton_small_caps = NULL; } // Extended italic/bold/underline/small caps. if (table2) { italic = get_italic(); bold = get_bold(); underline = get_underline(); smallcaps = get_small_caps(); gtk_widget_destroy(table2); table2 = NULL; } // Superscript if (checkbutton_superscript) { superscript = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_superscript)); gtk_widget_destroy(checkbutton_superscript); checkbutton_superscript = NULL; } // Paragraph if (vbox4) { gtk_spin_button_update(GTK_SPIN_BUTTON(spinbutton_before)); gtk_spin_button_update(GTK_SPIN_BUTTON(spinbutton_after)); gtk_spin_button_update(GTK_SPIN_BUTTON(spinbutton_left)); gtk_spin_button_update(GTK_SPIN_BUTTON(spinbutton_right)); gtk_spin_button_update(GTK_SPIN_BUTTON(spinbutton_first)); justification = get_justification(); spacebefore = gtk_spin_button_get_value(GTK_SPIN_BUTTON(spinbutton_before)); spaceafter = gtk_spin_button_get_value(GTK_SPIN_BUTTON(spinbutton_after)); leftmargin = gtk_spin_button_get_value(GTK_SPIN_BUTTON(spinbutton_left)); rightmargin = gtk_spin_button_get_value(GTK_SPIN_BUTTON(spinbutton_right)); firstlineindent = gtk_spin_button_get_value(GTK_SPIN_BUTTON(spinbutton_first)); gtk_widget_destroy(vbox4); vbox4 = NULL; } // Span columns if (checkbutton_span) { spancolumns = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_span)), gtk_widget_destroy(checkbutton_span); checkbutton_span = NULL; } // Apocrypha if (checkbutton_apocrypha) { userbool1 = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_apocrypha)); gtk_widget_destroy(checkbutton_apocrypha); checkbutton_apocrypha = NULL; } // Note numbering type if (vbox10) { if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_note_numbering_1))) userint1 = nntNumerical; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_note_numbering_a))) userint1 = nntAlphabetical; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_note_numbering_user))) userint1 = nntUserDefined; userstring1 = gtk_entry_get_text(GTK_ENTRY(entry_note_numbering)); gtk_widget_destroy(vbox10); vbox10 = NULL; } // Note numbering restart if (hbox10) { if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_note_numbering_restart_never))) userint2 = nnrtNever; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_note_numbering_restart_book))) userint2 = nnrtBook; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_note_numbering_restart_chapter))) userint2 = nnrtChapter; gtk_widget_destroy(hbox10); hbox10 = NULL; } // Printing of chapter number at first verse. if (print_chapter_at_first_verse) { userbool1 = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(print_chapter_at_first_verse)); gtk_widget_destroy(print_chapter_at_first_verse); print_chapter_at_first_verse = NULL; } // Whether and how to start a new book on a new page. if (hbox_id) { userbool1 = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_id_newpage)); userbool2 = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_id_oddpage)); gtk_widget_destroy(hbox_id); hbox_id = NULL; } // Save the color. if (hbox_colour) { GdkColor colour; gtk_color_button_get_color(GTK_COLOR_BUTTON(button_colour), &colour); color = color_gdk_to_decimal(&colour); gtk_widget_destroy(hbox_colour); hbox_colour = NULL; } // Save the print property. if (checkbutton_print) { print = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_print)); gtk_widget_destroy(checkbutton_print); checkbutton_print = NULL; } // Endnote placement: save. if (hbox13) { if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_print_endnotes_after_book))) userint2 = eptAfterBook; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_print_endnotes_after_everything_else))) userint2 = eptAfterEverything; if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_print_endnotes_at_marker))) userint2 = eptAtMarker; userstring2 = gtk_entry_get_text(GTK_ENTRY(entry_print_endnotes_marker)); gtk_widget_destroy(hbox13); hbox13 = NULL; } // Table column number: save. if (hbox15) { userint1 = gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(spinbutton_column_number)); gtk_widget_destroy(hbox15); hbox15 = NULL; } // Printing of chapter number in running headers. if (checkbutton_print_in_running_header_left) { userbool2 = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_print_in_running_header_left)); gtk_widget_destroy(checkbutton_print_in_running_header_left); checkbutton_print_in_running_header_left = NULL; userbool3 = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_print_in_running_header_right)); gtk_widget_destroy(checkbutton_print_in_running_header_right); } // Text added after wordlist entry. if (hbox16) { userstring1 = gtk_entry_get_text(GTK_ENTRY(entry_wordlist_addition)); gtk_widget_destroy(hbox16); hbox16 = NULL; } // Save the restart-paragraph property. if (checkbutton_restarts_paragraph) { userbool1 = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_restarts_paragraph)); gtk_widget_destroy(checkbutton_restarts_paragraph); checkbutton_restarts_paragraph = NULL; } } void StylesheetDialog::fontsize_points_create() { hbox2 = gtk_hbox_new(FALSE, 0); gtk_widget_show(hbox2); gtk_box_pack_start(GTK_BOX(vbox6), hbox2, TRUE, TRUE, 0); label8 = gtk_label_new_with_mnemonic("_Font size"); gtk_widget_show(label8); gtk_box_pack_start(GTK_BOX(hbox2), label8, FALSE, FALSE, 0); gtk_misc_set_padding(GTK_MISC(label8), 4, 0); spinbuttonfontsize_adj = gtk_adjustment_new(12, 5, 60, 0.1, 1, 0); spinbuttonfontsize = gtk_spin_button_new(GTK_ADJUSTMENT(spinbuttonfontsize_adj), 1, 1); gtk_widget_show(spinbuttonfontsize); gtk_box_pack_start(GTK_BOX(hbox2), spinbuttonfontsize, FALSE, FALSE, 0); label9 = gtk_label_new("points"); gtk_widget_show(label9); gtk_box_pack_start(GTK_BOX(hbox2), label9, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label9), 0, 0.5); gtk_misc_set_padding(GTK_MISC(label9), 4, 0); gtk_label_set_mnemonic_widget(GTK_LABEL(label8), spinbuttonfontsize); gtk_spin_button_set_value(GTK_SPIN_BUTTON(spinbuttonfontsize), fontsize_points); } void StylesheetDialog::italic_simple_create() { checkbutton_italic = gtk_check_button_new_with_mnemonic("_Italic"); gtk_widget_show(checkbutton_italic); gtk_box_pack_start(GTK_BOX(vbox6), checkbutton_italic, FALSE, FALSE, 0); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_italic), italic == ON); } void StylesheetDialog::bold_simple_create() { checkbutton_bold = gtk_check_button_new_with_mnemonic("_Bold"); gtk_widget_show(checkbutton_bold); gtk_box_pack_start(GTK_BOX(vbox6), checkbutton_bold, FALSE, FALSE, 0); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_bold), bold == ON); } void StylesheetDialog::underline_simple_create() { checkbutton_underline = gtk_check_button_new_with_mnemonic("_Underline"); gtk_widget_show(checkbutton_underline); gtk_box_pack_start(GTK_BOX(vbox6), checkbutton_underline, FALSE, FALSE, 0); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_underline), underline == ON); } void StylesheetDialog::smallcaps_simple_create() { checkbutton_small_caps = gtk_check_button_new_with_mnemonic("S_mall caps"); gtk_widget_show(checkbutton_small_caps); gtk_box_pack_start(GTK_BOX(vbox6), checkbutton_small_caps, FALSE, FALSE, 0); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_small_caps), smallcaps == ON); } void StylesheetDialog::italic_bold_underline_smallcaps_extended_create() { table2 = gtk_table_new(4, 5, FALSE); gtk_widget_show(table2); gtk_box_pack_start(GTK_BOX(vbox6), table2, TRUE, TRUE, 0); gtk_table_set_row_spacings(GTK_TABLE(table2), 1); gtk_table_set_col_spacings(GTK_TABLE(table2), 10); label40 = gtk_label_new_with_mnemonic("_Italic"); gtk_widget_show(label40); gtk_table_attach(GTK_TABLE(table2), label40, 0, 1, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label40), 0, 0.5); label41 = gtk_label_new_with_mnemonic("_Bold"); gtk_widget_show(label41); gtk_table_attach(GTK_TABLE(table2), label41, 0, 1, 1, 2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label41), 0, 0.5); label42 = gtk_label_new_with_mnemonic("_Underline"); gtk_widget_show(label42); gtk_table_attach(GTK_TABLE(table2), label42, 0, 1, 2, 3, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label42), 0, 0.5); label_small_caps = gtk_label_new_with_mnemonic("S_mall caps"); gtk_widget_show(label_small_caps); gtk_table_attach(GTK_TABLE(table2), label_small_caps, 0, 1, 3, 4, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label_small_caps), 0, 0.5); GSList *radiobutton_italics_group = NULL; GSList *radiobutton_bold_group = NULL; GSList *radiobutton_underline_group = NULL; GSList *radiobutton_small_caps_group = NULL; radiobutton_italics_off = gtk_radio_button_new_with_mnemonic(NULL, "Off"); gtk_widget_show(radiobutton_italics_off); gtk_table_attach(GTK_TABLE(table2), radiobutton_italics_off, 1, 2, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_italics_off), radiobutton_italics_group); radiobutton_italics_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_italics_off)); radiobutton_italics_on = gtk_radio_button_new_with_mnemonic(NULL, "On"); gtk_widget_show(radiobutton_italics_on); gtk_table_attach(GTK_TABLE(table2), radiobutton_italics_on, 2, 3, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_italics_on), radiobutton_italics_group); radiobutton_italics_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_italics_on)); radiobutton_italics_inherit = gtk_radio_button_new_with_mnemonic(NULL, "Inherit"); gtk_widget_show(radiobutton_italics_inherit); gtk_table_attach(GTK_TABLE(table2), radiobutton_italics_inherit, 3, 4, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_italics_inherit), radiobutton_italics_group); radiobutton_italics_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_italics_inherit)); radiobutton_italics_toggle = gtk_radio_button_new_with_mnemonic(NULL, "Toggle"); gtk_widget_show(radiobutton_italics_toggle); gtk_table_attach(GTK_TABLE(table2), radiobutton_italics_toggle, 4, 5, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_italics_toggle), radiobutton_italics_group); radiobutton_italics_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_italics_toggle)); radiobutton_bold_off = gtk_radio_button_new_with_mnemonic(NULL, "Off"); gtk_widget_show(radiobutton_bold_off); gtk_table_attach(GTK_TABLE(table2), radiobutton_bold_off, 1, 2, 1, 2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_bold_off), radiobutton_bold_group); radiobutton_bold_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_bold_off)); radiobutton_bold_on = gtk_radio_button_new_with_mnemonic(NULL, "On"); gtk_widget_show(radiobutton_bold_on); gtk_table_attach(GTK_TABLE(table2), radiobutton_bold_on, 2, 3, 1, 2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_bold_on), radiobutton_bold_group); radiobutton_bold_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_bold_on)); radiobutton_bold_inherit = gtk_radio_button_new_with_mnemonic(NULL, "Inherit"); gtk_widget_show(radiobutton_bold_inherit); gtk_table_attach(GTK_TABLE(table2), radiobutton_bold_inherit, 3, 4, 1, 2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_bold_inherit), radiobutton_bold_group); radiobutton_bold_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_bold_inherit)); radiobutton_bold_toggle = gtk_radio_button_new_with_mnemonic(NULL, "Toggle"); gtk_widget_show(radiobutton_bold_toggle); gtk_table_attach(GTK_TABLE(table2), radiobutton_bold_toggle, 4, 5, 1, 2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_bold_toggle), radiobutton_bold_group); radiobutton_bold_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_bold_toggle)); radiobutton_underline_off = gtk_radio_button_new_with_mnemonic(NULL, "Off"); gtk_widget_show(radiobutton_underline_off); gtk_table_attach(GTK_TABLE(table2), radiobutton_underline_off, 1, 2, 2, 3, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_underline_off), radiobutton_underline_group); radiobutton_underline_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_underline_off)); radiobutton_underline_on = gtk_radio_button_new_with_mnemonic(NULL, "On"); gtk_widget_show(radiobutton_underline_on); gtk_table_attach(GTK_TABLE(table2), radiobutton_underline_on, 2, 3, 2, 3, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_underline_on), radiobutton_underline_group); radiobutton_underline_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_underline_on)); radiobutton_underline_inherit = gtk_radio_button_new_with_mnemonic(NULL, "Inherit"); gtk_widget_show(radiobutton_underline_inherit); gtk_table_attach(GTK_TABLE(table2), radiobutton_underline_inherit, 3, 4, 2, 3, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_underline_inherit), radiobutton_underline_group); radiobutton_underline_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_underline_inherit)); radiobutton_underline_toggle = gtk_radio_button_new_with_mnemonic(NULL, "Toggle"); gtk_widget_show(radiobutton_underline_toggle); gtk_table_attach(GTK_TABLE(table2), radiobutton_underline_toggle, 4, 5, 2, 3, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_underline_toggle), radiobutton_underline_group); radiobutton_underline_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_underline_toggle)); radiobutton_small_caps_off = gtk_radio_button_new_with_mnemonic(NULL, "Off"); gtk_widget_show(radiobutton_small_caps_off); gtk_table_attach(GTK_TABLE(table2), radiobutton_small_caps_off, 1, 2, 3, 4, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_small_caps_off), radiobutton_small_caps_group); radiobutton_small_caps_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_small_caps_off)); radiobutton_small_caps_on = gtk_radio_button_new_with_mnemonic(NULL, "On"); gtk_widget_show(radiobutton_small_caps_on); gtk_table_attach(GTK_TABLE(table2), radiobutton_small_caps_on, 2, 3, 3, 4, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_small_caps_on), radiobutton_small_caps_group); radiobutton_small_caps_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_small_caps_on)); radiobutton_small_caps_inherit = gtk_radio_button_new_with_mnemonic(NULL, "Inherit"); gtk_widget_show(radiobutton_small_caps_inherit); gtk_table_attach(GTK_TABLE(table2), radiobutton_small_caps_inherit, 3, 4, 3, 4, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_small_caps_inherit), radiobutton_small_caps_group); radiobutton_small_caps_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_small_caps_inherit)); radiobutton_small_caps_toggle = gtk_radio_button_new_with_mnemonic(NULL, "Toggle"); gtk_widget_show(radiobutton_small_caps_toggle); gtk_table_attach(GTK_TABLE(table2), radiobutton_small_caps_toggle, 4, 5, 3, 4, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_small_caps_toggle), radiobutton_small_caps_group); radiobutton_small_caps_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_small_caps_toggle)); g_signal_connect((gpointer) radiobutton_italics_off, "toggled", G_CALLBACK(on_radiobutton_italic_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_italics_on, "toggled", G_CALLBACK(on_radiobutton_italic_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_italics_inherit, "toggled", G_CALLBACK(on_radiobutton_italic_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_italics_toggle, "toggled", G_CALLBACK(on_radiobutton_italic_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_bold_off, "toggled", G_CALLBACK(on_radiobutton_bold_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_bold_on, "toggled", G_CALLBACK(on_radiobutton_bold_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_bold_inherit, "toggled", G_CALLBACK(on_radiobutton_bold_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_bold_toggle, "toggled", G_CALLBACK(on_radiobutton_bold_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_underline_off, "toggled", G_CALLBACK(on_radiobutton_underline_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_underline_on, "toggled", G_CALLBACK(on_radiobutton_underline_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_underline_inherit, "toggled", G_CALLBACK(on_radiobutton_underline_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_underline_toggle, "toggled", G_CALLBACK(on_radiobutton_underline_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_small_caps_off, "toggled", G_CALLBACK(on_radiobutton_small_caps_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_small_caps_on, "toggled", G_CALLBACK(on_radiobutton_small_caps_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_small_caps_inherit, "toggled", G_CALLBACK(on_radiobutton_small_caps_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_small_caps_toggle, "toggled", G_CALLBACK(on_radiobutton_small_caps_toggled), gpointer(this)); set_italic(); set_bold(); set_underline(); set_small_caps(); } void StylesheetDialog::superscript_create() { checkbutton_superscript = gtk_check_button_new_with_mnemonic("Su_perscript"); gtk_widget_show(checkbutton_superscript); gtk_box_pack_start(GTK_BOX(vbox6), checkbutton_superscript, FALSE, FALSE, 0); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_superscript), superscript); } void StylesheetDialog::paragraph_create(const gchar * label, bool grey_out_justify) /* Creates the paragraph settings. label: the label to use. By default it uses "paragraph", but if text is given here, it uses that label, e.g. "cell". */ { if (!label) label = (const gchar *)"paragraph"; ustring text; vbox4 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox4); gtk_box_pack_start(GTK_BOX(vbox6), vbox4, TRUE, TRUE, 0); hbox4 = gtk_hbox_new(FALSE, 10); gtk_widget_show(hbox4); gtk_box_pack_start(GTK_BOX(vbox4), hbox4, TRUE, TRUE, 0); label10 = gtk_label_new_with_mnemonic("Te_xt alignment"); gtk_widget_show(label10); gtk_box_pack_start(GTK_BOX(hbox4), label10, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label10), 0, 0.5); GSList *radiobutton_left_group = NULL; radiobutton_left = gtk_radio_button_new_with_mnemonic(NULL, "Left"); gtk_widget_show(radiobutton_left); gtk_box_pack_start(GTK_BOX(hbox4), radiobutton_left, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_left), radiobutton_left_group); radiobutton_left_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_left)); radiobutton_center = gtk_radio_button_new_with_mnemonic(NULL, "Center"); gtk_widget_show(radiobutton_center); gtk_box_pack_start(GTK_BOX(hbox4), radiobutton_center, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_center), radiobutton_left_group); radiobutton_left_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_center)); radiobutton_right = gtk_radio_button_new_with_mnemonic(NULL, "Right"); gtk_widget_show(radiobutton_right); gtk_box_pack_start(GTK_BOX(hbox4), radiobutton_right, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_right), radiobutton_left_group); radiobutton_left_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_right)); radiobutton_full = gtk_radio_button_new_with_mnemonic(NULL, "Justified"); gtk_widget_show(radiobutton_full); gtk_box_pack_start(GTK_BOX(hbox4), radiobutton_full, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_full), radiobutton_left_group); radiobutton_left_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_full)); if (grey_out_justify) gtk_widget_set_sensitive(radiobutton_full, false); table1 = gtk_table_new(5, 4, FALSE); gtk_widget_show(table1); gtk_box_pack_start(GTK_BOX(vbox4), table1, TRUE, TRUE, 0); gtk_table_set_row_spacings(GTK_TABLE(table1), 4); gtk_table_set_col_spacings(GTK_TABLE(table1), 4); text = "S_pace before "; text.append(label); label11 = gtk_label_new_with_mnemonic(text.c_str()); gtk_widget_show(label11); gtk_table_attach(GTK_TABLE(table1), label11, 0, 1, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label11), 1, 0.5); text = "Space afte_r "; text.append(label); label12 = gtk_label_new_with_mnemonic(text.c_str()); gtk_widget_show(label12); gtk_table_attach(GTK_TABLE(table1), label12, 0, 1, 1, 2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label12), 1, 0.5); label13 = gtk_label_new_with_mnemonic("_Left margin"); gtk_widget_show(label13); gtk_table_attach(GTK_TABLE(table1), label13, 0, 1, 2, 3, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label13), 1, 0.5); label14 = gtk_label_new_with_mnemonic("Ri_ght margin"); gtk_widget_show(label14); gtk_table_attach(GTK_TABLE(table1), label14, 0, 1, 3, 4, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label14), 1, 0.5); label15 = gtk_label_new_with_mnemonic("_1st Line indent"); gtk_widget_show(label15); gtk_table_attach(GTK_TABLE(table1), label15, 0, 1, 4, 5, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label15), 1, 0.5); label16 = gtk_label_new("mm"); gtk_widget_show(label16); gtk_table_attach(GTK_TABLE(table1), label16, 2, 3, 0, 1, (GtkAttachOptions) (0), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label16), 0, 0.5); label17 = gtk_label_new("mm"); gtk_widget_show(label17); gtk_table_attach(GTK_TABLE(table1), label17, 2, 3, 1, 2, (GtkAttachOptions) (0), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label17), 0, 0.5); label18 = gtk_label_new("mm"); gtk_widget_show(label18); gtk_table_attach(GTK_TABLE(table1), label18, 2, 3, 2, 3, (GtkAttachOptions) (0), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label18), 0, 0.5); label19 = gtk_label_new("mm"); gtk_widget_show(label19); gtk_table_attach(GTK_TABLE(table1), label19, 2, 3, 3, 4, (GtkAttachOptions) (0), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label19), 0, 0.5); label20 = gtk_label_new("mm"); gtk_widget_show(label20); gtk_table_attach(GTK_TABLE(table1), label20, 2, 3, 4, 5, (GtkAttachOptions) (0), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label20), 0, 0.5); spinbutton_first_adj = gtk_adjustment_new(0, -100, 100, 0.1, 1, 0); spinbutton_first = gtk_spin_button_new(GTK_ADJUSTMENT(spinbutton_first_adj), 1, 1); gtk_widget_show(spinbutton_first); gtk_table_attach(GTK_TABLE(table1), spinbutton_first, 1, 2, 4, 5, (GtkAttachOptions) (0), (GtkAttachOptions) (0), 0, 0); spinbutton_before_adj = gtk_adjustment_new(0, 0, 100, 0.1, 1, 0); spinbutton_before = gtk_spin_button_new(GTK_ADJUSTMENT(spinbutton_before_adj), 1, 1); gtk_widget_show(spinbutton_before); gtk_table_attach(GTK_TABLE(table1), spinbutton_before, 1, 2, 0, 1, (GtkAttachOptions) (0), (GtkAttachOptions) (0), 0, 0); spinbutton_after_adj = gtk_adjustment_new(0, 0, 100, 0.1, 1, 0); spinbutton_after = gtk_spin_button_new(GTK_ADJUSTMENT(spinbutton_after_adj), 1, 1); gtk_widget_show(spinbutton_after); gtk_table_attach(GTK_TABLE(table1), spinbutton_after, 1, 2, 1, 2, (GtkAttachOptions) (0), (GtkAttachOptions) (0), 0, 0); spinbutton_left_adj = gtk_adjustment_new(0, -100, 100, 0.1, 1, 0); spinbutton_left = gtk_spin_button_new(GTK_ADJUSTMENT(spinbutton_left_adj), 1, 1); gtk_widget_show(spinbutton_left); gtk_table_attach(GTK_TABLE(table1), spinbutton_left, 1, 2, 2, 3, (GtkAttachOptions) (0), (GtkAttachOptions) (0), 0, 0); spinbutton_right_adj = gtk_adjustment_new(0, -100, 100, 0.1, 1, 0); spinbutton_right = gtk_spin_button_new(GTK_ADJUSTMENT(spinbutton_right_adj), 1, 1); gtk_widget_show(spinbutton_right); gtk_table_attach(GTK_TABLE(table1), spinbutton_right, 1, 2, 3, 4, (GtkAttachOptions) (0), (GtkAttachOptions) (0), 0, 0); gtk_label_set_mnemonic_widget(GTK_LABEL(label11), spinbutton_before); gtk_label_set_mnemonic_widget(GTK_LABEL(label12), spinbutton_after); gtk_label_set_mnemonic_widget(GTK_LABEL(label13), spinbutton_left); gtk_label_set_mnemonic_widget(GTK_LABEL(label14), spinbutton_right); gtk_label_set_mnemonic_widget(GTK_LABEL(label15), spinbutton_first); g_signal_connect((gpointer) radiobutton_left, "toggled", G_CALLBACK(on_alignment_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_center, "toggled", G_CALLBACK(on_alignment_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_right, "toggled", G_CALLBACK(on_alignment_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_full, "toggled", G_CALLBACK(on_alignment_toggled), gpointer(this)); set_justification(justification); gtk_spin_button_set_value(GTK_SPIN_BUTTON(spinbutton_before), spacebefore); gtk_spin_button_set_value(GTK_SPIN_BUTTON(spinbutton_after), spaceafter); gtk_spin_button_set_value(GTK_SPIN_BUTTON(spinbutton_left), leftmargin); gtk_spin_button_set_value(GTK_SPIN_BUTTON(spinbutton_right), rightmargin); gtk_spin_button_set_value(GTK_SPIN_BUTTON(spinbutton_first), firstlineindent); } void StylesheetDialog::span_columns_create() { checkbutton_span = gtk_check_button_new_with_mnemonic("Spans the t_wo columns"); gtk_widget_show(checkbutton_span); gtk_box_pack_start(GTK_BOX(vbox6), checkbutton_span, FALSE, FALSE, 0); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_span), spancolumns); } void StylesheetDialog::apocrypha_create() { checkbutton_apocrypha = gtk_check_button_new_with_mnemonic("Refers to the Apocrypha"); gtk_widget_show(checkbutton_apocrypha); gtk_box_pack_start(GTK_BOX(vbox6), checkbutton_apocrypha, FALSE, FALSE, 0); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_apocrypha), userbool1); } void StylesheetDialog::note_numbering_type_create() { vbox10 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox10); gtk_box_pack_start(GTK_BOX(vbox6), vbox10, TRUE, TRUE, 0); hbox9 = gtk_hbox_new(FALSE, 4); gtk_widget_show(hbox9); gtk_box_pack_start(GTK_BOX(vbox10), hbox9, TRUE, TRUE, 0); label52 = gtk_label_new("Numbering"); gtk_widget_show(label52); gtk_box_pack_start(GTK_BOX(hbox9), label52, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label52), 0, 0); vbox11 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox11); gtk_box_pack_start(GTK_BOX(hbox9), vbox11, TRUE, TRUE, 0); GSList *radiobutton_note_numbering_1_group = NULL; radiobutton_note_numbering_1 = gtk_radio_button_new_with_mnemonic(NULL, "1, 2, 3 ..."); gtk_widget_show(radiobutton_note_numbering_1); gtk_box_pack_start(GTK_BOX(vbox11), radiobutton_note_numbering_1, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_note_numbering_1), radiobutton_note_numbering_1_group); radiobutton_note_numbering_1_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_note_numbering_1)); radiobutton_note_numbering_a = gtk_radio_button_new_with_mnemonic(NULL, "a, b, c ..."); gtk_widget_show(radiobutton_note_numbering_a); gtk_box_pack_start(GTK_BOX(vbox11), radiobutton_note_numbering_a, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_note_numbering_a), radiobutton_note_numbering_1_group); radiobutton_note_numbering_1_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_note_numbering_a)); radiobutton_note_numbering_user = gtk_radio_button_new_with_mnemonic(NULL, "User defined"); gtk_widget_show(radiobutton_note_numbering_user); gtk_box_pack_start(GTK_BOX(vbox11), radiobutton_note_numbering_user, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_note_numbering_user), radiobutton_note_numbering_1_group); radiobutton_note_numbering_1_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_note_numbering_user)); entry_note_numbering = gtk_entry_new(); gtk_widget_show(entry_note_numbering); gtk_box_pack_start(GTK_BOX(vbox10), entry_note_numbering, FALSE, FALSE, 0); gtk_entry_set_activates_default(GTK_ENTRY(entry_note_numbering), TRUE); g_signal_connect((gpointer) radiobutton_note_numbering_1, "toggled", G_CALLBACK(on_radiobutton_note_numbering_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_note_numbering_a, "toggled", G_CALLBACK(on_radiobutton_note_numbering_toggled), gpointer(this)); g_signal_connect((gpointer) radiobutton_note_numbering_user, "toggled", G_CALLBACK(on_radiobutton_note_numbering_toggled), gpointer(this)); NoteNumberingType note_numbering_type = (NoteNumberingType) userint1; switch (note_numbering_type) { case nntNumerical: { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_note_numbering_1), true); break; } case nntAlphabetical: { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_note_numbering_a), true); break; } case nntUserDefined: { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_note_numbering_user), true); break; } } gtk_entry_set_text(GTK_ENTRY(entry_note_numbering), userstring1.c_str()); on_radiobutton_note_numbering(); } void StylesheetDialog::note_numering_restart_create() { hbox10 = gtk_hbox_new(FALSE, 4); gtk_widget_show(hbox10); gtk_box_pack_start(GTK_BOX(vbox6), hbox10, TRUE, TRUE, 0); label53 = gtk_label_new("Restart"); gtk_widget_show(label53); gtk_box_pack_start(GTK_BOX(hbox10), label53, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label53), 0, 0); vbox12 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox12); gtk_box_pack_start(GTK_BOX(hbox10), vbox12, TRUE, TRUE, 0); GSList *radiobutton_note_numbering_restart_never_group = NULL; radiobutton_note_numbering_restart_never = gtk_radio_button_new_with_mnemonic(NULL, "never"); gtk_widget_show(radiobutton_note_numbering_restart_never); gtk_box_pack_start(GTK_BOX(vbox12), radiobutton_note_numbering_restart_never, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_note_numbering_restart_never), radiobutton_note_numbering_restart_never_group); radiobutton_note_numbering_restart_never_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_note_numbering_restart_never)); radiobutton_note_numbering_restart_book = gtk_radio_button_new_with_mnemonic(NULL, "every book"); gtk_widget_show(radiobutton_note_numbering_restart_book); gtk_box_pack_start(GTK_BOX(vbox12), radiobutton_note_numbering_restart_book, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_note_numbering_restart_book), radiobutton_note_numbering_restart_never_group); radiobutton_note_numbering_restart_never_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_note_numbering_restart_book)); radiobutton_note_numbering_restart_chapter = gtk_radio_button_new_with_mnemonic(NULL, "every chapter"); gtk_widget_show(radiobutton_note_numbering_restart_chapter); gtk_box_pack_start(GTK_BOX(vbox12), radiobutton_note_numbering_restart_chapter, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_note_numbering_restart_chapter), radiobutton_note_numbering_restart_never_group); radiobutton_note_numbering_restart_never_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_note_numbering_restart_chapter)); NoteNumberingRestartType note_numbering_type = (NoteNumberingRestartType) userint2; switch (note_numbering_type) { case nnrtNever: { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_note_numbering_restart_never), true); break; } case nnrtBook: { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_note_numbering_restart_book), true); break; } default: { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_note_numbering_restart_chapter), true); break; } } } void StylesheetDialog::on_radiobutton_note_numbering_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((StylesheetDialog *) user_data)->on_radiobutton_note_numbering(); } void StylesheetDialog::on_radiobutton_note_numbering() { if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_note_numbering_user))) { gtk_widget_set_sensitive(entry_note_numbering, true); gtk_widget_grab_focus(entry_note_numbering); } else { gtk_widget_set_sensitive(entry_note_numbering, false); } } void StylesheetDialog::print_chapter_at_first_verse_create() { print_chapter_at_first_verse = gtk_check_button_new_with_mnemonic("Print chapter number at the first verse"); gtk_widget_show(print_chapter_at_first_verse); gtk_box_pack_start(GTK_BOX(vbox6), print_chapter_at_first_verse, FALSE, FALSE, 0); g_signal_connect((gpointer) print_chapter_at_first_verse, "toggled", G_CALLBACK(on_radiobutton_print_chapter_at_first_verse_create_toggled), gpointer(this)); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(print_chapter_at_first_verse), userbool1); } void StylesheetDialog::on_radiobutton_print_chapter_at_first_verse_create_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((StylesheetDialog *) user_data)->on_radiobutton_print_chapter_at_first_verse_create(); } void StylesheetDialog::on_radiobutton_print_chapter_at_first_verse_create() { bool sensitive = !gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(print_chapter_at_first_verse)); gtk_widget_set_sensitive(hbox2, sensitive); gtk_widget_set_sensitive(checkbutton_small_caps, sensitive); gtk_widget_set_sensitive(vbox4, sensitive); // Paragraph. gtk_widget_set_sensitive(checkbutton_span, sensitive); } void StylesheetDialog::book_id_new_page_create() { hbox_id = gtk_hbox_new(FALSE, 0); gtk_widget_show(hbox_id); gtk_box_pack_start(GTK_BOX(vbox6), hbox_id, false, false, 0); checkbutton_id_newpage = gtk_check_button_new_with_mnemonic("Start on a new page"); gtk_widget_show(checkbutton_id_newpage); gtk_box_pack_start(GTK_BOX(hbox_id), checkbutton_id_newpage, FALSE, FALSE, 0); checkbutton_id_oddpage = gtk_check_button_new_with_mnemonic("with an odd number"); gtk_widget_show(checkbutton_id_oddpage); gtk_box_pack_start(GTK_BOX(hbox_id), checkbutton_id_oddpage, FALSE, FALSE, 0); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_id_newpage), userbool1); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_id_oddpage), userbool2); g_signal_connect((gpointer) checkbutton_id_newpage, "toggled", G_CALLBACK(on_checkbutton_id_newpage_toggled), gpointer(this)); on_checkbutton_id_newpage(); } void StylesheetDialog::on_radiobutton_identifier_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((StylesheetDialog *) user_data)->on_radiobutton_identifier(); } void StylesheetDialog::on_radiobutton_identifier() { // Destroy any optional widgets. destroy_optional_widgets(); // Show/hide notebooks with visual settings. IdentifierType subtype = (IdentifierType) get_subtype(); switch (subtype) { case itBook: book_id_new_page_create(); break; case itEncoding: case itComment: break; case itRunningHeader: print_in_running_header_create(); break; case itLongTOC: case itShortTOC: case itBookAbbrev: case itChapterLabel: case itPublishedChapterMarker: case itCommentWithEndmarker: break; } } void StylesheetDialog::on_checkbutton_id_newpage_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((StylesheetDialog *) user_data)->on_checkbutton_id_newpage(); } void StylesheetDialog::on_checkbutton_id_newpage() { bool newpage = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_id_newpage)); gtk_widget_set_sensitive(checkbutton_id_oddpage, newpage); } void StylesheetDialog::colour_create() { hbox_colour = gtk_hbox_new(FALSE, 4); gtk_widget_show(hbox_colour); gtk_box_pack_start(GTK_BOX(vbox6), hbox_colour, false, false, 0); button_colour = gtk_color_button_new(); gtk_widget_show(button_colour); gtk_box_pack_start(GTK_BOX(hbox_colour), button_colour, FALSE, FALSE, 0); GdkColor colour; color_decimal_to_gdk(color, &colour); gtk_color_button_set_color(GTK_COLOR_BUTTON(button_colour), &colour); } void StylesheetDialog::print_create() { checkbutton_print = gtk_check_button_new_with_mnemonic("Print"); gtk_widget_show(checkbutton_print); gtk_box_pack_start(GTK_BOX(vbox6), checkbutton_print, FALSE, FALSE, 0); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_print), print); } void StylesheetDialog::end_note_placement_create() { // Build the interface. hbox13 = gtk_hbox_new(FALSE, 4); gtk_widget_show(hbox13); gtk_box_pack_start(GTK_BOX(vbox6), hbox13, TRUE, TRUE, 0); label60 = gtk_label_new("Print"); gtk_widget_show(label60); gtk_box_pack_start(GTK_BOX(hbox13), label60, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label60), 0.5, 0); vbox16 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox16); gtk_box_pack_start(GTK_BOX(hbox13), vbox16, TRUE, TRUE, 0); GSList *radiobutton_print_endnotes_after_book_group = NULL; radiobutton_print_endnotes_after_book = gtk_radio_button_new_with_mnemonic(NULL, "after each book"); gtk_widget_show(radiobutton_print_endnotes_after_book); gtk_box_pack_start(GTK_BOX(vbox16), radiobutton_print_endnotes_after_book, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_print_endnotes_after_book), radiobutton_print_endnotes_after_book_group); radiobutton_print_endnotes_after_book_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_print_endnotes_after_book)); radiobutton_print_endnotes_after_everything_else = gtk_radio_button_new_with_mnemonic(NULL, "after everything else"); gtk_widget_show(radiobutton_print_endnotes_after_everything_else); gtk_box_pack_start(GTK_BOX(vbox16), radiobutton_print_endnotes_after_everything_else, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_print_endnotes_after_everything_else), radiobutton_print_endnotes_after_book_group); radiobutton_print_endnotes_after_book_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_print_endnotes_after_everything_else)); hbox14 = gtk_hbox_new(FALSE, 0); gtk_widget_show(hbox14); gtk_box_pack_start(GTK_BOX(vbox16), hbox14, TRUE, TRUE, 0); radiobutton_print_endnotes_at_marker = gtk_radio_button_new_with_mnemonic(NULL, "upon encountering marker"); gtk_widget_show(radiobutton_print_endnotes_at_marker); gtk_box_pack_start(GTK_BOX(hbox14), radiobutton_print_endnotes_at_marker, FALSE, FALSE, 0); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_print_endnotes_at_marker), radiobutton_print_endnotes_after_book_group); radiobutton_print_endnotes_after_book_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_print_endnotes_at_marker)); entry_print_endnotes_marker = gtk_entry_new(); gtk_widget_show(entry_print_endnotes_marker); gtk_box_pack_start(GTK_BOX(hbox14), entry_print_endnotes_marker, FALSE, FALSE, 0); gtk_entry_set_width_chars(GTK_ENTRY(entry_print_endnotes_marker), 15); g_signal_connect((gpointer) radiobutton_print_endnotes_at_marker, "toggled", G_CALLBACK(on_radiobutton_print_endnotes_at_marker_toggled), gpointer(this)); // Make the settings. EndnotePositionType endnote_position = (EndnotePositionType) userint2; switch (endnote_position) { case eptAfterBook: { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_print_endnotes_after_book), true); break; } case eptAfterEverything: { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_print_endnotes_after_everything_else), true); break; } case eptAtMarker: { gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_print_endnotes_at_marker), true); break; } } on_radiobutton_print_endnotes_at_marker(); gtk_entry_set_text(GTK_ENTRY(entry_print_endnotes_marker), userstring2.c_str()); } void StylesheetDialog::on_radiobutton_print_endnotes_at_marker_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((StylesheetDialog *) user_data)->on_radiobutton_print_endnotes_at_marker(); } void StylesheetDialog::on_radiobutton_print_endnotes_at_marker() { gtk_widget_set_sensitive(entry_print_endnotes_marker, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radiobutton_print_endnotes_at_marker))); } void StylesheetDialog::on_checkbutton_table_element_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((StylesheetDialog *) user_data)->on_checkbutton_table_element(); } void StylesheetDialog::on_checkbutton_table_element() { // Destroy any optional widgets. destroy_optional_widgets(); // Show/hide notebooks with visual settings. TableElementType subtype = (TableElementType) get_subtype(); switch (subtype) { case tetRow: gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook_subtype), 6); break; case tetHeading: gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook_subtype), 6); fontsize_points_create(); italic_simple_create(); bold_simple_create(); underline_simple_create(); smallcaps_simple_create(); paragraph_create("heading", false); column_number_create(); break; case tetCell: gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook_subtype), 6); fontsize_points_create(); italic_simple_create(); bold_simple_create(); underline_simple_create(); smallcaps_simple_create(); paragraph_create("cell", false); column_number_create(); break; } } void StylesheetDialog::on_radiobutton_subtype_wordlist_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((StylesheetDialog *) user_data)->on_radiobutton_subtype_wordlist(); } void StylesheetDialog::on_radiobutton_subtype_wordlist() { // Destroy any optional widgets. destroy_optional_widgets(); // Show/hide notebooks with visual settings. WordListElementType subtype = (WordListElementType) get_subtype(); switch (subtype) { case wltWordlistGlossaryDictionary: gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook_subtype), 7); wordlist_add_text_create(); break; case wltHebrewWordlistEntry: gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook_subtype), 7); wordlist_add_text_create(); break; case wltGreekWordlistEntry: gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook_subtype), 7); wordlist_add_text_create(); break; case wltSubjectIndexEntry: gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook_subtype), 7); wordlist_add_text_create(); break; } } void StylesheetDialog::column_number_create() { // Build the interface. hbox15 = gtk_hbox_new(FALSE, 5); gtk_widget_show(hbox15); gtk_box_pack_start(GTK_BOX(vbox6), hbox15, FALSE, FALSE, 0); label62 = gtk_label_new("Column number"); gtk_widget_show(label62); gtk_box_pack_start(GTK_BOX(hbox15), label62, FALSE, FALSE, 0); spinbutton_column_number_adj = gtk_adjustment_new(1, 1, 10, 1, 10, 0); spinbutton_column_number = gtk_spin_button_new(GTK_ADJUSTMENT(spinbutton_column_number_adj), 1, 0); gtk_widget_show(spinbutton_column_number); gtk_box_pack_start(GTK_BOX(hbox15), spinbutton_column_number, FALSE, FALSE, 0); gtk_spin_button_set_numeric(GTK_SPIN_BUTTON(spinbutton_column_number), TRUE); // Make the settings. gtk_spin_button_set_value(GTK_SPIN_BUTTON(spinbutton_column_number), userint1); } void StylesheetDialog::print_in_running_header_create() { checkbutton_print_in_running_header_left = gtk_check_button_new_with_mnemonic("Print this in running header of left page"); gtk_widget_show(checkbutton_print_in_running_header_left); gtk_box_pack_start(GTK_BOX(vbox6), checkbutton_print_in_running_header_left, FALSE, FALSE, 0); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_print_in_running_header_left), userbool2); checkbutton_print_in_running_header_right = gtk_check_button_new_with_mnemonic("Print this in running header of right page"); gtk_widget_show(checkbutton_print_in_running_header_right); gtk_box_pack_start(GTK_BOX(vbox6), checkbutton_print_in_running_header_right, FALSE, FALSE, 0); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_print_in_running_header_right), userbool3); } void StylesheetDialog::wordlist_add_text_create() { hbox16 = gtk_hbox_new(FALSE, 5); gtk_widget_show(hbox16); gtk_box_pack_start(GTK_BOX(vbox6), hbox16, TRUE, TRUE, 0); label64 = gtk_label_new("Add"); gtk_widget_show(label64); gtk_box_pack_start(GTK_BOX(hbox16), label64, FALSE, FALSE, 0); entry_wordlist_addition = gtk_entry_new(); gtk_widget_show(entry_wordlist_addition); gtk_box_pack_start(GTK_BOX(hbox16), entry_wordlist_addition, FALSE, TRUE, 0); gtk_entry_set_width_chars(GTK_ENTRY(entry_wordlist_addition), 5); label65 = gtk_label_new("after entry"); gtk_widget_show(label65); gtk_box_pack_start(GTK_BOX(hbox16), label65, FALSE, FALSE, 0); gtk_entry_set_text(GTK_ENTRY(entry_wordlist_addition), userstring1.c_str()); } void StylesheetDialog::restarts_paragraph_create() { checkbutton_restarts_paragraph = gtk_check_button_new_with_mnemonic("Restart paragraph"); gtk_widget_show(checkbutton_restarts_paragraph); gtk_box_pack_start(GTK_BOX(vbox6), checkbutton_restarts_paragraph, FALSE, FALSE, 0); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_restarts_paragraph), userbool1); } bibledit-gtk-4.9/src/dialogstylesheet.h000664 000766 000024 00000030355 12221507145 020373 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGSTYLESHEET_H #define INCLUDED_DIALOGSTYLESHEET_H #include #include "style.h" class StylesheetDialog { public: StylesheetDialog (const ustring& stylesheet, const ustring& style); ~ StylesheetDialog (); int run (); ustring name; protected: ustring mystylesheet; ustring mystyle; private: GtkWidget *stylesheetdialog; GtkWidget *dialog_vbox1; GtkWidget *scrolledwindow_main; GtkWidget *viewport_main; GtkWidget *vbox1; GtkWidget *vbox2; GtkWidget *hbox1; GtkWidget *label6; GtkWidget *labelstyle; GtkWidget *label37; GtkWidget *entryname; GtkWidget *label36; GtkWidget *scrolledwindow1; GtkWidget *textview1; GtkWidget *hseparator1; GtkWidget *hbox8; GtkWidget *vbox5; GtkWidget *label21; GtkWidget *vbox3; GtkWidget *radiobutton_id; GtkWidget *radiobutton_paragraph; GtkWidget *radiobutton_inline; GtkWidget *radiobutton_chapter; GtkWidget *radiobutton_verse; GtkWidget *radiobutton_footendnote; GtkWidget *radiobutton_crossreference; GtkWidget *radiobutton_peripheral; GtkWidget *radiobutton_picture; GtkWidget *radiobutton_pagebreak; GtkWidget *radiobutton_table_element; GtkWidget *radiobutton_wordlist_element; GtkWidget *vseparator1; GtkWidget *notebook_subtype; GtkWidget *empty_notebook_page; GtkWidget *label47; GtkWidget *vbox8; GtkWidget *label50; GtkWidget *radiobutton_footnote; GtkWidget *radiobutton_endnote; GtkWidget *radiobutton_note_content_standard; GtkWidget *radiobutton_note_content; GtkWidget *radiobutton_note_content_endmarker; GtkWidget *radiobutton_note_paragraph; GtkWidget *label48; GtkWidget *vbox9; GtkWidget *label51; GtkWidget *radiobutton_xref; GtkWidget *radiobutton_xref_content_standard; GtkWidget *radiobutton_xref_content; GtkWidget *radiobutton_xref_content_endmarker; GtkWidget *label49; GtkWidget *vbox13; GtkWidget *label55; GtkWidget *radiobutton_paragraph_type_main_title; GtkWidget *radiobutton_paragraph_type_subtitle; GtkWidget *radiobutton_paragraph_type_section_heading; GtkWidget *radiobutton_paragraph_type_text; GtkWidget *label54; GtkWidget *vbox14; GtkWidget *labelperiph58; GtkWidget *radiobutton_peripheral_pub; GtkWidget *radiobutton_peripheral_toc; GtkWidget *radiobutton_peripheral_pref; GtkWidget *radiobutton_peripheral_intro; GtkWidget *radiobutton_peripheral_conc; GtkWidget *radiobutton_peripheral_glo; GtkWidget *radiobutton_peripheral_idx; GtkWidget *radiobutton_peripheral_maps; GtkWidget *radiobutton_peripheral_cov; GtkWidget *radiobutton_peripheral_spine; GtkWidget *label56; GtkWidget *vbox15; GtkWidget *label_id_58; GtkWidget *radiobutton_id_book; GtkWidget *radiobutton_id_encoding; GtkWidget *radiobutton_id_comment; GtkWidget *radiobutton_id_comment_with_endmarker; GtkWidget *radiobutton_id_running_header; GtkWidget *radiobutton_is_long_toc_text; GtkWidget *radiobutton_is_short_toc_text; GtkWidget *radiobutton_is_book_abbrev; GtkWidget *radiobutton_is_chapter_label; GtkWidget *radiobutton_is_published_chapter_marker; GtkWidget *label57; // Table subtype GtkWidget *vbox17; GtkWidget *label_table_sub; GtkWidget *radiobutton_table_sub_new_row; GtkWidget *radiobutton_table_sub_heading; GtkWidget *radiobutton_table_sub_cell; GtkWidget *label61; // Word list subtype. GtkWidget *vbox_subtype_wordlist; GtkWidget *label_subtype_wordlist; GtkWidget *radiobutton_subtype_wordlist_glossary_dictionary_entry; GtkWidget *radiobutton_subtype_hebrew_wordlist_entry; GtkWidget *radiobutton_subtype_greek_wordlist_entry; GtkWidget *radiobutton_subtype_subject_index_entry; GtkWidget *label63; GtkWidget *vseparator2; GtkWidget *vbox6; // Fontsize in points. GtkWidget *hbox2; GtkWidget *label8; GtkObject *spinbuttonfontsize_adj; GtkWidget *spinbuttonfontsize; GtkWidget *label9; void fontsize_points_create (); double fontsize_points; // Italic ustring italic; GtkWidget *checkbutton_italic; void italic_simple_create (); // Bold ustring bold; GtkWidget *checkbutton_bold; void bold_simple_create (); // Underline ustring underline; GtkWidget *checkbutton_underline; void underline_simple_create (); // Small caps ustring smallcaps; GtkWidget *checkbutton_small_caps; void smallcaps_simple_create (); // Italic, bold, underline, small caps - extended. GtkWidget *table2; GtkWidget *label40; GtkWidget *label41; GtkWidget *label42; GtkWidget *radiobutton_italics_on; GtkWidget *radiobutton_bold_on; GtkWidget *radiobutton_underline_on; GtkWidget *radiobutton_italics_toggle; GtkWidget *radiobutton_bold_toggle; GtkWidget *radiobutton_underline_toggle; GtkWidget *radiobutton_italics_inherit; GtkWidget *radiobutton_bold_inherit; GtkWidget *radiobutton_underline_inherit; GtkWidget *radiobutton_italics_off; GtkWidget *radiobutton_bold_off; GtkWidget *radiobutton_underline_off; GtkWidget *label_small_caps; GtkWidget *radiobutton_small_caps_off; GtkWidget *radiobutton_small_caps_on; GtkWidget *radiobutton_small_caps_inherit; GtkWidget *radiobutton_small_caps_toggle; void italic_bold_underline_smallcaps_extended_create (); // Superscript GtkWidget *checkbutton_superscript; bool superscript; void superscript_create (); // Paragraph GtkWidget *vbox4; GtkWidget *hbox4; GtkWidget *label10; GtkWidget *radiobutton_left; GtkWidget *radiobutton_center; GtkWidget *radiobutton_right; GtkWidget *radiobutton_full; GtkWidget *table1; GtkWidget *label11; GtkWidget *label12; GtkWidget *label13; GtkWidget *label14; GtkWidget *label15; GtkWidget *label16; GtkWidget *label17; GtkWidget *label18; GtkWidget *label19; GtkWidget *label20; GtkObject *spinbutton_first_adj; GtkWidget *spinbutton_first; GtkObject *spinbutton_before_adj; GtkWidget *spinbutton_before; GtkObject *spinbutton_after_adj; GtkWidget *spinbutton_after; GtkObject *spinbutton_left_adj; GtkWidget *spinbutton_left; GtkObject *spinbutton_right_adj; GtkWidget *spinbutton_right; ustring justification; double spacebefore; double spaceafter; double leftmargin; double rightmargin; double firstlineindent; void paragraph_create (const gchar * label, bool grey_out_justify); // Span columns. GtkWidget *checkbutton_span; bool spancolumns; void span_columns_create (); // Apocrypha GtkWidget *checkbutton_apocrypha; void apocrypha_create (); // Note numbering type. GtkWidget *vbox10; GtkWidget *hbox9; GtkWidget *label52; GtkWidget *vbox11; GtkWidget *radiobutton_note_numbering_1; GtkWidget *radiobutton_note_numbering_a; GtkWidget *radiobutton_note_numbering_user; GtkWidget *entry_note_numbering; void note_numbering_type_create (); // Note numbering restart. GtkWidget *hbox10; GtkWidget *label53; GtkWidget *vbox12; GtkWidget *radiobutton_note_numbering_restart_never; GtkWidget *radiobutton_note_numbering_restart_book; GtkWidget *radiobutton_note_numbering_restart_chapter; void note_numering_restart_create (); // Print chapternumber at first verse. GtkWidget *print_chapter_at_first_verse; void print_chapter_at_first_verse_create (); static void on_radiobutton_print_chapter_at_first_verse_create_toggled (GtkToggleButton *togglebutton, gpointer user_data); void on_radiobutton_print_chapter_at_first_verse_create (); // \id : Book starting new page. GtkWidget *hbox_id; GtkWidget *checkbutton_id_newpage; GtkWidget *checkbutton_id_oddpage; void book_id_new_page_create (); // Colour GtkWidget *hbox_colour; GtkWidget *button_colour; unsigned int color; void colour_create (); // Print GtkWidget *checkbutton_print; bool print; void print_create (); // Endnotes placement. GtkWidget *hbox13; GtkWidget *label60; GtkWidget *vbox16; GtkWidget *radiobutton_print_endnotes_after_book; GtkWidget *radiobutton_print_endnotes_after_everything_else; GtkWidget *hbox14; GtkWidget *radiobutton_print_endnotes_at_marker; GtkWidget *entry_print_endnotes_marker; void end_note_placement_create (); static void on_radiobutton_print_endnotes_at_marker_toggled (GtkToggleButton *togglebutton, gpointer user_data); void on_radiobutton_print_endnotes_at_marker (); // Column number. GtkWidget *hbox15; GtkWidget *label62; GtkObject *spinbutton_column_number_adj; GtkWidget *spinbutton_column_number; void column_number_create (); // Chapter number (and other text) in running headers GtkWidget *checkbutton_print_in_running_header_left; GtkWidget *checkbutton_print_in_running_header_right; void print_in_running_header_create (); // Text to add after wordlist entries. GtkWidget *hbox16; GtkWidget *label64; GtkWidget *entry_wordlist_addition; GtkWidget *label65; void wordlist_add_text_create (); // Restart paragraph. GtkWidget *checkbutton_restarts_paragraph; void restarts_paragraph_create (); // Action area. GtkWidget *dialog_action_area1; GtkWidget *cancelbutton1; GtkWidget *okbutton; // User variables. bool userbool1, userbool2, userbool3; int userint1, userint2, userint3; ustring userstring1, userstring2, userstring3; static void on_okbutton_clicked (GtkButton *button, gpointer user_data); void on_ok(); static void on_style_type_toggled (GtkToggleButton *togglebutton, gpointer user_data); void on_style_type (GtkToggleButton *togglebutton); static void on_alignment_toggled (GtkToggleButton *togglebutton, gpointer user_data); void on_alignment (GtkToggleButton *togglebutton); void set_gui (); void save_style (); void set_justification (const ustring& justification); ustring get_justification (); void set_italic (); ustring get_italic (); void set_bold (); ustring get_bold (); void set_underline (); ustring get_underline (); void set_small_caps (); ustring get_small_caps (); StyleType get_styletype (); static void on_radiobutton_italic_toggled (GtkToggleButton *togglebutton, gpointer user_data); void on_radiobutton_italic (GtkWidget *togglebutton); static void on_radiobutton_bold_toggled (GtkToggleButton *togglebutton, gpointer user_data); void on_radiobutton_bold (GtkWidget *togglebutton); static void on_radiobutton_underline_toggled (GtkToggleButton *togglebutton, gpointer user_data); void on_radiobutton_underline (GtkWidget *togglebutton); static void on_radiobutton_small_caps_toggled (GtkToggleButton *togglebutton, gpointer user_data); void on_radiobutton_small_caps (GtkWidget *togglebutton); void set_subtype (StyleType maintype, int subtype); int get_subtype (); static void on_radiobutton_note_toggled (GtkToggleButton *togglebutton, gpointer user_data); void on_radiobutton_note (); static void on_radiobutton_xref_toggled (GtkToggleButton *togglebutton, gpointer user_data); void on_radiobutton_xref (); void destroy_optional_widgets (); static void on_radiobutton_note_numbering_toggled (GtkToggleButton *togglebutton, gpointer user_data); void on_radiobutton_note_numbering (); static void on_radiobutton_identifier_toggled (GtkToggleButton *togglebutton, gpointer user_data); void on_radiobutton_identifier (); static void on_checkbutton_id_newpage_toggled (GtkToggleButton *togglebutton, gpointer user_data); void on_checkbutton_id_newpage (); static void on_checkbutton_table_element_toggled (GtkToggleButton *togglebutton, gpointer user_data); void on_checkbutton_table_element (); static void on_radiobutton_subtype_wordlist_toggled (GtkToggleButton *togglebutton, gpointer user_data); void on_radiobutton_subtype_wordlist (); }; #endif bibledit-gtk-4.9/src/dialogsystemlog.cpp000644 000766 000024 00000021447 12453001367 020565 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "utilities.h" #include "dialogsystemlog.h" #include #include "constants.h" #include "directories.h" #include "gwrappers.h" #include "help.h" #include "shortcuts.h" #include "dialogcheckbutton.h" #include "shell.h" #include "projectutils.h" #include "generalconfig.h" #include "settings.h" #include "unixwrappers.h" ustring log_file_name(LogFileType type, bool previous) { ustring filename; switch (type) { case lftMain: filename = "bibledit.log"; break; case lftDbus: filename = "dbus.log"; break; case lftVCS: filename = "vcs.log"; break; case lftShutdown: filename = "shutdown.log"; break; } if (previous) { filename.append (".old"); } return gw_build_filename(Directories->get_temp(), filename); } void move_log_file (LogFileType type) { if (g_file_test (log_file_name(type, false).c_str(), G_FILE_TEST_IS_REGULAR)) { unix_mv(log_file_name(type, false), log_file_name(type, true),true); } } SystemlogDialog::SystemlogDialog(int dummy) { gtkbuilder = gtk_builder_new (); gtk_builder_add_from_file (gtkbuilder, gw_build_filename (Directories->get_package_data(), "gtkbuilder.systemlogdialog.xml").c_str(), NULL); Shortcuts shortcuts(0); dialog = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "dialog")); textview = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "textview")); gtk_widget_grab_focus(textview); checkbutton_session = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "checkbutton_session")); shortcuts.button (checkbutton_session); g_signal_connect((gpointer) checkbutton_session, "toggled", G_CALLBACK(on_checkbutton1_toggled), gpointer(this)); GSList *radiobuttongroup = NULL; radiobutton_main = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "radiobutton_main")); shortcuts.button (radiobutton_main); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_main), radiobuttongroup); radiobuttongroup = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_main)); g_signal_connect((gpointer) radiobutton_main, "toggled", G_CALLBACK(on_radiobutton_toggled), gpointer(this)); radiobutton_shutdown = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "radiobutton_shutdown")); shortcuts.button (radiobutton_shutdown); gtk_radio_button_set_group (GTK_RADIO_BUTTON (radiobutton_shutdown), radiobuttongroup); radiobuttongroup = gtk_radio_button_get_group (GTK_RADIO_BUTTON (radiobutton_shutdown)); g_signal_connect((gpointer) radiobutton_shutdown, "toggled", G_CALLBACK(on_radiobutton_toggled), gpointer(this)); button_diag = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "button_diag")); g_signal_connect((gpointer) button_diag, "clicked", G_CALLBACK(on_button_diagnostics_clicked), gpointer(this)); shortcuts.button (button_diag); InDialogHelp * indialoghelp = new InDialogHelp(dialog, gtkbuilder, &shortcuts, NULL); GtkWidget *cancelbutton; cancelbutton = indialoghelp->cancelbutton; gtk_widget_grab_default(cancelbutton); shortcuts.stockbutton(cancelbutton); GtkWidget * okbutton = indialoghelp->okbutton; shortcuts.stockbutton(okbutton); gtk_widget_hide (okbutton); shortcuts.process(); // Load the text. load(true); // Keep loading the text repeatedly so as to show recent changes also. event_source_id = g_timeout_add_full(G_PRIORITY_DEFAULT, 500, GSourceFunc(show_script_dialog_load), gpointer(this), NULL); } SystemlogDialog::~SystemlogDialog() { // Destroy the source of the timeout (bibledit crashes if this is not done). gw_destroy_source(event_source_id); // Get rid of the dialog. g_object_unref (gtkbuilder); gtk_widget_destroy(dialog); } int SystemlogDialog::run() { return gtk_dialog_run(GTK_DIALOG(dialog)); } bool SystemlogDialog::show_script_dialog_load(gpointer data) { ((SystemlogDialog *) data)->load(false); // Keep going. return true; } void SystemlogDialog::load(bool force) { // Text buffer. GtkTextBuffer *textbuffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(textview)); // In cases that message keep streaming in, it may happen that the user tries to copy // the messages. He selects the text, but before he can copy it to the clipboard, // the new text being loaded erases his selection. The result is that he fails // to copy the text to the clipboard. This problem is resolved by introducing the // "force" parameter. If force-loading, it loads regardless of any selection. // But if the "force" parameter is false, then it won't load if a selection // is present. if (!force) { if (gtk_text_buffer_get_has_selection (textbuffer)) return; } // Read the text from the file. gchar *contents; g_file_get_contents(logfilename().c_str(), &contents, NULL, NULL); // If the text isn't there, clear the textbuffer, and bail out. if (!contents) { gtk_text_buffer_set_text (textbuffer, "", -1); return; } // Only insert the text if new text is available on disk. GtkTextIter begin; gtk_text_buffer_get_start_iter(textbuffer, &begin); GtkTextIter end; gtk_text_buffer_get_end_iter(textbuffer, &end); if (g_ascii_strcasecmp(contents, gtk_text_buffer_get_text(textbuffer, &begin, &end, false)) != 0) { // Loading a huge chunk of text would take a long time. // Temporally removing the view from the buffer speeds it up a huge lot. g_object_ref(textbuffer); gtk_text_view_set_buffer(GTK_TEXT_VIEW(textview), NULL); gtk_text_buffer_set_text(textbuffer, contents, -1); gtk_text_view_set_buffer(GTK_TEXT_VIEW(textview), textbuffer); g_object_unref(textbuffer); // Scroll to end; while (gtk_events_pending()) gtk_main_iteration(); GtkTextIter end; gtk_text_buffer_get_end_iter(gtk_text_view_get_buffer(GTK_TEXT_VIEW(textview)), &end); gtk_text_view_scroll_to_iter(GTK_TEXT_VIEW(textview), &end, 0, true, 0, 0); } g_free(contents); } void SystemlogDialog::on_checkbutton1_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((SystemlogDialog *) user_data)->load(true); } ustring SystemlogDialog::logfilename() { LogFileType type = lftMain; if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_shutdown))) type = lftShutdown; return log_file_name (type, gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (checkbutton_session))); } void SystemlogDialog::on_button_diagnostics_clicked(GtkButton * button, gpointer user_data) { ((SystemlogDialog *) user_data)->on_button_diagnostics(); } void SystemlogDialog::on_button_diagnostics() { // Show selection dialog. vector < ustring > labels; labels.push_back("General settings"); labels.push_back("Project settings"); CheckbuttonDialog dialog("Diagnostics", "Tick the items to include in the diagnostics report", labels, "11"); if (dialog.run() != GTK_RESPONSE_OK) return; // Container to hold output text. vector < ustring > lines; // General settings. if (bitpattern_take(dialog.bitpattern)) { lines.push_back("\nGeneral settings\n"); ReadText rt(general_configuration_filename(), true, false); for (unsigned int i = 0; i < rt.lines.size(); i++) { lines.push_back(rt.lines[i]); } } // Project settings. if (bitpattern_take(dialog.bitpattern)) { vector < ustring > projects = projects_get_all(); for (unsigned int i = 0; i < projects.size(); i++) { lines.push_back("\nProject " + projects[i] + " settings\n"); ReadText rt(project_configuration_filename(projects[i]), true, false); for (unsigned int i = 0; i < rt.lines.size(); i++) { lines.push_back(rt.lines[i]); } } } // Add the diagnostics info to the logfile. ustring diagnosticsfile = gw_build_filename(Directories->get_temp(), "diagnostics"); write_lines(diagnosticsfile, lines); shell_pipe_file_append(diagnosticsfile, logfilename()); unlink(diagnosticsfile.c_str()); } void SystemlogDialog::on_radiobutton_toggled (GtkToggleButton *togglebutton, gpointer user_data) { ((SystemlogDialog *) user_data)->on_radiobutton(togglebutton); } void SystemlogDialog::on_radiobutton (GtkToggleButton *togglebutton) { if (gtk_toggle_button_get_active (togglebutton)) { load(true); } } bibledit-gtk-4.9/src/dialogsystemlog.h000664 000766 000024 00000003525 12221507137 020230 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOG_SYSTEMLOG #define INCLUDED_DIALOG_SYSTEMLOG #include #include "libraries.h" enum LogFileType {lftMain, lftDbus, lftVCS, lftShutdown}; ustring log_file_name(LogFileType type, bool previous); void move_log_file (LogFileType type); class SystemlogDialog { public: SystemlogDialog(int dummy); ~SystemlogDialog(); int run(); protected: GtkBuilder *gtkbuilder; GtkWidget *dialog; GtkWidget *textview; GtkWidget *checkbutton_session; GtkWidget *radiobutton_main; GtkWidget *radiobutton_shutdown; GtkWidget *button_diag; private: guint event_source_id; static bool show_script_dialog_load(gpointer data); void load(bool force); ustring logfilename(); static void on_checkbutton1_toggled(GtkToggleButton *togglebutton, gpointer user_data); static void on_button_diagnostics_clicked(GtkButton *button, gpointer user_data); void on_button_diagnostics(); static void on_radiobutton_toggled (GtkToggleButton *togglebutton, gpointer user_data); void on_radiobutton (GtkToggleButton *togglebutton); }; #endif bibledit-gtk-4.9/src/dialogtaskduration.cpp000664 000766 000024 00000012766 12221507136 021253 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogtaskduration.h" #include "help.h" #include "reporting.h" #include "shortcuts.h" #include "screen.h" TaskDurationDialog::TaskDurationDialog(vector < ustring > *tasks, vector < double >*durations) { // Initialize variables mytasks = tasks; mydurations = durations; // Build gui. Shortcuts shortcuts(0); taskdurationdialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(taskdurationdialog), "Task Duration Setup"); gtk_window_set_position(GTK_WINDOW(taskdurationdialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_type_hint(GTK_WINDOW(taskdurationdialog), GDK_WINDOW_TYPE_HINT_DIALOG); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(taskdurationdialog)); gtk_widget_show(dialog_vbox1); label4 = gtk_label_new("Set the number of days a task takes to complete one chapter"); gtk_widget_show(label4); gtk_box_pack_start(GTK_BOX(dialog_vbox1), label4, FALSE, FALSE, 0); gtk_misc_set_padding(GTK_MISC(label4), 5, 5); scrolledwindow = gtk_scrolled_window_new (NULL, NULL); gtk_widget_show (scrolledwindow); gtk_box_pack_start (GTK_BOX (dialog_vbox1), scrolledwindow, TRUE, TRUE, 0); gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (scrolledwindow), GTK_SHADOW_IN); viewport = gtk_viewport_new (NULL, NULL); gtk_widget_show (viewport); gtk_container_add (GTK_CONTAINER (scrolledwindow), viewport); table1 = gtk_table_new(2, 2, FALSE); gtk_widget_show(table1); gtk_container_add (GTK_CONTAINER (viewport), table1); gtk_container_set_border_width(GTK_CONTAINER(table1), 5); gtk_table_set_col_spacings(GTK_TABLE(table1), 5); label5 = gtk_label_new("Task"); gtk_widget_show(label5); gtk_table_attach(GTK_TABLE(table1), label5, 0, 1, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label5), 0, 0.5); label6 = gtk_label_new("Days per chapter"); gtk_widget_show(label6); gtk_table_attach(GTK_TABLE(table1), label6, 1, 2, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label6), 0, 0.5); // Build gui for each task. for (unsigned int i = 0; i < mytasks->size(); i++) { label_task = gtk_label_new_with_mnemonic(mytasks->at(i).c_str()); gtk_widget_show(label_task); gtk_table_attach(GTK_TABLE(table1), label_task, 0, 1, i + 1, i + 2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment(GTK_MISC(label_task), 0, 0.5); shortcuts.label(label_task); spinbutton1_adj = gtk_adjustment_new(mydurations->at(i), 0, 5, 0.1, 1, 0); spinbutton1 = gtk_spin_button_new(GTK_ADJUSTMENT(spinbutton1_adj), 0.1, 1); gtk_widget_show(spinbutton1); gtk_table_attach(GTK_TABLE(table1), spinbutton1, 1, 2, i + 1, i + 2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_spin_button_set_numeric(GTK_SPIN_BUTTON(spinbutton1), TRUE); gtk_label_set_mnemonic_widget(GTK_LABEL(label_task), spinbutton1); spinbuttons.push_back(spinbutton1); } dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(taskdurationdialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(taskdurationdialog, NULL, &shortcuts, NULL); cancelbutton1 = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton1); gtk_dialog_add_action_widget(GTK_DIALOG(taskdurationdialog), cancelbutton1, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton1), true); okbutton1 = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton1); gtk_dialog_add_action_widget(GTK_DIALOG(taskdurationdialog), okbutton1, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton1), true); shortcuts.stockbutton(cancelbutton1); shortcuts.stockbutton(okbutton1); shortcuts.process(); g_signal_connect((gpointer) okbutton1, "clicked", G_CALLBACK(on_okbutton1_clicked), gpointer(this)); gtk_widget_grab_focus(okbutton1); gtk_widget_grab_default(okbutton1); new DialogAutoScaler (taskdurationdialog, G_MAXINT); } TaskDurationDialog::~TaskDurationDialog() { gtk_widget_destroy(taskdurationdialog); } int TaskDurationDialog::run() { return gtk_dialog_run(GTK_DIALOG(taskdurationdialog)); } void TaskDurationDialog::on_okbutton1_clicked(GtkButton * button, gpointer user_data) { ((TaskDurationDialog *) user_data)->on_okbutton1(); } void TaskDurationDialog::on_okbutton1() { mydurations->clear(); for (unsigned int i = 0; i < spinbuttons.size(); i++) { mydurations->push_back(gtk_spin_button_get_value(GTK_SPIN_BUTTON(spinbuttons[i]))); } } bibledit-gtk-4.9/src/dialogtaskduration.h000664 000766 000024 00000003163 12221507150 020703 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGTASKDURATION_H #define INCLUDED_DIALOGTASKDURATION_H #include #include "ustring.h" class TaskDurationDialog { public: TaskDurationDialog (vector * tasks, vector * durations); ~TaskDurationDialog (); int run (); protected: GtkWidget *taskdurationdialog; GtkWidget *dialog_vbox1; GtkWidget *label4; GtkWidget *scrolledwindow; GtkWidget *viewport; GtkWidget *table1; GtkWidget *label5; GtkWidget *label6; GtkWidget *label_task; GtkObject *spinbutton1_adj; GtkWidget *spinbutton1; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton1; GtkWidget *okbutton1; private: static void on_okbutton1_clicked (GtkButton *button, gpointer user_data); void on_okbutton1 (); vector * mytasks; vector * mydurations; vector spinbuttons; }; #endif bibledit-gtk-4.9/src/dialogtext2pdf.cpp000664 000766 000024 00000012177 12221507141 020273 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogtext2pdf.h" #include "help.h" #include "utilities.h" Text2PdfDialog::Text2PdfDialog(vector < ustring > *commands) // Dialog to show the commands used in the text2pdf object. { mycommands = commands; text2pdfdialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(text2pdfdialog), "Formatter commands"); gtk_window_set_position(GTK_WINDOW(text2pdfdialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(text2pdfdialog), TRUE); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG (text2pdfdialog)); gtk_widget_show(dialog_vbox1); scrolledwindow1 = gtk_scrolled_window_new(NULL, NULL); gtk_widget_show(scrolledwindow1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), scrolledwindow1, TRUE, TRUE, 0); gtk_widget_set_size_request(scrolledwindow1, 800, 600); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow1), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scrolledwindow1), GTK_SHADOW_IN); textview1 = gtk_text_view_new(); gtk_widget_show(textview1); gtk_container_add(GTK_CONTAINER(scrolledwindow1), textview1); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(text2pdfdialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(text2pdfdialog, NULL, NULL, NULL); cancelbutton = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton); gtk_dialog_add_action_widget(GTK_DIALOG(text2pdfdialog), cancelbutton, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton), true); okbutton = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton); gtk_dialog_add_action_widget(GTK_DIALOG(text2pdfdialog), okbutton, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton), true); g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(on_okbutton_clicked), gpointer(this)); g_signal_connect((gpointer) text2pdfdialog, "delete_event", G_CALLBACK(on_text2pdfdialog_delete_event), gpointer(this)); // Set text. // Loading a huge chunk of text would take a long time. // Temporally removing the buffer from the view speeds it up a lot. ustring text; for (unsigned int i = 0; i < mycommands->size(); i++) { text.append(mycommands->at(i)); text.append("\n"); } GtkTextBuffer *buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(textview1)); g_object_ref(buffer); gtk_text_view_set_buffer(GTK_TEXT_VIEW(textview1), NULL); gtk_text_buffer_set_text(buffer, text.c_str(), -1); gtk_text_view_set_buffer(GTK_TEXT_VIEW(textview1), buffer); g_object_unref(buffer); // Place cursor at start of buffer. GtkTextIter iter; gtk_text_buffer_get_start_iter(buffer, &iter); gtk_text_buffer_place_cursor(buffer, &iter); // Set buffer unmodified so as to prevent time-consuming actions being taken on it if there was no change. gtk_text_buffer_set_modified(buffer, false); gtk_widget_grab_focus(textview1); gtk_widget_grab_default(okbutton); } Text2PdfDialog::~Text2PdfDialog() { gtk_widget_destroy(text2pdfdialog); } int Text2PdfDialog::run() { return gtk_dialog_run(GTK_DIALOG(text2pdfdialog)); } void Text2PdfDialog::on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((Text2PdfDialog *) user_data)->on_okbutton(); } void Text2PdfDialog::on_okbutton() // Ok handler. { // Get text if it was modified. GtkTextBuffer *buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(textview1)); if (gtk_text_buffer_get_modified(buffer)) { vector < ustring > commands; textbuffer_get_lines(buffer, commands, false); mycommands->clear(); for (unsigned int i = 0; i < commands.size(); i++) { mycommands->push_back(commands[i]); } } on_text2pdfdialog_delete(); } gboolean Text2PdfDialog::on_text2pdfdialog_delete_event(GtkWidget * widget, GdkEvent * event, gpointer user_data) // Event handler. { ((Text2PdfDialog *) user_data)->on_text2pdfdialog_delete(); return FALSE; } void Text2PdfDialog::on_text2pdfdialog_delete() // Event handler. { // The following line hugely speeds up the destruction of the textview. // Without that it takes a long time if a lot of text is loaded in the buffer. GtkTextBuffer *buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(textview1)); gtk_text_buffer_set_text(buffer, "", -1); } bibledit-gtk-4.9/src/dialogtext2pdf.h000664 000766 000024 00000003031 12221507140 017724 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGTEXT2PDF_H #define INCLUDED_DIALOGTEXT2PDF_H #include #include "ustring.h" class Text2PdfDialog { public: Text2PdfDialog(vector * commands); ~Text2PdfDialog(); int run(); ustring entered_value; bool always_ok; protected: GtkWidget *text2pdfdialog; GtkWidget *dialog_vbox1; GtkWidget *scrolledwindow1; GtkWidget *textview1; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton; GtkWidget *okbutton; private: vector * mycommands; static void on_okbutton_clicked(GtkButton *button, gpointer user_data); void on_okbutton(); static gboolean on_text2pdfdialog_delete_event (GtkWidget *widget, GdkEvent *event, gpointer user_data); void on_text2pdfdialog_delete(); }; #endif bibledit-gtk-4.9/src/dialogtextreplacement.cpp000664 000766 000024 00000023767 12221507140 021745 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogtextreplacement.h" #include "utilities.h" #include "projectutils.h" #include "books.h" #include "help.h" #include "settings.h" #include "shortcuts.h" #include "textreplacement.h" #include "screen.h" enum { COLUMN_ORIGINALS, COLUMN_EDITABLE1, COLUMN_REPLACEMENTS, COLUMN_EDITABLE2, NUM_COLUMNS }; TextReplacementDialog::TextReplacementDialog(int dummy) { // Get configurations. extern Settings *settings; // Shortcuts. Shortcuts shortcuts(0); textreplacementdialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(textreplacementdialog), "Text Replacement"); gtk_window_set_position(GTK_WINDOW(textreplacementdialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(textreplacementdialog), TRUE); gtk_window_set_type_hint(GTK_WINDOW(textreplacementdialog), GDK_WINDOW_TYPE_HINT_DIALOG); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(textreplacementdialog)); gtk_widget_show(dialog_vbox1); vbox1 = gtk_vbox_new(FALSE, 2); gtk_widget_show(vbox1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), vbox1, TRUE, TRUE, 0); checkbutton1 = gtk_check_button_new_with_mnemonic("Replace text when printing and exporting"); gtk_widget_show(checkbutton1); gtk_box_pack_start(GTK_BOX(vbox1), checkbutton1, FALSE, FALSE, 0); shortcuts.button(checkbutton1); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton1), settings->genconfig.text_replacement_get()); scrolledwindow1 = gtk_scrolled_window_new(NULL, NULL); gtk_widget_show(scrolledwindow1); gtk_box_pack_start(GTK_BOX(vbox1), scrolledwindow1, TRUE, TRUE, 0); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow1), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scrolledwindow1), GTK_SHADOW_IN); treeview1 = gtk_tree_view_new(); gtk_widget_show(treeview1); gtk_container_add(GTK_CONTAINER(scrolledwindow1), treeview1); gtk_tree_view_set_reorderable(GTK_TREE_VIEW(treeview1), TRUE); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(textreplacementdialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(textreplacementdialog, NULL, &shortcuts, "menu-preferences/text-replacement"); cancelbutton1 = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton1); gtk_dialog_add_action_widget(GTK_DIALOG(textreplacementdialog), cancelbutton1, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton1), true); shortcuts.stockbutton(cancelbutton1); okbutton1 = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton1); gtk_dialog_add_action_widget(GTK_DIALOG(textreplacementdialog), okbutton1, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton1), true); shortcuts.stockbutton(okbutton1); shortcuts.process(); g_signal_connect((gpointer) checkbutton1, "toggled", G_CALLBACK(on_checkbutton1_toggled), gpointer(this)); g_signal_connect((gpointer) okbutton1, "clicked", G_CALLBACK(on_okbutton1_clicked), gpointer(this)); gtk_widget_grab_focus(okbutton1); gtk_widget_grab_default(okbutton1); // Toggle button. gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton1), settings->genconfig.text_replacement_get()); // Storage, renderer, column and selection. model = gtk_list_store_new(NUM_COLUMNS, G_TYPE_STRING, G_TYPE_BOOLEAN, G_TYPE_STRING, G_TYPE_BOOLEAN); gtk_tree_view_set_model(GTK_TREE_VIEW(treeview1), GTK_TREE_MODEL(model)); g_object_unref(model); GtkCellRenderer *renderer1 = gtk_cell_renderer_text_new(); g_signal_connect(renderer1, "edited", G_CALLBACK(cell_text_edited), gpointer(this)); gtk_tree_view_insert_column_with_attributes(GTK_TREE_VIEW(treeview1), -1, "Texts", renderer1, "text", COLUMN_ORIGINALS, "editable", COLUMN_EDITABLE1, NULL); GtkCellRenderer *renderer2 = gtk_cell_renderer_text_new(); g_signal_connect(renderer2, "edited", G_CALLBACK(cell_replacement_edited), gpointer(this)); gtk_tree_view_insert_column_with_attributes(GTK_TREE_VIEW(treeview1), -1, "Replacements", renderer2, "text", COLUMN_REPLACEMENTS, "editable", COLUMN_EDITABLE2, NULL); gtk_tree_selection_set_mode(gtk_tree_view_get_selection(GTK_TREE_VIEW(treeview1)), GTK_SELECTION_SINGLE); // Load texts and replacements - these get initialized to defaults if there were none. vector < ustring > originals; vector < ustring > replacements; text_replacement_get_words(originals, replacements); GtkTreeIter iter; for (unsigned int i = 0; i < originals.size(); i++) { gtk_list_store_append(model, &iter); gtk_list_store_set(model, &iter, COLUMN_ORIGINALS, originals[i].c_str(), COLUMN_EDITABLE1, 1, COLUMN_REPLACEMENTS, replacements[i].c_str(), COLUMN_EDITABLE2, 1, -1); } gui(); new DialogAutoScaler (textreplacementdialog, G_MAXINT); } TextReplacementDialog::~TextReplacementDialog() { gtk_widget_destroy(textreplacementdialog); } int TextReplacementDialog::run() { return gtk_dialog_run(GTK_DIALOG(textreplacementdialog)); } void TextReplacementDialog::on_okbutton1_clicked(GtkButton * button, gpointer user_data) { ((TextReplacementDialog *) user_data)->on_okbutton(); } void TextReplacementDialog::on_okbutton() { extern Settings *settings; settings->genconfig.text_replacement_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton1))); vector < ustring > originals; vector < ustring > replacements; GtkTreeModel *model; model = gtk_tree_view_get_model(GTK_TREE_VIEW(treeview1)); GtkTreeIter iter; gboolean valid; valid = gtk_tree_model_get_iter_first(model, &iter); while (valid) { ustring original = original_get(GTK_TREE_MODEL(model), &iter); ustring replacement = replacement_get(GTK_TREE_MODEL(model), &iter); if (original != enter_new_text_here()) if (replacement != enter_new_replacement_here()) if (!original.empty()) { originals.push_back(original); replacements.push_back(replacement); } valid = gtk_tree_model_iter_next(model, &iter); } settings->genconfig.text_replacement_originals_set(originals); settings->genconfig.text_replacement_replacements_set(replacements); } void TextReplacementDialog::on_checkbutton1_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((TextReplacementDialog *) user_data)->on_checkbutton1(); } void TextReplacementDialog::on_checkbutton1() { gui(); if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton1))) gtk_widget_grab_focus(treeview1); } void TextReplacementDialog::cell_text_edited(GtkCellRendererText * cell, const gchar * path_string, const gchar * new_text, gpointer data) { ((TextReplacementDialog *) data)->on_cell_edited(cell, path_string, new_text, COLUMN_ORIGINALS); } void TextReplacementDialog::cell_replacement_edited(GtkCellRendererText * cell, const gchar * path_string, const gchar * new_text, gpointer data) { ((TextReplacementDialog *) data)->on_cell_edited(cell, path_string, new_text, COLUMN_REPLACEMENTS); } void TextReplacementDialog::on_cell_edited(GtkCellRendererText * cell, const gchar * path_string, const gchar * new_text, int column) { // Set / initialize some variables. GtkTreeModel *tmodel = (GtkTreeModel *) model; GtkTreePath *path = gtk_tree_path_new_from_string(path_string); GtkTreeIter iter; gtk_tree_model_get_iter(tmodel, &iter, path); // Free memory for the old text. gchar *old_text; gtk_tree_model_get(tmodel, &iter, column, &old_text, -1); g_free(old_text); // Make copy of new text and put it in the store. gtk_list_store_set(GTK_LIST_STORE(model), &iter, column, g_strdup(new_text), -1); // Free path. gtk_tree_path_free(path); // Update gui. gui(); } void TextReplacementDialog::gui() { // Sensitivity of the entry area. gtk_widget_set_sensitive(scrolledwindow1, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton1))); // There should always be one line for new data. bool newdatafound = false; GtkTreeModel *model = gtk_tree_view_get_model(GTK_TREE_VIEW(treeview1)); GtkTreeIter iter; gboolean valid = gtk_tree_model_get_iter_first(model, &iter); while (valid) { if (original_get(GTK_TREE_MODEL(model), &iter) == enter_new_text_here()) if (replacement_get(GTK_TREE_MODEL(model), &iter) == enter_new_replacement_here()) newdatafound = true; valid = gtk_tree_model_iter_next(model, &iter); } if (!newdatafound) { gtk_list_store_append(GTK_LIST_STORE(model), &iter); gtk_list_store_set(GTK_LIST_STORE(model), &iter, COLUMN_ORIGINALS, enter_new_text_here(), COLUMN_EDITABLE1, 1, COLUMN_REPLACEMENTS, enter_new_replacement_here(), COLUMN_EDITABLE2, 1, -1); } } const char *TextReplacementDialog::enter_new_text_here() { return ""; } const char *TextReplacementDialog::enter_new_replacement_here() { return ""; } ustring TextReplacementDialog::original_get(GtkTreeModel * model, GtkTreeIter * iter) { gchar *str; gtk_tree_model_get(model, iter, COLUMN_ORIGINALS, &str, -1); ustring s(str); g_free(str); return s; } ustring TextReplacementDialog::replacement_get(GtkTreeModel * model, GtkTreeIter * iter) { gchar *str; gtk_tree_model_get(model, iter, COLUMN_REPLACEMENTS, &str, -1); ustring s(str); g_free(str); return s; } bibledit-gtk-4.9/src/dialogtextreplacement.h000664 000766 000024 00000004170 12221507151 021377 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003 The Free Software Foundation. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOG_TEXT_REPLACEMENT_H #define INCLUDED_DIALOG_TEXT_REPLACEMENT_H #include #include "ustring.h" class TextReplacementDialog { public: TextReplacementDialog (int dummy); ~TextReplacementDialog (); int run (); protected: GtkWidget *textreplacementdialog; GtkWidget *dialog_vbox1; GtkWidget *vbox1; GtkWidget *checkbutton1; GtkWidget *scrolledwindow1; GtkWidget *treeview1; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton1; GtkWidget *okbutton1; static void on_checkbutton1_toggled (GtkToggleButton *togglebutton, gpointer user_data); void on_checkbutton1 (); static void cell_text_edited (GtkCellRendererText *cell, const gchar *path_string, const gchar *new_text, gpointer data); static void cell_replacement_edited (GtkCellRendererText *cell, const gchar *path_string, const gchar *new_text, gpointer data); void on_cell_edited (GtkCellRendererText *cell, const gchar *path_string, const gchar *new_text, int column); static void on_okbutton1_clicked (GtkButton *button, gpointer user_data); void on_okbutton (); void gui (); private: GtkListStore *model; const char * enter_new_text_here (); const char * enter_new_replacement_here (); ustring original_get (GtkTreeModel * model, GtkTreeIter * iter); ustring replacement_get (GtkTreeModel * model, GtkTreeIter * iter); }; #endif bibledit-gtk-4.9/src/dialogtidy.cpp000664 000766 000024 00000030665 12221507147 017514 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogtidy.h" #include "utilities.h" #include "projectutils.h" #include "books.h" #include "help.h" #include "settings.h" #include "shortcuts.h" enum { COLUMN_ABBREV, COLUMN_EDITABLE, COLUMN_TEXT, NUM_COLUMNS }; TidyDialog::TidyDialog(int dummy) { // Get configurations. extern Settings *settings; ProjectConfiguration *projectconfig = settings->projectconfig(settings->genconfig.project_get()); // Shortcuts. Shortcuts shortcuts(0); tidydialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(tidydialog), "Tidy Text"); gtk_window_set_position(GTK_WINDOW(tidydialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(tidydialog), TRUE); gtk_window_set_type_hint(GTK_WINDOW(tidydialog), GDK_WINDOW_TYPE_HINT_DIALOG); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(tidydialog)); gtk_widget_show(dialog_vbox1); vbox1 = gtk_vbox_new(FALSE, 2); gtk_widget_show(vbox1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), vbox1, TRUE, TRUE, 0); label11 = gtk_label_new("Tidy Text can be used while inserting Bible notes. It makes changes in the text that is inserted, following the settings made below."); gtk_widget_show(label11); gtk_box_pack_start(GTK_BOX(vbox1), label11, FALSE, FALSE, 0); gtk_label_set_line_wrap(GTK_LABEL(label11), TRUE); gtk_misc_set_alignment(GTK_MISC(label11), 0, 0.5); hseparator1 = gtk_hseparator_new(); gtk_widget_show(hseparator1); gtk_box_pack_start(GTK_BOX(vbox1), hseparator1, FALSE, FALSE, 0); checkbutton_translate_books = gtk_check_button_new_with_mnemonic("Translate certain text to book abbreviations"); gtk_widget_show(checkbutton_translate_books); gtk_box_pack_start(GTK_BOX(vbox1), checkbutton_translate_books, FALSE, FALSE, 0); shortcuts.button(checkbutton_translate_books); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_translate_books), settings->genconfig.tidy_translate_get()); scrolledwindow1 = gtk_scrolled_window_new(NULL, NULL); gtk_widget_show(scrolledwindow1); gtk_box_pack_start(GTK_BOX(vbox1), scrolledwindow1, TRUE, TRUE, 0); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow1), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scrolledwindow1), GTK_SHADOW_IN); treeview1 = gtk_tree_view_new(); gtk_widget_show(treeview1); gtk_container_add(GTK_CONTAINER(scrolledwindow1), treeview1); gtk_widget_set_size_request(treeview1, -1, 300); gtk_tree_view_set_reorderable(GTK_TREE_VIEW(treeview1), TRUE); checkbutton_normalize_hyphens = gtk_check_button_new_with_mnemonic("Normalize hyphens"); gtk_widget_show(checkbutton_normalize_hyphens); gtk_box_pack_start(GTK_BOX(vbox1), checkbutton_normalize_hyphens, FALSE, FALSE, 0); shortcuts.button(checkbutton_normalize_hyphens); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_normalize_hyphens), settings->genconfig.tidy_normalize_hyphens_get()); checkbutton_space_between_chapter_verse = gtk_check_button_new_with_mnemonic("Remove the space between chapter and verse, e.g. Mat. 1. 1 becomes Mat. 1.1"); gtk_widget_show(checkbutton_space_between_chapter_verse); gtk_box_pack_start(GTK_BOX(vbox1), checkbutton_space_between_chapter_verse, FALSE, FALSE, 0); shortcuts.button(checkbutton_space_between_chapter_verse); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_space_between_chapter_verse), settings->genconfig.tidy_space_between_chapter_verse_get()); checkbutton_space_series_verses = gtk_check_button_new_with_mnemonic("Remove the space after a comma in a series of verses, e.g. 10, 11 becomes 10,11"); gtk_widget_show(checkbutton_space_series_verses); gtk_box_pack_start(GTK_BOX(vbox1), checkbutton_space_series_verses, FALSE, FALSE, 0); shortcuts.button(checkbutton_space_series_verses); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_space_series_verses), settings->genconfig.tidy_space_series_verses_get()); checkbutton_full_stop_ends_text = gtk_check_button_new_with_mnemonic("Always end the text with a full stop"); gtk_widget_show(checkbutton_full_stop_ends_text); gtk_box_pack_start(GTK_BOX(vbox1), checkbutton_full_stop_ends_text, FALSE, FALSE, 0); shortcuts.button(checkbutton_full_stop_ends_text); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_full_stop_ends_text), settings->genconfig.tidy_full_stop_ends_text_get()); checkbutton_ampersand_semicolon = gtk_check_button_new_with_mnemonic("Change the ampersand in, e.g., Mat. 10.1 & 11.2 to a semicolon: Mat. 10.1; 11.2"); gtk_widget_show(checkbutton_ampersand_semicolon); gtk_box_pack_start(GTK_BOX(vbox1), checkbutton_ampersand_semicolon, FALSE, FALSE, 0); shortcuts.button(checkbutton_ampersand_semicolon); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_ampersand_semicolon), settings->genconfig.tidy_ampersand_semicolon_get()); checkbutton_space_before_punctuation = gtk_check_button_new_with_mnemonic("Remove a space before a (semi)colon, full stop, etc."); gtk_widget_show(checkbutton_space_before_punctuation); gtk_box_pack_start(GTK_BOX(vbox1), checkbutton_space_before_punctuation, FALSE, FALSE, 0); shortcuts.button(checkbutton_space_before_punctuation); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_space_before_punctuation), settings->genconfig.tidy_space_before_punctuation_get()); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(tidydialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(tidydialog, NULL, &shortcuts, "menu-preferences/tidy-text"); cancelbutton1 = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton1); gtk_dialog_add_action_widget(GTK_DIALOG(tidydialog), cancelbutton1, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton1), true); shortcuts.stockbutton(cancelbutton1); okbutton1 = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton1); gtk_dialog_add_action_widget(GTK_DIALOG(tidydialog), okbutton1, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton1), true); shortcuts.stockbutton(okbutton1); shortcuts.process(); g_signal_connect((gpointer) checkbutton_translate_books, "toggled", G_CALLBACK(on_checkbutton_translate_books_toggled), gpointer(this)); g_signal_connect((gpointer) okbutton1, "clicked", G_CALLBACK(on_okbutton1_clicked), gpointer(this)); gtk_widget_grab_focus(okbutton1); gtk_widget_grab_default(okbutton1); // Storage, renderer, column and selection. model = gtk_list_store_new(NUM_COLUMNS, G_TYPE_STRING, G_TYPE_BOOLEAN, G_TYPE_STRING); gtk_tree_view_set_model(GTK_TREE_VIEW(treeview1), GTK_TREE_MODEL(model)); g_object_unref(model); GtkCellRenderer *renderer1 = gtk_cell_renderer_text_new(); gtk_tree_view_insert_column_with_attributes(GTK_TREE_VIEW(treeview1), -1, "Abbreviation", renderer1, "text", COLUMN_ABBREV, NULL); GtkCellRenderer *renderer2 = gtk_cell_renderer_text_new(); g_signal_connect(renderer2, "edited", G_CALLBACK(cell_edited), gpointer(this)); gtk_tree_view_insert_column_with_attributes(GTK_TREE_VIEW(treeview1), -1, "Texts", renderer2, "text", COLUMN_TEXT, "editable", COLUMN_EDITABLE, NULL); gtk_tree_selection_set_mode(gtk_tree_view_get_selection(GTK_TREE_VIEW(treeview1)), GTK_SELECTION_SINGLE); // Load translation texts. vector < int >ids = settings->genconfig.tidy_books_get(); vector < ustring > texts = settings->genconfig.tidy_texts_get(); vector < unsigned int >bible_ids = books_type_to_ids(btOldTestament); { vector < unsigned int >ids2 = books_type_to_ids(btNewTestament); for (unsigned int i = 0; i < ids2.size(); i++) bible_ids.push_back(ids2[i]); } for (unsigned int i = 0; i < bible_ids.size(); i++) { GtkTreeIter iter; gtk_list_store_append(model, &iter); ustring text; for (unsigned int i2 = 0; i2 < ids.size(); i2++) { if (ids[i2] == (int)bible_ids[i]) text = texts[i2]; } gtk_list_store_set(model, &iter, COLUMN_ABBREV, books_id_to_abbreviation(projectconfig->language_get(), bible_ids[i]).c_str(), COLUMN_EDITABLE, 1, COLUMN_TEXT, text.c_str(), -1); } gui(); } TidyDialog::~TidyDialog() { gtk_widget_destroy(tidydialog); } int TidyDialog::run() { return gtk_dialog_run(GTK_DIALOG(tidydialog)); } void TidyDialog::on_okbutton1_clicked(GtkButton * button, gpointer user_data) { ((TidyDialog *) user_data)->on_okbutton(); } void TidyDialog::on_okbutton() { extern Settings *settings; ProjectConfiguration *projectconfig = settings->projectconfig(settings->genconfig.project_get()); settings->genconfig.tidy_translate_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_translate_books))); vector < int >ids; vector < ustring > texts; GtkTreeModel *model; model = gtk_tree_view_get_model(GTK_TREE_VIEW(treeview1)); GtkTreeIter iter; gboolean valid; int index = 0; valid = gtk_tree_model_get_iter_first(model, &iter); while (valid) { GtkTreePath *path = gtk_tree_path_new_from_indices(index, -1); gchar *str_abbrev; gchar *str_text; gtk_tree_model_get(GTK_TREE_MODEL(model), &iter, COLUMN_ABBREV, &str_abbrev, COLUMN_TEXT, &str_text, -1); if (strcmp(str_text, "") != 0) { ids.push_back(books_abbreviation_to_id(projectconfig->language_get(), str_abbrev)); texts.push_back(str_text); } gtk_tree_path_free(path); g_free(str_abbrev); g_free(str_text); valid = gtk_tree_model_iter_next(model, &iter); index++; } settings->genconfig.tidy_books_set(ids); settings->genconfig.tidy_texts_set(texts); settings->genconfig.tidy_normalize_hyphens_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_normalize_hyphens))); settings->genconfig.tidy_space_between_chapter_verse_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_space_between_chapter_verse))); settings->genconfig.tidy_space_series_verses_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_space_series_verses))); settings->genconfig.tidy_full_stop_ends_text_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_full_stop_ends_text))); settings->genconfig.tidy_ampersand_semicolon_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_space_before_punctuation))); settings->genconfig.tidy_space_before_punctuation_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_space_before_punctuation))); } void TidyDialog::on_checkbutton_translate_books_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((TidyDialog *) user_data)->on_checkbutton_translate_books(); } void TidyDialog::on_checkbutton_translate_books() { gui(); if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_translate_books))) gtk_widget_grab_focus(treeview1); } void TidyDialog::cell_edited(GtkCellRendererText * cell, const gchar * path_string, const gchar * new_text, gpointer data) { ((TidyDialog *) data)->on_cell_edited(cell, path_string, new_text); } void TidyDialog::on_cell_edited(GtkCellRendererText * cell, const gchar * path_string, const gchar * new_text) { // Set / initialize some variables. GtkTreeModel *tmodel = (GtkTreeModel *) model; GtkTreePath *path = gtk_tree_path_new_from_string(path_string); GtkTreeIter iter; gtk_tree_model_get_iter(tmodel, &iter, path); // Free memory for the old text. gchar *old_text; gtk_tree_model_get(tmodel, &iter, COLUMN_TEXT, &old_text, -1); g_free(old_text); // Make copy of new text and put it in the store. gtk_list_store_set(GTK_LIST_STORE(model), &iter, COLUMN_TEXT, g_strdup(new_text), -1); // Free path. gtk_tree_path_free(path); } void TidyDialog::gui() { gtk_widget_set_sensitive(scrolledwindow1, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_translate_books))); } bibledit-gtk-4.9/src/dialogtidy.h000664 000766 000024 00000004074 12221507147 017154 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003 The Free Software Foundation. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGTIDY_H #define INCLUDED_DIALOGTIDY_H #include #include "ustring.h" class TidyDialog { public: TidyDialog (int dummy); ~TidyDialog (); int run (); protected: GtkWidget *tidydialog; GtkWidget *dialog_vbox1; GtkWidget *vbox1; GtkWidget *label11; GtkWidget *hseparator1; GtkWidget *checkbutton_translate_books; GtkWidget *scrolledwindow1; GtkWidget *treeview1; GtkWidget *checkbutton_normalize_hyphens; GtkWidget *checkbutton_space_between_chapter_verse; GtkWidget *checkbutton_space_series_verses; GtkWidget *checkbutton_full_stop_ends_text; GtkWidget *checkbutton_ampersand_semicolon; GtkWidget *checkbutton_space_before_punctuation; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton1; GtkWidget *okbutton1; static void on_checkbutton_translate_books_toggled (GtkToggleButton *togglebutton, gpointer user_data); void on_checkbutton_translate_books (); static void cell_edited (GtkCellRendererText *cell, const gchar *path_string, const gchar *new_text, gpointer data); void on_cell_edited (GtkCellRendererText *cell, const gchar *path_string, const gchar *new_text); static void on_okbutton1_clicked (GtkButton *button, gpointer user_data); void on_okbutton (); void gui (); private: GtkListStore *model; }; #endif bibledit-gtk-4.9/src/dialogviewplanning.cpp000664 000766 000024 00000013055 12221507143 021232 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "dialogviewplanning.h" #include "help.h" #include "settings.h" #include "shortcuts.h" ViewPlanningDialog::ViewPlanningDialog(int dummy) { Shortcuts shortcuts(0); viewstatusdialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(viewstatusdialog), "View Planning"); gtk_window_set_position(GTK_WINDOW(viewstatusdialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(viewstatusdialog), TRUE); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG (viewstatusdialog)); gtk_widget_show(dialog_vbox1); vbox4 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox4); gtk_box_pack_start(GTK_BOX(dialog_vbox1), vbox4, TRUE, TRUE, 0); label1 = gtk_label_new("Include the ticked items in the report"); gtk_widget_show(label1); gtk_box_pack_start(GTK_BOX(vbox4), label1, FALSE, FALSE, 0); checkbutton_planning = gtk_check_button_new_with_mnemonic("Planning"); gtk_widget_show(checkbutton_planning); gtk_box_pack_start(GTK_BOX(vbox4), checkbutton_planning, FALSE, FALSE, 0); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_planning), TRUE); shortcuts.button(checkbutton_planning); checkbutton_perc_done_project = gtk_check_button_new_with_mnemonic("Percentage complete whole project"); gtk_widget_show(checkbutton_perc_done_project); gtk_box_pack_start(GTK_BOX(vbox4), checkbutton_perc_done_project, FALSE, FALSE, 0); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_perc_done_project), TRUE); shortcuts.button(checkbutton_perc_done_project); checkbutton_perc_done_book = gtk_check_button_new_with_mnemonic("Percentage complete per book"); gtk_widget_show(checkbutton_perc_done_book); gtk_box_pack_start(GTK_BOX(vbox4), checkbutton_perc_done_book, FALSE, FALSE, 0); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_perc_done_book), TRUE); shortcuts.button(checkbutton_perc_done_book); checkbutton_tasks_book = gtk_check_button_new_with_mnemonic("Tasks per book"); gtk_widget_show(checkbutton_tasks_book); gtk_box_pack_start(GTK_BOX(vbox4), checkbutton_tasks_book, FALSE, FALSE, 0); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_tasks_book), TRUE); shortcuts.button(checkbutton_tasks_book); checkbutton_tasks_chapter = gtk_check_button_new_with_mnemonic("Tasks per chapter"); gtk_widget_show(checkbutton_tasks_chapter); gtk_box_pack_start(GTK_BOX(vbox4), checkbutton_tasks_chapter, FALSE, FALSE, 0); shortcuts.button(checkbutton_tasks_chapter); checkbutton_csv_export = gtk_check_button_new_with_mnemonic("CSV exported data"); gtk_widget_show(checkbutton_csv_export); gtk_box_pack_start(GTK_BOX(vbox4), checkbutton_csv_export, FALSE, FALSE, 0); shortcuts.button(checkbutton_csv_export); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(viewstatusdialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(viewstatusdialog, NULL, &shortcuts, NULL); cancelbutton = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton); gtk_dialog_add_action_widget(GTK_DIALOG(viewstatusdialog), cancelbutton, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton), true); okbutton = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton); gtk_dialog_add_action_widget(GTK_DIALOG(viewstatusdialog), okbutton, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton), true); shortcuts.stockbutton(cancelbutton); shortcuts.stockbutton(okbutton); shortcuts.process(); g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(on_okbutton_clicked), gpointer(this)); gtk_widget_grab_focus(okbutton); gtk_widget_grab_default(okbutton); } ViewPlanningDialog::~ViewPlanningDialog() { gtk_widget_destroy(viewstatusdialog); } int ViewPlanningDialog::run() { return gtk_dialog_run(GTK_DIALOG(viewstatusdialog)); } void ViewPlanningDialog::on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((ViewPlanningDialog *) user_data)->on_okbutton(); } void ViewPlanningDialog::on_okbutton() { extern Settings *settings; reporting_produce_status_report(settings->genconfig.project_get(), gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_planning)), gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_perc_done_project)), gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_perc_done_book)), gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_tasks_book)), gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_tasks_chapter)), gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_csv_export))); } bibledit-gtk-4.9/src/dialogviewplanning.h000664 000766 000024 00000003106 12221507137 020676 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGVIEWPLANNING_H #define INCLUDED_DIALOGVIEWPLANNING_H #include #include "ustring.h" #include "libraries.h" #include "reporting.h" class ViewPlanningDialog { public: ViewPlanningDialog (int dummy); ~ViewPlanningDialog (); int run (); protected: GtkWidget *viewstatusdialog; GtkWidget *dialog_vbox1; GtkWidget *vbox4; GtkWidget *label1; GtkWidget *checkbutton_planning; GtkWidget *checkbutton_perc_done_project; GtkWidget *checkbutton_perc_done_book; GtkWidget *checkbutton_tasks_book; GtkWidget *checkbutton_tasks_chapter; GtkWidget *checkbutton_csv_export; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton; GtkWidget *okbutton; private: static void on_okbutton_clicked (GtkButton *button, gpointer user_data); void on_okbutton (); }; #endif bibledit-gtk-4.9/src/dialogwait.cpp000644 000766 000024 00000004570 12460404402 017474 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogwait.h" WaitDialog::WaitDialog(int milliseconds, int width, int height) { waitdialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(waitdialog), "Please wait ..."); gtk_window_set_position(GTK_WINDOW(waitdialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(waitdialog), TRUE); if (width && height) gtk_window_set_default_size(GTK_WINDOW(waitdialog), width, height); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(waitdialog)); gtk_widget_show(dialog_vbox1); vbox1 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), vbox1, TRUE, TRUE, 0); label1 = gtk_label_new("Please hold on ... processing data"); gtk_widget_show(label1); gtk_box_pack_start(GTK_BOX(vbox1), label1, FALSE, FALSE, 0); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(waitdialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); g_timeout_add(milliseconds, GSourceFunc(static_on_timeout), gpointer(this)); } WaitDialog::~WaitDialog() { gtk_widget_destroy(waitdialog); } int WaitDialog::run() { return gtk_dialog_run(GTK_DIALOG(waitdialog)); } // MAP: I believe these two routines can be eliminated. Just set the // bool on on_timeout is set up. gboolean WaitDialog::static_on_timeout(gpointer data) { return ((WaitDialog *) data)->on_timeout(); } bool WaitDialog::on_timeout() { gtk_widget_hide_all(waitdialog); gtk_dialog_response(GTK_DIALOG(waitdialog), GTK_RESPONSE_OK); return false; } bibledit-gtk-4.9/src/dialogwait.h000664 000766 000024 00000002270 12221507150 017135 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGWAIT_H #define INCLUDED_DIALOGWAIT_H #include "utilities.h" class WaitDialog { public: WaitDialog (int milliseconds, int width, int height); ~WaitDialog (); int run (); protected: GtkWidget *waitdialog; GtkWidget *dialog_vbox1; GtkWidget *vbox1; GtkWidget *label1; GtkWidget *dialog_action_area1; static gboolean static_on_timeout (gpointer data); bool on_timeout (); }; #endif bibledit-gtk-4.9/src/dialogwordlist.cpp000664 000766 000024 00000036600 12221507131 020376 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogwordlist.h" #include "help.h" #include "shortcuts.h" #include "settings.h" #include "wordlist.h" #include "gtkwrappers.h" WordlistDialog::WordlistDialog(int dummy) { extern Settings *settings; Shortcuts shortcuts(0); wordlistdialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(wordlistdialog), "Wordlists"); gtk_window_set_position(GTK_WINDOW(wordlistdialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(wordlistdialog), TRUE); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG (wordlistdialog)); gtk_widget_show(dialog_vbox1); label1 = gtk_label_new("This updates the word list entries in the text and generates lists of them"); gtk_widget_show(label1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), label1, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label1), 0, 0.5); hseparator1 = gtk_hseparator_new(); gtk_widget_show(hseparator1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), hseparator1, FALSE, FALSE, 0); vbox2 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox2); gtk_box_pack_start(GTK_BOX(dialog_vbox1), vbox2, TRUE, TRUE, 0); checkbutton_wordlist = gtk_check_button_new_with_mnemonic("Process general word list"); gtk_widget_show(checkbutton_wordlist); gtk_box_pack_start(GTK_BOX(vbox2), checkbutton_wordlist, FALSE, FALSE, 0); shortcuts.button(checkbutton_wordlist); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_wordlist), settings->genconfig.wordlist_process_general_get()); label3 = gtk_label_new("Insert list between markers \\zopenwordlist and \\zclosewordlist"); gtk_widget_show(label3); gtk_box_pack_start(GTK_BOX(vbox2), label3, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label3), 0, 0.5); hbox1 = gtk_hbox_new(FALSE, 0); gtk_widget_show(hbox1); gtk_box_pack_start(GTK_BOX(vbox2), hbox1, FALSE, FALSE, 0); checkbutton_asterisk_general = gtk_check_button_new_with_mnemonic("Add an asterisk to each word entry"); gtk_widget_show(checkbutton_asterisk_general); gtk_box_pack_start(GTK_BOX(hbox1), checkbutton_asterisk_general, FALSE, FALSE, 0); shortcuts.button(checkbutton_asterisk_general); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_asterisk_general), settings->genconfig.wordlist_general_asterisk_get()); checkbutton_general_first_time = gtk_check_button_new_with_mnemonic("the first time it occurs in a section"); gtk_widget_show(checkbutton_general_first_time); gtk_box_pack_start(GTK_BOX(hbox1), checkbutton_general_first_time, FALSE, FALSE, 0); shortcuts.button(checkbutton_general_first_time); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_general_first_time), settings->genconfig.wordlist_general_asterisk_first_get()); hseparator3 = gtk_hseparator_new(); gtk_widget_show(hseparator3); gtk_box_pack_start(GTK_BOX(dialog_vbox1), hseparator3, TRUE, TRUE, 0); vbox3 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox3); gtk_box_pack_start(GTK_BOX(dialog_vbox1), vbox3, TRUE, TRUE, 0); checkbutton_hebrew_wordlist = gtk_check_button_new_with_mnemonic("Process Hebrew word list"); gtk_widget_show(checkbutton_hebrew_wordlist); gtk_box_pack_start(GTK_BOX(vbox3), checkbutton_hebrew_wordlist, FALSE, FALSE, 0); shortcuts.button(checkbutton_hebrew_wordlist); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_hebrew_wordlist), settings->genconfig.wordlist_process_hebrew_get()); label4 = gtk_label_new("Insert the list between markers \\zopenhebrewwordlist and \\zclosehebrewwordlist"); gtk_widget_show(label4); gtk_box_pack_start(GTK_BOX(vbox3), label4, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label4), 0, 0.5); hbox2 = gtk_hbox_new(FALSE, 0); gtk_widget_show(hbox2); gtk_box_pack_start(GTK_BOX(vbox3), hbox2, TRUE, TRUE, 0); checkbutton_asterisk_hebrew = gtk_check_button_new_with_mnemonic("Add an asterisk to each word entry"); gtk_widget_show(checkbutton_asterisk_hebrew); gtk_box_pack_start(GTK_BOX(hbox2), checkbutton_asterisk_hebrew, FALSE, FALSE, 0); shortcuts.button(checkbutton_asterisk_hebrew); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_asterisk_hebrew), settings->genconfig.wordlist_hebrew_asterisk_get()); checkbutton_hebrew_firsttime = gtk_check_button_new_with_mnemonic("the first time it occurs in a section"); gtk_widget_show(checkbutton_hebrew_firsttime); gtk_box_pack_start(GTK_BOX(hbox2), checkbutton_hebrew_firsttime, FALSE, FALSE, 0); shortcuts.button(checkbutton_hebrew_firsttime); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_hebrew_firsttime), settings->genconfig.wordlist_hebrew_asterisk_first_get()); hseparator4 = gtk_hseparator_new(); gtk_widget_show(hseparator4); gtk_box_pack_start(GTK_BOX(dialog_vbox1), hseparator4, TRUE, TRUE, 0); vbox4 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox4); gtk_box_pack_start(GTK_BOX(dialog_vbox1), vbox4, FALSE, FALSE, 0); checkbutton_greek_wordlist = gtk_check_button_new_with_mnemonic("Process Greek word list"); gtk_widget_show(checkbutton_greek_wordlist); gtk_box_pack_start(GTK_BOX(vbox4), checkbutton_greek_wordlist, FALSE, FALSE, 0); shortcuts.button(checkbutton_greek_wordlist); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_greek_wordlist), settings->genconfig.wordlist_process_greek_get()); label5 = gtk_label_new("Insert the list between markers \\zopengreekwordlist and \\zclosegreekwordlist"); gtk_widget_show(label5); gtk_box_pack_start(GTK_BOX(vbox4), label5, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label5), 0, 0.5); hbox3 = gtk_hbox_new(FALSE, 0); gtk_widget_show(hbox3); gtk_box_pack_start(GTK_BOX(vbox4), hbox3, TRUE, TRUE, 0); checkbutton_asterisk_greek = gtk_check_button_new_with_mnemonic("Add an asterisk to each word entry"); gtk_widget_show(checkbutton_asterisk_greek); gtk_box_pack_start(GTK_BOX(hbox3), checkbutton_asterisk_greek, FALSE, FALSE, 0); shortcuts.button(checkbutton_asterisk_greek); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_asterisk_greek), settings->genconfig.wordlist_greek_asterisk_get()); checkbutton_greek_first_time = gtk_check_button_new_with_mnemonic("the first time it occurs in a section"); gtk_widget_show(checkbutton_greek_first_time); gtk_box_pack_start(GTK_BOX(hbox3), checkbutton_greek_first_time, FALSE, FALSE, 0); shortcuts.button(checkbutton_greek_first_time); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_greek_first_time), settings->genconfig.wordlist_greek_asterisk_first_get()); hseparator6 = gtk_hseparator_new(); gtk_widget_show(hseparator6); gtk_box_pack_start(GTK_BOX(dialog_vbox1), hseparator6, TRUE, TRUE, 0); vbox6 = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox6); gtk_box_pack_start(GTK_BOX(dialog_vbox1), vbox6, FALSE, FALSE, 0); checkbutton_index = gtk_check_button_new_with_mnemonic("Process index"); gtk_widget_show(checkbutton_index); gtk_box_pack_start(GTK_BOX(vbox6), checkbutton_index, FALSE, FALSE, 0); shortcuts.button(checkbutton_index); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_index), settings->genconfig.wordlist_process_index_get()); label6 = gtk_label_new("Insert the list between markers \\zopenindex and \\zcloseindex"); gtk_widget_show(label6); gtk_box_pack_start(GTK_BOX(vbox6), label6, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label6), 0, 0.5); hbox6 = gtk_hbox_new(FALSE, 0); gtk_widget_show(hbox6); gtk_box_pack_start(GTK_BOX(vbox6), hbox6, TRUE, TRUE, 0); checkbutton_asterisk_index = gtk_check_button_new_with_mnemonic("Add an asterisk to each word entry"); gtk_widget_show(checkbutton_asterisk_index); gtk_box_pack_start(GTK_BOX(hbox6), checkbutton_asterisk_index, FALSE, FALSE, 0); shortcuts.button(checkbutton_asterisk_index); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_asterisk_index), settings->genconfig.wordlist_index_asterisk_get()); checkbutton_index_first_time = gtk_check_button_new_with_mnemonic("the first time it occurs in a chapter"); gtk_widget_show(checkbutton_index_first_time); gtk_box_pack_start(GTK_BOX(hbox6), checkbutton_index_first_time, FALSE, FALSE, 0); shortcuts.button(checkbutton_index_first_time); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_index_first_time), settings->genconfig.wordlist_index_asterisk_first_get()); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(wordlistdialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(wordlistdialog, NULL, &shortcuts, "tools/generate-word-lists"); cancelbutton = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton); gtk_dialog_add_action_widget(GTK_DIALOG(wordlistdialog), cancelbutton, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton), true); okbutton = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton); gtk_dialog_add_action_widget(GTK_DIALOG(wordlistdialog), okbutton, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton), true); shortcuts.stockbutton(cancelbutton); shortcuts.stockbutton(okbutton); shortcuts.process(); g_signal_connect((gpointer) checkbutton_wordlist, "toggled", G_CALLBACK(on_checkbutton_toggled), gpointer(this)); g_signal_connect((gpointer) checkbutton_asterisk_general, "toggled", G_CALLBACK(on_checkbutton_toggled), gpointer(this)); g_signal_connect((gpointer) checkbutton_hebrew_wordlist, "toggled", G_CALLBACK(on_checkbutton_toggled), gpointer(this)); g_signal_connect((gpointer) checkbutton_asterisk_hebrew, "toggled", G_CALLBACK(on_checkbutton_toggled), gpointer(this)); g_signal_connect((gpointer) checkbutton_greek_wordlist, "toggled", G_CALLBACK(on_checkbutton_toggled), gpointer(this)); g_signal_connect((gpointer) checkbutton_asterisk_greek, "toggled", G_CALLBACK(on_checkbutton_toggled), gpointer(this)); g_signal_connect((gpointer) checkbutton_index, "toggled", G_CALLBACK(on_checkbutton_toggled), gpointer(this)); g_signal_connect((gpointer) checkbutton_asterisk_index, "toggled", G_CALLBACK(on_checkbutton_toggled), gpointer(this)); g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(on_okbutton_clicked), gpointer(this)); gtk_widget_grab_focus(okbutton); gtk_widget_grab_default(okbutton); gui(); } WordlistDialog::~WordlistDialog() { gtk_widget_destroy(wordlistdialog); } int WordlistDialog::run() { return gtk_dialog_run(GTK_DIALOG(wordlistdialog)); } void WordlistDialog::on_checkbutton_toggled(GtkToggleButton * togglebutton, gpointer user_data) { ((WordlistDialog *) user_data)->gui(); } void WordlistDialog::on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((WordlistDialog *) user_data)->on_okbutton(); } void WordlistDialog::on_okbutton() { // Save settings in the configuration. extern Settings *settings; settings->genconfig.wordlist_process_general_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_wordlist))); settings->genconfig.wordlist_general_asterisk_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_asterisk_general))); settings->genconfig.wordlist_general_asterisk_first_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_general_first_time))); settings->genconfig.wordlist_process_hebrew_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_hebrew_wordlist))); settings->genconfig.wordlist_hebrew_asterisk_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_asterisk_hebrew))); settings->genconfig.wordlist_hebrew_asterisk_first_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_hebrew_firsttime))); settings->genconfig.wordlist_process_greek_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_greek_wordlist))); settings->genconfig.wordlist_greek_asterisk_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_asterisk_greek))); settings->genconfig.wordlist_greek_asterisk_first_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_greek_first_time))); settings->genconfig.wordlist_process_index_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_index))); settings->genconfig.wordlist_index_asterisk_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_asterisk_index))); settings->genconfig.wordlist_index_asterisk_first_set(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_index_first_time))); // Run the three word lists, and collect their messages. vector < ustring > messages; if (settings->genconfig.wordlist_process_general_get()) { Wordlist wordlist(wltGeneral); wordlist.run(messages); } if (settings->genconfig.wordlist_process_hebrew_get()) { Wordlist wordlist(wltHebrew); wordlist.run(messages); } if (settings->genconfig.wordlist_process_greek_get()) { Wordlist wordlist(wltGreek); wordlist.run(messages); } if (settings->genconfig.wordlist_process_index_get()) { Wordlist wordlist(wltIndex); wordlist.run(messages); } // Display messages. if (!messages.empty()) { ustring message; for (unsigned int i = 0; i < messages.size(); i++) { message.append(messages[i] + "\n"); } gtkw_dialog_info(wordlistdialog, message.c_str()); } } void WordlistDialog::gui() { bool general = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_wordlist)); bool hebrew = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_hebrew_wordlist)); bool greek = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_greek_wordlist)); bool index = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_index)); gtk_widget_set_sensitive(label3, general); gtk_widget_set_sensitive(label4, hebrew); gtk_widget_set_sensitive(label5, greek); gtk_widget_set_sensitive(label6, index); gtk_widget_set_sensitive(checkbutton_asterisk_general, general); gtk_widget_set_sensitive(checkbutton_asterisk_hebrew, hebrew); gtk_widget_set_sensitive(checkbutton_asterisk_greek, greek); gtk_widget_set_sensitive(checkbutton_asterisk_index, index); bool general_asterisk = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_asterisk_general)) && general; bool hebrew_asterisk = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_asterisk_hebrew)) && hebrew; bool greek_asterisk = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_asterisk_greek)) && greek; bool index_asterisk = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_asterisk_index)) && index; gtk_widget_set_sensitive(checkbutton_general_first_time, general_asterisk); gtk_widget_set_sensitive(checkbutton_hebrew_firsttime, hebrew_asterisk); gtk_widget_set_sensitive(checkbutton_greek_first_time, greek_asterisk); gtk_widget_set_sensitive(checkbutton_index_first_time, index_asterisk); } bibledit-gtk-4.9/src/dialogwordlist.h000664 000766 000024 00000004263 12221507131 020043 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGWORDLIST_H #define INCLUDED_DIALOGWORDLIST_H #include #include "ustring.h" class WordlistDialog { public: WordlistDialog (int dummy); ~WordlistDialog (); int run (); protected: GtkWidget *wordlistdialog; GtkWidget *dialog_vbox1; GtkWidget *label1; GtkWidget *hseparator1; GtkWidget *vbox2; GtkWidget *checkbutton_wordlist; GtkWidget *label3; GtkWidget *hbox1; GtkWidget *checkbutton_asterisk_general; GtkWidget *checkbutton_general_first_time; GtkWidget *hseparator3; GtkWidget *vbox3; GtkWidget *checkbutton_hebrew_wordlist; GtkWidget *label4; GtkWidget *hbox2; GtkWidget *checkbutton_asterisk_hebrew; GtkWidget *checkbutton_hebrew_firsttime; GtkWidget *hseparator4; GtkWidget *vbox4; GtkWidget *checkbutton_greek_wordlist; GtkWidget *label5; GtkWidget *hbox3; GtkWidget *checkbutton_asterisk_greek; GtkWidget *checkbutton_greek_first_time; GtkWidget *hseparator6; GtkWidget *vbox6; GtkWidget *checkbutton_index; GtkWidget *label6; GtkWidget *hbox6; GtkWidget *checkbutton_asterisk_index; GtkWidget *checkbutton_index_first_time; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton; GtkWidget *okbutton; private: static void on_checkbutton_toggled (GtkToggleButton *togglebutton, gpointer user_data); static void on_okbutton_clicked (GtkButton *button, gpointer user_data); void on_okbutton (); void gui(); }; #endif bibledit-gtk-4.9/src/dialogxetex.cpp000644 000766 000024 00000021605 12453001367 017670 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "dialogxetex.h" #include "utilities.h" #include "bible.h" #include "usfm.h" #include "usfmtools.h" #include "xmlutils.h" #include #include "settings.h" #include "scriptureportions.h" #include "help.h" #include "dialogselectbooks.h" #include "shortcuts.h" #include "gwrappers.h" #include "directories.h" #include "xetex.h" XeTeXDialog::XeTeXDialog(int dummy) { extern Settings *settings; ProjectConfiguration *projectconfig = settings->projectconfig(settings->genconfig.project_get()); gtkbuilder = gtk_builder_new (); gtk_builder_add_from_file (gtkbuilder, gw_build_filename (Directories->get_package_data(), "gtkbuilder.xetexdialog.xml").c_str(), NULL); dialog = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "dialog")); label_portion = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "label_portion")); button_portion = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "button_portion")); g_signal_connect((gpointer) button_portion, "clicked", G_CALLBACK(on_button_portion_clicked), gpointer(this)); expander = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "expander")); gtk_expander_set_expanded(GTK_EXPANDER(expander), settings->session.print_dialog_options_expanded); label_expander = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "label_expander")); notebook = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "notebook")); g_signal_connect_after((gpointer) notebook, "switch_page", G_CALLBACK(on_notebook_switch_page), gpointer(this)); label_tab_notes = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "label_tab_notes")); checkbutton_full_references = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "checkbutton_full_references")); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_full_references), settings->session.print_references_in_notes_in_full); // Set widget insensitive since is has not yet been implemented. gtk_widget_set_sensitive (checkbutton_full_references, false); label_tab_page = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "label_tab_page")); checkbutton_cropmarks = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "checkbutton_cropmarks")); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton_cropmarks), settings->session.print_crop_marks); label_tab_mapping = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "label_tab_mapping")); button_font_mapping_clear = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "button_font_mapping_clear")); filechooserbutton_font_mapping_file = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "filechooserbutton_font_mapping_file")); g_signal_connect((gpointer) button_font_mapping_clear, "clicked", G_CALLBACK(on_button_font_mapping_clear_clicked), gpointer(filechooserbutton_font_mapping_file)); if (!projectconfig->xetex_font_mapping_file_get().empty()) { gtk_file_chooser_set_filename (GTK_FILE_CHOOSER (filechooserbutton_font_mapping_file), projectconfig->xetex_font_mapping_file_get().c_str()); } label_tab_engine = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "label_tab_engine")); GSList *shaping_engine_group = NULL; radiobutton_shaping_engine_generic = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "radiobutton_shaping_engine_generic")); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_shaping_engine_generic), shaping_engine_group); shaping_engine_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_shaping_engine_generic)); radiobutton_shaping_engine_arab = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "radiobutton_shaping_engine_arab")); gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_shaping_engine_arab), shaping_engine_group); shaping_engine_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radiobutton_shaping_engine_arab)); shaping_engine_set (projectconfig->xetex_shaping_engine_get()); InDialogHelp * indialoghelp = new InDialogHelp(dialog, gtkbuilder, NULL, "file/print/project"); cancelbutton = indialoghelp->cancelbutton; okbutton = indialoghelp->okbutton; gtk_widget_grab_focus(okbutton); gtk_widget_grab_default(okbutton); g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(on_okbutton_clicked), gpointer(this)); set_gui(); } XeTeXDialog::~XeTeXDialog() { gtk_widget_destroy(dialog); } int XeTeXDialog::run() { return gtk_dialog_run(GTK_DIALOG(dialog)); } void XeTeXDialog::on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((XeTeXDialog *) user_data)->on_okbutton(); } void XeTeXDialog::on_okbutton() { extern Settings *settings; ProjectConfiguration *projectconfig = settings->projectconfig(settings->genconfig.project_get()); settings->session.print_dialog_options_expanded = gtk_expander_get_expanded(GTK_EXPANDER(expander)); settings->session.print_references_in_notes_in_full = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_full_references)); settings->session.print_crop_marks = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbutton_cropmarks)); gchar * xetex_font_mapping_filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (filechooserbutton_font_mapping_file)); if (xetex_font_mapping_filename) { projectconfig->xetex_font_mapping_file_set(xetex_font_mapping_filename); g_free (xetex_font_mapping_filename); } else { projectconfig->xetex_font_mapping_file_set(""); } projectconfig->xetex_shaping_engine_set(shaping_engine_get ()); } void XeTeXDialog::on_button_portion_clicked(GtkButton * button, gpointer user_data) { ((XeTeXDialog *) user_data)->on_button_portion(); } void XeTeXDialog::on_button_portion() { SelectBooksDialog dialog(true); if (dialog.run() == GTK_RESPONSE_OK) { set_gui(); } } void XeTeXDialog::set_gui() { // Portion indicator. extern Settings *settings; ScripturePortions scriptureportions(settings->genconfig.project_get()); if (scriptureportions.reordering_portions_all()) gtk_label_set_text(GTK_LABEL(label_portion), CHAPTER_VERSE_SELECTION_ALL); else gtk_label_set_text(GTK_LABEL(label_portion), "part"); // Keyboard accelerators. Shortcuts shortcuts(0); shortcuts.button (button_portion); shortcuts.label(label_expander); shortcuts.label (label_tab_notes); shortcuts.label (label_tab_page); shortcuts.label (label_tab_mapping); shortcuts.label (label_tab_engine); shortcuts.stockbutton(cancelbutton); shortcuts.stockbutton(okbutton); GtkWidget * helpbutton = gtk_button_new_from_stock (GTK_STOCK_HELP); shortcuts.stockbutton(helpbutton); int page = gtk_notebook_get_current_page (GTK_NOTEBOOK (notebook)); switch (page) { case 0: { // Notes page. shortcuts.button(checkbutton_full_references); break; } case 1: { // Page settings. shortcuts.button(checkbutton_cropmarks); break; } case 2: { // Mapping page. shortcuts.button(button_font_mapping_clear); break; } case 3: { // Shaping engine page. shortcuts.button(radiobutton_shaping_engine_generic); shortcuts.button(radiobutton_shaping_engine_arab); break; } } shortcuts.process(); gtk_widget_destroy (helpbutton); } void XeTeXDialog::on_notebook_switch_page (GtkNotebook *notebook, GtkNotebookPage *page, guint page_num, gpointer user_data) { ((XeTeXDialog *) user_data)->on_notebook(page_num); } void XeTeXDialog::on_notebook (guint page_num) { set_gui(); } void XeTeXDialog::on_button_font_mapping_clear_clicked (GtkButton *button, gpointer user_data) { GtkFileChooser * filechooser = GTK_FILE_CHOOSER (user_data); gtk_file_chooser_unselect_all (filechooser); } void XeTeXDialog::shaping_engine_set (int type) { switch (XeTeXScriptingEngineType (type)) { case xtxsetGeneric: gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (radiobutton_shaping_engine_generic), true); break; case xtxsetArab: gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (radiobutton_shaping_engine_arab), true); break; } } int XeTeXDialog::shaping_engine_get () { if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_shaping_engine_generic))) return xtxsetGeneric; if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (radiobutton_shaping_engine_arab))) return xtxsetArab; return xtxsetGeneric; } bibledit-gtk-4.9/src/dialogxetex.h000664 000766 000024 00000004213 12221507145 017331 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003 The Free Software Foundation. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOG_XETEX_H #define INCLUDED_DIALOG_XETEX_H #include #include "ustring.h" class XeTeXDialog { public: XeTeXDialog (int dummy); ~XeTeXDialog (); int run (); protected: GtkBuilder *gtkbuilder; GtkWidget *dialog; GtkWidget *label_portion; GtkWidget *button_portion; static void on_button_portion_clicked (GtkButton *button, gpointer user_data); void on_button_portion (); GtkWidget *expander; GtkWidget *label_expander; GtkWidget *notebook; static void on_notebook_switch_page (GtkNotebook *notebook, GtkNotebookPage *page, guint page_num, gpointer user_data); void on_notebook (guint page_num); GtkWidget *label_tab_notes; GtkWidget *checkbutton_full_references; GtkWidget *label_tab_page; GtkWidget *checkbutton_cropmarks; GtkWidget *label_tab_mapping; GtkWidget *button_font_mapping_clear; GtkWidget *filechooserbutton_font_mapping_file; static void on_button_font_mapping_clear_clicked (GtkButton *button, gpointer user_data); GtkWidget *label_tab_engine; GtkWidget *radiobutton_shaping_engine_generic; GtkWidget *radiobutton_shaping_engine_arab; void shaping_engine_set (int type); int shaping_engine_get (); GtkWidget *cancelbutton; GtkWidget *okbutton; static void on_okbutton_clicked (GtkButton *button, gpointer user_data); void on_okbutton (); void set_gui (); }; #endif bibledit-gtk-4.9/src/dialogxfernotes2text.cpp000664 000766 000024 00000013366 12221507150 021540 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "dialogxfernotes2text.h" #include "notes_utils.h" #include "utilities.h" #include "combobox.h" #include "projectutils.h" #include "settings.h" #include "progresswindow.h" #include "gtkwrappers.h" #include "date_time_utils.h" #include "usfmtools.h" #include "help.h" #include "books.h" #include "tiny_utilities.h" #include "gui.h" XferNotes2TextDialog::XferNotes2TextDialog(int dummy) { notestransferdialog = gtk_dialog_new(); gtk_window_set_title(GTK_WINDOW(notestransferdialog), "Transfer Project Notes To Text"); gtk_window_set_position(GTK_WINDOW(notestransferdialog), GTK_WIN_POS_CENTER_ON_PARENT); gtk_window_set_modal(GTK_WINDOW(notestransferdialog), TRUE); dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG (notestransferdialog)); gtk_widget_show(dialog_vbox1); vbox1 = gtk_vbox_new(FALSE, 5); gtk_widget_show(vbox1); gtk_box_pack_start(GTK_BOX(dialog_vbox1), vbox1, FALSE, FALSE, 0); label1 = gtk_label_new("This will transfer all the Project Notes that display for each verse into the currently opened project"); gtk_widget_show(label1); gtk_box_pack_start(GTK_BOX(vbox1), label1, FALSE, FALSE, 0); gtk_label_set_line_wrap(GTK_LABEL(label1), TRUE); gtk_misc_set_alignment(GTK_MISC(label1), 0, 0.5); label3 = gtk_label_new("The transfer cannot be undone."); gtk_widget_show(label3); gtk_box_pack_start(GTK_BOX(vbox1), label3, FALSE, FALSE, 0); gtk_misc_set_alignment(GTK_MISC(label3), 0, 0.5); dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(notestransferdialog)); gtk_widget_show(dialog_action_area1); gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END); new InDialogHelp(notestransferdialog, NULL, NULL, "tools/transfer-project-notes-to-text"); cancelbutton = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton); gtk_dialog_add_action_widget(GTK_DIALOG(notestransferdialog), cancelbutton, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton), true); okbutton = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton); gtk_dialog_add_action_widget(GTK_DIALOG(notestransferdialog), okbutton, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton), true); g_signal_connect((gpointer) okbutton, "clicked", G_CALLBACK(on_okbutton_clicked), gpointer(this)); gtk_widget_grab_default(okbutton); gtk_widget_grab_focus(okbutton); } XferNotes2TextDialog::~XferNotes2TextDialog() { gtk_widget_destroy(notestransferdialog); } int XferNotes2TextDialog::run() { return gtk_dialog_run(GTK_DIALOG(notestransferdialog)); } void XferNotes2TextDialog::on_okbutton_clicked(GtkButton * button, gpointer user_data) { ((XferNotes2TextDialog *) user_data)->on_okbutton(); } void XferNotes2TextDialog::on_okbutton() // Do the transfer. { // Double question just to be sure, as the change can have great impact. if (!gui_double_question(notestransferdialog, "", "")) return; // Get the project. extern Settings *settings; ustring project = settings->genconfig.project_get(); // Progress. ProgressWindow progresswindow("Transferring notes to text", false); // Go through the books in the project. vector < unsigned int >books = project_get_books(project); for (unsigned int bk = 0; bk < books.size(); bk++) { // Progress. progresswindow.set_text(books_id_to_english(books[bk])); // Go through the chapters in this book. Progress. vector < unsigned int >chapters = project_get_chapters(project, books[bk]); progresswindow.set_iterate(0, 1, chapters.size()); for (unsigned int ch = 0; ch < chapters.size(); ch++) { progresswindow.iterate(); // Go through the verses in this chapter. vector < ustring > verses = project_get_verses(project, books[bk], chapters[ch]); for (unsigned int vs = 0; vs < verses.size(); vs++) { // Transfer the note. transfer_note(project, books[bk], chapters[ch], verses[vs]); } } } } void XferNotes2TextDialog::transfer_note(const ustring & project, unsigned int book, unsigned int chapter, const ustring & verse) // Transfer the note. { // Select the set of notes for the current reference. ustring reference = books_id_to_english(book) + " " + convert_to_string(chapter) + ":" + verse; vector < unsigned int >ids; unsigned int id_cursor; notes_select(ids, id_cursor, reference); // Bail out if there are no notes. if (ids.empty()) return; // Retrieve the note(s) and the verse text. vector < ustring > notes; notes_read(ids, notes); ustring text = project_retrieve_verse(project, book, chapter, verse); for (unsigned int i = 0; i < notes.size(); i++) { if (i) text.append("\n\\p "); ParseLine parseline(notes[i]); for (unsigned int i2 = 0; i2 < parseline.lines.size(); i2++) { text.append("\n\\p "); text.append(parseline.lines[i2]); } } // Store the modified verse text. project_store_verse(project, book, chapter, verse, text); } bibledit-gtk-4.9/src/dialogxfernotes2text.h000664 000766 000024 00000002676 12221507151 021210 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOGXREFNOTES2TEXT_H #define INCLUDED_DIALOGXREFNOTES2TEXT_H #include #include "ustring.h" class XferNotes2TextDialog { public: XferNotes2TextDialog (int dummy); ~XferNotes2TextDialog (); int run (); protected: GtkWidget *notestransferdialog; GtkWidget *dialog_vbox1; GtkWidget *vbox1; GtkWidget *label1; GtkWidget *label3; GtkWidget *dialog_action_area1; GtkWidget *cancelbutton; GtkWidget *okbutton; private: static void on_okbutton_clicked (GtkButton *button, gpointer user_data); void on_okbutton (); void transfer_note (const ustring& project, unsigned int book, unsigned int chapter, const ustring& verse); }; #endif bibledit-gtk-4.9/src/dialogyesnoalways.cpp000644 000766 000024 00000006134 12453001367 021111 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "dialogyesnoalways.h" #include "directories.h" #include "gwrappers.h" #include "settings.h" bool yes_no_always_dialog (const ustring& message, YesNoAlwaysDialogType type, bool default_yes, bool default_always) /* This is a dialog that asks the user for either Yes or No, and optional the user can choose to always give this answer for the remainder of the session. message: message. type : dialog type. default_yes: Make the Yes button the default response for the dialog. default_always: Set the dialog so that the answer the user now chooses is remembered for the rest of the session. */ { extern Settings * settings; int response = settings->session.yes_no_always_dialog_response[type]; if (!settings->session.yes_no_always_dialog_enabled[type]) { YesNoAlwaysDialog dialog (message, default_yes); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (dialog.checkbutton), default_always); response = dialog.run (); settings->session.yes_no_always_dialog_enabled[type] = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (dialog.checkbutton)); settings->session.yes_no_always_dialog_response[type] = response; } return (response == GTK_RESPONSE_YES); } YesNoAlwaysDialog::YesNoAlwaysDialog(const ustring& message, bool default_yes) { gtkbuilder = gtk_builder_new (); gtk_builder_add_from_file (gtkbuilder, gw_build_filename (Directories->get_package_data(), "gtkbuilder.yesnoalwaysdialog.xml").c_str(), NULL); dialog = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "dialog")); label = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "label")); gtk_label_set_text (GTK_LABEL (label), message.c_str()); checkbutton = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "checkbutton")); // Add the buttons. In the standard question dialog, the Yes is at the right, then the No following to the left. gtk_dialog_add_button (GTK_DIALOG (dialog), GTK_STOCK_NO, GTK_RESPONSE_NO); gtk_dialog_add_button (GTK_DIALOG (dialog), GTK_STOCK_YES, GTK_RESPONSE_YES); if (default_yes) gtk_dialog_set_default_response (GTK_DIALOG (dialog), GTK_RESPONSE_YES); else gtk_dialog_set_default_response (GTK_DIALOG (dialog), GTK_RESPONSE_NO); } YesNoAlwaysDialog::~YesNoAlwaysDialog() { g_object_unref (gtkbuilder); gtk_widget_destroy(dialog); } int YesNoAlwaysDialog::run() { return gtk_dialog_run(GTK_DIALOG(dialog)); } bibledit-gtk-4.9/src/dialogyesnoalways.h000664 000766 000024 00000003225 12221507142 020551 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DIALOG_YES_NO_ALWAYS_H #define INCLUDED_DIALOG_YES_NO_ALWAYS_H #include "libraries.h" #include enum YesNoAlwaysDialogType {ynadtLoadReferences, ynadtDeleteNote}; bool yes_no_always_dialog (const ustring& message, YesNoAlwaysDialogType type, bool default_yes, bool default_always); class YesNoAlwaysDialog { public: YesNoAlwaysDialog (const ustring& message, bool default_yes); ~YesNoAlwaysDialog (); int run (); protected: GtkBuilder *gtkbuilder; GtkWidget *dialog; GtkWidget *label; public: GtkWidget *checkbutton; protected: static gboolean static_on_timeout (gpointer data); bool on_timeout (); static void on_okbutton_clicked (GtkButton *button, gpointer user_data); void on_okbutton (); static void on_checkbutton_compare_all_toggled (GtkToggleButton *togglebutton, gpointer user_data); void on_checkbutton_compare_all (); }; #endif bibledit-gtk-4.9/src/directories.cpp000644 000766 000024 00000013663 12460676471 017710 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "directories.h" #include #include #include "constants.h" #include "utilities.h" #include "gwrappers.h" #include "shell.h" #include "unixwrappers.h" #include "tiny_utilities.h" #include "restore.h" // Change forward slash to backslash on WIN32, else there are major // problems with system calls to the file system (unix_rmdir, for instance). ustring directories::fix_slashes(ustring &tofix) { ustring retval; #ifdef WIN32 ustring::iterator it; for (it = tofix.begin(); it < tofix.end(); it++) { if (*it == '/') { retval.push_back('\\'); } else { retval.push_back(*it); } } #else retval = tofix; #endif return retval; } // Constructor directories::directories(char *argv0) { char *dirname = (char *)g_path_get_dirname (argv0); rundir = dirname; free(dirname); char *basename = (char *)g_path_get_basename (argv0); exename = basename; free(basename); // Instead of re-computing the directory every time // get_package_data() is called, we compute it once and store it, // making repeated calls more efficient by simply returning the // answer we have pre-computed. #ifdef WIN32 // A clever way to take a path like C:\Program // Files\Bibledit-Gtk\editor\bin\ and chop the // last component to get back to \Bibledit-Gtk\editor... package_data = gw_path_get_dirname(rundir); // ... Then add two more dirs back on, resulting in // Bibledit-Gtk\editor\share\bibledit package_data = gw_build_filename(package_data, "share", "bibledit"); #else // For Linux, this is hard-coded to match the variable set in config.h package_data = PACKAGE_DATA_DIR; #endif package_data = fix_slashes(package_data); // The root directory of all data. root = tiny_directories_get_root(); root = fix_slashes(root); // Directory containing all the projects projects = tiny_directories_get_projects(); projects = fix_slashes(projects); // Directory with the notes notes = gw_build_filename(root, "notes"); notes = fix_slashes(notes); // Directory with the stylesheets stylesheets = gw_build_filename(root, "stylesheets"); stylesheets = fix_slashes(stylesheets); // Directory with the configuration configuration = gw_build_filename(root, "configuration"); configuration = fix_slashes(configuration); // Directory with the pictures pictures = gw_build_filename(root, "pictures"); pictures = fix_slashes(pictures); // Directory with the resources. resources = gw_build_filename(root, "resources"); resources = fix_slashes(resources); // Directory with the scripts. scripts = gw_build_filename(root, "scripts"); scripts = fix_slashes(scripts); // Temporary directory bibledit uses. temp = gw_build_filename(g_get_tmp_dir(), "bibledit"); temp = fix_slashes(temp); // Directory with the templates templates = gw_build_filename(get_temp(), "templates"); templates = fix_slashes(templates); // Directory with the User's custom raw templates templates_user = gw_build_filename(root, "templates"); templates_user = fix_slashes(templates_user); // Directory, if exists, to restore from restore = root + ".restored"; restore = fix_slashes(restore); } directories::~directories() { } void directories::check_structure() { restore_all_stage_two (); gw_mkdir_with_parents(root); gw_mkdir_with_parents(get_projects()); gw_mkdir_with_parents(get_notes()); gw_mkdir_with_parents(get_stylesheets()); gw_mkdir_with_parents(get_configuration()); gw_mkdir_with_parents(get_pictures()); gw_mkdir_with_parents(get_resources()); gw_mkdir_with_parents(get_scripts()); gw_mkdir_with_parents(get_temp()); gw_mkdir_with_parents(get_templates()); gw_mkdir_with_parents(get_templates_user()); } ustring directories::get_root() // Returns the root directory of all data. { return root; } ustring directories::get_projects() { // This returns the directory with all the projects. return projects; } ustring directories::get_notes() { // This returns the directory with the notes return notes; } ustring directories::get_stylesheets() { // This returns the directory with the stylesheets return stylesheets; } ustring directories::get_configuration() { // This returns the directory with the configuration return configuration; } ustring directories::get_pictures() { // This returns the directory with the pictures return pictures; } ustring directories::get_resources() { // This returns the directory with the resources. return resources; } ustring directories::get_scripts() { // This returns the directory with the scripts. return scripts; } ustring directories::get_temp() { // Returns the temporal directory bibledit uses. return temp; } ustring directories::get_templates() { // This returns the directory with the templates return templates; } ustring directories::get_templates_user() { // This returns the directory with the User's custom raw templates return templates_user; } ustring directories::get_package_data() // Gives the package data directory, cross platform. { return package_data; // already did fix_slashes } ustring directories::get_restore () { // The directory, if found, to restore from. return restore; } bibledit-gtk-4.9/src/directories.h000644 000766 000024 00000004576 12460676471 017360 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ /* ** January 2015: Matt Postiff changed to a class providing methods to ** figure out the various directories. The interface is identical to ** what it was before except you call through Directories->XYZ() ** instead of directories_XYZ(). */ #ifndef INCLUDED_DIRECTORIES_H #define INCLUDED_DIRECTORIES_H #include "libraries.h" class directories { private: // Directory bibledit is run from (e.g. /usr/bin or // C:\Program Files\Bibledit\editor\bin) ustring rundir; // Executable name (e.g. bibledit-gtk) ustring exename; // Package data directory (e.g. /usr/share/bibledit-gtk or // C:\Program Files\Bibledit\editor\share\bibledit) ustring package_data; ustring root; ustring projects; ustring notes; ustring stylesheets; ustring configuration; ustring pictures; ustring resources; ustring scripts; ustring temp; ustring templates; ustring templates_user; ustring restore; ustring fix_slashes(ustring &tofix); public: // Must initialize this class with argv[0] so it knows where the // program was run from. See bibledit.cpp and bibledit-rdwrt.cpp for // this. directories(char *argv0); ~directories(); void check_structure (); ustring get_root (); ustring get_projects (); ustring get_notes (); ustring get_stylesheets (); ustring get_configuration (); ustring get_pictures (); ustring get_resources (); ustring get_scripts (); ustring get_temp (); ustring get_templates (); ustring get_templates_user (); ustring get_package_data (); ustring get_restore (); }; // Declared in bibledit.cpp and bibledit-rdwrt.cpp extern directories *Directories; #endif bibledit-gtk-4.9/src/displayprojectnotes.cpp000664 000766 000024 00000004653 12221507137 021465 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "displayprojectnotes.h" #include #include "notes_utils.h" #include "mainwindow.h" DisplayProjectNotes::DisplayProjectNotes(const ustring & reference, GtkWidget * webview_in, vector < unsigned int >*ids, unsigned int& edited_note_id) { // Initialize and save variables. editor_reference = reference; webview = webview_in; mystop = false; ready = false; cursor_offset = 0; extra_note_id = edited_note_id; edited_note_id = 0; // Handle any notes given for display. if (ids) { ids_passed = true; ids_to_display.assign (ids->begin (), ids->end ()); } else { ids_passed = false; } // Start main thread. // New g_thread_new ("displayprojectnotes", GThreadFunc (thread_start), gpointer(this)); g_thread_create(GThreadFunc(thread_start), gpointer(this), false, NULL); } DisplayProjectNotes::~DisplayProjectNotes() { } void DisplayProjectNotes::stop() { mystop = true; } void DisplayProjectNotes::show_buffer () { // Displays the notes text buffer. webkit_web_view_load_string (WEBKIT_WEB_VIEW (webview), note_buffer.c_str(), NULL, NULL, NULL); } void DisplayProjectNotes::thread_start(gpointer data) { ((DisplayProjectNotes *) data)->thread_main(data); } void DisplayProjectNotes::thread_main(gpointer data) { // Select notes for display, and the one to scroll to, if none were given. if (!ids_passed) { notes_select(ids_to_display, id_to_scroll_to, editor_reference); } // "Display" the notes, that is, load them in the buffer. if (!mystop) { notes_display(note_buffer, ids_to_display, id_to_scroll_to, cursor_offset, mystop, extra_note_id); } // Finish off. ready = true; } bibledit-gtk-4.9/src/displayprojectnotes.h000664 000766 000024 00000002744 12221507146 021131 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_DISPLAYPROJECTNOTES_H #define INCLUDED_DISPLAYPROJECTNOTES_H #include "libraries.h" #include class DisplayProjectNotes { public: DisplayProjectNotes(const ustring& reference, GtkWidget * webview_in, vector * ids, unsigned int& edited_note_id); ~DisplayProjectNotes(); void stop(); bool ready; void show_buffer(); private: static void thread_start(gpointer data); void thread_main(gpointer data); bool mystop; ustring editor_reference; bool ids_passed; vector ids_to_display; unsigned int id_to_scroll_to; GtkWidget * webview; unsigned int cursor_offset; ustring note_buffer; unsigned int extra_note_id; }; #endif bibledit-gtk-4.9/src/editor.cpp000644 000766 000024 00000341517 12460404402 016643 0ustar00teusstaff000000 000000 /* Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "utilities.h" #include #include "editor.h" #include "usfm.h" #include #include "projectutils.h" #include "settings.h" #include "screen.h" #include "referenceutils.h" #include "books.h" #include "gwrappers.h" #include "biblenotes.h" #include "color.h" #include "bible.h" #include "stylesheetutils.h" #include "styles.h" #include "usfmtools.h" #include "directories.h" #include "notecaller.h" #include "gtkwrappers.h" #include "keyboard.h" #include "tiny_utilities.h" #include "git.h" #include "progresswindow.h" #include "merge_utils.h" /* Text editor with a formatted view and undo and redo. Care was taken not to embed child widgets in the GtkTextView, because this could give crashes in Gtk under certain circumstances. The following elements of text have their own textview and textbuffer: - every paragraph - every cell of a table. - every note. While the user edits text, signal handlers are connected so it can be tracked what is being edited. The signal handlers call routines that make EditorActions out of this, and optionally correct the text being typed. The EditorActions, when played back, will have the same effect as if the user typed. If Undo is done, then the last EditorAction is undone. It can also be Redone. The following things need to be tested after a change was made to the Editor object: * USFM \id GEN needs to be displayed with the full \id line. * USFM \p starts a new paragraph. * USFM \v works fine for verse markup. * USFM \add does the character style. * If USFM text is pasted through the clipboard, this should load properly. * If a new line is entered, even in the middle of existing text, the editor should display this. * If a new line is entered in a character style, the existing character style should go to the next paragraph. * If plain text with new lines is pasted through the clipboard, the editor should display the new lines * When typing text where a character style starts, it should take this character style. * When typing text right after where a character style ends, it should take this character style. * */ Editor2::Editor2(GtkWidget * vbox_in, const ustring & project_in): current_reference(0, 1000, "") { // Save and initialize variables. project = project_in; do_not_process_child_anchors_being_deleted = false; texttagtable = NULL; previous_hand_cursor = false; highlight = NULL; editable = false; event_id_show_quick_references = 0; book = 0; chapter = 0; signal_if_verse_changed_event_id = 0; verse_restarts_paragraph = false; focused_paragraph = NULL; disregard_text_buffer_signals = 0; textbuffer_delete_range_was_fired = false; verse_tracking_on = false; editor_actions_size_at_no_save = false; font_size_multiplier = 1; highlight_timeout_event_id = 0; scroll_insertion_point_on_screen_id = 0; // Create data that is needed for any of the possible formatted views. create_or_update_formatting_data(); // Spelling checker. spellingchecker = new SpellingChecker(texttagtable); g_signal_connect((gpointer) spellingchecker->check_signal, "clicked", G_CALLBACK(on_button_spelling_recheck_clicked), gpointer(this)); load_dictionaries(); // The basic GUI, which actually is empty until text will be loaded in it. scrolledwindow = gtk_scrolled_window_new(NULL, NULL); gtk_widget_show(scrolledwindow); gtk_box_pack_start(GTK_BOX(vbox_in), scrolledwindow, true, true, 0); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); viewport = gtk_viewport_new (NULL, NULL); gtk_widget_show (viewport); gtk_container_add (GTK_CONTAINER (scrolledwindow), viewport); vbox_viewport = gtk_vbox_new (false, 0); gtk_widget_show(vbox_viewport); gtk_container_add (GTK_CONTAINER (viewport), vbox_viewport); // Box to store the standard paragraphs. vbox_paragraphs = gtk_vbox_new (false, 0); gtk_widget_show(vbox_paragraphs); gtk_box_pack_start(GTK_BOX(vbox_viewport), vbox_paragraphs, false, false, 0); last_focused_widget = vbox_paragraphs; // The separator between text and notes. hseparator = gtk_hseparator_new (); gtk_widget_show(hseparator); gtk_box_pack_start(GTK_BOX(vbox_viewport), hseparator, false, false, 0); // Box to store the notes. vbox_notes = gtk_vbox_new (false, 0); gtk_widget_show(vbox_notes); gtk_box_pack_start(GTK_BOX(vbox_viewport), vbox_notes, false, false, 0); // Create the invisible parking lot where GtkTextViews get parked while not in use. vbox_parking_lot = gtk_vbox_new (false, 0); gtk_box_pack_start(GTK_BOX(vbox_in), vbox_parking_lot, false, false, 0); // Buttons to give signals. new_verse_signal = gtk_button_new(); new_styles_signal = gtk_button_new(); word_double_clicked_signal = gtk_button_new(); reload_signal = gtk_button_new(); changed_signal = gtk_button_new(); quick_references_button = gtk_button_new(); spelling_checked_signal = gtk_button_new (); new_widget_signal = gtk_button_new (); // Initialize a couple of event ids. textview_move_cursor_id = 0; textview_grab_focus_event_id = 0; spelling_timeout_event_id = 0; textview_button_press_event_id = 0; // Tag for highlighting search words and current verse. // For convenience the GtkTextBuffer function is called. // This adds the tag to the GtkTextTagTable, making it available // to any other text buffer that uses the same text tag table. { GtkTextBuffer * textbuffer = gtk_text_buffer_new (texttagtable); reference_tag = gtk_text_buffer_create_tag(textbuffer, NULL, "background", "khaki", NULL); verse_highlight_tag = gtk_text_buffer_create_tag(textbuffer, NULL, "background", "yellow", NULL); g_object_unref (textbuffer); } // Automatic saving of the file, periodically. save_timeout_event_id = g_timeout_add_full(G_PRIORITY_DEFAULT, 60000, GSourceFunc(on_save_timeout), gpointer(this), NULL); } Editor2::~Editor2() { // Verse tracking off. switch_verse_tracking_off (); // Save the chapter. chapter_save(); // Destroy a couple of timeout sources. gw_destroy_source(textview_move_cursor_id); gw_destroy_source(textview_grab_focus_event_id); gw_destroy_source(save_timeout_event_id); gw_destroy_source(highlight_timeout_event_id); gw_destroy_source(spelling_timeout_event_id); gw_destroy_source(event_id_show_quick_references); gw_destroy_source(signal_if_verse_changed_event_id); gw_destroy_source(textview_button_press_event_id); gw_destroy_source(scroll_insertion_point_on_screen_id); // Delete speller. delete spellingchecker; // Destroy the signalling buttons. gtk_widget_destroy(new_verse_signal); new_verse_signal = NULL; gtk_widget_destroy(new_styles_signal); new_styles_signal = NULL; gtk_widget_destroy(word_double_clicked_signal); gtk_widget_destroy(reload_signal); gtk_widget_destroy(changed_signal); gtk_widget_destroy(quick_references_button); gtk_widget_destroy (spelling_checked_signal); gtk_widget_destroy (new_widget_signal); // Destroy the texttag tables. g_object_unref(texttagtable); // Destroy possible highlight object. if (highlight) delete highlight; // Destroy the editor actions. // This will also destroy any GtkTextViews these actions created. clear_and_destroy_editor_actions (actions_done); clear_and_destroy_editor_actions (actions_undone); // Destroy remainder of text area. gtk_widget_destroy(scrolledwindow); } void Editor2::book_set(unsigned int book_in) { book = book_in; } void Editor2::chapter_load(unsigned int chapter_in) // Loads a chapter with the number "chapter_in". { // Clear the stacks of actions done and redoable. clear_and_destroy_editor_actions (actions_done); clear_and_destroy_editor_actions (actions_undone); // Switch verse tracking off. switch_verse_tracking_off (); // Save chapter number. chapter = chapter_in; // Settings. extern Settings *settings; ProjectConfiguration *projectconfig = settings->projectconfig(project); // Reset note style generator. { ustring dummy; get_next_note_caller_and_style (entFootnote, dummy, dummy, true); } // Load text in memory and cache it for later use. loaded_chapter_lines = project_retrieve_chapter(project, book, chapter); // Whether chapter is editable. editable = true; if (loaded_chapter_lines.empty()) editable = false; if (!projectconfig->editable_get()) editable = false; // Get rid of possible previous widgets with their data. gtk_container_foreach(GTK_CONTAINER(vbox_paragraphs), on_container_tree_callback_destroy, gpointer(this)); focused_paragraph = NULL; // Make one long line containing the whole chapter. // This is done so as to exclude any possibility that the editor does not // properly load a possible chapter that has line-breaks at unexpected places. // Add one space to the end so as to accomodate situation such as that the // last marker is "\toc". Without that extra space it won't see this marker, // because the formatter looks for "\toc ". The space will solve the issue. ustring line; for (unsigned int i = 0; i < loaded_chapter_lines.size(); i++) { if (!line.empty()) line.append(" "); line.append(loaded_chapter_lines[i]); } line.append(" "); // Load in editor. text_load (line, "", false); // Clean up extra spaces before the insertion points in all the newly created textbuffers. for (unsigned int i = 0; i < actions_done.size(); i++) { EditorAction * action = actions_done[i]; if ((action->type == eatCreateParagraph) || (action->type == eatCreateNoteParagraph)) { EditorActionCreateParagraph * paragraph = static_cast (action); EditorActionDeleteText * trim_action = paragraph_delete_last_character_if_space (paragraph); if (trim_action) { apply_editor_action (trim_action); } } } // Insert the chapter load boundary. apply_editor_action (new EditorAction (eatLoadChapterBoundary)); // Place cursor at the start and scroll it onto the screen. vector textviews = editor_get_widgets (vbox_paragraphs); if (textviews.empty()) { give_focus (textviews[0]); GtkTextIter iter; gtk_text_buffer_get_start_iter(focused_paragraph->textbuffer, &iter); gtk_text_buffer_place_cursor(focused_paragraph->textbuffer, &iter); //scroll_insertion_point_on_screen (); // Remove all the complicated timeout stuff and go right to work scroll_insertion_point_on_screen_timeout (); } // Store size of actions buffer so we know whether the chapter changed. editor_actions_size_at_no_save = actions_done.size(); } void Editor2::text_load (ustring text, ustring character_style, bool note_mode) // This loads text into the formatted editor. // text: text to load. // character_style: character style to start with. // note_mode: If true, it is limited to formatting notes only. { // Clean away possible new lines. replace_text (text, "\n", " "); // Load the text into the editor by creating and applying editor actions. ustring marker_text; size_t marker_pos; size_t marker_length; bool is_opener; bool marker_found; while (!text.empty()) { marker_found = usfm_search_marker(text, marker_text, marker_pos, marker_length, is_opener); bool handled = false; if (!handled && !note_mode) { if (text_starts_paragraph (project, text, marker_text, marker_pos, marker_length, is_opener, marker_found)) { character_style.clear(); editor_start_new_standard_paragraph (marker_text); handled = true; } } if (!handled && !note_mode) { if (text_starts_verse (project, text, marker_text, marker_pos, marker_length, is_opener, marker_found)) { editor_start_verse (text, marker_text, character_style); handled = true; } } if (!handled) { if (editor_starts_character_style (text, character_style, marker_text, marker_pos, marker_length, is_opener, marker_found)) { handled = true; } } if (!handled) { if (editor_ends_character_style (text, character_style, marker_text, marker_pos, marker_length, is_opener, marker_found)) { handled = true; } } if (!handled && !note_mode) { ustring raw_note; if (text_starts_note_raw (text, character_style, marker_text, marker_pos, marker_length, is_opener, marker_found, raw_note)) { editor_start_note_raw (raw_note, marker_text); handled = true; } } if (!handled) { editor_text_fallback (text, character_style, marker_pos, marker_found); } } // Update gui. if (!note_mode) { signal_if_styles_changed(); signal_if_verse_changed(); } // Trigger a spelling check. if (!note_mode) { spelling_trigger(); } } void Editor2::chapter_save() // Handles saving the chapter. { // Set variables. reload_chapter_number = chapter; // If the text is not editable, bail out. if (!editable) return; // If the text was not changed, bail out. if (editor_actions_size_at_no_save == actions_done.size()) return; // If the project is empty, bail out. if (project.empty()) return; // Get the USFM text. ustring chaptertext = get_chapter(); // Flags for use below. bool reload = false; bool save_action_is_over = false; bool check_chapter_cache = true; // If the chapter text is completely empty, // that means that the user has deleted everything. // This is interpreted as to mean that the user wishes to delete this chapter. // After asking for confirmation, delete the chapter. if (chaptertext.empty()) { if (gtkw_dialog_question(NULL, "The chapter is empty.\n" "Do you wish to delete this chapter?", GTK_RESPONSE_YES) == GTK_RESPONSE_YES) { project_remove_chapter(project, book, chapter); save_action_is_over = true; reload = true; if (chapter > 0) reload_chapter_number = chapter - 1; } } // If the text has not yet been dealt with, save it. if (!save_action_is_over) { // Clean it up a bit and divide it into lines. ParseLine parseline(trim(chaptertext)); // Add verse information. CategorizeChapterVerse ccv(parseline.lines); /* We have noticed people editing Bibledit's data directly. If this was done with OpenOffice, and then saving it as text again, three special bytes were added right at the beginning of the file, making the \c x marker not being parsed correctly. It would then look as if this is chapter 0. In addition to this, the user could have edited the chapter number. If a change in the chapter number is detected, ask the user what to do. */ unsigned int chapter_in_text = chapter; for (unsigned int i = 0; i < ccv.chapter.size(); i++) { if (ccv.chapter[i] != chapter) { chapter_in_text = ccv.chapter[i]; } } // Ask what to do if the chapter number in the text differs from the // chapter that has been loaded. if (chapter_in_text != chapter) { unsigned int confirmed_chapter_number; ustring message; message = "Chapter " + convert_to_string(chapter) + " was loaded, " "but it appears that the chapter number has been changed to " + convert_to_string(chapter_in_text) + ".\n" "Do you wish to save the text as a different chapter, that is, as chapter " + convert_to_string(chapter_in_text) + "?"; if (gtkw_dialog_question(NULL, message.c_str()) == GTK_RESPONSE_YES) { confirmed_chapter_number = chapter_in_text; reload = true; reload_chapter_number = chapter_in_text; check_chapter_cache = false; } else { confirmed_chapter_number = chapter; } for (unsigned int i = 0; i < ccv.chapter.size(); i++) { ccv.chapter[i] = confirmed_chapter_number; } // Check whether the new chapter number already exists. if (confirmed_chapter_number != chapter) { vector < unsigned int >chapters = project_get_chapters(project, book); set < unsigned int >chapter_set(chapters.begin(), chapters.end()); if (chapter_set.find(confirmed_chapter_number) != chapter_set.end()) { message = "The new chapter number already exists\n" "Do you wish to overwrite it?"; if (gtkw_dialog_question(NULL, message.c_str()) == GTK_RESPONSE_NO) { gtkw_dialog_info(NULL, "The changes have been discarded"); save_action_is_over = true; reload = true; } } } } // Check the chapter cache with the version on disk. // The chapter cache contains the chapter data when it was loaded in the editor. // Normally cache and disk are the same. // In case of collaboration, the text on disk may differ from the text in the chapter cache. if ((!save_action_is_over) && check_chapter_cache) { // The code is disabled, because it at times reverts changes entered in the editor. //vector file_data = project_retrieve_chapter (project, book, chapter); //if (loaded_chapter_lines != file_data) { //merge_editor_and_file (loaded_chapter_lines, parseline.lines, project, book, chapter); //save_action_is_over = true; //reload = true; //} } // Store chapter. if (!save_action_is_over) { project_store_chapter(project, book, ccv); save_action_is_over = true; } } // Store size of editor actions. Based on this it knows next time whether to save the chapter. editor_actions_size_at_no_save = actions_done.size(); // Possible reload signal. if (reload) { gtk_button_clicked(GTK_BUTTON(reload_signal)); } } ustring Editor2::text_get_selection() // Retrieves the selected text from the textview that has the focus, // and returns it as USFM code. { ustring text; if (focused_paragraph) { GtkTextIter startiter, enditer; gtk_text_buffer_get_selection_bounds(focused_paragraph->textbuffer, &startiter, &enditer); text = usfm_get_text(focused_paragraph->textbuffer, startiter, enditer); } return text; } void Editor2::text_insert(ustring text) // This inserts plain or USFM text at the cursor location of the focused textview. // If text is selected, this is erased first. { // If the text is not editable, bail out. if (!editable) return; // If no paragraph is in focus, bail out. if (!focused_paragraph) return; // Buffer. GtkTextBuffer * textbuffer = focused_paragraph->textbuffer; // Erase selected text. gtk_text_buffer_delete_selection(textbuffer, true, editable); // Insert the text at the cursor. gtk_text_buffer_insert_at_cursor (textbuffer, text.c_str(), -1); } void Editor2::show_quick_references() // Starts the process to show the quick references. // A delaying routine is used to make the program more responsive. // That is, the quick references are not shown at each change, // but only shortly after. // Without this pasting a long text in the footnote takes a lot of time. { gw_destroy_source(event_id_show_quick_references); event_id_show_quick_references = g_timeout_add_full(G_PRIORITY_DEFAULT, 200, GSourceFunc(show_quick_references_timeout), gpointer(this), NULL); } bool Editor2::show_quick_references_timeout(gpointer user_data) { ((Editor2 *) user_data)->show_quick_references_execute(); return false; } void Editor2::show_quick_references_execute() // Takes the text of the references in the note that has the cursor, // and shows that text in the quick reference area. { // Clear the event id. event_id_show_quick_references = 0; // If we're not in a note, bail out. if (last_focused_type() != etvtNote) return; // If we're not in a paragraph, bail out. if (!focused_paragraph) return; // Get the text of the focused note. GtkTextBuffer *note_buffer = focused_paragraph->textbuffer; GtkTextIter startiter, enditer; gtk_text_buffer_get_start_iter(note_buffer, &startiter); gtk_text_buffer_get_end_iter(note_buffer, &enditer); ustring note_text = gtk_text_buffer_get_text(note_buffer, &startiter, &enditer, true); // Get the language of the project. extern Settings *settings; ProjectConfiguration *projectconfig = settings->projectconfig(project); ustring language = projectconfig->language_get(); // Extract references. ReferencesScanner refscanner(language, book, note_text); // If there are no references, bail out. if (refscanner.references.empty()) { return; } // Make the references available and fire a signal. quick_references = refscanner.references; gtk_button_clicked(GTK_BUTTON(quick_references_button)); } void Editor2::on_textview_move_cursor(GtkTextView * textview, GtkMovementStep step, gint count, gboolean extend_selection, gpointer user_data) { ((Editor2 *) user_data)->textview_move_cursor(textview, step, count); } void Editor2::textview_move_cursor(GtkTextView * textview, GtkMovementStep step, gint count) { // Clear the character style that was going to be applied when the user starts typing. character_style_on_start_typing.clear(); // Keep postponing the actual handler if a new cursor movement was detected before the previous one was processed. gw_destroy_source(textview_move_cursor_id); textview_move_cursor_id = g_timeout_add_full(G_PRIORITY_DEFAULT, 100, GSourceFunc(on_textview_move_cursor_delayed), gpointer(this), NULL); // Act on paragraph crossing. paragraph_crossing_act (step, count); } bool Editor2::on_textview_move_cursor_delayed(gpointer user_data) { ((Editor2 *) user_data)->textview_move_cursor_delayed(); return false; } void Editor2::textview_move_cursor_delayed() // Handle cursor movement. { textview_move_cursor_id = 0; signal_if_styles_changed(); signal_if_verse_changed(); } ustring Editor2::verse_number_get() // Returns the verse number of the insertion point. { // Default verse number. ustring number = "0"; // Proceed if there's a focused paragraph. if (focused_paragraph) { // Get an iterator at the cursor location of the focused textview. GtkTextIter iter; gtk_text_buffer_get_iter_at_mark(focused_paragraph->textbuffer, &iter, gtk_text_buffer_get_insert(focused_paragraph->textbuffer)); // Get verse number. number = get_verse_number_at_iterator(iter, style_get_verse_marker(project), project, vbox_paragraphs); } return number; } void Editor2::on_textview_grab_focus(GtkWidget * widget, gpointer user_data) { ((Editor2 *) user_data)->textview_grab_focus(widget); } void Editor2::textview_grab_focus(GtkWidget * widget) { // Store the paragraph action that created the widget focused_paragraph = widget2paragraph_action (widget); // Clear the character style that was going to be applied when the user starts typing. character_style_on_start_typing.clear(); // Further processing of the focus grab is done with a delay. gw_destroy_source(textview_grab_focus_event_id); textview_grab_focus_event_id = g_timeout_add_full(G_PRIORITY_DEFAULT, 10, GSourceFunc(on_textview_grab_focus_delayed), gpointer(this), NULL); } bool Editor2::on_textview_grab_focus_delayed(gpointer data) { ((Editor2 *) data)->textview_grab_focus_delayed(); return false; } void Editor2::textview_grab_focus_delayed() // Todo /* If the user clicks in the editor window, and straight after that the position of the cursor is requested, we get the position where the cursor was prior to clicking. This delayed handler solves that. */ { textview_grab_focus_event_id = 0; signal_if_styles_changed(); signal_if_verse_changed(); show_quick_references(); } void Editor2::undo() { // If edits were made, the last action on the stack is the OneActionBoundary. // Undo the actions on the stack, and stop at the second OneActionBoundary. unsigned int one_action_boundaries_encountered = 0; while (can_undo() && (one_action_boundaries_encountered <= 1)) { EditorAction * action = actions_done[actions_done.size() - 1]; if (action->type == eatOneActionBoundary) { one_action_boundaries_encountered++; } if (one_action_boundaries_encountered <= 1) { apply_editor_action (action, eaaUndo); } } } void Editor2::redo() { // Redo the actions on the stack till we encounter the OneActionBoundary. unsigned int one_action_boundaries_encountered = 0; while (can_redo() && (one_action_boundaries_encountered == 0)) { EditorAction * action = actions_undone [actions_undone.size() - 1]; if (action->type == eatOneActionBoundary) { one_action_boundaries_encountered++; } apply_editor_action (action, eaaRedo); } } bool Editor2::can_undo() { bool undoable_actions_available = false; if (!actions_done.empty()) { EditorAction * last_action = actions_done[actions_done.size() - 1]; undoable_actions_available = (last_action->type != eatLoadChapterBoundary); } return undoable_actions_available; } bool Editor2::can_redo() { return !actions_undone.empty(); } void Editor2::set_font() { vector textviews = editor_get_widgets (vbox_paragraphs); for (unsigned int i = 0; i < textviews.size(); i++) { set_font_textview (textviews[i]); } } void Editor2::set_font_textview (GtkWidget * textview) { // Set font. PangoFontDescription *font_desc = NULL; extern Settings *settings; ProjectConfiguration *projectconfig = settings->projectconfig(project); if (!projectconfig->editor_font_default_get()) { font_desc = pango_font_description_from_string(projectconfig->editor_font_name_get().c_str()); } gtk_widget_modify_font(textview, font_desc); if (font_desc) pango_font_description_free(font_desc); // Set the colours. if (projectconfig->editor_default_color_get()) { color_widget_default(textview); } else { color_widget_set(textview, projectconfig->editor_normal_text_color_get(), projectconfig->editor_background_color_get(), projectconfig->editor_selected_text_color_get(), projectconfig->editor_selection_color_get()); } // Set predominant text direction. if (projectconfig->right_to_left_get()) { gtk_widget_set_direction(textview, GTK_TEXT_DIR_RTL); } else { gtk_widget_set_direction(textview, GTK_TEXT_DIR_LTR); } } bool Editor2::on_save_timeout(gpointer data) { return ((Editor2 *) data)->save_timeout(); } bool Editor2::save_timeout() { chapter_save(); return true; } gboolean Editor2::on_motion_notify_event(GtkWidget * textview, GdkEventMotion * event, gpointer user_data) { return ((Editor2 *) user_data)->motion_notify_event(textview, event); } gboolean Editor2::motion_notify_event(GtkWidget * textview, GdkEventMotion * event) // Update the cursor image if the pointer moved. { gint x, y; gtk_text_view_window_to_buffer_coords(GTK_TEXT_VIEW(textview), GTK_TEXT_WINDOW_WIDGET, gint(event->x), gint(event->y), &x, &y); GtkTextIter iter; gtk_text_view_get_iter_at_location(GTK_TEXT_VIEW(textview), &iter, x, y); ustring paragraph_style, character_style; get_styles_at_iterator(iter, paragraph_style, character_style); bool hand_cursor = character_style.find (note_starting_style ()) != string::npos; if (hand_cursor != previous_hand_cursor) { GdkCursor *cursor; if (hand_cursor) { cursor = gdk_cursor_new(GDK_HAND2); } else { cursor = gdk_cursor_new(GDK_XTERM); } gdk_window_set_cursor(gtk_text_view_get_window(GTK_TEXT_VIEW(textview), GTK_TEXT_WINDOW_TEXT), cursor); gdk_cursor_unref (cursor); } previous_hand_cursor = hand_cursor; gdk_window_get_pointer (gtk_widget_get_window (textview), NULL, NULL, NULL); return false; } gboolean Editor2::on_textview_button_press_event(GtkWidget * widget, GdkEventButton * event, gpointer user_data) { return ((Editor2 *) user_data)->textview_button_press_event(widget, event); } gboolean Editor2::textview_button_press_event(GtkWidget * widget, GdkEventButton * event) { // See whether the user clicked on a note caller. if (event->type == GDK_BUTTON_PRESS) { // Get iterator at clicking location. GtkTextIter iter; gint x, y; gtk_text_view_window_to_buffer_coords(GTK_TEXT_VIEW(widget), GTK_TEXT_WINDOW_WIDGET, gint(event->x), gint(event->y), &x, &y); gtk_text_view_get_iter_at_location(GTK_TEXT_VIEW(widget), &iter, x, y); // Check whether this is a note caller. ustring paragraph_style, character_style; get_styles_at_iterator(iter, paragraph_style, character_style); if (character_style.find (note_starting_style ()) != string::npos) { // Focus the note paragraph that has this identifier. EditorActionCreateNoteParagraph * note_paragraph = note2paragraph_action (character_style); if (note_paragraph) { give_focus (note_paragraph->textview); } // Do not propagate the button press event. return true; } } // Process this event with a delay. gw_destroy_source(textview_button_press_event_id); textview_button_press_event_id = g_timeout_add_full(G_PRIORITY_DEFAULT, 100, GSourceFunc(on_textview_button_press_delayed), gpointer(this), NULL); // Double-clicking sends the word to Toolbox. if (event->type == GDK_2BUTTON_PRESS) { // Get the textbuffer. GtkTextBuffer *textbuffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(widget)); // Get the word. GtkTextIter enditer; GtkTextIter startiter; gtk_text_buffer_get_iter_at_mark(textbuffer, &enditer, gtk_text_buffer_get_insert(textbuffer)); if (!gtk_text_iter_ends_word(&enditer)) gtk_text_iter_forward_word_end(&enditer); startiter = enditer; gtk_text_iter_backward_word_start(&startiter); // Do not include note markers. GtkTextIter moved_enditer; if (move_end_iterator_before_note_caller_and_validate (startiter, enditer, moved_enditer)) { word_double_clicked_text = gtk_text_buffer_get_text(textbuffer, &startiter, &moved_enditer, false); // Signal to have it sent to Toolbox. gtk_button_clicked(GTK_BUTTON(word_double_clicked_signal)); } } // Propagate the event. return false; } void Editor2::create_or_update_formatting_data() // Create and fill the text tag table for all the formatted views. // If already there, update it. { // If there is no text tag table, create a new one. if (!texttagtable) { texttagtable = gtk_text_tag_table_new(); } // Get the stylesheet. ustring stylesheet = stylesheet_get_actual (); // Get the font size multiplication factor. PangoFontDescription *font_desc = NULL; extern Settings *settings; ProjectConfiguration *projectconfig = settings->projectconfig(project); if (!projectconfig->editor_font_default_get()) { font_desc = pango_font_description_from_string(projectconfig->editor_font_name_get().c_str()); gint fontsize = pango_font_description_get_size(font_desc) / PANGO_SCALE; font_size_multiplier = (double)fontsize / 12; pango_font_description_free(font_desc); } // Create the unknown style. { Style style("", unknown_style(), false); create_or_update_text_style(&style, false, true, font_size_multiplier); } // Get all the Styles. extern Styles *styles; Usfm *usfm = styles->usfm(stylesheet); // Handle the known styles. // The priorities of the character styles should be higher than those of the // paragraph styles. // Therefore paragraph styles are created first, then the other ones. for (unsigned int i = 0; i < usfm->styles.size(); i++) { // Get the properties of this style. bool paragraphstyle = style_get_paragraph(usfm->styles[i].type, usfm->styles[i].subtype); bool plaintext = style_get_plaintext(usfm->styles[i].type, usfm->styles[i].subtype); // Create a text style, only paragraph styles. if (paragraphstyle) create_or_update_text_style(&(usfm->styles[i]), true, plaintext, font_size_multiplier); } for (unsigned int i = 0; i < usfm->styles.size(); i++) { // Get the properties of this style. bool paragraphstyle = style_get_paragraph(usfm->styles[i].type, usfm->styles[i].subtype); bool plaintext = style_get_plaintext(usfm->styles[i].type, usfm->styles[i].subtype); // Create a text style, the non-paragraph styles. if (!paragraphstyle) create_or_update_text_style(&(usfm->styles[i]), false, plaintext, font_size_multiplier); } // Special handling for the verse style, whether it restarts the paragraph. for (unsigned int i = 0; i < usfm->styles.size(); i++) { if (usfm->styles[i].type == stVerseNumber) { verse_restarts_paragraph = usfm->styles[i].userbool1; } } } void Editor2::create_or_update_text_style(Style * style, bool paragraph, bool plaintext, double font_multiplier) // This creates or updates a GtkTextTag with the data stored in "style". // The fontsize of the style is calculated by the value as stored in "style", and multiplied by "font_multiplier". { // Take the existing tag, or create a new one and add it to the tagtable. GtkTextTag *tag = gtk_text_tag_table_lookup(texttagtable, style->marker.c_str()); if (!tag) { tag = gtk_text_tag_new(style->marker.c_str()); gtk_text_tag_table_add(texttagtable, tag); g_object_unref(tag); } // Optionally handle plain-text style and return. if (plaintext) { GValue gvalue = { 0, }; g_value_init(&gvalue, G_TYPE_STRING); int fontsize = (int)(12 * font_multiplier); ustring font = "Courier " + convert_to_string(fontsize); g_value_set_string(&gvalue, font.c_str()); g_object_set_property(G_OBJECT(tag), "font", &gvalue); g_value_unset(&gvalue); return; } // Fontsize. if (paragraph) { GValue gvalue = { 0, }; g_value_init(&gvalue, G_TYPE_DOUBLE); double fontsize = style->fontsize * font_multiplier; g_value_set_double(&gvalue, fontsize); g_object_set_property(G_OBJECT(tag), "size-points", &gvalue); g_value_unset(&gvalue); } // Italic, bold, underline, smallcaps can be ON, OFF, INHERIT, or TOGGLE. // Right now, INHERIT is taken as OFF, and TOGGLE is interpreted as ON. // Improvements might be needed. { PangoStyle pangostyle = PANGO_STYLE_NORMAL; if ((style->italic == ON) || (style->italic == TOGGLE)) pangostyle = PANGO_STYLE_ITALIC; GValue gvalue = { 0, }; g_value_init(&gvalue, PANGO_TYPE_STYLE); g_value_set_enum(&gvalue, pangostyle); g_object_set_property(G_OBJECT(tag), "style", &gvalue); g_value_unset(&gvalue); } { PangoWeight pangoweight = PANGO_WEIGHT_NORMAL; if ((style->bold == ON) || (style->bold == TOGGLE)) pangoweight = PANGO_WEIGHT_BOLD; GValue gvalue = { 0, }; g_value_init(&gvalue, PANGO_TYPE_WEIGHT); g_value_set_enum(&gvalue, pangoweight); g_object_set_property(G_OBJECT(tag), "weight", &gvalue); g_value_unset(&gvalue); } { PangoUnderline pangounderline = PANGO_UNDERLINE_NONE; if ((style->underline == ON) || (style->underline == TOGGLE)) pangounderline = PANGO_UNDERLINE_SINGLE; GValue gvalue = { 0, }; g_value_init(&gvalue, PANGO_TYPE_UNDERLINE); g_value_set_enum(&gvalue, pangounderline); g_object_set_property(G_OBJECT(tag), "underline", &gvalue); g_value_unset(&gvalue); } { /* The small caps variant has not yet been implemented in Pango. PangoVariant pangovariant = PANGO_VARIANT_NORMAL; if ((style->smallcaps == ON) || (style->smallcaps == TOGGLE)) pangovariant = PANGO_VARIANT_NORMAL; GValue gvalue = {0,}; g_value_init (&gvalue, PANGO_TYPE_VARIANT); g_value_set_enum (&gvalue, pangovariant); g_object_set_property (G_OBJECT (tag), "variant", &gvalue); g_value_unset (&gvalue); */ if ((style->smallcaps == ON) || (style->smallcaps == TOGGLE)) { double percentage = (double)0.6 * font_multiplier; GValue gvalue = { 0, }; g_value_init(&gvalue, G_TYPE_DOUBLE); g_value_set_double(&gvalue, percentage); g_object_set_property(G_OBJECT(tag), "scale", &gvalue); g_value_unset(&gvalue); } } /* Superscript. Make size of verse or indeed any superscript equal to around 70% of normal font. Top of verse number should be even with top of capital T. */ if (style->superscript) { // Rise n pixels. { gint rise = 6 * PANGO_SCALE; GValue gvalue = { 0, }; g_value_init(&gvalue, G_TYPE_INT); g_value_set_int(&gvalue, rise); g_object_set_property(G_OBJECT(tag), "rise", &gvalue); g_value_unset(&gvalue); } // Smaller size. { double percentage = 0.7; GValue gvalue = { 0, }; g_value_init(&gvalue, G_TYPE_DOUBLE); g_value_set_double(&gvalue, percentage); g_object_set_property(G_OBJECT(tag), "scale", &gvalue); g_value_unset(&gvalue); } } // Styles that occur in paragraphs only, not in character styles. if (paragraph) { GtkJustification gtkjustification; if (style->justification == CENTER) { gtkjustification = GTK_JUSTIFY_CENTER; } else if (style->justification == RIGHT) { gtkjustification = GTK_JUSTIFY_RIGHT; } else if (style->justification == JUSTIFIED) { // Gtk+ supports this from version 2.12. gtkjustification = GTK_JUSTIFY_LEFT; if (GTK_MAJOR_VERSION >= 2) if (GTK_MINOR_VERSION >= 12) gtkjustification = GTK_JUSTIFY_FILL; } else { // Default is LEFT. gtkjustification = GTK_JUSTIFY_LEFT; } { GValue gvalue = { 0, }; g_value_init(&gvalue, GTK_TYPE_JUSTIFICATION); g_value_set_enum(&gvalue, gtkjustification); g_object_set_property(G_OBJECT(tag), "justification", &gvalue); g_value_unset(&gvalue); } // For property "pixels-above/below-...", only values >= 0 are valid. if (style->spacebefore > 0) { gint spacebefore = (gint) (4 * style->spacebefore); GValue gvalue = { 0, }; g_value_init(&gvalue, G_TYPE_INT); g_value_set_int(&gvalue, spacebefore); g_object_set_property(G_OBJECT(tag), "pixels-above-lines", &gvalue); g_value_unset(&gvalue); } if (style->spaceafter > 0) { gint spaceafter = (gint) (4 * style->spaceafter); GValue gvalue = { 0, }; g_value_init(&gvalue, G_TYPE_INT); g_value_set_int(&gvalue, spaceafter); g_object_set_property(G_OBJECT(tag), "pixels-below-lines", &gvalue); g_value_unset(&gvalue); } { gint leftmargin = (gint) (4 * style->leftmargin); // A little left margin is desired to make selecting words easier. leftmargin += 5; GValue gvalue = { 0, }; g_value_init(&gvalue, G_TYPE_INT); g_value_set_int(&gvalue, leftmargin); g_object_set_property(G_OBJECT(tag), "left-margin", &gvalue); g_value_unset(&gvalue); } if (style->rightmargin > 0) { gint rightmargin = (gint) (4 * style->rightmargin); GValue gvalue = { 0, }; g_value_init(&gvalue, G_TYPE_INT); g_value_set_int(&gvalue, rightmargin); g_object_set_property(G_OBJECT(tag), "right-margin", &gvalue); g_value_unset(&gvalue); } { gint firstlineindent = (gint) (4 * style->firstlineindent); GValue gvalue = { 0, }; g_value_init(&gvalue, G_TYPE_INT); g_value_set_int(&gvalue, firstlineindent); g_object_set_property(G_OBJECT(tag), "indent", &gvalue); g_value_unset(&gvalue); } } { GdkColor color; color_decimal_to_gdk(style->color, &color); GValue gvalue = { 0, }; g_value_init(&gvalue, GDK_TYPE_COLOR); g_value_set_boxed(&gvalue, &color); g_object_set_property(G_OBJECT(tag), "foreground-gdk", &gvalue); g_value_unset(&gvalue); } } void Editor2::on_buffer_insert_text_after(GtkTextBuffer * textbuffer, GtkTextIter * pos_iter, gchar * text, gint length, gpointer user_data) { // The "length" parameter does not give the length as the number of characters // but the byte length of the "text" parameter. It is not passed on. ((Editor2 *) user_data)->buffer_insert_text_after(textbuffer, pos_iter, text); } void Editor2::buffer_insert_text_after(GtkTextBuffer * textbuffer, GtkTextIter * pos_iter, gchar * text) // This function is called after the default handler has inserted the text. // At this stage "pos_iter" points to the end of the inserted text. { // If text buffers signals are to be disregarded, bail out. if (disregard_text_buffer_signals) { return; } // Text to work with. ustring utext (text); // New lines in notes are not supported. if (focused_paragraph->type == eatCreateNoteParagraph) { replace_text (utext, "\n", " "); } // Get offset of text insertion point. gint text_insertion_offset = gtk_text_iter_get_offset (pos_iter) - utext.length(); // Variable for the character style that the routines below indicate should be applied to the inserted text. ustring character_style_to_be_applied; /* If text is inserted right before where a character style was in effect, the GtkTextBuffer does not apply any style to that text. The user expects that the character style that applies to the insertion point will be applied to the new text as well. Do not extend a note style. */ if (character_style_to_be_applied.empty()) { ustring paragraph_style; GtkTextIter iter = *pos_iter; get_styles_at_iterator(iter, paragraph_style, character_style_to_be_applied); if (character_style_to_be_applied.find (note_starting_style ()) == 0) { character_style_to_be_applied.clear(); } } /* If text is inserted right after where a character style is in effect, the user expects this character style to be used for the inserted text as well. This does not happen automatically in the GtkTextBuffer. The code below cares for it. Do not extend a note style. */ if (character_style_to_be_applied.empty()) { GtkTextIter iter; gtk_text_buffer_get_iter_at_offset (textbuffer, &iter, text_insertion_offset); if (gtk_text_iter_backward_char (&iter)) { ustring paragraph_style; get_styles_at_iterator(iter, paragraph_style, character_style_to_be_applied); } if (character_style_to_be_applied.find (note_starting_style ()) == 0) { character_style_to_be_applied.clear(); } } /* When a character style has been applied, and then the user starts typing, he expects that this style is going to be applied to the text he types. The code below cares for that. */ if (character_style_to_be_applied.empty()) { character_style_to_be_applied = character_style_on_start_typing; character_style_on_start_typing.clear(); } // Intelligent verse handling. if (!character_style_to_be_applied.empty()) { ustring verse_style = style_get_verse_marker(project); if (character_style_to_be_applied == verse_style) { gunichar character = g_utf8_get_char(text); // When the cursor is at a verse, and the user types a space, // he wishes to stop the verse and start normal text. if (g_unichar_isspace(character)) { character_style_to_be_applied.clear(); } // When the cursor is after a verse, and the user types anything // but a numeral, a hyphen, or a comma, it means he wishes to stop the verse. if (!g_unichar_isdigit(character) && (character != '-') && (character != ',')) { character_style_to_be_applied.clear(); } } } // Remove the text that was inserted into the textbuffer. // Then, it needs to be inserted through Editor Actions. // This is for the Undo and Redo system. disregard_text_buffer_signals++; GtkTextIter startiter = *pos_iter; gtk_text_iter_backward_chars (&startiter, utext.length()); gtk_text_buffer_delete (textbuffer, &startiter, pos_iter); disregard_text_buffer_signals--; // If there are one or more backslashes in the text, then USFM code is being entered. // Else treat it as if the user is typing text. if (utext.find ("\\") != string::npos) { // Load USFM code. text_load (text, character_style_to_be_applied, false); } else { // Load plain text. Handle new lines as well. size_t newlineposition = utext.find("\n"); while (newlineposition != string::npos) { ustring line = utext.substr(0, newlineposition); if (!line.empty()) { text_load (line, character_style_to_be_applied, false); character_style_to_be_applied.clear(); } // Get markup after insertion point. New paragraph. ustring paragraph_style = unknown_style (); vector text; vector styles; if (focused_paragraph) { paragraph_style = focused_paragraph->style; EditorActionDeleteText * delete_action = paragraph_get_text_and_styles_after_insertion_point(focused_paragraph, text, styles); if (delete_action) { apply_editor_action (delete_action); } } editor_start_new_standard_paragraph (paragraph_style); // Transfer anything from the previous paragraph to the new one. gint initial_offset = editor_paragraph_insertion_point_get_offset (focused_paragraph); gint accumulated_offset = initial_offset; for (unsigned int i = 0; i < text.size(); i++) { EditorActionInsertText * insert_action = new EditorActionInsertText (focused_paragraph, accumulated_offset, text[i]); apply_editor_action (insert_action); if (!styles[i].empty()) { EditorActionChangeCharacterStyle * style_action = new EditorActionChangeCharacterStyle(focused_paragraph, styles[i], accumulated_offset, text[i].length()); apply_editor_action (style_action); } accumulated_offset += text[i].length(); } // Move insertion points to the proper position. editor_paragraph_insertion_point_set_offset (focused_paragraph, initial_offset); // Remove the part of the input text that has been handled. utext.erase(0, newlineposition + 1); newlineposition = utext.find("\n"); } if (!utext.empty()) { text_load (utext, character_style_to_be_applied, false); character_style_to_be_applied.clear(); } } // Insert the One Action boundary. apply_editor_action (new EditorAction (eatOneActionBoundary)); // The pos_iter variable that was passed to this function was invalidated because text was removed and added. // Here it is validated again. This prevents critical errors within Gtk. gtk_text_buffer_get_iter_at_offset (textbuffer, pos_iter, text_insertion_offset); } void Editor2::on_buffer_delete_range_before(GtkTextBuffer * textbuffer, GtkTextIter * start, GtkTextIter * end, gpointer user_data) { ((Editor2 *) user_data)->buffer_delete_range_before(textbuffer, start, end); } void Editor2::buffer_delete_range_before(GtkTextBuffer * textbuffer, GtkTextIter * start, GtkTextIter * end) { // Bail out if we don't care about textbuffer signals. if (disregard_text_buffer_signals) { return; } disregard_text_buffer_signals++; textbuffer_delete_range_was_fired = true; // Record the content that is about to be deleted. get_text_and_styles_between_iterators(start, end, text_to_be_deleted, styles_to_be_deleted); // Make the end iterator the same as the start iterator, so that nothing gets deleted. // It will get deleted through EditorActions, so that Undo and Redo work. * end = * start; // Care about textbuffer signals again. disregard_text_buffer_signals--; } void Editor2::on_buffer_delete_range_after(GtkTextBuffer * textbuffer, GtkTextIter * start, GtkTextIter * end, gpointer user_data) { ((Editor2 *) user_data)->buffer_delete_range_after(textbuffer, start, end); } void Editor2::buffer_delete_range_after(GtkTextBuffer * textbuffer, GtkTextIter * start, GtkTextIter * end) { // Bail out if we don't care about textbuffer signals. if (disregard_text_buffer_signals) { return; } disregard_text_buffer_signals++; // Delete the text. if (focused_paragraph) { ustring text; for (unsigned int i = 0; i < text_to_be_deleted.size(); i++) { text.append (text_to_be_deleted[i]); } gint offset = gtk_text_iter_get_offset (start); EditorActionDeleteText * delete_action = new EditorActionDeleteText(focused_paragraph, offset, text.length()); apply_editor_action (delete_action); } // If there are any notes among the deleted text, delete these notes as well. for (unsigned int i = 0; i < styles_to_be_deleted.size(); i++) { if (styles_to_be_deleted[i].find (note_starting_style ()) == 0) { EditorActionCreateNoteParagraph * paragraph_action = note2paragraph_action (styles_to_be_deleted[i]); if (paragraph_action) { GtkTextIter iter; gtk_text_buffer_get_end_iter (paragraph_action->textbuffer, &iter); gint length = gtk_text_iter_get_offset (&iter); apply_editor_action (new EditorActionDeleteText (paragraph_action, 0, length)); apply_editor_action (new EditorActionDeleteParagraph(paragraph_action)); } } } // Clear data that was used to find out what to delete. text_to_be_deleted.clear(); styles_to_be_deleted.clear(); // Insert the One Action boundary. apply_editor_action (new EditorAction (eatOneActionBoundary)); // Care about textbuffer signals again. disregard_text_buffer_signals--; } void Editor2::signal_if_styles_changed() // Todo { set < ustring > styles = get_styles_at_cursor(); if (styles != styles_at_cursor) { styles_at_cursor = styles; if (new_styles_signal) { gtk_button_clicked(GTK_BUTTON(new_styles_signal)); } } } set < ustring > Editor2::get_styles_at_cursor() // Gets all the styles that apply to the cursor, or to the selection. { // The styles. set styles; // Carry on if there's a focused paragraph. if (focused_paragraph) { GtkTextBuffer * textbuffer = focused_paragraph->textbuffer; // Get the iterators at the selection bounds of the focused textview. GtkTextIter startiter, enditer; gtk_text_buffer_get_selection_bounds(textbuffer, &startiter, &enditer); // Get the applicable styles. // This is done by getting the names of the styles between these iterators. GtkTextIter iter = startiter; do { ustring paragraphstyle, characterstyle; get_styles_at_iterator(iter, paragraphstyle, characterstyle); if (!paragraphstyle.empty()) styles.insert(paragraphstyle); if (!characterstyle.empty()) styles.insert(characterstyle); gtk_text_iter_forward_char(&iter); } while (gtk_text_iter_in_range(&iter, &startiter, &enditer)); } // Return the list. return styles; } set < ustring > Editor2::styles_at_iterator(GtkTextIter iter) // Get all the styles that apply at the iterator. { set < ustring > styles; ustring paragraph_style, character_style; get_styles_at_iterator(iter, paragraph_style, character_style); if (!paragraph_style.empty()) styles.insert(paragraph_style); if (!character_style.empty()) styles.insert(character_style); return styles; } GtkTextBuffer *Editor2::last_focused_textbuffer() // Returns the focused textbuffer, or NULL if none. { if (focused_paragraph) { return focused_paragraph->textbuffer; } return NULL; } EditorTextViewType Editor2::last_focused_type() // Returns the type of the textview that was focused most recently. // This could be the main body of text, or a note, or a table. { if (focused_paragraph) { if (focused_paragraph->type == eatCreateNoteParagraph) { return etvtNote; } } // return etvtTable; return etvtBody; } void Editor2::apply_style(const ustring & marker) /* It applies the style of "marker" to the text. If it is a paragraph style, it applies the style throughout the paragraph. If it is a character style, it only applies it on the selected text, or on the cursor position, or on the word that the cursor is in. Applying character styles works as a toggle: if the style is not there, it will be put there. If it was there, it will be removed. */ { // Get the type and subtype of the marker. StyleType type; int subtype; marker_get_type_and_subtype(project, marker, type, subtype); /* Get the type of textview that was focused last, and find out whether the style that is now going to be inserted is applicable in this particular textview. For example to a table only the relevant table styles can be applied. Give a message if there is a mismatch. */ EditorTextViewType textviewtype = last_focused_type(); bool style_application_ok = true; ustring style_application_fault_reason; switch (textviewtype) { case etvtBody: { if ((type == stFootEndNote) || (type == stCrossreference) || (type == stTableElement)) { style_application_ok = false; } style_application_fault_reason = "Trying to apply a "; if (type == stFootEndNote) style_application_fault_reason.append("foot- or endnote"); if (type == stCrossreference) style_application_fault_reason.append("crossreference"); if (type == stTableElement) style_application_fault_reason.append("table"); style_application_fault_reason.append(" style"); break; } case etvtNote: { if ((type != stFootEndNote) && (type != stCrossreference)) { style_application_ok = false; } style_application_fault_reason = "Only note related styles apply"; break; } case etvtTable: { // Check that only a table element is going to be inserted. if (type != stTableElement) { style_application_ok = false; style_application_fault_reason = "Only table styles apply"; break; } // Check that only a style with the right column number is going to be applied. ustring stylesheet = stylesheet_get_actual(); extern Styles *styles; Usfm *usfm = styles->usfm(stylesheet); for (unsigned int i = 0; i < usfm->styles.size(); i++) { if (marker == usfm->styles[i].marker) { /* unsigned int column = usfm->styles[i].userint1; if (column > 5) { style_application_ok = false; style_application_fault_reason = "Table column number mismatch"; break; } */ } } break; } } // Whether there's a paragraph to apply the style to. if (!focused_paragraph) { style_application_ok = false; style_application_fault_reason = "Cannot find paragraph"; } // If necessary give error message. if (!style_application_ok) { ustring message("This style cannot be applied here."); message.append("\n\n"); message.append(style_application_fault_reason); message.append("."); gtkw_dialog_error(NULL, message.c_str()); return; } // Get the active textbuffer and textview. GtkTextBuffer *textbuffer = focused_paragraph->textbuffer; GtkWidget *textview = focused_paragraph->textview; if (style_get_starts_new_line_in_editor(type, subtype)) { // Handle a paragraph style. apply_editor_action (new EditorActionChangeParagraphStyle (marker, focused_paragraph)); } else { // Handle a character style. // Find the iterator at the start and at the end of the text to be put in this style. GtkTextIter iter, startiter, enditer; // If some text has been selected, take that. if (gtk_text_buffer_get_selection_bounds(textbuffer, &startiter, &enditer)) { } else { // No selection: // If the insertion point is inside a word, take that word. // Else just take the insertion point. gtk_text_buffer_get_iter_at_mark(textbuffer, &iter, gtk_text_buffer_get_insert(textbuffer)); startiter = iter; enditer = iter; if (gtk_text_iter_inside_word(&iter) && !gtk_text_iter_starts_word(&iter)) { gtk_text_iter_backward_word_start(&startiter); gtk_text_iter_forward_word_end(&enditer); } } // Check whether the character style that we are going to // apply has been applied already throughout the range. iter = startiter; bool character_style_already_applied = true; do { ustring paragraph_style, character_style; get_styles_at_iterator(iter, paragraph_style, character_style); if (character_style != marker) character_style_already_applied = false; GtkTextIter iter2 = iter; gtk_text_iter_forward_char(&iter2); gtk_text_iter_forward_char(&iter); } while (gtk_text_iter_in_range(&iter, &startiter, &enditer)); // If the character style was applied already, toggle it. ustring style (marker); if (character_style_already_applied) { style.clear(); } // Apply the new character style gint startoffset = gtk_text_iter_get_offset (&startiter); gint endoffset = gtk_text_iter_get_offset (&enditer); EditorActionChangeCharacterStyle * style_action = new EditorActionChangeCharacterStyle(focused_paragraph, style, startoffset, endoffset - startoffset); apply_editor_action (style_action); // Store this character style so it can be re-used when the user starts typing text. character_style_on_start_typing = style; } // One Action boundary. apply_editor_action (new EditorAction (eatOneActionBoundary)); // Update gui. signal_if_styles_changed(); // Focus editor. give_focus(textview); } void Editor2::insert_note(const ustring & marker, const ustring & rawtext) /* Inserts a note in the editor. marker: The marker that starts the note, e.g. "fe" for an endnote. rawtext: The raw text of the note, e.g. "+ Mat 1.1.". Note that this excludes the note opener and note closer. It has only the caller and the USFM code of the note body. */ { ustring usfmcode; usfmcode.append (usfm_get_full_opening_marker (marker)); usfmcode.append (rawtext); usfmcode.append (usfm_get_full_closing_marker (marker)); if (focused_paragraph) { gtk_text_buffer_insert_at_cursor (focused_paragraph->textbuffer, usfmcode.c_str(), -1); } } void Editor2::insert_table(const ustring & rawtext) // Inserts a table in the editor. // rawtext: The raw text of the table, e.g. "\tr \tc1 \tc2 \tc3 \tc4 ". { if (focused_paragraph) { gtk_text_buffer_insert_at_cursor (focused_paragraph->textbuffer, rawtext.c_str(), -1); } } void Editor2::on_textbuffer_changed(GtkTextBuffer * textbuffer, gpointer user_data) { ((Editor2 *) user_data)->textbuffer_changed(textbuffer); } void Editor2::textbuffer_changed(GtkTextBuffer * textbuffer) { spelling_trigger(); } void Editor2::highlight_searchwords() // Highlights all the search words. { // Destroy optional previous object. if (highlight) delete highlight; // Bail out if there's no focused paragraph. if (!focused_paragraph) { return; } // This code is why the highlighting is slow. It does all the // operations essentially backward, waiting on a new thread to get // started and to its work before doing anything else. Thread // creation is a fairly very high overhead operation. As a result, // this method is guaranteed to introduce more delay in the process // of figuring out and marking the highlighted text than it would to // just do it. See below. /* // Highlighting timeout. if (highlight_timeout_event_id) { gw_destroy_source (highlight_timeout_event_id); } highlight_timeout_event_id = g_timeout_add_full(G_PRIORITY_DEFAULT, 500, GSourceFunc(on_highlight_timeout), gpointer(this), NULL); // Create a new highlighting object. highlight = new Highlight(focused_paragraph->textbuffer, focused_paragraph->textview, project, reference_tag, current_verse_number); // New g_thread_new ("highlight", GThreadFunc (highlight_thread_start), gpointer(this)); g_thread_create(GThreadFunc(highlight_thread_start), gpointer(this), false, NULL); */ // MAP: Here's how I think it should be done, more synchronously instead of threaded. highlight = new Highlight(focused_paragraph->textbuffer, focused_paragraph->textview, project, reference_tag, current_verse_number); // The time-consuming part of highlighting is to determine what bits // of text to highlight. Because it takes time, and the program // should continue to respond, it is [was] done in a thread. MAP: // But there is a problem when you type text, delete, then start // typing again. The threaded-ness of this means that sometimes, // bibledit starts overwriting text from the beginning of the verse // instead of typing in the location where the cursor is. TODO: I am // planning eventually to FIX the TIME CONSUMING PART so that the // whole thing will be more efficient. highlight->determine_locations(); assert(highlight->locations_ready); highlight->highlight(); // Delete and NULL the object making it ready for next use. delete highlight; highlight = NULL; } bool Editor2::on_highlight_timeout(gpointer data) { return ((Editor2 *) data)->highlight_timeout(); } bool Editor2::highlight_timeout() { // If the highlighting object is not there, destroy timer and bail out. if (!highlight) { return false; } // Proceed if the locations for highlighting are ready. if (highlight->locations_ready) { highlight->highlight(); // Delete and NULL the object making it ready for next use. delete highlight; highlight = NULL; } // Timer keeps going. return true; } void Editor2::highlight_thread_start(gpointer data) { ((Editor2 *) data)->highlight_thread_main(); } void Editor2::highlight_thread_main() { // The time-consuming part of highlighting is to determine what bits of text // to highlight. Because it takes time, and the program should continue // to respond, it is done in a thread. MAP: But there is a problem when you type // text, delete, then start typing again, the threaded-ness of this means that // sometimes, be starts overwriting text from the beginning of the verse instead // of typing in the location where the cursor is. if (highlight) { highlight->determine_locations(); } } ustring Editor2::get_chapter() { ustring chaptertext; vector textviews = editor_get_widgets (vbox_paragraphs); for (unsigned int i = 0; i < textviews.size(); i++) { GtkTextBuffer * textbuffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (textviews[i])); GtkTextIter startiter, enditer; gtk_text_buffer_get_start_iter(textbuffer, &startiter); gtk_text_buffer_get_end_iter(textbuffer, &enditer); ustring paragraph_text = usfm_get_text(textbuffer, startiter, enditer); replace_text(paragraph_text, " ", " "); if (i) { chaptertext.append ("\n"); } chaptertext.append (paragraph_text); } return chaptertext; } void Editor2::spelling_trigger() { if (project.empty()) return; extern Settings *settings; ProjectConfiguration *projectconfig = settings->projectconfig(project); if (!projectconfig) return; if (!projectconfig->spelling_check_get()) return; gw_destroy_source(spelling_timeout_event_id); spelling_timeout_event_id = g_timeout_add_full(G_PRIORITY_DEFAULT, 1000, GSourceFunc(on_spelling_timeout), gpointer(this), NULL); } bool Editor2::on_spelling_timeout(gpointer data) { ((Editor2 *) data)->spelling_timeout(); return false; } void Editor2::spelling_timeout() { // Clear event id. spelling_timeout_event_id = 0; // Check spelling of all active textviews. vector textviews = editor_get_widgets (vbox_paragraphs); for (unsigned int i = 0; i < textviews.size(); i++) { GtkTextBuffer * textbuffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (textviews[i])); spellingchecker->check(textbuffer); } // Signal spelling checked. gtk_button_clicked (GTK_BUTTON (spelling_checked_signal)); } void Editor2::on_button_spelling_recheck_clicked(GtkButton * button, gpointer user_data) { ((Editor2 *) user_data)->spelling_timeout(); } void Editor2::load_dictionaries() { extern Settings *settings; ProjectConfiguration *projectconfig = settings->projectconfig(project); if (projectconfig->spelling_check_get()) { spellingchecker->set_dictionaries(projectconfig->spelling_dictionaries_get()); } } vector Editor2::spelling_get_misspelled () { // Collect the misspelled words. vector words; vector textviews = editor_get_widgets (vbox_paragraphs); for (unsigned int i = 0; i < textviews.size(); i++) { GtkTextBuffer * textbuffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (textviews[i])); vector words2 = spellingchecker->get_misspellings(textbuffer); for (unsigned int i2 = 0; i2 < words2.size(); i2++) { words.push_back (words2[i2]); } } // Remove double ones. set wordset (words.begin (), words.end()); words.clear(); words.assign (wordset.begin (), wordset.end()); // Give result. return words; } void Editor2::spelling_approve (const vector & words) { // Approve all the words in the list. // Since this may take time, a windows will show the progress. ProgressWindow progresswindow ("Adding words to dictionary", false); progresswindow.set_iterate (0, 1, words.size()); for (unsigned int i = 0; i < words.size(); i++) { progresswindow.iterate (); spellingchecker->add_to_dictionary (words[i].c_str()); } // Trigger a new spelling check. spelling_trigger(); } bool Editor2::move_cursor_to_spelling_error (bool next, bool extremity) // Move the cursor to the next (or previous) spelling error. // Returns true if it was found, else false. { bool moved = false; if (focused_paragraph) { GtkTextBuffer * textbuffer = focused_paragraph->textbuffer; do { moved = spellingchecker->move_cursor_to_spelling_error (textbuffer, next, extremity); if (!moved) { GtkWidget * textview = focused_paragraph->textview; textbuffer = NULL; if (next) { textview = editor_get_next_textview (vbox_paragraphs, textview); } else { textview = editor_get_previous_textview (vbox_paragraphs, textview); } if (textview) { give_focus (textview); textbuffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (textview)); GtkTextIter iter; if (next) gtk_text_buffer_get_start_iter (textbuffer, &iter); else gtk_text_buffer_get_end_iter (textbuffer, &iter); gtk_text_buffer_place_cursor (textbuffer, &iter); } } } while (!moved && textbuffer); } if (moved) { //scroll_insertion_point_on_screen (); // Remove all the complicated timeout stuff and go right to work scroll_insertion_point_on_screen_timeout (); } return moved; } void Editor2::scroll_insertion_point_on_screen () { scroll_insertion_point_on_screen_id = g_timeout_add(100, GSourceFunc(on_scroll_insertion_point_on_screen_timeout), gpointer(this)); } bool Editor2::on_scroll_insertion_point_on_screen_timeout(gpointer data) { ((Editor2 *) data)->scroll_insertion_point_on_screen_timeout(); return false; } void Editor2::scroll_insertion_point_on_screen_timeout() // Todo crashes here. { if (!focused_paragraph->textbuffer) return; if (focused_paragraph) { // Ensure that the screen has been fully displayed. while (gtk_events_pending()) { gtk_main_iteration(); } // Adjustment. GtkAdjustment * adjustment = gtk_viewport_get_vadjustment (GTK_VIEWPORT (viewport)); // Visible window height. gdouble visible_window_height = gtk_adjustment_get_page_size (adjustment); // Total window height. gdouble total_window_height = gtk_adjustment_get_upper (adjustment); // Get all the textviews. vector textviews = editor_get_widgets (vbox_paragraphs); // Offset of insertion point starting from top. gint insertion_point_offset = 0; { for (unsigned int i = 0; i < textviews.size(); i++) { if (focused_paragraph->textview == textviews[i]) { break; } GtkAllocation allocation; gtk_widget_get_allocation (textviews[i], &allocation); insertion_point_offset += allocation.height; } //GtkTextMark * gtktextmark = gtk_text_buffer_get_insert (focused_paragraph->textbuffer); GtkTextMark * gtktextmark = gtk_text_buffer_get_mark (focused_paragraph->textbuffer, "insert"); GtkTextIter iter; gtk_text_buffer_get_iter_at_mark (focused_paragraph->textbuffer, &iter, gtktextmark); GdkRectangle rectangle; gtk_text_view_get_iter_location (GTK_TEXT_VIEW (focused_paragraph->textview), &iter, &rectangle); gint window_x, window_y; gtk_text_view_buffer_to_window_coords (GTK_TEXT_VIEW (focused_paragraph->textview), GTK_TEXT_WINDOW_WIDGET, rectangle.x, rectangle.y, &window_x, &window_y); insertion_point_offset += rectangle.y; } // Set the adjustment to move the insertion point into 1/3th of // the visible part of the window. TODO: This should be an option // that the user can set. Sometimes it is distracting to have the // text move automatically. In Emacs, for instance, the user can // hit Ctrl-L to do that manually. We could have a preference that // says "auto-scroll text window to center 1/3 of window" or // something like that. This code slows the perceived user // experience because they have to reorient their eyes to where // the text moves to. Certainly when the cursor moves out of the // window then we need to auto-scroll by some amount, but it is // debatable whether we should auto-center the text or just move // the window by a line or two. I've attempted to do the latter, but // it is not perfect at the moment, so there is still some more TODO. /* If the insertion point is at 800, and the height of the visible window is 500, and the total window height is 1000, then the calculation of the offset is as follows: Half the height of the visible window is 250. Insertion point is at 800, so the start of the visible window should be at 800 - 250 = 550. Therefore the adjustment should move to 550. The adjustment value should stay within its limits. If it exceeds these, the viewport draws double lines. */ //gdouble adjustment_value = insertion_point_offset - (visible_window_height * 0.33); // While working within a viewport, we will not scroll gdouble adjustment_value = gtk_adjustment_get_value(adjustment); if (insertion_point_offset < (gtk_adjustment_get_value(adjustment)+20)) { adjustment_value = insertion_point_offset - 60; } else if (insertion_point_offset > (gtk_adjustment_get_value(adjustment) + visible_window_height - 20)) { adjustment_value = insertion_point_offset - visible_window_height + 60; } if (adjustment_value < 0) { adjustment_value = 0; } else if (adjustment_value > (total_window_height - visible_window_height)) { adjustment_value = total_window_height - visible_window_height; } gtk_adjustment_set_value (adjustment, adjustment_value); // Remove any previous verse number highlight. { GtkTextIter startiter, enditer; for (unsigned int i = 0; i < textviews.size(); i++) { GtkTextBuffer * textbuffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (textviews[i])); gtk_text_buffer_get_start_iter (textbuffer, &startiter); gtk_text_buffer_get_end_iter (textbuffer, &enditer); gtk_text_buffer_remove_tag (textbuffer, verse_highlight_tag, &startiter, &enditer); } } // Highlight the verse if it is non-zero. if (current_verse_number != "0") { GtkWidget * textview; GtkTextIter startiter, enditer; if (get_iterator_at_verse_number (current_verse_number, style_get_verse_marker(project), vbox_paragraphs, startiter, textview)) { GtkTextBuffer * textbuffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (textview)); enditer = startiter; gtk_text_iter_forward_chars (&enditer, current_verse_number.length()); gtk_text_buffer_apply_tag (textbuffer, verse_highlight_tag, &startiter, &enditer); } } } } void Editor2::apply_editor_action (EditorAction * action, EditorActionApplication application) { // An editor action is being applied. disregard_text_buffer_signals++; // Pointer to any widget that should grab focus. GtkWidget * widget_that_should_grab_focus = NULL; // Whether contents was been changed. bool contents_was_changed = false; // Deal with the action depending on its type. switch (action->type) { case eatCreateParagraph: { EditorActionCreateParagraph * paragraph_action = static_cast (action); switch (application) { case eaaInitial: { paragraph_action->apply(texttagtable, editable, focused_paragraph, widget_that_should_grab_focus); paragraph_create_actions (paragraph_action); break; } case eaaUndo: paragraph_action->undo (vbox_parking_lot, widget_that_should_grab_focus); break; case eaaRedo: paragraph_action->redo (widget_that_should_grab_focus); break; } break; } case eatChangeParagraphStyle: { EditorActionChangeParagraphStyle * style_action = static_cast (action); switch (application) { case eaaInitial: style_action->apply(widget_that_should_grab_focus); break; case eaaUndo: style_action->undo (widget_that_should_grab_focus); break; case eaaRedo: style_action->redo (widget_that_should_grab_focus); break; } break; } case eatInsertText: { EditorActionInsertText * insert_action = static_cast (action); switch (application) { case eaaInitial: insert_action->apply(widget_that_should_grab_focus); break; case eaaUndo: insert_action->undo (widget_that_should_grab_focus); break; case eaaRedo: insert_action->redo (widget_that_should_grab_focus); break; } contents_was_changed = true; break; } case eatDeleteText: { EditorActionDeleteText * delete_action = static_cast (action); switch (application) { case eaaInitial: delete_action->apply(widget_that_should_grab_focus); break; case eaaUndo: delete_action->undo (widget_that_should_grab_focus); break; case eaaRedo: delete_action->redo (widget_that_should_grab_focus); break; } contents_was_changed = true; break; } case eatChangeCharacterStyle: { EditorActionChangeCharacterStyle * style_action = static_cast (action); switch (application) { case eaaInitial: style_action->apply(widget_that_should_grab_focus); break; case eaaUndo: style_action->undo (widget_that_should_grab_focus); break; case eaaRedo: style_action->redo (widget_that_should_grab_focus); break; } break; } case eatLoadChapterBoundary: case eatOneActionBoundary: { break; } case eatDeleteParagraph: { EditorActionDeleteParagraph * delete_action = static_cast (action); switch (application) { case eaaInitial: delete_action->apply(vbox_parking_lot, widget_that_should_grab_focus); break; case eaaUndo: delete_action->undo (widget_that_should_grab_focus); break; case eaaRedo: delete_action->redo (vbox_parking_lot, widget_that_should_grab_focus); break; } break; } case eatCreateNoteParagraph: { EditorActionCreateNoteParagraph * paragraph_action = static_cast (action); switch (application) { case eaaInitial: { paragraph_action->apply(texttagtable, editable, focused_paragraph, widget_that_should_grab_focus); paragraph_create_actions (paragraph_action); break; } case eaaUndo: paragraph_action->undo (vbox_parking_lot, widget_that_should_grab_focus); break; case eaaRedo: paragraph_action->redo (widget_that_should_grab_focus); break; } break; } } // Put this action in the right list. switch (application) { case eaaInitial: action->apply(actions_done ); break; case eaaUndo: action->undo (actions_done, actions_undone); break; case eaaRedo: action->redo (actions_done, actions_undone); break; } // If there's any widget that was earmarked to be focused, grab its focus. // This can only be done at the end when the whole object has been set up, // because the callback for grabbing the focus uses this object. if (widget_that_should_grab_focus) { give_focus (widget_that_should_grab_focus); } // Handle situation where the contents of the editor has been changed. if (contents_was_changed) { show_quick_references (); gtk_button_clicked(GTK_BUTTON(changed_signal)); } // Applying the editor action is over. disregard_text_buffer_signals--; } void Editor2::paragraph_create_actions (EditorActionCreateParagraph * paragraph_action) { // Connect text buffer signals. g_signal_connect_after(G_OBJECT(paragraph_action->textbuffer), "insert-text", G_CALLBACK(on_buffer_insert_text_after), gpointer(this)); g_signal_connect(G_OBJECT(paragraph_action->textbuffer), "delete-range", G_CALLBACK(on_buffer_delete_range_before), gpointer(this)); g_signal_connect_after(G_OBJECT(paragraph_action->textbuffer), "delete-range", G_CALLBACK(on_buffer_delete_range_after), gpointer(this)); g_signal_connect(G_OBJECT(paragraph_action->textbuffer), "changed", G_CALLBACK(on_textbuffer_changed), gpointer(this)); // Connect spelling checker. spellingchecker->attach(paragraph_action->textview); // Connect text view signals. g_signal_connect_after((gpointer) paragraph_action->textview, "move_cursor", G_CALLBACK(on_textview_move_cursor), gpointer(this)); g_signal_connect((gpointer) paragraph_action->textview, "motion-notify-event", G_CALLBACK(on_motion_notify_event), gpointer(this)); g_signal_connect_after((gpointer) paragraph_action->textview, "grab-focus", G_CALLBACK(on_textview_grab_focus), gpointer(this)); g_signal_connect((gpointer) paragraph_action->textview, "key-press-event", G_CALLBACK(on_textview_key_press_event), gpointer(this)); g_signal_connect((gpointer) paragraph_action->textview, "key-release-event", G_CALLBACK(on_textview_key_release_event), gpointer(this)); g_signal_connect((gpointer) paragraph_action->textview, "button_press_event", G_CALLBACK(on_textview_button_press_event), gpointer(this)); // Set font set_font_textview (paragraph_action->textview); // Signal the parent window to connect to the signals of the text view. new_widget_pointer = paragraph_action->textview; gtk_button_clicked (GTK_BUTTON (new_widget_signal)); // Extra bits to be done for a note. if (paragraph_action->type == eatCreateNoteParagraph) { // Cast the object to the right type. EditorActionCreateNoteParagraph * note_action = static_cast (paragraph_action); // Connect signal for note caller in note. g_signal_connect ((gpointer) note_action->eventbox, "button_press_event", G_CALLBACK (on_caller_button_press_event), gpointer (this)); } } void Editor2::editor_start_new_standard_paragraph (const ustring& marker_text) // This function deals with a marker that starts a standard paragraph. { // Create a new paragraph. EditorActionCreateParagraph * paragraph = new EditorActionCreateParagraph (vbox_paragraphs); apply_editor_action (paragraph); // The new paragraph markup. EditorActionChangeParagraphStyle * style_action = new EditorActionChangeParagraphStyle (marker_text, paragraph); apply_editor_action (style_action); // Some styles insert their marker: Do that here if appropriate. StyleType type; int subtype; marker_get_type_and_subtype(project, marker_text, type, subtype); if (style_get_displays_marker(type, subtype)) { gint insertion_offset = editor_paragraph_insertion_point_get_offset (paragraph); EditorActionInsertText * insert_action = new EditorActionInsertText (paragraph, insertion_offset, usfm_get_full_opening_marker (marker_text)); apply_editor_action (insert_action); } } void Editor2::editor_start_verse(ustring& line, ustring& marker_text, ustring& character_style) { // Clear any character style. character_style.clear(); // Get the currently focused paragraph. In rare cases there may be none. EditorActionCreateParagraph * paragraph = focused_paragraph; // A verse number should start in a normal paragraph, not a title or heading. Check for that. bool in_normal_paragraph = false; if (paragraph) { StyleType type; int subtype; marker_get_type_and_subtype(project, paragraph->style, type, subtype); if (type == stStartsParagraph) { if (subtype == ptNormalParagraph) { in_normal_paragraph = true; } } } if (in_normal_paragraph) { // Review marker \nb, proceed if it exists. ustring marker_text = "nb"; StyleType type; int subtype; marker_get_type_and_subtype(project, marker_text, type, subtype); if (type == stStartsParagraph) { if (subtype != ptNormalParagraph) { // Create new paragraph. editor_start_new_standard_paragraph(marker_text); } } } // Get the currently focused paragraph. In rare cases there may be none. If there's none, create one. paragraph = focused_paragraph; if (paragraph == NULL) { editor_start_new_standard_paragraph (unknown_style()); } // From here on we are sure there's an open paragraph. // Get verse number. Handle combined verses too, e.g. 10-12b, etc. size_t position = line.find(" "); if (position == string::npos) position = line.length(); ustring versenumber = line.substr(0, position); line.erase(0, position); // Insert the verse number. paragraph = focused_paragraph; gint insertion_offset = editor_paragraph_insertion_point_get_offset (paragraph); EditorActionInsertText * insert_action = new EditorActionInsertText (paragraph, insertion_offset, versenumber); apply_editor_action (insert_action); EditorActionChangeCharacterStyle * style_action = new EditorActionChangeCharacterStyle (paragraph, marker_text, insertion_offset, versenumber.length()); apply_editor_action (style_action); } EditorActionCreateParagraph * Editor2::widget2paragraph_action (GtkWidget * widget) // Given a pointer to a GtkTextView or HBox, it returns its (note) paragraph create action. { for (unsigned int i = 0; i < actions_done.size(); i++) { EditorAction * action = actions_done[i]; if ((action->type == eatCreateParagraph) || (action->type == eatCreateNoteParagraph)) { EditorActionCreateParagraph * paragraph_action = static_cast (action); if (paragraph_action->textview == widget) { return paragraph_action; } if ((action->type == eatCreateNoteParagraph)) { EditorActionCreateNoteParagraph * note_paragraph_action = static_cast (action); if (note_paragraph_action->hbox == widget) { return paragraph_action; } if (note_paragraph_action->eventbox == widget) { return paragraph_action; } } } } return NULL; } EditorActionCreateNoteParagraph * Editor2::note2paragraph_action (const ustring& note) // Given a note identifier, it returns its note paragraph create action. { for (unsigned int i = 0; i < actions_done.size(); i++) { EditorAction * action = actions_done[i]; if ((action->type == eatCreateNoteParagraph)) { EditorActionCreateNoteParagraph * note_paragraph_action = static_cast (action); if (note_paragraph_action->identifier == note) { return note_paragraph_action; } } } return NULL; } ustring Editor2::usfm_get_text(GtkTextBuffer * textbuffer, GtkTextIter startiter, GtkTextIter enditer) { // To hold the text it is going to retrieve. ustring text; // Initialize the iterator. GtkTextIter iter = startiter; // Paragraph and character styles. ustring previous_paragraph_style; ustring previous_character_style; // Iterate through the text. unsigned int iterations = 0; while (gtk_text_iter_compare(&iter, &enditer) < 0) { // Get the new paragraph and character style. // This is done by getting the names of the styles at this iterator. // With the way the styles are applied currently, the first // style is a paragraph style, and the second style is optional // and would be a character style. ustring new_paragraph_style; ustring new_character_style; get_styles_at_iterator(iter, new_paragraph_style, new_character_style); // Omit the starting paragraph marker except when at the start of a line. if (iterations == 0) { if (!gtk_text_iter_starts_line(&iter)) { previous_paragraph_style = new_paragraph_style; } } // Is it a note caller or normal text? if (new_character_style.find (note_starting_style ()) == 0) { // Note caller found. Retrieve its text. EditorActionCreateNoteParagraph * note_paragraph = note2paragraph_action (new_character_style); if (note_paragraph) { ustring note_text; // Add the note opener. note_text.append (usfm_get_full_opening_marker(note_paragraph->opening_closing_marker)); // Add the usfm caller. note_text.append (note_paragraph->caller_usfm); note_text.append (" "); // Get the main note body. GtkTextBuffer * textbuffer = note_paragraph->textbuffer; GtkTextIter startiter, enditer; gtk_text_buffer_get_start_iter(textbuffer, &startiter); gtk_text_buffer_get_end_iter(textbuffer, &enditer); note_text.append (usfm_get_note_text(startiter, enditer, project)); // Add the note closer. note_text.append (usfm_get_full_closing_marker(note_paragraph->opening_closing_marker)); // Add the note to the main text. text.append (note_text); } } else { // Normal text found. // Get the text at the iterator, and whether this is a linebreak. ustring new_character; bool line_break; { gunichar unichar = gtk_text_iter_get_char(&iter); gchar buf[7]; gint length = g_unichar_to_utf8(unichar, (gchar *) & buf); buf[length] = '\0'; new_character = buf; line_break = (new_character.find_first_of("\n\r") == 0); if (line_break) new_character.clear(); } // Flags for whether styles are opening or closing. bool character_style_closing = false; bool paragraph_style_closing = false; bool paragraph_style_opening = false; bool character_style_opening = false; // Paragraph style closing. if (new_paragraph_style != previous_paragraph_style) { if (!previous_paragraph_style.empty()) { paragraph_style_closing = true; } } // If a new line is encountered, then the paragraph closes. if (line_break) paragraph_style_closing = true; // If the paragraph closes, then the character style, if open, should close too. if (paragraph_style_closing) { new_character_style.clear(); } // Character style closing. if (new_character_style != previous_character_style) if (!previous_character_style.empty()) character_style_closing = true; // Paragraph style opening. if (new_paragraph_style != previous_paragraph_style) if (!new_paragraph_style.empty()) paragraph_style_opening = true; // Character style opening. if (new_character_style != previous_character_style) if (!new_character_style.empty()) character_style_opening = true; // Handle possible character style closing. if (character_style_closing) { usfm_internal_get_text_close_character_style(text, project, previous_character_style); } // USFM doesn't need anything if a paragraph style is closing. if (paragraph_style_closing) { } // Handle possible paragraph style opening. if (paragraph_style_opening) { usfm_internal_add_text(text, "\n"); // We would need to add the USFM code to the text. // But in some cases the code is already in the text, // e.g. in the case of "\id JHN". // In such cases the code is fine already, so it does not need to be added anymore. // Accomodate cases such as \toc // These don't have the full marker as "\toc ", but only without the last space. ustring usfm_code = usfm_get_full_opening_marker(new_paragraph_style); GtkTextIter iter2 = iter; gtk_text_iter_forward_chars(&iter2, usfm_code.length()); ustring usfm_code_in_text = gtk_text_iter_get_slice(&iter, &iter2); replace_text(usfm_code_in_text, "\n", " "); if (usfm_code_in_text.length() < usfm_code.length()) usfm_code_in_text.append(" "); if (usfm_code != usfm_code_in_text) { // A space after an opening marker gets erased in USFM: move it forward. if (new_character == " ") { usfm_internal_add_text(text, new_character); new_character.clear(); } // Don't insert the unknown style if (new_paragraph_style != unknown_style()) usfm_internal_add_text(text, usfm_code); } } // Handle possible character style opening. if (character_style_opening) { // Get the type and the subtype. StyleType type; int subtype; marker_get_type_and_subtype(project, new_character_style, type, subtype); // Normally a character style does not start a new line, but a verse (\v) does. if (style_get_starts_new_line_in_usfm(type, subtype)) { usfm_internal_add_text(text, "\n"); } // A space after an opening marker gets erased in USFM: move it forward. if (new_character == " ") { usfm_internal_add_text(text, new_character); new_character.clear(); } usfm_internal_add_text(text, usfm_get_full_opening_marker(new_character_style)); } // Store all styles for next iteration. previous_paragraph_style = new_paragraph_style; previous_character_style = new_character_style; if (paragraph_style_closing) previous_paragraph_style.clear(); if (character_style_closing) previous_character_style.clear(); // Store this character. usfm_internal_add_text(text, new_character); } // Next iteration. gtk_text_iter_forward_char(&iter); iterations++; } // If a character style has been applied to the last character or word // in the buffer, the above code would not add the closing marker. // Thus we may be found to have text like \p New paragraph with \add italics // The \add* marker is missing. This violates the USFM standard. // The code below fixes that. if (!previous_character_style.empty()) { usfm_internal_get_text_close_character_style(text, project, previous_character_style); } // Return the text it got. return text; } void Editor2::editor_text_fallback (ustring& line, ustring& character_style, size_t marker_pos, bool marker_found) // This is a fallback function to load the text. { // Storage for the string to insert. ustring insertion; if ((marker_found) && (marker_pos == 0)) { // It should not occur that a marker is right at the start and was not handled. // It gets handled here to prevent an infinite loop. insertion = line.substr(0, 1); line.erase(0, 1); } else if ((marker_found) && (marker_pos != string::npos) && (marker_pos > 0)) { // Load text till the next marker. insertion = line.substr(0, marker_pos); line.erase(0, marker_pos); } else { // No markup found: The whole line is loaded at once. insertion = line; line.clear(); } // Get the currently focused paragraph. If there's none, create one. EditorActionCreateParagraph * paragraph = focused_paragraph; if (paragraph == NULL) { editor_start_new_standard_paragraph (unknown_style()); } // Insert the text. paragraph = focused_paragraph; gint insertion_offset = editor_paragraph_insertion_point_get_offset (paragraph); EditorActionInsertText * insert_action = new EditorActionInsertText (paragraph, insertion_offset, insertion); apply_editor_action (insert_action); if (!character_style.empty()) { EditorActionChangeCharacterStyle * style_action = new EditorActionChangeCharacterStyle (paragraph, character_style, insertion_offset, insertion.length()); apply_editor_action (style_action); } } bool Editor2::editor_starts_character_style(ustring & line, ustring & character_style, const ustring & marker_text, size_t marker_pos, size_t marker_length, bool is_opener, bool marker_found) { if (marker_found) { if (marker_pos == 0) { if (is_opener) { StyleType type; int subtype; marker_get_type_and_subtype(project, marker_text, type, subtype); if (style_get_starts_character_style(type, subtype)) { character_style = marker_text; line.erase(0, marker_length); return true; } } } } return false; } bool Editor2::editor_ends_character_style(ustring & line, ustring & character_style, const ustring & marker_text, size_t marker_pos, size_t marker_length, bool is_opener, bool marker_found) { if (marker_found) { if (marker_pos == 0) { if (!is_opener) { StyleType type; int subtype; marker_get_type_and_subtype(project, marker_text, type, subtype); if (style_get_starts_character_style(type, subtype)) { character_style.clear(); line.erase(0, marker_length); return true; } } } } return false; } bool Editor2::text_starts_note_raw(ustring & line, ustring & character_style, const ustring & marker_text, size_t marker_pos, size_t marker_length, bool is_opener, bool marker_found, ustring& raw_note) // This function determines whether the text starts a footnote, an endnote, or a crossreference. { if (marker_found) { if (marker_pos == 0) { if (is_opener) { StyleType type; int subtype; marker_get_type_and_subtype(project, marker_text, type, subtype); if (style_get_starts_footnote(type, subtype) || style_get_starts_endnote(type, subtype) || style_get_starts_crossreference(type, subtype)) { // Proceed if the endmarker is in the text too. ustring endmarker = usfm_get_full_closing_marker(marker_text); size_t endmarkerpos = line.find(endmarker); if (endmarkerpos != string::npos) { // Get raw note text and erase it from the input buffer. raw_note = line.substr(marker_length, endmarkerpos - endmarker.length()); line.erase(0, endmarkerpos + endmarker.length()); // The information was processed: return true return true; } } } } } return false; } void Editor2::editor_start_note_raw (ustring raw_note, const ustring & marker_text) // Starts a note in the editor. { // Type of the note. EditorNoteType note_type = note_type_get (project, marker_text); // Add a note caller in superscript. ustring caller_in_text, caller_style; { get_next_note_caller_and_style (note_type, caller_in_text, caller_style, false); Style style ("", caller_style, false); style.superscript = true; create_or_update_text_style(&style, false, false, font_size_multiplier); gint insertion_offset = editor_paragraph_insertion_point_get_offset (focused_paragraph); EditorActionInsertText * insert_action = new EditorActionInsertText (focused_paragraph, insertion_offset, caller_in_text); apply_editor_action (insert_action); EditorActionChangeCharacterStyle * style_action = new EditorActionChangeCharacterStyle (focused_paragraph, caller_style, insertion_offset, caller_in_text.length()); apply_editor_action (style_action); } // Store currently focused standard paragraph so it can be restored after the note has been created. EditorActionCreateParagraph * focused_standard_paragraph = focused_paragraph; // Extract the USFM caller. ustring caller_in_usfm; if (!raw_note.empty()) { caller_in_usfm = raw_note.substr(0, 1); raw_note.erase(0, 1); raw_note = trim(raw_note); } // New note paragraph. EditorActionCreateNoteParagraph * note_paragraph = new EditorActionCreateNoteParagraph (vbox_notes, marker_text, caller_in_usfm, caller_in_text, caller_style); apply_editor_action (note_paragraph); // Note paragraph style. ustring paragraph_style (style_get_default_note_style(project, note_type)); EditorActionChangeParagraphStyle * style_action = new EditorActionChangeParagraphStyle (paragraph_style, note_paragraph); apply_editor_action (style_action); // Load remaining text of the note. text_load (raw_note, "", true); // Restore the focus to the standard paragraph that had focus before the note was created. give_focus (focused_standard_paragraph->textview); } void Editor2::copy_clipboard_intelligently () // Copies the plain text to the clipboard, and copies both plain and usfm text to internal storage. { GtkTextIter startiter, enditer; if (gtk_text_buffer_get_selection_bounds (focused_paragraph->textbuffer, &startiter, &enditer)) { clipboard_text_plain.clear(); vector text; vector styles; get_text_and_styles_between_iterators(&startiter, &enditer, text, styles); for (unsigned int i = 0; i < text.size(); i++) { if (styles[i].find (note_starting_style()) == string::npos) { clipboard_text_plain.append (text[i]); } } clipboard_text_usfm = text_get_selection (); // If no plain text is put on the clipboard, but usfm text, then put something on the clipboard. // This facilitates copying of notes. if (clipboard_text_plain.empty()) { if (!clipboard_text_usfm.empty()) { clipboard_text_plain = usfm_clipboard_code (); } } // Put the plain text on the clipboard. GtkClipboard *clipboard = gtk_clipboard_get(GDK_SELECTION_CLIPBOARD); gtk_clipboard_set_text (clipboard, clipboard_text_plain.c_str(), -1); } } void Editor2::cut () // Cut to clipboard. { if (editable) { if (focused_paragraph) { // Copy the text to the clipboard in an intelligent manner. copy_clipboard_intelligently (); // Remove the text from the text buffer. gtk_text_buffer_delete_selection (focused_paragraph->textbuffer, true, editable); } } } void Editor2::copy () // Copy to clipboard. { if (focused_paragraph) { // Copy the text to the clipboard in an intelligent manner. copy_clipboard_intelligently (); } } void Editor2::paste () // Paste from clipboard. { // Proceed if the Editor is editable and there's a focused paragraph where to put the text into. if (editable) { if (focused_paragraph) { // Get the text that would be pasted. GtkClipboard *clipboard = gtk_clipboard_get(GDK_SELECTION_CLIPBOARD); gchar * text = gtk_clipboard_wait_for_text (clipboard); if (text) { ustring utext (text); if ((utext == clipboard_text_plain) || (utext == usfm_clipboard_code ())) { // Since the text that would be pasted is the same as the plain text // that results from the previous copy or cut operation, // it inserts the equivalent usfm text instead. // Or if USFM code only was copied, nothing else, then take that too. gtk_text_buffer_delete_selection (focused_paragraph->textbuffer, true, editable); gtk_text_buffer_insert_at_cursor (focused_paragraph->textbuffer, clipboard_text_usfm.c_str(), -1); } else { // The text that would be pasted differs from the plain text // that resulted from the previous copy or cut operation, // so insert the text that would be pasted as it is. gtk_text_buffer_paste_clipboard(focused_paragraph->textbuffer, clipboard, NULL, true); } // Free memory. g_free (text); } } } } gboolean Editor2::on_textview_key_press_event(GtkWidget *widget, GdkEventKey *event, gpointer user_data) { return ((Editor2 *) user_data)->textview_key_press_event(widget, event); } gboolean Editor2::textview_key_press_event(GtkWidget *widget, GdkEventKey *event) { // Clear flag for monitoring deletions from textbuffers. textbuffer_delete_range_was_fired = false; // Store data for paragraph crossing control. paragraph_crossing_textview_at_key_press = widget; GtkTextBuffer * textbuffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (widget)); gtk_text_buffer_get_iter_at_mark(textbuffer, ¶graph_crossing_insertion_point_iterator_at_key_press, gtk_text_buffer_get_insert(textbuffer)); // A GtkTextView has standard keybindings for clipboard operations. // It has been found that if the user presses, e.g. Ctrl-c, that // text is copied to the clipboard twice, or e.g. Ctrl-v, that it is // pasted twice. This is probably a bug in Gtk2. // The relevant key bindings for clipboard operations are blocked here. // The default bindings for copying to clipboard are Ctrl-c and Ctrl-Insert. // The default bindings for cutting to clipboard are Ctrl-x and Shift-Delete. // The default bindings for pasting from clipboard are Ctrl-v and Shift-Insert. if (keyboard_control_state(event)) { if (event->keyval == GDK_KEY_c) return true; if (event->keyval == GDK_KEY_x) return true; if (event->keyval == GDK_KEY_v) return true; if (keyboard_insert_pressed(event)) return true; } if (keyboard_shift_state(event)) { if (keyboard_delete_pressed(event)) return true; if (keyboard_insert_pressed(event)) return true; } // Pressing Page Up while the cursor is in the note brings the user // to the note caller in the text. if (keyboard_page_up_pressed(event)) { if (focused_paragraph) { if (focused_paragraph->type == eatCreateNoteParagraph) { on_caller_button_press (focused_paragraph->textview); } } } // Propagate event further. return FALSE; } gboolean Editor2::on_textview_key_release_event(GtkWidget *widget, GdkEventKey *event, gpointer user_data) { ((Editor2 *) user_data)->textview_key_release_event(widget, event); return FALSE; } void Editor2::textview_key_release_event(GtkWidget *widget, GdkEventKey *event) { // Handle pressing the Backspace key. if (keyboard_backspace_pressed (event)) { // Handle the case that the backspace key didn't delete text. // Do this only when the Editor is editable. if (!textbuffer_delete_range_was_fired && editable) { // Get the current and preceding paragraphs. // The preceding one may not be there. EditorActionCreateParagraph * current_paragraph = widget2paragraph_action (widget); EditorActionCreateParagraph * preceding_paragraph = widget2paragraph_action (editor_get_previous_textview (vbox_paragraphs, widget)); if (current_paragraph && preceding_paragraph) { // Get the text and styles of the current paragraph. vector text; vector styles; EditorActionDeleteText * delete_action = paragraph_get_text_and_styles_after_insertion_point(current_paragraph, text, styles); // Delete the text from the current paragraph. if (delete_action) { apply_editor_action (delete_action); } // Insert the text into the preceding paragraph. GtkTextBuffer * textbuffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (preceding_paragraph->textview)); GtkTextIter enditer; gtk_text_buffer_get_end_iter (textbuffer, &enditer); gint initial_offset = gtk_text_iter_get_offset (&enditer); for (unsigned int i = 0; i < text.size(); i++) { gtk_text_buffer_get_end_iter (textbuffer, &enditer); gint offset = gtk_text_iter_get_offset (&enditer); EditorActionInsertText * insert_action = new EditorActionInsertText (preceding_paragraph, offset, text[i]); apply_editor_action (insert_action); if (!styles[i].empty()) { EditorActionChangeCharacterStyle * style_action = new EditorActionChangeCharacterStyle(preceding_paragraph, styles[i], offset, text[i].length()); apply_editor_action (style_action); } } // Move the insertion point to the position just before the joined text. editor_paragraph_insertion_point_set_offset (preceding_paragraph, initial_offset); // Remove the current paragraph. apply_editor_action (new EditorActionDeleteParagraph(current_paragraph)); // Focus the preceding paragraph. give_focus (preceding_paragraph->textview); // Insert the One Action boundary. apply_editor_action (new EditorAction (eatOneActionBoundary)); } } } // Handle pressing the Delete keys. if (keyboard_delete_pressed (event)) { // Handle the case that the delete keys didn't delete text. // Do this only when the Editor is editable. if (!textbuffer_delete_range_was_fired && editable) { // Get the current and following paragraphs. // The following one may not be there. EditorActionCreateParagraph * current_paragraph = widget2paragraph_action (widget); EditorActionCreateParagraph * following_paragraph = widget2paragraph_action (editor_get_next_textview (vbox_paragraphs, widget)); if (current_paragraph && following_paragraph) { // Get the text and styles of the whole following paragraph. editor_paragraph_insertion_point_set_offset (following_paragraph, 0); vector text; vector styles; EditorActionDeleteText * delete_action = paragraph_get_text_and_styles_after_insertion_point(following_paragraph, text, styles); // Delete the text from the following paragraph. if (delete_action) { apply_editor_action (delete_action); } // Insert the text into the current paragraph. GtkTextBuffer * textbuffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (current_paragraph->textview)); GtkTextIter enditer; gtk_text_buffer_get_end_iter (textbuffer, &enditer); gint initial_offset = gtk_text_iter_get_offset (&enditer); for (unsigned int i = 0; i < text.size(); i++) { gtk_text_buffer_get_end_iter (textbuffer, &enditer); gint offset = gtk_text_iter_get_offset (&enditer); EditorActionInsertText * insert_action = new EditorActionInsertText (current_paragraph, offset, text[i]); apply_editor_action (insert_action); if (!styles[i].empty()) { EditorActionChangeCharacterStyle * style_action = new EditorActionChangeCharacterStyle(current_paragraph, styles[i], offset, text[i].length()); apply_editor_action (style_action); } } // Move the insertion point to the position just before the joined text. editor_paragraph_insertion_point_set_offset (current_paragraph, initial_offset); // Remove the following paragraph. apply_editor_action (new EditorActionDeleteParagraph(following_paragraph)); // Insert the One Action boundary. apply_editor_action (new EditorAction (eatOneActionBoundary)); } } } // Clear flag for monitoring deletions from textbuffers. textbuffer_delete_range_was_fired = false; } bool Editor2::on_textview_button_press_delayed (gpointer user_data) { ((Editor2 *) user_data)->textview_button_press_delayed(); return false; } void Editor2::textview_button_press_delayed () { textview_button_press_event_id = 0; signal_if_styles_changed(); signal_if_verse_changed(); } void Editor2::switch_verse_tracking_off () { if (!verse_tracking_on) return; verse_tracking_on = false; } void Editor2::switch_verse_tracking_on () { if (verse_tracking_on) return; verse_tracking_on = true; } void Editor2::go_to_verse(const ustring& number, bool focus) // Moves the insertion point of the editor to the verse number. { // Ensure verse tracking is on. switch_verse_tracking_on (); // Save the current verse. This prevents a race-condition. current_verse_number = number; // Only move the insertion point if it goes to another verse. if (number != verse_number_get()) { // Get the iterator and textview that contain the verse number. GtkTextIter iter; GtkWidget * textview; if (get_iterator_at_verse_number (number, style_get_verse_marker(project), vbox_paragraphs, iter, textview)) { if (focus) { } give_focus (textview); GtkTextBuffer * textbuffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (textview)); gtk_text_buffer_place_cursor(textbuffer, &iter); } } // Scroll the insertion point onto the screen. //scroll_insertion_point_on_screen (); // Remove all the complicated timeout stuff and go right to work scroll_insertion_point_on_screen_timeout (); // Highlight search words. highlight_searchwords(); } void Editor2::signal_if_verse_changed () { gw_destroy_source(signal_if_verse_changed_event_id); signal_if_verse_changed_event_id = g_timeout_add_full(G_PRIORITY_DEFAULT, 100, GSourceFunc(on_signal_if_verse_changed_timeout), gpointer(this), NULL); } bool Editor2::on_signal_if_verse_changed_timeout(gpointer data) { ((Editor2 *) data)->signal_if_verse_changed_timeout(); return false; } void Editor2::signal_if_verse_changed_timeout() { // Proceed if verse tracking is on. if (verse_tracking_on) { // Proceed if there's a focused paragraph. if (focused_paragraph) { // Proceed if there's no selection. if (!gtk_text_buffer_get_has_selection (focused_paragraph->textbuffer)) { // Emit a signal if the verse number at the insertion point changed. ustring verse_number = verse_number_get(); if (verse_number != current_verse_number) { current_verse_number = verse_number; if (new_verse_signal) { gtk_button_clicked(GTK_BUTTON(new_verse_signal)); } } } } } } void Editor2::paragraph_crossing_act(GtkMovementStep step, gint count) { // Bail out if there's no paragraph. if (focused_paragraph == NULL) { return; } // Get the iterator at the insert position of the currently focused paragraph. GtkTextIter iter; gtk_text_buffer_get_iter_at_mark (focused_paragraph->textbuffer, &iter, gtk_text_buffer_get_insert (focused_paragraph->textbuffer)); // Bail out if there was real movement. if (!gtk_text_iter_equal (¶graph_crossing_insertion_point_iterator_at_key_press, &iter)) { return; } // Focus the crossed widget and place its cursor. GtkWidget * crossed_widget; if (count > 0) { crossed_widget = editor_get_next_textview (vbox_paragraphs, focused_paragraph->textview); } else { crossed_widget = editor_get_previous_textview (vbox_paragraphs, focused_paragraph->textview); } if (crossed_widget) { GtkTextBuffer * textbuffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (crossed_widget)); if (count > 0) { gtk_text_buffer_get_start_iter (textbuffer, &iter); } else { gtk_text_buffer_get_end_iter (textbuffer, &iter); } gtk_text_buffer_place_cursor (textbuffer, &iter); give_focus (crossed_widget); } } gboolean Editor2::on_caller_button_press_event (GtkWidget *widget, GdkEventButton *event, gpointer user_data) { return ((Editor2 *) user_data)->on_caller_button_press(widget); } gboolean Editor2::on_caller_button_press (GtkWidget *widget) // Called when the user clicks on a note caller at the bottom of the screen. // It will focus the note caller in the text. { // Look for the note paragraph. EditorActionCreateParagraph * paragraph = widget2paragraph_action (widget); if (paragraph) { EditorActionCreateNoteParagraph * note_paragraph = static_cast (paragraph); // Get the note style. ustring note_style = note_paragraph->identifier; // Get the iterator and the textview of the note caller in the text. vector textviews = editor_get_widgets (vbox_paragraphs); for (unsigned int i = 0; i < textviews.size(); i++) { GtkTextBuffer * textbuffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (textviews[i])); GtkTextIter iter; gtk_text_buffer_get_start_iter (textbuffer, &iter); do { ustring paragraph_style, character_style, verse_at_iter; get_styles_at_iterator(iter, paragraph_style, character_style); if (character_style == note_style) { gtk_text_buffer_place_cursor (textbuffer, &iter); give_focus (textviews[i]); } } while (gtk_text_iter_forward_char(&iter)); } } // Propagate the button press event. return false; } bool Editor2::has_focus () // Returns whether the editor has focus. { vector widgets = editor_get_widgets (vbox_paragraphs); for (unsigned int i = 0; i < widgets.size(); i++) { if (gtk_widget_has_focus (widgets[i])) return true; } widgets = editor_get_widgets (vbox_notes); for (unsigned int i = 0; i < widgets.size(); i++) { if (gtk_widget_has_focus (widgets[i])) return true; } return false; } void Editor2::give_focus (GtkWidget * widget) // Gives focus to a widget. { if (has_focus ()) { // If the editor has focus, then the widget is actually given focus. gtk_widget_grab_focus (widget); } else { // If the editor does not have focus, only the internal focus system is called, without actually having the widget grab focus. textview_grab_focus(widget); } } bibledit-gtk-4.9/src/editor.h000664 000766 000024 00000024262 12302165650 016311 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_EDITOR2_H #define INCLUDED_EDITOR2_H #include "libraries.h" #include #include #include "reference.h" #include "style.h" #include "types.h" #include "editor_aids.h" #include "highlight.h" #include "spelling.h" #include "editoractions.h" class Editor2 { public: Editor2(GtkWidget * vbox_in, const ustring& project_in); ~Editor2(); GtkWidget * new_widget_signal; GtkWidget * new_widget_pointer; private: GtkWidget *scrolledwindow; GtkWidget *viewport; GtkWidget *vbox_viewport; GtkWidget *vbox_paragraphs; GtkWidget *hseparator; GtkWidget *vbox_notes; GtkWidget *vbox_parking_lot; void text_load (ustring text, ustring character_style, bool note_mode); deque actions_done; deque actions_undone; void apply_editor_action (EditorAction * action, EditorActionApplication application = eaaInitial); void paragraph_create_actions (EditorActionCreateParagraph * paragraph_action); public: EditorActionCreateParagraph * focused_paragraph; private: bool usfm_starts_new_paragraph (ustring& line, const ustring& marker, size_t marker_pos, size_t marker_length, bool is_opener, bool marker_found); void editor_start_new_standard_paragraph (const ustring& marker_text); void editor_start_verse (ustring& line, ustring& marker_text, ustring& character_style); bool editor_starts_character_style (ustring & line, ustring & character_style, const ustring & marker_text, size_t marker_pos, size_t marker_length, bool is_opener, bool marker_found); bool editor_ends_character_style (ustring & line, ustring & character_style, const ustring & marker_text, size_t marker_pos, size_t marker_length, bool is_opener, bool marker_found); bool text_starts_note_raw (ustring & line, ustring & character_style, const ustring & marker_text, size_t marker_pos, size_t marker_length, bool is_opener, bool marker_found, ustring& raw_note); void editor_start_note_raw (ustring raw_note, const ustring & marker_text); void editor_text_fallback (ustring& line, ustring& character_style, size_t marker_pos, bool marker_found); EditorActionCreateParagraph * widget2paragraph_action (GtkWidget * widget); EditorActionCreateNoteParagraph * note2paragraph_action (const ustring& note); int disregard_text_buffer_signals; vector text_to_be_deleted; vector styles_to_be_deleted; ustring usfm_get_text(GtkTextBuffer * textbuffer, GtkTextIter startiter, GtkTextIter enditer); // Textview keyboard key pressing. static gboolean on_textview_key_press_event(GtkWidget *widget, GdkEventKey *event, gpointer user_data); gboolean textview_key_press_event(GtkWidget *widget, GdkEventKey *event); static gboolean on_textview_key_release_event(GtkWidget *widget, GdkEventKey *event, gpointer user_data); void textview_key_release_event(GtkWidget *widget, GdkEventKey *event); bool textbuffer_delete_range_was_fired; static void on_textbuffer_changed(GtkTextBuffer * textbuffer, gpointer user_data); void textbuffer_changed(GtkTextBuffer * textbuffer); // Textview mouse button pressing signal and delay. static gboolean on_textview_button_press_event(GtkWidget *widget, GdkEventButton *event, gpointer user_data); gboolean textview_button_press_event(GtkWidget * widget, GdkEventButton *event); guint textview_button_press_event_id; static bool on_textview_button_press_delayed (gpointer user_data); void textview_button_press_delayed (); // Textview focus grabbing signal and delay. static void on_textview_grab_focus(GtkWidget * widget, gpointer user_data); void textview_grab_focus(GtkWidget * widget); guint textview_grab_focus_event_id; static bool on_textview_grab_focus_delayed(gpointer data); void textview_grab_focus_delayed(); // Textview cursor movement signal and delay. static void on_textview_move_cursor(GtkTextView * textview, GtkMovementStep step, gint count, gboolean extend_selection, gpointer user_data); void textview_move_cursor(GtkTextView * textview, GtkMovementStep step, gint count); guint textview_move_cursor_id; static bool on_textview_move_cursor_delayed(gpointer user_data); void textview_move_cursor_delayed(); // Focus handling. public: GtkWidget * last_focused_widget; GtkTextBuffer * last_focused_textbuffer(); EditorTextViewType last_focused_type(); bool has_focus (); void give_focus (GtkWidget * widget); ustring character_style_on_start_typing; void book_set(unsigned int book_in); // Chapter loading / saving. void chapter_load(unsigned int chapter_in); vector loaded_chapter_lines; void chapter_save(); GtkWidget * reload_signal; unsigned int reload_chapter_number; ustring text_get_selection(); void text_insert(ustring text); void show_quick_references(); guint event_id_show_quick_references; static bool show_quick_references_timeout(gpointer user_data); void show_quick_references_execute(); vector quick_references; GtkWidget * quick_references_button; GtkWidget * new_styles_signal; Reference current_reference; bool go_to_new_reference_highlight; ustring word_double_clicked_text; GtkWidget * word_double_clicked_signal; void set_font(); void set_font_textview (GtkWidget * textview); ustring project; unsigned int book; unsigned int chapter; set get_styles_at_cursor(); // Automatic save. static bool on_save_timeout(gpointer data); bool save_timeout(); size_t editor_actions_size_at_no_save; // Some event ids. guint save_timeout_event_id; GtkTextTagTable * texttagtable; void create_or_update_formatting_data(); void create_or_update_text_style(Style * style, bool paragraph, bool plaintext, double font_multiplier); bool verse_restarts_paragraph; double font_size_multiplier; void insert_note(const ustring& marker, const ustring& rawtext); bool do_not_process_child_anchors_being_deleted; static void on_buffer_insert_text_after(GtkTextBuffer *textbuffer, GtkTextIter *pos_iter, gchar *text, gint length, gpointer user_data); void buffer_insert_text_after(GtkTextBuffer *textbuffer, GtkTextIter *pos_iter, gchar *text); static void on_buffer_delete_range_before(GtkTextBuffer *textbuffer, GtkTextIter *start, GtkTextIter *end, gpointer user_data); void buffer_delete_range_before(GtkTextBuffer *textbuffer, GtkTextIter *start, GtkTextIter *end); static void on_buffer_delete_range_after(GtkTextBuffer *textbuffer, GtkTextIter *start, GtkTextIter *end, gpointer user_data); void buffer_delete_range_after(GtkTextBuffer *textbuffer, GtkTextIter *start, GtkTextIter *end); void text_get_all(vector & texts, vector & styles); bool editable; void signal_if_styles_changed(); set styles_at_cursor; set styles_at_iterator(GtkTextIter iter); void apply_style(const ustring& marker); void insert_table(const ustring& rawtext); // Undo/redo void undo(); void redo(); bool can_undo(); bool can_redo(); // Highlighting. void highlight_searchwords(); guint highlight_timeout_event_id; static bool on_highlight_timeout(gpointer data); bool highlight_timeout(); static void highlight_thread_start(gpointer data); void highlight_thread_main(); Highlight * highlight; GtkTextTag * reference_tag; GtkWidget * changed_signal; ustring get_chapter(); private: // Spelling check. public: void load_dictionaries(); bool move_cursor_to_spelling_error (bool next, bool extremity); GtkWidget * spelling_checked_signal; void spelling_trigger(); vector spelling_get_misspelled (); void spelling_approve (const vector & words); private: guint spelling_timeout_event_id; static bool on_spelling_timeout(gpointer data); void spelling_timeout(); SpellingChecker * spellingchecker; static void on_button_spelling_recheck_clicked(GtkButton *button, gpointer user_data); // Verse positioning and tracking. public: void go_to_verse(const ustring& number, bool focus); ustring current_verse_number; GtkWidget * new_verse_signal; private: void switch_verse_tracking_off (); void switch_verse_tracking_on (); bool verse_tracking_on; void signal_if_verse_changed (); guint signal_if_verse_changed_event_id; static bool on_signal_if_verse_changed_timeout(gpointer data); void signal_if_verse_changed_timeout(); ustring verse_number_get(); // Scrolling control. public: private: void scroll_insertion_point_on_screen (); static bool on_scroll_insertion_point_on_screen_timeout(gpointer data); void scroll_insertion_point_on_screen_timeout(); GtkTextTag * verse_highlight_tag; guint scroll_insertion_point_on_screen_id; // Moving from one textview to the other. public: private: void paragraph_crossing_act(GtkMovementStep step, gint count); GtkWidget * paragraph_crossing_textview_at_key_press; GtkTextIter paragraph_crossing_insertion_point_iterator_at_key_press; // Clipboard. public: void cut (); void copy (); void paste (); private: void copy_clipboard_intelligently (); ustring clipboard_text_plain; ustring clipboard_text_usfm; // Cursor control. public: private: static gboolean on_motion_notify_event(GtkWidget *textview, GdkEventMotion *event, gpointer user_data); gboolean motion_notify_event(GtkWidget *textview, GdkEventMotion *event); bool previous_hand_cursor; static gboolean on_caller_button_press_event (GtkWidget *widget, GdkEventButton *event, gpointer user_data); gboolean on_caller_button_press (GtkWidget *widget); }; #endif bibledit-gtk-4.9/src/editor_aids.cpp000664 000766 000024 00000132450 12221507142 017637 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "editor_aids.h" #include "settings.h" #include "styles.h" #include "utilities.h" #include "usfmtools.h" #include "tiny_utilities.h" #include "spelling.h" #include "stylesheetutils.h" #include "gwrappers.h" #include "bible.h" void marker_get_type_and_subtype(const ustring & project, const ustring & marker, StyleType & type, int &subtype) /* Given a "project", and a "marker", this function gives the "type" and the "subtype" of the style of that marker. */ { // Code for speeding up the lookup process. static ustring speed_project; static ustring speed_marker; static StyleType speed_type = stNotUsedComment; static int speed_subtype = 0; if (project == speed_project) { if (marker == speed_marker) { type = speed_type; subtype = speed_subtype; return; } } // Store both keys in the speedup system. speed_project = project; speed_marker = marker; // Lookup the values. ustring stylesheet = stylesheet_get_actual (); extern Styles *styles; Usfm *usfm = styles->usfm(stylesheet); type = stIdentifier; subtype = itComment; for (unsigned int i = 0; i < usfm->styles.size(); i++) { if (marker == usfm->styles[i].marker) { // Values found. type = usfm->styles[i].type; subtype = usfm->styles[i].subtype; // Store values in the speedup system. speed_type = type; speed_subtype = subtype; break; } } } bool style_get_plaintext(StyleType type, int subtype) /* Returns the property "plain text" of a certain style when displayed in the Editor. Plain text means that this style is to be displayed in the editor using plain text. type: the type of this style. subtype: the subtype of this style. */ { // Set default value. bool plaintext = true; // Set value depending on the type of the marker, and the subtype. // Only set value if it differs from the default. switch (type) { case stIdentifier: { if (subtype == itCommentWithEndmarker) plaintext = false; break; } case stNotUsedComment: case stNotUsedRunningHeader: { break; } case stStartsParagraph: case stInlineText: case stChapterNumber: case stVerseNumber: case stFootEndNote: case stCrossreference: { plaintext = false; break; } case stPeripheral: { break; } case stPicture: { break; } case stPageBreak: { break; } case stTableElement: { break; } case stWordlistElement: { plaintext = false; break; } } // Return the value. return plaintext; } bool style_get_paragraph(StyleType type, int subtype) /* Returns true if the combination of the "type" and the"subtype" is a paragraph style, as opposed to a character style. Note that there is another function, "style_get_starts_new_line_in_editor", which has a slightly different use. Let these two not be confused. This function says whether a style is a paragraph style, and the other function says whether a style ought to start a new line in the formatted view. */ { bool paragraph_style = true; // Set value depending on the type of the marker, and the subtype. // Only set value if it differs from the default. switch (type) { case stIdentifier: { if (subtype == itCommentWithEndmarker) paragraph_style = false; break; } case stNotUsedComment: case stNotUsedRunningHeader: { break; } case stStartsParagraph: { break; } case stInlineText: { paragraph_style = false; break; } case stChapterNumber: { break; } case stVerseNumber: { paragraph_style = false; break; } case stFootEndNote: { if ((subtype != fentParagraph) && (subtype != fentStandardContent)) paragraph_style = false; break; } case stCrossreference: { if (subtype != ctStandardContent) paragraph_style = false; break; } case stPeripheral: { break; } case stPicture: { break; } case stPageBreak: { break; } case stTableElement: { break; } case stWordlistElement: { paragraph_style = false; break; } } return paragraph_style; } bool style_get_starts_new_line_in_editor(StyleType type, int subtype) // Returns true if the combination of the "type" and the"subtype" starts // a new line in the formatted view. { // Set default value to starting a new line. bool starts_new_line = true; // Set value depending on the type of the marker, and the subtype. // Only set value if it differs from the default. switch (type) { case stIdentifier: { if (subtype == itCommentWithEndmarker) starts_new_line = false; break; } case stNotUsedComment: case stNotUsedRunningHeader: { break; } case stStartsParagraph: { break; } case stInlineText: { starts_new_line = false; break; } case stChapterNumber: { break; } case stVerseNumber: { starts_new_line = false; break; } case stFootEndNote: { if (subtype != fentParagraph) starts_new_line = false; break; } case stCrossreference: { starts_new_line = false; break; } case stPeripheral: { break; } case stPicture: { break; } case stPageBreak: { break; } case stTableElement: { break; } case stWordlistElement: { starts_new_line = false; break; } } // Return the outcome. return starts_new_line; } bool style_get_starts_new_line_in_usfm(StyleType type, int subtype) // Returns true if the combination of the "type" and the"subtype" starts // a new line in the usfm code. { // Set default value to starting a new line. bool starts_new_line = true; // Set value depending on the type of the marker, and the subtype. // Only set value if it differs from the default. switch (type) { case stIdentifier: { if (subtype == itCommentWithEndmarker) starts_new_line = false; break; } case stNotUsedComment: case stNotUsedRunningHeader: { break; } case stStartsParagraph: { break; } case stInlineText: { starts_new_line = false; break; } case stChapterNumber: { break; } case stVerseNumber: { break; } case stFootEndNote: { starts_new_line = false; break; } case stCrossreference: { starts_new_line = false; break; } case stPeripheral: { break; } case stPicture: { break; } case stPageBreak: { break; } case stTableElement: { break; } case stWordlistElement: { starts_new_line = false; break; } } // Return the outcome. return starts_new_line; } bool style_get_displays_marker(StyleType type, int subtype) // Returns true if the combination of the "type" and the"subtype" should display // the marker in the formatted view. { // Set default value to displaying the style. bool display_marker = true; // Set value depending on the type of the marker, and the subtype. // Only set value if it differs from the default. switch (type) { case stIdentifier: { if (subtype == itCommentWithEndmarker) display_marker = false; break; } case stNotUsedComment: case stNotUsedRunningHeader: { break; } case stStartsParagraph: { display_marker = false; break; } case stInlineText: { display_marker = false; break; } case stChapterNumber: { display_marker = false; break; } case stVerseNumber: { display_marker = false; break; } case stFootEndNote: { display_marker = false; break; } case stCrossreference: { display_marker = false; break; } case stPeripheral: { break; } case stPicture: { break; } case stPageBreak: { break; } case stTableElement: { break; } case stWordlistElement: { display_marker = false; break; } } // Return the outcome. return display_marker; } bool style_get_starts_character_style(StyleType type, int subtype) // Returns true if the combination of the "type" and the"subtype" starts // (or ends, of course) a character style in the formatted view. { // Set default value to not starting a character style. bool starts_character_style = false; // Set value depending on the type of the marker, and the subtype. // Only set value if it differs from the default. switch (type) { case stIdentifier: { if (subtype == itCommentWithEndmarker) starts_character_style = true; break; } case stNotUsedComment: case stNotUsedRunningHeader: { break; } case stStartsParagraph: { break; } case stInlineText: { starts_character_style = true; break; } case stChapterNumber: { break; } case stVerseNumber: { break; } case stFootEndNote: { if (subtype == fentContentWithEndmarker) starts_character_style = true; break; } case stCrossreference: { if (subtype == ctContentWithEndmarker) starts_character_style = true; break; } case stPeripheral: { break; } case stPicture: { break; } case stPageBreak: { break; } case stTableElement: { break; } case stWordlistElement: { starts_character_style = true; break; } } // Return the outcome. return starts_character_style; } bool style_get_starts_verse_number(StyleType type, int subtype) // Returns true if the combination of the "type" and the"subtype" starts // a verse number. { // Set default value to not starting a a verse number. bool starts_verse_number = false; // Set value depending on the type of the marker, and the subtype. // Only set value if it differs from the default. switch (type) { case stIdentifier: case stNotUsedComment: case stNotUsedRunningHeader: case stStartsParagraph: case stInlineText: case stChapterNumber: { break; } case stVerseNumber: { starts_verse_number = true; break; } case stFootEndNote: case stCrossreference: case stPeripheral: case stPicture: case stPageBreak: case stTableElement: case stWordlistElement: { break; } } // Return the outcome. return starts_verse_number; } ustring style_get_verse_marker(const ustring & project) // Gets the verse marker, normally the "v". { ustring stylesheet = stylesheet_get_actual (); extern Styles *styles; Usfm *usfm = styles->usfm(stylesheet); ustring style = "v"; for (unsigned int i = 0; i < usfm->styles.size(); i++) { if (style_get_starts_verse_number(usfm->styles[i].type, usfm->styles[i].subtype)) { style = usfm->styles[i].marker; break; } } return style; } bool style_get_starts_footnote(StyleType type, int subtype) // Returns true if the combination of the "type" and the"subtype" starts // a footnote. { switch (type) { case stIdentifier: case stNotUsedComment: case stNotUsedRunningHeader: case stStartsParagraph: case stInlineText: case stChapterNumber: case stVerseNumber: { break; } case stFootEndNote: { if (subtype == fentFootnote) return true; break; } case stCrossreference: case stPeripheral: case stPicture: case stPageBreak: case stTableElement: case stWordlistElement: { break; } } return false; } bool style_get_starts_endnote(StyleType type, int subtype) // Returns true if the combination of the "type" and the"subtype" starts // an endnote. { switch (type) { case stIdentifier: case stNotUsedComment: case stNotUsedRunningHeader: case stStartsParagraph: case stInlineText: case stChapterNumber: case stVerseNumber: { break; } case stFootEndNote: { if (subtype == fentEndnote) return true; break; } case stCrossreference: case stPeripheral: case stPicture: case stPageBreak: case stTableElement: case stWordlistElement: { break; } } return false; } bool style_get_starts_crossreference(StyleType type, int subtype) // Returns true if the combination of the "type" and the"subtype" starts // a crossreference. { switch (type) { case stIdentifier: case stNotUsedComment: case stNotUsedRunningHeader: case stStartsParagraph: case stInlineText: case stChapterNumber: case stVerseNumber: case stFootEndNote: { break; } case stCrossreference: { if (subtype == ctCrossreference) return true; break; } case stPeripheral: case stPicture: case stPageBreak: case stTableElement: case stWordlistElement: { break; } } return false; } bool style_get_starts_note_content(StyleType type, int subtype) // Returns true if the combination of the "type" and the"subtype" starts // note content. { bool note_content = false; switch (type) { case stIdentifier: case stNotUsedComment: case stNotUsedRunningHeader: case stStartsParagraph: case stInlineText: case stChapterNumber: case stVerseNumber: { break; } case stFootEndNote: { if ((subtype == fentContent) || (subtype == fentStandardContent)) note_content = true; break; } case stCrossreference: { if ((subtype == ctContent) || (subtype == ctStandardContent)) note_content = true; break; } case stPeripheral: case stPicture: case stPageBreak: case stTableElement: case stWordlistElement: { break; } } return note_content; } ustring style_get_default_note_style(const ustring & project, EditorNoteType type) { ustring stylesheet = stylesheet_get_actual (); extern Styles *styles; Usfm *usfm = styles->usfm(stylesheet); ustring style; switch (type) { case entFootnote: case entEndnote: { style = "ft"; break; } case entCrossreference: { style = "xt"; break; } } for (unsigned int i = 0; i < usfm->styles.size(); i++) { switch (type) { case entFootnote: case entEndnote: { if (usfm->styles[i].type == stFootEndNote) if (usfm->styles[i].subtype == fentStandardContent) style = usfm->styles[i].marker; break; } case entCrossreference: { if (usfm->styles[i].type == stCrossreference) if (usfm->styles[i].subtype == ctStandardContent) style = usfm->styles[i].marker; break; } } } return style; } ustring style_get_paragraph_note_style(const ustring & project) // Gets the style that starts a new paragraph in a footnote or endnote. { ustring stylesheet = stylesheet_get_actual (); extern Styles *styles; Usfm *usfm = styles->usfm(stylesheet); ustring style("fp"); for (unsigned int i = 0; i < usfm->styles.size(); i++) { if (usfm->styles[i].type == stFootEndNote) if (usfm->styles[i].subtype == fentParagraph) style = usfm->styles[i].marker; } return style; } bool style_get_starts_table_row(StyleType type, int subtype) { bool starts_row = false; switch (type) { case stIdentifier: case stNotUsedComment: case stNotUsedRunningHeader: case stStartsParagraph: case stInlineText: case stChapterNumber: case stVerseNumber: case stFootEndNote: case stCrossreference: case stPeripheral: case stPicture: case stPageBreak: { break; } case stTableElement: { if (subtype == tetRow) starts_row = true; break; } case stWordlistElement: { break; } } return starts_row; } ustring style_get_table_row_marker(const ustring & project) // Get the marker that starts a new row in a table. { ustring stylesheet = stylesheet_get_actual (); extern Styles *styles; Usfm *usfm = styles->usfm(stylesheet); ustring style = "tr"; for (unsigned int i = 0; i < usfm->styles.size(); i++) { if (style_get_starts_table_row(usfm->styles[i].type, usfm->styles[i].subtype)) { style = usfm->styles[i].marker; break; } } return style; } bool style_get_starts_table_cell(StyleType type, int subtype) { bool starts_cell = false; switch (type) { case stIdentifier: case stNotUsedComment: case stNotUsedRunningHeader: case stStartsParagraph: case stInlineText: case stChapterNumber: case stVerseNumber: case stFootEndNote: case stCrossreference: case stPeripheral: case stPicture: case stPageBreak: { break; } case stTableElement: { if (subtype != tetRow) starts_cell = true; break; } case stWordlistElement: { break; } } return starts_cell; } ustring style_get_table_cell_marker(const ustring & project, int column) // Get the marker that starts a cell in a table in "column". // Column starts with 1 for the first column. { ustring stylesheet = stylesheet_get_actual (); extern Styles *styles; Usfm *usfm = styles->usfm(stylesheet); ustring style = "tc" + convert_to_string(column); for (unsigned int i = 0; i < usfm->styles.size(); i++) { if (style_get_starts_table_cell(usfm->styles[i].type, usfm->styles[i].subtype)) { if (usfm->styles[i].subtype == tetCell) { if (usfm->styles[i].userint1 == column) { style = usfm->styles[i].marker; break; } } } } return style; } EditorNoteType note_type_get(const ustring & project, const ustring & marker) // Gets the type of the note, e.g. a footnote. { EditorNoteType notetype = entFootnote; ustring stylesheet = stylesheet_get_actual (); extern Styles *styles; Usfm *usfm = styles->usfm(stylesheet); for (unsigned int i = 0; i < usfm->styles.size(); i++) { if (usfm->styles[i].marker == marker) { if (usfm->styles[i].type == stFootEndNote) { if (usfm->styles[i].subtype == fentFootnote) { notetype = entFootnote; } if (usfm->styles[i].subtype == fentEndnote) { notetype = entFootnote; } } if (usfm->styles[i].type == stCrossreference) { notetype = entCrossreference; } } } return notetype; } NoteNumberingType note_numbering_type_get(const ustring & project, const ustring & marker) /* Gets the numbering type of a note, for example, the numbering could be numerical or alphabethical. */ { NoteNumberingType numbering = nntNumerical; ustring stylesheet = stylesheet_get_actual (); extern Styles *styles; Usfm *usfm = styles->usfm(stylesheet); for (unsigned int i = 0; i < usfm->styles.size(); i++) { if (usfm->styles[i].marker == marker) { numbering = (NoteNumberingType) usfm->styles[i].userint1; } } return numbering; } ustring note_numbering_user_sequence_get(const ustring & project, const ustring & marker) // Gets the sequence of characters from which the note caller should be taken. { ustring sequence; ustring stylesheet = stylesheet_get_actual (); extern Styles *styles; Usfm *usfm = styles->usfm(stylesheet); for (unsigned int i = 0; i < usfm->styles.size(); i++) { if (usfm->styles[i].marker == marker) { sequence = usfm->styles[i].userstring1; } } return sequence; } gint table_get_n_rows(GtkTable * table) { gint n_rows = GPOINTER_TO_INT(g_object_get_data(G_OBJECT(table), "n_rows")); return n_rows; } gint table_get_n_columns(GtkTable * table) { gint n_columns = GPOINTER_TO_INT(g_object_get_data(G_OBJECT(table), "n_columns")); return n_columns; } void usfm_internal_add_text(ustring & text, const ustring & addition) // This is an internal function that adds an addition to already existing // USFM text. { // Special handling for adding an end-of-line. if (addition == "\n") { // No end-of-line is to be added at the beginning of the text. if (text.empty()) return; // Ensure that no white-space exists before the end-of-line. text = trim(text); } // Add text. text.append(addition); } void usfm_internal_get_text_close_character_style(ustring & text, const ustring & project, const ustring & style) // Adds the USFM code for a character style that closes. { // Get the type and the subtype. StyleType type; int subtype; marker_get_type_and_subtype(project, style, type, subtype); // A verse number, normally the \v, does not have a closing marker. if (!style_get_starts_verse_number(type, subtype)) { usfm_internal_add_text(text, usfm_get_full_closing_marker(style)); } } ustring usfm_get_note_text(GtkTextIter startiter, GtkTextIter enditer, const ustring & project) { // Variable to hold the note text. ustring notetext; // Initialize the iterator. GtkTextIter iter = startiter; // Paragraph and character styles. ustring previous_paragraph_style; ustring previous_character_style; bool paragraph_initialized = false; // Iterate through the text. while (gtk_text_iter_compare(&iter, &enditer) < 0) { // Get the new paragraph and character style. // This is done by getting the names of the styles at this iterator. // With the way the styles are applied currently, the first // style is a paragraph style, and the second style is optional // and would be a character style. ustring new_paragraph_style; ustring new_character_style; get_styles_at_iterator(iter, new_paragraph_style, new_character_style); // Get the text at the iterator, and whether this is a linebreak. ustring new_character; bool line_break; { gunichar unichar = gtk_text_iter_get_char(&iter); gchar buf[7]; gint length = g_unichar_to_utf8(unichar, (gchar *) & buf); buf[length] = '\0'; new_character = buf; line_break = (new_character.find_first_of("\n\r") == 0); if (line_break) { new_character.clear(); previous_paragraph_style.clear(); } } /* How to get the usfm code of a note. Generally speaking, this is the way to do it: If a character marker of the type "note content" appears or changes, then that is the code to be inserted as an opening marker. At the moment that such a character marker disappears, then insert the then prevailing paragraph marker. If a character marker of type "note content with endmarker" appears, then insert the opening code of it, and if such a marker disappears, insert the closing code. */ bool note_content_opening = false; bool note_content_closing = false; bool note_content_with_endmarker_opening = false; bool note_content_with_endmarker_closing = false; if (new_character_style != previous_character_style) { StyleType type; int subtype; if (new_character_style.empty()) { marker_get_type_and_subtype(project, previous_character_style, type, subtype); if (style_get_starts_note_content(type, subtype)) { note_content_closing = true; } if (style_get_starts_character_style(type, subtype)) { note_content_with_endmarker_closing = true; } } else { marker_get_type_and_subtype(project, new_character_style, type, subtype); if (style_get_starts_note_content(type, subtype)) { note_content_opening = true; } if (style_get_starts_character_style(type, subtype)) { note_content_with_endmarker_opening = true; } } } if (new_paragraph_style != previous_paragraph_style) { if (paragraph_initialized) { if (!new_paragraph_style.empty()) { usfm_internal_add_text(notetext, usfm_get_full_opening_marker(new_paragraph_style)); } } } // Determine the usfm code to be inserted. ustring usfm_code; if (note_content_opening || note_content_with_endmarker_opening) { usfm_code = usfm_get_full_opening_marker(new_character_style); } else if (note_content_closing) { usfm_code = usfm_get_full_opening_marker(new_paragraph_style); } else if (note_content_with_endmarker_closing) { usfm_code = usfm_get_full_closing_marker(previous_character_style); } // Store all styles and flags for next iteration. previous_paragraph_style = new_paragraph_style; previous_character_style = new_character_style; paragraph_initialized = true; /* Store the possible code and the character. We have had cases that such code was produced: \f + \fr v1:\ft one \fdc two\fdc* three.\f* This was coming from v1: one two three. But the fr style was only applied to "v1:", thus giving a space after the \ft marker. The "\ft " marker itself already has a space. We then find that case that one space follows the other. Two consecusitive spaces in USFM count as only one space, hence this space was removed. And that again results in this faulty text: "v1:one two three". A special routine solves that, putting the space before the "\ft " marker. */ bool swap_code_and_text = false; if (paragraph_initialized) { if (new_character == " ") { if (trim(usfm_code) != usfm_code) { swap_code_and_text = true; } } } if (swap_code_and_text) { usfm_internal_add_text(notetext, new_character); usfm_internal_add_text(notetext, usfm_code); } else { usfm_internal_add_text(notetext, usfm_code); usfm_internal_add_text(notetext, new_character); } // Next iteration. gtk_text_iter_forward_char(&iter); } // Return what it got. return notetext; } void get_styles_at_iterator(GtkTextIter iter, ustring & paragraph_style, ustring & character_style) { // Get the applicable styles. // This is done by getting the names of the styles at the iterator. // The first named tag is the paragraph style, // and the second named one is the character style. paragraph_style.clear(); character_style.clear(); GSList *tags = NULL, *tagp = NULL; tags = gtk_text_iter_get_tags(&iter); for (tagp = tags; tagp != NULL; tagp = tagp->next) { GtkTextTag *tag = (GtkTextTag *) tagp->data; gchar *strval; g_object_get(G_OBJECT(tag), "name", &strval, NULL); if (strval) { if (strlen(strval)) { // Skip the tag for a misspelled word. if (strcmp(strval, spelling_tag_name()) != 0) { // First store the paragraph style, then the character style. // This works because the editing code takes care when applying the tags, // to first apply the paragraph style, and then the character style. if (paragraph_style.empty()) { paragraph_style = strval; } else { character_style = strval; } } } g_free(strval); } } if (tags) { g_slist_free(tags); } } vector get_character_styles_between_iterators (GtkTextIter startiter, GtkTextIter enditer) // Gets the character styles between two iterators given. // To do this properly, it is assumed that the first style encountered will always be the paragraph style, // and the second the character style. { vector styles; if (!gtk_text_iter_equal (&startiter, &enditer)) { GtkTextIter iter = startiter; do { ustring paragraphstyle, characterstyle; get_styles_at_iterator(iter, paragraphstyle, characterstyle); styles.push_back (characterstyle); gtk_text_iter_forward_char(&iter); } while (gtk_text_iter_in_range(&iter, &startiter, &enditer)); } return styles; } bool get_verse_number_at_iterator_internal (GtkTextIter iter, const ustring & verse_marker, ustring& verse_number) // This function looks at the iterator for the verse number. // If a verse number is not found, it iterates back till one is found. // If the iterator can't go back any further, and no verse number was found, it returns false. // If a verse number is found, it returns true and stores it in parameter "verse_number". { // Look for the v style while iterating backward. bool verse_style_found = false; do { ustring paragraph_style, character_style; get_styles_at_iterator(iter, paragraph_style, character_style); if (character_style == verse_marker) { verse_style_found = true; } } while (!verse_style_found && gtk_text_iter_backward_char(&iter)); // If the verse style is not in this textbuffer, bail out. if (!verse_style_found) { return false; } // The verse number may consist of more than one character. // Therefore iterate back to the start of the verse style. // For convenience, it iterates back to the start of any style. while (!gtk_text_iter_begins_tag (&iter, NULL)) { gtk_text_iter_backward_char (&iter); } // Extract the verse number. GtkTextIter enditer = iter; gtk_text_iter_forward_chars(&enditer, 10); verse_number = gtk_text_iter_get_slice(&iter, &enditer); size_t position = verse_number.find(" "); position = CLAMP(position, 0, verse_number.length()); verse_number.erase (position, 10); // Indicate that a verse number was found. return true; } ustring get_verse_number_at_iterator(GtkTextIter iter, const ustring & verse_marker, const ustring & project, GtkWidget * parent_box) /* This function returns the verse number at the iterator. It also takes into account a situation where the cursor is on a heading. The user expects a heading to belong to the next verse. */ { // Get the paragraph style at the iterator, in case it is in a heading. ustring paragraph_style_at_cursor; { ustring dummy; get_styles_at_iterator(iter, paragraph_style_at_cursor, dummy); } // Verse-related variables. ustring verse_number = "0"; bool verse_number_found = false; GtkWidget * textview = NULL; do { // Try to find a verse number in the GtkTextBuffer the "iter" points to. verse_number_found = get_verse_number_at_iterator_internal (iter, verse_marker, verse_number); // If the verse number was not found, look through the previous GtkTextBuffer. if (!verse_number_found) { // If the "textview" is not yet set, look for the current one. if (textview == NULL) { GtkTextBuffer * textbuffer = gtk_text_iter_get_buffer (&iter); vector widgets = editor_get_widgets (parent_box); for (unsigned int i = 0; i < widgets.size(); i++) { if (textbuffer == gtk_text_view_get_buffer (GTK_TEXT_VIEW (widgets[i]))) { textview = widgets[i]; break; } } } // Look for the previous GtkTextView. textview = editor_get_previous_textview (parent_box, textview); // Start looking at the end of that textview. if (textview) { GtkTextBuffer * textbuffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (textview)); gtk_text_buffer_get_end_iter (textbuffer, &iter); } } } while (!verse_number_found && textview); // Optional: If the cursor is on a title/heading, increase verse number. if (!project.empty()) { StyleType type; int subtype; marker_get_type_and_subtype(project, paragraph_style_at_cursor, type, subtype); if (type == stStartsParagraph) { switch (subtype) { case ptMainTitle: case ptSubTitle: case ptSectionHeading: { unsigned int vs = convert_to_int (verse_number); vs++; verse_number = convert_to_string (vs); break; } case ptNormalParagraph: { break; } } } } // Return the verse number found. return verse_number; } bool get_iterator_at_verse_number (const ustring& verse_number, const ustring& verse_marker, GtkWidget * parent_box, GtkTextIter & iter, GtkWidget *& textview, bool deep_search) // This returns the iterator and textview where "verse_number" starts. // Returns true if the verse was found, else false. { // Go through all textviews. vector textviews = editor_get_widgets (parent_box); for (unsigned int i = 0; i < textviews.size(); i++) { // Handle this textview. textview = textviews[i]; // Search from start of buffer. GtkTextBuffer * textbuffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (textview)); gtk_text_buffer_get_start_iter (textbuffer, &iter); // Verse 0 or empty: beginning of chapter. if ((verse_number == "0") || (verse_number.empty())) { return true; } // Go through the buffer and find out about the verse. do { ustring paragraph_style, character_style, verse_at_iter; get_styles_at_iterator(iter, paragraph_style, character_style); if (character_style == verse_marker) { verse_at_iter = get_verse_number_at_iterator(iter, verse_marker, "", parent_box); if (verse_number == verse_at_iter) { return true; } } // Optionally do a deep search: whether the verse is in a sequence or range of verses. if (deep_search && !verse_at_iter.empty()) { unsigned int verse_int = convert_to_int(verse_at_iter); vector combined_verses = verse_range_sequence(verse_number); for (unsigned int i2 = 0; i2 < combined_verses.size(); i2++) { if (verse_int == combined_verses[i2]) { return true; } } } } while (gtk_text_iter_forward_char(&iter)); } // If we haven't done the deep search yet, do it now. if (!deep_search) { if (get_iterator_at_verse_number (verse_number, verse_marker, parent_box, iter, textview, true)) { return true; } } // Verse was not found. return false; } const gchar *unknown_style() // Gives the name of the style that is for markers that are not in the stylesheet. { return "unknown"; } const gchar * note_starting_style () // Gives the name of the style that a note caller in the text starts with. { return "note"; } const gchar * usfm_clipboard_code () // Gives the clipboard text that signifies that no text was copied, but USFM code only. { return ""; } void get_next_note_caller_and_style (EditorNoteType type, ustring& caller, ustring& style, bool restart) // Gets the next note caller style. // Since note callers have sequential numbers, it needs another one for each note. { static unsigned int last_offset = 0; if (restart) { last_offset = 0; return; } switch (type) { case entFootnote: caller = "f"; break; case entEndnote: caller = "e"; break; case entCrossreference: caller = "x"; break; } last_offset++; style = note_starting_style (); style.append (convert_to_string (last_offset)); } void textbuffer_apply_named_tag(GtkTextBuffer * buffer, const ustring & name, const GtkTextIter * start, const GtkTextIter * end) // Applies the tag on the textbuffer, if the tag exists. // Else applies the "unknown" style. { GtkTextTagTable *table = gtk_text_buffer_get_tag_table(buffer); GtkTextTag *tag = gtk_text_tag_table_lookup(table, name.c_str()); if (tag) gtk_text_buffer_apply_tag_by_name(buffer, name.c_str(), start, end); else gtk_text_buffer_apply_tag_by_name(buffer, unknown_style(), start, end); } void textbuffer_insert_with_named_tags(GtkTextBuffer * buffer, GtkTextIter * iter, const ustring & text, ustring first_tag_name, ustring second_tag_name) // Inserts text into the buffer applying one or two named tags at the same time. // If a tag does not exist, it applies the "unknown" style instead. { GtkTextTagTable *table = gtk_text_buffer_get_tag_table(buffer); GtkTextTag *tag = gtk_text_tag_table_lookup(table, first_tag_name.c_str()); if (!tag) first_tag_name = unknown_style(); if (!second_tag_name.empty()) { tag = gtk_text_tag_table_lookup(table, second_tag_name.c_str()); if (!tag) second_tag_name = unknown_style(); } if (second_tag_name.empty()) { gtk_text_buffer_insert_with_tags_by_name(buffer, iter, text.c_str(), -1, first_tag_name.c_str(), NULL); } else { gtk_text_buffer_insert_with_tags_by_name(buffer, iter, text.c_str(), -1, first_tag_name.c_str(), second_tag_name.c_str(), NULL); } } void clear_and_destroy_editor_actions (deque & actions) { for (unsigned int i = 0; i < actions.size(); i++) { EditorAction * action = actions[i]; delete action; } actions.clear(); } void on_container_tree_callback_destroy (GtkWidget *widget, gpointer user_data) { gtk_widget_destroy (widget); } void editor_text_append(GtkTextBuffer * textbuffer, const ustring & text, const ustring & paragraph_style, const ustring & character_style) // This function appends text to the textbuffer. // It inserts the text at the cursor. { // Get the iterator at the text insertion point. GtkTextIter insertiter; gtk_text_buffer_get_iter_at_mark(textbuffer, &insertiter, gtk_text_buffer_get_insert(textbuffer)); // Insert text together with the style(s). textbuffer_insert_with_named_tags(textbuffer, &insertiter, text, paragraph_style, character_style); } gint editor_paragraph_insertion_point_get_offset (EditorActionCreateParagraph * paragraph_action) { gint offset = 0; if (paragraph_action) { GtkTextBuffer * textbuffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (paragraph_action->textview)); GtkTextIter iter; gtk_text_buffer_get_iter_at_mark(textbuffer, &iter, gtk_text_buffer_get_insert(textbuffer)); offset = gtk_text_iter_get_offset (&iter); } return offset; } void editor_paragraph_insertion_point_set_offset (EditorActionCreateParagraph * paragraph_action, gint offset) { if (paragraph_action) { GtkTextBuffer * textbuffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (paragraph_action->textview)); GtkTextIter iter; gtk_text_buffer_get_iter_at_offset (textbuffer, &iter, offset); gtk_text_buffer_place_cursor (textbuffer, &iter); } } EditorActionDeleteText * paragraph_delete_last_character_if_space(EditorActionCreateParagraph * paragraph_action) // Creates an action for deleting text for the last character in the text buffer if it is a space. { if (paragraph_action) { GtkTextBuffer * textbuffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (paragraph_action->textview)); GtkTextIter iter; gtk_text_buffer_get_end_iter (textbuffer, &iter); bool text_available = gtk_text_iter_backward_char(&iter); if (text_available) { gunichar last_character = gtk_text_iter_get_char(&iter); if (g_unichar_isspace(last_character)) { gint offset = gtk_text_iter_get_offset (&iter); return new EditorActionDeleteText (paragraph_action, offset, 1); } } } return NULL; } bool text_starts_paragraph (const ustring& project, ustring& line, const ustring& marker, size_t marker_pos, size_t marker_length, bool is_opener, bool marker_found) { if (marker_found) { if (marker_pos == 0) { if (is_opener) { StyleType type; int subtype; marker_get_type_and_subtype(project, marker, type, subtype); if (style_get_starts_new_line_in_editor(type, subtype)) { line.erase(0, marker_length); return true; } } } } return false; } bool text_starts_verse (const ustring& project, ustring& line, const ustring& marker_text, size_t marker_pos, size_t marker_length, bool is_opener, bool marker_found) { if (marker_found) { if (marker_pos == 0) { if (is_opener) { StyleType type; int subtype; marker_get_type_and_subtype(project, marker_text, type, subtype); if (style_get_starts_verse_number(type, subtype)) { line.erase (0, marker_length); return true; } } } } return false; } void on_editor_get_widgets_callback (GtkWidget *widget, gpointer user_data) { vector * widgets = static_cast < vector * > (user_data); widgets->push_back (widget); } vector editor_get_widgets (GtkWidget * vbox) { vector widgets; gtk_container_foreach(GTK_CONTAINER(vbox), on_editor_get_widgets_callback, gpointer(&widgets)); return widgets; } GtkWidget * editor_get_next_textview (GtkWidget * vbox, GtkWidget * textview) { vector widgets = editor_get_widgets (vbox); for (unsigned int i = 0; i < widgets.size(); i++) { if (textview == widgets[i]) if (i < widgets.size() - 1) return widgets[i+1]; } return NULL; } GtkWidget * editor_get_previous_textview (GtkWidget * vbox, GtkWidget * textview) // Gets the textview that precedes the "current" one in the Editor object. { vector widgets = editor_get_widgets (vbox); for (unsigned int i = 0; i < widgets.size(); i++) { if (textview == widgets[i]) if (i) return widgets[i-1]; } return NULL; } EditorActionDeleteText * paragraph_get_text_and_styles_after_insertion_point(EditorActionCreateParagraph * paragraph, vector & text, vector & styles) // This function accepts a paragraph, and gives a list of text and their associated character styles // from the insertion point to the end of the buffer. // It returns the EditorAction that would be required to erase that text from the paragraph. // Note that this EditorAction needs to be applied for the effect to be obtained. // If it is not applied, it should then be destroyed. { GtkTextBuffer * textbuffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (paragraph->textview)); gint start_offset = editor_paragraph_insertion_point_get_offset (paragraph); GtkTextIter startiter, enditer; gtk_text_buffer_get_iter_at_offset (textbuffer, &startiter, start_offset); gtk_text_buffer_get_end_iter (textbuffer, &enditer); gint end_offset = gtk_text_iter_get_offset (&enditer); get_text_and_styles_between_iterators(&startiter, &enditer, text, styles); EditorActionDeleteText * delete_action = NULL; if (end_offset > start_offset) { delete_action = new EditorActionDeleteText(paragraph, start_offset, end_offset - start_offset); } return delete_action; } void get_text_and_styles_between_iterators(GtkTextIter * startiter, GtkTextIter * enditer, vector & text, vector & styles) // This function gives a list of the text and character styles between two iterators. // The "text" variable contains a chunks of text with the same style. { text.clear(); styles.clear(); ustring previous_style; ustring accumulated_text; GtkTextIter iter = *startiter; do { ustring paragraph_style, character_style; get_styles_at_iterator(iter, paragraph_style, character_style); GtkTextIter iter2 = iter; gtk_text_iter_forward_char (&iter2); ustring character = gtk_text_iter_get_text(&iter, &iter2); if (character_style != previous_style) { if (!accumulated_text.empty()) { text.push_back (accumulated_text); styles.push_back (previous_style); accumulated_text.clear(); } } previous_style = character_style; accumulated_text.append (character); gtk_text_iter_forward_char(&iter); } while (gtk_text_iter_in_range(&iter, startiter, enditer)); if (!accumulated_text.empty()) { text.push_back (accumulated_text); styles.push_back (previous_style); } } void editor_park_widget (GtkWidget * vbox, GtkWidget * widget, gint& offset, GtkWidget * parking) // Do the administration of parking a widget. { // Look for the widget's offset within its parent. vector widgets = editor_get_widgets (vbox); for (unsigned int i = 0; i < widgets.size(); i++) { if (widget == widgets[i]) { offset = i; } } // Transfer the widget to the parking lot. It is kept alive. gtk_widget_reparent (widget, parking); } bool iterator_includes_note_caller (GtkTextIter iter) // Check whether the iter points right after a note caller. { if (!gtk_text_iter_backward_char (&iter)) return false; ustring paragraph_style, character_style; get_styles_at_iterator(iter, paragraph_style, character_style); if (character_style.find (note_starting_style ()) == string::npos) return false; return true; } bool move_end_iterator_before_note_caller_and_validate (GtkTextIter startiter, GtkTextIter enditer, GtkTextIter & moved_enditer) // If the iterator is after a note caller, it moves the iterator till it is before the note caller. // Return true if the two iterators contain some text. { // Initialize the iterator that migth be moved. moved_enditer = enditer; // Finite loop prevention. unsigned int finite_loop = 0; // Keep moving the iterator for as long as it contains a note caller. while (iterator_includes_note_caller (moved_enditer) && finite_loop < 10) { gtk_text_iter_backward_char (&moved_enditer); finite_loop++; } // Check whether the end iterator is bigger than the start iterator. return (gtk_text_iter_compare (&moved_enditer, &startiter) > 0); } bibledit-gtk-4.9/src/editor_aids.h000664 000766 000024 00000013227 12221507143 017305 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_EDITOR_AIDS_H #define INCLUDED_EDITOR_AIDS_H #include "libraries.h" #include #include "style.h" #include "editoractions.h" enum EditorNoteType {entFootnote, entEndnote, entCrossreference}; enum EditorTextViewType {etvtBody, etvtNote, etvtTable}; enum EditorMovementType {emtForward, emtBack, emtUp, emtDown}; void marker_get_type_and_subtype(const ustring& project, const ustring& marker, StyleType& type, int& subtype); bool style_get_plaintext(StyleType type, int subtype); bool style_get_paragraph(StyleType type, int subtype); bool style_get_starts_new_line_in_editor(StyleType type, int subtype); bool style_get_starts_new_line_in_usfm(StyleType type, int subtype); bool style_get_displays_marker(StyleType type, int subtype); bool style_get_starts_character_style(StyleType type, int subtype); bool style_get_starts_verse_number(StyleType type, int subtype); ustring style_get_verse_marker(const ustring& project); bool style_get_starts_footnote(StyleType type, int subtype); bool style_get_starts_endnote(StyleType type, int subtype); bool style_get_starts_crossreference(StyleType type, int subtype); bool style_get_starts_note_content(StyleType type, int subtype); ustring style_get_default_note_style(const ustring& project, EditorNoteType type); ustring style_get_paragraph_note_style(const ustring& project); bool style_get_starts_table_row(StyleType type, int subtype); ustring style_get_table_row_marker(const ustring& project); bool style_get_starts_table_cell(StyleType type, int subtype); ustring style_get_table_cell_marker(const ustring& project, int column); EditorNoteType note_type_get(const ustring& project, const ustring& marker); NoteNumberingType note_numbering_type_get(const ustring& project, const ustring& marker); ustring note_numbering_user_sequence_get(const ustring& project, const ustring& marker); gint table_get_n_rows(GtkTable * table); gint table_get_n_columns(GtkTable * table); void usfm_internal_add_text(ustring& text, const ustring& addition); void usfm_internal_get_text_close_character_style(ustring& text, const ustring& project, const ustring& style); ustring usfm_get_note_text(GtkTextIter startiter, GtkTextIter enditer, const ustring& project); void get_styles_at_iterator(GtkTextIter iter, ustring& paragraph_style, ustring& character_style); ustring get_verse_number_at_iterator(GtkTextIter iter, const ustring& verse_marker, const ustring& project, GtkWidget * parent_box); bool get_iterator_at_verse_number (const ustring& verse_number, const ustring& verse_marker, GtkWidget * parent_box, GtkTextIter & iter, GtkWidget *& textview, bool deep_search = false); vector get_character_styles_between_iterators (GtkTextIter startiter, GtkTextIter enditer); const gchar * unknown_style(); const gchar * note_starting_style (); const gchar * usfm_clipboard_code (); void get_next_note_caller_and_style (EditorNoteType type, ustring& caller, ustring& style, bool restart); void textbuffer_apply_named_tag(GtkTextBuffer *buffer, const ustring& name, const GtkTextIter *start, const GtkTextIter *end); void textbuffer_insert_with_named_tags(GtkTextBuffer *buffer, GtkTextIter *iter, const ustring& text, ustring first_tag_name, ustring second_tag_name); void clear_and_destroy_editor_actions (deque & actions); void on_container_tree_callback_destroy (GtkWidget *widget, gpointer user_data); void editor_text_append(GtkTextBuffer * textbuffer, const ustring & text, const ustring & paragraph_style, const ustring & character_style); gint editor_paragraph_insertion_point_get_offset (EditorActionCreateParagraph * paragraph_action); void editor_paragraph_insertion_point_set_offset (EditorActionCreateParagraph * paragraph_action, gint offset); bool text_starts_paragraph (const ustring& project, ustring& line, const ustring& marker, size_t marker_pos, size_t marker_length, bool is_opener, bool marker_found); bool text_starts_verse (const ustring& project, ustring& line, const ustring& marker_text, size_t marker_pos, size_t marker_length, bool is_opener, bool marker_found); EditorActionDeleteText * paragraph_delete_last_character_if_space(EditorActionCreateParagraph * paragraph_action); EditorActionDeleteText * paragraph_get_text_and_styles_after_insertion_point(EditorActionCreateParagraph * paragraph, vector & text, vector & styles); void get_text_and_styles_between_iterators(GtkTextIter * startiter, GtkTextIter * enditer, vector & text, vector & styles); vector editor_get_widgets (GtkWidget * vbox); GtkWidget * editor_get_next_textview (GtkWidget * vbox, GtkWidget * textview); GtkWidget * editor_get_previous_textview (GtkWidget * vbox, GtkWidget * textview); void editor_park_widget (GtkWidget * vbox, GtkWidget * widget, gint& offset, GtkWidget * parking); bool move_end_iterator_before_note_caller_and_validate (GtkTextIter startiter, GtkTextIter enditer, GtkTextIter & moved_enditer); #endif bibledit-gtk-4.9/src/editoractions.cpp000664 000766 000024 00000053620 12221507150 020220 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "editoractions.h" #include "gwrappers.h" #include "editor_aids.h" EditorAction::EditorAction(EditorActionType type_in) { // The type of this EditorAction. type = type_in; } EditorAction::~EditorAction () { } void EditorAction::apply (deque & done) { // Store the EditorAction on the stack of actions done. done.push_back (this); } void EditorAction::undo (deque & done, deque & undone) { // Move the EditorAction from the stack of actions done to the one of actions undone. done.pop_back(); undone.push_back (this); } void EditorAction::redo (deque & done, deque & undone) { // Move the EditorAction from the stack of actions undone to the one of actions done. undone.pop_back(); done.push_back (this); } EditorActionCreateParagraph::EditorActionCreateParagraph(GtkWidget * vbox) : EditorAction (eatCreateParagraph) { // Pointer to the GtkTextView is created on apply. textview = NULL; // Pointer to the GtkTextBuffer is created on apply. textbuffer = NULL; // The default style of the paragraph will be "unknown". style = unknown_style(); // Offset of this widget at time of deletion. offset_at_delete = -1; // Pointer to the parent vertical box. parent_vbox = vbox; } EditorActionCreateParagraph::~EditorActionCreateParagraph () { if (textview) { gtk_widget_destroy (textview); textview = NULL; } } void EditorActionCreateParagraph::apply (GtkTextTagTable * texttagtable, bool editable, EditorActionCreateParagraph * focused_paragraph, GtkWidget *& to_focus) { // The textbuffer uses the text tag table. textbuffer = gtk_text_buffer_new(texttagtable); // New text view to view the text buffer. textview = gtk_text_view_new_with_buffer(textbuffer); gtk_widget_show(textview); // Add text view to the GUI. gtk_box_pack_start(GTK_BOX(parent_vbox), textview, false, false, 0); // Set some parameters of the view. gtk_text_view_set_accepts_tab(GTK_TEXT_VIEW(textview), FALSE); gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(textview), GTK_WRAP_WORD); gtk_text_view_set_editable(GTK_TEXT_VIEW(textview), editable); gtk_text_view_set_left_margin(GTK_TEXT_VIEW(textview), 5); gtk_text_view_set_right_margin(GTK_TEXT_VIEW(textview), 5); // Move the widget to the right position, // which is next to the currently focused paragraph. // This move is important since a new paragraph can be created anywhere among the current ones. vector widgets = editor_get_widgets (parent_vbox); gint new_paragraph_offset = 0; if (focused_paragraph) { for (unsigned int i = 0; i < widgets.size(); i++) { if (focused_paragraph->textview == widgets[i]) { new_paragraph_offset = i + 1; break; } } } gtk_box_reorder_child (GTK_BOX(parent_vbox), textview, new_paragraph_offset); // Let the newly created textview be earmarked to grab focus // so that the user can type in it, // and the internal Editor logic knows about it. to_focus = textview; } void EditorActionCreateParagraph::undo (GtkWidget * parking_vbox, GtkWidget *& to_focus) { // Remove the widget by parking it in an invisible location. It is kept alive. editor_park_widget (parent_vbox, textview, offset_at_delete, parking_vbox); // Focus textview. to_focus = textview; } void EditorActionCreateParagraph::redo (GtkWidget *& to_focus) { // Restore the live widget to the editor. gtk_widget_reparent (textview, parent_vbox); gtk_box_reorder_child (GTK_BOX(parent_vbox), textview, offset_at_delete); // Let the restored textview be earmarked to grab focus. to_focus = textview; } EditorActionChangeParagraphStyle::EditorActionChangeParagraphStyle(const ustring& style, EditorActionCreateParagraph * parent_action) : EditorAction (eatChangeParagraphStyle) { // The EditorAction object that created the paragraph whose style it going to be set. paragraph = parent_action; // The style of the paragraph before the new style was applied. previous_style = parent_action->style; // The new style for the paragraph. current_style = style; } EditorActionChangeParagraphStyle::~EditorActionChangeParagraphStyle () { } void EditorActionChangeParagraphStyle::apply (GtkWidget *& to_focus) { paragraph->style = current_style; set_style (paragraph->style); to_focus = paragraph->textview; } void EditorActionChangeParagraphStyle::undo (GtkWidget *& to_focus) { paragraph->style = previous_style; set_style (paragraph->style); to_focus = paragraph->textview; } void EditorActionChangeParagraphStyle::redo (GtkWidget *& to_focus) { apply (to_focus); } void EditorActionChangeParagraphStyle::set_style (const ustring& style) { // Define the work area. GtkTextIter startiter; gtk_text_buffer_get_start_iter (paragraph->textbuffer, &startiter); GtkTextIter enditer; gtk_text_buffer_get_end_iter (paragraph->textbuffer, &enditer); // Apply the style in such a way that the paragraph style is always applied first, // then after that the character styles. vector current_character_styles = get_character_styles_between_iterators (startiter, enditer); gtk_text_buffer_remove_all_tags (paragraph->textbuffer, &startiter, &enditer); gtk_text_buffer_apply_tag_by_name (paragraph->textbuffer, style.c_str(), &startiter, &enditer); for (unsigned int i = 0; i < current_character_styles.size(); i++) { if (!current_character_styles[i].empty()) { gtk_text_buffer_get_iter_at_offset (paragraph->textbuffer, &startiter, i); enditer = startiter; gtk_text_iter_forward_char (&enditer); gtk_text_buffer_apply_tag_by_name (paragraph->textbuffer, current_character_styles[i].c_str(), &startiter, &enditer); } } } EditorActionInsertText::EditorActionInsertText(EditorActionCreateParagraph * parent_action, gint offset_in, const ustring& text_in) : EditorAction (eatInsertText) { // The paragraph to operate on. paragraph = parent_action; // Where to insert the text, that is, at which offset within the GtkTextBuffer. offset = offset_in; // The text to insert. text = text_in; } EditorActionInsertText::~EditorActionInsertText () { } void EditorActionInsertText::apply (GtkWidget *& to_focus) { GtkTextIter iter; gtk_text_buffer_get_iter_at_offset (paragraph->textbuffer, &iter, offset); gtk_text_buffer_insert (paragraph->textbuffer, &iter, text.c_str(), -1); // Apply the paragraph style to the new inserted text. // It is important that paragraph styles are applied first, and character styles last. // Since this is new inserted text, there's no character style yet, // so the paragraph style can be applied normally. GtkTextIter startiter; gtk_text_buffer_get_iter_at_offset (paragraph->textbuffer, &startiter, offset); GtkTextIter enditer; gtk_text_buffer_get_iter_at_offset (paragraph->textbuffer, &enditer, offset + text.length()); gtk_text_buffer_apply_tag_by_name (paragraph->textbuffer, paragraph->style.c_str(), &startiter, &enditer); // Focus widget. to_focus = paragraph->textview; } void EditorActionInsertText::undo (GtkWidget *& to_focus) { // Undo the insertion of text, that is, remove it again. GtkTextIter startiter, enditer; gtk_text_buffer_get_iter_at_offset (paragraph->textbuffer, &startiter, offset); gtk_text_buffer_get_iter_at_offset (paragraph->textbuffer, &enditer, offset + text.length()); gtk_text_buffer_delete (paragraph->textbuffer, &startiter, &enditer); // Focus widget. to_focus = paragraph->textview; } void EditorActionInsertText::redo (GtkWidget *& to_focus) { apply (to_focus); } EditorActionDeleteText::EditorActionDeleteText(EditorActionCreateParagraph * parent_action, gint offset_in, gint length_in) : EditorAction (eatDeleteText) { // The paragraph to operate on. paragraph = parent_action; // Where to start deleting the text, that is, at which offset within the GtkTextBuffer. offset = offset_in; // The length of the text to be deleted. length = length_in; // The text which was deleted will be set when this action is executed. } EditorActionDeleteText::~EditorActionDeleteText () { } void EditorActionDeleteText::apply (GtkWidget *& to_focus) { // Limit the area. GtkTextIter startiter, enditer; gtk_text_buffer_get_iter_at_offset (paragraph->textbuffer, &startiter, offset); gtk_text_buffer_get_iter_at_offset (paragraph->textbuffer, &enditer, offset + length); // Save existing content. get_text_and_styles_between_iterators(&startiter, &enditer, deleted_text, deleted_styles); // Delete text. gtk_text_buffer_delete (paragraph->textbuffer, &startiter, &enditer); // Focus widget. to_focus = paragraph->textview; } void EditorActionDeleteText::undo (GtkWidget *& to_focus) { // Undo the text deletion action, that means, re-insert the text. // Get initial insert position. gint accumulated_offset = offset; // Go through the text to re-insert. for (unsigned int i = 0; i < deleted_text.size(); i++) { // Get the position where to insert. GtkTextIter startiter; gtk_text_buffer_get_iter_at_offset (paragraph->textbuffer, &startiter, accumulated_offset); // Re-insert the text. gtk_text_buffer_insert (paragraph->textbuffer, &startiter, deleted_text[i].c_str(), -1); // Apply the paragraph style to the new inserted text. // It is important that paragraph styles are applied first, and character styles last. // Since this is new inserted text, there's no character style yet, // so the paragraph style can be applied normally. gtk_text_buffer_get_iter_at_offset (paragraph->textbuffer, &startiter, accumulated_offset); GtkTextIter enditer; gtk_text_buffer_get_iter_at_offset (paragraph->textbuffer, &enditer, accumulated_offset + deleted_text[i].length()); gtk_text_buffer_apply_tag_by_name (paragraph->textbuffer, paragraph->style.c_str(), &startiter, &enditer); // Apply the character style. if (!deleted_styles[i].empty()) { gtk_text_buffer_apply_tag_by_name (paragraph->textbuffer, deleted_styles[i].c_str(), &startiter, &enditer); } // Modify the accumulated offset for the next iteration. accumulated_offset += deleted_text[i].length(); } // Focus widget. to_focus = paragraph->textview; } void EditorActionDeleteText::redo (GtkWidget *& to_focus) { // Limit the area. GtkTextIter startiter, enditer; gtk_text_buffer_get_iter_at_offset (paragraph->textbuffer, &startiter, offset); gtk_text_buffer_get_iter_at_offset (paragraph->textbuffer, &enditer, offset + length); // Delete text. gtk_text_buffer_delete (paragraph->textbuffer, &startiter, &enditer); // Focus widget. to_focus = paragraph->textview; } EditorActionChangeCharacterStyle::EditorActionChangeCharacterStyle(EditorActionCreateParagraph * parent_action, const ustring& style_in, gint offset_in, gint length_in) : EditorAction (eatChangeCharacterStyle) { // The identifier of the paragraph to operate on. paragraph = parent_action; // The name of the style. style = style_in; // Where to start applying the style, that is, at which offset within the GtkTextBuffer. offset = offset_in; // The length of the text where the style is to be applied. length = length_in; // The previous styles are stored per character when this action is executed. } EditorActionChangeCharacterStyle::~EditorActionChangeCharacterStyle () { } void EditorActionChangeCharacterStyle::apply (GtkWidget *& to_focus) { // Mark off the affected area. GtkTextIter startiter; GtkTextIter enditer; gtk_text_buffer_get_iter_at_offset (paragraph->textbuffer, &startiter, offset); gtk_text_buffer_get_iter_at_offset (paragraph->textbuffer, &enditer, offset + length); // Get the styles applied now, and store these so as to track the state of this bit of text. previous_styles = get_character_styles_between_iterators (startiter, enditer); // The new styles to apply. vector new_styles; for (gint i = 0; i < length; i++) { new_styles.push_back (style); } // Change the styles. change_styles (previous_styles, new_styles); // Focus widget. to_focus = paragraph->textview; } void EditorActionChangeCharacterStyle::undo (GtkWidget *& to_focus) { // The styles to remove. vector styles_to_remove; for (gint i = 0; i < length; i++) { styles_to_remove.push_back (style); } // Change the styles, putting back the original ones. change_styles (styles_to_remove, previous_styles); // Focus widget. to_focus = paragraph->textview; } void EditorActionChangeCharacterStyle::redo (GtkWidget *& to_focus) { // Mark off the affected area. GtkTextIter startiter; GtkTextIter enditer; gtk_text_buffer_get_iter_at_offset (paragraph->textbuffer, &startiter, offset); gtk_text_buffer_get_iter_at_offset (paragraph->textbuffer, &enditer, offset + length); // Get the styles applied now, and store these so as to track the state of this bit of text. vector styles_to_delete = get_character_styles_between_iterators (startiter, enditer); // The new styles to apply. vector new_styles; for (gint i = 0; i < length; i++) { new_styles.push_back (style); } // Change the styles. change_styles (styles_to_delete, new_styles); // Focus widget. to_focus = paragraph->textview; } void EditorActionChangeCharacterStyle::change_styles (const vector & old_ones, const vector & new_ones) { // Remove old styles and apply new ones. for (gint i = 0; i < length; i++) { GtkTextIter startiter, enditer; gtk_text_buffer_get_iter_at_offset (paragraph->textbuffer, &startiter, offset + i); enditer = startiter; gtk_text_iter_forward_char (&enditer); if (!old_ones[i].empty()) { gtk_text_buffer_remove_tag_by_name (paragraph->textbuffer, old_ones[i].c_str(), &startiter, &enditer); } if (!new_ones[i].empty()) { gtk_text_buffer_apply_tag_by_name (paragraph->textbuffer, new_ones[i].c_str(), &startiter, &enditer); } } } EditorActionDeleteParagraph::EditorActionDeleteParagraph(EditorActionCreateParagraph * paragraph_in) : EditorAction (eatDeleteParagraph) { // The identifier of the paragraph to operate on. paragraph = paragraph_in; // Initialize the offset within the parent GtkBox. offset = -1; } EditorActionDeleteParagraph::~EditorActionDeleteParagraph () { } void EditorActionDeleteParagraph::apply (GtkWidget * parking_vbox, GtkWidget *& to_focus) { // Park this widget, keeping it alive. GtkWidget * widget_to_park = paragraph->textview; if (paragraph->type == eatCreateNoteParagraph) { EditorActionCreateNoteParagraph * note_paragraph = static_cast (paragraph); widget_to_park = note_paragraph->hbox; } editor_park_widget (paragraph->parent_vbox, widget_to_park, offset, parking_vbox); } void EditorActionDeleteParagraph::undo (GtkWidget *& to_focus) { // Restore the live widget to the editor. GtkWidget * widget_to_restore = paragraph->textview; if (paragraph->type == eatCreateNoteParagraph) { EditorActionCreateNoteParagraph * note_paragraph = static_cast (paragraph); widget_to_restore = note_paragraph->hbox; } gtk_widget_reparent (widget_to_restore, paragraph->parent_vbox); gtk_box_reorder_child (GTK_BOX(paragraph->parent_vbox), widget_to_restore, offset); // Let the restored textview be earmarked to grab focus. to_focus = paragraph->textview; } void EditorActionDeleteParagraph::redo (GtkWidget * parking_vbox, GtkWidget *& to_focus) { // Park this widget, keeping it alive. // Don't store the offset, since we already have that value. GtkWidget * widget_to_park = paragraph->textview; if (paragraph->type == eatCreateNoteParagraph) { EditorActionCreateNoteParagraph * note_paragraph = static_cast (paragraph); widget_to_park = note_paragraph->hbox; } gint dummy; editor_park_widget (paragraph->parent_vbox, widget_to_park, dummy, parking_vbox); } EditorActionCreateNoteParagraph::EditorActionCreateNoteParagraph(GtkWidget * vbox, const ustring& marker_in, const ustring& caller_usfm_in, const ustring& caller_text_in, const ustring& identifier_in) : EditorActionCreateParagraph (vbox) { // Change the type to a note paragraph. type = eatCreateNoteParagraph; // Store opening and closing marker (e.g. "f" for a footnote). opening_closing_marker = marker_in; // Store USFM caller (e.g. "+" for automatic numbering). caller_usfm = caller_usfm_in; // Store caller in text (e.g. "f" for a footnote). caller_text = caller_text_in; // Store identifier. Is used as the style in the main text body. identifier = identifier_in; // Widgets will be set on initial application. hbox = NULL; eventbox = NULL; label = NULL; } EditorActionCreateNoteParagraph::~EditorActionCreateNoteParagraph () { if (hbox) { gtk_widget_destroy (hbox); hbox = NULL; eventbox = NULL; label = NULL; textview = NULL; } } void EditorActionCreateNoteParagraph::apply (GtkTextTagTable * texttagtable, bool editable, EditorActionCreateParagraph * focused_paragraph, GtkWidget *& to_focus) { // Horizontal box to store the note. hbox = gtk_hbox_new (false, 0); gtk_widget_show (hbox); gtk_box_pack_start(GTK_BOX(parent_vbox), hbox, false, false, 0); // Eventbox to catch a few events on the caller of the note. eventbox = gtk_event_box_new (); gtk_widget_show (eventbox); gtk_box_pack_start(GTK_BOX(hbox), eventbox, false, false, 0); g_signal_connect ((gpointer) eventbox, "enter_notify_event", G_CALLBACK (on_caller_enter_notify_event), gpointer (this)); g_signal_connect ((gpointer) eventbox, "leave_notify_event", G_CALLBACK (on_caller_leave_notify_event), gpointer (this)); // The background of the caller is going to be grey. // Courier font is chosen to make the spacing of the callers equal so they line up nicely. label = gtk_label_new (""); gtk_widget_show (label); char *markup = g_markup_printf_escaped(" %s ", caller_text.c_str()); gtk_label_set_markup(GTK_LABEL(label), markup); g_free(markup); gtk_container_add (GTK_CONTAINER (eventbox), label); // The textbuffer uses the text tag table. textbuffer = gtk_text_buffer_new(texttagtable); // Text view to view the text buffer. textview = gtk_text_view_new_with_buffer(textbuffer); gtk_widget_show(textview); gtk_box_pack_start(GTK_BOX(hbox), textview, true, true, 0); // Set some parameters of the view. gtk_text_view_set_accepts_tab(GTK_TEXT_VIEW(textview), FALSE); gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(textview), GTK_WRAP_WORD); gtk_text_view_set_editable(GTK_TEXT_VIEW(textview), editable); gtk_text_view_set_left_margin(GTK_TEXT_VIEW(textview), 5); gtk_text_view_set_right_margin(GTK_TEXT_VIEW(textview), 5); // Move the widget to the right position. To be calculated. /* vector widgets = editor_get_widgets (parent_vbox); gint new_paragraph_offset = 0; if (focused_paragraph) { for (unsigned int i = 0; i < widgets.size(); i++) { if (focused_paragraph->textview == widgets[i]) { new_paragraph_offset = i + 1; break; } } } gtk_box_reorder_child (GTK_BOX(parent_vbox), textview, new_paragraph_offset); */ // Let the newly created textview be earmarked to grab focus // so that the user can type in it, // and the internal Editor logic knows about it. to_focus = textview; } void EditorActionCreateNoteParagraph::undo (GtkWidget * parking_vbox, GtkWidget *& to_focus) { // Remove the widget by parking it in an invisible location. It is kept alive. editor_park_widget (parent_vbox, textview, offset_at_delete, parking_vbox); // Focus textview. to_focus = textview; } void EditorActionCreateNoteParagraph::redo (GtkWidget *& to_focus) { // Restore the live widget to the editor. gtk_widget_reparent (textview, parent_vbox); gtk_box_reorder_child (GTK_BOX(parent_vbox), textview, offset_at_delete); // Let the restored textview be earmarked to grab focus. to_focus = textview; } gboolean EditorActionCreateNoteParagraph::on_caller_enter_notify_event (GtkWidget *widget, GdkEventCrossing *event, gpointer user_data) { return ((EditorActionCreateNoteParagraph *) user_data)->on_caller_enter_notify(event); } gboolean EditorActionCreateNoteParagraph::on_caller_enter_notify (GdkEventCrossing *event) { // Set the cursor to a shape that shows that the caller can be clicked. GtkWidget *toplevel_widget = gtk_widget_get_toplevel(label); GdkWindow *gdk_window = gtk_widget_get_window (toplevel_widget); GdkCursor *cursor = gdk_cursor_new(GDK_HAND2); gdk_window_set_cursor(gdk_window, cursor); gdk_cursor_unref (cursor); return false; } gboolean EditorActionCreateNoteParagraph::on_caller_leave_notify_event (GtkWidget *widget, GdkEventCrossing *event, gpointer user_data) { return ((EditorActionCreateNoteParagraph *) user_data)->on_caller_leave_notify(event); } gboolean EditorActionCreateNoteParagraph::on_caller_leave_notify (GdkEventCrossing *event) { // Restore the original cursor. GtkWidget * toplevel_widget = gtk_widget_get_toplevel(label); GdkWindow *gdk_window = gtk_widget_get_window (toplevel_widget); gdk_window_set_cursor(gdk_window, NULL); return false; } bibledit-gtk-4.9/src/editoractions.h000664 000766 000024 00000012773 12221507150 017671 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_EDITOR_ACTIONS_H #define INCLUDED_EDITOR_ACTIONS_H #include "libraries.h" #include enum EditorActionType { eatCreateParagraph, eatChangeParagraphStyle, eatInsertText, eatDeleteText, eatChangeCharacterStyle, eatLoadChapterBoundary, eatOneActionBoundary, eatDeleteParagraph, eatCreateNoteParagraph }; enum EditorActionApplication { eaaInitial, eaaUndo, eaaRedo }; class EditorAction { public: EditorAction(EditorActionType type_in); virtual ~EditorAction(); void apply (deque & done); void undo (deque & done, deque & undone); void redo (deque & done, deque & undone); EditorActionType type; private: }; class EditorActionCreateParagraph : public EditorAction { public: EditorActionCreateParagraph(GtkWidget * vbox); virtual ~EditorActionCreateParagraph(); friend class EditorActionCreateNoteParagraph; friend class EditorActionDeleteParagraph; void apply (GtkTextTagTable * texttagtable, bool editable, EditorActionCreateParagraph * focused_paragraph, GtkWidget *& to_focus); void undo (GtkWidget * parking_vbox, GtkWidget *& to_focus); void redo (GtkWidget *& to_focus); GtkWidget * textview; GtkTextBuffer * textbuffer; ustring style; private: gint offset_at_delete; GtkWidget * parent_vbox; }; class EditorActionChangeParagraphStyle : public EditorAction { public: EditorActionChangeParagraphStyle(const ustring& style, EditorActionCreateParagraph * parent_action); virtual ~EditorActionChangeParagraphStyle(); void apply (GtkWidget *& to_focus); void undo (GtkWidget *& to_focus); void redo (GtkWidget *& to_focus); private: EditorActionCreateParagraph * paragraph; ustring previous_style; ustring current_style; void set_style (const ustring& style); }; class EditorActionInsertText : public EditorAction { public: EditorActionInsertText(EditorActionCreateParagraph * parent_action, gint offset_in, const ustring& text_in); virtual ~EditorActionInsertText(); void apply (GtkWidget *& to_focus); void undo (GtkWidget *& to_focus); void redo (GtkWidget *& to_focus); private: EditorActionCreateParagraph * paragraph; gint offset; ustring text; }; class EditorActionDeleteText : public EditorAction { public: EditorActionDeleteText(EditorActionCreateParagraph * parent_action, gint offset_in, gint length_in); virtual ~EditorActionDeleteText(); EditorActionCreateParagraph * paragraph; void apply (GtkWidget *& to_focus); void undo (GtkWidget *& to_focus); void redo (GtkWidget *& to_focus); private: gint offset; gint length; vector deleted_text; vector deleted_styles; }; class EditorActionChangeCharacterStyle : public EditorAction { public: EditorActionChangeCharacterStyle(EditorActionCreateParagraph * parent_action, const ustring& style_in, gint offset_in, gint length_in); virtual ~EditorActionChangeCharacterStyle(); void apply (GtkWidget *& to_focus); void undo (GtkWidget *& to_focus); void redo (GtkWidget *& to_focus); private: EditorActionCreateParagraph * paragraph; ustring style; gint offset; gint length; vector previous_styles; void change_styles (const vector & old_ones, const vector & new_ones); }; class EditorActionDeleteParagraph : public EditorAction { public: EditorActionDeleteParagraph(EditorActionCreateParagraph * paragraph_in); virtual ~EditorActionDeleteParagraph(); void apply(GtkWidget * parking_vbox, GtkWidget *& to_focus); void undo (GtkWidget *& to_focus); void redo (GtkWidget * parking_vbox, GtkWidget *& to_focus); private: EditorActionCreateParagraph * paragraph; gint offset; }; class EditorActionCreateNoteParagraph : public EditorActionCreateParagraph { public: EditorActionCreateNoteParagraph(GtkWidget * vbox, const ustring& marker_in, const ustring& caller_usfm_in, const ustring& caller_text_in, const ustring& identifier_in); virtual ~EditorActionCreateNoteParagraph(); void apply (GtkTextTagTable * texttagtable, bool editable, EditorActionCreateParagraph * focused_paragraph, GtkWidget *& to_focus); void undo (GtkWidget * parking_vbox, GtkWidget *& to_focus); void redo (GtkWidget *& to_focus); GtkWidget * hbox; GtkWidget * eventbox; ustring identifier; ustring opening_closing_marker; ustring caller_usfm; private: ustring caller_text; GtkWidget * label; static gboolean on_caller_enter_notify_event (GtkWidget *widget, GdkEventCrossing *event, gpointer user_data); gboolean on_caller_enter_notify (GdkEventCrossing *event); static gboolean on_caller_leave_notify_event (GtkWidget *widget, GdkEventCrossing *event, gpointer user_data); gboolean on_caller_leave_notify (GdkEventCrossing *event); }; #endif bibledit-gtk-4.9/src/export_translation_notes.cpp000664 000766 000024 00000012770 12221507130 022517 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "utilities.h" #include "export_utils.h" #include "bible.h" #include "usfm.h" #include "usfmtools.h" #include "notes_utils.h" #include "date_time_utils.h" #include "export_translation_notes.h" #include "gwrappers.h" #include "gtkwrappers.h" #include "tiny_utilities.h" #include "sqlite_reader.h" ExportTranslationNotes::ExportTranslationNotes(const ustring & filename, const vector < unsigned int >&ids_to_display, bool export_all) // Exports the notes from the database. /* The exported xml file will look so: This is subject to change as bibledit's notes system develops. */ :progresswindow("Exporting notes", true) { // Save variables. my_export_all = export_all; // Start process. try { // Write to outputfile. WriteText wt(filename); my_wt = &wt; // Opening lines. wt.text("\n"); wt.text("\n"); // Connect to index database. // Note: The index is not the source of the notes. // This implies that, if the index is not up-to-date, // then the export will not be correct. error = NULL; rc = sqlite3_open(notes_index_filename().c_str(), &db); if (rc) throw runtime_error(sqlite3_errmsg(db)); sqlite3_busy_timeout(db, 1000); // Currently this is the notes table schema: // id integer, reference text, project text, category text, casefolded text, created integer, modified integer // Get the number of notes. SqliteReader sqlitereader(0); rc = sqlite3_exec(db, "select count(*) from notes;", sqlitereader.callback, &sqlitereader, &error); if (rc != SQLITE_OK) { throw runtime_error(error); } if (!sqlitereader.ustring0.empty()) { notes_count = convert_to_int (sqlitereader.ustring0[0]); } progresswindow.set_iterate(0, 1, notes_count); // Exporting everything or a selection? set < gint > ids(ids_to_display.begin(), ids_to_display.end()); my_ids = &ids; // Go through all the notes. note_counter = 0; rc = sqlite3_exec(db, "select reference, project, category, casefolded, created, modified from notes;", data_callback, this, &error); if (rc != SQLITE_OK) { throw runtime_error(error); } // Closing lines. wt.text("\n"); } catch(exception & ex) { if (!progresswindow.cancel) { gtkw_dialog_error(NULL, ex.what()); gw_critical(ex.what()); } } } ExportTranslationNotes::~ExportTranslationNotes() { // Close connection. sqlite3_close(db); } int ExportTranslationNotes::data_callback(void *userdata, int argc, char **argv, char **column_names) { return ((ExportTranslationNotes *) userdata)->on_data(argc, argv); } int ExportTranslationNotes::on_data(int argc, char **argv) { // Progress information. note_counter++; progresswindow.iterate(); if (progresswindow.cancel) { return 1; } // See whether to display this particular id. if (!my_export_all) { gint id; id = convert_to_int(argv[7]); if (my_ids->find(id) == my_ids->end()) return 0; } // Start note. my_wt->text(" \n"); // Deal with the references. ustring reference; reference = argv[0]; // Parse the string into its possible several references. Parse parse(reference, false); reference.clear(); // Go through each reference and store it. for (unsigned int i = 0; i < parse.words.size(); i++) { if (!reference.empty()) reference.append("\n"); reference.append(parse.words[i]); } my_wt->text(" "); my_wt->text(reference); my_wt->text("\n"); // Deal with the project name. ustring project = argv[1]; my_wt->text(" " + project + "\n"); // Deal with the status of the note. ustring category = argv[2]; my_wt->text(" " + category + "\n"); // The casefolded note text. ustring note = argv[3]; my_wt->text(" " + note + "\n"); // The date it was created. int created = convert_to_int(argv[4]); ustring date; date = trim(date_time_julian_human_readable(created, false)); my_wt->text(" " + date + "\n"); // Deal with the modification date. int modified = convert_to_int(argv[5]); date = trim(date_time_julian_human_readable(modified, false)); my_wt->text(" " + date + "\n"); // Finish note. my_wt->text(" \n"); return 0; } bibledit-gtk-4.9/src/export_translation_notes.h000664 000766 000024 00000002736 12221507140 022166 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_EXPORT_TRANSLATION_NOTES_H #define INCLUDED_EXPORT_TRANSLATION_NOTES_H #include "libraries.h" #include #include "export_utils.h" #include #include "progresswindow.h" class ExportTranslationNotes { public: ExportTranslationNotes (const ustring& filename, const vector & ids_to_display, bool export_all); ~ExportTranslationNotes (); private: sqlite3 *db; char *error; int rc; int notes_count; int note_counter; bool my_export_all; set * my_ids; WriteText * my_wt; ProgressWindow progresswindow; static int data_callback (void *userdata, int argc, char **argv, char **column_names); int on_data (int argc, char **argv); }; #endif bibledit-gtk-4.9/src/export_utils.cpp000644 000766 000024 00000100560 12455215403 020112 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "utilities.h" #include "export_utils.h" #include "bible.h" #include "usfm.h" #include "usfmtools.h" #include "notes_utils.h" #include "date_time_utils.h" #include "export_translation_notes.h" #include "constants.h" #include "gwrappers.h" #include "directories.h" #include "unixwrappers.h" #include "gtkwrappers.h" #include "shell.h" #include "swordnote.h" #include "xmlutils.h" #include "mapping.h" #include "projectutils.h" #include "books.h" #include "progresswindow.h" #include "opendocument.h" #include "dialogselectbooks.h" #include "settings.h" #include "stylesheetutils.h" #include "textreplacement.h" #include "tiny_utilities.h" #include "clean.h" #include "dialogradiobutton.h" #include "usfm2osis.h" #include "osis.h" #include #include "categorize.h" #include "snapshots.h" #include "java.h" void export_to_usfm (const ustring& project, ustring location, bool zip) { // (Temporal) output directory. ustring tempdir = gw_build_filename(Directories->get_temp(), "usfm-export"); unix_rmdir(tempdir); gw_mkdir_with_parents(tempdir); if (!zip) gw_mkdir_with_parents(location); // Configuration. extern Settings *settings; ProjectConfiguration *projectconfig = settings->projectconfig(project); // Book selection. vector books = project_get_books(project); { set selectedbooks (books.begin(), books.end()); SelectBooksDialog dialog(false); dialog.language(projectconfig->language_get()); dialog.selection_set(selectedbooks); if (dialog.run() != GTK_RESPONSE_OK) return; selectedbooks = dialog.selectionset; books.assign (selectedbooks.begin(), selectedbooks.end()); } // Progress information. ProgressWindow progresswindow("Exporting project", false); progresswindow.set_iterate(0, 1, books.size()); // Export all books to usfm. for (unsigned int i = 0; i < books.size(); i++) { // Progress info. progresswindow.iterate(); vector lines = project_retrieve_book(project, books[i]); char padded [3]; sprintf (padded, "%02d", books[i]); ustring padded2 (padded); ustring filename = padded2 + " " + books_id_to_english(books[i]) + ".usfm"; replace_text (filename, " ", "_"); if (zip) filename = gw_build_filename(tempdir, filename); else filename = gw_build_filename(location, filename); write_lines(filename, lines); } // Zip them? if (zip) { if (!g_str_has_suffix(location.c_str(), ".zip")) location.append(".zip"); unlink(location.c_str()); #ifdef WIN32 ustring command = "cd" + shell_quote_space(tempdir) + " && zip -r zip.zip *.usfm && move zip.zip" + shell_quote_space(location); #else ustring command = "cd" + shell_quote_space(tempdir) + "; zip -r zip.zip *.usfm; mv zip.zip" + shell_quote_space(location); #endif // This one does not work with GwSpawn because of the wildcards used. if (int ret = system(command.c_str())) { cerr << "System call for zip and move returned " << ret << endl; cerr << "-1 indicates error; return status of the command otherwise" << endl; } } } void export_to_bibleworks(const ustring& project, const ustring& filename) /* Exports a whole project to a file that is fit for being imported by the BibleWorks Version Database Compiler. This done in this manner: - If an \id line is found, use its ID to get the name of the book in BibleWorks. - If an chapter tag if found, use its number. - As soon as an ID is found, put the current chapter at one. - If a verse is found, add its number. - Text of tags known not to be printable is thrown out. - Any other tag's text gets added to the text of the verse. Yes, this is a bit rough, I know... */ { if (!filename.empty()) { // Progress bar. ProgressWindow progresswindow("Export", true); // Start process. try { Usfm usfm(stylesheet_get_actual ()); // Write to outputfile. WriteText wt(filename); // Get all the books and go through them. vector < unsigned int >scripture_books = project_get_books(project); progresswindow.set_iterate(0, 1, scripture_books.size()); progresswindow.set_text("Exporting"); for (unsigned int bk = 0; bk < scripture_books.size(); bk++) { // Progress information. progresswindow.iterate(); if (progresswindow.cancel) return; // Get the abbreviation to be used. ustring abbreviation = books_id_to_bibleworks(scripture_books[bk]); // If the book does not exist in BibleWorks, skip it. if (abbreviation.empty()) continue; // Handle each chapter in the book. vector < unsigned int >chapters = project_get_chapters(project, scripture_books[bk]); for (unsigned int ch = 0; ch < chapters.size(); ch++) { // Do not export chapter 0. if (chapters[ch] == 0) continue; // Get the chapter and handle it. vector < ustring > lines; lines = project_retrieve_chapter(project, scripture_books[bk], chapters[ch]); text_replacement(lines); CategorizeChapterVerse ccv(lines); for (unsigned int vs = 0; vs < ccv.verse.size(); vs++) { // Do not export verse 0. if (ccv.verse[vs] == "0") continue; // Bibledit does not handle combined verses like 1-4a., etc. So make // a simple verse. ustring verse = number_in_string(ccv.verse[vs]); // Remove the verse number from the line itself, except when the verse // was not a simple one, e.g. it was something like verse 1-3. size_t position = ccv.line[vs].find(" "); if (position != string::npos) ccv.line[vs].erase(0, ++position); if (verse == ccv.verse[vs]) { position = ccv.line[vs].find(" "); if (position != string::npos) ccv.line[vs].erase(0, ++position); } CategorizeLine cat_line(ccv.line[vs]); // Output verse. wt.text(abbreviation); wt.text(" "); wt.text(convert_to_string(chapters[ch])); wt.text(":"); wt.text(verse); wt.text(" "); wt.text(cat_line.verse); wt.text("\n"); } } } } catch(exception & ex) { cerr << "Converting to BibleWorks: " << ex.what() << endl; } } } void export_translation_notes(const ustring & filename, const vector < unsigned int >&ids_to_display, bool export_all) { ExportTranslationNotes etn(filename, ids_to_display, export_all); } void export_to_osis_recommended (const ustring& project, const ustring& filename) { ProgressWindow progresswindow("Exporting project", true); unlink(filename.c_str()); Usfm2Osis usfm2osis (filename); usfm2osis.set_stylesheet (stylesheet_get_actual ()); usfm2osis.header (project, project); vector books = project_get_books(project); progresswindow.set_iterate(0, 1, books.size()); for (unsigned int bk = 0; bk < books.size(); bk++) { progresswindow.iterate(); if (progresswindow.cancel) { return; } // Skip the book if it is not known in the Osis standard. if (books_id_to_osis(books[bk]).empty()) continue; usfm2osis.open_book (books[bk]); vector contents = project_retrieve_book (project, books[bk]); usfm2osis.load_book (contents); usfm2osis.close_book(); } } void export_to_osis_old (const ustring& project, const ustring& filename) { ProgressWindow progresswindow ("Exporting project", true); try { // Prepare for notes and inline text. Usfm usfm(stylesheet_get_actual ()); SwordNote swordnote(usfm, true); UsfmInlineMarkers usfm_inline_markers(usfm); // Write to OSIS file. unlink(filename.c_str()); WriteText wt(filename); // Write out xml headers. OsisRoot osisroot(&wt, project, project); // Get all the books and go through them. vector < unsigned int >scripture_books = project_get_books(project); progresswindow.set_iterate(0, 1, scripture_books.size()); for (unsigned int bk = 0; bk < scripture_books.size(); bk++) { progresswindow.iterate(); if (progresswindow.cancel) { return; } // Only proceed if book exists in the Osis encoding. if (books_id_to_osis(scripture_books[bk]).empty()) continue; // Signal "new book" to notes system. swordnote.new_book(); // Open book in osis code. OsisBook osisbook(&wt, books_id_to_english(scripture_books[bk])); // Go through the book and collect verses and other data. vector < unsigned int >chapters; vector < ustring > verses; vector < ustring > lines; { ustring swordverse = "0"; int swordchapter = 0; vector < ustring > bookcontents = project_retrieve_book(project, scripture_books[bk]); CleanUsfm clean_usfm(bookcontents); text_replacement(clean_usfm.lines); for (unsigned int i2 = 0; i2 < clean_usfm.lines.size(); i2++) { ustring line = clean_usfm.lines[i2]; ustring marker = usfm_extract_marker(line); if (usfm.is_chapter_number(marker)) { swordchapter = convert_to_int(number_in_string(line)); swordverse = "0"; } else if (usfm.is_verse_number(marker)) { // Extract verse number. size_t position = line.find(" "); position = CLAMP(position, 0, line.length()); swordverse = line.substr(0, position); // Erase verse number from the line. position++; line.erase(0, position); // Store data. chapters.push_back(swordchapter); verses.push_back(swordverse); lines.push_back(line); } else { // Store data. chapters.push_back(swordchapter); verses.push_back(swordverse); // Store line with marker in it. Needed for formatting. lines.push_back(clean_usfm.lines[i2]); } } } // Default to opening chapter 0 and verse 0. unsigned int current_chapter = 0; ustring current_verse = "0"; OsisChapter *osischapter = new OsisChapter(&wt, osisbook.book, current_chapter); OsisVerse *osisverse = new OsisVerse(&wt, osisbook.book, osischapter->chapter, current_verse); OsisParagraph *osisparagraph = NULL; // Go through all the lines of the remapped book. for (unsigned int i2 = 0; i2 < chapters.size(); i2++) { // Deal with a new chapter. if (chapters[i2] != current_chapter) { // Close verse, chapter. delete osisverse; delete osischapter; // Store new chapter. current_chapter = chapters[i2]; // Reopen chapter and verse. osischapter = new OsisChapter(&wt, osisbook.book, current_chapter); current_verse = "0"; osisverse = new OsisVerse(&wt, osisbook.book, osischapter->chapter, current_verse); // Signal new chapter to notes system. swordnote.new_chapter(); } // Handle new verse. bool newverse = false; if (current_verse != verses[i2]) { // Close osis verse. delete osisverse; // Store new verse. current_verse = verses[i2]; // Reopen osis verse. osisverse = new OsisVerse(&wt, osisbook.book, osischapter->chapter, current_verse); // Mark a new verse. newverse = true; } // Get the raw line. ustring line = lines[i2]; // Change certain characters to xml entities. xml_handle_entities(line, NULL); // Deal with notes. swordnote.transform(line); // Deal with inline text. usfm_handle_inline_text(line, &usfm_inline_markers, NULL, imSword, NULL); // Get the style belonging to the marker. ustring marker = usfm_extract_marker(line); if (usfm.is_identifier(marker)) { // Do nothing with an identifier. } else if (usfm.is_starting_paragraph(marker)) { // Find out what type of paragraph it is. ParagraphType paragraphtype = usfm.paragraph_get_subtype(marker); bool close_paragraph = false; bool new_paragraph = false; ustring title_type; switch (paragraphtype) { case ptMainTitle: close_paragraph = true; title_type = "main"; break; case ptSubTitle: close_paragraph = true; title_type = "sub"; break; case ptSectionHeading: close_paragraph = true; title_type = "part"; break; case ptNormalParagraph: close_paragraph = true; new_paragraph = true; break; } // Close if need be. if (close_paragraph) { if (osisparagraph) delete osisparagraph; osisparagraph = NULL; } // Open new one if needed. if (new_paragraph) { osisparagraph = new OsisParagraph(&wt); } // Handle titles also. if (!title_type.empty()) { wt.text(""); } // Output text. wt.text(line); // Close title if need be. if (!title_type.empty()) { wt.text(""); } } else { // Fallback for verse marker (removed before), unknown marker, or no marker, or incomplete marker. if (!newverse) wt.text(" "); wt.text(line); } } // Close paragraph, verse and chapter. if (osisparagraph) delete osisparagraph; delete osisverse; delete osischapter; } } catch(exception & ex) { cerr << "Export: " << ex.what() << endl; } } void export_to_osis_for_go_bible_creator (const ustring& project, const ustring& filename) // Exports a Bible to a stripped down OSIS file fit for the Go Bible Creator. { // Progress. ProgressWindow progresswindow ("Exporting", false); // XML writer. xmlBufferPtr xmlbuffer = xmlBufferCreate(); xmlTextWriterPtr xmlwriter = xmlNewTextWriterMemory(xmlbuffer, 0); // Setup and open document. xmlTextWriterStartDocument(xmlwriter, NULL, "UTF-8", NULL); xmlTextWriterSetIndent(xmlwriter, 1); xmlTextWriterStartElement(xmlwriter, BAD_CAST "osis"); xmlTextWriterStartElement(xmlwriter, BAD_CAST "osisText"); xmlTextWriterStartElement(xmlwriter, BAD_CAST "div"); // Go through the books. vector books = project_get_books (project); progresswindow.set_iterate (0, 1, books.size()); for (unsigned int bk = 0; bk < books.size(); bk++) { progresswindow.iterate (); // Get and write book. unsigned int book = books[bk]; ustring osis_book_id = books_id_to_osis (book); if (osis_book_id.empty()) { continue; } xmlTextWriterStartElement(xmlwriter, BAD_CAST "div"); xmlTextWriterWriteFormatAttribute(xmlwriter, BAD_CAST "type", "book"); xmlTextWriterWriteFormatAttribute(xmlwriter, BAD_CAST "osisID", "%s", osis_book_id.c_str()); // Go through the chapters. vector chapters = project_get_chapters (project, book); for (unsigned int ch = 0; ch < chapters.size(); ch++) { // Get and write chapter. unsigned int chapter = chapters[ch]; if (chapter == 0) { continue; } ustring chapter_osis_id = osis_book_id + "." + convert_to_string (chapter); xmlTextWriterStartElement(xmlwriter, BAD_CAST "chapter"); xmlTextWriterWriteFormatAttribute(xmlwriter, BAD_CAST "osisID", "%s", chapter_osis_id.c_str()); // Go through the verses. vector verses = project_get_verses (project, book, chapter); for (unsigned int vs = 0; vs < verses.size(); vs++) { // Get verse, and skip 0. ustring verse = verses[vs]; if (verse == "0") { continue; } // Write the verse number. ustring verse_osis_id = chapter_osis_id + "." + verse; xmlTextWriterStartElement(xmlwriter, BAD_CAST "verse"); xmlTextWriterWriteFormatAttribute(xmlwriter, BAD_CAST "sID", "%s", verse_osis_id.c_str()); xmlTextWriterWriteFormatAttribute(xmlwriter, BAD_CAST "osisID", "%s", verse_osis_id.c_str()); // Get verse text, remove verse number, and write it. ustring line = project_retrieve_verse (project, book, chapter, verse); line = usfm_get_verse_text_only (line); xmlTextWriterWriteFormatString(xmlwriter, "%s", line.c_str()); // Close verse. xmlTextWriterEndElement(xmlwriter); } // Close chapter. xmlTextWriterEndElement(xmlwriter); } // Close book. xmlTextWriterEndElement(xmlwriter); } // Close document and write it to disk. xmlTextWriterEndDocument(xmlwriter); xmlTextWriterFlush(xmlwriter); g_file_set_contents(filename.c_str(), (const gchar *)xmlbuffer->content, -1, NULL); // Free memory. if (xmlwriter) xmlFreeTextWriter(xmlwriter); if (xmlbuffer) xmlBufferFree(xmlbuffer); } void export_to_sword (const ustring& project, ustring directory) /* Exports a whole project to a SWORD module. At the time of writing this, the information on how to create a module for sword was found at http://www.crosswire.org/sword/develop/swordmodule/ Here's how we do the conversion - A .conf file is created and put in ~/.sword/mods.d/ - We use the "osis" format as this offers most options and seems best supported. - Create the module with program osis2mod. - The text will be stored in ~/.sword/modules/texts/bibledit// project: Which Bible to do. directory: Where to put the module. */ { // Check for converter. if (!gw_find_program_in_path("osis2mod")) { gtkw_dialog_error(NULL, "The SWORD compiler osis2mod was not found."); return; } // Directory to store module. if (directory.empty()) directory = g_get_home_dir(); // Configuration extern Settings *settings; ProjectConfiguration *projectconfig = settings->projectconfig(project); // Progress information. ProgressWindow *progresswindow = new ProgressWindow("Exporting project", true); // The temporal directories for the data. ustring base_directory = gw_build_filename(Directories->get_temp(), "sword"); unix_rmdir(base_directory); gw_mkdir_with_parents(base_directory); ustring absolute_conf_directory = gw_build_filename(base_directory, "mods.d"); gw_mkdir_with_parents(absolute_conf_directory); ustring relative_text_directory = gw_build_filename("modules", "texts", "bibledit", lowerCase(projectconfig->sword_name_get())); ustring absolute_text_directory = gw_build_filename(base_directory, relative_text_directory); gw_mkdir_with_parents(absolute_text_directory); // Create the configuration file. vector lines; ustring line; lines.push_back("[" + projectconfig->sword_name_get() + "]"); line = "DataPath=."; line.append(G_DIR_SEPARATOR_S + relative_text_directory + G_DIR_SEPARATOR_S); lines.push_back(line); lines.push_back("ModDrv=RawText"); lines.push_back("SourceType=OSIS"); lines.push_back("Encoding=UTF-8"); lines.push_back("BlockType=BOOK"); lines.push_back("GlobalOptionFilter=OSISStrongs"); lines.push_back("GlobalOptionFilter=OSISMorph"); lines.push_back("GlobalOptionFilter=OSISFootnotes"); lines.push_back("GlobalOptionFilter=OSISHeadings"); lines.push_back("GlobalOptionFilter=OSISRedLetterWords"); lines.push_back("MinimumVersion=1.5.6"); lines.push_back("Lang=" + projectconfig->sword_language_get()); lines.push_back("Version=" + projectconfig->sword_version_get()); lines.push_back("Description=" + projectconfig->sword_description_get()); lines.push_back("About=" + projectconfig->sword_about_get()); lines.push_back("LCSH=Bible--Translation"); lines.push_back("DistributionLicense=" + projectconfig->sword_license_get()); if (projectconfig->right_to_left_get()) lines.push_back("Direction=RtoL"); write_lines(gw_build_filename(absolute_conf_directory, lowerCase(projectconfig->sword_name_get()) + ".conf"), lines); lines.clear(); // Osis file name. ustring osisfile = gw_build_filename(Directories->get_temp(), "osis-from-usfm.xml"); unlink(osisfile.c_str()); // OSIS to USFM converter. { Usfm2Osis usfm2osis (osisfile); // Stylesheet. usfm2osis.set_stylesheet (stylesheet_get_actual ()); // Write header. usfm2osis.header (projectconfig->sword_name_get(), projectconfig->sword_description_get()); // Get all the books and go through them. vector books = project_get_books(project); progresswindow->set_iterate(0, 1, books.size()); for (unsigned int bk = 0; bk < books.size(); bk++) { // Progress information. progresswindow->iterate(); if (progresswindow->cancel) { delete progresswindow; return; } // Skip the book if it is not known in the Osis standard. if (books_id_to_osis(books[bk]).empty()) continue; // Open book in Osis converter. usfm2osis.open_book (books[bk]); // Let the Osis converter transform the book contents. vector contents = project_retrieve_book (project, books[bk]); usfm2osis.load_book (contents); // Close book in the Osis converter. usfm2osis.close_book(); } } // Hide progress. delete progresswindow; // Convert the inputfile using the sword api utility. { GwSpawn spawn("osis2mod"); spawn.arg(absolute_text_directory); spawn.arg(osisfile); spawn.progress("Compiling", false); spawn.describe (); spawn.run(); } // Install it. unix_cp_r(gw_build_filename(base_directory, "mods.d"), settings->genconfig.export_to_sword_install_path_get()); unix_cp_r(gw_build_filename(base_directory, "modules"), settings->genconfig.export_to_sword_install_path_get()); // Compress and save the module. ustring command; ustring zipfile = temporary_file(projectconfig->sword_name_get()) + ".zip"; unlink(zipfile.c_str()); command = "cd" + shell_quote_space(base_directory) + " && "; command.append("zip -r" + shell_quote_space(zipfile) + "*"); if (system(command.c_str())) ; // This one does not work with GwSpawn because of the wildcards used. unix_mv(zipfile, directory); } void export_to_opendocument(const ustring& project, const ustring& filename) { // Configurations. extern Settings *settings; ProjectConfiguration *projectconfig = settings->projectconfig(project); // Book selection. vector < unsigned int >books = project_get_books(project); set < unsigned int >selectedbooks(books.begin(), books.end()); { SelectBooksDialog dialog(false); dialog.language(projectconfig->language_get()); dialog.selection_set(selectedbooks); if (dialog.run() != GTK_RESPONSE_OK) return; selectedbooks = dialog.selectionset; } // Filename to save to. if (filename.empty()) return; // If more books are selected, whether to save to multiple files. bool singlefile = true; if (selectedbooks.size() > 1) { vector < ustring > labels; labels.push_back("Single file"); labels.push_back("Multiple files"); RadiobuttonDialog dialog("Save method", "Multiple books have been selected.\nShould these be saved to a single file or to multiple files?", labels, 0, false); if (dialog.run() != GTK_RESPONSE_OK) return; singlefile = dialog.selection == 0; } // Keep note of unformatted markers. vector unformatted_markers; // Export. if (singlefile) { OpenDocument odt(project, filename, &selectedbooks); odt.note_unformatted_markers (unformatted_markers); } else { vector < unsigned int >books(selectedbooks.begin(), selectedbooks.end()); for (unsigned int i = 0; i < books.size(); i++) { set < unsigned int >selectedbook; selectedbook.insert(books[i]); ustring combinedfilename = filename + "-" + books_id_to_english(books[i]); OpenDocument odt(project, combinedfilename, &selectedbook); odt.note_unformatted_markers (unformatted_markers); } } if (!unformatted_markers.empty()) { // Give warning in case of unformatted markers. ustring message = "The export has completed,\n" "but the following markers could not be formatted properly:"; for (unsigned int i = 0; i < unformatted_markers.size(); i++) { message.append ("\n" + unformatted_markers[i]); } gtkw_dialog_warning (NULL, message); } } void export_to_usfm_changes (const ustring& project, int time_from, ustring comment) { // Working directory and zipped filename. ustring workingdirectory = gw_build_filename(Directories->get_temp(), "bible_backup"); gw_mkdir_with_parents(workingdirectory); int currentseconds = date_time_seconds_get_current(); int currentdays = date_time_julian_day_get_current(); guint currentyear, currentmonth, currentday; int currenthour, currentminute, currentsecond; date_time_normal_get_year_month_day(currentdays, currentyear, currentmonth, currentday); date_time_normal_get_hour_minute_second(currentseconds, currenthour, currentminute, currentsecond); ustring currentsuffix = "-" + convert_to_string(currentyear) + "-" + convert_to_string(currentmonth) + "-" + convert_to_string(currentday) + "-" + convert_to_string(currenthour) + "-" + convert_to_string(currentminute) + "-" + convert_to_string(currentsecond); ustring filename; { guint fromyear, frommonth, fromday; int fromhour, fromminute, fromsecond; date_time_normal_get_year_month_day(date_time_seconds_to_julian(time_from), fromyear, frommonth, fromday); date_time_normal_get_hour_minute_second(time_from, fromhour, fromminute, fromsecond); ustring fromsuffix = "-from-" + convert_to_string(fromyear) + "-" + convert_to_string(frommonth) + "-" + convert_to_string(fromday) + "-" + convert_to_string(fromhour) + "-" + convert_to_string(fromminute) + "-" + convert_to_string(fromsecond); filename = "incremental-backup" + fromsuffix + "-to" + currentsuffix; } filename.append("-of-project-"); filename.append(project); ustring username = g_get_real_name (); replace_text (username, " ", "-"); filename.append ("-backed-up-by-"); filename.append (username); if (!comment.empty()) { filename.append("-comment-"); replace_text (comment, " ", "-"); filename.append (comment); } filename.append(".zip"); replace_text(filename, " ", "_"); filename = gw_build_filename(workingdirectory, filename); { // Handle incremental backups. // Get the books/chapters changed since a given time. // Get them from git, because git also records changes made by others. // Locally produced tracking mechanisms would not so easily // provide that information. vector < unsigned int >books; vector < unsigned int >chapters; snapshots_get_chapters_changed_since(project, time_from, books, chapters); if (books.empty()) { gtkw_dialog_info(NULL, "There was nothing to backup"); return; } quick_sort(books, chapters, 0, books.size()); // Storage for the data of the chapters in each book. map < unsigned int, vector < ustring > >lines; // Always include chapter 0 as that has the id line. set < unsigned int >books_chapter_zero_done; for (unsigned int i = 0; i < books.size(); i++) { if (books_chapter_zero_done.find(books[i]) == books_chapter_zero_done.end()) { vector < ustring > data = project_retrieve_chapter(project, books[i], 0); for (unsigned int i2 = 0; i2 < data.size(); i2++) { lines[books[i]].push_back(data[i2]); } books_chapter_zero_done.insert(books[i]); } } // Go through the books/chapters with changes, and add the text to the map. // Skip chapter 0. Has been done already. for (unsigned int i = 0; i < books.size(); i++) { if (chapters[i] != 0) { vector < ustring > data = project_retrieve_chapter(project, books[i], chapters[i]); for (unsigned int i2 = 0; i2 < data.size(); i2++) { lines[books[i]].push_back(data[i2]); } } } // Go through all books, see which ones have data, save to file. vector < unsigned int >all_books = books_type_to_ids(btUnknown); for (unsigned int i = 0; i < all_books.size(); i++) { if (!lines[books[i]].empty()) { ustring usfmfilename = gw_build_filename(workingdirectory, books_id_to_english(books[i]) + ".usfm"); write_lines(usfmfilename, lines[books[i]]); } } // Zip them. #ifdef WIN32 ustring command = "cd" + shell_quote_space(workingdirectory) + " && zip -r " + gw_path_get_basename(filename) + " *.usfm && del *.usfm"; #else ustring command = "cd" + shell_quote_space(workingdirectory) + "; zip -r " + gw_path_get_basename(filename) + " *.usfm; rm *.usfm"; #endif if (system(command.c_str())) ; // This one does not work with GwSpawn because of the wildcards used. } // Open web page with information: backup_is_ready.html. ustring filesize = convert_to_string(file_get_size(filename)); ReadText rt(gw_build_filename(Directories->get_package_data(), "backup_is_ready.html"), true, false); for (unsigned int i = 0; i < rt.lines.size(); i++) { replace_text(rt.lines[i], "100", filesize); replace_text(rt.lines[i], "location", filename); replace_text(rt.lines[i], "tempdir", workingdirectory); } ustring htmlfile = gw_build_filename(workingdirectory, "backup.html"); write_lines(htmlfile, rt.lines); unix_cp(gw_build_filename(Directories->get_package_data(), "bibledit.css"), gw_build_filename(workingdirectory, "bibledit.css")); gtkw_show_uri (htmlfile, false); } void export_to_go_bible (const ustring& project, const ustring& foldername) // Export the project to a full GoBible. { // Working area directory. ustring workingdirectory = gw_build_filename (Directories->get_temp(), "gobible"); unix_rmdir (workingdirectory); gw_mkdir_with_parents (workingdirectory); // Check whether Java is installed. If not, bail out. if (!java_runtime_present (true)) { return; } // For some reason spaces in the project name confuse the GoBibleCreator. ustring no_space_project (project); replace_text (no_space_project, " ", "_"); // Create a temporary OSIS file fit for the Go Bible Creator. ustring xmlfile = gw_build_filename (workingdirectory, no_space_project + ".xml"); export_to_osis_for_go_bible_creator (project, xmlfile); // Create a Collections.txt file. ustring collections_txt_file = gw_build_filename (workingdirectory, "Collections.txt"); { GwSpawn spawn ("gobiblecreator"); spawn.workingdirectory (workingdirectory); spawn.arg (xmlfile); spawn.describe(); spawn.run (); ReadText rt (collections_txt_file, true, false); vector lines; lines.push_back ("Source-Text: " + no_space_project + ".xml"); for (unsigned int i = 0; i < rt.lines.size(); i++) { lines.push_back (rt.lines[i]); } write_lines (collections_txt_file, lines); } // Create the Go Bible. { GwSpawn spawn ("gobiblecreator"); spawn.workingdirectory (workingdirectory); spawn.arg (collections_txt_file); spawn.describe (); spawn.run (); } // Check whether the Go Bible is there. ustring jarfile = gw_build_filename (workingdirectory, no_space_project + ".jar"); ustring jadfile = gw_build_filename (workingdirectory, no_space_project + ".jad"); bool jarpresent = g_file_test (jarfile.c_str(), G_FILE_TEST_IS_REGULAR); bool jadpresent = g_file_test (jarfile.c_str(), G_FILE_TEST_IS_REGULAR); if (jarpresent && jadpresent) { unix_mv (jarfile, foldername); unix_mv (jadfile, foldername); } else { gtkw_dialog_error (NULL, "There was an error producing the Go Bible.\nPlease check the system log for more information."); } } bibledit-gtk-4.9/src/export_utils.h000664 000766 000024 00000004045 12221507137 017561 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_EXPORT_UTILS_H #define INCLUDED_EXPORT_UTILS_H #include "libraries.h" #include enum ExportType {etBible, etReferences, etStylesheet, etNotes, etKeyterms}; enum ExportBibleType {ebtUSFM, ebtBibleWorks, ebtOSIS, ebtSWORD, ebtOpenDocument, ebtGoBible}; enum ExportOsisType {eotRecommended, eotGoBibleCreator, eotOld}; enum ExportUsfmType {eutEverything, eutChangesOnly}; enum ExportUsfmChangesType {euctSinceLast, euctSinceDateTime}; void export_to_usfm (const ustring& project, ustring location, bool zip); void export_to_usfm_changes (const ustring& project, int time_from, ustring comment); void export_to_bibleworks (const ustring& project, const ustring& filename); void export_translation_notes (const ustring& filename, const vector & ids_to_display, bool export_all); void export_to_osis_recommended (const ustring& project, const ustring& filename); void export_to_osis_old (const ustring& project, const ustring& filename); void export_to_osis_for_go_bible_creator (const ustring& project, const ustring& filename); void export_to_sword (const ustring& project, ustring directory); void export_to_opendocument (const ustring& project, const ustring& filename); void export_to_go_bible (const ustring& project, const ustring& foldername); #endif bibledit-gtk-4.9/src/fixmarkers.cpp000664 000766 000024 00000006743 12221507131 017527 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "fixmarkers.h" #include "settings.h" #include "projectutils.h" #include "gtkwrappers.h" #include "progresswindow.h" #include "utilities.h" #include "usfmtools.h" #include "tiny_utilities.h" void fix_markers_insert_space_after_opener() /* Using Check / Marker / Validate in CEV, John 1:5 has: \q1\x - \xo 1.6: \xt Mt 3.1; Mk 1.4; Lk 3.1,2.\x* and BE complains about the unknown USFM \q1\x. Same with John 4:45: \p\x - \xo 4.45: \xt Jn 2.23.\x* And John 15:20: \pi\x - \xo 15.20: \xt Mt 10.24; Lk 6.40; Jn 13.16.\x* The text given violates the USFM 2 standard, and therefore bibledit correctly complains about it. This tool inserts a space after an opening marker that is not followed by a space. But after a closing marker it does not insert spaces, because the * is enough. */ { // Settings. extern Settings *settings; // Progress. ProgressWindow progresswindow("Inserting missing spaces after opening markers", false); // Statistics. unsigned int insertcount = 0; // Go through the books in the project. ustring project = settings->genconfig.project_get(); vector < unsigned int >books = project_get_books(project); progresswindow.set_iterate(0, 1, books.size()); for (unsigned int bk = 0; bk < books.size(); bk++) { // Progress. progresswindow.iterate(); // Go through the chapters in this book. vector < unsigned int >chapters = project_get_chapters(project, books[bk]); for (unsigned int ch = 0; ch < chapters.size(); ch++) { // Go through the verses in this chapter. vector < ustring > verses = project_get_verses(project, books[bk], chapters[ch]); for (unsigned int vs = 0; vs < verses.size(); vs++) { // Retrieve each verse and process it. ustring text = project_retrieve_verse(project, books[bk], chapters[ch], verses[vs]); unsigned int previous_insertcount = insertcount; vector < ustring > markers = usfm_get_all_markers(text); for (unsigned int i = 0; i < markers.size(); i++) { if (markers[i].find("\\") != string::npos) { size_t position = text.find(markers[i]); if (position != string::npos) { ustring marker = text.substr(position, markers[i].length()); replace_text(marker, "\\", " \\"); insertcount++; text.replace(position, markers[i].length(), marker); } } } // If there were changes, store the verse. if (insertcount != previous_insertcount) { project_store_verse(project, books[bk], chapters[ch], verses[vs], text); } } } } // Give statistics. ustring message("Missing spaces inserted: " + convert_to_string(insertcount)); gtkw_dialog_info(NULL, message); } bibledit-gtk-4.9/src/fixmarkers.h000664 000766 000024 00000001637 12221507145 017176 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_FIX_MARKERS_H #define INCLUDED_FIX_MARKERS_H #include "libraries.h" void fix_markers_insert_space_after_opener (); #endif bibledit-gtk-4.9/src/floatingwindow.cpp000644 000766 000024 00000064732 12453001367 020416 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "floatingwindow.h" #include "settings.h" #include "gwrappers.h" #include "directories.h" #include "dialogradiobutton.h" FloatingWindow::FloatingWindow(GtkWidget * layout_in, WindowID window_id_in, ustring title_in, bool startup) // Base class for each floating window. { // If there's no title the configuration file would get inconsistent. // Put something there. if (title_in.empty()) { title_in.append("Untitled"); } // Initialize variables. layout = layout_in; title = title_in; window_id = window_id_in; dragging_window = false; resizing_window = false; my_shutdown = false; clear_previous_root_coordinates (); last_focused_widget = NULL; focused = false; resize_event_id = 0; // Signalling buttons. focus_in_signal_button = gtk_button_new(); delete_signal_button = gtk_button_new(); gtkbuilder = gtk_builder_new (); gtk_builder_add_from_file (gtkbuilder, gw_build_filename (Directories->get_package_data(), "gtkbuilder.floatingwindow.xml").c_str(), NULL); vbox_window = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "vbox_window")); GtkWidget *eventbox_title; eventbox_title = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "eventbox_title")); label_title = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "label_title")); title_set (focused); g_signal_connect ((gpointer) eventbox_title, "button_press_event", G_CALLBACK (on_widget_button_press_event), gpointer (this)); g_signal_connect ((gpointer) eventbox_title, "button_press_event", G_CALLBACK (on_title_bar_button_press_event), gpointer (this)); g_signal_connect ((gpointer) eventbox_title, "button_release_event", G_CALLBACK (on_title_bar_button_release_event), gpointer (this)); g_signal_connect ((gpointer) eventbox_title, "motion_notify_event", G_CALLBACK (on_title_bar_motion_notify_event), gpointer (this)); g_signal_connect ((gpointer) eventbox_title, "enter_notify_event", G_CALLBACK (on_titlebar_enter_notify_event), gpointer (this)); g_signal_connect ((gpointer) eventbox_title, "leave_notify_event", G_CALLBACK (on_titlebar_leave_notify_event), gpointer (this)); GtkWidget *eventbox_close; eventbox_close = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "eventbox_close")); label_close = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "label_close")); g_signal_connect ((gpointer) eventbox_close, "button_press_event", G_CALLBACK (on_widget_button_press_event), gpointer (this)); g_signal_connect ((gpointer) eventbox_close, "enter_notify_event", G_CALLBACK (on_label_close_enter_notify_event), gpointer (this)); g_signal_connect ((gpointer) eventbox_close, "leave_notify_event", G_CALLBACK (on_label_close_leave_notify_event), gpointer (this)); g_signal_connect ((gpointer) eventbox_close, "button_press_event", G_CALLBACK (on_label_close_button_press_event), gpointer (this)); GtkWidget *eventbox_client; eventbox_client = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "eventbox_client")); vbox_client = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "vbox_client")); g_signal_connect ((gpointer) eventbox_client, "button_press_event", G_CALLBACK (on_widget_button_press_event), gpointer (this)); GtkWidget *eventbox_status1; eventbox_status1 = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "eventbox_status1")); label_status1 = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "label_status1")); g_signal_connect ((gpointer) eventbox_status1, "button_press_event", G_CALLBACK (on_widget_button_press_event), gpointer (this)); GtkWidget *eventbox_status2; eventbox_status2 = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "eventbox_status2")); label_status2 = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "label_status2")); g_signal_connect ((gpointer) eventbox_status2, "button_press_event", G_CALLBACK (on_widget_button_press_event), gpointer (this)); widget_resizer = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "widget_resizer")); g_signal_connect ((gpointer) widget_resizer, "button_press_event", G_CALLBACK (on_widget_button_press_event), gpointer (this)); g_signal_connect ((gpointer) widget_resizer, "button_press_event", G_CALLBACK (on_status_bar_button_press_event), gpointer (this)); g_signal_connect ((gpointer) widget_resizer, "button_release_event", G_CALLBACK (on_status_bar_button_release_event), gpointer (this)); g_signal_connect ((gpointer) widget_resizer, "motion_notify_event", G_CALLBACK (on_status_bar_motion_notify_event), gpointer (this)); g_signal_connect ((gpointer) widget_resizer, "enter_notify_event", G_CALLBACK (on_statusbar_enter_notify_event), gpointer (this)); g_signal_connect ((gpointer) widget_resizer, "leave_notify_event", G_CALLBACK (on_statusbar_leave_notify_event), gpointer (this)); // Do the display handling. display(startup); } FloatingWindow::~FloatingWindow() { gw_destroy_source (resize_event_id); on_titlebar_leave_notify (NULL); gtk_widget_destroy(vbox_window); undisplay(); gtk_widget_destroy(focus_in_signal_button); gtk_widget_destroy(delete_signal_button); } gboolean FloatingWindow::on_title_bar_button_press_event (GtkWidget *widget, GdkEventButton *event, gpointer user_data) { return ((FloatingWindow *) user_data)->on_title_bar_button_press(event); } gboolean FloatingWindow::on_title_bar_button_press (GdkEventButton *event) { clear_previous_root_coordinates (); dragging_window = true; resizing_window = false; return false; } gboolean FloatingWindow::on_title_bar_button_release_event (GtkWidget *widget, GdkEventButton *event, gpointer user_data) { return ((FloatingWindow *) user_data)->on_title_bar_button_release(event); } gboolean FloatingWindow::on_title_bar_button_release (GdkEventButton *event) { dragging_window = false; resizing_window = false; clear_previous_root_coordinates (); return false; } gboolean FloatingWindow::on_title_bar_motion_notify_event (GtkWidget *widget, GdkEventMotion *event, gpointer user_data) { return ((FloatingWindow *) user_data)->on_title_bar_motion_notify(event); } gboolean FloatingWindow::on_title_bar_motion_notify (GdkEventMotion *event) { if (dragging_window) { guint layout_width, layout_height; gtk_layout_get_size (GTK_LAYOUT (layout), &layout_width, &layout_height); gint event_x = event->x_root; gint event_y = event->y_root; if (previous_root_x >= 0) { bool move_box = false; if (event_x != previous_root_x) { guint new_x = my_gdk_rectangle.x + event_x - previous_root_x; // The window does not move beyond the left or right side if (new_x >= 0) { if ((new_x + my_gdk_rectangle.width) <= layout_width) { my_gdk_rectangle.x = new_x; move_box = true; } } } if (event_y != previous_root_y) { guint new_y = my_gdk_rectangle.y + event_y - previous_root_y; // The window does not move beyond the top or bottom. if (new_y >= 0) { if ((new_y + my_gdk_rectangle.height) <= layout_height) { my_gdk_rectangle.y = new_y; move_box = true; } } } if (move_box) { rectangle_set (my_gdk_rectangle); } } previous_root_x = event_x; previous_root_y = event_y; } return false; } gboolean FloatingWindow::on_status_bar_button_press_event (GtkWidget *widget, GdkEventButton *event, gpointer user_data) { return ((FloatingWindow *) user_data)->on_status_bar_button_press(event); } gboolean FloatingWindow::on_status_bar_button_press (GdkEventButton *event) { clear_previous_root_coordinates (); dragging_window = false; resizing_window = true; return false; } gboolean FloatingWindow::on_status_bar_button_release_event (GtkWidget *widget, GdkEventButton *event, gpointer user_data) { return ((FloatingWindow *) user_data)->on_status_bar_button_release(event); } gboolean FloatingWindow::on_status_bar_button_release (GdkEventButton *event) { dragging_window = false; resizing_window = false; clear_previous_root_coordinates (); return false; } gboolean FloatingWindow::on_status_bar_motion_notify_event (GtkWidget *widget, GdkEventMotion *event, gpointer user_data) { return ((FloatingWindow *) user_data)->on_status_bar_motion_notify(event); } gboolean FloatingWindow::on_status_bar_motion_notify (GdkEventMotion *event) { if (resizing_window) { gw_destroy_source (resize_event_id); resize_event_id = g_timeout_add_full(G_PRIORITY_DEFAULT, 200, GSourceFunc(on_resize_timeout), gpointer(this), NULL); gtk_widget_hide (vbox_client); guint layout_width, layout_height; gtk_layout_get_size (GTK_LAYOUT (layout), &layout_width, &layout_height); gint event_x = event->x_root; gint event_y = event->y_root; if (previous_root_x >= 0) { bool resize_box = false; if (event_x != previous_root_x) { guint new_width = my_gdk_rectangle.width + event_x - previous_root_x; // Window should not become too narrow, or too wide for the screen. if (new_width >= 100) { if ((my_gdk_rectangle.x + new_width) <= layout_width) { my_gdk_rectangle.width = new_width; resize_box = true; } } } if (event_y != previous_root_y) { guint new_height = my_gdk_rectangle.height + event_y - previous_root_y; // Window should not become too short, or too tall for the screen. if (new_height >= 100) { if ((my_gdk_rectangle.y + new_height) <= layout_height) { my_gdk_rectangle.height = new_height; resize_box = true; } } } if (resize_box) { gtk_widget_set_size_request (vbox_window, my_gdk_rectangle.width, my_gdk_rectangle.height); } } previous_root_x = event_x; previous_root_y = event_y; } return false; } gboolean FloatingWindow::on_titlebar_enter_notify_event (GtkWidget *widget, GdkEventCrossing *event, gpointer user_data) { return ((FloatingWindow *) user_data)->on_titlebar_enter_notify(event); } gboolean FloatingWindow::on_titlebar_enter_notify (GdkEventCrossing *event) { // Set the cursor to a shape that shows that the title bar can be moved around. GtkWidget *toplevel_widget = gtk_widget_get_toplevel(label_title); GdkWindow *gdk_window = gtk_widget_get_window (toplevel_widget); GdkCursor *cursor = gdk_cursor_new(GDK_FLEUR); gdk_window_set_cursor(gdk_window, cursor); gdk_cursor_unref (cursor); return false; } gboolean FloatingWindow::on_titlebar_leave_notify_event (GtkWidget *widget, GdkEventCrossing *event, gpointer user_data) { return ((FloatingWindow *) user_data)->on_titlebar_leave_notify(event); } gboolean FloatingWindow::on_titlebar_leave_notify (GdkEventCrossing *event) { // Restore the original cursor. GtkWidget * toplevel_widget = gtk_widget_get_toplevel(label_title); GdkWindow *gdk_window = gtk_widget_get_window (toplevel_widget); gdk_window_set_cursor(gdk_window, NULL); return false; } gboolean FloatingWindow::on_statusbar_enter_notify_event (GtkWidget *widget, GdkEventCrossing *event, gpointer user_data) { return ((FloatingWindow *) user_data)->on_statusbar_enter_notify(event); } gboolean FloatingWindow::on_statusbar_enter_notify (GdkEventCrossing *event) { // Set the cursor to a shape that shows that the status bar can be used to resize the window. GtkWidget *toplevel_widget = gtk_widget_get_toplevel(widget_resizer); GdkWindow *gdk_window = gtk_widget_get_window (toplevel_widget); GdkCursor *cursor = gdk_cursor_new(GDK_BOTTOM_RIGHT_CORNER); gdk_window_set_cursor(gdk_window, cursor); gdk_cursor_unref (cursor); return false; } gboolean FloatingWindow::on_statusbar_leave_notify_event (GtkWidget *widget, GdkEventCrossing *event, gpointer user_data) { return ((FloatingWindow *) user_data)->on_statusbar_leave_notify(event); } gboolean FloatingWindow::on_statusbar_leave_notify (GdkEventCrossing *event) { // Restore the original cursor. GtkWidget * toplevel_widget = gtk_widget_get_toplevel(widget_resizer); GdkWindow *gdk_window = gtk_widget_get_window (toplevel_widget); gdk_window_set_cursor(gdk_window, NULL); return false; } void FloatingWindow::clear_previous_root_coordinates () { previous_root_x = -1; previous_root_y = -1; } gboolean FloatingWindow::on_label_close_enter_notify_event (GtkWidget *widget, GdkEventCrossing *event, gpointer user_data) { return ((FloatingWindow *) user_data)->on_label_close_enter_notify(event); } gboolean FloatingWindow::on_label_close_enter_notify (GdkEventCrossing *event) { // Set the cursor to a shape that shows that the action label can be clicked. GtkWidget *toplevel_widget = gtk_widget_get_toplevel(label_close); GdkWindow *gdk_window = gtk_widget_get_window (toplevel_widget); GdkCursor *cursor = gdk_cursor_new(GDK_HAND2); gdk_window_set_cursor(gdk_window, cursor); gdk_cursor_unref (cursor); return false; } gboolean FloatingWindow::on_label_close_leave_notify_event (GtkWidget *widget, GdkEventCrossing *event, gpointer user_data) { return ((FloatingWindow *) user_data)->on_label_close_leave_notify(event); } gboolean FloatingWindow::on_label_close_leave_notify (GdkEventCrossing *event) { // Restore the original cursor. GtkWidget * toplevel_widget = gtk_widget_get_toplevel(label_close); GdkWindow *gdk_window = gtk_widget_get_window (toplevel_widget); gdk_window_set_cursor(gdk_window, NULL); return false; } gboolean FloatingWindow::on_label_close_button_press_event (GtkWidget *widget, GdkEventButton *event, gpointer user_data) { return ((FloatingWindow *) user_data)->on_label_close_button_press(event); } gboolean FloatingWindow::on_label_close_button_press (GdkEventButton *event) { gtk_button_clicked(GTK_BUTTON(delete_signal_button)); return false; } void FloatingWindow::display(bool startup) // Does the bookkeeping necessary for displaying the floating box. // startup: whether the box is started at program startup. { // Settings. extern Settings *settings; // The parameters of all the windows. WindowData window_parameters(false); // Clear the new window's position. my_gdk_rectangle.x = 0; my_gdk_rectangle.y = 0; my_gdk_rectangle.width = 0; my_gdk_rectangle.height = 0; // At program startup extract the position and size of the window from the general configuration. // It does not matter whether the space for the window is already taken up by another window, // because the user wishes to use the coordinates that he has set for this window. for (unsigned int i = 0; i < window_parameters.widths.size(); i++) { if ((window_parameters.ids[i] == window_id) && (window_parameters.titles[i] == title) && startup) { my_gdk_rectangle.x = window_parameters.x_positions[i]; my_gdk_rectangle.y = window_parameters.y_positions[i]; my_gdk_rectangle.width = window_parameters.widths[i]; my_gdk_rectangle.height = window_parameters.heights[i]; } } // Reject zero width and zero height values on startup. if ((my_gdk_rectangle.width == 0) || (my_gdk_rectangle.height == 0)) startup = false; // When a new window needs to be allocated, there are a few steps to be taken. if (!startup) { // Step 1: The area rectangle where the window should fit in is defined. GdkRectangle area_rectangle; area_rectangle.x = 0; area_rectangle.y = 0; area_rectangle.width = 0; area_rectangle.height = 0; { guint width, height; gtk_layout_get_size (GTK_LAYOUT (layout), &width, &height); area_rectangle.width = width; area_rectangle.height = height; } // Step 2: An available region is made of that whole area. GdkRegion *available_region = gdk_region_rectangle(&area_rectangle); // Step 3: The regions of each of the open windows is substracted from the available region. for (unsigned int i = 0; i < settings->session.open_floating_windows.size(); i++) { FloatingWindow * floating_window = (FloatingWindow *) settings->session.open_floating_windows[i]; GdkRectangle rectangle = floating_window->rectangle_get(); GdkRegion *region = gdk_region_rectangle(&rectangle); gdk_region_subtract(available_region, region); gdk_region_destroy(region); } // Step 4: The rectangles that the area region consists of are requested, // and the biggest suitable rectangle is chosen for the window. // A rectangle is considered suitable if it has at least 10% of the width, and 10% of the height of the area rectangle. GdkRectangle *gdk_rectangles = NULL; gint rectangle_count = 0; gdk_region_get_rectangles(available_region, &gdk_rectangles, &rectangle_count); for (int i = 0; i < rectangle_count; ++i) { GdkRectangle & rectangle = gdk_rectangles[i]; if (rectangle.width >= (area_rectangle.width / 10)) { if (rectangle.height >= (area_rectangle.height / 10)) { if ((rectangle.width * rectangle.height) > (my_gdk_rectangle.width * my_gdk_rectangle.height)) { my_gdk_rectangle = rectangle; } } } } g_free(gdk_rectangles); // Step 5: The available region is destroyed. gdk_region_destroy(available_region); // Step 6: If no area big enough is found, then the window that takes most space in the area is chosen, // the longest side is halved, and the new window is put in that freed area. if ((my_gdk_rectangle.width == 0) || (my_gdk_rectangle.height == 0)) { FloatingWindow * resize_window_pointer = NULL; int largest_size = 0; for (unsigned int i = 0; i < settings->session.open_floating_windows.size(); i++) { FloatingWindow *floating_window = (FloatingWindow *) settings->session.open_floating_windows[i]; GdkRectangle rectangle = floating_window->rectangle_get (); int size = rectangle.width * rectangle.height; if (size > largest_size) { resize_window_pointer = floating_window; largest_size = size; } } if (resize_window_pointer) { GdkRectangle resize_window_rectangle = resize_window_pointer->rectangle_get(); my_gdk_rectangle = resize_window_pointer->rectangle_get(); if (resize_window_rectangle.width > resize_window_rectangle.height) { resize_window_rectangle.width /= 2; my_gdk_rectangle.width /= 2; my_gdk_rectangle.x += resize_window_rectangle.width; } else { resize_window_rectangle.height /= 2; my_gdk_rectangle.height /= 2; my_gdk_rectangle.y += resize_window_rectangle.height; } resize_window_pointer->rectangle_set (resize_window_rectangle); } } } // Add the window to the layout and set its position and size. gtk_layout_put (GTK_LAYOUT (layout), vbox_window, my_gdk_rectangle.x, my_gdk_rectangle.y); rectangle_set (my_gdk_rectangle); // Store a pointer to this window in the Session. settings->session.open_floating_windows.push_back(gpointer (this)); } void FloatingWindow::undisplay() // Does the bookkeeping needed for deleting a box. // When a box closes, the sizes of other boxes are not affected. // Thus if the same window is opened again, it will go in the same free space as it was in before. { // Get the parameters of all the windows. WindowData window_params(true); // Ensure that the window has its entry in the settings. bool window_found = false; for (unsigned int i = 0; i < window_params.widths.size(); i++) { if ((window_params.ids[i] == window_id) && (window_params.titles[i] == title)) { window_found = true; } } if (!window_found) { window_params.x_positions.push_back(0); window_params.y_positions.push_back(0); window_params.widths.push_back(0); window_params.heights.push_back(0); window_params.ids.push_back(window_id); window_params.titles.push_back(title); window_params.shows.push_back(false); } // Set data for the window. for (unsigned int i = 0; i < window_params.ids.size(); i++) { if ((window_id == window_params.ids[i]) && (title == window_params.titles[i])) { // Set the position and size of the window. window_params.x_positions[i] = my_gdk_rectangle.x; window_params.y_positions[i] = my_gdk_rectangle.y; window_params.widths[i] = my_gdk_rectangle.width; window_params.heights[i] = my_gdk_rectangle.height; // The "showing" flag is set on program shutdown, else it is cleared. window_params.shows[i] = my_shutdown; } } // Remove the pointer to this window from the Session. gpointer current_floating_window = gpointer (this); extern Settings *settings; vector old_windows = settings->session.open_floating_windows; vector new_windows; for (unsigned int i = 0; i < old_windows.size(); i++) { if (current_floating_window != old_windows[i]) { new_windows.push_back(old_windows[i]); } } settings->session.open_floating_windows = new_windows; } void FloatingWindow::shutdown() // Program shutdown. { my_shutdown = true; } void FloatingWindow::focus_set(bool active) // Sets the focus of the window. { // Bail out if there's no focus change. if (active == focused) { return; } // Store whether focused. focused = active; // If we focus, then grab the widget that was focused last. if (active) { if (last_focused_widget) { gtk_widget_grab_focus (last_focused_widget); } } // Update title bar. title_set (focused); // Set the window on top of any others that share same intersection. // It has been observed that widgets that are last added to the layout are shown on top of any others. // Therefore remove the window from the layout, and add it again so that it becomes the last one added. if (active) { // The following works to set the window above others, but the by-effects are undesirable, // therefore it is better at this stage to not do that. // One of the by-effects is that the selection in the editor gets lost. // Another one is that the comboboxes get greyed out. // g_object_ref (G_OBJECT (vbox_window)); // gtk_container_remove (GTK_CONTAINER (layout), vbox_window); // gtk_layout_put (GTK_LAYOUT (layout), vbox_window, my_gdk_rectangle.x, my_gdk_rectangle.y); // g_object_unref (G_OBJECT (vbox_window)); } // If we got focus, then alert the other windows. if (active) { gtk_button_clicked(GTK_BUTTON(focus_in_signal_button)); } } GdkRectangle FloatingWindow::rectangle_get () { return my_gdk_rectangle; } void FloatingWindow::rectangle_set (const GdkRectangle& rectangle) { my_gdk_rectangle = rectangle; gtk_layout_move (GTK_LAYOUT (layout), vbox_window, my_gdk_rectangle.x, my_gdk_rectangle.y); gtk_widget_set_size_request (vbox_window, my_gdk_rectangle.width, my_gdk_rectangle.height); } void FloatingWindow::focus_if_widget_mine (GtkWidget *widget) // It looks through all widgets it has, to find out whether "widget" belongs to the object. { focused_widget_to_look_for = widget; if (GTK_IS_CONTAINER(vbox_window)) { gtk_container_foreach(GTK_CONTAINER(vbox_window), on_container_tree_callback, gpointer(this)); } } void FloatingWindow::on_container_tree_callback (GtkWidget *widget, gpointer user_data) { ((FloatingWindow *) user_data)->container_tree_callback(widget, user_data); } void FloatingWindow::container_tree_callback (GtkWidget *widget, gpointer user_data) // Recursive callback that fires the focus signal if the widget belongs to the object. { if (widget == focused_widget_to_look_for) { last_focused_widget = widget; focus_set (); } if (GTK_IS_CONTAINER(widget)) { gtk_container_foreach(GTK_CONTAINER(widget), on_container_tree_callback, user_data); } } gboolean FloatingWindow::on_widget_button_press_event (GtkWidget *widget, GdkEventButton *event, gpointer user_data) { ((FloatingWindow *) user_data)->on_widget_button_press (widget, event); return FALSE; } void FloatingWindow::on_widget_button_press (GtkWidget *widget, GdkEventButton *event) { focus_set (); } void FloatingWindow::title_set (bool focused) // Set the title. { ustring spaces; for (unsigned int i = 0; i < 500; i++) spaces.append (" "); char *data; data = g_strdup_printf(" %s %s", focused ? "white" : "black", focused ? "blue" : "grey", focused ? "bold" : "normal", title.c_str(), spaces.c_str()); gtk_label_set_markup (GTK_LABEL (label_title), data); g_free(data); } void FloatingWindow::on_widget_grab_focus(GtkWidget * widget, gpointer user_data) { ((FloatingWindow *) user_data)->widget_grab_focus(widget); } void FloatingWindow::widget_grab_focus(GtkWidget * widget) { if (widget != last_focused_widget) focus_set (); last_focused_widget = widget; } void FloatingWindow::connect_focus_signals (GtkWidget * widget) // Connects relevant focus signals of "widget". { // When the user presses a mouse button in a widget, it should focus. g_signal_connect ((gpointer) widget, "button_press_event", G_CALLBACK (on_widget_button_press_event), gpointer (this)); // When a widget has grabbed focus, it should store this state for later use. g_signal_connect_after((gpointer) widget, "grab_focus", G_CALLBACK(on_widget_grab_focus), gpointer(this)); } void FloatingWindow::status1 (const ustring& text) { gtk_label_set_text (GTK_LABEL (label_status1), text.c_str()); } void FloatingWindow::status2 (const ustring& text) { gtk_label_set_text (GTK_LABEL (label_status2), text.c_str()); } bool FloatingWindow::on_resize_timeout (gpointer data) { ((FloatingWindow *) data)->resize_timeout(); return false; } void FloatingWindow::resize_timeout () /* The USFM editor may take a lot of time resizing. This makes the GUI unresponsive. The solution is the following: When resizing starts, the client area gets hidden. After resizing has stopped for a while, the client area gets shown again. */ { resize_event_id = 0; gtk_widget_show (vbox_client); } bibledit-gtk-4.9/src/floatingwindow.h000664 000766 000024 00000012446 12221507136 020056 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_FLOATING_WINDOW_H #define INCLUDED_FLOATING_WINDOW_H #include "libraries.h" #include #include "windowdata.h" class FloatingWindow { public: FloatingWindow(GtkWidget * layout_in, WindowID window_id_in, ustring title_in, bool startup); // Virtual method since this object will be the base for other objects. virtual ~FloatingWindow(); private: GtkWidget * layout; GtkBuilder * gtkbuilder; GtkWidget *vbox_window; public: GtkWidget *label_title; private: GtkWidget *label_close; public: GtkWidget *vbox_client; private: GtkWidget *label_status1; GtkWidget *label_status2; GtkWidget *widget_resizer; void clear_previous_root_coordinates (); gint previous_root_x; gint previous_root_y; static gboolean on_title_bar_button_press_event (GtkWidget *widget, GdkEventButton *event, gpointer user_data); gboolean on_title_bar_button_press (GdkEventButton *event); static gboolean on_title_bar_button_release_event (GtkWidget *widget, GdkEventButton *event, gpointer user_data); gboolean on_title_bar_button_release (GdkEventButton *event); static gboolean on_title_bar_motion_notify_event (GtkWidget *widget, GdkEventMotion *event, gpointer user_data); gboolean on_title_bar_motion_notify (GdkEventMotion *event); bool dragging_window; static gboolean on_status_bar_button_press_event (GtkWidget *widget, GdkEventButton *event, gpointer user_data); gboolean on_status_bar_button_press (GdkEventButton *event); static gboolean on_status_bar_button_release_event (GtkWidget *widget, GdkEventButton *event, gpointer user_data); gboolean on_status_bar_button_release (GdkEventButton *event); static gboolean on_status_bar_motion_notify_event (GtkWidget *widget, GdkEventMotion *event, gpointer user_data); gboolean on_status_bar_motion_notify (GdkEventMotion *event); bool resizing_window; // Cursor control. static gboolean on_titlebar_enter_notify_event (GtkWidget *widget, GdkEventCrossing *event, gpointer user_data); gboolean on_titlebar_enter_notify (GdkEventCrossing *event); static gboolean on_titlebar_leave_notify_event (GtkWidget *widget, GdkEventCrossing *event, gpointer user_data); gboolean on_titlebar_leave_notify (GdkEventCrossing *event); static gboolean on_statusbar_enter_notify_event (GtkWidget *widget, GdkEventCrossing *event, gpointer user_data); gboolean on_statusbar_enter_notify (GdkEventCrossing *event); static gboolean on_statusbar_leave_notify_event (GtkWidget *widget, GdkEventCrossing *event, gpointer user_data); gboolean on_statusbar_leave_notify (GdkEventCrossing *event); static gboolean on_label_close_enter_notify_event (GtkWidget *widget, GdkEventCrossing *event, gpointer user_data); gboolean on_label_close_enter_notify (GdkEventCrossing *event); static gboolean on_label_close_leave_notify_event (GtkWidget *widget, GdkEventCrossing *event, gpointer user_data); gboolean on_label_close_leave_notify (GdkEventCrossing *event); // Close link. static gboolean on_label_close_button_press_event (GtkWidget *widget, GdkEventButton *event, gpointer user_data); gboolean on_label_close_button_press (GdkEventButton *event); public: ustring title; private: WindowID window_id; // Focus tools. public: GtkWidget * last_focused_widget; void focus_set(bool active = true); GtkWidget * focus_in_signal_button; void focus_if_widget_mine (GtkWidget *widget); bool focused; private: static void on_container_tree_callback (GtkWidget *widget, gpointer user_data); void container_tree_callback (GtkWidget *widget, gpointer user_data); GtkWidget * focused_widget_to_look_for; public: private: static gboolean on_widget_button_press_event (GtkWidget *widget, GdkEventButton *event, gpointer user_data); void on_widget_button_press (GtkWidget *widget, GdkEventButton *event); void title_set (bool focused); public: void connect_focus_signals (GtkWidget * widget); private: static void on_widget_grab_focus(GtkWidget * widget, gpointer user_data); void widget_grab_focus(GtkWidget * widget); // Size and position. void display (bool startup); GdkRectangle my_gdk_rectangle; public: GdkRectangle rectangle_get (); void rectangle_set (const GdkRectangle& rectangle); private: guint resize_event_id; static bool on_resize_timeout (gpointer data); void resize_timeout (); // Window deletion. bool my_shutdown; public: GtkWidget * delete_signal_button; void shutdown(); private: void undisplay(); // Status bar. public: void status1 (const ustring& text); void status2 (const ustring& text); private: }; #endif bibledit-gtk-4.9/src/generalconfig.cpp000644 000766 000024 00000055626 12453001367 020170 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "settings.h" #include "directories.h" #include "gwrappers.h" #include "sqlite3.h" #include "sqlite_reader.h" #include "utilities.h" #include "date_time_utils.h" #include "shell.h" #include #include #include "config.xml.h" #include "windowsoutpost.h" ustring general_configuration_filename() { return gw_build_filename(Directories->get_configuration(), "configuration.1.xml"); } void upgrade_configuration() { } /* A test was done on to see if the cause of irregular crashes of Bibledit, when used a lot, is, that GeneralConfiguration was always left open in mainwindow. It is now always closed. Several versions later it appeared that the random crashes had stopped. The conclusion is that the database should always be closed after use, and not left open. Note: The above is still true in general, but the configuration no longer uses the database, hence it is not relevant in this particular case. */ GeneralConfiguration::GeneralConfiguration(bool save_on_destroy) /* This version of the general configuration uses a fast, in-memory system for storing and retrieving the data. It loads the values from file only when needed. Once the values have been loaded in memory, they remain there, and the next times the values are queried, they are taken from memory, instead of loading them from disk again. This speeds the system up greatly. It has "getters" and "setters" to facilitate this system. On object destruction, it saves the values if they were modified. */ { // Save parameters. my_save_on_destroy = save_on_destroy; // Function definition for initializing variables. #define INITIALIZE(parameter) parameter##_loaded = false // Initialize variables. INITIALIZE(screen_width); INITIALIZE(screen_height); INITIALIZE (window_width); INITIALIZE (window_height); INITIALIZE (window_x_position); INITIALIZE (window_y_position); INITIALIZE (window_maximized); INITIALIZE(window_widths); INITIALIZE(window_heights); INITIALIZE(window_x_positions); INITIALIZE(window_y_positions); INITIALIZE(window_ids); INITIALIZE(window_titles); INITIALIZE(window_shows); INITIALIZE(project); INITIALIZE(book); INITIALIZE(chapter); INITIALIZE(verse); INITIALIZE(stylesheet); INITIALIZE(references_file); INITIALIZE(export_to_bibleworks_filename); INITIALIZE(export_to_sword_module_path); INITIALIZE(export_to_sword_install_path); INITIALIZE(paper_format); INITIALIZE(paper_width); INITIALIZE(paper_height); INITIALIZE(paper_inside_margin); INITIALIZE(paper_outside_margin); INITIALIZE(paper_top_margin); INITIALIZE(paper_bottom_margin); INITIALIZE(printdate); INITIALIZE(header_font_size); INITIALIZE(print_engine_use_intermediate_text); INITIALIZE(print_changes_only); INITIALIZE(project_to_compare_with); INITIALIZE(notes_selection_reference); INITIALIZE(notes_selection_edited); INITIALIZE(notes_selection_date_from); INITIALIZE(notes_selection_date_to); INITIALIZE(notes_selection_category); INITIALIZE(notes_selection_current_project); INITIALIZE(notes_display_project); INITIALIZE(notes_display_category); INITIALIZE(notes_display_date_created); INITIALIZE(notes_display_created_by); INITIALIZE(notes_display_summary); INITIALIZE(notes_display_reference_text); INITIALIZE(check_markers_compare_project); INITIALIZE(check_markers_compare_all_markers); INITIALIZE(check_markers_compare_include_only); INITIALIZE(check_markers_compare_ignore); INITIALIZE(check_markers_compare_ignore_verse_zero); INITIALIZE(check_capitalization_punctuation); INITIALIZE(check_capitalization_ignore); INITIALIZE(check_capitalization_allow_any_prefixes); INITIALIZE(check_repetition_ignore_case); INITIALIZE(check_repetition_show_only_these); INITIALIZE(check_repetition_ignore_these); INITIALIZE(check_matching_pairs_ignore); INITIALIZE(check_words_inventory_not_include_words_count); INITIALIZE(check_words_inventory_word_forming_characters); INITIALIZE(check_markers_spacing_include); INITIALIZE(styles_category_expanded); INITIALIZE(insert_footnote_template); INITIALIZE(insert_endnote_template); INITIALIZE(insert_xref_template); INITIALIZE(parallel_bible_keep_verses_together); INITIALIZE(parallel_bible_chapters_verses); INITIALIZE(parallel_bible_include_verse_zero); INITIALIZE(printing_fonts); INITIALIZE(parallel_bible_projects); INITIALIZE(parallel_bible_enabled); INITIALIZE(use_outpost); INITIALIZE(mychecks); INITIALIZE(tidy_translate); INITIALIZE(tidy_books); INITIALIZE(tidy_texts); INITIALIZE(tidy_normalize_hyphens); INITIALIZE(tidy_space_between_chapter_verse); INITIALIZE(tidy_space_series_verses); INITIALIZE(tidy_full_stop_ends_text); INITIALIZE(tidy_ampersand_semicolon); INITIALIZE(tidy_space_before_punctuation); INITIALIZE(wordlist_process_general); INITIALIZE(wordlist_general_asterisk); INITIALIZE(wordlist_general_asterisk_first); INITIALIZE(wordlist_process_hebrew); INITIALIZE(wordlist_hebrew_asterisk); INITIALIZE(wordlist_hebrew_asterisk_first); INITIALIZE(wordlist_process_greek); INITIALIZE(wordlist_greek_asterisk); INITIALIZE(wordlist_greek_asterisk_first); INITIALIZE(wordlist_process_index); INITIALIZE(wordlist_index_asterisk); INITIALIZE(wordlist_index_asterisk_first); INITIALIZE(text_editor_font_default); INITIALIZE(text_editor_font_name); INITIALIZE(text_editor_default_color); INITIALIZE(text_editor_normal_text_color); INITIALIZE(text_editor_background_color); INITIALIZE(text_editor_selected_text_color); INITIALIZE(text_editor_selection_color); INITIALIZE(encoding); INITIALIZE(features_mode); INITIALIZE(features_list); INITIALIZE(remember_verse_per_chapter); INITIALIZE(start_program_maximized); INITIALIZE(administration_password); INITIALIZE(print_references_projects); INITIALIZE(dialogpositions_x); INITIALIZE(dialogpositions_y); INITIALIZE(text_replacement); INITIALIZE(text_replacement_originals); INITIALIZE(text_replacement_replacements); INITIALIZE(pdf_viewer_automatic); INITIALIZE(pdf_viewer_path); INITIALIZE(pdf_viewer_arguments); INITIALIZE(project_tasks_names); INITIALIZE(project_tasks_durations); INITIALIZE(print_job); INITIALIZE(projects_displaying_verses); INITIALIZE(compare_disregard_notes); INITIALIZE(source_language_names); INITIALIZE(reference_window_show_verse_text); INITIALIZE(reference_window_show_relevant_bits); INITIALIZE(consultation_notes_git_use_remote_repository); INITIALIZE(consultation_notes_git_remote_repository_url); INITIALIZE(bibledit_web_url); INITIALIZE(bibledit_web_user); } GeneralConfiguration::~GeneralConfiguration() { if (my_save_on_destroy) { save(); } } void GeneralConfiguration::save() // Saves all settings to disk. { vector < ConfigXmlPair > values; #define SAVE_VALUE(item) if (item##_loaded) config_xml_values_set_assemble (values, item##_key(), item) SAVE_VALUE(screen_width); SAVE_VALUE(screen_height); SAVE_VALUE (window_width); SAVE_VALUE (window_height); SAVE_VALUE (window_x_position); SAVE_VALUE (window_y_position); SAVE_VALUE (window_maximized); SAVE_VALUE(window_widths); SAVE_VALUE(window_heights); SAVE_VALUE(window_x_positions); SAVE_VALUE(window_y_positions); SAVE_VALUE(window_ids); SAVE_VALUE(window_titles); SAVE_VALUE(window_shows); SAVE_VALUE(project); SAVE_VALUE(book); SAVE_VALUE(chapter); SAVE_VALUE(verse); SAVE_VALUE(stylesheet); SAVE_VALUE(references_file); SAVE_VALUE(export_to_bibleworks_filename); SAVE_VALUE(export_to_sword_module_path); SAVE_VALUE(export_to_sword_install_path); SAVE_VALUE(paper_format); SAVE_VALUE(paper_width); SAVE_VALUE(paper_height); SAVE_VALUE(paper_inside_margin); SAVE_VALUE(paper_outside_margin); SAVE_VALUE(paper_top_margin); SAVE_VALUE(paper_bottom_margin); SAVE_VALUE(printdate); SAVE_VALUE(header_font_size); SAVE_VALUE(print_engine_use_intermediate_text); SAVE_VALUE(print_changes_only); SAVE_VALUE(project_to_compare_with); SAVE_VALUE(notes_selection_reference); SAVE_VALUE(notes_selection_edited); SAVE_VALUE(notes_selection_date_from); SAVE_VALUE(notes_selection_date_to); SAVE_VALUE(notes_selection_category); SAVE_VALUE(notes_selection_current_project); SAVE_VALUE(notes_display_project); SAVE_VALUE(notes_display_category); SAVE_VALUE(notes_display_date_created); SAVE_VALUE(notes_display_created_by); SAVE_VALUE(notes_display_summary); SAVE_VALUE(notes_display_reference_text); SAVE_VALUE(check_markers_compare_project); SAVE_VALUE(check_markers_compare_all_markers); SAVE_VALUE(check_markers_compare_include_only); SAVE_VALUE(check_markers_compare_ignore); SAVE_VALUE(check_markers_compare_ignore_verse_zero); SAVE_VALUE(check_capitalization_punctuation); SAVE_VALUE(check_capitalization_ignore); SAVE_VALUE(check_capitalization_allow_any_prefixes); SAVE_VALUE(check_repetition_ignore_case); SAVE_VALUE(check_repetition_show_only_these); SAVE_VALUE(check_repetition_ignore_these); SAVE_VALUE(check_matching_pairs_ignore); SAVE_VALUE(check_words_inventory_not_include_words_count); SAVE_VALUE(check_words_inventory_word_forming_characters); SAVE_VALUE(check_markers_spacing_include); SAVE_VALUE(styles_category_expanded); SAVE_VALUE(insert_footnote_template); SAVE_VALUE(insert_endnote_template); SAVE_VALUE(insert_xref_template); SAVE_VALUE(parallel_bible_keep_verses_together); SAVE_VALUE(parallel_bible_chapters_verses); SAVE_VALUE(parallel_bible_include_verse_zero); SAVE_VALUE(printing_fonts); SAVE_VALUE(parallel_bible_projects); SAVE_VALUE(parallel_bible_enabled); SAVE_VALUE(use_outpost); SAVE_VALUE(mychecks); SAVE_VALUE(tidy_translate); SAVE_VALUE(tidy_books); SAVE_VALUE(tidy_texts); SAVE_VALUE(tidy_normalize_hyphens); SAVE_VALUE(tidy_space_between_chapter_verse); SAVE_VALUE(tidy_space_series_verses); SAVE_VALUE(tidy_full_stop_ends_text); SAVE_VALUE(tidy_ampersand_semicolon); SAVE_VALUE(tidy_space_before_punctuation); SAVE_VALUE(wordlist_process_general); SAVE_VALUE(wordlist_general_asterisk); SAVE_VALUE(wordlist_general_asterisk_first); SAVE_VALUE(wordlist_process_hebrew); SAVE_VALUE(wordlist_hebrew_asterisk); SAVE_VALUE(wordlist_hebrew_asterisk_first); SAVE_VALUE(wordlist_process_greek); SAVE_VALUE(wordlist_greek_asterisk); SAVE_VALUE(wordlist_greek_asterisk_first); SAVE_VALUE(wordlist_process_index); SAVE_VALUE(wordlist_index_asterisk); SAVE_VALUE(wordlist_index_asterisk_first); SAVE_VALUE(text_editor_font_default); SAVE_VALUE(text_editor_font_name); SAVE_VALUE(text_editor_default_color); SAVE_VALUE(text_editor_normal_text_color); SAVE_VALUE(text_editor_background_color); SAVE_VALUE(text_editor_selected_text_color); SAVE_VALUE(text_editor_selection_color); SAVE_VALUE(encoding); SAVE_VALUE(features_mode); SAVE_VALUE(features_list); SAVE_VALUE(remember_verse_per_chapter); SAVE_VALUE(start_program_maximized); SAVE_VALUE(administration_password); SAVE_VALUE(print_references_projects); SAVE_VALUE(dialogpositions_x); SAVE_VALUE(dialogpositions_y); SAVE_VALUE(text_replacement); SAVE_VALUE(text_replacement_originals); SAVE_VALUE(text_replacement_replacements); SAVE_VALUE(pdf_viewer_automatic); SAVE_VALUE(pdf_viewer_path); SAVE_VALUE(pdf_viewer_arguments); SAVE_VALUE(project_tasks_names); SAVE_VALUE(project_tasks_durations); SAVE_VALUE(print_job); SAVE_VALUE(projects_displaying_verses); SAVE_VALUE(compare_disregard_notes); SAVE_VALUE(source_language_names); SAVE_VALUE(reference_window_show_verse_text); SAVE_VALUE(reference_window_show_relevant_bits); SAVE_VALUE(consultation_notes_git_use_remote_repository); SAVE_VALUE(consultation_notes_git_remote_repository_url); SAVE_VALUE(bibledit_web_url); SAVE_VALUE(bibledit_web_user); config_xml_values_set_execute(general_configuration_filename(), values); } bool GeneralConfiguration::bool_get(const gchar * key, bool & store, bool & loaded, bool standard) { if (!loaded) { store = config_xml_bool_get(general_configuration_filename(), key, standard); loaded = true; } return store; } int GeneralConfiguration::int_get(const gchar * key, int &store, bool & loaded, int standard) { if (!loaded) { store = config_xml_int_get(general_configuration_filename(), key, standard); loaded = true; } return store; } ustring GeneralConfiguration::string_get(const gchar * key, ustring & store, bool & loaded, const ustring & standard) { if (!loaded) { store = config_xml_string_get(general_configuration_filename(), key, standard); loaded = true; } return store; } double GeneralConfiguration::double_get(const gchar * key, double &store, bool & loaded, double standard) { if (!loaded) { store = config_xml_double_get(general_configuration_filename(), key, standard); loaded = true; } return store; } vector < bool > GeneralConfiguration::vector_bool_get(const gchar * key, vector < bool > &store, bool & loaded, void *dummy) { if (!loaded) { store = config_xml_vector_bool_get(general_configuration_filename(), key); loaded = true; } return store; } vector < ustring > GeneralConfiguration::vector_string_get(const gchar * key, vector < ustring > &store, bool & loaded, void *dummy) { if (!loaded) { store = config_xml_vector_string_get(general_configuration_filename(), key); loaded = true; } return store; } vector < int >GeneralConfiguration::vector_int_get(const gchar * key, vector < int >&store, bool & loaded, void *dummy) { if (!loaded) { store = config_xml_vector_int_get(general_configuration_filename(), key); loaded = true; } return store; } vector < double >GeneralConfiguration::vector_double_get(const gchar * key, vector < double >&store, bool & loaded, void *dummy) { if (!loaded) { store = config_xml_vector_double_get(general_configuration_filename(), key); loaded = true; } return store; } // Definitions of the implementation of the code in the general configuration. #define IMPLEMENT(type, getter, store, defaultvalue) \ const gchar * GeneralConfiguration::store##_key () \ { \ return #store; \ } \ type GeneralConfiguration::store##_get () \ { \ return getter (store##_key (), store, store##_loaded, defaultvalue); \ } \ void GeneralConfiguration::store##_set (type value) \ { \ store = value; \ } // Code to make everything work. IMPLEMENT(int, int_get, screen_width, 0) IMPLEMENT(int, int_get, screen_height, 0) IMPLEMENT (int, int_get, window_width, 0) IMPLEMENT (int, int_get, window_height, 0) IMPLEMENT (int, int_get, window_x_position, 0) IMPLEMENT (int, int_get, window_y_position, 0) IMPLEMENT (bool, bool_get, window_maximized, true) IMPLEMENT(vector < int >, vector_int_get, window_widths, NULL) IMPLEMENT(vector < int >, vector_int_get, window_heights, NULL) IMPLEMENT(vector < int >, vector_int_get, window_x_positions, NULL) IMPLEMENT(vector < int >, vector_int_get, window_y_positions, NULL) IMPLEMENT(vector < int >, vector_int_get, window_ids, NULL) IMPLEMENT(vector < ustring >, vector_string_get, window_titles, NULL) IMPLEMENT(vector < bool >, vector_bool_get, window_shows, NULL) IMPLEMENT(ustring, string_get, project, "") IMPLEMENT(int, int_get, book, 0) IMPLEMENT(ustring, string_get, chapter, "") IMPLEMENT(ustring, string_get, verse, "") IMPLEMENT(ustring, string_get, stylesheet, "") IMPLEMENT(ustring, string_get, references_file, "") IMPLEMENT(ustring, string_get, export_to_bibleworks_filename, "") IMPLEMENT(ustring, string_get, export_to_sword_module_path, g_get_home_dir()) IMPLEMENT(ustring, string_get, export_to_sword_install_path, gw_build_filename(g_get_home_dir(), ".sword")) IMPLEMENT(ustring, string_get, paper_format, "A4") IMPLEMENT(double, double_get, paper_width, 21.0) IMPLEMENT(double, double_get, paper_height, 29.7) IMPLEMENT(double, double_get, paper_inside_margin, 2) IMPLEMENT(double, double_get, paper_outside_margin, 1) IMPLEMENT(double, double_get, paper_top_margin, 2) IMPLEMENT(double, double_get, paper_bottom_margin, 2) IMPLEMENT(bool, bool_get, printdate, true) IMPLEMENT(double, double_get, header_font_size, 12) IMPLEMENT(bool, bool_get, print_engine_use_intermediate_text, false) IMPLEMENT(bool, bool_get, print_changes_only, false) IMPLEMENT(ustring, string_get, project_to_compare_with, "") IMPLEMENT(int, int_get, notes_selection_reference, nsrtCurrentVerse) IMPLEMENT(int, int_get, notes_selection_edited, nsetAny) IMPLEMENT(int, int_get, notes_selection_date_from, date_time_julian_day_get_current()) IMPLEMENT(int, int_get, notes_selection_date_to, date_time_julian_day_get_current()) IMPLEMENT(ustring, string_get, notes_selection_category, "") IMPLEMENT(bool, bool_get, notes_selection_current_project, false) IMPLEMENT(bool, bool_get, notes_display_project, false) IMPLEMENT(bool, bool_get, notes_display_category, false) IMPLEMENT(bool, bool_get, notes_display_date_created, false) IMPLEMENT(bool, bool_get, notes_display_created_by, false) IMPLEMENT(bool, bool_get, notes_display_summary, false) IMPLEMENT(bool, bool_get, notes_display_reference_text, false) IMPLEMENT(ustring, string_get, check_markers_compare_project, "") IMPLEMENT(bool, bool_get, check_markers_compare_all_markers, true) IMPLEMENT(ustring, string_get, check_markers_compare_include_only, "") IMPLEMENT(ustring, string_get, check_markers_compare_ignore, "") IMPLEMENT(bool, bool_get, check_markers_compare_ignore_verse_zero, false) IMPLEMENT(ustring, string_get, check_capitalization_punctuation, CAPITALIZATION_PUNCTUATION) IMPLEMENT(ustring, string_get, check_capitalization_ignore, CAPITALIZATION_LOWERCASE) IMPLEMENT(bool, bool_get, check_capitalization_allow_any_prefixes, false) IMPLEMENT(bool, bool_get, check_repetition_ignore_case, false) IMPLEMENT(bool, bool_get, check_repetition_show_only_these, false) IMPLEMENT(bool, bool_get, check_repetition_ignore_these, false) IMPLEMENT(ustring, string_get, check_matching_pairs_ignore, "") IMPLEMENT(int, int_get, check_words_inventory_not_include_words_count, 0) IMPLEMENT(ustring, string_get, check_words_inventory_word_forming_characters, "") IMPLEMENT(ustring, string_get, check_markers_spacing_include, "xo") IMPLEMENT(vector < bool >, vector_bool_get, styles_category_expanded, NULL) IMPLEMENT(ustring, string_get, insert_footnote_template, "") IMPLEMENT(ustring, string_get, insert_endnote_template, "") IMPLEMENT(ustring, string_get, insert_xref_template, "") IMPLEMENT(bool, bool_get, parallel_bible_keep_verses_together, true) IMPLEMENT(ustring, string_get, parallel_bible_chapters_verses, "") IMPLEMENT(bool, bool_get, parallel_bible_include_verse_zero, false) IMPLEMENT(vector < ustring >, vector_string_get, printing_fonts, NULL) IMPLEMENT(vector < ustring >, vector_string_get, parallel_bible_projects, NULL) IMPLEMENT(vector < bool >, vector_bool_get, parallel_bible_enabled, NULL) #ifdef WIN32 IMPLEMENT(bool, bool_get, use_outpost, true) #else IMPLEMENT(bool, bool_get, use_outpost, false) #endif IMPLEMENT(ustring, string_get, mychecks, "") IMPLEMENT(bool, bool_get, tidy_translate, false) IMPLEMENT(vector < int >, vector_int_get, tidy_books, NULL) IMPLEMENT(vector < ustring >, vector_string_get, tidy_texts, NULL) IMPLEMENT(bool, bool_get, tidy_normalize_hyphens, false) IMPLEMENT(bool, bool_get, tidy_space_between_chapter_verse, false) IMPLEMENT(bool, bool_get, tidy_space_series_verses, false) IMPLEMENT(bool, bool_get, tidy_full_stop_ends_text, false) IMPLEMENT(bool, bool_get, tidy_ampersand_semicolon, false) IMPLEMENT(bool, bool_get, tidy_space_before_punctuation, false) IMPLEMENT(bool, bool_get, wordlist_process_general, false) IMPLEMENT(bool, bool_get, wordlist_general_asterisk, false) IMPLEMENT(bool, bool_get, wordlist_general_asterisk_first, false) IMPLEMENT(bool, bool_get, wordlist_process_hebrew, false) IMPLEMENT(bool, bool_get, wordlist_hebrew_asterisk, false) IMPLEMENT(bool, bool_get, wordlist_hebrew_asterisk_first, false) IMPLEMENT(bool, bool_get, wordlist_process_greek, false) IMPLEMENT(bool, bool_get, wordlist_greek_asterisk, false) IMPLEMENT(bool, bool_get, wordlist_greek_asterisk_first, false) IMPLEMENT(bool, bool_get, wordlist_process_index, false) IMPLEMENT(bool, bool_get, wordlist_index_asterisk, false) IMPLEMENT(bool, bool_get, wordlist_index_asterisk_first, false) IMPLEMENT(bool, bool_get, text_editor_font_default, true) IMPLEMENT(ustring, string_get, text_editor_font_name, "Sans 14") IMPLEMENT(bool, bool_get, text_editor_default_color, true) IMPLEMENT(int, int_get, text_editor_normal_text_color, 0) IMPLEMENT(int, int_get, text_editor_background_color, 16777215) IMPLEMENT(int, int_get, text_editor_selected_text_color, 16777215) IMPLEMENT(int, int_get, text_editor_selection_color, 4294343) IMPLEMENT(ustring, string_get, encoding, "WINDOWS-1258") IMPLEMENT(int, int_get, features_mode, 1) IMPLEMENT(ustring, string_get, features_list, "") IMPLEMENT(bool, bool_get, remember_verse_per_chapter, false) IMPLEMENT(bool, bool_get, start_program_maximized, false) IMPLEMENT(ustring, string_get, administration_password, "") IMPLEMENT(vector < ustring >, vector_string_get, print_references_projects, NULL) IMPLEMENT(vector < int >, vector_int_get, dialogpositions_x, NULL) IMPLEMENT(vector < int >, vector_int_get, dialogpositions_y, NULL) IMPLEMENT(bool, bool_get, text_replacement, false) IMPLEMENT(vector < ustring >, vector_string_get, text_replacement_originals, NULL) IMPLEMENT(vector < ustring >, vector_string_get, text_replacement_replacements, NULL) IMPLEMENT(bool, bool_get, pdf_viewer_automatic, true) IMPLEMENT(ustring, string_get, pdf_viewer_path, "") IMPLEMENT(ustring, string_get, pdf_viewer_arguments, "") IMPLEMENT(vector < ustring >, vector_string_get, project_tasks_names, NULL) IMPLEMENT(vector < double >, vector_double_get, project_tasks_durations, NULL) IMPLEMENT(int, int_get, print_job, 0) IMPLEMENT(vector < ustring >, vector_string_get, projects_displaying_verses, NULL) IMPLEMENT(bool, bool_get, compare_disregard_notes, false) IMPLEMENT(vector , vector_string_get, source_language_names, NULL) IMPLEMENT(bool, bool_get, reference_window_show_verse_text, true) IMPLEMENT(bool, bool_get, reference_window_show_relevant_bits, false) IMPLEMENT(bool, bool_get, consultation_notes_git_use_remote_repository, false) IMPLEMENT(ustring, string_get, consultation_notes_git_remote_repository_url, "") IMPLEMENT(ustring, string_get, bibledit_web_url, "http://localhost/bibledit") IMPLEMENT(ustring, string_get, bibledit_web_user, "") bibledit-gtk-4.9/src/generalconfig.h000664 000766 000024 00000022451 12221507145 017623 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_GENERALCONFIGURATION_H #define INCLUDED_GENERALCONFIGURATION_H #include "libraries.h" #include "constants.h" ustring general_configuration_filename (); void upgrade_configuration (); // Definitions of various types of variables in the general configuration. #define DEFINE_GENCONFIG_H(type, parameter) \ private: \ type parameter; \ bool parameter##_loaded; \ const gchar * parameter##_key (); \ public: \ type parameter##_get (); \ void parameter##_set (type value) \ class GeneralConfiguration // Manages program settings in memory and on disk. { public: GeneralConfiguration (bool save_on_destroy); ~GeneralConfiguration (); void save (); // Private and public definitions follow. DEFINE_GENCONFIG_H (int, screen_width); DEFINE_GENCONFIG_H (int, screen_height); DEFINE_GENCONFIG_H (int, window_width); DEFINE_GENCONFIG_H (int, window_height); DEFINE_GENCONFIG_H (int, window_x_position); DEFINE_GENCONFIG_H (int, window_y_position); DEFINE_GENCONFIG_H (bool, window_maximized); DEFINE_GENCONFIG_H (vector, window_widths); DEFINE_GENCONFIG_H (vector, window_heights); DEFINE_GENCONFIG_H (vector, window_x_positions); DEFINE_GENCONFIG_H (vector, window_y_positions); DEFINE_GENCONFIG_H (vector, window_ids); DEFINE_GENCONFIG_H (vector, window_titles); DEFINE_GENCONFIG_H (vector, window_shows); DEFINE_GENCONFIG_H (ustring, project); DEFINE_GENCONFIG_H (int, book); DEFINE_GENCONFIG_H (ustring, chapter); DEFINE_GENCONFIG_H (ustring, verse); DEFINE_GENCONFIG_H (ustring, stylesheet); DEFINE_GENCONFIG_H (ustring, references_file); DEFINE_GENCONFIG_H (ustring, export_to_bibleworks_filename); DEFINE_GENCONFIG_H (ustring, export_to_sword_module_path); DEFINE_GENCONFIG_H (ustring, export_to_sword_install_path); DEFINE_GENCONFIG_H (ustring, paper_format); DEFINE_GENCONFIG_H (double, paper_width); DEFINE_GENCONFIG_H (double, paper_height); DEFINE_GENCONFIG_H (double, paper_inside_margin); DEFINE_GENCONFIG_H (double, paper_outside_margin); DEFINE_GENCONFIG_H (double, paper_top_margin); DEFINE_GENCONFIG_H (double, paper_bottom_margin); DEFINE_GENCONFIG_H (bool, printdate); DEFINE_GENCONFIG_H (double, header_font_size); DEFINE_GENCONFIG_H (bool, print_engine_use_intermediate_text); DEFINE_GENCONFIG_H (bool, print_changes_only); DEFINE_GENCONFIG_H (ustring, project_to_compare_with); DEFINE_GENCONFIG_H (int, notes_selection_reference); DEFINE_GENCONFIG_H (int, notes_selection_edited); DEFINE_GENCONFIG_H (int, notes_selection_date_from); DEFINE_GENCONFIG_H (int, notes_selection_date_to); DEFINE_GENCONFIG_H (ustring, notes_selection_category); DEFINE_GENCONFIG_H (bool, notes_selection_current_project); DEFINE_GENCONFIG_H (bool, notes_display_project); DEFINE_GENCONFIG_H (bool, notes_display_category); DEFINE_GENCONFIG_H (bool, notes_display_date_created); DEFINE_GENCONFIG_H (bool, notes_display_created_by); DEFINE_GENCONFIG_H (bool, notes_display_summary); DEFINE_GENCONFIG_H (bool, notes_display_reference_text); DEFINE_GENCONFIG_H (ustring, check_markers_compare_project); DEFINE_GENCONFIG_H (bool, check_markers_compare_all_markers); DEFINE_GENCONFIG_H (ustring, check_markers_compare_include_only); DEFINE_GENCONFIG_H (ustring, check_markers_compare_ignore); DEFINE_GENCONFIG_H (bool, check_markers_compare_ignore_verse_zero); DEFINE_GENCONFIG_H (ustring, check_capitalization_punctuation); DEFINE_GENCONFIG_H (ustring, check_capitalization_ignore); DEFINE_GENCONFIG_H (bool, check_capitalization_allow_any_prefixes); DEFINE_GENCONFIG_H (bool, check_repetition_ignore_case); DEFINE_GENCONFIG_H (bool, check_repetition_show_only_these); DEFINE_GENCONFIG_H (bool, check_repetition_ignore_these); DEFINE_GENCONFIG_H (ustring, check_matching_pairs_ignore); DEFINE_GENCONFIG_H (int, check_words_inventory_not_include_words_count); DEFINE_GENCONFIG_H (ustring, check_words_inventory_word_forming_characters); DEFINE_GENCONFIG_H (ustring, check_markers_spacing_include); DEFINE_GENCONFIG_H (vector, styles_category_expanded); DEFINE_GENCONFIG_H (ustring, insert_footnote_template); DEFINE_GENCONFIG_H (ustring, insert_endnote_template); DEFINE_GENCONFIG_H (ustring, insert_xref_template); DEFINE_GENCONFIG_H (bool, parallel_bible_keep_verses_together); DEFINE_GENCONFIG_H (ustring, parallel_bible_chapters_verses); DEFINE_GENCONFIG_H (bool, parallel_bible_include_verse_zero); DEFINE_GENCONFIG_H (vector, printing_fonts); DEFINE_GENCONFIG_H (vector, parallel_bible_projects); DEFINE_GENCONFIG_H (vector, parallel_bible_enabled); DEFINE_GENCONFIG_H (bool, use_outpost); DEFINE_GENCONFIG_H (ustring, mychecks); DEFINE_GENCONFIG_H (bool, tidy_translate); DEFINE_GENCONFIG_H (vector, tidy_books); DEFINE_GENCONFIG_H (vector, tidy_texts); DEFINE_GENCONFIG_H (bool, tidy_normalize_hyphens); DEFINE_GENCONFIG_H (bool, tidy_space_between_chapter_verse); DEFINE_GENCONFIG_H (bool, tidy_space_series_verses); DEFINE_GENCONFIG_H (bool, tidy_full_stop_ends_text); DEFINE_GENCONFIG_H (bool, tidy_ampersand_semicolon); DEFINE_GENCONFIG_H (bool, tidy_space_before_punctuation); DEFINE_GENCONFIG_H (bool, wordlist_process_general); DEFINE_GENCONFIG_H (bool, wordlist_general_asterisk); DEFINE_GENCONFIG_H (bool, wordlist_general_asterisk_first); DEFINE_GENCONFIG_H (bool, wordlist_process_hebrew); DEFINE_GENCONFIG_H (bool, wordlist_hebrew_asterisk); DEFINE_GENCONFIG_H (bool, wordlist_hebrew_asterisk_first); DEFINE_GENCONFIG_H (bool, wordlist_process_greek); DEFINE_GENCONFIG_H (bool, wordlist_greek_asterisk); DEFINE_GENCONFIG_H (bool, wordlist_greek_asterisk_first); DEFINE_GENCONFIG_H (bool, wordlist_process_index); DEFINE_GENCONFIG_H (bool, wordlist_index_asterisk); DEFINE_GENCONFIG_H (bool, wordlist_index_asterisk_first); DEFINE_GENCONFIG_H (bool, text_editor_font_default); DEFINE_GENCONFIG_H (ustring, text_editor_font_name); DEFINE_GENCONFIG_H (bool, text_editor_default_color); DEFINE_GENCONFIG_H (int, text_editor_normal_text_color); DEFINE_GENCONFIG_H (int, text_editor_background_color); DEFINE_GENCONFIG_H (int, text_editor_selected_text_color); DEFINE_GENCONFIG_H (int, text_editor_selection_color); DEFINE_GENCONFIG_H (ustring, encoding); DEFINE_GENCONFIG_H (int, features_mode); DEFINE_GENCONFIG_H (ustring, features_list); DEFINE_GENCONFIG_H (bool, remember_verse_per_chapter); DEFINE_GENCONFIG_H (bool, start_program_maximized); DEFINE_GENCONFIG_H (ustring, administration_password); DEFINE_GENCONFIG_H (vector, print_references_projects); DEFINE_GENCONFIG_H (vector, dialogpositions_x); DEFINE_GENCONFIG_H (vector, dialogpositions_y); DEFINE_GENCONFIG_H (bool, text_replacement); DEFINE_GENCONFIG_H (vector, text_replacement_originals); DEFINE_GENCONFIG_H (vector, text_replacement_replacements); DEFINE_GENCONFIG_H (bool, pdf_viewer_automatic); DEFINE_GENCONFIG_H (ustring, pdf_viewer_path); DEFINE_GENCONFIG_H (ustring, pdf_viewer_arguments); DEFINE_GENCONFIG_H (vector, project_tasks_names); DEFINE_GENCONFIG_H (vector, project_tasks_durations); DEFINE_GENCONFIG_H (int, print_job); DEFINE_GENCONFIG_H (vector, projects_displaying_verses); DEFINE_GENCONFIG_H (bool, compare_disregard_notes); DEFINE_GENCONFIG_H (vector, source_language_names); DEFINE_GENCONFIG_H (bool, reference_window_show_verse_text); DEFINE_GENCONFIG_H (bool, reference_window_show_relevant_bits); DEFINE_GENCONFIG_H (bool, consultation_notes_git_use_remote_repository); DEFINE_GENCONFIG_H (ustring, consultation_notes_git_remote_repository_url); DEFINE_GENCONFIG_H (ustring, bibledit_web_url); DEFINE_GENCONFIG_H (ustring, bibledit_web_user); private: bool my_save_on_destroy; bool bool_get (const gchar * key, bool& store, bool& loaded, bool standard); int int_get (const gchar * key, int& store, bool& loaded, int standard); ustring string_get (const gchar * key, ustring& store, bool& loaded, const ustring& standard); double double_get (const gchar * key, double& store, bool& loaded, double standard); vector vector_bool_get (const gchar * key, vector& store, bool& loaded, void * dummy); vector vector_string_get (const gchar * key, vector& store, bool& loaded, void * dummy); vector vector_int_get (const gchar * key, vector& store, bool& loaded, void * dummy); vector vector_double_get (const gchar * key, vector& store, bool& loaded, void * dummy); }; #endif bibledit-gtk-4.9/src/git-exec.cpp000664 000766 000024 00000005734 12221507143 017063 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "git-exec.h" #include "tiny_utilities.h" #include #include "gwrappers.h" vector git_exec_update_folder(const ustring & folder) /* Commits local changes. Pulls all changes from the remote repository. Pushes all changes to the remote repository. */ { git_exec_message("Updating data in folder " + folder, true); vector feedback; // Tell git about the default method for pushing. { GwSpawn spawn ("git"); spawn.arg ("config"); spawn.arg ("push.default"); spawn.arg ("matching"); spawn.workingdirectory (folder); spawn.run (); } // Add everything because things could have been added or changed. { GwSpawn spawn ("git"); spawn.arg ("add"); spawn.arg ("."); spawn.workingdirectory (folder); spawn.run (); } // Show status. { GwSpawn spawn ("git"); spawn.arg ("status"); spawn.workingdirectory (folder); spawn.run (); } // Commit changes locally. { GwSpawn spawn ("git"); spawn.arg ("commit"); spawn.arg ("-a"); spawn.arg ("-m"); spawn.arg ("commit"); spawn.workingdirectory (folder); spawn.run (); } // Pull changes from the remote repository. bool pulled_ok = false; { GwSpawn spawn ("git"); spawn.arg ("pull"); spawn.workingdirectory (folder); spawn.read (); spawn.run (); pulled_ok = spawn.exitstatus == 0; feedback.push_back (convert_to_string (spawn.exitstatus)); for (unsigned int i = 0; i < spawn.standardout.size(); i++) { git_exec_message (spawn.standardout[i], true); feedback.push_back (spawn.standardout[i]); } for (unsigned int i = 0; i < spawn.standarderr.size(); i++) { git_exec_message (spawn.standarderr[i], true); feedback.push_back (spawn.standarderr[i]); } } // Push changes to the remote repository. if (pulled_ok) { GwSpawn spawn ("git"); spawn.arg ("push"); spawn.workingdirectory (folder); spawn.run (); } // Indicate ready in logbook. gw_message ("Ready"); return feedback; } void git_exec_message(const ustring & message, bool eol) { if (write(1, message.c_str(), strlen(message.c_str()))) ; if (eol) if (write(1, "\n", 1)) ; } bibledit-gtk-4.9/src/git-exec.h000664 000766 000024 00000001745 12221507134 016526 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_GIT_EXEC_H #define INCLUDED_GIT_EXEC_H #include "libraries.h" vector git_exec_update_folder (const ustring& folder); void git_exec_message (const ustring& message, bool eol); #endif bibledit-gtk-4.9/src/git.cpp000664 000766 000024 00000025035 12240363630 016137 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "git.h" #include "gwrappers.h" #include "directories.h" #include #include #include "utilities.h" #include "projectutils.h" #include "shell.h" #include "progresswindow.h" #include "books.h" #include "tiny_utilities.h" #include "settings.h" #include "date_time_utils.h" #include "unixwrappers.h" #include "gtkwrappers.h" #include "generalconfig.h" #include "maintenance.h" #include "snapshots.h" #include "vcs.h" void git_upgrade () // Upgrades the git system. { // Go through the projects that have their git repository enabled. extern Settings * settings; vector projects = projects_get_all (); for (unsigned int i = 0; i < projects.size(); i++) { ProjectConfiguration * projectconfig = settings->projectconfig (projects[i]); ustring git_directory = gw_build_filename (project_data_directory_project (projects[i]), ".git"); if (projectconfig->git_use_remote_repository_get()) { // At times there's a stale index.lock file that prevents any collaboration. // This is to be removed. ustring index_lock = gw_build_filename (git_directory, "index.lock"); if (g_file_test (index_lock.c_str(), G_FILE_TEST_IS_REGULAR)) { gw_message ("Cleaning out index lock " + index_lock); unlink (index_lock.c_str()); } // Get the data directory for the project ustring datadirectory = tiny_project_data_directory_project(projects[i]); // On most machines git can determine the user's name from the system services. // On the XO machine, it can't. It is set here manually. // On more recent versions of git, like version 1.8.3 and younger, // although git may determine the user's name from the system, // it still requires it to be set manually. ustring command; command = "git config user.email \""; command.append(g_get_user_name()); command.append("@"); command.append(g_get_host_name()); command.append("\""); maintenance_register_shell_command (datadirectory, command); command = "git config user.name \""; command.append(g_get_real_name()); command.append("\""); maintenance_register_shell_command (datadirectory, command); // (Re)initialize the repository. This can be done repeatedly without harm. // Note that this is done on shutdown. maintenance_register_shell_command (datadirectory, "git init"); } else { if (g_file_test (git_directory.c_str(), G_FILE_TEST_IS_DIR)) { gw_message ("Cleaning out folder " + git_directory); ProgressWindow progresswindow ("Tidying up project " + projects[i], false); progresswindow.set_fraction (0.5); unix_rmdir (git_directory); } } } } void git_revert_to_internal_repository(const ustring & project) // This reverts the repository to the internal one, if that is not yet the case. { // Set in the configuration that we're using a local repository only. extern Settings *settings; ProjectConfiguration *projectconfig = settings->projectconfig(project); projectconfig->git_use_remote_repository_set(false); } void git_resolve_conflict_chapter(const ustring & project, unsigned int book, unsigned int chapter) // This solves a conflicting chapter. { // Log message gw_message("Resolving conflict for project " + project + " book " + books_id_to_english(book) + " " + convert_to_string(chapter)); // Directory of the chapter in the data. ustring directory = project_data_directory_chapter(project, book, chapter); // Data filename. ustring datafile = project_data_filename_chapter(project, book, chapter, false); /* Read the datafile. If there is a conflict it will look like the example below: \c 1 <<<<<<< HEAD:3 John/1/data \v 1 my text. ======= \v 1 server's text. >>>>>>> a62f843ce41ed2d0325c8a2767993df6acdbc933:3 John/1/data \v 2 */ ReadText rt(datafile, true); // Set about to resolve the conflict. vector < ustring > newdata; bool withinmine = false; bool withinserver = false; for (unsigned int i = 0; i < rt.lines.size(); i++) { // Find out when we've a marker, no actual data. bool minemarker = rt.lines[i].find(git_mine_conflict_marker()) != string::npos; bool separatormarker = rt.lines[i] == "======="; bool servermarker = rt.lines[i].find(">>>>>>> ") == 0; // Do conflict management only if we've actual data. bool takeit = false; if (!minemarker && !separatormarker && !servermarker) { if (withinmine) { } else if (withinserver) { takeit = true; } else { takeit = true; } } if (takeit) { newdata.push_back(rt.lines[i]); } else { } // Set whether we're within a conflict, my data, or the server's data. // This setting applies to the next line of data. if (minemarker) { withinmine = true; withinserver = false; } if (separatormarker) { withinmine = false; withinserver = true; } if (servermarker) { withinmine = false; withinserver = false; } } write_lines(datafile, newdata); // Next time that a timed pull and push is done, the conflict will show up as resolved. } ustring git_mine_conflict_marker() /* If there is a conflicting merge, we may have data like this: <<<<<<< HEAD:3 John/1/data \v 1 xFrom the church leader. ======= \v 1 xxFrom the church leader. >>>>>>> a62f843ce41ed2d0325c8a2767993df6acdbc933:3 John/1/data */ { return "<<<<<<< HEAD"; } void git_resolve_conflicts(const ustring & project, const vector < ustring > &errors) /* This function reads through the "errors" to see if any conflicting merge occurred. If that happened, it resolves the conflicts. */ { /* See if the errors indicate a conflict. If not, bail out. The first time that a "git pull" is done, and there is a conflict, it says this: Auto-merged 3 John/1/data CONFLICT (content): Merge conflict in 3 John/1/data Automatic merge failed; fix conflicts and then commit the result. The second time that a "git pull" would be done, it would say this: You are in the middle of a conflicted merge. */ bool conflict = false; for (unsigned int i = 0; i < errors.size(); i++) { if (errors[i].find("conflict") != string::npos) { conflict = true; } } if (!conflict) return; // Get the working directory. ustring directory = project_data_directory_project(project); // Run a "git status" to find the books and chapters that have a merge conflict. vector < Reference > conflicted_chapters; { GwSpawn spawn("git status"); spawn.workingdirectory(directory); spawn.read(); spawn.run(); for (unsigned int i = 0; i < spawn.standardout.size(); i++) { ustring line = spawn.standardout[i]; size_t pos = line.find("unmerged:"); if (pos != string::npos) { line.erase(0, pos + 10); line = trim(line); Parse parse(line, false, G_DIR_SEPARATOR_S); if (parse.words.size() >= 2) { unsigned int book = books_english_to_id(parse.words[0]); if (book) { unsigned int chapter = convert_to_int(parse.words[1]); Reference reference(book, chapter, ""); conflicted_chapters.push_back(reference); } } } } } // Resolve all conflicts according to the settings of the user. for (unsigned int i = 0; i < conflicted_chapters.size(); i++) { git_resolve_conflict_chapter(project, conflicted_chapters[i].book, conflicted_chapters[i].chapter); } // Commit the changes. { GwSpawn spawn("git commit"); spawn.workingdirectory(directory); spawn.arg("-m"); spawn.arg("Resolved conflict"); spawn.arg("-a"); spawn.run(); } } void git_process_feedback (const ustring& project, const vector & feedback, unsigned int watched_book, unsigned int watched_chapter, bool& watch_updated) { // Bail out if there's not enough feedback. if (feedback.size() < 3) { return; } // Examine the output and take appropriate actions. // A normal action is when a chapter is updated as a result of a git pull. // Example: // Updating 4807e84..0afa0e3 // Fast forward // 3 John/1/data | 2 +- // 1 files changed, 1 insertions(+), 1 deletions(-) for (unsigned int i = 0; i < feedback.size(); i++) { ustring line = feedback[i]; if (line.length() > 5) { Parse parse(line, false, G_DIR_SEPARATOR_S); if (parse.words.size() >= 2) { unsigned int book = books_english_to_id(parse.words[0]); if (book) { unsigned int chapter = convert_to_int(parse.words[1]); snapshots_shoot_chapter (project, book, chapter, 0, false); // Update the watch. if (book == watched_book) { if (chapter == watched_chapter) { watch_updated = true; } } } } } } } /* Some information is available about the secure git repository at sourceforge.net. Shell access: ssh shell.sourceforge.net Then follow instructions. Creating Multple Repositories To create a new repository, you need to access the Shell service, then follow these steps: 1. Navigate to your repository 1. cd /home/scm_git/P/PR/PROJECTUNIXNAME * PROJECTUNIXNAME is the UNIX name of your project * P represents the first letter of that name, and PR the first two letters of the name. 2. Create a new directory with the name you want for the repository, eg mkdir DIRNAME. 3. Run git --git-dir=DIRNAME init --shared=all --bare (where DIRNAME represents the name of the repository to be created) * This will initialize a new repository at that directory Notes: Developers should not nest directories / repositories. Directories should only be created the top level directory of repository. */ bibledit-gtk-4.9/src/git.h000664 000766 000024 00000002575 12221507146 015611 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_GIT_H #define INCLUDED_GIT_H #include "libraries.h" #include "types.h" #include "reference.h" #include "urltransport.h" void git_upgrade (); void git_revert_to_internal_repository (const ustring& project); void git_resolve_conflict_chapter (const ustring& project, unsigned int book, unsigned int chapter); ustring git_mine_conflict_marker (); void git_resolve_conflicts (const ustring& project, const vector & errors); void git_process_feedback (const ustring& project, const vector & feedback, unsigned int watched_book, unsigned int watched_chapter, bool& watch_updated); #endif bibledit-gtk-4.9/src/greek.cpp000664 000766 000024 00000014600 12221507143 016443 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "greek.h" ustring greek_case_and_accent_fold (const ustring& phrase) // Takes a Greek phrase and folds the case and any accents. { ustring casefold; for (unsigned int i = 0; i < phrase.length(); i++) { ustring c = phrase.substr (i, 1).normalize(); // There are bugs when comparing using a ustring, therefore we use a gunichar. gunichar uc = g_utf8_get_char (c.c_str()); if ((uc == g_utf8_get_char ("ἀ")) || (uc == g_utf8_get_char ("ἁ")) || (uc == g_utf8_get_char ("ἀ")) || (uc == g_utf8_get_char ("ἁ")) || (uc == g_utf8_get_char ("ἄ")) || (uc == g_utf8_get_char ("ἅ")) || (uc == g_utf8_get_char ("ἆ")) || (uc == g_utf8_get_char ("Ἀ")) || (uc == g_utf8_get_char ("Ἄ")) || (uc == g_utf8_get_char ("ά")) || (uc == g_utf8_get_char ("Α")) || (uc == g_utf8_get_char ("ᾳ")) || (uc == g_utf8_get_char ("ᾴ")) || (uc == g_utf8_get_char ("ᾄ")) || (uc == g_utf8_get_char ("ᾅ")) || (uc == g_utf8_get_char ("ᾷ")) || (uc == g_utf8_get_char ("ὰ")) || (uc == g_utf8_get_char ("ᾶ")) || (uc == g_utf8_get_char ("ά"))) { casefold.append ("α"); } else if (uc == g_utf8_get_char ("Β")) { casefold.append ("β"); } else if (uc == g_utf8_get_char ("Γ")) { casefold.append ("γ"); } else if (uc == g_utf8_get_char ("Δ")) { casefold.append ("δ"); } else if ((uc == g_utf8_get_char ("Ε")) || (uc == g_utf8_get_char ("ἐ")) || (uc == g_utf8_get_char ("ἑ")) || (uc == g_utf8_get_char ("ἔ")) || (uc == g_utf8_get_char ("ἕ")) || (uc == g_utf8_get_char ("Ἐ")) || (uc == g_utf8_get_char ("Ἑ")) || (uc == g_utf8_get_char ("Ἔ")) || (uc == g_utf8_get_char ("Ἕ")) || (uc == g_utf8_get_char ("ὲ")) || (uc == g_utf8_get_char ("έ")) || (uc == g_utf8_get_char ("έ"))) { casefold.append ("ε"); } else if (uc == g_utf8_get_char ("Ζ")) { casefold.append ("ζ"); } else if ((uc == g_utf8_get_char ("ἠ")) || (uc == g_utf8_get_char ("ἡ")) || (uc == g_utf8_get_char ("ἤ")) || (uc == g_utf8_get_char ("ἥ")) || (uc == g_utf8_get_char ("ἦ")) || (uc == g_utf8_get_char ("ἧ")) || (uc == g_utf8_get_char ("Ἠ")) || (uc == g_utf8_get_char ("Ἡ")) || (uc == g_utf8_get_char ("Ἤ")) || (uc == g_utf8_get_char ("ή")) || (uc == g_utf8_get_char ("η")) || (uc == g_utf8_get_char ("ῄ")) || (uc == g_utf8_get_char ("ὴ")) || (uc == g_utf8_get_char ("ῆ")) || (uc == g_utf8_get_char ("ῇ")) || (uc == g_utf8_get_char ("ή"))) { casefold.append ("η"); } else if (uc == g_utf8_get_char ("Θ")) { casefold.append ("θ"); } else if ((uc == g_utf8_get_char ("ἰ")) || (uc == g_utf8_get_char ("ἱ")) || (uc == g_utf8_get_char ("ἴ")) || (uc == g_utf8_get_char ("ἵ")) || (uc == g_utf8_get_char ("ἶ")) || (uc == g_utf8_get_char ("ἷ")) || (uc == g_utf8_get_char ("Ἰ")) || (uc == g_utf8_get_char ("Ἱ")) || (uc == g_utf8_get_char ("ὶ")) || (uc == g_utf8_get_char ("ί")) || (uc == g_utf8_get_char ("ΐ")) || (uc == g_utf8_get_char ("ϊ")) || (uc == g_utf8_get_char ("ῖ")) || (uc == g_utf8_get_char ("ί")) || (uc == g_utf8_get_char ("ΐ"))) { casefold.append ("ι"); } else if (uc == g_utf8_get_char ("Κ")) { casefold.append ("κ"); } else if (uc == g_utf8_get_char ("Λ")) { casefold.append ("λ"); } else if (uc == g_utf8_get_char ("Μ")) { casefold.append ("μ"); } else if (uc == g_utf8_get_char ("Ν")) { casefold.append ("ν"); } else if (uc == g_utf8_get_char ("Ξ")) { casefold.append ("ξ"); } else if ((uc == g_utf8_get_char ("Ο")) || (uc == g_utf8_get_char ("ὀ")) || (uc == g_utf8_get_char ("ὁ")) || (uc == g_utf8_get_char ("ὄ")) || (uc == g_utf8_get_char ("ὅ")) || (uc == g_utf8_get_char ("Ὀ")) || (uc == g_utf8_get_char ("ό")) || (uc == g_utf8_get_char ("ό"))) { casefold.append ("ο"); } else if (uc == g_utf8_get_char ("Π")) { casefold.append ("π"); } else if ((uc == g_utf8_get_char ("Ρ")) || (uc == g_utf8_get_char ("ῤ")) || (uc == g_utf8_get_char ("ῥ")) || (uc == g_utf8_get_char ("Ῥ"))) { casefold.append ("ρ"); } else if ((uc == g_utf8_get_char ("ϛ")) || (uc == g_utf8_get_char ("ς")) || (uc == g_utf8_get_char ("Σ"))) { casefold.append ("σ"); } else if (uc == g_utf8_get_char ("Τ")) { casefold.append ("τ"); } else if ((uc == g_utf8_get_char ("ὐ")) || (uc == g_utf8_get_char ("ὑ")) || (uc == g_utf8_get_char ("ὔ")) || (uc == g_utf8_get_char ("ὕ")) || (uc == g_utf8_get_char ("ὖ")) || (uc == g_utf8_get_char ("ὗ")) || (uc == g_utf8_get_char ("Ὑ")) || (uc == g_utf8_get_char ("ύ")) || (uc == g_utf8_get_char ("ΰ")) || (uc == g_utf8_get_char ("ϋ")) || (uc == g_utf8_get_char ("ῦ")) || (uc == g_utf8_get_char ("ύ")) || (uc == g_utf8_get_char ("ΰ"))) { casefold.append ("υ"); } else if (uc == g_utf8_get_char ("Φ")) { casefold.append ("φ"); } else if (uc == g_utf8_get_char ("Χ")) { casefold.append ("χ"); } else if (uc == g_utf8_get_char ("Ψ")) { casefold.append ("ψ"); } else if ((uc == g_utf8_get_char ("ὠ")) || (uc == g_utf8_get_char ("ὡ")) || (uc == g_utf8_get_char ("ὢ")) || (uc == g_utf8_get_char ("ὤ")) || (uc == g_utf8_get_char ("ὥ")) || (uc == g_utf8_get_char ("ὦ")) || (uc == g_utf8_get_char ("ὧ")) || (uc == g_utf8_get_char ("Ὠ")) || (uc == g_utf8_get_char ("Ὡ")) || (uc == g_utf8_get_char ("ῶ")) || (uc == g_utf8_get_char ("ᾠ")) || (uc == g_utf8_get_char ("ῷ")) || (uc == g_utf8_get_char ("ώ")) || (uc == g_utf8_get_char ("Ω")) || (uc == g_utf8_get_char ("ῳ")) || (uc == g_utf8_get_char ("ῴ")) || (uc == g_utf8_get_char ("ώ"))) { casefold.append ("ω"); } else { casefold.append (c); } } return casefold; } bibledit-gtk-4.9/src/greek.h000664 000766 000024 00000001707 12221507144 016115 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_GREEK_H #define INCLUDED_GREEK_H #include "libraries.h" #include #include ustring greek_case_and_accent_fold (const ustring& phrase); #endif bibledit-gtk-4.9/src/gtkwrappers.cpp000664 000766 000024 00000020246 12221507143 017722 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "gtkwrappers.h" #include "gwrappers.h" #include #include "windowsoutpost.h" void gtkw_dialog_info(GtkWidget * parent, const ustring & info) { // Create the basic dialog. GtkWidget *dialog = gtk_message_dialog_new(GTK_WINDOW(parent), GtkDialogFlags(GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT), GTK_MESSAGE_INFO, GTK_BUTTONS_OK, "%s", info.c_str()); // Add cancel button so that pressing the Escape button will also close the window, // but hide this button so it's not visible, but Escape remains working. GtkWidget *cancel = gtk_dialog_add_button(GTK_DIALOG(dialog), "", GTK_RESPONSE_CANCEL); gtk_widget_hide(cancel); // Run dialog. gtk_dialog_run(GTK_DIALOG(dialog)); // After through, destroy it. gtk_widget_destroy(dialog); } int gtkw_dialog_question(GtkWidget * parent, const ustring & question, int default_response) { int result; GtkWidget *dialog = gtk_message_dialog_new(GTK_WINDOW(parent), GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_QUESTION, GTK_BUTTONS_YES_NO, "%s", question.c_str()); if (default_response != GTK_RESPONSE_NO) gtk_dialog_set_default_response(GTK_DIALOG(dialog), default_response); result = gtk_dialog_run(GTK_DIALOG(dialog)); gtk_widget_destroy(dialog); return result; } void gtkw_dialog_error(GtkWidget * parent, const ustring & error) { GtkWidget *dialog = gtk_message_dialog_new(GTK_WINDOW(parent), GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_ERROR, GTK_BUTTONS_OK, "%s", error.c_str()); gtk_dialog_run(GTK_DIALOG(dialog)); gtk_widget_destroy(dialog); } void gtkw_dialog_warning(GtkWidget * parent, const ustring & warning) { GtkWidget *dialog = gtk_message_dialog_new(GTK_WINDOW(parent), GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_WARNING, GTK_BUTTONS_OK, "%s", warning.c_str()); gtk_dialog_run(GTK_DIALOG(dialog)); gtk_widget_destroy(dialog); } ustring gtkw_file_chooser_select_folder(GtkWidget * parent, const ustring & title, const ustring & directory) // Allows user to select a folder. // parent: window will be centered on parent, or NULL. // title: If given, will be title for the dialog. // directory: If given, will be directory selected by default. // Returns the folder selected, or is empty if no selection was made. { // Initialize variables. ustring selection; ustring mytitle(title); if (mytitle.empty()) mytitle = "Select a folder"; ustring mydirectory(directory); if (mydirectory.empty()) mydirectory = g_get_home_dir(); mydirectory.append(G_DIR_SEPARATOR_S); // Create dialog. GtkWidget *dialog; dialog = gtk_file_chooser_dialog_new(mytitle.c_str(), GTK_WINDOW(parent), GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT, NULL); gtk_file_chooser_set_filename(GTK_FILE_CHOOSER(dialog), mydirectory.c_str()); if (directory.empty()) { gtk_file_chooser_set_current_folder (GTK_FILE_CHOOSER (dialog), g_get_home_dir()); } // Run dialog. if (gtk_dialog_run(GTK_DIALOG(dialog)) == GTK_RESPONSE_ACCEPT) { selection = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(dialog)); } // Destroy dialog gtk_widget_destroy(dialog); // Return selection. return selection; } ustring gtkw_file_chooser_open(GtkWidget * parent, const ustring & title, const ustring & file) // Allows the user to select a file. // parent: window will be centered on parent, or NULL. // title: If given, will be title for the dialog. // file: If given, will be file selected by default. // Returns the file that was selected, or is empty if no selection was made. { // Initialize variables. ustring selection; ustring mytitle(title); if (mytitle.empty()) mytitle = "Select a file"; ustring myfile(file); if (myfile.empty()) myfile = g_get_home_dir(); // Create dialog. GtkWidget *dialog; dialog = gtk_file_chooser_dialog_new(mytitle.c_str(), GTK_WINDOW(parent), GTK_FILE_CHOOSER_ACTION_OPEN, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT, NULL); gtk_file_chooser_set_filename(GTK_FILE_CHOOSER(dialog), myfile.c_str()); if (file.empty()) { gtk_file_chooser_set_current_folder (GTK_FILE_CHOOSER (dialog), g_get_home_dir()); } // Run dialog. if (gtk_dialog_run(GTK_DIALOG(dialog)) == GTK_RESPONSE_ACCEPT) { selection = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(dialog)); } // Destroy dialog gtk_widget_destroy(dialog); // Return selection. return selection; } vector < ustring > gtkw_file_chooser_open_multiple(GtkWidget * parent, const ustring & title, ustring directory) // Allows the user to select multiple files. // parent: window will be centered on parent, or NULL. // title: If given, will be title for the dialog. // directory: If given, will be the directory to look in. // Returns the files that were selected, or is empty if no selection was made. { // Initialize variables. vector < ustring > selection; ustring mytitle(title); if (mytitle.empty()) mytitle = "Select a file"; // Create dialog. GtkWidget *dialog; dialog = gtk_file_chooser_dialog_new(mytitle.c_str(), GTK_WINDOW(parent), GTK_FILE_CHOOSER_ACTION_OPEN, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT, NULL); if (directory.empty()) directory = g_get_home_dir(); gtk_file_chooser_set_current_folder(GTK_FILE_CHOOSER(dialog), directory.c_str()); gtk_file_chooser_set_select_multiple(GTK_FILE_CHOOSER(dialog), true); // Run dialog. if (gtk_dialog_run(GTK_DIALOG(dialog)) == GTK_RESPONSE_ACCEPT) { GSList *filenames1 = gtk_file_chooser_get_filenames(GTK_FILE_CHOOSER(dialog)); GSList *filenames2 = filenames1; while (filenames1) { selection.push_back((gchar *) filenames1->data); g_free(filenames1->data); filenames1 = filenames1->next; } g_slist_free(filenames2); } // Destroy dialog gtk_widget_destroy(dialog); // Return selection. return selection; } ustring gtkw_file_chooser_save(GtkWidget * parent, const ustring & title, const ustring & file) // Allows the user to save to file. // parent: window will be centered on parent, or NULL. // title: If given, will be title for the dialog. // file: If given, will be file saved to by default. // Returns the file that was selected, or is empty if no selection was made. { ustring selection; ustring mytitle(title); if (mytitle.empty()) mytitle = "Save to file"; ustring myfile(file); GtkWidget *dialog; dialog = gtk_file_chooser_dialog_new(mytitle.c_str(), GTK_WINDOW(parent), GTK_FILE_CHOOSER_ACTION_SAVE, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, GTK_STOCK_SAVE, GTK_RESPONSE_ACCEPT, NULL); gtk_file_chooser_set_filename(GTK_FILE_CHOOSER(dialog), myfile.c_str()); if (myfile.empty()) { gtk_file_chooser_set_current_folder (GTK_FILE_CHOOSER (dialog), g_get_home_dir()); } if (gtk_dialog_run(GTK_DIALOG(dialog)) == GTK_RESPONSE_ACCEPT) { selection = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(dialog)); } gtk_widget_destroy(dialog); return selection; } void gtkw_show_uri (ustring uri, bool internet) { ustring prefix; if (internet) prefix = "http://"; else prefix = "file://"; uri = prefix + uri; // Handle if Windows. #ifdef WIN32 windowsoutpost_open_url(uri); return; #endif // Handle Unix. GError *error = NULL; if (!gtk_show_uri (NULL, uri.c_str(), GDK_CURRENT_TIME, &error)) { ustring message = "Trying to opening " + uri + ": " + error->message; cerr << message << endl; gtkw_dialog_error(NULL, message); g_error_free(error); } } bibledit-gtk-4.9/src/gtkwrappers.h000664 000766 000024 00000003227 12221507146 017372 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_GTKWRAPPERS_H #define INCLUDED_GTKWRAPPERS_H #include "libraries.h" #include void gtkw_dialog_info (GtkWidget * parent, const ustring& info); int gtkw_dialog_question (GtkWidget * parent, const ustring& question, int default_response = GTK_RESPONSE_NO); void gtkw_dialog_error (GtkWidget * parent, const ustring& error); void gtkw_dialog_warning (GtkWidget * parent, const ustring& warning); ustring gtkw_file_chooser_select_folder (GtkWidget * parent, const ustring& title, const ustring& directory); ustring gtkw_file_chooser_open (GtkWidget * parent, const ustring& title, const ustring& file); vector gtkw_file_chooser_open_multiple (GtkWidget * parent, const ustring& title, ustring directory); ustring gtkw_file_chooser_save (GtkWidget * parent, const ustring& title, const ustring& file); void gtkw_show_uri (ustring uri, bool internet = false); #endif bibledit-gtk-4.9/src/gui.cpp000664 000766 000024 00000012612 12221507140 016130 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "gui.h" #include "gtkwrappers.h" #include "settings.h" #include "projectutils.h" #include "books.h" #include "utilities.h" #include "tiny_utilities.h" void gui_okay(GtkWidget * image, GtkWidget * label, bool ok) // Sets image and text in the GUI whether things are okay or not. { if (ok) { gtk_image_set_from_stock(GTK_IMAGE(image), "gtk-yes", GTK_ICON_SIZE_BUTTON); gtk_label_set_text(GTK_LABEL(label), "Done:"); } else { gtk_image_set_from_stock(GTK_IMAGE(image), "gtk-dialog-warning", GTK_ICON_SIZE_BUTTON); gtk_label_set_text(GTK_LABEL(label), "To do:"); } } bool gui_double_question(GtkWidget * parent, ustring question1, ustring question2) // Returns true only if the user replies "Yes" to both questions. { if (question1.empty()) question1 = "Are you sure you wish to make the changes?"; if (gtkw_dialog_question(parent, question1.c_str()) == GTK_RESPONSE_NO) return false; if (question2.empty()) question2 = "This will permanently modify your data.\n" "The changes cannot be undone easily.\n" "Are you sure?"; if (gtkw_dialog_question(parent, question2.c_str()) == GTK_RESPONSE_NO) return false; return true; } ustring gui_book_selection_information(const ustring & project) /* Returns text to be displayed typically beside the "select books" button. The text contains a bit of information about the current selection. It returns a maximum of three units, e.g.: No books (1 unit) John, Hebrew (2 units) Genesis, Exodus, Leviticus (3 units) Old Testament, Mark (2 units) etc. */ { // Settings extern Settings *settings; // Language. ProjectConfiguration *projectconfig = settings->projectconfig(project); ustring language = projectconfig->language_get(); // Storage for the units. vector < ustring > units; // Message to return. ustring message; // Deal with empty selection. set < unsigned int >selection = settings->session.selected_books; if (selection.empty()) { message = "No books"; return message; } // See whether OT / NT is in the selection. /* At first it only gave "Old Testament" and/or "New Testament" when all 39 and/or 27 books were there. But it was preferrable that e.g. "Old Testament" would be given, not only when the whole OT was there, but also when all OT books that are currently in the project were there. E.g. if the project contains Genesis and Exodus, and both are selected, it should also give "Old Testament". */ vector < unsigned int >selectable_books = project_get_books(project); // Is the OT in the selection? And the NT? unsigned int selectable_ot_books = 0; unsigned int selectable_nt_books = 0; for (unsigned int i = 0; i < selectable_books.size(); i++) { BookType type = books_id_to_type(selectable_books[i]); if (type == btOldTestament) selectable_ot_books++; if (type == btNewTestament) selectable_nt_books++; } unsigned int selected_ot_books = 0; vector < unsigned int >ot_ids = books_type_to_ids(btOldTestament); for (unsigned int i = 0; i < ot_ids.size(); i++) { if (selection.find(ot_ids[i]) != selection.end()) selected_ot_books++; } if ((selected_ot_books > 1) && (selectable_ot_books == selected_ot_books)) { units.push_back("Old Testament"); for (unsigned int i = 0; i < ot_ids.size(); i++) { set < unsigned int >::iterator iter; iter = selection.find(ot_ids[i]); if (iter != selection.end()) selection.erase(iter); } } unsigned int selected_nt_books = 0; vector < unsigned int >nt_ids = books_type_to_ids(btNewTestament); for (unsigned int i = 0; i < nt_ids.size(); i++) { if (selection.find(nt_ids[i]) != selection.end()) selected_nt_books++; } if ((selected_nt_books > 1) && (selectable_nt_books == selected_nt_books)) { units.push_back("New Testament"); for (unsigned int i = 0; i < nt_ids.size(); i++) { set < unsigned int >::iterator iter; iter = selection.find(nt_ids[i]); if (iter != selection.end()) selection.erase(iter); } } // Deal with any remaining books. if ((selection.size() + units.size()) > 3) { units.push_back(convert_to_string(int (selection.size())) + " books"); } else { vector < unsigned int >all_ids = books_type_to_ids(btUnknown); for (unsigned int i = 0; i < all_ids.size(); i++) { if (selection.find(all_ids[i]) != selection.end()) { units.push_back(books_id_to_name(language, all_ids[i])); } } } // Assemble the message. for (unsigned int i = 0; i < units.size(); i++) { if (!message.empty()) message.append(" + "); message.append(units[i]); } return message; } bibledit-gtk-4.9/src/gui.h000664 000766 000024 00000002112 12221507137 015575 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_GUI_H #define INCLUDED_GUI_H #include "libraries.h" #include void gui_okay (GtkWidget * image, GtkWidget * label, bool ok); bool gui_double_question (GtkWidget * parent, ustring question1, ustring question2); ustring gui_book_selection_information (const ustring& project); #endif bibledit-gtk-4.9/src/gui_display_changes.cpp000664 000766 000024 00000011163 12221507145 021352 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "gui_display_changes.h" #include "constants.h" #include "tiny_utilities.h" DisplayChangesGui::DisplayChangesGui(GtkWidget * box) // Creates a GUI that displays changes on the screen. // box: the parent box where it goes in. { vbox = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox); gtk_box_pack_start(GTK_BOX(box), vbox, TRUE, TRUE, 0); label = gtk_label_new_with_mnemonic(""); gtk_widget_show(label); gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 0); scrolledwindow = gtk_scrolled_window_new(NULL, NULL); gtk_widget_show(scrolledwindow); gtk_box_pack_start(GTK_BOX(vbox), scrolledwindow, TRUE, TRUE, 0); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scrolledwindow), GTK_SHADOW_IN); textview = gtk_text_view_new(); gtk_widget_show(textview); gtk_container_add(GTK_CONTAINER(scrolledwindow), textview); gtk_text_view_set_accepts_tab(GTK_TEXT_VIEW(textview), FALSE); gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(textview), GTK_WRAP_WORD); // Create tags. textbuffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(textview)); heavy_weight_tag = gtk_text_buffer_create_tag(textbuffer, NULL, "weight", PANGO_WEIGHT_HEAVY, "background", "hot pink", NULL); strike_through_tag = gtk_text_buffer_create_tag(textbuffer, NULL, "strikethrough", TRUE, "background", "hot pink", NULL); } DisplayChangesGui::~DisplayChangesGui() { gtk_widget_destroy (vbox); } void DisplayChangesGui::display(const vector & differences) { // Store position of scrollled window. GtkAdjustment * adjustment = gtk_scrolled_window_get_vadjustment (GTK_SCROLLED_WINDOW (scrolledwindow)); int scrollbar_position = gtk_adjustment_get_value (adjustment); // Variable for holding the number of modifications. unsigned int modification_count = 0; // Temporally removing the view from the buffer speeds loading text up a huge lot. g_object_ref(textbuffer); gtk_text_view_set_buffer(GTK_TEXT_VIEW(textview), NULL); // Clear buffer. clear(); // Load text. for (unsigned int i = 0; i < differences.size(); i++) { GtkTextIter iter; GtkTextTag *tag = NULL; ustring line = differences[i]; while (!line.empty()) { // Handle insertion or deletion flag for the next character. tag = NULL; ustring character = line.substr (0, 1); if (!strcmp (character.c_str(), INSERTION_FLAG)) { tag = heavy_weight_tag; } if (!strcmp (character.c_str(), DELETION_FLAG)) { tag = strike_through_tag; } if (tag) { line.erase (0, 1); // Another modification. modification_count++; } // Print one character with optional markup. character = line.substr (0, 1); gtk_text_buffer_get_end_iter(textbuffer, &iter); gtk_text_buffer_insert_with_tags(textbuffer, &iter, character.c_str(), -1, tag, NULL); line.erase(0, 1); } // End of line. gtk_text_buffer_get_end_iter(textbuffer, &iter); gtk_text_buffer_insert(textbuffer, &iter, "\n", 1); } // Reconnect the view to the buffer. gtk_text_view_set_buffer(GTK_TEXT_VIEW(textview), textbuffer); g_object_unref(textbuffer); // Show modification count. ustring message = "Number of modifications: "; message.append (convert_to_string (modification_count)); gtk_label_set_text (GTK_LABEL (label), message.c_str()); // Restore scrollled window's position. // The window will then show the same block of text as before loading. This makes editing the text easier. while (gtk_events_pending()) gtk_main_iteration(); gtk_scrolled_window_get_vadjustment (GTK_SCROLLED_WINDOW (scrolledwindow)); gtk_adjustment_set_value (adjustment, scrollbar_position); } void DisplayChangesGui::clear() { gtk_text_buffer_set_text(textbuffer, "", 0); } bibledit-gtk-4.9/src/gui_display_changes.h000664 000766 000024 00000002401 12221507147 021014 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_GUI_DISPLAY_CHANGES_H #define INCLUDED_GUI_DISPLAY_CHANGES_H #include #include "ustring.h" class DisplayChangesGui { public: DisplayChangesGui (GtkWidget * box); ~DisplayChangesGui (); void display (const vector & differences); void clear(); GtkWidget *textview; private: GtkWidget *vbox; GtkWidget *label; GtkWidget *scrolledwindow; GtkTextBuffer *textbuffer; GtkTextTag *heavy_weight_tag; GtkTextTag *strike_through_tag; }; #endif bibledit-gtk-4.9/src/gui_features.cpp000664 000766 000024 00000005455 12221507145 020042 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "gui_features.h" #include "settings.h" #include "utilities.h" GuiFeatures::GuiFeatures(int dummy) { // Get features variables. extern Settings *settings; ustring pattern = settings->genconfig.features_list_get(); b_basics = settings->genconfig.features_mode_get() == 0; b_full = settings->genconfig.features_mode_get() == 1; // The order of this pattern handling should agree to the order used in the features dialog source. b_printing = bitpattern_take(pattern); b_project_management = bitpattern_take(pattern); b_references_management = bitpattern_take(pattern); b_styles = bitpattern_take(pattern); b_styles_management = bitpattern_take(pattern); b_project_notes = bitpattern_take(pattern); b_project_notes_management = bitpattern_take(pattern); b_references_and_find = bitpattern_take(pattern); b_replace = bitpattern_take(pattern); b_checks = bitpattern_take(pattern); b_tools = bitpattern_take(pattern); b_preferences = bitpattern_take(pattern); } bool GuiFeatures::printing() { return !b_basics && (b_full || b_printing); } bool GuiFeatures::project_management() { return !b_basics && (b_full || b_project_management); } bool GuiFeatures::references_management() { return !b_basics && (b_full || b_references_management); } bool GuiFeatures::styles() { return !b_basics && (b_full || b_styles); } bool GuiFeatures::styles_management() { return !b_basics && (b_full || b_styles_management); } bool GuiFeatures::project_notes() { return !b_basics && (b_full || b_project_notes); } bool GuiFeatures::project_notes_management() { return !b_basics && (b_full || b_project_notes_management); } bool GuiFeatures::references_and_find() { return !b_basics && (b_full || b_references_and_find); } bool GuiFeatures::replace() { return !b_basics && (b_full || b_replace); } bool GuiFeatures::checks() { return !b_basics && (b_full || b_checks); } bool GuiFeatures::tools() { return !b_basics && (b_full || b_tools); } bool GuiFeatures::preferences() { return !b_basics && (b_full || b_preferences); } bibledit-gtk-4.9/src/gui_features.h000664 000766 000024 00000003037 12221507143 017477 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_GUI_FEATURES_H #define INCLUDED_GUI_FEATURES_H #include "libraries.h" class GuiFeatures { public: GuiFeatures(int dummy); bool printing(); bool project_management(); bool references_management(); bool styles(); bool styles_management(); bool project_notes(); bool project_notes_management(); bool references_and_find(); bool replace(); bool checks(); bool tools(); bool preferences(); private: bool b_basics; bool b_full; bool b_printing; bool b_project_management; bool b_references_management; bool b_styles; bool b_styles_management; bool b_project_notes; bool b_project_notes_management; bool b_references_and_find; bool b_replace; bool b_checks; bool b_tools; bool b_preferences; }; #endif bibledit-gtk-4.9/src/gui_navigation.cpp000664 000766 000024 00000101437 12221507146 020361 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "utilities.h" #include #include "gui_navigation.h" #include "combobox.h" #include "settings.h" #include "books.h" #include "projectutils.h" #include "gtkwrappers.h" #include "bible.h" #include "gwrappers.h" #include "tiny_utilities.h" #include "referencememory.h" #include "dialogradiobutton.h" GuiNavigation::GuiNavigation(int dummy): reference(0), track(0) { // Initialize variables. settingcombos = false; spinbutton_book_previous_value = 0; spinbutton_chapter_previous_value = 0; spinbutton_verse_previous_value = 0; delayer_event_id = 0; track_event_id = 0; } GuiNavigation::~GuiNavigation() { } void GuiNavigation::build(GtkWidget * toolbar) { // Signalling buttons, but not visible. GtkToolItem *toolitem_delayed = gtk_tool_item_new(); gtk_toolbar_insert(GTK_TOOLBAR(toolbar), GTK_TOOL_ITEM(toolitem_delayed), -1); new_reference_signal = gtk_button_new(); gtk_container_add(GTK_CONTAINER(toolitem_delayed), new_reference_signal); // Gui proper. GtkToolItem *toolitem_list_back = gtk_tool_item_new (); gtk_widget_show (GTK_WIDGET(toolitem_list_back)); gtk_toolbar_insert(GTK_TOOLBAR(toolbar), GTK_TOOL_ITEM(toolitem_list_back), -1); button_list_back = gtk_button_new (); gtk_widget_show (button_list_back); gtk_container_add (GTK_CONTAINER (toolitem_list_back), button_list_back); gtk_widget_set_can_focus (button_list_back, false); image_list_back = gtk_image_new_from_stock ("gtk-go-down", GTK_ICON_SIZE_BUTTON); gtk_widget_show (image_list_back); gtk_container_add (GTK_CONTAINER (button_list_back), image_list_back); GtkToolItem *toolitem1 = gtk_tool_item_new(); gtk_widget_show(GTK_WIDGET(toolitem1)); gtk_toolbar_insert(GTK_TOOLBAR(toolbar), GTK_TOOL_ITEM(toolitem1), -1); button_back = gtk_button_new(); gtk_widget_show(button_back); gtk_container_add(GTK_CONTAINER(toolitem1), button_back); gtk_widget_set_can_focus (button_back, false); image1 = gtk_image_new_from_stock("gtk-go-back", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image1); gtk_container_add(GTK_CONTAINER(button_back), image1); GtkToolItem *toolitem2 = gtk_tool_item_new(); gtk_widget_show(GTK_WIDGET(toolitem2)); gtk_toolbar_insert(GTK_TOOLBAR(toolbar), GTK_TOOL_ITEM(toolitem2), -1); button_forward = gtk_button_new(); gtk_widget_show(button_forward); gtk_container_add(GTK_CONTAINER(toolitem2), button_forward); gtk_widget_set_can_focus (button_forward, false); image2 = gtk_image_new_from_stock("gtk-go-forward", GTK_ICON_SIZE_BUTTON); gtk_widget_show(image2); gtk_container_add(GTK_CONTAINER(button_forward), image2); GtkToolItem *toolitem_list_forward = gtk_tool_item_new (); gtk_widget_show (GTK_WIDGET(toolitem_list_forward)); gtk_toolbar_insert(GTK_TOOLBAR(toolbar), GTK_TOOL_ITEM(toolitem_list_forward), -1); button_list_forward = gtk_button_new (); gtk_widget_show (button_list_forward); gtk_container_add (GTK_CONTAINER (toolitem_list_forward), button_list_forward); gtk_widget_set_can_focus (button_list_forward, false); image_list_forward = gtk_image_new_from_stock ("gtk-go-down", GTK_ICON_SIZE_BUTTON); gtk_widget_show (image_list_forward); gtk_container_add (GTK_CONTAINER (button_list_forward), image_list_forward); GtkToolItem *toolitem3 = gtk_tool_item_new(); gtk_widget_show(GTK_WIDGET(toolitem3)); gtk_toolbar_insert(GTK_TOOLBAR(toolbar), GTK_TOOL_ITEM(toolitem3), -1); combo_book = gtk_combo_box_new_text(); gtk_widget_show(combo_book); gtk_container_add(GTK_CONTAINER(toolitem3), combo_book); gtk_widget_set_can_focus (combo_book, false); GtkToolItem *toolitem4 = gtk_tool_item_new(); gtk_widget_show(GTK_WIDGET(toolitem4)); gtk_toolbar_insert(GTK_TOOLBAR(toolbar), GTK_TOOL_ITEM(toolitem4), -1); spinbutton_book_adj = gtk_adjustment_new(0, -1e+06, 1e+06, 1, 10, 0); spinbutton_book = gtk_spin_button_new(GTK_ADJUSTMENT(spinbutton_book_adj), 1, 0); gtk_widget_show(spinbutton_book); gtk_container_add(GTK_CONTAINER(toolitem4), spinbutton_book); gtk_spin_button_set_numeric(GTK_SPIN_BUTTON(spinbutton_book), TRUE); gtk_editable_set_editable(GTK_EDITABLE(spinbutton_book), false); gtk_entry_set_visibility(GTK_ENTRY(spinbutton_book), false); gtk_entry_set_invisible_char(GTK_ENTRY(spinbutton_book), 0); gtk_entry_set_width_chars(GTK_ENTRY(spinbutton_book), 0); gtk_widget_set_can_focus (spinbutton_book, false); GtkToolItem *toolitem6 = gtk_tool_item_new(); gtk_widget_show(GTK_WIDGET(toolitem6)); gtk_toolbar_insert(GTK_TOOLBAR(toolbar), GTK_TOOL_ITEM(toolitem6), -1); combo_chapter = gtk_combo_box_new_text(); gtk_widget_show(combo_chapter); gtk_container_add(GTK_CONTAINER(toolitem6), combo_chapter); gtk_widget_set_can_focus (combo_chapter, false); GtkToolItem *toolitem5 = gtk_tool_item_new(); gtk_widget_show(GTK_WIDGET(toolitem5)); gtk_toolbar_insert(GTK_TOOLBAR(toolbar), GTK_TOOL_ITEM(toolitem5), -1); spinbutton_chapter_adj = gtk_adjustment_new(0, -1e+06, 1e+06, 1, 10, 0); spinbutton_chapter = gtk_spin_button_new(GTK_ADJUSTMENT(spinbutton_chapter_adj), 1, 0); gtk_widget_show(spinbutton_chapter); gtk_container_add(GTK_CONTAINER(toolitem5), spinbutton_chapter); gtk_spin_button_set_numeric(GTK_SPIN_BUTTON(spinbutton_chapter), TRUE); gtk_editable_set_editable(GTK_EDITABLE(spinbutton_chapter), false); gtk_entry_set_visibility(GTK_ENTRY(spinbutton_chapter), false); gtk_entry_set_invisible_char(GTK_ENTRY(spinbutton_chapter), 0); gtk_entry_set_width_chars(GTK_ENTRY(spinbutton_chapter), 0); gtk_widget_set_can_focus (spinbutton_chapter, false); GtkToolItem *toolitem8 = gtk_tool_item_new(); gtk_widget_show(GTK_WIDGET(toolitem8)); gtk_toolbar_insert(GTK_TOOLBAR(toolbar), GTK_TOOL_ITEM(toolitem8), -1); combo_verse = gtk_combo_box_new_text(); gtk_widget_show(combo_verse); gtk_container_add(GTK_CONTAINER(toolitem8), combo_verse); gtk_widget_set_can_focus (combo_verse, false); GtkToolItem *toolitem7 = gtk_tool_item_new(); gtk_widget_show(GTK_WIDGET(toolitem7)); gtk_toolbar_insert(GTK_TOOLBAR(toolbar), GTK_TOOL_ITEM(toolitem7), -1); spinbutton_verse_adj = gtk_adjustment_new(0, -1e+06, 1e+06, 1, 10, 0); spinbutton_verse = gtk_spin_button_new(GTK_ADJUSTMENT(spinbutton_verse_adj), 1, 0); gtk_widget_show(spinbutton_verse); gtk_container_add(GTK_CONTAINER(toolitem7), spinbutton_verse); gtk_spin_button_set_numeric(GTK_SPIN_BUTTON(spinbutton_verse), TRUE); gtk_editable_set_editable(GTK_EDITABLE(spinbutton_verse), false); gtk_entry_set_visibility(GTK_ENTRY(spinbutton_verse), false); gtk_entry_set_invisible_char(GTK_ENTRY(spinbutton_verse), 0); gtk_entry_set_width_chars(GTK_ENTRY(spinbutton_verse), 0); gtk_widget_set_can_focus (spinbutton_verse, false); // Resize the spinbuttons. gint defaultheight; GtkRequisition sizerequisition; gtk_widget_size_request(combo_verse, &sizerequisition); defaultheight = (int)(sizerequisition.height * 0.8); gtk_widget_set_size_request(spinbutton_book, int (defaultheight * 0.7), -1); gtk_widget_set_size_request(spinbutton_chapter, int (defaultheight * 0.7), -1); gtk_widget_set_size_request(spinbutton_verse, int (defaultheight * 0.7), -1); g_signal_connect((gpointer) button_list_back, "clicked", G_CALLBACK(on_button_list_back_clicked), gpointer(this)); g_signal_connect((gpointer) button_back, "clicked", G_CALLBACK(on_button_back_clicked), gpointer(this)); g_signal_connect((gpointer) button_forward, "clicked", G_CALLBACK(on_button_forward_clicked), gpointer(this)); g_signal_connect((gpointer) button_list_forward, "clicked", G_CALLBACK(on_button_list_forward_clicked), gpointer(this)); g_signal_connect((gpointer) combo_book, "changed", G_CALLBACK(on_combo_book_changed), gpointer(this)); g_signal_connect((gpointer) spinbutton_book, "value_changed", G_CALLBACK(on_spinbutton_book_value_changed), gpointer(this)); g_signal_connect((gpointer) combo_chapter, "changed", G_CALLBACK(on_combo_chapter_changed), gpointer(this)); g_signal_connect((gpointer) spinbutton_chapter, "value_changed", G_CALLBACK(on_spinbutton_chapter_value_changed), gpointer(this)); g_signal_connect((gpointer) combo_verse, "changed", G_CALLBACK(on_combo_verse_changed), gpointer(this)); g_signal_connect((gpointer) spinbutton_verse, "value_changed", G_CALLBACK(on_spinbutton_verse_value_changed), gpointer(this)); } void GuiNavigation::sensitive(bool sensitive) { // Tracker. if (!sensitive) track.clear(); tracker_sensitivity(); // Set the sensitivity of the reference controls. gtk_widget_set_sensitive(combo_book, sensitive); gtk_widget_set_sensitive(spinbutton_book, sensitive); gtk_widget_set_sensitive(combo_chapter, sensitive); gtk_widget_set_sensitive(spinbutton_chapter, sensitive); gtk_widget_set_sensitive(combo_verse, sensitive); gtk_widget_set_sensitive(spinbutton_verse, sensitive); if (!sensitive) { // We are programatically going to change the comboboxes, // and therefore don't want a signal during that operation. settingcombos = true; project.clear(); gtk_combo_box_set_active(GTK_COMBO_BOX(combo_book), -1); gtk_combo_box_set_active(GTK_COMBO_BOX(combo_chapter), -1); gtk_combo_box_set_active(GTK_COMBO_BOX(combo_verse), -1); settingcombos = false; } } void GuiNavigation::set_project(const ustring & value, bool force) // Sets the project of the object, and loads the books. { // If the project is the same as the one already loaded, bail out. // Except when force is used. if (!force) if (value == project) return; // Save project, language. project = value; extern Settings *settings; ProjectConfiguration *projectconfig = settings->projectconfig(project); language = projectconfig->language_get(); // Load books. load_books(); } void GuiNavigation::clampref(Reference & reference) // This clamps the reference, that is, it brings it within the limits of // the project. { // If the reference exists, fine, bail out. if (reference_exists(reference)) return; // Clamp the book. if (!project_book_exists(project, reference.book)) { vector < unsigned int >books = project_get_books(project); if (books.empty()) { reference.book = 0; } else { reference.book = clamp(reference.book, books[0], books[books.size() - 1]); } } // Clamp the chapter. vector < unsigned int >chapters = project_get_chapters(project, reference.book); set < unsigned int >chapterset(chapters.begin(), chapters.end()); if (chapterset.find(reference.chapter) == chapterset.end()) { reference.chapter = 0; if (!chapters.empty()) reference.chapter = chapters[0]; } // Clamp the verse. vector < ustring > verses = project_get_verses(project, reference.book, reference.chapter); set < ustring > verseset(verses.begin(), verses.end()); if (verseset.find(reference.verse) == verseset.end()) { reference.verse = "0"; if (!verses.empty()) reference.verse = verses[0]; } } void GuiNavigation::display (const Reference & ref) // This has the reference displayed. { // Check whether the book is known to Bibledit. If not, bail out. { ustring bookname = books_id_to_english(ref.book); if (bookname.empty()) return; } // Project configuration. extern Settings *settings; ProjectConfiguration *projectconfig = settings->projectconfig(project); language = projectconfig->language_get(); // Find out if there is a change in book, chapter, verse. unsigned int currentbook = books_name_to_id(language, combobox_get_active_string(combo_book)); bool newbook = (ref.book != currentbook); unsigned int currentchapter = convert_to_int(combobox_get_active_string(combo_chapter)); bool newchapter = (ref.chapter != currentchapter); ustring currentverse = combobox_get_active_string(combo_verse); bool newverse = (ref.verse != currentverse); // If a new book, then there is also a new chapter, and so on. if (newbook) newchapter = true; if (newchapter) newverse = true; // If there is no change in the reference, do nothing. if (!newverse) return; // Handle new book. if (newbook) { set_book(ref.book); load_chapters(ref.book); } // Handle new chapter. if (newchapter) { set_chapter(ref.chapter); load_verses(ref.book, ref.chapter); } // Handle new verse. if (newverse) { set_verse(ref.verse); // Give signal. reference = ref; signal(); } } void GuiNavigation::nextbook() { vector strings = combobox_get_strings(combo_book); if (strings.size() == 0) return; ustring ubook = combobox_get_active_string(combo_book); unsigned int index = 0; for (unsigned int i = 0; i < strings.size(); i++) { if (ubook == strings[i]) index = i; } if (index == (strings.size() - 1)) { return; } reference.book = books_name_to_id(language, strings[++index]); // Consult database for most recent verse and chapter. if (!references_memory_retrieve (reference, false)) { reference.chapter = 1; // Try to get to verse one. vector verses = project_get_verses(project, reference.book, reference.chapter); if (verses.size() > 1) if (verses[0] == "0") reference.verse = verses[1]; else reference.verse = verses[0]; else reference.verse = "0"; } clampref(reference); set_book(reference.book); load_chapters(reference.book); set_chapter(reference.chapter); load_verses(reference.book, reference.chapter); set_verse(reference.verse); signal(); } void GuiNavigation::previousbook() { vector < ustring > strings = combobox_get_strings(combo_book); if (strings.size() == 0) return; ustring ubook = combobox_get_active_string(combo_book); unsigned int index = 0; for (unsigned int i = 0; i < strings.size(); i++) { if (ubook == strings[i]) index = i; } if (index == 0) { return; } reference.book = books_name_to_id(language, strings[--index]); if (!references_memory_retrieve (reference, false)) { reference.chapter = 1; // Get the first verse of the chapter which is not "0". vector verses = project_get_verses(project, reference.book, reference.chapter); if (verses.size() > 1) if (verses[0] == "0") reference.verse = verses[1]; else reference.verse = verses[0]; else reference.verse = "0"; } clampref(reference); set_book(reference.book); load_chapters(reference.book); set_chapter(reference.chapter); load_verses(reference.book, reference.chapter); set_verse(reference.verse); signal(); } void GuiNavigation::nextchapter() { reference.chapter = convert_to_int(combobox_get_active_string(combo_chapter)); vector strings = combobox_get_strings(combo_chapter); if (strings.size() == 0) return; unsigned int index = 0; for (unsigned int i = 0; i < strings.size(); i++) { if (reference.chapter == convert_to_int(strings[i])) index = i; } if (index == (strings.size() - 1)) { crossboundarieschapter(true); return; } reference.chapter = convert_to_int(strings[++index]); if (!references_memory_retrieve (reference, true)) { // Find proper first verse. vector verses = project_get_verses(project, reference.book, reference.chapter); if (verses.size() > 1) reference.verse = verses[1]; else reference.verse = "0"; } clampref(reference); load_verses(reference.book, reference.chapter); set_verse(reference.verse); set_chapter(reference.chapter); signal(); } void GuiNavigation::previouschapter() { reference.chapter = convert_to_int(combobox_get_active_string(combo_chapter)); vector strings = combobox_get_strings(combo_chapter); if (strings.size() == 0) return; unsigned int index = 0; for (unsigned int i = 0; i < strings.size(); i++) { if (reference.chapter == convert_to_int(strings[i])) index = i; } if (index == 0) { crossboundarieschapter(false); return; } reference.chapter = convert_to_int(strings[--index]); if (!references_memory_retrieve (reference, true)) { // Find proper first verse. vector verses = project_get_verses(project, reference.book, reference.chapter); if (verses.size() > 1) reference.verse = verses[1]; else reference.verse = "0"; } clampref(reference); load_verses(reference.book, reference.chapter); set_verse(reference.verse); set_chapter(reference.chapter); signal(); } void GuiNavigation::nextverse() { ustring verse = combobox_get_active_string(combo_verse); vector < ustring > strings = combobox_get_strings(combo_verse); if (strings.size() == 0) return; unsigned int index = 0; for (unsigned int i = 0; i < strings.size(); i++) { if (verse == strings[i]) index = i; } if (index == (strings.size() - 1)) { crossboundariesverse(true); return; } verse = strings[++index]; set_verse(verse); reference.verse = verse; signal(); } void GuiNavigation::previousverse() { ustring verse = combobox_get_active_string(combo_verse); vector < ustring > strings = combobox_get_strings(combo_verse); if (strings.size() == 0) return; unsigned int index = 0; for (unsigned int i = 0; i < strings.size(); i++) { if (verse == strings[i]) index = i; } if (index == 0) { crossboundariesverse(false); return; } verse = strings[--index]; set_verse(verse); reference.verse = verse; signal(); } void GuiNavigation::on_button_list_back_clicked(GtkButton * button, gpointer user_data) { ((GuiNavigation *) user_data)->on_list_back(); } void GuiNavigation::on_button_back_clicked(GtkButton * button, gpointer user_data) { ((GuiNavigation *) user_data)->on_back(); } void GuiNavigation::on_button_forward_clicked(GtkButton * button, gpointer user_data) { ((GuiNavigation *) user_data)->on_forward(); } void GuiNavigation::on_button_list_forward_clicked(GtkButton * button, gpointer user_data) { ((GuiNavigation *) user_data)->on_list_forward(); } void GuiNavigation::on_combo_book_changed(GtkComboBox * combobox, gpointer user_data) { ((GuiNavigation *) user_data)->on_combo_book(); } void GuiNavigation::on_combo_chapter_changed(GtkComboBox * combobox, gpointer user_data) { ((GuiNavigation *) user_data)->on_combo_chapter(); } void GuiNavigation::on_combo_verse_changed(GtkComboBox * combobox, gpointer user_data) { ((GuiNavigation *) user_data)->on_combo_verse(); } void GuiNavigation::on_spinbutton_book_value_changed(GtkSpinButton * spinbutton, gpointer user_data) { ((GuiNavigation *) user_data)->on_spinbutton_book(); } void GuiNavigation::on_spinbutton_chapter_value_changed(GtkSpinButton * spinbutton, gpointer user_data) { ((GuiNavigation *) user_data)->on_spinbutton_chapter(); } void GuiNavigation::on_spinbutton_verse_value_changed(GtkSpinButton * spinbutton, gpointer user_data) { ((GuiNavigation *) user_data)->on_spinbutton_verse(); } void GuiNavigation::on_back() { if (track.previous_reference_available()) { track.get_previous_reference(reference); display(reference); // Don't store this reference in the tracker: signal(false); } } void GuiNavigation::on_forward() { if (track.next_reference_available()) { track.get_next_reference(reference); display(reference); // Don't store this reference in the tracker: signal(false); } } void GuiNavigation::on_combo_book() { if (settingcombos) return; reference.book = books_name_to_id(language, combobox_get_active_string(combo_book)); if (!references_memory_retrieve (reference, false)) { reference.chapter = 1; reference.verse = "1"; } clampref(reference); load_chapters(reference.book); set_chapter(reference.chapter); load_verses(reference.book, reference.chapter); set_verse(reference.verse); signal(); } void GuiNavigation::on_combo_chapter() { if (settingcombos) return; reference.chapter = convert_to_int(combobox_get_active_string(combo_chapter)); if (!references_memory_retrieve (reference, true)) { reference.verse = "1"; } clampref(reference); load_verses(reference.book, reference.chapter); set_verse(reference.verse); signal(); } void GuiNavigation::on_combo_verse() { if (settingcombos) return; reference.verse = combobox_get_active_string(combo_verse); signal(); } void GuiNavigation::on_spinbutton_book() { if (settingcombos) return; int value = int (gtk_adjustment_get_value(GTK_ADJUSTMENT(spinbutton_book_adj))); bool next = (value < spinbutton_book_previous_value); unsigned int amount = abs(value - spinbutton_book_previous_value); for (unsigned int i = 0; i < amount; i++) { if (next) nextbook(); else previousbook(); } spinbutton_book_previous_value = value; } void GuiNavigation::on_spinbutton_chapter() { if (settingcombos) return; int value = int (gtk_adjustment_get_value(GTK_ADJUSTMENT(spinbutton_chapter_adj))); bool next = (value < spinbutton_chapter_previous_value); unsigned int amount = abs(value - spinbutton_chapter_previous_value); for (unsigned int i = 0; i < amount; i++) { if (next) nextchapter(); else previouschapter(); } spinbutton_chapter_previous_value = value; } void GuiNavigation::on_spinbutton_verse() { if (settingcombos) return; int value = int (gtk_adjustment_get_value(GTK_ADJUSTMENT(spinbutton_verse_adj))); bool next = (value < spinbutton_verse_previous_value); unsigned int amount = abs(value - spinbutton_verse_previous_value); for (unsigned int i = 0; i < amount; i++) { if (next) nextverse(); else previousverse(); } spinbutton_verse_previous_value = value; } bool GuiNavigation::reference_exists(Reference & reference) // Returns true if the reference exists. { bool exists = project_book_exists(project, reference.book); if (exists) { vector < unsigned int >chapters = project_get_chapters(project, reference.book); set < unsigned int >chapterset(chapters.begin(), chapters.end()); if (chapterset.find(reference.chapter) == chapterset.end()) { exists = false; } } if (exists) { vector < ustring > verses = project_get_verses(project, reference.book, reference.chapter); set < ustring > verseset(verses.begin(), verses.end()); if (verseset.find(reference.verse) == verseset.end()) { exists = false; } } return exists; } void GuiNavigation::load_books() { settingcombos = true; vector < unsigned int >books = project_get_books(project); vector < ustring > localizedbooks; for (unsigned int i = 0; i < books.size(); i++) { ustring localizedbook = books_id_to_name(language, books[i]); localizedbooks.push_back(localizedbook); } combobox_set_strings(combo_book, localizedbooks); settingcombos = false; } void GuiNavigation::set_book(unsigned int book) { settingcombos = true; ustring localizedbook = books_id_to_name(language, book); combobox_set_string(combo_book, localizedbook); settingcombos = false; } void GuiNavigation::load_chapters(unsigned int book) { settingcombos = true; vector < unsigned int >chapters = project_get_chapters(project, book); combobox_set_strings(combo_chapter, chapters); settingcombos = false; } void GuiNavigation::set_chapter(unsigned int chapter) { settingcombos = true; combobox_set_string(combo_chapter, chapter); settingcombos = false; } void GuiNavigation::load_verses(unsigned int book, unsigned int chapter) { settingcombos = true; vector < ustring > verses = project_get_verses(project, book, chapter); combobox_set_strings(combo_verse, verses); settingcombos = false; } void GuiNavigation::set_verse(const ustring & verse) // Sets the requested verse in the combobox. // If that verse is not there, it searches for ranges or sequences, to see // if the verse is part of those. { // We're going to change the combobox programmatically. settingcombos = true; // Retrieve all verses the combobox has. // If it has our verse, set it, and we're done. bool done = false; vector < ustring > verses = combobox_get_strings(combo_verse); for (unsigned int i = 0; i < verses.size(); i++) { if (verse == verses[i]) { combobox_set_string(combo_verse, verse); done = true; } } // See whether the requested verse is in a range or sequence of verses. unsigned int verse_int = convert_to_int(verse); for (unsigned int i = 0; i < verses.size(); i++) { if (!done) { vector < unsigned int >combined_verses = verse_range_sequence(verses[i]); for (unsigned int i2 = 0; i2 < combined_verses.size(); i2++) { if (verse_int == combined_verses[i2]) { combobox_set_string(combo_verse, verses[i]); done = true; } } } } // We're through changing the combobox programmmatically. settingcombos = false; } void GuiNavigation::signal(bool track) { // Postpone any active delayed signal. gw_destroy_source(delayer_event_id); // Start the time out for the delayed signal. delayer_event_id = g_timeout_add_full(G_PRIORITY_DEFAULT, 100, GSourceFunc(signal_delayer), gpointer(this), NULL); // Same thing again for the tracker signal. // This signal has a delay of some seconds, so that, // if a reference is displaying for some seconds, it will be tracked. // References that display for a shorter time will not be tracked. gw_destroy_source(track_event_id); if (track) { track_event_id = g_timeout_add_full(G_PRIORITY_DEFAULT, 2000, GSourceFunc(signal_track), gpointer(this), NULL); } // Sensitivity of tracker controls. tracker_sensitivity(); // Store the reference in the references memory, if enabled. extern Settings * settings; if (settings->genconfig.remember_verse_per_chapter_get()) { references_memory_store (reference); } } bool GuiNavigation::signal_delayer(gpointer user_data) { ((GuiNavigation *) user_data)->signal_delayed(); return false; } void GuiNavigation::signal_delayed() { gtk_button_clicked(GTK_BUTTON(new_reference_signal)); } bool GuiNavigation::signal_track(gpointer user_data) { ((GuiNavigation *) user_data)->signal_tracking(); return false; } void GuiNavigation::signal_tracking() { track.store(reference); } void GuiNavigation::crossboundariesverse(bool forward) // Handles the situation where a requested change in a verse needs to cross // the boundaries of a book or a chapter. { // Index of the currently opened book. int bookindex = -1; vector < unsigned int >allbooks = project_get_books(project); for (unsigned int i = 0; i < allbooks.size(); i++) { if (reference.book == allbooks[i]) bookindex = i; } // If the requested book does not exist, bail out. if (bookindex < 0) { return; } // Get the previous book, and the next book. int previousbookindex = bookindex - 1; previousbookindex = clamp(previousbookindex, 0, bookindex); unsigned int nextbookindex = bookindex + 1; nextbookindex = clamp(nextbookindex, 0, allbooks.size() - 1); // Get a list of all references in these on the most three books. vector < unsigned int >books; vector < unsigned int >chapters; vector < ustring > verses; for (unsigned int i = previousbookindex; i <= nextbookindex; i++) { // Get the book metrics. vector < unsigned int >bookchapters = project_get_chapters(project, allbooks[i]); for (unsigned int i2 = 0; i2 < bookchapters.size(); i2++) { vector < ustring > chapterverses = project_get_verses(project, allbooks[i], bookchapters[i2]); for (unsigned int i3 = 0; i3 < chapterverses.size(); i3++) { books.push_back(allbooks[i]); chapters.push_back(bookchapters[i2]); verses.push_back(chapterverses[i3]); } } } // Find the current reference in the list. ustring verse = reference.verse; unsigned int referenceindex = 0; for (unsigned int i = 0; i < books.size(); i++) { if (verse == verses[i]) { if (reference.chapter == chapters[i]) { if (reference.book == books[i]) { referenceindex = i; break; } } } } // Get the next or previous value. if (forward) { if (referenceindex == (chapters.size() - 1)) return; referenceindex++; } else { if (referenceindex == 0) return; referenceindex--; } // Ok, give us the new values. reference.book = books[referenceindex]; reference.chapter = chapters[referenceindex]; reference.verse = verses[referenceindex]; // Set the values in the comboboxes, and signal a change. set_book(reference.book); load_chapters(reference.book); set_chapter(reference.chapter); load_verses(reference.book, reference.chapter); set_verse(reference.verse); signal(); } void GuiNavigation::crossboundarieschapter(bool forward) { // Index of the currently opened book. int bookindex = -1; vector < unsigned int >allbooks = project_get_books(project); for (unsigned int i = 0; i < allbooks.size(); i++) { if (reference.book == allbooks[i]) bookindex = i; } // If the requested book does not exist, bail out. if (bookindex < 0) { return; } // Get the previous book, and the next book. int previousbookindex = bookindex - 1; previousbookindex = clamp(previousbookindex, 0, bookindex); unsigned int nextbookindex = bookindex + 1; nextbookindex = clamp(nextbookindex, 0, allbooks.size() - 1); // Get a list of all references in these on the most three books. vector < unsigned int >books; vector < unsigned int >chapters; vector < ustring > first_verses; for (unsigned int i = previousbookindex; i <= nextbookindex; i++) { // Get the book metrics. vector < unsigned int >bookchapters = project_get_chapters(project, allbooks[i]); for (unsigned int i2 = 0; i2 < bookchapters.size(); i2++) { books.push_back(allbooks[i]); chapters.push_back(bookchapters[i2]); vector < ustring > chapterverses = project_get_verses(project, allbooks[i], bookchapters[i2]); // We take the first verse of each chapter, if available, else we take v 0. if (chapterverses.size() > 1) first_verses.push_back(chapterverses[1]); else first_verses.push_back(chapterverses[0]); } } // Find the current reference in the list. unsigned int referenceindex = 0; for (unsigned int i = 0; i < books.size(); i++) { if (reference.chapter == chapters[i]) { if (reference.book == books[i]) { referenceindex = i; break; } } } // Get the next or previous value. if (forward) { if (referenceindex == (chapters.size() - 1)) return; referenceindex++; } else { if (referenceindex == 0) return; referenceindex--; } // Ok, give us the new values. reference.book = books[referenceindex]; reference.chapter = chapters[referenceindex]; if (forward) { reference.verse = first_verses[referenceindex]; } else { reference.verse = first_verses[referenceindex]; } // Set the values in the comboboxes, and signal a change. set_book(reference.book); load_chapters(reference.book); set_chapter(reference.chapter); load_verses(reference.book, reference.chapter); set_verse(reference.verse); signal(); } void GuiNavigation::tracker_sensitivity() { // Buttons. gtk_widget_set_sensitive(button_list_back, track.previous_reference_available()); gtk_widget_set_sensitive(button_back, track.previous_reference_available()); gtk_widget_set_sensitive(button_forward, track.next_reference_available()); gtk_widget_set_sensitive(button_list_forward, track.next_reference_available()); } void GuiNavigation::on_list_back () { vector references; track.get_previous_references (references); vector labels; for (unsigned int i = 0; i < references.size(); i++) { labels.push_back (references[i].human_readable (language)); } RadiobuttonDialog dialog ("Go back", "Where would you like to go back to?", labels, 0, true); if (dialog.run () == GTK_RESPONSE_OK) { for (unsigned int i = 0; i <= dialog.selection; i++) { on_back(); } } } void GuiNavigation::on_list_forward () { vector references; track.get_next_references (references); vector labels; for (unsigned int i = 0; i < references.size(); i++) { labels.push_back (references[i].human_readable (language)); } RadiobuttonDialog dialog ("Go forward", "Where would you like to go forward to?", labels, 0, true); if (dialog.run () == GTK_RESPONSE_OK) { for (unsigned int i = 0; i <= dialog.selection; i++) { on_forward(); } } } bibledit-gtk-4.9/src/gui_navigation.h000664 000766 000024 00000007557 12221507131 020030 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_GUI_NAVIGATION_H #define INCLUDED_GUI_NAVIGATION_H #include "libraries.h" #include #include #include "reference.h" #include "track.h" class GuiNavigation { public: GuiNavigation (int dummy); ~GuiNavigation (); void build (GtkWidget * toolbar); void sensitive (bool sensitive); void set_project (const ustring& value, bool force); void clampref (Reference& reference); void display (const Reference& ref); void nextbook (); void previousbook (); void nextchapter (); void previouschapter (); void nextverse (); void previousverse (); GtkWidget * new_reference_signal; Reference reference; void on_back (); void on_forward (); void on_list_back (); void on_list_forward (); private: GtkWidget *button_list_back; GtkWidget *image_list_back; GtkWidget *button_back; GtkWidget *image1; GtkWidget *button_forward; GtkWidget *image2; GtkWidget *button_list_forward; GtkWidget *image_list_forward; GtkWidget *combo_book; GtkObject *spinbutton_book_adj; GtkWidget *spinbutton_book; GtkWidget *combo_chapter; GtkObject *spinbutton_chapter_adj; GtkWidget *spinbutton_chapter; GtkWidget *combo_verse; GtkObject *spinbutton_verse_adj; GtkWidget *spinbutton_verse; static void on_button_list_back_clicked (GtkButton *button, gpointer user_data); static void on_button_back_clicked (GtkButton *button, gpointer user_data); static void on_button_forward_clicked (GtkButton *button, gpointer user_data); static void on_button_list_forward_clicked (GtkButton *button, gpointer user_data); static void on_combo_book_changed (GtkComboBox *combobox, gpointer user_data); static void on_combo_chapter_changed (GtkComboBox *combobox, gpointer user_data); static void on_combo_verse_changed (GtkComboBox *combobox, gpointer user_data); static void on_spinbutton_book_value_changed (GtkSpinButton *spinbutton, gpointer user_data); static void on_spinbutton_chapter_value_changed (GtkSpinButton *spinbutton, gpointer user_data); static void on_spinbutton_verse_value_changed (GtkSpinButton *spinbutton, gpointer user_data); void on_combo_book (); void on_combo_chapter (); void on_combo_verse (); void on_spinbutton_book (); void on_spinbutton_chapter (); void on_spinbutton_verse (); bool reference_exists (Reference& reference); void load_books (); void set_book (unsigned int book); void load_chapters (unsigned int book); void set_chapter (unsigned int chapter); void load_verses (unsigned int book, unsigned int chapter); void set_verse (const ustring& verse); void signal (bool track = true); static bool signal_delayer (gpointer user_data); void signal_delayed (); static bool signal_track (gpointer user_data); void signal_tracking (); void crossboundariesverse (bool forward); void crossboundarieschapter (bool forward); void tracker_sensitivity (); ustring project; ustring language; bool settingcombos; int spinbutton_book_previous_value; int spinbutton_chapter_previous_value; int spinbutton_verse_previous_value; guint delayer_event_id; guint track_event_id; Track track; }; #endif bibledit-gtk-4.9/src/guiselectbibles.cpp000664 000766 000024 00000013547 12221507140 020521 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "guiselectbibles.h" #include "projectutils.h" #include "dialoglistview.h" SelectBiblesGui::SelectBiblesGui(GtkWidget * box, Shortcuts& shortcuts) { // Create the GUI. vbox = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox); gtk_box_pack_start(GTK_BOX(box), vbox, TRUE, TRUE, 0); scrolledwindow = gtk_scrolled_window_new (NULL, NULL); gtk_widget_show (scrolledwindow); gtk_box_pack_start (GTK_BOX (vbox), scrolledwindow, FALSE, TRUE, 0); gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow), GTK_POLICY_NEVER, GTK_POLICY_NEVER); gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (scrolledwindow), GTK_SHADOW_IN); treeview = gtk_tree_view_new (); gtk_widget_show (treeview); gtk_container_add (GTK_CONTAINER (scrolledwindow), treeview); gtk_tree_view_set_reorderable (GTK_TREE_VIEW (treeview), TRUE); hbox = gtk_hbox_new (FALSE, 0); gtk_widget_show (hbox); gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, FALSE, 0); button_add = gtk_button_new_from_stock ("gtk-add"); gtk_widget_show (button_add); gtk_box_pack_start (GTK_BOX (hbox), button_add, FALSE, FALSE, 0); shortcuts.stockbutton (button_add); button_remove = gtk_button_new_from_stock ("gtk-remove"); gtk_widget_show (button_remove); gtk_box_pack_start (GTK_BOX (hbox), button_remove, FALSE, FALSE, 0); shortcuts.stockbutton (button_remove); g_signal_connect ((gpointer) button_add, "clicked", G_CALLBACK (on_button_add_clicked), gpointer (this)); g_signal_connect ((gpointer) button_remove, "clicked", G_CALLBACK (on_button_remove_clicked), gpointer (this)); // List storage. store = gtk_list_store_new(2, G_TYPE_BOOLEAN, G_TYPE_STRING); gtk_tree_view_set_model(GTK_TREE_VIEW(treeview), GTK_TREE_MODEL(store)); g_object_unref(store); GtkCellRenderer *renderer0 = gtk_cell_renderer_toggle_new(); gtk_tree_view_insert_column_with_attributes(GTK_TREE_VIEW(treeview), -1, "Enabled", renderer0, "active", 0, NULL); g_signal_connect(renderer0, "toggled", G_CALLBACK(on_enabled_toggled), gpointer(this)); GtkCellRenderer *renderer1 = gtk_cell_renderer_text_new(); gtk_tree_view_insert_column_with_attributes(GTK_TREE_VIEW(treeview), -1, "Bible", renderer1, "text", 1, NULL); gtk_tree_selection_set_mode(gtk_tree_view_get_selection(GTK_TREE_VIEW(treeview)), GTK_SELECTION_MULTIPLE); } SelectBiblesGui::~SelectBiblesGui() { gtk_widget_destroy (hbox); } void SelectBiblesGui::set (const vector & enabled, const vector & bible) { if (enabled.size() == bible.size()) { for (unsigned int i = 0; i < enabled.size(); i++) { add_bible (enabled[i], bible[i]); } } } void SelectBiblesGui::add_bible (bool enabled, const ustring& bible) { GtkTreeIter iter; gtk_list_store_append(store, &iter); gtk_list_store_set(store, &iter, 0, enabled, 1, bible.c_str(), -1); } void SelectBiblesGui::get (vector & enabled, vector & bible) { enabled.clear(); bible.clear(); GtkTreeModel *model = (GtkTreeModel *) store; GtkTreeIter iter; gboolean valid; valid = gtk_tree_model_get_iter_first(model, &iter); while (valid) { int bool_data; gchar *str_data; gtk_tree_model_get(model, &iter, 0, &bool_data, 1, &str_data, -1); enabled.push_back (bool_data); bible.push_back (str_data); g_free(str_data); valid = gtk_tree_model_iter_next(model, &iter); } } void SelectBiblesGui::on_button_add_clicked(GtkButton * button, gpointer user_data) { ((SelectBiblesGui *) user_data)->on_button_add(); } void SelectBiblesGui::on_button_add() { ustring bible; if (project_select(bible)) { add_bible (true, bible); } } void SelectBiblesGui::on_button_remove_clicked(GtkButton * button, gpointer user_data) { ((SelectBiblesGui *) user_data)->on_button_remove(); } void SelectBiblesGui::on_button_remove() { GtkTreeSelection *selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(treeview)); vector iters; gtk_tree_selection_selected_foreach(selection, SelectBiblesGui::on_collect_iters, gpointer(&iters)); for (unsigned int i = 0; i < iters.size(); i++) { GtkTreeIter iter = iters[i]; gtk_list_store_remove(store, &iter); } } void SelectBiblesGui::on_collect_iters(GtkTreeModel * model, GtkTreePath * path, GtkTreeIter * iter, gpointer data) { ((vector < GtkTreeIter > *)data)->push_back(*iter); } void SelectBiblesGui::focus() { gtk_widget_grab_focus(treeview); } void SelectBiblesGui::on_enabled_toggled(GtkCellRendererToggle * cell, gchar * path_str, gpointer data) { ((SelectBiblesGui *) data)->on_rendering_toggle(cell, path_str); } void SelectBiblesGui::on_rendering_toggle(GtkCellRendererToggle * cell, gchar * path_str) { GtkTreeModel *model = (GtkTreeModel *) store; GtkTreeIter iter; GtkTreePath *path = gtk_tree_path_new_from_string(path_str); gboolean setting; gtk_tree_model_get_iter(model, &iter, path); gtk_tree_model_get(model, &iter, 0, &setting, -1); setting = !setting; gtk_list_store_set(store, &iter, 0, setting, -1); gtk_tree_path_free(path); } bibledit-gtk-4.9/src/guiselectbibles.h000664 000766 000024 00000003605 12221507140 020160 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_GUI_SELECT_BIBLES_H #define INCLUDED_GUI_SELECT_BIBLES_H #include #include "ustring.h" #include "shortcuts.h" class SelectBiblesGui { public: SelectBiblesGui (GtkWidget * box, Shortcuts& shortcuts); ~SelectBiblesGui (); void set (const vector & enabled, const vector & bible); void get (vector & enabled, vector & bible); void focus(); private: GtkWidget *vbox; GtkWidget *scrolledwindow; GtkWidget *treeview; GtkWidget *hbox; GtkWidget *button_add; GtkWidget *button_remove; static void on_button_add_clicked (GtkButton *button, gpointer user_data); static void on_button_remove_clicked (GtkButton *button, gpointer user_data); void on_button_add (); void on_button_remove (); GtkListStore *store; static void on_enabled_toggled(GtkCellRendererToggle *cell, gchar *path_str, gpointer data); void on_rendering_toggle(GtkCellRendererToggle *cell, gchar *path_str); void add_bible (bool enabled, const ustring& bible); static void on_collect_iters (GtkTreeModel * model, GtkTreePath * path, GtkTreeIter * iter, gpointer data); }; #endif bibledit-gtk-4.9/src/guiselectproject.cpp000664 000766 000024 00000005141 12221507131 020716 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "guiselectproject.h" #include "projectutils.h" #include "dialoglistview.h" SelectProjectGui::SelectProjectGui(int dummy) { } SelectProjectGui::~SelectProjectGui() { } void SelectProjectGui::build(GtkWidget * box, const gchar * labeltext, const ustring & project_in) { hbox = gtk_hbox_new(FALSE, 0); gtk_widget_show(hbox); gtk_box_pack_start(GTK_BOX(box), hbox, TRUE, TRUE, 0); label = gtk_label_new_with_mnemonic(labeltext); gtk_widget_show(label); gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); // Check whether the requested projects is there, if so, well, fine. // If not, take the first available project, if there are any projects at all. project = project_in; vector < ustring > projects = projects_get_all(); set < ustring > projectset(projects.begin(), projects.end()); if (projectset.find(project) == projectset.end()) { project.clear(); if (!projects.empty()) project = projects[0]; } button = gtk_button_new_with_label(project.c_str()); gtk_widget_show(button); gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 0); g_signal_connect((gpointer) button, "clicked", G_CALLBACK(on_button_clicked), gpointer(this)); gtk_label_set_mnemonic_widget(GTK_LABEL(label), button); } void SelectProjectGui::on_button_clicked(GtkButton * button, gpointer user_data) { ((SelectProjectGui *) user_data)->on_button(); } void SelectProjectGui::on_button() { if (project_select(project)) { gtk_button_set_label(GTK_BUTTON(button), project.c_str()); } } void SelectProjectGui::focus() { gtk_widget_grab_focus(button); } void SelectProjectGui::set_label(const ustring & text) { gtk_label_set_text_with_mnemonic(GTK_LABEL(label), text.c_str()); } void SelectProjectGui::set_sensitive(bool active) { gtk_widget_set_sensitive(button,active); } bibledit-gtk-4.9/src/guiselectproject.h000664 000766 000024 00000002517 12221507146 020375 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_GUISELECTPROJECT_H #define INCLUDED_GUISELECTPROJECT_H #include #include "ustring.h" class SelectProjectGui { public: SelectProjectGui (int dummy); ~SelectProjectGui (); void build (GtkWidget * box, const gchar * labeltext, const ustring& project_in); void focus(); void set_label (const ustring& text); void set_sensitive (bool active); ustring project; private: GtkWidget *label; GtkWidget *button; GtkWidget *hbox; static void on_button_clicked (GtkButton *button, gpointer user_data); void on_button (); }; #endif bibledit-gtk-4.9/src/gwrappers.cpp000644 000766 000024 00000036177 12455215403 017377 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 #include "libraries.h" #include "gwrappers.h" #include #include "utilities.h" #include "progresswindow.h" #include "unixwrappers.h" #ifdef WIN32 #include #else #include #endif #include "directories.h" #include "shell.h" #include "tiny_utilities.h" ustring gw_build_filename(const ustring & part1, const ustring & part2) // Wrapper for g_build_filename, to make programming easier. { return tiny_gw_build_filename(part1, part2); } ustring gw_build_filename(const ustring & part1, const ustring & part2, const ustring & part3) { return tiny_gw_build_filename(part1, part2, part3); } ustring gw_build_filename(const ustring & part1, const ustring & part2, const ustring & part3, const ustring & part4) { ustring filename; gchar *name; name = g_build_filename(part1.c_str(), part2.c_str(), part3.c_str(), part4.c_str(), NULL); filename = name; g_free(name); return filename; } ustring gw_build_filename(const ustring & part1, const ustring & part2, const ustring & part3, const ustring & part4, const ustring & part5) { ustring filename; gchar *name; name = g_build_filename(part1.c_str(), part2.c_str(), part3.c_str(), part4.c_str(), part5.c_str(), NULL); filename = name; g_free(name); return filename; } void gw_message(const ustring & message) { if (write(1, message.c_str(), strlen(message.c_str()))) ; if (write(1, "\n", 1)) ; } void gw_warning(const ustring & warning) { g_warning("%s", warning.c_str()); } void gw_critical(const ustring & critical) { g_critical("%s", critical.c_str()); } void gw_error(const ustring & error) { g_error("%s", error.c_str()); } ustring gw_path_get_basename(const ustring & filename) { ustring returnvalue; gchar *basename; basename = g_path_get_basename(filename.c_str()); returnvalue = basename; g_free(basename); return returnvalue; } ustring gw_path_get_dirname(const ustring & filename) { ustring returnvalue; gchar *dirname; dirname = g_path_get_dirname(filename.c_str()); returnvalue = dirname; g_free(dirname); return returnvalue; } bool gw_find_program_in_path(const ustring & program) /* Before we used the exit code of the unix which command, but as this does not properly work on BSD systems, like Mac OS X, and the OLPC doesn't include the which command, we make our own wrapper for glib's version. It returns true if "program" is an executable program. */ { gchar *result; result = g_find_program_in_path(program.c_str()); if (result) { g_free(result); return true; } return false; } void gw_destroy_source(guint & event_id) // This is a combined wrapper for convenience. { if (event_id) { GSource *source = g_main_context_find_source_by_id(NULL, event_id); if (source) g_source_destroy(source); } event_id = 0; } void gw_mkdir_with_parents(const ustring & directory) // Creates directory, with the parents, if need be. // Function mkdir could be used (see man 2 mkdir), but this does not allow for // the creation of the parent directories. The core utility mkdir provides // this functionality, so is preferred, and used here. // Later one g_mkdir_with_parents () was used, but this did not create // directories properly. Hence we are stuck with mkdir. { ustring s; GwSpawn spawn("mkdir"); #ifndef WIN32 spawn.arg("-p"); #endif spawn.arg(directory); #ifdef WIN32 spawn.devnull(); #endif spawn.run(); } GwSpawn::GwSpawn(const char *program) { myprogram = program; myasync = false; mydevnull = false; myread = false; myprogress = false; myallowcancel = false; myhide = false; cancelled = false; exitstatus = 0; pid = 0; } GwSpawn::~GwSpawn() { } void GwSpawn::workingdirectory(ustring directory) // The process' working directory. { myworkingdirectory = directory; } void GwSpawn::arg(ustring value) // Add one arguments to the arguments for running the program. // This function can be repeated as many times as desired. { #ifdef WIN32 // Quote the argument. value = shell_quote_space(value); #else // Escape the '. replace_text(value, "'", "\\'"); #endif // Save argument. myarguments.push_back(value); } void GwSpawn::async() // Run the program asynchronously, that is, don't wait for the program to exit. { myasync = true; } void GwSpawn::devnull() // Pipe cout and cerr to /dev/null. { mydevnull = true; } void GwSpawn::write(ustring text) // Write to cin of the program. { mywrite = text; // Writing only works in async mode, so set that flag too. myasync = true; } void GwSpawn::read() // Make cout and cerr of the program available for later reading. { myread = true; } void GwSpawn::progress(ustring text, bool allow_cancel) // Show progress of the program that runs. A pulsing bar remains visible as // long as the program runs. The user can cancel the program. { myprogress = true; mytext = text; myallowcancel = allow_cancel; // Progress display requires async mode, so set that flag too. myasync = true; } void GwSpawn::describe () // Describes the command if it would run from a shell. { ustring description; if (!myworkingdirectory.empty()) { description.append ("cd "); description.append (myworkingdirectory); description.append ("; "); } description.append (myprogram); for (unsigned int i = 0; i < myarguments.size(); i++) { description.append (" "); description.append (myarguments[i]); } gw_message (description); } #ifndef WIN32 void GwSpawn::run() { // Working directory. const gchar *workingdirectory = NULL; if (!myworkingdirectory.empty()) workingdirectory = myworkingdirectory.c_str(); // Store arguments in argv. char *argv[myarguments.size() + 2]; argv[0] = (char *)myprogram; for (unsigned int i = 0; i < myarguments.size(); i++) { argv[i + 1] = (char *)myarguments[i].c_str(); } // Terminate argv. argv[myarguments.size() + 1] = NULL; // Spawn flags. int flags = G_SPAWN_SEARCH_PATH; if (mydevnull) flags |= (G_SPAWN_STDOUT_TO_DEV_NULL | G_SPAWN_STDERR_TO_DEV_NULL); // Possible pipes. gint standard_input_filedescriptor = 0; gint standard_output_filedescriptor; gint standard_error_filedescriptor; gint *standard_input_filedescriptor_pointer = NULL; gint *standard_output_filedescriptor_pointer = NULL; gint *standard_error_filedescriptor_pointer = NULL; gchar *standard_output = NULL; gchar *standard_error = NULL; gchar **standard_output_pointer = NULL; gchar **standard_error_pointer = NULL; if (myread) { standard_output_filedescriptor_pointer = &standard_output_filedescriptor; standard_error_filedescriptor_pointer = &standard_error_filedescriptor; standard_output_pointer = &standard_output; standard_error_pointer = &standard_error; } if (!mywrite.empty()) { standard_input_filedescriptor_pointer = &standard_input_filedescriptor; } // Spawn process. if (myasync) { result = g_spawn_async_with_pipes(workingdirectory, argv, NULL, (GSpawnFlags) flags, NULL, NULL, &pid, standard_input_filedescriptor_pointer, standard_output_filedescriptor_pointer, standard_error_filedescriptor_pointer, NULL); // Handle writing to stdin. if (standard_input_filedescriptor) { tiny_spawn_write(standard_input_filedescriptor, mywrite); close(standard_input_filedescriptor); } } else { result = g_spawn_sync(workingdirectory, argv, NULL, (GSpawnFlags) flags, NULL, NULL, standard_output_pointer, standard_error_pointer, &exitstatus, NULL); } // Handle case we didn't spawn the process. if (!result) { exitstatus = -1; ustring message = myprogram; message.append(" didn't spawn"); gw_critical(message); return; } // Handle progress function. if (myprogress || standard_input_filedescriptor) { ProgressWindow *progresswindow = NULL; if (myprogress) progresswindow = new ProgressWindow(mytext, myallowcancel); ustring filename = gw_build_filename("/proc", convert_to_string(pid)); while (g_file_test(filename.c_str(), G_FILE_TEST_EXISTS)) { if (progresswindow) { progresswindow->pulse(); if (progresswindow->cancel) { unix_kill(pid); cancelled = true; } } g_usleep(500000); } // Close pid. g_spawn_close_pid(pid); if (progresswindow) delete progresswindow; } // Handle reading the output. if (myread) { // In async mode we've got file descriptors, and in sync mode we have // gchar * output. // If async mode, read the output and close the descriptors. if (myasync) { GIOChannel *channel_out = g_io_channel_unix_new(standard_output_filedescriptor); g_io_channel_read_to_end(channel_out, &standard_output, NULL, NULL); g_io_channel_shutdown(channel_out, false, NULL); GIOChannel *channel_err = g_io_channel_unix_new(standard_error_filedescriptor); g_io_channel_read_to_end(channel_err, &standard_error, NULL, NULL); g_io_channel_shutdown(channel_err, false, NULL); } ParseLine parse_out(standard_output); standardout = parse_out.lines; ParseLine parse_err(standard_error); standarderr = parse_err.lines; // Free data. if (standard_output) g_free(standard_output); if (standard_error) g_free(standard_error); } } #endif #ifdef WIN32 void GwSpawn::run() /* On Windows the normal routines of glib cannot be used well, because they show a console window when running certain commands like mkdir, ping, etc. Therefore this version of run() uses Windows specific system calls. These calls allow one to hide the console window. */ { // Working directory. const gchar *workingdirectory = NULL; if (!myworkingdirectory.empty()) workingdirectory = myworkingdirectory.c_str(); /* The trick to running a console window silent is in the STARTUPINFO structure that we pass into the CreateProcess function. STARTUPINFO specifies the main window properties. There are many items in the STARTUPINFO structure that we don't care about. The ones that are of interest are: * DWORD cb * DWORD dwFlags * WORD wShowWindow */ // The STARTUPINFO is instantiated. STARTUPINFO StartupInfo; PROCESS_INFORMATION ProcessInfo; // The memory is cleared for the length of the structure. memset(&StartupInfo, 0, sizeof(StartupInfo)); // Fill the structure with the relevant code // that will tell the console window to start up without showing itself. StartupInfo.cb = sizeof(STARTUPINFO); StartupInfo.dwFlags = STARTF_USESHOWWINDOW; StartupInfo.wShowWindow = SW_HIDE; // Arguments to the program. char Args[4096]; Args[0] = 0; // Environment. char *pEnvCMD = NULL; char *pDefaultCMD = "CMD.EXE"; pEnvCMD = getenv("COMSPEC"); if (pEnvCMD) { strcpy(Args, pEnvCMD); } else { strcpy(Args, pDefaultCMD); } // The "/c" option - Do the command then terminate the command window. strcat(Args, " /c "); // The application you would like to run from the command window. strcat(Args, myprogram); // The parameters passed to the application being run from the command window. // The arguments have been quoted and spaced already. for (unsigned int i = 0; i < myarguments.size(); i++) { strcat(Args, myarguments[i].c_str()); } // Get the suffix for the files to be piped. It has the seconds and // microseconds in them, to allow for parallel usage of these pipes. ustring pipe_suffix; if ((!mydevnull) || (!mywrite.empty())) { GTimeVal gtimeval; g_get_current_time(>imeval); pipe_suffix = convert_to_string((long unsigned int)gtimeval.tv_sec) + convert_to_string((long unsigned int)gtimeval.tv_usec); } // If there is standard input, create the file to be piped. // Write the text into that file. Add the file to the arguments. if (!mywrite.empty()) { ustring pipe_in = gw_build_filename(Directories->get_temp(), "stdin" + pipe_suffix); WriteText wt(pipe_in); wt.text(mywrite); strcat(Args, " <"); strcat(Args, shell_quote_space(pipe_in).c_str()); } // If the output is not sent to "nul", then create piped files. ustring pipe_out; ustring pipe_err; if (!mydevnull) { pipe_out = gw_build_filename(Directories->get_temp(), "stdout" + pipe_suffix); pipe_err = gw_build_filename(Directories->get_temp(), "stderr" + pipe_suffix); ustring pout = shell_quote_space(pipe_out); ustring perr = shell_quote_space(pipe_err); strcat(Args, " >"); strcat(Args, pout.c_str()); strcat(Args, " 2>"); strcat(Args, perr.c_str()); } // Start the process. result = CreateProcess(NULL, Args, NULL, NULL, FALSE, CREATE_NEW_CONSOLE, NULL, workingdirectory, &StartupInfo, &ProcessInfo); if (!result) { exitstatus = GetLastError(); ustring message = myprogram; message.append(" didn't spawn"); gw_critical(message); return; } // Handle progress function. if (myprogress) { ProgressWindow progresswindow(mytext, myallowcancel); // Time passed to WaitForSingleObject is in milliseconds. while ((WaitForSingleObject(ProcessInfo.hProcess, 500) >= 500) || (WaitForSingleObject(ProcessInfo.hThread, 500) >= 500)) { progresswindow.pulse(); if (progresswindow.cancel) { // todo unix_kill (pid); cancelled = true; } } } // Handle sync mode. if (!myasync) { // Wait for it to finish. WaitForSingleObject(ProcessInfo.hProcess, INFINITE); WaitForSingleObject(ProcessInfo.hThread, INFINITE); } // Get the exit code. ULONG rc; if (!GetExitCodeProcess(ProcessInfo.hProcess, &rc)) rc = 0; exitstatus = rc; // Close handles. CloseHandle(ProcessInfo.hThread); CloseHandle(ProcessInfo.hProcess); // Read the pipe files if we don't sent the output to "nul". if (!mydevnull) { gchar *standard_output; g_file_get_contents(pipe_out.c_str(), &standard_output, NULL, NULL); gchar *standard_error; g_file_get_contents(pipe_err.c_str(), &standard_error, NULL, NULL); // Handle case we read the output. Else dump it to stdout/err. if (myread) { if (standard_output) { ParseLine parse_out(standard_output); standardout = parse_out.lines; } if (standard_error) { ParseLine parse_err(standard_error); standarderr = parse_err.lines; } } else { if (standard_output) tiny_spawn_write(1, standard_output); if (standard_error) tiny_spawn_write(2, standard_error); } // Free data. if (standard_output) g_free(standard_output); if (standard_error) g_free(standard_error); } } #endif bibledit-gtk-4.9/src/gwrappers.h000664 000766 000024 00000004574 12221507141 017034 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_GWRAPPERS_H #define INCLUDED_GWRAPPERS_H #include "libraries.h" #include ustring gw_build_filename (const ustring& part1, const ustring& part2); ustring gw_build_filename (const ustring& part1, const ustring& part2, const ustring& part3); ustring gw_build_filename (const ustring& part1, const ustring& part2, const ustring& part3, const ustring& part4); ustring gw_build_filename (const ustring& part1, const ustring& part2, const ustring& part3, const ustring& part4, const ustring& part5); void gw_message (const ustring& message); void gw_warning (const ustring& warning); void gw_critical (const ustring& critical); void gw_error (const ustring& error); ustring gw_path_get_basename (const ustring& filename); ustring gw_path_get_dirname (const ustring& filename); bool gw_find_program_in_path (const ustring& program); void gw_destroy_source (guint& event_id); void gw_mkdir_with_parents (const ustring& directory); class GwSpawn { public: GwSpawn (const char * program); ~GwSpawn (); void workingdirectory (ustring directory); void arg (ustring value); void async (); void devnull (); void write (ustring text); void read (); void progress (ustring text, bool allow_cancel); void describe (); void run (); bool cancelled; bool result; gint exitstatus; GPid pid; vector standardout; vector standarderr; private: const char * myprogram; ustring myworkingdirectory; bool myasync; bool mydevnull; ustring mywrite; bool myread; bool myprogress; bool myallowcancel; bool myhide; ustring mytext; vector myarguments; }; #endif bibledit-gtk-4.9/src/help.cpp000664 000766 000024 00000007770 12221507130 016304 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "htmlbrowser.h" #include "help.h" #include "directories.h" #include "gwrappers.h" #include #include "unixwrappers.h" #include "gtkwrappers.h" #include "utilities.h" #include "tiny_utilities.h" #include "screen.h" InDialogHelp::InDialogHelp(GtkWidget * dialog, GtkBuilder * builder, Shortcuts * shortcuts, const gchar * topic) { // Save and initialize variables. mydialog = dialog; mytopic = topic; process_id = 0; okbutton = NULL; cancelbutton = NULL; // If no help is given, take a default one. if (!mytopic) mytopic = "menu-none/no-help-available"; // Help menu for dialogs and assistants was disabled to make maintenance easier. //helpbutton = gtk_button_new(); //gtk_widget_show(helpbutton); //gtk_box_pack_start(GTK_BOX(GTK_DIALOG(dialog)->action_area), helpbutton, FALSE, FALSE, 0); // dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(dialog)); //gtk_widget_set_can_default (GTK_WIDGET (helpbutton), true); //alignment = gtk_alignment_new(0.5, 0.5, 0, 0); //gtk_widget_show(alignment); //gtk_container_add(GTK_CONTAINER(helpbutton), alignment); //hbox = gtk_hbox_new(FALSE, 2); //gtk_widget_show(hbox); //gtk_container_add(GTK_CONTAINER(alignment), hbox); //image = gtk_image_new_from_stock("gtk-help", GTK_ICON_SIZE_BUTTON); //gtk_widget_show(image); //gtk_box_pack_start(GTK_BOX(hbox), image, FALSE, FALSE, 0); //label = gtk_label_new_with_mnemonic("_Help"); //gtk_widget_show(label); //gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); if (shortcuts) { //shortcuts->label(label); } if (builder) { cancelbutton = gtk_button_new_from_stock("gtk-cancel"); gtk_widget_show(cancelbutton); gtk_dialog_add_action_widget(GTK_DIALOG(dialog), cancelbutton, GTK_RESPONSE_CANCEL); gtk_widget_set_can_default (GTK_WIDGET (cancelbutton), true); okbutton = gtk_button_new_from_stock("gtk-ok"); gtk_widget_show(okbutton); gtk_dialog_add_action_widget(GTK_DIALOG(dialog), okbutton, GTK_RESPONSE_OK); gtk_widget_set_can_default (GTK_WIDGET (okbutton), true); if (shortcuts) { shortcuts->stockbutton(cancelbutton); shortcuts->stockbutton(okbutton); } } //g_signal_connect((gpointer) helpbutton, "clicked", G_CALLBACK(on_helpbutton_activated), gpointer(this)); //g_signal_connect((gpointer) dialog, "delete_event", G_CALLBACK(on_dialog_delete_event), gpointer(this)); } InDialogHelp::~InDialogHelp() { /* if (process_id) unix_kill(process_id); */ } void InDialogHelp::on_helpbutton_activated(GtkButton * button, gpointer user_data) { ((InDialogHelp *) user_data)->on_helpbutton(); } void InDialogHelp::on_helpbutton() { // Assemble the url to load. ustring url = html_server_url ("site/"); url.append ("reference/menu/"); url.append(mytopic); url.append(".html"); htmlbrowser (url, false, true); // Present the window. g_usleep(500000); gtk_window_present(GTK_WINDOW(mydialog)); } gboolean InDialogHelp::on_dialog_delete_event(GtkWidget * widget, GdkEvent * event, gpointer user_data) { // If the dialog gets deleted, then destroy the InDialogHelp object. InDialogHelp *this_is_me = (InDialogHelp *) user_data; delete this_is_me; return false; } bibledit-gtk-4.9/src/help.h000664 000766 000024 00000003026 12221507130 015737 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_HELP_H #define INCLUDED_HELP_H #include "libraries.h" #include #include "shortcuts.h" class InDialogHelp { public: InDialogHelp (GtkWidget * dialog, GtkBuilder * builder, Shortcuts * shortcuts, const gchar * topic); ~InDialogHelp (); GtkWidget * okbutton; GtkWidget * cancelbutton; private: GtkWidget *helpbutton; GtkWidget *alignment; GtkWidget *hbox; GtkWidget *image; GtkWidget *label; GtkWidget *scrolledwindow; GtkWidget *htmlview; const gchar * mytopic; GtkWidget * mydialog; GPid process_id; static void on_helpbutton_activated (GtkButton * button, gpointer user_data); void on_helpbutton (); static gboolean on_dialog_delete_event (GtkWidget *widget, GdkEvent *event, gpointer user_data); }; #endif bibledit-gtk-4.9/src/highlight.cpp000664 000766 000024 00000041357 12221507143 017326 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "highlight.h" #include "utilities.h" #include "gwrappers.h" #include "usfmtools.h" #include "categorize.h" #include "screen.h" #include "settings.h" #include "date_time_utils.h" #include "xmlutils.h" Highlight::Highlight(GtkTextBuffer * buffer, GtkWidget * textview, const ustring & project, GtkTextTag * tag, const ustring & verse) { // Save and initialize variables. maintextbuffer = buffer; maintextview = GTK_TEXT_VIEW(textview); mytag = tag; locations_ready = false; interrupt_thread = false; // Remove any previous highlights. remove_previous_highlights(maintextbuffer); // Determine the boundaries between which to highlight, // in order to highlight only the words that are within the right verse. { GtkTextIter startiter; GtkTextIter enditer; gtk_text_buffer_get_start_iter(maintextbuffer, &startiter); gtk_text_buffer_get_end_iter(maintextbuffer, &enditer); GtkTextIter iter = startiter; bool started = false; bool ended = false; bool start = true; ustring verse_style = style_get_verse_marker(project); while (!gtk_text_iter_is_end(&iter)) { ustring paragraph_style, character_style; get_styles_at_iterator(iter, paragraph_style, character_style); if (start || (character_style == verse_style)) { ustring verse_at_iter = get_verse_number_at_iterator(iter, verse_style, "", NULL); if (verse == verse_at_iter) { if (!started) { started = true; startiter = iter; } } else { if (started) { if (!ended) { ended = true; enditer = iter; } } } } start = false; gtk_text_iter_forward_char(&iter); } main_start_offset = gtk_text_iter_get_offset(&startiter); main_end_offset = gtk_text_iter_get_offset(&enditer); } } Highlight::~Highlight() { // Set flag to interrupt the thread. interrupt_thread = true; // Wait till the locations are ready while (!locations_ready) { g_usleep(100000); } // The object destroys itself. } void Highlight::searchwords(GtkTextBuffer * textbuffer, GtkTextView * textview, gint startoffset, gint endoffset) /* This looks for the positions between startoffset and endoffset of the words to be highlighted highlights based upon the word that was searched for. */ { // Get the iterators to work in between. GtkTextIter startiter; GtkTextIter enditer; gtk_text_buffer_get_iter_at_offset(textbuffer, &startiter, startoffset); gtk_text_buffer_get_iter_at_offset(textbuffer, &enditer, endoffset); // Find the boundaries for highlighting search words within the iterators. extern Settings *settings; for (unsigned int i = 0; i < settings->session.highlights.size(); i++) { if (interrupt_thread) continue; vector < GtkTextIter > wordbegin; vector < GtkTextIter > wordend; if (settings->session.highlights[i].globbing || settings->session.highlights[i].matchbegin || settings->session.highlights[i].matchend) { // Advanced and slow highlighting. searchwords_find_slow(textbuffer, &startiter, &enditer, settings->session.highlights[i].word, settings->session.highlights[i].casesensitive, settings->session.highlights[i].globbing, settings->session.highlights[i].matchbegin, settings->session.highlights[i].matchend, wordbegin, wordend); } else { // Basic and fast highlighting. searchwords_find_fast(textbuffer, &startiter, &enditer, settings->session.highlights[i].word, settings->session.highlights[i].casesensitive, wordbegin, wordend); } // If we do searching in areas, check that the boundaries are inside the areas. if (settings->session.highlights[i].areatype == atSelection) { searchwords_in_area(textbuffer, wordbegin, wordend, settings->session.highlights[i].id, settings->session.highlights[i].intro, settings->session.highlights[i].heading, settings->session.highlights[i].chapter, settings->session.highlights[i].study, settings->session.highlights[i].notes, settings->session.highlights[i].xref, settings->session.highlights[i].verse); } // Copy any remaining iterators to the main containers. for (unsigned int i = 0; i < wordbegin.size(); i++) { highlightwordstarts.push_back(gtk_text_iter_get_offset(&wordbegin[i])); highlightwordends.push_back(gtk_text_iter_get_offset(&wordend[i])); highlightbuffers.push_back(textbuffer); highlightviews.push_back(textview); } } } void Highlight::searchwords_find_fast(GtkTextBuffer * textbuffer, GtkTextIter * beginbound, GtkTextIter * endbound, const ustring & searchword, bool casesensitive, vector < GtkTextIter > &wordstart, vector < GtkTextIter > &wordend) // Searches for words to highlight. For simple highligthing. // Is much faster than the slow routine, see there fore more information. { // Variable. GtkTextIter begin; GtkTextIter end; // Extract the line. ustring line = gtk_text_buffer_get_slice(textbuffer, beginbound, endbound, false); // Deal with case sensitivity. ustring case_considerate_search_word(searchword); if (!casesensitive) case_considerate_search_word = case_considerate_search_word.casefold(); // Go through the line looking for matches. for (unsigned int i = 0; i < line.length(); i++) { if (interrupt_thread) continue; ustring compareline(line.substr(i, searchword.length())); // Deal with case sensitivity. if (!casesensitive) compareline = compareline.casefold(); // Now compare. if (case_considerate_search_word == compareline) { // Get the iterators in the textbuffer that belong to this possible match. begin = *beginbound; gtk_text_iter_forward_chars(&begin, i); end = begin; gtk_text_iter_forward_chars(&end, searchword.length()); // Add the boundaries of the word to highlight. wordstart.push_back(begin); wordend.push_back(end); } } } void Highlight::searchwords_find_slow(GtkTextBuffer * textbuffer, GtkTextIter * beginbound, GtkTextIter * endbound, const ustring & searchword, bool casesensitive, bool globbing, bool matchbegin, bool matchend, vector < GtkTextIter > &wordstart, vector < GtkTextIter > &wordend) /* Searches for words to highlight. Problem when case insensitive searching: Character ffi was changed to ffi after casefolding, and as that one is 2 characters longer than the original ffi, we ran in problems of searching past the line, which gave an exception in Gtk. The solution was to determine the length of the word from the ones that are to highlight, not from the casefolded searchword, but the original one. */ { // Variable. GtkTextIter begin; GtkTextIter end; // Extract the line. ustring line = gtk_text_buffer_get_slice(textbuffer, beginbound, endbound, false); // Find all places in this line that have the search word. /* To do that properly for glob-style pattern matching, for begin/end word matching and case (in)sensitivity, we need to open the box of tricks. We produce all possible combinations for characters and lengths, e.g. We have this text: he is We then make the following strings from it, and see whether they match: "h" "he" "he " "he i" "he is" "e" "e " "e i" "e is" " " " i" " is" "i" "is" "s" Any string matching will then be highlighted. */ // Deal with case sensitivity. ustring case_considerate_search_word(searchword); if (!casesensitive) case_considerate_search_word = case_considerate_search_word.casefold(); for (unsigned int i = 0; i < line.length(); i++) { if (interrupt_thread) continue; ustring line2(line.substr(0, i + 1)); for (unsigned int offposition = 0; offposition < line2.length(); offposition++) { // Get the line as described above. // We use optimization here to get the speed acceptable when we have // long lines. But when globbing is done, because of the characters of // glob-style matching, we don't know how long the searchword might be, // we do not use that optimization. unsigned int linelength = line2.length() - offposition; if (!globbing) if (linelength > searchword.length()) continue; ustring compareline(line2.substr(offposition, linelength)); // Deal with case sensitivity. if (!casesensitive) compareline = compareline.casefold(); // Now compare. bool match = false; if (globbing) { if (g_pattern_match_simple(case_considerate_search_word.c_str(), compareline.c_str())) match = true; } else { if (case_considerate_search_word == compareline) match = true; } // Get the iterators in the textbuffer that belong to this possible match. if (match) { begin = *beginbound; gtk_text_iter_forward_chars(&begin, offposition); end = begin; gtk_text_iter_forward_chars(&end, searchword.length()); } // Deal with begin-word matching. if (match) { if (matchbegin) { if (!gtk_text_iter_starts_word(&begin)) match = false; } } // Deal with end-word matching. if (match) { if (matchend) { if (!gtk_text_iter_ends_word(&end)) match = false; } } // Add the boundaries of the word to highlight. if (match) { wordstart.push_back(begin); wordend.push_back(end); } } } } void Highlight::searchwords_in_area(GtkTextBuffer * textbuffer, vector < GtkTextIter > &start, vector < GtkTextIter > &end, bool area_id, bool area_intro, bool area_heading, bool area_chapter, bool area_study, bool area_notes, bool area_xref, bool area_verse) /* Finds out whether the text within the "start" and "end" iterators is inside one of the given areas. If not, it removes the iterator from the containers. */ { // Categorization data CategorizeLine categorize(""); // Go through the iterators, starting at the end (to make erasing it easier). for (int it = start.size() - 1; it >= 0; it--) { // Get line number of the iterator. gint linenumber = gtk_text_iter_get_line(&start[it]); // Get the usfm this line starts with. ustring usfm; { GtkTextIter line1; gtk_text_buffer_get_iter_at_line(textbuffer, &line1, linenumber); GtkTextIter line2 = line1; gtk_text_iter_forward_chars(&line2, 10); ustring line = gtk_text_iter_get_text(&line1, &line2); usfm = usfm_extract_marker(line); } // See if this usfm is in one of the areas given. bool in_area = false; if (area_id) if (categorize.is_id_marker(usfm)) in_area = true; if (area_intro) if (categorize.is_intro_marker(usfm)) in_area = true; if (area_heading) if (categorize.is_head_marker(usfm)) in_area = true; if (area_chapter) if (categorize.is_chap_marker(usfm)) in_area = true; if (area_study) if (categorize.is_study_marker(usfm)) in_area = true; // The variables "area_notes" and "area_xref" are not relevant. if (area_verse) if (categorize.is_verse_marker(usfm)) in_area = true; // If not in one of the areas, remove this iterator from the container. if (!in_area) { vector < GtkTextIter >::iterator startiter = start.begin(); vector < GtkTextIter >::iterator enditer = end.begin(); for (int i = 0; i < it; i++) { startiter++; enditer++; } start.erase(startiter); end.erase(enditer); } } } void Highlight::remove_previous_highlights(GtkTextBuffer * textbuffer) // Removes previous highlights. // Ensure that removing the tags does not influence the modified status of the textbuffer. { GtkTextIter startiter; GtkTextIter enditer; gtk_text_buffer_get_start_iter(textbuffer, &startiter); gtk_text_buffer_get_end_iter(textbuffer, &enditer); bool modified_status = gtk_text_buffer_get_modified(textbuffer); gtk_text_buffer_remove_tag(textbuffer, mytag, &startiter, &enditer); if (!modified_status) gtk_text_buffer_set_modified(textbuffer, false); } void Highlight::determine_locations() // Determine the locations where to highlight text. { // Call the highlight routine for the text. searchwords(maintextbuffer, maintextview, main_start_offset, main_end_offset); // Set a flag informing the main thread that the locations are available. locations_ready = true; } void Highlight::highlight() // This does the actual highlighting. // Ensure that applying a tag does not change the modified status of the textbuffer. { bool cursor_set = false; for (unsigned int i = 0; i < highlightwordstarts.size(); i++) { GtkTextIter start, end; gtk_text_buffer_get_iter_at_offset(highlightbuffers[i], &start, highlightwordstarts[i]); gtk_text_buffer_get_iter_at_offset(highlightbuffers[i], &end, highlightwordends[i]); bool modified_status = gtk_text_buffer_get_modified(highlightbuffers[i]); gtk_text_buffer_apply_tag(highlightbuffers[i], mytag, &start, &end); if (!modified_status) gtk_text_buffer_set_modified(highlightbuffers[i], false); if (!cursor_set) { gtk_text_buffer_place_cursor(highlightbuffers[i], &start); screen_scroll_to_iterator(highlightviews[i], &start); cursor_set = true; } } } bool searchwords_find_fast (const ustring& text, const vector & searchwords, const vector & wholewords, const vector & casesensitives, vector & startpositions, vector & lengths) // Finds occurrences of searchwords in the text. // text: Text to be looked through. // searchwords: Search words to look for. // wholewords / casesensitives: Attributes of the searchwords. // startpositions: If non-NULL, will be filled with the positions that each searchword starts at. // lengths: If non-NULL, will be filled with the lengths of the searchwords found. // Returns whether one or more searchwords were found in the text. { // Clear output containers. startpositions.clear(); lengths.clear(); // A textbuffer makes searching text easier in this case. GtkTextBuffer * textbuffer = gtk_text_buffer_new (NULL); gtk_text_buffer_set_text (textbuffer, text.c_str(), -1); GtkTextIter startiter; gtk_text_buffer_get_start_iter(textbuffer, &startiter); bool found = false; // Go through all words to look for. for (unsigned int i2 = 0; i2 < searchwords.size(); i2++) { // Define this search word and its parameters. ustring searchword = searchwords[i2]; bool wholeword = wholewords[i2]; bool casesensitive = casesensitives[i2]; // Handle case sensitivity. ustring mytext; ustring mysearchword; if (casesensitive) { mytext = text; mysearchword = searchword; } else { mytext = text.casefold(); mysearchword = searchword.casefold(); } // Find all occurrences of the word. size_t position = mytext.find(mysearchword); while (position != string::npos) { bool temporally_approved = true; GtkTextIter approvedstart = startiter; GtkTextIter approvedend; gtk_text_iter_forward_chars(&approvedstart, position); approvedend = approvedstart; gtk_text_iter_forward_chars(&approvedend, searchword.length()); if (wholeword) { if (!gtk_text_iter_starts_word(&approvedstart)) temporally_approved = false; if (!gtk_text_iter_ends_word(&approvedend)) temporally_approved = false; } if (temporally_approved) { found = true; startpositions.push_back (position); lengths.push_back (searchword.length()); } position = mytext.find(mysearchword, ++position); } } // Free textbuffer used. g_object_unref (textbuffer); if (found) { // Sort the output. quick_sort (startpositions, lengths, 0, startpositions.size()); // Overlapping items need to be combined to avoid crashes. xml_combine_overlaps (startpositions, lengths); } // Return true if anything was found. return found; } bibledit-gtk-4.9/src/highlight.h000664 000766 000024 00000006002 12221507143 016757 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_HIGHLIGHT_H #define INCLUDED_HIGHLIGHT_H #include "libraries.h" #include #include #include "editor_aids.h" #include "htmlwriter2.h" class Highlight { public: Highlight (GtkTextBuffer * buffer, GtkWidget * textview, const ustring& project, GtkTextTag * tag, const ustring& verse); ~Highlight (); void determine_locations (); bool locations_ready; void highlight (); private: bool interrupt_thread; GtkTextTag * mytag; GtkTextBuffer * maintextbuffer; GtkTextView * maintextview; gint main_start_offset; gint main_end_offset; vector highlightwordstarts; vector highlightwordends; vector highlightbuffers; vector highlightviews; void searchwords (GtkTextBuffer * textbuffer, GtkTextView * textview, gint startoffset, gint endoffset); void searchwords_find_fast (GtkTextBuffer * textbuffer, GtkTextIter * beginbound, GtkTextIter * endbound, const ustring & searchword, bool casesensitive, vector & wordstart, vector& wordend); void searchwords_find_slow (GtkTextBuffer * textbuffer, GtkTextIter * beginbound, GtkTextIter * endbound, const ustring & searchword, bool casesensitive, bool globbing, bool matchbegin, bool matchend, vector & wordstart, vector& wordend); void searchwords_in_area (GtkTextBuffer * textbuffer, vector & start, vector& end, bool area_id, bool area_intro, bool area_heading, bool area_chapter, bool area_study, bool area_notes, bool area_xref, bool area_verse); void remove_previous_highlights (GtkTextBuffer * textbuffer); }; bool searchwords_find_fast (const ustring& text, const vector & searchwords, const vector & wholewords, const vector & casesensitives, vector & startpositions, vector & lengths); #endif bibledit-gtk-4.9/src/html.cpp000664 000766 000024 00000007724 12221507141 016321 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "html.h" #include "utilities.h" #include "tiny_utilities.h" ustring html_remove_code_between_less_than_and_greater_than_signs(const ustring & text) { ustring clean_line(text); unsigned int infinite_loop_counter = 0; while (true) { infinite_loop_counter++; if (infinite_loop_counter > 100000) break; size_t open_position = clean_line.find("<"); if (open_position == string::npos) break; size_t close_position = clean_line.find(">", open_position); if (close_position == string::npos) break; clean_line.erase(open_position, close_position - open_position + 1); } return clean_line; } ustring html_create_anchor(const ustring & anchor, const ustring & text) { ustring result; result.append(""); result.append(text); result.append(""); return result; } ustring html_extract_title(const ustring & filename) // Extracts the title from the file: Page Title { ustring title; ReadText rt(filename, true); for (unsigned int i = 0; i < rt.lines.size(); i++) { ustring line = rt.lines[i].casefold(); size_t pos = line.find(""); if (pos != string::npos) { line = rt.lines[i]; line.erase(0, pos + 7); pos = line.find("<"); if (pos == string::npos) title = line; else title = line.substr(0, pos); } } return title; } void html_entities_to_utf8(ustring & code) // Change html entities to utf8 code, e.g. ε becomes ε. // The entities for < and > and & remain because they are supposed to be given like &, etc. { size_t ampersand_pos = 0; while (true) { ampersand_pos = code.find("&", ampersand_pos); if (ampersand_pos == string::npos) break; size_t hash_pos = code.find("#", ampersand_pos); if (hash_pos == string::npos) break; if (hash_pos != ampersand_pos + 1) { ampersand_pos++; continue; } size_t semicolon_pos = code.find(";", ampersand_pos); if (semicolon_pos == string::npos) break; ustring number = code.substr(hash_pos + 1, semicolon_pos - hash_pos - 1); if (number_in_string(number) != number) { ampersand_pos++; continue; } gunichar unichar = convert_to_int(number); char *buffer = g_ucs4_to_utf8(&unichar, 1, NULL, NULL, NULL); if (buffer) { code.erase(ampersand_pos, semicolon_pos - ampersand_pos + 1); code.insert(ampersand_pos, buffer); g_free(buffer); } ampersand_pos++; } } int html_hexit(char c) { if (c >= '0' && c <= '9') return c - '0'; if (c >= 'a' && c <= 'f') return c - 'a' + 10; if (c >= 'A' && c <= 'F') return c - 'A' + 10; return 0; } void html_url_decode(char *buf) // Decode string %xx -> char (in place) { int v; char *p, *s, *w; w = p = buf; while (*p) { v = 0; if (*p == '%') { s = p; s++; if (isxdigit((int)s[0]) && isxdigit((int)s[1])) { v = html_hexit(s[0]) * 16 + html_hexit(s[1]); if (v) { /* do not decode %00 to null char */ *w = (char)v; p = &s[1]; } } } if (!v) *w = *p; p++; w++; } *w = '\0'; } ��������������������������������������������bibledit-gtk-4.9/src/html.h�������������������������������������������������������������������������000664 �000766 �000024 �00000002254 12221507140 015756� 0����������������������������������������������������������������������������������������������������ustar�00teus����������������������������staff���������������������������000000 �000000 ������������������������������������������������������������������������������������������������������������������������������������������������������������������������/* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_HTML_H #define INCLUDED_HTML_H #include "libraries.h" ustring html_remove_code_between_less_than_and_greater_than_signs(const ustring& text); ustring html_create_anchor(const ustring& anchor, const ustring& text); ustring html_extract_title(const ustring& filename); void html_entities_to_utf8(ustring& code); int html_hexit(char c); void html_url_decode(char *buf); #endif ����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������bibledit-gtk-4.9/src/htmlbrowser.cpp����������������������������������������������������������������000644 �000766 �000024 �00000007165 12453001367 017730� 0����������������������������������������������������������������������������������������������������ustar�00teus����������������������������staff���������������������������000000 �000000 ������������������������������������������������������������������������������������������������������������������������������������������������������������������������/* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "htmlbrowser.h" #include <gtk/gtk.h> #include "gtkwrappers.h" #include "gwrappers.h" #include "directories.h" #include "utilities.h" #include "unixwrappers.h" #include "constants.h" #include "uname.h" #include "windowsoutpost.h" #define NUMBER_OF_BROWSERS 10 const gchar *helpcommand(int index) { // Returns a command to be executed to get the helpfile displayed. // Variable "index" selects which browser will be used. const gchar *command = NULL; switch (index) { case 0: { command = "htmlview"; break; } case 1: { command = "google-chrome"; break; } case 2: { command = "firefox"; break; } case 3: { command = "firefox3"; break; } case 4: { command = "mozilla"; break; } case 5: { command = "galeon"; break; } case 6: { command = "konqueror"; break; } case 7: { command = "epiphany"; break; } case 8: { command = "opera"; break; } case 9: { command = "open"; break; } // Note: when adding new browsers, ensure that // NUMBER_OF_BROWSERS is updated too. } return command; } void htmlbrowser (const ustring & filename, bool network, bool no_tamper) // View the file through the default browser. // no_tamper: No tampering with the "filename". { // Get the prefix. ustring prefix; if (!no_tamper) { if (network) prefix = "http://"; else prefix = "file://"; } // Handle if Windows. #ifdef WIN32 ustring url(filename); url.insert(0, prefix); windowsoutpost_open_url(url); return; #endif // Handle Unix. int browser_index = -1; ustring outputfile; for (unsigned int i = 0; i < NUMBER_OF_BROWSERS; i++) { // At first we used the exit code of "which" to determine whether it had // found the program, but this does not work on BSD likes. So now we read // the output to see what whether it found the program. if (gw_find_program_in_path(helpcommand(i))) { browser_index = i; break; } } if (browser_index >= 0) { GwSpawn spawn(helpcommand(browser_index)); spawn.arg(prefix + filename); spawn.async(); spawn.run(); } else { // No suitable browser was found. // Inform the user about it, and what to do to solve it. ustring message; message = "The help cannot be displayed, because there is no suitable browser installed.\n"; message.append("Install one of the following supported browsers:\n"); for (unsigned int i = 0; i < NUMBER_OF_BROWSERS; i++) { message.append(helpcommand(i)); message.append("\n"); } gtkw_dialog_error(NULL, message); } } ustring html_server_url (const ustring& url) { ustring server_url = gw_build_filename (Directories->get_package_data (), url); return server_url; } �����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������bibledit-gtk-4.9/src/htmlbrowser.h������������������������������������������������������������������000664 �000766 �000024 �00000001770 12221507146 017372� 0����������������������������������������������������������������������������������������������������ustar�00teus����������������������������staff���������������������������000000 �000000 ������������������������������������������������������������������������������������������������������������������������������������������������������������������������/* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_HTMLBROWSER_H #define INCLUDED_HTMLBROWSER_H #include "libraries.h" void htmlbrowser (const ustring& filename, bool network = false, bool no_tamper = false); ustring html_server_url (const ustring& url); #endif ��������bibledit-gtk-4.9/src/htmlwriter.cpp�����������������������������������������������������������������000644 �000766 �000024 �00000025126 12453001367 017556� 0����������������������������������������������������������������������������������������������������ustar�00teus����������������������������staff���������������������������000000 �000000 ������������������������������������������������������������������������������������������������������������������������������������������������������������������������/* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "htmlwriter.h" #include "tiny_utilities.h" #include "directories.h" #include "gwrappers.h" #include "gtkwrappers.h" HtmlWriter::HtmlWriter(const ustring & title, bool include_java_scripts, bool include_bibledit_css, bool include_bar_graph_css) { buffer = xmlBufferCreate(); writer = xmlNewTextWriterMemory(buffer, 0); xmlTextWriterSetIndent(writer, 1); xmlTextWriterStartDocument(writer, NULL, "UTF-8", NULL); xmlTextWriterStartElement(writer, BAD_CAST "html"); xmlTextWriterStartElement(writer, BAD_CAST "head"); xmlTextWriterStartElement(writer, BAD_CAST "meta"); xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "content", "text/html; charset=UTF-8"); xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "http-equiv", "content-type"); xmlTextWriterEndElement(writer); xmlTextWriterStartElement(writer, BAD_CAST "title"); xmlTextWriterWriteFormatString(writer, "%s", title.c_str()); xmlTextWriterEndElement(writer); if (include_bibledit_css) { xmlTextWriterStartElement(writer, BAD_CAST "link"); xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "href", "http://localhost:51516/bibledit.css"); xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "rel", "stylesheet"); xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "type", "text/css"); xmlTextWriterEndElement(writer); } if (include_java_scripts) { xmlTextWriterStartElement(writer, BAD_CAST "SCRIPT"); xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "TYPE", "text/javascript"); xmlTextWriterStartComment(writer); xmlTextWriterWriteFormatString(writer, "\n"); xmlTextWriterWriteFormatString(writer, "function popup(mylink, windowname)\n"); xmlTextWriterWriteFormatString(writer, "{\n"); xmlTextWriterWriteFormatString(writer, " if (! window.focus)\n"); xmlTextWriterWriteFormatString(writer, " return true;\n"); xmlTextWriterWriteFormatString(writer, " var href;\n"); xmlTextWriterWriteFormatString(writer, " if (typeof(mylink) == 'string')\n"); xmlTextWriterWriteFormatString(writer, " href=mylink;\n"); xmlTextWriterWriteFormatString(writer, " else\n"); xmlTextWriterWriteFormatString(writer, " href=mylink.href;\n"); xmlTextWriterWriteFormatString(writer, " window.open(href, windowname, 'width=300,height=80,scrollbars=no');\n"); xmlTextWriterWriteFormatString(writer, " return false;\n"); xmlTextWriterWriteFormatString(writer, "}\n"); xmlTextWriterEndComment(writer); xmlTextWriterEndElement(writer); } if (include_bar_graph_css) { xmlTextWriterStartElement(writer, BAD_CAST "style"); xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "type", "text/css"); xmlTextWriterWriteFormatString(writer, "\n"); xmlTextWriterWriteFormatString(writer, ".graph {\n"); xmlTextWriterWriteFormatString(writer, " border: solid 1px black;\n"); xmlTextWriterWriteFormatString(writer, "}\n"); xmlTextWriterWriteFormatString(writer, "\n"); xmlTextWriterWriteFormatString(writer, ".graph thead th {\n"); xmlTextWriterWriteFormatString(writer, " border-bottom: double 3px black;\n"); xmlTextWriterWriteFormatString(writer, " padding: 1em;\n"); xmlTextWriterWriteFormatString(writer, "}\n"); xmlTextWriterWriteFormatString(writer, "\n"); xmlTextWriterWriteFormatString(writer, ".graph tfoot td {\n"); xmlTextWriterWriteFormatString(writer, " border-top: solid 1px #999999;\n"); xmlTextWriterWriteFormatString(writer, " font-size: x-small;\n"); xmlTextWriterWriteFormatString(writer, " text-align: center;\n"); xmlTextWriterWriteFormatString(writer, " padding: 0.5em;\n"); xmlTextWriterWriteFormatString(writer, " color: #666666;\n"); xmlTextWriterWriteFormatString(writer, "}\n"); xmlTextWriterWriteFormatString(writer, "\n"); xmlTextWriterWriteFormatString(writer, ".bar div { \n"); xmlTextWriterWriteFormatString(writer, " border-top: solid 15px #0077DD;\n"); xmlTextWriterWriteFormatString(writer, " background-color: #004080;\n"); xmlTextWriterWriteFormatString(writer, " text-align: right;\n"); xmlTextWriterWriteFormatString(writer, " color: white;\n"); xmlTextWriterWriteFormatString(writer, " float: left;\n"); xmlTextWriterWriteFormatString(writer, " padding-top: 0;\n"); xmlTextWriterWriteFormatString(writer, "}\n"); xmlTextWriterWriteFormatString(writer, "\n"); xmlTextWriterEndElement(writer); } xmlTextWriterEndElement(writer); xmlTextWriterStartElement(writer, BAD_CAST "body"); } HtmlWriter::~HtmlWriter() { xmlTextWriterEndDocument(writer); xmlTextWriterFlush(writer); ustring filename = gw_build_filename(Directories->get_temp(), "document.html"); g_file_set_contents(filename.c_str(), (const gchar *)buffer->content, -1, NULL); gtkw_show_uri (filename, false); if (writer) xmlFreeTextWriter(writer); if (buffer) xmlBufferFree(buffer); } void HtmlWriter::heading(unsigned int level, const ustring & text) { ustring element("h"); element.append(convert_to_string(level)); xmlTextWriterStartElement(writer, BAD_CAST element.c_str()); xmlTextWriterWriteFormatString(writer, "%s", text.c_str()); xmlTextWriterEndElement(writer); } void HtmlWriter::paragraph(const ustring & text) { xmlTextWriterStartElement(writer, BAD_CAST "p"); xmlTextWriterWriteFormatString(writer, "%s", text.c_str()); xmlTextWriterEndElement(writer); } void HtmlWriter::bargraph(const ustring & header, const vector < ustring > &texts, const vector < unsigned int >&percentages, const ustring & footer) { xmlTextWriterStartElement(writer, BAD_CAST "table"); xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "class", "graph"); xmlTextWriterStartElement(writer, BAD_CAST "thead"); xmlTextWriterStartElement(writer, BAD_CAST "tr"); xmlTextWriterStartElement(writer, BAD_CAST "th"); xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "colspan", "3"); xmlTextWriterWriteFormatString(writer, "%s", header.c_str()); xmlTextWriterEndElement(writer); xmlTextWriterEndElement(writer); xmlTextWriterEndElement(writer); xmlTextWriterStartElement(writer, BAD_CAST "tbody"); for (unsigned int i = 0; i < texts.size(); i++) { xmlTextWriterStartElement(writer, BAD_CAST "tr"); xmlTextWriterStartElement(writer, BAD_CAST "td"); xmlTextWriterWriteFormatString(writer, "%s", texts[i].c_str()); xmlTextWriterEndElement(writer); xmlTextWriterStartElement(writer, BAD_CAST "td"); xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "width", "400px"); xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "class", "bar"); xmlTextWriterStartElement(writer, BAD_CAST "div"); xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "style", "width: %i%%", percentages[i]); xmlTextWriterEndElement(writer); xmlTextWriterEndElement(writer); xmlTextWriterStartElement(writer, BAD_CAST "td"); xmlTextWriterWriteFormatString(writer, "%i%%", percentages[i]); xmlTextWriterEndElement(writer); xmlTextWriterEndElement(writer); } xmlTextWriterEndElement(writer); xmlTextWriterEndElement(writer); } void HtmlWriter::table(const ustring & main_header, const vector < ustring > &column_headers, const vector < VectorUstring > &cell_texts, const ustring & footer, vector < bool > *centers, int header_font_size) /* Writes a table. main_header: The main header on the table. column_headers: The headers for each column. cell_texts: A double vector of texts for in the cells. centers: A list of booleans whether the text in the cells needs to be centered. header_font_size: 0: Normal, negative: smaller, positive: bigger. */ { xmlTextWriterStartElement(writer, BAD_CAST "table"); xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "border", "1"); if (!main_header.empty() || !column_headers.empty()) { xmlTextWriterStartElement(writer, BAD_CAST "thead"); xmlTextWriterStartElement(writer, BAD_CAST "tr"); xmlTextWriterStartElement(writer, BAD_CAST "th"); xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "colspan", "100"); xmlTextWriterWriteString(writer, BAD_CAST main_header.c_str()); xmlTextWriterEndElement(writer); xmlTextWriterEndElement(writer); xmlTextWriterStartElement(writer, BAD_CAST "tr"); for (unsigned int i = 0; i < column_headers.size(); i++) { xmlTextWriterStartElement(writer, BAD_CAST "th"); if (header_font_size > 0) { xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "style", "font-size: larger;"); } if (header_font_size < 0) { xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "style", "font-size: smaller;"); } xmlTextWriterWriteString(writer, BAD_CAST column_headers[i].c_str()); xmlTextWriterEndElement(writer); } xmlTextWriterEndElement(writer); xmlTextWriterEndElement(writer); } xmlTextWriterStartElement(writer, BAD_CAST "tbody"); for (unsigned int i = 0; i < cell_texts.size(); i++) { xmlTextWriterStartElement(writer, BAD_CAST "tr"); for (unsigned int i2 = 0; i2 < cell_texts[i].size(); i2++) { xmlTextWriterStartElement(writer, BAD_CAST "td"); if (centers) { if (i2 < centers->size()) { if (centers->at(i2)) { xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "style", "text-align: center;"); } } } xmlTextWriterWriteString(writer, BAD_CAST cell_texts[i][i2].c_str()); xmlTextWriterEndElement(writer); } xmlTextWriterEndElement(writer); } xmlTextWriterEndElement(writer); xmlTextWriterEndElement(writer); } void HtmlWriter::hyperlinkedparagraph(const ustring & text, const ustring & hyperlink) // <p><a href="filename.html">Text</a></p> { xmlTextWriterStartElement(writer, BAD_CAST "p"); xmlTextWriterStartElement(writer, BAD_CAST "a"); xmlTextWriterWriteAttribute(writer, BAD_CAST "href", BAD_CAST hyperlink.c_str()); xmlTextWriterWriteFormatString(writer, "%s", text.c_str()); xmlTextWriterEndElement(writer); xmlTextWriterEndElement(writer); } ������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������bibledit-gtk-4.9/src/htmlwriter.h�������������������������������������������������������������������000664 �000766 �000024 �00000003174 12221507142 017217� 0����������������������������������������������������������������������������������������������������ustar�00teus����������������������������staff���������������������������000000 �000000 ������������������������������������������������������������������������������������������������������������������������������������������������������������������������/* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_HTMLWRITER_H #define INCLUDED_HTMLWRITER_H #include "libraries.h" #include <libxml/xmlwriter.h> #include "types.h" class HtmlWriter { public: HtmlWriter (const ustring& title, bool include_java_scripts, bool include_bibledit_css, bool include_bar_graph_css); ~HtmlWriter (); void heading (unsigned int level, const ustring& text); void paragraph (const ustring& text); void bargraph (const ustring& header, const vector <ustring>& texts, const vector <unsigned int>& percentages, const ustring& footer); void table (const ustring& main_header, const vector <ustring>& column_headers, const vector <VectorUstring>& cell_texts, const ustring& footer, vector <bool> * centers, int header_font_size); void hyperlinkedparagraph (const ustring& text, const ustring& hyperlink); private: xmlBufferPtr buffer; xmlTextWriterPtr writer; }; #endif ����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������bibledit-gtk-4.9/src/htmlwriter2.cpp����������������������������������������������������������������000664 �000766 �000024 �00000013371 12221507127 017637� 0����������������������������������������������������������������������������������������������������ustar�00teus����������������������������staff���������������������������000000 �000000 ������������������������������������������������������������������������������������������������������������������������������������������������������������������������/* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "htmlwriter2.h" #include "tiny_utilities.h" #include "directories.h" #include "gwrappers.h" #include "htmlbrowser.h" HtmlWriter2::HtmlWriter2(const ustring & title) { heading_opened = false; paragraph_opened = false; bold_level = 0; italics_level = 0; highlight_level = 0; buffer = xmlBufferCreate(); writer = xmlNewTextWriterMemory(buffer, 0); xmlTextWriterSetIndent(writer, 1); xmlTextWriterStartDocument(writer, NULL, "UTF-8", NULL); xmlTextWriterStartElement(writer, BAD_CAST "html"); xmlTextWriterStartElement(writer, BAD_CAST "head"); xmlTextWriterStartElement(writer, BAD_CAST "meta"); xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "content", "text/html; charset=UTF-8"); xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "http-equiv", "content-type"); xmlTextWriterEndElement(writer); xmlTextWriterStartElement(writer, BAD_CAST "title"); xmlTextWriterWriteFormatString(writer, "%s", title.c_str()); xmlTextWriterEndElement(writer); /* The following does not work to remove the underline from the link xmlTextWriterStartElement(writer, BAD_CAST "style"); xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "type", "text/css"); xmlTextWriterWriteFormatString(writer, "a { text-decoration:none }"); xmlTextWriterEndElement(writer); */ // End head. xmlTextWriterEndElement(writer); xmlTextWriterStartElement(writer, BAD_CAST "body"); } HtmlWriter2::~HtmlWriter2() { finish (); if (writer) xmlFreeTextWriter(writer); if (buffer) xmlBufferFree(buffer); } void HtmlWriter2::heading_open(unsigned int level) { heading_close (); paragraph_close (); ustring element("h"); element.append(convert_to_string(level)); xmlTextWriterStartElement(writer, BAD_CAST element.c_str()); heading_opened = true; } void HtmlWriter2::heading_close () { if (heading_opened) { xmlTextWriterEndElement(writer); heading_opened = false; } } void HtmlWriter2::paragraph_open() { heading_close (); paragraph_close (); xmlTextWriterStartElement(writer, BAD_CAST "p"); paragraph_opened = true; } void HtmlWriter2::paragraph_close() { if (paragraph_opened) { xmlTextWriterEndElement(writer); paragraph_opened = false; } } void HtmlWriter2::form_open (const gchar * name, const gchar * action, const gchar * method) { xmlTextWriterStartElement(writer, BAD_CAST "form"); if (name) xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "name", "%s", name); if (action) xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "action", "%s", action); if (method) xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "method", "%s", method); } void HtmlWriter2::form_close () { xmlTextWriterEndElement(writer); } void HtmlWriter2::input_open (const gchar * name, const gchar * type, unsigned int size, const gchar * value) { xmlTextWriterStartElement(writer, BAD_CAST "input"); if (name) xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "name", "%s", name); if (type) xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "type", "%s", type); if (size) xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "size", "%d", size); if (value) xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "value", "%s", value); } void HtmlWriter2::input_close () { xmlTextWriterEndElement(writer); } void HtmlWriter2::text_add(const ustring& text) { if (!(heading_opened || paragraph_opened)) { paragraph_open (); } xmlTextWriterWriteFormatString(writer, "%s", text.c_str()); } void HtmlWriter2::hyperlink_add (const ustring& url, const ustring& text) // <a href="url">text</a> // Or for links without underline: <a href="url" style="text-decoration:none">text</a> { if (!(heading_opened || paragraph_opened)) { paragraph_open (); } xmlTextWriterStartElement(writer, BAD_CAST "a"); xmlTextWriterWriteAttribute(writer, BAD_CAST "href", BAD_CAST url.c_str()); // Does not work to remove the underline from the link xmlTextWriterWriteAttribute(writer, BAD_CAST "style", BAD_CAST "text-decoration:none"); xmlTextWriterWriteFormatString(writer, "%s", text.c_str()); xmlTextWriterEndElement(writer); } void HtmlWriter2::bold_open() { xmlTextWriterStartElement(writer, BAD_CAST "b"); bold_level++; } void HtmlWriter2::bold_close() { if (bold_level) { xmlTextWriterEndElement(writer); bold_level--; } } void HtmlWriter2::italics_open() { xmlTextWriterStartElement(writer, BAD_CAST "i"); italics_level++; } void HtmlWriter2::italics_close() { if (italics_level) { xmlTextWriterEndElement(writer); italics_level--; } } void HtmlWriter2::highlight_open() { xmlTextWriterStartElement(writer, BAD_CAST "FONT style=\"BACKGROUND-COLOR: yellow\""); highlight_level++; } void HtmlWriter2::highlight_close() { if (highlight_level) { xmlTextWriterEndElement(writer); highlight_level--; } } void HtmlWriter2::finish () // Finish the html document, and make it available. { xmlTextWriterEndDocument(writer); xmlTextWriterFlush(writer); html = (const gchar *)buffer->content; } �����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������bibledit-gtk-4.9/src/htmlwriter2.h������������������������������������������������������������������000664 �000766 �000024 �00000003424 12221507151 017277� 0����������������������������������������������������������������������������������������������������ustar�00teus����������������������������staff���������������������������000000 �000000 ������������������������������������������������������������������������������������������������������������������������������������������������������������������������/* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_HTMLWRITER2_H #define INCLUDED_HTMLWRITER2_H #include "libraries.h" #include <libxml/xmlwriter.h> #include "types.h" class HtmlWriter2 { public: HtmlWriter2 (const ustring& title); ~HtmlWriter2 (); void heading_open (unsigned int level); void heading_close (); void paragraph_open (); void paragraph_close (); void form_open (const gchar * name, const gchar * action, const gchar * method); void form_close (); void input_open (const gchar * name, const gchar * type, unsigned int size, const gchar * value); void input_close (); void text_add (const ustring& text); void hyperlink_add (const ustring& url, const ustring& text); void bold_open(); void bold_close(); void italics_open (); void italics_close (); void highlight_open(); void highlight_close(); void finish (); ustring html; private: xmlBufferPtr buffer; xmlTextWriterPtr writer; bool heading_opened; bool paragraph_opened; int bold_level; int italics_level; int highlight_level; }; #endif ��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������bibledit-gtk-4.9/src/httpd.cpp����������������������������������������������������������������������000644 �000766 �000024 �00000041711 12453001367 016476� 0����������������������������������������������������������������������������������������������������ustar�00teus����������������������������staff���������������������������000000 �000000 ������������������������������������������������������������������������������������������������������������������������������������������������������������������������/* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "utilities.h" #include "httpd.h" #include <glib.h> #include "bible.h" #include "gwrappers.h" #include "shell.h" #include "unixwrappers.h" #include "uname.h" #include "books.h" #include "settings.h" #include <errno.h> #include "directories.h" #include "tiny_utilities.h" #include "html.h" Httpd::Httpd(bool dummy) // This is a basic webserver tailored to Bibledit's specific needs. { // New g_thread_new ("httpd", GThreadFunc (thread_start), gpointer(this)); g_thread_create(GThreadFunc(thread_start), gpointer(this), false, NULL); } Httpd::~Httpd() { // When the object is destroyed, a flag is set indicating this. The socket // times out, and the webserver sees the flags, and shuts down. thread_stop = true; // Wait a bit longer than the server's timeout on the non blocking port. g_usleep(200000); // Just to be sure, and solve a problem of sockets not being closed, which has been // seen randomly, we close the socket and connection here. #ifdef WIN32 closesocket(conn); closesocket(sock); #else close(conn); close(sock); #endif } void Httpd::thread_start(gpointer data) { ((Httpd *) data)->thread_main(); } void Httpd::thread_main() { // Get the host. // Convert the host address to an IP number, possibly looking in DNS. struct hostent *host = gethostbyname("localhost"); if (!host) { log(strerror(errno)); return; } // Get a socket. #ifdef WIN32 sock = socket(PF_INET, SOCK_STREAM, IPPROTO_TCP); if (sock == INVALID_SOCKET) #else sock = socket(PF_INET, SOCK_STREAM, 0); if (sock < 0) #endif { log(strerror(errno)); return; } // Let the kernel reuse the socket address, allowing us to run twice in a row, // without waiting for the (ip, port) tuple to time out. const char i = 1; setsockopt(sock, SOL_SOCKET, SO_REUSEADDR, &i, sizeof(i)); // Initialize IP address and port number. struct sockaddr_in address; address.sin_family = AF_INET; #ifdef WIN32 WSAHtons(sock, HTTPD_PORT, &address.sin_port); // Having this bound listening externally seems like a really bad idea. // Changed to use loopback for Windows. // Yes, not everyone has a loopback, but they can fix this themselves. address.sin_addr.s_addr = inet_addr("127.0.0.1"); #else address.sin_port = htons(HTTPD_PORT); // On Linux even people from outside can consult the helpfile. address.sin_addr.s_addr = INADDR_ANY; #endif memset(&(address.sin_zero), 0, 8); // Bind address to socket. #ifdef WIN32 if (bind(sock, (struct sockaddr *)&address, sizeof(address)) == SOCKET_ERROR) { closesocket(sock); #else if (bind(sock, (struct sockaddr *)&address, sizeof(address)) == -1) { close(sock); #endif log(strerror(errno)); return; } // Set socket to non-blocking mode. #ifdef WIN32 u_long socketmode = 1; // Set non-blocking ioctlsocket(sock, FIONBIO, &socketmode); #else fcntl(sock, F_SETFL, fcntl(sock, F_GETFL, 0) | O_NONBLOCK); #endif // Listen on socket. #ifdef WIN32 if (listen(sock, 10) == SOCKET_ERROR) { closesocket(sock); #else if (listen(sock, 10) == -1) { close(sock); #endif log(strerror(errno)); return; } // Handle connections. // At first we had the problem of a hanging server. Bibledit would quit, but // the socket would still block waiting for a request to come, and the next // time Bibledit would start, the address would be in use already. // This new system solves that. The socket is non-blocking, and if no connection // comes it, it runs all over again. This way nothing hangs. // Another stab at this problem is given in the object destructor: it closes // the two sockets by force, regardless of who's communicating or listening on // it. thread_stop = false; socklen_t addr_length = sizeof(struct sockaddr_in); while (!thread_stop) { conn = accept(sock, (struct sockaddr *)&address, &addr_length); #ifdef WIN32 if (conn == INVALID_SOCKET) { closesocket(conn); #else if (conn < 0) { close(conn); #endif g_usleep(50000); } else { // accept() worked handle_request(conn); } } // end accept loop #ifdef WIN32 closesocket(sock); #else close(sock); #endif } void Httpd::handle_request(int fd) { // Read the request from the browser. Example of a typical request: // GET / HTTP/1.1 // Host: localhost:51517 // User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1b1) Gecko/20060708 Firefox/2.0b1 // Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5 // Accept-Language: en-us,en;q=0.5 // Accept-Encoding: gzip,deflate // Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7 // Keep-Alive: 300 // Connection: keep-alive // char buf[1024]; #ifdef WIN32 int amount = recv(fd, buf, sizeof(buf), 0); #else int amount = read(fd, buf, sizeof(buf)); #endif if (amount > 0) { // Put a 0 at the last character, to close the string. buf[amount] = '\0'; // Divide the request into its parts. Parse parse(buf, false); if (parse.words.size() >= 2) { // Get the filename requested, and the command: the part after the ?. // Also whether this url should open a capable browser. ustring filename(parse.words[1]); if (filename.find("_difficult_url_") != string::npos) { difficult_url = filename; difficult_url.erase(0, difficult_url.find("_difficult_url_") + 15); filename = "/"; } if (filename == "/") filename = "index.html"; ustring command; size_t question_pos; question_pos = filename.find("?"); if (question_pos != string::npos) { command = filename.substr(question_pos + 1, 1000); filename.erase(question_pos, filename.length() - question_pos); char *command2 = strdup(command.c_str()); html_url_decode(command2); command = command2; free(command2); } { // No intrusions: take filename, strip path off, Bibledit's data path. filename = gw_build_filename(Directories->get_package_data(), gw_path_get_basename(filename)); // Decide what action to take. if ((gw_path_get_basename(filename) == "search.html") && (!command.empty())) { send_search(fd, filename, command); } else if ((gw_path_get_basename(filename) == "bibledit_loads_references.html") && (!command.empty())) { // E.g.: http://localhost:51516/bibledit_loads_references.html?search-whole-word=word if (command.length() >= 18) { command.erase(0, 18); search_whole_word = command; } send_file(fd, filename); } else { send_file(fd, filename); } } } } #ifdef WIN32 closesocket(fd); #else close(fd); #endif } void Httpd::log(const ustring & message) { gw_message("Webserver: " + message); } void Httpd::sendline(int fd, const ustring & line) { #ifdef WIN32 if (send(fd, line.c_str(), strlen(line.c_str()), 0)) ; if (send(fd, "\n", 1, 0)) ; #else if (write(fd, line.c_str(), strlen(line.c_str()))) ; if (write(fd, "\n", 1)) ; #endif } const char *Httpd::getmimetype(char *name) { // DD: Shouldn't we read this from a system mime.types ? struct { const char *ext; const char *type; } mime_table[] = { { ".html", "text/html"}, { ".htm", "text/html"}, { ".txt", "text/plain"}, { ".rtx", "text/richtext"}, { ".etx", "text/x-setext"}, { ".tsv", "text/tab-separated-values"}, { ".css", "text/css"}, { ".xml", "text/xml"}, { ".dtd", "text/xml"}, { ".gif", "image/gif"}, { ".jpg", "image/jpeg"}, { ".jpeg", "image/jpeg"}, { ".jpe", "image/jpeg"}, { ".jfif", "image/jpeg"}, { ".tif", "image/tiff"}, { ".tiff", "image/tiff"}, { ".pbm", "image/x-portable-bitmap"}, { ".pgm", "image/x-portable-graymap"}, { ".ppm", "image/x-portable-pixmap"}, { ".pnm", "image/x-portable-anymap"}, { ".xbm", "image/x-xbitmap"}, { ".xpm", "image/x-xpixmap"}, { ".xwd", "image/x-xwindowdump"}, { ".ief", "image/ief"}, { ".png", "image/png"}, { ".au", "audio/basic"}, { ".snd", "audio/basic"}, { ".aif", "audio/x-aiff"}, { ".aiff", "audio/x-aiff"}, { ".aifc", "audio/x-aiff"}, { ".ra", "audio/x-pn-realaudio"}, { ".ram", "audio/x-pn-realaudio"}, { ".rm", "audio/x-pn-realaudio"}, { ".rpm", "audio/x-pn-realaudio-plugin"}, { ".wav", "audio/wav"}, { ".mid", "audio/midi"}, { ".midi", "audio/midi"}, { ".kar", "audio/midi"}, { ".mpga", "audio/mpeg"}, { ".mp2", "audio/mpeg"}, { ".mp3", "audio/mpeg"}, { ".mpeg", "video/mpeg"}, { ".mpg", "video/mpeg"}, { ".mpe", "video/mpeg"}, { ".qt", "video/quicktime"}, { ".mov", "video/quicktime"}, { ".avi", "video/x-msvideo"}, { ".movie", "video/x-sgi-movie"}, { ".mv", "video/x-sgi-movie"}, { ".vx", "video/x-rad-screenplay"}, { ".a", "application/octet-stream"}, { ".bin", "application/octet-stream"}, { ".exe", "application/octet-stream"}, { ".dump", "application/octet-stream"}, { ".o", "application/octet-stream"}, { ".class", "application/java"}, { ".js", "application/x-javascript"}, { ".ai", "application/postscript"}, { ".eps", "application/postscript"}, { ".ps", "application/postscript"}, { ".dir", "application/x-director"}, { ".dcr", "application/x-director"}, { ".dxr", "application/x-director"}, { ".fgd", "application/x-director"}, { ".aam", "application/x-authorware-map"}, { ".aas", "application/x-authorware-seg"}, { ".aab", "application/x-authorware-bin"}, { ".fh4", "image/x-freehand"}, { ".fh7", "image/x-freehand"}, { ".fh5", "image/x-freehand"}, { ".fhc", "image/x-freehand"}, { ".fh", "image/x-freehand"}, { ".spl", "application/futuresplash"}, { ".swf", "application/x-shockwave-flash"}, { ".dvi", "application/x-dvi"}, { ".gtar", "application/x-gtar"}, { ".hdf", "application/x-hdf"}, { ".hqx", "application/mac-binhex40"}, { ".iv", "application/x-inventor"}, { ".latex", "application/x-latex"}, { ".man", "application/x-troff-man"}, { ".me", "application/x-troff-me"}, { ".mif", "application/x-mif"}, { ".ms", "application/x-troff-ms"}, { ".oda", "application/oda"}, { ".pdf", "application/pdf"}, { ".rtf", "application/rtf"}, { ".bcpio", "application/x-bcpio"}, { ".cpio", "application/x-cpio"}, { ".sv4cpio", "application/x-sv4cpio"}, { ".sv4crc", "application/x-sv4crc"}, { ".sh", "application/x-shar"}, { ".shar", "application/x-shar"}, { ".sit", "application/x-stuffit"}, { ".tar", "application/x-tar"}, { ".tex", "application/x-tex"}, { ".texi", "application/x-texinfo"}, { ".texinfo", "application/x-texinfo"}, { ".tr", "application/x-troff"}, { ".roff", "application/x-troff"}, { ".man", "application/x-troff-man"}, { ".me", "application/x-troff-me"}, { ".ms", "application/x-troff-ms"}, { ".zip", "application/x-zip-compressed"}, { ".tsp", "application/dsptype"}, { ".wsrc", "application/x-wais-source"}, { ".ustar", "application/x-ustar"}, { ".cdf", "application/x-netcdf"}, { ".nc", "application/x-netcdf"}, { ".doc", "application/msword"}, { ".ppt", "application/powerpoint"}, { ".wrl", "model/vrml"}, { ".vrml", "model/vrml"}, { ".mime", "message/rfc822"}, { ".pac", "application/x-ns-proxy-autoconfig"}, { ".wml", "text/vnd.wap.wml"}, { ".wmlc", "application/vnd.wap.wmlc"}, { ".wmls", "text/vnd.wap.wmlscript"}, { ".wmlsc", "application/vnd.wap.wmlscriptc"}, { ".wbmp", "image/vnd.wap.wbmp"}, { ".tgz", "application/x-gzip"}, { ".tar.gz", "application/x-gzip"}, { ".bz2", "application/x-bzip2"}, { ".zip", "application/zip"}, { ".svg", "image/svg+xml"}, { ".ico", "image/x-icon"} }; int namelen, extlen; unsigned int i; namelen = strlen(name); for (i = 0; i < sizeof(mime_table) / sizeof(*mime_table); i++) { extlen = strlen(mime_table[i].ext); if (extlen >= namelen) continue; if (strcasecmp(name + (namelen - extlen), mime_table[i].ext) == 0) return mime_table[i].type; } return "text/plain"; } void Httpd::send_content_type(int fd, const ustring & filename) { gchar *fn = g_strdup(filename.c_str()); ustring content_type = getmimetype(fn); g_free(fn); content_type.insert(0, "Content-Type: "); sendline(fd, content_type); } void Httpd::send_file(int fd, const ustring & filename) { if (g_file_test(filename.c_str(), G_FILE_TEST_IS_REGULAR)) { sendline(fd, "HTTP/1.1 200 OK"); send_content_type(fd, filename); sendline(fd, ""); gchar *contents; gsize length; g_file_get_contents(filename.c_str(), &contents, &length, NULL); // If it starts with olh_, then insert a link to the main index in the code. ustring basename = gw_path_get_basename(filename); if (g_str_has_prefix(basename.c_str(), "olh_")) { ustring s(contents); size_t pos = s.find("</body>"); s.insert(pos, "<p>See also the <a href=\"index.html\">general online help.</a></p>\n"); #ifdef WIN32 if (send(fd, s.c_str(), strlen(s.c_str()), 0)) ; } else { if (send(fd, contents, length, 0)) ; #else if (write(fd, s.c_str(), strlen(s.c_str()))) ; } else { if (write(fd, contents, length)) ; #endif } g_free(contents); } else { send_404(fd); } } void Httpd::send_404(int fd) { sendline(fd, "HTTP/1.1 404"); send_content_type(fd, "x.htm"); sendline(fd, ""); sendline(fd, "<HTML><BODY><TITLE>

Not found

"); } void Httpd::send_lines (int fd, const vector & lines) { sendline(fd, "HTTP/1.1 200 OK"); send_content_type(fd, "x.htm"); sendline(fd, ""); for (unsigned int i = 0; i < lines.size(); i++) { sendline (fd, lines[i]); } } void Httpd::send_search(int fd, const ustring & filename, const ustring & command) // Searches for a word in Bibledit's helpfiles. { // Get the word to search for. ustring searchword(command); searchword.erase(0, 2); // If no search word given, just send the file as it is. if (searchword.empty()) { send_file(fd, filename); return; } // Read the text, and insert the search results at the appropriate place. ReadText rt(filename, true, false); sendline(fd, "HTTP/1.1 200 OK"); send_content_type(fd, filename); sendline(fd, ""); for (unsigned int i = 0; i < rt.lines.size(); i++) { if (rt.lines[i].find("") != string::npos) { send_search_results(fd, searchword); } sendline(fd, rt.lines[i]); } } void Httpd::send_search_results(int fd, ustring searchword) { // Case insensitive search. searchword = lowerCase (searchword); // Variable whether anything turned up. bool succesful = false; // Go through all documentation. ReadFiles rf (Directories->get_package_data(), "", ".html"); for (unsigned int i = 0; i < rf.files.size(); i++) { ustring filename = gw_build_filename (Directories->get_package_data(), rf.files[i]); ReadText rt (filename, true, false); // Search for the text. bool hit = false; for (unsigned int i2 = 0; i2 < rt.lines.size(); i2++) { ustring line = lowerCase (rt.lines[i2]); size_t pos = line.find (searchword); if (pos != string::npos) { hit = true; break; } } if (hit) { // Extract the heading from the file string title; ReadText rt(filename, true, true); for (unsigned int i = 0; i < rt.lines.size(); i++) { if (title.empty()) { if (rt.lines[i].find(""); if (pos != string::npos) { title.erase(0, ++pos); } } } } if (title.empty()) title = "Untitled"; // Get basename for html linking. filename = gw_path_get_basename(filename); // Output html code. if (filename != "allpages.html") { sendline(fd, "

" + title + "

"); succesful = true; } } } // Indicate if nothing was found. if (!succesful) { sendline(fd, "

No search results.

"); } } bibledit-gtk-4.9/src/httpd.h000644 000766 000024 00000003405 12455215403 016141 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_HTTPD_H #define INCLUDED_HTTPD_H #include #include "libraries.h" #ifndef WIN32 #include #include #include #include #else #include #endif #include #define HTTPD_PORT 51516 class Httpd { public: Httpd (bool dummy); ~Httpd (); ustring search_whole_word; ustring difficult_url; private: static void thread_start (gpointer data); void thread_main (); bool thread_stop; void handle_request (int fd); void log (const ustring & message); void sendline (int fd, const ustring & line); const char * getmimetype (char *name); void send_content_type (int fd, const ustring& filename); void send_file (int fd, const ustring& filename); void send_404 (int fd); void send_lines (int fd, const vector & lines); void send_search (int fd, const ustring& filename, const ustring& command); void send_search_results (int fd, ustring searchword); int sock; int conn; }; #endif bibledit-gtk-4.9/src/hyphenate.cpp000664 000766 000024 00000002556 12221507142 017341 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "hyphenate.h" /* Some information about hyphenation follows below: The entity for a nonbreaking hyphen is as in these names: 's‑Gravenhage or 's‑Gravenhage. There are hyphenation files available from Tex/LaTex, with rules in them. But bibledit does not use them. There are soft hyphen characters (U+00AD) (­) to mark possible hyphenation points. Unicode has a non-breaking hyphen character - ‑ - This is ‑. There is also the normal hyphen, ‐. This can be used in combination with the soft hyphen, so it only breaks once. */ bibledit-gtk-4.9/src/hyphenate.h000664 000766 000024 00000001574 12221507146 017011 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_HYPHENATE_H #define INCLUDED_HYPHENATE_H #include "libraries.h" #include #endif bibledit-gtk-4.9/src/import.cpp000664 000766 000024 00000010601 12221507136 016657 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "import.h" #include "utilities.h" #include "clean.h" #include "usfmtools.h" #include "bible.h" #include "books.h" #include "gwrappers.h" #include "directories.h" #include "unixwrappers.h" #include "tiny_utilities.h" #include "dialogradiobutton.h" #include "localizedbooks.h" #include "categorize.h" #include "projectutils.h" #include "progresswindow.h" ImportBookRead::ImportBookRead(const ustring & filename, const ustring & encoding) { // Read the file. gchar *contents; gsize length; GError *error = NULL; if (!g_file_get_contents(filename.c_str(), &contents, &length, &error)) { cerr << error->message << endl; g_error_free(error); return; } // Handle files created with Windows Notepad. contents = de_windows_notepad(contents); // Convert the data. if (!encoding.empty()) { gchar *output; output = unicode_convert(contents, encoding); if (output) { g_free(contents); contents = output; } } // Check whether valid UTF8 data. if (!g_utf8_validate(contents, -1, NULL)) { cerr << "Data from " << filename << " is not valid UTF8." << endl; return; } // Divide text into separate lines. ParseLine parseline(contents); g_free(contents); rawlines = parseline.lines; } gchar *unicode_convert(gchar * data, const ustring & encoding) { gchar *output; gssize length = strlen(data); GError *error = NULL; output = g_convert(data, length, "UTF-8", encoding.c_str(), NULL, NULL, &error); if (output == NULL) { cerr << error->message << endl; g_error_free(error); } return output; } void import_check_usfm_files (vector & filenames, vector & bookids, const ustring& bible, vector & messages) { // Check whether all the USFM files have proper \id data. if (messages.empty()) { vector files_names_temp; for (unsigned int i = 0; i < filenames.size(); i++) { unsigned int book_id = books_paratext_to_id(get_usfm_id_from_file(filenames[i])); if (book_id) { files_names_temp.push_back (filenames[i]); bookids.push_back (book_id); } else { messages.push_back ("Unknown book in file " + filenames[i]); } } filenames = files_names_temp; } // Check whether none of the books to be imported is already in the project. if (messages.empty()) { vector books_in_project = project_get_books (bible); set books_in_project_set (books_in_project.begin(), books_in_project.end()); for (unsigned int i = 0; i < bookids.size(); i++) { if (books_in_project_set.find (bookids[i]) != books_in_project_set.end()) { messages.push_back ("File " + filenames[i] + " has book " + books_id_to_english (bookids[i]) + ", but this one is already in the project"); } } } } void import_usfm_file (const ustring& file, unsigned int book, const ustring& project, vector & messages) { // Read the file. gchar *contents; gsize length; GError *error = NULL; if (!g_file_get_contents(file.c_str(), &contents, &length, &error)) { messages.push_back (error->message); g_error_free(error); return; } // Handle files created with Windows Notepad. contents = de_windows_notepad(contents); // Divide text into separate lines. ParseLine parseline(contents); g_free(contents); // Clean up according to the USFM standard. CleanUsfm cleanusfm(parseline.lines); parseline.lines.assign(cleanusfm.lines.begin(), cleanusfm.lines.end()); // Categorize the lines. CategorizeChapterVerse ccv(parseline.lines); // Store in project. project_store_book(project, book, ccv); } bibledit-gtk-4.9/src/import.h000664 000766 000024 00000003045 12221507136 016330 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_IMPORT_H #define INCLUDED_IMPORT_H #include "libraries.h" #include #include "types.h" enum ImportType {itBible, itReferences, itStylesheet, itNotes, itKeyterms}; enum ImportBibleType {ibtUsfm, ibtBibleWorks, ibtOnlineBible, ibtRawText}; class ImportBookRead { public: ImportBookRead (const ustring& filename, const ustring& encoding); vector lines; ustring bookname; private: vector rawlines; }; gchar * unicode_convert (gchar *data, const ustring& encoding); void import_check_usfm_files (vector & filenames, vector & bookids, const ustring& bible, vector & messages); void import_usfm_file (const ustring& file, unsigned int book, const ustring& project, vector & messages); #endif bibledit-gtk-4.9/src/java.cpp000664 000766 000024 00000002404 12221507127 016270 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "java.h" #include "gwrappers.h" #include "gtkwrappers.h" bool java_runtime_present (bool gui) // Returns whether a java runtime is present on the system. // gui: if true, it gives an error in case java is not there. { bool present = gw_find_program_in_path ("java"); if (gui) { if (!present) { gtkw_dialog_error (NULL, "A Java Runtime Environment was not found.\nPlease install one at your convenience."); } } return present; } bibledit-gtk-4.9/src/java.h000664 000766 000024 00000001700 12221507136 015733 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_JAVA_H #define INCLUDED_JAVA_H #include "libraries.h" #include #include bool java_runtime_present (bool gui); #endif bibledit-gtk-4.9/src/keyboard.cpp000664 000766 000024 00000007164 12221507143 017155 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "keyboard.h" #include bool keyboard_enter_pressed(GdkEventKey * event) // Returns true if the event was "Enter", i.e. if Enter was pressed on the keyboard. { switch (event->keyval) { case GDK_KEY_Return: case GDK_KEY_KP_Enter: return true; } return false; } bool keyboard_delete_pressed(GdkEventKey * event) // Returns true if the event was "Delete", i.e. if Delete was pressed on the keyboard. { switch (event->keyval) { case GDK_KEY_Delete: case GDK_KEY_KP_Delete: return true; } return false; } bool keyboard_insert_pressed(GdkEventKey * event) // Returns true if the event was "Insert", i.e. if Insert was pressed on the keyboard. { switch (event->keyval) { case GDK_KEY_Insert: case GDK_KEY_KP_Insert: return true; } return false; } bool keyboard_up_arrow_pressed(GdkEventKey * event) // Returns true if the up arrow was pressed. { switch (event->keyval) { case GDK_KEY_Up: case GDK_KEY_KP_Up: return true; } return false; } bool keyboard_left_arrow_pressed(GdkEventKey * event) // Returns true if the left arrow was pressed. { switch (event->keyval) { case GDK_KEY_Left: case GDK_KEY_KP_Left: return true; } return false; } bool keyboard_right_arrow_pressed(GdkEventKey * event) // Returns true if the right arrow was pressed. { switch (event->keyval) { case GDK_KEY_Right: case GDK_KEY_KP_Right: return true; } return false; } bool keyboard_down_arrow_pressed(GdkEventKey * event) // Returns true if the down arrow was pressed. { switch (event->keyval) { case GDK_KEY_Down: case GDK_KEY_KP_Down: return true; } return false; } bool keyboard_page_up_pressed(GdkEventKey * event) // Returns true if the page up key was pressed. { switch (event->keyval) { case GDK_KEY_Page_Up: case GDK_KEY_KP_Page_Up: return true; } return false; } bool keyboard_control_state(GdkEventButton * event) // Returns true if the Ctrl key was down at the mouse click. { guint modifiers; modifiers = gtk_accelerator_get_default_mod_mask(); if ((event->state & modifiers) == GDK_CONTROL_MASK) return true; return false; } bool keyboard_control_state(GdkEventKey * event) // Returns true if the Ctrl key was down at the key press. { guint modifiers; modifiers = gtk_accelerator_get_default_mod_mask(); if ((event->state & modifiers) == GDK_CONTROL_MASK) return true; return false; } bool keyboard_shift_state(GdkEventKey * event) // Returns true if the Shift key was down at the key press. { guint modifiers; modifiers = gtk_accelerator_get_default_mod_mask(); if ((event->state & modifiers) == GDK_SHIFT_MASK) return true; return false; } bool keyboard_backspace_pressed(GdkEventKey * event) // Returns true if the backspace key was pressed. { switch (event->keyval) { case GDK_KEY_BackSpace: return true; } return false; } bibledit-gtk-4.9/src/keyboard.h000664 000766 000024 00000002763 12221507136 016624 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_KEYBOARD_H #define INCLUDED_KEYBOARD_H #include "libraries.h" #include bool keyboard_enter_pressed (GdkEventKey *event); bool keyboard_delete_pressed (GdkEventKey *event); bool keyboard_insert_pressed (GdkEventKey *event); bool keyboard_up_arrow_pressed (GdkEventKey *event); bool keyboard_left_arrow_pressed (GdkEventKey *event); bool keyboard_right_arrow_pressed (GdkEventKey *event); bool keyboard_down_arrow_pressed (GdkEventKey *event); bool keyboard_page_up_pressed (GdkEventKey *event); bool keyboard_control_state (GdkEventButton *event); bool keyboard_control_state (GdkEventKey *event); bool keyboard_shift_state (GdkEventKey *event); bool keyboard_backspace_pressed (GdkEventKey *event); #endif bibledit-gtk-4.9/src/keyterms.cpp000644 000766 000024 00000121213 12453001367 017212 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "keyterms.h" #include "utilities.h" #include "gwrappers.h" #include #include "directories.h" #include "books.h" #include "bible.h" #include "sqlite_reader.h" #include "import.h" #include "progresswindow.h" #include "unixwrappers.h" #include #include "tiny_utilities.h" #include "settings.h" #include "htmlwriter.h" ustring keyterms_get_user_filename() // Gives the filename for the user-created keyterms database. { return gw_build_filename(Directories->get_templates_user(), "keyterms.sql"); } ustring keyterms_get_package_filename() // Gives the filename for the keyterms database that comes with bibledit. { return gw_build_filename(Directories->get_package_data(), "keyterms.sql"); } ustring keyterms_get_filename () // Gives the standard filename, or the user file if it's there. { ustring filename = keyterms_get_user_filename(); if (!g_file_test (filename.c_str(), G_FILE_TEST_IS_REGULAR)) { filename = keyterms_get_package_filename(); } return filename; } void keyterms_ensure_user_database() { // Bail out if the user database exists. if (g_file_test (keyterms_get_user_filename().c_str(), G_FILE_TEST_IS_REGULAR)) { return; } // Copy the package database to the user one. unix_cp (keyterms_get_package_filename(), keyterms_get_user_filename()); chmod(keyterms_get_user_filename().c_str(), 00666); } void keyterms_clean_reference_line (ustring& line) // Cleans common clutter from a line that has a reference. { /* Some files may have references that are specially formed. Examples: Exo 08:22(E26) Gen 08:20ab Gen 22:09 (2x) These specialties are removed as being clutter. */ line = trim (line); size_t pos = line.find ("("); if (pos != string::npos) { line.erase (pos, 10); line = trim (line); } for (unsigned int i = 0; i < 3; i++) { pos = line.find_last_of ("abc"); if (pos != string::npos) { if (pos > 5) { line.erase (pos, 10); line = trim (line); } } } } void keyterms_import_textfile_flush(sqlite3 * db, unsigned int category_id, ustring& keyterm, vector & comments, vector & references) { // Only store if there's a keyterm.. if (!keyterm.empty()) { int keyterm_id = keyterms_retrieve_highest_id ("keyterm") + 1; // Variables needed to access the database. int rc; char *error = NULL; char *sql; // Clean keyterm. keyterm = double_apostrophy(keyterm); // Clean comment. ustring comment; for (unsigned int i = 0; i < comments.size(); i++) { if (!comment.empty()) comment.append("\n"); comment.append(comments[i]); } comment = double_apostrophy(comment); // Store the keyterm. sql = g_strdup_printf("insert into keyterm values (%d, %d, '%s', '%s', '%s');", keyterm_id, category_id, keyterm.c_str(), keyterm.casefold().c_str(), comment.c_str()); rc = sqlite3_exec(db, sql, NULL, NULL, &error); g_free(sql); if (rc) throw runtime_error(sqlite3_errmsg(db)); // Store the references belonging to the keyword. for (unsigned int i = 0; i < references.size(); i++) { sql = g_strdup_printf("insert into reference values (%d, %d, %d, %d);", keyterm_id, references[i].book, references[i].chapter, convert_to_int (references[i].verse)); rc = sqlite3_exec(db, sql, NULL, NULL, &error); g_free(sql); if (rc) throw runtime_error(sqlite3_errmsg(db)); } } keyterm.clear(); comments.clear(); references.clear(); } void keyterms_import_textfile_flags_down(bool & flag1, bool & flag2, bool & flag3) { flag1 = false; flag2 = false; flag3 = false; } ustring keyterms_reference_start_markup () { return "_reference_start_"; } ustring keyterms_reference_end_markup () { return "_reference_end_"; } void keyterms_import_textfile(const ustring & textfile, ustring category) // Imports a keyterms textfile. { // Ensure the db is there. keyterms_ensure_user_database(); // Variables. sqlite3 *db; int rc; char *error = NULL; try { // The id to use for the category. int category_id = keyterms_retrieve_highest_id ("category") + 1; // Read the text. ReadText rt(textfile); // Open the database. rc = sqlite3_open(keyterms_get_filename().c_str(), &db); if (rc) throw runtime_error(sqlite3_errmsg(db)); sqlite3_busy_timeout(db, 1000); char *sql; sql = g_strdup_printf("PRAGMA synchronous=OFF;"); rc = sqlite3_exec(db, sql, NULL, NULL, &error); g_free(sql); if (rc) throw runtime_error(sqlite3_errmsg(db)); // Store the category of these keyterms. category = double_apostrophy(category); sql = g_strdup_printf("insert into category values (%d, '%s');", category_id, category.c_str()); rc = sqlite3_exec(db, sql, NULL, NULL, &error); g_free(sql); if (rc) throw runtime_error(sqlite3_errmsg(db)); // Storage for our data. ustring keyterm; vector comments; vector references; // Flags for reading our data. bool readkeyterm = false; bool readcomments = false; bool readreferences = false; unsigned int previousbook = 0; unsigned int previouschapter = 0; // Go through the lines. for (unsigned int i = 1; i < rt.lines.size(); i++) { try { ustring line(rt.lines[i]); // Skip comments and empty lines. if (line.empty()) continue; if (line.find("#") != string::npos) continue; if (line.find("//") != string::npos) continue; if (line.substr(0, 1) == "[") { keyterms_import_textfile_flags_down(readkeyterm, readcomments, readreferences); } if (readkeyterm) { keyterm = line; keyterms_import_textfile_flags_down(readkeyterm, readcomments, readreferences); } if (readcomments) { comments.push_back(line); } if (readreferences) { // Clean line. keyterms_clean_reference_line (line); // Store the reference. Reference reference(0); if (reference_discover(previousbook, previouschapter, "0", line, reference.book, reference.chapter, reference.verse)) { references.push_back(reference); comments.push_back (keyterms_reference_start_markup () + reference.human_readable ("") + keyterms_reference_end_markup ()); } } if (line == "[keyterm]") { keyterms_import_textfile_flush(db, category_id, keyterm, comments, references); readkeyterm = true; } if (line == "[comments]") { readcomments = true; } if (line == "[references]") { readreferences = true; } } catch(exception & ex) { ustring msg = "Skipping: "; msg.append(ex.what()); gw_critical (msg); } } // Flush possible remaining keyterm. keyterms_import_textfile_flush(db, category_id, keyterm, comments, references); } catch(exception & ex) { gw_critical(ex.what()); } sqlite3_close(db); } void keyterms_import_otkey_db(const ustring& textfile, ustring category) { // Ensure the db is there. keyterms_ensure_user_database(); // Some variables we need. sqlite3 *db; int rc; char *error = NULL; try { // The id to use for the category. int category_id = keyterms_retrieve_highest_id ("category") + 1; // Read the text. ReadText rt(textfile); // Open the database. rc = sqlite3_open(keyterms_get_filename().c_str(), &db); if (rc) throw runtime_error(sqlite3_errmsg(db)); sqlite3_busy_timeout(db, 1000); char *sql; sql = g_strdup_printf("PRAGMA synchronous=OFF;"); rc = sqlite3_exec(db, sql, NULL, NULL, &error); g_free(sql); if (rc) throw runtime_error(sqlite3_errmsg(db)); // Store the category of these keyterms. category = double_apostrophy(category); sql = g_strdup_printf("insert into category values (%d, '%s');", category_id, category.c_str()); rc = sqlite3_exec(db, sql, NULL, NULL, &error); g_free(sql); if (rc) throw runtime_error(sqlite3_errmsg(db)); // Storage for our data. ustring keyterm; vector comments; vector references; // Reference discovery variables. unsigned int previousbook = 0; unsigned int previouschapter = 0; // Go through all the lines. for (unsigned int i = 1; i < rt.lines.size(); i++) { try { // Get the line, skip if empty. ustring line(rt.lines[i]); if (line.empty()) continue; // The kind of information that the line contains. bool key_line = (line.find("\\key") == 0); bool ref_line = (line.find("\\ref") == 0); // Keyterm. if (key_line) { keyterms_import_textfile_flush(db, category_id, keyterm, comments, references); keyterm.clear(); keyterm = trim(line.substr(4, 1000)); } // Reference. else if (ref_line) { ustring ref = line.substr(4, 1000); keyterms_clean_reference_line (ref); Reference reference(0); if (reference_discover(previousbook, previouschapter, "0", ref, reference.book, reference.chapter, reference.verse)) { reference.verse = number_in_string(reference.verse); references.push_back(reference); comments.push_back (keyterms_reference_start_markup () + reference.human_readable ("") + keyterms_reference_end_markup ()); } } // Anything else is treated as a comment. else { comments.push_back (line); } } catch(exception & ex) { ustring msg = "Skipping: "; msg.append(ex.what()); gw_critical (msg); } } // Flush remaining data. keyterms_import_textfile_flush(db, category_id, keyterm, comments, references); } catch(exception & ex) { gw_critical(ex.what()); } sqlite3_close(db); } void keyterms_import_ktref_db(const ustring& textfile, ustring category) { // Ensure the db is there. keyterms_ensure_user_database(); // Some variables we need. sqlite3 *db; int rc; char *error = NULL; try { // The id to use for the category. int category_id = keyterms_retrieve_highest_id ("category") + 1; // Open the database. rc = sqlite3_open(keyterms_get_filename().c_str(), &db); if (rc) throw runtime_error(sqlite3_errmsg(db)); sqlite3_busy_timeout(db, 1000); char *sql; sql = g_strdup_printf("PRAGMA synchronous=OFF;"); rc = sqlite3_exec(db, sql, NULL, NULL, &error); g_free(sql); if (rc) throw runtime_error(sqlite3_errmsg(db)); // Store the category of these keyterms. category = double_apostrophy(category); sql = g_strdup_printf("insert into category values (%d, '%s');", category_id, category.c_str()); rc = sqlite3_exec(db, sql, NULL, NULL, &error); g_free(sql); if (rc) throw runtime_error(sqlite3_errmsg(db)); // Read and clean the input text. // Lines with text that does not start with a backslash will be joined to the previous one. vector lines; { ReadText rt(textfile); for (unsigned int i = 0; i < rt.lines.size(); i++) { ustring line = rt.lines[i]; line = trim (line); if ((line.find("\\") == 0) || (line.empty())) { lines.push_back(line); } else { lines[lines.size() - 1].append(" " + line); } } } // Remove data before the first real keyword. { bool process = false; vector lines2; for (unsigned int i = 1; i < lines.size(); i++) { ustring line(lines[i]); if (line.find("\\en ") != string::npos) process = true; if (line.find("en AAA") != string::npos) process = false; if (process) { if (!line.empty()) { lines2.push_back (line); } } } lines = lines2; } // Storage for our data. ustring keyterm; vector comments; vector references; // Reference discovery variables. unsigned int previousbook = 0; unsigned int previouschapter = 0; // Go through all the lines. for (unsigned int i = 0; i < lines.size(); i++) { try { // Get the line. ustring line(lines[i]); // The kind of information that the line contains. bool key_line = (line.find("\\en ") == 0); bool ref_line = (line.find("\\ref ") == 0); // Keyterm. if (key_line) { keyterms_import_textfile_flush(db, category_id, keyterm, comments, references); keyterm.clear(); keyterm = trim(line.substr(3, 1000)); } // Reference. else if (ref_line) { ustring ref = line.substr(5, 10000); size_t pos = ref.find("("); if (pos != string::npos) { comments.push_back(ref); } while (pos != string::npos) { size_t pos2 = ref.find(")"); ref.erase(pos, pos2 - pos + 1); pos = ref.find("("); } replace_text(ref, ")", ""); vector < ustring > refs; { Parse parse1(ref, false, ";"); for (unsigned int i1 = 0; i1 < parse1.words.size(); i1++) { Parse parse2(parse1.words[i1], false, ","); for (unsigned int i2 = 0; i2 < parse2.words.size(); i2++) { refs.push_back(parse2.words[i2]); } } } for (unsigned int i2 = 0; i2 < refs.size(); i2++) { Reference reference(0); if (reference_discover(previousbook, previouschapter, "0", refs[i2], reference.book, reference.chapter, reference.verse)) { reference.verse = number_in_string(reference.verse); references.push_back(reference); comments.push_back (keyterms_reference_start_markup () + reference.human_readable ("") + keyterms_reference_end_markup ()); previousbook = reference.book; previouschapter = reference.chapter; } } } // Anything else is treated as a comment. else { comments.push_back (line); } } catch(exception & ex) { ustring msg = "Skipping: "; msg.append(ex.what()); gw_critical (msg); } } // Flush remaining data. keyterms_import_textfile_flush(db, category_id, keyterm, comments, references); } catch(exception & ex) { gw_critical(ex.what()); } sqlite3_close(db); } void keyterms_import_ktbh_txt_comments(ustring line, vector < ustring > &comments) // Make standard modifications to the comment, and store it. { if (line.find( "\\notfr ") == 0) return; if (line.find( "\\notsp ") == 0) return; if (line.find( "\\notpt ") == 0) return; if (line.find( "\\notxx ") == 0) return; replace_text(line, "\\strong", "Strong's number:"); replace_text(line, "\\pos", "Part of speech:"); replace_text(line, "\\incpos", "Part of speech (inc):"); replace_text(line, "\\freq", "Frequency:"); replace_text(line, "\\sub", "Cognate(s):"); replace_text(line, "\\alt", "Variant Spelling(s):"); replace_text(line, "\\see", "See entry:"); replace_text(line, "\\intro", "Abstract for Busy Translators:"); replace_text(line, "\\tnotes", "Notes for Translators:"); replace_text(line, "\\hebraist", "Hebraists' Comments:"); replace_text(line, "\\altint", "Alternative interpretations:"); replace_text(line, "\\evalev", "Evaluating Evidence:"); replace_text(line, "\\qumran", "Qumran:"); replace_text(line, "\\nt", "New Testament Evidence:"); replace_text(line, "\\comp", "Comparison of Meanings and Uses:"); replace_text(line, "\\dfnotes", "Domain and Frame Notes:"); replace_text(line, "\\addinfo", "Additional Information:"); replace_text(line, "\\not ", "Note: "); replace_text(line, "\\frame", "Frame for Meaning:"); replace_text(line, "\\domain", "Intrinsic Domains for Meaning:"); replace_text(line, "\\stem", "Verb Stem:"); replace_text(line, "\\gram", "Grammar Notes:"); replace_text(line, "\\eventfr", "Participant Roles for Meaning:"); replace_text(line, "\\syntagc", "Meaning Comments:"); replace_text(line, "\\framec", "Frame for Use:"); replace_text(line, "\\domainc", "Contextual Domains for Use:"); replace_text(line, "\\eventfrc", "Participant Roles for Use:"); replace_text(line, "\\syntagcc", "Use Comments:"); replace_text(line, "\\keyverse", "Key Verse:"); replace_text(line, "\\eval", "Evaluation of Translations:"); replace_text(line, "\\lxx", "Key Septuagint:"); replace_text(line, "\\trans", "Translation:"); replace_text(line, "\\paradigc", "Keyword:"); replace_text(line, "\\colc", "Collocating Term:"); replace_text(line, "\\pgloss", "Gloss:"); replace_text(line, "\\ver ", "Version: "); replace_text(line, "\\dat ", "Date: "); replace_text(line, "\\level2", "Level 2:"); replace_text(line, "\\level3", "Level 3:"); replace_text(line, "\\level4", "Level 4:"); replace_text(line, "\\meaning", "Meaning:"); replace_text(line, "\\context", "Context:"); replace_text(line, "|h", ""); replace_text(line, "|h*", ""); replace_text(line, "|g", ""); replace_text(line, "|g*", ""); replace_text(line, "|n", ""); replace_text(line, "|n*", ""); replace_text(line, "|e", ""); replace_text(line, "|e*", ""); replace_text(line, "|r", ""); replace_text(line, "|r*", ""); replace_text(line, "|t", ""); replace_text(line, "|t*", ""); replace_text(line, "|s", ""); replace_text(line, "|s*", ""); replace_text(line, " ", ""); comments.push_back(line); } void keyterms_import_ktbh_txt_references(ustring line, vector &references, vector & comments) /* The references in the KTBH database are stored in a special way. Reinier de Blois gave the code to extract a reference: digit 1: calculate the ansi code and subtract 32 from it (e.g. ! = 1 = Genesis). digit 2: if " store number 90. digit 3: calculate the ansi code and subtract 32 from it; add the stored number of digit 2 to it (e.g. !! = chapter 1; "! = chapter 91). digit 4: if " store number 90. digit 5: calculate the ansi code and subtract 32 from it; add the stored number of digit 4 to it (e.g. !! = verse 1; "! = verse 91). digit 6: calculate the ansi code and subtract 32 from it (position of word within verse). digit 7: calculate the ansi code and subtract 32 from it (position of morpheme within word). */ { Parse parse(line, false); for (unsigned int i = 0; i < parse.words.size(); i++) { if (parse.words[i].length() < 5) throw runtime_error(line); gunichar *digit1; digit1 = g_utf8_to_ucs4_fast(parse.words[i].substr(0, 1).c_str(), -1, NULL); *digit1 -= 32; gunichar digit2 = 0; if (parse.words[i].substr(1, 1) == "\"") digit2 = 90; gunichar *digit3; digit3 = g_utf8_to_ucs4_fast(parse.words[i].substr(2, 1).c_str(), -1, NULL); *digit3 -= 32; gunichar digit4 = 0; if (parse.words[i].substr(3, 1) == "\"") digit4 = 90; gunichar *digit5; digit5 = g_utf8_to_ucs4_fast(parse.words[i].substr(4, 1).c_str(), -1, NULL); *digit5 -= 32; Reference reference(*digit1, digit2 + *digit3, convert_to_string(digit4 + *digit5)); references.push_back(reference); comments.push_back (keyterms_reference_start_markup () + reference.human_readable ("") + keyterms_reference_end_markup ()); g_free(digit1); g_free(digit3); g_free(digit5); } } void keyterms_import_ktbh_txt(const ustring& textfile, ustring category) { // Ensure the db is there. keyterms_ensure_user_database(); // Some variables we need. sqlite3 *db; int rc; char *error = NULL; try { // The id to use for the category. int category_id = keyterms_retrieve_highest_id ("category") + 1; // Open the database. rc = sqlite3_open(keyterms_get_filename().c_str(), &db); if (rc) throw runtime_error(sqlite3_errmsg(db)); sqlite3_busy_timeout(db, 1000); char *sql; sql = g_strdup_printf("PRAGMA synchronous=OFF;"); rc = sqlite3_exec(db, sql, NULL, NULL, &error); g_free(sql); if (rc) throw runtime_error(sqlite3_errmsg(db)); // Store the category of these keyterms. category = double_apostrophy(category); sql = g_strdup_printf("insert into category values (%d, '%s');", category_id, category.c_str()); rc = sqlite3_exec(db, sql, NULL, NULL, &error); g_free(sql); if (rc) throw runtime_error(sqlite3_errmsg(db)); // Read the text. Any lines not starting with \ should be joined to the previous one. vector lines; { ReadText rt(textfile, true); for (unsigned int i = 0; i < rt.lines.size(); i++) { ustring line = rt.lines[i]; if (!line.empty()) { if (rt.lines[i].find("\\") == 0) { lines.push_back(rt.lines[i]); } else { lines[lines.size() - 1].append(" " + rt.lines[i]); } } } } // Storage for our data. ustring keyterm; vector comments; vector references; // Go through all the lines. ProgressWindow progresswindow ("Importing", false); progresswindow.set_iterate (0, 1, lines.size()); for (unsigned int i = 0; i < lines.size(); i++) { progresswindow.iterate(); try { // Get the line. ustring line(lines[i]); // Hebrew keyterm: store. if (line.find("\\heb ") == 0) { keyterms_import_textfile_flush(db, category_id, keyterm, comments, references); keyterm = "(" + line.substr(5, 1000) + ")"; } // Gloss: store and add to keyterm. else if (line.find("\\gloss ") == 0) { ustring gloss = line.substr(7, 1000); keyterm.insert(0, gloss + " "); } // Reference: store. else if (line.find("\\ref ") == 0) { ustring ref = line.substr(5, 10000); keyterms_import_ktbh_txt_references(ref, references, comments); } // Key reference. else if (line.find("\\keyref ") == 0) { ustring ref = line.substr(8, 10000); comments.push_back ("Key Reference:"); keyterms_import_ktbh_txt_references(ref, references, comments); } // References. else if (line.find("\\refsc ") == 0) { comments.push_back ("References:"); ustring ref = line.substr(7, 10000); keyterms_import_ktbh_txt_references(ref, references, comments); } // Anything else is treated as a comment. else { keyterms_import_ktbh_txt_comments(line, comments); } } catch(exception & ex) { ustring msg = "Skipping: "; msg.append(ex.what()); cout << msg << endl; } } // Flush remaining data. keyterms_import_textfile_flush(db, category_id, keyterm, comments, references); } catch(exception & ex) { gw_critical(ex.what()); } sqlite3_close(db); } vector keyterms_get_categories() // Retrieves the different categories from the database. { sqlite3 *db; int rc; char *error = NULL; SqliteReader reader(0); try { rc = sqlite3_open(keyterms_get_filename().c_str(), &db); if (rc) throw runtime_error(sqlite3_errmsg(db)); sqlite3_busy_timeout(db, 1000); char *sql; sql = g_strdup_printf("select name from category;"); rc = sqlite3_exec(db, sql, reader.callback, &reader, &error); g_free(sql); if (rc) { throw runtime_error(sqlite3_errmsg(db)); } } catch(exception & ex) { gw_critical(ex.what()); } sqlite3_close(db); return reader.ustring0; } void keyterms_delete_collection (const ustring& collection) // Delete the collection from the database. // If all collections have been deleted, it reverts to the original database of the package. { // Ensure we work with the user database. keyterms_ensure_user_database (); sqlite3 *db; sqlite3_open(keyterms_get_filename().c_str(), &db); sqlite3_busy_timeout(db, 1000); char *sql; // Retrieve the id of the collection to delete. int collection_id = 0; { SqliteReader reader(0); sql = g_strdup_printf("select id from category where name = '%s';", double_apostrophy(collection).c_str()); sqlite3_exec(db, sql, reader.callback, &reader, NULL); g_free(sql); if (!reader.ustring0.empty()) collection_id = convert_to_int(reader.ustring0[0]); } // Retrieve a list of keyterm ids to be deleted. vector keyterm_ids; { SqliteReader reader(0); sql = g_strdup_printf("select id from keyterm where category = %d;", collection_id); sqlite3_exec(db, sql, reader.callback, &reader, NULL); g_free(sql); for (unsigned int i = 0; i < reader.ustring0.size(); i++) { keyterm_ids.push_back (convert_to_int (reader.ustring0[i])); } } // Delete the category. sql = g_strdup_printf("delete from category where name = '%s';", double_apostrophy(collection).c_str()); sqlite3_exec(db, sql, NULL, NULL, NULL); g_free(sql); // Delete the keyterms. sql = g_strdup_printf("delete from keyterm where category = %d;", collection_id); sqlite3_exec(db, sql, NULL, NULL, NULL); g_free(sql); // Delete the relevant references. for (unsigned int i = 0; i < keyterm_ids.size(); i++) { sql = g_strdup_printf("delete from reference where id = %d;", keyterm_ids[i]); sqlite3_exec(db, sql, NULL, NULL, NULL); g_free(sql); } sqlite3_close(db); // If there are no categories left, revert to the package database. if (keyterms_get_categories ().empty ()) { unlink (keyterms_get_user_filename().c_str()); } } void keyterms_get_terms(const ustring& searchterm, const ustring& collection, vector & terms, vector & ids) // Depending on the searchterm and collection, get the keyterms, together with // their levels, parents, and ids. If the searchterm is empty, give them all. // If the collection is empty, get them from all collections. { // Variables we need. sqlite3 *db; int rc; char *error = NULL; try { // Open database, readers. rc = sqlite3_open(keyterms_get_filename().c_str(), &db); if (rc) throw runtime_error(sqlite3_errmsg(db)); sqlite3_busy_timeout(db, 1000); SqliteReader readerterms(0); SqliteReader readercollection(0); // See whether to search in collections. unsigned int collection_id = 0; if (!collection.empty()) { char *sql; sql = g_strdup_printf("select id from category where name = '%s';", double_apostrophy(collection).c_str()); rc = sqlite3_exec(db, sql, readercollection.callback, &readercollection, &error); g_free(sql); if (rc) throw runtime_error(sqlite3_errmsg(db)); if (!readercollection.ustring0.empty()) collection_id = convert_to_int(readercollection.ustring0[0]); } // Assemble query expression. ustring sql("select id, name from keyterm"); if (!searchterm.empty() || collection_id) sql.append(" where"); if (!searchterm.empty()) { sql.append(" (namecf glob ('*" + searchterm.casefold() + "*')"); sql.append(" or comment glob ('*" + searchterm.casefold() + "*'))"); } if (!searchterm.empty() && collection_id) sql.append(" and"); if (collection_id) { sql.append(" category = " + convert_to_string(collection_id)); } sql.append(";"); // Query the db. rc = sqlite3_exec(db, sql.c_str(), readerterms.callback, &readerterms, &error); if (rc) throw runtime_error(sqlite3_errmsg(db)); // Return results. for (unsigned int i = 0; i < readerterms.ustring0.size(); i++) { terms.push_back(readerterms.ustring1[i]); ids.push_back(convert_to_int(readerterms.ustring0[i])); } } catch(exception & ex) { gw_critical(ex.what()); } sqlite3_close(db); } bool keyterms_get_term(unsigned int id, ustring & term) { bool result = false; sqlite3 *db; int rc; char *error = NULL; try { rc = sqlite3_open(keyterms_get_filename().c_str(), &db); if (rc) throw runtime_error(sqlite3_errmsg(db)); sqlite3_busy_timeout(db, 1000); SqliteReader reader(0); char *sql; sql = g_strdup_printf("select name from keyterm where id = %d;", id); rc = sqlite3_exec(db, sql, reader.callback, &reader, &error); g_free(sql); if (rc) throw runtime_error(sqlite3_errmsg(db)); if (!reader.ustring0.empty()) { term = reader.ustring0[0]; result = true; } } catch(exception & ex) { gw_critical(ex.what()); } sqlite3_close(db); return result; } bool keyterms_get_data(unsigned int id, ustring & category, ustring & comments, vector < Reference > &references) { bool result = false; sqlite3 *db; int rc; char *error = NULL; try { rc = sqlite3_open(keyterms_get_filename().c_str(), &db); if (rc) throw runtime_error(sqlite3_errmsg(db)); sqlite3_busy_timeout(db, 1000); char *sql; SqliteReader reader1(0); sql = g_strdup_printf("select category, comment from keyterm where id = %d;", id); rc = sqlite3_exec(db, sql, reader1.callback, &reader1, &error); g_free(sql); if (rc) throw runtime_error(sqlite3_errmsg(db)); if (!reader1.ustring0.empty()) { comments = reader1.ustring1[0]; result = true; } SqliteReader reader2(0); sql = g_strdup_printf("select name from category where id = %d;", convert_to_int(reader1.ustring0[0])); rc = sqlite3_exec(db, sql, reader2.callback, &reader2, &error); g_free(sql); if (rc) throw runtime_error(sqlite3_errmsg(db)); if (!reader2.ustring0.empty()) { category = reader2.ustring0[0]; } SqliteReader reader3(0); sql = g_strdup_printf("select book, chapter, verse from reference where id = %d;", id); rc = sqlite3_exec(db, sql, reader3.callback, &reader3, &error); g_free(sql); if (rc) throw runtime_error(sqlite3_errmsg(db)); for (unsigned int i = 0; i < reader3.ustring0.size(); i++) { Reference reference(convert_to_int(reader3.ustring0[i]), convert_to_int(reader3.ustring1[i]), reader3.ustring2[i]); references.push_back(reference); } } catch(exception & ex) { gw_critical(ex.what()); } sqlite3_close(db); return result; } ustring keyterms_renderings_filename(const ustring & project) // Returns the filename for the database to store user data. // If the database is not there, it will be created on the fly. { ustring filename = gw_build_filename(Directories->get_projects(), project, "keyterms-renderings.sql"); if (!g_file_test(filename.c_str(), G_FILE_TEST_IS_REGULAR)) { sqlite3 *db; int rc; char *error = NULL; try { rc = sqlite3_open(filename.c_str(), &db); if (rc) throw runtime_error(sqlite3_errmsg(db)); sqlite3_busy_timeout(db, 1000); char *sql; sql = g_strdup_printf("create table renderings (keyword string, collection string, rendering string, wholeword integer, casesensitive integer);"); rc = sqlite3_exec(db, sql, NULL, NULL, &error); g_free(sql); if (rc) throw runtime_error(sqlite3_errmsg(db)); } catch(exception & ex) { gw_critical(ex.what()); } sqlite3_close(db); } return filename; } void keyterms_retrieve_renderings(const ustring & project, const ustring & keyterm, const ustring & collection, vector < ustring > &renderings, vector < bool > &wholewords, vector < bool > &casesensitives) { sqlite3 *db; int rc; char *error = NULL; try { rc = sqlite3_open(keyterms_renderings_filename(project).c_str(), &db); if (rc) throw runtime_error(sqlite3_errmsg(db)); sqlite3_busy_timeout(db, 1000); char *sql; SqliteReader reader(0); sql = g_strdup_printf("select rendering, wholeword, casesensitive from renderings where keyword = '%s' and collection = '%s';", double_apostrophy(keyterm).c_str(), double_apostrophy(collection).c_str()); rc = sqlite3_exec(db, sql, reader.callback, &reader, &error); g_free(sql); if (rc) throw runtime_error(sqlite3_errmsg(db)); for (unsigned int i = 0; i < reader.ustring0.size(); i++) { renderings.push_back(reader.ustring0[i]); wholewords.push_back(convert_to_bool(reader.ustring1[i])); casesensitives.push_back(convert_to_bool(reader.ustring2[i])); } } catch(exception & ex) { gw_critical(ex.what()); } sqlite3_close(db); } void keyterms_store_renderings(const ustring & project, const ustring & keyterm, const ustring & collection, const vector < ustring > &renderings, const vector < bool > &wholewords, const vector < bool > &casesensitives) { sqlite3 *db; int rc; char *error = NULL; try { rc = sqlite3_open(keyterms_renderings_filename(project).c_str(), &db); if (rc) throw runtime_error(sqlite3_errmsg(db)); sqlite3_busy_timeout(db, 1000); char *sql = g_strdup_printf("delete from renderings where keyword = '%s' and collection = '%s';", double_apostrophy(keyterm).c_str(), double_apostrophy(collection).c_str()); rc = sqlite3_exec(db, sql, NULL, NULL, &error); g_free(sql); for (unsigned int i = 0; i < renderings.size(); i++) { ustring s1 = double_apostrophy(keyterm); ustring s2 = double_apostrophy(collection); ustring s3 = double_apostrophy(renderings[i]); int i1 = wholewords[i]; int i2 = casesensitives[i]; sql = g_strdup_printf("insert into renderings values ('%s', '%s', '%s', %d, %d);", s1.c_str(), s2.c_str(), s3.c_str(), i1, i2); rc = sqlite3_exec(db, sql, NULL, NULL, &error); g_free(sql); if (rc) throw runtime_error(sqlite3_errmsg(db)); } } catch(exception & ex) { gw_critical(ex.what()); } sqlite3_close(db); } void keyterms_export(const ustring & directory, bool gui) { return; // This might need to be updated to use the user-database too. // GUI. ProgressWindow *progresswindow = NULL; if (gui) progresswindow = new ProgressWindow("Exporting keyterms", false); // Go through the categories. vector < ustring > categories = keyterms_get_categories(); for (unsigned int cat = 0; cat < categories.size(); cat++) { // Output data. ustring paratext_filename = gw_build_filename(directory, categories[cat] + ".lex"); replace_text(paratext_filename, " ", "_"); replace_text(paratext_filename, "'", "_"); vector < ustring > paratext_lines; // Get all data for the category. vector < ustring > terms; vector < unsigned int >ids; keyterms_get_terms("", categories[cat], terms, ids); // GUI. if (gui) { progresswindow->set_iterate(0, 1, ids.size()); progresswindow->set_text(categories[cat]); } // Go through the terms. for (unsigned int id = 0; id < ids.size(); id++) { // GUI if (gui) progresswindow->iterate(); // Process the full data of the keyterm. ustring comments; vector < Reference > references; keyterms_get_data(ids[id], categories[cat], comments, references); ustring key("\\key "); key.append(terms[id]); paratext_lines.push_back(key); paratext_lines.push_back("\\keynote "); replace_text(comments, "\n", "

"); paratext_lines.push_back("\\optional

" + comments + "

"); for (unsigned int rf = 0; rf < references.size(); rf++) { ustring reference("\\ref "); reference.append(books_id_to_paratext(references[rf].book)); reference.append(" "); reference.append(convert_to_string(references[rf].chapter)); reference.append(":"); reference.append(references[rf].verse); paratext_lines.push_back(reference); } paratext_lines.push_back(""); } // Store output write_lines(paratext_filename, paratext_lines); } // Destroy GUI. if (progresswindow) delete progresswindow; } vector keyterms_get_terms_in_verse(const Reference & reference) { vector < int >terms; sqlite3 *db; sqlite3_open(keyterms_get_filename().c_str(), &db); sqlite3_busy_timeout(db, 1000); SqliteReader reader(0); char *sql = g_strdup_printf("select id from reference where book = %d and chapter = %d and verse = '%s';", reference.book, reference.chapter, reference.verse.c_str()); sqlite3_exec(db, sql, reader.callback, &reader, NULL); g_free(sql); for (unsigned int i = 0; i < reader.ustring0.size(); i++) { terms.push_back(convert_to_int(reader.ustring0[i])); } sqlite3_close(db); return terms; } deque keyterms_rendering_retrieve_terms(const ustring & project, const ustring & rendering) // This retrieves the keyterms that have the given rendering in them. { deque < ustring > keyterms; // Open database, readers. sqlite3 *db; sqlite3_open(keyterms_renderings_filename(project).c_str(), &db); sqlite3_busy_timeout(db, 1000); SqliteReader reader(0); // Do the search. char *sql = g_strdup_printf("select keyword from renderings where rendering glob ('*%s*');", double_apostrophy(rendering).c_str()); sqlite3_exec(db, sql, reader.callback, &reader, NULL); g_free(sql); for (unsigned int i = 0; i < reader.ustring0.size(); i++) keyterms.push_back(reader.ustring0[i]); sqlite3_close(db); return keyterms; } int keyterms_retrieve_highest_id (const gchar * table) // This retrieves the highest id from "table". { int id = 0; sqlite3 *db; sqlite3_open(keyterms_get_filename().c_str(), &db); sqlite3_busy_timeout(db, 1000); SqliteReader reader(0); char *sql; sql = g_strdup_printf("select id from '%s' order by id desc;", table); sqlite3_exec(db, sql, reader.callback, &reader, NULL); g_free(sql); if (reader.ustring0.size() > 0) id = convert_to_int(reader.ustring0[0]); sqlite3_close(db); return id; } void keyterms_export_renderings (const ustring& collection, bool include_terms_wo_renderings) // Exports keyterms and their renderings to html. // collection: May restrict the export to one collection. // include_terms_wo_rendering: Whether to include the keyterms that have no renderings. { // The project. extern Settings * settings; ustring project = settings->genconfig.project_get(); // Storage for the keyterms and their renderings. vector all_keyterms; vector all_renderings; // Get keyterms and renderings. { vector collections = keyterms_get_categories(); for (unsigned int i = 0; i < collections.size(); i++) { if (!collection.empty()) { if (collection != collections[i]) { continue; } } vector ids; vector keyterms; vector renderings; keyterms_get_terms ("", collections[i], keyterms, ids); for (unsigned int i2 = 0; i2 < keyterms.size(); i2++) { vector rendering; vector dummy; keyterms_retrieve_renderings(project, keyterms[i2], collections[i], rendering, dummy, dummy); renderings.push_back (rendering); } for (unsigned int i2 = 0; i2 < ids.size(); i2++) { all_keyterms.push_back (keyterms[i2]); all_renderings.push_back (renderings[i2]); } } } // Start the document. HtmlWriter htmlwriter ("Keywords", false, true, false); htmlwriter.heading (1, "Keywords"); // Column headers. vector column_headers; column_headers.push_back ("Keyword"); column_headers.push_back ("Renderings"); // Cell content. vector cell_content; for (unsigned int i = 0; i < all_keyterms.size(); i++) { vector row; vector renderings = all_renderings[i]; if (renderings.empty ()) { if (include_terms_wo_renderings) { row.push_back (all_keyterms[i]); } } else { for (unsigned int i2 = 0; i2 < renderings.size(); i2++) { ustring keyterm; if (i2 == 0) { keyterm = all_keyterms[i]; } row.push_back (keyterm); row.push_back (renderings[i2]); } } if (!row.empty()) { cell_content.push_back (row); } } // Write the table. htmlwriter.table ("Keywords", column_headers, cell_content, "", NULL, 12); } bibledit-gtk-4.9/src/keyterms.h000664 000766 000024 00000004721 12221507137 016664 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_KEYTERMS_H #define INCLUDED_KEYTERMS_H #include "libraries.h" #include "reference.h" #include "progresswindow.h" ustring keyterms_reference_start_markup (); ustring keyterms_reference_end_markup (); void keyterms_import_textfile(const ustring& textfile, ustring category); void keyterms_import_otkey_db(const ustring& textfile, ustring category); void keyterms_import_ktref_db(const ustring& textfile, ustring category); void keyterms_import_ktbh_txt(const ustring& textfile, ustring category); vector keyterms_get_categories(); void keyterms_delete_collection (const ustring& collection); void keyterms_get_terms(const ustring& searchterm, const ustring& collection, vector & terms, vector & ids); bool keyterms_get_term(unsigned int id, ustring& term); bool keyterms_get_data(unsigned int id, ustring& category, ustring& comments, vector& references); void keyterms_retrieve_renderings(const ustring& project, const ustring& keyterm, const ustring& collection, vector& renderings, vector& wholewords, vector& casesensitives); void keyterms_store_renderings(const ustring& project, const ustring& keyterm, const ustring& collection, const vector& renderings, const vector& wholewords, const vector& casesensitives); void keyterms_export(const ustring& directory, bool gui); vector keyterms_get_terms_in_verse(const Reference& reference); deque keyterms_rendering_retrieve_terms(const ustring& project, const ustring& rendering); int keyterms_retrieve_highest_id (const gchar * table); void keyterms_export_renderings (const ustring& collection, bool include_terms_wo_renderings); #endif bibledit-gtk-4.9/src/kjv.cpp000644 000766 000024 00000026151 12453001367 016146 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "kjv.h" #include #include "gwrappers.h" #include "progresswindow.h" #include #include "utilities.h" #include "books.h" #include "tiny_utilities.h" #include "directories.h" #include "unixwrappers.h" #include "sqlite_reader.h" void kjv_home_entry (HtmlWriter2& htmlwriter) { htmlwriter.paragraph_open (); htmlwriter.hyperlink_add (kjv_html_entry_url (), "Sword King James Bible with Strong's lemmata"); htmlwriter.paragraph_close (); } ustring kjv_html_entry_url () { return "kjv_entry"; } void kjv_detailed_page (HtmlWriter2& htmlwriter) { htmlwriter.heading_open (3); htmlwriter.text_add ("Sword King James Bible with Strong's lemmata"); htmlwriter.heading_close (); htmlwriter.paragraph_open(); htmlwriter.text_add ("The King James Bible from the Sword project is useful for its Strong's numbers tagged in the text. Bibledit-Gtk uses this to find related verses, among other things. Importing consists of two steps: exporting it from Sword and creating a database out of it."); htmlwriter.paragraph_close(); htmlwriter.heading_open (4); htmlwriter.text_add ("1. Exporting the text from Sword"); htmlwriter.heading_close (); htmlwriter.paragraph_open(); htmlwriter.text_add ("To export the text from the Sword library, it is supposed that the KJV Bible has been installed. Open a terminal, and type the following command:"); htmlwriter.paragraph_close(); htmlwriter.paragraph_open(); htmlwriter.text_add ("mod2osis KJV > kjv.txt"); htmlwriter.paragraph_close(); htmlwriter.paragraph_open(); htmlwriter.text_add ("This will take a while. It should give no errors. Once it finishes there will be a file called kjv.txt in the home directory."); htmlwriter.paragraph_close(); htmlwriter.heading_open (4); htmlwriter.text_add ("2. Creating the database"); htmlwriter.heading_close (); htmlwriter.paragraph_open(); htmlwriter.hyperlink_add (kjv_create_database_url (), "Create database"); htmlwriter.paragraph_close(); htmlwriter.paragraph_open(); htmlwriter.text_add ("Creating the database should take a while. Once done there will be a file called kjv.sql in the home directory. This file should be added to the bibledit package, replacing the one it currently has."); htmlwriter.paragraph_close(); } ustring kjv_create_database_url () { return "kjv_create_db"; } void kjv_action_page (HtmlWriter2& htmlwriter) { htmlwriter.heading_open (3); htmlwriter.text_add ("Database creation from King James Bible exported from the Sword library"); htmlwriter.heading_close (); vector messages; bool keep_going = true; // Locate the kjv.txt file. ustring kjv_txt_file = gw_build_filename (g_get_home_dir (), "kjv.txt"); messages.push_back ("Looking for file " + kjv_txt_file); if (!g_file_test (kjv_txt_file.c_str(), G_FILE_TEST_IS_REGULAR)) { kjv_txt_file.clear(); } if (kjv_txt_file.empty()) { messages.push_back ("Can't find the input file"); keep_going = false; } if (keep_going) { messages.push_back ("Using file " + kjv_txt_file); } // The database. ustring kjv_sql_file = gw_build_filename (g_get_home_dir (), "kjv.sql"); // Importing data into the database. if (keep_going) { messages.push_back ("Importing data into the database at " + kjv_sql_file); kjv_import_sword (kjv_txt_file, kjv_sql_file); } // Write accumulated messages. htmlwriter.heading_open (3); if (keep_going) { htmlwriter.text_add ("Success! The database was created"); } else { htmlwriter.text_add ("Error!"); } htmlwriter.heading_close (); if (keep_going) { htmlwriter.paragraph_open (); htmlwriter.text_add ("To use the database, copy the file kjv.sql into the Bibledit-Gtk package and re-install."); htmlwriter.paragraph_close (); } for (unsigned int i = 0; i < messages.size(); i++) { htmlwriter.paragraph_open (); htmlwriter.text_add (messages[i]); htmlwriter.paragraph_close (); } // Write OK. htmlwriter.paragraph_open (); htmlwriter.hyperlink_add ("ok", "Ok"); htmlwriter.paragraph_close (); } ustring kjv_sql_filename () { return gw_build_filename(Directories->get_package_data(), "kjv.sql"); } void kjv_import_sword (const ustring& textfile, const ustring& database) { // Show the progress. KJV has 31102 verses. ProgressWindow progresswindow ("Importing King James Bible", false); progresswindow.set_iterate (0, 1, 31102); gchar * contents; g_file_get_contents(textfile.c_str(), &contents, NULL, NULL); if (!contents) return; // Create the database, put it in fast mode. unlink (database.c_str()); sqlite3 *db; sqlite3_open(database.c_str(), &db); sqlite3_exec(db, "create table kjv (book integer, chapter integer, verse integer, item integer, fragment text, lemma text);", NULL, NULL, NULL); sqlite3_exec(db, "PRAGMA synchronous=OFF;", NULL, NULL, NULL); // Parse input. xmlParserInputBufferPtr inputbuffer; inputbuffer = xmlParserInputBufferCreateMem(contents, strlen (contents), XML_CHAR_ENCODING_NONE); xmlTextReaderPtr reader = xmlNewTextReader(inputbuffer, NULL); if (reader) { bool within_relevant_element = false; Reference reference (0, 0, "0"); unsigned int item_number = 0; ustring textfragment; ustring lemmata; while ((xmlTextReaderRead(reader) == 1)) { switch (xmlTextReaderNodeType(reader)) { case XML_READER_TYPE_ELEMENT: { xmlChar *element_name = xmlTextReaderName(reader); // Deal with a verse element. if (!xmlStrcmp(element_name, BAD_CAST "verse")) { progresswindow.iterate(); char *attribute; attribute = (char *)xmlTextReaderGetAttribute(reader, BAD_CAST "osisID"); if (attribute) { Parse parse (attribute, false, "."); if (parse.words.size() == 3) { reference.book = books_osis_to_id (parse.words[0]); reference.chapter = convert_to_int (parse.words[1]); reference.verse = parse.words[2]; } else { gw_critical (attribute); } free(attribute); } item_number = 0; } // Deal with a w element. if (!xmlStrcmp(element_name, BAD_CAST "w")) { within_relevant_element = true; item_number++; textfragment.clear(); lemmata.clear(); char *attribute; attribute = (char *)xmlTextReaderGetAttribute(reader, BAD_CAST "lemma"); if (attribute) { lemmata = attribute; free(attribute); } } break; } case XML_READER_TYPE_TEXT: { if (within_relevant_element) { xmlChar *text = xmlTextReaderValue(reader); if (text) { textfragment = (const char *)text; xmlFree(text); textfragment = textfragment.casefold(); } } break; } case XML_READER_TYPE_END_ELEMENT: { xmlChar *element_name = xmlTextReaderName(reader); if (!xmlStrcmp(element_name, BAD_CAST "w")) { replace_text (lemmata, "strong:", ""); char *sql; sql = g_strdup_printf("insert into kjv values (%d, %d, %d, %d, '%s', '%s');", reference.book, reference.chapter, convert_to_int (reference.verse), item_number, double_apostrophy (textfragment).c_str(), lemmata.c_str()); sqlite3_exec(db, sql, NULL, NULL, NULL); g_free(sql); within_relevant_element = false; } break; } } } } if (reader) xmlFreeTextReader(reader); if (inputbuffer) xmlFreeParserInputBuffer(inputbuffer); // Close database. sqlite3_close(db); // Free xml data. g_free(contents); } void kjv_get_strongs_data (const Reference& reference, vector & strongs, vector & words) // This gets the words and their applicable Strong's numbers for a verse. { sqlite3 *db; int rc; char *error = NULL; try { // Open the database. rc = sqlite3_open(kjv_sql_filename().c_str(), &db); if (rc) throw runtime_error(sqlite3_errmsg(db)); sqlite3_busy_timeout(db, 1000); // Retrieve the bits. SqliteReader reader(0); char *sql; sql = g_strdup_printf("select fragment, lemma from kjv where book = %d and chapter = %d and verse = %d order by item asc;", reference.book, reference.chapter, convert_to_int (reference.verse)); rc = sqlite3_exec(db, sql, reader.callback, &reader, &error); g_free(sql); if (rc) { throw runtime_error(sqlite3_errmsg(db)); } words = reader.ustring0; strongs = reader.ustring1; } catch(exception & ex) { gw_critical(ex.what()); } sqlite3_close(db); } vector kjv_get_strongs_verses (const ustring& strongs) // Passing a Strong's number, this returns all the verses that contain this Strong's number. { // Store the references. vector references; // Mine the data from the database. sqlite3 *db; int rc; char *error = NULL; try { SqliteReader reader(0); rc = sqlite3_open(kjv_sql_filename().c_str(), &db); if (rc) throw runtime_error(sqlite3_errmsg(db)); sqlite3_busy_timeout(db, 1000); char *sql; // The first like finds any lemma field with 'G68' alone or '...G68' at the end of the lemma. // The second like finds any lemma that has G68 at the beginning or middle but not followed by a digit // as in 'G689'. The '%%' is the way to get the sql % character in the pattern match. MAP sql = g_strdup_printf("select distinct book, chapter, verse from kjv where lemma like '%%%s' or lemma like '%%%s[^0-9]%%';", strongs.c_str(), strongs.c_str()); rc = sqlite3_exec(db, sql, reader.callback, &reader, &error); g_free(sql); if (rc) { throw runtime_error(sqlite3_errmsg(db)); } for (unsigned int i = 0; i < reader.ustring0.size(); i++) { // Get the references, and store it only if it comes from the same Testament we need. Reference ref (convert_to_int (reader.ustring0[i]), convert_to_int (reader.ustring1[i]), reader.ustring2[i]); references.push_back (ref); } } catch(exception & ex) { gw_critical(ex.what()); } sqlite3_close(db); // Result. return references; } bibledit-gtk-4.9/src/kjv.h000664 000766 000024 00000002733 12221507141 015607 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_KJV_H #define INCLUDED_KJV_H #include "libraries.h" #include "reference.h" #include #include #include "htmlwriter2.h" void kjv_home_entry (HtmlWriter2& htmlwriter); ustring kjv_html_entry_url (); void kjv_detailed_page (HtmlWriter2& htmlwriter); ustring kjv_create_database_url (); void kjv_action_page (HtmlWriter2& htmlwriter); ustring kjv_sql_filename (); void kjv_import_sword (const ustring& textfile, const ustring& database); void kjv_import_sword (); void kjv_import_zefania (); void kjv_get_strongs_data (const Reference& reference, vector & strongs, vector & words); vector kjv_get_strongs_verses (const ustring& strongs); #endif bibledit-gtk-4.9/src/layout.cpp000644 000766 000024 00000012450 12460404402 016661 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "layout.h" #include "gtkwrappers.h" #include "settings.h" #include "gui_features.h" #include "screen.h" #include "gwrappers.h" #include ScreenLayoutDimensions::ScreenLayoutDimensions(GtkWidget * window) { mywindow = GTK_WINDOW (window); counter = 0; } ScreenLayoutDimensions::~ScreenLayoutDimensions() { } void ScreenLayoutDimensions::verify() // Set the dimensions in the screen. { // Open configuration and get values. extern Settings *settings; // If the screen resolution got changed, or if the windows are too big, recalculate the values. bool recalculate = false; GdkScreen *screen = gtk_window_get_screen (mywindow); int real_screen_width = gdk_screen_get_width (screen); int stored_screen_width = settings->genconfig.screen_width_get (); int real_screen_height = gdk_screen_get_height (screen); int stored_screen_height = settings->genconfig.screen_height_get (); if (real_screen_width != stored_screen_width) recalculate = true; if (real_screen_height != stored_screen_height) recalculate = true; // Variables. int width, height, x, y; // Attached windows: Window size. width = settings->genconfig.window_width_get(); height = settings->genconfig.window_height_get(); x = settings->genconfig.window_x_position_get(); y = settings->genconfig.window_y_position_get(); if ((width == 0) || (height == 0) || (x < 0) || (y < 0) || (x + width > real_screen_width) || (y + height > real_screen_height)) recalculate = true; if (recalculate) { gw_message("Recalculating windows positions and sizes"); // Store screen size. settings->genconfig.screen_width_set(real_screen_width); settings->genconfig.screen_height_set(real_screen_height); // Remove stored dialog positions. dialog_position_reset_all(); // Attached windows: Window sizes. width = real_screen_width * 80 / 100; height = real_screen_height * 70 / 100; x = 0; y = 0; settings->genconfig.window_width_set(width); settings->genconfig.window_height_set(height); settings->genconfig.window_x_position_set(x); settings->genconfig.window_y_position_set(y); } gtk_window_set_default_size (GTK_WINDOW (mywindow), width, height); gtk_window_set_position (GTK_WINDOW (mywindow), GTK_WIN_POS_NONE); } void ScreenLayoutDimensions::apply() // Applies the stored dimensions to the main window. { // The dimension are applies with a delay so as to give the window a change to settle. g_timeout_add (300, GSourceFunc(on_timeout), gpointer(this)); } void ScreenLayoutDimensions::save() // Stores the dimensions of the main window. { // Settings. extern Settings * settings; // Maximized state. GtkWidget * toplevel_widget = gtk_widget_get_toplevel(GTK_WIDGET (mywindow)); GdkWindow *gdk_window = gtk_widget_get_window (toplevel_widget); GdkWindowState window_state = gdk_window_get_state (gdk_window); bool maximized = window_state & GDK_WINDOW_STATE_MAXIMIZED; settings->genconfig.window_maximized_set (maximized); // Save window dimensions if the window is not maximized. if (!maximized) { gint width, height, x, y; gtk_window_get_size (mywindow, &width, &height); gtk_window_get_position (mywindow, &x, &y); settings->genconfig.window_width_set (width); settings->genconfig.window_height_set (height); settings->genconfig.window_x_position_set (x); settings->genconfig.window_y_position_set (y); } } bool ScreenLayoutDimensions::on_timeout (gpointer data) { ((ScreenLayoutDimensions *) data)->timeout(); return false; } // MAP: Why not apply the dimensions immediately? void ScreenLayoutDimensions::timeout() // Apply the dimensions after a timeout. { extern Settings * settings; gint width = settings->genconfig.window_width_get (); gint height = settings->genconfig.window_height_get (); gint x = settings->genconfig.window_x_position_get (); gint y = settings->genconfig.window_y_position_get (); if (mywindow) { if ((width > 50) && (height > 50)) { if ((x >= 0) && (y >= 0)) { // The following crashes on some installations of some versions of Mac OS X: // gtk_window_resize (mywindow, width, height); #ifndef DARWIN // Function gtk_window_move crashes on some version of Mac OS X // when bibledit-gtk is installed through macports. gtk_window_move (mywindow, x, y); #endif } } if (settings->genconfig.window_maximized_get () || settings->genconfig.start_program_maximized_get ()) { gtk_window_maximize (GTK_WINDOW (mywindow)); } } delete this; } bibledit-gtk-4.9/src/layout.h000664 000766 000024 00000002276 12221507141 016334 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_LAYOUT_H #define INCLUDED_LAYOUT_H #include "libraries.h" #include class ScreenLayoutDimensions // Manages screen layout dimensions. { public: ScreenLayoutDimensions(GtkWidget *window); ~ScreenLayoutDimensions(); void verify(); void apply(); void save(); private: GtkWindow * mywindow; int counter; static bool on_timeout (gpointer data); void timeout (); }; #endif bibledit-gtk-4.9/src/libraries.h000664 000766 000024 00000002456 12221507131 016772 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_LIBRARIES_H #define INCLUDED_LIBRARIES_H #include // Standard exception class #include // logic_error and runtime_error #include #include #include #include #include #include #include #include #include #include #include #include #include "ustring.h" #include #include // #define NDEBUG #include using namespace std; #endif bibledit-gtk-4.9/src/listview.cpp000664 000766 000024 00000021327 12221507150 017216 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "listview.h" #include "utilities.h" #include "tiny_utilities.h" ustring listview_get_active_string(GtkWidget * listview) // Gets the currently active string in a combobox. { // Storage for result ustring active_string; // Get the model GtkTreeModel *model; model = gtk_tree_view_get_model(GTK_TREE_VIEW(listview)); // Get the selection. GtkTreeSelection *selection; selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(listview)); // Some variables needed. GtkTreeIter iter; // Get the selected iterator. if (gtk_tree_selection_get_selected(selection, &model, &iter)) { gchar *str_data; // Make sure you terminate calls to gtk_tree_model_get() with a '-1' value. gtk_tree_model_get(model, &iter, 0, &str_data, -1); active_string = str_data; g_free(str_data); } // Return result. return active_string; } int listview_get_active_offset(GtkWidget * listview) // Gets the offset of the item now selected. // If nothing is selected, it returns -1. { // Get model and selection. GtkTreeModel *model = gtk_tree_view_get_model(GTK_TREE_VIEW(listview)); GtkTreeSelection *selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(listview)); // Initialize iterator that points to the selected row. GtkTreeIter selectediter; bool somethingselected = gtk_tree_selection_get_selected(selection, &model, &selectediter); if (!somethingselected) return -1; // Offset we look for. int offset = 0; int result = 0; // Iterate through the model. Compare iterators to find offset. GtkTreeIter iter; gboolean valid = gtk_tree_model_get_iter_first(model, &iter); while (valid) { if (selectediter.user_data == iter.user_data) result = offset; valid = gtk_tree_model_iter_next(model, &iter); offset++; } // Return offset. return result; } static void listview_collect_iterators(GtkTreeModel * model, GtkTreePath * path, GtkTreeIter * iter, gpointer data) { ((vector < GtkTreeIter > *)data)->push_back(*iter); } vector listview_get_active_offsets(GtkWidget * listview) // Gets the offsets of the items now selected. { // Container with offsets. vector < int >offsets; // Get model and selected iterators. GtkTreeModel *model = gtk_tree_view_get_model(GTK_TREE_VIEW(listview)); GtkTreeSelection *selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(listview)); vector iters; gtk_tree_selection_selected_foreach(selection, listview_collect_iterators, gpointer(&iters)); // Iterate through the model. Compare iterators to find offset. int offset = 0; GtkTreeIter iter; gboolean valid = gtk_tree_model_get_iter_first(model, &iter); while (valid) { for (unsigned int i = 0; i < iters.size(); i++) { if (iter.user_data == iters[i].user_data) { offsets.push_back(offset); } } valid = gtk_tree_model_iter_next(model, &iter); offset++; } // Return offsets. return offsets; } vector listview_get_active_strings(GtkWidget * listview) { // Storage for result. vector strings; // Get model and selected iterators. GtkTreeSelection *selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(listview)); vector selected_iterators; gtk_tree_selection_selected_foreach(selection, listview_collect_iterators, gpointer(&selected_iterators)); // Get selected strings. GtkTreeModel *model = gtk_tree_view_get_model(GTK_TREE_VIEW(listview)); for (unsigned int i = 0; i < selected_iterators.size(); i++) { gchar *str_data; gtk_tree_model_get(model, &selected_iterators[i], 0, &str_data, -1); strings.push_back(str_data); g_free(str_data); } // Return the results. return strings; } void listview_clear_strings(GtkWidget * listview, GtkListStore * store) // Clear the strings loaded in the combobox. { gtk_list_store_clear(store); } void listview_set_strings(GtkWidget * listview, GtkListStore * store, const vector < ustring > &strings) { listview_clear_strings(listview, store); GtkTreeIter iter; for (unsigned int i = 0; i < strings.size(); i++) { gtk_list_store_append(store, &iter); gtk_list_store_set(store, &iter, 0, strings[i].c_str(), -1); } } void listview_set_strings(GtkWidget * listview, GtkListStore * store, const vector < unsigned int >&strings) { vector < ustring > strings2; for (unsigned int i = 0; i < strings.size(); i++) strings2.push_back(convert_to_string(strings[i])); listview_set_strings(listview, store, strings2); } void listview_focus_string(GtkWidget * listview, const ustring & string, bool grabfocus) // Sets the string that is focused and scrolls to it. // If grabfocus = true, the listview grabs the focus. { // Get the model GtkTreeModel *model; model = gtk_tree_view_get_model(GTK_TREE_VIEW(listview)); // Get the selection. GtkTreeSelection *selection; selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(listview)); // Some variables needed. GtkTreeIter iter; gboolean valid; gint index = 0; // Get the first iter in the store. valid = gtk_tree_model_get_iter_first(model, &iter); while (valid) { // Walk through the list, reading each row gchar *str_data; // Make sure you terminate calls to gtk_tree_model_get() with a '-1' value. gtk_tree_model_get(model, &iter, 0, &str_data, -1); // If this is the marker we wish to display, select it, put the cursor on it, // and focus on the listview. if (str_data == string) { gtk_tree_selection_select_iter(selection, &iter); GtkTreePath *path = NULL; path = gtk_tree_path_new_from_indices(index, -1); if (path) { gtk_tree_view_set_cursor(GTK_TREE_VIEW(listview), path, NULL, false); gtk_tree_view_scroll_to_cell(GTK_TREE_VIEW(listview), path, NULL, true, 0.5, 0.5); } gtk_tree_path_free(path); if (grabfocus) gtk_widget_grab_focus(listview); } g_free(str_data); valid = gtk_tree_model_iter_next(model, &iter); index++; } } void listview_focus_string(GtkWidget * listview, unsigned int string, bool grabfocus) { listview_focus_string(listview, convert_to_string(string), grabfocus); } vector < ustring > listview_get_strings(GtkWidget * listview) // Gets the strings loaded in the listview. { // Storage for the result. vector < ustring > strings; // Get the model GtkTreeModel *model; model = gtk_tree_view_get_model(GTK_TREE_VIEW(listview)); // Some variables needed. GtkTreeIter iter; gboolean valid; // Get the first iter in the store. valid = gtk_tree_model_get_iter_first(model, &iter); while (valid) { // Walk through the list, reading each row gchar *str_data; // Make sure you terminate calls to gtk_tree_model_get() with a '-1' value. gtk_tree_model_get(model, &iter, 0, &str_data, -1); // Store. strings.push_back(str_data); // Free memory and go to next. g_free(str_data); valid = gtk_tree_model_iter_next(model, &iter); } // Return the results. return strings; } void list_view_erase_selection(GtkWidget * listview) // Erase the current selected string. { GtkTreeModel *model = gtk_tree_view_get_model(GTK_TREE_VIEW(listview)); GtkTreeSelection *selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(listview)); GtkTreeIter iter; if (gtk_tree_selection_get_selected(selection, &model, &iter)) { gtk_list_store_remove(GTK_LIST_STORE(model), &iter); } } void listview_set_row(GtkWidget * listview, GtkListStore * store, unsigned int offset, const ustring row) { // Get the model GtkTreeModel *model = gtk_tree_view_get_model(GTK_TREE_VIEW(listview)); // Some variables needed. GtkTreeIter iter; gboolean valid; unsigned int index = 0; // Get the first iter in the store and walk through the list. valid = gtk_tree_model_get_iter_first(model, &iter); while (valid) { // If this is the right row, set it. if (index == offset) { gtk_list_store_set(store, &iter, 0, row.c_str(), -1); } // Next iteration. valid = gtk_tree_model_iter_next(model, &iter); index++; } } bibledit-gtk-4.9/src/listview.h000664 000766 000024 00000003516 12221507130 016661 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_LISTVIEW_H #define INCLUDED_LISTVIEW_H #include "libraries.h" #include #include ustring listview_get_active_string(GtkWidget * listview); int listview_get_active_offset(GtkWidget * listview); vector listview_get_active_offsets(GtkWidget * listview); vector listview_get_active_strings(GtkWidget * listview); void listview_clear_strings(GtkWidget * listview, GtkListStore * store); void listview_set_strings(GtkWidget * listview, GtkListStore * store, const vector& strings); void listview_set_strings(GtkWidget * listview, GtkListStore * store, const vector& strings); void listview_focus_string(GtkWidget * listview, const ustring& string, bool grabfocus = true); void listview_focus_string(GtkWidget * listview, unsigned int string, bool grabfocus = true); vector listview_get_strings(GtkWidget * listview); void list_view_erase_selection(GtkWidget * listview); void listview_set_row(GtkWidget * listview, GtkListStore * store, unsigned int offset, const ustring row); #endif bibledit-gtk-4.9/src/localizedbooks.cpp000644 000766 000024 00000024712 12460404402 020354 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "localizedbooks.h" #include "utilities.h" #include "directories.h" #include "gwrappers.h" #include #include "bookdata.h" #include "books.h" #include "tiny_utilities.h" extern book_record books_table[]; BookLocalization::BookLocalization(const ustring & language_in, const ustring & filename) { language = language_in; if (g_file_test(filename.c_str(), G_FILE_TEST_IS_REGULAR)) { gchar *contents; g_file_get_contents(filename.c_str(), &contents, NULL, NULL); xmlParserInputBufferPtr inputbuffer; inputbuffer = xmlParserInputBufferCreateMem(contents, strlen(contents), XML_CHAR_ENCODING_NONE); xmlTextReaderPtr reader = xmlNewTextReader(inputbuffer, NULL); if (reader) { char *opening_element = NULL; unsigned int myid; ustring mylocalization; ustring myabbreviation; while ((xmlTextReaderRead(reader) == 1)) { switch (xmlTextReaderNodeType(reader)) { case XML_READER_TYPE_ELEMENT: { opening_element = (char *)xmlTextReaderName(reader); if (!strcmp(opening_element, "book")) { myid = 0; mylocalization.clear(); myabbreviation.clear(); } break; } case XML_READER_TYPE_TEXT: { char *text = (char *)xmlTextReaderValue(reader); if (text) { if (!strcmp(opening_element, "id")) { myid = convert_to_int(text); } if (!strcmp(opening_element, "localization")) { mylocalization = text; } if (!strcmp(opening_element, "abbreviation")) { myabbreviation = text; } free(text); } break; } case XML_READER_TYPE_END_ELEMENT: { char *closing_element = (char *)xmlTextReaderName(reader); if (!strcmp(closing_element, "book")) { if (myid == 0) break; if (mylocalization.empty()) break; if (myabbreviation.empty()) break; id.push_back(myid); name.push_back(mylocalization); name_casefold.push_back(mylocalization.casefold()); abbreviation.push_back(myabbreviation); abbreviation_casefold.push_back(myabbreviation.casefold()); } break; } } } } if (reader) xmlFreeTextReader(reader); if (inputbuffer) xmlFreeParserInputBuffer(inputbuffer); if (contents) g_free(contents); } // Add missing books, take values from English. vector < unsigned int >all_ids = books_type_to_ids(btUnknown); set < unsigned int >ids_done(id.begin(), id.end()); for (unsigned int i = 0; i < all_ids.size(); i++) { if (ids_done.find(all_ids[i]) == ids_done.end()) { ustring book = books_id_to_english(all_ids[i]); id.push_back(all_ids[i]); name.push_back(book); name_casefold.push_back(book.casefold()); abbreviation.push_back(book); abbreviation_casefold.push_back(book.casefold()); } } } BookLocalizations::BookLocalizations(int dummy) { } vector < ustring > BookLocalizations::localizations_get() // Get all available localizations and store them in the object. { if (available_localizations.empty()) { // Get the localizations from the templates that come with Bibledit. ReadFiles rf1(Directories->get_package_data(), "language_", ".xml"); for (unsigned int i = 0; i < rf1.files.size(); i++) { available_filenames.push_back(gw_build_filename(Directories->get_package_data(), rf1.files[i])); available_localizations.push_back(filename_get_localization(rf1.files[i])); } // Get the localizations from the templates provided by the user. ReadFiles rf2(Directories->get_templates_user(), "language_", ".xml"); for (unsigned int i = 0; i < rf2.files.size(); i++) { available_filenames.push_back(gw_build_filename(Directories->get_templates_user(), rf2.files[i])); available_localizations.push_back(filename_get_localization(rf2.files[i])); } // Sort everything on name. quick_sort(available_localizations, available_filenames, 0, available_localizations.size()); } return available_localizations; } ustring BookLocalizations::filename_get_localization(ustring filename) { filename.erase(0, 9); filename.erase(filename.length() - 4, 4); replace_text(filename, "_", " "); size_t pos = 0; while (pos != string::npos) { filename.replace(pos, 1, upperCase(filename.substr(pos, 1))); pos = filename.find(" ", pos); if (pos != string::npos) pos++; } return filename; } unsigned int BookLocalizations::language_pointer_get(ustring language) /* Get a pointer to the BookLocalization for "language". If "language" does not exist, it takes "English". If "language" is not yet loaded, it first loads it, then gives the pointer. */ { // Load the localizations. if (available_localizations.empty()) { localizations_get(); } // Is the requested language available? bool available = false; for (unsigned int i = 0; i < available_localizations.size(); i++) { if (language == available_localizations[i]) { available = true; break; } } // If the language is not available, take "English". if (!available) language = "English"; // Get a pointer to the requested language, if it is already loaded. for (unsigned int i = 0; i < loaded_localizations.size(); i++) { if (language == loaded_localizations[i].language) return i; } // Load the requested language from the filename, and return a pointer to it. ustring filename; for (unsigned int i = 0; i < available_localizations.size(); i++) { if (language == available_localizations[i]) { filename = available_filenames[i]; break; } } BookLocalization booklocalization(language, filename); loaded_localizations.push_back(booklocalization); return loaded_localizations.size() - 1; } unsigned int BookLocalizations::name2id(const ustring & language, const ustring & name) { ustring namecf = name.casefold(); unsigned int pointer = language_pointer_get(language); for (unsigned int i = 0; i < loaded_localizations[pointer].name_casefold.size(); i++) { if (namecf == loaded_localizations[pointer].name_casefold[i]) return loaded_localizations[pointer].id[i]; } return 0; } unsigned int BookLocalizations::abbrev2id(const ustring & language, const ustring & abbrev) { ustring abbrevcf = abbrev.casefold(); unsigned int pointer = language_pointer_get(language); for (unsigned int i = 0; i < loaded_localizations[pointer].abbreviation_casefold.size(); i++) { if (abbrevcf == loaded_localizations[pointer].abbreviation_casefold[i]) return loaded_localizations[pointer].id[i]; } return 0; } unsigned int BookLocalizations::abbrev2id_loose(const ustring & language, const ustring & abbrev) { ustring abbrevcf = abbrev.casefold(); replace_text(abbrevcf, ".", ""); unsigned int pointer = language_pointer_get(language); for (unsigned int i = 0; i < loaded_localizations[pointer].abbreviation_casefold.size(); i++) { if (loaded_localizations[pointer].abbreviation_casefold[i].find(abbrevcf) == 0) return loaded_localizations[pointer].id[i]; } return 0; } ustring BookLocalizations::id2name(const ustring & language, unsigned int id) { unsigned int pointer = language_pointer_get(language); for (unsigned int i = 0; i < loaded_localizations[pointer].id.size(); i++) { if (id == loaded_localizations[pointer].id[i]) return loaded_localizations[pointer].name[i]; } return ""; } ustring BookLocalizations::id2abbrev(const ustring & language, unsigned int id) { unsigned int pointer = language_pointer_get(language); for (unsigned int i = 0; i < loaded_localizations[pointer].id.size(); i++) { if (id == loaded_localizations[pointer].id[i]) return loaded_localizations[pointer].abbreviation[i]; } return ""; } ustring general_adapted_booknames_filename () // Returns the name of the file that contains the general adapted book names. { ustring filename; filename = gw_build_filename (Directories->get_configuration(), "adapted_booknames"); return filename; } map general_adapted_booknames_read () // Reads the general adapted book names from file. { map books; ReadText rt (general_adapted_booknames_filename(), true, false); for (unsigned int i = 0; i < rt.lines.size(); i++) { ustring book = rt.lines[i]; if (!book.empty()) { books[i] = book; } } return books; } void general_adapted_booknames_write (map & booknames) // Writes the general adapted book names to file. { unsigned int highest_book_id = 0; for (unsigned int i = 0; i < bookdata_books_count(); i++) { unsigned int id = books_table[i].id; if (id > highest_book_id) { highest_book_id = id; } } vector books; for (unsigned int i = 0; i <= highest_book_id; i++) { books.push_back (booknames[i]); } write_lines (general_adapted_booknames_filename(), books); } map general_adapted_booknames_fill_up (map & mapping) // The variable "mapping" contains adapted booknames. // This function generates a full map of booknames. // If there are adapted names, it takes these, // and those books that have no adapted names get the English ones. { map swapped_mapping; for (unsigned int i = 0; i < bookdata_books_count(); i++) { ustring book = mapping[i]; if (book.empty()) { book = books_id_to_english(i); } swapped_mapping [book] = i; } return swapped_mapping; } bibledit-gtk-4.9/src/localizedbooks.h000664 000766 000024 00000004143 12221507147 020024 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_LOCALIZED_BOOKS_H #define INCLUDED_LOCALIZED_BOOKS_H #include "libraries.h" class BookLocalization { public: BookLocalization (const ustring& language_in, const ustring& filename); ustring language; vector id; vector name; vector name_casefold; vector abbreviation; vector abbreviation_casefold; }; class BookLocalizations { public: BookLocalizations (int dummy); vector localizations_get (); unsigned int name2id (const ustring& language, const ustring& name); unsigned int abbrev2id (const ustring& language, const ustring& abbrev); unsigned int abbrev2id_loose (const ustring& language, const ustring& abbrev); ustring id2name (const ustring& language, unsigned int id); ustring id2abbrev (const ustring& language, unsigned int id); private: vector available_localizations; vector available_filenames; ustring filename_get_localization (ustring filename); vector loaded_localizations; unsigned int language_pointer_get (ustring language); }; map general_adapted_booknames_read (); void general_adapted_booknames_write (map & booknames); map general_adapted_booknames_fill_up (map & mapping); #endif bibledit-gtk-4.9/src/localizednumerals.cpp000644 000766 000024 00000014236 12453001367 021072 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "localizednumerals.h" #include "utilities.h" #include "directories.h" #include "gwrappers.h" #include #include "tiny_utilities.h" ustring numeral_localization_filename (const ustring& language) // Returns the filename that belongs to the localization of "language". { ustring base_name = "numerals_" + lowerCase (language) + ".xml"; ustring full_filename; // Try the templates that come with Bibledit. full_filename = gw_build_filename (Directories->get_package_data(), base_name); if (!g_file_test(full_filename.c_str(), G_FILE_TEST_IS_REGULAR)) { full_filename.clear(); } // Try the templates provided by the user. if (full_filename.empty()) { full_filename = gw_build_filename (Directories->get_templates_user(), base_name); if (!g_file_test(full_filename.c_str(), G_FILE_TEST_IS_REGULAR)) { full_filename.clear(); } } // Give result. return full_filename; } NumeralLocalization::NumeralLocalization(const ustring& language) { ustring filename = numeral_localization_filename (language); if (g_file_test(filename.c_str(), G_FILE_TEST_IS_REGULAR)) { gchar *contents; g_file_get_contents(filename.c_str(), &contents, NULL, NULL); xmlParserInputBufferPtr inputbuffer; inputbuffer = xmlParserInputBufferCreateMem(contents, strlen(contents), XML_CHAR_ENCODING_NONE); xmlTextReaderPtr reader = xmlNewTextReader(inputbuffer, NULL); if (reader) { char *opening_element = NULL; ustring latin; ustring localization; while ((xmlTextReaderRead(reader) == 1)) { switch (xmlTextReaderNodeType(reader)) { case XML_READER_TYPE_ELEMENT: { opening_element = (char *)xmlTextReaderName(reader); if (!strcmp(opening_element, "numeral")) { latin.clear(); localization.clear(); } break; } case XML_READER_TYPE_TEXT: { char *text = (char *)xmlTextReaderValue(reader); if (text) { if (!strcmp(opening_element, "latin")) { latin = text; } if (!strcmp(opening_element, "localization")) { localization = text; } free(text); } break; } case XML_READER_TYPE_END_ELEMENT: { char *closing_element = (char *)xmlTextReaderName(reader); if (!strcmp(closing_element, "numeral")) { latins.push_back(latin); localizations.push_back(localization); } break; } } } } if (reader) xmlFreeTextReader(reader); if (inputbuffer) xmlFreeParserInputBuffer(inputbuffer); if (contents) g_free(contents); } } bool NumeralLocalization::available () { return !localizations.empty(); } ustring NumeralLocalization::latin2localization (const ustring& latin) // Given "latin" it returns the localization. { // Process the full number first. for (unsigned int i = 0; i < latins.size(); i++) { if (latin == latins[i]) { return localizations[i]; } } // Process the separate bits. ustring localization; for (unsigned int i = 0; i < latin.length(); i++) { bool found = false; for (unsigned int i2 = 0; i2 < latins.size(); i2++) { if (found) continue; if (latin.substr (i, 1) == latins[i2]) { localization.append (localizations[i2]); found = true; } } if (!found) { localization.append (latin.substr (i, 1)); } } return localization; } ustring NumeralLocalization::convert_usfm (ustring line) // Converts Latin numerals to their localized equivalents, // and keeps Latin numerals that are part of a USFM code. // Also keeps the \c and the \v . { ustring conversion; ustring number = number_in_string(line); while (!number.empty()) { bool convert = true; size_t number_pos = line.find (number); // If the number is preceded by \v or \c, do not convert it, e.g. "\c 1". if (number_pos >= 3) { ustring preceding_bit = line.substr (number_pos - 3, 2); if ((preceding_bit == "\\v") || (preceding_bit == "\\c")) { convert = false; } } // If the number belongs to an id line, e.g. \id 1JN, do not convert it. if (convert && (number_pos >= 4)) { ustring preceding_bit = line.substr (number_pos - 4, 3); if (preceding_bit == "\\id") { convert = false; } } // Look back for a space. If it is found then the numeral does not belong to a USFM code, and the conversion can go ahead. // If no space is found, but a backslash instead, then the conversion cannot go ahead since the numeral is part of a USFM code. if (convert) { for (int i = number_pos; i >= 0; i--) { ustring preceding_character = line.substr (i, 1); if (preceding_character == " ") { break; } if (preceding_character == "\\") { convert = false; break; } } } // Do the text transfer and optionally the conversion. conversion.append (line.substr (0, number_pos)); line.erase (0, number_pos + number.length()); if (convert) { number = latin2localization (number); } conversion.append (number); number = number_in_string(line); } conversion.append (line); return conversion; } bibledit-gtk-4.9/src/localizednumerals.h000664 000766 000024 00000002320 12221507136 020526 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_LOCALIZED_NUMERALS_H #define INCLUDED_LOCALIZED_NUMERALS_H #include "libraries.h" ustring numeral_localization_filename (const ustring& language); class NumeralLocalization { public: NumeralLocalization (const ustring& language); bool available (); ustring latin2localization (const ustring& latin); ustring convert_usfm (ustring line); private: vector latins; vector localizations; }; #endif bibledit-gtk-4.9/src/maintenance.cpp000644 000766 000024 00000010201 12453001367 017623 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "maintenance.h" #include "directories.h" #include "stylesheetutils.h" #include "projectutils.h" #include "categorize.h" #include "settings.h" #include "notes_utils.h" #include "git.h" #include "gwrappers.h" #include #include "date_time_utils.h" #include "referencememory.h" #include "snapshots.h" #include "utilities.h" #include "dialogsystemlog.h" ustring maintenance_database_filename () { return gw_build_filename (Directories->get_temp (), "maintenance3.sql"); } void maintenance_initialize () // Initializes the maintenance register. { // Create database if it doesn't exist. if (!g_file_test (maintenance_database_filename ().c_str(), G_FILE_TEST_IS_REGULAR)) { sqlite3 *db; sqlite3_open(maintenance_database_filename().c_str(), &db); sqlite3_busy_timeout(db, 2000); sqlite3_exec(db, "create table commands (workingdirectory text, shellcommand text);", NULL, NULL, NULL); sqlite3_exec(db, "create table snapshots (filename text);", NULL, NULL, NULL); sqlite3_exec(db, "create table databases (filename text);", NULL, NULL, NULL); sqlite3_exec(db, "create table gitrepos (directory text);", NULL, NULL, NULL); sqlite3_close(db); } } void maintenance_register_shell_command (const ustring& working_directory, const ustring& shell_command) // Registers a shell command to be run as part of the maintenance routine on bibledit shutdown. { sqlite3 *db; sqlite3_open(maintenance_database_filename().c_str(), &db); sqlite3_busy_timeout(db, 2000); char *sql; sql = g_strdup_printf("insert into commands values ('%s', '%s');", double_apostrophy (working_directory).c_str(), double_apostrophy (shell_command).c_str()); sqlite3_exec(db, sql, NULL, NULL, NULL); g_free(sql); sqlite3_close(db); } void maintenance_register_git_repository (const ustring& directory) // Registers a git repository in the database for the maintenance routine on bibledit shutdown. // The information is interpreted as: This repository has been changed once more. { sqlite3 *db; sqlite3_open(maintenance_database_filename().c_str(), &db); sqlite3_busy_timeout(db, 2000); char *sql; sql = g_strdup_printf("insert into gitrepos values ('%s');", double_apostrophy (directory).c_str()); sqlite3_exec(db, sql, NULL, NULL, NULL); g_free(sql); sqlite3_close(db); } void maintenance_register_database (const ustring& filename) { sqlite3 *db; sqlite3_open(maintenance_database_filename().c_str(), &db); sqlite3_busy_timeout(db, 2000); char *sql; sql = g_strdup_printf("insert into databases values ('%s');", double_apostrophy (filename).c_str()); sqlite3_exec(db, sql, NULL, NULL, NULL); g_free(sql); sqlite3_close(db); } void maintenance_register_snapshot (const ustring& filename) { sqlite3 *db; sqlite3_open(maintenance_database_filename().c_str(), &db); sqlite3_busy_timeout(db, 2000); char *sql; sql = g_strdup_printf("insert into snapshots values ('%s');", double_apostrophy (filename).c_str()); sqlite3_exec(db, sql, NULL, NULL, NULL); g_free(sql); sqlite3_close(db); } void shutdown_actions() // Takes certain actions when Bibledit shuts down. { // Start maintenance program. GwSpawn spawn ("bibledit-shutdown"); spawn.arg (maintenance_database_filename()); spawn.arg (log_file_name(lftShutdown, false)); spawn.async (); spawn.run (); } bibledit-gtk-4.9/src/maintenance.h000664 000766 000024 00000002325 12221507143 017276 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_MAINTENANCE_H #define INCLUDED_MAINTENANCE_H #include "libraries.h" void maintenance_initialize (); void maintenance_register_shell_command (const ustring& working_directory, const ustring& shell_command); void maintenance_register_git_repository (const ustring& directory); void maintenance_register_database (const ustring& filename); void maintenance_register_snapshot (const ustring& filename); void shutdown_actions (); #endif bibledit-gtk-4.9/src/mainwindow.cpp000644 000766 000024 00000605423 12454201706 017535 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 #include "mainwindow.h" #include "libraries.h" #include "dialoglistview.h" #include "dialogsystemlog.h" #include "constants.h" #include "utilities.h" #include "htmlbrowser.h" #include "usfmtools.h" #include "dialogreplace.h" #include "dialoggotoreference.h" #include #include "bible.h" #include "projectutils.h" #include "dialogproject.h" #include "usfm.h" #include "dialogreplacing.h" #include #include #include "dialogsearchspecial.h" #include "referenceutils.h" #include "pdfviewer.h" #include "notes_utils.h" #include "dialogfindnote.h" #include "dialogimportnotes.h" #include "date_time_utils.h" #include "dialognotes.h" #include "dialogentry.h" #include "projectutils.h" #include "directories.h" #include "dialogcompare.h" #include "export_utils.h" #include "dialogprintprefs.h" #include "dialogprintproject.h" #include "printproject.h" #include "printproject2.h" #include "compareutils.h" #include "dialogshownotes.h" #include "dialogentry3.h" #include "gwrappers.h" #include "gtkwrappers.h" #include "search_utils.h" #include "combobox.h" #include "scripturechecks.h" #include "dialogrefexchange.h" #include "dialogeditlist.h" #include #include "sqlite_reader.h" #include "highlight.h" #include "stylesheetutils.h" #include "keyboard.h" #include "dialoginsertnote.h" #include "dialogparallelbible.h" #include "print_parallel_bible.h" #include "layout.h" #include "dialogbook.h" #include "books.h" #include "screen.h" #include "dialogoutpost.h" #include "dialognotestransfer.h" #include "dialogchapternumber.h" #include "versification.h" #include "dialogmychecks.h" #include "help.h" #include "dialogoriginreferences.h" #include "dialogtidy.h" #include "dialognotesupdate.h" #include "backup.h" #include "dialogrevert.h" #include "resource_utils.h" #include "dialogeditnote.h" #include "dialogwordlist.h" #include "dialogfontcolor.h" #include "color.h" #include "dialognewstylesheet.h" #include "dialoggui.h" #include "password.h" #include "gui_features.h" #include "dialogprintreferences.h" #include "print_parallel_references.h" #include "dialogfixmarkers.h" #include "dialogtextreplacement.h" #include "temporal.h" #include "parallel_passages.h" #include "dialogpdfviewer.h" #include "dialoginserttable.h" #include "tiny_utilities.h" #include "hyphenate.h" #include "dialogviewplanning.h" #include "planning.h" #include "dialogplanningsetup.h" #include "maintenance.h" #include "dialogfilters.h" #include "dialogradiobutton.h" #include "import.h" #include "dialogxfernotes2text.h" #include "text2pdf.h" #include "floatingwindow.h" #include "unixwrappers.h" #include "dialogcompareprefs.h" #include "windowtimednotifier.h" #include "dialogbulkspelling.h" #include "dialogplanningedit.h" #include "dialogmaintenance.h" #include "kjv.h" #include "dialogyesnoalways.h" #include "dialogxetex.h" #include "vcs.h" /* | | | | | Construction and destruction | | | | | */ MainWindow::MainWindow(unsigned long xembed, GtkAccelGroup * _accelerator_group, Settings *_settings, URLTransport *_urltransport, VCS *_vcs): navigation(0), httpd(0) { // Store pointers to the settings, etc. so we don't have to rely on "extern" declarations of them accelerator_group = _accelerator_group; settings = _settings; urltransport = _urltransport; vcs = _vcs; // Set some window pointers to NULL. // To save memory, we only create the object when actually needed. window_show_related_verses = NULL; window_merge = NULL; window_outline = NULL; window_check_keyterms = NULL; window_styles = NULL; window_notes = NULL; window_references = NULL; import_keyterms_assistant = NULL; delete_keyterms_assistant = NULL; changes_assistant = NULL; window_check_usfm = NULL; remote_repository_assistant = NULL; resource_assistant = NULL; backup_assistant = NULL; restore_assistant = NULL; export_assistant = NULL; import_assistant = NULL; // Initialize some variables. windows_startup_pointer = 0; focused_editor_button = NULL; focused_resource_button = NULL; focused_tool_button = NULL; shutting_down = false; check_spelling_at_start = false; check_spelling_at_end = false; interprocess_communications_initiate_listener_event_id = 0; interprocess_communications_initiate_listener_message_id = 0; // Application name. g_set_application_name("Bibledit-Gtk"); // Gui Features object. GuiFeatures guifeatures(0); project_notes_enabled = guifeatures.project_notes(); project_notes_management_enabled = guifeatures.project_notes_management(); references_management_enabled = guifeatures.references_management(); // Accelerators. gtk_accel_group_connect(accelerator_group, GDK_KEY_X, GDK_CONTROL_MASK, GtkAccelFlags(0), g_cclosure_new_swap(G_CALLBACK(accelerator_cut_callback), gpointer(this), NULL)); gtk_accel_group_connect(accelerator_group, GDK_KEY_C, GDK_CONTROL_MASK, GtkAccelFlags(0), g_cclosure_new_swap(G_CALLBACK(accelerator_copy_callback), gpointer(this), NULL)); gtk_accel_group_connect(accelerator_group, GDK_KEY_V, GDK_CONTROL_MASK, GtkAccelFlags(0), g_cclosure_new_swap(G_CALLBACK(accelerator_paste_callback), gpointer(this), NULL)); gtk_accel_group_connect(accelerator_group, GDK_KEY_Z, GDK_CONTROL_MASK, GtkAccelFlags(0), g_cclosure_new_swap(G_CALLBACK(accelerator_undo_callback), gpointer(this), NULL)); gtk_accel_group_connect(accelerator_group, GDK_KEY_Z, GdkModifierType(GDK_CONTROL_MASK | GDK_SHIFT_MASK), GtkAccelFlags(0), g_cclosure_new_swap(G_CALLBACK(accelerator_redo_callback), gpointer(this), NULL)); gtk_accel_group_connect(accelerator_group, GDK_KEY_N, GDK_CONTROL_MASK, GtkAccelFlags(0), g_cclosure_new_swap(G_CALLBACK(accelerator_new_project_note_callback), gpointer(this), NULL)); gtk_accel_group_connect(accelerator_group, GDK_KEY_Down, GDK_MOD1_MASK, GtkAccelFlags(0), g_cclosure_new_swap(G_CALLBACK(accelerator_next_verse_callback), gpointer(this), NULL)); gtk_accel_group_connect(accelerator_group, GDK_KEY_Up, GDK_MOD1_MASK, GtkAccelFlags(0), g_cclosure_new_swap(G_CALLBACK(accelerator_previous_verse_callback), gpointer(this), NULL)); gtk_accel_group_connect(accelerator_group, GDK_KEY_Page_Down, GDK_MOD1_MASK, GtkAccelFlags(0), g_cclosure_new_swap(G_CALLBACK(accelerator_next_chapter_callback), gpointer(this), NULL)); gtk_accel_group_connect(accelerator_group, GDK_KEY_Page_Up, GDK_MOD1_MASK, GtkAccelFlags(0), g_cclosure_new_swap(G_CALLBACK(accelerator_previous_chapter_callback), gpointer(this), NULL)); gtk_accel_group_connect(accelerator_group, GDK_KEY_Page_Down, (GdkModifierType) (GDK_CONTROL_MASK | GDK_MOD1_MASK), GtkAccelFlags(0), g_cclosure_new_swap(G_CALLBACK(accelerator_next_book_callback), gpointer(this), NULL)); gtk_accel_group_connect(accelerator_group, GDK_KEY_Page_Up, (GdkModifierType) (GDK_CONTROL_MASK | GDK_MOD1_MASK), GtkAccelFlags(0), g_cclosure_new_swap(G_CALLBACK(accelerator_previous_book_callback), gpointer(this), NULL)); gtk_accel_group_connect(accelerator_group, GDK_KEY_Right, GDK_MOD1_MASK, GtkAccelFlags(0), g_cclosure_new_swap(G_CALLBACK(accelerator_next_reference_in_history_callback), gpointer(this), NULL)); gtk_accel_group_connect(accelerator_group, GDK_KEY_Left, GDK_MOD1_MASK, GtkAccelFlags(0), g_cclosure_new_swap(G_CALLBACK(accelerator_previous_reference_in_history_callback), gpointer(this), NULL)); gtk_accel_group_connect(accelerator_group, GDK_KEY_G, GDK_CONTROL_MASK, GtkAccelFlags(0), g_cclosure_new_swap(G_CALLBACK(accelerator_go_to_reference_callback), gpointer(this), NULL)); gtk_accel_group_connect(accelerator_group, GDK_KEY_W, GDK_CONTROL_MASK, GtkAccelFlags(0), g_cclosure_new_swap(G_CALLBACK(accelerator_close_window_callback), gpointer(this), NULL)); if (guifeatures.styles()) { gtk_accel_group_connect(accelerator_group, GDK_KEY_S, GDK_CONTROL_MASK, GtkAccelFlags(0), g_cclosure_new_swap(G_CALLBACK(accelerator_goto_styles_area_callback), gpointer(this), NULL)); } gtk_accel_group_connect(accelerator_group, GDK_KEY_Q, GDK_CONTROL_MASK, GtkAccelFlags(0), g_cclosure_new_swap(G_CALLBACK(accelerator_quit_program_callback), gpointer(this), NULL)); gtk_accel_group_connect(accelerator_group, GDK_KEY_F5, GdkModifierType(0), GtkAccelFlags(0), g_cclosure_new_swap(G_CALLBACK(accelerator_activate_text_area_callback), gpointer(this), NULL)); gtk_accel_group_connect(accelerator_group, GDK_KEY_F5, GDK_SHIFT_MASK, GtkAccelFlags(0), g_cclosure_new_swap(G_CALLBACK(accelerator_activate_tools_area_callback), gpointer(this), NULL)); if (guifeatures.project_notes()) { gtk_accel_group_connect(accelerator_group, GDK_KEY_F5, GDK_CONTROL_MASK, GtkAccelFlags(0), g_cclosure_new_swap(G_CALLBACK(accelerator_activate_notes_area_callback), gpointer(this), NULL)); } if (guifeatures.references_and_find()) { gtk_accel_group_connect(accelerator_group, GDK_KEY_F6, GdkModifierType(0), GtkAccelFlags(0), g_cclosure_new_swap(G_CALLBACK(accelerator_next_reference_in_reference_area_callback), gpointer(this), NULL)); gtk_accel_group_connect(accelerator_group, GDK_KEY_F6, GDK_SHIFT_MASK, GtkAccelFlags(0), g_cclosure_new_swap(G_CALLBACK(accelerator_previous_reference_in_reference_area_callback), gpointer(this), NULL)); } gtk_accel_group_connect(accelerator_group, GDK_KEY_Right, (GdkModifierType) (GDK_CONTROL_MASK | GDK_MOD1_MASK), GtkAccelFlags(0), g_cclosure_new_swap(G_CALLBACK(accelerator_next_project_callback), gpointer(this), NULL)); gtk_accel_group_connect(accelerator_group, GDK_KEY_Left, (GdkModifierType) (GDK_CONTROL_MASK | GDK_MOD1_MASK), GtkAccelFlags(0), g_cclosure_new_swap(G_CALLBACK(accelerator_previous_project_callback), gpointer(this), NULL)); gtk_accel_group_connect(accelerator_group, GDK_KEY_O, GDK_CONTROL_MASK, GtkAccelFlags(0), g_cclosure_new_swap(G_CALLBACK(accelerator_open_project_callback), gpointer(this), NULL)); if (guifeatures.printing()) { gtk_accel_group_connect(accelerator_group, GDK_KEY_P, GDK_CONTROL_MASK, GtkAccelFlags(0), g_cclosure_new_swap(G_CALLBACK(accelerator_print_callback), gpointer(this), NULL)); } if (guifeatures.references_and_find()) { gtk_accel_group_connect(accelerator_group, GDK_KEY_F, GDK_CONTROL_MASK, GtkAccelFlags(0), g_cclosure_new_swap(G_CALLBACK(accelerator_find_callback), gpointer(this), NULL)); } if (guifeatures.replace()) { gtk_accel_group_connect(accelerator_group, GDK_KEY_R, GDK_CONTROL_MASK, GtkAccelFlags(0), g_cclosure_new_swap(G_CALLBACK(accelerator_replace_callback), gpointer(this), NULL)); } gtk_accel_group_connect(accelerator_group, GDK_KEY_F1, GdkModifierType(0), GtkAccelFlags(0), g_cclosure_new_swap(G_CALLBACK(accelerator_main_help_callback), gpointer(this), NULL)); // For USFM view, we first had defined the Ctrl-U for that. The U is the first letter of USFM, // and also in for example Firefox, the Ctrl-U views the source code. // But since the Ctrl-U clashed with the Ctrl-U for underline in the note editor, // the accelerator key for viewing USFM code was changed to Ctrl-\. // The backslash is the first character of the USFM code. gtk_accel_group_connect(accelerator_group, GDK_KEY_backslash, GDK_CONTROL_MASK, GtkAccelFlags(0), g_cclosure_new_swap(G_CALLBACK(accelerator_view_usfm_code), gpointer(this), NULL)); // GUI build. // Main window, xembed is used on the XO machine. if (xembed) { window_main = gtk_plug_new(GdkNativeWindow(xembed)); } else { window_main = gtk_window_new(GTK_WINDOW_TOPLEVEL); } // Size and position of window and screen layout. ScreenLayoutDimensions * dimensions = new ScreenLayoutDimensions (window_main); dimensions->verify(); gtk_widget_show (window_main); g_signal_connect ((gpointer) window_main, "delete_event", G_CALLBACK(on_window_delete_event), gpointer(this)); // Use accelerators. gtk_window_add_accel_group(GTK_WINDOW(window_main), accelerator_group); vbox_main = gtk_vbox_new (FALSE, 0); gtk_widget_show (vbox_main); gtk_container_add (GTK_CONTAINER (window_main), vbox_main); menubar1 = gtk_menu_bar_new(); gtk_widget_show(menubar1); gtk_box_pack_start(GTK_BOX(vbox_main), menubar1, FALSE, FALSE, 0); menuitem_file = gtk_menu_item_new_with_mnemonic("_File"); gtk_widget_show(menuitem_file); gtk_container_add(GTK_CONTAINER(menubar1), menuitem_file); menuitem_file_menu = gtk_menu_new(); gtk_menu_item_set_submenu(GTK_MENU_ITEM(menuitem_file), menuitem_file_menu); file_project = gtk_image_menu_item_new_with_mnemonic("Pr_oject"); gtk_widget_show(file_project); gtk_container_add(GTK_CONTAINER(menuitem_file_menu), file_project); image463 = gtk_image_new_from_stock("gtk-index", GTK_ICON_SIZE_MENU); gtk_widget_show(image463); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(file_project), image463); file_project_menu = gtk_menu_new(); gtk_menu_item_set_submenu(GTK_MENU_ITEM(file_project), file_project_menu); new1 = NULL; open1 = NULL; delete1 = NULL; if (guifeatures.project_management()) { new1 = gtk_image_menu_item_new_with_mnemonic("_New"); gtk_widget_show(new1); gtk_container_add(GTK_CONTAINER(file_project_menu), new1); image903 = gtk_image_new_from_stock("gtk-new", GTK_ICON_SIZE_MENU); gtk_widget_show(image903); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(new1), image903); open1 = gtk_image_menu_item_new_from_stock("gtk-open", NULL); gtk_widget_show(open1); gtk_container_add(GTK_CONTAINER(file_project_menu), open1); delete1 = gtk_image_menu_item_new_from_stock("gtk-delete", NULL); gtk_widget_show(delete1); gtk_container_add(GTK_CONTAINER(file_project_menu), delete1); } properties1 = NULL; copy_project_to = NULL; compare_with1 = NULL; if (guifeatures.project_management()) { properties1 = gtk_image_menu_item_new_with_mnemonic("P_roperties"); gtk_widget_show(properties1); gtk_container_add(GTK_CONTAINER(file_project_menu), properties1); image4995 = gtk_image_new_from_stock("gtk-properties", GTK_ICON_SIZE_MENU); gtk_widget_show(image4995); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(properties1), image4995); copy_project_to = gtk_image_menu_item_new_with_mnemonic("Cop_y to"); gtk_widget_show(copy_project_to); gtk_container_add(GTK_CONTAINER(file_project_menu), copy_project_to); image2688 = gtk_image_new_from_stock("gtk-copy", GTK_ICON_SIZE_MENU); gtk_widget_show(image2688); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(copy_project_to), image2688); compare_with1 = gtk_image_menu_item_new_with_mnemonic("Co_mpare with"); gtk_widget_show(compare_with1); gtk_container_add(GTK_CONTAINER(file_project_menu), compare_with1); image2764 = gtk_image_new_from_stock("gtk-zoom-fit", GTK_ICON_SIZE_MENU); gtk_widget_show(image2764); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(compare_with1), image2764); } project_changes = NULL; if (guifeatures.project_management()) { project_changes = gtk_image_menu_item_new_with_mnemonic("C_hanges"); gtk_widget_show(project_changes); gtk_container_add(GTK_CONTAINER(file_project_menu), project_changes); image19115 = gtk_image_new_from_stock("gtk-zoom-fit", GTK_ICON_SIZE_MENU); gtk_widget_show(image19115); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(project_changes), image19115); } file_projects_merge = gtk_check_menu_item_new_with_mnemonic("Mer_ge"); gtk_widget_show(file_projects_merge); gtk_container_add(GTK_CONTAINER(file_project_menu), file_projects_merge); projects_send_receive1 = gtk_image_menu_item_new_with_mnemonic ("_Send / receive"); gtk_widget_show (projects_send_receive1); gtk_container_add (GTK_CONTAINER (file_project_menu), projects_send_receive1); image34440 = gtk_image_new_from_stock ("gtk-network", GTK_ICON_SIZE_MENU); gtk_widget_show (image34440); gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (projects_send_receive1), image34440); style = NULL; if (guifeatures.styles()) { style = gtk_image_menu_item_new_with_mnemonic("_Styles"); gtk_widget_show(style); gtk_container_add(GTK_CONTAINER(menuitem_file_menu), style); image10735 = gtk_image_new_from_stock("gtk-print-preview", GTK_ICON_SIZE_MENU); gtk_widget_show(image10735); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(style), image10735); } style_menu = NULL; if (guifeatures.styles()) { style_menu = gtk_menu_new(); gtk_menu_item_set_submenu(GTK_MENU_ITEM(style), style_menu); } stylesheet_open = NULL; if (guifeatures.styles()) { stylesheet_open = gtk_image_menu_item_new_with_mnemonic("_Open"); gtk_widget_show(stylesheet_open); gtk_container_add(GTK_CONTAINER(style_menu), stylesheet_open); image31346 = gtk_image_new_from_stock("gtk-open", GTK_ICON_SIZE_MENU); gtk_widget_show(image31346); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(stylesheet_open), image31346); } stylesheets_expand_all = NULL; if (guifeatures.styles()) { stylesheets_expand_all = gtk_image_menu_item_new_with_mnemonic("_Expand all"); //gtk_widget_show(stylesheets_expand_all); gtk_container_add(GTK_CONTAINER(style_menu), stylesheets_expand_all); GtkWidget *image10736; image10736 = gtk_image_new_from_stock("gtk-add", GTK_ICON_SIZE_MENU); gtk_widget_show(image10736); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(stylesheets_expand_all), image10736); } stylesheets_collapse_all = NULL; if (guifeatures.styles()) { stylesheets_collapse_all = gtk_image_menu_item_new_with_mnemonic("_Collapse all"); //gtk_widget_show(stylesheets_collapse_all); gtk_container_add(GTK_CONTAINER(style_menu), stylesheets_collapse_all); GtkWidget *image10737; image10737 = gtk_image_new_from_stock("gtk-remove", GTK_ICON_SIZE_MENU); gtk_widget_show(image10737); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(stylesheets_collapse_all), image10737); } style_insert = NULL; if (guifeatures.styles()) { style_insert = gtk_image_menu_item_new_with_mnemonic("_Insert"); //gtk_widget_show(style_insert); gtk_container_add(GTK_CONTAINER(style_menu), style_insert); GtkWidget *image10738; image10738 = gtk_image_new_from_stock("gtk-paste", GTK_ICON_SIZE_MENU); gtk_widget_show(image10738); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(style_insert), image10738); } stylesheet_edit_mode = NULL; if (guifeatures.styles_management()) { stylesheet_edit_mode = gtk_check_menu_item_new_with_mnemonic("Edit _mode"); //gtk_widget_show(stylesheet_edit_mode); gtk_container_add(GTK_CONTAINER(style_menu), stylesheet_edit_mode); } style_new = NULL; if (guifeatures.styles_management()) { style_new = gtk_image_menu_item_new_with_mnemonic("_New"); //gtk_widget_show(style_new); gtk_container_add(GTK_CONTAINER(style_menu), style_new); GtkWidget *image10739; image10739 = gtk_image_new_from_stock("gtk-new", GTK_ICON_SIZE_MENU); gtk_widget_show(image10739); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(style_new), image10739); } style_properties = NULL; if (guifeatures.styles_management()) { style_properties = gtk_image_menu_item_new_from_stock("gtk-properties", NULL); //gtk_widget_show(style_properties); gtk_container_add(GTK_CONTAINER(style_menu), style_properties); } style_delete = NULL; if (guifeatures.styles_management()) { style_delete = gtk_image_menu_item_new_from_stock("gtk-delete", NULL); //gtk_widget_show(style_delete); gtk_container_add(GTK_CONTAINER(style_menu), style_delete); } menu_stylesheet = NULL; if (guifeatures.styles_management()) { menu_stylesheet = gtk_image_menu_item_new_with_mnemonic("_Stylesheet"); //gtk_widget_show(menu_stylesheet); gtk_container_add(GTK_CONTAINER(style_menu), menu_stylesheet); GtkWidget *image10740; image10740 = gtk_image_new_from_stock("gtk-print-preview", GTK_ICON_SIZE_MENU); gtk_widget_show(image10740); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(menu_stylesheet), image10740); } menu_stylesheet_menu = NULL; if (guifeatures.styles_management()) { menu_stylesheet_menu = gtk_menu_new(); gtk_menu_item_set_submenu(GTK_MENU_ITEM(menu_stylesheet), menu_stylesheet_menu); } stylesheet_switch = NULL; if (guifeatures.styles_management()) { stylesheet_switch = gtk_image_menu_item_new_with_mnemonic("_Switch"); gtk_widget_show(stylesheet_switch); gtk_container_add(GTK_CONTAINER(menu_stylesheet_menu), stylesheet_switch); GtkWidget *image10741; image10741 = gtk_image_new_from_stock("gtk-open", GTK_ICON_SIZE_MENU); gtk_widget_show(image10741); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(stylesheet_switch), image10741); } stylesheets_new = NULL; if (guifeatures.styles_management()) { stylesheets_new = gtk_image_menu_item_new_with_mnemonic("_New"); gtk_widget_show(stylesheets_new); gtk_container_add(GTK_CONTAINER(menu_stylesheet_menu), stylesheets_new); GtkWidget *image10742; image10742 = gtk_image_new_from_stock("gtk-new", GTK_ICON_SIZE_MENU); gtk_widget_show(image10742); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(stylesheets_new), image10742); } stylesheets_delete = NULL; if (guifeatures.styles_management()) { stylesheets_delete = gtk_image_menu_item_new_with_mnemonic("_Delete"); gtk_widget_show(stylesheets_delete); gtk_container_add(GTK_CONTAINER(menu_stylesheet_menu), stylesheets_delete); GtkWidget *image10743; image10743 = gtk_image_new_from_stock("gtk-delete", GTK_ICON_SIZE_MENU); gtk_widget_show(image10743); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(stylesheets_delete), image10743); } stylesheets_rename = NULL; if (guifeatures.styles_management()) { stylesheets_rename = gtk_image_menu_item_new_with_mnemonic("_Rename"); gtk_widget_show(stylesheets_rename); gtk_container_add(GTK_CONTAINER(menu_stylesheet_menu), stylesheets_rename); GtkWidget *image10744; image10744 = gtk_image_new_from_stock("gtk-redo", GTK_ICON_SIZE_MENU); gtk_widget_show(image10744); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(stylesheets_rename), image10744); } // Whether style management is enabled. style_management_enabled = guifeatures.styles_management(); notes2 = NULL; new_note = NULL; delete_note = NULL; consultation_notes_send_receive = NULL; if (guifeatures.project_notes_management()) { notes2 = gtk_image_menu_item_new_with_mnemonic("Project _notes"); gtk_widget_show(notes2); gtk_container_add(GTK_CONTAINER(menuitem_file_menu), notes2); image936 = gtk_image_new_from_stock("gtk-dialog-info", GTK_ICON_SIZE_MENU); gtk_widget_show(image936); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(notes2), image936); notes2_menu = gtk_menu_new(); gtk_menu_item_set_submenu(GTK_MENU_ITEM(notes2), notes2_menu); new_note = gtk_image_menu_item_new_from_stock("gtk-new", NULL); gtk_widget_show(new_note); gtk_container_add(GTK_CONTAINER(notes2_menu), new_note); delete_note = gtk_image_menu_item_new_with_mnemonic("_Delete"); gtk_widget_show(delete_note); gtk_container_add(GTK_CONTAINER(notes2_menu), delete_note); image963 = gtk_image_new_from_stock("gtk-delete", GTK_ICON_SIZE_MENU); gtk_widget_show(image963); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(delete_note), image963); consultation_notes_send_receive = gtk_image_menu_item_new_with_mnemonic("_Send / Receive"); gtk_widget_show(consultation_notes_send_receive); gtk_container_add(GTK_CONTAINER(notes2_menu), consultation_notes_send_receive); } file_resources = gtk_image_menu_item_new_with_mnemonic("R_esources"); //gtk_widget_show(file_resources); gtk_container_add(GTK_CONTAINER(menuitem_file_menu), file_resources); image27365 = gtk_image_new_from_stock("gtk-info", GTK_ICON_SIZE_MENU); //gtk_widget_show(image27365); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(file_resources), image27365); file_resources_menu = gtk_menu_new(); gtk_menu_item_set_submenu(GTK_MENU_ITEM(file_resources), file_resources_menu); file_resources_open = gtk_image_menu_item_new_with_mnemonic("_Open"); //gtk_widget_show(file_resources_open); gtk_container_add(GTK_CONTAINER(file_resources_menu), file_resources_open); image27366 = gtk_image_new_from_stock("gtk-open", GTK_ICON_SIZE_MENU); //gtk_widget_show(image27366); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(file_resources_open), image27366); file_resources_close = gtk_image_menu_item_new_with_mnemonic("_Close"); //gtk_widget_show(file_resources_close); gtk_container_add(GTK_CONTAINER(file_resources_menu), file_resources_close); image27367 = gtk_image_new_from_stock("gtk-close", GTK_ICON_SIZE_MENU); //gtk_widget_show(image27367); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(file_resources_close), image27367); file_resources_new = gtk_image_menu_item_new_with_mnemonic("_New"); //gtk_widget_show(file_resources_new); gtk_container_add(GTK_CONTAINER(file_resources_menu), file_resources_new); image27514 = gtk_image_new_from_stock("gtk-new", GTK_ICON_SIZE_MENU); //gtk_widget_show(image27514); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(file_resources_new), image27514); file_resources_edit = gtk_image_menu_item_new_with_mnemonic("_Edit"); //gtk_widget_show(file_resources_edit); gtk_container_add(GTK_CONTAINER(file_resources_menu), file_resources_edit); image27515 = gtk_image_new_from_stock("gtk-edit", GTK_ICON_SIZE_MENU); //gtk_widget_show(image27515); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(file_resources_edit), image27515); file_resources_delete = gtk_image_menu_item_new_with_mnemonic("_Delete"); //gtk_widget_show(file_resources_delete); gtk_container_add(GTK_CONTAINER(file_resources_menu), file_resources_delete); image27664 = gtk_image_new_from_stock("gtk-delete", GTK_ICON_SIZE_MENU); //gtk_widget_show(image27664); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(file_resources_delete), image27664); file_keyterms = gtk_image_menu_item_new_with_mnemonic ("_Keyterms"); gtk_widget_show (file_keyterms); gtk_container_add (GTK_CONTAINER (menuitem_file_menu), file_keyterms); image32231 = gtk_image_new_from_stock ("gtk-select-font", GTK_ICON_SIZE_MENU); gtk_widget_show (image32231); gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (file_keyterms), image32231); file_keyterms_menu = gtk_menu_new (); gtk_menu_item_set_submenu (GTK_MENU_ITEM (file_keyterms), file_keyterms_menu); keyterms_delete = gtk_image_menu_item_new_from_stock ("gtk-delete", NULL); gtk_widget_show (keyterms_delete); gtk_container_add (GTK_CONTAINER (file_keyterms_menu), keyterms_delete); print = NULL; if (guifeatures.printing()) { print = gtk_image_menu_item_new_from_stock("gtk-print", NULL); gtk_widget_show(print); gtk_container_add(GTK_CONTAINER(menuitem_file_menu), print); } file_import = gtk_image_menu_item_new_with_mnemonic ("_Import"); gtk_widget_show (file_import); gtk_container_add (GTK_CONTAINER (menuitem_file_menu), file_import); image36797 = gtk_image_new_from_stock ("gtk-add", GTK_ICON_SIZE_MENU); gtk_widget_show (image36797); gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (file_import), image36797); file_export = gtk_image_menu_item_new_with_mnemonic ("E_xport"); gtk_widget_show (file_export); gtk_container_add (GTK_CONTAINER (menuitem_file_menu), file_export); image35236 = gtk_image_new_from_stock ("gtk-convert", GTK_ICON_SIZE_MENU); gtk_widget_show (image35236); gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (file_export), image35236); file_backup = gtk_image_menu_item_new_with_mnemonic ("_Backup"); gtk_widget_show (file_backup); gtk_container_add (GTK_CONTAINER (menuitem_file_menu), file_backup); image34724 = gtk_image_new_from_stock ("gtk-copy", GTK_ICON_SIZE_MENU); gtk_widget_show (image34724); gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (file_backup), image34724); file_restore = gtk_image_menu_item_new_with_mnemonic ("Res_tore"); gtk_widget_show (file_restore); gtk_container_add (GTK_CONTAINER (menuitem_file_menu), file_restore); image34980 = gtk_image_new_from_stock ("gtk-home", GTK_ICON_SIZE_MENU); gtk_widget_show (image34980); gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (file_restore), image34980); close1 = gtk_image_menu_item_new_from_stock("gtk-close", NULL); gtk_widget_show(close1); gtk_container_add(GTK_CONTAINER(menuitem_file_menu), close1); quit1 = gtk_image_menu_item_new_from_stock("gtk-quit", NULL); gtk_widget_show(quit1); gtk_container_add(GTK_CONTAINER(menuitem_file_menu), quit1); menuitem_edit = gtk_menu_item_new_with_mnemonic("_Edit"); gtk_widget_show(menuitem_edit); gtk_container_add(GTK_CONTAINER(menubar1), menuitem_edit); menuitem_edit_menu = gtk_menu_new(); gtk_menu_item_set_submenu(GTK_MENU_ITEM(menuitem_edit), menuitem_edit_menu); cut1 = gtk_image_menu_item_new_from_stock("gtk-cut", NULL); gtk_widget_show(cut1); gtk_container_add(GTK_CONTAINER(menuitem_edit_menu), cut1); copy1 = gtk_image_menu_item_new_from_stock("gtk-copy", NULL); gtk_widget_show(copy1); gtk_container_add(GTK_CONTAINER(menuitem_edit_menu), copy1); copy_with_formatting = gtk_image_menu_item_new_with_mnemonic("Copy _with formatting"); gtk_widget_show(copy_with_formatting); gtk_container_add(GTK_CONTAINER(menuitem_edit_menu), copy_with_formatting); image18220 = gtk_image_new_from_stock("gtk-copy", GTK_ICON_SIZE_MENU); gtk_widget_show(image18220); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(copy_with_formatting), image18220); paste1 = gtk_image_menu_item_new_from_stock("gtk-paste", NULL); gtk_widget_show(paste1); gtk_container_add(GTK_CONTAINER(menuitem_edit_menu), paste1); separator2 = gtk_separator_menu_item_new(); gtk_widget_show(separator2); gtk_container_add(GTK_CONTAINER(menuitem_edit_menu), separator2); gtk_widget_set_sensitive(separator2, FALSE); undo1 = gtk_image_menu_item_new_with_mnemonic("_Undo"); gtk_widget_show(undo1); gtk_container_add(GTK_CONTAINER(menuitem_edit_menu), undo1); image295 = gtk_image_new_from_stock("gtk-undo", GTK_ICON_SIZE_MENU); gtk_widget_show(image295); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(undo1), image295); redo1 = gtk_image_menu_item_new_with_mnemonic("_Redo"); gtk_widget_show(redo1); gtk_container_add(GTK_CONTAINER(menuitem_edit_menu), redo1); image296 = gtk_image_new_from_stock("gtk-redo", GTK_ICON_SIZE_MENU); gtk_widget_show(image296); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(redo1), image296); separator4 = gtk_separator_menu_item_new(); gtk_widget_show(separator4); gtk_container_add(GTK_CONTAINER(menuitem_edit_menu), separator4); gtk_widget_set_sensitive(separator4, FALSE); find1 = NULL; if (guifeatures.references_and_find()) { find1 = gtk_image_menu_item_new_from_stock("gtk-find", NULL); gtk_widget_show(find1); gtk_container_add(GTK_CONTAINER(menuitem_edit_menu), find1); } find_and_replace1 = NULL; if (guifeatures.replace()) { find_and_replace1 = gtk_image_menu_item_new_from_stock("gtk-find-and-replace", NULL); gtk_widget_show(find_and_replace1); gtk_container_add(GTK_CONTAINER(menuitem_edit_menu), find_and_replace1); } find_in_notes1 = NULL; if (guifeatures.project_notes()) { find_in_notes1 = gtk_image_menu_item_new_with_mnemonic("Find in Project _notes"); gtk_widget_show(find_in_notes1); gtk_container_add(GTK_CONTAINER(menuitem_edit_menu), find_in_notes1); image1430 = gtk_image_new_from_stock("gtk-find", GTK_ICON_SIZE_MENU); gtk_widget_show(image1430); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(find_in_notes1), image1430); } separator7 = gtk_separator_menu_item_new(); gtk_widget_show(separator7); gtk_container_add(GTK_CONTAINER(menuitem_edit_menu), separator7); gtk_widget_set_sensitive(separator7, FALSE); get_references_from_note = NULL; if (guifeatures.project_notes()) { get_references_from_note = gtk_image_menu_item_new_with_mnemonic("_Get references from project note"); gtk_widget_show(get_references_from_note); gtk_container_add(GTK_CONTAINER(menuitem_edit_menu), get_references_from_note); image3158 = gtk_image_new_from_stock("gtk-index", GTK_ICON_SIZE_MENU); gtk_widget_show(image3158); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(get_references_from_note), image3158); } separator15 = gtk_separator_menu_item_new(); gtk_widget_show(separator15); gtk_container_add(GTK_CONTAINER(menuitem_edit_menu), separator15); gtk_widget_set_sensitive(separator15, FALSE); edit_revert = gtk_image_menu_item_new_with_mnemonic("Re_vert"); gtk_widget_show(edit_revert); gtk_container_add(GTK_CONTAINER(menuitem_edit_menu), edit_revert); image19262 = gtk_image_new_from_stock("gtk-go-back", GTK_ICON_SIZE_MENU); gtk_widget_show(image19262); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(edit_revert), image19262); separator17 = gtk_separator_menu_item_new(); gtk_widget_show(separator17); gtk_container_add(GTK_CONTAINER(menuitem_edit_menu), separator17); gtk_widget_set_sensitive(separator17, FALSE); edit_bible_note = gtk_image_menu_item_new_with_mnemonic("_Bible note"); gtk_widget_show(edit_bible_note); gtk_container_add(GTK_CONTAINER(menuitem_edit_menu), edit_bible_note); image20483 = gtk_image_new_from_stock("gtk-convert", GTK_ICON_SIZE_MENU); gtk_widget_show(image20483); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(edit_bible_note), image20483); separator21 = gtk_separator_menu_item_new(); gtk_widget_show(separator21); gtk_container_add(GTK_CONTAINER(menuitem_edit_menu), separator21); gtk_widget_set_sensitive(separator21, FALSE); edit_planning = gtk_image_menu_item_new_with_mnemonic("P_lanning"); gtk_widget_show(edit_planning); gtk_container_add(GTK_CONTAINER(menuitem_edit_menu), edit_planning); image26801 = gtk_image_new_from_stock("gtk-info", GTK_ICON_SIZE_MENU); gtk_widget_show(image26801); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(edit_planning), image26801); menuitem_view = gtk_menu_item_new_with_mnemonic("_View"); gtk_widget_show(menuitem_view); gtk_container_add(GTK_CONTAINER(menubar1), menuitem_view); menuitem_view_menu = gtk_menu_new(); gtk_menu_item_set_submenu(GTK_MENU_ITEM(menuitem_view), menuitem_view_menu); view_font = gtk_image_menu_item_new_with_mnemonic("_Font & Color"); gtk_widget_show(view_font); gtk_container_add(GTK_CONTAINER(menuitem_view_menu), view_font); image20234 = gtk_image_new_from_stock("gtk-select-font", GTK_ICON_SIZE_MENU); gtk_widget_show(image20234); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(view_font), image20234); view_font_menu = gtk_menu_new(); gtk_menu_item_set_submenu(GTK_MENU_ITEM(view_font), view_font_menu); view_text_font = gtk_image_menu_item_new_with_mnemonic("_Text"); gtk_widget_show(view_text_font); gtk_container_add(GTK_CONTAINER(view_font_menu), view_text_font); image20235 = gtk_image_new_from_stock("gtk-select-font", GTK_ICON_SIZE_MENU); gtk_widget_show(image20235); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(view_text_font), image20235); viewnotes = NULL; if (guifeatures.project_notes()) { viewnotes = gtk_image_menu_item_new_with_mnemonic("Project _notes"); gtk_widget_show(viewnotes); gtk_container_add(GTK_CONTAINER(menuitem_view_menu), viewnotes); image2627 = gtk_image_new_from_stock("gtk-index", GTK_ICON_SIZE_MENU); gtk_widget_show(image2627); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(viewnotes), image2627); } view_usfm_code = gtk_check_menu_item_new_with_mnemonic ("_USFM code"); gtk_widget_show(view_usfm_code); gtk_container_add(GTK_CONTAINER(menuitem_view_menu), view_usfm_code); view_planning = gtk_image_menu_item_new_with_mnemonic("Pl_anning"); gtk_widget_show(view_planning); gtk_container_add(GTK_CONTAINER(menuitem_view_menu), view_planning); image26812 = gtk_image_new_from_stock("gtk-info", GTK_ICON_SIZE_MENU); gtk_widget_show(image26812); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(view_planning), image26812); view_references = gtk_check_menu_item_new_with_mnemonic ("R_eferences"); gtk_widget_show (view_references); gtk_container_add (GTK_CONTAINER (menuitem_view_menu), view_references); view_related_verses = gtk_check_menu_item_new_with_mnemonic("_Related verses"); gtk_widget_show(view_related_verses); gtk_container_add(GTK_CONTAINER(menuitem_view_menu), view_related_verses); view_outline = gtk_check_menu_item_new_with_mnemonic("_Outline"); gtk_widget_show(view_outline); gtk_container_add(GTK_CONTAINER(menuitem_view_menu), view_outline); insert1 = gtk_menu_item_new_with_mnemonic("_Insert"); gtk_widget_show(insert1); gtk_container_add(GTK_CONTAINER(menubar1), insert1); insert1_menu = gtk_menu_new(); gtk_menu_item_set_submenu(GTK_MENU_ITEM(insert1), insert1_menu); insert_special_character = gtk_image_menu_item_new_with_mnemonic("_Special character"); gtk_widget_show(insert_special_character); gtk_container_add(GTK_CONTAINER(insert1_menu), insert_special_character); GtkWidget *image25281; image25281 = gtk_image_new_from_stock("gtk-edit", GTK_ICON_SIZE_MENU); gtk_widget_show(image25281); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(insert_special_character), image25281); insert_footnote = gtk_image_menu_item_new_with_mnemonic("_Footnote"); gtk_widget_show(insert_footnote); gtk_container_add(GTK_CONTAINER(insert1_menu), insert_footnote); GtkWidget *imagefn = gtk_image_new_from_stock("gtk-edit", GTK_ICON_SIZE_MENU); gtk_widget_show(imagefn); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(insert_footnote), imagefn); insert_xref = gtk_image_menu_item_new_with_mnemonic("_Crossreference"); gtk_widget_show(insert_xref); gtk_container_add(GTK_CONTAINER(insert1_menu), insert_xref); GtkWidget *imagexref = gtk_image_new_from_stock("gtk-edit", GTK_ICON_SIZE_MENU); gtk_widget_show(imagexref); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(insert_xref), imagexref); check1 = NULL; chapters_and_verses1 = NULL; markers1 = NULL; markers1_menu = NULL; validate_usfms1 = NULL; count_usfms1 = NULL; compare_usfm1 = NULL; check_markers_spacing = NULL; characters1 = NULL; characters1_menu = NULL; count_characters = NULL; unwanted_patterns = NULL; check_words = NULL; check_words_menu = NULL; check_capitalization = NULL; check_repetition = NULL; unwanted_words = NULL; word_count_inventory = NULL; check_punctuation = NULL; check_punctuation_menu = NULL; check_matching_pairs = NULL; check_references = NULL; check_references_menu = NULL; check_references_inventory = NULL; check_references_validate = NULL; checks_passages = NULL; checks_passages_menu = NULL; check_nt_quotations_from_the_ot = NULL; synoptic_parallel_passages_from_the_nt = NULL; parallels_from_the_ot = NULL; check_key_terms = NULL; my_checks = NULL; check_usfm = NULL; check_spelling_error_next = NULL; check_spelling_error_previous = NULL; check_spelling_bulk = NULL; if (guifeatures.checks()) { check1 = gtk_menu_item_new_with_mnemonic("Chec_k"); gtk_widget_show(check1); gtk_container_add(GTK_CONTAINER(menubar1), check1); check1_menu = gtk_menu_new(); gtk_menu_item_set_submenu(GTK_MENU_ITEM(check1), check1_menu); chapters_and_verses1 = gtk_image_menu_item_new_with_mnemonic("_Chapters and verses"); gtk_widget_show(chapters_and_verses1); gtk_container_add(GTK_CONTAINER(check1_menu), chapters_and_verses1); image5580 = gtk_image_new_from_stock("gtk-zoom-100", GTK_ICON_SIZE_MENU); gtk_widget_show(image5580); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(chapters_and_verses1), image5580); markers1 = gtk_image_menu_item_new_with_mnemonic("_Markers"); gtk_widget_show(markers1); gtk_container_add(GTK_CONTAINER(check1_menu), markers1); image5578 = gtk_image_new_from_stock("gtk-zoom-100", GTK_ICON_SIZE_MENU); gtk_widget_show(image5578); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(markers1), image5578); markers1_menu = gtk_menu_new(); gtk_menu_item_set_submenu(GTK_MENU_ITEM(markers1), markers1_menu); validate_usfms1 = gtk_image_menu_item_new_with_mnemonic("_Validate"); gtk_widget_show(validate_usfms1); gtk_container_add(GTK_CONTAINER(markers1_menu), validate_usfms1); image5579 = gtk_image_new_from_stock("gtk-ok", GTK_ICON_SIZE_MENU); gtk_widget_show(image5579); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(validate_usfms1), image5579); count_usfms1 = gtk_image_menu_item_new_with_mnemonic("_Count"); gtk_widget_show(count_usfms1); gtk_container_add(GTK_CONTAINER(markers1_menu), count_usfms1); image6239 = gtk_image_new_from_stock("gtk-dialog-info", GTK_ICON_SIZE_MENU); gtk_widget_show(image6239); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(count_usfms1), image6239); compare_usfm1 = gtk_image_menu_item_new_with_mnemonic("C_ompare"); gtk_widget_show(compare_usfm1); gtk_container_add(GTK_CONTAINER(markers1_menu), compare_usfm1); image6748 = gtk_image_new_from_stock("gtk-zoom-fit", GTK_ICON_SIZE_MENU); gtk_widget_show(image6748); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(compare_usfm1), image6748); check_markers_spacing = gtk_image_menu_item_new_with_mnemonic("_Spacing"); gtk_widget_show(check_markers_spacing); gtk_container_add(GTK_CONTAINER(markers1_menu), check_markers_spacing); image17930 = gtk_image_new_from_stock("gtk-media-pause", GTK_ICON_SIZE_MENU); gtk_widget_show(image17930); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(check_markers_spacing), image17930); characters1 = gtk_image_menu_item_new_with_mnemonic("C_haracters"); gtk_widget_show(characters1); gtk_container_add(GTK_CONTAINER(check1_menu), characters1); image6867 = gtk_image_new_from_stock("gtk-zoom-100", GTK_ICON_SIZE_MENU); gtk_widget_show(image6867); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(characters1), image6867); characters1_menu = gtk_menu_new(); gtk_menu_item_set_submenu(GTK_MENU_ITEM(characters1), characters1_menu); count_characters = gtk_image_menu_item_new_with_mnemonic("_Inventory"); gtk_widget_show(count_characters); gtk_container_add(GTK_CONTAINER(characters1_menu), count_characters); image6868 = gtk_image_new_from_stock("gtk-dialog-info", GTK_ICON_SIZE_MENU); gtk_widget_show(image6868); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(count_characters), image6868); unwanted_patterns = gtk_image_menu_item_new_with_mnemonic("_Unwanted patterns"); gtk_widget_show(unwanted_patterns); gtk_container_add(GTK_CONTAINER(characters1_menu), unwanted_patterns); image7494 = gtk_image_new_from_stock("gtk-clear", GTK_ICON_SIZE_MENU); gtk_widget_show(image7494); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(unwanted_patterns), image7494); check_words = gtk_image_menu_item_new_with_mnemonic("_Words"); gtk_widget_show(check_words); gtk_container_add(GTK_CONTAINER(check1_menu), check_words); image7111 = gtk_image_new_from_stock("gtk-zoom-100", GTK_ICON_SIZE_MENU); gtk_widget_show(image7111); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(check_words), image7111); check_words_menu = gtk_menu_new(); gtk_menu_item_set_submenu(GTK_MENU_ITEM(check_words), check_words_menu); check_capitalization = gtk_image_menu_item_new_with_mnemonic("_Capitalization"); gtk_widget_show(check_capitalization); gtk_container_add(GTK_CONTAINER(check_words_menu), check_capitalization); image7112 = gtk_image_new_from_stock("gtk-ok", GTK_ICON_SIZE_MENU); gtk_widget_show(image7112); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(check_capitalization), image7112); check_repetition = gtk_image_menu_item_new_with_mnemonic("_Repetition"); gtk_widget_show(check_repetition); gtk_container_add(GTK_CONTAINER(check_words_menu), check_repetition); image7238 = gtk_image_new_from_stock("gtk-refresh", GTK_ICON_SIZE_MENU); gtk_widget_show(image7238); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(check_repetition), image7238); unwanted_words = gtk_image_menu_item_new_with_mnemonic("_Unwanted"); gtk_widget_show(unwanted_words); gtk_container_add(GTK_CONTAINER(check_words_menu), unwanted_words); image7631 = gtk_image_new_from_stock("gtk-clear", GTK_ICON_SIZE_MENU); gtk_widget_show(image7631); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(unwanted_words), image7631); word_count_inventory = gtk_image_menu_item_new_with_mnemonic("_Inventory"); gtk_widget_show(word_count_inventory); gtk_container_add(GTK_CONTAINER(check_words_menu), word_count_inventory); image13715 = gtk_image_new_from_stock("gtk-dialog-info", GTK_ICON_SIZE_MENU); gtk_widget_show(image13715); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(word_count_inventory), image13715); check_punctuation = gtk_image_menu_item_new_with_mnemonic("_Punctuation"); gtk_widget_show(check_punctuation); gtk_container_add(GTK_CONTAINER(check1_menu), check_punctuation); image7366 = gtk_image_new_from_stock("gtk-zoom-100", GTK_ICON_SIZE_MENU); gtk_widget_show(image7366); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(check_punctuation), image7366); check_punctuation_menu = gtk_menu_new(); gtk_menu_item_set_submenu(GTK_MENU_ITEM(check_punctuation), check_punctuation_menu); check_matching_pairs = gtk_image_menu_item_new_with_mnemonic("_Matching pairs"); gtk_widget_show(check_matching_pairs); gtk_container_add(GTK_CONTAINER(check_punctuation_menu), check_matching_pairs); image7367 = gtk_image_new_from_stock("gtk-refresh", GTK_ICON_SIZE_MENU); gtk_widget_show(image7367); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(check_matching_pairs), image7367); check_references = gtk_image_menu_item_new_with_mnemonic("_References"); gtk_widget_show(check_references); gtk_container_add(GTK_CONTAINER(check1_menu), check_references); image21826 = gtk_image_new_from_stock("gtk-zoom-fit", GTK_ICON_SIZE_MENU); gtk_widget_show(image21826); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(check_references), image21826); check_references_menu = gtk_menu_new(); gtk_menu_item_set_submenu(GTK_MENU_ITEM(check_references), check_references_menu); check_references_inventory = gtk_image_menu_item_new_with_mnemonic("_Inventory"); gtk_widget_show(check_references_inventory); gtk_container_add(GTK_CONTAINER(check_references_menu), check_references_inventory); image21827 = gtk_image_new_from_stock("gtk-info", GTK_ICON_SIZE_MENU); gtk_widget_show(image21827); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(check_references_inventory), image21827); check_references_validate = gtk_image_menu_item_new_with_mnemonic("_Validate"); gtk_widget_show(check_references_validate); gtk_container_add(GTK_CONTAINER(check_references_menu), check_references_validate); image21828 = gtk_image_new_from_stock("gtk-spell-check", GTK_ICON_SIZE_MENU); gtk_widget_show(image21828); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(check_references_validate), image21828); checks_passages = gtk_image_menu_item_new_with_mnemonic("P_assages"); gtk_widget_show(checks_passages); gtk_container_add(GTK_CONTAINER(check1_menu), checks_passages); image24103 = gtk_image_new_from_stock("gtk-justify-fill", GTK_ICON_SIZE_MENU); gtk_widget_show(image24103); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(checks_passages), image24103); checks_passages_menu = gtk_menu_new(); gtk_menu_item_set_submenu(GTK_MENU_ITEM(checks_passages), checks_passages_menu); check_nt_quotations_from_the_ot = gtk_image_menu_item_new_with_mnemonic("_OT quotations in the NT"); gtk_widget_show(check_nt_quotations_from_the_ot); gtk_container_add(GTK_CONTAINER(checks_passages_menu), check_nt_quotations_from_the_ot); image24104 = gtk_image_new_from_stock("gtk-edit", GTK_ICON_SIZE_MENU); gtk_widget_show(image24104); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(check_nt_quotations_from_the_ot), image24104); synoptic_parallel_passages_from_the_nt = gtk_image_menu_item_new_with_mnemonic("_Synoptic parallels in the NT"); gtk_widget_show(synoptic_parallel_passages_from_the_nt); gtk_container_add(GTK_CONTAINER(checks_passages_menu), synoptic_parallel_passages_from_the_nt); image24105 = gtk_image_new_from_stock("gtk-index", GTK_ICON_SIZE_MENU); gtk_widget_show(image24105); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(synoptic_parallel_passages_from_the_nt), image24105); parallels_from_the_ot = gtk_image_menu_item_new_with_mnemonic("_Parallels in the OT"); gtk_widget_show(parallels_from_the_ot); gtk_container_add(GTK_CONTAINER(checks_passages_menu), parallels_from_the_ot); image24106 = gtk_image_new_from_stock("gtk-index", GTK_ICON_SIZE_MENU); gtk_widget_show(image24106); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(parallels_from_the_ot), image24106); check_key_terms = gtk_check_menu_item_new_with_mnemonic("_Key terms"); gtk_widget_show(check_key_terms); gtk_container_add(GTK_CONTAINER(check1_menu), check_key_terms); my_checks = gtk_image_menu_item_new_with_mnemonic("M_y checks"); gtk_widget_show(my_checks); gtk_container_add(GTK_CONTAINER(check1_menu), my_checks); image15438 = gtk_image_new_from_stock("gtk-home", GTK_ICON_SIZE_MENU); gtk_widget_show(image15438); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(my_checks), image15438); check_usfm = gtk_check_menu_item_new_with_mnemonic ("_USFM"); gtk_widget_show (check_usfm); gtk_container_add (GTK_CONTAINER (check1_menu), check_usfm); check_spelling_error = gtk_image_menu_item_new_with_mnemonic ("_Spelling error"); gtk_widget_show (check_spelling_error); gtk_container_add (GTK_CONTAINER (check1_menu), check_spelling_error); image34138 = gtk_image_new_from_stock ("gtk-spell-check", GTK_ICON_SIZE_MENU); gtk_widget_show (image34138); gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (check_spelling_error), image34138); check_spelling_error_menu = gtk_menu_new (); gtk_menu_item_set_submenu (GTK_MENU_ITEM (check_spelling_error), check_spelling_error_menu); check_spelling_error_next = gtk_image_menu_item_new_with_mnemonic ("_Next"); gtk_widget_show (check_spelling_error_next); gtk_container_add (GTK_CONTAINER (check_spelling_error_menu), check_spelling_error_next); image34139 = gtk_image_new_from_stock ("gtk-spell-check", GTK_ICON_SIZE_MENU); gtk_widget_show (image34139); gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (check_spelling_error_next), image34139); check_spelling_error_previous = gtk_image_menu_item_new_with_mnemonic ("_Previous"); gtk_widget_show (check_spelling_error_previous); gtk_container_add (GTK_CONTAINER (check_spelling_error_menu), check_spelling_error_previous); image34140 = gtk_image_new_from_stock ("gtk-spell-check", GTK_ICON_SIZE_MENU); gtk_widget_show (image34140); gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (check_spelling_error_previous), image34140); check_spelling_bulk = gtk_image_menu_item_new_with_mnemonic ("_Bulk"); gtk_widget_show (check_spelling_bulk); gtk_container_add (GTK_CONTAINER (check_spelling_error_menu), check_spelling_bulk); image35887 = gtk_image_new_from_stock ("gtk-spell-check", GTK_ICON_SIZE_MENU); gtk_widget_show (image35887); gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (check_spelling_bulk), image35887); } menutools = gtk_menu_item_new_with_mnemonic("_Tools"); gtk_widget_show(menutools); gtk_container_add(GTK_CONTAINER(menubar1), menutools); menutools_menu = gtk_menu_new(); gtk_menu_item_set_submenu(GTK_MENU_ITEM(menutools), menutools_menu); notes_transfer = NULL; tool_origin_references_in_bible_notes = NULL; tool_project_notes_mass_update1 = NULL; tool_generate_word_lists = NULL; tool_simple_text_corrections = NULL; tool_transfer_project_notes_to_text = NULL; if (guifeatures.tools()) { notes_transfer = gtk_image_menu_item_new_with_mnemonic("_Transfer text to project notes"); gtk_widget_show(notes_transfer); gtk_container_add(GTK_CONTAINER(menutools_menu), notes_transfer); image14659 = gtk_image_new_from_stock("gtk-refresh", GTK_ICON_SIZE_MENU); gtk_widget_show(image14659); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(notes_transfer), image14659); tool_origin_references_in_bible_notes = gtk_image_menu_item_new_with_mnemonic("_Bible notes mass update"); gtk_widget_show(tool_origin_references_in_bible_notes); gtk_container_add(GTK_CONTAINER(menutools_menu), tool_origin_references_in_bible_notes); image16248 = gtk_image_new_from_stock("gtk-find-and-replace", GTK_ICON_SIZE_MENU); gtk_widget_show(image16248); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(tool_origin_references_in_bible_notes), image16248); tool_project_notes_mass_update1 = gtk_image_menu_item_new_with_mnemonic("_Project notes mass update"); gtk_widget_show(tool_project_notes_mass_update1); gtk_container_add(GTK_CONTAINER(menutools_menu), tool_project_notes_mass_update1); image17187 = gtk_image_new_from_stock("gtk-execute", GTK_ICON_SIZE_MENU); gtk_widget_show(image17187); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(tool_project_notes_mass_update1), image17187); tool_generate_word_lists = gtk_image_menu_item_new_with_mnemonic("_Generate word lists"); gtk_widget_show(tool_generate_word_lists); gtk_container_add(GTK_CONTAINER(menutools_menu), tool_generate_word_lists); image20671 = gtk_image_new_from_stock("gtk-justify-fill", GTK_ICON_SIZE_MENU); gtk_widget_show(image20671); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(tool_generate_word_lists), image20671); tool_simple_text_corrections = gtk_image_menu_item_new_with_mnemonic("_Simple text corrections"); gtk_widget_show(tool_simple_text_corrections); gtk_container_add(GTK_CONTAINER(menutools_menu), tool_simple_text_corrections); image21054 = gtk_image_new_from_stock("gtk-preferences", GTK_ICON_SIZE_MENU); gtk_widget_show(image21054); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(tool_simple_text_corrections), image21054); tool_transfer_project_notes_to_text = gtk_image_menu_item_new_with_mnemonic("Tr_ansfer project notes to text"); gtk_widget_show(tool_transfer_project_notes_to_text); gtk_container_add(GTK_CONTAINER(menutools_menu), tool_transfer_project_notes_to_text); image29089 = gtk_image_new_from_stock("gtk-refresh", GTK_ICON_SIZE_MENU); gtk_widget_show(image29089); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(tool_transfer_project_notes_to_text), image29089); } tool_go_to_reference = gtk_image_menu_item_new_with_mnemonic ("G_o to reference (Ctrl-G)"); gtk_widget_show (tool_go_to_reference); gtk_container_add (GTK_CONTAINER (menutools_menu), tool_go_to_reference); image36137 = gtk_image_new_from_stock ("gtk-jump-to", GTK_ICON_SIZE_MENU); gtk_widget_show (image36137); gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (tool_go_to_reference), image36137); tools_maintenance = gtk_image_menu_item_new_with_mnemonic ("_Maintenance"); gtk_widget_show (tools_maintenance); gtk_container_add (GTK_CONTAINER (menutools_menu), tools_maintenance); image36259 = gtk_image_new_from_stock ("gtk-preferences", GTK_ICON_SIZE_MENU); gtk_widget_show (image36259); gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (tools_maintenance), image36259); menuitem_preferences = gtk_menu_item_new_with_mnemonic("P_references"); // At first the Alt-P was the accelerator. On the XO machine, this key is // in use already: // Alt-N goes to the Next Activity and // Alt-P goes to the Previous one. // For that reason the Alt-R is now the accelerator. gtk_widget_show(menuitem_preferences); gtk_container_add(GTK_CONTAINER(menubar1), menuitem_preferences); menuitem_preferences_menu = gtk_menu_new(); gtk_menu_item_set_submenu(GTK_MENU_ITEM(menuitem_preferences), menuitem_preferences_menu); notes_preferences = NULL; printingprefs = NULL; reference_exchange1 = NULL; prefs_books = NULL; preferences_windows_outpost = NULL; preferences_tidy_text = NULL; preferences_remote_repository = NULL; if (guifeatures.preferences()) { notes_preferences = gtk_image_menu_item_new_with_mnemonic("Project _notes"); gtk_widget_show(notes_preferences); gtk_container_add(GTK_CONTAINER(menuitem_preferences_menu), notes_preferences); image2116 = gtk_image_new_from_stock("gtk-dialog-info", GTK_ICON_SIZE_MENU); gtk_widget_show(image2116); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(notes_preferences), image2116); printingprefs = gtk_image_menu_item_new_with_mnemonic("_Printing"); gtk_widget_show(printingprefs); gtk_container_add(GTK_CONTAINER(menuitem_preferences_menu), printingprefs); image3493 = gtk_image_new_from_stock("gtk-print", GTK_ICON_SIZE_MENU); gtk_widget_show(image3493); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(printingprefs), image3493); reference_exchange1 = gtk_image_menu_item_new_with_mnemonic("_Reference exchange"); gtk_widget_show(reference_exchange1); gtk_container_add(GTK_CONTAINER(menuitem_preferences_menu), reference_exchange1); image5972 = gtk_image_new_from_stock("gtk-network", GTK_ICON_SIZE_MENU); gtk_widget_show(image5972); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(reference_exchange1), image5972); prefs_books = gtk_image_menu_item_new_with_mnemonic("_Books"); gtk_widget_show(prefs_books); gtk_container_add(GTK_CONTAINER(menuitem_preferences_menu), prefs_books); image12167 = gtk_image_new_from_stock("gtk-index", GTK_ICON_SIZE_MENU); gtk_widget_show(image12167); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(prefs_books), image12167); preferences_windows_outpost = gtk_image_menu_item_new_with_mnemonic("_Windows Outpost"); gtk_widget_show(preferences_windows_outpost); gtk_container_add(GTK_CONTAINER(menuitem_preferences_menu), preferences_windows_outpost); image14287 = gtk_image_new_from_stock("gtk-network", GTK_ICON_SIZE_MENU); gtk_widget_show(image14287); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(preferences_windows_outpost), image14287); preferences_tidy_text = gtk_image_menu_item_new_with_mnemonic("_Tidy text"); gtk_widget_show(preferences_tidy_text); gtk_container_add(GTK_CONTAINER(menuitem_preferences_menu), preferences_tidy_text); image16359 = gtk_image_new_from_stock("gtk-clear", GTK_ICON_SIZE_MENU); gtk_widget_show(image16359); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(preferences_tidy_text), image16359); preferences_remote_repository = gtk_image_menu_item_new_with_mnemonic ("R_emote repository"); gtk_widget_show (preferences_remote_repository); gtk_container_add (GTK_CONTAINER (menuitem_preferences_menu), preferences_remote_repository); image33654 = gtk_image_new_from_stock ("gtk-connect", GTK_ICON_SIZE_MENU); gtk_widget_show (image33654); gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (preferences_remote_repository), image33654); } preferences_gui = gtk_image_menu_item_new_with_mnemonic("_User interface"); gtk_widget_show(preferences_gui); gtk_container_add(GTK_CONTAINER(menuitem_preferences_menu), preferences_gui); image20936 = gtk_image_new_from_stock("gtk-properties", GTK_ICON_SIZE_MENU); gtk_widget_show(image20936); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(preferences_gui), image20936); preferences_planning = NULL; preferences_password = NULL; preferences_text_replacement = NULL; pdf_viewer1 = NULL; preferences_planning = NULL; preferences_filters = NULL; preferences_compare = NULL; if (guifeatures.preferences()) { preferences_password = gtk_image_menu_item_new_with_mnemonic("P_assword"); gtk_widget_show(preferences_password); gtk_container_add(GTK_CONTAINER(menuitem_preferences_menu), preferences_password); image20937 = gtk_image_new_from_stock("gtk-dialog-authentication", GTK_ICON_SIZE_MENU); gtk_widget_show(image20937); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(preferences_password), image20937); preferences_text_replacement = gtk_image_menu_item_new_with_mnemonic("Te_xt replacement"); gtk_widget_show(preferences_text_replacement); gtk_container_add(GTK_CONTAINER(menuitem_preferences_menu), preferences_text_replacement); image23181 = gtk_image_new_from_stock("gtk-find-and-replace", GTK_ICON_SIZE_MENU); gtk_widget_show(image23181); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(preferences_text_replacement), image23181); pdf_viewer1 = gtk_image_menu_item_new_with_mnemonic("P_DF Viewer"); gtk_widget_show(pdf_viewer1); gtk_container_add(GTK_CONTAINER(menuitem_preferences_menu), pdf_viewer1); image24540 = gtk_image_new_from_stock("gtk-zoom-fit", GTK_ICON_SIZE_MENU); gtk_widget_show(image24540); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(pdf_viewer1), image24540); preferences_planning = gtk_image_menu_item_new_with_mnemonic("P_lanning"); gtk_widget_show(preferences_planning); gtk_container_add(GTK_CONTAINER(menuitem_preferences_menu), preferences_planning); image26888 = gtk_image_new_from_stock("gtk-preferences", GTK_ICON_SIZE_MENU); gtk_widget_show(image26888); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(preferences_planning), image26888); preferences_filters = gtk_image_menu_item_new_with_mnemonic("Filter_s"); gtk_widget_show(preferences_filters); gtk_container_add(GTK_CONTAINER(menuitem_preferences_menu), preferences_filters); image28360 = gtk_image_new_from_stock("gtk-convert", GTK_ICON_SIZE_MENU); gtk_widget_show(image28360); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(preferences_filters), image28360); preferences_compare = gtk_image_menu_item_new_with_mnemonic ("_Compare"); gtk_widget_show (preferences_compare); gtk_container_add (GTK_CONTAINER (menuitem_preferences_menu), preferences_compare); image32676 = gtk_image_new_from_stock ("gtk-zoom-fit", GTK_ICON_SIZE_MENU); gtk_widget_show (image32676); gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (preferences_compare), image32676); } menuitem_help = gtk_menu_item_new_with_mnemonic("_Help"); gtk_widget_show(menuitem_help); gtk_container_add(GTK_CONTAINER(menubar1), menuitem_help); menuitem_help_menu = gtk_menu_new(); gtk_menu_item_set_submenu(GTK_MENU_ITEM(menuitem_help), menuitem_help_menu); help_main = gtk_image_menu_item_new_with_mnemonic("_Contents"); gtk_widget_show(help_main); gtk_container_add(GTK_CONTAINER(menuitem_help_menu), help_main); image17520 = gtk_image_new_from_stock("gtk-help", GTK_ICON_SIZE_MENU); gtk_widget_show(image17520); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(help_main), image17520); system_log1 = gtk_image_menu_item_new_with_mnemonic("_System log"); gtk_widget_show(system_log1); gtk_container_add(GTK_CONTAINER(menuitem_help_menu), system_log1); image4388 = gtk_image_new_from_stock("gtk-dialog-info", GTK_ICON_SIZE_MENU); gtk_widget_show(image4388); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(system_log1), image4388); about1 = gtk_image_menu_item_new_from_stock("gtk-about", NULL); gtk_widget_show(about1); gtk_container_add(GTK_CONTAINER(menuitem_help_menu), about1); toolbar = gtk_toolbar_new(); gtk_widget_show(toolbar); gtk_box_pack_start(GTK_BOX(vbox_main), toolbar, FALSE, FALSE, 0); gtk_toolbar_set_style(GTK_TOOLBAR(toolbar), GTK_TOOLBAR_BOTH_HORIZ); scrolledwindow_layout = gtk_scrolled_window_new (NULL, NULL); gtk_widget_show (scrolledwindow_layout); gtk_box_pack_start (GTK_BOX (vbox_main), scrolledwindow_layout, TRUE, TRUE, 0); gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow_layout), GTK_POLICY_NEVER, GTK_POLICY_NEVER); gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (scrolledwindow_layout), GTK_SHADOW_IN); layout = gtk_layout_new (NULL, NULL); gtk_widget_show (layout); gtk_container_add (GTK_CONTAINER (scrolledwindow_layout), layout); // The real size of the layout will be set once space has been allocated to the parent scrolled window gtk_layout_set_size (GTK_LAYOUT (layout), 10, 10); GtkAdjustment * hadjustment = gtk_layout_get_hadjustment (GTK_LAYOUT (layout)); gtk_adjustment_set_step_increment (hadjustment, 10); GtkAdjustment * vadjustment = gtk_layout_get_vadjustment (GTK_LAYOUT (layout)); gtk_adjustment_set_step_increment (vadjustment, 10); // Menu callbacks. if (new1) g_signal_connect((gpointer) new1, "activate", G_CALLBACK(on_new1_activate), gpointer(this)); if (open1) g_signal_connect((gpointer) open1, "activate", G_CALLBACK(on_open1_activate), gpointer(this)); if (delete1) g_signal_connect((gpointer) delete1, "activate", G_CALLBACK(on_delete1_activate), gpointer(this)); if (properties1) g_signal_connect((gpointer) properties1, "activate", G_CALLBACK(on_properties1_activate), gpointer(this)); if (copy_project_to) g_signal_connect((gpointer) copy_project_to, "activate", G_CALLBACK(on_copy_project_to_activate), gpointer(this)); if (compare_with1) g_signal_connect((gpointer) compare_with1, "activate", G_CALLBACK(on_compare_with1_activate), gpointer(this)); if (project_changes) g_signal_connect((gpointer) project_changes, "activate", G_CALLBACK(on_project_changes_activate), gpointer(this)); if (file_projects_merge) g_signal_connect((gpointer) file_projects_merge, "activate", G_CALLBACK(on_file_projects_merge_activate), gpointer(this)); g_signal_connect ((gpointer) projects_send_receive1, "activate", G_CALLBACK (on_projects_send_receive1_activate), gpointer(this)); if (stylesheet_open) g_signal_connect((gpointer) stylesheet_open, "activate", G_CALLBACK(on_stylesheet_open_activate), gpointer(this)); if (new_note) g_signal_connect((gpointer) new_note, "activate", G_CALLBACK(on_new_note_activate), gpointer(this)); if (delete_note) g_signal_connect((gpointer) delete_note, "activate", G_CALLBACK(on_delete_note_activate), gpointer(this)); if (consultation_notes_send_receive) g_signal_connect((gpointer) consultation_notes_send_receive, "activate", G_CALLBACK(on_consultant_notes_send_receive_activate), gpointer(this)); if (file_resources) g_signal_connect((gpointer) file_resources, "activate", G_CALLBACK(on_file_resources_activate), gpointer(this)); if (file_resources_open) g_signal_connect((gpointer) file_resources_open, "activate", G_CALLBACK(on_file_resources_open_activate), gpointer(this)); if (file_resources_close) g_signal_connect((gpointer) file_resources_close, "activate", G_CALLBACK(on_file_resources_close_activate), gpointer(this)); if (file_resources_new) g_signal_connect((gpointer) file_resources_new, "activate", G_CALLBACK(on_file_resources_new_activate), gpointer(this)); if (file_resources_edit) g_signal_connect((gpointer) file_resources_edit, "activate", G_CALLBACK(on_file_resources_edit_activate), gpointer(this)); if (file_resources_delete) g_signal_connect((gpointer) file_resources_delete, "activate", G_CALLBACK(on_file_resources_delete_activate), gpointer(this)); if (keyterms_delete) g_signal_connect((gpointer) keyterms_delete, "activate", G_CALLBACK(on_keyterms_delete_activate), gpointer(this)); if (print) g_signal_connect((gpointer) print, "activate", G_CALLBACK(on_print_activate), gpointer(this)); g_signal_connect ((gpointer) file_import, "activate", G_CALLBACK (on_file_import_activate), gpointer(this)); g_signal_connect ((gpointer) file_export, "activate", G_CALLBACK (on_file_export_activate), gpointer(this)); g_signal_connect ((gpointer) file_backup, "activate", G_CALLBACK (on_file_backup_activate), gpointer(this)); g_signal_connect ((gpointer) file_restore, "activate", G_CALLBACK (on_file_restore_activate), gpointer(this)); if (close1) g_signal_connect((gpointer) close1, "activate", G_CALLBACK(on_close1_activate), gpointer(this)); if (quit1) g_signal_connect((gpointer) quit1, "activate", G_CALLBACK(on_quit1_activate), gpointer(this)); if (menuitem_edit) g_signal_connect((gpointer) menuitem_edit, "activate", G_CALLBACK(on_edit1_activate), gpointer(this)); if (cut1) g_signal_connect((gpointer) cut1, "activate", G_CALLBACK(on_cut1_activate), gpointer(this)); if (copy1) g_signal_connect((gpointer) copy1, "activate", G_CALLBACK(on_copy1_activate), gpointer(this)); if (copy_with_formatting) g_signal_connect((gpointer) copy_with_formatting, "activate", G_CALLBACK(on_copy_with_formatting_activate), gpointer(this)); if (paste1) g_signal_connect((gpointer) paste1, "activate", G_CALLBACK(on_paste1_activate), gpointer(this)); if (undo1) g_signal_connect((gpointer) undo1, "activate", G_CALLBACK(on_undo1_activate), gpointer(this)); if (redo1) g_signal_connect((gpointer) redo1, "activate", G_CALLBACK(on_redo1_activate), gpointer(this)); if (find1) g_signal_connect((gpointer) find1, "activate", G_CALLBACK(on_findspecial1_activate), gpointer(this)); if (find_and_replace1) g_signal_connect((gpointer) find_and_replace1, "activate", G_CALLBACK(on_find_and_replace1_activate), gpointer(this)); if (find_in_notes1) g_signal_connect((gpointer) find_in_notes1, "activate", G_CALLBACK(on_find_in_notes1_activate), gpointer(this)); if (get_references_from_note) g_signal_connect((gpointer) get_references_from_note, "activate", G_CALLBACK(on_get_references_from_note_activate), gpointer(this)); if (edit_revert) g_signal_connect((gpointer) edit_revert, "activate", G_CALLBACK(on_edit_revert_activate), gpointer(this)); if (edit_bible_note) g_signal_connect((gpointer) edit_bible_note, "activate", G_CALLBACK(on_edit_bible_note_activate), gpointer(this)); if (edit_planning) g_signal_connect((gpointer) edit_planning, "activate", G_CALLBACK(on_edit_planning_activate), gpointer(this)); if (menuitem_view) g_signal_connect((gpointer) menuitem_view, "activate", G_CALLBACK(on_menuitem_view_activate), gpointer(this)); if (view_text_font) g_signal_connect((gpointer) view_text_font, "activate", G_CALLBACK(on_view_text_font_activate), gpointer(this)); if (viewnotes) g_signal_connect((gpointer) viewnotes, "activate", G_CALLBACK(on_viewnotes_activate), gpointer(this)); if (view_usfm_code) g_signal_connect((gpointer) view_usfm_code, "activate", G_CALLBACK(on_view_usfm_code_activate), gpointer(this)); if (view_planning) g_signal_connect((gpointer) view_planning, "activate", G_CALLBACK(on_view_planning_activate), gpointer(this)); if (view_related_verses) g_signal_connect((gpointer) view_related_verses, "activate", G_CALLBACK(on_view_related_verses_activate), gpointer(this)); g_signal_connect ((gpointer) view_references, "activate", G_CALLBACK (on_view_references_activate), gpointer(this)); if (view_outline) g_signal_connect((gpointer) view_outline, "activate", G_CALLBACK(on_view_outline_activate), gpointer(this)); if (insert1) g_signal_connect((gpointer) insert1, "activate", G_CALLBACK(on_insert1_activate), gpointer(this)); if (insert_special_character) g_signal_connect((gpointer) insert_special_character, "activate", G_CALLBACK(on_insert_special_character_activate), gpointer(this)); if (insert_footnote) g_signal_connect((gpointer) insert_footnote, "activate", G_CALLBACK(on_insert_footnote_activate), gpointer(this)); if (insert_xref) g_signal_connect((gpointer) insert_xref, "activate", G_CALLBACK(on_insert_xref_activate), gpointer(this)); if (validate_usfms1) g_signal_connect((gpointer) validate_usfms1, "activate", G_CALLBACK(on_validate_usfms1_activate), gpointer(this)); if (count_usfms1) g_signal_connect((gpointer) count_usfms1, "activate", G_CALLBACK(on_count_usfms1_activate), gpointer(this)); if (compare_usfm1) g_signal_connect((gpointer) compare_usfm1, "activate", G_CALLBACK(on_compare_usfm1_activate), gpointer(this)); if (check_markers_spacing) g_signal_connect((gpointer) check_markers_spacing, "activate", G_CALLBACK(on_check_markers_spacing_activate), gpointer(this)); if (chapters_and_verses1) g_signal_connect((gpointer) chapters_and_verses1, "activate", G_CALLBACK(on_chapters_and_verses1_activate), gpointer(this)); if (count_characters) g_signal_connect((gpointer) count_characters, "activate", G_CALLBACK(on_count_characters_activate), gpointer(this)); if (unwanted_patterns) g_signal_connect((gpointer) unwanted_patterns, "activate", G_CALLBACK(on_unwanted_patterns_activate), gpointer(this)); if (check_capitalization) g_signal_connect((gpointer) check_capitalization, "activate", G_CALLBACK(on_check_capitalization_activate), gpointer(this)); if (check_repetition) g_signal_connect((gpointer) check_repetition, "activate", G_CALLBACK(on_check_repetition_activate), gpointer(this)); if (unwanted_words) g_signal_connect((gpointer) unwanted_words, "activate", G_CALLBACK(on_unwanted_words_activate), gpointer(this)); if (check_matching_pairs) g_signal_connect((gpointer) check_matching_pairs, "activate", G_CALLBACK(on_check_matching_pairs_activate), gpointer(this)); if (word_count_inventory) g_signal_connect((gpointer) word_count_inventory, "activate", G_CALLBACK(on_word_count_inventory_activate), gpointer(this)); if (check_references_inventory) g_signal_connect((gpointer) check_references_inventory, "activate", G_CALLBACK(on_check_references_inventory_activate), gpointer(this)); if (check_references_validate) g_signal_connect((gpointer) check_references_validate, "activate", G_CALLBACK(on_check_references_validate_activate), gpointer(this)); if (check_nt_quotations_from_the_ot) g_signal_connect((gpointer) check_nt_quotations_from_the_ot, "activate", G_CALLBACK(on_check_nt_quotations_from_the_ot_activate), gpointer(this)); if (synoptic_parallel_passages_from_the_nt) g_signal_connect((gpointer) synoptic_parallel_passages_from_the_nt, "activate", G_CALLBACK(on_synoptic_parallel_passages_from_the_nt_activate), gpointer(this)); if (parallels_from_the_ot) g_signal_connect((gpointer) parallels_from_the_ot, "activate", G_CALLBACK(on_parallels_from_the_ot_activate), gpointer(this)); if (check_key_terms) g_signal_connect((gpointer) check_key_terms, "activate", G_CALLBACK(on_check_key_terms_activate), gpointer(this)); if (my_checks) g_signal_connect((gpointer) my_checks, "activate", G_CALLBACK(on_my_checks_activate), gpointer(this)); if (check_usfm) g_signal_connect ((gpointer) check_usfm, "activate", G_CALLBACK (on_check_usfm_activate), gpointer(this)); if (check_spelling_error_next) g_signal_connect ((gpointer) check_spelling_error_next, "activate", G_CALLBACK (on_check_spelling_error_next_activate), gpointer(this)); if (check_spelling_error_previous) g_signal_connect ((gpointer) check_spelling_error_previous, "activate", G_CALLBACK (on_check_spelling_error_previous_activate), gpointer(this)); if (check_spelling_bulk) g_signal_connect ((gpointer) check_spelling_bulk, "activate", G_CALLBACK (on_check_spelling_bulk_activate), gpointer(this)); if (menutools) g_signal_connect((gpointer) menutools, "activate", G_CALLBACK(on_menutools_activate), gpointer(this)); if (notes_transfer) g_signal_connect((gpointer) notes_transfer, "activate", G_CALLBACK(on_notes_transfer_activate), gpointer(this)); if (tool_origin_references_in_bible_notes) g_signal_connect((gpointer) tool_origin_references_in_bible_notes, "activate", G_CALLBACK(on_tool_origin_references_in_bible_notes_activate), gpointer(this)); if (tool_project_notes_mass_update1) g_signal_connect((gpointer) tool_project_notes_mass_update1, "activate", G_CALLBACK(on_tool_project_notes_mass_update1_activate), gpointer(this)); if (tool_generate_word_lists) g_signal_connect((gpointer) tool_generate_word_lists, "activate", G_CALLBACK(on_tool_generate_word_lists_activate), gpointer(this)); if (tool_simple_text_corrections) g_signal_connect((gpointer) tool_simple_text_corrections, "activate", G_CALLBACK(on_tool_simple_text_corrections_activate), gpointer(this)); if (tool_transfer_project_notes_to_text) g_signal_connect((gpointer) tool_transfer_project_notes_to_text, "activate", G_CALLBACK(on_tool_transfer_project_notes_to_text_activate), gpointer(this)); g_signal_connect ((gpointer) tool_go_to_reference, "activate", G_CALLBACK (on_tool_go_to_reference_activate), gpointer (this)); g_signal_connect ((gpointer) tools_maintenance, "activate", G_CALLBACK (on_tools_maintenance_activate), gpointer (this)); if (notes_preferences) g_signal_connect((gpointer) notes_preferences, "activate", G_CALLBACK(on_notes_preferences_activate), gpointer(this)); if (printingprefs) g_signal_connect((gpointer) printingprefs, "activate", G_CALLBACK(on_printingprefs_activate), gpointer(this)); if (reference_exchange1) g_signal_connect((gpointer) reference_exchange1, "activate", G_CALLBACK(on_reference_exchange1_activate), gpointer(this)); if (prefs_books) g_signal_connect((gpointer) prefs_books, "activate", G_CALLBACK(on_prefs_books_activate), gpointer(this)); if (preferences_windows_outpost) g_signal_connect((gpointer) preferences_windows_outpost, "activate", G_CALLBACK(on_preferences_windows_outpost_activate), gpointer(this)); if (preferences_tidy_text) g_signal_connect((gpointer) preferences_tidy_text, "activate", G_CALLBACK(on_preferences_tidy_text_activate), gpointer(this)); if (preferences_remote_repository) g_signal_connect((gpointer) preferences_remote_repository, "activate", G_CALLBACK(on_preferences_remote_repository_activate), gpointer(this)); if (preferences_gui) g_signal_connect((gpointer) preferences_gui, "activate", G_CALLBACK(on_preferences_gui_activate), gpointer(this)); if (preferences_password) g_signal_connect((gpointer) preferences_password, "activate", G_CALLBACK(on_preferences_password_activate), gpointer(this)); if (preferences_text_replacement) g_signal_connect((gpointer) preferences_text_replacement, "activate", G_CALLBACK(on_preferences_text_replacement_activate), gpointer(this)); if (pdf_viewer1) g_signal_connect((gpointer) pdf_viewer1, "activate", G_CALLBACK(on_pdf_viewer1_activate), gpointer(this)); if (preferences_planning) g_signal_connect((gpointer) preferences_planning, "activate", G_CALLBACK(on_preferences_planning_activate), gpointer(this)); if (preferences_filters) g_signal_connect((gpointer) preferences_filters, "activate", G_CALLBACK(on_preferences_filters_activate), gpointer(this)); if (preferences_compare) g_signal_connect((gpointer) preferences_compare, "activate", G_CALLBACK(on_preferences_compare_activate), gpointer(this)); if (help_main) g_signal_connect((gpointer) help_main, "activate", G_CALLBACK(on_help_main_activate), gpointer(this)); if (system_log1) g_signal_connect((gpointer) system_log1, "activate", G_CALLBACK(on_system_log1_activate), gpointer(this)); if (about1) g_signal_connect((gpointer) about1, "activate", G_CALLBACK(on_about1_activate), gpointer(this)); g_signal_connect ((gpointer) scrolledwindow_layout, "size_allocate", G_CALLBACK (on_scrolledwindow_layout_size_allocate), gpointer (this)); navigation.build(toolbar); g_signal_connect((gpointer) navigation.new_reference_signal, "clicked", G_CALLBACK(on_navigation_new_reference_clicked), gpointer(this)); // Start Outpost. windowsoutpost = new WindowsOutpost(true); #ifdef WIN32 if (settings->genconfig.use_outpost_get()) windowsoutpost->Start(); #endif // Store project of last session because it gets affected when the editors build. focused_project_last_session = settings->genconfig.project_get(); // Appearance of text in editor. set_fonts(); // If the windows are attached, apply the dimensions with a delay. // This delay will also take care of object destruction. dimensions->apply(); #ifndef WIN32 // Signal handling. // Block the signal of a pipe error that otherwise would kill bibledit. signal(SIGPIPE, SIG_IGN); // USR1, ignore it. signal(SIGUSR1, SIG_IGN); #endif // Display project notes. notes_redisplay (); // Start bibledit http responder. g_timeout_add (300, GSourceFunc(on_check_httpd_timeout), gpointer(this)); // Show open windows. g_timeout_add (300, GSourceFunc(on_windows_startup_timeout), gpointer(this)); // Start listening to messages directed to us. interprocess_communications_initiate_listener (); } MainWindow::~MainWindow() { // Destroy any pending listener restart. gw_destroy_source (interprocess_communications_initiate_listener_event_id); // Store main window dimensions if windows are attached. ScreenLayoutDimensions dimensions (window_main); dimensions.save(); // Shut down the various windows. shutdown_windows(); // Destroy the Outpost delete windowsoutpost; // Do shutdown actions. shutdown_actions(); // Destroying the window is done by Gtk itself. } /* | | | | | Initialization | | | | | */ void MainWindow::enable_or_disable_widgets(bool enable) { // Set some widgets (in)sensitive depending on whether a project is open. if (properties1) gtk_widget_set_sensitive(properties1, enable); if (notes2) gtk_widget_set_sensitive(notes2, enable); if (menuitem_edit) gtk_widget_set_sensitive(menuitem_edit, enable); if (print) gtk_widget_set_sensitive(print, enable); if (project_changes) gtk_widget_set_sensitive(project_changes, enable); if (menuitem_view) gtk_widget_set_sensitive(menuitem_view, enable); if (compare_with1) gtk_widget_set_sensitive(compare_with1, enable); if (copy_project_to) gtk_widget_set_sensitive(copy_project_to, enable); if (insert1) gtk_widget_set_sensitive(insert1, enable); if (check1) gtk_widget_set_sensitive(check1, enable); if (menutools) gtk_widget_set_sensitive(menutools, enable); if (preferences_remote_repository) gtk_widget_set_sensitive(preferences_remote_repository, enable); if (preferences_planning) gtk_widget_set_sensitive(preferences_planning, enable); if (file_projects_merge) gtk_widget_set_sensitive(file_projects_merge, enable); navigation.sensitive(enable); } /* | | | | | Menu window | | | | | */ void MainWindow::on_open1_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->open(); } void MainWindow::open() // Do the logic for opening a project. { // Get new project, bail out if none. ustring newproject; if (!project_select(newproject)) return; // Open editor. on_file_project_open(newproject, false); } void MainWindow::on_new1_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->newproject(); } void MainWindow::newproject () { ProjectDialog projectdialog(true); if (projectdialog.run() == GTK_RESPONSE_OK) { on_file_project_open(projectdialog.newprojectname, false); // Focus the desired book. navigation.display (Reference (projectdialog.focusbook, 1, "1")); } } void MainWindow::on_properties1_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->editproject(); } void MainWindow::editproject () { save_editors(); // Show project dialog. ProjectDialog projectdialog(false); if (projectdialog.run() == GTK_RESPONSE_OK) { // Get focused project window. WindowEditor *editor_window = last_focused_editor_window(); if (editor_window) { // Reload dictionaries. editor_window->load_dictionaries(); } // As anything could have been changed to the project, reopen it. reload_all_editors (false); // Focus the desired book. navigation.display (Reference (projectdialog.focusbook, 1, "1")); } } void MainWindow::on_delete1_activate (GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->deleteproject (); } void MainWindow::deleteproject () { // Get all projects, leave the current one and the non-editable ones out. vector < ustring > all_projects = projects_get_all(); vector < ustring > projects; for (unsigned int i = 0; i < all_projects.size(); i++) { bool include = true; if (all_projects[i] == settings->genconfig.project_get()) include = false; ProjectConfiguration *projectconfig = settings->projectconfig(all_projects[i]); if (!projectconfig->editable_get()) include = false; if (include) projects.push_back(all_projects[i]); } // User interface. ListviewDialog dialog("Delete project", projects, "", true, NULL); if (dialog.run() == GTK_RESPONSE_OK) { int result; result = gtkw_dialog_question(window_main, "Are you sure you want to delete project " + dialog.focus + "?"); if (result == GTK_RESPONSE_YES) { result = gtkw_dialog_question(window_main, "Are you really sure to delete project " + dialog.focus + ", something worth perhaps years of work?"); } if (result == GTK_RESPONSE_YES) { project_delete(dialog.focus); } } } void MainWindow::on_close1_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->accelerator_close_window(); } void MainWindow::on_quit1_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->initiate_shutdown(); } void MainWindow::on_system_log1_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->viewlog(); } void MainWindow::viewlog() { SystemlogDialog dialog(0); dialog.run(); } void MainWindow::on_help_main_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_help_main(); } void MainWindow::on_help_main() { gtkw_show_uri (html_server_url ("index.html"), false); } void MainWindow::on_about1_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->showabout(); } void MainWindow::showabout() { gtk_show_about_dialog(GTK_WINDOW(window_main), "version", PACKAGE_VERSION, "website", PACKAGE_BUGREPORT, "copyright", "Copyright (©) 2003-2013 Teus Benschop", "license", "This program is free software; you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation; either version 3 of the License, or\n" "(at your option) any later version.\n" "\n" "This program is distributed in the hope that it will be useful,\n" "but WITHOUT ANY WARRANTY; without even the implied warranty of\n" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" "You should have received a copy of the GNU General Public License\n" "along with this program; if not, write to the Free Software\n" "Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.\n", NULL); } void MainWindow::on_undo1_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->menu_accelerator_undo(); } void MainWindow::menu_accelerator_undo() // Called for undo. { for (unsigned int i = 0; i < editor_windows.size(); i++) { if (editor_windows[i]->focused) { editor_windows[i]->undo(); } } if (window_notes) { if (window_notes->focused) { window_notes->undo(); } } } void MainWindow::on_redo1_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->menu_accelerator_redo(); } void MainWindow::menu_accelerator_redo() // Called for redo. { for (unsigned int i = 0; i < editor_windows.size(); i++) { if (editor_windows[i]->focused) { editor_windows[i]->redo(); } } if (window_notes) { if (window_notes->focused) { window_notes->redo(); } } } void MainWindow::on_edit1_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->menu_edit(); } void MainWindow::menu_edit() { // Set the sensitivity of some items in the Edit menu. WindowEditor *editor_window = last_focused_editor_window(); bool undo = true; bool redo = true; if (editor_window) { undo = editor_window->can_undo(); redo = editor_window->can_redo(); } gtk_widget_set_sensitive(undo1, undo); gtk_widget_set_sensitive(redo1, redo); // Sensitivity of the clipboard operations. // The "owner-change" signal of the clipboard is not a reliable indicator for pastable content. bool cut = true; bool copy = true; bool paste = true; gtk_widget_set_sensitive(cut1, cut); gtk_widget_set_sensitive(copy1, copy); gtk_widget_set_sensitive(copy_with_formatting, copy); gtk_widget_set_sensitive(paste1, paste); // Enable/disable based on whether we're editing a note. bool enable = (window_notes && window_notes->note_being_edited()); // References can only be taken from a note when it is opened. if (get_references_from_note) gtk_widget_set_sensitive(get_references_from_note, enable); // The Bible notes can only be edited when the cursor is in a note text. enable = false; if (editor_window) if (editor_window->last_focused_type() == etvtNote) enable = true; gtk_widget_set_sensitive(edit_bible_note, enable); } void MainWindow::on_find_and_replace1_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->menu_replace(); } void MainWindow::menu_replace() { // Before finding, save the current file. save_editors(); // Display references. show_references_window(); // Start find/replace dialog. vector < Reference > results; { ReplaceDialog replacedialog(0); if (replacedialog.run() == GTK_RESPONSE_OK) { results.assign(replacedialog.results.begin(), replacedialog.results.end()); if (window_references) { window_references->set(replacedialog.results, settings->genconfig.project_get(), NULL); } } else { return; } } // Replace text. if (results.size()) { ReplacingDialog replacedialog(results); replacedialog.run(); reload_all_editors(false); } else { gtkw_dialog_info(window_main, "There was nothing to replace"); } } void MainWindow::on_findspecial1_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->menu_findspecial(); } void MainWindow::menu_findspecial() { // Before finding, save the current file. save_editors(); // Display the references window. show_references_window(); // Start dialog. { SearchSpecialDialog dialog(0); if (dialog.run() != GTK_RESPONSE_OK) return; } // Carry out the search. search_string(window_references); } void MainWindow::on_insert1_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_menu_insert(); } void MainWindow::on_menu_insert() // Sets the labels of the underlying menu items right. { // Get the focused editor window. WindowEditor *editor_window = last_focused_editor_window(); // Inserting special character. gtk_widget_set_sensitive(insert_special_character, (editor_window && (editor_window->focused))); // Inserting footnote and xref. gtk_widget_set_sensitive(insert_footnote, (editor_window && (editor_window->focused))); gtk_widget_set_sensitive(insert_xref, (editor_window && (editor_window->focused))); } void MainWindow::on_menuitem_view_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_menuitem_view(); } void MainWindow::on_menuitem_view() { } void MainWindow::on_notes_preferences_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_notes_preferences(); } void MainWindow::on_notes_preferences() { NotesDialog dialog(0); dialog.run(); } void MainWindow::on_copy_project_to_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_copy_project_to(); } void MainWindow::on_copy_project_to() // Copy project to another one. { save_editors(); EntryDialog dialog("New project name", "Enter a name of a non-existent project\nwhere this project will be copied to.", settings->genconfig.project_get()); if (dialog.run() == GTK_RESPONSE_OK) { // Does the project exist? if ((project_exists(dialog.entered_value)) || (dialog.entered_value == "data")) { // Yes, give message that project exists. ustring error = "Project "; error.append(dialog.entered_value); error.append(" already exists."); error.append("\nIf you still intend to copy the project,"); error.append("\ndelete project "); error.append(dialog.entered_value); error.append(" first."); gtkw_dialog_error(window_main, error); } else { // Ok, go ahead with the copy. project_copy(settings->genconfig.project_get(), dialog.entered_value); // Give message when through. ustring message; message.append("The project has been copied to a new project\n"); message.append("named "); message.append(dialog.entered_value); message.append("."); gtkw_dialog_info(window_main, message); } } } void MainWindow::on_compare_with1_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_compare_with(); } void MainWindow::on_compare_with() // Compare the current project with another one. { save_editors(); show_references_window(); CompareDialog dialog(window_references); dialog.run(); } void MainWindow::on_printingprefs_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_printing_preferences(); } void MainWindow::on_printing_preferences() { PrintPreferencesDialog dialog(0); dialog.run(); } void MainWindow::on_prefs_books_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_prefs_books(); } void MainWindow::on_prefs_books() { BookDialog dialog(settings->genconfig.project_get()); if (dialog.run() == GTK_RESPONSE_OK) { reload_all_editors(false); } } void MainWindow::on_preferences_tidy_text_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_preferences_tidy_text(); } void MainWindow::on_preferences_tidy_text() { TidyDialog dialog(0); dialog.run(); } /* | | | | | Navigation | | | | | */ void MainWindow::on_navigation_new_reference_clicked(GtkButton * button, gpointer user_data) { ((MainWindow *) user_data)->on_navigation_new_reference(); } void MainWindow::on_navigation_new_reference() // This function is called when the navigation object goes to another reference. { // Store the new reference in the configuration. settings->genconfig.book_set(navigation.reference.book); settings->genconfig.chapter_set(convert_to_string(navigation.reference.chapter)); settings->genconfig.verse_set(navigation.reference.verse); // Let the editor(s) show the reference. for (unsigned int i = 0; i < editor_windows.size(); i++) { editor_windows[i]->go_to(navigation.reference); } // Get last focused editor. WindowEditor *last_focused_editor = last_focused_editor_window(); // Send the focus to the interprocess communications focus system. on_tool_send_reference (); // Send to resources. for (unsigned int i = 0; i < resource_windows.size(); i++) { resource_windows[i]->go_to(navigation.reference); } // Update the notes view. notes_redisplay(); // Create a reference for the related windows. // These may not take verses like 10a or 10-12, but only numbers like 10 or 12. Reference goto_reference(navigation.reference.book, navigation.reference.chapter, number_in_string(navigation.reference.verse)); // Send it to the outline window. if (window_outline) { if (last_focused_editor) { window_outline->go_to(last_focused_editor->project(), goto_reference); } } // Optional displaying related verses. if (window_show_related_verses) { window_show_related_verses->go_to(settings->genconfig.project_get(), navigation.reference); } } void MainWindow::goto_next_verse() { navigation.nextverse(); } void MainWindow::goto_previous_verse() { navigation.previousverse(); } void MainWindow::goto_next_chapter() { navigation.nextchapter(); } void MainWindow::goto_previous_chapter() { navigation.previouschapter(); } void MainWindow::goto_next_book() { navigation.nextbook(); } void MainWindow::goto_previous_book() { navigation.previousbook(); } void MainWindow::goto_reference_interactive() // Opens a dialog to ask the user to which reference to go. { bool go_back = false; bool go_forward = false; WindowEditor *editor_window = last_focused_editor_window(); if (editor_window) { GotoReferenceDialog dialog(editor_window->current_reference().book, editor_window->current_reference().chapter, editor_window->current_reference().verse); if (dialog.run() == GTK_RESPONSE_OK) { if (dialog.newreference) { // If the dialog closes, then another window will receive focus again. // This focusing causes the navigation to take the values as they are in the configuration. // This would frustrate the desire of the user to go somewhere else. // To fix the problem, the settings are updated here. settings->genconfig.book_set(dialog.reference.book); settings->genconfig.chapter_set(convert_to_string(dialog.reference.chapter)); settings->genconfig.verse_set(dialog.reference.verse); navigation.display(dialog.reference); } go_back = dialog.go_back; go_forward = dialog.go_forward; } } if (go_back) { navigation.on_list_back (); } if (go_forward) { navigation.on_list_forward (); } } void MainWindow::on_new_verse_signalled(GtkButton * button, gpointer user_data) { ((MainWindow *) user_data)->on_editor_another_verse(); } void MainWindow::on_editor_another_verse() // This one is called when an editor signals that the cursor is now on another verse. { WindowEditor *last_focused_editor = last_focused_editor_window(); if (last_focused_editor) { Reference reference(navigation.reference.book, navigation.reference.chapter, last_focused_editor->current_verse_number()); navigation.display(reference); } } void MainWindow::on_text_area_activate() { WindowEditor *editor_window = last_focused_editor_window(); if (editor_window == NULL) { if (!editor_windows.empty()) { editor_window = editor_windows[0]; } } if (editor_window) { editor_window->focus_set(); } } void MainWindow::on_tools_area_activate() { if (window_show_related_verses) { if (focused_tool_button == window_show_related_verses->focus_in_signal_button) { window_show_related_verses->focus_set (); } } if (window_merge) { if (focused_tool_button == window_merge->focus_in_signal_button) { window_merge->focus_set (); } } for (unsigned int i = 0; i < resource_windows.size(); i++) { if (focused_tool_button == resource_windows[i]->focus_in_signal_button) { resource_windows[i]->focus_set (); } } if (window_outline) { if (focused_tool_button == window_outline->focus_in_signal_button) { window_outline->focus_set (); } } if (window_check_keyterms) { if (focused_tool_button == window_check_keyterms->focus_in_signal_button) { window_check_keyterms->focus_set (); } } if (window_styles) { if (focused_tool_button == window_styles->focus_in_signal_button) { window_styles->focus_set (); } } // Skip project notes window. if (window_references) { if (focused_tool_button == window_references->focus_in_signal_button) { window_references->focus_set (); } } // Skip editor windows. if (window_check_usfm) { if (focused_tool_button == window_check_usfm->focus_in_signal_button) { window_check_usfm->focus_set (); } } } void MainWindow::on_notes_area_activate() { view_project_notes(); notes_redisplay(); } void MainWindow::on_tool_go_to_reference_activate(GtkMenuItem *menuitem, gpointer user_data) { ((MainWindow *) user_data)->goto_reference_interactive(); } /* | | | | | Clipboard | | | | | */ void MainWindow::on_cut1_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_cut(); } void MainWindow::on_cut() { for (unsigned int i = 0; i < editor_windows.size(); i++) { if (editor_windows[i]->focused) { editor_windows[i]->cut(); } } if (window_notes) { if (window_notes->focused) { window_notes->cut(); } } } void MainWindow::on_copy1_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_copy(); } void MainWindow::on_copy() { for (unsigned int i = 0; i < editor_windows.size(); i++) { if (editor_windows[i]->focused) { editor_windows[i]->copy(); } } if (window_check_keyterms) { if (window_check_keyterms->focused) { window_check_keyterms->copy_clipboard(); } } if (window_notes) { if (window_notes->focused) { window_notes->copy(); } } if (window_references) { if (window_references->focused) { window_references->copy(); } } } void MainWindow::on_copy_with_formatting_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_copy_with_formatting(); } void MainWindow::on_copy_with_formatting() { // Using the accelerator in the GtkTextView give weird results. The accelerator has been removed. WindowEditor *editor_window = last_focused_editor_window(); if (editor_window) { if (editor_window->focused) { // In case of the text editor, the USFM code is copied, not the plain text. GtkClipboard *clipboard = gtk_clipboard_get(GDK_SELECTION_CLIPBOARD); gtk_clipboard_set_text(clipboard, editor_window->text_get_selection().c_str(), -1); } } } void MainWindow::on_paste1_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_paste(); } void MainWindow::on_paste() { // Bail out if no text is available. GtkClipboard *clipboard = gtk_clipboard_get(GDK_SELECTION_CLIPBOARD); if (!gtk_clipboard_wait_is_text_available(clipboard)) return; // Do the paste operation. for (unsigned int i = 0; i < editor_windows.size(); i++) { if (editor_windows[i]->focused) { editor_windows[i]->paste(); } } if (window_notes) { if (window_notes->focused) { window_notes->paste(); } } } /* | | | | | References | | | | | */ void MainWindow::on_view_references_activate (GtkMenuItem *menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_view_references(); } void MainWindow::on_view_references () { on_window_references_delete_button(); if (gtk_check_menu_item_get_active(GTK_CHECK_MENU_ITEM(view_references))) { window_references = new WindowReferences(layout, accelerator_group, windows_startup_pointer != G_MAXINT, references_management_enabled); g_signal_connect((gpointer) window_references->delete_signal_button, "clicked", G_CALLBACK(on_window_references_delete_button_clicked), gpointer(this)); g_signal_connect((gpointer) window_references->focus_in_signal_button, "clicked", G_CALLBACK(on_window_focus_button_clicked), gpointer(this)); g_signal_connect((gpointer) window_references->signal_button, "clicked", G_CALLBACK(on_window_references_signal_button_clicked), gpointer(this)); } } void MainWindow::show_references_window() { gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(view_references), true); window_references->focus_set (); } void MainWindow::on_window_references_delete_button_clicked(GtkButton * button, gpointer user_data) { ((MainWindow *) user_data)->on_window_references_delete_button(); } void MainWindow::on_window_references_delete_button() { if (window_references) { delete window_references; window_references = NULL; gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(view_references), false); } } void MainWindow::on_window_references_signal_button_clicked(GtkButton * button, gpointer user_data) // This routine is called when the reference window fires a signal that something has happened. { ((MainWindow *) user_data)->on_window_references_signal_button(); } void MainWindow::on_window_references_signal_button() // Handler for when the user clicked a reference in the references window so as to go to that reference. { // Get the editor window. If none, bail out. WindowEditor *editor_window = last_focused_editor_window(); if (!editor_window) return; // Bail out if there's no references window. if (!window_references) return; // Focus the editor. editor_window->focus_set (); // Jump to the reference. navigation.display(window_references->reference); editor_window->go_to_new_reference_highlight_set(); } void MainWindow::on_next_reference() // Go to the next reference in the references window. { show_references_window(); window_references->goto_next(); } void MainWindow::on_previous_reference() // Go to the previous reference in the references window. { show_references_window(); window_references->goto_previous(); } void MainWindow::on_show_quick_references_signal_button_clicked(GtkButton * button, gpointer user_data) { ((MainWindow *) user_data)->on_show_quick_references_signal_button(button); } void MainWindow::on_show_quick_references_signal_button(GtkButton * button) { if (!window_references) return; WindowEditor *editor_window = last_focused_editor_window(); if (!editor_window) return; // Ask whether the references should be made available. if (yes_no_always_dialog ("This note has references.\nWould you like to load these in the references list?", ynadtLoadReferences, false, true)) { vector references = editor_window->quick_references(); window_references->set(references, editor_window->project(), NULL); } } /* | | | | | Bibledit Windows Outpost BibleTime | | | | | */ void MainWindow::on_reference_exchange1_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_reference_exchange(); } void MainWindow::on_reference_exchange() { ReferenceExchangeDialog dialog(0); dialog.run(); } void MainWindow::on_send_word_to_toolbox_signalled(GtkButton * button, gpointer user_data) { ((MainWindow *) user_data)->send_word_to_toolbox(); } void MainWindow::send_word_to_toolbox() { WindowEditor *editor_window = last_focused_editor_window(); if (!editor_window) return; ustring word = editor_window->word_double_clicked_text(); if (word.empty()) return; gw_message("Sending to Toolbox: " + word); windowsoutpost->SantaFeFocusWordSet(word); } void MainWindow::on_preferences_windows_outpost_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_preferences_windows_outpost(); } void MainWindow::on_preferences_windows_outpost() { // Dialog for making settings. OutpostDialog dialog(0); dialog.run(); if (dialog.changed) { // Changes were made: destroy and recreate the object. delete windowsoutpost; windowsoutpost = new WindowsOutpost(true); // If required, start the Outpost. if (settings->genconfig.use_outpost_get()) { // Delay a bit so wine debugger doesn't start. g_usleep(1000000); windowsoutpost->Start(); } } } void MainWindow::on_tool_send_reference () { // Send the focus to Bibledit-Web. ustring payload = convert_to_string (navigation.reference.book); payload.append ("."); payload.append (convert_to_string (navigation.reference.chapter)); payload.append ("."); payload.append (navigation.reference.verse); ustring url = settings->genconfig.bibledit_web_url_get(); ustring user = settings->genconfig.bibledit_web_user_get(); url.append ("/ipc/setmessage.php?user=" + user + "&subject=focus&message="); url.append (payload); urltransport->send_message (url); } /* | | | | | Project notes | | | | | */ void MainWindow::view_project_notes() { if (!project_notes_enabled) return; if (window_notes) { // If the window is there, focus it for the user. window_notes->focus_set(); } else { // New notes window. window_notes = new WindowNotes(layout, accelerator_group, windows_startup_pointer != G_MAXINT); g_signal_connect((gpointer) window_notes->delete_signal_button, "clicked", G_CALLBACK(on_window_notes_delete_button_clicked), gpointer(this)); g_signal_connect((gpointer) window_notes->focus_in_signal_button, "clicked", G_CALLBACK(on_window_focus_button_clicked), gpointer(this)); g_signal_connect((gpointer) window_notes->references_available_signal_button, "clicked", G_CALLBACK(on_window_notes_references_available_button_clicked), gpointer(this)); // The window should focus, but it doesn't, hence focus it here. gtk_button_clicked(GTK_BUTTON(window_notes->focus_in_signal_button)); } } void MainWindow::on_window_notes_delete_button_clicked(GtkButton * button, gpointer user_data) { ((MainWindow *) user_data)->on_window_notes_delete_button(); } void MainWindow::on_window_notes_delete_button() { if (window_notes) { delete window_notes; window_notes = NULL; } } void MainWindow::on_new_note_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_new_note(); } void MainWindow::on_new_note() { // Display notes. view_project_notes(); // Create new note. if (window_notes) window_notes->new_note(); } void MainWindow::on_delete_note_activate(GtkMenuItem * menuitem, gpointer user_data) { gtkw_dialog_info(((MainWindow *) user_data)->window_main, "A note can be deleted by clicking on the [delete] link in the notes view"); } void MainWindow::on_consultant_notes_send_receive_activate(GtkMenuItem *menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_consultant_notes_send_receive(); } void MainWindow::on_consultant_notes_send_receive () { if (settings->genconfig.consultation_notes_git_use_remote_repository_get()) { vcs->schedule(notes_shared_storage_folder ()); maintenance_register_git_repository (notes_shared_storage_folder ()); } } void MainWindow::on_viewnotes_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_view_notes(); } void MainWindow::on_view_notes() { ShowNotesDialog dialog(0); if (dialog.run() == GTK_RESPONSE_OK) { view_project_notes(); notes_redisplay(); } } void MainWindow::notes_redisplay() { if (window_notes) { window_notes->redisplay(); } } void MainWindow::on_find_in_notes1_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->find_in_notes(); } void MainWindow::find_in_notes() { FindNoteDialog findnotedialog(0); if (findnotedialog.run() == GTK_RESPONSE_OK) { view_project_notes(); if (window_notes) { window_notes->display(findnotedialog.ids); } } } void MainWindow::on_import_notes() { ImportNotesDialog dialog(0); if (dialog.run() == GTK_RESPONSE_APPLY) { view_project_notes(); notes_redisplay(); } } void MainWindow::on_get_references_from_note_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_get_references_from_note(); } void MainWindow::on_get_references_from_note() // This one is called through the Edit menu. { // Clear the searchwords. settings->session.highlights.clear(); // Get all references from the editor. vector references; vector dummy; if (window_notes) window_notes->get_references_from_note(references, dummy); // Sort the references so they appear nicely in the editor. sort_references(references); // Load the references in the window show_references_window(); window_references->set (references, settings->genconfig.project_get(), NULL); } void MainWindow::on_window_notes_references_available_button_clicked(GtkButton * button, gpointer user_data) { ((MainWindow *) user_data)->on_window_notes_references_available_button(); } void MainWindow::on_window_notes_references_available_button() { show_references_window(); if (window_notes) { vector references = window_notes->available_references; sort_references(references); window_references->set (references, settings->genconfig.project_get(), NULL); } } /* | | | | | Export | | | | | */ void MainWindow::on_file_export_activate (GtkMenuItem *menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_file_export(); } void MainWindow::on_file_export () { save_editors(); export_assistant = new ExportAssistant (window_references, window_styles, window_check_keyterms); g_signal_connect ((gpointer) export_assistant->signal_button, "clicked", G_CALLBACK (on_assistant_ready_signal), gpointer (this)); } /* | | | | | Checks | | | | | */ void MainWindow::on_validate_usfms1_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_menu_check_markers_validate(); } void MainWindow::on_menu_check_markers_validate() { save_editors(); show_references_window(); scripture_checks_validate_usfms(window_references, NULL); } void MainWindow::on_count_usfms1_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_menu_check_markers_count(); } void MainWindow::on_menu_check_markers_count() { save_editors(); scripture_checks_count_usfms(true); } void MainWindow::on_compare_usfm1_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_menu_check_markers_compare(); } void MainWindow::on_menu_check_markers_compare() { save_editors(); show_references_window(); scripture_checks_compare_usfms(window_references, NULL); } void MainWindow::on_chapters_and_verses1_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_menu_check_chapters_and_verses(); } void MainWindow::on_menu_check_chapters_and_verses() { save_editors(); show_references_window(); scripture_checks_chapters_verses(window_references, NULL); } void MainWindow::on_count_characters_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_count_characters(); } void MainWindow::on_count_characters() { save_editors(); scripture_checks_count_characters(true); } void MainWindow::on_unwanted_patterns_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_unwanted_patterns(); } void MainWindow::on_unwanted_patterns() { save_editors(); show_references_window(); scripture_checks_unwanted_patterns(window_references, NULL); } void MainWindow::on_check_capitalization_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_check_capitalization(); } void MainWindow::on_check_capitalization() { save_editors(); show_references_window(); scripture_checks_capitalization(window_references, NULL); } void MainWindow::on_check_repetition_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_check_repetition(); } void MainWindow::on_check_repetition() { save_editors(); show_references_window(); scripture_checks_repetition(window_references, NULL); } void MainWindow::on_check_matching_pairs_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_check_matching_pairs(); } void MainWindow::on_check_matching_pairs() { save_editors(); show_references_window(); scripture_checks_matching_pairs(window_references, NULL); } void MainWindow::on_unwanted_words_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_unwanted_words(); } void MainWindow::on_unwanted_words() { save_editors(); show_references_window(); scripture_checks_unwanted_words(window_references, NULL); } void MainWindow::on_word_count_inventory_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_word_count_inventory(); } void MainWindow::on_word_count_inventory() { save_editors(); scripture_checks_word_inventory(true); } bool MainWindow::on_check_httpd_timeout(gpointer data) { ((MainWindow *) data)->on_check_httpd(); return true; } void MainWindow::on_check_httpd() { // Does the httpd have a request for us? if (!httpd.search_whole_word.empty()) { // Bibledit presents itself and any detached editors. gtk_window_present(GTK_WINDOW(window_main)); // Bibledit searches for the word. settings->session.searchword = httpd.search_whole_word; httpd.search_whole_word.clear(); settings->session.search_case_sensitive = true; settings->session.search_current_book = false; settings->session.search_current_chapter = false; settings->session.search_globbing = false; settings->session.search_start_word_match = true; settings->session.search_end_word_match = true; settings->session.search_page = 1; settings->session.searchresultstype = sstLoad; settings->session.highlights.clear(); SessionHighlights sessionhighlights(settings->session.searchword, settings->session.search_case_sensitive, settings->session.search_globbing, settings->session.search_start_word_match, settings->session.search_end_word_match, atRaw, false, false, false, false, false, false, false, false); settings->session.highlights.push_back(sessionhighlights); show_references_window(); search_string(window_references); } // Did the browser request a url too difficult for it to handle? if (!httpd.difficult_url.empty()) { htmlbrowser(httpd.difficult_url, true, true); httpd.difficult_url.clear(); } } void MainWindow::on_my_checks_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_my_checks(); } void MainWindow::on_my_checks() { save_editors(); show_references_window(); MyChecksDialog dialog(window_references); dialog.run(); } void MainWindow::on_check_markers_spacing_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_check_markers_spacing(); } void MainWindow::on_check_markers_spacing() { save_editors(); show_references_window(); scripture_checks_usfm_spacing(window_references, NULL); } void MainWindow::on_check_references_inventory_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_check_references_inventory(); } void MainWindow::on_check_references_inventory() { save_editors(); scripture_checks_references_inventory(true); } void MainWindow::on_check_references_validate_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_check_references_validate(); } void MainWindow::on_check_references_validate() { save_editors(); show_references_window(); scripture_checks_validate_references(window_references, NULL); } void MainWindow::on_check_nt_quotations_from_the_ot_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_check_nt_quotations_from_the_ot(); } void MainWindow::on_check_nt_quotations_from_the_ot() { save_editors(); show_references_window(); scripture_checks_nt_quotations_from_ot(window_references); } void MainWindow::on_synoptic_parallel_passages_from_the_nt_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_synoptic_parallel_passages_from_the_nt(); } void MainWindow::on_synoptic_parallel_passages_from_the_nt() { save_editors(); show_references_window(); scripture_checks_synoptic_parallels_from_nt(window_references); } void MainWindow::on_parallels_from_the_ot_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_parallels_from_the_ot(); } void MainWindow::on_parallels_from_the_ot() { save_editors(); show_references_window(); scripture_checks_parallels_from_ot(window_references); } void MainWindow::on_check_spelling_error_next_activate (GtkMenuItem *menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_check_spelling_error(true, false); } void MainWindow::on_check_spelling_error_previous_activate (GtkMenuItem *menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_check_spelling_error(false, false); } void MainWindow::on_check_spelling_error(bool next, bool extremity) // Moves the cursor to another spelling mistake. // next: if true goes to next error, and if false goes to the previous one. // extremity: start checking at the extremity of the chapter that is open. { // Get the editor window, if not, bail out. WindowEditor *editor_window = last_focused_editor_window(); if (!editor_window) return; // If the project has spelling switched off, bail out. ustring project = editor_window->project(); ProjectConfiguration * projectconfig = settings->projectconfig (project); if (!projectconfig->spelling_check_get()) { gtkw_dialog_info (window_main, "To make this work, enable spelling checking in the project"); return; } // Go to the next (or previous) spelling error. If it's there, bail out. if (editor_window->move_cursor_to_spelling_error (next, extremity)) return; // No next (or previous) error in the current chapter. Ask whether the user wishes to go to other chapter. ustring msg = "There are no more spelling errors in this chapter" "\nWould you like to go to the "; if (next) msg.append ("next"); else msg.append ("previous"); msg.append (" chapter or chapters?"); if (gtkw_dialog_question (NULL, msg) != GTK_RESPONSE_YES) return; if (next) { navigation.nextchapter(); check_spelling_at_start = true; } else { navigation.previouschapter(); check_spelling_at_end = true; } } void MainWindow::on_editor_spelling_checked_button_clicked(GtkButton *button, gpointer user_data) { ((MainWindow *) user_data)->on_editor_spelling_checked_button(); } void MainWindow::on_editor_spelling_checked_button() // This one is called when the spelling of the document has been checked. { // Handle cases that we're going to another spelling error. if (check_spelling_at_start) { check_spelling_at_start = false; on_check_spelling_error(true, true); } if (check_spelling_at_end) { check_spelling_at_end = false; on_check_spelling_error(false, true); } } void MainWindow::on_check_spelling_bulk_activate(GtkMenuItem *menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_check_spelling_bulk(); } void MainWindow::on_check_spelling_bulk() { WindowEditor *editor_window = last_focused_editor_window(); if (!editor_window) { gtkw_dialog_info (NULL, "There is nothing to be checked"); return; } BulkSpellingDialog dialog (editor_window->spelling_get_misspelled()); if (dialog.run () == GTK_RESPONSE_OK) { editor_window->spelling_approve (dialog.approved); } } /* | | | | | Styles | | | | | */ void MainWindow::on_stylesheet_open_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_stylesheet_open(); } void MainWindow::on_stylesheet_open() { display_window_styles(); } void MainWindow::on_goto_styles_area() { // Create or active the styles window. display_window_styles(); // Focus the window to enable the user to start inserting the style using the keyboard. if (window_styles) { window_styles->focus_set(); } } void MainWindow::display_window_styles() { // Display the styles if needed. if (!window_styles) { // The visibility of widgets depends on whether a stylesheet shows. gtk_widget_hide(stylesheet_open); gtk_widget_show(stylesheets_expand_all); gtk_widget_show(stylesheets_collapse_all); gtk_widget_show(style_insert); gtk_widget_show(stylesheet_edit_mode); gtk_widget_show(style_new); gtk_widget_show(style_properties); gtk_widget_show(style_delete); gtk_widget_show(menu_stylesheet); // Open the window. window_styles = new WindowStyles(layout, accelerator_group, windows_startup_pointer != G_MAXINT, style, style_menu, stylesheets_expand_all, stylesheets_collapse_all, style_insert, stylesheet_edit_mode, style_new, style_properties, style_delete, stylesheet_switch, stylesheets_new, stylesheets_delete, stylesheets_rename); g_signal_connect((gpointer) window_styles->delete_signal_button, "clicked", G_CALLBACK(on_window_styles_delete_button_clicked), gpointer(this)); g_signal_connect((gpointer) window_styles->focus_in_signal_button, "clicked", G_CALLBACK(on_window_focus_button_clicked), gpointer(this)); g_signal_connect((gpointer) window_styles->apply_signal, "clicked", G_CALLBACK(on_style_button_apply_clicked), gpointer(this)); g_signal_connect((gpointer) window_styles->open_signal, "clicked", G_CALLBACK(on_style_button_open_clicked), gpointer(this)); g_signal_connect((gpointer) window_styles->edited_signal, "clicked", G_CALLBACK(on_style_edited), gpointer(this)); stylesheet_open_named(stylesheet_get_actual()); } } void MainWindow::on_window_styles_delete_button_clicked(GtkButton * button, gpointer user_data) { ((MainWindow *) user_data)->on_window_styles_delete_button(); } void MainWindow::on_window_styles_delete_button() { if (window_styles) { delete window_styles; window_styles = NULL; } gtk_widget_show(stylesheet_open); gtk_widget_hide(stylesheets_expand_all); gtk_widget_hide(stylesheets_collapse_all); gtk_widget_hide(style_insert); gtk_widget_hide(stylesheet_edit_mode); gtk_widget_hide(style_new); gtk_widget_hide(style_properties); gtk_widget_hide(style_delete); gtk_widget_hide(menu_stylesheet); } void MainWindow::stylesheet_open_named(const ustring & stylesheet) { if (window_styles) { window_styles->load(stylesheet); } } void MainWindow::on_style_button_open_clicked(GtkButton * button, gpointer user_data) // This is activated by the GuiStyles object if another stylesheet should be opened. { ((MainWindow *) user_data)->on_style_button_open(); } void MainWindow::on_style_button_open() { if (window_styles) { // Save the name of the stylesheet. settings->genconfig.stylesheet_set(window_styles->get_sheet()); // Actually open it. stylesheet_open_named(window_styles->get_sheet()); } } void MainWindow::on_style_button_apply_clicked(GtkButton * button, gpointer user_data) { ((MainWindow *) user_data)->on_style_apply(); } void MainWindow::on_style_apply (ustring marker) { // Variable 'marker' may be empty, in which case it is called from the Styles window. // Get the last focused Editor. If none, bail out. WindowEditor *editor_window = last_focused_editor_window(); if (!editor_window) return; // Focus the editor. editor_window->focus_set (); // Bail out if the editor is not editable. if (!editor_window->editable()) return; // Bail out if there's no styles window. if (marker == "") if (!window_styles) return; // Get the focused style(s). ustring selected_style; if (marker == "") selected_style = window_styles->get_focus(); else selected_style = marker; // Only proceed when a style has been selected. if (selected_style.empty()) return; // Get the Style object. Style style(settings->genconfig.stylesheet_get(), selected_style, false); // Whether and how the style is used. bool style_was_used = true; bool style_was_treated_specially = false; // Special treatment for the chapter style. if (style.type == stChapterNumber) { // Ask whether the user wishes to insert a new chapter. if (gtkw_dialog_question(window_main, "Would you like to insert a new chapter?", GTK_RESPONSE_YES) == GTK_RESPONSE_YES) { // Insert a new chapter. save_editors(); ChapterNumberDialog dialog(true); if (dialog.run() == GTK_RESPONSE_OK) { reload_all_editors(false); } else { style_was_used = false; } style_was_treated_specially = true; } } // Inserting footnote or endnote or crossreference. { if (editor_window->last_focused_type() == etvtBody) { if (style.type == stFootEndNote) { if (style.subtype == fentFootnote) { InsertNoteDialog dialog(indtFootnote); if (dialog.run() == GTK_RESPONSE_OK) { editor_window->insert_note(style.marker, dialog.rawtext); } else { style_was_used = false; } style_was_treated_specially = true; } if (style.subtype == fentEndnote) { InsertNoteDialog dialog(indtEndnote); if (dialog.run() == GTK_RESPONSE_OK) { editor_window->insert_note(style.marker, dialog.rawtext); } else { style_was_used = false; } style_was_treated_specially = true; } } if (style.type == stCrossreference) { InsertNoteDialog dialog(indtCrossreference); if (dialog.run() == GTK_RESPONSE_OK) { editor_window->insert_note(style.marker, dialog.rawtext); } else { style_was_used = false; } style_was_treated_specially = true; } } } // Special treatment for a table style. { if (editor_window->last_focused_type() == etvtBody) { if (style.type == stTableElement) { InsertTableDialog dialog(editor_window->project()); if (dialog.run() == GTK_RESPONSE_OK) { editor_window->insert_table(dialog.rawtext); } else { style_was_used = false; } style_was_treated_specially = true; } } } // Normal treatment of the style if it was not handled specially. if (!style_was_treated_specially) { // Normal treatment of the marker: apply it. editor_window->apply_style(selected_style); } // Take some actions if the style was used. if (marker == "") { if (style_was_used) { window_styles->use(selected_style); } } } void MainWindow::on_editor_style_changed(GtkButton * button, gpointer user_data) { ((MainWindow *) user_data)->editor_style_changed(); } void MainWindow::editor_style_changed() { } void MainWindow::on_style_edited(GtkButton * button, gpointer user_data) // This function is called when the properties of a style have been edited. { ((MainWindow *) user_data)->reload_styles(); } void MainWindow::reload_styles() { for (unsigned int i = 0; i < editor_windows.size(); i++) { editor_windows[i]->create_or_update_formatting_data(); } } /* | | | | | Footnotes, endnotes, crossreferences | | | | | */ void MainWindow::on_edit_bible_note_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_edit_bible_note(); } void MainWindow::on_edit_bible_note() { WindowEditor *editor_window = last_focused_editor_window(); if (editor_window) { Editor2 * editor = editor_window->editor_get(); if (editor) { EditNoteDialog dialog(editor); dialog.run(); } } } void MainWindow::on_insert_footnote_activate(GtkMenuItem *menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_style_apply("f"); } void MainWindow::on_insert_xref_activate(GtkMenuItem *menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_style_apply("x"); } /* | | | | | Tools | | | | | */ void MainWindow::on_menutools_activate(GtkMenuItem * menuitem, gpointer user_data) { } void MainWindow::on_notes_transfer_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_notes_transfer(); } void MainWindow::on_notes_transfer() { save_editors(); NotesTransferDialog dialog(0); if (dialog.run() == GTK_RESPONSE_OK) notes_redisplay(); } void MainWindow::on_tool_origin_references_in_bible_notes_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_tool_origin_references_in_bible_notes(); } void MainWindow::on_tool_origin_references_in_bible_notes() { save_editors(); OriginReferencesDialog dialog(0); if (dialog.run() == GTK_RESPONSE_OK) reload_all_editors(false); } void MainWindow::on_tool_project_notes_mass_update1_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_tool_project_notes_mass_update(); } void MainWindow::on_tool_project_notes_mass_update() { NotesUpdateDialog dialog(0); if (dialog.run() == GTK_RESPONSE_OK) { notes_redisplay(); } } void MainWindow::on_tool_generate_word_lists_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_tool_generate_word_lists(); } void MainWindow::on_tool_generate_word_lists() { save_editors(); WordlistDialog dialog(0); if (dialog.run() == GTK_RESPONSE_OK) reload_all_editors(false); } void MainWindow::on_tool_transfer_project_notes_to_text_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_tool_transfer_project_notes_to_text(); } void MainWindow::on_tool_transfer_project_notes_to_text() // This transfers the currently visible project notes to the currently active project, // and does that for each verse. { save_editors(); XferNotes2TextDialog dialog(0); if (dialog.run() == GTK_RESPONSE_OK) { reload_all_editors(false); } } void MainWindow::on_tools_maintenance_activate (GtkMenuItem *menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_tools_maintenance(); } void MainWindow::on_tools_maintenance () { MaintenanceDialog dialog (0); dialog.run(); } void MainWindow::on_preferences_gui_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_preferences_gui(); } void MainWindow::on_preferences_gui() { if (password_pass(window_main)) { GuiDialog dialog(0); dialog.run(); } } void MainWindow::on_preferences_password_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_preferences_password(); } void MainWindow::on_preferences_password() { password_edit(window_main); } void MainWindow::on_tool_simple_text_corrections_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_tool_simple_text_corrections(); } void MainWindow::on_tool_simple_text_corrections() { save_editors(); FixMarkersDialog dialog(0); if (dialog.run() == GTK_RESPONSE_OK) reload_all_editors(false); } void MainWindow::on_preferences_text_replacement_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_preferences_text_replacement(); } void MainWindow::on_preferences_text_replacement() { TextReplacementDialog dialog(0); dialog.run(); } void MainWindow::on_pdf_viewer1_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_pdf_viewer(); } void MainWindow::on_pdf_viewer() { PDFViewerDialog dialog(0); dialog.run(); } void MainWindow::on_insert_special_character_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_insert_special_character(); } void MainWindow::on_insert_special_character() { WindowEditor *editor_window = last_focused_editor_window(); if (!editor_window) return; vector < ustring > characters; vector < ustring > descriptions; characters.push_back("­"); descriptions.push_back("Soft hyphen"); characters.push_back(" "); descriptions.push_back("No-break space"); characters.push_back("“"); descriptions.push_back("Left double quotation mark"); characters.push_back("”"); descriptions.push_back("Right double quotation mark"); characters.push_back("‘"); descriptions.push_back("Left single quotation mark"); characters.push_back("’"); descriptions.push_back("Right single quotation mark"); characters.push_back("«"); descriptions.push_back("Left-pointing double angle quotation mark"); characters.push_back("»"); descriptions.push_back("Right-pointing double angle quotation mark"); RadiobuttonDialog dialog("Insert character", "Insert special character", descriptions, settings->session.special_character_selection, false); if (dialog.run() != GTK_RESPONSE_OK) return; settings->session.special_character_selection = dialog.selection; editor_window->text_insert(characters[dialog.selection]); } void MainWindow::on_preferences_compare_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_preferences_compare(); } void MainWindow::on_preferences_compare() { ComparePreferencesDialog dialog (0); dialog.run (); } /* | | | | | Keyterms | | | | | */ void MainWindow::on_check_key_terms_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_check_key_terms(); } void MainWindow::on_check_key_terms() { on_window_check_keyterms_delete_button(); if (gtk_check_menu_item_get_active(GTK_CHECK_MENU_ITEM(check_key_terms))) { window_check_keyterms = new WindowCheckKeyterms(layout, accelerator_group, windows_startup_pointer != G_MAXINT); g_signal_connect((gpointer) window_check_keyterms->delete_signal_button, "clicked", G_CALLBACK(on_window_check_keyterms_delete_button_clicked), gpointer(this)); g_signal_connect((gpointer) window_check_keyterms->focus_in_signal_button, "clicked", G_CALLBACK(on_window_focus_button_clicked), gpointer(this)); g_signal_connect((gpointer) window_check_keyterms->signal, "clicked", G_CALLBACK(on_keyterms_signal_button_clicked), gpointer(this)); } } void MainWindow::on_window_check_keyterms_delete_button_clicked(GtkButton * button, gpointer user_data) { ((MainWindow *) user_data)->on_window_check_keyterms_delete_button(); } void MainWindow::on_window_check_keyterms_delete_button() { if (window_check_keyterms) { delete window_check_keyterms; window_check_keyterms = NULL; gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(check_key_terms), false); } } void MainWindow::on_keyterms_signal_button_clicked(GtkButton * button, gpointer user_data) { ((MainWindow *) user_data)->keyterms_check_action(); } void MainWindow::keyterms_check_action() // This is called when the keyterms checking window requests action to be taken. { if (window_check_keyterms->new_reference_showing) { // Go to another reference. Reference reference(window_check_keyterms->new_reference_showing->book, window_check_keyterms->new_reference_showing->chapter, window_check_keyterms->new_reference_showing->verse); navigation.display(reference); } else { // Transfer references to the references window. show_references_window(); window_references->set (window_check_keyterms->references, settings->genconfig.project_get(), NULL); } } void MainWindow::on_view_related_verses_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_view_related_verses(); } void MainWindow::on_view_related_verses() { on_window_show_related_verses_delete_button(); if (gtk_check_menu_item_get_active(GTK_CHECK_MENU_ITEM(view_related_verses))) { window_show_related_verses = new WindowShowRelatedVerses(layout, accelerator_group, windows_startup_pointer != G_MAXINT); g_signal_connect((gpointer) window_show_related_verses->delete_signal_button, "clicked", G_CALLBACK(on_window_show_related_verses_delete_button_clicked), gpointer(this)); g_signal_connect((gpointer) window_show_related_verses->focus_in_signal_button, "clicked", G_CALLBACK(on_window_focus_button_clicked), gpointer(this)); g_signal_connect((gpointer) window_show_related_verses->button_item, "clicked", G_CALLBACK(on_window_show_related_verses_item_button_clicked), gpointer(this)); window_show_related_verses->go_to(settings->genconfig.project_get(), navigation.reference); } } void MainWindow::on_window_show_related_verses_delete_button_clicked(GtkButton * button, gpointer user_data) { ((MainWindow *) user_data)->on_window_show_related_verses_delete_button(); } void MainWindow::on_window_show_related_verses_delete_button() { if (window_show_related_verses) { delete window_show_related_verses; window_show_related_verses = NULL; gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(view_related_verses), false); } } void MainWindow::on_window_show_related_verses_item_button_clicked(GtkButton * button, gpointer user_data) { ((MainWindow *) user_data)->on_window_show_related_verses_item_button(); } void MainWindow::on_window_show_related_verses_item_button() { switch (window_show_related_verses->item_type) { case ritNone: { break; } case ritKeytermId: { gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(check_key_terms), true); window_check_keyterms->go_to_term (convert_to_int (window_show_related_verses->item_id)); break; } case ritStrongNumber: { // There may be more than one strong's number. Parse parse (window_show_related_verses->item_id); vector references; for (unsigned int i = 0; i < parse.words.size(); i++) { // Get references for this strong's number, and add them to the main store. vector refs = kjv_get_strongs_verses (parse.words[i]); for (unsigned int i = 0; i < refs.size(); i++) { references.push_back (refs[i]); } } // Show results. show_references_window(); window_references->set (references, settings->genconfig.project_get(), NULL); break; } case ritParallels: { vector references; vector comments; parallel_passages_retrieve (navigation.reference, references, comments); show_references_window(); window_references->set (references, settings->genconfig.project_get(), &comments); break; } } } void MainWindow::on_keyterms_import() { import_keyterms_assistant = new ImportKeytermsAssistant (0); g_signal_connect ((gpointer) import_keyterms_assistant->signal_button, "clicked", G_CALLBACK (on_assistant_ready_signal), gpointer (this)); } void MainWindow::on_keyterms_delete_activate(GtkMenuItem *menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_keyterms_delete(); } void MainWindow::on_keyterms_delete() { delete_keyterms_assistant = new DeleteKeytermsAssistant (0); g_signal_connect ((gpointer) delete_keyterms_assistant->signal_button, "clicked", G_CALLBACK (on_assistant_ready_signal), gpointer (this)); } /* | | | | | Backup and restore | | | | | */ void MainWindow::on_file_backup_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_file_backup(); } void MainWindow::on_file_backup() { save_editors(); backup_assistant = new BackupAssistant (0); g_signal_connect ((gpointer) backup_assistant->signal_button, "clicked", G_CALLBACK (on_assistant_ready_signal), gpointer (this)); } void MainWindow::on_file_restore_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_file_restore(); } void MainWindow::on_file_restore() { restore_assistant = new RestoreAssistant (0); g_signal_connect ((gpointer) restore_assistant->signal_button, "clicked", G_CALLBACK (on_assistant_ready_signal), gpointer (this)); } /* | | | | | Git | | | | | */ void MainWindow::on_preferences_remote_repository_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_preferences_remote_repository(); } void MainWindow::on_preferences_remote_repository() { save_editors(); remote_repository_assistant = new RemoteRepositoryAssistant (0); g_signal_connect ((gpointer) remote_repository_assistant->signal_button, "clicked", G_CALLBACK (on_assistant_ready_signal), gpointer (this)); } void MainWindow::on_project_changes_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_project_changes(); } void MainWindow::on_project_changes() { // Save even the very latest changes. save_editors(); // Do the actual changes dialog. show_references_window(); changes_assistant = new ChangesAssistant (window_references); g_signal_connect ((gpointer) changes_assistant->signal_button, "clicked", G_CALLBACK (on_assistant_ready_signal), gpointer (this)); } void MainWindow::on_edit_revert_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_edit_revert(); } void MainWindow::on_edit_revert() { save_editors(); RevertDialog dialog(&navigation.reference); if (dialog.run() == GTK_RESPONSE_OK) { reload_all_editors(false); } } void MainWindow::on_projects_send_receive1_activate (GtkMenuItem *menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_projects_send_receive(); } void MainWindow::on_projects_send_receive () { // Save all editors. for (unsigned int i = 0; i < editor_windows.size(); i++) { editor_windows[i]->chapter_save (); } GwSpawn spawn ("bibledit-git"); spawn.async (); // Schedule send/receive for the focused project first. // The reason for this is so that the translators can decide which one to do first, // since doing all of them could take time. WindowEditor *editor_window = last_focused_editor_window(); if (editor_window) { ustring project = editor_window->project (); ProjectConfiguration *projectconfig = settings->projectconfig(project); if (projectconfig->git_use_remote_repository_get()) { // Schedule an update. ustring folder = project_data_directory_project(project); spawn.arg (folder); } } // Schedule a push and pull task for each relevant project. vector < ustring > projects = projects_get_all(); for (unsigned int i = 0; i < projects.size(); i++) { ProjectConfiguration *projectconfig = settings->projectconfig(projects[i]); if (projectconfig->git_use_remote_repository_get()) { // Schedule an update. ustring folder = project_data_directory_project(projects[i]); spawn.arg (folder); maintenance_register_git_repository (folder); } } // Run the lot. spawn.run (); } /* | | | | | Fonts | | | | | */ void MainWindow::on_view_text_font_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_text_font(); } void MainWindow::on_text_font() { // Get the font and colour settings, either from the project, if it is opened, // or else from genconfig. bool defaultfont = settings->genconfig.text_editor_font_default_get(); ustring fontname = settings->genconfig.text_editor_font_name_get(); unsigned int linespacing = 100; bool defaultcolour = settings->genconfig.text_editor_default_color_get(); unsigned int normaltextcolour = settings->genconfig.text_editor_normal_text_color_get(); unsigned int backgroundcolour = settings->genconfig.text_editor_background_color_get(); unsigned int selectedtextcolour = settings->genconfig.text_editor_selected_text_color_get(); unsigned int selectioncolour = settings->genconfig.text_editor_selection_color_get(); WindowEditor *editor_window = last_focused_editor_window(); if (editor_window) { ProjectConfiguration *projectconfig = settings->projectconfig(editor_window->project()); defaultfont = projectconfig->editor_font_default_get(); fontname = projectconfig->editor_font_name_get(); linespacing = projectconfig->text_line_height_get(); defaultcolour = settings->genconfig.text_editor_default_color_get(); normaltextcolour = projectconfig->editor_normal_text_color_get(); backgroundcolour = projectconfig->editor_background_color_get(); selectedtextcolour = projectconfig->editor_selected_text_color_get(); selectioncolour = projectconfig->editor_selection_color_get(); } // Display font selection dialog. FontColorDialog dialog(defaultfont, fontname, linespacing, defaultcolour, normaltextcolour, backgroundcolour, selectedtextcolour, selectioncolour); if (dialog.run() != GTK_RESPONSE_OK) return; // Save font, and set it. settings->genconfig.text_editor_font_default_set(dialog.new_use_default_font); settings->genconfig.text_editor_font_name_set(dialog.new_font); settings->genconfig.text_editor_default_color_set(dialog.new_use_default_color); settings->genconfig.text_editor_normal_text_color_set(dialog.new_normal_text_color); settings->genconfig.text_editor_background_color_set(dialog.new_background_color); settings->genconfig.text_editor_selected_text_color_set(dialog.new_selected_text_color); settings->genconfig.text_editor_selection_color_set(dialog.new_selection_color); if (editor_window) { ProjectConfiguration *projectconfig = settings->projectconfig(editor_window->project()); projectconfig->editor_font_default_set(dialog.new_use_default_font); projectconfig->editor_font_name_set(dialog.new_font); projectconfig->text_line_height_set(dialog.new_line_spacing); projectconfig->editor_default_color_set(dialog.new_use_default_color); projectconfig->editor_normal_text_color_set(dialog.new_normal_text_color); projectconfig->editor_background_color_set(dialog.new_background_color); projectconfig->editor_selected_text_color_set(dialog.new_selected_text_color); projectconfig->editor_selection_color_set(dialog.new_selection_color); } set_fonts(); } void MainWindow::set_fonts() { // Set font in the text editors. Set text direction too. for (unsigned int i = 0; i < editor_windows.size(); i++) { editor_windows[i]->set_font(); editor_windows[i]->create_or_update_formatting_data(); } // Set fonts in the project notes window. if (window_notes) { window_notes->set_fonts(); } // Set fonts in the references window. if (window_references) { window_references->set_fonts(); } // Set fonts in the window for checking keyterms. if (window_check_keyterms) { window_check_keyterms->set_fonts(); } } /* | | | | | Outline | | | | | */ void MainWindow::on_view_outline_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_view_outline(); } void MainWindow::on_view_outline() { on_window_outline_delete_button(); if (gtk_check_menu_item_get_active(GTK_CHECK_MENU_ITEM(view_outline))) { window_outline = new WindowOutline(layout, accelerator_group, windows_startup_pointer != G_MAXINT); g_signal_connect((gpointer) window_outline->delete_signal_button, "clicked", G_CALLBACK(on_window_outline_delete_button_clicked), gpointer(this)); g_signal_connect((gpointer) window_outline->focus_in_signal_button, "clicked", G_CALLBACK(on_window_focus_button_clicked), gpointer(this)); g_signal_connect((gpointer) window_outline->outline->reference_changed_signal, "clicked", G_CALLBACK(on_button_outline_clicked), gpointer(this)); window_outline->go_to(settings->genconfig.project_get(), navigation.reference); } } void MainWindow::on_window_outline_delete_button_clicked(GtkButton * button, gpointer user_data) { ((MainWindow *) user_data)->on_window_outline_delete_button(); } void MainWindow::on_window_outline_delete_button() { if (window_outline) { delete window_outline; window_outline = NULL; gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(view_outline), false); } } void MainWindow::on_button_outline_clicked(GtkButton * button, gpointer user_data) { ((MainWindow *) user_data)->on_button_outline(); } void MainWindow::on_button_outline() { if (window_outline) { Reference reference(navigation.reference); reference.chapter = window_outline->outline->newchapter; reference.verse = convert_to_string(window_outline->outline->newverse); navigation.display(reference); } } /* | | | | | Planning | | | | | */ void MainWindow::on_edit_planning_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_edit_planning(); } void MainWindow::on_edit_planning() { PlanningEditDialog dialog (navigation.reference.book, navigation.reference.chapter); dialog.run (); } void MainWindow::on_view_planning_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_view_planning(); } void MainWindow::on_view_planning() { ViewPlanningDialog dialog(0); dialog.run(); } void MainWindow::on_preferences_planning_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_preferences_planning(); } void MainWindow::on_preferences_planning() { PlanningSetupDialog dialog(0); dialog.run(); } /* | | | | | Resources | | | | | */ void MainWindow::on_window_resource_delete_button_clicked(GtkButton * button, gpointer user_data) { ((MainWindow *) user_data)->on_window_resource_delete_button(button); } void MainWindow::on_window_resource_delete_button(GtkButton * button) { GtkWidget *widget = GTK_WIDGET(button); vector < WindowResource * >::iterator iterator = resource_windows.begin(); for (unsigned int i = 0; i < resource_windows.size(); i++) { if (widget == resource_windows[i]->delete_signal_button) { delete resource_windows[i]; resource_windows.erase(iterator); break; } iterator++; } } void MainWindow::on_file_resources_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_file_resources(); } WindowResource *MainWindow::last_focused_resource_window() // Get the focused resource window, or NULL if there's none. { WindowResource *resource_window = NULL; for (unsigned int i = 0; i < resource_windows.size(); i++) { if (resource_windows[i]->focus_in_signal_button == focused_resource_button) { resource_window = resource_windows[i]; } } return resource_window; } void MainWindow::on_file_resources() // Set some menu options sensitive if a resource is open. { gtk_widget_set_sensitive(file_resources_close, !resource_windows.empty()); gtk_widget_set_sensitive(file_resources_edit, !resource_windows.empty()); } void MainWindow::on_file_resources_open_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_file_resources_open("", false); } void MainWindow::on_file_resources_open(ustring resource, bool startup) // Opens a resource. { // If no resource is given, select a new one. if (resource.empty ()) { resource = resource_select (NULL); } if (resource.empty()) return; // Find data about the resource, and whether it exists. vector filenames; vector resources = resource_get_resources(filenames, false); quick_sort(resources, filenames, 0, resources.size()); ustring filename; for (unsigned int i = 0; i < resources.size(); i++) { if (resource == resources[i]) { filename = filenames[i]; } } if (filename.empty()) return; // If the resource already displays, bail out. for (unsigned int i = 0; i < resource_windows.size(); i++) { if (resource == resource_windows[i]->name) { return; } } // Display a new resource. WindowResource *resource_window = new WindowResource(resource, layout, accelerator_group, startup); g_signal_connect((gpointer) resource_window->delete_signal_button, "clicked", G_CALLBACK(on_window_resource_delete_button_clicked), gpointer(this)); g_signal_connect((gpointer) resource_window->focus_in_signal_button, "clicked", G_CALLBACK(on_window_focus_button_clicked), gpointer(this)); resource_window->go_to(navigation.reference); resource_windows.push_back(resource_window); } void MainWindow::on_file_resources_close_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_file_resources_close(); } void MainWindow::on_file_resources_close() // Closes the focused resource. { WindowResource *focused_window = last_focused_resource_window(); if (focused_window) { on_window_resource_delete_button(GTK_BUTTON(focused_window->delete_signal_button)); } } void MainWindow::on_file_resources_new_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_file_resources_new(); } void MainWindow::on_file_resources_new() { // Start the assistant. resource_assistant = new ResourceAssistant (""); g_signal_connect ((gpointer) resource_assistant->signal_button, "clicked", G_CALLBACK (on_assistant_ready_signal), gpointer (this)); } void MainWindow::on_file_resources_edit_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_file_resources_edit(); } void MainWindow::on_file_resources_edit() { WindowResource *focused_resource_window = last_focused_resource_window(); if (focused_resource_window) { ustring templatefile = focused_resource_window->resource->template_get(); resource_assistant = new ResourceAssistant (templatefile); g_signal_connect ((gpointer) resource_assistant->signal_button, "clicked", G_CALLBACK (on_assistant_ready_signal), gpointer (this)); } } void MainWindow::on_file_resources_delete_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_file_resources_delete(); } void MainWindow::on_file_resources_delete() // Delete a resource. { vector < ustring > filenames; vector < ustring > resources = resource_get_resources(filenames, false); ListviewDialog dialog("Delete resource", resources, "", false, NULL); if (dialog.run() == GTK_RESPONSE_OK) { int result = gtkw_dialog_question(NULL, "Are you sure you want to delete resource " + dialog.focus + "?"); if (result == GTK_RESPONSE_YES) { ustring filename; for (unsigned int i = 0; i < resources.size(); i++) { if (dialog.focus == resources[i]) { filename = filenames[i]; } } // There are two methods of deleting resources: if (resource_add_name_to_deleted_ones_if_standard_template(filename)) { // 1. A template that comes with bibledit: We can't delete this as we don't // have write access to the folder where it is stored. Therefore // we "delete" it by placing it in a file that lists deleted // resources. } else { // 2. A user-generated resource: Just delete it. ustring directory = gw_path_get_dirname(filename); unix_rmdir(directory); } } } } /* | | | | | Text Editors | | | | | */ void MainWindow::on_window_editor_delete_button_clicked(GtkButton * button, gpointer user_data) { ((MainWindow *) user_data)->on_window_editor_delete_button(button); } void MainWindow::on_window_editor_delete_button(GtkButton * button) { GtkWidget *widget = GTK_WIDGET(button); vector < WindowEditor * >::iterator iterator = editor_windows.begin(); for (unsigned int i = 0; i < editor_windows.size(); i++) { if (widget == editor_windows[i]->delete_signal_button) { delete editor_windows[i]; editor_windows.erase(iterator); break; } iterator++; } // When one of two or more editor windows is closed, // a remaining one does not always focus. Focus one here. if (!editor_windows.empty()) { editor_windows[0]->focus_set(); } handle_editor_focus(); } WindowEditor *MainWindow::last_focused_editor_window() // Get the focused editor window, or NULL if there's none. { WindowEditor *editor_window = NULL; for (unsigned int i = 0; i < editor_windows.size(); i++) { if (editor_windows[i]->focus_in_signal_button == focused_editor_button) { editor_window = editor_windows[i]; } } return editor_window; } void MainWindow::on_file_project_open(const ustring & project, bool startup) // Opens an editor. { // If the editor already displays, present it and bail out. for (unsigned int i = 0; i < editor_windows.size(); i++) { if (project == editor_windows[i]->title) { editor_windows[i]->focus_set(); return; } } // Display a new editor. WindowEditor *editor_window = new WindowEditor(project, layout, accelerator_group, startup); g_signal_connect((gpointer) editor_window->delete_signal_button, "clicked", G_CALLBACK(on_window_editor_delete_button_clicked), gpointer(this)); g_signal_connect((gpointer) editor_window->focus_in_signal_button, "clicked", G_CALLBACK(on_window_focus_button_clicked), gpointer(this)); g_signal_connect((gpointer) editor_window->new_verse_signal, "clicked", G_CALLBACK(on_new_verse_signalled), gpointer(this)); g_signal_connect((gpointer) editor_window->new_styles_signal, "clicked", G_CALLBACK(on_editor_style_changed), gpointer(this)); g_signal_connect((gpointer) editor_window->quick_references_button, "clicked", G_CALLBACK(on_show_quick_references_signal_button_clicked), gpointer(this)); g_signal_connect((gpointer) editor_window->word_double_clicked_signal, "clicked", G_CALLBACK(on_send_word_to_toolbox_signalled), gpointer(this)); g_signal_connect((gpointer) editor_window->reload_signal, "clicked", G_CALLBACK(on_editor_reload_clicked), gpointer(this)); g_signal_connect((gpointer) editor_window->changed_signal, "clicked", G_CALLBACK(on_editor_changed_clicked), gpointer(this)); g_signal_connect((gpointer) editor_window->spelling_checked_signal, "clicked", G_CALLBACK(on_editor_spelling_checked_button_clicked), gpointer(this)); editor_windows.push_back(editor_window); // After creation the window should generate a focus signal, // and this signal in turn will cause further processing of the editor. on_window_focus_button(GTK_BUTTON(editor_window->focus_in_signal_button)); } void MainWindow::on_editor_reload_clicked(GtkButton * button, gpointer user_data) { ((MainWindow *) user_data)->reload_all_editors(true); } void MainWindow::handle_editor_focus() { // Get the focused editor and the project. WindowEditor *editor_window = last_focused_editor_window(); ustring project; if (editor_window) project = editor_window->project(); // Bail out if there's no change in focused project. if (project == previously_focused_project_name) return; previously_focused_project_name = project; // Set the focused project in the configuration. settings->genconfig.project_set(project); // Enable or disable widgets depending on whether an editor window is focused. enable_or_disable_widgets(editor_window); // Inform the merge window, if it is there, about the editors. if (window_merge) { window_merge->set_focused_editor(); vector open_projects; for (unsigned int i = 0; i < editor_windows.size(); i++) { open_projects.push_back(editor_windows[i]->project()); } window_merge->set_open_projects(open_projects); } // Set the toggle item for the USFM view. It depends on the focused text editor. bool viewing_usfm = false; if (editor_window) { viewing_usfm = editor_window->editing_usfm_code_get(); } gtk_check_menu_item_set_active (GTK_CHECK_MENU_ITEM (view_usfm_code), viewing_usfm); // Inform the check USFM window about the focused editor. check_usfm_window_ping (); // Set the title of the main window to include the project. ustring title = "Bibledit-Gtk"; if (!project.empty()) { title.append (" - "); title.append (project); } gtk_window_set_title(GTK_WINDOW(window_main), title.c_str()); // If we've no project bail out. if (project.empty()) return; // Project configuration. ProjectConfiguration *projectconfig = settings->projectconfig(project); // The font and colour are tied to the project, // but also stored in the general configuration. settings->genconfig.text_editor_font_default_set(projectconfig->editor_font_default_get()); settings->genconfig.text_editor_font_name_set(projectconfig->editor_font_name_get()); settings->genconfig.text_editor_default_color_set(projectconfig->editor_default_color_get()); settings->genconfig.text_editor_normal_text_color_set(projectconfig->editor_normal_text_color_get()); settings->genconfig.text_editor_background_color_set(projectconfig->editor_background_color_get()); settings->genconfig.text_editor_selected_text_color_set(projectconfig->editor_selected_text_color_get()); settings->genconfig.text_editor_selection_color_set(projectconfig->editor_selection_color_get()); // Re-initialize Navigation. navigation.set_project(project, false); Reference reference(settings->genconfig.book_get(), convert_to_int(settings->genconfig.chapter_get()), settings->genconfig.verse_get()); navigation.display(reference); // Set the available books for search/replace functions. vector < unsigned int >books = project_get_books(project); set < unsigned int >selection(books.begin(), books.end()); settings->session.selected_books = selection; // Redisplay the project notes. notes_redisplay(); } void MainWindow::save_editors() // Save all and any editors. { for (unsigned int i = 0; i < editor_windows.size(); i++) { editor_windows[i]->chapter_save(); } } void MainWindow::goto_next_previous_project(bool next) { // Bail out if there are not enough windows to switch. if (editor_windows.size() < 2) return; // Get the focused project window and its offset. WindowEditor *present_window = last_focused_editor_window(); int offset = 0; for (unsigned int i = 0; i < editor_windows.size(); i++) { if (present_window == editor_windows[i]) { offset = i; } } // Move offset to next (or previous) window. if (next) { offset++; if ((unsigned int)(offset) >= editor_windows.size()) offset = 0; } else { offset--; if (offset < 0) offset = editor_windows.size() - 1; } // Focus the new window. editor_windows[offset]->focus_set(); } void MainWindow::on_editor_changed_clicked(GtkButton * button, gpointer user_data) { ((MainWindow *) user_data)->on_editor_changed(); } void MainWindow::on_editor_changed() { if (window_merge) { window_merge->editors_changed(); } check_usfm_window_ping (); // Optionally signal the keyterms checker. if (window_check_keyterms) { WindowEditor *editor_window = last_focused_editor_window(); if (editor_window) { Editor2 * editor = editor_window->editor_get(); window_check_keyterms->text_changed(editor); } } } void MainWindow::on_view_usfm_code_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_view_usfm_code(); } void MainWindow::on_view_usfm_code() { WindowEditor *editor_window = last_focused_editor_window(); if (editor_window) { editor_window->editing_usfm_code_set (gtk_check_menu_item_get_active (GTK_CHECK_MENU_ITEM (view_usfm_code))); } // There are objects that act on USFM view or formatted view only. // Inform these about a possible change. handle_editor_focus(); } void MainWindow::reload_all_editors(bool take_chapter_from_focused_editor) { // Get the focused editor, if none, bail out. WindowEditor *editor_window = last_focused_editor_window(); if (!editor_window) return; // Store the reference where to go to after the project has been reloaded. Reference reference(navigation.reference); // If needed take the chapter number from the currently focused project. if (take_chapter_from_focused_editor) { reference.chapter = editor_window->reload_chapter_number(); if (editor_window->reload_chapter_number() == 0) { reference.verse = "0"; } } // Get the project. ustring project = editor_window->project(); // As anything could have happened to the data in the project, force a reload of the navigator. navigation.set_project(project, true); // Reload all editors. for (unsigned int i = 0; i < editor_windows.size(); i++) { editor_windows[i]->chapter_load(reference.chapter); } // Go to the right reference. navigation.display(reference); } /* | | | | | Merge | | | | | */ void MainWindow::on_file_projects_merge_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_file_projects_merge(); } void MainWindow::on_file_projects_merge() { on_window_merge_delete_button(); if (gtk_check_menu_item_get_active(GTK_CHECK_MENU_ITEM(file_projects_merge))) { window_merge = new WindowMerge(layout, accelerator_group, windows_startup_pointer != G_MAXINT); g_signal_connect((gpointer) window_merge->delete_signal_button, "clicked", G_CALLBACK(on_window_merge_delete_button_clicked), gpointer(this)); g_signal_connect((gpointer) window_merge->focus_in_signal_button, "clicked", G_CALLBACK(on_window_focus_button_clicked), gpointer(this)); g_signal_connect((gpointer) window_merge->editors_get_text_button, "clicked", G_CALLBACK(on_merge_window_get_text_button_clicked), gpointer(this)); g_signal_connect((gpointer) window_merge->new_reference_button, "clicked", G_CALLBACK(on_merge_window_new_reference_button_clicked), gpointer(this)); g_signal_connect((gpointer) window_merge->save_editors_button, "clicked", G_CALLBACK(on_merge_window_save_editors_button_clicked), gpointer(this)); g_signal_connect((gpointer) window_merge->reload_editors_button, "clicked", G_CALLBACK(on_editor_reload_clicked), gpointer(this)); vector < ustring> open_projects; for (unsigned int i = 0; i < editor_windows.size(); i++) { open_projects.push_back(editor_windows[i]->project()); } window_merge->set_open_projects(open_projects); } } void MainWindow::on_window_merge_delete_button_clicked(GtkButton * button, gpointer user_data) { ((MainWindow *) user_data)->on_window_merge_delete_button(); } void MainWindow::on_window_merge_delete_button() { if (window_merge) { delete window_merge; window_merge = NULL; gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(file_projects_merge), false); } } void MainWindow::on_merge_window_get_text_button_clicked(GtkButton * button, gpointer user_data) { ((MainWindow *) user_data)->on_merge_window_get_text_button(); } void MainWindow::on_merge_window_get_text_button() { if (window_merge) { for (unsigned int i = 0; i < editor_windows.size(); i++) { if (editor_windows[i]->title == window_merge->current_master_project) { window_merge->main_project_data = editor_windows[i]->get_chapter(); } if (editor_windows[i]->title == window_merge->current_edited_project) { window_merge->edited_project_data = editor_windows[i]->get_chapter(); } } window_merge->book = navigation.reference.book; window_merge->chapter = navigation.reference.chapter; } } void MainWindow::on_merge_window_new_reference_button_clicked(GtkButton * button, gpointer user_data) { ((MainWindow *) user_data)->on_merge_window_new_reference_button(); } void MainWindow::on_merge_window_new_reference_button() { if (window_merge) { Reference reference(window_merge->book, window_merge->chapter, "0"); navigation.display(reference); } } void MainWindow::on_merge_window_save_editors_button_clicked(GtkButton * button, gpointer user_data) { ((MainWindow *) user_data)->on_merge_window_save_editors_button(); } void MainWindow::on_merge_window_save_editors_button() { save_editors(); } /* | | | | | Diglot | | | | | */ void MainWindow::on_preferences_filters_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_preferences_filters(); } void MainWindow::on_preferences_filters() { FiltersDialog dialog(0); dialog.run(); } /* | | | | | Print | | | | | */ void MainWindow::on_print_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_print(); } void MainWindow::on_print() { // Bail out if no project is open. WindowEditor *editorwindow = last_focused_editor_window(); if (!editorwindow) return; // Create the selection dialog using the saved selection. unsigned int selection; { vector labels; labels.push_back("Project (through internal typesetter)"); labels.push_back("Project (through ptx2pdf typesetter)"); labels.push_back("Parallel Bible"); labels.push_back("References"); //labels.push_back("Test usfm2pdf"); RadiobuttonDialog dialog("Print", "Select what to print", labels, settings->genconfig.print_job_get(), false); if (dialog.run() != GTK_RESPONSE_OK) return; selection = dialog.selection; settings->genconfig.print_job_set(selection); } // Save the editors. save_editors(); switch (selection) { case 0: // Project through internal typesetter. { { PrintProjectDialog dialog(0); if (dialog.run() != GTK_RESPONSE_OK) return; } ProjectMemory projectmemory(settings->genconfig.project_get(), true); PrintProject printproject(&projectmemory); printproject.print(); break; } case 1: // Project through XeTeX { { XeTeXDialog dialog(0); if (dialog.run() != GTK_RESPONSE_OK) return; } ProjectMemory projectmemory(settings->genconfig.project_get(), true); PrintProject2 printproject2(&projectmemory); printproject2.print(); break; } case 2: // Parallel Bible. { { ParallelBibleDialog dialog(0); if (dialog.run() != GTK_RESPONSE_OK) return; } view_parallel_bible_pdf(); break; } case 3: // References. { // Activate references. show_references_window(); // Show dialog. { PrintReferencesDialog dialog(0); if (dialog.run() != GTK_RESPONSE_OK) return; } // Load refs from the references window. show_references_window(); vector refs = window_references->get(); if (refs.empty()) { gtkw_dialog_info(window_main, "There are no references to print"); } else { // Run the function for printing the references. vector < ustring > extra_projects = settings->genconfig.print_references_projects_get(); ProjectMemory projectmemory(settings->genconfig.project_get(), true); view_parallel_references_pdf(projectmemory, &extra_projects, refs, true, NULL, true); } break; } } } /* | | | | | Accelerators | | | | | */ void MainWindow::accelerator_undo_callback(gpointer user_data) { ((MainWindow *) user_data)->menu_accelerator_undo(); } void MainWindow::accelerator_redo_callback(gpointer user_data) { ((MainWindow *) user_data)->menu_accelerator_redo(); } void MainWindow::accelerator_cut_callback(gpointer user_data) { ((MainWindow *) user_data)->on_cut(); } void MainWindow::accelerator_copy_callback(gpointer user_data) { ((MainWindow *) user_data)->on_copy(); } void MainWindow::accelerator_paste_callback(gpointer user_data) { ((MainWindow *) user_data)->on_paste(); } void MainWindow::accelerator_new_project_note_callback(gpointer user_data) { ((MainWindow *) user_data)->on_new_note(); } void MainWindow::accelerator_next_verse_callback(gpointer user_data) { ((MainWindow *) user_data)->goto_next_verse(); } void MainWindow::accelerator_previous_verse_callback(gpointer user_data) { ((MainWindow *) user_data)->goto_previous_verse(); } void MainWindow::accelerator_next_chapter_callback(gpointer user_data) { ((MainWindow *) user_data)->goto_next_chapter(); } void MainWindow::accelerator_previous_chapter_callback(gpointer user_data) { ((MainWindow *) user_data)->goto_previous_chapter(); } void MainWindow::accelerator_next_book_callback(gpointer user_data) { ((MainWindow *) user_data)->goto_next_book(); } void MainWindow::accelerator_previous_book_callback(gpointer user_data) { ((MainWindow *) user_data)->goto_previous_book(); } void MainWindow::accelerator_next_reference_in_history_callback(gpointer user_data) { ((MainWindow *) user_data)->accelerator_next_reference_in_history(); } void MainWindow::accelerator_next_reference_in_history() { navigation.on_forward(); } void MainWindow::accelerator_previous_reference_in_history_callback(gpointer user_data) { ((MainWindow *) user_data)->accelerator_previous_reference_in_history(); } void MainWindow::accelerator_previous_reference_in_history() { navigation.on_back(); } void MainWindow::accelerator_go_to_reference_callback(gpointer user_data) { ((MainWindow *) user_data)->goto_reference_interactive(); } void MainWindow::accelerator_close_window_callback(gpointer user_data) { ((MainWindow *) user_data)->accelerator_close_window(); } void MainWindow::accelerator_close_window() // Closes the focused window. { // Keyterms in verse. if (window_show_related_verses) { if (window_show_related_verses->focused) { on_window_show_related_verses_delete_button(); } } // Merge if (window_merge) { if (window_merge->focused) { on_window_merge_delete_button(); } } // Resources. for (unsigned int i = 0; i < resource_windows.size(); i++) { WindowResource *resource_window = resource_windows[i]; if (resource_window->focused) { on_window_resource_delete_button(GTK_BUTTON(resource_window->delete_signal_button)); break; } } // Outline. if (window_outline) { if (window_outline->focused) { on_window_outline_delete_button(); } } // Check keyterms. if (window_check_keyterms) { if (window_check_keyterms->focused) { on_window_check_keyterms_delete_button(); } } // Styles. if (window_styles) { if (window_styles->focused) { on_window_styles_delete_button(); } } // Notes. if (window_notes) { if (window_notes->focused) { on_window_notes_delete_button(); } } // References. if (window_references) { if (window_references->focused) { on_window_references_delete_button(); } } // Editors. for (unsigned int i = 0; i < editor_windows.size(); i++) { WindowEditor *editor_window = editor_windows[i]; if (editor_window->focused) { on_window_editor_delete_button(GTK_BUTTON(editor_window->delete_signal_button)); break; } } handle_editor_focus(); // Check USFM. if (window_check_usfm) { if (window_check_usfm->focused) { on_window_check_usfm_delete_button(); } } } void MainWindow::accelerator_goto_styles_area_callback(gpointer user_data) { ((MainWindow *) user_data)->on_goto_styles_area(); } void MainWindow::accelerator_quit_program_callback(gpointer user_data) { ((MainWindow *) user_data)->initiate_shutdown(); } void MainWindow::accelerator_activate_text_area_callback(gpointer user_data) { ((MainWindow *) user_data)->on_text_area_activate(); } void MainWindow::accelerator_activate_tools_area_callback(gpointer user_data) { ((MainWindow *) user_data)->on_tools_area_activate(); } void MainWindow::accelerator_activate_notes_area_callback(gpointer user_data) { ((MainWindow *) user_data)->on_notes_area_activate(); } void MainWindow::accelerator_next_reference_in_reference_area_callback(gpointer user_data) { ((MainWindow *) user_data)->on_next_reference(); } void MainWindow::accelerator_previous_reference_in_reference_area_callback(gpointer user_data) { ((MainWindow *) user_data)->on_previous_reference(); } void MainWindow::accelerator_next_project_callback(gpointer user_data) { ((MainWindow *) user_data)->goto_next_previous_project(true); } void MainWindow::accelerator_previous_project_callback(gpointer user_data) { ((MainWindow *) user_data)->goto_next_previous_project(false); } void MainWindow::accelerator_open_project_callback(gpointer user_data) { ((MainWindow *) user_data)->open(); } void MainWindow::accelerator_print_callback(gpointer user_data) { ((MainWindow *) user_data)->on_print(); } void MainWindow::accelerator_find_callback(gpointer user_data) { ((MainWindow *) user_data)->menu_findspecial(); } void MainWindow::accelerator_replace_callback(gpointer user_data) { ((MainWindow *) user_data)->menu_replace(); } void MainWindow::accelerator_main_help_callback(gpointer user_data) { ((MainWindow *) user_data)->on_help_main(); } void MainWindow::accelerator_view_usfm_code(gpointer user_data) { ((MainWindow *) user_data)->accelerator_view_usfm_code_toggle(); } void MainWindow::accelerator_view_usfm_code_toggle() { bool active = gtk_check_menu_item_get_active (GTK_CHECK_MENU_ITEM (view_usfm_code)); gtk_check_menu_item_set_active (GTK_CHECK_MENU_ITEM (view_usfm_code), !active); } /* | | | | | Shutdown | | | | | */ bool MainWindow::on_window_delete_event(GtkWidget * widget, GdkEvent * event, gpointer user_data) { ((MainWindow *) user_data)->initiate_shutdown(); // Prevent the window from being deleted right now. // This prevents crashes. // The window will be deleted later on. return true; } void MainWindow::initiate_shutdown() // Starts the shutdown sequence. { // Bail out if we are already shutting down. if (shutting_down) { return; } shutting_down = true; // Shut down after a delay. g_timeout_add(10, GSourceFunc(gtk_main_quit), NULL); } /* | | | | | Assistants | | | | | */ void MainWindow::on_assistant_ready_signal (GtkButton *button, gpointer user_data) { ((MainWindow *) user_data)->on_assistant_ready(); } void MainWindow::on_assistant_ready () // This handles the situation that any assistant is ready. { // Importing keyterms. if (import_keyterms_assistant) { delete import_keyterms_assistant; import_keyterms_assistant = NULL; // Refresh window for checking keyterms. if (window_check_keyterms) { window_check_keyterms->reload_collections(); } } // Deleting keyterms. if (delete_keyterms_assistant) { delete delete_keyterms_assistant; delete_keyterms_assistant = NULL; // Refresh window for checking keyterms. if (window_check_keyterms) { window_check_keyterms->reload_collections(); } } // Changes. if (changes_assistant) { delete changes_assistant; changes_assistant = NULL; } // Remote repository setup. if (remote_repository_assistant) { delete remote_repository_assistant; reload_all_editors(false); remote_repository_assistant = NULL; } // Resource editor. if (resource_assistant) { ustring new_resource = resource_assistant->new_resource_get(); if (!new_resource.empty()) { // The resource was created: open it. on_file_resources_open (new_resource, false); } else { // The resource was edited: refresh ito WindowResource *focused_resource_window = last_focused_resource_window(); if (focused_resource_window) { focused_resource_window->resource->open(resource_assistant->edited_resource_get()); } } delete resource_assistant; resource_assistant = NULL; } // Backup. if (backup_assistant) { delete backup_assistant; backup_assistant = NULL; } // Restore. if (restore_assistant) { delete restore_assistant; restore_assistant = NULL; } // Export. if (export_assistant) { delete export_assistant; export_assistant = NULL; } // Import. if (import_assistant) { reload_all_editors(false); bool import_notes = import_assistant->import_notes; bool import_keyterms = import_assistant->import_keyterms; delete import_assistant; import_assistant = NULL; if (import_notes) { on_import_notes (); } if (import_keyterms) { on_keyterms_import(); } } } /* | | | | | Check USFM | | | | | */ void MainWindow::on_check_usfm_activate(GtkMenuItem * menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_check_usfm(); } void MainWindow::on_check_usfm() { on_window_check_usfm_delete_button(); if (gtk_check_menu_item_get_active(GTK_CHECK_MENU_ITEM(check_usfm))) { window_check_usfm = new WindowCheckUSFM(layout, accelerator_group, windows_startup_pointer != G_MAXINT); g_signal_connect((gpointer) window_check_usfm->delete_signal_button, "clicked", G_CALLBACK(on_window_check_usfm_delete_button_clicked), gpointer(this)); g_signal_connect((gpointer) window_check_usfm->focus_in_signal_button, "clicked", G_CALLBACK(on_window_focus_button_clicked), gpointer(this)); handle_editor_focus(); on_editor_changed(); } } void MainWindow::on_window_check_usfm_delete_button_clicked(GtkButton * button, gpointer user_data) { ((MainWindow *) user_data)->on_window_check_usfm_delete_button(); } void MainWindow::on_window_check_usfm_delete_button() { if (window_check_usfm) { delete window_check_usfm; window_check_usfm = NULL; gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(check_usfm), false); } } void MainWindow::check_usfm_window_ping() // Inform the check USFM window about the focused editor. { if (!window_check_usfm) return; WindowEditor *editor_window = last_focused_editor_window(); ustring project; unsigned int book = 0; unsigned int chapter = 0; GtkTextBuffer * focused_textbuffer = NULL; if (editor_window) { project = editor_window->project(); focused_textbuffer = editor_window->edit_usfm_textbuffer(); book = editor_window->book(); chapter = editor_window->chapter(); } window_check_usfm->set_parameters(focused_textbuffer, project, book, chapter); } /* | | | | | Import | | | | | */ void MainWindow::on_file_import_activate (GtkMenuItem *menuitem, gpointer user_data) { ((MainWindow *) user_data)->on_file_import(); } void MainWindow::on_file_import () { save_editors(); WindowStyles * styles_window = window_styles; if (!style_management_enabled) styles_window = NULL; WindowReferences * references_window = window_references; if (!project_notes_management_enabled) references_window = NULL; import_assistant = new ImportAssistant (references_window, styles_window, window_check_keyterms, windowsoutpost); g_signal_connect ((gpointer) import_assistant->signal_button, "clicked", G_CALLBACK (on_assistant_ready_signal), gpointer (this)); } /* | | | | | Floating windows | | | | | */ void MainWindow::on_scrolledwindow_layout_size_allocate (GtkWidget *widget, GdkRectangle *allocation, gpointer user_data) { ((MainWindow *) user_data)->scrolledwindow_layout_size_allocate(allocation); } void MainWindow::scrolledwindow_layout_size_allocate (GdkRectangle *allocation) // The size of the parent scrolled window determines the size of the layout. { // Get current layout size. guint width, height; gtk_layout_get_size (GTK_LAYOUT (layout), &width, &height); // Only proceed if there's a change. if ((allocation->width != (gint) (width + 3)) || (allocation->height != (gint) (height + 3))) { // Set new size. width = allocation->width - 3; height = allocation->height - 3; gtk_layout_set_size (GTK_LAYOUT (layout), width, height); } } bool MainWindow::on_windows_startup_timeout(gpointer data) { return ((MainWindow *) data)->on_windows_startup(); } bool MainWindow::on_windows_startup() { // Get all window data. WindowData window_data(false); bool window_started = false; while ((windows_startup_pointer < window_data.ids.size()) && !window_started) { if (window_data.shows[windows_startup_pointer]) { WindowID id = WindowID(window_data.ids[windows_startup_pointer]); ustring title = window_data.titles[windows_startup_pointer]; switch (id) { case widShowRelatedVerses: { gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(view_related_verses), true); break; } case widMerge: { gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(file_projects_merge), true); break; } case widResource: { on_file_resources_open(title, true); break; } case widOutline: { gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(view_outline), true); break; } case widCheckKeyterms: { gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(check_key_terms), true); break; } case widStyles: { on_goto_styles_area(); break; } case widNotes: { view_project_notes(); break; } case widReferences: { show_references_window(); break; } case widEditor: { on_file_project_open(title, true); break; } case widMenu: { break; } case widShowVerses: { // The window was removed. Xiphos and similar programs provide this functionality much better break; } case widCheckUSFM: { gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(check_usfm), true); break; } case widSourceLanguages: { // The window was removed since the external applications provide source text and do it much better than Bibledit. break; } } window_started = true; } windows_startup_pointer++; } if (windows_startup_pointer < window_data.ids.size()) { return true; } else { windows_startup_pointer = G_MAXINT; } // At the end of all focus the right editor, the one that had focus last time on shutdown. if (focused_project_last_session.empty()) { for (unsigned int i = 0; i < editor_windows.size(); i++) { if (focused_project_last_session == editor_windows[i]->title) { editor_windows[i]->focus_set(); } } focused_project_last_session.clear(); } // We're through. return false; } void MainWindow::shutdown_windows() // Shut any open windows down. { // Related verses. if (window_show_related_verses) { window_show_related_verses->shutdown(); delete window_show_related_verses; window_show_related_verses = NULL; } // Merge if (window_merge) { window_merge->shutdown(); delete window_merge; window_merge = NULL; } // Resources. while (!resource_windows.empty()) { WindowResource *resource_window = resource_windows[0]; resource_window->shutdown(); delete resource_window; resource_windows.erase(resource_windows.begin()); } // Outline. if (window_outline) { window_outline->shutdown(); delete window_outline; window_outline = NULL; } // Check keyterms. if (window_check_keyterms) { window_check_keyterms->shutdown(); delete window_check_keyterms; window_check_keyterms = NULL; } // Styles. if (window_styles) { window_styles->shutdown(); delete window_styles; window_styles = NULL; } // Notes. if (window_notes) { window_notes->shutdown(); delete window_notes; window_notes = NULL; } // References. if (window_references) { window_references->shutdown(); delete window_references; window_references = NULL; } // Editors. while (!editor_windows.empty()) { WindowEditor *editor_window = editor_windows[0]; editor_window->shutdown(); delete editor_window; editor_windows.erase(editor_windows.begin()); } // Check USFM. if (window_check_usfm) { window_check_usfm->shutdown(); delete window_check_usfm; window_check_usfm = NULL; } } void MainWindow::on_window_focus_button_clicked(GtkButton * button, gpointer user_data) { ((MainWindow *) user_data)->on_window_focus_button(button); } void MainWindow::on_window_focus_button(GtkButton * button) // Called when a window gets focused. { static GtkWidget * previously_focused_window_button = NULL; // Bail out if there's no change in the focus. GtkWidget *widget = GTK_WIDGET(button); if (widget == previously_focused_window_button) return; previously_focused_window_button = widget; // Save possible new focused resource. for (unsigned int i = 0; i < resource_windows.size(); i++) { if (resource_windows[i]->focus_in_signal_button == widget) { if (widget != focused_resource_button) { focused_resource_button = widget; } } } // Save possible new focused editor. for (unsigned int i = 0; i < editor_windows.size(); i++) { if (editor_windows[i]->focus_in_signal_button == widget) { if (widget != focused_editor_button) { focused_editor_button = widget; handle_editor_focus(); } } } // Save possible new focused tool. store_last_focused_tool_button (button); // Focus the relevant window. if (window_show_related_verses) window_show_related_verses->focus_set (window_show_related_verses->focus_in_signal_button == widget); if (window_merge) window_merge->focus_set (window_merge->focus_in_signal_button == widget); for (unsigned int i = 0; i < resource_windows.size(); i++) resource_windows[i]->focus_set (resource_windows[i]->focus_in_signal_button == widget); if (window_outline) window_outline->focus_set (window_outline->focus_in_signal_button == widget); if (window_check_keyterms) window_check_keyterms->focus_set (window_check_keyterms->focus_in_signal_button == widget); if (window_styles) window_styles->focus_set (window_styles->focus_in_signal_button == widget); if (window_notes) window_notes->focus_set (window_notes->focus_in_signal_button == widget); if (window_references) window_references->focus_set (window_references->focus_in_signal_button == widget); for (unsigned int i = 0; i < editor_windows.size(); i++) editor_windows[i]->focus_set (editor_windows[i]->focus_in_signal_button == widget); if (window_check_usfm) window_check_usfm->focus_set (window_check_usfm->focus_in_signal_button == widget); } void MainWindow::store_last_focused_tool_button (GtkButton * button) { GtkWidget * widget = GTK_WIDGET (button); if (window_show_related_verses) { if (widget == window_show_related_verses->focus_in_signal_button) { focused_tool_button = widget; } } if (window_merge) { if (widget == window_merge->focus_in_signal_button) { focused_tool_button = widget; } } for (unsigned int i = 0; i < resource_windows.size(); i++) { if (widget == resource_windows[i]->focus_in_signal_button) { focused_tool_button = widget; } } if (window_outline) { if (widget == window_outline->focus_in_signal_button) { focused_tool_button = widget; } } if (window_check_keyterms) { if (widget == window_check_keyterms->focus_in_signal_button) { focused_tool_button = widget; } } if (window_styles) { if (widget == window_styles->focus_in_signal_button) { focused_tool_button = widget; } } // Skip project notes window. if (window_references) { if (widget == window_references->focus_in_signal_button) { focused_tool_button = widget; } } // Skip editor windows. if (window_check_usfm) { if (widget == window_check_usfm->focus_in_signal_button) { focused_tool_button = widget; } } } /* | | | | | Interprocess communications | | | | | */ bool MainWindow::on_interprocess_communications_initiate_listener_timeout(gpointer data) { ((MainWindow *) data)->interprocess_communications_initiate_listener(); return false; } void MainWindow::interprocess_communications_initiate_listener () { interprocess_communications_initiate_listener_event_id = 0; ustring url = settings->genconfig.bibledit_web_url_get(); ustring user = settings->genconfig.bibledit_web_user_get(); url.append ("/ipc/getmessage.php?user=" + user + "&channel=bibleditgtk&id="); url.append (convert_to_string (interprocess_communications_initiate_listener_message_id)); GtkWidget * button; button = urltransport->send_message_expect_reply (url); g_signal_connect((gpointer) button, "clicked", G_CALLBACK(on_interprocess_communications_listener_button_clicked), gpointer(this)); } void MainWindow::on_interprocess_communications_listener_button_clicked(GtkButton *button, gpointer user_data) { ((MainWindow *) user_data)->on_interprocess_communications_listener_button(button); } void MainWindow::on_interprocess_communications_listener_button(GtkButton *button) { // Process the message if it looks good. if (urltransport->reply_is_ok) { ParseLine parseline (trim (urltransport->reply_body)); if (!parseline.lines.empty()) { interprocess_communications_initiate_listener_message_id = convert_to_int (parseline.lines[0]); if (parseline.lines.size() > 2) { ustring subject = parseline.lines[1]; // Handle "focus" command. if (subject == "focus") { ustring payload = parseline.lines[2]; Parse parse (payload, false, "."); if (parse.words.size() >= 3) { Reference received_reference (convert_to_int (parse.words[0]), convert_to_int (parse.words[1]), parse.words[2]); navigation.display (received_reference); } } } } } // Since this listener is ready, it needs to start the next listener. // If all went well, this is done shortly after. // If there was an error, it waits a bit longer before restarting the listener. unsigned int milliseconds = 1000; if (urltransport->reply_is_ok) { milliseconds = 100; } interprocess_communications_initiate_listener_event_id = g_timeout_add_full(G_PRIORITY_DEFAULT, milliseconds, GSourceFunc(on_interprocess_communications_initiate_listener_timeout), gpointer(this), NULL); } bibledit-gtk-4.9/src/mainwindow.h000644 000766 000024 00000076350 12454201706 017203 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_MAINWINDOW_H #define INCLUDED_MAINWINDOW_H #include #include "settings.h" #include "urltransport.h" #include "vcs.h" #include "windowsoutpost.h" #include "ustring.h" #include "usfm.h" #include "note_editor.h" #include "editor.h" #include "httpd.h" #include "reference.h" #include "gui_navigation.h" #include "displayprojectnotes.h" #include "git.h" #include "windowshowrelatedverses.h" #include "windowmerge.h" #include "windowresource.h" #include "windowoutline.h" #include "windowcheckkeyterms.h" #include "windowstyles.h" #include "windownotes.h" #include "windowreferences.h" #include "windoweditor.h" #include "assistantimportkeyterms.h" #include "assistantdeletekeyterms.h" #include "assistantchanges.h" #include "windowcheckusfm.h" #include "assistantremoterepository.h" #include "assistantresource.h" #include "assistantbackup.h" #include "assistantrestore.h" #include "assistantexport.h" #include "assistantimport.h" #include "floatingwindow.h" #include "urltransport.h" class MainWindow { private: GtkAccelGroup *accelerator_group; Settings *settings; URLTransport *urltransport; VCS *vcs; public: MainWindow(unsigned long xembed, GtkAccelGroup *_accelerator_group, Settings *_settings, URLTransport *_urltransport, VCS *_vcs); ~MainWindow(); int run(); protected: /* IMPORTANT If more menu items are added see whether they should be made * in(sensitive) depending on the context whether something has been opened. */ GtkWidget *window_main; GtkWidget *vbox_main; GtkWidget *menubar1; GtkWidget *menuitem_file; GtkWidget *menuitem_file_menu; GtkWidget *file_project; GtkWidget *image463; GtkWidget *file_project_menu; GtkWidget *new1; GtkWidget *image903; GtkWidget *open1; GtkWidget *delete1; GtkWidget *properties1; GtkWidget *image4995; GtkWidget *copy_project_to; GtkWidget *image2688; GtkWidget *compare_with1; GtkWidget *image2764; GtkWidget *project_changes; GtkWidget *image19115; GtkWidget *file_projects_merge; GtkWidget *projects_send_receive1; GtkWidget *image34440; GtkWidget *style; GtkWidget *image10735; GtkWidget *style_menu; GtkWidget *stylesheet_open; GtkWidget *image31346; GtkWidget *stylesheets_expand_all; GtkWidget *stylesheets_collapse_all; GtkWidget *style_insert; GtkWidget *stylesheet_edit_mode; GtkWidget *style_new; GtkWidget *style_properties; GtkWidget *style_delete; GtkWidget *menu_stylesheet; GtkWidget *menu_stylesheet_menu; GtkWidget *stylesheet_switch; GtkWidget *stylesheets_new; GtkWidget *stylesheets_delete; GtkWidget *stylesheets_rename; GtkWidget *notes2; GtkWidget *image936; GtkWidget *notes2_menu; GtkWidget *new_note; GtkWidget *delete_note; GtkWidget *image963; GtkWidget *consultation_notes_send_receive; GtkWidget *file_resources; GtkWidget *image27365; GtkWidget *file_resources_menu; GtkWidget *file_resources_open; GtkWidget *image27366; GtkWidget *file_resources_close; GtkWidget *image27367; GtkWidget *file_resources_new; GtkWidget *image27514; GtkWidget *file_resources_edit; GtkWidget *image27515; GtkWidget *file_resources_delete; GtkWidget *image27664; GtkWidget *file_keyterms; GtkWidget *image32231; GtkWidget *file_keyterms_menu; GtkWidget *keyterms_delete; GtkWidget *print; GtkWidget *file_import; GtkWidget *image36797; GtkWidget *file_export; GtkWidget *image35236; GtkWidget *file_backup; GtkWidget *image34724; GtkWidget *file_restore; GtkWidget *image34980; GtkWidget *close1; GtkWidget *quit1; GtkWidget *menuitem_edit; GtkWidget *menuitem_edit_menu; GtkWidget *cut1; GtkWidget *copy1; GtkWidget *copy_with_formatting; GtkWidget *image18220; GtkWidget *paste1; GtkWidget *separator2; GtkWidget *undo1; GtkWidget *image295; GtkWidget *redo1; GtkWidget *image296; GtkWidget *separator4; GtkWidget *find1; GtkWidget *find_and_replace1; GtkWidget *find_in_notes1; GtkWidget *image1430; GtkWidget *separator7; GtkWidget *get_references_from_note; GtkWidget *image3158; GtkWidget *separator15; GtkWidget *edit_revert; GtkWidget *image19262; GtkWidget *separator17; GtkWidget *edit_bible_note; GtkWidget *image20483; GtkWidget *separator21; GtkWidget *edit_planning; GtkWidget *image26801; GtkWidget *menuitem_view; GtkWidget *menuitem_view_menu; GtkWidget *view_font; GtkWidget *image20234; GtkWidget *view_font_menu; GtkWidget *view_text_font; GtkWidget *image20235; GtkWidget *viewnotes; GtkWidget *image2627; GtkWidget *view_usfm_code; GtkWidget *view_planning; GtkWidget *image26812; GtkWidget *view_references; GtkWidget *view_related_verses; GtkWidget *view_outline; GtkWidget *insert1; GtkWidget *insert1_menu; GtkWidget *insert_special_character; GtkWidget *insert_footnote; GtkWidget *insert_xref; GtkWidget *check1; GtkWidget *check1_menu; GtkWidget *chapters_and_verses1; GtkWidget *image5580; GtkWidget *markers1; GtkWidget *image5578; GtkWidget *markers1_menu; GtkWidget *validate_usfms1; GtkWidget *image5579; GtkWidget *count_usfms1; GtkWidget *image6239; GtkWidget *compare_usfm1; GtkWidget *image6748; GtkWidget *check_markers_spacing; GtkWidget *image17930; GtkWidget *characters1; GtkWidget *image6867; GtkWidget *characters1_menu; GtkWidget *count_characters; GtkWidget *image6868; GtkWidget *unwanted_patterns; GtkWidget *image7494; GtkWidget *check_words; GtkWidget *image7111; GtkWidget *check_words_menu; GtkWidget *check_capitalization; GtkWidget *image7112; GtkWidget *check_repetition; GtkWidget *image7238; GtkWidget *unwanted_words; GtkWidget *image7631; GtkWidget *word_count_inventory; GtkWidget *image13715; GtkWidget *check_punctuation; GtkWidget *image7366; GtkWidget *check_punctuation_menu; GtkWidget *check_matching_pairs; GtkWidget *image7367; GtkWidget *check_references; GtkWidget *image21826; GtkWidget *check_references_menu; GtkWidget *check_references_inventory; GtkWidget *image21827; GtkWidget *check_references_validate; GtkWidget *image21828; GtkWidget *checks_passages; GtkWidget *image24103; GtkWidget *checks_passages_menu; GtkWidget *check_nt_quotations_from_the_ot; GtkWidget *image24104; GtkWidget *synoptic_parallel_passages_from_the_nt; GtkWidget *image24105; GtkWidget *parallels_from_the_ot; GtkWidget *image24106; GtkWidget *check_key_terms; GtkWidget *my_checks; GtkWidget *image15438; GtkWidget *check_usfm; GtkWidget *check_spelling_error; GtkWidget *image34138; GtkWidget *check_spelling_error_menu; GtkWidget *check_spelling_error_next; GtkWidget *image34139; GtkWidget *check_spelling_error_previous; GtkWidget *image34140; GtkWidget *check_spelling_bulk; GtkWidget *image35887; GtkWidget *menutools; GtkWidget *menutools_menu; GtkWidget *notes_transfer; GtkWidget *image14659; GtkWidget *tool_origin_references_in_bible_notes; GtkWidget *image16248; GtkWidget *tool_project_notes_mass_update1; GtkWidget *image17187; GtkWidget *tool_generate_word_lists; GtkWidget *image20671; GtkWidget *tool_simple_text_corrections; GtkWidget *image21054; GtkWidget *tool_transfer_project_notes_to_text; GtkWidget *image29089; GtkWidget *tool_go_to_reference; GtkWidget *image36137; GtkWidget *tools_maintenance; GtkWidget *image36259; GtkWidget *menuitem_preferences; GtkWidget *menuitem_preferences_menu; GtkWidget *notes_preferences; GtkWidget *image2116; GtkWidget *printingprefs; GtkWidget *image3493; GtkWidget *reference_exchange1; GtkWidget *image5972; GtkWidget *prefs_books; GtkWidget *image12167; GtkWidget *preferences_windows_outpost; GtkWidget *image14287; GtkWidget *preferences_tidy_text; GtkWidget *image16359; GtkWidget *preferences_remote_repository; GtkWidget *image33654; GtkWidget *preferences_gui; GtkWidget *image20936; GtkWidget *preferences_password; GtkWidget *image20937; GtkWidget *preferences_text_replacement; GtkWidget *image23181; GtkWidget *pdf_viewer1; GtkWidget *image24540; GtkWidget *preferences_planning; GtkWidget *image26888; GtkWidget *preferences_filters; GtkWidget *image28360; GtkWidget *preferences_compare; GtkWidget *image32676; GtkWidget *menuitem_help; GtkWidget *menuitem_help_menu; GtkWidget *help_main; GtkWidget *image17520; GtkWidget *system_log1; GtkWidget *image4388; GtkWidget *about1; GtkWidget *toolbar; GtkWidget *scrolledwindow_layout; GtkWidget *layout; // Navigator object. GuiNavigation navigation; /* Initialization */ void enable_or_disable_widgets(bool enable); /* Menu window */ static void on_open1_activate(GtkMenuItem * menuitem, gpointer user_data); void open(); static void on_new1_activate(GtkMenuItem * menuitem, gpointer user_data); void newproject(); static void on_properties1_activate(GtkMenuItem * menuitem, gpointer user_data); void editproject(); static void on_delete1_activate(GtkMenuItem * menuitem, gpointer user_data); void deleteproject(); static void on_close1_activate(GtkMenuItem * menuitem, gpointer user_data); static void on_quit1_activate(GtkMenuItem * menuitem, gpointer user_data); static void on_system_log1_activate(GtkMenuItem * menuitem, gpointer user_data); void viewlog(); static void on_help_main_activate(GtkMenuItem * menuitem, gpointer user_data); void on_help_main(); static void on_about1_activate(GtkMenuItem * menuitem, gpointer user_data); void showabout(); static void on_undo1_activate(GtkMenuItem * menuitem, gpointer user_data); void menu_accelerator_undo(); static void on_redo1_activate(GtkMenuItem * menuitem, gpointer user_data); void menu_accelerator_redo(); static void on_edit1_activate(GtkMenuItem * menuitem, gpointer user_data); void menu_edit(); static void on_find_and_replace1_activate(GtkMenuItem * menuitem, gpointer user_data); void menu_replace(); static void on_findspecial1_activate(GtkMenuItem * menuitem, gpointer user_data); void menu_findspecial(); static void on_insert1_activate(GtkMenuItem *menuitem, gpointer user_data); void on_menu_insert(); static void on_notes_preferences_activate(GtkMenuItem *menuitem, gpointer user_data); void on_notes_preferences(); static void on_copy_project_to_activate(GtkMenuItem *menuitem, gpointer user_data); void on_copy_project_to(); static void on_compare_with1_activate(GtkMenuItem *menuitem, gpointer user_data); void on_compare_with(); static void on_printingprefs_activate(GtkMenuItem *menuitem, gpointer user_data); void on_printing_preferences(); static void on_prefs_books_activate(GtkMenuItem *menuitem, gpointer user_data); void on_prefs_books(); static void on_preferences_tidy_text_activate(GtkMenuItem *menuitem, gpointer user_data); void on_preferences_tidy_text(); static void on_tool_generate_word_lists_activate(GtkMenuItem *menuitem, gpointer user_data); void on_tool_generate_word_lists(); static void on_preferences_gui_activate(GtkMenuItem *menuitem, gpointer user_data); void on_preferences_gui(); static void on_preferences_password_activate(GtkMenuItem *menuitem, gpointer user_data); void on_preferences_password(); static void on_tool_simple_text_corrections_activate(GtkMenuItem *menuitem, gpointer user_data); void on_tool_simple_text_corrections(); static void on_preferences_text_replacement_activate(GtkMenuItem *menuitem, gpointer user_data); void on_preferences_text_replacement(); static void on_pdf_viewer1_activate(GtkMenuItem *menuitem, gpointer user_data); void on_pdf_viewer(); static void on_insert_special_character_activate(GtkMenuItem *menuitem, gpointer user_data); void on_insert_special_character(); static void on_preferences_compare_activate (GtkMenuItem *menuitem, gpointer user_data); void on_preferences_compare (); // Navigation static void on_navigation_new_reference_clicked(GtkButton *button, gpointer user_data); void on_navigation_new_reference(); void goto_next_verse(); void goto_previous_verse(); void goto_next_chapter(); void goto_previous_chapter(); void goto_next_book(); void goto_previous_book(); void goto_reference_interactive(); static void on_new_verse_signalled(GtkButton *button, gpointer user_data); void on_editor_another_verse(); void on_text_area_activate(); void on_tools_area_activate(); void on_notes_area_activate(); static void on_tool_go_to_reference_activate (GtkMenuItem *menuitem, gpointer user_data); /* Clipboard */ static void on_cut1_activate(GtkMenuItem * menuitem, gpointer user_data); void on_cut(); static void on_copy1_activate(GtkMenuItem * menuitem, gpointer user_data); void on_copy(); static void on_copy_with_formatting_activate(GtkMenuItem *menuitem, gpointer user_data); void on_copy_with_formatting(); static void on_paste1_activate(GtkMenuItem * menuitem, gpointer user_data); void on_paste(); /* References */ bool references_management_enabled; static void on_view_references_activate (GtkMenuItem *menuitem, gpointer user_data); void on_view_references (); void show_references_window(); WindowReferences * window_references; static void on_window_references_delete_button_clicked(GtkButton *button, gpointer user_data); void on_window_references_delete_button(); static void on_window_references_signal_button_clicked(GtkButton *button, gpointer user_data); void on_window_references_signal_button(); void on_next_reference(); void on_previous_reference(); static void on_show_quick_references_signal_button_clicked(GtkButton * button, gpointer user_data); void on_show_quick_references_signal_button(GtkButton * button); // Bibledit Windows Outpost // BibleTime WindowsOutpost * windowsoutpost; static void on_reference_exchange1_activate(GtkMenuItem *menuitem, gpointer user_data); void on_reference_exchange(); static void on_send_word_to_toolbox_signalled(GtkButton *button, gpointer user_data); void send_word_to_toolbox(); static void on_preferences_windows_outpost_activate(GtkMenuItem *menuitem, gpointer user_data); void on_preferences_windows_outpost(); static void on_tool_send_reference_activate (GtkMenuItem *menuitem, gpointer user_data); void on_tool_send_reference (); /* Project notes */ bool project_notes_enabled; bool project_notes_management_enabled; void view_project_notes(); WindowNotes * window_notes; static void on_window_notes_delete_button_clicked(GtkButton *button, gpointer user_data); void on_window_notes_delete_button(); static void on_new_note_activate(GtkMenuItem *menuitem, gpointer user_data); void on_new_note(); static void on_delete_note_activate(GtkMenuItem *menuitem, gpointer user_data); static void on_consultant_notes_send_receive_activate(GtkMenuItem *menuitem, gpointer user_data); void on_consultant_notes_send_receive (); static void on_viewnotes_activate(GtkMenuItem *menuitem, gpointer user_data); void on_view_notes(); void notes_redisplay(); static void on_find_in_notes1_activate(GtkMenuItem *menuitem, gpointer user_data); void find_in_notes(); void on_import_notes(); static void on_menuitem_view_activate(GtkMenuItem *menuitem, gpointer user_data); void on_menuitem_view(); static void on_get_references_from_note_activate(GtkMenuItem *menuitem, gpointer user_data); void on_get_references_from_note(); static void on_window_notes_references_available_button_clicked(GtkButton *button, gpointer user_data); void on_window_notes_references_available_button(); /* Export */ static void on_file_export_activate (GtkMenuItem *menuitem, gpointer user_data); void on_file_export (); ExportAssistant * export_assistant; /* Checks */ static void on_validate_usfms1_activate(GtkMenuItem *menuitem, gpointer user_data); void on_menu_check_markers_validate(); static void on_count_usfms1_activate(GtkMenuItem *menuitem, gpointer user_data); void on_menu_check_markers_count(); static void on_compare_usfm1_activate(GtkMenuItem *menuitem, gpointer user_data); void on_menu_check_markers_compare(); static void on_chapters_and_verses1_activate(GtkMenuItem *menuitem, gpointer user_data); void on_menu_check_chapters_and_verses(); static void on_count_characters_activate(GtkMenuItem *menuitem, gpointer user_data); void on_count_characters(); static void on_unwanted_patterns_activate(GtkMenuItem *menuitem, gpointer user_data); void on_unwanted_patterns(); static void on_check_capitalization_activate(GtkMenuItem *menuitem, gpointer user_data); void on_check_capitalization(); static void on_check_repetition_activate(GtkMenuItem *menuitem, gpointer user_data); void on_check_repetition(); static void on_check_matching_pairs_activate(GtkMenuItem *menuitem, gpointer user_data); void on_check_matching_pairs(); static void on_unwanted_words_activate(GtkMenuItem *menuitem, gpointer user_data); void on_unwanted_words(); static void on_word_count_inventory_activate(GtkMenuItem *menuitem, gpointer user_data); void on_word_count_inventory(); static bool on_check_httpd_timeout(gpointer data); void on_check_httpd(); static void on_my_checks_activate(GtkMenuItem *menuitem, gpointer user_data); void on_my_checks(); static void on_check_markers_spacing_activate(GtkMenuItem *menuitem, gpointer user_data); void on_check_markers_spacing(); static void on_check_references_inventory_activate(GtkMenuItem *menuitem, gpointer user_data); void on_check_references_inventory(); static void on_check_references_validate_activate(GtkMenuItem *menuitem, gpointer user_data); void on_check_references_validate(); static void on_check_nt_quotations_from_the_ot_activate(GtkMenuItem *menuitem, gpointer user_data); void on_check_nt_quotations_from_the_ot(); static void on_synoptic_parallel_passages_from_the_nt_activate(GtkMenuItem *menuitem, gpointer user_data); void on_synoptic_parallel_passages_from_the_nt(); static void on_parallels_from_the_ot_activate(GtkMenuItem *menuitem, gpointer user_data); void on_parallels_from_the_ot(); static void on_check_spelling_error_next_activate (GtkMenuItem *menuitem, gpointer user_data); static void on_check_spelling_error_previous_activate (GtkMenuItem *menuitem, gpointer user_data); void on_check_spelling_error(bool next, bool extremity); static void on_editor_spelling_checked_button_clicked(GtkButton *button, gpointer user_data); void on_editor_spelling_checked_button(); bool check_spelling_at_start; bool check_spelling_at_end; static void on_check_spelling_bulk_activate (GtkMenuItem *menuitem, gpointer user_data); void on_check_spelling_bulk (); /* Styles */ static void on_stylesheet_open_activate(GtkMenuItem *menuitem, gpointer user_data); void on_stylesheet_open(); void on_goto_styles_area(); void display_window_styles(); WindowStyles * window_styles; static void on_window_styles_delete_button_clicked(GtkButton *button, gpointer user_data); void on_window_styles_delete_button(); void stylesheet_open_named(const ustring& stylesheet); static void on_style_button_open_clicked(GtkButton *button, gpointer user_data); void on_style_button_open(); static void on_style_button_apply_clicked(GtkButton *button, gpointer user_data); void on_style_apply (ustring marker = ""); static void on_editor_style_changed(GtkButton *button, gpointer user_data); void editor_style_changed(); static void on_style_edited(GtkButton *button, gpointer user_data); void reload_styles(); bool style_management_enabled; /* Footnotes, endnotes, crossreferences */ static void on_edit_bible_note_activate(GtkMenuItem *menuitem, gpointer user_data); void on_edit_bible_note(); static void on_insert_footnote_activate(GtkMenuItem *menuitem, gpointer user_data); static void on_insert_xref_activate(GtkMenuItem *menuitem, gpointer user_data); /* Tools */ static void on_menutools_activate(GtkMenuItem *menuitem, gpointer user_data); static void on_notes_transfer_activate(GtkMenuItem *menuitem, gpointer user_data); void on_notes_transfer(); static void on_tool_origin_references_in_bible_notes_activate(GtkMenuItem *menuitem, gpointer user_data); void on_tool_origin_references_in_bible_notes(); static void on_tool_project_notes_mass_update1_activate(GtkMenuItem *menuitem, gpointer user_data); void on_tool_project_notes_mass_update(); static void on_tool_transfer_project_notes_to_text_activate(GtkMenuItem *menuitem, gpointer user_data); void on_tool_transfer_project_notes_to_text(); static void on_tools_maintenance_activate (GtkMenuItem *menuitem, gpointer user_data); void on_tools_maintenance (); /* Webserver */ Httpd httpd; /* Keyterms */ static void on_check_key_terms_activate(GtkMenuItem *menuitem, gpointer user_data); void on_check_key_terms(); WindowCheckKeyterms * window_check_keyterms; static void on_window_check_keyterms_delete_button_clicked(GtkButton *button, gpointer user_data); void on_window_check_keyterms_delete_button(); static void on_keyterms_signal_button_clicked(GtkButton *button, gpointer user_data); void keyterms_check_action(); static void on_view_related_verses_activate(GtkMenuItem *menuitem, gpointer user_data); void on_view_related_verses(); WindowShowRelatedVerses * window_show_related_verses; static void on_window_show_related_verses_delete_button_clicked(GtkButton *button, gpointer user_data); void on_window_show_related_verses_delete_button(); static void on_window_show_related_verses_item_button_clicked(GtkButton *button, gpointer user_data); void on_window_show_related_verses_item_button(); void on_keyterms_import (); ImportKeytermsAssistant * import_keyterms_assistant; static void on_keyterms_delete_activate (GtkMenuItem *menuitem, gpointer user_data); void on_keyterms_delete (); DeleteKeytermsAssistant * delete_keyterms_assistant; /* Backup and restore */ static void on_file_backup_activate (GtkMenuItem *menuitem, gpointer user_data); void on_file_backup (); BackupAssistant * backup_assistant; static void on_file_restore_activate (GtkMenuItem *menuitem, gpointer user_data); void on_file_restore (); RestoreAssistant * restore_assistant; /* Git */ static void on_preferences_remote_repository_activate (GtkMenuItem *menuitem, gpointer user_data); void on_preferences_remote_repository(); RemoteRepositoryAssistant * remote_repository_assistant; static void on_project_changes_activate(GtkMenuItem *menuitem, gpointer user_data); void on_project_changes(); ChangesAssistant * changes_assistant; static void on_edit_revert_activate(GtkMenuItem *menuitem, gpointer user_data); void on_edit_revert(); static void on_projects_send_receive1_activate (GtkMenuItem *menuitem, gpointer user_data); void on_projects_send_receive (); /* Fonts */ static void on_view_text_font_activate(GtkMenuItem * menuitem, gpointer user_data); void on_text_font(); void set_fonts(); /* Outline */ static void on_view_outline_activate(GtkMenuItem *menuitem, gpointer user_data); void on_view_outline(); WindowOutline * window_outline; static void on_window_outline_delete_button_clicked(GtkButton *button, gpointer user_data); void on_window_outline_delete_button(); static void on_button_outline_clicked(GtkButton *button, gpointer user_data); void on_button_outline(); /* Planning */ static void on_edit_planning_activate(GtkMenuItem *menuitem, gpointer user_data); void on_edit_planning(); static void on_view_planning_activate(GtkMenuItem *menuitem, gpointer user_data); void on_view_planning(); static void on_preferences_planning_activate(GtkMenuItem *menuitem, gpointer user_data); void on_preferences_planning(); /* Resources */ vector resource_windows; static void on_window_resource_delete_button_clicked(GtkButton *button, gpointer user_data); void on_window_resource_delete_button(GtkButton *button); WindowResource * last_focused_resource_window(); static void on_file_resources_activate(GtkMenuItem *menuitem, gpointer user_data); void on_file_resources(); static void on_file_resources_open_activate(GtkMenuItem *menuitem, gpointer user_data); void on_file_resources_open(ustring resource, bool startup); static void on_file_resources_close_activate(GtkMenuItem *menuitem, gpointer user_data); void on_file_resources_close(); static void on_file_resources_new_activate(GtkMenuItem *menuitem, gpointer user_data); void on_file_resources_new(); static void on_file_resources_edit_activate(GtkMenuItem *menuitem, gpointer user_data); void on_file_resources_edit(); static void on_file_resources_delete_activate(GtkMenuItem *menuitem, gpointer user_data); void on_file_resources_delete(); ResourceAssistant * resource_assistant; /* Text Editors */ vector editor_windows; static void on_window_editor_delete_button_clicked(GtkButton *button, gpointer user_data); void on_window_editor_delete_button(GtkButton *button); WindowEditor * last_focused_editor_window(); void on_file_project_open(const ustring& project, bool startup); void handle_editor_focus(); ustring previously_focused_project_name; void save_editors(); void goto_next_previous_project(bool next); static void on_editor_reload_clicked(GtkButton *button, gpointer user_data); static void on_editor_changed_clicked(GtkButton *button, gpointer user_data); void on_editor_changed(); static void on_view_usfm_code_activate(GtkMenuItem *menuitem, gpointer user_data); void on_view_usfm_code(); void reload_all_editors(bool take_chapter_from_focused_editor); /* Merge */ static void on_file_projects_merge_activate(GtkMenuItem *menuitem, gpointer user_data); void on_file_projects_merge(); WindowMerge * window_merge; static void on_window_merge_delete_button_clicked(GtkButton *button, gpointer user_data); void on_window_merge_delete_button(); static void on_merge_window_get_text_button_clicked(GtkButton *button, gpointer user_data); void on_merge_window_get_text_button(); static void on_merge_window_new_reference_button_clicked(GtkButton *button, gpointer user_data); void on_merge_window_new_reference_button(); static void on_merge_window_save_editors_button_clicked(GtkButton *button, gpointer user_data); void on_merge_window_save_editors_button(); /* Diglot */ static void on_preferences_filters_activate(GtkMenuItem *menuitem, gpointer user_data); void on_preferences_filters(); /* Print */ static void on_print_activate(GtkMenuItem *menuitem, gpointer user_data); void on_print(); // Accelerators. static void accelerator_undo_callback(gpointer user_data); static void accelerator_redo_callback(gpointer user_data); static void accelerator_cut_callback(gpointer user_data); static void accelerator_copy_callback(gpointer user_data); static void accelerator_paste_callback(gpointer user_data); static void accelerator_new_project_note_callback(gpointer user_data); static void accelerator_next_verse_callback(gpointer user_data); static void accelerator_previous_verse_callback(gpointer user_data); static void accelerator_next_chapter_callback(gpointer user_data); static void accelerator_previous_chapter_callback(gpointer user_data); static void accelerator_next_book_callback(gpointer user_data); static void accelerator_previous_book_callback(gpointer user_data); static void accelerator_next_reference_in_history_callback(gpointer user_data); void accelerator_next_reference_in_history(); static void accelerator_previous_reference_in_history_callback(gpointer user_data); void accelerator_previous_reference_in_history(); static void accelerator_go_to_reference_callback(gpointer user_data); static void accelerator_close_window_callback(gpointer user_data); void accelerator_close_window(); static void accelerator_goto_styles_area_callback(gpointer user_data); static void accelerator_quit_program_callback(gpointer user_data); static void accelerator_activate_text_area_callback(gpointer user_data); static void accelerator_activate_tools_area_callback(gpointer user_data); static void accelerator_activate_notes_area_callback(gpointer user_data); static void accelerator_next_reference_in_reference_area_callback(gpointer user_data); static void accelerator_previous_reference_in_reference_area_callback(gpointer user_data); static void accelerator_next_project_callback(gpointer user_data); static void accelerator_previous_project_callback(gpointer user_data); static void accelerator_open_project_callback(gpointer user_data); static void accelerator_print_callback(gpointer user_data); static void accelerator_find_callback(gpointer user_data); static void accelerator_replace_callback(gpointer user_data); static void accelerator_main_help_callback(gpointer user_data); static void accelerator_view_usfm_code(gpointer user_data); void accelerator_view_usfm_code_toggle(); // Shutdown. bool shutting_down; static bool on_window_delete_event(GtkWidget *widget, GdkEvent *event, gpointer user_data); void initiate_shutdown(); // Assistants. static void on_assistant_ready_signal (GtkButton *button, gpointer user_data); void on_assistant_ready (); // Check USFM static void on_check_usfm_activate (GtkMenuItem *menuitem, gpointer user_data); void on_check_usfm (); WindowCheckUSFM * window_check_usfm; static void on_window_check_usfm_delete_button_clicked(GtkButton *button, gpointer user_data); void on_window_check_usfm_delete_button(); void check_usfm_window_ping(); /* Import */ static void on_file_import_activate (GtkMenuItem *menuitem, gpointer user_data); void on_file_import (); ImportAssistant * import_assistant; /* Floating windows */ static void on_scrolledwindow_layout_size_allocate (GtkWidget *widget, GdkRectangle *allocation, gpointer user_data); void scrolledwindow_layout_size_allocate (GdkRectangle *allocation); ustring focused_project_last_session; static bool on_windows_startup_timeout(gpointer data); bool on_windows_startup(); unsigned int windows_startup_pointer; static void on_window_focus_button_clicked(GtkButton *button, gpointer user_data); void on_window_focus_button(GtkButton *button); GtkWidget * focused_editor_button; GtkWidget * focused_resource_button; GtkWidget * focused_tool_button; void store_last_focused_tool_button (GtkButton * button); void shutdown_windows(); // Interprocess communications. guint interprocess_communications_initiate_listener_event_id; guint interprocess_communications_initiate_listener_message_id; static bool on_interprocess_communications_initiate_listener_timeout(gpointer data); void interprocess_communications_initiate_listener (); static void on_interprocess_communications_listener_button_clicked(GtkButton *button, gpointer user_data); void on_interprocess_communications_listener_button(GtkButton *button); }; #endif bibledit-gtk-4.9/src/Makefile.am000644 000766 000024 00000026256 12455172335 016720 0ustar00teusstaff000000 000000 bin_PROGRAMS = bibledit-gtk bibledit-rdwrt bibledit_gtk_SOURCES = \ bibledit.cpp \ utilities.cpp \ tiny_utilities.cpp \ bible.cpp \ usfmtools.cpp \ mainwindow.cpp \ dialoglistview.cpp \ dialogsystemlog.cpp \ htmlbrowser.cpp \ track.cpp \ dialogreplace.cpp \ dialogreplacing.cpp \ windowsoutpost.cpp \ dialoggotoreference.cpp \ projectutils.cpp \ dialogproject.cpp \ usfm.cpp \ dialogwait.cpp \ directories.cpp \ ustring.cpp \ dialogsearchspecial.cpp \ referenceutils.cpp \ pdfviewer.cpp \ notes_utils.cpp \ date_time_utils.cpp \ dialogfindnote.cpp \ dialogimportnotes.cpp \ dialognotes.cpp \ dialogentry.cpp \ dialogcompare.cpp \ compareutils.cpp \ export_utils.cpp \ bibletime.cpp \ dialogprintprefs.cpp \ paper.cpp \ xmlutils.cpp \ dialogprintproject.cpp \ stylesheetutils.cpp \ dialogstylesheet.cpp \ style.cpp \ dialogentry3.cpp \ printproject.cpp \ xmlfo-utils.cpp \ search_utils.cpp \ dialogshownotes.cpp \ dialogdate.cpp \ gwrappers.cpp \ gtkwrappers.cpp \ usfm-inline-markers.cpp \ completion.cpp \ combobox.cpp \ keyboard.cpp \ listview.cpp \ scripturechecks.cpp \ versification.cpp \ dialogrefexchange.cpp \ dialogcheck.cpp \ dialogeditlist.cpp \ shell.cpp \ export_translation_notes.cpp \ sqlite_reader.cpp \ dialogarea.cpp \ unixwrappers.cpp \ highlight.cpp \ dialogopenstylesheet.cpp \ note_editor.cpp \ notecaller.cpp \ xslfofootnoteparagraph.cpp \ dialoginsertnote.cpp \ notetemplate.cpp \ dialogparallelbible.cpp \ print_parallel_bible.cpp \ mapping.cpp \ swordnote.cpp \ dialogselectchapters.cpp \ portion_utils.cpp \ scriptureportions.cpp \ uname.cpp \ layout.cpp \ import.cpp \ clean.cpp \ categorize.cpp \ progresswindow.cpp \ books.cpp \ dialogbook.cpp \ generalconfig.cpp \ screen.cpp \ projectconfig.cpp \ gui.cpp \ check_validate_usfm.cpp \ checks.cpp \ check_count_words.cpp \ dialogoutpost.cpp \ dialognotestransfer.cpp \ dialogchapternumber.cpp \ httpd.cpp \ opendocument.cpp \ odtutils.cpp \ odtnotes.cpp \ help.cpp \ color.cpp \ dialogmychecks.cpp \ check_count_usfms.cpp \ check_count_characters.cpp \ check_chapters_verses.cpp \ check_compare_usfm.cpp \ check_unwanted_patterns.cpp \ check_unwanted_words.cpp \ check_repetition.cpp \ check_capitalization.cpp \ check_matching_pairs.cpp \ rc4.c \ dialogoriginreferences.cpp \ originreferences.cpp \ dialogtidy.cpp \ tidy.cpp \ shortcuts.cpp \ upgrade.cpp \ reference.cpp \ keyterms.cpp \ dialognotesupdate.cpp \ guiselectproject.cpp \ check_markers_spacing.cpp \ gui_navigation.cpp \ myfnmatch.c \ statistics.cpp \ backup.cpp \ dialogrevert.cpp \ dialogselectbooks.cpp \ resource_utils.cpp \ html.cpp \ dialogreviewanchors.cpp \ dialogeditnote.cpp \ biblenotes.cpp \ dialogwordlist.cpp \ wordlist.cpp \ dialogfontcolor.cpp \ dialognewstylesheet.cpp \ outline.cpp \ settings.cpp \ session.cpp \ session_highlights.cpp \ bookdata.cpp \ config.xml.cpp \ localizedbooks.cpp \ versifications.cpp \ mappings.cpp \ dialoggui.cpp \ password.cpp \ gui_features.cpp \ dialogprintreferences.cpp \ print_parallel_references.cpp \ dialogfixmarkers.cpp \ fixmarkers.cpp \ check_ref_inventory.cpp \ check_validate_refs.cpp \ dialogtextreplacement.cpp \ textreplacement.cpp \ temporal.cpp \ ot-quotations.cpp \ parallel_passages.cpp \ ot-nt-parallels.cpp \ check_parallel_passages.cpp \ dialogpdfviewer.cpp \ displayprojectnotes.cpp \ styles.cpp \ editor_aids.cpp \ dialoginserttable.cpp \ git.cpp \ usfm2xslfo_utils.cpp \ hyphenate.cpp \ reporting.cpp \ planning.cpp \ dialogeditstatus.cpp \ dialogtaskduration.cpp \ htmlwriter.cpp \ dialogviewplanning.cpp \ dialogplanningsetup.cpp \ resource.cpp \ dialogbooknames.cpp \ dialogradiobutton.cpp \ dialogresourceconverter.cpp \ resource_conversion_utils.cpp \ convert.cpp \ textviewer.cpp \ roman.cpp \ project_memory.cpp \ dialogmerge.cpp \ merge_utils.cpp \ maintenance.cpp \ scripts.cpp \ dialogfilters.cpp \ dialogdictionary.cpp \ spelling.cpp \ dialogeditdictionary.cpp \ check_sentence_structure.cpp \ dialogcheckbutton.cpp \ dialogxfernotes2text.cpp \ text2pdf.cpp \ text2pdf_utils.cpp \ text2pdf_area.cpp \ text2pdf_ref_area.cpp \ text2pdf_block.cpp \ text2pdf_page.cpp \ text2pdf_input.cpp \ text2pdf_layout.cpp \ text2pdf_big_block.cpp \ text2pdf_intermediate.cpp \ usfm2text.cpp \ dialogtext2pdf.cpp \ windowshowrelatedverses.cpp \ windowmerge.cpp \ windowresource.cpp \ windowoutline.cpp \ windowcheckkeyterms.cpp \ windowstyles.cpp \ windownotes.cpp \ dialogprojectnote.cpp \ windowreferences.cpp \ windoweditor.cpp \ compress.cpp \ localizednumerals.cpp \ assistantimportkeyterms.cpp \ assistants.cpp \ assistantdeletekeyterms.cpp \ assistantchanges.cpp \ widgetdate.cpp \ usfmview.cpp \ dialogcompareprefs.cpp \ windowcheckusfm.cpp \ usfm2osis.cpp \ usfmstandard.cpp \ osis.cpp \ assistantremoterepository.cpp \ gui_display_changes.cpp \ stylesheet.cpp \ referencememory.cpp \ webkitbrowser.cpp \ assistantresource.cpp \ snapshots.cpp \ windowtimednotifier.cpp \ assistantbackup.cpp \ assistantrestore.cpp \ restore.cpp \ guiselectbibles.cpp \ assistantexport.cpp \ java.cpp \ dialogbulkspelling.cpp \ dialogplanningedit.cpp \ dialoglistviewm.cpp \ htmlwriter2.cpp \ dialogmaintenance.cpp \ kjv.cpp \ assistantimport.cpp \ mechonmamre.cpp \ bibleworks.cpp \ onlinebible.cpp \ robinson.cpp \ morphology.cpp \ greek.cpp \ startup.cpp \ dialogyesnoalways.cpp \ floatingwindow.cpp \ windowdata.cpp \ editor.cpp \ editoractions.cpp \ nanohttp.cpp \ urltransport.cpp \ dialogreferencesettings.cpp \ printproject2.cpp \ usfm2xetex.cpp \ xetex2pdf.cpp \ runtime.cpp \ xetex.cpp \ dialogxetex.cpp \ paratext.cpp \ vcs.cpp \ git-exec.cpp bibledit_rdwrt_SOURCES = \ bibledit-rdwrt.cpp \ utilities.cpp \ tiny_utilities.cpp \ bible.cpp \ usfmtools.cpp \ dialoglistview.cpp \ dialogsystemlog.cpp \ htmlbrowser.cpp \ track.cpp \ windowsoutpost.cpp \ projectutils.cpp \ usfm.cpp \ dialogwait.cpp \ directories.cpp \ ustring.cpp \ referenceutils.cpp \ pdfviewer.cpp \ notes_utils.cpp \ date_time_utils.cpp \ dialogentry.cpp \ export_utils.cpp \ paper.cpp \ xmlutils.cpp \ stylesheetutils.cpp \ dialogstylesheet.cpp \ style.cpp \ dialogentry3.cpp \ printproject.cpp \ xmlfo-utils.cpp \ dialogdate.cpp \ gwrappers.cpp \ gtkwrappers.cpp \ usfm-inline-markers.cpp \ completion.cpp \ combobox.cpp \ keyboard.cpp \ listview.cpp \ scripturechecks.cpp \ versification.cpp \ dialogcheck.cpp \ dialogeditlist.cpp \ shell.cpp \ export_translation_notes.cpp \ sqlite_reader.cpp \ dialogarea.cpp \ unixwrappers.cpp \ highlight.cpp \ dialogopenstylesheet.cpp \ note_editor.cpp \ notecaller.cpp \ xslfofootnoteparagraph.cpp \ notetemplate.cpp \ print_parallel_bible.cpp \ mapping.cpp \ swordnote.cpp \ dialogselectchapters.cpp \ portion_utils.cpp \ scriptureportions.cpp \ uname.cpp \ import.cpp \ clean.cpp \ categorize.cpp \ progresswindow.cpp \ books.cpp \ dialogbook.cpp \ generalconfig.cpp \ screen.cpp \ projectconfig.cpp \ gui.cpp \ check_validate_usfm.cpp \ checks.cpp \ check_count_words.cpp \ httpd.cpp \ opendocument.cpp \ odtutils.cpp \ odtnotes.cpp \ help.cpp \ color.cpp \ check_count_usfms.cpp \ check_count_characters.cpp \ check_chapters_verses.cpp \ check_compare_usfm.cpp \ check_unwanted_patterns.cpp \ check_unwanted_words.cpp \ check_repetition.cpp \ check_capitalization.cpp \ check_matching_pairs.cpp \ originreferences.cpp \ tidy.cpp \ shortcuts.cpp \ reference.cpp \ keyterms.cpp \ guiselectproject.cpp \ check_markers_spacing.cpp \ myfnmatch.c \ statistics.cpp \ backup.cpp \ dialogselectbooks.cpp \ resource_utils.cpp \ html.cpp \ dialogeditnote.cpp \ biblenotes.cpp \ wordlist.cpp \ dialognewstylesheet.cpp \ outline.cpp \ settings.cpp \ session.cpp \ session_highlights.cpp \ bookdata.cpp \ config.xml.cpp \ localizedbooks.cpp \ versifications.cpp \ mappings.cpp \ password.cpp \ gui_features.cpp \ print_parallel_references.cpp \ fixmarkers.cpp \ check_ref_inventory.cpp \ check_validate_refs.cpp \ textreplacement.cpp \ temporal.cpp \ ot-quotations.cpp \ parallel_passages.cpp \ ot-nt-parallels.cpp \ check_parallel_passages.cpp \ displayprojectnotes.cpp \ styles.cpp \ editor_aids.cpp \ git.cpp \ usfm2xslfo_utils.cpp \ hyphenate.cpp \ reporting.cpp \ planning.cpp \ dialogeditstatus.cpp \ htmlwriter.cpp \ resource.cpp \ dialogbooknames.cpp \ dialogradiobutton.cpp \ dialogresourceconverter.cpp \ resource_conversion_utils.cpp \ convert.cpp \ roman.cpp \ project_memory.cpp \ dialogmerge.cpp \ merge_utils.cpp \ maintenance.cpp \ scripts.cpp \ spelling.cpp \ check_sentence_structure.cpp \ dialogcheckbutton.cpp \ text2pdf.cpp \ text2pdf_utils.cpp \ text2pdf_area.cpp \ text2pdf_ref_area.cpp \ text2pdf_block.cpp \ text2pdf_page.cpp \ text2pdf_input.cpp \ text2pdf_layout.cpp \ text2pdf_big_block.cpp \ text2pdf_intermediate.cpp \ usfm2text.cpp \ dialogtext2pdf.cpp \ windowreferences.cpp \ compress.cpp \ localizednumerals.cpp \ widgetdate.cpp \ usfm2osis.cpp \ usfmstandard.cpp \ osis.cpp \ gui_display_changes.cpp \ stylesheet.cpp \ referencememory.cpp \ webkitbrowser.cpp \ snapshots.cpp \ windowtimednotifier.cpp \ restore.cpp \ guiselectbibles.cpp \ java.cpp \ dialoglistviewm.cpp \ htmlwriter2.cpp \ kjv.cpp \ mechonmamre.cpp \ bibleworks.cpp \ onlinebible.cpp \ robinson.cpp \ morphology.cpp \ greek.cpp \ startup.cpp \ dialogyesnoalways.cpp \ floatingwindow.cpp \ windowdata.cpp \ editor.cpp \ editoractions.cpp \ nanohttp.cpp \ urltransport.cpp \ dialogreferencesettings.cpp \ printproject2.cpp \ usfm2xetex.cpp \ xetex2pdf.cpp \ runtime.cpp \ xetex.cpp \ paratext.cpp \ vcs.cpp \ git-exec.cpp \ readwrite.cpp EXTRA_DIST = *.h .indent.pro update-copyright AM_CXXFLAGS = -Wall -g -std=c++11 AM_CXXFLAGS += `xml2-config --cflags` AM_CXXFLAGS += $(GOBJECT_CFLAGS) AM_CXXFLAGS += $(GTHREAD_CFLAGS) AM_CXXFLAGS += $(GLIB_CFLAGS) AM_CXXFLAGS += $(GTK_CFLAGS) AM_CXXFLAGS += $(SQLITE_CFLAGS) AM_CXXFLAGS += $(ENCHANT_CFLAGS) AM_CXXFLAGS += $(GTKSOURCEVIEW_CFLAGS) AM_CXXFLAGS += $(WEBKIT_CFLAGS) AM_CXXFLAGS += $(DBUSGLIB_CFLAGS) AM_CXXFLAGS += $(LIBSOUP_CFLAGS) AM_CXXFLAGS += "-DGTK_DISABLE_SINGLE_INCLUDES" AM_CXXFLAGS += "-DGDK_DISABLE_DEPRECATED -DGTK_DISABLE_DEPRECATED" AM_CXXFLAGS += "-DGSEAL_ENABLE" AM_CXXFLAGS += "-DGLIB_DISABLE_DEPRECATION_WARNINGS" LIBS = -Wall LIBS += `xml2-config --libs` LIBS += $(GOBJECT_LIBS) LIBS += $(GTHREAD_LIBS) LIBS += $(GLIB_LIBS) LIBS += $(GTK_LIBS) LIBS += $(SQLITE_LIBS) LIBS += $(ENCHANT_LIBS) LIBS += $(GTKSOURCEVIEW_LIBS) LIBS += $(WEBKIT_LIBS) LIBS += $(DBUSGLIB_LIBS) LIBS += $(LIBSOUP_LIBS) if LINUX endif if DARWIN endif if WIN32 LIBS += -mwindows -lws2_32 endif CLEANFILES = *~ bibledit-gtk-4.9/src/Makefile.in000644 000766 000024 00000177433 12517415675 016743 0ustar00teusstaff000000 000000 # Makefile.in generated by automake 1.15 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2014 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ am__is_gnu_make = { \ if test -z '$(MAKELEVEL)'; then \ false; \ elif test -n '$(MAKE_HOST)'; then \ true; \ elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ true; \ else \ false; \ fi; \ } am__make_running_with_option = \ case $${target_option-} in \ ?) ;; \ *) echo "am__make_running_with_option: internal error: invalid" \ "target option '$${target_option-}' specified" >&2; \ exit 1;; \ esac; \ has_opt=no; \ sane_makeflags=$$MAKEFLAGS; \ if $(am__is_gnu_make); then \ sane_makeflags=$$MFLAGS; \ else \ case $$MAKEFLAGS in \ *\\[\ \ ]*) \ bs=\\; \ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ esac; \ fi; \ skip_next=no; \ strip_trailopt () \ { \ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ }; \ for flg in $$sane_makeflags; do \ test $$skip_next = yes && { skip_next=no; continue; }; \ case $$flg in \ *=*|--*) continue;; \ -*I) strip_trailopt 'I'; skip_next=yes;; \ -*I?*) strip_trailopt 'I';; \ -*O) strip_trailopt 'O'; skip_next=yes;; \ -*O?*) strip_trailopt 'O';; \ -*l) strip_trailopt 'l'; skip_next=yes;; \ -*l?*) strip_trailopt 'l';; \ -[dEDm]) skip_next=yes;; \ -[JT]) skip_next=yes;; \ esac; \ case $$flg in \ *$$target_option*) has_opt=yes; break;; \ esac; \ done; \ test $$has_opt = yes am__make_dryrun = (target_option=n; $(am__make_running_with_option)) am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ target_triplet = @target@ bin_PROGRAMS = bibledit-gtk$(EXEEXT) bibledit-rdwrt$(EXEEXT) @WIN32_TRUE@am__append_1 = -mwindows -lws2_32 subdir = src ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = am__installdirs = "$(DESTDIR)$(bindir)" PROGRAMS = $(bin_PROGRAMS) am_bibledit_gtk_OBJECTS = bibledit.$(OBJEXT) utilities.$(OBJEXT) \ tiny_utilities.$(OBJEXT) bible.$(OBJEXT) usfmtools.$(OBJEXT) \ mainwindow.$(OBJEXT) dialoglistview.$(OBJEXT) \ dialogsystemlog.$(OBJEXT) htmlbrowser.$(OBJEXT) \ track.$(OBJEXT) dialogreplace.$(OBJEXT) \ dialogreplacing.$(OBJEXT) windowsoutpost.$(OBJEXT) \ dialoggotoreference.$(OBJEXT) projectutils.$(OBJEXT) \ dialogproject.$(OBJEXT) usfm.$(OBJEXT) dialogwait.$(OBJEXT) \ directories.$(OBJEXT) ustring.$(OBJEXT) \ dialogsearchspecial.$(OBJEXT) referenceutils.$(OBJEXT) \ pdfviewer.$(OBJEXT) notes_utils.$(OBJEXT) \ date_time_utils.$(OBJEXT) dialogfindnote.$(OBJEXT) \ dialogimportnotes.$(OBJEXT) dialognotes.$(OBJEXT) \ dialogentry.$(OBJEXT) dialogcompare.$(OBJEXT) \ compareutils.$(OBJEXT) export_utils.$(OBJEXT) \ bibletime.$(OBJEXT) dialogprintprefs.$(OBJEXT) paper.$(OBJEXT) \ xmlutils.$(OBJEXT) dialogprintproject.$(OBJEXT) \ stylesheetutils.$(OBJEXT) dialogstylesheet.$(OBJEXT) \ style.$(OBJEXT) dialogentry3.$(OBJEXT) printproject.$(OBJEXT) \ xmlfo-utils.$(OBJEXT) search_utils.$(OBJEXT) \ dialogshownotes.$(OBJEXT) dialogdate.$(OBJEXT) \ gwrappers.$(OBJEXT) gtkwrappers.$(OBJEXT) \ usfm-inline-markers.$(OBJEXT) completion.$(OBJEXT) \ combobox.$(OBJEXT) keyboard.$(OBJEXT) listview.$(OBJEXT) \ scripturechecks.$(OBJEXT) versification.$(OBJEXT) \ dialogrefexchange.$(OBJEXT) dialogcheck.$(OBJEXT) \ dialogeditlist.$(OBJEXT) shell.$(OBJEXT) \ export_translation_notes.$(OBJEXT) sqlite_reader.$(OBJEXT) \ dialogarea.$(OBJEXT) unixwrappers.$(OBJEXT) \ highlight.$(OBJEXT) dialogopenstylesheet.$(OBJEXT) \ note_editor.$(OBJEXT) notecaller.$(OBJEXT) \ xslfofootnoteparagraph.$(OBJEXT) dialoginsertnote.$(OBJEXT) \ notetemplate.$(OBJEXT) dialogparallelbible.$(OBJEXT) \ print_parallel_bible.$(OBJEXT) mapping.$(OBJEXT) \ swordnote.$(OBJEXT) dialogselectchapters.$(OBJEXT) \ portion_utils.$(OBJEXT) scriptureportions.$(OBJEXT) \ uname.$(OBJEXT) layout.$(OBJEXT) import.$(OBJEXT) \ clean.$(OBJEXT) categorize.$(OBJEXT) progresswindow.$(OBJEXT) \ books.$(OBJEXT) dialogbook.$(OBJEXT) generalconfig.$(OBJEXT) \ screen.$(OBJEXT) projectconfig.$(OBJEXT) gui.$(OBJEXT) \ check_validate_usfm.$(OBJEXT) checks.$(OBJEXT) \ check_count_words.$(OBJEXT) dialogoutpost.$(OBJEXT) \ dialognotestransfer.$(OBJEXT) dialogchapternumber.$(OBJEXT) \ httpd.$(OBJEXT) opendocument.$(OBJEXT) odtutils.$(OBJEXT) \ odtnotes.$(OBJEXT) help.$(OBJEXT) color.$(OBJEXT) \ dialogmychecks.$(OBJEXT) check_count_usfms.$(OBJEXT) \ check_count_characters.$(OBJEXT) \ check_chapters_verses.$(OBJEXT) check_compare_usfm.$(OBJEXT) \ check_unwanted_patterns.$(OBJEXT) \ check_unwanted_words.$(OBJEXT) check_repetition.$(OBJEXT) \ check_capitalization.$(OBJEXT) check_matching_pairs.$(OBJEXT) \ rc4.$(OBJEXT) dialogoriginreferences.$(OBJEXT) \ originreferences.$(OBJEXT) dialogtidy.$(OBJEXT) tidy.$(OBJEXT) \ shortcuts.$(OBJEXT) upgrade.$(OBJEXT) reference.$(OBJEXT) \ keyterms.$(OBJEXT) dialognotesupdate.$(OBJEXT) \ guiselectproject.$(OBJEXT) check_markers_spacing.$(OBJEXT) \ gui_navigation.$(OBJEXT) myfnmatch.$(OBJEXT) \ statistics.$(OBJEXT) backup.$(OBJEXT) dialogrevert.$(OBJEXT) \ dialogselectbooks.$(OBJEXT) resource_utils.$(OBJEXT) \ html.$(OBJEXT) dialogreviewanchors.$(OBJEXT) \ dialogeditnote.$(OBJEXT) biblenotes.$(OBJEXT) \ dialogwordlist.$(OBJEXT) wordlist.$(OBJEXT) \ dialogfontcolor.$(OBJEXT) dialognewstylesheet.$(OBJEXT) \ outline.$(OBJEXT) settings.$(OBJEXT) session.$(OBJEXT) \ session_highlights.$(OBJEXT) bookdata.$(OBJEXT) \ config.xml.$(OBJEXT) localizedbooks.$(OBJEXT) \ versifications.$(OBJEXT) mappings.$(OBJEXT) \ dialoggui.$(OBJEXT) password.$(OBJEXT) gui_features.$(OBJEXT) \ dialogprintreferences.$(OBJEXT) \ print_parallel_references.$(OBJEXT) dialogfixmarkers.$(OBJEXT) \ fixmarkers.$(OBJEXT) check_ref_inventory.$(OBJEXT) \ check_validate_refs.$(OBJEXT) dialogtextreplacement.$(OBJEXT) \ textreplacement.$(OBJEXT) temporal.$(OBJEXT) \ ot-quotations.$(OBJEXT) parallel_passages.$(OBJEXT) \ ot-nt-parallels.$(OBJEXT) check_parallel_passages.$(OBJEXT) \ dialogpdfviewer.$(OBJEXT) displayprojectnotes.$(OBJEXT) \ styles.$(OBJEXT) editor_aids.$(OBJEXT) \ dialoginserttable.$(OBJEXT) git.$(OBJEXT) \ usfm2xslfo_utils.$(OBJEXT) hyphenate.$(OBJEXT) \ reporting.$(OBJEXT) planning.$(OBJEXT) \ dialogeditstatus.$(OBJEXT) dialogtaskduration.$(OBJEXT) \ htmlwriter.$(OBJEXT) dialogviewplanning.$(OBJEXT) \ dialogplanningsetup.$(OBJEXT) resource.$(OBJEXT) \ dialogbooknames.$(OBJEXT) dialogradiobutton.$(OBJEXT) \ dialogresourceconverter.$(OBJEXT) \ resource_conversion_utils.$(OBJEXT) convert.$(OBJEXT) \ textviewer.$(OBJEXT) roman.$(OBJEXT) project_memory.$(OBJEXT) \ dialogmerge.$(OBJEXT) merge_utils.$(OBJEXT) \ maintenance.$(OBJEXT) scripts.$(OBJEXT) \ dialogfilters.$(OBJEXT) dialogdictionary.$(OBJEXT) \ spelling.$(OBJEXT) dialogeditdictionary.$(OBJEXT) \ check_sentence_structure.$(OBJEXT) dialogcheckbutton.$(OBJEXT) \ dialogxfernotes2text.$(OBJEXT) text2pdf.$(OBJEXT) \ text2pdf_utils.$(OBJEXT) text2pdf_area.$(OBJEXT) \ text2pdf_ref_area.$(OBJEXT) text2pdf_block.$(OBJEXT) \ text2pdf_page.$(OBJEXT) text2pdf_input.$(OBJEXT) \ text2pdf_layout.$(OBJEXT) text2pdf_big_block.$(OBJEXT) \ text2pdf_intermediate.$(OBJEXT) usfm2text.$(OBJEXT) \ dialogtext2pdf.$(OBJEXT) windowshowrelatedverses.$(OBJEXT) \ windowmerge.$(OBJEXT) windowresource.$(OBJEXT) \ windowoutline.$(OBJEXT) windowcheckkeyterms.$(OBJEXT) \ windowstyles.$(OBJEXT) windownotes.$(OBJEXT) \ dialogprojectnote.$(OBJEXT) windowreferences.$(OBJEXT) \ windoweditor.$(OBJEXT) compress.$(OBJEXT) \ localizednumerals.$(OBJEXT) assistantimportkeyterms.$(OBJEXT) \ assistants.$(OBJEXT) assistantdeletekeyterms.$(OBJEXT) \ assistantchanges.$(OBJEXT) widgetdate.$(OBJEXT) \ usfmview.$(OBJEXT) dialogcompareprefs.$(OBJEXT) \ windowcheckusfm.$(OBJEXT) usfm2osis.$(OBJEXT) \ usfmstandard.$(OBJEXT) osis.$(OBJEXT) \ assistantremoterepository.$(OBJEXT) \ gui_display_changes.$(OBJEXT) stylesheet.$(OBJEXT) \ referencememory.$(OBJEXT) webkitbrowser.$(OBJEXT) \ assistantresource.$(OBJEXT) snapshots.$(OBJEXT) \ windowtimednotifier.$(OBJEXT) assistantbackup.$(OBJEXT) \ assistantrestore.$(OBJEXT) restore.$(OBJEXT) \ guiselectbibles.$(OBJEXT) assistantexport.$(OBJEXT) \ java.$(OBJEXT) dialogbulkspelling.$(OBJEXT) \ dialogplanningedit.$(OBJEXT) dialoglistviewm.$(OBJEXT) \ htmlwriter2.$(OBJEXT) dialogmaintenance.$(OBJEXT) \ kjv.$(OBJEXT) assistantimport.$(OBJEXT) mechonmamre.$(OBJEXT) \ bibleworks.$(OBJEXT) onlinebible.$(OBJEXT) robinson.$(OBJEXT) \ morphology.$(OBJEXT) greek.$(OBJEXT) startup.$(OBJEXT) \ dialogyesnoalways.$(OBJEXT) floatingwindow.$(OBJEXT) \ windowdata.$(OBJEXT) editor.$(OBJEXT) editoractions.$(OBJEXT) \ nanohttp.$(OBJEXT) urltransport.$(OBJEXT) \ dialogreferencesettings.$(OBJEXT) printproject2.$(OBJEXT) \ usfm2xetex.$(OBJEXT) xetex2pdf.$(OBJEXT) runtime.$(OBJEXT) \ xetex.$(OBJEXT) dialogxetex.$(OBJEXT) paratext.$(OBJEXT) \ vcs.$(OBJEXT) git-exec.$(OBJEXT) bibledit_gtk_OBJECTS = $(am_bibledit_gtk_OBJECTS) bibledit_gtk_LDADD = $(LDADD) am_bibledit_rdwrt_OBJECTS = bibledit-rdwrt.$(OBJEXT) \ utilities.$(OBJEXT) tiny_utilities.$(OBJEXT) bible.$(OBJEXT) \ usfmtools.$(OBJEXT) dialoglistview.$(OBJEXT) \ dialogsystemlog.$(OBJEXT) htmlbrowser.$(OBJEXT) \ track.$(OBJEXT) windowsoutpost.$(OBJEXT) \ projectutils.$(OBJEXT) usfm.$(OBJEXT) dialogwait.$(OBJEXT) \ directories.$(OBJEXT) ustring.$(OBJEXT) \ referenceutils.$(OBJEXT) pdfviewer.$(OBJEXT) \ notes_utils.$(OBJEXT) date_time_utils.$(OBJEXT) \ dialogentry.$(OBJEXT) export_utils.$(OBJEXT) paper.$(OBJEXT) \ xmlutils.$(OBJEXT) stylesheetutils.$(OBJEXT) \ dialogstylesheet.$(OBJEXT) style.$(OBJEXT) \ dialogentry3.$(OBJEXT) printproject.$(OBJEXT) \ xmlfo-utils.$(OBJEXT) dialogdate.$(OBJEXT) gwrappers.$(OBJEXT) \ gtkwrappers.$(OBJEXT) usfm-inline-markers.$(OBJEXT) \ completion.$(OBJEXT) combobox.$(OBJEXT) keyboard.$(OBJEXT) \ listview.$(OBJEXT) scripturechecks.$(OBJEXT) \ versification.$(OBJEXT) dialogcheck.$(OBJEXT) \ dialogeditlist.$(OBJEXT) shell.$(OBJEXT) \ export_translation_notes.$(OBJEXT) sqlite_reader.$(OBJEXT) \ dialogarea.$(OBJEXT) unixwrappers.$(OBJEXT) \ highlight.$(OBJEXT) dialogopenstylesheet.$(OBJEXT) \ note_editor.$(OBJEXT) notecaller.$(OBJEXT) \ xslfofootnoteparagraph.$(OBJEXT) notetemplate.$(OBJEXT) \ print_parallel_bible.$(OBJEXT) mapping.$(OBJEXT) \ swordnote.$(OBJEXT) dialogselectchapters.$(OBJEXT) \ portion_utils.$(OBJEXT) scriptureportions.$(OBJEXT) \ uname.$(OBJEXT) import.$(OBJEXT) clean.$(OBJEXT) \ categorize.$(OBJEXT) progresswindow.$(OBJEXT) books.$(OBJEXT) \ dialogbook.$(OBJEXT) generalconfig.$(OBJEXT) screen.$(OBJEXT) \ projectconfig.$(OBJEXT) gui.$(OBJEXT) \ check_validate_usfm.$(OBJEXT) checks.$(OBJEXT) \ check_count_words.$(OBJEXT) httpd.$(OBJEXT) \ opendocument.$(OBJEXT) odtutils.$(OBJEXT) odtnotes.$(OBJEXT) \ help.$(OBJEXT) color.$(OBJEXT) check_count_usfms.$(OBJEXT) \ check_count_characters.$(OBJEXT) \ check_chapters_verses.$(OBJEXT) check_compare_usfm.$(OBJEXT) \ check_unwanted_patterns.$(OBJEXT) \ check_unwanted_words.$(OBJEXT) check_repetition.$(OBJEXT) \ check_capitalization.$(OBJEXT) check_matching_pairs.$(OBJEXT) \ originreferences.$(OBJEXT) tidy.$(OBJEXT) shortcuts.$(OBJEXT) \ reference.$(OBJEXT) keyterms.$(OBJEXT) \ guiselectproject.$(OBJEXT) check_markers_spacing.$(OBJEXT) \ myfnmatch.$(OBJEXT) statistics.$(OBJEXT) backup.$(OBJEXT) \ dialogselectbooks.$(OBJEXT) resource_utils.$(OBJEXT) \ html.$(OBJEXT) dialogeditnote.$(OBJEXT) biblenotes.$(OBJEXT) \ wordlist.$(OBJEXT) dialognewstylesheet.$(OBJEXT) \ outline.$(OBJEXT) settings.$(OBJEXT) session.$(OBJEXT) \ session_highlights.$(OBJEXT) bookdata.$(OBJEXT) \ config.xml.$(OBJEXT) localizedbooks.$(OBJEXT) \ versifications.$(OBJEXT) mappings.$(OBJEXT) password.$(OBJEXT) \ gui_features.$(OBJEXT) print_parallel_references.$(OBJEXT) \ fixmarkers.$(OBJEXT) check_ref_inventory.$(OBJEXT) \ check_validate_refs.$(OBJEXT) textreplacement.$(OBJEXT) \ temporal.$(OBJEXT) ot-quotations.$(OBJEXT) \ parallel_passages.$(OBJEXT) ot-nt-parallels.$(OBJEXT) \ check_parallel_passages.$(OBJEXT) \ displayprojectnotes.$(OBJEXT) styles.$(OBJEXT) \ editor_aids.$(OBJEXT) git.$(OBJEXT) usfm2xslfo_utils.$(OBJEXT) \ hyphenate.$(OBJEXT) reporting.$(OBJEXT) planning.$(OBJEXT) \ dialogeditstatus.$(OBJEXT) htmlwriter.$(OBJEXT) \ resource.$(OBJEXT) dialogbooknames.$(OBJEXT) \ dialogradiobutton.$(OBJEXT) dialogresourceconverter.$(OBJEXT) \ resource_conversion_utils.$(OBJEXT) convert.$(OBJEXT) \ roman.$(OBJEXT) project_memory.$(OBJEXT) dialogmerge.$(OBJEXT) \ merge_utils.$(OBJEXT) maintenance.$(OBJEXT) scripts.$(OBJEXT) \ spelling.$(OBJEXT) check_sentence_structure.$(OBJEXT) \ dialogcheckbutton.$(OBJEXT) text2pdf.$(OBJEXT) \ text2pdf_utils.$(OBJEXT) text2pdf_area.$(OBJEXT) \ text2pdf_ref_area.$(OBJEXT) text2pdf_block.$(OBJEXT) \ text2pdf_page.$(OBJEXT) text2pdf_input.$(OBJEXT) \ text2pdf_layout.$(OBJEXT) text2pdf_big_block.$(OBJEXT) \ text2pdf_intermediate.$(OBJEXT) usfm2text.$(OBJEXT) \ dialogtext2pdf.$(OBJEXT) windowreferences.$(OBJEXT) \ compress.$(OBJEXT) localizednumerals.$(OBJEXT) \ widgetdate.$(OBJEXT) usfm2osis.$(OBJEXT) \ usfmstandard.$(OBJEXT) osis.$(OBJEXT) \ gui_display_changes.$(OBJEXT) stylesheet.$(OBJEXT) \ referencememory.$(OBJEXT) webkitbrowser.$(OBJEXT) \ snapshots.$(OBJEXT) windowtimednotifier.$(OBJEXT) \ restore.$(OBJEXT) guiselectbibles.$(OBJEXT) java.$(OBJEXT) \ dialoglistviewm.$(OBJEXT) htmlwriter2.$(OBJEXT) kjv.$(OBJEXT) \ mechonmamre.$(OBJEXT) bibleworks.$(OBJEXT) \ onlinebible.$(OBJEXT) robinson.$(OBJEXT) morphology.$(OBJEXT) \ greek.$(OBJEXT) startup.$(OBJEXT) dialogyesnoalways.$(OBJEXT) \ floatingwindow.$(OBJEXT) windowdata.$(OBJEXT) editor.$(OBJEXT) \ editoractions.$(OBJEXT) nanohttp.$(OBJEXT) \ urltransport.$(OBJEXT) dialogreferencesettings.$(OBJEXT) \ printproject2.$(OBJEXT) usfm2xetex.$(OBJEXT) \ xetex2pdf.$(OBJEXT) runtime.$(OBJEXT) xetex.$(OBJEXT) \ paratext.$(OBJEXT) vcs.$(OBJEXT) git-exec.$(OBJEXT) \ readwrite.$(OBJEXT) bibledit_rdwrt_OBJECTS = $(am_bibledit_rdwrt_OBJECTS) bibledit_rdwrt_LDADD = $(LDADD) AM_V_P = $(am__v_P_@AM_V@) am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) am__v_P_0 = false am__v_P_1 = : AM_V_GEN = $(am__v_GEN_@AM_V@) am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) am__v_GEN_0 = @echo " GEN " $@; am__v_GEN_1 = AM_V_at = $(am__v_at_@AM_V@) am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) am__v_at_0 = @ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) AM_V_CC = $(am__v_CC_@AM_V@) am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@) am__v_CC_0 = @echo " CC " $@; am__v_CC_1 = CCLD = $(CC) LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ AM_V_CCLD = $(am__v_CCLD_@AM_V@) am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) am__v_CCLD_0 = @echo " CCLD " $@; am__v_CCLD_1 = CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) AM_V_CXX = $(am__v_CXX_@AM_V@) am__v_CXX_ = $(am__v_CXX_@AM_DEFAULT_V@) am__v_CXX_0 = @echo " CXX " $@; am__v_CXX_1 = CXXLD = $(CXX) CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \ -o $@ AM_V_CXXLD = $(am__v_CXXLD_@AM_V@) am__v_CXXLD_ = $(am__v_CXXLD_@AM_DEFAULT_V@) am__v_CXXLD_0 = @echo " CXXLD " $@; am__v_CXXLD_1 = SOURCES = $(bibledit_gtk_SOURCES) $(bibledit_rdwrt_SOURCES) DIST_SOURCES = $(bibledit_gtk_SOURCES) $(bibledit_rdwrt_SOURCES) am__can_run_installinfo = \ case $$AM_UPDATE_INFO_DIR in \ n|no|NO) false;; \ *) (install-info --version) >/dev/null 2>&1;; \ esac am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is # *not* preserved. am__uniquify_input = $(AWK) '\ BEGIN { nonempty = 0; } \ { items[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in items) print i; }; } \ ' # Make sure the list of sources is unique. This is necessary because, # e.g., the same source file might be shared among _SOURCES variables # for different programs/libraries. am__define_uniq_tagged_files = \ list='$(am__tagged_files)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | $(am__uniquify_input)` ETAGS = etags CTAGS = ctags am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp \ $(top_srcdir)/mkinstalldirs DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CAT_PATH = @CAT_PATH@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DATE_PATH = @DATE_PATH@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ ENCHANT_CFLAGS = @ENCHANT_CFLAGS@ ENCHANT_LIBS = @ENCHANT_LIBS@ EXEEXT = @EXEEXT@ FIND_CURL = @FIND_CURL@ FIND_DIFF = @FIND_DIFF@ FIND_GPP = @FIND_GPP@ FIND_MERGE = @FIND_MERGE@ FIND_PATCH = @FIND_PATCH@ FIND_PATH = @FIND_PATH@ FIND_TAR = @FIND_TAR@ FIND_XARGS = @FIND_XARGS@ GLIB_CFLAGS = @GLIB_CFLAGS@ GLIB_LIBS = @GLIB_LIBS@ GOBJECT_CFLAGS = @GOBJECT_CFLAGS@ GOBJECT_LIBS = @GOBJECT_LIBS@ GREP = @GREP@ GREP_PATH = @GREP_PATH@ GTHREAD_CFLAGS = @GTHREAD_CFLAGS@ GTHREAD_LIBS = @GTHREAD_LIBS@ GTKSOURCEVIEW_CFLAGS = @GTKSOURCEVIEW_CFLAGS@ GTKSOURCEVIEW_LIBS = @GTKSOURCEVIEW_LIBS@ GTK_CFLAGS = @GTK_CFLAGS@ GTK_LIBS = @GTK_LIBS@ GUNZIP_PATH = @GUNZIP_PATH@ GZIP_PATH = @GZIP_PATH@ HAVE_CXX11 = @HAVE_CXX11@ HEAD_PATH = @HEAD_PATH@ ICONV_PATH = @ICONV_PATH@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = -Wall `xml2-config --libs` $(GOBJECT_LIBS) $(GTHREAD_LIBS) \ $(GLIB_LIBS) $(GTK_LIBS) $(SQLITE_LIBS) $(ENCHANT_LIBS) \ $(GTKSOURCEVIEW_LIBS) $(WEBKIT_LIBS) $(DBUSGLIB_LIBS) \ $(LIBSOUP_LIBS) $(am__append_1) LIBSOUP_CFLAGS = @LIBSOUP_CFLAGS@ LIBSOUP_LIBS = @LIBSOUP_LIBS@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MAKE_PATH = @MAKE_PATH@ MKDIR_P = @MKDIR_P@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PANGO_CFLAGS = @PANGO_CFLAGS@ PANGO_LIBS = @PANGO_LIBS@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SORT_PATH = @SORT_PATH@ SQLITE_CFLAGS = @SQLITE_CFLAGS@ SQLITE_LIBS = @SQLITE_LIBS@ STRINGS_PATH = @STRINGS_PATH@ STRIP = @STRIP@ TAIL_PATH = @TAIL_PATH@ TEE_TOUCH = @TEE_TOUCH@ VERSION = @VERSION@ WEBKIT_CFLAGS = @WEBKIT_CFLAGS@ WEBKIT_LIBS = @WEBKIT_LIBS@ XML2_CONFIG = @XML2_CONFIG@ XML_CPPFLAGS = @XML_CPPFLAGS@ XML_LIBS = @XML_LIBS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ ac_ct_CXX = @ac_ct_CXX@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ packagedatadir = @packagedatadir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target = @target@ target_alias = @target_alias@ target_cpu = @target_cpu@ target_os = @target_os@ target_vendor = @target_vendor@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ bibledit_gtk_SOURCES = \ bibledit.cpp \ utilities.cpp \ tiny_utilities.cpp \ bible.cpp \ usfmtools.cpp \ mainwindow.cpp \ dialoglistview.cpp \ dialogsystemlog.cpp \ htmlbrowser.cpp \ track.cpp \ dialogreplace.cpp \ dialogreplacing.cpp \ windowsoutpost.cpp \ dialoggotoreference.cpp \ projectutils.cpp \ dialogproject.cpp \ usfm.cpp \ dialogwait.cpp \ directories.cpp \ ustring.cpp \ dialogsearchspecial.cpp \ referenceutils.cpp \ pdfviewer.cpp \ notes_utils.cpp \ date_time_utils.cpp \ dialogfindnote.cpp \ dialogimportnotes.cpp \ dialognotes.cpp \ dialogentry.cpp \ dialogcompare.cpp \ compareutils.cpp \ export_utils.cpp \ bibletime.cpp \ dialogprintprefs.cpp \ paper.cpp \ xmlutils.cpp \ dialogprintproject.cpp \ stylesheetutils.cpp \ dialogstylesheet.cpp \ style.cpp \ dialogentry3.cpp \ printproject.cpp \ xmlfo-utils.cpp \ search_utils.cpp \ dialogshownotes.cpp \ dialogdate.cpp \ gwrappers.cpp \ gtkwrappers.cpp \ usfm-inline-markers.cpp \ completion.cpp \ combobox.cpp \ keyboard.cpp \ listview.cpp \ scripturechecks.cpp \ versification.cpp \ dialogrefexchange.cpp \ dialogcheck.cpp \ dialogeditlist.cpp \ shell.cpp \ export_translation_notes.cpp \ sqlite_reader.cpp \ dialogarea.cpp \ unixwrappers.cpp \ highlight.cpp \ dialogopenstylesheet.cpp \ note_editor.cpp \ notecaller.cpp \ xslfofootnoteparagraph.cpp \ dialoginsertnote.cpp \ notetemplate.cpp \ dialogparallelbible.cpp \ print_parallel_bible.cpp \ mapping.cpp \ swordnote.cpp \ dialogselectchapters.cpp \ portion_utils.cpp \ scriptureportions.cpp \ uname.cpp \ layout.cpp \ import.cpp \ clean.cpp \ categorize.cpp \ progresswindow.cpp \ books.cpp \ dialogbook.cpp \ generalconfig.cpp \ screen.cpp \ projectconfig.cpp \ gui.cpp \ check_validate_usfm.cpp \ checks.cpp \ check_count_words.cpp \ dialogoutpost.cpp \ dialognotestransfer.cpp \ dialogchapternumber.cpp \ httpd.cpp \ opendocument.cpp \ odtutils.cpp \ odtnotes.cpp \ help.cpp \ color.cpp \ dialogmychecks.cpp \ check_count_usfms.cpp \ check_count_characters.cpp \ check_chapters_verses.cpp \ check_compare_usfm.cpp \ check_unwanted_patterns.cpp \ check_unwanted_words.cpp \ check_repetition.cpp \ check_capitalization.cpp \ check_matching_pairs.cpp \ rc4.c \ dialogoriginreferences.cpp \ originreferences.cpp \ dialogtidy.cpp \ tidy.cpp \ shortcuts.cpp \ upgrade.cpp \ reference.cpp \ keyterms.cpp \ dialognotesupdate.cpp \ guiselectproject.cpp \ check_markers_spacing.cpp \ gui_navigation.cpp \ myfnmatch.c \ statistics.cpp \ backup.cpp \ dialogrevert.cpp \ dialogselectbooks.cpp \ resource_utils.cpp \ html.cpp \ dialogreviewanchors.cpp \ dialogeditnote.cpp \ biblenotes.cpp \ dialogwordlist.cpp \ wordlist.cpp \ dialogfontcolor.cpp \ dialognewstylesheet.cpp \ outline.cpp \ settings.cpp \ session.cpp \ session_highlights.cpp \ bookdata.cpp \ config.xml.cpp \ localizedbooks.cpp \ versifications.cpp \ mappings.cpp \ dialoggui.cpp \ password.cpp \ gui_features.cpp \ dialogprintreferences.cpp \ print_parallel_references.cpp \ dialogfixmarkers.cpp \ fixmarkers.cpp \ check_ref_inventory.cpp \ check_validate_refs.cpp \ dialogtextreplacement.cpp \ textreplacement.cpp \ temporal.cpp \ ot-quotations.cpp \ parallel_passages.cpp \ ot-nt-parallels.cpp \ check_parallel_passages.cpp \ dialogpdfviewer.cpp \ displayprojectnotes.cpp \ styles.cpp \ editor_aids.cpp \ dialoginserttable.cpp \ git.cpp \ usfm2xslfo_utils.cpp \ hyphenate.cpp \ reporting.cpp \ planning.cpp \ dialogeditstatus.cpp \ dialogtaskduration.cpp \ htmlwriter.cpp \ dialogviewplanning.cpp \ dialogplanningsetup.cpp \ resource.cpp \ dialogbooknames.cpp \ dialogradiobutton.cpp \ dialogresourceconverter.cpp \ resource_conversion_utils.cpp \ convert.cpp \ textviewer.cpp \ roman.cpp \ project_memory.cpp \ dialogmerge.cpp \ merge_utils.cpp \ maintenance.cpp \ scripts.cpp \ dialogfilters.cpp \ dialogdictionary.cpp \ spelling.cpp \ dialogeditdictionary.cpp \ check_sentence_structure.cpp \ dialogcheckbutton.cpp \ dialogxfernotes2text.cpp \ text2pdf.cpp \ text2pdf_utils.cpp \ text2pdf_area.cpp \ text2pdf_ref_area.cpp \ text2pdf_block.cpp \ text2pdf_page.cpp \ text2pdf_input.cpp \ text2pdf_layout.cpp \ text2pdf_big_block.cpp \ text2pdf_intermediate.cpp \ usfm2text.cpp \ dialogtext2pdf.cpp \ windowshowrelatedverses.cpp \ windowmerge.cpp \ windowresource.cpp \ windowoutline.cpp \ windowcheckkeyterms.cpp \ windowstyles.cpp \ windownotes.cpp \ dialogprojectnote.cpp \ windowreferences.cpp \ windoweditor.cpp \ compress.cpp \ localizednumerals.cpp \ assistantimportkeyterms.cpp \ assistants.cpp \ assistantdeletekeyterms.cpp \ assistantchanges.cpp \ widgetdate.cpp \ usfmview.cpp \ dialogcompareprefs.cpp \ windowcheckusfm.cpp \ usfm2osis.cpp \ usfmstandard.cpp \ osis.cpp \ assistantremoterepository.cpp \ gui_display_changes.cpp \ stylesheet.cpp \ referencememory.cpp \ webkitbrowser.cpp \ assistantresource.cpp \ snapshots.cpp \ windowtimednotifier.cpp \ assistantbackup.cpp \ assistantrestore.cpp \ restore.cpp \ guiselectbibles.cpp \ assistantexport.cpp \ java.cpp \ dialogbulkspelling.cpp \ dialogplanningedit.cpp \ dialoglistviewm.cpp \ htmlwriter2.cpp \ dialogmaintenance.cpp \ kjv.cpp \ assistantimport.cpp \ mechonmamre.cpp \ bibleworks.cpp \ onlinebible.cpp \ robinson.cpp \ morphology.cpp \ greek.cpp \ startup.cpp \ dialogyesnoalways.cpp \ floatingwindow.cpp \ windowdata.cpp \ editor.cpp \ editoractions.cpp \ nanohttp.cpp \ urltransport.cpp \ dialogreferencesettings.cpp \ printproject2.cpp \ usfm2xetex.cpp \ xetex2pdf.cpp \ runtime.cpp \ xetex.cpp \ dialogxetex.cpp \ paratext.cpp \ vcs.cpp \ git-exec.cpp bibledit_rdwrt_SOURCES = \ bibledit-rdwrt.cpp \ utilities.cpp \ tiny_utilities.cpp \ bible.cpp \ usfmtools.cpp \ dialoglistview.cpp \ dialogsystemlog.cpp \ htmlbrowser.cpp \ track.cpp \ windowsoutpost.cpp \ projectutils.cpp \ usfm.cpp \ dialogwait.cpp \ directories.cpp \ ustring.cpp \ referenceutils.cpp \ pdfviewer.cpp \ notes_utils.cpp \ date_time_utils.cpp \ dialogentry.cpp \ export_utils.cpp \ paper.cpp \ xmlutils.cpp \ stylesheetutils.cpp \ dialogstylesheet.cpp \ style.cpp \ dialogentry3.cpp \ printproject.cpp \ xmlfo-utils.cpp \ dialogdate.cpp \ gwrappers.cpp \ gtkwrappers.cpp \ usfm-inline-markers.cpp \ completion.cpp \ combobox.cpp \ keyboard.cpp \ listview.cpp \ scripturechecks.cpp \ versification.cpp \ dialogcheck.cpp \ dialogeditlist.cpp \ shell.cpp \ export_translation_notes.cpp \ sqlite_reader.cpp \ dialogarea.cpp \ unixwrappers.cpp \ highlight.cpp \ dialogopenstylesheet.cpp \ note_editor.cpp \ notecaller.cpp \ xslfofootnoteparagraph.cpp \ notetemplate.cpp \ print_parallel_bible.cpp \ mapping.cpp \ swordnote.cpp \ dialogselectchapters.cpp \ portion_utils.cpp \ scriptureportions.cpp \ uname.cpp \ import.cpp \ clean.cpp \ categorize.cpp \ progresswindow.cpp \ books.cpp \ dialogbook.cpp \ generalconfig.cpp \ screen.cpp \ projectconfig.cpp \ gui.cpp \ check_validate_usfm.cpp \ checks.cpp \ check_count_words.cpp \ httpd.cpp \ opendocument.cpp \ odtutils.cpp \ odtnotes.cpp \ help.cpp \ color.cpp \ check_count_usfms.cpp \ check_count_characters.cpp \ check_chapters_verses.cpp \ check_compare_usfm.cpp \ check_unwanted_patterns.cpp \ check_unwanted_words.cpp \ check_repetition.cpp \ check_capitalization.cpp \ check_matching_pairs.cpp \ originreferences.cpp \ tidy.cpp \ shortcuts.cpp \ reference.cpp \ keyterms.cpp \ guiselectproject.cpp \ check_markers_spacing.cpp \ myfnmatch.c \ statistics.cpp \ backup.cpp \ dialogselectbooks.cpp \ resource_utils.cpp \ html.cpp \ dialogeditnote.cpp \ biblenotes.cpp \ wordlist.cpp \ dialognewstylesheet.cpp \ outline.cpp \ settings.cpp \ session.cpp \ session_highlights.cpp \ bookdata.cpp \ config.xml.cpp \ localizedbooks.cpp \ versifications.cpp \ mappings.cpp \ password.cpp \ gui_features.cpp \ print_parallel_references.cpp \ fixmarkers.cpp \ check_ref_inventory.cpp \ check_validate_refs.cpp \ textreplacement.cpp \ temporal.cpp \ ot-quotations.cpp \ parallel_passages.cpp \ ot-nt-parallels.cpp \ check_parallel_passages.cpp \ displayprojectnotes.cpp \ styles.cpp \ editor_aids.cpp \ git.cpp \ usfm2xslfo_utils.cpp \ hyphenate.cpp \ reporting.cpp \ planning.cpp \ dialogeditstatus.cpp \ htmlwriter.cpp \ resource.cpp \ dialogbooknames.cpp \ dialogradiobutton.cpp \ dialogresourceconverter.cpp \ resource_conversion_utils.cpp \ convert.cpp \ roman.cpp \ project_memory.cpp \ dialogmerge.cpp \ merge_utils.cpp \ maintenance.cpp \ scripts.cpp \ spelling.cpp \ check_sentence_structure.cpp \ dialogcheckbutton.cpp \ text2pdf.cpp \ text2pdf_utils.cpp \ text2pdf_area.cpp \ text2pdf_ref_area.cpp \ text2pdf_block.cpp \ text2pdf_page.cpp \ text2pdf_input.cpp \ text2pdf_layout.cpp \ text2pdf_big_block.cpp \ text2pdf_intermediate.cpp \ usfm2text.cpp \ dialogtext2pdf.cpp \ windowreferences.cpp \ compress.cpp \ localizednumerals.cpp \ widgetdate.cpp \ usfm2osis.cpp \ usfmstandard.cpp \ osis.cpp \ gui_display_changes.cpp \ stylesheet.cpp \ referencememory.cpp \ webkitbrowser.cpp \ snapshots.cpp \ windowtimednotifier.cpp \ restore.cpp \ guiselectbibles.cpp \ java.cpp \ dialoglistviewm.cpp \ htmlwriter2.cpp \ kjv.cpp \ mechonmamre.cpp \ bibleworks.cpp \ onlinebible.cpp \ robinson.cpp \ morphology.cpp \ greek.cpp \ startup.cpp \ dialogyesnoalways.cpp \ floatingwindow.cpp \ windowdata.cpp \ editor.cpp \ editoractions.cpp \ nanohttp.cpp \ urltransport.cpp \ dialogreferencesettings.cpp \ printproject2.cpp \ usfm2xetex.cpp \ xetex2pdf.cpp \ runtime.cpp \ xetex.cpp \ paratext.cpp \ vcs.cpp \ git-exec.cpp \ readwrite.cpp EXTRA_DIST = *.h .indent.pro update-copyright AM_CXXFLAGS = -Wall -g -std=c++11 `xml2-config --cflags` \ $(GOBJECT_CFLAGS) $(GTHREAD_CFLAGS) $(GLIB_CFLAGS) \ $(GTK_CFLAGS) $(SQLITE_CFLAGS) $(ENCHANT_CFLAGS) \ $(GTKSOURCEVIEW_CFLAGS) $(WEBKIT_CFLAGS) $(DBUSGLIB_CFLAGS) \ $(LIBSOUP_CFLAGS) "-DGTK_DISABLE_SINGLE_INCLUDES" \ "-DGDK_DISABLE_DEPRECATED -DGTK_DISABLE_DEPRECATED" \ "-DGSEAL_ENABLE" "-DGLIB_DISABLE_DEPRECATION_WARNINGS" CLEANFILES = *~ all: all-am .SUFFIXES: .SUFFIXES: .c .cpp .o .obj $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --gnu src/Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): install-binPROGRAMS: $(bin_PROGRAMS) @$(NORMAL_INSTALL) @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ if test -n "$$list"; then \ echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \ $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \ fi; \ for p in $$list; do echo "$$p $$p"; done | \ sed 's/$(EXEEXT)$$//' | \ while read p p1; do if test -f $$p \ ; then echo "$$p"; echo "$$p"; else :; fi; \ done | \ sed -e 'p;s,.*/,,;n;h' \ -e 's|.*|.|' \ -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \ sed 'N;N;N;s,\n, ,g' | \ $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \ { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ if ($$2 == $$4) files[d] = files[d] " " $$1; \ else { print "f", $$3 "/" $$4, $$1; } } \ END { for (d in files) print "f", d, files[d] }' | \ while read type dir files; do \ if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ test -z "$$files" || { \ echo " $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(bindir)$$dir'"; \ $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \ } \ ; done uninstall-binPROGRAMS: @$(NORMAL_UNINSTALL) @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ files=`for p in $$list; do echo "$$p"; done | \ sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ -e 's/$$/$(EXEEXT)/' \ `; \ test -n "$$list" || exit 0; \ echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(bindir)" && rm -f $$files clean-binPROGRAMS: -test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS) bibledit-gtk$(EXEEXT): $(bibledit_gtk_OBJECTS) $(bibledit_gtk_DEPENDENCIES) $(EXTRA_bibledit_gtk_DEPENDENCIES) @rm -f bibledit-gtk$(EXEEXT) $(AM_V_CXXLD)$(CXXLINK) $(bibledit_gtk_OBJECTS) $(bibledit_gtk_LDADD) $(LIBS) bibledit-rdwrt$(EXEEXT): $(bibledit_rdwrt_OBJECTS) $(bibledit_rdwrt_DEPENDENCIES) $(EXTRA_bibledit_rdwrt_DEPENDENCIES) @rm -f bibledit-rdwrt$(EXEEXT) $(AM_V_CXXLD)$(CXXLINK) $(bibledit_rdwrt_OBJECTS) $(bibledit_rdwrt_LDADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) distclean-compile: -rm -f *.tab.c @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/assistantbackup.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/assistantchanges.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/assistantdeletekeyterms.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/assistantexport.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/assistantimport.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/assistantimportkeyterms.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/assistantremoterepository.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/assistantresource.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/assistantrestore.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/assistants.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/backup.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bible.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bibledit-rdwrt.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bibledit.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/biblenotes.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bibletime.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bibleworks.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bookdata.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/books.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/categorize.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/check_capitalization.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/check_chapters_verses.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/check_compare_usfm.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/check_count_characters.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/check_count_usfms.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/check_count_words.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/check_markers_spacing.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/check_matching_pairs.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/check_parallel_passages.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/check_ref_inventory.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/check_repetition.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/check_sentence_structure.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/check_unwanted_patterns.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/check_unwanted_words.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/check_validate_refs.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/check_validate_usfm.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/checks.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/clean.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/color.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/combobox.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/compareutils.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/completion.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/compress.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/config.xml.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/convert.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/date_time_utils.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogarea.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogbook.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogbooknames.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogbulkspelling.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogchapternumber.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogcheck.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogcheckbutton.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogcompare.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogcompareprefs.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogdate.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogdictionary.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogeditdictionary.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogeditlist.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogeditnote.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogeditstatus.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogentry.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogentry3.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogfilters.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogfindnote.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogfixmarkers.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogfontcolor.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialoggotoreference.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialoggui.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogimportnotes.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialoginsertnote.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialoginserttable.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialoglistview.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialoglistviewm.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogmaintenance.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogmerge.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogmychecks.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialognewstylesheet.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialognotes.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialognotestransfer.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialognotesupdate.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogopenstylesheet.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogoriginreferences.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogoutpost.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogparallelbible.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogpdfviewer.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogplanningedit.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogplanningsetup.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogprintprefs.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogprintproject.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogprintreferences.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogproject.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogprojectnote.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogradiobutton.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogreferencesettings.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogrefexchange.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogreplace.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogreplacing.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogresourceconverter.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogrevert.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogreviewanchors.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogsearchspecial.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogselectbooks.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogselectchapters.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogshownotes.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogstylesheet.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogsystemlog.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogtaskduration.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogtext2pdf.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogtextreplacement.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogtidy.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogviewplanning.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogwait.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogwordlist.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogxetex.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogxfernotes2text.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dialogyesnoalways.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/directories.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/displayprojectnotes.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/editor.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/editor_aids.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/editoractions.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/export_translation_notes.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/export_utils.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fixmarkers.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/floatingwindow.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/generalconfig.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/git-exec.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/git.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/greek.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gtkwrappers.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gui.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gui_display_changes.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gui_features.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gui_navigation.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/guiselectbibles.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/guiselectproject.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gwrappers.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/help.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/highlight.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/html.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/htmlbrowser.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/htmlwriter.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/htmlwriter2.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/httpd.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/hyphenate.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/import.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/java.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/keyboard.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/keyterms.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/kjv.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/layout.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/listview.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/localizedbooks.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/localizednumerals.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/maintenance.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mainwindow.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mapping.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mappings.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mechonmamre.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/merge_utils.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/morphology.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/myfnmatch.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nanohttp.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/note_editor.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/notecaller.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/notes_utils.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/notetemplate.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/odtnotes.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/odtutils.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/onlinebible.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/opendocument.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/originreferences.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/osis.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ot-nt-parallels.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ot-quotations.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/outline.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/paper.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/parallel_passages.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/paratext.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/password.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pdfviewer.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/planning.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/portion_utils.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/print_parallel_bible.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/print_parallel_references.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/printproject.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/printproject2.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/progresswindow.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/project_memory.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/projectconfig.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/projectutils.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rc4.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/readwrite.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/reference.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/referencememory.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/referenceutils.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/reporting.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/resource.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/resource_conversion_utils.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/resource_utils.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/restore.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/robinson.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/roman.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/runtime.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/screen.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/scripts.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/scripturechecks.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/scriptureportions.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/search_utils.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/session.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/session_highlights.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/settings.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/shell.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/shortcuts.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/snapshots.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/spelling.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sqlite_reader.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/startup.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/statistics.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/style.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/styles.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stylesheet.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stylesheetutils.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/swordnote.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/temporal.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/text2pdf.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/text2pdf_area.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/text2pdf_big_block.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/text2pdf_block.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/text2pdf_input.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/text2pdf_intermediate.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/text2pdf_layout.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/text2pdf_page.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/text2pdf_ref_area.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/text2pdf_utils.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/textreplacement.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/textviewer.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tidy.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tiny_utilities.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/track.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/uname.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unixwrappers.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/upgrade.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/urltransport.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/usfm-inline-markers.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/usfm.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/usfm2osis.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/usfm2text.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/usfm2xetex.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/usfm2xslfo_utils.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/usfmstandard.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/usfmtools.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/usfmview.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ustring.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/utilities.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/vcs.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/versification.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/versifications.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/webkitbrowser.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/widgetdate.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/windowcheckkeyterms.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/windowcheckusfm.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/windowdata.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/windoweditor.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/windowmerge.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/windownotes.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/windowoutline.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/windowreferences.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/windowresource.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/windowshowrelatedverses.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/windowsoutpost.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/windowstyles.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/windowtimednotifier.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wordlist.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xetex.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xetex2pdf.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xmlfo-utils.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xmlutils.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xslfofootnoteparagraph.Po@am__quote@ .c.o: @am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $< .c.obj: @am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'` .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXXCOMPILE) -c -o $@ $< .cpp.obj: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` ID: $(am__tagged_files) $(am__define_uniq_tagged_files); mkid -fID $$unique tags: tags-am TAGS: tags tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) set x; \ here=`pwd`; \ $(am__define_uniq_tagged_files); \ shift; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ if test $$# -gt 0; then \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ "$$@" $$unique; \ else \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$unique; \ fi; \ fi ctags: ctags-am CTAGS: ctags ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) $(am__define_uniq_tagged_files); \ test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && $(am__cd) $(top_srcdir) \ && gtags -i $(GTAGS_ARGS) "$$here" cscopelist: cscopelist-am cscopelist-am: $(am__tagged_files) list='$(am__tagged_files)'; \ case "$(srcdir)" in \ [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ *) sdir=$(subdir)/$(srcdir) ;; \ esac; \ for i in $$list; do \ if test -f "$$i"; then \ echo "$(subdir)/$$i"; \ else \ echo "$$sdir/$$i"; \ fi; \ done >> $(top_builddir)/cscope.files distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done check-am: all-am check: check-am all-am: Makefile $(PROGRAMS) installdirs: for dir in "$(DESTDIR)$(bindir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: if test -z '$(STRIP)'; then \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ install; \ else \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ fi mostlyclean-generic: clean-generic: -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-binPROGRAMS clean-generic mostlyclean-am distclean: distclean-am -rm -rf ./$(DEPDIR) -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags dvi: dvi-am dvi-am: html: html-am html-am: info: info-am info-am: install-data-am: install-dvi: install-dvi-am install-dvi-am: install-exec-am: install-binPROGRAMS install-html: install-html-am install-html-am: install-info: install-info-am install-info-am: install-man: install-pdf: install-pdf-am install-pdf-am: install-ps: install-ps-am install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-am -rm -rf ./$(DEPDIR) -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-compile mostlyclean-generic pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-binPROGRAMS .MAKE: install-am install-strip .PHONY: CTAGS GTAGS TAGS all all-am check check-am clean \ clean-binPROGRAMS clean-generic cscopelist-am ctags ctags-am \ distclean distclean-compile distclean-generic distclean-tags \ distdir dvi dvi-am html html-am info info-am install \ install-am install-binPROGRAMS install-data install-data-am \ install-dvi install-dvi-am install-exec install-exec-am \ install-html install-html-am install-info install-info-am \ install-man install-pdf install-pdf-am install-ps \ install-ps-am install-strip installcheck installcheck-am \ installdirs maintainer-clean maintainer-clean-generic \ mostlyclean mostlyclean-compile mostlyclean-generic pdf pdf-am \ ps ps-am tags tags-am uninstall uninstall-am \ uninstall-binPROGRAMS .PRECIOUS: Makefile # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: bibledit-gtk-4.9/src/mapping.cpp000664 000766 000024 00000013525 12221507140 017003 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "mapping.h" #include "utilities.h" #include "bible.h" #include "shell.h" #include "gwrappers.h" #include "books.h" #include "directories.h" #include "mappings.h" #include "tiny_utilities.h" Mapping::Mapping(const ustring & name, unsigned int book) { // Save variables. mybook = book; myname = name; } Mapping::~Mapping() { } void Mapping::me_to_original(int mychapter, const ustring & myverse, vector < int >&original_chapter, vector < int >&original_verse) /* Input: - a chapter (int). - a verse (ustring) : can be a sequence or a range too. Output: - containers of mapped chapters/verses. */ { // Storage for the containers with chapters and verses to map. vector < int >chapters; vector < int >verses; // Convert the verse to a container with half verses. vector < int >half_verses = verses_encode(myverse); set < int >encoded; // Divide the half-verses by 2 and add them to the containers with values to map. for (unsigned int i = 0; i < half_verses.size(); i++) { int verse = half_verses[i] / 2; if (encoded.find(verse) == encoded.end()) { chapters.push_back(mychapter); verses.push_back(verse); encoded.insert(verse); } } // Do the mapping. me_to_original(chapters, verses, original_chapter, original_verse); } void Mapping::me_to_original(vector < int >mychapter, vector < int >myverse, vector < int >&original_chapter, vector < int >&original_verse) /* Input: - containers of chapters/verses. Output: - containers of mapped chapters/verses. Containers as input and as output are needed as there may be a verse that maps to one verse in a chapter, and one verse in the next chapter. */ { for (unsigned int i = 0; i < mychapter.size(); i++) { vector < int >origchapter; vector < int >origverse; get_original(mychapter[i], myverse[i], origchapter, origverse); for (unsigned int i2 = 0; i2 < origchapter.size(); i2++) { original_chapter.push_back(origchapter[i2]); original_verse.push_back(origverse[i2]); } } } void Mapping::me_to_original(Reference & reference) { vector < int >remapped_chapters; vector < int >remapped_verses; me_to_original(reference.chapter, reference.verse, remapped_chapters, remapped_verses); reference.chapter = remapped_chapters[0]; reference.verse = convert_to_string(remapped_verses[0]); if (remapped_verses.size() > 1) { reference.verse.append("-"); reference.verse.append(convert_to_string(remapped_verses[remapped_verses.size() - 1])); } } void Mapping::original_to_me(int originalchapter, const ustring & originalverse, vector < int >&mychapter, vector < int >&myverse) /* Input: - a chapter (int). - a verse (ustring) : can be a sequence or a range too. Output: - containers of mapped chapters/verses. */ { // Storage for the containers with chapters and verses to map. vector < int >chapters; vector < int >verses; // Convert the verse to a container with half verses. vector < int >half_verses = verses_encode(originalverse); set < int >encoded; // Divide the half-verses by 2 and add them to the containers with values to map. for (unsigned int i = 0; i < half_verses.size(); i++) { int verse = half_verses[i] / 2; if (encoded.find(verse) == encoded.end()) { chapters.push_back(originalchapter); verses.push_back(verse); encoded.insert(verse); } } // Do the mapping. original_to_me(chapters, verses, mychapter, myverse); } void Mapping::original_to_me(vector < int >original_chapter, vector < int >original_verse, vector < int >&mychapter, vector < int >&myverse) { for (unsigned int i = 0; i < original_chapter.size(); i++) { vector chapter; vector verse; get_me(original_chapter[i], original_verse[i], chapter, verse); for (unsigned int i2 = 0; i2 < chapter.size(); i2++) { mychapter.push_back(chapter[i2]); myverse.push_back(verse[i2]); } } } void Mapping::original_to_me(Reference & reference) { vector < int >remapped_chapters; vector < int >remapped_verses; original_to_me(reference.chapter, reference.verse, remapped_chapters, remapped_verses); reference.chapter = remapped_chapters[0]; reference.verse = convert_to_string(remapped_verses[0]); if (remapped_verses.size() > 1) { reference.verse.append("-"); reference.verse.append(convert_to_string(remapped_verses[remapped_verses.size() - 1])); } } void Mapping::get_original(int mychapter, int myverse, vector < int >&originalchapter, vector < int >&originalverse) { extern Mappings *mappings; mappings->me2original(myname, mybook, mychapter, myverse, originalchapter, originalverse); if (originalchapter.empty()) { originalchapter.push_back(mychapter); originalverse.push_back(myverse); } } void Mapping::get_me(int originalchapter, int originalverse, vector < int >&mychapter, vector < int >&myverse) { extern Mappings *mappings; mappings->original2me(myname, mybook, originalchapter, originalverse, mychapter, myverse); if (mychapter.empty()) { mychapter.push_back(originalchapter); myverse.push_back(originalverse); } } void Mapping::book_change(int book) // Changes the book. { mybook = book; } bibledit-gtk-4.9/src/mapping.h000664 000766 000024 00000003710 12221507142 016445 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_MAPPING_H #define INCLUDED_MAPPING_H #include "libraries.h" #include "reference.h" class Mapping { public: Mapping (const ustring& name, unsigned int book); ~Mapping (); void me_to_original (int mychapter, const ustring& myverse, vector& original_chapter, vector& original_verse); void me_to_original (vector mychapter, vector myverse, vector& original_chapter, vector& original_verse); void me_to_original (Reference& reference); void original_to_me (int originalchapter, const ustring& originalverse, vector& mychapter, vector& myverse); void original_to_me (vector original_chapter, vector original_verse, vector& mychapter, vector& myverse); void original_to_me (Reference& reference); void book_change (int book); private: ustring myname; int mybook; void get_original (int mychapter, int myverse, vector& originalchapter, vector& originalverse); void get_me (int originalchapter, int originalverse, vector& mychapter, vector& myverse); }; #endif bibledit-gtk-4.9/src/mappings.cpp000644 000766 000024 00000020743 12453001367 017173 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "mappings.h" #include "utilities.h" #include "directories.h" #include "gwrappers.h" #include #include "bookdata.h" #include "books.h" #include "tiny_utilities.h" MappingStore::MappingStore(const ustring & system_in, const ustring & filename) { system = system_in; if (g_file_test(filename.c_str(), G_FILE_TEST_IS_REGULAR)) { gchar *contents; g_file_get_contents(filename.c_str(), &contents, NULL, NULL); xmlParserInputBufferPtr inputbuffer; inputbuffer = xmlParserInputBufferCreateMem(contents, strlen(contents), XML_CHAR_ENCODING_NONE); xmlTextReaderPtr reader = xmlNewTextReader(inputbuffer, NULL); if (reader) { char *opening_element = NULL; unsigned int myid; unsigned int mychapter; unsigned int myverse; unsigned int myoriginalid; unsigned int myoriginalchapter; unsigned int myoriginalverse; while ((xmlTextReaderRead(reader) == 1)) { switch (xmlTextReaderNodeType(reader)) { case XML_READER_TYPE_ELEMENT: { opening_element = (char *)xmlTextReaderName(reader); if (!strcmp(opening_element, "map")) { myid = 0; mychapter = 0; myverse = 0; myoriginalid = 0; myoriginalchapter = 0; myoriginalverse = 0; } break; } case XML_READER_TYPE_TEXT: { char *text = (char *)xmlTextReaderValue(reader); if (text) { if (!strcmp(opening_element, "book")) { myid = books_english_to_id(text); } if (!strcmp(opening_element, "chapter")) { mychapter = convert_to_int(text); } if (!strcmp(opening_element, "verse")) { myverse = convert_to_int(text); } if (!strcmp(opening_element, "original-book")) { myoriginalid = books_english_to_id(text); } if (!strcmp(opening_element, "original-chapter")) { myoriginalchapter = convert_to_int(text); } if (!strcmp(opening_element, "original-verse")) { myoriginalverse = convert_to_int(text); } free(text); } break; } case XML_READER_TYPE_END_ELEMENT: { char *closing_element = (char *)xmlTextReaderName(reader); if (!strcmp(closing_element, "map")) { if (myid == 0) break; if (mychapter == 0) break; if (myoriginalid == 0) break; if (myoriginalchapter == 0) break; // Verse == 0 occurs, so is allowed. id.push_back(myid); chapter.push_back(mychapter); verse.push_back(myverse); original_id.push_back(myoriginalid); original_chapter.push_back(myoriginalchapter); original_verse.push_back(myoriginalverse); } break; } } } } if (reader) xmlFreeTextReader(reader); if (inputbuffer) xmlFreeParserInputBuffer(inputbuffer); if (contents) g_free(contents); } } Mappings::Mappings(int dummy) { } vector < ustring > Mappings::systems_get() // Gets all available mapping systems and store them in the object. { if (available_systems.empty()) { // Get the system from the templates that come with Bibledit. ReadFiles rf1(Directories->get_package_data(), "mapping", ".xml"); for (unsigned int i = 0; i < rf1.files.size(); i++) { available_filenames.push_back(gw_build_filename(Directories->get_package_data(), rf1.files[i])); available_systems.push_back(filename_get_system(rf1.files[i])); } // Get the system from the templates provided by the user. ReadFiles rf2(Directories->get_templates_user(), "mapping", ".xml"); for (unsigned int i = 0; i < rf2.files.size(); i++) { available_filenames.push_back(gw_build_filename(Directories->get_templates_user(), rf2.files[i])); available_systems.push_back(filename_get_system(rf2.files[i])); } // Sort everything on name. quick_sort(available_systems, available_filenames, 0, available_systems.size()); } return available_systems; } ustring Mappings::filename_get_system(ustring filename) // Taking a filename, it produces the mapping name from it. { filename.erase(0, 8); filename.erase(filename.length() - 4, 4); replace_text(filename, "_", " "); size_t pos = 0; while (pos != string::npos) { filename.replace(pos, 1, upperCase(filename.substr(pos, 1))); pos = filename.find(" ", pos); if (pos != string::npos) pos++; } return filename; } unsigned int Mappings::system_pointer_get(ustring system) /* Get a pointer to the MappingStore for "system". If "system" does not exist, it takes "English". If "system" is not yet loaded, it first loads it, then gives the pointer. */ { // Load the localizations. if (available_systems.empty()) { systems_get(); } // Is the requested system available? bool available = false; for (unsigned int i = 0; i < available_systems.size(); i++) { if (system == available_systems[i]) { available = true; break; } } // If the system is not available, take "English". if (!available) system = "English"; // Get a pointer to the requested system, if it is already loaded. for (unsigned int i = 0; i < loaded_systems.size(); i++) { if (system == loaded_systems[i].system) return i; } // Load the requested system from the filename, and return a pointer to it. ustring filename; for (unsigned int i = 0; i < available_systems.size(); i++) { if (system == available_systems[i]) { filename = available_filenames[i]; break; } } MappingStore mappingstore(system, filename); loaded_systems.push_back(mappingstore); return loaded_systems.size() - 1; } void Mappings::me2original(const ustring & system, int mybook, int mychapter, int myverse, vector < int >&originalchapter, vector < int >&originalverse) // Takes mybook, mychapter and myverse in the mapping system, and produces // the chapters:verses in the original versification system that correspond // to it. { originalchapter.clear(); originalverse.clear(); unsigned int pointer = system_pointer_get(system); for (unsigned int i = 0; i < loaded_systems[pointer].id.size(); i++) { if ((unsigned int)mybook == loaded_systems[pointer].id[i]) { if ((unsigned int)mychapter == loaded_systems[pointer].chapter[i]) { if ((unsigned int)myverse == loaded_systems[pointer].verse[i]) { originalchapter.push_back(loaded_systems[pointer].original_chapter[i]); originalverse.push_back(loaded_systems[pointer].original_verse[i]); } } } } } void Mappings::original2me(const ustring & system, int originalbook, int originalchapter, int originalverse, vector < int >&mychapter, vector < int >&myverse) // Takes originalbook, originalchapter and originalverse, and produces // the chapters:verses in the versification system given, that correspond to it. { mychapter.clear(); myverse.clear(); unsigned int pointer = system_pointer_get(system); for (unsigned int i = 0; i < loaded_systems[pointer].id.size(); i++) { if ((unsigned int)originalbook == loaded_systems[pointer].id[i]) { if ((unsigned int)originalchapter == loaded_systems[pointer].original_chapter[i]) { if ((unsigned int)originalverse == loaded_systems[pointer].original_verse[i]) { mychapter.push_back(loaded_systems[pointer].chapter[i]); myverse.push_back(loaded_systems[pointer].verse[i]); } } } } } bibledit-gtk-4.9/src/mappings.h000664 000766 000024 00000003475 12221507140 016636 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_MAPPINGS_H #define INCLUDED_MAPPINGS_H #include "libraries.h" class MappingStore { public: MappingStore (const ustring& system_in, const ustring& filename); ustring system; vector id; vector chapter; vector verse; vector original_id; vector original_chapter; vector original_verse; }; class Mappings { public: Mappings (int dummy); vector systems_get (); void me2original (const ustring& system, int mybook, int mychapter, int myverse, vector& originalchapter, vector& originalverse); void original2me (const ustring& system, int originalbook, int originalchapter, int originalverse, vector& mychapter, vector& myverse); private: vector available_systems; vector available_filenames; ustring filename_get_system (ustring filename); vector loaded_systems; unsigned int system_pointer_get (ustring system); }; #endif bibledit-gtk-4.9/src/mechonmamre.cpp000644 000766 000024 00000043676 12453001367 017662 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "mechonmamre.h" #include #include "gwrappers.h" #include "progresswindow.h" #include #include "utilities.h" #include "books.h" #include "tiny_utilities.h" #include "directories.h" #include "unixwrappers.h" #include #include "sqlite_reader.h" #include "compress.h" #include "projectutils.h" #include "settings.h" ustring mechon_mamre_html_entry_url () { return "mechon_mamre_entry"; } ustring mechon_mamre_download_url () { return "mechon_mamre_download"; } ustring mechon_mamre_import_url () { return "mechon_mamre_import"; } void mechon_mamre_home_entry (HtmlWriter2& htmlwriter) { htmlwriter.paragraph_open (); htmlwriter.hyperlink_add (mechon_mamre_html_entry_url (), "Hebrew Bible with cantillation marks from Mechon Mamre"); htmlwriter.paragraph_close (); } void mechon_mamre_detailed_page (HtmlWriter2& htmlwriter) { htmlwriter.heading_open (3); htmlwriter.text_add ("Hebrew Bible with cantillation marks from Mechon Mamre"); htmlwriter.heading_close (); htmlwriter.paragraph_open(); htmlwriter.text_add ("The Hebrew Bible from Mechon Mamre provides a Hebrew text that can be useful for translating the Bible. Bibledit-Gtk can import this text. This consists of two steps: downloading it and importing it."); htmlwriter.paragraph_close(); htmlwriter.heading_open (4); htmlwriter.text_add ("1. Downloading the text"); htmlwriter.heading_close (); htmlwriter.paragraph_open(); htmlwriter.text_add ("When you click on the link below, a web browser will open, which will download the Hebrew text. The file will be called ct005.zip. Please save this file in the home directory, on your Desktop, or in the Downloads folder."); htmlwriter.paragraph_close(); htmlwriter.paragraph_open(); htmlwriter.hyperlink_add (mechon_mamre_download_url (), "Download it"); htmlwriter.paragraph_close(); htmlwriter.heading_open (4); htmlwriter.text_add ("2. Importing the text"); htmlwriter.heading_close (); htmlwriter.paragraph_open(); htmlwriter.text_add ("When you click on the link below, a new Bible will be created, and the file that you have downloaded will be imported into it."); htmlwriter.paragraph_close(); htmlwriter.paragraph_open(); htmlwriter.hyperlink_add (mechon_mamre_import_url (), "Import it"); htmlwriter.paragraph_close(); } void mechon_mamre_action_page (HtmlWriter2& htmlwriter) { htmlwriter.heading_open (3); htmlwriter.text_add ("Hebrew import from Mechon Mamre"); htmlwriter.heading_close (); vector messages; bool keep_going = true; // Locate the downloaded file. ustring ct005zipfilename = gw_build_filename (g_get_home_dir (), "ct005.zip"); messages.push_back ("Looking for file " + ct005zipfilename); if (!g_file_test (ct005zipfilename.c_str(), G_FILE_TEST_IS_REGULAR)) { ct005zipfilename.clear(); } if (ct005zipfilename.empty()) { ct005zipfilename = gw_build_filename (g_get_home_dir (), "Desktop", "ct005.zip"); messages.push_back ("Looking for file " + ct005zipfilename); if (!g_file_test (ct005zipfilename.c_str(), G_FILE_TEST_IS_REGULAR)) { ct005zipfilename.clear(); } } if (ct005zipfilename.empty()) { ct005zipfilename = gw_build_filename (g_get_home_dir (), "Downloads", "ct005.zip"); messages.push_back ("Looking for file " + ct005zipfilename); if (!g_file_test (ct005zipfilename.c_str(), G_FILE_TEST_IS_REGULAR)) { ct005zipfilename.clear(); } } if (ct005zipfilename.empty()) { messages.push_back ("Can't find Hebrew input file"); keep_going = false; } if (keep_going) { messages.push_back ("Using file " + ct005zipfilename); } // Unpack the zipped file. ustring directory; if (keep_going) { directory = gw_build_filename (Directories->get_temp (), "uncompress"); unix_rmdir (directory); gw_mkdir_with_parents (directory); if (!uncompress (ct005zipfilename, directory)) { messages.push_back ("Could not unpack the file"); keep_going = false; } messages.push_back ("Unpacking into folder " + directory); } // Show the readme file. if (keep_going) { ustring readmefile = gw_build_filename (directory, "readme.txt"); ReadText rt (readmefile, true, true); ustring line; for (unsigned int i = 0; i < rt.lines.size(); i++) { if (rt.lines[i].empty()) { if (!line.empty()) { messages.push_back (line); line.clear(); } } else { line.append (rt.lines[i] + " "); } } messages.push_back (line); } // Look for the directory where all the html files reside. if (keep_going) { directory = gw_build_filename (directory, "c", "ct"); if (!g_file_test (directory.c_str(), G_FILE_TEST_IS_DIR)) { messages.push_back ("Can't find data in directory " + directory); } messages.push_back ("Looking for data in directory " + directory); } // Get a list of the html files that have the data. vector files; if (keep_going) { ReadFiles rf (directory, "c", ".htm"); for (unsigned int i = 0; i < rf.files.size(); i++) { ustring filename = gw_build_filename (directory, rf.files[i]); // Check on a few characteristics. if (mechon_mamre_copyright(filename)) { unsigned int digitcount = digit_count_in_string(rf.files[i]); if ((digitcount == 3) || (digitcount == 4)) { files.push_back(filename); } } } } // Create a new Bible into which to import the data. ustring bible = "Hebrew Mechon Mamre"; if (keep_going) { if (project_exists (bible)) { messages.push_back ("A Bible called \"" + bible + "\" already exists"); keep_going = false; } else { project_create_restore (bible, ""); messages.push_back ("Creating a new Bible called \"" + bible + "\""); // Make a couple of settings. extern Settings * settings; ProjectConfiguration * projectconfig = settings->projectconfig (bible); projectconfig->versification_set ("Original"); projectconfig->editable_set (false); projectconfig->right_to_left_set (true); projectconfig->spelling_check_set (false); } } // Store all the chapters 0 in each book. if (keep_going) { vector books = books_type_to_ids(btOldTestament); ProgressWindow progresswindow ("Creating books", false); progresswindow.set_iterate (0, 1, books.size()); for (unsigned int bk = 0; bk < books.size(); bk++) { progresswindow.iterate (); vector usfm; usfm.push_back ("\\id " + books_id_to_paratext (books[bk])); CategorizeChapterVerse ccv (usfm); project_store_chapter (bible, books[bk], ccv); } } // Store all the chapters. if (keep_going) { ProgressWindow progresswindow ("Importing chapters", false); progresswindow.set_iterate (0, 1, files.size()); for (unsigned int i = 0; i < files.size(); i++) { progresswindow.iterate (); unsigned int book = 0; unsigned int chapter = 0; mechon_mamre_extract_book_chapter (files[i], book, chapter); vector contents = mechon_mamre_extract_contents (files[i], chapter); CategorizeChapterVerse ccv (contents); project_store_chapter (bible, book, ccv); messages.push_back ("Importing " + books_id_to_english (book) + " " + convert_to_string (chapter) + " from file " + files[i]); } } // Write accumulated messages. htmlwriter.heading_open (3); if (keep_going) { htmlwriter.text_add ("Success! Bible \"" + bible + "\" was created"); } else { htmlwriter.text_add ("Error!"); } htmlwriter.heading_close (); if (keep_going) { htmlwriter.paragraph_open (); htmlwriter.text_add ("To view the Hebrew text, open the Bible in the editor. Optionally set the font for better display of the Hebrew text. A donation made to Mechon Mamre will support their work."); htmlwriter.paragraph_close (); } for (unsigned int i = 0; i < messages.size(); i++) { htmlwriter.paragraph_open (); htmlwriter.text_add (messages[i]); htmlwriter.paragraph_close (); } // Write OK. htmlwriter.paragraph_open (); htmlwriter.hyperlink_add ("ok", "Ok"); htmlwriter.paragraph_close (); } bool mechon_mamre_copyright(const ustring & inputfile) // Returns true is a file has "Copyright" and "Mechon Mamre" in it. { // Read the file. gchar *contents; gsize length; GError *error = NULL; if (!g_file_get_contents(inputfile.c_str(), &contents, &length, &error)) { gw_critical(error->message); g_error_free(error); return false; } // Search for the signature. char *mechonmamre = g_strstr_len(contents, 400, "Mechon Mamre"); if (mechonmamre) { mechonmamre = g_strstr_len(contents, 400, "Copyright"); } // Free memory and return result. g_free(contents); if (mechonmamre) return true; else return false; } void mechon_mamre_extract_book_chapter (const ustring& file, unsigned int& book, unsigned int& chapter) // This gets a file passed, and returns its book and its chapter. { // Retrieve the base name, e.g. "c2702.htm". ustring book_chapter = gw_path_get_basename(file); // Remove the first character "c". book_chapter.erase (0, 1); // Remove the dot and what comes after. size_t pos = book_chapter.find ("."); book_chapter.erase (pos, 100); // Retrieve the chapter number out of the filename. ustring chapter_bit = book_chapter.substr (book_chapter.length() - 2, 2); book_chapter.erase (book_chapter.length() - 2, 2); for (unsigned int ch = 1; ch <= 150; ch++) { ustring mechonmamre_chapter; { gchar *chapter = NULL; if (ch < 100) { chapter = g_strdup_printf("%.2d", ch); } else { int i1 = ch / 10; int i2 = ch % 10; chapter = g_strdup_printf("%x%d", i1, i2); } mechonmamre_chapter = chapter; g_free(chapter); } if (mechonmamre_chapter == chapter_bit) { chapter = ch; break; } } // Retrieve the book name from the filename. vector < unsigned int >ot_ids = books_type_to_ids(btOldTestament); for (unsigned int bk = 0; bk < ot_ids.size(); bk++) { // Assemble the booknumber as used in the Hebrew Bible. ustring mechonmamre_id; /* Contents in Original Hebrew Bible Order: Torah - Genesis, Exodus, Leviticus, Numbers, Deuteronomy Prophets - Joshua, Judges, Samuel, Kings, Isaiah, Jeremiah, Ezekiel, Hosea, Joel, Amos, Obadiah, Jonah, Micah, Nahum, Habakkuk, Zephaniah, Haggai, Zechariah, Malachi Writings - Chronicles, Psalms, Job, Proverbs, Ruth, Song of Songs, Ecclesiastes, Lamentations, Esther, Daniel, Ezra / Nehemiah */ switch (ot_ids[bk]) { case 1: mechonmamre_id = "01"; break; // Bereshit - Genesis - בראשית case 2: mechonmamre_id = "02"; break; // Shemot - Exodus - שמות case 3: mechonmamre_id = "03"; break; // VaYikra - Leviticus - ויקרא case 4: mechonmamre_id = "04"; break; // BaMidbar - Numbers - במדבר case 5: mechonmamre_id = "05"; break; // Devarim - Deuteronomy - דברים case 6: mechonmamre_id = "06"; break; // Yehoshua - Joshua - יהושוע case 7: mechonmamre_id = "07"; break; // Shoftim - Judges - שופטים case 8: mechonmamre_id = "29"; break; // Ruth - Ruth - רות case 9: mechonmamre_id = "08a"; break; // Shmuel A - 1 Samuel - שמואל א case 10: mechonmamre_id = "08b"; break; // Shmuel B - 2 Samuel - שמואל ב case 11: mechonmamre_id = "09a"; break; // Melachim A - 1 Kings - מלכים א case 12: mechonmamre_id = "09b"; break; // Melachim B - 2 Kings - מלכים ב case 13: mechonmamre_id = "25a"; break; // Divrei Yamim A - 1 Chronicles - דברי הימים א case 14: mechonmamre_id = "25b"; break; // Divrei Yamim B - 2 Chronicles - דברי הימים ב case 15: mechonmamre_id = "35a"; break; // Ezra - Ezra - עזרא case 16: mechonmamre_id = "35b"; break; // Nechemiyah - Nehemiah - נחמיה case 17: mechonmamre_id = "33"; break; // Esther - Esther - אסתר case 18: mechonmamre_id = "27"; break; // Eyov - Job - איוב case 19: mechonmamre_id = "26"; break; // Tehilim - Psalms - תהילים case 20: mechonmamre_id = "28"; break; // Mishlei - Proverbs - משלי case 21: mechonmamre_id = "31"; break; // Keholet - Ecclesiastes - קוהלת case 22: mechonmamre_id = "30"; break; // Shir HaShirim - Song of Songs - שיר השירים case 23: mechonmamre_id = "10"; break; // Yisheyah - Isaiah - ישעיהו case 24: mechonmamre_id = "11"; break; // Yermiyah - Jeremiah - ירמיהו case 25: mechonmamre_id = "32"; break; // Eichah - Lamentations - איכה case 26: mechonmamre_id = "12"; break; // Yechezchial - Ezekiel - יחזקאל case 27: mechonmamre_id = "34"; break; // Daniyel - Daniel - דנייאל case 28: mechonmamre_id = "13"; break; // Hoshea - Hosea - הושע case 29: mechonmamre_id = "14"; break; // Yoel - Joel - יואל case 30: mechonmamre_id = "15"; break; // Amos - Amos - עמוס case 31: mechonmamre_id = "16"; break; // Ovadiyah - Obadiah - עובדיה case 32: mechonmamre_id = "17"; break; // Yonah - Jonah - יונה case 33: mechonmamre_id = "18"; break; // Michah - Micah - מיכה case 34: mechonmamre_id = "19"; break; // Nachum - Nahum - נחום case 35: mechonmamre_id = "20"; break; // Chabakuk - Habakkuk - חבקוק case 36: mechonmamre_id = "21"; break; // Tzefaniyah - Zephaniah - צפניה case 37: mechonmamre_id = "22"; break; // Chaggi - Haggai - חגיי case 38: mechonmamre_id = "23"; break; // Zechariyah - Zechariah - זכריה case 39: mechonmamre_id = "24"; break; // Malachi - Malachi - מלאכי } if (mechonmamre_id == book_chapter) { book = ot_ids[bk]; break; } } } vector mechon_mamre_extract_contents (const ustring& file, unsigned int chapter) { // Usfm data. vector lines; // Convert chapter number to USFM code. lines.push_back("\\c " + convert_to_string(chapter)); lines.push_back("\\p"); // Read the text of the .htm file, and select only the .htm lines that // contain the actual text. vector < ustring > htmlines; { ReadText rt (file, true, false); // Find lower boundary: the relevant parts start with a verse number. unsigned int lower_boundary = 0; for (unsigned int i = 0; i < rt.lines.size(); i++) { if (rt.lines[i].find("A NAME=") != string::npos) { lower_boundary = i; break; } } // Find higher boundary: the relevant part ends with a verse number // that is one past the last verse. unsigned int upper_boundary = 0; for (unsigned int i = rt.lines.size() - 1; i > 0; i--) { if (rt.lines[i].find("A NAME=") != string::npos) { upper_boundary = i; upper_boundary++; break; } } // Store the relevant html lines that contain the verses. for (unsigned int i = lower_boundary; i <= upper_boundary; i++) { htmlines.push_back(rt.lines[i]); } } // Go through the relevant text and extract the verses. ustring verse; for (unsigned int ln = 0; ln < htmlines.size(); ln++) { ustring s = number_in_string(htmlines[ln]); if (!s.empty()) { verse = "\\v " + s; } else { // A text line could be looking so (Psalms 1:1): //

א אַ֥שְֽׁרֵי הָאִ֗ישׁ    אֲשֶׁ֤ר ׀ לֹ֥א הָלַךְ֮ בַּֽעֲצַ֪ת רְשָׁ֫עִ֥ים
וּבְדֶ֣רֶךְ חַ֭טָּאִים לֹ֥א עָמָ֑ד    וּבְמוֹשַׁ֥ב לֵ֝צִ֗ים לֹ֣א יָשָֽׁב׃
ustring line = htmlines[ln]; // Convert
,

, etc. replace_text(line, "
", "\n\\nb\n"); replace_text(line, "

", "\n\\p\n"); replace_text(line, "", ""); replace_text(line, "", ""); replace_text(line, "{פ}", ""); replace_text(line, "{ס}", ""); size_t position = line.find_last_of(">"); line.erase(0, ++position); line = trim(line); lines.push_back(verse + " " + line); } } // Return the data. return lines; } bibledit-gtk-4.9/src/mechonmamre.h000664 000766 000024 00000002675 12221507151 017316 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_MECHON_MAMRE_H #define INCLUDED_MECHON_MAMRE_H #include "libraries.h" #include "htmlwriter2.h" #include "reference.h" ustring mechon_mamre_html_entry_url (); ustring mechon_mamre_download_url (); ustring mechon_mamre_import_url (); void mechon_mamre_home_entry (HtmlWriter2& htmlwriter); void mechon_mamre_detailed_page (HtmlWriter2& htmlwriter); void mechon_mamre_action_page (HtmlWriter2& htmlwriter); bool mechon_mamre_copyright (const ustring& inputfile); void mechon_mamre_extract_book_chapter (const ustring& file, unsigned int& book, unsigned int& chapter); vector mechon_mamre_extract_contents (const ustring& file, unsigned int chapter); #endif bibledit-gtk-4.9/src/merge_utils.cpp000644 000766 000024 00000016507 12453001367 017677 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "merge_utils.h" #include "utilities.h" #include "tiny_utilities.h" #include "usfmtools.h" #include "directories.h" #include "gwrappers.h" #include "projectutils.h" ustring merge_conflict_markup(unsigned int number) // Gives the text of the conflict markup. // Number: 1..3. { ustring markup; switch (number) { case 1: { markup = "before"; break; } case 2: { markup = "middle"; break; } case 3: { markup = "after"; break; } } if (!markup.empty()) { markup.insert(0, "__conflict__marker__"); markup.append("__"); } return markup; } MergeButton::MergeButton(int dummy) { } MergeButton::MergeButton() { } MergeButtonPair::MergeButtonPair(int dummy) { } MergeButtonPair::MergeButtonPair() { } ApproveButton::ApproveButton(int dummy) { } ApproveButton::ApproveButton() { } Patch::Patch(int dummy) { } Patch::Patch() { } vector < Patch > merge_read_patch(const ustring & filename) // Reads patches from file. { vector < Patch > patches; ReadText rt(filename, true, false); for (unsigned int i = 0; i < rt.lines.size(); i++) { unsigned int linenumber = convert_to_int(number_in_string(rt.lines[i])); bool addition = rt.lines[i].find("a") != string::npos; while (++i < rt.lines.size()) { if (rt.lines[i].find_first_of("<>") == 0) { rt.lines[i].erase(0, 2); Patch patch(0); patch.linenumber = linenumber; patch.addition = addition; patch.change = (rt.lines[i]); patches.push_back(patch); if (!addition) linenumber++; } else { i--; break; } } } return patches; } const gchar *merge_new_line_indicator() { return "__new__line__indicator__\n"; } const gchar *merge_verse_indicator() { return "___verse___indicator___"; } ustring merge_split_data(const ustring & data) { ustring splitdata; ParseLine parseline(data); for (unsigned int l = 0; l < parseline.lines.size(); l++) { ustring s(parseline.lines[l]); ustring v = usfm_extract_marker(s); if (v == "v") { size_t position = s.find(" "); position = CLAMP(position, 0, s.length()); s = s.substr(0, position); s.insert(0, " "); v = merge_verse_indicator(); for (unsigned int i = 0; i < 10; i++) { v.append(s); } v.append("\n"); for (unsigned int i = 0; i < 5; i++) { splitdata.append(v); } } Parse parse(parseline.lines[l], false); for (unsigned int w = 0; w < parse.words.size(); w++) { splitdata.append(parse.words[w]); splitdata.append("\n"); } if (l != (parseline.lines.size() - 1)) splitdata.append(merge_new_line_indicator()); } return splitdata; } ustring merge_join_data(const ustring & data) { ustring joineddata; Parse parse(data, false, merge_new_line_indicator()); for (unsigned int p = 0; p < parse.words.size(); p++) { ParseLine parseline(parse.words[p]); for (unsigned int pl = 0; pl < parseline.lines.size(); pl++) { if (parseline.lines[pl].find(merge_verse_indicator()) == 0) continue; joineddata.append(parseline.lines[pl]); if (pl != (parseline.lines.size() - 1)) joineddata.append(" "); } joineddata.append("\n"); } return joineddata; } ustring merge_split_data_character(const ustring & data) // Splits the data on the character level, so preparing it for running a diff. { ustring splitdata; ParseLine parseline(data); for (unsigned int l = 0; l < parseline.lines.size(); l++) { ustring s(parseline.lines[l]); ustring v = usfm_extract_marker(s); if (v == "v") { size_t position = s.find(" "); position = CLAMP(position, 0, s.length()); s = s.substr(0, position); s.insert(0, " "); v = merge_verse_indicator(); for (unsigned int i = 0; i < 10; i++) { v.append(s); } v.append("\n"); for (unsigned int i = 0; i < 5; i++) { splitdata.append(v); } } for (unsigned int c = 0; c < parseline.lines[l].size(); c++) { splitdata.append(parseline.lines[l].substr(c, 1)); splitdata.append("\n"); } if (l != (parseline.lines.size() - 1)) splitdata.append(merge_new_line_indicator()); } return splitdata; } ustring merge_join_data_character(const ustring & data) // Joins data previously split. { ustring joineddata; Parse parse(data, false, merge_new_line_indicator()); for (unsigned int p = 0; p < parse.words.size(); p++) { ParseLine parseline(parse.words[p]); for (unsigned int pl = 0; pl < parseline.lines.size(); pl++) { if (parseline.lines[pl].find(merge_verse_indicator()) == 0) continue; joineddata.append(parseline.lines[pl]); } joineddata.append("\n"); } return joineddata; } void merge_editor_and_file (vector merge_base, vector editor_lines, const ustring& project, unsigned int book, unsigned int chapter) // Merges the changes from the editor with the changes in the filesystem, // and stores the result to file. { gw_message ("Merge changes from user and server."); // If PHP is not available, skip running the filter to avoid complete data loss. if (!gw_find_program_in_path ("php")) { gw_message ("Cannot find PHP."); gw_message ("Bibledit-Gtk needs PHP for improved collaboration and merging."); gw_message ("Some changes were lost."); gw_message ("Install package php5-cli."); return; } ustring basefile = gw_build_filename (Directories->get_temp(), "mergebase.txt"); write_lines (basefile, merge_base); ustring userfile = gw_build_filename (Directories->get_temp(), "mergeuser.txt"); write_lines (userfile, editor_lines); vector server_lines = project_retrieve_chapter (project, book, chapter); ustring serverfile = gw_build_filename (Directories->get_temp(), "mergeserver.txt"); write_lines (serverfile, server_lines); ustring outputfile = gw_build_filename (Directories->get_temp(), "mergeoutput.txt"); GwSpawn spawn ("php"); spawn.arg (gw_build_filename (Directories->get_package_data (), "mergecli.php")); spawn.arg (basefile); spawn.arg (userfile); spawn.arg (serverfile); spawn.arg (outputfile); spawn.read (); spawn.run (); for (unsigned int i = 0; i < spawn.standardout.size(); i++) { gw_message (spawn.standardout[i]); } for (unsigned int i = 0; i < spawn.standarderr.size(); i++) { gw_message (spawn.standarderr[i]); } ReadText rt (outputfile, true); CategorizeChapterVerse ccv (rt.lines); project_store_chapter (project, book, ccv); } bibledit-gtk-4.9/src/merge_utils.h000664 000766 000024 00000004125 12221507147 017337 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_MERGE_UTILS_H #define INCLUDED_MERGE_UTILS_H #include "libraries.h" #include ustring merge_conflict_markup(unsigned int number); class MergeButton { public: MergeButton(int dummy); MergeButton(); GtkTextChildAnchor * childanchor; GtkWidget * button; ustring text; private: }; class MergeButtonPair { public: MergeButtonPair(int dummy); MergeButtonPair(); MergeButton button1; MergeButton button2; private: }; class Patch { public: Patch(int dummy); Patch(); unsigned int linenumber; bool addition; // Whether addition or deletion. ustring change; // Change to apply. private: }; vector merge_read_patch(const ustring& filename); class ApproveButton { public: ApproveButton(int dummy); ApproveButton(); GtkButton * button; Patch patch; private: }; const gchar * merge_new_line_indicator(); const gchar * merge_verse_indicator(); ustring merge_split_data(const ustring& data); ustring merge_join_data(const ustring& data); ustring merge_split_data_character(const ustring& data); ustring merge_join_data_character(const ustring& data); void merge_editor_and_file (vector merge_base, vector editor_lines, const ustring& project, unsigned int book, unsigned int chapter); #endif bibledit-gtk-4.9/src/morphology.cpp000664 000766 000024 00000002431 12221507145 017546 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "morphology.h" #include "robinson.h" #include "onlinebible.h" #include "bibleworks.h" bool morphology_define_parsing (ustring parsing, ustring& definition) // Gives a definition of the various morphological parsings Bibledit knows about. // Returns true if it managed. { // Is it a Robinson parsing? if (robinson_define_parsing (parsing, definition)) return true; // Is it a parsing coming from BibleWorks? if (bibleworks_define_parsing (parsing, definition)) return true; return false; } bibledit-gtk-4.9/src/morphology.h000664 000766 000024 00000001707 12221507130 017212 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_MORPHOLOGY_H #define INCLUDED_MORPHOLOGY_H #include "libraries.h" #include bool morphology_define_parsing (ustring parsing, ustring& definition); #endif bibledit-gtk-4.9/src/myfnmatch.c000664 000766 000024 00000010601 12221507140 016766 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ // The code was inspired by software copyrighted (©) 1992 Free Software Foundation, Inc. #include #include "myfnmatch.h" /* Some file systems are case-insensitive. If FOLD_FN_CHAR is #defined, it maps the character C onto its "canonical" form. In a case-insensitive system, it would map all alphanumeric characters to lower case. Under Windows NT, / and \ are both path component separators, so FOLD_FN_CHAR would map them both to /. */ #ifndef FOLD_FN_CHAR #define FOLD_FN_CHAR(c) (c) #endif /* Match STRING against the filename pattern PATTERN, returning zero if it matches, nonzero if not. */ int myfnmatch (const char *pattern, const char *string, int flags) { register const char *p = pattern, *n = string; register char c; if ((flags & ~FNM_FLAGS) != 0) { errno = EINVAL; return -1; } while ((c = *p++) != '\0') { switch (c) { case '?': if (*n == '\0') return FNM_NOMATCH; else if ((flags & FNM_PATHNAME) && *n == '/') return FNM_NOMATCH; else if ((flags & FNM_PERIOD) && *n == '.' && (n == string || ((flags & FNM_PATHNAME) && n[-1] == '/'))) return FNM_NOMATCH; break; case '\\': if (!(flags & FNM_NOESCAPE)) c = *p++; if (*n != c) return FNM_NOMATCH; break; case '*': if ((flags & FNM_PERIOD) && *n == '.' && (n == string || ((flags & FNM_PATHNAME) && n[-1] == '/'))) return FNM_NOMATCH; for (c = *p++; c == '?' || c == '*'; c = *p++, ++n) if (((flags & FNM_PATHNAME) && *n == '/') || (c == '?' && *n == '\0')) return FNM_NOMATCH; if (c == '\0') return 0; { char c1 = (!(flags & FNM_NOESCAPE) && c == '\\') ? *p : c; for (--p; *n != '\0'; ++n) if ((c == '[' || *n == c1) && myfnmatch(p, n, flags & ~FNM_PERIOD) == 0) return 0; return FNM_NOMATCH; } case '[': { /* Nonzero if the sense of the character class is inverted. */ register int not; if (*n == '\0') return FNM_NOMATCH; if ((flags & FNM_PERIOD) && *n == '.' && (n == string || ((flags & FNM_PATHNAME) && n[-1] == '/'))) return FNM_NOMATCH; not = (*p == '!' || *p == '^'); if (not) ++p; c = *p++; for (;;) { register char cstart = c, cend = c; if (!(flags & FNM_NOESCAPE) && c == '\\') cstart = cend = *p++; if (c == '\0') /* [ (unterminated) loses. */ return FNM_NOMATCH; c = *p++; if ((flags & FNM_PATHNAME) && c == '/') /* [/] can never match. */ return FNM_NOMATCH; if (c == '-' && *p != ']') { cend = *p++; if (!(flags & FNM_NOESCAPE) && cend == '\\') cend = *p++; if (cend == '\0') return FNM_NOMATCH; c = *p++; } if (*n >= cstart && *n <= cend) goto matched; if (c == ']') break; } if (!not) return FNM_NOMATCH; break; matched:; /* Skip the rest of the [...] that already matched. */ while (c != ']') { if (c == '\0') /* [... (unterminated) loses. */ return FNM_NOMATCH; c = *p++; if (!(flags & FNM_NOESCAPE) && c == '\\') /* 1003.2d11 is unclear if this is right. %%% */ ++p; } if (not) return FNM_NOMATCH; } break; default: if (FOLD_FN_CHAR (c) != FOLD_FN_CHAR (*n)) return FNM_NOMATCH; } ++n; } if (*n == '\0') return 0; return FNM_NOMATCH; } bibledit-gtk-4.9/src/myfnmatch.h000664 000766 000024 00000003343 12221507137 017006 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ // The code was inspired by software copyrighted (©) 1992 Free Software Foundation, Inc. #ifndef FNMATCH_H #define FNMATCH_H #ifdef __cplusplus extern "C" { #endif /* Bits set in the FLAGS argument to `fnmatch'. */ #undef FNM_PATHNAME #define FNM_PATHNAME (1 << 0)/* No wildcard can ever match `/'. */ #undef FNM_NOESCAPE #define FNM_NOESCAPE (1 << 1)/* Backslashes don't quote special chars. */ #undef FNM_PERIOD #define FNM_PERIOD (1 << 2)/* Leading `.' is matched only explicitly. */ #undef FNM_FLAGS #define FNM_FLAGS (FNM_PATHNAME|FNM_NOESCAPE|FNM_PERIOD) /* Value returned by `fnmatch' if STRING does not match PATTERN. */ #undef FNM_NOMATCH #define FNM_NOMATCH 1 /* Match STRING against the filename pattern PATTERN, returning zero if it matches, FNM_NOMATCH if not. */ int myfnmatch (const char *pattern, const char *string, int flags); #ifdef __cplusplus } #endif #endif /* fnmatch.h */ bibledit-gtk-4.9/src/nanohttp.cpp000664 000766 000024 00000003470 12221507145 017206 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "nanohttp.h" #include #include "gwrappers.h" #include "tiny_utilities.h" void nano_http_server_access () { ustring url = "http://localhost/"; void *http_context = xmlNanoHTTPOpen (url.c_str(), NULL); if (!http_context) { gw_critical ("Could not connect to the local web server"); return; } int return_code = xmlNanoHTTPReturnCode (http_context); if (return_code != 200) { gw_critical ("Local web server returned unusual code: " + convert_to_string (return_code)); } char *buffer = (char*) calloc (1, 1000); int size = 0; int nread; while ((nread = xmlNanoHTTPRead(http_context, buffer + size, 999)) > 0) { size += nread; if (nread == 999) { buffer = (char*) realloc (buffer, size + 999); buffer[size + 1] = '\0'; } } free(buffer); xmlNanoHTTPClose(http_context); } // The functions above work, but are sensitive to harsh conditions. // E.g. when requesting http://localhost (without a final slash) // it gave an error. It wanted http://localhost/. bibledit-gtk-4.9/src/nanohttp.h000664 000766 000024 00000001636 12221507137 016656 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_NANO_HTTP_H #define INCLUDED_NANO_HTTP_H #include "libraries.h" void nano_http_server_access (); #endif bibledit-gtk-4.9/src/note_editor.cpp000664 000766 000024 00000002737 12221507147 017675 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "note_editor.h" #include "gwrappers.h" #include "tiny_utilities.h" #include "html.h" NoteEditor::NoteEditor(int dummy) { } NoteEditor::~NoteEditor() { } void NoteEditor::store_original_data(const ustring & data) // Stores the data before editing. { original_data = data; } void NoteEditor::receive_data_from_html_editor(const char *data) // Receive data from the html note editor. { edited_data = data; } ustring NoteEditor::clean_edited_data () // Clean the data from the html note editor. { edited_data = trim (edited_data); return edited_data; } bool NoteEditor::data_was_edited() // Returns whether the note data was edited. { return (edited_data != original_data); } bibledit-gtk-4.9/src/note_editor.h000664 000766 000024 00000002657 12221507136 017341 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_NOTE_EDITOR_H #define INCLUDED_NOTE_EDITOR_H #include "libraries.h" #include class NoteEditor // Used while a note is being edited. { public: NoteEditor(int dummy); ~NoteEditor(); int id; bool newnote; unsigned int date_created; unsigned int date_modified; ustring created_by; GtkTextBuffer * textbuffer_references; ustring previous_category; ustring previous_project; void store_original_data (const ustring& data); void receive_data_from_html_editor (const char *data); ustring clean_edited_data(); bool data_was_edited (); private: ustring original_data; ustring edited_data; }; #endif bibledit-gtk-4.9/src/notecaller.cpp000664 000766 000024 00000004206 12221507134 017477 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "notecaller.h" #include "utilities.h" #include "constants.h" #include "tiny_utilities.h" NoteCaller::NoteCaller(NoteNumberingType numbering_in, ustring user_sequence) // Deal with the note callers. { numbering = numbering_in; sequence = user_sequence; if (numbering == nntAlphabetical) sequence = ALPHABET; reset(); } NoteCaller::~NoteCaller() { } void NoteCaller::reset() { caller_pointer = 0; } ustring NoteCaller::get_caller() { ustring caller; switch (numbering) { case nntNumerical: { caller = convert_to_string(caller_pointer + 1); break; } case nntAlphabetical: case nntUserDefined: { if (caller_pointer >= sequence.length()) caller_pointer = 0; caller = sequence[caller_pointer]; break; } } caller_pointer++; return caller; } ustring note_caller_numbering_per_page_pool() // This provides a pool of characters, to be used as temporary placeholders // for footnote numbers to be renumbered per page later on. // The "Linear B" script is used as it is not expected that these // characters ever be used in a Bible. { return "𐀀𐀁𐀂𐀃𐀄𐀅𐀆𐀇𐀈𐀉𐀊𐀋𐀍𐀎𐀏𐀐𐀑𐀒𐀓𐀔𐀕𐀖𐀗𐀘𐀙𐀚𐀛𐀜𐀝𐀞𐀟𐀠𐀡𐀢𐀣𐀤𐀥𐀦𐀨𐀩𐀪𐀫𐀬𐀭𐀮𐀯𐀰𐀱𐀲𐀳𐀴𐀵𐀶𐀷𐀸𐀹𐀺𐀼𐀽𐀿"; } bibledit-gtk-4.9/src/notecaller.h000664 000766 000024 00000002260 12221507142 017141 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_NOTE_CALLER_H #define INCLUDED_NOTE_CALLER_H #include "libraries.h" #include "style.h" class NoteCaller { public: NoteCaller (NoteNumberingType numbering_in, ustring user_sequence); ~NoteCaller (); void reset (); ustring get_caller (); NoteNumberingType numbering; ustring sequence; private: unsigned int caller_pointer; }; ustring note_caller_numbering_per_page_pool (); #endif bibledit-gtk-4.9/src/notes_utils.cpp000644 000766 000024 00000117326 12453001367 017731 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "utilities.h" #include #include "notes_utils.h" #include "directories.h" #include #include "sqlite_reader.h" #include "bible.h" #include "date_time_utils.h" #include "gwrappers.h" #include "shell.h" #include "progresswindow.h" #include "settings.h" #include "projectutils.h" #include "books.h" #include "settings.h" #include "versification.h" #include "unixwrappers.h" #include "tiny_utilities.h" #include "maintenance.h" #include "usfmtools.h" void notes_store_index_entry (sqlite3 *db, gint32 id); ustring notes_shared_storage_base_name () { return "data"; } ustring notes_shared_storage_folder () { return gw_build_filename (Directories->get_notes (), notes_shared_storage_base_name ()); } ustring notes_index_filename () // Returns the filename of the notes index. { return gw_build_filename(Directories->get_notes(), "index.sql"); } void notes_storage_verify() // Verify / setup the project notes storage system. { // Check an/or create the notes storage area. ustring directory; directory = notes_shared_storage_folder (); if (!g_file_test(directory.c_str(), G_FILE_TEST_IS_DIR)) { gw_mkdir_with_parents (directory); } // Convert old notes database to new format in separate files. // The reason for this is that notes in separate files can be shared through git. notes_convert_database_to_plain_files (); // If there's no index, create one. if (!g_file_test(notes_index_filename ().c_str(), G_FILE_TEST_IS_REGULAR)) { notes_create_index (); } } ustring notes_file_name (gint32 id) // The filename for a note with "id". { return gw_build_filename (notes_shared_storage_folder (), convert_to_string (id)); } gint notes_database_get_unique_id() // This generates a unique id, one that is not yet used in the notes storage. { gint32 id = 0; bool found = false; while (!found) { id = g_random_int_range(1, 100000000); ustring filename = notes_file_name (id); found = !g_file_test (filename.c_str(), G_FILE_TEST_EXISTS); } return id; } void notes_delete_one(int id) // Deletes the note with id. { // Unlink the note file. unlink (notes_file_name (id).c_str()); // Remove the entry from the index database sqlite3 *db; sqlite3_open(notes_index_filename().c_str(), &db); char *sql; sql = g_strdup_printf("delete from notes where id = %d;", id); sqlite3_exec(db, sql, NULL, NULL, NULL); g_free(sql); sqlite3_close(db); // Register this database for maintenance. maintenance_register_database (notes_index_filename()); } void notes_sort(vector < unsigned int >&ids, const vector < ustring > &refs, const vector < ustring > &allrefs, const vector < int >&dates) /* This sorts notes. ids - ID's of the notes. The ids will be modified and sorted, so that these can be used to fetch data from the database in the right order. refs - References to sort on first. allrefs - All the references to sort on next. dates - Modification dates to sort on third. */ { // No sorting when less than two entries. if (ids.size() < 2) return; // The sorting is done by putting everything in one string, and then // sorting the vector of strings, and then taking out the ids again. // Storage for strings to sort vector < ustring > strings_to_sort; // Go through all data to sort. for (unsigned int i = 0; i < ids.size(); i++) { // Storage for string to build. ustring string_to_build; // First part of the string is the reference. // It does not always has the same length, so make it 9. string_to_build = "0000" + refs[i]; string_to_build = string_to_build.substr(string_to_build.length() - 9, 9); // Next sort on all references. string_to_build.append(allrefs[i]); // Third part to sort on is the date. This Julian day has a length of 6 // characters at the time of programming, and will continue so until // Deo Volente the year 2739 A.D. Therefore there is no need to modify the // length of it. { ustring date; date = convert_to_string(dates[i]); string_to_build.append(date); } // Store built string strings_to_sort.push_back(string_to_build); } // Sort the data. quick_sort(strings_to_sort, ids, 0, strings_to_sort.size()); } void notes_select(vector & ids, unsigned int & id_cursor, const ustring& currentreference) /* This selects notes for display. It does this by calling another function that does the real work. The resulting selection will be stored in ids. It gives "id_cursor" which contains the id the cursor has to be put at. */ { // Get variables. extern Settings *settings; ustring category = settings->genconfig.notes_selection_category_get(); NotesSelectionReferenceType refselection = (NotesSelectionReferenceType) settings->genconfig.notes_selection_reference_get(); NotesSelectionEditedType editedselection = (NotesSelectionEditedType) settings->genconfig.notes_selection_edited_get(); bool currentprojectselection = settings->genconfig.notes_selection_current_project_get(); int date_from = settings->genconfig.notes_selection_date_from_get(); int date_to = settings->genconfig.notes_selection_date_to_get(); // Select notes. notes_select (ids, id_cursor, currentreference, category, refselection, editedselection, currentprojectselection, date_from, date_to); } void notes_select(vector & ids, unsigned int & id_cursor, const ustring& currentreference, const ustring& category, NotesSelectionReferenceType refselection, NotesSelectionEditedType editedselection, bool currentprojectselection, int date_from, int date_to) /* This selects notes for display. It does this based on the variables passed, including the current reference. The resulting selection will be stored in ids. It gives "id_cursor" which contains the id the cursor has to be put at. */ { // Clear ids. ids.clear(); // The average numerical equivalent of current reference. int numerical_currentreference = 0; { ustring book, chapter, verse; decode_reference(currentreference, book, chapter, verse); vector verses = verses_encode(verse); for (unsigned int i = 0; i < verses.size(); i++) { numerical_currentreference += verses[i]; } if (!verses.empty()) numerical_currentreference /= verses.size(); numerical_currentreference += reference_to_numerical_equivalent(book, chapter, "0"); } // Date selection. int currentdate = date_time_julian_day_get_current(); // Cursor focus calculation. int minimum_cursor_distance = G_MAXINT; // Database variables. sqlite3 *db; int rc; char *error = NULL; try { // Connect to database. rc = sqlite3_open(notes_index_filename().c_str(), &db); if (rc) throw runtime_error(sqlite3_errmsg(db)); sqlite3_busy_timeout(db, 1000); SqliteReader sqlitereader(0); // See which notes to select. switch (refselection) { case nsrtCurrentVerse: { // This selects any notes which refer to the current verse. ustring book, chapter, verse; decode_reference(currentreference, book, chapter, verse); unsigned int verse_zero; verse_zero = reference_to_numerical_equivalent(book, chapter, "0"); vector < int >verses = verses_encode(verse); for (unsigned int i = 0; i < verses.size(); i++) { ustring this_verse = convert_to_string(int (verse_zero + verses[i])); char *sql; sql = g_strdup_printf("select id, reference, modified, project, category from notes where reference glob ('* %s *');", this_verse.c_str()); rc = sqlite3_exec(db, sql, sqlitereader.callback, &sqlitereader, &error); g_free(sql); if (rc != SQLITE_OK) { throw runtime_error(error); } } break; } case nsrtCurrentChapter: { // This selects any notes which refer to the current chapter. ustring book, chapter, verse; decode_reference(currentreference, book, chapter, verse); unsigned int verse_zero; verse_zero = reference_to_numerical_equivalent(book, chapter, "0"); ustring this_chapter = convert_to_string(verse_zero); this_chapter.erase(this_chapter.length() - 3, 3); char *sql; sql = g_strdup_printf("select id, reference, modified, project, category from notes where reference glob ('* %s??? *');", this_chapter.c_str()); rc = sqlite3_exec(db, sql, sqlitereader.callback, &sqlitereader, &error); g_free(sql); if (rc != SQLITE_OK) { throw runtime_error(error); } break; } case nsrtCurrentBook: { // This selects any notes which refer to the current book. ustring book, chapter, verse; decode_reference(currentreference, book, chapter, verse); unsigned int verse_zero; verse_zero = reference_to_numerical_equivalent(book, chapter, "0"); ustring this_book = convert_to_string(verse_zero); this_book.erase(this_book.length() - 6); char *sql; sql = g_strdup_printf("select id, reference, modified, project, category from notes where reference glob ('* %s?????? *');", this_book.c_str()); rc = sqlite3_exec(db, sql, sqlitereader.callback, &sqlitereader, &error); g_free(sql); if (rc != SQLITE_OK) { throw runtime_error(error); } break; } case nsrtAny: { rc = sqlite3_exec(db, "select id, reference, modified, project, category from notes;", sqlitereader.callback, &sqlitereader, &error); if (rc != SQLITE_OK) { throw runtime_error(error); } break; } } // Storage for sorting purposes. vector references; vector distances; set already_stored_ids; // Read all resulting data from the database. Make further selections. for (unsigned int rc = 0; rc < sqlitereader.ustring0.size(); rc++) { // Selection based on the date. int modified_date = convert_to_int(sqlitereader.ustring2[rc]); switch (editedselection) { case nsetToday: { if (modified_date != currentdate) continue; break; } case nsetDateRange: { if (modified_date < date_from) continue; if (modified_date > date_to) continue; break; } case nsetAny: { break; } } // Selection based on the category of the note. if (!category.empty()) { if (category != sqlitereader.ustring4[rc]) continue; } // Selection based on project. if (currentprojectselection) { bool project_ok = false; ustring project_in_db = sqlitereader.ustring3[rc]; extern Settings *settings; if (project_in_db == settings->genconfig.project_get()) project_ok = true; // Current notes can use "All". if (project_in_db == "All") project_ok = true; // Only show notes when the project is fine. if (!project_ok) continue; } // Get note id. gint32 id = convert_to_int(sqlitereader.ustring0[rc]); // Sorting on the references that the note refers to. unsigned int average_note_reference = 0; { Parse parse(sqlitereader.ustring1[rc]); if (!parse.words.empty()) { for (unsigned int i = 0; i < parse.words.size(); i++) { average_note_reference += convert_to_int (parse.words[i]); } average_note_reference /= parse.words.size(); } } // Calculate the distance between note and reference. // Also see if the cursor must be positioned here. int distance = average_note_reference - numerical_currentreference; int absolute_distance = ABS (distance); if (absolute_distance < minimum_cursor_distance) { minimum_cursor_distance = absolute_distance; id_cursor = id; } // Store data. // As we now work with half-verses (10a, 10b), because of the way we select // notes we might have repeating ids. Filter these out. if (already_stored_ids.find(id) == already_stored_ids.end()) { ids.push_back(id); already_stored_ids.insert(id); distances.push_back(distance); } } // Sort the notes, based on the distances of the notes to the active reference. quick_sort(distances, ids, 0, distances.size()); } catch(exception & ex) { gw_critical(ex.what()); } // Close database sqlite3_close(db); } void notes_display_internal(const ustring& language, bool show_reference_text, bool show_summary, ustring& note_buffer, unsigned int id, const gchar * text, unsigned int cursor_id, unsigned int &cursor_offset) { // Optionally display the extra text. if (text) { note_buffer.append(text); note_buffer.append("
\n"); } // Get data from the note file. ustring note; ustring project; ustring reference; ustring category; int date_created; ustring user_created; int date_modified; ustring logbook; notes_read_one_from_file (id, note, project, reference, category, date_created, user_created, date_modified, logbook); // Parse the reference(s) string into its possible several references. Parse parse(reference, false); reference.clear(); // Keep list of references. vector references; // Go through each reference. for (unsigned int i2 = 0; i2 < parse.words.size(); i2++) { // Make it human readable. Reference ref(0); reference_discover(0, 0, "", parse.words[i2], ref.book, ref.chapter, ref.verse); if (!reference.empty()) reference.append(", "); reference.append(ref.human_readable(language)); references.push_back(ref); } // Start creating the heading with links. ustring linkheading; // If this note is to be focused, then insert a special anchor for that: // if (id == cursor_id) { linkheading.append (""); } extern Settings * settings; if (settings->session.project_notes_show_title) { // Insert a link with this heading, e.g.: Genesis 1.1 linkheading.append(""); linkheading.append(reference); if (settings->genconfig.notes_display_project_get()) linkheading.append(" " + project); if (settings->genconfig.notes_display_category_get()) linkheading.append(" " + category); if (settings->genconfig.notes_display_date_created_get()) linkheading.append(" " + date_time_julian_human_readable(date_created, true)); if (settings->genconfig.notes_display_created_by_get()) linkheading.append(" " + user_created); linkheading.append(""); // Append a [delete] link too, e.g.: [delete] linkheading.append(" "); linkheading.append("[delete]"); linkheading.append(""); // Append a [references] link too, e.g.: [references] linkheading.append(" "); linkheading.append("[references]"); linkheading.append(""); } // Add the heading to the note data. note_buffer.append(linkheading); // Handle summary. Show only the first few words. if (show_summary) { ustring summary = note; replace_text(summary, "\n", " "); replace_text(summary, "
", " "); Parse parse(summary, false); unsigned int maximum = 5; maximum = CLAMP(maximum, 0, parse.words.size()); summary.clear(); for (unsigned int w = 0; w < maximum; w++) { summary.append(" "); summary.append(parse.words[w]); } if (!summary.empty()) summary.append(" ..."); note_buffer.append(summary); } // Append a new line. note_buffer.append("
\n"); // Insert text of the references, if requested. if (show_reference_text) { for (unsigned int r = 0; r < references.size(); r++) { vector simple_verses = verse_range_sequence(references[r].verse); for (unsigned int sv = 0; sv < simple_verses.size(); sv++) { Reference ref(references[r]); ref.verse = convert_to_string(simple_verses[sv]); note_buffer.append(ref.human_readable(language)); note_buffer.append(" "); ustring text = project_retrieve_verse(project, ref.book, ref.chapter, ref.verse); if (!text.empty()) { text = usfm_get_verse_text_only (text); } note_buffer.append(text); note_buffer.append("
\n"); } } } // Get the text of the note. if (!show_summary) { note_buffer.append(note); note_buffer.append("
\n"); } } void notes_display(ustring& note_buffer, vector ids, unsigned int cursor_id, unsigned int &cursor_offset, bool & stop, unsigned int edited_note_id) /* This collect html data for displaying the notes. It collects data for all the notes that have an id given in ids. It inserts a html anchor at the start of the note whose id is "cursor_id". If an "edited_note_id" is given that is not in the list of "ids", then it will display that one too, together with a message. */ { extern Settings *settings; ProjectConfiguration *projectconfig = settings->projectconfig(settings->genconfig.project_get()); ustring language = projectconfig->language_get(); // Whether to show the text of the reference(s). bool show_reference_text = settings->genconfig.notes_display_reference_text_get(); // Whether to show the summary only. bool show_summary = settings->genconfig.notes_display_summary_get(); // See whether to display an extra note, one just edited. if (edited_note_id) { set id_set (ids.begin(), ids.end()); if (id_set.find (edited_note_id) == id_set.end()) { notes_display_internal(language, show_reference_text, show_summary, note_buffer, edited_note_id, "The following note is displayed because it was created or edited. Normally it would not have been displayed.", cursor_id, cursor_offset); } } // Go through all the notes. for (unsigned int c = 0; c < ids.size(); c++) { // Handle possible stop command. if (stop) continue; // Display this note. notes_display_internal(language, show_reference_text, show_summary, note_buffer, ids[c], NULL, cursor_id, cursor_offset); } } void notes_get_references_from_editor(GtkTextBuffer * textbuffer, vector < Reference > &references, vector < ustring > &messages) /* Gets all references from the notes editor. Normalizes them. Produces messages on trouble. Handles notes that span more than one chapter. */ { // Get all lines from the textbuffer. vector < ustring > lines; textbuffer_get_lines(textbuffer, lines); // When discovering a reference from a user's entry, use previous values, // so that it becomes quicker for a user to enter new references. // If Leviticus 10:11 is already there, and the user wishes to add verse // 12 also, he just enters 12 on a line, and that' it. Reference previousreference(0); for (unsigned int i = 0; i < lines.size(); i++) { if (!lines[i].empty()) { // Normalize reference. Reference reference(0); if (reference_discover(previousreference.book, previousreference.chapter, previousreference.verse, lines[i], reference.book, reference.chapter, reference.verse)) { ustring ch1, vs1, ch2, vs2; if (chapter_span_discover(lines[i], ch1, vs1, ch2, vs2)) { // We cross the chapter boundaries. // Store as two or more references, // the first one going up to the end of the chapter, // and the second one starting at the next chapter verse 1, // and any chapter in-between. extern Settings *settings; ProjectConfiguration *projectconfig = settings->projectconfig(settings->genconfig.project_get()); Reference ref(reference.book, convert_to_int(ch1), vs1); ustring lastverse = versification_get_last_verse(projectconfig->versification_get(), reference.book, convert_to_int(ch1)); ref.verse.append("-" + lastverse); references.push_back(ref); for (unsigned int ch = convert_to_int(ch1) + 1; ch < convert_to_int(ch2); ch++) { Reference ref(reference.book, ch, "1"); ustring lastverse = versification_get_last_verse(projectconfig->versification_get(), reference.book, ch); ref.verse.append("-" + lastverse); references.push_back(ref); } ref.chapter = convert_to_int(ch2); ref.verse = "1-" + vs2; references.push_back(ref); // Store values to discover next reference. previousreference.book = reference.book; previousreference.chapter = convert_to_int(ch2); previousreference.verse = vs2; } else { // We've a normal reference. // Store reference. references.push_back(reference); // Store values to discover next reference. previousreference.book = reference.book; previousreference.chapter = reference.chapter; previousreference.verse = reference.verse; } } else { messages.push_back("Reference " + lines[i] + " is not valid and has been removed."); } } } } ustring notes_categories_filename() // Returns the filename of the notes database. { return gw_build_filename(Directories->get_notes(), "categories"); } void notes_categories_check() // Check categories are there - if not, create default set. { if (!g_file_test(notes_categories_filename().c_str(), G_FILE_TEST_IS_REGULAR)) { vector < ustring > categories; categories.push_back("No issue"); categories.push_back("For myself"); categories.push_back("For subteam"); categories.push_back("For team"); categories.push_back("For scholar"); categories.push_back("For panel"); categories.push_back("For church"); categories.push_back("For consultant"); categories.push_back("For Bible society"); write_lines(notes_categories_filename(), categories); } } void notes_categories_add_from_database(vector < ustring > &categories) // Takes the existing notes categories, if there are any, and adds any // extra categories found in the database. { sqlite3 *db; int rc; char *error = NULL; try { // Get the unique categories. set < ustring > database_categories; rc = sqlite3_open(notes_index_filename().c_str(), &db); if (rc) { throw runtime_error(sqlite3_errmsg(db)); } sqlite3_busy_timeout(db, 1000); SqliteReader reader(0); rc = sqlite3_exec(db, "select category from notes;", reader.callback, &reader, &error); if (rc != SQLITE_OK) { throw runtime_error(error); } for (unsigned int i = 0; i < reader.ustring0.size(); i++) { database_categories.insert(reader.ustring0[i]); } // Add any new categories to the container. set < ustring > localcategories(categories.begin(), categories.end()); vector < ustring > db_categories(database_categories.begin(), database_categories.end()); for (unsigned int i = 0; i < db_categories.size(); i++) { if (localcategories.find(db_categories[i]) == localcategories.end()) { categories.push_back(db_categories[i]); } } } catch(exception & ex) { gw_critical(ex.what()); } sqlite3_close(db); } void notes_projects_add_from_database(vector & projects) // Takes the existing projects, if there are any, and adds any // extra projects found in the database. { sqlite3 *db; int rc; char *error = NULL; try { // Get the unique categories. set < ustring > database_projects; rc = sqlite3_open(notes_index_filename().c_str(), &db); if (rc) throw runtime_error(sqlite3_errmsg(db)); sqlite3_busy_timeout(db, 1000); SqliteReader reader(0); rc = sqlite3_exec(db, "select project from notes;", reader.callback, &reader, &error); if (rc != SQLITE_OK) { throw runtime_error(error); } for (unsigned int i = 0; i < reader.ustring0.size(); i++) { database_projects.insert(reader.ustring0[i]); } // Add any new categories to the container. set < ustring > localprojects(projects.begin(), projects.end()); vector < ustring > db_projects(database_projects.begin(), database_projects.end()); for (unsigned int i = 0; i < db_projects.size(); i++) { if (localprojects.find(db_projects[i]) == localprojects.end()) { projects.push_back(db_projects[i]); } } } catch(exception & ex) { gw_critical(ex.what()); } sqlite3_close(db); } void notes_change_category(const ustring & from, const ustring & to) // Changes all notes in category "from" to category "to". { sqlite3 *db; int rc; char *error = NULL; try { rc = sqlite3_open(notes_index_filename().c_str(), &db); if (rc) throw runtime_error(sqlite3_errmsg(db)); sqlite3_busy_timeout(db, 1000); // Read the id's of the notes with the old category. SqliteReader sqlitereader(0); char *sql; sql = g_strdup_printf("select id from notes where category = '%s';", from.c_str()); rc = sqlite3_exec(db, sql, sqlitereader.callback, &sqlitereader, &error); g_free(sql); if (rc) throw runtime_error(error); // Change the category in the notes in file. // This will update the index database as well. for (unsigned int i = 0; i < sqlitereader.ustring0.size(); i++) { gint32 id = convert_to_int (sqlitereader.ustring0[i]); ustring note; ustring project; ustring references; ustring category; int date_created; ustring user_created; int date_modified; ustring logbook; notes_read_one_from_file (id, note, project, references, category, date_created, user_created, date_modified, logbook); category = to; notes_store_one_in_file(id, note, project, references, category, date_created, user_created, date_modified, logbook); } } catch(exception & ex) { gw_critical(ex.what()); } sqlite3_close(db); // Register this database for maintenance. maintenance_register_database (notes_index_filename()); } void notes_change_project(const ustring & from, const ustring & to) // Changes all notes in project "from" to project "to". { sqlite3 *db; int rc; char *error = NULL; try { rc = sqlite3_open(notes_index_filename().c_str(), &db); if (rc) throw runtime_error(sqlite3_errmsg(db)); sqlite3_busy_timeout(db, 1000); // Read the id's of the notes with the old project. SqliteReader sqlitereader(0); char *sql; sql = g_strdup_printf("select id from notes where project = '%s';", from.c_str()); rc = sqlite3_exec(db, sql, sqlitereader.callback, &sqlitereader, &error); g_free(sql); if (rc) throw runtime_error(error); // Change the project in the notes in file. // This will update the index database as well. for (unsigned int i = 0; i < sqlitereader.ustring0.size(); i++) { gint32 id = convert_to_int (sqlitereader.ustring0[i]); ustring note; ustring project; ustring references; ustring category; int date_created; ustring user_created; int date_modified; ustring logbook; notes_read_one_from_file (id, note, project, references, category, date_created, user_created, date_modified, logbook); project = to; notes_store_one_in_file(id, note, project, references, category, date_created, user_created, date_modified, logbook); } } catch(exception & ex) { gw_critical(ex.what()); } sqlite3_close(db); // Register this database for maintenance. maintenance_register_database (notes_index_filename()); } void notes_read(vector < unsigned int >ids, vector < ustring > &data) // Reads notes. { data.clear(); for (unsigned int i = 0; i < ids.size(); i++) { ustring note; ustring project; ustring references; ustring category; int date_created; ustring user_created; int date_modified; ustring logbook; notes_read_one_from_file (ids[i], note, project, references, category, date_created, user_created, date_modified, logbook); data.push_back(note); } } const gchar * notes_cursor_anchor() // Gives the name of the anchor where the cursor has to jump to. { return "cursoranchor"; } unsigned int notes_count () { sqlite3 *db; sqlite3_open(notes_index_filename().c_str(), &db); sqlite3_busy_timeout(db, 1000); SqliteReader reader(0); sqlite3_exec(db, "select count(*) from notes;", reader.callback, &reader, NULL); gint count = 0; if (!reader.ustring0.empty()) { count = convert_to_int(reader.ustring0[0]); } sqlite3_close(db); return count; } void notes_convert_database_to_plain_files () { // Bail out if there's no database to convert. ustring database_filename = gw_build_filename(Directories->get_notes(), "notes.sql2"); if (!g_file_test(database_filename.c_str(), G_FILE_TEST_IS_REGULAR)) { return; } // Progress window. ProgressWindow progresswindow ("Converting project notes", false); // Access the database. sqlite3 *db; int rc; char *error = NULL; try { rc = sqlite3_open(database_filename.c_str(), &db); if (rc) throw runtime_error(sqlite3_errmsg(db)); sqlite3_busy_timeout(db, 1000); { // Read how many notes there are. SqliteReader reader(0); char *sql; sql = g_strdup_printf("select count(*) from notes;"); rc = sqlite3_exec(db, sql, reader.callback, &reader, &error); g_free(sql); if (rc != SQLITE_OK) throw runtime_error(error); if (!reader.ustring0.empty()) { progresswindow.set_iterate (0, 1, convert_to_int (reader.ustring0[0])); } } { SqliteReader reader(0); rc = sqlite3_exec(db, "select id, ref_osis, project, category, note, created, modified, user, logbook from notes;", reader.callback, &reader, &error); if (rc != SQLITE_OK) throw runtime_error(error); for (unsigned int i = 0; i < reader.ustring0.size(); i++) { progresswindow.iterate (); notes_store_one_in_file(convert_to_int (reader.ustring0[i]), // ID. reader.ustring4[i], // Note. reader.ustring2[i], // Project. reader.ustring1[i], // References. reader.ustring3[i], // Category. convert_to_int (reader.ustring5[i]), // Date created. reader.ustring7[i], // User. convert_to_int (reader.ustring6[i]), // Date modified. reader.ustring8[i]); // Logbook. } } // Delete the notes database that was converted. unlink (database_filename.c_str()); } catch(exception & ex) { gw_critical(ex.what()); } sqlite3_close(db); } void notes_store_one_in_file(int id, ustring & note, const ustring & project, const ustring& references, const ustring & category, int date_created, const ustring & user_created, int date_modified, ustring & logbook) // Stores a note in a file. // It should be flat files, not xml, because of the merging done by git. { // Store the note. vector lines; // Store date created. lines.push_back (convert_to_string (date_created)); // Store user who created it. lines.push_back (user_created); // Store references. lines.push_back (references); // Store category. lines.push_back (category); // Store project. lines.push_back (project); // Store date modified. lines.push_back (convert_to_string (date_modified)); // Store note. lines.push_back (note); // Store logbook separator. lines.push_back (notes_logbook_line ()); // Store logbook. lines.push_back (logbook); // Write the note. The filename is the note id. ustring note_filename = notes_file_name (id); write_lines (note_filename, lines); // Update the index. sqlite3 *db; sqlite3_open(notes_index_filename ().c_str(), &db); sqlite3_busy_timeout(db, 1000); notes_store_index_entry (db, id); sqlite3_close(db); } void notes_read_one_from_file (int id, ustring& note, ustring& project, ustring& references, ustring& category, int& date_created, ustring& user_created, int& date_modified, ustring& logbook) { note.clear(); logbook.clear(); ustring filename = notes_file_name (id); ReadText rt (filename, true, false); bool logbook_indicator_encountered = false; for (unsigned int i = 0; i < rt.lines.size(); i++) { ustring line = rt.lines[i]; if (i == 0) { // Retrieve date created. date_created = convert_to_int (line); } else if (i == 1) { // Retrieve user who created it. user_created = line; } else if (i == 2) { // Retrieve references. references = line; } else if (i == 3) { // Retrieve category. category = line; } else if (i == 4) { // Retrieve project. project = line; } else if (i == 5) { // Retrieve date modified. date_modified = convert_to_int (line); } else if (line == notes_logbook_line ()) { logbook_indicator_encountered = true; } else { if (logbook_indicator_encountered) { if (!logbook.empty()) logbook.append ("\n"); logbook.append (line); } else { if (!note.empty()) note.append ("\n"); note.append (line); } } } note = trim (note); logbook = trim (logbook); } ustring notes_logbook_line () { return "Logbook:"; } void notes_store_index_entry (sqlite3 *db, gint32 id) { gchar *sql; // Delete optional previous entry with "id". sql = g_strdup_printf("delete from notes where id = %d;", id); sqlite3_exec(db, sql, NULL, NULL, NULL); g_free(sql); // Read the note with "id". ustring note; ustring project; ustring references; ustring category; int date_created; ustring user_created; int date_modified; ustring logbook; notes_read_one_from_file (id, note, project, references, category, date_created, user_created, date_modified, logbook); // Bail out if there's no note. if (note.empty()) { return; } // Attend to the id: use variable "id". // Attend to the encoded references. Parse parse(references, false); ustring encoded_references; for (unsigned int i = 0; i < parse.words.size(); i++) { Reference reference(0); reference_discover(0, 0, "", parse.words[i], reference.book, reference.chapter, reference.verse); ustring book = books_id_to_english(reference.book); ustring chapter = convert_to_string(reference.chapter); vector < int >verses = verses_encode(reference.verse); int book_chapter = reference_to_numerical_equivalent(book, chapter, "0"); for (unsigned int i2 = 0; i2 < verses.size(); i2++) { encoded_references.append(" "); encoded_references.append(convert_to_string(int (book_chapter + verses[i2]))); } } encoded_references.append(" "); // Attend to the project: use variable "project". // Apostrophies need to be doubled before storing them. project = double_apostrophy(project); // Attend to the category: use variable "category". // Apostrophies need to be doubled before storing them. category = double_apostrophy(category); // Attend to the note text in case folded form // Apostrophies need to be doubled before storing them. note = note.casefold (); note = double_apostrophy(note); // Attend to the date created: use variable "date_created". // Attend to the date modified: use variable "date_modified". // Put new data in the database. sql = g_strdup_printf("insert into notes values (%d, '%s', '%s', '%s', '%s', %d, %d);", id, encoded_references.c_str(), project.c_str(), category.c_str(), note.c_str(), date_created, date_modified); sqlite3_exec(db, sql, NULL, NULL, NULL); g_free(sql); } void notes_create_index () // This creates an index for the notes stored in plain files. { ProgressWindow progresswindow ("Creating notes index", false); // Remove any old index. unlink (notes_index_filename ().c_str()); // Create index database. sqlite3 *db; int rc; char *error = NULL; try { // Connect to the index database. rc = sqlite3_open(notes_index_filename ().c_str(), &db); if (rc) throw runtime_error(sqlite3_errmsg(db)); sqlite3_busy_timeout(db, 1000); // Create the notes table. char *sql; sql = g_strdup_printf("create table notes (id integer, reference text, project text, category text, casefolded text, created integer, modified integer);"); rc = sqlite3_exec(db, sql, NULL, NULL, &error); g_free(sql); // Fast writing. sqlite3_exec(db, "PRAGMA synchronous=OFF;", NULL, NULL, NULL); // Create an index for all the note files. The index will speed up note selection. ReadFiles note_files (notes_shared_storage_folder (), "", ""); progresswindow.set_iterate (0, 1, note_files.files.size()); for (unsigned int i = 0; i < note_files.files.size(); i++) { progresswindow.iterate (); notes_store_index_entry (db, convert_to_int (note_files.files[i])); } } catch(exception & ex) { gw_critical(ex.what()); unlink (notes_index_filename ().c_str()); } // Close connection. sqlite3_close(db); } void notes_handle_vcs_feedback (const ustring& directory, const ustring& feedback) // This handles the feedback that comes from the version control system. { if (directory == notes_shared_storage_folder ()) { unsigned int note_id = 0; // The following feedback indicates that somebody created a new note: // create mode 100644 27185458 if (feedback.find ("create mode") != string::npos) { ustring s (feedback); s.erase (12); Parse parse (s); if (parse.words.size () == 2) { note_id = convert_to_int (parse.words[1]); } } // The following feedback indicates that somebody modified a note: // # modified: 27185458 if (feedback.find ("modified:") != string::npos) { ustring s (feedback); s.erase (12); note_id = convert_to_int (number_in_string (feedback)); } // The following feedback indicates that somebody deleted a note: // # deleted: 46473236 if (feedback.find ("deleted:") != string::npos) { ustring s (feedback); s.erase (11); note_id = convert_to_int (number_in_string (feedback)); } // See the following: // 95935882 | 9 +++++++++ // It means that this note was edited. if (feedback.find (" | ") != string::npos) { note_id = convert_to_int (number_in_string (feedback)); } if (note_id != 0) { gw_message ("Change detected for note " + convert_to_string (note_id)); // Update the index. sqlite3 *db; sqlite3_open(notes_index_filename ().c_str(), &db); sqlite3_busy_timeout(db, 1000); notes_store_index_entry (db, note_id); sqlite3_close(db); } } } bibledit-gtk-4.9/src/notes_utils.h000664 000766 000024 00000005773 12221507140 017373 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_NOTES_UTILS_H #define INCLUDED_NOTES_UTILS_H #include "libraries.h" #include #include "reference.h" #include "types.h" ustring notes_shared_storage_folder (); void notes_storage_verify(); ustring notes_index_filename (); ustring notes_file_name (gint32 id); gint notes_database_get_unique_id(); void notes_delete_one(int id); void notes_sort(vector& ids, const vector& refs, const vector& allrefs, const vector& dates); void notes_select(vector& ids, unsigned int& id_cursor, const ustring& currentreference); void notes_select(vector& ids, unsigned int& id_cursor, const ustring& currentreference, const ustring& category, NotesSelectionReferenceType refselection, NotesSelectionEditedType editedselection, bool currentprojectselection, int date_from, int date_to); void notes_display(ustring& note_buffer, vector ids, unsigned int cursor_id, unsigned int& cursor_offset, bool& stop, unsigned int edited_note_id); void notes_get_references_from_editor(GtkTextBuffer *textbuffer, vector& references, vector& messages); ustring notes_categories_filename(); void notes_categories_check(); void notes_categories_add_from_database(vector& categories); void notes_projects_add_from_database(vector& projects); void notes_change_category(const ustring& from, const ustring& to); void notes_change_project(const ustring& from, const ustring& to); void notes_read(vector ids, vector & data); const gchar * notes_cursor_anchor (); unsigned int notes_count (); void notes_convert_database_to_plain_files (); void notes_store_one_in_file(int id, ustring& note, const ustring& project, const ustring& references, const ustring& category, int date_created, const ustring& user_created, int date_modified, ustring& logbook); void notes_read_one_from_file (int id, ustring& note, ustring& project, ustring& references, ustring& category, int& date_created, ustring& user_created, int& date_modified, ustring& logbook); ustring notes_logbook_line (); void notes_create_index (); void notes_handle_vcs_feedback (const ustring& directory, const ustring& feedback); #endif bibledit-gtk-4.9/src/notetemplate.cpp000664 000766 000024 00000016342 12221507151 020053 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 #include "notetemplate.h" #include "xmlutils.h" #include "utilities.h" #include "tiny_utilities.h" #define NUMBERING "numbering" #define ANCHOR "anchor" #define AUTOMATIC_REFERENCE "automatic-reference" #define CHAPTER "chapter" #define DIVISION "division" #define VERSE "verse" #define SUFFIX "suffix" #define CONTENT "content" #define MARKER "marker" #define TEXT "text" #define REMEMBER "remember" #define SIZE "size" #define TIDY "tidy" NoteTemplate::NoteTemplate(const ustring & filename, NoteType notetype, bool write) { // Save variables. myfilename = filename; mywrite = write; // Set default values. numbering = 0; anchor = "*"; automatic_reference = false; reference_chapter = true; reference_division = "."; reference_verse = true; reference_suffix = ": "; // Read the style file. bool was_error = false; gchar *contents; gsize length; GError *error; error = NULL; if (!g_file_get_contents(filename.c_str(), &contents, &length, &error)) { cerr << error->message << endl; g_error_free(error); was_error = true; } // Short files are likely empty. if (length < 10) { was_error = true; } // Set up parser. GMarkupParseContext *context = NULL; GMarkupParser parser = { start_element_handler, end_element_handler, text_handler, passthrough_handler, error_handler }; // Parse xml file. if (!was_error) { context = g_markup_parse_context_new(&parser, GMarkupParseFlags(0), gpointer(this), NULL); if (!g_markup_parse_context_parse(context, contents, length, NULL)) { g_markup_parse_context_free(context); was_error = true; cerr << error->message << endl; } } if (!was_error) { if (!g_markup_parse_context_end_parse(context, NULL)) { g_markup_parse_context_free(context); was_error = true; cerr << error->message << endl; } } if (!was_error) g_markup_parse_context_free(context); current_element.clear(); current_value.clear(); } NoteTemplate::~NoteTemplate() { if (mywrite) { // If the object goes out of scope, it saves the settings. vector < ustring > output; output.push_back(xml_text_embed_in_tags(0, NUMBERING, convert_to_string(numbering))); output.push_back(xml_text_embed_in_tags(0, ANCHOR, anchor)); output.push_back(xml_text_embed_in_tags(0, AUTOMATIC_REFERENCE, convert_to_string(automatic_reference))); output.push_back(xml_text_embed_in_tags(0, CHAPTER, convert_to_string(reference_chapter))); output.push_back(xml_text_embed_in_tags(0, DIVISION, reference_division)); output.push_back(xml_text_embed_in_tags(0, VERSE, convert_to_string(reference_verse))); output.push_back(xml_text_embed_in_tags(0, SUFFIX, reference_suffix)); for (unsigned int i = 0; i < content_markers.size(); i++) { output.push_back(xml_tag(0, CONTENT, 0)); output.push_back(xml_text_embed_in_tags(1, MARKER, content_markers[i])); xml_handle_entities(content_texts[i], NULL); output.push_back(xml_text_embed_in_tags(1, TEXT, content_texts[i])); output.push_back(xml_text_embed_in_tags(1, REMEMBER, convert_to_string(content_remembers[i]))); output.push_back(xml_text_embed_in_tags(1, SIZE, convert_to_string(content_sizes[i]))); output.push_back(xml_text_embed_in_tags(1, TIDY, convert_to_string(content_tidies[i]))); output.push_back(xml_tag(0, CONTENT, 1)); } try { write_lines(myfilename, output); } catch(exception & ex) { cerr << ex.what() << endl; } } } void NoteTemplate::start_element_handler(GMarkupParseContext * context, const gchar * element_name, const gchar ** attribute_names, const gchar ** attribute_values, gpointer user_data, GError ** error) { ustring element; element = element_name; ((NoteTemplate *) user_data)->start_element_handler(element); } void NoteTemplate::end_element_handler(GMarkupParseContext * context, const gchar * element_name, gpointer user_data, GError ** error) { ustring element; element = element_name; ((NoteTemplate *) user_data)->end_element_handler(element); } void NoteTemplate::text_handler(GMarkupParseContext * context, const gchar * text, gsize text_len, gpointer user_data, GError ** error) { ustring utext; utext = text; ((NoteTemplate *) user_data)->text_handler(utext); } void NoteTemplate::passthrough_handler(GMarkupParseContext * context, const gchar * passthrough_text, gsize text_len, gpointer user_data, GError ** error) { } void NoteTemplate::error_handler(GMarkupParseContext * context, GError * error, gpointer user_data) { cerr << error->message << endl; } void NoteTemplate::start_element_handler(const ustring & element_name) /* When we encounter a new element that starts data, this handler deals with that. */ { current_element = element_name; current_value.clear(); } void NoteTemplate::end_element_handler(const ustring & element_name) /* When we encounter an element that ends data, this handler deals with that. */ { if (current_element == NUMBERING) numbering = convert_to_int(current_value); if (current_element == ANCHOR) anchor = current_value; if (current_element == AUTOMATIC_REFERENCE) automatic_reference = convert_to_bool(current_value); if (current_element == CHAPTER) reference_chapter = convert_to_bool(current_value); if (current_element == DIVISION) reference_division = current_value; if (current_element == VERSE) reference_verse = convert_to_bool(current_value); if (current_element == SUFFIX) reference_suffix = current_value; if (current_element == MARKER) content_marker = current_value; if (current_element == TEXT) content_text = current_value; if (current_element == REMEMBER) content_remember = current_value; if (current_element == TIDY) content_tidy = current_value; if (current_element == SIZE) content_size = current_value; if (element_name == CONTENT) { // Empty content markers are not loaded, because these cause unpredictable behaviour. if (!trim(content_marker).empty()) { content_markers.push_back(content_marker); content_texts.push_back(content_text); content_remembers.push_back(convert_to_bool(content_remember)); content_tidies.push_back(convert_to_bool(content_tidy)); content_sizes.push_back(convert_to_int(content_size)); } } current_element.clear(); current_value.clear(); } void NoteTemplate::text_handler(const ustring & text) /* When we encounter the text inside an element, this handler deals with that. */ { current_value.append(text); } bibledit-gtk-4.9/src/notetemplate.h000664 000766 000024 00000006536 12221507141 017523 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_NOTE_TEMPLATE_H #define INCLUDED_NOTE_TEMPLATE_H #include "libraries.h" #include "types.h" class NoteTemplate // Manages settings for one note template. { public: NoteTemplate (const ustring& filename, NoteType notetype, bool write); ~NoteTemplate (); int numbering; ustring anchor; bool automatic_reference; bool reference_chapter; ustring reference_division; bool reference_verse; ustring reference_suffix; vector content_markers; vector content_texts; vector content_remembers; vector content_sizes; vector content_tidies; private: void load (); ustring myfilename; bool mywrite; ustring current_element; ustring current_value; ustring content_marker; ustring content_text; ustring content_remember; ustring content_tidy; ustring content_size; static void start_element_handler (GMarkupParseContext *context, const gchar *element_name, const gchar **attribute_names, const gchar **attribute_values, gpointer user_data, GError **error); void start_element_handler (const ustring& element_name); static void end_element_handler (GMarkupParseContext *context, const gchar *element_name, gpointer user_data, GError **error); void end_element_handler (const ustring& element_name); static void text_handler (GMarkupParseContext *context, const gchar *text, gsize text_len, gpointer user_data, GError **error); void text_handler (const ustring& text); static void passthrough_handler (GMarkupParseContext *context, const gchar *passthrough_text, gsize text_len, gpointer user_data, GError **error); static void error_handler (GMarkupParseContext *context, GError *error, gpointer user_data); }; #endif bibledit-gtk-4.9/src/odtnotes.cpp000664 000766 000024 00000050172 12221507140 017206 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "utilities.h" #include #include "constants.h" #include "odtnotes.h" #include "date_time_utils.h" #include "gwrappers.h" #include "settings.h" #include "usfmtools.h" #include "tiny_utilities.h" OdtFootnote::OdtFootnote(const Usfm & usfm) // Stores the properties for all the footnote related styles. { // Store and initialize variables. show = true; NoteNumberingType note_numbering_type = nntNumerical; note_numbering_restart = nnrtChapter; ustring note_numbering_user_sequence; standardparagraph = NULL; extraparagraph = NULL; note_id = 0; // Go through all the styles. for (unsigned int i = 0; i < usfm.styles.size(); i++) { if (usfm.styles[i].type == stFootEndNote) { // Check subtype. FootEndNoteType footnotetype = (FootEndNoteType) usfm.styles[i].subtype; switch (footnotetype) { case fentFootnote: { // Store data for the markers and the anchor. opening_markers.push_back (usfm_get_full_opening_marker(usfm.styles[i].marker)); closing_markers.push_back (usfm_get_full_closing_marker(usfm.styles[i].marker)); note_numbering_type = (NoteNumberingType) usfm.styles[i].userint1; note_numbering_restart = (NoteNumberingRestartType) usfm.styles[i].userint2; note_numbering_user_sequence = usfm.styles[i].userstring1; break; } case fentEndnote: { // Endnotes not dealt with here. break; } case fentStandardContent: { // Standard content. if (!standardparagraph) standardparagraph = new XslFoFootnoteParagraph(usfm.styles[i].marker, usfm.styles[i].fontsize, usfm.styles[i].italic, usfm.styles[i].bold, usfm.styles[i].underline, usfm.styles[i].smallcaps, usfm.styles[i].justification, usfm.styles[i].spacebefore, usfm.styles[i].spaceafter, usfm.styles[i].leftmargin, usfm.styles[i].rightmargin, usfm.styles[i].firstlineindent, usfm.styles[i].userbool1); note_markers.insert(usfm.styles[i].marker); break; } case fentContent: case fentContentWithEndmarker: { // Store data for the footnote body. content_marker.push_back(usfm_get_full_opening_marker(usfm.styles[i].marker)); content_apocrypha.push_back(usfm.styles[i].userbool1); note_markers.insert(usfm.styles[i].marker); break; } case fentParagraph: { // Store relevant data for a paragraph marker. if (!extraparagraph) extraparagraph = new XslFoFootnoteParagraph(usfm.styles[i].marker, usfm.styles[i].fontsize, usfm.styles[i].italic, usfm.styles[i].bold, usfm.styles[i].underline, usfm.styles[i].smallcaps, usfm.styles[i].justification, usfm.styles[i].spacebefore, usfm.styles[i].spaceafter, usfm.styles[i].leftmargin, usfm.styles[i].rightmargin, usfm.styles[i].firstlineindent, usfm.styles[i].userbool1); note_markers.insert(usfm.styles[i].marker); break; } } } } // Ensure that both of the paragraph styles are there. if (!standardparagraph) standardparagraph = new XslFoFootnoteParagraph("ft", 11, OFF, OFF, OFF, OFF, JUSTIFIED, 0, 0, 3, 0, 0, false); if (!extraparagraph) extraparagraph = new XslFoFootnoteParagraph("fp", 11, OFF, OFF, OFF, OFF, JUSTIFIED, 0, 0, 3, 0, 3, false); // Create footnote caller object. notecaller = new NoteCaller(note_numbering_type, note_numbering_user_sequence); } OdtFootnote::~OdtFootnote() { delete notecaller; delete standardparagraph; delete extraparagraph; } void OdtFootnote::new_book() { if (note_numbering_restart == nnrtBook) notecaller->reset(); new_chapter(); } void OdtFootnote::new_chapter() { if (note_numbering_restart == nnrtChapter) notecaller->reset(); } void OdtFootnote::transform(ustring & line) // Replace all footnote related content with corresponding OpenDocument code. { // Transform all of the possible markers for the note. for (unsigned int i = 0; i < opening_markers.size(); i++) { transform2 (line, opening_markers[i], closing_markers[i]); } } void OdtFootnote::transform2 (ustring& line, const ustring& opening_marker, const ustring& closing_marker) // Replace all footnote related content with corresponding OpenDocument code. { // Variables. size_t opening_position; // Look for footnotes, but only deal with them if they have the endmarker too. opening_position = line.find(opening_marker); while (opening_position != string::npos) { // Look for the endmarker. size_t closing_position; closing_position = line.find(closing_marker, opening_position); if (closing_position == string::npos) { gw_warning("Missing endmarker: " + line); return; } // Take out this bit of the line, transform it, and insert it again. ustring footnote; footnote = line.substr(opening_position + opening_marker.length(), closing_position - opening_position - closing_marker.length()); line.erase(opening_position, closing_position - opening_position + closing_marker.length()); if (show) { footnote = transform_main_parts(footnote); line.insert(opening_position, footnote); } // Search for another footnote. opening_position = line.find(opening_marker, opening_position); } } ustring OdtFootnote::transform_main_parts(const ustring & line) { // Variables. ustring odtcode; ustring s; // Work on a copy. ustring footnote(line); // Add first bit of code. odtcode.append(""); replace_text(odtcode, "xx", convert_to_string(note_id)); note_id++; // Extract the footnote caller. ustring caller; if (footnote.length() > 0) { caller = footnote.substr(0, 1); caller = trim(caller); if (caller == "+") { caller = notecaller->get_caller(); // if (note_numbering_restart == nnrtPage); See how to work with the various callers. } else if (caller == "-") { caller.clear(); } footnote.erase(0, 1); footnote = trim(footnote); } // Insert the odt code. s = "xx"; replace_text(s, "xx", caller); odtcode.append(s); // We now come to the footnote body. odtcode.append(""); // Divide the footnote into paragraphs, if there are more than one. vector < ustring > paragraphs; size_t pos; pos = footnote.find(extraparagraph->marker_open); while (pos != string::npos) { paragraphs.push_back(footnote.substr(0, pos)); footnote.erase(0, pos + extraparagraph->marker_open.length()); pos = footnote.find(extraparagraph->marker_open); } paragraphs.push_back(footnote); // Deal with each paragraph. for (unsigned int i = 0; i < paragraphs.size(); i++) { // Choose the right paragraph. XslFoFootnoteParagraph *paragraph; if (i == 0) paragraph = standardparagraph; else paragraph = extraparagraph; // Format actual text, and comply with footnote nesting, see USFM standard. paragraphs[i] = usfm_notes_handle_nesting(paragraphs[i], paragraph->marker_open, paragraph->marker_close, note_markers); // Insert the paragraph odtcode.append(paragraphs[i]); } // Close footnote and foot notebody. odtcode.append(""); // Return the code. return odtcode; } OdtEndnote::OdtEndnote(const Usfm & usfm) // Stores the properties for all the endnote related styles. { // Store and initialize variables. show = true; NoteNumberingType note_numbering_type = nntNumerical; note_numbering_restart = nnrtNever; ustring note_numbering_user_sequence; standardparagraph = NULL; extraparagraph = NULL; note_id = 0; // Go through all the styles. for (unsigned int i = 0; i < usfm.styles.size(); i++) { if (usfm.styles[i].type == stFootEndNote) { // Check subtype. FootEndNoteType footnotetype = (FootEndNoteType) usfm.styles[i].subtype; switch (footnotetype) { case fentFootnote: { // Footnotes not dealt with here. break; } case fentEndnote: { // Store data for the markers and the anchor. opening_marker = usfm_get_full_opening_marker(usfm.styles[i].marker); closing_marker = usfm_get_full_closing_marker(usfm.styles[i].marker); // note_numbering_type = (NoteNumberingType) usfm.styles[i].userint1; // note_numbering_restart = (NoteNumberingRestartType) usfm.styles[i].userint2; // note_numbering_user_sequence = usfm.styles[i].userstring1; break; } case fentStandardContent: { // Standard content. if (!standardparagraph) standardparagraph = new XslFoFootnoteParagraph(usfm.styles[i].marker, usfm.styles[i].fontsize, usfm.styles[i].italic, usfm.styles[i].bold, usfm.styles[i].underline, usfm.styles[i].smallcaps, usfm.styles[i].justification, usfm.styles[i].spacebefore, usfm.styles[i].spaceafter, usfm.styles[i].leftmargin, usfm.styles[i].rightmargin, usfm.styles[i].firstlineindent, usfm.styles[i].userbool1); note_markers.insert(usfm.styles[i].marker); break; } case fentContent: case fentContentWithEndmarker: { // Store data for the footnote body. content_marker.push_back(usfm_get_full_opening_marker(usfm.styles[i].marker)); content_apocrypha.push_back(usfm.styles[i].userbool1); note_markers.insert(usfm.styles[i].marker); break; } case fentParagraph: { // Store relevant data for a paragraph marker. if (!extraparagraph) extraparagraph = new XslFoFootnoteParagraph(usfm.styles[i].marker, usfm.styles[i].fontsize, usfm.styles[i].italic, usfm.styles[i].bold, usfm.styles[i].underline, usfm.styles[i].smallcaps, usfm.styles[i].justification, usfm.styles[i].spacebefore, usfm.styles[i].spaceafter, usfm.styles[i].leftmargin, usfm.styles[i].rightmargin, usfm.styles[i].firstlineindent, usfm.styles[i].userbool1); note_markers.insert(usfm.styles[i].marker); break; } } } } // Ensure that both of the paragraph styles are there. if (!standardparagraph) standardparagraph = new XslFoFootnoteParagraph("ft", 11, OFF, OFF, OFF, OFF, JUSTIFIED, 0, 0, 3, 0, 0, false); if (!extraparagraph) extraparagraph = new XslFoFootnoteParagraph("fp", 11, OFF, OFF, OFF, OFF, JUSTIFIED, 0, 0, 3, 0, 3, false); // Create footnote caller object. notecaller = new NoteCaller(note_numbering_type, note_numbering_user_sequence); } OdtEndnote::~OdtEndnote() { delete notecaller; delete standardparagraph; delete extraparagraph; } void OdtEndnote::new_book() { if (note_numbering_restart == nnrtBook) notecaller->reset(); new_chapter(); } void OdtEndnote::new_chapter() { if (note_numbering_restart == nnrtChapter) notecaller->reset(); } void OdtEndnote::transform(ustring & line) // Replace all endnote related content with corresponding OpenDocument code. { // If no opening marker in stylesheet, bail out. if (opening_marker.empty()) return; // Variables. size_t opening_position; // Look for endnotes, but only deal with them if they have the endmarker too. opening_position = line.find(opening_marker); while (opening_position != string::npos) { // Look for the endmarker. size_t closing_position; closing_position = line.find(closing_marker, opening_position); if (closing_position == string::npos) { gw_warning("Missing endmarker: " + line); return; } // Take out this bit of the line, transform it, and insert it again. ustring note; note = line.substr(opening_position + opening_marker.length(), closing_position - opening_position - closing_marker.length()); line.erase(opening_position, closing_position - opening_position + closing_marker.length()); if (show) { note = transform_main_parts(note); line.insert(opening_position, note); } // Search for another footnote. opening_position = line.find(opening_marker, opening_position); } } ustring OdtEndnote::transform_main_parts(const ustring & line) { // Variables. ustring odtcode; ustring s; // Work on a copy. ustring endnote(line); // Add first bit of code. odtcode.append(""); replace_text(odtcode, "xx", convert_to_string(note_id)); note_id++; // Extract the footnote caller. ustring caller; if (endnote.length() > 0) { caller = endnote.substr(0, 1); caller = trim(caller); if (caller == "+") { caller = notecaller->get_caller(); // if (note_numbering_restart == nnrtPage); See how to work with the various callers. } else if (caller == "-") { caller.clear(); } endnote.erase(0, 1); endnote = trim(endnote); } // Insert the odt code. s = "xx"; replace_text(s, "xx", caller); odtcode.append(s); // We now come to the footnote body. odtcode.append(""); // Divide the footnote into paragraphs, if there are more than one. vector < ustring > paragraphs; size_t pos; pos = endnote.find(extraparagraph->marker_open); while (pos != string::npos) { paragraphs.push_back(endnote.substr(0, pos)); endnote.erase(0, pos + extraparagraph->marker_open.length()); pos = endnote.find(extraparagraph->marker_open); } paragraphs.push_back(endnote); // Deal with each paragraph. for (unsigned int i = 0; i < paragraphs.size(); i++) { // Choose the right paragraph. XslFoFootnoteParagraph *paragraph; if (i == 0) paragraph = standardparagraph; else paragraph = extraparagraph; // Format actual text, and comply with footnote nesting, see USFM standard. paragraphs[i] = usfm_notes_handle_nesting(paragraphs[i], paragraph->marker_open, paragraph->marker_close, note_markers); // Insert the paragraph odtcode.append(paragraphs[i]); } // Close footnote and foot notebody. odtcode.append(""); // Return the code. return odtcode; } OdtXref::OdtXref(const Usfm & usfm) // Stores the properties for all the xref related styles. { // Store and initialize variables. show = true; NoteNumberingType note_numbering_type = nntAlphabetical; note_numbering_restart = nnrtChapter; ustring note_numbering_user_sequence; standardparagraph = NULL; note_id = 0; // Go through all the styles. for (unsigned int i = 0; i < usfm.styles.size(); i++) { if (usfm.styles[i].type == stCrossreference) { // Check subtype. CrossreferenceType xreftype = (CrossreferenceType) usfm.styles[i].subtype; switch (xreftype) { case ctCrossreference: { // Store data for the markers and the anchor. opening_marker = usfm_get_full_opening_marker(usfm.styles[i].marker); closing_marker = usfm_get_full_closing_marker(usfm.styles[i].marker); note_numbering_type = (NoteNumberingType) usfm.styles[i].userint1; note_numbering_restart = (NoteNumberingRestartType) usfm.styles[i].userint2; note_numbering_user_sequence = usfm.styles[i].userstring1; break; } case ctStandardContent: { // Standard content. if (!standardparagraph) standardparagraph = new XslFoFootnoteParagraph(usfm.styles[i].marker, usfm.styles[i].fontsize, usfm.styles[i].italic, usfm.styles[i].bold, usfm.styles[i].underline, usfm.styles[i].smallcaps, usfm.styles[i].justification, usfm.styles[i].spacebefore, usfm.styles[i].spaceafter, usfm.styles[i].leftmargin, usfm.styles[i].rightmargin, usfm.styles[i].firstlineindent, usfm.styles[i].userbool1); note_markers.insert(usfm.styles[i].marker); break; } case ctContent: case ctContentWithEndmarker: { // Store data for the footnote body. content_marker.push_back(usfm_get_full_opening_marker(usfm.styles[i].marker)); content_apocrypha.push_back(usfm.styles[i].userbool1); note_markers.insert(usfm.styles[i].marker); break; } } } } // Ensure that the paragraph style is there. if (!standardparagraph) standardparagraph = new XslFoFootnoteParagraph("xt", 11, OFF, OFF, OFF, OFF, JUSTIFIED, 0, 0, 3, 0, 0, false); // Create caller object. notecaller = new NoteCaller(note_numbering_type, note_numbering_user_sequence); } OdtXref::~OdtXref() { delete notecaller; delete standardparagraph; } void OdtXref::new_book() { if (note_numbering_restart == nnrtBook) notecaller->reset(); new_chapter(); } void OdtXref::new_chapter() { if (note_numbering_restart == nnrtChapter) notecaller->reset(); } void OdtXref::transform(ustring & line) // Replace all xref related content with corresponding OpenDocument code. { // If no opening marker in stylesheet, bail out. if (opening_marker.empty()) return; // Variables. size_t opening_position; // Look for notes, but only deal with them if they have the endmarker too. opening_position = line.find(opening_marker); while (opening_position != string::npos) { // Look for the endmarker. size_t closing_position; closing_position = line.find(closing_marker, opening_position); if (closing_position == string::npos) { gw_warning("Missing endmarker: " + line); return; } // Take out this bit of the line, transform it, and insert it again. ustring footnote; footnote = line.substr(opening_position + opening_marker.length(), closing_position - opening_position - closing_marker.length()); line.erase(opening_position, closing_position - opening_position + closing_marker.length()); if (show) { footnote = transform_main_parts(footnote); line.insert(opening_position, footnote); } // Search for another footnote. opening_position = line.find(opening_marker, opening_position); } } ustring OdtXref::transform_main_parts(const ustring & line) { // Variables. ustring odtcode; ustring s; // Work on a copy. ustring footnote(line); // Add first bit of code. odtcode.append(""); replace_text(odtcode, "xx", convert_to_string(note_id)); note_id++; // Extract the note caller. ustring caller; if (footnote.length() > 0) { caller = footnote.substr(0, 1); caller = trim(caller); if (caller == "+") { caller = notecaller->get_caller(); // if (note_numbering_restart == nnrtPage); See how to work with the various callers. } else if (caller == "-") { caller.clear(); } footnote.erase(0, 1); footnote = trim(footnote); } // Insert the odt code. s = "xx"; replace_text(s, "xx", caller); odtcode.append(s); // We now come to the footnote body. odtcode.append(""); // Deal with the xref. { // Format actual text, and comply with footnote nesting, see USFM standard. footnote = usfm_notes_handle_nesting(footnote, standardparagraph->marker_open, standardparagraph->marker_close, note_markers); // Insert the paragraph odtcode.append(footnote); } // Close footnote and foot notebody. odtcode.append(""); // Return the code. return odtcode; } bibledit-gtk-4.9/src/odtnotes.h000664 000766 000024 00000005457 12221507150 016662 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_ODTNOTES_H #define INCLUDED_ODTNOTES_H #include "libraries.h" #include #include #include "usfm.h" #include "notecaller.h" #include "xslfofootnoteparagraph.h" class OdtFootnote { public: OdtFootnote (const Usfm& usfm); ~OdtFootnote (); void new_book (); void new_chapter (); void transform (ustring& line); NoteCaller * notecaller; private: bool show; NoteNumberingRestartType note_numbering_restart; vector opening_markers; vector closing_markers; bool anchor_apocrypha; vector content_marker; vector content_apocrypha; set note_markers; XslFoFootnoteParagraph * standardparagraph; XslFoFootnoteParagraph * extraparagraph; void transform2 (ustring& line, const ustring& opening_marker, const ustring& closing_marker); ustring transform_main_parts (const ustring& line); unsigned int note_id; }; class OdtEndnote { public: OdtEndnote (const Usfm& usfm); ~OdtEndnote (); void new_book (); void new_chapter (); void transform (ustring& line); NoteCaller * notecaller; private: bool show; NoteNumberingRestartType note_numbering_restart; ustring opening_marker; ustring closing_marker; bool anchor_apocrypha; vector content_marker; vector content_apocrypha; set note_markers; XslFoFootnoteParagraph * standardparagraph; XslFoFootnoteParagraph * extraparagraph; ustring transform_main_parts (const ustring& line); unsigned int note_id; }; class OdtXref { public: OdtXref (const Usfm& usfm); ~OdtXref (); void new_book (); void new_chapter (); void transform (ustring& line); NoteCaller * notecaller; private: bool show; NoteNumberingRestartType note_numbering_restart; ustring opening_marker; ustring closing_marker; bool anchor_apocrypha; vector content_marker; vector content_apocrypha; set note_markers; XslFoFootnoteParagraph * standardparagraph; ustring transform_main_parts (const ustring& line); unsigned int note_id; }; #endif bibledit-gtk-4.9/src/odtutils.cpp000664 000766 000024 00000006260 12221507147 017224 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "utilities.h" #include #include "constants.h" #include "odtutils.h" #include "date_time_utils.h" #include "gwrappers.h" #include "settings.h" #include "color.h" OdtTextParagraph::OdtTextParagraph(vector < ustring > *lines, const ustring & stylename) // OpenDocument Text Text Paragraph. // If no stylename is given, it takes the "Standard" style. { // Save pointer, init variables. mylines = lines; mynewline = false; // Build the line. myline = ""); // Line length. linelength = myline.length(); } OdtTextParagraph::~OdtTextParagraph() { // Close the paragraph. myline.append(""); // Store the line. mylines->push_back(myline); } void OdtTextParagraph::newline() { mynewline = true; } void OdtTextParagraph::plaintext(const ustring & line) { if (mynewline) myline.append(" "); mynewline = false; if (linelength != myline.length()) myline.append(" "); myline.append(line); } void OdtTextParagraph::spannedtext(const ustring & line, const ustring & stylename) { if (mynewline) myline.append(" "); mynewline = false; myline.append(""); myline.append(line); myline.append(""); } ustring odt_content_xml_filename(const ustring & directory) { return gw_build_filename(directory, "content.xml"); } void odt_set_font(const ustring & directory, const ustring & fontname) // Writes the font to the right files in the directory given. { // Save the font in the content file. ReadText rt2(odt_content_xml_filename(directory), true, false); for (unsigned int i = 0; i < rt2.lines.size(); i++) { replace_text(rt2.lines[i], "Bitstream", fontname); } write_lines(odt_content_xml_filename(directory), rt2.lines); } void odt_insert_content(const ustring & directory, const vector < ustring > &text) { vector < ustring > odtlines; ReadText rt(odt_content_xml_filename(directory), true, false); for (unsigned int i = 0; i < rt.lines.size(); i++) { if (rt.lines[i].find("") == 0) { for (unsigned int i2 = 0; i2 < text.size(); i2++) { odtlines.push_back(text[i2]); } } odtlines.push_back(rt.lines[i]); } write_lines(odt_content_xml_filename(directory), odtlines); } bibledit-gtk-4.9/src/odtutils.h000664 000766 000024 00000003062 12221507130 016656 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_ODTUTILS_H #define INCLUDED_ODTUTILS_H #include "libraries.h" #include #include class OdtTextParagraph { public: OdtTextParagraph (vector * lines, const ustring& stylename); ~OdtTextParagraph (); void newline (); void plaintext (const ustring& line); void spannedtext (const ustring& line, const ustring& stylename); private: ustring myline; vector * mylines; size_t linelength; bool mynewline; }; ustring odt_content_xml_filename (const ustring& directory); void odt_set_font (const ustring& directory, const ustring& fontname); void odt_insert_content (const ustring& directory, const vector & text); void odt_insert_styles (const ustring& directory, const vector & styles, bool right_to_left); #endif bibledit-gtk-4.9/src/onlinebible.cpp000664 000766 000024 00000014214 12221507146 017634 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "onlinebible.h" #include "utilities.h" #include "clean.h" #include "usfmtools.h" #include "bible.h" #include "books.h" #include "gwrappers.h" #include "directories.h" #include "unixwrappers.h" #include "tiny_utilities.h" #include "dialogradiobutton.h" #include "localizedbooks.h" #include "categorize.h" #include "projectutils.h" #include "progresswindow.h" #include "shell.h" #include "versification.h" bool online_bible_is_running () // Returns true if the Online Bible runs on Wine. { vector processes = list_processes (); for (unsigned int i = 0; i < processes.size(); i++) { ustring process = lowerCase (processes[i]); if (g_str_has_suffix (process.c_str(), "olb.exe")) return true; } return false; } bool online_bible_ok_reply_validate (ustring& reply) // Normally a reply obtained from the Online Bible through the Bibledit Windows // Outpost starts with OK Reply:. This function validates it, // and removes the bit. { if (reply.find ("OK Reply: ") == 0) { reply.erase (0, 10); return true; } return false; } void import_online_bible (WindowsOutpost * windows_outpost, const ustring& online_bible, const ustring& bibledit_bible, vector & summary_messages) { ustring response; ProgressWindow progresswindow ("Import", true); // Get the books in this Online Bible. vector books; response = windows_outpost->OnlineBibleDirectCommandResponseGet("GetBookAbbreviationsForVersion " + online_bible); if (online_bible_ok_reply_validate (response)) { ParseLine parseline (response); books = parseline.lines; } // Bail out if there were no books. if (books.empty()) { summary_messages.push_back ("Could not get the names of the books"); return; } // Go through the books. for (unsigned int bk = 0; bk < books.size(); bk++) { // Get the Online Bible book, and the Bibledit equivalent. ustring book_olb = books[bk]; unsigned int book_id = books_online_bible_to_id (book_olb); // Progress. progresswindow.set_text (book_olb); // If it could not find a matching Bibledit equivalent, skip this book. if (book_id == 0) { summary_messages.push_back ("Could not find a matching book for " + book_olb); continue; } /* * If in the future it becomes a problem to determine which book name * or abbreviation of the OLB corresponds with which book in Bibledit, * we may use the trick of counting the available books. * If there's the OT number, then they are taken as OT books in the * order given. And if there are 66 books, then it is the whole Bible. * And so on. */ // Store chapter 0. { vector lines; versification_create_chapter_template("", book_id, 0, lines); CategorizeChapterVerse ccv(lines); project_store_chapter(bibledit_bible, book_id, ccv); } // Get the chapter count in this book. unsigned int chapter_count = 0; response = windows_outpost->OnlineBibleDirectCommandResponseGet("GetChapterCountForBook " + online_bible + " " + book_olb); if (online_bible_ok_reply_validate (response)) { chapter_count = convert_to_int (response); } // Go through the chapters. progresswindow.set_iterate (0, 1, chapter_count); for (unsigned int ch = 1; ch <= chapter_count; ch++) { // Progress update. progresswindow.iterate (); progresswindow.set_text (book_olb + " " + convert_to_string (ch)); // If the chapter has been imported already, skip it. { vector lines = project_retrieve_chapter (bibledit_bible, book_id, ch); if (!lines.empty()) { continue; } } // Storage for chapter contents, plus first bits. vector chapter_contents; chapter_contents.push_back ("\\c " + convert_to_string (ch)); chapter_contents.push_back ("\\p"); // Get the verse count in the chapter. unsigned int verse_count = 0; response = windows_outpost->OnlineBibleDirectCommandResponseGet("GetVerseCountForChapter " + online_bible + " " + book_olb + " " + convert_to_string (ch)); if (online_bible_ok_reply_validate (response)) { verse_count = convert_to_int (response); } // Go through the verses. for (unsigned int vs = 1; vs <= verse_count; vs++) { // Progress update. progresswindow.set_text (book_olb + " " + convert_to_string (ch) + ":" + convert_to_string (vs)); // Did the user cancel the import? (Could be, because it takes a huge amount of time). if (progresswindow.cancel) { summary_messages.push_back ("The rest of the import was cancelled"); summary_messages.push_back ("What has been imported already remains"); return; } // Get and store the verse text. response = windows_outpost->OnlineBibleDirectCommandResponseGet("GetVerseText " + online_bible + " \"" + book_olb + " " + convert_to_string (ch) + ":" + convert_to_string (vs) + "\""); if (!online_bible_ok_reply_validate (response)) { response = "Verse text could not be imported"; } chapter_contents.push_back ("\\v " + convert_to_string (vs) + " " + response); } // Store the whole chapter. CategorizeChapterVerse ccv(chapter_contents); project_store_chapter(bibledit_bible, book_id, ccv); } } } bibledit-gtk-4.9/src/onlinebible.h000664 000766 000024 00000002252 12221507151 017274 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_ONLINE_BIBLE_H #define INCLUDED_ONLINE_BIBLE_H #include "libraries.h" #include #include "types.h" #include "windowsoutpost.h" bool online_bible_is_running (); bool online_bible_ok_reply_validate (ustring& reply); void import_online_bible (WindowsOutpost * windows_outpost, const ustring& online_bible, const ustring& bibledit_bible, vector & summary_messages); #endif bibledit-gtk-4.9/src/opendocument.cpp000644 000766 000024 00000070034 12453001367 020053 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "opendocument.h" #include "usfm.h" #include "bible.h" #include "usfmtools.h" #include "gwrappers.h" #include "shell.h" #include "utilities.h" #include "directories.h" #include "date_time_utils.h" #include "projectutils.h" #include "books.h" #include "xmlutils.h" #include "usfmtools.h" #include "unixwrappers.h" #include "resource_utils.h" #include "color.h" #include "textreplacement.h" #include "tiny_utilities.h" #include "stylesheetutils.h" /* Some properties of the stylesheet are not implemented for certain reasons. The "spancolumns" property is not implemented, because it is not so easy in OpenOffice Writer to copy text divided into various sections. Switching from one to two columns would divide the text into these sections. The chapter number is not put at verse one, but just where it occurs. This is because frames would be needed, and this makes copying text more difficult. */ OpenDocument::OpenDocument(const ustring & project, const ustring & filename, set < unsigned int >*selection) // Export a project to OpenDocument format. Allows books selection. { projectconfig = new ProjectConfiguration(project, false); usfm = new Usfm(stylesheet_get_actual ()); // Check on basic markers. if (!usfm_basic_markers_present(*usfm, true)) return; // Progress information. progresswindow = new ProgressWindow("Exporting to OpenDocument", true); // Prepare for inline text markers, notes and xrefs. usfm_inline_markers = new UsfmInlineMarkers(*usfm); odtfootnote = new OdtFootnote(*usfm); odtendnote = new OdtEndnote(*usfm); odtxref = new OdtXref(*usfm); // Retrieve and process template: page layout, font. workingdirectory = gw_build_filename(Directories->get_temp(), "opendocument"); unpack_template(); odt_set_font(workingdirectory, fontname); // Get the available books. If no selection given, take all books available. if (selection) { vector < unsigned int >bks = project_get_books(project); for (unsigned int i = 0; i < bks.size(); i++) { if (selection->find(bks[i]) != selection->end()) books.push_back(bks[i]); } } else { books = project_get_books(project); } // Progress if (progresswindow) progresswindow->set_iterate(0, 1, books.size()); // Generate the cover. cover(); // Prepare for placing anchors for the Bibledit Resource Viewer. anchor_book = 0; anchor_chapter = 0; // Go through all the books. for (unsigned int i = 0; i < books.size(); i++) { // Progress. progresswindow->iterate(); if (progresswindow->cancel) { return; } // Skip "Other Material". if (books_id_to_type(books[i]) == btOtherMaterial) continue; // Signal new book to footnotes object. odtfootnote->new_book(); // Set book for Resource Viewer. anchor_book = books[i]; // Open the book. Do any replacements. vector book_lines; book_lines = project_retrieve_book(project, books[i]); text_replacement(book_lines); // Format the lines of the book. format_general(book_lines); } // Store content.xml. odt_insert_content(workingdirectory, odtlines); // Produce the styles.xml generate_styles_xml(projectconfig->right_to_left_get()); // Automatic .odt extension if needed. ustring filename_odt(filename); if (!g_str_has_suffix(filename.c_str(), ".odt")) filename_odt.append(".odt"); // Compress the file. zip(filename_odt); } OpenDocument::~OpenDocument() { delete progresswindow; delete projectconfig; delete usfm; delete usfm_inline_markers; delete odtfootnote; delete odtendnote; delete odtxref; } void OpenDocument::unpack_template() { // Clear working directory. unix_rmdir(workingdirectory); gw_mkdir_with_parents(workingdirectory); // Copy template there. // Note: To create the template use zip -r template.odt * #ifdef WIN32 ustring command = "unzip -o "; command.append(gw_build_filename(Directories->get_package_data(), "template.odt")); command.append(" -d "); command.append(shell_quote_space(workingdirectory)); #else ustring command = "cd"; command.append(shell_quote_space(workingdirectory)); command.append("; cp "); command.append(gw_build_filename(Directories->get_package_data(), "template.odt")); command.append(" .; unzip *; rm *.odt"); #endif if (system(command.c_str())) ; // This one does not work with GwSpawn because of the wildcards used. } void OpenDocument::cover() // Generate cover page. { // Store the lines containing the cover. vector < ustring > lines; // Collect the lines: Look for the \cov section in the Other Material book. for (unsigned int i = 0; i < books.size(); i++) { if (books_id_to_type(books[i]) == btOtherMaterial) continue; vector < ustring > rawlines = project_retrieve_chapter(myproject, books[i], 0); bool within_cover_section = false; for (unsigned int i2 = 0; i2 < rawlines.size(); i2++) { ustring line = rawlines[i2]; ustring marker = usfm_extract_marker(line); if (usfm->is_peripheral(marker)) if (usfm->peripheral_get_subtype(marker) != ptCover) within_cover_section = false; if (within_cover_section) { lines.push_back(rawlines[i2]); } if (usfm->is_peripheral(marker)) { if (usfm->peripheral_get_subtype(marker) == ptCover) within_cover_section = true; } } } // Format cover. format_general(lines); } void OpenDocument::format_general(vector & lines) // General formatter for USFM lines given. { // Go through all the lines. odttextparagraph = NULL; for (unsigned int ln = 0; ln < lines.size(); ln++) { ustring line = lines[ln]; // Take any elastics out, put the \b marker instead. replace_text(line, ELASTIC_MARKER, "b"); // Change certain characters to xml entities. xml_handle_entities(line, NULL); // Deal with footnotes. odtfootnote->transform(line); // Deal with endnotes. odtendnote->transform(line); // Deal with crossreferences. odtxref->transform(line); // Deal with inline text. usfm_handle_inline_text(line, usfm_inline_markers, NULL, imOpenDocument, NULL); // Signal new line. if (odttextparagraph) odttextparagraph->newline(); // Get the style belonging to the marker. ustring marker = usfm_extract_marker(line); if (usfm->is_identifier(marker)) { // Handle some identifiers. IdentifierType identifiertype = usfm->identifier_get_subtype(marker); // New book. if (identifiertype == itBook) { if (odttextparagraph) delete odttextparagraph; odttextparagraph = new OdtTextParagraph(&odtlines, marker); } } else if (usfm->is_verse_number(marker)) { // Because of dealing with portions to include/exclude, handle verse first. // Get verse number. Handle combined verses too, e.g. 10-12b, etc. size_t position = line.find(" "); position = CLAMP(position, 0, line.length()); ustring versenumber = line.substr(0, position); position++; line.erase(0, position); // There was a bug that the chapter number was missing from a book, // and that results in text being inserted without the opening xml code. // Solution: If no paragraph has been opened, open a default one. if (odttextparagraph == NULL) odttextparagraph = new OdtTextParagraph(&odtlines, ""); // Insert a bookmark at the verse. // This will become an anchor for the Bibledit Resource Viewer, // once OpenOffice saves the document to a HTML Document. // Example bookmark: ustring bookmark = resource_viewer_produce_anchor(anchor_book, anchor_chapter, convert_to_int(number_in_string(versenumber))); bookmark.insert(0, ""); odttextparagraph->plaintext(bookmark); // When the usfm is a verse number, then the number is put in the // format specified by the stylesheet, but the remaining part of the // line inherits the formatting from the paragraph it is in. odttextparagraph->spannedtext(versenumber, marker); odttextparagraph->plaintext(line); } else if (usfm->is_starting_paragraph(marker)) { if (odttextparagraph) delete odttextparagraph; odttextparagraph = new OdtTextParagraph(&odtlines, marker); if (!line.empty()) odttextparagraph->plaintext(line); } else if (usfm->is_inline_text(marker)) { // Inline text, has been dealt with before (therefore should never occur here). if (odttextparagraph) odttextparagraph->spannedtext(line, marker); } else if (usfm->is_chapter_number(marker)) { // Close possible open paragraph. if (odttextparagraph) delete odttextparagraph; // Signal new chapter to footnotes object. odtfootnote->new_chapter(); // Store chapter for the anchors. anchor_chapter = convert_to_int(number_in_string(line)); // Insert or prepare chapter text. odttextparagraph = new OdtTextParagraph(&odtlines, marker); odttextparagraph->plaintext(line); } else if (usfm->is_peripheral(marker)) { } else if (usfm->is_picture(marker)) { } else if (usfm->is_pagebreak(marker)) { if (odttextparagraph) delete odttextparagraph; odttextparagraph = new OdtTextParagraph(&odtlines, marker); } else { // Fallback for unknown marker or no marker. if (!odttextparagraph) odttextparagraph = new OdtTextParagraph(&odtlines, ""); odttextparagraph->plaintext(line); // Make a note of this marker, that it was not formatted. unformatted_markers.insert (marker); } } // Close possible last paragraph. if (odttextparagraph) delete odttextparagraph; } void OpenDocument::generate_styles(xmlTextWriterPtr writer) { // Go through all the styles and generate the appropriate code. for (unsigned int i = 0; i < usfm->styles.size(); i++) { ustring marker = usfm->styles[i].marker; if (usfm->is_identifier(marker)) { switch (usfm->identifier_get_subtype(marker)) { case itBook: paragraph_style(writer, marker, usfm->name(), fontname, 12, 100, OFF, OFF, OFF, OFF, "", 0, 0, 0, 0, 0, false, usfm->userbool1()); break; case itEncoding: break; case itComment: break; case itRunningHeader: break; case itLongTOC: break; case itShortTOC: break; case itBookAbbrev: break; case itChapterLabel: break; case itPublishedChapterMarker: break; case itCommentWithEndmarker: break; } } if (usfm->is_starting_paragraph(marker)) { paragraph_style(writer, marker, usfm->name(), fontname, usfm->fontsize(), 100, usfm->italic(), usfm->bold(), usfm->underline(), usfm->smallcaps(), usfm->justification(), usfm->spacebefore(), usfm->spaceafter(), usfm->leftmargin(), usfm->rightmargin(), usfm->firstlineindent(), false, false); } if (usfm->is_inline_text(marker)) { span_style(writer, marker, usfm->name(), fontname, 100, usfm->italic(), usfm->bold(), usfm->underline(), usfm->smallcaps(), usfm->superscript(), usfm->color()); } if (usfm->is_chapter_number(marker)) { paragraph_style(writer, marker, usfm->name(), fontname, usfm->fontsize(), 100, usfm->italic(), usfm->bold(), usfm->underline(), usfm->smallcaps(), usfm->justification(), usfm->spacebefore(), usfm->spaceafter(), usfm->leftmargin(), usfm->rightmargin(), usfm->firstlineindent(), false, false); } if (usfm->is_verse_number(marker)) { span_style(writer, marker, usfm->name(), fontname, 100, usfm->italic(), usfm->bold(), usfm->underline(), usfm->smallcaps(), usfm->superscript(), usfm->color()); } if (usfm->is_foot_endnote(marker)) { switch (usfm->foot_endnote_get_subtype(marker)) { case fentFootnote: break; case fentEndnote: break; case fentStandardContent: case fentContent: case fentContentWithEndmarker: span_style(writer, marker, usfm->name(), fontname, 100, usfm->italic(), usfm->bold(), usfm->underline(), OFF, usfm->superscript(), usfm->color()); break; case fentParagraph: break; } } if (usfm->is_xref(marker)) { switch (usfm->xref_get_subtype(marker)) { case ctCrossreference: break; case ctStandardContent: case ctContent: case ctContentWithEndmarker: span_style(writer, marker, usfm->name(), fontname, 100, usfm->italic(), usfm->bold(), usfm->underline(), OFF, usfm->superscript(), usfm->color()); break; } } if (usfm->is_peripheral(marker)) { switch (usfm->peripheral_get_subtype(marker)) { case ptPublication: break; case ptTableOfContents: break; case ptPreface: break; case ptIntroduction: break; case ptGlossary: break; case ptConcordance: break; case ptIndex: break; case ptMapIndex: break; case ptCover: break; case ptSpine: break; } } if (usfm->is_picture(marker)) { } if (usfm->is_pagebreak(marker)) { paragraph_style(writer, marker, usfm->name(), fontname, 12, 100, OFF, OFF, OFF, OFF, "", 0, 0, 0, 0, 0, false, true); } } } void OpenDocument::zip(const ustring filename) { ustring command = "cd "; command.append(shell_quote_space(workingdirectory)); #ifdef WIN32 command.append(" && "); gchar *path; path = g_find_program_in_path("zip.exe"); if (path) { command.append(path); g_free(path); command.append(" -r "); } #else command.append("; zip -r"); #endif command.append(shell_quote_space(filename)); command.append(" *"); if (system(command.c_str())) ; // This one does not work with GwSpawn because of the wildcards used. } void OpenDocument::generate_styles_xml(bool right_to_left) // This generates the file "styles.xml" in the OpenDocument. { // Start the new xml document. xmlBufferPtr buffer = xmlBufferCreate(); xmlTextWriterPtr writer = xmlNewTextWriterMemory(buffer, 0); xmlTextWriterStartDocument(writer, NULL, "UTF-8", NULL); xmlTextWriterSetIndent(writer, 1); xmlTextWriterStartElement(writer, BAD_CAST "office:document-styles"); xmlTextWriterWriteAttribute(writer, BAD_CAST "xmlns:office", BAD_CAST "urn:oasis:names:tc:opendocument:xmlns:office:1.0"); xmlTextWriterWriteAttribute(writer, BAD_CAST "xmlns:style", BAD_CAST "urn:oasis:names:tc:opendocument:xmlns:style:1.0"); xmlTextWriterWriteAttribute(writer, BAD_CAST "xmlns:text", BAD_CAST "urn:oasis:names:tc:opendocument:xmlns:text:1.0"); xmlTextWriterWriteAttribute(writer, BAD_CAST "xmlns:table", BAD_CAST "urn:oasis:names:tc:opendocument:xmlns:table:1.0"); xmlTextWriterWriteAttribute(writer, BAD_CAST "xmlns:draw", BAD_CAST "urn:oasis:names:tc:opendocument:xmlns:drawing:1.0"); xmlTextWriterWriteAttribute(writer, BAD_CAST "xmlns:fo", BAD_CAST "urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0"); xmlTextWriterWriteAttribute(writer, BAD_CAST "xmlns:xlink", BAD_CAST "http://www.w3.org/1999/xlink"); xmlTextWriterWriteAttribute(writer, BAD_CAST "xmlns:dc", BAD_CAST "http://purl.org/dc/elements/1.1/"); xmlTextWriterWriteAttribute(writer, BAD_CAST "xmlns:meta", BAD_CAST "urn:oasis:names:tc:opendocument:xmlns:meta:1.0"); xmlTextWriterWriteAttribute(writer, BAD_CAST "xmlns:number", BAD_CAST "urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0"); xmlTextWriterWriteAttribute(writer, BAD_CAST "xmlns:svg", BAD_CAST "urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0"); xmlTextWriterWriteAttribute(writer, BAD_CAST "xmlns:chart", BAD_CAST "urn:oasis:names:tc:opendocument:xmlns:chart:1.0"); xmlTextWriterWriteAttribute(writer, BAD_CAST "xmlns:dr3d", BAD_CAST "urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0"); xmlTextWriterWriteAttribute(writer, BAD_CAST "xmlns:math", BAD_CAST "http://www.w3.org/1998/Math/MathML"); xmlTextWriterWriteAttribute(writer, BAD_CAST "xmlns:form", BAD_CAST "urn:oasis:names:tc:opendocument:xmlns:form:1.0"); xmlTextWriterWriteAttribute(writer, BAD_CAST "xmlns:script", BAD_CAST "urn:oasis:names:tc:opendocument:xmlns:script:1.0"); xmlTextWriterWriteAttribute(writer, BAD_CAST "xmlns:ooo", BAD_CAST "http://openoffice.org/2004/office"); xmlTextWriterWriteAttribute(writer, BAD_CAST "xmlns:ooow", BAD_CAST "http://openoffice.org/2004/writer"); xmlTextWriterWriteAttribute(writer, BAD_CAST "xmlns:oooc", BAD_CAST "http://openoffice.org/2004/calc"); xmlTextWriterWriteAttribute(writer, BAD_CAST "xmlns:dom", BAD_CAST "http://www.w3.org/2001/xml-events"); xmlTextWriterWriteAttribute(writer, BAD_CAST "office:version", BAD_CAST "1.0"); // Font face declarations. xmlTextWriterStartElement(writer, BAD_CAST "office:font-face-decls"); xmlTextWriterEndElement(writer); // Styles. xmlTextWriterStartElement(writer, BAD_CAST "office:styles"); generate_styles(writer); xmlTextWriterEndElement(writer); // Automatic styles. xmlTextWriterStartElement(writer, BAD_CAST "office:automatic-styles"); xmlTextWriterStartElement(writer, BAD_CAST "style:page-layout"); xmlTextWriterWriteAttribute(writer, BAD_CAST "style:name", BAD_CAST "pm1"); xmlTextWriterStartElement(writer, BAD_CAST "style:page-layout-properties"); extern Settings *settings; xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "fo:page-width", "%.2fcm", settings->genconfig.paper_width_get()); xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "fo:page-height", "%.2fcm", settings->genconfig.paper_height_get()); xmlTextWriterWriteAttribute(writer, BAD_CAST "style:print-orientation", BAD_CAST "portrait"); xmlTextWriterWriteAttribute(writer, BAD_CAST "style:num-format", BAD_CAST "1"); xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "fo:margin-top", "%.2fcm", settings->genconfig.paper_top_margin_get()); xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "fo:margin-bottom", "%.2fcm", settings->genconfig.paper_bottom_margin_get()); xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "fo:margin-left", "%.2fcm", settings->genconfig.paper_inside_margin_get()); xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "fo:margin-right", "%.2fcm", settings->genconfig.paper_outside_margin_get()); if (right_to_left) { xmlTextWriterWriteAttribute(writer, BAD_CAST "style:writing-mode", BAD_CAST "rl-tb"); xmlTextWriterWriteAttribute(writer, BAD_CAST "writing-mode", BAD_CAST "rl-tb"); } xmlTextWriterEndElement(writer); xmlTextWriterEndElement(writer); xmlTextWriterEndElement(writer); // Master styles. xmlTextWriterStartElement(writer, BAD_CAST "office:master-styles"); xmlTextWriterStartElement(writer, BAD_CAST "style:master-page"); xmlTextWriterWriteAttribute(writer, BAD_CAST "style:name", BAD_CAST "Standard"); xmlTextWriterWriteAttribute(writer, BAD_CAST "style:page-layout-name", BAD_CAST "pm1"); xmlTextWriterEndElement(writer); xmlTextWriterEndElement(writer); // Close document. xmlTextWriterEndElement(writer); // Close document and write it to disk. xmlTextWriterEndDocument(writer); xmlTextWriterFlush(writer); ustring filename = gw_build_filename(workingdirectory, "styles.xml"); g_file_set_contents(filename.c_str(), (const gchar *)buffer->content, -1, NULL); // Free memory. if (writer) xmlFreeTextWriter(writer); if (buffer) xmlBufferFree(buffer); } void OpenDocument::paragraph_style(xmlTextWriterPtr writer, const ustring & marker, const ustring & name, const ustring & fontname, double fontsize, int lineheight, const ustring & italic, const ustring & bold, const ustring & underline, const ustring & smallcaps, ustring justification, double spacebefore, double spaceafter, double leftmargin, double rightmargin, double firstlineindent, bool spancolumns, bool startpage) { // Style properties. xmlTextWriterStartElement(writer, BAD_CAST "style:style"); { xmlTextWriterWriteAttribute(writer, BAD_CAST "style:name", BAD_CAST marker.c_str()); ustring marker_name = marker + " " + name; xmlTextWriterWriteAttribute(writer, BAD_CAST "style:display-name", BAD_CAST marker_name.c_str()); xmlTextWriterWriteAttribute(writer, BAD_CAST "style:family", BAD_CAST "paragraph"); xmlTextWriterWriteAttribute(writer, BAD_CAST "style:parent-style-name", BAD_CAST "Standard"); // Paragraph properties. xmlTextWriterStartElement(writer, BAD_CAST "style:paragraph-properties"); { if (lineheight != 100) { xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "fo:line-height", "%d%%", lineheight); } if (!justification.empty()) { if (justification == LEFT) { justification = "start"; } else if (justification == RIGHT) { justification = "end"; } xmlTextWriterWriteAttribute(writer, BAD_CAST "fo:text-align", BAD_CAST justification.c_str()); xmlTextWriterWriteAttribute(writer, BAD_CAST "style:justify-single-word", BAD_CAST "false"); } if (spacebefore != 0) { xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "fo:margin-top", "%.1fmm", spacebefore); } if (spaceafter != 0) { xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "fo:margin-bottom", "%.1fmm", spaceafter); } if (leftmargin != 0) { xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "fo:margin-left", "%.1fmm", leftmargin); } if (rightmargin != 0) { xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "fo:margin-right", "%.1fmm", rightmargin); } if (firstlineindent != 0) { xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "fo:text-indent", "%.1fmm", firstlineindent); } // Starting odd pages is not supported in OpenDocument 1.0. if (startpage) { xmlTextWriterWriteAttribute(writer, BAD_CAST "fo:break-before", BAD_CAST "page"); } // Spanning of columns is not implemented because that interferes with how // easily the text can be edited. } xmlTextWriterEndElement(writer); // Text properties. xmlTextWriterStartElement(writer, BAD_CAST "style:text-properties"); { xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "fo:font-size", "%.1fpt", fontsize); xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "fo:font-size-asian", "%.1fpt", fontsize); xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "fo:font-size-complex", "%.1fpt", fontsize); if (!fontname.empty()) { xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "style:font-name", "%s", fontname.c_str()); } if (italic == ON) { xmlTextWriterWriteAttribute(writer, BAD_CAST "fo:font-style", BAD_CAST "italic"); xmlTextWriterWriteAttribute(writer, BAD_CAST "fo:font-style-asian", BAD_CAST "italic"); xmlTextWriterWriteAttribute(writer, BAD_CAST "fo:font-style-complex", BAD_CAST "italic"); } if (bold == ON) { xmlTextWriterWriteAttribute(writer, BAD_CAST "fo:font-weight", BAD_CAST "bold"); xmlTextWriterWriteAttribute(writer, BAD_CAST "fo:font-weight-asian", BAD_CAST "bold"); xmlTextWriterWriteAttribute(writer, BAD_CAST "fo:font-weight-complex", BAD_CAST "bold"); } if (underline == ON) { xmlTextWriterWriteAttribute(writer, BAD_CAST "style:text-underline-style", BAD_CAST "solid"); xmlTextWriterWriteAttribute(writer, BAD_CAST "style:text-underline-width", BAD_CAST "auto"); xmlTextWriterWriteAttribute(writer, BAD_CAST "style:text-underline-color", BAD_CAST "font-color"); } if (smallcaps == ON) { xmlTextWriterWriteAttribute(writer, BAD_CAST "fo:font-variant", BAD_CAST "small-caps"); } } xmlTextWriterEndElement(writer); } // Close style xmlTextWriterEndElement(writer); } void OpenDocument::span_style(xmlTextWriterPtr writer, const ustring & marker, const ustring & name, const ustring & fontname, double fontpercentage, ustring italic, ustring bold, ustring underline, ustring smallcaps, bool superscript, unsigned int color) { // Open the style. xmlTextWriterStartElement(writer, BAD_CAST "style:style"); { // Style properties. xmlTextWriterWriteAttribute(writer, BAD_CAST "style:name", BAD_CAST marker.c_str()); ustring marker_name = marker + " " + name; xmlTextWriterWriteAttribute(writer, BAD_CAST "style:display-name", BAD_CAST marker_name.c_str()); xmlTextWriterWriteAttribute(writer, BAD_CAST "style:family", BAD_CAST "text"); // Text properties. xmlTextWriterStartElement(writer, BAD_CAST "style:text-properties"); { if (!fontname.empty()) { xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "style:font-name", "%s", fontname.c_str()); } if (fontpercentage != 100) { xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "fo:font-size", "%.1f%%", fontpercentage); xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "fo:font-size-asian", "%.1f%%", fontpercentage); xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "fo:font-size-complex", "%.1f%%", fontpercentage); } if ((italic == ON) || (italic == TOGGLE)) italic = "italic"; else italic = "normal"; // Note that ON and TOGGlE both switch italic on // and OFF and INHERIT switch italic off. // Improvements could be made here. // Bold, underline, etc., work the same. xmlTextWriterWriteAttribute(writer, BAD_CAST "fo:font-style", BAD_CAST italic.c_str()); xmlTextWriterWriteAttribute(writer, BAD_CAST "fo:font-style-asian", BAD_CAST italic.c_str()); xmlTextWriterWriteAttribute(writer, BAD_CAST "fo:font-style-complex", BAD_CAST italic.c_str()); if ((bold == ON) || (bold == TOGGLE)) bold = "bold"; else bold = "normal"; xmlTextWriterWriteAttribute(writer, BAD_CAST "fo:font-weight", BAD_CAST bold.c_str()); xmlTextWriterWriteAttribute(writer, BAD_CAST "fo:font-weight-asian", BAD_CAST bold.c_str()); xmlTextWriterWriteAttribute(writer, BAD_CAST "fo:font-weight-complex", BAD_CAST bold.c_str()); if ((underline == ON) || (underline == TOGGLE)) underline = "solid"; else underline = "none"; xmlTextWriterWriteAttribute(writer, BAD_CAST "style:text-underline-style", BAD_CAST underline.c_str()); xmlTextWriterWriteAttribute(writer, BAD_CAST "style:text-underline-width", BAD_CAST "auto"); xmlTextWriterWriteAttribute(writer, BAD_CAST "style:text-underline-color", BAD_CAST "font-color"); if ((smallcaps == ON) || (smallcaps == TOGGLE)) smallcaps = "small-caps"; else smallcaps = "normal"; xmlTextWriterWriteAttribute(writer, BAD_CAST "fo:font-variant", BAD_CAST smallcaps.c_str()); if (superscript) { xmlTextWriterWriteAttribute(writer, BAD_CAST "style:text-position", BAD_CAST "super 58%"); } if (color != 0) { xmlTextWriterWriteFormatAttribute(writer, BAD_CAST "fo:color", "#%s", color_decimal_to_hex(color).c_str()); } } xmlTextWriterEndElement(writer); } // Close style. xmlTextWriterEndElement(writer); } void OpenDocument::note_unformatted_markers (vector & markers) { // Add the markers from the object to the container. vector temporal_markers (unformatted_markers.begin(), unformatted_markers.end()); for (unsigned int i = 0; i < temporal_markers.size(); i++) { markers.push_back (temporal_markers[i]); } // Remove double ones. set temporal_set (markers.begin(), markers.end()); markers.clear(); markers.assign (temporal_set.begin(), temporal_set.end()); } bibledit-gtk-4.9/src/opendocument.h000664 000766 000024 00000005074 12221507136 017522 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_OPENDOCUMENT_H #define INCLUDED_OPENDOCUMENT_H #include "libraries.h" #include "settings.h" #include "usfm.h" #include "progresswindow.h" #include "odtutils.h" #include "usfm-inline-markers.h" #include "odtnotes.h" #include class OpenDocument { public: OpenDocument(const ustring& project, const ustring& filename, set * selection); ~OpenDocument(); void note_unformatted_markers (vector & markers); private: ustring myproject; ProjectConfiguration * projectconfig; Usfm * usfm; UsfmInlineMarkers * usfm_inline_markers; OdtFootnote * odtfootnote; OdtEndnote * odtendnote; OdtXref * odtxref; ProgressWindow * progresswindow; ustring workingdirectory; vector books; vector odtlines; OdtTextParagraph * odttextparagraph; ustring fontname; void unpack_template(); void cover(); void format_general(vector & lines); void zip(const ustring filename); unsigned int anchor_book, anchor_chapter; void generate_styles_xml(bool right_to_left); void generate_styles(xmlTextWriterPtr writer); void paragraph_style(xmlTextWriterPtr writer, const ustring& marker, const ustring& name, const ustring& fontname, double fontsize, int lineheight, const ustring& italic, const ustring& bold, const ustring& underline, const ustring& smallcaps, ustring justification, double spacebefore, double spaceafter, double leftmargin, double rightmargin, double firstlineindent, bool spancolumns, bool startpage); void span_style(xmlTextWriterPtr writer, const ustring& marker, const ustring& name, const ustring& fontname, double fontpercentage, ustring italic, ustring bold, ustring underline, ustring smallcaps, bool superscript, unsigned int color); set unformatted_markers; }; #endif bibledit-gtk-4.9/src/originreferences.cpp000664 000766 000024 00000031302 12221507140 020672 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "originreferences.h" #include "utilities.h" #include "projectutils.h" #include "settings.h" #include "progresswindow.h" #include "gtkwrappers.h" #include "gwrappers.h" #include "usfmtools.h" #include "help.h" #include "usfm.h" #include "books.h" #include "tiny_utilities.h" #include "stylesheetutils.h" OriginReferences::OriginReferences(const ustring & project, bool affectfootnotes, bool affectendnotes, bool affectxrefs, OriginReferencesActionType action, bool includebook, bool includechapter, const ustring & separator, bool includeverse, const ustring & suffix, bool gui) { // Progress. ProgressWindow *progresswindow = NULL; if (gui) progresswindow = new ProgressWindow("Working...", false); // Initialize variables. myaction = action; myincludebook = includebook; myincludechapter = includechapter; myincludeverse = includeverse; myseparator = separator; mysuffix = suffix; notescount = 0; affectedcount = 0; finecount = 0; errorcount = 0; extern Settings *settings; ProjectConfiguration *projectconfig = settings->projectconfig(project); stylesheet = stylesheet_get_actual (); language = projectconfig->language_get(); // Get the relevant markers. get_relevant_markers(); // Go through the books in the project. vector < unsigned int >books = project_get_books(project); if (gui) progresswindow->set_iterate(0, 1, books.size()); for (unsigned int bk = 0; bk < books.size(); bk++) { // Progress. if (gui) progresswindow->iterate(); // Go through the chapters in this book. vector < unsigned int >chapters = project_get_chapters(project, books[bk]); for (unsigned int ch = 0; ch < chapters.size(); ch++) { // Go through the verses in this chapter. vector < ustring > verses = project_get_verses(project, books[bk], chapters[ch]); for (unsigned int vs = 0; vs < verses.size(); vs++) { // Retrieve each verse and process it. ustring text = project_retrieve_verse(project, books[bk], chapters[ch], verses[vs]); unsigned int previous_affected_count = affectedcount; if (affectfootnotes) handle_notes(text, books[bk], chapters[ch], verses[vs], footnote_opener, footnote_closer, foot_end_note_origin_reference_opener, foot_end_note_origin_reference_closer, foot_end_note_text_opener, foot_end_note_text_closer); if (affectendnotes) handle_notes(text, books[bk], chapters[ch], verses[vs], endnote_opener, endnote_closer, foot_end_note_origin_reference_opener, foot_end_note_origin_reference_closer, foot_end_note_text_opener, foot_end_note_text_closer); if (affectxrefs) handle_notes(text, books[bk], chapters[ch], verses[vs], xref_opener, xref_closer, xref_origin_reference_opener, xref_origin_reference_closer, xref_text_opener, xref_text_closer); if (affectedcount != previous_affected_count) { project_store_verse(project, books[bk], chapters[ch], verses[vs], text); } } } } // Give statistics. ustring message; message.append("Relevant notes found: " + convert_to_string(notescount) + "\n"); if (action != oratNothing) { if (action == oratAddReference) message.append("Origin references added: "); if (action == oratRemoveReferences) message.append("Origin references removed: "); if (action == oratTextLabels) message.append("Text labels added: "); message.append(convert_to_string(affectedcount) + "\n"); if (finecount) message.append("Notes not affected because they already were fine: " + convert_to_string(finecount) + "\n"); } if (errorcount) message.append("Notes with structural errors: " + convert_to_string(errorcount) + "\n"); if (gui) gtkw_dialog_info(NULL, message); else cout << message; // Destroy progress. if (gui) delete progresswindow; } OriginReferences::~OriginReferences() { } void OriginReferences::get_relevant_markers() { // Set default values in case they cannot be retrieved from the stylesheet. footnote_opener = usfm_get_full_opening_marker("f"); footnote_closer = usfm_get_full_closing_marker("f"); endnote_opener = usfm_get_full_opening_marker("fe"); endnote_closer = usfm_get_full_opening_marker("fe"); xref_opener = usfm_get_full_opening_marker("x"); xref_closer = usfm_get_full_opening_marker("x"); foot_end_note_origin_reference_opener = usfm_get_full_opening_marker("fr"); foot_end_note_origin_reference_closer = usfm_get_full_closing_marker("fr"); xref_origin_reference_opener = usfm_get_full_opening_marker("xo"); xref_origin_reference_closer = usfm_get_full_closing_marker("xo"); foot_end_note_text_opener = usfm_get_full_opening_marker("ft"); foot_end_note_text_closer = usfm_get_full_closing_marker("ft"); xref_text_opener = usfm_get_full_opening_marker("xt"); xref_text_closer = usfm_get_full_opening_marker("xt"); // Retrieve some values from the stylesheet. Usfm usfm(stylesheet); for (unsigned int i = 0; i < usfm.styles.size(); i++) { if (usfm.styles[i].type == stFootEndNote) { FootEndNoteType footnotetype = (FootEndNoteType) usfm.styles[i].subtype; switch (footnotetype) { case fentFootnote: { footnote_opener = usfm_get_full_opening_marker(usfm.styles[i].marker); footnote_closer = usfm_get_full_closing_marker(usfm.styles[i].marker); break; } case fentEndnote: { endnote_opener = usfm_get_full_opening_marker(usfm.styles[i].marker); endnote_closer = usfm_get_full_closing_marker(usfm.styles[i].marker); break; } case fentStandardContent: { foot_end_note_text_opener = usfm_get_full_opening_marker(usfm.styles[i].marker); foot_end_note_text_closer = usfm_get_full_closing_marker(usfm.styles[i].marker); break; } case fentContent: case fentContentWithEndmarker: case fentParagraph:; } } if (usfm.styles[i].type == stCrossreference) { CrossreferenceType xreftype = (CrossreferenceType) usfm.styles[i].subtype; switch (xreftype) { case ctCrossreference: { xref_opener = usfm_get_full_opening_marker(usfm.styles[i].marker); xref_closer = usfm_get_full_closing_marker(usfm.styles[i].marker); break; } case ctStandardContent: { xref_text_opener = usfm_get_full_opening_marker(usfm.styles[i].marker); xref_text_closer = usfm_get_full_closing_marker(usfm.styles[i].marker); break; } case ctContent: case ctContentWithEndmarker:; } } } } void OriginReferences::handle_notes(ustring & line, int book, int chapter, const ustring & verse, const ustring & note_opener, const ustring & note_closer, const ustring & origin_ref_opener, const ustring & origin_ref_closer, const ustring & text_opener, const ustring & text_closer) // Extract a note, call the handler, insert the changed note again. { // Variables. size_t opening_position; // Look for notes, but only deal with them if they have the endmarker too. opening_position = line.find(note_opener); while (opening_position != string::npos) { // Statistics. notescount++; // Look for the endmarker. size_t closing_position; closing_position = line.find(note_closer, opening_position); if (closing_position == string::npos) { gw_warning("Missing endmarker: " + line); errorcount++; return; } // Take out this bit of the line, transform it, and insert it again. ustring footnote; footnote = line.substr(opening_position + note_opener.length(), closing_position - opening_position - note_closer.length()); line.erase(opening_position, closing_position - opening_position + note_closer.length()); switch (myaction) { case oratNothing: { finecount++; break; } case oratRemoveReferences: { remove_reference(footnote, origin_ref_opener, origin_ref_closer); break; } case oratAddReference: { ustring reference; reference = origin_reference_produce(myincludebook, book, language, myincludechapter, chapter, myseparator, myincludeverse, verse, mysuffix, false); add_reference(footnote, origin_ref_opener, reference); break; } case oratTextLabels: { add_text_marker(footnote, origin_ref_opener, origin_ref_closer, text_opener, text_opener); break; } } line.insert(opening_position, note_opener + footnote + note_closer); // Search for another footnote. opening_position = line.find(note_opener, opening_position + 1); } } void OriginReferences::remove_reference(ustring & line, const ustring & opener, const ustring & closer) { size_t opener_position = line.find(opener); if (opener_position == string::npos) { finecount++; return; } size_t next_space_position = line.find(" ", opener_position + 4); if (next_space_position != string::npos) { line.erase(opener_position, next_space_position - opener_position + 1); } replace_text(line, closer, ""); affectedcount++; } void OriginReferences::add_reference(ustring & line, const ustring & opener, const ustring & reference) { // If the opener is already in, the note is fine. Bail out. size_t position = line.find(opener); if (position != string::npos) { finecount++; return; } // Data to insert. ustring insert = opener + reference; // Insert the reference after the first space, if there, else at the end. position = line.find(" "); if (position == string::npos) line.append(insert); else line.insert(++position, insert); affectedcount++; } void OriginReferences::add_text_marker(ustring & line, const ustring & referenceopener, const ustring & referencecloser, const ustring & textopener, const ustring & textcloser) // Adds a text marker, only the opening marker, if it is not yet in the line. { // If the text opener or closer is already in, things appear to be fine. size_t position = line.find(textopener); if (position != string::npos) { finecount++; return; } position = line.find(textcloser); if (position != string::npos) { finecount++; return; } // If a reference closer is in, insert the text opener straight after it. position = line.find(referencecloser); if (position != string::npos) { position += referencecloser.length(); line.insert(position, textopener); affectedcount++; return; } // If a reference opener is in, insert the text opener shortly after it. // E.g.: \fr 1.3 The word house is used in a figurative sense. position = line.find(referenceopener); if (position != string::npos) { position += referenceopener.length(); position++; if (position < line.length()) { position = line.find(" ", position); position++; if (position < line.length()) { line.insert(position, textopener); affectedcount++; } } return; } // If no known opener is in, insert the reference after the first space. position = line.find(" "); if (position != string::npos) { line.insert(++position, textopener); affectedcount++; return; } } ustring origin_reference_produce(bool includebook, unsigned int book, const ustring & language, bool includechapter, int chapter, const ustring & separator, bool includeverse, const ustring & verse, const ustring & suffix, bool example) // Produces the text of the origin references, as can be inserted in a Bible note. // If "example" is set, then the reference will be surrounded by brackets. { ustring result; if (includebook) result.append(books_id_to_abbreviation(language, book) + " "); if (includechapter) result.append(convert_to_string(chapter)); if (includechapter && includeverse) result.append(separator); if (includeverse) result.append(verse); if (includechapter || includeverse) result.append(suffix); if (example) { result.insert(0, "("); result.append(")"); } return result; } bibledit-gtk-4.9/src/originreferences.h000664 000766 000024 00000006030 12221507142 020341 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_ORIGINREFERENCES_H #define INCLUDED_ORIGINREFERENCES_H #include #include "ustring.h" #include "types.h" class OriginReferences { public: OriginReferences (const ustring& project, bool affectfootnotes, bool affectendnotes, bool affectxrefs, OriginReferencesActionType action, bool includebook, bool includechapter, const ustring& separator, bool includeverse, const ustring& suffix, bool gui); ~OriginReferences (); protected: private: void get_relevant_markers (); void handle_notes (ustring& line, int book, int chapter, const ustring& verse, const ustring& note_opener, const ustring& note_closer, const ustring& origin_ref_opener, const ustring& origin_ref_closer, const ustring& text_opener, const ustring& text_closer); void remove_reference (ustring& line, const ustring& opener, const ustring& closer); void add_reference (ustring& line, const ustring& opener, const ustring& reference); void add_text_marker (ustring& line, const ustring& referenceopener, const ustring& referencecloser, const ustring& textopener, const ustring& textcloser); OriginReferencesActionType myaction; ustring stylesheet; ustring language; bool myincludebook, myincludechapter, myincludeverse; ustring myseparator, mysuffix; ustring footnote_opener; ustring footnote_closer; ustring endnote_opener; ustring endnote_closer; ustring xref_opener; ustring xref_closer; ustring foot_end_note_origin_reference_opener; ustring foot_end_note_origin_reference_closer; ustring xref_origin_reference_opener; ustring xref_origin_reference_closer; ustring foot_end_note_text_opener; ustring foot_end_note_text_closer; ustring xref_text_opener; ustring xref_text_closer; unsigned int notescount, affectedcount, finecount, errorcount; }; ustring origin_reference_produce (bool includebook, unsigned int book, const ustring& language, bool includechapter, int chapter, const ustring& separator, bool includeverse, const ustring& verse, const ustring& suffix, bool example); #endif bibledit-gtk-4.9/src/osis.cpp000664 000766 000024 00000011306 12221507146 016326 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "utilities.h" #include #include "constants.h" #include "osis.h" #include "gwrappers.h" #include "bible.h" #include "books.h" #include "tiny_utilities.h" void osis_insert_empty_lines(WriteText * wt) { wt->text("\n"); wt->text("\n"); } OsisRoot::OsisRoot(WriteText * wt, const ustring & name, const ustring & description) // Add the root data for the osis file. { mywt = wt; mywt->text("\n"); mywt->text("\n"); mywt->text("\n"); mywt->text("\n"); mywt->text("\n"); mywt->text("\n"); mywt->text("
\n"); mywt->text(" \n"); mywt->text(" " + description + "\n"); mywt->text(" Bible." + name + "\n"); mywt->text(" Bible." + name + "\n"); mywt->text(" \n"); mywt->text(" \n"); mywt->text(" Bible." + name + "\n"); mywt->text(" \n"); mywt->text("
\n"); osis_insert_empty_lines(mywt); } OsisRoot::~OsisRoot() { osis_insert_empty_lines(mywt); mywt->text("
\n"); mywt->text("
\n"); } OsisBook::OsisBook(WriteText * wt, const ustring & english_book) // Add the book data for the osis file. { // Save variables. mywt = wt; // Get the abbreviation to be used. unsigned int index = books_english_to_id(english_book); book = books_id_to_osis(index); // Insert xml. osis_insert_empty_lines(mywt); mywt->text("
\n"); osis_insert_empty_lines(mywt); } OsisBook::~OsisBook() { osis_insert_empty_lines(mywt); mywt->text("
\n"); osis_insert_empty_lines(mywt); } OsisChapter::OsisChapter(WriteText * wt, const ustring & book, unsigned int chapter_in) // Add the chapter data for the osis file. { // Save variables. mywt = wt; chapter = chapter_in; osis_insert_empty_lines(mywt); mywt->text(" \n"); osis_insert_empty_lines(mywt); } OsisChapter::~OsisChapter() { osis_insert_empty_lines(mywt); mywt->text(" "); osis_insert_empty_lines(mywt); } OsisVerse::OsisVerse(WriteText * wt, const ustring & book, unsigned int chapter, const ustring & verse) // Add the verse data for the osis file. // Segmented verses like "6a", e.g. in verse "2-6a" are supposed to be given like: // { // Save variables. mywt = wt; // Get the separate verses in cases of sequences and the like. vector < ustring > verses = verse_range_sequence_v2(verse); // Go through all separate verses to assemble the OSIS verse. ustring osisverse; for (unsigned int i = 0; i < verses.size(); i++) { // Change the "a" into the "!a" as required. Same for the "b". replace_text(verses[i], "a", "!a"); replace_text(verses[i], "b", "!b"); // Assemble the verse. if (i) osisverse.append(" "); osisverse.append(book + "." + convert_to_string(chapter) + "." + verses[i]); } // Insert xml code. wt->text(" text(osisverse); wt->text("\">"); } OsisVerse::~OsisVerse() { mywt->text("\n"); mywt->text("\n"); } OsisParagraph::OsisParagraph(WriteText * wt) // Open a paragraph. { // Save variables. mywt = wt; // mywt->text ("
"); // It seems that the newer osis2mod compiler does not support these sections anymore. // mywt->text ("

"); } OsisParagraph::~OsisParagraph() // Close a paragraph. { // mywt->text ("

"); // mywt->text ("

"); } bibledit-gtk-4.9/src/osis.h000664 000766 000024 00000003246 12221507140 015771 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_OSIS_H #define INCLUDED_OSIS_H #include "libraries.h" #include #include #include "utilities.h" class OsisRoot { public: OsisRoot (WriteText * wt, const ustring& name, const ustring& description); ~OsisRoot (); private: WriteText * mywt; }; class OsisBook { public: OsisBook (WriteText * wt, const ustring& english_book); ~OsisBook (); ustring book; private: WriteText * mywt; }; class OsisChapter { public: OsisChapter (WriteText * wt, const ustring& book, unsigned int chapter_in); ~OsisChapter (); unsigned int chapter; private: WriteText * mywt; }; class OsisVerse { public: OsisVerse (WriteText * wt, const ustring& book, unsigned int chapter, const ustring& verse); ~OsisVerse (); private: WriteText * mywt; }; class OsisParagraph { public: OsisParagraph (WriteText * wt); ~OsisParagraph (); private: WriteText * mywt; }; #endif bibledit-gtk-4.9/src/ot-nt-parallels.cpp000644 000766 000024 00000014425 12453001367 020373 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "ot-nt-parallels.h" #include "utilities.h" #include "directories.h" #include "gwrappers.h" #include #include "books.h" #include "tiny_utilities.h" OtNtParallelSet::OtNtParallelSet(int dummy) { } OtNtParallelSection::OtNtParallelSection(int dummy) { } OtNtParallels::OtNtParallels(int dummy) { } void OtNtParallels::readot() { read("ot-parallel-passages.xml"); } void OtNtParallels::readnt() { read("nt-parallel-passages.xml"); } void OtNtParallels::get(Reference & reference, vector < Reference > &references, vector < ustring > &comments) /* Retrieves an Old Testament or New Testament parallel passage. reference: The input reference. references: The output reference: contains the related references. comments: The headings the passages fall under, or another comment. */ { // Read data if we've nothing yet. if (sections.empty()) { readot(); readnt(); } // Store the original reference. references.push_back(reference); comments.push_back("Current one"); // Go through the references looking for matching ones. for (unsigned int i = 0; i < sections.size(); i++) { for (unsigned int i2 = 0; i2 < sections[i].sets.size(); i2++) { bool match = false; for (unsigned int i3 = 0; i3 < sections[i].sets[i2].references.size(); i3++) { if (reference.equals(sections[i].sets[i2].references[i3])) match = true; } if (match) { for (unsigned int i3 = 0; i3 < sections[i].sets[i2].references.size(); i3++) { if (!reference.equals(sections[i].sets[i2].references[i3])) references.push_back(sections[i].sets[i2].references[i3]); comments.push_back(sections[i].title); } } } } // If there is only one reference found, that will be the original one. // That means that no parallel or corresponding references were found. // Erase that one in such cases. if (references.size() == 1) { references.clear(); comments.clear(); } } void OtNtParallels::read(const gchar * filename) { // Get contents of the data file. Bail out if not there. ustring xmlfilename = gw_build_filename(Directories->get_package_data(), filename); if (!g_file_test(xmlfilename.c_str(), G_FILE_TEST_IS_REGULAR)) return; gchar *contents; g_file_get_contents(xmlfilename.c_str(), &contents, NULL, NULL); /* Read the xml data. Example:
*/ xmlParserInputBufferPtr inputbuffer; inputbuffer = xmlParserInputBufferCreateMem(contents, strlen(contents), XML_CHAR_ENCODING_NONE); xmlTextReaderPtr reader = xmlNewTextReader(inputbuffer, NULL); if (reader) { char *opening_element = NULL; OtNtParallelSection parallelsection(0); OtNtParallelSet parallelset(0); while ((xmlTextReaderRead(reader) == 1)) { switch (xmlTextReaderNodeType(reader)) { case XML_READER_TYPE_ELEMENT: { opening_element = (char *)xmlTextReaderName(reader); if (!strcmp(opening_element, "section")) { parallelsection.sets.clear(); parallelsection.title.clear(); char *attribute; attribute = (char *)xmlTextReaderGetAttribute(reader, BAD_CAST "title"); if (attribute) { parallelsection.title = attribute; free(attribute); } } if (!strcmp(opening_element, "set")) { parallelset.references.clear(); } if (!strcmp(opening_element, "reference")) { Reference ref(0); char *attribute; attribute = (char *)xmlTextReaderGetAttribute(reader, BAD_CAST "book"); if (attribute) { ref.book = books_english_to_id(attribute); free(attribute); } attribute = (char *)xmlTextReaderGetAttribute(reader, BAD_CAST "chapter"); if (attribute) { ref.chapter = convert_to_int(attribute); free(attribute); } attribute = (char *)xmlTextReaderGetAttribute(reader, BAD_CAST "verse"); if (attribute) { ref.verse = attribute; free(attribute); } parallelset.references.push_back(ref); } break; } case XML_READER_TYPE_TEXT: { char *text = (char *)xmlTextReaderValue(reader); if (text) { free(text); } break; } case XML_READER_TYPE_END_ELEMENT: { char *closing_element = (char *)xmlTextReaderName(reader); if (!strcmp(closing_element, "set")) { parallelsection.sets.push_back(parallelset); } if (!strcmp(closing_element, "section")) { sections.push_back(parallelsection); } break; } } } } // Free memory. if (reader) xmlFreeTextReader(reader); if (inputbuffer) xmlFreeParserInputBuffer(inputbuffer); if (contents) g_free(contents); } OtNtParallelDataSet::OtNtParallelDataSet(int dummy) { } OtNtParallelDataSection::OtNtParallelDataSection(int dummy) { } bibledit-gtk-4.9/src/ot-nt-parallels.h000664 000766 000024 00000003237 12221507131 020032 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_OT_NT_PARALLELS_H #define INCLUDED_OT_NT_PARALLELS_H #include "libraries.h" #include "reference.h" class OtNtParallelSet { public: OtNtParallelSet (int dummy); vector references; private: }; class OtNtParallelSection { public: OtNtParallelSection (int dummy); ustring title; vector sets; private: }; class OtNtParallels { public: OtNtParallels (int dummy); void get (Reference& reference, vector & references, vector & comments); void readot (); void readnt (); vector sections; private: void read (const gchar * filename); }; class OtNtParallelDataSet { public: OtNtParallelDataSet (int dummy); vector data; private: }; class OtNtParallelDataSection { public: OtNtParallelDataSection (int dummy); ustring title; vector sets; private: }; #endif bibledit-gtk-4.9/src/ot-quotations.cpp000644 000766 000024 00000020735 12453001367 020204 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "ot-quotations.h" #include "utilities.h" #include "directories.h" #include "gwrappers.h" #include #include "books.h" #include "settings.h" #include "tiny_utilities.h" #include "bible.h" OTQuotation::OTQuotation(int dummy) :reference(0) { lxx = false; } OTQuotations::OTQuotations(int dummy) { } void OTQuotations::read() { // Get contents of the data file. Bail out if not there. ustring xmlfilename = gw_build_filename(Directories->get_package_data(), "ot-quotations-in-nt.xml"); if (!g_file_test(xmlfilename.c_str(), G_FILE_TEST_IS_REGULAR)) return; gchar *contents; g_file_get_contents(xmlfilename.c_str(), &contents, NULL, NULL); /* Read the xml data. Example: 1 */ xmlParserInputBufferPtr inputbuffer; inputbuffer = xmlParserInputBufferCreateMem(contents, strlen(contents), XML_CHAR_ENCODING_NONE); xmlTextReaderPtr reader = xmlNewTextReader(inputbuffer, NULL); if (reader) { char *opening_element = NULL; OTQuotation quotation(0); while ((xmlTextReaderRead(reader) == 1)) { switch (xmlTextReaderNodeType(reader)) { case XML_READER_TYPE_ELEMENT: { opening_element = (char *)xmlTextReaderName(reader); if (!strcmp(opening_element, "set")) { quotation.reference.book = 0; quotation.reference.chapter = 0; quotation.reference.verse.clear(); quotation.referents.clear(); quotation.lxx = false; } if (!strcmp(opening_element, "nt") || !strcmp(opening_element, "ot")) { Reference ref(0); char *attribute; attribute = (char *)xmlTextReaderGetAttribute(reader, BAD_CAST "book"); if (attribute) { ref.book = books_english_to_id(attribute); free(attribute); } attribute = (char *)xmlTextReaderGetAttribute(reader, BAD_CAST "chapter"); if (attribute) { ref.chapter = convert_to_int(attribute); free(attribute); } attribute = (char *)xmlTextReaderGetAttribute(reader, BAD_CAST "verse"); if (attribute) { ref.verse = attribute; free(attribute); } if (!strcmp(opening_element, "nt")) { quotation.reference.book = ref.book; quotation.reference.chapter = ref.chapter; quotation.reference.verse = ref.verse; } if (!strcmp(opening_element, "ot")) { quotation.referents.push_back(ref); } } break; } case XML_READER_TYPE_TEXT: { char *text = (char *)xmlTextReaderValue(reader); if (text) { if (!strcmp(opening_element, "lxx")) { quotation.lxx = convert_to_bool(text); } free(text); } break; } case XML_READER_TYPE_END_ELEMENT: { char *closing_element = (char *)xmlTextReaderName(reader); if (!strcmp(closing_element, "set")) { quotations_nt_order.push_back(quotation); } break; } } } } // Free memory. if (reader) xmlFreeTextReader(reader); if (inputbuffer) xmlFreeParserInputBuffer(inputbuffer); if (contents) g_free(contents); } void OTQuotations::get(Reference & reference, vector < Reference > &references, vector < ustring > &comments) /* Retrieves an Old Testament quotation of a New Testament reference. This function does a bit more too. If an OT reference is passed, it also looks up the place in the NT where this is quoted. reference: The input reference. references: The output reference: contains the related references. */ { // Read data if we've nothing yet. if (quotations_nt_order.empty()) read(); // Store the original reference. references.push_back(reference); comments.push_back("Current one"); // Remap the references. extern Settings *settings; ustring project = settings->genconfig.project_get(); ProjectConfiguration *projectconfig = settings->projectconfig(project, false); Mapping mapping(projectconfig->versification_get(), reference.book); for (unsigned int i = 0; i < quotations_nt_order.size(); i++) { mapping.book_change(quotations_nt_order[i].reference.book); mapping.original_to_me(quotations_nt_order[i].reference); for (unsigned int i2 = 0; i2 < quotations_nt_order[i].referents.size(); i2++) { mapping.book_change(quotations_nt_order[i].referents[i2].book); mapping.original_to_me(quotations_nt_order[i].referents[i2]); } } // Go through the quotations looking for matching ones. bool lxx = false; for (unsigned int i = 0; i < quotations_nt_order.size(); i++) { // If this is a NT reference, look for the corresponding OT quotations. if (reference.equals(quotations_nt_order[i].reference)) { for (unsigned int i2 = 0; i2 < quotations_nt_order[i].referents.size(); i2++) { references.push_back(quotations_nt_order[i].referents[i2]); comments.push_back(comment("Quotation", lxx)); } } // If this is an OT reference, look for possible other ones in the OT, and the NT place that quotes it. for (unsigned int i2 = 0; i2 < quotations_nt_order[i].referents.size(); i2++) { if (reference.equals(quotations_nt_order[i].referents[i2])) { references.push_back(quotations_nt_order[i].reference); comments.push_back("Quoted here"); for (unsigned int i3 = 0; i3 < quotations_nt_order[i].referents.size(); i3++) { if (i3 != i2) { references.push_back(quotations_nt_order[i].referents[i3]); comments.push_back(comment("Parallel passage", lxx)); } } } } } // If there is only one reference found, that will be the original one. // That means that no parallel or corresponding references were found. // Erase that single one in such cases. if (references.size() == 1) { references.clear(); comments.clear(); } } ustring OTQuotations::comment(const gchar * text, bool lxx) { ustring s(text); if (lxx) s.append(" from Septuagint"); return s; } void OTQuotations::produce_in_ot_order() // This produces the quotations in the Old Testament order. { // Produce a sorted list of all references that point to something in the Old Testament. vector old_testament_refs; { for (unsigned int i = 0; i < quotations_nt_order.size(); i++) { for (unsigned int i2 = 0; i2 < quotations_nt_order[i].referents.size(); i2++) { old_testament_refs.push_back (quotations_nt_order[i].referents[i2]); } } sort_references (old_testament_refs); } // Go through the OT places, and attach their NT referents. Reference previous_reference (0); for (unsigned int i = 0; i < old_testament_refs.size(); i++) { // Skip double references. if (previous_reference.equals (old_testament_refs[i])) { continue; } previous_reference.assign (old_testament_refs[i]); // Assemble new quotation. OTQuotation quotation (0); quotation.reference.assign (old_testament_refs[i]); // Harvest the NT referents that belong to that OT quotation. for (unsigned int i2 = 0; i2 < quotations_nt_order.size(); i2++) { for (unsigned int i3 = 0; i3 < quotations_nt_order[i2].referents.size(); i3++) { if (old_testament_refs[i].equals (quotations_nt_order[i2].referents[i3])) { quotation.referents.push_back (quotations_nt_order[i2].reference); } } } quotations_ot_order.push_back (quotation); } } bibledit-gtk-4.9/src/ot-quotations.h000664 000766 000024 00000002604 12221507147 017646 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_OT_QUOTATIONS_H #define INCLUDED_OT_QUOTATIONS_H #include "libraries.h" #include "reference.h" #include "mapping.h" class OTQuotation { public: OTQuotation (int dummy); Reference reference; vector referents; bool lxx; private: }; class OTQuotations { public: OTQuotations (int dummy); void read (); void get (Reference& reference, vector & references, vector & comments); vector quotations_nt_order; void produce_in_ot_order(); vector quotations_ot_order; private: ustring comment (const gchar * text, bool lxx); }; #endif bibledit-gtk-4.9/src/outline.cpp000664 000766 000024 00000042130 12221507130 017020 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "outline.h" #include "settings.h" #include "projectutils.h" #include "usfmtools.h" #include "utilities.h" #include "usfm.h" #include "bible.h" #include "keyboard.h" #include "tiny_utilities.h" #include "stylesheetutils.h" enum { COLUMN_HEADING, COLUMN_CHAPTER_START, COLUMN_VERSE_START, COLUMN_CHAPTER_END, COLUMN_VERSE_END, NUM_COLUMNS }; Outline::Outline(GtkWidget * vbox) { // Initialize / save variables. // Build GUI. reference_changed_signal = gtk_button_new_with_mnemonic(""); gtk_box_pack_start(GTK_BOX(vbox), reference_changed_signal, FALSE, FALSE, 0); gtk_widget_set_can_focus (reference_changed_signal, false); gtk_button_set_focus_on_click(GTK_BUTTON(reference_changed_signal), FALSE); scrolledwindow = gtk_scrolled_window_new(NULL, NULL); gtk_widget_show(scrolledwindow); gtk_box_pack_start(GTK_BOX(vbox), scrolledwindow, TRUE, TRUE, 0); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scrolledwindow), GTK_SHADOW_IN); treeview = gtk_tree_view_new(); gtk_widget_show(treeview); gtk_container_add(GTK_CONTAINER(scrolledwindow), treeview); gtk_tree_view_set_headers_visible(GTK_TREE_VIEW(treeview), FALSE); // Build underlying structure. store = gtk_tree_store_new(NUM_COLUMNS, G_TYPE_STRING, G_TYPE_INT, G_TYPE_INT, G_TYPE_INT, G_TYPE_INT); gtk_tree_view_set_model(GTK_TREE_VIEW(treeview), GTK_TREE_MODEL(store)); g_object_unref(store); GtkCellRenderer *renderer = gtk_cell_renderer_text_new(); GtkTreeViewColumn *column; column = gtk_tree_view_column_new_with_attributes("", renderer, "text", COLUMN_HEADING, NULL); gtk_tree_view_append_column(GTK_TREE_VIEW(treeview), column); GtkTreeSelection *select = gtk_tree_view_get_selection(GTK_TREE_VIEW(treeview)); gtk_tree_selection_set_mode(select, GTK_SELECTION_SINGLE); g_signal_connect((gpointer) treeview, "button_press_event", G_CALLBACK(on_view_button_press_event), gpointer(this)); g_signal_connect((gpointer) treeview, "key_press_event", G_CALLBACK(on_view_key_press_event), gpointer(this)); g_signal_connect((gpointer) treeview, "row_activated", G_CALLBACK(on_view_row_activated), gpointer(this)); g_signal_connect((gpointer) treeview, "popup_menu", G_CALLBACK(on_view_popup_menu), gpointer(this)); } Outline::~Outline() { } void Outline::focus() { gtk_widget_grab_focus(treeview); } bool Outline::focused() { return gtk_widget_has_focus (treeview); } void Outline::goto_reference(const ustring & project, Reference & reference) { // See what changed. bool changed = false; // Handle change of project. if (project != myproject) { changed = true; myproject = project; new_project_handling(); } // Handle change of book. if (reference.book != mybook) { changed = true; mybook = reference.book; } // Handle change of chapter. if (reference.chapter != mychapter) { changed = true; mychapter = reference.chapter; } // If no change, bail out after focusing for any verse change. if (!changed) { focus(reference); return; } // Get and process headers from the text. headers.clear(); levels.clear(); chapters_from.clear(); verses_from.clear(); chapters_to.clear(); verses_to.clear(); verses_last.clear(); chapter_last = 0; vector < unsigned int >chapt = project_get_chapters(myproject, mybook); for (unsigned int ch = 0; ch < chapt.size(); ch++) { retrieve_headers(chapt[ch]); } chapters_verses(); handle_chapter_zero_headers(); // Load the values. load(); // Focus the right heading. focus(reference); } void Outline::load() // Load outline. { // Clear store. gtk_tree_store_clear(store); // If there are no headers, bail out. if (headers.empty()) return; // Iterator. GtkTreeIter iter; // Keep track of the last level that was added to the store. unsigned int last_level = 0; // Go through all headers. for (unsigned int i = 0; i < headers.size(); i++) { // Pad up the difference between this level and the last one. // Get the right iterator where to add this header. unsigned int current_level = levels[i]; // Situation that the level is 1. if (current_level == 1) { gtk_tree_store_append(store, &iter, NULL); } // Situation that the level remains the same. else if (current_level == last_level) { GtkTreeIter child = iter; gtk_tree_model_iter_parent(GTK_TREE_MODEL(store), &iter, &child); gtk_tree_store_append(store, &iter, &iter); } // Situation that the level goes up. else if (current_level > last_level) { for (unsigned int i2 = last_level + 1; i2 <= current_level; i2++) { if (i2 == 1) { gtk_tree_store_append(store, &iter, NULL); } else { gtk_tree_store_append(store, &iter, &iter); } if (i2 < current_level) { ustring ch = "Chapter " + convert_to_string(chapters_from[i]); gtk_tree_store_set(store, &iter, COLUMN_HEADING, ch.c_str(), COLUMN_CHAPTER_START, chapters_from[i], COLUMN_VERSE_START, verses_from[i], COLUMN_CHAPTER_END, chapters_from[i], COLUMN_VERSE_END, verses_from[i], -1); } } } // Situation that the level goes down. else if (current_level < last_level) { for (unsigned int i2 = current_level; i2 <= last_level; i2++) { GtkTreeIter child = iter; gtk_tree_model_iter_parent(GTK_TREE_MODEL(store), &iter, &child); } gtk_tree_store_append(store, &iter, &iter); } // We now have the right iterator where to store the data. Store it. gtk_tree_store_set(store, &iter, COLUMN_HEADING, headers[i].c_str(), COLUMN_CHAPTER_START, chapters_from[i], COLUMN_VERSE_START, verses_from[i], COLUMN_CHAPTER_END, chapters_to[i], COLUMN_VERSE_END, verses_to[i], -1); // Save level. last_level = current_level; } } void Outline::retrieve_headers(unsigned int chapter) { unsigned int verse = 0; vector < ustring > lines = project_retrieve_chapter(myproject, mybook, chapter); for (unsigned int i = 0; i < lines.size(); i++) { ustring marker = usfm_extract_marker(lines[i]); unsigned int level = 0; for (unsigned int i2 = 0; i2 < paragraphmarkers.size(); i2++) { if (paragraphmarkers[i2] == marker) { level = paragraphlevels[i2]; break; } } if (level) { headers.push_back(lines[i]); levels.push_back(level); chapters_from.push_back(chapter); verses_from.push_back(verse + 1); } if (marker == versemarker) { // This also finds the last verse in a sequence or range, e.g. // verse 8 from \v 6-8. size_t position = lines[i].find(" "); position = CLAMP(position, 0, lines[i].length()); ustring vs = lines[i].substr(0, position); vector < unsigned int >verses = verse_range_sequence(vs); if (verses.empty()) verse = 0; else verse = verses[verses.size() - 1]; } } // Store last verse of the chapter. It might be needed later. verses_last[chapter] = verse; // Store last chapter. Needed later on. chapter_last = chapter; } void Outline::chapters_verses() /* Add chapter/verse information to the headers and appropriate containers. This is done using a certain algorithm to get it right. The header starts at the chapter:verse given, that is a simple issue. The more difficult thing is to find out where it ends. If the next header starts at verse 1 of a certain chapter, it means that this header starts at the last verse of the previous chapter. But if the next header starts at any verse, not 1, of a certain chapter, that means that this header starts at that verse minus one. If the ending chapter is the same as the starting chapter, it should not be named, e.g. 10:1-5. But if the ending chapters differs, it should be named, e,g. 10:1-11:6. For the last header, take the last chapter's last verse. */ { // Go through each header. for (unsigned int i = 0; i < headers.size(); i++) { // Do not add chapter:verse information for chapter zero. if (!chapters_from[i]) { verses_from[i] = 0; chapters_to.push_back(0); verses_to.push_back(0); continue; } // Add starting chapter:verse headers[i].append(" (" + convert_to_string(chapters_from[i]) + ":" + convert_to_string(verses_from[i])); // To start off calculating the final chapter:verse, set it to the // last chapter and the last verse. unsigned int ending_chapter = chapter_last; unsigned int ending_verse = verses_last[ending_chapter]; // From here on we only can proceed calculating the last chapter:verse // if more headings follow. If not, the values are left as they are. unsigned int i2 = i + 1; bool chapter_verse_differ = true; if (i2 < headers.size()) { // Initialize the ending chapter:verse from where the next heading starts. unsigned int next_chapter = chapters_from[i2]; unsigned int next_verse = verses_from[i2]; // Find out whether the chapters:verses differ, the beginning and end. chapter_verse_differ = ((next_chapter != chapters_from[i]) || (next_verse != verses_from[i])); // If the verse is 1 then this heading ends at the previous chapter's last verse. if (next_verse == 1) { ending_chapter = next_chapter - 1; ending_verse = verses_last[ending_chapter]; } else { ending_chapter = next_chapter; ending_verse = next_verse - 1; } // Ensure that the ending is not smaller than the starting. if (ending_chapter < chapters_from[i]) { ending_chapter = chapters_from[i]; ending_verse = verses_from[i]; } } // We've found the chapter:verse that this heading ends with. // If the chapter differs from the chapter it starts with, mention it. // Only add the ending bit, if the chapters:verses differ. if (chapter_verse_differ) { headers[i].append("-"); if (ending_chapter != chapters_from[i]) { headers[i].append(convert_to_string(ending_chapter) + ":"); } // Add ending verse. headers[i].append(convert_to_string(ending_verse)); } // Add ending bracket. headers[i].append(")"); // Store the ending chapters and verses. chapters_to.push_back(ending_chapter); verses_to.push_back(ending_verse); } } void Outline::handle_chapter_zero_headers() // Pushes the level of all headers of chapter 0 up one step. { for (unsigned int i = 0; i < levels.size(); i++) { if (chapters_from[i] == 0) { levels[i]++; } } } void Outline::new_project_handling() // Does some operations when there is another project. { // Create an USFM object of the relevant stylesheet. Usfm usfm(stylesheet_get_actual ()); // Clear markers of the various levels of the paragraphs. paragraphmarkers.clear(); paragraphlevels.clear(); // Go through all the styles. for (unsigned int i = 0; i < usfm.styles.size(); i++) { ustring marker = usfm.styles[i].marker; // Store the markers that start the paragraph, and their levels. if (usfm.is_starting_paragraph(marker)) { ParagraphType paragraphtype = usfm.paragraph_get_subtype(marker); if (paragraphtype < ptNormalParagraph) { unsigned int level = 1; if (marker.find("2") != string::npos) level = 2; if (marker.find("3") != string::npos) level = 3; if (marker.find("4") != string::npos) level = 4; if (marker.find("5") != string::npos) level = 5; if (marker.find("6") != string::npos) level = 6; paragraphmarkers.push_back(marker); paragraphlevels.push_back(level); } } // Store the marker that starts the verse number. if (usfm.is_verse_number(marker)) { versemarker = marker; } } } gboolean Outline::on_view_button_press_event(GtkWidget * widget, GdkEventButton * event, gpointer user_data) { return false; } gboolean Outline::on_view_key_press_event(GtkWidget * widget, GdkEventKey * event, gpointer user_data) { // Collapse or expand an item. if (keyboard_left_arrow_pressed(event)) { return ((Outline *) user_data)->expand_collapse(false); } if (keyboard_right_arrow_pressed(event)) { return ((Outline *) user_data)->expand_collapse(true); } return false; } bool Outline::expand_collapse(bool expand) // Expands or collapses the selected items in the treeview. { bool expanded_collapsed = false; GtkTreeModel *model = gtk_tree_view_get_model(GTK_TREE_VIEW(treeview)); GtkTreeSelection *selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(treeview)); GtkTreeIter iter; if (gtk_tree_selection_get_selected(selection, &model, &iter)) { GtkTreePath *path = gtk_tree_model_get_path(model, &iter); if (expand) { if (gtk_tree_view_expand_row(GTK_TREE_VIEW(treeview), path, false)) expanded_collapsed = true; } else { if (gtk_tree_view_collapse_row(GTK_TREE_VIEW(treeview), path)) expanded_collapsed = true; } gtk_tree_path_free(path); } // Return whether we did something. // This is helpful to let the keys do their natural function in case nothing // was expanded or collapsed. return expanded_collapsed; } void Outline::focus(Reference & reference) // Focus the entry that has the reference. { GtkTreeModel *model = GTK_TREE_MODEL(store); GtkTreeSelection *selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(treeview)); GtkTreeIter iter; gboolean valid; bool focused = false; unsigned int ref_number = reference_number(reference.chapter, convert_to_int(reference.verse)); // Get the first iter in the store. valid = gtk_tree_model_get_iter_first(model, &iter); while (valid) { focus_internal_select(ref_number, iter, selection, focused); focus_internal_children(ref_number, iter, selection, focused); valid = gtk_tree_model_iter_next(model, &iter); } } void Outline::focus_internal_children(unsigned int reference, GtkTreeIter & parent, GtkTreeSelection * selection, bool & focused) // Iterates through possible children. Re-entrant function. { GtkTreeModel *model = GTK_TREE_MODEL(store); GtkTreeIter iter; gboolean valid; valid = gtk_tree_model_iter_children(model, &iter, &parent); while (valid) { focus_internal_select(reference, iter, selection, focused); focus_internal_children(reference, iter, selection, focused); valid = gtk_tree_model_iter_next(model, &iter); } } void Outline::focus_internal_select(unsigned int reference, GtkTreeIter & iter, GtkTreeSelection * selection, bool & focused) // Selects and focuses the entry that corresponds to the reference. { if (focused) return; GtkTreeModel *model = GTK_TREE_MODEL(store); guint chapter_start, verse_start, chapter_end, verse_end; gtk_tree_model_get(model, &iter, COLUMN_CHAPTER_START, &chapter_start, COLUMN_VERSE_START, &verse_start, COLUMN_CHAPTER_END, &chapter_end, COLUMN_VERSE_END, &verse_end, -1); unsigned int heading_start = reference_number(chapter_start, verse_start); unsigned int heading_end = reference_number(chapter_end, verse_end); if (reference >= heading_start) { if (reference <= heading_end) { while (gtk_events_pending()) gtk_main_iteration(); gtk_tree_selection_select_iter(selection, &iter); GtkTreePath *path = gtk_tree_model_get_path(GTK_TREE_MODEL(store), &iter); gtk_tree_view_expand_row(GTK_TREE_VIEW(treeview), path, false); gtk_tree_view_set_cursor(GTK_TREE_VIEW(treeview), path, NULL, false); gtk_tree_view_scroll_to_cell(GTK_TREE_VIEW(treeview), path, NULL, true, 0.5, 0.5); gtk_tree_path_free(path); focused = true; } } } void Outline::on_view_row_activated(GtkTreeView * treeview, GtkTreePath * path, GtkTreeViewColumn * column, gpointer user_data) { ((Outline *) user_data)->on_view_row(path); } void Outline::on_view_row(GtkTreePath * path) { // Get the chapter and verse Bibledit ought to go to. GtkTreeModel *model = GTK_TREE_MODEL(store); GtkTreeIter iter; if (!gtk_tree_model_get_iter(model, &iter, path)) return; gtk_tree_model_get(model, &iter, COLUMN_CHAPTER_START, &newchapter, COLUMN_VERSE_START, &newverse, -1); // Signal that a new reference is available. gtk_button_clicked(GTK_BUTTON(reference_changed_signal)); } gboolean Outline::on_view_popup_menu(GtkWidget * widget, gpointer user_data) { return false; } unsigned int Outline::reference_number(unsigned int chapter, unsigned int verse) { return (200 * chapter) + verse; } bibledit-gtk-4.9/src/outline.h000664 000766 000024 00000005256 12221507141 016477 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_OUTLINE_H #define INCLUDED_OUTLINE_H #include "libraries.h" #include #include #include "reference.h" class Outline { public: Outline(GtkWidget *vbox); ~Outline(); void focus(); bool focused(); void goto_reference(const ustring& project, Reference& reference); GtkWidget * reference_changed_signal; guint newchapter, newverse; private: GtkWidget *scrolledwindow; public: GtkWidget *treeview; private: GtkTreeStore *store; ustring myproject; unsigned int mybook; unsigned int mychapter; void load(); vector headers; vector levels; vector chapters_from; vector verses_from; vector chapters_to; vector verses_to; unsigned int chapter_last; map verses_last; void retrieve_headers(unsigned int chapter); void chapters_verses(); void handle_chapter_zero_headers(); vector paragraphmarkers; vector paragraphlevels; ustring versemarker; void new_project_handling(); static gboolean on_view_button_press_event(GtkWidget *widget, GdkEventButton *event, gpointer user_data); static gboolean on_view_key_press_event(GtkWidget *widget, GdkEventKey *event, gpointer user_data); bool expand_collapse(bool expand); void focus(Reference& reference); void focus_internal_children(unsigned int reference, GtkTreeIter& parent, GtkTreeSelection * selection, bool& focused); void focus_internal_select(unsigned int reference, GtkTreeIter& iter, GtkTreeSelection * selection, bool& focused); static void on_view_row_activated(GtkTreeView *treeview, GtkTreePath *path, GtkTreeViewColumn *column, gpointer user_data); void on_view_row(GtkTreePath *path); static gboolean on_view_popup_menu(GtkWidget *widget, gpointer user_data); unsigned int reference_number(unsigned int chapter, unsigned int verse); }; #endif bibledit-gtk-4.9/src/paper.cpp000664 000766 000024 00000004710 12221507130 016452 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "paper.h" const char *PAPER_SIZES[NUMBER_OF_PAPERSIZES] = { "A3", "A4", "A5", "B4 (ISO)", "B5 (ISO)", "B6 (ISO)", "B4 (JIS)", "B5 (JIS)", "B6 (JIS)", "Letter", "Legal", "Tabloit", "C4", "C5", "C6" }; double PAPER_WIDTHS[NUMBER_OF_PAPERSIZES] = { 29.70, 21.00, 14.80, 25.00, 17.60, 12.50, 25.70, 18.20, 12.80, 21.59, 21.59, 27.96, 22.90, 16.20, 11.40 }; double PAPER_HEIGHTS[NUMBER_OF_PAPERSIZES] = { 42.00, 29.70, 21.00, 35.30, 25.00, 17.60, 36.40, 25.70, 18.20, 27.94, 35.57, 43.13, 32.40, 22.90, 16.20 }; ustring paper_size_get_name(int index) { ustring value; if (index < NUMBER_OF_PAPERSIZES) value = PAPER_SIZES[index]; else value = "User defined"; return value; } ustring paper_size_get_name(double width, double height) // Given a width and a height, return the papersize, e.g. A4. // If no size is found, return "User defined". { ustring result = paper_size_get_name(NUMBER_OF_PAPERSIZES); for (unsigned int i = 0; i < NUMBER_OF_PAPERSIZES; i++) if (width == PAPER_WIDTHS[i]) if (height == PAPER_HEIGHTS[i]) result = paper_size_get_name(i); return result; } double paper_size_get_width(const ustring & size) // Returns the width belonging to a size, e.g. A4 returns 21.00 { for (unsigned int i = 0; i < NUMBER_OF_PAPERSIZES; i++) if (size == paper_size_get_name(i)) return PAPER_WIDTHS[i]; return 0; } double paper_size_get_height(const ustring & size) // Returns the height belonging to a size, e.g. A4 returns 29.70 { for (unsigned int i = 0; i < NUMBER_OF_PAPERSIZES; i++) if (size == paper_size_get_name(i)) return PAPER_HEIGHTS[i]; return 0; } bibledit-gtk-4.9/src/paper.h000664 000766 000024 00000002120 12221507140 016111 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_PAPER_H #define INCLUDED_PAPER_H #include "libraries.h" #define NUMBER_OF_PAPERSIZES 15 ustring paper_size_get_name (int index); ustring paper_size_get_name (double width, double height); double paper_size_get_width (const ustring& size); double paper_size_get_height (const ustring& size); #endif bibledit-gtk-4.9/src/parallel_passages.cpp000664 000766 000024 00000002563 12221507143 021035 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "parallel_passages.h" #include "ot-quotations.h" #include "settings.h" #include "ot-nt-parallels.h" void parallel_passages_retrieve(Reference& reference, vector & references, vector & comments) { OTQuotations otquotations(0); otquotations.get(reference, references, comments); vector references2; vector comments2; OtNtParallels otntparallels(0); otntparallels.get(reference, references2, comments2); for (unsigned int i = 0; i < references2.size(); i++) { references.push_back(references2[i]); comments.push_back(comments2[i]); } } bibledit-gtk-4.9/src/parallel_passages.h000664 000766 000024 00000002072 12221507143 020475 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_PARALLEL_PASSAGES_H #define INCLUDED_PARALLEL_PASSAGES_H #include "libraries.h" #include "reference.h" #include #include "windowreferences.h" void parallel_passages_retrieve (Reference& reference, vector & references, vector & comments); #endif bibledit-gtk-4.9/src/paratext.cpp000644 000766 000024 00000200255 12453001367 017203 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "paratext.h" #include "directories.h" #include "utilities.h" #include "gwrappers.h" #include "styles.h" ExportParatextStylesheet::ExportParatextStylesheet (int dummy) { // Load the standard Paratext stylesheet. { ReadText rt (gw_build_filename (Directories->get_package_data(), "usfm.sty"), true, false); stylesheet_lines = rt.lines; } // Indicate it was exported from bibledit. if (!stylesheet_lines.empty()) { stylesheet_lines[0].append ("# Exported from Bibledit-Gtk"); } } ExportParatextStylesheet::~ExportParatextStylesheet () { } void ExportParatextStylesheet::convert (const ustring& name) { // Pointer to the styles object. extern Styles * styles; // The stylesheet to export. Stylesheet * sheet = styles->stylesheet (name); // Go through the markers. for (unsigned int i = 0; i < sheet->styles.size(); i++) { StyleV2 * style = sheet->styles[i]; marker = style->marker; if (marker == "id") { } else if (marker == "ide") { } else if (marker == "h") { } else if (marker == "h1") { } else if (marker == "h2") { } else if (marker == "h3") { } else if (marker == "toc1") { } else if (marker == "toc2") { } else if (marker == "toc3") { } else if (marker == "rem") { } else if (marker == "sts") { } else if (marker == "restore") { } else if (marker == "imt") { //set_font_size (style->fontsize); } else if (marker == "ide") { } else if (marker == "ide") { } else if (marker == "ide") { } else if (marker == "ide") { } else if (marker == "ide") { } // Be aware that this has not yet been implemented. The export just produces the standard Paratext stylesheet. } /* \Marker imt \Name imt - Introduction - Major Title Level 1 \Description Introduction major title, level 1 (if single level) (basic) \OccursUnder id \Rank 5 \TextProperties paragraph publishable vernacular level_1 \TextType Other \StyleType Paragraph \FontSize 14 \Bold \Justification Center \SpaceBefore 8 \SpaceAfter 4 \Marker imt1 \Name imt1 - Introduction - Major Title Level 1 \Description Introduction major title, level 1 (if multiple levels) \OccursUnder id \Rank 5 \TextProperties paragraph publishable vernacular level_1 \TextType Other \StyleType Paragraph \FontSize 14 \Bold \Justification Center \SpaceBefore 8 \SpaceAfter 4 \Marker imt2 \Name imt2 - Introduction - Major Title Level 2 \Description Introduction major title, level 2 \OccursUnder id \Rank 5 \TextProperties paragraph publishable vernacular level_2 \TextType other \StyleType Paragraph \FontSize 13 \Italic \Justification Center \SpaceBefore 6 \SpaceAfter 3 \Marker imt3 \Name imt3 - Introduction - Major Title Level 3 \Description Introduction major title, level 3 \OccursUnder id \Rank 5 \TextProperties paragraph publishable vernacular level_3 \TextType Other \StyleType Paragraph \FontSize 12 \Bold \Justification Center \SpaceBefore 2 \SpaceAfter 2 \Marker imt4 \Name imt4 - Introduction - Major Title Level 4 \Description Introduction major title, level 4 (usually within parenthesis) \OccursUnder id \Rank 5 \TextProperties paragraph publishable vernacular level_4 \TextType Other \StyleType Paragraph \FontSize 12 \Italic \Justification Center \SpaceBefore 2 \SpaceAfter 2 \Marker imte \Name imte - Introduction - [Uncommon] Major Title at Introduction End Level 1 \Description Introduction major title at introduction end, level 1 (if single level) \TextProperties paragraph publishable vernacular level_1 \TextType Other \OccursUnder id \Rank 7 \StyleType Paragraph \FontSize 20 \Bold \Justification Center \SpaceBefore 8 \SpaceAfter 4 \Marker imte1 \Name imte1 - Introduction - [Uncommon] Major Title at Introduction End Level 1 \Description Introduction major title at introduction end, level 1 (if multiple levels) \TextProperties paragraph publishable vernacular level_1 \TextType Other \OccursUnder id \Rank 7 \StyleType Paragraph \FontSize 20 \Bold \Justification Center \SpaceBefore 8 \SpaceAfter 4 \Marker imte2 \Name imte2 - Introduction - [Uncommon] Major Title at Introduction End Level 2 \Description Introduction major title at introduction end, level 2 \TextProperties paragraph publishable vernacular level_2 \TextType Other \OccursUnder id \Rank 7 \StyleType Paragraph \FontSize 16 \Italic \Justification Center \SpaceAfter 2 \Marker is \Name is - Introduction - Section Heading Level 1 \Description Introduction section heading, level 1 (if single level) (basic) \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular level_1 \StyleType Paragraph \FontSize 14 \Bold \Justification Center \SpaceBefore 8 \SpaceAfter 4 \Marker is1 \Name is1 - Introduction - Section Heading Level 1 \Description Introduction section heading, level 1 (if multiple levels) \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular level_1 \StyleType Paragraph \FontSize 14 \Bold \Justification Center \SpaceBefore 8 \SpaceAfter 4 \Marker is2 \Name is2 - Introduction - Section Heading Level 2 \Description Introduction section heading, level 2 \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular level_2 \StyleType Paragraph \FontSize 12 \Bold \Justification Center \SpaceBefore 8 \SpaceAfter 4 \Marker iot \Name iot - Introduction - Outline Title \Description Introduction outline title (basic) \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \Bold \Justification Center \SpaceBefore 8 \SpaceAfter 4 \Marker io \Name io - Introduction - Outline Level 1 \Description Introduction outline text, level 1 (if single level) \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular level_1 \StyleType paragraph \FontSize 12 \LeftMargin .5 \Marker io1 \Name io1 - Introduction - Outline Level 1 \Description Introduction outline text, level 1 (if multiple levels) (basic) \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular level_1 \StyleType paragraph \FontSize 12 \LeftMargin .5 \Marker io2 \Name io2 - Introduction - Outline Level 2 \Description Introduction outline text, level 2 \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular level_2 \StyleType paragraph \FontSize 12 \LeftMargin .75 \Marker io3 \Name io3 - Introduction - Outline Level 3 \Description Introduction outline text, level 3 \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular level_3 \StyleType paragraph \FontSize 12 \LeftMargin 1 \Marker io4 \Name io4 - Introduction - Outline Level 4 \Description Introduction outline text, level 4 \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular level_4 \StyleType paragraph \FontSize 12 \LeftMargin 1.25 \Marker ior \Endmarker ior* \Name ior...ior* - Introduction - Outline References Range \Description Introduction references range for outline entry; for marking references separately \OccursUnder id io io1 io2 io3 io4 NEST \TextType Other \TextProperties paragraph publishable vernacular level_4 \StyleType Character \FontSize 12 \Marker ip \Name ip - Introduction - Paragraph \Description Introduction prose paragraph (basic) \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \FirstLineIndent .125 # 1/8 inch first line indent \Marker im \Name im - Introduction - Paragraph - no first line indent \Description Introduction prose paragraph, with no first line indent (may occur after poetry) \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \Marker ipi \Name ipi - Introduction - Indented Para - first line indent \Description Introduction prose paragraph, indented, with first line indent \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \FirstLineIndent .125 # 1/8 inch first line indent \LeftMargin .25 \RightMargin .25 \Marker imi \Name imi - Introduction - Indented Para - no first line indent \Description Introduction prose paragraph text, indented, with no first line indent \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \LeftMargin .25 \RightMargin .25 \Marker ili \Name ili - Introduction - List Entry - Level 1 \Description A list entry, level 1 (if single level) \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular \StyleType paragraph \FontSize 12 \LeftMargin .625 \FirstLineIndent -.375 # 1/4 inch indent, 5/8 inch wrap \Marker ili1 \Name ili1 - Introduction - List Entry - Level 1 \Description A list entry, level 1 (if multiple levels) \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular \StyleType paragraph \FontSize 12 \LeftMargin .5 \FirstLineIndent -.25 # 1/4 inch indent, 5/8 inch wrap \Marker ili2 \Name ili2 - Introduction - List Entry - Level 2 \Description A list entry, level 2 \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular \StyleType paragraph \FontSize 12 \LeftMargin .75 \FirstLineIndent -.25 # 6/16 inch \Marker ipq \Name ipq - Introduction - Paragraph - quote from text \Description Introduction prose paragraph, quote from the body text \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \LeftMargin .25 \RightMargin .25 \FirstLineIndent .125 # 1/8 inch first line indent \Italic \Marker imq \Name imq - Introduction - Paragraph - quote from text - no first line indent \Description Introduction prose paragraph, quote from the body text, with no first line indent \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \LeftMargin .25 \RightMargin .25 \Italic \Marker ipr \Name ipr - Introduction - Paragraph - right aligned \Description Introduction prose paragraph, right aligned \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \LeftMargin .25 \RightMargin .25 \Justification Right \Italic \Marker ib \Name ib - Introduction - Blank Line \Description Introduction blank line \OccursUnder id \Rank 6 \TextProperties paragraph publishable vernacular poetic \TextType Other \FontSize 10 \StyleType paragraph \Marker iq \Name iq - Introduction - Poetry Level 1 \Description Introduction poetry text, level 1 (if single level) \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular poetic level_1 \StyleType Paragraph \FontSize 12 \LeftMargin 1 \FirstLineIndent -.75 # 1/4 inch indent, 1 inch wrap \Italic \Marker iq1 \Name iq1 - Introduction - Poetry Level 1 \Description Introduction poetry text, level 1 (if multiple levels) \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular poetic level_1 \StyleType Paragraph \FontSize 12 \LeftMargin 1 \FirstLineIndent -.75 # 1/4 inch indent, 1 inch wrap \Italic \Marker iq2 \Name iq2 - Introduction - Poetry Level 2 \Description Introduction poetry text, level 2 \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular poetic level_2 \StyleType Paragraph \FontSize 12 \LeftMargin 1 \FirstLineIndent -.5 # 1/2 inch indent, 1 inch wrap \Italic \Marker iq3 \Name iq3 - Introduction - Poetry Level 3 \Description Introduction poetry text, level 3 \OccursUnder id \Rank 6 \TextType Other \TextProperties paragraph publishable vernacular poetic level_3 \StyleType Paragraph \FontSize 12 \LeftMargin 1 \FirstLineIndent -.25 # 3/4 inch indent, 1 inch wrap \Italic \Marker iex \Name iex - Introduction - Explanatory or Bridge Text \Description Introduction explanatory or bridge text (e.g. explanation of missing book in Short Old Testament) \OccursUnder id c \TextType Other \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \FirstLineIndent .125 # 1/8 inch first line indent \SpaceBefore 4 \SpaceAfter 4 \Marker iqt \Endmarker iqt* \Name iqt...iqt* - Special Text - Quoted Scripture Text in Introduction \Description For quoted scripture text appearing in the introduction \OccursUnder id NEST \TextType Other \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Italic \Marker ie \Name ie - Introduction - End Marker \Description Introduction ending marker \OccursUnder id \Rank 6 \TextProperties paragraph publishable vernacular \TextType Other \FontSize 10 \StyleType paragraph # Chapters and Verses \Marker c \Name c - Chapter Number \Description Chapter number (necessary for normal Paratext operation) \OccursUnder id \Rank 8 \TextType ChapterNumber \TextProperties chapter \StyleType Paragraph \Bold \FontSize 18 \SpaceBefore 8 \SpaceAfter 4 \Marker ca \Endmarker ca* \Name ca...ca* - Chapter Number - Alternate \Description Second (alternate) chapter number (for coding dual versification; useful for places where different traditions of chapter breaks need to be supported in the same translation) \OccursUnder c \TextType Other \StyleType Character \Italic \FontSize 16 \Color 2263842 \Marker cp \Name cp - Chapter Number - Publishing Alternate \Description Published chapter number (this is a chapter marking that would be used in the published text) \OccursUnder c \Rank 4 \TextType Other \TextProperties paragraph \StyleType Paragraph \Bold \FontSize 18 \SpaceBefore 8 \SpaceAfter 4 \Color 16711680 \Marker cl \Name cl - Chapter - Publishing Label \Description Chapter label used for translations that add a word such as "Chapter" before chapter numbers (e.g. Psalms). The subsequent text is the chapter label. \OccursUnder id c ms ms1 ms2 ms3 mr \TextType Other \TextProperties paragraph \StyleType Paragraph \Bold \FontSize 18 \SpaceBefore 8 \SpaceAfter 4 \Justification Center \Marker cd \Name cd - Chapter - Description \Description Chapter Description (Publishing option D, e.g. in Russian Bibles) \OccursUnder c \TextType Other \TextProperties paragraph \StyleType Paragraph \FontSize 11 \SpaceBefore 8 \SpaceAfter 4 \Marker v \Name v - Verse Number \Description A verse number (Necessary for normal paratext operation) (basic) \OccursUnder li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 qm4 tc1 tc2 tc3 tc4 tcr1 tcr2 tcr3 tcr4 s3 d sp \TextType VerseNumber \TextProperties verse \StyleType Character \FontSize 12 \Superscript \Marker va \Endmarker va* \Name va...va* - Verse Number - Alternate \Description Second (alternate) verse number (for coding dual numeration in Psalms; see also NRSV Exo 22.1-4) \OccursUnder li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 qm4 tc1 tc2 tc3 tc4 s3 d \TextType Other \StyleType Character \FontSize 12 \Superscript \Color 2263842 \Marker vp \Endmarker vp* \Name vp...vp* - Verse Number - Publishing Alternate \Description Published verse marker - this is a verse marking that would be used in the published text \OccursUnder li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 tc1 tc2 tc3 tc4 s3 \TextType Other \StyleType Character \FontSize 12 \Superscript \Color 16711680 # Paragraphs \Marker p \Name p - Paragraph - Normal - First Line Indent \Description Paragraph text, with first line indent (basic) \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \FirstLineIndent .125 # 1/8 inch first line indent \Marker m \Name m - Paragraph - Margin - No First Line Indent \Description Paragraph text, with no first line indent (may occur after poetry) (basic) \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \Marker pmo \Name pmo - Paragraph - Embedded Text Opening \Description Embedded text opening \OccursUnder m mi nb p pc ph phi pi pi1 pi2 pi3 pr q q1 q2 q3 q4 qc qr \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \LeftMargin .25 \RightMargin .25 \Marker pm \Name pm - Paragraph - Embedded Text \Description Embedded text paragraph \OccursUnder m mi nb p pc ph phi pi pi1 pi2 pi3 pr psi q q1 q2 q3 q4 qc qr \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \FirstLineIndent .125 # 1/8 inch first line indent \LeftMargin .25 \RightMargin .25 \Marker pmc \Name pmc - Paragraph - Embedded Text Closing \Description Embedded text closing \OccursUnder m mi nb p pc ph phi pi pi1 pi2 pi3 pr q q1 q2 q3 q4 qc qr \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \LeftMargin .25 \RightMargin .25 \Marker pmr \Name pmr - Paragraph - Embedded Text Refrain \Description Embedded text refrain (e.g. Then all the people shall say, "Amen!") \OccursUnder m mi nb p pc ph phi pi pi1 pi2 pi3 pr q q1 q2 q3 q4 qc qr \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \Justification Right \LeftMargin .25 \RightMargin .25 \Marker pi \Name pi - Paragraph - Indented - Level 1 - First Line Indent \Description Paragraph text, level 1 indent (if sinlge level), with first line indent; often used for discourse (basic) \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \FirstLineIndent .125 # 1/8 inch first line indent \LeftMargin .25 \RightMargin .25 \Marker pi1 \Name pi1 - Paragraph - Indented - Level 1 - First Line Indent \Description Paragraph text, level 1 indent (if multiple levels), with first line indent; often used for discourse \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \FirstLineIndent .125 # 1/8 inch first line indent \LeftMargin .25 \RightMargin .25 \Marker pi2 \Name pi2 - Paragraph - Indented - Level 2 - First Line Indent \Description Paragraph text, level 2 indent, with first line indent; often used for discourse \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \FirstLineIndent .125 # 1/8 inch first line indent \LeftMargin .5 \RightMargin .25 \Marker pi3 \Name pi3 - Paragraph - Indented - Level 3 - First Line Indent \Description Paragraph text, level 3 indent, with first line indent; often used for discourse \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \FirstLineIndent .125 # 1/8 inch first line indent \LeftMargin .75 \RightMargin .25 \Marker pc \Name pc - Paragraph - Centered (for Inscription) \Description Paragraph text, centered (for Inscription) \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \Justification Center \FontSize 12 \Marker mi \Name mi - Paragraph - Indented - No First Line Indent \Description Paragraph text, indented, with no first line indent; often used for discourse \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \LeftMargin .25 \RightMargin .25 \Marker nb \Name nb - Paragraph - No Break with Previous Paragraph \Description Paragraph text, with no break from previous paragraph text (at chapter boundary) (basic) \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \Marker cls \Name cls - Paragraph - Closure of an Epistle \Description Closure of an Epistle \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \Justification Right # Poetry \Marker q \Name q - Poetry - Indent Level 1 - Single Level Only \Description Poetry text, level 1 indent (if single level) \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular poetic level_1 \StyleType Paragraph \FontSize 12 \LeftMargin 1.25 \FirstLineIndent -1 # 1/4 inch indent, 1 inch wrap \Marker q1 \Name q1 - Poetry - Indent Level 1 \Description Poetry text, level 1 indent (if multiple levels) (basic) \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular poetic level_1 \StyleType Paragraph \FontSize 12 \LeftMargin 1.25 \FirstLineIndent -1 # 1/4 inch indent, 1 inch wrap \Marker q2 \Name q2 - Poetry - Indent Level 2 \Description Poetry text, level 2 indent (basic) \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular poetic level_2 \StyleType Paragraph \FontSize 12 \LeftMargin 1.25 \FirstLineIndent -.75 # 1/2 inch indent, 1 inch wrap \Marker q3 \Name q3 - Poetry - Indent Level 3 \Description Poetry text, level 3 indent \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular poetic level_3 \StyleType Paragraph \FontSize 12 \LeftMargin 1.25 \FirstLineIndent -.5 # 3/4 inch indent, 1 inch wrap \Marker q4 \Name q4 - Poetry - Indent Level 4 \Description Poetry text, level 4 indent \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular poetic level_3 \StyleType Paragraph \FontSize 12 \LeftMargin 1.25 \FirstLineIndent -.25 # 3/4 inch indent, 1 inch wrap \Marker qc \Name qc - Poetry - Centered \Description Poetry text, centered \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular poetic \StyleType Paragraph \FontSize 12 \Justification Center \Marker qr \Name qr - Poetry - Right Aligned \Description Poetry text, Right Aligned \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular poetic \StyleType Paragraph \FontSize 12 \Justification Right \Marker qs \Endmarker qs* \Name qs...qs* - Poetry Text - Selah \Description Poetry text, Selah \OccursUnder q q1 q2 q3 q4 qc qr NEST \Rank 4 \TextType VerseText \TextProperties publishable vernacular poetic \StyleType Character \FontSize 12 \Italic \Marker qa \Name qa - Poetry - Acrostic Heading/Marker \Description Poetry text, Acrostic marker/heading \OccursUnder c \Rank 4 \TextType Other \TextProperties paragraph publishable vernacular poetic \StyleType Paragraph \FontSize 12 \Italic \Marker qac \Endmarker qac* \Name qac...qac* - Poetry Text - Acrostic Letter \Description Poetry text, Acrostic markup of the first character of a line of acrostic poetry \OccursUnder q q1 q2 q3 q4 qc qr NEST \Rank 4 \TextType Other \TextProperties paragraph publishable vernacular poetic \StyleType Character \FontSize 12 \Italic \Marker qm \Name qm - Poetry - Embedded Text - Indent Level 1 - Single Level Only \Description Poetry text, embedded, level 1 indent (if single level) \OccursUnder m mi nb p pc ph phi pi pi1 pi2 pi3 pr q q1 q2 q3 q4 qc qr \TextType VerseText \TextProperties paragraph publishable vernacular poetic \StyleType Paragraph \FontSize 12 \LeftMargin 1 \FirstLineIndent -.75 # 1/4 inch indent, 1 inch wrap \Marker qm1 \Name qm1 - Poetry - Embedded Text - Indent Level 1 \Description Poetry text, embedded, level 1 indent (if multiple levels) \OccursUnder m mi nb p pc ph phi pi pi1 pi2 pi3 pr q q1 q2 q3 q4 qc qr \TextType VerseText \TextProperties paragraph publishable vernacular poetic level_1 \StyleType Paragraph \FontSize 12 \LeftMargin 1 \FirstLineIndent -.75 # 1/4 inch indent, 1 inch wrap \Marker qm2 \Name qm2 - Poetry - Embedded Text - Indent Level 2 \Description Poetry text, embedded, level 2 indent \OccursUnder m mi nb p pc ph phi pi pi1 pi2 pi3 pr q q1 q2 q3 q4 qc qr \TextType VerseText \TextProperties paragraph publishable vernacular poetic level_2 \StyleType Paragraph \FontSize 12 \LeftMargin 1 \FirstLineIndent -.5 # 1/2 inch indent, 1 inch wrap \Marker qm3 \Name qm3 - Poetry - Embedded Text - Indent Level 3 \Description Poetry text, embedded, level 3 indent \OccursUnder m mi nb p pc ph phi pi pi1 pi2 pi3 pr q q1 q2 q3 q4 qc qr \TextType VerseText \TextProperties paragraph publishable vernacular poetic level_3 \StyleType Paragraph \FontSize 12 \LeftMargin 1 \FirstLineIndent -.25 # 3/4 inch indent, 1 inch wrap \Marker b \Name b - Poetry - Stanza Break (Blank Line) \Description Poetry text stanza break (e.g. stanza break) (basic) \OccursUnder c \Rank 4 \TextProperties paragraph publishable vernacular poetic \TextType VerseText \FontSize 10 \StyleType paragraph # Titles & Headings \Marker mt \Name mt - Title - Major Title Level 1 \Description The main title of the book (if single level) \OccursUnder id \Rank 3 \TextProperties paragraph publishable vernacular level_1 \TextType Title \StyleType Paragraph \FontSize 20 \Bold \Justification Center \SpaceBefore 8 \SpaceAfter 4 \Marker mt1 \Name mt1 - Title - Major Title Level 1 \Description The main title of the book (if multiple levels) (basic) \OccursUnder id \Rank 3 \TextProperties paragraph publishable vernacular level_1 \TextType Title \StyleType Paragraph \FontSize 20 \Bold \Justification Center \SpaceBefore 2 \SpaceAfter 4 \Marker mt2 \Name mt2 - Title - Major Title Level 2 \Description A secondary title usually occurring before the main title (basic) \OccursUnder id \Rank 3 \TextProperties paragraph publishable vernacular level_2 \TextType Title \StyleType Paragraph \FontSize 16 \Italic \Justification Center \SpaceAfter 2 \Marker mt3 \Name mt3 - Title - Major Title Level 3 \Description A secondary title occurring after the main title \OccursUnder id \Rank 3 \TextProperties paragraph publishable vernacular level_3 \TextType Title \StyleType Paragraph \FontSize 16 \Bold \Justification Center \SpaceBefore 2 \SpaceAfter 2 \Marker mt4 \Name mt4 - Title - Major Title level 4 \Description A small secondary title sometimes occuring within parentheses \OccursUnder id \Rank 3 \TextProperties paragraph publishable vernacular level_4 \TextType Title \StyleType Paragraph \FontSize 12 \Justification Center \SpaceBefore 2 \SpaceAfter 2 \Marker mte \Name mte - Title - [Uncommon] Major Title Ending Level 1 \Description The main title of the book repeated at the end of the book, level 1 (if single level) \TextProperties paragraph publishable vernacular level_1 \TextType Title \OccursUnder c \Rank 2 \StyleType Paragraph \FontSize 20 \Bold \Justification Center \SpaceBefore 8 \SpaceAfter 4 \Marker mte1 \Name mte1 - Title - [Uncommon] Major Title Ending Level 1 \Description The main title of the book repeated at the end of the book, level 1 (if multiple levels) \TextProperties paragraph publishable vernacular level_1 \TextType Title \OccursUnder li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 tc1 tc2 tc3 tc4 s3 d \Rank 2 \StyleType Paragraph \FontSize 20 \Bold \Justification Center \SpaceBefore 8 \SpaceAfter 4 \Marker mte2 \Name mte2 - Title - [Uncommon] Major Title Ending Level 2 \Description A secondary title occurring before or after the 'ending' main title \TextProperties paragraph publishable vernacular level_2 \TextType Title \OccursUnder mte1 \Rank 2 \StyleType Paragraph \FontSize 16 \Italic \Justification Center \SpaceAfter 2 \Marker ms \Name ms - Heading - Major Section Level 1 \Description A major section division heading, level 1 (if single level) (basic) \OccursUnder c \Rank 4 \TextType Section \TextProperties paragraph publishable vernacular level_1 \StyleType Paragraph \FontSize 14 \Bold \Justification Center \SpaceBefore 16 \SpaceAfter 4 \Marker ms1 \Name ms1 - Heading - Major Section Level 1 \Description A major section division heading, level 1 (if multiple levels) \OccursUnder c \Rank 4 \TextType Section \TextProperties paragraph publishable vernacular level_1 \StyleType Paragraph \FontSize 14 \Bold \Justification Center \SpaceBefore 16 \SpaceAfter 4 \Marker ms2 \Name ms2 - Heading - Major Section Level 2 \Description A major section division heading, level 2 \OccursUnder c \Rank 4 \TextType Section \TextProperties paragraph publishable vernacular level_1 \StyleType Paragraph \FontSize 14 \Bold \Justification Center \SpaceBefore 16 \SpaceAfter 4 \Marker ms3 \Name ms3 - Heading - Major Section Level 3 \Description A major section division heading, level 3 \OccursUnder c \Rank 4 \TextType Section \TextProperties paragraph publishable vernacular level_1 \StyleType Paragraph \FontSize 14 \Italic \Justification Center \SpaceBefore 16 \SpaceAfter 4 \Marker mr \Name mr - Heading - Major Section Range References \Description A major section division references range heading (basic) \OccursUnder ms ms1 ms2 ms3 \TextType Section \TextProperties paragraph publishable vernacular level_1 \StyleType Paragraph \FontSize 12 \Italic \Justification Center \SpaceAfter 4 \Marker s \Name s - Heading - Section Level 1 \Description A section heading, level 1 (if single level) (basic) \OccursUnder c \Rank 4 \TextType Section \TextProperties paragraph publishable vernacular level_1 \StyleType Paragraph \FontSize 12 \Bold \Justification Center \SpaceBefore 8 \SpaceAfter 4 \Marker s1 \Name s1 - Heading - Section Level 1 \Description A section heading, level 1 (if multiple levels) \OccursUnder c \Rank 4 \TextType Section \TextProperties paragraph publishable vernacular level_1 \StyleType Paragraph \FontSize 12 \Bold \Justification Center \SpaceBefore 8 \SpaceAfter 4 \Marker s2 \Name s2 - Heading - Section Level 2 \Description A section heading, level 2 (e.g. Proverbs 22-24) \OccursUnder c \Rank 4 \TextType Section \TextProperties paragraph publishable vernacular level_2 \StyleType Paragraph \FontSize 12 \Italic \Justification Center \SpaceBefore 8 \SpaceAfter 4 \Marker s3 \Name s3 - Heading - Section Level 3 \Description A section heading, level 3 (e.g. Genesis "The First Day") \OccursUnder c \Rank 4 \TextType Section \TextProperties paragraph publishable vernacular level_3 \StyleType Paragraph \FontSize 12 \Italic \Justification Left \SpaceBefore 6 \SpaceAfter 3 \Marker s4 \Name s4 - Heading - Section Level 4 \Description A section heading, level 4 \OccursUnder c \Rank 4 \TextType Section \TextProperties paragraph publishable vernacular level_4 \StyleType Paragraph \FontSize 12 \Italic \Justification Left \SpaceBefore 6 \SpaceAfter 3 \Marker sr \Name sr - Heading - Section Range References \Description A section division references range heading \OccursUnder s s1 s2 s3 s4 \TextType Section \TextProperties paragraph publishable vernacular level_1 \StyleType Paragraph \FontSize 12 \Bold \Justification Center \SpaceAfter 4 \Marker r \Name r - Heading - Parallel References \Description Parallel reference(s) (basic) \OccursUnder c s s1 s2 s3 s4 \TextType Section \TextProperties paragraph publishable vernacular level_1 \StyleType Paragraph \FontSize 12 \Italic \Justification Center \SpaceAfter 4 \Marker sp \Name sp - Heading - Speaker \Description A heading, to identify the speaker (e.g. Job) \OccursUnder c \Rank 4 \TextType Section \TextProperties paragraph publishable vernacular level_1 \StyleType Paragraph \FontSize 12 \Italic \Justification Left \SpaceBefore 8 \SpaceAfter 4 \Marker d \Name d - Heading - Descriptive Title - Hebrew Subtitle \Description A Hebrew text heading, to provide description (e.g. Psalms) \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular level_1 \StyleType Paragraph \FontSize 12 \Italic \Justification Center \SpaceBefore 4 \SpaceAfter 4 # Tables \Marker tr \Name tr - Table - Row \Description A new table row \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \LeftMargin .5 \FirstLineIndent -.25 # 6/16 inch \Marker th1 \Name th1 - Table - Column 1 Heading \Description A table heading, column 1 \OccursUnder tr \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Italic \Marker th2 \Name th2 - Table - Column 2 Heading \Description A table heading, column 2 \OccursUnder tr \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Italic \Marker th3 \Name th3 - Table - Column 3 Heading \Description A table heading, column 3 \OccursUnder tr \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Italic \Marker th4 \Name th4 - Table - Column 4 Heading \Description A table heading, column 4 \OccursUnder tr \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Italic \Marker tc1 \Name tc1 - Table - Column 1 Cell \Description A table cell item, column 1 \OccursUnder tr \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Marker tc2 \Name tc2 - Table - Column 2 Cell \Description A table cell item, column 2 \OccursUnder tr \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Marker tc3 \Name tc3 - Table - Column 3 Cell \Description A table cell item, column 3 \OccursUnder tr \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Marker tc4 \Name tc4 - Table - Column 4 Cell \Description A table cell item, column 4 \OccursUnder tr \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 # Right Aligned Table Heads and Columns \Marker thr1 \Name thr1 - Table - Column 1 Heading - Right Aligned \Description A table heading, column 1, right aligned \OccursUnder tr \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Italic \Justification right \Marker thr2 \Name thr2 - Table - Column 2 Heading - Right Aligned \Description A table heading, column 2, right aligned \OccursUnder tr \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Italic \Justification right \Marker thr3 \Name thr3 - Table - Column 3 Heading - Right Aligned \Description A table heading, column 3, right aligned \OccursUnder tr \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Italic \Justification right \Marker thr4 \Name thr4 - Table - Column 4 Heading - Right Aligned \Description A table heading, column 4, right aligned \OccursUnder tr \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Italic \Justification right \Marker tcr1 \Name tcr1 - Table - Column 1 Cell - Right Aligned \Description A table cell item, column 1, right aligned \OccursUnder tr \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Justification right \Marker tcr2 \Name tcr2 - Table - Column 2 Cell - Right Aligned \Description A table cell item, column 2, right aligned \OccursUnder tr \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Justification right \Marker tcr3 \Name tcr3 - Table - Column 3 Cell - Right Aligned \Description A table cell item, column 3, right aligned \OccursUnder tr \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Justification right \Marker tcr4 \Name tcr4 - Table - Column 4 Cell - Right Aligned \Description A table cell item, column 4, right aligned \OccursUnder tr \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Justification right # Lists \Marker li \Name li - List Entry - Level 1 \Description A list entry, level 1 (if single level) \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType paragraph \FontSize 12 \LeftMargin .625 \FirstLineIndent -.375 # 1/4 inch indent, 5/8 inch wrap \Marker li1 \Name li1 - List Entry - Level 1 \Description A list entry, level 1 (if multiple levels) \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType paragraph \FontSize 12 \LeftMargin .5 \FirstLineIndent -.25 # 1/4 inch indent, 5/8 inch wrap \Marker li2 \Name li2 - List Entry - Level 2 \Description A list entry, level 2 \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType paragraph \FontSize 12 \LeftMargin .75 \FirstLineIndent -.25 # 6/16 inch \Marker li3 \Name li3 - List Entry - Level 3 \Description A list entry, level 3 \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType paragraph \FontSize 12 \LeftMargin 1 \FirstLineIndent -.25 # 6/16 inch \Marker li4 \Name li4 - List Entry - Level 4 \Description A list entry, level 4 \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType paragraph \FontSize 12 \LeftMargin 1.25 \FirstLineIndent -.25 # 6/16 inch # Footnotes \Marker f \Endmarker f* \Name f...f* - Footnote \Description A Footnote text item (basic) \OccursUnder c li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 qs sp tc1 tc2 tc3 tc4 mt mt1 mt2 mt3 ms ms1 ms2 ms3 s s1 s2 s3 spd d ip cp \TextProperties publishable vernacular note \TextType NoteText \StyleType Note \FontSize 12 \Marker fe \Endmarker fe* \Name fe...fe* - Endnote \Description An Endnote text item \OccursUnder c li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 sp tc1 tc2 tc3 tc4 ms ms1 ms2 ms3 s s1 s2 s3 spd d ip \TextProperties publishable vernacular note \TextType NoteText \StyleType Note \FontSize 12 \Marker fr \Endmarker fr* \Name fr - Footnote - Reference \Description The origin reference for the footnote (basic) \OccursUnder f fe \TextType NoteText \TextProperties publishable vernacular note \StyleType Character \FontSize 12 \Bold \Marker ft \Endmarker ft* \Name ft - Footnote - Text \Description Footnote text, Protocanon (basic) \OccursUnder f fe \TextProperties publishable vernacular note \TextType NoteText \StyleType Character \FontSize 12 \Marker fk \Endmarker fk* \Name fk - Footnote - Keyword \Description A footnote keyword (basic) \OccursUnder f fe \TextProperties publishable vernacular note \TextType NoteText \StyleType Character \FontSize 12 \Bold \Italic \Marker fq \Endmarker fq* \Name fq - Footnote - Quotation or Alternate Rendering \Description A footnote scripture quote or alternate rendering (basic) \OccursUnder f fe \TextProperties publishable vernacular note \TextType NoteText \StyleType Character \FontSize 12 \Italic \Marker fqa \Endmarker fqa* \Name fqa - Footnote - Alternate Translation Rendering \Description A footnote alternate rendering for a portion of scripture text \OccursUnder f fe \TextProperties publishable vernacular note \TextType NoteText \StyleType Character \FontSize 12 \Italic \Marker fl \Endmarker fl* \Name fl - Footnote - Label Text \Description A footnote label text item, for marking or "labelling" the type or alternate translation being provided in the note. \OccursUnder f fe \TextProperties publishable vernacular note \TextType NoteText \StyleType Character \FontSize 12 \Italic \Bold \Marker fp \Endmarker fp* \Name fp - Footnote Paragraph Mark \Description A Footnote additional paragraph marker \OccursUnder f fe \TextProperties publishable vernacular note \TextType NoteText \StyleType Character \FontSize 12 \Marker fv \Endmarker fv* \Name fv...fv* - Footnote - Embedded Verse Number \Description A verse number within the footnote text \OccursUnder f fe \TextProperties publishable vernacular note \TextType NoteText \StyleType Character \FontSize 12 \Superscript \Marker fdc \Endmarker fdc* \Name fdc...fdc* - Footnote - DC text \Description Footnote text, applies to Deuterocanon only \OccursUnder f fe \TextProperties publishable vernacular note \TextType NoteText \StyleType Character \FontSize 12 \Marker fm \Endmarker fm* \Name fm - Footnote - Additional Caller to Previous Note \Description An additional footnote marker location for a previous footnote \OccursUnder li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 sp tc1 tc2 tc3 tc4 ms ms1 ms2 s s1 s2 s3 spd d ip \TextType Other \TextProperties paragraph publishable vernacular \StyleType Character \FontSize 12 \Superscript # Cross References \Marker x \Endmarker x* \Name x...x* - Cross Reference \Description A list of cross references (basic) \OccursUnder li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 qs sp tc1 tc2 tc3 tc4 mt mt1 mt2 mt3 ms ms1 ms2 s s1 s2 s3 spd d \TextProperties publishable vernacular note crossreference \TextType NoteText \StyleType Note \FontSize 12 \Marker xo \Endmarker xo* \Name xo - Cross Reference - Origin Reference \Description The cross reference origin reference (basic) \OccursUnder x \TextProperties publishable vernacular note \TextType NoteText \StyleType Character \FontSize 12 \Bold \Marker xt \Endmarker xt* \Name xt - Cross Reference - Target References \Description The cross reference target reference(s), protocanon only (basic) \OccursUnder x f ef ip ipi im imi ili ili1 ili2 \TextProperties publishable vernacular note \TextType NoteText \StyleType Character \FontSize 12 \Marker xk \Endmarker xk* \Name xk - Cross Reference - Keyword \Description A cross reference keyword \OccursUnder x \TextProperties publishable vernacular note \TextType NoteText \StyleType Character \FontSize 12 \Italic \Marker xq \Endmarker xq* \Name xq - Cross Reference - Quotation \Description A cross-reference quotation from the scripture text \OccursUnder x \TextProperties publishable vernacular note \TextType NoteText \StyleType Character \FontSize 12 \Italic \Marker xot \Endmarker xot* \Name xot...xot* - Cross Reference - OT Target Refs (optional) \Description Cross-reference target reference(s), Old Testament only \OccursUnder x \TextProperties publishable vernacular note \TextType NoteText \StyleType Character \FontSize 12 \Marker xnt \Endmarker xnt* \Name xnt...xnt* - Cross Reference - NT Target Refs (optional) \Description Cross-reference target reference(s), New Testament only \OccursUnder x \TextProperties publishable vernacular note \TextType NoteText \StyleType Character \FontSize 12 \Marker xdc \Endmarker xdc* \Name xdc...xdc* - Cross Reference - DC Target Refs \Description Cross-reference target reference(s), Deuterocanon only \OccursUnder x \TextProperties publishable vernacular note \TextType NoteText \StyleType Character \FontSize 12 \Marker rq \Endmarker rq* \Name rq...rq* - Cross Reference - Inline Quotation References \Description A cross-reference indicating the source text for the preceding quotation. \OccursUnder li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 NEST \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 10 \Italic # Study material extensions to existing USFM markup. \Marker efm \Endmarker efm* \Name efm - Study Note - ID/Caller \Description ID or Caller for an extended (study) note. Used within a source project duplicte (target) text when autoring study material. \OccursUnder li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 qm4 tc1 tc2 tc3 tc4 s3 d NEST \TextType Other \StyleType Character \FontSize 10 \Bold \Color 255 # Other Special Text \Marker qt \Endmarker qt* \Name qt...qt* - Special Text - Quoted Text - OT in NT \Description For Old Testament quoted text appearing in the New Testament (basic) \OccursUnder li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 sp tc1 tc2 tc3 tc4 ip im ili ili1 ili2 io io1 io2 f fe NEST \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Italic \Marker nd \Endmarker nd* \Name nd...nd* - Special Text - Name of Deity \Description For name of deity (basic) \OccursUnder ip im ipi imi ipq imq ipr iq iq1 iq2 iq3 li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 sp tc1 tc2 tc3 tc4 ms ms1 ms2 s s1 s2 s3 spd d ip f fe NEST \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Underline \Marker tl \Endmarker tl* \Name tl...tl* - Special Text - Transliterated Word \Description For transliterated words \OccursUnder li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 sp tc1 tc2 tc3 tc4 ms ms1 ms2 s s1 s2 s3 spd d ip f fe NEST \TextType VerseText \TextProperties publishable nonvernacular \StyleType Character \FontSize 12 \Italic \Marker dc \Endmarker dc* \Name dc...dc* - Special Text - Deuterocanonical/LXX Additions \Description Deuterocanonical/LXX additions or insertions in the Protocanonical text \OccursUnder li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 sp tc1 tc2 tc3 tc4 ms ms1 ms2 s s1 s2 s3 spd d ip f fe NEST \TextProperties publishable vernacular \StyleType Character \Italic \Marker bk \Endmarker bk* \Name bk...bk* - Special Text - Quoted book title \Description For the quoted name of a book \OccursUnder li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 sp tc1 tc2 tc3 tc4 ms ms1 ms2 s s1 s2 s3 spd d ip im ili ili1 ili2 io io1 io2 f fe NEST \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Italic \Marker sig \Endmarker sig* \Name sig...sig* - Special Text - Author's Signature (Epistles) \Description For the signature of the author of an Epistle \OccursUnder li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 sp tc1 tc2 tc3 tc4 ms ms1 ms2 s s1 s2 s3 spd d ip NEST \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Italic \Marker pn \Endmarker pn* \Name pn...pn* - Special Text - Proper Name \Description For a proper name \OccursUnder ip im ipi imi ipq imq ipr iq iq1 iq2 iq3 li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 sp tc1 tc2 tc3 tc4 ms ms1 ms2 s s1 s2 s3 spd d ip f fe NEST \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Bold \Underline \Marker addpn \Endmarker addpn* \Name (addpn...addpn*) - Special Text for Chinese \Description For chinese words to be dot underline & underline \OccursUnder ip im ipi imi ipq imq ipr iq iq1 iq2 iq3 li li1 li2 li3 li4 m mi mis nb p pc ph phi pi pi1 pi2 pi3 pr ps psi q q1 q2 q3 q4 qc qr sp tc1 tc2 tc3 tc4 ms ms1 ms2 s s1 s2 s3 spd d ip f fe NEST \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Character \FontSize 12 \Color 2263842 \Bold \Italic \Underline \Marker wj \Endmarker wj* \Name wj...wj* - Special Text - Words of Jesus \Description For marking the words of Jesus \OccursUnder li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 sp tc1 tc2 tc3 tc4 ms ms1 ms2 s s1 s2 s3 spd d ip f fe NEST \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Color 255 \Marker k \Endmarker k* \Name k...k* - Special Text - Keyword \Description For a keyword \OccursUnder li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 sp tc1 tc2 tc3 tc4 ms ms1 ms2 s s1 s2 s3 spd d ip im io1 io2 f fe NEST \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Italic \Bold \Marker sls \Endmarker sls* \Name sls...sls* - Special Text - Secondary Language or Text Source \Description To represent where the original text is in a secondary language or from an alternate text source \OccursUnder li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 sp tc1 tc2 tc3 tc4 f fe NEST \TextType VerseText \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Italic \Marker ord \Endmarker ord* \Name ord...ord* - Special Text - Ordinal number text portion \Description For the text portion of an ordinal number \OccursUnder ip im li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 sp tc1 tc2 tc3 tc4 ms ms1 ms2 s s1 s2 s3 spd d ip f fe NEST \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Character \FontSize 12 \Superscript \Marker add \Endmarker add* \Name add...add* - Special Text - Translational Addition \Description For a translational addition to the text \OccursUnder li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 sp tc1 tc2 tc3 tc4 ms ms1 ms2 s s1 s2 s3 spd d ip f fe NEST \TextType Other \TextProperties publishable vernacular \StyleType Character \Color 2263842 \Bold \Italic \Marker lit \Name lit - Special Text - Liturgical note \Description For a comment or note inserted for liturgical use \OccursUnder c \TextType Other \TextProperties paragraph publishable vernacular \StyleType Paragraph \Justification Right \FontSize 12 \Bold # Character Styling \Marker no \Endmarker no* \Name no...no* - Character - Normal Text \Description A character style, use normal text \OccursUnder is ip ipi im imi ili ili1 ili2 imq ipq iex iq iot io1 io2 io3 io4 s s1 s2 s3 NEST \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Marker it \Endmarker it* \Name it...it* - Character - Italic Text \Description A character style, use italic text \OccursUnder ip ipi im imi ili ili1 ili2 iex io1 io2 io3 io4 cd li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 sp tc1 tc2 tc3 tc4 ms ms1 ms2 s s1 s2 s3 spd d ip f fe NEST \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Italic \Marker bd \Endmarker bd* \Name bd...bd* - Character - Bold Text \Description A character style, use bold text \OccursUnder ip ipi im imi ili ili1 ili2 iex io1 io2 io3 io4 cd li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 sp tc1 tc2 tc3 tc4 ms ms1 ms2 s s1 s2 s3 spd d ip f fe NEST \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Bold \Marker bdit \Endmarker bdit* \Name bdit...bdit* - Character - BoldItalic Text \Description A character style, use bold + italic text \OccursUnder ip ipi im imi ili ili1 ili2 iex io1 io2 io3 io4 cd li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 sp tc1 tc2 tc3 tc4 ms ms1 ms2 s s1 s2 s3 spd d ip f fe NEST \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Bold \Italic \Marker em \Endmarker em* \Name em...em* - Character - Emphasized Text \Description A character style, use emphasized text style \OccursUnder ip ipi im imi ili ili1 ili2 iex io1 io2 io3 io4 cd li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 sp tc1 tc2 tc3 tc4 ms ms1 ms2 s s1 s2 s3 spd d ip f fe NEST \TextProperties publishable vernacular \StyleType Character \FontSize 12 \Italic \Marker sc \Endmarker sc* \Name sc...sc* - Character - Small Caps \Description A character style, for small capitalization text \OccursUnder ip ipi im imi ili ili1 ili2 iex io1 io2 io3 io4 cd li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 sp tc1 tc2 tc3 tc4 ms ms1 ms2 s s1 s2 s3 spd d ip f fe NEST \TextProperties publishable vernacular \StyleType Character \FontSize 12 # Breaks \Marker pb \Name pb - Break - Page Break \Description Page Break used for new reader portions and children's bibles where content is controlled by the page \OccursUnder c \Rank 4 \TextType Other \TextProperties publishable \StyleType Paragraph \FontSize 12 # Special Features \Marker fig \Endmarker fig* \Name fig...fig* - Auxiliary - Figure/Illustration/Map \Description Illustration [Columns to span, height, filename, caption text] \OccursUnder li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 sp tc1 tc2 tc3 tc4 ms ms1 ms2 s s1 s2 s3 spd d ip \TextType Other \TextProperties paragraph publishable vernacular \StyleType Character \FontSize 12 \Marker pro \Endmarker pro* \Name pro...pro* - Special Text - CJK Pronunciation \Description For indicating pronunciation in CJK texts \OccursUnder ip im ipi imi ipq imq ipr iq iq1 iq2 iq3 li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 sp tc1 tc2 tc3 tc4 ms ms1 ms2 s s1 s2 s3 spd d ip f fe NEST \TextType Other \TextProperties Nonpublishable \StyleType Character \FontSize 10 \Color 128 # Peripheral References \Marker w \Endmarker w* \Name w...w* - Peripheral Ref - Wordlist Entry \Description A wordlist text item \OccursUnder ip im li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr d q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 tc1 tc2 tc3 tc4 s s1 s2 s3 s4 NEST \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Character \FontSize 12 \Color 16711935 \Bold \Italic \Marker wh \Endmarker wh* \Name wh...wh* - Peripheral Ref - Hebrew Wordlist Entry \Description A Hebrew wordlist text item \OccursUnder li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr d q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 tc1 tc2 tc3 tc4 s s1 s2 s3 s4 NEST \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Character \FontSize 12 \Color 16711935 \Bold \Italic \Marker wg \Endmarker wg* \Name wg...wg* - Peripheral Ref - Greek Wordlist Entry \Description A Greek Wordlist text item \OccursUnder li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr d q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 tc1 tc2 tc3 tc4 s s1 s2 s3 s4 NEST \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Character \FontSize 12 \Color 16711935 \Bold \Italic \Marker ndx \Endmarker ndx* \Name ndx...ndx* - Peripheral Ref - Subject Index Entry \Description A subject index text item \OccursUnder li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr pmo pm pmc pmr q q1 q2 q3 q4 qc qr qm qm1 qm2 qm3 tc1 tc2 tc3 tc4 s s1 s2 s3 s4 NEST \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Character \FontSize 12 \Color 16711935 \Bold \Italic # Peripheral Materials # Content Division Marker \Marker periph \Name periph - Peripherals - Content Division Marker \Description Periheral content division marker which should be followed by an additional division argument/title. \OccursUnder id \TextType Section \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 14 \Bold \SpaceBefore 16 \SpaceAfter 4 \Color 33023 # Additional peripheral material extensions to existing USFM markup. \Marker p1 \Name p1 - Periph - Front/Back Matter Paragraph Level 1 \Description Front or back matter text paragraph, level 1 (if multiple levels) \OccursUnder id \Rank 1 \TextType Other \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \FirstLineIndent .125 # 1/8 inch first line indent \Marker p2 \Name p2 - Periph - Front/Back Matter Paragraph Level 2 \Description Front or back matter text paragraph, level 2 (if multiple levels) \OccursUnder id \Rank 1 \TextType Other \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \FirstLineIndent .125 # 1/4 inch first line indent \LeftMargin .125 \Marker k1 \Name k1 - Periph - Concordance Keyword Level 1 \Description Concordance main entry text or keyword, level 1 \OccursUnder id \Rank 1 \TextType Other \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \Marker k2 \Name k2 - Periph - Concordance Keyword Level 2 \Description Concordance main entry text or keyword, level 2 \OccursUnder id \Rank 1 \TextType Other \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \Marker xtSee \Endmarker xtSee* \Name xtSee - Concordance and Names Index - Alternate Entry Target Reference \Description Concordance and Names Index markup for an alternate entry target reference. \OccursUnder p \TextProperties publishable vernacular \TextType NoteText \StyleType Character \FontSize 12 \Italic \Color 16711680 \Marker xtSeeAlso \Endmarker xtSeeAlso* \Name xtSeeAlso - Concordance and Names Index - Additional Entry Target Reference \Description Concordance and Names Index markup for an additional entry target reference. \OccursUnder p \TextProperties publishable vernacular \TextType Other \StyleType Character \FontSize 12 \Italic \color 16711680 # Other special text elements specified in USFM # ~ = fixed (no-break) space # // = discretionary line break # Obsolete, deprecated, or no longer officially part of USFM. # These markers may have existed in earlier resource and stylesheet revisions. \Marker pr \Name DEPRECATED pr - Paragraph - Right Aligned \Description Paragraph text, right aligned \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \Justification Right \FontSize 12 \Marker ph \Name DEPRECATED ph - Paragraph - Hanging Indent - Level 1 \Description Paragraph text, with level 1 hanging indent (if single level) \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \LeftMargin .5 \FirstLineIndent -.25 # 1/4 inch indent, 1/2 inch wrap \FontSize 12 \Marker ph1 \Name DEPRECATED ph1 - Paragraph - Hanging Indent - Level 1 \Description Paragraph text, with level 1 hanging indent (if multiple levels) \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \LeftMargin .5 \FirstLineIndent -.25 # 1/4 inch indent, 1/2 inch wrap \FontSize 12 \Marker ph2 \Name DEPRECATED ph2 - Paragraph - Hanging Indent - Level 2 \Description Paragraph text, with level 2 hanging indent \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \LeftMargin .75 \FirstLineIndent -.25 # 1/2 inch indent, 3/4 inch wrap \FontSize 12 \Marker ph3 \Name DEPRECATED ph3 - Paragraph - Hanging Indent - Level 3 \Description Paragraph text, with level 3 hanging indent \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \LeftMargin 1 \FirstLineIndent -.25 # 3/4 inch indent, 1 inch wrap \FontSize 12 \Marker phi \Name DEPRECATED phi - Paragraph - Indented - Hanging Indent \Description Paragraph text, indented with hanging indent \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \LeftMargin 1 \Marker tr1 \Name OBSOLETE tr1 - Table - Row - Level 1 \Description A table Row \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \LeftMargin .5 \FirstLineIndent -.25 # 6/16 inch \Marker tr2 \Name OBSOLETE tr2 - Table - Row - Level 2 \Description A table Row \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \LeftMargin .75 \FirstLineIndent -.25 # 6/16 inch \Marker ps \Name OBSOLETE ps - Paragraph - No Break with Next Paragraph \Description Paragraph text, no break with next paragraph text at chapter boundary \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \FontSize 12 \FirstLineIndent .125 # 1/8 inch first line indent \Marker psi \Name OBSOLETE psi - Paragraph - Indented - No Break with Next \Description Paragraph text, indented, with no break with next paragraph text (at chapter boundary) \OccursUnder c \Rank 4 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Paragraph \FirstLineIndent .125 # 1/8 inch first line indent \LeftMargin .25 \RightMargin .25 \FontSize 12 \Marker wr \Endmarker wr* \Name OBSOLETE wr...wr* - Auxiliary - Wordlist/Glossary Reference \Description A Wordlist text item \OccursUnder ms s li li1 li2 li3 li4 m mi nb p pc ph phi pi pi1 pi2 pi3 pr q q1 q2 q3 q4 qc qr tc1 tc2 tc3 tc4 f fe NEST \TextProperties publishable vernacular note \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Character \FontSize 12 \Italic # 2.0x peripheral markup (replaced with \periph + Content Division Title/Argument) \Marker pub \Name OBSOLETE pub Peripherals - Front Matter Publication Data \Description Front matter publication data \OccursUnder id \Rank 4 \TextProperties paragraph publishable vernacular poetic \TextType VerseText \FontSize 10 \StyleType paragraph \Marker toc \Name OBSOLETE toc Peripherals - Front Matter Table of Contents \Description Front matter table of contents \OccursUnder id \Rank 4 \TextProperties paragraph publishable vernacular poetic \TextType VerseText \FontSize 10 \StyleType paragraph \Marker pref \Name OBSOLETE pref Peripherals - Front Matter Preface \Description Front matter preface \OccursUnder id \Rank 4 \TextProperties paragraph publishable vernacular poetic \TextType VerseText \FontSize 10 \StyleType paragraph \Marker intro \Name OBSOLETE intro Peripherals - Front Matter Introduction \Description Front matter introduction \OccursUnder id \Rank 4 \TextProperties paragraph publishable vernacular poetic \TextType VerseText \FontSize 10 \StyleType paragraph \Marker conc \Name OBSOLETE conc Peripherals - Back Matter Concordance \Description Back matter concordance \OccursUnder id \Rank 4 \TextProperties paragraph publishable vernacular poetic \TextType VerseText \FontSize 10 \StyleType paragraph \Marker glo \Name OBSOLETE glo Peripherals - Back Matter Glossary \Description Back matter glossary \OccursUnder id \Rank 4 \TextProperties paragraph publishable vernacular poetic \TextType VerseText \FontSize 10 \StyleType paragraph \Marker idx \Name OBSOLETE idx Peripherals - Back Matter Index \Description Back matter index \OccursUnder id \Rank 4 \TextProperties paragraph publishable vernacular poetic \TextType VerseText \FontSize 10 \StyleType paragraph \Marker maps \Name OBSOLETE maps Peripherals - Back Matter Map Index \Description Back matter map index \OccursUnder id \Rank 4 \TextProperties paragraph publishable vernacular poetic \TextType VerseText \FontSize 10 \StyleType paragraph \Marker cov \Name OBSOLETE cov Peripherals - Other - Cover \Description Other peripheral materials - cover \OccursUnder id \Rank 4 \TextProperties paragraph publishable vernacular poetic \TextType VerseText \FontSize 10 \StyleType paragraph \Marker spine \Name OBSOLETE spine Peripherals - Other - Spine \Description Other peripheral materials - spine \OccursUnder id \Rank 4 \TextProperties paragraph publishable vernacular poetic \TextType VerseText \FontSize 10 \StyleType paragraph \Marker pubinfo \Name OBSOLETE pubinfo - Publication - Information \Description Publication information - Lang,Credit,Version,Copies,Publisher,Id,Logo \OccursUnder id ide \TextType Other \TextProperties paragraph nonpublishable nonvernacular \StyleType Paragraph \FontSize 12 \Color 16711680 # Concordance/Names Index Tools - special sfms for use in Publishing Assistant \Marker zpa-xb \Endmarker zpa-xb* \Name zpa-xb - Periph - Book \Description Book Ref \OccursUnder id \Rank 1 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Character \FontSize 12 \Marker zpa-xc \Endmarker zpa-xc* \Name zpa-xc - Periph - Chapter \Description Chapter Ref \OccursUnder id \Rank 1 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Character \FontSize 12 \Bold \Marker zpa-xv \Endmarker zpa-xv* \Name zpa-xv - Periph - Verse \Description Verse Ref \OccursUnder id \Rank 1 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Character \FontSize 12 \Marker zpa-d \Endmarker zpa-d* \Name zpa-d - Periph - Description \Description Description \OccursUnder id \Rank 1 \TextType VerseText \TextProperties paragraph publishable vernacular \StyleType Character \FontSize 12 */ } void ExportParatextStylesheet::save (ustring filename) { // Write the stylesheet to file. if (!g_str_has_suffix (filename.c_str(), ".sty")) { filename.append (".sty"); } write_lines (filename, stylesheet_lines); } bibledit-gtk-4.9/src/paratext.h000664 000766 000024 00000002170 12221507146 016645 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_PARATEXT_H #define INCLUDED_PARATEXT_H #include "libraries.h" #include "style.h" class ExportParatextStylesheet { public: ExportParatextStylesheet (int dummy); ~ExportParatextStylesheet (); void convert (const ustring& name); void save (ustring filename); private: vector stylesheet_lines; ustring marker; }; #endif bibledit-gtk-4.9/src/password.cpp000664 000766 000024 00000007333 12221507142 017214 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "password.h" #include "settings.h" #include "dialogentry.h" #include "gtkwrappers.h" void password_edit(GtkWidget * window) // The routine to edit the administrator's password. { // Get the current administrator's password. extern Settings *settings; ustring currentpassword = settings->genconfig.administration_password_get(); // If the password is set, first ask for the current password before proceeding. if (!currentpassword.empty()) { EntryDialog dialog("Password", "Please provide the current password before proceeding", ""); dialog.text_invisible(); if (dialog.run() != GTK_RESPONSE_OK) return; if (dialog.entered_value != currentpassword) { gtkw_dialog_warning(window, "The password provided is incorrect"); return; } } // Ask whether the user wishes to set a(nother) password. ustring message; message = "The current password is "; if (currentpassword.empty()) message.append("unset"); else message.append("set"); message.append("\n\n"); message.append("Would you like to set "); if (currentpassword.empty()) message.append("an"); else message.append("another"); message.append(" administrator's password?"); if (gtkw_dialog_question(window, message, GTK_RESPONSE_YES) != GTK_RESPONSE_YES) return; // Set another password. ustring password1; { EntryDialog dialog1("Password", "Provide a new password", ""); dialog1.always_ok(); dialog1.text_invisible(); if (dialog1.run() != GTK_RESPONSE_OK) return; password1 = dialog1.entered_value; } ustring password2; { EntryDialog dialog2("Password", "Repeat this password", ""); dialog2.always_ok(); dialog2.text_invisible(); if (dialog2.run() != GTK_RESPONSE_OK) return; password2 = dialog2.entered_value; } if (password1 != password2) { gtkw_dialog_warning(window, "The two passwords differ"); return; } // Store the new password. settings->genconfig.administration_password_set(password1); // Give feedback. message = "The password has been "; if (password1.empty()) message.append("erased"); else message.append("set"); gtkw_dialog_info(window, message); } bool password_pass(GtkWidget * window) // Ask the user for a password. // Returns true if the user provides a correct password. { // Retrieve the password. extern Settings *settings; ustring currentpassword = settings->genconfig.administration_password_get(); // Return true if the password is unset. if (currentpassword.empty()) return true; // Request the user to provide the password. EntryDialog dialog("Password", "Provide the administrator's password", ""); dialog.text_invisible(); if (dialog.run() != GTK_RESPONSE_OK) return false; // Check the password. if (dialog.entered_value == currentpassword) return true; // Give feedback if there is an error. gtkw_dialog_warning(window, "The password provided is incorrect"); return false; } bibledit-gtk-4.9/src/password.h000664 000766 000024 00000001721 12221507143 016655 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_PASSWORD_H #define INCLUDED_PASSWORD_H #include "libraries.h" #include void password_edit (GtkWidget * window); bool password_pass (GtkWidget * window); #endif bibledit-gtk-4.9/src/pdfviewer.cpp000664 000766 000024 00000005264 12221507147 017353 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "pdfviewer.h" #include #include "gtkwrappers.h" #include "unixwrappers.h" #include "shell.h" #include "uname.h" #include "windowsoutpost.h" #include "gwrappers.h" #include "settings.h" void pdfviewer_run(const gchar * command, const gchar * argument, const ustring & filename) { GwSpawn spawn(command); if (strlen(argument) > 0) spawn.arg(argument); spawn.arg(filename); spawn.async(); spawn.run(); } void pdfviewer_view(const ustring & filename) { // Handle Windows. if (uname_get() == untWindows) { windowsoutpost_open_url(filename); return; } // Handle possible manually set viewer. extern Settings *settings; if (!settings->genconfig.pdf_viewer_automatic_get()) { if (gw_find_program_in_path(settings->genconfig.pdf_viewer_path_get().c_str())) { pdfviewer_run((gchar *) settings->genconfig.pdf_viewer_path_get().c_str(), (gchar *) settings->genconfig.pdf_viewer_arguments_get().c_str(), filename); return; } } // Possible viewers on Linux and Macintosh. struct { const char *command; const char *argument; } pdf_viewers[] = { { "acroread", ""}, { "evince", ""}, { "xpdf", "-paper match"}, { "ghostview", ""}, { "gpdf", ""}, { "kpdf", ""}, { "kghostview", ""}, { "open", ""} }; // Handle Unix. for (unsigned int i = 0; i < (sizeof(pdf_viewers) / sizeof(*pdf_viewers)); i++) { if (gw_find_program_in_path(pdf_viewers[i].command)) { pdfviewer_run(pdf_viewers[i].command, pdf_viewers[i].argument, filename); return; } } // If we're here, it shows that no suitable viewer was found. // Inform the user about it, and what to do to solve it. ustring message = "The file cannot be displayed, because there is no suitable pdf viewer installed.\n"; message.append("Install a supported pdf viewer, or set up your own under Preferences"); gtkw_dialog_error(NULL, message); } bibledit-gtk-4.9/src/pdfviewer.h000664 000766 000024 00000001632 12221507143 017007 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_PDFVIEWER_H #define INCLUDED_PDFVIEWER_H #include "libraries.h" void pdfviewer_view (const ustring& filename); #endif bibledit-gtk-4.9/src/planning.cpp000664 000766 000024 00000015125 12221507151 017156 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "planning.h" #include "reporting.h" #include "date_time_utils.h" #include "progresswindow.h" #include "htmlwriter.h" #include "settings.h" #include "tiny_utilities.h" #include #include "dialogeditlist.h" #include "books.h" #include "utilities.h" #include "versification.h" void planning_edit(const ustring & project) // Edits the planning. { extern Settings *settings; vector < ustring > tasks = settings->projectconfig(project)->planning_tasks_get(); vector < ustring > addables; { vector < ustring > alltasks = settings->genconfig.project_tasks_names_get(); reporting_check_tasks_and_durations(alltasks, NULL); ProjectStatus projectstatus(project, alltasks, true); vector < unsigned int >addable_books; vector < ustring > addable_tasks; reporting_get_tasks_undone(&projectstatus, addable_books, addable_tasks); for (unsigned int i = 0; i < addable_books.size(); i++) { addables.push_back(planning_assemble_task(addable_books[i], addable_tasks[i])); } } EditListDialog dialog(&tasks, "Planned Tasks", "of planned tasks: add, remove or reorder them", true, true, false, false, false, false, true, &addables); if (dialog.run() == GTK_RESPONSE_OK) { settings->projectconfig(project)->planning_tasks_set(tasks); } } ustring planning_assemble_task(unsigned int book, const ustring & task) { return books_id_to_english(book) + " | " + task; } void planning_disassemble_task(ustring assembled_task, unsigned int &book, ustring & task) { book = 0; task.clear(); Parse parse(assembled_task, false, "|"); if (parse.words.size() == 2) { book = books_english_to_id(trim(parse.words[0])); task = trim(parse.words[1]); } } void planning_produce_report(const ustring & project, HtmlWriter & htmlwriter) // This produces a planning report. { // Bail out if there's no project. if (project.empty()) return; // Heading. htmlwriter.heading(1, "Planning " + project); // Current date. htmlwriter.paragraph("Produced on " + date_time_julian_human_readable(date_time_julian_day_get_current(), true) + "."); // Settings. extern Settings *settings; ProjectConfiguration *projectconfig = settings->projectconfig(project); vector < ustring > alltasks = settings->genconfig.project_tasks_names_get(); vector < double >durations; reporting_check_tasks_and_durations(alltasks, &durations); ProjectStatus projectstatus(project, alltasks, true); // Date project finishes based on starting date and work completed. { int startdate = projectconfig->planning_project_start_get(); int currentdate = date_time_julian_day_get_current(); ustring paragraphtext = "The project started on " + date_time_julian_human_readable(startdate, false) + ", "; unsigned int percentage = reporting_get_percentage_ready_project(&projectstatus); paragraphtext.append("and " + convert_to_string(percentage) + " percent of the work has been done. "); bool calculation_possible = ((currentdate > startdate + 30) && (percentage > 1)); if (calculation_possible) { double days_done = currentdate - startdate; double percentage_done_per_day = percentage / days_done; double percentage_todo = 100 - percentage; int days_todo = (int)round(percentage_todo / percentage_done_per_day); int enddate = currentdate + days_todo; guint year_complete, month_complete, day_complete; date_time_normal_get_year_month_day(enddate, year_complete, month_complete, day_complete); paragraphtext.append("If the work is carried on with the same pace it will be completed in the year " + convert_to_string(year_complete) + ", God willing."); } else { paragraphtext.append("At this stage it is not yet possible to estimate when it will finish."); } htmlwriter.paragraph(paragraphtext); } // List of planned tasks, including their dates. { vector < ustring > column_headers; column_headers.push_back("Book"); column_headers.push_back("Task"); column_headers.push_back("Start"); column_headers.push_back("Duration (days)"); column_headers.push_back("Complete (%)"); column_headers.push_back("Finish"); vector < bool > centers; centers.push_back(false); centers.push_back(false); centers.push_back(false); centers.push_back(true); centers.push_back(true); centers.push_back(false); unsigned int day = date_time_julian_day_get_current(); vector < VectorUstring > cell_texts; vector < ustring > assembled_tasks = projectconfig->planning_tasks_get(); for (unsigned int i = 0; i < assembled_tasks.size(); i++) { vector < ustring > row; unsigned int book; ustring task; planning_disassemble_task(assembled_tasks[i], book, task); unsigned int percentage_complete = reporting_get_task_percentage_complete(&projectstatus, book, task); double duration = 0; { for (unsigned int i = 0; i < alltasks.size(); i++) { if (task == alltasks[i]) duration = durations[i]; } vector < unsigned int >chapters = versification_get_chapters(projectconfig->versification_get(), book); duration *= (chapters.size() + 1); } row.push_back(books_id_to_english(book)); row.push_back(task); day += 1; if (percentage_complete) row.push_back("Already started"); else row.push_back(date_time_julian_get_month_and_year(day)); row.push_back(convert_to_string(duration)); row.push_back(convert_to_string(percentage_complete)); day += (unsigned int)(round(duration * 7 / 5 * (100 - percentage_complete) / 100)); if (percentage_complete == 100) row.push_back("Already finished"); else row.push_back(date_time_julian_get_month_and_year(day)); cell_texts.push_back(row); } htmlwriter.table("Planned tasks", column_headers, cell_texts, "", ¢ers, 0); } } bibledit-gtk-4.9/src/planning.h000664 000766 000024 00000002266 12221507151 016625 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_PLANNING_H #define INCLUDED_PLANNING_H #include "libraries.h" #include #include "htmlwriter.h" void planning_edit (const ustring& project); ustring planning_assemble_task (unsigned int book, const ustring& task); void planning_disassemble_task (ustring assembled_task, unsigned int& book, ustring& task); void planning_produce_report (const ustring& project, HtmlWriter & htmlwriter); #endif bibledit-gtk-4.9/src/portion_utils.cpp000664 000766 000024 00000020605 12221507144 020263 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "portion_utils.h" #include "constants.h" #include "utilities.h" #include "projectutils.h" #include "books.h" #include "tiny_utilities.h" void select_portion_get_values(const ustring & project, unsigned int book, const ustring & portion, vector < unsigned int >&chapters_from, vector < ustring > &verses_from, vector < unsigned int >&chapters_to, vector < ustring > &verses_to) // Takes "portion", and extracts the chapters and verses from it. // Checks whether everything is in the limits as given by "bookmetrics". { chapters_from.clear(); verses_from.clear(); chapters_to.clear(); verses_to.clear(); vector < unsigned int >chapters = project_get_chapters(project, book); unsigned int lowest_chapter = chapters[0]; unsigned int highest_chapter = chapters[chapters.size() - 1]; vector < ustring > portions = select_portion_get_portions(portion); for (unsigned int i = 0; i < portions.size(); i++) { unsigned int chapter_from, chapter_to; ustring verse_from, verse_to; if (portions[i] == CHAPTER_VERSE_SELECTION_ALL) { chapter_from = lowest_chapter; vector < ustring > from_verses = project_get_verses(project, book, chapter_from); verse_from = from_verses[0]; chapter_to = highest_chapter; vector < ustring > to_verses = project_get_verses(project, book, chapter_to); verse_to = to_verses[to_verses.size() - 1]; } else { // Format of portion, e.g.: "10.6-7 to 11.1,2a" // Work on a copy. ustring myportion(portions[i]); // Get starting chapter number. ustring s = number_in_string(myportion); chapter_from = convert_to_int(number_in_string(s)); chapter_from = CLAMP(chapter_from, lowest_chapter, highest_chapter); // Remove the part from the portion, including the dot. myportion.erase(0, s.length() + 1); // Get starting verse number. size_t position = myportion.find(" "); verse_from = myportion.substr(0, position); // Remove it from the portion. myportion.erase(0, verse_from.length() + strlen(CHAPTER_VERSE_SELECTION_TO)); // Limit starting verse. vector < ustring > from_verses = project_get_verses(project, book, chapter_from); set < ustring > from_set(from_verses.begin(), from_verses.end()); if (from_set.find(verse_from) == from_set.end()) verse_from = from_verses[0]; // Get ending chapter number. s = number_in_string(myportion); chapter_to = convert_to_int(number_in_string(s)); chapter_to = CLAMP(chapter_to, lowest_chapter, highest_chapter); // Remove the part from the portion, including the dot. myportion.erase(0, s.length() + 1); // Get verse_to and limit it. verse_to = myportion; vector < ustring > to_verses = project_get_verses(project, book, chapter_to); set < ustring > to_set(to_verses.begin(), to_verses.end()); if (to_set.find(verse_to) == to_set.end()) verse_to = to_verses[to_verses.size() - 1]; } // Store what we got. chapters_from.push_back(chapter_from); chapters_to.push_back(chapter_to); verses_from.push_back(verse_from); verses_to.push_back(verse_to); } } ustring select_portion_get_label(const ustring & project, unsigned int book, unsigned int chapter_from, const ustring & verse_from, unsigned int chapter_to, const ustring & verse_to) { // Assemble the label, e.g.: "10.6-7 to 11.1,2a" ustring label; label = convert_to_string(chapter_from); label.append("."); label.append(verse_from); label.append(CHAPTER_VERSE_SELECTION_TO); label.append(convert_to_string(chapter_to)); label.append("."); label.append(verse_to); // If the selection covers everything, return that value instead. vector < unsigned int >chapters = project_get_chapters(project, book); unsigned int lowest_chapter = chapters[0]; if (chapter_from == lowest_chapter) { unsigned int highest_chapter = chapters[chapters.size() - 1]; if (chapter_to == highest_chapter) { vector < ustring > from_verses = project_get_verses(project, book, chapter_from); if (verse_from == from_verses[0]) { vector < ustring > to_verses = project_get_verses(project, book, chapter_to); if (verse_to == to_verses[to_verses.size() - 1]) { label = CHAPTER_VERSE_SELECTION_ALL; } } } } // Return value. return label; } vector < ustring > select_portion_get_portions(const ustring & portion) // Extract the various possible portions from the one master-portion. { Parse parse(portion, false, "|"); for (unsigned int i = 0; i < parse.words.size(); i++) { parse.words[i] = trim(parse.words[i]); } return parse.words; } ustring select_portion_get_portion(const vector < ustring > &portions) // Assemble a master-portion from the various possible portions. { ustring portion; for (unsigned int i = 0; i < portions.size(); i++) { if (i) { portion.append(" | "); } portion.append(portions[i]); } return portion; } WithinReferencesRange::WithinReferencesRange() { } WithinReferencesRange::WithinReferencesRange(int dummy) { } void WithinReferencesRange::add_portion(unsigned int book_in, vector < unsigned int >chapters_from_in, const vector < ustring > &verses_from_in, vector < unsigned int >chapters_to_in, const vector < ustring > &verses_to_in) { // Verify the consistency of the portion. if (chapters_from_in.size() != verses_from_in.size()) return; if (chapters_from_in.size() != chapters_to_in.size()) return; if (chapters_from_in.size() != verses_to_in.size()) return; // Add this portion to any existing ones. for (unsigned int i = 0; i < chapters_from_in.size(); i++) { books.push_back(book_in); chapters_from.push_back(chapters_from_in[i]); verses_from.push_back(verses_from_in[i]); chapters_to.push_back(chapters_to_in[i]); verses_to.push_back(verses_to_in[i]); in_range_flags.push_back(false); } // Initialize variables. mybook = 0; mychapter = 0; } void WithinReferencesRange::set_book(unsigned int book) { mybook = book; set_chapter(0); } void WithinReferencesRange::set_chapter(unsigned int chapter) { mychapter = chapter; set_verse("0"); } void WithinReferencesRange::set_verse(const ustring & verse) { myverse = verse; verify_range(); } void WithinReferencesRange::verify_range() // Verify whether the current reference is within the various ranges. // Set internal flags accordingly. { // Go through the available portions. for (unsigned int i = 0; i < chapters_from.size(); i++) { // Proceed if the book matches. if (books[i] == mybook) { // Compare on chapter. if (mychapter < chapters_from[i]) { in_range_flags[i] = false; } else if (mychapter > chapters_to[i]) { in_range_flags[i] = false; } else { // At this stage the chapter is within the range of chapters to be printed. unsigned int vs = convert_to_int(myverse); if (mychapter == chapters_from[i]) { unsigned int vs_from = convert_to_int(verses_from[i]); in_range_flags[i] = (vs >= vs_from); } if (mychapter == chapters_to[i]) { unsigned int vs_to = convert_to_int(verses_to[i]); if (vs > vs_to) in_range_flags[i] = false; } } } } } bool WithinReferencesRange::in_range() // Return true if the current reference is within the various ranges. { // If no ranges are given, it is considered "in range". if (in_range_flags.empty()) return true; // Check from the flags whether we are in range. for (unsigned int i = 0; i < in_range_flags.size(); i++) { if (in_range_flags[i]) { return true; } } // Out of range. return false; } bibledit-gtk-4.9/src/portion_utils.h000664 000766 000024 00000004433 12221507140 017725 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_PORTION_UTILS_H #define INCLUDED_PORTION_UTILS_H #include "libraries.h" void select_portion_get_values (const ustring& project, unsigned int book, const ustring& portion, vector & chapters_from, vector & verses_from, vector & chapters_to, vector & verses_to); ustring select_portion_get_label (const ustring& project, unsigned int book, unsigned int chapter_from, const ustring& verse_from, unsigned int chapter_to, const ustring& verse_to); vector select_portion_get_portions (const ustring& portion); ustring select_portion_get_portion (const vector & portions); class WithinReferencesRange { public: WithinReferencesRange (); WithinReferencesRange (int dummy); void add_portion (unsigned int book_in, vector chapters_from_in, const vector& verses_from_in, vector chapters_to_in, const vector & verses_to_in); void set_book (unsigned int book); void set_chapter (unsigned int chapter); void set_verse (const ustring& verse); bool in_range (); void verify_range (); private: vector books; vector chapters_from; vector verses_from; vector chapters_to; vector verses_to; unsigned int mybook; unsigned int mychapter; ustring myverse; vector in_range_flags; }; #endif bibledit-gtk-4.9/src/print_parallel_bible.cpp000664 000766 000024 00000011021 12221507140 021502 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "print_parallel_bible.h" #include "settings.h" #include "print_parallel_references.h" #include "gwrappers.h" #include "gtkwrappers.h" #include "projectutils.h" #include "progresswindow.h" #include "books.h" #include "portion_utils.h" void view_parallel_bible_pdf() { // Log. gw_message("Printing Parallel Bible"); // Configuration extern Settings *settings; // Get the chapters and check them. vector < unsigned int >chapters = project_get_chapters(settings->genconfig.project_get(), settings->genconfig.book_get()); if (chapters.empty()) { gtkw_dialog_info(NULL, books_id_to_english(settings->genconfig.book_get()) + "does not exist in this project"); return; } // Progress system. ProgressWindow progresswindow("Parallel Bible", true); progresswindow.set_text("Collecting verses"); progresswindow.set_iterate(0, 1, chapters.size()); // Messages to be printed first. vector < ustring > messages; // All the projects to be put in this parallel Bible. // If the book exists in the project, add it, else give message. vector project_s_raw; { vector bibles = settings->genconfig.parallel_bible_projects_get(); vector enabled = settings->genconfig.parallel_bible_enabled_get(); if (bibles.size () == enabled.size()) { for (unsigned int i = 0; i < enabled.size(); i++) { if (enabled[i]) { project_s_raw.push_back (bibles[i]); } } } } vector < ustring > project_names; for (unsigned int i = 0; i < project_s_raw.size(); i++) { if (project_book_exists(project_s_raw[i], settings->genconfig.book_get())) { project_names.push_back(project_s_raw[i]); } else { messages.push_back("Project " + project_s_raw[i] + " was requested to be included, but it does not contain " + books_id_to_english(settings->genconfig.book_get()) + ". It was left out."); } } // References to print. vector < Reference > references; // Portion selection. WithinReferencesRange inrange; { vector < unsigned int >portions_chapter_from, portions_chapter_to; vector < ustring > portions_verse_from, portions_verse_to; select_portion_get_values(settings->genconfig.project_get(), settings->genconfig.book_get(), settings->genconfig.parallel_bible_chapters_verses_get(), portions_chapter_from, portions_verse_from, portions_chapter_to, portions_verse_to); inrange.add_portion(settings->genconfig.book_get(), portions_chapter_from, portions_verse_from, portions_chapter_to, portions_verse_to); inrange.set_book(settings->genconfig.book_get()); } // Go through the chapters. for (unsigned int ch = 0; ch < chapters.size(); ch++) { progresswindow.iterate(); inrange.set_chapter(chapters[ch]); // Go through the verse numbers in this chapter. vector < ustring > verses = project_get_verses(settings->genconfig.project_get(), settings->genconfig.book_get(), chapters[ch]); for (unsigned int vs = 0; vs < verses.size(); vs++) { inrange.set_verse(verses[vs]); if (!inrange.in_range()) continue; // See whether to print verses zero. if (!settings->genconfig.parallel_bible_include_verse_zero_get()) if (verses[vs] == "0") continue; // Store the reference. Reference reference(settings->genconfig.book_get(), chapters[ch], verses[vs]); references.push_back(reference); } } // Hide progeressbar. progresswindow.hide(); // Do the printing. ProjectMemory projectmemory(settings->genconfig.project_get(), true); view_parallel_references_pdf(projectmemory, &project_names, references, settings->genconfig.parallel_bible_keep_verses_together_get(), &messages, false); // Log: ready. gw_message("Ready printing the Parallel Bible"); } bibledit-gtk-4.9/src/print_parallel_bible.h000664 000766 000024 00000001763 12221507134 021166 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_PRINTPARALLELBIBLE_H #define INCLUDED_PRINTPARALLELBIBLE_H #include #include "ustring.h" #include "usfm.h" void view_parallel_bible_pdf(); void view_parallel_bible_pdf_v2(); #endif bibledit-gtk-4.9/src/print_parallel_references.cpp000644 000766 000024 00000027417 12453001367 022573 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "print_parallel_references.h" #include "utilities.h" #include "bible.h" #include "usfm.h" #include "usfmtools.h" #include "pdfviewer.h" #include "xmlutils.h" #include "paper.h" #include "constants.h" #include "gwrappers.h" #include "gtkwrappers.h" #include "directories.h" #include "notecaller.h" #include "mapping.h" #include "portion_utils.h" #include "projectutils.h" #include "progresswindow.h" #include "books.h" #include "unixwrappers.h" #include "settings.h" #include "textreplacement.h" #include "tiny_utilities.h" #include "usfm2text.h" #include "stylesheetutils.h" void view_parallel_references_pdf(ProjectMemory & main_project, vector < ustring > *extra_projects, vector < Reference > references, bool keep_verses_together_within_page, vector < ustring > *remarks, bool highlight) /* Formats the references in "references", and highlights all words in "session->highlights*" and shows them in a pdf viewer. There is a pointer to a list of "remarks". Any remarks will be printed first. */ { // Log. gw_message("Printing parallel references"); // Progress system. ProgressWindow progresswindow("Printing Parallel References", false); progresswindow.set_iterate(0, 1, references.size()); // Configuration extern Settings *settings; ProjectConfiguration *projectconfig = settings->projectconfig(main_project.name); ustring stylesheet = stylesheet_get_actual (); // Store the additional projects to print. vector < ustring > additional_projects; if (extra_projects) additional_projects = *extra_projects; settings->session.additional_printing_projects = additional_projects; // Prepare for mapping. Mapping mapping(projectconfig->versification_get(), 0); // The converter. Text2Pdf text2pdf(gw_build_filename(Directories->get_temp(), "document.pdf"), settings->genconfig.print_engine_use_intermediate_text_get()); // Page. text2pdf.page_size_set(settings->genconfig.paper_width_get(), settings->genconfig.paper_height_get()); text2pdf.page_margins_set(settings->genconfig.paper_inside_margin_get(), settings->genconfig.paper_outside_margin_get(), settings->genconfig.paper_top_margin_get(), settings->genconfig.paper_bottom_margin_get()); text2pdf.page_one_column_only(); // Headers. if (settings->genconfig.printdate_get()) { text2pdf.print_date_in_header(); } // Font, etc., of main project. ustring main_font = projectconfig->editor_font_name_get(); unsigned int main_line_spacing = projectconfig->text_line_height_get(); if (projectconfig->editor_font_default_get()) { main_font.clear(); main_line_spacing = 100; } text2pdf.set_font(main_font); text2pdf.set_line_spacing(main_line_spacing); bool main_right_to_left = projectconfig->right_to_left_get(); text2pdf.set_right_to_left(main_right_to_left); // Start off with inserting any remarks. if (remarks) { for (unsigned int r = 0; r < remarks->size(); r++) { text2pdf.open_paragraph(); text2pdf.paragraph_set_column_count(1); text2pdf.add_text(remarks->at(r)); text2pdf.close_paragraph(); } } // Some variables to avoid excessive session access during highlighting. vector < bool > highlight_casesensitives; vector < ustring > highlight_words; if (highlight) { for (unsigned int hl = 0; hl < settings->session.highlights.size(); hl++) { highlight_casesensitives.push_back(settings->session.highlights[hl].casesensitive); highlight_words.push_back(settings->session.highlights[hl].word); } } // All the projects to be put in this parallel Bible, together with // their related information, like mapping, fonts. vector < ustring > project_names; vector < ProjectMemory > project_memories; vector < Mapping > mapping_s; vector < ustring > fonts; vector < unsigned int >line_spacings; vector < bool > right_to_lefts; if (extra_projects) { vector < ustring > project_s_raw = *extra_projects; for (unsigned int i = 0; i < project_s_raw.size(); i++) { ProjectMemory projectmemory(project_s_raw[i], true); project_memories.push_back(projectmemory); ProjectConfiguration *projectconfig = settings->projectconfig(project_s_raw[i]); project_names.push_back(project_s_raw[i]); Mapping mapping(projectconfig->versification_get(), 0); mapping_s.push_back(mapping); ustring font = projectconfig->editor_font_name_get(); unsigned int line_spacing = projectconfig->text_line_height_get(); if (projectconfig->editor_font_default_get()) { font.clear(); line_spacing = 100; } fonts.push_back(font); line_spacings.push_back(line_spacing); right_to_lefts.push_back(projectconfig->right_to_left_get()); } } // Produce chunks for all references. for (unsigned int rf = 0; rf < references.size(); rf++) { // Update progress bar. progresswindow.iterate(); // Whether to keep things on one page. if (keep_verses_together_within_page) { text2pdf.open_keep_together(); } // Set main font, etc. text2pdf.set_font(main_font); text2pdf.set_line_spacing(main_line_spacing); text2pdf.set_right_to_left(main_right_to_left); // Add the reference to the text. text2pdf.add_text(references[rf].human_readable("")); // Map this verse to the original, that is, to Hebrew or Greek. vector hebrew_greek_chapters; vector hebrew_greek_verses; mapping.book_change(references[rf].book); mapping.me_to_original(references[rf].chapter, references[rf].verse, hebrew_greek_chapters, hebrew_greek_verses); // Get verse text for each version. for (unsigned int vsn = 0; vsn <= project_names.size(); vsn++) { // Add the font, etc., for each project. ustring font(main_font); unsigned int line_spacing = main_line_spacing; bool right_to_left = main_right_to_left; if (vsn > 0) { font = fonts[vsn - 1]; line_spacing = line_spacings[vsn - 1]; right_to_left = right_to_lefts[vsn - 1]; } text2pdf.set_font(font); text2pdf.set_line_spacing(line_spacing); text2pdf.set_right_to_left(right_to_left); // Get the verse text. ustring line; if (vsn == 0) { // First version. ProjectBook *projectbook = main_project.get_book_pointer(references[rf].book); if (projectbook) { ProjectChapter *projectchapter = projectbook->get_chapter_pointer(references[rf].chapter); if (projectchapter) { ProjectVerse *projectverse = projectchapter->get_verse_pointer(references[rf].verse); if (projectverse) { line = projectverse->data; } } } } else { // Other versions. // Get mapped chapters / verses. line.clear(); vector mychapters; vector myverses; mapping_s[vsn - 1].book_change(references[rf].book); mapping_s[vsn - 1].original_to_me(hebrew_greek_chapters, hebrew_greek_verses, mychapters, myverses); // Get text of any of the mapped verses. for (unsigned int mp = 0; mp < mychapters.size(); mp++) { // Get the verse and add it to the usfm code. ProjectBook *projectbook = project_memories[vsn - 1].get_book_pointer(references[rf].book); if (projectbook) { ProjectChapter *projectchapter = projectbook->get_chapter_pointer(mychapters[mp]); if (projectchapter) { ProjectVerse *projectverse = projectchapter->get_verse_pointer(convert_to_string(myverses[mp])); if (projectverse) { if (!line.empty()) line.append (" "); line.append (projectverse->data); } } } } } // Add the project name if there are more than one. if (!project_names.empty()) { ustring project; if (vsn == 0) project = main_project.name; else project = project_names[vsn - 1]; text2pdf.open_paragraph(); text2pdf.inline_set_font_size_percentage(65); text2pdf.add_text(project); text2pdf.inline_clear_font_size_percentage(); text2pdf.add_text(" "); } else { text2pdf.open_paragraph(); } // Do text replacement. text_replacement(line); // Positions in the line, and lengths to highlight. vector < size_t > highlight_positions; vector < size_t > highlight_lengths; // Go through all the words to highlight. for (unsigned int i2 = 0; i2 < highlight_casesensitives.size(); i2++) { // Word to highlight ustring highlightword; if (highlight_casesensitives[i2]) highlightword = highlight_words[i2]; else highlightword = highlight_words[i2].casefold(); // Variabele s holds a shadow string. ustring s; if (highlight_casesensitives[i2]) s = line; else s = line.casefold(); // Find positions for highlighting. size_t offposition = s.find(highlightword); while (offposition != string::npos) { // Store position and length. highlight_positions.push_back(offposition); highlight_lengths.push_back(highlightword.length()); // Look for possible next word to highlight. offposition = offposition + highlightword.length() + 1; // There is something like a bug in s.find. If the offposition // is greater than the length of s, then s.find will return // a value below offposition, instead of string::npos as is // expected. Workaround. if (offposition > s.length()) break; offposition = s.find(highlightword, offposition); } } // Sort the positions from small to bigger. xml_sort_positions(highlight_positions, highlight_lengths); // Combine overlapping positions. xml_combine_overlaps(highlight_positions, highlight_lengths); // Insert the code for highlighting. for (int i = highlight_positions.size () - 1; i >= 0; i--) { for (int i2 = highlight_lengths.size() - 1; i2 >= 0; i2--) { line.insert (highlight_positions[i] + i2, INSERTION_FLAG); } } // Add usfm converter to the layout engine, and set various things. Usfm2Text usfm2text(&text2pdf, false); usfm2text.add_styles(usfm2xslfo_read_stylesheet(stylesheet)); usfm2text.no_bold(); usfm2text.no_space_before_or_after(); usfm2text.no_new_page(); usfm2text.add_usfm_code(line); usfm2text.process(); } // Add a bit of space. text2pdf.close_paragraph(); text2pdf.add_text(" "); text2pdf.close_paragraph(); // Whether to close code keeping things on one page. if (keep_verses_together_within_page) { text2pdf.close_keep_together(); } } // Hide progeressbar. progresswindow.hide(); // Process the data. text2pdf.run(); // Display the pdf file. text2pdf.view(); // Log: ready. gw_message("Ready printing the parallel references"); } bibledit-gtk-4.9/src/print_parallel_references.h000664 000766 000024 00000002263 12221507150 022224 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_PRINT_PARALLEL_REFERENCES_H #define INCLUDED_PRINT_PARALLEL_REFERENCES_H #include #include "ustring.h" #include "reference.h" #include "project_memory.h" void view_parallel_references_pdf(ProjectMemory& main_project, vector * extra_projects, vector references, bool keep_verses_together_within_page, vector * remarks, bool highlight); #endif bibledit-gtk-4.9/src/printproject.cpp000644 000766 000024 00000012213 12453001367 020071 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "printproject.h" #include "utilities.h" #include "bible.h" #include "usfmtools.h" #include "pdfviewer.h" #include "xmlutils.h" #include "paper.h" #include "style.h" #include "stylesheetutils.h" #include "constants.h" #include "gwrappers.h" #include "gtkwrappers.h" #include "directories.h" #include "portion_utils.h" #include "projectutils.h" #include "books.h" #include "unixwrappers.h" #include "textreplacement.h" #include "tiny_utilities.h" #include "text2pdf.h" #include "usfm2text.h" PrintProject::PrintProject(ProjectMemory * project) { myproject = project; scriptureportions = NULL; nobold = false; } PrintProject::~PrintProject() { if (scriptureportions) delete scriptureportions; } void PrintProject::portion_project(const ustring & project) { portionproject = project; } void PrintProject::comment(const ustring & text) // Adds a comment to be printed with the main text. { comments.push_back(text); } void PrintProject::no_bold () // No bold printing (except for the changes). { nobold = true; } void PrintProject::print() // Formats the project and shows it in a pdf viewer. { // Scripture related data. // Possible exclusion of books. if (portionproject.empty()) portionproject = myproject->name; scriptureportions = new ScripturePortions(portionproject); if (scriptureportions->books.empty()) { gtkw_dialog_info(NULL, "There were no books to print\nSelect some books and try again"); return; } // Settings. extern Settings *settings; ProjectConfiguration *projectconfig = settings->projectconfig(myproject->name); // Create Text to PDF and Usfm to Text converters. Text2Pdf text2pdf(gw_build_filename(Directories->get_temp(), "document.pdf"), settings->genconfig.print_engine_use_intermediate_text_get()); Usfm2Text usfm2text(&text2pdf, true); // Styles. usfm2text.add_styles(usfm2xslfo_read_stylesheet(stylesheet_get_actual ())); // Page. text2pdf.page_size_set(settings->genconfig.paper_width_get(), settings->genconfig.paper_height_get()); text2pdf.page_margins_set(settings->genconfig.paper_inside_margin_get(), settings->genconfig.paper_outside_margin_get(), settings->genconfig.paper_top_margin_get(), settings->genconfig.paper_bottom_margin_get()); // Headers. if (settings->genconfig.printdate_get()) { text2pdf.print_date_in_header(); } // Font. if (!projectconfig->editor_font_default_get()) text2pdf.set_font(projectconfig->editor_font_name_get()); // Line spacing. if (!projectconfig->editor_font_default_get()) text2pdf.set_line_spacing(projectconfig->text_line_height_get()); // Right-to-left. text2pdf.set_right_to_left(projectconfig->right_to_left_get()); // Inclusion of full references with the notes. if (settings->session.print_references_in_notes_in_full) usfm2text.set_include_full_references_with_notes(); // Portions. for (unsigned int i = 0; i < scriptureportions->books.size(); i++) { vector chapters_from, chapters_to; vector verses_from, verses_to; select_portion_get_values(portionproject, books_english_to_id(scriptureportions->books[i]), scriptureportions->portions[i], chapters_from, verses_from, chapters_to, verses_to); usfm2text.add_print_portion(books_english_to_id(scriptureportions->books[i]), chapters_from, verses_from, chapters_to, verses_to); } // Language. usfm2text.set_language (projectconfig->language_get()); // No bold. if (nobold) { usfm2text.no_bold(); } // Start off with inserting any remarks. for (unsigned int r = 0; r < comments.size(); r++) { text2pdf.open_paragraph(); text2pdf.add_text(comments[r]); text2pdf.close_paragraph(); } // Collect usfm code for all the books. for (unsigned int i = 0; i < scriptureportions->books.size(); i++) { // Open the book. vector < ustring > book_lines; unsigned int id = books_english_to_id(scriptureportions->books[i]); for (unsigned int i2 = 0; i2 < myproject->data.size(); i2++) { if (myproject->data[i2].number == id) { book_lines = myproject->data[i2].get_data(); } } // Do text replacements on the lines. text_replacement(book_lines); // Add the lines to the converter. usfm2text.add_usfm_code(book_lines); } // Process the data. usfm2text.process(); text2pdf.run(); // Display the pdf file. text2pdf.view(); } bibledit-gtk-4.9/src/printproject.h000664 000766 000024 00000002603 12221507136 017540 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_PRINTPROJECT_H #define INCLUDED_PRINTPROJECT_H #include #include "ustring.h" #include "settings.h" #include "usfm.h" #include "usfm-inline-markers.h" #include "scriptureportions.h" #include "project_memory.h" class PrintProject { public: PrintProject(ProjectMemory * project); ~PrintProject(); void portion_project(const ustring& project); void comment(const ustring& text); void no_bold (); void print(); private: ProjectMemory * myproject; ustring portionproject; ScripturePortions * scriptureportions; vector comments; bool nobold; }; #endif bibledit-gtk-4.9/src/printproject2.cpp000664 000766 000024 00000011177 12221507142 020160 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include #include "printproject2.h" #include "utilities.h" #include "bible.h" #include "usfmtools.h" #include "pdfviewer.h" #include "xmlutils.h" #include "paper.h" #include "style.h" #include "stylesheetutils.h" #include "constants.h" #include "gwrappers.h" #include "gtkwrappers.h" #include "directories.h" #include "portion_utils.h" #include "projectutils.h" #include "books.h" #include "unixwrappers.h" #include "textreplacement.h" #include "tiny_utilities.h" #include "xetex.h" PrintProject2::PrintProject2(ProjectMemory * project) { myproject = project; scriptureportions = NULL; nobold = false; } PrintProject2::~PrintProject2() { if (scriptureportions) delete scriptureportions; } void PrintProject2::portion_project(const ustring & project) { portionproject = project; } void PrintProject2::comment(const ustring & text) // Adds a comment to be printed with the main text. { comments.push_back(text); } void PrintProject2::no_bold () // No bold printing (except for the changes). { nobold = true; } void PrintProject2::print() // Runs the project through xetex and shows it in a pdf viewer. { // Scripture related data. // Possible exclusion of books. if (portionproject.empty()) portionproject = myproject->name; scriptureportions = new ScripturePortions(portionproject); if (scriptureportions->books.empty()) { gtkw_dialog_info(NULL, "There were no books to print\nSelect some books and try again"); return; } // Create the XeTeX object. XeTeX xetex (0); // Usfm style object. Usfm usfm (stylesheet_get_actual ()); // Collect usfm code for all the books. for (unsigned int i = 0; i < scriptureportions->books.size(); i++) { // Book id. unsigned int book_id = books_english_to_id(scriptureportions->books[i]); // Ranges to include. WithinReferencesRange inrange; { vector chapters_from, chapters_to; vector verses_from, verses_to; select_portion_get_values(portionproject, book_id, scriptureportions->portions[i], chapters_from, verses_from, chapters_to, verses_to); inrange.add_portion(book_id, chapters_from, verses_from, chapters_to, verses_to); } inrange.set_book (book_id); inrange.set_chapter (0); inrange.set_verse ("0"); // Open the book. vector full_book_lines; for (unsigned int i2 = 0; i2 < myproject->data.size(); i2++) { if (myproject->data[i2].number == book_id) { full_book_lines = myproject->data[i2].get_data(); } } // Take only those portions the user wishes to print. vector book_lines; for (unsigned int i = 0; i < full_book_lines.size(); i++) { ustring line = full_book_lines[i]; ustring marker = usfm_extract_marker(line); if (usfm.is_chapter_number(marker)) { inrange.set_chapter (convert_to_int(number_in_string(line))); inrange.set_verse ("0"); } if (usfm.is_verse_number(marker)) { size_t position = line.find(" "); position = CLAMP(position, 0, line.length()); ustring verse = line.substr(0, position); inrange.set_verse (verse); } if (inrange.in_range()) { book_lines.push_back (full_book_lines[i]); } else { if (marker == "id") { ParseLine parseline (full_book_lines[i]); if (!parseline.lines.empty ()) { book_lines.push_back (parseline.lines[0]); } } } } // Do text replacements on the lines. text_replacement(book_lines); // Add the lines to the XeTeX object. xetex.add_book (book_id, book_lines); } // Process the data. ustring pdf_file = xetex.run (); // Display the pdf file if there is one. // There would be none if the formatting process was cancelled by the user. if (!pdf_file.empty()) { pdfviewer_view (pdf_file); } } bibledit-gtk-4.9/src/printproject2.h000664 000766 000024 00000002610 12221507127 017620 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_PRINTPROJECT2_H #define INCLUDED_PRINTPROJECT2_H #include #include "ustring.h" #include "settings.h" #include "usfm.h" #include "usfm-inline-markers.h" #include "scriptureportions.h" #include "project_memory.h" class PrintProject2 { public: PrintProject2(ProjectMemory * project); ~PrintProject2(); void portion_project(const ustring& project); void comment(const ustring& text); void no_bold (); void print(); private: ProjectMemory * myproject; ustring portionproject; ScripturePortions * scriptureportions; vector comments; bool nobold; }; #endif bibledit-gtk-4.9/src/progresswindow.cpp000644 000766 000024 00000010667 12453001367 020455 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "progresswindow.h" #include "gwrappers.h" #include "directories.h" ProgressWindow::ProgressWindow(const ustring & info, bool showcancel) { // The window is set modal to turn off any responses to the parent window. // That means that clicking "Cancel" will get handled properly. gtkbuilder = gtk_builder_new (); gtk_builder_add_from_file (gtkbuilder, gw_build_filename (Directories->get_package_data(), "gtkbuilder.progressdialog.xml").c_str(), NULL); progresswindow = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "progressdialog")); label = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "label")); progressbar = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "progressbar")); cancelbutton = GTK_WIDGET (gtk_builder_get_object (gtkbuilder, "cancelbutton")); gtk_label_set_text (GTK_LABEL (label), info.c_str()); if (showcancel) { g_signal_connect((gpointer) cancelbutton, "clicked", G_CALLBACK(on_cancelbutton_clicked), gpointer(this)); gtk_widget_grab_focus(cancelbutton); gtk_widget_grab_default(cancelbutton); } else { gtk_widget_hide (cancelbutton); } g_signal_connect((gpointer) progresswindow, "delete_event", G_CALLBACK(on_delete_event), gpointer(this)); gtk_widget_show(progresswindow); gtk_window_present(GTK_WINDOW(progresswindow)); cancel = false; gui(); } ProgressWindow::~ProgressWindow() { g_object_unref (gtkbuilder); gtk_widget_destroy(progresswindow); } void ProgressWindow::on_cancelbutton_clicked(GtkButton * button, gpointer user_data) { ((ProgressWindow *) user_data)->on_cancel(); } void ProgressWindow::on_cancel() { cancel = true; gui(); } gboolean ProgressWindow::on_delete_event(GtkWidget * widget, GdkEvent * event, gpointer user_data) { // Window cannot be deleted. return true; } void ProgressWindow::gui() { // Update the GUI. while (gtk_events_pending()) { gtk_main_iteration(); } } void ProgressWindow::set_text(const ustring & text) { gtk_progress_bar_set_text(GTK_PROGRESS_BAR(progressbar), text.c_str()); gui(); } void ProgressWindow::set_fraction(double fraction) { gtk_progress_bar_set_fraction(GTK_PROGRESS_BAR(progressbar), fraction); gui(); } void ProgressWindow::set_iterate(double minimum, double maximum, unsigned int max_iteration) { my_minimum = minimum; my_maximum = maximum; modulus = 0; if (max_iteration > 300) modulus = max_iteration / 100; my_max_iterations = max_iteration; iteration_counter = 0; gtk_progress_bar_set_fraction(GTK_PROGRESS_BAR(progressbar), my_minimum); gui(); } void ProgressWindow::iterate() { iteration_counter++; // It appears that if there are many steps to take, and so we have many // iterations in the process, the whole process is slowed down mostly by the // update of the graphical user interface. As this is not desirable, // measures have been taken in the ProgressWindow object to automatically reduce // the number of iterations depending on how many there are going to be // in the process. This can result in something going more than ten (!) // times faster. if (modulus != 0) { if ((iteration_counter % modulus) != 0) return; } double percentage; percentage = double (iteration_counter) / double (my_max_iterations); percentage *= (my_maximum - my_minimum); percentage += my_minimum; // If percentage gets too high, reset the bar. if (percentage > 1) iteration_counter = 0; percentage = CLAMP(percentage, 0, 1); gtk_progress_bar_set_fraction(GTK_PROGRESS_BAR(progressbar), percentage); gui(); } void ProgressWindow::pulse() { gtk_progress_bar_pulse(GTK_PROGRESS_BAR(progressbar)); gui(); } void ProgressWindow::hide() { gtk_widget_hide_all(progresswindow); gui(); } bibledit-gtk-4.9/src/progresswindow.h000664 000766 000024 00000003274 12221507137 020117 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_PROGRESSWINDOW_H #define INCLUDED_PROGRESSWINDOW_H #include "libraries.h" #include class ProgressWindow { public: ProgressWindow (const ustring& info, bool showcancel); ~ProgressWindow (); void set_text (const ustring& text); void set_fraction (double fraction); void set_iterate (double minimum, double maximum, unsigned int max_iteration); void iterate (); void pulse (); void hide (); bool cancel; private: GtkBuilder *gtkbuilder; GtkWidget *progresswindow; GtkWidget *label; GtkWidget *progressbar; GtkWidget *cancelbutton; static void on_cancelbutton_clicked (GtkButton *button, gpointer user_data); void on_cancel (); static gboolean on_delete_event (GtkWidget *widget, GdkEvent *event, gpointer user_data); void gui (); double my_minimum; double my_maximum; unsigned int my_max_iterations; unsigned int iteration_counter; unsigned int modulus; }; #endif bibledit-gtk-4.9/src/project_memory.cpp000664 000766 000024 00000010524 12221507136 020407 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "project_memory.h" #include "progresswindow.h" #include "projectutils.h" ProjectVerse::ProjectVerse(const ustring & number_in) { number = number_in; } ProjectChapter::ProjectChapter(unsigned int number_in) { number = number_in; } vector < ustring > ProjectChapter::get_data() { vector < ustring > lines; for (unsigned int vs = 0; vs < data.size(); vs++) { lines.push_back(data[vs].data); } return lines; } void ProjectChapter::set_data(const vector < ustring > &lines) { data.clear(); CategorizeChapterVerse ccv(lines); for (unsigned int vs = 0; vs < ccv.verse.size(); vs++) { ProjectVerse projectverse(ccv.verse[vs]); projectverse.data = ccv.line[vs]; data.push_back(projectverse); } } vector < ustring > ProjectChapter::get_verses() // Get the numbers of the verses in the object. { vector < ustring > verses; for (unsigned int vs = 0; vs < data.size(); vs++) { verses.push_back(data[vs].number); } return verses; } ProjectVerse *ProjectChapter::get_verse_pointer(const ustring & number) // Returns a pointer to the verse, or NULL if it is not there. { for (unsigned int i = 0; i < data.size(); i++) if (number == data[i].number) return &data[i]; return NULL; } ProjectBook::ProjectBook(unsigned int number_in) { number = number_in; } vector < ustring > ProjectBook::get_data() { vector < ustring > lines; for (unsigned int ch = 0; ch < data.size(); ch++) { for (unsigned int vs = 0; vs < data[ch].data.size(); vs++) { lines.push_back(data[ch].data[vs].data); } } return lines; } vector < unsigned int >ProjectBook::get_chapters() // Get the numbers of the chapters in the object. { vector < unsigned int >chapters; for (unsigned int ch = 0; ch < data.size(); ch++) { chapters.push_back(data[ch].number); } return chapters; } ProjectChapter *ProjectBook::get_chapter_pointer(unsigned int number) // Returns a pointer to the chapter, or NULL if it is not there. { for (unsigned int i = 0; i < data.size(); i++) if (number == data[i].number) return &data[i]; return NULL; } ProjectMemory::ProjectMemory(const ustring & name_in, bool gui) { name = name_in; cancelled = false; ProgressWindow *progresswindow = NULL; if (gui) progresswindow = new ProgressWindow("Loading " + name, true); vector < unsigned int >books = project_get_books(name); if (progresswindow) progresswindow->set_iterate(0, 1, books.size()); for (unsigned int bk = 0; bk < books.size(); bk++) { if (progresswindow) progresswindow->iterate(); if (progresswindow && progresswindow->cancel) { cancelled = true; delete progresswindow; return; } ProjectBook projectbook(books[bk]); vector < unsigned int >chapters = project_get_chapters(name, books[bk]); for (unsigned int ch = 0; ch < chapters.size(); ch++) { ProjectChapter projectchapter(chapters[ch]); projectchapter.set_data(project_retrieve_chapter(name, books[bk], chapters[ch])); projectbook.data.push_back(projectchapter); } data.push_back(projectbook); } if (progresswindow) delete progresswindow; } vector < unsigned int >ProjectMemory::get_books() // Get the ids of the books in the object. { vector < unsigned int >books; for (unsigned int bk = 0; bk < data.size(); bk++) { books.push_back(data[bk].number); } return books; } ProjectBook *ProjectMemory::get_book_pointer(unsigned int number) // Returns a pointer to the book, or NULL if it is not there. { for (unsigned int i = 0; i < data.size(); i++) if (number == data[i].number) return &data[i]; return NULL; } bibledit-gtk-4.9/src/project_memory.h000664 000766 000024 00000003550 12221507141 020051 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_PROJECT_MEMORY_H #define INCLUDED_PROJECT_MEMORY_H #include "libraries.h" #include "categorize.h" #include "sqlite_reader.h" class ProjectVerse { public: ProjectVerse (const ustring& number_in); ustring number; ustring data; private: }; class ProjectChapter { public: ProjectChapter (unsigned int number_in); unsigned int number; vector data; vector get_data (); void set_data (const vector & lines); vector get_verses (); ProjectVerse * get_verse_pointer (const ustring& number); private: }; class ProjectBook { public: ProjectBook (unsigned int number_in); unsigned int number; vector data; vector get_data (); vector get_chapters (); ProjectChapter * get_chapter_pointer (unsigned int number); private: }; class ProjectMemory { public: ProjectMemory (const ustring& name_in, bool gui); ustring name; vector data; vector get_books (); ProjectBook * get_book_pointer (unsigned int number); bool cancelled; private: }; #endif bibledit-gtk-4.9/src/projectconfig.cpp000644 000766 000024 00000022066 12453001367 020211 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "directories.h" #include "gwrappers.h" #include "utilities.h" #include "date_time_utils.h" #include "settings.h" #include "stylesheetutils.h" #include "settings.h" #include #include #include "config.xml.h" ustring project_configuration_filename(const ustring & project) { return gw_build_filename(Directories->get_projects(), project, "configuration.1.xml"); } void upgrade_project_configuration(const ustring & project) { } ProjectConfiguration::ProjectConfiguration(ustring project_in, bool save_on_destroy) { // If no project given, take one currently opened. if (project.empty()) { extern Settings *settings; project = settings->genconfig.project_get(); } // Save parameters. project = project_in; my_save_on_destroy = save_on_destroy; // Function definition for initializing variables. #define INITIALIZE(parameter) parameter##_loaded = false // Initialize variables. INITIALIZE(versification); INITIALIZE(printing_fonts); INITIALIZE(text_line_height); INITIALIZE(xetex_font_mapping_file); INITIALIZE(xetex_shaping_engine); INITIALIZE(sword_name); INITIALIZE(sword_description); INITIALIZE(sword_about); INITIALIZE(sword_license); INITIALIZE(sword_version); INITIALIZE(sword_language); INITIALIZE(reordered_books); INITIALIZE(reordered_includes); INITIALIZE(reordered_portions); INITIALIZE(language); INITIALIZE(book_order); INITIALIZE(editable); INITIALIZE(backup_incremental_last_time); INITIALIZE(backup_comment); INITIALIZE(git_use_remote_repository); INITIALIZE(git_remote_repository_url); INITIALIZE(changes_last_review); INITIALIZE(changes_since); INITIALIZE(changes_till); INITIALIZE(editor_font_default); INITIALIZE(editor_font_name); INITIALIZE(editor_default_color); INITIALIZE(editor_normal_text_color); INITIALIZE(editor_background_color); INITIALIZE(editor_selected_text_color); INITIALIZE(editor_selection_color); INITIALIZE(right_to_left); INITIALIZE(planning_project_start); INITIALIZE(planning_tasks); INITIALIZE(depending_on_switch); INITIALIZE(depending_on_project); INITIALIZE(depending_on_script); INITIALIZE(spelling_check); INITIALIZE(spelling_dictionaries); } ProjectConfiguration::~ProjectConfiguration() { if (my_save_on_destroy) save(); } void ProjectConfiguration::save() // Saves all settings to disk. { vector < ConfigXmlPair > values; #define SAVE_VALUE(item) if (item##_loaded) config_xml_values_set_assemble (values, item##_key(), item) SAVE_VALUE(versification); SAVE_VALUE(printing_fonts); SAVE_VALUE(text_line_height); SAVE_VALUE(xetex_font_mapping_file); SAVE_VALUE(xetex_shaping_engine); SAVE_VALUE(sword_name); SAVE_VALUE(sword_description); SAVE_VALUE(sword_about); SAVE_VALUE(sword_license); SAVE_VALUE(sword_version); SAVE_VALUE(sword_language); SAVE_VALUE(reordered_books); SAVE_VALUE(reordered_includes); SAVE_VALUE(reordered_portions); SAVE_VALUE(language); SAVE_VALUE(book_order); SAVE_VALUE(editable); SAVE_VALUE(backup_incremental_last_time); SAVE_VALUE(backup_comment); SAVE_VALUE(git_use_remote_repository); SAVE_VALUE(git_remote_repository_url); SAVE_VALUE(changes_last_review); SAVE_VALUE(changes_since); SAVE_VALUE(changes_till); SAVE_VALUE(editor_font_default); SAVE_VALUE(editor_font_name); SAVE_VALUE(editor_default_color); SAVE_VALUE(editor_normal_text_color); SAVE_VALUE(editor_background_color); SAVE_VALUE(editor_selected_text_color); SAVE_VALUE(editor_selection_color); SAVE_VALUE(right_to_left); SAVE_VALUE(planning_project_start); SAVE_VALUE(planning_tasks); SAVE_VALUE(depending_on_switch); SAVE_VALUE(depending_on_project); SAVE_VALUE(depending_on_script); SAVE_VALUE(spelling_check); SAVE_VALUE(spelling_dictionaries); config_xml_values_set_execute(project_configuration_filename(project), values); } bool ProjectConfiguration::bool_get(const gchar * key, bool & store, bool & loaded, bool standard) { if (!loaded) { store = config_xml_bool_get(project_configuration_filename(project), key, standard); loaded = true; } return store; } int ProjectConfiguration::int_get(const gchar * key, int &store, bool & loaded, int standard) { if (!loaded) { store = config_xml_int_get(project_configuration_filename(project), key, standard); loaded = true; } return store; } ustring ProjectConfiguration::string_get(const gchar * key, ustring & store, bool & loaded, const ustring & standard) { if (!loaded) { store = config_xml_string_get(project_configuration_filename(project), key, standard); loaded = true; } return store; } double ProjectConfiguration::double_get(const gchar * key, double &store, bool & loaded, double standard) { if (!loaded) { store = config_xml_double_get(project_configuration_filename(project), key, standard); loaded = true; } return store; } vector < bool > ProjectConfiguration::vector_bool_get(const gchar * key, vector < bool > &store, bool & loaded, void *dummy) { if (!loaded) { store = config_xml_vector_bool_get(project_configuration_filename(project), key); loaded = true; } return store; } vector < ustring > ProjectConfiguration::vector_string_get(const gchar * key, vector < ustring > &store, bool & loaded, void *dummy) { if (!loaded) { store = config_xml_vector_string_get(project_configuration_filename(project), key); loaded = true; } return store; } vector < int >ProjectConfiguration::vector_int_get(const gchar * key, vector < int >&store, bool & loaded, void *dummy) { if (!loaded) { store = config_xml_vector_int_get(project_configuration_filename(project), key); loaded = true; } return store; } // Definitions of the implementation of the code in the project configuration. #define IMPLEMENT(type, getter, store, defaultvalue) \ const gchar * ProjectConfiguration::store##_key () \ { \ return #store; \ } \ type ProjectConfiguration::store##_get () \ { \ return getter (store##_key (), store, store##_loaded, defaultvalue); \ } \ void ProjectConfiguration::store##_set (type value) \ { \ store = value; \ store##_loaded = true; \ } IMPLEMENT(ustring, string_get, versification, "English") IMPLEMENT(vector < ustring >, vector_string_get, printing_fonts, NULL) IMPLEMENT(int, int_get, text_line_height, 100) IMPLEMENT(ustring, string_get, xetex_font_mapping_file, "") IMPLEMENT(int, int_get, xetex_shaping_engine, 0) IMPLEMENT(ustring, string_get, sword_name, "") IMPLEMENT(ustring, string_get, sword_description, " Bibledit project") IMPLEMENT(ustring, string_get, sword_about, " Bibledit project") IMPLEMENT(ustring, string_get, sword_license, "GNU General Public License") IMPLEMENT(ustring, string_get, sword_version, "1.0") IMPLEMENT(ustring, string_get, sword_language, "en") IMPLEMENT(vector < ustring >, vector_string_get, reordered_books, NULL) IMPLEMENT(vector < bool >, vector_bool_get, reordered_includes, NULL) IMPLEMENT(vector < ustring >, vector_string_get, reordered_portions, NULL) IMPLEMENT(ustring, string_get, language, "English") IMPLEMENT(vector < int >, vector_int_get, book_order, NULL) IMPLEMENT(bool, bool_get, editable, true) IMPLEMENT(int, int_get, backup_incremental_last_time, 0) IMPLEMENT(ustring, string_get, backup_comment, "") IMPLEMENT(bool, bool_get, git_use_remote_repository, false) IMPLEMENT(ustring, string_get, git_remote_repository_url, "") IMPLEMENT(int, int_get, changes_last_review, 0) IMPLEMENT(int, int_get, changes_since, 0) IMPLEMENT(int, int_get, changes_till, 0) IMPLEMENT(bool, bool_get, editor_font_default, true) IMPLEMENT(ustring, string_get, editor_font_name, "Sans 14") IMPLEMENT(bool, bool_get, editor_default_color, true) IMPLEMENT(int, int_get, editor_normal_text_color, 0) IMPLEMENT(int, int_get, editor_background_color, 16777215) IMPLEMENT(int, int_get, editor_selected_text_color, 16777215) IMPLEMENT(int, int_get, editor_selection_color, 4294343) IMPLEMENT(bool, bool_get, right_to_left, false) IMPLEMENT(int, int_get, planning_project_start, date_time_julian_day_get_current()) IMPLEMENT(vector < ustring >, vector_string_get, planning_tasks, NULL) IMPLEMENT(bool, bool_get, depending_on_switch, false) IMPLEMENT(ustring, string_get, depending_on_project, "") IMPLEMENT(ustring, string_get, depending_on_script, "") IMPLEMENT(bool, bool_get, spelling_check, false) IMPLEMENT(vector < ustring >, vector_string_get, spelling_dictionaries, NULL) bibledit-gtk-4.9/src/projectconfig.h000664 000766 000024 00000010544 12221507151 017651 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_PROJECTCONFIGURATION_H #define INCLUDED_PROJECTCONFIGURATION_H #include "libraries.h" #include "constants.h" #include "settings.h" ustring project_configuration_filename (const ustring& project); void upgrade_project_configuration (const ustring& project); // Definitions of various types of variables in the project configuration. #define DEFINE_PROJECTCONFIG_H(type, parameter) \ private: \ type parameter; \ bool parameter##_loaded; \ const gchar * parameter##_key (); \ public: \ type parameter##_get (); \ void parameter##_set (type value) \ class ProjectConfiguration // Manages program settings. { public: ProjectConfiguration (ustring project_in, bool save_on_destroy = true); ~ProjectConfiguration (); void save (); ustring project; // Private and public definitions follow. DEFINE_PROJECTCONFIG_H (ustring, versification); DEFINE_PROJECTCONFIG_H (vector, printing_fonts); DEFINE_PROJECTCONFIG_H (int, text_line_height); DEFINE_PROJECTCONFIG_H (ustring, xetex_font_mapping_file); DEFINE_PROJECTCONFIG_H (int, xetex_shaping_engine); DEFINE_PROJECTCONFIG_H (ustring, sword_name); DEFINE_PROJECTCONFIG_H (ustring, sword_description); DEFINE_PROJECTCONFIG_H (ustring, sword_about); DEFINE_PROJECTCONFIG_H (ustring, sword_license); DEFINE_PROJECTCONFIG_H (ustring, sword_version); DEFINE_PROJECTCONFIG_H (ustring, sword_language); DEFINE_PROJECTCONFIG_H (vector, reordered_books); DEFINE_PROJECTCONFIG_H (vector, reordered_includes); DEFINE_PROJECTCONFIG_H (vector, reordered_portions); DEFINE_PROJECTCONFIG_H (ustring, language); DEFINE_PROJECTCONFIG_H (vector, book_order); DEFINE_PROJECTCONFIG_H (bool, editable); DEFINE_PROJECTCONFIG_H (int, backup_incremental_last_time); DEFINE_PROJECTCONFIG_H (ustring, backup_comment); DEFINE_PROJECTCONFIG_H (bool, git_use_remote_repository); DEFINE_PROJECTCONFIG_H (ustring, git_remote_repository_url); DEFINE_PROJECTCONFIG_H (int, changes_last_review); DEFINE_PROJECTCONFIG_H (int, changes_since); DEFINE_PROJECTCONFIG_H (int, changes_till); DEFINE_PROJECTCONFIG_H (bool, editor_font_default); DEFINE_PROJECTCONFIG_H (ustring, editor_font_name); DEFINE_PROJECTCONFIG_H (bool, editor_default_color); DEFINE_PROJECTCONFIG_H (int, editor_normal_text_color); DEFINE_PROJECTCONFIG_H (int, editor_background_color); DEFINE_PROJECTCONFIG_H (int, editor_selected_text_color); DEFINE_PROJECTCONFIG_H (int, editor_selection_color); DEFINE_PROJECTCONFIG_H (bool, right_to_left); DEFINE_PROJECTCONFIG_H (int, planning_project_start); DEFINE_PROJECTCONFIG_H (vector, planning_tasks); DEFINE_PROJECTCONFIG_H (bool, depending_on_switch); DEFINE_PROJECTCONFIG_H (ustring, depending_on_project); DEFINE_PROJECTCONFIG_H (ustring, depending_on_script); DEFINE_PROJECTCONFIG_H (bool, spelling_check); DEFINE_PROJECTCONFIG_H (vector, spelling_dictionaries); private: bool my_save_on_destroy; bool bool_get (const gchar * key, bool& store, bool& loaded, bool standard); int int_get (const gchar * key, int& store, bool& loaded, int standard); ustring string_get (const gchar * key, ustring& store, bool& loaded, const ustring& standard); double double_get (const gchar * key, double& store, bool& loaded, double standard); vector vector_bool_get (const gchar * key, vector& store, bool& loaded, void * dummy); vector vector_string_get (const gchar * key, vector& store, bool& loaded, void * dummy); vector vector_int_get (const gchar * key, vector& store, bool& loaded, void * dummy); }; #endif bibledit-gtk-4.9/src/projectutils.cpp000644 000766 000024 00000044357 12453001367 020113 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "utilities.h" #include #include "constants.h" #include "projectutils.h" #include "directories.h" #include "gwrappers.h" #include "shell.h" #include "sqlite3.h" #include "books.h" #include "bible.h" #include "progresswindow.h" #include "import.h" #include "unixwrappers.h" #include "statistics.h" #include "settings.h" #include "dialoglistview.h" #include #include "git.h" #include "tiny_utilities.h" #include "notes_utils.h" #include "scripts.h" #include "statistics.h" #include "snapshots.h" #include "vcs.h" void project_store_sanitize_line(ustring & line) /* Joins lines, without starting usfm, to a previous one. Makes changes in-place. */ { // Look for a newline. size_t position = line.find("\n"); while (position != string::npos) { position++; if (position >= line.size()) break; // If found, and the next character is not a backslash (\), then put a space // instead of the newline. if (line.substr(position, 1) != "\\") { line.replace(position - 1, 1, " "); } // Keep going till through. position = line.find("\n", position); } } void project_store_chapter_internal(const ustring & project, unsigned int book, unsigned int chapter, CategorizeChapterVerse & ccv, unsigned int first, unsigned int last, unsigned int timestamp) { // Bail out if the project does not exist. if (!project_exists(project)) return; // Store statistics. statistics_record_store_chapter(project, book, chapter, ccv, first, last); // Store data. try { ustring chapterdirectory = project_data_directory_chapter(project, book, chapter); if (!g_file_test(chapterdirectory.c_str(), G_FILE_TEST_IS_DIR)) gw_mkdir_with_parents(chapterdirectory); ustring filename = project_data_filename_chapter(project, book, chapter, false); vector < ustring > data; for (unsigned int i = first; i < last; i++) { ustring text = ccv.line[i]; project_store_sanitize_line(text); data.push_back(text); } write_lines(filename, data); } catch(exception & ex) { gw_critical(ex.what()); } // Store a snapshot of this chapter. snapshots_shoot_chapter (project, book, chapter, 0, false); } void projects_initial_check() // Does some initial checks on the projects we have. // Upgrades projects of an older version to the current version. { // Ensure that we create separate routines for each Bible, as this routine will need to be called upon restore as well. } vector projects_get_all() // Gets sorted list of all projects. { ReadDirectories rd(Directories->get_projects(), "", ""); sort(rd.directories.begin(), rd.directories.end()); return rd.directories; } ustring project_data_directory_project(const ustring & project) // Returns the data directory for the project, e.g.: // ~/.bibledit/projects/testproject/data { return tiny_project_data_directory_project(project); } ustring project_data_directory_book(const ustring & project, unsigned int book) // Returns the data directory for the book, e.g.: // ~/.bibledit/projects/testproject/data/Genesis { ustring directory = gw_build_filename(project_data_directory_project(project), books_id_to_english(book)); return directory; } ustring project_data_directory_chapter(const ustring & project, unsigned int book, unsigned int chapter) // Returns the data directory for the chapter, e.g.: // ~/.bibledit/projects/testproject/data/Genesis/1 { ustring directory = gw_build_filename(project_data_directory_book(project, book), convert_to_string(chapter)); return directory; } ustring project_data_filename_chapter(const ustring & project, unsigned int book, unsigned int chapter, bool checkexists) // Returns the data filename of the chapter, e.g.: // ~/.bibledit/projects/testproject/data/Genesis/1/data { ustring filename = gw_build_filename(project_data_directory_chapter(project, book, chapter), "data"); if (checkexists) { if (!g_file_test(filename.c_str(), G_FILE_TEST_IS_REGULAR)) throw runtime_error(books_id_to_english(book) + " " + convert_to_string(chapter) + " does not exist"); } return filename; } bool project_exists(const ustring & project) { return g_file_test(gw_build_filename(Directories->get_projects(), project).c_str(), G_FILE_TEST_IS_DIR); } void project_create_restore (const ustring& project, const ustring& restore_from) { if (restore_from.empty()) { // Create project directory, and directory for data. gw_mkdir_with_parents(project_data_directory_project(project)); } else { // Restore project. ustring project_directory = tiny_project_directory (project); unix_mv (restore_from, project_directory); } // Create statistics system. statistics_initial_check_project(project, false); // Initialize snapshots. snapshots_initialize_project (project); } void project_delete(const ustring & project) // Deletes a project and associated data. { // No project: bail out. if (project.empty()) return; // Delete the whole project, including all databases and the repository. ustring directory = gw_build_filename(Directories->get_projects(), project); unix_rmdir(directory); } void project_copy(const ustring & project, const ustring & newproject) // Copies "project" to "newproject. { ustring olddirectory = gw_build_filename(Directories->get_projects(), project); ustring newdirectory = gw_build_filename(Directories->get_projects(), newproject); unix_cp_r(olddirectory, newdirectory); // Statistics have been copied too. Do initial check. statistics_initial_check_project(newproject, false); // Use of a remote repository is switched off so as not to mess with our server. git_revert_to_internal_repository(newproject); // Statistics database will have been copied already. } void project_move(const ustring & project, const ustring & newproject) { // This moves the whole project, including the databases. ustring oldname = (gw_build_filename(Directories->get_projects(), project)); ustring newname = (gw_build_filename(Directories->get_projects(), newproject)); unix_mv(oldname, newname); // Move project notes. notes_change_project(project, newproject); } void project_store_book(const ustring & project, unsigned int book, CategorizeChapterVerse & ccv) { // If nothing to save, bail out. if (ccv.chapter.empty()) return; // Timestamp. unsigned int timestamp = time(0); // Make pointers to each chapter. vector < unsigned int >chapters; vector < unsigned int >firsts; vector < unsigned int >lasts; unsigned int currentchapter = ccv.chapter[0]; unsigned int first = 0; for (unsigned int i = 0; i < ccv.chapter.size(); i++) { if (ccv.chapter[i] != currentchapter) { chapters.push_back(currentchapter); currentchapter = ccv.chapter[i]; firsts.push_back(first); first = i; lasts.push_back(i); } } chapters.push_back(currentchapter); firsts.push_back(first); lasts.push_back(ccv.chapter.size()); // Store each chapter. for (unsigned int i = 0; i < chapters.size(); i++) { project_store_chapter_internal(project, book, chapters[i], ccv, firsts[i], lasts[i], timestamp); } } void project_remove_book(const ustring & project, unsigned int book) { // Collect the chapter numbers in this book. vector chapters = project_get_chapters (project, book); // Store statistics. statistics_record_remove_book(project, book); // Remove book directory. unix_rmdir(project_data_directory_book(project, book)); // Store snapshots for the chapters we collected earlier. for (unsigned int i = 0; i < chapters.size(); i++) { snapshots_shoot_chapter (project, book, chapters[i], 0, false); } } void project_store_chapter(const ustring & project, unsigned int book, CategorizeChapterVerse & ccv) { // If there's nothing to save, bail out. if (ccv.chapter.size() == 0) return; // Do the actual storing. unsigned int chapter = ccv.chapter[0]; unsigned int timestamp = time(0); project_store_chapter_internal(project, book, chapter, ccv, 0, ccv.chapter.size(), timestamp); } void project_remove_chapter(const ustring & project, unsigned int book, unsigned int chapter) { // Statistics. statistics_record_remove_chapter(project, book, chapter); // Actual removal. ustring directory = project_data_directory_chapter(project, book, chapter); unix_rmdir(directory); // Store empty snapshot. snapshots_shoot_chapter (project, book, chapter, 0, false); } void project_store_verse(const ustring & project, unsigned int book, unsigned int chapter, const ustring & verse, const ustring & data) { // If there's nothing to save, bail out. if (data.empty()) return; // Statistics. statistics_record_store_verse(project, book, chapter, verse, data); // Retrieve current data, categorize it, store new verse at right place, store it. vector < ustring > lines = project_retrieve_chapter(project, book, chapter); CategorizeChapterVerse ccv(lines); for (unsigned int i = 0; i < ccv.verse.size(); i++) { if (ccv.verse[i] == verse) { ustring text(data); project_store_sanitize_line(text); ccv.line[i] = text; } } unsigned int timestamp = time(0); project_store_chapter_internal(project, book, chapter, ccv, 0, ccv.chapter.size(), timestamp); } ustring project_retrieve_verse_extended(const ustring & project, unsigned int book, unsigned int chapter, const ustring & verse) /* This function will be called when the exact verse was not found in the text. E.g. it requested verse "1-2", and the text happens to have verse "1" and verse "2", but not the combined verse. This extended function handles these and similar cases. This is roughly the strategy to be followed to get the right verse. - The requested verse may have the a or b suffix, e.g. verse 4a. - Therefore use a system of "half" verses. - Create a vector with all the half verses requested. - Create sets with all the half verses that are in a particular verse, e.g. v 1-2 will contain 1a and 1b, and v 3-5 contains 3a, 3b, 4a, 4b, 5a, 5b. - Take any set that contains any of the requested half verses and get the text(s) of the verse(s). */ { // Holds the verse text we will retrieve. ustring line; // Get the requested half-verses. vector < int >requested_verses = verses_encode(verse); // Get all verses in this chapter. vector < ustring > all_verses = project_get_verses(project, book, chapter); // Get the sets with the half-verses of each available verse in this chapter. vector < set < int > > available_verses_sets; for (unsigned int i = 0; i < all_verses.size(); i++) { vector < int >verses_v = verses_encode(all_verses[i]); set < int >verses_s(verses_v.begin(), verses_v.end()); available_verses_sets.push_back(verses_s); } // Retrieve any verse that relates to the verse we look for. // Use a mechanism that prevents retrieving the same verse more than once. set < ustring > retrieved_verses; for (unsigned int a = 0; a < available_verses_sets.size(); a++) { for (unsigned int r = 0; r < requested_verses.size(); r++) { if (available_verses_sets[a].find(requested_verses[r]) != available_verses_sets[a].end()) { if (retrieved_verses.find(all_verses[a]) == retrieved_verses.end()) { retrieved_verses.insert(all_verses[a]); if (!line.empty()) line.append("\n"); line.append(project_retrieve_verse(project, book, chapter, all_verses[a])); } } } } // Return whatever we got. return line; } ustring project_retrieve_verse(const ustring & project, unsigned int book, unsigned int chapter, const ustring & verse) { // Retrieve the verse. ustring line; vector < ustring > lines = project_retrieve_chapter(project, book, chapter); CategorizeChapterVerse ccv(lines); for (unsigned int i = 0; i < ccv.verse.size(); i++) { if (ccv.verse[i] == verse) { line = ccv.line[i]; } } // If the verse was not found, use extended retrieval mechanism to get it. if (line.empty()) { line = project_retrieve_verse_extended(project, book, chapter, verse); } // Return the data. return line; } vector < ustring > project_retrieve_chapter(const ustring & project, unsigned int book, unsigned int chapter) // Get the chapter from disk. { // Get the filename of the chapter to retrieve. ustring filename = project_data_filename_chapter(project, book, chapter, false); // If the project depends upon another project we need to make sure that we // retrieve the information from that project in case that project was updated. // If the file stamp of the source project is newer, then that means it was updated. extern Settings *settings; ProjectConfiguration *projectconfig = settings->projectconfig(project, false); if (projectconfig->depending_on_switch_get()) { ustring source_project = projectconfig->depending_on_project_get(); if (!source_project.empty()) { ustring script = projectconfig->depending_on_script_get(); unsigned int myfiledate = file_get_modification_time(filename); ustring sourcefilename = project_data_filename_chapter(source_project, book, chapter, false); unsigned int sourcefiledate = file_get_modification_time(sourcefilename); if (sourcefiledate >= myfiledate) { script_filter(script, script == scripts_straight_through(), sourcefilename, script_temporal_output_file()); ReadText rt(script_temporal_output_file(), true); CategorizeChapterVerse ccv(rt.lines); project_store_chapter(project, book, ccv); } } } // Get the data. ReadText rt(filename, true); // If the data shows that there is a conflict, solve it, then reload. bool solve_conflict = false; for (unsigned int i = 0; i < rt.lines.size(); i++) { if (rt.lines[i].find(git_mine_conflict_marker()) != string::npos) { solve_conflict = true; } } if (solve_conflict) { git_resolve_conflict_chapter(project, book, chapter); ReadText rt2(filename, true); return rt2.lines; } // Return the data. return rt.lines; } vector < ustring > project_retrieve_book(const ustring & project, unsigned int book) // Retrieves the text of the whole book. { // Storage for the data. vector < ustring > lines; // All chapters. vector < unsigned int >chapters = project_get_chapters(project, book); // Get text of each chapter. for (unsigned int i = 0; i < chapters.size(); i++) { vector < ustring > ln = project_retrieve_chapter(project, book, chapters[i]); for (unsigned int i2 = 0; i2 < ln.size(); i2++) { lines.push_back(ln[i2]); } } // Return data. return lines; } vector < unsigned int >project_get_books(const ustring & project) // Gives all books in this project. // Reorders the book according to settings made by user. { vector < unsigned int >books; ReadDirectories rd(project_data_directory_project(project), "", ""); for (unsigned int i = 0; i < rd.directories.size(); i++) { unsigned int book = books_english_to_id(rd.directories[i]); if (book) books.push_back(book); } books_order(project, books); return books; } vector < unsigned int >project_get_chapters(const ustring & project, unsigned int book) // Gives all chapters in a book of a project. { vector < unsigned int >chapters; ustring project_data_directory = project_data_directory_book(project, book); if (g_file_test(project_data_directory.c_str(), G_FILE_TEST_IS_DIR)) { ReadDirectories rd(project_data_directory, "", ""); for (unsigned int i = 0; i < rd.directories.size(); i++) { // It also reads the .svn directory. Filter that out. ustring uchapter = number_in_string(rd.directories[i]); if (!uchapter.empty()) { unsigned int chapter = convert_to_int(rd.directories[i]); chapters.push_back(chapter); } } sort(chapters.begin(), chapters.end()); } return chapters; } vector < ustring > project_get_verses(const ustring & project, unsigned int book, unsigned int chapter) // Returns the verses in a chapter. { vector < ustring > verses; vector < ustring > lines = project_retrieve_chapter(project, book, chapter); CategorizeChapterVerse ccv(lines); verses = ccv.verse; return verses; } bool project_book_exists(const ustring & project, unsigned int book) { ustring directory = project_data_directory_book(project, book); return g_file_test(directory.c_str(), G_FILE_TEST_IS_DIR); } bool project_select(ustring & newproject) // Shows the select project dialog. // newproject: gets the new project if one was chosen. // Returns true if a project was chosen. { // Divide the projects into editable and non-editable ones. vector < ustring > editable_projects; vector < ustring > non_editable_projects; { vector < ustring > projects = projects_get_all(); for (unsigned int i = 0; i < projects.size(); i++) { extern Settings *settings; ProjectConfiguration *projectconfig = settings->projectconfig(projects[i]); if (projectconfig->editable_get()) editable_projects.push_back(projects[i]); else non_editable_projects.push_back(projects[i]); } } // Build/run dialog. ustring focusedproject = newproject; if (focusedproject.empty()) { extern Settings *settings; focusedproject = settings->genconfig.project_get(); } ListviewDialog dialog("Open project", editable_projects, focusedproject, true, NULL); dialog.two_pages("Editable", "Non-editable", non_editable_projects, true); dialog.tab_switcher(GDK_KEY_O, GDK_CONTROL_MASK, "Ctrl-O", "to display the editable projects", "to display the non-editable projects"); if (dialog.run() == GTK_RESPONSE_OK) { newproject = dialog.focus; return true; } else { return false; } } bibledit-gtk-4.9/src/projectutils.h000664 000766 000024 00000005470 12221507131 017544 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_PROJECTUTILS_H #define INCLUDED_PROJECTUTILS_H #include "libraries.h" #include "categorize.h" #include "sqlite_reader.h" void projects_initial_check (); vector projects_get_all (); ustring project_data_directory_project (const ustring& project); ustring project_data_directory_book (const ustring& project, unsigned int book); ustring project_data_directory_chapter (const ustring& project, unsigned int book, unsigned int chapter); ustring project_data_filename_chapter (const ustring& project, unsigned int book, unsigned int chapter, bool checkexists); bool project_exists (const ustring& project); void project_create_restore (const ustring& project, const ustring& restore_from); void project_delete (const ustring& project); void project_copy (const ustring& project, const ustring& newproject); void project_move (const ustring& project, const ustring& newproject); void project_store_book (const ustring& project, unsigned int book, CategorizeChapterVerse& ccv); void project_remove_book (const ustring& project, unsigned int book); void project_store_chapter (const ustring& project, unsigned int book, CategorizeChapterVerse& ccv); void project_remove_chapter (const ustring& project, unsigned int book, unsigned int chapter); void project_store_verse (const ustring& project, unsigned int book, unsigned int chapter, const ustring& verse, const ustring& data); ustring project_retrieve_verse (const ustring& project, unsigned int book, unsigned int chapter, const ustring& verse); vector project_retrieve_chapter (const ustring& project, unsigned int book, unsigned int chapter); vector project_retrieve_book (const ustring& project, unsigned int book); vector project_get_books (const ustring& project); vector project_get_chapters (const ustring& project, unsigned int book); vector project_get_verses (const ustring& project, unsigned int book, unsigned int chapter); bool project_book_exists (const ustring& project, unsigned int book); bool project_select (ustring& newproject); #endif bibledit-gtk-4.9/src/rc4.c000664 000766 000024 00000023366 12221507142 015506 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ // The code was copied from software copyrighted (©) 2006 Olivier Gay #include #include #include "rc4.h" static const uint8 rc4_table[256] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f, 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f, 0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f, 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x7f, 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f, 0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97, 0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d, 0x9e, 0x9f, 0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf, 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7, 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf, 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf, 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, 0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef, 0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff}; #define SWAP(x, y) \ { \ tmp = x; \ x = y; \ y = tmp; \ } #define RC4_CRYPT() \ { \ t += s[(uint8) i]; \ SWAP(s[(uint8) i], s[t]); \ new_dst[i] = new_src[i] ^ s[(uint8) (s[(uint8) i] + s[t])]; \ } void rc4_ks(rc4_ctx *ctx, const uint8 *key, uint32 key_len) { uint32 i; uint8 *s; uint8 t, tmp; t = 0; s = ctx->se; assert(key_len > 0 && key_len <= 256); ctx->pose = 1; ctx->posd = 1; ctx->te = 0; ctx->td = 0; memcpy(s, rc4_table, 256); for (i = 0; i < 256; i++) { t += s[i] + key[i % key_len]; SWAP(s[i], s[t]); } memcpy(ctx->sd, s, 256); } void rc4_encrypt(rc4_ctx *ctx, const uint8 *src, uint8 *dst, uint32 len) { uint32 i; uint32 pos; const uint8 *new_src; uint8 *s, *new_dst; uint8 t, tmp; pos = ctx->pose; s = ctx->se; t = ctx->te; new_src = src - pos; new_dst = dst - pos; for (i = pos; i < len + pos; i++) { RC4_CRYPT(); } ctx->pose = i; ctx->te = t; } void rc4_decrypt(rc4_ctx *ctx, const uint8 *src, uint8 *dst, uint32 len) { uint32 i; uint32 pos; const uint8 *new_src; uint8 *s, *new_dst; uint8 t, tmp; pos = ctx->posd; s = ctx->sd; t = ctx->td; new_src = src - pos; new_dst = dst - pos; for (i = pos; i < len + pos; i++) { RC4_CRYPT(); } ctx->posd = i; ctx->td = t; } #ifdef TEST_VECTORS /* * Test vectors from K. Kaukonen and R. Thayer (SSH) Internet Draft * for Arcfour algorithm */ /* Test vectors from [CRYPTLIB] */ static const uint8 pt1[8] = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}; static const uint8 key1[8] = {0x01, 0x23, 0x45, 0x67, 0x89, 0xab, 0xcd, 0xef}; static const uint8 ct1[8] = {0x74, 0x94, 0xc2, 0xe7, 0x10, 0x4b, 0x08, 0x79}; /* Test vectors from [COMMERCE] */ static const uint8 pt2[5] = {0xdc, 0xee, 0x4c, 0xf9, 0x2c}; static const uint8 key2[5] = {0x61, 0x8a, 0x63, 0xd2, 0xfb}; static const uint8 ct2[5] = {0xf1, 0x38, 0x29, 0xc9, 0xde}; /* Test vectors from [SSH ARCFOUR] */ static const uint8 pt3[309] ={ 0x52, 0x75, 0x69, 0x73, 0x6c, 0x69, 0x6e, 0x6e, 0x75, 0x6e, 0x20, 0x6c, 0x61, 0x75, 0x6c, 0x75, 0x20, 0x6b, 0x6f, 0x72, 0x76, 0x69, 0x73, 0x73, 0x73, 0x61, 0x6e, 0x69, 0x2c, 0x20, 0x74, 0xe4, 0x68, 0x6b, 0xe4, 0x70, 0xe4, 0x69, 0x64, 0x65, 0x6e, 0x20, 0x70, 0xe4, 0xe4, 0x6c, 0x6c, 0xe4, 0x20, 0x74, 0xe4, 0x79, 0x73, 0x69, 0x6b, 0x75, 0x75, 0x2e, 0x20, 0x4b, 0x65, 0x73, 0xe4, 0x79, 0xf6, 0x6e, 0x20, 0x6f, 0x6e, 0x20, 0x6f, 0x6e, 0x6e, 0x69, 0x20, 0x6f, 0x6d, 0x61, 0x6e, 0x61, 0x6e, 0x69, 0x2c, 0x20, 0x6b, 0x61, 0x73, 0x6b, 0x69, 0x73, 0x61, 0x76, 0x75, 0x75, 0x6e, 0x20, 0x6c, 0x61, 0x61, 0x6b, 0x73, 0x6f, 0x74, 0x20, 0x76, 0x65, 0x72, 0x68, 0x6f, 0x75, 0x75, 0x2e, 0x20, 0x45, 0x6e, 0x20, 0x6d, 0x61, 0x20, 0x69, 0x6c, 0x6f, 0x69, 0x74, 0x73, 0x65, 0x2c, 0x20, 0x73, 0x75, 0x72, 0x65, 0x20, 0x68, 0x75, 0x6f, 0x6b, 0x61, 0x61, 0x2c, 0x20, 0x6d, 0x75, 0x74, 0x74, 0x61, 0x20, 0x6d, 0x65, 0x74, 0x73, 0xe4, 0x6e, 0x20, 0x74, 0x75, 0x6d, 0x6d, 0x75, 0x75, 0x73, 0x20, 0x6d, 0x75, 0x6c, 0x6c, 0x65, 0x20, 0x74, 0x75, 0x6f, 0x6b, 0x61, 0x61, 0x2e, 0x20, 0x50, 0x75, 0x75, 0x6e, 0x74, 0x6f, 0x20, 0x70, 0x69, 0x6c, 0x76, 0x65, 0x6e, 0x2c, 0x20, 0x6d, 0x69, 0x20, 0x68, 0x75, 0x6b, 0x6b, 0x75, 0x75, 0x2c, 0x20, 0x73, 0x69, 0x69, 0x6e, 0x74, 0x6f, 0x20, 0x76, 0x61, 0x72, 0x61, 0x6e, 0x20, 0x74, 0x75, 0x75, 0x6c, 0x69, 0x73, 0x65, 0x6e, 0x2c, 0x20, 0x6d, 0x69, 0x20, 0x6e, 0x75, 0x6b, 0x6b, 0x75, 0x75, 0x2e, 0x20, 0x54, 0x75, 0x6f, 0x6b, 0x73, 0x75, 0x74, 0x20, 0x76, 0x61, 0x6e, 0x61, 0x6d, 0x6f, 0x6e, 0x20, 0x6a, 0x61, 0x20, 0x76, 0x61, 0x72, 0x6a, 0x6f, 0x74, 0x20, 0x76, 0x65, 0x65, 0x6e, 0x2c, 0x20, 0x6e, 0x69, 0x69, 0x73, 0x74, 0xe4, 0x20, 0x73, 0x79, 0x64, 0xe4, 0x6d, 0x65, 0x6e, 0x69, 0x20, 0x6c, 0x61, 0x75, 0x6c, 0x75, 0x6e, 0x20, 0x74, 0x65, 0x65, 0x6e, 0x2e, 0x20, 0x2d, 0x20, 0x45, 0x69, 0x6e, 0x6f, 0x20, 0x4c, 0x65, 0x69, 0x6e, 0x6f}; static const uint8 key3[16] = { 0x29, 0x04, 0x19, 0x72, 0xfb, 0x42, 0xba, 0x5f, 0xc7, 0x12, 0x77, 0x12, 0xf1, 0x38, 0x29, 0xc9}; static const uint8 ct3[309] = { 0x35, 0x81, 0x86, 0x99, 0x90, 0x01, 0xe6, 0xb5, 0xda, 0xf0, 0x5e, 0xce, 0xeb, 0x7e, 0xee, 0x21, 0xe0, 0x68, 0x9c, 0x1f, 0x00, 0xee, 0xa8, 0x1f, 0x7d, 0xd2, 0xca, 0xae, 0xe1, 0xd2, 0x76, 0x3e, 0x68, 0xaf, 0x0e, 0xad, 0x33, 0xd6, 0x6c, 0x26, 0x8b, 0xc9, 0x46, 0xc4, 0x84, 0xfb, 0xe9, 0x4c, 0x5f, 0x5e, 0x0b, 0x86, 0xa5, 0x92, 0x79, 0xe4, 0xf8, 0x24, 0xe7, 0xa6, 0x40, 0xbd, 0x22, 0x32, 0x10, 0xb0, 0xa6, 0x11, 0x60, 0xb7, 0xbc, 0xe9, 0x86, 0xea, 0x65, 0x68, 0x80, 0x03, 0x59, 0x6b, 0x63, 0x0a, 0x6b, 0x90, 0xf8, 0xe0, 0xca, 0xf6, 0x91, 0x2a, 0x98, 0xeb, 0x87, 0x21, 0x76, 0xe8, 0x3c, 0x20, 0x2c, 0xaa, 0x64, 0x16, 0x6d, 0x2c, 0xce, 0x57, 0xff, 0x1b, 0xca, 0x57, 0xb2, 0x13, 0xf0, 0xed, 0x1a, 0xa7, 0x2f, 0xb8, 0xea, 0x52, 0xb0, 0xbe, 0x01, 0xcd, 0x1e, 0x41, 0x28, 0x67, 0x72, 0x0b, 0x32, 0x6e, 0xb3, 0x89, 0xd0, 0x11, 0xbd, 0x70, 0xd8, 0xaf, 0x03, 0x5f, 0xb0, 0xd8, 0x58, 0x9d, 0xbc, 0xe3, 0xc6, 0x66, 0xf5, 0xea, 0x8d, 0x4c, 0x79, 0x54, 0xc5, 0x0c, 0x3f, 0x34, 0x0b, 0x04, 0x67, 0xf8, 0x1b, 0x42, 0x59, 0x61, 0xc1, 0x18, 0x43, 0x07, 0x4d, 0xf6, 0x20, 0xf2, 0x08, 0x40, 0x4b, 0x39, 0x4c, 0xf9, 0xd3, 0x7f, 0xf5, 0x4b, 0x5f, 0x1a, 0xd8, 0xf6, 0xea, 0x7d, 0xa3, 0xc5, 0x61, 0xdf, 0xa7, 0x28, 0x1f, 0x96, 0x44, 0x63, 0xd2, 0xcc, 0x35, 0xa4, 0xd1, 0xb0, 0x34, 0x90, 0xde, 0xc5, 0x1b, 0x07, 0x11, 0xfb, 0xd6, 0xf5, 0x5f, 0x79, 0x23, 0x4d, 0x5b, 0x7c, 0x76, 0x66, 0x22, 0xa6, 0x6d, 0xe9, 0x2b, 0xe9, 0x96, 0x46, 0x1d, 0x5e, 0x4d, 0xc8, 0x78, 0xef, 0x9b, 0xca, 0x03, 0x05, 0x21, 0xe8, 0x35, 0x1e, 0x4b, 0xae, 0xd2, 0xfd, 0x04, 0xf9, 0x46, 0x73, 0x68, 0xc4, 0xad, 0x6a, 0xc1, 0x86, 0xd0, 0x82, 0x45, 0xb2, 0x63, 0xa2, 0x66, 0x6d, 0x1f, 0x6c, 0x54, 0x20, 0xf1, 0x59, 0x9d, 0xfd, 0x9f, 0x43, 0x89, 0x21, 0xc2, 0xf5, 0xa4, 0x63, 0x93, 0x8c, 0xe0, 0x98, 0x22, 0x65, 0xee, 0xf7, 0x01, 0x79, 0xbc, 0x55, 0x3f, 0x33, 0x9e, 0xb1, 0xa4, 0xc1, 0xaf, 0x5f, 0x6a, 0x54, 0x7f}; #include #include /* void test(const uint8 *pt, const uint8 *ct, uint32 msg_len, const uint8 *key, uint32 key_len) { rc4_ctx ctx; uint8 dst[512]; rc4_ks(&ctx, key, key_len); rc4_encrypt(&ctx, pt, dst, msg_len); if (memcmp(dst, ct, msg_len)) { fprintf(stderr, "Test failed.\n"); exit(EXIT_FAILURE); } rc4_decrypt(&ctx, dst, dst, msg_len); if (memcmp(dst, pt, msg_len)) { fprintf(stderr, "Test failed.\n"); exit(EXIT_FAILURE); } } int main() { printf("RC4 Validation test\n\n"); test(pt1, ct1, sizeof(pt1), key1, sizeof(key1)); printf("Test vector 1: OK\n"); test(pt2, ct2, sizeof(pt2), key2, sizeof(key2)); printf("Test vector 2: OK\n"); test(pt3, ct3, sizeof(pt3), key3, sizeof(key3)); printf("Test vector 3: OK\n"); printf("\nAll tests passed.\n"); return 0; } */ #endif /* TEST_VECTORS */ bibledit-gtk-4.9/src/rc4.h000664 000766 000024 00000002547 12221507140 015507 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ // The code was copied from software copyrighted (©) 2006 Olivier Gay #ifndef RC4_H #define RC4_H typedef unsigned char uint8; typedef unsigned int uint32; #ifdef __cplusplus extern "C" { #endif typedef struct { uint8 se[256], sd[256]; uint32 pose, posd; uint8 te, td; } rc4_ctx; void rc4_ks(rc4_ctx *ctx, const uint8 *key, uint32 key_len); void rc4_encrypt(rc4_ctx *ctx, const uint8 *src, uint8 *dst, uint32 len); void rc4_decrypt(rc4_ctx *ctx, const uint8 *src, uint8 *dst, uint32 len); #ifdef __cplusplus } #endif #endif /* !RC4_H */ bibledit-gtk-4.9/src/readwrite.cpp000664 000766 000024 00000012306 12221507131 017332 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "readwrite.h" #include "gwrappers.h" #include "projectutils.h" #include "books.h" #include "tiny_utilities.h" #include "utilities.h" #include "import.h" void read_write_data (int argc, char *argv[], bool read, bool write) /* Read or writes data to or from a Bible / project. Bibledit-rdwrt can read from or write to Bible data. Syntax: bibledit-rdwrt -r|-w project book chapter|0 fileName Breaking the syntax down we have: First parameter: -r|-w This can be either -r or -w which determines whether the remaining arguments are going to do a "read" operation from the specified Bibledit-Gtk Bible / project, or do a "write" operation to that Bible / project. Second parameter: project This gives the name of the Bibledit-Gtk Bible / project. All we have to do is ensure that the project name we want to access is a valid/existing one. Third parameter: book This is simply the 3-letter book code for the Bible book that is being read/written to. I.e., MAT for Matthew, GEN for Genesis, etc. Fourth parameter: chapter|0 This can be either a chapter number or 0 (zero) for reading/writing either an individual chapter or reading/writing a whole book (when the parameter is 0). Fifth parameter: fileName This is a temporary file name that we assign for our use with bibledit-rdwrt. For a read (-r) operation this fileName argument is the name of the file that will be created by bibledit-rdwrt containing a copy of the whole book (corresponding to the 3-letter code), or that contains the individual chapter contents (of a designated chapter) of an existing Bibledit-Gtk book file in the Bible / project. It should be prefixed with a path us. Since bibledit-rdwrt is a console operation, after AdaptIt calls it using ::wxExecute, it would need to read the resulting temporary file to grab the contents for its use. For a write (-w) operation this fileName argument is the name of the temporary file that bibledit-rdwrt reads to get the text which it then writes to the appropriate Bible / project file. The temporary file can contain the text of a whole book, or just the text of a single chapter for the book specified by the book 3-letter code and the chapter (number) argument. bibledit-rdwrt may exit with 0 on success, or -1 on failure, as it sees fit. It may write to stdout or stderr, as it sees fit. */ { // There should be 5 parameters given. if (argc != 6) { gw_critical ("Read/write data needs 5 parameters"); return; } // First parameter: We already have this in 'read' and 'write'. // Second parameter: project. The project must be existing in Bibledit. ustring project = argv[2]; if (!project_exists (project)) { gw_critical ("Project " + project + " does not exist"); return; } // Third parameter: book. unsigned int book = books_paratext_to_id (argv[3]); if (book == 0) { gw_critical ("Unknown book " + string (argv[3])); return; } if (!project_book_exists (project, book)) { gw_critical ("Book " + string (argv[3]) + " does not exist in project " + project); return; } // Fourth parameter: chapter | 0. // Bibledit-Gtk supports chapter 0. // But here it is different. Chapter 0 means to read/write the whole book, not chapter 0. // A chapter number other than 0 refers to that particular chapter. int chapter = ABS (convert_to_int (argv[4])); if (chapter > 0) { vector chapters = project_get_chapters (project, book); set chapterset (chapters.begin (), chapters.end ()); if (chapterset.find (chapter) == chapterset.end ()) { gw_critical ("Chapter " + convert_to_string (chapter) + " does not exist in project " + project + " book " + string (argv[3])); return; } } // Fifth parameter: The filename to read from or write to. string filename = argv[5]; // At this stage, we know the project, the book, the chapter, // and the filename, and whether to read or write. // Read the data from the project. if (read) { vector data; if (chapter == 0) { data = project_retrieve_book (project, book); } else { data = project_retrieve_chapter (project, book, chapter); } // Store it in file. write_lines (filename, data); // Done. return; } // Write the data to the project. if (write) { vector messages; import_usfm_file (filename, book, project, messages); for (unsigned int i = 0; i < messages.size (); i++) { gw_critical (messages[i]); } } } bibledit-gtk-4.9/src/readwrite.h000664 000766 000024 00000001731 12221507134 017002 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_READWRITE_H #define INCLUDED_READWRITE_H #include "libraries.h" #include #include void read_write_data (int argc, char *argv[], bool read, bool write); #endif bibledit-gtk-4.9/src/reference.cpp000664 000766 000024 00000004641 12221507147 017314 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "reference.h" #include "books.h" #include "utilities.h" #include "bible.h" #include "mapping.h" #include "tiny_utilities.h" Reference::Reference(int dummy) { book = 0; chapter = 0; verse.clear(); } Reference::Reference(unsigned int book_in, unsigned int chapter_in, const ustring & verse_in) { book = book_in; chapter = chapter_in; verse = verse_in; } ustring Reference::human_readable(const ustring & language) // Gives a reference in a human readable format. If no language is given, // it takes the English names of the books. { ustring s; if (language.empty()) s.append(books_id_to_english(book)); else s.append(books_id_to_name(language, book)); s.append(" "); s.append(convert_to_string(chapter)); s.append(":"); s.append(verse); return s; } bool Reference::equals(const Reference & reference) { // See if the references are exactly the same. if (book == reference.book) { if (chapter == reference.chapter) { if (verse == reference.verse) { return true; } else { // See if they overlap, take range and sequence in account. vector < unsigned int >me = verse_range_sequence(verse); vector < unsigned int >he = verse_range_sequence(reference.verse); for (unsigned int m = 0; m < me.size(); m++) { for (unsigned int h = 0; h < he.size(); h++) { if (me[m] == he[h]) return true; } } } } } // No match found: The references differ. return false; } void Reference::assign(const Reference & reference) { book = reference.book; chapter = reference.chapter; verse = reference.verse; } bibledit-gtk-4.9/src/reference.h000664 000766 000024 00000002303 12221507143 016746 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_REFERENCE_H #define INCLUDED_REFERENCE_H #include "libraries.h" class Reference { public: Reference (int dummy); Reference (unsigned int book_in, unsigned int chapter_in, const ustring& verse_in); unsigned int book; unsigned int chapter; ustring verse; ustring human_readable (const ustring& language); bool equals (const Reference& reference); void assign(const Reference& reference); }; #endif bibledit-gtk-4.9/src/referencememory.cpp000644 000766 000024 00000011252 12453001367 020537 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "utilities.h" #include #include "referencememory.h" #include "directories.h" #include #include "sqlite_reader.h" #include "bible.h" #include "date_time_utils.h" #include "gwrappers.h" #include "shell.h" #include "progresswindow.h" #include "settings.h" #include "projectutils.h" #include "books.h" #include "settings.h" #include "versification.h" #include "unixwrappers.h" #include "tiny_utilities.h" #include "maintenance.h" ustring references_memory_database_filename() // Returns the filename of the database. { return gw_build_filename(Directories->get_configuration(), "referencememory.sql1"); } void references_memory_database_verify() // Verifies or creates the database. { ustring filename = references_memory_database_filename(); if (!g_file_test(filename.c_str(), G_FILE_TEST_IS_REGULAR)) { sqlite3 *db; sqlite3_open(filename.c_str(), &db); sqlite3_busy_timeout(db, 1000); sqlite3_exec(db, "create table chapters (book integer, chapter integer);", NULL, NULL, NULL); sqlite3_exec(db, "create table verses (book integer, chapter integer, verse text);", NULL, NULL, NULL); sqlite3_close(db); } } void references_memory_store (const Reference& reference) // Stores a reference into the database. { // Open database. sqlite3 *db; sqlite3_open(references_memory_database_filename().c_str(), &db); sqlite3_busy_timeout(db, 1000); char *sql; // Store the most recent chapter per book. sql = g_strdup_printf("delete from chapters where book = %d;", reference.book); sqlite3_exec(db, sql, NULL, NULL, NULL); g_free(sql); sql = g_strdup_printf("insert into chapters values (%d, %d);", reference.book, reference.chapter); sqlite3_exec(db, sql, NULL, NULL, NULL); g_free(sql); // Store the most recent verse per chapter. sql = g_strdup_printf("delete from verses where book = %d and chapter = %d;", reference.book, reference.chapter); sqlite3_exec(db, sql, NULL, NULL, NULL); g_free(sql); sql = g_strdup_printf("insert into verses values (%d, %d, '%s');", reference.book, reference.chapter, reference.verse.c_str()); sqlite3_exec(db, sql, NULL, NULL, NULL); g_free(sql); // Close database. sqlite3_close(db); // Register this write in the database maintenance system. maintenance_register_database (references_memory_database_filename()); } bool references_memory_retrieve (Reference& reference, bool chapter_switch) // If references are memorized, retrieve these, and return true. // Return false if nothing is memorized, or if nothing is found in the database. { // Bail out if it doesn't remember references. extern Settings * settings; if (!settings->genconfig.remember_verse_per_chapter_get()) return false; // Result of operation. bool result = true; // Open database. sqlite3 *db; sqlite3_open(references_memory_database_filename().c_str(), &db); sqlite3_busy_timeout(db, 1000); char *sql; // Retrieve the chapter number in case the book switched. if (!chapter_switch) { SqliteReader reader(0); sql = g_strdup_printf("select chapter from chapters where book = %d;", reference.book); sqlite3_exec(db, sql, reader.callback, &reader, NULL); g_free(sql); if (reader.ustring0.empty()) { result = false; } if (result) { reference.chapter = convert_to_int (reader.ustring0[0]); } } // Retrieve the verse number based on the chapter that is there. if (result) { SqliteReader reader(0); sql = g_strdup_printf("select verse from verses where book = %d and chapter = %d;", reference.book, reference.chapter); sqlite3_exec(db, sql, reader.callback, &reader, NULL); g_free(sql); if (reader.ustring0.empty()) { result = false; } if (result) { reference.verse = reader.ustring0[0]; } } // Close database. sqlite3_close(db); // Indicate whether the operation was successful. return result; } bibledit-gtk-4.9/src/referencememory.h000664 000766 000024 00000002230 12221507147 020202 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_REFERENCE_MEMORY_H #define INCLUDED_REFERENCE_MEMORY_H #include "libraries.h" #include #include "reference.h" ustring references_memory_database_filename(); void references_memory_database_verify(); void references_memory_store (const Reference& reference); bool references_memory_retrieve (Reference& reference, bool chapter_switch); #endif bibledit-gtk-4.9/src/referenceutils.cpp000644 000766 000024 00000024731 12453001367 020375 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "utilities.h" #include "referenceutils.h" #include "directories.h" #include "constants.h" #include "gwrappers.h" #include "settings.h" #include "books.h" #include "unixwrappers.h" #include "projectutils.h" #include "tiny_utilities.h" #include #include "bible.h" ustring references_hidden_ones_get_filename(const ustring & project) { return gw_build_filename(Directories->get_projects(), project, "hidden-references"); } vector < ustring > references_hidden_ones_load(const ustring& project) // Loads the references that are hidden in this project. { ReadText rt(references_hidden_ones_get_filename(project), true, false); return rt.lines; } void references_hidden_ones_save(const ustring& project, vector < ustring > &references) // Saves the references that are hidden in this project. { write_lines(references_hidden_ones_get_filename(project), references); } bool text_contains_reference(const ustring & text) /* Finds out whether the text looks like a reference. A reference, e.g. Mt.5.5 or Mt.5:5 or John 10:5 follows a certain pattern, while going through it. Some references are given without the bookname, e.g. "10.5". Handle these too. Patterns: - digit, dot/colon, digit. */ { return unix_fnmatch("*[0-9][:,.][0-9]*", text); } bool text_starts_chapter_verse(const ustring & text) /* Returns true if the text starts with a chapter/verse pair. It looks for these patterns: - digit, digit, digit, dot/colon, digit - digit, digit, dot/colon, digit - digit, dot/colon, digit */ { if (unix_fnmatch("[0-9][0-9][0-9][:.][0-9]*", text)) return true; if (unix_fnmatch("[0-9][0-9][:.][0-9]*", text)) return true; if (unix_fnmatch("[0-9][:.][0-9]*", text)) return true; return false; } ReferencesScanner::ReferencesScanner(const ustring & language, int book, const ustring & text) /* This extracts references from the text. It expects a mix of booknames, abbreviated booknames and chapter and text information. language: language of the abbreviations book: currently opened book text: text to process Provides: vector of Reference objects. */ { // If the length of the text is too short for a reference, bail out. if (text.length() < 3) return; // Save and initialize variables. current_book = book; in_chapter_verse_state = false; maximum_book_name_length = 0; // Produce a list of all booknames, both full names and abbreviations, // sorted from longest name to shortest name. // Make a mapping between alle names, full ones and abbreviations, to book ids. { vector < unsigned int >bookids = books_type_to_ids(btUnknown); for (unsigned int i = 0; i < bookids.size(); i++) { ustring bookname; bookname = books_id_to_abbreviation(language, bookids[i]); if (bookname.length() > maximum_book_name_length) maximum_book_name_length = bookname.length(); all_book_names.push_back(bookname); names_or_abbreviations_to_books[bookname] = bookids[i]; bookname = books_id_to_name(language, bookids[i]); if (bookname.length() > maximum_book_name_length) maximum_book_name_length = bookname.length(); all_book_names.push_back(bookname); names_or_abbreviations_to_books[bookname] = bookids[i]; } vector < unsigned int >booklengths; for (unsigned int i = 0; i < all_book_names.size(); i++) { booklengths.push_back(maximum_book_name_length - all_book_names[i].length()); } quick_sort(booklengths, all_book_names, 0, booklengths.size()); } // Process all tokens. for (unsigned int pointer = 0; pointer <= text.length(); pointer++) { // Scan the next token. if (pointer == text.length()) current_ustring_token.clear(); else current_ustring_token = text.substr(pointer, 1); current_unichar_token = g_utf8_get_char(current_ustring_token.c_str()); // Find out whether this new token brings us in a chapter/verse state. bool previous_state = in_chapter_verse_state; if (in_chapter_verse_state) { // If we are in the chapter/verse state we remain in it as long as any of // the following tokens are scanned: any numeral, a dot (.), a comma (,), // a colon (:), or a hyphen (-). // If anything else is scanned, the chapter/verse state is left. // And if a book name starts at the scanned token, then the state if left too. if (g_unichar_isdigit(current_unichar_token)) ; else if (current_ustring_token == ".") ; else if (current_ustring_token == ",") ; else if (current_ustring_token == ":") ; else if (current_ustring_token == "-") ; else in_chapter_verse_state = false; if (in_chapter_verse_state) { ustring chunk_ahead; if (pointer < text.length()) { chunk_ahead = text.substr(pointer, maximum_book_name_length); for (unsigned int i = 0; i < all_book_names.size(); i++) { if (chunk_ahead.find(all_book_names[i]) == 0) { in_chapter_verse_state = false; break; } } } } } else { // If we are not in the chapter/verse state, then if a digit is encountered, // and that digit seems to start a chunk of text that seems to start a reference, // or if the text just preceding our pointer seems to indicate a book, // then we enter the verse/chapter state. if (g_unichar_isdigit(current_unichar_token)) { ustring chunk_ahead; if (pointer < text.length()) { chunk_ahead = text.substr(pointer, 5); in_chapter_verse_state = text_starts_chapter_verse(chunk_ahead); } if (!in_chapter_verse_state) { if (interprete_book() > 0) in_chapter_verse_state = true; } } } // If the end of the chapter/verse state has been reached, interprete it. if (in_chapter_verse_state != previous_state) { if (!in_chapter_verse_state) { interprete(); preceding_text.clear(); chapter_verse_text.clear(); } } // Accumulate some text for the next iteration. if (in_chapter_verse_state) { chapter_verse_text.append(current_ustring_token); } else { preceding_text.append(current_ustring_token); } } } void ReferencesScanner::interprete() { // Interprete the data to find the book. unsigned int book = interprete_book(); if (book) current_book = book; // Interprete the data to find the chapters and verses. interprete_chapters_verses(); } unsigned int ReferencesScanner::interprete_book() // This routine finds the book, basing itself upon the data collected by the scanner. { // Bail out if there is nothing to interprete. In that case the book remains as is. preceding_text = trim(preceding_text); if (preceding_text.empty()) return 0; // Go through the list of book names we have, and see if the book is there. // Note that these books are sorted from long to short for better book matching. // If this were not done, we might find at times that a text like 3 John 3 was // found once at "3 John" and once again at "John", the latter of which is incorrect. for (unsigned int i = 0; i < all_book_names.size(); i++) { if (all_book_names[i].length() > preceding_text.length()) continue; size_t position = preceding_text.find(all_book_names[i]); if (position == string::npos) continue; if (position == (preceding_text.length() - all_book_names[i].length())) { return names_or_abbreviations_to_books[all_book_names[i]]; } } return 0; } void ReferencesScanner::interprete_chapters_verses() // This routine finds the chapters and verses in the scanned text. /* Some possible texts to interprete: Text: 10.1 Interpretation: chapter 10 verse 1. Text: 10:1 Interpretation: chapteer 10 verse 1. Text: 2 Interpretation: chapter 2 Text: 24.1-4 Interpretation: chapter 24 verse 1 to 4. Text: 24.14,15,18 Interpretation: chapter 24 verse 14, verse 15 and verse 18. If we have a case like "Jude 10", then the "10" should be taken as the verse number. In such cases take chapter 1 and verse 10. In case of e.g. Genesis 1, take all verses of Genesis 1. */ { // Change colons to dots. replace_text(chapter_verse_text, ":", "."); // Get the bits before and after the first dot. ustring bit_before_dot; ustring bit_after_dot; size_t position = chapter_verse_text.find("."); if (position == string::npos) { bit_before_dot = chapter_verse_text; chapter_verse_text.clear(); } else { bit_before_dot = chapter_verse_text.substr(0, position); chapter_verse_text.erase(0, ++position); } bit_before_dot = trim(bit_before_dot); bit_after_dot = trim(chapter_verse_text); chapter_verse_text.clear(); // If there is only a "bit before the dot", interprete that properly. if (bit_after_dot.empty()) { interprete_single_text(bit_before_dot); return; } // Interprete the normal case. interprete_verses(bit_before_dot, bit_after_dot); } void ReferencesScanner::interprete_single_text(const ustring & text) { if (books_id_to_one_chapter(current_book)) { interprete_verses("1", text); } else { extern Settings *settings; vector < ustring > verses = project_get_verses(settings->genconfig.project_get(), current_book, convert_to_int(text)); for (unsigned int i = 0; i < verses.size(); i++) { Reference reference(current_book, convert_to_int(text), verses[i]); references.push_back(reference); } } } void ReferencesScanner::interprete_verses(const ustring & chapter, const ustring & verse) { vector < unsigned int >verses = verse_range_sequence(verse); for (unsigned int i = 0; i < verses.size(); i++) { Reference reference(current_book, convert_to_int(chapter), convert_to_string(verses[i])); references.push_back(reference); } } bibledit-gtk-4.9/src/referenceutils.h000664 000766 000024 00000003640 12221507130 020030 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_REFERENCEUTILS_H #define INCLUDED_REFERENCEUTILS_H #include "libraries.h" #include "reference.h" vector references_hidden_ones_load (const ustring& project); void references_hidden_ones_save (const ustring& project, vector & references); bool text_contains_reference (const ustring& text); bool text_starts_chapter_verse (const ustring& text); class ReferencesScanner { public: ReferencesScanner (const ustring& language, int book, const ustring& text); vector references; private: // Available book names. size_t maximum_book_name_length; vector all_book_names; map names_or_abbreviations_to_books; // Scanner and data collection. ustring current_ustring_token; gunichar current_unichar_token; ustring preceding_text; ustring chapter_verse_text; bool in_chapter_verse_state; // Interpreter. unsigned int current_book; void interprete (); unsigned int interprete_book (); void interprete_chapters_verses (); void interprete_single_text (const ustring& text); void interprete_verses (const ustring& chapter, const ustring& verse); }; #endif bibledit-gtk-4.9/src/reporting.cpp000644 000766 000024 00000075113 12453001367 017367 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "reporting.h" #include "projectutils.h" #include "gwrappers.h" #include "tiny_utilities.h" #include "settings.h" #include "versification.h" #include #include "progresswindow.h" #include "htmlwriter.h" #include "date_time_utils.h" #include "books.h" #include "directories.h" #include "utilities.h" #include "planning.h" const gchar *reporting_status_filename() // Gives the base filename of the status file. { return "status"; } ustring reporting_status_filename(const ustring & project, unsigned int book) // Gives the full filename of the filename that has the status information. // project: project // book: book - there is one status file per book. { return gw_build_filename(project_data_directory_book(project, book), reporting_status_filename()); } void reporting_check_tasks_and_durations(vector < ustring > &tasks, vector < double >*durations) // This is a function designed to initialize an empty vector of tasks // and accompanying durations. // If the vector are empty, they get initialized with a defaults. // If the vectors are not of the same size, their sizes will be adjusted. { struct { const char *task; double duration; } default_values[] = { { "First Draft", 2}, { "Self Check", 0.4}, { "Team Check", 0.4}, { "Back Translation", 0.4}, { "Advisor Check", 0.1}, { "First Revision", 0.4}, { "First Village Check", 0.5}, { "Second Revision", 0.4}, { "Second Village Check", 0.5}, { "Third Revision", 0.4}, { "Consultant Check", 0.1}, { "Fourth Revision", 0.4}, { "First Read Through", 0.2}, { "Second Read Through", 0.2}, { "Publish", 0}, { "Post Publish Revision", 0}}; if (tasks.empty()) { vector < ustring > values; for (unsigned int i = 0; i < (sizeof(default_values) / sizeof(*default_values)); i++) { values.push_back(default_values[i].task); } tasks = values; } if (durations) { if (tasks.size() != durations->size()) { durations->clear(); for (unsigned int i = 0; i < tasks.size(); i++) { double duration = 0.5; for (unsigned int i2 = 0; i2 < (sizeof(default_values) / sizeof(*default_values)); i2++) { if (tasks[i] == default_values[i2].task) { duration = default_values[i2].duration; } } durations->push_back(duration); } } } } void reporting_durations_to_percentages(vector < double >&durations, vector < unsigned int >&percentages) // Takes durations, and creates a list of percentages out of that. { // Bail out if there's nothing. if (durations.empty()) return; // Calculate the total duration. double duration = 0; for (unsigned int i = 0; i < durations.size(); i++) { duration += durations[i]; } // Calculate the factor to multiply with to get percentages. double factor = 100 / duration; // Calculate the percentages belonging to each duration. // Calculate the total percentage too. unsigned int total_percentage = 0; percentages.clear(); for (unsigned int i = 0; i < durations.size(); i++) { unsigned int percentage = (unsigned int)round(factor * durations[i]); percentages.push_back(percentage); total_percentage += percentage; } // Correct the list of percentages if the total differs from 100. if (total_percentage == 100) return; if (total_percentage < 100) { for (unsigned int i = 0; i < 100 - total_percentage; i++) { percentages[i % percentages.size()]++; } } if (total_percentage > 100) { for (unsigned int i = 0; i < total_percentage - 100; i++) { unsigned int offset = i % percentages.size(); if (percentages[offset] > 0) { percentages[offset]--; } else { total_percentage++; } } } } unsigned int reporting_calculate_percentage_ready(vector < int >&tasks_done, const vector < unsigned int >&percentages) // Calculates the percentage ready { unsigned int percentage = 0; if (tasks_done.size() == percentages.size()) { for (unsigned int i = 0; i < tasks_done.size(); i++) { if (tasks_done[i] > 0) { percentage += percentages[i]; } } } return percentage; } unsigned int reporting_status_string_to_int(const ustring & status, vector < ustring > *allstatus) // Takes string "status", and returns the offset this string has in "allstatus". { for (unsigned int i = 0; i < allstatus->size(); i++) { if (status == allstatus->at(i)) { return i; } } return 0; } void reporting_derive_parent_status_from_children(unsigned int taskcount, ProjectStatusRecord * parent, vector < ProjectStatusRecord * >children) // Takes pointers to existing status records, and calculates the parent's status // from the children. { // Go through all children and derive the parent's status for each task. for (unsigned int i = 0; i < taskcount; i++) { bool inconsistent = false; int initialstatus = children[0]->tasks_done[i]; for (unsigned int i2 = 1; i2 < children.size(); i2++) { if (children[i2]->tasks_done[i] != initialstatus) inconsistent = true; } if (inconsistent) { parent->tasks_done[i] = -1; } else { if (initialstatus) parent->tasks_done[i] = 1; else parent->tasks_done[i] = 0; } } } void reporting_merge_child_status_into_parent(unsigned int taskcount, unsigned int childnumber, ProjectStatusRecord & parent, const ProjectStatusRecord & child) // Merges a child's status record into a parent. { for (unsigned int i = 0; i < taskcount; i++) { if (childnumber == 0) { parent.tasks_done[i] = child.tasks_done[i]; } else { if (child.tasks_done[i] < 0) parent.tasks_done[i] = -1; if (child.tasks_done[i] != parent.tasks_done[i]) parent.tasks_done[i] = -1; } } } void reporting_derive_children_status_from_parent(unsigned int taskcount, vector < ProjectStatusRecord * >children, ProjectStatusRecord * parent) // Takes pointers to an existing status record, and derives the children's status // from their parent. { // Go through each task of the parent and propagate it to all the children. for (unsigned int i = 0; i < taskcount; i++) { // Get status of this particular task. int status = parent->tasks_done[i]; // If it is inconsistent, do not propagate it. if (status < 0) continue; // Propagate it to all children. for (unsigned int i2 = 0; i2 < children.size(); i2++) { children[i2]->tasks_done[i] = status; } } } ProjectStatusRecord::ProjectStatusRecord(unsigned int tasks_size) // Status record of a verse (or chapter / book / project). // 0 : task not done. // 1 : task done. // -1 : some children have the task done, others have not. { for (unsigned int i = 0; i < tasks_size; i++) { tasks_done.push_back(0); } } unsigned int ProjectStatusRecord::calculate_percentage(const vector < unsigned int >&percentages) { return reporting_calculate_percentage_ready(tasks_done, percentages); } void ProjectStatusRecord::print() { for (unsigned int i = 0; i < tasks_done.size(); i++) cout << tasks_done[i]; cout << endl; } ProjectStatusChapter::ProjectStatusChapter(unsigned int chapter_in, unsigned int highestverse, GKeyFile * keyfile, vector < ustring > *alltasks_in) /* Retrieves the chapter status from the keyfile. An example file would look so: [0] (Indicates chapter 0 in a book). [1] 1=Draft;Read Through; (Indicates that verse 1 has completed tasks "Draft" and "Read Through"). [2] chapter=Draft; (Indicates that all the verses of the chapter have completed task "Draft".) */ { // Save variables. chapter = chapter_in; alltasks = alltasks_in; // Get the status for the whole chapter if available. ProjectStatusRecord chapterrecord(alltasks->size()); bool chapterrecord_available = false; { gsize length; gchar **stringlist = g_key_file_get_string_list(keyfile, convert_to_string(chapter).c_str(), chapter_key(), &length, NULL); if (stringlist) { for (unsigned int i2 = 0; i2 < length; i2++) { for (unsigned int i3 = 0; i3 < alltasks->size(); i3++) { if (stringlist[i2] == alltasks->at(i3)) { chapterrecord.tasks_done[i3] = 1; } } } g_strfreev(stringlist); chapterrecord_available = true; } } // Get status of all verses in the chapter. for (unsigned int i = 0; i <= highestverse; i++) { ProjectStatusRecord statusrecord(alltasks->size()); if (chapterrecord_available) { for (unsigned int i2 = 0; i2 < alltasks->size(); i2++) { statusrecord.tasks_done[i2] = chapterrecord.tasks_done[i2]; } } else { gsize length; gchar **stringlist = g_key_file_get_string_list(keyfile, convert_to_string(chapter).c_str(), convert_to_string(i).c_str(), &length, NULL); if (stringlist) { for (unsigned int i2 = 0; i2 < length; i2++) { for (unsigned int i3 = 0; i3 < alltasks->size(); i3++) { if (stringlist[i2] == alltasks->at(i3)) { statusrecord.tasks_done[i3] = 1; } } } g_strfreev(stringlist); } } status.push_back(statusrecord); } } ProjectStatusRecord ProjectStatusChapter::get() // Gets the status of the entire chapter. // This status is derived from all verses. { // Empty status for the chapter. ProjectStatusRecord statusrecord(alltasks->size()); // Collect pointers to the status record for the children. vector < ProjectStatusRecord * >children_records; for (unsigned int i = 0; i < status.size(); i++) { children_records.push_back(&status[i]); } // Get the chapter's status. reporting_derive_parent_status_from_children(alltasks->size(), &statusrecord, children_records); // Return the chapter's status. return statusrecord; } void ProjectStatusChapter::set(ProjectStatusRecord & state) // Propagates the "state" to all the verses in the chapter. { vector < ProjectStatusRecord * >verses_status; for (unsigned int i = 0; i < status.size(); i++) { verses_status.push_back(&status[i]); } reporting_derive_children_status_from_parent(alltasks->size(), verses_status, &state); } ProjectStatusRecord ProjectStatusChapter::get_verse(unsigned int verse) // Gets the status of a verse. { if (verse < status.size()) return status[verse]; ProjectStatusRecord statusrecord(alltasks->size()); return statusrecord; } void ProjectStatusChapter::set_verse(unsigned int verse, const ProjectStatusRecord & state) // Sets the status of a verse. { if (verse < status.size()) status[verse] = state; } void ProjectStatusChapter::save(GKeyFile * keyfile) // Save the status of the chapter to the keyfile. { // The name of the group. ustring group = convert_to_string(chapter); // Get the whole chapter's status. ProjectStatusRecord chapterrecord = get(); // See if the parent status is consistent. bool chapter_consistent = true; for (unsigned int i = 0; i < chapterrecord.tasks_done.size(); i++) { if (chapterrecord.tasks_done[i] < 0) chapter_consistent = false; } if (chapter_consistent) { // Set the values for the whole chapter at once. // Assemble values to set at this key. vector < ustring > values; for (unsigned int i2 = 0; i2 < chapterrecord.tasks_done.size(); i2++) { if (chapterrecord.tasks_done[i2] > 0) { values.push_back(alltasks->at(i2)); } } // Continue if there is something to save. if (!values.empty()) { // Write the values to the keyfile. gchar **strs = NULL; strs = g_new(gchar *, values.size()); for (unsigned int i2 = 0; i2 < values.size(); i2++) { strs[i2] = g_strdup(values[i2].c_str()); } g_key_file_set_string_list(keyfile, group.c_str(), chapter_key(), (const gchar ** const)strs, values.size()); for (unsigned int i2 = 0; i2 < values.size(); i2++) { g_free(strs[i2]); } g_free(strs); } } else { // Set the values for the individual verses. for (unsigned int i = 0; i < status.size(); i++) { // Key name. ustring name = convert_to_string(i); // Assemble values to set at this key. vector < ustring > values; for (unsigned int i2 = 0; i2 < status[i].tasks_done.size(); i2++) { if (status[i].tasks_done[i2] > 0) { values.push_back(alltasks->at(i2)); } } // Continue if there's nothing to save. if (values.empty()) continue; // Write the values to the keyfile. gchar **strs = NULL; strs = g_new(gchar *, values.size()); for (unsigned int i2 = 0; i2 < values.size(); i2++) { strs[i2] = g_strdup(values[i2].c_str()); } g_key_file_set_string_list(keyfile, group.c_str(), name.c_str(), (const gchar ** const)strs, values.size()); for (unsigned int i2 = 0; i2 < values.size(); i2++) { g_free(strs[i2]); } g_free(strs); } } } const gchar *ProjectStatusChapter::chapter_key() /* The chapter key has been introduced to save space. Without it the status of each verse would be saved per verse. But with this key, if the status of a chapter is consistent, that is, if all verses have completed the same tasks, then the status of the whole chapter is saved at once, using this key. This requires much less space than saving per chapter. And it is much faster reading and writing the status. */ { return "chapter"; } void ProjectStatusChapter::print() { cout << "Status for chapter " << chapter << endl; for (unsigned int i = 0; i < status.size(); i++) { status[i].print(); } } ProjectStatusBook::ProjectStatusBook(const ustring & project_in, unsigned int book_in, vector < ustring > *alltasks_in) { // Save variables. project = project_in; book = book_in; alltasks = alltasks_in; // Versification. extern Settings *settings; ustring versification = settings->projectconfig(project)->versification_get(); // Load the keyfile. GKeyFile *keyfile = g_key_file_new(); g_key_file_load_from_file(keyfile, reporting_status_filename(project, book).c_str(), G_KEY_FILE_NONE, NULL); // Create the chapters in this book. vector < unsigned int >chps = project_get_chapters(project, book); for (unsigned int i = 0; i < chps.size(); i++) { unsigned int highestverse = convert_to_int(versification_get_last_verse(versification, book, chps[i])); if (highestverse == 1) highestverse = 0; ProjectStatusChapter *chapter = new ProjectStatusChapter(chps[i], highestverse, keyfile, alltasks); chapters.push_back(chapter); } // Free the keyfile. g_key_file_free(keyfile); } ProjectStatusBook::~ProjectStatusBook() { for (unsigned int i = 0; i < chapters.size(); i++) { delete chapters[i]; } } ProjectStatusRecord ProjectStatusBook::get() // Gets the status of the entire book. // This status is derived from all chapters. { // Empty status for the book. ProjectStatusRecord statusrecord(alltasks->size()); // Collect pointers to the status record for the children. vector < ProjectStatusRecord > children_records_objects; for (unsigned int i = 0; i < chapters.size(); i++) { ProjectStatusRecord statusrecord = chapters[i]->get(); children_records_objects.push_back(statusrecord); } vector < ProjectStatusRecord * >children_records_pointers; for (unsigned int i = 0; i < children_records_objects.size(); i++) { children_records_pointers.push_back(&children_records_objects[i]); } // Get the book's status. reporting_derive_parent_status_from_children(alltasks->size(), &statusrecord, children_records_pointers); // Return the book's status. return statusrecord; } void ProjectStatusBook::set(ProjectStatusRecord & state) // Sets the status of the entire book. // This status is propagated to all chapters in the book. { for (unsigned int i = 0; i < chapters.size(); i++) { chapters.at(i)->set(state); } } void ProjectStatusBook::save() // Save the status of the book. { // Create new keyfile. GKeyFile *keyfile = g_key_file_new(); // Let every chapter store its own bit in that keyfile. for (unsigned int i = 0; i < chapters.size(); i++) { chapters[i]->save(keyfile); } // Save the file to disk. gchar *data = g_key_file_to_data(keyfile, NULL, NULL); if (data) { g_file_set_contents(reporting_status_filename(project, book).c_str(), data, -1, NULL); g_free(data); } // Free memory. g_key_file_free(keyfile); } void ProjectStatusBook::print() { cout << "Printing status for book " << book << endl; for (unsigned int i = 0; i < chapters.size(); i++) { chapters[i]->print(); } } ProjectStatus::ProjectStatus(const ustring & project_in, const vector < ustring > &alltasks_in, bool gui) { // Save project. project = project_in; alltasks = alltasks_in; // Progress window. ProgressWindow *progresswindow = NULL; if (gui) { progresswindow = new ProgressWindow("Loading status", false); } // Load books in project. vector < unsigned int >bks = project_get_books(project); if (gui) progresswindow->set_iterate(0, 1, bks.size()); for (unsigned int i = 0; i < bks.size(); i++) { if (gui) progresswindow->iterate(); ProjectStatusBook *book = new ProjectStatusBook(project, bks[i], &alltasks); books.push_back(book); } // Destroy possible progresswindow. if (gui) delete progresswindow; } ProjectStatus::~ProjectStatus() { for (unsigned int i = 0; i < books.size(); i++) { delete books[i]; } } ProjectStatusRecord ProjectStatus::get() // Gets the status of the entire project. // This status is derived from all individual books. { // Empty status for the project. ProjectStatusRecord statusrecord(alltasks.size()); // Collect pointers to the status record for the children. vector < ProjectStatusRecord > children_records_objects; for (unsigned int i = 0; i < books.size(); i++) { ProjectStatusRecord statusrecord = books[i]->get(); children_records_objects.push_back(statusrecord); } vector < ProjectStatusRecord * >children_records_pointers; for (unsigned int i = 0; i < children_records_objects.size(); i++) { children_records_pointers.push_back(&children_records_objects[i]); } // Get the project's status. reporting_derive_parent_status_from_children(alltasks.size(), &statusrecord, children_records_pointers); // Return the project's status. return statusrecord; } void ProjectStatus::set(ProjectStatusRecord & state) // Sets the status of the entire project. // This status is set in all books of the project. { for (unsigned int i = 0; i < books.size(); i++) { books.at(i)->set(state); } } void ProjectStatus::save() { for (unsigned int i = 0; i < books.size(); i++) { books[i]->save(); } } void ProjectStatus::print() { cout << "Printing project status " << this << endl; for (unsigned int i = 0; i < books.size(); i++) { books[i]->print(); } } unsigned int reporting_get_percentage_ready_project(ProjectStatus * projectstatus) // Calculates the percentage ready for the whole project. { extern Settings *settings; vector < ustring > tasks = settings->genconfig.project_tasks_names_get(); vector < double >durations; reporting_check_tasks_and_durations(tasks, &durations); vector < unsigned int >percentages; reporting_durations_to_percentages(durations, percentages); unsigned int verse_count = 0; unsigned int accumulated_percentage = 0; for (unsigned int i = 0; i < projectstatus->books.size(); i++) { ProjectStatusBook *projectstatusbook = projectstatus->books[i]; for (unsigned int i = 0; i < projectstatusbook->chapters.size(); i++) { ProjectStatusChapter *projectstatuschapter = projectstatusbook->chapters[i]; for (unsigned int i = 0; i < projectstatuschapter->status.size(); i++) { unsigned int percentage = projectstatuschapter->status[i].calculate_percentage(percentages); verse_count++; accumulated_percentage += percentage; } } } return accumulated_percentage / verse_count; } unsigned int reporting_get_percentage_ready_book(ProjectStatusBook * projectstatusbook) { extern Settings *settings; vector < ustring > tasks = settings->genconfig.project_tasks_names_get(); vector < double >durations; reporting_check_tasks_and_durations(tasks, &durations); vector < unsigned int >percentages; reporting_durations_to_percentages(durations, percentages); unsigned int verse_count = 0; unsigned int accumulated_percentage = 0; for (unsigned int i = 0; i < projectstatusbook->chapters.size(); i++) { ProjectStatusChapter *projectstatuschapter = projectstatusbook->chapters[i]; for (unsigned int i = 0; i < projectstatuschapter->status.size(); i++) { unsigned int percentage = projectstatuschapter->status[i].calculate_percentage(percentages); verse_count++; accumulated_percentage += percentage; } } return accumulated_percentage / verse_count; } ustring reporting_get_task_done_sign(int state) { ustring sign; if (state > 0) sign = "✔"; if (state == 0) sign = "✗"; if (state < 0) sign = "✗ ✔"; return sign; } void reporting_get_tasks_done_per_book(ProjectStatus * projectstatus, vector < ustring > &headers, vector < VectorUstring > &texts) // Produces the tasks completed / undone / partially done for each book. { // Get the available tasks to be done. extern Settings *settings; vector < ustring > tasks = settings->genconfig.project_tasks_names_get(); reporting_check_tasks_and_durations(tasks, NULL); // Put the tasks in the headers. headers = tasks; headers.insert(headers.begin(), ""); for (unsigned int i = 0; i < projectstatus->books.size(); i++) { ProjectStatusBook *projectstatusbook = projectstatus->books[i]; ProjectStatusRecord statusrecord(tasks.size()); statusrecord = projectstatusbook->get(); vector < ustring > cells; cells.push_back(books_id_to_english(projectstatusbook->book)); for (unsigned int i = 0; i < tasks.size(); i++) { int state = statusrecord.tasks_done[i]; cells.push_back(reporting_get_task_done_sign(state)); } texts.push_back(cells); } } void reporting_get_tasks_done_per_chapter(ProjectStatusBook * projectstatusbook, vector < ustring > &headers, vector < VectorUstring > &texts) { // Get the available tasks to be done. extern Settings *settings; vector < ustring > tasks = settings->genconfig.project_tasks_names_get(); reporting_check_tasks_and_durations(tasks, NULL); // Put the tasks in the headers. headers = tasks; headers.insert(headers.begin(), ""); for (unsigned int i = 0; i < projectstatusbook->chapters.size(); i++) { ProjectStatusChapter *projectstatuschapter = projectstatusbook->chapters[i]; ProjectStatusRecord statusrecord(tasks.size()); statusrecord = projectstatuschapter->get(); vector < ustring > cells; cells.push_back(convert_to_string(projectstatuschapter->chapter)); for (unsigned int i = 0; i < tasks.size(); i++) { int state = statusrecord.tasks_done[i]; cells.push_back(reporting_get_task_done_sign(state)); } texts.push_back(cells); } } void reporting_produce_status_report(const ustring & project, bool planning, bool perc_done_project, bool perc_done_book, bool tasks_book, bool tasks_chapter, bool csv_export) // This produces a status report. { // Bail out if there's no project. if (project.empty()) return; // Progress window. ProgressWindow progresswindow("Creating report", false); progresswindow.set_fraction(0.1); // Title and heading. HtmlWriter htmlwriter("Status Report", false, false, true); htmlwriter.heading(1, "Status Report " + project); // Current date. htmlwriter.paragraph("Produced on " + date_time_julian_human_readable(date_time_julian_day_get_current(), true) + "."); // Planning. if (planning) { planning_produce_report(project, htmlwriter); } // Load status data. extern Settings *settings; vector < ustring > tasks = settings->genconfig.project_tasks_names_get(); reporting_check_tasks_and_durations(tasks, NULL); ProjectStatus projectstatus(project, tasks, false); // Percentage complete for whole project. progresswindow.set_fraction(0.2); if (perc_done_project) { // Bar graph. vector < ustring > texts; vector < unsigned int >percentages; texts.push_back(project); unsigned int percentage = reporting_get_percentage_ready_project(&projectstatus); percentages.push_back(percentage); htmlwriter.bargraph("Project Percentage Complete", texts, percentages, ""); htmlwriter.paragraph(""); // CSV export. if (csv_export) { vector < ustring > csv; csv.push_back("\"project\"," + convert_to_string(percentage)); ustring filename = gw_build_filename(Directories->get_temp(), "project_complete.csv"); write_lines(filename, csv); htmlwriter.hyperlinkedparagraph("The above data in csv format", filename); htmlwriter.paragraph(""); } } // Percentage complete for each book. progresswindow.set_fraction(0.3); if (perc_done_book) { vector < ustring > texts; vector < unsigned int >percentages; for (unsigned int i = 0; i < projectstatus.books.size(); i++) { ProjectStatusBook *projectstatusbook = projectstatus.books[i]; texts.push_back(books_id_to_english(projectstatusbook->book)); percentages.push_back(reporting_get_percentage_ready_book(projectstatusbook)); } htmlwriter.bargraph("Books Percentage Complete", texts, percentages, ""); htmlwriter.paragraph(""); // CSV export. if (csv_export) { vector < ustring > csv; for (unsigned int i = 0; i < texts.size(); i++) { csv.push_back("\"" + texts[i] + "\"," + convert_to_string(percentages[i])); } ustring filename = gw_build_filename(Directories->get_temp(), "books_complete.csv"); write_lines(filename, csv); htmlwriter.hyperlinkedparagraph("The above data in csv format", filename); htmlwriter.paragraph(""); } } // Show tasks per book. progresswindow.set_fraction(0.4); if (tasks_book) { vector < ustring > column_headers; vector < VectorUstring > cell_texts; reporting_get_tasks_done_per_book(&projectstatus, column_headers, cell_texts); vector < bool > centers; for (unsigned int i = 0; i < column_headers.size(); i++) { if (i == 0) centers.push_back(false); else centers.push_back(true); } vector < ustring > shortened_column_headers; for (unsigned int i = 0; i < column_headers.size(); i++) { if (i) shortened_column_headers.push_back(convert_to_string(i)); else shortened_column_headers.push_back(""); } vector < VectorUstring > legend; for (unsigned int i = 0; i < column_headers.size(); i++) { vector < ustring > s; s.push_back(column_headers[i]); s.push_back(shortened_column_headers[i]); legend.push_back(s); } column_headers.clear(); htmlwriter.table("Tasks per book - Legend", column_headers, legend, "", NULL, -1); htmlwriter.paragraph(""); htmlwriter.table("Tasks per book - Data", shortened_column_headers, cell_texts, "", ¢ers, -1); htmlwriter.paragraph(""); } // Show tasks per chapter. progresswindow.set_fraction(0.5); if (tasks_chapter) { for (unsigned int i = 0; i < projectstatus.books.size(); i++) { ProjectStatusBook *projectstatusbook = projectstatus.books[i]; vector < ustring > column_headers; vector < VectorUstring > cell_texts; reporting_get_tasks_done_per_chapter(projectstatusbook, column_headers, cell_texts); vector < bool > centers; for (unsigned int i2 = 0; i2 < column_headers.size(); i2++) { if (i2 == 0) centers.push_back(false); else centers.push_back(true); } htmlwriter.table("Tasks per chapter for " + books_id_to_english(projectstatus.books[i]->book), column_headers, cell_texts, "", ¢ers, -1); htmlwriter.paragraph(""); } } } void reporting_get_tasks_undone(ProjectStatus * projectstatus, vector < unsigned int >&books, vector < ustring > &tasks) // Produces the tasks not yet (fully) done for all books. { // Get the available tasks to be done. extern Settings *settings; vector < ustring > alltasks = settings->genconfig.project_tasks_names_get(); reporting_check_tasks_and_durations(alltasks, NULL); // Get the undone (or partially done) tasks. for (unsigned int i = 0; i < projectstatus->books.size(); i++) { ProjectStatusBook *projectstatusbook = projectstatus->books[i]; ProjectStatusRecord statusrecord(tasks.size()); statusrecord = projectstatusbook->get(); for (unsigned int i = 0; i < alltasks.size(); i++) { int state = statusrecord.tasks_done[i]; if (state < 1) { books.push_back(projectstatusbook->book); tasks.push_back(alltasks[i]); } } } } unsigned int reporting_get_task_percentage_complete(ProjectStatus * projectstatus, unsigned int book, const ustring & task) // Returns the percentage complete of a particular task of a book. { unsigned int percentage_complete = 0; extern Settings *settings; vector < ustring > alltasks = settings->genconfig.project_tasks_names_get(); vector < double >durations; reporting_check_tasks_and_durations(alltasks, &durations); for (unsigned int bk = 0; bk < projectstatus->books.size(); bk++) { ProjectStatusBook *projectstatusbook = projectstatus->books[bk]; if (projectstatusbook->book == book) { unsigned int verse_count = 0; unsigned int accumulated_percentage = 0; for (unsigned int i = 0; i < projectstatusbook->chapters.size(); i++) { ProjectStatusChapter *projectstatuschapter = projectstatusbook->chapters[i]; for (unsigned int i = 0; i < projectstatuschapter->status.size(); i++) { ProjectStatusRecord *statusrecord = &projectstatuschapter->status[i]; for (unsigned int i = 0; i < alltasks.size(); i++) { if (task == alltasks[i]) { if (statusrecord->tasks_done[i] > 0) accumulated_percentage += 100; verse_count++; } } } } percentage_complete = accumulated_percentage / verse_count; } } return percentage_complete; } bibledit-gtk-4.9/src/reporting.h000664 000766 000024 00000010341 12221507136 017024 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_REPORTING_H #define INCLUDED_REPORTING_H #include "libraries.h" #include #include "types.h" class ProjectStatusRecord { public: ProjectStatusRecord(unsigned int tasks_size); vector tasks_done; unsigned int calculate_percentage(const vector & percentages); void print(); private: }; const gchar * reporting_status_filename(); ustring reporting_status_filename(const ustring& project, unsigned int book); void reporting_check_tasks_and_durations(vector & tasks, vector * durations); void reporting_durations_to_percentages(vector & durations, vector & percentages); unsigned int reporting_calculate_percentage_ready(vector & tasks_done, const vector & percentages); unsigned int reporting_status_string_to_int(const ustring& status, vector * allstatus); void reporting_derive_parent_status_from_children(unsigned int taskcount, ProjectStatusRecord * parent, vector children); void reporting_merge_child_status_into_parent(unsigned int taskcount, unsigned int childnumber, ProjectStatusRecord& parent, const ProjectStatusRecord& child); void reporting_derive_children_status_from_parent(unsigned int taskcount, vector children, ProjectStatusRecord * parent); class ProjectStatusChapter { public: ProjectStatusChapter(unsigned int chapter_in, unsigned int highestverse, GKeyFile * keyfile, vector * alltasks_in); unsigned int chapter; vector status; ProjectStatusRecord get(); void set(ProjectStatusRecord& state); ProjectStatusRecord get_verse(unsigned int verse); void set_verse(unsigned int verse, const ProjectStatusRecord& state); void save(GKeyFile * keyfile); void print(); private: vector * alltasks; const gchar * chapter_key(); }; class ProjectStatusBook { public: ProjectStatusBook(const ustring& project_in, unsigned int book_in, vector * alltasks_in); ~ProjectStatusBook(); unsigned int book; vector chapters; ProjectStatusRecord get(); void set(ProjectStatusRecord& state); void save(); void print(); private: ustring project; vector * alltasks; }; class ProjectStatus { public: ProjectStatus(const ustring& project_in, const vector & alltasks_in, bool gui); ~ProjectStatus(); vector books; ProjectStatusRecord get(); void set(ProjectStatusRecord& state); void save(); void print(); private: ustring project; vector alltasks; }; unsigned int reporting_get_percentage_ready_project(ProjectStatus * projectstatus); unsigned int reporting_get_percentage_ready_book(ProjectStatusBook * projectstatusbook); ustring reporting_get_task_done_sign(int state); void reporting_get_tasks_done_per_book(ProjectStatus * projectstatus, vector & headers, vector & texts); void reporting_get_tasks_done_per_chapter(ProjectStatusBook * projectstatusbook, vector & headers, vector & texts); void reporting_produce_status_report(const ustring& project, bool planning, bool perc_done_project, bool perc_done_book, bool tasks_book, bool tasks_chapter, bool csv_export); void reporting_get_tasks_undone(ProjectStatus * projectstatus, vector & books, vector & tasks); unsigned int reporting_get_task_percentage_complete(ProjectStatus * projectstatus, unsigned int book, const ustring& task); #endif bibledit-gtk-4.9/src/resource.cpp000664 000766 000024 00000005044 12221507146 017202 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "utilities.h" #include #include "resource.h" #include "settings.h" #include "tiny_utilities.h" #include "gwrappers.h" #include "directories.h" #include "books.h" #include "resource_utils.h" Resource::Resource(GtkWidget * window) : myreference (0) { vbox = gtk_vbox_new(FALSE, 0); gtk_widget_show(vbox); gtk_container_add(GTK_CONTAINER(window), vbox); browser = new WebkitBrowser(vbox); g_signal_connect ((gpointer) browser->button_home, "clicked", G_CALLBACK (on_button_home_clicked), gpointer (this)); } Resource::~Resource() { delete browser; gtk_widget_destroy(vbox); } void Resource::focus() { browser->focus(); } bool Resource::focused() { return browser->focused(); } void Resource::copy() { browser->copy(); } void Resource::go_to(const Reference & reference) { ustring url = url_structure; url = resource_url_enter_reference(url, book_renderer, book_renderer2, reference); browser->go_to(url); myreference.assign (reference); } void Resource::open(const ustring & filename) { mytemplatefile = filename; url_structure = resource_url_get (resource_get_url_constructor(filename), mytemplatefile); book_renderer = resource_get_books(filename); book_renderer2 = resource_get_books2(filename); homepage = resource_url_get(resource_get_home_page(filename), mytemplatefile); focus(); } ustring Resource::template_get() { return mytemplatefile; } time_t Resource::last_focused_time() { return browser->last_focused_time; } void Resource::on_button_home_clicked (GtkButton *button, gpointer user_data) { ((Resource *) user_data)->on_button_home(); } void Resource::on_button_home () { ustring url = resource_url_enter_reference(homepage, book_renderer, book_renderer2, myreference); browser->go_to(url); } bibledit-gtk-4.9/src/resource.h000664 000766 000024 00000003125 12221507140 016637 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_RESOURCE_H #define INCLUDED_RESOURCE_H #include "libraries.h" #include #include #include "reference.h" #include "types.h" #include "webkitbrowser.h" class Resource { public: Resource(GtkWidget * window); ~Resource(); void focus(); bool focused(); void copy(); void go_to(const Reference& reference); ustring template_get(); void open(const ustring& filename); time_t last_focused_time(); private: GtkWidget *vbox; public: WebkitBrowser * browser; private: ustring mytemplatefile; ustring url_structure; map book_renderer; map book_renderer2; Reference myreference; static void on_button_home_clicked (GtkButton *button, gpointer user_data); void on_button_home (); ustring homepage; }; #endif bibledit-gtk-4.9/src/resource_conversion_utils.cpp000664 000766 000024 00000012112 12221507140 022653 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "resource_conversion_utils.h" #include "tiny_utilities.h" #include "gwrappers.h" #include "progresswindow.h" #include "roman.h" const gchar *resource_conversion_type_to_text(ResourceConversionType type) { switch (type) { case rctChapterStartsAtPatternVerseOneStartsAtChapterVerseStartsAtPattern: return "Chapter starts at a pattern, verse 1 starts at chapter, verse starts at a pattern"; case rctEnd: return ""; } return ""; } ResourceConversionType resource_conversion_text_to_type(const ustring & text) { for (unsigned int i = 0; i < rctEnd; i++) { if (text == resource_conversion_type_to_text(ResourceConversionType(i))) return (ResourceConversionType) i; } return rctEnd; } const gchar *resource_conversion_anchor_prefix() // Every anchor that the resource converter inserts start with this prefix. { return "be_anc_"; } ustring resource_conversion_create_anchor_chapter_verse(unsigned int chapter, unsigned int verse) // Create an anchor for the resource converter that includes chapter and verse. { ustring anchor; anchor.append(""); return anchor; } void resource_conversion_insert_anchors(vector < ustring > &lines, const ustring & chapter_prefix, unsigned int chapter_pattern, const ustring & chapter_suffix, const ustring & verse_prefix, unsigned int verse_pattern, const ustring & verse_suffix) // Inserts the appropriate anchors in the lines. { // Chapter patterns to look for. vector < ustring > chapter_patterns; for (unsigned int i = 0; i <= 150; i++) { chapter_patterns.push_back(chapter_prefix + integer_or_roman_numeral(i, chapter_pattern) + chapter_suffix); } // Verse patterns to look for. vector < ustring > verse_patterns; for (unsigned int i = 0; i <= 150; i++) { verse_patterns.push_back(verse_prefix + integer_or_roman_numeral(i, verse_pattern) + verse_suffix); } // Current chapter. unsigned int current_chapter = 0; // Go through all the lines, show progress. ProgressWindow progresswindow("Processing...", false); progresswindow.set_iterate(0, 1, lines.size()); for (unsigned int i = 0; i < lines.size(); i++) { progresswindow.iterate(); // Insert chapter and verse 1 anchors. for (unsigned int i2 = 0; i2 < chapter_patterns.size(); i2++) { size_t pos = lines[i].find(chapter_patterns[i2]); if (pos != string::npos) { current_chapter = i2; pos += chapter_prefix.length(); lines[i].insert(pos, resource_conversion_create_anchor_chapter_verse(current_chapter, 1)); } } // Insert verse anchors. for (unsigned int i2 = 0; i2 < verse_patterns.size(); i2++) { size_t pos = 0; do { pos = lines[i].find(verse_patterns[i2], pos); if (pos != string::npos) { unsigned int verse = i2; pos += verse_prefix.length(); ustring anchor = resource_conversion_create_anchor_chapter_verse(current_chapter, verse); lines[i].insert(pos, anchor); pos += anchor.length(); pos += verse_patterns[i2].length(); pos -= verse_prefix.length(); } } while (pos != string::npos); } } } void resource_conversion_remove_anchors(vector < ustring > &lines) // This removes any anchors that were inserted by the resource converter. // This is so as to prevent double anchors from coming in. { // The anchor prefix and suffix to look for. This looks like: // // The "1" being the chapter, and the "15" being the verse. ustring prefix = resource_conversion_create_anchor_chapter_verse(0, 0); ustring suffix(prefix); size_t pos = prefix.find("0"); prefix.erase(pos, 1000); pos = suffix.find_last_of("0"); pos++; suffix.erase(0, pos); // Go through all the lines, erasing all relevant anchors. for (unsigned int i = 0; i < lines.size(); i++) { size_t pos = 0; do { pos = lines[i].find(prefix, pos); if (pos != string::npos) { size_t pos2 = lines[i].find(suffix, pos); if (pos2 != string::npos) { lines[i].erase(pos, pos2 - pos + suffix.length()); } else { pos++; } } } while (pos != string::npos); } } bibledit-gtk-4.9/src/resource_conversion_utils.h000664 000766 000024 00000003165 12221507143 022333 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_RESOURCE_CONVERSION_UTILS_H #define INCLUDED_RESOURCE_CONVERSION_UTILS_H #include "libraries.h" #include #include "types.h" const gchar * resource_conversion_type_to_text (ResourceConversionType type); ResourceConversionType resource_conversion_text_to_type (const ustring& text); const gchar * resource_conversion_anchor_prefix (); ustring resource_conversion_create_anchor_chapter_verse (unsigned int chapter, unsigned int verse); void resource_conversion_insert_anchors (vector & lines, const ustring& chapter_prefix, unsigned int chapter_pattern, const ustring& chapter_suffix, const ustring& verse_prefix, unsigned int verse_pattern, const ustring& verse_suffix); void resource_conversion_remove_anchors (vector & lines); #endif bibledit-gtk-4.9/src/resource_utils.cpp000644 000766 000024 00000024772 12453001367 020432 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "resource_utils.h" #include "directories.h" #include "gwrappers.h" #include "unixwrappers.h" #include "utilities.h" #include "books.h" #include "settings.h" #include "html.h" #include "tiny_utilities.h" #include "dialoglistview.h" #include "gtkwrappers.h" ustring resource_viewer_directory() { return gw_build_filename(Directories->get_temp(), "resource_viewer"); } void resource_viewer_ensure_directory() // Ensures that the working directory for the resource viewer is there. { ustring directory = resource_viewer_directory(); if (!g_file_test(directory.c_str(), G_FILE_TEST_IS_DIR)) { gw_mkdir_with_parents(directory); } } ustring resource_viewer_reference_html_filename() { ustring filename("bibledit_resource_viewer_reference.html"); return filename; } ustring resource_viewer_main_html_filename() { ustring filename("bibledit_resource_viewer_main.html"); return filename; } ustring resource_template_ini () { return "resource-template.ini"; } ustring resource_viewer_produce_anchor(unsigned int book, unsigned int chapter, unsigned int verse) // Produces the anchor, e.g.: Matthew_1_1 or Song_of_Solomon_2_2. { ustring anchor(books_id_to_english(book) + "_" + convert_to_string(chapter) + "_" + convert_to_string(verse)); replace_text(anchor, " ", "_"); return anchor; } bool resource_add_name_to_deleted_ones_if_standard_template(const ustring & filename) /* If the filename given is a standard template, it adds the name of the resource to the list of deleted ones and then returns true. */ { ustring directory = gw_path_get_dirname(filename); if (directory == Directories->get_package_data()) { ustring deleted_filename = gw_build_filename(Directories->get_resources(), "deleted"); ReadText rt(deleted_filename, true, true); ustring title = resource_get_title(filename); rt.lines.push_back(title); write_lines(deleted_filename, rt.lines); return true; } return false; } vector < ustring > resource_get_resources(vector < ustring > &filenames, bool list_deleted_ones) { // Storage. vector < ustring > resources; filenames.clear(); // Read the user's templates. ReadDirectories rd(Directories->get_resources(), "", ""); for (unsigned int i = 0; i < rd.directories.size(); i++) { ustring filename = gw_build_filename(Directories->get_resources(), rd.directories[i], resource_template_ini ()); if (g_file_test(filename.c_str(), G_FILE_TEST_IS_REGULAR)) { filenames.push_back(filename); resources.push_back(resource_get_title(filename)); } } // Make a list of "deleted" resources and add to it the unwanted ones. // Add the user's resources to these too in order that the user's resources // override any templates named the same. ustring deleted_filename; if (!list_deleted_ones) deleted_filename = gw_build_filename(Directories->get_resources(), "deleted"); ReadText rt(deleted_filename, true, true); set < ustring > unwanted_ones(rt.lines.begin(), rt.lines.end()); for (unsigned int i = 0; i < resources.size(); i++) { unwanted_ones.insert(resources[i]); } // Add some standard templates to the "deleted" resource. Reason: // Some standard templates have been added that come with Bibledit. // These templates reference material that is not available by default, // but requires user action to install that. To facilitate easy creation // if these resources by the user, some templates have been added. These // templates are not for display, but only to base a new template upon. // Therefore these templates should not normally be visible, only when used // to create a new resource based upon these. if (!list_deleted_ones) { unwanted_ones.insert("NetBible"); } // Read the templates that come with Bibledit. ReadFiles rf(Directories->get_package_data(), "resource", ".ini"); for (unsigned int i = 0; i < rf.files.size(); i++) { ustring filename = gw_build_filename(Directories->get_package_data(), rf.files[i]); ustring title = resource_get_title(filename); if (unwanted_ones.find(title) != unwanted_ones.end()) continue; filenames.push_back(filename); resources.push_back(title); } // Sort them. quick_sort(resources, filenames, 0, resources.size()); // Give resources. return resources; } ustring resource_get_title(const ustring & templatefile) { ustring title; GKeyFile *keyfile = g_key_file_new(); if (g_key_file_load_from_file(keyfile, templatefile.c_str(), G_KEY_FILE_NONE, NULL)) { gchar *value; value = g_key_file_get_string(keyfile, resource_template_general_group(), resource_template_title_key(), NULL); if (value) { title = value; g_free(value); } g_key_file_free(keyfile); } return title; } ustring resource_get_home_page(const ustring & templatefile) { ustring home_page; GKeyFile *keyfile = g_key_file_new(); if (g_key_file_load_from_file(keyfile, templatefile.c_str(), G_KEY_FILE_NONE, NULL)) { gchar *value; value = g_key_file_get_string(keyfile, resource_template_general_group(), resource_template_home_page_key(), NULL); if (value) { home_page = value; g_free(value); } g_key_file_free(keyfile); } return home_page; } ustring resource_get_url_constructor(const ustring & templatefile) { ustring url_constructor; GKeyFile *keyfile = g_key_file_new(); if (g_key_file_load_from_file(keyfile, templatefile.c_str(), G_KEY_FILE_NONE, NULL)) { gchar *value; value = g_key_file_get_string(keyfile, resource_template_general_group(), resource_template_url_constructor_key(), NULL); if (value) { url_constructor = value; g_free(value); } g_key_file_free(keyfile); } return url_constructor; } const gchar *resource_url_constructor_book() { return ""; } const gchar *resource_url_constructor_book2() { return ""; } const gchar *resource_url_constructor_chapter() { return ""; } const gchar *resource_url_constructor_verse() { return ""; } const gchar *resource_template_general_group() { return "general"; } const gchar *resource_template_books_group() { return "books"; } const gchar *resource_template_books2_group() { return "books2"; } const gchar *resource_template_title_key() { return "title"; } const gchar *resource_template_home_page_key() { return "home page"; } const gchar *resource_template_url_constructor_key() { return "url constructor"; } map < unsigned int, ustring > resource_get_books(const ustring & templatefile) { map < unsigned int, ustring > books; GKeyFile *keyfile = g_key_file_new(); if (g_key_file_load_from_file(keyfile, templatefile.c_str(), G_KEY_FILE_NONE, NULL)) { vector < unsigned int >ids = books_type_to_ids(btUnknown); for (unsigned int i = 0; i < ids.size(); i++) { ustring english_name = books_id_to_english(ids[i]); gchar *value; value = g_key_file_get_string(keyfile, resource_template_books_group(), english_name.c_str(), NULL); if (value) { books[i] = value; g_free(value); } } g_key_file_free(keyfile); } return books; } map < unsigned int, ustring > resource_get_books2(const ustring & templatefile) { map < unsigned int, ustring > books2; GKeyFile *keyfile = g_key_file_new(); if (g_key_file_load_from_file(keyfile, templatefile.c_str(), G_KEY_FILE_NONE, NULL)) { vector < unsigned int >ids = books_type_to_ids(btUnknown); for (unsigned int i = 0; i < ids.size(); i++) { ustring english_name = books_id_to_english(ids[i]); gchar *value; value = g_key_file_get_string(keyfile, resource_template_books2_group(), english_name.c_str(), NULL); if (value) { books2[i] = value; g_free(value); } } g_key_file_free(keyfile); } return books2; } const gchar *resource_template_anchors_group() { return "anchors"; } const gchar *resource_file_prefix() { return "file://"; } ustring resource_url_get(const ustring& url, const ustring& templatefile) /* Some urls are given as full ones, e.g. http://bibledit.org. These don't need any modification. Other urls are given as plain filenames only. It is assumed for these that they are given relative to the resource directory where these reside. These need to be modified so as to include the full path and the file:// prefix. */ { ustring modified_url(url); if (url.find ("http") != 0) { ustring path = gw_path_get_dirname(templatefile); modified_url = resource_file_prefix(); modified_url.append(gw_build_filename(path, url)); } return modified_url; } ustring resource_url_enter_reference(const ustring& constructor, map & books, map & books2, const Reference& reference) { ustring url (constructor); replace_text(url, resource_url_constructor_book(), books[reference.book]); replace_text(url, resource_url_constructor_book2(), books2[reference.book]); replace_text(url, resource_url_constructor_chapter(), convert_to_string(reference.chapter)); replace_text(url, resource_url_constructor_verse(), number_in_string(reference.verse)); return url; } ustring resource_select (ustring * filename) // This allows the user to select a resource. // It returns the name of the resource that was selected. // filename: If a pointer is passed, it give the filename of the selected resource. { ustring resource; vector filenames; vector resources = resource_get_resources(filenames, false); quick_sort(resources, filenames, 0, resources.size()); ListviewDialog dialog("Open resource", resources, "", false, NULL); if (dialog.run() == GTK_RESPONSE_OK) { resource = dialog.focus; } if (filename) { for (unsigned int i = 0; i < resources.size(); i++) { if (resource == resources[i]) { * filename = filenames[i]; } } } return resource; } bibledit-gtk-4.9/src/resource_utils.h000664 000766 000024 00000004606 12221507141 020065 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_RESOURCE_UTILS_H #define INCLUDED_RESOURCE_UTILS_H #include "libraries.h" #include #include "reference.h" #include "types.h" ustring resource_template_ini (); ustring resource_viewer_produce_anchor(unsigned int book, unsigned int chapter, unsigned int verse); bool resource_add_name_to_deleted_ones_if_standard_template(const ustring& filename); vector resource_get_resources(vector & filenames, bool list_deleted_ones); const gchar * resource_url_constructor_book(); const gchar * resource_url_constructor_book2(); const gchar * resource_url_constructor_chapter(); const gchar * resource_url_constructor_verse(); const gchar * resource_file_prefix(); ustring resource_url_get(const ustring& url, const ustring& templatefile); ustring resource_url_enter_reference(const ustring& constructor, map & books, map & books2, const Reference& reference); const gchar * resource_template_general_group(); const gchar * resource_template_title_key(); ustring resource_get_title(const ustring& templatefile); const gchar * resource_template_home_page_key(); ustring resource_get_home_page(const ustring& templatefile); const gchar * resource_template_url_constructor_key(); ustring resource_get_url_constructor(const ustring& templatefile); const gchar * resource_template_books_group(); map resource_get_books(const ustring& templatefile); const gchar * resource_template_books2_group(); map resource_get_books2(const ustring& templatefile); ustring resource_select (ustring * filename); #endif bibledit-gtk-4.9/src/restore.cpp000644 000766 000024 00000012322 12453001367 017032 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "restore.h" #include "gwrappers.h" #include "statistics.h" #include "utilities.h" #include "projectutils.h" #include "books.h" #include "unixwrappers.h" #include "directories.h" #include "shell.h" #include "gtkwrappers.h" #include "tiny_utilities.h" #include "snapshots.h" #include "export_utils.h" #include "notes_utils.h" #include "resource_utils.h" void restore_project (const ustring& unpack_directory, const ustring& bible, vector & feedback) // Restores a project. { // Check file signature. if (!restore_file_present (unpack_directory, "data", feedback)) { return; } // Restore. project_create_restore (bible, unpack_directory); // Feedback to user. feedback.push_back ("The file was restored to Bible " + bible); } void restore_notes (const ustring& unpack_directory, vector & feedback) { // Check file signature. if (!restore_file_present (unpack_directory, "categories", feedback)) { return; } // If there are notes in the current database, ask whether these should be overwritten. unsigned int current_count = notes_count (); feedback.push_back ("Notes available before restore: " + convert_to_string (current_count)); if (current_count > 0) { ustring question = "Currently Bibledit-Gtk has " + convert_to_string (current_count) + " notes. Would you like to overwrite these?"; if (gtkw_dialog_question(NULL, question, GTK_RESPONSE_NO) == GTK_RESPONSE_YES) { feedback.push_back ("Restore has overwritten the existing notes"); } else { feedback.push_back ("Restore was cancelled"); return; } } // If so, move everything into place. unix_rmdir (Directories->get_notes ()); unix_mv (unpack_directory, Directories->get_notes ()); // Run upgrade. notes_storage_verify(); // Give feedback about what has happened. feedback.push_back ("Notes were restored"); } void restore_resource (const ustring& unpack_directory, vector & feedback) { // Check file signature. if (!restore_file_present (unpack_directory, "resource-template.ini", feedback)) { return; } // Get the Resource's template filename. ustring filename = gw_build_filename (unpack_directory, resource_template_ini ()); // Get the Resource's name. ustring resource = resource_get_title (filename); if (resource.empty ()) { feedback.push_back ("No resource found"); return; } // Does this resource already exist? vector filenames; vector resources = resource_get_resources (filenames, false); set resource_set (resources.begin (), resources.end ()); if (resource_set.find (resource) != resource_set.end ()) { feedback.push_back ("This resource already exists"); return; } // Find a non-existing directory where to restore the resource to. ustring restore_directory = gw_build_filename (Directories->get_resources (), resource); while (g_file_test (restore_directory.c_str(), G_FILE_TEST_EXISTS)) { restore_directory.append ("1"); } // Move the resource in place. unix_mv (unpack_directory, restore_directory); // Give feedback about what has happened. feedback.push_back ("Resource was restored"); } void restore_all_stage_one (const ustring& unpack_directory, vector & feedback) // Restore everything: stage one. { // Check file signature. if (!restore_file_present (unpack_directory, "projects", feedback)) { return; } // Move the directory to the temporal place. unix_rmdir (Directories->get_restore ()); unix_mv (unpack_directory, Directories->get_restore ()); // Give feedback about what has transpired. feedback.push_back ("Everything was restored"); feedback.push_back ("Changes will only take effect after restart"); } void restore_all_stage_two () // Restore everything: second and last stage. { if (g_file_test (Directories->get_restore ().c_str(), G_FILE_TEST_IS_DIR)) { gw_message ("Restoring everything"); unix_rmdir (Directories->get_root ()); unix_mv (Directories->get_restore (), Directories->get_root ()); } } bool restore_file_present (const ustring& directory, const gchar * filename, vector & feedback) // Returns true if a file or directory exists. { ustring file = gw_build_filename (directory, filename); bool present = g_file_test (file.c_str(), G_FILE_TEST_EXISTS); if (!present) { feedback.push_back ("The file to restore does not contain valid data"); feedback.push_back ("Nothing was restored"); } return present; } bibledit-gtk-4.9/src/restore.h000664 000766 000024 00000002603 12221507146 016501 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_RESTORE_H #define INCLUDED_RESTORE_H #include "libraries.h" #include #include void restore_project (const ustring& unpack_directory, const ustring& bible, vector & feedback); void restore_notes (const ustring& unpack_directory, vector & feedback); void restore_resource (const ustring& unpack_directory, vector & feedback); void restore_all_stage_one (const ustring& unpack_directory, vector & feedback); void restore_all_stage_two (); bool restore_file_present (const ustring& directory, const gchar * filename, vector & feedback); #endif bibledit-gtk-4.9/src/robinson.cpp000664 000766 000024 00000035210 12221507143 017177 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "robinson.h" #include "utilities.h" bool robinson_define_parsing_person (ustring& definition, ustring& parsing) // This looks in the "parsing" whether the person is given. // If so, it adds the description to the "definition" and removes the relevant code from the "parsing". // It returns true if a person was found. { ustring person = parsing.substr (0, 1); bool person_found = true; if (person == "1") { definition.append (" first person"); } else if (person == "2") { definition.append (" second person"); } else if (person == "3") { definition.append (" third person"); } else { person_found = false; } if (person_found) { parsing.erase (0, 1); } return person_found; } void robinson_define_parsing_case (ustring& definition, ustring& parsing) // Parse the case. { ustring case_code = parsing.substr (0, 1); parsing.erase (0, 1); if (case_code == "N") { definition.append (" nominative"); } else if (case_code == "V") { definition.append (" vocative"); } else if (case_code == "G") { definition.append (" genitive"); } else if (case_code == "D") { definition.append (" dative"); } else if (case_code == "A") { definition.append (" accusative"); } else { definition.append (" case \"" + case_code + "\""); } } void robinson_define_parsing_number (ustring& definition, ustring& parsing) // Parse the number. { ustring number = parsing.substr (0, 1); parsing.erase (0, 1); if (number == "S") { definition.append (" singular"); } else if (number == "P") { definition.append (" plural"); } else { if (!number.empty()) { definition.append (" number \"" + number + "\""); } } } void robinson_define_parsing_gender (ustring& definition, ustring& parsing) // Parse the gender. { ustring gender = parsing.substr (0, 1); parsing.erase (0, 1); if (gender == "M") { definition.append (" masculine"); } else if (gender == "F") { definition.append (" feminine"); } else if (gender == "N") { definition.append (" neuter"); } else { if (!gender.empty()) { definition.append (" gender \"" + gender + "\""); } } } bool robinson_define_parsing_suffix (ustring& definition, ustring& parsing, bool silent) // Parse the suffix. // Returns true if it interpreted the parsing. { /* Between the 2000 version of and the , he changed this. In the 2000 Maurice Robinson's coding manual version, there were two interpretations of a final -C (comparative or crasis). In the 2004 version -C should always indicate comparative and -K should indicate crasis. There may be old content that uses -C for crasis, but at the time of writing this Bibledit does not use it. */ bool known_parsing = true; if (parsing == "S") { definition.append (" superlative"); } else if (parsing == "C") { definition.append (" comparative"); } else if (parsing == "ABB") { definition.append (" abbreviated"); } else if (parsing == "I") { definition.append (" interrogative"); } else if (parsing == "N") { definition.append (" negative"); } else if (parsing == "K") { definition.append (" merged by crasis with a second word; declension is that of the second word"); } else if (parsing == "ATT") { definition.append (" Attic Greek form"); } else if (parsing == "LI") { definition.append (" letter indeclinable"); } else if (parsing == "PRI") { definition.append (" proper indeclinable"); } else if (parsing == "OI") { definition.append (" other indeclinable"); } else if (parsing == "NUI") { definition.append (" numeral indeclinable"); } else if (parsing == "AP") { definition.append (" apocopated form"); } else if (parsing == "A") { definition.append (" Aeolic"); } else if (parsing == "M") { definition.append (" middle significance"); } else { if (!silent) { if (!parsing.empty()) { definition.append (" unknown suffix \"" + parsing + "\""); } } known_parsing = false; } return known_parsing; } void robinson_define_parsing_tense (ustring& definition, ustring& parsing) // Parse the tense of verbs. { ustring number = parsing.substr (0, 1); if (number == "2") { definition.append (" second"); parsing.erase (0, 1); } ustring tense = parsing.substr (0, 1); bool remove_code = true; if (tense == "P") { definition.append (" present"); } else if (tense == "I") { definition.append (" imperfect"); } else if (tense == "F") { definition.append (" future"); } else if (tense == "A") { definition.append (" aorist"); } else if (tense == "R") { definition.append (" perfect"); } else if (tense == "L") { definition.append (" pluperfect"); } else if (tense == "X") { definition.append (" no tense stated (adverbial imperative)"); } else { remove_code = false; } if (remove_code) { parsing.erase (0, 1); } } void robinson_define_parsing_voice (ustring& definition, ustring& parsing) // Parse the voice of verbs. { ustring voice = parsing.substr (0, 1); bool remove_code = true; if (voice == "A") { definition.append (" active"); } else if (voice == "M") { definition.append (" middle"); } else if (voice == "P") { definition.append (" passive"); } else if (voice == "E") { definition.append (" middle or passive"); } else if (voice == "D") { definition.append (" middle deponent"); } else if (voice == "O") { definition.append (" passive deponent"); } else if (voice == "N") { definition.append (" middle or passive deponent"); } else if (voice == "X") { definition.append (" no voice stated"); } else if (voice == "Q") { definition.append (" impersonal active"); } else { remove_code = false; } if (remove_code) { parsing.erase (0, 1); } } void robinson_define_parsing_mood (ustring& definition, ustring& parsing) // Parse the mood of verbs. { ustring mood = parsing.substr (0, 1); bool remove_code = true; if (mood == "I") { definition.append (" indicative"); } else if (mood == "S") { definition.append (" subjunctive"); } else if (mood == "O") { definition.append (" optative"); } else if (mood == "M") { definition.append (" imperative"); } else if (mood == "N") { definition.append (" infinitive"); } else if (mood == "P") { definition.append (" participle"); } else { remove_code = false; } if (remove_code) { parsing.erase (0, 1); } } bool robinson_define_parsing (ustring parsing, ustring& definition) // Tries to define a Robinson parsing. // Returns true if it managed. { // The parsing should be long enough. if (parsing.length() < 3) return false; // Cut the parsing on the hyphens. Parse parse (parsing, false, "-"); // Get the various bits of the parsing. ustring bit0, bit1, bit2, bit3; if (parse.words.size() > 0) bit0 = parse.words[0]; if (parse.words.size() > 1) bit1 = parse.words[1]; if (parse.words.size() > 2) bit2 = parse.words[2]; if (parse.words.size() > 3) bit3 = parse.words[3]; if (bit0 == "A") { definition = "adjective"; if (!robinson_define_parsing_suffix (definition, bit1, true)) { robinson_define_parsing_case (definition, bit1); robinson_define_parsing_number (definition, bit1); robinson_define_parsing_gender (definition, bit1); robinson_define_parsing_suffix (definition, bit2, false); } else { robinson_define_parsing_suffix (definition, bit2, true); } return true; } if (bit0 == "ADV") { definition = "adverb or adverb and particle combined"; robinson_define_parsing_suffix (definition, bit1, false); return true; } if (parsing == "ARAM") { definition = "indeclinable Aramaic transliterated word"; return true; } if (bit0 == "C") { definition = "reciprocal pronoun"; robinson_define_parsing_case (definition, bit1); robinson_define_parsing_number (definition, bit1); robinson_define_parsing_gender (definition, bit1); robinson_define_parsing_suffix (definition, bit2, false); return true; } if (bit0 == "COND") { definition = "conditional particle or conjunction"; if (bit1 == "C") { bit1 = "K"; } robinson_define_parsing_suffix (definition, bit1, false); return true; } if (bit0 == "CONJ") { definition = "conjunction or conjunctive particle"; return true; } if (bit0 == "D") { definition = "demonstrative pronoun"; robinson_define_parsing_case (definition, bit1); robinson_define_parsing_number (definition, bit1); robinson_define_parsing_gender (definition, bit1); if (bit2 == "C") { bit2 = "K"; } robinson_define_parsing_suffix (definition, bit2, false); robinson_define_parsing_suffix (definition, bit2, false); return true; } if (bit0 == "F") { definition = "reflexive pronoun"; // It has person 1,2,3 added, e.g. F-3ASF. robinson_define_parsing_person (definition, bit1); robinson_define_parsing_case (definition, bit1); robinson_define_parsing_number (definition, bit1); robinson_define_parsing_gender (definition, bit1); if (bit2 == "C") { bit2 = "K"; } robinson_define_parsing_suffix (definition, bit2, false); return true; } if (bit0 == "HEB") { definition = "indeclinable Hebrew transliterated word"; return true; } if (bit0 == "I") { definition = "interrogative pronoun"; robinson_define_parsing_case (definition, bit1); robinson_define_parsing_number (definition, bit1); robinson_define_parsing_gender (definition, bit1); robinson_define_parsing_suffix (definition, bit2, false); return true; } if (bit0 == "INJ") { definition = "interjection"; return true; } if (bit0 == "K") { definition = "correlative pronoun"; robinson_define_parsing_case (definition, bit1); robinson_define_parsing_number (definition, bit1); robinson_define_parsing_gender (definition, bit1); robinson_define_parsing_suffix (definition, bit2, false); return true; } if (bit0 == "N") { definition = "noun"; if (!robinson_define_parsing_suffix (definition, bit1, true)) { robinson_define_parsing_case (definition, bit1); robinson_define_parsing_number (definition, bit1); robinson_define_parsing_gender (definition, bit1); robinson_define_parsing_suffix (definition, bit2, false); } return true; } if (bit0 == "P") { definition = "personal pronoun"; // It optionally can have person 1,2,3 added, e.g. // P-GSM (personal pronoun genetive singular masculine) // P-1GS (personal pronoun first person genetive singular) // Note: 1st and 2nd personal pronouns have no gender. robinson_define_parsing_person (definition, bit1); robinson_define_parsing_case (definition, bit1); robinson_define_parsing_number (definition, bit1); robinson_define_parsing_gender (definition, bit1); if (bit2 == "C") { bit2 = "K"; } robinson_define_parsing_suffix (definition, bit2, false); return true; } if (bit0 == "PREP") { definition = "preposition"; return true; } if (bit0 == "PRT") { definition = "particle, disjunctive particle"; robinson_define_parsing_suffix (definition, bit1, false); return true; } if (bit0 == "Q") { definition = "correlative or interrogative pronoun"; robinson_define_parsing_case (definition, bit1); robinson_define_parsing_number (definition, bit1); robinson_define_parsing_gender (definition, bit1); robinson_define_parsing_suffix (definition, bit2, false); return true; } if (bit0 == "R") { definition = "relative pronoun"; robinson_define_parsing_case (definition, bit1); robinson_define_parsing_number (definition, bit1); robinson_define_parsing_gender (definition, bit1); robinson_define_parsing_suffix (definition, bit2, false); return true; } if (bit0 == "S") { definition = "possessive pronoun"; // It has person 1,2,3 added, e.g. S-1DPM. robinson_define_parsing_person (definition, bit1); robinson_define_parsing_case (definition, bit1); robinson_define_parsing_number (definition, bit1); robinson_define_parsing_gender (definition, bit1); robinson_define_parsing_suffix (definition, bit2, false); return true; } if (bit0 == "T") { definition = "definite article"; robinson_define_parsing_case (definition, bit1); robinson_define_parsing_number (definition, bit1); robinson_define_parsing_gender (definition, bit1); robinson_define_parsing_suffix (definition, bit2, false); return true; } if (bit0 == "V") { definition = "verb"; // The verb always has tense voice mood, such as in, e.g., "V-2ADN". robinson_define_parsing_tense (definition, bit1); robinson_define_parsing_voice (definition, bit1); robinson_define_parsing_mood (definition, bit1); // Optionally we have only a suffix. if (robinson_define_parsing_suffix (definition, bit2, true)) { bit2.clear(); } // Or we can have two options. // First we try person and number. if (!bit2.empty()) { if (robinson_define_parsing_person (definition, bit2)) { robinson_define_parsing_number (definition, bit2); } else { // Else it is case, number and gender. robinson_define_parsing_case (definition, bit2); robinson_define_parsing_number (definition, bit2); robinson_define_parsing_gender (definition, bit2); } } // Finally parse the few cases that have a suffix. robinson_define_parsing_suffix (definition, bit3, false); return true; } if (bit0 == "X") { definition = "indefinite pronoun"; robinson_define_parsing_case (definition, bit1); robinson_define_parsing_number (definition, bit1); robinson_define_parsing_gender (definition, bit1); robinson_define_parsing_suffix (definition, bit2, false); return true; } // Can't describe the parsing. return false; } bibledit-gtk-4.9/src/robinson.h000664 000766 000024 00000001701 12221507137 016645 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_ROBINSON_H #define INCLUDED_ROBINSON_H #include "libraries.h" #include bool robinson_define_parsing (ustring parsing, ustring& definition); #endif bibledit-gtk-4.9/src/roman.cpp000664 000766 000024 00000005244 12221507141 016464 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "roman.h" #include "tiny_utilities.h" ustring integer2roman(int arabic) // Converts an integer to a Roman numeral. { // Type definition. struct roman_digit_type { const char *roman; int integer; }; // Conversion data. const roman_digit_type roman_digits[] = { {"M", 1000}, {"CM", 900}, {"D", 500}, {"CD", 400}, {"C", 100}, {"XC", 90}, {"L", 50}, {"XL", 40}, {"X", 10}, {"IX", 9}, {"V", 5}, {"IV", 4}, {"I", 1}, }; // Roman digits can't display something like 4999 // without using overlaid bars and so forth. // Disregarding the above the code below just keeps using the M's. // Conversion routine. ustring roman; for (unsigned int i = 0; arabic && i < sizeof(roman_digits) / sizeof(roman_digits[0]); i++) { while (roman_digits[i].integer <= arabic) { roman.append(roman_digits[i].roman); arabic -= roman_digits[i].integer; } } // Return result. return roman; } vector < ustring > roman_digits() // Gives the available roman digits. { vector < ustring > digits; digits.push_back("I"); digits.push_back("V"); digits.push_back("X"); digits.push_back("L"); digits.push_back("C"); digits.push_back("D"); digits.push_back("M"); return digits; } ustring integer_or_roman_sample(unsigned int index) { ustring sample; for (unsigned int i = 1; i <= 3; i++) { if (i > 1) { sample.append(", "); } switch (index) { case 1:{ sample.append(integer2roman(i)); break; } default:{ sample.append(convert_to_string(i)); break; } } } return sample; } ustring integer_or_roman_numeral(unsigned int integer, unsigned int index) { ustring numeral; switch (index) { case 1:{ numeral = integer2roman(integer); break; } default:{ numeral = convert_to_string(integer); break; } } return numeral; } bibledit-gtk-4.9/src/roman.h000664 000766 000024 00000002124 12221507134 016125 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_ROMAN_H #define INCLUDED_ROMAN_H #include "libraries.h" #include #include "ustring.h" ustring integer2roman (int arabic); vector roman_digits (); ustring integer_or_roman_sample (unsigned int index); ustring integer_or_roman_numeral (unsigned int integer, unsigned int index); #endif bibledit-gtk-4.9/src/runtime.cpp000664 000766 000024 00000003673 12264771733 017060 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "runtime.h" #include "gwrappers.h" #include "gtkwrappers.h" bool runtime_check_internal (RuntimeType type, ustring& message) { ustring package; switch (type) { case rtXeTeX: package = "texlive-xetex"; break; case rtPHP: package = "php5-cli"; break; case rtLast: return true; } const gchar * program = runtime_program (type); if (gw_find_program_in_path(program)) { return true; } message = "Could not find program \""; message.append (program); message.append ("\". Install package " + package + " to resolve this."); gw_message (message); return false; } const gchar * runtime_program (RuntimeType type) { switch (type) { case rtXeTeX: return "xetex"; case rtPHP: return "php"; case rtLast: return NULL; } return NULL; } void runtime_initialize () // Does an initial check of all required runtime requirements. { for (unsigned int i = 0; i < rtLast; i++) { ustring s; runtime_check_internal (RuntimeType (i), s); } } bool runtime_check (RuntimeType type) { ustring message; if (runtime_check_internal (type, message)) { return true; } gtkw_dialog_warning (NULL, message); return false; } bibledit-gtk-4.9/src/runtime.h000664 000766 000024 00000002125 12221507131 016472 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_RUNTIME_H #define INCLUDED_RUNTIME_H #include "libraries.h" #include #include enum RuntimeType {rtXeTeX, rtPHP, rtLast}; const gchar * runtime_program (RuntimeType type); void runtime_initialize (); bool runtime_check (RuntimeType type); #endif bibledit-gtk-4.9/src/screen.cpp000644 000766 000024 00000015156 12460404402 016631 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "screen.h" #include "settings.h" #include "gwrappers.h" #include "settings.h" void screen_scroll_to_iterator(GtkTextView * text_view, GtkTextIter * iter) // Used for the editor, to get a position near the top of the screen. { gtk_text_view_scroll_to_iter(text_view, iter, 0.1, true, 0, 0.3); } void textview_scroll_to_mark (GtkTextView * textview, GtkTextMark * mark, bool exact) // Scrolls a "textview" so that the "mark" becomes visible on the screen. // The advantage of this one as compared to the counterpart that scrolls to a GtkTextIter // is that the scrolling to the mark can be called immediately after the textbuffer // is filled, without any need to wait till the height of the lines has // been calculated. // exact: scroll to the exact location - if false it scrolls as little as possible to get the mark visible. { gtk_text_view_scroll_to_mark(textview, mark, 0.1, exact, 0, 0.3); } void dialog_position_save(DialogPositionType type, GtkWidget * dialog) { // Get the window's position: x and y. gint x, y; gtk_window_get_position(GTK_WINDOW(dialog), &x, &y); // Get the stored positions of all dialogs. extern Settings *settings; vector < int >pos_x = settings->genconfig.dialogpositions_x_get(); vector < int >pos_y = settings->genconfig.dialogpositions_y_get(); // Possibly fill up the stored positions till it includes the location // where to store this particular position. for (int i = pos_x.size(); i <= type; i++) { pos_x.push_back(-1); } for (int i = pos_y.size(); i <= type; i++) { pos_y.push_back(-1); } // Store the window position in the container: x and y. pos_x[type] = x; pos_y[type] = y; // Store the positions in the configuration. settings->genconfig.dialogpositions_x_set(pos_x); settings->genconfig.dialogpositions_y_set(pos_y); } void dialog_position_restore(DialogPositionType type, GtkWidget * dialog) { // Get the positions of all dialogs. extern Settings *settings; vector < int >pos_x = settings->genconfig.dialogpositions_x_get(); vector < int >pos_y = settings->genconfig.dialogpositions_y_get(); // If the desired position is not (yet) there, bail out. if (type >= (int)pos_x.size()) return; if (type >= (int)pos_y.size()) return; // Get the desired position. int x = pos_x[type]; int y = pos_y[type]; // See if the dialog still is visible on the screen if it were positioned // like this. Let's say that at least 25% of width and height should be // visible on the screen. int window_width; int window_height; gtk_window_get_size(GTK_WINDOW(dialog), &window_width, &window_height); int minimum_x = 0 - (int)(0.75 * window_width); int minimum_y = 0 - (int)(0.75 * window_height); int maximum_x = settings->genconfig.screen_width_get() - (int)(0.25 * window_width); int maximum_y = settings->genconfig.screen_height_get() - (int)(0.25 * window_height); // If the desired position is out of bounds, bail out. if (x < minimum_x) return; if (y < minimum_y) return; if (x > maximum_x) return; if (y > maximum_y) return; // The position has passed all test: now get the job done. gtk_window_move(GTK_WINDOW(dialog), pos_x[type], pos_y[type]); } void dialog_position_reset_all() { vector < int >dummy; extern Settings *settings; settings->genconfig.dialogpositions_x_set(dummy); settings->genconfig.dialogpositions_y_set(dummy); } void window_position_get_left_space(GtkWidget * widget, gint & width, gint & height, gint & x, gint & y) // Get the space on the screen left of the widget. { gint window_width, window_height, window_x, window_y; gtk_window_get_size(GTK_WINDOW(widget), &window_width, &window_height); gtk_window_get_position(GTK_WINDOW(widget), &window_x, &window_y); width = window_width; if (width > window_x) width = window_x; height = window_height; x = window_x - width; y = window_y; } void window_position_make_left_space(GtkWidget * widget, gint space) // Tries to create a space of "space" at the left of the window. { gint left_width, dummy; window_position_get_left_space(widget, left_width, dummy, dummy, dummy); gint window_x, window_y; gtk_window_get_position(GTK_WINDOW(widget), &window_x, &window_y); if (space > window_x) { gtk_window_move(GTK_WINDOW(widget), space, window_y); } } DialogPresenter::DialogPresenter(GtkWidget * widget) { mywidget = widget; event_id = g_timeout_add_full(G_PRIORITY_DEFAULT, 500, GSourceFunc(on_timeout), gpointer(this), NULL); } DialogPresenter::~DialogPresenter() { gw_destroy_source(event_id); } // MAP: I believe these two routines can be eliminated. Just do the // work where on_timeout is set up. bool DialogPresenter::on_timeout(gpointer data) { ((DialogPresenter *) data)->timeout(); return false; } void DialogPresenter::timeout() { gtk_window_present(GTK_WINDOW(mywidget)); } DialogAutoScaler::DialogAutoScaler(GtkWidget * widget, int height) { mywidget = widget; desired_height = height; event_id = g_timeout_add_full(G_PRIORITY_DEFAULT, 100, GSourceFunc(on_timeout), gpointer(this), NULL); } DialogAutoScaler::~DialogAutoScaler() { gw_destroy_source(event_id); } bool DialogAutoScaler::on_timeout(gpointer data) { ((DialogAutoScaler *) data)->timeout(); return false; } void DialogAutoScaler::timeout() { event_id = 0; while (gtk_events_pending()) gtk_main_iteration(); extern Settings * settings; int screen_height = settings->genconfig.screen_height_get(); int maximum_height = 0.8 * screen_height; if (desired_height > maximum_height) { desired_height = maximum_height; } gint actual_height; gtk_window_get_size (GTK_WINDOW (mywidget), NULL, &actual_height); if (actual_height > maximum_height) { desired_height = maximum_height; } if (desired_height > 0) { gtk_widget_set_size_request (GTK_WIDGET (mywidget), -1, desired_height); } } bibledit-gtk-4.9/src/screen.h000664 000766 000024 00000003603 12221507142 016272 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_SCREEN_H #define INCLUDED_SCREEN_H #include "libraries.h" #include void screen_scroll_to_iterator(GtkTextView *text_view, GtkTextIter *iter); void textview_scroll_to_mark (GtkTextView * textview, GtkTextMark * mark, bool exact); enum DialogPositionType {dptInsertNote}; void dialog_position_save(DialogPositionType type, GtkWidget * dialog); void dialog_position_restore(DialogPositionType type, GtkWidget * dialog); void dialog_position_reset_all(); void window_position_get_left_space(GtkWidget * widget, gint& width, gint& height, gint& x, gint& y); void window_position_make_left_space(GtkWidget * widget, gint space); class DialogPresenter { public: DialogPresenter (GtkWidget * widget); ~DialogPresenter(); private: GtkWidget * mywidget; guint event_id; static bool on_timeout(gpointer data); void timeout(); }; class DialogAutoScaler { public: DialogAutoScaler (GtkWidget * widget, int height); ~DialogAutoScaler(); private: GtkWidget * mywidget; int desired_height; guint event_id; static bool on_timeout(gpointer data); void timeout(); }; #endif bibledit-gtk-4.9/src/scripts.cpp000644 000766 000024 00000032244 12453001367 017043 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "scripts.h" #include "unixwrappers.h" #include "directories.h" #include "gwrappers.h" #include "utilities.h" #include "shell.h" #include "tiny_utilities.h" ustring scripts_straight_through() { return "straight through"; } ustring script_prefix(ScriptType scripttype) { ustring prefix = "script_"; switch (scripttype) { case stSed: prefix.append("sed_"); break; case stTECkit: prefix.append("teckit_"); break; case stFree: prefix.append("free_"); break; case stEnd: break; } return prefix; } ustring script_suffix(ScriptType scripttype, bool binary) { ustring suffix; switch (scripttype) { case stSed: break; case stTECkit: if (binary) suffix.append(".tec"); else suffix.append(".map"); break; case stFree: case stEnd: break; } return suffix; } vector < ustring > scripts_get_all() // Gets a list of available scripts. { // Read available scripts and clean them up. ReadFiles rf(Directories->get_scripts(), script_prefix(stEnd), ""); for (unsigned int i = 0; i < rf.files.size(); i++) { for (int scripttype = stSed; scripttype < stEnd; scripttype++) { ustring prefix = script_prefix((ScriptType) scripttype); ustring source_suffix = script_suffix((ScriptType) scripttype, false); ustring binary_suffix = script_suffix((ScriptType) scripttype, true); if (g_str_has_prefix(rf.files[i].c_str(), prefix.c_str())) { rf.files[i].erase(0, prefix.length()); } if (!source_suffix.empty()) { if (g_str_has_suffix(rf.files[i].c_str(), source_suffix.c_str())) { rf.files[i].erase(rf.files[i].length() - source_suffix.length(), source_suffix.length()); } } if (!binary_suffix.empty()) { if (g_str_has_suffix(rf.files[i].c_str(), binary_suffix.c_str())) { rf.files[i].erase(rf.files[i].length() - binary_suffix.length(), binary_suffix.length()); } } } } // In cases of TECkit, there is the .map script and the compiled .tec script. // These both have the same name, so we have two scripts of the same name. // Remove any double names. set < ustring > scriptset(rf.files.begin(), rf.files.end()); vector < ustring > scripts(scriptset.begin(), scriptset.end()); // Sort them. sort(scripts.begin(), scripts.end()); // Add the "straight through" script at the start. scripts.insert(scripts.begin(), scripts_straight_through()); // Return them. return scripts; } bool script_available(const ustring & script) // Returns whether "script" is available. { vector < ustring > scripts = scripts_get_all(); set < ustring > scripts_set(scripts.begin(), scripts.end()); return scripts_set.find(script) != scripts_set.end(); } ustring script_filter(const ustring & scriptname, bool straightthrough, const ustring & inputfile, const ustring & outputfile) /* Runs the filter "scriptname". Input text in "inputfile", and the output text goes in "outputfile". If everything is okay, it returns nothing. If there were errors, it returns these. */ { // Remove any previous output. unlink(outputfile.c_str()); unlink(script_temporal_error_file().c_str()); // Handle straight through. if (straightthrough) { unix_cp(inputfile, outputfile); return ""; } // Get the filename and the type of the script. ScriptType scripttype; ustring scriptfile = script_get_path(scriptname, &scripttype, true); // If the rules file does not exist, or the script is of an unknown type, pass it straight through. if (!g_file_test(scriptfile.c_str(), G_FILE_TEST_IS_REGULAR) || (scripttype == stEnd)) { unix_cp(inputfile, outputfile); gw_warning("Error in script " + scriptname); return ""; } // Encode the input usfm file. ustring encodedinputfile = script_temporal_input_file(); if (inputfile != encodedinputfile) { unix_cp(inputfile, encodedinputfile); } script_encode_usfm_file(encodedinputfile); // Run filter. ustring command; ustring error; switch (scripttype) { case stSed: { command.append(script_sed_binary()); command.append(" -f"); command.append(shell_quote_space(scriptfile)); command.append("<"); command.append(shell_quote_space(encodedinputfile)); command.append(">"); command.append(shell_quote_space(outputfile)); break; } case stTECkit: { command.append(script_teckit_txtconverter()); command.append(" -i"); command.append(shell_quote_space(encodedinputfile)); command.append(" -o"); command.append(shell_quote_space(outputfile)); command.append(" -t"); command.append(shell_quote_space(scriptfile)); command.append(" -nobom"); break; } case stFree: { // Text of the script. ustring scriptdata; { // Read script. gchar *contents; g_file_get_contents(scriptfile.c_str(), &contents, NULL, NULL); if (contents) { scriptdata = contents; g_free(contents); } else { error = "Can't read script file"; gw_warning(error); return error; } } // Check for and insert the input filename. if (scriptdata.find(script_free_input_identifier()) == string::npos) { error = "Can't find where to put input file"; gw_warning(error); return error; } replace_text(scriptdata, script_free_input_identifier(), shell_quote_space(encodedinputfile)); // Check for and insert the output filename. if (scriptdata.find(script_free_output_identifier()) == string::npos) { error = "Can't find where to put output file"; gw_warning(error); return error; } replace_text(scriptdata, script_free_output_identifier(), shell_quote_space(outputfile)); // Write temporal script. g_file_set_contents(script_temporal_script_file().c_str(), scriptdata.c_str(), -1, NULL); // Assemble command to run. command.append("sh"); command.append(shell_quote_space(script_temporal_script_file())); break; } case stEnd: { break; } } // Add the error file to the command, and run it. command.append(" 2> "); command.append(script_temporal_error_file()); int result = system(command.c_str()); // This one is too unpredictable to be used with GwSpawn. // The filters are so much beyond any control that we never can be sure that // their output is in the UTF-8 encoding. // Sed would give UTF-8, but as TECkit can also give legacy encodings. // We can't know what free scripts will do, it could be anything. // So here check the UTF-8 encoding. // If UTF-8 validation fails, we copy the input straight to the output. { gchar *contents; g_file_get_contents(outputfile.c_str(), &contents, NULL, NULL); if (contents) { if (!g_utf8_validate(contents, -1, NULL)) { unix_cp(inputfile, outputfile); error = "UTF-8 validation failure"; gw_warning(error); } g_free(contents); if (!error.empty()) return error; } } // Decode the output file. script_decode_usfm_file(outputfile); // Handle OK. if (result == 0) return ""; // Handle error. gchar *contents; g_file_get_contents(script_temporal_error_file().c_str(), &contents, NULL, NULL); if (contents) { error = contents; g_free(contents); gw_warning(error); } return error; } ustring script_get_path(const ustring & script, ScriptType * scripttype, bool binary) // Gets the full path to an existing "script". // If "binary" is true, then, if possible, it gives the path, not to the original // script, but to the binary form of it. Right now this is used for TECkit support // which has the mapping file, which is the script, and the compiled file, which // is the binary. // The "scripttype" is filled with the right type of script. { // Try the various types of scripts. for (unsigned int i = 0; i < stEnd; i++) { ScriptType script_type = ScriptType(i); ustring path = gw_build_filename(Directories->get_scripts(), script_prefix(script_type) + script + script_suffix(script_type, binary)); if (g_file_test(path.c_str(), G_FILE_TEST_IS_REGULAR)) { if (scripttype) *scripttype = script_type; return path; } } // Failure. if (scripttype) *scripttype = stEnd; return ""; } ustring script_get_path(const ustring & script, ScriptType scripttype, bool binary) // Gets the full path to a new or existing "script" of "scripttype". { return gw_build_filename(Directories->get_scripts(), script_prefix(scripttype) + script + script_suffix(scripttype, binary)); } ustring script_temporal_script_file() { return gw_build_filename(Directories->get_temp(), "script_filter_script"); } ustring script_temporal_input_file() { return gw_build_filename(Directories->get_temp(), "script_filter_input"); } ustring script_temporal_output_file() { return gw_build_filename(Directories->get_temp(), "script_filter_output"); } ustring script_temporal_error_file() { return gw_build_filename(Directories->get_temp(), "script_filter_error"); } ustring script_get_named_type(ScriptType scripttype) { ustring name; switch (scripttype) { case stSed: name = "Sed rules"; break; case stTECkit: name = "TECkit mapping"; break; case stFree: name = "Free script"; break; case stEnd: break; } return name; } bool script_sed_installed() { return gw_find_program_in_path(script_sed_binary()); } bool script_teckit_installed() { return gw_find_program_in_path(script_teckit_compiler()); } const gchar *script_sed_binary() { return "sed"; } const gchar *script_teckit_compiler() { return "teckit_compile"; } const gchar *script_teckit_txtconverter() { return "txtconv"; } const gchar *script_free_input_identifier() { return "inputfile"; } const gchar *script_free_output_identifier() { return "outputfile"; } void script_encode_usfm_file(const ustring & filename) // Encodes a USFM file. The purpose is that the USFM marked are not changed by the script. // The assumption is that numbers are not affected. { // Read the file. Bail out if there's no text. ustring input; { gchar *contents; g_file_get_contents(filename.c_str(), &contents, NULL, NULL); if (!contents) return; input = contents; g_free(contents); } if (input.empty()) return; // Go through the input, changing usfm codes to their numerical equivalent, // and copying data to the output. // E.g. "\id" would become "\_105_100". ustring output; bool within_usfm = false; for (unsigned int i = 0; i < input.length(); i++) { ustring character = input.substr(i, 1); if (within_usfm) if (character == " ") within_usfm = false; if (within_usfm) { gunichar unichar; gunichar *uc; uc = g_utf8_to_ucs4_fast(character.c_str(), -1, NULL); unichar = *uc; g_free(uc); character = "_" + convert_to_string(unichar); } output.append(character); if (character == "\\") within_usfm = true; } // Write the data back to the file. g_file_set_contents(filename.c_str(), output.c_str(), -1, NULL); } void script_decode_usfm_file(const ustring & filename) // Decodes a USFM file, that means, puts the original USFM code back. { // Read the file. Bail out if there's no text. ustring input; { gchar *contents; g_file_get_contents(filename.c_str(), &contents, NULL, NULL); if (!contents) return; input = contents; g_free(contents); } if (input.empty()) return; // Go through the input, changing usfm codes to their numerical equivalent, // and copying data to the output. // E.g. "\_105_100" would become "\id". ustring output; while (!input.empty()) { ustring character = input.substr(0, 1); input.erase(0, 1); output.append(character); if (character == "\\") { size_t pos = input.find(" "); if (pos == string::npos) pos = input.length(); ustring encoded_text = input.substr(0, pos); input.erase(0, pos); Parse parse(encoded_text, false, "_"); for (unsigned int i = 0; i < parse.words.size(); i++) { gunichar unichar = convert_to_int(parse.words[i]); gchar buf[7]; gint length = g_unichar_to_utf8(unichar, (gchar *) & buf); buf[length] = '\0'; character = buf; output.append(character); } } } // Write the data back to the file. g_file_set_contents(filename.c_str(), output.c_str(), -1, NULL); } bibledit-gtk-4.9/src/scripts.h000664 000766 000024 00000004047 12221507141 016504 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_SCRIPTS_H #define INCLUDED_SCRIPTS_H #include "libraries.h" #include enum ScriptType {stSed, stTECkit, stFree, stEnd}; ustring scripts_straight_through(); ustring script_prefix(ScriptType scripttype); ustring script_suffix(ScriptType scripttype, bool binary = false); vector scripts_get_all(); bool script_available(const ustring& script); ustring script_filter(const ustring& scriptname, bool straightthrough, const ustring& inputfile, const ustring& outputfile); ustring script_get_path(const ustring& script, ScriptType * scripttype, bool binary = false); ustring script_get_path(const ustring& script, ScriptType scripttype, bool binary = false); ustring script_temporal_script_file(); ustring script_temporal_input_file(); ustring script_temporal_output_file(); ustring script_temporal_error_file(); ustring script_get_named_type(ScriptType scripttype); bool script_sed_installed(); bool script_teckit_installed(); const gchar * script_sed_binary(); const gchar * script_teckit_compiler(); const gchar * script_teckit_txtconverter(); const gchar * script_free_input_identifier(); const gchar * script_free_output_identifier(); void script_encode_usfm_file(const ustring& filename); void script_decode_usfm_file(const ustring& filename); #endif bibledit-gtk-4.9/src/scripturechecks.cpp000644 000766 000024 00000040041 12453001367 020547 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "utilities.h" #include #include "gwrappers.h" #include "gtkwrappers.h" #include "scripturechecks.h" #include "directories.h" #include "dialogcheck.h" #include "style.h" #include "stylesheetutils.h" #include "shell.h" #include "projectutils.h" #include "progresswindow.h" #include "checks.h" #include "check_validate_usfm.h" #include "check_count_words.h" #include "check_count_usfms.h" #include "check_count_characters.h" #include "check_chapters_verses.h" #include "check_compare_usfm.h" #include "check_unwanted_patterns.h" #include "check_unwanted_words.h" #include "check_repetition.h" #include "check_capitalization.h" #include "check_matching_pairs.h" #include "books.h" #include "check_markers_spacing.h" #include "settings.h" #include "check_ref_inventory.h" #include "check_validate_refs.h" #include "check_parallel_passages.h" #include "check_sentence_structure.h" vector < unsigned int >checks_generate_booknames() { vector < unsigned int >book_ids; extern Settings *settings; vector < unsigned int >books = project_get_books(settings->genconfig.project_get()); set < unsigned int >selected_books = settings->session.selected_books; for (unsigned int i = 0; i < books.size(); i++) { if (selected_books.find(books[i]) != selected_books.end()) book_ids.push_back(books[i]); } return book_ids; } bool scripture_checks_chapters_verses(WindowReferences * references_window, CollectCheckingResults * results) { if (results == NULL) { CheckDialog dialog(cdtChaptersVerses); if (dialog.run() != GTK_RESPONSE_OK) return false; } extern Settings *settings; vector < unsigned int >books = checks_generate_booknames(); CheckChaptersVerses check(settings->genconfig.project_get(), books, true); if (check.cancelled) return false; if (results) results->add(check.references, check.comments); else checks_display_references_comments(check.references, check.comments, references_window); return true; } bool scripture_checks_count_usfms(bool gui) { if (gui) { CheckDialog dialog(cdtMarkersCount); if (dialog.run() != GTK_RESPONSE_OK) return false; } extern Settings *settings; vector < unsigned int >books = checks_generate_booknames(); CheckCountUsfms check(settings->genconfig.project_get(), books, settings->session.checksorttype, true); if (check.cancelled) return false; DisplayCheckingResults display("Marker Count"); display.usfm_count(check.markers, check.counts, settings->genconfig.stylesheet_get()); return true; } bool scripture_checks_validate_usfms(WindowReferences * references_window, CollectCheckingResults * results) { if (!results) { CheckDialog dialog(cdtMarkersValidate); if (dialog.run() != GTK_RESPONSE_OK) return false; } extern Settings *settings; CheckValidateUsfm check(settings->genconfig.project_get(), checks_generate_booknames(), true, true); if (check.cancelled) return false; if (results) results->add(check.references, check.comments); else checks_display_references_comments(check.references, check.comments, references_window); return true; } bool scripture_checks_compare_usfms(WindowReferences * references_window, CollectCheckingResults * results) { if (!results) { CheckDialog dialog(cdtMarkersCompare); if (dialog.run() != GTK_RESPONSE_OK) return false; } extern Settings *settings; CheckCompareUsfms check(settings->genconfig.project_get(), settings->genconfig.check_markers_compare_project_get(), checks_generate_booknames(), true, settings->genconfig.check_markers_compare_all_markers_get(), settings->genconfig.check_markers_compare_include_only_get(), settings->genconfig.check_markers_compare_ignore_get(), settings->genconfig.check_markers_compare_ignore_verse_zero_get()); if (check.cancelled) return false; if (results) results->add(check.references, check.comments); else checks_display_references_comments(check.references, check.comments, references_window); return true; } bool scripture_checks_count_characters(bool gui) { if (gui) { CheckDialog dialog(cdtCharactersCount); if (dialog.run() != GTK_RESPONSE_OK) return false; } extern Settings *settings; bool sortcharacter = (settings->session.checksorttype == cstSort1); bool sortcount = (settings->session.checksorttype == cstSort2); vector < unsigned int >books = checks_generate_booknames(); CheckCountCharacters check(settings->genconfig.project_get(), books, sortcharacter, sortcount, true); if (check.cancelled) return false; DisplayCheckingResults display("Character Count"); display.character_count(check.characters, check.counts); return true; } bool scripture_checks_unwanted_patterns(WindowReferences * references_window, CollectCheckingResults * results) { if (!results) { CheckDialog dialog(cdtUnwantedPatterns); if (dialog.run() != GTK_RESPONSE_OK) return false; } extern Settings *settings; CheckUnwantedPatterns check(settings->genconfig.project_get(), checks_generate_booknames(), checks_unwanted_patterns_get_filename(settings->genconfig.project_get()), true); if (check.cancelled) return false; if (results) results->add(check.references, check.comments); else checks_display_references_comments(check.references, check.comments, references_window); return true; } bool scripture_checks_capitalization(WindowReferences * references_window, CollectCheckingResults * results) { if (!results) { CheckDialog dialog(cdtWordsCapitalization); if (dialog.run() != GTK_RESPONSE_OK) return false; } extern Settings *settings; CheckCapitalization check(settings->genconfig.project_get(), checks_generate_booknames(), settings->genconfig.check_capitalization_punctuation_get(), settings->genconfig.check_capitalization_ignore_get(), checks_abbreviations_get_filename(settings->genconfig.project_get()), settings->genconfig.check_capitalization_allow_any_prefixes_get(), checks_uncapitalized_prefixes_get_filename(settings->genconfig.project_get()), checks_capitalized_suffixes_get_filename(settings->genconfig.project_get()), true); if (check.cancelled) return false; if (results) results->add(check.references, check.comments); else checks_display_references_comments(check.references, check.comments, references_window); return true; } bool scripture_checks_repetition(WindowReferences * references_window, CollectCheckingResults * results) { if (!results) { CheckDialog dialog(cdtWordsRepetition); if (dialog.run() != GTK_RESPONSE_OK) return false; } extern Settings *settings; ustring only_these_file = checks_repetition_show_only_get_filename(settings->genconfig.project_get()); if (!settings->genconfig.check_repetition_show_only_these_get()) only_these_file.clear(); ustring ignore_these_file = checks_repetition_ignore_get_filename(settings->genconfig.project_get()); if (!settings->genconfig.check_repetition_ignore_these_get()) ignore_these_file.clear(); CheckRepetition check(settings->genconfig.project_get(), checks_generate_booknames(), settings->genconfig.check_repetition_ignore_case_get(), only_these_file, ignore_these_file, true); if (check.cancelled) return false; if (results) results->add(check.references, check.comments); else checks_display_references_comments(check.references, check.comments, references_window); return true; } bool scripture_checks_matching_pairs(WindowReferences * references_window, CollectCheckingResults * results) { if (!results) { CheckDialog dialog(cdtMatchingPairs); if (dialog.run() != GTK_RESPONSE_OK) return false; } extern Settings *settings; CheckMatchingPairs check(settings->genconfig.project_get(), checks_generate_booknames(), settings->genconfig.check_matching_pairs_ignore_get(), true); if (check.cancelled) return false; if (results) results->add(check.references, check.comments); else checks_display_references_comments(check.references, check.comments, references_window); return true; } bool scripture_checks_unwanted_words(WindowReferences * references_window, CollectCheckingResults * results) { if (!results) { CheckDialog dialog(cdtWordsUnwanted); if (dialog.run() != GTK_RESPONSE_OK) return false; } extern Settings *settings; CheckUnwantedWords check(settings->genconfig.project_get(), checks_generate_booknames(), checks_unwanted_words_get_filename(settings->genconfig.project_get()), true); if (check.cancelled) return false; if (results) results->add(check.references, check.comments); else checks_display_references_comments(check.references, check.comments, references_window); return true; } bool scripture_checks_word_inventory(bool gui) { if (gui) { CheckDialog dialog(cdtWordsCount); if (dialog.run() != GTK_RESPONSE_OK) return false; } extern Settings *settings; CheckCountWords check(settings->genconfig.project_get(), checks_generate_booknames(), settings->genconfig.check_words_inventory_word_forming_characters_get(), settings->session.checksorttype == cstSort1, settings->session.checksorttype == cstSort2, settings->genconfig.check_words_inventory_not_include_words_count_get(), true); if (check.cancelled) return false; DisplayCheckingResults display("Word Inventory"); display.word_inventory(check.words, check.counts, check.total_count, check.total_unique_count, check.filtered_count, check.filtered_unique_count, settings->genconfig.check_words_inventory_not_include_words_count_get()); return true; } bool scripture_checks_usfm_spacing(WindowReferences * references_window, CollectCheckingResults * results) { if (!results) { CheckDialog dialog(cdtMarkersSpacing); if (dialog.run() != GTK_RESPONSE_OK) return false; } extern Settings *settings; CheckMarkersSpacing check(settings->genconfig.project_get(), checks_generate_booknames(), true); if (check.cancelled) return false; if (results) results->add(check.references, check.comments); else checks_display_references_comments(check.references, check.comments, references_window); return true; } ustring checks_abbreviations_get_filename(const ustring & project) { return gw_build_filename(Directories->get_projects(), project, "abbreviations"); } ustring checks_uncapitalized_prefixes_get_filename(const ustring & project) { return gw_build_filename(Directories->get_projects(), project, "uncapitalized-prefixes"); } ustring checks_capitalized_suffixes_get_filename(const ustring & project) { return gw_build_filename(Directories->get_projects(), project, "capitalized_suffixes"); } ustring checks_repetition_show_only_get_filename(const ustring & project) { return gw_build_filename(Directories->get_projects(), project, "repetitions_show_only"); } ustring checks_repetition_ignore_get_filename(const ustring & project) { return gw_build_filename(Directories->get_projects(), project, "repetitions_ignore"); } ustring checks_unwanted_patterns_get_filename(const ustring & project) { return gw_build_filename(Directories->get_projects(), project, "unwanted_patterns"); } ustring checks_unwanted_words_get_filename(const ustring & project) { return gw_build_filename(Directories->get_projects(), project, "unwanted_words"); } bool scripture_checks_references_inventory(bool gui) { if (gui) { CheckDialog dialog(cdtReferencesInventory); if (dialog.run() != GTK_RESPONSE_OK) return false; } extern Settings *settings; CheckReferenceInventory check(settings->genconfig.project_get(), checks_generate_booknames(), settings->session.check_include_verse_text, true); if (check.cancelled) return false; DisplayCheckingResults display("References Inventory"); display.references_inventory(check.verses, check.references); return true; } bool scripture_checks_validate_references(WindowReferences * references_window, CollectCheckingResults * results) { if (!results) { CheckDialog dialog(cdtReferencesValidate); if (dialog.run() != GTK_RESPONSE_OK) return false; } extern Settings *settings; CheckValidateReferences check(settings->genconfig.project_get(), checks_generate_booknames(), true); if (check.cancelled) return false; if (results) results->add(check.references, check.comments); else checks_display_references_comments(check.references, check.comments, references_window); return true; } void scripture_checks_nt_quotations_from_ot(WindowReferences * references_window) { CheckDialog dialog(cdtNTQuotationsFromOT); if (dialog.run() != GTK_RESPONSE_OK) return; extern Settings *settings; CheckOTQuotationsInNT check(settings->genconfig.project_get(), checks_generate_booknames(), settings->session.check_include_verse_text); checks_display_references_comments(check.references, check.comments, references_window); ustring main_heading = "Old Testament quotations in the New Testament, project " + settings->genconfig.project_get(); DisplayCheckingResults display(main_heading.c_str()); display.ot_quotations_in_nt(check.nt_refs, check.nt_texts, check.ot_refs, check.ot_texts, main_heading.c_str()); } void scripture_checks_synoptic_parallels_from_nt(WindowReferences * references_window) { CheckDialog dialog(cdtSynopticParallelsNT); if (dialog.run() != GTK_RESPONSE_OK) return; extern Settings *settings; ustring second_project; if (settings->session.check_include_second_project) second_project = settings->genconfig.check_markers_compare_project_get(); else second_project=""; CheckParallelPassages check(true, settings->genconfig.project_get(), checks_generate_booknames(), settings->session.check_include_verse_text, true, second_project); checks_display_references_comments(check.references, check.comments, references_window); ustring main_heading = "Synoptic parallel passages of the New Testament, project " + settings->genconfig.project_get() + ", "+ second_project; DisplayCheckingResults display(main_heading.c_str()); display.parallel_passages(check.data, main_heading.c_str()); } void scripture_checks_parallels_from_ot(WindowReferences * references_window) { CheckDialog dialog(cdtParallelsOT); if (dialog.run() != GTK_RESPONSE_OK) return; extern Settings *settings; CheckParallelPassages check(false, settings->genconfig.project_get(), checks_generate_booknames(), settings->session.check_include_verse_text, true,settings->genconfig.check_markers_compare_project_get()); checks_display_references_comments(check.references, check.comments, references_window); ustring main_heading = "Parallel passages of the Old Testament, project " + settings->genconfig.project_get() + ", " + settings->genconfig.check_markers_compare_project_get(); DisplayCheckingResults display(main_heading.c_str()); display.parallel_passages(check.data, main_heading.c_str()); } bool scripture_checks_sentence_structure(WindowReferences * references_window, CollectCheckingResults * results) { if (!results) { CheckDialog dialog(cdtSentenceStructure); if (dialog.run() != GTK_RESPONSE_OK) return false; } extern Settings *settings; CheckSentenceStructure check(settings->genconfig.project_get(), checks_generate_booknames(), true); if (check.cancelled) return false; if (results) results->add(check.references, check.comments); else checks_display_references_comments(check.references, check.comments, references_window); return true; } bibledit-gtk-4.9/src/scripturechecks.h000664 000766 000024 00000005715 12221507134 020223 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_SCRIPTURECHECKS_H #define INCLUDED_SCRIPTURECHECKS_H #include "libraries.h" #include #include #include "checks.h" bool scripture_checks_count_usfms (bool gui); bool scripture_checks_validate_usfms (WindowReferences * references_window, CollectCheckingResults * results); bool scripture_checks_compare_usfms (WindowReferences * references_window, CollectCheckingResults * results); bool scripture_checks_chapters_verses (WindowReferences * references_window, CollectCheckingResults * results); bool scripture_checks_count_characters (bool gui); bool scripture_checks_unwanted_patterns (WindowReferences * references_window, CollectCheckingResults * results); bool scripture_checks_capitalization (WindowReferences * references_window, CollectCheckingResults * results); bool scripture_checks_repetition (WindowReferences * references_window, CollectCheckingResults * results); bool scripture_checks_matching_pairs (WindowReferences * references_window, CollectCheckingResults * results); bool scripture_checks_unwanted_words (WindowReferences * references_window, CollectCheckingResults * results); bool scripture_checks_word_inventory (bool gui); bool scripture_checks_usfm_spacing (WindowReferences * references_window, CollectCheckingResults * results); ustring checks_abbreviations_get_filename (const ustring& project); ustring checks_uncapitalized_prefixes_get_filename (const ustring& project); ustring checks_capitalized_suffixes_get_filename (const ustring& project); ustring checks_repetition_show_only_get_filename (const ustring& project); ustring checks_repetition_ignore_get_filename (const ustring& project); ustring checks_unwanted_patterns_get_filename (const ustring& project); ustring checks_unwanted_words_get_filename (const ustring& project); bool scripture_checks_references_inventory (bool gui); bool scripture_checks_validate_references (WindowReferences * references_window, CollectCheckingResults * results); void scripture_checks_nt_quotations_from_ot (WindowReferences * references_window); void scripture_checks_synoptic_parallels_from_nt (WindowReferences * references_window); void scripture_checks_parallels_from_ot (WindowReferences * references_window); #endif bibledit-gtk-4.9/src/scriptureportions.cpp000664 000766 000024 00000007115 12221507141 021165 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "scriptureportions.h" #include "projectutils.h" #include "settings.h" #include "books.h" ScripturePortions::ScripturePortions(const ustring & project) // This object encapsulates a Scripture and its portions. { myproject = project; reordering_read(); vector < unsigned int >scripture_books = project_get_books(project); for (unsigned int i = 0; i < reordered_books.size(); i++) { for (unsigned int i2 = 0; i2 < scripture_books.size(); i2++) { if (reordered_books[i] == books_id_to_english(scripture_books[i2])) { if (reordered_includes[i]) { books.push_back(reordered_books[i]); portions.push_back(reordered_portions[i]); } } } } } void ScripturePortions::reordering_read() /* Reads reordering information from disk. If the amount of settings on disk changes, it includes all bits. */ { // Load scripture. vector < ustring > scripture_books; { vector < unsigned int >s = project_get_books(myproject); for (unsigned int i = 0; i < s.size(); i++) scripture_books.push_back(books_id_to_english(s[i])); } // Read the reordering information. extern Settings *settings; ProjectConfiguration *projectconfig = settings->projectconfig(myproject); reordered_books = projectconfig->reordered_books_get(); reordered_includes = projectconfig->reordered_includes_get(); reordered_portions = projectconfig->reordered_portions_get(); // See if the amount of books is still the same. If not, reset the whole // thing. bool reset = false; if (scripture_books.size() != reordered_books.size()) reset = true; if (scripture_books.size() != reordered_includes.size()) reset = true; if (scripture_books.size() != reordered_portions.size()) reset = true; // No reset: we're through. if (!reset) return; // Reset: include everything. reordered_books.clear(); reordered_includes.clear(); reordered_portions.clear(); for (unsigned int i = 0; i < scripture_books.size(); i++) { reordered_books.push_back(scripture_books[i]); reordered_includes.push_back(true); reordered_portions.push_back(CHAPTER_VERSE_SELECTION_ALL); } } bool ScripturePortions::reordering_portions_all() // Indicates whether all books have their portions set to "all" and are included. { for (unsigned int i = 0; i < reordered_includes.size(); i++) if (!reordered_includes[i]) return false; for (unsigned int i = 0; i < reordered_portions.size(); i++) if (reordered_portions[i] != CHAPTER_VERSE_SELECTION_ALL) return false; return true; } bool ScripturePortions::included(const ustring & book) // Returns true if the book is included in the portion. { bool incl = false; for (unsigned int i = 0; i < reordered_books.size(); i++) { if (reordered_books[i] == book) { incl = reordered_includes[i]; } } return incl; } bibledit-gtk-4.9/src/scriptureportions.h000664 000766 000024 00000002371 12221507140 020630 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_SCRIPTURE_REORDERED_H #define INCLUDED_SCRIPTURE_REORDERED_H #include "libraries.h" class ScripturePortions { public: ScripturePortions (const ustring& project); vector books; vector portions; vector reordered_books; vector reordered_includes; vector reordered_portions; bool reordering_portions_all (); bool included (const ustring& book); private: void reordering_read (); ustring myproject; }; #endif bibledit-gtk-4.9/src/search_utils.cpp000664 000766 000024 00000046510 12221507135 020041 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "utilities.h" #include "search_utils.h" #include "bible.h" #include "gtkwrappers.h" #include "bibletime.h" #include #include "sqlite_reader.h" #include "gwrappers.h" #include "gtkwrappers.h" #include "projectutils.h" #include "progresswindow.h" #include "categorize.h" #include "books.h" #include "shell.h" #include "directories.h" #include "settings.h" #include "tiny_utilities.h" void search_string_basic(const ustring & project, bool use_book_selection, unsigned int currentchapter, vector &results) /* Basic search for a string in the text. project: project to search. use_book_selection: whether to limit searches to the selected books only. chapter: currently opened chapter in the editor. results: will contain the search results. */ { // Settings. extern Settings *settings; // Case sensitive bool casesensitive = settings->session.search_case_sensitive; // The string to search for. // We need to normalize the search expression when comparing strings. ustring localsearchword(settings->session.searchword); localsearchword = localsearchword.normalize(); if (!casesensitive) localsearchword = localsearchword.casefold(); // Book and chapter selection. bool search_current_chapter = settings->session.search_current_chapter; set selectedbooks = settings->session.selected_books; // Get all books. vector books = project_get_books(project); // Progress. ProgressWindow progresswindow("Searching", false); progresswindow.set_iterate(0, 1, books.size()); // Go through all books. for (unsigned int bk = 0; bk < books.size(); bk++) { progresswindow.iterate(); unsigned int book = books[bk]; // Handle possible case of book selection. if (use_book_selection) { if (selectedbooks.find(book) == selectedbooks.end()) { continue; } } // Get all chapters and go through them. vector chapters = project_get_chapters(project, book); for (unsigned int ch = 0; ch < chapters.size(); ch++) { unsigned int chapter = chapters[ch]; // Do we search this chapter? if (search_current_chapter) { if (chapter != currentchapter) continue; } // Take a quick peek at the chapter if the word is there. ustring chapterfilename = project_data_filename_chapter(project, book, chapter, false); gchar *quickcontent; bool wordfound = false; if (g_file_get_contents(chapterfilename.c_str(), &quickcontent, NULL, NULL)) { gchar *foundlocation; if (casesensitive) { foundlocation = g_strrstr(quickcontent, localsearchword.c_str()); } else { gchar *casefoldedcontent = g_utf8_casefold(quickcontent, -1); foundlocation = g_strrstr(casefoldedcontent, localsearchword.c_str()); if (casefoldedcontent) g_free(casefoldedcontent); } if (foundlocation) wordfound = true; } if (quickcontent) g_free(quickcontent); if (wordfound) { ReadText rt(chapterfilename, true, false); CategorizeChapterVerse ccv(rt.lines); for (unsigned int i = 0; i < ccv.verse.size(); i++) { if (!casesensitive) ccv.line[i] = ccv.line[i].casefold(); if (ccv.line[i].find(localsearchword) != string::npos) { Reference reference(book, chapter, ccv.verse[i]); results.push_back(reference); } } } } } } ustring search_in_bibledit_assemble_line(const ustring & input, AreaType areatype, bool area_id, bool area_intro, bool area_heading, bool area_chapter, bool area_study, bool area_notes, bool area_xref, bool area_verse) // Assembles the line of text we have to search through, depending on the area // selection. { ustring line; switch (areatype) { case atRaw: line = input; break; case atAll: { CategorizeLine cl(input); line = cl.id; line.append(" "); line.append(cl.intro); line.append(" "); line.append(cl.head); line.append(" "); line.append(cl.chap); line.append(" "); line.append(cl.study); line.append(" "); line.append(cl.note); line.append(" "); line.append(cl.ref); line.append(" "); line.append(cl.verse); break; } case atSelection: { CategorizeLine cl(input); if (area_id) { line.append(cl.id); line.append(" "); } if (area_intro) { line.append(cl.intro); line.append(" "); } if (area_heading) { line.append(cl.head); line.append(" "); } if (area_chapter) { line.append(cl.chap); line.append(" "); } if (area_study) { line.append(cl.study); line.append(" "); } if (area_notes) { line.append(cl.note); line.append(" "); } if (area_xref) { line.append(cl.ref); line.append(" "); } if (area_verse) { line.append(cl.verse); } break; } } return line; } bool search_in_bibledit_word_boundaries_match(const ustring & text, const ustring & searchword, bool matchbeginning, bool matchending, bool globbing) // Does the word boundary matching. { /* Deal with matching the start of a word and/or of the end. There are four cases here. 1. Match word start only. 2. Match word end only. 3. Both match start end end of a word, which implies "whole word". 4. No matching at all. Boundary resolution is handled by pango_break(). Textual boundaries such as word boundaries and line boundaries are determined for each item. In most cases a general algorithm suffices for this process, but in some cases a language module will override the generic algorithm with a more specific one. It seems to be easier programming to use GtkTextIter and GtkTextBuffer, rather than pango_break() directly. */ // Whether the word matches. bool match = false; // Textbuffer for determining word boundaries. GtkTextBuffer *textbuffer = gtk_text_buffer_new(NULL); gtk_text_buffer_set_text(textbuffer, text.c_str(), -1); // Iterators needed. GtkTextIter startiter; GtkTextIter enditer; // Store segments of text to compare against. vector < ustring > segments; // Deal with case one: Match word start only. if (matchbeginning && !matchending) { // Create a patternword for the glob-style pattern matching. ustring patternword = searchword + "*"; // Collect all strings starting with a word. gtk_text_buffer_get_start_iter(textbuffer, &startiter); gtk_text_buffer_get_end_iter(textbuffer, &enditer); while (gtk_text_iter_forward_word_end(&startiter)) { gtk_text_iter_backward_word_start(&startiter); segments.push_back(gtk_text_iter_get_text(&startiter, &enditer)); gtk_text_iter_forward_word_end(&startiter); } // See whether the word is in it. for (unsigned int i2 = 0; i2 < segments.size(); i2++) { if (globbing) { // Glob-style pattern matching. if (g_pattern_match_simple(patternword.c_str(), segments[i2].c_str())) { match = true; break; } } else { // Straight compare. if (segments[i2].find(searchword) == 0) { match = true; break; } } } } // Deal with case two: Match word end only. if (!matchbeginning && matchending) { // Create a patternword for the glob-style pattern matching. ustring patternword = "*" + searchword; // Collect all strings ending with a word. gtk_text_buffer_get_start_iter(textbuffer, &startiter); gtk_text_buffer_get_start_iter(textbuffer, &enditer); while (gtk_text_iter_forward_word_end(&enditer)) { segments.push_back(gtk_text_iter_get_text(&startiter, &enditer)); } // See whether the word is in it. for (unsigned int i2 = 0; i2 < segments.size(); i2++) { if (globbing) { // Glob-style pattern matching. if (g_pattern_match_simple(patternword.c_str(), segments[i2].c_str())) { match = true; break; } } else { // Straight compare. size_t matchposition; matchposition = segments[i2].length() - searchword.length(); // Negative match positions cause a false match. Solve that here. matchposition = CLAMP(matchposition, 0, 99999999); if (segments[i2].find(searchword) == matchposition) { match = true; break; } } } } // Deal with case three: Match both word start and end. // Interpreted as "match whole word". if (matchbeginning && matchending) { // Create a patternword for the glob-style pattern matching. ustring patternword = searchword; // Collect all whole words. gtk_text_buffer_get_start_iter(textbuffer, &enditer); while (gtk_text_iter_forward_word_end(&enditer)) { startiter = enditer; gtk_text_iter_backward_word_start(&startiter); segments.push_back(gtk_text_iter_get_text(&startiter, &enditer)); } // See whether the word is in it. for (unsigned int i2 = 0; i2 < segments.size(); i2++) { if (globbing) { // Glob-style pattern matching. if (g_pattern_match_simple(patternword.c_str(), segments[i2].c_str())) { match = true; break; } } else { // Straight compare. if (segments[i2] == searchword) { match = true; break; } } } } // Case four: Nothing to test, so set found to true. if (!matchbeginning && !matchending) match = true; // Free memory. g_object_unref(textbuffer); // Return whether match. return match; } vector < Reference > search_in_bibledit() // Advanced searching in Bibledit. { // Configuration / session extern Settings *settings; // Set some variables in memory for higher speed. bool casesensitive = settings->session.search_case_sensitive; bool search_current_book = settings->session.search_current_book; bool search_current_chapter = settings->session.search_current_chapter; bool search_globbing = settings->session.search_globbing; bool search_start_word_match = settings->session.search_start_word_match; bool search_end_word_match = settings->session.search_end_word_match; set < unsigned int >selected_books = settings->session.selected_books; AreaType areatype = settings->session.area_type; bool area_id = settings->session.area_id; bool area_intro = settings->session.area_intro; bool area_heading = settings->session.area_heading; bool area_chapter = settings->session.area_chapter; bool area_study = settings->session.area_study; bool area_notes = settings->session.area_notes; bool area_xref = settings->session.area_xref; bool area_verse = settings->session.area_verse; // Progress information. ProgressWindow progresswindow("Searching", true); // The string to search for. // Note any apostrophies need to be doubled for SQLite. // We need to normalize the search expression when comparing strings. ustring localsearchword(settings->session.searchword.normalize()); if (!casesensitive) localsearchword = localsearchword.casefold(); ustring localsearchword2(localsearchword); // Storage for references: search results. vector < Reference > results; // Get our position in the text. ustring project = settings->genconfig.project_get(); ustring book = books_id_to_english(settings->genconfig.book_get()); unsigned int chapter = convert_to_int(settings->genconfig.chapter_get()); // Go through each book in the project. Progress information. vector < unsigned int >availablebooks = project_get_books(project); progresswindow.set_iterate(0, 1, availablebooks.size()); for (unsigned int bk = 0; bk < availablebooks.size(); bk++) { progresswindow.iterate(); if (progresswindow.cancel) { return results; } // If the book is not to be searched, skip it. if (search_current_book) if (book != books_id_to_english(availablebooks[bk])) continue; if (selected_books.find(availablebooks[bk]) == selected_books.end()) continue; try { // Go through each chapter in the book. vector < unsigned int >chapters = project_get_chapters(project, availablebooks[bk]); for (unsigned int ch = 0; ch < chapters.size(); ch++) { // Do we search this chapter? if (search_current_chapter) if (chapter != chapters[ch]) continue; // Read the chapter. vector < ustring > lines = project_retrieve_chapter(project, availablebooks[bk], chapters[ch]); CategorizeChapterVerse ccv(lines); // Go through the verses. for (unsigned int i = 0; i < ccv.verse.size(); i++) { // Verse number. ustring verse = ccv.verse[i]; // Handle casesensitive and area selection. // Assemble text to search through. ustring input(ccv.line[i]); if (!casesensitive) input = input.casefold(); ustring text = search_in_bibledit_assemble_line(input, areatype, area_id, area_intro, area_heading, area_chapter, area_study, area_notes, area_xref, area_verse); // Use glob-style pattern matching or straight match. if (search_globbing) { ustring patternword = "*" + localsearchword + "*"; if (!g_pattern_match_simple(patternword.c_str(), text.c_str())) continue; } else { if (text.find(localsearchword) == string::npos) continue; } // Do the word boundary matching. if (!search_in_bibledit_word_boundaries_match(text, localsearchword, search_start_word_match, search_end_word_match, search_globbing)) continue; // This verse "passed" all tests: a search result. Reference reference(availablebooks[bk], chapters[ch], verse); results.push_back(reference); } } } catch(exception & ex) { gw_critical(ex.what()); } } // Give the results. return results; } void search_load_references(WindowReferences * references_window, vector & searchresults) /* This function takes the searchresults from a search, and depending on information entered in the search dialog, loads this in the reference area, or merges it with the references that are already there. */ { // Session data. extern Settings *settings; // Deal with how the current search results interact with the ones in the editor. SearchResultsType searchresultstype = settings->session.searchresultstype; // If the search page is zero, that means we are on basic search. And that // means we always load the results in the editor, regardless of the setting // in the dialog. if (settings->session.search_page == 0) searchresultstype = sstLoad; switch (searchresultstype) { case sstLoad: { // Sort and load the references. sort_references(searchresults); references_window->set (searchresults, settings->genconfig.project_get(), NULL); break; } case sstAdd: { // Add the references to the ones already in the editor vector loaded_references = references_window->get(); for (unsigned int i = 0; i < searchresults.size(); i++) { bool add = true; for (unsigned int i2 = 0; i2 < loaded_references.size(); i2++) { if (searchresults[i].equals(loaded_references[i2])) { add = false; break; } } if (add) loaded_references.push_back(searchresults[i]); } searchresults = loaded_references; sort_references(searchresults); references_window->set (searchresults, settings->genconfig.project_get(), NULL); break; } case sstSubtract: { // Subtract the references from the ones already in the editor. vector loaded_references = references_window->get(); for (unsigned int i = 0; i < searchresults.size(); i++) { vector < Reference >::iterator iter(loaded_references.begin()); for (unsigned int i2 = 0; i2 < loaded_references.size(); i2++) { if (searchresults[i].equals(loaded_references[i2])) { loaded_references.erase(iter); break; } iter++; } } searchresults = loaded_references; sort_references(searchresults); references_window->set (searchresults, settings->genconfig.project_get(), NULL); break; } case sstShare: { // Share the references with the ones already in the editor. // This means that the references that are already in the editor // and the ones that are the result of this search, will be loaded, // provided they are the same. // All other ones will be discarded. vector loaded_references = references_window->get(); vector shared_references; for (unsigned int i = 0; i < searchresults.size(); i++) { for (unsigned int i2 = 0; i2 < loaded_references.size(); i2++) { if (searchresults[i].equals(loaded_references[i2])) { shared_references.push_back(searchresults[i]); break; } } } searchresults = shared_references; sort_references(searchresults); references_window->set (searchresults, settings->genconfig.project_get(), NULL); break; } } } void search_string(WindowReferences * references_window) { // Storage for results; vector searchresults; // Configuration & session. extern Settings *settings; switch (settings->session.search_page) { case 0: { // Basic search. // Save the current book selection in case we modify it. set saved_book_selection = settings->session.selected_books; // In case we search in the current book only, modify the book selection. if (settings->session.search_current_book) { settings->session.selected_books.clear(); settings->session.selected_books.insert(settings->genconfig.book_get()); } // Search. unsigned int chapter = convert_to_int(settings->genconfig.chapter_get()); search_string_basic(settings->genconfig.project_get(), true, chapter, searchresults); sort_references(searchresults); // Restore current book selection. settings->session.selected_books = saved_book_selection; // Done. break; } case 1: { // Advanced search. searchresults = search_in_bibledit(); break; } case 2: { break; } } // Load the references in the editor. search_load_references(references_window, searchresults); } bibledit-gtk-4.9/src/search_utils.h000664 000766 000024 00000002203 12221507147 017500 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_SEARCH_UTILS_H #define INCLUDED_SEARCH_UTILS_H #include "libraries.h" #include "bibletime.h" #include "referenceutils.h" #include "windowreferences.h" void search_string_basic (const ustring& project, bool use_book_selection, unsigned int currentchapter, vector& results); void search_string (WindowReferences * references_window); #endif bibledit-gtk-4.9/src/session.cpp000664 000766 000024 00000004257 12221507150 017036 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "session.h" #include "constants.h" #include "sqlite_reader.h" #include "directories.h" #include "gwrappers.h" #include "utilities.h" Session::Session(int dummy) // Stores settings valid only during one session. If the program stops, this // information is lost - and that is what is wanted. { // Initialize variables to a sane state. search_case_sensitive = false; search_current_book = false; search_current_chapter = false; search_globbing = false; search_start_word_match = false; search_end_word_match = false; searchresultstype = sstLoad; search_page = 0; checksorttype = cstSort0; check_include_verse_text = true; check_include_second_project = true; check_output_in_ot_order = false; area_type = atRaw; area_id = false; area_intro = false; area_heading = false; area_chapter = false; area_study = false; area_notes = false; area_xref = false; area_verse = false; line_cutter_for_hebrew_text_characters = 80; special_character_selection = 0; print_dialog_options_expanded = false; print_references_in_notes_in_full = false; print_crop_marks = false; bnmu_add_book = false; bnmu_add_chapter = false; bnmu_add_verse = true; bnmu_verse_prefix = "."; bnmu_verse_suffix = "."; import_raw_text_book = -1; import_raw_text_chapter = -1; project_notes_show_title = true; merge_action = 0; } Session::~Session() { } bibledit-gtk-4.9/src/session.h000664 000766 000024 00000005532 12221507146 016505 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_SESSION_H #define INCLUDED_SESSION_H #include "libraries.h" #include #include "types.h" #include "session_highlights.h" class Session // Stores settings valid only during one session. { public: Session(int dummy); ~Session(); // Search / Replace ustring searchword; ustring replaceword; bool search_case_sensitive; bool search_current_book; bool search_current_chapter; bool search_globbing; bool search_start_word_match; bool search_end_word_match; SearchResultsType searchresultstype; int search_page; // Book selection. set selected_books; // References highlighting. vector highlights; // Import / export. vector import_references_searchwords; // Entry completion. vector completion_search; vector completion_replace; vector completion_goto; // Checks. CheckSortType checksorttype; bool check_include_verse_text; bool check_include_second_project; bool check_output_in_ot_order; // Area selection. AreaType area_type; bool area_id; bool area_intro; bool area_heading; bool area_chapter; bool area_study; bool area_notes; bool area_xref; bool area_verse; // Printing vector additional_printing_projects; bool print_dialog_options_expanded; bool print_references_in_notes_in_full; bool print_crop_marks; // Tools int line_cutter_for_hebrew_text_characters; // Insert special character. int special_character_selection; // Bible notes mass update. bool bnmu_add_book; bool bnmu_add_chapter; bool bnmu_add_verse; ustring bnmu_verse_prefix; ustring bnmu_verse_suffix; // Import raw text. int import_raw_text_book; int import_raw_text_chapter; // Floating windows. vector open_floating_windows; // Project notes. bool project_notes_show_title; // Styles. ustring selected_style; // Merge. unsigned int merge_action; // Question dialogs. map yes_no_always_dialog_enabled; map yes_no_always_dialog_response; private: }; #endif bibledit-gtk-4.9/src/session_highlights.cpp000664 000766 000024 00000003003 12221507140 021233 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "session_highlights.h" SessionHighlights::SessionHighlights(const ustring & word_in, bool casesensitive_in, bool globbing_in, bool matchbegin_in, bool matchend_in, AreaType areatype_in, bool id_in, bool intro_in, bool heading_in, bool chapter_in, bool study_in, bool notes_in, bool xref_in, bool verse_in) // This object stores highlighting information. { word = word_in; casesensitive = casesensitive_in; globbing = globbing_in; matchbegin = matchbegin_in; matchend = matchend_in; areatype = areatype_in; id = id_in; intro = intro_in; heading = heading_in; chapter = chapter_in; study = study_in; notes = notes_in; xref = xref_in; verse = verse_in; } SessionHighlights::~SessionHighlights() { } bibledit-gtk-4.9/src/session_highlights.h000664 000766 000024 00000003055 12221507146 020715 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_SESSION_HIGHLIGHTS_H #define INCLUDED_SESSION_HIGHLIGHTS_H #include "libraries.h" #include "types.h" class SessionHighlights { public: SessionHighlights (const ustring& word_in, bool casesensitive_in, bool globbing_in, bool matchbegin_in, bool matchend_in, AreaType areatype_in, bool id_in, bool intro_in, bool heading_in, bool chapter_in, bool study_in, bool notes_in, bool xref_in, bool verse_in); ~SessionHighlights (); ustring word; bool casesensitive; bool globbing; bool matchbegin; bool matchend; AreaType areatype; bool id; bool intro; bool heading; bool chapter; bool study; bool notes; bool xref; bool verse; private: }; #endif bibledit-gtk-4.9/src/settings.cpp000644 000766 000024 00000006160 12460404402 017205 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "settings.h" Settings::Settings(bool save_on_destroy): session(0), genconfig(save_on_destroy) /* Before this we used to retrieve every setting from the databases, every time it was needed. This made bibledit sluggish in cases where many values were needed at once. This new object is a much faster, in-memory, system for the settings. It loads a value the first time it is requested, and then keeps it in memory for the rest of the time. It will write the values back to disk on object destruction. [MAP: This last statement is true, but it is not good design. There should be a save_settings routine that is called explicitly, and object destruction should not save any settings, because we don't know when that routine will be called relative to all other object destructions, if at all (i.e. if the program terminates early). */ { event_id = g_timeout_add_full(G_PRIORITY_DEFAULT, 300000, GSourceFunc(on_timeout), gpointer(this), NULL); } Settings::~Settings() { for (unsigned int i = 0; i < projectconfigurations.size(); i++) { delete projectconfigurations[i]; } } ProjectConfiguration * Settings::projectconfig(ustring project, bool save_on_destroy) // Returns the ProjectConfiguration object for "project". { // Accomodate an empty project: Take the one currently opened. if (project.empty()) { project = genconfig.project_get(); } // If this configuration has been loaded already, return a pointer to it. for (unsigned int i = 0; i < projectconfigurations.size(); i++) { if (project == projectconfigurations[i]->project) { return projectconfigurations[i]; } } // Configuraton was not loaded yet, create a new object and return a pointer to it. ProjectConfiguration *projectconfiguration = new ProjectConfiguration(project, save_on_destroy); projectconfigurations.push_back(projectconfiguration); return projectconfigurations[projectconfigurations.size() - 1]; } // A good example of a repetitively-called routine that saves // settings every once in a while. void Settings::save () // Saves the configurations to disk. { genconfig.save(); for (unsigned int i = 0; i < projectconfigurations.size(); i++) { projectconfigurations[i]->save(); } } bool Settings::on_timeout(gpointer user_data) { ((Settings *) user_data)->timeout(); return true; } void Settings::timeout () { save (); } bibledit-gtk-4.9/src/settings.h000664 000766 000024 00000002521 12221507130 016646 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_SETTINGS_H #define INCLUDED_SETTINGS_H #include "libraries.h" #include "session.h" #include "settings.h" #include "generalconfig.h" #include "projectconfig.h" class Settings { public: Settings (bool save_on_destroy); ~Settings (); Session session; GeneralConfiguration genconfig; ProjectConfiguration * projectconfig (ustring project, bool save_on_destroy = true); void save (); private: vector projectconfigurations; unsigned int event_id; static bool on_timeout(gpointer user_data); void timeout(); }; #endif bibledit-gtk-4.9/src/shell.cpp000664 000766 000024 00000006620 12221507130 016454 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "shell.h" #include "gwrappers.h" #include "directories.h" #include "utilities.h" #include "gtkwrappers.h" #include "progresswindow.h" #include "unixwrappers.h" #include "tiny_utilities.h" bool program_is_running(const ustring & commandline) // Returns true if the program given on "commandline" is running. { return (programs_running_count(commandline) > 0); } int programs_running_count(const ustring & commandline) // Returns how many times the program given on "commandline" is running. { // Get the processes. vector processes = list_processes (); // Usage count. int count = 0; for (unsigned int i = 0; i < processes.size(); i++) if (processes[i].find(commandline) != string::npos) count++; // Return the count. return count; } vector list_processes () // Lists the current processes from the process status program. { vector processes; #ifdef WIN32 GwSpawn spawn("tasklist"); #else GwSpawn spawn("ps"); spawn.arg("ax"); #endif spawn.read(); spawn.run(); processes = spawn.standardout; return processes; } ustring shell_quote_space(const ustring & filename) // Puts quotes and spaces around a filename, making it fit for the shell. // Example: /home/user/John Johnson/.bibledit/projects/test/Genesis // becomes: '/home/user/John Johnson/.bibledit/projects/test/Genesis' // with an extra space prefixed and suffixed. // Unix does not allow spaces in the user names, at the time of writing, // but Windows does. // This function was introduced to address this situation, but has a wider // use too. // In Windows, do not quote the name if it contains no space. // Quoting the /s of the rmdir command, for example, confused the command. { ustring quotedname; #ifdef WIN32 if (filename.find(" ") != string::npos) quotedname = " \"" + filename + "\" "; else quotedname = " " + filename + " "; #endif #ifndef WIN32 quotedname = " '" + filename + "' "; #endif return quotedname; } ustring shell_clean_filename(const ustring & filename) // Replace characters like ' and / occur in the filename with _. { ustring cleanfile(filename); replace_text(cleanfile, "'", "_"); replace_text(cleanfile, "/", "_"); return cleanfile; } void shell_pipe_file_append(const ustring & inputfile, const ustring & outputfile) // cat inputfile >> outputfile. { ustring command; #ifdef WIN32 command.append("type"); #else command.append("cat"); #endif command.append(shell_quote_space(inputfile)); command.append(">>"); command.append(shell_quote_space(outputfile)); if (system(command.c_str())) ; // This one does not work with GwSpawn because pipes used. } bibledit-gtk-4.9/src/shell.h000664 000766 000024 00000002340 12221507140 016115 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_SHELL_H #define INCLUDED_SHELL_H #include "libraries.h" #include #include bool program_is_running (const ustring & commandline); int programs_running_count (const ustring & commandline); vector list_processes (); ustring shell_quote_space (const ustring& filename); ustring shell_clean_filename (const ustring& filename); void shell_pipe_file_append (const ustring& inputfile, const ustring& outputfile); #endif bibledit-gtk-4.9/src/shortcuts.cpp000664 000766 000024 00000010670 12221507135 017410 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "utilities.h" #include "shortcuts.h" Shortcuts::Shortcuts(int dummy) /* In many dialogs there are various texts which need to have their underscore character to get a shortcut. Shortcuts need to be unique within one dialog for quick operation. This objects adds shortcuts to the texts given to them, and ensures they are unique within the set given. */ { // Can't make a shortcut out of a space. unavailables.insert(" "); } Shortcuts::~Shortcuts() { for (unsigned int i = 0; i < created_widgets.size(); i++) { gtk_widget_destroy (created_widgets[i]); } } void Shortcuts::stockbutton(GtkWidget * widget) { if (widget == NULL) return; GtkStockItem stockitem; if (gtk_stock_lookup(gtk_button_get_label(GTK_BUTTON(widget)), &stockitem)) { ustring s(stockitem.label); size_t pos = s.find("_"); pos++; if (pos < s.length()) unavailables.insert(s.substr(pos, 1).casefold()); } lastwidget = widget; } void Shortcuts::button(GtkWidget * widget) { if (widget == NULL) return; widgets.push_back(widget); is_button.push_back(true); lastwidget = widget; } void Shortcuts::label(GtkWidget * widget) { if (widget == NULL) return; widgets.push_back(widget); is_button.push_back(false); lastwidget = widget; } void Shortcuts::process() // Removes any existing shortcuts, and insert new ones. { // First pass: Go through the widgets and the ones that have the first // character of their label not yet used as a shortcut, set it as the shortcut. // Store the other ones for the next pass. vector < GtkWidget * >widgets2; vector < bool > is_button2; for (unsigned int i = 0; i < widgets.size(); i++) { ustring label; if (is_button[i]) label = gtk_button_get_label(GTK_BUTTON(widgets[i])); else label = gtk_label_get_text(GTK_LABEL(widgets[i])); replace_text(label, "_", ""); if (!label.empty()) { ustring start = label.substr(0, 1).casefold(); if (unavailables.find(start) == unavailables.end()) { label.insert(0, "_"); if (is_button[i]) gtk_button_set_label(GTK_BUTTON(widgets[i]), label.c_str()); else gtk_label_set_text_with_mnemonic(GTK_LABEL(widgets[i]), label.c_str()); unavailables.insert(start); } else { widgets2.push_back(widgets[i]); is_button2.push_back(is_button[i]); } } } // Second pass: use the next available character of a widget's label as a // shortcut. for (unsigned int i = 0; i < widgets2.size(); i++) { ustring label; if (is_button2[i]) label = gtk_button_get_label(GTK_BUTTON(widgets2[i])); else label = gtk_label_get_text(GTK_LABEL(widgets2[i])); replace_text(label, "_", ""); for (unsigned int i2 = 1; i2 < label.length(); i2++) { ustring character = label.substr(i2, 1).casefold(); if (unavailables.find(character) == unavailables.end()) { label.insert(i2, "_"); if (is_button2[i]) gtk_button_set_label(GTK_BUTTON(widgets2[i]), label.c_str()); else gtk_label_set_text_with_mnemonic(GTK_LABEL(widgets2[i]), label.c_str()); unavailables.insert(character); break; } } } } void Shortcuts::consider_assistant () // Considers the shortcuts normally used in an assistant in addition to the content of the page. { create_widget (GTK_STOCK_HELP); create_widget (GTK_STOCK_CANCEL); create_widget (GTK_STOCK_GO_BACK); create_widget (GTK_STOCK_GO_FORWARD); create_widget (GTK_STOCK_GOTO_LAST); } void Shortcuts::create_widget (const gchar * stock) { GtkWidget * widget; widget = gtk_button_new_from_stock (stock); stockbutton (widget); created_widgets.push_back (widget); } bibledit-gtk-4.9/src/shortcuts.h000664 000766 000024 00000002471 12221507147 017060 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_SHORTCUTS_H #define INCLUDED_SHORTCUTS_H #include "libraries.h" #include class Shortcuts { public: Shortcuts (int dummy); ~Shortcuts (); void stockbutton (GtkWidget * widget); void button (GtkWidget * widget); void label (GtkWidget * widget); void process (); GtkWidget * lastwidget; void consider_assistant (); private: vector widgets; vector is_button; set unavailables; vector created_widgets; void create_widget (const gchar * stock); }; #endif bibledit-gtk-4.9/src/snapshots.cpp000644 000766 000024 00000022741 12453001367 017377 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "snapshots.h" #include "projectutils.h" #include "directories.h" #include "gwrappers.h" #include #include "date_time_utils.h" #include "progresswindow.h" #include "utilities.h" #include "tiny_utilities.h" #include "maintenance.h" #include "books.h" ustring old_snapshots_content_database (const ustring& project) // Gives the old snapshots content database for a given project. { return gw_build_filename(Directories->get_projects(), project, "snapshots.sql"); } ustring snapshots_directory (const ustring& project) { return gw_build_filename(Directories->get_projects(), project, "snapshots"); } ustring snapshots_database (const ustring& project, unsigned int book, unsigned int chapter) { ustring filename; if (book) { filename = gw_build_filename (snapshots_directory (project), books_id_to_english (book) + "." + convert_to_string (chapter) + ".sql"); } return filename; } void snapshots_initialize_all () // Initializes the snapshots system. { // Initialize contents database for all projects. vector projects = projects_get_all(); for (unsigned int i = 0; i < projects.size(); i++) { snapshots_initialize_project(projects[i]); } } void snapshots_initialize_project (const ustring& project) // Initializes the snapshots system for a given project. { // Ensure that the snapshots directory is there. ustring directory = snapshots_directory (project); if (g_file_test(directory.c_str(), G_FILE_TEST_IS_DIR)) return; // Create directory. gw_mkdir_with_parents (directory); // If the old snapshots database is there, convert it to the new, // and remove it. Otherwise take snapshot of the whole project. ustring old_filename = old_snapshots_content_database (project); if (g_file_test(old_filename.c_str(), G_FILE_TEST_IS_REGULAR)) { ProgressWindow progresswindow ("Converting snapshots to new format for project " + project, false); sqlite3 *db; sqlite3_open(old_snapshots_content_database (project).c_str(), &db); SqliteReader reader(0); char *sql; sql = g_strdup_printf("select * from snapshots;"); sqlite3_exec(db, sql, reader.callback, &reader, NULL); g_free(sql); progresswindow.set_iterate (0, 1, reader.ustring0.size()); for (unsigned int i = 0; i < reader.ustring0.size(); i++) { progresswindow.iterate (); unsigned int book = convert_to_int (reader.ustring0[i]); unsigned int chapter = convert_to_int (reader.ustring1[i]); ustring content = reader.ustring2[i]; unsigned int seconds = convert_to_int (reader.ustring3[i]); unsigned int persistent = convert_to_int (reader.ustring4[i]); snapshots_shoot_chapter (project, book, chapter, content, seconds, persistent); } sqlite3_close(db); unlink (old_filename.c_str()); } else { snapshots_shoot_project (project); } } void snapshots_shoot_project (const ustring& project) // Takes a snapshot of the whole project. { ProgressWindow progresswindow ("Updating Snapshots for Project " + project, false); // Store snapshots of all the chapters in the project. vector books = project_get_books(project); progresswindow.set_iterate(0, 1, books.size()); for (unsigned int bk = 0; bk < books.size(); bk++) { progresswindow.iterate(); vector chapters = project_get_chapters(project, books[bk]); for (unsigned int ch = 0; ch < chapters.size(); ch++) { snapshots_shoot_chapter (project, books[bk], chapters[ch], 0, false); } } } void snapshots_shoot_chapter (const ustring& project, unsigned int book, unsigned int chapter, const ustring& content, unsigned int seconds, bool persistent) // Stores the data passed as a snapshot. { // Database filename. ustring filename = snapshots_database (project, book, chapter); // Create the database if it does not exist. if (!g_file_test(filename.c_str(), G_FILE_TEST_IS_REGULAR)) { sqlite3 *db; sqlite3_open(filename.c_str(), &db); sqlite3_exec(db, "PRAGMA synchronous=OFF;", NULL, NULL, NULL); char *sql; sql = g_strdup_printf("create table snapshots (content text, seconds integer, persistent integer);"); sqlite3_exec(db, sql, NULL, NULL, NULL); g_free(sql); sqlite3_close(db); } // Store it in the database. sqlite3 *db; sqlite3_open(snapshots_database (project, book, chapter).c_str(), &db); char *sql; sql = g_strdup_printf("insert into snapshots values ('%s', %d, %d)", double_apostrophy (content).c_str(), seconds, persistent); sqlite3_exec(db, sql, NULL, NULL, NULL); g_free(sql); sqlite3_close(db); } void snapshots_shoot_chapter (const ustring& project, unsigned int book, unsigned int chapter, unsigned int seconds, bool persistent) // Stores a snapshot of the chapter in the database. // seconds: the time. If 0, it makes its own time. // persistent: whether this snapshots is persistent, that is, should never be removed. { // Get the right seconds. if (seconds == 0) seconds = date_time_seconds_get_current(); // Get the chapter data. gchar *contents; ustring datafile = project_data_filename_chapter (project, book, chapter, false); g_file_get_contents(datafile.c_str(), &contents, NULL, NULL); ustring content; if (contents) { content = contents; g_free (contents); } // Store it. snapshots_shoot_chapter (project, book, chapter, content, seconds, persistent); // Register the database. maintenance_register_snapshot (snapshots_database (project, book, chapter)); maintenance_register_database (snapshots_database (project, book, chapter)); } vector snapshots_get_seconds (const ustring& project, unsigned int book, unsigned int chapter) // Retrieves a list of seconds from the database, given a project, book, and chapter. { vector seconds; sqlite3 *db; sqlite3_open(snapshots_database (project, book, chapter).c_str(), &db); SqliteReader reader(0); char *sql; sql = g_strdup_printf("select seconds from snapshots order by seconds desc;"); sqlite3_exec(db, sql, reader.callback, &reader, NULL); g_free(sql); for (unsigned int i = 0; i < reader.ustring0.size(); i++) { seconds.push_back (convert_to_int (reader.ustring0[i])); } sqlite3_close(db); return seconds; } ustring snapshots_get_chapter (const ustring& project, unsigned int book, unsigned int chapter, unsigned int seconds) // Retrieves a chapter's data from the database, given a project, book, chapter number, and the seconds. { ustring data; sqlite3 *db; sqlite3_open(snapshots_database (project, book, chapter).c_str(), &db); SqliteReader reader(0); char *sql; sql = g_strdup_printf("select content from snapshots where seconds = %d;", seconds); sqlite3_exec(db, sql, reader.callback, &reader, NULL); g_free(sql); if (!reader.ustring0.empty()) { data = reader.ustring0[0]; } sqlite3_close(db); return data; } unsigned int snapshots_oldest_second (const ustring& project) { unsigned int oldest_second = 0; bool first_one_found = false; for (unsigned int book = 1; book <= 150; book++) { for (unsigned int chapter = 0; chapter <= 150; chapter++) { ustring filename = snapshots_database (project, book, chapter); if (g_file_test(filename.c_str(), G_FILE_TEST_IS_REGULAR)) { sqlite3 *db; sqlite3_open(filename.c_str(), &db); SqliteReader reader(0); char *sql; sql = g_strdup_printf("select seconds from snapshots order by seconds asc;"); sqlite3_exec(db, sql, reader.callback, &reader, NULL); g_free(sql); if (!reader.ustring0.empty()) { unsigned int second = convert_to_int (reader.ustring0[0]); if (first_one_found) { if (second < oldest_second) oldest_second = second; } else { oldest_second = second; } first_one_found = true; } sqlite3_close(db); } } } return oldest_second; } void snapshots_get_chapters_changed_since(const ustring & project, unsigned int second, vector & books, vector & chapters) // This gives the books and chapters changed since the second given. { books.clear(); chapters.clear(); vector projectbooks = project_get_books(project); for (unsigned int bk = 0; bk < projectbooks.size(); bk++) { vector projectchapters = project_get_chapters(project, projectbooks[bk]); for (unsigned int ch = 0; ch < projectchapters.size(); ch++) { unsigned int book = projectbooks[bk]; unsigned int chapter = projectchapters[ch]; vector seconds = snapshots_get_seconds (project, book, chapter); if (!seconds.empty()) { if (seconds[0] > second) { books.push_back (book); chapters.push_back (chapter); } } } } } bibledit-gtk-4.9/src/snapshots.h000664 000766 000024 00000003671 12221507140 017040 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_SNAPSHOTS_H #define INCLUDED_SNAPSHOTS_H #include "libraries.h" ustring old_snapshots_content_database (const ustring& project); ustring snapshots_directory (const ustring& project); ustring snapshots_database (const ustring& project, unsigned int book, unsigned int chapter); void snapshots_initialize_all (); void snapshots_initialize_project (const ustring& project); void snapshots_shoot_project (const ustring& project); void snapshots_shoot_chapter (const ustring& project, unsigned int book, unsigned int chapter, unsigned int seconds, bool persistent); void snapshots_shoot_chapter (const ustring& project, unsigned int book, unsigned int chapter, const ustring& content, unsigned int seconds, bool persistent); vector snapshots_get_seconds (const ustring& project, unsigned int book, unsigned int chapter); ustring snapshots_get_chapter (const ustring& project, unsigned int book, unsigned int chapter, unsigned int seconds); unsigned int snapshots_oldest_second (const ustring& project); void snapshots_get_chapters_changed_since(const ustring & project, unsigned int second, vector & books, vector & chapters); #endif bibledit-gtk-4.9/src/spelling.cpp000644 000766 000024 00000053265 12453001367 017177 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "spelling.h" #include #include "gwrappers.h" #include "directories.h" #include "shell.h" #include "utilities.h" #include "tiny_utilities.h" #include "projectutils.h" #include "editor_aids.h" ustring spelling_global_dictionary() { return "Global Dictionary"; } const gchar *spelling_project_dictionary_prefix() { return "Project "; } const gchar *spelling_project_dictionary_suffix() { return " Shared Dictionary"; } ustring spelling_project_dictionary(const ustring & project) { return spelling_project_dictionary_prefix() + project + spelling_project_dictionary_suffix(); } static void enumerate_dicts(const char *const lang_tag, const char *const provider_name, const char *const provider_desc, const char *const provider_file, void *user_data) { ((vector < ustring > *)user_data)->push_back(lang_tag); } vector < ustring > spelling_enchant_dictionaries() { vector < ustring > dictionaries; EnchantBroker *broker = enchant_broker_init(); enchant_broker_list_dicts(broker, enumerate_dicts, &dictionaries); enchant_broker_free(broker); return dictionaries; } bool spelling_dictionary_editable(const ustring & dictionary) { if (dictionary == spelling_global_dictionary()) return true; if (g_str_has_prefix(dictionary.c_str(), spelling_project_dictionary_prefix())) if (g_str_has_suffix(dictionary.c_str(), spelling_project_dictionary_suffix())) return true; return false; } ustring spelling_dictionary_filename(ustring dictionary) { if (dictionary == spelling_global_dictionary()) { return gw_build_filename(Directories->get_configuration(), "global_dictionary"); } if (g_str_has_prefix(dictionary.c_str(), spelling_project_dictionary_prefix())) { dictionary.erase(0, strlen(spelling_project_dictionary_prefix())); if (g_str_has_suffix(dictionary.c_str(), spelling_project_dictionary_suffix())) { size_t length = strlen(spelling_project_dictionary_suffix()); dictionary.erase(dictionary.length() - length, length); ustring project(dictionary); ustring filename = gw_build_filename(project_data_directory_project(project), "shared_dictionary"); return filename; } } return ""; } const gchar *spelling_tag_name() { return "misspelling"; } SpellingChecker::SpellingChecker(GtkTextTagTable * texttagtable) { misspelling_tag = gtk_text_tag_new(spelling_tag_name()); gtk_text_tag_table_add(texttagtable, misspelling_tag); g_object_unref(misspelling_tag); GValue gvalue = { 0, }; g_value_init(&gvalue, PANGO_TYPE_UNDERLINE); g_value_set_enum(&gvalue, PANGO_UNDERLINE_ERROR); g_object_set_property(G_OBJECT(misspelling_tag), "underline", &gvalue); g_value_unset(&gvalue); broker = NULL; check_signal = gtk_button_new(); } SpellingChecker::~SpellingChecker() { gtk_widget_destroy(check_signal); free_enchant(); } void SpellingChecker::free_enchant() { // Bail out if there's no broker. if (!broker) return; // Free the dictionaries. for (unsigned int i = 0; i < dicts.size(); i++) { enchant_broker_free_dict(broker, dicts[i]); } dicts.clear(); pwls.clear(); // Free the broker. enchant_broker_free(broker); // Clear internal buffers. correct_words.clear(); incorrect_words.clear(); } void SpellingChecker::set_dictionaries(const vector < ustring > &dictionaries) // Sets the dictionaries to be used for the spelling checker. { free_enchant(); broker = enchant_broker_init(); for (unsigned int i = 0; i < dictionaries.size(); i++) { ustring filename = spelling_dictionary_filename(dictionaries[i]); EnchantDict *dict = NULL; bool pwl = false; if (filename.empty()) { dict = enchant_broker_request_dict(broker, dictionaries[i].c_str()); pwl = false; } else { dict = enchant_broker_request_pwl_dict(broker, filename.c_str()); pwl = true; } if (dict) { dicts.push_back(dict); pwls.push_back(pwl); } else { gw_warning("Enchant error for dictionary " + dictionaries[i]); } } } void SpellingChecker::check(GtkTextBuffer * textbuffer) { // Erase any previous marks for spelling mistakes. GtkTextIter startiter, enditer; gtk_text_buffer_get_start_iter(textbuffer, &startiter); gtk_text_buffer_get_end_iter(textbuffer, &enditer); gtk_text_buffer_remove_tag(textbuffer, misspelling_tag, &startiter, &enditer); // Proceed with next step of speller. collect_words(textbuffer); } void SpellingChecker::collect_words(GtkTextBuffer * textbuffer) // Collects words to be spelling checked. { // Iterators for going through the buffer. GtkTextIter startiter, enditer; // Find all the words. gtk_text_buffer_get_start_iter(textbuffer, &enditer); while (gtk_text_iter_forward_word_end(&enditer)) { startiter = enditer; gtk_text_iter_backward_word_start(&startiter); GtkTextIter moved_enditer; if (move_end_iterator_before_note_caller_and_validate (startiter, enditer, moved_enditer)) { check_word(textbuffer, &startiter, &moved_enditer); } } /* See the following bug: I'm working with a bunch of languages that use the hyphen within their words. The hyphen is seen as a word break in BE. Does anyone know if there a unicode character that looks like a hyphen, but will be viewed as a regular character? I've tried a non-breaking hyphen and the spellchecker still sees it as a word break. As far as I can tell, Unicode does not specify any hyphen character that must not act as a word boundary (except for the soft hyphen, but that would not fulfill your needs because it is not visible except when it is followed by a line break); pretty much any of the hyphen characters may be tailored not to act as a word boundary, though. I would say that should be something that the localization of the spell checker should take care of, so if none of the characters works (see the list below—in particular notice that the actual hyphen Unicode character is not what you get when you type a hyphen on your keyboard; that is instead the hyphen-minus character), you may want to submit this as a bug/feature request with the project for whatever spell checking library is used by Bibledit (I'm assuming BE uses one of the many open-source spelling libraries and not a home-grown one). In particular, I would say that a person who uses a "non-breaking hyphen" probably typically expects its "non-breaking" aspect to apply to words as well as lines (although in reality the Unicode standard requires only that a non-breaking hyphen prevent line breaks). The complete list of hyphen characters in Unicode is as follows: Hyphen or minus sign (hyphen-minus or hyphus) - U+002D Soft (or discretionary) hyphen - U+00AD Hyphen - U+2010 Non-breaking hyphen - U+2011 Hyphen bullet - U+2043 Since Pango routines are used for determining the word boundaries, the right thing to do is to fix Pango. */ } void SpellingChecker::check_word(GtkTextBuffer * textbuffer, GtkTextIter * start, GtkTextIter * end) { // Get the word. Skip digits. gchar *text = gtk_text_buffer_get_text(textbuffer, start, end, FALSE); bool digit = g_unichar_isdigit(*text); ustring word(text); g_free(text); if (digit) return; // Bail out if the word is among the correct ones that have been verified. if (correct_words.find(word) != correct_words.end()) return; // Clear flag if the word is found in the incorrect words. bool correct = true; if (incorrect_words.find(word) != incorrect_words.end()) correct = false; // If the word is still correct at this stage, it means that it is a new word // that we have not seen before. Consult the dictionary to find out about it. if (correct) { correct = false; for (unsigned int i = 0; i < dicts.size(); i++) { if (correct) continue; correct = (enchant_dict_check(dicts[i], word.c_str(), strlen(word.c_str())) == 0); } if (correct) correct_words.insert(word); else incorrect_words.insert(word); } // If the word is found to be correct, bail out. if (correct) return; // Mark the word as being a spelling mistake. gtk_text_buffer_apply_tag(textbuffer, misspelling_tag, start, end); // Store it as an incorrect word. misspellings.push_back (word); } void SpellingChecker::attach(GtkWidget * textview) // This routine attaches the spelling checker to a textview. { g_signal_connect(G_OBJECT(textview), "button-press-event", G_CALLBACK(on_button_press_event), gpointer(this)); g_signal_connect(G_OBJECT(textview), "populate-popup", G_CALLBACK(on_populate_popup), gpointer(this)); g_signal_connect(G_OBJECT(textview), "popup-menu", G_CALLBACK(on_popup_menu_event), gpointer(this)); } vector SpellingChecker::get_misspellings (GtkTextBuffer * textbuffer) { misspellings.clear(); collect_words (textbuffer); return misspellings; } gboolean SpellingChecker::on_button_press_event(GtkWidget * widget, GdkEventButton * event, gpointer user_data) // When the user right-clicks on a word, they want to check that word. // Here, we do not move the cursor to the location of the clicked-upon word // since that prevents the use of edit functions on the context menu. { ((SpellingChecker *) user_data)->button_press_event(widget, event); return false; } void SpellingChecker::button_press_event(GtkWidget * widget, GdkEventButton * event) { if (event->button == 3) { gint x, y; gtk_text_view_window_to_buffer_coords(GTK_TEXT_VIEW(widget), GTK_TEXT_WINDOW_TEXT, int (event->x), int (event->y), &x, &y); gtk_text_view_get_iter_at_location(GTK_TEXT_VIEW(widget), &right_clicked_iter, x, y); } } void SpellingChecker::on_populate_popup(GtkTextView * textview, GtkMenu * menu, gpointer user_data) { ((SpellingChecker *) user_data)->populate_popup(textview, menu); } void SpellingChecker::populate_popup(GtkTextView * textview, GtkMenu * menu) { // Find out whether a misspelled word was picked. GtkTextIter start, end; right_clicked_word_get_extends(&start, &end); // Bail out if there was no misspelled word. if (!gtk_text_iter_has_tag(&start, misspelling_tag)) return; // Get the misspelled word. GtkTextBuffer *buffer = gtk_text_view_get_buffer(textview); char *word; word = gtk_text_buffer_get_text(buffer, &start, &end, FALSE); // Menu separator comes first. GtkWidget *menu_item; menu_item = gtk_menu_item_new(); gtk_widget_show(menu_item); gtk_menu_shell_prepend(GTK_MENU_SHELL(menu), menu_item); // On top of it the suggestions menu. build_suggestion_menu (GTK_WIDGET (menu), buffer, word); // Free the misspelled word. g_free(word); } gboolean SpellingChecker::on_popup_menu_event(GtkTextView * view, gpointer user_data) // This event occurs when the popup menu is requested through a key-binding, // the Menu Key or +F10 by default. { ((SpellingChecker *) user_data)->popup_menu_event(view); return FALSE; } void SpellingChecker::popup_menu_event(GtkTextView * view) { GtkTextBuffer *textbuffer = gtk_text_view_get_buffer(view); GtkTextMark *textmark = gtk_text_buffer_get_insert(textbuffer); gtk_text_buffer_get_iter_at_mark(textbuffer, &right_clicked_iter, textmark); } void SpellingChecker::build_suggestion_menu (GtkWidget * menu, GtkTextBuffer *buffer, const char *word) { // Save main menu. GtkWidget * mainmenu = menu; // Go through all dictionaries to find suggestions. // The use of more than one dictionary will likely give equal suggestions. // These are removed. vector replacements; { set replacement_set; for (unsigned int d = 0; d < dicts.size(); d++) { size_t n_suggs; char **suggestions = enchant_dict_suggest(dicts[d], word, strlen(word), &n_suggs); if (suggestions) { for (size_t i = 0; i < n_suggs; i++) { if (replacement_set.find(suggestions[i]) == replacement_set.end()) { replacements.push_back(suggestions[i]); replacement_set.insert(suggestions[i]); } } enchant_dict_free_suggestions(dicts[d], suggestions); } } } GtkWidget *mi; gint position = 0; bool has_submenu = false; if (replacements.empty()) { // No spelling suggestions. GtkWidget *label; label = gtk_label_new("(No spelling suggestions)"); mi = gtk_menu_item_new(); gtk_container_add(GTK_CONTAINER(mi), label); gtk_widget_show_all(mi); gtk_menu_shell_insert(GTK_MENU_SHELL(menu), mi, position); position++; } else { // Build a set of menus with suggestions. for (unsigned int i = 0; i < replacements.size(); i++) { if (i > 0 && i % 10 == 0) { mi = gtk_menu_item_new(); gtk_widget_show(mi); gtk_menu_shell_insert(GTK_MENU_SHELL(menu), mi, position); position++; mi = gtk_menu_item_new_with_label("More..."); gtk_widget_show(mi); gtk_menu_shell_insert(GTK_MENU_SHELL(menu), mi, position); position++; menu = gtk_menu_new(); gtk_menu_item_set_submenu(GTK_MENU_ITEM(mi), menu); position = 0; has_submenu = true; } mi = gtk_menu_item_new_with_label(replacements[i].c_str()); g_signal_connect(G_OBJECT(mi), "activate", G_CALLBACK(on_replace_word), gpointer(this)); gtk_widget_show(mi); gtk_menu_shell_insert(GTK_MENU_SHELL(menu), mi, position); position++; } } // Calculate position to insert the rest of the spelling menu. if (has_submenu) position = 12; // Separator mi = gtk_menu_item_new(); gtk_widget_show(mi); gtk_menu_shell_insert(GTK_MENU_SHELL(mainmenu), mi, position); position++; // + Add to Dictionary char *label; label = g_strdup_printf("A_dd \"%s\" to Dictionary", word); mi = gtk_image_menu_item_new_with_mnemonic(label); g_free(label); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(mi), gtk_image_new_from_stock(GTK_STOCK_ADD, GTK_ICON_SIZE_MENU)); g_signal_connect(G_OBJECT(mi), "activate", G_CALLBACK(on_add_to_dictionary), gpointer(this)); gtk_widget_show_all(mi); gtk_menu_shell_insert(GTK_MENU_SHELL(mainmenu), mi, position); position++; // - Ignore All mi = gtk_image_menu_item_new_with_mnemonic("_Ignore All"); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(mi), gtk_image_new_from_stock(GTK_STOCK_REMOVE, GTK_ICON_SIZE_MENU)); g_signal_connect(G_OBJECT(mi), "activate", G_CALLBACK(on_ignore_all), gpointer(this)); gtk_widget_show_all(mi); gtk_menu_shell_insert(GTK_MENU_SHELL(mainmenu), mi, position); position++; } void SpellingChecker::right_clicked_word_get_extends(GtkTextIter * start, GtkTextIter * end) // Get the word boundaries for the word the user right-clicked. { // Get the boundaries. *start = right_clicked_iter; if (!gtk_text_iter_starts_word(start)) gtk_text_iter_backward_word_start(start); *end = *start; if (gtk_text_iter_inside_word(end)) gtk_text_iter_forward_word_end(end); // Exclude note callers that follow. move_end_iterator_before_note_caller_and_validate (* start, * end, * end); } void SpellingChecker::on_add_to_dictionary(GtkWidget * menuitem, gpointer user_data) { ((SpellingChecker *) user_data)->add_to_dictionary(menuitem); } void SpellingChecker::add_to_dictionary(GtkWidget * menuitem) { GtkTextBuffer *buffer = gtk_text_iter_get_buffer(&right_clicked_iter); GtkTextIter start, end; right_clicked_word_get_extends(&start, &end); char *word = gtk_text_buffer_get_text(buffer, &start, &end, FALSE); add_to_dictionary (word); g_free(word); gtk_button_clicked(GTK_BUTTON(check_signal)); } void SpellingChecker::add_to_dictionary(const gchar * word) { // Get a personal wordlist. EnchantDict *personal_wordlist = NULL; for (unsigned int i = 0; i < dicts.size(); i++) { if (!personal_wordlist) { if (pwls[i]) personal_wordlist = dicts[i]; } } // Bail out if there was none. if (!personal_wordlist) { gw_warning("No personal wordlist to add the word to"); return; } // Add it. enchant_dict_add_to_pwl(personal_wordlist, word, strlen(word)); correct_words.insert(word); } void SpellingChecker::on_ignore_all(GtkWidget * menuitem, gpointer user_data) { ((SpellingChecker *) user_data)->ignore_all(menuitem); } void SpellingChecker::ignore_all(GtkWidget * menuitem) { GtkTextBuffer *buffer = gtk_text_iter_get_buffer(&right_clicked_iter); GtkTextIter start, end; right_clicked_word_get_extends(&start, &end); char *word = gtk_text_buffer_get_text(buffer, &start, &end, FALSE); correct_words.insert(word); g_free(word); gtk_button_clicked(GTK_BUTTON(check_signal)); } void SpellingChecker::on_replace_word(GtkWidget * menuitem, gpointer user_data) { ((SpellingChecker *) user_data)->replace_word(menuitem); } void SpellingChecker::replace_word(GtkWidget * menuitem) // Replaces the misspelled word in the text with the word that is chosen in the menu. // An algorithm is used that gives the replacement the same styles as the original. { // Bail out if there is no dictionary. if (dicts.empty()) return; // Get the text buffer. GtkTextBuffer *buffer = gtk_text_iter_get_buffer(&right_clicked_iter); // Get the extends of the misspelled words. GtkTextIter start, end; right_clicked_word_get_extends(&start, &end); // Get the old and the new word. char *oldword = gtk_text_buffer_get_text(buffer, &start, &end, FALSE); const char *newword = gtk_label_get_text (GTK_LABEL (gtk_bin_get_child (GTK_BIN (menuitem)))); // Get a list of the styles applied to the old word. vector < ustring > paragraph_styles; vector < ustring > character_styles; GtkTextIter iter = start; do { ustring paragraphstyle, characterstyle; get_styles_at_iterator(iter, paragraphstyle, characterstyle); paragraph_styles.push_back(paragraphstyle); character_styles.push_back(characterstyle); gtk_text_iter_forward_char(&iter); } while (!gtk_text_iter_equal(&iter, &end)); // Get the offset of the start of the word. unsigned int offset = gtk_text_iter_get_offset(&start); // Delete the old word, and insert the new one. gtk_text_buffer_delete(buffer, &start, &end); gtk_text_buffer_get_iter_at_offset (buffer, &start, offset); gtk_text_buffer_insert(buffer, &start, newword, -1); // Store this replacement in enchant. enchant_dict_store_replacement(dicts[0], oldword, strlen(oldword), newword, strlen(newword)); // Free the memory used. g_free(oldword); /* // Apply the tags of the old word to the new. This has been disabled for just now. It should use EditorActions. // If there are not enough tags, keep repeating the last one. ustring unewword(newword); for (unsigned int i = 0; i < unewword.length(); i++) { ustring paragraphstyle; if (i < paragraph_styles.size()) paragraphstyle = paragraph_styles[i]; else paragraphstyle = paragraph_styles[paragraph_styles.size() - 1]; ustring characterstyle; if (i < character_styles.size()) characterstyle = character_styles[i]; else characterstyle = character_styles[character_styles.size() - 1]; gtk_text_buffer_get_iter_at_offset(buffer, &start, offset + i); gtk_text_buffer_get_iter_at_offset(buffer, &end, offset + i + 1); gtk_text_buffer_remove_all_tags(buffer, &start, &end); if (!paragraphstyle.empty()) { gtk_text_buffer_apply_tag_by_name(buffer, paragraphstyle.c_str(), &start, &end); } if (!characterstyle.empty()) gtk_text_buffer_apply_tag_by_name(buffer, characterstyle.c_str(), &start, &end); } */ } void SpellingChecker::set_checkable_tags(const vector < ustring > &tags) // Sets the tags that can be checked. This implies that text that has any tags, // that is, any styles, that are not listed here, is not checked. // The purpose of this is to prevent the checking of things like \id JHN, etc. // Not yet implemented. { } bool SpellingChecker::move_cursor_to_spelling_error (GtkTextBuffer* textbuffer, bool next, bool extremity) // Moves the cursor to the next spelling error in the textbuffer. // Returns true if the cursor was moved. { // Get current cursor iterator. GtkTextIter iter; gtk_text_buffer_get_iter_at_mark(textbuffer, &iter, gtk_text_buffer_get_insert(textbuffer)); // Move the iterator if we're working from the extremity of the textbuffer. if (extremity) { if (next) { gtk_text_buffer_get_start_iter (textbuffer, &iter); } else { gtk_text_buffer_get_end_iter (textbuffer, &iter); } } // If the iterator is inside a misspelling, move it out. Bail out if it can't. while (gtk_text_iter_has_tag (&iter, misspelling_tag)) { if (next) { if (!gtk_text_iter_forward_char (&iter)) return false; } else { if (!gtk_text_iter_backward_char (&iter)) return false; } } // Move the cursor to the start or end of a misspelling. Bail out if it can't. while (!gtk_text_iter_has_tag (&iter, misspelling_tag)) { if (next) { if (!gtk_text_iter_forward_char (&iter)) return false; } else { if (!gtk_text_iter_backward_char (&iter)) return false; } } // Place the cursor on the new misspelling. gtk_text_buffer_place_cursor (textbuffer, &iter); // New misspelling found. return true; } bibledit-gtk-4.9/src/spelling.h000664 000766 000024 00000006444 12221507140 016634 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_SPELLING_H #define INCLUDED_SPELLING_H #include "libraries.h" #include #include #include ustring spelling_global_dictionary (); const gchar * spelling_project_dictionary_prefix (); const gchar * spelling_project_dictionary_suffix (); ustring spelling_project_dictionary (const ustring& project); vector spelling_enchant_dictionaries (); bool spelling_dictionary_editable (const ustring& dictionary); ustring spelling_dictionary_filename (ustring dictionary); const gchar * spelling_tag_name (); class SpellingChecker { public: SpellingChecker (GtkTextTagTable *texttagtable); ~SpellingChecker (); GtkTextTag *misspelling_tag; void attach (GtkWidget * textview); void set_dictionaries (const vector & dictionaries); void check (GtkTextBuffer* textbuffer); GtkWidget * check_signal; void set_checkable_tags (const vector & tags); bool move_cursor_to_spelling_error (GtkTextBuffer* textbuffer, bool next, bool extremity); vector get_misspellings (GtkTextBuffer * textbuffer); void add_to_dictionary (const gchar * word); private: void collect_words (GtkTextBuffer* textbuffer); bool includes_note_caller (GtkTextIter & iter); void check_word (GtkTextBuffer* textbuffer, GtkTextIter *start, GtkTextIter *end); set correct_words; set incorrect_words; EnchantBroker * broker; vector dicts; vector pwls; void free_enchant (); static gboolean on_button_press_event (GtkWidget *widget, GdkEventButton *event, gpointer user_data); void button_press_event (GtkWidget *widget, GdkEventButton *event); static void on_populate_popup (GtkTextView *textview, GtkMenu *menu, gpointer user_data); void populate_popup (GtkTextView *textview, GtkMenu *menu); static gboolean on_popup_menu_event (GtkTextView *view, gpointer user_data); void popup_menu_event (GtkTextView *view); GtkTextIter right_clicked_iter; void build_suggestion_menu (GtkWidget * menu, GtkTextBuffer *buffer, const char *word); void right_clicked_word_get_extends (GtkTextIter * start, GtkTextIter *end); static void on_add_to_dictionary (GtkWidget *menuitem, gpointer user_data); void add_to_dictionary (GtkWidget *menuitem); static void on_ignore_all (GtkWidget *menuitem, gpointer user_data); void ignore_all (GtkWidget *menuitem); static void on_replace_word (GtkWidget *menuitem, gpointer user_data); void replace_word (GtkWidget *menuitem); set checkable_tags; vector misspellings; }; #endif bibledit-gtk-4.9/src/sqlite_reader.cpp000664 000766 000024 00000007443 12221507140 020175 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "sqlite_reader.h" SqliteReader::SqliteReader(int dummy) { } SqliteReader::~SqliteReader() { } int SqliteReader::callback(void *userdata, int argc, char **argv, char **column_names) { ((SqliteReader *) userdata)->ustring0.push_back(argv[0]); if (argc == 1) return 0; ((SqliteReader *) userdata)->ustring1.push_back(argv[1]); if (argc == 2) return 0; ((SqliteReader *) userdata)->ustring2.push_back(argv[2]); if (argc == 3) return 0; ((SqliteReader *) userdata)->ustring3.push_back(argv[3]); if (argc == 4) return 0; ((SqliteReader *) userdata)->ustring4.push_back(argv[4]); if (argc == 5) return 0; ((SqliteReader *) userdata)->ustring5.push_back(argv[5]); if (argc == 6) return 0; ((SqliteReader *) userdata)->ustring6.push_back(argv[6]); if (argc == 7) return 0; ((SqliteReader *) userdata)->ustring7.push_back(argv[7]); if (argc == 8) return 0; ((SqliteReader *) userdata)->ustring8.push_back(argv[8]); if (argc == 9) return 0; ((SqliteReader *) userdata)->ustring9.push_back(argv[9]); if (argc == 10) return 0; ((SqliteReader *) userdata)->ustring10.push_back(argv[10]); if (argc == 11) return 0; ((SqliteReader *) userdata)->ustring11.push_back(argv[11]); if (argc == 12) return 0; ((SqliteReader *) userdata)->ustring12.push_back(argv[12]); if (argc == 13) return 0; ((SqliteReader *) userdata)->ustring13.push_back(argv[13]); if (argc == 14) return 0; ((SqliteReader *) userdata)->ustring14.push_back(argv[14]); if (argc == 15) return 0; ((SqliteReader *) userdata)->ustring15.push_back(argv[15]); if (argc == 16) return 0; ((SqliteReader *) userdata)->ustring16.push_back(argv[16]); if (argc == 17) return 0; ((SqliteReader *) userdata)->ustring17.push_back(argv[17]); if (argc == 18) return 0; ((SqliteReader *) userdata)->ustring18.push_back(argv[18]); if (argc == 19) return 0; ((SqliteReader *) userdata)->ustring19.push_back(argv[19]); if (argc == 20) return 0; ((SqliteReader *) userdata)->ustring20.push_back(argv[20]); if (argc == 21) return 0; ((SqliteReader *) userdata)->ustring21.push_back(argv[21]); if (argc == 22) return 0; ((SqliteReader *) userdata)->ustring22.push_back(argv[22]); if (argc == 23) return 0; ((SqliteReader *) userdata)->ustring23.push_back(argv[23]); if (argc == 24) return 0; ((SqliteReader *) userdata)->ustring24.push_back(argv[24]); if (argc == 25) return 0; ((SqliteReader *) userdata)->ustring25.push_back(argv[25]); if (argc == 26) return 0; ((SqliteReader *) userdata)->ustring26.push_back(argv[26]); if (argc == 27) return 0; ((SqliteReader *) userdata)->ustring27.push_back(argv[27]); if (argc == 28) return 0; ((SqliteReader *) userdata)->ustring28.push_back(argv[28]); return 0; } /* About other databases than sqlite3. There is the gdbm database. See man gdbm. Is it supported on Mac and Windows? This databaseb does now allow concurrent access and is not thread-safe, both of which we need. */ bibledit-gtk-4.9/src/sqlite_reader.h000664 000766 000024 00000003641 12221507130 017635 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_SQLITE_READER_H #define INCLUDED_SQLITE_READER_H #include "libraries.h" class SqliteReader // Stores values collected during a reading session of sqlite3. { public: SqliteReader (int dummy); ~SqliteReader (); static int callback (void *userdata, int argc, char **argv, char **column_names); vector ustring0; vector ustring1; vector ustring2; vector ustring3; vector ustring4; vector ustring5; vector ustring6; vector ustring7; vector ustring8; vector ustring9; vector ustring10; vector ustring11; vector ustring12; vector ustring13; vector ustring14; vector ustring15; vector ustring16; vector ustring17; vector ustring18; vector ustring19; vector ustring20; vector ustring21; vector ustring22; vector ustring23; vector ustring24; vector ustring25; vector ustring26; vector ustring27; vector ustring28; private: }; #endif bibledit-gtk-4.9/src/startup.cpp000644 000766 000024 00000004101 12455215403 017045 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 #include "startup.h" #include "gtkwrappers.h" #include "shell.h" bool check_bibledit_startup_okay (int argc, char *argv[]) // Returns true if it is okay to start bibledit. { // Do not run as root (does not apply to Windows). #ifndef WIN32 bool root = (getuid() == 0); if (root) { gtkw_dialog_error(NULL, "Bibledit-Gtk has not been designed to run as user root.\n" "Please run it as a standard user."); return false; } #endif // Check arguments whether to bypass the check on another instance of bibledit. if (argc >= 2 && strcmp(argv[1], "--debug") == 0) { return true; } // See whether Bibledit itself is running already. vector processes = list_processes (); int count = 0; for (unsigned int i = 0; i < processes.size(); i++) { if (g_str_has_suffix (processes[i].c_str(), "bibledit-gtk")) { count++; } } if (count > 1) { gtkw_dialog_error(NULL, "Bibledit-Gtk is already running."); return false; } // See whether Bibledit is shutting down. if (program_is_running ("bibledit-shutdown")) { gtkw_dialog_error(NULL, "The previous instance of Bibledit-Gtk is still optimizing its data while shutting down.\nPlease wait till that has been done, and try again."); return false; } // It's ok to start. return true; } bibledit-gtk-4.9/src/startup.h000664 000766 000024 00000001712 12221507146 016520 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_STARTUP_H #define INCLUDED_STARTUP_H #include "libraries.h" #include #include bool check_bibledit_startup_okay (int argc, char *argv[]); #endif bibledit-gtk-4.9/src/statistics.cpp000644 000766 000024 00000020614 12453001367 017544 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "statistics.h" #include "projectutils.h" #include "directories.h" #include "gwrappers.h" #include #include "date_time_utils.h" #include "reference.h" #include "progresswindow.h" #include "utilities.h" class StatisticsRecord { public: StatisticsRecord(const ustring & project); ~StatisticsRecord(); void edit(const Reference & reference); private: ustring myproject; vector < Reference > edits; }; ustring statistics_database(const ustring & project, const gchar * suffix) { ustring filename; filename = gw_build_filename(Directories->get_projects(), project, "statistics."); if (suffix) filename.append(suffix); // Current suffix. else filename.append("sql1"); return filename; } void statistics_initial_check_all() // Does initial checks on the statistics systems. { // Do all projects. vector < ustring > projects = projects_get_all(); for (unsigned int i = 0; i < projects.size(); i++) { statistics_initial_check_project(projects[i], true); } } void statistics_initial_check_project(const ustring & project, bool gui) // Does initial checks on the statistics system of a project. // Upgrades if needed. { // Name of the database. ustring filename = statistics_database(project); // Since the system is out of order, remove any old database. if (g_file_test(filename.c_str(), G_FILE_TEST_IS_REGULAR)) { gw_message ("Removing Statistics Database for project " + project); unlink (filename.c_str()); } return; // Skip if database exists. if (g_file_test(filename.c_str(), G_FILE_TEST_IS_REGULAR)) return; // Progress. cout << "Statistics database for " << project << ":"; ProgressWindow *progresswindow = NULL; if (gui) progresswindow = new ProgressWindow(project + ": upgrading statistics", false); // Create and initialize the database. filename = statistics_database(project, "sql1"); if (!g_file_test(filename.c_str(), G_FILE_TEST_IS_REGULAR)) { cout << " creating"; sqlite3 *db; int rc; try { rc = sqlite3_open(filename.c_str(), &db); if (rc) throw runtime_error(sqlite3_errmsg(db)); char *sql; // Table stores date/time that changes where made in a reference. sql = g_strdup_printf("create table edits (book integer, chapter integer, verse text, seconds integer);"); rc = sqlite3_exec(db, sql, NULL, NULL, NULL); g_free(sql); if (rc) throw runtime_error(sqlite3_errmsg(db)); // Fast write. sql = g_strdup_printf("PRAGMA synchronous=OFF;"); rc = sqlite3_exec(db, sql, NULL, NULL, NULL); g_free(sql); if (rc) throw runtime_error(sqlite3_errmsg(db)); // Initially fill the table with all verses we now have. int seconds = date_time_seconds_get_current(); vector < unsigned int >books = project_get_books(project); if (gui) progresswindow->set_iterate(0, 1, books.size()); for (unsigned int bk = 0; bk < books.size(); bk++) { if (gui) progresswindow->iterate(); vector < unsigned int >chapters = project_get_chapters(project, books[bk]); for (unsigned int ch = 0; ch < chapters.size(); ch++) { vector < ustring > verses = project_get_verses(project, books[bk], chapters[ch]); for (unsigned int vs = 0; vs < verses.size(); vs++) { sql = g_strdup_printf("insert into edits values (%d, %d, '%s', %d)", books[bk], chapters[ch], verses[vs].c_str(), seconds); rc = sqlite3_exec(db, sql, NULL, NULL, NULL); g_free(sql); if (rc) throw runtime_error(sqlite3_errmsg(db)); } } } } catch(exception & ex) { gw_critical(ex.what()); } sqlite3_close(db); } // End progress. cout << endl; if (gui) delete progresswindow; } void statistics_record_store_chapter(const ustring & project, unsigned int book, unsigned int chapter, CategorizeChapterVerse & ccv, unsigned int first, unsigned int last) { return; // Does the book exist? bool book_exists = project_book_exists(project, book); // List of verses currently in the chapter. vector < ustring > current_verses; if (book_exists) current_verses = project_get_verses(project, book, chapter); // List of verses going to be stored in the chapter. set < ustring > new_verses; for (unsigned int i = first; i < last; i++) { new_verses.insert(ccv.verse[i]); } // Statistics recorder. StatisticsRecord record(project); // Check if a verse fell out. for (unsigned int i = 0; i < current_verses.size(); i++) { if (new_verses.find(current_verses[i]) == new_verses.end()) { Reference reference(book, chapter, current_verses[i]); record.edit(reference); } } // Compare new verses with old ones. for (unsigned int i = first; i < last; i++) { ustring old_data; if (book_exists) old_data = project_retrieve_verse(project, book, chapter, ccv.verse[i]); if (ccv.line[i] != old_data) { Reference reference(book, chapter, ccv.verse[i]); record.edit(reference); } } } void statistics_record_store_verse(const ustring & project, unsigned int book, unsigned int chapter, const ustring & verse, const ustring & data) { return; ustring old_data = project_retrieve_verse(project, book, chapter, verse); if (data != old_data) { StatisticsRecord record(project); Reference reference(book, chapter, verse); record.edit(reference); } } void statistics_record_remove_chapter(const ustring & project, unsigned int book, unsigned int chapter) { return; StatisticsRecord record(project); vector < ustring > verses = project_get_verses(project, book, chapter); for (unsigned int vs = 0; vs < verses.size(); vs++) { Reference reference(book, chapter, verses[vs]); record.edit(reference); } } void statistics_record_remove_book(const ustring & project, unsigned int book) { return; StatisticsRecord record(project); vector < unsigned int >chapters = project_get_chapters(project, book); for (unsigned int ch = 0; ch < chapters.size(); ch++) { vector < ustring > verses = project_get_verses(project, book, chapters[ch]); for (unsigned int vs = 0; vs < verses.size(); vs++) { Reference reference(book, chapters[ch], verses[vs]); record.edit(reference); } } } StatisticsRecord::StatisticsRecord(const ustring & project) { myproject = project; } StatisticsRecord::~StatisticsRecord() { // See if we record edits. if (!edits.empty()) { sqlite3 *db; int rc; try { rc = sqlite3_open(statistics_database(myproject).c_str(), &db); if (rc) throw runtime_error(sqlite3_errmsg(db)); char *sql; // Fast write. sql = g_strdup_printf("PRAGMA synchronous=OFF;"); rc = sqlite3_exec(db, sql, NULL, NULL, NULL); g_free(sql); if (rc) throw runtime_error(sqlite3_errmsg(db)); // Record edits. int seconds = date_time_seconds_get_current(); for (unsigned int i = 0; i < edits.size(); i++) { sql = g_strdup_printf("insert into edits values (%d, %d, '%s', %d)", edits[i].book, edits[i].chapter, edits[i].verse.c_str(), seconds); rc = sqlite3_exec(db, sql, NULL, NULL, NULL); g_free(sql); if (rc) throw runtime_error(sqlite3_errmsg(db)); } } catch(exception & ex) { gw_critical(ex.what()); } sqlite3_close(db); } } void StatisticsRecord::edit(const Reference & reference) { edits.push_back(reference); } // Statistics is now out of order because we retrieve these things from // the Snapshots. // In the future we could use it to track administrative changes // per verse, e.g. in which stage a particular verse is. bibledit-gtk-4.9/src/statistics.h000664 000766 000024 00000003235 12221507150 017205 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_STATISTICS_H #define INCLUDED_STATISTICS_H #include "libraries.h" #include #include "categorize.h" ustring statistics_database (const ustring& project, const gchar * suffix = NULL); void statistics_initial_check_all (); void statistics_initial_check_project (const ustring& project, bool gui); void statistics_record_store_chapter (const ustring& project, unsigned int book, unsigned int chapter, CategorizeChapterVerse& ccv, unsigned int first, unsigned int last); void statistics_record_store_verse (const ustring& project, unsigned int book, unsigned int chapter, const ustring& verse, const ustring& data); void statistics_record_remove_chapter (const ustring& project, unsigned int book, unsigned int chapter); void statistics_record_remove_book (const ustring& project, unsigned int book); #endif bibledit-gtk-4.9/src/style.cpp000664 000766 000024 00000005031 12221507137 016507 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "utilities.h" #include #include "style.h" #include "xmlutils.h" #include "gwrappers.h" #include "directories.h" #include "stylesheetutils.h" #include "constants.h" Style::Style(const ustring & stylesheet, const ustring & style, bool write) // Reads a style from the database. Deprecated, use StyleV2 instead for new code. { // Save variables. mystylesheet = stylesheet; marker = style; mywrite = write; // Set default values. name = "Marker"; info = "Unified Standard Format Marker"; fontsize = 12; italic = OFF; bold = OFF; underline = OFF; underline = OFF; superscript = false; justification = LEFT; spacebefore = 0; spaceafter = 0; leftmargin = 0; rightmargin = 0; firstlineindent = 0; spancolumns = false; type = stInlineText; subtype = 0; color = 0; print = true; userbool1 = false; userbool2 = false; userbool3 = false; userint1 = 0; userint2 = 0; userint3 = 0; // Read values from the database. stylesheet_load_style(mystylesheet, *this); } Style::~Style() { // Save style in database. if (mywrite) { stylesheet_save_style(mystylesheet, *this); } } StyleV2::StyleV2(int dummy) // Contains the values for the style of one marker. { // Set default values. name = "Marker"; info = "Unified Standard Format Marker"; fontsize = 12; italic = OFF; bold = OFF; underline = OFF; underline = OFF; superscript = false; justification = LEFT; spacebefore = 0; spaceafter = 0; leftmargin = 0; rightmargin = 0; firstlineindent = 0; spancolumns = false; type = stInlineText; subtype = 0; color = 0; print = true; userbool1 = false; userbool2 = false; userbool3 = false; userint1 = 0; userint2 = 0; userint3 = 0; } StyleV2::~StyleV2() { } bibledit-gtk-4.9/src/style.h000664 000766 000024 00000007137 12221507131 016157 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_STYLE_H #define INCLUDED_STYLE_H #include "libraries.h" #include enum StyleType { stIdentifier, stNotUsedComment, stNotUsedRunningHeader, stStartsParagraph, stInlineText, stChapterNumber, stVerseNumber, stFootEndNote, stCrossreference, stPeripheral, stPicture, stPageBreak, stTableElement, stWordlistElement }; enum IdentifierType { itBook, itEncoding, itComment, itRunningHeader, itLongTOC, itShortTOC, itBookAbbrev, itChapterLabel, itPublishedChapterMarker, itCommentWithEndmarker }; enum FootEndNoteType { fentFootnote, fentEndnote, fentStandardContent, fentContent, fentContentWithEndmarker, fentParagraph }; enum CrossreferenceType { ctCrossreference, ctStandardContent, ctContent, ctContentWithEndmarker }; enum NoteNumberingType { nntNumerical, nntAlphabetical, nntUserDefined }; enum NoteNumberingRestartType { nnrtNever, nnrtBook, nnrtChapter }; enum EndnotePositionType { eptAfterBook, eptAfterEverything, eptAtMarker }; enum ParagraphType { ptMainTitle, ptSubTitle, ptSectionHeading, ptNormalParagraph }; enum PeripheralType { ptPublication, ptTableOfContents, ptPreface, ptIntroduction, ptGlossary, ptConcordance, ptIndex, ptMapIndex, ptCover, ptSpine }; enum TableElementType { tetRow, tetHeading, tetCell }; enum WordListElementType { wltWordlistGlossaryDictionary, wltHebrewWordlistEntry, wltGreekWordlistEntry, wltSubjectIndexEntry }; class Style // Manages settings for one style. DEPRECATED - Use StyleV2 instead for new code. { public: Style (const ustring& stylesheet, const ustring& style, bool write); ~Style (); ustring marker; ustring name; ustring info; StyleType type; int subtype; double fontsize; ustring italic; ustring bold; ustring underline; ustring smallcaps; bool superscript; ustring justification; double spacebefore; double spaceafter; double leftmargin; double rightmargin; double firstlineindent; bool spancolumns; unsigned int color; bool print; bool userbool1; bool userbool2; bool userbool3; int userint1; int userint2; int userint3; ustring userstring1; ustring userstring2; ustring userstring3; private: ustring mystylesheet; bool mywrite; }; class StyleV2 // Manages settings for one style. { public: StyleV2 (int dummy); ~StyleV2 (); ustring marker; ustring name; ustring info; StyleType type; int subtype; double fontsize; ustring italic; ustring bold; ustring underline; ustring smallcaps; bool superscript; ustring justification; double spacebefore; double spaceafter; double leftmargin; double rightmargin; double firstlineindent; bool spancolumns; unsigned int color; bool print; bool userbool1; bool userbool2; bool userbool3; int userint1; int userint2; int userint3; ustring userstring1; ustring userstring2; ustring userstring3; }; #endif bibledit-gtk-4.9/src/styles.cpp000664 000766 000024 00000004764 12221507143 016703 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "styles.h" #include "stylesheetutils.h" Styles::Styles(int dummy) { myusfmstandard = NULL; } Styles::~Styles() { for (unsigned int i = 0; i < usfms.size(); i++) { delete usfms[i]; } if (myusfmstandard) delete myusfmstandard; for (unsigned int i = 0; i < stylesheets.size(); i++) { delete stylesheets[i]; } } Usfm *Styles::usfm(const ustring & stylesheet) { // If these styles have been loaded already, return a pointer to them. for (unsigned int i = 0; i < usfms.size(); i++) { if (stylesheet == usfms[i]->stylesheet) { return usfms[i]; } } // If this stylesheet does not exist, create it. if (!stylesheet_exists(stylesheet)) { stylesheet_create_new(stylesheet, stFull); } // The styles were not loaded yet: create a new object and return a pointer to it. Usfm *usfm = new Usfm(stylesheet); usfms.push_back(usfm); return usfms[usfms.size() - 1]; } USFMStandard * Styles::usfmstandard() { // Create the object if it does not exist. if (myusfmstandard == NULL) { myusfmstandard = new USFMStandard (0); } // Give the object. return myusfmstandard; } Stylesheet * Styles::stylesheet (const ustring& name) { // If this stylesheet has been loaded already, return a pointer to it. for (unsigned int i = 0; i < stylesheets.size(); i++) { if (name == stylesheets[i]->name) { return stylesheets[i]; } } // If this stylesheet does not exist, create it. if (!stylesheet_exists(name)) { stylesheet_create_new(name, stFull); } // The stylesheet was not loaded yet. Return a pointer to a new one. Stylesheet *stylesheet = new Stylesheet(name); stylesheets.push_back(stylesheet); return stylesheets[stylesheets.size() - 1]; } bibledit-gtk-4.9/src/styles.h000664 000766 000024 00000002315 12221507143 016336 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_STYLES_H #define INCLUDED_STYLES_H #include "libraries.h" #include "usfm.h" #include "usfmstandard.h" #include "stylesheet.h" class Styles { public: Styles (int dummy); ~Styles (); Usfm * usfm (const ustring& stylesheet); USFMStandard * usfmstandard(); Stylesheet * stylesheet (const ustring& name); private: vector usfms; USFMStandard * myusfmstandard; vector stylesheets; }; #endif bibledit-gtk-4.9/src/stylesheet.cpp000664 000766 000024 00000032011 12221507143 017533 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "stylesheet.h" #include "utilities.h" #include "gwrappers.h" #include "directories.h" #include "tiny_utilities.h" #include #include #include "stylesheetutils.h" Stylesheet::Stylesheet(const ustring & name_in) { // Save the sheet's name. name = name_in; // If the name is empty, read from the template. ustring filename = stylesheet_xml_filename(name); if (name.empty()) filename = stylesheet_xml_template_filename(); // Read the xml data, bail out on failure. gchar *contents; g_file_get_contents(filename.c_str(), &contents, NULL, NULL); if (contents == NULL) { gw_critical("Failure reading stylesheet " + filename); return; } // Parse the stylesheet. xmlParserInputBufferPtr inputbuffer; inputbuffer = xmlParserInputBufferCreateMem(contents, strlen(contents), XML_CHAR_ENCODING_NONE); ustring value; xmlTextReaderPtr reader = xmlNewTextReader(inputbuffer, NULL); if (reader) { StyleV2 * style = NULL; while ((xmlTextReaderRead(reader) == 1)) { switch (xmlTextReaderNodeType(reader)) { case XML_READER_TYPE_ELEMENT: { xmlChar *element_name = xmlTextReaderName(reader); if (!xmlStrcmp(element_name, BAD_CAST "style")) { char *attribute = (char *)xmlTextReaderGetAttribute(reader, BAD_CAST "marker"); if (attribute) { style = new StyleV2 (0); style->marker = attribute; free(attribute); } } break; } case XML_READER_TYPE_TEXT: { xmlChar *text = xmlTextReaderValue(reader); if (text) { value = (gchar *) text; xmlFree(text); } break; } case XML_READER_TYPE_END_ELEMENT: { xmlChar *element_name = xmlTextReaderName(reader); if (style) { if (!xmlStrcmp(element_name, BAD_CAST "marker")) style->marker = value; if (!xmlStrcmp(element_name, BAD_CAST "name")) style->name = value; if (!xmlStrcmp(element_name, BAD_CAST "info")) style->info = value; if (!xmlStrcmp(element_name, BAD_CAST "type")) style->type = (StyleType) convert_to_int(value); if (!xmlStrcmp(element_name, BAD_CAST "subtype")) style->subtype = convert_to_int(value); if (!xmlStrcmp(element_name, BAD_CAST "fontsize")) style->fontsize = convert_to_double(value); if (!xmlStrcmp(element_name, BAD_CAST "italic")) style->italic = value; if (!xmlStrcmp(element_name, BAD_CAST "bold")) style->bold = value; if (!xmlStrcmp(element_name, BAD_CAST "underline")) style->underline = value; if (!xmlStrcmp(element_name, BAD_CAST "smallcaps")) style->smallcaps = value; if (!xmlStrcmp(element_name, BAD_CAST "superscript")) style->superscript = convert_to_bool(value); if (!xmlStrcmp(element_name, BAD_CAST "justification")) style->justification = value; if (!xmlStrcmp(element_name, BAD_CAST "spacebefore")) style->spacebefore = convert_to_double(value); if (!xmlStrcmp(element_name, BAD_CAST "spaceafter")) style->spaceafter = convert_to_double(value); if (!xmlStrcmp(element_name, BAD_CAST "leftmargin")) style->leftmargin = convert_to_double(value); if (!xmlStrcmp(element_name, BAD_CAST "rightmargin")) style->rightmargin = convert_to_double(value); if (!xmlStrcmp(element_name, BAD_CAST "firstlineindent")) style->firstlineindent = convert_to_double(value); if (!xmlStrcmp(element_name, BAD_CAST "spancolumns")) style->spancolumns = convert_to_bool(value); if (!xmlStrcmp(element_name, BAD_CAST "color")) style->color = convert_to_int(value); if (!xmlStrcmp(element_name, BAD_CAST "print")) style->print = convert_to_bool(value); if (!xmlStrcmp(element_name, BAD_CAST "userbool1")) style->userbool1 = convert_to_bool(value); if (!xmlStrcmp(element_name, BAD_CAST "userbool2")) style->userbool2 = convert_to_bool(value); if (!xmlStrcmp(element_name, BAD_CAST "userbool3")) style->userbool3 = convert_to_bool(value); if (!xmlStrcmp(element_name, BAD_CAST "userint1")) style->userint1 = convert_to_int(value); if (!xmlStrcmp(element_name, BAD_CAST "userint2")) style->userint2 = convert_to_int(value); if (!xmlStrcmp(element_name, BAD_CAST "userint3")) style->userint3 = convert_to_int(value); if (!xmlStrcmp(element_name, BAD_CAST "userstring1")) style->userstring1 = value; if (!xmlStrcmp(element_name, BAD_CAST "userstring2")) style->userstring2 = value; if (!xmlStrcmp(element_name, BAD_CAST "userstring3")) style->userstring3 = value; } value.clear(); if (!xmlStrcmp(element_name, BAD_CAST "style")) { if (style) { insert (style); style = NULL; } } break; } } } } // Free memory. if (reader) xmlFreeTextReader(reader); if (inputbuffer) xmlFreeParserInputBuffer(inputbuffer); if (contents) g_free(contents); } Stylesheet::~Stylesheet() { for (unsigned int i = 0; i < styles.size(); i++) { delete styles[i]; } } void Stylesheet::save () // Saves the stylesheet to its native xml format. { // If no name is given, we work with the template. It can't be saved. if (name.empty()) return; // Start the new xml document. xmlBufferPtr buffer = xmlBufferCreate(); xmlTextWriterPtr writer = xmlNewTextWriterMemory(buffer, 0); xmlTextWriterStartDocument(writer, NULL, "UTF-8", NULL); xmlTextWriterSetIndent(writer, 1); xmlTextWriterStartElement(writer, BAD_CAST "bibledit-configuration"); // Get the combined information, and write it to the document. for (unsigned int i = 0; i < styles.size(); i++) { StyleV2 * style = styles[i]; // Open a style for the marker xmlTextWriterStartElement(writer, BAD_CAST "style"); xmlTextWriterWriteFormatAttribute (writer, BAD_CAST "marker", "%s", style->marker.c_str()); // Write values. if (!style->name.empty()) { xmlTextWriterStartElement(writer, BAD_CAST "name"); xmlTextWriterWriteFormatString(writer, "%s", style->name.c_str()); xmlTextWriterEndElement(writer); } if (!style->info.empty()) { xmlTextWriterStartElement(writer, BAD_CAST "info"); xmlTextWriterWriteFormatString(writer, "%s", style->info.c_str()); xmlTextWriterEndElement(writer); } xmlTextWriterStartElement(writer, BAD_CAST "type"); xmlTextWriterWriteFormatString(writer, "%d", style->type); xmlTextWriterEndElement(writer); xmlTextWriterStartElement(writer, BAD_CAST "subtype"); xmlTextWriterWriteFormatString(writer, "%d", style->subtype); xmlTextWriterEndElement(writer); xmlTextWriterStartElement(writer, BAD_CAST "fontsize"); xmlTextWriterWriteFormatString(writer, "%s", convert_to_string (style->fontsize).c_str()); xmlTextWriterEndElement(writer); xmlTextWriterStartElement(writer, BAD_CAST "italic"); xmlTextWriterWriteFormatString(writer, "%s", style->italic.c_str()); xmlTextWriterEndElement(writer); xmlTextWriterStartElement(writer, BAD_CAST "bold"); xmlTextWriterWriteFormatString(writer, "%s", style->bold.c_str()); xmlTextWriterEndElement(writer); xmlTextWriterStartElement(writer, BAD_CAST "underline"); xmlTextWriterWriteFormatString(writer, "%s", style->underline.c_str()); xmlTextWriterEndElement(writer); xmlTextWriterStartElement(writer, BAD_CAST "smallcaps"); xmlTextWriterWriteFormatString(writer, "%s", style->smallcaps.c_str()); xmlTextWriterEndElement(writer); xmlTextWriterStartElement(writer, BAD_CAST "superscript"); xmlTextWriterWriteFormatString(writer, "%s", convert_to_string (style->superscript).c_str()); xmlTextWriterEndElement(writer); xmlTextWriterStartElement(writer, BAD_CAST "justification"); xmlTextWriterWriteFormatString(writer, "%s", style->justification.c_str()); xmlTextWriterEndElement(writer); xmlTextWriterStartElement(writer, BAD_CAST "spacebefore"); xmlTextWriterWriteFormatString(writer, "%s", convert_to_string (style->spacebefore).c_str()); xmlTextWriterEndElement(writer); xmlTextWriterStartElement(writer, BAD_CAST "spaceafter"); xmlTextWriterWriteFormatString(writer, "%s", convert_to_string (style->spaceafter).c_str()); xmlTextWriterEndElement(writer); xmlTextWriterStartElement(writer, BAD_CAST "leftmargin"); xmlTextWriterWriteFormatString(writer, "%s", convert_to_string (style->leftmargin).c_str()); xmlTextWriterEndElement(writer); xmlTextWriterStartElement(writer, BAD_CAST "rightmargin"); xmlTextWriterWriteFormatString(writer, "%s", convert_to_string (style->rightmargin).c_str()); xmlTextWriterEndElement(writer); xmlTextWriterStartElement(writer, BAD_CAST "firstlineindent"); xmlTextWriterWriteFormatString(writer, "%s", convert_to_string (style->firstlineindent).c_str()); xmlTextWriterEndElement(writer); xmlTextWriterStartElement(writer, BAD_CAST "spancolumns"); xmlTextWriterWriteFormatString(writer, "%s", convert_to_string (style->spancolumns).c_str()); xmlTextWriterEndElement(writer); xmlTextWriterStartElement(writer, BAD_CAST "color"); xmlTextWriterWriteFormatString(writer, "%d", style->color); xmlTextWriterEndElement(writer); xmlTextWriterStartElement(writer, BAD_CAST "print"); xmlTextWriterWriteFormatString(writer, "%s", convert_to_string (style->print).c_str()); xmlTextWriterEndElement(writer); xmlTextWriterStartElement(writer, BAD_CAST "userbool1"); xmlTextWriterWriteFormatString(writer, "%s", convert_to_string (style->userbool1).c_str()); xmlTextWriterEndElement(writer); xmlTextWriterStartElement(writer, BAD_CAST "userbool2"); xmlTextWriterWriteFormatString(writer, "%s", convert_to_string (style->userbool2).c_str()); xmlTextWriterEndElement(writer); xmlTextWriterStartElement(writer, BAD_CAST "userbool3"); xmlTextWriterWriteFormatString(writer, "%s", convert_to_string (style->userbool3).c_str()); xmlTextWriterEndElement(writer); xmlTextWriterStartElement(writer, BAD_CAST "userint1"); xmlTextWriterWriteFormatString(writer, "%d", style->userint1); xmlTextWriterEndElement(writer); xmlTextWriterStartElement(writer, BAD_CAST "userint2"); xmlTextWriterWriteFormatString(writer, "%d", style->userint2); xmlTextWriterEndElement(writer); xmlTextWriterStartElement(writer, BAD_CAST "userint3"); xmlTextWriterWriteFormatString(writer, "%d", style->userint3); xmlTextWriterEndElement(writer); xmlTextWriterStartElement(writer, BAD_CAST "userstring1"); xmlTextWriterWriteFormatString(writer, "%s", style->userstring1.c_str()); xmlTextWriterEndElement(writer); xmlTextWriterStartElement(writer, BAD_CAST "userstring2"); xmlTextWriterWriteFormatString(writer, "%s", style->userstring2.c_str()); xmlTextWriterEndElement(writer); xmlTextWriterStartElement(writer, BAD_CAST "userstring3"); xmlTextWriterWriteFormatString(writer, "%s", style->userstring3.c_str()); xmlTextWriterEndElement(writer); // Close the style. xmlTextWriterEndElement(writer); } // Close document and write it to disk. xmlTextWriterEndDocument(writer); xmlTextWriterFlush(writer); ustring filename = stylesheet_xml_filename (name); g_file_set_contents(filename.c_str(), (const gchar *)buffer->content, -1, NULL); // Free memory. if (writer) xmlFreeTextWriter(writer); if (buffer) xmlBufferFree(buffer); } StyleV2 * Stylesheet::style (const ustring& marker) // This returns the style for "marker" if the marker is in the stylesheet. // Else it returns NULL.. { StyleV2 * style = styles_map[marker]; return style; } void Stylesheet::erase (const ustring& marker) // Erases the Style for "marker". { StyleV2 * style_to_erase = style (marker); if (style_to_erase == NULL) return; vector styles2 = styles; styles.clear(); for (unsigned int i = 0; i < styles2.size(); i++) { if (styles2[i] != style_to_erase) { styles.push_back (styles2[i]); } } delete style_to_erase; styles_map[marker] = NULL; } void Stylesheet::insert (StyleV2 * style) // Inserts "style" into the stylesheet. { styles.push_back (style); styles_map[style->marker] = style; } bibledit-gtk-4.9/src/stylesheet.h000664 000766 000024 00000002267 12221507145 017214 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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. ** */ #ifndef INCLUDED_STYLESHEET_H #define INCLUDED_STYLESHEET_H #include "libraries.h" #include "style.h" class Stylesheet { public: Stylesheet (const ustring& name_in); ~Stylesheet (); void save (); ustring name; StyleV2 * style (const ustring& marker); vector styles; void erase (const ustring& marker); void insert (StyleV2 * style); private: map styles_map; }; #endif bibledit-gtk-4.9/src/stylesheetutils.cpp000644 000766 000024 00000050600 12453001367 020622 0ustar00teusstaff000000 000000 /* ** Copyright (©) 2003-2013 Teus Benschop. ** ** 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 3 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 "libraries.h" #include "utilities.h" #include "stylesheetutils.h" #include "directories.h" #include "constants.h" #include "xmlutils.h" #include "gwrappers.h" #include "gtkwrappers.h" #include "shell.h" #include "sqlite3.h" #include "sqlite_reader.h" #include "unixwrappers.h" #include "tiny_utilities.h" #include "maintenance.h" #include "settings.h" #include #include #include "styles.h" #include "paratext.h" #define STYLESHEET_XML_SUFFIX ".xml2" const char *RECOGNIZED_SUFFIXES[] = { ".xml1", ".xml2" }; ustring stylesheet_recent_filename() // This returns the name of the database that contains data for recently used styles. { return gw_build_filename(Directories->get_stylesheets(), "recent.sql"); } ustring stylesheet_xml_filename(const ustring & name) // This returns the xml file's name for a named stylesheet. { return gw_build_filename(Directories->get_stylesheets(), name + STYLESHEET_XML_SUFFIX); } ustring stylesheet_xml_template_filename() // This returns the database's filename of the template. { return gw_build_filename(Directories->get_package_data(), "stylesheet.xml"); } void stylesheet_get_ones_available(vector & names) // Gets the names of the stylesheets that are there. { names.clear(); ReadFiles rf(Directories->get_stylesheets(), "", STYLESHEET_XML_SUFFIX); for (unsigned int i = 0; i < rf.files.size(); i++) { ustring name = rf.files[i]; name.erase(name.length() - strlen(STYLESHEET_XML_SUFFIX), strlen(STYLESHEET_XML_SUFFIX)); if (!name.empty()) { names.push_back (name); } } } const char *stylesheet_basic[] = { "id", "h", "mt1", "c", "s1", "r", "p", "v", "q1", "m" }; const char *stylesheet_paragraph[] = { "rem", "mt2", "imt", "ip", "ms", "mr", "nb" }; const char *stylesheet_word_note[] = { "qt", "nd", "f", "fr", "ft", "fq" }; const char *stylesheet_sil_best_practice[] = { "c", "p", "r", "s", "v", "f", "fk", "fq", "fr", "ft", "fv", "h", "id", "mt", "mt2", "mt3", "b", "d", "m", "q", "q2", "q3", "qa", "qc", "qm", "qm2", "qm3", "qr", "qs", "qt", "x", "xk", "xo", "xq", "xt", "ie", "im", "imq", "imt", "imt2", "imt3", "io", "io2", "io3", "ior", "ip", "ipr", "iq", "iq2", "is", "is2", "cov", "intro", "pref", "pub", "pubinfo", "spine", "toc", "toc1", "toc2", "toc3", "conc", "glo", "idx", "k", "maps", "w", "ca", "cl", "fig", "h1", "h2", "h3", "ide", "lit", "mi", "mr", "ms", "nb", "pc", "pi1", "pi2", "pm", "pmc", "pmo", "pmr", "ps", "rem", "restore", "rq", "s2", "sp", "va", "li", "li2", "li3", "li4", "tc1", "tc2", "tc3", "tc4", "tcr1", "tcr2", "tcr3", "tcr4", "th1", "th2", "th3", "th4", "thr1", "thr2", "thr3", "thr4", "tr", "add", "bk", "cls", "nd", "ord", "sig", "tl" }; void stylesheet_create_new(const ustring & name, StylesheetType stylesheettype) // Create a new stylesheet, named "name", from the template. { // Copy the template database. ustring templatefile = stylesheet_xml_template_filename(); ustring stylefile = stylesheet_xml_filename (name); unix_cp(templatefile, stylefile); // Take action depending on the type of stylesheet we're making. if (stylesheettype == stFull) return; set desired_markers = stylesheet_get_styles_of_type(stylesheettype); // Take the new stylesheet, and remove the unwanted markers. vector all_markers = stylesheet_get_markers(name, NULL); vector undesired_markers; for (unsigned int i = 0; i < all_markers.size(); i++) { if (desired_markers.find(all_markers[i]) == desired_markers.end()) undesired_markers.push_back(all_markers[i]); } for (unsigned int i = 0; i < undesired_markers.size(); i++) { stylesheet_delete_style(name, undesired_markers[i]); } } void stylesheet_delete(const ustring & name) // Deletes a stylesheet from disk. // Note that it continues to live in memory once it's there, till after restart. { unlink(stylesheet_xml_filename(name).c_str()); } void stylesheet_copy(const ustring & from_name, const ustring & to_name) // Copies one stylesheet to another. { unix_cp(stylesheet_xml_filename(from_name), stylesheet_xml_filename(to_name)); } ustring stylesheet_import(const ustring & filename) // Imports a new stylesheet from "filename". // It expects a file in the format as it is given in the export function. { // See that the sheet is a recognized one. // Derive the name of the new stylesheet from the filename. ustring name; for (unsigned int i = 0; i < (sizeof(RECOGNIZED_SUFFIXES) / sizeof(*RECOGNIZED_SUFFIXES)); i++) { if (g_str_has_suffix(filename.c_str(), RECOGNIZED_SUFFIXES[i])) { name = gw_path_get_basename(filename); name.erase(name.length() - strlen(RECOGNIZED_SUFFIXES[i]), strlen(RECOGNIZED_SUFFIXES[i])); } } if (name.empty()) { gtkw_dialog_error(NULL, filename + ": Unrecognized stylesheet"); return ""; } // Check whether it already exists. if (stylesheet_exists(name)) { gtkw_dialog_error(NULL, "Stylesheet " + name + " already exists"); return ""; } // Get the path of the new stylesheet. ustring path = stylesheet_xml_filename(name); // Copy the file. unix_cp(filename, path); // Upgrade the stylesheet. stylesheets_upgrade(); // Return the name of the stylesheet we imported; return name; } void stylesheet_export_bibledit(const ustring & name, const ustring & filename) // Exports a stylesheet in standard bibledit format. { ustring originalfile = stylesheet_xml_filename(name); ustring destinationfile(filename); destinationfile.append(STYLESHEET_XML_SUFFIX); unix_cp(originalfile, destinationfile); } bool stylesheet_exists(const ustring & name) // Returns whether this stylesheet exists. { vector < ustring > sheets; stylesheet_get_ones_available(sheets); set < ustring > existing_sheets(sheets.begin(), sheets.end()); return (existing_sheets.find(name) != existing_sheets.end()); } void stylesheet_get_styles(const ustring & stylesheet, vector