VimPdb adalah modul yang menyediakan integrasi Python debugger pdb ke editor VIM.
Penggunaan:
Kode Python
Menggunakan vimpdb mudah - hanya memasukkan panggilan untuk set_trace dalam kode Anda hampir seperti biasa:
vimpdb impor; vimpdb.set_trace ()
Kemudian mulai aplikasi python Anda / script.
Ketika juru python menyentuh garis itu, vimpdb akan meluncurkan misalnya VIM. VIM harus mendapatkan fokus; beban file sumber di garis yang benar.
Perintah VIM
Dalam VIM, Anda sekarang dapat menggunakan perintah berikut:
: PDBNext n pdb (n) ext
: PDBStep s pdb (s) TEP
: PDBArgs pdb (a) rgs
: PDBUp u pdb (u) p
: PDBDown d pdb (d) sendiri
: PDBReturn r pdb (r) eturn
: PDBContinue c pdb (c) ontinue
: PDBBreak b Set breakpoint di garis yang kursor duduk; mirip dengan pdb b (reak)
: PDBClear B Menghapus breakpoint di garis yang kursor duduk; mirip dengan cl pdb (telinga)
: PDBWord w Mengevaluasi nilai pengenal yang kursor duduk.
: PDBEval? Mengevaluasi ekspresi Python setelah meminta untuk itu.
: PDBReset x Beralih kembali ke debugging normal pada shell dengan pdb standar.
N / A v (im) Beralih kembali ke vimpdb; hanya dalam pdb polos.
Standar kait pdb
Jika Anda merasa sulit untuk mengubah kebiasaan dan terus mengetik
mengimpor pdb; pdb.set_trace ()
Anda dapat menambahkan baris berikut ke file .pdbrc duduk di folder rumah Anda:
vimpdb impor; vimpdb.hookPdb ()
Dengan cara ini, v perintah (im) yang disebutkan di atas ditambahkan ke pdb standar Anda dan Anda dapat beralih ke vimpdb setiap saat.
Persyaratan
vimpdb telah berhasil digunakan di Linux, Mac OSX dan Windows.
Hal ini kompatibel dengan Python 2.7, 2.6, 2.5 dan 2.4. Hal ini tidak kompatibel dengan Python 3.1 (harus sama untuk 3.0).
vimpdb membutuhkan instalasi VIM yang mendukung kedua python dan client pilihan.
Cari tahu apakah itu adalah kasus dengan mengeluarkan perintah berikut di VIM prompt:
: Versi
Jika opsi yang didukung, Anda akan melihat + client dan + python dalam output. Dalam kasus sebaliknya, Anda akan melihat -clientserver atau -python.
Pada Linux dan Windows, VIM standar membangun harus berada server diaktifkan.
Pada Windows, pilihan python disusun dalam VIM tergantung pada versi Python tertentu. Cari tahu apakah versi tertentu diinstal dan bekerja di VIM dengan mengeluarkan perintah berikut di VIM prompt:
: Sys python import; cetak sys.version
Pada Mac OSX, Anda akan ingin menggunakan MacVim. MacVim juga memiliki pilihan python disusun oleh default.
Instalasi:
Instalasi standar dengan easy_install
easy_install vimpdb
Anda jelas dapat juga menggunakan pip.
& Nbsp; Jika Anda melihat ke dalam paket, Anda akan melihat file script VIM: vimpdb.vim. Jangan memindahkannya ke direktori konfigurasi VIM (seperti ~ / .vim / plugin). vimpdb tahu bagaimana membuat script yang tersedia untuk VIM.
Konfigurasi:
Cerita pendek
vimpdb mencoba untuk menghindari tergantung pada konfigurasi pengguna apapun. Jika tidak dapat mendeteksi konfigurasi yang tepat dengan sendirinya, akan mengajukan beberapa pertanyaan yang Anda harus dapat menjawab dengan mudah.
Cerita
Ketika diluncurkan, vimpdb mencari berkas RC nya: ~ / .vimpdbrc. Jika tidak menemukannya, vimpdb menciptakan file untuk Anda dari nilai default.
vimpdb mencoba seperangkat nilai-nilai default yang harus bekerja. Ia memeriksa jika nilai-nilai default yang sesuai. Jika nilai default tidak bekerja, vimpdb meminta nilai-nilai lain secara interaktif sampai telah memeriksa bahwa nilai yang diberikan benar-benar bekerja.
Nilai default per OS tercantum di bawah ini.
Untuk Linux:
vim_client_script = vim
vim_server_script = gvim
SERVER_NAME = GVIM
port = 6666
Untuk MacOSX:
vim_client_script = mvim
vim_server_script = mvim
SERVER_NAME = VIM
port = 6666
Untuk Windows:
vim_client_script = vim.exe
vim_server_script = gvim.exe
SERVER_NAME = VIM
port = 6666
Lihat di bawah untuk rincian tentang setiap opsi.
Anda jelas diizinkan untuk membuat dan menyempurnakan file RC. Namun demikian, file RC harus memegang nilai-nilai untuk semua 4 pilihan. Jika salah satu dari mereka hilang, istirahat vimpdb dan mengeluh sesuai.
Script client VIM - vim_client_script
Untuk berkomunikasi dengan contoh VIM mana debugging terjadi, vimpdb perlu memulai contoh VIM lain dalam mode client.
Pilihan vim_client_script memegang script yang digunakan untuk meluncurkan yang VIM misalnya dengan dukungan client.
Pada Windows, hal itu harus terus vim.exe, tidak gvim.exe. Selanjutnya, tidak termasuk kutipan dalam nilai untuk mengurus spasi di jalan.
VIM script server - vim_server_script
Dalam hal tidak ada VIM misalnya berjalan, vimpdb meluncurkan contoh VIM dalam mode server.
Pilihan vim_server_script memegang script yang digunakan untuk meluncurkan yang VIM misalnya dengan dukungan client. Sebagai debugging dalam contoh VIM ditulis dengan python, misalnya yang harus memiliki dukungan python.
Pada MacOSX dan Linux, vim_server_script dan vim_client_script dapat memegang nilai yang sama.
Pada Windows, hanya VIM grafis dapat digunakan sebagai server, alasan dua nilai default terpisah seperti yang terlihat di atas.
Server Nama - SERVER_NAME
The VIM misalnya dalam mode server memiliki nama.
Secara default, vimpdb berbicara ke server bernama VIM, yang merupakan servername default yang digunakan oleh VIM.
Jika Anda ingin vimpdb menggunakan nama server lain, memodifikasi pilihan SERVER_NAME. Ini harus memegang nama server VIM Anda ingin digunakan untuk debugging.
Anda bisa daftar server VIM yang sedang berjalan menggunakan:
$ Vim --serverlist
VIM
Atau, pada Mac:
$ /Applications/MacVim.app/Contents/MacOS/Vim --serverlist
VIM
Ketika contoh VIM dengan dukungan client berjalan, Anda dapat menemukan nama dengan mengeluarkan perintah berikut di VIM prompt:
: Echo v: namaserver
UDP Pelabuhan - pelabuhan
VIM berkomunikasi dengan vimpdb melalui soket UDP. Secara default, soket dibuka pada port 6666.
Jika socket yang tidak tersedia dalam sistem Anda, Anda dapat menentukan nomor port yang tersedia dengan pilihan pelabuhan.
Mundur Kompatibilitas
Sebelum versi 0.4.1, berkas vimpdb RC (~ / .vimpdbrc) memiliki pilihan script. Opsi yang telah berubah menjadi pilihan vim_client_script. Upgrade harus transparan.
Sebelum versi 0.4.0, vimpdb dikonfigurasi melalui variabel lingkungan. Jika Anda memiliki konfigurasi bekerja, upgrade harus transparan. Nilai-nilai variabel lingkungan VIMPDB_SERVERNAME dan VIMPDB_VIMSCRIPT adalah setup dalam file RC (~ / .vimpdbrc). Mereka menempatkan masing-masing di SERVER_NAME dan script pilihan
Apa yang baru dalam rilis ini:.
- Fix menyoroti dari baris saat ini.
Apa yang baru di versi 0.4.4:
- tes pembersihan: menyingkirkan kelas pembantu dan fungsi .
- kode pembersihan:. Meningkatkan impor gaya
- setelah c (ontinue), pemetaan kunci rusak (lagi).
Apa yang baru dalam versi 0.4.3.2:
- fix nilai default Linux dalam dokumentasi.
- PDBxx dokumen.
- sedikit noise pada VIM baris perintah.
- penyorotan lebih baik dari baris saat ini.
Perintah
Apa yang baru di versi 0.4.2:
- PDBEval (dipetakan ke tombol?) Untuk meminta ekspresi Python untuk mengevaluasi.
- PDBClear (dipetakan ke tombol B) untuk membersihkan ditetapkan sebelumnya breakpoint.
- tab baru terbuka hanya jika sudah ada file dibuka di VIM .
- dekat penyangga vimpdb ketika melanjutkan (c), reset (x) atau berhenti (q).
- peluncuran VIM Server juga jika server lain berjalan .
Apa yang baru dalam dokumentasi versi 0.4.1.2:
- polish.
Apa yang baru di versi 0.3.8:
- fix: beberapa versi VIM perlu impor explicite bahkan meskipun sebagian besar tidak. (Http://github.com/gotcha/vimpdb/issues/issue/5)
Apa yang baru di versi 0.3.7:
- fix: tidak bisa pergi & quot; bawah & quot; setelah beralih dari pdb untuk vimpdb setelah pergi & quot; up & quot; (Http://github.com/gotcha/vimpdb/issues/issue/4)
Apa yang baru di versi 0.3.6:
- fix: & quot; terus & quot; perintah rusak setelah breakpoint telah ditetapkan (http://github.com/gotcha/vimpdb/issues/issue/3)
- fix: pemetaan Key dibiarkan rusak setelah & quot; terus & quot; perintah. (Http://github.com/gotcha/vimpdb/issues/issue/2)
Apa yang baru di versi 0.3.5:
- dokumentasi yang lebih baik, terutama untuk Windows
- memperbaiki capture output yang rusak untuk Python 2,5 dan 2,6
- kompatibilitas Windows (setidaknya XP)
Persyaratan :
- Vim
- Python
Komentar tidak ditemukan