Cyan is an upcoming Go IDE/Editor written in Go. Designed with a minimalist / responsive UI. It's designed not interfere with your CLI tools.
I use this daily for coding in Go while developing it along the way, so the features at the moment are what I find I most need. All the UI components are keyboard navigatable (why use a mouse?). The file navigation is inspired from IntelliJ, access to the directory where you are working, with quick navigation to other directories from the buttons on top. All the undo history is written in Go, ie. if you save edit then undo back to save point it won't ask you to save. The scrolling is done with Go callbacks to give you nice clamped at 60 fps scrolling. Dialog boxes get in the way so are not there, all messages are shown in responsive way. The design is to use Go routines to do all non-interactive tasks in the background and prioritize user input. What's shown here is just the start.
It uses JNIGI to use Java which is used for SWT UI components.
- Cross platform Linux/Windows/OSX
- Syntax highlighting using core Go parser
- Persistent saving of application state over restarts
- File browser, quick access to directories in the current file path
- Smart indentation, home
- UTF 8 support
- Improved syntax highlighting (right now it limits knowledge to current file)
- Always on Gofmt
- Auto sync of editor buffers with files on the filesystem
- Code completion
- Indicate compiler errors in editor
- Debugger with breakpoint support
- Custom code analysis / scripting
- Source code navigation / sidebar code outlines
- Multi file refactoring, renaming etc..
- Display Git revisions/branches