GeneralFrench-style footnote markers

LaTeX specific issues not fitting into one of the other forums of this category.
AleCes
Posts: 286
Joined: Sat Nov 13, 2010 9:54 pm

French-style footnote markers

Post by AleCes »

How can I get French-style footnote markers ex.

Code: Select all

1. Footnote text
Description: footnote marker is just normal size, no superscript and followed by a point.
Last edited by AleCes on Wed Jun 08, 2011 4:59 pm, edited 3 times in total.

Recommended reading 2024:

LaTeXguide.org • LaTeX-Cookbook.net • TikZ.org

NEW: TikZ book now 40% off at Amazon.com for a short time.

localghost
Site Moderator
Posts: 9202
Joined: Fri Feb 02, 2007 12:06 pm

French-style footnote markers

Post by localghost »

It requires the redefinition of a macro from the LaTeX kernel (see file »latex.ltx«).

Code: Select all

\documentclass[11pt,a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}

\makeatletter
\def\@makefnmark{\hbox{\@thefnmark.\enspace}}
\makeatother

\begin{document}
  Text\footnote{Footnote}
\end{document}

Thorsten
AleCes
Posts: 286
Joined: Sat Nov 13, 2010 9:54 pm

Re: French-syle footnote markers

Post by AleCes »

Thanks it works!
There's only one refinement left: I need the footnote marker to conserve the indentation of the original format.
User avatar
localghost
Site Moderator
Posts: 9202
Joined: Fri Feb 02, 2007 12:06 pm

French-style footnote markers

Post by localghost »

At the moment I have found no other solution than to add the footmisc package and modify the provided \footnotemargin dimension. I tested the indentation with the following code.

Code: Select all

