~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/sphinx/kerneldoc-preamble.sty

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /Documentation/sphinx/kerneldoc-preamble.sty (Version linux-6.12-rc7) and /Documentation/sphinx/kerneldoc-preamble.sty (Version policy-sample)


  1 % -*- coding: utf-8 -*-                           
  2 % SPDX-License-Identifier: GPL-2.0                
  3 %                                                 
  4 % LaTeX preamble for "make latexdocs" or "make    
  5 %   - TOC width settings                          
  6 %   - Setting of tabulary (\tymin)                
  7 %   - Headheight setting for fancyhdr             
  8 %   - Fontfamily settings for CJK (Chinese, Ja    
  9 %                                                 
 10 % Note on the suffix of .sty:                     
 11 %   This is not implemented as a LaTeX style f    
 12 %   plain LaTeX code to be included into pream    
 13 %   ".sty" is chosen because ".tex" would caus    
 14 %   this file with a LaTeX main file.             
 15 %                                                 
 16 % Copyright (C) 2022  Akira Yokosawa              
 17                                                   
 18 % Custom width parameters for TOC                 
 19 %  - Redefine low-level commands defined in re    
 20 %  - Indent of 2 chars is preserved for ease o    
 21 % Summary of changes from default params:         
 22 %   Width of page number (\@pnumwidth): 1.55em    
 23 %   Width of chapter number:            1.5em     
 24 %   Indent of section number:           1.5em     
 25 %   Width of section number:            2.6em     
 26 %   Indent of subsection number:        4.1em     
 27 %   Width of subsection number:         3.5em     
 28 %                                                 
 29 % These params can have 4 digit page counts, 3    
 30 % section counts of 4 digits + 1 period (e.g.,    
 31 % of 5 digits + 2 periods (e.g., 18.7.13).        
 32 \makeatletter                                     
 33 %% Redefine \@pnumwidth (page number width)       
 34 \renewcommand*\@pnumwidth{2.7em}                  
 35 %% Redefine \l@chapter (chapter list entry)       
 36 \renewcommand*\l@chapter[2]{%                     
 37   \ifnum \c@tocdepth >\m@ne                       
 38     \addpenalty{-\@highpenalty}%                  
 39     \vskip 1.0em \@plus\p@                        
 40     \setlength\@tempdima{2.4em}%                  
 41     \begingroup                                   
 42       \parindent \z@ \rightskip \@pnumwidth       
 43       \parfillskip -\@pnumwidth                   
 44       \leavevmode \bfseries                       
 45       \advance\leftskip\@tempdima                 
 46       \hskip -\leftskip                           
 47       #1\nobreak\hfil                             
 48       \nobreak\hb@xt@\@pnumwidth{\hss #2%         
 49                                  \kern-\p@\ker    
 50       \penalty\@highpenalty                       
 51     \endgroup                                     
 52   \fi}                                            
 53 %% Redefine \l@section and \l@subsection          
 54 \renewcommand*\l@section{\@dottedtocline{1}{2.    
 55 \renewcommand*\l@subsection{\@dottedtocline{2}    
 56 \makeatother                                      
 57 %% Prevent default \sphinxtableofcontentshook     
 58 \renewcommand{\sphinxtableofcontentshook}{} %     
 59                                                   
 60 % Prevent column squeezing of tabulary.  \tymi    
 61 %   \setlength{\tymin}{3\fontcharwd\font`0 }      
 62 % , which is too short.                           
 63 \setlength{\tymin}{20em}                          
 64                                                   
 65 % Adjust \headheight for fancyhdr                 
 66 \addtolength{\headheight}{1.6pt}                  
 67 \addtolength{\topmargin}{-1.6pt}                  
 68                                                   
 69 % Translations have Asian (CJK) characters whi    
 70 % xeCJK is used                                   
 71 \usepackage{ifthen}                               
 72 \newboolean{enablecjk}                            
 73 \setboolean{enablecjk}{false}                     
 74 \IfFontExistsTF{Noto Sans CJK SC}{                
 75     \IfFileExists{xeCJK.sty}{                     
 76         \setboolean{enablecjk}{true}              
 77     }{}                                           
 78 }{}                                               
 79 \ifthenelse{\boolean{enablecjk}}{                 
 80     % Load xeCJK when both the Noto Sans CJK f    
 81     \usepackage{xeCJK}                            
 82     % Noto CJK fonts don't provide slant shape    
 83     % its emulation.                              
 84     % Select KR variant at the beginning of ea    
 85     % and apostorph symbols of half-width is u    
 86     \IfFontExistsTF{Noto Serif CJK KR}{           
 87         \setCJKmainfont{Noto Serif CJK KR}[Aut    
 88     }{                                            
 89         \setCJKmainfont{Noto Sans CJK KR}[Auto    
 90     }                                             
 91     \setCJKsansfont{Noto Sans CJK KR}[AutoFake    
 92     \setCJKmonofont{Noto Sans Mono CJK KR}[Aut    
 93     % Teach xeCJK of half-width symbols           
 94     \xeCJKDeclareCharClass{HalfLeft}{`“,`‘    
 95     \xeCJKDeclareCharClass{HalfRight}{`”,`    
 96     % CJK Language-specific font choices          
 97     %% for Simplified Chinese                     
 98     \IfFontExistsTF{Noto Serif CJK SC}{           
 99         \newCJKfontfamily[SCmain]\scmain{Noto     
100         \newCJKfontfamily[SCserif]\scserif{Not    
101     }{                                            
102         \newCJKfontfamily[SCmain]\scmain{Noto     
103         \newCJKfontfamily[SCserif]\scserif{Not    
104     }                                             
105     \newCJKfontfamily[SCsans]\scsans{Noto Sans    
106     \newCJKfontfamily[SCmono]\scmono{Noto Sans    
107     %% for Traditional Chinese                    
108     \IfFontExistsTF{Noto Serif CJK TC}{           
109         \newCJKfontfamily[TCmain]\tcmain{Noto     
110         \newCJKfontfamily[TCserif]\tcserif{Not    
111     }{                                            
112         \newCJKfontfamily[TCmain]\tcmain{Noto     
113         \newCJKfontfamily[TCserif]\tcserif{Not    
114     }                                             
115     \newCJKfontfamily[TCsans]\tcsans{Noto Sans    
116     \newCJKfontfamily[TCmono]\tcmono{Noto Sans    
117     %% for Korean                                 
118     \IfFontExistsTF{Noto Serif CJK KR}{           
119         \newCJKfontfamily[KRmain]\krmain{Noto     
120         \newCJKfontfamily[KRserif]\krserif{Not    
121     }{                                            
122         \newCJKfontfamily[KRmain]\krmain{Noto     
123         \newCJKfontfamily[KRserif]\krserif{Not    
124     }                                             
125     \newCJKfontfamily[KRsans]\krsans{Noto Sans    
126     \newCJKfontfamily[KRmono]\krmono{Noto Sans    
127     %% for Japanese                               
128     \IfFontExistsTF{Noto Serif CJK JP}{           
129         \newCJKfontfamily[JPmain]\jpmain{Noto     
130         \newCJKfontfamily[JPserif]\jpserif{Not    
131     }{                                            
132         \newCJKfontfamily[JPmain]\jpmain{Noto     
133         \newCJKfontfamily[JPserif]\jpserif{Not    
134     }                                             
135     \newCJKfontfamily[JPsans]\jpsans{Noto Sans    
136     \newCJKfontfamily[JPmono]\jpmono{Noto Sans    
137     % Define custom macros to on/off CJK          
138     %% One and half spacing for CJK contents      
139     \newcommand{\kerneldocCJKon}{\makexeCJKact    
140     \newcommand{\kerneldocCJKoff}{\makexeCJKin    
141     % Define custom macros for switching CJK f    
142     %% for Simplified Chinese                     
143     \newcommand{\kerneldocBeginSC}{%              
144         \begingroup%                              
145         \scmain%                                  
146         \xeCJKDeclareCharClass{FullLeft}{`“,    
147         \xeCJKDeclareCharClass{FullRight}{`”    
148         \renewcommand{\CJKrmdefault}{SCserif}%    
149         \renewcommand{\CJKsfdefault}{SCsans}%     
150         \renewcommand{\CJKttdefault}{SCmono}%     
151         \xeCJKsetup{CJKspace = false}% gobble     
152         % For CJK ascii-art alignment             
153         \setmonofont{Noto Sans Mono CJK SC}[Au    
154     }                                             
155     \newcommand{\kerneldocEndSC}{\endgroup}       
156     %% for Traditional Chinese                    
157     \newcommand{\kerneldocBeginTC}{%              
158         \begingroup%                              
159         \tcmain%                                  
160         \xeCJKDeclareCharClass{FullLeft}{`“,    
161         \xeCJKDeclareCharClass{FullRight}{`”    
162         \renewcommand{\CJKrmdefault}{TCserif}%    
163         \renewcommand{\CJKsfdefault}{TCsans}%     
164         \renewcommand{\CJKttdefault}{TCmono}%     
165         \xeCJKsetup{CJKspace = false}% gobble     
166         % For CJK ascii-art alignment             
167         \setmonofont{Noto Sans Mono CJK TC}[Au    
168     }                                             
169     \newcommand{\kerneldocEndTC}{\endgroup}       
170     %% for Korean                                 
171     \newcommand{\kerneldocBeginKR}{%              
172         \begingroup%                              
173         \krmain%                                  
174         \renewcommand{\CJKrmdefault}{KRserif}%    
175         \renewcommand{\CJKsfdefault}{KRsans}%     
176         \renewcommand{\CJKttdefault}{KRmono}%     
177         % \xeCJKsetup{CJKspace = true} % true     
178         % For CJK ascii-art alignment (still m    
179         \setmonofont{Noto Sans Mono CJK KR}[Au    
180     }                                             
181     \newcommand{\kerneldocEndKR}{\endgroup}       
182     %% for Japanese                               
183     \newcommand{\kerneldocBeginJP}{%              
184         \begingroup%                              
185         \jpmain%                                  
186         \renewcommand{\CJKrmdefault}{JPserif}%    
187         \renewcommand{\CJKsfdefault}{JPsans}%     
188         \renewcommand{\CJKttdefault}{JPmono}%     
189         \xeCJKsetup{CJKspace = false}% gobble     
190         % For CJK ascii-art alignment             
191         \setmonofont{Noto Sans Mono CJK JP}[Au    
192     }                                             
193     \newcommand{\kerneldocEndJP}{\endgroup}       
194                                                   
195     % Single spacing in literal blocks            
196     \fvset{baselinestretch=1}                     
197     % To customize \sphinxtableofcontents         
198     \usepackage{etoolbox}                         
199     % Inactivate CJK after tableofcontents        
200     \apptocmd{\sphinxtableofcontents}{\kerneld    
201     \xeCJKsetup{CJKspace = true}% For inter-ph    
202     % Suppress extra white space at latin .. n    
203     \AtBeginEnvironment{sphinxVerbatim}{\CJKse    
204 }{ % Don't enable CJK                             
205     % Custom macros to on/off CJK and switch C    
206     \newcommand{\kerneldocCJKon}{}                
207     \newcommand{\kerneldocCJKoff}{}               
208     %% By defining \kerneldocBegin(SC|TC|KR|JP    
209     %% and ignore the argument (#1) in their d    
210     %% CJK chapters can be ignored.               
211     \newcommand{\kerneldocBeginSC}[1]{%           
212         %% Put a note on missing CJK fonts or     
213         %% zh_CN translation.                     
214         \begin{sphinxadmonition}{note}{Note on    
215             Translations of Simplified Chinese    
216             (zh\_TW), Korean (ko\_KR), and Jap    
217             due to the lack of suitable font f    
218             package.                              
219                                                   
220             If you want them, please install n    
221             font families along with the texli    
222             instructions from                     
223             \sphinxcode{./scripts/sphinx-pre-i    
224             Having optional non-variable ``Not    
225             improve the looks of those transla    
226         \end{sphinxadmonition}}                   
227     \newcommand{\kerneldocEndSC}{}                
228     \newcommand{\kerneldocBeginTC}[1]{}           
229     \newcommand{\kerneldocEndTC}{}                
230     \newcommand{\kerneldocBeginKR}[1]{}           
231     \newcommand{\kerneldocEndKR}{}                
232     \newcommand{\kerneldocBeginJP}[1]{}           
233     \newcommand{\kerneldocEndJP}{}                
234 }                                                 
                                                      

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php