টার্মিনালের অভিধান.app এ একটি শব্দ সন্ধান করুন


19

/Applications/Dictionary.appটার্মিনাল উইন্ডো থেকে কোনও শব্দ সন্ধান করার জন্য কি কোনও বাশ বা অ্যাপলস্ক্রিপ্ট রয়েছে ?

open -a /Applications/Dictionary.app/ --args word

--args উপেক্ষা করে বলেন, "দেখার জন্য একটি শব্দ টাইপ করুন"

ম্যাক অভিধানের উন্নতিগুলি প্রস্তাব দেয় ⌃ Control ⌘ Command Dতবে আমি কেবলমাত্র ছোট পপওভার নয়, সম্পূর্ণ অ্যাপ্লিকেশন চালু করতে চাইছি।


"আরও" বোতামের পরিবর্তে আপনি পপ-আপে অভিধানের নামটি ক্লিক করে অভিধান অ্যাপ্লিকেশনটিতে অনুসন্ধানটি খুলতে পারেন।
হেলমেট

ধন্যবাদ সবাই, there's_more_than_one_way_to_skin_a_cat
ডেনিস

উত্তর:


20

তুমি ব্যবহার করতে পার...

open dict://my_word

... যা অভিধান অ্যাপ্লিকেশনটি খুলবে এবং স্ট্রিংটি সন্ধান করবে my_word। আপনি একাধিক শব্দ ব্যবহার করতে চাইলে এমন কিছু ব্যবহার করুন open dict://"Big Bang Theory"

যদিও টার্মিনালে কোনও আউটপুট নেই।


ধন্যবাদ। খোলা যাদুবিদ্যার একটি তালিকা আছে: ... কোথাও?
অস্বীকার

@ ডেনিস আমি এমন কোনও উত্স জানি না যা বিশেষত এর জন্য অননুমোদিত কমান্ড বিকল্পগুলি সংগ্রহ করে open। তবে সাধারণভাবে বলতে গেলে হিন্টস.ম্যাকওয়ার্ল্ড ডট কম লুকানো রত্নগুলির জন্য একটি সুপরিচিত উত্স। আমি একটি ভিন্ন defaults write
উত্সও জানতাম

আমি openসুপারউজারের উপর একটি সংক্ষিপ্ত সংক্ষিপ্তসার তৈরি করেছি কিছুক্ষণ আগে superuser.com/questions/4368/os-x-equivalent-of-windows-run-box/…
জোশ হান্ট

@ এডিসিস সিস্টেমে সমস্ত প্রিফিক্সের একটি ডাটাবেস বজায় রেখেছে যা ইনস্টল করা সমস্ত অ্যাপস এটি পরিচালনা করতে বলেছে told যদি আপনি সেই গুছিয়েটি জানার জন্য ব্যবহারিক ব্যবহারের কথা ভাবতে পারেন তবে একটি পূর্ণ প্রশ্ন জিজ্ঞাসা করা দুর্দান্ত would
bmike

18

পাইথন অবজেক্টিভ-সি বাইন্ডিংগুলি ব্যবহার করে, আপনি ওএস এক্স অভিধানে অন্তর্নির্মিত থেকে এটি পেতে একটি ছোট পাইথন স্ক্রিপ্ট তৈরি করতে পারেন। এই স্ক্রিপ্টের বিশদ বিবরণে একটি পোস্ট এখানে রয়েছে "

#!/usr/bin/python

import sys
from DictionaryServices import *

def main():
    try:
        searchword = sys.argv[1].decode('utf-8')
    except IndexError:
        errmsg = 'You did not enter any terms to look up in the Dictionary.'
        print errmsg
        sys.exit()
    wordrange = (0, len(searchword))
    dictresult = DCSCopyTextDefinition(None, searchword, wordrange)
    if not dictresult:
        errmsg = "'%s' not found in Dictionary." % (searchword)
        print errmsg.encode('utf-8')
    else:
        print dictresult.encode('utf-8')

