Skip to content

Settings and keybindings

Press Mod + , to open Settings. Changes are saved immediately and normally take effect without restarting Newt.

The Settings tab covers the interface, file-operation behavior, hot paths, archive creation, the editor, and background enrichers. Use its search field to find an option by name or description. Reset removes an explicit value and returns that setting to its default or profile value.

Newt stores its configuration in the operating system’s application configuration directory:

Platform Configuration directory
macOS ~/Library/Application Support/org.newt-fm.newt/
Linux $XDG_CONFIG_HOME/org.newt-fm.newt/, or ~/.config/org.newt-fm.newt/ when XDG_CONFIG_HOME is unset
Windows %APPDATA%\org.newt-fm.newt\

The main configuration file is settings.toml in this directory.

The Settings footer has two file buttons. Show in pane closes Settings, navigates the pane it was opened from to this directory, and focuses settings.toml. In a remote session this button is available only while the client-local filesystem is mounted. Open in external editor uses the system’s file handler and remains available in every session. Either action creates a commented starter file when settings.toml does not exist.

The Command Palette action Open Settings File in Editor also opens the file with the system handler. External changes are detected automatically.

Newt also maintains state.json in the same directory for window and interface state such as column widths, zoom, terminal height, recent connections, and sticky dialog choices. It is machine-written and is not normally intended for manual editing.

Set profile in settings.toml to load an additional file from the profiles/ subdirectory of Newt’s configuration directory:

profile = "work"

This loads profiles/work.toml. Profile values are merged over the main settings, including keybinding overrides.

[appearance]
show_hidden = false
folders_first = true
show_command_bar = true
show_pane_header = true
show_pane_status = true
density = "comfortable" # comfortable (22px rows) or compact (20px rows)
theme = "system" # system, light, or dark
columns = ["name", "size", "modified_date", "modified_time", "user", "group", "mode", "attributes"]
si_size_prefixes = false # use prefixed values in the Size column
size_units = "decimal" # decimal (kB, MB) or binary (KiB, MiB)
locale = "" # BCP-47 tag; empty uses the system regional format
date_format = "" # empty uses the resolved locale's layout
time_format = ""
[behavior]
confirm_delete = true
delete_to_trash = true
keep_terminal_open = true
keep_finished_operations = false
quick_search = true
expose_local_fs = false
default_sort = { key = "name", ascending = true }
history_retention = 200 # 0 means unlimited
shell_integration = true
[enrichers]
git_status = true
[editor]
word_wrap = false
[viewer]
image_background = "checkerboard" # checkerboard, dark, or light

The columns list controls both visibility and order. It is usually easier to manage from Settings or the file-list header, where columns can be enabled and dragged into place. Newt hides User, Group, and Mode on Windows-shaped filesystems, and hides Attributes on filesystems that do not provide Windows attributes, without removing those entries from this global list.

Newt formats numbers, dates, and times with appearance.locale when it contains a usable BCP-47 tag such as de-DE. When it is empty, Newt follows the operating system’s regional format. This is especially relevant on Windows, where the regional format can differ from the display language. Custom date_format and time_format values choose the layout while the locale still supplies month and weekday names.

By default, the Size column shows locale-formatted exact byte counts. Enable si_size_prefixes to show prefixed values. size_units = "decimal" uses powers of 1000 and labels such as kB and GB; "binary" uses powers of 1024 and labels such as KiB and GiB. The same unit choice applies to free space, Properties, operation progress and speed, and viewer and editor status bars. Prefixed values use up to two decimal places and the resolved locale’s number separators.

The Keybindings tab lists built-in, viewer, editor, and user commands. Built-in commands can have several shortcuts: edit a row, remove or record keys, then save the complete set. The first key is the primary shortcut shown in menus, tooltips, and the command bar. User commands can have only one shortcut because their key is stored on the [[command]] entry. Newt reports collisions before applying a change, and Reset restores the complete default set.

Bindings can also be added to a configuration file. Add one [[bind]] entry per key; several entries may target the same command:

[[bind]]
key = "mod+shift+f5"
command = "copy"
when = "pane_focused"
[[bind]]
key = "ctrl+shift+c"
command = "copy"
when = "pane_focused"

Keys use lowercase names joined with +. mod means Command on macOS and Ctrl on Linux and Windows; literal ctrl, meta, and alt do not change by platform. The optional when value can be pane_focused, terminal_focused, viewer, or editor; without it, the binding is global. Viewer and editor commands are named with a Viewer: or Editor: prefix in the Keybindings tab and only run in their respective windows.

To disable a default binding:

[[bind]]
key = "f8"
command = "-"

See Keyboard shortcuts for the defaults.