随便用关键词搜了一点代码,结果发现前几页,很多重复结果。
就是那种文件名和内容一模一样的,我本以为有开关能去重复,结果网上找了一圈,发现并没有。
无语 ing,明显提升用户体验的功能,官方为什么不加上呢?
1
hstdt 2021-03-16 21:14:57 +08:00 via iPhone
就算能去重,那到底显示哪个项目的呢
|
2
3dwelcome OP @hstdt 我随便搜了一个 mmdevapi.dll 英文单词,首页里 10 个结果,有 9 个是重复的,看名字大概率项目也是 clone 的。
这种体验实在是很差,旁边放个骰子,点一下摇几个项目,不是挺好的。 老外太死板,什么项目都希望保留。可是提供的信息越多,越找不到想要的内容,仿佛大海捞针。 |
3
ljpCN 2021-03-17 00:13:03 +08:00
1. 为什么要搜代码?
2. 为什么不用谷歌这样的搜索引擎? 楼主能解释下不?说不定解释下能让大家知道面对你的需求有没有更好的方案。避免这是一个 X-Y 问题。 |
4
3dwelcome OP @ljpCN 我不仅仅做前端,我是开发 windows 的,微软有定义大量的 COM Interface,靠自己个人力量没办法吃透,只能参考前人的代码摸索着来。
以前我一直用 googlecode 搜代码,超级好用,然而前几年倒闭了。 幸亏又起来一个 github,否则真不知道哪里去找代码。 |
5
learningman 2021-03-17 01:28:31 +08:00 via Android
同头痛,原来看一些 linux 内核的接口也是上 Github 找代码,前一面全是 fork
|
6
3dwelcome OP @learningman 我打算自己写个去重复脚本,反正我前端也很强。
只要把 github 搜索返回的 html 结果再过滤一次,把有相同路径和相同文件名的 div,折叠一下就可以。 |
7
hs0000t 2021-03-17 02:24:33 +08:00 via Android
收藏了,伸手党坐等油猴脚本
|
8
AndyAO 2021-03-17 07:12:31 +08:00
fork 是可以关掉的,好像是 fork:false
|
9
xdeng 2021-03-17 09:22:52 +08:00
同问。
|
10
3dwelcome OP 总结一下,最后用到了老外的去重算法,就不重复造轮子了 [url]( https://alexwlchan.net/2019/09/github-code-search-with-de-duplication/)
原本想写的油猴脚本过滤,可是 github 主页搜索,不能设置分页数量。 举个例子,用 [官网搜索]( https://github.com/search?l=C%2B%2B&q=mmdevapi.dll&type=Code) , 只能返回 10 条数据。我去除 9 条重复, 就只剩 2 条结果了。 而改用 [API 搜索]( https://api.github.com/search/code?q=mmdevapi.dll+language:cpp&access_token={xxx}) ,能直接一次返回 1000 条结果! 两者差距太大,只能放弃油猴了。 |