if __name__ == '__main__':
    main()

এটিকে সংরক্ষণ করুন dict.pyএবং তারপরে কেবল চালানpython dict.py dictation

এখানে চিত্র বর্ণনা লিখুন

আপনার টার্মিনাল জুড়ে এটিকে অ্যাক্সেসযোগ্য করে তুলতে আরও নির্দেশাবলীর জন্য পোস্টটি দেখুন।


1
আমি এই স্ক্রিপ্টটি ব্যবহার করেছি, তবে আউটপুটে কোনও লাইন ব্রেক নেই, এটি দেখতে এটির মতো দেখাচ্ছে: i.imgur.com/ooAwQCA.png (একটি OS X 10.9 এ)।
এইচ__ 19

আউটপুটটিতে আমি কোনও নতুন লাইনও পাই না। পরীক্ষা করা হচ্ছে print repr(dictresult.encode('utf-8')): আমাকে এই শো'dictation |d\xc9\xaak\xcb\x88te\xc9\xaa\xca\x83(\xc9\x99)n| \xe2\x96\xb6noun [ mass noun ] 1 the action of dictating words to be typed, written down, or recorded on tape: the dictation of letters. \xe2\x80\xa2 the activity of taking down a passage that is dictated by a teacher as a test of spelling, writing, or language skills: passages for dictation. \xe2\x80\xa2 words that are dictated: the job will involve taking dictation, drafting ...'
NNN

আমি লাইন বিরতির অনুকরণের জন্য কয়েকটি স্ট্রিং প্রতিস্থাপন যুক্ত করেছি .. মনে হচ্ছে এটি ঠিক আছে যদিও আমি এটির ব্যাপকভাবে পরীক্ষা না করেছি: gist.github.com/lambdamusic/bdd56b25a5f547599f7f
ম্যাজিকের জন্ম

এটি আর কাজ করবে বলে মনে হচ্ছে না।
টুথরট

4

আমিও পরামর্শ দিতে যাচ্ছিলাম open dict://word, তবে গুগলের অভিধান এপিআই নিউ অক্সফোর্ড আমেরিকান অভিধান ব্যবহার করে:

#!/usr/bin/env ruby

require "open-uri"
require "json"
require "cgi"

ARGV.each { |word|
  response = open("http://www.google.com/dictionary/json?callback=dict_api.callbacks.id100&q=#{CGI.escape(word)}&sl=en&tl=en&restrict=pr,de").read
  results = JSON.parse(response.sub(/dict_api.callbacks.id100\(/, "").sub(/,200,null\)$/, ""))
  next unless results["primaries"]
  results["primaries"][0]["entries"].select { |e| e["type"] == "meaning" }.each { |entry|
    puts word + ": " + entry["terms"][0]["text"].gsub(/x3c\/?(em|i|b)x3e/, "").gsub("x27", "'")
  }
}

1
গুগল API অননুমোদিত হয়েছে এবং আয় 404. দেখে মনে হচ্ছে যে dictionaryapi.com কাজ করতে পারে, শুধু একটি লগইন করা আছে।
স্যাম বেরি

4

আমি সুইফট 4 ব্যবহার করে একটি সমাধান পেয়েছি।

#!/usr/bin/swift
import Foundation

if (CommandLine.argc < 2) {
    print("Usage: dictionary word")
}else{
    let argument = CommandLine.arguments[1]
    let result = DCSCopyTextDefinition(nil, argument as CFString, CFRangeMake(0, argument.count))?.takeRetainedValue() as String?
    print(result ?? "")
}
  1. এই হিসাবে সংরক্ষণ করুন dict.swift
  2. দ্বারা অনুমতি যুক্ত করুন chmod +x dict.swift
  3. সন্ধানের অভিধান
    • দোভাষীর সাথে চালানো ./dict.swift word
    • সংকলক দ্বারা swiftc dict.swiftচালিত এবং রান করুন./dict word

2

