Я хотел бы иметь возможность использовать значение переменной (или еще лучше, возврат function(arg)
) в качестве строки about для программы CLI, определенной с помощью structopt. Конечная цель - это полностью локализованный интерфейс командной строки, который определяет системный язык или переменную ENV и загружает локализованные строки, которые встраиваются в сообщение --help
и т. Д.
По умолчанию используется комментарий документации:
/// My about string
#[derive(StructOpt)]
struct Cli {}
Я обнаружил, что могу вместо этого передать введенную вручную строку:
#[derive(StructOpt)]
#[structopt(about = "My about string")]
struct Cli {}
Это на один шаг ближе, но я действительно хочу передать переменную:
let about: &str = "My about string";
#[derive(StructOpt)]
#[structopt(about = var!(about))]
struct Cli {}
Этот последний блок является псевдокодом, потому что я не знаю, какой синтаксис использовать для этого. В конце концов, мне понадобится нечто большее, чем просто фрагмент одной строки, но я решил, что это место для начала.
Как я могу передать такие значения в structopt? Нужно ли мне каким-то образом получить доступ к базовым интерфейсам хлопка?