File: jwebfrob.pl

package info (click to toggle)
boost1.35 1.35.0-5
  • links: PTS
  • area: main
  • in suites: lenny
  • size: 203,856 kB
  • ctags: 337,867
  • sloc: cpp: 938,683; xml: 56,847; ansic: 41,589; python: 18,999; sh: 11,566; makefile: 664; perl: 494; yacc: 456; asm: 353; csh: 6
file content (77 lines) | stat: -rw-r--r-- 2,053 bytes parent folder | download | duplicates (7)
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
# Copyright (c) 2002 Trustees of Indiana University
#
# Distributed under the Boost Software License, Version 1.0.
# (See accompanying file LICENSE_1_0.txt or copy at
# http://www.boost.org/LICENSE_1_0.txt)


$lastpage = 0;
$thispage = 1;
$counter =  1;
$alphabet = "\@abcdefghijklmnopqrstuvwxyz";
$Alphabet = "\@ABCDEFGHIJKLMNOPQRSTUVWXYZ";
$out = "";
$saved_full = "";
$saved_empty = "";

while(<>) {

# These changes are so that it works when we aren't using hyperref

#  if (/(\\newlabel.*\{\{)([0-9]+)(\}\{)([0-9ivx]+)(\}.*JWebCtr\.)([0-9]+)(.*)/) {
  if (/\\newlabel\{sec:.*/) {
    # make sure not to munge normal (non jweb part) section labels
    print ;
  } elsif (/\\newlabel\{class:.*/) {
    # make sure not to munge normal (non jweb part) class labels
    print ;
  } elsif (/\\newlabel\{tab:.*/) {
    # make sure not to munge normal (non jweb part) table labels
    print ;
  } elsif (/\\newlabel\{concept:.*/) {
    # make sure not to munge normal (non jweb part) concept labels
    print ;
  } elsif (/\\newlabel\{fig:.*/) {
    # make sure not to munge normal (non jweb part) class labels
    print ;
  } elsif (/(\\newlabel.*\{\{)([0-9\.]+)(\}\{)([0-9ivx]+)(\}.*)(.*)/) {
    $thispage = $4;

    if ($thispage ne $lastpage) {
      
      $counter = 1;

      print $saved_empty;

#      $saved_full = "$1".substr($alphabet,$counter,1)."$3$4$5$6$7\n";
#      $saved_empty = "$1"."$3$4$5$6$7\n";
      $saved_full = "$1".substr($alphabet,$counter,1)."$3$4$5\n";
      $saved_empty = "$1"."$3$4$5\n";

    } else {
      print $saved_full;
#      print "$1".substr($alphabet,$counter,1)."$3$4$5$counter$7\n";
      print "$1".substr($alphabet,$counter,1)."$3$4$5\n";
      $saved_full = "";
      $saved_empty = "";
    }

    $lastpage = $thispage;
    $counter++;

  } else {
    print ;
  }
}
print $saved_empty;



# get a line
# cases
# - ref
#   - if it is first, save off someplace
#     - if there is a first saved, dump the empty version
#   - else
#     - if there is a first saved, dump the non empty version
# - not a ref