I use an applescript<br>
<br>
--tell application "Safari" to set s to source of document 1<br>
tell application "Safari" to do JavaScript "document.body.outerHTML;" in first document<br>
set s to the result<br>
set filename to random number from 1 to 10000<br>
<br>
set the temp_file to ((path to the temporary items folder) as string) & filename & ".html"<br>
open for access temp_file with write permission<br>
write s to (temp_file as alias) as string<br>
close temp_file<br>
<br>
<br>
set f to POSIX path of temp_file<br>
set command to "~/bin/tm -a '" & f & "'"<br>
do shell script command<br>
<br>
<br><br><div><span class="gmail_quote">On 9/23/05, <b class="gmail_sendername">Andreas Wahlin</b> <<a href="mailto:andreaswahlin@bredband.net">andreaswahlin@bredband.net</a>> wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
How can I get my "user" accont, I want it to save to <div>~/Desktop/</div><div>but I tried that and it didn't work ...</div><div><br></div><div>Andreas</div><div><br><div><div><span class="e" id="q_10682ef93534a25f_1">
<div>On Sep 20, 2005, at 19:44 , Fred B. wrote:</div><br></span></div><blockquote type="cite"><div><span class="e" id="q_10682ef93534a25f_3"><br><div><div>On 20 sept. 05, at 18:57, Eric Peden wrote:</div><br><blockquote type="cite">
<div style="margin: 0px;">On Tue, Sep 20, 2005 at 01:47:49PM +0200, José Campos wrote:</div> <br><blockquote type="cite"><div style="margin: 0px;"><span>   </span>Is it yet, or will it be possible to get a item like this in
</div><div style="margin: 0px;">Safari->Services : "Edit page source in TextMate"?</div> <br></blockquote><div style="margin: 0px; min-height: 14px;"><br></div><div style="margin: 0px;">Did you see this?</div>
<div style="margin: 0px; min-height: 14px;"><br></div><div style="margin: 0px;"><a href="http://comox.textdrive.com/pipermail/textmate/2005-September/005718.html" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">
http://comox.textdrive.com/pipermail/textmate/2005-September/005718.html</a></div><div style="margin: 0px; min-height: 14px;"><br></div><div style="margin: 0px;">You could use the AppleScript menu to get an actual menu item for it, as
</div><div style="margin: 0px;">opposed to just having a keystroke. At that point, the only difference</div><div style="margin: 0px;">between the AppleScript solution and a service would be which menu it</div><div style="margin: 0px;">
appeared on. ;)</div><div style="margin: 0px; min-height: 14px;"><br></div></blockquote><br></div><div>Here is a more sophisticated version, it saves the source of the front page of Safari in a temp folder then opens it in TM.
</div><div>If there is no window in Safari or if it's empty, it warns you.</div><div>If the name of the page contains slashs, it replaces them with colons.</div><div><br></div><div>There's maybe better ways to achieve that, but that's I come up with after encountering numerous problems.
</div><div>AS is useful but can really suck!</div><div><br></div><div style="margin: 0px 0px 0px 41.6px; text-indent: -41px;"><font color="#0000ff" face="Verdana"><b>tell</b></font><font face="Verdana"> </font><font color="#0000ff" face="Verdana">
application</font><font face="Verdana"> "Safari"</font></div><div style="margin: 0px 0px 0px 83.2px; text-indent: -83px;"><span><font face="Verdana">    </font></span><font color="#0000ff" face="Verdana"><b>if</b>
</font><font face="Verdana"> </font><font color="#0000ff" face="Verdana"><b>not</b></font><font face="Verdana"> (</font><font color="#0000ff" face="Verdana">exists</font><font face="Verdana"> </font><font color="#0000ff" face="Verdana">
document</font><font face="Verdana"> 1) </font><font color="#0000ff" face="Verdana"><b>then</b></font></div><div style="margin: 0px 0px 0px 124.8px; text-indent: -124px;"><span><font face="Verdana">        </font></span><font color="#0000ff" face="Verdana">
display dialog</font><font face="Verdana"> "You need to open a web location first!" </font><font color="#0000ff" face="Verdana">buttons</font><font face="Verdana"> {"OK"} </font><font color="#0000ff" face="Verdana">
default button</font><font face="Verdana"> 1</font></div><div style="margin: 0px 0px 0px 124.8px; text-indent: -124px;"><span><font face="Verdana">        </font></span><font color="#0000ff" face="Verdana"><b>return</b></font>
</div><div style="margin: 0px 0px 0px 83.2px; text-indent: -83px;"><span><font face="Verdana">    </font></span><font color="#0000ff" face="Verdana"><b>end</b></font><font face="Verdana"> </font><font color="#0000ff" face="Verdana">
<b>if</b></font></div><div style="margin: 0px 0px 0px 83.2px; text-indent: -83px;"><span><font face="Verdana">    </font></span><font color="#0000ff" face="Verdana"><b>set</b></font><font face="Verdana"> </font><font color="#408000" face="Verdana">
mySource</font><font face="Verdana"> </font><font color="#0000ff" face="Verdana"><b>to</b></font><font face="Verdana"> </font><font color="#0000ff" face="Verdana"><b>the</b></font><font face="Verdana"> </font><font color="#0000ff" face="Verdana">
source</font><font face="Verdana"> </font><font color="#0000ff" face="Verdana"><b>of</b></font><font face="Verdana"> </font><font color="#0000ff" face="Verdana"><b>front</b></font><font face="Verdana"> </font><font color="#0000ff" face="Verdana">
document</font><font face="Verdana"> </font><font color="#0000ff" face="Verdana"><b>as</b></font><font face="Verdana"> </font><font color="#0000ff" face="Verdana">text</font></div><div style="margin: 0px 0px 0px 83.2px; text-indent: -83px;">
<span><font face="Verdana">    </font></span><font color="#0000ff" face="Verdana"><b>if</b></font><font face="Verdana"> (</font><font color="#0000ff" face="Verdana">length</font><font face="Verdana"> </font><font color="#0000ff" face="Verdana">
<b>of</b></font><font face="Verdana"> </font><font color="#408000" face="Verdana">mySource</font><font face="Verdana"> </font><font color="#0000ff" face="Verdana"><b>is</b></font><font face="Verdana"> 0) </font><font color="#0000ff" face="Verdana">
<b>then</b></font></div><div style="margin: 0px 0px 0px 124.8px; text-indent: -124px;"><span><font face="Verdana">        </font></span><font color="#0000ff" face="Verdana">display dialog</font><font face="Verdana"> "You need to open a web location first!" 
</font><font color="#0000ff" face="Verdana">buttons</font><font face="Verdana"> {"OK"} </font><font color="#0000ff" face="Verdana">default button</font><font face="Verdana"> 1</font></div><div style="margin: 0px 0px 0px 124.8px; text-indent: -124px;">
<span><font face="Verdana">        </font></span><font color="#0000ff" face="Verdana"><b>return</b></font></div><div style="margin: 0px 0px 0px 83.2px; text-indent: -83px;"><span><font face="Verdana">    </font></span><font color="#0000ff" face="Verdana">
<b>end</b></font><font face="Verdana"> </font><font color="#0000ff" face="Verdana"><b>if</b></font></div><div style="margin: 0px 0px 0px 83.2px; text-indent: -83px;"><span><font face="Verdana">    </font></span><font color="#0000ff" face="Verdana">
<b>set</b></font><font face="Verdana"> </font><font color="#408000" face="Verdana">myName</font><font face="Verdana"> </font><font color="#0000ff" face="Verdana"><b>to</b></font><font face="Verdana"> </font><font color="#0000ff" face="Verdana">
name</font><font face="Verdana"> </font><font color="#0000ff" face="Verdana"><b>of</b></font><font face="Verdana"> </font><font color="#0000ff" face="Verdana"><b>front</b></font><font face="Verdana"> </font><font color="#0000ff" face="Verdana">
document</font><font face="Verdana"> </font><font color="#0000ff" face="Verdana"><b>as</b></font><font face="Verdana"> </font><font color="#0000ff" face="Verdana">text</font></div><div style="margin: 0px 0px 0px 41.6px; text-indent: -41px;">
<font color="#0000ff" face="Verdana"><b>end</b></font><font face="Verdana"> </font><font color="#0000ff" face="Verdana"><b>tell</b></font></div><div style="margin: 0px 0px 0px 41.6px; text-indent: -41px; min-height: 15px;">
<br></div><div style="margin: 0px 0px 0px 41.6px; text-indent: -41px;"><font color="#0000ff" face="Verdana"><b>try</b></font></div><div style="margin: 0px 0px 0px 83.2px; text-indent: -83px;"><span><font face="Verdana">    
</font></span><font color="#0000ff" face="Verdana"><b>tell</b></font><font face="Verdana"> </font><font color="#0000ff" face="Verdana">application</font><font face="Verdana"> "TextMate" </font><font color="#0000ff" face="Verdana">
<b>to</b></font><font face="Verdana"> </font><font color="#0000ff" face="Verdana">activate</font></div><div style="margin: 0px 0px 0px 83.2px; text-indent: -83px; min-height: 14px;"><span><font face="Verdana">    </font></span>
<font face="Verdana"><br></font></div><div style="margin: 0px 0px 0px 83.2px; text-indent: -83px;"><span><font face="Verdana">    </font></span><font color="#0000ff" face="Verdana"><b>set</b></font><font face="Verdana"> </font>
<font color="#408000" face="Verdana">myName</font><font face="Verdana"> </font><font color="#0000ff" face="Verdana"><b>to</b></font><font face="Verdana"> </font><font color="#408000" face="Verdana">replace_chars</font><font face="Verdana">
(</font><font color="#408000" face="Verdana">myName</font><font face="Verdana">, "http://", "")</font></div><div style="margin: 0px 0px 0px 83.2px; text-indent: -83px;"><span><font face="Verdana">    </font>
</span><font color="#0000ff" face="Verdana"><b>set</b></font><font face="Verdana"> </font><font color="#408000" face="Verdana">myName</font><font face="Verdana"> </font><font color="#0000ff" face="Verdana"><b>to</b></font>
<font face="Verdana"> </font><font color="#408000" face="Verdana">replace_chars</font><font face="Verdana">(</font><font color="#408000" face="Verdana">myName</font><font face="Verdana">, "/", ":")</font>
</div><div style="margin: 0px 0px 0px 83.2px; text-indent: -83px; min-height: 14px;"><span><font face="Verdana">    </font></span><font face="Verdana"><br></font></div><div style="margin: 0px 0px 0px 83.2px; text-indent: -83px;">
<span><font face="Verdana">    </font></span><font color="#0000ff" face="Verdana"><b>if</b></font><font face="Verdana"> (</font><font color="#408000" face="Verdana">myName</font><font face="Verdana"> </font><font color="#0000ff" face="Verdana">
<b>ends with</b></font><font face="Verdana"> ".html") </font><font color="#0000ff" face="Verdana"><b>or</b></font><font face="Verdana"> (</font><font color="#408000" face="Verdana">myName</font><font face="Verdana">
 </font><font color="#0000ff" face="Verdana"><b>ends with</b></font><font face="Verdana"> ".htm") </font><font color="#0000ff" face="Verdana"><b>then</b></font></div><div style="margin: 0px 0px 0px 124.8px; text-indent: -124px;">
