extmath.js update 2

I added a lot more functions, and quite a few constants as well. In addition, I (finally) wrote up some basic documentation, so you no longer have to hunt through the code to find what something does.

Download

The JavaScript file can be downloaded here, and the documentation is available here.

New Functions

  • Math.midpoint3() – Finds the midpoint of two points in a three-dimensional space.
  • Math.distance3() – Finds the distance between two points in a three-dimensional space.
  • Math.areaSector() – Finds the area of a sector.
  • Math.areaHemi() – Finds the surface area of a hemisphere.
  • Math.volHemi() – Finds the volume of a hemisphere.
  • Math.areaPipe() – Finds the surface area of a pipe.
  • Math.volPipe() – Finds the volume of a pipe.
  • Math.areaKite() – Finds the area of a kite.
  • Math.areaKiteTrig() – Finds the area of a kite, but in a different way.
  • Math.volPyramid3() – Finds the volume of a regular triangular pyramid.
  • Math.volPyramid4()* – Finds the volume of a regular square pyramid.
  • Math.volPyramid5() – Finds the volume of a regular pentagonal pyramid.
  • Math.volPyramidAny() – Finds the volume of any pyramid.
  • Math.gcd() – Finds the greatest common divisor of two numbers.
  • Math.lcm() – Finds the least common multiple of two numbers.
  • Math.lcmArray() – Finds the least common multiple of numbers in an array.
  • Math.maxArray() – Finds the largest number in an array.
  • Math.minArray() – Finds the smallest number in an array.
  • Math.roundTo() – Rounds a number to the specified number of decimal places.
  • Math.deg2rad() – Converts radians to degrees.
  • Math.rad2deg() – Converts degrees to radians.
  • Math.imul() – Performs a C-like 32-bit integer multiplication.
  • Math.umul() – Performs a C-like 32-bit unsigned integer multiplication.
  • Math.toSource() – Returns “Math”.
  • Math.dividesEvenly() – Finds whether a number can be divided evenly by another.
  • Math.reverseFactorial() – Given a number finds what its factorial is.
  • Math.polygonAngles() – Finds the sum of the interior angles in a polygon.
  • Math.average() – This is the same as Math.mean().
  • Math.areaPyramid3() – Finds the surface area of a regular triangular pyramid.
  • Math.areaPyramid4()* – Finds the surface area of a regular square pyramid.
  • Math.areaPyramid5() – Finds the surface area of a regular pentagonal pyramid.

There are a few modifications to the existing functions as well.

* These are the same as the existing Math.volPyramid() and Math.areaPyramid() functions, respectively, but are included for completeness.

New Constants

  • Math.SQRT3 – Square root of 3.
  • Math.GOLDEN – Golden ratio.
  • Math.DELIAN – Delian constant.
  • Math.SIN45 – Sine of 45 degrees.
  • Math.COS45 – Cosine of 45 degrees.
  • Math.TAN45 – Tangent of 45 degrees.
  • Math.SIN30 – Sine of 30 degrees.
  • Math.COS30 – Cosine of 30 degrees.
  • Math.TAN30 – Tangent of 30 degrees.
  • Math.SIN60 – Sine of 60 degrees.
  • Math.COS60 – Cosine of 60 degrees.
  • Math.TAN60 – Tangent of 60 degrees.
  • Math.SIN90 – Sine of 90 degrees.
  • Math.COS90 – Cosine of 90 degrees.
  • Math.TAN90 – Tangent of 90 degrees.
  • Math.SIN180 – Sine of 180 degrees.
  • Math.COS180 – Cosine of 180 degrees.
  • Math.TAN180 – Tangent of 180 degrees.
  • Math.SIN270 – Sine of 270 degrees.
  • Math.COS270 – Sine of 270 degrees.
  • Math.TAN270 – Sine of 270 degrees.
  • Math.SIN360 – Sine of 360 degrees.
  • Math.COS360 – Cosine of 360 degrees.
  • Math.TAN360 – Tangent of 360 degrees.
Advertisements

pytextedit 0.4 is complete!

Major changes in this version include improved customizability, improved support for Unicode and other encodings, a documents sidebar, collaborative editing, improved documentation, and lots of bug fixes, UI changes, and minor features.

Download

