Gesso
Gesso … is a white paint mixture consisting of a binder mixed with chalk, gypsum, pigment, or any combination of these. It is used in artwork as a preparation for any number of substrates such as wood panels, canvas and sculpture as a base for paint and other materials that are applied over it. — Wikipedia (Emphasis added.)
Gesso is a Google Chrome extension designed to enhance the content editing experience in Canvas LMS by Instructure.
Not Ready for Prime Time
Unfortunately, Gesso has been put on hold indefinitely. Due to the way Canvas LMS implements templates, it is not possible to make a 100% reliable drop-in replacement editor. Anyone who uses this plugin (or similar) risks losing data, and that is unacceptable. Since a remedy for this issue could not be found, I have decided to discontinue all work on this project. You are free to pick it up and do what you can with it.
Installation
Gesso is a Google Page Action Extension. It can be installed like any extension in development:
- Clone or download this repo
- Open Chrome and put
chrome://extensions
into the address bar to go to the Extensions management page - Click the checkbox for "developer mode" in the upper left of the Extensions management page
- Click the button labelled "Install Unpacked Extension"
- In the file selection dialog, select the
gesso
directory (the one that containsmanifest.json
)
Once a development-mode extension is installed you may enable/disable or delete it just as you do with any other extension.
Recommended Installation
If you want to keep up with changes to the codebase (which is evolving at the moment), then I recommend cloning the repository so you can more easily pull down changes. If you have trouble cloning the repository, check out the Github desktop client for Mac and Windows. Once you install the desktop client, you can use the Clone in Desktop
button on the Gesso project page. This will automatically clone the repo into a location of your choosing on your computer.
Updates
Since this extension is in developer mode, updates are not automatic. In order to get updates, you perform the following:
- Update (or Sync) the Gesso repository
- Open Chrome and put
chrome://extensions
into the address bar to go to the Extensions management page - Under the listing for Gesso, click the "Reload" link (near the "Allow in Incognito" checkbox)
- Refresh any tabs you have open to instructure.com URLs
Usage
The extension automatically activates anytime you are at a URL matching the pattern https://*.instructure.com/*
. You will notice the red and white "G" icon showing up in the Chrome address bar to indicate the extension is working.
Gesso will replace the WYSIWYG text editor on content editing pages with a custom one. It also provides a button to "Switch Back to Default Editor." There are features of the default editor that Gesso cannot reproduce, so switching between the two is likely to be necessary in order to have a more complete editing experience.
Thanks and attributions
Gesso is based on a framework generated at Extensionizr and review of many, many open source Google Chrome extensions on Github.
Thanks to everyone testing and helping figure out what to put into the extension. Lists of names will ensue!
Licensing and Use
Gesso - A Google Chrome extension for the Canvas LMS Copyright (C) 2014 Shawn Rider
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
Gesso is in no way affiliated with Instructure. Canvas and all associated properties, trademarks and rights remain with their original owners.