2017-04-11 13 views
1

は、すべてのリンクをチェックしCMD + 制御 + KMarkup -> Check -> Document Linksショートカット下コマンドがあります。AppleScriptとBBEditではどのようにリンクを確認できますか? BBEditで

enter image description here

をしかし、私はプロジェクトに対してスクリプトにしようとすると::私はBBEdit > HTML Scripting -> check links下辞書を見てみると、それは示し

set theResult to check links of active document of project window 1 

私はチェックしようとしたとき、私は、itemのエラーが出ますで、ファイル名に基づいて:

set foobar to (name of active document of project window 1) as string 
set theResult to check links of foobar 

私がしようとした場合、私はまだ、同じエラーが出ます:

set projectPath to file of project document 1 
set theResult to check links of projectPath 

返品は{}となります。 with show resultsを追加しないと問題にして考えると、私はそれを変更:

set theResult to check links of projectPath with show results 

が、私はGoogleのを検索すると、私はそれが可能かどう上の解決策を見つけることができないんだactivate

のリターンを得ますHTMLファイル内のリンクがコンテンツをスクリプト化するときに有効であることを条件にブール値を返します。だから私の質問は、check linksでBBEditでリンクが有効であることをAppleScriptに教えてもらえますか?

+0

チェックリンクがファイルをチェックし、アクティブな文書はファイルと見なされていません。あなたはそれを実際のファイルとして指して確認しようとしましたか? – Chilly

+0

@Chillyはい私はそれを試して編集します。 –

答えて

1

としてハンドラを呼び出す:

tell application "BBEdit" 
    set theFilePathOfFrontProject to file of text document 1 -- get the path of the selected file in the front project window 
    set theResult to (check links of theFilePathOfFrontProject) is {} 
    if theResult then 
     display dialog "All links appear to be valid" 
    else 
     display dialog "Some links appear to be not valid" 
    end if 
end tell 

情報:

set projectPath to file of project document 1を、このcomプロジェクトのパスを返す(このファイルのチェックリンクは常に空のリストを返します)、パスはfile "fullpath:someName.bbprojectd"になります。これはプロジェクト内のHTMLファイルのパスではありません。プロジェクトのすべてのファイルのパスを取得するには

set allFilePaths to project collections of project document 1 -- list of paths

+0

似たようなものを使ってしまいましたが、もっと多くの行が必要でしたが、最終的にはリストが空であれば条件付きチェックでしたが、解決策には1を加えました –

1

私はこれを前回使用したと考えています。私は飛行機に搭乗しようとしているので、構文が混乱している可能性があります。

set theFile to ((path to documents folder) as string) & "test.html" 
set theResult to check links of file theFile 

システムイベントを使用してキーを押すには、別のtellブロックを使用するか、そのようなハンドラを作成します。その後、

on checkLinks() 
    tell application "System Events" 
     keystroke "k" using {command down, control down} 
    end tell 
end checkLinks 

アクティブなドキュメントのファイルからのリンクを確認するには、通常

my checkLinks() 
関連する問題