在"系统偏好设置"的"显示"窗格中,我可以通过将菜单栏从一个显示拖动到另一个显示来手动更改主监视器.我想将其自动化并使其成为AppleScript的一部分.
我正在尝试根据鼠标光标的位置获取两个显示器的当前显示分辨率.
即,当鼠标光标在第一个显示器上时,我想获得该显示器的分辨率.
使用shell脚本我可以得到两个解决方案:
set screenWidth to (do shell script "system_profiler SPDisplaysDataType | grep Resolution | awk '{print $2}'")
Run Code Online (Sandbox Code Playgroud)
但我不知道哪个显示器目前处于"活动状态".
有任何想法吗?
我需要将文件夹及其子文件夹的整个(可见)内容作为列表.这可能吗?
Synergy是一个程序,使您可以在两台计算机中使用相同的鼠标和键盘.我有一台PC和mac直接连接以太网电缆,因此连接很好,好像只有一台电脑.
我正在开发一个iPad应用程序,我发现支持iwebkit for CSS的唯一软件是Expresso.我用它来编辑我在mac中的CSS文件,我在PC上使用dream weaver来编辑PHP,HTML和JavaScript文件.唯一的问题是我经常使用两台计算机来开发应用程序,而且每台计算机使用不同的快捷键非常令人沮丧.如果我可以在两台计算机上使用相同的热键,那将是非常好的.
到目前为止,我尝试过:
更改mac中系统首选项下键盘部分中的修饰键.这可以工作,但只是使用Mac上的键盘而不是我使用的键盘控制两台计算机的键盘.
创建他们所做的Appleogle脚本是发送快捷键然后编译它们并将它们保存为应用程序.将它们保存为应用程序后,我转到系统首选项并尝试使用不同的快捷键运行它们.当我创建快捷键时,系统首选项崩溃并关闭而不保存更改.
在协同作用中创建快捷键,它只能在一台计算机上工作.无论您使用哪台计算机,Synergy都会发送相同的击键.
最后我尝试寻找"IronAHK",在很多帖子中人们都说它修改了mac热键但是我还没能找到它的mac.
有没有办法在我的机器上使用相同的通用访问密钥?
我正在尝试复制/粘贴我的最后一个活动应用程序,这是我的代码:
NSString *appleScriptSource = [NSString stringWithFormat:@"\ntell application \"%@\" to activate\ntell application \"System Events\" to tell process \"%@\"\nkeystroke \"v\" using command down\nend tell", [lastApp localizedName], [lastApp localizedName]];
NSDictionary *error;
NSAppleScript *aScript = [[NSAppleScript alloc] initWithSource:appleScriptSource];
NSAppleEventDescriptor *aDescriptor = [aScript executeAndReturnError:&error];
Run Code Online (Sandbox Code Playgroud)
问题是在某些计算机上它工作正常,但在其他计算机上它失败了.我从executeAndReturnError返回的错误输出的错误是:
2012-06-13 17:43:19.875 Mini Translator[1206:303] (null) (error: {
NSAppleScriptErrorBriefMessage = "Expected end of line but found \U201c\"\U201d.";
NSAppleScriptErrorMessage = "Expected end of line but found \U201c\"\U201d.";
NSAppleScriptErrorNumber = "-2741";
NSAppleScriptErrorRange = "NSRange: {95, 1}";
})
Run Code Online (Sandbox Code Playgroud)
我似乎无法弄清楚它意味着什么或为什么会发生.
我们尝试将生成的Apple脚本代码复制到Apple Script编辑器中,这里工作得很好.
我的应用程序是沙箱 - 我为我想要支持的应用程序添加了密钥"com.apple.security.temporary-exception.apple-events"的软件包标识符. …
我目前的工作流程涉及使用Applescript基本上划分Excel数据并将其格式化为纯文本文件.我们正在推动所有Swift环境,但我还没有找到任何用于将我的Excel数据解析为Swift的工具包.
我唯一能想到的是使用C或其他东西并包装它,但这并不理想.解析这些数据以便在Swift中使用的更好的建议?
目标是消除Applescript,但我不确定在与Excel文件交互时是否可行.通过Applescript编写Excel脚本似乎是唯一的方法.
编辑:我没有从此工作流程中删除Excel的选项.这就是数据将如何进入应用程序,因此我必须包含它.
能够简化解析这些数据的过程然后处理它将是至关重要的.我知道Applescript过去一直很好,帮助我处理它; 然而,它对我来说有点过于封闭.
我一直在寻找在Swift/Cocoa中编写的东西,但是仍然可能需要用Applescript提取数据,对吧?
推动Swift的一大优点是可读性.我不太了解Objective-C,我觉得swift会更容易过渡.
我在PC上的工作流程一直在使用COM对象,如前所述,在Mac Excel应用程序中不可用.我此刻只是在寻找数据提取.一些以前的应用程序在应用程序中进行了处理,但我希望使其非常独立,因此我正在开发的应用程序中的所有处理.一旦从.XLS或.XLSX文件中提取数据,我将通过RegEx进行一些文本编辑,也许还会进行一些数字处理.没什么太疯狂的.截至目前,它将在客户端运行,但我希望将其扩展到服务器进程.
我没有Wi-Fi路由器,因此在家时我需要将笔记本电脑变成Wi-Fi信号源,这样我和我的伙伴都可以访问互联网.
然而,在我在咖啡店工作并需要使用他们的Wi-Fi的日子里.
我正在运行Snow Leopard,我发现不断地关闭和开启,首先是Internet共享,然后是我的Wi-Fi,这非常麻烦.
快速'n'脏AppleScript解决方案的想法?
如何使用applescript将焦点设置到给定应用程序的特定窗口?
我在不同的显示器上运行了几个iTerm2窗口.我想使用applescript将焦点设置到指定的窗口.
我需要两件事,一个收集窗口ID的脚本并将它们打印到stdout.我有这个:
tell application "iTerm"
set wins to id of every window
end tell
Run Code Online (Sandbox Code Playgroud)
它打印6个整数:3034,2528,-1,-1,-1,-1
奖金问题:四个-1是什么?
然后我尝试:
tell application "System Events"
activate window 3034
end tell
Run Code Online (Sandbox Code Playgroud)
唯一发生的事情就是我失去了当前终端的焦点(我正在键入这些命令),无论我是指定3034还是2528作为ID.
有没有办法在终端完成命令时收到通知?
- >我运行另一个脚本(不是我的!),当这个脚本完成时下载数据我想退出终端并用这些数据做其他事情.
编辑:
我可能没有正确地问...
例:
tell application "Terminal"
keystroke "php downloadscript.php"
keystroke return
end tell
if (downloadFinished)
-- do stuff
else
-- wait till finished
编辑2: 太棒了!谢谢!这样工作:
tell application "Terminal"
set frontWindow to window 1
repeat until busy of frontWindow is false
delay 1
end repeat
#display dialog "finished"
end tell
问候hatschii 我创建了AppleScript,对其进行了测试,将其保存为.app并且可以正常工作.
现在,我该如何为它设置自定义图标?
我做了一些谷歌搜索并尝试了一些不同的东西,但无法让它工作.该应用程序主要是为了我,也许我认识的一些人,使工作流更容易,所以有一个漂亮的小图标会产生巨大的差异.有人可以帮忙吗?
applescript ×10
macos ×2
objective-c ×2
copy-paste ×1
directory ×1
excel ×1
icons ×1
list ×1
parsing ×1
resolution ×1
sandbox ×1
subdirectory ×1
swift ×1
terminal ×1