i18n-de: remove locations

Strip the locations by running msgcat [1] as the wiki [2] tells to do. Do
this in a separate patch for getting a smaller one when updating from hg.pot.

[1] msgcat --no-location -o de.po de.po
[2] mercurial.selenic.com/wiki/TranslatingMercurial#Updating_a_Translation
i18n-de: updated po file with 427d672c0e4e

Do this in a separate patch for easier reviewing of the translation patch.
i18n-pt_BR: synchronized with 268a5ab5c27b
i18n: do not translate rst syntax .. note::

.. note:: is rst syntax which must not be translated. Fix this in the
translations.

This is not the first time this happens, so there should be a note for the
translator. A later patch will change the generation of the po files to
write this automatically.
A test in i18n/check-translation.py could help as well.
i18n: fix some non matching quotation marks in translations

A test for this is in preparation.
i18n: fix non-matching 1st line indentations

When generating documentation, indentation must match for getting the same
view for translated messages. Often an output is generated anyway, but it
can look different. When a syntactically wrong indentation change is done,
runrst will fail (this is detected by test-gendoc.t).

Fix the simple places. When translation knowledge is necessary, the entry is
marked as fuzzy (and therefore skipped when generating translations). A
translator can fix it later.
i18n-ja: synchronized with f493c2f67430
i18n-ja: fix some quoting problems for space character usage
i18n-ja: change phrasing for "or"
rebase: abort cleanly when we encounter a damaged rebasestate (issue4155)
dispatch: make "_checkshellalias()" invoke "findcmd()" with "strict=True"

Before this patch, shell alias may be executed by abbreviated command
name unexpectedly, even if abbreviated command name matches also
against the command provided by extension.

For example, "rebate" shell alias is executed by "hg reba", even if
rebase extension (= "rebase" command) is enabled. In this case, "hg
reba" should be aborted because of command name ambiguity.

This patch makes "_checkshellalias()" invoke "cmdutil.findcmd()"
always with "strict=True" (default value).

If abbreviated command name matches against only one shell alias even
after loading extensions, such shell alias will be executed via
"_parse()".

This patch doesn't remove "_checkshellalias()" invocation itself,
because it may prevent shell alias from loading extensions uselessly.
doc: fix mistake about matching against directories in "pattern.txt"

This fixes mistake of documentation about matching against directories
in "pattern.txt" introduced by 50db996bccaf.

".hgignore" treats specified "glob:" pattern as same as one specified
for "-X" option: it can match against directories, too.

For reference, extra regexp string appended to specified pattern for
each types are listed below: see also "match.match()" and
"match._regex()" for detail.

  ============= ========== ===============
  type          cmdline    -I/-X
  ============= ========== ===============
  glob/relglob  '$'        '(?:/|$)'
  path/relpath  '(?:/|$)'  '(?:/|$)'
  re/relre      (none)     (none)
  ============= ========== ===============

Appending '$' means that the specified pattern should match against
only files.
dispatch: take --hidden from individual commands into account

The command server would otherwise ignore that option, since the repo
object is only created once.
convert: use branchmap to change default branch in destination (issue3469)

The fix for issue2653 broke the ability to map the default branch of a source
repository to a non-default named branch in the destination repository.  Leave
the default behaviour as is, but allow the branch name "None" to be used to map
to a non-default named branch in the destination repository.
clone: do not turn hidden changeset public on publishing clone (issue3935)

Before this changeset local clone of a repo with hidden changeset would include
then in the clone (why not) and turn them public (plain wrong). This happened
because the copy clone publish by dropping the phaseroot file entirely making
everything in the repo public (and therefore immune to obsolescence marker).

This changeset takes the simplest fix, we deny the copy clone in the case of hidden
changeset falling back to pull clone that will exclude them from the clone and
therefore not turning them public.

A smarter version of copy clone could be done, but I prefer to go for the
simplest solution first.
help: improve description of phases.checksubrepos setting

The existing description was a bit hard to understand.
i18n-de: update many fuzzy entries and translate some simple ones

I mainly did the simple cases, like removing ".. note::", changing single
quotes to double quotes and adapting underlining.
Unhelpful msgstr in fuzzy entries are removed. (They were suggestions by the
program msgmerge.)
i18n-ja: change translation to fix test-gendoc.t failure with old docutils

Before this patch, "ja.po" translation causes test-gendoc.t failure
with old docutils: It fails with docutils 0.7, but not with 0.11.
i18n-pt_BR: synchronized with a29f3a15bd8b
record: use absolute path instead of os.chdir

Record was changing the current directory to `repo.root` in order to be able to
feed `command.commit` file name relative to this `repo.root`. This is a bit
overkill and prevent an incoming fix to rebase. This would also break
multi-threaded usage.

Instead we just feed `command.commit` with absolute path name. works as well as
before but without chdir.