How would the use of an external lookup table affect file compression?
There are compression programs such as zstd which explicitly allow a separate dictionary text, and stream-based compressors such as LZW can be easily converted to use a dictionary by prepending it on the input. The dictionary appears as a fixed prefix on the output and can be removed, ie $C(xy)=C(x)C(y|x)$.  

The benefit of using one text as a dictionary for another is a function of their mutual information, which is based on Kolmogorov Complexity (an incomputable minimum).   However a compression algorithm turns out to be a good way to approximate it, using a technique known as Normalized Compression Distance.  The texts are compressed separately and together as above, and the difference between $C(y|x)$ and $C(y)$ measures similarity.  So, while it's difficult to predict the benefit, measuring it empirically has some uses.