Commit Graph

126 Commits

Author SHA1 Message Date
Dirkjan Ochtman
43d9564cff some modernization cleanups, forward compatibility 2009-05-13 14:08:39 +02:00
Dirkjan Ochtman
6f7f8e3dec templater: make the templating engine pluggable to some extent 2009-05-12 12:05:19 +02:00
Dirkjan Ochtman
5c6c43b746 templater: provide the standard template filters by default 2009-05-12 12:04:05 +02:00
Simon Heimberg
09ac1e6c92 separate import lines from mercurial and general python modules 2009-04-28 17:40:46 +02:00
Martin Geisler
750183bdad updated license to be explicit about GPL version 2 2009-04-26 01:08:54 +02:00
Dirkjan Ochtman
6bfc24b2af templater: fix little problem from stylemap() changes 2009-04-27 16:26:31 +02:00
Dirkjan Ochtman
388d357896 templater: separate template management and actual string processing 2009-04-06 15:09:54 +02:00
Matt Mackall
86dab18ddb config: getsource -> source 2009-04-26 16:50:43 -05:00
Matt Mackall
581beec905 templater: use new config parser
This gives us the ability to use includes and continuations
2009-04-26 16:50:43 -05:00
Dirkjan Ochtman
23935afdfe templatefilters: strings are iterators, but shouldn't be joined anyway 2009-04-06 16:26:57 +02:00
Dirkjan Ochtman
0b1a57839b templater: move stylemap function from hgweb to templater 2009-04-04 17:46:11 +02:00
Dirkjan Ochtman
d963dd0023 kill some trailing spaces 2008-11-27 16:07:13 +01:00
Brendan Cully
f4cee1477f templater: return data in increasing chunk sizes
Currently hgweb is not streaming its output -- it accumulates the
entire response before sending it. This patch restores streaming
behaviour. To avoid having to synchronously write many tiny fragments,
this patch also adds buffering to the template generator. Local
testing of a fetch of a 100,000 line file with wget produces a slight
slowdown overall (up from 6.5 seconds to 7.2 seconds), but instead of
waiting 6 seconds for headers to arrive, output begins immediately.
2008-11-21 15:51:40 -08:00
Brendan Cully
34868ca5be Allow hgweb to search for templates in more than one path.
This patch is constructed to make it easy for external extensions to
provide their own templates, by updating templater.path.
2008-10-17 11:34:31 -07:00
Dirkjan Ochtman
b79ad5315b templater: make a template a string-only iterator 2008-06-29 13:16:25 +02:00
Matt Mackall
1cca88367c hgweb: minor improvements for new web style
- make renamelink take a context
- pass current node to shortlog page rather than tip
- pass user/desc/date/rename to filediff
- improve template error reporting for foo%bar
2008-03-31 21:49:33 -05:00
Dirkjan Ochtman
c9f3b5991c give better error message on non-existent mapfile (issue813) 2008-03-21 12:05:01 +01:00
Matt Mackall
41e5c79455 templates: move filters to their own module
This eliminates just about all Mercurial dependencies in templater.py
2008-01-31 14:44:19 -06:00
Matt Mackall
a849fab9e4 templater: move email function to util 2008-01-31 14:44:19 -06:00
Matt Mackall
7b0d46c8cd templater: remove node import 2008-01-31 14:44:19 -06:00
Christian Ebert
5c18a69d2e Prefer i in d over d.has_key(i) 2008-01-20 14:39:25 +01:00
Robert Bachmann
ecb337b8cb Added support for the Atom syndication format 2007-08-30 16:42:17 +02:00
Alexis S. L. Carvalho
f9b8c79d22 hgweb: use lrwxrwxrwx as the permissions of a symlink 2007-07-03 03:06:40 -03:00
Matt Mackall
e293a4cd6d Merge with stable 2007-04-10 14:05:15 -05:00
TK Soh
424b1a050d minor typo fix in templater's docstring 2007-04-10 12:24:28 -05:00
Alexis S. L. Carvalho
d725a42fd8 merge with crew-stable 2006-12-16 02:51:16 -02:00
Alexis S. L. Carvalho
2726e242c0 templater.py: fix obfuscate 2006-12-16 02:21:46 -02:00
Matt Mackall
296d6a7cb8 Simplify i18n imports 2006-12-14 20:25:19 -06:00
Matt Mackall
f17a4e1934 Replace demandload with new demandimport 2006-12-13 13:27:09 -06:00
Matt Mackall
2fe74d8035 further simplify stringify 2006-11-15 15:51:58 -06:00
Matt Mackall
c50c09da0a templates: move changeset templating bits to cmdutils 2006-11-13 13:26:57 -06:00
Matt Mackall
6950309cf6 templater: changeset templater reorganization and optimizations 2006-11-13 13:26:57 -06:00
Matt Mackall
e0d8e4b198 templater: speed up changeset writes and stringify 2006-11-13 13:26:57 -06:00
Matt Mackall
9d8ded34e9 changeset_templater: remove changes arg 2006-11-13 13:26:57 -06:00
Matt Mackall
5c95b0e092 templater: simplify parsestring 2006-11-13 13:26:57 -06:00
Matt Mackall
c517977e84 template: fold template() into __call__, minor optimizations
- use non-grouping operator to avoid some extra processing
- avoid copying and updating defaults
- unnest main template body
- avoid returning extra empty string if format
2006-11-13 13:26:57 -06:00
Matt Mackall
6fe92f16bb templater: simplify cache and remove filter argument in __call__ 2006-11-13 13:26:57 -06:00
Matt Mackall
1b0a187e45 templater: simplify template function 2006-11-13 13:26:57 -06:00
Matt Mackall
aceb3199d6 templater: take cStringIO out of indent 2006-11-13 13:26:57 -06:00
Matt Mackall
3c62f52384 templater: remove cStringIO from stringify 2006-11-13 13:26:57 -06:00
Matt Mackall
00715e3a82 templater: remove cStringIO for fill 2006-11-13 13:26:57 -06:00
Matt Mackall
4fe7850499 templater: use str.decode in parse_string 2006-11-13 13:26:57 -06:00
Thomas Arendsen Hein
a67b9554ca Added extra changeset info to templater and map-cmdline.default. 2006-10-18 18:09:32 +02:00
Thomas Arendsen Hein
affb901953 Add new branch info to templater and use it in map-cmdline.default.
The template currently shows old (hg log -b style) branch tags, too,
but not in the same way as the built in changeset_printer.
2006-10-18 17:58:51 +02:00
Thomas Arendsen Hein
9e595ef83b templater: Better exception for errors in foo%bar formatting. 2006-10-11 20:53:02 +02:00
Brendan Cully
b5fb63f535 Templater expects an iterable copies variable (fixes notify). 2006-09-29 18:17:29 -07:00
Brendan Cully
d1c28696d4 Show copies in hg log.
The format is:
copies: destination (source)...
2006-09-29 13:01:19 -07:00
Vadim Gelfer
80d6f2f7c7 remove localrepository.changes.
use localrepository.status instead.
2006-08-12 16:40:12 -07:00
Brendan Cully
86244f1a64 Preserve multibyte UTF-8 characters when obfuscating.
This version uses the unicode 'replace' option, so non-UTF-8
encodings will still be mangled. Luckily, there aren't any
of those.
2006-07-21 02:36:17 +02:00
Brendan Cully
40833b0f4d templater.firstline should handle empty strings 2006-07-04 15:36:05 -07:00
Thomas Arendsen Hein
693aaef4a8 Merged WSGI fixes from http://hg.omnifarious.org/~hopper/webmerc/ 2006-06-30 21:36:45 +02:00
Benoit Boissinot
e2896f54f1 add a new template function 'hgdate'
'hgdate' turns a date into a cset timestamp as printed by 'hg export'
2006-06-30 10:15:18 +02:00
Eric Hopper
cbbc59972c Arrange for old copies of CGI scripts to still work. 2006-06-29 19:06:18 -07:00
Vadim Gelfer
9a0c813fdc use demandload more. 2006-06-20 23:58:21 -07:00
Vadim Gelfer
9a2b3a6303 make templater.stringio a tiny bit more use. 2006-05-04 14:45:57 -07:00
Vadim Gelfer
c40534f466 move stringio class from bugzilla extension into templater module. 2006-05-04 12:02:32 -07:00
Vadim Gelfer
b30de1431a make templater bit more flexible and efficient for external users. 2006-05-03 14:35:17 -07:00
Vadim Gelfer
f6f81d8d37 move changeset_templater into templater module. 2006-05-03 10:25:28 -07:00
Lee Cantey
da54525c97 Windows py2exe version didn't handle names given to templatepath() correctly 2006-03-24 10:33:18 -08:00
Vadim Gelfer
2e0f1be283 add changelog style to command line template.
to use, "hg log --style=changelog".  makes different output with no
flags, -q, -v, --debug.

