lithl / scribe-app Goto Github PK
View Code? Open in Web Editor NEWStory-creation assistance tool web app similar to Scrivener
License: ISC License
Story-creation assistance tool web app similar to Scrivener
License: ISC License
All of these menu items should be relatively simple to implement once the text editor (#6) is going, although they may cause some corner cases for other issues.
UX for this is TBD. Fimfiction recently added footnote support, so no worries there.
This might be tricky with inline formatting. For paragraph formatting this is equivalent to Format > Paragraph... > Normal plus Format > Paragraph... > Left.
Open a new window linking to https://github.com/Lithl/scribe-app/issues
This was added to the Format > Text... menu for mirroring Fimfiction, but other export options don't really have an equivalent.
Current plan is to open a new window with a static HTML page about the app.
Simple, compared to a number of other related issues. Primary concern is behavior deleting it from editor.
This text is no longer necessary, as the scrolling behavior is long-documented.
This will need a dialog, with options for case-insensitive, regex, and what nodes will be searched.
Probably don't need anything too extensive, but more than "absolutely nothing" is preferred
Right-clicking on a paper-tree node opens a context menu with "Rename" and "Delete". Neither option does anything right now.
Currently the Open recent menu is populated by dummy menu items used to test the menus code. This needs to be populated correctly from the user's data.
When the user signs in or out of their Google account, this needs to be updated.
If the user is signed in to Google, we want to show Projects associated with both their Google account and their IP address, not just one or the other.
If the user has no saved projects, handle the special case of a single disabled menu item here.
Right-clicking on a paper-tree node opens a context menu with "Rename" and "Delete". Neither option currently does anything.
Mimic Google Docs keyboard shortcut dialog; essentially a static HTML page with headings and a TOC on the side to scroll to each heading.
Will create a dialog for picking the emoticon.
The original intent was for Fimfiction writing, so would insert the emoticon code (eg, :yay:), but may want to have more universal emoticons as well.
Now that the project sidebar is largely working, the actual text editor needs to be implemented.
Current plan is to have single text editor areas for non-Scene leaf nodes, while Scenes can be scrolled between, traversing the Manuscript. Probably want some designation of which Scene is "current" that's easy to distinguish without making it difficult to read between. Definitely want to update the selected node in the sidebar as scrolling progresses. Typing will always stay in the current Scene, but perhaps quick switch between Scenes using Tab and Shift+Tab?
Need a dialog for specifying the link and link text.
Templates are meant to increase utility of other categories, eg by having a "Character" template to use for future new Character nodes. They are currently not used.
Need a dialog to pick Manuscript(s)/full Project export
Export multiple Manuscripts as zip file?
This will require a dialog for specifying the image link. This app will not have image uploads of its own.
If a Manuscript export to Google Drive ends up being an export to Google Docs (see #8), the lack of an upload may get sticky, IIRC.
Creating the list element should be as easy as other paragraph-level formatting (#26). The tricky part here will be correctly handling new list items, and escaping out of the list into a new paragraph.
REPO:
With naive text editing, this can probably be left up to the browser. However, we probably need to create some sort of implementation to handle undo/redo of applying styles to things.
While it's worth consideration, currently undo/redo will not apply to actions in the Project that are not text editing (eg, create Character -> undo -> redo), as it'll just get confusing with shortcuts. Perhaps an alternative menu item/shortcut will be introduced later for that purpose.
Left align mean removing alignment. Center and right align should be of similar difficulty to #26.
This should be correctly handled by the browser, but there might be corner cases with styled text.
Also worth consideration is whether Select all should select only within the current Scene, or further?
renderButton
doesn't get called
Need to have some sense of what Projects have been used recently.
Depends on similar code to #10
Need a Project selection dialog
Depends on having saved data to server, so need a Project file format
Error requires investigation as to the cause. Does not appear to prevent any of the current functionality in the app, however.
The text editor should naturally have HTML paragraphs if I recall the contenteditable behavior correctly. As such, these should all be simple to implement once the text editor is running (see #6)
There are many locations where constructions like foo!.bar
is used. Reduce the number of these throughout the codebase, either by adding null-guards or making the type definitions more complicated.
This will just manually trigger the autosave
Need a dialog for selecting unicode characters
This is only really relevant for Fimfiction exporting...
Like Google Docs, comments should be inline, specifying the text they're commenting on.
Need to use Google Drive API
Need a dialog to pick Manuscript(s)/full Project export
Export Manuscript as Google Doc?
(See #7)
This requires settling on a file structure to save the Project to. May need to implement multiple other features first, or come up with something that's easily expandable.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.