Как открыть bzr diff с помощью Meld с несколькими вкладками?

Как я могу одновременно открыть все различия в файлах Bazaar на нескольких вкладках в одном и том же окне Meld?

В настоящее время я выполняю следующую команду, чтобы использовать Meld для просмотра изменений в Bazaar:

bzr diff --using meld

Когда есть несколько файлов с изменениями, Meld открывает первый файл, но не остальные. Затем, когда я выхожу из окна Meld, diff для следующего файла открывается в новом окне Meld. Это продолжается до тех пор, пока я не просмотрю все файлы с разницей.

Примечание: я также попробовал следующее, но он вел себя так же, как и выше.

bzr diff --using meld &

1 ответ

Как я понимаю, нам нужно передать аргумент создания новой вкладки в Meld.

Согласно его man-странице, эта функция существует в Ubuntu 16.04 LTS (см.man meld ) и выше:

НАЗВАНИЕ
meld- Визуальный инструмент сравнения и слияния для рабочего стола GNOME...
ОПЦИИ
...
--newtab,-n
Откройте сравнение как новую вкладку в уже запущенном экземпляре.

Итак, нам нужно пройти--newtabвозможностьmeld:

meld --newtab /etc/os-release /etc/os-release &
meld --newtab /etc/os-release /etc/os-release &

В случае Bazaar нам нужно найти соответствующую опцию в bzr diffсубкоманда.
В соответствии сman bzr мы должны использовать --diff-options опция:

НАЗВАНИЕ
bzr - Базарная распределенная система контроля версий следующего поколения
КОМАНДНАЯ ССЫЛКА
bzr diff [FILE...]
...
--diff-options ARG Передайте эти параметры внешней программе сравнения.

Возможное решение:

bzr diff --using meld --diff-options --newtab &
bzr diff --using meld --diff-options --newtab &

Но в реальной ситуации, как заявлено ОП, это не работает.
Поэтому нам нужно создать псевдоним для этой команды:

for f in $( eval "bzr stat --versioned" ); \
do eval "bzr diff --using meld --diff-options --newtab ${f} &"; \
done
Другие вопросы по тегам