Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

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

Aperta
#14 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
5/5
Tempo stimato
Più di una settimana
Idoneità per principianti
25/100
Tipo di issue
Funzionalità
Chiarezza
Da chiarire
Stato di attività
Attiva
Stack tecnologico
json, markdown
Ambito
database, desktop

Direzione di ricerca

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.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

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.

Lingua principale
Nessun dato sulla lingua
Stelle
0
Fork
0
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Preparare l'ambiente

Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di scripting/helloFrontier

Tutte le issue di scripting/helloFrontier

Issue simili

Altre issue su Databases

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.