JSON objects in the ODB, Markdown text instead of WP-Text
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Anfängerfreundlichkeit
- 25/100
Rechercherichtung
No files, tests, or entry points are named. Start by breaking the proposal into the JSON-in-ODB and Markdown-backed wp-text editor work, then identify the existing ODB, scripting-language, and wp-text implementations. Done requires an agreed scope and tests for JSON storage/navigation and editing wp-text as Markdown.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
A bit of thinking out loud. Last time I worked on Frontier, JSON didn't exist and neither did Markdown.
If we were doing it today, we would have used both formats, and integrated them into the language of Frontier, both the scripting language and the odb, we could manipulate and store them.
JSON
I never liked dealing with XML objects in Frontier. We mapped it onto the odb structure, but XML allows multiple objects to have multiple instances with the same name, where as the odb insists every name is unique. We did a hack, and got it to work, but JSON would be better.
Example of how this might work -- the reallySimple package and daveRss, the first for reading feeds, and the latter for writing them. The input and output go in and out in JSON.
JSON details
A JSON type.
JSON constants, when you assign one to a value, it's stored as a JSON type.
Navigation is done the same way JavaScript does it.
Here's an example of a constant assignment to a local.
local (historyArray = [
{
"text": "The <b>Associated</b> <i>Press</i> is adding user-generated social content into its wire services.",
"title": "",
"link": "http://www.niemanlab.org/2017/05/the-associated-press-is-adding-user-generated-social-content-verified-of-course-into-its-wire-services/?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed:+NiemanJournalismLab+(Nieman+Journalism+Lab)",
"linkShort": "http://bit.ly/2qoz8i6",
"when": "2017-05-16T16:47:07.045Z",
"guid": {
"flPermalink": true,
"value": "http://www.niemanlab.org/2017/05/the-associated-press-is-adding-user-generated-social-content-verified-of-course-into-its-wire-services/?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed:+NiemanJournalismLab+(Nieman+Journalism+Lab)"
},
"idTweet": "864522615880380419",
"twitterScreenName": "davewiner",
},
{
"text": "If Donald Trump Were a C.E.O., He'd Probably Be Fired Today.",
"title": "",
"link": "http://www.newyorker.com/news/john-cassidy/if-donald-trump-were-a-c-e-o-hed-probably-be-fired-today?mbid=rss",
"linkShort": "http://bit.ly/2qoxxce",
"when": "2017-05-16T16:44:25.731Z",
"guid": {
"flPermalink": true,
"value": "http://www.newyorker.com/news/john-cassidy/if-donald-trump-were-a-c-e-o-hed-probably-be-fired-today?mbid=rss"
},
"idTweet": "864521938814857216",
"twitterScreenName": "davewiner"
},
])
Referencing part of the JSON object.
local (guid = historyArray [ix].guid)
if (guid.flPermalink)
scratchpad.guid = guid
Markdown
This is the perennial problem for Frontier implementors, we licensed a WP engine for the original Frontier, back in the early 90s, and the product wasn't maintained, something like that -- but there were often problems in moving it forward with us. wp-text type is a pain in the ass. I left this for a to-do item until now, but I want to solve it because some of the apps legitimately use wp-text type.
What I want to do is implement it as Markdown.
So when you see a wp-text object you can open it in a window, the user can edit it, and when they save it back to the odb we store Markdown text.
I haven't thought it through any more than that, but wanted to let people know I'm going in this direction.
Haven't done anything with JSON yet.
- Vorherrschende Sprache
- Keine Sprachdaten
- Sterne
- 0
- Forks
- 0
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Entwicklungsumgebung
Dieses Projekt bietet weder Dev-Container noch Dockerfile noch Beitragsleitfaden – die Einrichtung liegt bei Ihnen. Beginnen Sie mit der README; die allgemeinen Schritte stehen in unserem Leitfaden für den ersten Beitrag.
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus scripting/helloFrontier
-
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 25/100
scripting/helloFrontier#15 · 1 Kommentar ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 35/100
scripting/helloFrontier#13 · 5 Kommentare · 1 Reaktion ·
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 35/100
scripting/helloFrontier#12 ·
-
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 10/100
scripting/helloFrontier#11 ·
-
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 25/100
scripting/helloFrontier#10 ·
Alle Issues in scripting/helloFrontier
Ähnliche Issues
-
API Bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
ProjectSidewalk/SidewalkWebpage#5556 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 88/100
Maintainer antworten meist innerhalb von 6 Tagen
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
paperclipai/paperclip#14463 ·
Maintainer antworten meist innerhalb von 1 Tag
-
triage
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 86/100
Maintainer antworten meist innerhalb von 1 Tag