Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion .github/workflows/build_deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -43,13 +43,17 @@ jobs:

- name: Build with Jekyll
# Outputs to the './_site' directory by default
run: JEKYLL_LOG_LEVEL=debug bundle exec jekyll build --verbose --trace --baseurl "${{ steps.pages.outputs.base_path }}"
run: bundle exec jekyll build --verbose --trace --baseurl "${{ steps.pages.outputs.base_path }}"
working-directory: docs
env:
JEKYLL_ENV: production
JEKYLL_LOG_LEVEL: debug

- name: Upload artifact
# Automatically uploads an artifact from the './_site' directory by default
uses: actions/upload-pages-artifact@v4
with:
path: docs/_site

# Deployment job
deploy:
Expand Down
9 changes: 6 additions & 3 deletions .github/workflows/links.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ jobs:
env:
JEKYLL_ENV: production
run: bundle exec jekyll build --trace
working-directory: docs

- name: Restore lychee cache
uses: actions/cache@v4
Expand All @@ -37,6 +38,7 @@ jobs:
fi
echo "Site built successfully"
ls -la _site/
working-directory: docs

- name: Link Checker (Built Site)
uses: lycheeverse/lychee-action@v2
Expand All @@ -53,14 +55,15 @@ jobs:
fail: true
output: link-check-results.md
format: markdown
workingDirectory: docs

- name: Upload link check results
if: always()
uses: actions/upload-artifact@v4
with:
name: link-check-results
path: |
link-check-results.md
docs/link-check-results.md
retention-days: 30

- name: Comment PR with results
Expand All @@ -71,8 +74,8 @@ jobs:
const fs = require('fs');
let comment = '## 🔗 Link Check Failed\n\n';

