การเชื่อมแป้นพิมพ์ลัดของ Sublime ไม่ทำงาน


12

ทำตามคำแนะนำที่นี่ฉันได้ตั้งค่าการติดตั้งใหม่ของ SublimeText สำหรับใช้กับอาร์ฉันไม่มีการติดตั้งปลั๊กอิน SublimeText อื่น แป้นพิมพ์ลัดที่ตั้งค่าโดยใช้คำแนะนำในลิงค์ด้านบนไม่ทำงาน ฉันได้ตั้งค่าไฟล์การเชื่อมโยงรหัสผู้ใช้ตามที่ระบุในบทช่วยสอน

ไม่มีการเชื่อมโยงคีย์ที่ขัดแย้งกันในไฟล์ 'การผูกคีย์เริ่มต้น'

อย่างไรก็ตามฉันสามารถรันรหัส R ของฉันใน REPL โดยคลิกที่เมนู:

เครื่องมือ> SublimeREPL> Eval ใน REPL> การเลือก ( Ctrl+ Shift+ R)

ถ้าฉันกดCtrl+ Shift+ Rทางลัดจริง ๆ จะไม่มีอะไรเกิดขึ้น

นี่คือสำเนาของไฟล์การเชื่อมโยงคีย์ผู้ใช้ของฉัน:

[
// Modified Sublime-REPL keybindings for an "R-friendly" set of shortcuts.
// For more information, see http://tomschenkjr.net/2012/05/17/using-sublime-text-2-for-r/

// Executes a selection of text in REPL, latter only displays code and does not execute
{ "keys": ["ctrl+shift+r"], "command": "repl_transfer_current", "args": {"scope": "selection"}},
{ "keys": ["ctrl+shift+r", "r"], "command": "repl_transfer_current", "args": {"scope": "selection", "action":"view_write"}},

// Executes the entire file (build) in REPL, latter only displays code and does not execute
{ "keys": ["ctrl + f7"], "command": "repl_transfer_current", "args": {"scope": "file"}},
{ "keys": ["ctrl + f7", "r"], "command": "repl_transfer_current", "args": {"scope": "file", "action":"view_write"}},

// Executes line(s) of text in REPL terminal, latter only displays code and does not execute
{ "keys": ["ctrl+alt+r"], "command": "repl_transfer_current", "args": {"scope": "lines"}},
{ "keys": ["ctrl+alt+r", "r"], "command": "repl_transfer_current", "args": {"scope": "lines", "action":"view_write"}},

// Executes a block (e.g., a custom function) of text in REPL terminal, latter only displays code and does not execute
{ "keys": ["ctrl+shift+alt+r"], "command": "repl_transfer_current", "args": {"scope": "block"}},
{ "keys": ["ctrl+shift+alt+r", "r"], "command": "repl_transfer_current", "args": {"scope": "block", "action":"view_write"}}

]

ผมทำอะไรผิดหรือเปล่า?


2
เปิดคอนโซล (Ctrl + ~) sublime.log_commands(True)และป้อน จากนั้นบอกสิ่งที่คอนโซลพูดหลังจากป้อนการเชื่อมโยงคีย์
d_rail

ขอบคุณมาก @d_rail ที่น่าสนใจฉันไม่สามารถเรียกคอนโซลด้วย ctrl + ~ (เมนูหน้าต่างบอกว่าทางลัดคือ ctrl + `ซึ่งไม่สามารถใช้งานได้) ในกรณีใด ๆ คอนโซลรายงานอะไรเมื่อฉันกด ctrl + shift + R ด้วยการsublime.log_commands(True)เปิดใช้งาน ทางลัดทั่วไปอื่น ๆ เช่น ctrl + a, ctrl + c ฯลฯ ทำงานได้และมีการรายงานในคอนโซล
CaptainProg

โอเคนี่คือสิ่งประหลาด ถ้าฉันกด ctrl + shift + CapsLock + R มันใช้งานได้ ...
CaptainProg

ขออภัยที่จะให้ข้อมูลที่ไม่ถูกต้อง backtick นั้นถูกต้อง เสียงเหมือนปุ่มลัดไม่ได้ถูกตั้งค่า แต่ฉันไม่เห็นอะไรผิดปกติกับการตั้งค่าที่ระบุไว้ ฉันจะเริ่มต้นด้วยปุ่มลัดเริ่มต้นจากที่นี่: github.com/wuub/SublimeREPL/blob/master/… (หรืออันที่ถูกต้องสำหรับระบบปฏิบัติการของคุณ) และตรวจสอบให้แน่ใจว่าได้ผล จากนั้นเปลี่ยนทีละปุ่มเพื่อดูว่ามีอะไรมารบกวน
d_rail

พบวิธีแก้ไขสำหรับปัญหานี้หรือยัง
music2myear

คำตอบ:


0

นี่เป็นทางออกที่ง่าย มีข้อผิดพลาดในไฟล์กำหนดค่าหนึ่งต้องการเพียงแค่ลบ shift + ctrl + r, r บรรทัด:

[
// Modified Sublime-REPL keybindings for an "R-friendly" set of shortcuts.
// For more information, see http://tomschenkjr.net/2012/05/17/using-sublime-text-2-for-r/

// Executes a selection of text in REPL, latter only displays code and does not execute
{ "keys": ["ctrl+shift+r"], "command": "repl_transfer_current", "args": {"scope": "selection"}},

// Executes the entire file (build) in REPL, latter only displays code and does not execute
{ "keys": ["ctrl + f7"], "command": "repl_transfer_current", "args": {"scope": "file"}},


// Executes line(s) of text in REPL terminal, latter only displays code and does not execute
{ "keys": ["ctrl+alt+r"], "command": "repl_transfer_current", "args": {"scope": "lines"}},


// Executes a block (e.g., a custom function) of text in REPL terminal, latter only displays code and does not execute
{ "keys": ["ctrl+shift+alt+r"], "command": "repl_transfer_current", "args": {"scope": "block"}},


]

0

ขอบคุณที่ความคิดเห็นต่อไปนี้จาก OP:

โอเคนี่คือสิ่งประหลาด ถ้าฉันกด ctrl + shift + CapsLock + R มันใช้งานได้ ...

ฉันสามารถเดาว่า["ctrl+shift+r"]รอเป็นตัวพิมพ์เล็กrแต่เมื่อคุณได้กะกด (ซึ่งเป็นส่วนหนึ่งของการรวมกันคีย์ลัดที่) Rมันอ่านตัวพิมพ์ใหญ่

เมื่อมีการเปิด OP CapsLock ของเขาในการกดrจะได้ออกมาตามปกติRแต่ในขณะที่กดปุ่มมันอ่านพิมพ์เล็กSHIFTr

สิ่งนี้อาจเกิดขึ้นได้เนื่องจาก Sublime พยายามอ่านตัวอักษรที่เหมือนกันมากกว่ารหัสคีย์ของปุ่มกด

ดังนั้นวิธีแก้ปัญหาควรใช้ตัวอักษรตัวพิมพ์ใหญ่ตรงข้ามเมื่ออยู่ในคีย์ผสมรวมถึงSHIFT(ใช้Rแทนrในกรณีนี้):

// Executes a selection of text in REPL, latter only displays code and does not execute
{ "keys": ["ctrl+shift+R"], "command": "repl_transfer_current", "args": {"scope": "selection"}},
{ "keys": ["ctrl+shift+R", "r"], "command": "repl_transfer_current", "args": {"scope": "selection", "action":"view_write"}},
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.