-
-
Notifications
You must be signed in to change notification settings - Fork 653
Tips_&_Tricks
Adjust fonts, icons, colors, and panel layout to match your workflow.
Most parts of Letos can be customized to match your preferences and workflow.
The application style, font sizes, and SQL editor color scheme can be configured in the application settings. This allows you to adjust both the look and readability of the interface.
Many interface elements support quick scaling without opening the configuration dialog. Hold Ctrl (or Cmd on macOS) and use the mouse wheel while hovering over a supported area, such as:
- Toolbars
- Database list panels
- SQL editor windows
- Data views
Depending on the area, this will adjust font sizes, icon sizes, or both.
Toolbar icon size can also be changed from the View menu. The same options are available from the context menu that appears when you right-click the main toolbar.
You can move the main window toolbars to the left or right side of the window if you prefer to maximize vertical space. Simply drag a toolbar by its handle and drop it in the desired location.
Alternatively, you can hide toolbars entirely.
Most side panels can be rearranged using drag and drop. You can move them to different locations around the main window, combine them into tab groups, or hide them completely if you do not need them.
Delete removes rows, while Backspace clears cell values.
When working in a data grid (viewing table data or query results), you can press the Delete key to delete all rows included in the current selection. Alternatively, press Backspace to clear the contents of the selected cells (that is, set their values to NULL).
Organize databases into virtual folders for easier navigation.
You can organize your databases into groups (virtual directories) in the database list. To manage groups, right-click anywhere in the list and use the group management options from the context menu.
Databases can be moved between groups using drag and drop.
When a group is deleted, all databases it contains are moved to the parent group. If the group has no parent, the databases are moved to the top level of the list.
Reorder table columns visually without writing SQL.
You can change the order of columns in a table by opening the Table Window (simply double-click the table) and using drag and drop in the Structure tab.
Alternatively, you can select a column and use the Move Column Up or Move Column Down buttons on the toolbar (blue icons with up/down arrows).
Transfer tables and views between databases with drag and drop.
You can easily move or copy tables (and views) between databases, even across SQLite 2 and SQLite 3 versions. Simply drag and drop them.
If Letos detects a problem that makes a table or view impossible to copy or move, it will explain the issue. Letos will also notify you about any minor changes required when transferring objects between SQLite 2 and SQLite 3. For example, SQLite 2 does not support the AUTOINCREMENT keyword. Letos automatically detects and fixes such compatibility issues, while informing you about the changes it makes.
The same can be achieved using the Copy and Paste entries in the context menu (right-click a table or view). However, this method only supports copying, not moving. This is intended to prevent accidental deletion of objects from the source database.
Let the editor suggest SQL syntax and database objects as you type.
When typing a query in the SQL Editor, the editor can assist you with SQL syntax as well as database object names (tables, columns, and so on). Code completion is triggered automatically in many situations. For example, when you type a table alias followed by a dot:
SELECT * FROM tab WHERE tab.You can also trigger code completion manually by pressing Ctrl+Space. This is the default keyboard shortcut, but it can be changed in the configuration dialog.
Hover over a cell to inspect metadata, including ROWID when available.
When browsing table data (or SQL query results), hover the mouse pointer over a cell to display a tooltip containing all information that Letos knows about that cell. This includes column details and the row's ROWID.
If the tooltip does not contain a ROWID, it means that Letos was unable to determine it for that row. This can happen, for example, in SQL query results when a cell contains the result of an expression rather than data directly retrieved from a table.
Open images, XML, and other data types in specialized editors.
Letos can display images directly in the Grid View. However, depending on the size and type of the data, it may sometimes be more convenient to use a dedicated viewer or editor.
For images, XML documents, and other supported formats, you can either switch to the Form View tab or right-click a cell and select "Open in Editor". This allows you to view and edit the data using tools tailored to its format, such as an image viewer or an editor with syntax highlighting.
Choose exactly how much SQL code should be executed.
By default, the SQL Editor executes only the query in which the cursor is currently placed. You can change this behavior in the configuration dialog and choose to always execute the entire contents of the SQL Editor.
Regardless of this setting, you can always select a portion of SQL code and press Execute. In that case, only the selected code will be executed.
Backspace, Delete, and Enter each modify data in a different way.
- When a data cell is selected and you press Backspace, the cell value is set to NULL.
- When a data cell is selected and you press Delete, the entire row is marked for deletion (the row is not deleted immediately; the change must still be committed).
- When a data cell is selected, press Enter to start editing the cell. If you then remove its contents and confirm the edit, the cell value is set to an empty string.
Open database objects directly from SQL code with Ctrl+Click.
When a query in the SQL Editor contains references to database objects such as tables, views, indexes, or triggers, hold Ctrl and those object names will become underlined. While holding Ctrl, click an object name to open it, just as if you had double-clicked it in the database list on the left.
You can also right-click such an object name in the SQL Editor to display the same context menu that would appear if you right-clicked the object in the database list.
Use custom functions and code snippets to reuse SQL logic.
SQLite does not support stored procedures, but Letos provides two features that can cover some similar use cases.
You can define your own SQL functions and use them directly in SQL queries. This is useful when you need reusable logic that can be called from many queries.
Custom SQL functions can be managed from their dedicated editor window. You can open it from the toolbar or from the Tools menu.
Code snippets let you save reusable pieces of SQL code and insert them quickly when writing queries. They are useful for common query templates, repeated statements, or larger SQL blocks that you do not want to type manually every time.
A code snippet can be inserted into the SQL editor in two ways:
- Drag and drop it from the snippets side panel into the editor.
- Invoke SQL code completion twice. The first invocation shows standard completion suggestions, while the second switches the assistant to code snippet mode.
Code snippets can be managed from their dedicated editor window, available from the toolbar and from the Tools menu.
Make sure your default values are actually used
When defining a DEFAULT constraint, consider adding a NOT NULL constraint as well. This ensures that the default value is always inserted when you create a new row in Letos.
Without a NOT NULL constraint, Letos inserts NULL by default, even if a DEFAULT value is defined for the column.
If you prefer a different behavior, you can change it in the configuration dialog under Data Browsing settings. Enabling the option to always use default values causes Letos to insert the column's DEFAULT value whenever one is defined, instead of inserting NULL.
Allow more than one copy of Letos to run simultaneously
By default, Letos prevents multiple instances of the application from running at the same time. This helps avoid accidentally opening the same databases in separate Letos processes.
If needed, you can change this behavior in the configuration dialog on the General page. Enable the option for multiple instances to allow several independent Letos windows to run simultaneously.
Open and create databases protected with encryption
Letos supports several encrypted SQLite database formats. To open or create an encrypted database, use the Add Database dialog, which provides access to advanced database connection settings.
Select SQLite3 Multiple Ciphers as the database type. You can then choose the encryption algorithm, enter the password, and configure any additional encryption parameters required by the database.
Quickly find rows using text, patterns, or SQL expressions
Data displayed in tables and views can be filtered directly from the Filter field in the Grid View toolbar.
By default, a single filter field is used for all columns. If you need more precise control, you can enable per-column filters from the filter dropdown menu.
The same menu also lets you choose how filtering works. Depending on your needs, you can filter rows where a value:
- Contains the specified text
- Exactly matches the specified text
- Matches a regular expression
When using the single-filter mode, you can also filter data using an SQL expression. This allows you to create more advanced filtering conditions than simple text matching.
Control how column widths are calculated and displayed
Letos provides several options for controlling column widths in data views. You can configure columns to automatically expand so that full column names are visible, preserve user-defined widths, and limit the maximum initial width assigned to columns.
These settings are available in Configuration → Data Browsing → Data Column Width and can help optimize the display of both narrow and wide datasets.
Keep selected columns visible while scrolling horizontally
Columns in the Grid View can be pinned to the left side of the data grid. Pinned columns remain visible at all times and are excluded from horizontal scrolling, making it easier to work with wide tables.
To pin or unpin a column, right-click its header and use the corresponding option from the context menu.