You can download pytextedit here, if you want. It doesn’t have the Linux installer yet like previous versions did, but it’s something I’m working on.

Changelog

This is the full list of changes for this release. I left in the alpha releases that the changes were originally in, as some things won’t make sense otherwise.

Alpha 1:

  • Added error checking for saving files in file_exit(), opt_options(), and opt_edit_favorites().
  • Options dialog now has smaller tabs/buttons, to allow for more categories.
  • Added “Network” category to the Options dialog.
  • Added “Searching” category to the Options dialog.
  • Moved regex an case sensitivity options into the Searching category in the Options dialog.
  • Changed some of the labels in the Find/Replace dialogs slightly.
  • Added regex search checkboxes to the Find/Replace dialogs.
  • Added search/replace backwards checkboxes to the Find/Replace dialogs.
  • Added “keep dialog open” checkboxes to the Find/Replace dialogs.
  • Changed the text of a couple buttons in the Find/Replace dialogs.
  • Checkboxes in the Find/Replace dialogs are now aligned better.
  • Fixed bug where opening a file from the command line would allow the user to undo the insertion of the text.
  • Changed the configuration system.
  • Added a config option for where in the string the cursor will be positioned when using Find.
  • Added a config option for specifiying whether or not the Find/Replace dialogs should be kept open.
  • Status bar can now be hidden. There was an OptionMenu for it in the Options dialog, but it didn’t do anything.
  • Fixed errors caused when status bar or toolbar were disabled. There was no checking to see if they existed when binding events.
  • Entering a negative number in Goto will now go to that many lines from the end.
  • Added “Help -> Report a Problem…”.
  • Added a config option for specifiying whether or not the documents should be checked for unsaved changes on exit.
  • Improved the Statistics dialog.
  • Fixed bug in “Tools -> View Bookmarks…” where clicking on a blank part of the listbox would result in an error.
  • Added “Tools -> Tasks…”. Also added corrosponding macro command.
  • Added a config option for specifying whether or not the window geometry should be saved on exit.
  • Added file browser.
  • Moved block indenting OptionMenu into Code category.
  • Added automatic comment continuation, and corrosponding config option.
  • Fixed bug where indenting by selecting text wouldn’t work for the first line if the starting position was the first character of the line.
  • Added a config option to specify whether the toolbar buttons should use images only, text only, or both text and images.
  • Tearoff menus are now disabled by default.
  • The context menu now works on OSX.

Alpha 2:

  • Added Unicode support for Python 2.
  • Renamed Save buttons in Options dialog to OK.
  • Added Apply buttons to Options dialog.
  • Fixed bug where disabling automatic indenting would also disable code indenting and comment continuation.
  • Disabling/enabling automatic indenting no longer requires a restart to take effect.
  • Changed how Delete Nonselected works so that the cursor position is kept.
  • Removed bindings on status bar.
  • Renamed the “Edit -> Line Edit” submenu to “Edit -> Line”.
  • Fixed bug where context menu would show if the status bar or toolbar was right-clicked.
  • Removed the Options button from the toolbar.
  • Changed some dialogs to be more consistent.
  • Changed Replace Spaces with Tabs and Replace Tabs with Spaces to remember the cursor position, and to only replace if the substrings exist.
  • Fixed bug where clicking Cancel in the Run Command dialog would result in an error.
  • Improved some comments.
  • Added “Code -> Execute”. Also added corrosponding macro command.
  • Find and Replace dialogs will no longer close if there is nothing in the entries.
  • Re-arranged some menus.
  • Find, Replace, and Insert Tag dialogs now have labels that are aligned consistently.
  • Added a config option for specifying where in relation to the text the images on the toolbar buttons will be displayed.
  • Labels on the status bar are now sunken.
  • Added “Tools -> Send” submenu.
  • Added a config option for specifying the default email server.
  • Added “Tools -> Send -> Send Via Email…”.
  • Added “Code -> Find Opening Symbol”.
  • Added “Code -> Find Closing Symbol”.