<span><font face="Verdana">        </font></span><font color="#0000ff" face="Verdana"><b>set</b></font><font face="Verdana"> </font><font color="#408000" face="Verdana">myPath</font><font face="Verdana"> </font><font color="#0000ff" face="Verdana">
<b>to</b></font><font face="Verdana"> "/tmp/" & </font><font color="#408000" face="Verdana">myName</font></div><div style="margin: 0px 0px 0px 83.2px; text-indent: -83px;"><span><font face="Verdana">    </font>
</span><font color="#0000ff" face="Verdana"><b>else</b></font></div><div style="margin: 0px 0px 0px 124.8px; text-indent: -124px;"><span><font face="Verdana">        </font></span><font color="#0000ff" face="Verdana"><b>set
</b></font><font face="Verdana"> </font><font color="#408000" face="Verdana">myPath</font><font face="Verdana"> </font><font color="#0000ff" face="Verdana"><b>to</b></font><font face="Verdana"> "/tmp/" & </font>
<font color="#408000" face="Verdana">myName</font><font face="Verdana"> & ".html"</font></div><div style="margin: 0px 0px 0px 83.2px; text-indent: -83px;"><span><font face="Verdana">    </font></span><font color="#0000ff" face="Verdana">
<b>end</b></font><font face="Verdana"> </font><font color="#0000ff" face="Verdana"><b>if</b></font></div><div style="margin: 0px 0px 0px 83.2px; text-indent: -83px; min-height: 14px;"><span><font face="Verdana">    </font>
</span><font face="Verdana"><br></font></div><div style="margin: 0px 0px 0px 83.2px; text-indent: -83px;"><span><font face="Verdana">    </font></span><font color="#0000ff" face="Verdana">do shell script</font><font face="Verdana">
 "rm -f " & </font><font color="#0000ff" face="Verdana">quoted form</font><font face="Verdana"> </font><font color="#0000ff" face="Verdana"><b>of</b></font><font face="Verdana"> </font><font color="#408000" face="Verdana">
