2021-04-07 18:03:17 -07:00
2021-04-07 17:59:55 -07:00
2021-04-07 17:59:55 -07:00
2021-04-05 04:22:57 -07:00
2021-04-07 17:59:55 -07:00
2021-04-07 18:03:17 -07:00

SlideScript

A simple, user friendly scripting language.

Using SlideScript

  • Compile SS using the make command.
  • Install SS using make install.
  • Modify test.ss to learn the basics of SS.
  • Run ./test.ss to execute the script.

Documentation

Here is a list of functions and features that SlideScript comes with at this moment!

  • Commenting! Examples:

    • # Comment is real in this one
  • Read and writing to flat files. Examples:

    • write "file.txt" "This will be written to file.txt"
    • read "file.txt"
  • Delete example:

    • delete "file.txt"
  • Execute example:

    • exec "ls -al"
  • Print example:

    • print "Hi everyone!"
  • Sleep (Zzz) example (sleeps for 2 seconds):

    • sleep 2
  • Variable setting and passing

    • filename=file.txt -> filename
    • filedata=File '%filename%' is being moved to moo -> %filename% is populated as file.txt
    • write "%filename%" "%filedata%" -> writes filedata contents to file.txt as expected.
  • Decoding and encoding strings

    • encrypt "Regular string" -> Converts to encrypted string 'Uhjvqds#xuulqj'
    • decrypt "Uhjvqds#xuulqj" -> Converts back to 'Regular string'
  • MD5 file checking

    • md5 "file.txt" -> outputs filename and md5 hash
  • 2 Layer piping

    • md5 "file.txt" | write "file.txt.md5" "%PIPE%" -> writes output of md5 to file.txt.md5
  • Networking functions

    • netlisten "<port>" "<search>" "<respond>" -> listens on and replies on found from outside
    • nettoss "<address>" "<port>" "<data>" -> binds to outside server at : and pushes thus, disconnecting
    • nethttp "<port>" "<forkval>" -> throws up a web server on in the current working directory, forkval (0 or 1, 0 don't fork into background / 1 do).

This will change rapidly as of currently, slidescript is in beavy development!

Todo list

  • Add in-script functions
  • New static functions
  • Loops, and if statements

Done

  • Simple syntax checking and error reporting
  • 2 layer function piping
  • Support for linux system calls
  • Network listen socket, toss function
  • Builtin HTTP server for disposeable use, can be ran in the foreground or forked into the background
  • Read and write from file
  • Some simple functions
  • Shebang handling
  • Variable support

Changelog

  • V0.3.3

    • Added first networking functions: netlisten, nettoss, nethttp.
    • Embedded web server functionality
    • Cleaned up code
    • Improved syntax handling on functions
  • V0.3.0

    • Added simple 2 layer function piping for more useful tasks
    • Fixed a couple core dump bugs
    • Now reads files into memory, and then forces text files through SS, allows for in file variables
    • Added "md5" functionality
    • Multi-formal working syntax
  • V0.2.1

    • Added "decrypt" decode function
    • Added "encrypt" encode function
    • Added system "exec" function
    • Added basic syntax handling, for a more uniform language
  • V0.2.0

    • Added "delete" function
    • Added embedded variable handling to SS functions (variables can be used like everywhere!)
    • Added linux system calls via exec
    • Some cleaning up.
  • V0.1.1

    • Added variable handling with a buffer size of 2KB per variable, and cap of 2048 variables.
    • Now operates under the shebang!

Contributions

Robert (OldCoder) Kiraly -> shebang support and string manipulations

(C) Copyright 2014-2021 Chris Dorman, some rights reserved (GPLv2)

Description
No description provided
Readme 2.1 MiB
Languages
C 87.5%
HTML 11.1%
CSS 1.1%
Makefile 0.3%