if (fs.existsSync('link-check-results.md')) {
const results = fs.readFileSync('link-check-results.md', 'utf8');
if (fs.existsSync('docs/link-check-results.md')) {
const results = fs.readFileSync('docs/link-check-results.md', 'utf8');
comment += '### Built Site Results\n\n' + results + '\n\n';
}

Expand Down
2 changes: 1 addition & 1 deletion .lycheeignore
Original file line number Diff line number Diff line change
Expand Up @@ -57,4 +57,4 @@ https://schema.org/

# Internal files
file:///home/runner/work/postscript-guide/postscript-guide/LICENSE
file:///home/runner/work/postscript-guide/postscript-guide/docs/LINK_CHECKING.md
file:///home/runner/work/postscript-guide/postscript-guide/LINK_CHECKING.md
8 changes: 4 additions & 4 deletions _config.yml → docs/_config.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
title: "PostScript Language Guide"
title: "Claricle PostScript Language Guide"
description: "Comprehensive documentation for the PostScript programming language, covering operators, syntax, and practical usage examples"
# baseurl: "/postscript-guide"
url: "https://claricle.github.io"
Expand All @@ -11,8 +11,8 @@ theme: just-the-docs
color_scheme: light

# Logo and favicon
logo: "/docs/assets/images/logo.svg"
favicon_ico: "/docs/assets/images/favicon.ico"
logo: "/assets/images/logo.svg"
favicon_ico: "/assets/images/favicon.ico"

# AsciiDoc support
asciidoc: {}
Expand Down Expand Up @@ -120,4 +120,4 @@ exclude:
# - levels

permalink: pretty
includes_dir: 'docs'
# includes_dir: 'docs'
50 changes: 25 additions & 25 deletions docs/commands/arithmetic-math/index.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -17,54 +17,54 @@ PostScript provides a comprehensive set of arithmetic and mathematical operators

The fundamental arithmetic operations:

* link:/docs/commands/references/add/[`add`] - Add two numbers
* link:/docs/commands/references/sub/[`sub`] - Subtract two numbers
* link:/docs/commands/references/mul/[`mul`] - Multiply two numbers
* link:/docs/commands/references/div/[`div`] - Divide (real result)
* link:/docs/commands/references/idiv/[`idiv`] - Integer division
* link:/docs/commands/references/mod/[`mod`] - Modulo (remainder)
* link:/commands/references/add/[`add`] - Add two numbers
* link:/commands/references/sub/[`sub`] - Subtract two numbers
* link:/commands/references/mul/[`mul`] - Multiply two numbers
* link:/commands/references/div/[`div`] - Divide (real result)
* link:/commands/references/idiv/[`idiv`] - Integer division
* link:/commands/references/mod/[`mod`] - Modulo (remainder)

==== Unary Operations

Operations on a single number:

* link:/docs/commands/references/abs/[`abs`] - Absolute value
* link:/docs/commands/references/neg/[`neg`] - Negate
* link:/docs/commands/references/ceiling/[`ceiling`] - Round up to integer
* link:/docs/commands/references/floor/[`floor`] - Round down to integer
* link:/docs/commands/references/round/[`round`] - Round to nearest integer
* link:/docs/commands/references/truncate/[`truncate`] - Truncate to integer
* link:/commands/references/abs/[`abs`] - Absolute value
* link:/commands/references/neg/[`neg`] - Negate
* link:/commands/references/ceiling/[`ceiling`] - Round up to integer
* link:/commands/references/floor/[`floor`] - Round down to integer
* link:/commands/references/round/[`round`] - Round to nearest integer
* link:/commands/references/truncate/[`truncate`] - Truncate to integer

==== Exponential and Logarithmic

Power and logarithm functions:

* link:/docs/commands/references/sqrt/[`sqrt`] - Square root
* link:/docs/commands/references/exp/[`exp`] - Exponential (base^exponent)
* link:/docs/commands/references/ln/[`ln`] - Natural logarithm (base e)
* link:/docs/commands/references/log/[`log`] - Common logarithm (base 10)
* link:/commands/references/sqrt/[`sqrt`] - Square root
* link:/commands/references/exp/[`exp`] - Exponential (base^exponent)
* link:/commands/references/ln/[`ln`] - Natural logarithm (base e)
* link:/commands/references/log/[`log`] - Common logarithm (base 10)

==== Trigonometric

Trigonometric functions (angles in degrees):

* link:/docs/commands/references/sin/[`sin`] - Sine
* link:/docs/commands/references/cos/[`cos`] - Cosine
* link:/docs/commands/references/atan/[`atan`] - Arctangent
* link:/commands/references/sin/[`sin`] - Sine
* link:/commands/references/cos/[`cos`] - Cosine
* link:/commands/references/atan/[`atan`] - Arctangent

==== Bitwise Operations

Operations on integer bit patterns:

* link:/docs/commands/references/bitshift/[`bitshift`] - Bitwise shift left or right
* link:/commands/references/bitshift/[`bitshift`] - Bitwise shift left or right

==== Random Numbers

Pseudo-random number generation:

* link:/docs/commands/references/rand/[`rand`] - Generate random integer
* link:/docs/commands/references/srand/[`srand`] - Seed random generator
* link:/docs/commands/references/rrand/[`rrand`] - Get/set random seed
* link:/commands/references/rand/[`rand`] - Generate random integer
* link:/commands/references/srand/[`srand`] - Seed random generator
* link:/commands/references/rrand/[`rrand`] - Get/set random seed

=== Type Coercion Rules

Expand Down Expand Up @@ -186,5 +186,5 @@ Real numbers have finite precision. Avoid comparing reals for exact equality:

=== See Also

* link:/docs/levels/[PostScript Language Levels]
* link:/docs/commands/references/[Stack Manipulation]
* link:/levels/[PostScript Language Levels]
* link:/commands/references/[Stack Manipulation]
64 changes: 32 additions & 32 deletions docs/commands/array-string/index.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,10 @@ Array and string operations provide the foundation for data structure manipulati
Arrays and strings in PostScript share many operational characteristics:

* Both are indexed collections (0-based indexing)
* Both support element access via link:/docs/commands/references/get/[`get`] and link:/docs/commands/references/put/[`put`]
* Both can have subsequences extracted via link:/docs/commands/references/getinterval/[`getinterval`]
* Both can be iterated over using link:/docs/commands/references/forall/[`forall`]
* Both have a link:/docs/commands/references/length/[`length`] that can be queried
* Both support element access via link:/commands/references/get/[`get`] and link:/commands/references/put/[`put`]
* Both can have subsequences extracted via link:/commands/references/getinterval/[`getinterval`]
* Both can be iterated over using link:/commands/references/forall/[`forall`]
* Both have a link:/commands/references/length/[`length`] that can be queried

However, they differ in important ways:

Expand All @@ -33,22 +33,22 @@ However, they differ in important ways:
|===
| Command | Description

| link:/docs/commands/references/array/[`array`]
| link:/commands/references/array/[`array`]
| Create a new array of specified length

| link:/docs/commands/references/brackets/[`[`]
| link:/commands/references/brackets/[`[`]
| Begin array construction (mark)

| link:/docs/commands/references/brackets/[`]`]
| link:/commands/references/brackets/[`]`]
| End array construction

| link:/docs/commands/references/aload/[`aload`]
| link:/commands/references/aload/[`aload`]
| Load all array elements onto stack

| link:/docs/commands/references/astore/[`astore`]
| link:/commands/references/astore/[`astore`]
| Store stack elements into array

| link:/docs/commands/references/packedarray/[`packedarray`]
| link:/commands/references/packedarray/[`packedarray`]
| Create read-only packed array (Level 2)
|===

Expand All @@ -58,19 +58,19 @@ However, they differ in important ways:
|===
| Command | Description

| link:/docs/commands/references/get/[`get`]
| link:/commands/references/get/[`get`]
| Get single element from array/string

| link:/docs/commands/references/put/[`put`]
| link:/commands/references/put/[`put`]
| Put value into array/string element

| link:/docs/commands/references/getinterval/[`getinterval`]
| link:/commands/references/getinterval/[`getinterval`]
| Extract subarray or substring

| link:/docs/commands/references/putinterval/[`putinterval`]
| link:/commands/references/putinterval/[`putinterval`]
| Insert array/string into another

| link:/docs/commands/references/length/[`length`]
| link:/commands/references/length/[`length`]
| Get length of array/string
|===

Expand All @@ -80,7 +80,7 @@ However, they differ in important ways:
|===
| Command | Description

| link:/docs/commands/references/forall/[`forall`]
| link:/commands/references/forall/[`forall`]
| Execute procedure for each element
|===

Expand All @@ -92,16 +92,16 @@ However, they differ in important ways:
|===
| Command | Description

| link:/docs/commands/references/string/[`string`]
| link:/commands/references/string/[`string`]
| Create new string of specified length

| link:/docs/commands/references/anchorsearch/[`anchorsearch`]
| link:/commands/references/anchorsearch/[`anchorsearch`]
| Search for prefix in string

| link:/docs/commands/references/search/[`search`]
| link:/commands/references/search/[`search`]
| Search for substring

| link:/docs/commands/references/token/[`token`]
| link:/commands/references/token/[`token`]
| Parse next token from string/file
|===

Expand All @@ -111,25 +111,25 @@ However, they differ in important ways:
|===
| Command | Description

| link:/docs/commands/references/cvs/[`cvs`]
| link:/commands/references/cvs/[`cvs`]
| Convert any object to string representation

| link:/docs/commands/references/cvn/[`cvn`]
| link:/commands/references/cvn/[`cvn`]
| Convert string to name

| link:/docs/commands/references/cvr/[`cvr`]
| link:/commands/references/cvr/[`cvr`]
| Convert to real number

| link:/docs/commands/references/cvi/[`cvi`]
| link:/commands/references/cvi/[`cvi`]
| Convert to integer

| link:/docs/commands/references/cvlit/[`cvlit`]
| link:/commands/references/cvlit/[`cvlit`]
| Convert to literal attribute

| link:/docs/commands/references/cvx/[`cvx`]
| link:/commands/references/cvx/[`cvx`]
| Convert to executable attribute

| link:/docs/commands/references/type/[`type`]
| link:/commands/references/type/[`type`]
| Get object type as name
|===

Expand All @@ -139,13 +139,13 @@ However, they differ in important ways:
|===
| Command | Description

| link:/docs/commands/references/xcheck/[`xcheck`]
| link:/commands/references/xcheck/[`xcheck`]
| Check if object is executable

| link:/docs/commands/references/rcheck/[`rcheck`]
| link:/commands/references/rcheck/[`rcheck`]
| Check if object is readable

| link:/docs/commands/references/wcheck/[`wcheck`]
| link:/commands/references/wcheck/[`wcheck`]
| Check if object is writable
|===

Expand Down Expand Up @@ -220,6 +220,6 @@ Process all elements in a collection:

== See Also

* link:/docs/commands/references/[Stack Manipulation Commands] - For basic data movement
* link:/docs/commands/references/[Arithmetic and Math Commands] - For numeric operations
* link:/commands/references/[Stack Manipulation Commands] - For basic data movement
* link:/commands/references/[Arithmetic and Math Commands] - For numeric operations
* Control Flow Commands - For conditional and loop constructs (to be documented)
14 changes: 7 additions & 7 deletions docs/commands/by-category.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -11,28 +11,28 @@ All PostScript operators organized by functional category.

=== Stack Manipulation

link:/docs/commands/references/[View all stack commands →]
link:/commands/references/[View all stack commands →]

=== Arithmetic and Math

link:/docs/commands/references/[View all math commands →]
link:/commands/references/[View all math commands →]

=== Array and String Operations

link:/docs/commands/references/[View all array/string commands →]
link:/commands/references/[View all array/string commands →]

=== Dictionary Operations

link:/docs/commands/references/[View all dictionary commands →]
link:/commands/references/[View all dictionary commands →]

=== Control Flow

link:/docs/commands/references/[View all control flow commands →]
link:/commands/references/[View all control flow commands →]

=== Graphics State

link:/docs/commands/references/[View all graphics state commands →]
link:/commands/references/[View all graphics state commands →]

=== See Also

* link:/docs/commands/[Alphabetical Index]
* link:/commands/[Alphabetical Index]
12 changes: 6 additions & 6 deletions docs/commands/color/index.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -17,12 +17,12 @@ This category contains PostScript operators for color.
This category is ready for command documentation to be added. Commands in this category include operators from the PostScript Language Reference Manual.

See other completed categories for documentation examples:
* link:/docs/commands/references/[Path Construction]
* link:/docs/commands/references/[Painting]
* link:/docs/commands/references/[Transformations]
* link:/docs/commands/references/[Font & Text]
* link:/commands/references/[Path Construction]
* link:/commands/references/[Painting]
* link:/commands/references/[Transformations]
* link:/commands/references/[Font & Text]

== See Also

* link:/docs/commands/[Command Reference Overview]
* link:/docs/syntax/[Language Syntax]
* link:/commands/[Command Reference Overview]
* link:/syntax/[Language Syntax]
Loading
Loading