Giter Club home page Giter Club logo

twine_tweecode's Issues

PassageFrame Title field hides staring characters

The _Title_ field in _Passage Frame_ does not always show the whole value.

When viewing an existing Passage with a title that is longer than eighteen (18) characters (including white-space) in length then only the last eighteen (18) characters will be visible. The first character(s) can only be seen if you place the cursor within the field and move it to the start of the value.

eg:
a. Passage title of _abcdefghijklmnopqr_ appears in field as _abcdefghijklmnopqr_
b. Passage title of _abcdefghijklmnopqrs_ appears in field as _bcdefghijklmnopqrs, the _a is hidden.

NOTE:

  1. The actual number of characters where this effect starts occurring may vary based on OS and version of Python / wxPython , for me it was eighteen.
  2. This is a known problem

Add support for schema evolution to pickled objects stored in tws file

The loading of a tws file which was created by a different version of Twine can result in errors if any class of the objects stored within the pickle have been changed by adding or subtracting attributes.

One way to handle this problem (schema evolution) is described in Listing 18 in this http://www.ibm.com/developerworks/library/l-pypers/

Another way to handle this is: http://code.activestate.com/recipes/521901-upgradable-pickles/

Tweelexer and external passages

Story Authors use the StoryIncludes feature to get around the Twine GUI's problem of displaying TWS files containing a large number of Passages.
A side-effect of doing this is that the TweeLexer incorrectly marks any links to these external passages as broken / non-existing.

One method to fix this is to parse the TWS files referenced within StoryIncludes, storing the passage names found within and to include this list when seaching to see if a passage exists.

Fix positioning of New Passages

Currently when a new passage ("Untitled Passage X" ) is created it will appear as near to the top of the Story Panel as possible, which may be off screen if they used has paged down.

This is due to a bug introduced into the newWidget method back in 09-sep-2013.

The call to self.toLogical(pos) was changed to stored its return within the "qspos" variable, which is never used.

Ability for Header Authors to add functionality to application

Because the different Headers (Jonah, Sugarcane, SugarCube, etc) support different features/default macros, there is a need for the ability to allow the Header Author to influence/change how the Twine GUI works depending on the Header selected.
The would reduce the amount of hard-wiring required to support a feature that is not common to all Headers.

eg.

  1. The default headers (Jonah, Sugarcane and Responsive) only support end tags that start with the word 'end', whereas SugarCube also supports ones that start with a back-slash.
  2. SugarCube has a 'click' macro that has the ability to emulate a passage link, which the GUI could be enhanced to show an arrow for.

Merge Webbedspace enhancement as of 25-sep

Merge from Webbedspace's repository as of 25-sep:

o Improved performance of Tweelexer
o Minor Tweelexer bug fixes
o Selected passage colouring improvements
o Syntax highlighting for macro params
o Made the passage tooltips functional
o Fixed file format backwards-compatibility
o Added file drag and drop functionality
o Added image drag-and-drop and embedding
o Added Copy and Paste menu items to image previews
o Images are now thumbnailed in the story map

Rationalize determination of required file paths

The following are the paths that the application needs to know about while running and method used to determine the values may change based on OS being used:

icons - where icons files are found
targets - where target and header related files are found
header - where a particular header file is found, related to 'targets'
footer - where a particular footer file is found, related to 'targets'

Some of these values are re-determined as needed even though they don't change during the applications lifetime which is inefficient.

Merge UnstableEgghead enhancement as of 10-oct

Merge from UnstableEgghead's repository as of 10-oct:

o Add SugarCube specific macros handling
o Add SugarCube specific macro highlighting to tweelexer
o Add media tag with automatic base64 encoding of image (png, gif, jpg, jpeg), font (woff), and audio (ogg, mp3) files.
o Add ftp, https, and mailto to tiddlywiki external link checking.
o Add bind to the silently content highlighting.
o Add debug tag which prevents the stripping of newline characters.

NOTE: Cherry-pick commits when possible but this may not always be an option due to the divergence between the UnstableEgghead and the Tweecode repositories.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.