<commit_before># DXR, A Code Search and Cross-Reference Tool


## Introduction
DXR is a source code cross-reference tool that uses static analysis data
collected by instrumented compilers. DXR was created in order to build on
tools like LXR and MXR. DXR runs only on Linux for the moment.


## Documentation
DXR is fairly well documented, so whether you're looking to **deploy** DXR,
**write plugins** or **templates** for DXR have a look at the `docs/` folder.
The documents in this folder is a great starting point for anybody who wants
to deploy and/or develop DXR.


## Quick Start
To try out DXR on a HelloWorld-size project...

    git clone --recursive git://github.com/mozilla/dxr.git
    cd dxr  # (the top level of the repository, not the dxr folder within it)

    # If you want to customize VM configuration for your environment, run the
    # line below, and change the settings you need, e.g. turning off NFS:
    cp vagrantconfig_local.yaml-dist vagrantconfig_local.yaml

    vagrant up
    vagrant ssh

On the VM...

    cd ~/dxr
    make<commit_msg>Rewrite readme intro for accessibility to new folks. Fix #139.<commit_after># DXR, A Code Search and Cross-Reference Tool


## Introduction
DXR is a source code browser and search engine, building on the work of LXR and
MXR. It supports full-text and regex searches as well as structural queries
like "Find all the callers of this function." Behind the scenes, it uses
trigram indices, the re2 library, and static analysis data collected by
instrumented compilers. DXR runs only on Linux for the moment.


## Documentation
DXR is fairly well documented, so whether you're looking to **deploy** DXR,
**write plugins** or **templates** for DXR have a look at the `docs/` folder.
The documents in this folder is a great starting point for anybody who wants
to deploy and/or develop DXR.


## Quick Start
To try out DXR on a HelloWorld-size project...

    git clone --recursive git://github.com/mozilla/dxr.git
    cd dxr  # (the top level of the repository, not the dxr folder within it)

    # If you want to customize VM configuration for your environment, run the
    # line below, and change the settings you need, e.g. turning off NFS:
    cp vagrantconfig_local.yaml-dist vagrantconfig_local.yaml

    vagrant up
    vagrant ssh

On the VM...

    cd ~/dxr
    make
{'fraction_non_alphanumeric': 0.06423982869379015, 'fraction_numerical': 0.0017130620985010706, 'mean_word_length': 3.5271317829457365, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4345071', 'n_tokens_mistral': 669, 'n_tokens_neox': 639, 'n_words': 345}