kapix / koder Goto Github PK
View Code? Open in Web Editor NEWA code editor for Haiku based on Scintilla editing component.
License: MIT License
A code editor for Haiku based on Scintilla editing component.
License: MIT License
Koder should be able to find and replace strings that span multiple lines.
For that, it would be nice to have multiline text boxes for find and replace strings, instead of the current single line text control.
Maybe some Pe code can be lifted for that.
When opening several files at once, they should cascade. Right now they are opened exactly on top of each other.
Also nice would be to automatically stack them with S&T.
Koder haven't got any icon yet. It NEEDS a nice icon.
Maybe in the "View" menu. It'll stack all open Koder windows on the current workspace. Maybe even add a tool bar icon for that?
It is really useful from my point of view.
When drag&dropping a file, it's opened twice. Doesn't happen when double-clicking a file.
Dragging a file onto the Koder window does nothing. It should try to open the dropped file.
Like in Pe in left-bottom corner. It would be great to specify the line at opening too, to let things open for example from TextSearch or grep with defined line.
Pe has this (Preferences -> Files -> Discard trailing space
), and so does Notepad++.
For example Makefile in this repository.
NerdTree does a great job for easy file navigation in a Project folder. Something like that would be nice to have.
The functionality of Pe's and StyledEdit's status bar is something I use quite often. That is, being able to navigate the filesystem to open files and folders. As it's a bit unintuitive to get to the drill-down navigation by clicking on the line number, I suggest using a symbol like http://unicode.scarfboy.com/dhkupefwz.html?s=U%2B2388 . Looks a bit like a nautical wheel...
Also, while Koder as the obvious line numbers, there's no column number for the caret. To be complete, though, I suggest "line, column" like Pe does.
There could be more info and functionality down there, like StyledEdit's indicator for read-only files, which acts as pop-up menu to "Unlock file". Not sure something similar for encoding is needed...
At resizing window the content blinking for me. The content shouldn't blink. Maybe Koder should use double buffering for drawing things.
Depending where a user drops files on a Koder window, those files could either be stacked onto the current window, or opened in separate windows (stacked or not according to the settings).
For example, files dropped onto the tool bar opens stacked to the current window, dropped anywhere else opens with a new window. As visual feedback the mouse pointer could change.
It would be great to have color schemes, like Solarized Dark, it is great for the eyes.
Pe has lpe
, which allows you to launch Pe from the command line, and will not exit until you've closed the newly-opened Pe window for that file (which means you can use it as Git editor, for instance.) Pe places this binary and only this binary in PATH; i.e. the main Pe
binary is not in PATH.
It seems that launching Koder from the command line is kind of broken anyway (i.e. if you use a relative rather than absolute path, it looks for the file starting in ~
and not pwd
.)
It seems to be stuck at some fixed length rather than dynamically changing based on the longest line (although I note Pe has the same problem...)
I couldnt find any settings for changing font face and font size.
A toolbar for easy access to some features would be great.
New, Save, Line wrap would be great to have.
It would be nice to have a status bar indicating some helpful details such as the current line/column of the caret, detected file format (or active syntax highlighter), whether the document has unsaved changes, and possibly items that might impact editing such as the state of caps lock.
I am on hrev52355, and just today took the Scintilla upgrade from 4.1.0-3 to 4.1.1-1.
Ever since then, Koder hangs rather regularly (i.e. all windows stop redrawing and CPU use goes to 100%.) Attaching the debugger shows it's somehow looping in malloc() in TLSBlock code. I tried running under MALLOC_DEBUG=g, but it immediately crashed during bitmap creation.
Koder supports some different source file type (like C, Python, etc.) but it doesn't show up in Tracker right click menu as supported editor. I suppose Koder doesn't define the supported mime-types. It should define the same like Pe does.
Thanks for making Koder! I love using it, but it would be awesome if it had JavaScript support ... not really sure what is involved in that. Can we use anything from SciTE or Textadept?
Like Pe, open the associated .h file of a .cpp file and vice-versa, if it's in the same folder.
It would be great to be able to personalize the ui elements (like the collapsable sidebar background)
Left-click anywhere in the window and move the mouse down to select text. When you reach the window border the text should scroll under the mouse cursor to keep selecting test lines.
ALT+G is normally used for "Find next". I suggest Pe's ALT+, instead and change or maybe even remove the keycombo for "Koder preferences...". Once you've configured Koder, you probably don't need them as often.
The "Go to line..." could also be available with a double-click anywhere on the line number column (and when clicking on the "line&column" in the status bar, if that is to be implemented).
Add a history of past search terms as a popup menu in the Find window.
Again, maybe some Pe code can be lifted for that.
e.g.
open somefile1:16
open somefile1:88
Now you have 2 Koder windows, one open to line 16 and one to line 88, instead of one window open to line 88.
Would it be possible to add constants and enums to keywords (with different colors than classes of course)?
It's often useful to view different sections of a file side by side.
Pe and other editor use a little splitter-widget above the vertical scrollbar for that. Pe is limiting that to one split, i.e. you can only see two locations of your file.
I wonder if it wouldn't be nicer to make some sort of clone of the entire window. People could then re-arrange any number of views on their file horizontally or vertically, and use S&T to stick stuff together.
Of course actions in one window have to effect their clones, i.e. text changes have to propagate (but without scrolling, e.g. ini case you inserted/deleted lines).
Such cloned windows should be easily recognizable. Watermark? Slight tinted background?
Pe has this (click-drag the little bar above the horizontal scrollbar).
Right click on selection deselects everything, but left click does the same. It would be better to get a right click menu with standard command shortcutts like "copy", "paste", etc...
Like Pe does, it is really helpful to know, what is a real keyword, and wich not.
This a bug report based on latest revision from github. (So its not the one in HaikuDepot).
Pe has some very handy Find shortcuts:
"Find again" - ALT+G
"Find selection" - ALT+H - (finds the currently selected string)
"Incremental search" ALT+I - (after ALT+I entering characters starts a 'live-search', i.e. jumps to the first match)
"Replace & find - ALT+T (the 'ALT+G' for replacing)
This would be nice to have. Ideally the user would be able to configure the word and the highlight color. For example, highlight rows that have "HACK" as yellow and rows that have "TODO" as red.
e.g. generate a 3000+-line diff by doing git diff HEAD~20 >out.diff
in the Haiku repo, and try to use the resulting diff in Koder. It will spike to 100% CPU quite often as you page up/down/etc. through the file. Notepad++ handles such files perfectly fine, so the issue it seems is not with Scintilla.
for the purists to be able to hide the toolbar.
It would be nice to open documents in the same window with tabbed UI.
Read-only indicator could be done as a button (similarly to navigation button), which could lock/unlock the file on click.
It would be nice to have some shortcuts for navigating to the beginning/end of a document. Pe implements these as cmd+home/end, as do various other graphical editors I use.
Like Pe's "f(x)" pop-up menu to show all the functions and pragmas in the file and jump to them when selected.
Suggestion:
Notepad++ remembers what you selected for match case / whole words / backwards / wrap around across all sessions. It would be very nice if Pe did also.
Let the user save positions in a file as bookmarks that are saved as cursor positions in attributes with the file.
Add a menu to display all bookmarked positions in a separate window to manage (=delete) and jump to them with a double-click.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.