Dave Jarvis' Repositories

git clone https://repo.autonoma.ca/repo/keenwrite.git

Reinstate extension to execute R statements

Author DaveJarvis <email>
Date 2020-12-30 12:13:25 GMT-0800
Commit c28a318179ec66c13c055279c58d437705cb59b7
Parent d83a3df
src/main/java/com/keenwrite/MainPane.java
// TODO: Create PlainTextEditor that's returned by default.
return switch( MediaType.valueFrom( file ) ) {
- case TEXT_MARKDOWN -> createMarkdownEditor( file );
+ case TEXT_MARKDOWN, TEXT_R_MARKDOWN -> createMarkdownEditor( file );
case TEXT_YAML -> createDefinitionEditor( file );
default -> createMarkdownEditor( file );
src/main/java/com/keenwrite/processors/markdown/MarkdownProcessor.java
public static MarkdownProcessor create( final Workspace workspace ) {
- return create( IdentityProcessor.INSTANCE, DEFAULT_DIRECTORY, workspace );
+ return create( IdentityProcessor.INSTANCE, workspace, DEFAULT_DIRECTORY );
}
public static MarkdownProcessor create( final ProcessorContext context ) {
return create( IdentityProcessor.INSTANCE, context );
}
public static MarkdownProcessor create(
final Processor<String> successor,
- final Path path,
- final Workspace workspace ) {
- final var extensions = createExtensions( path, NONE, workspace );
+ final Workspace workspace,
+ final Path dir ) {
+ final var extensions = createExtensions( NONE, workspace, dir );
return new MarkdownProcessor( successor, extensions );
}
private static Collection<Extension> createExtensions(
final ProcessorContext context ) {
- final var path = context.getBasePath();
+ final var path = context.getPath();
+ final var dir = context.getBasePath();
final var format = context.getExportFormat();
final var workspace = context.getWorkspace();
- final var extensions = createExtensions( path, format, workspace );
+ final var extensions = createExtensions( format, workspace, dir );
+
+ final var mediaType = MediaType.valueFrom( path );
+ if( mediaType == TEXT_R_MARKDOWN || mediaType == TEXT_R_XML ) {
+ extensions.add( RExtension.create() );
+ }
extensions.add( FencedBlockExtension.create( context ) );
* R statements.
*
- * @param path Path name for referencing image files via relative paths
+ * @param dir Directory for referencing image files via relative paths
* and dynamic file types.
* @param format TeX export format to use when generating HTMl documents.
* @return {@link Collection} of extensions invoked when parsing Markdown.
*/
private static Collection<Extension> createExtensions(
- final Path path, final ExportFormat format, final Workspace workspace ) {
+ final ExportFormat format, final Workspace workspace, final Path dir ) {
final var extensions = createDefaultExtensions();
- extensions.add( ImageLinkExtension.create( path, workspace ) );
+ extensions.add( ImageLinkExtension.create( dir, workspace ) );
extensions.add( TeXExtension.create( format ) );
-
- final var mediaType = MediaType.valueFrom( path );
- if( mediaType == TEXT_R_MARKDOWN || mediaType == TEXT_R_XML ) {
- extensions.add( RExtension.create() );
- }
return extensions;
Delta 16 lines added, 15 lines removed, 1-line increase