Collaborative editing is now done! I also added a documents sidebar, for viewing the list of currently open documents without having to open the dialog every time. The help dialogs are also much more readable now, and there are quite a few minor improvements as well.
This is going to be the last alpha, next release will be the final one for this version. I don’t have anything huge to add, just smaller features, bugfixes, and things like that.
- Added help buttons in the “Upload to Pastebin” dialog.
- Added a documents list sidebar, as well as two config options for hiding or showing it and specifying the width.
- Fixed bug where clicking on a blank part of the line numbers would cause an error.
- Fixed bug where the selection wouldn’t get restored when switching between documents.
- Fixed bug where the exit dialog would add one to the number of documents with unsaved changes when the current document had changes.
- Added “Tools -> Encode URL”.
- Added “Tools -> Decode URL”.
- Added “encode_url” and “decode_url” macro commands.
- Added “Options -> Edit File Types…”.
- Added macro commands for items in the Options menu.
- Added macro commands for items in the Help menu.
- Changed the “F1” keybinding from About to Help.
- Added collaborative editing (“Tools -> Collaborative Editing…”).
- Added config options for specifying the default server and port for collaborative editing.
- Improved the server.
- Added documentation file “docs/collab_docs” and an option to display it in the Help dialog.
- Added “collab” macro command.
- Moved “docs” folder into “resources”.
- Improved “Statistics” dialog UI.
- Improved statistics shown about the selected text.
- Added automatic line wrapping, as well as two config options for enabling or disabling it and specifying where it should wrap.
- Improved some of the dialogs slightly (mostly adding padding).
- Fixed bug where “Code -> Run Code” and “Code -> Compile” wouldn’t work when called from a macro.
- Added a config option for specifying whether “Run Code” and “Compile” should prompt for command line arguments.
- Created a new “About” window.
- Loading a file from the command line now appends the filename to the recent open list.
- Fixed error in Help dialogs.
- Added “Ctrl+Tab” as an alternate keybinding for “Documents -> Next” and “Shift+Ctrl+Tab” for “Documents -> Previous”.
- Simplified loading of the configuration file.
- Fixed bug were “Edit -> Selection -> Select…” and related commands wouldn’t work at all.
- Fixed bug where “Edit -> Selection -> Select Before Insert” and “Edit -> Selection -> Select After Insert” wouldn’t work if there was already text selected.
- Renamed “Edit -> Selection -> Select Before Insert” to “Select All Before Insert” and “Edit -> Selection -> Select After Insert” to “Select All After Insert”.
- Added “Edit -> Selection – > Select Line Before Insert” and “Edit -> Selection -> Select Line After Insert”.
- Added macro commands “sel_line_before” and “sel_line_after”.
- Fixed bug where “Search -> Search Selected -> *” wouldn’t work correctly if there were anything other than alphanumeric characters in the search string (due to the string not being encoded).
- The “Options” dialog can no longer be sized. This caused problems with packing the widgets.
- Changed some dialog titles to be more consistant.
- “Search -> Jump to Selection Start” and “Search -> Jump to Selection End” now show errors if there is no text selected, instead of failing silently.
- “Search -> Jump to Top” and “Search -> Jump to Bottom” now de-select any currently selected text.
- Added “Search -> Jump to Line Start” and “Search -> Jump to Line End”.
- Added macro commands “jump_line_start” and “jump_line_end”.
- The “Find”, “Replace”, “Change Macro Bindings”, “Collaborative Editing”, “Upload to Pastebin”, “Send via FTP”, “Send via Email”, “Statistics”, “Insert Tag”, and “About” windows can no longer be resized.
- The help dialogs now use Arial as the font, instead of the default monospace font. (It was rather difficult to read.)
- The font style used in the line numbers is now always “normal”, no matter what it is for the main text box.
- The help dialogs now use tags to format the section titles, which makes the documentation much easier to read.
- Fixed bug where “Code -> Insert Tag…” wouldn’t insert anything if the dialog was left blank.
- Improved “Code -> Insert Code…” to set the cursor inside the comment, if it’s a two sided comment.
The main improvement here is that Unicode is now much easier to use, due to menus with a ton of encodings so you don’t have to remember the exact encoding yourself. I added more documentation as well. I didn’t do the vi-style controls though, after realizing they would be completely pointless.
Next I’ll probably work on more documentation and (finally) getting the collaboration editing done.
- Fixed bug where configs couldn’t be saved if the command bar was enabled.
- “Remember Search/Replace History” optionmenus now show the correct values.
- The full/short filename config now works.
- Added config for specifying whether the history in “Find/Replace History” should be displayed oldest first or last.
- Added “Edit -> Paste Overwrite”.
- The last encoding is now used when loading a file from the last session.
- Removed keybinding to a function that didn’t exist in the file browser.
- Fixed bug where the Save button in the “Edit Folders” window wasn’t shown.
- Improved keybinding documentation.
- Config file now uses an equal sign as a separator between the config name and value.
- Toolbar buttons now use the “ui_fg” config for setting the color of the text.
- Any keybinding that used right-clicks can now use Ctrl+left-click.
- Scroll events now work on Windows.
- Merged the help_help_*() functions into one.
- Added documentation file “docs/configuration docs” and an option to display it in the Help dialog.
- Added “underline”, “bold italic”, “underline italic”, “underline bold”, and “underline bold italic” options for the font style config.
- Added “smart” End key, as well as a config option for enabling or disabling it.
- Keybindings using Shift as a modifier now work correctly on Linux.
- Fixed bug where toolbar buttons sometimes wouldn’t work.
- Added a config option for specifying whether “Duplicate Line” should position the duplicated line above or below the current line.
- Added “File -> Open with Encoding” submenu.
- Added “File -> Save with Encoding” submenu.
- Added “File -> Reload with Encoding” submenu.
- Added “File -> Binary Mode” submenu.
- Added “File -> Binary Mode -> Open in Binary Mode…”.
- Added “File -> Binary Mode -> Reload in Binary Mode…”.
- Added “File -> Binary Mode -> Save in Binary Mode…”.
- Restoring a file will no longer use the last encoding if it was opened in binary mode.
- Added “open_binary”, “reload_binary”, and “save_binary” macro commands.
This is mostly just minor things.
The biggest change in the next alpha will probably be the simplification of working with Unicode. I’m going to add menus with lists of possible encodings, so it will no longer be necessary to remember the exact name of the encoding. Reload will also (probably) get Unicode support.
Also there will be vi-style movement controls, and other smaller improvements.
- “Tools -> Run Command…” now remembers the last used command.
- “File -> Edit Favorites…” now shows a dialog if there are no favorites.
- “Tools -> Bookmarks -> View Bookmarks…” now shows a dialog if there are no bookmarks.
- “Tools -> Bookmarks -> Open Bookmarks…” now shows a dialog if there are no bookmark files.
- Fixed bug where double-clicking on a blank part of the listbox in “Tools -> Bookmarks -> Open Bookmarks…” would result in an error.
- “Tools -> Macros -> Run Macro…” now shows a dialog if there are no macro files.
- “Tools -> Tasks…” now shows a dialog if there are no tasks.
- Added a config option for automatically inserting a string at the start of each line.
- Added a config option for automatically inserting a string at the end of each line.
- Added a config option for specifying how many lines fast scrolling should scroll by.
- Fixed bug where fast scrolling would scroll one more line than it should.
- Right-clicks on status bar labels now show help dialogs.
- Right-clicks on the line numbers now open the context menu.
- Added “Search -> Find History…”
- Added “Search -> Replace History…”
- Added a config option for specifying whether or not Find will remember the history.
- Added a config option for specifying whether or not Replace will remember the history.
- Fixed bug where the status bar would be updated when the file was locked.
- Status bar labels now update when using the mouse to select text.
- Added “Edit -> Spacing” submenu.
- Moved “Strip Trailing Space”, “Strip Leading Space”, “Replace Tabs With Spaces”, and “Replace Spaces With Tabs” into the “Edit -> Spacing” submenu.
- Status bar is now updated correctly if the file was opened in binary mode.
- Fixed bug where Find and Replace dialogs wouldn’t display when called from macros.
- Added “Edit -> Spacing -> Normalize”.
- Command bar now uses the UI configs.
- Command bar is now updated when the UI configs change.
- Fixed bug where pressing the Escape key would mark the text as having changes.
- Fixed bug where fast scrolling wouldn’t update the status bar.
- Added keybindings for PageUp and PageDown (scrolls 50 lines by default).
- Added config option for how many lines PageUp and PageDown should scroll.