fork
11
.gitignore
vendored
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
.svn
|
||||||
|
# .project
|
||||||
|
Thumbs.db
|
||||||
|
.DS_Store*
|
||||||
|
# .settings
|
||||||
|
# .buildpath
|
||||||
|
*.pyc
|
||||||
|
.idea/
|
||||||
|
/log.txt
|
||||||
|
*.sublime-workspace
|
||||||
|
.c9
|
9
.gitmodules
vendored
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
[submodule "js/jquery-colorpicker"]
|
||||||
|
path = js/jquery-colorpicker
|
||||||
|
url=git://github.com/aramk/colorpicker.git
|
||||||
|
[submodule "langs/ada"]
|
||||||
|
path = langs/ada
|
||||||
|
url = https://github.com/antiphasis/crayon-lang-ada.git
|
||||||
|
[submodule "langs/vbnet"]
|
||||||
|
path = langs/vbnet
|
||||||
|
url=https://github.com/NuGardt/crayon-lang-vbnet.git
|
13
crayon-syntax-highlighter.sublime-project
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
{
|
||||||
|
"folders":
|
||||||
|
[
|
||||||
|
{
|
||||||
|
"follow_symlinks": true,
|
||||||
|
"path": ".",
|
||||||
|
"folder_exclude_patterns": [
|
||||||
|
"min",
|
||||||
|
"trans"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
36
crayon_fonts.class.php
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
<?php
|
||||||
|
require_once ('global.php');
|
||||||
|
require_once (CRAYON_RESOURCE_PHP);
|
||||||
|
|
||||||
|
/* Manages fonts once they are loaded. */
|
||||||
|
class CrayonFonts extends CrayonUserResourceCollection {
|
||||||
|
// Properties and Constants ===============================================
|
||||||
|
|
||||||
|
const DEFAULT_FONT = 'monaco';
|
||||||
|
const DEFAULT_FONT_NAME = 'Monaco';
|
||||||
|
|
||||||
|
// Methods ================================================================
|
||||||
|
|
||||||
|
function __construct() {
|
||||||
|
$this->set_default(self::DEFAULT_FONT, self::DEFAULT_FONT_NAME);
|
||||||
|
$this->directory(CRAYON_FONT_PATH);
|
||||||
|
$this->relative_directory(CRAYON_FONT_DIR);
|
||||||
|
$this->extension('css');
|
||||||
|
|
||||||
|
CrayonLog::debug("Setting font directories");
|
||||||
|
$upload = CrayonGlobalSettings::upload_path();
|
||||||
|
if ($upload) {
|
||||||
|
$this->user_directory($upload . CRAYON_FONT_DIR);
|
||||||
|
if (!is_dir($this->user_directory())) {
|
||||||
|
CrayonGlobalSettings::mkdir($this->user_directory());
|
||||||
|
CrayonLog::debug($this->user_directory(), "FONT USER DIR");
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
CrayonLog::syslog("Upload directory is empty: " . $upload . " cannot load fonts.");
|
||||||
|
}
|
||||||
|
CrayonLog::debug($this->directory());
|
||||||
|
CrayonLog::debug($this->user_directory());
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
?>
|
633
crayon_formatter.class.php
Normal file
@ -0,0 +1,633 @@
|
|||||||
|
<?php
|
||||||
|
require_once('global.php');
|
||||||
|
require_once(CRAYON_HIGHLIGHTER_PHP);
|
||||||
|
require_once(CRAYON_SETTINGS_PHP);
|
||||||
|
require_once(CRAYON_PARSER_PHP);
|
||||||
|
require_once(CRAYON_THEMES_PHP);
|
||||||
|
|
||||||
|
/* Manages formatting the html with html and css. */
|
||||||
|
|
||||||
|
class CrayonFormatter {
|
||||||
|
// Properties and Constants ===============================================
|
||||||
|
/* Used to temporarily store the array of CrayonElements passed to format_code(), so that
|
||||||
|
format_matches() can access them and identify which elements were captured and format
|
||||||
|
accordingly. This must be static for preg_replace_callback() to access it.*/
|
||||||
|
private static $elements = array();
|
||||||
|
|
||||||
|
// Delimiters
|
||||||
|
// Current crayon undergoing delimiter replace
|
||||||
|
private static $curr;
|
||||||
|
private static $delimiters;
|
||||||
|
private static $delim_regex;
|
||||||
|
private static $delim_pieces;
|
||||||
|
|
||||||
|
// Methods ================================================================
|
||||||
|
private function __construct() {
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Formats the code using the parsed language elements. */
|
||||||
|
public static function format_code($code, $language, $hl = NULL) {
|
||||||
|
// Ensure the language is defined
|
||||||
|
if ($language != NULL && $hl->is_highlighted()) {
|
||||||
|
$code = self::clean_code($code, FALSE, FALSE, FALSE, TRUE);
|
||||||
|
/* Perform the replace on the code using the regex, pass the captured matches for
|
||||||
|
formatting before they are replaced */
|
||||||
|
try {
|
||||||
|
CrayonParser::parse($language->id());
|
||||||
|
// Match language regex
|
||||||
|
$elements = $language->elements();
|
||||||
|
$regex = $language->regex();
|
||||||
|
if (!empty($regex) && !empty($elements)) {
|
||||||
|
// Get array of CrayonElements
|
||||||
|
self::$elements = array_values($elements);
|
||||||
|
$code = preg_replace_callback($regex, 'CrayonFormatter::format_match', $code);
|
||||||
|
}
|
||||||
|
} catch (Exception $e) {
|
||||||
|
$error = 'An error occured when formatting: ' . $e->message();
|
||||||
|
$hl ? $hl->log($error) : CrayonLog::syslog($error);
|
||||||
|
}
|
||||||
|
return $code;
|
||||||
|
} else {
|
||||||
|
return self::clean_code($code, TRUE, TRUE, TRUE, TRUE);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Performs a replace to format each match based on the captured element. */
|
||||||
|
private static function format_match($matches) {
|
||||||
|
/* First index in $matches is full match, subsequent indices are groups.
|
||||||
|
* Minimum number of elements in array is 2, so minimum captured group is 0. */
|
||||||
|
$captured_group_number = count($matches) - 2;
|
||||||
|
$code = $matches[0];
|
||||||
|
if (array_key_exists($captured_group_number, self::$elements)) {
|
||||||
|
$captured_element = self::$elements[$captured_group_number];
|
||||||
|
// Avoid capturing and formatting internal Crayon elements
|
||||||
|
if ($captured_element->name() == CrayonParser::CRAYON_ELEMENT) {
|
||||||
|
return $code; // Return as is
|
||||||
|
} else {
|
||||||
|
// Separate lines and add css class, keep extended class last to allow overriding
|
||||||
|
$fallback_css = CrayonLangs::known_elements($captured_element->fallback());
|
||||||
|
$element_css = $captured_element->css();
|
||||||
|
$css = !empty($fallback_css) ? $fallback_css . ' ' . $element_css : $element_css;
|
||||||
|
return self::split_lines($code, $css);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
// All else fails, return the match
|
||||||
|
return $matches[0];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Prints the formatted code, option to override the line numbers with a custom string */
|
||||||
|
public static function print_code($hl, $code, $line_numbers = TRUE, $print = TRUE) {
|
||||||
|
global $CRAYON_VERSION;
|
||||||
|
|
||||||
|
// We can print either block or inline, inline is treated differently, factor out common stuff here
|
||||||
|
$output = '';
|
||||||
|
// Used for style tag
|
||||||
|
$main_style = $code_style = $toolbar_style = $info_style = $font_style = $line_style = $pre_style = '';
|
||||||
|
// Unique ID for this instance of Crayon
|
||||||
|
$uid = 'crayon-' . $hl->id();
|
||||||
|
// Print theme id
|
||||||
|
// We make the assumption that the id is correct (checked in crayon_wp)
|
||||||
|
$theme_id = $hl->setting_val(CrayonSettings::THEME);
|
||||||
|
$theme_id_dashed = CrayonUtil::space_to_hyphen($theme_id);
|
||||||
|
if (!$hl->setting_val(CrayonSettings::ENQUEUE_THEMES)) {
|
||||||
|
$output .= CrayonResources::themes()->get_css($theme_id);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Print font id
|
||||||
|
// We make the assumption that the id is correct (checked in crayon_wp)
|
||||||
|
$font_id = $hl->setting_val(CrayonSettings::FONT);
|
||||||
|
$font_id_dashed = CrayonUtil::space_to_hyphen($font_id);
|
||||||
|
if (!$hl->setting_val(CrayonSettings::ENQUEUE_FONTS)) {
|
||||||
|
$output .= CrayonResources::fonts()->get_css($font_id);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Inline margin
|
||||||
|
if ($hl->is_inline()) {
|
||||||
|
$inline_margin = $hl->setting_val(CrayonSettings::INLINE_MARGIN) . 'px !important;';
|
||||||
|
}
|
||||||
|
|
||||||
|
// Determine font size
|
||||||
|
// TODO improve logic
|
||||||
|
if ($hl->setting_val(CrayonSettings::FONT_SIZE_ENABLE)) {
|
||||||
|
$_font_size = $hl->setting_val(CrayonSettings::FONT_SIZE);
|
||||||
|
$_font_size = $_font_size . 'px !important;';
|
||||||
|
$_line_height = $hl->setting_val(CrayonSettings::LINE_HEIGHT);
|
||||||
|
// Don't allow line height to be less than font size
|
||||||
|
$line_height = ($_line_height > $_font_size ? $_line_height : $_font_size) . 'px !important;';
|
||||||
|
$toolbar_height = $_font_size * 1.5 . 'px !important;';
|
||||||
|
$info_height = $_font_size * 1.4 . 'px !important;';
|
||||||
|
|
||||||
|
$font_style .= "font-size: $_font_size line-height: $line_height";
|
||||||
|
$toolbar_style .= "font-size: $_font_size";
|
||||||
|
$line_style .= "height: $line_height";
|
||||||
|
|
||||||
|
if ($hl->is_inline()) {
|
||||||
|
$font_style .= "font-size: $_font_size";
|
||||||
|
} else {
|
||||||
|
$toolbar_style .= "height: $toolbar_height line-height: $toolbar_height";
|
||||||
|
$info_style .= "min-height: $info_height line-height: $info_height";
|
||||||
|
}
|
||||||
|
} else if (!$hl->is_inline()) {
|
||||||
|
if (($_font_size = CrayonGlobalSettings::get(CrayonSettings::FONT_SIZE)) !== FALSE) {
|
||||||
|
$_font_size = $_font_size->def() . 'px !important;';
|
||||||
|
$line_height = ($_font_size * 1.4) . 'px !important;';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$tab = $hl->setting_val(CrayonSettings::TAB_SIZE);
|
||||||
|
$pre_style = "-moz-tab-size:$tab; -o-tab-size:$tab; -webkit-tab-size:$tab; tab-size:$tab;";
|
||||||
|
|
||||||
|
// This will return from function with inline print
|
||||||
|
if ($hl->is_inline()) {
|
||||||
|
$wrap = !$hl->setting_val(CrayonSettings::INLINE_WRAP) ? 'crayon-syntax-inline-nowrap' : '';
|
||||||
|
$output .= '
|
||||||
|
<span id="' . $uid . '" class="crayon-syntax crayon-syntax-inline ' . $wrap . ' crayon-theme-' . $theme_id_dashed . ' crayon-theme-' . $theme_id_dashed . '-inline crayon-font-' . $font_id_dashed . '" style="' . $font_style . '">' .
|
||||||
|
'<span class="crayon-pre crayon-code" style="' . $font_style . ' ' . $pre_style . '">' . $code . '</span>' .
|
||||||
|
'</span>';
|
||||||
|
return $output;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Below code only for block (default) printing
|
||||||
|
|
||||||
|
// Generate the code lines and separate each line as a div
|
||||||
|
$print_code = '';
|
||||||
|
$print_nums = '';
|
||||||
|
$hl->line_count(preg_match_all("#(?:^|(?<=\r\n|\n))[^\r\n]*#", $code, $code_lines));
|
||||||
|
|
||||||
|
// The line number to start from
|
||||||
|
$start_line = $hl->setting_val(CrayonSettings::START_LINE);
|
||||||
|
$marking = $hl->setting_val(CrayonSettings::MARKING);
|
||||||
|
$striped = $hl->setting_val(CrayonSettings::STRIPED);
|
||||||
|
$range = $hl->setting_val(CrayonSettings::RANGES) ? $hl->range() : FALSE;
|
||||||
|
for ($i = 1; $i <= $hl->line_count(); $i++) {
|
||||||
|
// Check if the current line is in the range of code to display
|
||||||
|
if ($range) {
|
||||||
|
if ($i < $range[0]) {
|
||||||
|
continue;
|
||||||
|
} else if ($i > $range[1]) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$code_line = $code_lines[0][$i - 1];
|
||||||
|
|
||||||
|
// If line is blank, add a space so the div has the correct height
|
||||||
|
if ($code_line == '') {
|
||||||
|
$code_line = ' ';
|
||||||
|
}
|
||||||
|
|
||||||
|
// Check if the current line has been selected
|
||||||
|
$marked_lines = $hl->marked();
|
||||||
|
// Check if lines need to be marked as important
|
||||||
|
if ($marking && in_array($i, $marked_lines)) {
|
||||||
|
$marked_num = ' crayon-marked-num';
|
||||||
|
$marked_line = ' crayon-marked-line';
|
||||||
|
// If multiple lines are marked, only show borders for top and bottom lines
|
||||||
|
if (!in_array($i - 1, $marked_lines)) {
|
||||||
|
$marked_num .= ' crayon-top';
|
||||||
|
$marked_line .= ' crayon-top';
|
||||||
|
}
|
||||||
|
// Single lines are both the top and bottom of the multiple marked lines
|
||||||
|
if (!in_array($i + 1, $marked_lines)) {
|
||||||
|
$marked_num .= ' crayon-bottom';
|
||||||
|
$marked_line .= ' crayon-bottom';
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
$marked_num = $marked_line = '';
|
||||||
|
}
|
||||||
|
// Stripe odd lines
|
||||||
|
if ($striped && $i % 2 == 0) {
|
||||||
|
$striped_num = ' crayon-striped-num';
|
||||||
|
$striped_line = ' crayon-striped-line';
|
||||||
|
} else {
|
||||||
|
$striped_num = $striped_line = '';
|
||||||
|
}
|
||||||
|
// Generate the lines
|
||||||
|
$line_num = $start_line + $i - 1;
|
||||||
|
$line_id = $uid . '-' . $line_num;
|
||||||
|
$print_code .= '<div class="crayon-line' . $marked_line . $striped_line . '" id="' . $line_id . '">' . $code_line . '</div>';
|
||||||
|
if (!is_string($line_numbers)) {
|
||||||
|
$print_nums .= '<div class="crayon-num' . $marked_num . $striped_num . '" data-line="' . $line_id . '">' . $line_num . '</div>';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// If $line_numbers is a string, display it
|
||||||
|
if (is_string($line_numbers) && !empty($line_numbers)) {
|
||||||
|
$print_nums .= '<div class="crayon-num">' . $line_numbers . '</div>';
|
||||||
|
} else if (empty($line_numbers)) {
|
||||||
|
$print_nums = FALSE;
|
||||||
|
}
|
||||||
|
// Determine whether to print title, encode characters
|
||||||
|
$title = $hl->title();
|
||||||
|
// Decode if needed
|
||||||
|
if ($hl->setting_val(CrayonSettings::DECODE_ATTRIBUTES)) {
|
||||||
|
$title = CrayonUtil::html_entity_decode($title);
|
||||||
|
}
|
||||||
|
$print_title = '<span class="crayon-title">' . $title . '</span>';
|
||||||
|
// Determine whether to print language
|
||||||
|
$print_lang = '';
|
||||||
|
// XXX Use for printing the regex
|
||||||
|
if ($hl->language()) {
|
||||||
|
$lang = $hl->language()->name();
|
||||||
|
switch ($hl->setting_index(CrayonSettings::SHOW_LANG)) {
|
||||||
|
case 0 :
|
||||||
|
if ($hl->language()->id() == CrayonLangs::DEFAULT_LANG) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
// Falls through
|
||||||
|
case 1 :
|
||||||
|
$print_lang = '<span class="crayon-language">' . $lang . '</span>';
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// Disable functionality for errors
|
||||||
|
$error = $hl->error();
|
||||||
|
// Combined settings for code
|
||||||
|
$code_settings = '';
|
||||||
|
// Disable mouseover for touchscreen devices and mobiles, if we are told to
|
||||||
|
$touch = FALSE; // Whether we have detected a touchscreen device
|
||||||
|
if ($hl->setting_val(CrayonSettings::TOUCHSCREEN) && CrayonUtil::is_touch()) {
|
||||||
|
$touch = TRUE;
|
||||||
|
$code_settings .= ' touchscreen';
|
||||||
|
}
|
||||||
|
|
||||||
|
// Disabling Popup
|
||||||
|
if (!$hl->setting_val(CrayonSettings::POPUP)) {
|
||||||
|
$code_settings .= ' no-popup';
|
||||||
|
}
|
||||||
|
|
||||||
|
// Minimize
|
||||||
|
if (!$hl->setting_val(CrayonSettings::MINIMIZE)) {
|
||||||
|
$code_settings .= ' minimize';
|
||||||
|
}
|
||||||
|
|
||||||
|
// Draw the plain code and toolbar
|
||||||
|
$toolbar_settings = $print_plain_button = $print_copy_button = '';
|
||||||
|
$toolbar_index = $hl->setting_index(CrayonSettings::TOOLBAR);
|
||||||
|
if (empty($error) && ($toolbar_index != 2 || $hl->setting_val(CrayonSettings::MINIMIZE))) {
|
||||||
|
// Enable mouseover setting for toolbar
|
||||||
|
if ($toolbar_index == 0 && !$touch) {
|
||||||
|
// No touchscreen detected
|
||||||
|
$toolbar_settings .= ' mouseover';
|
||||||
|
if ($hl->setting_val(CrayonSettings::TOOLBAR_OVERLAY)) {
|
||||||
|
$toolbar_settings .= ' overlay';
|
||||||
|
}
|
||||||
|
if ($hl->setting_val(CrayonSettings::TOOLBAR_HIDE)) {
|
||||||
|
$toolbar_settings .= ' hide';
|
||||||
|
}
|
||||||
|
if ($hl->setting_val(CrayonSettings::TOOLBAR_DELAY)) {
|
||||||
|
$toolbar_settings .= ' delay';
|
||||||
|
}
|
||||||
|
} else if ($toolbar_index == 1) {
|
||||||
|
// Always display the toolbar
|
||||||
|
$toolbar_settings .= ' show';
|
||||||
|
} else if ($toolbar_index == 2) {
|
||||||
|
$toolbar_settings .= ' never-show';
|
||||||
|
}
|
||||||
|
|
||||||
|
$buttons = array();
|
||||||
|
|
||||||
|
if ($hl->setting_val(CrayonSettings::NUMS_TOGGLE)) {
|
||||||
|
$buttons['nums'] = crayon__('Toggle Line Numbers');
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($hl->setting_val(CrayonSettings::PLAIN) && $hl->setting_val(CrayonSettings::PLAIN_TOGGLE)) {
|
||||||
|
$buttons['plain'] = crayon__('Toggle Plain Code');
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($hl->setting_val(CrayonSettings::WRAP_TOGGLE)) {
|
||||||
|
$buttons['wrap'] = crayon__('Toggle Line Wrap');
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($hl->setting_val(CrayonSettings::EXPAND_TOGGLE)) {
|
||||||
|
$buttons['expand'] = crayon__('Expand Code');
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!$touch && $hl->setting_val(CrayonSettings::PLAIN) && $hl->setting_val(CrayonSettings::COPY)) {
|
||||||
|
$buttons['copy'] = crayon__('Copy');
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($hl->setting_val(CrayonSettings::POPUP)) {
|
||||||
|
$buttons['popup'] = crayon__('Open Code In New Window');
|
||||||
|
}
|
||||||
|
|
||||||
|
$buttons_str = '';
|
||||||
|
foreach ($buttons as $button => $value) {
|
||||||
|
$buttons_str .= '<div class="crayon-button crayon-' . $button . '-button"';
|
||||||
|
if (!is_array($value)) {
|
||||||
|
$value = array('title' => $value);
|
||||||
|
}
|
||||||
|
foreach ($value as $k => $v) {
|
||||||
|
$buttons_str .= ' ' . $k . '="' . $v . '"';
|
||||||
|
}
|
||||||
|
$buttons_str .= '><div class="crayon-button-icon"></div></div>';
|
||||||
|
}
|
||||||
|
|
||||||
|
/* The table is rendered invisible by CSS and enabled with JS when asked to. If JS
|
||||||
|
is not enabled or fails, the toolbar won't work so there is no point to display it. */
|
||||||
|
$print_plus = $hl->is_mixed() && $hl->setting_val(CrayonSettings::SHOW_MIXED) ? '<span class="crayon-mixed-highlight" title="' . crayon__('Contains Mixed Languages') . '"></span>' : '';
|
||||||
|
$buttons = $print_plus . $buttons_str . $print_lang;
|
||||||
|
$toolbar = '
|
||||||
|
<div class="crayon-toolbar" data-settings="' . $toolbar_settings . '" style="' . $toolbar_style . '">' . $print_title . '
|
||||||
|
<div class="crayon-tools" style="' . $toolbar_style . '">' . $buttons . '</div></div>
|
||||||
|
<div class="crayon-info" style="' . $info_style . '"></div>';
|
||||||
|
|
||||||
|
} else {
|
||||||
|
$toolbar = $buttons = $plain_settings = '';
|
||||||
|
}
|
||||||
|
|
||||||
|
if (empty($error) && $hl->setting_val(CrayonSettings::PLAIN)) {
|
||||||
|
// Different events to display plain code
|
||||||
|
switch ($hl->setting_index(CrayonSettings::SHOW_PLAIN)) {
|
||||||
|
case 0 :
|
||||||
|
$plain_settings = 'dblclick';
|
||||||
|
break;
|
||||||
|
case 1 :
|
||||||
|
$plain_settings = 'click';
|
||||||
|
break;
|
||||||
|
case 2 :
|
||||||
|
$plain_settings = 'mouseover';
|
||||||
|
break;
|
||||||
|
default :
|
||||||
|
$plain_settings = '';
|
||||||
|
}
|
||||||
|
if ($hl->setting_val(CrayonSettings::SHOW_PLAIN_DEFAULT)) {
|
||||||
|
$plain_settings .= ' show-plain-default';
|
||||||
|
}
|
||||||
|
$readonly = $touch ? '' : 'readonly';
|
||||||
|
$print_plain = $print_plain_button = '';
|
||||||
|
$textwrap = !$hl->setting_val(CrayonSettings::WRAP) ? 'wrap="soft"' : '';
|
||||||
|
$print_plain = '<textarea ' . $textwrap . ' class="crayon-plain print-no" data-settings="' . $plain_settings . '" ' . $readonly . ' style="' . $pre_style . ' ' . $font_style . '">' . "\n" . self::clean_code($hl->code()) . '</textarea>';
|
||||||
|
} else {
|
||||||
|
$print_plain = $plain_settings = $plain_settings = '';
|
||||||
|
}
|
||||||
|
|
||||||
|
// Line numbers visibility
|
||||||
|
$num_vis = $num_settings = '';
|
||||||
|
if ($line_numbers === FALSE) {
|
||||||
|
$num_vis = 'crayon-invisible';
|
||||||
|
} else {
|
||||||
|
$num_settings = ($hl->setting_val(CrayonSettings::NUMS) ? 'show' : 'hide');
|
||||||
|
}
|
||||||
|
|
||||||
|
// Determine scrollbar visibility
|
||||||
|
$code_settings .= $hl->setting_val(CrayonSettings::SCROLL) && !$touch ? ' scroll-always' : ' scroll-mouseover';
|
||||||
|
|
||||||
|
// Disable animations
|
||||||
|
if ($hl->setting_val(CrayonSettings::DISABLE_ANIM)) {
|
||||||
|
$code_settings .= ' disable-anim';
|
||||||
|
}
|
||||||
|
|
||||||
|
// Wrap
|
||||||
|
if ($hl->setting_val(CrayonSettings::WRAP)) {
|
||||||
|
$code_settings .= ' wrap';
|
||||||
|
}
|
||||||
|
|
||||||
|
// Expand
|
||||||
|
if ($hl->setting_val(CrayonSettings::EXPAND)) {
|
||||||
|
$code_settings .= ' expand';
|
||||||
|
}
|
||||||
|
|
||||||
|
// Determine dimensions
|
||||||
|
if ($hl->setting_val(CrayonSettings::HEIGHT_SET)) {
|
||||||
|
$height_style = self::dimension_style($hl, CrayonSettings::HEIGHT);
|
||||||
|
// XXX Only set height for main, not code (if toolbar always visible, code will cover main)
|
||||||
|
if ($hl->setting_index(CrayonSettings::HEIGHT_UNIT) == 0) {
|
||||||
|
$main_style .= $height_style;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if ($hl->setting_val(CrayonSettings::WIDTH_SET)) {
|
||||||
|
$width_style = self::dimension_style($hl, CrayonSettings::WIDTH);
|
||||||
|
$code_style .= $width_style;
|
||||||
|
if ($hl->setting_index(CrayonSettings::WIDTH_UNIT) == 0) {
|
||||||
|
$main_style .= $width_style;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Determine margins
|
||||||
|
if ($hl->setting_val(CrayonSettings::TOP_SET)) {
|
||||||
|
$code_style .= ' margin-top: ' . $hl->setting_val(CrayonSettings::TOP_MARGIN) . 'px;';
|
||||||
|
}
|
||||||
|
if ($hl->setting_val(CrayonSettings::BOTTOM_SET)) {
|
||||||
|
$code_style .= ' margin-bottom: ' . $hl->setting_val(CrayonSettings::BOTTOM_MARGIN) . 'px;';
|
||||||
|
}
|
||||||
|
if ($hl->setting_val(CrayonSettings::LEFT_SET)) {
|
||||||
|
$code_style .= ' margin-left: ' . $hl->setting_val(CrayonSettings::LEFT_MARGIN) . 'px;';
|
||||||
|
}
|
||||||
|
if ($hl->setting_val(CrayonSettings::RIGHT_SET)) {
|
||||||
|
$code_style .= ' margin-right: ' . $hl->setting_val(CrayonSettings::RIGHT_MARGIN) . 'px;';
|
||||||
|
}
|
||||||
|
|
||||||
|
// Determine horizontal alignment
|
||||||
|
$align_style = '';
|
||||||
|
switch ($hl->setting_index(CrayonSettings::H_ALIGN)) {
|
||||||
|
case 1 :
|
||||||
|
$align_style = ' float: left;';
|
||||||
|
break;
|
||||||
|
case 2 :
|
||||||
|
$align_style = ' float: none; margin-left: auto; margin-right: auto;';
|
||||||
|
break;
|
||||||
|
case 3 :
|
||||||
|
$align_style = ' float: right;';
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
$code_style .= $align_style;
|
||||||
|
|
||||||
|
// Determine allowed float elements
|
||||||
|
if ($hl->setting_val(CrayonSettings::FLOAT_ENABLE)) {
|
||||||
|
$clear_style = ' clear: none;';
|
||||||
|
} else {
|
||||||
|
$clear_style = '';
|
||||||
|
}
|
||||||
|
$code_style .= $clear_style;
|
||||||
|
|
||||||
|
// Determine if operating system is mac
|
||||||
|
$crayon_os = CrayonUtil::is_mac() ? 'mac' : 'pc';
|
||||||
|
|
||||||
|
// Produce output
|
||||||
|
$output .= '
|
||||||
|
<div id="' . $uid . '" class="crayon-syntax crayon-theme-' . $theme_id_dashed . ' crayon-font-' . $font_id_dashed . ' crayon-os-' . $crayon_os . ' print-yes notranslate" data-settings="' . $code_settings . '" style="' . $code_style . ' ' . $font_style . '">
|
||||||
|
' . $toolbar . '
|
||||||
|
<div class="crayon-plain-wrap">' . $print_plain . '</div>' . '
|
||||||
|
<div class="crayon-main" style="' . $main_style . '">
|
||||||
|
<table class="crayon-table">
|
||||||
|
<tr class="crayon-row">';
|
||||||
|
|
||||||
|
if ($print_nums !== FALSE) {
|
||||||
|
$output .= '
|
||||||
|
<td class="crayon-nums ' . $num_vis . '" data-settings="' . $num_settings . '">
|
||||||
|
<div class="crayon-nums-content" style="' . $font_style . '">' . $print_nums . '</div>
|
||||||
|
</td>';
|
||||||
|
}
|
||||||
|
// XXX
|
||||||
|
$output .= '
|
||||||
|
<td class="crayon-code"><div class="crayon-pre" style="' . $font_style . ' ' . $pre_style . '">' . $print_code . '</div></td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
</div>';
|
||||||
|
// Debugging stats
|
||||||
|
$runtime = $hl->runtime();
|
||||||
|
if (!$hl->setting_val(CrayonSettings::DISABLE_RUNTIME) && is_array($runtime) && !empty($runtime)) {
|
||||||
|
$output = '<!-- Crayon Syntax Highlighter v' . $CRAYON_VERSION . ' -->'
|
||||||
|
. CRAYON_NL . $output . CRAYON_NL . '<!-- ';
|
||||||
|
foreach ($hl->runtime() as $type => $time) {
|
||||||
|
$output .= '[' . $type . ': ' . sprintf('%.4f seconds', $time) . '] ';
|
||||||
|
}
|
||||||
|
$output .= '-->' . CRAYON_NL;
|
||||||
|
}
|
||||||
|
// Determine whether to print to screen or save
|
||||||
|
if ($print) {
|
||||||
|
echo $output;
|
||||||
|
} else {
|
||||||
|
return $output;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function print_error($hl, $error, $line_numbers = 'ERROR', $print = TRUE) {
|
||||||
|
if (get_class($hl) != CRAYON_HIGHLIGHTER) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
// Either print the error returned by the handler, or a custom error message
|
||||||
|
if ($hl->setting_val(CrayonSettings::ERROR_MSG_SHOW)) {
|
||||||
|
$error = $hl->setting_val(CrayonSettings::ERROR_MSG);
|
||||||
|
}
|
||||||
|
$error = self::split_lines(trim($error), 'crayon-error');
|
||||||
|
return self::print_code($hl, $error, $line_numbers, $print);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Delimiters =============================================================
|
||||||
|
|
||||||
|
public static function format_mixed_code($code, $language, $hl) {
|
||||||
|
self::$curr = $hl;
|
||||||
|
self::$delim_pieces = array();
|
||||||
|
// Remove crayon internal element from INPUT code
|
||||||
|
$code = preg_replace('#' . CrayonParser::CRAYON_ELEMENT_REGEX_CAPTURE . '#msi', '', $code);
|
||||||
|
|
||||||
|
if (self::$delimiters == NULL) {
|
||||||
|
self::$delimiters = CrayonResources::langs()->delimiters();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Find all delimiters in all languages
|
||||||
|
if (self::$delim_regex == NULL) {
|
||||||
|
self::$delim_regex = '#(' . implode(')|(', array_values(self::$delimiters)) . ')#msi';
|
||||||
|
}
|
||||||
|
|
||||||
|
// Extract delimited code, replace with internal elements
|
||||||
|
$internal_code = preg_replace_callback(self::$delim_regex, 'CrayonFormatter::delim_to_internal', $code);
|
||||||
|
|
||||||
|
// Format with given language
|
||||||
|
$formatted_code = CrayonFormatter::format_code($internal_code, $language, $hl);
|
||||||
|
|
||||||
|
// Replace internal elements with delimited pieces
|
||||||
|
$formatted_code = preg_replace_callback('#\{\{crayon-internal:(\d+)\}\}#', 'CrayonFormatter::internal_to_code', $formatted_code);
|
||||||
|
|
||||||
|
return $formatted_code;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function delim_to_internal($matches) {
|
||||||
|
// Mark as mixed so we can show (+)
|
||||||
|
self::$curr->is_mixed(TRUE);
|
||||||
|
$capture_group = count($matches) - 2;
|
||||||
|
$capture_groups = array_keys(self::$delimiters);
|
||||||
|
$lang_id = $capture_groups[$capture_group];
|
||||||
|
if (($lang = CrayonResources::langs()->get($lang_id)) === NULL) {
|
||||||
|
return $matches[0];
|
||||||
|
}
|
||||||
|
$internal = sprintf('{{crayon-internal:%d}}', count(self::$delim_pieces));
|
||||||
|
// TODO fix
|
||||||
|
self::$delim_pieces[] = CrayonFormatter::format_code($matches[0], $lang, self::$curr);
|
||||||
|
return $internal;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function internal_to_code($matches) {
|
||||||
|
return self::$delim_pieces[intval($matches[1])];
|
||||||
|
}
|
||||||
|
|
||||||
|
// Auxiliary Methods ======================================================
|
||||||
|
/* Prepares code for formatting. */
|
||||||
|
public static function clean_code($code, $escape = TRUE, $spaces = FALSE, $tabs = FALSE, $lines = FALSE) {
|
||||||
|
if (empty($code)) {
|
||||||
|
return $code;
|
||||||
|
}
|
||||||
|
/* Convert <, > and & characters to entities, as these can appear as HTML tags and entities. */
|
||||||
|
if ($escape) {
|
||||||
|
$code = CrayonUtil::htmlspecialchars($code);
|
||||||
|
}
|
||||||
|
if ($spaces) {
|
||||||
|
// Replace 2 spaces with html escaped characters
|
||||||
|
$code = preg_replace('#[ ]{2}#msi', ' ', $code);
|
||||||
|
}
|
||||||
|
if ($tabs && CrayonGlobalSettings::val(CrayonSettings::TAB_CONVERT)) {
|
||||||
|
// Replace tabs with 4 spaces
|
||||||
|
$code = preg_replace('#\t#', str_repeat(' ', CrayonGlobalSettings::val(CrayonSettings::TAB_SIZE)), $code);
|
||||||
|
}
|
||||||
|
if ($lines) {
|
||||||
|
$code = preg_replace('#(\r\n)|\r|\n#msi', "\r\n", $code);
|
||||||
|
}
|
||||||
|
return $code;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Converts the code to entities and wraps in a <pre><code></code></pre> */
|
||||||
|
public static function plain_code($code, $encoded = TRUE) {
|
||||||
|
if (is_array($code)) {
|
||||||
|
// When used as a preg_replace_callback
|
||||||
|
$code = $code[1];
|
||||||
|
}
|
||||||
|
if (!$encoded) {
|
||||||
|
$code = CrayonUtil::htmlentities($code);
|
||||||
|
}
|
||||||
|
if (CrayonGlobalSettings::val(CrayonSettings::TRIM_WHITESPACE)) {
|
||||||
|
$code = trim($code);
|
||||||
|
}
|
||||||
|
return '<pre class="crayon-plain-tag">' . $code . '</pre>';
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function split_lines($code, $class) {
|
||||||
|
$code = self::clean_code($code, TRUE, TRUE, TRUE, FALSE);
|
||||||
|
$class = preg_replace('#(\w+)#m', 'crayon-$1', $class);
|
||||||
|
$code = preg_replace('#^([^\r\n]+)(?=\r\n|\r|\n|$)#m', '<span class="' . $class . '">$1</span>', $code);
|
||||||
|
return $code;
|
||||||
|
}
|
||||||
|
|
||||||
|
private static function dimension_style($hl, $name) {
|
||||||
|
$mode = $unit = '';
|
||||||
|
switch ($name) {
|
||||||
|
case CrayonSettings::HEIGHT :
|
||||||
|
$mode = CrayonSettings::HEIGHT_MODE;
|
||||||
|
$unit = CrayonSettings::HEIGHT_UNIT;
|
||||||
|
break;
|
||||||
|
case CrayonSettings::WIDTH :
|
||||||
|
$mode = CrayonSettings::WIDTH_MODE;
|
||||||
|
$unit = CrayonSettings::WIDTH_UNIT;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
// XXX Uses actual index value to identify options
|
||||||
|
$mode = $hl->setting_index($mode);
|
||||||
|
$unit = $hl->setting_index($unit);
|
||||||
|
$dim_mode = $dim_unit = '';
|
||||||
|
if ($mode !== FALSE) {
|
||||||
|
switch ($mode) {
|
||||||
|
case 0 :
|
||||||
|
$dim_mode .= 'max-';
|
||||||
|
break;
|
||||||
|
case 1 :
|
||||||
|
$dim_mode .= 'min-';
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$dim_mode .= $name;
|
||||||
|
if ($unit !== FALSE) {
|
||||||
|
switch ($unit) {
|
||||||
|
case 0 :
|
||||||
|
$dim_unit = 'px';
|
||||||
|
break;
|
||||||
|
case 1 :
|
||||||
|
$dim_unit = '%';
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return ' ' . $dim_mode . ': ' . $hl->setting_val($name) . $dim_unit . ';';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
?>
|
423
crayon_highlighter.class.php
Normal file
@ -0,0 +1,423 @@
|
|||||||
|
<?php
|
||||||
|
// Class includes
|
||||||
|
require_once ('global.php');
|
||||||
|
require_once (CRAYON_PARSER_PHP);
|
||||||
|
require_once (CRAYON_FORMATTER_PHP);
|
||||||
|
require_once (CRAYON_SETTINGS_PHP);
|
||||||
|
require_once (CRAYON_LANGS_PHP);
|
||||||
|
|
||||||
|
/* The main class for managing the syntax highlighter */
|
||||||
|
class CrayonHighlighter {
|
||||||
|
// Properties and Constants ===============================================
|
||||||
|
private $id = '';
|
||||||
|
// URL is initially NULL, meaning none provided
|
||||||
|
private $url = NULL;
|
||||||
|
private $code = '';
|
||||||
|
private $formatted_code = '';
|
||||||
|
private $title = '';
|
||||||
|
private $line_count = 0;
|
||||||
|
private $marked_lines = array();
|
||||||
|
private $range = NULL;
|
||||||
|
private $error = '';
|
||||||
|
// Determine whether the code needs to be loaded, parsed or formatted
|
||||||
|
private $needs_load = FALSE;
|
||||||
|
private $needs_format = FALSE;
|
||||||
|
// Record the script run times
|
||||||
|
private $runtime = array();
|
||||||
|
// Whether the code is mixed
|
||||||
|
private $is_mixed = FALSE;
|
||||||
|
// Inline code on a single floating line
|
||||||
|
private $is_inline = FALSE;
|
||||||
|
private $is_highlighted = TRUE;
|
||||||
|
|
||||||
|
// Objects
|
||||||
|
// Stores the CrayonLang being used
|
||||||
|
private $language = NULL;
|
||||||
|
// A copy of the current global settings which can be overridden
|
||||||
|
private $settings = NULL;
|
||||||
|
|
||||||
|
// Methods ================================================================
|
||||||
|
function __construct($url = NULL, $language = NULL, $id = NULL) {
|
||||||
|
if ($url !== NULL) {
|
||||||
|
$this->url($url);
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($language !== NULL) {
|
||||||
|
$this->language($language);
|
||||||
|
}
|
||||||
|
// Default ID
|
||||||
|
$id = $id !== NULL ? $id : uniqid();
|
||||||
|
$this->id($id);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Tries to load the code locally, then attempts to load it remotely */
|
||||||
|
private function load() {
|
||||||
|
if (empty($this->url)) {
|
||||||
|
$this->error('The specified URL is empty, please provide a valid URL.');
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
// Try to replace the URL with an absolute path if it is local, used to prevent scripts
|
||||||
|
// from executing when they are loaded.
|
||||||
|
$url = $this->url;
|
||||||
|
if ($this->setting_val(CrayonSettings::DECODE_ATTRIBUTES)) {
|
||||||
|
$url = CrayonUtil::html_entity_decode($url);
|
||||||
|
}
|
||||||
|
$url = CrayonUtil::pathf($url);
|
||||||
|
$site_http = CrayonGlobalSettings::site_url();
|
||||||
|
$scheme = parse_url($url, PHP_URL_SCHEME);
|
||||||
|
// Try to replace the site URL with a path to force local loading
|
||||||
|
if (empty($scheme)) {
|
||||||
|
// No url scheme is given - path may be given as relative
|
||||||
|
$url = CrayonUtil::path_slash($site_http) . CrayonUtil::path_slash($this->setting_val(CrayonSettings::LOCAL_PATH)) . $url;
|
||||||
|
}
|
||||||
|
$http_code = 0;
|
||||||
|
// If available, use the built in wp remote http get function.
|
||||||
|
if (function_exists('wp_remote_get')) {
|
||||||
|
$url_uid = 'crayon_' . CrayonUtil::str_uid($url);
|
||||||
|
$cached = get_transient($url_uid, 'crayon-syntax');
|
||||||
|
CrayonSettingsWP::load_cache();
|
||||||
|
if ($cached !== FALSE) {
|
||||||
|
$content = $cached;
|
||||||
|
$http_code = 200;
|
||||||
|
} else {
|
||||||
|
$response = @wp_remote_get($url, array('sslverify' => false, 'timeout' => 20));
|
||||||
|
$content = wp_remote_retrieve_body($response);
|
||||||
|
$http_code = wp_remote_retrieve_response_code($response);
|
||||||
|
$cache = $this->setting_val(CrayonSettings::CACHE);
|
||||||
|
$cache_sec = CrayonSettings::get_cache_sec($cache);
|
||||||
|
if ($cache_sec > 1 && $http_code >= 200 && $http_code < 400) {
|
||||||
|
set_transient($url_uid, $content, $cache_sec);
|
||||||
|
CrayonSettingsWP::add_cache($url_uid);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else if (in_array(parse_url($url, PHP_URL_SCHEME), array('ssl', 'http', 'https'))) {
|
||||||
|
// Fallback to cURL. At this point, the URL scheme must be valid.
|
||||||
|
$ch = curl_init($url);
|
||||||
|
curl_setopt($ch, CURLOPT_HEADER, FALSE);
|
||||||
|
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
|
||||||
|
// For https connections, we do not require SSL verification
|
||||||
|
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
|
||||||
|
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 20);
|
||||||
|
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);
|
||||||
|
curl_setopt($ch, CURLOPT_FRESH_CONNECT, FALSE);
|
||||||
|
curl_setopt($ch, CURLOPT_MAXREDIRS, 5);
|
||||||
|
if (isset($_SERVER['HTTP_USER_AGENT'])) {
|
||||||
|
curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);
|
||||||
|
}
|
||||||
|
$content = curl_exec($ch);
|
||||||
|
$error = curl_error($ch);
|
||||||
|
$http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
|
||||||
|
curl_close($ch);
|
||||||
|
}
|
||||||
|
if ($http_code >= 200 && $http_code < 400) {
|
||||||
|
$this->code($content);
|
||||||
|
} else {
|
||||||
|
if (empty($this->code)) {
|
||||||
|
// If code is also given, just use that
|
||||||
|
$this->error("The provided URL ('$this->url'), parsed remotely as ('$url'), could not be accessed.");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$this->needs_load = FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Central point of access for all other functions to update code. */
|
||||||
|
public function process() {
|
||||||
|
$tmr = new CrayonTimer();
|
||||||
|
$this->runtime = NULL;
|
||||||
|
if ($this->needs_load) {
|
||||||
|
$tmr->start();
|
||||||
|
$this->load();
|
||||||
|
$this->runtime[CRAYON_LOAD_TIME] = $tmr->stop();
|
||||||
|
}
|
||||||
|
if (!empty($this->error) || empty($this->code)) {
|
||||||
|
// Disable highlighting for errors and empty code
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($this->language === NULL) {
|
||||||
|
$this->language_detect();
|
||||||
|
}
|
||||||
|
if ($this->needs_format) {
|
||||||
|
$tmr->start();
|
||||||
|
try {
|
||||||
|
// Parse before hand to read modes
|
||||||
|
$code = $this->code;
|
||||||
|
// If inline, then combine lines into one
|
||||||
|
if ($this->is_inline) {
|
||||||
|
$code = preg_replace('#[\r\n]+#ms', '', $code);
|
||||||
|
if ($this->setting_val(CrayonSettings::TRIM_WHITESPACE)) {
|
||||||
|
$code = trim($code);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// Decode html entities (e.g. if using visual editor or manually encoding)
|
||||||
|
if ($this->setting_val(CrayonSettings::DECODE)) {
|
||||||
|
$code = CrayonUtil::html_entity_decode($code);
|
||||||
|
}
|
||||||
|
// Save code so output is plain output is the same
|
||||||
|
$this->code = $code;
|
||||||
|
|
||||||
|
// Allow mixed if langauge supports it and setting is set
|
||||||
|
CrayonParser::parse($this->language->id());
|
||||||
|
if (!$this->setting_val(CrayonSettings::MIXED) || !$this->language->mode(CrayonParser::ALLOW_MIXED)) {
|
||||||
|
// Format the code with the generated regex and elements
|
||||||
|
$this->formatted_code = CrayonFormatter::format_code($code, $this->language, $this);
|
||||||
|
} else {
|
||||||
|
// Format the code with Mixed Highlighting
|
||||||
|
$this->formatted_code = CrayonFormatter::format_mixed_code($code, $this->language, $this);
|
||||||
|
}
|
||||||
|
} catch (Exception $e) {
|
||||||
|
$this->error($e->message());
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
$this->needs_format = FALSE;
|
||||||
|
$this->runtime[CRAYON_FORMAT_TIME] = $tmr->stop();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Used to format the glue in between code when finding mixed languages */
|
||||||
|
private function format_glue($glue, $highlight = TRUE) {
|
||||||
|
// TODO $highlight
|
||||||
|
return CrayonFormatter::format_code($glue, $this->language, $this, $highlight);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Sends the code to the formatter for printing. Apart from the getters and setters, this is
|
||||||
|
the only other function accessible outside this class. $show_lines can also be a string. */
|
||||||
|
function output($show_lines = TRUE, $print = TRUE) {
|
||||||
|
$this->process();
|
||||||
|
if (empty($this->error)) {
|
||||||
|
// If no errors have occured, print the formatted code
|
||||||
|
$ret = CrayonFormatter::print_code($this, $this->formatted_code, $show_lines, $print);
|
||||||
|
} else {
|
||||||
|
$ret = CrayonFormatter::print_error($this, $this->error, '', $print);
|
||||||
|
}
|
||||||
|
// Reset the error message at the end of the print session
|
||||||
|
$this->error = '';
|
||||||
|
// If $print = FALSE, $ret will contain the output
|
||||||
|
return $ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Getters and Setters ====================================================
|
||||||
|
function code($code = NULL) {
|
||||||
|
if ($code === NULL) {
|
||||||
|
return $this->code;
|
||||||
|
} else {
|
||||||
|
// Trim whitespace
|
||||||
|
if ($this->setting_val(CrayonSettings::TRIM_WHITESPACE)) {
|
||||||
|
$code = preg_replace("#(?:^\\s*\\r?\\n)|(?:\\r?\\n\\s*$)#", '', $code);
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($this->setting_val(CrayonSettings::TRIM_CODE_TAG)) {
|
||||||
|
$code = preg_replace('#^\s*<\s*code[^>]*>#msi', '', $code);
|
||||||
|
$code = preg_replace('#</\s*code[^>]*>\s*$#msi', '', $code);
|
||||||
|
}
|
||||||
|
|
||||||
|
$before = $this->setting_val(CrayonSettings::WHITESPACE_BEFORE);
|
||||||
|
if ($before > 0) {
|
||||||
|
$code = str_repeat("\n", $before) . $code;
|
||||||
|
}
|
||||||
|
$after = $this->setting_val(CrayonSettings::WHITESPACE_AFTER);
|
||||||
|
if ($after > 0) {
|
||||||
|
$code = $code . str_repeat("\n", $after);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!empty($code)) {
|
||||||
|
$this->code = $code;
|
||||||
|
$this->needs_format = TRUE;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function language($id = NULL) {
|
||||||
|
if ($id === NULL || !is_string($id)) {
|
||||||
|
return $this->language;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ( ($lang = CrayonResources::langs()->get($id)) != FALSE || ($lang = CrayonResources::langs()->alias($id)) != FALSE ) {
|
||||||
|
// Set the language if it exists or look for an alias
|
||||||
|
$this->language = $lang;
|
||||||
|
} else {
|
||||||
|
$this->language_detect();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Prepare the language for use, even if we have no code, we need the name
|
||||||
|
CrayonParser::parse($this->language->id());
|
||||||
|
}
|
||||||
|
|
||||||
|
function language_detect() {
|
||||||
|
// Attempt to detect the language
|
||||||
|
if (!empty($id)) {
|
||||||
|
$this->log("The language '$id' could not be loaded.");
|
||||||
|
}
|
||||||
|
$this->language = CrayonResources::langs()->detect($this->url, $this->setting_val(CrayonSettings::FALLBACK_LANG));
|
||||||
|
}
|
||||||
|
|
||||||
|
function url($url = NULL) {
|
||||||
|
if ($url === NULL) {
|
||||||
|
return $this->url;
|
||||||
|
} else {
|
||||||
|
$this->url = $url;
|
||||||
|
$this->needs_load = TRUE;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function title($title = NULL) {
|
||||||
|
if (!CrayonUtil::str($this->title, $title)) {
|
||||||
|
return $this->title;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function line_count($line_count = NULL) {
|
||||||
|
if (!CrayonUtil::num($this->line_count, $line_count)) {
|
||||||
|
return $this->line_count;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function marked($str = NULL) {
|
||||||
|
if ($str === NULL) {
|
||||||
|
return $this->marked_lines;
|
||||||
|
}
|
||||||
|
// If only an int is given
|
||||||
|
if (is_int($str)) {
|
||||||
|
$array = array($str);
|
||||||
|
return CrayonUtil::arr($this->marked_lines, $array);
|
||||||
|
}
|
||||||
|
// A string with ints separated by commas, can also contain ranges
|
||||||
|
$array = CrayonUtil::trim_e($str);
|
||||||
|
$array = array_unique($array);
|
||||||
|
$lines = array();
|
||||||
|
foreach ($array as $line) {
|
||||||
|
// Check for ranges
|
||||||
|
if (strpos($line, '-') !== FALSE) {
|
||||||
|
$ranges = CrayonUtil::range_str($line);
|
||||||
|
$lines = array_merge($lines, $ranges);
|
||||||
|
} else {
|
||||||
|
// Otherwise check the string for a number
|
||||||
|
$line = intval($line);
|
||||||
|
if ($line !== 0) {
|
||||||
|
$lines[] = $line;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return CrayonUtil::arr($this->marked_lines, $lines);
|
||||||
|
}
|
||||||
|
|
||||||
|
function range($str = NULL) {
|
||||||
|
if ($str === NULL) {
|
||||||
|
return $this->range;
|
||||||
|
} else {
|
||||||
|
$range = CrayonUtil::range_str_single($str);
|
||||||
|
if ($range) {
|
||||||
|
$this->range = $range;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
function log($var) {
|
||||||
|
if ($this->setting_val(CrayonSettings::ERROR_LOG)) {
|
||||||
|
CrayonLog::log($var);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function id($id = NULL) {
|
||||||
|
if ($id == NULL) {
|
||||||
|
return $this->id;
|
||||||
|
} else {
|
||||||
|
$this->id = strval($id);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function error($string = NULL) {
|
||||||
|
if (!$string) {
|
||||||
|
return $this->error;
|
||||||
|
}
|
||||||
|
$this->error .= $string;
|
||||||
|
$this->log($string);
|
||||||
|
// Add the error string and ensure no further processing occurs
|
||||||
|
$this->needs_load = FALSE;
|
||||||
|
$this->needs_format = FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Set and retreive settings
|
||||||
|
// TODO fix this, it's too limiting
|
||||||
|
function settings($mixed = NULL) {
|
||||||
|
if ($this->settings == NULL) {
|
||||||
|
$this->settings = CrayonGlobalSettings::get_obj();
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($mixed === NULL) {
|
||||||
|
return $this->settings;
|
||||||
|
} else if (is_string($mixed)) {
|
||||||
|
return $this->settings->get($mixed);
|
||||||
|
} else if (is_array($mixed)) {
|
||||||
|
$this->settings->set($mixed);
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Retrieve a single setting's value for use in the formatter. By default, on failure it will
|
||||||
|
* return TRUE to ensure FALSE is only sent when a setting is found. This prevents a fake
|
||||||
|
* FALSE when the formatter checks for a positive setting (Show/Enable) and fails. When a
|
||||||
|
* negative setting is needed (Hide/Disable), $default_return should be set to FALSE. */
|
||||||
|
// TODO fix this (see above)
|
||||||
|
function setting_val($name = NULL, $default_return = TRUE) {
|
||||||
|
if (is_string($name) && $setting = $this->settings($name)) {
|
||||||
|
return $setting->value();
|
||||||
|
} else {
|
||||||
|
// Name not valid
|
||||||
|
return (is_bool($default_return) ? $default_return : TRUE);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Set a setting value
|
||||||
|
// TODO fix this (see above)
|
||||||
|
function setting_set($name = NULL, $value = TRUE) {
|
||||||
|
$this->settings->set($name, $value);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Used to find current index in dropdown setting
|
||||||
|
function setting_index($name = NULL) {
|
||||||
|
$setting = $this->settings($name);
|
||||||
|
if (is_string($name) && $setting->is_array()) {
|
||||||
|
return $setting->index();
|
||||||
|
} else {
|
||||||
|
// Returns -1 to avoid accidentally selecting an item in a dropdown
|
||||||
|
return CrayonSettings::INVALID;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function formatted_code() {
|
||||||
|
return $this->formatted_code;
|
||||||
|
}
|
||||||
|
|
||||||
|
function runtime() {
|
||||||
|
return $this->runtime;
|
||||||
|
}
|
||||||
|
|
||||||
|
function is_highlighted($highlighted = NULL) {
|
||||||
|
if ($highlighted === NULL) {
|
||||||
|
return $this->is_highlighted;
|
||||||
|
} else {
|
||||||
|
$this->is_highlighted = $highlighted;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function is_mixed($mixed = NULL) {
|
||||||
|
if ($mixed === NULL) {
|
||||||
|
return $this->is_mixed;
|
||||||
|
} else {
|
||||||
|
$this->is_mixed = $mixed;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function is_inline($inline = NULL) {
|
||||||
|
if ($inline === NULL) {
|
||||||
|
return $this->is_inline;
|
||||||
|
} else {
|
||||||
|
$inline = CrayonUtil::str_to_bool($inline, FALSE);
|
||||||
|
$this->is_inline = $inline;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
?>
|
544
crayon_langs.class.php
Normal file
@ -0,0 +1,544 @@
|
|||||||
|
<?php
|
||||||
|
require_once ('global.php');
|
||||||
|
require_once (CRAYON_RESOURCE_PHP);
|
||||||
|
|
||||||
|
class CrayonLangsResourceType {
|
||||||
|
const EXTENSION = 0;
|
||||||
|
const ALIAS = 1;
|
||||||
|
const DELIMITER = 2;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Manages languages once they are loaded. The parser directly loads them, saves them here. */
|
||||||
|
class CrayonLangs extends CrayonUserResourceCollection {
|
||||||
|
// Properties and Constants ===============================================
|
||||||
|
// CSS classes for known elements
|
||||||
|
private static $known_elements = array('COMMENT' => 'c', 'PREPROCESSOR' => 'p', 'STRING' => 's', 'KEYWORD' => 'k',
|
||||||
|
'STATEMENT' => 'st', 'RESERVED' => 'r', 'TYPE' => 't', 'TAG' => 'ta', 'MODIFIER' => 'm', 'IDENTIFIER' => 'i',
|
||||||
|
'ENTITY' => 'e', 'VARIABLE' => 'v', 'CONSTANT' => 'cn', 'OPERATOR' => 'o', 'SYMBOL' => 'sy',
|
||||||
|
'NOTATION' => 'n', 'FADED' => 'f', CrayonParser::HTML_CHAR => 'h', CrayonParser::CRAYON_ELEMENT => 'crayon-internal-element');
|
||||||
|
const DEFAULT_LANG = 'default';
|
||||||
|
const DEFAULT_LANG_NAME = 'Default';
|
||||||
|
|
||||||
|
const RESOURCE_TYPE = 'CrayonLangsResourceType';
|
||||||
|
|
||||||
|
// Used to cache the objects, since they are unlikely to change during a single run
|
||||||
|
private static $resource_cache = array();
|
||||||
|
|
||||||
|
// Methods ================================================================
|
||||||
|
public function __construct() {
|
||||||
|
$this->set_default(self::DEFAULT_LANG, self::DEFAULT_LANG_NAME);
|
||||||
|
$this->directory(CRAYON_LANG_PATH);
|
||||||
|
$this->relative_directory(CRAYON_LANG_DIR);
|
||||||
|
$this->extension('txt');
|
||||||
|
|
||||||
|
CrayonLog::debug("Setting lang directories");
|
||||||
|
$upload = CrayonGlobalSettings::upload_path();
|
||||||
|
if ($upload) {
|
||||||
|
$this->user_directory($upload . CRAYON_LANG_DIR);
|
||||||
|
if (!is_dir($this->user_directory())) {
|
||||||
|
CrayonGlobalSettings::mkdir($this->user_directory());
|
||||||
|
CrayonLog::debug($this->user_directory(), "LANG USER DIR");
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
CrayonLog::syslog("Upload directory is empty: " . $upload . " cannot load languages.");
|
||||||
|
}
|
||||||
|
CrayonLog::debug($this->directory());
|
||||||
|
CrayonLog::debug($this->user_directory());
|
||||||
|
}
|
||||||
|
|
||||||
|
public function filename($id, $user = NULL) {
|
||||||
|
return $id."/$id.".$this->extension();
|
||||||
|
}
|
||||||
|
|
||||||
|
// XXX Override
|
||||||
|
public function load_process() {
|
||||||
|
parent::load_process();
|
||||||
|
$this->load_exts();
|
||||||
|
$this->load_aliases();
|
||||||
|
$this->load_delimiters(); // TODO check for setting?
|
||||||
|
}
|
||||||
|
|
||||||
|
public function load_resources($dir = NULL) {
|
||||||
|
parent::load_resources($dir);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
// XXX Override
|
||||||
|
public function create_user_resource_instance($id, $name = NULL) {
|
||||||
|
return new CrayonLang($id, $name);
|
||||||
|
}
|
||||||
|
|
||||||
|
// XXX Override
|
||||||
|
public function add_default() {
|
||||||
|
$result = parent::add_default();
|
||||||
|
if ($this->is_state_loading() && !$result) {
|
||||||
|
// Default not added, must already be loaded, ready to parse
|
||||||
|
CrayonParser::parse(self::DEFAULT_LANG);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Attempts to detect the language based on extension, otherwise falls back to fallback language given.
|
||||||
|
* Returns a CrayonLang object. */
|
||||||
|
public function detect($path, $fallback_id = NULL) {
|
||||||
|
$this->load();
|
||||||
|
extract(pathinfo($path));
|
||||||
|
|
||||||
|
// If fallback id if given
|
||||||
|
if ($fallback_id == NULL) {
|
||||||
|
// Otherwise use global fallback
|
||||||
|
$fallback_id = CrayonGlobalSettings::get(CrayonSettings::FALLBACK_LANG);
|
||||||
|
}
|
||||||
|
// Attempt to use fallback
|
||||||
|
$fallback = $this->get($fallback_id);
|
||||||
|
// Use extension before trying fallback
|
||||||
|
$extension = isset($extension) ? $extension : '';
|
||||||
|
|
||||||
|
if ( !empty($extension) && ($lang = $this->ext($extension)) || ($lang = $this->get($extension)) ) {
|
||||||
|
// If extension is found, attempt to find a language for it.
|
||||||
|
// If that fails, attempt to load a language with the same id as the extension.
|
||||||
|
return $lang;
|
||||||
|
} else if ($fallback != NULL || $fallback = $this->get_default()) {
|
||||||
|
// Resort to fallback if loaded, or fallback to default
|
||||||
|
return $fallback;
|
||||||
|
} else {
|
||||||
|
// No language found
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Load all extensions and add them into each language. */
|
||||||
|
private function load_exts() {
|
||||||
|
// Load only once
|
||||||
|
if (!$this->is_state_loading()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if ( ($lang_exts = self::load_attr_file(CRAYON_LANG_EXT)) !== FALSE ) {
|
||||||
|
foreach ($lang_exts as $lang_id=>$exts) {
|
||||||
|
$lang = $this->get($lang_id);
|
||||||
|
$lang->ext($exts);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Load all extensions and add them into each language. */
|
||||||
|
private function load_aliases() {
|
||||||
|
// Load only once
|
||||||
|
if (!$this->is_state_loading()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if ( ($lang_aliases = self::load_attr_file(CRAYON_LANG_ALIAS)) !== FALSE ) {
|
||||||
|
foreach ($lang_aliases as $lang_id=>$aliases) {
|
||||||
|
$lang = $this->get($lang_id);
|
||||||
|
$lang->alias($aliases);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Load all extensions and add them into each language. */
|
||||||
|
private function load_delimiters() {
|
||||||
|
// Load only once
|
||||||
|
if (!$this->is_state_loading()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if ( ($lang_delims = self::load_attr_file(CRAYON_LANG_DELIM)) !== FALSE ) {
|
||||||
|
foreach ($lang_delims as $lang_id=>$delims) {
|
||||||
|
$lang = $this->get($lang_id);
|
||||||
|
$lang->delimiter($delims);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Used to load aliases and extensions to languages
|
||||||
|
private function load_attr_file($path) {
|
||||||
|
if ( ($lines = CrayonUtil::lines($path, 'lwc')) !== FALSE) {
|
||||||
|
$attributes = array(); // key = language id, value = array of attr
|
||||||
|
foreach ($lines as $line) {
|
||||||
|
preg_match('#^[\t ]*([^\r\n\t ]+)[\t ]+([^\r\n]+)#', $line, $matches);
|
||||||
|
if (count($matches) == 3 && $lang = $this->get($matches[1])) {
|
||||||
|
// If the langauges of the attribute exists, return it in an array
|
||||||
|
// TODO merge instead of replace key?
|
||||||
|
$attributes[$matches[1]] = explode(' ', $matches[2]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return $attributes;
|
||||||
|
} else {
|
||||||
|
CrayonLog::syslog('Could not load attr file: ' . $path);
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Returns the CrayonLang for the given extension */
|
||||||
|
public function ext($ext) {
|
||||||
|
$this->load();
|
||||||
|
foreach ($this->get() as $lang) {
|
||||||
|
if ($lang->has_ext($ext)) {
|
||||||
|
return $lang;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Returns the CrayonLang for the given alias */
|
||||||
|
public function alias($alias) {
|
||||||
|
$this->load();
|
||||||
|
foreach ($this->get() as $lang) {
|
||||||
|
if ($lang->has_alias($alias)) {
|
||||||
|
return $lang;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Fetches a resource. Type is an int from CrayonLangsResourceType. */
|
||||||
|
public function fetch($type, $reload = FALSE, $keep_empty_fetches = FALSE) {
|
||||||
|
$this->load();
|
||||||
|
|
||||||
|
if (!array_key_exists($type, self::$resource_cache) || $reload) {
|
||||||
|
$fetches = array();
|
||||||
|
foreach ($this->get() as $lang) {
|
||||||
|
|
||||||
|
switch ($type) {
|
||||||
|
case CrayonLangsResourceType::EXTENSION:
|
||||||
|
$fetch = $lang->ext();
|
||||||
|
break;
|
||||||
|
case CrayonLangsResourceType::ALIAS:
|
||||||
|
$fetch = $lang->alias();
|
||||||
|
break;
|
||||||
|
case CrayonLangsResourceType::DELIMITER:
|
||||||
|
$fetch = $lang->delimiter();
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ( !empty($fetch) || $keep_empty_fetches ) {
|
||||||
|
$fetches[$lang->id()] = $fetch;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
self::$resource_cache[$type] = $fetches;
|
||||||
|
}
|
||||||
|
return self::$resource_cache[$type];
|
||||||
|
}
|
||||||
|
|
||||||
|
public function extensions($reload = FALSE) {
|
||||||
|
return $this->fetch(CrayonLangsResourceType::EXTENSION, $reload);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function aliases($reload = FALSE) {
|
||||||
|
return $this->fetch(CrayonLangsResourceType::ALIAS, $reload);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function delimiters($reload = FALSE) {
|
||||||
|
return $this->fetch(CrayonLangsResourceType::DELIMITER, $reload);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function extensions_inverted($reload = FALSE) {
|
||||||
|
$extensions = $this->extensions($reload);
|
||||||
|
$inverted = array();
|
||||||
|
foreach ($extensions as $lang=>$exts) {
|
||||||
|
foreach ($exts as $ext) {
|
||||||
|
$inverted[$ext] = $lang;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return $inverted;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function ids_and_aliases($reload = FALSE) {
|
||||||
|
$fetch = $this->fetch(CrayonLangsResourceType::ALIAS, $reload, TRUE);
|
||||||
|
foreach ($fetch as $id=>$alias_array) {
|
||||||
|
$ids_and_aliases[] = $id;
|
||||||
|
foreach ($alias_array as $alias) {
|
||||||
|
$ids_and_aliases[] = $alias;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return $ids_and_aliases;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Return the array of valid elements or a particular element value */
|
||||||
|
public static function known_elements($name = NULL) {
|
||||||
|
if ($name === NULL) {
|
||||||
|
return self::$known_elements;
|
||||||
|
} else if (is_string($name) && array_key_exists($name, self::$known_elements)) {
|
||||||
|
return self::$known_elements[$name];
|
||||||
|
} else {
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Verify an element is valid */
|
||||||
|
public static function is_known_element($name) {
|
||||||
|
return self::known_elements($name) !== FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Compare two languages by name */
|
||||||
|
public static function langcmp($a, $b) {
|
||||||
|
$a = strtolower($a->name());
|
||||||
|
$b = strtolower($b->name());
|
||||||
|
if ($a == $b) {
|
||||||
|
return 0;
|
||||||
|
} else {
|
||||||
|
return ($a < $b) ? -1 : 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function sort_by_name($langs) {
|
||||||
|
// Sort by name
|
||||||
|
usort($langs, 'CrayonLangs::langcmp');
|
||||||
|
$sorted_lags = array();
|
||||||
|
foreach ($langs as $lang) {
|
||||||
|
$sorted_lags[$lang->id()] = $lang;
|
||||||
|
}
|
||||||
|
return $sorted_lags;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function is_parsed($id = NULL) {
|
||||||
|
if ($id === NULL) {
|
||||||
|
// Determine if all langs are successfully parsed
|
||||||
|
foreach ($this->get() as $lang) {
|
||||||
|
if ($lang->state() != CrayonLang::PARSED_SUCCESS) {
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return TRUE;
|
||||||
|
} else if (($lang = $this->get($id)) != FALSE) {
|
||||||
|
return $lang->is_parsed();
|
||||||
|
}
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function is_default($id) {
|
||||||
|
if (($lang = $this->get($id)) != FALSE) {
|
||||||
|
return $lang->is_default();
|
||||||
|
}
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Individual language. */
|
||||||
|
class CrayonLang extends CrayonVersionResource {
|
||||||
|
private $ext = array();
|
||||||
|
private $aliases = array();
|
||||||
|
private $delimiters = '';
|
||||||
|
// Associative array of CrayonElement objects
|
||||||
|
private $elements = array();
|
||||||
|
//private $regex = '';
|
||||||
|
private $state = self::UNPARSED;
|
||||||
|
private $modes = array();
|
||||||
|
// Whether this language allows Multiple Highlighting from other languages
|
||||||
|
const PARSED_ERRORS = -1;
|
||||||
|
const UNPARSED = 0;
|
||||||
|
const PARSED_SUCCESS = 1;
|
||||||
|
|
||||||
|
function __construct($id, $name = NULL) {
|
||||||
|
parent::__construct($id, $name);
|
||||||
|
$this->modes = CrayonParser::modes();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Override
|
||||||
|
function clean_id($id) {
|
||||||
|
$id = CrayonUtil::space_to_hyphen( strtolower(trim($id)) );
|
||||||
|
return preg_replace('/[^\w\-+#]/msi', '', $id);
|
||||||
|
}
|
||||||
|
|
||||||
|
function ext($ext = NULL) {
|
||||||
|
if ($ext === NULL) {
|
||||||
|
return $this->ext;
|
||||||
|
} else if (is_array($ext) && !empty($ext)) {
|
||||||
|
foreach ($ext as $e) {
|
||||||
|
$this->ext($e);
|
||||||
|
}
|
||||||
|
} else if (is_string($ext) && !empty($ext) && !in_array($ext, $this->ext)) {
|
||||||
|
$ext = strtolower($ext);
|
||||||
|
$ext = str_replace('.', '', $ext);
|
||||||
|
$this->ext[] = $ext;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function has_ext($ext) {
|
||||||
|
return is_string($ext) && in_array($ext, $this->ext);
|
||||||
|
}
|
||||||
|
|
||||||
|
function alias($alias = NULL) {
|
||||||
|
if ($alias === NULL) {
|
||||||
|
return $this->aliases;
|
||||||
|
} else if (is_array($alias) && !empty($alias)) {
|
||||||
|
foreach ($alias as $a) {
|
||||||
|
$this->alias($a);
|
||||||
|
}
|
||||||
|
} else if (is_string($alias) && !empty($alias) && !in_array($alias, $this->aliases)) {
|
||||||
|
$alias = strtolower($alias);
|
||||||
|
$this->aliases[] = $alias;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function has_alias($alias) {
|
||||||
|
return is_string($alias) && in_array($alias, $this->aliases);
|
||||||
|
}
|
||||||
|
|
||||||
|
function delimiter($delim = NULL) {
|
||||||
|
if ($delim === NULL) {
|
||||||
|
return $this->delimiters;
|
||||||
|
// Convert to regex for capturing delimiters
|
||||||
|
} else if (is_string($delim) && !empty($delim)) {
|
||||||
|
$this->delimiters = '(?:'.$delim.')';
|
||||||
|
} else if (is_array($delim) && !empty($delim)) {
|
||||||
|
for ($i = 0; $i < count($delim); $i++) {
|
||||||
|
$delim[$i] = CrayonUtil::esc_atomic($delim[$i]);
|
||||||
|
}
|
||||||
|
|
||||||
|
$this->delimiters = '(?:'.implode(')|(?:', $delim).')';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function regex($element = NULL) {
|
||||||
|
if ($element == NULL) {
|
||||||
|
$regexes = array();
|
||||||
|
foreach ($this->elements as $element) {
|
||||||
|
$regexes[] = $element->regex();
|
||||||
|
}
|
||||||
|
return '#' . '(?:('. implode(')|(', array_values($regexes)) . '))' . '#' .
|
||||||
|
($this->mode(CrayonParser::CASE_INSENSITIVE) ? 'i' : '') .
|
||||||
|
($this->mode(CrayonParser::MULTI_LINE) ? 'm' : '') .
|
||||||
|
($this->mode(CrayonParser::SINGLE_LINE) ? 's' : '');
|
||||||
|
} else if (is_string($element) && array_key_exists($element, $this->elements)) {
|
||||||
|
return $this->elements[$element]->regex();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Retrieve by element name or set by CrayonElement
|
||||||
|
function element($name, $element = NULL) {
|
||||||
|
if (is_string($name)) {
|
||||||
|
$name = trim(strtoupper($name));
|
||||||
|
if (array_key_exists($name, $this->elements) && $element === NULL) {
|
||||||
|
return $this->elements[$name];
|
||||||
|
} else if (@get_class($element) == CRAYON_ELEMENT_CLASS) {
|
||||||
|
$this->elements[$name] = $element;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function elements() {
|
||||||
|
return $this->elements;
|
||||||
|
}
|
||||||
|
|
||||||
|
function mode($name = NULL, $value = NULL) {
|
||||||
|
if (is_string($name) && CrayonParser::is_mode($name)) {
|
||||||
|
$name = trim(strtoupper($name));
|
||||||
|
if ($value == NULL && array_key_exists($name, $this->modes)) {
|
||||||
|
return $this->modes[$name];
|
||||||
|
} else if (is_string($value)) {
|
||||||
|
if (CrayonUtil::str_equal_array(trim($value), array('ON', 'YES', '1'))) {
|
||||||
|
$this->modes[$name] = TRUE;
|
||||||
|
} else if (CrayonUtil::str_equal_array(trim($value), array('OFF', 'NO', '0'))) {
|
||||||
|
$this->modes[$name] = FALSE;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
return $this->modes;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function state($state = NULL) {
|
||||||
|
if ($state === NULL) {
|
||||||
|
return $this->state;
|
||||||
|
} else if (is_int($state)) {
|
||||||
|
if ($state < 0) {
|
||||||
|
$this->state = self::PARSED_ERRORS;
|
||||||
|
} else if ($state > 0) {
|
||||||
|
$this->state = self::PARSED_SUCCESS;
|
||||||
|
} else if ($state == 0) {
|
||||||
|
$this->state = self::UNPARSED;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function state_info() {
|
||||||
|
switch ($this->state) {
|
||||||
|
case self::PARSED_ERRORS :
|
||||||
|
return 'Parsed With Errors';
|
||||||
|
case self::PARSED_SUCCESS :
|
||||||
|
return 'Successfully Parsed';
|
||||||
|
case self::UNPARSED :
|
||||||
|
return 'Not Parsed';
|
||||||
|
default :
|
||||||
|
return 'Undetermined';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function is_parsed() {
|
||||||
|
return ($this->state != self::UNPARSED);
|
||||||
|
}
|
||||||
|
|
||||||
|
function is_default() {
|
||||||
|
return $this->id() == CrayonLangs::DEFAULT_LANG;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class CrayonElement {
|
||||||
|
// The pure regex syntax without any modifiers or delimiters
|
||||||
|
private $name = '';
|
||||||
|
private $css = '';
|
||||||
|
private $regex = '';
|
||||||
|
private $fallback = '';
|
||||||
|
private $path = '';
|
||||||
|
|
||||||
|
function __construct($name, $path, $regex = '') {
|
||||||
|
$this->name($name);
|
||||||
|
$this->path($path);
|
||||||
|
$this->regex($regex);
|
||||||
|
}
|
||||||
|
|
||||||
|
function __toString() {
|
||||||
|
return $this->regex();
|
||||||
|
}
|
||||||
|
|
||||||
|
function name($name = NULL) {
|
||||||
|
if ($name == NULL) {
|
||||||
|
return $this->name;
|
||||||
|
} else if (is_string($name)) {
|
||||||
|
$name = trim(strtoupper($name));
|
||||||
|
if (CrayonLangs::is_known_element($name)) {
|
||||||
|
// If known element, set CSS to known class
|
||||||
|
$this->css(CrayonLangs::known_elements($name));
|
||||||
|
}
|
||||||
|
$this->name = $name;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function regex($regex = NULL) {
|
||||||
|
if ($regex == NULL) {
|
||||||
|
return $this->regex;
|
||||||
|
} else if (is_string($regex)) {
|
||||||
|
if (($result = CrayonParser::validate_regex($regex, $this)) !== FALSE) {
|
||||||
|
$this->regex = $result;
|
||||||
|
} else {
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Expects: 'class1 class2 class3'
|
||||||
|
function css($css = NULL) {
|
||||||
|
if ($css == NULL) {
|
||||||
|
return $this->css;
|
||||||
|
} else if (is_string($css)) {
|
||||||
|
$this->css = CrayonParser::validate_css($css);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function fallback($fallback = NULL) {
|
||||||
|
if ($fallback == NULL) {
|
||||||
|
return $this->fallback;
|
||||||
|
} else if (is_string($fallback) && CrayonLangs::is_known_element($fallback)) {
|
||||||
|
$this->fallback = $fallback;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function path($path = NULL) {
|
||||||
|
if ($path == NULL) {
|
||||||
|
return $this->path;
|
||||||
|
} else if (is_string($path) && @file_exists($path)) {
|
||||||
|
$this->path = $path;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
265
crayon_parser.class.php
Normal file
@ -0,0 +1,265 @@
|
|||||||
|
<?php
|
||||||
|
require_once ('global.php');
|
||||||
|
require_once (CRAYON_LANGS_PHP);
|
||||||
|
|
||||||
|
/* Manages parsing the syntax for any given language, constructing the regex, and validating the
|
||||||
|
elements. */
|
||||||
|
class CrayonParser {
|
||||||
|
// Properties and Constants ===============================================
|
||||||
|
const CASE_INSENSITIVE = 'CASE_INSENSITIVE';
|
||||||
|
const MULTI_LINE = 'MULTI_LINE';
|
||||||
|
const SINGLE_LINE = 'SINGLE_LINE';
|
||||||
|
const ALLOW_MIXED = 'ALLOW_MIXED';
|
||||||
|
//const NO_END_TAG = '(?![^<]*>)'; // No longer used
|
||||||
|
const HTML_CHAR = 'HTML_CHAR';
|
||||||
|
const HTML_CHAR_REGEX = '<|>|(&([\w-]+);?)|[ \t]+';
|
||||||
|
const CRAYON_ELEMENT = 'CRAYON_ELEMENT';
|
||||||
|
const CRAYON_ELEMENT_REGEX = '\{\{crayon-internal:[^\}]*\}\}';
|
||||||
|
const CRAYON_ELEMENT_REGEX_CAPTURE = '\{\{crayon-internal:([^\}]*)\}\}';
|
||||||
|
|
||||||
|
private static $modes = array(self::CASE_INSENSITIVE => TRUE, self::MULTI_LINE => TRUE, self::SINGLE_LINE => TRUE, self::ALLOW_MIXED => TRUE);
|
||||||
|
|
||||||
|
// Methods ================================================================
|
||||||
|
private function __construct() {}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Parse all languages stored in CrayonLangs.
|
||||||
|
* Avoid using this unless you must list the details in language files for all languages.
|
||||||
|
* @return array Array of all loaded CrayonLangs.
|
||||||
|
*/
|
||||||
|
public static function parse_all() {
|
||||||
|
$langs = CrayonResources::langs()->get();
|
||||||
|
if (empty($langs)) {
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
foreach ($langs as $lang) {
|
||||||
|
self::parse($lang->id());
|
||||||
|
}
|
||||||
|
return $langs;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Read a syntax file and parse the regex rules within it, this may require several other
|
||||||
|
files containing lists of keywords and such to be read. Updates the parsed elements and
|
||||||
|
regex in the CrayonLang with the given $id. */
|
||||||
|
public static function parse($id) {
|
||||||
|
// Verify the language is loaded and has not been parsed before
|
||||||
|
if ( !($lang = CrayonResources::langs()->get($id)) ) {
|
||||||
|
CrayonLog::syslog("The language with id '$id' was not loaded and could not be parsed.");
|
||||||
|
return FALSE;
|
||||||
|
} else if ($lang->is_parsed()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
// Read language file
|
||||||
|
$path = CrayonResources::langs()->path($id);
|
||||||
|
CrayonLog::debug('Parsing language ' . $path);
|
||||||
|
if ( ($file = CrayonUtil::lines($path, 'wcs')) === FALSE ) {
|
||||||
|
CrayonLog::debug('Parsing failed ' . $path);
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Extract the language name
|
||||||
|
$name_pattern = '#^[ \t]*name[ \t]+([^\r\n]+)[ \t]*#mi';
|
||||||
|
preg_match($name_pattern, $file, $name);
|
||||||
|
if (count($name) > 1) {
|
||||||
|
$name = $name[1];
|
||||||
|
$lang->name($name);
|
||||||
|
$file = preg_replace($name_pattern, '', $file);
|
||||||
|
} else {
|
||||||
|
$name = $lang->id();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Extract the language version
|
||||||
|
$version_pattern = '#^[ \t]*version[ \t]+([^\r\n]+)[ \t]*#mi';
|
||||||
|
preg_match($version_pattern, $file, $version);
|
||||||
|
if (count($version) > 1) {
|
||||||
|
$version = $version[1];
|
||||||
|
$lang->version($version);
|
||||||
|
$file = preg_replace($version_pattern, '', $file);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Extract the modes
|
||||||
|
$mode_pattern = '#^[ \t]*(' . implode('|', array_keys(self::$modes)) . ')[ \t]+(?:=[ \t]*)?([^\r\n]+)[ \t]*#mi';
|
||||||
|
preg_match_all($mode_pattern, $file, $mode_matches);
|
||||||
|
if (count($mode_matches) == 3) {
|
||||||
|
for ($i = 0; $i < count($mode_matches[0]); $i++) {
|
||||||
|
$lang->mode($mode_matches[1][$i], $mode_matches[2][$i]);
|
||||||
|
}
|
||||||
|
$file = preg_replace($mode_pattern, '', $file);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Add reserved Crayon element. This is used by Crayon internally. */
|
||||||
|
$crayon_element = new CrayonElement(self::CRAYON_ELEMENT, $path, self::CRAYON_ELEMENT_REGEX);
|
||||||
|
$lang->element(self::CRAYON_ELEMENT, $crayon_element);
|
||||||
|
|
||||||
|
// Extract elements, classes and regex
|
||||||
|
$pattern = '#^[ \t]*([\w:]+)[ \t]+(?:\[([\w\t ]*)\][ \t]+)?([^\r\n]+)[ \t]*#m';
|
||||||
|
preg_match_all($pattern, $file, $matches);
|
||||||
|
|
||||||
|
if (!empty($matches[0])) {
|
||||||
|
$elements = $matches[1];
|
||||||
|
$classes = $matches[2];
|
||||||
|
$regexes = $matches[3];
|
||||||
|
} else {
|
||||||
|
CrayonLog::syslog("No regex patterns and/or elements were parsed from language file at '$path'.");
|
||||||
|
}
|
||||||
|
|
||||||
|
// Remember state in case we encounter catchable exceptions
|
||||||
|
$error = FALSE;
|
||||||
|
for ($i = 0; $i < count($matches[0]); $i++) {
|
||||||
|
// References
|
||||||
|
$name = &$elements[$i];
|
||||||
|
$class = &$classes[$i];
|
||||||
|
$regex = &$regexes[$i];
|
||||||
|
$name = trim(strtoupper($name));
|
||||||
|
// Ensure both the element and regex are valid
|
||||||
|
if (empty($name) || empty($regex)) {
|
||||||
|
CrayonLog::syslog("Element(s) and/or regex(es) are missing in '$path'.");
|
||||||
|
$error = TRUE;
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
// Look for fallback element
|
||||||
|
$pieces = explode(':', $name);
|
||||||
|
if (count($pieces) == 2) {
|
||||||
|
$name = $pieces[0];
|
||||||
|
$fallback = $pieces[1];
|
||||||
|
} else if (count($pieces) == 1) {
|
||||||
|
$name = $pieces[0];
|
||||||
|
$fallback = '';
|
||||||
|
} else {
|
||||||
|
CrayonLog::syslog("Too many colons found in element name '$name' in '$path'");
|
||||||
|
$error = TRUE;
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
// Create a new CrayonElement
|
||||||
|
$element = new CrayonElement($name, $path);
|
||||||
|
$element->fallback($fallback);
|
||||||
|
if (!empty($class)) {
|
||||||
|
// Avoid setting known css to blank
|
||||||
|
$element->css($class);
|
||||||
|
}
|
||||||
|
if ($element->regex($regex) === FALSE) {
|
||||||
|
$error = TRUE;
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
// Add the regex to the element
|
||||||
|
$lang->element($name, $element);
|
||||||
|
$state = $error ? CrayonLang::PARSED_ERRORS : CrayonLang::PARSED_SUCCESS;
|
||||||
|
$lang->state($state);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Prevents < > and other html entities from being printed as is, which could lead to actual html tags
|
||||||
|
* from the printed code appearing on the page - not good. This can also act to color any HTML entities
|
||||||
|
* that are not picked up by previously defined elements.
|
||||||
|
*/
|
||||||
|
$html = new CrayonElement(self::HTML_CHAR, $path, self::HTML_CHAR_REGEX);
|
||||||
|
$lang->element(self::HTML_CHAR, $html);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Validates regex and accesses data stored in a CrayonElement
|
||||||
|
public static function validate_regex($regex, $element) {
|
||||||
|
if (is_string($regex) && @get_class($element) == CRAYON_ELEMENT_CLASS) {
|
||||||
|
// If the (?alt) tag has been used, insert the file into the regex
|
||||||
|
$file = self::regex_match('#\(\?alt:(.+?)\)#', $regex);
|
||||||
|
if ( count($file) == 2 ) {
|
||||||
|
// Element 0 has full match, 1 has captured groups
|
||||||
|
for ($i = 0; $i < count($file[1]); $i++) {
|
||||||
|
$file_lines = CrayonUtil::lines(dirname($element->path()) . crayon_s() . $file[1][$i], 'rcwh');
|
||||||
|
if ($file_lines !== FALSE) {
|
||||||
|
$file_lines = implode('|', $file_lines);
|
||||||
|
// If any spaces exist, treat them as whitespace
|
||||||
|
$file_lines = preg_replace('#[ \t]+#msi', '\s+', $file_lines);
|
||||||
|
$regex = str_replace($file[0][$i], "(?:$file_lines)", $regex);
|
||||||
|
} else {
|
||||||
|
CrayonLog::syslog("Parsing of '{$element->path()}' failed, an (?alt) tag failed for the element '{$element->name()}'" );
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// If the (?default:element) function is used, replace the regex with the default, if exists
|
||||||
|
$def = self::regex_match('#\(\?default(?:\:(\w+))?\)#', $regex);
|
||||||
|
if ( count($def) == 2 ) {
|
||||||
|
// Load default language
|
||||||
|
$default = CrayonResources::langs()->get(CrayonLangs::DEFAULT_LANG);
|
||||||
|
// If default has not been loaded, we can't use it, skip the element
|
||||||
|
if (!$default) {
|
||||||
|
CrayonLog::syslog(
|
||||||
|
"Could not use default regex in the element '{$element->name()}' in '{$element->path()}'");
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
for ($i = 0; $i < count($def[1]); $i++) {
|
||||||
|
// If an element has been provided
|
||||||
|
$element_name = ( !empty($def[1][$i]) ) ? $def[1][$i] : $element->name();
|
||||||
|
if (($default_element = $default->element($element_name)) != FALSE) {
|
||||||
|
$regex = str_replace($def[0][$i], '(?:' . $default_element->regex() .')', $regex);
|
||||||
|
} else {
|
||||||
|
CrayonLog::syslog("The language at '{$element->path()}' referred to the Default Language regex for element '{$element->name()}', which did not exist.");
|
||||||
|
if (CRAYON_DEBUG) {
|
||||||
|
CrayonLog::syslog("Default language URL: " . CrayonResources::langs()->url(CrayonLangs::DEFAULT_LANG));
|
||||||
|
CrayonLog::syslog("Default language Path: " . CrayonResources::langs()->path(CrayonLangs::DEFAULT_LANG));
|
||||||
|
}
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// If the (?html) tag is used, escape characters in html (<, > and &)
|
||||||
|
$html = self::regex_match('#\(\?html:(.+?)\)#', $regex);
|
||||||
|
if ( count($html) == 2 ) {
|
||||||
|
for ($i = 0; $i < count($html[1]); $i++) {
|
||||||
|
$regex = str_replace($html[0][$i], htmlentities($html[1][$i]), $regex);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Ensure all parenthesis are atomic to avoid conflicting with element matches
|
||||||
|
$regex = CrayonUtil::esc_atomic($regex);
|
||||||
|
|
||||||
|
// Escape #, this is our delimiter
|
||||||
|
$regex = CrayonUtil::esc_hash($regex);
|
||||||
|
|
||||||
|
// Test if regex is valid
|
||||||
|
if (@preg_match("#$regex#", '') === FALSE) {
|
||||||
|
CrayonLog::syslog("The regex for the element '{$element->name()}' in '{$element->path()}' is not valid.");
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
return $regex;
|
||||||
|
} else {
|
||||||
|
return '';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function validate_css($css) {
|
||||||
|
if (is_string($css)) {
|
||||||
|
// Remove dots in CSS class and convert to lowercase
|
||||||
|
$css = str_replace('.', '', $css);
|
||||||
|
$css = strtolower($css);
|
||||||
|
$css = explode(' ', $css);
|
||||||
|
$css_str = '';
|
||||||
|
foreach ($css as $c) {
|
||||||
|
if (!empty($c)) {
|
||||||
|
$css_str .= $c . ' ';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return trim($css_str);
|
||||||
|
} else {
|
||||||
|
return '';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function regex_match($pattern, $subject) {
|
||||||
|
if (preg_match_all($pattern, $subject, $matches)) {
|
||||||
|
return $matches;
|
||||||
|
}
|
||||||
|
return array();
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function modes() {
|
||||||
|
return self::$modes;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function is_mode($name) {
|
||||||
|
return is_string($name) && array_key_exists($name, self::$modes);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
?>
|
478
crayon_resource.class.php
Normal file
@ -0,0 +1,478 @@
|
|||||||
|
<?php
|
||||||
|
require_once ('global.php');
|
||||||
|
require_once (CRAYON_LANGS_PHP);
|
||||||
|
require_once (CRAYON_THEMES_PHP);
|
||||||
|
require_once (CRAYON_FONTS_PHP);
|
||||||
|
|
||||||
|
class CrayonResources {
|
||||||
|
private static $langs = NULL;
|
||||||
|
private static $themes = NULL;
|
||||||
|
private static $fonts = NULL;
|
||||||
|
|
||||||
|
private function __construct() {}
|
||||||
|
|
||||||
|
public static function langs() {
|
||||||
|
if (self::$langs == NULL) {
|
||||||
|
self::$langs = new CrayonLangs();
|
||||||
|
}
|
||||||
|
return self::$langs;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function themes() {
|
||||||
|
if (self::$themes == NULL) {
|
||||||
|
self::$themes = new CrayonThemes();
|
||||||
|
}
|
||||||
|
return self::$themes;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function fonts() {
|
||||||
|
if (self::$fonts == NULL) {
|
||||||
|
self::$fonts = new CrayonFonts();
|
||||||
|
}
|
||||||
|
return self::$fonts;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class CrayonResourceCollection {
|
||||||
|
// Properties and Constants ===============================================
|
||||||
|
|
||||||
|
// Loaded resources
|
||||||
|
|
||||||
|
private $collection = array();
|
||||||
|
// Loading state
|
||||||
|
|
||||||
|
private $state = self::UNLOADED;
|
||||||
|
// Directory containing resources
|
||||||
|
|
||||||
|
private $dir = '';
|
||||||
|
private $default_id = '';
|
||||||
|
private $default_name = '';
|
||||||
|
const UNLOADED = -1;
|
||||||
|
const LOADING = 0;
|
||||||
|
const LOADED = 1;
|
||||||
|
|
||||||
|
// Methods ================================================================
|
||||||
|
|
||||||
|
/* Override in subclasses. Returns the absolute path for a given resource. Does not check for its existence. */
|
||||||
|
public function path($id) {
|
||||||
|
return '';
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Verifies a resource exists. */
|
||||||
|
public function exists($id) {
|
||||||
|
return file_exists($this->path($id));
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Load all the available languages. Doesn't parse them for their names and regex. */
|
||||||
|
public function load() {
|
||||||
|
// Load only once
|
||||||
|
|
||||||
|
if (!$this->is_state_unloaded()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
$this->state = self::LOADING;
|
||||||
|
$this->load_process();
|
||||||
|
$this->state = self::LOADED;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function load_resources($dir = NULL) {
|
||||||
|
if ($dir === NULL) {
|
||||||
|
$dir = $this->dir;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!$this->is_state_loading()) {
|
||||||
|
// Load only once
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
// Look in directory for resources
|
||||||
|
|
||||||
|
if (!is_dir($dir)) {
|
||||||
|
CrayonLog::syslog('The resource directory is missing, should be at \'' . $dir . '\'.');
|
||||||
|
} else if (($handle = @opendir($dir)) != FALSE) {
|
||||||
|
// Loop over directory contents
|
||||||
|
while (($file = readdir($handle)) !== FALSE) {
|
||||||
|
if ($file != "." && $file != "..") {
|
||||||
|
// Check if $file is directory, remove extension when checking for existence.
|
||||||
|
|
||||||
|
if (!is_dir($dir . $file)) {
|
||||||
|
$file = CrayonUtil::path_rem_ext($file);
|
||||||
|
}
|
||||||
|
if ($this->exists($file)) {
|
||||||
|
$this->add_resource($this->resource_instance($file));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
closedir($handle);
|
||||||
|
}
|
||||||
|
} catch (Exception $e) {
|
||||||
|
CrayonLog::syslog('An error occured when trying to load resources: ' . $e->getFile() . $e->getLine());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Override in subclasses. */
|
||||||
|
public function load_process() {
|
||||||
|
if (!$this->is_state_loading()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
$this->load_resources();
|
||||||
|
$this->add_default();
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Override in subclasses */
|
||||||
|
public function add_default() {
|
||||||
|
if (!$this->is_state_loading()) {
|
||||||
|
return FALSE;
|
||||||
|
} else if (!$this->is_loaded($this->default_id)) {
|
||||||
|
CrayonLog::syslog('The default resource could not be loaded from \'' . $this->dir . '\'.');
|
||||||
|
// Add the default, but it will not be functionable
|
||||||
|
|
||||||
|
$default = $this->resource_instance($this->default_id, $this->default_name);
|
||||||
|
$this->add($this->default_id, $default);
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Returns the default resource */
|
||||||
|
public function set_default($id, $name) {
|
||||||
|
$this->default_id = $id;
|
||||||
|
$this->default_name = $name;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Returns the default resource */
|
||||||
|
public function get_default() {
|
||||||
|
return $this->get($this->default_id);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Override in subclasses to create subclass object if needed */
|
||||||
|
public function resource_instance($id, $name = NULL) {
|
||||||
|
return new CrayonResource($id, $name);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function add($id, $resource) {
|
||||||
|
if (is_string($id) && !empty($id)) {
|
||||||
|
$this->collection[$id] = $resource;
|
||||||
|
asort($this->collection);
|
||||||
|
CrayonLog::debug('Added resource: ' . $this->path($id));
|
||||||
|
} else {
|
||||||
|
CrayonLog::syslog('Could not add resource: ', $id);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public function add_resource($resource) {
|
||||||
|
$this->add($resource->id(), $resource);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function remove($name) {
|
||||||
|
if (is_string($name) && !empty($name) && array_key_exists($name, $this->collection)) {
|
||||||
|
unset($this->collection[$name]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public function remove_all() {
|
||||||
|
$this->collection = array();
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Returns the resource for the given id or NULL if it can't be found */
|
||||||
|
public function get($id = NULL) {
|
||||||
|
$this->load();
|
||||||
|
if ($id === NULL) {
|
||||||
|
return $this->collection;
|
||||||
|
} else if (is_string($id) && $this->is_loaded($id)) {
|
||||||
|
return $this->collection[$id];
|
||||||
|
}
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function get_array() {
|
||||||
|
$array = array();
|
||||||
|
foreach ($this->get() as $resource) {
|
||||||
|
$array[$resource->id()] = $resource->name();
|
||||||
|
}
|
||||||
|
return $array;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function is_loaded($id) {
|
||||||
|
if (is_string($id)) {
|
||||||
|
return array_key_exists($id, $this->collection);
|
||||||
|
}
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function get_state() {
|
||||||
|
return $this->state;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function is_state_loaded() {
|
||||||
|
return $this->state == self::LOADED;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function is_state_loading() {
|
||||||
|
return $this->state == self::LOADING;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function is_state_unloaded() {
|
||||||
|
return $this->state == self::UNLOADED;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function directory($dir = NULL) {
|
||||||
|
if ($dir === NULL) {
|
||||||
|
return $this->dir;
|
||||||
|
} else {
|
||||||
|
$this->dir = CrayonUtil::path_slash($dir);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public function url($id) {
|
||||||
|
return '';
|
||||||
|
}
|
||||||
|
|
||||||
|
public function get_css($id, $ver = NULL) {
|
||||||
|
$resource = $this->get($id);
|
||||||
|
return '<link rel="stylesheet" type="text/css" href="' . $this->url($resource->id()) . ($ver ? "?ver=$ver" : '') . '" />' . CRAYON_NL;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class CrayonUsedResourceCollection extends CrayonResourceCollection {
|
||||||
|
|
||||||
|
// Checks if any resoruces are being used
|
||||||
|
public function is_used($id = NULL) {
|
||||||
|
if ($id === NULL) {
|
||||||
|
foreach ($this->get() as $resource) {
|
||||||
|
if ($resource->used()) {
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return FALSE;
|
||||||
|
} else {
|
||||||
|
$resource = $this->get($id);
|
||||||
|
if (!$resource) {
|
||||||
|
return FALSE;
|
||||||
|
} else {
|
||||||
|
return $resource->used();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public function set_used($id, $value = TRUE) {
|
||||||
|
$resource = $this->get($id);
|
||||||
|
if ($resource !== NULL && !$resource->used()) {
|
||||||
|
$resource->used($value == TRUE);
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function get_used() {
|
||||||
|
$used = array();
|
||||||
|
foreach ($this->get() as $resource) {
|
||||||
|
if ($resource->used()) {
|
||||||
|
$used[] = $resource;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return $used;
|
||||||
|
}
|
||||||
|
|
||||||
|
// XXX Override
|
||||||
|
public function resource_instance($id, $name = NULL) {
|
||||||
|
return new CrayonUsedResource($id, $name);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function get_used_css() {
|
||||||
|
$used = $this->get_used();
|
||||||
|
$css = array();
|
||||||
|
foreach ($used as $resource) {
|
||||||
|
$url = $this->url($resource->id());
|
||||||
|
$css[$resource->id()] = $url;
|
||||||
|
}
|
||||||
|
return $css;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class CrayonUserResourceCollection extends CrayonUsedResourceCollection {
|
||||||
|
private $user_dir = '';
|
||||||
|
private $curr_dir = NULL;
|
||||||
|
// TODO better to use a base dir and relative
|
||||||
|
private $relative_directory = NULL;
|
||||||
|
// TODO move this higher up inheritance
|
||||||
|
private $extension = '';
|
||||||
|
|
||||||
|
// XXX Override
|
||||||
|
public function resource_instance($id, $name = NULL) {
|
||||||
|
$resource = $this->create_user_resource_instance($id, $name);
|
||||||
|
$resource->user($this->curr_dir == $this->user_directory());
|
||||||
|
return $resource;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function create_user_resource_instance($id, $name = NULL) {
|
||||||
|
return new CrayonUserResource($id, $name);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function user_directory($dir = NULL) {
|
||||||
|
if ($dir === NULL) {
|
||||||
|
return $this->user_dir;
|
||||||
|
} else {
|
||||||
|
$this->user_dir = CrayonUtil::path_slash($dir);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public function relative_directory($relative_directory = NULL) {
|
||||||
|
if ($relative_directory == NULL) {
|
||||||
|
return $this->relative_directory;
|
||||||
|
}
|
||||||
|
$this->relative_directory = $relative_directory;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function extension($extension = NULL) {
|
||||||
|
if ($extension == NULL) {
|
||||||
|
return $this->extension;
|
||||||
|
}
|
||||||
|
$this->extension = $extension;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function load_resources($dir = NULL) {
|
||||||
|
$this->curr_dir = $this->directory();
|
||||||
|
parent::load_resources($this->curr_dir);
|
||||||
|
$this->curr_dir = $this->user_directory();
|
||||||
|
parent::load_resources($this->curr_dir);
|
||||||
|
$this->curr_dir = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function current_directory() {
|
||||||
|
return $this->curr_dir;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function dir_is_user($id, $user = NULL) {
|
||||||
|
if ($user === NULL) {
|
||||||
|
if ($this->is_state_loading()) {
|
||||||
|
// We seem to be loading resources - use current directory
|
||||||
|
$user = $this->current_directory() == $this->user_directory();
|
||||||
|
} else {
|
||||||
|
$theme = $this->get($id);
|
||||||
|
if ($theme) {
|
||||||
|
$user = $theme->user();
|
||||||
|
} else {
|
||||||
|
$user = FALSE;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return $user;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function dirpath($user = NULL) {
|
||||||
|
$path = $user ? $this->user_directory() : $this->directory();
|
||||||
|
return CrayonUtil::path_slash($path);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function dirpath_for_id($id, $user = NULL) {
|
||||||
|
$user = $this->dir_is_user($id, $user);
|
||||||
|
return $this->dirpath($user) . $id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function dirurl($user = NULL) {
|
||||||
|
$path = $user ? CrayonGlobalSettings::upload_url() : CrayonGlobalSettings::plugin_path();
|
||||||
|
return CrayonUtil::path_slash($path . $this->relative_directory());
|
||||||
|
}
|
||||||
|
|
||||||
|
// XXX Override
|
||||||
|
public function path($id, $user = NULL) {
|
||||||
|
$user = $this->dir_is_user($id, $user);
|
||||||
|
return $this->dirpath($user) . $this->filename($id, $user);
|
||||||
|
}
|
||||||
|
|
||||||
|
// XXX Override
|
||||||
|
public function url($id, $user = NULL) {
|
||||||
|
$user = $this->dir_is_user($id, $user);
|
||||||
|
return $this->dirurl($user) . $this->filename($id, $user);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function filename($id, $user = NULL) {
|
||||||
|
return "$id.$this->extension";
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
class CrayonResource {
|
||||||
|
private $id = '';
|
||||||
|
private $name = '';
|
||||||
|
|
||||||
|
function __construct($id, $name = NULL) {
|
||||||
|
$id = $this->clean_id($id);
|
||||||
|
CrayonUtil::str($this->id, $id);
|
||||||
|
( empty($name) ) ? $this->name( self::clean_name($this->id) ) : $this->name($name);
|
||||||
|
}
|
||||||
|
|
||||||
|
function __tostring() {
|
||||||
|
return $this->name;
|
||||||
|
}
|
||||||
|
|
||||||
|
function id() {
|
||||||
|
return $this->id;
|
||||||
|
}
|
||||||
|
|
||||||
|
function name($name = NULL) {
|
||||||
|
if ($name === NULL) {
|
||||||
|
return $this->name;
|
||||||
|
} else {
|
||||||
|
$this->name = $name;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function clean_id($id) {
|
||||||
|
$id = CrayonUtil::space_to_hyphen( strtolower(trim($id)) );
|
||||||
|
return preg_replace('#[^\w-]#msi', '', $id);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function clean_name($id) {
|
||||||
|
$id = CrayonUtil::hyphen_to_space( strtolower(trim($id)) );
|
||||||
|
return CrayonUtil::ucwords($id);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
class CrayonUsedResource extends CrayonResource {
|
||||||
|
// Keeps track of usage
|
||||||
|
private $used = FALSE;
|
||||||
|
|
||||||
|
function used($used = NULL) {
|
||||||
|
if ($used === NULL) {
|
||||||
|
return $this->used;
|
||||||
|
} else {
|
||||||
|
$this->used = ($used ? TRUE : FALSE);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class CrayonUserResource extends CrayonUsedResource {
|
||||||
|
// Keeps track of user modifications
|
||||||
|
private $user = FALSE;
|
||||||
|
|
||||||
|
function user($user = NULL) {
|
||||||
|
if ($user === NULL) {
|
||||||
|
return $this->user;
|
||||||
|
} else {
|
||||||
|
$this->user = ($user ? TRUE : FALSE);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class CrayonVersionResource extends CrayonUserResource {
|
||||||
|
// Adds version
|
||||||
|
private $version = '';
|
||||||
|
|
||||||
|
function __construct($id, $name = NULL, $version = NULL) {
|
||||||
|
parent::__construct($id, $name);
|
||||||
|
$this->version($version);
|
||||||
|
}
|
||||||
|
|
||||||
|
function version($version = NULL) {
|
||||||
|
if ($version === NULL) {
|
||||||
|
return $this->version;
|
||||||
|
} else if (is_string($version)) {
|
||||||
|
$this->version = $version;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
?>
|
918
crayon_settings.class.php
Normal file
@ -0,0 +1,918 @@
|
|||||||
|
<?php
|
||||||
|
require_once('global.php');
|
||||||
|
require_once(CRAYON_PARSER_PHP);
|
||||||
|
require_once(CRAYON_THEMES_PHP);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Stores CrayonSetting objects.
|
||||||
|
* Each Crayon instance stores an instance of this class containing its specific settings.
|
||||||
|
*/
|
||||||
|
class CrayonSettings {
|
||||||
|
// Properties and Constants ===============================================
|
||||||
|
const INVALID = -1; // Used for invalid dropdown index
|
||||||
|
// Plugin data
|
||||||
|
const VERSION = 'version';
|
||||||
|
|
||||||
|
// Added when used in HTML to avoid id conflicts
|
||||||
|
const PREFIX = 'crayon-';
|
||||||
|
const SETTING = 'crayon-setting';
|
||||||
|
const SETTING_SELECTED = 'crayon-setting-selected';
|
||||||
|
const SETTING_CHANGED = 'crayon-setting-changed';
|
||||||
|
const SETTING_SPECIAL = 'crayon-setting-special';
|
||||||
|
const SETTING_ORIG_VALUE = 'data-orig-value';
|
||||||
|
|
||||||
|
// Global names for settings
|
||||||
|
const THEME = 'theme';
|
||||||
|
const FONT = 'font';
|
||||||
|
const FONT_SIZE_ENABLE = 'font-size-enable';
|
||||||
|
const FONT_SIZE = 'font-size';
|
||||||
|
const LINE_HEIGHT = 'line-height';
|
||||||
|
const PREVIEW = 'preview';
|
||||||
|
const HEIGHT_SET = 'height-set';
|
||||||
|
const HEIGHT_MODE = 'height-mode';
|
||||||
|
const HEIGHT = 'height';
|
||||||
|
const HEIGHT_UNIT = 'height-unit';
|
||||||
|
const WIDTH_SET = 'width-set';
|
||||||
|
const WIDTH_MODE = 'width-mode';
|
||||||
|
const WIDTH = 'width';
|
||||||
|
const WIDTH_UNIT = 'width-unit';
|
||||||
|
const TOP_SET = 'top-set';
|
||||||
|
const TOP_MARGIN = 'top-margin';
|
||||||
|
const LEFT_SET = 'left-set';
|
||||||
|
const LEFT_MARGIN = 'left-margin';
|
||||||
|
const BOTTOM_SET = 'bottom-set';
|
||||||
|
const BOTTOM_MARGIN = 'bottom-margin';
|
||||||
|
const RIGHT_SET = 'right-set';
|
||||||
|
const RIGHT_MARGIN = 'right-margin';
|
||||||
|
const H_ALIGN = 'h-align';
|
||||||
|
const FLOAT_ENABLE = 'float-enable';
|
||||||
|
const TOOLBAR = 'toolbar';
|
||||||
|
const TOOLBAR_OVERLAY = 'toolbar-overlay';
|
||||||
|
const TOOLBAR_HIDE = 'toolbar-hide';
|
||||||
|
const TOOLBAR_DELAY = 'toolbar-delay';
|
||||||
|
const COPY = 'copy';
|
||||||
|
const POPUP = 'popup';
|
||||||
|
const SHOW_LANG = 'show-lang';
|
||||||
|
const SHOW_TITLE = 'show-title';
|
||||||
|
const STRIPED = 'striped';
|
||||||
|
const MARKING = 'marking';
|
||||||
|
const START_LINE = 'start-line';
|
||||||
|
const NUMS = 'nums';
|
||||||
|
const NUMS_TOGGLE = 'nums-toggle';
|
||||||
|
const TRIM_WHITESPACE = 'trim-whitespace';
|
||||||
|
const WHITESPACE_BEFORE = 'whitespace-before';
|
||||||
|
const WHITESPACE_AFTER = 'whitespace-after';
|
||||||
|
const TRIM_CODE_TAG = 'trim-code-tag';
|
||||||
|
const TAB_SIZE = 'tab-size';
|
||||||
|
const TAB_CONVERT = 'tab-convert';
|
||||||
|
const FALLBACK_LANG = 'fallback-lang';
|
||||||
|
const LOCAL_PATH = 'local-path';
|
||||||
|
const SCROLL = 'scroll';
|
||||||
|
const PLAIN = 'plain';
|
||||||
|
const PLAIN_TOGGLE = 'plain-toggle';
|
||||||
|
const SHOW_PLAIN = 'show-plain';
|
||||||
|
const DISABLE_RUNTIME = 'runtime';
|
||||||
|
const DISABLE_DATE = 'disable-date';
|
||||||
|
const TOUCHSCREEN = 'touchscreen';
|
||||||
|
const DISABLE_ANIM = 'disable-anim';
|
||||||
|
const ERROR_LOG = 'error-log';
|
||||||
|
const ERROR_LOG_SYS = 'error-log-sys';
|
||||||
|
const ERROR_MSG_SHOW = 'error-msg-show';
|
||||||
|
const ERROR_MSG = 'error-msg';
|
||||||
|
const HIDE_HELP = 'hide-help';
|
||||||
|
const CACHE = 'cache';
|
||||||
|
const EFFICIENT_ENQUEUE = 'efficient-enqueue';
|
||||||
|
const CAPTURE_PRE = 'capture-pre';
|
||||||
|
const CAPTURE_MINI_TAG = 'capture-mini-tag';
|
||||||
|
const MIXED = 'mixed';
|
||||||
|
const SHOW_MIXED = 'show_mixed';
|
||||||
|
const PLAIN_TAG = 'plain_tag';
|
||||||
|
const SHOW_PLAIN_DEFAULT = 'show-plain-default';
|
||||||
|
const ENQUEUE_THEMES = 'enqueque-themes';
|
||||||
|
const ENQUEUE_FONTS = 'enqueque-fonts';
|
||||||
|
const MAIN_QUERY = 'main-query';
|
||||||
|
const SAFE_ENQUEUE = 'safe-enqueue';
|
||||||
|
const INLINE_TAG = 'inline-tag';
|
||||||
|
const INLINE_TAG_CAPTURE = 'inline-tag-capture';
|
||||||
|
const CODE_TAG_CAPTURE = 'code-tag-capture';
|
||||||
|
const CODE_TAG_CAPTURE_TYPE = 'code-tag-capture-type';
|
||||||
|
const INLINE_MARGIN = 'inline-margin';
|
||||||
|
const INLINE_WRAP = 'inline-wrap';
|
||||||
|
const BACKQUOTE = 'backquote';
|
||||||
|
const COMMENTS = 'comments';
|
||||||
|
const DECODE = 'decode';
|
||||||
|
const DECODE_ATTRIBUTES = 'decode-attributes';
|
||||||
|
// const TINYMCE_USED = 'tinymce-used';
|
||||||
|
const ATTR_SEP = 'attr-sep';
|
||||||
|
const EXCERPT_STRIP = 'excerpt-strip';
|
||||||
|
const RANGES = 'ranges';
|
||||||
|
const TAG_EDITOR_FRONT = 'tag-editor-front';
|
||||||
|
const TAG_EDITOR_SETTINGS = 'tag-editor-front-hide';
|
||||||
|
const TAG_EDITOR_ADD_BUTTON_TEXT = 'tag-editor-button-add-text';
|
||||||
|
const TAG_EDITOR_EDIT_BUTTON_TEXT = 'tag-editor-button-edit-text';
|
||||||
|
const TAG_EDITOR_QUICKTAG_BUTTON_TEXT = 'tag-editor-quicktag-button-text';
|
||||||
|
const WRAP_TOGGLE = 'wrap-toggle';
|
||||||
|
const WRAP = 'wrap';
|
||||||
|
const EXPAND = 'expand';
|
||||||
|
const EXPAND_TOGGLE = 'expand-toggle';
|
||||||
|
const MINIMIZE = 'minimize';
|
||||||
|
const IGNORE = 'ignore';
|
||||||
|
const DELAY_LOAD_JS = 'delay-load-js';
|
||||||
|
|
||||||
|
private static $cache_array;
|
||||||
|
|
||||||
|
public static function get_cache_sec($cache) {
|
||||||
|
$values = array_values(self::$cache_array);
|
||||||
|
if (array_key_exists($cache, $values)) {
|
||||||
|
return $values[$cache];
|
||||||
|
} else {
|
||||||
|
return $values[0];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// The current settings, should be loaded with default if none exists
|
||||||
|
private $settings = array();
|
||||||
|
|
||||||
|
// The settings with default values
|
||||||
|
private static $default = NULL;
|
||||||
|
|
||||||
|
function __construct() {
|
||||||
|
$this->init();
|
||||||
|
}
|
||||||
|
|
||||||
|
function copy() {
|
||||||
|
$settings = new CrayonSettings();
|
||||||
|
foreach ($this->settings as $setting) {
|
||||||
|
$settings->set($setting); // Overuse of set?
|
||||||
|
}
|
||||||
|
return $settings;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Methods ================================================================
|
||||||
|
|
||||||
|
private function init() {
|
||||||
|
global $CRAYON_VERSION;
|
||||||
|
|
||||||
|
crayon_load_plugin_textdomain();
|
||||||
|
|
||||||
|
self::$cache_array = array(crayon__('Hourly') => 3600, crayon__('Daily') => 86400,
|
||||||
|
crayon__('Weekly') => 604800, crayon__('Monthly') => 18144000,
|
||||||
|
crayon__('Immediately') => 1);
|
||||||
|
|
||||||
|
$settings = array(
|
||||||
|
new CrayonSetting(self::VERSION, $CRAYON_VERSION, NULL, TRUE),
|
||||||
|
new CrayonSetting(self::THEME, CrayonThemes::DEFAULT_THEME),
|
||||||
|
new CrayonSetting(self::FONT, CrayonFonts::DEFAULT_FONT),
|
||||||
|
new CrayonSetting(self::FONT_SIZE_ENABLE, TRUE),
|
||||||
|
new CrayonSetting(self::FONT_SIZE, 12),
|
||||||
|
new CrayonSetting(self::LINE_HEIGHT, 15),
|
||||||
|
new CrayonSetting(self::PREVIEW, TRUE),
|
||||||
|
new CrayonSetting(self::HEIGHT_SET, FALSE),
|
||||||
|
new CrayonSetting(self::HEIGHT_MODE, array(crayon__('Max'), crayon__('Min'), crayon__('Static'))),
|
||||||
|
new CrayonSetting(self::HEIGHT, '500'),
|
||||||
|
new CrayonSetting(self::HEIGHT_UNIT, array(crayon__('Pixels'), crayon__('Percent'))),
|
||||||
|
new CrayonSetting(self::WIDTH_SET, FALSE),
|
||||||
|
new CrayonSetting(self::WIDTH_MODE, array(crayon__('Max'), crayon__('Min'), crayon__('Static'))),
|
||||||
|
new CrayonSetting(self::WIDTH, '500'),
|
||||||
|
new CrayonSetting(self::WIDTH_UNIT, array(crayon__('Pixels'), crayon__('Percent'))),
|
||||||
|
new CrayonSetting(self::TOP_SET, TRUE),
|
||||||
|
new CrayonSetting(self::TOP_MARGIN, 12),
|
||||||
|
new CrayonSetting(self::BOTTOM_SET, TRUE),
|
||||||
|
new CrayonSetting(self::BOTTOM_MARGIN, 12),
|
||||||
|
new CrayonSetting(self::LEFT_SET, FALSE),
|
||||||
|
new CrayonSetting(self::LEFT_MARGIN, 12),
|
||||||
|
new CrayonSetting(self::RIGHT_SET, FALSE),
|
||||||
|
new CrayonSetting(self::RIGHT_MARGIN, 12),
|
||||||
|
new CrayonSetting(self::H_ALIGN, array(crayon__('None'), crayon__('Left'), crayon__('Center'), crayon__('Right'))),
|
||||||
|
new CrayonSetting(self::FLOAT_ENABLE, FALSE),
|
||||||
|
new CrayonSetting(self::TOOLBAR, array(crayon__('On MouseOver'), crayon__('Always'), crayon__('Never'))),
|
||||||
|
new CrayonSetting(self::TOOLBAR_OVERLAY, TRUE),
|
||||||
|
new CrayonSetting(self::TOOLBAR_HIDE, TRUE),
|
||||||
|
new CrayonSetting(self::TOOLBAR_DELAY, TRUE),
|
||||||
|
new CrayonSetting(self::COPY, TRUE),
|
||||||
|
new CrayonSetting(self::POPUP, TRUE),
|
||||||
|
new CrayonSetting(self::SHOW_LANG, array(crayon__('When Found'), crayon__('Always'), crayon__('Never'))),
|
||||||
|
new CrayonSetting(self::SHOW_TITLE, TRUE),
|
||||||
|
new CrayonSetting(self::STRIPED, TRUE),
|
||||||
|
new CrayonSetting(self::MARKING, TRUE),
|
||||||
|
new CrayonSetting(self::START_LINE, 1),
|
||||||
|
new CrayonSetting(self::NUMS, TRUE),
|
||||||
|
new CrayonSetting(self::NUMS_TOGGLE, TRUE),
|
||||||
|
new CrayonSetting(self::TRIM_WHITESPACE, TRUE),
|
||||||
|
new CrayonSetting(self::WHITESPACE_BEFORE, 0),
|
||||||
|
new CrayonSetting(self::WHITESPACE_AFTER, 0),
|
||||||
|
new CrayonSetting(self::TRIM_CODE_TAG, TRUE),
|
||||||
|
new CrayonSetting(self::TAB_CONVERT, FALSE),
|
||||||
|
new CrayonSetting(self::TAB_SIZE, 4),
|
||||||
|
new CrayonSetting(self::FALLBACK_LANG, CrayonLangs::DEFAULT_LANG),
|
||||||
|
new CrayonSetting(self::LOCAL_PATH, ''),
|
||||||
|
new CrayonSetting(self::SCROLL, FALSE),
|
||||||
|
new CrayonSetting(self::PLAIN, TRUE),
|
||||||
|
new CrayonSetting(self::PLAIN_TOGGLE, TRUE),
|
||||||
|
new CrayonSetting(self::SHOW_PLAIN_DEFAULT, FALSE),
|
||||||
|
new CrayonSetting(self::SHOW_PLAIN,
|
||||||
|
array(crayon__('On Double Click'), crayon__('On Single Click'), crayon__('On MouseOver'), crayon__('Disable Mouse Events'))),
|
||||||
|
new CrayonSetting(self::DISABLE_ANIM, FALSE),
|
||||||
|
new CrayonSetting(self::TOUCHSCREEN, TRUE),
|
||||||
|
new CrayonSetting(self::DISABLE_RUNTIME, FALSE),
|
||||||
|
new CrayonSetting(self::DISABLE_DATE, ''),
|
||||||
|
new CrayonSetting(self::ERROR_LOG, TRUE),
|
||||||
|
new CrayonSetting(self::ERROR_LOG_SYS, TRUE),
|
||||||
|
new CrayonSetting(self::ERROR_MSG_SHOW, TRUE),
|
||||||
|
new CrayonSetting(self::ERROR_MSG, crayon__('An error has occurred. Please try again later.')),
|
||||||
|
new CrayonSetting(self::HIDE_HELP, FALSE),
|
||||||
|
new CrayonSetting(self::CACHE, array_keys(self::$cache_array), 1),
|
||||||
|
new CrayonSetting(self::EFFICIENT_ENQUEUE, FALSE),
|
||||||
|
new CrayonSetting(self::CAPTURE_PRE, TRUE),
|
||||||
|
new CrayonSetting(self::CAPTURE_MINI_TAG, FALSE),
|
||||||
|
new CrayonSetting(self::MIXED, TRUE),
|
||||||
|
new CrayonSetting(self::SHOW_MIXED, TRUE),
|
||||||
|
new CrayonSetting(self::PLAIN_TAG, FALSE),
|
||||||
|
new CrayonSetting(self::ENQUEUE_THEMES, TRUE),
|
||||||
|
new CrayonSetting(self::ENQUEUE_FONTS, TRUE),
|
||||||
|
new CrayonSetting(self::MAIN_QUERY, FALSE),
|
||||||
|
new CrayonSetting(self::SAFE_ENQUEUE, TRUE),
|
||||||
|
new CrayonSetting(self::INLINE_TAG, TRUE),
|
||||||
|
new CrayonSetting(self::INLINE_TAG_CAPTURE, FALSE),
|
||||||
|
new CrayonSetting(self::CODE_TAG_CAPTURE, FALSE),
|
||||||
|
new CrayonSetting(self::CODE_TAG_CAPTURE_TYPE, array(crayon__('Inline Tag'), crayon__('Block Tag'))),
|
||||||
|
new CrayonSetting(self::INLINE_MARGIN, 5),
|
||||||
|
new CrayonSetting(self::INLINE_WRAP, TRUE),
|
||||||
|
new CrayonSetting(self::BACKQUOTE, TRUE),
|
||||||
|
new CrayonSetting(self::COMMENTS, TRUE),
|
||||||
|
new CrayonSetting(self::DECODE, FALSE),
|
||||||
|
new CrayonSetting(self::DECODE_ATTRIBUTES, TRUE),
|
||||||
|
// new CrayonSetting(self::TINYMCE_USED, FALSE),
|
||||||
|
new CrayonSetting(self::ATTR_SEP, array(':', '_')),
|
||||||
|
new CrayonSetting(self::EXCERPT_STRIP, FALSE),
|
||||||
|
new CrayonSetting(self::RANGES, TRUE),
|
||||||
|
new CrayonSetting(self::TAG_EDITOR_FRONT, FALSE),
|
||||||
|
new CrayonSetting(self::TAG_EDITOR_SETTINGS, TRUE),
|
||||||
|
new CrayonSetting(self::TAG_EDITOR_ADD_BUTTON_TEXT, crayon__('Add Code')),
|
||||||
|
new CrayonSetting(self::TAG_EDITOR_EDIT_BUTTON_TEXT, crayon__('Edit Code')),
|
||||||
|
new CrayonSetting(self::TAG_EDITOR_QUICKTAG_BUTTON_TEXT, 'crayon'),
|
||||||
|
new CrayonSetting(self::WRAP_TOGGLE, TRUE),
|
||||||
|
new CrayonSetting(self::WRAP, FALSE),
|
||||||
|
new CrayonSetting(self::EXPAND, FALSE),
|
||||||
|
new CrayonSetting(self::EXPAND_TOGGLE, TRUE),
|
||||||
|
new CrayonSetting(self::MINIMIZE, FALSE),
|
||||||
|
new CrayonSetting(self::DELAY_LOAD_JS, FALSE)
|
||||||
|
);
|
||||||
|
|
||||||
|
$this->set($settings);
|
||||||
|
|
||||||
|
$nonNegs = array(self::FONT_SIZE, self::LINE_HEIGHT, self::HEIGHT, self::WIDTH, self::START_LINE, self::WHITESPACE_BEFORE, self::WHITESPACE_AFTER, self::TAB_SIZE, self::INLINE_MARGIN);
|
||||||
|
$intNonNegValid = new CrayonNonNegIntValidator();
|
||||||
|
foreach ($nonNegs as $name) {
|
||||||
|
$this->get($name)->validator($intNonNegValid);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Getter and Setter ======================================================
|
||||||
|
|
||||||
|
// TODO this needs simplification
|
||||||
|
function set($name, $value = NULL, $replace = FALSE) {
|
||||||
|
// Set associative array of settings
|
||||||
|
if (is_array($name)) {
|
||||||
|
$keys = array_keys($name);
|
||||||
|
foreach ($keys as $key) {
|
||||||
|
if (is_string($key)) {
|
||||||
|
// Associative value
|
||||||
|
$this->set($key, $name[$key], $replace);
|
||||||
|
} else if (is_int($key)) {
|
||||||
|
$setting = $name[$key];
|
||||||
|
$this->set($setting, NULL, $replace);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else if (is_string($name) && !empty($name) && $value !== NULL) {
|
||||||
|
$value = CrayonSettings::validate($name, $value);
|
||||||
|
if ($replace || !$this->is_setting($name)) {
|
||||||
|
// Replace/Create
|
||||||
|
$this->settings[$name] = new CrayonSetting($name, $value);
|
||||||
|
} else {
|
||||||
|
// Update
|
||||||
|
$this->settings[$name]->value($value);
|
||||||
|
}
|
||||||
|
} else if (is_object($name) && get_class($name) == CRAYON_SETTING_CLASS) {
|
||||||
|
$setting = $name; // Semantics
|
||||||
|
if ($replace || !$this->is_setting($setting->name())) {
|
||||||
|
// Replace/Create
|
||||||
|
$this->settings[$setting->name()] = $setting->copy();
|
||||||
|
} else {
|
||||||
|
// Update
|
||||||
|
if ($setting->is_array()) {
|
||||||
|
$this->settings[$setting->name()]->index($setting->index());
|
||||||
|
} else {
|
||||||
|
$this->settings[$setting->name()]->value($setting->value());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function get($name = NULL) {
|
||||||
|
if ($name === NULL) {
|
||||||
|
$copy = array();
|
||||||
|
foreach ($this->settings as $name => $setting) {
|
||||||
|
$copy[$name] = $setting->copy(); // Deep copy
|
||||||
|
}
|
||||||
|
return $copy;
|
||||||
|
} else if (is_string($name)) {
|
||||||
|
if ($this->is_setting($name)) {
|
||||||
|
return $this->settings[$name];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
function val($name = NULL) {
|
||||||
|
if (($setting = self::get($name)) != FALSE) {
|
||||||
|
return $setting->value();
|
||||||
|
} else {
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function val_str($name) {
|
||||||
|
if (($setting = self::get($name)) != FALSE) {
|
||||||
|
$def = $setting->def();
|
||||||
|
$index = $setting->value();
|
||||||
|
if (array_key_exists($index, $def)) {
|
||||||
|
return $def[$index];
|
||||||
|
} else {
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function get_array() {
|
||||||
|
$array = array();
|
||||||
|
foreach ($this->settings as $setting) {
|
||||||
|
$array[$setting->name()] = $setting->value();
|
||||||
|
}
|
||||||
|
return $array;
|
||||||
|
}
|
||||||
|
|
||||||
|
function is_setting($name) {
|
||||||
|
return (is_string($name) && array_key_exists($name, $this->settings));
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Gets default settings, either as associative array of name=>value or CrayonSetting
|
||||||
|
objects */
|
||||||
|
public static function get_defaults($name = NULL, $objects = TRUE) {
|
||||||
|
if (self::$default === NULL) {
|
||||||
|
self::$default = new CrayonSettings();
|
||||||
|
}
|
||||||
|
if ($name === NULL) {
|
||||||
|
// Get all settings
|
||||||
|
if ($objects) {
|
||||||
|
// Return array of objects
|
||||||
|
return self::$default->get();
|
||||||
|
} else {
|
||||||
|
// Return associative array of name=>value
|
||||||
|
$settings = self::$default->get();
|
||||||
|
$defaults = array();
|
||||||
|
foreach ($settings as $setting) {
|
||||||
|
$defaults[$setting->name()] = $setting->value();
|
||||||
|
}
|
||||||
|
return $defaults;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
// Return specific setting
|
||||||
|
if ($objects) {
|
||||||
|
return self::$default->get($name);
|
||||||
|
} else {
|
||||||
|
return self::$default->get($name)->value();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function get_defaults_array() {
|
||||||
|
return self::get_defaults(NULL, FALSE);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Validation =============================================================
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Validates settings coming from an HTML form and also for internal use.
|
||||||
|
* This is used when saving form an HTML form to the db, and also when reading from the db
|
||||||
|
* back into the global settings.
|
||||||
|
* @param string $name
|
||||||
|
* @param mixed $value
|
||||||
|
*/
|
||||||
|
public static function validate($name, $value) {
|
||||||
|
if (!is_string($name)) {
|
||||||
|
return '';
|
||||||
|
}
|
||||||
|
|
||||||
|
// Type-cast to correct value for known settings
|
||||||
|
if (($setting = CrayonGlobalSettings::get($name)) != FALSE) {
|
||||||
|
// Booleans settings that are sent as string are allowed to have "false" == false
|
||||||
|
if (is_bool($setting->def())) {
|
||||||
|
if (is_string($value)) {
|
||||||
|
$value = CrayonUtil::str_to_bool($value);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
// Ensure we don't cast integer settings to 0 because $value doesn't have any numbers in it
|
||||||
|
$value = strval($value);
|
||||||
|
// Only occurs when saving from the form ($_POST values are strings)
|
||||||
|
if ($value == '' || ($cleaned = $setting->sanitize($value, FALSE)) == '') {
|
||||||
|
// The value sent has no integers, change to default
|
||||||
|
$value = $setting->def();
|
||||||
|
} else {
|
||||||
|
// Cleaned value is int
|
||||||
|
$value = $cleaned;
|
||||||
|
}
|
||||||
|
// Cast all other settings as usual
|
||||||
|
if (!settype($value, $setting->type())) {
|
||||||
|
// If we can't cast, then use default value
|
||||||
|
if ($setting->is_array()) {
|
||||||
|
$value = 0; // default index
|
||||||
|
} else {
|
||||||
|
$value = $setting->def();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
// If setting not found, remove value
|
||||||
|
return '';
|
||||||
|
}
|
||||||
|
|
||||||
|
switch ($name) {
|
||||||
|
case CrayonSettings::LOCAL_PATH:
|
||||||
|
$path = parse_url($value, PHP_URL_PATH);
|
||||||
|
// Remove all spaces, prefixed and trailing forward slashes
|
||||||
|
$path = preg_replace('#^/*|/*$|\s*#', '', $path);
|
||||||
|
// Replace backslashes
|
||||||
|
$path = preg_replace('#\\\\#', '/', $path);
|
||||||
|
// Append trailing forward slash
|
||||||
|
if (!empty($path)) {
|
||||||
|
$path .= '/';
|
||||||
|
}
|
||||||
|
return $path;
|
||||||
|
case CrayonSettings::FONT_SIZE:
|
||||||
|
if ($value < 1) {
|
||||||
|
$value = 1;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case CrayonSettings::LINE_HEIGHT:
|
||||||
|
$font_size = CrayonGlobalSettings::val(CrayonSettings::FONT_SIZE);
|
||||||
|
$value = $value >= $font_size ? $value : $font_size;
|
||||||
|
break;
|
||||||
|
case CrayonSettings::THEME:
|
||||||
|
$value = strtolower($value);
|
||||||
|
// XXX validate settings here
|
||||||
|
}
|
||||||
|
|
||||||
|
// If no validation occurs, return value
|
||||||
|
return $value;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Takes an associative array of "smart settings" and regular settings. Smart settings can be used
|
||||||
|
// to configure regular settings quickly.
|
||||||
|
// E.g. 'max_height="20px"' will set 'height="20"', 'height_mode="0", height_unit="0"'
|
||||||
|
public static function smart_settings($settings) {
|
||||||
|
if (!is_array($settings)) {
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
// If a setting is given, it is automatically enabled
|
||||||
|
foreach ($settings as $name => $value) {
|
||||||
|
if (($setting = CrayonGlobalSettings::get($name)) !== FALSE && is_bool($setting->def())) {
|
||||||
|
$value = CrayonUtil::str_to_bool($value);
|
||||||
|
}
|
||||||
|
|
||||||
|
// XXX removed height and width, since it wasn't using the global settings for mode if only height was provided
|
||||||
|
if ($name == 'min-height' || $name == 'max-height' /* || $name == 'height'*/) {
|
||||||
|
self::smart_hw($name, CrayonSettings::HEIGHT_SET, CrayonSettings::HEIGHT_MODE, CrayonSettings::HEIGHT_UNIT, $settings);
|
||||||
|
} else if ($name == 'min-width' || $name == 'max-width' /* || $name == 'width'*/) {
|
||||||
|
self::smart_hw($name, CrayonSettings::WIDTH_SET, CrayonSettings::WIDTH_MODE, CrayonSettings::WIDTH_UNIT, $settings);
|
||||||
|
} else if ($name == CrayonSettings::FONT_SIZE) {
|
||||||
|
$settings[CrayonSettings::FONT_SIZE_ENABLE] = TRUE;
|
||||||
|
} else if ($name == CrayonSettings::TOP_MARGIN) {
|
||||||
|
$settings[CrayonSettings::TOP_SET] = TRUE;
|
||||||
|
} else if ($name == CrayonSettings::LEFT_MARGIN) {
|
||||||
|
$settings[CrayonSettings::LEFT_SET] = TRUE;
|
||||||
|
} else if ($name == CrayonSettings::BOTTOM_MARGIN) {
|
||||||
|
$settings[CrayonSettings::BOTTOM_SET] = TRUE;
|
||||||
|
} else if ($name == CrayonSettings::RIGHT_MARGIN) {
|
||||||
|
$settings[CrayonSettings::RIGHT_SET] = TRUE;
|
||||||
|
} else if ($name == CrayonSettings::ERROR_MSG) {
|
||||||
|
$settings[CrayonSettings::ERROR_MSG_SHOW] = TRUE;
|
||||||
|
} else if ($name == CrayonSettings::H_ALIGN) {
|
||||||
|
$settings[CrayonSettings::FLOAT_ENABLE] = TRUE;
|
||||||
|
$value = CrayonUtil::tlower($value);
|
||||||
|
$values = array('none' => 0, 'left' => 1, 'center' => 2, 'right' => 3);
|
||||||
|
if (array_key_exists($value, $values)) {
|
||||||
|
$settings[CrayonSettings::H_ALIGN] = $values[$value];
|
||||||
|
}
|
||||||
|
} else if ($name == CrayonSettings::SHOW_LANG) {
|
||||||
|
$value = CrayonUtil::tlower($value);
|
||||||
|
$values = array('found' => 0, 'always' => 1, 'true' => 1, 'never' => 2, 'false' => 2);
|
||||||
|
if (array_key_exists($value, $values)) {
|
||||||
|
$settings[CrayonSettings::SHOW_LANG] = $values[$value];
|
||||||
|
}
|
||||||
|
} else if ($name == CrayonSettings::TOOLBAR) {
|
||||||
|
if (CrayonUtil::tlower($value) == 'always') {
|
||||||
|
$settings[CrayonSettings::TOOLBAR] = 1;
|
||||||
|
} else if (CrayonUtil::str_to_bool($value) === FALSE) {
|
||||||
|
$settings[CrayonSettings::TOOLBAR] = 2;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return $settings;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Used for height and width smart settings, I couldn't bear to copy paste code twice...
|
||||||
|
private static function smart_hw($name, $set, $mode, $unit, &$settings) {
|
||||||
|
if (!is_string($name) || !is_string($set) || !is_string($mode) || !is_string($unit) || !is_array($settings)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
$settings[$set] = TRUE;
|
||||||
|
if (strpos($name, 'max-') !== FALSE) {
|
||||||
|
$settings[$mode] = 0;
|
||||||
|
} else if (strpos($name, 'min-') !== FALSE) {
|
||||||
|
$settings[$mode] = 1;
|
||||||
|
} else {
|
||||||
|
$settings[$mode] = 2;
|
||||||
|
}
|
||||||
|
preg_match('#(\d+)\s*([^\s]*)#', $settings[$name], $match);
|
||||||
|
if (count($match) == 3) {
|
||||||
|
$name = str_replace(array('max-', 'min-'), '', $name);
|
||||||
|
$settings[$name] = $match[1];
|
||||||
|
switch (strtolower($match[2])) {
|
||||||
|
case 'px':
|
||||||
|
$settings[$unit] = 0;
|
||||||
|
break;
|
||||||
|
case '%':
|
||||||
|
$settings[$unit] = 1;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Stores global/static copy of CrayonSettings loaded from db.
|
||||||
|
* These settings can be overriden by individual Crayons.
|
||||||
|
* Also manages global site settings and paths.
|
||||||
|
*/
|
||||||
|
class CrayonGlobalSettings {
|
||||||
|
// The global settings stored as a CrayonSettings object.
|
||||||
|
private static $global = NULL;
|
||||||
|
/* These are used to load local files reliably and prevent scripts like PHP from executing
|
||||||
|
when attempting to load their code. */
|
||||||
|
// The URL of the site (eg. http://localhost/example/)
|
||||||
|
private static $site_http = '';
|
||||||
|
// The absolute root directory of the site (eg. /User/example/)
|
||||||
|
private static $site_path = '';
|
||||||
|
// The absolute root directory of the plugins (eg. /User/example/plugins)
|
||||||
|
private static $plugin_path = '';
|
||||||
|
private static $upload_path = '';
|
||||||
|
private static $upload_url = '';
|
||||||
|
private static $mkdir = NULL;
|
||||||
|
|
||||||
|
private function __construct() {
|
||||||
|
}
|
||||||
|
|
||||||
|
private static function init() {
|
||||||
|
if (self::$global === NULL) {
|
||||||
|
self::$global = new CrayonSettings();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function get($name = NULL) {
|
||||||
|
self::init();
|
||||||
|
return self::$global->get($name);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function get_array() {
|
||||||
|
self::init();
|
||||||
|
return self::$global->get_array();
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function get_obj() {
|
||||||
|
self::init();
|
||||||
|
return self::$global->copy();
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function val($name = NULL) {
|
||||||
|
self::init();
|
||||||
|
return self::$global->val($name);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function val_str($name = NULL) {
|
||||||
|
self::init();
|
||||||
|
return self::$global->val_str($name);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function has_changed($input, $setting, $value) {
|
||||||
|
return $input == $setting && $value != CrayonGlobalSettings::val($setting);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function set($name, $value = NULL, $replace = FALSE) {
|
||||||
|
self::init();
|
||||||
|
self::$global->set($name, $value, $replace);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function site_url($site_http = NULL) {
|
||||||
|
if ($site_http === NULL) {
|
||||||
|
return self::$site_http;
|
||||||
|
} else {
|
||||||
|
self::$site_http = CrayonUtil::url_slash($site_http);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function site_path($site_path = NULL) {
|
||||||
|
if ($site_path === NULL) {
|
||||||
|
return self::$site_path;
|
||||||
|
} else {
|
||||||
|
self::$site_path = CrayonUtil::path_slash($site_path);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function plugin_path($plugin_path = NULL) {
|
||||||
|
if ($plugin_path === NULL) {
|
||||||
|
return self::$plugin_path;
|
||||||
|
} else {
|
||||||
|
self::$plugin_path = CrayonUtil::path_slash($plugin_path);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function upload_path($upload_path = NULL) {
|
||||||
|
if ($upload_path === NULL) {
|
||||||
|
return self::$upload_path;
|
||||||
|
} else {
|
||||||
|
self::$upload_path = CrayonUtil::path_slash($upload_path);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function upload_url($upload_url = NULL) {
|
||||||
|
if ($upload_url === NULL) {
|
||||||
|
return self::$upload_url;
|
||||||
|
} else {
|
||||||
|
self::$upload_url = CrayonUtil::url_slash($upload_url);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function set_mkdir($mkdir = NULL) {
|
||||||
|
if ($mkdir === NULL) {
|
||||||
|
return self::$mkdir;
|
||||||
|
} else {
|
||||||
|
self::$mkdir = $mkdir;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function mkdir($dir = NULL) {
|
||||||
|
if (self::$mkdir) {
|
||||||
|
call_user_func(self::$mkdir, $dir);
|
||||||
|
} else {
|
||||||
|
@mkdir($dir, 0777, TRUE);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
$INT = new CrayonValidator('#\d+#');
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Validation class.
|
||||||
|
*/
|
||||||
|
class CrayonValidator {
|
||||||
|
private $pattern = '#*#msi';
|
||||||
|
|
||||||
|
public function __construct($pattern) {
|
||||||
|
$this->pattern($pattern);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function pattern($pattern) {
|
||||||
|
if ($pattern === NULL) {
|
||||||
|
return $pattern;
|
||||||
|
} else {
|
||||||
|
$this->pattern = $pattern;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public function validate($str) {
|
||||||
|
return preg_match($this->pattern, $str) !== FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function sanitize($str) {
|
||||||
|
preg_match_all($this->pattern, $str, $matches);
|
||||||
|
$result = '';
|
||||||
|
foreach ($matches as $match) {
|
||||||
|
$result .= $match[0];
|
||||||
|
}
|
||||||
|
return $result;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class CrayonNonNegIntValidator extends CrayonValidator {
|
||||||
|
public function __construct() {
|
||||||
|
parent::__construct('#\d+#');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class CrayonIntValidator extends CrayonValidator {
|
||||||
|
public function __construct() {
|
||||||
|
parent::__construct('#-?\d+#');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Individual setting.
|
||||||
|
* Can store boolean, string, dropdown (with array of strings), etc.
|
||||||
|
*/
|
||||||
|
class CrayonSetting {
|
||||||
|
private $name = '';
|
||||||
|
/* The type of variables that can be set as the value.
|
||||||
|
* For dropdown settings, value is int, even though value() will return a string. */
|
||||||
|
private $type = NULL;
|
||||||
|
private $default = NULL; // stores string array for dropdown settings
|
||||||
|
|
||||||
|
private $value = NULL; // stores index int for dropdown settings
|
||||||
|
|
||||||
|
private $is_array = FALSE; // only TRUE for dropdown settings
|
||||||
|
private $locked = FALSE;
|
||||||
|
|
||||||
|
private $validator = NULL;
|
||||||
|
|
||||||
|
|
||||||
|
public function __construct($name, $default = '', $value = NULL, $locked = NULL) {
|
||||||
|
$this->name($name);
|
||||||
|
if ($default !== NULL) {
|
||||||
|
$this->def($default); // Perform first to set type
|
||||||
|
}
|
||||||
|
if ($value !== NULL) {
|
||||||
|
$this->value($value);
|
||||||
|
}
|
||||||
|
if ($locked !== NULL) {
|
||||||
|
$this->locked($locked);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function __tostring() {
|
||||||
|
return $this->name;
|
||||||
|
}
|
||||||
|
|
||||||
|
function copy() {
|
||||||
|
return new CrayonSetting($this->name, $this->default, $this->value, $this->locked);
|
||||||
|
}
|
||||||
|
|
||||||
|
function name($name = NULL) {
|
||||||
|
if (!CrayonUtil::str($this->name, $name)) {
|
||||||
|
return $this->name;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function type() {
|
||||||
|
return $this->type;
|
||||||
|
}
|
||||||
|
|
||||||
|
function is_array() {
|
||||||
|
return $this->is_array;
|
||||||
|
}
|
||||||
|
|
||||||
|
function locked($locked = NULL) {
|
||||||
|
if ($locked === NULL) {
|
||||||
|
return $this->locked;
|
||||||
|
} else {
|
||||||
|
$this->locked = ($locked == TRUE);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets/gets value;
|
||||||
|
* Value is index (int) in default value (array) for dropdown settings.
|
||||||
|
* value($value) is alias for index($index) if dropdown setting.
|
||||||
|
* value() returns string value at current index for dropdown settings.
|
||||||
|
* @param $value
|
||||||
|
*/
|
||||||
|
function value($value = NULL) {
|
||||||
|
if ($value === NULL) {
|
||||||
|
/*if ($this->is_array) {
|
||||||
|
return $this->default[$this->value]; // value at index
|
||||||
|
} else */
|
||||||
|
if ($this->value !== NULL) {
|
||||||
|
return $this->value;
|
||||||
|
} else {
|
||||||
|
if ($this->is_array) {
|
||||||
|
return 0;
|
||||||
|
} else {
|
||||||
|
return $this->default;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else if ($this->locked === FALSE) {
|
||||||
|
if ($this->is_array) {
|
||||||
|
$this->index($value); // $value is index
|
||||||
|
} else {
|
||||||
|
settype($value, $this->type); // Type cast
|
||||||
|
$this->value = $value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function array_value() {
|
||||||
|
if ($this->is_array) {
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
return $this->default[$this->value];
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets/gets default value.
|
||||||
|
* For dropdown settings, default value is array of all possible value strings.
|
||||||
|
* @param $default
|
||||||
|
*/
|
||||||
|
function def($default = NULL) {
|
||||||
|
// Only allow default to be set once
|
||||||
|
|
||||||
|
if ($this->type === NULL && $default !== NULL) {
|
||||||
|
// For dropdown settings
|
||||||
|
|
||||||
|
if (is_array($default)) { // The only time we don't use $this->is_array
|
||||||
|
|
||||||
|
// If empty, set to blank array
|
||||||
|
|
||||||
|
if (empty($default)) {
|
||||||
|
$default = array('');
|
||||||
|
} else {
|
||||||
|
// Ensure all values are unique strings
|
||||||
|
|
||||||
|
$default = CrayonUtil::array_unique_str($default);
|
||||||
|
}
|
||||||
|
$this->value = 0; // initial index
|
||||||
|
|
||||||
|
$this->is_array = TRUE;
|
||||||
|
$this->type = gettype(0); // Type is int (index)
|
||||||
|
|
||||||
|
} else {
|
||||||
|
$this->is_array = FALSE;
|
||||||
|
$this->type = gettype($default);
|
||||||
|
if (is_int($default)) {
|
||||||
|
$this->validator(new CrayonIntValidator());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$this->default = $default;
|
||||||
|
} else {
|
||||||
|
return $this->default;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets/gets index.
|
||||||
|
* @param int|string $index
|
||||||
|
* @return FALSE if not dropdown setting
|
||||||
|
*/
|
||||||
|
function index($index = NULL) {
|
||||||
|
if (!$this->is_array) {
|
||||||
|
return FALSE;
|
||||||
|
} else if ($index === NULL) {
|
||||||
|
return $this->value; // return current index
|
||||||
|
} else {
|
||||||
|
if (!is_int($index)) {
|
||||||
|
// Ensure $value is int for index
|
||||||
|
$index = intval($index);
|
||||||
|
}
|
||||||
|
// Validate index
|
||||||
|
if ($index < 0 || $index > count($this->default) - 1) {
|
||||||
|
$index = 0;
|
||||||
|
}
|
||||||
|
$this->value = $index;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Finds the index of a string in an array setting
|
||||||
|
*/
|
||||||
|
function find_index($str) {
|
||||||
|
if (!$this->is_array || is_string($str)) {
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
for ($i = 0; $i < count($this->default); $i++) {
|
||||||
|
if ($this->default[$i] == $str) {
|
||||||
|
return $i;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
function validator($validator) {
|
||||||
|
if ($validator === NULL) {
|
||||||
|
return $this->validator;
|
||||||
|
} else {
|
||||||
|
$this->validator = $validator;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function sanitize($str) {
|
||||||
|
if ($this->validator != NULL) {
|
||||||
|
return $this->validator->sanitize($str);
|
||||||
|
} else {
|
||||||
|
return $str;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
?>
|
1273
crayon_settings_wp.class.php
Normal file
45
crayon_themes.class.php
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
<?php
|
||||||
|
require_once ('global.php');
|
||||||
|
require_once (CRAYON_RESOURCE_PHP);
|
||||||
|
|
||||||
|
/* Manages themes once they are loaded. */
|
||||||
|
class CrayonThemes extends CrayonUserResourceCollection {
|
||||||
|
// Properties and Constants ===============================================
|
||||||
|
|
||||||
|
const DEFAULT_THEME = 'classic';
|
||||||
|
const DEFAULT_THEME_NAME = 'Classic';
|
||||||
|
const CSS_PREFIX = '.crayon-theme-';
|
||||||
|
|
||||||
|
private $printed_themes = array();
|
||||||
|
|
||||||
|
// Methods ================================================================
|
||||||
|
|
||||||
|
function __construct() {
|
||||||
|
$this->set_default(self::DEFAULT_THEME, self::DEFAULT_THEME_NAME);
|
||||||
|
$this->directory(CRAYON_THEME_PATH);
|
||||||
|
$this->relative_directory(CRAYON_THEME_DIR);
|
||||||
|
$this->extension('css');
|
||||||
|
|
||||||
|
CrayonLog::debug("Setting theme directories");
|
||||||
|
$upload = CrayonGlobalSettings::upload_path();
|
||||||
|
if ($upload) {
|
||||||
|
$this->user_directory($upload . CRAYON_THEME_DIR);
|
||||||
|
if (!is_dir($this->user_directory())) {
|
||||||
|
CrayonGlobalSettings::mkdir($this->user_directory());
|
||||||
|
CrayonLog::debug($this->user_directory(), "THEME USER DIR");
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
CrayonLog::syslog("Upload directory is empty: " . $upload . " cannot load themes.");
|
||||||
|
}
|
||||||
|
CrayonLog::debug($this->directory());
|
||||||
|
CrayonLog::debug($this->user_directory());
|
||||||
|
}
|
||||||
|
|
||||||
|
// XXX Override
|
||||||
|
public function filename($id, $user = NULL) {
|
||||||
|
return CrayonUtil::path_slash($id) . parent::filename($id, $user);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
?>
|
1340
crayon_wp.class.php
Normal file
BIN
css/images/crayon_logo.png
Normal file
After Width: | Height: | Size: 12 KiB |
BIN
css/images/crayon_logo_square.png
Normal file
After Width: | Height: | Size: 11 KiB |
BIN
css/images/crayon_tinymce.png
Normal file
After Width: | Height: | Size: 2.2 KiB |
BIN
css/images/docs.png
Normal file
After Width: | Height: | Size: 1.5 KiB |
BIN
css/images/donate.png
Normal file
After Width: | Height: | Size: 3.7 KiB |
BIN
css/images/facebook.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
css/images/github.png
Normal file
After Width: | Height: | Size: 2.4 KiB |
BIN
css/images/google.png
Normal file
After Width: | Height: | Size: 1.6 KiB |
BIN
css/images/theme_editor.png
Normal file
After Width: | Height: | Size: 4.0 KiB |
BIN
css/images/thumb_horizontal.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
css/images/thumb_vertical.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
css/images/toolbar/buttons.png
Normal file
After Width: | Height: | Size: 2.2 KiB |
BIN
css/images/toolbar/buttons@2x.png
Normal file
After Width: | Height: | Size: 3.1 KiB |
BIN
css/images/track_horizontal.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
css/images/track_vertical.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
css/images/twitter.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
css/images/wordpress-blue.png
Normal file
After Width: | Height: | Size: 1.7 KiB |
1
css/min/crayon.min.css
vendored
Normal file
7
css/minify.sh
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
BASEDIR=$(dirname $0)
|
||||||
|
cd $BASEDIR
|
||||||
|
|
||||||
|
source ../util/minify.sh
|
||||||
|
|
||||||
|
minify $COLORBOX_PATH/colorbox.css $INPUT_PATH/admin_style.css $INPUT_PATH/crayon_style.css $INPUT_PATH/global_style.css $OUTPUT_PATH/crayon.min.css
|
285
css/src/admin_style.css
Normal file
@ -0,0 +1,285 @@
|
|||||||
|
#crayon-log-wrapper {
|
||||||
|
/*width: 100%;*/
|
||||||
|
}
|
||||||
|
|
||||||
|
#crayon-main-wrap .form-table th {
|
||||||
|
width: 100px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#crayon-log {
|
||||||
|
display: none;
|
||||||
|
max-height: 200px;
|
||||||
|
/*width: 100%;
|
||||||
|
/*resize: vertical;*/
|
||||||
|
border-color: #DFDFDF;
|
||||||
|
background-color: white;
|
||||||
|
border-width: 1px;
|
||||||
|
border-style: solid;
|
||||||
|
border-radius: 4px;
|
||||||
|
-moz-border-radius: 4px;
|
||||||
|
-webkit-border-radius: 4px;
|
||||||
|
margin: 1px;
|
||||||
|
padding: 3px;
|
||||||
|
overflow: auto;
|
||||||
|
white-space: pre;
|
||||||
|
margin-bottom: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-span,.crayon-span-5,.crayon-span-10,.crayon-span-50,.crayon-span-100,.crayon-span-110 {
|
||||||
|
line-height: 24px;
|
||||||
|
display: inline-block;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-span-5 {
|
||||||
|
min-width: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-span-10 {
|
||||||
|
min-width: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-span-50 {
|
||||||
|
min-width: 50px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-span-100 {
|
||||||
|
min-width: 100px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-span-110 {
|
||||||
|
min-width: 117px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-span-margin {
|
||||||
|
margin-left: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#height_mode, #width_mode {
|
||||||
|
min-width: 65px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-error {
|
||||||
|
color: #F00;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-success {
|
||||||
|
color: #00F;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-warning {
|
||||||
|
color: #FF8000;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-help {
|
||||||
|
min-height: 30px;
|
||||||
|
padding: 5px 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-help .crayon-help-close,
|
||||||
|
.crayon-help .crayon-help-close:active,
|
||||||
|
.crayon-help .crayon-help-close:hover {
|
||||||
|
text-decoration: none;
|
||||||
|
float: right;
|
||||||
|
color: #000;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-help span,
|
||||||
|
.crayon-help a {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
font-size: 12px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#crayon-log-text {
|
||||||
|
font: 11px/13px Monaco, 'MonacoRegular', 'Courier New', monospace;
|
||||||
|
}
|
||||||
|
|
||||||
|
#crayon-log-controls {
|
||||||
|
float: left;
|
||||||
|
margin-right: 5px;
|
||||||
|
/*margin: 5px 0px;*/
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-table {
|
||||||
|
font-size: 12px;
|
||||||
|
border: 1px solid #999;
|
||||||
|
padding: 0;
|
||||||
|
margin: 0;
|
||||||
|
margin-top: 12px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-table td {
|
||||||
|
vertical-align: top;
|
||||||
|
border-bottom: 1px solid #AAA;
|
||||||
|
padding: 0px 6px;
|
||||||
|
margin: 0;
|
||||||
|
background: #EEE;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-table-light td {
|
||||||
|
background: #F8F8F8;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-table-header td {
|
||||||
|
font-weight: bold;
|
||||||
|
background: #CCC;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-table-last td,
|
||||||
|
.crayon-table tr:last-child td {
|
||||||
|
border: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*#lang-info {
|
||||||
|
display: none;
|
||||||
|
}*/
|
||||||
|
|
||||||
|
#lang-info div {
|
||||||
|
padding: 5px 0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-table .not-parsed {
|
||||||
|
color: #F00;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-table .parsed-with-errors {
|
||||||
|
color: #FF9900;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-table .successfully-parsed {
|
||||||
|
color: #77A000;
|
||||||
|
}
|
||||||
|
|
||||||
|
#crayon-live-preview,
|
||||||
|
#crayon-log-wrapper {
|
||||||
|
padding: 0px;
|
||||||
|
width: 100%;
|
||||||
|
float: left;
|
||||||
|
clear: both;
|
||||||
|
}
|
||||||
|
|
||||||
|
#crayon-live-preview {
|
||||||
|
float: none;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#crayon-logo {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
#crayon-info,
|
||||||
|
#crayon-info td {
|
||||||
|
border: none;
|
||||||
|
padding: 0 5px;
|
||||||
|
margin: 0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-admin-button {
|
||||||
|
display: inline-block;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
#crayon-subsection-langs-info {
|
||||||
|
margin-top: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#crayon-theme-editor-admin-buttons {
|
||||||
|
display: inline;
|
||||||
|
}
|
||||||
|
|
||||||
|
#crayon-theme-editor-admin-buttons .crayon-admin-button {
|
||||||
|
margin-left: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#crayon-theme-info {
|
||||||
|
display: table;
|
||||||
|
padding: 0;
|
||||||
|
margin: 0;
|
||||||
|
margin-top: 5px;
|
||||||
|
}
|
||||||
|
#crayon-theme-info > div {
|
||||||
|
display: table-cell;
|
||||||
|
vertical-align: middle;
|
||||||
|
}
|
||||||
|
#crayon-theme-info .content * {
|
||||||
|
float: left;
|
||||||
|
}
|
||||||
|
#crayon-theme-info .field {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
#crayon-theme-info .field,
|
||||||
|
#crayon-theme-info .value {
|
||||||
|
margin-left: 5px;
|
||||||
|
}
|
||||||
|
#crayon-theme-info .description.value {
|
||||||
|
font-style: italic;
|
||||||
|
color: #999;
|
||||||
|
}
|
||||||
|
#crayon-theme-info .type {
|
||||||
|
text-align: center;
|
||||||
|
min-width: 120px;
|
||||||
|
font-weight: bold;
|
||||||
|
border-right: 1px solid #ccc;
|
||||||
|
padding-right: 5px;
|
||||||
|
}
|
||||||
|
#crayon-theme-info .type.stock {
|
||||||
|
color: #666;
|
||||||
|
}
|
||||||
|
#crayon-theme-info .type.user {
|
||||||
|
color: #5b9a00;
|
||||||
|
}
|
||||||
|
|
||||||
|
#crayon-editor-table td {
|
||||||
|
vertical-align: top;
|
||||||
|
}
|
||||||
|
|
||||||
|
.small-icon {
|
||||||
|
width: 24px;
|
||||||
|
height: 24px;
|
||||||
|
display: inline-block;
|
||||||
|
margin: 5px 5px 0 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#twitter-icon {
|
||||||
|
background: url(../images/twitter.png);
|
||||||
|
}
|
||||||
|
#gmail-icon {
|
||||||
|
background: url(../images/google.png);
|
||||||
|
}
|
||||||
|
#docs-icon {
|
||||||
|
background: url(../images/docs.png);
|
||||||
|
}
|
||||||
|
#git-icon {
|
||||||
|
background: url(../images/github.png);
|
||||||
|
}
|
||||||
|
#wp-icon {
|
||||||
|
background: url(../images/wordpress-blue.png);
|
||||||
|
}
|
||||||
|
|
||||||
|
#donate-icon {
|
||||||
|
background: url(../images/donate.png);
|
||||||
|
width: 75px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#crayon-donate,
|
||||||
|
#crayon-donate input {
|
||||||
|
margin: 0;
|
||||||
|
display: inline;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#crayon-theme-editor-info a {
|
||||||
|
text-decoration: none !important;
|
||||||
|
font-style: italic !important;
|
||||||
|
color: #666 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#crayon-main-wrap .form-table .note {
|
||||||
|
font-style: italic;
|
||||||
|
color: #999;
|
||||||
|
}
|
||||||
|
|
||||||
|
#crayon-change-code-text {
|
||||||
|
width: 400px;
|
||||||
|
height: 300px;
|
||||||
|
}
|
530
css/src/crayon_style.css
Normal file
@ -0,0 +1,530 @@
|
|||||||
|
/*
|
||||||
|
Crayon Syntax Highlighter Structure Style Sheet
|
||||||
|
|
||||||
|
- This style sheet is used to structure a Crayon's dimensions and visibility, but does not contain any details regarding
|
||||||
|
coloring etc.
|
||||||
|
- Attributes, where possible, are kept flexible such that Themes can customise them.
|
||||||
|
- Themes are used to add coloring to the Crayon and the syntax highlighting itself.
|
||||||
|
- Themes can be considered as layers on top of this style sheet.
|
||||||
|
- Several attributes are marked !important where they are required to remain unchanged by CSS precedence,
|
||||||
|
which may occur from conflicts with certain Wordpress Themes.
|
||||||
|
- The attributes in Themes are generally all marked !important to ensure styles are not altered by precedence.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* General ========================= */
|
||||||
|
.crayon-syntax {
|
||||||
|
overflow: hidden !important;
|
||||||
|
position: relative !important;
|
||||||
|
direction: ltr;
|
||||||
|
text-align: left;
|
||||||
|
box-sizing: border-box;
|
||||||
|
direction: ltr !important;
|
||||||
|
-moz-box-sizing: border-box;
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
-webkit-text-size-adjust: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-syntax div {
|
||||||
|
/* Need !important? */
|
||||||
|
background: none;
|
||||||
|
border: none;
|
||||||
|
padding: 0px;
|
||||||
|
margin: 0px;
|
||||||
|
text-align: left;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-syntax.crayon-loading {
|
||||||
|
visibility: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-syntax,
|
||||||
|
.crayon-syntax .crayon-main,
|
||||||
|
.crayon-syntax .crayon-toolbar,
|
||||||
|
.crayon-syntax .crayon-info,
|
||||||
|
.crayon-syntax .crayon-plain,
|
||||||
|
.crayon-syntax .crayon-code {
|
||||||
|
/* Dimensions of code */
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-syntax .crayon-main,
|
||||||
|
.crayon-syntax .crayon-plain {
|
||||||
|
/* TODO a bug in IE8 causes max-height and overflow:auto to set max-height = height
|
||||||
|
http://edskes.net/ie8overflowandexpandingboxbugs.htm */
|
||||||
|
overflow: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-syntax,
|
||||||
|
.crayon-syntax .crayon-main,
|
||||||
|
.crayon-syntax .crayon-plain,
|
||||||
|
.crayon-syntax .crayon-table {
|
||||||
|
padding: 0px;
|
||||||
|
margin: 0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-syntax-inline {
|
||||||
|
margin: 0 2px;
|
||||||
|
padding: 0 2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-syntax .crayon-table {
|
||||||
|
border: none !important;
|
||||||
|
background: none !important;
|
||||||
|
padding: 0px !important;
|
||||||
|
margin-top: 0px !important;
|
||||||
|
margin-right: 0px !important;
|
||||||
|
margin-bottom: 0px !important;
|
||||||
|
width: auto !important;
|
||||||
|
border-spacing: 0 !important;
|
||||||
|
border-collapse: collapse !important;
|
||||||
|
table-layout: auto !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-syntax .crayon-table td,
|
||||||
|
.crayon-syntax .crayon-table tr {
|
||||||
|
padding: 0 !important;
|
||||||
|
border: none !important;
|
||||||
|
background: none;
|
||||||
|
vertical-align: top !important;
|
||||||
|
margin: 0 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-syntax .crayon-invisible {
|
||||||
|
display: none !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-plain-tag {
|
||||||
|
margin-bottom: 12px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* End General ===================== */
|
||||||
|
|
||||||
|
/* Popup ========================= */
|
||||||
|
.crayon-popup {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-popup .crayon-plain {
|
||||||
|
display: block !important;
|
||||||
|
width: 100% !important;
|
||||||
|
height: 100% !important;
|
||||||
|
opacity: 100 !important;
|
||||||
|
position: relative !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-popup-window {
|
||||||
|
background: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* End Popup ========================= */
|
||||||
|
|
||||||
|
/* Line Numbers ==================== */
|
||||||
|
.crayon-syntax .crayon-num {
|
||||||
|
text-align: center;
|
||||||
|
padding: 0 5px;
|
||||||
|
margin: 0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* End Line Numbers ================ */
|
||||||
|
|
||||||
|
/* Toolbar & Info ================== */
|
||||||
|
.crayon-syntax .crayon-toolbar {
|
||||||
|
position: relative;
|
||||||
|
overflow: hidden;
|
||||||
|
z-index: 4;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-syntax .crayon-info {
|
||||||
|
position: absolute;
|
||||||
|
overflow: hidden;
|
||||||
|
display: none;
|
||||||
|
z-index: 3;
|
||||||
|
padding: 0px;
|
||||||
|
/* Must be able to expand! */
|
||||||
|
min-height: 18px;
|
||||||
|
line-height: 18px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-syntax .crayon-info div {
|
||||||
|
padding: 2px !important;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*.crayon-syntax .crayon-toolbar,*/
|
||||||
|
/*.crayon-syntax .crayon-toolbar * {*/
|
||||||
|
/*height: 18px;*/
|
||||||
|
/*line-height: 18px;*/
|
||||||
|
/*padding: 0px;*/
|
||||||
|
/*}*/
|
||||||
|
|
||||||
|
.crayon-syntax .crayon-toolbar span {
|
||||||
|
padding: 0 4px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-syntax .crayon-toolbar .crayon-button {
|
||||||
|
display: inline;
|
||||||
|
float: left !important;
|
||||||
|
position: relative;
|
||||||
|
width: 24px;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
/*height: 16px;*/
|
||||||
|
line-height: 15px;
|
||||||
|
/*padding: 0px 2px !important;*/
|
||||||
|
border: none;
|
||||||
|
/*border-radius: 5px;
|
||||||
|
-webkit-border-radius: 5px;
|
||||||
|
-moz-border-radius: 5px;*/
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-toolbar .crayon-button,
|
||||||
|
.crayon-toolbar .crayon-button:hover,
|
||||||
|
.crayon-toolbar .crayon-button.crayon-pressed:hover {
|
||||||
|
background-position: 0px center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-toolbar .crayon-button.crayon-pressed,
|
||||||
|
.crayon-toolbar .crayon-button:active,
|
||||||
|
.crayon-toolbar .crayon-button.crayon-pressed:active {
|
||||||
|
background-position: -24px 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-toolbar .crayon-button.crayon-popup-button .crayon-button-icon,
|
||||||
|
.crayon-toolbar .crayon-button.crayon-popup-button:hover .crayon-button-icon,
|
||||||
|
.crayon-toolbar .crayon-button.crayon-popup-button.crayon-pressed:hover .crayon-button-icon {
|
||||||
|
background-position: 0 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-toolbar .crayon-button.crayon-copy-button .crayon-button-icon,
|
||||||
|
.crayon-toolbar .crayon-button.crayon-copy-button:hover .crayon-button-icon,
|
||||||
|
.crayon-toolbar .crayon-button.crayon-copy-button.crayon-pressed:hover .crayon-button-icon {
|
||||||
|
background-position: 0 -16px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-toolbar .crayon-button.crayon-nums-button .crayon-button-icon,
|
||||||
|
.crayon-toolbar .crayon-button.crayon-nums-button:hover .crayon-button-icon,
|
||||||
|
.crayon-toolbar .crayon-button.crayon-nums-button.crayon-pressed:hover .crayon-button-icon {
|
||||||
|
background-position: 0 -32px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-toolbar .crayon-button.crayon-plain-button .crayon-button-icon,
|
||||||
|
.crayon-toolbar .crayon-button.crayon-plain-button:hover .crayon-button-icon,
|
||||||
|
.crayon-toolbar .crayon-button.crayon-plain-button.crayon-pressed:hover .crayon-button-icon {
|
||||||
|
background-position: 0 -48px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-toolbar .crayon-button.crayon-mixed-button .crayon-button-icon,
|
||||||
|
.crayon-toolbar .crayon-button.crayon-mixed-button:hover .crayon-button-icon,
|
||||||
|
.crayon-toolbar .crayon-button.crayon-mixed-button.crayon-pressed:hover .crayon-button-icon {
|
||||||
|
background-position: 0 -64px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-toolbar .crayon-button.crayon-minimize .crayon-button-icon {
|
||||||
|
background-position: 0 -80px;
|
||||||
|
background-color: transparent !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-toolbar .crayon-button.crayon-expand-button .crayon-button-icon,
|
||||||
|
.crayon-toolbar .crayon-button.crayon-expand-button:hover .crayon-button-icon,
|
||||||
|
.crayon-toolbar .crayon-button.crayon-expand-button.crayon-pressed:hover .crayon-button-icon {
|
||||||
|
background-position: 0 -96px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-toolbar .crayon-button.crayon-wrap-button .crayon-button-icon,
|
||||||
|
.crayon-toolbar .crayon-button.crayon-wrap-button:hover .crayon-button-icon,
|
||||||
|
.crayon-toolbar .crayon-button.crayon-wrap-button.crayon-pressed:hover .crayon-button-icon {
|
||||||
|
background-position: 0 -112px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* -- */
|
||||||
|
|
||||||
|
.crayon-toolbar .crayon-button.crayon-popup-button.crayon-pressed .crayon-button-icon,
|
||||||
|
.crayon-toolbar .crayon-button.crayon-popup-button:active .crayon-button-icon,
|
||||||
|
.crayon-toolbar .crayon-button.crayon-popup-button.crayon-pressed:active .crayon-button-icon {
|
||||||
|
background-position: -24px 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-toolbar .crayon-button.crayon-copy-button.crayon-pressed .crayon-button-icon,
|
||||||
|
.crayon-toolbar .crayon-button.crayon-copy-button:active .crayon-button-icon,
|
||||||
|
.crayon-toolbar .crayon-button.crayon-copy-button.crayon-pressed:active .crayon-button-icon {
|
||||||
|
background-position: -24px -16px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-toolbar .crayon-button.crayon-nums-button.crayon-pressed .crayon-button-icon,
|
||||||
|
.crayon-toolbar .crayon-button.crayon-nums-button:active .crayon-button-icon,
|
||||||
|
.crayon-toolbar .crayon-button.crayon-nums-button.crayon-pressed:active .crayon-button-icon {
|
||||||
|
background-position: -24px -32px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-toolbar .crayon-button.crayon-plain-button.crayon-pressed .crayon-button-icon,
|
||||||
|
.crayon-toolbar .crayon-button.crayon-plain-button:active .crayon-button-icon,
|
||||||
|
.crayon-toolbar .crayon-button.crayon-plain-button.crayon-pressed:active .crayon-button-icon {
|
||||||
|
background-position: -24px -48px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-toolbar .crayon-button.crayon-mixed-button.crayon-pressed .crayon-button-icon,
|
||||||
|
.crayon-toolbar .crayon-button.crayon-mixed-button:active .crayon-button-icon,
|
||||||
|
.crayon-toolbar .crayon-button.crayon-mixed-button.crayon-pressed:active .crayon-button-icon {
|
||||||
|
background-position: -24px -64px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-toolbar .crayon-button.crayon-minimize .crayon-button-icon {
|
||||||
|
background-position: -24px -80px;
|
||||||
|
background-color: transparent !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-toolbar .crayon-button.crayon-expand-button.crayon-pressed .crayon-button-icon,
|
||||||
|
.crayon-toolbar .crayon-button.crayon-expand-button:active .crayon-button-icon,
|
||||||
|
.crayon-toolbar .crayon-button.crayon-expand-button.crayon-pressed:active .crayon-button-icon {
|
||||||
|
background-position: -24px -96px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-toolbar .crayon-button.crayon-wrap-button.crayon-pressed .crayon-button-icon,
|
||||||
|
.crayon-toolbar .crayon-button.crayon-wrap-button:active .crayon-button-icon,
|
||||||
|
.crayon-toolbar .crayon-button.crayon-wrap-button.crayon-pressed:active .crayon-button-icon {
|
||||||
|
background-position: -24px -112px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Language */
|
||||||
|
.crayon-syntax .crayon-toolbar .crayon-language {
|
||||||
|
padding-right: 8px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-syntax .crayon-title,
|
||||||
|
.crayon-syntax .crayon-language {
|
||||||
|
float: left;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* End Toolbar ===================== */
|
||||||
|
|
||||||
|
/* Scrollbar ======================= */
|
||||||
|
.crayon-main::-webkit-scrollbar,
|
||||||
|
.crayon-plain::-webkit-scrollbar {
|
||||||
|
height: 6px;
|
||||||
|
overflow: visible;
|
||||||
|
width: 6px;
|
||||||
|
background: #EEE;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-main::-webkit-scrollbar-thumb,
|
||||||
|
.crayon-plain::-webkit-scrollbar-thumb {
|
||||||
|
background-color: #CCC;
|
||||||
|
background-clip: padding-box;
|
||||||
|
border: 1px solid #AAA;
|
||||||
|
box-shadow: inset 0 0 2px #999;
|
||||||
|
min-height: 8px;
|
||||||
|
padding: 0;
|
||||||
|
border-width: 1px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-main::-webkit-scrollbar-button,
|
||||||
|
.crayon-plain::-webkit-scrollbar-button {
|
||||||
|
height: 0;
|
||||||
|
width: 0;
|
||||||
|
padding: 0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-main::-webkit-scrollbar-track,
|
||||||
|
.crayon-plain::-webkit-scrollbar-track {
|
||||||
|
background-clip: padding-box;
|
||||||
|
border: solid transparent;
|
||||||
|
border-width: 0 0 0 4px;
|
||||||
|
border: 1px solid #BBB;
|
||||||
|
border-right: none;
|
||||||
|
border-bottom: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-main::-webkit-scrollbar-corner,
|
||||||
|
.crayon-plain::-webkit-scrollbar-corner {
|
||||||
|
background: #EEE;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-main::-webkit-scrollbar-thumb:hover,
|
||||||
|
.crayon-plain::-webkit-scrollbar-thumb:hover {
|
||||||
|
background: #AAA;
|
||||||
|
border: 1px solid #777;
|
||||||
|
box-shadow: inset 0 0 2px #777;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* End Scrollbar =================== */
|
||||||
|
|
||||||
|
/* Code ============================ */
|
||||||
|
.crayon-syntax .crayon-pre,
|
||||||
|
.crayon-syntax pre {
|
||||||
|
color: #000;
|
||||||
|
white-space: pre;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
overflow: visible;
|
||||||
|
background: none !important;
|
||||||
|
border: none !important;
|
||||||
|
tab-size: 4;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-syntax .crayon-line {
|
||||||
|
padding: 0 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-syntax.crayon-wrapped .crayon-line {
|
||||||
|
/* width: 500px !important; */
|
||||||
|
white-space: pre-wrap !important;
|
||||||
|
/* word-wrap:break-word !important;*/
|
||||||
|
height: auto;
|
||||||
|
word-break: break-all;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-syntax-inline .crayon-pre,
|
||||||
|
.crayon-syntax-inline pre {
|
||||||
|
white-space: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-syntax-inline-nowrap .crayon-pre,
|
||||||
|
.crayon-syntax-inline-nowrap pre {
|
||||||
|
white-space: pre;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Default Font */
|
||||||
|
.crayon-syntax /*,
|
||||||
|
.crayon-syntax **/
|
||||||
|
{
|
||||||
|
font-family: Monaco, 'MonacoRegular', 'Courier New', monospace;
|
||||||
|
font-weight: 500;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-syntax .crayon-toolbar *::selection,
|
||||||
|
.crayon-syntax .crayon-nums *::selection {
|
||||||
|
background: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
|
||||||
|
This has been disabled to allow more flexibility in changing font sizes.
|
||||||
|
|
||||||
|
.crayon-syntax,
|
||||||
|
.crayon-syntax .crayon-nums,
|
||||||
|
.crayon-syntax .crayon-plain,
|
||||||
|
.crayon-syntax .crayon-pre {
|
||||||
|
font-size: 12px !important;
|
||||||
|
line-height: 15px !important;
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
|
.crayon-table .crayon-nums-content {
|
||||||
|
white-space: nowrap; /* Prevent wrapping line numbers in some themes */
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-syntax .crayon-num,
|
||||||
|
.crayon-syntax .crayon-pre .crayon-line,
|
||||||
|
.crayon-syntax .crayon-toolbar *,
|
||||||
|
.crayon-syntax .crayon-pre * {
|
||||||
|
font-family: inherit;
|
||||||
|
font-size: inherit !important;
|
||||||
|
line-height: inherit !important;
|
||||||
|
font-weight: inherit !important;
|
||||||
|
height: inherit;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-syntax .crayon-toolbar .crayon-button .crayon-button-icon {
|
||||||
|
background-image: url('../images/toolbar/buttons.png');
|
||||||
|
height: 16px !important;
|
||||||
|
width: 100%;
|
||||||
|
position: absolute;
|
||||||
|
left: 0;
|
||||||
|
top: 50%;
|
||||||
|
margin-top: -8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-syntax .crayon-toolbar .crayon-tools {
|
||||||
|
position: absolute;
|
||||||
|
right: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-syntax.crayon-expanded {
|
||||||
|
position: absolute !important;
|
||||||
|
margin: 0 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-syntax.crayon-expanded .crayon-main {
|
||||||
|
overflow: hidden !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-placeholder {
|
||||||
|
width: 100% !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-toolbar-visible .crayon-toolbar {
|
||||||
|
position: relative !important;
|
||||||
|
margin-top: 0 !important;
|
||||||
|
display: block !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-syntax.crayon-expanded .crayon-toolbar .crayon-tools {
|
||||||
|
position: relative;
|
||||||
|
right: auto;
|
||||||
|
float: left !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-syntax .crayon-plain-wrap {
|
||||||
|
height: auto !important;
|
||||||
|
padding: 0 !important;
|
||||||
|
margin: 0 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-syntax .crayon-plain {
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
position: absolute;
|
||||||
|
opacity: 0;
|
||||||
|
padding: 0 5px;
|
||||||
|
margin: 0px;
|
||||||
|
border: none;
|
||||||
|
box-sizing: border-box;
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
-moz-box-sizing: border-box;
|
||||||
|
box-shadow: none;
|
||||||
|
border-radius: 0px;
|
||||||
|
-webkit-box-shadow: none;
|
||||||
|
-moz-box-shadow: none;
|
||||||
|
/*white-space: pre-wrap;*/
|
||||||
|
white-space: pre;
|
||||||
|
word-wrap: normal;
|
||||||
|
overflow: auto;
|
||||||
|
resize: none;
|
||||||
|
color: #000;
|
||||||
|
background: #FFF;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-wrapped .crayon-plain {
|
||||||
|
white-space: pre-wrap;
|
||||||
|
}
|
||||||
|
|
||||||
|
.bbp-body .crayon-syntax {
|
||||||
|
clear: none !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* End Code ======================== */
|
||||||
|
|
||||||
|
/* Minimize ================= */
|
||||||
|
.crayon-minimized .crayon-toolbar {
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-minimized .crayon-plain-wrap,
|
||||||
|
.crayon-minimized .crayon-main,
|
||||||
|
.crayon-minimized .crayon-toolbar .crayon-tools * {
|
||||||
|
display: none !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-minimized .crayon-toolbar .crayon-tools .crayon-minimize {
|
||||||
|
display: block !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-minimized .crayon-toolbar {
|
||||||
|
position: relative !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-syntax.crayon-minimized .crayon-toolbar {
|
||||||
|
border-bottom: none !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* End Minimize ============= */
|
302
css/src/global_style.css
Normal file
@ -0,0 +1,302 @@
|
|||||||
|
/* TinyMCE */
|
||||||
|
.crayon-te *, #crayon-te-bar-content {
|
||||||
|
font-family: "Lucida Grande", Arial, sans-serif !important;
|
||||||
|
font-size: 12px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-te input[type="text"], .crayon-te textarea {
|
||||||
|
background: #F9F9F9;
|
||||||
|
border: 1px solid #CCC;
|
||||||
|
box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.1);
|
||||||
|
-moz-box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.1);
|
||||||
|
-webkit-box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.1);
|
||||||
|
padding: 2px 4px;
|
||||||
|
-webkit-border-radius: 3px;
|
||||||
|
border-radius: 3px;
|
||||||
|
border-width: 1px;
|
||||||
|
border-style: solid;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-te #crayon-code {
|
||||||
|
font-family: monospace !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#crayon-te-content, #crayon-te-table {
|
||||||
|
width: 100%;
|
||||||
|
height: auto !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#crayon-range, #crayon-mark {
|
||||||
|
width: 100px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#crayon-te-table th, #crayon-te-table td {
|
||||||
|
vertical-align: top;
|
||||||
|
text-align: left;
|
||||||
|
}
|
||||||
|
|
||||||
|
.rtl #crayon-te-table th, .rtl #crayon-te-table td {
|
||||||
|
text-align: right;
|
||||||
|
}
|
||||||
|
|
||||||
|
#crayon-te-table .crayon-tr-center td, #crayon-te-table .crayon-tr-center th {
|
||||||
|
vertical-align: middle;
|
||||||
|
}
|
||||||
|
|
||||||
|
#crayon-te-table .crayon-nowrap {
|
||||||
|
white-space: nowrap;
|
||||||
|
}
|
||||||
|
|
||||||
|
#crayon-te-bar {
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
#crayon-te-bar-content {
|
||||||
|
border: 1px solid #666;
|
||||||
|
border-bottom: none;
|
||||||
|
height: 26px;
|
||||||
|
line-height: 25px;
|
||||||
|
padding: 0px 8px;
|
||||||
|
padding-right: 0;
|
||||||
|
background-color: #222;
|
||||||
|
color: #CFCFCF;
|
||||||
|
}
|
||||||
|
|
||||||
|
#crayon-te-bar-content a {
|
||||||
|
line-height: 25px;
|
||||||
|
padding: 5px 10px;
|
||||||
|
color: #DDD;
|
||||||
|
font-weight: bold;
|
||||||
|
text-decoration: none !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#crayon-te-bar-content a:hover {
|
||||||
|
color: #FFF;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-te-seperator {
|
||||||
|
color: #666;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#crayon-te-bar-block {
|
||||||
|
height: 34px;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
#crayon-te-title {
|
||||||
|
float: left;
|
||||||
|
}
|
||||||
|
|
||||||
|
#crayon-te-controls {
|
||||||
|
float: right;
|
||||||
|
}
|
||||||
|
|
||||||
|
#crayon-url-th {
|
||||||
|
vertical-align: top !important;
|
||||||
|
padding-top: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-te-heading {
|
||||||
|
font-size: 14px;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
#crayon-te-settings-info {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-te-section {
|
||||||
|
font-weight: bold;
|
||||||
|
padding: 0 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#crayon-te-sub-section {
|
||||||
|
margin-left: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#crayon-te-sub-section .crayon-te-section {
|
||||||
|
font-weight: normal;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#crayon-code {
|
||||||
|
height: 200px;
|
||||||
|
white-space: pre;
|
||||||
|
/*white-space: nowrap;
|
||||||
|
overflow: auto;*/
|
||||||
|
}
|
||||||
|
|
||||||
|
#crayon-code, #crayon-url {
|
||||||
|
width: 555px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-disabled {
|
||||||
|
background: #EEE !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.qt_crayon_highlight {
|
||||||
|
background-image: -ms-linear-gradient(bottom, #daf2ff, white) !important;
|
||||||
|
background-image: -moz-linear-gradient(bottom, #daf2ff, white) !important;
|
||||||
|
background-image: -o-linear-gradient(bottom, #daf2ff, white) !important;
|
||||||
|
background-image: -webkit-linear-gradient(bottom, #daf2ff, white) !important;
|
||||||
|
background-image: linear-gradient(bottom, #daf2ff, white) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.qt_crayon_highlight:hover {
|
||||||
|
background: #ddebf2 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-tag-editor-button-wrapper {
|
||||||
|
display: inline-block;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* TinyMCE v4 */
|
||||||
|
.mce_crayon_tinymce {
|
||||||
|
padding: 0 !important;
|
||||||
|
margin: 2px 3px !important;
|
||||||
|
}
|
||||||
|
.mce-i-crayon_tinymce,
|
||||||
|
.mce_crayon_tinymce {
|
||||||
|
background: url(../images/crayon_tinymce.png) 0 0 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* TinyMCE v3 - deprecated */
|
||||||
|
a.mce_crayon_tinymce {
|
||||||
|
background-position: 2px 0 !important;
|
||||||
|
}
|
||||||
|
.wp_themeSkin .mceButtonEnabled:hover span.mce_crayon_tinymce,
|
||||||
|
.wp_themeSkin .mceButtonActive span.mce_crayon_tinymce {
|
||||||
|
background-position: -20px 0;
|
||||||
|
}
|
||||||
|
.wp_themeSkin span.mce_crayon_tinymce {
|
||||||
|
background: none !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#crayon-te-table {
|
||||||
|
margin-top: 26px;
|
||||||
|
padding: 10px;
|
||||||
|
border-collapse: separate !important;
|
||||||
|
border-spacing: 2px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#crayon-te-table th {
|
||||||
|
width: 100px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#crayon-te-clear {
|
||||||
|
margin-left: 10px;
|
||||||
|
color: #666;
|
||||||
|
background-color: #f4f4f4;
|
||||||
|
border: 1px solid #CCC;
|
||||||
|
border-radius: 3px;
|
||||||
|
margin-left: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#crayon-title {
|
||||||
|
width: 360px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#TB_window.crayon-te-ajax {
|
||||||
|
overflow: auto !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#TB_window.crayon-te-ajax, #TB_window.crayon-te-ajax #TB_ajaxContent, #TB_window.crayon-te-ajax #TB_title {
|
||||||
|
width: 680px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#TB_window.crayon-te-ajax #TB_ajaxContent {
|
||||||
|
padding: 0 !important;
|
||||||
|
margin: 0 !important;
|
||||||
|
width: 100% !important;
|
||||||
|
height: auto !important;
|
||||||
|
margin-top: 28px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#TB_window.crayon-te-ajax #TB_title {
|
||||||
|
position: fixed !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#TB_window.crayon-te-ajax #TB_title .crayon-te-submit {
|
||||||
|
margin-top: 3px !important;
|
||||||
|
float: right !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#TB_window.crayon-te-ajax a {
|
||||||
|
color: #2587e2;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
#TB_window.crayon-te-ajax a:hover {
|
||||||
|
color: #499ce9;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-te-quote {
|
||||||
|
background: #DDD;
|
||||||
|
padding: 0 2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#crayon-te-submit-wrapper {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
#crayon-te-clear {
|
||||||
|
display: none;
|
||||||
|
margin: 0;
|
||||||
|
margin-top: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-syntax-pre {
|
||||||
|
background: red;
|
||||||
|
white-space: pre;
|
||||||
|
overflow: auto;
|
||||||
|
display: block;
|
||||||
|
word-wrap: break-word;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-question {
|
||||||
|
padding: 1px 4px !important;
|
||||||
|
text-decoration: none !important;
|
||||||
|
color: #83b3cb !important;
|
||||||
|
border-radius: 10px !important;
|
||||||
|
height: 15px !important;
|
||||||
|
width: 15px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-question:hover {
|
||||||
|
background: #83b3cb !important;
|
||||||
|
color: white !important;
|
||||||
|
height: 15px !important;
|
||||||
|
width: 15px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-setting {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-setting-changed, .crayon-setting-selected {
|
||||||
|
background: #fffaad !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-question:hover {
|
||||||
|
color: white;
|
||||||
|
background: #a6d6ef;
|
||||||
|
}
|
||||||
|
|
||||||
|
#crayon-te-warning {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-te-info {
|
||||||
|
padding: 5px !important;
|
||||||
|
margin: 2px 0 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#crayon-te-submit {
|
||||||
|
margin-bottom: 5px;
|
||||||
|
}
|
||||||
|
|
14
fonts/adobe-source-sans.css
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
@font-face {
|
||||||
|
font-family: 'AdobeSourceSansSemibold';
|
||||||
|
src: url('adobe-source-sans/SourceSansPro-Semibold.eot');
|
||||||
|
src: url('adobe-source-sans/SourceSansPro-Semibold.eot?#iefix') format('embedded-opentype'),
|
||||||
|
url('adobe-source-sans/SourceSansPro-Semibold.otf.woff') format('woff'),
|
||||||
|
url('adobe-source-sans/SourceSansPro-Semibold.ttf.woff') format('truetype'),
|
||||||
|
url('adobe-source-sans/SourceSansPro-Semibold.svg#AdobeSourceSansSemibold') format('svg');
|
||||||
|
font-weight: normal;
|
||||||
|
font-style: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-font-adobe-source-sans * {
|
||||||
|
font-family: AdobeSourceSans, 'AdobeSourceSansSemibold', 'Courier New', monospace !important;
|
||||||
|
}
|
BIN
fonts/adobe-source-sans/SourceSansPro-Semibold.eot
Normal file
BIN
fonts/adobe-source-sans/SourceSansPro-Semibold.otf.woff
Normal file
1117
fonts/adobe-source-sans/SourceSansPro-Semibold.svg
Normal file
BIN
fonts/adobe-source-sans/SourceSansPro-Semibold.ttf.woff
Normal file
3
fonts/arial.css
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
.crayon-font-arial * {
|
||||||
|
font-family: Arial, sans-serif !important;
|
||||||
|
}
|
14
fonts/consolas.css
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
@font-face {
|
||||||
|
font-family: 'ConsolasRegular';
|
||||||
|
src: url('consolas/consolas-webfont.eot');
|
||||||
|
src: url('consolas/consolas-webfont.eot?#iefix') format('embedded-opentype'),
|
||||||
|
url('consolas/consolas-webfont.woff') format('woff'),
|
||||||
|
url('consolas/consolas-webfont.ttf') format('truetype'),
|
||||||
|
url('consolas/consolas-webfont.svg#ConsolasRegular') format('svg');
|
||||||
|
font-weight: normal;
|
||||||
|
font-style: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-font-consolas * {
|
||||||
|
font-family: Consolas, 'ConsolasRegular', 'Courier New', monospace !important;
|
||||||
|
}
|
BIN
fonts/consolas/consolas-webfont.eot
Normal file
261
fonts/consolas/consolas-webfont.svg
Normal file
@ -0,0 +1,261 @@
|
|||||||
|
<?xml version="1.0" standalone="no"?>
|
||||||
|
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<metadata>
|
||||||
|
This is a custom SVG webfont generated by Font Squirrel.
|
||||||
|
Copyright : 2005 Microsoft Corporation All Rights Reserved
|
||||||
|
Designer : Lucas de Groot
|
||||||
|
Foundry : Microsoft Corporation
|
||||||
|
Foundry URL : httpwwwmicrosoftcomtypographyctfonts
|
||||||
|
</metadata>
|
||||||
|
<defs>
|
||||||
|
<font id="ConsolasRegular" horiz-adv-x="1126" >
|
||||||
|
<font-face units-per-em="2048" ascent="1521" descent="-527" />
|
||||||
|
<missing-glyph horiz-adv-x="500" />
|
||||||
|
<glyph unicode=" " />
|
||||||
|
<glyph unicode="!" d="M428 113q0 27 10.5 51.5t28.5 42.5t42 28.5t52 10.5q27 0 51 -10.5t41.5 -28.5t28 -42.5t10.5 -51.5t-10.5 -51t-28 -41.5t-41.5 -28t-51 -10.5q-28 0 -52 10.5t-42 28t-28.5 41.5t-10.5 51zM455 1413h211l-27 -1030h-154z" />
|
||||||
|
<glyph unicode=""" d="M258 1413h221l-28 -469h-164zM647 1413h221l-28 -469h-164z" />
|
||||||
|
<glyph unicode="#" d="M43 367v130h226l36 350h-211v130h224l34 330h146l-33 -330h256l34 330h148l-35 -330h215v-130h-228l-35 -350h210v-130h-223l-37 -367h-148l37 367h-255l-37 -367h-148l37 367h-213zM417 497h256l35 350h-256z" />
|
||||||
|
<glyph unicode="$" d="M111 45v166q63 -22 137.5 -36t165.5 -19l59 450q-65 25 -128 54t-112.5 69.5t-80.5 95.5t-31 131q0 62 26 122.5t81 109t139 80t200 37.5l25 190h145l-26 -195q52 -5 104.5 -13t97.5 -19v-154q-55 14 -111 24t-110 15l-57 -428q67 -26 133 -56.5t118.5 -72t85 -98.5 t32.5 -136q0 -84 -34 -149t-95 -110t-147 -70.5t-189 -30.5l-33 -238h-146l33 238q-81 6 -154.5 17.5t-127.5 25.5zM307 975q0 -69 47.5 -113.5t141.5 -81.5l51 375q-125 -11 -182.5 -58.5t-57.5 -121.5zM559 156q135 10 196.5 60t61.5 136q0 36 -13 64.5t-39 51.5t-64.5 43 t-90.5 40z" />
|
||||||
|
<glyph unicode="%" d="M20 0l920 1413h166l-922 -1413h-164zM37 1124q0 64 19 119.5t54.5 96.5t86 64t112.5 23q61 0 109.5 -19t83 -56t53 -92t18.5 -127q0 -65 -19 -120.5t-54.5 -96t-86 -64t-112.5 -23.5q-61 0 -109.5 19t-83 56.5t-53 92.5t-18.5 127zM184 1128q0 -88 32 -130t89 -42 q29 0 51.5 13t38 36t23.5 54.5t8 68.5q0 88 -32 130t-89 42q-29 0 -51.5 -13t-38 -36t-23.5 -54.5t-8 -68.5zM553 281q0 64 19 119.5t54.5 96.5t86 64t112.5 23q61 0 110 -19t83.5 -56.5t53 -92.5t18.5 -127q0 -65 -19.5 -120t-55 -96t-86 -64t-112.5 -23q-61 0 -109.5 19 t-83 56t-53 92.5t-18.5 127.5zM700 285q0 -88 32 -130t89 -42q29 0 51.5 13t38.5 36t24 54.5t8 68.5q0 88 -32.5 130t-89.5 42q-29 0 -51.5 -13t-38 -36t-23.5 -54.5t-8 -68.5z" />
|
||||||
|
<glyph unicode="&" d="M57 352q0 76 20 135.5t54 106t78.5 82t93.5 65.5l-22 31q-56 69 -83.5 140t-27.5 139q0 72 23 133t67.5 105.5t110 69.5t149.5 25q81 0 142 -23t102 -63t61.5 -92.5t20.5 -111.5q0 -75 -25.5 -131.5t-67 -100t-95 -77.5t-109.5 -66l258 -322q44 118 41 285h176 q0 -131 -26 -238t-74 -192l202 -252h-231l-88 109q-71 -60 -158.5 -91.5t-189.5 -31.5q-97 0 -172 27t-126 75.5t-77.5 115.5t-26.5 148zM238 373q0 -53 17 -97t48.5 -75.5t77 -48.5t102.5 -17q130 0 228 96l-318 398q-34 -23 -62.5 -49t-49 -57t-32 -68t-11.5 -82z M350 1067q0 -54 20 -100.5t64 -102.5l27 -35q43 24 81 48.5t66.5 54t45 65t16.5 80.5q0 75 -42 117.5t-114 42.5q-40 0 -70.5 -13t-51.5 -36t-31.5 -54t-10.5 -67z" />
|
||||||
|
<glyph unicode="'" d="M449 1413h229l-29 -469h-172z" />
|
||||||
|
<glyph unicode="(" d="M300 524q0 121 24.5 241.5t79 241.5t144 242t217.5 240l101 -103q-388 -383 -388 -849q0 -232 98 -446t290 -404l-105 -107q-461 427 -461 944z" />
|
||||||
|
<glyph unicode=")" d="M260 -317q195 193 291 403t96 440q0 476 -387 856l105 107q461 -427 461 -950q0 -108 -22 -224t-75 -237.5t-142.5 -246.5t-225.5 -251z" />
|
||||||
|
<glyph unicode="*" d="M164 838l307 151l-307 154l69 117l283 -189l-24 342h143l-25 -342l283 191l70 -123l-308 -152l306 -147l-68 -119l-281 186l23 -342h-143l22 342l-287 -186z" />
|
||||||
|
<glyph unicode="+" d="M84 469v152h393v405h172v-405h393v-152h-393v-408h-172v408h-393z" />
|
||||||
|
<glyph unicode="," d="M238 -205q51 -2 99 9t84.5 32.5t58.5 53.5t22 73q0 42 -14.5 68t-32.5 48t-32.5 47t-14.5 67q0 21 8 44t24.5 42t42 31t60.5 12t67.5 -14.5t57 -44.5t39 -75t14.5 -106q0 -83 -30.5 -159.5t-91 -135.5t-151 -94t-210.5 -35v137z" />
|
||||||
|
<glyph unicode="-" d="M264 463v164h598v-164h-598z" />
|
||||||
|
<glyph unicode="." d="M389 147q0 35 13 65.5t35.5 53.5t52.5 36t65 13q34 0 64.5 -13t53 -36t35.5 -53.5t13 -65.5q0 -34 -13 -64t-35.5 -52.5t-53 -35.5t-64.5 -13q-35 0 -65 13t-52.5 35.5t-35.5 52.5t-13 64z" />
|
||||||
|
<glyph unicode="/" d="M115 -215l686 1628h166l-686 -1628h-166z" />
|
||||||
|
<glyph unicode="0" d="M88 653q0 150 30.5 274t91 212.5t151.5 137t212 48.5q105 0 191 -39.5t147 -122t94 -209.5t33 -301q0 -150 -30 -273.5t-91 -212t-151.5 -137t-212.5 -48.5q-105 0 -191 39.5t-147 121.5t-94 209t-33 301zM264 659q0 -31 0.5 -62t3.5 -60l553 409q-15 51 -38 93t-55 72.5 t-73 47.5t-92 17q-68 0 -123.5 -33t-94.5 -98.5t-60 -162t-21 -223.5zM301 369q15 -52 38 -96t55.5 -75.5t74 -49t94.5 -17.5q68 0 123.5 33t94.5 98t60 161.5t21 223.5q0 34 -2.5 67.5t-5.5 65.5z" />
|
||||||
|
<glyph unicode="1" d="M135 1094l416 219h154v-1151h292v-162h-821v162h336v954l-313 -170z" />
|
||||||
|
<glyph unicode="2" d="M147 0v156l338 336q83 82 135 142t81 109.5t39 93.5t10 95q0 48 -13 91.5t-40 76.5t-70 52t-103 19q-83 0 -151 -37t-125 -96l-96 115q74 78 170.5 125t224.5 47q87 0 158.5 -26t123.5 -75t80.5 -120t28.5 -160q0 -75 -20 -139t-60.5 -127.5t-102 -131.5t-145.5 -149 l-237 -231h635v-166h-861z" />
|
||||||
|
<glyph unicode="3" d="M164 0v156q62 -11 131 -17t141 -6q98 0 167.5 17.5t113.5 50.5t64 80t20 106q0 54 -24 94t-67.5 67t-104 40.5t-132.5 13.5h-149v143h151q59 0 107.5 15.5t83 44.5t53 71.5t18.5 96.5q0 105 -64 153t-188 48q-66 0 -136 -13t-150 -39v152q34 12 72.5 21.5t77 16t76.5 10 t73 3.5q104 0 183 -22.5t132 -64.5t80 -102t27 -135q0 -112 -57.5 -188t-157.5 -121q51 -8 100.5 -32t89 -61.5t64 -88.5t24.5 -113q0 -86 -35 -161.5t-105 -132t-176 -89t-247 -32.5q-78 0 -140 5t-116 13z" />
|
||||||
|
<glyph unicode="4" d="M43 289v153l557 865h250v-865h223v-153h-223v-289h-178v289h-629zM217 442h455v697z" />
|
||||||
|
<glyph unicode="5" d="M178 0v158q54 -13 123.5 -19t140.5 -6q80 0 144 19t109 54.5t69 86t24 113.5q0 122 -87.5 177.5t-251.5 55.5h-248v668h704v-152h-540v-367h114q94 0 183 -17t158.5 -59.5t112 -114t42.5 -179.5q0 -97 -42 -177t-115.5 -137.5t-173.5 -89.5t-216 -32q-29 0 -62.5 1.5 t-66.5 4t-64.5 5.5t-56.5 7z" />
|
||||||
|
<glyph unicode="6" d="M123 561q0 100 13 194t43 177t80 152t124.5 118.5t175.5 77t234 27.5h129v-152h-140q-117 0 -203 -28t-144 -79t-89 -123t-39 -161l-4 -41q63 37 145.5 59.5t178.5 22.5q99 0 173.5 -29t124 -80.5t74.5 -123.5t25 -158q0 -90 -32.5 -169t-92.5 -137.5t-144.5 -92 t-187.5 -33.5q-108 0 -191 34.5t-139 106t-85 180.5t-29 258zM303 575q0 -129 18 -215.5t53.5 -138.5t87.5 -74t120 -22q57 0 104.5 18.5t82 54.5t54 87.5t19.5 117.5q0 60 -14.5 108.5t-45.5 82t-78.5 52t-113.5 18.5q-38 0 -77 -7t-76.5 -19.5t-71.5 -28.5t-62 -34z" />
|
||||||
|
<glyph unicode="7" d="M117 1145v162h884v-162l-548 -1145h-199l569 1145h-706z" />
|
||||||
|
<glyph unicode="8" d="M119 305q0 120 67 207t207 158q-128 65 -187 144.5t-59 182.5q0 63 26 122t78.5 105t131.5 73.5t186 27.5q101 0 177.5 -21.5t128.5 -61.5t78 -97t26 -127q0 -114 -63.5 -194t-180.5 -140q58 -29 108 -64t87 -78t57.5 -96t20.5 -118q0 -83 -34 -147.5t-95 -108.5 t-144 -67t-180 -23q-107 0 -188.5 24t-136.5 67t-83 102t-28 130zM307 317q0 -45 19.5 -79.5t53.5 -58.5t81 -36t102 -12q53 0 100 11t81.5 33.5t54.5 57t20 82.5q0 37 -12 72t-43 69t-83 68t-132 70q-68 -33 -114.5 -65.5t-75 -66t-40.5 -69.5t-12 -76zM326 1008 q0 -39 15 -72t46.5 -62t78.5 -57t112 -57q113 53 168 110.5t55 133.5q0 89 -62.5 132.5t-175.5 43.5q-112 0 -174.5 -43t-62.5 -129z" />
|
||||||
|
<glyph unicode="9" d="M100 891q0 91 33 170t92.5 137.5t142.5 92.5t183 34q97 0 179.5 -32t142.5 -103.5t94 -185.5t34 -277q0 -191 -46 -328.5t-136 -226t-223 -130.5t-307 -42h-109v152h121q129 0 223 26t156.5 76.5t95.5 123t41 165.5l4 41q-63 -37 -145 -59.5t-178 -22.5q-99 0 -174 29 t-124.5 81t-74.5 123.5t-25 155.5zM283 903q0 -61 14.5 -109t45 -81.5t78.5 -51.5t114 -18q37 0 76.5 7t77 19t71.5 28t61 34q0 129 -19 215.5t-55 139t-87.5 74.5t-116.5 22q-56 0 -103.5 -18.5t-82 -54t-54.5 -87.5t-20 -119z" />
|
||||||
|
<glyph unicode=":" d="M410 135q0 31 12 59t33 49t48.5 33.5t59.5 12.5q31 0 59 -12.5t49 -33.5t33.5 -49t12.5 -59q0 -32 -12.5 -59.5t-33.5 -48.5t-49 -33t-59 -12q-32 0 -59.5 12t-48.5 33t-33 48.5t-12 59.5zM410 868q0 31 12 59t33 49t48.5 33.5t59.5 12.5q31 0 59 -12.5t49 -33.5 t33.5 -49t12.5 -59q0 -32 -12.5 -59.5t-33.5 -48.5t-49 -33t-59 -12q-32 0 -59.5 12t-48.5 33t-33 48.5t-12 59.5z" />
|
||||||
|
<glyph unicode=";" d="M250 -205q51 -2 99 9t84.5 32.5t58.5 53.5t22 73q0 42 -14.5 68t-32.5 48t-32.5 47t-14.5 67q0 21 8 44t24.5 42t42 31t60.5 12t67.5 -14.5t57 -44.5t39 -75t14.5 -106q0 -83 -30.5 -159.5t-91 -135.5t-151 -94t-210.5 -35v137zM410 868q0 31 12 59t33 49t48.5 33.5 t59.5 12.5q31 0 59 -12.5t49 -33.5t33.5 -49t12.5 -59q0 -32 -12.5 -59.5t-33.5 -48.5t-49 -33t-59 -12q-32 0 -59.5 12t-48.5 33t-33 48.5t-12 59.5z" />
|
||||||
|
<glyph unicode="<" d="M137 545l672 561l109 -111l-545 -448l545 -453l-109 -110z" />
|
||||||
|
<glyph unicode="=" d="M133 298v147h860v-147h-860zM133 646v147h860v-147h-860z" />
|
||||||
|
<glyph unicode=">" d="M209 94l545 449l-545 452l108 111l672 -561l-672 -561z" />
|
||||||
|
<glyph unicode="?" d="M303 1257v156h27q101 0 184.5 -19t149 -51.5t114 -76.5t81 -93t48 -101.5t15.5 -102.5q0 -162 -90 -245.5t-261 -94.5l-8 -246h-149l-13 383h117q61 0 102 13t66 37t36 58.5t11 77.5q0 73 -30 130t-84 96t-128.5 59t-162.5 20h-25zM356 113q0 27 10 51.5t28 42.5t42 28.5 t51 10.5q28 0 52 -10.5t41.5 -28.5t27.5 -42.5t10 -51.5t-10 -51t-27.5 -41.5t-41.5 -28t-52 -10.5q-27 0 -51 10.5t-42 28t-28 41.5t-10 51z" />
|
||||||
|
<glyph unicode="@" d="M10 344q-1 151 20 289.5t60.5 258.5t96 218.5t128 168t155.5 108t179 38.5q119 0 206.5 -48.5t144.5 -140t84.5 -224.5t27.5 -303q-1 -172 -22.5 -294.5t-60.5 -200.5t-94.5 -114.5t-123.5 -36.5q-78 0 -116 40t-38 108q-38 -77 -82 -112.5t-106 -35.5q-94 0 -141 70.5 t-47 222.5q0 55 6.5 118t22 126.5t40.5 122t61.5 103t86.5 71.5t114 27q38 0 71 -9t48 -18l129 31l-80 -520q-9 -64 -10 -106t5.5 -66t20.5 -33.5t35 -9.5q28 0 53 29.5t44.5 91t31 155.5t11.5 223q0 144 -18 257t-57 192t-101.5 120.5t-151.5 41.5q-68 0 -131.5 -34.5 t-118 -97t-99 -150t-76 -193.5t-49 -228t-17.5 -254q0 -322 97 -480.5t273 -158.5q89 0 166 20.5t160 61.5v-129q-82 -38 -164 -57t-172 -19q-255 0 -377.5 191t-124.5 569zM440 373q0 -96 12 -138t46 -42q12 0 24 5t25.5 19.5t29.5 40.5t35 68l66 438q-9 12 -27.5 21.5 t-46.5 9.5q-30 0 -54 -21t-42.5 -56t-31 -79.5t-21 -91.5t-12 -92.5t-3.5 -81.5z" />
|
||||||
|
<glyph unicode="A" d="M10 0l434 1307h244l428 -1307h-194l-91 285h-544l-92 -285h-185zM338 444h442l-221 699z" />
|
||||||
|
<glyph unicode="B" d="M158 0v1307h374q437 0 437 -318q0 -106 -50.5 -182t-164.5 -113q53 -10 100.5 -34t83.5 -62t57 -90t21 -117q0 -94 -36.5 -166.5t-104 -122.5t-163 -76t-212.5 -26h-342zM336 150h188q153 0 228 57t75 178q0 50 -21 90t-61 67.5t-97.5 42.5t-129.5 15h-182v-450zM336 748 h178q61 0 110.5 13t85 40t55 67.5t19.5 96.5q0 40 -12 75.5t-42 61t-81 40.5t-129 15h-184v-409z" />
|
||||||
|
<glyph unicode="C" d="M92 639q0 157 41 284t117 215.5t184 136.5t242 48q91 0 169 -15.5t150 -47.5v-175q-71 39 -147 59.5t-166 20.5q-92 0 -166.5 -34.5t-126.5 -100t-80 -160t-28 -215.5q0 -254 103 -383t302 -129q84 0 161 19.5t148 54.5v-168q-157 -65 -329 -65q-277 0 -425.5 165.5 t-148.5 489.5z" />
|
||||||
|
<glyph unicode="D" d="M109 0v1307h337q306 0 456.5 -157.5t150.5 -481.5q0 -94 -14.5 -180t-46.5 -160t-83 -134.5t-125 -103.5t-172 -66.5t-223 -23.5h-280zM287 154h133q446 0 446 501q0 139 -26 235t-79 155t-133 85.5t-188 26.5h-153v-1003z" />
|
||||||
|
<glyph unicode="E" d="M201 0v1307h743v-150h-565v-405h543v-150h-543v-450h565v-152h-743z" />
|
||||||
|
<glyph unicode="F" d="M205 0v1307h737v-152h-555v-424h526v-149h-526v-582h-182z" />
|
||||||
|
<glyph unicode="G" d="M66 639q0 161 45 288.5t126.5 216t196 135t252.5 46.5q88 0 167.5 -15.5t152.5 -49.5v-177q-73 39 -150 60.5t-168 21.5q-104 0 -185 -37t-136.5 -104.5t-85 -162.5t-29.5 -210q0 -120 24 -215t75 -161t130.5 -101t190.5 -35q19 0 41 2t44 5.5t42.5 8.5t36.5 11v416h-267 v147h443v-668q-41 -19 -86.5 -34t-93 -25t-94.5 -15t-91 -5q-134 0 -241.5 42t-183 124.5t-116 205.5t-40.5 285z" />
|
||||||
|
<glyph unicode="H" d="M111 0v1307h178v-553h549v553h178v-1307h-178v600h-549v-600h-178z" />
|
||||||
|
<glyph unicode="I" d="M172 0v152h301v1005h-301v150h782v-150h-301v-1005h301v-152h-782z" />
|
||||||
|
<glyph unicode="J" d="M182 59v179q62 -45 137.5 -71t149.5 -26q109 0 168 66.5t59 191.5v754h-497v154h678v-908q0 -84 -25 -159.5t-76 -131.5t-128 -89t-181 -33q-39 0 -79.5 5.5t-78 15t-70.5 23t-57 29.5z" />
|
||||||
|
<glyph unicode="K" d="M156 0v1307h178v-607l479 607h211l-516 -621l539 -686h-224l-489 641v-641h-178z" />
|
||||||
|
<glyph unicode="L" d="M233 0v1307h181v-1155h571v-152h-752z" />
|
||||||
|
<glyph unicode="M" d="M49 0l64 1307h211l176 -492l57 -166l55 166l185 492h217l63 -1307h-174l-26 815l-11 313l-61 -182l-193 -520h-123l-184 500l-61 202l-4 -327l-23 -801h-168z" />
|
||||||
|
<glyph unicode="N" d="M119 0v1307h229l363 -772l131 -299v700v371h166v-1307h-232l-381 815l-110 262v-659v-418h-166z" />
|
||||||
|
<glyph unicode="O" d="M57 647q0 174 41 302t111.5 211.5t164.5 124t199 40.5q126 0 219.5 -46t155.5 -131.5t92.5 -208.5t30.5 -277q0 -176 -41.5 -304t-112 -211.5t-165 -124t-199.5 -40.5q-126 0 -219.5 45.5t-155 131.5t-91.5 209.5t-30 278.5zM242 657q0 -116 18 -211.5t56.5 -164 t99.5 -106.5t147 -38q84 0 145 40.5t100.5 110t58.5 162.5t19 199q0 115 -17.5 210.5t-56.5 164.5t-100.5 107t-148.5 38q-84 0 -144.5 -40.5t-99.5 -110t-58 -163t-19 -198.5z" />
|
||||||
|
<glyph unicode="P" d="M158 0v1307h368q97 0 186 -21.5t156.5 -69.5t107.5 -124t40 -185q0 -80 -30 -158.5t-93 -140.5t-161 -100.5t-234 -38.5h-162v-469h-178zM336 621h166q158 0 243.5 69t85.5 209q0 126 -82.5 193t-230.5 67h-182v-538z" />
|
||||||
|
<glyph unicode="Q" d="M57 637q0 178 41 308t111.5 214.5t164.5 125t199 40.5q126 0 219.5 -45.5t155.5 -131t92.5 -207t30.5 -273.5q0 -160 -34 -280.5t-93 -204.5t-139 -132t-172 -63q15 -88 70 -141.5t155 -53.5q48 0 94.5 16t94.5 54l79 -123q-66 -54 -136 -77t-144 -23q-80 0 -147 22 t-116.5 65.5t-79.5 109t-36 151.5q-104 15 -181 66t-128 134.5t-76 197t-25 251.5zM242 664q0 -119 18 -215.5t56.5 -165.5t99.5 -106.5t147 -37.5q84 0 145 40t100.5 109t58.5 161.5t19 197.5q0 116 -17.5 211.5t-56.5 164t-100.5 106.5t-148.5 38q-84 0 -144.5 -40 t-99.5 -108.5t-58 -160t-19 -194.5z" />
|
||||||
|
<glyph unicode="R" d="M170 0v1307h350q114 0 196 -25t134.5 -70t77 -108.5t24.5 -140.5q0 -61 -18 -115.5t-53.5 -99t-88 -77t-120.5 -48.5q55 -19 93.5 -66.5t78.5 -126.5l207 -430h-201l-195 418q-22 48 -45 79.5t-49.5 50t-58 26.5t-70.5 8h-84v-582h-178zM348 725h144q63 0 113.5 14.5 t86 43t55 70t19.5 95.5q0 105 -65.5 157t-184.5 52h-168v-432z" />
|
||||||
|
<glyph unicode="S" d="M111 27v172q75 -28 168.5 -44t212.5 -16q86 0 146.5 13.5t99 40t56 64.5t17.5 87q0 53 -29.5 90.5t-77.5 67t-109.5 54t-125.5 50.5t-125.5 56.5t-109.5 72t-77.5 97.5t-29.5 133q0 67 28 132t87 115.5t151.5 81.5t220.5 31q33 0 71.5 -3t78 -8.5t78 -12.5t71.5 -15v-160 q-77 22 -154 33.5t-149 11.5q-153 0 -225 -51t-72 -137q0 -53 29.5 -91t77.5 -68t109.5 -54.5t125.5 -50.5t125.5 -57t109.5 -73.5t77.5 -99.5t29.5 -135q0 -93 -38 -163t-106 -116.5t-163.5 -69.5t-210.5 -23q-52 0 -103.5 4t-99 10t-89.5 14t-76 17z" />
|
||||||
|
<glyph unicode="T" d="M86 1155v152h954v-152h-387v-1155h-180v1155h-387z" />
|
||||||
|
<glyph unicode="U" d="M109 428v879h178v-865q0 -77 14.5 -135t47.5 -97t85.5 -59t128.5 -20q142 0 209.5 82t67.5 231v863h178v-852q0 -108 -30.5 -195.5t-89.5 -149t-144.5 -95t-196.5 -33.5q-122 0 -207 32t-138.5 90.5t-78 140.5t-24.5 183z" />
|
||||||
|
<glyph unicode="V" d="M4 1307h201l282 -881l80 -258l82 258l283 881h190l-444 -1307h-240z" />
|
||||||
|
<glyph unicode="W" d="M45 1307h168l51 -889l15 -244l63 207l158 485h123l182 -520l61 -172l4 180l52 953h159l-88 -1307h-231l-162 465l-45 149l-47 -161l-150 -453h-223z" />
|
||||||
|
<glyph unicode="X" d="M18 0l435 668l-400 639h211l299 -492l301 492h205l-401 -631l434 -676h-225l-318 528l-319 -528h-222z" />
|
||||||
|
<glyph unicode="Y" d="M0 1307h215l260 -478l96 -192l88 174l263 496h204l-473 -840v-467h-180v471z" />
|
||||||
|
<glyph unicode="Z" d="M111 0v133l671 1012h-653v162h872v-140l-667 -1001h680v-166h-903z" />
|
||||||
|
<glyph unicode="[" d="M345 -410v1858h493v-140h-327v-1578h327v-140h-493z" />
|
||||||
|
<glyph unicode="\" d="M160 1413h166l686 -1628h-166z" />
|
||||||
|
<glyph unicode="]" d="M288 -270h325v1578h-325v140h493v-1858h-493v140z" />
|
||||||
|
<glyph unicode="^" d="M121 668l366 639h142l385 -639h-174l-289 501l-272 -501h-158z" />
|
||||||
|
<glyph unicode="_" d="M0 -266h1126v-144h-1126v144z" />
|
||||||
|
<glyph unicode="`" d="M0 1004zM174 1413h252l242 -242h-174z" />
|
||||||
|
<glyph unicode="a" d="M133 268q0 151 112.5 236.5t332.5 85.5h208v88q0 89 -57 142.5t-174 53.5q-85 0 -167.5 -19t-170.5 -54v157q33 12 73.5 23.5t85.5 20.5t94 14.5t99 5.5q91 0 164 -20t123.5 -61t77.5 -103t27 -146v-692h-156l-4 135q-82 -81 -166.5 -117t-177.5 -36q-86 0 -147 22 t-100.5 60.5t-58 90.5t-18.5 113zM317 274q0 -29 9 -55.5t29 -47t52 -32.5t78 -12q60 0 137.5 36.5t163.5 115.5v178h-221q-65 0 -112 -13t-77 -37t-44.5 -57.5t-14.5 -75.5z" />
|
||||||
|
<glyph unicode="b" d="M160 59v1354h174v-389l-8 -186q75 101 160.5 142.5t183.5 41.5q86 0 151 -36t109 -101.5t66 -158t22 -206.5q0 -125 -34.5 -223.5t-98 -167t-154.5 -105t-205 -36.5q-89 0 -182 17t-184 54zM334 172q51 -20 104 -31.5t101 -11.5q60 0 114.5 19t96 63.5t66 118t24.5 182.5 q0 79 -11.5 145t-36.5 113t-64 73.5t-93 26.5q-33 0 -67 -10.5t-70.5 -35t-77 -65t-86.5 -100.5v-487z" />
|
||||||
|
<glyph unicode="c" d="M158 492q0 119 37 216t104 166t160 106.5t205 37.5q78 0 146 -11t130 -36v-166q-65 34 -132.5 49.5t-139.5 15.5q-67 0 -126.5 -25.5t-104.5 -73.5t-71 -117t-26 -156q0 -182 88.5 -272.5t245.5 -90.5q71 0 137.5 16t128.5 48v-162q-68 -26 -139.5 -38.5t-147.5 -12.5 q-238 0 -366.5 129t-128.5 377z" />
|
||||||
|
<glyph unicode="d" d="M109 481q0 128 35 227.5t99.5 168t155 104t201.5 35.5q48 0 94.5 -6t91.5 -19v422h175v-1413h-156l-6 190q-73 -106 -158 -157t-184 -51q-86 0 -151.5 36t-109 101.5t-65.5 157.5t-22 204zM287 492q0 -182 53.5 -271.5t151.5 -89.5q66 0 139.5 59t154.5 175v466 q-43 20 -95 30.5t-103 10.5q-142 0 -221.5 -92t-79.5 -288z" />
|
||||||
|
<glyph unicode="e" d="M117 500q0 106 30.5 200.5t89 166t143.5 113.5t193 42q105 0 186 -33t136.5 -93.5t84 -147t28.5 -193.5q0 -37 -1 -62t-3 -47h-705q0 -154 86 -236.5t248 -82.5q44 0 88 3.5t85 9.5t78.5 13.5t69.5 16.5v-143q-71 -20 -160.5 -32.5t-185.5 -12.5q-129 0 -222 35 t-152.5 101.5t-88 163t-28.5 218.5zM299 580h528v21q0 55 -13 101q-16 56 -49.5 96t-83.5 62.5t-116 22.5q-57 0 -104 -22t-81 -62t-55 -96t-26 -123z" />
|
||||||
|
<glyph unicode="f" d="M0 1004zM80 713v145h323v166q0 401 418 401q104 0 230 -24v-150q-137 29 -236 29q-235 0 -235 -246v-176h440v-145h-440v-713h-177v713h-323z" />
|
||||||
|
<glyph unicode="g" d="M94 -160q0 73 34 128t105 106q-26 12 -45 30t-31 39.5t-18 45.5t-6 47q0 65 30.5 119t72.5 102q-19 23 -33.5 45t-25 47.5t-16 55t-5.5 67.5q0 78 28.5 142.5t80 110.5t124 71.5t160.5 25.5q37 0 71 -5t60 -13h364v-142h-161q28 -35 43.5 -81.5t15.5 -100.5 q0 -78 -28.5 -142.5t-80.5 -110.5t-124.5 -71.5t-159.5 -25.5q-63 0 -118 13.5t-87 33.5q-19 -28 -32 -53t-13 -56q0 -38 36.5 -63t96.5 -27l264 -10q75 -2 138.5 -19t109 -49t71 -79t25.5 -109q0 -67 -29 -127t-89.5 -105.5t-153.5 -72.5t-221 -27q-122 0 -207.5 19.5 t-140.5 54t-80 82t-25 104.5zM279 -145q0 -71 74 -103.5t206 -32.5q83 0 139.5 15t91 39.5t49.5 56t15 64.5q0 61 -50 90t-153 34l-262 9q-33 -22 -54.5 -43t-33.5 -42.5t-17 -43t-5 -43.5zM332 676q0 -48 16 -88t45 -68t68.5 -43.5t87.5 -15.5q52 0 92.5 17.5t68 47.5 t42 69t14.5 81q0 48 -16 88t-45 68t-68.5 43.5t-87.5 15.5q-52 0 -92.5 -18t-68 -47.5t-42 -68.5t-14.5 -81z" />
|
||||||
|
<glyph unicode="h" d="M160 0v1413h174v-409l-6 -158q41 49 80.5 82.5t79 54.5t80.5 30t85 9q150 0 232 -91.5t82 -275.5v-655h-174v641q0 116 -43.5 173.5t-124.5 57.5q-35 0 -65.5 -9.5t-63.5 -33t-72 -63.5t-90 -100v-666h-174z" />
|
||||||
|
<glyph unicode="i" d="M172 0v145h330v715h-297v144h473v-859h299v-145h-805zM426 1288q0 29 10.5 53.5t29 43.5t43.5 29.5t54 10.5t54 -10.5t43.5 -29.5t29 -43.5t10.5 -53.5q0 -28 -10.5 -53t-29 -44t-43.5 -29.5t-54 -10.5t-54 10.5t-43.5 29.5t-29 44t-10.5 53z" />
|
||||||
|
<glyph unicode="j" d="M131 -203q31 -16 66.5 -29t73 -22t75.5 -13.5t74 -4.5q114 0 179 72t65 212v848h-492v144h668v-986q0 -105 -30 -186.5t-86 -137.5t-137.5 -85t-183.5 -29q-74 0 -144.5 13.5t-127.5 37.5v166zM598 1288q0 28 10.5 53t29 44t43.5 29.5t54 10.5t54 -10.5t43.5 -29.5 t29 -44t10.5 -53q0 -29 -10.5 -53.5t-29 -43.5t-43.5 -29.5t-54 -10.5t-54 10.5t-43.5 29.5t-29 43.5t-10.5 53.5z" />
|
||||||
|
<glyph unicode="k" d="M182 0v1413h174v-868l451 459h230l-471 -463l497 -541h-239l-468 538v-538h-174z" />
|
||||||
|
<glyph unicode="l" d="M172 0v145h330v1125h-297v143h473v-1268h299v-145h-805z" />
|
||||||
|
<glyph unicode="m" d="M90 0v1004h133l8 -191q26 57 50.5 97t50.5 64.5t55.5 36t65.5 11.5q81 0 123 -53t42 -164q24 52 47 92.5t49.5 68t58.5 42t74 14.5q189 0 189 -291v-731h-160v721q0 47 -3.5 77t-11 47.5t-19 24.5t-28.5 7q-20 0 -37 -12t-36.5 -39t-43 -71.5t-55.5 -109.5v-645h-159v702 q0 55 -3.5 89t-11 53t-19.5 26t-29 7q-18 0 -34 -10t-35.5 -36t-43.5 -71t-57 -115v-645h-160z" />
|
||||||
|
<glyph unicode="n" d="M160 0v1004h155l7 -162q44 52 85 86.5t80.5 55.5t80.5 29.5t85 8.5q155 0 234.5 -91.5t79.5 -275.5v-655h-174v641q0 118 -44 174.5t-131 56.5q-32 0 -62.5 -9.5t-63.5 -33t-71.5 -63.5t-86.5 -100v-666h-174z" />
|
||||||
|
<glyph unicode="o" d="M92 496q0 117 33 213.5t95 166t151 108t202 38.5q108 0 193.5 -33.5t145 -98t91 -160.5t31.5 -220q0 -117 -33 -214.5t-95 -167t-151 -108t-202 -38.5q-108 0 -193.5 33.5t-145 98.5t-91 161t-31.5 221zM270 502q0 -93 20.5 -163t58.5 -116.5t92 -70t122 -23.5 q78 0 133.5 30.5t91 81.5t52 118.5t16.5 142.5q0 93 -20.5 162.5t-58.5 116t-92.5 70t-121.5 23.5q-78 0 -133.5 -30.5t-91 -81.5t-52 -118.5t-16.5 -141.5z" />
|
||||||
|
<glyph unicode="p" d="M160 -410v1414h155l11 -168q75 103 160 144.5t184 41.5q86 0 151 -36t109 -101.5t66 -158t22 -206.5q0 -134 -37.5 -234t-103.5 -166t-156 -99t-195 -33q-48 0 -95.5 5t-96.5 17v-420h-174zM334 172q48 -20 101 -31.5t104 -11.5q141 0 221 95.5t80 287.5q0 79 -11.5 145 t-36.5 113t-64 73.5t-93 26.5q-33 0 -67 -10.5t-70.5 -35t-77 -65t-86.5 -100.5v-487z" />
|
||||||
|
<glyph unicode="q" d="M109 481q0 108 28.5 205t88 170.5t152.5 116.5t222 43q51 0 101 -8t106 -25l154 39v-1432h-175v379l9 215q-142 -202 -338 -202q-88 0 -153 36t-108.5 102t-65 158t-21.5 203zM287 492q0 -84 12.5 -151t38 -113.5t64 -71.5t90.5 -25q66 0 139.5 59t154.5 175v466 q-40 19 -90.5 31t-107.5 12q-147 0 -224 -97t-77 -285z" />
|
||||||
|
<glyph unicode="r" d="M201 0v1004h159l5 -185q89 107 175.5 155t174.5 48q157 0 237 -101q75 -94 74 -273v-27h-176v17q0 118 -38 174q-42 60 -122 60q-35 0 -70.5 -12.5t-73 -40t-79.5 -70.5t-90 -104v-645h-176z" />
|
||||||
|
<glyph unicode="s" d="M182 20v160q88 -25 175 -38t173 -13q125 0 185 34t60 97q0 27 -9.5 48.5t-34.5 41t-77.5 40.5t-143.5 48q-68 20 -125.5 45.5t-99.5 60.5t-66 82t-24 111q0 42 19.5 92t66.5 93t127 71.5t200 28.5q59 0 131 -6.5t150 -22.5v-155q-82 20 -155.5 29.5t-127.5 9.5 q-65 0 -109.5 -10t-72 -27.5t-39.5 -41t-12 -50.5t10.5 -49t39 -42.5t79.5 -41t133 -44.5q89 -26 150 -54.5t99 -63.5t54.5 -79t16.5 -100q0 -53 -18 -95t-49 -74.5t-72 -55.5t-87.5 -38t-95.5 -22t-96 -7q-102 0 -187.5 9t-167.5 29z" />
|
||||||
|
<glyph unicode="t" d="M63 858v146h281v276l174 45v-321h451v-146h-451v-510q0 -108 57.5 -161.5t169.5 -53.5q48 0 105 7.5t119 23.5v-150q-59 -15 -122 -21.5t-128 -6.5q-189 0 -282 85.5t-93 262.5v524h-281z" />
|
||||||
|
<glyph unicode="u" d="M160 348v656h174v-642q0 -231 174 -231q32 0 62.5 9.5t64 33t72 63.5t86.5 101v666h174v-1004h-156l-6 162q-45 -52 -85.5 -86.5t-80.5 -55.5t-80.5 -29.5t-85.5 -8.5q-155 0 -234 91t-79 275z" />
|
||||||
|
<glyph unicode="v" d="M66 1004h198l246 -664l53 -162l55 166l244 660h191l-394 -1004h-200z" />
|
||||||
|
<glyph unicode="w" d="M37 1004h170l84 -682l18 -152l43 133l146 451h125l157 -445l45 -133l15 141l78 687h172l-146 -1004h-211l-145 420l-29 102l-33 -108l-139 -414h-205z" />
|
||||||
|
<glyph unicode="x" d="M70 0l389 504l-371 500h223l264 -386l259 386h215l-377 -504l393 -500h-231l-271 383l-268 -383h-225z" />
|
||||||
|
<glyph unicode="y" d="M59 -254q22 -3 48 -5.5t55 -2.5q48 0 89.5 14t78.5 45.5t71 81.5t66 121l-401 1004h198l254 -664l51 -156l58 160l235 660h191l-342 -898q-53 -137 -109.5 -236t-123.5 -162.5t-147 -93.5t-179 -30q-26 0 -47 1t-46 3v158z" />
|
||||||
|
<glyph unicode="z" d="M164 0v125l567 733h-553v146h762v-136l-557 -721h590v-147h-809z" />
|
||||||
|
<glyph unicode="{" d="M162 506v139h43q73 0 119 12t72 36.5t36 62.5t10 90v237q0 84 20 151.5t65.5 115t118 73t177.5 25.5h74v-140h-59q-232 0 -232 -225v-233q0 -244 -211 -275q213 -21 213 -274v-342q0 -229 230 -229h59v-140h-74q-193 0 -287 90.5t-94 274.5v344q0 49 -11 87.5t-38.5 65 t-73 40.5t-114.5 14h-43z" />
|
||||||
|
<glyph unicode="|" d="M481 -410v2048h164v-2048h-164z" />
|
||||||
|
<glyph unicode="}" d="M229 -270h60q231 0 231 225v346q0 244 211 274q-213 23 -213 275v229q0 229 -229 229h-60v140h74q193 0 287 -90.5t94 -274.5v-231q0 -49 11 -87.5t38.5 -65t73.5 -40.5t115 -14h43v-139h-43q-73 0 -119.5 -12t-72.5 -36.5t-36 -62.5t-10 -90v-350q0 -84 -20 -151.5 t-65 -115t-118 -73t-178 -25.5h-74v140z" />
|
||||||
|
<glyph unicode="~" d="M66 401q-2 76 15.5 140.5t53 112t89 74t124.5 26.5q55 0 99 -18.5t81.5 -46.5t69 -61t62 -61t60.5 -46.5t64 -18.5q63 0 90 46t27 148h160q1 -76 -16 -140.5t-53 -111.5t-89.5 -73.5t-124.5 -26.5q-55 0 -99 18.5t-81.5 46.5t-69 61t-62 61t-60.5 46.5t-64 18.5 q-59 0 -87.5 -47t-28.5 -148h-160z" />
|
||||||
|
<glyph unicode=" " />
|
||||||
|
<glyph unicode="¡" d="M434 891q0 27 10.5 51t28.5 41.5t41.5 28t50.5 10.5q28 0 52 -10.5t42 -28t28.5 -41.5t10.5 -51q0 -28 -10.5 -52t-28.5 -42t-42 -28.5t-52 -10.5q-27 0 -50.5 10.5t-41.5 28.5t-28.5 42t-10.5 52zM461 -410l26 1031h154l31 -1031h-211z" />
|
||||||
|
<glyph unicode="¢" d="M125 657q0 112 35 203.5t99 157.5t153 103.5t196 41.5l43 332h148l-45 -340q40 -5 78 -14.5t75 -22.5v-164q-42 20 -85 34t-87 22l-94 -693q71 0 137 14.5t129 45.5v-158q-134 -49 -284 -49l-58 -420h-145l57 432q-171 35 -261.5 154t-90.5 321zM307 666 q0 -131 50 -212.5t141 -115.5l90 676q-59 -8 -110.5 -34.5t-89.5 -71t-59.5 -105.5t-21.5 -137z" />
|
||||||
|
<glyph unicode="£" d="M92 0v148h160v431h-160v143h160v180q0 101 29.5 179.5t84 132.5t132 82.5t174.5 28.5q106 0 190 -37.5t144 -92.5l-97 -111q-26 22 -52 39.5t-54.5 29.5t-61.5 18t-73 6q-54 0 -98 -17t-75 -50t-48 -81.5t-17 -112.5v-194h436v-143h-436v-431h567v-148h-905z" />
|
||||||
|
<glyph unicode="¤" d="M86 152l174 229q-35 51 -54.5 119.5t-19.5 154.5q0 78 21 147.5t61 125.5l-182 243l154 91l147 -230q38 22 84 33.5t100 11.5q102 0 179 -37l141 222l149 -91l-174 -229q35 -51 54.5 -119.5t19.5 -154.5q0 -78 -21 -147.5t-61 -125.5l182 -243l-153 -91l-148 230 q-38 -22 -84 -33.5t-100 -11.5q-103 0 -178 37l-141 -222zM366 662q0 -131 53 -197t144 -66q52 0 89.5 24t61.5 61.5t35 84.5t11 93q0 131 -53 196.5t-144 65.5q-52 0 -89 -23.5t-61.5 -61t-35.5 -84.5t-11 -93z" />
|
||||||
|
<glyph unicode="¥" d="M55 1307h205l209 -367l100 -188l107 192l205 363h196l-424 -705v-29h308v-135h-308v-162h308v-135h-308v-141h-180v141h-307v135h307v162h-309v135h309v29z" />
|
||||||
|
<glyph unicode="¦" d="M481 -410v836h164v-836h-164zM481 827v811h164v-811h-164z" />
|
||||||
|
<glyph unicode="§" d="M141 674q0 39 11 79t33 77.5t55 71t77 59.5q-29 24 -52 64.5t-23 94.5q0 48 19.5 101.5t66.5 98.5t127 75t200 30q115 0 226 -24v-150q-63 17 -118.5 24t-111.5 7q-65 0 -108.5 -11t-70.5 -30.5t-38.5 -46.5t-11.5 -59q0 -34 24.5 -63.5t64.5 -58.5t91 -58t104.5 -61.5 t104.5 -69.5t91 -82t64.5 -98.5t24.5 -119.5q0 -40 -11.5 -80t-34 -77.5t-55.5 -70.5t-75 -58q32 -26 55 -67t23 -89q0 -83 -39 -142.5t-100 -98t-135.5 -56.5t-145.5 -18q-51 0 -91 2t-75 6t-67 10.5t-66 15.5v160q37 -12 71.5 -21t69.5 -15t72.5 -8.5t79.5 -2.5 q125 0 185.5 41.5t60.5 114.5q0 33 -24.5 62t-65 57t-91.5 57t-105 61.5t-105 69.5t-91.5 81.5t-65 97.5t-24.5 118zM311 690q0 -61 36 -109.5t92.5 -91t124.5 -81.5t132 -80q31 15 54 37.5t39 47.5t24 50.5t8 46.5q0 61 -37 109.5t-94 90t-125.5 80t-130.5 80.5 q-30 -15 -53 -37t-38.5 -47t-23.5 -50t-8 -46z" />
|
||||||
|
<glyph unicode="¨" d="M0 1004zM236 1292q0 23 9 43.5t24 36t35.5 24.5t43.5 9t43.5 -9t36 -24.5t24.5 -36t9 -43.5t-9 -43.5t-24.5 -35.5t-36 -24t-43.5 -9t-43.5 9t-35.5 24t-24 35.5t-9 43.5zM666 1292q0 23 9 43.5t24 36t35.5 24.5t43.5 9t43.5 -9t36 -24.5t24.5 -36t9 -43.5t-9 -43.5 t-24.5 -35.5t-36 -24t-43.5 -9t-43.5 9t-35.5 24t-24 35.5t-9 43.5z" />
|
||||||
|
<glyph unicode="©" d="M12 653q0 148 39.5 271t112.5 211.5t174.5 138t226.5 49.5q129 0 231 -51.5t172.5 -142t108 -213t37.5 -263.5q0 -148 -39.5 -271t-112.5 -211.5t-175 -137.5t-226 -49q-129 0 -231 51.5t-172.5 141.5t-108 212.5t-37.5 263.5zM160 653q0 -114 28.5 -212.5t81 -171 t127 -113.5t166.5 -41q91 0 165.5 38.5t127.5 109t81.5 169.5t28.5 221q0 114 -28 212.5t-80.5 171t-127.5 114t-167 41.5q-90 0 -164.5 -38.5t-127.5 -109t-82 -170t-29 -221.5zM299 647q0 78 21.5 140.5t61 107t95.5 68.5t125 24q93 0 168 -31v-134q-35 19 -72 29t-75 10 q-82 0 -127 -54.5t-45 -156.5q0 -106 44.5 -155.5t129.5 -49.5q76 0 145 37v-130q-83 -33 -174 -33q-297 0 -297 328z" />
|
||||||
|
<glyph unicode="ª" d="M225 358v136h676v-136h-676zM244 821q0 97 83 156t251 59h104v49q0 51 -34.5 82t-117.5 31q-49 0 -110 -14t-123 -39v133q51 20 117 31.5t135 11.5q78 0 133 -16t90 -46t51.5 -72.5t16.5 -94.5v-461h-133l-11 92q-46 -48 -102.5 -77.5t-134.5 -29.5q-99 0 -157 51.5 t-58 153.5zM410 825q0 -42 24 -64t72 -22q40 0 84 22.5t92 65.5v101h-119q-41 0 -70 -8t-47.5 -22.5t-27 -33t-8.5 -39.5z" />
|
||||||
|
<glyph unicode="«" d="M143 543l258 403l138 -69l-218 -334l218 -336l-138 -70zM563 543l275 399l133 -72l-234 -327l234 -328l-133 -72z" />
|
||||||
|
<glyph unicode="¬" d="M117 469v152h854v-447h-170v295h-684z" />
|
||||||
|
<glyph unicode="­" d="M264 463v164h598v-164h-598z" />
|
||||||
|
<glyph unicode="‐" d="M264 463v164h598v-164h-598z" />
|
||||||
|
<glyph unicode="®" d="M106 969q0 94 36 177.5t98 145t145 97.5t178 36q94 0 177.5 -36t145.5 -97.5t98 -145t36 -177.5q0 -95 -36 -178t-98 -145t-145.5 -98t-177.5 -36q-95 0 -178 36t-145 98t-98 145t-36 178zM221 969q0 -74 26.5 -138.5t73 -112.5t109 -76t133.5 -28q72 0 134 28t108.5 76 t73 112.5t26.5 138.5q0 73 -26.5 137.5t-73 112.5t-108.5 76t-134 28q-71 0 -133.5 -28t-109 -76t-73 -112.5t-26.5 -137.5zM397 709v520h156q88 0 140 -32t52 -112q0 -57 -32.5 -89t-81.5 -40q18 -5 34 -22t33 -51l82 -174h-116l-74 168q-11 23 -28.5 35t-43.5 12h-20v-215 h-101zM498 1001h41q46 0 74 18.5t28 55.5q0 38 -24.5 55t-73.5 17h-45v-146z" />
|
||||||
|
<glyph unicode="¯" d="M0 1004zM301 1225v133h524v-133h-524z" />
|
||||||
|
<glyph unicode="ˉ" d="M0 1004zM301 1225v133h524v-133h-524z" />
|
||||||
|
<glyph unicode="°" d="M213 1083q0 72 26 134.5t73 108.5t112.5 72.5t144.5 26.5q83 0 147.5 -24t108 -67.5t66 -104t22.5 -133.5q0 -72 -26 -134.5t-73 -108.5t-112.5 -72.5t-144.5 -26.5q-83 0 -147 24t-108 67.5t-66.5 104t-22.5 133.5zM375 1090q0 -43 10.5 -80t33.5 -64t58.5 -42t85.5 -15 q90 0 139 55t49 146q0 43 -11 79.5t-33.5 63.5t-58 42t-85.5 15q-45 0 -80 -14.5t-59 -40.5t-36.5 -63t-12.5 -82z" />
|
||||||
|
<glyph unicode="±" d="M104 684v147h375v388h168v-388h375v-147h-375v-389h-168v389h-375zM133 0v145h860v-145h-860z" />
|
||||||
|
<glyph unicode="²" d="M246 774l217 168q58 45 94.5 77t57.5 57.5t28.5 48t7.5 49.5q0 46 -33.5 76t-99.5 30q-51 0 -97 -18.5t-83 -50.5l-86 106q54 54 128.5 83.5t158.5 29.5q63 0 117.5 -15.5t94 -46.5t62.5 -76.5t23 -105.5q0 -47 -14 -88t-42.5 -79.5t-70.5 -75.5t-97 -76l-114 -82h385 v-154h-637v143z" />
|
||||||
|
<glyph unicode="³" d="M274 771q34 -8 89.5 -12t115.5 -4q91 0 145 28.5t54 80.5q0 24 -10 43.5t-33.5 33t-62.5 21t-97 7.5h-82v129h76q49 0 82 8.5t53 23t28.5 34t8.5 40.5q0 19 -7 34.5t-23 27t-43.5 18t-67.5 6.5q-54 0 -109 -9t-100 -23v141q24 7 53.5 12.5t61 9.5t64 6.5t62.5 2.5 q148 0 218.5 -53.5t70.5 -141.5q0 -71 -33 -115.5t-92 -70.5q38 -10 68.5 -25t52.5 -36.5t33.5 -50.5t11.5 -68q0 -56 -25 -103t-73.5 -80.5t-121.5 -52t-169 -18.5q-29 0 -58 1t-55 3t-48 5t-38 7v140z" />
|
||||||
|
<glyph unicode="´" d="M0 1004zM459 1171l241 242h252l-319 -242h-174z" />
|
||||||
|
<glyph unicode="µ" d="M160 -410v1414h174v-639q0 -232 174 -232q30 0 62 10t63.5 32.5t67 62t79.5 100.5v666h174v-689q0 -51 5 -85t17.5 -54.5t32.5 -29.5t50 -9h18v-139q-14 -3 -31.5 -5.5t-37.5 -2.5q-50 0 -85.5 12.5t-59.5 36t-38.5 57.5t-23.5 76q-43 -57 -83 -93.5t-79.5 -57.5t-75 -29 t-68.5 -8q-52 0 -96.5 18.5t-78.5 57.5l14 -173v-297h-174z" />
|
||||||
|
<glyph unicode="¶" d="M109 995q0 87 32.5 163t99 133t168.5 89.5t242 32.5h346v-1208q0 -105 -29.5 -187t-85 -137.5t-135 -84.5t-178.5 -29t-185 32t-159 90l90 131q53 -46 121.5 -75t141.5 -29q114 0 179.5 71t65.5 212v1071h-168v-699q-155 0 -259.5 33.5t-168.5 91t-91 135t-27 164.5z" />
|
||||||
|
<glyph unicode="·" d="M397 565q0 34 13 65t35.5 53.5t52.5 36t65 13.5q34 0 64.5 -13.5t53 -36t35.5 -53.5t13 -65t-13 -64t-35.5 -52.5t-53 -36t-64.5 -13.5q-35 0 -65 13.5t-52.5 36t-35.5 52.5t-13 64z" />
|
||||||
|
<glyph unicode="∙" d="M397 565q0 34 13 65t35.5 53.5t52.5 36t65 13.5q34 0 64.5 -13.5t53 -36t35.5 -53.5t13 -65t-13 -64t-35.5 -52.5t-53 -36t-64.5 -13.5q-35 0 -65 13.5t-52.5 36t-35.5 52.5t-13 64z" />
|
||||||
|
<glyph unicode="¸" d="M436 -295l66 295h172l-86 -295h-152z" />
|
||||||
|
<glyph unicode="¹" d="M227 1266l312 156h139v-646h201v-145h-613v145h238v467l-219 -108z" />
|
||||||
|
<glyph unicode="º" d="M221 965q0 76 24 141t69 113t110.5 75t148.5 27q78 0 139.5 -22t104 -65.5t65.5 -108.5t23 -150q0 -75 -23.5 -140.5t-68.5 -114t-109.5 -76.5t-146.5 -28q-78 0 -140.5 22t-106 65.5t-66.5 109t-23 152.5zM225 358v136h676v-136h-676zM385 969q0 -109 48.5 -163 t129.5 -54q45 0 78 16.5t55.5 46t33.5 69.5t11 87q0 108 -45.5 161t-132.5 53q-45 0 -78 -17t-55.5 -46.5t-33.5 -69t-11 -83.5z" />
|
||||||
|
<glyph unicode="»" d="M156 215l233 328l-233 327l133 72l274 -399l-274 -400zM588 207l217 336l-217 334l137 69l258 -403l-258 -406z" />
|
||||||
|
<glyph unicode="¼" d="M20 0l920 1413h166l-922 -1413h-164zM25 1296l239 129h139v-581h-157v426l-166 -90zM535 109v122l219 338h233v-338h90v-122h-90v-109h-153v109h-299zM688 231h146v226z" />
|
||||||
|
<glyph unicode="½" d="M20 0l920 1413h166l-922 -1413h-164zM25 1296l239 129h139v-581h-157v426l-166 -90zM633 502q22 19 45 34.5t48.5 26t55 16t64.5 5.5q44 0 83 -12.5t68.5 -36.5t46.5 -59.5t17 -82.5q0 -30 -9.5 -56.5t-30 -53t-53 -54.5t-79.5 -61l-62 -43h252v-125h-440v125l186 147 q47 35 63.5 60.5t16.5 54.5q0 15 -3.5 28t-12.5 23.5t-24.5 16.5t-39.5 6q-32 0 -59.5 -14t-65.5 -46z" />
|
||||||
|
<glyph unicode="¾" d="M20 0l920 1413h166l-922 -1413h-164zM86 842v119q23 -5 53.5 -8t59.5 -3q63 0 89.5 18.5t26.5 49.5q0 34 -24 47.5t-78 13.5h-90v113h84q47 0 64.5 17.5t17.5 43.5q0 23 -18.5 39.5t-63.5 16.5q-31 0 -58 -5.5t-53 -11.5v113q34 12 71.5 17t82.5 5q100 0 152.5 -38 t52.5 -103q0 -52 -19 -84t-61 -49q56 -11 85 -44t29 -87q0 -42 -18 -77t-53.5 -61t-88 -40.5t-122.5 -14.5q-31 0 -63 3.5t-58 9.5zM535 109v122l219 338h233v-338h90v-122h-90v-109h-153v109h-299zM688 231h146v226z" />
|
||||||
|
<glyph unicode="¿" d="M203 35q0 161 90.5 245t259.5 95l8 246h150l12 -383h-117q-61 0 -102 -13t-66 -37t-36 -58.5t-11 -78.5q0 -73 30.5 -129.5t84.5 -95.5t128.5 -59.5t162.5 -20.5h24v-156h-26q-101 0 -184.5 19t-149.5 51.5t-114.5 76.5t-80.5 93.5t-47.5 102t-15.5 102.5zM506 891 q0 27 10 51t27.5 41.5t41.5 28t52 10.5t52 -10.5t41.5 -28t27.5 -41.5t10 -51q0 -28 -10 -52t-27.5 -42t-41.5 -28.5t-52 -10.5t-52 10.5t-41.5 28.5t-27.5 42t-10 52z" />
|
||||||
|
<glyph unicode="À" d="M10 0l434 1307h244l428 -1307h-194l-91 285h-544l-92 -285h-185zM338 444h442l-221 699zM0 1307zM205 1659h252l211 -213h-179z" />
|
||||||
|
<glyph unicode="Á" d="M10 0l434 1307h244l428 -1307h-194l-91 285h-544l-92 -285h-185zM338 444h442l-221 699zM0 1307zM459 1446l211 213h252l-285 -213h-178z" />
|
||||||
|
<glyph unicode="Â" d="M10 0l434 1307h244l428 -1307h-194l-91 285h-544l-92 -285h-185zM338 444h442l-221 699zM0 1307zM248 1446l231 213h168l232 -213h-183l-135 102l-135 -102h-178z" />
|
||||||
|
<glyph unicode="Ã" d="M10 0l434 1307h244l428 -1307h-194l-91 285h-544l-92 -285h-185zM338 444h442l-221 699zM0 1307zM201 1526q43 72 97.5 108.5t123.5 36.5q58 0 98 -17t71 -37t58.5 -37t61.5 -17q40 0 70.5 27.5t58.5 70.5l86 -82q-44 -72 -98 -108.5t-123 -36.5q-59 0 -98.5 17t-70.5 37 t-58.5 37t-61.5 17q-41 0 -71 -27.5t-58 -70.5z" />
|
||||||
|
<glyph unicode="Ä" d="M10 0l434 1307h244l428 -1307h-194l-91 285h-544l-92 -285h-185zM338 444h442l-221 699zM0 1307zM238 1552q0 22 8.5 42t22.5 34t33.5 22.5t41.5 8.5t41.5 -8.5t34 -22.5t23 -34t8.5 -42t-8.5 -41.5t-23 -33.5t-34 -22.5t-41.5 -8.5q-45 0 -75.5 30.5t-30.5 75.5z M676 1552q0 22 8.5 42t22.5 34t33.5 22.5t41.5 8.5t42 -8.5t34 -22.5t22.5 -34t8.5 -42t-8.5 -41.5t-22.5 -33.5t-34 -22.5t-42 -8.5q-45 0 -75.5 30.5t-30.5 75.5z" />
|
||||||
|
<glyph unicode="Å" d="M10 0l434 1307h244l428 -1307h-194l-91 285h-544l-92 -285h-185zM338 444h442l-221 699zM0 1307zM362 1550q0 42 15.5 77t42.5 60.5t63.5 39t79.5 13.5t80 -13.5t64 -39t42 -60.5t15 -77q0 -41 -15 -76.5t-42 -61t-64 -40t-80 -14.5t-79.5 14.5t-63.5 40t-42.5 61 t-15.5 76.5zM473 1550q0 -40 25 -65t65 -25q42 0 66 25t24 65q0 41 -24 64.5t-66 23.5q-40 0 -65 -23.5t-25 -64.5z" />
|
||||||
|
<glyph unicode="Æ" d="M-43 0l532 1307h582v-142h-321v-417h307v-142h-307v-463h335v-143h-501v281h-342l-109 -281h-176zM297 424h287v743z" />
|
||||||
|
<glyph unicode="Ç" d="M92 639q0 157 41 284t117 215.5t184 136.5t242 48q91 0 169 -15.5t150 -47.5v-175q-71 39 -147 59.5t-166 20.5q-92 0 -166.5 -34.5t-126.5 -100t-80 -160t-28 -215.5q0 -252 103 -382t302 -130q84 0 161 19.5t148 54.5v-168q-159 -65 -319 -65l-82 -279h-152l66 295 q-202 41 -309 204.5t-107 434.5z" />
|
||||||
|
<glyph unicode="È" d="M201 0v1307h743v-150h-565v-405h543v-150h-543v-450h565v-152h-743zM0 1307zM205 1659h252l211 -213h-179z" />
|
||||||
|
<glyph unicode="É" d="M201 0v1307h743v-150h-565v-405h543v-150h-543v-450h565v-152h-743zM0 1307zM459 1446l211 213h252l-285 -213h-178z" />
|
||||||
|
<glyph unicode="Ê" d="M201 0v1307h743v-150h-565v-405h543v-150h-543v-450h565v-152h-743zM0 1307zM248 1446l231 213h168l232 -213h-183l-135 102l-135 -102h-178z" />
|
||||||
|
<glyph unicode="Ë" d="M201 0v1307h743v-150h-565v-405h543v-150h-543v-450h565v-152h-743zM0 1307zM238 1552q0 22 8.5 42t22.5 34t33.5 22.5t41.5 8.5t41.5 -8.5t34 -22.5t23 -34t8.5 -42t-8.5 -41.5t-23 -33.5t-34 -22.5t-41.5 -8.5q-45 0 -75.5 30.5t-30.5 75.5zM676 1552q0 22 8.5 42 t22.5 34t33.5 22.5t41.5 8.5t42 -8.5t34 -22.5t22.5 -34t8.5 -42t-8.5 -41.5t-22.5 -33.5t-34 -22.5t-42 -8.5q-45 0 -75.5 30.5t-30.5 75.5z" />
|
||||||
|
<glyph unicode="Ì" d="M172 0v152h301v1005h-301v150h782v-150h-301v-1005h301v-152h-782zM0 1307zM205 1659h252l211 -213h-179z" />
|
||||||
|
<glyph unicode="Í" d="M172 0v152h301v1005h-301v150h782v-150h-301v-1005h301v-152h-782zM0 1307zM459 1446l211 213h252l-285 -213h-178z" />
|
||||||
|
<glyph unicode="Î" d="M172 0v152h301v1005h-301v150h782v-150h-301v-1005h301v-152h-782zM0 1307zM248 1446l231 213h168l232 -213h-183l-135 102l-135 -102h-178z" />
|
||||||
|
<glyph unicode="Ï" d="M172 0v152h301v1005h-301v150h782v-150h-301v-1005h301v-152h-782zM0 1307zM238 1552q0 22 8.5 42t22.5 34t33.5 22.5t41.5 8.5t41.5 -8.5t34 -22.5t23 -34t8.5 -42t-8.5 -41.5t-23 -33.5t-34 -22.5t-41.5 -8.5q-45 0 -75.5 30.5t-30.5 75.5zM676 1552q0 22 8.5 42 t22.5 34t33.5 22.5t41.5 8.5t42 -8.5t34 -22.5t22.5 -34t8.5 -42t-8.5 -41.5t-22.5 -33.5t-34 -22.5t-42 -8.5q-45 0 -75.5 30.5t-30.5 75.5z" />
|
||||||
|
<glyph unicode="Ð" d="M0 602v150h139v555h318q305 0 450.5 -157.5t145.5 -481.5q0 -94 -13.5 -180t-44.5 -160t-81 -134.5t-122.5 -103.5t-170 -66.5t-222.5 -23.5h-260v602h-139zM317 154h113q223 0 329.5 125.5t106.5 375.5q0 139 -24.5 235t-75.5 155t-129.5 85.5t-185.5 26.5h-134v-405 h226v-150h-226v-448z" />
|
||||||
|
<glyph unicode="Ñ" d="M119 0v1307h229l363 -772l131 -299v700v371h166v-1307h-232l-381 815l-110 262v-659v-418h-166zM0 1307zM201 1526q43 72 97.5 108.5t123.5 36.5q58 0 98 -17t71 -37t58.5 -37t61.5 -17q40 0 70.5 27.5t58.5 70.5l86 -82q-44 -72 -98 -108.5t-123 -36.5q-59 0 -98.5 17 t-70.5 37t-58.5 37t-61.5 17q-41 0 -71 -27.5t-58 -70.5z" />
|
||||||
|
<glyph unicode="Ò" d="M57 647q0 174 41 302t111.5 211.5t164.5 124t199 40.5q126 0 219.5 -46t155.5 -131.5t92.5 -208.5t30.5 -277q0 -176 -41.5 -304t-112 -211.5t-165 -124t-199.5 -40.5q-126 0 -219.5 45.5t-155 131.5t-91.5 209.5t-30 278.5zM242 657q0 -116 18 -211.5t56.5 -164 t99.5 -106.5t147 -38q84 0 145 40.5t100.5 110t58.5 162.5t19 199q0 115 -17.5 210.5t-56.5 164.5t-100.5 107t-148.5 38q-84 0 -144.5 -40.5t-99.5 -110t-58 -163t-19 -198.5zM0 1307zM205 1659h252l211 -213h-179z" />
|
||||||
|
<glyph unicode="Ó" d="M57 647q0 174 41 302t111.5 211.5t164.5 124t199 40.5q126 0 219.5 -46t155.5 -131.5t92.5 -208.5t30.5 -277q0 -176 -41.5 -304t-112 -211.5t-165 -124t-199.5 -40.5q-126 0 -219.5 45.5t-155 131.5t-91.5 209.5t-30 278.5zM242 657q0 -116 18 -211.5t56.5 -164 t99.5 -106.5t147 -38q84 0 145 40.5t100.5 110t58.5 162.5t19 199q0 115 -17.5 210.5t-56.5 164.5t-100.5 107t-148.5 38q-84 0 -144.5 -40.5t-99.5 -110t-58 -163t-19 -198.5zM0 1307zM459 1446l211 213h252l-285 -213h-178z" />
|
||||||
|
<glyph unicode="Ô" d="M57 647q0 174 41 302t111.5 211.5t164.5 124t199 40.5q126 0 219.5 -46t155.5 -131.5t92.5 -208.5t30.5 -277q0 -176 -41.5 -304t-112 -211.5t-165 -124t-199.5 -40.5q-126 0 -219.5 45.5t-155 131.5t-91.5 209.5t-30 278.5zM242 657q0 -116 18 -211.5t56.5 -164 t99.5 -106.5t147 -38q84 0 145 40.5t100.5 110t58.5 162.5t19 199q0 115 -17.5 210.5t-56.5 164.5t-100.5 107t-148.5 38q-84 0 -144.5 -40.5t-99.5 -110t-58 -163t-19 -198.5zM0 1307zM248 1446l231 213h168l232 -213h-183l-135 102l-135 -102h-178z" />
|
||||||
|
<glyph unicode="Õ" d="M57 647q0 174 41 302t111.5 211.5t164.5 124t199 40.5q126 0 219.5 -46t155.5 -131.5t92.5 -208.5t30.5 -277q0 -176 -41.5 -304t-112 -211.5t-165 -124t-199.5 -40.5q-126 0 -219.5 45.5t-155 131.5t-91.5 209.5t-30 278.5zM242 657q0 -116 18 -211.5t56.5 -164 t99.5 -106.5t147 -38q84 0 145 40.5t100.5 110t58.5 162.5t19 199q0 115 -17.5 210.5t-56.5 164.5t-100.5 107t-148.5 38q-84 0 -144.5 -40.5t-99.5 -110t-58 -163t-19 -198.5zM0 1307zM201 1526q43 72 97.5 108.5t123.5 36.5q58 0 98 -17t71 -37t58.5 -37t61.5 -17 q40 0 70.5 27.5t58.5 70.5l86 -82q-44 -72 -98 -108.5t-123 -36.5q-59 0 -98.5 17t-70.5 37t-58.5 37t-61.5 17q-41 0 -71 -27.5t-58 -70.5z" />
|
||||||
|
<glyph unicode="Ö" d="M57 647q0 174 41 302t111.5 211.5t164.5 124t199 40.5q126 0 219.5 -46t155.5 -131.5t92.5 -208.5t30.5 -277q0 -176 -41.5 -304t-112 -211.5t-165 -124t-199.5 -40.5q-126 0 -219.5 45.5t-155 131.5t-91.5 209.5t-30 278.5zM242 657q0 -116 18 -211.5t56.5 -164 t99.5 -106.5t147 -38q84 0 145 40.5t100.5 110t58.5 162.5t19 199q0 115 -17.5 210.5t-56.5 164.5t-100.5 107t-148.5 38q-84 0 -144.5 -40.5t-99.5 -110t-58 -163t-19 -198.5zM0 1307zM238 1552q0 22 8.5 42t22.5 34t33.5 22.5t41.5 8.5t41.5 -8.5t34 -22.5t23 -34t8.5 -42 t-8.5 -41.5t-23 -33.5t-34 -22.5t-41.5 -8.5q-45 0 -75.5 30.5t-30.5 75.5zM676 1552q0 22 8.5 42t22.5 34t33.5 22.5t41.5 8.5t42 -8.5t34 -22.5t22.5 -34t8.5 -42t-8.5 -41.5t-22.5 -33.5t-34 -22.5t-42 -8.5q-45 0 -75.5 30.5t-30.5 75.5z" />
|
||||||
|
<glyph unicode="×" d="M147 844l117 117l303 -306l301 301l107 -106l-301 -301l305 -303l-117 -117l-303 305l-301 -301l-106 107l301 301z" />
|
||||||
|
<glyph unicode="Ø" d="M57 647q0 174 41 302t111.5 211.5t164.5 124t199 40.5q62 0 115 -12l64 209h145l-78 -258q127 -75 188.5 -228.5t61.5 -373.5q0 -176 -41 -304t-111.5 -211.5t-164.5 -124t-199 -40.5q-31 0 -59 2.5t-56 7.5l-61 -207h-146l76 256q-126 72 -188 227.5t-62 378.5zM242 657 q0 -146 27.5 -259t90.5 -179l283 940q-19 5 -38.5 7.5t-41.5 2.5q-84 0 -144.5 -40.5t-99.5 -110t-58 -163t-19 -198.5zM485 145q17 -5 37 -6.5t41 -1.5q84 0 144.5 40.5t100 110t58.5 162.5t19 199q0 146 -28 257t-91 179z" />
|
||||||
|
<glyph unicode="Ù" d="M109 428v879h178v-865q0 -77 14.5 -135t47.5 -97t85.5 -59t128.5 -20q142 0 209.5 82t67.5 231v863h178v-852q0 -108 -30.5 -195.5t-89.5 -149t-144.5 -95t-196.5 -33.5q-122 0 -207 32t-138.5 90.5t-78 140.5t-24.5 183zM0 1307zM205 1659h252l211 -213h-179z" />
|
||||||
|
<glyph unicode="Ú" d="M109 428v879h178v-865q0 -77 14.5 -135t47.5 -97t85.5 -59t128.5 -20q142 0 209.5 82t67.5 231v863h178v-852q0 -108 -30.5 -195.5t-89.5 -149t-144.5 -95t-196.5 -33.5q-122 0 -207 32t-138.5 90.5t-78 140.5t-24.5 183zM0 1307zM459 1446l211 213h252l-285 -213h-178z " />
|
||||||
|
<glyph unicode="Û" d="M109 428v879h178v-865q0 -77 14.5 -135t47.5 -97t85.5 -59t128.5 -20q142 0 209.5 82t67.5 231v863h178v-852q0 -108 -30.5 -195.5t-89.5 -149t-144.5 -95t-196.5 -33.5q-122 0 -207 32t-138.5 90.5t-78 140.5t-24.5 183zM0 1307zM248 1446l231 213h168l232 -213h-183 l-135 102l-135 -102h-178z" />
|
||||||
|
<glyph unicode="Ü" d="M109 428v879h178v-865q0 -77 14.5 -135t47.5 -97t85.5 -59t128.5 -20q142 0 209.5 82t67.5 231v863h178v-852q0 -108 -30.5 -195.5t-89.5 -149t-144.5 -95t-196.5 -33.5q-122 0 -207 32t-138.5 90.5t-78 140.5t-24.5 183zM0 1307zM238 1552q0 22 8.5 42t22.5 34 t33.5 22.5t41.5 8.5t41.5 -8.5t34 -22.5t23 -34t8.5 -42t-8.5 -41.5t-23 -33.5t-34 -22.5t-41.5 -8.5q-45 0 -75.5 30.5t-30.5 75.5zM676 1552q0 22 8.5 42t22.5 34t33.5 22.5t41.5 8.5t42 -8.5t34 -22.5t22.5 -34t8.5 -42t-8.5 -41.5t-22.5 -33.5t-34 -22.5t-42 -8.5 q-45 0 -75.5 30.5t-30.5 75.5z" />
|
||||||
|
<glyph unicode="Ý" d="M0 1307h215l260 -478l96 -192l88 174l263 496h204l-473 -840v-467h-180v471zM0 1307zM459 1446l211 213h252l-285 -213h-178z" />
|
||||||
|
<glyph unicode="Þ" d="M158 0v1307h178v-195h190q97 0 186 -23t156.5 -72.5t107.5 -127.5t40 -187q0 -80 -30 -160t-93 -144t-161 -104t-234 -40h-162v-254h-178zM336 406h166q158 0 243.5 74t85.5 214q0 63 -21 113t-61.5 85.5t-98.5 54t-132 18.5h-182v-559z" />
|
||||||
|
<glyph unicode="ß" d="M147 0v1010q0 106 32 184t89 129.5t135 76.5t170 25q85 0 151.5 -20t112.5 -57t69.5 -89.5t23.5 -117.5q0 -60 -19.5 -102t-48.5 -73t-63 -55t-63 -47.5t-48.5 -50.5t-19.5 -65t26 -69t65.5 -62t85.5 -63t85.5 -72t65.5 -89.5t26 -113.5q0 -53 -19.5 -105t-64 -93 t-115.5 -67t-174 -26q-51 0 -93 4.5t-67 7.5v154q11 -4 29 -8t39 -7t43 -4.5t41 -1.5q53 0 91.5 10t63 27t36.5 39.5t12 48.5q0 47 -26 83t-65 68t-85 64t-85 69.5t-65 85t-26 111.5q0 56 19.5 96t48.5 70.5t63 54t63 48t48.5 53t19.5 67.5q0 82 -50.5 119t-146.5 37 q-54 0 -97 -15t-74 -47.5t-47.5 -83.5t-16.5 -122v-1016h-175z" />
|
||||||
|
<glyph unicode="à" d="M133 268q0 151 112.5 236.5t332.5 85.5h208v88q0 89 -57 142.5t-174 53.5q-85 0 -167.5 -19t-170.5 -54v157q33 12 73.5 23.5t85.5 20.5t94 14.5t99 5.5q91 0 164 -20t123.5 -61t77.5 -103t27 -146v-692h-156l-4 135q-82 -81 -166.5 -117t-177.5 -36q-86 0 -147 22 t-100.5 60.5t-58 90.5t-18.5 113zM317 274q0 -29 9 -55.5t29 -47t52 -32.5t78 -12q60 0 137.5 36.5t163.5 115.5v178h-221q-65 0 -112 -13t-77 -37t-44.5 -57.5t-14.5 -75.5zM0 1004zM174 1413h252l242 -242h-174z" />
|
||||||
|
<glyph unicode="á" d="M133 268q0 151 112.5 236.5t332.5 85.5h208v88q0 89 -57 142.5t-174 53.5q-85 0 -167.5 -19t-170.5 -54v157q33 12 73.5 23.5t85.5 20.5t94 14.5t99 5.5q91 0 164 -20t123.5 -61t77.5 -103t27 -146v-692h-156l-4 135q-82 -81 -166.5 -117t-177.5 -36q-86 0 -147 22 t-100.5 60.5t-58 90.5t-18.5 113zM317 274q0 -29 9 -55.5t29 -47t52 -32.5t78 -12q60 0 137.5 36.5t163.5 115.5v178h-221q-65 0 -112 -13t-77 -37t-44.5 -57.5t-14.5 -75.5zM0 1004zM459 1171l241 242h252l-319 -242h-174z" />
|
||||||
|
<glyph unicode="â" d="M133 268q0 151 112.5 236.5t332.5 85.5h208v88q0 89 -57 142.5t-174 53.5q-85 0 -167.5 -19t-170.5 -54v157q33 12 73.5 23.5t85.5 20.5t94 14.5t99 5.5q91 0 164 -20t123.5 -61t77.5 -103t27 -146v-692h-156l-4 135q-82 -81 -166.5 -117t-177.5 -36q-86 0 -147 22 t-100.5 60.5t-58 90.5t-18.5 113zM317 274q0 -29 9 -55.5t29 -47t52 -32.5t78 -12q60 0 137.5 36.5t163.5 115.5v178h-221q-65 0 -112 -13t-77 -37t-44.5 -57.5t-14.5 -75.5zM0 1004zM248 1171l244 242h143l244 -242h-177l-141 121l-141 -121h-172z" />
|
||||||
|
<glyph unicode="ã" d="M133 268q0 151 112.5 236.5t332.5 85.5h208v88q0 89 -57 142.5t-174 53.5q-85 0 -167.5 -19t-170.5 -54v157q33 12 73.5 23.5t85.5 20.5t94 14.5t99 5.5q91 0 164 -20t123.5 -61t77.5 -103t27 -146v-692h-156l-4 135q-82 -81 -166.5 -117t-177.5 -36q-86 0 -147 22 t-100.5 60.5t-58 90.5t-18.5 113zM317 274q0 -29 9 -55.5t29 -47t52 -32.5t78 -12q60 0 137.5 36.5t163.5 115.5v178h-221q-65 0 -112 -13t-77 -37t-44.5 -57.5t-14.5 -75.5zM0 1004zM201 1268q43 72 97.5 108.5t123.5 36.5q58 0 98 -17t71 -37t58.5 -37t61.5 -17 q40 0 70.5 27.5t58.5 70.5l86 -86q-44 -72 -98 -108.5t-123 -36.5q-59 0 -98.5 16.5t-70.5 37t-58.5 37.5t-61.5 17q-41 0 -71 -27.5t-58 -70.5z" />
|
||||||
|
<glyph unicode="ä" d="M133 268q0 151 112.5 236.5t332.5 85.5h208v88q0 89 -57 142.5t-174 53.5q-85 0 -167.5 -19t-170.5 -54v157q33 12 73.5 23.5t85.5 20.5t94 14.5t99 5.5q91 0 164 -20t123.5 -61t77.5 -103t27 -146v-692h-156l-4 135q-82 -81 -166.5 -117t-177.5 -36q-86 0 -147 22 t-100.5 60.5t-58 90.5t-18.5 113zM317 274q0 -29 9 -55.5t29 -47t52 -32.5t78 -12q60 0 137.5 36.5t163.5 115.5v178h-221q-65 0 -112 -13t-77 -37t-44.5 -57.5t-14.5 -75.5zM0 1004zM236 1292q0 23 9 43.5t24 36t35.5 24.5t43.5 9t43.5 -9t36 -24.5t24.5 -36t9 -43.5 t-9 -43.5t-24.5 -35.5t-36 -24t-43.5 -9t-43.5 9t-35.5 24t-24 35.5t-9 43.5zM666 1292q0 23 9 43.5t24 36t35.5 24.5t43.5 9t43.5 -9t36 -24.5t24.5 -36t9 -43.5t-9 -43.5t-24.5 -35.5t-36 -24t-43.5 -9t-43.5 9t-35.5 24t-24 35.5t-9 43.5z" />
|
||||||
|
<glyph unicode="å" d="M133 268q0 151 112.5 236.5t332.5 85.5h208v88q0 89 -57 142.5t-174 53.5q-85 0 -167.5 -19t-170.5 -54v157q33 12 73.5 23.5t85.5 20.5t94 14.5t99 5.5q91 0 164 -20t123.5 -61t77.5 -103t27 -146v-692h-156l-4 135q-82 -81 -166.5 -117t-177.5 -36q-86 0 -147 22 t-100.5 60.5t-58 90.5t-18.5 113zM317 274q0 -29 9 -55.5t29 -47t52 -32.5t78 -12q60 0 137.5 36.5t163.5 115.5v178h-221q-65 0 -112 -13t-77 -37t-44.5 -57.5t-14.5 -75.5zM0 1004zM348 1294q0 43 17 81t46 66t68 44t84 16t84 -16t68 -44t46 -66t17 -81t-17 -80.5 t-46 -65.5t-68 -44t-84 -16t-84 16t-68 44t-46 65.5t-17 80.5zM463 1294q0 -42 29 -71t71 -29q21 0 39 8t31.5 21.5t21.5 31.5t8 39t-8 39.5t-21.5 32t-31.5 21.5t-39 8t-39 -8t-31.5 -21.5t-21.5 -32t-8 -39.5z" />
|
||||||
|
<glyph unicode="æ" d="M31 268q0 75 19.5 134.5t60 100t103.5 62t151 21.5h120v84q0 101 -34.5 156t-118.5 55q-57 0 -120.5 -19.5t-125.5 -54.5v151q24 12 54.5 23.5t63.5 20.5t68 14.5t68 5.5q91 0 152.5 -29.5t87.5 -91.5q35 56 90.5 88.5t128.5 32.5q78 0 132.5 -32t89 -90t50.5 -139.5 t16 -180.5q0 -54 -1 -81t-3 -42h-444q0 -161 46.5 -246.5t154.5 -85.5q57 0 113 12t98 29v-139q-23 -10 -53 -18.5t-63 -14.5t-67 -9t-65 -3q-194 0 -268 174q-51 -82 -117 -128t-142 -46q-120 0 -182.5 73t-62.5 213zM195 274q0 -75 26 -112t74 -37q42 0 88.5 34t101.5 122 v176h-125q-87 0 -126 -50t-39 -133zM639 586h285q1 62 -5.5 116.5t-22 94.5t-41 63t-62.5 23q-39 0 -67.5 -23t-48 -62.5t-29 -94t-9.5 -117.5z" />
|
||||||
|
<glyph unicode="ç" d="M158 492q0 119 37 216t104 166t160 106.5t205 37.5q78 0 146 -11t130 -36v-166q-65 34 -132.5 49.5t-139.5 15.5q-67 0 -126.5 -25.5t-104.5 -73.5t-71 -117t-26 -156q0 -182 88.5 -272.5t245.5 -90.5q71 0 137.5 16t128.5 48v-162q-68 -26 -135 -38t-128 -13l-82 -281 h-152l66 295q-174 38 -262.5 163.5t-88.5 328.5z" />
|
||||||
|
<glyph unicode="è" d="M117 500q0 106 30.5 200.5t89 166t143.5 113.5t193 42q105 0 186 -33t136.5 -93.5t84 -147t28.5 -193.5q0 -37 -1 -62t-3 -47h-705q0 -154 86 -236.5t248 -82.5q44 0 88 3.5t85 9.5t78.5 13.5t69.5 16.5v-143q-71 -20 -160.5 -32.5t-185.5 -12.5q-129 0 -222 35 t-152.5 101.5t-88 163t-28.5 218.5zM299 580h528v21q0 55 -13 101q-16 56 -49.5 96t-83.5 62.5t-116 22.5q-57 0 -104 -22t-81 -62t-55 -96t-26 -123zM0 1004zM174 1413h252l242 -242h-174z" />
|
||||||
|
<glyph unicode="é" d="M117 500q0 106 30.5 200.5t89 166t143.5 113.5t193 42q105 0 186 -33t136.5 -93.5t84 -147t28.5 -193.5q0 -37 -1 -62t-3 -47h-705q0 -154 86 -236.5t248 -82.5q44 0 88 3.5t85 9.5t78.5 13.5t69.5 16.5v-143q-71 -20 -160.5 -32.5t-185.5 -12.5q-129 0 -222 35 t-152.5 101.5t-88 163t-28.5 218.5zM299 580h528v21q0 55 -13 101q-16 56 -49.5 96t-83.5 62.5t-116 22.5q-57 0 -104 -22t-81 -62t-55 -96t-26 -123zM0 1004zM459 1171l241 242h252l-319 -242h-174z" />
|
||||||
|
<glyph unicode="ê" d="M117 500q0 106 30.5 200.5t89 166t143.5 113.5t193 42q105 0 186 -33t136.5 -93.5t84 -147t28.5 -193.5q0 -37 -1 -62t-3 -47h-705q0 -154 86 -236.5t248 -82.5q44 0 88 3.5t85 9.5t78.5 13.5t69.5 16.5v-143q-71 -20 -160.5 -32.5t-185.5 -12.5q-129 0 -222 35 t-152.5 101.5t-88 163t-28.5 218.5zM299 580h528v21q0 55 -13 101q-16 56 -49.5 96t-83.5 62.5t-116 22.5q-57 0 -104 -22t-81 -62t-55 -96t-26 -123zM0 1004zM248 1171l244 242h143l244 -242h-177l-141 121l-141 -121h-172z" />
|
||||||
|
<glyph unicode="ë" d="M117 500q0 106 30.5 200.5t89 166t143.5 113.5t193 42q105 0 186 -33t136.5 -93.5t84 -147t28.5 -193.5q0 -37 -1 -62t-3 -47h-705q0 -154 86 -236.5t248 -82.5q44 0 88 3.5t85 9.5t78.5 13.5t69.5 16.5v-143q-71 -20 -160.5 -32.5t-185.5 -12.5q-129 0 -222 35 t-152.5 101.5t-88 163t-28.5 218.5zM299 580h528v21q0 55 -13 101q-16 56 -49.5 96t-83.5 62.5t-116 22.5q-57 0 -104 -22t-81 -62t-55 -96t-26 -123zM0 1004zM236 1292q0 23 9 43.5t24 36t35.5 24.5t43.5 9t43.5 -9t36 -24.5t24.5 -36t9 -43.5t-9 -43.5t-24.5 -35.5 t-36 -24t-43.5 -9t-43.5 9t-35.5 24t-24 35.5t-9 43.5zM666 1292q0 23 9 43.5t24 36t35.5 24.5t43.5 9t43.5 -9t36 -24.5t24.5 -36t9 -43.5t-9 -43.5t-24.5 -35.5t-36 -24t-43.5 -9t-43.5 9t-35.5 24t-24 35.5t-9 43.5z" />
|
||||||
|
<glyph unicode="ì" d="M172 0v145h330v715h-297v144h473v-859h299v-145h-805zM0 1004zM174 1413h252l242 -242h-174z" />
|
||||||
|
<glyph unicode="í" d="M172 0v145h330v715h-297v144h473v-859h299v-145h-805zM0 1004zM459 1171l241 242h252l-319 -242h-174z" />
|
||||||
|
<glyph unicode="î" d="M172 0v145h330v715h-297v144h473v-859h299v-145h-805zM0 1004zM248 1171l244 242h143l244 -242h-177l-141 121l-141 -121h-172z" />
|
||||||
|
<glyph unicode="ï" d="M172 0v145h330v715h-297v144h473v-859h299v-145h-805zM0 1004zM236 1292q0 23 9 43.5t24 36t35.5 24.5t43.5 9t43.5 -9t36 -24.5t24.5 -36t9 -43.5t-9 -43.5t-24.5 -35.5t-36 -24t-43.5 -9t-43.5 9t-35.5 24t-24 35.5t-9 43.5zM666 1292q0 23 9 43.5t24 36t35.5 24.5 t43.5 9t43.5 -9t36 -24.5t24.5 -36t9 -43.5t-9 -43.5t-24.5 -35.5t-36 -24t-43.5 -9t-43.5 9t-35.5 24t-24 35.5t-9 43.5z" />
|
||||||
|
<glyph unicode="ð" d="M100 477q0 109 31 206.5t91 171t147.5 116.5t201.5 43q7 0 20 -1t25 -3q-20 29 -44 63.5t-50 69.5l-280 -60v146l186 39l-115 145h217l82 -104l297 61v-145l-204 -41q73 -101 129 -192.5t94 -175.5t58 -162t20 -152q0 -53 -8.5 -112.5t-28.5 -117t-54.5 -110t-86 -93 t-123 -64t-166.5 -23.5q-106 0 -188 35.5t-137.5 100.5t-84.5 156.5t-29 202.5zM279 487q0 -87 20.5 -154t57 -112.5t87 -68.5t109.5 -23q69 0 120.5 26.5t85.5 74t51 114.5t17 148q0 86 -26.5 173t-83.5 187q-42 9 -74 12.5t-61 3.5q-84 0 -142 -31t-93.5 -83.5 t-51.5 -121.5t-16 -145z" />
|
||||||
|
<glyph unicode="ñ" d="M160 0v1004h155l7 -162q44 52 85 86.5t80.5 55.5t80.5 29.5t85 8.5q155 0 234.5 -91.5t79.5 -275.5v-655h-174v641q0 118 -44 174.5t-131 56.5q-32 0 -62.5 -9.5t-63.5 -33t-71.5 -63.5t-86.5 -100v-666h-174zM0 1004zM201 1268q43 72 97.5 108.5t123.5 36.5q58 0 98 -17 t71 -37t58.5 -37t61.5 -17q40 0 70.5 27.5t58.5 70.5l86 -86q-44 -72 -98 -108.5t-123 -36.5q-59 0 -98.5 16.5t-70.5 37t-58.5 37.5t-61.5 17q-41 0 -71 -27.5t-58 -70.5z" />
|
||||||
|
<glyph unicode="ò" d="M92 496q0 117 33 213.5t95 166t151 108t202 38.5q108 0 193.5 -33.5t145 -98t91 -160.5t31.5 -220q0 -117 -33 -214.5t-95 -167t-151 -108t-202 -38.5q-108 0 -193.5 33.5t-145 98.5t-91 161t-31.5 221zM270 502q0 -93 20.5 -163t58.5 -116.5t92 -70t122 -23.5 q78 0 133.5 30.5t91 81.5t52 118.5t16.5 142.5q0 93 -20.5 162.5t-58.5 116t-92.5 70t-121.5 23.5q-78 0 -133.5 -30.5t-91 -81.5t-52 -118.5t-16.5 -141.5zM0 1004zM174 1413h252l242 -242h-174z" />
|
||||||
|
<glyph unicode="ó" d="M92 496q0 117 33 213.5t95 166t151 108t202 38.5q108 0 193.5 -33.5t145 -98t91 -160.5t31.5 -220q0 -117 -33 -214.5t-95 -167t-151 -108t-202 -38.5q-108 0 -193.5 33.5t-145 98.5t-91 161t-31.5 221zM270 502q0 -93 20.5 -163t58.5 -116.5t92 -70t122 -23.5 q78 0 133.5 30.5t91 81.5t52 118.5t16.5 142.5q0 93 -20.5 162.5t-58.5 116t-92.5 70t-121.5 23.5q-78 0 -133.5 -30.5t-91 -81.5t-52 -118.5t-16.5 -141.5zM0 1004zM459 1171l241 242h252l-319 -242h-174z" />
|
||||||
|
<glyph unicode="ô" d="M92 496q0 117 33 213.5t95 166t151 108t202 38.5q108 0 193.5 -33.5t145 -98t91 -160.5t31.5 -220q0 -117 -33 -214.5t-95 -167t-151 -108t-202 -38.5q-108 0 -193.5 33.5t-145 98.5t-91 161t-31.5 221zM270 502q0 -93 20.5 -163t58.5 -116.5t92 -70t122 -23.5 q78 0 133.5 30.5t91 81.5t52 118.5t16.5 142.5q0 93 -20.5 162.5t-58.5 116t-92.5 70t-121.5 23.5q-78 0 -133.5 -30.5t-91 -81.5t-52 -118.5t-16.5 -141.5zM0 1004zM248 1171l244 242h143l244 -242h-177l-141 121l-141 -121h-172z" />
|
||||||
|
<glyph unicode="õ" d="M92 496q0 117 33 213.5t95 166t151 108t202 38.5q108 0 193.5 -33.5t145 -98t91 -160.5t31.5 -220q0 -117 -33 -214.5t-95 -167t-151 -108t-202 -38.5q-108 0 -193.5 33.5t-145 98.5t-91 161t-31.5 221zM270 502q0 -93 20.5 -163t58.5 -116.5t92 -70t122 -23.5 q78 0 133.5 30.5t91 81.5t52 118.5t16.5 142.5q0 93 -20.5 162.5t-58.5 116t-92.5 70t-121.5 23.5q-78 0 -133.5 -30.5t-91 -81.5t-52 -118.5t-16.5 -141.5zM0 1004zM201 1268q43 72 97.5 108.5t123.5 36.5q58 0 98 -17t71 -37t58.5 -37t61.5 -17q40 0 70.5 27.5t58.5 70.5 l86 -86q-44 -72 -98 -108.5t-123 -36.5q-59 0 -98.5 16.5t-70.5 37t-58.5 37.5t-61.5 17q-41 0 -71 -27.5t-58 -70.5z" />
|
||||||
|
<glyph unicode="ö" d="M92 496q0 117 33 213.5t95 166t151 108t202 38.5q108 0 193.5 -33.5t145 -98t91 -160.5t31.5 -220q0 -117 -33 -214.5t-95 -167t-151 -108t-202 -38.5q-108 0 -193.5 33.5t-145 98.5t-91 161t-31.5 221zM270 502q0 -93 20.5 -163t58.5 -116.5t92 -70t122 -23.5 q78 0 133.5 30.5t91 81.5t52 118.5t16.5 142.5q0 93 -20.5 162.5t-58.5 116t-92.5 70t-121.5 23.5q-78 0 -133.5 -30.5t-91 -81.5t-52 -118.5t-16.5 -141.5zM0 1004zM236 1292q0 23 9 43.5t24 36t35.5 24.5t43.5 9t43.5 -9t36 -24.5t24.5 -36t9 -43.5t-9 -43.5t-24.5 -35.5 t-36 -24t-43.5 -9t-43.5 9t-35.5 24t-24 35.5t-9 43.5zM666 1292q0 23 9 43.5t24 36t35.5 24.5t43.5 9t43.5 -9t36 -24.5t24.5 -36t9 -43.5t-9 -43.5t-24.5 -35.5t-36 -24t-43.5 -9t-43.5 9t-35.5 24t-24 35.5t-9 43.5z" />
|
||||||
|
<glyph unicode="÷" d="M84 469v152h958v-152h-958zM428 154q0 27 10.5 51.5t28.5 42.5t42 28.5t52 10.5q27 0 51 -10.5t41.5 -28.5t28 -42.5t10.5 -51.5t-10.5 -51t-28 -41.5t-41.5 -28t-51 -10.5q-28 0 -52 10.5t-42 28t-28.5 41.5t-10.5 51zM428 936q0 27 10.5 51t28.5 41.5t42 28t52 10.5 q27 0 51 -10.5t41.5 -28t28 -41.5t10.5 -51q0 -28 -10.5 -52t-28 -42t-41.5 -28.5t-51 -10.5q-28 0 -52 10.5t-42 28.5t-28.5 42t-10.5 52z" />
|
||||||
|
<glyph unicode="ø" d="M92 496q0 121 32.5 218.5t94.5 165.5t151 105t203 37q44 0 91 -6l67 203h146l-82 -244q113 -54 176 -170.5t63 -294.5q0 -122 -32.5 -220t-94.5 -166.5t-151 -105t-203 -36.5q-45 0 -88 6l-68 -203h-145l82 244q-114 55 -178 171.5t-64 295.5zM266 502q0 -113 30 -193 t89 -125l229 688q-12 2 -27.5 3.5t-29.5 1.5q-78 0 -133 -30t-90 -81.5t-51.5 -119.5t-16.5 -144zM514 131q12 -2 27.5 -3t27.5 -1q78 0 133 30t90 81.5t51.5 119.5t16.5 144q0 112 -30.5 192t-86.5 125z" />
|
||||||
|
<glyph unicode="ù" d="M160 348v656h174v-642q0 -231 174 -231q32 0 62.5 9.5t64 33t72 63.5t86.5 101v666h174v-1004h-156l-6 162q-45 -52 -85.5 -86.5t-80.5 -55.5t-80.5 -29.5t-85.5 -8.5q-155 0 -234 91t-79 275zM0 1004zM174 1413h252l242 -242h-174z" />
|
||||||
|
<glyph unicode="ú" d="M160 348v656h174v-642q0 -231 174 -231q32 0 62.5 9.5t64 33t72 63.5t86.5 101v666h174v-1004h-156l-6 162q-45 -52 -85.5 -86.5t-80.5 -55.5t-80.5 -29.5t-85.5 -8.5q-155 0 -234 91t-79 275zM0 1004zM459 1171l241 242h252l-319 -242h-174z" />
|
||||||
|
<glyph unicode="û" d="M160 348v656h174v-642q0 -231 174 -231q32 0 62.5 9.5t64 33t72 63.5t86.5 101v666h174v-1004h-156l-6 162q-45 -52 -85.5 -86.5t-80.5 -55.5t-80.5 -29.5t-85.5 -8.5q-155 0 -234 91t-79 275zM0 1004zM248 1171l244 242h143l244 -242h-177l-141 121l-141 -121h-172z" />
|
||||||
|
<glyph unicode="ü" d="M160 348v656h174v-642q0 -231 174 -231q32 0 62.5 9.5t64 33t72 63.5t86.5 101v666h174v-1004h-156l-6 162q-45 -52 -85.5 -86.5t-80.5 -55.5t-80.5 -29.5t-85.5 -8.5q-155 0 -234 91t-79 275zM0 1004zM236 1292q0 23 9 43.5t24 36t35.5 24.5t43.5 9t43.5 -9t36 -24.5 t24.5 -36t9 -43.5t-9 -43.5t-24.5 -35.5t-36 -24t-43.5 -9t-43.5 9t-35.5 24t-24 35.5t-9 43.5zM666 1292q0 23 9 43.5t24 36t35.5 24.5t43.5 9t43.5 -9t36 -24.5t24.5 -36t9 -43.5t-9 -43.5t-24.5 -35.5t-36 -24t-43.5 -9t-43.5 9t-35.5 24t-24 35.5t-9 43.5z" />
|
||||||
|
<glyph unicode="ý" d="M59 -254q22 -3 48 -5.5t55 -2.5q48 0 89.5 14t78.5 45.5t71 81.5t66 121l-401 1004h198l254 -664l51 -156l58 160l235 660h191l-342 -898q-53 -137 -109.5 -236t-123.5 -162.5t-147 -93.5t-179 -30q-26 0 -47 1t-46 3v158zM0 1004zM459 1171l241 242h252l-319 -242h-174z " />
|
||||||
|
<glyph unicode="þ" d="M160 -410v1823h174v-389l-8 -186q75 101 160.5 142.5t183.5 41.5q86 0 151 -36t109 -101.5t66 -158t22 -206.5q0 -125 -34.5 -223.5t-98 -167t-154.5 -105t-205 -36.5q-48 0 -95.5 5t-96.5 17v-420h-174zM334 172q51 -20 104 -31.5t101 -11.5q60 0 114.5 19t96 63.5 t66 118t24.5 182.5q0 79 -11.5 145t-36.5 113t-64 73.5t-93 26.5q-33 0 -67 -10.5t-70.5 -35t-77 -65t-86.5 -100.5v-487z" />
|
||||||
|
<glyph unicode="ÿ" d="M59 -254q22 -3 48 -5.5t55 -2.5q48 0 89.5 14t78.5 45.5t71 81.5t66 121l-401 1004h198l254 -664l51 -156l58 160l235 660h191l-342 -898q-53 -137 -109.5 -236t-123.5 -162.5t-147 -93.5t-179 -30q-26 0 -47 1t-46 3v158zM0 1004zM236 1292q0 23 9 43.5t24 36t35.5 24.5 t43.5 9t43.5 -9t36 -24.5t24.5 -36t9 -43.5t-9 -43.5t-24.5 -35.5t-36 -24t-43.5 -9t-43.5 9t-35.5 24t-24 35.5t-9 43.5zM666 1292q0 23 9 43.5t24 36t35.5 24.5t43.5 9t43.5 -9t36 -24.5t24.5 -36t9 -43.5t-9 -43.5t-24.5 -35.5t-36 -24t-43.5 -9t-43.5 9t-35.5 24 t-24 35.5t-9 43.5z" />
|
||||||
|
<glyph unicode="ı" d="M172 0v145h330v715h-297v144h473v-859h299v-145h-805z" />
|
||||||
|
<glyph unicode="Œ" d="M31 647q0 174 38.5 301t103.5 210t152 123t185 40q24 0 55 -2t61.5 -5t57 -5t41.5 -2h369v-146h-330v-411h309v-146h-309v-457h330v-147h-365q-74 0 -127 -7t-96 -7q-122 0 -211.5 43.5t-148 127.5t-87 207t-28.5 283zM209 653q0 -252 77.5 -386t229.5 -134q20 0 38 2.5 t38 7.5v1022q-14 3 -35.5 6t-46.5 3q-80 0 -137 -40.5t-93.5 -111t-53.5 -165.5t-17 -204z" />
|
||||||
|
<glyph unicode="œ" d="M39 494q0 122 20 219.5t59.5 166t99.5 105.5t140 37q78 0 131.5 -42t94.5 -132q18 41 39 73.5t48 55t61.5 34t78.5 11.5q66 0 118 -31t87.5 -91t54.5 -147t19 -198q0 -37 -0.5 -60.5t-2.5 -35.5h-423q0 -161 46 -244.5t140 -83.5q57 0 110.5 12t94.5 29v-145 q-45 -20 -102.5 -32.5t-118.5 -12.5q-91 0 -161 43.5t-102 132.5q-35 -85 -92.5 -130.5t-134.5 -45.5q-78 0 -135 29t-95 91.5t-56.5 159.5t-18.5 232zM203 500q0 -101 8.5 -172t26.5 -115.5t46 -65t66 -20.5q139 0 139 373q0 103 -9.5 174.5t-27.5 116.5t-44 65.5t-58 20.5 q-35 0 -62.5 -21.5t-46.5 -67.5t-28.5 -117t-9.5 -171zM664 588h264q1 78 -9 133t-27 89.5t-40.5 50.5t-50.5 16q-69 0 -102 -76t-35 -213z" />
|
||||||
|
<glyph unicode="Ÿ" d="M0 1307h215l260 -478l96 -192l88 174l263 496h204l-473 -840v-467h-180v471zM0 1307zM238 1552q0 22 8.5 42t22.5 34t33.5 22.5t41.5 8.5t41.5 -8.5t34 -22.5t23 -34t8.5 -42t-8.5 -41.5t-23 -33.5t-34 -22.5t-41.5 -8.5q-45 0 -75.5 30.5t-30.5 75.5zM676 1552 q0 22 8.5 42t22.5 34t33.5 22.5t41.5 8.5t42 -8.5t34 -22.5t22.5 -34t8.5 -42t-8.5 -41.5t-22.5 -33.5t-34 -22.5t-42 -8.5q-45 0 -75.5 30.5t-30.5 75.5z" />
|
||||||
|
<glyph unicode="ˆ" d="M0 1004zM248 1171l244 242h143l244 -242h-177l-141 121l-141 -121h-172z" />
|
||||||
|
<glyph unicode="˚" d="M0 1004zM348 1294q0 43 17 81t46 66t68 44t84 16t84 -16t68 -44t46 -66t17 -81t-17 -80.5t-46 -65.5t-68 -44t-84 -16t-84 16t-68 44t-46 65.5t-17 80.5zM463 1294q0 -42 29 -71t71 -29q21 0 39 8t31.5 21.5t21.5 31.5t8 39t-8 39.5t-21.5 32t-31.5 21.5t-39 8t-39 -8 t-31.5 -21.5t-21.5 -32t-8 -39.5z" />
|
||||||
|
<glyph unicode="˜" d="M0 1004zM201 1268q43 72 97.5 108.5t123.5 36.5q58 0 98 -17t71 -37t58.5 -37t61.5 -17q40 0 70.5 27.5t58.5 70.5l86 -86q-44 -72 -98 -108.5t-123 -36.5q-59 0 -98.5 16.5t-70.5 37t-58.5 37.5t-61.5 17q-41 0 -71 -27.5t-58 -70.5z" />
|
||||||
|
<glyph unicode="μ" d="M160 -410v1414h174v-639q0 -232 174 -232q30 0 62 10t63.5 32.5t67 62t79.5 100.5v666h174v-689q0 -51 5 -85t17.5 -54.5t32.5 -29.5t50 -9h18v-139q-14 -3 -31.5 -5.5t-37.5 -2.5q-50 0 -85.5 12.5t-59.5 36t-38.5 57.5t-23.5 76q-43 -57 -83 -93.5t-79.5 -57.5t-75 -29 t-68.5 -8q-52 0 -96.5 18.5t-78.5 57.5l14 -173v-297h-174z" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="870" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="1740" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="870" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="1740" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="580" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="435" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="290" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="290" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="217" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="348" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="96" />
|
||||||
|
<glyph unicode="‑" d="M264 463v164h598v-164h-598z" />
|
||||||
|
<glyph unicode="‒" d="M264 463v164h598v-164h-598z" />
|
||||||
|
<glyph unicode="–" d="M133 469v152h860v-152h-860z" />
|
||||||
|
<glyph unicode="—" d="M-4 469v152h1134v-152h-1134z" />
|
||||||
|
<glyph unicode="‘" d="M406 1001q0 83 30 160t90.5 135.5t151 93.5t211.5 35v-137q-51 1 -99 -9t-84.5 -31.5t-58.5 -53.5t-22 -74t14.5 -67.5t32.5 -47.5t32.5 -47.5t14.5 -66.5q0 -21 -8 -44t-24.5 -42t-42 -31t-60.5 -12q-36 0 -68 14.5t-56.5 44.5t-39 75t-14.5 105z" />
|
||||||
|
<glyph unicode="’" d="M238 762v137q51 -2 99 8.5t84.5 32t58.5 53.5t22 74t-14.5 68t-32.5 48t-32.5 47t-14.5 66q0 22 8 44.5t24.5 41.5t42 31t60.5 12t67.5 -14.5t57 -44t39 -74.5t14.5 -106q0 -83 -30.5 -159.5t-91 -135.5t-151 -94t-210.5 -35z" />
|
||||||
|
<glyph unicode="‚" d="M238 -205q51 -2 99 9t84.5 32.5t58.5 53.5t22 73q0 42 -14.5 68t-32.5 48t-32.5 47t-14.5 67q0 21 8 44t24.5 42t42 31t60.5 12t67.5 -14.5t57 -44.5t39 -75t14.5 -106q0 -83 -30.5 -159.5t-91 -135.5t-151 -94t-210.5 -35v137z" />
|
||||||
|
<glyph unicode="“" d="M104 1028q0 78 28.5 149.5t84 126.5t138 88t190.5 33v-129q-44 1 -85.5 -8.5t-74 -29.5t-52.5 -50t-20 -69t13 -63t29 -45t29 -44.5t13 -62.5q0 -20 -7.5 -41.5t-23 -39t-39.5 -29t-57 -11.5t-63 14t-53 42t-36.5 70t-13.5 99zM629 1028q0 78 28 149.5t83.5 126.5t138 88 t190.5 33v-129q-44 1 -85.5 -8.5t-74 -29.5t-52 -50t-19.5 -69t13 -63t29 -45t29 -44.5t13 -62.5q0 -20 -7.5 -41.5t-23 -39t-39.5 -29t-57 -11.5t-63 14t-53 42t-36.5 70t-13.5 99z" />
|
||||||
|
<glyph unicode="”" d="M57 803v129q44 -2 85.5 8t74 30t52.5 50.5t20 69.5t-13 62.5t-29 44.5t-29 45t-13 63q0 20 7.5 41t23 38.5t39.5 29t57 11.5t63 -14t53 -41.5t36.5 -70t13.5 -99.5q0 -78 -28.5 -149.5t-84 -126.5t-138 -88t-190.5 -33zM582 803v129q43 -2 85 8t74 30t52 50.5t20 69.5 t-13 62.5t-29 44.5t-29 45t-13 63q0 20 7.5 41t23 38.5t39.5 29t57 11.5t63 -14t53 -41.5t36.5 -70t13.5 -99.5q0 -78 -28.5 -149.5t-84 -126.5t-137.5 -88t-190 -33z" />
|
||||||
|
<glyph unicode="„" d="M57 -197q44 -2 85.5 8t74 30.5t52.5 50.5t20 69t-13 63t-29 45t-29 44.5t-13 62.5q0 20 7.5 41.5t23 39t39.5 29t57 11.5t63 -14t53 -42t36.5 -70t13.5 -99q0 -78 -28.5 -149.5t-84 -127t-138 -88.5t-190.5 -33v129zM582 -197q43 -2 85 8t74 30.5t52 50.5t20 69t-13 63 t-29 45t-29 44.5t-13 62.5q0 20 7.5 41.5t23 39t39.5 29t57 11.5t63 -14t53 -42t36.5 -70t13.5 -99q0 -78 -28.5 -149.5t-84 -127t-137.5 -88.5t-190 -33v129z" />
|
||||||
|
<glyph unicode="•" d="M258 565q0 63 24 118.5t65.5 97t97 65.5t118.5 24t118.5 -24t97 -65.5t65.5 -97t24 -118.5t-24 -118.5t-65.5 -97t-97 -65.5t-118.5 -24t-118.5 24t-97 65.5t-65.5 97t-24 118.5z" />
|
||||||
|
<glyph unicode="…" d="M59 102q0 25 9 47t24.5 38.5t37.5 26t48 9.5t48 -9.5t37.5 -25.5t24.5 -38.5t9 -47.5q0 -24 -9 -46t-24.5 -38.5t-37.5 -26t-48 -9.5t-48 9.5t-37.5 25.5t-24.5 38t-9 47zM444 102q0 25 9 47t24.5 38.5t37.5 26t48 9.5t48 -9.5t37.5 -25.5t24.5 -38.5t9 -47.5 q0 -24 -9 -46t-24.5 -38.5t-37.5 -26t-48 -9.5t-48 9.5t-37.5 25.5t-24.5 38t-9 47zM829 102q0 25 9 47t24.5 38.5t37.5 26t48 9.5t48 -9.5t37.5 -25.5t24.5 -38.5t9 -47.5q0 -24 -9 -46t-24.5 -38.5t-37.5 -26t-48 -9.5t-48 9.5t-37.5 25.5t-24.5 38t-9 47z" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="348" />
|
||||||
|
<glyph unicode="‹" d="M288 545l359 446l134 -97l-293 -349l293 -349l-134 -98z" />
|
||||||
|
<glyph unicode="›" d="M345 195l293 349l-293 349l134 98l359 -447l-359 -446z" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="435" />
|
||||||
|
<glyph unicode="₁" d="M227 420l312 156h139v-646h201v-145h-613v145h238v467l-219 -108z" />
|
||||||
|
<glyph unicode="₂" d="M246 -72l217 168q58 45 94.5 77t57.5 57.5t28.5 48t7.5 49.5q0 46 -33.5 76t-99.5 30q-51 0 -97 -18.5t-83 -50.5l-86 106q54 54 128.5 83.5t158.5 29.5q63 0 117.5 -15.5t94 -46.5t62.5 -76.5t23 -105.5q0 -47 -14 -88t-42.5 -79.5t-70.5 -75.5t-97 -76l-114 -82h385 v-154h-637v143z" />
|
||||||
|
<glyph unicode="₃" d="M274 -75q34 -8 89.5 -12t115.5 -4q91 0 145 28.5t54 80.5q0 24 -10 43.5t-33.5 33t-62.5 21t-97 7.5h-82v129h76q49 0 82 8.5t53 23t28.5 34t8.5 40.5q0 19 -7 34.5t-23 27t-43.5 18t-67.5 6.5q-54 0 -109 -9t-100 -23v141q24 7 53.5 12.5t61 9.5t64 6.5t62.5 2.5 q148 0 218.5 -53.5t70.5 -141.5q0 -71 -33 -115.5t-92 -70.5q38 -10 68.5 -25t52.5 -36.5t33.5 -50.5t11.5 -68q0 -56 -25 -103t-73.5 -80.5t-121.5 -52t-169 -18.5q-29 0 -58 1t-55 3t-48 5t-38 7v140z" />
|
||||||
|
<glyph unicode="€" d="M51 422v136h144q-2 19 -2 38v42q0 25 1 49.5t3 48.5h-146v136h166q23 105 68 189t109 142.5t145.5 90t179.5 31.5q80 0 148.5 -16t133.5 -47v-171q-63 38 -130.5 58.5t-147.5 20.5q-124 0 -204 -76t-118 -222h402v-136h-422q-2 -21 -3 -42.5t-1 -43.5q0 -25 1 -47t1 -45 h424v-136h-404q32 -143 111.5 -214t216.5 -71q74 0 142.5 19.5t131.5 54.5v-164q-69 -32 -141.5 -48.5t-150.5 -16.5q-211 0 -335.5 110t-162.5 330h-160z" />
|
||||||
|
<glyph unicode="™" d="M10 1202v105h406v-105h-133v-424h-136v424h-137zM442 778l76 529h158l80 -285l18 -86l17 76l86 295h159l80 -529h-135l-37 285l-12 86l-19 -76l-82 -295h-129l-79 301l-19 70l-2 -57l-43 -314h-117z" />
|
||||||
|
<glyph unicode="" horiz-adv-x="1004" d="M0 1005h1005v-1005h-1005v1005z" />
|
||||||
|
<glyph unicode="fi" d="M0 1004zM47 758v145h178v121q0 201 114.5 301t340.5 100q53 0 120 -8.5t130 -23.5v-150q-60 17 -128 27t-128 10q-134 0 -204.5 -61t-70.5 -185v-131h564v-903h-175v758h-389v-758h-174v758h-178z" />
|
||||||
|
<glyph unicode="fl" d="M0 1004zM47 758v145h178v119q0 201 114 301t335 100q65 0 137.5 -6.5t151.5 -23.5v-1393h-175v1274q-30 5 -59 6.5t-61 1.5q-137 0 -203 -63t-66 -187v-129h213v-145h-213v-758h-174v758h-178z" />
|
||||||
|
<glyph unicode="ffi" horiz-adv-x="3378" d="M2424 0v145h330v715h-297v144h473v-859h299v-145h-805zM2678 1288q0 29 10.5 53.5t29 43.5t43.5 29.5t54 10.5t54 -10.5t43.5 -29.5t29 -43.5t10.5 -53.5q0 -28 -10.5 -53t-29 -44t-43.5 -29.5t-54 -10.5t-54 10.5t-43.5 29.5t-29 44t-10.5 53zM1126 1004zM1206 713v145 h323v166q0 401 418 401q104 0 230 -24v-150q-137 29 -236 29q-235 0 -235 -246v-176h440v-145h-440v-713h-177v713h-323zM0 1004zM80 713v145h323v166q0 401 418 401q104 0 230 -24v-150q-137 29 -236 29q-235 0 -235 -246v-176h440v-145h-440v-713h-177v713h-323z" />
|
||||||
|
<glyph unicode="ffl" horiz-adv-x="3378" d="M2424 0v145h330v1125h-297v143h473v-1268h299v-145h-805zM1126 1004zM1206 713v145h323v166q0 401 418 401q104 0 230 -24v-150q-137 29 -236 29q-235 0 -235 -246v-176h440v-145h-440v-713h-177v713h-323zM0 1004zM80 713v145h323v166q0 401 418 401q104 0 230 -24v-150 q-137 29 -236 29q-235 0 -235 -246v-176h440v-145h-440v-713h-177v713h-323z" />
|
||||||
|
<glyph d="M0 1307zM205 1659h252l211 -213h-179z" />
|
||||||
|
<glyph d="M0 1307zM459 1446l211 213h252l-285 -213h-178z" />
|
||||||
|
<glyph d="M0 1307zM248 1446l231 213h168l232 -213h-183l-135 102l-135 -102h-178z" />
|
||||||
|
<glyph d="M0 1307zM201 1526q43 72 97.5 108.5t123.5 36.5q58 0 98 -17t71 -37t58.5 -37t61.5 -17q40 0 70.5 27.5t58.5 70.5l86 -82q-44 -72 -98 -108.5t-123 -36.5q-59 0 -98.5 17t-70.5 37t-58.5 37t-61.5 17q-41 0 -71 -27.5t-58 -70.5z" />
|
||||||
|
<glyph d="M0 1307zM238 1552q0 22 8.5 42t22.5 34t33.5 22.5t41.5 8.5t41.5 -8.5t34 -22.5t23 -34t8.5 -42t-8.5 -41.5t-23 -33.5t-34 -22.5t-41.5 -8.5q-45 0 -75.5 30.5t-30.5 75.5zM676 1552q0 22 8.5 42t22.5 34t33.5 22.5t41.5 8.5t42 -8.5t34 -22.5t22.5 -34t8.5 -42 t-8.5 -41.5t-22.5 -33.5t-34 -22.5t-42 -8.5q-45 0 -75.5 30.5t-30.5 75.5z" />
|
||||||
|
<glyph d="M0 1307zM362 1550q0 42 15.5 77t42.5 60.5t63.5 39t79.5 13.5t80 -13.5t64 -39t42 -60.5t15 -77q0 -41 -15 -76.5t-42 -61t-64 -40t-80 -14.5t-79.5 14.5t-63.5 40t-42.5 61t-15.5 76.5zM473 1550q0 -40 25 -65t65 -25q42 0 66 25t24 65q0 41 -24 64.5t-66 23.5 q-40 0 -65 -23.5t-25 -64.5z" />
|
||||||
|
</font>
|
||||||
|
</defs></svg>
|
After Width: | Height: | Size: 67 KiB |
BIN
fonts/consolas/consolas-webfont.ttf
Normal file
BIN
fonts/consolas/consolas-webfont.woff
Normal file
3
fonts/courier-new.css
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
.crayon-font-courier-new * {
|
||||||
|
font-family: 'Courier New', monospace !important;
|
||||||
|
}
|
14
fonts/droid-sans-mono.css
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
@font-face {
|
||||||
|
font-family: 'DroidSansMonoRegular';
|
||||||
|
src: url('droid-sans-mono/droid-sans-mono-webfont.eot');
|
||||||
|
src: url('droid-sans-mono/droid-sans-mono-webfont.eot?#iefix') format('embedded-opentype'),
|
||||||
|
url('droid-sans-mono/droid-sans-mono-webfont.woff') format('woff'),
|
||||||
|
url('droid-sans-mono/droid-sans-mono-webfont.ttf') format('truetype'),
|
||||||
|
url('droid-sans-mono/droid-sans-mono-webfont.svg#DroidSansMonoRegular') format('svg');
|
||||||
|
font-weight: normal;
|
||||||
|
font-style: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-font-droid-sans-mono * {
|
||||||
|
font-family: Droid Sans Mono, 'DroidSansMonoRegular', 'Courier New', monospace !important;
|
||||||
|
}
|
BIN
fonts/droid-sans-mono/droid-sans-mono-webfont.eot
Normal file
149
fonts/droid-sans-mono/droid-sans-mono-webfont.svg
Normal file
@ -0,0 +1,149 @@
|
|||||||
|
<?xml version="1.0" standalone="no"?>
|
||||||
|
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<metadata>
|
||||||
|
This is a custom SVG webfont generated by Font Squirrel.
|
||||||
|
Copyright : Digitized data copyright 2006 Google Corporation
|
||||||
|
Foundry : Ascender Corporation
|
||||||
|
Foundry URL : httpwwwascendercorpcom
|
||||||
|
</metadata>
|
||||||
|
<defs>
|
||||||
|
<font id="webfont9N3UDjKi" horiz-adv-x="1228" >
|
||||||
|
<font-face units-per-em="2048" ascent="1638" descent="-410" />
|
||||||
|
<missing-glyph horiz-adv-x="500" />
|
||||||
|
<glyph unicode=" " />
|
||||||
|
<glyph unicode="!" d="M487 110.5q0 139.5 127 139.5t127 -139.5t-127 -139.5t-127 139.5zM504 1462h223l-51 -1048h-121z" />
|
||||||
|
<glyph unicode=""" d="M285 1462h237l-41 -528h-155zM707 1462h237l-41 -528h-155z" />
|
||||||
|
<glyph unicode="#" d="M45 428v137h244l65 328h-233v137h258l82 432h147l-82 -432h293l84 432h144l-84 -432h221v-137h-248l-64 -328h240v-137h-266l-82 -428h-148l84 428h-290l-82 -428h-144l78 428h-217zM436 565h291l64 328h-291z" />
|
||||||
|
<glyph unicode="$" d="M182 172v172q197 -92 365 -92v434q-197 66 -271 145q-78 84 -77 220q0 131 92 217q90 84 256 106v180h137v-176q182 -8 336 -78l-66 -145q-143 63 -270 72v-422q199 -68 279 -148q82 -82 81 -211q0 -281 -360 -335v-230h-137v221q-228 0 -365 70zM375 1049q0 -76 41 -121 q41 -43 131 -74v369q-172 -27 -172 -174zM684 262q184 28 184 184q0 127 -184 189v-373z" />
|
||||||
|
<glyph unicode="%" d="M0 1133q0 164 80 256q78 90 215 90q131 0 211 -92.5t80 -253.5q0 -166 -78 -256q-80 -92 -217 -93q-131 0 -211 95q-80 96 -80 254zM152 1133q0 -229 141 -230q139 0 139 230q0 225 -139 225q-141 0 -141 -225zM170 0l729 1462h158l-729 -1462h-158zM643 330 q0 164 80 256q78 90 215 90q131 0 211 -92t80 -254q0 -164 -78 -254q-82 -94 -217 -94q-131 0 -211 94q-80 96 -80 254zM795 330q0 -229 141 -230q139 0 139 230q0 225 -139 225q-141 0 -141 -225z" />
|
||||||
|
<glyph unicode="&" d="M61 381q0 133 64 229q63 98 235 199q-164 193 -163 356q0 147 96 233.5t274 86.5q168 0 260.5 -86t92.5 -234q0 -203 -318 -389l281 -348q70 119 104 266h184q-53 -236 -178 -403l234 -291h-217l-131 166q-174 -186 -412 -186q-190 0 -297 106q-109 109 -109 295z M252 387q0 -104 67 -176q68 -70 160 -70q162 0 299 146l-323 401q-203 -123 -203 -301zM375 1165q0 -117 133 -268q133 80 184 139q49 57 49 133q0 72 -49 119q-51 47 -131 47q-86 0 -137 -45q-49 -43 -49 -125z" />
|
||||||
|
<glyph unicode="'" d="M496 1462h237l-41 -528h-155z" />
|
||||||
|
<glyph unicode="(" d="M295 567q0 532 444 895h193q-449 -375 -449 -893q0 -522 447 -893h-191q-444 352 -444 891z" />
|
||||||
|
<glyph unicode=")" d="M297 1462h192q444 -362 445 -895q0 -541 -445 -891h-190q446 373 446 893q1 518 -448 893z" />
|
||||||
|
<glyph unicode="*" d="M133 1081l29 193l391 -111l-43 393h205l-43 -393l397 111l27 -193l-379 -28l246 -326l-179 -96l-176 358l-157 -358l-185 96l242 326z" />
|
||||||
|
<glyph unicode="+" d="M152 647v150h387v389h149v-389h387v-150h-387v-385h-149v385h-387z" />
|
||||||
|
<glyph unicode="," d="M440 -289q76 322 111 551h219l16 -24q-59 -229 -194 -527h-152z" />
|
||||||
|
<glyph unicode="-" d="M285 465v168h659v-168h-659z" />
|
||||||
|
<glyph unicode="." d="M463 135q0 166 151.5 166t151.5 -166t-151.5 -166t-151.5 166z" />
|
||||||
|
<glyph unicode="/" d="M211 0l627 1462h178l-627 -1462h-178z" />
|
||||||
|
<glyph unicode="0" d="M147 733q0 752 465 752q231 0 350 -192.5t119 -559.5q0 -754 -469 -753q-231 0 -348 194q-117 193 -117 559zM332 733q0 -317 67 -459q68 -139 213 -139q147 0 215 141q70 145 70 457q0 309 -70 455q-68 141 -215 141q-145 0 -213 -139q-67 -138 -67 -457z" />
|
||||||
|
<glyph unicode="1" d="M225 1163l383 299h150v-1462h-176v913q0 147 8 361q-43 -47 -121 -113l-147 -121z" />
|
||||||
|
<glyph unicode="2" d="M158 0v156l350 381q201 219 258 317q61 104 61 231q0 115 -63 179q-66 66 -172 65q-162 0 -318 -137l-102 119q190 172 422 172q197 0 305 -107q113 -109 113 -284q0 -115 -59.5 -244t-290.5 -375l-281 -299v-8h688v-166h-911z" />
|
||||||
|
<glyph unicode="3" d="M131 59v170q186 -96 383 -96q354 0 354 289q0 258 -381 258h-133v151h133q160 0 248 76t88 201q0 104 -67 162q-70 59 -183 59q-176 0 -344 -121l-92 125q186 150 436 150q205 0 322 -99q115 -96 115 -264q0 -141 -82 -231q-86 -94 -234 -119v-6q360 -45 361 -348 q0 -203 -137 -320q-138 -117 -400 -116q-243 -1 -387 79z" />
|
||||||
|
<glyph unicode="4" d="M61 328v159l664 983h188v-976h213v-166h-213v-328h-176v328h-676zM240 494h497v356q0 178 13 432h-9q-41 -111 -90 -180z" />
|
||||||
|
<glyph unicode="5" d="M172 59v172q145 -96 360 -96q336 0 336 314q0 295 -344 294q-78 0 -231 -26l-90 57l55 688h690v-166h-532l-39 -419q102 20 209 20q209 0 340 -115q129 -114 129 -313q0 -233 -137 -363q-135 -127 -390 -126q-224 -1 -356 79z" />
|
||||||
|
<glyph unicode="6" d="M154 625q0 858 639 858q104 0 172 -19v-155q-71 25 -166 24q-221 0 -336 -141t-123 -447h12q96 170 307 170q195 0 306 -118q111 -120 110 -326q0 -227 -121 -360q-119 -131 -323 -131q-219 0 -348 170t-129 475zM336 506q0 -150 82 -262q80 -111 211 -111q129 0 198 88 q72 90 72 250q0 147 -68 223q-68 78 -196 78q-125 0 -213 -82q-86 -80 -86 -184z" />
|
||||||
|
<glyph unicode="7" d="M143 1296v166h940v-145l-555 -1317h-194l563 1296h-754z" />
|
||||||
|
<glyph unicode="8" d="M156 373q0 258 282 393q-236 150 -235 369q0 160 116 256q115 94 295 94q184 0 297 -94q115 -96 115 -258q0 -229 -262 -359q309 -160 309 -393q0 -180 -127 -291q-126 -111 -332 -110q-217 0 -337.5 104.5t-120.5 288.5zM334 371q0 -240 276 -240q135 0 211 66 q74 66 74 182q0 90 -63.5 159.5t-213.5 143.5l-30 14q-254 -118 -254 -325zM381 1126q0 -92 49 -153q47 -57 186 -125q231 104 232 278q0 102 -64 154q-66 53 -172 53q-104 0 -167.5 -53.5t-63.5 -153.5z" />
|
||||||
|
<glyph unicode="9" d="M154 991q0 227 120 361q119 131 324 131q221 0 348 -170q129 -172 129 -475q0 -858 -639 -858q-104 0 -172 18v156q68 -25 166 -25q221 0 336 141.5t123 446.5h-12q-96 -170 -308 -170q-193 0 -305 119q-110 116 -110 325zM330 991q0 -143 69 -223q68 -78 195 -78 q129 0 213 82q86 84 86 184q0 152 -80 262.5t-213 110.5q-127 0 -198.5 -88t-71.5 -250z" />
|
||||||
|
<glyph unicode=":" d="M487 110.5q0 139.5 127 139.5t127 -139.5t-127 -139.5t-127 139.5zM487 987q0 139 127 139t127 -139t-127 -139t-127 139z" />
|
||||||
|
<glyph unicode=";" d="M410 -264q66 276 100 502h199l14 -23q-55 -209 -176 -479h-137zM494 987q0 139 127 139t127 -139t-127 -139t-127 139z" />
|
||||||
|
<glyph unicode="<" d="M152 672v102l923 451v-160l-715 -342l715 -342v-160z" />
|
||||||
|
<glyph unicode="=" d="M152 442v150h923v-150h-923zM152 852v149h923v-149h-923z" />
|
||||||
|
<glyph unicode=">" d="M152 221v160l714 342l-714 342v160l923 -451v-102z" />
|
||||||
|
<glyph unicode="?" d="M168 1386q205 96 426 97q217 0 340 -97q125 -98 125 -262q0 -133 -53 -217q-52 -83 -197 -190q-119 -88 -151.5 -141.5t-32.5 -143.5v-18h-160v37q0 119 47 194.5t160 157.5q131 100 172 155.5t41 157.5q0 92 -74 150q-72 57 -207 57q-172 0 -371 -90zM426 110.5 q0 139.5 127 139.5t127 -139.5t-127 -139.5t-127 139.5z" />
|
||||||
|
<glyph unicode="@" d="M31 602q0 395 168 629q166 231 454 231q248 0 396 -196q150 -199 149 -535q0 -236 -63 -371q-66 -139 -179 -139q-131 0 -157 180h-4q-74 -180 -230 -180q-120 0 -190 105q-70 102 -70 280q0 209 96 332q98 127 256 127q133 0 256 -47l-22 -416q-2 -25 -2 -70v-6 q0 -176 72 -176q100 0 100 383q0 279 -110.5 436.5t-299.5 157.5q-225 0 -352 -192.5t-127 -526.5q0 -311 129 -483q127 -170 369 -170q178 0 346 78v-133q-156 -82 -352 -82q-295 0 -465 207q-168 204 -168 577zM465 602q0 -252 127 -252q131 0 145 312l15 253 q-53 20 -103 21q-90 0 -137 -94.5t-47 -239.5z" />
|
||||||
|
<glyph unicode="A" d="M33 0l483 1468h195l485 -1468h-192l-144 453h-491l-146 -453h-190zM422 618h385l-133 424q-39 121 -62 226q-20 -88 -47 -183z" />
|
||||||
|
<glyph unicode="B" d="M135 0v1462h440q272 0 398 -88q123 -86 123 -282q0 -129 -78 -213t-213 -103v-10q332 -55 332 -342q0 -199 -127 -311.5t-348 -112.5h-527zM322 158h307q311 0 311 274q0 254 -324 254h-294v-528zM322 842h284q157 0 228 55q72 55 71 182q0 121 -75.5 172.5t-243.5 51.5 h-264v-461z" />
|
||||||
|
<glyph unicode="C" d="M129 733q0 344 178 547t490 203q219 0 383 -86l-78 -156q-156 78 -305 78q-215 0 -342 -158q-129 -160 -129 -430q0 -287 120 -438q119 -150 351 -150q135 0 327 58v-162q-150 -59 -358 -59q-310 0 -473 196q-164 199 -164 557z" />
|
||||||
|
<glyph unicode="D" d="M135 0v1462h342q319 0 494 -188q176 -193 176 -529q0 -365 -182 -552q-186 -193 -529 -193h-301zM322 160h96q532 0 532 579q0 563 -493 564h-135v-1143z" />
|
||||||
|
<glyph unicode="E" d="M217 0v1462h842v-164h-656v-452h617v-162h-617v-520h656v-164h-842z" />
|
||||||
|
<glyph unicode="F" d="M244 0v1462h841v-164h-655v-516h617v-164h-617v-618h-186z" />
|
||||||
|
<glyph unicode="G" d="M117 733q0 352 161.5 551t446.5 199q193 0 346 -86l-72 -162q-150 84 -280 84q-193 0 -299.5 -155.5t-106.5 -432.5q0 -588 394 -588q94 0 202 29v436h-237v164h422v-717q-199 -76 -420 -75q-262 0 -410 200q-147 200 -147 553z" />
|
||||||
|
<glyph unicode="H" d="M135 0v1462h187v-616h585v616h187v-1462h-187v682h-585v-682h-187z" />
|
||||||
|
<glyph unicode="I" d="M225 0v123l295 20v1176l-295 20v123h776v-123l-294 -20v-1176l294 -20v-123h-776z" />
|
||||||
|
<glyph unicode="J" d="M137 39v166q162 -61 309 -62q162 0 254.5 80t92.5 226v1013h186v-1011q0 -215 -141 -345q-139 -127 -377 -126q-215 0 -324 59z" />
|
||||||
|
<glyph unicode="K" d="M211 0v1462h186v-731l121 168l453 563h209l-521 -637l539 -825h-211l-450 698l-140 -114v-584h-186z" />
|
||||||
|
<glyph unicode="L" d="M233 0v1462h187v-1296h635v-166h-822z" />
|
||||||
|
<glyph unicode="M" d="M113 0v1462h247l248 -1192h6l250 1192h252v-1462h-153v887q0 121 14 391h-8l-283 -1278h-154l-278 1280h-8q18 -268 18 -406v-874h-151z" />
|
||||||
|
<glyph unicode="N" d="M135 0v1462h213l578 -1204h6q-14 285 -14 404v800h174v-1462h-215l-580 1210h-8q18 -276 18 -417v-793h-172z" />
|
||||||
|
<glyph unicode="O" d="M84 735q0 750 534 750q258 0 392 -195q137 -199 137 -557q0 -362 -137 -557q-138 -197 -394 -196q-532 -1 -532 755zM281 733q0 -590 335 -590q174 0 254 145.5t80 444.5q0 305 -82 445q-84 143 -250 143q-337 0 -337 -588z" />
|
||||||
|
<glyph unicode="P" d="M176 0v1462h404q514 0 514 -428q0 -219 -137.5 -342t-403.5 -123h-191v-569h-186zM362 727h170q195 0 283 72q86 70 86 225q0 279 -338 279h-201v-576z" />
|
||||||
|
<glyph unicode="Q" d="M84 735q0 750 534 750q258 0 392 -195q137 -199 137 -557q0 -526 -285 -694q86 -180 279 -311l-121 -142q-238 172 -328 400q-37 -6 -76 -6q-532 -1 -532 755zM281 733q0 -590 335 -590q174 0 254 145.5t80 444.5q0 305 -82 445q-84 143 -250 143q-337 0 -337 -588z" />
|
||||||
|
<glyph unicode="R" d="M186 0v1462h357q520 0 520 -415q0 -287 -289 -392l397 -655h-219l-350 604h-229v-604h-187zM373 762h164q170 0 251.5 65.5t81.5 210.5q0 141 -79.5 203t-258.5 62h-159v-541z" />
|
||||||
|
<glyph unicode="S" d="M141 49v178q211 -86 414 -86q350 0 350 240q0 104 -71 160q-74 57 -285 133q-211 74 -299 174q-90 102 -90 264q0 174 129 272.5t352 98.5q225 0 416 -78l-64 -164q-197 78 -360 78q-293 0 -293 -209q0 -102 66 -164q66 -63 270 -133q244 -88 327.5 -182t83.5 -240 q0 -190 -139 -301q-138 -111 -393 -110q-258 -1 -414 69z" />
|
||||||
|
<glyph unicode="T" d="M102 1298v164h1022v-164h-417v-1298h-187v1298h-418z" />
|
||||||
|
<glyph unicode="U" d="M125 520v942h186v-932q0 -387 307 -387q293 0 300 389v932h186v-948q0 -260 -125 -397q-127 -139 -371 -139q-483 -1 -483 540z" />
|
||||||
|
<glyph unicode="V" d="M33 1462h196l295 -927q45 -143 88 -334q33 152 93 340l292 921h199l-489 -1462h-187z" />
|
||||||
|
<glyph unicode="W" d="M2 1462h170l88 -663q18 -145 39 -377q18 -203 18 -242q27 162 70 312l141 516h177l145 -521q57 -205 72 -307q6 92 65 619l70 663h170l-187 -1462h-190l-168 580q-43 147 -66 282q-31 -168 -65 -284l-156 -578h-190z" />
|
||||||
|
<glyph unicode="X" d="M53 0l453 764l-422 698h199l331 -559l334 559h191l-422 -692l457 -770h-211l-355 635l-366 -635h-189z" />
|
||||||
|
<glyph unicode="Y" d="M33 1462h203l376 -739l381 739h201l-487 -893v-569h-187v559z" />
|
||||||
|
<glyph unicode="Z" d="M102 0v145l793 1151h-772v166h981v-145l-793 -1151h813v-166h-1022z" />
|
||||||
|
<glyph unicode="[" d="M412 -324v1786h528v-149h-346v-1487h346v-150h-528z" />
|
||||||
|
<glyph unicode="\" d="M211 1462h178l627 -1462h-178z" />
|
||||||
|
<glyph unicode="]" d="M289 -174h346v1487h-346v149h528v-1786h-528v150z" />
|
||||||
|
<glyph unicode="^" d="M111 549l424 924h102l481 -924h-162l-368 735l-318 -735h-159z" />
|
||||||
|
<glyph unicode="_" d="M-16 -184h1259v-140h-1259v140z" />
|
||||||
|
<glyph unicode="`" d="M418 1548v21h219q88 -182 174 -301v-27h-121q-163 139 -272 307z" />
|
||||||
|
<glyph unicode="a" d="M135 307q0 332 510 348l203 7v69q0 236 -244 236q-150 0 -328 -82l-63 137q199 96 383 96q223 0 328 -88q102 -86 102 -278v-752h-131l-37 152h-8q-74 -94 -158 -133t-209 -39q-164 0 -256 85.5t-92 241.5zM324 305q0 -178 200 -178q150 0 234 82q88 84 88 229v99 l-162 -7q-195 -8 -278 -61q-82 -51 -82 -164z" />
|
||||||
|
<glyph unicode="b" d="M158 0v1556h182v-376q0 -96 -8 -226h8q109 164 322 164q203 0 315 -149q115 -152 115 -418q0 -268 -115 -419.5t-315 -151.5q-207 0 -322 159h-12l-37 -139h-133zM340 551q0 -229 70 -324q72 -96 221 -96q272 0 272 422q0 414 -274 414q-154 0 -221.5 -94.5t-67.5 -321.5 z" />
|
||||||
|
<glyph unicode="c" d="M172 543q0 279 145 428q145 147 408 147q176 0 336 -59l-62 -158q-147 57 -268 57q-371 0 -371 -413q0 -406 361 -406q160 0 321 62v-160q-135 -61 -329 -61q-258 0 -400 145q-141 145 -141 418z" />
|
||||||
|
<glyph unicode="d" d="M137 547q0 268 115 419.5t315 151.5q205 0 322 -160h12q-12 129 -12 162v436h182v-1556h-147l-27 147h-8q-115 -168 -322 -167q-203 0 -315 149q-115 152 -115 418zM326 545q0 -414 274 -414q152 0 219 88q66 88 70 287v41q0 229 -70 323q-72 96 -221 97 q-272 0 -272 -422z" />
|
||||||
|
<glyph unicode="e" d="M133 541q0 266 135 421.5t363 155.5q212 0 338 -135q127 -137 127 -356v-113h-774q9 -375 344 -375q199 0 370 76v-160q-170 -76 -364 -75q-244 0 -391 149q-148 151 -148 412zM326 662h573q0 305 -272 305q-276 0 -301 -305z" />
|
||||||
|
<glyph unicode="f" d="M156 961v110l317 33v96q0 195 90 281q88 86 299 86q125 0 252 -35l-41 -143q-109 29 -207 28q-123 0 -168 -51q-43 -49 -43 -164v-104h389v-137h-389v-961h-182v961h-317z" />
|
||||||
|
<glyph unicode="g" d="M102 -186q0 212 240 270q-96 47 -96 154q0 113 133 192q-86 35 -139 123q-51 84 -52 186q0 182 106.5 280.5t303.5 98.5q88 0 150 -20h378v-113l-196 -27q66 -88 65 -213q0 -162 -106 -256q-109 -96 -297 -96q-55 0 -86 6q-100 -55 -100 -133q0 -84 161 -84h187 q172 0 266 -78q92 -76 92 -219q0 -377 -565 -377q-218 0 -332 80q-113 81 -113 226zM274 -180q0 -174 271 -174q395 0 395 223q0 88 -49 118.5t-199 30.5h-188q-230 1 -230 -198zM367 745q0 -227 227 -227q223 0 223 230q0 240 -225 239.5t-225 -242.5z" />
|
||||||
|
<glyph unicode="h" d="M160 0v1556h182v-462l-8 -144h10q104 168 336 168q389 0 389 -401v-717h-182v707q0 260 -238 260q-307 0 -307 -398v-569h-182z" />
|
||||||
|
<glyph unicode="i" d="M197 0v123l344 20v811l-269 21v123h451v-955l352 -20v-123h-878zM526 1435.5q0 114.5 106.5 114.5t106.5 -114q0 -57 -32.5 -86t-73.5 -29q-107 0 -107 114.5z" />
|
||||||
|
<glyph unicode="j" d="M135 -303q131 -39 289 -39q119 0 182 57q66 59 66 158v1081l-420 21v123h602v-1215q0 -180 -113 -278q-111 -96 -319 -97q-160 0 -287 35v154zM637 1435.5q0 114.5 106.5 114.5t106.5 -114.5t-106.5 -114.5t-106.5 114.5z" />
|
||||||
|
<glyph unicode="k" d="M215 0v1556h180v-714l-16 -289h4l135 152l395 393h222l-494 -475l522 -623h-213l-426 504l-129 -82v-422h-180z" />
|
||||||
|
<glyph unicode="l" d="M188 0v123l344 20v1270l-268 21v122h451v-1413l352 -20v-123h-879z" />
|
||||||
|
<glyph unicode="m" d="M92 0v1098h127l27 -148h10q68 168 201 168q164 0 213 -182h6q78 182 219 182q129 0 186 -92q57 -90 58 -309v-717h-162v707q0 147 -27 202q-27 57 -88 58q-88 0 -127 -82q-39 -80 -39 -279v-606h-161v707q0 260 -125 260q-82 0 -119 -80t-37 -318v-569h-162z" />
|
||||||
|
<glyph unicode="n" d="M160 0v1098h147l27 -148h10q104 168 336 168q389 0 389 -401v-717h-182v707q0 260 -238 260q-307 0 -307 -398v-569h-182z" />
|
||||||
|
<glyph unicode="o" d="M115 551q0 264 135 415.5t366 151.5q217 0 356.5 -155.5t139.5 -411.5q0 -266 -137 -418q-139 -154 -365 -153q-219 0 -356 155q-139 158 -139 416zM303 551q0 -420 311 -420q309 0 310 420q0 416 -312 416q-309 0 -309 -416z" />
|
||||||
|
<glyph unicode="p" d="M158 -492v1590h147l27 -148h8q111 168 322 168q203 0 315 -149q115 -152 115 -418q0 -268 -115 -419.5t-315 -151.5q-207 0 -322 159h-12q12 -129 12 -162v-469h-182zM340 551q0 -229 70 -324q72 -96 221 -96q272 0 272 422q0 414 -274 414q-152 0 -219.5 -88t-69.5 -287 v-41z" />
|
||||||
|
<glyph unicode="q" d="M137 547q0 268 115 419.5t315 151.5q209 0 322 -168h8l27 148h147v-1590h-182v469q0 41 12 170h-12q-115 -168 -322 -167q-203 0 -315 149q-115 152 -115 418zM326 545q0 -414 274 -414q152 0 219 88q66 88 70 287v41q0 229 -70 323q-72 96 -221 97q-272 0 -272 -422z " />
|
||||||
|
<glyph unicode="r" d="M264 0v1098h148l22 -201h8q76 117 162 170q84 51 215 51q119 0 240 -45l-49 -166q-121 45 -224 45q-163 0 -251 -92q-88 -90 -89 -268v-592h-182z" />
|
||||||
|
<glyph unicode="s" d="M203 49v166q195 -86 370 -86q274 0 275 162q0 55 -49 98t-226 107q-233 86 -294 159q-59 72 -60 172q0 135 111 213q113 78 309.5 78t368.5 -74l-60 -149q-184 72 -319 72q-236 0 -236 -133q0 -57 51.5 -96.5t231.5 -102.5q207 -76 280 -152q70 -72 70 -182 q0 -150 -116.5 -235.5t-331.5 -85.5q-246 -1 -375 69z" />
|
||||||
|
<glyph unicode="t" d="M139 961v94l267 49l77 287h105v-293h438v-137h-438v-637q0 -195 192 -195q98 0 240 21v-138q-137 -33 -252 -32q-362 0 -362 344v637h-267z" />
|
||||||
|
<glyph unicode="u" d="M160 381v717h182v-707q0 -260 236 -260q162 0 235.5 92t73.5 305v570h182v-1098h-147l-27 147h-10q-106 -168 -334 -167q-391 0 -391 401z" />
|
||||||
|
<glyph unicode="v" d="M82 1098h188l240 -652q84 -225 100 -325h6q8 53 101 325l239 652h189l-416 -1098h-231z" />
|
||||||
|
<glyph unicode="w" d="M-4 1098h162l98 -543q39 -215 57 -393h6q33 195 68 358l133 578h193l127 -578q43 -188 67 -358h6q29 225 60 393l102 543h158l-225 -1098h-195l-131 596l-68 330h-6l-65 -334l-135 -592h-189z" />
|
||||||
|
<glyph unicode="x" d="M96 0l414 563l-393 535h207l290 -410l291 410h207l-395 -535l413 -563h-206l-310 436l-311 -436h-207z" />
|
||||||
|
<glyph unicode="y" d="M82 1098h188l262 -654q82 -203 89 -290h6q20 106 90 292l239 652h189l-475 -1241q-70 -178 -156 -263q-89 -86 -246 -86q-94 0 -168 17v145q61 -12 136 -12q96 0 149 41t96 141l58 150z" />
|
||||||
|
<glyph unicode="z" d="M182 0v125l660 836h-627v137h811v-146l-647 -815h665v-137h-862z" />
|
||||||
|
<glyph unicode="{" d="M225 492v155q338 0 338 189v333q0 287 438 293v-149q-147 -4 -200 -39q-55 -37 -56 -119v-332q0 -209 -233 -248v-12q233 -39 233 -248v-331q0 -82 56 -119q53 -35 200 -39v-150q-438 6 -438 293v334q0 189 -338 189z" />
|
||||||
|
<glyph unicode="|" d="M539 -492v2048h149v-2048h-149z" />
|
||||||
|
<glyph unicode="}" d="M227 -174q141 0 198.5 39t57.5 119v331q0 209 234 248v12q-233 39 -234 248v332q0 80 -57 119t-199 39v149q438 -6 439 -293v-333q0 -188 338 -189v-155q-338 0 -338 -189v-334q0 -287 -439 -293v150z" />
|
||||||
|
<glyph unicode="~" d="M152 586v162q98 109 247 108q102 0 248 -63q129 -55 201 -56q106 0 227 121v-162q-98 -109 -248 -108q-102 0 -247 63q-133 55 -201 56q-106 0 -227 -121z" />
|
||||||
|
<glyph unicode=" " />
|
||||||
|
<glyph unicode="¢" d="M172 743q0 494 434 568v172h137v-164q158 -2 318 -59l-62 -158q-147 57 -268 57q-371 0 -371 -414q0 -406 361 -405q152 0 321 61v-159q-123 -59 -299 -62v-200h-137v206q-434 68 -434 557z" />
|
||||||
|
<glyph unicode="£" d="M119 0v154q201 49 200 284v213h-198v137h198v324q0 166 109 268q106 100 289 101q193 0 346 -80l-66 -144q-143 72 -272 72q-223 0 -223 -246v-295h377v-137h-377v-211q0 -199 -140 -274h748v-166h-991z" />
|
||||||
|
<glyph unicode="¥" d="M78 1462h192l342 -739l346 739h191l-385 -768h240v-137h-302v-158h302v-137h-302v-262h-178v262h-301v137h301v158h-301v137h234z" />
|
||||||
|
<glyph unicode="©" d="M6 731q0 342 160 547t448 205q283 0 447 -203q162 -201 162 -549t-162 -549q-164 -203 -447 -202q-285 0 -446.5 204.5t-161.5 546.5zM115 731q0 -301 129 -473q127 -170 370 -170q242 0 369 170q131 174 131 473t-131 473q-127 170 -368.5 170t-370.5 -172t-129 -471z M248 733q0 209 110.5 332t300.5 123q127 0 254 -62l-61 -127q-106 53 -193 54q-123 0 -186 -86q-66 -88 -65 -236q0 -324 251 -323q98 0 215 45v-131q-108 -49 -221 -50q-197 0 -301 123t-104 338z" />
|
||||||
|
<glyph unicode="­" d="M285 465v168h659v-168h-659z" />
|
||||||
|
<glyph unicode="®" d="M6 731q0 342 160 547t448 205q283 0 447 -203q162 -201 162 -549t-162 -549q-164 -203 -447 -202q-285 0 -446.5 204.5t-161.5 546.5zM115 731q0 -301 129 -473q127 -170 370 -170q242 0 369 170q131 174 131 473t-131 473q-127 170 -368.5 170t-370.5 -172t-129 -471z M348 285v893h234q326 0 325 -265q0 -163 -159 -233l237 -395h-178l-207 352h-94v-352h-158zM506 768h72q170 0 170 141q0 74 -41 103q-43 31 -132 30h-69v-274z" />
|
||||||
|
<glyph unicode="´" d="M418 1241v27q92 127 174 301h219v-21q-109 -168 -272 -307h-121z" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="782" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="1568" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="782" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="1568" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="522" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="391" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="260" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="260" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="194" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="311" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="86" />
|
||||||
|
<glyph unicode="‐" d="M285 465v168h659v-168h-659z" />
|
||||||
|
<glyph unicode="‑" d="M285 465v168h659v-168h-659z" />
|
||||||
|
<glyph unicode="‒" d="M285 465v168h659v-168h-659z" />
|
||||||
|
<glyph unicode="–" d="M184 465v168h860v-168h-860z" />
|
||||||
|
<glyph unicode="—" d="M-6 465v168h1241v-168h-1241z" />
|
||||||
|
<glyph unicode="‘" d="M446 983q57 217 177 479h157q-66 -276 -100 -501h-219z" />
|
||||||
|
<glyph unicode="’" d="M446 961q61 254 101 501h219l14 -22q-53 -207 -176 -479h-158z" />
|
||||||
|
<glyph unicode="“" d="M233 983q57 217 177 479h157q-66 -276 -100 -501h-219zM659 983q57 217 177 479h157q-66 -276 -100 -501h-219z" />
|
||||||
|
<glyph unicode="”" d="M233 961q61 254 101 501h219l14 -22q-53 -207 -176 -479h-158zM659 961q61 254 101 501h219l14 -22q-53 -207 -176 -479h-158z" />
|
||||||
|
<glyph unicode="•" d="M379 748q0 262 235.5 262t235.5 -262q0 -129 -64 -195q-65 -68 -172 -68q-113 0 -174 68t-61 195z" />
|
||||||
|
<glyph unicode="…" d="M78 110.5q0 139.5 127 139.5t127 -139.5t-127 -139.5t-127 139.5zM487 110.5q0 139.5 127 139.5t127 -139.5t-127 -139.5t-127 139.5zM897 110.5q0 139.5 127 139.5t127 -139.5t-127 -139.5t-127 139.5z" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="311" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="391" />
|
||||||
|
<glyph unicode="€" d="M96 502v137h148l-2 39l2 119h-148v137h160q41 262 180 405q141 143 359 144q193 0 335 -92l-79 -146q-123 74 -242 74q-133 0 -234 -100q-96 -96 -133 -285h432v-137h-446q0 -6 -1 -14.5t-1 -14.5v-25v-61q0 -29 2 -43h385v-137h-367q74 -358 369 -359q139 0 268 58v-162 q-125 -59 -282 -59q-444 0 -541 522h-164z" />
|
||||||
|
<glyph unicode="™" d="M0 1354v108h481v-108h-178v-613h-127v613h-176zM526 741v721h187l139 -534l149 534h179v-721h-127v342q0 74 10 207h-12l-154 -549h-100l-146 549h-12l10 -180v-369h-123z" />
|
||||||
|
<glyph unicode="" horiz-adv-x="1100" d="M0 1100h1100v-1100h-1100v1100z" />
|
||||||
|
<glyph unicode="fi" d="M49 961v75l195 68v96q0 190 75.5 278.5t255.5 88.5q96 0 197 -37l-47 -141q-82 29 -143 28q-90 0 -123 -51q-33 -53 -33 -164v-104h246v-137h-246v-961h-182v961h-195zM854 1394.5q0 114.5 106.5 114.5t106.5 -114q0 -58 -31 -86q-33 -29 -75 -29q-107 0 -107 114.5z M868 0v1098h183v-1098h-183z" />
|
||||||
|
<glyph unicode="fl" d="M49 961v75l195 68v96q0 190 75.5 278.5t255.5 88.5q96 0 197 -37l-47 -141q-82 29 -143 28q-90 0 -123 -51q-33 -53 -33 -164v-104h246v-137h-246v-961h-182v961h-195zM868 0v1556h183v-1556h-183z" />
|
||||||
|
<glyph unicode="ffi" d="M66 971v65l100 62v82q0 109 20 176q23 76 58 112q37 39 96 60q55 18 127 18q57 0 92 -10q47 -14 78 -25q43 33 88 43q53 12 115 13q59 0 98 -11q49 -14 82 -26l-41 -131q-18 8 -64 20q-31 8 -71 8q-37 0 -66 -12q-27 -12 -45 -37q-16 -23 -26 -69q-8 -39 -9 -107v-104 h367v-1098h-164v971h-203v-971h-163v971h-205v-971h-164v971h-100zM330 1098h205v102q0 115 24 193q-29 8 -43 10q-29 4 -45 4q-39 0 -61 -10q-27 -12 -45 -37q-14 -18 -25 -70q-10 -47 -10 -108v-84z" />
|
||||||
|
<glyph unicode="ffl" d="M66 971v65l100 62v82q0 109 20 176q23 76 58 112q37 39 96 60q55 18 127 18q57 0 92 -10q47 -14 78 -25q43 33 88 43q53 12 115 13q55 0 94 -11h131v-1556h-164v1421q-20 4 -29 4q-4 0 -14 1t-14 1q-37 0 -66 -12q-27 -12 -45 -37q-16 -23 -26 -69q-8 -39 -9 -107v-104 h142v-127h-142v-971h-163v971h-205v-971h-164v971h-100zM330 1098h205v102q0 115 24 193q-29 8 -43 10q-29 4 -45 4q-39 0 -61 -10q-27 -12 -45 -37q-14 -18 -25 -70q-10 -47 -10 -108v-84z" />
|
||||||
|
</font>
|
||||||
|
</defs></svg>
|
After Width: | Height: | Size: 23 KiB |
BIN
fonts/droid-sans-mono/droid-sans-mono-webfont.ttf
Normal file
BIN
fonts/droid-sans-mono/droid-sans-mono-webfont.woff
Normal file
14
fonts/inconsolata.css
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
@font-face {
|
||||||
|
font-family: 'InconsolataRegular';
|
||||||
|
src: url('inconsolata/inconsolata-webfont.eot');
|
||||||
|
src: url('inconsolata/inconsolata-webfont.eot?#iefix') format('embedded-opentype'),
|
||||||
|
url('inconsolata/inconsolata-webfont.woff') format('woff'),
|
||||||
|
url('inconsolata/inconsolata-webfont.ttf') format('truetype'),
|
||||||
|
url('inconsolata/inconsolata-webfont.svg#InconsolataRegular') format('svg');
|
||||||
|
font-weight: normal;
|
||||||
|
font-style: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-font-inconsolata * {
|
||||||
|
font-family: Inconsolata, 'InconsolataRegular', 'Courier New', monospace !important;
|
||||||
|
}
|
BIN
fonts/inconsolata/inconsolata-webfont.eot
Normal file
147
fonts/inconsolata/inconsolata-webfont.svg
Normal file
@ -0,0 +1,147 @@
|
|||||||
|
<?xml version="1.0" standalone="no"?>
|
||||||
|
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<metadata>
|
||||||
|
This is a custom SVG webfont generated by Font Squirrel.
|
||||||
|
Copyright : Created by Raph Levien using his own tools and FontForge Copyright 2006 Raph Levien Released under the SIL Open Font License httpscriptssilorgOFL
|
||||||
|
</metadata>
|
||||||
|
<defs>
|
||||||
|
<font id="webfont9rzdef9O" horiz-adv-x="1024" >
|
||||||
|
<font-face units-per-em="2048" ascent="1679" descent="-369" />
|
||||||
|
<missing-glyph horiz-adv-x="500" />
|
||||||
|
<glyph unicode=" " />
|
||||||
|
<glyph unicode="!" d="M369 97q0 50 35.5 86t86 36t86 -36t35.5 -86t-35.5 -85t-86 -35t-86 35t-35.5 85zM389 1214q0 53 14 89q27 66 91 65q31 0 58.5 -22.5t39.5 -65.5q6 -31 6 -84q0 -45 -8 -127t-10 -106l-37 -566h-103l-30 566q-4 70 -12.5 144t-8.5 107z" />
|
||||||
|
<glyph unicode=""" d="M227 870l45 140q20 61 21 112q0 23 -7 66t-7 63q0 57 26.5 85t61.5 28t63.5 -30.5t28.5 -94.5q0 -72 -68 -260l-49 -135zM582 870l45 140q18 61 18 112q0 23 -6 66t-6 63q0 57 26.5 85t61.5 28t63.5 -30.5t28.5 -94.5q0 -72 -70 -260l-49 -135z" />
|
||||||
|
<glyph unicode="#" d="M51 387l8 94l203 4l41 349l-223 -3l6 97l227 2l41 348l125 6l-43 -352l226 2l40 334l127 4l-41 -336l187 2l-12 -98l-187 -2l-43 -344l203 4l-10 -97l-203 -4l-45 -368l-125 -9l45 375l-227 -2l-43 -364l-121 -6l43 368zM383 487l225 5l43 344l-227 -2z" />
|
||||||
|
<glyph unicode="$" d="M123 193l88 122q8 -6 8 -20t6 -23q102 -109 256 -125v451q-66 20 -112 43q-207 98 -207 272q0 111 89 195t230 102v123h131q2 -4 2 -8q0 -6 -7 -15.5t-7 -19.5v-78q190 -20 305 -157l-88 -111q-10 2 -10 14l-2 17q-2 4 -10 12q-70 84 -195 105v-396q92 -31 137 -49 q205 -88 205 -276q0 -119 -89 -217.5t-253 -120.5v-129h-119v125q-221 14 -358 164zM297 930q0 -92 113 -158q29 -16 71 -33v355q-90 -10 -137 -57.5t-47 -106.5zM600 152q96 18 152.5 78.5t56.5 131.5q0 100 -102 156q-35 18 -107 41v-407z" />
|
||||||
|
<glyph unicode="%" d="M57 1032q0 115 68 190.5t162 75.5t161.5 -76.5t67.5 -193.5q0 -113 -66.5 -188.5t-160.5 -75.5q-96 0 -164 76.5t-68 191.5zM94 0l707 1276h137l-713 -1276h-131zM182 1038q0 -92 33 -129t72 -37t69.5 36t30.5 116q0 96 -32.5 132t-71.5 36q-37 0 -69 -36t-32 -118z M530 244q0 115 68 190.5t162 75.5t160.5 -76t66.5 -188q0 -115 -66.5 -190.5t-160.5 -75.5t-162 75.5t-68 188.5zM651 244q0 -82 34 -122t75 -40t73.5 38t32.5 120q0 88 -33.5 127t-74.5 39t-74 -38t-33 -124z" />
|
||||||
|
<glyph unicode="&" d="M74 299q0 119 70.5 228.5t187.5 174.5q-145 174 -146 318q0 115 82 191.5t201 76.5q117 0 195.5 -77.5t78.5 -194.5q0 -100 -60 -193.5t-161 -146.5l230 -322q63 74 92 166q2 8 2 17q0 4 -1 11t-1 13q0 12 8 21l133 -93q-70 -125 -156 -237l144 -186l-121 -91l-113 181 q-63 -80 -154 -128t-192 -48q-137 0 -228 91t-91 228zM229 313q0 -88 53.5 -145t133.5 -57q61 0 122.5 35.5t94.5 70.5l31 35l-261 354q-82 -51 -128 -131t-46 -162zM328 1018q0 -98 125 -254q72 39 113.5 105.5t41.5 136.5q0 72 -42 116.5t-99 44.5t-98 -41.5t-41 -107.5z " />
|
||||||
|
<glyph unicode="'" d="M422 870l45 140q20 61 20 112q0 23 -7 66t-7 63q0 57 26.5 85t61.5 28t63.5 -30.5t28.5 -94.5q0 -72 -67 -260l-51 -135z" />
|
||||||
|
<glyph unicode="(" d="M285 528.5q0 280.5 139 506t379 329.5l61 -125q-8 -4 -16 -4q-4 0 -11.5 1t-11.5 1q-6 0 -18 -6q-178 -106 -279.5 -290.5t-101.5 -403.5q0 -242 119 -452t325 -331l-65 -108q-244 127 -382 364.5t-138 518z" />
|
||||||
|
<glyph unicode=")" d="M147 -233q209 111 331 310t122 431q0 227 -119 422.5t-321 304.5l39 127q250 -115 398 -345.5t148 -502.5q0 -276 -151.5 -513t-407.5 -357z" />
|
||||||
|
<glyph unicode="*" d="M84 723l53 133l332 -156l-33 363h166q-2 -12 -6 -27.5t-6 -27.5l-31 -308l326 148l53 -125l-350 -107l258 -309l-113 -88l-221 340l-229 -342l-111 90l266 307z" />
|
||||||
|
<glyph unicode="+" d="M92 596v125h363v350h129v-350h350v-125h-350v-383h-129v383h-363z" />
|
||||||
|
<glyph unicode="," d="M338 -283q57 53 102 127q31 49 31 86q0 41 -47 72q-57 39 -57 92q0 47 33.5 82t82.5 35q57 0 100.5 -47t43.5 -123q0 -164 -219 -385z" />
|
||||||
|
<glyph unicode="-" d="M145 575v138h738v-138h-738z" />
|
||||||
|
<glyph unicode="." d="M367 94q0 49 35.5 84t86 35t86 -35t35.5 -84t-35.5 -83t-86 -34t-86 34t-35.5 83z" />
|
||||||
|
<glyph unicode="/" d="M131 -27l641 1389l123 -64l-643 -1384z" />
|
||||||
|
<glyph unicode="0" d="M102 629q0 291 125 473t287 182q76 0 147.5 -44t130 -125t94.5 -211t36 -287.5t-37 -283.5t-96.5 -202t-129 -115t-143.5 -39q-162 0 -288 178.5t-126 473.5zM236 653q0 -131 28 -241l451 581q-41 82 -94.5 124t-108.5 42q-104 0 -190 -138.5t-86 -367.5zM311 283 q43 -84 98.5 -129t112.5 -45q45 0 89 27.5t85 82.5t66.5 154.5t25.5 226.5q0 141 -26 256z" />
|
||||||
|
<glyph unicode="1" d="M186 1106l328 172h96v-1167h230v-113h-602v113h235v989l-252 -74z" />
|
||||||
|
<glyph unicode="2" d="M150 0v90q76 150 163.5 258.5t206.5 216.5q45 39 61.5 54.5t56.5 58.5t57.5 72.5t33.5 75.5t16 89q0 102 -71.5 173t-173.5 71q-76 0 -133.5 -37t-85.5 -80q-4 -8 -7.5 -23t-9.5 -24l-104 82q55 96 151.5 151.5t204.5 55.5q156 0 263.5 -104.5t107.5 -253.5 q0 -63 -20.5 -125t-58.5 -114t-69.5 -86t-76.5 -77q-51 -51 -106.5 -100t-124.5 -131t-116 -168h535q12 0 22 8q14 14 27 10v-143h-749z" />
|
||||||
|
<glyph unicode="3" d="M141 123l109 129q8 -8 12 -27.5t14 -29.5q10 -12 29 -27.5t68 -37t102 -21.5q111 0 184.5 76.5t73.5 183.5q0 113 -84 177t-217 64q-33 0 -63 -4v115q127 0 200 33q63 29 99.5 84t36.5 116q0 82 -62.5 140.5t-159.5 58.5q-129 0 -219 -98l-80 88q125 137 305 137 q150 0 251.5 -95t101.5 -229q0 -92 -52.5 -167.5t-138.5 -108.5q98 -35 158.5 -125t60.5 -205q0 -154 -108.5 -263.5t-284.5 -109.5q-205 1 -336 146z" />
|
||||||
|
<glyph unicode="4" d="M98 354v105l543 819h121v-799h164v-127h-164v-352h-150v354h-514zM240 479h374v572z" />
|
||||||
|
<glyph unicode="5" d="M131 174l127 94q10 -6 11 -24.5t3 -22.5q14 -29 81 -74t155 -45q109 0 183.5 81t74.5 223q0 145 -77 225t-185 80q-66 0 -129.5 -32t-110.5 -89l-90 37l43 649h647v-129h-526l-21 -367q100 49 209 49q166 0 275.5 -113.5t109.5 -312.5q0 -201 -114.5 -313.5 t-286.5 -112.5q-115 0 -215.5 51.5t-163.5 145.5z" />
|
||||||
|
<glyph unicode="6" d="M137 582q0 238 56 391q55 160 163.5 238.5t231.5 78.5q162 0 280 -116l-100 -109q-10 6 -17.5 23.5t-13.5 21.5q-6 8 -22.5 18.5t-52 22.5t-72.5 12q-35 0 -69 -8t-79 -40t-77.5 -82t-58 -144t-27.5 -219q43 72 115.5 112.5t154.5 40.5q143 0 246.5 -113.5t103.5 -304 t-106.5 -308t-257.5 -117.5q-86 0 -166 43t-136 124q-96 148 -96 435zM287 526q-12 -176 62.5 -298t191.5 -122q90 0 154.5 76t64.5 217q0 152 -67.5 225.5t-155.5 73.5q-72 0 -139.5 -47t-110.5 -125z" />
|
||||||
|
<glyph unicode="7" d="M162 1141v135h723v-80q-131 -295 -244 -598q-109 -297 -203 -598h-162q115 344 246 682q88 231 185 459h-545z" />
|
||||||
|
<glyph unicode="8" d="M123 322q0 109 70.5 206t185.5 150q-88 45 -141.5 126t-53.5 173q0 131 99.5 223t244.5 92q141 0 236.5 -88t95.5 -215q0 -92 -55 -175t-148 -132q111 -51 178.5 -146.5t67.5 -205.5q0 -147 -112.5 -248.5t-278.5 -101.5t-277.5 99.5t-111.5 242.5zM270 340 q0 -96 72 -163.5t176 -67.5q100 0 170 64.5t70 157.5t-74 172t-199 118q-92 -39 -153.5 -116t-61.5 -165zM322 989q0 -57 34.5 -109.5t76.5 -82t79 -45.5l35 -19q76 41 125 108.5t49 139.5q0 80 -58.5 135t-144.5 55q-84 0 -140 -53t-56 -129z" />
|
||||||
|
<glyph unicode="9" d="M139 866q0 182 107.5 302t259.5 120q109 0 204 -69.5t142 -206.5q43 -129 43 -357q0 -236 -53 -379q-55 -147 -164 -221.5t-234 -74.5q-164 0 -282 116l100 109q10 -6 17.5 -24.5t15.5 -24.5q59 -47 154 -47q76 0 145.5 43t105.5 133q47 109 54 315q-45 -63 -115 -100 t-150 -37q-143 0 -246.5 112.5t-103.5 290.5zM279 872q0 -135 66.5 -209.5t158.5 -74.5q70 0 134 42t107 113q16 186 -56.5 302t-186.5 116q-92 0 -157.5 -78t-65.5 -211z" />
|
||||||
|
<glyph unicode=":" d="M367 94q0 49 35.5 84t86 35t86 -35t35.5 -84t-35.5 -83t-86 -34t-86 34t-35.5 83zM367 748.5q0 48.5 35.5 83t86 34.5t86 -34.5t35.5 -83t-35.5 -83t-86 -34.5t-86 34.5t-35.5 83z" />
|
||||||
|
<glyph unicode=";" d="M338 -283q57 53 102 127q31 49 31 86q0 41 -47 72q-57 39 -57 92q0 47 33.5 82t82.5 35q57 0 100.5 -47t43.5 -123q0 -164 -219 -385zM367 748.5q0 48.5 35.5 83t86 34.5t86 -34.5t35.5 -83t-35.5 -83t-86 -34.5t-86 34.5t-35.5 83z" />
|
||||||
|
<glyph unicode="<" d="M72 606l872 -510v156l-717 401l711 363v145l-866 -456v-99z" />
|
||||||
|
<glyph unicode="=" d="M92 348v125h842v-125h-842zM92 772v125h842v-125h-842z" />
|
||||||
|
<glyph unicode=">" d="M82 96v156l715 401l-711 363v145l868 -456v-99z" />
|
||||||
|
<glyph unicode="?" d="M131 1149q66 100 172.5 156.5t222.5 56.5q166 0 264.5 -105.5t98.5 -255.5q0 -55 -12.5 -100t-41 -84t-46 -57.5t-57.5 -51t-46 -36.5q-57 -51 -72.5 -97.5t-15.5 -111.5v-84h-135v84q0 82 17.5 139t78.5 125l40 41q32 33 47.5 51.5t38 52t32.5 68.5t10 72 q0 92 -61.5 154.5t-153.5 62.5q-78 0 -153.5 -48t-122.5 -130zM414 91q0 48 34.5 83t86 35t86 -35t34.5 -83t-34.5 -83t-86 -35t-86 35t-34.5 83z" />
|
||||||
|
<glyph unicode="@" d="M63 643q0 166 45.5 296t118 206t156.5 113.5t172 37.5q115 0 209 -60t143 -167q45 -102 45 -295v-416h-123v78q-80 -94 -204 -94q-111 0 -189 78t-78 188q0 86 51.5 160t143.5 111q82 31 240 30h30q0 115 -79.5 196t-194.5 81q-68 0 -132.5 -33t-117.5 -96.5t-85 -169 t-32 -238.5q0 -143 39 -253.5t103.5 -174t139.5 -95.5t152 -32q119 0 220 68l55 -101q-131 -84 -287 -84q-100 0 -193.5 38t-172 115t-127 210t-48.5 303zM485 614q0 -68 47.5 -113.5t114.5 -45.5q47 0 88 23.5t64 68.5q14 29 21 72t8 66.5t1 82.5v39h-34q-158 0 -228 -47 q-82 -56 -82 -146z" />
|
||||||
|
<glyph unicode="A" d="M31 -2l450 1300h17l491 -1298h-147l-142 373h-405l-123 -375h-141zM324 483h344l-181 488z" />
|
||||||
|
<glyph unicode="B" d="M98 0v1276h363q158 0 239 -35q88 -39 136.5 -113.5t48.5 -162.5q0 -92 -51.5 -169t-137.5 -112q106 -37 173 -128t67 -202q0 -102 -56.5 -187t-156.5 -128q-90 -39 -264 -39h-361zM240 125h243q109 0 166 27q63 29 99 87t36 130q0 70 -37.5 132t-105.5 95q-68 31 -192 31 h-209v-502zM240 748h200q117 0 176.5 25.5t92 73.5t32.5 103q0 57 -33.5 106.5t-95.5 73.5q-57 25 -170 25h-202v-407z" />
|
||||||
|
<glyph unicode="C" d="M84 631q0 147 31.5 264t81 188.5t116 118.5t129 65.5t127.5 18.5q127 0 232.5 -68.5t159.5 -183.5l-138 -67q-8 6 -8 20v7v7q0 10 -6 23q-41 68 -106.5 107.5t-139.5 39.5q-141 0 -240.5 -142t-99.5 -386q0 -248 102.5 -394.5t249.5 -146.5q76 0 147 42t114 114l106 -70 q-59 -98 -159.5 -153t-215.5 -55q-66 0 -131 19t-129.5 67.5t-114 121t-79 187.5t-29.5 256z" />
|
||||||
|
<glyph unicode="D" d="M111 -2v1278h297q98 0 165.5 -13.5t131.5 -54.5q121 -78 179 -227.5t58 -339.5q0 -211 -72.5 -366.5t-210.5 -225.5q-100 -51 -276 -51h-272zM246 111h131q76 0 130 11t107 46q184 125 185 453q0 332 -160 462q-53 45 -108.5 58.5t-131.5 13.5h-153v-1044z" />
|
||||||
|
<glyph unicode="E" d="M121 0v1278h782v-127h-647v-420h535v-131h-535v-473h641v-127h-776z" />
|
||||||
|
<glyph unicode="F" d="M160 0v1278h735v-125h-592v-401h477v-125h-477v-627h-143z" />
|
||||||
|
<glyph unicode="G" d="M74 623q0 160 35.5 283.5t89 193t123 115t129 59.5t116.5 14q119 0 217.5 -57t153.5 -156l-100 -102q-12 8 -27 39q-31 68 -96.5 109.5t-147.5 41.5q-86 0 -162.5 -47t-123.5 -135q-66 -121 -66 -328q0 -297 123 -436q96 -111 242 -111q121 0 229 78v303h-231v125h364 v-499q-180 -133 -375 -133q-70 0 -137.5 20t-133 68.5t-113.5 119t-78.5 183.5t-30.5 252z" />
|
||||||
|
<glyph unicode="H" d="M111 0v1276h159q2 -4 2 -10t-6 -16.5t-6 -22.5v-498h500v547h155q2 -4 3 -8q0 -8 -7.5 -17.5t-7.5 -19.5v-1233h-145v610h-498v-608h-149z" />
|
||||||
|
<glyph unicode="I" d="M166 -2v121h252v1036h-238v121h633v-121h-252v-1038h264v-119h-659z" />
|
||||||
|
<glyph unicode="J" d="M100 119l97 117q6 -6 7 -19.5t5 -17.5q8 -10 27.5 -28.5t67.5 -42.5t97 -24q96 0 150 80q23 33 34 81t12 76t1 85v729h-246v121h584v-121h-197v-727q0 -61 -2 -97t-13 -88.5t-36 -95.5q-43 -82 -119.5 -126t-169.5 -44q-86 0 -164 37t-135 105z" />
|
||||||
|
<glyph unicode="K" d="M86 0v1278h172q2 -12 -12 -29q-6 -10 -6 -24v-537l532 598q41 -10 107 -10h53l-483 -551l516 -727l-183 -6l-442 647l-100 -111v-528h-154z" />
|
||||||
|
<glyph unicode="L" d="M135 -2v1278h168q2 -14 -8 -33q-10 -18 -10 -37v-1083h614v-125h-764z" />
|
||||||
|
<glyph unicode="M" d="M84 -2v1278h113l315 -625l322 627h108v-1280h-135v965l-277 -514h-55l-258 507v-958h-133z" />
|
||||||
|
<glyph unicode="N" d="M102 0v1276h140l536 -946v948h152q2 -12 -6 -27q-8 -14 -9 -28v-1225h-112l-563 1006v-1004h-138z" />
|
||||||
|
<glyph unicode="O" d="M59 640q0 144 30 260t77 186.5t109.5 118.5t123 66.5t121.5 18.5q109 0 208 -61.5t159 -177.5q78 -154 78 -416q0 -254 -76 -408q-59 -123 -158.5 -185t-210.5 -62q-61 0 -122.5 20t-123 69.5t-108.5 122t-77 188.5t-30 260zM201 659q0 -145 29.5 -254.5t77.5 -169 t101.5 -87t110.5 -27.5q72 0 137.5 42t106.5 130q57 121 57 323q0 215 -49 338q-41 102 -111.5 151.5t-146.5 49.5q-55 0 -106.5 -24.5t-99.5 -79t-77.5 -156t-29.5 -236.5z" />
|
||||||
|
<glyph unicode="P" d="M121 0v1276h389q156 0 240 -43q88 -45 136 -131t48 -185.5t-47 -183.5t-133 -129q-82 -41 -234 -41h-252v-563h-147zM266 690h258q96 0 150 25q53 29 82.5 81t29.5 113q0 66 -31.5 121t-88.5 84q-55 27 -156 27h-242z" />
|
||||||
|
<glyph unicode="Q" d="M59 639q0 145 31 261t77 186.5t108.5 118.5t123 66.5t121.5 18.5q109 0 208 -62.5t161 -180.5q76 -152 76 -414q0 -254 -76 -408q-51 -100 -130 -160.5t-171 -78.5q4 -68 34.5 -111t116.5 -43q25 0 81.5 5t84.5 5l-4 -139q-34 -1 -66 -1q-63 0 -117 3q-81 4 -132 29 q-125 63 -123 252q-76 10 -142.5 51t-128 114.5t-97.5 199.5t-36 288zM199 662q0 -145 29.5 -256t76.5 -172.5t102.5 -91t114.5 -29.5q37 0 74 11t80 45t75.5 86t54 145.5t21.5 215.5q0 211 -51 340q-43 104 -114.5 153.5t-147.5 49.5q-57 0 -109.5 -26.5t-99.5 -81 t-76.5 -155.5t-29.5 -234z" />
|
||||||
|
<glyph unicode="R" d="M115 0v1276h377q160 0 243 -43q86 -43 133 -126t47 -181q0 -127 -71.5 -226.5t-188.5 -130.5l295 -569h-159l-283 563h-248v-563h-145zM260 690h248q96 0 147 25q55 29 84 81t29 113q0 66 -30.5 121t-90.5 84q-53 27 -155 27h-232v-451z" />
|
||||||
|
<glyph unicode="S" d="M106 143l84 148q10 -6 11 -21q0 -14 6 -22q47 -59 127 -99t176 -40q131 0 206 69.5t75 161.5q0 109 -109 176q-37 23 -184.5 83t-212.5 108q-137 100 -138 249q0 133 111 230.5t279 97.5q104 0 196 -42t158 -118l-90 -123q-10 4 -11.5 17.5t-5.5 19.5q-39 57 -106.5 92 t-151.5 35q-106 0 -168.5 -55t-62.5 -131q0 -115 131 -191q29 -18 185.5 -83.5t222.5 -126.5q98 -92 98 -230q0 -66 -23.5 -127t-72 -117.5t-133.5 -90t-197 -33.5q-248 -1 -400 163z" />
|
||||||
|
<glyph unicode="T" d="M63 1149v129h885v-129h-377v-1151h-145v1151h-363z" />
|
||||||
|
<glyph unicode="U" d="M102 440v836h162q2 -4 2 -10q0 -8 -14 -29q-8 -10 -8 -27v-772q0 -123 30 -188q33 -72 99.5 -112t144.5 -40q76 0 142.5 39t99.5 111q33 68 33 196v832h137v-830q0 -86 -9.5 -148t-41.5 -122q-53 -96 -150.5 -147.5t-212.5 -51.5q-117 0 -214 51.5t-150 147.5 q-31 57 -40.5 117.5t-9.5 146.5z" />
|
||||||
|
<glyph unicode="V" d="M51 1278h150l327 -981l310 979h141l-428 -1284h-66z" />
|
||||||
|
<glyph unicode="W" d="M35 1276h133l137 -862l205 768h45l207 -772l117 866h120l-202 -1284h-56l-219 842l-223 -842h-59z" />
|
||||||
|
<glyph unicode="X" d="M84 0l348 651l-342 627h154l268 -485l264 485h144l-324 -625l362 -653h-161l-283 506l-274 -506h-156z" />
|
||||||
|
<glyph unicode="Y" d="M57 1278h164l314 -621l282 619h152l-363 -772v-504h-155v504z" />
|
||||||
|
<glyph unicode="Z" d="M102 -2v100l643 1049h-618v129h788l-2 -100l-630 -1051h602q14 0 31.5 7t31.5 5v-139h-846z" />
|
||||||
|
<glyph unicode="[" d="M268 -182v1554h586v-123h-455v-1315h457v-116h-588z" />
|
||||||
|
<glyph unicode="\" d="M131 1298l121 64l643 -1389l-121 -59z" />
|
||||||
|
<glyph unicode="]" d="M170 -66h457v1315h-455v123h584v-1554h-586v116z" />
|
||||||
|
<glyph unicode="^" d="M190 752l314 524h45l276 -522l-108 -52l-199 359l-225 -359z" />
|
||||||
|
<glyph unicode="_" d="M72 -39h882v-125h-882v125z" />
|
||||||
|
<glyph unicode="`" d="M285 1323l106 51l53 -135q25 -59 58 -98q14 -18 47 -47t47 -45q35 -49 33 -85t-29 -57q-16 -14 -38.5 -18t-53.5 9t-59 46q-45 55 -113 242z" />
|
||||||
|
<glyph unicode="a" d="M100 242q0 82 54.5 155.5t160.5 112.5q55 20 133 29.5t125.5 10.5t145.5 1h31v35q0 111 -31 159q-55 90 -193 91q-168 0 -268 -105l-72 94q125 131 334 131q111 0 195 -39.5t131 -115.5q45 -76 45 -221v-580h-139v102q-154 -125 -336 -125q-141 0 -228.5 78t-87.5 187z M248 252q0 -66 54 -114t142 -48q82 0 145.5 35t100.5 76q31 31 45.5 65.5t17.5 56t3 54.5v61h-35q-32 1 -71.5 1t-87.5 -1q-95 -2 -148 -14q-82 -20 -124 -68.5t-42 -103.5z" />
|
||||||
|
<glyph unicode="b" d="M123 0v1362h172q4 -10 -10 -23q-12 -8 -13 -22v-524q45 76 122 120.5t167 44.5q70 0 136.5 -29.5t120.5 -87t86 -150.5t32 -212q0 -123 -34 -221t-90 -157.5t-125 -91.5t-142 -32q-84 0 -157 39t-120 107l-51 -123h-94zM272 498q0 -141 7 -185q8 -63 34.5 -106 t64.5 -62.5t68.5 -27.5t59.5 -8q33 0 65.5 8t71.5 30.5t69.5 57.5t51 98.5t20.5 145.5q0 94 -21.5 165.5t-51 111.5t-68.5 64.5t-70.5 32.5t-62.5 8q-72 0 -129 -36.5t-84 -100.5q-25 -59 -25 -196z" />
|
||||||
|
<glyph unicode="c" d="M115 467q0 211 132 349t339 138q111 0 202 -46t148 -128l-105 -121q-10 6 -10 23.5t-4 24.5q-4 8 -18.5 24.5t-43 40t-76.5 40.5t-104 17q-131 0 -220 -95t-89 -251q0 -164 92.5 -268t229.5 -104q147 0 248 114l86 -100q-139 -147 -347 -148q-199 0 -329.5 139.5 t-130.5 350.5z" />
|
||||||
|
<glyph unicode="d" d="M92 475q0 129 36 226.5t95.5 151.5t125 81t136.5 27q96 0 168 -44.5t107 -117.5v563h158q0 -12 -13 -31q-8 -12 -8 -26l2 -1219q0 -51 10 -86h-147q-8 27 -8 70v80q-45 -78 -123 -124t-166 -46q-72 0 -136.5 29.5t-118.5 88t-86 155.5t-32 222zM236 500q0 -109 25.5 -190 t66.5 -122t84 -60t86 -19q76 0 140 48t91 130q18 61 19 170q0 141 -15 200q-27 94 -96.5 138.5t-144.5 44.5q-43 0 -85 -16.5t-82 -52.5t-64.5 -106.5t-24.5 -164.5z" />
|
||||||
|
<glyph unicode="e" d="M100 457q0 244 124 372.5t306 128.5q59 0 115.5 -17t110 -54t91.5 -103.5t54 -156.5q9 -56 9 -114q0 -33 -3 -67h-665q4 -98 36.5 -170.5t82 -108.5t98.5 -52.5t102 -16.5q147 0 242 105l82 -80q-121 -143 -336 -143q-199 0 -324 126t-125 351zM248 561h514q2 17 2 33 q0 94 -61 167q-71 85 -183 85q-41 0 -82 -14.5t-81 -45t-69.5 -89t-39.5 -136.5z" />
|
||||||
|
<glyph unicode="f" d="M129 764v117h203v92q0 156 51 237q49 80 134 122t185 42q180 0 287 -129l-67 -135q-4 0 -9.5 4t-7.5 12q0 18 -4 25q-33 47 -87 76.5t-118 29.5q-131 0 -188 -102q-35 -61 -35 -203v-71h307v-117h-307v-764h-141v764h-203z" />
|
||||||
|
<glyph unicode="g" d="M78 -131q0 111 153 207q-76 41 -75 125q0 92 106 180q-66 43 -102.5 110.5t-36.5 143.5q0 137 104.5 234.5t245.5 97.5q131 0 221 -90q102 85 232 85q14 0 28 -1l19 -121q-27 4 -55 4q-88 0 -162 -45q47 -72 47 -158q0 -131 -99.5 -226.5t-238.5 -95.5q-61 0 -119 23 q-66 -55 -65 -106q0 -45 55 -62q43 -10 133 -10q40 2 87 2q36 0 76 -1q93 -3 154 -28q72 -29 109 -84t37 -119q0 -51 -23.5 -99t-72 -91t-135.5 -69.5t-199 -26.5q-225 0 -324.5 65.5t-99.5 155.5zM213 -96q0 -78 92 -115q78 -31 195 -31q133 0 209 41q88 49 88 125 q0 37 -27 69t-84 40q-33 6 -108 6h-91q-98 4 -157 10q-117 -63 -117 -145zM258 644q0 -85 60.5 -145.5t145.5 -60.5t145.5 60.5t60.5 145.5t-60.5 145.5t-145.5 60.5t-145.5 -60.5t-60.5 -145.5z" />
|
||||||
|
<glyph unicode="h" d="M143 0v1362h170v-6q0 -8 -12 -23q-8 -8 -8 -20v-543q55 84 138 136t173 52q82 0 148.5 -44t101.5 -121q33 -76 33 -226v-567h-146v563q0 45 -1 72t-13 67.5t-35 67.5q-51 59 -127 59q-68 0 -129 -42t-96 -87q-47 -63 -47 -161v-539h-150z" />
|
||||||
|
<glyph unicode="i" d="M205 0v119h239v698h-227v119h375v-817h219v-119h-606zM416 1238q0 44 30.5 74.5t74.5 30.5t75 -30.5t31 -74.5t-31 -74.5t-75 -30.5t-74.5 30.5t-30.5 74.5z" />
|
||||||
|
<glyph unicode="j" d="M98 -225l97 127q6 -6 10 -19.5t8 -19.5q6 -12 23.5 -29.5t62.5 -40t94 -22.5q61 0 112.5 30.5t76.5 85.5q25 53 24 150v778h-348v121h498v-870q0 -154 -43 -236q-47 -90 -135.5 -138t-192.5 -48q-181 0 -287 131zM575 1238q0 44 32 74.5t76 30.5t74.5 -30.5t30.5 -74.5 t-30.5 -74.5t-74.5 -30.5t-76 30.5t-32 74.5z" />
|
||||||
|
<glyph unicode="k" d="M135 -2v1364h168q2 -12 -10 -31q-8 -10 -8 -22v-803l469 434q43 -10 108 -10h53l-393 -371l459 -561h-14l-176 -6l-383 477l-123 -115v-356h-150z" />
|
||||||
|
<glyph unicode="l" d="M162 0v119h276v1124h-264v119h414v-1243h274v-119h-700z" />
|
||||||
|
<glyph unicode="m" d="M78 0v936h135v-92q33 51 84 82.5t106 31.5q61 0 107.5 -38.5t58.5 -98.5q27 61 84.5 99t124.5 38q98 0 148 -75q12 -16 19 -38t11.5 -43.5t5.5 -45t1 -45.5v-47v-666h-140v666q0 106 -12 135q-23 51 -74 51q-59 0 -108 -84q-41 -66 -41 -148v-618h-137v651q0 92 -9 123 q-23 72 -88 72q-66 0 -112 -88q-29 -55 -29 -133v-625h-135z" />
|
||||||
|
<glyph unicode="n" d="M139 0v936h152v-166q53 84 136 136t173 52q82 0 148.5 -44t101.5 -121q35 -76 35 -226v-567h-146v563q0 45 -2 72t-14 67.5t-35 67.5q-49 59 -127 59q-66 0 -128 -42t-97 -87q-45 -63 -45 -161v-539h-152z" />
|
||||||
|
<glyph unicode="o" d="M82 461q0 213 131 354t313 141q170 0 293 -131t123 -362q0 -223 -123 -355.5t-297 -132.5q-182 0 -311 138.5t-129 347.5zM238 473q0 -166 84 -268.5t200 -102.5q111 0 192 94.5t81 260.5q0 180 -84 277t-195 97q-115 0 -196.5 -97t-81.5 -261z" />
|
||||||
|
<glyph unicode="p" d="M123 -342v1278h149v-143q47 76 126 119.5t169 43.5q72 0 138.5 -28.5t121 -85t88 -150.5t33.5 -213q0 -125 -34.5 -223t-91 -158.5t-125 -91.5t-142.5 -31q-86 0 -159.5 39t-121.5 109v-465h-151zM272 510q0 -86 1 -122t7.5 -80t18.5 -72q27 -61 85 -95.5t128 -34.5 q31 0 63.5 6.5t73.5 29t72 58.5t52.5 100.5t21.5 148.5q0 96 -22.5 168.5t-53.5 112.5t-72 63.5t-71.5 30.5t-61.5 7q-72 0 -131 -36.5t-86 -100.5q-25 -57 -25 -184z" />
|
||||||
|
<glyph unicode="q" d="M86 477q0 225 121 354.5t287 129.5q174 0 258 -138q14 -20 14 -24v137h139v-1278h-147v492q-43 -78 -121 -124t-166 -46q-160 0 -272.5 138t-112.5 359zM236 498q0 -186 79.5 -287.5t188.5 -101.5q76 0 140.5 48t88.5 130q20 61 21 170q0 160 -23 223q-29 80 -95.5 120 t-137.5 40q-106 0 -184 -86t-78 -256z" />
|
||||||
|
<glyph unicode="r" d="M203 -2v938h153l-4 -180q43 96 136.5 149t199.5 53q152 0 250 -102l-68 -141q-10 8 -21 25.5t-13 21.5q-55 70 -156 69q-162 0 -262 -157q-31 -47 -46.5 -90t-17.5 -67.5t-2 -61.5v-457h-149z" />
|
||||||
|
<glyph unicode="s" d="M117 127l84 147q10 -4 9 -19t7 -22q20 -27 52 -51t99.5 -52t141.5 -28q100 0 170 42t70 106q0 76 -95 121q-39 18 -133 46.5t-116 37.5q-29 10 -45.5 17t-56.5 29.5t-63.5 45t-44 63.5t-20.5 86q0 109 100.5 185.5t260.5 76.5q215 0 348 -147l-86 -129q-10 2 -10.5 16.5 t-4.5 20.5q-37 47 -104.5 87t-155.5 40q-82 0 -139 -36t-57 -91q0 -70 92 -113q37 -18 161 -54t183 -69q137 -78 137 -213q0 -115 -104.5 -202.5t-284.5 -87.5q-235 0 -395 147z" />
|
||||||
|
<glyph unicode="t" d="M143 815l2 121h224l16 250l162 26q2 -12 1 -18t-6 -17.5t-7 -19.5l-25 -221h307v-121h-307q-18 -182 -18 -366q0 -135 6 -181q10 -78 54 -113.5t103 -35.5q94 0 209 84l45 -117q-141 -104 -299 -104q-141 0 -213 100q-25 35 -38 84t-15 82t-2 88q0 240 20 479h-219z" />
|
||||||
|
<glyph unicode="u" d="M127 414l2 522h147v-522q0 -137 35 -203q27 -53 75 -84t103 -31q66 0 124.5 40t91.5 100q37 68 36 184v516h150v-852q0 -51 10 -84h-156q-4 29 -4 72l2 71q-45 -78 -122.5 -122t-165.5 -44q-92 0 -171 50.5t-120 140.5q-37 84 -37 246z" />
|
||||||
|
<glyph unicode="v" d="M82 936h176q2 -8 -2 -21.5t-4 -17.5q0 -6 2 -12l270 -684l152 348q96 225 127 387h133q-39 -170 -141 -410l-228 -532h-114z" />
|
||||||
|
<glyph unicode="w" d="M33 936h149q4 -14 -4 -39q-6 -18 -2 -39l137 -674l160 664h90l199 -662q57 385 74 523q13 110 13 189q0 20 -1 38h137q-61 -473 -156 -938h-139l-172 606l-164 -606h-133z" />
|
||||||
|
<glyph unicode="x" d="M96 0l330 475l-324 461h162l244 -346l233 346h152l-303 -455l344 -481h-168l-258 365l-244 -365h-168z" />
|
||||||
|
<glyph unicode="y" d="M45 -276l78 131q6 -6 10 -19.5t6 -13.5q4 -8 14.5 -19.5t37 -25t57.5 -13.5q74 0 131 62q33 35 65 108l29 70l-379 932h182q2 -10 -3 -24.5t-5 -20.5t4 -17l275 -688l178 502q51 145 70 248h153q-33 -109 -92 -270l-293 -772q-37 -100 -80 -148q-90 -102 -235 -102 q-121 0 -203 80z" />
|
||||||
|
<glyph unicode="z" d="M102 -2v100l580 709h-537v129h727v-100l-569 -711h555q14 0 31.5 7t32.5 5v-139h-820z" />
|
||||||
|
<glyph unicode="{" d="M109 467v115h38q94 0 138 45q53 57 53 174q0 25 -2 73t-2 74q0 182 100 275q29 25 62.5 42t67.5 24t71 11.5t71 4.5h68h62v-117h-70q-47 0 -82 1t-67.5 -5t-57.5 -23q-82 -51 -82 -190q0 -25 2 -72t2 -72q0 -98 -30 -163q-47 -96 -148 -140q174 -59 174 -317 q0 -33 -3 -89.5t-3 -82.5q0 -154 84 -211q18 -14 42 -21.5t48.5 -9.5t53 -3t59.5 -1h76v-115h-74h-74q-35 0 -68.5 3.5t-63.5 8.5t-59.5 18t-54.5 32q-115 88 -114 297q0 43 4 109.5t4 95.5q0 135 -53 188q-43 41 -131 41h-41z" />
|
||||||
|
<glyph unicode="|" d="M444 -309v1644h138v-1644h-138z" />
|
||||||
|
<glyph unicode="}" d="M188 1188v117h64h66q34 0 71 -4.5t71 -11.5t68.5 -24.5t61.5 -41.5q102 -92 102 -275q0 -27 -3 -75t-3 -72q0 -117 53 -174q45 -45 138 -45h41v-115h-44q-88 0 -129 -41q-53 -53 -53 -188q0 -29 3 -95.5t3 -109.5q0 -209 -112 -297q-27 -18 -56.5 -31.5t-59.5 -18.5 t-63.5 -8.5t-68.5 -3.5h-74h-74v115h76q31 0 59.5 1t53 3t48.5 9.5t44 21.5q84 57 84 211q0 27 -3 83t-3 89q0 258 172 317q-98 43 -146 140q-33 66 -32 163q0 25 3 72t3 72q0 139 -82 190q-27 16 -58.5 22.5t-66.5 5.5t-82 -1h-72z" />
|
||||||
|
<glyph unicode="~" d="M84 768q49 80 124 131t159 51q57 0 107 -23.5t81 -52t72 -53t80 -24.5q45 0 83.5 32.5t90.5 100.5l94 -78q-51 -76 -125 -132t-160 -56q-55 0 -104 25.5t-78 56t-69 56t-83 25.5q-92 0 -170 -127z" />
|
||||||
|
<glyph unicode=" " />
|
||||||
|
<glyph unicode="¢" d="M98 559q0 207 126 343t331 147l29 229l137 -14q2 -12 -7 -27.5t-12 -30.5l-20 -168q160 -31 242 -157l-90 -117q-8 6 -9 20q0 25 -8 33q-57 70 -151 98l-95 -716q156 0 269 114l73 -100q-133 -145 -344 -145h-16l-31 -230l-116 15l28 231q-154 43 -245 171t-91 304z M244 578q0 -131 56 -225.5t151 -131.5l88 709q-129 -8 -212 -102t-83 -250z" />
|
||||||
|
<glyph unicode="£" d="M80 100q59 27 77.5 37t38 26.5t35.5 41.5q72 111 72 250q0 76 -31 202h-135v117h107q-14 74 -15 131q0 166 105.5 268.5t255.5 102.5q152 0 266 -105l-90 -112q-10 6 -16.5 21.5t-12.5 19.5q-6 8 -22.5 20.5t-53 25.5t-75.5 13q-90 0 -154.5 -65.5t-64.5 -186.5 q0 -55 16 -133h205v-117h-176q27 -119 26 -198q0 -154 -73 -275q27 4 55 4q70 0 175 -42t163 -42q84 0 151 58l54 -107q-106 -86 -213 -86q-63 0 -176 46t-189 46q-106 0 -252 -77z" />
|
||||||
|
<glyph unicode="¥" d="M74 1278h159l297 -535l273 533h151l-356 -672v-43h274v-117h-274v-129h274v-114h-274v-201h-139v201h-287v114h287v129h-287v117h287v43z" />
|
||||||
|
<glyph unicode="©" d="M29 561q0 219 145 371.5t350 152.5t350.5 -152.5t145.5 -369.5q0 -219 -146.5 -371.5t-350.5 -152.5t-349 152.5t-145 369.5zM121 561q0 -182 119.5 -308t285.5 -126t286 127t120 309t-119 309t-286 127t-286.5 -127t-119.5 -311zM236 565q0 129 88 216t213 87 q94 0 164.5 -53t91.5 -137l-107 -39q-6 8 -7 23.5t-1 17.5q-4 12 -14.5 29.5t-44 37t-78.5 19.5q-78 0 -134.5 -49t-56.5 -139q0 -92 56.5 -157t136.5 -65q49 0 90 25t63 68l90 -60q-43 -66 -110.5 -102.5t-140.5 -36.5q-125 0 -212 93t-87 222z" />
|
||||||
|
<glyph unicode="­" d="M145 575v138h738v-138h-738z" />
|
||||||
|
<glyph unicode="®" d="M29 561q0 219 145 371.5t350 152.5t350.5 -152.5t145.5 -369.5q0 -219 -146.5 -371.5t-350.5 -152.5t-349 152.5t-145 369.5zM121 561q0 -182 119.5 -308t285.5 -126t286 127t120 309t-119 309t-286 127t-286.5 -127t-119.5 -311zM317 272v598h193q94 0 141 -20 q51 -23 79 -64t28 -90q0 -55 -33 -99t-86 -58l131 -256l-96 -15l-127 256h-135v-252h-95zM412 606h106q74 0 107 21q39 25 39 69q0 47 -46 72q-33 18 -106 18h-100v-180z" />
|
||||||
|
<glyph unicode="´" d="M418 1130l180 302l129 -86l-207 -277z" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="714" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="1431" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="714" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="1431" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="477" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="356" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="237" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="237" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="178" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="284" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="77" />
|
||||||
|
<glyph unicode="‐" d="M145 575v138h738v-138h-738z" />
|
||||||
|
<glyph unicode="‑" d="M145 575v138h738v-138h-738z" />
|
||||||
|
<glyph unicode="‒" d="M145 575v138h738v-138h-738z" />
|
||||||
|
<glyph unicode="–" d="M145 575v138h738v-138h-738z" />
|
||||||
|
<glyph unicode="—" horiz-adv-x="2048" d="M145 575v138h1762v-138h-1762z" />
|
||||||
|
<glyph unicode="‘" d="M373 922q0 164 217 385l72 -64q-57 -51 -103 -127q-31 -49 -31 -84q0 -41 47 -74q57 -37 58 -90q0 -47 -34 -81.5t-83 -34.5q-57 0 -100 47t-43 123z" />
|
||||||
|
<glyph unicode="’" d="M338 813q57 53 102 127q31 49 31 86q0 41 -47 72q-57 39 -57 92q0 47 33.5 82t82.5 35q57 0 100.5 -47.5t43.5 -122.5q0 -164 -219 -385z" />
|
||||||
|
<glyph unicode="“" d="M162 922q0 164 217 385l70 -64q-57 -51 -103 -127q-31 -49 -31 -84q0 -41 50 -74q57 -37 57 -90q0 -47 -35 -81.5t-84 -34.5q-57 0 -99 47t-42 123zM586 922q0 164 217 385l69 -64q-57 -51 -102 -127q-31 -49 -31 -84q0 -41 49 -74q57 -37 58 -90q0 -47 -35 -81.5 t-84 -34.5q-57 0 -99 47t-42 123z" />
|
||||||
|
<glyph unicode="”" d="M125 813q59 53 104 127q29 49 29 86q0 41 -47 72q-57 39 -57 92q0 47 33.5 82t84.5 35q57 0 99.5 -47.5t42.5 -122.5q0 -164 -217 -385zM549 813q59 53 104 127q29 49 29 86q0 41 -47 72q-57 39 -57 92q0 47 33.5 82t84.5 35q57 0 99.5 -47.5t42.5 -122.5 q0 -164 -217 -385z" />
|
||||||
|
<glyph unicode="•" d="M350 607.5q0 70.5 51.5 120.5t123 50t122.5 -50t51 -120.5t-51 -121t-122.5 -50.5t-123 50.5t-51.5 121z" />
|
||||||
|
<glyph unicode="…" d="M14 94q0 49 35 84t86 35t86 -35t35 -84t-35 -83t-86 -34t-86 34t-35 83zM367 94q0 49 35.5 84t86 35t86 -35t35.5 -84t-35.5 -83t-86 -34t-86 34t-35.5 83zM721 94q0 49 36 84t86 35t85 -35t35 -84t-35 -83t-85 -34t-86 34t-36 83z" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="284" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="356" />
|
||||||
|
<glyph unicode="€" d="M68 446l26 119h82v33q0 70 4 131h-112l26 119h105q25 117 73 201q72 127 180.5 182t221.5 55q168 0 276 -110l-51 -140q-8 6 -10 20.5t-6 20.5q-8 10 -26.5 26.5t-74 41t-116.5 24.5q-104 0 -196.5 -68.5t-133.5 -211.5q-6 -20 -10 -41h505l-45 -119h-479q-4 -55 -4 -121 v-43h422l-47 -119h-363q23 -125 84 -208q100 -137 271 -138q127 0 219 84l59 -102q-121 -104 -286 -105q-55 0 -108.5 11.5t-115 45.5t-110.5 84t-88 135t-54 193h-118z" />
|
||||||
|
<glyph unicode="™" d="M37 1219v81h452v-81h-184v-564h-92v564h-176zM549 655v645h72l147 -296l76 147l78 149h67v-645h-86v441l-63 -113l-60 -109l-32 3l-113 219v-441h-86z" />
|
||||||
|
<glyph unicode="" horiz-adv-x="935" d="M0 935h935v-935h-935v935z" />
|
||||||
|
<glyph unicode="fi" horiz-adv-x="2048" d="M1229 0v119h239v698h-227v119h375v-817h219v-119h-606zM1440 1238q0 44 30.5 74.5t74.5 30.5t75 -30.5t31 -74.5t-31 -74.5t-75 -30.5t-74.5 30.5t-30.5 74.5zM129 764v117h203v92q0 156 51 237q49 80 134 122t185 42q180 0 287 -129l-67 -135q-4 0 -9.5 4t-7.5 12 q0 18 -4 25q-33 47 -87 76.5t-118 29.5q-131 0 -188 -102q-35 -61 -35 -203v-71h307v-117h-307v-764h-141v764h-203z" />
|
||||||
|
<glyph unicode="fl" horiz-adv-x="2048" d="M1186 0v119h276v1124h-264v119h414v-1243h274v-119h-700zM129 764v117h203v92q0 156 51 237q49 80 134 122t185 42q180 0 287 -129l-67 -135q-4 0 -9.5 4t-7.5 12q0 18 -4 25q-33 47 -87 76.5t-118 29.5q-131 0 -188 -102q-35 -61 -35 -203v-71h307v-117h-307v-764h-141 v764h-203z" />
|
||||||
|
<glyph unicode="ffi" horiz-adv-x="3072" d="M2253 0v119h239v698h-227v119h375v-817h219v-119h-606zM2464 1238q0 44 30.5 74.5t74.5 30.5t75 -30.5t31 -74.5t-31 -74.5t-75 -30.5t-74.5 30.5t-30.5 74.5zM1153 764v117h203v92q0 156 51 237q49 80 134 122t185 42q180 0 287 -129l-67 -135q-4 0 -9.5 4t-7.5 12 q0 18 -4 25q-33 47 -87 76.5t-118 29.5q-131 0 -188 -102q-35 -61 -35 -203v-71h307v-117h-307v-764h-141v764h-203zM129 764v117h203v92q0 156 51 237q49 80 134 122t185 42q180 0 287 -129l-67 -135q-4 0 -9.5 4t-7.5 12q0 18 -4 25q-33 47 -87 76.5t-118 29.5 q-131 0 -188 -102q-35 -61 -35 -203v-71h307v-117h-307v-764h-141v764h-203z" />
|
||||||
|
<glyph unicode="ffl" horiz-adv-x="3072" d="M2210 0v119h276v1124h-264v119h414v-1243h274v-119h-700zM1153 764v117h203v92q0 156 51 237q49 80 134 122t185 42q180 0 287 -129l-67 -135q-4 0 -9.5 4t-7.5 12q0 18 -4 25q-33 47 -87 76.5t-118 29.5q-131 0 -188 -102q-35 -61 -35 -203v-71h307v-117h-307v-764h-141 v764h-203zM129 764v117h203v92q0 156 51 237q49 80 134 122t185 42q180 0 287 -129l-67 -135q-4 0 -9.5 4t-7.5 12q0 18 -4 25q-33 47 -87 76.5t-118 29.5q-131 0 -188 -102q-35 -61 -35 -203v-71h307v-117h-307v-764h-141v764h-203z" />
|
||||||
|
</font>
|
||||||
|
</defs></svg>
|
After Width: | Height: | Size: 30 KiB |
BIN
fonts/inconsolata/inconsolata-webfont.ttf
Normal file
BIN
fonts/inconsolata/inconsolata-webfont.woff
Normal file
14
fonts/liberation-mono.css
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
@font-face {
|
||||||
|
font-family: 'LiberationMonoRegular';
|
||||||
|
src: url('liberation-mono/liberation-mono-webfont.eot');
|
||||||
|
src: url('liberation-mono/liberation-mono-webfont.eot?#iefix') format('embedded-opentype'),
|
||||||
|
url('liberation-mono/liberation-mono-webfont.woff') format('woff'),
|
||||||
|
url('liberation-mono/liberation-mono-webfont.ttf') format('truetype'),
|
||||||
|
url('liberation-mono/liberation-mono-webfont.svg#LiberationMonoRegular') format('svg');
|
||||||
|
font-weight: normal;
|
||||||
|
font-style: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-font-liberation-mono * {
|
||||||
|
font-family: Liberation Mono, 'LiberationMonoRegular', 'Courier New', monospace !important;
|
||||||
|
}
|
BIN
fonts/liberation-mono/liberation-mono-webfont.eot
Normal file
153
fonts/liberation-mono/liberation-mono-webfont.svg
Normal file
@ -0,0 +1,153 @@
|
|||||||
|
<?xml version="1.0" standalone="no"?>
|
||||||
|
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<metadata>
|
||||||
|
This is a custom SVG webfont generated by Font Squirrel.
|
||||||
|
Copyright : Digitized data 2007 Ascender Corporation All rights reserved
|
||||||
|
Designer : Steve Matteson
|
||||||
|
Foundry : Ascender Corporation
|
||||||
|
Foundry URL : httpwwwascendercorpcom
|
||||||
|
</metadata>
|
||||||
|
<defs>
|
||||||
|
<font id="webfontwflF1Ngq" horiz-adv-x="1228" >
|
||||||
|
<font-face units-per-em="2048" ascent="1638" descent="-410" />
|
||||||
|
<missing-glyph horiz-adv-x="500" />
|
||||||
|
<glyph unicode=" " />
|
||||||
|
<glyph unicode="!" d="M514 0v201h195v-201h-195zM516 1348h197l-25 -951h-147z" />
|
||||||
|
<glyph unicode=""" d="M276 1485h226l-43 -639h-142zM725 1485h225l-43 -639h-141z" />
|
||||||
|
<glyph unicode="#" d="M53 408v108h226l67 318h-242v106h265l88 410h110l-88 -410h363l88 410h110l-88 -410h211v-106h-233l-68 -318h260v-108h-282l-88 -408h-111l86 408h-362l-84 -408h-111l86 408h-203zM389 516h363l67 318h-360z" />
|
||||||
|
<glyph unicode="$" d="M66 379l170 37q10 -45 34 -99q23 -49 60 -79q39 -33 96 -56q55 -23 131 -24v489q-2 0 -7 1t-7 3q-6 0 -11 2l-2 1l-2 1q-66 16 -98 27q-57 18 -92 33q-45 18 -82 47q-43 31 -68 65q-29 39 -43 84q-16 53 -16 113q0 80 33 141q31 57 90 99q55 39 135 59q72 18 170 23v131 h129v-131q100 -2 174 -25q63 -18 123 -64q53 -41 84 -98q29 -53 51 -135l-174 -33q-8 43 -29 88q-16 37 -51 68q-33 31 -76 45q-49 18 -102 20v-426q18 -4 57 -14t58 -14q53 -14 108 -37q47 -18 97 -51q37 -25 75 -70q33 -39 51.5 -94t18.5 -125q0 -72 -28.5 -139.5 t-86.5 -112.5q-63 -49 -143 -76q-82 -27 -207 -33v-161h-129v161q-213 6 -336 99q-120 90 -155 260zM301 1018q0 -55 21 -90q16 -31 55 -58q31 -23 80 -39l100 -28v411q-70 -2 -119 -18q-49 -15 -79.5 -43t-43.5 -61q-14 -39 -14 -74zM686 156q68 4 119 18q52 15 92 43 q35 25 59 70q23 41 23 96q0 65 -25 104q-27 43 -63 66q-47 29 -94 43l-111 31v-471z" />
|
||||||
|
<glyph unicode="%" d="M0 1024q0 96 23 164q22 65 61 104q37 37 92 53.5t115 16.5q55 0 110 -16q53 -14 91 -54q37 -37 59 -104.5t22 -163.5q0 -92 -22 -160q-22 -65 -62 -104q-39 -39 -90 -57.5t-112.5 -18.5t-112.5 18q-53 18 -90 56q-39 39 -61.5 106.5t-22.5 159.5zM76 0l932 1354h147 l-934 -1354h-145zM147 1024q0 -68 8.5 -106.5t28.5 -69.5q18 -27 45 -39q29 -12 60 -12q33 0 57 12q27 12 43 39q20 31 28.5 69.5t8.5 106.5q0 72 -8 111q-10 47 -27 71q-18 28 -43 37q-27 10 -57 10q-37 0 -64 -12q-29 -12 -45 -37q-16 -27 -26 -69q-9 -39 -9 -111z M655 330q0 94 23 162q22 65 61 104q37 37 92.5 53.5t114.5 16.5q55 0 111 -17q53 -14 90 -53q40 -40 61 -104q23 -68 23 -162t-23 -162q-22 -65 -61 -105q-39 -39 -92 -57q-51 -18 -113 -18q-57 0 -110.5 18.5t-92.5 56.5q-40 40 -61 105q-23 68 -23 162zM803 330 q0 -61 10 -109q10 -43 27 -69q18 -27 45 -39q29 -12 59 -13q35 0 59.5 12.5t43.5 39.5q16 27 26 69q10 47 10 108.5t-10 108.5t-26 72q-18 28 -43 37q-27 10 -58 10q-39 0 -61 -10q-27 -12 -45 -39q-20 -31 -28.5 -69.5t-8.5 -108.5z" />
|
||||||
|
<glyph unicode="&" d="M43 358q0 72 23 140q20 61 61 114q40 52 92 93q51 39 117 71q-16 29 -29 64q-23 63 -24 69q-12 49 -17 74q-6 37 -6 76q0 63 21 117q20 51 65 94q45 41 111 63q74 25 153 25q70 0 129 -19q61 -20 103 -51q39 -31 65 -84q25 -49 25 -114q0 -68 -35 -125q-33 -55 -90 -97 q-63 -47 -131 -77l-152 -68q20 -37 64 -105q41 -66 63.5 -98.5t71.5 -93.5q37 -46 80 -92q37 76 71 184q33 102 54 221l143 -43q-25 -141 -67 -254q-37 -98 -95 -209q43 -55 92.5 -79.5t88.5 -24.5q18 0 51 4q23 2 45 12v-135q-16 -8 -53 -16q-28 -6 -62 -6q-37 0 -78 10 q-35 8 -71 29q-45 25 -64 41q-28 25 -49 49q-31 -27 -64 -49q-45 -31 -79 -45q-45 -18 -95 -31q-52 -12 -110 -12q-106 0 -189 28q-76 27 -129 80q-49 49 -75 121q-25 67 -25 149zM211 362q0 -49 16 -98q14 -45 47 -80q31 -35 82 -53q55 -20 113 -20q33 0 74 10q33 8 65 24 q35 18 56 33q16 12 43 39q-102 115 -170 213q-102 145 -148 227q-84 -45 -131 -121t-47 -174zM408 1057q0 -65 18 -123q14 -45 43 -103l121 54q49 23 98 53q41 27 68 66q25 37 24 81q0 34 -12 62q-12 29 -35 47q-20 18 -53 31q-31 12 -72 12q-37 0 -80 -14q-33 -10 -63 -35 q-23 -18 -41 -58q-16 -36 -16 -73z" />
|
||||||
|
<glyph unicode="'" d="M502 1485h223l-41 -639h-141z" />
|
||||||
|
<glyph unicode="(" d="M342 532q0 147 20 269q18 111 68 239q43 114 111 222q74 117 159 223h191q-96 -119 -164 -232q-74 -123 -113 -227q-45 -119 -65 -238q-20 -117 -21 -258q0 -143 21 -260q20 -119 65 -237q39 -104 113 -228q68 -113 164 -231h-191q-94 117 -159 223q-68 109 -111 226 q-49 129 -68 239q-20 120 -20 270z" />
|
||||||
|
<glyph unicode=")" d="M336 -426q104 127 166 231q74 123 112 228q45 119 66 237q20 117 20 260q0 141 -20 258q-20 119 -66 238q-39 104 -112 227q-61 104 -166 232h192q86 -106 160 -223q68 -108 111 -222q45 -119 65.5 -239.5t20.5 -268.5q0 -150 -20.5 -270.5t-65.5 -238.5 q-43 -117 -111 -226q-66 -106 -160 -223h-192z" />
|
||||||
|
<glyph unicode="*" d="M248 1159l45 133l266 -106l-10 297h135l-12 -295l264 102l45 -131l-283 -74l185 -249l-119 -72l-150 258l-155 -256l-119 72l188 247z" />
|
||||||
|
<glyph unicode="+" d="M117 608v146h424v428h145v-428h424v-146h-424v-428h-145v428h-424z" />
|
||||||
|
<glyph unicode="," d="M258 -362l170 661h264l-309 -661h-125z" />
|
||||||
|
<glyph unicode="-" d="M334 465v160h561v-160h-561z" />
|
||||||
|
<glyph unicode="." d="M496 0v299h235v-299h-235z" />
|
||||||
|
<glyph unicode="/" d="M115 -20l821 1505h176l-815 -1505h-182z" />
|
||||||
|
<glyph unicode="0" d="M125 676q0 203 37 338q35 131 102 213q63 78 157.5 110.5t194.5 32.5q96 0 191 -33q89 -31 154 -110q70 -86 104 -213q39 -143 39 -338q0 -199 -39 -328q-41 -137 -104.5 -215t-157.5 -117q-90 -37 -192.5 -36.5t-190.5 36.5q-96 39 -156 117q-68 86 -102 213 q-37 133 -37 330zM305 676q0 -160 21 -260q20 -102 61 -168t96 -92q61 -29 129 -29t129 29q55 27 96.5 92t61.5 168q20 100 21 260q0 162 -21 264q-23 115 -57 170q-39 63 -97 88q-59 27 -129 27q-78 0 -133 -27q-59 -29 -98 -90q-37 -59 -59 -168q-21 -100 -21 -264z" />
|
||||||
|
<glyph unicode="1" d="M147 973v147q82 0 146 17q82 20 133 47q61 31 110.5 73.5t73.5 92.5h166v-1205h354v-145h-972v145h438v1020q-18 -39 -67.5 -75.5t-110.5 -61.5q-66 -27 -133 -41q-66 -14 -138 -14z" />
|
||||||
|
<glyph unicode="2" d="M143 0v117q39 88 117 180q59 70 154 154q106 94 164 139q78 59 149 129q63 61 109 131q41 63 41 141q0 59 -19 103q-20 47 -55 73q-41 31 -84 41q-57 14 -108.5 14.5t-100.5 -16.5q-51 -16 -82 -45q-34 -31 -55 -74q-25 -49 -31 -104l-182 18q8 72 41 144q31 68 86 117 q59 53 137 79q82 29 186 29q106 0 189 -24q88 -27 143 -70t88 -117q33 -72 33 -158q0 -94 -43 -174q-45 -82 -111 -151q-78 -82 -149 -137l-162 -129q-77 -65 -141 -129q-66 -66 -97 -136h723v-145h-940z" />
|
||||||
|
<glyph unicode="3" d="M127 362l186 17q10 -57 31 -102.5t57 -77.5q35 -33 93 -52q55 -18 127 -18q137 0 213 64q78 66 77 184q0 66 -34 112q-31 43 -86 72q-45 25 -111 37q-51 10 -113 10h-100v158h96q51 0 107 12q57 12 100 39t76 72q29 41 28 108q0 109 -65 166q-70 59 -199 60 q-119 0 -192 -62q-72 -59 -84 -172l-182 15q12 96 51 161q41 68 102 115q63 47 139 68q84 23 168 22q115 0 205 -29q82 -27 137.5 -75.5t79.5 -112.5q27 -70 27 -137q0 -53 -19 -107q-18 -51 -55 -94q-41 -47 -92 -76q-57 -33 -129 -47v-4q84 -10 143 -39q61 -31 105 -74 q41 -41 63.5 -96t22.5 -108q0 -86 -33 -164q-31 -74 -92 -123q-63 -51 -149.5 -77.5t-204.5 -26.5q-133 0 -220 32q-89 34 -147 86q-59 53 -88 123q-31 75 -39 141z" />
|
||||||
|
<glyph unicode="4" d="M102 319v140l635 891h201v-889h186v-142h-186v-319h-180v319h-656zM256 461h502v692z" />
|
||||||
|
<glyph unicode="5" d="M127 315l182 21q14 -45 33 -78q20 -37 53 -65q29 -25 86 -48q49 -18 121 -18q66 0 127 23q58 22 98 61q43 43 63.5 98.5t20.5 130.5q0 61 -20 111q-23 57 -60 90q-41 39 -96 59q-57 23 -129 23q-49 0 -82 -8q-49 -12 -71 -23q-27 -12 -58 -33q-37 -25 -51 -38h-174 l45 729h803v-146h-635l-31 -426q45 35 121 64q68 27 170 26q106 0 191 -30q80 -29 143 -90q59 -55 90 -134q33 -82 33 -170q0 -94 -33 -186q-31 -88 -94 -147q-66 -63 -158 -97q-94 -35 -217 -34q-102 0 -192 26q-78 23 -140 72q-55 43 -90 106q-35 61 -49 131z" />
|
||||||
|
<glyph unicode="6" d="M152 641q0 174 34.5 313.5t98.5 229.5q63 92 159 139q94 47 211 47q76 0 136 -14q61 -14 114 -49q49 -33 90 -88q40 -55 62 -136l-172 -30q-27 90 -90.5 131t-141.5 41q-72 0 -135 -35q-53 -31 -100 -103q-45 -70 -66 -165q-23 -102 -22 -228q49 92 139 139.5t203 47.5 q94 0 174 -31q82 -31 135 -88q55 -59 86 -137q29 -74 29 -179q0 -106 -29 -186q-31 -88 -88 -147q-66 -68 -141 -99q-88 -35 -197 -34q-121 0 -215 47q-90 45 -154 133q-59 82 -90 207q-30 122 -30 274zM348 481q0 -76 21 -137q23 -66 57 -113q37 -49 90 -77.5t119 -28.5 q61 0 117 22q47 20 88 64q37 40 55 98.5t18 128.5q0 68 -18 123q-20 59 -53 96q-37 39 -90 62q-55 23 -123 22q-45 0 -99 -16q-51 -16 -90 -49q-47 -41 -67 -80q-25 -49 -25 -115z" />
|
||||||
|
<glyph unicode="7" d="M158 1204v146h911v-140q-106 -154 -182 -284q-82 -141 -149.5 -301t-102.5 -310q-39 -166 -39 -315h-188q0 156 41 315q41 164 106 312q68 152 156 299q98 164 184 278h-737z" />
|
||||||
|
<glyph unicode="8" d="M133 377q0 74 23 127q25 59 63 100q39 43 90 68q51 27 105 35v4q-61 16 -105 45q-47 33 -78 73q-37 51 -49 93q-16 53 -16 102q0 68 29 131q27 59 84 111q53 47 139 75.5t192 28.5q109 0 199 -29q84 -27 141 -77q55 -49 82 -110.5t27 -131.5q0 -49 -17 -102 q-14 -47 -47 -93q-27 -37 -77 -71q-45 -31 -109 -43v-4q59 -8 112.5 -37t90.5 -68q40 -43 61 -98q20 -53 21 -127q0 -82 -29 -158q-27 -70 -86 -127q-53 -51 -150 -84q-89 -31 -215 -30q-127 0 -215 30q-90 31 -149 84q-61 55 -88 127q-29 76 -29 156zM319 391 q0 -57 17 -110q15 -49 49 -86q35 -39 92 -60q55 -20 139 -20t138 20q57 23 90 58q33 37 49 90q14 49 14 112q0 49 -14 90q-16 47 -47 80q-33 35 -92 58q-55 20 -144 20q-82 0 -135 -20q-55 -23 -90 -60q-35 -39 -49 -80q-17 -49 -17 -92zM350 1012q0 -45 10 -78 q12 -41 41 -76q31 -37 80 -57q55 -23 131 -23q78 0 138 25q47 18 77 57q27 33 37 76q8 35 8 76t-14 88q-12 39 -45 71q-27 27 -80 48q-49 18 -123 18q-70 0 -118 -18q-55 -20 -82 -48q-29 -29 -45 -71q-15 -37 -15 -88z" />
|
||||||
|
<glyph unicode="9" d="M141 911q0 102 31 189q29 80 92 143q59 59 148 94q84 33 198 33q237 0 357 -166q121 -168 120 -502q0 -172 -34 -311q-31 -127 -103 -227q-63 -90 -159 -137q-98 -47 -213 -47q-78 0 -148 16q-55 14 -115 51q-47 31 -88 92q-35 53 -57 135l172 27q27 -88 88 -133 q57 -43 150 -43q72 0 135 35q57 33 102 98q39 57 66 166q27 106 26 225q-23 -49 -57.5 -84t-83.5 -61q-51 -27 -100 -39q-61 -14 -109 -14q-94 0 -174 34q-76 33 -131 95q-53 59 -84 145q-29 80 -29 186zM324 911q0 -65 18 -123q20 -61 51 -102q33 -41 88 -68 q51 -25 121 -24q55 0 103 16q49 16 92 52q37 29 67 83q27 47 27 117q0 76 -19 139q-18 66 -55 115q-33 45 -90 78q-52 31 -123 31q-61 0 -117 -23q-49 -20 -88 -65t-55 -99q-20 -66 -20 -127z" />
|
||||||
|
<glyph unicode=":" d="M496 0v299h235v-299h-235zM496 782v299h235v-299h-235z" />
|
||||||
|
<glyph unicode=";" d="M352 -362l168 661h266l-311 -661h-123zM496 782v299h235v-299h-235z" />
|
||||||
|
<glyph unicode=";" d="M352 -362l168 661h266l-311 -661h-123zM496 782v299h235v-299h-235z" />
|
||||||
|
<glyph unicode="<" d="M117 571v205l993 418v-154l-856 -366l856 -367v-153z" />
|
||||||
|
<glyph unicode="=" d="M117 344v148h993v-148h-993zM117 856v148h993v-148h-993z" />
|
||||||
|
<glyph unicode=">" d="M117 154v153l858 367l-858 366v154l993 -418v-205z" />
|
||||||
|
<glyph unicode="?" d="M94 961q12 89 49 165q35 74 101 129q63 53 149 84q90 31 201 31q108 0 197 -24q88 -25 151 -70q61 -43 96 -115q35 -70 35 -160q0 -68 -18 -120t-49 -93q-29 -37 -72 -73q-27 -23 -80 -64q-23 -16 -44.5 -32.5l-35.5 -26.5q-47 -35 -72 -64q-35 -39 -51 -75 q-20 -47 -20 -97h-174q4 70 20 119q16 47 51 92q29 37 70 72q27 23 80 63l78 58q33 25 67 63q31 35 49 76q18 43 19 94q0 57 -21 99q-23 43 -59 69q-43 29 -92 43q-59 16 -123 17q-61 0 -123 -21q-59 -20 -96 -53q-45 -43 -68 -86q-25 -49 -30 -113zM449 0v201h194v-201 h-194z" />
|
||||||
|
<glyph unicode="@" d="M43 514q0 209 43 387t123 307t196.5 203t266.5 74q129 0 229 -60q96 -57 162 -159q63 -100 94 -232q33 -141 33 -278q0 -150 -21 -264q-23 -125 -59 -205q-41 -88 -96.5 -135.5t-128.5 -47.5q-35 0 -58 9q-29 10 -45 26q-20 20 -30.5 47t-10.5 74v8v13q0 2 1 5t1 5v8h-6 q-8 -20 -39 -74q-20 -37 -51 -63q-31 -28 -67 -43q-35 -14 -78 -15q-66 0 -107 33t-69 86q-23 43 -37 123q-12 72 -13 143q0 76 13 150q14 84 33 143q23 70 55 127q35 61 72 101q39 43 90 67q49 25 104 25q37 0 74 -15q33 -12 53 -36q16 -18 35 -56q10 -23 22 -67h7l30 151 h117l-98 -508l-17 -82q-8 -53 -12 -77.5t-8 -65.5t-4 -51q0 -55 14 -71.5t35 -16.5q39 0 71.5 39t57.5 112q23 66 35 174q12 101 12 222q0 141 -25 239q-29 113 -77 197q-47 80 -125 131q-70 47 -170 47q-121 0 -213 -68q-96 -70 -157.5 -182t-96.5 -270q-33 -152 -33 -334 q0 -160 29 -276q31 -126 86 -215q55 -88 137 -140q80 -49 182 -49q49 0 111 14q53 12 94 33q53 27 86 49q35 25 78 64l71 -88q-49 -43 -92 -72q-39 -27 -104 -59q-55 -29 -119 -43q-59 -14 -135 -15q-127 0 -229 56q-98 53 -172 161q-72 106 -111 250t-39 330zM412 492 q0 -61 6 -112.5t18.5 -88.5t34.5 -60q20 -20 55 -20q39 0 74 27q37 29 66 77q31 55 51 121q27 86 37 160q2 10 6 43q0 8 3 25.5t5 27.5q0 8 1 26.5t3 26.5q2 16 2 39q0 102 -35 160q-35 55 -94 55q-35 0 -67 -22q-37 -27 -60 -59q-18 -29 -45 -89q-18 -43 -33 -106 q-16 -72 -20 -115q-8 -77 -8 -116z" />
|
||||||
|
<glyph unicode="A" d="M0 0l510 1350h217l502 -1350h-195l-137 383h-563l-137 -383h-197zM385 530h463l-148 424q-8 25 -26 76q-8 20 -13.5 40t-11.5 36q-12 35 -20 61l-13 37q-2 -8 -12 -39l-20 -61l-12.5 -37.5t-10.5 -36.5q-6 -20 -13 -39.5l-13 -36.5z" />
|
||||||
|
<glyph unicode="B" d="M162 0v1350h411q106 0 209 -21q92 -18 155.5 -57t98.5 -103q33 -59 33 -147q0 -53 -16 -107q-16 -51 -49 -90q-35 -41 -84 -71q-41 -27 -117 -43q84 -8 149 -37q68 -29 111 -72t65.5 -100.5t22.5 -120.5q0 -109 -41 -176q-43 -72 -113 -117q-71 -46 -166 -68 q-90 -20 -196 -20h-473zM352 154h266q84 0 136 10q61 12 108 40.5t71.5 74t24.5 118.5q0 63 -24.5 106.5t-71.5 71.5q-53 31 -112 43q-66 12 -146 13h-252v-477zM352 780h226q84 0 139 15q49 12 92 45q39 29 53 67q16 43 17 90q0 109 -76 154t-228 45h-223v-416z" />
|
||||||
|
<glyph unicode="C" d="M113 682q0 156 32 293q31 127 99 217q66 88 166 133q98 45 239 45q102 0 176 -26.5t133 -75.5q49 -41 93 -107q37 -55 63 -127l-168 -63q-14 45 -40.5 90t-61.5 78q-37 34 -86 55q-47 20 -109 20q-86 0 -151.5 -34.5t-104.5 -100.5q-41 -70 -59 -168q-20 -109 -21 -229 q0 -137 21 -233q23 -109 61 -173q41 -68 109 -106q61 -35 158 -35q63 0 112 25q57 29 90 61q47 47 70 90q29 55 49 107l160 -66q-23 -57 -70 -137q-39 -66 -98.5 -119t-136.5 -84q-82 -33 -179 -32q-137 0 -243 51q-102 49 -170 141q-66 90 -101 221q-32 125 -32 289z" />
|
||||||
|
<glyph unicode="D" d="M162 0v1350h311q160 0 279 -39q123 -41 204 -119q84 -80 127 -207q41 -121 41 -297q0 -172 -39 -297q-40 -129 -116 -215q-80 -90 -187 -131q-117 -45 -250 -45h-370zM352 156h162q211 0 315 133q104 132 105 399q0 133 -29 232q-27 94 -86 155q-61 63 -141 90 q-90 29 -205 29h-121v-1038z" />
|
||||||
|
<glyph unicode="E" d="M162 0v1350h919v-156h-729v-424h670v-154h-670v-460h770v-156h-960z" />
|
||||||
|
<glyph unicode="F" d="M195 0v1350h890v-156h-700v-496h676v-157h-676v-541h-190z" />
|
||||||
|
<glyph unicode="G" d="M113 682q0 166 30 295q31 127 96.5 215t166.5 133q98 45 235 45q92 0 176 -27q70 -23 131 -69q59 -45 94 -105q35 -57 62 -131l-172 -55q-37 109 -107 170q-72 61 -182 61q-86 0 -151 -34q-61 -33 -103 -103q-39 -66 -57 -166q-18 -98 -19 -229q0 -268 86 -407.5 t256 -139.5q51 0 90 8q43 8 74 21q31 10 58 24q35 16 38 21v336h-292v160h479v-572q-12 -8 -84 -51q-43 -27 -107 -49q-59 -23 -125 -37q-72 -16 -147 -16q-133 0 -233 53q-98 53 -164 145q-66 94 -97 221q-32 138 -32 283z" />
|
||||||
|
<glyph unicode="H" d="M162 0v1350h190v-568h522v568h193v-1350h-193v623h-522v-623h-190z" />
|
||||||
|
<glyph unicode="I" d="M203 0v156h315v1038h-315v156h821v-156h-315v-1038h315v-156h-821z" />
|
||||||
|
<glyph unicode="J" d="M176 350l186 31q9 -65 31 -111q18 -39 51 -75q25 -29 66 -45q35 -14 78 -15q102 0 155.5 72t53.5 209v778h-312v156h500v-930q0 -100 -24 -182q-23 -74 -76 -138q-49 -59 -125 -90q-74 -31 -174 -30q-170 0 -273 90q-104 90 -137 280z" />
|
||||||
|
<glyph unicode="K" d="M162 0v1350h190v-674l574 674h225l-506 -574l582 -776h-223l-488 639l-164 -170v-469h-190z" />
|
||||||
|
<glyph unicode="L" d="M238 0v1350h190v-1194h672v-156h-862z" />
|
||||||
|
<glyph unicode="M" d="M129 0v1350h238l184 -490q6 -12 20 -61q16 -49 23 -76q8 -29 24 -94l27 90q10 37 23 76q14 49 20 63l186 492h226v-1350h-162v868v105q0 68 2 96q2 35 2 100l-33 -108l-30 -94q-18 -57 -31 -88l-164 -439h-137l-166 439q-8 20 -12 34q-10 33 -15 45l-16 48l-16 49 l-37 114q0 -23 1 -48t1 -52q0 -14 1 -47t1 -51v-103v-868h-160z" />
|
||||||
|
<glyph unicode="N" d="M162 0v1350h223l526 -1139q-4 29 -8 86q-4 45 -6 88q-2 33 -2 100v865h172v-1350h-231l-521 1130l9 -88q2 -25 6 -81q2 -29 2 -84v-877h-170z" />
|
||||||
|
<glyph unicode="O" d="M102 682q0 176 33 301t101 215q65 86 159 129q96 43 219 43q246 0 379 -174t133 -514q0 -170 -34 -305q-31 -121 -103 -219q-66 -90 -160 -133q-100 -45 -217 -45q-125 0 -223 47q-92 45 -160 137q-66 90 -96.5 219t-30.5 299zM303 682q0 -272 80 -409.5t231 -137.5 q166 0 238 139q74 141 74 408q0 268 -80 401q-80 131 -232 131q-158 0 -233 -131q-78 -133 -78 -401z" />
|
||||||
|
<glyph unicode="P" d="M162 0v1350h461q121 0 217 -29q88 -27 155 -84q61 -51 92 -127q31 -74 31 -166q0 -88 -28 -160q-33 -82 -91 -139q-55 -55 -151 -94q-92 -37 -213 -37h-283v-514h-190zM352 666h254q84 0 144 20q57 20 100 59q39 37 57 89q20 57 21 108q0 125 -82 188q-84 66 -248 66 h-246v-530z" />
|
||||||
|
<glyph unicode="Q" d="M102 682q0 176 33 301t101 215q65 86 159 129q96 43 219 43q246 0 379 -174t133 -514q0 -139 -26 -266q-25 -117 -74 -203q-49 -88 -119 -141q-68 -53 -162 -76q39 -123 109 -182q66 -57 168 -58q18 0 59 4t56 9v-134q-45 -10 -84 -16q-45 -6 -95 -6q-86 0 -149 25 q-57 23 -113 73q-49 45 -84 117q-33 63 -61 156q-117 12 -197 63q-86 55 -139 139q-59 96 -86 215q-27 121 -27 281zM303 682q0 -272 80 -409.5t231 -137.5q166 0 238 139q74 141 74 408q0 268 -80 401q-80 131 -232 131q-158 0 -233 -131q-78 -133 -78 -401z" />
|
||||||
|
<glyph unicode="R" d="M162 0v1350h481q115 0 211 -27q92 -25 150 -74q57 -47 88 -116q29 -63 28 -156q0 -63 -18 -125q-18 -59 -62 -113q-45 -55 -106.5 -90t-157.5 -51l402 -598h-222l-364 575h-240v-575h-190zM352 725h281q86 0 139 20q63 25 92 54q34 34 49 80q16 49 17 94q0 223 -305 223 h-273v-471z" />
|
||||||
|
<glyph unicode="S" d="M80 338l184 37q14 -59 35 -101q23 -43 68 -77q39 -31 102 -50q61 -18 145 -18q66 0 134 14q55 12 100 41q43 28 67 74q23 43 23 109q0 76 -31 114q-35 45 -86 72q-49 27 -119 45l-135 35l-35 9t-28.5 8t-36.5 12q-61 18 -98 32q-47 18 -88 47q-45 31 -72 64 q-25 31 -47 88q-16 43 -17 117q0 100 35 164q39 72 101 112q63 43 147 64q82 20 186 20q119 0 199 -20q82 -20 137.5 -61.5t89.5 -102.5q35 -63 56 -139l-189 -33q-12 51 -33 90q-23 41 -57 67q-33 25 -86 41q-45 14 -117 15q-76 0 -135 -17q-47 -12 -86 -45 q-31 -25 -47 -67q-14 -37 -14 -84q0 -63 26 -99q29 -39 72 -61q53 -29 105 -41l131 -35l110 -28q51 -14 106.5 -37t96.5 -49.5t78 -69.5q35 -41 53 -96.5t18 -126.5q0 -88 -30 -158q-31 -72 -94 -123q-70 -55 -162 -82q-102 -29 -232 -28q-236 0 -364.5 92t-165.5 266z" />
|
||||||
|
<glyph unicode="T" d="M76 1194v156h1075v-156h-442v-1194h-191v1194h-442z" />
|
||||||
|
<glyph unicode="U" d="M141 471v879h193v-852q0 -98 12 -166q12 -70 43 -113t82 -63q49 -20 133 -21q86 0 139 21q55 20 88 63q33 41 50 117q14 66 14 176v838h190v-861q0 -131 -28 -233q-25 -90 -90 -158q-59 -61 -150 -90q-92 -29 -213 -28.5t-203 26.5q-84 27 -143 86q-61 61 -88 152 q-29 96 -29 227z" />
|
||||||
|
<glyph unicode="V" d="M10 1350h201l319 -904q4 -10 10.5 -28.5l11.5 -33.5t9 -30l27 -92q14 -47 26 -94q12 45 27 92l27 90l30 96l320 904h201l-506 -1350h-199z" />
|
||||||
|
<glyph unicode="W" d="M0 1350h188l111 -836q4 -25 8 -73t4 -54q2 -14 5 -53t6 -58q8 -84 10 -108q8 33 15 66.5l15 68.5q2 12 6.5 27.5t8.5 31.5q6 31 14 62l15 57q4 14 8 29.5t6 21.5l108 400h174l109 -400q2 -6 6 -20t8 -31q6 -29 15 -57q2 -10 7 -29.5t7 -29.5l8 -32t6 -28l15.5 -69.5 t15.5 -67.5q2 12 4 35l8 84q2 27 6.5 56.5t6.5 55.5q4 41 12 115l102 836h191l-211 -1350h-207l-104 387q-2 8 -5.5 19.5l-7.5 25.5q-6 27 -14 55l-16 62q-8 31 -15 61l-33 146l-34 -148q-6 -31 -15 -61l-16 -60q-4 -14 -14 -55q-2 -12 -6.5 -23.5t-6.5 -21.5l-104 -387 h-209z" />
|
||||||
|
<glyph unicode="X" d="M37 0l475 705l-434 645h205l331 -514l332 514h205l-434 -645l477 -705h-207l-373 573l-372 -573h-205z" />
|
||||||
|
<glyph unicode="Y" d="M37 1350h205l372 -613l373 613h205l-483 -766v-584h-189v584z" />
|
||||||
|
<glyph unicode="Z" d="M74 0v143l817 1051h-746v156h963v-140l-817 -1054h864v-156h-1081z" />
|
||||||
|
<glyph unicode="[" d="M410 -426v1911h546v-139h-366v-1633h366v-139h-546z" />
|
||||||
|
<glyph unicode="\" d="M115 1485h178l821 -1505h-182z" />
|
||||||
|
<glyph unicode="]" d="M270 -287h367v1633h-367v139h547v-1911h-547v139z" />
|
||||||
|
<glyph unicode="^" d="M133 442l379 908h203l379 -908h-154l-330 803l-325 -803h-152z" />
|
||||||
|
<glyph unicode="_" d="M-4 -125h1237v-94h-1237v94z" />
|
||||||
|
<glyph unicode="`" d="M401 1432v28h197l227 -239v-21h-123z" />
|
||||||
|
<glyph unicode="a" d="M127 301q0 106 41 176q43 72 102 109q61 37 146 53q88 16 166 16l235 4v60q0 68 -12 115t-41 75q-33 33 -70 43q-43 12 -98 13q-51 0 -90 -7q-35 -6 -70 -28q-29 -18 -47 -53t-24 -84l-189 18q9 65 37 117q27 51 78 92q49 41 125 61q74 20 182 21q197 0 301 -94 q100 -92 100 -271v-465q0 -80 22.5 -120.5t80.5 -40.5q18 0 28 2q4 2 14.5 4t14.5 2v-113q-34 -9 -67 -12q-45 -4 -70 -4q-45 0 -88 14q-37 12 -60 41q-23 31 -34 68q-14 45 -17 94h-6q-27 -49 -61 -94q-29 -37 -78 -72q-41 -29 -100 -45q-61 -16 -132 -16q-158 0 -237 86 q-82 88 -82 235zM317 299q0 -80 45.5 -131t129.5 -51q80 0 145 33q63 31 100 77q41 49 62 107q18 49 18 110v91l-188 -5q-37 0 -111 -8q-53 -6 -100 -33q-49 -29 -74 -69q-27 -45 -27 -121z" />
|
||||||
|
<glyph unicode="b" d="M178 0q0 2 1 12.5t1 18.5q0 6 1 23.5t1 27.5t1 31.5t1 33.5v76v1262h181v-424v-57q0 -10 -1.5 -28t-1.5 -24q0 -8 -1 -25.5t-1 -23.5h5q51 111 133 154q88 47 200 47q195 0 293 -139q98 -138 99 -418q0 -287 -101 -426q-100 -141 -291 -141q-115 0 -200 43 q-84 41 -133 141h-3q0 -8 -1 -25.5t-1 -28t-1 -27.5t-1 -24q0 -8 -1 -21t-1 -18q0 -6 -3 -16l-1 -4h-174zM365 524q0 -123 20 -198q23 -84 57 -127q39 -47 88 -66q57 -20 117 -20q61 0 113 22q47 20 80 76q33 57 47 131q16 88 16 199q0 119 -14 192q-14 76 -47 131 q-29 49 -78 76q-47 25 -115 25q-63 0 -119 -23q-51 -20 -88 -74q-37 -51 -57 -135q-20 -82 -20 -209z" />
|
||||||
|
<glyph unicode="c" d="M129 543q0 163 43 270q43 106 115 172q68 61 159 90q86 27 187 27q96 0 174 -25q74 -25 133 -69q55 -43 90 -103q35 -61 47 -127l-190 -12q-14 90 -80 143q-63 51 -182 52q-90 0 -146 -27q-57 -27 -94 -80q-35 -49 -51 -131q-14 -72 -15 -176q0 -106 15 -180 q16 -82 51 -136q39 -57 94 -84q61 -29 144 -28q109 0 180 53q70 51 88 162l188 -12q-9 -68 -43 -129q-37 -66 -90 -109q-66 -51 -135 -76q-82 -29 -180 -28q-135 0 -232 43q-100 45 -155 118q-58 77 -86 178q-29 105 -29 224z" />
|
||||||
|
<glyph unicode="d" d="M137 532q0 565 393 566q120 0 203 -43q78 -41 129 -142h2v27v45v49q0 8 -1 18.5t-1 12.5v420h180v-1262q0 -14 1 -38.5t1 -37.5v-65q0 -10 1.5 -27.5t1.5 -23.5q0 -8 1 -18.5t1 -12.5h-172q0 10 -3 23q-4 25 -4 43q0 8 -1 25.5t-1 27.5t-1 28.5t-1 26.5h-4 q-51 -106 -131 -154q-82 -47 -201 -47q-201 0 -297 139t-96 420zM324 539q0 -119 14 -193q16 -84 45 -133q31 -51 80 -75.5t115 -24.5q70 0 122 24q51 25 88 76t56 137q18 84 18 205q0 113 -18.5 192.5t-53 127t-90.5 69.5q-49 20 -120 21q-61 0 -113 -23q-49 -22 -80 -74 q-33 -55 -47 -133q-16 -87 -16 -196z" />
|
||||||
|
<glyph unicode="e" d="M133 549q0 158 39 262q39 106 107 170q66 63 155.5 92t181.5 29q137 0 222 -41q90 -43 147 -119q61 -80 84 -180q25 -106 25 -236v-22h-772q0 -80 20 -158q18 -71 55 -123q35 -51 95 -80q57 -29 131 -28q57 0 102 12t84 35q35 20 61.5 53t36.5 66l158 -45 q-12 -39 -47 -91q-27 -41 -86 -82q-47 -33 -129 -59q-78 -25 -180 -24q-113 0 -205 36.5t-156 106.5q-61 68 -96 178q-33 105 -33 248zM324 641h583q-10 96 -32.5 157.5t-65.5 100.5t-86 53q-53 16 -104.5 16.5t-96.5 -14.5q-53 -16 -94 -51t-72 -100q-28 -62 -32 -162z" />
|
||||||
|
<glyph unicode="f" d="M137 940v141h262v27q0 98 23 172q20 68 74 117q47 43 129 65q84 23 192 23q8 0 31.5 -1t38.5 -1q27 0 80 -4l38.5 -5.5t36.5 -3.5l58 -8v-143q-6 2 -26.5 3t-29.5 1l-75 6q-53 4 -74 4q-14 0 -32.5 1t-22.5 1q-59 0 -115 -10q-51 -10 -82 -37q-33 -29 -47 -74 q-16 -49 -16 -122v-11h491v-141h-491v-940h-181v940h-262z" />
|
||||||
|
<glyph unicode="g" d="M143 549q0 137 20.5 233.5t69.5 171.5q47 72 123 109q78 37 187 37q113 0 196.5 -53.5t128.5 -149.5h2q0 8 1 26.5t1 29t1 31t1 28.5q0 18 5 47q0 6 1 11t2 8l1 3h172q0 -2 -1 -12t-1 -18q0 -6 -1 -23.5t-1 -28t-1 -32t-1 -33.5v-76v-825q0 -229 -107 -342 q-109 -115 -328 -115q-90 0 -157 18q-72 18 -119 56q-51 39 -80 84q-31 49 -43 108l184 27q18 -78 74 -117q57 -41 148 -41q55 0 102 19q45 18 78 53t51 98q16 55 16 146v194h-2q-23 -47 -47 -78q-39 -47 -71 -67q-49 -31 -97 -47q-49 -16 -127 -17q-106 0 -174 33 q-74 35 -119 100q-47 68 -67 168q-21 97 -21 236zM330 551q0 -123 14 -195q16 -78 47 -125q33 -51 80 -67q49 -18 115 -19q53 0 102 21q53 23 92 70q37 47 64 126q25 76 24 189q0 119 -22 192q-25 82 -64 129.5t-90 70t-104 22.5q-66 0 -117 -23q-49 -20 -80 -72 q-33 -53 -47 -126.5t-14 -192.5z" />
|
||||||
|
<glyph unicode="h" d="M184 0v1485h183v-391q0 -35 -5 -101q-2 -27 -4 -51t-2 -45h4q27 49 55.5 84t73.5 66q35 25 93 40q49 14 116 15q82 0 150 -23q61 -20 108 -67q45 -45 70 -117q23 -66 23 -174v-721h-181v694q0 78 -16 133q-14 49 -47 82q-29 29 -70 41q-39 12 -88 13q-55 0 -110 -23 q-45 -18 -88 -66q-40 -43 -62 -104q-23 -63 -22 -143v-627h-181z" />
|
||||||
|
<glyph unicode="i" d="M143 0v141h422v799h-319v141h499v-940h379v-141h-981zM545 1292v193h200v-193h-200z" />
|
||||||
|
<glyph unicode="j" d="M117 -242q18 -6 53 -12q12 -2 33.5 -5t32.5 -5q27 -4 75 -8q53 -4 78 -4q59 0 105 14q51 16 86 45q31 27 55 78q20 43 20 114v965h-405v141h586v-1110q0 -113 -35 -184q-37 -78 -94.5 -123t-137.5 -67.5t-163 -22.5q-29 0 -82 4q-35 2 -80 10q-25 4 -70 13q-27 4 -57 16 v141zM637 1292v193h199v-193h-199z" />
|
||||||
|
<glyph unicode="k" d="M236 0v1485h180v-928l475 524h211l-438 -465l460 -616h-211l-364 500l-133 -99v-401h-180z" />
|
||||||
|
<glyph unicode="l" d="M133 0v141h422v1200h-289v144h469v-1344h381v-141h-983z" />
|
||||||
|
<glyph unicode="m" d="M98 1081h150l1 -8q1 -8 1 -16q0 -6 1 -21.5t1 -26t1 -28.5t1 -27v-47h2q10 33 31 74q16 35 43 63q23 25 61 43q31 14 80 15q92 0 133 -47q43 -49 62 -150h2q23 55 39 84q18 33 51 61.5t63 39.5q37 12 82 12q59 0 105 -23q43 -22 67.5 -67.5t36.5 -116.5q12 -72 12 -174 v-721h-168v686q0 80 -6 131q-6 43 -20 86q-12 35 -35 47.5t-53 12.5q-63 0 -105 -84q-39 -80 -39 -252v-627h-168v686q0 80 -6 131q-6 52 -18 86q-12 35 -35 47q-20 12 -53 13q-35 0 -60 -25q-27 -27 -45 -72q-20 -49 -28 -112q-10 -72 -11 -148v-606h-170v852v70 q0 12 -1 36.5t-1 34.5q0 12 -1 30.5t-1 27.5q0 10 -1 20z" />
|
||||||
|
<glyph unicode="n" d="M178 1081h170l1 -9q1 -9 1 -17q0 -6 2 -23.5t2 -27.5q0 -8 1 -28t1 -30v-49h4q31 57 56 84q37 41 76 66q37 23 96 40q49 14 119 15q80 0 147 -23q63 -20 107 -67q45 -47 65 -117q23 -74 23 -174v-721h-181v694q0 78 -16 133q-14 49 -47 82q-29 29 -70 41q-39 12 -88 13 q-55 0 -110 -23q-45 -18 -88 -66q-40 -43 -62 -104q-23 -63 -22 -143v-627h-181v852v70q0 12 -1 36.5t-1 34.5q0 12 -1 30.5t-1 27.5q0 10 -1 20z" />
|
||||||
|
<glyph unicode="o" d="M129 543q0 274 127 418q125 141 358 141q244 0 365 -139q119 -137 119 -420q0 -139 -35 -248t-96 -176q-65 -71 -154 -105q-92 -35 -205 -34q-104 0 -196 34q-90 35 -152 105q-63 74 -96 174q-35 109 -35 250zM319 543q0 -133 23 -209q25 -84 63.5 -131t92.5 -70 q49 -20 108.5 -20t120.5 20q57 18 96 67.5t62 133.5q23 86 22 209q0 127 -20 207q-23 86 -60 131q-43 51 -92 69q-52 18 -117 19q-68 0 -120 -21q-55 -20 -95 -69q-41 -49 -61 -131q-23 -86 -23 -205z" />
|
||||||
|
<glyph unicode="p" d="M178 1081h176l1 -3q1 -3 1 -7v-10t2 -21.5t2 -23.5t1 -26.5t1 -29t1.5 -30t1.5 -27.5h4q27 55 55 90q33 39 72 64q33 20 90 35q49 12 112 12q113 0 185 -39q74 -41 121 -115q43 -70 65 -176q20 -100 20.5 -227t-20.5 -228q-23 -113 -65 -180q-45 -74 -121 -116 q-74 -43 -185 -43q-49 0 -104 10q-45 8 -94 33q-37 18 -76 57q-37 37 -57 84h-5v-17q0 -4 1.5 -17t1.5 -21v-54q0 -10 1 -28.5t1 -28.5v-424h-183v1284v78q0 12 -1 33.5t-1 32t-1 28t-1 23.5q0 8 -1 17t-1 11zM367 524q0 -115 18 -194.5t53 -126.5t90 -70q49 -20 121 -20 q70 0 121 28q49 27 80 84q29 51 41 135q12 80 12 187q0 115 -10 178q-12 80 -43 131q-33 57 -78 82q-47 27 -121 27q-58 0 -110.5 -18.5t-91.5 -67.5q-37 -47 -60 -134q-22 -90 -22 -221z" />
|
||||||
|
<glyph unicode="q" d="M137 532q0 283 98.5 424.5t292.5 141.5q74 0 117 -11q49 -12 92 -34q35 -18 70 -58q23 -25 53 -82h2q0 8 1 25.5t1 28t2 28t2 25.5q0 18 4 43q2 12 2 20h177q0 -2 -1 -11t-1 -17q0 -6 -1 -24.5t-1 -31.5q0 -10 -1.5 -36.5t-1.5 -44.5v-117v-1227h-182v440q0 8 1 26.5 t1 29.5v55q0 16 1 29.5t1 27.5h-2q-23 -47 -55 -90q-27 -35 -72 -65q-37 -25 -92 -39q-57 -14 -115 -15q-203 0 -297 142q-96 143 -96 417zM324 539q0 -113 14 -187q16 -84 45 -133q31 -53 78 -79.5t117 -26.5q53 0 110 20q49 18 90 68q40 49 62 135q23 90 22.5 219 t-18.5 197q-23 84 -57.5 127t-90.5 65q-49 20 -116.5 20.5t-116.5 -24.5t-80 -78q-29 -49 -45 -133q-14 -73 -14 -190z" />
|
||||||
|
<glyph unicode="r" d="M242 1081h172q0 -4 6 -23.5t8 -31.5q2 -8 7 -29.5t7 -33.5l13 -68q2 -12 4 -35.5t2 -28.5h6q33 74 57 113q33 51 74 84q51 39 100 55q58 18 142 19q72 0 108 -4q47 -4 96 -13v-167q-33 6 -98 14q-53 6 -112 6q-82 0 -152 -35q-66 -33 -113 -92t-71 -137q-25 -77 -25 -166 v-508h-178v700q0 57 -6 115q-6 68 -15 109q-10 61 -18 94q-2 10 -7 32.5t-7 30.5z" />
|
||||||
|
<glyph unicode="s" d="M168 248l158 31q12 -53 38.5 -86t63.5 -52q31 -16 86 -22q33 -4 107 -4q66 0 108 8q51 10 84 29q37 23 57 53q20 33 21 80q0 49 -24.5 79.5t-69.5 53.5q-35 16 -105 35q-35 8 -69.5 17l-63.5 17q-115 33 -127 37q-74 25 -113 51q-47 33 -79 84q-29 45 -29 127 q0 150 104 230q109 84 308 84q84 0 147 -15q68 -16 125 -47q51 -29 90 -80q33 -43 49 -118l-162 -21q-6 45 -28 74q-20 27 -57 43t-76 22q-43 6 -88 7q-244 0 -244 -152q0 -47 20 -74q23 -29 62 -47q51 -25 92 -33l119 -30q68 -16 133 -37q72 -23 125 -55q57 -35 94 -90.5 t37 -137.5q0 -76 -31 -137t-86 -104q-57 -45 -137 -66q-86 -23 -186 -22q-80 0 -170 14q-66 10 -132 45q-55 29 -96 82q-37 47 -55 127z" />
|
||||||
|
<glyph unicode="t" d="M190 940v141h170l58 283h121v-283h432v-141h-432v-651q0 -84 41 -119q43 -37 141 -37q25 0 82 4q53 4 82 8q10 2 35.5 5.5t37.5 5.5q37 6 60 12v-137q-6 -2 -25.5 -6.5t-31.5 -8.5q-39 -10 -80 -16q-16 -2 -48 -5t-47 -5q-53 -6 -104 -6q-162 0 -244 69q-80 68 -80 215 v672h-168z" />
|
||||||
|
<glyph unicode="u" d="M184 360v721h181v-686q0 -80 12 -131q14 -57 37 -86q27 -33 69 -45q49 -14 107 -14q59 0 115 22q49 20 88 66q37 43 55 104q20 68 20 144v626h181v-850v-71q0 -12 1 -37t1 -35q0 -12 1 -30.5t1 -26.5q0 -10 1 -21l1 -10h-170l-1 9q-1 9 -1 18q0 6 -1 23.5t-1 27.5 q0 8 -1 27.5t-1 29.5t-1 26.5t-1 22.5h-3q-23 -43 -57 -84q-31 -37 -72 -65q-33 -23 -94 -41q-49 -14 -123 -14q-88 0 -155 22q-63 20 -106.5 67.5t-61.5 118.5q-21 82 -21 172z" />
|
||||||
|
<glyph unicode="v" d="M70 1081h200l269 -702l5 -15.5t6 -20.5t5 -19q4 -16 10 -33t10 -33l18.5 -65.5l14.5 -51.5q2 6 5 19.5t10 32.5l20 65l21 64l18 55l276 704h201l-444 -1081h-213z" />
|
||||||
|
<glyph unicode="w" d="M20 1081h179l94 -606q2 -25 8 -67q2 -16 5 -46t5 -45l11 -94q4 -61 4 -73l20 86q4 14 6 24t6 21.5t8.5 26l10.5 33.5t6 21l135 424h193l131 -424q4 -14 14 -55q8 -27 18 -71q14 -49 23 -86q0 43 2 73q2 35 10 94l13 91l5 36.5t5 30.5l100 606h176l-190 -1081h-205 l-141 471l-19 61q-14 47 -18 66q-6 18 -21 76q-12 -49 -20 -74q-14 -53 -18.5 -67.5l-11.5 -38t-9 -27.5l-147 -467h-203z" />
|
||||||
|
<glyph unicode="x" d="M94 0l416 555l-397 526h198l299 -419l299 419h201l-397 -524l420 -557h-201l-322 444l-321 -444h-195z" />
|
||||||
|
<glyph unicode="y" d="M66 1081h192l264 -641q18 -51 27 -67l31 -78l26 -70l15 -39q4 14 14 41l27 68q25 63 30 78l14.5 36.5l12.5 30.5l252 641h190l-456 -1081q-37 -98 -76 -176t-90 -135q-47 -53 -108.5 -84t-137.5 -31q-45 0 -64 2q-23 2 -61 10v135q25 -4 43 -4q8 0 21.5 -1t19.5 -1 q78 0 149 60q68 55 117 186l19 49z" />
|
||||||
|
<glyph unicode="z" d="M147 0v137l680 805h-641v139h844v-137l-682 -805h719v-139h-920z" />
|
||||||
|
<glyph unicode="{" d="M227 461v137q55 4 101 14q45 12 88 41q37 27 63 72q23 39 23 104v353q0 68 22 125q23 59 60 96t94 59.5t119 22.5h264v-139h-213q-41 0 -78 -11q-25 -6 -53 -35q-20 -20 -31 -59q-8 -33 -8 -90v-346q0 -61 -21 -105q-22 -46 -55 -79q-41 -41 -74 -58q-43 -23 -82 -31v-2 q33 -6 84 -32q33 -16 74 -58q31 -31 53 -80q20 -43 21 -104v-346q0 -111 39 -152q41 -45 131 -45h213v-139h-264q-61 0 -119 23q-53 20 -94 61q-37 37 -60 96q-23 57 -22 123v352q0 68 -23 107q-25 43 -63 70q-43 29 -88 40q-46 11 -101 15z" />
|
||||||
|
<glyph unicode="|" d="M530 -426v1911h166v-1911h-166z" />
|
||||||
|
<glyph unicode="}" d="M168 -287h213q90 0 131 45t41 152v346q0 66 18 104q23 49 54 80q39 39 73 58q45 25 84 32v2q-43 10 -82 31q-35 18 -73 58q-31 31 -54 79q-20 43 -20 105v346q0 49 -10 90q-10 39 -31 59q-27 27 -55 35q-37 10 -76 11h-213v139h264q61 0 119 -23q53 -20 92 -59t62 -96 q20 -53 20 -125v-353q0 -61 25 -104q27 -49 61 -72q41 -29 90 -41q45 -10 100 -14v-137q-55 -4 -100 -15q-49 -12 -90 -40q-35 -25 -61 -70q-25 -43 -25 -107v-352q0 -70 -20 -123q-23 -57 -62 -96q-41 -41 -92 -61q-57 -23 -119 -23h-264v139z" />
|
||||||
|
<glyph unicode="~" d="M109 580v143q55 41 114 61q68 23 148 23q40 0 80 -6q27 -4 79 -17q27 -6 76 -22q18 -6 37 -13.5t37 -13.5l45 -14q29 -10 51 -16q31 -8 51 -11q33 -4 50 -4q68 0 129 25q63 25 114 67v-149q-31 -22 -61 -37q-35 -16 -60 -25q-41 -12 -65 -14q-45 -4 -74 -4q-63 0 -141 22 q-33 10 -146 48q-127 45 -217 45q-37 0 -71 -6q-37 -6 -62 -17q-20 -8 -57 -29q-34 -18 -57 -36z" />
|
||||||
|
<glyph unicode=" " />
|
||||||
|
<glyph unicode="¢" d="M133 655q0 117 29 215q27 90 86 164q55 68 137 111q76 39 184 49v184h129v-184q86 -6 152 -33q61 -25 115 -71q49 -43 79.5 -98.5t42.5 -119.5l-184 -14q-18 90 -81.5 145.5t-188.5 55.5q-156 0 -236 -101q-82 -104 -82 -290q0 -197 84 -299q82 -100 236 -101 q59 0 102 15q49 16 82 40.5t60 67.5q23 39 32 94l183 -12q-8 -59 -37 -119q-25 -53 -80 -104q-51 -49 -118.5 -78t-160.5 -39v-194h-129v194q-109 8 -190 51q-84 43 -137 109q-53 63 -82 162q-27 87 -27 200z" />
|
||||||
|
<glyph unicode="£" d="M55 0v154q37 18 80 47q39 25 62 57q23 31 39 86t16 127v141h-186v142h186v221q0 90 24 164q23 70 78 125q53 53 131 79.5t189 26.5q78 0 137 -14q63 -14 113 -43q45 -25 86 -74q39 -45 55 -98q-2 -2 -6 -4t-21 -7q-4 -2 -11 -5t-15 -5t-16.5 -5t-16.5 -5l-37.5 -11 t-50.5 -16q-20 61 -81.5 94t-135.5 33q-123 0 -182 -57q-61 -59 -62 -182v-217h410v-142h-410v-139q0 -57 -6 -106q-6 -41 -27 -88q-18 -39 -47 -68q-33 -33 -74 -53h601q59 0 86 26q29 29 41 80l167 -24q-9 -43 -24 -86q-14 -41 -43 -76q-31 -37 -68 -58q-39 -20 -98 -20 h-883z" />
|
||||||
|
<glyph unicode="¥" d="M51 1350h201l360 -619l365 619h199l-412 -670h321v-143h-383v-138h383v-143h-383v-256h-178v256h-381v143h381l2 138h-383v143h320z" />
|
||||||
|
<glyph unicode="©" d="M31 762q0 186 47 323q47 135 125 224q84 92 184 133q108 43 227 43q120 0 228 -43q100 -41 184 -133q78 -88 125 -224q45 -133 45 -323.5t-45 -323.5q-47 -139 -125 -225q-84 -92 -184 -133q-102 -41 -227.5 -41t-227.5 41q-100 41 -184 133q-78 86 -125 225 q-47 138 -47 324zM127 762q0 -178 37 -289q39 -117 104 -194q63 -76 156 -111q96 -37 190.5 -37t190.5 37q88 33 156 111q68 76 106 194q39 117 39 289q0 168 -39 285q-39 119 -106.5 194.5t-155.5 112.5q-84 35 -190.5 35t-190.5 -35q-94 -39 -156 -113q-66 -78 -104 -194 q-37 -111 -37 -285zM268 764q0 94 23 174q23 84 63 135q39 51 109 84q66 31 151 31q68 0 117 -19q53 -20 86 -46.5t60 -67.5q29 -41 41 -76l-113 -35q-8 23 -27 51q-16 25 -39 45q-20 18 -53 31q-27 10 -70 10q-53 0 -98 -22q-43 -20 -69 -64q-27 -41 -39.5 -100t-12.5 -131 q0 -76 14.5 -133.5t43.5 -102.5q29 -43 69 -67q43 -25 99 -25q37 0 71 15q25 10 56 36q23 20 39 49t28 58l117 -37q-12 -29 -45 -82q-25 -39 -64 -72q-41 -35 -86 -51q-49 -18 -116 -18q-90 0 -158 31q-63 29 -108.5 90t-65.5 135q-23 84 -23 174z" />
|
||||||
|
<glyph unicode="­" d="M334 465v160h561v-160h-561z" />
|
||||||
|
<glyph unicode="®" d="M31 762q0 186 47 323q47 135 125 224q84 92 184 133q108 43 227 43q120 0 228 -43q100 -41 184 -133q78 -88 125 -224q45 -133 45 -323.5t-45 -323.5q-47 -139 -125 -225q-84 -92 -184 -133q-102 -41 -227.5 -41t-227.5 41q-100 41 -184 133q-78 86 -125 225 q-47 138 -47 324zM127 762q0 -178 37 -289q39 -117 104 -194q63 -76 156 -111q96 -37 190.5 -37t190.5 37q88 33 156 111q68 76 106 194q39 117 39 289q0 168 -39 285q-39 119 -106.5 194.5t-155.5 112.5q-84 35 -190.5 35t-190.5 -35q-94 -39 -156 -113q-66 -78 -104 -194 q-37 -111 -37 -285zM328 342v832h307q141 0 217 -63.5t76 -172.5q0 -104 -51 -164q-55 -63 -138 -82l222 -350h-146l-199 338h-161v-338h-127zM455 774h182q80 0 123 43q41 41 41 119q0 68 -47 104q-43 35 -129 35h-170v-301z" />
|
||||||
|
<glyph unicode="´" d="M401 1200v21l228 239h196v-28l-299 -232h-125z" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="741" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="1482" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="741" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="1482" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="493" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="370" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="245" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="245" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="184" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="294" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="81" />
|
||||||
|
<glyph unicode="‐" d="M334 465v160h561v-160h-561z" />
|
||||||
|
<glyph unicode="‑" d="M334 465v160h561v-160h-561z" />
|
||||||
|
<glyph unicode="‒" d="M334 465v160h561v-160h-561z" />
|
||||||
|
<glyph unicode="–" d="M170 451v137h889v-137h-889z" />
|
||||||
|
<glyph unicode="—" d="M-10 451v137h1247v-137h-1247z" />
|
||||||
|
<glyph unicode="‘" d="M397 862l312 623h122l-169 -623h-265z" />
|
||||||
|
<glyph unicode="’" d="M399 862l168 623h267l-312 -623h-123z" />
|
||||||
|
<glyph unicode="“" d="M176 862l311 623h123l-168 -623h-266zM616 862l312 623h123l-170 -623h-265z" />
|
||||||
|
<glyph unicode="”" d="M178 862l168 623h266l-311 -623h-123zM616 862l170 623h265l-312 -623h-123z" />
|
||||||
|
<glyph unicode="•" d="M336 682q0 55 22 106q25 55 58 88t88 58q51 23 106 22q53 0 109 -22q51 -20 90 -57q35 -33 59 -89q23 -51 23 -106q0 -53 -23 -109q-23 -57 -59 -90q-43 -41 -90 -59q-55 -23 -109 -23q-55 0 -106 22.5t-88 59.5q-35 35 -57.5 90.5t-22.5 108.5z" />
|
||||||
|
<glyph unicode="…" d="M117 0v219h176v-219h-176zM528 0v219h172v-219h-172zM938 0v219h174v-219h-174z" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="294" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="370" />
|
||||||
|
<glyph unicode="€" d="M90 461v143h121q-4 29 -4 39v37v43q0 10 4 35h-121v141h129q29 233 156 352q129 119 354 119q57 0 107 -6q45 -6 96 -23q61 -20 90 -34q39 -18 86 -54l-82 -139q-59 45 -127 72q-70 29 -156 28q-74 0 -129 -14q-59 -16 -98 -49q-45 -39 -67 -96q-25 -61 -37 -158h460 v-139h-475v-37q0 -8 -1 -20.5t-1 -20.5q0 -35 4 -76h473v-141h-458q10 -86 28 -139q23 -66 60 -105q39 -43 96 -63q55 -20 139 -21q55 0 94 8q47 10 82 25q41 16 70 33q12 6 34.5 20.5t29.5 18.5l75 -136q-57 -37 -86 -51q-53 -27 -92 -39q-53 -16 -100 -24 q-61 -10 -117 -10q-117 0 -209 34q-88 35 -151 97q-57 57 -97 151q-37 88 -49 199h-131z" />
|
||||||
|
<glyph unicode="™" d="M4 1391v92h457v-92h-174v-549h-113v549h-170zM518 842v641h158l182 -465l4 -8l4 -13q4 -8 6 -14q27 70 29 76t6 14t6 14q6 14 9 25q2 4 5 11t3 10l4 8l137 342h154v-641h-107v352v160l-6 -19q-2 -8 -4 -14q-2 -2 -2 -6t-2 -6l-191 -467h-90l-135 342l-10 30 q-4 10 -10 26.5t-13 33.5q-27 66 -30 80v-43v-469h-107z" />
|
||||||
|
<glyph unicode="" horiz-adv-x="1080" d="M0 1080h1080v-1080h-1080v1080z" />
|
||||||
|
<glyph unicode="" d="M84 950v131h152v123q0 59 12 109q14 59 39 88q33 39 82 59q55 23 131 23q23 0 67 -4q41 -4 60 -9v-137q-25 4 -39.5 6t-40.5 2q-41 0 -66 -12q-27 -12 -39 -31q-14 -20 -20 -50.5t-6 -67.5v-99h211v-131h-211v-950h-180v950h-152zM881 0v1081h180v-1081h-180zM881 1313 v172h180v-172h-180z" />
|
||||||
|
<glyph unicode="fi" d="M84 950v131h152v123q0 59 12 109q14 59 39 88q33 39 82 59q55 23 131 23q23 0 67 -4q41 -4 60 -9v-137q-25 4 -39.5 6t-40.5 2q-41 0 -66 -12q-27 -12 -39 -31q-14 -20 -20 -50.5t-6 -67.5v-99h211v-131h-211v-950h-180v950h-152zM881 0v1081h180v-1081h-180zM881 1313 v172h180v-172h-180z" />
|
||||||
|
<glyph unicode="" d="M84 950v131h152v123q0 59 12 109q14 59 39 88q33 39 82 59q55 23 131 23q23 0 67 -4q41 -4 60 -9v-137q-25 4 -39.5 6t-40.5 2q-41 0 -66 -12q-27 -12 -39 -31q-14 -20 -20 -50.5t-6 -67.5v-99h211v-131h-211v-950h-180v950h-152zM881 0v1485h180v-1485h-180z" />
|
||||||
|
<glyph unicode="fl" d="M84 950v131h152v123q0 59 12 109q14 59 39 88q33 39 82 59q55 23 131 23q23 0 67 -4q41 -4 60 -9v-137q-25 4 -39.5 6t-40.5 2q-41 0 -66 -12q-27 -12 -39 -31q-14 -20 -20 -50.5t-6 -67.5v-99h211v-131h-211v-950h-180v950h-152zM881 0v1485h180v-1485h-180z" />
|
||||||
|
<glyph unicode="ffi" horiz-adv-x="3686" d="M2601 0v141h422v799h-319v141h499v-940h379v-141h-981zM3003 1292v193h200v-193h-200zM1366 940v141h262v27q0 98 23 172q20 68 74 117q47 43 129 65q84 23 192 23q8 0 31.5 -1t38.5 -1q27 0 80 -4l38.5 -5.5t36.5 -3.5l58 -8v-143q-6 2 -26.5 3t-29.5 1l-75 6 q-53 4 -74 4q-14 0 -32.5 1t-22.5 1q-59 0 -115 -10q-51 -10 -82 -37q-33 -29 -47 -74q-16 -49 -16 -122v-11h491v-141h-491v-940h-181v940h-262zM137 940v141h262v27q0 98 23 172q20 68 74 117q47 43 129 65q84 23 192 23q8 0 31.5 -1t38.5 -1q27 0 80 -4l38.5 -5.5 t36.5 -3.5l58 -8v-143q-6 2 -26.5 3t-29.5 1l-75 6q-53 4 -74 4q-14 0 -32.5 1t-22.5 1q-59 0 -115 -10q-51 -10 -82 -37q-33 -29 -47 -74q-16 -49 -16 -122v-11h491v-141h-491v-940h-181v940h-262z" />
|
||||||
|
<glyph unicode="ffl" horiz-adv-x="3686" d="M2591 0v141h422v1200h-289v144h469v-1344h381v-141h-983zM1366 940v141h262v27q0 98 23 172q20 68 74 117q47 43 129 65q84 23 192 23q8 0 31.5 -1t38.5 -1q27 0 80 -4l38.5 -5.5t36.5 -3.5l58 -8v-143q-6 2 -26.5 3t-29.5 1l-75 6q-53 4 -74 4q-14 0 -32.5 1t-22.5 1 q-59 0 -115 -10q-51 -10 -82 -37q-33 -29 -47 -74q-16 -49 -16 -122v-11h491v-141h-491v-940h-181v940h-262zM137 940v141h262v27q0 98 23 172q20 68 74 117q47 43 129 65q84 23 192 23q8 0 31.5 -1t38.5 -1q27 0 80 -4l38.5 -5.5t36.5 -3.5l58 -8v-143q-6 2 -26.5 3 t-29.5 1l-75 6q-53 4 -74 4q-14 0 -32.5 1t-22.5 1q-59 0 -115 -10q-51 -10 -82 -37q-33 -29 -47 -74q-16 -49 -16 -122v-11h491v-141h-491v-940h-181v940h-262z" />
|
||||||
|
</font>
|
||||||
|
</defs></svg>
|
After Width: | Height: | Size: 39 KiB |
BIN
fonts/liberation-mono/liberation-mono-webfont.ttf
Normal file
BIN
fonts/liberation-mono/liberation-mono-webfont.woff
Normal file
14
fonts/monaco.css
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
@font-face {
|
||||||
|
font-family: 'MonacoRegular';
|
||||||
|
src: url('monaco/monaco-webfont.eot');
|
||||||
|
src: url('monaco/monaco-webfont.eot?#iefix') format('embedded-opentype'),
|
||||||
|
url('monaco/monaco-webfont.woff') format('woff'),
|
||||||
|
url('monaco/monaco-webfont.ttf') format('truetype'),
|
||||||
|
url('monaco/monaco-webfont.svg#MonacoRegular') format('svg');
|
||||||
|
font-weight: normal;
|
||||||
|
font-style: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-font-monaco * {
|
||||||
|
font-family: Monaco, 'MonacoRegular', 'Courier New', monospace !important;
|
||||||
|
}
|
BIN
fonts/monaco/monaco-webfont.eot
Normal file
239
fonts/monaco/monaco-webfont.svg
Normal file
@ -0,0 +1,239 @@
|
|||||||
|
<?xml version="1.0" standalone="no"?>
|
||||||
|
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<metadata>
|
||||||
|
This is a custom SVG webfont generated by Font Squirrel.
|
||||||
|
Copyright : 199091 Apple Computer Inc 199091 Type Solutions Inc 199091 The Font Bureau Inc
|
||||||
|
</metadata>
|
||||||
|
<defs>
|
||||||
|
<font id="webfontyFRf53FT" horiz-adv-x="1229" >
|
||||||
|
<font-face units-per-em="2048" ascent="1638" descent="-410" />
|
||||||
|
<missing-glyph horiz-adv-x="500" />
|
||||||
|
<glyph unicode=" " />
|
||||||
|
<glyph unicode="!" d="M529 442l-46 1110h248l-47 -1110h-155zM615 -47q-59 0 -101.5 42.5t-42.5 101.5t42.5 101t101.5 42q58 0 100.5 -41.5t42.5 -101.5t-43 -102t-100 -42z" />
|
||||||
|
<glyph unicode=""" d="M465 1055h-128l-64 559h249zM896 1055h-127l-57 559h244z" />
|
||||||
|
<glyph unicode="#" d="M71 419v140h196l110 411h-306v139h341l117 443h146l-117 -443h283l122 443h146l-120 -443h168v-139h-207l-109 -411h316v-140h-355l-114 -419h-148l116 419h-279l-110 -419h-148l111 419h-159zM414 559h280l113 411h-286z" />
|
||||||
|
<glyph unicode="$" d="M580 -155v157q-67 0 -139 7t-135 21.5t-145 51.5v192q66 -34 129.5 -58t134 -38t155.5 -20v557l-107 58q-304 163 -304 394q0 123 101 239.5t310 134.5v166h140v-166q118 0 279 -41v-173l-35 10q-151 42 -244 51v-544l112 -64q158 -91 216.5 -179t58.5 -187 q0 -89 -44.5 -172.5t-127.5 -143.5t-215 -83v-170h-140zM580 928v462q-101 -23 -155.5 -76t-54.5 -124q0 -67 46.5 -128.5t163.5 -133.5zM720 632v-460q109 39 147.5 95.5t38.5 126.5q0 68 -38 116.5t-148 121.5z" />
|
||||||
|
<glyph unicode="%" d="M314 1552q145 0 227.5 -108t82.5 -280q0 -173 -82.5 -280.5t-227.5 -107.5t-228 107.5t-83 280.5q0 172 83 280t228 108zM314 1427q-81 0 -118 -77.5t-37 -185.5q0 -109 37 -186.5t118 -77.5q80 0 117.5 77.5t37.5 186.5q0 108 -37.5 185.5t-117.5 77.5zM166 -47h-164 l1061 1645h165zM912 776q139 0 226 -104t87 -268q0 -189 -92 -296.5t-223 -107.5q-128 0 -217 102.5t-89 285.5q0 174 84 281t224 107zM915 652q-79 0 -117 -76t-38 -194q0 -131 46 -194.5t108 -63.5q66 0 111 69t45 199q0 102 -37.5 181t-117.5 79z" />
|
||||||
|
<glyph unicode="&" d="M881 130q-99 -104 -195.5 -140.5t-208.5 -36.5q-214 0 -344.5 121t-130.5 309q0 263 274 491q-82 103 -123.5 192.5t-41.5 166.5q0 93 49 181t135 136t190 48q138 0 231 -74t93 -212q0 -101 -56.5 -202t-234.5 -236l354 -436q15 50 19.5 82t7.5 117t3 105v49h186v-47 q0 -66 -14 -189.5t-84 -262.5l238 -292h-238zM421 992q101 71 160 155.5t59 152.5q0 65 -41.5 111.5t-129.5 46.5q-76 0 -124 -56t-48 -137q0 -45 12 -91.5t90 -151.5zM778 254l-405 498q-190 -164 -190 -354q0 -130 87 -210t211 -80q66 0 133 23t164 123z" />
|
||||||
|
<glyph unicode="'" d="M683 993h-134l-105 621h341z" />
|
||||||
|
<glyph unicode="(" d="M1072 -372q-277 17 -467 156.5t-303.5 376.5t-113.5 475t113.5 475t303.5 376.5t467 157.5v-156q-209 -19 -359.5 -140.5t-236.5 -309.5t-86 -403t86 -403t236.5 -309t359.5 -141v-155z" />
|
||||||
|
<glyph unicode=")" d="M157 1645q277 -18 467 -157.5t303.5 -376.5t113.5 -475t-113.5 -475t-303.5 -376.5t-467 -156.5v155q209 20 359.5 141t237 309t86.5 403t-86.5 403t-237 309.5t-359.5 140.5v156z" />
|
||||||
|
<glyph unicode="*" d="M519 659l21 347l-283 -190l-93 162l307 150l-307 152l93 159l283 -189l-21 348h188l-26 -348l289 189l94 -159l-308 -152l308 -150l-94 -162l-289 190l26 -347h-188z" />
|
||||||
|
<glyph unicode="+" d="M1157 621v-156h-465v-465h-156v465h-465v156h465v465h156v-465h465z" />
|
||||||
|
<glyph unicode="," d="M424 -434v124q72 19 109.5 54.5t60 90t22.5 131.5q-93 0 -137 52.5t-44 112.5q0 69 49 116.5t114 47.5q84 0 145 -72.5t61 -198.5q0 -110 -48 -207.5t-130.5 -166.5t-201.5 -84z" />
|
||||||
|
<glyph unicode="-" d="M227 551v155h776v-155h-776z" />
|
||||||
|
<glyph unicode="." d="M614 -47q-67 0 -115 48t-48 115q0 68 48.5 115.5t114.5 47.5t114.5 -47.5t48.5 -115.5q0 -67 -48 -115t-115 -48z" />
|
||||||
|
<glyph unicode="/" d="M216 -47h-183l987 1645h177z" />
|
||||||
|
<glyph unicode="0" d="M614 1598q265 0 404 -222.5t139 -599.5q0 -378 -139 -600.5t-404 -222.5q-264 0 -403.5 222.5t-139.5 600.5q0 377 139.5 599.5t403.5 222.5zM311 444l537 841q-51 93 -110.5 125.5t-123.5 32.5q-167 0 -254 -185.5t-87 -470.5q0 -65 4 -140t34 -203zM915 1100l-533 -846 q43 -73 99 -109.5t125 -36.5q190 0 270 212.5t80 471.5q0 160 -41 308z" />
|
||||||
|
<glyph unicode="1" d="M568 155v1198q-84 -67 -163 -114t-217 -96v168q219 93 380 241h186v-1397h373v-155h-939v155h380z" />
|
||||||
|
<glyph unicode="2" d="M1088 0h-939v171q0 66 27 141.5t103 169.5t161 181l106 108q32 33 140 153t142.5 184t34.5 126q0 100 -80 154.5t-180 54.5q-57 0 -127.5 -13t-123.5 -30.5t-172 -71.5v165q126 60 252.5 82.5t208.5 22.5q121 0 222.5 -39.5t151 -122.5t49.5 -177q0 -105 -63.5 -215 t-239.5 -283l-114 -113l-96 -94q-91 -92 -147 -178t-62 -205h746v-171z" />
|
||||||
|
<glyph unicode="3" d="M145 28v196q229 -116 397 -116q154 0 254.5 93.5t100.5 240.5q0 148 -110.5 241t-375.5 93h-103v155h143q195 0 282 87.5t87 194.5q0 97 -71 163.5t-218 66.5q-165 0 -355 -93v177q190 71 348 71q283 0 390.5 -111.5t107.5 -254.5q0 -106 -57 -199t-210 -166 q135 -40 204 -98t104.5 -137t35.5 -177q0 -218 -161.5 -360t-417.5 -142q-74 0 -161.5 11t-213.5 64z" />
|
||||||
|
<glyph unicode="4" d="M707 0v434h-659v156l659 962h187v-962h287v-156h-287v-434h-187zM707 590v680l-461 -680h461z" />
|
||||||
|
<glyph unicode="5" d="M188 807v745h869v-179h-683v-380h32q335 0 516 -140t181 -377q0 -150 -73 -269t-206 -186.5t-283 -67.5t-384 73v203q85 -46 190 -75.5t194 -29.5t174 43t132 125.5t47 168.5q0 145 -128.5 245.5t-456.5 100.5h-121z" />
|
||||||
|
<glyph unicode="6" d="M292 728q72 107 178.5 174.5t234.5 67.5q121 0 229.5 -59t165.5 -164.5t57 -245.5q0 -221 -141.5 -384.5t-372.5 -163.5q-272 0 -406.5 227.5t-134.5 578.5q0 388 171 613.5t463 225.5q157 0 305 -46v-188q-166 79 -313 79q-208 0 -322 -191t-114 -484v-40zM657 108 q75 0 151 44.5t119.5 137t43.5 201.5q0 142 -73.5 233t-209.5 91q-141 0 -231.5 -105.5t-90.5 -256.5q0 -152 88.5 -248.5t202.5 -96.5z" />
|
||||||
|
<glyph unicode="7" d="M319 0v139q0 163 37 274t130 247t149 210l162 214l58 75q66 89 114 206h-805v187h985v-124q0 -74 -29.5 -137t-178.5 -269l-71 -98l-104 -146q-100 -141 -148 -225t-72.5 -175t-24.5 -239v-139h-202z" />
|
||||||
|
<glyph unicode="8" d="M459 837l-34 25q-71 50 -139 147.5t-68 214.5q0 155 122 264.5t310 109.5q115 0 207 -41.5t142 -122.5t50 -177q0 -66 -23 -127.5t-68.5 -122t-180.5 -170.5l84 -67q147 -120 198 -207t51 -195q0 -168 -122 -291.5t-366 -123.5q-245 0 -367 115.5t-122 286.5 q0 255 326 482zM650 932q141 107 176.5 179t35.5 134q0 75 -66 136.5t-170 61.5q-112 0 -170.5 -67t-58.5 -139q0 -70 49 -132t157 -139zM599 738q-264 -203 -264 -380q0 -105 87 -177t206 -72q109 0 195 69t86 172q0 101 -104.5 205t-145.5 136z" />
|
||||||
|
<glyph unicode="9" d="M936 824q-72 -107 -178.5 -174.5t-234.5 -67.5q-121 0 -229.5 58.5t-165.5 164.5t-57 246q0 220 141.5 383.5t372.5 163.5q272 0 406.5 -227.5t134.5 -578.5q0 -388 -171 -613.5t-463 -225.5q-157 0 -305 47v187q166 -78 313 -78q208 0 322 191t114 484v40zM571 1443 q-75 0 -151 -44.5t-119.5 -136.5t-43.5 -202q0 -141 73.5 -232t209.5 -91q141 0 231.5 105.5t90.5 255.5q0 152 -88.5 248.5t-202.5 96.5z" />
|
||||||
|
<glyph unicode=":" d="M614 -47q-67 0 -115 48t-48 115q0 68 48.5 115.5t114.5 47.5t114.5 -47.5t48.5 -115.5q0 -67 -48 -115t-115 -48zM614 822q-67 0 -115 48t-48 115q0 68 48.5 115.5t114.5 47.5t114.5 -47.5t48.5 -115.5q0 -67 -48 -115t-115 -48z" />
|
||||||
|
<glyph unicode=";" d="M424 -434v124q72 19 109.5 54.5t60 90t22.5 131.5q-93 0 -137 52.5t-44 112.5q0 69 49 116.5t114 47.5q84 0 145 -72.5t61 -198.5q0 -110 -48 -207.5t-130.5 -166.5t-201.5 -84zM598 822q-67 0 -115 48t-48 115q0 68 48.5 115.5t114.5 47.5t114.5 -47.5t48.5 -115.5 q0 -67 -48 -115t-115 -48z" />
|
||||||
|
<glyph unicode="<" d="M71 543l1086 543v-173l-742 -369l742 -373v-171z" />
|
||||||
|
<glyph unicode="=" d="M1157 791v-155h-1086v155h1086zM1157 442v-155h-1086v155h1086z" />
|
||||||
|
<glyph unicode=">" d="M1157 543l-1086 -543v173l743 369l-743 373v171z" />
|
||||||
|
<glyph unicode="?" d="M401 442v35q0 83 14 138.5t53.5 115t118.5 143.5l62 66q18 19 52 62l66 83q84 104 84 180q0 70 -60 124t-195 54q-87 0 -177.5 -23.5t-211.5 -91.5v180q185 90 387 90q224 0 341.5 -91.5t117.5 -237.5q0 -144 -152 -299l-66 -68l-78 -81l-71 -73q-39 -44 -69 -101 t-30 -159v-46h-186zM503 -47q-58 0 -100.5 42.5t-42.5 101.5t42.5 101t100.5 42q59 0 101.5 -41.5t42.5 -101.5t-43 -102t-101 -42z" />
|
||||||
|
<glyph unicode="@" d="M921 200v-157q-84 -55 -149 -72.5t-140 -17.5q-208 0 -340.5 101.5t-211 283t-78.5 443.5q0 364 167 590.5t451 226.5q281 0 444.5 -200t163.5 -526q0 -144 -42 -236.5t-111 -147t-167 -54.5q-76 0 -124 33.5t-72 154.5q-28 -65 -86 -126.5t-157 -61.5 q-103 0 -170.5 93.5t-67.5 229.5q0 167 96.5 310t348.5 143h191v-438q0 -87 6.5 -123.5t27 -55.5t44.5 -19q39 0 78.5 37.5t60 106t20.5 148.5q0 167 -61 324.5t-181 224.5t-251 67q-139 0 -244.5 -83.5t-173 -250.5t-67.5 -369q0 -203 67 -376t181 -253t254 -80 q159 0 293 130zM712 809v269h-36q-118 0 -170 -37t-82 -116t-30 -174q0 -77 24 -119t66 -42q59 0 120.5 68.5t107.5 150.5z" />
|
||||||
|
<glyph unicode="A" d="M227 0h-194l478 1552h205l481 -1552h-213l-106 341h-546zM380 496h453l-187 589l-44 156l-39 -156z" />
|
||||||
|
<glyph unicode="B" d="M172 0v1552h303q273 0 365.5 -41.5t138.5 -122.5t46 -185q0 -82 -27 -155.5t-80 -134t-154 -114.5q185 -74 250.5 -182t65.5 -216q0 -103 -55.5 -200t-155.5 -149t-320 -52h-377zM374 853h212q103 43 150.5 90.5t71 106t23.5 128.5q0 110 -64.5 164t-251.5 54h-141v-543z M374 155h191q160 0 236.5 75.5t76.5 181.5q0 78 -42 143.5t-130 104t-276 38.5h-56v-543z" />
|
||||||
|
<glyph unicode="C" d="M1088 18q-174 -65 -312 -65q-182 0 -335 97.5t-238 290t-85 435.5q0 241 84 433t237 291t337 99q138 0 312 -65v-184q-161 93 -320 93q-120 0 -219.5 -82t-160.5 -240.5t-61 -344.5q0 -189 63 -349t161 -239.5t217 -79.5q158 0 320 93v-183z" />
|
||||||
|
<glyph unicode="D" d="M155 0v1552h368q254 0 377.5 -88.5t185.5 -267.5t62 -424q0 -232 -65.5 -407.5t-185.5 -270t-374 -94.5h-368zM357 171h135q205 0 292.5 73t125 202.5t37.5 357.5q0 223 -44 343t-126 184.5t-269 64.5h-151v-1225z" />
|
||||||
|
<glyph unicode="E" d="M1041 171v-171h-838v1552h822v-156h-620v-527h558v-155h-558v-543h636z" />
|
||||||
|
<glyph unicode="F" d="M227 0v1552h853v-156h-651v-527h589v-155h-589v-714h-202z" />
|
||||||
|
<glyph unicode="G" d="M1088 1q-164 -48 -301 -48q-194 0 -345.5 96t-237.5 289.5t-86 437.5q0 241 84 433t237 291t336 99q138 0 312 -65v-184q-161 93 -320 93q-120 0 -219.5 -82t-160 -240.5t-60.5 -346.5q0 -252 115 -459t363 -207q32 0 81 5v500h-155v155h357v-767z" />
|
||||||
|
<glyph unicode="H" d="M126 0v1552h202v-668h574v668h201v-1552h-201v729h-574v-729h-202z" />
|
||||||
|
<glyph unicode="I" d="M172 0v155h341v1241h-341v156h884v-156h-341v-1241h341v-155h-884z" />
|
||||||
|
<glyph unicode="J" d="M110 34v190q218 -115 365 -115q77 0 140.5 30t101 100.5t37.5 301.5v855h-349v156h551v-1016q0 -248 -56.5 -357t-158.5 -167.5t-261 -58.5q-178 0 -370 81z" />
|
||||||
|
<glyph unicode="K" d="M157 0v1552h202v-761l577 761h214l-557 -737l635 -815h-253l-616 791v-791h-202z" />
|
||||||
|
<glyph unicode="L" d="M1057 171v-171h-838v1552h202v-1381h636z" />
|
||||||
|
<glyph unicode="M" d="M219 0h-163v1552h203l358 -1022l358 1022h198v-1552h-186v989l5 136h-5l-44 -136l-240 -679h-202l-243 679l-39 136h-5l5 -136v-989z" />
|
||||||
|
<glyph unicode="N" d="M312 0h-186v1552h182l549 -1033l60 -154h5l-5 154v1033h186v-1552h-186l-534 1016l-75 163l4 -161v-1018z" />
|
||||||
|
<glyph unicode="O" d="M614 -47q-264 0 -403.5 222.5t-139.5 600.5q0 377 139.5 599.5t403.5 222.5q265 0 404 -222.5t139 -599.5q0 -378 -139 -600.5t-404 -222.5zM614 109q146 0 243.5 165.5t97.5 501.5t-97.5 501.5t-243.5 165.5t-243.5 -165.5t-97.5 -501.5t97.5 -501.5t243.5 -165.5z" />
|
||||||
|
<glyph unicode="P" d="M378 566v-566h-202v1552h386q238 0 347 -53.5t167 -156.5t58 -230q0 -149 -78 -278t-217.5 -198.5t-378.5 -69.5h-82zM378 721h87q187 0 278 48.5t140 139.5t49 197q0 134 -87.5 212t-345.5 78h-121v-675z" />
|
||||||
|
<glyph unicode="Q" d="M746 -29q70 -116 125 -161t143 -67t195 -22h18v-155h-47q-193 0 -281 40t-166 123t-142 226q-183 20 -289.5 116t-168.5 297t-62 432q0 338 135 568t408 230q264 0 403.5 -222t139.5 -601q0 -180 -36.5 -344.5t-126 -289t-248.5 -170.5zM614 1443q-146 0 -243.5 -165.5 t-97.5 -501.5t97.5 -501.5t243.5 -165.5t243.5 165.5t97.5 501.5t-97.5 501.5t-243.5 165.5z" />
|
||||||
|
<glyph unicode="R" d="M351 659v-659h-202v1552h415q203 0 299 -41.5t148.5 -125.5t52.5 -181q0 -90 -35 -181t-96.5 -162.5t-177.5 -135.5l449 -725h-240l-411 659h-202zM351 815h283q95 52 141.5 106t70.5 115t24 122q0 109 -79.5 173.5t-288.5 64.5h-151v-581z" />
|
||||||
|
<glyph unicode="S" d="M157 33v190q240 -114 436 -114q82 0 157 31.5t113.5 90.5t38.5 128q0 81 -53 151.5t-199 155.5l-102 59l-103 59q-272 161 -272 400q0 175 121.5 294.5t379.5 119.5q166 0 321 -48v-173q-171 66 -333 66q-129 0 -208.5 -68t-79.5 -164q0 -95 61 -158t156 -116l78 -47 l97 -59l82 -48q255 -156 255 -392q0 -180 -131 -309t-420 -129q-92 0 -175.5 15.5t-219.5 64.5z" />
|
||||||
|
<glyph unicode="T" d="M513 0v1381h-465v171h1133v-171h-466v-1381h-202z" />
|
||||||
|
<glyph unicode="U" d="M126 1552h202v-1019q0 -201 33.5 -274.5t103 -112t154.5 -38.5q90 0 160.5 41.5t104 130t33.5 332.5v940h186v-1013q0 -217 -64.5 -339.5t-168.5 -184.5t-262 -62q-146 0 -257 54t-168 162t-57 390v993z" />
|
||||||
|
<glyph unicode="V" d="M1003 1552h194l-478 -1552h-205l-481 1552h213l337 -1084l44 -158l39 157z" />
|
||||||
|
<glyph unicode="W" d="M208 0l-180 1552h184l106 -945l14 -157h5l20 157l163 945h184l186 -983l19 -150h5l12 151l117 982h158l-188 -1552h-191l-200 1052l-21 158h-5l-19 -158l-180 -1052h-189z" />
|
||||||
|
<glyph unicode="X" d="M258 0h-210l454 811l-410 741h229l297 -535l304 535h211l-410 -726l458 -826h-233l-341 619z" />
|
||||||
|
<glyph unicode="Y" d="M514 0v718l-462 834h229l345 -616l344 616h207l-461 -834v-718h-202z" />
|
||||||
|
<glyph unicode="Z" d="M122 0v171l737 1225h-714v156h947v-156l-736 -1225h751v-171h-985z" />
|
||||||
|
<glyph unicode="[" d="M355 -372v2017h807v-156h-621v-1706h621v-155h-807z" />
|
||||||
|
<glyph unicode="\" d="M1014 -47l-981 1645h177l987 -1645h-183z" />
|
||||||
|
<glyph unicode="]" d="M874 1645v-2017h-807v155h621v1706h-621v156h807z" />
|
||||||
|
<glyph unicode="^" d="M614 1552l543 -1087h-171l-372 747l-372 -747h-171z" />
|
||||||
|
<glyph unicode="_" d="M71 -155v155h1086v-155h-1086z" />
|
||||||
|
<glyph unicode="`" d="M832 1288h-170l-342 326h216z" />
|
||||||
|
<glyph unicode="a" d="M889 251q-85 -140 -204.5 -211t-219.5 -71q-140 0 -251.5 121t-111.5 367q0 194 74 346.5t198 241t307 88.5q53 0 160 -11q16 -2 48 -5h187v-789q0 -202 42 -328h-194q-22 92 -35 251zM889 472v479q-99 26 -184 26q-172 0 -286.5 -133t-114.5 -362q0 -166 62.5 -250.5 t142.5 -84.5q87 0 192 88t188 237z" />
|
||||||
|
<glyph unicode="b" d="M327 866q86 140 205 211t219 71q140 0 252 -121t112 -367q0 -194 -74.5 -346.5t-198.5 -241t-307 -88.5q-52 0 -160 11q-16 2 -48 5h-186v1614h186v-748zM327 645v-479q101 -26 186 -26q169 0 284.5 132.5t115.5 362.5q0 167 -63 251t-143 84q-87 0 -191.5 -88 t-188.5 -237z" />
|
||||||
|
<glyph unicode="c" d="M1095 32q-187 -63 -356 -63q-168 0 -298.5 77.5t-203.5 210t-73 301.5q0 254 165.5 422t399.5 168q173 0 366 -65v-179q-195 89 -349 89q-102 0 -192 -50.5t-139 -157.5t-49 -220q0 -151 94.5 -288t296.5 -137q61 0 120 8.5t218 62.5v-179z" />
|
||||||
|
<glyph unicode="d" d="M901 251q-85 -140 -204.5 -211t-219.5 -71q-140 0 -251.5 121t-111.5 367q0 194 74 346.5t198 241t307 88.5q53 0 160 -11q16 -2 48 -5v497h187v-1614h-187v251zM901 472v479q-99 26 -184 26q-172 0 -286.5 -133t-114.5 -362q0 -166 62.5 -250.5t142.5 -84.5q87 0 192 88 t188 237z" />
|
||||||
|
<glyph unicode="e" d="M1084 74q-223 -106 -422 -106q-151 0 -270 75t-190.5 214.5t-71.5 298.5q0 153 68 294t190 219.5t272 78.5q199 0 319.5 -142t120.5 -438v-40h-770q0 -116 48.5 -212t127.5 -144t180 -48q180 0 398 120v-170zM341 667h557v27q0 137 -67 218t-179 81q-113 0 -195.5 -82.5 t-115.5 -243.5z" />
|
||||||
|
<glyph unicode="f" d="M415 0v869h-248v155h248v52q0 221 50 327t154.5 174t276.5 68q130 0 264 -27v-177q-145 48 -257 48q-89 0 -157 -33t-106.5 -107.5t-38.5 -252.5v-72h443v-155h-443v-869h-186z" />
|
||||||
|
<glyph unicode="g" d="M901 251q-85 -140 -204.5 -211t-219.5 -71q-140 0 -251.5 121t-111.5 367q0 194 74 346.5t198 241t307 88.5q53 0 160 -11q16 -2 48 -5h187v-790q0 -282 -7.5 -344.5t-24.5 -126.5q-40 -149 -182.5 -235t-344.5 -86q-203 0 -411 104v188q79 -54 194.5 -95.5t223.5 -41.5 q85 0 161 27t123 78t64 118.5t17 179.5v158zM901 472v479q-99 26 -184 26q-172 0 -286.5 -133t-114.5 -362q0 -166 62.5 -250.5t142.5 -84.5q87 0 192 88t188 237z" />
|
||||||
|
<glyph unicode="h" d="M155 0v1614h186v-741q80 129 193 202t226 73q95 0 173.5 -48.5t109.5 -117.5q25 -53 34 -112.5t9 -245.5v-624h-186v647q0 161 -15.5 212.5t-57 84.5t-90.5 33q-98 0 -210.5 -93t-185.5 -233v-651h-186z" />
|
||||||
|
<glyph unicode="i" d="M468 0v962h-310v155h496v-962h311v-155h-497zM437 1520q0 63 43 94t81 31q39 0 82 -31t43 -94q0 -62 -43 -93t-82 -31q-38 0 -81 31t-43 93z" />
|
||||||
|
<glyph unicode="j" d="M172 -438v174q156 -46 263 -46q93 0 158 32.5t101.5 109.5t36.5 268v862h-474v155h660v-982q0 -284 -67 -394.5t-162 -158.5t-260 -48q-119 0 -256 28zM700 1520q0 63 42.5 94t81.5 31t81.5 -31t42.5 -94q0 -62 -42.5 -93t-81.5 -31t-81.5 31t-42.5 93z" />
|
||||||
|
<glyph unicode="k" d="M205 0v1614h186v-1014l537 517h248l-536 -517l550 -600h-256l-543 600v-600h-186z" />
|
||||||
|
<glyph unicode="l" d="M455 0v1458h-334v156h520v-1459h349v-155h-535z" />
|
||||||
|
<glyph unicode="m" d="M71 0v1117h163v-256q77 163 143.5 225t134.5 62q81 0 130.5 -63.5t49.5 -180.5v-60q33 102 79.5 165.5t96.5 101t115 37.5q72 0 123 -61t51 -243v-844h-163v763q0 94 -6 128.5t-24 52.5t-39 18q-52 0 -111.5 -79.5t-121.5 -263.5v-619h-156v762q0 148 -29 174t-52 26 q-51 0 -109.5 -89t-111.5 -228v-645h-163z" />
|
||||||
|
<glyph unicode="n" d="M155 0v1117h186v-244q80 129 193 202t226 73q99 0 180 -52.5t113.5 -137.5t32.5 -334v-624h-186v647q0 161 -15.5 212.5t-57 84.5t-90.5 33q-98 0 -210.5 -93t-185.5 -233v-651h-186z" />
|
||||||
|
<glyph unicode="o" d="M615 -31q-240 0 -384 167.5t-144 422.5t144 422t384 167q239 0 383 -167t144 -422t-144 -422.5t-383 -167.5zM615 124q149 0 237 116t88 319q0 202 -88 318t-237 116q-150 0 -238 -116t-88 -318q0 -203 88 -319t238 -116z" />
|
||||||
|
<glyph unicode="p" d="M327 866q86 140 205 211t219 71q140 0 252 -121t112 -367q0 -194 -74.5 -346.5t-198.5 -241t-307 -88.5q-52 0 -160 11q-16 2 -48 5v-434h-186v1551h186v-251zM327 645v-479q101 -26 186 -26q169 0 284.5 132.5t115.5 362.5q0 167 -63 251t-143 84q-87 0 -191.5 -88 t-188.5 -237z" />
|
||||||
|
<glyph unicode="q" d="M901 251q-85 -140 -204.5 -211t-219.5 -71q-140 0 -251.5 121t-111.5 367q0 194 74 346.5t198 241t307 88.5q53 0 160 -11q16 -2 48 -5h187v-1551h-187v685zM901 472v479q-99 26 -184 26q-172 0 -286.5 -133t-114.5 -362q0 -166 62.5 -250.5t142.5 -84.5q87 0 192 88 t188 237z" />
|
||||||
|
<glyph unicode="r" d="M250 0v1117h186v-244q87 138 199.5 206.5t250.5 68.5q101 0 202 -31v-403h-179v255q-47 8 -74 8q-104 0 -204 -82t-195 -246v-649h-186z" />
|
||||||
|
<glyph unicode="s" d="M168 59v197q112 -73 237 -102.5t212 -29.5q141 0 203 45.5t62 113.5q0 45 -29 77t-144 79l-64 26l-129 51q-208 81 -262.5 149.5t-54.5 166.5q0 138 106.5 227t345.5 89q179 0 339 -52v-169q-184 66 -346 66q-118 0 -184.5 -41.5t-66.5 -103.5q0 -60 57.5 -96t186.5 -83 l126 -46q173 -63 243 -137t70 -185q0 -145 -111.5 -238.5t-356.5 -93.5q-214 0 -440 90z" />
|
||||||
|
<glyph unicode="t" d="M1089 45q-131 -55 -190 -65.5t-114 -10.5q-117 0 -214 45t-146.5 133t-49.5 272v450h-279v155h279v450h186v-450h497v-155h-497v-447q0 -135 32 -190.5t85.5 -81.5t126.5 -26q135 0 284 85v-164z" />
|
||||||
|
<glyph unicode="u" d="M1074 1117v-1117h-186v245q-90 -138 -200 -207t-220 -69q-98 0 -179.5 52.5t-113.5 138t-32 333.5v624h186v-647q0 -161 15.5 -212.5t57 -84.5t89.5 -33q98 0 210.5 92.5t186.5 233.5v651h186z" />
|
||||||
|
<glyph unicode="v" d="M518 0l-485 1117h204l383 -884l391 884h186l-489 -1117h-190z" />
|
||||||
|
<glyph unicode="w" d="M202 0l-182 1117h173l106 -680l28 -158l27 158l178 680h167l201 -680l35 -158l23 158l107 680h143l-181 -1117h-174l-214 719l-34 158h-5l-31 -157l-186 -720h-181z" />
|
||||||
|
<glyph unicode="x" d="M271 0h-215l439 585l-410 532h238l291 -375l283 375h211l-388 -514l461 -603h-239l-340 445z" />
|
||||||
|
<glyph unicode="y" d="M566 45l-516 1072h205l411 -838l344 838h187l-433 -1038q-137 -329 -260.5 -437t-319.5 -108q-85 0 -152 15v164q77 -24 147 -24q90 0 160 35t128 124t82 154z" />
|
||||||
|
<glyph unicode="z" d="M133 0v171l685 791h-669v155h915v-155l-690 -791h713v-171h-954z" />
|
||||||
|
<glyph unicode="{" d="M547 636q93 -49 136.5 -96t65 -96.5t21.5 -113.5q0 -57 -20 -149l-25 -114q-20 -93 -20 -138q0 -61 47.5 -103.5t195.5 -42.5h155v-155h-157q-274 0 -353 88t-79 199q0 59 15 127l18 80l17 87l12 53q7 37 7 72q0 93 -62.5 159t-220.5 66h-89v155h89q156 0 219.5 65 t63.5 162q0 36 -7 70l-12 52l-17 87l-18 80q-15 69 -15 128q0 110 79 198.5t353 88.5h157v-156h-155q-147 0 -195 -42.5t-48 -104.5q0 -44 20 -137l25 -114q20 -92 20 -149q0 -64 -21.5 -113.5t-65 -96.5t-136.5 -96z" />
|
||||||
|
<glyph unicode="|" d="M533 -47v1645h163v-1645h-163z" />
|
||||||
|
<glyph unicode="}" d="M682 636q-93 49 -136.5 96t-64.5 96.5t-21 113.5q0 57 19 149l25 114q20 93 20 138q0 61 -47.5 103.5t-195.5 42.5h-155v156h157q274 0 353.5 -88.5t79.5 -198.5q0 -60 -16 -128l-18 -80l-17 -87l-12 -52q-7 -38 -7 -73q0 -92 62.5 -158t220.5 -66h89v-155h-89 q-156 0 -219.5 -65.5t-63.5 -162.5q0 -35 7 -69l12 -53l17 -87l18 -80q16 -69 16 -128q0 -111 -79.5 -198.5t-353.5 -87.5h-157v155h155q148 0 195.5 42.5t47.5 104.5q0 44 -20 137l-25 114q-19 92 -19 149q0 64 21 113.5t64.5 96.5t136.5 96z" />
|
||||||
|
<glyph unicode="~" d="M56 403v18q0 131 77.5 227.5t208.5 96.5q33 0 64.5 -6.5t71.5 -22t120 -60.5l121 -67q111 -61 181 -61q74 0 109.5 53.5t35.5 116.5v16h128v-16q0 -167 -94.5 -246.5t-200.5 -79.5q-99 0 -262 93l-102 59q-116 66 -187 66q-40 0 -74.5 -21t-55.5 -67t-21 -81v-18h-120z " />
|
||||||
|
<glyph unicode=" " />
|
||||||
|
<glyph unicode="¡" d="M700 659l46 -1109h-248l47 1109h155zM615 1148q56 0 99.5 -43t43.5 -100q0 -58 -43.5 -101t-99.5 -43q-57 0 -100.5 43t-43.5 101q0 57 43.5 100t100.5 43z" />
|
||||||
|
<glyph unicode="¢" d="M607 -155v346q-149 18 -255.5 96t-170 200.5t-63.5 278.5t59 277t163.5 201t266.5 109v354h155v-354q166 -19 287 -56v-179q-36 21 -80 37t-93 29t-114 19v-866q80 9 123 21t130 52q12 6 34 16v-180q-149 -49 -287 -55v-346h-155zM607 345v850q-154 -48 -220.5 -165 t-66.5 -265q0 -126 60 -249.5t227 -170.5z" />
|
||||||
|
<glyph unicode="£" d="M141 0v171q93 21 136.5 62.5t66 121t22.5 202.5v211h-225v155h225v69q0 266 51 380t145 170t225 56q124 0 262 -58v-180q-158 83 -284 83q-57 0 -109.5 -37.5t-78 -114.5t-25.5 -289v-79h326v-155h-326v-117q0 -187 -22 -284.5t-128 -195.5h709v-171h-970z" />
|
||||||
|
<glyph unicode="¤" d="M1042 1381l115 -101l-184 -212q73 -102 89 -164.5t16 -129.5q0 -68 -16 -131.5t-89 -165.5l184 -211l-115 -95l-185 206q-91 -48 -142.5 -57.5t-100.5 -9.5t-100.5 9.5t-142.5 57.5l-185 -206l-115 95l184 211q-73 102 -89 165.5t-16 131.5q0 67 16 129.5t89 164.5 l-184 212l115 101l185 -211q88 54 143.5 62.5t99.5 8.5t99.5 -8.5t143.5 -62.5zM614 465q119 0 213.5 86.5t94.5 218.5q0 86 -41.5 160.5t-116.5 115t-150 40.5t-150 -40.5t-116.5 -115t-41.5 -160.5q0 -132 94.5 -218.5t213.5 -86.5z" />
|
||||||
|
<glyph unicode="¥" d="M522 0v248h-326v140h326v194h-326v139h317l-461 831h205l367 -642l368 642h185l-469 -831h318v-139h-318v-194h318v-140h-318v-248h-186z" />
|
||||||
|
<glyph unicode="§" d="M149 -301v201q102 -55 218.5 -86t210.5 -31q149 0 228.5 61t79.5 131q0 58 -39.5 101.5t-170.5 117.5l-147 83q-196 110 -276.5 209t-80.5 208q0 163 145 296q-64 48 -96.5 109.5t-32.5 136.5q0 97 55.5 180t156.5 132.5t258 49.5q148 0 337 -57v-178q-61 32 -164.5 56 t-181.5 24q-136 0 -198 -54t-62 -120q0 -35 17.5 -66t52.5 -59q69 -55 126 -89l63 -35l149 -88q193 -114 249.5 -200.5t56.5 -190.5q0 -164 -144 -297q92 -76 110.5 -136t18.5 -106q0 -94 -66.5 -187.5t-178.5 -140t-272 -46.5q-220 0 -422 71zM833 319q100 80 100 186 q0 72 -64.5 140.5t-148.5 116.5l-94 53l-184 105q-58 -66 -71 -106.5t-13 -77.5q0 -81 55 -143.5t253 -176.5z" />
|
||||||
|
<glyph unicode="¨" d="M397 1288q-51 0 -87.5 36t-36.5 88t37 88t87 36t87 -36t37 -88t-36.5 -88t-87.5 -36zM832 1288q-51 0 -88 36t-37 88t37.5 88t87.5 36t87 -36t37 -88t-37 -88t-87 -36z" />
|
||||||
|
<glyph unicode="©" d="M615 -47q-194 0 -323 101t-209.5 291t-80.5 431q0 232 74.5 418t206 295t332.5 109q194 0 323.5 -102t209.5 -291t80 -429q0 -241 -80.5 -431t-209.5 -291t-323 -101zM615 78q128 0 240 80.5t180.5 252.5t68.5 365q0 192 -69 365t-181 253t-239 80q-130 0 -243.5 -83.5 t-179.5 -255t-66 -359.5q0 -195 70 -369t181 -251.5t238 -77.5zM894 433v-152q-90 -33 -214 -33q-131 0 -232.5 70.5t-161 190t-59.5 266.5q0 146 57.5 269t151 191t229.5 68q102 0 229 -32v-159q-38 12 -83 20t-79.5 12.5t-57.5 4.5q-127 0 -201.5 -103t-74.5 -273 q0 -187 87.5 -286t214.5 -99q82 0 194 45z" />
|
||||||
|
<glyph unicode="ª" d="M840 1060q-58 -76 -155 -122t-184 -46q-112 0 -201 73.5t-89 224.5q0 118 58.5 209.5t157 145t247.5 53.5q45 0 129 -5l36 -3h140v-476q0 -49 5.5 -94.5t41.5 -111.5h-155q-20 58 -31 152zM839 1208l-1 255q-78 11 -147 11q-136 0 -230.5 -72t-94.5 -201q0 -89 50 -133 t118 -44q72 0 159 52t146 132z" />
|
||||||
|
<glyph unicode="«" d="M626 481v155l384 419l113 -109l-312 -387l312 -399l-113 -98zM153 481v155l384 419l112 -109l-311 -387l311 -399l-112 -98z" />
|
||||||
|
<glyph unicode="¬" d="M1157 621v-466h-155v310h-931v156h1086z" />
|
||||||
|
<glyph unicode="­" d="M227 551v155h776v-155h-776z" />
|
||||||
|
<glyph unicode="®" d="M615 -47q-194 0 -323 101t-209.5 291t-80.5 431q0 232 74.5 418t206 295t332.5 109q194 0 323.5 -102t209.5 -291t80 -429q0 -241 -80.5 -431t-209.5 -291t-323 -101zM615 78q128 0 240 80.5t180.5 252.5t68.5 365q0 192 -69 365t-181 253t-239 80q-130 0 -243.5 -83.5 t-179.5 -255t-66 -359.5q0 -195 70 -369t181 -251.5t238 -77.5zM494 718v-379h-139v914h220q176 0 238.5 -64.5t62.5 -146.5q0 -75 -42 -151.5t-132 -127.5l236 -424h-166l-196 379h-82zM494 829h116q64 36 95.5 82.5t31.5 104.5q0 59 -41.5 93t-156.5 34h-45v-314z" />
|
||||||
|
<glyph unicode="¯" d="M335 1288v124h559v-124h-559z" />
|
||||||
|
<glyph unicode="°" d="M615 1055q-114 0 -193 80.5t-79 190.5q0 113 80.5 192.5t191.5 79.5t191 -79.5t80 -192.5q0 -110 -79 -190.5t-192 -80.5zM615 1148q75 0 126.5 54t51.5 124q0 73 -52.5 126t-125.5 53q-74 0 -126.5 -53t-52.5 -126q0 -70 51.5 -124t127.5 -54z" />
|
||||||
|
<glyph unicode="±" d="M1157 931v-155h-465v-466h-156v466h-465v155h465v465h156v-465h465zM1157 155v-155h-1086v155h1086z" />
|
||||||
|
<glyph unicode="²" d="M1088 0h-939v171q0 66 27 141.5t103 169.5t161 181l106 108q32 33 140 153t142.5 184t34.5 126q0 100 -80 154.5t-180 54.5q-57 0 -127.5 -13t-123.5 -30.5t-172 -71.5v165q126 60 252.5 82.5t208.5 22.5q121 0 222.5 -39.5t151 -122.5t49.5 -177q0 -105 -63.5 -215 t-239.5 -283l-114 -113l-96 -94q-91 -92 -147 -178t-62 -205h746v-171z" />
|
||||||
|
<glyph unicode="³" d="M145 28v196q229 -116 397 -116q154 0 254.5 93.5t100.5 240.5q0 148 -110.5 241t-375.5 93h-103v155h143q195 0 282 87.5t87 194.5q0 97 -71 163.5t-218 66.5q-165 0 -355 -93v177q190 71 348 71q283 0 390.5 -111.5t107.5 -254.5q0 -106 -57 -199t-210 -166 q135 -40 204 -98t104.5 -137t35.5 -177q0 -218 -161.5 -360t-417.5 -142q-74 0 -161.5 11t-213.5 64z" />
|
||||||
|
<glyph unicode="´" d="M320 1288l296 326h216l-342 -326h-170z" />
|
||||||
|
<glyph unicode="µ" d="M1076 1117v-1117h-186v242q-76 -142 -175 -207.5t-196 -65.5q-34 0 -71.5 8t-65.5 20.5t-74 49.5v-419h-186v1489h186v-649q0 -189 59 -263t147 -74t170.5 65.5t205.5 261.5v659h186z" />
|
||||||
|
<glyph unicode="¶" d="M552 -372v1055q-235 24 -350 150.5t-115 290.5q0 112 56 215t156.5 158t344.5 55h537v-156h-163v-1768h-155v1768h-155v-1768h-156z" />
|
||||||
|
<glyph unicode="¸" d="M685 0l-73 -131q107 -21 140 -65.5t33 -92.5q0 -55 -44 -100.5t-138 -45.5q-83 0 -159 28v89q58 -31 119 -31q35 0 63 21t28 44q0 68 -186 87l109 197h108z" />
|
||||||
|
<glyph unicode="¹" d="M568 155v1198q-84 -67 -163 -114t-217 -96v168q219 93 380 241h186v-1397h373v-155h-939v155h380z" />
|
||||||
|
<glyph unicode="º" d="M614 884q-218 0 -326 107t-108 250q0 144 108 250.5t326 106.5q219 0 327 -106.5t108 -250.5q0 -143 -108 -250t-327 -107zM614 1008q124 0 202 60t78 173t-78 173t-202 60q-123 0 -201 -60t-78 -173t78 -173t201 -60z" />
|
||||||
|
<glyph unicode="»" d="M602 636v-155l-383 -419l-113 109l312 388l-312 398l113 98zM1076 636v-155l-384 -419l-113 109l312 388l-312 398l113 98z" />
|
||||||
|
<glyph unicode="¼" horiz-adv-x="3687" d="M3165 0v434h-659v156l659 962h187v-962h287v-156h-287v-434h-187zM3165 590v680l-461 -680h461zM1395 -47h-164l1061 1645h165zM568 155v1198q-84 -67 -163 -114t-217 -96v168q219 93 380 241h186v-1397h373v-155h-939v155h380z" />
|
||||||
|
<glyph unicode="½" horiz-adv-x="3687" d="M3546 0h-939v171q0 66 27 141.5t103 169.5t161 181l106 108q32 33 140 153t142.5 184t34.5 126q0 100 -80 154.5t-180 54.5q-57 0 -127.5 -13t-123.5 -30.5t-172 -71.5v165q126 60 252.5 82.5t208.5 22.5q121 0 222.5 -39.5t151 -122.5t49.5 -177q0 -105 -63.5 -215 t-239.5 -283l-114 -113l-96 -94q-91 -92 -147 -178t-62 -205h746v-171zM1395 -47h-164l1061 1645h165zM568 155v1198q-84 -67 -163 -114t-217 -96v168q219 93 380 241h186v-1397h373v-155h-939v155h380z" />
|
||||||
|
<glyph unicode="¾" horiz-adv-x="3687" d="M3165 0v434h-659v156l659 962h187v-962h287v-156h-287v-434h-187zM3165 590v680l-461 -680h461zM1395 -47h-164l1061 1645h165zM145 28v196q229 -116 397 -116q154 0 254.5 93.5t100.5 240.5q0 148 -110.5 241t-375.5 93h-103v155h143q195 0 282 87.5t87 194.5 q0 97 -71 163.5t-218 66.5q-165 0 -355 -93v177q190 71 348 71q283 0 390.5 -111.5t107.5 -254.5q0 -106 -57 -199t-210 -166q135 -40 204 -98t104.5 -137t35.5 -177q0 -218 -161.5 -360t-417.5 -142q-74 0 -161.5 11t-213.5 64z" />
|
||||||
|
<glyph unicode="¿" d="M828 659v-35q0 -82 -14 -137.5t-54 -115t-119 -143.5l-62 -67q-17 -18 -52 -61l-66 -83q-83 -104 -83 -180q0 -70 60 -124t194 -54q87 0 178 23t212 91v-179q-186 -91 -388 -91q-224 0 -341 92t-117 237q0 144 151 300l67 68l77 80l72 73q39 45 68.5 101.5t29.5 158.5v46 h187zM725 853q-59 0 -101 42.5t-42 101.5t42 101t101 42q58 0 101 -41.5t43 -101.5t-43 -102t-101 -42z" />
|
||||||
|
<glyph unicode="À" d="M227 0h-194l478 1552h205l481 -1552h-213l-106 341h-546zM380 496h453l-187 589l-44 156l-39 -156zM869 1722h-170l-342 326h216z" />
|
||||||
|
<glyph unicode="Á" d="M227 0h-194l478 1552h205l481 -1552h-213l-106 341h-546zM380 496h453l-187 589l-44 156l-39 -156zM357 1722l296 326h216l-342 -326h-170z" />
|
||||||
|
<glyph unicode="Â" d="M227 0h-194l478 1552h205l481 -1552h-213l-106 341h-546zM380 496h453l-187 589l-44 156l-39 -156zM615 1890l-140 -168h-155l233 326h124l233 -326h-156z" />
|
||||||
|
<glyph unicode="Ã" d="M227 0h-194l478 1552h205l481 -1552h-213l-106 341h-546zM380 496h453l-187 589l-44 156l-39 -156zM422 1722h-125q0 132 51.5 194t129.5 62q62 0 126 -40l42 -25q83 -52 116 -52q60 0 60 117h127q-6 -102 -27 -149t-64.5 -77.5t-95.5 -30.5q-65 0 -141 49l-44 28l-24 17 q-34 23 -65 23q-22 0 -44 -23t-22 -93z" />
|
||||||
|
<glyph unicode="Ä" d="M227 0h-194l478 1552h205l481 -1552h-213l-106 341h-546zM380 496h453l-187 589l-44 156l-39 -156zM397 1722q-51 0 -87.5 36t-36.5 88t37 88t87 36t87 -36t37 -88t-36.5 -88t-87.5 -36zM832 1722q-51 0 -88 36t-37 88t37.5 88t87.5 36t87 -36t37 -88t-37 -88t-87 -36z " />
|
||||||
|
<glyph unicode="Å" d="M716 1552l481 -1552h-213l-106 341h-546l-105 -341h-194l478 1552q-42 31 -63 69.5t-21 85.5q0 75 54.5 130.5t131.5 55.5t131.5 -55t54.5 -131q0 -46 -20.5 -85t-62.5 -70zM380 496h453l-187 589l-44 156l-39 -156zM520 1707q0 -38 27.5 -65.5t65.5 -27.5t65.5 27.5 t27.5 65.5t-27.5 65.5t-65.5 27.5t-65.5 -28t-27.5 -65z" />
|
||||||
|
<glyph unicode="Æ" d="M638 0v372h-314l-152 -372h-170l636 1552h543v-156h-357v-535h342v-155h-342v-535h357v-171h-543zM381 512h257v622z" />
|
||||||
|
<glyph unicode="Ç" d="M1088 1534v-184q-161 93 -320 93q-120 0 -219.5 -82t-160.5 -240.5t-61 -344.5q0 -189 63 -349t161 -239.5t217 -79.5q158 0 320 93v-183q-128 -46 -192 -56.5t-144 -10.5l-45 -82q107 -21 140 -65.5t33 -92.5q0 -55 -44 -100.5t-138 -45.5q-83 0 -159 28v89 q58 -31 119 -31q35 0 63 21t28 44q0 68 -186 87l88 160q-194 49 -309.5 164.5t-169.5 269t-54 357.5q0 403 187.5 624t470.5 221q138 0 312 -65z" />
|
||||||
|
<glyph unicode="È" d="M1041 171v-171h-838v1552h822v-156h-620v-527h558v-155h-558v-543h636zM879 1722h-170l-342 326h216z" />
|
||||||
|
<glyph unicode="É" d="M1041 171v-171h-838v1552h822v-156h-620v-527h558v-155h-558v-543h636zM367 1722l296 326h216l-342 -326h-170z" />
|
||||||
|
<glyph unicode="Ê" d="M1041 171v-171h-838v1552h822v-156h-620v-527h558v-155h-558v-543h636zM615 1890l-140 -168h-155l233 326h124l233 -326h-156z" />
|
||||||
|
<glyph unicode="Ë" d="M1041 171v-171h-838v1552h822v-156h-620v-527h558v-155h-558v-543h636zM405 1722q-51 0 -87.5 36t-36.5 88t37 88t87 36t87 -36t37 -88t-36.5 -88t-87.5 -36zM840 1722q-51 0 -88 36t-37 88t37.5 88t87.5 36t87 -36t37 -88t-37 -88t-87 -36z" />
|
||||||
|
<glyph unicode="Ì" d="M172 0v155h341v1241h-341v156h884v-156h-341v-1241h341v-155h-884zM871 1722h-170l-342 326h216z" />
|
||||||
|
<glyph unicode="Í" d="M172 0v155h341v1241h-341v156h884v-156h-341v-1241h341v-155h-884zM359 1722l296 326h216l-342 -326h-170z" />
|
||||||
|
<glyph unicode="Î" d="M172 0v155h341v1241h-341v156h884v-156h-341v-1241h341v-155h-884zM615 1890l-140 -168h-155l233 326h124l233 -326h-156z" />
|
||||||
|
<glyph unicode="Ï" d="M172 0v155h341v1241h-341v156h884v-156h-341v-1241h341v-155h-884zM397 1722q-51 0 -87.5 36t-36.5 88t37 88t87 36t87 -36t37 -88t-36.5 -88t-87.5 -36zM832 1722q-51 0 -88 36t-37 88t37.5 88t87.5 36t87 -36t37 -88t-37 -88t-87 -36z" />
|
||||||
|
<glyph unicode="Ñ" d="M312 0h-186v1552h182l549 -1033l60 -154h5l-5 154v1033h186v-1552h-186l-534 1016l-75 163l4 -161v-1018zM422 1722h-125q0 132 51.5 194t129.5 62q62 0 126 -40l42 -25q83 -52 116 -52q60 0 60 117h127q-6 -102 -27 -149t-64.5 -77.5t-95.5 -30.5q-65 0 -141 49l-44 28 l-24 17q-34 23 -65 23q-22 0 -44 -23t-22 -93z" />
|
||||||
|
<glyph unicode="Ò" d="M614 -47q-264 0 -403.5 222.5t-139.5 600.5q0 377 139.5 599.5t403.5 222.5q265 0 404 -222.5t139 -599.5q0 -378 -139 -600.5t-404 -222.5zM614 109q146 0 243.5 165.5t97.5 501.5t-97.5 501.5t-243.5 165.5t-243.5 -165.5t-97.5 -501.5t97.5 -501.5t243.5 -165.5z M871 1722h-170l-342 326h216z" />
|
||||||
|
<glyph unicode="Ó" d="M614 -47q-264 0 -403.5 222.5t-139.5 600.5q0 377 139.5 599.5t403.5 222.5q265 0 404 -222.5t139 -599.5q0 -378 -139 -600.5t-404 -222.5zM614 109q146 0 243.5 165.5t97.5 501.5t-97.5 501.5t-243.5 165.5t-243.5 -165.5t-97.5 -501.5t97.5 -501.5t243.5 -165.5z M359 1722l296 326h216l-342 -326h-170z" />
|
||||||
|
<glyph unicode="Ô" d="M614 -47q-264 0 -403.5 222.5t-139.5 600.5q0 377 139.5 599.5t403.5 222.5q265 0 404 -222.5t139 -599.5q0 -378 -139 -600.5t-404 -222.5zM614 109q146 0 243.5 165.5t97.5 501.5t-97.5 501.5t-243.5 165.5t-243.5 -165.5t-97.5 -501.5t97.5 -501.5t243.5 -165.5z M615 1890l-140 -168h-155l233 326h124l233 -326h-156z" />
|
||||||
|
<glyph unicode="Õ" d="M614 -47q-264 0 -403.5 222.5t-139.5 600.5q0 377 139.5 599.5t403.5 222.5q265 0 404 -222.5t139 -599.5q0 -378 -139 -600.5t-404 -222.5zM614 109q146 0 243.5 165.5t97.5 501.5t-97.5 501.5t-243.5 165.5t-243.5 -165.5t-97.5 -501.5t97.5 -501.5t243.5 -165.5z M414 1722h-125q0 132 51.5 194t129.5 62q62 0 126 -40l42 -25q83 -52 116 -52q60 0 60 117h127q-6 -102 -27 -149t-64.5 -77.5t-95.5 -30.5q-65 0 -141 49l-44 28l-24 17q-34 23 -65 23q-22 0 -44 -23t-22 -93z" />
|
||||||
|
<glyph unicode="Ö" d="M614 -47q-264 0 -403.5 222.5t-139.5 600.5q0 377 139.5 599.5t403.5 222.5q265 0 404 -222.5t139 -599.5q0 -378 -139 -600.5t-404 -222.5zM614 109q146 0 243.5 165.5t97.5 501.5t-97.5 501.5t-243.5 165.5t-243.5 -165.5t-97.5 -501.5t97.5 -501.5t243.5 -165.5z M397 1722q-51 0 -87.5 36t-36.5 88t37 88t87 36t87 -36t37 -88t-36.5 -88t-87.5 -36zM832 1722q-51 0 -88 36t-37 88t37.5 88t87.5 36t87 -36t37 -88t-37 -88t-87 -36z" />
|
||||||
|
<glyph unicode="Ø" d="M209 -109h-138l148 276q-63 100 -90 189.5t-42.5 198.5t-15.5 230q0 398 147.5 605.5t390.5 207.5q54 0 111.5 -11.5t102.5 -30.5t108 -68l93 172h133l-142 -273q61 -103 87 -185t40.5 -201.5t14.5 -235.5q0 -249 -66.5 -436t-180 -281.5t-306.5 -94.5q-82 0 -143.5 19 t-154.5 97zM321 360l525 969q-62 73 -119.5 93.5t-112.5 20.5q-154 0 -247.5 -174.5t-93.5 -479.5q0 -48 3 -146q3 -99 11.5 -150t33.5 -133zM911 1195l-521 -970q53 -66 108.5 -91t110.5 -25q174 0 260 184.5t86 483.5q0 52 -3 138t-10.5 140.5t-30.5 139.5z" />
|
||||||
|
<glyph unicode="Ù" d="M126 1552h202v-1019q0 -201 33.5 -274.5t103 -112t154.5 -38.5q90 0 160.5 41.5t104 130t33.5 332.5v940h186v-1013q0 -217 -64.5 -339.5t-168.5 -184.5t-262 -62q-146 0 -257 54t-168 162t-57 390v993zM871 1722h-170l-342 326h216z" />
|
||||||
|
<glyph unicode="Ú" d="M126 1552h202v-1019q0 -201 33.5 -274.5t103 -112t154.5 -38.5q90 0 160.5 41.5t104 130t33.5 332.5v940h186v-1013q0 -217 -64.5 -339.5t-168.5 -184.5t-262 -62q-146 0 -257 54t-168 162t-57 390v993zM359 1722l296 326h216l-342 -326h-170z" />
|
||||||
|
<glyph unicode="Û" d="M126 1552h202v-1019q0 -201 33.5 -274.5t103 -112t154.5 -38.5q90 0 160.5 41.5t104 130t33.5 332.5v940h186v-1013q0 -217 -64.5 -339.5t-168.5 -184.5t-262 -62q-146 0 -257 54t-168 162t-57 390v993zM615 1890l-140 -168h-155l233 326h124l233 -326h-156z" />
|
||||||
|
<glyph unicode="Ü" d="M126 1552h202v-1019q0 -201 33.5 -274.5t103 -112t154.5 -38.5q90 0 160.5 41.5t104 130t33.5 332.5v940h186v-1013q0 -217 -64.5 -339.5t-168.5 -184.5t-262 -62q-146 0 -257 54t-168 162t-57 390v993zM397 1722q-51 0 -87.5 36t-36.5 88t37 88t87 36t87 -36t37 -88 t-36.5 -88t-87.5 -36zM832 1722q-51 0 -88 36t-37 88t37.5 88t87.5 36t87 -36t37 -88t-37 -88t-87 -36z" />
|
||||||
|
<glyph unicode="Ý" d="M530 1720l296 326h216l-342 -326h-170zM514 0v718l-462 834h229l345 -616l344 616h207l-461 -834v-718h-202z" />
|
||||||
|
<glyph unicode="ß" d="M130 0v1122q0 198 57.5 303.5t161 162.5t249.5 57q191 0 276.5 -89.5t85.5 -187.5q0 -62 -35 -121.5t-138 -148.5l-68 -58q-20 -17 -60 -55.5t-40 -78.5q0 -28 12 -48t71 -63l64 -47l126 -87q106 -72 176.5 -157t70.5 -200q0 -146 -113 -240.5t-289 -94.5q-38 0 -91 3.5 t-82.5 7.5t-84.5 20v185q60 -26 102 -36.5t84 -17.5t70 -7q50 0 105 18t83.5 58.5t28.5 82.5q0 62 -48.5 122t-162.5 136l-120 80q-92 62 -144 121.5t-52 133.5q0 55 29.5 108t130.5 146l59 55q48 44 81 87.5t33 90.5q0 65 -62 95.5t-122 30.5q-69 0 -127.5 -33.5 t-94.5 -102t-36 -231.5v-1122h-186z" />
|
||||||
|
<glyph unicode="à" d="M889 251q-85 -140 -204.5 -211t-219.5 -71q-140 0 -251.5 121t-111.5 367q0 194 74 346.5t198 241t307 88.5q53 0 160 -11q16 -2 48 -5h187v-789q0 -202 42 -328h-194q-22 92 -35 251zM889 472v479q-99 26 -184 26q-172 0 -286.5 -133t-114.5 -362q0 -166 62.5 -250.5 t142.5 -84.5q87 0 192 88t188 237zM898 1288h-170l-342 326h216z" />
|
||||||
|
<glyph unicode="á" d="M889 251q-85 -140 -204.5 -211t-219.5 -71q-140 0 -251.5 121t-111.5 367q0 194 74 346.5t198 241t307 88.5q53 0 160 -11q16 -2 48 -5h187v-789q0 -202 42 -328h-194q-22 92 -35 251zM889 472v479q-99 26 -184 26q-172 0 -286.5 -133t-114.5 -362q0 -166 62.5 -250.5 t142.5 -84.5q87 0 192 88t188 237zM480 1288l296 326h216l-342 -326h-170z" />
|
||||||
|
<glyph unicode="â" d="M889 251q-85 -140 -204.5 -211t-219.5 -71q-140 0 -251.5 121t-111.5 367q0 194 74 346.5t198 241t307 88.5q53 0 160 -11q16 -2 48 -5h187v-789q0 -202 42 -328h-194q-22 92 -35 251zM889 472v479q-99 26 -184 26q-172 0 -286.5 -133t-114.5 -362q0 -166 62.5 -250.5 t142.5 -84.5q87 0 192 88t188 237zM703 1456l-140 -168h-155l233 326h124l233 -326h-156z" />
|
||||||
|
<glyph unicode="ã" d="M889 251q-85 -140 -204.5 -211t-219.5 -71q-140 0 -251.5 121t-111.5 367q0 194 74 346.5t198 241t307 88.5q53 0 160 -11q16 -2 48 -5h187v-789q0 -202 42 -328h-194q-22 92 -35 251zM889 472v479q-99 26 -184 26q-172 0 -286.5 -133t-114.5 -362q0 -166 62.5 -250.5 t142.5 -84.5q87 0 192 88t188 237zM457 1288h-125q0 132 51.5 194t129.5 62q62 0 126 -40l42 -25q83 -52 116 -52q60 0 60 117h127q-6 -102 -27 -149t-64.5 -77.5t-95.5 -30.5q-65 0 -141 49l-44 28l-24 17q-34 23 -65 23q-22 0 -44 -23t-22 -93z" />
|
||||||
|
<glyph unicode="ä" d="M889 251q-85 -140 -204.5 -211t-219.5 -71q-140 0 -251.5 121t-111.5 367q0 194 74 346.5t198 241t307 88.5q53 0 160 -11q16 -2 48 -5h187v-789q0 -202 42 -328h-194q-22 92 -35 251zM889 472v479q-99 26 -184 26q-172 0 -286.5 -133t-114.5 -362q0 -166 62.5 -250.5 t142.5 -84.5q87 0 192 88t188 237zM454 1288q-51 0 -87.5 36t-36.5 88t37 88t87 36t87 -36t37 -88t-36.5 -88t-87.5 -36zM889 1288q-51 0 -88 36t-37 88t37.5 88t87.5 36t87 -36t37 -88t-37 -88t-87 -36z" />
|
||||||
|
<glyph unicode="å" d="M889 251q-85 -140 -204.5 -211t-219.5 -71q-140 0 -251.5 121t-111.5 367q0 194 74 346.5t198 241t307 88.5q53 0 160 -11q16 -2 48 -5h187v-789q0 -202 42 -328h-194q-22 92 -35 251zM889 472v479q-99 26 -184 26q-172 0 -286.5 -133t-114.5 -362q0 -166 62.5 -250.5 t142.5 -84.5q87 0 192 88t188 237zM657 1381q39 0 66 27.5t27 65.5t-27 65.5t-66 27.5q-38 0 -65.5 -27.5t-27.5 -65.5t27.5 -65.5t65.5 -27.5zM657 1288q-78 0 -132 56t-54 130q0 75 54.5 130.5t131.5 55.5q78 0 132 -55.5t54 -130.5q0 -74 -54 -130t-132 -56z" />
|
||||||
|
<glyph unicode="æ" d="M592 226q-52 -130 -120 -193.5t-132 -63.5q-112 0 -194 144t-82 370q0 200 55.5 349.5t148 232.5t198.5 83q35 0 74.5 -7.5t71 -19t79.5 -44.5q73 54 113 62.5t71 8.5q127 0 209 -113.5t82 -449.5v-50h-404v-83q0 -148 22.5 -208.5t64.5 -90t94 -29.5q101 0 223 79v-170 q-141 -64 -254 -64q-74 0 -136 25.5t-107.5 76.5t-76.5 155zM576 470v489q-24 17 -47 25.5t-45 8.5q-117 0 -175.5 -165t-58.5 -365q0 -118 33 -203q32 -82 80 -82h4q105 7 209 292zM762 667h217v32q0 176 -27 235t-79 59q-55 0 -83 -73.5t-28 -220.5v-32z" />
|
||||||
|
<glyph unicode="ç" d="M702 -131q108 -21 141 -65.5t33 -92.5q0 -55 -44.5 -100.5t-137.5 -45.5q-83 0 -159 28v89q58 -31 118 -31q36 0 63.5 21t27.5 44q0 68 -185 87l93 169q-165 28 -272 112t-161.5 196.5t-54.5 266.5q0 272 169 436.5t396 164.5q173 0 366 -65v-179q-195 89 -349 89 q-102 0 -192 -50.5t-139 -157.5t-49 -220q0 -151 94.5 -288t296.5 -137q61 0 120 8.5t218 62.5v-179q-156 -56 -338 -66z" />
|
||||||
|
<glyph unicode="è" d="M1084 74q-223 -106 -422 -106q-151 0 -270 75t-190.5 214.5t-71.5 298.5q0 153 68 294t190 219.5t272 78.5q199 0 319.5 -142t120.5 -438v-40h-770q0 -116 48.5 -212t127.5 -144t180 -48q180 0 398 120v-170zM341 667h557v27q0 137 -67 218t-179 81q-113 0 -195.5 -82.5 t-115.5 -243.5zM910 1288h-170l-342 326h216z" />
|
||||||
|
<glyph unicode="é" d="M1084 74q-223 -106 -422 -106q-151 0 -270 75t-190.5 214.5t-71.5 298.5q0 153 68 294t190 219.5t272 78.5q199 0 319.5 -142t120.5 -438v-40h-770q0 -116 48.5 -212t127.5 -144t180 -48q180 0 398 120v-170zM341 667h557v27q0 137 -67 218t-179 81q-113 0 -195.5 -82.5 t-115.5 -243.5zM445 1288l296 326h216l-342 -326h-170z" />
|
||||||
|
<glyph unicode="ê" d="M1084 74q-223 -106 -422 -106q-151 0 -270 75t-190.5 214.5t-71.5 298.5q0 153 68 294t190 219.5t272 78.5q199 0 319.5 -142t120.5 -438v-40h-770q0 -116 48.5 -212t127.5 -144t180 -48q180 0 398 120v-170zM341 667h557v27q0 137 -67 218t-179 81q-113 0 -195.5 -82.5 t-115.5 -243.5zM654 1456l-140 -168h-155l233 326h124l233 -326h-156z" />
|
||||||
|
<glyph unicode="ë" d="M1084 74q-223 -106 -422 -106q-151 0 -270 75t-190.5 214.5t-71.5 298.5q0 153 68 294t190 219.5t272 78.5q199 0 319.5 -142t120.5 -438v-40h-770q0 -116 48.5 -212t127.5 -144t180 -48q180 0 398 120v-170zM341 667h557v27q0 137 -67 218t-179 81q-113 0 -195.5 -82.5 t-115.5 -243.5zM450 1288q-51 0 -87.5 36t-36.5 88t37 88t87 36t87 -36t37 -88t-36.5 -88t-87.5 -36zM885 1288q-51 0 -88 36t-37 88t37.5 88t87.5 36t87 -36t37 -88t-37 -88t-87 -36z" />
|
||||||
|
<glyph unicode="ì" d="M467 0v962h-310v155h496v-962h311v-155h-497zM816 1288h-170l-342 326h216z" />
|
||||||
|
<glyph unicode="í" d="M467 0v962h-310v155h496v-962h311v-155h-497zM304 1288l296 326h216l-342 -326h-170z" />
|
||||||
|
<glyph unicode="î" d="M467 0v962h-310v155h496v-962h311v-155h-497zM562 1456l-140 -168h-155l233 326h124l233 -326h-156z" />
|
||||||
|
<glyph unicode="ï" d="M467 0v962h-310v155h496v-962h311v-155h-497zM344 1288q-51 0 -87.5 36t-36.5 88t37 88t87 36t87 -36t37 -88t-36.5 -88t-87.5 -36zM779 1288q-51 0 -88 36t-37 88t37.5 88t87.5 36t87 -36t37 -88t-37 -88t-87 -36z" />
|
||||||
|
<glyph unicode="ñ" d="M157 0v1117h186v-244q80 129 193 202t226 73q99 0 180 -52.5t113.5 -137.5t32.5 -334v-624h-186v647q0 161 -15.5 212.5t-57 84.5t-90.5 33q-98 0 -210.5 -93t-185.5 -233v-651h-186zM430 1288h-125q0 132 51.5 194t129.5 62q62 0 126 -40l42 -25q83 -52 116 -52 q60 0 60 117h127q-6 -102 -27 -149t-64.5 -77.5t-95.5 -30.5q-65 0 -141 49l-44 28l-24 17q-34 23 -65 23q-22 0 -44 -23t-22 -93z" />
|
||||||
|
<glyph unicode="ò" d="M615 -31q-240 0 -384 167.5t-144 422.5t144 422t384 167q239 0 383 -167t144 -422t-144 -422.5t-383 -167.5zM615 124q149 0 237 116t88 319q0 202 -88 318t-237 116q-150 0 -238 -116t-88 -318q0 -203 88 -319t238 -116zM871 1288h-170l-342 326h216z" />
|
||||||
|
<glyph unicode="ó" d="M615 -31q-240 0 -384 167.5t-144 422.5t144 422t384 167q239 0 383 -167t144 -422t-144 -422.5t-383 -167.5zM615 124q149 0 237 116t88 319q0 202 -88 318t-237 116q-150 0 -238 -116t-88 -318q0 -203 88 -319t238 -116zM359 1288l296 326h216l-342 -326h-170z" />
|
||||||
|
<glyph unicode="ô" d="M615 -31q-240 0 -384 167.5t-144 422.5t144 422t384 167q239 0 383 -167t144 -422t-144 -422.5t-383 -167.5zM615 124q149 0 237 116t88 319q0 202 -88 318t-237 116q-150 0 -238 -116t-88 -318q0 -203 88 -319t238 -116zM615 1456l-140 -168h-155l233 326h124l233 -326 h-156z" />
|
||||||
|
<glyph unicode="õ" d="M615 -31q-240 0 -384 167.5t-144 422.5t144 422t384 167q239 0 383 -167t144 -422t-144 -422.5t-383 -167.5zM615 124q149 0 237 116t88 319q0 202 -88 318t-237 116q-150 0 -238 -116t-88 -318q0 -203 88 -319t238 -116zM414 1288h-125q0 132 51.5 194t129.5 62 q62 0 126 -40l42 -25q83 -52 116 -52q60 0 60 117h127q-6 -102 -27 -149t-64.5 -77.5t-95.5 -30.5q-65 0 -141 49l-44 28l-24 17q-34 23 -65 23q-22 0 -44 -23t-22 -93z" />
|
||||||
|
<glyph unicode="ö" d="M615 -31q-240 0 -384 167.5t-144 422.5t144 422t384 167q239 0 383 -167t144 -422t-144 -422.5t-383 -167.5zM615 124q149 0 237 116t88 319q0 202 -88 318t-237 116q-150 0 -238 -116t-88 -318q0 -203 88 -319t238 -116zM397 1288q-51 0 -87.5 36t-36.5 88t37 88t87 36 t87 -36t37 -88t-36.5 -88t-87.5 -36zM832 1288q-51 0 -88 36t-37 88t37.5 88t87.5 36t87 -36t37 -88t-37 -88t-87 -36z" />
|
||||||
|
<glyph unicode="÷" d="M614 776q-57 0 -100 43t-43 100q0 58 43 101t100 43t100.5 -43t43.5 -101q0 -57 -43.5 -100t-100.5 -43zM1157 621v-156h-1086v156h1086zM614 23q-57 0 -100 43t-43 101t43 100.5t100 42.5t100.5 -42.5t43.5 -100.5t-43.5 -101t-100.5 -43z" />
|
||||||
|
<glyph unicode="ø" d="M236 -93h-149l150 221q-150 189 -150 436q0 243 135 413.5t391 170.5q50 0 100 -7t89.5 -20t95.5 -46l94 135h150l-149 -215q149 -193 149 -436q0 -237 -132 -413.5t-396 -176.5q-63 0 -123.5 10.5t-158.5 64.5zM341 280l464 663q-89 50 -190 50q-159 0 -242.5 -115.5 t-83.5 -313.5q0 -150 52 -284zM889 845l-465 -668q96 -53 181 -53q183 0 259 122.5t76 307.5q0 160 -51 291z" />
|
||||||
|
<glyph unicode="ù" d="M1074 1117v-1117h-186v245q-90 -138 -200 -207t-220 -69q-98 0 -179.5 52.5t-113.5 138t-32 333.5v624h186v-647q0 -161 15.5 -212.5t57 -84.5t89.5 -33q98 0 210.5 92.5t186.5 233.5v651h186zM873 1288h-170l-342 326h216z" />
|
||||||
|
<glyph unicode="ú" d="M1074 1117v-1117h-186v245q-90 -138 -200 -207t-220 -69q-98 0 -179.5 52.5t-113.5 138t-32 333.5v624h186v-647q0 -161 15.5 -212.5t57 -84.5t89.5 -33q98 0 210.5 92.5t186.5 233.5v651h186zM406 1288l296 326h216l-342 -326h-170z" />
|
||||||
|
<glyph unicode="û" d="M1074 1117v-1117h-186v245q-90 -138 -200 -207t-220 -69q-98 0 -179.5 52.5t-113.5 138t-32 333.5v624h186v-647q0 -161 15.5 -212.5t57 -84.5t89.5 -33q98 0 210.5 92.5t186.5 233.5v651h186zM617 1456l-140 -168h-155l233 326h124l233 -326h-156z" />
|
||||||
|
<glyph unicode="ü" d="M1074 1117v-1117h-186v245q-90 -138 -200 -207t-220 -69q-98 0 -179.5 52.5t-113.5 138t-32 333.5v624h186v-647q0 -161 15.5 -212.5t57 -84.5t89.5 -33q98 0 210.5 92.5t186.5 233.5v651h186zM399 1288q-51 0 -87.5 36t-36.5 88t37 88t87 36t87 -36t37 -88t-36.5 -88 t-87.5 -36zM834 1288q-51 0 -88 36t-37 88t37.5 88t87.5 36t87 -36t37 -88t-37 -88t-87 -36z" />
|
||||||
|
<glyph unicode="ý" d="M538 1270l296 326h216l-342 -326h-170zM566 45l-516 1072h205l411 -838l344 838h187l-433 -1038q-137 -329 -260.5 -437t-319.5 -108q-85 0 -152 15v164q77 -24 147 -24q90 0 160 35t128 124t82 154z" />
|
||||||
|
<glyph unicode="ÿ" d="M582 45l-516 1072h205l411 -838l344 838h187l-433 -1038q-137 -329 -260.5 -437t-319.5 -108q-85 0 -152 15v164q77 -24 147 -24q90 0 160 35t128 124t82 154zM444 1288q-51 0 -87.5 36t-36.5 88t37 88t87 36t87 -36t37 -88t-36.5 -88t-87.5 -36zM879 1288q-51 0 -88 36 t-37 88t37.5 88t87.5 36t87 -36t37 -88t-37 -88t-87 -36z" />
|
||||||
|
<glyph unicode="ı" d="M467 0v962h-310v155h496v-962h311v-155h-497z" />
|
||||||
|
<glyph unicode="Œ" d="M1184 0h-551v39q-68 -60 -103.5 -65.5t-53.5 -5.5q-115 0 -221.5 94t-162.5 293.5t-56 439.5q0 252 61.5 438.5t164.5 268t217 81.5q33 0 68 -10t86 -60v39h536v-156h-349v-535h333v-155h-333v-535h364v-171zM633 521v501q0 265 -37.5 335.5t-109.5 70.5 q-131 0 -189.5 -184.5t-58.5 -463.5q0 -248 55.5 -452t196.5 -204q70 0 106.5 70.5t36.5 326.5z" />
|
||||||
|
<glyph unicode="œ" d="M625 135q-59 -111 -124.5 -138.5t-119.5 -27.5q-88 0 -159 63t-113 208.5t-42 329.5q0 217 76.5 397.5t258.5 180.5q80 0 139 -41.5t98 -124.5q44 83 103 124.5t133 41.5q119 0 202.5 -112.5t83.5 -438.5v-62h-404v-61q0 -178 24.5 -236.5t67 -86t92.5 -27.5 q103 0 220 78v-173q-141 -60 -251 -60q-85 0 -155.5 32.5t-129.5 133.5zM571 493v102q0 127 -6.5 178t-24.5 101.5t-52 86.5q-32 32 -70 32h-6q-85 -5 -126 -129t-41 -320q0 -166 39.5 -293t131.5 -127q67 0 111 86t44 283zM757 667h218v33q0 185 -30 239t-77 54 q-48 0 -79.5 -69.5t-31.5 -222.5v-34z" />
|
||||||
|
<glyph unicode="Ÿ" d="M514 0v718l-462 834h229l345 -616l344 616h207l-461 -834v-718h-202zM397 1722q-51 0 -87.5 36t-36.5 88t37 88t87 36t87 -36t37 -88t-36.5 -88t-87.5 -36zM832 1722q-51 0 -88 36t-37 88t37.5 88t87.5 36t87 -36t37 -88t-37 -88t-87 -36z" />
|
||||||
|
<glyph unicode="ˆ" d="M615 1456l-140 -168h-155l233 326h124l233 -326h-156z" />
|
||||||
|
<glyph unicode="˚" d="M614 1381q39 0 66 27.5t27 65.5t-27 65.5t-66 27.5q-38 0 -65.5 -27.5t-27.5 -65.5t27.5 -65.5t65.5 -27.5zM614 1288q-78 0 -132 56t-54 130q0 75 54.5 130.5t131.5 55.5q78 0 132 -55.5t54 -130.5q0 -74 -54 -130t-132 -56z" />
|
||||||
|
<glyph unicode="˜" d="M414 1288h-125q0 132 51.5 194t129.5 62q62 0 126 -40l42 -25q83 -52 116 -52q60 0 60 117h127q-6 -102 -27 -149t-64.5 -77.5t-95.5 -30.5q-65 0 -141 49l-44 28l-24 17q-34 23 -65 23q-22 0 -44 -23t-22 -93z" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="1024" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="2048" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="1024" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="2048" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="682" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="512" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="341" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="341" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="256" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="409" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="113" />
|
||||||
|
<glyph unicode="‐" d="M227 551v155h776v-155h-776z" />
|
||||||
|
<glyph unicode="‑" d="M227 551v155h776v-155h-776z" />
|
||||||
|
<glyph unicode="‒" d="M227 551v155h776v-155h-776z" />
|
||||||
|
<glyph unicode="–" d="M71 528v155h1086v-155h-1086z" />
|
||||||
|
<glyph unicode="—" d="M71 528v124h1086v-124h-1086z" />
|
||||||
|
<glyph unicode="‘" d="M804 1645v-125q-72 -19 -109.5 -54t-60 -89.5t-22.5 -132.5q93 0 137 -52.5t44 -111.5q0 -70 -49 -117.5t-114 -47.5q-84 0 -145 72.5t-61 198.5q0 111 48 208t130.5 166t201.5 85z" />
|
||||||
|
<glyph unicode="’" d="M424 915v125q72 19 109.5 54t60 89.5t22.5 132.5q-93 0 -137 52.5t-44 111.5q0 70 49 117.5t114 47.5q84 0 145 -72.5t61 -198.5q0 -111 -48 -208t-130.5 -166t-201.5 -85z" />
|
||||||
|
<glyph unicode="‚" d="M424 -434v124q72 19 109.5 54.5t57 82.5t25.5 139q-93 0 -137 52.5t-44 112.5q0 69 49 116.5t114 47.5q84 0 145 -72.5t61 -198.5q0 -110 -48 -207.5t-130.5 -166.5t-201.5 -84z" />
|
||||||
|
<glyph unicode="“" d="M1049 1645v-125q-72 -19 -109.5 -54t-60 -89.5t-22.5 -132.5q92 0 136.5 -52.5t44.5 -111.5q0 -70 -49 -117.5t-114 -47.5q-85 0 -145.5 72.5t-60.5 198.5q0 111 48 208t130.5 166t201.5 85zM560 1645v-125q-72 -19 -109.5 -54t-60 -89.5t-22.5 -132.5q93 0 137 -52.5 t44 -111.5q0 -70 -49 -117.5t-114 -47.5q-84 0 -145 72.5t-61 198.5q0 111 48 208t130.5 166t201.5 85z" />
|
||||||
|
<glyph unicode="”" d="M180 915v125q72 19 109.5 54t60 89.5t22.5 132.5q-93 0 -137 52.5t-44 111.5q0 70 49 117.5t114 47.5q84 0 145 -72.5t61 -198.5q0 -111 -48 -208t-130.5 -166t-201.5 -85zM669 915v125q71 19 109 54t60.5 89.5t22.5 132.5q-93 0 -137 52.5t-44 111.5q0 70 48.5 117.5 t113.5 47.5q85 0 146 -72.5t61 -198.5q0 -111 -48 -208t-130.5 -166t-201.5 -85z" />
|
||||||
|
<glyph unicode="„" d="M180 -434v124q72 19 109.5 54.5t57 82.5t25.5 139q-93 0 -137 52.5t-44 112.5q0 69 49 116.5t114 47.5q84 0 145 -72.5t61 -198.5q0 -110 -48 -207.5t-130.5 -166.5t-201.5 -84zM669 -434v124q71 19 109 54.5t57.5 82.5t25.5 139q-93 0 -137 52.5t-44 112.5 q0 69 48.5 116.5t113.5 47.5q85 0 146 -72.5t61 -198.5q0 -110 -48 -207.5t-130.5 -166.5t-201.5 -84z" />
|
||||||
|
<glyph unicode="•" d="M615 341q-113 0 -211 55t-157 155t-59 217q0 114 57 213.5t157 156.5t213 57q112 0 212 -57t157 -156.5t57 -213.5q0 -117 -59 -217t-157 -155t-210 -55z" />
|
||||||
|
<glyph unicode="…" d="M205 -47q-57 0 -100.5 43t-43.5 101t43.5 100.5t100.5 42.5q56 0 99.5 -42.5t43.5 -100.5t-43.5 -101t-99.5 -43zM614 -47q-57 0 -100 43t-43 101t43 100.5t100 42.5t100.5 -42.5t43.5 -100.5t-43.5 -101t-100.5 -43zM1024 -47q-57 0 -100.5 43t-43.5 101t43.5 100.5 t100.5 42.5t100 -42.5t43 -100.5t-43 -101t-100 -43z" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="409" />
|
||||||
|
<glyph unicode="‹" d="M331 484v160l501 473l112 -118l-429 -438l429 -446l-112 -115z" />
|
||||||
|
<glyph unicode="›" d="M898 633v-160l-501 -473l-112 118l429 438l-429 446l112 115z" />
|
||||||
|
<glyph unicode="⁄" d="M166 -47h-164l1061 1645h165z" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="512" />
|
||||||
|
<glyph unicode="™" d="M225 776v663h-223v113h575v-113h-224v-663h-128zM744 1254v-478h-106v776h125l170 -464l172 464h123v-776h-121v477l-121 -328h-119z" />
|
||||||
|
<glyph unicode="" horiz-adv-x="1115" d="M0 1115h1115v-1115h-1115v1115z" />
|
||||||
|
<glyph unicode="fi" horiz-adv-x="2458" d="M1697 0v962h-310v155h496v-962h311v-155h-497zM1666 1520q0 63 43 94t81 31q39 0 82 -31t43 -94q0 -62 -43 -93t-82 -31q-38 0 -81 31t-43 93zM415 0v869h-248v155h248v52q0 221 50 327t154.5 174t276.5 68q130 0 264 -27v-177q-145 48 -257 48q-89 0 -157 -33 t-106.5 -107.5t-38.5 -252.5v-72h443v-155h-443v-869h-186z" />
|
||||||
|
<glyph unicode="fl" horiz-adv-x="2458" d="M1684 0v1458h-334v156h520v-1459h349v-155h-535zM415 0v869h-248v155h248v52q0 221 50 327t154.5 174t276.5 68q130 0 264 -27v-177q-145 48 -257 48q-89 0 -157 -33t-106.5 -107.5t-38.5 -252.5v-72h443v-155h-443v-869h-186z" />
|
||||||
|
<glyph unicode="ffi" horiz-adv-x="3687" d="M2926 0v962h-310v155h496v-962h311v-155h-497zM2895 1520q0 63 43 94t81 31q39 0 82 -31t43 -94q0 -62 -43 -93t-82 -31q-38 0 -81 31t-43 93zM1644 0v869h-248v155h248v52q0 221 50 327t154.5 174t276.5 68q130 0 264 -27v-177q-145 48 -257 48q-89 0 -157 -33 t-106.5 -107.5t-38.5 -252.5v-72h443v-155h-443v-869h-186zM415 0v869h-248v155h248v52q0 221 50 327t154.5 174t276.5 68q130 0 264 -27v-177q-145 48 -257 48q-89 0 -157 -33t-106.5 -107.5t-38.5 -252.5v-72h443v-155h-443v-869h-186z" />
|
||||||
|
<glyph unicode="ffl" horiz-adv-x="3687" d="M2913 0v1458h-334v156h520v-1459h349v-155h-535zM1644 0v869h-248v155h248v52q0 221 50 327t154.5 174t276.5 68q130 0 264 -27v-177q-145 48 -257 48q-89 0 -157 -33t-106.5 -107.5t-38.5 -252.5v-72h443v-155h-443v-869h-186zM415 0v869h-248v155h248v52q0 221 50 327 t154.5 174t276.5 68q130 0 264 -27v-177q-145 48 -257 48q-89 0 -157 -33t-106.5 -107.5t-38.5 -252.5v-72h443v-155h-443v-869h-186z" />
|
||||||
|
</font>
|
||||||
|
</defs></svg>
|
After Width: | Height: | Size: 52 KiB |
BIN
fonts/monaco/monaco-webfont.ttf
Normal file
BIN
fonts/monaco/monaco-webfont.woff
Normal file
3
fonts/monospace.css
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
.crayon-font-monospace * {
|
||||||
|
font-family: monospace !important;
|
||||||
|
}
|
14
fonts/sourcecodepro.css
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
@font-face {
|
||||||
|
font-family: 'source_code_proregular';
|
||||||
|
src: url('sourcecodepro/sourcecodepro-regular-webfont.eot');
|
||||||
|
src: url('sourcecodepro/sourcecodepro-regular-webfont.eot?#iefix') format('embedded-opentype'),
|
||||||
|
url('sourcecodepro/sourcecodepro-regular-webfont.woff') format('woff'),
|
||||||
|
url('sourcecodepro/sourcecodepro-regular-webfont.ttf') format('truetype'),
|
||||||
|
url('sourcecodepro/sourcecodepro-regular-webfont.svg#MonacoRegular') format('svg');
|
||||||
|
font-weight: normal;
|
||||||
|
font-style: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-font-sourcecodepro * {
|
||||||
|
font-family: Source Code Pro, 'source_code_proregular', Arial, sans-serif !important;
|
||||||
|
}
|
BIN
fonts/sourcecodepro/sourcecodepro-regular-webfont.eot
Normal file
241
fonts/sourcecodepro/sourcecodepro-regular-webfont.svg
Normal file
@ -0,0 +1,241 @@
|
|||||||
|
<?xml version="1.0" standalone="no"?>
|
||||||
|
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<metadata></metadata>
|
||||||
|
<defs>
|
||||||
|
<font id="source_code_proregular" horiz-adv-x="1228" >
|
||||||
|
<font-face units-per-em="2048" ascent="1536" descent="-512" />
|
||||||
|
<missing-glyph horiz-adv-x="500" />
|
||||||
|
<glyph horiz-adv-x="0" />
|
||||||
|
<glyph horiz-adv-x="682" />
|
||||||
|
<glyph unicode=" " />
|
||||||
|
<glyph unicode="!" d="M465 135q0 70 43 113t106 43t106.5 -43t43.5 -113q0 -72 -43.5 -116t-106.5 -44t-106 44t-43 116zM532 1372h164l-4 -192l-20 -705h-115l-20 705z" />
|
||||||
|
<glyph unicode=""" d="M266 1407h226l-5 -225l-51 -461h-114l-52 461zM737 1407h226l-5 -225l-51 -461h-114l-52 461z" />
|
||||||
|
<glyph unicode="#" d="M178 418v117h178l37 303h-174v118h189l47 375h108l-45 -375h270l48 375h108l-45 -375h164v-118h-178l-37 -303h174v-117h-188l-52 -418h-110l51 418h-270l-52 -418h-110l51 418h-164zM467 535h270l37 303h-270z" />
|
||||||
|
<glyph unicode="$" d="M174 231l80 117q192 -139 381 -139q118 0 183 49t65 129q0 45 -28 82.5t-73.5 63t-104 51.5t-119.5 47.5t-119.5 52.5t-104 65.5t-73.5 86.5t-28 116q0 128 90.5 211.5t241.5 98.5v270h123v-268q104 -8 180 -48t146 -108l-90 -98q-78 61 -142 88.5t-159 27.5 q-103 0 -164.5 -46t-61.5 -124q0 -45 36 -81.5t93.5 -62.5t127 -51t139 -56.5t127 -70t93.5 -99t36 -136.5q0 -131 -99.5 -219.5t-261.5 -105.5v-299h-123v297q-110 9 -213.5 52.5t-177.5 106.5z" />
|
||||||
|
<glyph unicode="%" d="M55 997q0 156 79 245t206 89t206 -89t79 -245q0 -157 -79 -248.5t-206 -91.5t-206 91.5t-79 248.5zM57 158l375 385l68 -62l-342 -415zM180 997q0 -115 45 -176t115 -61t115 61t45 176q0 117 -44.5 175.5t-115.5 58.5t-115.5 -58.5t-44.5 -175.5zM604 315q0 156 79 245 t206 89t206 -89t79 -245q0 -157 -79 -248.5t-206 -91.5t-206 91.5t-79 248.5zM729 315q0 -115 45 -176t115 -61t115 61t45 176q0 117 -44.5 175.5t-115.5 58.5t-115.5 -58.5t-44.5 -175.5zM729 862l342 416l100 -92l-374 -385z" />
|
||||||
|
<glyph unicode="&" d="M86 348q0 63 20 119.5t58 104.5t78 84t96 77q-90 175 -90 318q0 136 82 226.5t213 90.5q122 0 191 -72.5t69 -193.5q0 -36 -9.5 -71t-22 -62.5t-39 -60t-44.5 -52.5t-56 -52t-56.5 -47t-61.5 -48q129 -206 328 -377q111 159 170 393h155q-78 -282 -217 -481 q122 -94 232 -129l-47 -140q-136 42 -281 154q-161 -154 -367 -154q-178 0 -289.5 104.5t-111.5 268.5zM250 358q0 -110 74 -178.5t184 -68.5q123 0 235 106q-202 180 -342 401q-73 -64 -112 -126t-39 -134zM393 1053q0 -106 62 -236q67 48 108 84.5t72 89.5t31 109 q0 64 -30 105.5t-93 41.5q-69 0 -109.5 -54.5t-40.5 -139.5z" />
|
||||||
|
<glyph unicode="'" d="M502 1407h225l-4 -225l-51 -461h-115l-51 461z" />
|
||||||
|
<glyph unicode="(" d="M426 569q0 289 120.5 524t340.5 406l92 -86q-205 -173 -303 -379.5t-98 -464.5t98 -464t303 -379l-92 -86q-220 171 -340.5 405.5t-120.5 523.5z" />
|
||||||
|
<glyph unicode=")" d="M250 -274q205 173 303 379t98 464t-98 464.5t-303 379.5l92 86q220 -171 340.5 -406t120.5 -524t-120.5 -523.5t-340.5 -405.5z" />
|
||||||
|
<glyph unicode="*" d="M172 770l33 94l342 -112l18 387h99l18 -387l342 112l33 -94l-332 -143l221 -338l-86 -62l-246 326l-245 -326l-86 62l221 338z" />
|
||||||
|
<glyph unicode="+" d="M174 612v127h373v400h135v-400h373v-127h-373v-399h-135v399h-373z" />
|
||||||
|
<glyph unicode="," d="M403 -330q128 58 191.5 140t67.5 202q-12 -4 -39 -4q-69 0 -114.5 40t-45.5 114q0 72 47.5 113.5t116.5 41.5q89 0 136.5 -70t47.5 -192q0 -177 -94 -302t-266 -189z" />
|
||||||
|
<glyph unicode="-" d="M174 612v127h881v-127h-881z" />
|
||||||
|
<glyph unicode="." d="M449 147q0 77 47.5 126t117.5 49t118 -49t48 -126q0 -75 -48 -123.5t-118 -48.5t-117.5 48.5t-47.5 123.5z" />
|
||||||
|
<glyph unicode="/" d="M203 -328l671 1782h152l-672 -1782h-151z" />
|
||||||
|
<glyph unicode="0" d="M145 657q0 325 124 499.5t345 174.5t345 -174.5t124 -499.5q0 -324 -124.5 -503t-344.5 -179t-344.5 179t-124.5 503zM303 657q0 -271 84 -408.5t227 -137.5t227.5 137.5t84.5 408.5q0 272 -84.5 405.5t-227.5 133.5t-227 -133.5t-84 -405.5zM487 672q0 61 37 98t90 37 t90 -37t37 -98q0 -62 -37 -99.5t-90 -37.5t-90 37.5t-37 99.5z" />
|
||||||
|
<glyph unicode="1" d="M203 0v139h368v963h-280v108q190 27 323 97h125v-1168h340v-139h-876z" />
|
||||||
|
<glyph unicode="2" d="M141 1133q95 97 197.5 147.5t232.5 50.5q195 0 310.5 -105.5t115.5 -279.5q0 -60 -18.5 -121.5t-59.5 -127.5t-88 -127t-123 -138.5t-143.5 -141.5t-169.5 -157q164 12 244 12h430v-145h-919v100q127 112 206 184t166.5 157t137.5 144.5t94.5 124t63 119.5t18.5 109 q0 117 -72.5 186.5t-212.5 69.5q-162 0 -313 -158z" />
|
||||||
|
<glyph unicode="3" d="M117 160l86 110q163 -155 375 -155q136 0 224.5 66t88.5 173q0 260 -475 260v129q220 0 324 67t104 177q0 95 -72.5 151t-193.5 56q-175 0 -322 -133l-90 106q190 164 418 164q190 0 311 -89t121 -243q0 -113 -75 -191t-204 -120v-8q140 -30 232 -117t92 -215 q0 -112 -64.5 -198t-171 -130.5t-237.5 -44.5q-286 0 -471 185z" />
|
||||||
|
<glyph unicode="4" d="M80 360v113l653 834h180v-811h203v-136h-203v-360h-159v360h-674zM266 496h488v405q3 104 10 232h-10q-23 -36 -70.5 -102t-62.5 -89z" />
|
||||||
|
<glyph unicode="5" d="M115 154l84 110q77 -70 162.5 -109.5t205.5 -39.5q141 0 236.5 82.5t95.5 216.5t-86.5 210t-234.5 76q-76 0 -133.5 -18.5t-133.5 -60.5l-90 57l43 629h740v-146h-590l-35 -387q122 53 242 53q96 0 176 -24.5t141.5 -73.5t96 -128.5t34.5 -182.5q0 -136 -69.5 -239 t-177.5 -153.5t-236 -50.5q-159 0 -270 49t-201 130z" />
|
||||||
|
<glyph unicode="6" d="M158 604q0 153 29.5 276.5t80.5 206.5t121.5 138.5t149 80.5t166.5 25q215 0 364 -139l-94 -105q-111 103 -260 103q-65 0 -121.5 -17.5t-107.5 -59t-87.5 -105t-59 -160t-24.5 -219.5q81 80 178 125t193 45q187 0 297.5 -104t110.5 -300q0 -121 -60.5 -218.5 t-160 -149.5t-216.5 -52q-223 0 -361 162.5t-138 466.5zM322 496q19 -188 105.5 -287.5t229.5 -99.5q119 0 198 79.5t79 206.5q0 134 -72 205.5t-207 71.5q-84 0 -171.5 -43.5t-161.5 -132.5z" />
|
||||||
|
<glyph unicode="7" d="M143 1161v146h947v-105q-172 -196 -267.5 -377.5t-135 -368.5t-48.5 -456h-176q17 372 113.5 628.5t320.5 532.5h-754z" />
|
||||||
|
<glyph unicode="8" d="M139 334q0 215 281 348v8q-199 124 -199 305q0 149 114 242.5t290 93.5q189 0 297 -96.5t108 -251.5q0 -87 -55.5 -168.5t-143.5 -142.5v-8q60 -30 101 -58t79 -68t57 -93.5t19 -120.5q0 -151 -125.5 -250t-343.5 -99t-348.5 100.5t-130.5 258.5zM293 350 q0 -110 90.5 -180t239.5 -70q143 0 223 63t80 167q0 49 -20.5 88.5t-44 64.5t-81.5 53t-92.5 40.5t-118.5 40.5q-35 12 -53 18q-106 -59 -164.5 -126.5t-58.5 -158.5zM375 995q0 -56 25 -100t76.5 -77.5t106.5 -56t138 -48.5q164 121 164 262q0 101 -69.5 166t-194.5 65 q-109 0 -177.5 -58t-68.5 -153z" />
|
||||||
|
<glyph unicode="9" d="M137 911q0 121 60.5 218.5t159 149.5t214.5 52q108 0 199 -40t159 -116.5t106 -197.5t38 -275q0 -189 -45 -333t-123 -228t-173.5 -125t-205.5 -41q-212 0 -364 138l94 106q109 -104 260 -104q64 0 120 18t106.5 59.5t87 105t59 160t24.5 218.5q-81 -80 -176.5 -124 t-193.5 -44q-187 0 -296.5 103.5t-109.5 299.5zM297 911q0 -134 71 -205t207 -71q82 0 170 43t164 131q-20 191 -105.5 290t-230.5 99q-119 0 -197.5 -80t-78.5 -207z" />
|
||||||
|
<glyph unicode=":" d="M449 147q0 77 47.5 126t117.5 49t118 -49t48 -126q0 -75 -48 -123.5t-118 -48.5t-117.5 48.5t-47.5 123.5zM449 881q0 77 47.5 125.5t117.5 48.5t118 -48.5t48 -125.5q0 -75 -48 -123.5t-118 -48.5t-117.5 48.5t-47.5 123.5z" />
|
||||||
|
<glyph unicode=";" d="M403 -330q128 58 191.5 140t67.5 202q-12 -4 -39 -4q-69 0 -114.5 40t-45.5 114q0 72 47.5 113.5t116.5 41.5q89 0 136.5 -70t47.5 -192q0 -177 -94 -302t-266 -189zM449 881q0 77 47.5 125.5t117.5 48.5t118 -48.5t48 -125.5q0 -75 -48 -123.5t-118 -48.5t-117.5 48.5 t-47.5 123.5z" />
|
||||||
|
<glyph unicode="<" d="M246 616v127l764 519v-162l-617 -416v-8l617 -416v-162z" />
|
||||||
|
<glyph unicode="=" d="M174 393v127h881v-127h-881zM174 831v127h881v-127h-881z" />
|
||||||
|
<glyph unicode=">" d="M219 98v162l617 416v8l-617 416v162l764 -519v-127z" />
|
||||||
|
<glyph unicode="?" d="M223 1231q159 166 377 166q171 0 276 -87.5t105 -232.5q0 -56 -20.5 -106.5t-52.5 -88.5t-70.5 -74.5t-75.5 -72t-66.5 -73t-44 -85.5t-6.5 -102h-149q-10 60 2 113.5t39.5 94.5t63 78.5t73.5 72.5t69.5 68.5t51.5 74t20 82.5q0 88 -58 143t-167 55q-148 0 -266 -118z M436 135q0 70 43.5 113t106.5 43t106 -43t43 -113q0 -72 -43 -116t-106 -44t-106.5 44t-43.5 116z" />
|
||||||
|
<glyph unicode="@" d="M100 512q0 191 46.5 342.5t128 248t190.5 147t237 50.5q137 0 232.5 -65t139.5 -173t44 -249v-608h-102l-15 119h-8q-47 -61 -120.5 -102.5t-149.5 -41.5q-112 0 -188 74t-76 195q0 152 134.5 234.5t405.5 115.5v28q0 103 -30.5 182t-101 129t-173.5 50q-94 0 -177 -43.5 t-147.5 -126.5t-102.5 -215t-38 -297q0 -161 36.5 -292t100.5 -217t150 -132.5t186 -46.5q164 0 289 92l58 -92q-162 -113 -351 -113q-123 0 -230.5 53t-190 152.5t-130 254.5t-47.5 347zM594 453q0 -72 44.5 -113t119.5 -41q113 0 229 131v258q-210 -29 -301.5 -84.5 t-91.5 -150.5z" />
|
||||||
|
<glyph unicode="A" d="M66 0l452 1343h193l452 -1343h-180l-127 410h-487l-129 -410h-174zM412 547h401l-63 205q-94 301 -134 452h-8q-63 -229 -133 -452z" />
|
||||||
|
<glyph unicode="B" d="M203 0v1343h381q105 0 187.5 -18t144.5 -56.5t95 -102t33 -150.5q0 -105 -60 -184t-175 -109v-8q150 -24 230.5 -105t80.5 -217q0 -193 -136.5 -293t-369.5 -100h-411zM373 143h217q362 0 362 258q0 122 -90.5 178t-271.5 56h-217v-492zM373 778h182q169 0 245.5 54.5 t76.5 168.5q0 106 -77 152.5t-237 46.5h-190v-422z" />
|
||||||
|
<glyph unicode="C" d="M133 672q0 319 167.5 507.5t434.5 188.5q112 0 207 -46.5t160 -117.5l-96 -108q-116 123 -271 123q-194 0 -310 -146.5t-116 -396.5q0 -253 116 -402t310 -149q170 0 303 149l97 -104q-168 -195 -416 -195q-124 0 -231.5 48t-186 136t-123.5 220t-45 293z" />
|
||||||
|
<glyph unicode="D" d="M178 0v1343h332q302 0 462.5 -172.5t160.5 -492.5q0 -322 -160 -500t-455 -178h-340zM348 139h150q227 0 342.5 140t115.5 399q0 256 -115 391t-343 135h-150v-1065z" />
|
||||||
|
<glyph unicode="E" d="M233 0v1343h832v-143h-659v-422h557v-145h-557v-488h679v-145h-852z" />
|
||||||
|
<glyph unicode="F" d="M272 0v1343h826v-143h-654v-455h553v-143h-553v-602h-172z" />
|
||||||
|
<glyph unicode="G" d="M109 672q0 321 165.5 508.5t430.5 187.5q214 0 370 -164l-96 -108q-56 59 -120 91t-154 32q-190 0 -304 -147t-114 -396q0 -256 108.5 -403.5t304.5 -147.5q70 0 133 21.5t101 58.5v350h-268v141h426v-565q-67 -69 -172.5 -112.5t-229.5 -43.5q-258 0 -419.5 187 t-161.5 510z" />
|
||||||
|
<glyph unicode="H" d="M162 0v1343h172v-563h561v563h172v-1343h-172v633h-561v-633h-172z" />
|
||||||
|
<glyph unicode="I" d="M195 0v145h333v1055h-333v143h839v-143h-334v-1055h334v-145h-839z" />
|
||||||
|
<glyph unicode="J" d="M166 199l106 104q55 -88 131.5 -133t157.5 -45q145 0 212 76.5t67 242.5v758h-564v144h734v-916q0 -78 -14 -143.5t-47 -124t-83 -99.5t-126.5 -64.5t-174.5 -23.5q-119 0 -226 56.5t-173 167.5z" />
|
||||||
|
<glyph unicode="K" d="M201 0v1343h172v-673h6l565 673h195l-426 -509l475 -834h-193l-391 705l-231 -277v-428h-172z" />
|
||||||
|
<glyph unicode="L" d="M274 0v1343h168v-1198h666v-145h-834z" />
|
||||||
|
<glyph unicode="M" d="M147 0v1343h209l189 -573l65 -217h8l64 217l190 573h209v-1343h-163v672q0 46 3.5 116.5t7.5 124.5t9.5 133t7.5 101h-6l-76 -262l-192 -529h-123l-189 529l-77 262h-4q28 -268 28 -475v-672h-160z" />
|
||||||
|
<glyph unicode="N" d="M168 0v1343h188l430 -843l129 -279h5q-1 32 -12 188t-11 238v696h164v-1343h-189l-430 844l-129 278h-4q2 -40 12.5 -190t10.5 -230v-702h-164z" />
|
||||||
|
<glyph unicode="O" d="M98 678q0 320 142.5 505t373.5 185t373.5 -185t142.5 -505q0 -325 -142.5 -514t-373.5 -189t-373.5 189t-142.5 514zM274 678q0 -256 92.5 -404.5t247.5 -148.5t247.5 148.5t92.5 404.5q0 251 -92.5 396t-247.5 145t-247.5 -145t-92.5 -396z" />
|
||||||
|
<glyph unicode="P" d="M209 0v1343h405q115 0 203.5 -20.5t156 -66t103 -123t35.5 -185.5q0 -206 -134 -311t-364 -105h-235v-532h-170zM379 672h215q177 0 261.5 67t84.5 209t-83.5 200t-262.5 58h-215v-534z" />
|
||||||
|
<glyph unicode="Q" d="M102 678q0 322 140 507t372 185t372 -185t140 -507q0 -288 -111.5 -470.5t-301.5 -221.5q35 -86 110 -130t181 -44q50 0 100 20l33 -137q-82 -29 -152 -29q-170 0 -285 86.5t-168 229.5q-198 34 -314 218t-116 478zM276 678q0 -262 91 -411.5t247 -149.5t247 149.5 t91 411.5q0 253 -91 399t-247 146t-247 -146t-91 -399z" />
|
||||||
|
<glyph unicode="R" d="M205 0v1343h418q469 0 469 -376q0 -152 -80 -248t-221 -133l342 -586h-195l-324 567h-239v-567h-170zM375 707h223q158 0 241 65.5t83 194.5q0 128 -80.5 183.5t-243.5 55.5h-223v-499z" />
|
||||||
|
<glyph unicode="S" d="M137 174l103 119q78 -78 179.5 -123t213.5 -45q136 0 214.5 59t78.5 154q0 23 -4.5 44t-9.5 37t-19 33t-22 27t-30.5 24.5t-32.5 20.5t-39 20t-39.5 18.5l-45.5 19.5l-192 84q-291 114 -291 346q0 154 124 255t316 101q122 0 230 -45t184 -121l-90 -110 q-143 127 -330 127q-118 0 -189 -53.5t-71 -143.5q0 -27 8.5 -51t18 -41t32.5 -35.5t36.5 -28t47 -25.5t46 -21t50.5 -21l189 -82q68 -28 117.5 -57.5t92.5 -72t65 -100t22 -129.5q0 -164 -129.5 -273.5t-345.5 -109.5q-144 0 -269 52.5t-219 146.5z" />
|
||||||
|
<glyph unicode="T" d="M86 1200v143h1057v-143h-443v-1200h-172v1200h-442z" />
|
||||||
|
<glyph unicode="U" d="M162 508v835h172v-839q0 -199 75.5 -289t206.5 -90t208 90.5t77 288.5v839h166v-835q0 -275 -121 -404t-330 -129q-102 0 -183 29.5t-142.5 92t-95 166.5t-33.5 245z" />
|
||||||
|
<glyph unicode="V" d="M88 1343h180l217 -725q14 -46 57.5 -199.5t71.5 -244.5h9q44 143 129 444l215 725h174l-426 -1343h-199z" />
|
||||||
|
<glyph unicode="W" d="M20 1346h193l98 -844q22 -212 27 -312h6q32 170 66 310l131 499h164l126 -499q28 -105 66 -310h8q11 178 25 310l94 846h184l-196 -1346h-213l-131 541q-37 151 -50 241h-6q-27 -161 -47 -241l-131 -541h-209z" />
|
||||||
|
<glyph unicode="X" d="M111 0l401 694l-375 649h189l188 -344q52 -91 109 -194h8q64 134 96 194l184 344h181l-375 -657l401 -686h-188l-203 362q-22 39 -119 216h-8q-57 -120 -108 -216l-201 -362h-180z" />
|
||||||
|
<glyph unicode="Y" d="M78 1343h180l203 -399q23 -47 73.5 -151t79.5 -162h9q28 58 81 163t76 152l195 397h176l-451 -864v-479h-172v479z" />
|
||||||
|
<glyph unicode="Z" d="M133 0v102l750 1100h-684v144h895v-103l-752 -1098h762v-145h-971z" />
|
||||||
|
<glyph unicode="[" d="M461 -311v1761h567v-96h-432v-1569h432v-96h-567z" />
|
||||||
|
<glyph unicode="\" d="M203 1454h151l672 -1782h-152z" />
|
||||||
|
<glyph unicode="]" d="M201 -215h432v1569h-432v96h567v-1761h-567v96z" />
|
||||||
|
<glyph unicode="^" d="M227 582l314 790h147l313 -790h-147l-135 360l-101 272h-8l-100 -272l-135 -360h-148z" />
|
||||||
|
<glyph unicode="_" d="M123 -141h983v-146h-983v146z" />
|
||||||
|
<glyph unicode="`" d="M336 1477l119 114l290 -344l-88 -84z" />
|
||||||
|
<glyph unicode="a" d="M166 258q0 168 168 255t553 118q-3 112 -66 181t-198 69q-157 0 -349 -119l-65 115q89 59 206 101t236 42q199 0 301.5 -109.5t102.5 -300.5v-610h-137l-15 135h-6q-207 -160 -393 -160q-144 0 -241 76.5t-97 206.5zM330 270q0 -80 62.5 -119.5t156.5 -39.5 q161 0 338 147v262q-208 -17 -333 -52t-174.5 -82.5t-49.5 -115.5z" />
|
||||||
|
<glyph unicode="b" d="M190 0v1458h168v-397l-6 -193h6q68 70 157.5 111t176.5 41q198 0 306 -136t108 -370q0 -124 -37 -227t-99.5 -170.5t-143.5 -104.5t-171 -37q-72 0 -155.5 36.5t-153.5 99.5h-6l-14 -111h-136zM358 233q66 -59 138.5 -87.5t132.5 -28.5q133 0 218 107t85 288 q0 172 -68.5 269.5t-212.5 97.5q-143 0 -293 -150v-496z" />
|
||||||
|
<glyph unicode="c" d="M164 496q0 122 44.5 222.5t120.5 165.5t176.5 100.5t213.5 35.5q212 0 362 -146l-84 -108q-131 115 -272 115q-172 0 -279.5 -106.5t-107.5 -278.5q0 -170 105.5 -275.5t277.5 -105.5q161 0 307 125l76 -109q-177 -156 -395 -156q-156 0 -279 60.5t-194.5 180 t-71.5 280.5z" />
|
||||||
|
<glyph unicode="d" d="M123 496q0 118 37.5 218t100 166t144 103t170.5 37q162 0 297 -129h7l-9 184v383h168v-1458h-139l-14 131h-6q-67 -68 -152 -112t-172 -44q-198 0 -315 137.5t-117 383.5zM297 498q0 -179 77.5 -280t215.5 -101q146 0 280 149v496q-125 117 -262 117q-131 0 -221 -107 t-90 -274z" />
|
||||||
|
<glyph unicode="e" d="M139 500q0 118 42 217.5t112.5 164.5t162 101.5t191.5 36.5q213 0 334 -127t121 -340q0 -48 -8 -102h-785q15 -164 120.5 -252t266.5 -88q155 0 303 94l62 -111q-177 -119 -385 -119q-151 0 -271.5 61t-193 182t-72.5 282zM313 582h635q-10 151 -88.5 228t-208.5 77 q-127 0 -221 -81t-117 -224z" />
|
||||||
|
<glyph unicode="f" d="M211 858v127l285 10v84q0 189 100.5 296.5t300.5 107.5q147 0 287 -58l-39 -127q-106 48 -232 48q-251 0 -251 -261v-90h417v-137h-417v-858h-166v858h-285z" />
|
||||||
|
<glyph unicode="g" d="M147 -182q0 60 42.5 118t121.5 103v8q-102 56 -102 164q0 48 31.5 98t87.5 88v9q-55 41 -89 107t-34 151q0 158 114 257t277 99q80 0 147 -25h412v-137h-258q84 -88 84 -201q0 -156 -109.5 -249t-275.5 -93q-87 0 -168 37q-78 -49 -78 -114q0 -115 207 -115h223 q195 0 287 -55t92 -179q0 -144 -153.5 -246t-399.5 -102q-218 0 -338.5 72.5t-120.5 204.5zM293 -166q0 -79 84 -124.5t241 -45.5q167 0 271 59.5t104 139.5q0 68 -54 94.5t-173 26.5h-195q-94 0 -151 16q-127 -69 -127 -166zM367 664q0 -105 66.5 -170.5t162.5 -65.5 q97 0 163 65.5t66 170.5q0 103 -66 168t-163 65q-96 0 -162.5 -65.5t-66.5 -167.5z" />
|
||||||
|
<glyph unicode="h" d="M190 0v1458h168v-397l-10 -236h6q85 93 174.5 144t198.5 51q344 0 344 -402v-618h-168v596q0 143 -54 210.5t-175 67.5q-85 0 -153.5 -41.5t-162.5 -138.5v-694h-168z" />
|
||||||
|
<glyph unicode="i" d="M184 858v137h631v-995h-168v858h-463zM578 1335q0 58 38.5 94.5t96.5 36.5t96.5 -36.5t38.5 -94.5q0 -59 -38.5 -95t-96.5 -36t-96.5 36t-38.5 95z" />
|
||||||
|
<glyph unicode="j" d="M113 -377l55 125q113 -55 227 -55q142 0 197 67t55 203v895h-463v137h631v-1020q0 -97 -20.5 -170t-67 -131t-129.5 -88t-201 -30q-147 0 -284 67zM578 1335q0 58 38.5 94.5t96.5 36.5t96.5 -36.5t38.5 -94.5q0 -59 -38.5 -95t-96.5 -36t-96.5 36t-38.5 95z" />
|
||||||
|
<glyph unicode="k" d="M217 0v1458h168v-987h8l537 524h192l-397 -391l451 -604h-189l-366 502l-236 -232v-270h-168z" />
|
||||||
|
<glyph unicode="l" d="M166 1321v137h508v-1136q0 -105 51.5 -156t144.5 -51q88 0 187 45l43 -125q-76 -32 -132.5 -46t-133.5 -14q-159 0 -243.5 91.5t-84.5 267.5v987h-340z" />
|
||||||
|
<glyph unicode="m" d="M119 0v995h135l14 -131h4q42 76 94.5 116t133.5 40q145 0 188 -172q47 87 100 129.5t134 42.5q105 0 163 -79.5t58 -227.5v-713h-168v700q0 174 -107 174q-49 0 -82 -34.5t-77 -118.5v-721h-156v700q0 88 -24 131t-78 43q-51 0 -88.5 -36.5t-75.5 -116.5v-721h-168z" />
|
||||||
|
<glyph unicode="n" d="M190 0v995h140l14 -170h8q87 93 176.5 144t198.5 51q344 0 344 -402v-618h-168v596q0 143 -54 210.5t-175 67.5q-85 0 -153.5 -41.5t-162.5 -138.5v-694h-168z" />
|
||||||
|
<glyph unicode="o" d="M123 496q0 122 40 222.5t107.5 165.5t156 100.5t187.5 35.5t187.5 -35.5t156.5 -100.5t108 -165.5t40 -222.5q0 -120 -40 -220t-108 -165t-156.5 -100.5t-187.5 -35.5t-187.5 35.5t-156 100.5t-107.5 165t-40 220zM297 496q0 -170 87.5 -275.5t229.5 -105.5t230 105.5 t88 275.5q0 172 -88 278.5t-230 106.5t-229.5 -106.5t-87.5 -278.5z" />
|
||||||
|
<glyph unicode="p" d="M190 -420v1415h140l14 -127h6q72 68 163.5 110t180.5 42q198 0 305 -136t107 -372q0 -123 -37 -226t-99.5 -170t-144.5 -104t-172 -37q-71 0 -151.5 34.5t-145.5 94.5h-6l8 -188v-336h-168zM358 233q66 -59 138 -87.5t129 -28.5q136 0 221.5 106.5t85.5 288.5 q0 172 -68.5 269.5t-212.5 97.5q-143 0 -293 -150v-496z" />
|
||||||
|
<glyph unicode="q" d="M123 496q0 118 37.5 218t100 166t144 103t170.5 37q88 0 161.5 -33.5t146.5 -101.5h6l14 110h135v-1415h-168v363l9 184h-7q-66 -68 -149 -110t-170 -42q-196 0 -313 137.5t-117 383.5zM297 498q0 -179 77.5 -280t215.5 -101q146 0 280 149v496q-125 117 -262 117 q-131 0 -221 -107t-90 -274z" />
|
||||||
|
<glyph unicode="r" d="M299 0v995h139l15 -235h6q80 123 194.5 191.5t249.5 68.5q116 0 197 -41l-39 -145q-56 20 -92 27t-92 7q-247 0 -410 -284v-584h-168z" />
|
||||||
|
<glyph unicode="s" d="M145 131l78 111q191 -136 432 -136q120 0 186 44.5t66 111.5q0 31 -11 53.5t-43 46t-95 44t-162 40.5q-197 40 -293 110t-96 181q0 125 108.5 204t305.5 79q108 0 215 -36t186 -91l-82 -109q-153 105 -334 105q-119 0 -174 -40.5t-55 -103.5q0 -62 64.5 -96.5 t224.5 -68.5q164 -36 254.5 -79.5t123.5 -96t33 -132.5q0 -127 -118 -212t-324 -85q-137 0 -264 43.5t-226 112.5z" />
|
||||||
|
<glyph unicode="t" d="M141 858v127l287 10l23 320h139v-320h489v-137h-489v-473q0 -140 56 -206t196 -66q119 0 239 45l37 -123q-164 -60 -311 -60q-207 0 -296 107t-89 305v471h-281z" />
|
||||||
|
<glyph unicode="u" d="M158 377v618h170v-596q0 -144 53.5 -211t175.5 -67q84 0 154 42.5t155 141.5v690h168v-995h-137l-14 174h-9q-170 -199 -370 -199q-346 0 -346 402z" />
|
||||||
|
<glyph unicode="v" d="M104 995h170l230 -565q32 -77 112 -293h9q6 15 45 124.5t63 168.5l230 565h161l-411 -995h-189z" />
|
||||||
|
<glyph unicode="w" d="M16 995h168l119 -577q30 -155 45 -275h8q11 88 58 275l123 516h168l118 -516q6 -24 17.5 -68t18 -71t14.5 -65t12 -71h8q5 31 20 126t25 149l119 577h155l-213 -995h-217l-114 475q-29 125 -50 295h-8q-23 -180 -49 -295l-110 -475h-218z" />
|
||||||
|
<glyph unicode="x" d="M131 0l379 516l-350 479h186l158 -219q64 -97 117 -168h8q47 70 112 172l150 215h178l-354 -493l381 -502h-185l-174 229q-114 158 -131 181h-8q-82 -118 -123 -181l-164 -229h-180z" />
|
||||||
|
<glyph unicode="y" d="M100 995h170l244 -551q17 -39 37.5 -87t46 -108.5t39.5 -92.5h8q92 247 107 288l217 551h159l-438 -1077q-130 -346 -422 -346q-73 0 -131 20l35 134q51 -15 90 -15q188 0 273 213l30 74z" />
|
||||||
|
<glyph unicode="z" d="M145 0v90l682 768h-606v137h848v-90l-684 -768h702v-137h-942z" />
|
||||||
|
<glyph unicode="{" d="M246 516v107q297 2 297 159q0 63 -9.5 193.5t-9.5 202.5q0 153 89 212.5t290 59.5h125v-96h-106q-104 0 -159.5 -20t-75 -58.5t-19.5 -108.5q0 -57 6 -181t6 -189q0 -102 -41 -154t-145 -70v-8q104 -18 145 -69.5t41 -153.5q0 -71 -6 -190.5t-6 -180.5q0 -70 20 -108.5 t75 -58t159 -19.5h106v-96h-125q-201 0 -290 59.5t-89 212.5q0 77 9.5 202.5t9.5 192.5q0 158 -297 160z" />
|
||||||
|
<glyph unicode="|" d="M539 -512v2048h151v-2048h-151z" />
|
||||||
|
<glyph unicode="}" d="M203 -215h104q152 0 204 41t52 145q0 61 -6 180.5t-6 190.5q0 102 40.5 153.5t143.5 69.5v8q-103 18 -143.5 69.5t-40.5 154.5q0 65 6 189t6 181q0 104 -52 145.5t-204 41.5h-104v96h125q199 0 288 -59.5t89 -212.5q0 -72 -9.5 -202.5t-9.5 -193.5q0 -157 297 -159v-107 q-297 -2 -297 -160q0 -67 9.5 -192.5t9.5 -202.5q0 -153 -89 -212.5t-288 -59.5h-125v96z" />
|
||||||
|
<glyph unicode="~" d="M156 569q96 256 278 256q54 0 108.5 -27t91 -59t81.5 -59t84 -27q52 0 92.5 38t73.5 138l108 -49q-96 -254 -278 -254q-54 0 -108.5 27t-91 59t-81.5 59t-84 27q-52 0 -92.5 -38.5t-73.5 -137.5z" />
|
||||||
|
<glyph unicode=" " />
|
||||||
|
<glyph unicode="¡" d="M465 862q0 70 43 114t106 44t106.5 -44t43.5 -114q0 -71 -43 -114t-107 -43t-106.5 42.5t-42.5 114.5zM532 -377l5 193l20 704h115l20 -704l4 -193h-164z" />
|
||||||
|
<glyph unicode="¢" d="M231 635q0 205 115.5 333t296.5 152v217h105v-211q150 -8 268 -118l-82 -107q-87 81 -186 86v-704q112 8 215 96l73 -107q-134 -117 -288 -129v-211h-105v213q-187 21 -299.5 149.5t-112.5 340.5zM397 635q0 -136 65 -227t181 -117v686q-115 -26 -180.5 -117t-65.5 -225z " />
|
||||||
|
<glyph unicode="£" d="M158 584v106l202 8q-2 6 -11.5 31.5t-12 33.5t-10 30.5t-10.5 33.5t-8 30.5t-7 33t-4 30.5t-2 33q0 173 117 275t313 102q221 0 360 -153l-98 -97q-109 109 -254 109q-131 0 -203.5 -66t-72.5 -174q0 -40 10.5 -88t19.5 -76t31 -88h387v-114h-354q12 -55 12 -115 q0 -104 -35.5 -177t-111.5 -138v-9h671v-145h-927v102q124 56 189 153t65 216q0 50 -17 113h-239z" />
|
||||||
|
<glyph unicode="¤" d="M119 262l172 174q-74 99 -74 238q0 138 72 239l-170 177l90 92l178 -185q98 76 227 76q126 0 228 -76l178 185l90 -92l-172 -177q74 -99 74 -239q0 -134 -74 -238l172 -174l-90 -92l-180 182q-96 -78 -226 -78q-126 0 -227 78l-178 -182zM373 674q0 -121 69.5 -198 t171.5 -77t172 77t70 198t-70 197.5t-172 76.5t-171.5 -76.5t-69.5 -197.5z" />
|
||||||
|
<glyph unicode="¥" d="M109 1307h174l188 -351q20 -39 66.5 -131.5t74.5 -144.5h9q109 214 143 276l188 351h168l-381 -656h332v-96h-375v-133h375v-98h-375v-324h-168v324h-370v98h370v133h-370v96h329z" />
|
||||||
|
<glyph unicode="¦" d="M539 389h151v-901h-151v901zM539 635v901h151v-901h-151z" />
|
||||||
|
<glyph unicode="§" d="M186 702q0 169 187 267q-64 71 -64 166q0 112 81 189t228 77q178 0 330 -117l-82 -108q-124 94 -239 94q-82 0 -123 -36.5t-41 -92.5q0 -39 25 -72t65.5 -55.5t92.5 -47t106.5 -46.5t106.5 -54t92.5 -68.5t65.5 -92.5t25 -123q0 -93 -47.5 -156.5t-138.5 -110.5 q62 -68 62 -165q0 -122 -92.5 -201.5t-237.5 -79.5q-111 0 -206.5 38.5t-160.5 106.5l103 92q58 -53 120 -79.5t144 -26.5q81 0 128.5 40.5t47.5 100.5q0 47 -32 84t-83 63.5t-112.5 51.5t-123 56t-112.5 69.5t-83 99t-32 137.5zM332 713q0 -51 26.5 -91.5t75.5 -70.5 t99 -52.5t117 -51.5t110 -54q70 31 103.5 70.5t33.5 105.5q0 52 -26 93.5t-75 72t-98.5 53t-117 52t-109.5 53.5q-139 -71 -139 -180z" />
|
||||||
|
<glyph unicode="¨" d="M303 1319q0 48 32 81.5t81 33.5t80.5 -33.5t31.5 -81.5q0 -50 -31.5 -82.5t-80.5 -32.5t-81 32.5t-32 82.5zM700 1319q0 48 32 81.5t81 33.5t81 -33.5t32 -81.5q0 -50 -32 -82.5t-81 -32.5t-81 32.5t-32 82.5z" />
|
||||||
|
<glyph unicode="©" d="M61 662q0 154 42.5 281.5t116.5 213.5t175.5 133t218.5 47t218.5 -47t175.5 -133t116.5 -213.5t42.5 -281.5q0 -308 -157 -496.5t-396 -188.5t-396 188.5t-157 496.5zM156 662q0 -269 126.5 -434t331.5 -165q206 0 332.5 165.5t126.5 433.5t-126.5 429.5t-332.5 161.5 t-332 -161.5t-126 -429.5zM299 662q0 173 99.5 280t238.5 107q120 0 213 -97l-70 -80q-71 64 -137 64q-93 0 -151 -76.5t-58 -197.5q0 -134 55 -213.5t146 -79.5q83 0 166 69l61 -86q-106 -96 -231 -96q-142 0 -237 110.5t-95 295.5z" />
|
||||||
|
<glyph unicode="ª" d="M334 981q0 107 108.5 166t339.5 78q-7 153 -153 153q-103 0 -217 -69l-52 88q144 86 291 86q130 0 196 -72t66 -203v-399h-108l-8 78h-4q-121 -94 -242 -94q-94 0 -155.5 51t-61.5 137zM461 993q0 -51 34.5 -75.5t88.5 -24.5q92 0 198 82v170q-171 -17 -246 -54t-75 -98z " />
|
||||||
|
<glyph unicode="«" d="M168 434v164l313 328l80 -72l-260 -338l260 -340l-80 -70zM639 434v164l313 328l80 -72l-260 -338l260 -340l-80 -70z" />
|
||||||
|
<glyph unicode="¬" d="M174 612v127h881v-526h-135v399h-746z" />
|
||||||
|
<glyph unicode="­" d="M174 612v127h881v-127h-881z" />
|
||||||
|
<glyph unicode="®" d="M229 1057q0 177 111 290t274 113q162 0 273.5 -113t111.5 -290t-112 -290.5t-273 -113.5q-163 0 -274 113.5t-111 290.5zM309 1057q0 -145 87 -236.5t218 -91.5t217.5 91.5t86.5 236.5q0 144 -87 236.5t-217 92.5t-217.5 -93t-87.5 -236zM465 854v416h156q71 0 116 -32 t45 -101q0 -37 -21.5 -69t-55.5 -44l94 -170h-94l-72 143h-84v-143h-84zM549 1063h53q42 0 66 18.5t24 51.5q0 67 -86 67h-57v-137z" />
|
||||||
|
<glyph unicode="¯" d="M342 1231v117h545v-117h-545z" />
|
||||||
|
<glyph unicode="°" d="M358 1139q0 118 75 191t181 73q107 0 182.5 -73t75.5 -191q0 -115 -76 -187.5t-182 -72.5t-181 72.5t-75 187.5zM461 1139q0 -72 43 -119t110 -47q69 0 112.5 47t43.5 119q0 75 -43.5 122.5t-112.5 47.5q-68 0 -110.5 -47.5t-42.5 -122.5z" />
|
||||||
|
<glyph unicode="±" d="M174 0v127h881v-127h-881zM174 623v127h373v389h135v-389h373v-127h-373v-363h-135v363h-373z" />
|
||||||
|
<glyph unicode="²" d="M299 1477q46 71 124 113t165 42q131 0 208.5 -67.5t77.5 -192.5q0 -25 -4.5 -49t-16.5 -49.5t-22.5 -45.5t-33.5 -48t-38.5 -46t-48.5 -50t-51 -49.5t-59.5 -56t-62.5 -58.5h376v-111h-581l-8 76q17 14 50 42q208 177 270 243q99 105 99 184q0 77 -47.5 122.5 t-126.5 45.5q-55 0 -105 -32t-87 -85z" />
|
||||||
|
<glyph unicode="³" d="M291 940l86 68q38 -58 96.5 -88.5t126.5 -30.5q77 0 128.5 38t51.5 103q0 144 -268 144v81q117 0 177.5 40.5t60.5 105.5q0 57 -44.5 92t-119.5 35q-50 0 -99.5 -26.5t-85.5 -71.5l-77 69q111 133 280 133q116 0 196.5 -59t80.5 -156q0 -71 -39.5 -118t-122.5 -78 q89 -18 140.5 -69t51.5 -128q0 -108 -87.5 -174t-215.5 -66q-102 0 -186 42.5t-131 113.5z" />
|
||||||
|
<glyph unicode="´" d="M483 1247l291 344l119 -114l-322 -314z" />
|
||||||
|
<glyph unicode="µ" d="M172 -383v1378h168v-596q0 -139 51 -208.5t160 -69.5q87 0 159 44.5t144 170.5v659h170q-12 -536 -12 -807q0 -73 57 -73q19 0 37 4l22 -127q-39 -17 -96 -17q-80 0 -119 48t-45 165h-4q-121 -208 -315 -208q-75 0 -129.5 23.5t-91.5 84.5q3 -322 14 -471h-170z" />
|
||||||
|
<glyph unicode="¶" d="M147 907q0 117 36 203t102.5 136t151.5 73.5t192 23.5h88v-880h-66q-111 0 -201.5 26.5t-159 79.5t-106 139t-37.5 199zM827 -164v1507h166v-1507h-166z" />
|
||||||
|
<glyph unicode="·" d="M449 711q0 77 47.5 125.5t117.5 48.5t118 -48.5t48 -125.5q0 -75 -48 -123.5t-118 -48.5t-117.5 48.5t-47.5 123.5z" />
|
||||||
|
<glyph unicode="¸" d="M420 -381q125 9 174 32.5t49 69.5q0 41 -36 64t-122 35l82 196h111l-53 -147q75 -18 112 -51.5t37 -93.5q0 -171 -338 -187z" />
|
||||||
|
<glyph unicode="¹" d="M358 809v111h252v520h-215v84q86 12 139.5 30.5t100.5 53.5h106v-688h234v-111h-617z" />
|
||||||
|
<glyph unicode="º" d="M291 1137q0 159 94 252.5t229 93.5q137 0 230.5 -93t93.5 -253q0 -157 -94 -250.5t-230 -93.5q-135 0 -229 93.5t-94 250.5zM426 1137q0 -107 50.5 -172.5t137.5 -65.5t138 65.5t51 172.5q0 108 -51 173.5t-138 65.5t-137.5 -65.5t-50.5 -173.5z" />
|
||||||
|
<glyph unicode="»" d="M197 176l260 340l-260 338l79 72l314 -328v-164l-314 -328zM668 176l260 340l-260 338l80 72l313 -328v-164l-313 -328z" />
|
||||||
|
<glyph unicode="¼" d="M57 158l375 385l68 -62l-342 -415zM137 1153v86q106 16 195 68h102v-625h-129v471h-168zM627 152v63l231 434l94 -41l-198 -370h204v198h117v-198h103v-86h-103v-152h-117v152h-331zM729 862l342 416l100 -92l-374 -385z" />
|
||||||
|
<glyph unicode="½" d="M57 158l375 385l68 -62l-342 -415zM137 1153v86q106 16 195 68h102v-625h-129v471h-168zM643 524q106 125 242 125q111 0 174 -55t63 -156q0 -49 -35 -104.5t-70.5 -91t-117.5 -110.5l-8 -8t-8 -7t-9 -8h279v-109h-489v74q181 137 255 211t74 137q0 56 -32.5 88.5 t-90.5 32.5q-81 0 -147 -86zM729 862l342 416l100 -92l-374 -385z" />
|
||||||
|
<glyph unicode="¾" d="M63 768l66 80q32 -38 82 -63t104 -25q59 0 93 23.5t34 72.5q0 105 -196 105v77q82 0 124 28t42 77q0 41 -28 64.5t-85 23.5q-36 0 -77 -19.5t-72 -50.5l-62 78q39 42 102.5 67t133.5 25q97 0 157 -46t60 -126q0 -58 -27.5 -94.5t-87.5 -58.5q68 -15 106.5 -55.5 t38.5 -102.5q0 -88 -70 -139.5t-177 -51.5q-71 0 -140.5 29.5t-120.5 81.5zM109 158l374 385l68 -62l-342 -415zM627 152v63l231 434l94 -41l-198 -370h204v198h117v-198h103v-86h-103v-152h-117v152h-331zM780 862l342 416l101 -92l-375 -385z" />
|
||||||
|
<glyph unicode="¿" d="M248 -82q0 56 20.5 106.5t52.5 88.5t70.5 74.5t75.5 72t66.5 73t44 85.5t6.5 102h149q10 -60 -2 -113.5t-39.5 -94.5t-63 -78.5t-73.5 -72t-69.5 -68t-51.5 -74t-20 -82.5q0 -88 58 -142.5t167 -54.5q149 0 266 117l101 -93q-158 -165 -377 -165q-171 0 -276 87t-105 232 zM494 862q0 70 43 114t106 44t106.5 -44t43.5 -114q0 -71 -43 -114t-107 -43q-63 0 -106 42.5t-43 114.5z" />
|
||||||
|
<glyph unicode="À" d="M66 0l452 1343h193l452 -1343h-180l-127 410h-487l-129 -410h-174zM362 1663l97 113l289 -263l-74 -86zM412 547h401l-63 205q-94 301 -134 452h-8q-63 -229 -133 -452z" />
|
||||||
|
<glyph unicode="Á" d="M66 0l452 1343h193l452 -1343h-180l-127 410h-487l-129 -410h-174zM412 547h401l-63 205q-94 301 -134 452h-8q-63 -229 -133 -452zM481 1513l289 263l96 -113l-311 -236z" />
|
||||||
|
<glyph unicode="Â" d="M66 0l452 1343h193l452 -1343h-180l-127 410h-487l-129 -410h-174zM311 1485l215 231h176l216 -231l-74 -53l-226 190h-8l-225 -190zM412 547h401l-63 205q-94 301 -134 452h-8q-63 -229 -133 -452z" />
|
||||||
|
<glyph unicode="Ã" d="M66 0l452 1343h193l452 -1343h-180l-127 410h-487l-129 -410h-174zM252 1470q6 117 61.5 184.5t147.5 67.5q52 0 98.5 -22.5t75 -50t63.5 -50t66 -22.5q39 0 65 35t33 100l115 -8q-6 -118 -61.5 -185t-147.5 -67q-52 0 -98.5 22.5t-75 50t-63.5 50t-66 22.5 q-39 0 -65.5 -35t-32.5 -100zM412 547h401l-63 205q-94 301 -134 452h-8q-63 -229 -133 -452z" />
|
||||||
|
<glyph unicode="Ä" d="M66 0l452 1343h193l452 -1343h-180l-127 410h-487l-129 -410h-174zM324 1569q0 45 29.5 73.5t74.5 28.5t73.5 -28.5t28.5 -73.5q0 -46 -29 -75.5t-73 -29.5t-74 30t-30 75zM412 547h401l-63 205q-94 301 -134 452h-8q-63 -229 -133 -452zM698 1569q0 45 29 73.5t74 28.5 t74.5 -28.5t29.5 -73.5t-29.5 -75t-74.5 -30q-44 0 -73.5 29.5t-29.5 75.5z" />
|
||||||
|
<glyph unicode="Å" d="M66 0l452 1343h193l452 -1343h-180l-127 410h-487l-129 -410h-174zM412 547h401l-63 205q-94 301 -134 452h-8q-63 -229 -133 -452zM416 1616q0 84 55.5 135t142.5 51q86 0 142.5 -51.5t56.5 -134.5q0 -82 -56.5 -133t-142.5 -51q-87 0 -142.5 50.5t-55.5 133.5z M508 1616q0 -52 30 -81.5t76 -29.5q44 0 74.5 29.5t30.5 81.5q0 50 -31 80t-74 30q-46 0 -76 -29.5t-30 -80.5z" />
|
||||||
|
<glyph unicode="Æ" d="M-2 0l541 1343h653v-143h-387v-420h301v-145h-301v-490h405v-145h-561v391h-323l-150 -391h-178zM379 528h270v680h-6q-29 -78 -87 -223.5t-83 -212.5z" />
|
||||||
|
<glyph unicode="Ç" d="M133 672q0 319 167.5 507.5t434.5 188.5q112 0 207 -46.5t160 -117.5l-96 -108q-116 123 -271 123q-194 0 -310 -146.5t-116 -396.5q0 -253 116 -402t310 -149q170 0 303 149l97 -104q-149 -176 -369 -193l-39 -108q75 -18 112.5 -51.5t37.5 -93.5q0 -171 -338 -187 l-17 82q125 9 174 32.5t49 69.5q0 41 -35.5 64t-121.5 35l65 160q-231 24 -375.5 208t-144.5 484z" />
|
||||||
|
<glyph unicode="È" d="M233 0v1343h832v-143h-659v-422h557v-145h-557v-488h679v-145h-852zM426 1663l96 113l289 -263l-74 -86z" />
|
||||||
|
<glyph unicode="É" d="M233 0v1343h832v-143h-659v-422h557v-145h-557v-488h679v-145h-852zM545 1513l289 263l96 -113l-312 -236z" />
|
||||||
|
<glyph unicode="Ê" d="M233 0v1343h832v-143h-659v-422h557v-145h-557v-488h679v-145h-852zM375 1485l215 231h176l215 -231l-74 -53l-225 190h-8l-225 -190z" />
|
||||||
|
<glyph unicode="Ë" d="M233 0v1343h832v-143h-659v-422h557v-145h-557v-488h679v-145h-852zM387 1569q0 45 30 73.5t75 28.5t73.5 -28.5t28.5 -73.5q0 -46 -29 -75.5t-73 -29.5q-45 0 -75 30t-30 75zM762 1569q0 45 28.5 73.5t73.5 28.5t75 -28.5t30 -73.5t-30 -75t-75 -30q-44 0 -73 29.5 t-29 75.5z" />
|
||||||
|
<glyph unicode="Ì" d="M195 0v145h333v1055h-333v143h839v-143h-334v-1055h334v-145h-839zM362 1663l97 113l289 -263l-74 -86z" />
|
||||||
|
<glyph unicode="Í" d="M195 0v145h333v1055h-333v143h839v-143h-334v-1055h334v-145h-839zM481 1513l289 263l96 -113l-311 -236z" />
|
||||||
|
<glyph unicode="Î" d="M195 0v145h333v1055h-333v143h839v-143h-334v-1055h334v-145h-839zM311 1485l215 231h176l216 -231l-74 -53l-226 190h-8l-225 -190z" />
|
||||||
|
<glyph unicode="Ï" d="M195 0v145h333v1055h-333v143h839v-143h-334v-1055h334v-145h-839zM324 1569q0 45 29.5 73.5t74.5 28.5t73.5 -28.5t28.5 -73.5q0 -46 -29 -75.5t-73 -29.5t-74 30t-30 75zM698 1569q0 45 29 73.5t74 28.5t74.5 -28.5t29.5 -73.5t-29.5 -75t-74.5 -30q-44 0 -73.5 29.5 t-29.5 75.5z" />
|
||||||
|
<glyph unicode="Ð" d="M25 643v115l153 12v573h332q302 0 462.5 -172.5t160.5 -492.5q0 -322 -160 -500t-455 -178h-340v643h-153zM348 139h150q226 0 341 140t115 399q0 256 -114.5 391t-341.5 135h-150v-434h295v-127h-295v-504z" />
|
||||||
|
<glyph unicode="Ñ" d="M168 0v1343h188l430 -843l129 -279h5q-1 32 -12 188t-11 238v696h164v-1343h-189l-430 844l-129 278h-4q2 -40 12.5 -190t10.5 -230v-702h-164zM272 1470q6 117 61.5 184.5t147.5 67.5q52 0 98.5 -22.5t75 -50t63.5 -50t66 -22.5q39 0 65.5 35t33.5 100l114 -8 q-6 -118 -61.5 -185t-147.5 -67q-52 0 -98.5 22.5t-75 50t-63.5 50t-66 22.5q-39 0 -65.5 -35t-32.5 -100z" />
|
||||||
|
<glyph unicode="Ò" d="M98 678q0 320 142.5 505t373.5 185t373.5 -185t142.5 -505q0 -325 -142.5 -514t-373.5 -189t-373.5 189t-142.5 514zM274 678q0 -256 92.5 -404.5t247.5 -148.5t247.5 148.5t92.5 404.5q0 251 -92.5 396t-247.5 145t-247.5 -145t-92.5 -396zM362 1663l97 113l289 -263 l-74 -86z" />
|
||||||
|
<glyph unicode="Ó" d="M98 678q0 320 142.5 505t373.5 185t373.5 -185t142.5 -505q0 -325 -142.5 -514t-373.5 -189t-373.5 189t-142.5 514zM274 678q0 -256 92.5 -404.5t247.5 -148.5t247.5 148.5t92.5 404.5q0 251 -92.5 396t-247.5 145t-247.5 -145t-92.5 -396zM481 1513l289 263l96 -113 l-311 -236z" />
|
||||||
|
<glyph unicode="Ô" d="M98 678q0 320 142.5 505t373.5 185t373.5 -185t142.5 -505q0 -325 -142.5 -514t-373.5 -189t-373.5 189t-142.5 514zM274 678q0 -256 92.5 -404.5t247.5 -148.5t247.5 148.5t92.5 404.5q0 251 -92.5 396t-247.5 145t-247.5 -145t-92.5 -396zM311 1485l215 231h176 l216 -231l-74 -53l-226 190h-8l-225 -190z" />
|
||||||
|
<glyph unicode="Õ" d="M98 678q0 320 142.5 505t373.5 185t373.5 -185t142.5 -505q0 -325 -142.5 -514t-373.5 -189t-373.5 189t-142.5 514zM252 1470q6 117 61.5 184.5t147.5 67.5q52 0 98.5 -22.5t75 -50t63.5 -50t66 -22.5q39 0 65 35t33 100l115 -8q-6 -118 -61.5 -185t-147.5 -67 q-52 0 -98.5 22.5t-75 50t-63.5 50t-66 22.5q-39 0 -65.5 -35t-32.5 -100zM274 678q0 -256 92.5 -404.5t247.5 -148.5t247.5 148.5t92.5 404.5q0 251 -92.5 396t-247.5 145t-247.5 -145t-92.5 -396z" />
|
||||||
|
<glyph unicode="Ö" d="M98 678q0 320 142.5 505t373.5 185t373.5 -185t142.5 -505q0 -325 -142.5 -514t-373.5 -189t-373.5 189t-142.5 514zM274 678q0 -256 92.5 -404.5t247.5 -148.5t247.5 148.5t92.5 404.5q0 251 -92.5 396t-247.5 145t-247.5 -145t-92.5 -396zM324 1569q0 45 29.5 73.5 t74.5 28.5t73.5 -28.5t28.5 -73.5q0 -46 -29 -75.5t-73 -29.5t-74 30t-30 75zM698 1569q0 45 29 73.5t74 28.5t74.5 -28.5t29.5 -73.5t-29.5 -75t-74.5 -30q-44 0 -73.5 29.5t-29.5 75.5z" />
|
||||||
|
<glyph unicode="×" d="M209 350l315 326l-315 323l90 93l315 -326l316 326l90 -93l-315 -323l315 -326l-90 -92l-316 328l-315 -328z" />
|
||||||
|
<glyph unicode="Ø" d="M74 8l137 201q-113 184 -113 469q0 320 142.5 505t373.5 185q180 0 312 -117l106 158l115 -74l-131 -192q114 -177 114 -465q0 -325 -142.5 -514t-373.5 -189q-183 0 -315 123l-111 -164zM274 678q0 -177 48 -307l509 745q-89 103 -217 103q-155 0 -247.5 -145 t-92.5 -396zM393 236q88 -111 221 -111q155 0 247.5 148.5t92.5 404.5q0 183 -49 305z" />
|
||||||
|
<glyph unicode="Ù" d="M162 508v835h172v-839q0 -199 75.5 -289t206.5 -90t208 90.5t77 288.5v839h166v-835q0 -275 -121 -404t-330 -129q-102 0 -183 29.5t-142.5 92t-95 166.5t-33.5 245zM362 1663l97 113l289 -263l-74 -86z" />
|
||||||
|
<glyph unicode="Ú" d="M162 508v835h172v-839q0 -199 75.5 -289t206.5 -90t208 90.5t77 288.5v839h166v-835q0 -275 -121 -404t-330 -129q-102 0 -183 29.5t-142.5 92t-95 166.5t-33.5 245zM481 1513l289 263l96 -113l-311 -236z" />
|
||||||
|
<glyph unicode="Û" d="M162 508v835h172v-839q0 -199 75.5 -289t206.5 -90t208 90.5t77 288.5v839h166v-835q0 -275 -121 -404t-330 -129q-102 0 -183 29.5t-142.5 92t-95 166.5t-33.5 245zM311 1485l215 231h176l216 -231l-74 -53l-226 190h-8l-225 -190z" />
|
||||||
|
<glyph unicode="Ü" d="M162 508v835h172v-839q0 -199 75.5 -289t206.5 -90t208 90.5t77 288.5v839h166v-835q0 -275 -121 -404t-330 -129q-102 0 -183 29.5t-142.5 92t-95 166.5t-33.5 245zM324 1569q0 45 29.5 73.5t74.5 28.5t73.5 -28.5t28.5 -73.5q0 -46 -29 -75.5t-73 -29.5t-74 30t-30 75z M698 1569q0 45 29 73.5t74 28.5t74.5 -28.5t29.5 -73.5t-29.5 -75t-74.5 -30q-44 0 -73.5 29.5t-29.5 75.5z" />
|
||||||
|
<glyph unicode="Ý" d="M78 1343h180l203 -399q23 -47 73.5 -151t79.5 -162h9q28 58 81 163t76 152l195 397h176l-451 -864v-479h-172v479zM481 1513l289 263l96 -113l-311 -236z" />
|
||||||
|
<glyph unicode="Þ" d="M207 0v1343h172v-225h242q115 0 203 -21t155 -66.5t102 -123t35 -184.5q0 -207 -133 -311.5t-362 -104.5h-242v-307h-172zM379 446h219q178 0 263 66.5t85 210.5q0 140 -84 198t-264 58h-219v-533z" />
|
||||||
|
<glyph unicode="ß" d="M180 0v1063q0 191 111 305.5t301 114.5q156 0 246 -87.5t90 -215.5q0 -57 -19 -107.5t-46 -87t-54.5 -70.5t-46.5 -72.5t-19 -76.5q0 -40 22.5 -72t59 -55t80.5 -45t88 -49t80.5 -60.5t59 -85.5t22.5 -118q0 -132 -92 -219t-242 -87q-155 0 -295 93l68 118 q115 -80 223 -80q83 0 130.5 46.5t47.5 113.5q0 48 -23 86t-59 63.5t-80.5 48.5t-88.5 48t-80 54.5t-59 75t-23 103.5q0 62 29 120t63 96.5t63 94t29 113.5q0 78 -47 127.5t-129 49.5q-114 0 -178 -79t-64 -229v-1038h-168z" />
|
||||||
|
<glyph unicode="à" d="M166 258q0 168 168 255t553 118q-3 112 -66 181t-198 69q-157 0 -349 -119l-65 115q89 59 206 101t236 42q199 0 301.5 -109.5t102.5 -300.5v-610h-137l-15 135h-6q-207 -160 -393 -160q-144 0 -241 76.5t-97 206.5zM330 270q0 -80 62.5 -119.5t156.5 -39.5 q161 0 338 147v262q-208 -17 -333 -52t-174.5 -82.5t-49.5 -115.5zM377 1477l119 114l290 -344l-88 -84z" />
|
||||||
|
<glyph unicode="á" d="M166 258q0 168 168 255t553 118q-3 112 -66 181t-198 69q-157 0 -349 -119l-65 115q89 59 206 101t236 42q199 0 301.5 -109.5t102.5 -300.5v-610h-137l-15 135h-6q-207 -160 -393 -160q-144 0 -241 76.5t-97 206.5zM330 270q0 -80 62.5 -119.5t156.5 -39.5 q161 0 338 147v262q-208 -17 -333 -52t-174.5 -82.5t-49.5 -115.5zM524 1247l291 344l119 -114l-322 -314z" />
|
||||||
|
<glyph unicode="â" d="M166 258q0 168 168 255t553 118q-3 112 -66 181t-198 69q-157 0 -349 -119l-65 115q89 59 206 101t236 42q199 0 301.5 -109.5t102.5 -300.5v-610h-137l-15 135h-6q-207 -160 -393 -160q-144 0 -241 76.5t-97 206.5zM330 270q0 -80 62.5 -119.5t156.5 -39.5 q161 0 338 147v262q-208 -17 -333 -52t-174.5 -82.5t-49.5 -115.5zM338 1229l233 287h168l234 -287l-72 -66l-242 232h-8l-241 -232z" />
|
||||||
|
<glyph unicode="ã" d="M166 258q0 168 168 255t553 118q-3 112 -66 181t-198 69q-157 0 -349 -119l-65 115q89 59 206 101t236 42q199 0 301.5 -109.5t102.5 -300.5v-610h-137l-15 135h-6q-207 -160 -393 -160q-144 0 -241 76.5t-97 206.5zM301 1198q5 128 55.5 203.5t151.5 75.5q49 0 93.5 -27 t72.5 -59t63 -59t66 -27q42 0 65.5 43.5t28.5 117.5l113 -8q-5 -126 -55.5 -201t-151.5 -75q-40 0 -76.5 17.5t-63 43t-51 51t-50.5 43t-52 17.5q-86 0 -96 -162zM330 270q0 -80 62.5 -119.5t156.5 -39.5q161 0 338 147v262q-208 -17 -333 -52t-174.5 -82.5t-49.5 -115.5z " />
|
||||||
|
<glyph unicode="ä" d="M166 258q0 168 168 255t553 118q-3 112 -66 181t-198 69q-157 0 -349 -119l-65 115q89 59 206 101t236 42q199 0 301.5 -109.5t102.5 -300.5v-610h-137l-15 135h-6q-207 -160 -393 -160q-144 0 -241 76.5t-97 206.5zM330 270q0 -80 62.5 -119.5t156.5 -39.5 q161 0 338 147v262q-208 -17 -333 -52t-174.5 -82.5t-49.5 -115.5zM344 1319q0 48 32 81.5t81 33.5t80.5 -33.5t31.5 -81.5q0 -50 -31.5 -82.5t-80.5 -32.5t-81 32.5t-32 82.5zM741 1319q0 48 32 81.5t81 33.5t81 -33.5t32 -81.5q0 -50 -32 -82.5t-81 -32.5t-81 32.5 t-32 82.5z" />
|
||||||
|
<glyph unicode="å" d="M166 258q0 168 168 255t553 118q-3 112 -66 181t-198 69q-157 0 -349 -119l-65 115q89 59 206 101t236 42q199 0 301.5 -109.5t102.5 -300.5v-610h-137l-15 135h-6q-207 -160 -393 -160q-144 0 -241 76.5t-97 206.5zM330 270q0 -80 62.5 -119.5t156.5 -39.5 q161 0 338 147v262q-208 -17 -333 -52t-174.5 -82.5t-49.5 -115.5zM430 1362q0 86 61 141.5t164 55.5t164.5 -56t61.5 -141t-61.5 -141t-164.5 -56t-164 55.5t-61 141.5zM539 1362q0 -51 33.5 -86t82.5 -35t83 35t34 86q0 52 -33.5 86.5t-83.5 34.5t-83 -34.5t-33 -86.5z " />
|
||||||
|
<glyph unicode="æ" d="M35 246q0 155 122 247t388 125q-8 263 -180 263q-114 0 -234 -82l-63 114q166 107 311 107q186 0 252 -205q49 104 124 154.5t163 50.5q100 0 170.5 -64t102.5 -164.5t32 -226.5q0 -35 -9 -114h-534q8 -159 74 -248.5t182 -89.5q101 0 194 65l62 -115q-122 -88 -262 -88 q-202 0 -307 179q-152 -179 -326 -179q-116 0 -189 73.5t-73 197.5zM190 262q0 -71 41.5 -111t110.5 -40q58 0 121.5 36.5t116.5 104.5q-35 110 -35 244v14q-197 -29 -276 -90t-79 -158zM682 582h403q-9 305 -178 305q-85 0 -148 -75t-77 -230z" />
|
||||||
|
<glyph unicode="ç" d="M164 496q0 122 44.5 222.5t120.5 165.5t176.5 100.5t213.5 35.5q212 0 362 -146l-84 -108q-131 115 -272 115q-172 0 -279.5 -106.5t-107.5 -278.5q0 -170 105.5 -275.5t277.5 -105.5q161 0 307 125l76 -109q-151 -136 -346 -154l-39 -108q75 -18 112 -51.5t37 -93.5 q0 -171 -338 -187l-16 82q125 9 174 32.5t49 69.5q0 41 -35.5 64t-121.5 35l65 157q-215 19 -348 156.5t-133 362.5z" />
|
||||||
|
<glyph unicode="è" d="M139 500q0 118 42 217.5t112.5 164.5t162 101.5t191.5 36.5q213 0 334 -127t121 -340q0 -48 -8 -102h-785q15 -164 120.5 -252t266.5 -88q155 0 303 94l62 -111q-177 -119 -385 -119q-151 0 -271.5 61t-193 182t-72.5 282zM313 582h635q-10 151 -88.5 228t-208.5 77 q-127 0 -221 -81t-117 -224zM369 1477l118 114l291 -344l-88 -84z" />
|
||||||
|
<glyph unicode="é" d="M139 500q0 118 42 217.5t112.5 164.5t162 101.5t191.5 36.5q213 0 334 -127t121 -340q0 -48 -8 -102h-785q15 -164 120.5 -252t266.5 -88q155 0 303 94l62 -111q-177 -119 -385 -119q-151 0 -271.5 61t-193 182t-72.5 282zM313 582h635q-10 151 -88.5 228t-208.5 77 q-127 0 -221 -81t-117 -224zM516 1247l291 344l119 -114l-322 -314z" />
|
||||||
|
<glyph unicode="ê" d="M139 500q0 118 42 217.5t112.5 164.5t162 101.5t191.5 36.5q213 0 334 -127t121 -340q0 -48 -8 -102h-785q15 -164 120.5 -252t266.5 -88q155 0 303 94l62 -111q-177 -119 -385 -119q-151 0 -271.5 61t-193 182t-72.5 282zM313 582h635q-10 151 -88.5 228t-208.5 77 q-127 0 -221 -81t-117 -224zM330 1229l233 287h168l234 -287l-72 -66l-242 232h-8l-242 -232z" />
|
||||||
|
<glyph unicode="ë" d="M139 500q0 118 42 217.5t112.5 164.5t162 101.5t191.5 36.5q213 0 334 -127t121 -340q0 -48 -8 -102h-785q15 -164 120.5 -252t266.5 -88q155 0 303 94l62 -111q-177 -119 -385 -119q-151 0 -271.5 61t-193 182t-72.5 282zM313 582h635q-10 151 -88.5 228t-208.5 77 q-127 0 -221 -81t-117 -224zM336 1319q0 48 32 81.5t81 33.5t80.5 -33.5t31.5 -81.5q0 -50 -31.5 -82.5t-80.5 -32.5t-81 32.5t-32 82.5zM733 1319q0 48 32 81.5t81 33.5t80.5 -33.5t31.5 -81.5q0 -50 -31.5 -82.5t-80.5 -32.5t-81 32.5t-32 82.5z" />
|
||||||
|
<glyph unicode="ì" d="M184 858v137h631v-995h-168v858h-463zM434 1477l119 114l291 -344l-88 -84z" />
|
||||||
|
<glyph unicode="í" d="M184 858v137h631v-995h-168v858h-463zM582 1247l290 344l119 -114l-321 -314z" />
|
||||||
|
<glyph unicode="î" d="M184 858v137h631v-995h-168v858h-463zM395 1229l234 287h168l233 -287l-72 -66l-241 232h-8l-242 -232z" />
|
||||||
|
<glyph unicode="ï" d="M184 858v137h631v-995h-168v858h-463zM401 1319q0 48 32 81.5t81 33.5t81 -33.5t32 -81.5q0 -50 -32 -82.5t-81 -32.5t-81 32.5t-32 82.5zM799 1319q0 48 31.5 81.5t80.5 33.5t81 -33.5t32 -81.5q0 -50 -32 -82.5t-81 -32.5t-80.5 32.5t-31.5 82.5z" />
|
||||||
|
<glyph unicode="ð" d="M123 455q0 207 131 333.5t336 126.5q95 0 181.5 -43.5t143.5 -119.5q-53 257 -235 419l-311 -159l-62 106l266 135q-93 65 -235 136l78 106q179 -84 295 -172l280 143l62 -102l-242 -125q287 -277 287 -713q0 -248 -132.5 -399.5t-355.5 -151.5q-130 0 -240 57 t-178.5 168t-68.5 255zM281 455q0 -150 96.5 -245t236.5 -95q158 0 240 110t82 295q0 61 -2 90q-132 174 -320 174q-159 0 -246 -91.5t-87 -237.5z" />
|
||||||
|
<glyph unicode="ñ" d="M190 0v995h140l14 -170h8q87 93 176.5 144t198.5 51q344 0 344 -402v-618h-168v596q0 143 -54 210.5t-175 67.5q-85 0 -153.5 -41.5t-162.5 -138.5v-694h-168zM297 1198q5 128 55.5 203.5t151.5 75.5q49 0 93.5 -27t72.5 -59t63 -59t66 -27q42 0 65.5 43.5t28.5 117.5 l113 -8q-5 -126 -55.5 -201t-151.5 -75q-40 0 -76.5 17.5t-63 43t-51 51t-50.5 43t-52 17.5q-86 0 -96 -162z" />
|
||||||
|
<glyph unicode="ò" d="M123 496q0 122 40 222.5t107.5 165.5t156 100.5t187.5 35.5t187.5 -35.5t156.5 -100.5t108 -165.5t40 -222.5q0 -120 -40 -220t-108 -165t-156.5 -100.5t-187.5 -35.5t-187.5 35.5t-156 100.5t-107.5 165t-40 220zM297 496q0 -170 87.5 -275.5t229.5 -105.5t230 105.5 t88 275.5q0 172 -88 278.5t-230 106.5t-229.5 -106.5t-87.5 -278.5zM336 1477l119 114l290 -344l-88 -84z" />
|
||||||
|
<glyph unicode="ó" d="M123 496q0 122 40 222.5t107.5 165.5t156 100.5t187.5 35.5t187.5 -35.5t156.5 -100.5t108 -165.5t40 -222.5q0 -120 -40 -220t-108 -165t-156.5 -100.5t-187.5 -35.5t-187.5 35.5t-156 100.5t-107.5 165t-40 220zM297 496q0 -170 87.5 -275.5t229.5 -105.5t230 105.5 t88 275.5q0 172 -88 278.5t-230 106.5t-229.5 -106.5t-87.5 -278.5zM483 1247l291 344l119 -114l-322 -314z" />
|
||||||
|
<glyph unicode="ô" d="M123 496q0 122 40 222.5t107.5 165.5t156 100.5t187.5 35.5t187.5 -35.5t156.5 -100.5t108 -165.5t40 -222.5q0 -120 -40 -220t-108 -165t-156.5 -100.5t-187.5 -35.5t-187.5 35.5t-156 100.5t-107.5 165t-40 220zM297 496q0 -170 87.5 -275.5t229.5 -105.5t230 105.5 t88 275.5q0 172 -88 278.5t-230 106.5t-229.5 -106.5t-87.5 -278.5zM297 1229l233 287h168l234 -287l-72 -66l-242 232h-8l-241 -232z" />
|
||||||
|
<glyph unicode="õ" d="M123 496q0 122 40 222.5t107.5 165.5t156 100.5t187.5 35.5t187.5 -35.5t156.5 -100.5t108 -165.5t40 -222.5q0 -120 -40 -220t-108 -165t-156.5 -100.5t-187.5 -35.5t-187.5 35.5t-156 100.5t-107.5 165t-40 220zM260 1198q5 128 55.5 203.5t151.5 75.5q49 0 93.5 -27 t72.5 -59t63 -59t66 -27q42 0 65.5 43.5t28.5 117.5l113 -8q-5 -126 -55.5 -201t-151.5 -75q-40 0 -76.5 17.5t-63 43t-51 51t-50.5 43t-52 17.5q-86 0 -96 -162zM297 496q0 -170 87.5 -275.5t229.5 -105.5t230 105.5t88 275.5q0 172 -88 278.5t-230 106.5t-229.5 -106.5 t-87.5 -278.5z" />
|
||||||
|
<glyph unicode="ö" d="M123 496q0 122 40 222.5t107.5 165.5t156 100.5t187.5 35.5t187.5 -35.5t156.5 -100.5t108 -165.5t40 -222.5q0 -120 -40 -220t-108 -165t-156.5 -100.5t-187.5 -35.5t-187.5 35.5t-156 100.5t-107.5 165t-40 220zM297 496q0 -170 87.5 -275.5t229.5 -105.5t230 105.5 t88 275.5q0 172 -88 278.5t-230 106.5t-229.5 -106.5t-87.5 -278.5zM303 1319q0 48 32 81.5t81 33.5t80.5 -33.5t31.5 -81.5q0 -50 -31.5 -82.5t-80.5 -32.5t-81 32.5t-32 82.5zM700 1319q0 48 32 81.5t81 33.5t81 -33.5t32 -81.5q0 -50 -32 -82.5t-81 -32.5t-81 32.5 t-32 82.5z" />
|
||||||
|
<glyph unicode="÷" d="M174 612v127h881v-127h-881zM504 307q0 47 31.5 78t78.5 31t79 -31t32 -78q0 -49 -31.5 -79.5t-79.5 -30.5t-79 30.5t-31 79.5zM504 1044q0 47 31.5 78t78.5 31t79 -31t32 -78q0 -49 -31.5 -79.5t-79.5 -30.5t-79 30.5t-31 79.5z" />
|
||||||
|
<glyph unicode="ø" d="M123 496q0 122 40 222.5t107.5 165.5t156 100.5t187.5 35.5q160 0 287 -88l107 125l94 -86l-109 -127q113 -139 113 -348q0 -120 -40 -220t-108 -165t-156.5 -100.5t-187.5 -35.5q-159 0 -286 88l-107 -124l-94 86l109 127q-113 139 -113 344zM297 496q0 -125 47 -217 l459 538q-77 68 -189 68q-142 0 -229.5 -108.5t-87.5 -280.5zM424 176q81 -65 190 -65q142 0 230 107t88 278q0 130 -47 219z" />
|
||||||
|
<glyph unicode="ù" d="M158 377v618h170v-596q0 -144 53.5 -211t175.5 -67q84 0 154 42.5t155 141.5v690h168v-995h-137l-14 174h-9q-170 -199 -370 -199q-346 0 -346 402zM326 1477l118 114l291 -344l-88 -84z" />
|
||||||
|
<glyph unicode="ú" d="M158 377v618h170v-596q0 -144 53.5 -211t175.5 -67q84 0 154 42.5t155 141.5v690h168v-995h-137l-14 174h-9q-170 -199 -370 -199q-346 0 -346 402zM473 1247l291 344l119 -114l-322 -314z" />
|
||||||
|
<glyph unicode="û" d="M158 377v618h170v-596q0 -144 53.5 -211t175.5 -67q84 0 154 42.5t155 141.5v690h168v-995h-137l-14 174h-9q-170 -199 -370 -199q-346 0 -346 402zM287 1229l233 287h168l234 -287l-72 -66l-242 232h-8l-242 -232z" />
|
||||||
|
<glyph unicode="ü" d="M158 377v618h170v-596q0 -144 53.5 -211t175.5 -67q84 0 154 42.5t155 141.5v690h168v-995h-137l-14 174h-9q-170 -199 -370 -199q-346 0 -346 402zM293 1319q0 48 32 81.5t81 33.5t80.5 -33.5t31.5 -81.5q0 -50 -31.5 -82.5t-80.5 -32.5t-81 32.5t-32 82.5zM690 1319 q0 48 32 81.5t81 33.5t80.5 -33.5t31.5 -81.5q0 -50 -31.5 -82.5t-80.5 -32.5t-81 32.5t-32 82.5z" />
|
||||||
|
<glyph unicode="ý" d="M100 995h170l244 -551q17 -39 37.5 -87t46 -108.5t39.5 -92.5h8q92 247 107 288l217 551h159l-438 -1077q-130 -346 -422 -346q-73 0 -131 20l35 134q51 -15 90 -15q188 0 273 213l30 74zM492 1247l290 344l119 -114l-321 -314z" />
|
||||||
|
<glyph unicode="þ" d="M190 -420v1878h168v-411l-6 -179h6q70 70 158 111t174 41q198 0 307 -136.5t109 -371.5q0 -123 -37.5 -226t-100.5 -170t-144.5 -104t-170.5 -37q-72 0 -151 35t-144 94h-6l6 -188v-336h-168zM358 233q66 -59 137.5 -87.5t129.5 -28.5q134 0 220.5 107t86.5 288 q0 172 -69.5 269.5t-213.5 97.5q-141 0 -291 -150v-496z" />
|
||||||
|
<glyph unicode="ÿ" d="M100 995h170l244 -551q17 -39 37.5 -87t46 -108.5t39.5 -92.5h8q92 247 107 288l217 551h159l-438 -1077q-130 -346 -422 -346q-73 0 -131 20l35 134q51 -15 90 -15q188 0 273 213l30 74zM311 1319q0 48 32 81.5t81 33.5t81 -33.5t32 -81.5q0 -50 -32 -82.5t-81 -32.5 t-81 32.5t-32 82.5zM709 1319q0 48 31.5 81.5t80.5 33.5t81 -33.5t32 -81.5q0 -50 -32 -82.5t-81 -32.5t-80.5 32.5t-31.5 82.5z" />
|
||||||
|
<glyph unicode="Œ" d="M68 678q0 318 144 493t400 175h578v-144h-397v-424h303v-145h-303v-488h417v-145h-604q-254 0 -396 178.5t-142 499.5zM244 678q0 -260 87.5 -399.5t260.5 -139.5h45v1065h-45q-173 0 -260.5 -134.5t-87.5 -391.5z" />
|
||||||
|
<glyph unicode="œ" d="M23 496q0 244 99.5 384t254.5 140q190 0 268 -246q39 123 112 184.5t171 61.5q95 0 163 -63.5t100 -164.5t32 -227q0 -35 -9 -114h-503q9 -165 74.5 -251.5t168.5 -86.5q83 0 176 65l62 -115q-113 -88 -244 -88q-104 0 -182.5 59.5t-118.5 180.5q-82 -240 -272 -240 q-155 0 -253.5 139.5t-98.5 381.5zM180 496q0 -174 53.5 -277.5t151.5 -103.5q89 0 143 106t54 277t-54 277t-143 106q-98 0 -151.5 -104t-53.5 -281zM713 582h372q-9 305 -172 305q-82 0 -136 -78.5t-64 -226.5z" />
|
||||||
|
<glyph unicode="Ÿ" d="M78 1343h180l203 -399q23 -47 73.5 -151t79.5 -162h9q28 58 81 163t76 152l195 397h176l-451 -864v-479h-172v479zM324 1569q0 45 29.5 73.5t74.5 28.5t73.5 -28.5t28.5 -73.5q0 -46 -29 -75.5t-73 -29.5t-74 30t-30 75zM698 1569q0 45 29 73.5t74 28.5t74.5 -28.5 t29.5 -73.5t-29.5 -75t-74.5 -30q-44 0 -73.5 29.5t-29.5 75.5z" />
|
||||||
|
<glyph unicode="ˆ" d="M297 1229l233 287h168l234 -287l-72 -66l-242 232h-8l-241 -232z" />
|
||||||
|
<glyph unicode="˜" d="M260 1198q5 128 55.5 203.5t151.5 75.5q49 0 93.5 -27t72.5 -59t63 -59t66 -27q42 0 65.5 43.5t28.5 117.5l113 -8q-5 -126 -55.5 -201t-151.5 -75q-40 0 -76.5 17.5t-63 43t-51 51t-50.5 43t-52 17.5q-86 0 -96 -162z" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="901" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="1802" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="901" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="1802" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="600" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="450" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="300" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="300" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="225" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="360" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="100" />
|
||||||
|
<glyph unicode="‐" d="M174 612v127h881v-127h-881z" />
|
||||||
|
<glyph unicode="‑" d="M174 612v127h881v-127h-881z" />
|
||||||
|
<glyph unicode="‒" d="M174 612v127h881v-127h-881z" />
|
||||||
|
<glyph unicode="–" d="M164 442v148h901v-148h-901z" />
|
||||||
|
<glyph unicode="—" d="M0 442v148h1229v-148h-1229z" />
|
||||||
|
<glyph unicode="‘" d="M428 963q0 153 78 275.5t217 193.5l55 -99q-199 -118 -211 -323q24 12 54 12q63 0 103 -41.5t40 -106.5q0 -70 -42.5 -113.5t-109.5 -43.5q-81 0 -132.5 66.5t-51.5 179.5z" />
|
||||||
|
<glyph unicode="’" d="M444 815q201 114 213 324q-26 -13 -53 -13q-64 0 -104.5 40.5t-40.5 105.5q0 70 42.5 115t108.5 45q83 0 134 -66.5t51 -181.5q0 -152 -77.5 -274t-215.5 -193z" />
|
||||||
|
<glyph unicode="‚" d="M444 -365q201 114 213 324q-24 -12 -53 -12q-64 0 -104.5 40.5t-40.5 104.5q0 70 42.5 115t108.5 45q83 0 134 -66.5t51 -181.5q0 -152 -77.5 -274t-215.5 -193z" />
|
||||||
|
<glyph unicode="“" d="M193 963q0 153 77.5 275.5t216.5 193.5l56 -99q-199 -118 -211 -323q24 12 53 12q63 0 103 -41.5t40 -106.5q0 -70 -42.5 -113.5t-108.5 -43.5q-81 0 -132.5 66.5t-51.5 179.5zM664 963q0 153 77.5 275.5t216.5 193.5l56 -99q-199 -118 -211 -323q24 12 53 12 q63 0 103 -41.5t40 -106.5q0 -70 -42.5 -113.5t-108.5 -43.5q-81 0 -132.5 66.5t-51.5 179.5z" />
|
||||||
|
<glyph unicode="”" d="M209 815q201 114 213 324q-26 -13 -53 -13q-65 0 -105.5 41t-40.5 105q0 70 43 115t109 45q83 0 133.5 -66.5t50.5 -181.5q0 -152 -77.5 -274t-215.5 -193zM680 815q201 114 213 324q-26 -13 -53 -13q-64 0 -105 41t-41 105q0 70 43 115t109 45q83 0 133.5 -66.5 t50.5 -181.5q0 -152 -77.5 -274t-215.5 -193z" />
|
||||||
|
<glyph unicode="„" d="M209 -365q201 114 213 324q-24 -12 -53 -12q-65 0 -105.5 40.5t-40.5 104.5q0 70 43 115t109 45q83 0 133.5 -66.5t50.5 -181.5q0 -152 -77.5 -274t-215.5 -193zM680 -365q201 114 213 324q-24 -12 -53 -12q-65 0 -105.5 40.5t-40.5 104.5q0 70 43 115t109 45 q83 0 133.5 -66.5t50.5 -181.5q0 -152 -77.5 -274t-215.5 -193z" />
|
||||||
|
<glyph unicode="•" d="M309 537q0 132 90 216.5t215 84.5t215.5 -85t90.5 -216t-90.5 -216t-215.5 -85t-215 84.5t-90 216.5z" />
|
||||||
|
<glyph unicode="…" d="M66 129q0 68 41 111t102 43q60 0 100.5 -43t40.5 -111q0 -67 -41 -110.5t-100 -43.5q-61 0 -102 43.5t-41 110.5zM471 129q0 68 41 111t102 43t102.5 -43t41.5 -111q0 -67 -41.5 -110.5t-102.5 -43.5t-102 43.5t-41 110.5zM879 129q0 68 40.5 111t100.5 43q61 0 102 -43 t41 -111q0 -67 -41 -110.5t-102 -43.5q-59 0 -100 43.5t-41 110.5z" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="360" />
|
||||||
|
<glyph unicode="‹" d="M403 434v164l314 328l80 -72l-260 -338l260 -340l-80 -70z" />
|
||||||
|
<glyph unicode="›" d="M432 176l260 340l-260 338l80 72l313 -328v-164l-313 -328z" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="450" />
|
||||||
|
<glyph unicode="€" d="M119 483v90l121 9q-2 23 -2 69q0 45 2 68h-121v90l131 10q38 241 183 376.5t362 135.5q100 0 190.5 -44t155.5 -116l-101 -96q-118 121 -252 121q-147 0 -240.5 -99t-123.5 -278h602v-100h-612q-2 -20 -2 -62q0 -48 2 -73h530v-101h-518q30 -177 120 -274.5t230 -97.5 q85 0 152 36t131 109l100 -90q-164 -191 -393 -191q-202 0 -340 135t-176 373h-131z" />
|
||||||
|
<glyph unicode="™" d="M-10 1274v110h516v-110h-197v-524h-123v524h-196zM598 750v634h145l93 -233l55 -164h8l53 164l90 233h146v-634h-113v280l15 215h-9l-145 -383h-86l-148 383h-8l15 -215v-280h-111z" />
|
||||||
|
<glyph unicode="◼" horiz-adv-x="993" d="M0 0v993h993v-993h-993z" />
|
||||||
|
<glyph unicode="fi" d="M106 858v127l136 10v158q0 157 72 243.5t218 86.5q83 0 166 -33l-34 -129q-61 25 -113 25q-141 0 -141 -193v-158h211v-137h-211v-858h-168v858h-136zM799 1335q0 58 38.5 94.5t96.5 36.5t96.5 -36.5t38.5 -94.5q0 -59 -38.5 -95t-96.5 -36t-96.5 36t-38.5 95zM848 0v995 h168v-995h-168z" />
|
||||||
|
<glyph unicode="fl" d="M117 858v127l135 10v158q0 157 72.5 243.5t218.5 86.5q83 0 166 -33l-37 -129q-58 25 -113 25q-139 0 -139 -193v-158h211v-137h-211v-858h-168v858h-135zM821 201v1257h168v-1270q0 -37 13 -55t34 -18q19 0 37 4l23 -127q-42 -17 -97 -17q-93 0 -135.5 57t-42.5 169z " />
|
||||||
|
</font>
|
||||||
|
</defs></svg>
|
After Width: | Height: | Size: 53 KiB |
BIN
fonts/sourcecodepro/sourcecodepro-regular-webfont.ttf
Normal file
BIN
fonts/sourcecodepro/sourcecodepro-regular-webfont.woff
Normal file
BIN
fonts/sourcecodepro/sourcecodepro-regular-webfont.woff2
Normal file
3
fonts/tahoma.css
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
.crayon-font-tahoma * {
|
||||||
|
font-family: Tahoma, Arial, sans !important;
|
||||||
|
}
|
3
fonts/times.css
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
.crayon-font-times * {
|
||||||
|
font-family: Times New Roman, serif !important;
|
||||||
|
}
|
14
fonts/ubuntu-mono.css
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
@font-face {
|
||||||
|
font-family: 'UbuntuMonoRegular';
|
||||||
|
src: url('ubuntu-mono/ubuntu-mono-webfont.eot');
|
||||||
|
src: url('ubuntu-mono/ubuntu-mono-webfont.eot?#iefix') format('embedded-opentype'),
|
||||||
|
url('ubuntu-mono/ubuntu-mono-webfont.woff') format('woff'),
|
||||||
|
url('ubuntu-mono/ubuntu-mono-webfont.ttf') format('truetype'),
|
||||||
|
url('ubuntu-mono/ubuntu-mono-webfont.svg#UbuntuMonoRegular') format('svg');
|
||||||
|
font-weight: normal;
|
||||||
|
font-style: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
.crayon-font-ubuntu-mono * {
|
||||||
|
font-family: Ubuntu Mono, 'UbuntuMonoRegular', 'Courier New', monospace !important;
|
||||||
|
}
|
BIN
fonts/ubuntu-mono/ubuntu-mono-webfont.eot
Normal file
146
fonts/ubuntu-mono/ubuntu-mono-webfont.svg
Normal file
@ -0,0 +1,146 @@
|
|||||||
|
<?xml version="1.0" standalone="no"?>
|
||||||
|
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<metadata>
|
||||||
|
This is a custom SVG webfont generated by Font Squirrel.
|
||||||
|
Copyright : Copyright 2011 Canonical Ltd Licensed under the Ubuntu Font Licence 10
|
||||||
|
Designer : Dalton Maag Ltd
|
||||||
|
Foundry : Dalton Maag Ltd
|
||||||
|
Foundry URL : httpwwwdaltonmaagcom
|
||||||
|
</metadata>
|
||||||
|
<defs>
|
||||||
|
<font id="UbuntuMonoRegular" horiz-adv-x="1024" >
|
||||||
|
<font-face units-per-em="2048" ascent="1638" descent="-410" />
|
||||||
|
<missing-glyph horiz-adv-x="500" />
|
||||||
|
<glyph unicode=" " />
|
||||||
|
<glyph unicode="!" d="M371 114.5q0 63.5 41 101.5t96 38q57 0 97 -38t40 -101.5t-40 -101.5t-97 -38q-55 0 -96 38t-41 101.5zM418 924v344h182v-344q0 -76 -2 -139.5t-7 -121t-11 -113.5l-13 -118h-116l-13 118q-6 56 -11 113.5t-7 121t-2 139.5z" />
|
||||||
|
<glyph unicode=""" d="M264 1300v91h158v-93q0 -90 -10.5 -205.5t-26.5 -211.5h-86q-14 96 -24.5 211.5t-10.5 207.5zM602 1300v91h158v-93q0 -90 -10.5 -205.5t-24.5 -211.5h-86q-16 96 -26.5 211.5t-10.5 207.5z" />
|
||||||
|
<glyph unicode="#" d="M55 334v137h158l61 326h-219v135h248l64 336h153l-63 -336h227l61 336h154l-61 -336h131v-135h-158l-63 -326h221v-137h-248l-64 -334h-153l63 334h-227l-64 -334h-153l63 334h-131zM367 471h225l63 326h-225z" />
|
||||||
|
<glyph unicode="$" d="M111 106l45 142q55 -27 130.5 -50.5t190.5 -23.5q74 0 124 11.5t79 33t41 51t12 64.5q0 51 -24.5 87t-66.5 63.5t-95 49t-111 41.5q-55 20 -109.5 45t-96.5 61t-68.5 86t-26.5 124q0 131 78 213t225 104v211h152v-205q82 -4 150.5 -19t109.5 -32l-35 -143 q-43 16 -108.5 33.5t-165.5 17.5q-111 0 -169.5 -41t-58.5 -119q0 -43 17.5 -71.5t50.5 -51t77 -41t99 -38.5q70 -27 135.5 -56.5t114.5 -70.5t78.5 -98.5t29.5 -137.5q0 -121 -79.5 -205t-245.5 -104v-236h-152v230q-129 4 -208.5 28t-118.5 47z" />
|
||||||
|
<glyph unicode="%" d="M37 977q0 156 59.5 236.5t164 80.5t163.5 -80.5t59 -236.5t-59 -238t-163.5 -82t-164 82t-59.5 238zM51 0l776 1268h144l-776 -1268h-144zM162 977q0 -92 25.5 -151.5t72.5 -59.5t71.5 59.5t24.5 151.5t-24.5 151.5t-71.5 59.5t-72.5 -59.5t-25.5 -151.5zM543 290.5 q0 155.5 58 236.5t162.5 81t164 -81t59.5 -236.5t-59.5 -236.5t-164 -81t-162.5 81t-58 236.5zM668 291q0 -92 24.5 -151.5t71.5 -59.5t72.5 59.5t25.5 151.5t-25.5 151.5t-72.5 59.5t-71.5 -59.5t-24.5 -151.5z" />
|
||||||
|
<glyph unicode="&" d="M63 309q0 96 50.5 194.5t158.5 182.5q-53 72 -85.5 145.5t-32.5 151.5q0 80 25.5 139.5t68.5 97t99 57t116 19.5q53 0 104 -16t90 -50t62.5 -83t23.5 -113q0 -94 -61 -193.5t-195 -183.5l70 -77l73 -83l77 -89q16 57 28.5 124.5t18.5 149.5l141 -18 q-12 -119 -35.5 -212.5t-58.5 -168.5q47 -66 90 -135.5t78 -147.5h-178q-35 72 -78 137q-66 -82 -147 -117.5t-169 -35.5q-78 0 -139 25.5t-104 70.5t-67 104t-24 125zM233 326q0 -80 41 -132.5t101 -65.5q18 -4 38 -4q43 0 91 20q70 30 127 112q-68 92 -141 171l-138 157 q-59 -53 -89 -122.5t-30 -135.5zM313 995q0 -59 18.5 -110t78.5 -129q98 61 139 130.5t41 129.5q0 74 -40 110.5t-91 36.5q-53 0 -99.5 -42t-46.5 -126z" />
|
||||||
|
<glyph unicode="'" d="M422 1300v91h178v-93q0 -45 -3 -103t-8 -120.5t-11.5 -123t-14.5 -107.5h-104q-8 47 -14.5 107.5t-11.5 123t-8 121.5t-3 104z" />
|
||||||
|
<glyph unicode="(" d="M231 549q0 254 117 485.5t350 401.5l90 -123h-2q-190 -147 -290.5 -340t-100.5 -420q0 -115 23.5 -217.5t72 -196.5t123 -182t177.5 -176l-93 -123q-236 174 -351.5 404.5t-115.5 486.5z" />
|
||||||
|
<glyph unicode=")" d="M231 1313l93 123q236 -174 351.5 -404.5t115.5 -486.5q0 -127 -30 -250t-88.5 -236.5t-145.5 -215t-203 -185.5l-91 123h3q190 147 291.5 339.5t101.5 420.5q0 115 -23.5 217t-73 196.5t-124.5 182.5t-177 176z" />
|
||||||
|
<glyph unicode="*" d="M117 915l55 168l14 -6q72 -29 144.5 -63.5t138.5 -71.5q-16 74 -29.5 154t-13.5 157v15h176v-15q0 -78 -13.5 -157.5t-29.5 -153.5q66 39 137.5 73t143.5 60l14 6l53 -168l-12 -4q-74 -23 -152.5 -35t-154.5 -20l114 -108q59 -56 101 -119l8 -11l-143 -104l-11 12 q-43 61 -77 134l-66 141l-68 -141q-35 -73 -81 -134l-11 -10l-141 102l10 13q45 63 103 119l112 106l-155 22q-80 11 -152 35z" />
|
||||||
|
<glyph unicode="+" d="M94 467v143h344v377h148v-377h346v-143h-346v-379h-148v379h-344z" />
|
||||||
|
<glyph unicode="," d="M305 -162l73 17q36 8 66.5 23.5t55 39t39.5 64.5q-66 6 -95.5 50t-29.5 87q0 82 46 124t105 42q76 0 115 -54.5t39 -132.5q0 -59 -23.5 -123.5t-72 -121t-120 -96.5t-169.5 -52z" />
|
||||||
|
<glyph unicode="-" d="M287 440v160h450v-160h-450z" />
|
||||||
|
<glyph unicode="." d="M362 131q0 63 41 110.5t111 47.5q68 0 109 -47t41 -111q0 -61 -41 -108.5t-109 -47.5q-70 0 -111 47.5t-41 108.5z" />
|
||||||
|
<glyph unicode="/" d="M141 -338l572 1770h170l-568 -1770h-174z" />
|
||||||
|
<glyph unicode="0" d="M94 634.5q0 319.5 109.5 490.5t308.5 171q201 0 309.5 -171t108.5 -490.5t-108.5 -490.5t-309.5 -171q-199 0 -308.5 171t-109.5 490.5zM266 634.5q0 -104.5 12.5 -197.5t41 -162.5t75.5 -110.5t117 -41t117 41t75.5 110.5t41 162.5t12.5 197.5t-12.5 198t-41 163 t-75.5 110.5t-117 41t-117 -41t-75.5 -110.5t-41 -163t-12.5 -198zM397 657.5q0 53.5 33 94.5t86 41q51 0 83 -41t32 -94.5t-32 -92.5t-83 -39q-53 0 -86 39t-33 92.5z" />
|
||||||
|
<glyph unicode="1" d="M154 1006q104 41 202.5 103t182.5 159h118v-1125h240v-143h-682v143h274v889q-23 -20 -54.5 -41.5t-69 -42t-78.5 -39t-80 -30.5z" />
|
||||||
|
<glyph unicode="2" d="M117 1145q16 18 49 45t79 50.5t103.5 39.5t122.5 16q199 0 294 -91t95 -261q0 -66 -25.5 -127t-67.5 -120.5t-95 -116.5l-109 -113l-71 -74q-41 -43 -78 -88t-61.5 -88t-24.5 -74h583v-143h-768q-2 10 -2 22v21q0 86 29 159.5t74 139.5t101 124l112 114l87 88 q42 43 73.5 86t51 89t19.5 95q0 55 -17.5 94t-47 64.5t-68.5 38t-84 12.5q-53 0 -97 -14.5t-78 -35t-58.5 -40t-36.5 -31.5z" />
|
||||||
|
<glyph unicode="3" d="M121 39l33 145q33 -16 104.5 -38.5t175.5 -22.5q162 0 230.5 64.5t68.5 172.5q0 70 -28.5 117t-75.5 76t-108.5 41t-129.5 12h-43v137h60q45 0 93 9.5t88 33t64.5 64.5t24.5 104q0 104 -64.5 148.5t-150.5 44.5q-88 0 -149.5 -25.5t-102.5 -52.5l-66 129q43 31 130 64.5 t194 33.5q100 0 172 -24.5t118 -69.5t68.5 -105.5t22.5 -131.5q0 -100 -52.5 -170t-133.5 -107q98 -29 169.5 -111.5t71.5 -220.5q0 -82 -27.5 -152.5t-84 -121.5t-145.5 -80t-212 -29q-47 0 -97 7.5t-93 18.5t-77 22.5t-48 17.5z" />
|
||||||
|
<glyph unicode="4" d="M74 324v114q35 82 95 188.5t136 220.5t162 223.5t174 197.5h164v-805h149v-139h-149v-324h-164v324h-567zM238 463h403v604q-55 -59 -111.5 -131t-109.5 -150.5t-99 -160.5t-83 -162z" />
|
||||||
|
<glyph unicode="5" d="M135 39l33 145q33 -16 101.5 -38.5t172.5 -22.5q82 0 137.5 18.5t89 50t49 72.5t15.5 86q0 70 -23.5 124t-82 91t-159.5 56.5t-255 19.5q12 90 19.5 169t12.5 153.5t8 148.5t7 156h610v-144h-462l-6 -74q-3 -46 -7 -98l-8 -98q-4 -47 -6 -76q274 -10 399 -120.5 t125 -297.5q0 -84 -26.5 -155.5t-83 -122.5t-143.5 -80t-206 -29q-49 0 -97 7.5t-91 17.5t-76 21.5t-47 19.5z" />
|
||||||
|
<glyph unicode="6" d="M111 508q0 184 50 326.5t143 238.5t226.5 147.5t300.5 53.5l15 -143q-109 -2 -198 -24t-158.5 -70t-116.5 -123.5t-72 -186.5q49 23 107.5 37t123.5 14q106 0 181 -32.5t120.5 -87t66 -126t20.5 -147.5q0 -70 -23 -142.5t-70 -133t-120.5 -98.5t-176.5 -38 q-211 0 -315 141.5t-104 393.5zM283 508q0 -80 11 -150.5t38.5 -125t75 -86t120.5 -31.5q61 0 102.5 25.5t68 64.5t38 87t11.5 91q0 125 -56.5 190.5t-177.5 65.5q-66 0 -120 -12.5t-109 -36.5q-2 -20 -2 -40v-42z" />
|
||||||
|
<glyph unicode="7" d="M129 1120v148h803v-142q-61 -72 -133 -192.5t-136.5 -271t-111.5 -321.5t-59 -341h-175q10 145 52.5 308t101.5 315.5t131 282.5t141 214h-614z" />
|
||||||
|
<glyph unicode="8" d="M104 319q0 109 59.5 193t141.5 135q-174 98 -174 301q0 70 26.5 133.5t76 110.5t120 75.5t158.5 28.5q102 0 175 -30.5t118 -78.5t65.5 -106.5t20.5 -113.5q0 -109 -55.5 -188t-126.5 -126q211 -100 211 -323q0 -160 -101.5 -258.5t-308.5 -98.5q-119 0 -196.5 32 t-124 82t-66 111.5t-19.5 120.5zM268 317q0 -33 12.5 -68.5t41 -66t75.5 -50t115 -19.5q63 0 109.5 17t76 47t44 67t14.5 73q0 117 -84 179.5t-232 95.5q-82 -45 -127 -113t-45 -162zM297 963q0 -84 60.5 -157t199.5 -106q78 45 124 106.5t46 160.5q0 27 -12.5 60.5t-38 61 t-66.5 47t-98 19.5q-59 0 -99 -18.5t-67 -46t-38 -61t-11 -66.5z" />
|
||||||
|
<glyph unicode="9" d="M104 885q0 70 23 142.5t70 132t120.5 98t176.5 38.5q209 0 315 -143t106 -393q0 -379 -184 -570.5t-555 -193.5l-6 143q229 0 369.5 91.5t185.5 314.5q-49 -23 -108.5 -36t-124.5 -13q-109 0 -182.5 31.5t-119 86t-66 124t-20.5 147.5zM276 889q0 -125 56.5 -189.5 t177.5 -64.5q66 0 122 12t109 35q2 20 2 39v39q0 80 -11 151.5t-38.5 125t-76 85t-121.5 31.5q-61 0 -102.5 -25.5t-68 -63.5t-38 -85t-11.5 -90z" />
|
||||||
|
<glyph unicode=":" d="M362 131q0 63 41 110.5t111 47.5q68 0 109 -47t41 -111q0 -61 -41 -108.5t-109 -47.5q-70 0 -111 47.5t-41 108.5zM362 793q0 63 41 110t111 47q68 0 109 -47t41 -110q0 -61 -41 -108.5t-109 -47.5q-70 0 -111 47.5t-41 108.5z" />
|
||||||
|
<glyph unicode=";" d="M256 -162l73 17q36 8 66.5 23.5t55 39t38.5 64.5q-66 6 -95 50t-29 87q0 82 46 124t105 42q76 0 115 -54.5t39 -132.5q0 -59 -23.5 -123.5t-72 -121t-120 -96.5t-169.5 -52zM362 793q0 63 41 110t111 47q68 0 109 -47t41 -110q0 -61 -41 -108.5t-109 -47.5 q-70 0 -111 47.5t-41 108.5z" />
|
||||||
|
<glyph unicode="<" d="M100 449v145l791 336l47 -142l-649 -266l649 -268l-47 -141z" />
|
||||||
|
<glyph unicode="=" d="M94 270v146h838v-146h-838zM94 659v146h838v-146h-838z" />
|
||||||
|
<glyph unicode=">" d="M100 254l650 268l-650 266l47 142l791 -336v-145l-791 -336z" />
|
||||||
|
<glyph unicode="?" d="M188 1223q61 35 139 54t167 19q104 0 170.5 -28.5t105.5 -72.5t54.5 -97.5t15.5 -102.5q0 -61 -23.5 -109t-58.5 -91t-76 -82t-76 -81t-58.5 -91t-23.5 -109h-145l-2 39q0 88 45 152.5t99 120t99.5 110.5t45.5 127q0 78 -49.5 125t-145.5 47q-59 0 -117.5 -14.5 t-117.5 -46.5zM330 114.5q0 63.5 40 101.5t97 38q55 0 96 -38t41 -101.5t-41 -101.5t-96 -38q-57 0 -97 38t-40 101.5z" />
|
||||||
|
<glyph unicode="@" d="M82 498q0 211 38 362.5t104.5 247.5t154.5 142t190 46q180 0 284.5 -121.5t104.5 -338.5v-707q-61 -25 -124.5 -34t-116.5 -9q-72 0 -133.5 23.5t-107.5 72.5t-71.5 126t-25.5 184q0 190 98 289.5t256 99.5q16 0 31.5 -1t32.5 -3q0 129 -53.5 204.5t-170.5 75.5 q-72 0 -131 -35t-102 -111.5t-67.5 -197.5t-24.5 -293q0 -129 24.5 -248.5t76.5 -210t133 -144.5t194 -54q82 0 170 26l16 -137q-109 -29 -200 -28q-150 0 -259.5 66.5t-180 175t-105.5 248t-35 284.5zM543 492q0 -41 5 -88.5t23.5 -87.5t52 -67.5t93.5 -27.5q16 0 36.5 2 t43.5 8v502q-18 6 -36 8t-34 2q-88 0 -136 -68t-48 -183z" />
|
||||||
|
<glyph unicode="A" d="M18 0l78 293q43 158 93 323l106 333q55 167 117 319h209q59 -152 113 -319l103 -333l91 -323l78 -293h-179l-75 332h-488l-74 -332h-172zM303 471h410q-47 184 -101.5 355t-101.5 294q-47 -129 -102.5 -299t-104.5 -350z" />
|
||||||
|
<glyph unicode="B" d="M111 20v1229q31 8 70.5 14.5t81.5 9.5t82 5t73 2q94 0 176 -16.5t142.5 -55.5t94 -102.5t33.5 -157.5q0 -45 -14 -87t-40 -79t-59.5 -64.5t-72.5 -41.5q104 -29 175 -105.5t71 -199.5q0 -188 -121 -284.5t-385 -96.5q-31 0 -72 2t-82 5t-81.5 9t-71.5 14zM279 139 q4 -2 46 -5t105.5 -3t121.5 10.5t103 38t73 72.5t28 117q0 63 -25.5 106t-67.5 68.5t-97.5 37t-114.5 11.5h-172v-453zM279 731h133q51 0 102 10.5t92 33t65.5 61t24.5 98.5q0 55 -22.5 94t-59 63.5t-85 35t-101.5 10.5t-93 -1.5t-56 -5.5v-399z" />
|
||||||
|
<glyph unicode="C" d="M94 635q0 162 42 284.5t114 206.5t168 127t205 43q76 0 154.5 -20.5t154.5 -67.5l-49 -139q-135 78 -254 78q-84 0 -150.5 -36t-114 -103.5t-73 -161.5t-25.5 -211q0 -131 28 -227.5t77 -160t117.5 -94t148.5 -30.5q59 0 124.5 15.5t135.5 54.5l45 -140 q-72 -41 -152.5 -60.5t-173.5 -19.5q-113 0 -208 40t-164.5 121t-109.5 206t-40 295z" />
|
||||||
|
<glyph unicode="D" d="M111 20v1229q129 31 256 31q123 0 228 -35t182 -112.5t121 -200.5t44 -297q0 -176 -44 -299t-121 -200t-182.5 -111.5t-227.5 -34.5q-127 -1 -256 30zM279 141q51 -6 104 -6q92 0 163.5 27.5t121 88t76 156t26.5 228.5q0 258 -99.5 379t-293.5 121q-27 0 -52.5 -1 t-45.5 -6v-987z" />
|
||||||
|
<glyph unicode="E" d="M186 0v1268h711v-144h-543v-389h475v-143h-475v-449h588v-143h-756z" />
|
||||||
|
<glyph unicode="F" d="M186 0v1268h719v-144h-551v-395h486v-141h-486v-588h-168z" />
|
||||||
|
<glyph unicode="G" d="M94 635q0 160 41 282.5t111.5 206.5t165 128t202.5 44q70 0 123.5 -10t91 -24.5t62.5 -29.5l37 -24l-56 -141q-47 37 -111.5 60.5t-135.5 23.5q-78 0 -144.5 -37t-114 -104.5t-74 -162.5t-26.5 -212q0 -115 23.5 -209t68.5 -161.5t112 -105.5t153 -38q59 0 92 8t49 16 v480h168v-594q-39 -14 -125 -36t-203 -22q-115 0 -209 44t-160.5 128t-103.5 208t-37 282z" />
|
||||||
|
<glyph unicode="H" d="M92 0v1268h168v-535h504v535h168v-1268h-168v590h-504v-590h-168z" />
|
||||||
|
<glyph unicode="I" d="M182 0v143h246v981h-246v144h660v-144h-246v-981h246v-143h-660z" />
|
||||||
|
<glyph unicode="J" d="M111 76l67 137q39 -29 103.5 -61.5t150.5 -32.5q131 0 195.5 69.5t64.5 235.5v700h-432v144h600v-860q0 -90 -19.5 -170t-67.5 -138.5t-129 -92.5t-204 -34t-206.5 35t-122.5 68z" />
|
||||||
|
<glyph unicode="K" d="M131 0v1268h168v-566q133 137 255 287t214 279h195q-100 -150 -220 -297.5t-260 -294.5q66 -55 139.5 -129t144.5 -161t133.5 -185.5t105.5 -200.5h-191q-51 94 -110.5 184t-126 168t-137 142.5t-142.5 111.5v-606h-168z" />
|
||||||
|
<glyph unicode="L" d="M186 0v1268h168v-1125h588v-143h-756z" />
|
||||||
|
<glyph unicode="M" d="M66 0q6 156 14 319.5t19.5 325.5t26.5 319.5t34 303.5h155l199 -631l197 631h157q41 -299 58.5 -612.5t31.5 -655.5h-163l-4.5 240t-5.5 266l-6 278q-3 141 -7 275l-184 -578h-148l-188 578q-2 -133 -5 -274l-6 -278l-7 -267q-3 -129 -5 -240h-163z" />
|
||||||
|
<glyph unicode="N" d="M113 0v1268h172l146 -269q62 -115 114.5 -222t101.5 -221l111 -263v975h153v-1268h-172l-131 308l-118 259l-111 229l-113 216v-1012h-153z" />
|
||||||
|
<glyph unicode="O" d="M59 635q0 170 33 295t92.5 206t142.5 120.5t185 39.5q100 0 184 -39.5t143.5 -120.5t93.5 -206t34 -295t-34 -295t-93.5 -207t-143.5 -121t-184 -39q-102 0 -185 39t-142.5 121t-92.5 207t-33 295zM231 635q0 -250 68 -383t209 -133q143 0 215 133t72 383t-72 383 t-215 133q-141 0 -209 -133t-68 -383z" />
|
||||||
|
<glyph unicode="P" d="M150 0v1249q37 8 80.5 14.5t87.5 10.5t86 5t77 1q113 0 198 -28.5t141.5 -81t84 -124t27.5 -159.5q0 -199 -117 -306.5t-350 -107.5h-148v-473h-167zM317 616h140q154 0 228.5 61.5t74.5 203.5q0 254 -266 254q-53 0 -102.5 -1t-74.5 -6v-512z" />
|
||||||
|
<glyph unicode="Q" d="M59 633q0 170 33 295t92.5 205.5t142.5 120.5t185 40q100 0 184 -40t143.5 -120.5t93.5 -205.5t34 -295q0 -152 -27 -267.5t-76 -197.5t-118.5 -129t-153.5 -62q6 -41 34.5 -70.5t72.5 -51t100.5 -36t118.5 -22.5l-39 -135q-84 14 -161 36.5t-138.5 59.5t-104.5 90.5 t-57 131.5q-166 35 -262.5 193.5t-96.5 459.5zM231 633q0 -250 68 -383t209 -133q143 0 215 133t72 383t-72 383t-215 133q-141 0 -209 -133t-68 -383z" />
|
||||||
|
<glyph unicode="R" d="M113 0v1249q31 8 70.5 14.5t81.5 9.5t83 5t74 2q229 0 345 -100.5t116 -298.5q0 -117 -61.5 -206t-166.5 -138l69 -112l77 -133l77 -146q38 -75 70 -146h-180q-61 147 -134 282.5t-140 219.5q-12 -2 -36 -2h-32h-143v-500h-170zM283 639h108q74 0 132.5 10t100.5 38 t64.5 76t22.5 126q0 74 -22.5 121t-59.5 74.5t-87 39t-106 11.5q-47 0 -91 -1t-62 -6v-489z" />
|
||||||
|
<glyph unicode="S" d="M113 61l51 140q41 -23 121 -52.5t194 -29.5q129 0 196.5 49t67.5 147q0 59 -24.5 101.5t-65.5 74t-92 55t-104 44.5q-61 25 -117.5 55.5t-100.5 71.5t-70 96t-26 131q0 166 104.5 259t291.5 93q51 0 101 -7t93 -17t77 -24.5t54 -28.5l-53 -142q-41 25 -112.5 49.5 t-159.5 24.5q-92 0 -160 -46t-68 -138q0 -53 19.5 -90t53.5 -65t79 -50.5t98 -44.5q78 -33 142.5 -66t110.5 -78t71.5 -106t25.5 -150q0 -166 -111.5 -255t-320.5 -89q-68 0 -127 9.5t-105 23.5t-81 28.5t-53 26.5z" />
|
||||||
|
<glyph unicode="T" d="M80 1124v144h864v-144h-348v-1124h-168v1124h-348z" />
|
||||||
|
<glyph unicode="U" d="M98 436v832h168v-813q0 -96 17.5 -161t49.5 -103.5t77 -55t102 -16.5t102 16.5t77 55t49.5 103t17.5 161.5v813h168v-832q0 -106 -22.5 -192t-72 -145.5t-128 -92.5t-191.5 -33t-191.5 33t-128 92.5t-72 145.5t-22.5 192z" />
|
||||||
|
<glyph unicode="V" d="M27 1268h182q25 -129 62.5 -281.5t79.5 -305.5t85 -292t80 -244l77 246q44 141 87 294t81 304.5t62 278.5h176q-16 -82 -53 -220.5t-88 -309.5l-114 -362q-62 -191 -130 -376h-208l-124 375l-112 361q-51 171 -88 310.5t-55 221.5z" />
|
||||||
|
<glyph unicode="W" d="M66 1268h163l23 -1059l184 577h148l188 -577l23 1059h163q-6 -172 -15 -344t-21.5 -335t-26.5 -312.5t-31 -276.5h-155l-199 631l-197 -631h-157q-18 125 -31.5 275.5t-25 314.5t-19.5 336t-14 342z" />
|
||||||
|
<glyph unicode="X" d="M51 0q68 152 158 329t192 341l-329 598h186l248 -486l266 486h182l-336 -592q98 -160 190.5 -332t164.5 -344h-187l-53 125l-65 143q-35 74 -75 147.5t-83 137.5q-72 -115 -143.5 -263.5l-133.5 -289.5h-182z" />
|
||||||
|
<glyph unicode="Y" d="M27 1268h188q59 -172 136 -329l165 -323q94 174 167 331t132 321h184q-78 -201 -178 -391.5t-223 -401.5v-475h-168v471q-125 205 -226 399.5t-177 397.5z" />
|
||||||
|
<glyph unicode="Z" d="M111 0v111q63 129 140 265l157 267l159 254l154 227h-580v144h774v-131q-66 -90 -146 -214l-165 -259l-163 -272q-79 -136 -138 -249h629v-143h-821z" />
|
||||||
|
<glyph unicode="[" d="M293 -338v1770h489v-134h-329v-1503h329v-133h-489z" />
|
||||||
|
<glyph unicode="\" d="M143 1432h170l568 -1770h-172z" />
|
||||||
|
<glyph unicode="]" d="M242 -205h329v1503h-329v134h489v-1770h-489v133z" />
|
||||||
|
<glyph unicode="^" d="M82 645l354 623h152l354 -623l-135 -70l-295 517l-295 -517z" />
|
||||||
|
<glyph unicode="_" d="M16 -195h992v-143h-992v143z" />
|
||||||
|
<glyph unicode="`" d="M334 1311l108 108l234 -282l-86 -76z" />
|
||||||
|
<glyph unicode="a" d="M119 283q0 82 35.5 138t92 91t129.5 50.5t146 15.5q100 0 197 -23v47q0 43 -9.5 83t-35 73t-69.5 52t-113 19q-88 0 -154 -12t-100 -24l-21 139q35 16 116 28.5t173 12.5q106 0 179 -26.5t118 -74t63.5 -115t18.5 -147.5v-594q-59 -10 -156.5 -24.5t-200.5 -14.5 q-78 0 -151.5 13.5t-131 47.5t-92 93.5t-34.5 151.5zM291 285q0 -92 62.5 -128t168.5 -36q63 0 113.5 4t83.5 10v283q-33 10 -79 16t-97 6q-47 0 -92 -7t-80 -25.5t-57.5 -48t-22.5 -74.5z" />
|
||||||
|
<glyph unicode="b" d="M145 27v1364l170 28v-504q31 18 89.5 38t130.5 20q96 0 171.5 -37t128 -102.5t80 -156.5t27.5 -202q0 -115 -32.5 -207t-92 -156.5t-143.5 -99.5t-187 -35q-113 0 -201 17t-141 33zM315 147q39 -10 78 -15t74 -5q141 0 221 87t80 261q0 74 -14.5 138.5t-45 110.5 t-78.5 72.5t-116 26.5q-59 0 -114.5 -23.5t-84.5 -49.5v-603z" />
|
||||||
|
<glyph unicode="c" d="M100 473q0 129 41 223.5t113 155.5t167 91t204 30q70 0 138 -9.5t146 -33.5l-39 -146q-68 25 -124 32t-113 7q-74 0 -139.5 -19.5t-113.5 -61.5t-77 -108.5t-29 -160.5q0 -90 27 -154.5t75 -106.5t115.5 -62.5t149.5 -20.5q66 0 126 7t132 32l25 -141 q-72 -27 -145.5 -38.5t-160.5 -11.5q-115 0 -210 32t-163.5 93.5t-106.5 154.5t-38 216z" />
|
||||||
|
<glyph unicode="d" d="M82 475q0 111 27.5 202t81 156.5t128 102.5t170.5 37q76 0 133.5 -18.5t86.5 -39.5v476l170 28v-1392q-55 -16 -141.5 -33t-200.5 -17q-102 0 -186.5 35t-144 99.5t-92 156.5t-32.5 207zM256 475q0 -166 78 -256t203 -90q63 0 107 6t65 12v603q-29 27 -84.5 50t-114.5 23 q-68 0 -116 -26.5t-78.5 -72.5t-45 -110.5t-14.5 -138.5z" />
|
||||||
|
<glyph unicode="e" d="M82 473q0 127 39 221t102.5 155.5t143 92.5t163.5 31q193 0 297.5 -120t104.5 -364v-59h-680q10 -147 97 -224t245 -77q90 0 153.5 14.5t96.5 30.5l22 -143q-31 -16 -110.5 -35t-180.5 -19q-123 0 -216 38t-154.5 103.5t-92 157t-30.5 197.5zM256 567h504 q0 121 -63.5 191.5t-168.5 70.5q-59 0 -107 -22.5t-83 -59t-55.5 -84t-26.5 -96.5z" />
|
||||||
|
<glyph unicode="f" d="M129 809v141h201v86q0 111 30.5 183.5t81 117.5t117 63.5t140 18.5t148.5 -16.5t140 -38.5l-31 -145q-45 23 -112.5 39t-136.5 16q-43 0 -81 -11.5t-67 -39t-45 -73.5t-16 -116v-84h383v-141h-383v-809h-168v809h-201z" />
|
||||||
|
<glyph unicode="g" d="M82 496q0 104 29.5 191t86 150.5t138.5 99.5t186 36q123 0 210 -17.5t147 -33.5v-848q0 -221 -112 -319.5t-337 -98.5q-92 0 -167 14.5t-132 34.5l31 150q53 -23 121.5 -37.5t150.5 -14.5q147 0 211 59.5t64 192.5v33q-29 -16 -88.5 -34.5t-137.5 -18.5 q-84 0 -156.5 27.5t-127 84t-86 143.5t-31.5 206zM256 494q0 -82 19.5 -140.5t53 -96.5t77 -55.5t92.5 -17.5q63 0 119.5 18.5t91.5 43.5v555q-25 8 -68 15t-117 7q-131 0 -199.5 -89.5t-68.5 -239.5z" />
|
||||||
|
<glyph unicode="h" d="M145 1391l170 28v-483q41 16 92.5 25.5t100.5 9.5q109 0 181.5 -32t115.5 -89t61.5 -137t18.5 -176v-537h-168v500q0 176 -49.5 248.5t-175.5 72.5q-53 0 -103.5 -11t-73.5 -22v-788h-170v1391z" />
|
||||||
|
<glyph unicode="i" d="M111 809v141h442v-583q0 -141 39 -189.5t117 -48.5q59 0 109 14.5t79 30.5l25 -143q-12 -6 -35 -15.5t-52.5 -17.5t-65.5 -14.5t-75 -6.5q-90 0 -149.5 25t-95 74t-50 121.5t-14.5 169.5v442h-274zM297 1234.5q0 63.5 39 100.5t92 37q55 0 93 -37t38 -100.5t-38 -100 t-93 -36.5q-53 0 -92 36.5t-39 100z" />
|
||||||
|
<glyph unicode="j" d="M145 -281l52 144q51 -25 113.5 -42.5t119.5 -17.5q82 0 135 42t53 163v801h-385v141h553v-940q0 -98 -27.5 -166.5t-73.5 -111.5t-106.5 -61.5t-127.5 -18.5q-78 0 -157 16t-149 51zM500 1234.5q0 63.5 39 100.5t92 37q55 0 93 -37t38 -100.5t-38 -100t-93 -36.5 q-53 0 -92 36.5t-39 100z" />
|
||||||
|
<glyph unicode="k" d="M145 0v1391l170 28v-866l226 196q113 97 202 201h199q-88 -104 -212 -215l-243 -213q55 -41 125 -103.5t138.5 -134t130 -146.5t98.5 -138h-201q-39 63 -96 130t-121.5 128t-129 112.5t-116.5 86.5v-457h-170z" />
|
||||||
|
<glyph unicode="l" d="M111 1266v143h442v-1042q0 -72 9 -117t28.5 -72.5t48.5 -38t68 -10.5q59 0 110 14.5t80 30.5l25 -143q-12 -6 -35 -15.5t-53.5 -17.5t-66.5 -14.5t-75 -6.5q-90 0 -149.5 25t-94 74t-49 121.5t-14.5 169.5v899h-274z" />
|
||||||
|
<glyph unicode="m" d="M84 0v924q123 47 231 47q59 0 111.5 -17.5t89.5 -54.5q88 72 189 72q49 0 93 -18.5t77.5 -55.5t54 -92t20.5 -129v-676h-153v680q0 74 -33 112.5t-82 38.5q-25 0 -51.5 -12t-48.5 -39q12 -47 12 -104v-309h-154v311q0 72 -22.5 112.5t-87.5 40.5q-41 0 -92 -18v-813h-154 z" />
|
||||||
|
<glyph unicode="n" d="M145 0v924q92 23 183.5 35t171.5 12q190 0 287.5 -98.5t97.5 -315.5v-557h-168v526q0 92 -16.5 149.5t-46 89.5t-71.5 44t-91 12q-41 0 -87.5 -5t-89.5 -13v-803h-170z" />
|
||||||
|
<glyph unicode="o" d="M82 475q0 113 31.5 205t89 156.5t136.5 100.5t171 36q94 0 174 -36t137.5 -100.5t89 -156.5t31.5 -205t-31.5 -204t-89 -156.5t-137.5 -101.5t-174 -36q-92 0 -171 36t-136.5 101.5t-89 156.5t-31.5 204zM256 475q0 -160 68.5 -253t185.5 -93q119 0 188.5 93t69.5 253 q0 162 -69.5 255t-188.5 93q-117 0 -185.5 -93t-68.5 -255z" />
|
||||||
|
<glyph unicode="p" d="M145 -338v1260q55 16 142.5 32.5t199.5 16.5q102 0 186.5 -35t144 -99.5t92 -156.5t32.5 -207q0 -109 -27.5 -200t-80 -156.5t-128 -102.5t-171.5 -37q-76 0 -133.5 18.5t-86.5 41.5v-375h-170zM315 201q29 -27 84.5 -49.5t114.5 -22.5q68 0 116 26.5t78.5 72.5t45 108.5 t14.5 136.5q0 166 -78 257t-203 91q-70 0 -109.5 -6t-62.5 -14v-600z" />
|
||||||
|
<glyph unicode="q" d="M82 473q0 115 32.5 207t92 156.5t144.5 99.5t188 35q111 0 195.5 -17.5t144.5 -33.5v-1258h-170v375q-31 -20 -88.5 -40t-128.5 -20q-96 0 -172 37t-128.5 102.5t-81 156.5t-28.5 200zM256 473q0 -74 15.5 -136.5t46 -108.5t78.5 -72.5t116 -26.5q59 0 114.5 22.5 t84.5 49.5v600q-23 8 -63 14t-109 6q-125 0 -204 -91t-79 -257z" />
|
||||||
|
<glyph unicode="r" d="M219 0v899q209 72 422 72q66 0 125 -5t131 -22l-31 -149q-66 18 -116 23t-109 5q-125 0 -254 -35v-788h-168z" />
|
||||||
|
<glyph unicode="s" d="M135 43l33 154q72 -33 150.5 -54.5t168.5 -21.5q231 0 232 117q0 51 -42 83.5t-104.5 57t-136.5 48.5t-136 58.5t-104 86t-42 133.5q0 115 93 191.5t292 76.5q78 0 160.5 -11.5t142.5 -29.5l-31 -152q-16 8 -45 17.5t-65.5 16.5t-78.5 11t-81 4q-221 0 -222 -120 q0 -43 42 -73t105.5 -54.5t137.5 -50t137.5 -62.5t105.5 -89t42 -132q0 -129 -100.5 -200t-317.5 -71q-98 0 -180 16.5t-156 49.5z" />
|
||||||
|
<glyph unicode="t" d="M129 809v141h201v267l168 28v-295h401v-141h-401v-442q0 -72 10 -117t33.5 -72.5t60.5 -38t90 -10.5q74 0 119 12.5t86 32.5l25 -143q-29 -12 -91.5 -33t-154.5 -21q-106 0 -174 25t-106 74t-52 121.5t-14 169.5v442h-201z" />
|
||||||
|
<glyph unicode="u" d="M139 416v534h168v-497q0 -176 52.5 -250t175.5 -74q27 0 54 2t52 5t43 6t25 5v803h170v-923q-55 -14 -146.5 -30.5t-214.5 -16.5q-109 0 -180.5 31.5t-116.5 90t-63.5 138.5t-18.5 176z" />
|
||||||
|
<glyph unicode="v" d="M61 950h185q25 -90 56 -190l67 -201l70.5 -193.5t70.5 -166.5q35 74 73 167t74 193l71 201q34 100 58 190h177q-37 -133 -84 -261l-97 -250q-49 -122 -100 -232l-98 -207h-154q-96 193 -194.5 438.5t-174.5 511.5z" />
|
||||||
|
<glyph unicode="w" d="M39 950h160q6 -80 13 -156.5t17.5 -160.5l23.5 -182l30 -222q33 82 55 143.5l41 116.5l36 113l38 129h127l36 -129q16 -57 35 -113l39 -116q20 -61 51 -142l32.5 209.5t25 181.5t18.5 164.5t14 163.5h154q-10 -102 -24.5 -219t-35 -239.5t-45 -248.5t-51.5 -243h-127 q-31 70 -53 127l-44 115l-43 119l-50 143l-51 -143l-44 -119l-45 -115l-55 -127h-127q-57 252 -95 498.5t-56 451.5z" />
|
||||||
|
<glyph unicode="x" d="M59 0q68 123 165 253l192 247l-342 450h190l256 -332l236 332h180l-313 -440l185 -252q93 -131 159 -258h-189q-20 41 -50 90l-64.5 101.5t-72.5 103.5l-75 96l-78 -98q-41 -51 -79 -104l-70 -101q-33 -49 -56 -88h-174z" />
|
||||||
|
<glyph unicode="y" d="M74 -315l30 137q18 -10 52 -16.5t63 -6.5q100 0 156.5 44t103.5 145q-115 217 -215 465.5t-166 496.5h185q20 -82 47.5 -177t62.5 -195.5t75 -202t85 -193.5q33 94 61.5 186.5t53.5 185.5l49 190l51 206h176q-66 -266 -146.5 -516t-172.5 -463q-35 -82 -75 -141t-87 -98 t-106.5 -57.5t-135.5 -18.5q-39 0 -85 10.5t-62 18.5z" />
|
||||||
|
<glyph unicode="z" d="M150 0v113q43 82 107.5 179l133.5 192l136 182q67 86 116 143h-467v141h684v-127l-100 -120l-136 -169q-73 -93 -144.5 -195.5t-127.5 -195.5h522v-143h-724z" />
|
||||||
|
<glyph unicode="{" d="M162 481v131h82q35 0 61.5 15.5t44 41t26.5 57.5t9 65v329q0 76 15.5 133.5t52 97.5t99 60.5t157.5 20.5h165v-134h-174q-86 0 -121.5 -38.5t-35.5 -141.5v-282q0 -137 -41 -202t-94 -87q53 -25 94 -92.5t41 -196.5v-283q0 -102 36.5 -141t122.5 -39h172v-133h-165 q-94 0 -157 20.5t-99.5 60.5t-52 97.5t-15.5 132.5v330q0 31 -9 62.5t-26.5 57.5t-43 42t-60.5 16h-84z" />
|
||||||
|
<glyph unicode="|" d="M434 -338v1770h158v-1770h-158z" />
|
||||||
|
<glyph unicode="}" d="M150 -205h174q86 0 121.5 39t35.5 141v283q0 137 41 201.5t94 87.5q-53 25 -94 92.5t-41 196.5v282q0 102 -36.5 141t-122.5 39h-172v134h165q94 0 157 -20.5t100.5 -60.5t53 -97.5t15.5 -133.5v-329q0 -31 8 -63t25.5 -57.5t43 -42t60.5 -16.5h84v-131h-82 q-35 0 -60.5 -15t-43 -41t-26.5 -57.5t-9 -64.5v-330q0 -76 -15.5 -133t-53 -97t-100 -60.5t-157.5 -20.5h-165v133z" />
|
||||||
|
<glyph unicode="~" d="M76 434q6 35 22.5 80t45 84t72.5 65.5t110 26.5q55 0 101 -21.5t89 -47.5l95 -58q46 -29 98 -28q29 0 49 13t33.5 33.5t23.5 46t16 48.5l117 -33q-6 -35 -21.5 -80t-45 -84t-74.5 -65.5t-109 -26.5q-55 0 -101 21.5t-89 48.5l-94 57q-45 29 -99 29q-29 0 -49 -13.5 t-33.5 -34t-23.5 -46t-16 -48.5z" />
|
||||||
|
<glyph unicode=" " />
|
||||||
|
<glyph unicode="¢" d="M100 532q0 109 31 192t86 142.5t132 94t167 47.5v260h152v-254q55 -4 110.5 -13.5t118.5 -29.5l-37 -142q-68 25 -123 32t-112 7q-74 0 -138.5 -19.5t-111.5 -59t-74 -104t-27 -153.5q0 -170 101.5 -250.5t265.5 -80.5q66 0 125 8t131 33l25 -140q-61 -23 -123 -33 t-131 -14v-254h-152v258q-188 27 -302 145.5t-114 327.5z" />
|
||||||
|
<glyph unicode="£" d="M92 545v137h170v152q0 135 28.5 224t80 140t124 71.5t162.5 20.5q80 0 134.5 -13t105.5 -36l-41 -145q-92 45 -207 45q-49 0 -89 -14.5t-69.5 -49.5t-45 -93t-15.5 -146v-156h348v-137h-348v-15q0 -92 -7 -192t-22 -193h531v-145h-721q20 131 35.5 259t15.5 259v27h-170z " />
|
||||||
|
<glyph unicode="¥" d="M27 1268h186q66 -143 143.5 -285.5t161.5 -273.5q80 131 155 273t140 286h186l-170 -311q-88 -157 -188 -316h252v-131h-295v-186h295v-129h-295v-195h-168v195h-297v129h297v186h-297v131h250q-100 160 -189 318z" />
|
||||||
|
<glyph unicode="©" d="M70 473q0 125 38.5 219t101 156.5t142.5 93.5t162 31t162 -31t141.5 -93.5t99 -155.5t37.5 -216q0 -125 -38.5 -218t-101 -155.5t-142.5 -94.5t-162 -32q-84 0 -163 32t-140.5 93.5t-99 154.5t-37.5 216zM188 477q0 -98 28 -171t74 -121t103.5 -72.5t118.5 -24.5 t119.5 24.5t103.5 72.5t73 120t28 168q0 98 -28 171t-74 121t-103.5 72.5t-118.5 24.5t-118.5 -24.5t-103.5 -72.5t-74 -121t-28 -167zM291 469q0 49 14 96t43 84t73 59.5t105 22.5q33 0 69 -5t71 -21l-41 -111q-23 10 -45.5 13t-40.5 3q-66 0 -93.5 -41t-27.5 -92 q0 -66 33.5 -103.5t95.5 -37.5q18 0 41.5 4t46.5 14l35 -108q-35 -16 -73 -24.5t-73 -8.5q-59 0 -103 21.5t-73 57.5t-43 82t-14 95z" />
|
||||||
|
<glyph unicode="­" d="M287 440v160h450v-160h-450z" />
|
||||||
|
<glyph unicode="®" d="M70 473q0 125 38.5 219t101 156.5t142.5 93.5t162 31t162 -31t141.5 -93.5t99 -155.5t37.5 -216q0 -125 -38.5 -218t-101 -155.5t-142.5 -94.5t-162 -32q-84 0 -163 32t-140.5 93.5t-99 154.5t-37.5 216zM188 477q0 -98 28 -171t74 -121t103.5 -72.5t118.5 -24.5 t119.5 24.5t103.5 72.5t73 120t28 168q0 98 -28 171t-74 121t-103.5 72.5t-118.5 24.5t-118.5 -24.5t-103.5 -72.5t-74 -121t-28 -167zM340 225v488q29 8 63.5 13t73.5 5q117 0 173.5 -45t56.5 -131q0 -98 -82 -145q25 -35 51 -83l53 -102h-117l-47 87q-20 38 -41 71h-73 v-158h-111zM451 485h36q55 0 82 14.5t27 61.5q0 41 -33 54.5t-67 13.5q-12 0 -23.5 -1t-21.5 -3v-140z" />
|
||||||
|
<glyph unicode="´" d="M348 1137l234 282l110 -108l-258 -250z" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="727" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="1454" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="727" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="1454" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="483" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="362" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="241" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="241" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="180" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="290" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="79" />
|
||||||
|
<glyph unicode="‐" d="M287 440v160h450v-160h-450z" />
|
||||||
|
<glyph unicode="‑" d="M287 440v160h450v-160h-450z" />
|
||||||
|
<glyph unicode="‒" d="M287 440v160h450v-160h-450z" />
|
||||||
|
<glyph unicode="–" d="M141 483v144h742v-144h-742z" />
|
||||||
|
<glyph unicode="—" d="M0 483v144h1024v-144h-1024z" />
|
||||||
|
<glyph unicode="‘" d="M305 1061q0 59 23.5 123.5t70.5 121t120 96.5t169 52l31 -133l-73 -16q-36 -8 -66.5 -23.5t-55 -40t-39.5 -63.5q66 -6 95.5 -50.5t29.5 -87.5q0 -82 -47 -124t-104 -42q-76 0 -115 54.5t-39 132.5z" />
|
||||||
|
<glyph unicode="’" d="M303 1001l73 17q36 8 66.5 23.5t55 39t39.5 64.5q-66 6 -95.5 50t-29.5 87q0 82 47 124t104 42q76 0 115 -54.5t39 -131.5q0 -59 -23.5 -124t-72 -121t-120 -96t-167.5 -53z" />
|
||||||
|
<glyph unicode="“" d="M88 1071q0 57 17.5 114.5t57.5 104.5t106.5 82t166.5 47l29 -119l-68 -15q-33 -7 -61.5 -21.5t-51 -36t-34.5 -58.5q59 -6 89 -46t30 -89q0 -51 -33 -93t-103 -42q-59 0 -102 41t-43 131zM561 1071q0 57 17.5 114.5t57.5 104.5t106.5 82t166.5 47l29 -119l-68 -15 q-33 -7 -60.5 -21.5t-50 -36t-34.5 -58.5q59 -6 89 -46t30 -89q0 -51 -34 -93t-101 -42q-59 0 -103.5 41t-44.5 131z" />
|
||||||
|
<glyph unicode="”" d="M86 1018l68 15q33 7 60.5 21.5t50 37t34.5 59.5q-59 4 -89 45t-30 88q0 51 34 93t101 42q59 0 103.5 -41t44.5 -131q0 -59 -17.5 -115.5t-57.5 -103.5t-106.5 -82t-166.5 -47zM559 1018l68 15q33 7 61.5 21.5t51 37t34.5 59.5q-59 4 -89 45t-30 88q0 51 33 93t103 42 q59 0 102 -41t43 -131q0 -59 -17.5 -115.5t-57.5 -103.5t-106.5 -82t-164.5 -47z" />
|
||||||
|
<glyph unicode="•" d="M233 647q0 57 19.5 110.5t55.5 94.5t87 64.5t117 23.5q63 0 115.5 -23.5t88.5 -64.5t55.5 -94t19.5 -111q0 -59 -19.5 -112.5t-55.5 -93.5t-88.5 -63.5t-115.5 -23.5q-66 0 -117 23.5t-87 63.5t-55.5 93.5t-19.5 112.5z" />
|
||||||
|
<glyph unicode="…" d="M63 86q0 45 30 78t79 33t79 -33t30 -78t-30 -78t-79 -33t-79 33t-30 78zM408 86q0 45 28.5 78t77.5 33t78 -33t29 -78t-29 -78t-78 -33t-77.5 33t-28.5 78zM748 86q0 45 28.5 78t77.5 33t78 -33t29 -78t-29 -78t-78 -33t-77.5 33t-28.5 78z" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="290" />
|
||||||
|
<glyph unicode=" " horiz-adv-x="362" />
|
||||||
|
<glyph unicode="€" d="M74 416v131h125q-2 20 -2 43v45v50q0 24 2 46h-125v131h143q37 217 154.5 322.5t312.5 105.5q82 0 134 -10t102 -29l-33 -143q-43 16 -95.5 26.5t-107.5 10.5q-139 0 -204.5 -77t-86.5 -206h408l-25 -131h-401q-2 -23 -2 -46v-50v-45q0 -23 2 -43h366l-24 -131h-328 q27 -164 101.5 -227.5t197.5 -63.5q78 0 133.5 13.5t98.5 35.5l36 -145q-31 -16 -107.5 -35t-170.5 -19q-213 0 -324.5 117t-140.5 324h-139z" />
|
||||||
|
<glyph unicode="™" d="M37 1165v103h381v-103h-131v-434h-119v434h-131zM457 731q6 102 12 178t13 137.5t14.5 113.5t17.5 108h111l90 -279l96 279h111q10 -55 17 -108.5t13 -115t11.5 -137.5t11.5 -176h-119q0 8 -1 53t-2 103.5t-3 120t-4 102.5l-86 -238h-92l-80 238q-4 -41 -6 -102.5 t-3 -120t-2.5 -103.5t-1.5 -53h-118z" />
|
||||||
|
<glyph unicode="" horiz-adv-x="950" d="M0 950h950v-950h-950v950z" />
|
||||||
|
</font>
|
||||||
|
</defs></svg>
|
After Width: | Height: | Size: 30 KiB |
BIN
fonts/ubuntu-mono/ubuntu-mono-webfont.ttf
Normal file
BIN
fonts/ubuntu-mono/ubuntu-mono-webfont.woff
Normal file
3
fonts/verdana.css
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
.crayon-font-verdana * {
|
||||||
|
font-family: Verdana, Arial, sans !important;
|
||||||
|
}
|
250
global.php
Normal file
@ -0,0 +1,250 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
// Switches
|
||||||
|
define('CRAYON_DEBUG', FALSE);
|
||||||
|
|
||||||
|
define('CRAYON_TAG_EDITOR', TRUE);
|
||||||
|
define('CRAYON_THEME_EDITOR', TRUE);
|
||||||
|
|
||||||
|
define('CRAYON_MINIFY', TRUE);
|
||||||
|
|
||||||
|
// Constants
|
||||||
|
|
||||||
|
// General definitions
|
||||||
|
define('CRAYON_DOMAIN', 'crayon-syntax-highlighter');
|
||||||
|
|
||||||
|
// These are overridden by functions since v1.1.1
|
||||||
|
$CRAYON_VERSION = '1.1.1';
|
||||||
|
$CRAYON_DATE = '27th September, 2011';
|
||||||
|
$CRAYON_AUTHOR = 'Aram Kocharyan';
|
||||||
|
$CRAYON_AUTHOR_SITE = 'http://aramk.com';
|
||||||
|
$CRAYON_DONATE = 'http://bit.ly/crayondonate';
|
||||||
|
$CRAYON_WEBSITE = 'https://github.com/aramk/crayon-syntax-highlighter';
|
||||||
|
$CRAYON_EMAIL = 'crayon.syntax@gmail.com';
|
||||||
|
$CRAYON_TWITTER = 'http://twitter.com/crayonsyntax';
|
||||||
|
$CRAYON_GIT = 'http://github.com/aramk/crayon-syntax-highlighter';
|
||||||
|
$CRAYON_PLUGIN_WP = 'https://wordpress.org/plugins/crayon-syntax-highlighter/';
|
||||||
|
|
||||||
|
// XXX Used to name the class
|
||||||
|
|
||||||
|
define('CRAYON_HIGHLIGHTER', 'CrayonHighlighter');
|
||||||
|
define('CRAYON_ELEMENT_CLASS', 'CrayonElement');
|
||||||
|
define('CRAYON_SETTING_CLASS', 'CrayonSetting');
|
||||||
|
|
||||||
|
// Directories
|
||||||
|
|
||||||
|
define('CRAYON_DIR', crayon_pf(basename(dirname(__FILE__))));
|
||||||
|
define('CRAYON_LANG_DIR', crayon_s('langs'));
|
||||||
|
define('CRAYON_THEME_DIR', crayon_s('themes'));
|
||||||
|
define('CRAYON_FONT_DIR', crayon_s('fonts'));
|
||||||
|
define('CRAYON_UTIL_DIR', crayon_s('util'));
|
||||||
|
define('CRAYON_CSS_DIR', crayon_s('css'));
|
||||||
|
define('CRAYON_CSS_SRC_DIR', CRAYON_CSS_DIR . crayon_s('src'));
|
||||||
|
define('CRAYON_CSS_MIN_DIR', CRAYON_CSS_DIR . crayon_s('min'));
|
||||||
|
define('CRAYON_JS_DIR', crayon_s('js'));
|
||||||
|
define('CRAYON_JS_SRC_DIR', CRAYON_JS_DIR . crayon_s('src'));
|
||||||
|
define('CRAYON_JS_MIN_DIR', CRAYON_JS_DIR . crayon_s('min'));
|
||||||
|
define('CRAYON_TRANS_DIR', crayon_s('trans'));
|
||||||
|
define('CRAYON_THEME_EDITOR_DIR', crayon_s('theme-editor'));
|
||||||
|
define('CRAYON_TAG_EDITOR_DIR', crayon_s('tag-editor'));
|
||||||
|
|
||||||
|
// Paths
|
||||||
|
|
||||||
|
define('CRAYON_ROOT_PATH', crayon_pf(dirname(__FILE__)));
|
||||||
|
define('CRAYON_LANG_PATH', CRAYON_ROOT_PATH . CRAYON_LANG_DIR);
|
||||||
|
define('CRAYON_THEME_PATH', CRAYON_ROOT_PATH . CRAYON_THEME_DIR);
|
||||||
|
define('CRAYON_FONT_PATH', CRAYON_ROOT_PATH . CRAYON_FONT_DIR);
|
||||||
|
define('CRAYON_UTIL_PATH', CRAYON_ROOT_PATH . CRAYON_UTIL_DIR);
|
||||||
|
define('CRAYON_TAG_EDITOR_PATH', CRAYON_ROOT_PATH . CRAYON_UTIL_DIR . CRAYON_TAG_EDITOR_DIR);
|
||||||
|
define('CRAYON_THEME_EDITOR_PATH', CRAYON_ROOT_PATH . CRAYON_UTIL_DIR . CRAYON_THEME_EDITOR_DIR);
|
||||||
|
|
||||||
|
// Files
|
||||||
|
|
||||||
|
define('CRAYON_LOG_FILE', CRAYON_ROOT_PATH . 'log.txt');
|
||||||
|
define('CRAYON_TOUCH_FILE', CRAYON_UTIL_PATH . 'touch.txt');
|
||||||
|
define('CRAYON_LOG_MAX_SIZE', 50000); // Bytes
|
||||||
|
|
||||||
|
define('CRAYON_README_FILE', CRAYON_ROOT_PATH . 'readme.txt');
|
||||||
|
define('CRAYON_LANG_EXT', CRAYON_LANG_PATH . 'extensions.txt');
|
||||||
|
define('CRAYON_LANG_ALIAS', CRAYON_LANG_PATH . 'aliases.txt');
|
||||||
|
define('CRAYON_LANG_DELIM', CRAYON_LANG_PATH . 'delimiters.txt');
|
||||||
|
define('CRAYON_HELP_FILE', CRAYON_UTIL_PATH . 'help.htm');
|
||||||
|
|
||||||
|
// Minified
|
||||||
|
define('CRAYON_JS_MIN', CRAYON_JS_MIN_DIR . 'crayon.min.js');
|
||||||
|
define('CRAYON_JS_TE_MIN', CRAYON_JS_MIN_DIR . 'crayon.te.min.js');
|
||||||
|
|
||||||
|
// Source
|
||||||
|
define('CRAYON_JQUERY_POPUP', CRAYON_JS_SRC_DIR . 'jquery.popup.js');
|
||||||
|
define('CRAYON_JS', CRAYON_JS_SRC_DIR . 'crayon.js');
|
||||||
|
define('CRAYON_JS_ADMIN', CRAYON_JS_SRC_DIR . 'crayon_admin.js');
|
||||||
|
define('CRAYON_JS_UTIL', CRAYON_JS_SRC_DIR . 'util.js');
|
||||||
|
define('CRAYON_CSSJSON_JS', CRAYON_JS_SRC_DIR . 'cssjson.js');
|
||||||
|
|
||||||
|
define('CRAYON_CSS_JQUERY_COLORPICKER', CRAYON_JS_DIR . 'jquery-colorpicker/jquery.colorpicker.css');
|
||||||
|
define('CRAYON_JS_JQUERY_COLORPICKER', CRAYON_JS_DIR . 'jquery-colorpicker/jquery.colorpicker.js');
|
||||||
|
define('CRAYON_JS_TINYCOLOR', CRAYON_JS_DIR . 'tinycolor-min.js');
|
||||||
|
define('CRAYON_TAG_EDITOR_JS', 'crayon_tag_editor.js');
|
||||||
|
define('CRAYON_COLORBOX_JS', 'colorbox/jquery.colorbox-min.js');
|
||||||
|
define('CRAYON_COLORBOX_CSS', 'colorbox/colorbox.css');
|
||||||
|
define('CRAYON_TAG_EDITOR_PHP', CRAYON_TAG_EDITOR_PATH . 'crayon_tag_editor_wp.class.php');
|
||||||
|
define('CRAYON_TINYMCE_JS', 'crayon_tinymce.js');
|
||||||
|
define('CRAYON_QUICKTAGS_JS', 'crayon_qt.js');
|
||||||
|
define('CRAYON_STYLE', CRAYON_CSS_SRC_DIR . 'crayon_style.css');
|
||||||
|
define('CRAYON_STYLE_ADMIN', CRAYON_CSS_SRC_DIR . 'admin_style.css');
|
||||||
|
define('CRAYON_STYLE_GLOBAL', CRAYON_CSS_SRC_DIR . 'global_style.css');
|
||||||
|
define('CRAYON_STYLE_MIN', CRAYON_CSS_MIN_DIR . 'crayon.min.css');
|
||||||
|
define('CRAYON_LOGO', CRAYON_CSS_DIR . 'images/crayon_logo.png');
|
||||||
|
define('CRAYON_DONATE_BUTTON', CRAYON_CSS_DIR . 'images/donate.png');
|
||||||
|
define('CRAYON_THEME_EDITOR_PHP', CRAYON_THEME_EDITOR_PATH . 'theme_editor.php');
|
||||||
|
define('CRAYON_THEME_EDITOR_JS', CRAYON_UTIL_DIR . CRAYON_THEME_EDITOR_DIR . 'theme_editor.js');
|
||||||
|
define('CRAYON_THEME_EDITOR_STYLE', CRAYON_UTIL_DIR . CRAYON_THEME_EDITOR_DIR . 'theme_editor.css');
|
||||||
|
define('CRAYON_THEME_EDITOR_BUTTON', CRAYON_CSS_DIR . 'images/theme_editor.png');
|
||||||
|
|
||||||
|
// PHP Files
|
||||||
|
define('CRAYON_FORMATTER_PHP', CRAYON_ROOT_PATH . 'crayon_formatter.class.php');
|
||||||
|
define('CRAYON_HIGHLIGHTER_PHP', CRAYON_ROOT_PATH . 'crayon_highlighter.class.php');
|
||||||
|
define('CRAYON_LANGS_PHP', CRAYON_ROOT_PATH . 'crayon_langs.class.php');
|
||||||
|
define('CRAYON_PARSER_PHP', CRAYON_ROOT_PATH . 'crayon_parser.class.php');
|
||||||
|
define('CRAYON_SETTINGS_PHP', CRAYON_ROOT_PATH . 'crayon_settings.class.php');
|
||||||
|
define('CRAYON_THEMES_PHP', CRAYON_ROOT_PATH . 'crayon_themes.class.php');
|
||||||
|
define('CRAYON_FONTS_PHP', CRAYON_ROOT_PATH . 'crayon_fonts.class.php');
|
||||||
|
define('CRAYON_RESOURCE_PHP', CRAYON_ROOT_PATH . 'crayon_resource.class.php');
|
||||||
|
define('CRAYON_UTIL_PHP', CRAYON_UTIL_DIR . 'crayon_util.class.php');
|
||||||
|
define('CRAYON_TIMER_PHP', CRAYON_UTIL_DIR . 'crayon_timer.class.php');
|
||||||
|
define('CRAYON_LOG_PHP', CRAYON_UTIL_DIR . 'crayon_log.class.php');
|
||||||
|
|
||||||
|
// Script time
|
||||||
|
|
||||||
|
define('CRAYON_LOAD_TIME', 'Load Time');
|
||||||
|
//define('CRAYON_PARSE_TIME', 'Parse Time');
|
||||||
|
define('CRAYON_FORMAT_TIME', 'Format Time');
|
||||||
|
|
||||||
|
// Printing
|
||||||
|
|
||||||
|
define('CRAYON_BR', "<br />");
|
||||||
|
define('CRAYON_NL', "\r\n");
|
||||||
|
define('CRAYON_BL', CRAYON_BR . CRAYON_NL);
|
||||||
|
define('CRAYON_DASH', "==============================================================================");
|
||||||
|
define('CRAYON_LINE', "------------------------------------------------------------------------------");
|
||||||
|
|
||||||
|
// Load utilities
|
||||||
|
|
||||||
|
require_once (CRAYON_UTIL_PHP);
|
||||||
|
require_once (CRAYON_TIMER_PHP);
|
||||||
|
require_once (CRAYON_LOG_PHP);
|
||||||
|
|
||||||
|
// Turn on the error & exception handlers
|
||||||
|
//crayon_handler_on();
|
||||||
|
|
||||||
|
// GLOBAL FUNCTIONS
|
||||||
|
|
||||||
|
// Check for forwardslash/backslash in folder path to structure paths
|
||||||
|
function crayon_s($url = '') {
|
||||||
|
$url = strval($url);
|
||||||
|
if (!empty($url) && !preg_match('#(\\\\|/)$#', $url)) {
|
||||||
|
return $url . '/';
|
||||||
|
} else if (empty($url)) {
|
||||||
|
return '/';
|
||||||
|
} else {
|
||||||
|
return $url;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Returns path using forward slashes, slash added at the end
|
||||||
|
function crayon_pf($url, $slash = TRUE) {
|
||||||
|
$url = trim(strval($url));
|
||||||
|
if ($slash) {
|
||||||
|
$url = crayon_s($url);
|
||||||
|
}
|
||||||
|
return str_replace('\\', '/', $url);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Returns path using back slashes
|
||||||
|
function crayon_pb($url) {
|
||||||
|
return str_replace('/', '\\', crayon_s(trim(strval($url))));
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get/Set plugin information
|
||||||
|
function crayon_set_info($info_array) {
|
||||||
|
global $CRAYON_VERSION, $CRAYON_DATE, $CRAYON_AUTHOR, $CRAYON_WEBSITE;
|
||||||
|
if (!is_array($info_array)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
crayon_set_info_key('Version', $info_array, $CRAYON_VERSION);
|
||||||
|
crayon_set_info_key('Date', $info_array, $CRAYON_DATE);
|
||||||
|
crayon_set_info_key('AuthorName', $info_array, $CRAYON_AUTHOR);
|
||||||
|
crayon_set_info_key('PluginURI', $info_array, $CRAYON_WEBSITE);
|
||||||
|
}
|
||||||
|
|
||||||
|
function crayon_set_info_key($key, $array, &$info) {
|
||||||
|
if (array_key_exists($key, $array)) {
|
||||||
|
$info = $array[$key];
|
||||||
|
} else {
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function crayon_vargs(&$var, $default) {
|
||||||
|
$var = isset($var) ? $var : $default;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Checks if the input is a valid PHP file and matches the $valid filename
|
||||||
|
function crayon_is_php_file($filepath, $valid) {
|
||||||
|
$path = pathinfo(crayon_pf($filepath));
|
||||||
|
return is_file($filepath) && $path['extension'] === 'php' && $path['filename'] === $valid;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Stops the script if crayon_is_php_file() returns false or a remote path is given
|
||||||
|
function crayon_die_if_not_php($filepath, $valid) {
|
||||||
|
if (!crayon_is_php_file($filepath, $valid) || crayon_is_path_url($filepath)) {
|
||||||
|
die("[ERROR] '$filepath' is not a valid PHP file for '$valid'");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function crayon_is_path_url($path) {
|
||||||
|
$parts = parse_url($path);
|
||||||
|
return isset($parts['scheme']) && strlen($parts['scheme']) > 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
// LANGUAGE TRANSLATION FUNCTIONS
|
||||||
|
|
||||||
|
function crayon_load_plugin_textdomain() {
|
||||||
|
if (function_exists('load_plugin_textdomain')) {
|
||||||
|
load_plugin_textdomain(CRAYON_DOMAIN, false, CRAYON_DIR . CRAYON_TRANS_DIR);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function crayon__($text) {
|
||||||
|
if (function_exists('__')) {
|
||||||
|
return __($text, CRAYON_DOMAIN);
|
||||||
|
} else {
|
||||||
|
return $text;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function crayon_e($text) {
|
||||||
|
if (function_exists('_e')) {
|
||||||
|
_e($text, CRAYON_DOMAIN);
|
||||||
|
} else {
|
||||||
|
echo $text;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function crayon_n($singular, $plural, $count) {
|
||||||
|
if (function_exists('_n')) {
|
||||||
|
return _n($singular, $plural, $count, CRAYON_DOMAIN);
|
||||||
|
} else {
|
||||||
|
return $count > 1 ? $plural : $singular;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function crayon_x($text, $context) {
|
||||||
|
if (function_exists('_x')) {
|
||||||
|
return _x($text, $context, CRAYON_DOMAIN);
|
||||||
|
} else {
|
||||||
|
return $text;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
?>
|
1
js/jquery-colorpicker/.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
.svn
|
231
js/jquery-colorpicker/README
Normal file
@ -0,0 +1,231 @@
|
|||||||
|
jQuery.colorpicker v0.9.3
|
||||||
|
|
||||||
|
Copyright (c) 2011-2012 Martijn W. van der Lee
|
||||||
|
Licensed under the MIT.
|
||||||
|
|
||||||
|
Full-featured colorpicker for jQueryUI with full theming support.
|
||||||
|
Most images from jPicker by Christopher T. Tillman.
|
||||||
|
Sourcecode created from scratch by Martijn W. van der Lee.
|
||||||
|
|
||||||
|
IE support; make sure you have a doctype defined, or the colorpicker will not
|
||||||
|
display correctly.
|
||||||
|
|
||||||
|
Options:
|
||||||
|
alpha: false
|
||||||
|
Whether or not to show the inputs for alpha.
|
||||||
|
|
||||||
|
altAlpha: true
|
||||||
|
Change the opacity of the altField element(s) according to the alpha
|
||||||
|
setting.
|
||||||
|
|
||||||
|
altField: ''
|
||||||
|
Change the background color of the elements specified in this element.
|
||||||
|
|
||||||
|
altOnChange: true
|
||||||
|
If true, the altField element(s) are updated on every change, otherwise
|
||||||
|
only upon closing.
|
||||||
|
|
||||||
|
altProperties: 'background-color'
|
||||||
|
Comma-separated list of CSS properties to set color of in the altField.
|
||||||
|
The following properties are allowed, all others are ignored.
|
||||||
|
background-color
|
||||||
|
color
|
||||||
|
border-color
|
||||||
|
outline-color
|
||||||
|
|
||||||
|
autoOpen: false
|
||||||
|
If true, the dialog opens automatically upon page load.
|
||||||
|
|
||||||
|
buttonColorize: false
|
||||||
|
If a buttonimage is specified, change the background color of the
|
||||||
|
image when the color is changed.
|
||||||
|
|
||||||
|
buttonImage: 'images/ui-colorpicker.png'
|
||||||
|
Same as jQueryUI DatePicker.
|
||||||
|
|
||||||
|
buttonImageOnly: false
|
||||||
|
Same as jQueryUI DatePicker.
|
||||||
|
|
||||||
|
buttonText: null
|
||||||
|
Same as jQueryUI DatePicker. If null, use language default.
|
||||||
|
|
||||||
|
closeOnEscape: true
|
||||||
|
Close the window when pressing the Escape key on the keyboard.
|
||||||
|
|
||||||
|
closeOnOutside: true
|
||||||
|
Close the window when clicking outside the colorpicker display.
|
||||||
|
|
||||||
|
color: '#00FF00'
|
||||||
|
Initial color. Formats recognized are:
|
||||||
|
#rrggbb
|
||||||
|
rrggbb (same as previous, but without the #)
|
||||||
|
rgb(rrr,ggg,bbb)
|
||||||
|
rgba(rrr,ggg,bbb,a.a)
|
||||||
|
rgb(rrr%,ggg%,bbb%)
|
||||||
|
rgba(rrr%,ggg%,bbb%,aaa%)
|
||||||
|
w3c-defined color name
|
||||||
|
|
||||||
|
colorFormat: 'HEX'
|
||||||
|
Specifies the format of the color string returned in callbacks.
|
||||||
|
You can either specify one of the predefined formats:
|
||||||
|
#HEX #112233
|
||||||
|
#HEX3 #123 if possible, otherwise false.
|
||||||
|
HEX 112233
|
||||||
|
HEX3 123 if possible, otherwise false.
|
||||||
|
RGB rgb(123,45,67) if opaque, otherwise false.
|
||||||
|
RGBA rgba(123,45,67,0.123%)
|
||||||
|
RGB% rgb(12%,34%,56%) if opaque, otherwise false.
|
||||||
|
RGBA% rgba(12%,34%,56%,0.123%)
|
||||||
|
HSL hsl(123,45,67) if opaque, otherwise false.
|
||||||
|
HSLA hsla(123,45,67,0.123%)
|
||||||
|
HSL% hsl(12%,34%,56%) if opaque, otherwise false.
|
||||||
|
HSLA% hsla(12%,34%,56%,0.123%)
|
||||||
|
NAME Closest color name
|
||||||
|
EXACT Exact name if possible, otherwise false.
|
||||||
|
or specify your own format...
|
||||||
|
Each color channel is specified as a pair of two characters.
|
||||||
|
The first character determines the color channel:
|
||||||
|
a Alpha
|
||||||
|
r, g, b RGB color space; red, green and blue
|
||||||
|
h, s, v HSV color space; hue, saturation and value
|
||||||
|
c, m, y, k CMYK color space; cyan, magenta, yellow and black
|
||||||
|
L, A, B LAB color space; Luminosity, *A and *B.
|
||||||
|
The second character specifies the data type:
|
||||||
|
x Two-digit hexadecimal notation.
|
||||||
|
d Decimal (0-255) notation.
|
||||||
|
f Floating point (0-1) notation, not rounded.
|
||||||
|
p Percentage (0-100) notation, not rounded.
|
||||||
|
If you prefix a valid pair with a backslash, it won't be replaced.
|
||||||
|
All patterns are case sensitive.
|
||||||
|
For example, to create the common hex color format, use "#rxgxbx".
|
||||||
|
For an rgba() format, use "rgba(rd,gd,bd,af)"
|
||||||
|
|
||||||
|
You can also specify an array of formats where the first non-FALSE one
|
||||||
|
is returned. Note that the only formats able to return FALSE are the
|
||||||
|
predefined formats HEX3 and EXACT. For example, this array will output
|
||||||
|
HEX3 format if possible or HEX format otherwise:
|
||||||
|
['HEX3', 'HEX']
|
||||||
|
|
||||||
|
dragggable: true
|
||||||
|
Make the dialog draggable if the header is visible and the dialog is
|
||||||
|
not inline.
|
||||||
|
|
||||||
|
duration: 'fast'
|
||||||
|
Same as jQueryUI DatePicker.
|
||||||
|
|
||||||
|
hsv: true
|
||||||
|
Whether or not to show the inputs for HSV.
|
||||||
|
|
||||||
|
layout: { ... }
|
||||||
|
Set the position of elements in a table layout.
|
||||||
|
You could create any layout possible with HTML tables by specifying
|
||||||
|
cell position and size of each part.
|
||||||
|
@todo document how this works.
|
||||||
|
|
||||||
|
limit: ''
|
||||||
|
Limit the selectable colors to any of the predefined limits:
|
||||||
|
'' No limitations, allow 8bpp color for a palette of
|
||||||
|
all 16 million colors.
|
||||||
|
'websafe' Set of 216 colors composed of 00, 33, 66, 99, cc
|
||||||
|
and ff color channel values in #rrggbb.
|
||||||
|
'nibble' 4 bits per color, can be easily converted to #rgb
|
||||||
|
format.
|
||||||
|
The palette is limited to 4096 colors.
|
||||||
|
'binary' Allow only #00 or #ff as color channel values for
|
||||||
|
primary colors only; only 8 colors are available
|
||||||
|
with this limit.
|
||||||
|
'name' Limit to closest color name.
|
||||||
|
|
||||||
|
modal:
|
||||||
|
Ensures no other controls on screen can be used while the dialog is
|
||||||
|
opened.
|
||||||
|
Also look at showCancelButton and closeOnEscape to use in combination
|
||||||
|
with the modal option. closeOnOutside is redundant when used with modal.
|
||||||
|
|
||||||
|
mode: 'h'
|
||||||
|
Determines the functionality of the map and bar components. Allowed
|
||||||
|
values are; 'h', 's', 'l', 'r', 'g', 'b' or 'a', for hue, saturation,
|
||||||
|
luminosity, red, green, blue and alpha respectively.
|
||||||
|
|
||||||
|
parts: ''
|
||||||
|
Determine which parts to display.
|
||||||
|
Use any of the preset names ('full', 'popup' or 'inline') or specify
|
||||||
|
an array of part names (i.e. ['header', 'map', 'bar', 'hex', 'hsv',
|
||||||
|
'rgb', 'alpha', 'lab', 'cmyk', 'preview', 'swatches', 'footer']).
|
||||||
|
If an empty string is given, the parts will be automatically chosen as
|
||||||
|
preset 'popup' or 'inline' depending on the context in which the
|
||||||
|
colorpicker is used.
|
||||||
|
|
||||||
|
rgb: true, // Show RGB controls and modes
|
||||||
|
Whether or not to show the inputs for RGB.
|
||||||
|
|
||||||
|
regional: '',
|
||||||
|
Sets the language to use. Note that you must load the appropriate
|
||||||
|
language file from the i18n directory. '' is included by default.
|
||||||
|
|
||||||
|
showAnim: 'fadeIn'
|
||||||
|
Same as jQueryUI DatePicker.
|
||||||
|
|
||||||
|
showCancelButton: true
|
||||||
|
Show the Cancel button if buttonpane is visible.
|
||||||
|
|
||||||
|
showCloseButton: true
|
||||||
|
Show the Close button if the header is visible.
|
||||||
|
If the dialog is inline, the close button is never shown.
|
||||||
|
|
||||||
|
showNoneButton: false
|
||||||
|
Show the None/Revert button if buttonpane is visible.
|
||||||
|
|
||||||
|
showOn: 'focus'
|
||||||
|
Same as jQueryUI DatePicker.
|
||||||
|
|
||||||
|
showOptions: {}
|
||||||
|
Same as jQueryUI DatePicker.
|
||||||
|
|
||||||
|
swatches: null
|
||||||
|
'null' to show swatches of HTML colors or provide your own object
|
||||||
|
with colornames and {r:1, g:1, b:1} array.
|
||||||
|
For example { 'red': {r:1, g:0, b:0}, 'blue': {r:0, g:0, b:1} }
|
||||||
|
|
||||||
|
title: null
|
||||||
|
Title to display in the header. If null, use language default.
|
||||||
|
|
||||||
|
Events:
|
||||||
|
init: null
|
||||||
|
Triggered on initially setting the color. Called only once.
|
||||||
|
Callbacks recieve same data as select event.
|
||||||
|
|
||||||
|
close: null
|
||||||
|
Triggered when the popup is closed.
|
||||||
|
Callbacks recieve same data as select event and an additional number
|
||||||
|
of fields containing the current color in all supported color spaces.
|
||||||
|
These are rgb{}, hsv{}, cmyk{}, lab{}, hsl{} and a.
|
||||||
|
Most values are floating point numbers in range [0,1] for accuracy.
|
||||||
|
The a and b values in the lab color space have range [-1,1].
|
||||||
|
|
||||||
|
select: null
|
||||||
|
Triggered on each change, confirmation (click on OK button) and
|
||||||
|
cancellation (click on Cancel, outside window or window close button)
|
||||||
|
respectively.
|
||||||
|
|
||||||
|
The event recieves a jQuery event object and a data object containing
|
||||||
|
the elements 'formatted' (with the color formatted according to
|
||||||
|
formatColor).
|
||||||
|
|
||||||
|
Note that select may be triggered in rapid succession when dragging
|
||||||
|
the mouse accross the map or bar and may be triggered without a change
|
||||||
|
in color upon specific user interactions.
|
||||||
|
|
||||||
|
Methods:
|
||||||
|
open
|
||||||
|
Open the dialog
|
||||||
|
|
||||||
|
close
|
||||||
|
Close the dialog
|
||||||
|
|
||||||
|
destroy
|
||||||
|
Destroy the widget
|
||||||
|
|
||||||
|
setColor
|
||||||
|
Set the current color to the specified color. Accepts any
|
||||||
|
CSS-confirmant color specification.
|
20
js/jquery-colorpicker/TODO
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
Fix the weird one-pixel vertical shift bug.
|
||||||
|
Caused by ui-widget class.
|
||||||
|
Only happens in Chrome and only on some, not all.
|
||||||
|
Disappears and re-appears at different zoom levels.
|
||||||
|
In hex input, accept (and strip) '#' symbol on copy/past.
|
||||||
|
Completely destroy object when closed.
|
||||||
|
Enabled/disabled
|
||||||
|
isRTL? What to RTL, besides button?
|
||||||
|
Disable selection in MSIE: this.dialog.on('selectstart', function(event) { return false; })
|
||||||
|
Special rendering mode for color_none? Use [X] images?
|
||||||
|
Fix parsing from input with websafe colors
|
||||||
|
Recognize "transparent" color name.
|
||||||
|
Limit number of events triggered.
|
||||||
|
Small size variant (128x128)
|
||||||
|
isRTL? What to RTL, besides button?
|
||||||
|
Undo/redo memory?
|
||||||
|
ARIA support.
|
||||||
|
Allow only set (dec/hex) characters in inputs
|
||||||
|
Most-recently-used swatches
|
||||||
|
HSL/HSV distance calculations should take into account cyclic hue.
|
27
js/jquery-colorpicker/i18n/jquery.ui.colorpicker-en.js
vendored
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
jQuery(function($) {
|
||||||
|
$.colorpicker.regional['en'] = {
|
||||||
|
ok: 'OK',
|
||||||
|
cancel: 'Cancel',
|
||||||
|
none: 'None',
|
||||||
|
button: 'Color',
|
||||||
|
title: 'Pick a color',
|
||||||
|
transparent: 'Transparent',
|
||||||
|
hsvH: 'H',
|
||||||
|
hsvS: 'S',
|
||||||
|
hsvV: 'V',
|
||||||
|
rgbR: 'R',
|
||||||
|
rgbG: 'G',
|
||||||
|
rgbB: 'B',
|
||||||
|
labL: 'L',
|
||||||
|
labA: 'a',
|
||||||
|
labB: 'b',
|
||||||
|
hslH: 'H',
|
||||||
|
hslS: 'S',
|
||||||
|
hslL: 'L',
|
||||||
|
cmykC: 'C',
|
||||||
|
cmykM: 'M',
|
||||||
|
cmykY: 'Y',
|
||||||
|
cmykK: 'K',
|
||||||
|
alphaA: 'A'
|
||||||
|
};
|
||||||
|
});
|
27
js/jquery-colorpicker/i18n/jquery.ui.colorpicker-fr.js
vendored
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
jQuery(function($) {
|
||||||
|
$.colorpicker.regional['fr'] = {
|
||||||
|
ok: 'OK',
|
||||||
|
cancel: 'Annuler',
|
||||||
|
none: 'Aucune couleur',
|
||||||
|
button: 'Couleur',
|
||||||
|
title: 'Choisir une couleur',
|
||||||
|
transparent: 'Transparent',
|
||||||
|
hsvH: 'T',
|
||||||
|
hsvS: 'S',
|
||||||
|
hsvV: 'V',
|
||||||
|
rgbR: 'R',
|
||||||
|
rgbG: 'V',
|
||||||
|
rgbB: 'B',
|
||||||
|
labL: 'L',
|
||||||
|
labA: 'a',
|
||||||
|
labB: 'b',
|
||||||
|
hslH: 'T',
|
||||||
|
hslS: 'S',
|
||||||
|
hslL: 'L',
|
||||||
|
cmykC: 'C',
|
||||||
|
cmykM: 'M',
|
||||||
|
cmykY: 'J',
|
||||||
|
cmykK: 'N',
|
||||||
|
alphaA: 'A'
|
||||||
|
};
|
||||||
|
});
|
27
js/jquery-colorpicker/i18n/jquery.ui.colorpicker-nl.js
vendored
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
jQuery(function($) {
|
||||||
|
$.colorpicker.regional['nl'] = {
|
||||||
|
ok: 'OK',
|
||||||
|
cancel: 'Annuleren',
|
||||||
|
none: 'Geen',
|
||||||
|
button: 'Kleur',
|
||||||
|
title: 'Kies een kleur',
|
||||||
|
transparent: 'Transparant',
|
||||||
|
hsvH: 'H',
|
||||||
|
hsvS: 'S',
|
||||||
|
hsvV: 'V',
|
||||||
|
rgbR: 'R',
|
||||||
|
rgbG: 'G',
|
||||||
|
rgbB: 'B',
|
||||||
|
labL: 'L',
|
||||||
|
labA: 'a',
|
||||||
|
labB: 'b',
|
||||||
|
hslH: 'H',
|
||||||
|
hslS: 'S',
|
||||||
|
hslL: 'L',
|
||||||
|
cmykC: 'C',
|
||||||
|
cmykM: 'M',
|
||||||
|
cmykY: 'Y',
|
||||||
|
cmykK: 'K',
|
||||||
|
alphaA: 'A'
|
||||||
|
};
|
||||||
|
});
|
BIN
js/jquery-colorpicker/images/bar-alpha.png
Normal file
After Width: | Height: | Size: 2.1 KiB |
BIN
js/jquery-colorpicker/images/bar-opacity.png
Normal file
After Width: | Height: | Size: 134 B |
BIN
js/jquery-colorpicker/images/bar-pointer.png
Normal file
After Width: | Height: | Size: 198 B |
BIN
js/jquery-colorpicker/images/bar.png
Normal file
After Width: | Height: | Size: 382 B |
BIN
js/jquery-colorpicker/images/map-opacity.png
Normal file
After Width: | Height: | Size: 139 B |
BIN
js/jquery-colorpicker/images/map-pointer.png
Normal file
After Width: | Height: | Size: 344 B |
BIN
js/jquery-colorpicker/images/map.png
Normal file
After Width: | Height: | Size: 76 KiB |
BIN
js/jquery-colorpicker/images/preview-opacity.png
Normal file
After Width: | Height: | Size: 135 B |
BIN
js/jquery-colorpicker/images/ui-colorpicker.png
Normal file
After Width: | Height: | Size: 494 B |
210
js/jquery-colorpicker/index.html
Normal file
@ -0,0 +1,210 @@
|
|||||||
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<title>jQuery Colorpicker</title>
|
||||||
|
<!-- jQuery/jQueryUI (hosted) -->
|
||||||
|
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.js"></script>
|
||||||
|
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.16/jquery-ui.js"></script>
|
||||||
|
<link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.16/themes/ui-lightness/jquery-ui.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<style>
|
||||||
|
body {
|
||||||
|
font-family: 'Segoe UI', Verdana, Arial, Helvetica, sans-serif;
|
||||||
|
font-size: 62.5%;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
<script src="jquery.colorpicker.js"></script>
|
||||||
|
<link href="jquery.colorpicker.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<script src="i18n/jquery.ui.colorpicker-nl.js"></script>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<h1>jQuery ColorPicker</h1>
|
||||||
|
|
||||||
|
<hr/>
|
||||||
|
|
||||||
|
Basic <input> example, without any options: <input type="text" class="cp-basic" value="fe9810"/>
|
||||||
|
|
||||||
|
<hr/>
|
||||||
|
|
||||||
|
Basic <div> example, without any options: <span class="cp-basic" style="display: inline-block; vertical-align: top;"></span>
|
||||||
|
<script>
|
||||||
|
$( function() {
|
||||||
|
$('.cp-basic').colorpicker();
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<hr/>
|
||||||
|
|
||||||
|
Fully-featured example: <input type="text" class="cp-full" value="186aa7"/>
|
||||||
|
<script>
|
||||||
|
$( function() {
|
||||||
|
$('.cp-full').colorpicker({
|
||||||
|
parts: 'full',
|
||||||
|
showOn: 'both',
|
||||||
|
buttonColorize: true,
|
||||||
|
showNoneButton: true,
|
||||||
|
alpha: true
|
||||||
|
});
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<hr/>
|
||||||
|
|
||||||
|
Localized to Dutch (nl): <input type="text" class="cp-nl" value="ccea73"/>
|
||||||
|
<script>
|
||||||
|
$( function() {
|
||||||
|
$('.cp-nl').colorpicker({
|
||||||
|
regional: 'nl',
|
||||||
|
showNoneButton: true,
|
||||||
|
alpha: true
|
||||||
|
});
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<hr/>
|
||||||
|
|
||||||
|
Limit to websafe colors: <input type="text" class="cp-websafe" value="0fa7c2"/>
|
||||||
|
<script>
|
||||||
|
$( function() {
|
||||||
|
$('.cp-websafe').colorpicker({
|
||||||
|
limit: 'websafe'
|
||||||
|
});
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<hr/>
|
||||||
|
|
||||||
|
Alternative field class: <input type="text" class="cp-alt" value="b762ae"/>
|
||||||
|
<span class="cp-alt-target" style="display: inline-block; border: thin solid black; padding: .5em 4em;">
|
||||||
|
<div style=" background-color: white; border: thin solid black; padding: .25em 2em; font-size: 1.25em; font-weight: bold;">Background-color on outside, text color here</div>
|
||||||
|
</span>
|
||||||
|
<script>
|
||||||
|
$( function() {
|
||||||
|
$('.cp-alt').colorpicker({
|
||||||
|
altField: '.cp-alt-target',
|
||||||
|
altProperties: 'background-color,color',
|
||||||
|
altAlpha: true,
|
||||||
|
alpha: true
|
||||||
|
});
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<hr/>
|
||||||
|
|
||||||
|
Events: <input type="text" class="cp-events" value="92b64a"/>
|
||||||
|
<div class="cp-events-log" style="vertical-align: top; display: inline-block; border: thin solid black; height: 10em; overflow-y: scroll; width: 50em;"></div>
|
||||||
|
<script>
|
||||||
|
$( function() {
|
||||||
|
var count = 0;
|
||||||
|
|
||||||
|
function addToEventLog(label, message) {
|
||||||
|
var line = '<div>#'+(++count)+' '+label+': '+message+'</div>';
|
||||||
|
var log = $('.cp-events-log');
|
||||||
|
log.append(line).scrollTop(log[0].scrollHeight);
|
||||||
|
}
|
||||||
|
|
||||||
|
$('.cp-events').colorpicker({
|
||||||
|
init: function(event, color) {
|
||||||
|
addToEventLog('Init', color.formatted);
|
||||||
|
},
|
||||||
|
select: function(event, color) {
|
||||||
|
addToEventLog('Select', color.formatted);
|
||||||
|
},
|
||||||
|
close: function(event, color) {
|
||||||
|
addToEventLog('Close', color.formatted + ' r:' + color.rgb.r + ' g:' + color.rgb.g + ' b:' + color.rgb.b + ' a:' + color.a);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<hr/>
|
||||||
|
|
||||||
|
Output formatting HSLA: <input type="text" class="cp-format" value="918237"/>
|
||||||
|
<span class="cp-format-output"></span>
|
||||||
|
<script>
|
||||||
|
$( function() {
|
||||||
|
$('.cp-format').colorpicker({
|
||||||
|
colorFormat: 'HSLA',
|
||||||
|
alpha: true,
|
||||||
|
init: function(event, color) {
|
||||||
|
$('.cp-format-output').text(color.formatted);
|
||||||
|
},
|
||||||
|
select: function(event, color) {
|
||||||
|
$('.cp-format-output').text(color.formatted);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<hr/>
|
||||||
|
|
||||||
|
Output format list: <input type="text" class="cp-name" value="a92fb4"/>
|
||||||
|
<span class="cp-name-output"></span>
|
||||||
|
<script>
|
||||||
|
$( function() {
|
||||||
|
$('.cp-name').colorpicker({
|
||||||
|
parts: 'full',
|
||||||
|
colorFormat: ['NAME', 'EXACT', '#HEX3', 'RGB', 'RGBA'],
|
||||||
|
init: function(event, color) {
|
||||||
|
$('.cp-name-output').text(color.formatted);
|
||||||
|
},
|
||||||
|
select: function(event, color) {
|
||||||
|
$('.cp-name-output').text(color.formatted);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<hr/>
|
||||||
|
|
||||||
|
Dialog with Colorpicker popup (demonstrates z-index):
|
||||||
|
<button id="cp-dialog-open">Open dialog</button>
|
||||||
|
<div id="cp-dialog-modal" title="Basic modal dialog">
|
||||||
|
Basic <input> example, without any options: <input type="text" class="cp-basic" value="fe9810"/>
|
||||||
|
<br/>
|
||||||
|
Basic <div> example, without any options: <span class="cp-basic" style="display: inline-block; vertical-align: top;"></span>
|
||||||
|
</div>
|
||||||
|
<script>
|
||||||
|
$(function() {
|
||||||
|
var dialog = $('#cp-dialog-modal').dialog({
|
||||||
|
autoOpen: false,
|
||||||
|
minWidth: 500,
|
||||||
|
modal: true,
|
||||||
|
buttons: { 'Close': function() {
|
||||||
|
$(this).dialog('close');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
$('#cp-dialog-open').click(function() {
|
||||||
|
dialog.dialog('open');
|
||||||
|
});
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<hr/>
|
||||||
|
|
||||||
|
Modal (and showCancelButton, closeOnEscape, showCloseButton): <input type="text" class="cp-modal" value="9ba73f"/>
|
||||||
|
<script>
|
||||||
|
$( function() {
|
||||||
|
$('.cp-modal').colorpicker({
|
||||||
|
parts: 'draggable',
|
||||||
|
showCloseButton: false,
|
||||||
|
modal: true,
|
||||||
|
showCancelButton: false,
|
||||||
|
closeOnEscape: false
|
||||||
|
});
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<hr/>
|
||||||
|
|
||||||
|
Input formatting: <input type="text" class="cp-input" value="rgb(123,42,87)"/>
|
||||||
|
<script>
|
||||||
|
$( function() {
|
||||||
|
$('.cp-input').colorpicker({
|
||||||
|
colorFormat: ['RGBA']
|
||||||
|
});
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
</html>
|
199
js/jquery-colorpicker/jquery.colorpicker.css
Normal file
@ -0,0 +1,199 @@
|
|||||||
|
.ui-colorpicker,
|
||||||
|
.ui-dialog.ui-colorpicker {
|
||||||
|
width: auto;
|
||||||
|
white-space: nowrap;
|
||||||
|
|
||||||
|
-webkit-touch-callout: none;
|
||||||
|
-webkit-user-select: none;
|
||||||
|
-khtml-user-select: none;
|
||||||
|
-moz-user-select: none;
|
||||||
|
-ms-user-select: none;
|
||||||
|
user-select: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ui-colorpicker-inline {
|
||||||
|
position: static;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ui-colorpicker-buttonset {
|
||||||
|
float: left;
|
||||||
|
margin-left: .4em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ui-colorpicker-buttonset .ui-button {
|
||||||
|
margin: .5em 0 .5em 0;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ui-colorpicker-buttonpane {
|
||||||
|
background-image: none;
|
||||||
|
margin: .7em 0 0 0;
|
||||||
|
padding: 0 .2em;
|
||||||
|
border-left: 0;
|
||||||
|
border-right: 0;
|
||||||
|
border-bottom: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ui-colorpicker-buttonpane button {
|
||||||
|
float: right;
|
||||||
|
margin: .5em .2em .4em;
|
||||||
|
cursor: pointer;
|
||||||
|
padding: .2em .6em .3em .6em;
|
||||||
|
width: auto;
|
||||||
|
overflow: visible;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ui-colorpicker-buttonpane button.ui-colorpicker-current {
|
||||||
|
float: left;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ui-colorpicker table {
|
||||||
|
font-size: 100%; /* Reset browser table font-size */
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ui-colorpicker table td {
|
||||||
|
vertical-align: top;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ui-colorpicker-padding-left {
|
||||||
|
padding-left: 10px;
|
||||||
|
}
|
||||||
|
.ui-colorpicker-padding-top {
|
||||||
|
padding-top: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ui-colorpicker-border {
|
||||||
|
border: 1px inset;
|
||||||
|
display: inline-block;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Bar & map */
|
||||||
|
.ui-colorpicker-map > *,
|
||||||
|
.ui-colorpicker-bar > * {
|
||||||
|
position: absolute;
|
||||||
|
cursor: crosshair;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ui-colorpicker-map-pointer,
|
||||||
|
.ui-colorpicker-bar-pointer {
|
||||||
|
position: absolute;
|
||||||
|
}
|
||||||
|
/* Map */
|
||||||
|
.ui-colorpicker-map,
|
||||||
|
.ui-colorpicker-map > * {
|
||||||
|
display: block;
|
||||||
|
width: 256px;
|
||||||
|
height: 256px;
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ui-colorpicker-map-layer-1,
|
||||||
|
.ui-colorpicker-map-layer-2 {
|
||||||
|
background: url(images/map.png) no-repeat;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ui-colorpicker-map-layer-alpha {
|
||||||
|
background: url(images/map-opacity.png);
|
||||||
|
}
|
||||||
|
|
||||||
|
.ui-colorpicker-map-pointer {
|
||||||
|
display: inline-block;
|
||||||
|
width: 15px;
|
||||||
|
height: 15px;
|
||||||
|
background: url(images/map-pointer.png) no-repeat;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Bar */
|
||||||
|
.ui-colorpicker-bar,
|
||||||
|
.ui-colorpicker-bar > * {
|
||||||
|
display: block;
|
||||||
|
width: 20px;
|
||||||
|
height: 256px;
|
||||||
|
overflow: hidden;
|
||||||
|
background-repeat: repeat-x;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ui-colorpicker-bar-layer-1,
|
||||||
|
.ui-colorpicker-bar-layer-2,
|
||||||
|
.ui-colorpicker-bar-layer-3,
|
||||||
|
.ui-colorpicker-bar-layer-4 {
|
||||||
|
background: url(images/bar.png) repeat-x;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ui-colorpicker-bar-layer-alpha {
|
||||||
|
background: url(images/bar-opacity.png);
|
||||||
|
}
|
||||||
|
|
||||||
|
.ui-colorpicker-bar-layer-alphabar {
|
||||||
|
background: url(images/bar-alpha.png);
|
||||||
|
}
|
||||||
|
|
||||||
|
.ui-colorpicker-bar-pointer {
|
||||||
|
display: inline-block;
|
||||||
|
width: 20px;
|
||||||
|
height: 7px;
|
||||||
|
background: url(images/bar-pointer.png) no-repeat;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Preview */
|
||||||
|
.ui-colorpicker-preview {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ui-colorpicker-preview-initial {
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ui-colorpicker-preview-initial,
|
||||||
|
.ui-colorpicker-preview-current {
|
||||||
|
width: 50px;
|
||||||
|
height: 20px;
|
||||||
|
display: inline-block;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ui-colorpicker-preview-initial-alpha,
|
||||||
|
.ui-colorpicker-preview-current-alpha {
|
||||||
|
width: 50px;
|
||||||
|
height: 20px;
|
||||||
|
display: inline-block;
|
||||||
|
background: url(images/preview-opacity.png) repeat;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Inputs */
|
||||||
|
.ui-colorpicker-rgb label,
|
||||||
|
.ui-colorpicker-hsv label,
|
||||||
|
.ui-colorpicker-hsl label,
|
||||||
|
.ui-colorpicker-lab label,
|
||||||
|
.ui-colorpicker-cmyk label,
|
||||||
|
.ui-colorpicker-alpha label {
|
||||||
|
width: 1.5em;
|
||||||
|
display: inline-block;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ui-colorpicker-number {
|
||||||
|
margin: .1em;
|
||||||
|
width: 4em;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Hex */
|
||||||
|
.ui-colorpicker-hex {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Swatches */
|
||||||
|
.ui-colorpicker-swatches {
|
||||||
|
width: 84px;
|
||||||
|
height: 256px;
|
||||||
|
overflow: auto;
|
||||||
|
background-color: #f8f8f8;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ui-colorpicker-swatch {
|
||||||
|
cursor: pointer;
|
||||||
|
float: left;
|
||||||
|
width: 11px;
|
||||||
|
height: 11px;
|
||||||
|
border-right: 1px solid black;
|
||||||
|
border-bottom: 1px solid black;
|
||||||
|
}
|