Debugger interaktif dan REPL untuk Imba.
npm:
npm i -g imba-shell
benang:
yarn global add imba-shell
Untuk mulai menggunakan imba-shell
, jalankan perintah berikut:
imba-shell
Untuk mengaktifkan TypeScript, Anda dapat meneruskan tanda --ts
:
imba-shell --ts
Catatan, Anda juga bisa menggunakan
imbas
daripadaimba-shell
.
Untuk menggunakan mode multi-baris, gunakan perintah .editor:
>>> .editor
Ini akan membuka editor multi-baris.
Saat menggunakan mode multi-baris, Anda dapat menggunakan kombinasi tombol Shift+Tab
untuk membuat indentasi baris saat ini.
Untuk menghapus tab, gunakan tombol Backspace
.
Untuk menghapus imba-shell
, gunakan bantuan clear
:
>>> clear !
Anda juga dapat menggunakan perintah
.clear
.
Untuk keluar dari imba-shell
, gunakan exit
helper:
>>> exit !
Anda juga dapat menggunakan perintah
.exit
.
Anda dapat menggunakan imba-shell
sebagai runtime:
imbar file.imba
alias
imbar
:imba-r
,imba-runtime
,ir
.
Melewati argumen ke skrip Anda:
imbar craftsman.imba mail:send --help
Terus membangun dan mengawasi proyek (tujuan pengembangan):
imbar --watch server.imba
bendera:
--watch
alias:
-w
Membuat skrip yang dijalankan sendiri:
hello
#!/usr/bin/env imbar
const name = process . argv . slice ( 2 )[ 0 ] ?? 'stranger'
console . log "Hello {name}"
Jika Anda menggunakan Linux
, FreeBSD
atau MacOS
, Anda dapat membuat skrip Anda dapat dieksekusi:
chmod u+x hello
Catatan: saat membuat skrip yang tidak diakhiri dengan
".imba"
, Imba Runtime akan mengkloning skrip Anda ke dalam file tersembunyi yang diakhiri dengan.imba
dan menjalankannya alih-alih skrip asli Anda. Setelah selesai mengeksekusi, file yang tersembunyi akan dihapus.
Menjalankan skrip:
./hello Donald # Hello Donald
./hello # Hello stranger
imba-shell
juga dapat digunakan sebagai modul. Berikut ini contohnya:
Saya:
import { ImbaRepl } from 'imba-shell'
# you can also pass "typescript" instead of "imba"
const repl = new ImbaRepl 'imba' , 'imba> '
repl . run !
JavaScript:
const { ImbaRepl } = require ( 'imba-shell' ) ;
/** you can also pass "typescript" instead of "imba" */
const repl = new ImbaRepl ( 'imba' , 'imba> ' ) ;
repl . run ( ) ;
Catatan, Anda dapat meneruskan objek opsi repl Node.js di fungsi
run
.
Berikut ini contoh cara mengaktifkan fitur riwayat:
Saya:
import { ImbaRepl } from 'imba-shell'
import os from 'os'
import path from 'path'
const repl = new ImbaRepl 'imba' , 'imba> ' , path . join ( os . homedir !, '.my_repl_history' )
repl . run !
JavaScript:
const { ImbaRepl } = require ( 'imba-shell' ) ;
const os = require ( 'os' ) ;
const path = require ( 'path' ) ;
const repl = new ImbaRepl ( 'imba' , 'imba> ' , path . join ( os . homedir ( ) , '.my_repl_history' ) ) ;
repl . run ( ) ;
Anda dapat mengatur jalur valid apa pun sebagai file riwayat Anda.
Anda dapat mendaftarkan perintah dengan fungsi registerCommand
:
Saya:
repl . registerCommand 'goodbye' , do
console . log 'Goodbye!'
this . close !
JavaScript:
repl . registerCommand ( 'goodbye' , () = > {
console . log ( 'Goodbye!' );
this . close ();
});
Anda dapat mendaftarkan fungsi dan properti agar tersedia di REPL menggunakan fungsi registerCallback
:
Saya:
const repl = new ImbaRepl
repl . registerCallback do ( ctx )
ctx . foo = 'bar'
JavaScript:
const repl = new ImbaRepl ( ) ;
repl . registerCallback ( ( ctx ) => {
ctx . foo = 'bar'
} )
Saat memanggil foo
di REPL, ia akan mengembalikan bar
.
Instal dependensi:
$ npm i
Bangun dari sumber:
$ npm run build
Uji Imba-Shell
:
$ npm run test
Jika Anda menemukan masalah apa pun terkait keamanan, silakan kirim email ke [email protected] alih-alih menggunakan pelacak masalah.
Lisensi MIT (MIT). Silakan lihat File Lisensi untuk informasi lebih lanjut.