\documentclass[11pt,a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{footmisc}

\begin{document}
  Text\footnote{Footnote}

  \setcounter{footnote}{0}
  \makeatletter
  \def\@makefnmark{\hbox{\@thefnmark.\enspace}}
  \makeatother
  \footnotemargin2.5em

  Text\footnote{Footnote}
\end{document}
So the code for your document should look like this.

Code: Select all

\documentclass[11pt,a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{footmisc}

\makeatletter
\def\@makefnmark{\hbox{\@thefnmark.\enspace}}
\makeatother
\footnotemargin2.5em

\begin{document}
  Text\footnote{Footnote}
\end{document}
Note that the redefinition affects the footnote mark everywhere, that is to say also in the text. This looks very bad without any further modification. The easiest would be to use babel with the french language option. But there are certainly good reasons why you don't do so. But it's possible to copy the relevant parts from the file »frenchb.ldf« to the preamble of your document.

And by the way, please mention when you ask a question also somewhere else.
AleCes
Posts: 286
Joined: Sat Nov 13, 2010 9:54 pm

French-style footnote markers

Post by AleCes »

localghost wrote: Note that the redefinition affects the footnote mark everywhere, that is to say also in the text. This might look bad without any further modification.
Damn! I hadn't spotted it.
A user on the XeTeX mailing list proposed this code:

Code: Select all

\documentclass[a4paper]{article}
\usepackage{polyglossia,lipsum}
\setmainlanguage{french}
\setotherlanguage{greek}

\makeatletter
\renewcommand\@makefntext[1]{%
 \noindent\@thefnmark.~#1}
\makeatother
\begin{document}
abc\footnote{\lipsum[1]}
\end{document}
N.B. lipsum is used for generating fake text
This has the benefit of not altering the footnote marker on the main text, but gives me even less indentation back on the note section.

On the other hand, your second code works fine as far as indentation is concerned.
User avatar
localghost
Site Moderator
Posts: 9202
Joined: Fri Feb 02, 2007 12:06 pm

French-style footnote markers

Post by localghost »

If your code needs a certain processing, you should mention that [1]. I assumed that you compile with LaTeX so I also suggested the babel way in my last reply.

[1] View topic: Avoidable mistakes
AleCes
Posts: 286
Joined: Sat Nov 13, 2010 9:54 pm

French-style footnote markers

Post by AleCes »

localghost wrote:The easiest would be to use babel with the french language option. But there are certainly good reasons why you don't do so. But it's possible to copy the relevant parts from the file »frenchb.ldf« to the preamble of your document.

And by the way, please mention when you ask a question also somewhere else.
Yeah, at first I'd been using babel, but I need to typeset Classical Greek too (which forces me into using Unicode and therefore polyglossia), plus other five languages: German, Latin, Italian, English and Dutch. And polyglossia plus babel with seven languages is an impossible match, I've been trying to make it work all afternoon long.
As far as the XeTeX mailing list is concerned, I'm sorry. I started a topic there only yesterday (because no one had answered me here), and as soon as I got an answer I did notify you. However this is the relevant link: http://tug.org/pipermail/xetex/2011-May/020516.html
localghost wrote:If your code needs a certain processing, you should mention that [1]. I assumed that you compile with LaTeX so I also suggested the babel way in my last reply.
Sorry, I can't understand what you mean by "processing".
User avatar
localghost
Site Moderator
Posts: 9202
Joined: Fri Feb 02, 2007 12:06 pm

French-style footnote markers

Post by localghost »

AleCes wrote:[…] Sorry, I can't understand what you mean by "processing".
That just means the compiler you use (LaTeX, XeLaTeX, …). With XeLaTeX it's still possible to copy the necessary code from the file »frenchb.ldf« to your document. And on this occasion it would be suggestive to ask the maintainer of polyglossia for adding an according feature.
AleCes
Posts: 286
Joined: Sat Nov 13, 2010 9:54 pm

French-style footnote markers

Post by AleCes »

Code: Select all

\newcommand*{\dotFFN}{.}
\newcommand*{\kernFFN}{\kern .5em}
\newdimen\parindentFFN
\parindentFFN=10in
\def\ftnISsymbol{\@fnsymbol\c@footnote}
\long\def\@makefntextFB#1{\ifx\thefootnote\ftnISsymbol
                            \@makefntextORI{#1}%
                          \else
                            \parindent=\parindentFFN
                            \rule\z@\footnotesep
                            \setbox\@tempboxa\hbox{\@thefnmark}%
                            \ifdim\wd\@tempboxa>\z@
                              \llap{\@thefnmark}\dotFFN\kernFFN
                            \fi #1
                          \fi}%
\AtBeginDocument{\@ifpackageloaded{bigfoot}{}%
                  {\ifdim\parindentFFN<10in
                   \else
                      \parindentFFN=\parindent
                      \ifdim\parindentFFN<1.5em\parindentFFN=1.5em\fi
                   \fi
                   \let\@makefntextORI\@makefntext
                   \long\def\@makefntext#1{%
                      \ifFBFrenchFootnotes
                         \@makefntextFB{#1}%
                      \else
                         \@makefntextORI{#1}%
                      \fi}%
                  }%
                }
\newcommand*{\AddThinSpaceBeforeFootnotes}{\FBAutoSpaceFootnotestrue}
\newcommand*{\FrenchFootnotes}{\FBFrenchFootnotestrue}
\newcommand*{\StandardFootnotes}{\FBFrenchFootnotesfalse}
\newcommand*{\FrenchLayout}{%
    \FBGlobalLayoutFrenchtrue
    \PackageWarning{frenchb.ldf}%
    {\protect\FrenchLayout\space is obsolete.  Please use\MessageBreak
     \protect\frenchbsetup{GlobalLayoutFrench} instead.}%
}
Is this the relevant code? Maybe you, being way more experienced than I am, could help me cream off the useful lines.
User avatar
localghost
Site Moderator
Posts: 9202
Joined: Fri Feb 02, 2007 12:06 pm

French-style footnote markers

Post by localghost »

You can easily find that out by trying yourself. Don't forget to wrap the code by \makeatletter and \makeatother when adding it to your preamble. If you get errors, you are sure that there is something missing.
Post Reply