diff --git a/patacrep/data/templates/songs.tex b/patacrep/data/templates/songs.tex index e3562897..0a6b3331 100644 --- a/patacrep/data/templates/songs.tex +++ b/patacrep/data/templates/songs.tex @@ -102,6 +102,7 @@ \newcommand{\href}[2]{\expandafter\url\expandafter{#1}} } \makeatother +\DeclareUnicodeCharacter{00A0}{~} (* endblock *) (* block songs *) diff --git a/patacrep/index.py b/patacrep/index.py index b67897f3..c0727519 100644 --- a/patacrep/index.py +++ b/patacrep/index.py @@ -135,6 +135,9 @@ class Index(object): self._raw_add((key, ""), number, link) if self.indextype == "AUTHOR": + + # \IeC {} is included by LaTeX and must not be split (because of the space) + key = key.replace('\\IeC {', '\\IeC{') # Processing authors for author in authors.processauthors( key, diff --git a/test/test_compilation/subdir.tex.control b/test/test_compilation/subdir.tex.control index bd9ac649..6ed84e9a 100644 --- a/test/test_compilation/subdir.tex.control +++ b/test/test_compilation/subdir.tex.control @@ -55,6 +55,7 @@ guitar, \newcommand{\href}[2]{\expandafter\url\expandafter{#1}} } \makeatother +\DeclareUnicodeCharacter{00A0}{~} \usepackage{chords} diff --git a/test/test_compilation/unicode.sb b/test/test_compilation/unicode.sb new file mode 100644 index 00000000..fffed7cc --- /dev/null +++ b/test/test_compilation/unicode.sb @@ -0,0 +1,4 @@ +{ +"datadir": ["unicode_datadir"], +"lang": "en" +} diff --git a/test/test_compilation/unicode.tex.control b/test/test_compilation/unicode.tex.control new file mode 100644 index 00000000..84bec7ef --- /dev/null +++ b/test/test_compilation/unicode.tex.control @@ -0,0 +1,117 @@ + + + + + + +%% Automatically generated document. +%% You may edit this file but all changes will be overwritten. +%% If you want to change this document, have a look at +%% the templating system. +%% +%% Generated using Songbook + +\makeatletter +\def\input@path{ % + {@TEST_FOLDER@/unicode_datadir/latex/} % + {@TEST_FOLDER@/latex/} % + {@DATA_FOLDER@/latex/} % +} +\makeatother + +\documentclass[ + ]{article} + +\usepackage[ + chorded, +diagram, +pictures, +guitar, + ]{patacrep} + +\usepackage[utf8]{inputenc} +\usepackage[T1]{fontenc} +\usepackage{lmodern} + + +\PassOptionsToPackage{english}{babel} +\usepackage[english]{babel} +\lang{english} + +\usepackage{graphicx} +\graphicspath{ % + {@TEST_FOLDER@/unicode_datadir/} % + {@TEST_FOLDER@/} % + {@DATA_FOLDER@/} % +} + + +\makeatletter +\@ifpackageloaded{hyperref}{}{ + \usepackage{url} + \newcommand{\phantomsection}{} + \newcommand{\hyperlink}[2]{#2} + \newcommand{\href}[2]{\expandafter\url\expandafter{#1}} +} +\makeatother +\DeclareUnicodeCharacter{00A0}{~} + + +\usepackage{chords} + +\title{Guitar songbook} +\author{The Patacrep Team} + +\newindex{titleidx}{unicode_title} +\newauthorindex{authidx}{unicode_auth} + + +\notenamesout{A}{B}{C}{D}{E}{F}{G} + + +\begin{document} + +\maketitle + + +\showindex{\songindexname}{titleidx} +\showindex{\authorindexname}{authidx} + +% list of chords +\ifchorded + \ifdiagram + \phantomsection + \addcontentsline{toc}{section}{\chordlistname} + \chords + \fi +\fi + +\phantomsection +\addcontentsline{toc}{section}{\songlistname} + +\begin{songs}{titleidx,authidx} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% songs/./nonbreak.sgc + +\selectlanguage{english} + +\beginsong{Song with non breakable space}[ + by={ + Author with non breaking space chars }, +] + + + + +\begin{verse} + Non break +\end{verse} + +\endsong + +\end{songs} + + + + +\end{document} diff --git a/test/test_compilation/unicode_datadir/songs/nonbreak.sgc b/test/test_compilation/unicode_datadir/songs/nonbreak.sgc new file mode 100644 index 00000000..841d9acb --- /dev/null +++ b/test/test_compilation/unicode_datadir/songs/nonbreak.sgc @@ -0,0 +1,5 @@ +{title : Song with non breakable space} +{by: Author with non breaking space chars} +{lang: en} + +Non break