tests/test-highlight.t
author Erik Zielke <ez@aragost.com>
Mon, 31 Jan 2011 13:33:41 +0100
branchstable
changeset 13322 c19b9282d3a7
parent 12943 7439ea4146f8
child 13618 b217619a6cf5
permissions -rw-r--r--
subrepo: make update -C clean the working directory for svn subrepos This makes 'hg update --clean' behave the same way for both kinds of subrepositories. Before Subversion subrepos did not take the clean parameter into account, but just updated to the given revision and merged uncommitted changes into that.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
6355
3b841c189ab7 tests: add highlight extension tests
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff changeset
     1
12445
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
     2
  $ "$TESTDIR/hghave" pygments || exit 80
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
     3
  $ cat <<EOF >> $HGRCPATH
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
     4
  > [extensions]
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
     5
  > highlight =
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
     6
  > [web]
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
     7
  > pygments_style = friendly
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
     8
  > EOF
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
     9
  $ hg init test
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    10
  $ cd test
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    11
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    12
create random Python file to exercise Pygments
6355
3b841c189ab7 tests: add highlight extension tests
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
diff changeset
    13
12445
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    14
  $ cat <<EOF > primes.py
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    15
  > #!/usr/bin/env python
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    16
  > 
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    17
  > """Fun with generators. Corresponding Haskell implementation:
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    18
  > 
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    19
  > primes = 2 : sieve [3, 5..]
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    20
  >     where sieve (p:ns) = p : sieve [n | n <- ns, mod n p /= 0]
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    21
  > """
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    22
  > 
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    23
  > from itertools import dropwhile, ifilter, islice, count, chain
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    24
  > 
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    25
  > def primes():
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    26
  >     """Generate all primes."""
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    27
  >     def sieve(ns):
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    28
  >         p = ns.next()
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    29
  >         # It is important to yield *here* in order to stop the
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    30
  >         # infinite recursion.
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    31
  >         yield p
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    32
  >         ns = ifilter(lambda n: n % p != 0, ns)
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    33
  >         for n in sieve(ns):
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    34
  >             yield n
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    35
  > 
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    36
  >     odds = ifilter(lambda i: i % 2 == 1, count())
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    37
  >     return chain([2], sieve(dropwhile(lambda n: n < 3, odds)))
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    38
  > 
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    39
  > if __name__ == "__main__":
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    40
  >     import sys
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    41
  >     try:
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    42
  >         n = int(sys.argv[1])
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    43
  >     except (ValueError, IndexError):
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    44
  >         n = 10
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    45
  >     p = primes()
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    46
  >     print "The first %d primes: %s" % (n, list(islice(p, n)))
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    47
  > EOF
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    48
  $ hg ci -Ama
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    49
  adding primes.py
8485
0b93eff3721d test-highlight: decouple test from get-with-headers.py
Martin Geisler <mg@lazybytes.net>
parents: 8083
diff changeset
    50
12445
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    51
hg serve
8485
0b93eff3721d test-highlight: decouple test from get-with-headers.py
Martin Geisler <mg@lazybytes.net>
parents: 8083
diff changeset
    52
12445
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    53
  $ hg serve -p $HGPORT -d -n test --pid-file=hg.pid -A access.log -E errors.log
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    54
  $ cat hg.pid >> $DAEMON_PIDS
8485
0b93eff3721d test-highlight: decouple test from get-with-headers.py
Martin Geisler <mg@lazybytes.net>
parents: 8083
diff changeset
    55
12445
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    56
hgweb filerevision, html
8485
0b93eff3721d test-highlight: decouple test from get-with-headers.py
Martin Geisler <mg@lazybytes.net>
parents: 8083
diff changeset
    57
