diff options
-rw-r--r-- | Master/texmf-dist/doc/latex/writeongrid/WriteOnGrid-doc-en.pdf | bin | 465893 -> 476435 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/writeongrid/WriteOnGrid-doc-en.tex | 30 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/writeongrid/WriteOnGrid-doc-fr.pdf | bin | 607723 -> 612911 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/writeongrid/WriteOnGrid-doc-fr.tex | 49 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/writeongrid/WriteOnGrid.sty | 153 |
5 files changed, 214 insertions, 18 deletions
diff --git a/Master/texmf-dist/doc/latex/writeongrid/WriteOnGrid-doc-en.pdf b/Master/texmf-dist/doc/latex/writeongrid/WriteOnGrid-doc-en.pdf Binary files differindex 2e3d3e8a32d..7bcc35aa1b2 100644 --- a/Master/texmf-dist/doc/latex/writeongrid/WriteOnGrid-doc-en.pdf +++ b/Master/texmf-dist/doc/latex/writeongrid/WriteOnGrid-doc-en.pdf diff --git a/Master/texmf-dist/doc/latex/writeongrid/WriteOnGrid-doc-en.tex b/Master/texmf-dist/doc/latex/writeongrid/WriteOnGrid-doc-en.tex index 3648aa6f505..070c88b7cdc 100644 --- a/Master/texmf-dist/doc/latex/writeongrid/WriteOnGrid-doc-en.tex +++ b/Master/texmf-dist/doc/latex/writeongrid/WriteOnGrid-doc-en.tex @@ -45,8 +45,8 @@ \setlength{\parindent}{0pt} \definecolor{LightGray}{gray}{0.9} -\def\TPversion{0.1.5} -\def\TPdate{15/11/2023} +\def\TPversion{0.1.6} +\def\TPdate{12/04/2024} \usepackage[most]{tcolorbox} \tcbuselibrary{minted} @@ -252,6 +252,30 @@ The package \textsf{WriteOnGrid} proposes "shortcuts" for classic colors ! {\tikz \filldraw[PapierGris] (0,0) rectangle++ (6,1) node[midway,font=\bfseries\large,text=black] {\verb+PapierGris+};} \end{PresentationCode} +\subsection{The number of squares} + +The number of grid squares (for individual grids and environments) can be given in several ways: + +\begin{itemize} + \item \Cle{NumSquares=<nbcols>x<nblines>} to specify manually; + \item \Cle{NumSquares=Auto} to fill the rest of the page (horiz. and vert.); + \item \Cle{NumSquares=Cx<nblines} to fill horizontally and specify the number of lines; + \item \Cle{NumSquares=<nbcols>xL} to fill vertically and specify the number of columns. +\end{itemize} + +Note that the calculations carried out to determine the remaining \textit{space} do not take into account any elastic springs that \LaTeX\ can add to \textit{optimize} the space. + +\smallskip + +To \textit{force} the addition of additional line(s), it is possible to use: + +\begin{itemize} + \item \Cle{NumSquares=Auto*} to force the addition of one more line; + \item \Cle{NumSquares=Auto**} to force the addition of two more lines; + \item \Cle{NumSquares=Auto***} to force the addition of three more lines; + \item etc. +\end{itemize} + \pagebreak \section{Commands, keys and options} @@ -501,6 +525,8 @@ To sum up, they create full paper grid (by preference for \texttt{\textbf{a4pape \part*{History} +\verb|v0.1.6|~:~~~~Possibility to automatically determine L\&C based on the remaining space. + \verb|v0.1.4|~:~~~~New \texttt{[keys]} + enhancements for paragraphs, for french version (for the moment\dots) \verb|v0.1.4|~:~~~~\texttt{xcolor} isn't loaded with \textsf{[table,svgnames]}) diff --git a/Master/texmf-dist/doc/latex/writeongrid/WriteOnGrid-doc-fr.pdf b/Master/texmf-dist/doc/latex/writeongrid/WriteOnGrid-doc-fr.pdf Binary files differindex c3573469d16..517ce5911d9 100644 --- a/Master/texmf-dist/doc/latex/writeongrid/WriteOnGrid-doc-fr.pdf +++ b/Master/texmf-dist/doc/latex/writeongrid/WriteOnGrid-doc-fr.pdf diff --git a/Master/texmf-dist/doc/latex/writeongrid/WriteOnGrid-doc-fr.tex b/Master/texmf-dist/doc/latex/writeongrid/WriteOnGrid-doc-fr.tex index 74ac22a8986..1da2b2b0bc3 100644 --- a/Master/texmf-dist/doc/latex/writeongrid/WriteOnGrid-doc-fr.tex +++ b/Master/texmf-dist/doc/latex/writeongrid/WriteOnGrid-doc-fr.tex @@ -48,8 +48,8 @@ \setlength{\parindent}{0pt} \definecolor{LightGray}{gray}{0.9} -\def\TPversion{0.1.5} -\def\TPdate{15 novembre 2023} +\def\TPversion{0.1.6} +\def\TPdate{12 avril 2024} \usepackage[most]{tcolorbox} \tcbuselibrary{minted} @@ -266,7 +266,29 @@ Le package \textsf{WriteOnGrid} définit également des couleurs pour une saisie {\tikz \filldraw[PapierGris] (0,0) rectangle++ (6,1) node[midway,font=\bfseries\large,text=black] {\verb+PapierGris+};} \end{PresentationCode} +\subsection{Le nombre de carreaux} +Le nombre de carreaux de la grille (pour les quadrillages individuelles et les environnements) peuvent être donnés de plusieurs manières : + +\begin{itemize} + \item \Cle{NbCarreaux=<nbcols>x<nblignes>} pour spécifier manuellement ; + \item \Cle{NbCarreaux=Auto} pour remplir le reste de la page (horiz. et vert.) ; + \item \Cle{NbCarreaux=Cx<nblignes} pour remplir horizontalement et spécifier le nombre de lignes ; + \item \Cle{NbCarreaux=<nbcols>xL} pour remplir verticalement et spécifier le nombre de colonnes. +\end{itemize} + +À noter que les calculs effectués pour déterminer la \textit{place} restante ne tiennent pas compte des éventuels ressorts élastiques que \LaTeX\ peut rajouter pour \textit{optimiser} la place. + +\smallskip + +Pour \textit{forcer} l'ajout de ligne(s) supplémentaire(s), il est possible d'utiliser : + +\begin{itemize} + \item \Cle{NbCarreaux=Auto*} pour forcer l'ajout d'une ligne en plus ; + \item \Cle{NbCarreaux=Auto**} pour forcer l'ajout de deux lignes en plus ; + \item \Cle{NbCarreaux=Auto***} pour forcer l'ajout de trois lignes en plus ; + \item etc +\end{itemize} \pagebreak @@ -587,6 +609,14 @@ Le dernier argument, \textit{obligatoire} et entre \texttt{\{...\}} est le parag Un exemple \textit{détaillé}, avec le rendu en page suivante, avec quelques commentaires pour expliquer. \begin{PresentationCode}{listing only} +\documentclass[a4paper,11pt]{article} +\usepackage{WriteOnGrid} +\usepackage{amsmath,amssymb} +\usepackage{frcursive} +\usepackage{lipsum} + +\begin{document} + \pagestyle{empty} \begin{PleinePageSeyes}[NumLignes]%numéro de lignes pour mieux "lire" @@ -601,18 +631,16 @@ Un exemple \textit{détaillé}, avec le rendu en page suivante, avec quelques co %un paragraphe de quelques lignes \ParagraphePapierSeyes[Ligne=10]{\cursive\lipsum[1]} %un paragraphe avec des maths - \ParagraphePapierSeyes[Ligne=22] - {% + \ParagraphePapierSeyes[Ligne=22]{% On essaye avec des maths $1+\frac12=\frac32$ en mode ligne avec des lignes assez longues pour voir ce que ça peut donner\ldots Et une intégrale $\int_0^1 2x dx = 1$.\\On essaye en passant à la ligne !!! - } + } %une ligne avec des maths \LignePapierSeyes[Ligne=25]<center>{${\displaystyle\sum_{i=1}^{n} i=\displaystyle\frac{n(n+1)}{2}}$.} %un environnement, avec ajustement manuel via (x,y)... %pas fonctionnel à 100% - \LignePapierSeyes[Echelle=1.1,Ligne=27](-1.4,0.95) - { + \LignePapierSeyes[Echelle=1.1,Ligne=27](-1.4,0.95){ \begin{align*} \frac{d}{dx} \ln x &= \lim_{h\to 0} \frac{\ln(x+h) - \ln x}{h} \\ &= \ln e^{1/x} &&\text{How this follows is left as an exercise.}\\ @@ -620,9 +648,10 @@ Un exemple \textit{détaillé}, avec le rendu en page suivante, avec quelques co \end{align*} } %un paragraphe multiligne, avec police agrandie - \ParagraphePapierSeyes[Echelle=1.15,Ligne=30] - {BlablablaBlablabla.\\BlablablaBlablablaBlablablaBlablabla.} + \ParagraphePapierSeyes[Echelle=1.15,Ligne=30]{BlablablaBlablabla.\\BlablablaBlablablaBlablablaBlablabla.} \end{PleinePageSeyes} + +\end{document} \end{PresentationCode} \newpage @@ -813,6 +842,8 @@ Les exemples des pages suivantes ont été obtenus de la même manière que celu \section{Historique} +\verb|v0.1.6|~:~~~~Possibilité de déterminer automatiquement L\&C en fonction de la place restante. + \verb|v0.1.5|~:~~~~Possibilité de spécifier la réglure pour les quadrillages de type \textsf{Seyes} + meilleure gestion des paragraphes. \phantom{\texttt{v0.1.5}}~:~~~~Amélioration de la gestion des paragraphes en mode \textsf{pleine page}. diff --git a/Master/texmf-dist/tex/latex/writeongrid/WriteOnGrid.sty b/Master/texmf-dist/tex/latex/writeongrid/WriteOnGrid.sty index f6a9d6199e3..e2673d3c581 100644 --- a/Master/texmf-dist/tex/latex/writeongrid/WriteOnGrid.sty +++ b/Master/texmf-dist/tex/latex/writeongrid/WriteOnGrid.sty @@ -2,7 +2,8 @@ % licence : Released under the LaTeX Project Public License v1.3c or later, see http://www.latex-project.org/lppl.txtf \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{WriteOnGrid}[2023/11/15 v0.1.5 package to write on grid lines] +\ProvidesPackage{WriteOnGrid}[2024/04/12 v0.1.6 package to write on grid lines] +% 0.1.6 Commande pour calculer le nombre de lignes à insérer en fin de page / options Auto % 0.1.5 Choix de la réglure pour le seyes (en pretest) + amélioration de la gestion des paragraphes % 0.1.4 Suppression des options de xcolor (définition manuelle des couleurs) % 0.1.3 Ajout de commandes simples pour des mini-quadrillages autonomes, sans texte @@ -20,6 +21,33 @@ %------Variables \newcounter{lgquadri}%compteur des lignes, qui sera incrémenté +%-----Calcul du nombre de lignes/colonnes +\NewDocumentCommand\GridCalcNbCols{ O{\ColAuto} m }{% + \IfStrEqCase{#2}{% + {Seyes}{\xdef#1{\fpeval{trunc((\the\linewidth)/(22.762192pt),0)}}}% + {5x5}{\xdef#1{\fpeval{trunc((\the\linewidth)/(14.22637pt),0)}}}% + {Ruled}{\xdef#1{\fpeval{trunc((\the\linewidth)/(25.607466pt),0)}}}% + }[\xdef#1{\fpeval{trunc((\the\linewidth)/(22.762192pt),0)}}]% +} + +\NewDocumentCommand\GridCalcNbLignes{ O{\LgnAuto} m }{% + \edef\measurepage{\dimexpr\pagegoal-\pagetotal\relax} + \IfStrEqCase{#2}{% + {Seyes}{\xdef#1{\fpeval{trunc((\the\measurepage)/(22.762192pt),0)}}}% + {5x5}{\xdef#1{\fpeval{trunc((\the\measurepage)/(14.22637pt),0)}}}% + {Ruled}{\xdef#1{\fpeval{trunc((\the\measurepage)/(25.607466pt),0)}}}% + }[\xdef#1{\fpeval{trunc((\the\measurepage)/(22.762192pt),0)}}]% +} + +\NewDocumentCommand\GridCalcAuto{ O{\LgnAuto} O{\ColAuto} m }{% + \edef\measurepage{\dimexpr\pagegoal-\pagetotal\relax} + \IfStrEqCase{#3}{% + {Seyes}{\xdef#1{\fpeval{trunc((\the\measurepage)/(22.762192pt),0)}}\xdef#2{\fpeval{trunc((\the\linewidth)/(22.762192pt),0)}}}% + {5x5}{\xdef#1{\fpeval{trunc((\the\measurepage)/(14.22637pt),0)}}\xdef#2{\fpeval{trunc((\the\linewidth)/(14.22637pt),0)}}}% + {Ruled}{\xdef#1{\fpeval{trunc((\the\measurepage)/(25.607466pt),0)}}\xdef#2{\fpeval{trunc((\the\linewidth)/(25.607466pt),0)}}}% + }[\xdef#1{\fpeval{trunc((\the\measurepage)/(22.762192pt),0)}}\xdef#2{\fpeval{trunc((\the\linewidth)/(22.762192pt),0)}}]% +} + %-----Couleurs utiles \definecolor{TyrianPurple}{rgb}{0.4,0.01,0.24} \definecolor{PapierRose}{HTML}{E6B8E6} @@ -78,7 +106,35 @@ \IfSubStr{#2}{/}%on récupère les couleurs {\StrCut{#2}{/}{\QuadCoulA}{\QuadCoulB}} {\def\QuadCoulA{#2}\def\QuadCoulB{#2}}% - \StrCut{\QuadNbCar}{x}{\QuadNbCol}{\QuadNbLig}% + %détermination des nb de carreaux, sans unite... ? TEST !!!!!! + \IfSubStr{\QuadNbCar}{Auto}% + {% + \GridCalcAuto[\QuadNbLig][\QuadNbCol]{\QuadType}% + \IfSubStr{\QuadNbCar}{Auto*}% + {% + \StrCount{\QuadNbCar}{*}[\tmpnbetoiles]% + \xdef\QuadNbLig{\inteval{\QuadNbLig+\tmpnbetoiles}}% + }% + {}% + }% + {% + \IfBeginWith{\QuadNbCar}{C}% + {% + \GridCalcNbCols[\QuadNbCol]{\QuadType}% + \StrBehind{\QuadNbCar}{x}[\QuadNbLig]% + }% + {% + \IfEndWith{\QuadNbCar}{L}% + {% + \GridCalcNbLignes[\QuadNbLig]{\QuadType}% + \StrBefore{\QuadNbCar}{x}[\QuadNbCol]% + }% + {% + \StrCut{\QuadNbCar}{x}{\QuadNbCol}{\QuadNbLig}% + }% + }% + }% + %suite des calculs \IfStrEq{\QuadType}{Seyes}%les types de quadrillages {\xdef\ValeurCarreau{0.8}\xdef\CoeffUnite{\fpeval{(\QuadReglureSeyes)/2}}}% {}% @@ -88,7 +144,6 @@ \IfStrEq{\QuadType}{Ruled}% {\xdef\ValeurCarreau{0.9}\xdef\CoeffUnite{1}}% {}% - \IfSubStr{\QuadElar}{/}%on récupère les élargissements G et D {\StrCut{\QuadElar}{/}{\QuadElarG}{\QuadElarD}}% {\def\QuadElarG{\QuadElar}\def\QuadElarD{\QuadElar}}% @@ -133,7 +188,35 @@ \IfSubStr{#2}{/}%on récupère les couleurs {\StrCut{#2}{/}{\QuadCoulA}{\QuadCoulB}} {\def\QuadCoulA{#2}\def\QuadCoulB{#2}}% - \StrCut{\QuadNbCar}{x}{\QuadNbCol}{\QuadNbLig}% + %détermination des nb de carreaux, sans unite... ? TEST !!!!!! + \IfSubStr{\QuadNbCar}{Auto}% + {% + \GridCalcAuto[\QuadNbLig][\QuadNbCol]{\QuadType}% + \IfSubStr{\QuadNbCar}{Auto*}% + {% + \StrCount{\QuadNbCar}{*}[\tmpnbetoiles]% + \xdef\QuadNbLig{\inteval{\QuadNbLig+\tmpnbetoiles}}% + }% + {}% + }% + {% + \IfBeginWith{\QuadNbCar}{C}% + {% + \GridCalcNbCols[\QuadNbCol]{\QuadType}% + \StrBehind{\QuadNbCar}{x}[\QuadNbLig]% + }% + {% + \IfEndWith{\QuadNbCar}{L}% + {% + \GridCalcNbLignes[\QuadNbLig]{\QuadType}% + \StrBefore{\QuadNbCar}{x}[\QuadNbCol]% + }% + {% + \StrCut{\QuadNbCar}{x}{\QuadNbCol}{\QuadNbLig}% + }% + }% + }% + %suite des calculs \IfStrEq{\QuadType}{Seyes}%les types de quadrillages {\xdef\ValeurCarreau{0.8}\xdef\CoeffUnite{\fpeval{(\QuadReglureSeyes)/2}}}% {}% @@ -204,7 +287,35 @@ \IfSubStr{#2}{/}%on récupère les couleurs {\StrCut{#2}{/}{\QuadCoulA}{\QuadCoulB}} {\def\QuadCoulA{#2}\def\QuadCoulB{#2}}% - \StrCut{\QuadNbCar}{x}{\QuadNbCol}{\QuadNbLig}% + %détermination des nb de carreaux, sans unite... ? TEST !!!!!! + \IfSubStr{\QuadNbCar}{Auto}% + {% + \GridCalcAuto[\QuadNbLig][\QuadNbCol]{\QuadType}% + \IfSubStr{\QuadNbCar}{Auto*}% + {% + \StrCount{\QuadNbCar}{*}[\tmpnbetoiles]% + \xdef\QuadNbLig{\inteval{\QuadNbLig+\tmpnbetoiles}}% + }% + {}% + }% + {% + \IfBeginWith{\QuadNbCar}{C}% + {% + \GridCalcNbCols[\QuadNbCol]{\QuadType}% + \StrBehind{\QuadNbCar}{x}[\QuadNbLig]% + }% + {% + \IfEndWith{\QuadNbCar}{L}% + {% + \GridCalcNbLignes[\QuadNbLig]{\QuadType}% + \StrBefore{\QuadNbCar}{x}[\QuadNbCol]% + }% + {% + \StrCut{\QuadNbCar}{x}{\QuadNbCol}{\QuadNbLig}% + }% + }% + }% + %suite des calculs \IfStrEq{\QuadType}{Seyes}%les types de quadrillages {\xdef\ValeurCarreau{0.8}}% {}% @@ -258,7 +369,35 @@ \IfSubStr{#2}{/}%on récupère les couleurs {\StrCut{#2}{/}{\QuadCoulA}{\QuadCoulB}} {\def\QuadCoulA{#2}\def\QuadCoulB{#2}}% - \StrCut{\QuadNbCar}{x}{\QuadNbCol}{\QuadNbLig}% + %détermination des nb de carreaux, sans unite... ? TEST !!!!!! + \IfSubStr{\QuadNbCar}{Auto}% + {% + \GridCalcAuto[\QuadNbLig][\QuadNbCol]{\QuadType}% + \IfSubStr{\QuadNbCar}{Auto*}% + {% + \StrCount{\QuadNbCar}{*}[\tmpnbetoiles]% + \xdef\QuadNbLig{\inteval{\QuadNbLig+\tmpnbetoiles}}% + }% + {}% + }% + {% + \IfBeginWith{\QuadNbCar}{C}% + {% + \GridCalcNbCols[\QuadNbCol]{\QuadType}% + \StrBehind{\QuadNbCar}{x}[\QuadNbLig]% + }% + {% + \IfEndWith{\QuadNbCar}{L}% + {% + \GridCalcNbLignes[\QuadNbLig]{\QuadType}% + \StrBefore{\QuadNbCar}{x}[\QuadNbCol]% + }% + {% + \StrCut{\QuadNbCar}{x}{\QuadNbCol}{\QuadNbLig}% + }% + }% + }% + %suite des calculs \IfStrEq{\QuadType}{Seyes}%les types de quadrillages {\xdef\ValeurCarreau{0.8}}% {}% @@ -354,7 +493,7 @@ {% \foreach \lig in {1,...,\inteval{\SeyesFullNbLignP+1}} {\node[gray,inner sep=0pt,anchor=base east] at ($(SeyesOrigine)+(-0.2,{-0.4*\SeyesFullReglureSeyes*(\lig-1)})$) {\scriptsize\sffamily\lig};} }% - {} + {}% } { \end{tikzpicture}% |