Non so la console, ma questo è possibile con SublimeREPL.
Finché si dispone di un REPL e di un file della stessa lingua aperti allo stesso tempo, è possibile inviare una riga (o una selezione o un file) al REPL aperto tramite SublimeREPL . Per impostazione predefinita, Ctrl+,
seguito dal l
invia la riga corrente al REPL, ma è possibile modificare il tasto di scelta rapida per Ctrl+Enter
(in Python solo, per proteggere altre lingue default Ctrl+Enter
funzionalità) con l'aggiunta di queste righe all'inizio del file Preferences -> Key Bindings – User
:
{ "keys": ["ctrl+enter"], "command": "repl_transfer_current", "args": {"scope": "lines"}, "context":
[
{ "key": "selector", "operator": "equal", "operand": "source.python", "match_all": true }
]
},
Altri ambiti disponibili (da Preferences -> Browse Packages -> SublimeREPL/Default (Windows).sublime-keymap
) sono selection
, file
, e block
(Clojure solo). Se si desidera inviare una linea per il vostro REPL ma non analizzarlo immediatamente, è possibile aggiungere "action":"view_write"
all'oggetto args
, in questo modo:
{ "keys": ["ctrl+enter"], "command": "repl_transfer_current", "args": {"scope": "lines", "action": "view_write"}, "context":
[
{ "key": "selector", "operator": "equal", "operand": "source.python", "match_all": true }
]
},
Vedere la Unofficial Sublime Text 2 Docs per ulteriori informazioni su combinazioni di tasti.
Nel caso in cui il REPL è aperto in una scheda diversa da quella sorgente (anziché una vista separata), i tasti buffer di origine sarà non fuoco REPL. Sono sicuro che è possibile implementare una sorta di tasto di attivazione/disattivazione della tabulazione, ma sembra un problema per un'altra domanda.
Questo è eccezionale. Grazie @ProtractorNinja. Un rapido follow su domanda - è possibile ottenere entrambe le funzioni. Quindi mi piacerebbe inviare la linea alla console e vederla prima che venga eseguita. Grazie - Scusate per console intendo REPL –
@TahnoonPasha Sì! Aggiungi il secondo snippet di codice più grande al tuo file "Key Bindings - User' insieme al primo e aggiusta il valore" keys "" a qualsiasi cosa tu voglia che la chiave send-but-don -t-evaluate sia, per esempio, ctrl + shift + enter'. Quindi 'ctrl + invio' invierà * e * valuterà la linea, mentre' ctrl + shift + invio' invierà e * non * valuterà la linea. Se non ti interessa la pressione dei tasti personalizzati, la combinazione di tasti predefinita send-but-don-valu è 'ctrl + shift +,' seguita da 'l'. –
Grazie a @ProtractorNinja, penso che devo fare qualcosa di sbagliato. Quando eseguo l'invio e la valutazione non riecheggia nel terminale REPL, esso valuta e restituisce un extra '>>>' al termine. Quello che speravo era se avessi, ad esempio, "import imaplib" e ho fatto "ctrl + enter" vedrei ">>> import imaplib" che valuterà e quindi un nuovo '>>>'. Il tuo codice dovrebbe avere questo effetto? Grazie ancora per il tuo aiuto con questo. –