「Dictionary.app」の版間の差分

提供: MacWiki
移動: 案内検索
(プログラミング)
行3: 行3:
 
[[MacOSX|Mac OS X]] 10.4(Tiger)以降にバンドルされている辞書アプリケーション
 
[[MacOSX|Mac OS X]] 10.4(Tiger)以降にバンドルされている辞書アプリケーション
  
*New Oxford American Dictionary
+
環境設定で辞書ソースを選択したり、順序をカスタマイズできる。
*Oxford American Writers Thesaurus
+
  
== Tips ==
+
* New Oxford American Dictionary
 +
* Oxford American Writer's Thesaurus
  
Cocoaアプリケーションで、単語を選択して ⌃⌘D (Ctrl+Command+D)とするとポップアップで意味が表示される。そしてCtrl+Commandを押し続けたまま、マウスカーソルを移動すると連続して検索できる。[[コンテクストメニュー]](右クリック)で、辞書ポップアップ表示にするには、環境設定でコンテクストメニューをOpen Dictionary panelにする。
+
== Tips ==
  
 +
* Cocoaアプリケーションで、単語を選択あるいはポインタで指して ⌃⌘D (Ctrl+Command+D)とするとポップアップで意味が表示される
 +
* [[コンテクストメニュー]]で「“<i>検索語</i>”を調べる」を選んでもいい
 +
* 適当なアプリケーションで検索語を選択し、[[サービスメニュー]]の「辞書で調べる」を選ぶと辞書.appが起動して調べられる
  
 
==プログラミング==
 
==プログラミング==
行60: 行63:
 
   [userDefaults setPersistentDomain:dictionaryPrefs forName:@"com.apple.DictionaryServices"];
 
   [userDefaults setPersistentDomain:dictionaryPrefs forName:@"com.apple.DictionaryServices"];
 
   return 0;
 
   return 0;
}
+
}
  
 
== Wiki内の関連ページ ==
 
== Wiki内の関連ページ ==

2013年5月12日 (日) 18:17時点における版

辞書.app とは?

Mac OS X 10.4(Tiger)以降にバンドルされている辞書アプリケーション

環境設定で辞書ソースを選択したり、順序をカスタマイズできる。

  • New Oxford American Dictionary
  • Oxford American Writer's Thesaurus

Tips

  • Cocoaアプリケーションで、単語を選択あるいはポインタで指して ⌃⌘D (Ctrl+Command+D)とするとポップアップで意味が表示される
  • コンテクストメニューで「“検索語”を調べる」を選んでもいい
  • 適当なアプリケーションで検索語を選択し、サービスメニューの「辞書で調べる」を選ぶと辞書.appが起動して調べられる

プログラミング

  • Dictionary.app で指定単語を調べた結果を取得する。APIは、
CFStringRef DCSCopyTextDefinition (
DCSDictionaryRef dictionary,
CFStringRef textString,
CFRange range
);
/* compile with:
    gcc -o dictionary -framework CoreServices -framework Foundation dictionary.m
*/
#import <Foundation/Foundation.h>
#include <CoreServices/CoreServices.h>
#include <string.h>
int main(int argc, char *argv[]) {
 int i;
 char *dic="";
 NSString *word;
 NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
 NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
 NSMutableDictionary *dictionaryPrefs =
   [[userDefaults persistentDomainForName:@"com.apple.DictionaryServices"] mutableCopy];
 NSArray *activeDictionaries = [dictionaryPrefs objectForKey:@"DCSActiveDictionaries"];
 NSString *dicpath = @"/Library/Dictionaries/";
 NSString *dicname = @"";
 for (i=1;i<argc;i++) {
   if (!strcmp(argv[i],"-d")&&i+1<argc) {
     dic=argv[++i];
     if (!strcmp(dic,"thesaurus"))
       dicname = @"Oxford American Writer's Thesaurus.dictionary";
     else if (!strcmp(dic,"oxford"))
       dicname = @"New Oxford American Dictionary.dictionary";
   }
   else
     word = [NSString stringWithUTF8String:argv[i]];
 }
 NSArray *useDictionaries = activeDictionaries;
 if (![dicname isEqualToString:@""])
   useDictionaries =
     [NSArray arrayWithObject:[dicpath stringByAppendingString:dicname]];
 [dictionaryPrefs setObject:useDictionaries forKey:@"DCSActiveDictionaries"];
 [userDefaults setPersistentDomain:dictionaryPrefs forName:@"com.apple.DictionaryServices"];
 puts([(NSString *)DCSCopyTextDefinition(NULL, (CFStringRef)word,
                                         CFRangeMake(0, [word length])) UTF8String]);
 [dictionaryPrefs setObject:activeDictionaries forKey:@"DCSActiveDictionaries"];
 [userDefaults setPersistentDomain:dictionaryPrefs forName:@"com.apple.DictionaryServices"];
 return 0;
}

Wiki内の関連ページ