mirror of
https://github.com/alacritty/alacritty.git
synced 2024-11-18 13:55:23 -05:00
Update font crate to 2018 edition
This commit is contained in:
parent
7d1edf01c2
commit
f54aabfe92
11 changed files with 29 additions and 54 deletions
|
@ -4,6 +4,7 @@ version = "0.1.0"
|
||||||
authors = ["Christian Duerr <contact@christianduerr.com>", "Joe Wilm <joe@jwilm.com>"]
|
authors = ["Christian Duerr <contact@christianduerr.com>", "Joe Wilm <joe@jwilm.com>"]
|
||||||
description = "Font rendering using the best available solution per platform"
|
description = "Font rendering using the best available solution per platform"
|
||||||
license = "Apache-2.0"
|
license = "Apache-2.0"
|
||||||
|
edition = "2018"
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
euclid = "0.20"
|
euclid = "0.20"
|
||||||
|
|
|
@ -18,8 +18,6 @@ use std::collections::HashMap;
|
||||||
use std::path::PathBuf;
|
use std::path::PathBuf;
|
||||||
use std::ptr;
|
use std::ptr;
|
||||||
|
|
||||||
use {Slant, Style, Weight};
|
|
||||||
|
|
||||||
use core_foundation::array::{CFArray, CFIndex};
|
use core_foundation::array::{CFArray, CFIndex};
|
||||||
use core_foundation::string::CFString;
|
use core_foundation::string::CFString;
|
||||||
use core_graphics::base::kCGImageAlphaPremultipliedFirst;
|
use core_graphics::base::kCGImageAlphaPremultipliedFirst;
|
||||||
|
@ -42,12 +40,14 @@ use core_text::font_descriptor::{CTFontDescriptor, CTFontOrientation};
|
||||||
|
|
||||||
use euclid::{Point2D, Rect, Size2D};
|
use euclid::{Point2D, Rect, Size2D};
|
||||||
|
|
||||||
use super::{BitmapBuffer, FontDesc, FontKey, GlyphKey, Metrics, RasterizedGlyph};
|
use log::{trace, warn};
|
||||||
|
|
||||||
pub mod byte_order;
|
pub mod byte_order;
|
||||||
use self::byte_order::kCGBitmapByteOrder32Host;
|
use byte_order::kCGBitmapByteOrder32Host;
|
||||||
|
|
||||||
use super::Size;
|
use super::{
|
||||||
|
BitmapBuffer, FontDesc, FontKey, GlyphKey, Metrics, RasterizedGlyph, Size, Slant, Style, Weight,
|
||||||
|
};
|
||||||
|
|
||||||
/// Font descriptor
|
/// Font descriptor
|
||||||
///
|
///
|
||||||
|
@ -124,7 +124,7 @@ impl ::std::fmt::Display for Error {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
impl ::Rasterize for Rasterizer {
|
impl crate::Rasterize for Rasterizer {
|
||||||
type Err = Error;
|
type Err = Error;
|
||||||
|
|
||||||
fn new(device_pixel_ratio: f32, use_thin_strokes: bool) -> Result<Rasterizer, Error> {
|
fn new(device_pixel_ratio: f32, use_thin_strokes: bool) -> Result<Rasterizer, Error> {
|
||||||
|
|
|
@ -13,10 +13,7 @@
|
||||||
// limitations under the License.
|
// limitations under the License.
|
||||||
//
|
//
|
||||||
//! Rasterization powered by DirectWrite
|
//! Rasterization powered by DirectWrite
|
||||||
extern crate dwrote;
|
use dwrote::{FontCollection, FontStretch, FontStyle, FontWeight, GlyphOffset, GlyphRunAnalysis};
|
||||||
use self::dwrote::{
|
|
||||||
FontCollection, FontStretch, FontStyle, FontWeight, GlyphOffset, GlyphRunAnalysis,
|
|
||||||
};
|
|
||||||
|
|
||||||
use super::{
|
use super::{
|
||||||
BitmapBuffer, FontDesc, FontKey, GlyphKey, Metrics, RasterizedGlyph, Size, Slant, Style, Weight,
|
BitmapBuffer, FontDesc, FontKey, GlyphKey, Metrics, RasterizedGlyph, Size, Slant, Style, Weight,
|
||||||
|
|
|
@ -13,7 +13,7 @@
|
||||||
// limitations under the License.
|
// limitations under the License.
|
||||||
use std::ptr::NonNull;
|
use std::ptr::NonNull;
|
||||||
|
|
||||||
use foreign_types::ForeignTypeRef;
|
use foreign_types::{foreign_type, ForeignTypeRef};
|
||||||
|
|
||||||
use super::ffi::FcCharSetCreate;
|
use super::ffi::FcCharSetCreate;
|
||||||
use super::ffi::{FcCharSet, FcCharSetAddChar, FcCharSetDestroy};
|
use super::ffi::{FcCharSet, FcCharSetAddChar, FcCharSetDestroy};
|
||||||
|
|
|
@ -11,7 +11,7 @@
|
||||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
// See the License for the specific language governing permissions and
|
// See the License for the specific language governing permissions and
|
||||||
// limitations under the License.
|
// limitations under the License.
|
||||||
use foreign_types::ForeignTypeRef;
|
use foreign_types::{foreign_type, ForeignTypeRef};
|
||||||
|
|
||||||
use super::ffi::{FcConfig, FcConfigDestroy, FcConfigGetCurrent, FcConfigGetFonts};
|
use super::ffi::{FcConfig, FcConfigDestroy, FcConfigGetCurrent, FcConfigGetFonts};
|
||||||
use super::{FontSetRef, SetName};
|
use super::{FontSetRef, SetName};
|
||||||
|
|
|
@ -14,7 +14,8 @@
|
||||||
use std::ops::Deref;
|
use std::ops::Deref;
|
||||||
use std::ptr::NonNull;
|
use std::ptr::NonNull;
|
||||||
|
|
||||||
use foreign_types::{ForeignType, ForeignTypeRef};
|
use foreign_types::{foreign_type, ForeignType, ForeignTypeRef};
|
||||||
|
use log::trace;
|
||||||
|
|
||||||
use super::{ConfigRef, ObjectSetRef, PatternRef};
|
use super::{ConfigRef, ObjectSetRef, PatternRef};
|
||||||
|
|
||||||
|
|
|
@ -19,29 +19,29 @@ use foreign_types::{ForeignType, ForeignTypeRef};
|
||||||
|
|
||||||
use fontconfig::fontconfig as ffi;
|
use fontconfig::fontconfig as ffi;
|
||||||
|
|
||||||
use self::ffi::FcResultNoMatch;
|
use ffi::FcResultNoMatch;
|
||||||
use self::ffi::{FcFontList, FcFontMatch, FcFontSort};
|
use ffi::{FcFontList, FcFontMatch, FcFontSort};
|
||||||
use self::ffi::{FcMatchFont, FcMatchPattern, FcMatchScan};
|
use ffi::{FcMatchFont, FcMatchPattern, FcMatchScan};
|
||||||
use self::ffi::{FcSetApplication, FcSetSystem};
|
use ffi::{FcSetApplication, FcSetSystem};
|
||||||
use self::ffi::{FC_SLANT_ITALIC, FC_SLANT_OBLIQUE, FC_SLANT_ROMAN};
|
use ffi::{FC_SLANT_ITALIC, FC_SLANT_OBLIQUE, FC_SLANT_ROMAN};
|
||||||
use self::ffi::{FC_WEIGHT_BLACK, FC_WEIGHT_BOLD, FC_WEIGHT_EXTRABLACK, FC_WEIGHT_EXTRABOLD};
|
use ffi::{FC_WEIGHT_BLACK, FC_WEIGHT_BOLD, FC_WEIGHT_EXTRABLACK, FC_WEIGHT_EXTRABOLD};
|
||||||
use self::ffi::{FC_WEIGHT_BOOK, FC_WEIGHT_MEDIUM, FC_WEIGHT_REGULAR, FC_WEIGHT_SEMIBOLD};
|
use ffi::{FC_WEIGHT_BOOK, FC_WEIGHT_MEDIUM, FC_WEIGHT_REGULAR, FC_WEIGHT_SEMIBOLD};
|
||||||
use self::ffi::{FC_WEIGHT_EXTRALIGHT, FC_WEIGHT_LIGHT, FC_WEIGHT_THIN};
|
use ffi::{FC_WEIGHT_EXTRALIGHT, FC_WEIGHT_LIGHT, FC_WEIGHT_THIN};
|
||||||
|
|
||||||
pub mod config;
|
pub mod config;
|
||||||
pub use self::config::{Config, ConfigRef};
|
pub use config::{Config, ConfigRef};
|
||||||
|
|
||||||
pub mod font_set;
|
pub mod font_set;
|
||||||
pub use self::font_set::{FontSet, FontSetRef};
|
pub use font_set::{FontSet, FontSetRef};
|
||||||
|
|
||||||
pub mod object_set;
|
pub mod object_set;
|
||||||
pub use self::object_set::{ObjectSet, ObjectSetRef};
|
pub use object_set::{ObjectSet, ObjectSetRef};
|
||||||
|
|
||||||
pub mod char_set;
|
pub mod char_set;
|
||||||
pub use self::char_set::{CharSet, CharSetRef};
|
pub use char_set::{CharSet, CharSetRef};
|
||||||
|
|
||||||
pub mod pattern;
|
pub mod pattern;
|
||||||
pub use self::pattern::{Pattern, PatternRef};
|
pub use pattern::{Pattern, PatternRef};
|
||||||
|
|
||||||
/// Find the font closest matching the provided pattern.
|
/// Find the font closest matching the provided pattern.
|
||||||
///
|
///
|
||||||
|
|
|
@ -16,7 +16,7 @@ use std::ptr::NonNull;
|
||||||
use libc::c_char;
|
use libc::c_char;
|
||||||
|
|
||||||
use super::ffi::{FcObjectSet, FcObjectSetAdd, FcObjectSetCreate, FcObjectSetDestroy};
|
use super::ffi::{FcObjectSet, FcObjectSetAdd, FcObjectSetCreate, FcObjectSetDestroy};
|
||||||
use foreign_types::ForeignTypeRef;
|
use foreign_types::{foreign_type, ForeignTypeRef};
|
||||||
|
|
||||||
foreign_type! {
|
foreign_type! {
|
||||||
pub unsafe type ObjectSet {
|
pub unsafe type ObjectSet {
|
||||||
|
|
|
@ -18,7 +18,7 @@ use std::path::PathBuf;
|
||||||
use std::ptr::{self, NonNull};
|
use std::ptr::{self, NonNull};
|
||||||
use std::str;
|
use std::str;
|
||||||
|
|
||||||
use foreign_types::{ForeignType, ForeignTypeRef};
|
use foreign_types::{foreign_type, ForeignType, ForeignTypeRef};
|
||||||
use libc::{c_char, c_double, c_int};
|
use libc::{c_char, c_double, c_int};
|
||||||
|
|
||||||
use super::ffi::FcResultMatch;
|
use super::ffi::FcResultMatch;
|
||||||
|
|
|
@ -22,6 +22,7 @@ use freetype::freetype_sys;
|
||||||
use freetype::tt_os2::TrueTypeOS2Table;
|
use freetype::tt_os2::TrueTypeOS2Table;
|
||||||
use freetype::{self, Library};
|
use freetype::{self, Library};
|
||||||
use libc::c_uint;
|
use libc::c_uint;
|
||||||
|
use log::{debug, trace};
|
||||||
|
|
||||||
pub mod fc;
|
pub mod fc;
|
||||||
|
|
||||||
|
|
|
@ -20,31 +20,6 @@
|
||||||
|
|
||||||
#![deny(clippy::all, clippy::if_not_else, clippy::enum_glob_use, clippy::wrong_pub_self_convention)]
|
#![deny(clippy::all, clippy::if_not_else, clippy::enum_glob_use, clippy::wrong_pub_self_convention)]
|
||||||
|
|
||||||
#[cfg(not(any(target_os = "macos", windows)))]
|
|
||||||
extern crate fontconfig;
|
|
||||||
#[cfg(not(any(target_os = "macos", windows)))]
|
|
||||||
extern crate freetype;
|
|
||||||
|
|
||||||
#[cfg(target_os = "macos")]
|
|
||||||
extern crate core_foundation;
|
|
||||||
#[cfg(target_os = "macos")]
|
|
||||||
extern crate core_foundation_sys;
|
|
||||||
#[cfg(target_os = "macos")]
|
|
||||||
extern crate core_graphics;
|
|
||||||
#[cfg(target_os = "macos")]
|
|
||||||
extern crate core_text;
|
|
||||||
#[cfg(target_os = "macos")]
|
|
||||||
extern crate euclid;
|
|
||||||
|
|
||||||
extern crate libc;
|
|
||||||
|
|
||||||
#[cfg(not(any(target_os = "macos", windows)))]
|
|
||||||
#[macro_use]
|
|
||||||
extern crate foreign_types;
|
|
||||||
|
|
||||||
#[cfg_attr(not(windows), macro_use)]
|
|
||||||
extern crate log;
|
|
||||||
|
|
||||||
use std::fmt;
|
use std::fmt;
|
||||||
use std::hash::{Hash, Hasher};
|
use std::hash::{Hash, Hasher};
|
||||||
use std::ops::{Add, Mul};
|
use std::ops::{Add, Mul};
|
||||||
|
@ -59,7 +34,7 @@ pub use ft::{Error, FreeTypeRasterizer as Rasterizer};
|
||||||
#[cfg(windows)]
|
#[cfg(windows)]
|
||||||
pub mod directwrite;
|
pub mod directwrite;
|
||||||
#[cfg(windows)]
|
#[cfg(windows)]
|
||||||
pub use crate::directwrite::{DirectWriteRasterizer as Rasterizer, Error};
|
pub use directwrite::{DirectWriteRasterizer as Rasterizer, Error};
|
||||||
|
|
||||||
// If target is macos, reexport everything from darwin
|
// If target is macos, reexport everything from darwin
|
||||||
#[cfg(target_os = "macos")]
|
#[cfg(target_os = "macos")]
|
||||||
|
|
Loading…
Reference in a new issue