I’ve been tweaking how my SQL Developer application looks and feels for a long time.

Someone saw my desktop and wanted to know how to make theirs look like mine, hence this post.

I realize beauty in in the eye of the beholder, but if you behold what I behold, then here’s how to get there.

I recently came across this Scheme on GitHub, and have been using it for a few months now.

It’s a port from a popular theme in Eclipse, and it’s pretty much good, out of the box.

me like!

I have made a few additional tweaks though.

Highlighted text was hard to spot, so I changed the background color.

Now this looks better, I can actually read the text that’s been selected.

The Cursor

Seeing the cursor on the black screen was hard, so I changed that too.

Getting there…

Next, the Gutter

Assuming you have line numbers, ON.

White on grey basically.

And now, our finished product.

Make your code, prettier.

P.S. Don’t Forget the Fonts!

I’m using one developed for the Android platform.

Doesn’t support emojis, but still pretty good.
thatjeffsmith
Author

I'm a Master Product Manager at Oracle for Oracle SQL Developer. My mission is to help you and your company be more efficient with our database tools.

10 Comments

  1. This is good stuff. I changed my pl/sql editor setting based on your description.
    Just in case if you don’t know, I have changed the look and feel from Oracle to Windows in Preferences – Environment. It really looks much better overall.

  2. I have no problem with the default preference colors and fonts, but, once I changed the preferences as you show in this entry, I feel more comfortable by looking SQL Developer’s screen.
    Thank you.

  3. Stefan Heublein Reply

    Hello Jeff,

    with the version 19.1 the formatting of PL/SQL changed, e.g. in the following code example, the first line is colored (with Default scheme) in black and blue.
    Procedure name and variable names: black
    Literal strings: blue
    (sorry I had to describe this, because unfortunately there is no possibility to post a screenshot).

    dbgmsg(‘Number of tables in schema ‘ || l_cur_release || ‘ and ‘ || l_new_release, TRUE, TRUE);
    DBMS_OUTPUT.PUT_LINE(‘Number of tables schema ‘ || l_cur_release || ‘: ‘ || l_cur_tables.Count);

    The second line is shown completely in grey like a comment. In previous SQL Developer versions this call of DBMS_OUTPUT.PUT_LINE was colored like the first line.

    I tried some options PL/SQL Syntax Color preferences, but that didn’t change the colors.

    Kind regards
    Stefan

    • Stefan Heublein

      Cool, thank you. I removed the ?pkg = ‘DBMS_OUTPUT’ from the PL/SQL Custom Syntax Rules and coloring is back to default. Sometimes it may be useful to have instrumentation code colored differently and I now know the place to adapt it.

      I would not have asked this question, if the build in help would work better. When you e.g. search for ‘PL/SQL Custom Syntax Rules’ (if you would have known to search for this phrase at the beginning) you find NOTHING. For other searches it shows a link to the article ‘SQL Developer Concepts and Usage’ (with 10.000 lines) but not the place where it is found inside this article. You have to search within the article again. Practically this Help pages are not usable at all 🙁

    • thatjeffsmith

      Not sure that’s quite fair…I’m looking at the ‘PL/SQL Custom Syntax Rules’ page in the Help/Docs now.

  4. Thank you Jeff, this is very helpful and makes a huge difference when staring at code for hours.

    The only thing missing from the instructions in the GitHub repo is file location for macOS. It’s still in dtcache.xml, but a little harder to find.

    For me, this was the exact location: /Users/haniel.burton/.sqldeveloper/system18.4.0.376.1900/o.ide.13.0.0.1.42.170225.201⁩/dtcache.xml

    https://docs.oracle.com/en/database/oracle/sql-developer/18.4/rptig/installing-sql-developer.html#GUID-16F0A7C3-6EC1-4176-9B15-FE4AA8D70D5F

  5. Looks great, now if only SQL Dev supported fonts with Ligatures then Programmers Fonts such as Fira Code, Monoid, Hasklig, etc. could be used to a fuller extent.

Write A Comment