问题标签 [diff]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
18905 浏览

c# - C# 比较算法

c#中是否有任何开源算法可以解决在两个文本文件之间创建差异的问题?

如果它能够以某种方式突出显示文本文档中发生更改的确切区域,那将是非常酷的。

0 投票
2 回答
268 浏览

.net - 是否有一个很好的 .net 库,用于对可用于合并的 HTML 进行 3 路比较?

为了合并独立的 HTML 更改,我正在为 HTML 的 3 路比较/合并库寻找建议。常见的 3 路文本合并算法性能不佳,因为它们不理解 HTML 和 XML 的树状结构。当然,这样的库必须理解 HTML 的松散语法,即标签并不总是封闭的。我的平台是.Net。

0 投票
4 回答
5028 浏览

python - 将命令重定向到 Python 中另一个的输入

我想在python中复制它:

(hg cat file.txt 输出最近提交的 file.txt 版本)

我知道如何将文件传输到 gvimdiff,但它不会接受另一个文件:

进入python部分......

当 subprocess 被调用时,它只是<(hg cat file)作为gvimdiff文件名传递。

那么,有没有办法像 bash 那样重定向命令?为简单起见,只需 cat 一个文件并将其重定向到 diff:

0 投票
12 回答
46443 浏览

ruby - 区分一个红宝石字符串或数组

如何在 Ruby 中对两个字符串或数组进行比较?

0 投票
16 回答
4020 浏览

c# - 关于如何构建 HTML Diff 工具的建议?

这篇文章中,我询问是否有任何工具可以比较 2 个 HTML 页面的结构(不是实际内容)。我问是因为我从我们的设计师那里收到了 HTML 模板,并且经常错过我的实现中小的格式更改。然后我浪费了几个小时的设计师时间来筛选我的页面以找出我的错误。

该线程提供了一些很好的建议,但没有什么符合要求。“那好吧,”我想,“我自己搞一个。我是个中庸的开发者,对吧?”。

好吧,一旦我开始考虑它,我就无法完全弄清楚如何去做。我可以很容易地创建一个数据驱动的网站,或者做一个 CMS 实施,或者整天把文档扔进和扔出 BizTalk。无法开始弄清楚如何比较 HTML 文档。

好吧,当然,我必须阅读 DOM,并遍历节点。我必须将结构映射到某个数据结构(如何??),然后比较它们(如何??)。这是我从未尝试过的开发任务。

因此,既然我已经确定了自己知识的弱点,我将面临更大的挑战来解决这个问题。关于如何开始的任何建议?

澄清:实际内容不是我想比较的——创意人员用lorem ipsum填充他们的页面,我使用真实内容。相反,我想比较结构:

不同的是

0 投票
2 回答
1592 浏览

python - 我需要在 python 中编写代码以使用指纹技术比较两个文档的文本

我需要用 python 语言编写代码来使用指纹技术比较文档的文本。我不知道获取文件指纹或生成文件指纹。我在问是否有人知道该方法或具有用于生成以位形式存储的文档指纹的源代码。

0 投票
5 回答
329 浏览

ruby-on-rails - 版本化的 rails db 和不同

我想知道是否有一个集成的解决方案来拥有一个带有 Rails 支持的版本化记录的数据库(ala version_fu ar_versioned),谢谢!

0 投票
10 回答
13269 浏览

python - 在python脚本中检测相似文档的算法

我需要编写一个模块来检测类似的文档。我已经阅读了很多文档指纹技术和其他论文,但我不知道如何编写代码或实现这样的解决方案。该算法应适用于中文、日文、英文和德文或独立于语言。我怎样才能做到这一点?

0 投票
10 回答
6234 浏览

diff - 增量文件复制工具和 NIH

多年来,我最重要的工具之一是增量复制实用程序,它比较两个目录的内容并向我显示哪些文件较新/较旧/添加/删除。每天我发现自己在我的两台台式机和服务器之间复制源代码文件夹,这样的实用程序对于避免用旧文件覆盖新文件以及通过仅复制更改的文件来节省时间至关重要。此外,该实用程序允许我查看源文件夹中我不一定想要复制的新文件(如临时文件),而我可以删除这些文件。

像任何订阅NIH思维方式的人一样,我编写了自己的实用程序来比较两个文件夹的内容,并让我标记要复制、删除、比较或忽略的文件。我有很多版本的这个实用程序可以追溯到 DOS、OS/2 和 Win32。

我每天都使用这个实用程序,这让我想知道:其他人使用什么?当然有类似的程序可以做到这一点……我的实用程序没有差异屏幕,偶尔看看两个更改的文件之间有什么区别会很高兴。

您使用什么来比较和增量复制文件夹?

0 投票
3 回答
2040 浏览

javascript - 什么是避免对象命名空间冲突的 javascript 哈希表实现?

首先:我正在使用一个相当晦涩的嵌入 javascript 实现作为 Adob​​e InDesign CS3 的脚本引擎。这种实现有时与“标准”javascript不同,因此是我的问题。

我正在使用John Resig 的 jsdiff 库来源此处)来比较两个文档之间的文本选择。jsdiff 使用 vanilla 对象作为关联数组来将文本中的单词映射到另一个对象。(参见 jsdiff.js 中的“ns”和“os”变量,第 129 行左右。)

当文本中出现“反射”这个词时,我的头痛就开始了。“反射”是所有对象的默认只读属性。当 jsdiff 尝试将关联数组上的值分配给 ns['reflect'] 时,一切都会爆炸。

我的问题:有没有办法解决这个问题?有没有办法在不使用明显的香草对象的情况下在 javascript 中做一个哈希表?

基本规则:切换脚本引擎不是一种选择。:)