From e72af82c3ed16b81cdb5043c58abbdbb3cf02102 Mon Sep 17 00:00:00 2001 From: Ian Jauslin Date: Mon, 4 Oct 2021 11:12:34 -0400 Subject: Initial commit --- doc/libs/dlmf.sty | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 doc/libs/dlmf.sty (limited to 'doc/libs/dlmf.sty') diff --git a/doc/libs/dlmf.sty b/doc/libs/dlmf.sty new file mode 100644 index 0000000..f435e96 --- /dev/null +++ b/doc/libs/dlmf.sty @@ -0,0 +1,55 @@ +%% Copyright 2021 Ian Jauslin +%% +%% Licensed under the Apache License, Version 2.0 (the "License"); +%% you may not use this file except in compliance with the License. +%% You may obtain a copy of the License at +%% +%% http://www.apache.org/licenses/LICENSE-2.0 +%% +%% Unless required by applicable law or agreed to in writing, software +%% distributed under the License is distributed on an "AS IS" BASIS, +%% WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +%% See the License for the specific language governing permissions and +%% limitations under the License. + +%% +%% DLMF package: +%% cite equations from DLMF +%% + +%% TeX format +\NeedsTeXFormat{LaTeX2e}[1995/12/01] + +%% package name +\ProvidesPackage{dlmf}[2020/05/01] + +%% dependencies +\RequirePackage{color} +\RequirePackage{hyperref} + +% get the first two numbers in (a.b.c); +\def\@sectionnr(#1.#2.#3){#1.#2} + +% get the last number in (a.b.c); +\def\@eqnr(#1.#2.#3){#3} + +% remove parentheses around argument +\def\@cleanparentheses(#1){#1} + +%% cite DLMF equation +\def\dlmfcite#1#2{\leavevmode% + \let\@dlmfcite@separator\@empty% + \cite[% + % loop over ',' separated list + \@for\@dlmfcite:=#1\do{% + % put commas between entries + \@dlmfcite@separator\def\@dlmfcite@separator{,\ }% + ({\color{blue}\href{https://dlmf.nist.gov/\expandafter\@sectionnr\@dlmfcite\#E\expandafter\@eqnr\@dlmfcite}{\expandafter\@cleanparentheses\@dlmfcite}})% + }% + ]{DLMF#2}% +} + +%% end +\endinput + + -- cgit v1.2.3-54-g00ecf