User:RavuAlHemio/Vice with better wildcard handling

From Valve Developer Community
Jump to: navigation, search

Since improving Vice is so popular on this wiki, I have decided to release my own improvements to the mix.

Summary

Instead of manually enumerating a directory (and handling the single case of a lone asterisk passed as the file argument), I use more effective methods offered by the operating system (FindFirstFile/FindNextFile on Windows, glob on Unix). This way, you can pass a complex file name (such as weapon_*.c?x, which will match both weapon_ak47.ctx and weapon_aug.cax) and Vice will be able to handle it. (Note, however, that on Windows, asterisks in folder names do not work. For example, ..\..\stuff\weapon_*.ctx will be successful, while ..\..\*\weapon_*.ctx will not.)

The archive contains the sources and a 32-bit Windows binary! main.cpp contains information on how to build the program with Visual C++ and GCC. Feel free to reuse the code in ultraglob.c and ultraglob.h in your own projects. The program has been tested successfully on Windows XP, Linux and Mac OS X; it should, by extension, work on other BSD systems too.

Mirrors

Feel free to edit this page and include more mirrors.