Alpha 3:

  • Added “Tools -> Send -> Send Via FTP…”.
  • Added a config option for specifying the default FTP server.
  • Changed the keybinding for “Search -> Replace…” to the standard Ctrl+H.
  • Added a config option for specifying how Goto will handle negative line numbers.
  • Added a config option for speciying whether or not more advanced options will be shown in the Search menu.
  • Added a config option for specifying whether or not the menu bar should be shown.
  • Added a config option for specifying the default sender for emails.
  • Added a config option for specifying the default recipient for emails.
  • Block indenting is now off by default.
  • Added a category in the Options dialog for configs relating to the file browser.
  • Added a config option for specifying whether the file browser’s title should be “File Browser” or the current directory.
  • Added a “browse” macro command for the file browser.
  • Renamed the macro command for deleting files to “delete_file” to avoid a conflict with “delete” for deleting text in the text box.
  • Added some missing documentation to the “macro_docs” file.
  • Added a config option for specifying whether or not the file browser toolbar should be displayed.
  • Added a keybinding for “Tools -> Run Command…”. (Ctrl+R)
  • Added macro commands “send_email” and “send_ftp”.
  • Added a config option for specifying whether or not the file browser menu bar should be displayed.
  • Added a config option for specifying whether or not the file browser should sort files alphabetically.
  • Added a config option for specifying whether the folders in the file browser should be displayed above or below the files.
  • Added a config option for specifying whether toolbar buttons in the file browser should use images, text, or both.
  • Added a config option for specifying where in relation to the text images on the toolbar buttons in the file browser should be displayed.
  • Added “Tools -> Strip Leading Space” and corrosponding macro command.
  • Added “Tools -> Strip Trailing Space” and corrosponding macro command.

Alpha 4:

  • Added options category “Menus” for menu-related config options.
  • Fixed bug where the title would have extra spaces when a new file was opened.
  • Added “smart” home key and corrosponding config option.
  • Auto-replace tabs no longer requires a restart to take effect.
  • Fixed bug where disabling auto-replacing tabs would cause pressing the tab key to have no effect.
  • Fixed bug where the “tab” buttons in the Options dialog sometimes wouldn’t get the focus visual cue.
  • Moved the menu bar and tearoff config optionmenus into the Menus category.
  • Added a config option for showing or hiding the File menu.
  • Added a config option for showing or hiding the Edit menu.
  • Added a config option for showing or hiding the Documents menu.
  • Added a config option for showing or hiding the Search menu.
  • Added a config option for showing or hiding the Tools menu.
  • Added a config option for showing or hiding the Code menu.
  • Added a config option for showing or hiding the Options menu.
  • Added a config option for showing or hiding the Help menu.
  • Added a config option for showing or hiding the context menu.
  • Added a config option for specifying how much the font size should change when enlarged or shrunk.
  • Fixed bug where enlarging or shrinking the font wouldn’t update the line numbers.
  • Fixed bug where some macro commands wouldn’t update the title if the text had changed.
  • Unknown macro commands will now cause errors by default.
  • “Code -> Insert XML Prolog” now uses code_insert() instead of its own function.
  • Added a config option for specifying whether the toolbar buttons should use large or small buttons.
  • Added an auto-strip feature and corrosponding config option.
  • Context menu in the file browser now works on OSX.
  • Added a config option for showing or hiding the file browser File menu.
  • Added a config option for showing or hiding the file browser Folders menu.
  • Added a config option for showing or hiding the file browser context menu.
  • “File -> Open From URL…” now uses the urllib module under python 2.
  • Added “Tools -> Pastebin” submenu.
  • Added “Tools -> Pastebin -> Upload to Pastebin…”.
  • Added “Tools -> Pastebin -> Download from Pastebin…”.
  • Added command bar.
  • Added config option for showing or hiding command bar.
  • Fixed incorrect labels in “Code -> Insert HTML -> *” submenus.
  • Made images on submenus more consistent.
  • Added “Macros” category in the Options dialog for configs relating to macros.
  • Added a config option for specifying whether “Tools -> Run Command…” should run macro commands or Python statements.
  • Added a config option for specifying whether the command bar should run macro commands or Python statements.
  • Added a config option for specifying whether unknown macro commands will cause errors.
  • Added a config option for specifying whether macro execution should stop when an error occurs.
  • Added a config option for specifying whether Python statements are allowed in macros.
  • Added a config option for specifying whether variables are allowed in macros.
  • Added a config option for specifying the string used to start macro comments.
  • Added a config option for specifying the string used to start macro variables.
  • Added a config option for specifying the string used to start macro execution of Python statements.
  • Added “upload_pastebin” and “download_pastebin” macro commands.
  • Added overwrite mode. For some reason Tk’s Text widget doesn’t already have support for this.
  • Added a label to the status bar for indicating whether the text box was in insert or overwrite mode.
  • Fixed bug where “Search -> Jump to Top” wouldn’t work.
  • Fixed bug where “Search -> Jump to Bottom” wouldn’t work.
  • Added “Search -> Jump to Selection Start”.
  • Added “Search -> Jump to Selection End”.
  • Fixed bug where the “Jump to X” menu commands would still see() inconsistently.
  • Added “jump_select_start” and “jump_select_end” macro commands.
  • Fixed bug where clicking on entries in the Options dialog that opened another dialog would still give focus to the entry.
  • Added a config option for specifying whether menus should have icons in them.
  • Clicking on a line in the line numbers will now set the cursor position in the text box to the start of that line.
  • “Ctrl+MouseWheel” now changes the font size.
  • “Alt+MouseWheel” now scrolls by a larger amount.
  • Changed some accelerator labels in menus to be more consistent.
  • Added “docs/keybinding_docs” documentation file.
  • Added “Keybindings” option in the Help dialog.

