[TxMt] BibDesk
Thomas Schröder
hydrochlorix at gmx.net
Thu Apr 14 09:01:43 UTC 2005
Am 13.04.2005 um 23:10 schrieb Allan Odgaard:
> On Apr 13, 2005, at 16:26, Thomas Schröder wrote:
>
>> 2. BibDesk gives the reference in the following format: "cite-key %
>> author, title" e.g.
>
> I was indeed a bit puzzled by what it returned :)
:-)
> Okay, here's my take on it:
>
> osascript -e 'tell app "TextMate" to activate' &>/dev/null &
> awk <<<$res '{print $1}' | tr -d \\n
Ah, great! OK, I think I'm starting to get the hang of this.
> Or if you want to keep the comment but insert a bracket:
> perl <<<$res -pe 's/^(\w+)/$1}/'
That doesn't work for me because some of my cite-keys have appendixes
like "-PVA" for a certain preparation method and the cite-key gets cut
off at the "-". I prefer not to have the comments anyway, so I opt for
the first version, so don't bother to fix this. At least not for me :-)
> So the entire command (with the condition on selection) becomes:
> ----------8<----------
> if [[ -z $TM_SELECTED_TEXT ]]
> then phrase=$TM_CURRENT_WORD
> else phrase=$TM_SELECTED_TEXT
> fi
>
> res=`osascript <<EOF
> tell application "Bibdesk" to set candidates to search for "$phrase"
> with for completion
> tell application "System Events"
> activate
> choose from list candidates
> end tell
> EOF`
> osascript -e 'tell app "TextMate" to activate' &>/dev/null &
>
> res=`perl <<<$res -pe 's/^(\w+)/$1}/'`
> if [[ -z $TM_SELECTED_TEXT ]]
> then echo -n ${res:${#TM_CURRENT_WORD}}
> else echo -n $res
> fi
Thanks for the effort, but I think I will stick with my new version
which by the way incorporates your awk-pipe because that works better
for me. Your new version does indeed handle things correctly for
strings that are not part of the cite-key but only if you select the
string, otherwise you still get a mix-up. For the time being this is
too confusing for me even though the point still stands that it's way
more elegant not to have to select some text. Anyways, here's my new
take on this:
---
res=`osascript <<EOF
tell application "Bibdesk" to set candidates to search for
"$TM_SELECTED_TEXT" with for completion
tell application "System Events"
activate
choose from list candidates
end tell
EOF`
osascript -e 'tell app "TextMate" to activate' &>/dev/null &
awk <<<$res '{print $1}' | tr -d \\n
---
As far as I'm concerned, everything works fine, I have what I wanted,
so thank you very much!
Best wishes, Thomas
More information about the textmate
mailing list