//this is javascript code that prints out knitout
// (you can also just write raw knitout into this window)
//parameters:
const Carrier = "7";
//file header:
console.log(";!knitout-2");
console.log(";;Carriers: 1 2 3 4 5 6 7 8 9 10");
//bring carrier into action using yarn inserting hook:
console.log(`inhook ${Carrier}`);
//alternating tucks cast-on:
for(let n = 3; n >= 0; n -= 2) {
console.log(`tuck - f${n} ${Carrier}`);
}
for(let n = 0; n <= 3; n += 2) {
console.log(`tuck + f${n} ${Carrier}`);
}
//row of plain knitting:
for(let n = 3; n >= 0; n -= 1) {
console.log(`knit - f${n} ${Carrier}`);
}
//send out yarn inserting hook:
console.log(`releasehook ${Carrier}`);
//do some transfers to exercise the visualizer:
//(you probably wouldn't do all these redundant moves in an actual knitting program)
console.log(`xfer f0 b0`);
console.log(`xfer f1 bs1`);
console.log(`xfer f2 b2`);
console.log(`xfer f3 bs3`);
console.log(`xfer b0 fs0`);
console.log(`xfer bs1 f1`);
console.log(`xfer b2 fs2`);
console.log(`xfer bs3 f3`);
console.log(`xfer fs0 b0`);
console.log(`xfer fs2 b2`);
//knit two rows of a tube:
for(let r = 0; r < 2; r += 1){
console.log(`knit + b0 ${Carrier}`);
console.log(`knit + b2 ${Carrier}`);
console.log(`knit - f3 ${Carrier}`);
console.log(`knit - f1 ${Carrier}`);
}
//send out yarn carrier using yarn inserting hook:
console.log(`outhook ${Carrier}`);
//drop the loops:
console.log(`drop b0`);
console.log(`drop b2`);
console.log(`drop f3`);
console.log(`drop f1`);