User Tools

Site Tools


python_getstarted

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
python_getstarted [2017/12/30 17:42] – [Getting Started] g00r00python_getstarted [2023/01/20 02:28] (current) – [Getting Started with Scripting] g00r00
Line 1: Line 1:
-===== Getting Started =====+===== Getting Started with Scripting =====
  
 //Note: This section assumes you've already performed the installation of //Note: This section assumes you've already performed the installation of
Line 10: Line 10:
 The goal of this section is not to teach you Python, but to show you The goal of this section is not to teach you Python, but to show you
 how to get started specifically with Mystic's embedded Python.  There are how to get started specifically with Mystic's embedded Python.  There are
-many Python references and tutorials all over the Internet to help develop+many Python references and tutorials all over the Internet to help develop
 the skills needed to create your Python programs.  Python is a very popular the skills needed to create your Python programs.  Python is a very popular
-scripting language used both at the hobby and professional levels and the+scripting language used both at the hobby and professional levelsand the
 resources available via Google are plentiful. resources available via Google are plentiful.
  
  
 +----
 ==== Creating a Script ==== ==== Creating a Script ====
  
Line 53: Line 53:
   writeln("This is a test!")   writeln("This is a test!")
  
-Once this line has been added to the top, then the first of the script contains+Once this line has been added to the top, then the rest of the script contains
 your Python code.  A very simple first script that simply prints "Hello World" your Python code.  A very simple first script that simply prints "Hello World"
 to the user and then shows the pause prompt would look like this: to the user and then shows the pause prompt would look like this:
Line 62: Line 62:
   writeln("|PA")   writeln("|PA")
  
 +
 +Refer to the [[python_functions|function reference]] and [[python_examples|Python examples]] section for more information on Python functions available as part of the Mystic module.  Third party Python modules can also be installed and used within your Python scripts.
 +
 +----
 ==== Executing a Python Script ==== ==== Executing a Python Script ====
  
Line 71: Line 75:
  
 Python scripts can be executed from your menus by using the "GY" menu Python scripts can be executed from your menus by using the "GY" menu
-command.  By default Mystic looks in the theme's script directory for +command for Python 2, or the "GZ" menu command for Python 3.  By default 
-.mpy files using the same logic that Mystic Programming Language uses.+Mystic looks in the theme's script directory for .mpy files using the 
 +same logic that Mystic Programming Language uses.
  
   * If you supply a file with no extension, Mystic will add .mpy to it   * If you supply a file with no extension, Mystic will add .mpy to it
Line 80: Line 85:
 For example: For example:
  
-  Menu Command: GY (Execute Python Script)+  Menu Command: GY (Execute Python Script)
           Data: testpython           Data: testpython
-          +
 The above example will execute "testpython.mpy" from the theme's script The above example will execute "testpython.mpy" from the theme's script
 directory if it exists.  If it is not found, then it will try to do the directory if it exists.  If it is not found, then it will try to do the
 same from the default script directory if "theme fallback" is enabled. same from the default script directory if "theme fallback" is enabled.
 +
 +To execute Python 3, you'd use the GZ menu command instead of GY.
  
 === By Prompt Replacement === === By Prompt Replacement ===
Line 95: Line 102:
    001 #mypython    001 #mypython
  
-The above example would execute mypython.mpy from the theme's script+The above example would execute mypython.mpy with Python 2.7 from the theme's script
 directory in place of system prompt #001. directory in place of system prompt #001.
 +
 +To execute a Python 3 script from a prompt, use the ~ character instead of #
  
 === By Command Line === === By Command Line ===
  
 Mystic Python scripts can be executed directly from the command line by Mystic Python scripts can be executed directly from the command line by
-using the -Y option, but keep in mind a username and password must be+using the -Y and -Z options, but keep in mind a username and password must be
 supplied along with it.  For example: supplied along with it.  For example:
  
   mystic -uSysop -ppassword -ytestpython   mystic -uSysop -ppassword -ytestpython
      
-The above example will execute testpython from the user's theme script+The above example will execute Python 2 script testpython from the user's theme script
 directory applying the same logic as defined above for the path/filename directory applying the same logic as defined above for the path/filename
-conversions in Mystic Python.+conversions in Mystic Python.  To execute Python 3 script from command line, use -Z 
 +instead of -Y. 
 + 
 +=== Through MPL Hooks === 
 + 
 +Mystic has hooks in various locations where functionality of Mystic can be completely replaced by MPL scripts, such as the user login and new user application processes.  It is possible to use these MPL hooks to call a Mystic Python script using the MenuCmd MPL function. 
 + 
 +This type of approach would allow the entire login and new user application process to be completely scripted in Python, for example.  Your BBS could then call another script from a start menu to completely replace the menu system.  
 + 
 +A BBS can range from a completely scripted experience, to a completely customized theme without using any scripting, or anything in between.
python_getstarted.1514677328.txt.gz · Last modified: 2017/12/30 17:42 by g00r00

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki