Menu

Skip to content
AppleScriptの穴
  • Home
  • Products
  • Books
  • Docs
  • Events
  • Forum
  • About This Blog
  • License
  • 仕事依頼

AppleScriptの穴

Useful & Practical AppleScript archive. Click '★Click Here to Open This Script' Link to download each AppleScript

表示中のCotEditor書類の「次」のファイルを縦書きでオープン

Posted on 2月 6, 2018 by Takaaki Naganoya
AppleScript名:表示中のCotEditor書類の「次」のファイルを縦書きでオープン
— Created 2017-12-15 by Takaaki Naganoya
— 2017 Piyomaru Software
use AppleScript version "2.4"
use scripting additions
use framework "Foundation"
use bPlus : script "BridgePlus"
–http://piyocast.com/as/archives/5034

property |NSURL| : a reference to current application’s |NSURL|
property NSArray : a reference to current application’s NSArray
property NSString : a reference to current application’s NSString
property SMSForder : a reference to current application’s SMSForder
property NSPredicate : a reference to current application’s NSPredicate
property NSFileManager : a reference to current application’s NSFileManager
property NSMutableArray : a reference to current application’s NSMutableArray
property NSSortDescriptor : a reference to current application’s NSSortDescriptor
property NSURLIsPackageKey : a reference to current application’s NSURLIsPackageKey
property NSURLIsDirectoryKey : a reference to current application’s NSURLIsDirectoryKey
property NSDirectoryEnumerationSkipsHiddenFiles : a reference to current application’s NSDirectoryEnumerationSkipsHiddenFiles
property NSDirectoryEnumerationSkipsPackageDescendants : a reference to current application’s NSDirectoryEnumerationSkipsPackageDescendants
property NSDirectoryEnumerationSkipsSubdirectoryDescendants : a reference to current application’s NSDirectoryEnumerationSkipsSubdirectoryDescendants

load framework

tell application "CotEditor"
  set dCount to count every document
  
if dCount = 0 then return
  
  
tell front document
    set curPath to path
  end tell
  
  
tell window 1
    set aBounds to bounds
  end tell
end tell

set aPath to NSString’s stringWithString:curPath
set fileName to (aPath’s lastPathComponent()) –ファイル名
set pathExtension to aPath’s pathExtension() as string
set parentFol to (aPath’s stringByDeletingLastPathComponent()) as string —親フォルダ

–同じフォルダから同じ拡張子のファイルのファイル名を取得
set fList to my getFilesByIncludedStringInName:(pathExtension) fromDirectory:(parentFol) exceptPackages:(true)

–昇順ソート
set aArray to NSArray’s arrayWithArray:fList
set desc1 to NSSortDescriptor’s sortDescriptorWithKey:"self" ascending:true selector:"localizedCaseInsensitiveCompare:"
set bArray to aArray’s sortedArrayUsingDescriptors:{desc1}

–ファイル名検索
set aIndex to (SMSForder’s indexesOfItem:fileName inArray:bArray inverting:false) as list
if aIndex = {} then
  display notification "Error: File Not Found"
  
return
end if

set bIndex to (contents of first item of aIndex) + 1 + 1 –0 based to 1 based conversion & next one
set aLen to length of (bArray as list)
if bIndex > aLen then
  display notification "Error: Out of bounds"
  
return
end if

set newFile to contents of item bIndex of (bArray as list)
set newPath to parentFol & "/" & newFile

tell application "CotEditor"
  set oldDoc to front document
  
  
open (POSIX file newPath) as alias
  
tell window 1
    set bounds to aBounds
  end tell
  
  
close oldDoc without saving
end tell

makeWinVertical() of me –縦書き表示

–指定フォルダ内の指定文字列を含むファイル名のlistを抽出する
on getFilesByIncludedStringInName:(fileNameStr as string) fromDirectory:(sourceFolder) exceptPackages:(packageF as boolean)
  set fileManager to NSFileManager’s defaultManager()
  
set aURL to |NSURL|’s fileURLWithPath:sourceFolder
  
