1
0
mirror of https://github.com/vrana/adminer.git synced 2025-08-07 07:06:45 +02:00

Autocomplete SQL commands

This commit is contained in:
Jakub Vrana
2025-04-03 15:07:27 +02:00
parent 986433dd3a
commit d7c14b16b1
4 changed files with 13 additions and 2 deletions

View File

@@ -1,4 +1,5 @@
## Adminer dev
- Autocomplete SQL commands
- Do not edit NULL values by Modify (bug #967)
- PostgreSQL: Support COPY FROM stdin in SQL query (bug #942)
- MySQL: Display number of found rows in group queries (regression from 5.1.1)

View File

@@ -994,6 +994,7 @@ class Adminer {
function syntaxHighlighting(array $tables): void {
// this is matched by compile.php
echo script_src("../externals/jush/modules/jush.js");
echo script_src("../externals/jush/modules/jush-autocomplete-sql.js");
echo script_src("../externals/jush/modules/jush-textarea.js");
echo script_src("../externals/jush/modules/jush-txt.js");
echo script_src("../externals/jush/modules/jush-js.js");
@@ -1009,6 +1010,13 @@ class Adminer {
foreach (array("bac", "bra", "sqlite_quo", "mssql_bra") as $val) {
echo "jushLinks.$val = jushLinks." . JUSH . ";\n";
}
$tablesColumns = array_fill_keys(array_keys($tables), array());
foreach (driver()->allFields() as $table => $fields) {
foreach ($fields as $field) {
$tablesColumns[$table][] = $field["field"];
}
}
echo "autocompleter = jush.autocompleteSql('" . idf_escape("") . "', " . json_encode($tablesColumns) . ");\n";
}
echo "</script>\n";
}

View File

@@ -1,5 +1,7 @@
'use strict'; // Adminer specific functions
let autocompleter; // set in adminer.inc.php
/** Load syntax highlighting
* @param string first three characters of database system version
* @param [string]
@@ -44,7 +46,7 @@ function syntaxHighlighting(version, vendor) {
adminerHighlighter = els => jush.highlight_tag(els, 0);
for (const tag of qsa('textarea')) {
if (/(^|\s)jush-/.test(tag.className)) {
const pre = jush.textarea(tag);
const pre = jush.textarea(tag, autocompleter);
if (pre) {
setupSubmitHighlightInput(pre);
tag.onchange = () => {

2
externals/jush vendored