Это принятое решение нарушает выбор в другом буфере. Когда я включаю эту ловушку, если я делаю выборку в любом буфере, а затем вызываю ibuffer, выбор теряется.
племянник
8
Правильный способ сделать это заключается в ознакомлении поддержки в ibufferтечение auto-revert-mode. Это может быть достигнуто путем определения buffer-stale-functionэтих буферов. Можно утверждать, buffer-menuчто , поскольку поддерживает эту функцию, было бы хорошо, чтобы она ibufferтоже была в апстриме, но сейчас это не так.
Есть ли причина предпочитать этот метод более ibuffer-auto-mode?
Ниспио
1
Хорошо auto-revert-modeиспользует таймеры и ibuffer-auto-modeиспользует post-command-hook, так что есть очевидная разница ; но я не мог сказать, был ли один предпочтительнее другого.
phils
4
@nispio Думаю, я предпочитаю общие решения, а не специальные. Так что в этом смысле, когда ibufferбуферы ведут себя как другие, когда дело доходит до обновления устаревшего контента, я чувствую себя чище. Кроме того, я, как правило, не люблю злоупотреблять post-command-hookтаким образом: это действительно излишне, когда вы делаете что-то совершенно не связанное с буфером. Наконец, если для обновления содержимого требуется какое-то нажатие клавиши, это также может быть g, что является явным способом обновления содержимого. Но само собой разумеющееся, это, вероятно, философская проблема :)
Sigma
1
Когда я использую этот метод, я получаю сообщение Reverting buffer `*Ibuffer*'. . Сообщение навязчиво, потому что оно продолжает мешать мне, когда я работаю в минибуфере. Сообщение появляется независимо от того, ibufferвиден буфер или нет.
Ответы:
Запуск команды
ibuffer-auto-mode
в буфере Ibuffer заставляет ее обновлять отображение после каждой интерактивной команды.Кажется, нет прямого способа активировать его автоматически. Вы можете поместить это в ваш файл инициализации:
источник
ibuffer
, выбор теряется.Правильный способ сделать это заключается в ознакомлении поддержки в
ibuffer
течениеauto-revert-mode
. Это может быть достигнуто путем определенияbuffer-stale-function
этих буферов. Можно утверждать,buffer-menu
что , поскольку поддерживает эту функцию, было бы хорошо, чтобы онаibuffer
тоже была в апстриме, но сейчас это не так.Во всяком случае, вот способ сделать это:
Примечание: в общем случае нужно определить значение для
revert-buffer-function
, но оноibuffer
уже сделано (установленоibuffer-update
)источник
ibuffer-auto-mode
?auto-revert-mode
использует таймеры иibuffer-auto-mode
используетpost-command-hook
, так что есть очевидная разница ; но я не мог сказать, был ли один предпочтительнее другого.ibuffer
буферы ведут себя как другие, когда дело доходит до обновления устаревшего контента, я чувствую себя чище. Кроме того, я, как правило, не люблю злоупотреблятьpost-command-hook
таким образом: это действительно излишне, когда вы делаете что-то совершенно не связанное с буфером. Наконец, если для обновления содержимого требуется какое-то нажатие клавиши, это также может бытьg
, что является явным способом обновления содержимого. Но само собой разумеющееся, это, вероятно, философская проблема :)Reverting buffer `*Ibuffer*'.
. Сообщение навязчиво, потому что оно продолжает мешать мне, когда я работаю в минибуфере. Сообщение появляется независимо от того,ibuffer
виден буфер или нет.(setq auto-revert-verbose nil)
, потенциально локально