texlive[74988] Master: open-everyday-symbols (20apr25)

commits+karl at tug.org commits+karl at tug.org
Sun Apr 20 22:04:50 CEST 2025


Revision: 74988
          https://tug.org/svn/texlive?view=revision&revision=74988
Author:   karl
Date:     2025-04-20 22:04:49 +0200 (Sun, 20 Apr 2025)
Log Message:
-----------
open-everyday-symbols (20apr25)

Modified Paths:
--------------
    trunk/Master/tlpkg/bin/tlpkg-ctan-check
    trunk/Master/tlpkg/tlpsrc/collection-pictures.tlpsrc

Added Paths:
-----------
    trunk/Master/texmf-dist/doc/latex/open-everyday-symbols/
    trunk/Master/texmf-dist/doc/latex/open-everyday-symbols/README.md
    trunk/Master/texmf-dist/doc/latex/open-everyday-symbols/open-everyday-symbols-doc.pdf
    trunk/Master/texmf-dist/doc/latex/open-everyday-symbols/open-everyday-symbols-doc.tex
    trunk/Master/texmf-dist/tex/latex/open-everyday-symbols/
    trunk/Master/texmf-dist/tex/latex/open-everyday-symbols/open-everyday-symbols.sty
    trunk/Master/tlpkg/tlpsrc/open-everyday-symbols.tlpsrc

Added: trunk/Master/texmf-dist/doc/latex/open-everyday-symbols/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/open-everyday-symbols/README.md	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/open-everyday-symbols/README.md	2025-04-20 20:04:49 UTC (rev 74988)
@@ -0,0 +1,15 @@
+License: LaTeX Project Public License 1.3c
+
+Maintainer: Pascal Bercher, pascal.bercher at anu.edu.au
+
+Please read the documentation (PDF) for instructions. 
+
+In a nutshell, this package is an open and continuously extended list of “everyday symbols” (i.e., not of a mathematical or otherwise primarily technical nature). I call it open because I ask everybody to contribute your own symbols to it. I hope that enough people consider creating their own symbols, e.g., with the help of chatGPT, and contribute them to this package.
+
+A few notes in case you want to contribute:
+- Check out the repository that's linked from CTAN, make the respective changes, and make a pull request. Ideally, drop me an email as well so that I won't miss it. You can also drop me an email pro-actively before the request, especially if you have questions or suggestions for improvement that might warrant discussion.
+- I request that you use/implement the "main command" \everydaySymbol[options]{main-category}{sub-identifier-number}, i.e., options can be any key-value pair you set up, main-category is a descriptive *main category*, such as door, car, or whatever. *sub-identifier* is a specialization of that as it might be that several authors contribute to the same main category; this keeps it sorted. I would like to request to have a combination of a more descriptive subcategory plus an author name or ID (since even the sub category might not be unique, think of generic ones like "cartoony" or "simple", of which there might be many for the same main category; adding the author will keep this clean). *number* is a number for the individual command, from 01 counting upwards (three digits if you have at least 3; we might define aliases to eliminate leading zeros; not done yet). In a nutshell: Just follow the existing examples.
+- Note that the actual sources of the project are organized in subfolders and individual files. They are combined into one (for CTAN) using a script. So, please check out the repository before you make any changes.
+- If you have enough time, consider making them modular using additional keys, to allow people to configure the graphics further and thus create additional variants.
+
+Finally, let me tell you that creating graphics using chatGPT may actually be quite fun. :)
\ No newline at end of file


Property changes on: trunk/Master/texmf-dist/doc/latex/open-everyday-symbols/README.md
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/open-everyday-symbols/open-everyday-symbols-doc.pdf
===================================================================
(Binary files differ)

