Heidisql: Pilih otomatis warna SQL yang pas saat mengganti tema

Dibuat pada 4 Des 2018  ·  17Komentar  ·  Sumber: HeidiSQL/HeidiSQL

Langkah-langkah untuk mereproduksi masalah ini

  1. Aktifkan tema default dan warna SQL, lalu alihkan ke tema gelap
  2. Perhatikan warna font di panel log

Perilaku saat ini

Teks tidak terbaca, karena warna yang tidak pas

Perilaku yang diharapkan

Teks yang dapat dibaca :)

Solusi yang mungkin

Pilih otomatis preset warna SQL gelap saat memilih tema gelap, dan sebaliknya.
Atau, tanyakan dengan anggun kepada pengguna apakah itu harus dilakukan, melalui dialog ya/tidak. Mirip dengan apa yang dilakukan PHPStorm, lihat layar terlampir.

phpstorm-theme-switch-dark-light

Lingkungan

  • Versi HeidiSQL:
    9.5.0.5362
themes

Semua 17 komentar

Setelah memilih tema baru, Heidi dapat memeriksa warna clWindow melalui GetLightness , dan memutuskan apakah akan memilih warna font SQL gelap atau terang secara otomatis. Selain itu, warna teks kisi harus dipilih secara otomatis, meskipun tidak ada set warna yang ditentukan sebelumnya untuk warna kisi.

Ide untuk warna teks tema:

Mungkin Anda bisa menggunakan beberapa tema populer di sini: http://color-themes.com

Dan usulkan tema dengan warna latar belakang DAN warna teks.

(Permintaan pribadi: Akan sangat bagus jika Anda dapat menyertakan Tema Materi: http://color-themes.com/?view=theme&id=5746be34333ecc1800c39714
karena ini adalah Tema VSCode saya)

Saya pikir saya menambahkan beberapa dropdown preset warna ke Preferences > Grid formatting, di mana saat ini hanya ada pemilih warna untuk setiap grup tipe data (numerik, teks, ...). Dalam dropdown preset warna itu, saya mungkin harus menambahkan predefinisi seme seperti pada preset warna SQL: Light, Dark, Black, White. Tentu saja saya juga dapat menambahkan beberapa lagi di sini, seperti tema Material itu, tetapi tujuan pertama saya adalah membuat warna yang kompatibel dengan tema gelap sama sekali.

Saya baru saja menambahkan dropdown preset warna ke dialog preferensi, di bd8cc07bc82b4d277f6db18f7857f4ece51fb789 - dan lupa menyebutkan id masalah dalam pesan log, jadi ini dia :)

Omong-omong, jika Anda menginginkan tema Material, Anda dapat menentukan warna kode Pascal di sini. Kode warna direpresentasikan sebagai nilai integer. Berikut definisi skema gelap saat ini:

  object SynSQLSyn_Dark: TSynSQLSyn
    Options.AutoDetectEnabled = False
    Options.AutoDetectLineLimit = 0
    Options.Visible = False
    CommentAttri.Foreground = 8710076
    ConditionalCommentAttri.Foreground = 8710076
    DataTypeAttri.Foreground = 11184895
    DelimitedIdentifierAttri.Foreground = 6460927
    FunctionAttri.Foreground = 15792639
    IdentifierAttri.Foreground = 6460927
    KeyAttri.Foreground = 15792639
    NumberAttri.Foreground = 4610525
    StringAttri.Foreground = 5293907
    SymbolAttri.Foreground = 15792639
    TableNameAttri.Foreground = 16755327
    VariableAttri.Foreground = clPurple
    SQLDialect = sqlMySQL
    Left = 200
    Top = 352
  end

Anda mungkin dapat membuat kode warna yang tepat menggunakan konverter seperti yang ada di shodor.org . Anda perlu menukar bagian biru dan merah, karena urutan dalam warna Pascal adalah BGR, bukan RGB.

Ini dia:

  object SynSQLSyn_Dark: TSynSQLSyn
    Options.AutoDetectEnabled = False
    Options.AutoDetectLineLimit = 0
    Options.Visible = False
    CommentAttri.Foreground = 5533306
    ConditionalCommentAttri.Foreground = 7193272
    DataTypeAttri.Foreground = 13079274
    DelimitedIdentifierAttri.Foreground = 8565247
    FunctionAttri.Foreground = 12832483
    IdentifierAttri.Foreground = 8565247
    KeyAttri.Foreground = 12832483
    NumberAttri.Foreground = 16733040
    StringAttri.Foreground = 12839047
    SymbolAttri.Foreground = 8440772
    TableNameAttri.Foreground = 16217705
    VariableAttri.Foreground = 16763755
    SQLDialect = sqlMySQL
    Left = 200
    Top = 352
  end

Tapi itu tidak masuk akal tanpa warna latar belakang yang sesuai, yaitu 2503224 .

Saya tidak tahu apakah mudah bagi Anda untuk mengintegrasikan tema baru (maksud saya tema global seperti Karbon) di HeidiSql, mungkin saya bisa membantu jika tidak terlalu rumit karena saya tidak tahu Pascal.

Saya juga tidak yakin tentang hal BGR / RGB, saya menggunakan konverter ini (shrodor satu turun kemarin) ...

Jika itu adalah warna tema gelap default yang sebenarnya

heidisql default theme

heidisql material theme

