var flags = inputstring.replace(/.*\/([gimy]*)$/, '$1');
var pattern = inputstring.replace(new RegExp('^/(.*?)/'+flags+'$'), '$1');
var regex = new RegExp(pattern, flags);
или
var match = inputstring.match(new RegExp('^/(.*?)/([gimy]*)$'));
// sanity check here
var regex = new RegExp(match[1], match[2]);
Это было некоторое время, так как Вы спросили, но я имел ту же проблему и добрался до сути относительно нее.
Короткая версия
$ sudo rm /etc/fonts/conf.d/60-droid-sans-mono-fonts.conf
(это - просто символьная ссылка, таким образом, никакие фактические конфигурационные файлы не потеряны).
версия
Long пакет ttf-droid
был заменен fonts-droid
. С этим символьная ссылка 60-ttf-droid-sans-mono-fonts.conf
в папке,/etc/fonts/conf.d/, была переименована к 60-droid-sans-mono-fonts.conf
. Это означает, что конфигурация в том файле теперь прочитана прежде вся конфигурация в 60-latin.conf
и таким образом переопределение его. Моноширинный псевдоним шрифта (который используется по умолчанию в Yakuake и Kate) определяется как псевдоним к DejaVu Sans Mono в 60-latin.conf, но Droid Sans Mono в 60-droid-sans-mono-fonts.conf. Кстати, тот шрифт не имеет полужирной версии, по крайней мере, не файлы в пакете Droid шрифтов. Так везде, где Yakuake и Kate, как предполагается, представляют выделенные жирным буквы, рендеринг отступает к регулярной версии шрифта.
, Если Вы не хотите изменять настройки в масштабе всей системы, Вы могли бы вместо этого добавить свой собственный псевдоним к Моноширинному в ~/.fonts.conf. Это должно работать:
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<alias>
<family>monospace</family>
<prefer>
<family>DejaVu Sans Mono</family>
</prefer>
</alias>
</fontconfig>
можно смотреть на все файлы в/etc/fonts/conf.avail и fonts.conf страница справочника для наблюдения то, что еще можно поместить в .fonts.conf.