Получение настроек nano nanorc для работы с командой "sudo nano"

Кто-нибудь знает, как заставить работать настройки Nanorc (подсветка синтаксиса, мышь) при использовании экземпляра редактора "sudo nano"?

Он работает, как и ожидалось, когда не использует nano как суперпользователь, но не с sudo в миксе.

У меня есть все нужные настройки в ~/.nanorc, а также в /etc/nanorc, но при редактировании файла с помощью sudo ни одна из персонализированных настроек не применяется.

2 ответа

Решение

При использовании интерактивной оболочки, а затем с помощью sudo выполнить команду, такую ​​как nanoпараметры текущего пользователя в специфических файлах конфигурации приложения не получены. Итак, в этом случае, ~/.nanorc не получены, и настройки не читаются.

Такое же состояние возникает, когда пользователь использует su переключиться на другого пользователя, в том числе root, В обоих случаях вместо этого загружаются новые или эффективные пользовательские настройки. Итак, используя sudo nanoили используя su становиться root а затем выполняет nanoбудет источником /root/.nanorc для пользовательских настроек. Настройки в файле глобальной конфигурации, такие как /etc/nanorc, влияет на всех пользователей в системе и должен использоваться только для установки глобальных настроек, которые файл пользователя может переопределить в любом случае.

Чтобы вызвать эффект, который вы ищете, вам нужно применить специальные настройки для /root/.nanorc, Тогда когда ты sudo nano настройки для root будет применяться, а не настройки, найденные в ~/.nanorc,

Вы можете сделать это, например:

      sudo nano --rcfile ~/.nanorc <file-to-edit>

Чтобы сделать это более удобным, вы можете сделать:

      alias sudo='sudo '
alias nano='nano --rcfile ~/.nanorc'

Первый псевдоним (для ) — это стандартный метод, позволяющий sudoдля расширения псевдонимов пользователей.

С этими строками вы можете использовать sudo nano <file-to-edit>как обычно и ваш $HOME/.nanorcбудет прочитан.

Другие вопросы по тегам