Thu, 04 Jul 2013 14:19:43 +0400 hgweb: color line which is linked to in file source view
Alexander Plavin <me@aplavin.ru> [Thu, 04 Jul 2013 14:19:43 +0400] rev 19389
hgweb: color line which is linked to in file source view Browser compatibility (':target' selector used): IE 8+, FF 3.5+, Safari 3.1+, Opera 9.5+, Chromium 4+, all popular mobile browsers.
Thu, 04 Jul 2013 14:19:13 +0400 hgweb: wrap lines in file source view
Alexander Plavin <me@aplavin.ru> [Thu, 04 Jul 2013 14:19:13 +0400] rev 19388
hgweb: wrap lines in file source view
Thu, 04 Jul 2013 14:18:44 +0400 hgweb: code selection without line numbers in file source view
Alexander Plavin <me@aplavin.ru> [Thu, 04 Jul 2013 14:18:44 +0400] rev 19387
hgweb: code selection without line numbers in file source view All the source lines are put in a <pre> tag, which gives correct display and copy&paste in both Chromium (WebKit) and FireFox: line numbers are not copied, all the tabs and spaces are kept. This doesn't change the visual appearance of the view compared to current hgweb version and doesn't use any JS code. Also, stripes in this view are now generated clientside with CSS. This implementation is chosen because other variants have important issues: Strategy FF Chrome current D,LT,E,T,L D,L pre S,NW S,NW pre/div/nbsp LT,E,T,TS,NW TS,NW pre/div/br LT,E,T,NW NW ol/li/nbsp LT,E,T,TS,AJ TS,AJ ol/li/br LT,E,T,AJ AJ pre/span LV LV Legend Strategies: - current: implemented in hgweb before this patch, i.e. divs for each line, and line numbers links in the div too - pre: the whole code in one pre tag with newlines, all line numbers in another one with 'float: left' - pre/div/{nbsp,br}: same as just 'pre', but separate divs for each line and &nbsp; or <br> instead of empty lines (otherwise they are not copied at all) - ol/li/{nbsp,br}: a single ol with li's and divs for each line, &nbsp; or <br> same as in previous strategy - pre/span: this patch Problems: D = (very minor) display problems, like wrong width of leading tabs LT = loses leading/trailing whitespace E = loses embedded whitespace B = loses blank lines T = loses tabs L = selects line numbers LV = (only) visually selects line numbers LVE = (only) visually selects line numbers at empty lines S = no stripes (and no ability to easily highlight lines-which-are-linked-at in the future) TS = space copied instead of empty line AJ = get anchor links only with JS (they work even without) NW = no linewrap easily possible (in future) As for browser versions compatibility, the CSS tricks used are supported in (according to caniuse.com): a) line numbers generation with 'content:' property and CSS counters: IE 8+, all other popular browsers (in pre-WebKit Opera numbers are being copied) b) stripes ('nth-child' selector): IE 8+, FF 3.5+, Safari 3.2+, Opera 9.5+, all other popular browsers c) line numbers are not visually selected ('user-select:' property): IE 10+, Opera 15.0+, all other popular browsers This patch is based on a demo implementation by Martin Geisler <martin@geisler.net>.
Sat, 06 Jul 2013 21:48:07 +0200 tests: print line numbers when checking code
Simon Heimberg <simohe@besonet.ch> [Sat, 06 Jul 2013 21:48:07 +0200] rev 19386
tests: print line numbers when checking code When an exception will be listed the line numbers can be replaced with glob as it is done in test-check-pyflakes.t
Sat, 06 Jul 2013 21:48:01 +0200 tests: rename files to py extension instead of copying a 2nd time
Simon Heimberg <simohe@besonet.ch> [Sat, 06 Jul 2013 21:48:01 +0200] rev 19385
tests: rename files to py extension instead of copying a 2nd time
Sat, 06 Jul 2013 21:47:56 +0200 tests: check-code all python files in one run
Simon Heimberg <simohe@besonet.ch> [Sat, 06 Jul 2013 21:47:56 +0200] rev 19384
tests: check-code all python files in one run
Thu, 04 Jul 2013 23:05:59 +0900 win32mbcs: wrap util.split()
Shun-ichi GOTO <shunichi.goto@gmail.com> [Thu, 04 Jul 2013 23:05:59 +0900] rev 19383
win32mbcs: wrap util.split() util.split() should be wrapped because it is an alias of unsafe os.path.split().
(0) -10000 -3000 -1000 -300 -100 -30 -10 -7 +7 +10 +30 +100 +300 +1000 +3000 +10000 +30000 tip