Alpha 5:

  • Added “Ctrl+Y” as an alternate keybinding for “Edit -> Redo”.
  • “Alt+Up” and “Alt+Down” now scroll up or down by ten lines.
  • Added a config option for specifying whether cut/copy should use the current line if nothing is selected.
  • Windows: fixed bug where the file type in the Open dialog would default to Java files.
  • Windows: fixed bug where “Run Code” wouldn’t work. Also simplified command to run.
  • Windows: fixed bug where “Options” window wouldn’t get focus.
  • Windows: fixed bug where “About” window wouldn’t get focus.
  • Windows: fixed bug where “Edit Favorites” window wouldn’t get focus.
  • Windows: fixed bug where “Change Macro Bindings” window wouldn’t get focus.
  • Windows: fixed bug where “Help: Macros” window wouldn’t get focus.
  • Windows: fixed bug where “Help: Keybindings” window wouldn’t get focus.
  • Windows: fixed bug where scrolling wouldn’t work in the “Help” dialogs.
  • Changed title of window for “Tools -> Bookmarks -> Open Bookmarks…” to “Open Bookmarks”.
  • Changed appearence of buttons in “Change Macro Bindings” window. Also added Cancel button.
  • Changed how “Documents -> Open Document…” works. This fixed bugs where the text box would be cleared, or the wrong file would be closed when cancelled.
  • Added “Ctrl+L” as an alternate keybinding for “Search -> Goto…”.
  • Cursor mode can now be saved across sessions.
  • Added a config option for specifying whether or not the cursor mode should be saved.

Alpha 6:

  • “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 if the search and replace history should be shown oldest first or last. ((NEEDS TO BE IMPLEMENTED!)) (search_history_order)
  • 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.

Alpha 7:

  • 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.

Alpha 8:

  • 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.

