Default folder is now the home directory (or similar)
WebSpree has better ~understanding~ of CSS
...
Some Bugfixes
1.2.4.1
New CSS tools
Tutorials
tk_tools and tk_widget have been merged into tk_widgets_1.py
Better Drag and Drop
element<sup> and element<sub> added (exposant et indice)
Save all is now possible with 1 command
Remix HyperLink widget
Bugfix: Ctrl+Z does nothing when a file has just been opened
normalize path with os.path.normpath()
New specs
forced unicode in python 2 with u"string" (not everywhere yet)
new nav possibilities in more help menus
open and close folder with 1 click in treeviews
New LICENSE folder. Mooved related files in it
Performance improvement
GUI easier to use
Text editor moved to the left
New files in Constantes for CSS
Better Spelling
Test file now prompts to save
GUI now does adapt to screen size (For real !)
new hyperlink to report issues directly (Feedback)
The selected element is now the same for all tabs
New validate menu
1.2.4.0
GraphicalUserInterfaceTk and WebSpree are split
UTF-8 is the default encoding to open files. Still no sniffing function
New Help layout. More help display overall without more space needed
treeview better display
Changed hotkey Ctrl+T to Ctrl+Shift+T
Added light colours
Added tabs to edit multiple html documents in a single app instance
You can close all tab at once with Quit and individually with Ctrl+w
Previous tabs are restored if possible. You don t have to re-open each file.
Right click on text now opens a paste, cut, copy context menu
Better insertion management
New tk object DragDropFeedback
New tk object MainPlusHelp
Drag and drop enabled
Drag and drop with visual feedback
Better layout for old screens (square screen)
Open file and save as begin as default location the last path used
Fixed a minor bug that occured the first time you launch the app
GraphicalUserInterfaceTk.py and HTMLWindows.py are split
from tkinter import* is no more (import tkinter as tk)
html parser
1.2.3.4
GitHub repository is live
New shortcuts to open new and to save as
Added support to explain why the user can t write content( void element, or no element selected
Reduced the font size a bit(you can still zoom)
Autoclosing is now default
Save stuff is now handled by the text object itself
Now you either save or save as ...
new function log_writer to help debugg
moved many methods where they belong to
Code isn't spaghetti now
Renamed tons of variables
Added license in Documentation
Removed a dumb javaScript
New options:(here are the default values)
"license_accepted_and_read":False,
"footer_bonus":False
"html_version":5.0
and more ...
Other minor changes
JavaScript Icon added
Deleted folder AutresMedias
UI better use of space
New Button for more help.
Voids elements are now handled the right way
Deleted some useless test files
Created new classes: Text_ and Text_HTML
Optimized intern data
New function: text_to_mathML
New files in Consatntes
html5_elements.json
html5_attributes.json
html5_general_attributes.json(this is a list, the description is in html5_attributes.json.
New folder fr
fr_html5_attributes.json
fr_html5_elements.json
1.2.3.3
New class Options. Options is a class designed to read, add and change informations in a JSON file with a dictionnary in it.
The entire object works even if the file is missing since it re-creates it.
If present it must respect the JSON format: e.g. keys must be strings and so on.
If something corrupted the file, just destroy the file or call read_file method to remake it. with ease.translate_HTML_level is the first options stored there. Now you can keep this option alive throughout you multiple sessions since it is stored and read in a file. If it s accidentally removed it will be recreated automatically with it s default values during the next call. All you have to do to use this class is:
to instantiate the class
self.py_variable=self.options_file_object.read_file("your_key") to give your variable the value from the last time or the default if it wasn t created yet.
self.options_file_object.add_option_to_file("your_key",the_new_value) to store in options.json the new value of the option each time you change it
The main reason I created this class is to add more options with just 3 lines of code in the future without
worrying if the final user is touching this file or not
New option available: Replace special characters
New option available: Indent_size 4-3 or 2 spaces
The mac X menu-bar is now as excepted
Bugs fixed
New specifications documentss. Technical and functional are split.
Fresh data injected in Constantes
Zoom in and out with control+/-/0
TABS are hotkey-binded. Try it with alt+ h/c/t
cool new stuff
1.2.3.2
New file html5_elements.txt Now the element description is sharper:
function -which function does the element belong to; use ---Function group name before the element
element -the name of the element in lowercase;
HTML version -since when it this element there ? e>2 or e>4? [++ is it deprecated ? 5>e>2 (since 2 until 5)]
void element or not void- e.g. (img,source and meta are void elements)
must attributes (e.g. src= and alt= for img element)
specific attributes and not must
standard parent
HTML and CSS tabs have now an ico
Fixed minor bugs
New folder in constantes: Fr
The languages are now independent from the rest
New function _(str) to see exactly where a language translation will be needed
the code will be categorized in a MVC way:
Core functions(Model)
GUI (e.g. tkinter) functions (The visual thing changes)(View)
GUI handlers (The user cliced or used keybord)(Controller)
Constants
GUI decorations
The GUI should be a class with methods,the methods will take the necessary arguments from the core
For each GUI a new class should be created with the exact same methods names. In future version the GUI will be chosen at the beginning e.i it will create an instance of the chosen GUI
In addition each GUI can have additional methods in it
New option file options.txt, in Cache with the GUI choice in it.It will allow to store user option from one session to another
The documentation has a new css style document.
1.2.3.1
New binary option compact or extend windows
New Tabs: HTML and CSS
Consants are and will be written in CAPS
New menu management
New file menu.py, in Vieux Fichiers with the old menu management in it
html5 custom has been split in two files: entities.py in Constantes: the exact copy of the original
and html5custom: imports the original and creates a new dicts
1.2.3.0
The code is now written in English
New global name for the application: WebSpree
New file anciensnoms in VieuxFichiers
constantes.py has been splitted in two
New file in Conventions Naming.txt
New folder: Conventions
New file tools_for_me.py
New function int tools_for_me.py: Massive renames
It is now possible to restart a new file without restarting the entire app
At start it is possible to chose the encoding
The app tries to sniff the encoding when opening a file
1.2.2.1
Files are now encoded as utf-8 file if possible
New function: For void elements like link, meta or img