12445
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    58
  $ ("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/file/tip/primes.py') \
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    59
  >     | sed "s/class=\"k\"/class=\"kn\"/g" | sed "s/class=\"mf\"/class=\"mi\"/g"
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    60
  200 Script output follows
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    61
  
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    62
  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    63
  <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    64
  <head>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    65
  <link rel="icon" href="/static/hgicon.png" type="image/png" />
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    66
  <meta name="robots" content="index, nofollow" />
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    67
  <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    68
  
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    69
  <link rel="stylesheet" href="/highlightcss" type="text/css" />
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    70
  <title>test: 853dcd4de2a6 primes.py</title>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    71
  </head>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    72
  <body>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    73
  
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    74
  <div class="container">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    75
  <div class="menu">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    76
  <div class="logo">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    77
  <a href="http://mercurial.selenic.com/">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    78
  <img src="/static/hglogo.png" alt="mercurial" /></a>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    79
  </div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    80
  <ul>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    81
  <li><a href="/shortlog/853dcd4de2a6">log</a></li>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    82
  <li><a href="/graph/853dcd4de2a6">graph</a></li>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    83
  <li><a href="/tags">tags</a></li>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    84
  <li><a href="/branches">branches</a></li>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    85
  </ul>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    86
  <ul>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    87
  <li><a href="/rev/853dcd4de2a6">changeset</a></li>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    88
  <li><a href="/file/853dcd4de2a6/">browse</a></li>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    89
  </ul>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    90
  <ul>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    91
  <li class="active">file</li>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    92
  <li><a href="/file/tip/primes.py">latest</a></li>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    93
  <li><a href="/diff/853dcd4de2a6/primes.py">diff</a></li>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    94
  <li><a href="/annotate/853dcd4de2a6/primes.py">annotate</a></li>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    95
  <li><a href="/log/853dcd4de2a6/primes.py">file log</a></li>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    96
  <li><a href="/raw-file/853dcd4de2a6/primes.py">raw</a></li>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
    97
  </ul>
12680
d664547ef540 hgweb: add help link to templates missed in ead4e21f49f1
Augie Fackler <durin42@gmail.com>
parents: 12445
diff changeset
    98
  <ul>
d664547ef540 hgweb: add help link to templates missed in ead4e21f49f1
Augie Fackler <durin42@gmail.com>
parents: 12445
diff changeset
    99
  <li><a href="/help">help</a></li>
d664547ef540 hgweb: add help link to templates missed in ead4e21f49f1
Augie Fackler <durin42@gmail.com>
parents: 12445
diff changeset
   100
  </ul>
12445
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   101
  </div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   102
  
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   103
  <div class="main">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   104
  <h2><a href="/">test</a></h2>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   105
  <h3>view primes.py @ 0:853dcd4de2a6</h3>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   106
  
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   107
  <form class="search" action="/log">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   108
  
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   109
  <p><input name="rev" id="search1" type="text" size="30" /></p>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   110
  <div id="hint">find changesets by author, revision,
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   111
  files, or words in the commit message</div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   112
  </form>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   113
  
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   114
  <div class="description">a</div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   115
  
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   116
  <table id="changesetEntry">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   117
  <tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   118
   <th class="author">author</th>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   119
   <td class="author">&#116;&#101;&#115;&#116;</td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   120
  </tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   121
  <tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   122
   <th class="date">date</th>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   123
   <td class="date">Thu Jan 01 00:00:00 1970 +0000 (1970-01-01)</td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   124
  </tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   125
  <tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   126
   <th class="author">parents</th>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   127
   <td class="author"></td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   128
  </tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   129
  <tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   130
   <th class="author">children</th>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   131
   <td class="author"></td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   132
  </tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   133
  
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   134
  </table>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   135
  
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   136
  <div class="overflow">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   137
  <div class="sourcefirst"> line source</div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   138
  
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   139
  <div class="parity0 source"><a href="#l1" id="l1">     1</a> <span class="c">#!/usr/bin/env python</span></div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   140
  <div class="parity1 source"><a href="#l2" id="l2">     2</a> </div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   141
  <div class="parity0 source"><a href="#l3" id="l3">     3</a> <span class="sd">&quot;&quot;&quot;Fun with generators. Corresponding Haskell implementation:</span></div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   142
  <div class="parity1 source"><a href="#l4" id="l4">     4</a> </div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   143
  <div class="parity0 source"><a href="#l5" id="l5">     5</a> <span class="sd">primes = 2 : sieve [3, 5..]</span></div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   144
  <div class="parity1 source"><a href="#l6" id="l6">     6</a> <span class="sd">    where sieve (p:ns) = p : sieve [n | n &lt;- ns, mod n p /= 0]</span></div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   145
  <div class="parity0 source"><a href="#l7" id="l7">     7</a> <span class="sd">&quot;&quot;&quot;</span></div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   146
  <div class="parity1 source"><a href="#l8" id="l8">     8</a> </div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   147
  <div class="parity0 source"><a href="#l9" id="l9">     9</a> <span class="kn">from</span> <span class="nn">itertools</span> <span class="kn">import</span> <span class="n">dropwhile</span><span class="p">,</span> <span class="n">ifilter</span><span class="p">,</span> <span class="n">islice</span><span class="p">,</span> <span class="n">count</span><span class="p">,</span> <span class="n">chain</span></div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   148
  <div class="parity1 source"><a href="#l10" id="l10">    10</a> </div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   149
  <div class="parity0 source"><a href="#l11" id="l11">    11</a> <span class="kn">def</span> <span class="nf">primes</span><span class="p">():</span></div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   150
  <div class="parity1 source"><a href="#l12" id="l12">    12</a>     <span class="sd">&quot;&quot;&quot;Generate all primes.&quot;&quot;&quot;</span></div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   151
  <div class="parity0 source"><a href="#l13" id="l13">    13</a>     <span class="kn">def</span> <span class="nf">sieve</span><span class="p">(</span><span class="n">ns</span><span class="p">):</span></div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   152
  <div class="parity1 source"><a href="#l14" id="l14">    14</a>         <span class="n">p</span> <span class="o">=</span> <span class="n">ns</span><span class="o">.</span><span class="n">next</span><span class="p">()</span></div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   153
  <div class="parity0 source"><a href="#l15" id="l15">    15</a>         <span class="c"># It is important to yield *here* in order to stop the</span></div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   154
  <div class="parity1 source"><a href="#l16" id="l16">    16</a>         <span class="c"># infinite recursion.</span></div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   155
  <div class="parity0 source"><a href="#l17" id="l17">    17</a>         <span class="kn">yield</span> <span class="n">p</span></div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   156
  <div class="parity1 source"><a href="#l18" id="l18">    18</a>         <span class="n">ns</span> <span class="o">=</span> <span class="n">ifilter</span><span class="p">(</span><span class="kn">lambda</span> <span class="n">n</span><span class="p">:</span> <span class="n">n</span> <span class="o">%</span> <span class="n">p</span> <span class="o">!=</span> <span class="mi">0</span><span class="p">,</span> <span class="n">ns</span><span class="p">)</span></div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   157
  <div class="parity0 source"><a href="#l19" id="l19">    19</a>         <span class="kn">for</span> <span class="n">n</span> <span class="ow">in</span> <span class="n">sieve</span><span class="p">(</span><span class="n">ns</span><span class="p">):</span></div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   158
  <div class="parity1 source"><a href="#l20" id="l20">    20</a>             <span class="kn">yield</span> <span class="n">n</span></div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   159
  <div class="parity0 source"><a href="#l21" id="l21">    21</a> </div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   160
  <div class="parity1 source"><a href="#l22" id="l22">    22</a>     <span class="n">odds</span> <span class="o">=</span> <span class="n">ifilter</span><span class="p">(</span><span class="kn">lambda</span> <span class="n">i</span><span class="p">:</span> <span class="n">i</span> <span class="o">%</span> <span class="mi">2</span> <span class="o">==</span> <span class="mi">1</span><span class="p">,</span> <span class="n">count</span><span class="p">())</span></div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   161
  <div class="parity0 source"><a href="#l23" id="l23">    23</a>     <span class="kn">return</span> <span class="n">chain</span><span class="p">([</span><span class="mi">2</span><span class="p">],</span> <span class="n">sieve</span><span class="p">(</span><span class="n">dropwhile</span><span class="p">(</span><span class="kn">lambda</span> <span class="n">n</span><span class="p">:</span> <span class="n">n</span> <span class="o">&lt;</span> <span class="mi">3</span><span class="p">,</span> <span class="n">odds</span><span class="p">)))</span></div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   162
  <div class="parity1 source"><a href="#l24" id="l24">    24</a> </div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   163
  <div class="parity0 source"><a href="#l25" id="l25">    25</a> <span class="kn">if</span> <span class="n">__name__</span> <span class="o">==</span> <span class="s">&quot;__main__&quot;</span><span class="p">:</span></div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   164
  <div class="parity1 source"><a href="#l26" id="l26">    26</a>     <span class="kn">import</span> <span class="nn">sys</span></div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   165
  <div class="parity0 source"><a href="#l27" id="l27">    27</a>     <span class="kn">try</span><span class="p">:</span></div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   166
  <div class="parity1 source"><a href="#l28" id="l28">    28</a>         <span class="n">n</span> <span class="o">=</span> <span class="nb">int</span><span class="p">(</span><span class="n">sys</span><span class="o">.</span><span class="n">argv</span><span class="p">[</span><span class="mi">1</span><span class="p">])</span></div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   167
  <div class="parity0 source"><a href="#l29" id="l29">    29</a>     <span class="kn">except</span> <span class="p">(</span><span class="ne">ValueError</span><span class="p">,</span> <span class="ne">IndexError</span><span class="p">):</span></div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   168
  <div class="parity1 source"><a href="#l30" id="l30">    30</a>         <span class="n">n</span> <span class="o">=</span> <span class="mi">10</span></div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   169
  <div class="parity0 source"><a href="#l31" id="l31">    31</a>     <span class="n">p</span> <span class="o">=</span> <span class="n">primes</span><span class="p">()</span></div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   170
  <div class="parity1 source"><a href="#l32" id="l32">    32</a>     <span class="kn">print</span> <span class="s">&quot;The first </span><span class="si">%d</span><span class="s"> primes: </span><span class="si">%s</span><span class="s">&quot;</span> <span class="o">%</span> <span class="p">(</span><span class="n">n</span><span class="p">,</span> <span class="nb">list</span><span class="p">(</span><span class="n">islice</span><span class="p">(</span><span class="n">p</span><span class="p">,</span> <span class="n">n</span><span class="p">)))</span></div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   171
  <div class="sourcelast"></div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   172
  </div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   173
  </div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   174
  </div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   175
  
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   176
  
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   177
  
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   178
  </body>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   179
  </html>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   180
  
8485
0b93eff3721d test-highlight: decouple test from get-with-headers.py
Martin Geisler <mg@lazybytes.net>
parents: 8083
diff changeset
   181
12445
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   182
hgweb fileannotate, html
6987
d09e813b21e3 highlight: only pygmentize for HTML mimetypes
Rocco Rutte <pdmef@gmx.net>
parents: 6863
diff changeset
   183
12445
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   184
  $ ("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/annotate/tip/primes.py') \
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   185
  >     | sed "s/class=\"k\"/class=\"kn\"/g" | sed "s/class=\"mi\"/class=\"mf\"/g"
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   186
  200 Script output follows
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   187
  
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   188
  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   189
  <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   190
  <head>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   191
  <link rel="icon" href="/static/hgicon.png" type="image/png" />
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   192
  <meta name="robots" content="index, nofollow" />
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   193
  <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   194
  
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   195
  <link rel="stylesheet" href="/highlightcss" type="text/css" />
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   196
  <title>test: primes.py annotate</title>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   197
  </head>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   198
  <body>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   199
  
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   200
  <div class="container">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   201
  <div class="menu">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   202
  <div class="logo">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   203
  <a href="http://mercurial.selenic.com/">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   204
  <img src="/static/hglogo.png" alt="mercurial" /></a>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   205
  </div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   206
  <ul>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   207
  <li><a href="/shortlog/853dcd4de2a6">log</a></li>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   208
  <li><a href="/graph/853dcd4de2a6">graph</a></li>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   209
  <li><a href="/tags">tags</a></li>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   210
  <li><a href="/branches">branches</a></li>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   211
  </ul>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   212
  
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   213
  <ul>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   214
  <li><a href="/rev/853dcd4de2a6">changeset</a></li>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   215
  <li><a href="/file/853dcd4de2a6/">browse</a></li>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   216
  </ul>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   217
  <ul>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   218
  <li><a href="/file/853dcd4de2a6/primes.py">file</a></li>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   219
  <li><a href="/file/tip/primes.py">latest</a></li>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   220
  <li><a href="/diff/853dcd4de2a6/primes.py">diff</a></li>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   221
  <li class="active">annotate</li>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   222
  <li><a href="/log/853dcd4de2a6/primes.py">file log</a></li>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   223
  <li><a href="/raw-annotate/853dcd4de2a6/primes.py">raw</a></li>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   224
  </ul>
12680
d664547ef540 hgweb: add help link to templates missed in ead4e21f49f1
Augie Fackler <durin42@gmail.com>
parents: 12445
diff changeset
   225
  <ul>
d664547ef540 hgweb: add help link to templates missed in ead4e21f49f1
Augie Fackler <durin42@gmail.com>
parents: 12445
diff changeset
   226
  <li><a href="/help">help</a></li>
d664547ef540 hgweb: add help link to templates missed in ead4e21f49f1
Augie Fackler <durin42@gmail.com>
parents: 12445
diff changeset
   227
  </ul>
12445
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   228
  </div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   229
  
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   230
  <div class="main">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   231
  <h2><a href="/">test</a></h2>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   232
  <h3>annotate primes.py @ 0:853dcd4de2a6</h3>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   233
  
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   234
  <form class="search" action="/log">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   235
  
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   236
  <p><input name="rev" id="search1" type="text" size="30" /></p>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   237
  <div id="hint">find changesets by author, revision,
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   238
  files, or words in the commit message</div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   239
  </form>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   240
  
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   241
  <div class="description">a</div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   242
  
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   243
  <table id="changesetEntry">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   244
  <tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   245
   <th class="author">author</th>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   246
   <td class="author">&#116;&#101;&#115;&#116;</td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   247
  </tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   248
  <tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   249
   <th class="date">date</th>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   250
   <td class="date">Thu Jan 01 00:00:00 1970 +0000 (1970-01-01)</td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   251
  </tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   252
  <tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   253
   <th class="author">parents</th>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   254
   <td class="author"></td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   255
  </tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   256
  <tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   257
   <th class="author">children</th>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   258
   <td class="author"></td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   259
  </tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   260
  
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   261
  </table>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   262
  
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   263
  <div class="overflow">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   264
  <table class="bigtable">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   265
  <tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   266
   <th class="annotate">rev</th>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   267
   <th class="line">&nbsp;&nbsp;line source</th>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   268
  </tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   269
  
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   270
  <tr class="parity0">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   271
  <td class="annotate">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   272
  <a href="/annotate/853dcd4de2a6/primes.py#1"
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   273
  title="853dcd4de2a6: a">test@0</a>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   274
  </td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   275
  <td class="source"><a href="#l1" id="l1">     1</a> <span class="c">#!/usr/bin/env python</span></td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   276
  </tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   277
  <tr class="parity1">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   278
  <td class="annotate">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   279
  <a href="/annotate/853dcd4de2a6/primes.py#2"
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   280
  title="853dcd4de2a6: a">test@0</a>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   281
  </td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   282
  <td class="source"><a href="#l2" id="l2">     2</a> </td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   283
  </tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   284
  <tr class="parity0">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   285
  <td class="annotate">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   286
  <a href="/annotate/853dcd4de2a6/primes.py#3"
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   287
  title="853dcd4de2a6: a">test@0</a>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   288
  </td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   289
  <td class="source"><a href="#l3" id="l3">     3</a> <span class="sd">&quot;&quot;&quot;Fun with generators. Corresponding Haskell implementation:</span></td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   290
  </tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   291
  <tr class="parity1">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   292
  <td class="annotate">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   293
  <a href="/annotate/853dcd4de2a6/primes.py#4"
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   294
  title="853dcd4de2a6: a">test@0</a>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   295
  </td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   296
  <td class="source"><a href="#l4" id="l4">     4</a> </td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   297
  </tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   298
  <tr class="parity0">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   299
  <td class="annotate">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   300
  <a href="/annotate/853dcd4de2a6/primes.py#5"
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   301
  title="853dcd4de2a6: a">test@0</a>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   302
  </td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   303
  <td class="source"><a href="#l5" id="l5">     5</a> <span class="sd">primes = 2 : sieve [3, 5..]</span></td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   304
  </tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   305
  <tr class="parity1">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   306
  <td class="annotate">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   307
  <a href="/annotate/853dcd4de2a6/primes.py#6"
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   308
  title="853dcd4de2a6: a">test@0</a>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   309
  </td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   310
  <td class="source"><a href="#l6" id="l6">     6</a> <span class="sd">    where sieve (p:ns) = p : sieve [n | n &lt;- ns, mod n p /= 0]</span></td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   311
  </tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   312
  <tr class="parity0">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   313
  <td class="annotate">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   314
  <a href="/annotate/853dcd4de2a6/primes.py#7"
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   315
  title="853dcd4de2a6: a">test@0</a>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   316
  </td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   317
  <td class="source"><a href="#l7" id="l7">     7</a> <span class="sd">&quot;&quot;&quot;</span></td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   318
  </tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   319
  <tr class="parity1">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   320
  <td class="annotate">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   321
  <a href="/annotate/853dcd4de2a6/primes.py#8"
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   322
  title="853dcd4de2a6: a">test@0</a>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   323
  </td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   324
  <td class="source"><a href="#l8" id="l8">     8</a> </td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   325
  </tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   326
  <tr class="parity0">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   327
  <td class="annotate">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   328
  <a href="/annotate/853dcd4de2a6/primes.py#9"
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   329
  title="853dcd4de2a6: a">test@0</a>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   330
  </td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   331
  <td class="source"><a href="#l9" id="l9">     9</a> <span class="kn">from</span> <span class="nn">itertools</span> <span class="kn">import</span> <span class="n">dropwhile</span><span class="p">,</span> <span class="n">ifilter</span><span class="p">,</span> <span class="n">islice</span><span class="p">,</span> <span class="n">count</span><span class="p">,</span> <span class="n">chain</span></td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   332
  </tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   333
  <tr class="parity1">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   334
  <td class="annotate">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   335
  <a href="/annotate/853dcd4de2a6/primes.py#10"
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   336
  title="853dcd4de2a6: a">test@0</a>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   337
  </td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   338
  <td class="source"><a href="#l10" id="l10">    10</a> </td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   339
  </tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   340
  <tr class="parity0">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   341
  <td class="annotate">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   342
  <a href="/annotate/853dcd4de2a6/primes.py#11"
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   343
  title="853dcd4de2a6: a">test@0</a>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   344
  </td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   345
  <td class="source"><a href="#l11" id="l11">    11</a> <span class="kn">def</span> <span class="nf">primes</span><span class="p">():</span></td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   346
  </tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   347
  <tr class="parity1">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   348
  <td class="annotate">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   349
  <a href="/annotate/853dcd4de2a6/primes.py#12"
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   350
  title="853dcd4de2a6: a">test@0</a>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   351
  </td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   352
  <td class="source"><a href="#l12" id="l12">    12</a>     <span class="sd">&quot;&quot;&quot;Generate all primes.&quot;&quot;&quot;</span></td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   353
  </tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   354
  <tr class="parity0">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   355
  <td class="annotate">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   356
  <a href="/annotate/853dcd4de2a6/primes.py#13"
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   357
  title="853dcd4de2a6: a">test@0</a>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   358
  </td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   359
  <td class="source"><a href="#l13" id="l13">    13</a>     <span class="kn">def</span> <span class="nf">sieve</span><span class="p">(</span><span class="n">ns</span><span class="p">):</span></td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   360
  </tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   361
  <tr class="parity1">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   362
  <td class="annotate">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   363
  <a href="/annotate/853dcd4de2a6/primes.py#14"
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   364
  title="853dcd4de2a6: a">test@0</a>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   365
  </td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   366
  <td class="source"><a href="#l14" id="l14">    14</a>         <span class="n">p</span> <span class="o">=</span> <span class="n">ns</span><span class="o">.</span><span class="n">next</span><span class="p">()</span></td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   367
  </tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   368
  <tr class="parity0">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   369
  <td class="annotate">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   370
  <a href="/annotate/853dcd4de2a6/primes.py#15"
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   371
  title="853dcd4de2a6: a">test@0</a>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   372
  </td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   373
  <td class="source"><a href="#l15" id="l15">    15</a>         <span class="c"># It is important to yield *here* in order to stop the</span></td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   374
  </tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   375
  <tr class="parity1">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   376
  <td class="annotate">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   377
  <a href="/annotate/853dcd4de2a6/primes.py#16"
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   378
  title="853dcd4de2a6: a">test@0</a>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   379
  </td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   380
  <td class="source"><a href="#l16" id="l16">    16</a>         <span class="c"># infinite recursion.</span></td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   381
  </tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   382
  <tr class="parity0">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   383
  <td class="annotate">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   384
  <a href="/annotate/853dcd4de2a6/primes.py#17"
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   385
  title="853dcd4de2a6: a">test@0</a>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   386
  </td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   387
  <td class="source"><a href="#l17" id="l17">    17</a>         <span class="kn">yield</span> <span class="n">p</span></td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   388
  </tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   389
  <tr class="parity1">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   390
  <td class="annotate">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   391
  <a href="/annotate/853dcd4de2a6/primes.py#18"
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   392
  title="853dcd4de2a6: a">test@0</a>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   393
  </td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   394
  <td class="source"><a href="#l18" id="l18">    18</a>         <span class="n">ns</span> <span class="o">=</span> <span class="n">ifilter</span><span class="p">(</span><span class="kn">lambda</span> <span class="n">n</span><span class="p">:</span> <span class="n">n</span> <span class="o">%</span> <span class="n">p</span> <span class="o">!=</span> <span class="mf">0</span><span class="p">,</span> <span class="n">ns</span><span class="p">)</span></td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   395
  </tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   396
  <tr class="parity0">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   397
  <td class="annotate">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   398
  <a href="/annotate/853dcd4de2a6/primes.py#19"
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   399
  title="853dcd4de2a6: a">test@0</a>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   400
  </td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   401
  <td class="source"><a href="#l19" id="l19">    19</a>         <span class="kn">for</span> <span class="n">n</span> <span class="ow">in</span> <span class="n">sieve</span><span class="p">(</span><span class="n">ns</span><span class="p">):</span></td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   402
  </tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   403
  <tr class="parity1">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   404
  <td class="annotate">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   405
  <a href="/annotate/853dcd4de2a6/primes.py#20"
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   406
  title="853dcd4de2a6: a">test@0</a>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   407
  </td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   408
  <td class="source"><a href="#l20" id="l20">    20</a>             <span class="kn">yield</span> <span class="n">n</span></td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   409
  </tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   410
  <tr class="parity0">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   411
  <td class="annotate">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   412
  <a href="/annotate/853dcd4de2a6/primes.py#21"
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   413
  title="853dcd4de2a6: a">test@0</a>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   414
  </td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   415
  <td class="source"><a href="#l21" id="l21">    21</a> </td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   416
  </tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   417
  <tr class="parity1">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   418
  <td class="annotate">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   419
  <a href="/annotate/853dcd4de2a6/primes.py#22"
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   420
  title="853dcd4de2a6: a">test@0</a>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   421
  </td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   422
  <td class="source"><a href="#l22" id="l22">    22</a>     <span class="n">odds</span> <span class="o">=</span> <span class="n">ifilter</span><span class="p">(</span><span class="kn">lambda</span> <span class="n">i</span><span class="p">:</span> <span class="n">i</span> <span class="o">%</span> <span class="mf">2</span> <span class="o">==</span> <span class="mf">1</span><span class="p">,</span> <span class="n">count</span><span class="p">())</span></td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   423
  </tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   424
  <tr class="parity0">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   425
  <td class="annotate">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   426
  <a href="/annotate/853dcd4de2a6/primes.py#23"
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   427
  title="853dcd4de2a6: a">test@0</a>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   428
  </td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   429
  <td class="source"><a href="#l23" id="l23">    23</a>     <span class="kn">return</span> <span class="n">chain</span><span class="p">([</span><span class="mf">2</span><span class="p">],</span> <span class="n">sieve</span><span class="p">(</span><span class="n">dropwhile</span><span class="p">(</span><span class="kn">lambda</span> <span class="n">n</span><span class="p">:</span> <span class="n">n</span> <span class="o">&lt;</span> <span class="mf">3</span><span class="p">,</span> <span class="n">odds</span><span class="p">)))</span></td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   430
  </tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   431
  <tr class="parity1">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   432
  <td class="annotate">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   433
  <a href="/annotate/853dcd4de2a6/primes.py#24"
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   434
  title="853dcd4de2a6: a">test@0</a>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   435
  </td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   436
  <td class="source"><a href="#l24" id="l24">    24</a> </td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   437
  </tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   438
  <tr class="parity0">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   439
  <td class="annotate">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   440
  <a href="/annotate/853dcd4de2a6/primes.py#25"
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   441
  title="853dcd4de2a6: a">test@0</a>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   442
  </td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   443
  <td class="source"><a href="#l25" id="l25">    25</a> <span class="kn">if</span> <span class="n">__name__</span> <span class="o">==</span> <span class="s">&quot;__main__&quot;</span><span class="p">:</span></td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   444
  </tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   445
  <tr class="parity1">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   446
  <td class="annotate">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   447
  <a href="/annotate/853dcd4de2a6/primes.py#26"
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   448
  title="853dcd4de2a6: a">test@0</a>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   449
  </td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   450
  <td class="source"><a href="#l26" id="l26">    26</a>     <span class="kn">import</span> <span class="nn">sys</span></td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   451
  </tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   452
  <tr class="parity0">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   453
  <td class="annotate">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   454
  <a href="/annotate/853dcd4de2a6/primes.py#27"
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   455
  title="853dcd4de2a6: a">test@0</a>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   456
  </td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   457
  <td class="source"><a href="#l27" id="l27">    27</a>     <span class="kn">try</span><span class="p">:</span></td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   458
  </tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   459
  <tr class="parity1">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   460
  <td class="annotate">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   461
  <a href="/annotate/853dcd4de2a6/primes.py#28"
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   462
  title="853dcd4de2a6: a">test@0</a>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   463
  </td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   464
  <td class="source"><a href="#l28" id="l28">    28</a>         <span class="n">n</span> <span class="o">=</span> <span class="nb">int</span><span class="p">(</span><span class="n">sys</span><span class="o">.</span><span class="n">argv</span><span class="p">[</span><span class="mf">1</span><span class="p">])</span></td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   465
  </tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   466
  <tr class="parity0">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   467
  <td class="annotate">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   468
  <a href="/annotate/853dcd4de2a6/primes.py#29"
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   469
  title="853dcd4de2a6: a">test@0</a>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   470
  </td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   471
  <td class="source"><a href="#l29" id="l29">    29</a>     <span class="kn">except</span> <span class="p">(</span><span class="ne">ValueError</span><span class="p">,</span> <span class="ne">IndexError</span><span class="p">):</span></td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   472
  </tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   473
  <tr class="parity1">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   474
  <td class="annotate">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   475
  <a href="/annotate/853dcd4de2a6/primes.py#30"
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   476
  title="853dcd4de2a6: a">test@0</a>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   477
  </td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   478
  <td class="source"><a href="#l30" id="l30">    30</a>         <span class="n">n</span> <span class="o">=</span> <span class="mf">10</span></td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   479
  </tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   480
  <tr class="parity0">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   481
  <td class="annotate">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   482
  <a href="/annotate/853dcd4de2a6/primes.py#31"
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   483
  title="853dcd4de2a6: a">test@0</a>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   484
  </td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   485
  <td class="source"><a href="#l31" id="l31">    31</a>     <span class="n">p</span> <span class="o">=</span> <span class="n">primes</span><span class="p">()</span></td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   486
  </tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   487
  <tr class="parity1">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   488
  <td class="annotate">
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   489
  <a href="/annotate/853dcd4de2a6/primes.py#32"
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   490
  title="853dcd4de2a6: a">test@0</a>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   491
  </td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   492
  <td class="source"><a href="#l32" id="l32">    32</a>     <span class="kn">print</span> <span class="s">&quot;The first </span><span class="si">%d</span><span class="s"> primes: </span><span class="si">%s</span><span class="s">&quot;</span> <span class="o">%</span> <span class="p">(</span><span class="n">n</span><span class="p">,</span> <span class="nb">list</span><span class="p">(</span><span class="n">islice</span><span class="p">(</span><span class="n">p</span><span class="p">,</span> <span class="n">n</span><span class="p">)))</span></td>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   493
  </tr>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   494
  </table>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   495
  </div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   496
  </div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   497
  </div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   498
  
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   499
  
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   500
  
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   501
  </body>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   502
  </html>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   503
  
6485
938319418d8c highlight: Generate pygments style sheet dynamically
Isaac Jurado <diptongo@gmail.com>
parents: 6355
diff changeset
   504
12445
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   505
hgweb fileannotate, raw
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   506
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   507
  $ ("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/annotate/tip/primes.py?style=raw') \
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   508
  >     | sed "s/test@//" > a
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   509
  $ echo "200 Script output follows" > b
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   510
  $ echo "" >> b
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   511
  $ echo "" >> b
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   512
  $ hg annotate "primes.py" >> b
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   513
  $ echo "" >> b
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   514
  $ echo "" >> b
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   515
  $ echo "" >> b
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   516
  $ echo "" >> b
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   517
  $ diff -u b a
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   518
  $ echo
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   519
  
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   520
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   521
hgweb filerevision, raw
6485
938319418d8c highlight: Generate pygments style sheet dynamically
Isaac Jurado <diptongo@gmail.com>
parents: 6355
diff changeset
   522
12445
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   523
  $ ("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/file/tip/primes.py?style=raw') \
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   524
  >     > a
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   525
  $ echo "200 Script output follows" > b
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   526
  $ echo "" >> b
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   527
  $ hg cat primes.py >> b
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   528
  $ diff -u b a
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   529
  $ echo
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   530
  
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   531
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   532
hgweb highlightcss friendly
6485
938319418d8c highlight: Generate pygments style sheet dynamically
Isaac Jurado <diptongo@gmail.com>
parents: 6355
diff changeset
   533
12445
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   534
  $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT '/highlightcss' > out
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   535
  $ head -n 4 out
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   536
  200 Script output follows
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   537
  
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   538
  /* pygments_style = friendly */
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   539
  
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   540
  $ rm out
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   541
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   542
errors encountered
6485
938319418d8c highlight: Generate pygments style sheet dynamically
Isaac Jurado <diptongo@gmail.com>
parents: 6355
diff changeset
   543
12445
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   544
  $ cat errors.log
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   545
  $ "$TESTDIR/killdaemons.py"
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   546
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   547
Change the pygments style
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   548
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   549
  $ cat > .hg/hgrc <<EOF
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   550
  > [web]
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   551
  > pygments_style = fruity
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   552
  > EOF
9424
799373ff2554 highlight: fixes garbled text in non-UTF-8 environment
Yuya Nishihara <yuya@tcha.org>
parents: 8485
diff changeset
   553
12445
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   554
hg serve again
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   555
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   556
  $ hg serve -p $HGPORT -d -n test --pid-file=hg.pid -A access.log -E errors.log
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   557
  $ cat hg.pid >> $DAEMON_PIDS
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   558
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   559
hgweb highlightcss fruity
9424
799373ff2554 highlight: fixes garbled text in non-UTF-8 environment
Yuya Nishihara <yuya@tcha.org>
parents: 8485
diff changeset
   560
12445
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   561
  $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT '/highlightcss' > out
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   562
  $ head -n 4 out
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   563
  200 Script output follows
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   564
  
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   565
  /* pygments_style = fruity */
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   566
  
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   567
  $ rm out
9424
799373ff2554 highlight: fixes garbled text in non-UTF-8 environment
Yuya Nishihara <yuya@tcha.org>
parents: 8485
diff changeset
   568
12445
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   569
errors encountered
9424
799373ff2554 highlight: fixes garbled text in non-UTF-8 environment
Yuya Nishihara <yuya@tcha.org>
parents: 8485
diff changeset
   570
12445
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   571
  $ cat errors.log
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   572
  $ cd ..
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   573
  $ hg init eucjp
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   574
  $ cd eucjp
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   575
  $ python -c 'print("\265\376")' >> eucjp.txt  # Japanese kanji "Kyo"
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   576
  $ hg ci -Ama
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   577
  adding eucjp.txt
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   578
  $ hgserveget () {
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   579
  >     "$TESTDIR/killdaemons.py"
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   580
  >     echo % HGENCODING="$1" hg serve
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   581
  >     HGENCODING="$1" hg serve -p $HGPORT -d -n test --pid-file=hg.pid -E errors.log
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   582
  >     cat hg.pid >> $DAEMON_PIDS
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   583
  > 
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   584
  >     echo % hgweb filerevision, html
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   585
  >     "$TESTDIR/get-with-headers.py" localhost:$HGPORT "/file/tip/$2" \
12943
7439ea4146f8 tests: use (esc) instead of other kinds of string escaping
Mads Kiilerich <mads@kiilerich.com>
parents: 12680
diff changeset
   586
  >         | grep '<div class="parity0 source">'
12445
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   587
  >     echo % errors encountered
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   588
  >     cat errors.log
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   589
  > }
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   590
  $ hgserveget euc-jp eucjp.txt
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   591
  % HGENCODING=euc-jp hg serve
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   592
  % hgweb filerevision, html
12943
7439ea4146f8 tests: use (esc) instead of other kinds of string escaping
Mads Kiilerich <mads@kiilerich.com>
parents: 12680
diff changeset
   593
  <div class="parity0 source"><a href="#l1" id="l1">     1</a> \xb5\xfe</div> (esc)
12445
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   594
  % errors encountered
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   595
  $ hgserveget utf-8 eucjp.txt
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   596
  % HGENCODING=utf-8 hg serve
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   597
  % hgweb filerevision, html
12943
7439ea4146f8 tests: use (esc) instead of other kinds of string escaping
Mads Kiilerich <mads@kiilerich.com>
parents: 12680
diff changeset
   598
  <div class="parity0 source"><a href="#l1" id="l1">     1</a> \xef\xbf\xbd\xef\xbf\xbd</div> (esc)
12445
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   599
  % errors encountered
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   600
  $ hgserveget us-ascii eucjp.txt
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   601
  % HGENCODING=us-ascii hg serve
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   602
  % hgweb filerevision, html
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   603
  <div class="parity0 source"><a href="#l1" id="l1">     1</a> ??</div>
981ce49a243f tests: unify test-highlight
Matt Mackall <mpm@selenic.com>
parents: 10257
diff changeset
   604
  % errors encountered