Как разделить и отредактировать патчи?

Следующий сценарий даст Вам верхние левые экранные co-порядки и размер окна (без любого художественного оформления).... xwininfo -id $(xdotool getactivewindow) содержит достаточно информации для Вас.


#!/bin/bash
# Get the coordinates of the active window's
#    top-left corner, and the window's size.
#    This excludes the window decoration.
  unset x y w h
  eval $(xwininfo -id $(xdotool getactivewindow) |
    sed -n -e "s/^ \+Absolute upper-left X: \+\([0-9]\+\).*/x=\1/p" \
           -e "s/^ \+Absolute upper-left Y: \+\([0-9]\+\).*/y=\1/p" \
           -e "s/^ \+Width: \+\([0-9]\+\).*/w=\1/p" \
           -e "s/^ \+Height: \+\([0-9]\+\).*/h=\1/p" )
  echo -n "$x $y $w $h"
#
10
09.06.2011, 01:32
4 ответа

Вы могли бы хотеть смотреть в patchutils [1]. Для части энергии я записал маленький плагин энергии, который помогает с навигацией в патчах: diff_navigator [2].

[1] http://cyberelk.net/tim/software/patchutils/

[2] http://www.vim.org/scripts/script.php?script_id=2361

7
27.01.2020, 20:01
  • 1
    diff_navigator URL является, по-видимому, vim.org/scripts/script.php?script_id=2361, Emacs имеет подобные функции в режимах –  Riccardo Murri 01.10.2010, 12:59
  • 2
    , Вы могли расширить свой ответ для создания этого более всесторонним? Добавление примера, как использовать, какая утилита от набора patchutils разделить большой патч на непересекающиеся была бы большой... –  maxschlepzig 30.08.2011, 23:05

Несколько вне темы я предполагаю, но я все еще думаю, что это полезно.

При использовании мерзавца, чтобы сделать разработку, можно легко разделить целые изменения на меньшую "скрягу", которые воплощают одну функцию каждый. Вы заканчиваете с одной фиксацией на функцию и можете использовать мерзавца git-format-patch чтобы создать (и даже подписаться и правильно приписать) патчи, я обрисовал в общих чертах, как сделать это здесь

5
27.01.2020, 20:01

Мой SuSe имеет splitdiff util, который работает как это:

$ splitdiff -a tmp.179639.patch
Wrote >tmp.179639.patch.part001
Wrote >tmp.179639.patch.part002
3
27.01.2020, 20:01

Можно использовать это для разделения большого патча к меньшим блокам (или на файл или на каждый ломоть) и затем если необходимо объединить затем использование combinediff от patchutils пакета, который был упомянут в ответе Petr Uzel

0
27.01.2020, 20:01

Теги

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