Forum Archive

ShellistaExt - Plugin based Shell that includes pipista (pypi)

briarfox

ShellistaExt


Original Shellista written by pudquick@github

Pipista written by pudquick@github

I made some modifications to shellista so that it will accept dropped in plugins to make it easier to add functionality. I have also added in gzip, zip, wget, pypi/pipista and ssh. This is my first attempt at using git so please bare with me. I am still working on the tests so please let me know what bugs are found.

Single file install

GitHub

Create a Plugin

To create a plugin follow this simple example.

  • Name the plugin yourCommand_plugin.py
  • Place it into ShellistaExt/plugins/extensions

Follow this format:

sample_plugin.py

'''This is the help info for the plugin'''

#These tools were used to make it easier to import Shellistas commands.
#You can write your own or handle the input any way you like
#bash breaks up the return string into a list
#pprint is used for better printing of directories

from tools.tools import bash,pprint


#List all aliases for the plugin, if any.

alias = ['samp']


#This is the entry point into the plugin

def main(line): 
  #This breaks the input up into a list of commands
  args = bash(line)

  #main code here

Commands

  • cat
  • copy
  • get
  • gzip
  • ls
  • mv
  • pwd
  • remove
  • ssh
  • untar
  • wget
  • cd
  • cp
  • gunzip
  • help
  • mkdir
  • pipista
  • pypi
  • rm
  • ungzip
  • unzip
  • zip
briarfox

Update

  • added pipista's version functionality
  • added a simple ssh client - password auth only

I added the ssh to allow working my git workflow from inside Pythonista

todo

  • add public key auth to ssh client
  • add sftp transfer to ssh client
  • add dropbox sync plugin