vim: improve docs for vim plugin

No change to logic, docs change only.

This adds clearer docs for how to install the vim plugin. Now that it's
moved out of chromium, it's easy to let modern vim plugin managers
manage the GN repo and load the plugin from within.

I'm personally a vim-plug user, and thought others might benefit from
including install steps using that. I included Vundle instructions since
the API should be the same (although I haven't personally tested this).

This also moves from README.chromium to README.md for nicer markdown
rendering.

Test: manual - I regularly use the vim-plug config without issue.
Change-Id: Id9d388f1619577bb4e765bd5570f1e30f9d27f70
Reviewed-on: https://gn-review.googlesource.com/2840
Reviewed-by: Scott Graham <scottmg@chromium.org>
Commit-Queue: Scott Graham <scottmg@chromium.org>
2 files changed
tree: 7413cffe2634f7b4e67fff35c9c906b72d18f013
  1. base/
  2. build/
  3. docs/
  4. infra/
  5. tools/
  6. util/
  7. .clang-format
  8. .editorconfig
  9. .gitignore
  10. .style.yapf
  11. AUTHORS
  12. LICENSE
  13. OWNERS
  14. README.md
README.md

GN

GN is a meta-build system that generates build files for Ninja. There is documentation in docs/.

Getting started

git clone https://gn.googlesource.com/gn
cd gn
python build/gen.py
ninja -C out
# To run tests:
out/gn_unittests

On Windows, it is expected that cl.exe, link.exe, and lib.exe can be found in PATH, so you'll want to run from a Visual Studio command prompt, or similar.

On Linux and Mac, the default compiler is clang++, a recent version is expected to be found in PATH. This can be overridden by setting CC, CXX, and AR.

Sending patches

GN uses Gerrit for code review. The short version of how to patch is:

Register at https://gn-review.googlesource.com.

... edit code ...
ninja -C out && out/gn_unittests

Then, to upload a change for review:

git commit
git cl upload --gerrit

When revising a change, use:

git commit --amend
git cl upload --gerrit

which will add the new changes to the existing code review, rather than creating a new one.

We ask that all contributors sign Google's Contributor License Agreement (either individual or corporate as appropriate, select ‘any other Google project’).

Community

You may ask questions and follow along w/ GN‘s development on Chromium’s gn-dev@ Google Group.