minirst: do not interpret a directive as a literal block

When a directive was on its own line, it was interpreted as a literal block.

Example of problematic input:

.. note::

    a note text

--HG--
branch : stable
minirst: do not fail on an empty admonition block

--HG--
branch : stable
minirst: find admonitions before pruning comments and adding margins

Lines with only a directive are not deleted anymore because they are detected
before comments are deleted by prunecomments().
addmargins() will be adapted later.

--HG--
branch : stable
minirst: do not add a 2nd empty paragraph

This does not add a separating block after a separated note directive.

.. note::

    text

is formatted to

Note:
    text

--HG--
branch : stable
tests: modify minirst test input to new format

Modifying the test input data shows the effects of the last patches.
In text output nothing has changed.
In html output the title has moved on its own line.

--HG--
branch : stable
i18n-pt_BR: synchronized with d24ee6d7d167

--HG--
branch : stable
documentation: add an extra newline after note directive

Like this no docutils version interprets any line in the following text as
argument of note.

--HG--
branch : stable
check-code: check comment for '.. note::' without two newlines

Because string entries are replaced before matching, we must search for
the transformed pattern. But it seems to be quite unique and does not return
false matches. If it will, they can be listed as 3rd arg in pypats.

--HG--
branch : stable
check-code: more replacement characters

for finding '.. note::' (even) more exact by using more characters:
replace '.' with 'p' and ':' with 'q'

--HG--
branch : stable
Makefile: do update on a temporary copy of a po file

This avoids having a half completed file (with a new timestamp) when msgmerge
has failed.
util: warn when adding paths ending with \

Paths ending with \ will fail the verification introduced in 684a977c2ae0 when
checking out on Windows ... and if it didn't fail it would probably not do what
the user expected.

--HG--
branch : stable
tests: choose the path separator in PYTHONPATH suitable for platform

Before this patch, test code introduced by e3a5922e18c3 into
test-extension.t always uses ":" as the path separator in PYTHONPATH.

But ";" should be used on Windows.

This patch chooses the path separator in PYTHONPATH suitable for
platform.

--HG--
branch : stable
tests: quote environment variable to extract wildcard on MinGW environment

On MinGW environment, the command line below in test script can't
extract wildcard "*" and remove target files correctly.

    $ rm $ENVVAR/foo/bar.*

To extract wildcard, environment variable should be quoted by double
quotation like below:

    $ rm "$ENVVAR"/foo/bar.*

This patch also omits "-f" of "rm" to know whether files are removed
or not by exit code of it.

--HG--
branch : stable
tests: end output lines including path with "(glob)" to pass on Windows

--HG--
branch : stable
hgweb, i18n: do not translate search mode description

The search mode description can't be translated by itself, since
it's displayed as part of a template phrase (the "Assuming ..."
/ "Use ... instead" bits). Just drop the translation markers for
now, since the templates themselves currently do not support
translations.

--HG--
branch : stable
check-code: prepend warning prefix only once, but for each warning

The code adding the prefix is now run once per pattern. It was run once per
file (after the change 3e1e4a8aec1e).
Demonstrate that it is working now by extending the test. Raise two different
warnings, one of them twice.

--HG--
branch : stable
scmutil: skip checks in "casecollisionauditor" if filename is already checked

Before this patch, almost all of check code in
"casecollisionauditor.__call__()" is executed, even if specified
filename is already checked, because "f in self._newfiles" is examined
lastly.

In addition to it, adding "fl" to "self._loweredfiles" and "f" to
"self._newfiles" are also redundant in such case.

This patch checks "f in self._newfiles" first, and returns immediately
to avoid execution of check code for efficiency.
make: restrict recursion in make clean
tests: skip tests that require not having root (issue4089)

This adds a new root hghave to test against. Almost all of these are a
subset of unix-permissions, but that is also used for checking exec
bit handling.
strip: fix last unprotected mq reference (issue4097)

--HG--
branch : stable