V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
dt201909
V2EX  ›  分享创造

又一个在线文本对比工具,带有合并,以及若干个文本处理功能

  •  1
     
  •   dt201909 · 28 天前 · 1359 次点击

    我创建了一个新的工具站,希望对大家有作用: https://diffsuite.com

    主要功能与特点:

    • 文本对比 & 合并
    • 若干个文本处理工具,如:排序、去重、删空白行等
    • 100% 免费
    • 注重隐私,所有操作都在浏览器中进行,不会经过服务器

    如果你有什么想增加的功能,欢迎留言讨论~~~

    ➡️ Go to diffsuite.com

    17 条回复    2024-08-27 02:13:39 +08:00
    wktline
        1
    wktline  
       28 天前
    分享创造看这个 https://www.wktline.com
    CEBBCAT
        2
    CEBBCAT  
       28 天前   ❤️ 1
    dt201909
        3
    dt201909  
    OP
       28 天前
    @CEBBCAT #2 我认,确实是有深深的「借鉴」的痕迹,不过,还是有很多不一样的,也研究了很久的 Code-Mirror ,后期看情况,可能会改成用 Monaco-Editor ,毕竟 Compare 的效果要好很多
    CEBBCAT
        4
    CEBBCAT  
       28 天前   ❤️ 1
    @dt201909 #3 乐见其成。diff 工具有不少,依我个人,首先希望的是纯本地 JS 实现,然后是速度和便捷程度。不止程序员需要在线工具,一些运营人员,乃至传统文职人员(抱歉,我不太懂,只能泛称)也需要对比工具。

    另外提供个想法,我很早前就想做一个基于流的文字处理工具,背景是很多用户不了解 shell 工具,而其实 shell 之中有很多工具是字处理的一把好手,比如,利用 sort 、uniq 、awk 、sed 、grep 、rev 、tac 、cut 等等工具,可以组合出很实用的数据格式化脚本(而且还是一行的!)

    楼主可以吸收 Scratch 的思想,同时结合 carbon.now.sh 把代码存在 URL HASH 中的设计,做一个便于使用、易于二次创造的在线工具
    dt201909
        5
    dt201909  
    OP
       28 天前
    @CEBBCAT #4 很好的想法 👏👏👏
    shell 的管道之前看好像是 unix 里边一种很好的实现。
    如果基于文本行或整文本,这种方式确实可实现,图形化的话有点像现在不少软件里边的搭电池,web 上一些平台的工作流。
    dt201909
        6
    dt201909  
    OP
       28 天前
    @CEBBCAT #4 「首先希望的是纯本地 JS 实现,然后是速度和便捷程度」
    我开发的这个是纯本地,包括你发的那个网站也是。
    很神奇的是,好些这类网站,甚至别的类型的网站,他们的实现都是后端处理。
    我猜测可能是因为年代久,那时候的前端没现在这么发达,就这么延续下去。或者,熟悉后端,不熟悉前端,那后端就是一把万能的锤子。
    我不喜欢这类网站,虽然宣称会删除文件,但一个速度慢,一个文件也确确实实上传了不可控。
    lizhenda
        7
    lizhenda  
       27 天前
    还是蛮不错的,不加广告吗
    dt201909
        8
    dt201909  
    OP
       27 天前
    @lizhenda #7 要的,这不刚弄好,没那么快能申请。
    另外也得一直优化,至少使用量得起来才行。
    forty
        9
    forty  
       27 天前
    用了一下,OP 还需努力

    1. 配色不行,差异行的文本,选中后几乎没有高亮效果,完全看不出来是否选中了。
    2. 不支持语法高亮?比如对比各种编程语言的文件,可以忽略注释之类
    3. 内容超长时卡死

    我一直在找哪个 textdiff 工具能有识别语法段落的功能。举例:

    左侧文本:
    function abc() {
    // abc
    }

    右侧文本:
    function abc() {
    // abc
    }
    function def() {
    // def
    }

    从语法逻辑的角度来说,我是插入了 def 函数。插入了这 3 行:
    + function def() {
    + // def
    + }

    但是几乎所有的 diff 工具都识别为插入了这 3 行:
    + }
    + function def() {
    + // def

    如果能够将 1 个逻辑块视为整体,就友好得多。
    虽然说,二者是等价的。但是如果能考虑语法逻辑,无疑是一大亮点。
    CEBBCAT
        10
    CEBBCAT  
       26 天前
    @dt201909 #8 事情还是演变成了我们都讨厌的样子,抄袭,然后加广告。如果只是抄,只要不宣称是自己发明的我一般不说什么,但抄了还要卖钱,那和那些把开源 Apk 二次打包卖钱的人有什么区别呢?

    补充一下,我说的是 onlinetextcompare.com 这个网站,而不是同样使用 google/diff-match-patch 这一行为
    ---
    @forty #9 https://github.com/afnanenayet/diffsitter
    iMusic
        11
    iMusic  
       26 天前
    monaco-editor
    dt201909
        12
    dt201909  
    OP
       26 天前
    @CEBBCAT #10 我确实是从 onlinetextcompare.com 得到了启发,但其实大部分东西都不一样,我觉得说「抄袭」就过了。
    回答几个点吧,
    1 、google/diff-match-patch 是 Code-Mirror-Merge-View 的默认库,且直接依赖,不是照着人家选一样,而是官方早已经给你选好了
    2 、无论是免费,还是付费,与抄袭无关,不能说免费你就随便抄,付费就说这个事情有问题
    3 、按照你的说法,可以认为 onlinetextcompare.com 是抄袭了 Code-Mirror 官方的 merge view 的例子,因为他压根没这么改
    4 、我说说我从 onlinetextcompare.com 参考的点:Code-Mirror 样式修改的可能性,界面的部分布局,标题背景用渐变。
    5 、「和那些把开源 Apk 二次打包卖钱的人有什么区别」就好比你做的产品,开源库,你用了,谷歌搜索了一些代码片段,你用了,然后你会觉得自己是抄吗?这里边注入了你多少想法,你花费了多少精力去调优,通通不重要吗?
    如果你还要说是抄,那我没办法,按这逻辑,谷歌首页不知道抄了谁,百度也不知道抄了谁,或者他们都是在互抄,因为他们都有一个搜索框和一个搜索按钮。
    dt201909
        13
    dt201909  
    OP
       26 天前
    @forty #9 这个已经涉及到语言识别了吧...
    不过按理说,通过缩进可以一定程度来判断。

    「配色不行」待我再研究研究,有些功能得魔改这个编辑框架才行
    「不支持语法高亮?」确实没做,最初只想做个文本对比,以及一些批量处理(简单的)文本的功能,所以没考虑代码层面的事
    「内容超长时卡死」这个无解,面对开发者的话,可能还是的 Monaco-Editor 才行,性能会比较好一点,我也有在考虑后面换掉
    dt201909
        14
    dt201909  
    OP
       26 天前
    @iMusic #11 卧槽,666 ,直接一个书签搞定是吧。。。

    我有想过用 Moncao-Editor 的,但是他的 Merge 不太好用,所以暂时还不太确定。。。
    dt201909
        15
    dt201909  
    OP
       26 天前
    @forty #9 确认一下哈,你说的 「选中后几乎没有高亮效果,完全看不出来是否选中了」,指的是 下图红箭头那里不明显是吗?
    dt201909
        16
    dt201909  
    OP
       26 天前
    @iMusic #11 好用,刚好我之前也写过这个的例子,转换 base64 就用上了,思路 666
    chatbase
        17
    chatbase  
       24 天前
    帮忙看看我的工具站 www.jsonhome.com ,主要围绕 json 。支持 json 文本对比 https://jsonhome.com/json-compare
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   960 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 21:28 · PVG 05:28 · LAX 14:28 · JFK 17:28
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.