-
Notifications
You must be signed in to change notification settings - Fork 0
/
beamerthemesjtubeamer.sty
96 lines (96 loc) · 4.14 KB
/
beamerthemesjtubeamer.sty
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
%%
%% This is file `beamerthemesjtubeamer.sty',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% beamerthemesjtubeamer.dtx (with options: `package,maxplus,max,min,my')
%% ------------------------------------------------------------------------
%% Copyright (C) 2021-2024 SJTUG
%%
%% 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.
%% ------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{beamerthemesjtubeamer}[2024/10/21 3.1.0 sjtubeamer parent theme]
\DeclareOptionBeamer{maxplus}{
\def\sjtubeamer@cover{maxplus}\def\sjtubeamer@logopos{topright}}
\DeclareOptionBeamer{max}{
\def\sjtubeamer@cover{max}\def\sjtubeamer@logopos{bottomright}}
\DeclareOptionBeamer{min}{
\def\sjtubeamer@cover{min}\def\sjtubeamer@logopos{topright}}
\DeclareOptionBeamer{my}{
\def\sjtubeamer@cover{my}\def\sjtubeamer@logopos{bottomright}}
% reserved for customization
\ExecuteOptionsBeamer{
maxplus,
min,
my,
max,
}
\DeclareOptionBeamer{red}{\def\sjtubeamer@color{red}}
\DeclareOptionBeamer{blue}{\def\sjtubeamer@color{blue}}
\ExecuteOptionsBeamer{red}
\DeclareOptionBeamer{light}{\def\sjtubeamer@lum{light}}
\DeclareOptionBeamer{dark}{\def\sjtubeamer@lum{dark}}
\ExecuteOptionsBeamer{dark}
\DeclareOptionBeamer{zh}{\def\sjtubeamer@lang{zh}}
\DeclareOptionBeamer{en}{\def\sjtubeamer@lang{en}}
\@ifclassloaded{ctexbeamer}{\ExecuteOptionsBeamer{zh}}{
\ExecuteOptionsBeamer{en}}
\DeclareOptionBeamer{miniframes}{\def\sjtubeamer@nav{miniframes}}
\DeclareOptionBeamer{infolines}{\def\sjtubeamer@nav{infolines}}
\DeclareOptionBeamer{sidebar}{\def\sjtubeamer@nav{sidebar}}
\DeclareOptionBeamer{default}{\def\sjtubeamer@nav{default}}
\DeclareOptionBeamer{smoothbars}{\def\sjtubeamer@nav{smoothbars}}
\DeclareOptionBeamer{split}{\def\sjtubeamer@nav{split}}
\DeclareOptionBeamer{shadow}{\def\sjtubeamer@nav{shadow}}
\DeclareOptionBeamer{tree}{\def\sjtubeamer@nav{tree}}
\DeclareOptionBeamer{smoothtree}{\def\sjtubeamer@nav{smoothtree}}
\ExecuteOptionsBeamer{miniframes}
\DeclareOptionBeamer{topright}{\def\sjtubeamer@logopos{topright}}
\DeclareOptionBeamer{bottomright}{\def\sjtubeamer@logopos{bottomright}}
\ProcessOptionsBeamer
\PassOptionsToPackage{\sjtubeamer@cover}{beamerinnerthemesjtubeamer}
\PassOptionsToPackage{\sjtubeamer@color}{beamercolorthemesjtubeamer}
\PassOptionsToPackage{\sjtubeamer@color}{beamerinnerthemesjtubeamer}
\PassOptionsToPackage{\sjtubeamer@lum}{beamercolorthemesjtubeamer}
\PassOptionsToPackage{\sjtubeamer@lang}{beamerinnerthemesjtubeamer}
\PassOptionsToPackage{\sjtubeamer@nav}{beamerouterthemesjtubeamer}
\PassOptionsToPackage{\sjtubeamer@logopos}{beamerouterthemesjtubeamer}
\mode<presentation>
\usecolortheme{sjtubeamer}
\usefonttheme{sjtubeamer}
\useinnertheme{sjtubeamer}
\useoutertheme{sjtubeamer}
\newrobustcmd*\usesjtutheme[2][]{
\def\sjtubeamer@mythemeoptions{#1}
\def\sjtubeamer@mythemelist{#2}
\@for\sjtubeamer@mythemename:=\sjtubeamer@mythemelist\do{
\@for\sjtubeamer@mythemeoption:=\sjtubeamer@mythemeoptions\do{
\expandafter\def\csname sjtubeamer@\sjtubeamer@mythemename
@\sjtubeamer@mythemeoption\endcsname{true}
}
\def\sjtubeamer@mythemefile{sjtubeamertheme\sjtubeamer@mythemename.ltx}
\IfFileExists{\sjtubeamer@mythemefile}{
\PackageWarning{\sjtubeamer@mythemename}{
Local ltx file is found. For documentation use only. \MessageBreak
Move to \getcontribdir{\sjtubeamer@mythemename} for release.
Unexpected error in other ltx may occur}
\renewcommand{\getcontribdir}[1]{.}
}{}
\input{\getcontribpath{\sjtubeamer@mythemename}{\sjtubeamer@mythemefile}}
}
}
\endinput
%%
%% End of file `beamerthemesjtubeamer.sty'.