Nova

Extensions


Readme

Ruby on Rails for Nova

Provides Ruby on Rails support for Panic's Nova text editor.

NOTICE: From v7.0 the extension has joined the Nova Ruby project (see below). That means it does not come with Solargraph and Rubocop support anymore. Check the new and improved Solargraph extension for that.

From now on various parts of this project, not directly related with Rails, will be extracted into dedicated extensions.

Features

  • erb tag switching
  • quick list and jump to migrations
  • jump to latest migration
  • migrate and rollback database
  • open alternate files
  • go to alternate files
  • preview mailers
  • search on various documentations
  • Rails task templates
  • kill puma server (useful after crash)
  • update Stimulus manifest
  • pin and unpin from importmap
  • quick jump to Rails routes and properties pages
  • sidebar with Rails notes and info
  • clips for Ruby, Rails and erb

Check out the Wiki for a complete reference and user guide.

The Nova Ruby project

The extension is part of the Nova Ruby project. A set of extensions specifically designed to work well together, with the goal of improving the Ruby experience in Nova editor.

Project extensions:

Special Thanks

Thanks to @devjah, @jonathanpike and @Wylan for their work on different extensions which have been integrated in this suite.


Changelog

Version 8.0

FEAT

  • Add Preview mailer command

IMPROVE

  • Improve related files command by looking for mailers and locales files

Version 7.0

FEAT

  • Add Show Related Files command
  • Add StimulusJS outlets Clips

IMPROVE

  • Remove Solargraph and Rubocop in favor of the new and improved Solargraph extension
  • Remove Bridgetown template task in favor of the new and improved Bridgetown extension

FIX

  • Change Ruby clip shortcut with an available one
  • Use the new hotwired.dev domain for documentation by @gobijan in #33 and #34

Version 6.2

IMPROVE

  • Update task-bridgetown icons to avoid a resizing issue

Version 6.1

FIX

  • Prevent "do" and "do (yield)" clips to popup when typing "end"
  • Update noteParts regexp to handle Notes with empty comments by @hmaddocks

Version 6.0

FEAT

  • Improved RuboCop support with autocorrect commands, fix on save and offenses list

REFACTOR

  • Update extension structure to not use npm
  • Update extension icons

Fix

  • Resolved a parsing issue of Rails Notes with "/" in it
  • Removed an error-prone option from task templates

Version 5.2

FIX

  • When rails notes/about fails to run, save the error output and return it in the Extension error logs

Version 5.1

FIX

  • Fixed an issue with Rails Notes regex pattern

Version 5.0

FEATURES

  • Replaced the automatically provided Rails server task with an optional Task template
  • Added new Rails server task template (equivalent to bin/dev)
  • Added new Bridgetown task template with Run, Build and Clean command

DOCS

  • Added a tutorial for installing and configuring Solargraph

Version 4.0

FEATURES

  • Added new Rails Notes sidebar

REFACTOR

  • Improved code quality and style

Version 3.3

FIX

  • Honor both Gemfile as well as gems.rb for Rails project detection

Version 3.2

FIX

  • Remove JS private methods in classes for compatibility reasons

Version 3.1

FIX

  • Fixed an issue with the importmaps commands and multiple packages

Version 3.0

FEATURES

  • Added new commands for pinning and unpinning packages from importmap
  • Added new Clips for ERB, Ruby and Rails based on DHH Ruby bundle for TextMate

DOCS

  • Streamlined and updated the README.

Version 2.0

FEATURES

  • Added new Clips and updated existing ones to follow Stimulus v3.0.0
  • Added new command for updating Stimulus manifest (./bin/rails stimulus:manifest:update)
  • Added new commands for opening rails/info/routes and rails/info/properties

FIX

  • Fixed an issue where isRailsProject wasn't detecting projects created with Rails 7.0

Version 1.0

FEATURES

  • Added Solargraph support with relative settings

Version 0.9

DOCS

  • Added extension icon in the README
  • Added StimulusJS as keyword
  • Exited from Alpha stage

Version 0.8 - Alpha

FEATURES

  • Added a Version Checker for notify user of background updates

Version 0.7 - Alpha

FEATURES

  • Added new Clips for Stimulus in HTML (100% coverage). Every Clip uses official naming conventions for placeholders, suggesting you the correct text format (camelCase, kebab-case, etc).

IMPROVE

  • Clean up console logs of the ERB Tag Switcher for production

Version 0.6 - Alpha

FEATURES

  • Added a command for killing Puma server processes
  • Added a command for applying the latest migration
  • Added a command for applying a rollback
  • Added a command for opening the Extension Wiki

Version 0.5 - Alpha

FEATURES

  • Added Rails project detection
  • Added Rails Server Task
  • Added Rails About sidebar
  • Added Rails Documentation search
  • Added Rails list and last migration commands
  • Added Rails alternate file command
  • Added Erb Tag Switcher
  • Added Status Notifications

License

MIT License

Copyright (c) 2021 Tommaso Negri

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.