Montreal.rb Meetup

How I Built My Code Editor in Ruby
Andy Maleh • July 06, 2022 • Montréal, Canada

Gladiator is a code editor that was built completely in Ruby. It supports syntax highlighting for over 30 programming languages, split pane, file name lookup, a variety of keyboard shortcuts, undo/redo, find and replace, line jumping, monitoring external file system changes, ignoring uneditable files, expanding to fill the screen, running Ruby code, remembering the last open files, and multi-project support. In fact, I have been using Gladiator for all my code editing needs since May of 2020.

In this talk, I will present Gladiator's features, and then dig into the implementation of every feature in Ruby, covering things like the Model-View-Controller and Model-View-Presenter architectural patterns, how to build custom widgets, how to implement file editing commands, and how to support undo/redo.

Attendees should walk out of this talk with rudimentary knowledge of how to build a code editor in Ruby.

Related links:

Gladiator: https://github.com/AndyObtiva/glimmer-cs-gladiator
Glimmer DSL for SWT: https://github.com/AndyObtiva/glimmer-dsl-swt
Glimmer Process: https://github.com/AndyObtiva/glimmer/blob/master/PROCESS.md

Montreal.rb Meetup July 2022

Explore all talks recorded at Montreal.rb Meetup
+7