« [Padding]ゼロパディング(日時) | トップページ | [Edge]アップデートフォルダを削除 »

[TextEdit]行番号を入れる


AppleScript サンプルコード

【スクリプトエディタで開く】 |

AppleScript サンプルソース(参考)
行番号ソース
001#!/usr/bin/env osascript
002----+----1----+----2----+-----3----+----4----+----5----+----6----+----7
003#
004#
005#
006#
007# com.cocolog-nifty.quicktimer.icefloe
008----+----1----+----2----+-----3----+----4----+----5----+----6----+----7
009##自分環境がos12なので2.8にしているだけです
010use AppleScript version "2.8"
011use framework "Foundation"
012use scripting additions
013
014
015set strDelimiters to ":"
016##タブ区切りにする場合は
017#"set strDelimiters to "\t"
018
019####テキストエディット
020tell application "TextEdit"
021activate
022###ドキュメント数を数えて
023set numCntDocument to (count of every document) as number
024###文書数が0なら書類なしなので停止
025if numCntDocument is 0 then
026return
027log "ファイルを開いてください"
028end if
029end tell
030
031tell application "TextEdit"
032###ドキュメント
033tell front document
034###行毎に格納
035set listParagraph to every paragraph
036###行数を数える
037set numCntParagraph to count of listParagraph
038end tell
039end tell
040
041###行数初期値
042set numCntLineNo to 0
043###行毎に処理
044repeat with objParagraph in listParagraph
045###カウントアップ
046set numCntLineNo to numCntLineNo + 1 as number
047##行番号を
048set strCntLineNo to doZeroPadress(numCntLineNo, numCntParagraph) as text
049###
050tell application "TextEdit"
051###フロントドキュメントの
052tell front document
053###行番号部の定義
054set objDistParagraph to strCntLineNo & strDelimiters & objParagraph
055###行毎にテキストを戻す
056set paragraph numCntLineNo to objDistParagraph
057end tell
058end tell
059end repeat
060
061
062
063
064###doZeroPad(値, 桁数)
065on doZeroPadress(numNo, numMaxNo)
066####数字をテキストに
067set strNo to numNo as text
068####桁数を数えて
069set numCntNo to length of strNo as number
070####最大値も桁数をテキストにしておく
071set strMaxNo to numMaxNo as text
072####最大値の桁数を数えて
073set numCntMaxNo to length of strMaxNo as number
074####桁数が同じになるまで繰り返し
075repeat while numCntNo < numCntMaxNo
076###元数字の前に0を足す
077set strNo to ("0" & strNo) as text
078###桁数をカウントアップ
079set numCntNo to (numCntNo + 1) as text
080end repeat
081###桁数が最大桁数と同じになった所で0足したテキストを戻す
082return strNo
083end doZeroPadress
AppleScriptで生成しました

|

« [Padding]ゼロパディング(日時) | トップページ | [Edge]アップデートフォルダを削除 »

TextEdit」カテゴリの記事

Text TSV」カテゴリの記事