Aegisub manual4/3/2023 In many situations, you will have to allocate many small temporary objects and then never use them again. Not only does it involve complex algorithms for determining WHERE to allocate the memory, but it also means that you're giving more work for the garbage collector when you're done with the object. For the rest of this post, I will write snippets in both C++ and in Java to illustrate the differences.Ĭreating objects on the heap is slow. Three, in particular, have always bothered me: stack building, operator overloading, and const-correctness. Enabling Calltips no longer has an adverse effect on performance.This is a mostly off-topic rant that is being posted because I know that a good portion of our user base is composed of programmers.Įver since I started working with Java, a few months ago, there have been many things that I have felt SHOULD be there, but aren't. Rewrite the edit box syntax highlighting and calltip code.Change the crash recovery naming scheme to be like the autosave files.Add a dialog for opening autosave and crash recovery files.Add the spellchecker language list to the edit box context menu even if the right-clicked spot wasn't on a word.Don't update the initial line state after undo.Add a button to the split editbox to remove the line text only, leaving override tags.Make the split editor readonly rather than disabled.Add padding between the split editbox buttons.Everything is now built with Visual Studio 2012.Set end times to zero when pasting plain text.Write log files incrementally so that they actually exist for crashes.Regular expressions in the search and select lines dialogs now use perl syntax. Fix case-insensitive searching for languages other than English.Only perform charset detection once when opening subtitles.Add an option to not skip blank lines when importing plain text files.Improve handling of whitespace in the fonts collector.Use boost.locale for better spellchecker word splitting.Display the full list of supported character sets if detection fails catastrophically.Don't display an error message if user cancels the charset selection dialog.Delay loading command line arguments until after Aegisub is fully initialized.Count characters rather than bytes in the character counter.Use ICU for checking if characters are whitespace.The short-term effects of this are slightly better performance and memory usage, and probably a pile of new bugs. Mostly purge wxWidgets from non-UI stuff.Add "aegisub.lfs" automation module which provides the sane subset of lfs's functionality.
0 Comments
Leave a Reply.AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |