The images below are focused on those features you specified:
Don't miss these ...
I used to recommend Kate as the editor to use ... until it stopped working correctly in non-KDE environments (missing icons, etc)
Now I cheerfully recommend Geany - https://www.geany.org/Download/Releases
Does all you want, has a terminal option to work in as well, can actually be set up to compile/build your source, etc. More like a super light weight ...
You may try Sublime Text. It has all the features listed by you.
The UI is modern and quite fast, and supports mouse + configurable keyboard shortcuts:
As well it includes other features:
"Goto Anything," quick navigation to files, symbols, or lines
"Command palette" uses adaptive matching for quick keyboard invocation of arbitrary commands
Plugin API and ...
While the UI is pretty old school, there is a reason it is still popular a quarter century after it's creation; it's awesome. Here is an article that walks through how to install most of the features you need.
✓ Lightweight :: Very lightweight
✗ Modern GUI :: Unless late 20th Century counts as modern...
✓ Gratis :: Donations go to help children in ...
I would strongly recommend you use a voice recognition software such as Dragon NaturallySpeaking if you care about your writing speed. However, if you want to stick to the keyboard you can use Emacs + PredictiveMode:
supports Unix and Windows
provides a list of words based on few letters.
For more features: http://www.emacswiki.org/emacs/...
I started using it a few days ago -- so far, so good.
It's more focused on the front-end, but it has extensions to work with node.js in the back-end too. Some of its selling points (from its webpage):
Live HTML Development
As you code, HTML changes are instantly pushed to browser without having to save or reload the page.
JS Debugging with ...
Take a look at GitHub Atom
Free, Gratis & Open Source
Supports Syntax Highlighting most languages out of the box and can be customised for more
Hex Viewer as a plug in module
Small & Lightweight (by modern standards) >100 MB setup on my machine
Multi-tab and multipane
Can be set up as portable on some systems.
You may try Sublime Text with Dictionary Auto-Complete package. This package will provide you a list of words based on few letters.
Sublime Text also supports spell check. To enable spell check:
Go to Preferences → Settings ‐ User.
Add this line in the opened file: "spell_check": true and save that file.
There's four that I found that has awesome autocomplete:
JetBrain's WebStorm (commercial)
Adobe's Brackets (free, it uses TernJS, the most awesome autocomplete library)
Atom.io (it has ternjs plugin also)
SublimeText (it has ternjs plugin also)
BONUS NodeClipse/EnideStudio never tried it though, but from the screenshot looks awesome
all of them has syntax ...
It probably doesn't match a hipster definition of "modern", but I suggest you eventually learn to use good old VIM or Emacs.
There is a reason why they are still extremely popular. They have multiple buffers, macros, folding, syntax highlighting for the most absurd languages (syntax highlighting for mutt config files? sure!), keyboard shortcuts to increment ...
Take a look at Scite (which comes with most Linux distris' repositories):
multiple files open in tabs: Check.
syntax highlighting for most languages: Check.
toggle comment for most languages: Check.
regex find and replace: Check.
reload prompt if the file has been modified outside the program: Not out-of-the-box (unsure if it has it, couldn't find it yet). ...
Visual Studio Code
IntelliSense provides smart completions based on variable types, function definitions, and imported modules.
Debugging Launch or attach to your running apps and debug with break points, call stacks, and an interactive console.
Extensible A large variety of plugins (for syntax checking by example)
Mediawiki can do all of this with a bit of tweaking:
Uploaded images get displayed as dynamically-generated thumbnails
WYSIWYG thanks to the Visual Editor extension
The Visual Editor includes auto-completion of local wikilinks. Start start typing and possible choices appear.
It is web-based.
You can try out Notepadqq, which is an unofficial port of the original Notepad++ to Linux. Please be warned that it is incomplete, so some of the features you expect may be missing.
Based on a quick look at the version of Notepadqq I have, most of the features on your list appear to be available, except for the hex editor and autosave.
Notepad++ does what you want.
It can autocomplete previously entered natural language words (no dictionary, just what you typed before), programming language functions, or both.
Go to "Settings" → "Preferences" → "Auto-Completion".
You can choose whether to complete words, functions, or both, and after how many typed letters the auto-completion has to ...
I'm partial to NuSphere's PHPED. I was looking for an IDE with a PHP debugger and found PHPEd. In the process, I found it also supported what you're looking for. It's feature list is impressive given it's relatively low cost. I had also looked at using Eclipse with a PHP plugin, but, decided against that because the debugger was "kluggy" to use. I ...
The Syncfusion AutoComplete control can be used for displaying a list of suggestions from a database.
The whole product is available for free through the community license if you qualify.
Note: I work for Syncfusion.
It can't catch typos, but can do everything else on your required list.
support for desktop and mobile browsers: Yes
can be used with AngularJs: Yes
can cope with typos (user enters 'hose', word in list is 'house'): No
is able to find patterns inside a word ...
I use TiddlyWiki for a personal information repository (type Wiki) of notes about software development, this tool covers most items you require.
Portable. (One single file, You can stored it in dropbox for get a copy in every moment in each linked device)
It works in different plataforms (Firefox, Chrome, Internet Explorer, Safari, Android, ipad/...
SynWrite editor is little similar to N++ but has more features. It has autocomplete for:
HTML, CSS: built-in
PHP: needed plugin SynCodeIntel (install using "Plugin Manager" item in "Tools" menu)
JS: not tested, but maybe SynCodeIntel supports JS too
Python: needed plugin SynJedi (install in "Plugin Manager")
It supports theming via skins ...