gpt4 book ai didi

refresh - TextMate:无需先保存文档即可在 Firefox 中预览?

转载 作者:行者123 更新时间:2023-12-04 07:08:35 27 4
gpt4 key购买 nike

使用 TextMate:

是否可以分配一个快捷方式来预览/刷新当前编辑的 HTML 文档,例如,Firefox,而不必先点击保存?

我正在寻找与 TextMate 的内置 Web 预览窗口相同的功能,但我更喜欢外部浏览器而不是 TextMate 的。 (主要是为了使用 JavaScript 控制台,例如 Firebug)。

是否可以通过 shell 将当前未保存的文档通过管道传输,然后在 Firefox 中预览。如果是这样,是否有人为此拥有 TextMate 命令,愿意分享它?

最佳答案

不平凡。最简单的方法是将当前文件写入临时目录,然后启动该文件.. 但是,这会破坏任何相关链接(图像、脚本、CSS 文件)

添加捆绑包:

Input: Entire Document
Output: Discard
Scope Selector: source.html

和脚本:
#!/usr/bin/env python2.5

import os
import sys
import random
import tempfile
import subprocess

fname = os.environ.get("TM_FILEPATH", "Untitled %s.html" % random.randint(100, 1000))
fcontent = sys.stdin.read()

fd, name = tempfile.mkstemp()
print name

open(name, "w+").write(fcontent)

print subprocess.Popen(["open", "-a", "Firefox", name]).communicate()

正如我所说,这不适用于相对资源链接,这可能是一个大问题。另一种选择是从退出的“刷新浏览器”命令中修改以下代码行:
osascript <<'APPLESCRIPT'
tell app "Firefox" to Get URL "JavaScript:window.location.reload();" inside window 1
APPLESCRIPT

它可以清除页面,而不是让 javascript 重新加载页面,并使用一系列 document.write() 写入当前文档。调用。这样做的问题是您不能保证当前文档是您要替换的文档。Windows 1 可能已更改为另一个站点等,尤其是选项卡式浏览。

最后,一个没有太大缺点的选项:使用版本控制,尤其是“分布式”版本控制之一,您不必将更改发送到远程服务器 - git、mercurial、darcs、bazaar 等(也都有 TextMate 集成)

如果您的代码处于版本控制中,那么您是否在预览前保存并不重要,如果您破坏某些内容并丢失撤消缓冲区,您也可以随时返回到上次提交的版本。

关于refresh - TextMate:无需先保存文档即可在 Firefox 中预览?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/723615/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com