MightyCreak-diffuse-adeb42a/0000775000232200023220000000000015154634406016470 5ustar debalancedebalanceMightyCreak-diffuse-adeb42a/meson.build0000664000232200023220000000050015154634406020625 0ustar debalancedebalanceproject('diffuse', version: '0.11.0', meson_version: '>= 0.55', license: 'GPL-2.0-or-later', default_options: [ 'warning_level=2' ]) i18n = import('i18n') subdir('data') subdir('src') subdir('po') if build_machine.system() == 'linux' meson.add_install_script('build-aux/meson/postinstall.py') endif MightyCreak-diffuse-adeb42a/.vscode/0000775000232200023220000000000015154634406020031 5ustar debalancedebalanceMightyCreak-diffuse-adeb42a/.vscode/extensions.json0000664000232200023220000000024715154634406023126 0ustar debalancedebalance{ "recommendations": [ "davidanson.vscode-markdownlint", "mesonbuild.mesonbuild", "ms-python.python", "redhat.vscode-yaml" ] } MightyCreak-diffuse-adeb42a/.vscode/launch.json0000664000232200023220000000131315154634406022174 0ustar debalancedebalance{ "version": "0.2.0", "configurations": [ { "name": "Python: Debug", "type": "python", "request": "launch", "program": "${workspaceFolder}/main.py", "console": "integratedTerminal", // "env": { // "PYTHONPATH": "." // } }, { "name": "Python: Remote Attach", "type": "python", "request": "attach", "port": 5678, "host": "localhost", "pathMappings": [ { "localRoot": "${workspaceFolder}", "remoteRoot": "." } ] } ] } MightyCreak-diffuse-adeb42a/README.md0000664000232200023220000000516215154634406017753 0ustar debalancedebalance

Diffuse

Download on Flathub

CI status Packaging status

Diffuse is a graphical tool for merging and comparing text files. Diffuse is able to compare an arbitrary number of files side-by-side and gives users the ability to manually adjust line matching and directly edit files. Diffuse can also retrieve revisions of files from several VCSs for comparison and merging. Some key features of Diffuse: * Ability to compare and merge an arbitrary number of files side-by-side (n-way merges) * Line matching can be manually corrected by the user * Ability to directly edit files * Syntax highlighting * Supports several VCS: [Bazaar][bzr], [CVS][cvs], [Darcs][darcs], [Git][git], [Mercurial][hg], [Monotone][mtn], [RCS][rcs] and [Subversion][svn] * Unicode support * Unlimited undo * Easy keyboard navigation [bzr]: https://bazaar.canonical.com [cvs]: https://cvs.nongnu.org [darcs]: http://darcs.net [git]: https://git-scm.com [hg]: https://www.mercurial-scm.org [mtn]: https://www.monotone.ca [rcs]: https://www.gnu.org/software/rcs/ [svn]: https://subversion.apache.org ## Documentation For a more detailed documentation for users, translators and developers, see the [documentation](docs/). ## Contact Discuss with us on Matrix at [#diffuse:matrix.org](https://matrix.to/#/#diffuse:matrix.org). ## Licenses Diffuse is under the [GPLv2](COPYING). The file [io.github.mightycreak.Diffuse.appdata.xml.in](data/io.github.mightycreak.Diffuse.appdata.xml.in) is licensed under the [FSF-AP](https://www.gnu.org/prep/maintain/html_node/License-Notices-for-Other-Files.html) license. Copyright (C) 2006-2019 Derrick Moser Copyright (C) 2015-2023 Romain Failliot Icon made by [@jimmac](https://github.com/jimmac). This repository is a fork of the original project on SourceForge, which doesn't seem to be maintained anymore: . MightyCreak-diffuse-adeb42a/utils/0000775000232200023220000000000015154634406017630 5ustar debalancedebalanceMightyCreak-diffuse-adeb42a/utils/makemanual.py0000775000232200023220000000651215154634406022324 0ustar debalancedebalance#!/usr/bin/env python # Copyright (C) 2010 Derrick Moser # # This program is free software; you can redistribute it and/or modify it under # the terms of the GNU General Public License as published by the Free Software # Foundation; either version 2 of the licence, or (at your option) any later # version. # # This program is distributed in the hope that it will be useful, but WITHOUT # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # FOR A PARTICULAR PURPOSE. See the GNU General Public License for more # details. # # You should have received a copy of the GNU General Public License along with # this program. You may also obtain a copy of the GNU General Public License # from the Free Software Foundation by visiting their web site # (http://www.fsf.org/) or by writing to the Free Software Foundation, Inc., # 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA # This program translates Diffuse's DocBook help into a manual page using the # book2manual.xsl template. import os import subprocess # fetch translations for English text hard coded in the stylesheets translations = {} f = open('translations.txt', 'rb') for v in f.read().split('\n'): v = v.split(':') if len(v) == 3: lang = v[0] if not translations.has_key(lang): translations[lang] = [] translations[lang].append(v[1:]) f.close() # find all localised versions of the DocBook manual d = '../src/usr/share/gnome/help/diffuse' for lang in os.listdir(d): # skip over any .svn files if lang.startswith('.'): continue # convert regular DocBook manual into a form suitable for man pages cmd = [ 'xsltproc', 'book2manual.xsl', os.path.join(os.path.join(d, lang), 'diffuse.xml') ] proc = subprocess.Popen(cmd, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE) proc.stdin.close() proc.stderr.close() fd = proc.stdout s = fd.read() fd.close() if proc.wait() != 0: raise OSError('Could not run xsltproc') # save man page suitable DocBook file a = 'diffuse.xml' f = open(a, 'wb') f.write(s) f.close() # convert to man page cmd = [ 'xsltproc', '/usr/share/sgml/docbook/stylesheet/xsl/nwalsh/manpages/docbook.xsl', a ] proc = subprocess.Popen(cmd, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE) proc.stdin.close() proc.stderr.close() fd = proc.stdout s = fd.read() fd.close() if proc.wait() != 0: raise OSError('Could not run xsltproc') os.unlink(a) # read resulting man page f = open('diffuse.1', 'rb') s = f.read() f.close() os.unlink('diffuse.1') # remove comments s = '\n'.join([ c for c in s.split('\n') if not c.startswith('.\\"') ]) # fix arrow s = s.replace('\xe2\x86\x92', '\\(->') # translate extra text for k, v in translations.get(lang, []): s = s.replace(k, v) # figure out where to save the new man page # make subdirectories if necessary dd = '../src/usr/share/man' if lang != 'C': dd = os.path.join(dd, lang) if not os.path.exists(dd): os.mkdir(dd) dd = os.path.join(dd, 'man1') if not os.path.exists(dd): os.mkdir(dd) # finally save the man page f = open(os.path.join(dd, 'diffuse.1'), 'wb') f.write(s) f.close() MightyCreak-diffuse-adeb42a/utils/book2manual.xsl0000664000232200023220000000763215154634406022602 0ustar debalancedebalance ]> &date; &app; 1 &app-version; &app-cmd; &app; Manual &app-cmd; graphical tool for merging and comparing text files &app-cmd; &app-cmd; option file Description Options Author Copying MightyCreak-diffuse-adeb42a/utils/makemacicon.sh0000775000232200023220000000101615154634406022434 0ustar debalancedebalance#!/usr/bin/env bash # Use this tool if you need to re-create # Diffuse.app/Contents/Resources/diffuse.icns # in case the icon changes (unlikely). sizes=(16 32 64 128 256 512) for s in "${sizes[@]}"; do echo $s rsvg-convert -h $s "$1" > "icon_${s}x$s.png" done cp 'icon_32x32.png' 'icon_16x16@2x.png' cp 'icon_64x64.png' 'icon_32x32@2x.png' cp 'icon_256x256.png' 'icon_128x128@2x.png' cp 'icon_512x512.png' 'icon_256x256@2x.png' mkdir icon.iconset mv icon_*x*.png icon.iconset iconutil -c icns icon.iconset MightyCreak-diffuse-adeb42a/utils/makehtmlmanual.sh0000775000232200023220000000043115154634406023165 0ustar debalancedebalance#!/bin/bash xsltproc --nonet /usr/share/sgml/docbook/stylesheet/xsl/nwalsh/html/docbook.xsl ../src/usr/share/gnome/help/diffuse/C/diffuse.xml | sed 's/<\/head>/<\/head>/;s/