Subdirectories
Pikmoji: src
Tap any pikchr to see its source code.
eye
leftmargin = 1
rightmargin = 1
topmargin = 4
bottommargin = 4
define wide { thick thick thick thick thick thick thick thick thick thick }
Eye : ellipse wide color black fill white height 8 width 14
Iris: circle wide color red radius 3 at Eye.c
Lens: circle wide fill black radius 1.5 at Eye.c
→ /pikchrshowfile-binary
leftmargin = 2.5
rightmargin = 2.5
topmargin = 1
bottommargin = 1
define wide { thick thick thick thick thick thick thick thick thick thick }
@side = 0.8
@offset = @side
File: file wide fill white radius 3 height 14 width 11
Grid: [
define ___ { box width @side height @side fill white }
define _BL { box width @side height @side fill black }
define _RD { box width @side height @side fill red }
A: _RD ; ___ ; _BL ; _BL ; ___ ; ___ ; _BL ; _RD
B: ___ with nw at A.sw ; ___ ; _BL ; ___ ; ___ ; _BL ; ___ ; _BL
C: ___ with nw at B.sw ; _BL ; _RD ; _BL ; ___ ; _RD ; ___ ; _BL
D: _BL with nw at C.sw ; ___ ; _BL ; ___ ; ___ ; ___ ; _BL ; _BL
E: ___ with nw at D.sw ; _BL ; ___ ; _BL ; ___ ; _BL ; ___ ; _BL
F: ___ with nw at E.sw ; ___ ; _RD ; _BL ; ___ ; _RD ; ___ ; _BL
G: _BL with nw at F.sw ; _BL ; _BL ; ___ ; ___ ; _BL ; _BL ; _BL
H: _RD with nw at G.sw ; ___ ; _BL ; ___ ; _BL ; _BL ; ___ ; _RD
] with nw at @offset below @offset east of File.nw
→ /pikchrshowfile-image
leftmargin = 2.5
rightmargin = 2.5
topmargin = 1
bottommargin = 1
define wide { thick thick thick thick thick thick thick thick thick thick }
@offset = 2.3
File: file wide fill white radius 3 height 14 width 11
Blue: dot fill blue color red radius 2 at @offset heading 300 from File.c
Red: dot fill red color green radius 2 at @offset heading 60 from File.c
Green: dot fill green color blue radius 2 at @offset heading 180 from File.c
→ /pikchrshowfile-text
leftmargin = 2.5
rightmargin = 2.5
topmargin = 1
bottommargin = 1
define wide { thick thick thick thick thick thick thick thick thick thick }
define nawi { thick thick thick thick thick thick thick thick }
@indent = 1
@linesep = 1
File: file wide fill white radius 3 height 14 width 11
Text: [
down ; move @linesep down ; line wide go 6 east color red
down ; move @linesep down from last line.start ; line nawi go 4.5 east // color blue
down ; move @linesep down from last line.start ; line nawi go 5 east // color green
down ; move @linesep down from last line.start ; line nawi go 5.5 east color red
down ; move @linesep down from last line.start ; line nawi go 4 east // color purple
] with nw at @indent east of File.nw
→ /pikchrshowfile-unknown
leftmargin = 2.5
rightmargin = 2.5
topmargin = 1
bottommargin = 1
@side = 2.5
define wide { thick thick thick thick thick thick thick thick thick thick }
define nawi { thick thick thick thick thick thick thick thick }
File: file wide fill white radius 3 height 14 width 11
Mark: [
Dot: dot color red fill red radius 0.22
Query: line nawi radius 1 color red \
from 1 above Dot.c \
then up 1.5*@side \
then right @side \
then up 2*@side \
then left 2*@side \
then down @side
CapS: dot color red fill red radius 0.19 with c at Query.start
CapE: dot color red fill red radius 0.19 with c at Query.end
] with nw at 1.5 below 1.5 right of File.nw
→ /pikchrshowfs-directory
leftmargin = 1
rightmargin = 1
topmargin = 2
bottommargin = 2
define wide { thick thick thick thick thick thick thick thick thick thick }
Main: box wide fill white width 14 height 9
Tab: box wide fill red width 5.33 height 3 with sw at Main.nw
→ /pikchrshowfs-file
leftmargin = 2.5
rightmargin = 2.5
topmargin = 1
bottommargin = 1
define wide { thick thick thick thick thick thick thick thick thick thick }
File: file wide fill white radius 3 height 14 width 11
→ /pikchrshowfs-inode
leftmargin = 1
rightmargin = 1
topmargin = 1
bottommargin = 1
define wide { thick thick thick thick thick thick thick thick thick thick }
Out: circle radius 7 wide fill white
Mid: circle radius 4 wide color red at Out.c
Dot: circle radius 1 fill black at Out.c
→ /pikchrshowfs-snapshot
leftmargin = 2.5
rightmargin = 2.5
topmargin = 1
bottommargin = 1
define wide { thick thick thick thick thick thick thick thick thick thick }
Main: cylinder wide fill white height 14 width 11 radius 3
Disc: ellipse fill red color red height 4 width 9 with c at .5 between Main.nw and Main.ne
Label: oval fill red color black height 2.5 width 7 radius 1 with n at Main.c \
thick thick thick thick thick thick
→ /pikchrshowfs-symlink
@from = 0.15
@to = 0.85
leftmargin = 2.5
rightmargin = 2.5
topmargin = 1
bottommargin = 1
define wide { thick thick thick thick thick thick thick thick thick thick }
File: file wide fill white radius 3 height 14 width 11
define span { between File.nw and File.se }
define along_span { from @from span to @to span }
@thick = .41 // *2 = .81 matches `wide` - WIBNI to be able to spec line width directly
Link: arrow wide color red along_span
Cap: circle color red fill red radius @thick with c at Link.start
→ /pikchrshowfs-volume
leftmargin = 2.5
rightmargin = 2.5
topmargin = 1
bottommargin = 1
define wide { thick thick thick thick thick thick thick thick thick thick }
Main: cylinder wide fill white height 14 width 11 radius 3
Disc: ellipse fill red color red height 4 width 9 with c at .5 between Main.nw and Main.ne
→ /pikchrshowlink
leftmargin = 1
rightmargin = 1
topmargin = 1
bottommargin = 1
define wide { thick thick thick thick thick thick thick thick thick thick }
@thick = .41 // *2 = .81 matches `wide` - WIBNI to be able to spec line width directly
// / / // /// ///// //////// ///////////// /////////////////////
/// Configuration
@side = 2.2 // unit side in the dot pattern, scale to fill the icon
@skew = -45 // rotation of the dot pattern around the center.
// / / // /// ///// //////// ///////////// /////////////////////
/// Supporting definitions
define mark { radius .1 color orange invis } // remove invis to see the guide point
define cap { radius @thick color red }
Bg: circle wide color black fill white radius 7
X: dot at Bg.c invis // color blue radius .2
// / / // /// ///// //////// ///////////// /////////////////////
/// More supporting definitions, and placement of main grid
///
/// - The `cap` point are drawn. Endcaps for the splines.
/// - WIBNI actual end caps for lines.
@half = 0.5 * @side
@endoff = 0.5 * @side
@left = @skew - 90
@down = @left - 90
@right = @down - 90
@up = @right - 90
A: dot at @half heading @skew from X.c cap
B: dot at @side heading @left from A.c mark
C: dot at @side heading @down from B.c mark
D: dot at @side heading @down from C.c mark
E: dot at @side heading @down from D.c mark
F: dot at @side heading @right from E.c mark
G: dot at @side heading @right from F.c mark
H: dot at @side heading @up from G.c mark
I: dot at @side heading @up from H.c mark
J: dot at @side heading @up from I.c mark
K: dot at @side heading @up from J.c mark
L: dot at @side heading @up from K.c mark
M: dot at @side heading @left from L.c mark
N: dot at @side heading @left from M.c mark
O: dot at @side heading @down from N.c mark
P: dot at @side heading @right from C.c cap
BX: dot at @endoff heading @up from B.c cap
IX: dot at @endoff heading @down from I.c cap
// / / // /// ///// //////// ///////////// /////////////////////
/// Main drawing
spline wide color red \
from A.c then to B.c then to C.c then to D.c \
then to E.c then to F.c then to G.c then to H.c \
then to IX.c
spline wide color red \
from P.c then to I.c then to J.c then to K.c \
then to L.c then to M.c then to N.c then to O.c \
then to BX.c
// / / // /// ///// //////// ///////////// /////////////////////
→ /pikchrshowmap-marker
leftmargin = 4
rightmargin = 4
topmargin = 2
bottommargin = 2
define wide { thick thick thick thick thick thick thick thick thick thick }
define mark { invis }
// define wide { }
// define mark { color red radius .1 }
@side = 4
Center: dot mark
A: dot mark at @side heading 90 from Center.c
B: dot mark at @side heading 45 from Center.c
C: dot mark at @side heading 0 from Center.c
D: dot mark at @side heading -45 from Center.c
E: dot mark at @side heading -90 from Center.c
F: dot mark at 2*@side heading -120 from A.c
G: dot mark at 2*@side heading -150 from A.c
H: dot mark at 2*@side heading 120 from E.c
spline wide color black fill white \
from G.c \
then to H.c \
then to A.c \
then to B.c \
then to C.c \
then to D.c \
then to E.c \
then to F.c \
then to G.c \
close
dot color red radius 1 at Center.c
→ /pikchrshowpaperclip
leftmargin = 1
rightmargin = 1
topmargin = 1
bottommargin = 1
@scale = 0.9
define wide { thick thick thick thick thick thick thick thick thick thick }
define nawi { thick thick thick thick thick thick thick thick thick }
@outer = 2.5 * @scale
@inner = 1.5 * @scale
@top = 6 * @scale
@up = 5 * @scale
@mid = 3.5 * @scale
@bot = 4 * @scale
Bg: circle wide color black fill white radius 7
// spline center - should we wish to move it relative to bb center
X: dot invis at Bg.c
// spline guide points - not in final output
// X Y
A: dot at X.c + ( @outer, @mid) invis
B: dot at X.c + ( @outer, -@up) invis
C: dot at X.c + ( @outer, -@top) invis
D: dot at X.c + ( 0, -@top) invis
E: dot at X.c + (-@outer, -@top) invis
F: dot at X.c + (-@outer, - @up) invis
G: dot at X.c + (-@outer, @up) invis
H: dot at X.c + (-@outer, @top) invis
I: dot at X.c + ( 0, @top) invis
J: dot at X.c + ( @inner, @top) invis
K: dot at X.c + ( @inner, @up) invis
L: dot at X.c + ( @inner, -@mid) invis
M: dot at X.c + ( @inner, -@bot) invis
N: dot at X.c + ( 0, -@bot) invis
O: dot at X.c + (-@inner, -@bot) invis
P: dot at X.c + (-@inner, -@mid) invis
Q: dot at X.c + (-@inner, @mid) invis
spline nawi color red \
from A.c then to B.c then to C.c then to D.c \
then to E.c then to F.c then to G.c then to H.c \
then to I.c then to J.c then to K.c then to L.c \
then to M.c then to N.c then to O.c then to P.c \
then to Q.c
→ /pikchrshowtarget
leftmargin = 1
rightmargin = 1
topmargin = 1
bottommargin = 1
define wide { thick thick thick thick thick thick thick thick thick thick }
@thick = .41 // *2 = .81 matches `wide` - WIBNI to be able to spec line width directly
@radius = 6.59
Vertical: line wide color red from (0,@radius) to ( 0, -@radius)
Horizontal: line wide color red from (@radius,0) to (-@radius, 0)
CapVS: circle color red fill red radius @thick with c at Vertical.start
CapVE: circle color red fill red radius @thick with c at Vertical.end
CapHS: circle color red fill red radius @thick with c at Horizontal.start
CapHE: circle color red fill red radius @thick with c at Horizontal.end
Reticule: circle wide color black radius 6 at Vertical.c
Center: circle fill black radius 1 at Vertical.c
→ /pikchrshow