Index: trunk/Master/texmf-dist/doc/latex/open-everyday-symbols/open-everyday-symbols-doc.pdf
===================================================================
--- trunk/Master/texmf-dist/doc/latex/open-everyday-symbols/open-everyday-symbols-doc.pdf	2025-04-20 20:04:06 UTC (rev 74987)
+++ trunk/Master/texmf-dist/doc/latex/open-everyday-symbols/open-everyday-symbols-doc.pdf	2025-04-20 20:04:49 UTC (rev 74988)

Property changes on: trunk/Master/texmf-dist/doc/latex/open-everyday-symbols/open-everyday-symbols-doc.pdf
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/pdf
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/open-everyday-symbols/open-everyday-symbols-doc.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/open-everyday-symbols/open-everyday-symbols-doc.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/open-everyday-symbols/open-everyday-symbols-doc.tex	2025-04-20 20:04:49 UTC (rev 74988)
@@ -0,0 +1,115 @@
+\documentclass{article}
+
+\usepackage{open-everyday-symbols}
+\usepackage[margin=.95in]{geometry}
+
+\begin{document}
+
+\title{The \emph{OPEN} Everyday Symbols Library\\[1ex]\large Version 1.0}
+\author{Pascal Bercher\\pascal.bercher at anu.edu.au}
+\date{\today}
+
+\maketitle
+
+\setlength{\parindent}{0pt}
+
+This package is an \emph{open} and continuously extended list of ``everyday symbols'' (i.e., not of a mathematical or otherwise primarily technical nature). I call it open because I ask \emph{everybody} (i.e., also potentially you) to contribute your own symbols to it. I hope that enough people consider creating their own symbols, e.g., with the help of chatGPT, and contribute them to this package. (Note that creating such graphics isn't particularly hard or time-intense when getting assisted by generative AI such as chatGPT. It will take you a bit longer to create variants of the single symbol you need and to contribute your work to this package, but if enough people do this, we'll get a decent package at some point.) For further details for contributing, please read the readme.
+
+\medskip
+Every command follows the structure:
+\begin{center}
+  \texttt{\string\everydaySymbol[some-color]$\{$main-category$\}\{$sub-identifier-number$\}$}
+\end{center}
+Here, \texttt{some-color} is optional, default is black/white (all standard \LaTeX{} colors are possible). Some graphics allow further arguments for configuration (in which case ``some-color'' has to be replaced by ``color=some-color''). If a symbol is too large (or small), simply scale it up or down using
+\texttt{\string\scalebox$\{$factor$\}\{$your-symbol$\}$}.
+
+\medskip
+Note that the document is ordered by category, like doors, houses, etc. Note however that every main category can have multiple sub categories (the sub-identifier), where one sub category is by one author, meaning that for each main category you might find several further interpretations and variants of it. 
+
+\medskip
+The rule for the sub-categories' name is ``descriptor--author--ID''. The ID is to enumerate over different symbols, whereas author allows multiple people to contribute their work without incurring a name clash.
+
+\subsection*{More symbols required?}
+
+You might be here because you require some (non-mathematical) symbol... Thus, two pieces of advice:
+
+\begin{itemize}
+  \item Check out https://detexify.kirelabs.org/classify.html: it allows you to draw a symbol in the browser, and text recognition recommends \LaTeX{} commands and the packages in which they are found.
+  \item Other than that, one might only need this amazing PDF:\\
+  https://tug.ctan.org/info/symbols/comprehensive/symbols-a4.pdf. 
+  It lists out dozens (or hundreds?) of packages and their symbols, including their commands and symbols. Thus, either scroll through its almost 500 pages, or use full-text search, e.g., for ``dinosaur''.  
+\end{itemize}
+
+If you still don't find what you are after, please consider drawing variants of what you need yourself using chatGPT in tikz, and ``donate'' your work into this package so that it grows. :)
+
+Version history at the very end.
+
+\pagebreak
+
+\section{Doors}
+
+In this section, you find multiple variants of doors.
+
+
+\subsection{floorplan--pascal}
+
+Author: package author (Pascal; using chatGPT).
+
+\begin{itemize}
+  \foreach \i in {01,02,03,04} {
+    \item \texttt{\string\everydaySymbol\{door\}\{floorplan--pascal-\i\}} \dotfill\ 
+          \everydaySymbol{door}{floorplan--pascal-\i}
+  }
+
+    % item 5 is shown separately as otherwise, strangely, the symbols are not perfectly aligned
+    \item \texttt{\string\everydaySymbol\{door\}\{floorplan--pascal-05\}} \dotfill\ 
+          \everydaySymbol{door}{floorplan--pascal-05}
+
+    \item \texttt{\string\everydaySymbol[color=red!66!yellow]\{door\}\{floorplan--pascal-05\}} \dotfill\ 
+          \everydaySymbol[color=red!66!yellow]{door}{floorplan--pascal-05}
+
+    \item \texttt{\string\everydaySymbol[blue]\{door\}\{floorplan--pascal-05\}} \dotfill\ 
+          \everydaySymbol[blue]{door}{floorplan--pascal-05}
+\end{itemize}
+
+
+
+
+\section{Houses}
+
+In this section, you find multiple variants of houses.
+
+\subsection{iconic--pascal}
+
+Author: package author (Pascal; using chatGPT). 
+
+Note that here you have only one main command and use the config key to configure your graphic.
+
+\begin{itemize}
+  \item \texttt{\string\everydaySymbol\{house\}\{iconic--pascal\}} \dotfill\ 
+        \everydaySymbol{house}{iconic--pascal}
+
+  \item \texttt{\string\everydaySymbol[config=\{middleDoor,chimney\}]\{house\}\{iconic--pascal\}} \dotfill\ 
+        \everydaySymbol[config={middleDoor,chimney}]{house}{iconic--pascal}
+
+  \item \texttt{\string\everydaySymbol[config=\{rightDoor,leftWindow\}]\{house\}\{iconic--pascal\}} \dotfill\ 
+        \everydaySymbol[config={rightDoor,leftWindow}]{house}{iconic--pascal}
+
+  \item \texttt{\string\everydaySymbol[config=twoWindows,color=red]\{house\}\{iconic--pascal\}} \dotfill\ 
+        \everydaySymbol[config=twoWindows,color=red]{house}{iconic--pascal}
+
+  \item \texttt{\string\everydaySymbol[config=\{twoWindows,middleDoor\}]\{house\}\{iconic--pascal\}} \dotfill\ 
+        \everydaySymbol[config={twoWindows,middleDoor}]{house}{iconic--pascal}
+
+\end{itemize}
+
+\section*{Version History}
+
+\begin{itemize}
+  \item 2025/04/20, Version 1.0: First version with just two categories: Door (floorplan--pascal) and House (floorplan--pascal).
+\end{itemize}
+
+
+
+
+\end{document}
\ No newline at end of file