myPath</font></div><div style="margin: 0px 0px 0px 83.2px; text-indent: -83px;"><span><font face="Verdana">    </font></span><font color="#0000ff" face="Verdana">do shell script</font><font face="Verdana"> "echo " & 
</font><font color="#0000ff" face="Verdana">quoted form</font><font face="Verdana"> </font><font color="#0000ff" face="Verdana"><b>of</b></font><font face="Verdana"> </font><font color="#408000" face="Verdana">mySource</font>
<font face="Verdana"> & " >> " & </font><font color="#0000ff" face="Verdana">quoted form</font><font face="Verdana"> </font><font color="#0000ff" face="Verdana"><b>of</b></font><font face="Verdana">
 </font><font color="#408000" face="Verdana">myPath</font></div><div style="margin: 0px 0px 0px 83.2px; text-indent: -83px;"><span><font face="Verdana">    </font></span><font color="#0000ff" face="Verdana">do shell script
</font><font face="Verdana"> "open -a TextMate " & </font><font color="#0000ff" face="Verdana">quoted form</font><font face="Verdana"> </font><font color="#0000ff" face="Verdana"><b>of</b></font><font face="Verdana">
 </font><font color="#408000" face="Verdana">myPath</font></div><div style="margin: 0px 0px 0px 41.6px; text-indent: -41px;"><font color="#0000ff" face="Verdana"><b>end</b></font><font face="Verdana"> </font><font color="#0000ff" face="Verdana">
