Skip to main content

A command-line tool to help mark assignments submitted to D2L.

Project description

Motivation

It’s frustrating dealing with the zip files full of assignment submissions that you get from D2L.

  • Merging all of a student’s submissions into a single folder is tedious.

  • Navigating submissions on the command line sucks, because each directory name starts with a long number.

  • Extracting all the zip files, tar archives, and 7z archives that students submit adds a needless extra step to marking.

I’ve found this tool useful for eliminating those annoyances, and I hope you will too.

How to Use

This is the most common command I use:

d2lmf extract -R "Assignment 1 Download Oct 11, 2015 803 PM.zip" A1/T01

It extracts the submissions from the zip folder into the directory A1/T01. The -R option makes it run all the recommended cleanup actions on the submissions, and is equivalent to using -x, -j, -c and -m.

The -x specifies that we want to extract any zip, rar, tar, or 7z archives that students submitted. The -j deletes ‘junk’ like .DS_Store. The -c collapses needlessly nested directories. Finally, the -m merges all submitted files into a single directory for each student.

On Windows, you may need to invoke d2lmf as a Python module, like so:

python -m d2lmf extract -R "Assignment 1 Download Oct 11, 2015 803 PM.zip" A1/T01

How to Install

Ubuntu

sudo apt-get install python-pip
sudo pip install d2lmf

OSX

curl https://bootstrap.pypa.io/get-pip.py > get-pip.py
sudo python get-pip.py
sudo pip install d2lmf

Windows

First, download and install Python from https://www.python.org/downloads/

Then, install d2lmf with the command below:

python -m pip install d2lmf

Dependencies

The extraction of rar and 7z archives depends on external tools. If you do not have a rar or 7z utility installed, those archives will be skipped.

On Windows, I suggest installing 7-Zip. On Ubuntu, p7zip is the equivalent, and it can be installed with sudo apt-get install p7zip-full. p7zip is also available for OSX, and can be installed from homebrew with brew install p7zip.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

d2lmf-1.0.0.tar.gz (19.2 kB view details)

Uploaded Source

Built Distribution

d2lmf-1.0.0-py2.py3-none-any.whl (9.1 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file d2lmf-1.0.0.tar.gz.

File metadata

  • Download URL: d2lmf-1.0.0.tar.gz
  • Upload date:
  • Size: 19.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for d2lmf-1.0.0.tar.gz
Algorithm Hash digest
SHA256 532d8bab219bbfc2f435e5734e40c03765494e95a687458d577d6c4a42830c6b
MD5 65864e510503a87cc951dd7df5d08a72
BLAKE2b-256 816903a4a71c89da89b7e9a1edbeb9533e56367e17f73b01ab15e8ca591959b2

See more details on using hashes here.

File details

Details for the file d2lmf-1.0.0-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for d2lmf-1.0.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 5e4ccf5274776f1dd916b4f31e2c1e2a7103d53bfb758d05c98c268436ca3a43
MD5 4becf0cbd021eeb0359a3530d75bf9d1
BLAKE2b-256 820a1b674c054186060071e67b3344d204111c160965bdceae81a68e91ec4f21

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page