Где находится файл конфигурации tmux по умолчанию?

16

Я ищу по умолчанию .tmux.confили что-то подобное. Я пытаюсь избавиться от шума в строке состояния, которая создается по умолчанию.

Роза Перроне
источник
В случае, если это поможет, я позабочусь о своем tmux.conf и делюсь им на github: github.com/gpakosz/.tmux
Грегори Пакош,
ответ можно найти в FAQ по tmux: github.com/tmux/tmux/wiki/…
DJCrashdummy

Ответы:

22

Конфигурация по умолчанию недоступна как обычный файл конфигурации; это часть исходного кода (таким образом, встроенная в скомпилированную программу).

Вы можете просмотреть части конфигурации с помощью команд list-keysи show-options:

tmux list-keys         # show current bindings

tmux show-options -s   # show current server options

tmux show-options -g   # show current global session options
tmux show-options      # show current session options

tmux show-options -gw  # show current global window options
tmux show-options -w   # show current window options

В tmux 1.7 show-optionsтакже может отображаться значение одного параметра (в предыдущих версиях можно было перечислить только все параметры из указанного класса):

tmux show-options -gw window-status-format

Если вас интересует конфигурация по умолчанию, которую имел бы «нетронутый» сервер, то вы можете изучить эти элементы, например:

tmux -L unconfigured -f /dev/null start-server \; list-keys \; show-options -s \; show-options -g \; show-options -gw

Этот -L unconfiguredбит указывает на сокет сервера, который вы, вероятно, еще не используете (если у вас есть сервер, использующий это имя сокета, просто выберите другое, неиспользуемое имя). Он -f /dev/nullгарантирует, что сервер не использует ваш обычный ~/.tmux.confфайл конфигурации (хотя, за исключением пользовательской сборки, невозможно пропустить /etc/tmux.confфайл конфигурации системы). Команда start-serverнеобходима, потому что только некоторые команды автоматически запускают сервер.


Если вы заинтересованы в просмотре исходного кода, вот области интересов:

  • параметры определены options-table.cв этих массивах:
    • server_options_table
    • session_options_table
    • window_options_table
  • привязки начинаются с key_bindings_init()in key-bindings.c, но некоторые подробности распространяются вместе с определениями отдельных команд (например, cmd_select_window_key_binding()in cmd-select-window.c).
Крис Джонсен
источник
также хороший ответ, который, возможно, поможет одному или двум понять концепцию и причину различных видов настроек: superuser.com/a/759156/403979
DJCrashdummy
3

Там должен быть один в вашем $HOME/.tmux.confконкретном для вашего пользователя и общесистемный файл конфигурации, расположенный на/etc/tmux.conf

Tuxdude
источник
2
Я сделал $HOME/.tmux.confсам, и /etc/tmux.confне существует.
Роуз Перроне
1
Большинство дистрибутивов Linux не поставляются с конфигурационными файлами tmux, даже с пустыми. Но если вы создадите один tmux, то должны проанализировать эти файлы конфигурации. Считаете ли вы, что какой-то конкретный параметр не сохраняется при перезапуске tmux?
Tuxdude