如上图,我反覆测试,不管装什么插件,只要是有关「插入文件路径」的插件,出现的路径(斜线)一律为「 \ 」系统路径的方式,而不是「 / 」WEB路径,这是何解?
目前确定是Atom本身的问题。
请问你是使用什么插件来「插入文件路径」的?是否是插件的问题。
大神的回答很给力
路径自动补全這個我已經找到解答了
現在問題則是「tree-view-copy-relative-path」
我用的是「tree-view-copy-relative-path」
可以在樹型菜單的文件上點擊右鍵選擇copy relative path
然而複製出來的路徑分隔符卻是"“而不是我要的”/"
我试了下,在 Windows 下确实有这个问题。
在插件项目里 2016 年 4 月 7 日也有人提了相同的问题 Pasting with backslashes instead of forward slashes,插件作者表示他会看看但是目前没有后续。
这个插件的源码生成相对路径是使用的一个第三方的 node 组件 relative,应该是它生成的相对路径在 Windows 下有这个问题导致的。
我对 js 和 CoffeeScript 都不熟,目前简单看了一眼,粗暴的解决办法是在用 relative 生成相对路径后将 \
全替换成 /
,想了两秒钟觉得应该也不会有什么问题,反正在 Web 里空格也不使用 \
转义,正常文件(夹)名里也不会有 \
。
修改方法:
Windows 下打开 %userprofile%/.atom/packages/tree-view-copy-relative-path/lib/tree-view-copy-relative-path.coffee 文件,最后一行是
atom.clipboard.write relative(currentPath, treeViewPath)
在后面添加 replace,修改为
atom.clipboard.write relative(currentPath, treeViewPath).replace(/\\/g, '/')
少年你先试着用一阵,如果没什么问题喊我去给作者提 PR
据我所知,ATOM的开发者之一表示过,目前并不打算改变ATOM输出路径的表现,即使他想做,因为这将是一个很浩大的修改工程,同时也对ATOM造成影响,虽然ATOM是WEB开发的软件,但它有仰赖于系统的框架以及第三方组件,要改变这个问题,恐怕不容易。
非常感谢您解决了我的困扰,因为我差一点为了这个问题放弃ATOM用回Sublime Text。
PS:修改后复制出来的路径已经正常了
Glad to hear that.
我感觉如果插件能提供一个选项供切换的话,会更好点,毕竟不同的应用场景可能有不同的需求。等我有空学习一丢丢插件开发的知识给这个插件改进一下。
我将非常的期待,也许我可以提供一个思路:
写一个packages,然后监听鼠标点击或右键复制,如果得到的值是路径,那么就将所有的反协杠替换成正协杠,,可能的话,扩展这个监听,写个快捷键设置,当按下快捷键贴上的就是正斜杠的路径,不使用快捷键直接贴上则为反斜杠,这个功能定义在插件的设置选项里为可选状态。
这个好处就是可以一次性改善所有插件输出路径的问题了,英文能力好的,帮个忙提交给ATOM官方给那些高手们折腾吧。
如果你在使用 Windows 的话,我觉得这并不算 Bug,因为的确在 Windows 下路径分割符是 \ 而不是 /,当然,更好的方案是添加一个选项来切换这个行为。
同样的问题,我最终花了一个晚上的时间,看了下如何写插件才解决。