Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Unlike load, allows manual control of the deserializer to be used
- Loading branch information
Showing
3 changed files
with
80 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,24 @@ | ||
title: $:/language/Help/import | ||
description: Import tiddlers from a file | ||
|
||
Import tiddlers from 2.x.x TiddlyWiki files (`.html`), `.tiddler`, `.tid`, `.json` or other files. The deserializer must be explicitly specified, unlike the load command which infers the deserializer from the file extension. | ||
|
||
``` | ||
--import <filepath> <deserializer> [<title>] [<encoding>] | ||
``` | ||
|
||
The deserializers in the core include: | ||
|
||
* application/javascript | ||
* application/json | ||
* application/x-tiddler | ||
* application/x-tiddler-html-div | ||
* application/x-tiddlers | ||
* text/html | ||
* text/plain | ||
|
||
The title of the imported tiddler defaults to the filename. | ||
|
||
The encoding defaults to "utf8", but can be "base64" for importing binary files. | ||
|
||
Note that TiddlyWiki will not import an older version of an already loaded plugin. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,48 @@ | ||
/*\ | ||
title: $:/core/modules/commands/import.js | ||
type: application/javascript | ||
module-type: command | ||
Command to import tiddlers from a file | ||
\*/ | ||
(function(){ | ||
|
||
/*jslint node: true, browser: true */ | ||
/*global $tw: false */ | ||
"use strict"; | ||
|
||
exports.info = { | ||
name: "import", | ||
synchronous: true | ||
}; | ||
|
||
var Command = function(params,commander,callback) { | ||
this.params = params; | ||
this.commander = commander; | ||
this.callback = callback; | ||
}; | ||
|
||
Command.prototype.execute = function() { | ||
var self = this, | ||
fs = require("fs"), | ||
path = require("path"); | ||
if(this.params.length < 2) { | ||
return "Missing parameters"; | ||
} | ||
var filename = self.params[0], | ||
deserializer = self.params[1], | ||
title = self.params[2] || filename, | ||
encoding = self.params[3] || "utf8", | ||
text = fs.readFileSync(filename,encoding), | ||
tiddlers = this.commander.wiki.deserializeTiddlers(null,text,{title: title},{deserializer: deserializer}); | ||
$tw.utils.each(tiddlers,function(tiddler) { | ||
self.commander.wiki.importTiddler(new $tw.Tiddler(tiddler)); | ||
}); | ||
this.commander.log(tiddlers.length + " tiddler(s) imported"); | ||
return null; | ||
}; | ||
|
||
exports.Command = Command; | ||
|
||
})(); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
created: 20170712153850528 | ||
modified: 20170712153850528 | ||
tags: Commands | ||
title: ImportCommand | ||
type: text/vnd.tiddlywiki | ||
caption: fetch | ||
|
||
{{$:/language/Help/import}} |