[TxMt] Re: hightlight macro
Scott Haneda
talklists at newgeo.com
Fri May 8 00:17:54 UTC 2009
On May 7, 2009, at 2:21 AM, baptiste auguie wrote:
> I'm using a command line to create a html snippet with embedded css
> to post on a Wiki. At the moment I run,
>
> highlight test.r -H --inline-css --fragment --enclose-pre --
> style print | pbcopy
>
> on the command line. I'd like to create a macro in TM so that I can
> get the same processing applied to selected text in a document. I've
> never written any TM macro and I don't know Ruby (or bash for that
> matter). Would you be kind enough to help me out?
I am a little confused of the command line above. Are you passing a
file to it? It looks to me like you call a command named highlight
and give it test.r as the file, with some options, and then pass that
to the pasteboard?
I think I can help you, but this is one of very few bundle items I
have made. Open your bundle editor, and click bottom left to make a
new command.
I am going to mimic your command with a simple command in the shell of
`ls -la path-name` which will just output a listing of a path.
I called my command "z".
Set Save to: "nothing"
Set the command to:
#!/bin/bash
/bin/ls -la "$TM_SELECTED_TEXT"
* I think using full paths to your binary/commands is safest
Set Input to: "Selected Text" or "Nothing"
Output to: "Replace Selected Text"
You can adjust these accordingly, ask if you have questions about the
behavior.
For the scope I put it to "text.html", which I believe means it will
apply to any html scope I am working in, but could also apply to more,
I am not entirely clear on this aspect.
If I now move to a TM document, enter in a path, select that path, and
run the bundle from the menu, it will pass the selected text into the
command. You can assign a keyboard shortcut to it as well.
A test I did was to enter in
/etc
in TM, run the "z" command, the bundle replaced "/etc" with:
lrwxr-xr-x@ 1 root admin 11 Jan 1 21:34 /etc -> private/etc
For some reason, I can not get ~ style paths to work:
~/Desktop
ls: ~/Desktop: No such file or directory
ehco $PATH works just fine, and echo ~ as a bundle command also works,
so I am a little confused on why a ~/path does not work.
Hope that helps.
--
Scott * If you contact me off list replace talklists@ with scott@ *
More information about the textmate
mailing list