Wiith the NR merge coming up, I decided to give macroscope the
capability to find and detect cliques of duplicate files, so I
can drop redundant copies of images in NR.

You can generate this report by going to data/tools and typing

    make collisions

My code uses MD5 hashing rather than byte-by-byte comparison, so 
this works pretty fast.

Here's a copy of the current report.  I deduce from this, for example,
that it ought to be possible to remove the file
data/campaigns/The_South_Guard/images/misc/cross.png.

%%
../../images/terrain/castle/elven/keep-wall-0-ne.png
../../images/terrain/castle/elven/keep-inside-ne.png
../../images/terrain/castle/elven/keep-wall-1-ne.png
../../images/terrain/castle/elven/keep-wall-ne.png
%%
../../images/terrain/cave/wall-rough-chasm-convex-nw.png
../../images/terrain/cave/wall-rough-convex-nw.png
%%
../../images/projectiles/wailprojectile-n-6.png
../../images/projectiles/wailprojectile-s-6.png
%%
../../images/terrain/castle/sunkenkeep-keep-e.png
../../images/terrain/castle/sunken-ruinkeep1-keep-e.png
%%
../../images/terrain/castle/encampment-concave-w.png
../../images/terrain/castle/encampment-convex-w.png
%%
../../images/projectiles/wailprojectile-n-4.png
../../images/projectiles/wailprojectile-s-4.png
%%
../../data/tutorial/images/units/elder-mage-ranged1.png
../../data/campaigns/Heir_To_The_Throne/images/units/elder-mage-ranged1.png
%%
../../data/tutorial/images/units/elder-mage-defend.png
../../data/campaigns/Heir_To_The_Throne/images/units/elder-mage-defend.png
%%
../../images/terrain/castle/sunkenkeep-inside-sw.png
../../images/terrain/castle/sunkenkeep-wall-sw.png
%%
../../data/tutorial/images/units/elder-mage-ranged3.png
../../data/campaigns/Heir_To_The_Throne/images/units/elder-mage-ranged3.png
%%
../../data/tutorial/images/units/human-princess-attack-1.png
../../data/campaigns/Heir_To_The_Throne/images/units/human-princess-attack-1.png
%%
../../images/terrain/castle/keep-wall-1-ne.png
../../images/terrain/castle/keep-wall-0-ne.png
../../images/terrain/castle/keep-inside-ne.png
../../images/terrain/castle/keep-wall-ne.png
%%
../../data/campaigns/Under_the_Burning_Suns/external_binary_data/images/UtBS_campaign_icon.png
../../data/campaigns/Under_the_Burning_Suns/images/newelves/kaleh.png
%%
../../data/campaigns/The_Rise_Of_Wesnoth/images/units/undead-vampirelady-defend.png
../../data/campaigns/The_Rise_Of_Wesnoth/images/units/undead-vampirelady-range.png
%%
../../images/terrain/castle/sunkenkeep-wall-1-nw.png
../../images/terrain/castle/sunkenkeep-wall-nw.png
../../images/terrain/castle/sunkenkeep-wall-0-nw.png
../../images/terrain/castle/sunkenkeep-inside-nw.png
%%
../../images/misc/bar-energy-enemy.png
../../images/misc/bar-energy.png
%%
../../data/campaigns/Heir_To_The_Throne/images/story/story9.png
../../data/campaigns/The_Rise_Of_Wesnoth/images/story/rough_landing.png
%%
../../images/terrain/castle/sunkenkeep-wall-0-ne.png
../../images/terrain/castle/sunkenkeep-inside-ne.png
../../images/terrain/castle/sunkenkeep-wall-1-ne.png
../../images/terrain/castle/sunkenkeep-wall-ne.png
%%
../../images/buttons/paste_button_editor-active.png
../../images/buttons/paste_button_editor.png
../../images/buttons/paste_button_editor-pressed.png
%%
../../data/campaigns/Eastern_Invasion/external_binary_data/images/EI_campaign_image.png
../../data/campaigns/Eastern_Invasion/images/portraits/gweddry.png
%%
../../images/terrain/castle/encampment-convex-se.png
../../images/terrain/castle/encampment-concave-se.png
%%
../../data/campaigns/Under_the_Burning_Suns/images/newelves/desert-elvish-archer+female-defend.png
../../data/campaigns/Under_the_Burning_Suns/images/newelves/desert-elvish-archer-defend.png
%%
../../data/campaigns/Under_the_Burning_Suns/external_binary_data/images/UtBS_difficulty_hard.png
../../data/campaigns/Under_the_Burning_Suns/images/newelves/desert-elvish-prowler.png
%%
../../images/terrain/lava-dcastle-ccw-nw.png
../../images/terrain/lava-dcastle-chasm-ccw-nw.png
%%
../../images/units/human-magi/white-mage+female-die-4.png
../../images/units/human-magi/white-mage-die-4.png
%%
../../images/buttons/group_castle-active.png
../../images/buttons/group_castle-active-pressed.png
%%
../../data/campaigns/Under_the_Burning_Suns/images/newelves/desert-elvish-sharpshooter-defend.png
../../data/campaigns/Under_the_Burning_Suns/images/newelves/desert-elvish-sharpshooter+female-defend.png
%%
../../data/tutorial/images/portraits/lisar.png
../../data/campaigns/Heir_To_The_Throne/images/portraits/lisar.png
%%
../../images/items/bones.png
../../data/campaigns/Under_the_Burning_Suns/images/items/bones.png
%%
../../data/tutorial/images/units/human-princess-defend.png
../../data/campaigns/Heir_To_The_Throne/images/units/human-princess-defend.png
%%
../../images/terrain/castle/sunkenkeep-keep-se.png
../../images/terrain/castle/sunken-ruinkeep1-keep-se.png
%%
../../data/campaigns/Under_the_Burning_Suns/external_binary_data/images/UtBS_difficulty_challenging.png
../../data/campaigns/Under_the_Burning_Suns/images/newelves/desert-elvish-sentinel.png
%%
../../images/terrain/flat/farm-veg-spring2.png
../../images/terrain/flat/farm-veg-spring1.png
%%
../../images/misc/dot.png
../../data/campaigns/The_South_Guard/images/misc/dot.png
%%
../../data/tutorial/images/units/human-princess-attack-4.png
../../data/campaigns/Heir_To_The_Throne/images/units/human-princess-attack-4.png
%%
../../images/terrain/water/coast.png
../../data/campaigns/Under_the_Burning_Suns/images/terrain/coast.png
%%
../../images/terrain/castle/ruinkeep1-keep-w.png
../../images/terrain/castle/keep-keep-w.png
%%
../../data/tools/TeamColorizer.pl
../../data/tools/unit_tree/TeamColorizer.pl
%%
../../images/terrain/castle/sunkenkeep-keep-sw.png
../../images/terrain/castle/sunken-ruinkeep1-keep-sw.png
%%
../../images/terrain/castle/sunkenkeep-keep-nw.png
../../images/terrain/castle/sunken-ruinkeep1-keep-nw.png
%%
../../images/terrain/castle/ruinkeep1-keep-e.png
../../images/terrain/castle/keep-keep-e.png
%%
../../data/campaigns/The_Rise_Of_Wesnoth/external_binary_data/images/TRoW_difficulty_easy.png
../../data/campaigns/The_Rise_Of_Wesnoth/images/units/noble-fighter.png
%%
../../images/terrain/chasm-dcastle-concave-sw.png
../../images/terrain/castle/dwarven-castle-concave-sw.png
%%
../../data/tutorial/images/portraits/konrad.png
../../data/campaigns/Heir_To_The_Throne/external_binary_data/images/HttT_campaign_image.png
../../data/campaigns/Heir_To_The_Throne/images/portraits/konrad.png
%%
../../images/projectiles/wailprojectile-n-5.png
../../images/projectiles/wailprojectile-s-5.png
%%
../../images/terrain/castle/keep-keep-nw.png
../../images/terrain/castle/ruinkeep1-keep-nw.png
%%
../../data/tutorial/images/units/elder-mage-ranged2.png
../../data/campaigns/Heir_To_The_Throne/images/units/elder-mage-ranged2.png
%%
../../images/units/elves-wood/archer+female-die3.png
../../images/units/elves-wood/archer-die3.png
%%
../../data/campaigns/Two_Brothers/external_binary_data/images/TB_campaign_image.png
../../data/campaigns/Two_Brothers/images/arne.png
%%
../../data/campaigns/The_Rise_Of_Wesnoth/external_binary_data/images/TRoW_campaign_icon.png
../../data/campaigns/The_Rise_Of_Wesnoth/external_binary_data/images/TRoW_difficulty_hard.png
../../data/campaigns/The_Rise_Of_Wesnoth/images/units/noble-lord.png
%%
../../data/campaigns/Under_the_Burning_Suns/external_binary_data/images/UtBS_difficulty_normal.png
../../data/campaigns/Under_the_Burning_Suns/images/newelves/desert-elvish-hunter.png
%%
../../data/campaigns/The_South_Guard/external_binary_data/images/TSG_campaign_image.png
../../data/campaigns/The_South_Guard/images/portraits/deoran.png
%%
../../data/tutorial/images/units/human-princess-attack-2.png
../../data/campaigns/Heir_To_The_Throne/images/units/human-princess-attack-2.png
%%
../../data/tutorial/images/units/human-princess-attack-3.png
../../data/campaigns/Heir_To_The_Throne/images/units/human-princess-attack-3.png
%%
../../images/terrain/cloud1_1.png
../../images/terrain/cloud1_3.png
%%
../../images/terrain/castle/keep-wall-e.png
../../images/terrain/castle/keep-inside-e.png
%%
../../data/tutorial/images/units/elder-mage-melee2.png
../../data/campaigns/Heir_To_The_Throne/images/units/elder-mage-melee2.png
%%
../../data/campaigns/The_Rise_Of_Wesnoth/external_binary_data/images/TRoW_campaign_image.png
../../data/campaigns/The_Rise_Of_Wesnoth/images/story/the_duel.png
%%
../../data/campaigns/Under_the_Burning_Suns/images/newelves/desert-elvish-marksman+female-defend.png
../../data/campaigns/Under_the_Burning_Suns/images/newelves/desert-elvish-marksman-defend.png
%%
../../images/buttons/group_village-active-pressed.png
../../images/buttons/group_village.png
../../images/buttons/group_village-pressed.png
../../images/buttons/group_village-active copy.png
../../images/buttons/group_village-active.png
%%
../../images/projectiles/fire-breath-s-1.png
../../images/projectiles/fire-breath-n-1.png
%%
../../data/tutorial/images/units/elder-mage-melee1.png
../../data/campaigns/Heir_To_The_Throne/images/units/elder-mage-melee1.png
%%
../../images/buttons/group_castle.png
../../images/buttons/group_castle-pressed.png
%%
../../data/campaigns/The_Rise_Of_Wesnoth/external_binary_data/images/TRoW_difficulty_normal.png
../../data/campaigns/The_Rise_Of_Wesnoth/images/units/noble-commander.png
%%
../../images/buttons/group_cave-active.png
../../images/buttons/group_cave-pressed.png
../../images/buttons/group_cave-active-pressed.png
%%
../../images/terrain/castle/keep-wall-0-nw.png
../../images/terrain/castle/keep-inside-nw.png
../../images/terrain/castle/keep-wall-nw.png
../../images/terrain/castle/keep-wall-1-nw.png
%%
../../data/tutorial/images/units/elder-mage.png
../../data/campaigns/Heir_To_The_Throne/images/units/elder-mage.png
%%
../../data/tutorial/images/units/human-princess.png
../../data/campaigns/Heir_To_The_Throne/images/units/human-princess.png
%%
../../images/buttons/group_bridge-active.png
../../images/buttons/group_bridge-active-pressed.png
../../images/buttons/group_bridge.png
../../images/buttons/group_bridge-pressed.png
%%
../../data/campaigns/Under_the_Burning_Suns/external_binary_data/images/UtBS_campaign_image.png
../../data/campaigns/Under_the_Burning_Suns/images/portraits/kaleh.png
%%
../../images/terrain/castle/encampment-concave-e.png
../../images/terrain/castle/encampment-convex-e.png
%%
../../images/terrain/castle/encampment-concave-sw.png
../../images/terrain/castle/encampment-convex-sw.png
%%
../../images/units/human-magi/white-mage+female-die-3.png
../../images/units/human-magi/white-mage-die-3.png
%%
../../images/terrain/castle/ruinkeep1-keep-ne.png
../../images/terrain/castle/keep-keep-ne.png
%%
../../data/campaigns/Heir_To_The_Throne/external_binary_data/images/HttT_campaign_icon.png
../../data/campaigns/Heir_To_The_Throne/images/units/konrad-lord-leading.png
%%
../../images/terrain/castle/sunkenkeep-keep-w.png
../../images/terrain/castle/sunken-ruinkeep1-keep-w.png
%%
../../images/terrain/castle/keep-keep-se.png
../../images/terrain/castle/ruinkeep1-keep-se.png
%%
../../data/tutorial/images/portraits/delfador.png
../../data/campaigns/Heir_To_The_Throne/images/portraits/delfador.png
%%
../../src/tools/.deps/cutter.Po
../../src/tools/.deps/dummy_video.Po
../../src/tools/.deps/exploder.Po
../../src/tools/.deps/exploder_composer.Po
../../src/tools/.deps/exploder_cutter.Po
../../src/tools/.deps/exploder_utils.Po
../../src/campaign_server/.deps/campaign_server.Po
../../src/server/.deps/game.Po
../../src/server/.deps/input_stream.Po
../../src/server/.deps/metrics.Po
../../src/server/.deps/player.Po
../../src/server/.deps/proxy.Po
../../src/server/.deps/server.Po
../../src/.deps/loadscreen_empty.Po
%%
../../images/terrain/castle/encampment-concave-ne.png
../../images/terrain/castle/encampment-convex-ne.png
%%
../../images/attacks/rectangular-shield.png
../../data/campaigns/The_South_Guard/images/attacks/rectangular_shield.png
%%
../../images/terrain/castle/sunkenkeep-inside-e.png
../../images/terrain/castle/sunkenkeep-wall-e.png
%%
../../images/units/human-loyalists/duelist.png
../../images/units/human-loyalists/duelist-stand2.png
%%
../../autom4te.cache/output.0
../../autom4te.cache/output.1
%%
../../images/terrain/cave/wall-rough-chasm-convex-ne.png
../../images/terrain/cave/wall-rough-convex-ne.png
%%
../../images/terrain/castle/ruinkeep1-keep-sw.png
../../images/terrain/castle/keep-keep-sw.png
%%
../../images/misc/cross.png
../../data/campaigns/The_South_Guard/images/misc/cross.png
%%
../../images/terrain/castle/sunkenkeep-keep-ne.png
../../images/terrain/castle/sunken-ruinkeep1-keep-ne.png
%%
../../images/cursors-bw/select.png
../../images/cursors-bw/attack_drag_alt.png
../../images/cursors-bw/attack.png
%%
../../data/campaigns/Under_the_Burning_Suns/images/newelves/desert-elvish-archer-female-die3.png
../../data/campaigns/Under_the_Burning_Suns/images/newelves/desert-elvish-archer-die3.png
%%
../../images/terrain/castle/keep-inside-w.png
../../images/terrain/castle/keep-wall-w.png
%%
../../images/wesnoth-icon.png
../../icons/wesnoth-icon.png
%%
../../images/terrain/castle/sunkenkeep-inside-w.png
../../images/terrain/castle/sunkenkeep-wall-w.png
%%
../../images/terrain/castle/encampment-concave-nw.png
../../images/terrain/castle/encampment-convex-nw.png
-- 
                <a href="http://www.catb.org/~esr/";>Eric S. Raymond</a>

When your hammer is C++, everything begins to look like a thumb.
                -- Steve Hoflich on compl.lang.c++

_______________________________________________
Wesnoth-dev mailing list
Wesnoth-dev@gna.org
https://mail.gna.org/listinfo/wesnoth-dev

Reply via email to