Gaya sudah ditentukan sebelumnya di Delphi. Saya tidak pernah membuatnya sendiri. Di Delphi, di bawah "Alat", ada perancang gaya Bitmap, yang menurut saya harus digunakan untuk membuat file / tema .vsf tersebut. Anda tentu saja dapat mengunduh Delphi edisi Komunitas dan membuat tema dengannya untuk HeidiSQL, saya akan senang jika seseorang melakukannya.

Intinya adalah bahwa tema-tema ini tidak menyertakan warna teks SQL, juga tidak menyertakan warna tipe data yang digunakan dalam HeidiSQL.

Saya akan menyalip definisi warna Anda dari atas menjadi preset warna SQL baru, dan menyebutnya "Material". Saya rasa ini lebih bagus daripada preset "Gelap" saya, jadi saya juga bisa menjadikannya sebagai preset default saat beralih ke tema gelap.

Berikut dokumentasi untuk "perancang gaya Bitmap" itu: http://docwiki.embarcadero.com/RADStudio/XE6/en/Bitmap_Style_Designer

Saya membuat file material.vsf dengan alat perancang gaya Bitmap. Tentu saja, saya tidak dapat mengujinya di HeidiSQL, tetapi tampaknya berfungsi dengan benar dengan komponen ui default.
Saya cukup baru di Github (tidak pernah melakukan PR), jadi saya tidak tahu cara mengirimkan file untuk ditinjau...

EDIT: Saya telah bercabang, lalu gabungkan Permintaan Tarik di sisi saya, jadi ini filenya

Saya juga baru saja menguji skema warna kode bahan yang Anda sertakan dalam 9.5.0.5437 dan saya pikir Merah dan Biru terbalik. Buruk saya (saya pikir konverter saya melakukan ini untuk saya).

Silakan gunakan kode ini sebagai gantinya:

  object SynSQLSyn_Dark: TSynSQLSyn
    Options.AutoDetectEnabled = False
    Options.AutoDetectLineLimit = 0
    Options.Visible = False
    CommentAttri.Foreground = 8023636
    ConditionalCommentAttri.Foreground = 12108397
    DataTypeAttri.Foreground = 15372999
    DelimitedIdentifierAttri.Foreground = 16757122
    FunctionAttri.Foreground = 14929603
    IdentifierAttri.Foreground = 16757122
    KeyAttri.Foreground = 14929603
    NumberAttri.Foreground = 7361535
    StringAttri.Foreground = 8906947
    SymbolAttri.Foreground = 12897152
    TableNameAttri.Foreground = 6911735
    VariableAttri.Foreground = 7064575
    SQLDialect = sqlMySQL
    Left = 200
    Top = 352
  end

Saya baru saja mengambil alih gaya materi vcl baru Anda, dan warna yang berubah untuk preset warna SQL.

Harap jauhkan hal-hal lebih lanjut dari masalah ini. Sebagai gantinya, lebih baik ajukan yang baru jika ada masalah atau jika Anda memiliki lebih banyak kontribusi.
Anda juga dapat memperbaiki gaya material, karena saya melihat tidak ada warna latar belakang untuk item menu yang hanya digeser oleh mouse.

Saya melihat di HeidiSQL Nightly terbaru bahwa warna format SQL berubah.

Berikut adalah tangkapan layar:
image

Pengaturan saya sudah diatur ke Cahaya:
image

Apakah ada cara untuk mendapatkan kembali skema warna lama? Kontras skema baru antara elemen terlalu rendah untuk saya.

Untuk mendapatkan warna default, Anda dapat memilih preset "Cahaya". Untuk kembali ke warna default versi Heidi lama: keluar dari Heidi, hapus nilai yang dimulai dengan "SQL Attr*" melalui regedit dari kunci HKEY_CURRENT_USER\Software\HeidiSQL . Kemudian mulai ulang versi HeidiSQL lama untuk memuat nilai default. Anda bisa menggunakan rilis terakhir untuk itu.

Bisakah Anda menambahkan skema lama sebagai entri preset?

Hm, kenapa tidak. Tetapi Anda harus mengajukan masalah baru untuk itu.

@CharlieEtienne : Saya baru saja memodifikasi skrip penginstal, jadi ini menyediakan "Material" alih-alih "Karbon" sebagai alternatif dari tema Windows default. Saya harap itu baik-baik saja dengan Anda?

grafik

Saya juga bermaksud menambahkan nama pengguna Anda (CharlieEtienne atau beri tahu saya nama asli Anda?) ke bagian kredit di https://www.heidisql.com/help.php#credits

Wah, keren sekali! Terima kasih @ansgarbecker ! Nama asli saya adalah Charlie Etienne (Prancis)

Juga, untuk referensi inilah repo untuk VCL Material Dark .

Saya berencana untuk menambahkan varian ini untuk tema ini:

  • Bahan Lebih Gelap
  • Bahan Lebih Ringan
  • Bahan Laut
  • Bahan Palenight

sebagaimana didefinisikan dalam Tema Material resmi

Bantuan apa pun diterima!

Apakah halaman ini membantu?
0 / 5 - 0 peringkat

Masalah terkait

mpaland picture mpaland  ·  5Komentar

cautionbug picture cautionbug  ·  4Komentar

cammudito picture cammudito  ·  3Komentar

naoma123 picture naoma123  ·  3Komentar

chrysler5798 picture chrysler5798  ·  5Komentar