Bir struct argp yapısının help_filter alanı yardım iletilerinin metninin özelleştirilmesini mümkün kılmak için bir işleve gösterici içerebilir. Böyle bir işlevin prototipi şuna benzer:
char *yardım-süzgeci (int anahtar, const char *metin, void *girdi)
Burada
anahtar bir seçenekteki bir anahtar olduğunda
metin bu seçeneğin yardım metnidir. Bkz.
Seçenekler.
anahtar olarak
ARGP_KEY_HELP_ ile başlayan özel anahtarlardan biri de kullanılabilir; bu durumda,
metin bu duruma ilişkin yardım metnini içerecektir. Bkz.
Argp Yardım Özelleştirme Anahtarları.
İşlev ya olduğu gibi bırakılmış olarak ya da malloc kullanılarak ayrılmış başka bir dizgeyi içeren metin ile dönmelidir. Metnin oluşturulmasına bağlı olarak ya argp tarafından serbest bırakılarak ya da sıfır yapılarak hiçbir şey basılmaması sağlanabilir. metin değeri bir dönüşümün sonunda oluşur. Yani metnin çevirisi gerekiyorsa bu işlem bu işlev tarafından yapılmalıdır. girdi, argp_parse'a verilen girdi olabileceği gibi argp_help doğrudan kullanıcı tarafından çağrılmışsa sıfır olabilir.
Argp Yardım Özelleştirme Anahtarları
Aşağıdaki özel değerler, kullanıcı seçeneklerinin anahtar değerlerine ek olarak bir argp yardım iletisi özelleştirme işlevinin ilk argümanında değer olarak kullanılabilir. Bunlar işlevin metin argümanında hangi metnin içerileceğini belirlerler:
- ARGP_KEY_HELP_PRE_DOC
Seçeneklerden önce basılacak yardım metni.
- ARGP_KEY_HELP_POST_DOC
Seçeneklerden sonra basılacak yardım metni.
- ARGP_KEY_HELP_HEADER
Seçenek başlık dizgesi.
- ARGP_KEY_HELP_EXTRA
Tüm diğer açılamalardan sonra kullanılır; bu anahtar için metin sıfırdır.
- ARGP_KEY_HELP_DUP_ARGS_NOTE
Tekrarlanan seçenek argümanları engellendiğinde basılacak açıklayıcı bilgi.
- ARGP_KEY_HELP_ARGS_DOC