ডেভিড পেরেসের উত্তর কোড থেকে আপডেট করা হয়েছে, কিছু রঙ এবং নতুন লাইন যুক্ত করুন:

#!/usr/bin/python
# -*- coding: utf-8 -*-

import sys
import re
from DictionaryServices import *

class bcolors:
    HEADER = '\033[95m'
    OKBLUE = '\033[94m'
    OKGREEN = '\033[92m'
    WARNING = '\033[93m'
    FAIL = '\033[91m'
    ENDC = '\033[0m'
    BOLD = '\033[1m'
    UNDERLINE = '\033[4m'

def main():
    try:
        searchword = sys.argv[1].decode('utf-8')
    except IndexError:
        errmsg = 'You did not enter any terms to look up in the Dictionary.'
        print errmsg
        sys.exit()
    wordrange = (0, len(searchword))
    dictresult = DCSCopyTextDefinition(None, searchword, wordrange)
    if not dictresult:
        errmsg = "'%s' not found in Dictionary." % (searchword)
        print errmsg.encode('utf-8')
    else:
        result = dictresult.encode('utf-8')
        result = re.sub(r'\|(.+?)\|', bcolors.HEADER + r'/\1/' + bcolors.ENDC, result)
        result = re.sub(r'▶', '\n\n ' + bcolors.FAIL + '▶ ' + bcolors.ENDC, result)
        result = re.sub(r'• ', '\n   ' + bcolors.OKGREEN + '• ' + bcolors.ENDC, result)
        result = re.sub(r'(‘|“)(.+?)(’|”)', bcolors.WARNING + r'“\2”' + bcolors.ENDC, result)
        print result

if __name__ == '__main__':
    main()

1

অভিধান ওএসএক্স চেষ্টা করে দেখুন (অন্যান্য উত্তরের সাথে আটকে যাওয়ার পরে এবং পাইথনবিহীন সমাধানের সন্ধান করার পরে আমি এটি তৈরি করেছি)। এটি থেকে সংজ্ঞা ব্যবহার করে Dictionary.app

dictionary cat
# cat 1 |kat| ▶noun 1 a small domesticated carnivorous mammal with soft fur...

এটি ব্যবহার করে DictionaryKit , উপর ওএসএক্স প্রাপ্তিসাধ্য ব্যক্তিগত অভিধান পরিষেবার জন্য একটি লেফাফা। এটি কীভাবে এনএসএইচএসটারে কাজ করে সে সম্পর্কে আকর্ষণীয় পটভূমি তথ্য রয়েছে


1

এই গিথুব রেপো চেকআউট করুন: https://github.com/aztack/osx-d অভিধান

ইনস্টল: brew install https://raw.githubusercontent.com/takumakei/osx-dictionary/master/osx-dictionary.rb --HEAD

এখানে চিত্র বর্ণনা লিখুন


0

আমি একই পোস্ট খুঁজছেন এই পোস্ট জুড়ে এসেছি। সহজ স্ক্রিপ্ট তৈরি অপশনগুলি দিয়ে খুশি ছিল না। এটি পাঠ্য থেকে স্পিচ সহ একটি টার্মিনাল ভিত্তিক থিসেরাস। আগ্রহ হতে পারে ...

https://github.com/aefty/thes


0

টার্মিনালে অভিধান. অ্যাপ্লিকেশন কীভাবে ব্যবহার করতে হয় তা জানতে নিম্নলিখিত থ্রেডটিতে দেখুন: https://discussion.apple.com/thread/2679911?start=0&tstart=0


1
জিজ্ঞাসা করা বিভিন্ন বিষয়ে উত্তরগুলি কেবল একটি লিঙ্কের চেয়ে বেশি হওয়া দরকার। কোনও লিঙ্ক অন্তর্ভুক্ত করা ঠিক আছে, তবে দয়া করে উত্তরে সংক্ষিপ্তসার বা উদ্ধৃতিটি দিন। উত্তরটি একা দাঁড়িয়ে থাকার ধারণা।
nohillside
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.