Как использовать точку (.) В качестве десятичного разделителя в Qalculate / qalc?

Я использую Qalculate! в качестве инструмента калькулятора. Он поставляется с сопутствующим инструментом командной строки "qalc". Я обнаружил, что он использует запятую «, » в качестве десятичного разделителя в числах. Поскольку запятая уже используется для этой роли, она ожидает точку с запятой "; " вместо запятой ", " в вызовах функций:

Функции обычно вводятся в выражение путем записи имени, за которым следуют аргументы, разделяются запятыми (или точек с запятой в языках с запятой в качестве десятичной точки ), в скобки, таким образом, следуя имени синтаксиса (arg1, arg2, ...). ( источник )

Это беспорядок. Как программист, я никогда не забуду использовать точку с запятой для разделения аргументов функции, и сначала всегда получу такие ошибки:

 $ qalc "binomial (5, 3)"
ошибка: вам нужно как минимум 2 аргумента (ов) (экспонента; индекс) в функции binomial ().

Так как я могу настроить qalc на использование периода ". " в качестве десятичного разделителя и, следовательно, запятой ", " в качестве разделителя параметров?

2
задан 18 June 2020 в 18:54

1 ответ

Решение

Установите decimal_comma = 0 в следующих двух файлах конфигурации:

  • ~ / .config / qalculate / qalc.cfg для инструмента калькулятора командной строки
  • ~ / .config / qalculate / qalculate-gtk.cfg для инструмента калькулятора GUI

Альтернативы

  • Опция командной строки. В качестве непостоянного способа предоставить ту же конфигурацию, что и выше, вы можете вызвать qalc следующим образом:

     qalc -set "десятичная запятая выкл" "binomial (5, 3)"
    
  • Команда в интерактивном режиме. Когда вы запускаете инструмент командной строки как просто qalc , вы находитесь в интерактивном режиме. Там вы можете применить ту же конфигурацию, что и выше, введя эту команду и нажав Return :

     установить десятичную запятую выключенной
    
  • Изменение языка. Qalculate! оценивает LC_NUMERIC из настроек локали вашей системы, чтобы определить, какой символ использовать в качестве десятичного разделителя (источник ). Оставшийся символ точки и запятой затем становится разделителем параметров. Поэтому выполните echo $ LC_NUMERIC , чтобы проверить, правильно ли это. Если нет, вы можете захотеть изменить или исправить настройки локали .

  • Опция «Игнорировать локаль». Начиная с версии 3.0 , есть возможность игнорировать локаль системы и вместо этого используйте английский. Использование: qalc -set "ignore locale" "binomial (5, 3)". Или в интерактивном режиме qalc используйте set ignore locale`. ( источник )

2
ответ дан 19 June 2020 в 21:23

Другие вопросы по тегам:

Похожие вопросы: