1.0-beta8!

This commit is contained in:
be5invis 2015-11-18 00:21:48 +08:00
parent 7309872ee7
commit d837d9bc94
5 changed files with 103 additions and 49 deletions

4
.gitignore vendored
View File

@ -46,6 +46,4 @@ parameters.js
support/glyph.js
support/stroke.js
support/spiroexpand.js
testdrive/*.ttf
testdrive/*.woff
testdrive/*.charmap
testdrive/assets

View File

@ -399,17 +399,26 @@ define [buildFont para recursive] : begin
return rs
define [quadcontrols x1 y1 samples raf ty] : bezcontrols (x1 * 2 / 3) (y1 * 2 / 3) [mix 1 x1 (2 / 3)] [mix 1 y1 (2 / 3)] samples raf ty
define {jhv, jvh} : let [hv {}] [vh {}] : begin
local samples 4
foreach [j : range 1 samples] : begin
local theta : j / samples * Math.PI / 2
local c : Math.pow [Math.cos theta] (2 / SUPERNESS)
local s : Math.pow [Math.sin theta] (2 / SUPERNESS)
hv.push {s (1 - c)}
vh.push {(1 - c) s}
define {jhv, jvh} : let [cache {}] : begin
local [build samples] : begin
local hv {}
local vh {}
foreach [j : range 1 samples] : begin
local theta : j / samples * Math.PI / 2
local c : Math.pow [Math.cos theta] (2 / SUPERNESS)
local s : Math.pow [Math.sin theta] (2 / SUPERNESS)
hv.push {s (1 - c)}
vh.push {(1 - c) s}
cache.(samples) = {.hv hv .vh vh}
local [hv samples] : begin
if [not cache.(samples)] : build samples
return cache.(samples).hv
local [vh samples] : begin
if [not cache.(samples)] : build samples
return cache.(samples).vh
list hv vh
define [archv samples notiny k raf] : alsothruthem jhv raf
define [arcvh samples notiny k raf] : alsothruthem jvh raf
define [archv samples notiny k raf] : alsothruthem [jhv [fallback samples 4]] raf
define [arcvh samples notiny k raf] : alsothruthem [jvh [fallback samples 4]] raf
define [complexThru] : begin
local a : {}.slice.call arguments

View File

@ -2,10 +2,10 @@ OBJDIR = build
SUPPORT_FILES = support/glyph.js support/stroke.js support/spiroexpand.js parameters.js extract.js generate.js emptyfont.toml parameters.toml
GLYPH_SEGMENTS = glyphs/common-shapes.patel glyphs/overmarks.patel glyphs/latin-basic-capital.patel glyphs/latin-basic-lower.patel glyphs/greek.patel glyphs/cyrillic-basic.patel glyphs/latin-extend-basis.patel glyphs/latin-extend-decorated.patel glyphs/cyrillic-extended.patel glyphs/numbers.patel glyphs/symbol-ascii.patel glyphs/symbol-punctuation.patel glyphs/symbol-math.patel glyphs/symbol-geometric.patel glyphs/symbol-other.patel glyphs/symbol-letter.patel glyphs/autobuilds.patel
FILES = $(SUPPORT_FILES) buildglyphs.js
PARAM_DEFAULT = FAST='$(FAST)' VARIANTNAME='$(VARIANTNAME)' STYLE_COMMON='$(STYLE_COMMON)' STYLE_UPRIGHT='$(STYLE_UPRIGHT)' STYLE_ITALIC='$(STYLE_ITALIC)'
PARAM_SLAB = FAST='$(FAST)' VARIANTNAME='-slab$(VARIANTNAME)' STYLE_COMMON='slab $(STYLE_COMMON)' STYLE_UPRIGHT='$(STYLE_UPRIGHT)' STYLE_ITALIC='$(STYLE_ITALIC)' STYLE_X_REGULAR='x-slab-regular' STYLE_X_BOLD='x-slab-bold' STYLE_X_ITALIC='x-slab-italic' STYLE_X_BOLDITALIC='x-slab-bolditalic'
PARAM_CC = FAST='$(FAST)' VARIANTNAME='cc$(VARIANTNAME)' STYLE_COMMON='cc $(STYLE_COMMON)' STYLE_UPRIGHT='$(STYLE_UPRIGHT)' STYLE_ITALIC='$(STYLE_ITALIC)'
PARAM_CC_SLAB = FAST='$(FAST)' VARIANTNAME='cc-slab$(VARIANTNAME)' STYLE_COMMON='cc slab x-cc-slab $(STYLE_COMMON)' STYLE_UPRIGHT='$(STYLE_UPRIGHT)' STYLE_ITALIC='$(STYLE_ITALIC)' STYLE_X_REGULAR='x-slab-regular' STYLE_X_BOLD='x-slab-bold' STYLE_X_ITALIC='x-slab-italic' STYLE_X_BOLDITALIC='x-slab-bolditalic'
PARAM_DEFAULT = FAST='$(FAST)' VARIANTNAME='$(VARIANTNAME)' STYLE_COMMON='$(STYLE_COMMON)' STYLE_UPRIGHT='$(STYLE_UPRIGHT)' STYLE_ITALIC='$(STYLE_ITALIC)' VERSION='$(VERSION)'
PARAM_SLAB = FAST='$(FAST)' VARIANTNAME='-slab$(VARIANTNAME)' STYLE_COMMON='slab $(STYLE_COMMON)' STYLE_UPRIGHT='$(STYLE_UPRIGHT)' STYLE_ITALIC='$(STYLE_ITALIC)' STYLE_X_REGULAR='x-slab-regular' STYLE_X_BOLD='x-slab-bold' STYLE_X_ITALIC='x-slab-italic' STYLE_X_BOLDITALIC='x-slab-bolditalic' VERSION='$(VERSION)'
PARAM_CC = FAST='$(FAST)' VARIANTNAME='cc$(VARIANTNAME)' STYLE_COMMON='cc $(STYLE_COMMON)' STYLE_UPRIGHT='$(STYLE_UPRIGHT)' STYLE_ITALIC='$(STYLE_ITALIC)' VERSION='$(VERSION)'
PARAM_CC_SLAB = FAST='$(FAST)' VARIANTNAME='cc-slab$(VARIANTNAME)' STYLE_COMMON='cc slab x-cc-slab $(STYLE_COMMON)' STYLE_UPRIGHT='$(STYLE_UPRIGHT)' STYLE_ITALIC='$(STYLE_ITALIC)' STYLE_X_REGULAR='x-slab-regular' STYLE_X_BOLD='x-slab-bold' STYLE_X_ITALIC='x-slab-italic' STYLE_X_BOLDITALIC='x-slab-bolditalic' VERSION='$(VERSION)'
### Sometimes make will freak out and report ACCESS VIOLATION for me... so i have to add some repeation
ifeq ($(OS),Windows_NT)
@ -15,8 +15,9 @@ LOOPS = 1
endif
fonts : fonts-default fonts-cc fonts-slab fonts-cc-slab
test : test-default test-cc test-slab test-cc-slab
pages : pages-default pages-cc pages-slab pages-cc-slab
release : release-default release-cc release-slab release-cc-slab
$(OBJDIR) :
@- mkdir $@
@ -42,6 +43,9 @@ fonts-cc : fdts-cc
fonts-cc-slab : fdts-cc-slab
@$(MAKE) -s -f onegroup.mk fonts $(PARAM_CC_SLAB)
### USED FOR TESTING AND RELEASING
### DO NOT TOUCH!
# testdrive
test-default : fonts-default
@$(MAKE) -s -f onegroup.mk test $(PARAM_DEFAULT)
@ -52,6 +56,44 @@ test-cc : fonts-cc
test-cc-slab : fonts-cc-slab
@$(MAKE) -s -f onegroup.mk test $(PARAM_CC_SLAB)
# Pages
pages-default : fonts-default
@$(MAKE) -s -f onegroup.mk pages $(PARAM_DEFAULT)
pages-slab : fonts-slab
@$(MAKE) -s -f onegroup.mk pages $(PARAM_SLAB)
pages-cc : fonts-cc
@$(MAKE) -s -f onegroup.mk pages $(PARAM_CC)
pages-cc-slab : fonts-cc-slab
@$(MAKE) -s -f onegroup.mk pages $(PARAM_CC_SLAB)
# Release
release-default : fonts-default
@$(MAKE) -s -f onegroup.mk release $(PARAM_DEFAULT)
release-slab : fonts-slab
@$(MAKE) -s -f onegroup.mk release $(PARAM_SLAB)
release-cc : fonts-cc
@$(MAKE) -s -f onegroup.mk release $(PARAM_CC)
release-cc-slab : fonts-cc-slab
@$(MAKE) -s -f onegroup.mk release $(PARAM_CC_SLAB)
# Archives
archives-default : fonts-default
@$(MAKE) -s -f onegroup.mk archives $(PARAM_DEFAULT)
archives-slab : fonts-slab
@$(MAKE) -s -f onegroup.mk archives $(PARAM_SLAB)
archives-cc : fonts-cc
@$(MAKE) -s -f onegroup.mk archives $(PARAM_CC)
archives-cc-slab : fonts-cc-slab
@$(MAKE) -s -f onegroup.mk archives $(PARAM_CC_SLAB)
# Variant releases
releasepack-default : $(FILES) | $(OBJDIR)
$(MAKE) pages release VERSION=$(VERSION)
releasepack-hooky : $(FILES) | $(OBJDIR)
$(MAKE) archives-default archives-cc VERSION=$(VERSION) VARIANTNAME='-hooky' STYLE_UPRIGHT='v-l-hooky v-i-hooky'
releasepack-zshaped : $(FILES) | $(OBJDIR)
$(MAKE) archives-default archives-cc VERSION=$(VERSION) VARIANTNAME='-zshaped' STYLE_UPRIGHT='v-l-zshaped v-i-zshaped'
release-all : releasepack-default releasepack-hooky releasepack-zshaped
$(SUPPORT_FILES) :
patel-c --strict $< -o $@

View File

@ -43,7 +43,7 @@ $(OBJDIR)/.pass0-$(PREFIX)-bolditalic.fdt : $(FILES) | $(OBJDIR)
$(NODE) generate -o $@ iosevka $(STYLE_COMMON) w-bold s-italic x-bolditalic $(STYLE_ITALIC) $(STYLE_X_BOLDITALIC)
$(PASS0) : $(OBJDIR)/.pass0-%.ttf : $(OBJDIR)/.pass0-%.fdt
$(NODE) extract --upm 16000 --uprightify 1 --ttf $@ $<
$(NODE) extract --upm 12800 --uprightify 1 --ttf $@ $<
$(ABFEAT) : $(OBJDIR)/.pass0-%.ab.fea : $(OBJDIR)/.pass0-%.fdt
$(NODE) extract --feature $@ $<
$(MAPS) : $(OBJDIR)/%.charmap : $(OBJDIR)/.pass0-%.fdt
@ -91,32 +91,37 @@ ARCHIVEDIR = release-archives
RELEASES = $(subst $(OBJDIR)/,$(RELEASEDIR)/,$(TARGETS))
$(RELEASES) : $(RELEASEDIR)/%.ttf : $(OBJDIR)/%.ttf
cp $< $@
PAGESTTF = $(subst $(OBJDIR)/,pages/assets/,$(TARGETS))
$(PAGESTTF) : pages/assets/%.ttf : $(OBJDIR)/%.ttf
PAGEDIR = pages/assets
PAGESTTF = $(subst $(OBJDIR)/,$(PAGEDIR)/,$(TARGETS))
$(PAGESTTF) : $(PAGEDIR)/%.ttf : $(OBJDIR)/%.ttf
cp $< $@
PAGESWOFF = $(subst .ttf,.woff,$(PAGESTTF))
$(PAGESWOFF) : pages/assets/%.woff : pages/assets/%.ttf
$(PAGESWOFF) : $(PAGEDIR)/%.woff : $(PAGEDIR)/%.ttf
sfnt2woff $<
PAGESMAPS = $(subst $(OBJDIR)/,pages/assets/,$(MAPS))
$(PAGESMAPS) : pages/assets/%.charmap : $(OBJDIR)/%.charmap
PAGESMAPS = $(subst $(OBJDIR)/,$(PAGEDIR)/,$(MAPS))
$(PAGESMAPS) : $(PAGEDIR)/%.charmap : $(OBJDIR)/%.charmap
cp $< $@
$(ARCHIVEDIR)/$(PREFIX).tar.bz2 : $(TARGETS)
$(ARCHIVEDIR)/$(PREFIX)-$(VERSION).tar.bz2 : $(TARGETS)
cd $(OBJDIR) && tar -cjvf ../$@ $(subst $(OBJDIR)/,,$^)
$(ARCHIVEDIR)/$(PREFIX).zip : $(TARGETS)
$(ARCHIVEDIR)/$(PREFIX)-$(VERSION).zip : $(TARGETS)
cd $(OBJDIR) && 7z a -tzip ../$@ $(subst $(OBJDIR)/,,$^)
archives : $(ARCHIVEDIR)/$(PREFIX).tar.bz2 $(ARCHIVEDIR)/$(PREFIX).zip
archives : $(ARCHIVEDIR)/$(PREFIX)-$(VERSION).tar.bz2 $(ARCHIVEDIR)/$(PREFIX)-$(VERSION).zip
pages : $(PAGESTTF) $(PAGESWOFF) $(PAGESMAPS)
release : $(RELEASES) archives pages
# testdrive
TESTTTF = $(subst $(OBJDIR)/,testdrive/,$(TARGETS))
$(TESTTTF) : testdrive/%.ttf : $(OBJDIR)/%.ttf
TESTDIR = testdrive/assets
TESTTTF = $(subst $(OBJDIR)/,$(TESTDIR)/,$(TARGETS))
$(TESTTTF) : $(TESTDIR)/%.ttf : $(OBJDIR)/%.ttf
cp $< $@
TESTWOFF = $(subst .ttf,.woff,$(TESTTTF))
$(TESTWOFF) : testdrive/%.woff : testdrive/%.ttf
$(TESTWOFF) : $(TESTDIR)/%.woff : $(TESTDIR)/%.ttf
sfnt2woff $<
TESTMAPS = $(subst $(OBJDIR)/,testdrive/,$(MAPS))
$(TESTMAPS) : testdrive/%.charmap : $(OBJDIR)/%.charmap
TESTMAPS = $(subst $(OBJDIR)/,$(TESTDIR)/,$(MAPS))
$(TESTMAPS) : $(TESTDIR)/%.charmap : $(OBJDIR)/%.charmap
cp $< $@
test : $(TESTTTF) $(TESTWOFF) $(TESTMAPS)

View File

@ -8,83 +8,83 @@
}
@font-face {
font-family: IosevkaWEB;
src: url('iosevka-regular.woff') format('woff'), url('iosevka-regular.ttf') format('truetype');
src: url('assets/iosevka-regular.woff') format('woff'), url('assets/iosevka-regular.ttf') format('truetype');
}
@font-face {
font-family: IosevkaWEB;
font-style: italic;
src: url('iosevka-italic.woff') format('woff'), url('iosevka-italic.ttf') format('truetype');
src: url('assets/iosevka-italic.woff') format('woff'), url('assets/iosevka-italic.ttf') format('truetype');
}
@font-face {
font-family: IosevkaWEB;
font-weight: bold;
src: url('iosevka-bold.woff') format('woff'), url('iosevka-bold.ttf') format('truetype');
src: url('assets/iosevka-bold.woff') format('woff'), url('assets/iosevka-bold.ttf') format('truetype');
}
@font-face {
font-family: IosevkaWEB;
font-style: italic;
font-weight: bold;
src: url('iosevka-bolditalic.woff') format('woff'), url('iosevka-bolditalic.ttf') format('truetype');
src: url('assets/iosevka-bolditalic.woff') format('woff'), url('assets/iosevka-bolditalic.ttf') format('truetype');
}
@font-face {
font-family: IosevkaSlabWEB;
src: url('iosevka-slab-regular.woff') format('woff'), url('iosevka-slab-regular.ttf') format('truetype');
src: url('assets/iosevka-slab-regular.woff') format('woff'), url('assets/iosevka-slab-regular.ttf') format('truetype');
}
@font-face {
font-family: IosevkaSlabWEB;
font-style: italic;
src: url('iosevka-slab-italic.woff') format('woff'), url('iosevka-slab-italic.ttf') format('truetype');
src: url('assets/iosevka-slab-italic.woff') format('woff'), url('assets/iosevka-slab-italic.ttf') format('truetype');
}
@font-face {
font-family: IosevkaSlabWEB;
font-weight: bold;
src: url('iosevka-slab-bold.woff') format('woff'), url('iosevka-slab-bold.ttf') format('truetype');
src: url('assets/iosevka-slab-bold.woff') format('woff'), url('assets/iosevka-slab-bold.ttf') format('truetype');
}
@font-face {
font-family: IosevkaSlabWEB;
font-style: italic;
font-weight: bold;
src: url('iosevka-slab-bolditalic.woff') format('woff'), url('iosevka-slab-bolditalic.ttf') format('truetype');
src: url('assets/iosevka-slab-bolditalic.woff') format('woff'), url('assets/iosevka-slab-bolditalic.ttf') format('truetype');
}
@font-face {
font-family: IosevkaCCWEB;
src: url('iosevkacc-regular.woff') format('woff'), url('iosevkacc-regular.ttf') format('truetype');
src: url('assets/iosevkacc-regular.woff') format('woff'), url('assets/iosevkacc-regular.ttf') format('truetype');
}
@font-face {
font-family: IosevkaCCWEB;
font-style: italic;
src: url('iosevkacc-italic.woff') format('woff'), url('iosevkacc-italic.ttf') format('truetype');
src: url('assets/iosevkacc-italic.woff') format('woff'), url('assets/iosevkacc-italic.ttf') format('truetype');
}
@font-face {
font-family: IosevkaCCWEB;
font-weight: bold;
src: url('iosevkacc-bold.woff') format('woff'), url('iosevkacc-bold.ttf') format('truetype');
src: url('assets/iosevkacc-bold.woff') format('woff'), url('assets/iosevkacc-bold.ttf') format('truetype');
}
@font-face {
font-family: IosevkaCCWEB;
font-style: italic;
font-weight: bold;
src: url('iosevkacc-bolditalic.woff') format('woff'), url('iosevkacc-bolditalic.ttf') format('truetype');
src: url('assets/iosevkacc-bolditalic.woff') format('woff'), url('assets/iosevkacc-bolditalic.ttf') format('truetype');
}
@font-face {
font-family: IosevkaCCSlabWEB;
src: url('iosevkacc-slab-regular.woff') format('woff'), url('iosevkacc-slab-regular.ttf') format('truetype');
src: url('assets/iosevkacc-slab-regular.woff') format('woff'), url('assets/iosevkacc-slab-regular.ttf') format('truetype');
}
@font-face {
font-family: IosevkaCCSlabWEB;
font-style: italic;
src: url('iosevkacc-slab-italic.woff') format('woff'), url('iosevkacc-slab-italic.ttf') format('truetype');
src: url('assets/iosevkacc-slab-italic.woff') format('woff'), url('assets/iosevkacc-slab-italic.ttf') format('truetype');
}
@font-face {
font-family: IosevkaCCSlabWEB;
font-weight: bold;
src: url('iosevkacc-slab-bold.woff') format('woff'), url('iosevkacc-slab-bold.ttf') format('truetype');
src: url('assets/iosevkacc-slab-bold.woff') format('woff'), url('assets/iosevkacc-slab-bold.ttf') format('truetype');
}
@font-face {
font-family: IosevkaCCSlabWEB;
font-style: italic;
font-weight: bold;
src: url('iosevkacc-slab-bolditalic.woff') format('woff'), url('iosevkacc-slab-bolditalic.ttf') format('truetype');
src: url('assets/iosevkacc-slab-bolditalic.woff') format('woff'), url('assets/iosevkacc-slab-bolditalic.ttf') format('truetype');
}
a {
color: black;
@ -362,7 +362,7 @@
sampleRows: []
},
ready: function(){
this.$http.get(this.currentFont.name + '.charmap', function(data){
this.$http.get('assets/' + this.currentFont.name + '.charmap', function(data){
var rows = [];
var row = null;
var uhash = [];