Запустите Vim как моего пользователя с полномочиями пользователя root

Функция C_CodeComment не определяется ни в одном из файлов, которые идут с последними версиями Vim. Я искал немного, и похоже на использование плагина C/C++ Fritz Mehner. Это обеспечивает C/C++> Комментарии>, код-> комментирует/* */пункт меню (и a \c* mapping1), который использует C_CodeComment.

Команда put = ' */' добавляет новую строку (см. :help :put) это содержит содержание специального регистра =, который просто оценивает то, что стало после него выражением Vim. Конкретное выражение, используемое здесь, является просто простыми тремя символьными строками (пространство, звездочка, наклонная черта вправо).

Можно устроить */ быть в конце последнего line2 путем добавления строки как

silent normal kJ^

после silent put = ' */' строки. Это перемещается вверх для длительности, прокомментировала строка (k), присоединяется к нему с */ строка (J), и затем перемещает курсор в первый несимвол пробела строки (^); \co сам mapping1 включает a j перемещать курсор в следующую строку после недавно прокомментированного региона.

Однако выполнение этого повредит предположения о C_RemoveCComment функция (который используется C_CommentCode “обратная” функция): это ожидает находить и обрабатывать */ в начале строки (после дополнительного пробела).
Если Вы никогда не используете C/C++> Комментарии>, комментарий-> кодирует пункт меню или \co mapping1, затем Вы можете жить без способности использовать функцию некомментария этого плагина.


1\ “лидер” отображений мог бы отличаться, если Вы переопределили localmapleader.
2 Это (по-моему), делает для нечетно выглядящих многострочных комментариев (т.е. выбор больше чем одной строки через выбор GUI или визуальный режим прежде, чем вызвать функциональность комментария):

Со средними двумя выбранными строками,

    foo();
    bar();
    baz();
    quux();

становится

    foo();
/*     bar();
 *     baz(); */
    quux();

который походит на нечетный стиль (обычно, если * лидеры используются на прошедших строках, затем звездочки от /* новичок, * лидеры, и */ войдите помещаются в тот же столбец).

9
30.08.2012, 12:21
3 ответа

Вместо sudo vim /etc/rc.conf использовать sudoedit /etc/rc.conf или sudo -e /etc/rc.conf. Вы, возможно, должны установить переменную среды РЕДАКТОРА на энергию. Это выполнит саму энергию как обычного пользователя, с помощью нормальной конфигурации, на копии файла, который она скопирует назад, когда Вы выйдете.

14
27.01.2020, 20:05
  • 1
    Хорошее решение! Я проверю это также. –  rubik 30.08.2012, 16:25
  • 2
    я попробовал sudoedit /etc/rc.conf и sudo -e /etc/rc.conf и это открывает энергию, но мой ~/.vimrc не становится загруженным. Что я делаю неправильно? –  apparat 30.08.2012, 21:45
  • 3
    @apparat export EDITOR=vim сначала - это может пытаться работать vi, который я не знаю, загружает ли это vimrc, даже когда это - энергия. –  Random832 31.08.2012, 04:52
  • 4
    Ну, я думаю, что это - лучший ответ. Спасибо вам обоим. –  rubik 31.08.2012, 16:04
  • 5
    @Random832 export EDITOR=vim обработанный. Я думал, что vi не установлен в моей системе и является только символьной ссылкой на энергию. Спасибо –  apparat 17.09.2012, 10:47

Можно использовать -u сказать энергию который емкостно-резистивный файл загрузиться. например.

sudo vim -u ~user/.vimrc /etc/rc.conf

если ввод, что каждый раз необходимо сделать это, утомителен, сделайте псевдоним:

alias sudovim='sudo vim -u ~user/.vimrc'

Отметьте это vim -u может вызвать плагины или назвал емкостно-резистивные файлы, чтобы перестать работать, если они загружают другие файлы относительно $HOME - $HOME является теперь домашним dir корня, не пользователь. Это может быть решено с, например, символьные ссылки в домашнем dir корня или полными путями жесткого кодирования.

6
27.01.2020, 20:05
  • 1
    Это является большим, спасибо. Я решил как это: alias svim="HOME=/home/user && sudo vim -u $HOME/.vimrc". –  rubik 30.08.2012, 13:21

sudo vim -S /home/user/.vimrc /etc/rc.conf

Это эквивалентно:

sudo vim / etc /rc.conf + : source /home/user/.vimrc

и также может иметь псевдоним:

alias svim = 'sudo vim -S /home/user/.vimrc'

1
27.01.2020, 20:05

Теги

Похожие вопросы