md_browser: Fix assertion hit on rendering top directory.

Currently, md_browser fails to render the root directory ("/") due to an
assertion failure.

We try to show the content of "/README.md" when the path "/" is requested,
but we fail to do so because _DoMD() function is called with a wrong argument
"//README.md" (instead of "/README.md"). This patch fixes the handling of
paths ending with a slash.

Change-Id: I614fd7bfc9a164a3dd4edb91635ecfb5eba18a6e
Reviewed-on: https://chromium-review.googlesource.com/641292
Reviewed-by: Mike Frysinger <vapier@chromium.org>
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Commit-Queue: Yuta Kitamura <yutak@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#498363}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 5eb3221dd2183c88e1b1d612d60f596b832535bb
1 file changed
tree: 8f164c0c123979b3bc5f44a12eb1f43b7edb4793
  1. .gitignore
  2. OWNERS
  3. README.md
  4. __init__.py
  5. base.css
  6. doc.css
  7. footer.html
  8. gitiles_autolink.py
  9. gitiles_ext_blocks.py
  10. gitiles_smart_quotes.py
  11. header.html
  12. md_browser.py
  13. prettify.css
  14. update-css.sh
README.md

md_browser

This is a simple tool to render the markdown docs in a chromium checkout locally. It is written in Python and uses the Python ‘markdown’ package, which is checked into src/third_party.

md_browser attempts to emulate the flavor of Markdown implemented by Gitiles.

Gitiles is the source browser running on https://chromium.googlesource.com, and can be run locally, but to do so requires a Java install and a Buck install, which can be slightly annoying to set up on Mac or Windows.

This is a lighterweight solution, which also allows you to preview uncommitted changes (i.e., it just serves files out of the filesystem, and is not a full Git repo browser like Gitiles is).

To run md_browser:

  1. cd to the top of your chromium checkout

  2. run python tools/md_browser/md_browser.py

  3. There is no step three.

This will run a local web server on port 8080 that points to the top of the repo. You can specify a different port with the -p flag.