finos / kdb-studio Goto Github PK
View Code? Open in Web Editor NEWThis project forked from charlesskelton/studio
Studio for kdb+ / Rapid execution environment for q
License: Apache License 2.0
This project forked from charlesskelton/studio
Studio for kdb+ / Rapid execution environment for q
License: Apache License 2.0
In a dialog with no text boxes (e.g. Confirm Save), just pressing Y/N should activate the Yes/No button, instead of Alt+Y/Alt+N.
the remote end throwing 'limit
results in the following being printed:
An error occurred during execution of the query.
The server sent the response:
limit
Studio Hint: Possibly this error refers to tried to generate a list longer than 2,000,000,000
this is out of date for modern q; for current meanings, see https://code.kx.com/q/basics/errors/#runtime-errors
User would like to configure colors as per Notepad++ "Nord" theme:
Looking for a way to set the colors for the current line and selected text to match the theme.
Currently, the default yellow for current line and light purple for selected text do not fit the theme.
Related is that light blue text is hard to read against the white background of Console View.
Would be nice if options could be added to Theme dialog:
token.CURRENT_LINE
token.SELECTED_TEXT
And update Theme-related code to act accordingly.
As for the Console View background, it might make sense for it to inherit the color from token.BACKGROUND
.
Otherwise, add an option to the Theme dialog.
Thanks!
Although it should not be on by default as some users might prefer a different order to the alphabetic one, there should still be a manual option.
Remove the 50 action limit on undo.
Group undo for typing operations.
In particular a user would like to switch between servers on the same tab to run queries against multiple servers. Apparently this used to work in the old studio before tabs were introduced.
Currently there is an inconsistency in that recent files are loaded into the current tab while files opened via the "Open..." menu option are loaded into a new tab.
E.g. instead of `a`b!`:t/
studio throws an exception.
studio rounds very small floats to zero, which q never does
e.g. enter 7.275958e-12
in studio and run it, and it returns 0f
, while the q console would say 7.275958e-12
for the same input
Probably due to: https://stackoverflow.com/questions/51202723
e.g. "0Np 0Np 0Np" instead of "0N 0N 0Np"
Change Log
Hard to discover what the new features are and whether it's worth trying newer releases.
Users should be able to map actions to keys, e.g.
Ctrl+W - close tab or delete last word?
Ctrl+Shift+Up/Down - swap lines (Notepad++ style) or select paragraph?
As many of the actions as possible should be mappable, with sensible defaults and export config feature.
Examples:
"a\000b" -> should print like this, not as "ab"
"C:\\Projects\\gyorokpeter" -> should print with the double backslashes instead of "C:\Projects\gyorokpeter"
This helps avoid needlessly browsing back and forth when having files open in multiple projects.
For scratchpad tabs, the path should be the path of the last file tab visited.
It should focus on the editor if the editor was selected, maybe it's ok to select the search box if that was selected before switching away from the tab.
ctrl+forward delete deletes the entire line from the insertion point forward, but ctrl+delete deletes only one word backwards
ctrl+forward delete should delete one word forward, which is what it does in most apps
E.g. create a tab with a single a
Press ctrl+R, type a
into find and aa
into replace
This results in an infinite loop.
Date automatically handled in Excel.
Excel sees a string not a date. Even =DATEVALAUE() cannot handle the string format.
Windows 11, Excel 365
Excel represents dates as number of days since 1900 something. Ideally kdb-studio should use this format.
Using a string still requires DATEVALUE(), in which case kdb-studio should select a better format (see https://support.microsoft.com/en-us/office/datevalue-function-df8b07d4-7761-4a93-bc33-b7471bbff252) but it might become locale-dependent. The number is safer.
"Open in Excel" works, but it has the bad habit of opening a new Excel session, from which one can copy, true, but still very cumbersome.
Instead of creating a separate table/console view tab for each result, there should be a button inside the tab to switch between the two modes.
In particular users are asking for a dark theme but this could be genericized for customizable themes with a light and a dark preset.
Ctrl+Del and Ctrl+Backspace to delete words
Ctrl+Shift+Up and Ctrl+Shift+Down to move current line(s) up/down
If power goes out during the state save, it should not result in corrupted state.
E.g. I had about 10 tabs open when the power went out. When I restarted studio afterwards, only one tab came back up.
If you type in a server name that already exists, the data you enter is silently discarded with no message to tell you that this happened.
Instead you should get an error message when clicking the ok button and get the chance to change the server name.
Roadmap
roadmap.md
file.In our organisation the password used to connect to kdb servers expires every couple of days.
We have tools to regenerate the server list (json or qpad format), but all users must manually reimport it each time with numerous clicks which after a while become very tedious.
I would like to have a way to programmatically import the new server list into kdb studio settings with minimal user interaction.
I would like to have a command line switch to import server list which does not require any click.
Or a separate main like
Either they should be rendered (e.g. \n appearing as line breaks) or copyable (.Q.s1 format). Maybe use a similar split as for tables where it opens two tabs, one with the rendered form and one with the copyable form.
`char$1000?256
usually reproduces this
chart windows should be closable from the keyboard
i suggest ctrl+w
It should clearly indicate where the server will end up if dropped.
It must be able to distinguish between dropping an item as the last element of an open folder vs as the next element outside the folder.
Take accessibility into consideration, e.g. what if the user wants to move a server from the bottom of a 100 server list to the top. E.g. don't require using the mouse wheel while also holding down the left button or waiting for ages as the server list scrolls one by one.
Recommended fix:
boolean searchFromSelStart;
if (context.getReplaceWith() != null) {
searchFromSelStart = context.getSearchForward();
} else {
searchFromSelStart = ! context.getSearchForward();
}
int pos = searchFromSelStart ? textArea.getSelectionStart() : textArea.getSelectionEnd();
Currently if the tabs or the result window are in focus, it doesn't do anything.
When I import a server list (with new passwords) the existing connection is not updated till a change of server is manually made.
I think the new settings should be immediately applied.
Re connect to currently selected server if it has been re loaded from an external list.
This GitHub issue is a request to the FINOS Infrastructure team to work with @alvin-c-shih and the FINOS KDB project to integrate WhiteSource on the FINOS kdb-studio repo.
https://community.finos.org/docs/development-infrastructure/code-validation/whitesource
The traditional default is 4 chars and use spaces instead of tab characters.
Such that after ctrl+f I can directly type the search string and it overwrites the previous one.
E.g. try typing the following:
f1:{
something
};
The closing curly brace will be auto-unindented, even though this results in code that won't load, worse still, you won't notice this immediately as this doesn't break over IPC.
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.