frontend icon indicating copy to clipboard operation
frontend copied to clipboard

[Request] Settings in user profile

Open JingYenLoh opened this issue 4 years ago • 6 comments

Ace editor already supports alternative bindings such as Vim or Emacs modes. This is a request to enable choosing those bindings, so we can edit source code in our preferred way.

JingYenLoh avatar May 26 '20 21:05 JingYenLoh

I'm quite interested in this. How would we present this to the users? Quite some time ago, someone floated the idea of a "Settings" menu item, along with "Help" and "About". In those settings, we could specify editor options and runtime limits, for example.

Screenshot 2020-05-27 at 1 07 22 PM

martin-henz avatar May 27 '20 05:05 martin-henz

I envisioned a dropdown above the editor, allowing the user to select the editing mode.

image

However, I am unfamiliar with SA20/21 goals. A Settings page would make sense if cadet-frontend is intending to implement more user customizations. Additionally, keeping the option behind a Settings page would avoid confusion, as such editing modes are unrelated to the rest of the controls, which are all part of the module's learning goals.

Help and About are out of the scope of this request. I'd defer to cadet-frontend maintainers to decide those, in a separate issue.

JingYenLoh avatar May 27 '20 13:05 JingYenLoh

Thanks for the mock-up!

I think such a drop-down menu would be much too prominent. Students would typically change their Ace mode three or four times max throughout the entire semester, and the majority of students (I estimate) would not touch the Ace mode at all. That's why I thought a less prominent and more global setting would be preferrable. I think local browser storage would be fine for this. (As opposed to saving this on the server.) This way the setting would also work for casual users of the textbook.

Not sure if you understood my comment about "Help" and "About". I only wanted to suggest a place for the "Settings" option. A good place might be here:

  • Settings
  • About
  • Help in the dropdown for the button in the right upper corner.

martin-henz avatar May 28 '20 04:05 martin-henz

Regarding the goals: I'm adding "online" to the SA tagline: Immersive online experiential environment for learning programming

The editor plays a central role in this aspiration, so your comments and suggestions are very much appreciated!

martin-henz avatar May 28 '20 04:05 martin-henz

Screenshot 2020-06-13 at 4 08 33 PM

Things are moving fast. We already have a profile page!

We could have the following items as "Settings" in the profile page:

  • Ace keyboard shortcuts, with the selection "default", "emacs" and "vi" (or whatever Ace allows)
  • Execution time (limit). This would allow us to remove this item from the playground and make it neater.
Screenshot 2020-06-13 at 4 13 00 PM

martin-henz avatar Jun 13 '20 08:06 martin-henz

This could be part of the user setting: #1847

martin-henz avatar Dec 12 '21 10:12 martin-henz