set theOptions to (NSDirectoryEnumerationSkipsPackageDescendants as integer) + (NSDirectoryEnumerationSkipsHiddenFiles as integer) + (NSDirectoryEnumerationSkipsSubdirectoryDescendants as integer)
  
set directoryContents to fileManager’s contentsOfDirectoryAtURL:aURL includingPropertiesForKeys:{} options:theOptions |error|:(missing value)
  
set findPredicates to NSPredicate’s predicateWithFormat_("lastPathComponent CONTAINS %@", fileNameStr)
  
set foundItemList to directoryContents’s filteredArrayUsingPredicate:findPredicates
  
  
–Remove Folders From found URL Array
  
set anArray to NSMutableArray’s alloc()’s init()
  
repeat with i in foundItemList
    set j to contents of i
    
set {theResult, isDirectory} to (j’s getResourceValue:(reference) forKey:(NSURLIsDirectoryKey) |error|:(missing value))
    
    
–Collect files
    
if (isDirectory as boolean = false) then
      (anArray’s addObject:j)
    else if (packageF = false) then
      –Allow Package files?
      
set {theResult, isPackage} to (j’s getResourceValue:(reference) forKey:(NSURLIsPackageKey) |error|:(missing value))
      
if (isPackage as boolean) = true then
        (anArray’s addObject:j)
      end if
    end if
    
  end repeat
  
  
return (anArray’s valueForKey:"lastPathComponent") as list
end getFilesByIncludedStringInName:fromDirectory:exceptPackages:

–Make CotEditor’s front window to Vertical display mode (Tategaki)
on makeWinVertical()
  activate application "CotEditor"
  
tell application "System Events"
    tell process "CotEditor"
      try
        click menu item "縦書きで表示" of menu 1 of menu bar item "フォーマット" of menu bar 1
      end try
    end tell
  end tell
end makeWinVertical

★Click Here to Open This Script 

Posted in GUI Scripting 未分類 | Tagged 10.11savvy 10.12savvy 10.13savvy CotEditor | Leave a comment

CotEditorですべてのドキュメントを破棄してクローズ

Posted on 2月 6, 2018 by Takaaki Naganoya
AppleScript名:CotEditorですべてのドキュメントを破棄してクローズ
tell application "CotEditor"
  tell every document
    close without saving
  end tell
end tell

★Click Here to Open This Script 

Posted in 未分類 | Tagged 10.11savvy 10.12savvy 10.13savvy CotEditor | Leave a comment

CotEditorで指定テキストによる新規ドキュメント作成

Posted on 2月 6, 2018 by Takaaki Naganoya
AppleScript名:CotEditorで指定テキストによる新規ドキュメント作成
set aCon to "あ"
makeNewCotEditorDoc(aCon) of me

on makeNewCotEditorDoc(aCon)
  tell application "CotEditor"
    activate
    
set newDoc to make new document
    
tell newDoc
      set contents to aCon
    end tell
  end tell
end makeNewCotEditorDoc

★Click Here to Open This Script 

Posted in 未分類 | Tagged 10.11savvy 10.12savvy 10.13savvy CotEditor | Leave a comment

CotEditorでPOSIX pathをオープンする

Posted on 2月 6, 2018 by Takaaki Naganoya
AppleScript名:CotEditorでPOSIX pathをオープンする
set aPath to "/System/Library/Frameworks/Quartz.framework" & "/Versions/A/Frameworks/PDFKit.framework/Resources/" & "BridgeSupport/PDFKit.bridgesupport"

tell application "CotEditor"
  open aPath
  
end tell

★Click Here to Open This Script 

Posted in 未分類 | Tagged 10.11savvy 10.12savvy 10.13savvy CotEditor | Leave a comment

CotEditorのコンソールにログ出力

Posted on 2月 6, 2018 by Takaaki Naganoya

CotEditorのログウィンドウに指定の文字をログ出力するAppleScriptです。

AppleScript名:CotEditorのコンソールにログ出力
tell application "CotEditor"
  activate
  
write to console "ぴよまるさんだよ"
end tell

★Click Here to Open This Script 

