예제 #1
0
 /**
  * Helper function for generating the CSS rules.
  *
  * @return string
  *   String with the CSS rules.
  */
 public static function generateLanguagesCssRules()
 {
     $output = '';
     $geshi_library = libraries_load('geshi');
     if ($geshi_library['loaded']) {
         $languages = GeshiFilter::getAvailableLanguages();
         foreach ($languages as $langcode => $language_full_name) {
             // Create GeSHi object.
             $geshi = GeshiFilterProcess::geshiFactory('', $langcode);
             GeshiFilterProcess::overrideGeshiDefaults($geshi, $langcode);
             // Add CSS rules for current language.
             $output .= $geshi->get_stylesheet(FALSE) . "\n";
             // Release GeSHi object.
             unset($geshi);
         }
     } else {
         drupal_set_message(t('Error while generating CSS rules: could not load GeSHi library.'), 'error');
     }
     return $output;
 }
예제 #2
0
 /**
  * {@inheritdoc}
  */
 public static function overrideGeshiDefaults(\Geshi &$geshi, $langcode)
 {
     $config = \Drupal::config('geshifilter.settings');
     parent::overrideGeshiDefaults($geshi, $langcode);
     $geshi->enable_classes(TRUE);
     $geshi->set_header_type((int) $config->get('code_container', GESHI_HEADER_PRE));
 }