Added website to sources, documentation.
This commit is contained in:
parent
42aaea6a17
commit
70b0dbf4e1
141
misc/api/basics.html
Normal file
141
misc/api/basics.html
Normal file
@ -0,0 +1,141 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en-US">
|
||||
<head>
|
||||
<title>SlideScript API: The Basics ~ The Lazy Language</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<meta name="description" content="SlideScript API and Documentation section - SlideScript is a micro stripting language with the intent to give the world an effective shell like experience with the ability to use a sloppy syntax! SlideScript can do simple every day shell tasks like manipulating and working with files, and directories, piping, variable support, and backquoting, with a bit of spice like: built-in md5, and encoder / decoder, webserver, networking functions, tar and compression functions, PLUS MORE!" />
|
||||
<link href="../style.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<table><tr><td>
|
||||
<div class="header">
|
||||
<img src="../sslogo.png" class="logoimg" title="SlideScript logo" alt="SlideScript" />
|
||||
</div>
|
||||
</td></tr><tr><td>
|
||||
<div class="menu"><!--
|
||||
--><a href="../index.html">Home</a><!--
|
||||
--><a href="index.html">Documentation</a><!--
|
||||
--><a href="https://notabug.org/Pentium44/slidescript">Git</a><!--
|
||||
--></div>
|
||||
</td></tr></table>
|
||||
|
||||
<div class="container">
|
||||
|
||||
<h2>Getting SlideScript</h2>
|
||||
<p>
|
||||
Starting off with SlideScript, you'll first need to obtain the source and build it.
|
||||
We're going to assume you're using a *nix based system today, so the easiest way to
|
||||
get the source is with a tool a developer should be familiar with: git.<br /><br />
|
||||
<b>Installing system-wide:</b>
|
||||
<pre><code>
|
||||
# git clone https://notabug.org/Pentium44/slidescript
|
||||
# cd slidescript/
|
||||
# make & make install
|
||||
# slidescript
|
||||
ss:prompt:
|
||||
</code></pre>
|
||||
<b>Running after build:</b>
|
||||
<pre><code>
|
||||
# git clone https://notabug.org/Pentium44/slidescript
|
||||
# cd slidescript/
|
||||
# make
|
||||
# ./slidescript
|
||||
ss:prompt:
|
||||
</code></pre>
|
||||
From this step, you should easily have built SlideScript, and
|
||||
would be sitting at the fancy incorporation of an interactive shell.
|
||||
Want to use it at as a script? Just make a file "script.ss", and
|
||||
add a shebang after system wide install:<br />
|
||||
<code>#!/usr/bin/slidescript</code>
|
||||
<br /> Of course, make sure your script is executable!
|
||||
</p>
|
||||
|
||||
<h2>Variables & strings</h2>
|
||||
<p>
|
||||
SlideScript will parse an equal character into a variable using the
|
||||
contents on each side of such equal character. No quotes are needed
|
||||
after an equal character and can be ended via new-line. You can print
|
||||
variables and/or strings to stdout in SlideScript using the "print" function.
|
||||
Examples (interactive and scripted):
|
||||
<pre><code>
|
||||
ss:prompt: buffer=This will be the contents of variable "buffer"
|
||||
ss: var 'buffer' -> This is the contents of variable "buffer"
|
||||
ss:prompt: print "%buffer%"
|
||||
This is the contents of variable "buffer"
|
||||
ss:prompt:
|
||||
|
||||
OR
|
||||
|
||||
#!/usr/bin/slidescript
|
||||
# This is a comment, script away
|
||||
buffer=This will be the contents of variable "buffer"
|
||||
print "%buffer%"
|
||||
# Unset function on variables similar to perl
|
||||
unset "buffer" # Dumps buffer from memory!
|
||||
|
||||
</code></pre>
|
||||
From here, we are going to be refering to all examples as scripts. Yes,
|
||||
SlideScript does have interactive mode for being a convenient all-in-one
|
||||
shell, but lets focus on the scripting side of things; shall we?
|
||||
</p>
|
||||
|
||||
<h2>Piping, math & backquoting</h2>
|
||||
<p>
|
||||
Piping is very similar to piping within a *nix shell. In SlideScript,
|
||||
the piping character remains "vertical bar" or "|". The return value
|
||||
of the function processed on the left side of the piping character will
|
||||
be pushed into a variable known as "PIPE". Hmm, wonder why? :P
|
||||
You can use piping in recursion in SlideScript. <br />
|
||||
Backquotes or "`" are used within SlideScript, mainly in variables,
|
||||
for processing functions within the language, and saving the returned value
|
||||
as a string. For example: whatsthetime=`time` would be saved as:
|
||||
ss: var 'whatsthetime' -> Wed Jun 9 17:56:23 2021<br />
|
||||
Here are some examples:
|
||||
<pre><code>
|
||||
#!/usr/bin/slidescript
|
||||
# First, lets show how a pipe works:
|
||||
print "hello" | print "%PIPE% world" # Returns: hello world
|
||||
|
||||
# Now for stacked piping, lets use a variable with the current time, and
|
||||
# Play with it!
|
||||
|
||||
whatsthetime=`time` # return: ss: var 'whatsthetime' -> Wed Jun 9 17:56:23 2021
|
||||
|
||||
calc "56.5 * 6.25" | print "Solved: %PIPE%" | print "[%whatsthetime%] %PIPE%"
|
||||
### Return value of the contraption: [Wed Jun 9 17:56:23 2021] Solved: 353.125000
|
||||
|
||||
# This is more for, how math works in SlideScript #
|
||||
# Example of using piping to do mathimatical equations with parathesis!
|
||||
calc "33.3 / 2" | calc "%PIPE% * 26" | calc "%PIPE% + 2" # Return: 434.899994
|
||||
</code></pre>
|
||||
</p>
|
||||
|
||||
<h3>IRC server</h3>
|
||||
<p>
|
||||
Still need help? Want to report a bug? Join us!<br /><br />
|
||||
IP/Port: cddo.cc/1337<br />
|
||||
Main hang channel: <b>#theroot</b><br />
|
||||
FreeBox channel: <b>#freebox</b><br />
|
||||
FreonLinux channel: <b>#freonlinux</b>
|
||||
</p>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="footer">
|
||||
© Chris Dorman, 2021 <a href="https://creativecommons.org/licenses/by-nc-sa/4.0/legalcode">CC BY-NC-SA 4.0</a> - Software GPLv2 licensed<br />
|
||||
<p>
|
||||
Powered by:<br />
|
||||
<a href="https://freedns.afraid.org/">
|
||||
<img style="width:100px;" src="https://freedns.afraid.org/images/freedns_crop.png" />
|
||||
</a>
|
||||
<a href="https://letsencrypt.org/">
|
||||
<img style="width: 100px;" src="https://letsencrypt.org/images/le-logo-wide.png" />
|
||||
</a>
|
||||
<a href="http://jigsaw.w3.org/css-validator/check/referer">
|
||||
<img style="border:0;width:80px" src="http://jigsaw.w3.org/css-validator/images/vcss-blue" alt="Valid CSS!" />
|
||||
</a>
|
||||
</p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
53
misc/api/compression-encoding.html
Normal file
53
misc/api/compression-encoding.html
Normal file
@ -0,0 +1,53 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en-US">
|
||||
<head>
|
||||
<title>SlideScript API: Compression & Encoding / Decoding ~ The Lazy Language</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<meta name="description" content="SlideScript API and Documentation section - SlideScript is a micro stripting language with the intent to give the world an effective shell like experience with the ability to use a sloppy syntax! SlideScript can do simple every day shell tasks like manipulating and working with files, and directories, piping, variable support, and backquoting, with a bit of spice like: built-in md5, and encoder / decoder, webserver, networking functions, tar and compression functions, PLUS MORE!" />
|
||||
<link href="../style.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<table><tr><td>
|
||||
<div class="header">
|
||||
<img src="../sslogo.png" class="logoimg" title="SlideScript logo" alt="SlideScript" />
|
||||
</div>
|
||||
</td></tr><tr><td>
|
||||
<div class="menu"><!--
|
||||
--><a href="../index.html">Home</a><!--
|
||||
--><a href="index.html">Documentation</a><!--
|
||||
--><a href="https://notabug.org/Pentium44/slidescript">Git</a><!--
|
||||
--></div>
|
||||
</td></tr></table>
|
||||
|
||||
<div class="container">
|
||||
<p>Under development...</p>
|
||||
|
||||
<h3>IRC server</h3>
|
||||
<p>
|
||||
Still need help? Want to report a bug? Join us!<br /><br />
|
||||
IP/Port: cddo.cc/1337<br />
|
||||
Main hang channel: <b>#theroot</b><br />
|
||||
FreeBox channel: <b>#freebox</b><br />
|
||||
FreonLinux channel: <b>#freonlinux</b>
|
||||
</p>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="footer">
|
||||
© Chris Dorman, 2021 <a href="https://creativecommons.org/licenses/by-nc-sa/4.0/legalcode">CC BY-NC-SA 4.0</a> - Software GPLv2 licensed<br />
|
||||
<p>
|
||||
Powered by:<br />
|
||||
<a href="https://freedns.afraid.org/">
|
||||
<img style="width:100px;" src="https://freedns.afraid.org/images/freedns_crop.png" />
|
||||
</a>
|
||||
<a href="https://letsencrypt.org/">
|
||||
<img style="width: 100px;" src="https://letsencrypt.org/images/le-logo-wide.png" />
|
||||
</a>
|
||||
<a href="http://jigsaw.w3.org/css-validator/check/referer">
|
||||
<img style="border:0;width:80px" src="http://jigsaw.w3.org/css-validator/images/vcss-blue" alt="Valid CSS!" />
|
||||
</a>
|
||||
</p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
126
misc/api/file-manipulation.html
Normal file
126
misc/api/file-manipulation.html
Normal file
@ -0,0 +1,126 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en-US">
|
||||
<head>
|
||||
<title>SlideScript API: File manipulation ~ The Lazy Language</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<meta name="description" content="SlideScript API and Documentation section - SlideScript is a micro stripting language with the intent to give the world an effective shell like experience with the ability to use a sloppy syntax! SlideScript can do simple every day shell tasks like manipulating and working with files, and directories, piping, variable support, and backquoting, with a bit of spice like: built-in md5, and encoder / decoder, webserver, networking functions, tar and compression functions, PLUS MORE!" />
|
||||
<link href="../style.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<table><tr><td>
|
||||
<div class="header">
|
||||
<img src="../sslogo.png" class="logoimg" title="SlideScript logo" alt="SlideScript" />
|
||||
</div>
|
||||
</td></tr><tr><td>
|
||||
<div class="menu"><!--
|
||||
--><a href="../index.html">Home</a><!--
|
||||
--><a href="index.html">Documentation</a><!--
|
||||
--><a href="https://notabug.org/Pentium44/slidescript">Git</a><!--
|
||||
--></div>
|
||||
</td></tr></table>
|
||||
|
||||
<div class="container">
|
||||
<p>If you're following through the API documentation, chapter by chapter,
|
||||
then you have a good idea of the foundation of the language in terms
|
||||
of it's structure. Now for some features of SlideScript. File manipulation
|
||||
is definitely something that can be tackled without a doubt. A selection
|
||||
of functions within SlideScript that are file related are: isfile, isdir,
|
||||
showdir (ls), showpath (pwd), move (mv), delete, chdir (cd), read, write,
|
||||
and cat.<br /><br />
|
||||
To be honest, how could SlideScript be shell like without having the
|
||||
functionality of all the system utilities. Here's the kicker, everything
|
||||
is built-in to the core of SlideScript, making it extremely versatile and
|
||||
super simple! No dependency on other software!
|
||||
<pre><code>
|
||||
#!/usr/bin/slidescript
|
||||
# File manipulation examples
|
||||
|
||||
# showdir: list directories/files in current directory.
|
||||
# argument count: 0
|
||||
# returns: file list.
|
||||
showdir
|
||||
ls # alias
|
||||
|
||||
# showpath: show current working directory location (alias pwd).
|
||||
# argument count: 0
|
||||
# returns: working directory path
|
||||
showpath
|
||||
pwd # alias
|
||||
|
||||
# chdir: Change directory
|
||||
# argument count: 1, <path> ex: docs/; /home/user
|
||||
# returns: No return
|
||||
chdir "docs/"
|
||||
showpath # Show return of change
|
||||
|
||||
# backdir: Back a directory / to parent directory (same as chdir "..")
|
||||
# argument count: 0
|
||||
# returns: No return
|
||||
backdir
|
||||
|
||||
# isdir / isfile: Return true or false (0 or 1) on file / directory find.
|
||||
# argument count: 1, <file/path> ex: "docs/README.txt"
|
||||
# returns: true / false
|
||||
isfile "docs/README.txt" # returns: true
|
||||
isdir "docs/" # returns: true
|
||||
isfile "docs/" # returns: false
|
||||
|
||||
# move: move file / rename file based on arguments.
|
||||
# argument count: 2, <original> <new file name/location>, ex: "docs/" "documents/"
|
||||
# returns: no return
|
||||
move "docs" "documents" # renamed docs -> documents
|
||||
|
||||
# delete: delete file (non-recursive)
|
||||
# argument count: 1, <filename>, ex: "docs/README.txt"
|
||||
# return: no return
|
||||
delete "docs/README.txt" # deletes README.txt inside docs/
|
||||
|
||||
# read: read contents of file given to function
|
||||
# argument count: 1, <file>, ex: "docs/README.txt"
|
||||
# return: contents of file
|
||||
read "docs/README.txt" # Returns contents of "README.txt"
|
||||
|
||||
# write: write contents to file.
|
||||
# argument count: 2, <filename> <contents>, ex: "test.txt" "Hello world!"
|
||||
# return: no return
|
||||
write "test.txt" "Hello world!"
|
||||
|
||||
# cat: catenate file with given contents
|
||||
# argument count: 2, <file> <contents>, ex: "test.txt" "I'm back!"
|
||||
# return: no return
|
||||
cat "test.txt" "I'm back!" # catenates "I'm back!" to the end of the original test.txt "Hello world!"
|
||||
# Ending file contents of "test.txt":
|
||||
# Hello world!
|
||||
# I'm back!
|
||||
</code></pre>
|
||||
</p>
|
||||
|
||||
<h3>IRC server</h3>
|
||||
<p>
|
||||
Still need help? Want to report a bug? Join us!<br /><br />
|
||||
IP/Port: cddo.cc/1337<br />
|
||||
Main hang channel: <b>#theroot</b><br />
|
||||
FreeBox channel: <b>#freebox</b><br />
|
||||
FreonLinux channel: <b>#freonlinux</b>
|
||||
</p>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="footer">
|
||||
© Chris Dorman, 2021 <a href="https://creativecommons.org/licenses/by-nc-sa/4.0/legalcode">CC BY-NC-SA 4.0</a> - Software GPLv2 licensed<br />
|
||||
<p>
|
||||
Powered by:<br />
|
||||
<a href="https://freedns.afraid.org/">
|
||||
<img style="width:100px;" src="https://freedns.afraid.org/images/freedns_crop.png" />
|
||||
</a>
|
||||
<a href="https://letsencrypt.org/">
|
||||
<img style="width: 100px;" src="https://letsencrypt.org/images/le-logo-wide.png" />
|
||||
</a>
|
||||
<a href="http://jigsaw.w3.org/css-validator/check/referer">
|
||||
<img style="border:0;width:80px" src="http://jigsaw.w3.org/css-validator/images/vcss-blue" alt="Valid CSS!" />
|
||||
</a>
|
||||
</p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
104
misc/api/functions.html
Normal file
104
misc/api/functions.html
Normal file
@ -0,0 +1,104 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en-US">
|
||||
<head>
|
||||
<title>SlideScript API: Functions & built-in's ~ The Lazy Language</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<meta name="description" content="SlideScript API and Documentation section - SlideScript is a micro stripting language with the intent to give the world an effective shell like experience with the ability to use a sloppy syntax! SlideScript can do simple every day shell tasks like manipulating and working with files, and directories, piping, variable support, and backquoting, with a bit of spice like: built-in md5, and encoder / decoder, webserver, networking functions, tar and compression functions, PLUS MORE!" />
|
||||
<link href="../style.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<table><tr><td>
|
||||
<div class="header">
|
||||
<img src="../sslogo.png" class="logoimg" title="SlideScript logo" alt="SlideScript" />
|
||||
</div>
|
||||
</td></tr><tr><td>
|
||||
<div class="menu"><!--
|
||||
--><a href="../index.html">Home</a><!--
|
||||
--><a href="index.html">Documentation</a><!--
|
||||
--><a href="https://notabug.org/Pentium44/slidescript">Git</a><!--
|
||||
--></div>
|
||||
</td></tr></table>
|
||||
|
||||
<div class="container">
|
||||
<p>Now that most of the basic built-in functions are aware, time to
|
||||
start playing with some of the more interesting parts of SlideScript.
|
||||
SlideScript does indeed seem more shell-like than anything but has its
|
||||
own unique abilities unlike other scripting languages.</p>
|
||||
|
||||
<h2>Loop, comp, and if(n) statements</h2>
|
||||
<p>
|
||||
You can indeed compare values / process based on what's found around.
|
||||
For example, file functions like isdir and isfile return a true or false
|
||||
based on what they find. These returns can be used by some of the
|
||||
statement handling built into SlideScript's lexer.<br />
|
||||
<b>if(n):</b>
|
||||
<pre><code>
|
||||
#!/usr/bin/slidescript
|
||||
# Using isfile/isdir and if/ifn for determining when something needs to be done
|
||||
doesitexist=`isfile "test.txt"` # returns 0 / false
|
||||
ifn: %doesitexist%; write "test.txt" "created..." # If false, write
|
||||
if: %doesitexist%; cat "test.txt" "adding to file..." # if true, catenate
|
||||
</code></pre>
|
||||
<b>comp(are):</b>
|
||||
<pre><code>
|
||||
#!/usr/bin/slidescript
|
||||
# Using compare and if/ifn for determining if a string is similar or different
|
||||
string1=Testing strings
|
||||
string2=String testings
|
||||
match=`comp: "%string1%" "%string2%"`
|
||||
ifn: %match%; print "Different" # If false, different
|
||||
if: %match%; print "Same" # if true, same
|
||||
</code></pre>
|
||||
<b>loop:</b>
|
||||
<pre><code>
|
||||
#!/usr/bin/slidescript
|
||||
# Using compare and if/ifn for determining when something needs to be done
|
||||
count=5
|
||||
loop: %count%; print "Printing %count% times..."
|
||||
</code></pre>
|
||||
</p>
|
||||
|
||||
<h2>Other system functions</h2>
|
||||
<p>
|
||||
SlideScript is a list of other functions that can be used at a given time
|
||||
or place: time, and sleep.
|
||||
<pre><code>
|
||||
#!/usr/bin/slidescript
|
||||
# Time example:
|
||||
time
|
||||
|
||||
# Sleep example:
|
||||
sleep "3"
|
||||
print "Will print after 3 seconds..."
|
||||
</code></pre>
|
||||
</p>
|
||||
|
||||
<h3>IRC server</h3>
|
||||
<p>
|
||||
Still need help? Want to report a bug? Join us!<br /><br />
|
||||
IP/Port: cddo.cc/1337<br />
|
||||
Main hang channel: <b>#theroot</b><br />
|
||||
FreeBox channel: <b>#freebox</b><br />
|
||||
FreonLinux channel: <b>#freonlinux</b>
|
||||
</p>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="footer">
|
||||
© Chris Dorman, 2021 <a href="https://creativecommons.org/licenses/by-nc-sa/4.0/legalcode">CC BY-NC-SA 4.0</a> - Software GPLv2 licensed<br />
|
||||
<p>
|
||||
Powered by:<br />
|
||||
<a href="https://freedns.afraid.org/">
|
||||
<img style="width:100px;" src="https://freedns.afraid.org/images/freedns_crop.png" />
|
||||
</a>
|
||||
<a href="https://letsencrypt.org/">
|
||||
<img style="width: 100px;" src="https://letsencrypt.org/images/le-logo-wide.png" />
|
||||
</a>
|
||||
<a href="http://jigsaw.w3.org/css-validator/check/referer">
|
||||
<img style="border:0;width:80px" src="http://jigsaw.w3.org/css-validator/images/vcss-blue" alt="Valid CSS!" />
|
||||
</a>
|
||||
</p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
77
misc/api/index.html
Normal file
77
misc/api/index.html
Normal file
@ -0,0 +1,77 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en-US">
|
||||
<head>
|
||||
<title>SlideScript API ~ The Lazy Language</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<meta name="description" content="SlideScript API and Documentation section - SlideScript is a micro stripting language with the intent to give the world an effective shell like experience with the ability to use a sloppy syntax! SlideScript can do simple every day shell tasks like manipulating and working with files, and directories, piping, variable support, and backquoting, with a bit of spice like: built-in md5, and encoder / decoder, webserver, networking functions, tar and compression functions, PLUS MORE!" />
|
||||
<link href="../style.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<table><tr><td>
|
||||
<div class="header">
|
||||
<img src="../sslogo.png" class="logoimg" title="SlideScript logo" alt="SlideScript" />
|
||||
</div>
|
||||
</td></tr><tr><td>
|
||||
<div class="menu"><!--
|
||||
--><a href="../index.html">Home</a><!--
|
||||
--><a href="index.html">Documentation</a><!--
|
||||
--><a href="https://notabug.org/Pentium44/slidescript">Git</a><!--
|
||||
--></div>
|
||||
</td></tr></table>
|
||||
|
||||
<div class="container">
|
||||
<p>SlideScript is pretty simple, and to be worth working with, you
|
||||
must know how to use it. I'm going to break down the basics of SlideScript
|
||||
and the functions built-in to the core of the project. This page will
|
||||
grow and adapt as the project moves onward. <b>Please note that some functions
|
||||
may slightly differ when building nightly source!</b><br /><br />
|
||||
|
||||
Documentation / API:
|
||||
<ol>
|
||||
<li><a href="basics.html">Basics: Strings, variables, pipes, and math</a></li>
|
||||
<li><a href="file-manipulation.html">File manipulation: Working with files</a></li>
|
||||
<li><a href="functions.html">Functions: compare, loop, if, and if-not</a></li>
|
||||
<li><a href="networking.html">Networking functions</a></li>
|
||||
<li><a href="compression-encoding.html">Compression & Encoding</a></li>
|
||||
</ol>
|
||||
</p>
|
||||
|
||||
<h3>Get SlideScript:</h3>
|
||||
<p>
|
||||
SlideScript is available as source on
|
||||
<a href="https://notabug.org/Pentium44/slidescript">NotABug</a>. In
|
||||
due time, I will start compiling binaries for SlideScript for a range
|
||||
of operating systems from *Nix 32/64 bit, Windows, OSX, Android (Termux),
|
||||
and more! But due to rapidly changing in features, and bugfixes, its
|
||||
just too unstable and... well... outdated after a week or two :D
|
||||
</p>
|
||||
|
||||
<h3>IRC server</h3>
|
||||
<p>
|
||||
Still need help? Want to report a bug? Join us!<br /><br />
|
||||
IP/Port: cddo.cc/1337<br />
|
||||
Main hang channel: <b>#theroot</b><br />
|
||||
FreeBox channel: <b>#freebox</b><br />
|
||||
FreonLinux channel: <b>#freonlinux</b>
|
||||
</p>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="footer">
|
||||
© Chris Dorman, 2021 <a href="https://creativecommons.org/licenses/by-nc-sa/4.0/legalcode">CC BY-NC-SA 4.0</a> - Software GPLv2 licensed<br />
|
||||
<p>
|
||||
Powered by:<br />
|
||||
<a href="https://freedns.afraid.org/">
|
||||
<img style="width:100px;" src="https://freedns.afraid.org/images/freedns_crop.png" />
|
||||
</a>
|
||||
<a href="https://letsencrypt.org/">
|
||||
<img style="width: 100px;" src="https://letsencrypt.org/images/le-logo-wide.png" />
|
||||
</a>
|
||||
<a href="http://jigsaw.w3.org/css-validator/check/referer">
|
||||
<img style="border:0;width:80px" src="http://jigsaw.w3.org/css-validator/images/vcss-blue" alt="Valid CSS!" />
|
||||
</a>
|
||||
</p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
107
misc/api/networking.html
Normal file
107
misc/api/networking.html
Normal file
@ -0,0 +1,107 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en-US">
|
||||
<head>
|
||||
<title>SlideScript API: Networking ~ The Lazy Language</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<meta name="description" content="SlideScript API and Documentation section - SlideScript is a micro stripting language with the intent to give the world an effective shell like experience with the ability to use a sloppy syntax! SlideScript can do simple every day shell tasks like manipulating and working with files, and directories, piping, variable support, and backquoting, with a bit of spice like: built-in md5, and encoder / decoder, webserver, networking functions, tar and compression functions, PLUS MORE!" />
|
||||
<link href="../style.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<table><tr><td>
|
||||
<div class="header">
|
||||
<img src="../sslogo.png" class="logoimg" title="SlideScript logo" alt="SlideScript" />
|
||||
</div>
|
||||
</td></tr><tr><td>
|
||||
<div class="menu"><!--
|
||||
--><a href="../index.html">Home</a><!--
|
||||
--><a href="index.html">Documentation</a><!--
|
||||
--><a href="https://notabug.org/Pentium44/slidescript">Git</a><!--
|
||||
--></div>
|
||||
</td></tr></table>
|
||||
|
||||
<div class="container">
|
||||
<p>There are various functions within SlideScript in terms of networking availability.
|
||||
The micro web server is stable and 100% usable, and also incorporated: netlisten and nettoss.
|
||||
</p>
|
||||
|
||||
<h2>SS:HTTP</h2>
|
||||
<p>
|
||||
SlideScript has, for convenience and ease of use at the prompt level,
|
||||
a built-in web server. The function is known as nethttp.<br />
|
||||
The function has the ability to fork into the background as an
|
||||
operational daemon until the SlideScript session is ended.
|
||||
When not forked, the web server runs in the foreground and
|
||||
will inform when a connection has been made and requests a file
|
||||
from the webserver.
|
||||
<pre><code>
|
||||
#!/bin/usr/slidescript
|
||||
# Starting the built-in web server
|
||||
# run in background!
|
||||
nethttp "8080" "1"
|
||||
|
||||
chdir "docs"
|
||||
|
||||
# run in foreground!
|
||||
nethttp "8081" "0"
|
||||
</code></pre>
|
||||
</p>
|
||||
|
||||
<h2>Flat file listening server, and file tossing.</h2>
|
||||
<p>
|
||||
Amazingly convenient feature for passing raw text from machine
|
||||
to machine, and these functions are known as: netlisten and nettoss.
|
||||
<br />
|
||||
<b>Listening server:</b>
|
||||
<pre><code>
|
||||
#!/usr/bin/slidescript
|
||||
# Start listening server on port "7000"
|
||||
netlisten "7000"
|
||||
</code></pre>
|
||||
Incoming connections send data using the nettoss function and
|
||||
data is saved into a flat file in the working directory as a
|
||||
random filename based on time, srand, and rand in C.<br />
|
||||
<b>Tossing text / files to listening server:</b>
|
||||
<pre><code>
|
||||
### Sending text / files via interactive shell ###
|
||||
|
||||
ss:prompt: nettoss "127.0.0.1" "7000" "Hello!"
|
||||
ss:client:connected to 127.0.0.1:7000
|
||||
ss:prompt:
|
||||
|
||||
### Listening socket ###
|
||||
|
||||
ss:server:listening on '7000'
|
||||
ss:server:connection from 127.0.0.1
|
||||
ss:server:client buffer saved as 'wQiHVlWxD595XZlk'
|
||||
</code></pre>
|
||||
</p>
|
||||
|
||||
<h3>IRC server</h3>
|
||||
<p>
|
||||
Still need help? Want to report a bug? Join us!<br /><br />
|
||||
IP/Port: cddo.cc/1337<br />
|
||||
Main hang channel: <b>#theroot</b><br />
|
||||
FreeBox channel: <b>#freebox</b><br />
|
||||
FreonLinux channel: <b>#freonlinux</b>
|
||||
</p>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="footer">
|
||||
© Chris Dorman, 2021 <a href="https://creativecommons.org/licenses/by-nc-sa/4.0/legalcode">CC BY-NC-SA 4.0</a> - Software GPLv2 licensed<br />
|
||||
<p>
|
||||
Powered by:<br />
|
||||
<a href="https://freedns.afraid.org/">
|
||||
<img style="width:100px;" src="https://freedns.afraid.org/images/freedns_crop.png" />
|
||||
</a>
|
||||
<a href="https://letsencrypt.org/">
|
||||
<img style="width: 100px;" src="https://letsencrypt.org/images/le-logo-wide.png" />
|
||||
</a>
|
||||
<a href="http://jigsaw.w3.org/css-validator/check/referer">
|
||||
<img style="border:0;width:80px" src="http://jigsaw.w3.org/css-validator/images/vcss-blue" alt="Valid CSS!" />
|
||||
</a>
|
||||
</p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
94
misc/index.html
Normal file
94
misc/index.html
Normal file
@ -0,0 +1,94 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en-US">
|
||||
<head>
|
||||
<title>SlideScript ~ The Lazy Language</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<meta name="description" content="SlideScript is a micro stripting language with the intent to give the world an effective shell like experience with the ability to use a sloppy syntax! SlideScript can do simple every day shell tasks like manipulating and working with files, and directories, piping, variable support, and backquoting, with a bit of spice like: built-in md5, and encoder / decoder, webserver, networking functions, tar and compression functions, PLUS MORE!" />
|
||||
<link href="style.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<table><tr><td>
|
||||
<div class="header">
|
||||
<img src="sslogo.png" class="logoimg" title="SlideScript logo" alt="SlideScript" />
|
||||
</div>
|
||||
</td></tr><tr><td>
|
||||
<div class="menu"><!--
|
||||
--><a href="index.html">Home</a><!--
|
||||
--><a href="api/">Documentation</a><!--
|
||||
--><a href="https://notabug.org/Pentium44/slidescript">Git</a><!--
|
||||
--></div>
|
||||
</td></tr></table>
|
||||
|
||||
<div class="container">
|
||||
<p>Welcome to the world of SlideScript! To make it simple, SlideScript
|
||||
is the lazy language and has a very laid-back script parser. What does
|
||||
that mean for you? Well, you can take what's comfortable with you and
|
||||
implement it into a SlideScript ready form-factor with just a bit of
|
||||
behind the scenes information on how SlideScript works!<br /><br />
|
||||
|
||||
SlideScript is early in development but supports a heap of features
|
||||
right out the gate:
|
||||
<ul>
|
||||
<li>Dynamic memory management, it's extremely lightweight</li>
|
||||
<li>Supports variables, in an adaptive way *wink*</li>
|
||||
<li>Piping support, just like your average *nix shell</li>
|
||||
<li>Supports backquoting</li>
|
||||
<li>Supports perl-like variable dumping, for reuse of same variables</li>
|
||||
<li>Supports *nix local file execution for access to personal programs</li>
|
||||
<li>Supports file read, write, catenation, and deletion</li>
|
||||
<li>Built-in lightweight grep-like support</li>
|
||||
<li>Built-in calculation functions w/ floating decimal</li>
|
||||
<li>Built-in networking functions for machine to machine file toss</li>
|
||||
<li>Built-in micro web server, because why not? :)</li>
|
||||
<li>[WIP] Built-in tar & compression algorithm based on local
|
||||
LZ77 projects (proof-of-concept)</li>
|
||||
</ul>
|
||||
<br />
|
||||
|
||||
As of being just shy of 8,000 lines of C, with this much functionality,
|
||||
my goal is to bring SlideScript up to par as a functioning language
|
||||
and Shell implementation along the way! Flexibility, power, and
|
||||
lightweight is what we strive for in the future development of
|
||||
SlideScript, yet be as independent as possible. SlideScript requires
|
||||
next to nothing in terms of dependencies, and has proven to be quite
|
||||
cross-platform compatible!
|
||||
</p>
|
||||
|
||||
<h3>Get SlideScript:</h3>
|
||||
<p>
|
||||
SlideScript is available as source on
|
||||
<a href="https://notabug.org/Pentium44/slidescript">NotABug</a>. In
|
||||
due time, I will start compiling binaries for SlideScript for a range
|
||||
of operating systems from *Nix 32/64 bit, Windows, OSX, Android (Termux),
|
||||
and more! But due to rapidly changing in features, and bugfixes, its
|
||||
just too unstable and... well... outdated after a week or two :D
|
||||
</p>
|
||||
|
||||
<h3>IRC server</h3>
|
||||
<p>
|
||||
IP/Port: cddo.cc/1337<br />
|
||||
Main hang channel: <b>#theroot</b><br />
|
||||
FreeBox channel: <b>#freebox</b><br />
|
||||
FreonLinux channel: <b>#freonlinux</b>
|
||||
</p><br />
|
||||
|
||||
</div>
|
||||
|
||||
<div class="footer">
|
||||
© Chris Dorman, 2021 <a href="https://creativecommons.org/licenses/by-nc-sa/4.0/legalcode">CC BY-NC-SA 4.0</a> - Software GPLv2 licensed<br />
|
||||
<p>
|
||||
Powered by:<br />
|
||||
<a href="https://freedns.afraid.org/">
|
||||
<img style="width:100px;" src="https://freedns.afraid.org/images/freedns_crop.png" />
|
||||
</a>
|
||||
<a href="https://letsencrypt.org/">
|
||||
<img style="width: 100px;" src="https://letsencrypt.org/images/le-logo-wide.png" />
|
||||
</a>
|
||||
<a href="http://jigsaw.w3.org/css-validator/check/referer">
|
||||
<img style="border:0;width:80px" src="http://jigsaw.w3.org/css-validator/images/vcss-blue" alt="Valid CSS!" />
|
||||
</a>
|
||||
</p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
73
misc/style.css
Normal file
73
misc/style.css
Normal file
@ -0,0 +1,73 @@
|
||||
/*
|
||||
|
||||
CC-BY-SA-NC 4.0 - Chris Dorman, 2020
|
||||
cddo.cc - Stylesheet
|
||||
|
||||
*/
|
||||
@import url('https://fonts.googleapis.com/css?family=Ubuntu+Mono&display=swap');
|
||||
@import url('https://fonts.googleapis.com/css2?family=Monoton&display=swap');
|
||||
@media only screen and (min-width: 2001px) { body { max-width: 1000px; } }
|
||||
@media only screen and (max-width: 2000px) { body { max-width: 1000px; } }
|
||||
@media only screen and (max-width: 1400px) { body { max-width: 1000px; } }
|
||||
@media only screen and (max-width: 1200px) { body { max-width: 900px; } }
|
||||
@media only screen and (max-width: 1000px) { body { max-width: 700px; } }
|
||||
@media only screen and (max-width: 800px) { body { max-width: 600px; } }
|
||||
/* @media only screen and (max-width: 700px) { body { max-width: 600px; } }
|
||||
@media only screen and (max-width: 600px) { body { max-width: 500px; } }
|
||||
@media only screen and (max-width: 500px) { body { max-width: 450px; } }
|
||||
@media only screen and (max-width: 400px) { body { max-width: 350px; } } */
|
||||
|
||||
html { font-family: "Ubuntu Mono", sans-serif; background-color: #dddddd; color: #222222; padding: 4px; margin: 0 auto; font-size: 16px; min-width: 700px;}
|
||||
body { margin: 0 auto; }
|
||||
a { color: #aa00ff; }
|
||||
a:hover { color: #bb00ff; text-decoration: none; }
|
||||
|
||||
table { width: 100%; }
|
||||
|
||||
.logoimg {
|
||||
display: block;
|
||||
margin: 0 auto;
|
||||
}
|
||||
|
||||
p { padding: 5px; }
|
||||
|
||||
.menu {
|
||||
font-size: 20px;
|
||||
background: #999999;
|
||||
padding: 3px 3px 3px 3px;
|
||||
border: solid 1px #a2a2a2;
|
||||
width: 95%;
|
||||
margin: auto;
|
||||
text-align: center;
|
||||
border-radius: 4px;
|
||||
box-shadow: 0px 0px 10px #000000;
|
||||
}
|
||||
|
||||
.menu a {
|
||||
color: #9900dd;
|
||||
text-decoration: none;
|
||||
padding: 3px 10px 3px 10px;
|
||||
/* some effects */
|
||||
transition: ease-in .4s color, ease-in .4s background-color, ease-in .4s text-shadow, ease-in .4s border-top;
|
||||
-moz-transition: ease-in .4s color, ease-in .4s background-color, ease-in .4s text-shadow, ease-in .4s border-top;
|
||||
-webkit-transition: ease-in .4s color, ease-in .4s background-color, ease-in .4s text-shadow, ease-in .4s border-top;
|
||||
-o-transition: ease-in .4s color, ease-in .4s background-color, ease-in .4s text-shadow, ease-in .4s border-top;
|
||||
}
|
||||
|
||||
.menu a:hover {
|
||||
color: #bb00ff; text-decoration: none;
|
||||
background-color: #dbdbdb; text-shadow: 0px 0px 7px silver;
|
||||
border-top: solid 1px #bb00ff;
|
||||
}
|
||||
|
||||
.header {
|
||||
font-family: "Monoton", "Ubuntu Mono", sans-serif;
|
||||
font-size: 28px;
|
||||
color: #aa00ff;
|
||||
}
|
||||
|
||||
.container { padding: 12px; }
|
||||
.footer { font-size: 16px; color: #565656; text-align: center; }
|
||||
.footer a { text-decoration: none; }
|
||||
.note { color: red; font-weight: 500; padding: 7px; }
|
||||
.rfloat { float: right; position: inline-block; }
|
Loading…
x
Reference in New Issue
Block a user