Posted in Object control | Tagged 10.11savvy 10.12savvy 10.13savvy CotEditor | Leave a comment

CotEditor 3.2.8のじっけん〜Selection

Posted on 2月 6, 2018 by Takaaki Naganoya
AppleScript名:CotEditor 3.2.8のじっけん〜Selection
tell application "CotEditor"
  tell document 1
    set aSel to properties of selection
  end tell
end tell
–>

(*
{range:{51, 25}, class:text selection, line range:{4, 1}, contents:"cessibility Inspectorの使い方"}
*)

★Click Here to Open This Script 

Posted in 未分類 | Tagged 10.11savvy 10.12savvy 10.13savvy CotEditor | Leave a comment

CotEditor 3.2.8のじっけん

Posted on 2月 6, 2018 by Takaaki Naganoya
AppleScript名:CotEditor 3.2.8のじっけん
tell application "CotEditor"
  properties
  
—> {frontmost:false, class:application, name:"CotEditor", version:"3.2.8"}
  
  
set a to count every window
  
–> 1
  
  
tell front document
    properties
    
    
(*
    {selection:sleep "" of document "名称未設定", path:missing value, text:"Book1 URLs
http://piyocast.com/as/archives/2599
Accessibility Inspectorの使い方
", encoding:"Unicode(UTF-8)", wrap lines:true, class:document, length:77, file:missing value, modified:true, coloring style:"Plain Text", line ending:LF, tab width:4, contents:"Book1 URLs
http://piyocast.com/as/archives/2599
Accessibility Inspectorの使い方
", IANA charset:"utf-8", name:"名称未設定", expands tab:false}
*)

  end tell
  
  
tell window 1
    properties
    
–> {zoomable:true, closeable:true, zoomed:false, class:window, index:1, visible:true, name:"名称未設定", view opacity:0.895218579235, miniaturizable:true, id:19863, miniaturized:false, resizable:true, bounds:{45, 70, 645, 768}, document:document "名称未設定"}
  end tell
  
  
end tell

★Click Here to Open This Script 

Posted in 未分類 | Tagged 10.11savvy 10.12savvy 10.13savvy CotEditor | Leave a comment

CotEditor 3でHooking Script

Posted on 2月 6, 2018 by Takaaki Naganoya
AppleScript名:CotEditor 3でHooking Script
use AppleScript version "2.4"
use scripting additions
–use framework "Foundation"

using terms from application "CotEditor"
  on document opened theDocument
    tell application "CotEditor"
      set thePath to file of theDocument
      
display notification "Opened " & thePath
    end tell
  end document opened
  
  
on document saved theDocument
    tell application "CotEditor"
      set thePath to file of theDocument
      
display notification "Saved " & thePath
    end tell
  end document saved
end using terms from

★Click Here to Open This Script 

Posted in 未分類 | Tagged 10.11savvy 10.12savvy 10.13savvy CotEditor | Leave a comment

CotEditorで文字を取得する

Posted on 2月 6, 2018 by Takaaki Naganoya
AppleScript名:CotEditorで文字を取得する
tell application "CotEditor"
  tell document 1
    set aList to every character of contents
  end tell
end tell

–>
(*
{"て", "す", "と", "だ", "よ", "
", "日", "本", "語", "を", "打", "つ", "テ", "ス", "ト", "。"}
*)

★Click Here to Open This Script 

Posted in 未分類 | Tagged 10.11savvy 10.12savvy 10.13savvy CotEditor | Leave a comment

CotEditorでdocumentのparagraphを取得する

Posted on 2月 6, 2018 by Takaaki Naganoya
AppleScript名:CotEditorでdocumentのparagraphを取得する
tell application "CotEditor"
  tell document 1
    set aList to every paragraph of contents
  end tell
end tell

–>
(*
{"てすとだよ
", "日本語を打つテスト。"}
*)

★Click Here to Open This Script 

Posted in 未分類 | Tagged 10.11savvy 10.12savvy 10.13savvy CotEditor | Leave a comment

CotEditorでdocumentのプロパティを取得する

Posted on 2月 6, 2018 by Takaaki Naganoya
AppleScript名:CotEditorでdocumentのプロパティを取得する
tell application "CotEditor"
  tell document 1
    properties
  end tell
end tell
–>

(*
{selection:sleep "" of document "book1&2でAS Holeに対して張られていたリンク.txt" of application "CotEditor", path:"/Users/maro/Desktop/book1&2でAS Holeに対して張られていたリンク.txt", text:"Book1 URLs
", encoding:"Unicode(UTF-8)", wrap lines:true, class:document, length:2123, file:file "Cherry:Users:maro:Desktop:book1&2でAS Holeに対して張られていたリンク.txt", modified:false, coloring style:"Plain Text", line ending:LF, tab width:4, contents:"Book1 URLs
", IANA charset:"utf-8", name:"book1&2でAS Holeに対して張られていたリンク.txt", expands tab:false}
*)

★Click Here to Open This Script 

Posted in 未分類 | Tagged 10.11savvy 10.12savvy 10.13savvy CotEditor | Leave a comment

CotEditorでウィンドウの透明度を連続的に変更する

Posted on 2月 6, 2018 by Takaaki Naganoya
AppleScript名:CotEditorでウィンドウの透明度を連続的に変更する
tell application "CotEditor"
  tell window 1
    repeat with i from 10 to 1 by -1
      set view opacity to (i / 10)
      
delay 0.1
    end repeat
    
set view opacity to 1.0
  end tell
end tell

★Click Here to Open This Script 

Posted in 未分類 | Tagged 10.11savvy 10.12savvy 10.13savvy CotEditor | 1 Comment

CotEditorでdocumentのselectionを取得

Posted on 2月 6, 2018 by Takaaki Naganoya
AppleScript名:CotEditorでdocumentのselectionを取得
tell application "CotEditor"
  tell document 1
    set aSel to properties of selection
    
–> {range:{78, 36}, class:text selection, line range:{6, 1}, contents:"http://piyocast.com/as/archives/3526"}
    
    
set aCon to contents of selection
    
–> "cessibility Inspectorの使い方"
  end tell
end tell

★Click Here to Open This Script 

Posted in 未分類 | Tagged 10.11savvy 10.12savvy 10.13savvy CotEditor | Leave a comment

CotEditorでWindowの枚数をカウント

Posted on 2月 6, 2018 by Takaaki Naganoya

CotEditorのウィンドウの枚数をカウントするAppleScriptです。ただし、visibleがfalseのウィンドウをカウントしてしまう場合もあるので、visibleがtrueのもののみをカウントするようにしたほうがよいでしょう。

また、最前面のドキュメントを指定したい場合には、Window 1が所属しているdocumentを探すよりは、front documentでアクセスしたほうが簡単で確実です。

AppleScript名:CotEditorでWindowの枚数をカウント
tell application "CotEditor"
  set a to count every window
end tell
–> 1

★Click Here to Open This Script 

Posted in 未分類 | Tagged 10.11savvy 10.12savvy 10.13savvy CotEditor | Leave a comment

CotEditorのアプリケーションのプロパティを取得

Posted on 2月 6, 2018 by Takaaki Naganoya
AppleScript名:CotEditorのアプリケーションのプロパティを取得
tell application "CotEditor"
  properties
end tell
–> {name:"CotEditor", frontmost:false, class:application, version:"3.2.8"}

★Click Here to Open This Script 

Posted in 未分類 | Tagged 10.11savvy 10.12savvy 10.13savvy CotEditor | Leave a comment

CotEditorの最前面のドキュメントの内容から前後にある空白文字列をトリミングして文字リスト化

Posted on 2月 5, 2018 by Takaaki Naganoya
AppleScript名:CotEditorの最前面のドキュメントの内容から前後にある空白文字列をトリミングして文字リスト化
use AppleScript version "2.5"
use scripting additions
use framework "Foundation"

property NSString : a reference to current application’s NSString
property NSCharacterSet : a reference to current application’s NSCharacterSet

tell application "CotEditor"
  tell front document
    set aCon to contents
  end tell
end tell

set aList to paragraphs of aCon
set outList to {}

repeat with i in aList
  set j to trimWhiteSpaceFromHeadAndTail(i) of me
  
set the end of outList to j
end repeat

outList

–指定文字列の前後から空白をトリミング
on trimWhiteSpaceFromHeadAndTail(aStr as string)
  set aString to NSString’s stringWithString:aStr
  
set bString to aString’s stringByTrimmingCharactersInSet:(NSCharacterSet’s whitespaceAndNewlineCharacterSet())
  
return bString as list of string or string –as anything
end trimWhiteSpaceFromHeadAndTail

★Click Here to Open This Script 

Posted in Text | Tagged 10.11savvy 10.12savvy 10.13savvy CotEditor | Leave a comment

Post navigation

  • Newer posts

電子書籍(PDF)をオンラインストアで販売中!

Google Search

Popular posts

  • Apple Creator Studioに含まれるKeynote/Pages/Numbersは新バージョン?
  • 最初期に書かれた書籍「AppleScript道入門」の序文をいま振り返る
  • 簡易カラーチャート画像の出力 v2.1
  • macOS 15.7.2 スクリプトメニューから実行できなくなった地図系ライブラリ?
  • ASCII ART QR Encoder
  • MacBook Air/MacBook Proのディスプレイ開閉角度を取得
  • 「AppleScriptセキュリティ実践ガイド」を発売
  • 各種GUIアプリ書類のオープン速度を向上するためにUIアニメーションの一時停止を
  • Keynote->Keynote Creator Studio(以下同様)
  • Finder上で選択中のHEIC画像から位置情報を削除_v5
  • 翻訳テスト
  • FSFindFolder failed with error=-43
  • YouTubeムービー再生実験
  • 2025年に書いた価値あるAppleScript
  • 関数計算ライブラリで一部のユーザーから再現しない問題が報告される件
  • ワークスペース切り替えv2.1
  • YouTubeムービー再生実験 v2c
  • macOS 26.xのSystem Events/Screen Saver preferencesにバグ
  • macOS 26.1が登場。Finderのバグが直らない?
  • スクリプトメニューでAirDropが使えない?

Tags

10.11savvy (1101) 10.12savvy (1242) 10.13savvy (1391) 10.14savvy (587) 10.15savvy (440) 11.0savvy (283) 12.0savvy (212) 13.0savvy (204) 14.0savvy (159) 15.0savvy (173) 26.0savvy (53) CotEditor (68) Finder (53) Keynote (123) NSAlert (61) NSArray (51) NSBitmapImageRep (20) NSBundle (20) NSButton (34) NSColor (53) NSDictionary (28) NSFileManager (23) NSFont (21) NSImage (41) NSJSONSerialization (21) NSMutableArray (63) NSMutableDictionary (22) NSPredicate (36) NSRunningApplication (56) NSScreen (30) NSScrollView (22) NSString (119) NSURL (98) NSURLRequest (23) NSUTF8StringEncoding (30) NSView (33) NSWorkspace (20) Numbers (80) Pages (58) Safari (45) Script Editor (28) WKUserContentController (21) WKUserScript (20) WKWebView (23) WKWebViewConfiguration (22)

カテゴリー

  • 2D Bin Packing
  • 3D
  • AirDrop
  • AirPlay
  • Animation
  • Apple Inteligence
  • AppleScript Application on Xcode
  • Beginner
  • Benchmark
  • beta
  • Bluetooth
  • Books
  • boolean
  • bounds
  • Bug
  • Calendar
  • call by reference
  • check sum
  • Clipboard
  • Cocoa-AppleScript Applet
  • Code Sign
  • Color
  • Custom Class
  • date
  • dialog
  • diff
  • drive
  • Droplet
  • exif
  • file
  • File path
  • filter
  • folder
  • Font
  • Font
  • GAME
  • geolocation
  • GUI
  • GUI Scripting
  • Hex
  • History
  • How To
  • iCloud
  • Icon
  • Image
  • Input Method
  • Internet
  • iOS App
  • JavaScript
  • JSON
  • JXA
  • Keychain
  • Keychain
  • Language
  • Library
  • list
  • Locale
  • Localize
  • Machine Learning
  • Map
  • Markdown
  • Menu
  • Metadata
  • MIDI
  • MIME
  • Natural Language Processing
  • Network
  • news
  • Newt On Project
  • NFC
  • Noification
  • Notarization
  • Number
  • Object control
  • OCR
  • OSA
  • parallel processing
  • PDF
  • Peripheral
  • process
  • PRODUCTS
  • QR Code
  • Raw AppleEvent Code
  • Record
  • rectangle
  • recursive call
  • regexp
  • Release
  • Remote Control
  • Require Control-Command-R to run
  • REST API
  • Review
  • RTF
  • Sandbox
  • Screen Saver
  • Script Libraries
  • Scripting Additions
  • sdef
  • search
  • Security
  • selection
  • shell script
  • Shortcuts Workflow
  • Sort
  • Sound
  • Spaces
  • Spellchecker
  • Spotlight
  • SVG
  • Swift
  • System
  • Tag
  • Telephony
  • Text
  • Text to Speech
  • timezone
  • Tools
  • Update
  • URL
  • UTI
  • Web Contents Control
  • WiFi
  • XML
  • XML-RPC
  • イベント(Event)
  • 未分類

アーカイブ

  • 2026年10月
  • 2026年9月
  • 2026年8月
  • 2026年7月
  • 2026年6月
  • 2026年5月
  • 2026年3月
  • 2026年2月
  • 2026年1月
  • 2025年12月
  • 2025年11月
  • 2025年10月
  • 2025年9月
  • 2025年8月
  • 2025年7月
  • 2025年6月
  • 2025年5月
  • 2025年4月
  • 2025年3月
  • 2025年2月
  • 2025年1月
  • 2024年12月
  • 2024年11月
  • 2024年10月
  • 2024年9月
  • 2024年8月
  • 2024年7月
  • 2024年6月
  • 2024年5月
  • 2024年4月
  • 2024年3月
  • 2024年2月
  • 2024年1月
  • 2023年12月
  • 2023年11月
  • 2023年10月
  • 2023年9月
  • 2023年8月
  • 2023年7月
  • 2023年6月
  • 2023年5月
  • 2023年4月
  • 2023年3月
  • 2023年2月
  • 2023年1月
  • 2022年12月
  • 2022年11月
  • 2022年10月
  • 2022年9月
  • 2022年8月
  • 2022年7月
  • 2022年6月
  • 2022年5月
  • 2022年4月
  • 2022年3月
  • 2022年2月
  • 2022年1月
  • 2021年12月
  • 2021年11月
  • 2021年10月
  • 2021年9月
  • 2021年8月
  • 2021年7月
  • 2021年6月
  • 2021年5月
  • 2021年4月
  • 2021年3月
  • 2021年2月
  • 2021年1月
  • 2020年12月
  • 2020年11月
  • 2020年10月
  • 2020年9月
  • 2020年8月
  • 2020年7月
  • 2020年6月
  • 2020年5月
  • 2020年4月
  • 2020年3月
  • 2020年2月
  • 2020年1月
  • 2019年12月
  • 2019年11月
  • 2019年10月
  • 2019年9月
  • 2019年8月
  • 2019年7月
  • 2019年6月
  • 2019年5月
  • 2019年4月
  • 2019年3月
  • 2019年2月
  • 2019年1月
  • 2018年12月
  • 2018年11月
  • 2018年10月
  • 2018年9月
  • 2018年8月
  • 2018年7月
  • 2018年6月
  • 2018年5月
  • 2018年4月
  • 2018年3月
  • 2018年2月

https://piyomarusoft.booth.pm/items/301502

メタ情報

  • ログイン
  • 投稿フィード
  • コメントフィード
  • WordPress.org

Forum Posts

  • 人気のトピック
  • 返信がないトピック

メタ情報

  • ログイン
  • 投稿フィード
  • コメントフィード
  • WordPress.org
Proudly powered by WordPress
Theme: Flint by Star Verte LLC