Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

JSON objects in the ODB, Markdown text instead of WP-Text

Offen
#14 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Anfängerfreundlichkeit
25/100
Issue-Typ
Feature
Klarheit
Muss geklärt werden
Aktivitätsstatus
Aktiv
Tech-Stack
json, markdown
Bereich
database, desktop

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

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus scripting/helloFrontier

Alle Issues in scripting/helloFrontier

Ähnliche Issues

Weitere Issues zu Databases

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.