facebookarchive/atom-ide-ui

Allow code format providers to return null to 'fall through'

Open

#26 opened on Sep 13, 2017

View on GitHub
 (1 comment) (0 reactions) (0 assignees)JavaScript (937 stars) (110 forks)batch import
code formatenhancementhelp wanted

Description

Code format providers are currently forced to return something: https://github.com/facebook-atom/atom-ide-ui/blob/master/modules/atom-ide-ui/pkg/atom-ide-code-format/lib/types.js

However, this makes it difficult to have multiple formatting providers for the same document, since we only use the one with the highest priority.

Instead, we should use ProviderRegistry.getAllProvidersForEditor (e.g. on https://github.com/facebook-atom/atom-ide-ui/blob/master/modules/atom-ide-ui/pkg/atom-ide-code-format/lib/CodeFormatManager.js#L257) and take the first one with a non-nullable result.

cc @damieng

Contributor guide