notes·de·pit - Mot-clé - latexParfois j'apprends à pêcher à des gens qui n'aiment pas le poisson2023-06-13T11:41:09+02:00PiTurn:md5:45526db4e4cfb511098640352c276065DotclearLaTeX, package minitocurn:md5:8dcfc29296930f95309e64055252eca62016-03-05T23:55:00+01:002016-03-06T00:03:42+01:00PiTMes doigts dans le clavierdiversenseignementesigeeklatexlogiciellibremarkdownpandoc<p><img src="https://blog.namok.be/public/images/divers/2016/yellow_by_i_shadow.jpg" alt="yellow_by_i_shadow.jpg" style="margin: 0 auto; display: block;" title="yellow_by_i_shadow.jpg, mar. 2016" /></p>
<p>Lors d'un <a href="http://namok.be/blog/?post/2010/11/09/Epsilon-2010">salon</a> il y a quelques années déjà, j'ai découvert la méthode
<em><a href="http://information-mapping.fr">information mapping</a></em> pour mettre en forme des textes de manière telle qu'ils
soient plus lisibles, plus compréhensibles et (donc) mieux compris. La méthode est
<em>propriétaire</em>. C'est assez drôle d'ailleurs de voir comme l'info à ce sujet est
assez cadenassée. Il faut suivre les formations et les outils sont MS Windows.</p>
<p>Bref, j'en ai retenu six ans plus tard les points suivants:</p>
<ul>
<li>aérer le texte (interlignes plus grands);</li>
<li>ne pas hésiter à passer des lignes;</li>
<li>utiliser les <em>items</em> (liste à puces) et les tableaux dès que c'est possible; </li>
<li>ajouter une table des matières en début de chaque section.</li>
</ul>
<p>Je voudrais pouvoir ajouter facilement des tables des matières par section
lorsque j'utilise LaTeX.</p>
<p>Ça tombe bien, je rédige souvent en <a href="http://namok.be/blog/?post/2013/11/19/billet-markdown">Markdown</a> mes billets et mes notes de
cours par exemple. Lorsque ma sortie est en pdf et que c'est mouliné par
<a href="http://johnmacfarlane.net/pandoc/">pandoc</a>, je peux ajouter quelques commandes LaTeX directement dans mon
texte. Il est donc tout à fait possible d'utiliser le package <strong><a href="http://ctan.org/pkg/minitoc">MiniToc</a></strong>
qui ajoute, justement (comme le monde est bien fait) une mini table des
matières en début de section ou chapitre.</p>
<p>J'ajoute donc à mon entête que j'avais <a href="http://namok.be/blog/?post/2015/10/08/latex-markdown-wallpaper">déjà présentée</a> les lignes
suivantes dans mes <em>header-include</em>:</p>
<pre class="brush: plain">
- \usepackage{minitoc}
- \setcounter{secttocdepth}{3}
- \renewcommand{\stctitle}{}
</pre>
<p>En début de document, je précise que je vais demander des tables des matières
par çi par là et qu'il faut que LaTeX se prépare.</p>
<pre class="brush: plain">
\dosecttoc
\setcounter{tocdepth}{1}
\tableofcontents
</pre>
<p>Et lorsque je commence une section en Markdown, je fais suivre mon titre par une
commande Latex. Un peu comme suit:</p>
<pre class="brush: plain">
# Titre de niveau un
\secttoc
Bla bla
## Titre de niveau deux qui apparaitra dans la minitoc
</pre>
<p>Vous pouvez reprendre une activité normale.</p>
<p><br/></p>
<p><em>Crédit photo chez <a href="http://deviantart.com">DeviantArt</a> par <a href="http://muratsuyur.deviantart.com/art/yellow-69146298">muratsuyur</a>. Vous
prendrez bien une p'tite rondelle de citron dans votre blanche ?</em></p>
LaTeX, markdown et wallpaperurn:md5:a3aa792e7c5cf3dd5e1102a9a666848a2015-10-08T16:57:00+02:002016-01-20T14:04:46+01:00PiTMes doigts dans le clavierdiversesigeekinutilelatexmarkdown<p><img src="https://blog.namok.be/public/images/divers/2015/screenshot-latex-wallpaper-12.jpg" alt="screenshot-latex-wallpaper-12.jpg" style="margin: 0 auto; display: block;" title="screenshot-latex-wallpaper-12.jpg, oct. 2015" /></p>
<p>Si toi aussi tu rédiges en <a href="http://namok.be/blog/?post/2013/11/19/billet-markdown">markdown</a> que tu exportes en pdf et que tu aimes bien utiliser des images de grandes tailles, alors le <em>package</em> <strong>Wallpaper</strong> (<a href="https://www.ctan.org/pkg/wallpaper?lang=en">doc</a>) est fait pour toi. Je suppose aussi que tu exportes en utilisant <a href="http://namok.be/blog/?post/2014/04/01/vrac-14">pandoc</a> avec une commande du style:</p>
<p><code>pandoc monjolifichier.md -o monjolifichier.pdf</code></p>
<p>Tu peux commencer ton document avec ce mélange de markdown et de LaTeX un peu pourri mais qui fait le boulot:</p>
<pre><code> ---
title: \Huge Awesome title
author: \huge Juste Leblanc
date: \LARGE\tt jl@example.org
abstract: \bigskip\centering\huge\bf\textcolor{white}{octobre 2015 \\ v1.0}
header-includes:
- \usepackage{wallpaper}
- \renewcommand{\abstractname}{}
geometry: margin=3cm
---
\ThisTileWallPaper{\paperwidth}{\paperheight}{img/awesomeimage.jpg}
(ou bien)
\ThisLLCornerWallPaper{1}{img/awesomeimage.jpg}
</code></pre>
<p>Et voilà, ce billet me sert d'aide mémoire.</p>
Comment éviter de lancer une compilation de LaTeX à chaque modification sous vim ?urn:md5:2ae1b5800d61bb7075ec6942c9fc8a572014-12-23T08:45:00+01:002014-12-23T08:45:00+01:00PiTMes doigts dans le clavieralternativesdebiandiversesigeeklatexlogiciellibrepratiquevim <p>J'utilise beaucoup vim et LaTex, ils me permettent <a href="http://namok.be/blog/?post/2014/09/08/editer-rapidement-ses-fichiers-latex-avec-vim">d'éditer rapidement mes fichiers</a>. Il restait un tout petit point négatif par rapport à des programmes comme <a href="http://www.xm1math.net/texmaker/">TexMaker</a> qui compilent en tâche de fond.</p>
<p>Bien que j'utilise linux tous les jours, je ne connaissais pas <strong>inotify</strong> et son paquet associé <strong>inotify-tools</strong>. Ni même, encore mieux, la commande <strong>entr</strong> associée au paquet du même nom.</p>
<p>Le principe est la détection d'un changement dans le <em>filesystem</em>: ajout d'un fichier dans un répertoire, modification d'un fichier, … La commande <code>entr</code> permet d'associer une commande à une modification dans le <em>filesystem</em>. Par exemple, on pourra lancer une compilation dès lors qu'un fichier est modifié !</p>
<p>Avant, je faisais:</p>
<ul>
<li>édition de mes fichiers sources avec <em>vim</em>;</li>
<li>compilation pour générer un pdf (via <code>pdflatex</code> par le biais d'un make (ou pas));</li>
<li>visualisation avec <em><a href="https://pwmt.org/projects/zathura/">zathura</a></em> (non pas <em>acroread</em> ni <em>xpdf</em>)<sup id="fnref:2"><a href="https://blog.namok.be/?post/2014/12/22/comment-eviter-de-compiler-lalex-a-chaque-modification-sous-vim#fn:2" rel="footnote">1</a></sup></li>
</ul>
<p>Maintenant, je fais:</p>
<ul>
<li><p>je lance dans un terminal une commande du style<sup id="fnref:1"><a href="https://blog.namok.be/?post/2014/12/22/comment-eviter-de-compiler-lalex-a-chaque-modification-sous-vim#fn:1" rel="footnote">2</a></sup> ;</p>
<pre><code>ls sources/* | entr make dist/presentation-seance-1.pdf </code></pre></li>
<li><p>édition de mes fichiers sources avec <em>vim</em>;</p></li>
<li>visualisation avec <em>zathura</em></li>
</ul>
<p>Dès que je sauve mon fichier sous <em>vim</em>, la compilation se lance toute seule et je vois apparaitre la nouvelle version dans <em>zathura</em>. Cool !</p>
<p>Pour installer, c'est simple, c'est dans les dépôts. Sous <a href="http:debian.org">debian</a>:</p>
<pre><code>apt-get install entr
</code></pre>
<p>Vous pouvez reprendre une activité normale (et me <a href="http://namok.be/blog/?post/2013/01/30/pourquoi-me-flattrer">flattrer</a> ;-)).</p>
<p><br/></p>
<div class="footnotes">
<hr />
<ol>
<li id="fn:2">
<p>Je laisse bien évidemment <em>zathura</em> tourner, il recharge le pdf dès lors qu'il change. <a href="https://blog.namok.be/?post/2014/12/22/comment-eviter-de-compiler-lalex-a-chaque-modification-sous-vim#fnref:2" rev="footnote">↩</a></p>
</li>
<li id="fn:1">
<p>Mes fichiers sources sont parfois plusieurs (des sources, des styles, un fichier maitre,…) dans un répertoire <code>sources</code>. Je compile via un <code>Makefile</code> à base de <code>rubber</code> et je place le pdf résultant dans un répertoire <code>dist</code>. <a href="https://blog.namok.be/?post/2014/12/22/comment-eviter-de-compiler-lalex-a-chaque-modification-sous-vim#fnref:1" rev="footnote">↩</a></p>
</li>
</ol>
</div>
Éditer rapidement ses fichiers LaTeX avec vimurn:md5:4eeef865db57fb809b3fe5ef86f492252014-09-08T10:55:00+02:002014-09-08T10:07:37+02:00PiTMes doigts dans le clavieralternativesdebiandiversesigeeklatexvim<p><img src="https://blog.namok.be/public/images/divers/2014/butterfly.jpg" alt="butterfly.jpg" style="margin: 0 auto; display: block;" title="butterfly.jpg, sept. 2014" /></p>
<p><em>TL;DR<sup id="fnref:tldr"><a href="https://blog.namok.be/?post/2014/09/08/editer-rapidement-ses-fichiers-latex-avec-vim#fn:tldr" rel="footnote">1</a></sup> vim-latex pour éditer, avec vim, ses fichiers LaTeX</em></p>
<blockquote>
<p>Vim is undoubtedly one of the best editors ever made. LaTeX is an extremely powerful, intelligent typesetter. Vim-LaTeX aims at bringing together the best of both these worlds.<br />
vim-latex team</p>
</blockquote>
<p><em><a href="http://vim-latex.sourceforge.net">vim-latex</a></em> est une suite de macros pour <a href="https://blog.namok.be/?post/2014/09/08/http.//vim.org">vim</a> permettant d'éditer plus rapidement son code <a href="http://tex.org">LaTeX</a>.</p>
<p>Par exemple si, en mode édition, j'entre <code>ECT</code>, <em>vim-latex</em> le transforme en</p>
<p><code>\begin{center}
% curseur ici
\end{center}<++></code></p>
<p>place le curseur au bon endroit et l'entrée de <code>Ctrl-j</code> supprime les <code><++></code> et place, à nouveau, le curseur au bon endroit, c'est à dire à la fin de l'environnement.</p>
<p>Tous les raccourcis sont visibles dans le menu de <em>gVim</em> (qui a changé pour l'occasion). Il existe également une <em><a href="http://www.michaelgoerz.net/refcards/#latexsuite">quickref</a></em> bien pratique.</p>
<p>La touche <code><F5></code> est également magique. Si l'on ne se souvient pas des raccouris, il suffit d'entrer le nom de l'environnement suivi de <code><F5></code> pour qu'il soit remplacé. Si je ne me rappelle plus que <code>EEN</code> est le raccourci pour l'environnement <em>enumerate</em>. Qu'à cela ne tienne, j'entre <code>enumerate<F5></code> et <em>vim-latex</em> le transforme en</p>
<p><code>\begin{enumerate}
\item % curseur ici
\end{enumerate}<++></code></p>
<p><strong>Installation</strong></p>
<p><code># apt-get install vim-latexsuite
$ vim-addons install latex-suite</code></p>
<p>comme indiqué dans le <em>readme</em> <code>/usr/share/doc/vim-latexsuite/README.Debian</code>. Un peu plus bas, le <em>readme</em> (encore lui) me propose d'ajouter ces lignes dans mon <code>.vimrc</code>.</p>
<p><code>filetype plugin on
set grepprg=grep\ -nH\ $*
filetype indent on
let g:tex_flavor='latex'</code></p>
<p>ce que je fais.</p>
<p>Je constate que « je perds mon <code>é</code> » mais aucun autre caractère accentué ! Étrange et stressant … mais le blog <a href="http://www.causeries-numeriques.fr/post/2007/08/31/vim-et-Latex">causeries numériques</a> apporte la solution.</p>
<p>Ajouter le fichier <code>~/.vim/ftplugin/tex.vim</code> contenant</p>
<p><code>" le bug du é
" voir http://www.causeries-numeriques.fr/post/2007/08/31/vim-et-Latex
imap <C-b> <Plug>Tex_MathBF
imap <C-c> <Plug>Tex_MathCal
imap <C-l> <Plug>Tex_LeftRight
imap <buffer> <leader>it <Plug>Tex_InsertItemOnThisLine</code></p>
<p>Tout est en place. Il est maintenant facile d'éditer plus rapidement son code \LaTeX avec <a href="https://blog.namok.be/?post/2014/09/08/http.//vim.org">vim</a>.</p>
<p>Vous pouvez reprendre une activité normale …</p>
<p><br/></p>
<p>Crédit photo par <a href="http://500px.com/photo/65158073/butterfly-by-sandro-">Sandro</a></p>
<div class="footnotes">
<hr />
<ol>
<li id="fn:tldr">
<p>Too long; don't read <a href="https://blog.namok.be/?post/2014/09/08/editer-rapidement-ses-fichiers-latex-avec-vim#fnref:tldr" rev="footnote">↩</a></p>
</li>
</ol>
</div>
Retirer le header en première page ... et le footer en dernière pageurn:md5:c34e463c7c713720be2b17304c6c06532012-07-15T15:53:00+02:002012-07-15T16:02:00+02:00PiTMes doigts dans le clavierdiversgeeklatexlibreofficelogiciellibreopenoffice<p>Cette après-midi, j'écris une petite lettre et l'envie me prend d'ajouter en haut des pages une note comme quoi cette page fait suite à la précédente et qu'il en reste <em>x</em> à lire.</p>
<p>Facile, <code><em>Insert > Header > Default</em></code> !</p>
<p>Maintenant comment faire pour que la première page soit différente ?</p> <p>Avec <strong>LaTeX</strong>, je sais, il faut utiliser les packages <code>fancyhdr</code> et <code>ifthen</code>, un peu comme suit</p>
<pre class="latex latex" style="font-family:inherit"><span style="color: #E02020; ">\</span><span style="color: #800000;">usepackage</span><span style="color: #E02020; ">{</span><span style="color: #2020C0; font-weight: normal;">fancyhdr</span><span style="color: #E02020; ">}</span>
<span style="color: #E02020; ">\</span><span style="color: #800000;">usepackage</span><span style="color: #E02020; ">{</span><span style="color: #2020C0; font-weight: normal;">ifthen</span><span style="color: #E02020; ">}</span>
<span style="color: #E02020; ">\</span><span style="color: #800000;">pagestyle</span><span style="color: #E02020; ">{</span><span style="color: #2020C0; font-weight: normal;">fancy</span><span style="color: #E02020; ">}</span>
<span style="color: #800000; font-weight: normal;">\setcounter</span><span style="color: #E02020; ">{</span><span style="color: #2020C0; font-weight: normal;">page</span><span style="color: #E02020; ">}{</span><span style="color: #2020C0; font-weight: normal;">1</span><span style="color: #E02020; ">}</span>
<span style="color: #800000; font-weight: normal;">\lhead</span><span style="color: #E02020; ">{</span><span style="color: #2C922C; font-style: italic;">%</span>
<span style="color: #800000; font-weight: normal;">\ifthenelse</span><span style="color: #E02020; ">{</span><span style="color: #2020C0; font-weight: normal;"><span style="color: #800000; font-weight: normal;">\value</span>{page</span><span style="color: #E02020; ">}</span>=1<span style="color: #E02020; ">}</span><span style="color: #2C922C; font-style: italic;">%</span>
<span style="color: #E02020; ">{</span><span style="color: #E02020; ">}</span><span style="color: #2C922C; font-style: italic;">%</span>
<span style="color: #E02020; ">{</span><span style="color: #2020C0; font-weight: normal;">Cette note n'apparait pas sur la première page</span><span style="color: #E02020; ">}</span><span style="color: #2C922C; font-style: italic;">%</span>
<span style="color: #E02020; ">}</span>
<span style="color: #800000; font-weight: normal;">\chead</span><span style="color: #E02020; ">{</span><span style="color: #2020C0; font-weight: normal;"><span style="color: #E02020; ">}</span>
<span style="color: #800000; font-weight: normal;">\rhead</span>{</span><span style="color: #2020C0; font-weight: normal;"><span style="color: #E02020; ">}</span>
<span style="color: #800000; font-weight: normal;">\lfoot</span>{</span><span style="color: #2020C0; font-weight: normal;"><span style="color: #E02020; ">}</span>
<span style="color: #800000; font-weight: normal;">\cfoot</span>{</span><span style="color: #2020C0; font-weight: normal;"><span style="color: #E02020; ">}</span>
<span style="color: #800000; font-weight: normal;">\rfoot</span>{</span><span style="color: #E02020; ">}</span></pre>
<p>Avec <strong>Openoffice</strong> (et probablement <strong>LibreOffice</strong>) , il faut que je cherche, je trouve l'info chez <a href="http://chrismlindsey.com/2007/11/30/how-to-remove-header-from-first-page-in-openoffice/">chrismlindsey.com</a>.</p>
<p>Il faut préciser que la première page ne doit pas avoir le même style que les suivantes afin de pouvoir le personnaliser;</p>
<ul>
<li>je place le curseur sur la première page,</li>
<li>j'ouvre la fenêtre des styles (<a href="https://blog.namok.be/?post/2012/07/15/F11" title="F11">F11</a>) et me place sur l'onglet <em>Pages Style</em>, le quatrième</li>
<li>je doubleclique sur le style <em>FirstPage</em></li>
</ul>
<p>... je peux donc différencier le style de la première page avec celui des autres (qui ont par défaut le style (ça ne s'invente pas) <em>default</em>).</p>
<p><img src="https://blog.namok.be/public/images/divers/2012/.screenshot-oo-pagesstyles_m.jpg" alt="screenshot-oo-pagesstyles.png" style="display:block; margin:0 auto;" title="screenshot-oo-pagesstyles.png, juil. 2012" /></p>
<p>Bien ... mais je voudrais pouvoir personnaliser aussi le style de la <strong>dernière page</strong> et je ne vois pas <em>« Last Page »</em> dans la fenêtre reprenant les styles de pages :-(</p>
<p>Toujours dans cette fenêtre <em>Pages Styles</em>, je clique (à droite) sur <code>New style from selection</code> et ajoute un style <em>Last Page</em>. (Je resélectionne ensuite <em>Default</em> sinon le style de toutes les pages change).</p>
<p>Je me place au <strong>début de la dernière page</strong> et j'ajoute un saut de « style de page » <code>Insert > Manual Break > Page Break (Last Page)</code></p>
<p><img src="https://blog.namok.be/public/images/divers/2012/.screenshot-oo-lastpage_m.jpg" alt="screenshot-oo-lastpage.png" style="display:block; margin:0 auto;" title="screenshot-oo-lastpage.png, juil. 2012" /></p>
<p>... je peux donc personnaliser les différents styles de page; <em>First Page</em>, <em>Default</em> et <em>Last Page</em>.</p>
<p>Enjoy !</p>
<h4>Liens</h4>
<ul>
<li><a href="http://chrismlindsey.com/2007/11/30/how-to-remove-header-from-first-page-in-openoffice/">http://chrismlindsey.com</a></li>
<li><a href="http://openoffice.org">Openoffice</a></li>
<li><a href="http://libreoffice.org">LibreOffice</a></li>
</ul>
<h4>À lire aussi</h4>
<ul>
<li><a href="https://blog.namok.be/blog/index.php?post/2012/06/20/deux-renvois-a-la-meme-note-de-bas-de-page">Deux renvois à la même note de bas de page</a></li>
<li><a href="https://blog.namok.be/blog/index.php?post/2012/04/25/mes-fichiers-dans-les-nuages">Mes fichiers dans les nuages</a></li>
</ul>Deux renvois à la même note de bas de pageurn:md5:305a4033e375e10e7cf5c1f4a2e910972012-06-20T16:48:00+02:002019-01-16T21:44:45+01:00PiTMes doigts dans le clavierdiversesilatexlibreofficelogiciellibre<p>Régulièrement je me demande comment je peux faire deux renvois à la même note de bas de page, un peu comme ça.</p>
<blockquote>
<p>Lorem ipsum dolor sit amet <strong>(1)</strong>, consectetur adipiscing elit. Mauris diam quam, imperdiet vel interdum non, gravida quis nisi. Phasellus lacus risus <strong>(1)</strong>, blandit sed ullamcorper vel, porttitor eu diam. Nullam sodales tellus at turpis scelerisque auctor. Vestibulum pellentesque ullamcorper tortor at egestas. Quisque aliquam, eros id faucibus ullamcorper <strong>(2)</strong>, dui dui ultricies felis, in vehicula metus risus id lacus.</p>
<p>(1) Integer fermentum, nibh ac luctus iaculis, felis odio condimentum leo, quis porta mi felis at libero.</p>
<p>(2) Quisque ac orci purus. Aenean lacinia neque sed mi tristique mattis id ut felis. In vestibulum dictum nisi, id facilisis odio blandit at.</p>
</blockquote>
<p>Et bien, c'est possible et facile ...</p>
<p>Je commence par la méthode <strong>LaTeX</strong>. Il suffit de placer un label dans la note de bas de page et d'y faire référence par la suite. Ce qui donne</p>
<pre><code class="language-latex">Un peu de texte nécessitant la première note
\footnote{\label{unlabel}Première note}.
Et ensuite, la seconde note \up{\ref{unlabel}}
faisant référence à la première.</code></pre>
<p>Pour la méthode <strong>Openoffice / LibreOffice</strong>, il faut;</p>
<ul>
<li>faire sa première note de bas de page (<code>Insert / Footnote</code>)</li>
<li>faire la seconde de cette manière; <code>Insert / Field / Other / Cross Reference / Footnotes</code></li>
</ul>
<p>Rapide, bref et précis ... <em>enjoy</em> !</p>
<p></p>
<h2>Sources</h2>
<ul>
<li>Tout ce que vous avez toujours voulu savoir sur <a href="http://lipsum.com/">lorem ipsum</a></li>
<li><a href="http://openoffice.org">Openoffice</a></li>
<li><a href="http://www.oooforum.org/forum/viewtopic.phtml?t=4375&start=0">Forum openoffice</a></li>
<li>... et pour la solution LaTeX, je ne me rappelle plus ma source ^^</li>
</ul>