Table of Contents

0.    Structure of Snob tutorial

1.    Installing and uninstalling Snob

2.    What exactly Snob does

3.    The test project

4.    Configuring Snob for the Bark project

4.1   Protecting files from obfuscation. Introducing APIfiles.snob

4.2   Informing Snob of a programming language: dotext.snob

4.2.1       Comments in dotext.snob

4.2.2       Reusing a configuration: include= statement.

4.2.3       Using pre-packaged configurations: use= statement.

5.    Running Snob and inspecting results

5.1   How to run Snob

5.2   Snob obfuscation map: projmap.snob

6.    Syntax of a language definition file

6.1   Regular expressions in dotext.snob

6.2   Statements of language-specific configuration files

6.3   Telling Snob what to obfuscate: name= statement

6.4   Telling Snob what to remove: comment= statement

6.5   Telling Snob what not to confuse with names: keyword= statement

6.6   Telling Snob where not to look for names: ignore= statement

6.6.1       Example: Adding pragma handling to dotc.snob

6.6.1.1Making our own ignore= statement

6.7   Telling Snob where not to look for names in any language: reserved= statements

6.8   Introducing: string= statements

7.    Adding reserved words to Snob configuration

7.1   A method of preserving third-party names automatically

7.2   Preserving literal words in all languages: configuration file reserved.snob

8.    Summary

8.1.1       Files that make it to the target directory tree

8.1.2       Files that Snob will not attempt to obfuscate

8.1.3       Names that Snob will not attempt to obfuscate

8.1.4       Snob configuration files

9.    Conclusion