เป็นไปได้หรือไม่ที่จะผูก Mac OSX Dictionary.app ของฉันกับ Google Translate


11

แอป Dictionary มีประสบการณ์ที่ยอดเยี่ยมบน MacOSX แต่ฉันต้องติดตั้งพจนานุกรมเพื่อใช้ เป็นไปได้หรือไม่ที่จะผูกไว้กับ Google Translate

ขอบคุณ!


อย่างน้อยก็ไม่มีการแฮ็กและการสร้างแอพ Dictionary และนามสกุลใหม่เนื่องจากมันมีพจนานุกรมแบบกำหนดเองที่คงที่และไม่ใช่โปรแกรมที่หมายความว่าฉันไม่สามารถเขียน "พจนานุกรม" ซึ่ง ใช้ข้อความและแปล
ไซเรน

คำตอบ:


26

น่าเสียดายที่มันดูเหมือนจะเป็นไปไม่ได้หรืออย่างน้อยก็ตรงไปตรงมา เป็นทางเลือกที่คุณอาจต้องการที่จะต้องพิจารณาการสร้าง X OS บริการที่เปิด Google Translate ในหน้าต่างเบราว์เซอร์สำหรับคำว่าไฮไลต์ใด ๆ หรือวลีที่คุณได้เลือก

หากฟังดูเหมาะสมให้ทำตามขั้นตอนด้านล่าง:

การสร้างบริการแปล

  • เปิดAutomatorแอพจากApplicationsโฟลเดอร์ของคุณ
  • เลือกServiceเป็นประเภทเอกสารและคลิกChoose
  • ในหน้าต่างที่ปรากฏขึ้นให้คลิกช่องค้นหาและพิมพ์ 'AppleScript'
  • ลากและวางการRun AppleScriptกระทำจากรายการทางด้านซ้ายในพื้นที่ที่มีข้อความ 'ลากการกระทำหรือไฟล์ที่นี่เพื่อสร้างเวิร์กโฟลว์ของคุณ'

คัดลอกสคริปต์ด้านล่างและวางลงในRun Applescriptการดำเนินการ:

on run {input, parameters}
    set phrase to input as string
    set phrase to quoted form of phrase

    set ui_lang to "en"
    set from_lang to "en"
    set to_lang to "zh-CN"

    do shell script "open 'https://translate.google.com/?hl='" & ui_lang & "'&sl='" & from_lang & "'&tl='" & to_lang & "'&text='" & phrase
end run

หน้าต่างของคุณควรมีลักษณะดังนี้:

เวิร์กโฟลว์อัตโนมัติ

มีสามค่าที่คุณอาจต้องการเปลี่ยนในสคริปต์ด้านบน:

  • ui_lang - ภาษาที่ใช้สำหรับส่วนติดต่อของหน้า
  • from_lang - ภาษาต้นฉบับ
  • to_lang - ภาษาปลายทาง

เปลี่ยนหนึ่งหรือมากกว่านี้เพื่อให้ได้การแปลที่ต้องการ เพื่อหาค่าพารามิเตอร์ภาษาที่ถูกต้องดูที่อ้างอิงภาษา ในตัวอย่างข้างต้นenอ้างถึงEnglishและzh-CNเป็นภาษาจีน (แบบง่าย)

หลังจากทำการเปลี่ยนแปลงแล้วให้คลิกFile> Save...และในแผงควบคุมที่ปรากฏขึ้นให้พิมพ์ชื่อที่เหมาะสม (เช่นTranslate English to Chinese)


การใช้บริการแปล

หลังจากบันทึกเวิร์กโฟลว์ของคุณด้านบนคุณสามารถใช้บริการแปลของคุณด้วยหนึ่งในสองวิธีต่อไปนี้:

1. วิธีการเมนูบริการ

  • ไฮไลต์คำหรือวลีในแอปพลิเคชันใด ๆ
  • คลิกเมนูแอปพลิเคชันทางด้านขวาของไอคอน Apple () จากนั้นคลิกServicesและTranslate English to Chinese(หรือชื่อที่คุณให้บริการเมื่อบันทึก):

ตัวอย่างเมนูบริการ

2. วิธีเมนูตามบริบท

  • ไฮไลต์คำหรือวลีในแอปพลิเคชันใด ๆ
  • คลิกขวาที่ข้อความและเลือกServicesจากนั้นTranslate English to Chinese(หรือชื่อบริการที่กำหนดเองของคุณ):

ตัวอย่างเมนูบริบท


วิธีใดก็ตามที่คุณใช้หน้าต่างเบราว์เซอร์ควรปรากฏพร้อมข้อความแปลของคุณ:

ตัวอย่าง Google แปลภาษา


1
ยอดเยี่ยมอย่างแน่นอน - ขอบคุณ (ฉันเพิ่งตั้งขึ้นเพื่อไปจากภาษาอังกฤษเป็นภาษาจีน (S) แบบเดียวกับที่คุณทำและจากนั้นก็ปรับเปลี่ยนให้เป็นภาษาจีน (S) เป็นภาษาอังกฤษขอบคุณมากช่วยขอบคุณ !!
user291332

1
ผมตั้งไปfrom_lang "auto"
Erik Kaplun

1

อันนี้ทำทุกอย่างเหมือนคำตอบของ Soulcakeแต่ถ้า url ของผู้แปลมีอยู่แล้ว - โหลดการแปลใหม่ในแท็บเดียวกัน

on run {input, parameters}
    set phrase to input as string

    set ui_lang to "en"
    set from_lang to "en"
    set to_lang to "ru"

    set theBaseUrl to "https://translate.google.com/"
    set theUrl to theBaseUrl & "?hl=" & ui_lang & "&sl=" & from_lang & "&tl=" & to_lang & "&text=" & phrase

    tell application "Google Chrome"
        activate

        if (count every window) = 0 then
            make new window
        end if

        set found to false
        set theTabIndex to -1
        repeat with theWindow in every window
            set theTabIndex to 0
            repeat with theTab in every tab of theWindow
                set theTabIndex to theTabIndex + 1
                if theTab's URL starts with theBaseUrl then
                    set found to true
                    exit repeat
                end if
            end repeat

            if found then
                exit repeat
            end if
        end repeat

        if found then
            set URL of theTab to theUrl
            set theWindow's active tab index to theTabIndex
            set index of theWindow to 1
        else
            tell window 1 to make new tab with properties {URL:theUrl}
        end if
    end tell

end run

น่าเสียดายที่มันส่งคืนข้อผิดพลาดขณะพยายามใช้งาน
yonivav

@yonivav ข้อผิดพลาดคืออะไร? คุณสามารถอธิบายขั้นตอนในการทำซ้ำได้หรือไม่
vladkha
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.