1%% 2%% This is file `export.bst', 3%% generated with the docstrip utility. 4%% 5%% The original source files were: 6%% 7%% bibexport.dtx (with options: `export') 8%% 9%% (c) 2005/02/27 Nicolas Markey <markey at lsv dot ens-cachan dot fr> 10%% All rights reserved. 11%% 12%% This work may be distributed and/or modified under the conditions of 13%% the LaTeX Project Public License, either version 1.3 of this license 14%% or (at your option) any later version. The latest version of the 15%% license is in 16%% 17%% http://www.latex-project.org/lppl.txt 18%% 19%% and version 1.3 or later is part of all distributions of LaTeX 20%% version 2003/12/01 or later. 21%% 22%% \CharacterTable 23%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z 24%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z 25%% Digits \0\1\2\3\4\5\6\7\8\9 26%% Exclamation \! Double quote \" Hash (number) \# 27%% Dollar \$ Percent \% Ampersand \& 28%% Acute accent \' Left paren \( Right paren \) 29%% Asterisk \* Plus \+ Comma \, 30%% Minus \- Point \. Solidus \/ 31%% Colon \: Semicolon \; Less than \< 32%% Equals \= Greater than \> Question mark \? 33%% Commercial at \@ Left bracket \[ Backslash \\ 34%% Right bracket \] Circumflex \^ Underscore \_ 35%% Grave accent \` Left brace \{ Vertical bar \| 36%% Right brace \} Tilde \~} 37%% 38FUNCTION{left.width}{#18} 39FUNCTION{right.width}{#55} 40FUNCTION{url.right.width}{#61} 41FUNCTION{left.short.width}{#10} %% for @preamble 42FUNCTION{right.long.width}{#63} 43FUNCTION{left.delim}{"{"} 44FUNCTION{right.delim}{"}"} 45ENTRY{ 46 address 47 author 48 booktitle 49 chapter 50 edition 51 editor 52 howpublished 53 institution 54 journal 55 key 56 month 57 note 58 number 59 organization 60 pages 61 publisher 62 school 63 series 64 title 65 type 66 volume 67 year 68 abstract 69 doi 70 eid 71 isbn 72 issn 73 language 74 url 75}{}{} 76FUNCTION{not} 77{ 78 {#0} 79 {#1} 80 if$ 81} 82FUNCTION{and} 83{ 84 'skip$ 85 {pop$ #0} 86 if$ 87} 88FUNCTION{or} 89{ 90 {pop$ #1} 91 'skip$ 92 if$ 93} 94INTEGERS{left.length right.length} 95STRINGS{ s t } 96FUNCTION{space.complete} 97{ 98 'left.length := 99 duplicate$ text.length$ left.length swap$ - 100 {duplicate$ #0 >} 101 { 102 swap$ " " * swap$ #1 - 103 } 104 while$ 105 pop$ 106} 107FUNCTION{split.string} 108{ 109 'right.length := 110 duplicate$ right.length #1 + #1 substring$ "" = 111 {""} 112 { 113 's := 114 right.length 115 {duplicate$ duplicate$ s swap$ #1 substring$ " " = not and} 116 {#1 -} 117 while$ 118 duplicate$ #2 < 119 { 120 pop$ " " s * "" 121 } 122 { 123 duplicate$ s swap$ #1 swap$ substring$ 124 swap$ 125 s swap$ global.max$ substring$ 126 } 127 if$ 128 } 129 if$ 130} 131FUNCTION{split.url} 132{ 133 'right.length := 134 duplicate$ right.length #1 + #1 substring$ "" = 135 {""} 136 { 137 's := 138 right.length 139 {duplicate$ duplicate$ s swap$ #1 substring$ "/" = not and} 140 {#1 -} 141 while$ 142 duplicate$ #2 < 143 { 144 pop$ " " s * "" 145 } 146 { 147 duplicate$ s swap$ #1 swap$ substring$ 148 swap$ #1 + 149 s swap$ global.max$ substring$ 150 } 151 if$ 152 } 153 if$ 154} 155FUNCTION{split.name} 156{ 157 'right.length := 158 duplicate$ right.length #1 + #1 substring$ "" = 159 {""} 160 { 161 's := 162 right.length 163 {duplicate$ duplicate$ s swap$ #5 substring$ " and " = not and} 164 {#1 -} 165 while$ 166 duplicate$ #2 < 167 { 168 pop$ " " s * "" 169 } 170 { 171 #4 + duplicate$ s swap$ #1 swap$ substring$ 172 swap$ 173 s swap$ global.max$ substring$ 174 } 175 if$ 176 } 177 if$ 178} 179FUNCTION{field.export} 180{ 181 duplicate$ missing$ 182 'skip$ 183 { 184 left.delim swap$ * right.delim * 185 swap$ 186 " " swap$ * " = " * left.width space.complete 187 swap$ "," * 188 {duplicate$ "" = not} 189 { 190 right.width split.string 't := 191 * 192 write$ newline$ 193 "" left.width space.complete t 194 } 195 while$ 196 } 197 if$ 198 pop$ pop$ 199} 200FUNCTION{abbrv.export} 201{ 202 duplicate$ missing$ 203 'skip$ 204 { 205 swap$ 206 " " swap$ * " = " * left.width space.complete 207 swap$ "," * 208 {duplicate$ "" = not} 209 { 210 right.width split.string 't := 211 * 212 write$ newline$ 213 "" left.width space.complete t 214 } 215 while$ 216 } 217 if$ 218 pop$ pop$ 219} 220FUNCTION{name.export} 221{ 222 duplicate$ missing$ 223 'skip$ 224 { 225 left.delim swap$ * right.delim * 226 swap$ 227 " " swap$ * " = " * left.width space.complete 228 swap$ "," * 229 {duplicate$ "" = not} 230 { 231 right.width split.name 't := 232 * 233 write$ newline$ 234 "" left.width space.complete t 235 } 236 while$ 237 } 238 if$ 239 pop$ pop$ 240} 241FUNCTION{url.export} 242{ 243 duplicate$ missing$ 244 'skip$ 245 { 246 left.delim swap$ * right.delim * 247 swap$ 248 " " swap$ * " = " * left.width space.complete 249 swap$ "," * 250 {duplicate$ "" = not} 251 { 252 url.right.width split.url 't := 253 * 254 write$ newline$ 255 "" left.width space.complete t 256 } 257 while$ 258 } 259 if$ 260 pop$ pop$ 261} 262MACRO{jan}{"export-jan"} 263MACRO{feb}{"export-feb"} 264MACRO{mar}{"export-mar"} 265MACRO{apr}{"export-apr"} 266MACRO{may}{"export-may"} 267MACRO{jun}{"export-jun"} 268MACRO{jul}{"export-jul"} 269MACRO{aug}{"export-aug"} 270MACRO{sep}{"export-sep"} 271MACRO{oct}{"export-oct"} 272MACRO{nov}{"export-nov"} 273MACRO{dec}{"export-dec"} 274MACRO{acmcs}{"export-acmcs"} 275MACRO{acta}{"export-acta"} 276MACRO{cacm}{"export-cacm"} 277MACRO{ibmjrd}{"export-ibmjrd"} 278MACRO{ibmsj}{"export-ibmsj"} 279MACRO{ieeese}{"export-ieeese"} 280MACRO{ieeetc}{"export-ieeetc"} 281MACRO{ieeetcad}{"export-ieeetcad"} 282MACRO{ipl}{"export-ipl"} 283MACRO{jacm}{"export-jacm"} 284MACRO{jcss}{"export-jcss"} 285MACRO{scp}{"export-scp"} 286MACRO{sicomp}{"export-sicomp"} 287MACRO{tocs}{"export-tocs"} 288MACRO{tods}{"export-tods"} 289MACRO{tog}{"export-tog"} 290MACRO{toms}{"export-toms"} 291MACRO{toois}{"export-poois"} 292MACRO{toplas}{"export-toplas"} 293MACRO{tcs}{"export-tcs"} 294INTEGERS{ intxt } 295FUNCTION{remove.exports.from.months} 296{ 297 #0 'intxt := 298 duplicate$ missing$ 299 'skip$ 300 {'t := 301 "" 302 {t #1 #1 substring$ "" = not} 303 { 304 t #1 #7 substring$ "export-" = 305 {intxt 306 {right.delim * #0 'intxt :=} 307 'skip$ 308 if$ 309 duplicate$ "" = 310 'skip$ 311 {" # " *} 312 if$ 313 t #8 #3 substring$ * 314 t #11 global.max$ substring$ 't :=} 315 {intxt 316 'skip$ 317 {duplicate$ "" = 318 {} 319 {" # " *} 320 if$ 321 left.delim * #1 'intxt :=} 322 if$ 323 t #1 #1 substring$ * 324 t #2 global.max$ substring$ 't :=} 325 if$ 326 } 327 while$ 328 intxt 329 {right.delim *} 330 'skip$ 331 if$ 332 } 333 if$ 334} 335FUNCTION{remove.export.from.journals} 336{ 337 duplicate$ missing$ 338 'skip$ 339 { 340 duplicate$ #1 #7 substring$ "export-" = 341 {#8 global.max$ substring$} 342 {left.delim swap$ 343 right.delim * *} 344 if$ 345 } 346 if$ 347} 348FUNCTION{entry.export.standard} 349{ 350 "address" address field.export 351 "author" author name.export 352 "booktitle" booktitle field.export 353 "chapter" chapter field.export 354 "crossref" crossref field.export 355 "edition" edition field.export 356 "editor" editor name.export 357 "howpublished" howpublished field.export 358 "institution" institution field.export 359 "journal" journal remove.export.from.journals abbrv.export 360 "key" key field.export 361 "month" month remove.exports.from.months abbrv.export 362 "note" note field.export 363 "number" number field.export 364 "organization" organization field.export 365 "pages" pages field.export 366 "publisher" publisher field.export 367 "school" school field.export 368 "series" series field.export 369 "type" type field.export 370 "title" title field.export 371 "volume" volume field.export 372 "year" year field.export 373} 374FUNCTION{entry.export.extra} 375{ 376 "abstract" abstract field.export 377 "doi" doi field.export 378 "eid" eid field.export 379 "isbn" isbn field.export 380 "issn" issn field.export 381 "language" language field.export 382 "url" url url.export 383} 384FUNCTION{entry.export} 385{ 386 entry.export.standard 387 entry.export.extra 388} 389FUNCTION{export} 390{ 391 "@" type$ * "{" * cite$ * "," * write$ newline$ 392 entry.export 393 "}" write$ newline$ newline$ 394} 395FUNCTION{preamble} 396{ 397preamble$ duplicate$ "" = 398 'pop$ 399 { 400 ",-------------------." write$ newline$ 401 "| PREAMBLE |" write$ newline$ 402 "`-------------------'" write$ newline$ newline$ 403 "@preamble{ " swap$ 404 quote$ swap$ * quote$ * 405 {duplicate$ "" = not} 406 { 407 right.long.width split.string 't := 408 * 409 write$ newline$ 410 "" left.short.width space.complete t 411 } 412 while$ 413 "}" write$ newline$ newline$ 414 pop$ pop$ 415 } 416if$ 417} 418FUNCTION{header} 419{ 420newline$ 421} 422FUNCTION{entries.header} 423{ 424 ",-------------------." write$ newline$ 425 "| BIBTEX ENTRIES |" write$ newline$ 426 "`-------------------'" write$ newline$ newline$ 427} 428FUNCTION{article}{export} 429FUNCTION{book}{export} 430FUNCTION{booklet}{export} 431FUNCTION{conference}{export} 432FUNCTION{habthesis}{export} 433FUNCTION{inbook}{export} 434FUNCTION{incollection}{export} 435FUNCTION{inproceedings}{export} 436FUNCTION{journals}{export} 437FUNCTION{manual}{export} 438FUNCTION{mastersthesis}{export} 439FUNCTION{misc}{export} 440FUNCTION{phdthesis}{export} 441FUNCTION{proceedings}{export} 442FUNCTION{techreport}{export} 443FUNCTION{unpublished}{export} 444READ 445EXECUTE{header} 446EXECUTE{preamble} 447EXECUTE{entries.header} 448ITERATE{export} 449%% 450%% 451%% End of file `export.bst'. 452