templater module has new template filters for this.
email - committer email address
fill68 - refill text to 68 colums
fill76 - refill text to 76 colums
tabindent - prefix every not empty line with tab
shortdate - iso 8631 date, no time zone
stringify - turn template iterator into string
2006-03-21 23:29:21 -08:00
Shun-ichi Goto
9730814eb2 Duplicate cache when creating templater. 2006-03-18 09:51:25 -08:00
Vadim Gelfer
d737c6c2b3 fix template bug that made hgweb break.
problem found by Shun-ichi Goto <shunichi.goto@gmail.com>.
this fix tested with command template and hgweb templates.
2006-03-15 11:28:00 -08:00
Shun-ichi GOTO
e268844d18 Fix the py2exe template path problem (issue:152) again.
This patch is same with 1834:d15fc6ce9d87 which is leaved behind by
1897:d8f0b3f8f638.
2006-03-15 06:39:04 +01:00
Vadim Gelfer
49cb97855a make --style=compact look for map-cmdline.compact.
change name of key in map file from changelog to changeset.
rename command map files to start with map-cmdline.
rename ui.logmap to ui.style in hgrc.

now --style=foo does this:
tries to open foo as file.
tries as map-cmdline.foo in template path.
tries as foo in template path.
2006-03-04 15:15:18 -08:00
Vadim Gelfer
5de8501662 fix some things people wanted to be cleaner.
rename --map-file to --style.
no more -t alias for --template.
update docs.
rename template entry in map files to changelog.
if --verbose, use changelog_verbose if there, else changelog.
2006-03-04 12:40:10 -08:00
Vadim Gelfer
8f15689d73 hide some functions behind lambdas, so demandload is useful. 2006-02-28 07:24:54 -08:00
Vadim Gelfer
9640cecf04 add doc comments to template code. 2006-02-27 15:07:25 -08:00
Vadim Gelfer
1a7e33442f add iso date template filter. 2006-02-27 12:50:49 -08:00
Vadim Gelfer
21aff25a2a improve template errors when something is wrong. 2006-02-27 12:41:20 -08:00
Vadim Gelfer
94422c87f2 improve templating.
allow {foo} as well as #foo#.
add new functions for changeset authors.
2006-02-27 11:33:09 -08:00
Vadim Gelfer
957bd7ed50 make parsestring work with strings that do not have quotes. 2006-02-27 11:18:56 -08:00
Vadim Gelfer
e8d01e14ea use safer string parser for template engine. 2006-02-27 09:35:43 -08:00
Vadim Gelfer
41badccf28 move repeated work out of inner loops. 2006-02-27 09:15:59 -08:00
Vadim Gelfer
9f0cbe341c many small changes to templater.
get string code to parse escapes. uses eval now, should parse strings
itself soon.

let caller check if fragment is defined using "in".

make templatepath take optional file name.
2006-02-26 20:53:37 -08:00
Vadim Gelfer
1db1ed4f1f move hgweb.templatepath into templater 2006-02-26 13:09:26 -08:00
Vadim Gelfer
5b07616ef3 move hgweb template code out to templater 2006-02-26 12:59:28 -08:00