olivierkes / manuskript

A open-source tool for writers
http://www.theologeek.ch/manuskript
GNU General Public License v3.0
1.71k stars 226 forks source link

Feature request: create world items and characters from the references field #1172

Open mxamber opened 1 year ago

mxamber commented 1 year ago

I've been getting to know the references feature and found that when I started my current project, I neglected to create entries for a bunch of characters I introduced later on. Now every time I want to reference one, I have to go back to characters and create it. It would be lovely if using the reference syntax, I could easily create characters and items on the fly.

My idea would be that omitting the ID creates a new entry, so that typing {C:Jane Doe} and {W:Buckingham Palace} creates the character Jane Doe and the world item Buckingham Palace, with IDs filled in upon pressing enter (maybe with the usual "insert reference" popup menu showing up as a "create entry?" prompt).

I understand this is probably more work than I imagine it is, but I thought I'd put the suggestion out there. I'm afraid I don't know Python and Qt well enough to implement it myself.

TheJackiMonster commented 1 year ago

I would assume this is not as trivial to do right. Because when this would happen during typing automatically and users type any mistake, it will automatically generate characters, objects or plot points which should not exist. I think it might work when referencing not existing objects like that, Manuskript might create a virtual object without content which might not be stored but visually representing in the listing if enabled. Users could then select it at any later state and create an actual object using this name which all references automatically apply to then.

mxamber commented 1 year ago

Kind of like this?

creates the character Jane Doe and the world item Buckingham Palace [...] (maybe with the usual "insert reference" popup menu showing up as a "create entry?" prompt)

obw commented 1 year ago

I think for the usability something like:

This Method also has the opportunity, to use it, in the Text-Editor