Final:

  • Added a dialog that appears when the application is run for the first time, with some basic information.
  • Added code to check if a file exists when loading from a command line.
  • If the file edited last session no longer exists, it will no longer try to re-open the file but will instead open a new file. This caused a problem where the application wouldn’t start if the file had been deleted or moved since then.
  • Added error checking for “Tools -> Insert Color…”.
  • Added “Tools -> Insert -> More Times” submenu.
  • Added “Tools -> Insert -> More Dates” submenu.
  • Simplified edit_copy_clipboard().
  • Added help buttons to “Send via FTP” and “Send via Email”.
  • The current line now has a light background, to give an indication where the cursor is.
  • Added two config options for specifying whether the current line should be highlighted and what color should be used.
  • Renamed “Search -> Search Selected” to “Search -> Web Search”.
  • Added several items to the “Search -> Web Search” menu, as well as the corrosponding macro parameters.
  • Fixed bug where the cursor would move out of view when text inserted using a menu command was longer than the width of the text box. (This only appeared when text wrap was off.)
  • Removed a few keybindings that contradicted each other (there were two “Ctrl+H” keybindings, for example. One for “Find -> Replace…”, and one for something that wasn’t even in the menu any more).
  • Added keybindings “Shift+Ctrl+F” for “Search -> Find Selected…” and “Shift+Ctrl+H” for “Search -> Replace Selected…”.
  • Added keybindings “Ctrl+W” for “Search -> Find History…” and “Shift+Ctrl+W” for “Search -> Replace History…”.
  • Added keybindings “Ctrl+J” for “Tools -> Notes…” and “Shift+Ctrl+J” for “Tools -> Tasks…”.
  • Added keybinding “Ctrl+E” for “Tools -> Collaborative Editing…”.
  • Added keybindings “Ctrl+U” for “Tools -> Pastebin -> Upload to Pastebin…” and “Shift+Ctrl+U” for “Tools -> Pastebin -> Download from Pastebin…”.
  • Added keybinding “Ctrl+F1” for “Help -> About…”.
  • Slightly renamed a few items in the “Code” menu.
  • The file no longer has to be saved for “Code -> Execute…”.
  • “Code -> Execute…” now uses the “run_code_args” config option, for specifying whether the user will be prompted for command line arguments.
  • Improved some error messages.
  • Added a close button to the toolbar.
  • Changed the selection background to a darker color.
  • “Tools -> Pastebin -> Upload to Pastebin…” now saves the last values.
  • “Tools -> Pastebin -> Download from Pastebin…” now saves the last value.
  • Added “Tools -> PasteHTML -> Upload to PasteHTML…” and corrosponding macro command.
  • Added a images for several menu items.
  • Changed a few images in the menus.
  • “Search -> Find History…” and “Search -> Replace History…” now save across sessions.
  • Fixed bug where “Search -> Replace History…” wouldn’t work at all. (Wrong variable name, oops.)
  • Fixed bug where “Search -> Replace…” would delete the previous character or selected text if the “Ctrl+H” keybinding was used.
  • When loading the data files the try-except blocks now explicitly specify they should catch IOErrors.
  • Added “Options -> Clear Find History…” and “Options -> Clear Replace History…”.
  • Added macro commands “clear_find” and “clear_replace”.
  • Added more items to the context menu.
  • Added keybinding “Ctrl+R” for “Tools -> Macros -> Run…”. “Tools -> Run Command…” now uses “Shift+Ctrl+R”.
  • Pressing Esc in “File -> Favorites…”, “File -> Browse…”, “Documents -> View All…”, “Search -> Find History…”, “Search -> Replace History…”, “Tools -> Bookmarks -> View Bookmarks…”, “Tools -> Bookmarks -> Open Bookmarks…”, “Tools -> Macros -> Run Macro…”, “Tools -> Notes…”, “Tools -> Tasks…”, “Tools -> Statistics…”, “Options -> Options…”, “Options -> Edit Favorites…”, “Tools -> Edit File Types…”, “Help -> About…”, and the Help dialogs will now close the window.
  • Fixed typos in dialogs and documentation. Oops.
  • Added icons to the menus in the file browser.
  • Added keybindings “F4” for “File -> Browse…”, “F10” for “File -> Rename…”, and “F11” for “File -> Delete…”.
  • Improved the “Info” dialog in the file browser.
  • Added more keybindings to the file browser.
  • Improved comments.
  • Improved help dialogs in the “Options” window.
  • Added “Edit -> Paste Indent”.
  • “File -> Recently Opened -> Clear List” now clears the menu.
  • When loading a file from the command line or when restoring from the last session it now appends the full file name to the list of recently opened files.
  • Added keybinding “Alt+Ctrl+S” for “File -> Save Copy…”.
  • “Ctrl+1” through “Ctrl+0” can now be used to switch between tabs in the “Options” dialog.
  • In the “Options” dialog “Ctrl+S” can now be used to save the options and “Shift+Ctrl+S” can save the options without closing the dialog.
  • Added a section in “docs/keybinding_docs” for the “Options” dialog.
  • Added “Code -> Run Code (Other)”.
  • Added macro commands “run_other” and “paste_indent”.
  • Fixed miscellaneous bugs with the collaborative editing.
  • Fixed bug where clicking “Cancel” in “File -> Reload With Encoding -> Other…” would still continue to the “Open” function.
  • Fixed bug where pressing Insert would still do the default action.
  • Fixed bug where the status bar wouldn’t be updated when the cursor mode changed.