<b>try</b></font></div><div style="margin: 0px 0px 0px 41.6px; text-indent: -41px; min-height: 15px;"><br></div><div style="margin: 0px 0px 0px 41.6px; text-indent: -41px;"><font color="#0000ff" face="Verdana"><b>on</b></font>
<font face="Verdana"> </font><font color="#408000" face="Verdana">replace_chars</font><font face="Verdana">(</font><font color="#408000" face="Verdana">this_text</font><font face="Verdana">, </font><font color="#408000" face="Verdana">
search_string</font><font face="Verdana">, </font><font color="#408000" face="Verdana">replacement_string</font><font face="Verdana">)</font></div><div style="margin: 0px 0px 0px 83.2px; text-indent: -83px;"><span><font face="Verdana">
    </font></span><font color="#0000ff" face="Verdana"><b>set</b></font><font face="Verdana"> </font><font color="#0000ff" face="Verdana">AppleScript</font><font face="Verdana">'s </font><font color="#0000ff" face="Verdana">
text item delimiters</font><font face="Verdana"> </font><font color="#0000ff" face="Verdana"><b>to</b></font><font face="Verdana"> </font><font color="#0000ff" face="Verdana"><b>the</b></font><font face="Verdana"> </font>
<font color="#408000" face="Verdana">search_string</font></div><div style="margin: 0px 0px 0px 83.2px; text-indent: -83px;"><span><font face="Verdana">    </font></span><font color="#0000ff" face="Verdana"><b>set</b></font>
<font face="Verdana"> </font><font color="#0000ff" face="Verdana"><b>the</b></font><font face="Verdana"> </font><font color="#408000" face="Verdana">item_list</font><font face="Verdana"> </font><font color="#0000ff" face="Verdana">
<b>to</b></font><font face="Verdana"> </font><font color="#0000ff" face="Verdana"><b>every</b></font><font face="Verdana"> </font><font color="#0000ff" face="Verdana">text item</font><font face="Verdana"> </font><font color="#0000ff" face="Verdana">
<b>of</b></font><font face="Verdana"> </font><font color="#408000" face="Verdana">this_text</font></div><div style="margin: 0px 0px 0px 83.2px; text-indent: -83px;"><span><font face="Verdana">    </font></span><font color="#0000ff" face="Verdana">
<b>set</b></font><font face="Verdana"> </font><font color="#0000ff" face="Verdana">AppleScript</font><font face="Verdana">'s </font><font color="#0000ff" face="Verdana">text item delimiters</font><font face="Verdana"> </font>
<font color="#0000ff" face="Verdana"><b>to</b></font><font face="Verdana"> </font><font color="#0000ff" face="Verdana"><b>the</b></font><font face="Verdana"> </font><font color="#408000" face="Verdana">replacement_string</font>
</div><div style="margin: 0px 0px 0px 83.2px; text-indent: -83px;"><span><font face="Verdana">    </font></span><font color="#0000ff" face="Verdana"><b>set</b></font><font face="Verdana"> </font><font color="#408000" face="Verdana">
this_text</font><font face="Verdana"> </font><font color="#0000ff" face="Verdana"><b>to</b></font><font face="Verdana"> </font><font color="#0000ff" face="Verdana"><b>the</b></font><font face="Verdana"> </font><font color="#408000" face="Verdana">
item_list</font><font face="Verdana"> </font><font color="#0000ff" face="Verdana"><b>as</b></font><font face="Verdana"> </font><font color="#0000ff" face="Verdana">string</font></div><div style="margin: 0px 0px 0px 83.2px; text-indent: -83px;">
<span><font face="Verdana">    </font></span><font color="#0000ff" face="Verdana"><b>set</b></font><font face="Verdana"> </font><font color="#0000ff" face="Verdana">AppleScript</font><font face="Verdana">'s </font><font color="#0000ff" face="Verdana">
text item delimiters</font><font face="Verdana"> </font><font color="#0000ff" face="Verdana"><b>to</b></font><font face="Verdana"> ""</font></div><div style="margin: 0px 0px 0px 83.2px; text-indent: -83px;"><span>
<font face="Verdana">    </font></span><font color="#0000ff" face="Verdana"><b>return</b></font><font face="Verdana"> </font><font color="#408000" face="Verdana">this_text</font></div><div style="margin: 0px 0px 0px 41.6px; text-indent: -41px;">
<font color="#0000ff" face="Verdana"><b>end</b></font><font face="Verdana"> </font><font color="#408000" face="Verdana">replace_chars</font></div><div style="text-indent: -41px;"><br></div><div><br></div><div><br></div><div>
<br></div><div><br></div><div style="margin: 0px; min-height: 14px;"><br></div></span></div><div style="margin: 0px;">______________________________________________________________________</div><span class="q"><div style="margin: 0px;">
For new threads USE THIS: <a href="mailto:textmate@lists.macromates.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">textmate@lists.macromates.com</a></div><div style="margin: 0px;">(threading gets destroyed and the universe will collapse if you don't)
</div><div style="margin: 0px;"><a href="http://lists.macromates.com/mailman/listinfo/textmate" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://lists.macromates.com/mailman/listinfo/textmate</a>
</div> </span></blockquote></div><br></div>
<br><br>______________________________________________________________________<br>For new threads USE THIS: <a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:textmate@lists.macromates.com">textmate@lists.macromates.com
</a><br>(threading gets destroyed and the universe will collapse if you don't)<br><a onclick="return top.js.OpenExtLink(window,event,this)" href="http://lists.macromates.com/mailman/listinfo/textmate" target="_blank">http://lists.macromates.com/mailman/listinfo/textmate
</a><br><br></blockquote></div><br>