Property changes on: trunk/Master/texmf-dist/doc/latex/open-everyday-symbols/open-everyday-symbols-doc.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/tex/latex/open-everyday-symbols/open-everyday-symbols.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/open-everyday-symbols/open-everyday-symbols.sty	                        (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/open-everyday-symbols/open-everyday-symbols.sty	2025-04-20 20:04:49 UTC (rev 74988)
@@ -0,0 +1,135 @@
+\ProvidesPackage{open-everyday-symbols}[2025/04/20 v1.0 The OPEN Everyday Symbols Library]
+\RequirePackage{tikz}
+
+\RequirePackage{etoolbox} % used for conditionals
+\RequirePackage{xstring}  % used for the main command we provide
+
+\tikzset{every picture/.append style={baseline=(current bounding box.south)}}
+
+\makeatletter
+
+\NewDocumentCommand{\everydaySymbol}{O{} m m}{%
+  \pgfkeys{/everydaySymbol/#2/.cd, default}%
+  \def\everydaySymbol at color{black}%
+  \IfStrEq{#1}{}{%
+    % nothing
+  }{%
+    \IfSubStr{#1}{=}{%
+      \pgfkeys{/everydaySymbol/#2/.cd, #1}%
+    }{%
+      \def\everydaySymbol at color{#1}%
+    }%
+  }%
+  \csname everydaySymbol@#2@#3\endcsname{\everydaySymbol at color}%
+}
+
+% --- BEGIN symbols/door/floorplan--pascal.tex ---
+
+% --- door definitions ---
+\pgfkeys{
+  /everydaySymbol/door/.cd,
+  color/.code  = {\def\everydaySymbol at color{#1}},
+  default/.code={}
+}
+
+% 01
+\expandafter\newcommand\csname everydaySymbol at door@floorplan--pascal-01\endcsname[1]{%
+  \tikz{%
+    \fill[#1!20!white] (0.3,0.3) rectangle (0.65,0.7);%
+    \fill[#1] (0.35,0.5) circle (0.02);%
+  }%
+}
+% 02
+\expandafter\newcommand\csname everydaySymbol at door@floorplan--pascal-02\endcsname[1]{%
+  \tikz{%
+    \fill[#1!20!white] (0.3,0.3) -- (0.3,0.6) arc[start angle=180,end angle=0,radius=0.2] -- (0.7,0.3) -- cycle;%
+    \fill[#1] (0.41,0.51) circle (0.02);%
+  }%
+}
+% 03
+\expandafter\newcommand\csname everydaySymbol at door@floorplan--pascal-03\endcsname[1]{%
+  \tikz{%
+    \fill[#1!20!white] (0.3,0.3) rectangle (0.5,0.7);%
+    \draw[#1] (0.3,0.3) rectangle (0.5,0.7);%
+    \fill[#1!60!white] (0.5,0.3) -- (0.65,0.45) -- (0.65,0.85) -- (0.5,0.7) -- cycle;%
+    \draw[#1] (0.5,0.3) -- (0.65,0.45) -- (0.65,0.85) -- (0.5,0.7) -- cycle;%
+  }%
+}
+% 04
+\expandafter\newcommand\csname everydaySymbol at door@floorplan--pascal-04\endcsname[1]{%
+  \tikz{%
+    % closed door (same base size, left panel only)
+    \fill[#1!20!white] (0.3,0.3) rectangle (0.5,0.7);%
+    \draw[#1] (0.3,0.3) rectangle (0.5,0.7);%
+    \fill[#1] (0.35,0.5) circle (0.02);%
+  }%
+}
+%05
+\expandafter\newcommand\csname everydaySymbol at door@floorplan--pascal-05\endcsname[1]{%
+  \tikz{%
+    \fill[#1!20!white] (0.3,0.3) rectangle (0.7,0.7);%
+    \draw[#1, thick] (0.5,0.3) -- (0.5,0.7);%
+    \fill[#1] (0.43,0.5) circle (0.015);%
+    \fill[#1] (0.57,0.5) circle (0.015);%
+  }%
+}
+
+% --- END symbols/door/floorplan--pascal.tex ---
+% --- BEGIN symbols/house/iconic--pascal.tex ---
+
+% --- keys for house options ---
+\pgfkeys{
+  /everydaySymbol/house/.cd,
+  config/.estore in=\everydaySymbol at houseconfig,
+  color/.code  = {\def\everydaySymbol at color{#1}},
+  default/.code={}
+}
+
+\expandafter\newcommand\csname everydaySymbol at house@iconic--pascal\endcsname[1]{%
+  \tikz[baseline]{%
+    \providecommand\everydaySymbol at houseconfig{}% ← ensures defined
+    % base house
+    \fill[#1!20!white] (0,0) rectangle (0.8,0.5);
+    \fill[#1!40!white] (0,0.5) -- (0.4,0.8) -- (0.8,0.5) -- cycle;
+    \draw[#1, thick] (0,0) rectangle (0.8,0.5);
+    \draw[#1, thick] (0,0.5) -- (0.4,0.8) -- (0.8,0.5);
+
+    % right door
+    \IfSubStr{\everydaySymbol at houseconfig}{rightDoor}{%
+      \fill[#1] (0.37,0) rectangle (0.57,0.3);
+      \draw[white, thick] (0.42,0.15) circle (0.02);
+    }{}
+
+    % middle door
+    \IfSubStr{\everydaySymbol at houseconfig}{middleDoor}{%
+      \fill[#1] (0.30,0) rectangle (0.50,0.3);
+      \draw[white, thick] (0.35,0.15) circle (0.02);
+    }{}
+
+    % left window
+    \IfSubStr{\everydaySymbol at houseconfig}{leftWindow}{%
+      \draw[#1, thick] (0.1,0.25) rectangle (0.25,0.4);
+    }{}
+
+    % two windows
+    \IfSubStr{\everydaySymbol at houseconfig}{twoWindows}{%
+      \draw[#1, thick] (0.1,0.27) rectangle (0.25,0.42);
+      \draw[#1, thick] (0.175,0.27) -- (0.175,0.42);
+      \draw[#1, thick] (0.1,0.345) -- (0.25,0.345);
+      \draw[#1, thick] (0.55,0.27) rectangle (0.7,0.42);
+      \draw[#1, thick] (0.625,0.27) -- (0.625,0.42);
+      \draw[#1, thick] (0.55,0.345) -- (0.7,0.345);
+    }{}
+
+    % chimney
+    \IfSubStr{\everydaySymbol at houseconfig}{chimney}{%
+      \fill[#1] (0.55,0.7) rectangle (0.6,0.9);
+      \draw[#1, thick] (0.55,0.5) -- (0.55,0.7) -- (0.6,0.7) -- (0.6,0.9);
+    }{}
+  }%
+}
+
+% --- END symbols/house/iconic--pascal.tex ---
+
+\makeatother
+\endinput
\ No newline at end of file


Property changes on: trunk/Master/texmf-dist/tex/latex/open-everyday-symbols/open-everyday-symbols.sty
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/tlpkg/bin/tlpkg-ctan-check
===================================================================
--- trunk/Master/tlpkg/bin/tlpkg-ctan-check	2025-04-20 20:04:06 UTC (rev 74987)
+++ trunk/Master/tlpkg/bin/tlpkg-ctan-check	2025-04-20 20:04:49 UTC (rev 74988)
@@ -648,7 +648,8 @@
     odesandpdes odsfile ofs
     ogham oinuit old-arrows oldlatin oldstandard
     oldstyle olsak-misc omgtudoc-asoiu
-    onedown onlyamsmath onrannual opbible opcit opencolor opensans oplotsymbl
+    onedown onlyamsmath onrannual opbible opcit
+    opencolor open-everyday-symbols opensans oplotsymbl
     opteng optex optexcount optidef optional options
     orcidlink ordinalpt orientation orkhun
     oscola oststud oswald ot-tableau othello othelloboard

Modified: trunk/Master/tlpkg/tlpsrc/collection-pictures.tlpsrc
===================================================================
--- trunk/Master/tlpkg/tlpsrc/collection-pictures.tlpsrc	2025-04-20 20:04:06 UTC (rev 74987)
+++ trunk/Master/tlpkg/tlpsrc/collection-pictures.tlpsrc	2025-04-20 20:04:49 UTC (rev 74988)
@@ -108,6 +108,7 @@
 depend nl-interval
 depend nndraw
 depend numericplots
+depend open-everyday-symbols
 depend outilsgeomtikz
 depend papiergurvan
 depend pb-diagram

Added: trunk/Master/tlpkg/tlpsrc/open-everyday-symbols.tlpsrc
===================================================================


More information about the tex-live-commits mailing list.