Microsoft Word for Macの「校閲」機能で変更履歴機能やコメント機能を使っている場合、表示が「変更履歴/コメントなし」以外だと、デフォルトの印刷対象が「変更とコメントの内容を含む文書」になります。
私は依然、プリントダイアログを開いて印刷対象を「文書」にするという一連の操作をAppleScriptで自動化するサービスに⌘Pを割り当てる方法で、一発で文書本体の印刷を行えるようにしました。
→ MacのWordで、⌘Pで変更・コメントを含まない文書を印刷する - Qiita
ただ、このスクリプトはmacOS 13 Venturaではプリントダイアログの形式が変わってしまい、うまく動作しません。なんかWord用の設定部分をうまいこと展開できないのです。
で、前回のサービスを作っていて最後に気づいたのが、編集画面で変更履歴・コメントを表示していなければ印刷対象も「文書」になる、ということ。
そんで、変更履歴・コメントの表示・非表示は、メニューバーの「表示>コメントと注釈」のON/OFFで切り替えられます。
てことは、印刷開始時にメニューバーの「コメントと注釈」をOFFにして、もし元々これがONだったならプリントダイアログが閉じた時に再度ONにすれば良さそうです。
たとえばこんな感じのスクリプトで。
(* Wordで印刷する際、デフォルトの印刷対象は編集画面での変更履歴等表示状況に依存するので、変更履歴等を非表示にしてからプリントダイアログを開く *)
set isShowing to false
tell application "Microsoft Word"
activate
end tell
tell application "System Events"
tell process "Microsoft Word"
tell menu item "コメントと注釈" of menu 1 of menu bar item "表示" of menu bar 1
if value of attribute "AXMenuItemMarkChar" is "✓" then (* コメント表示中なら *)
set isShowing to true
pick (* "コメントと注釈"を選択し、コメントを非表示にする。 *)
end if
end tell
(* プリントダイアログを表示 *)
pick menu item "プリント..." of menu "ファイル" of menu bar item "ファイル" of menu bar 1
(* もし元々コメント表示してたら、プリントダイアログを閉じた時にコメント表示に戻す *)
if isShowing then
repeat while (exists window "プリント")
delay 1
end repeat
pick menu item "コメントと注釈" of menu 1 of menu bar item "表示" of menu bar 1
end if
end tell
end tell
余談ですが、どうもON/OFFのあるメニュー項目の現在のステータスは、menu item
のproperty
では取得できないらしく、value of attribute "AXMenuItemMarkChar" of menu item
の値が"✓"
か否かで判定する力技を使うようです。
(参考:https://stackoverflow.com/questions/69030/in-applescript-how-can-i-find-out-if-a-menu-item-is-selected-focused )
で、このスクリプトを内容とする「サービス」をAutomatorで作ります。
あとはこの「サービス」のキーボードショートカットを⌘Pに、Word標準の「プリント...」のキーボードショートカットを適当に⌥⌘Pあたりに設定すればOKです。ちなみにMontrey以前ではどちらも「システム設定>キーボード>ショートカット>アプリケーション」から設定していたのですが、Venturaでは「サービス」へのキーボードショートカットは、「システム設定>キーボード>キーボードショートカット>サービス>一般」からに変わったようです。(Word標準の「プリント...」は従来通り)
なお、実際に動作させるには「システム設定>プライバシーとセキュリティ>アクセシビリティ」でMicrosoft Wordに「コンピュータの制御を許可」する必要があるのは従来通り。
ということで。プリントダイアログが閉じるまでServiceが無限ループして待つというちょっとした強引さはあるものの、プリントダイアログを開いてからぽちぽちクリックするよりもスマートな方法で、文書のみの印刷が可能になりました。たぶん古いバージョンのmacOSでも動くと思います。Enjoy!