Editor Teks Konsol dengan pintasan keyboard seperti Windows (ctrl-z, x, c, v)

31

Oke, saya sadar bahwa saya berisiko perang agama yang menanyakan pertanyaan tentang editor teks, tetapi begini saja.

Persyaratan

  • Paling banyak digunakan untuk mengedit file konfigurasi
  • Berbasis teks bukan GUI
  • Tersedia untuk rasa Raspian dari Debian
  • Tidak diperlukan pembelajaran untuk pengguna Windows / Mac GUI (no vi / vim)
  • Manfaatkan sepenuhnya tombol yang ditemukan pada keyboard modern, yaitu home, end, pgup, pgdn, del
  • Gunakan pintasan keyboard yang terdapat di hampir semua aplikasi GUI, mis. Undo ( Ctrl-Z), Redo ( Shift-Ctrl-Z), Pilih Semua ( Ctrl-A), Potong ( Ctrl-X), Salin ( Ctrl-C), Tempel Ctrl-Vpilihan ( Shift-Arrow), Buka pilihan ( ), Abaikan kata ( Ctrl-Arrow), Hapus pilihan (), Hapus pilihan ( Del) dll
  • Opsional : dukungan mouse untuk mengubah posisi kursor dan memilih teks

Tentunya ini bukan pertanyaan besar di zaman sekarang ini?

Greg Woods
sumber
2
"Tidak diperlukan pembelajaran" kedengarannya seperti kriteria pembatasan yang luar biasa (dan mungkin tidak realistis) terutama ketika Anda meminta alat CLI ...
jasonwryan
1
nanoakan dekat. Itu tidak akan memiliki cara pintas yang sama persis tetapi cara pintas serupa untuk melakukan operasi yang sama. atau Anda dapat membuat .nanorc dan memiliki pintasan khusus
h3rrmiller
2
@jasonwryan Sebagai pengguna Windows (atau Mac) yang berpengalaman, saya sudah memiliki pembelajaran yang diperlukan untuk menggunakan editor teks modern hanya menggunakan keyboard. Saya ingin menggunakan pengalaman yang sama dalam alat Linux CLI.
Greg Woods
3
Pintasan yang Anda harapkan adalah modifikasi Microsoft pada pedoman CUA IBM . Baik CUA maupun modifikasi MS tidak tradisional di dunia unix.
Gilles 'SANGAT berhenti menjadi jahat'
4
@Gilles Saya tidak sepenuhnya yakin saya setuju dengan memanggil pintasan "Windows". Setiap aplikasi GUI umum yang melakukan pengeditan teks menggunakan pintasan tersebut di semua platform utama. Banyak dari pintasan tersebut juga ada sebelum Windows.
jw013

Jawaban:

13

Saya telah mencoba semua solusi di atas (kecuali yang jelas-jelas bodoh, seperti emacs atau konfigurasi vi).

Keseluruhan terbaik adalah tilde. Benar-benar dibuat untuk menjawab pertanyaan asli yang diajukan oleh Greg Woods. Itu harus ditambahkan ke semua repositori linux standar.

Sebagai pengguna nano yang sudah lama, yang menemukan jalannya di sini mencari sesuatu yang sama sederhana dengan buffer undo / redo nyata dan binding kunci editor GUI standar, saya sungguh-sungguh merekomendasikan editor Sanos. Ini kecil dan tidak hanya apa yang diminta permintaan asli. Satu-satunya cacat adalah tidak ada dukungan mouse untuk menempatkan kursor. Itu editor minimal favorit saya yang baru, dan nano akan masuk ke tempat sampah. Anda memang harus mengompilasinya, tetapi ini adalah program sepele untuk dikompilasi - satu file sumber bahasa C. Saya mengkompilasinya menjadi "waras" untuk "editor sanos" (sanos sebenarnya adalah mini-os).

Dan sekarang, untuk mengulangi pertanyaan, yang sebagian besar balasan dan suara tampaknya mengabaikan: permintaan adalah untuk editor dasar sederhana mati yang hanya bekerja dan menggunakan binding GUI standar (yang, omong-omong, bukan milik Windows).

Dua yang saya rekomendasikan, dan fte, adalah satu-satunya yang mengisi tagihan, dan fte terlalu unik dalam xterm.

mungkin2015pengunjung
sumber
Saya mengkompilasi sanos tetapi tombol shift + panah tidak berfungsi, juga shift berfungsi untuk huruf besar, saya menggunakan dempul untuk ssh
BioHazard
Ini adalah jawaban terbaik. Saya mencoba keduanya, dan Shift + Arrows untuk seleksi dan Ctrl + C Ctrl + V dll berfungsi di keduanya. Saya harus menonaktifkan pintasan keyboard yang bertentangan di emulator terminal meskipun seperti Shift + Up untuk menggulir kembali satu baris.
SoleSoul
Yang menarik adalah editor Sanos hanya ~ 2000 baris kode, memiliki Control-Z undo, shift-select, menangani tab dengan baik. Tampaknya fungsi unindent () memiliki bug. Saya pikir ini akan menjadi titik awal yang bagus untuk membangun editor yang lebih kuat.
PJ Brunet
Tuhanku. Terima kasih untuk itu. mencoba tilde selama 20 detik dan berkata "ya, ini yang saya inginkan!" tepuk tangan!
Paul Erlenmeyer
11

Coba Mikro.

https://github.com/zyedidia/micro

Micro adalah editor teks berbasis terminal yang bertujuan agar mudah digunakan dan intuitif, sementara juga memanfaatkan kemampuan penuh terminal modern. Muncul sebagai satu, termasuk baterai, biner statis tanpa ketergantungan, dan Anda dapat mengunduh dan menggunakannya sekarang.

Seperti namanya, micro bertujuan untuk menjadi penerus dari editor nano dengan menjadi mudah untuk menginstal dan digunakan dalam keadaan darurat, tetapi mikro juga bertujuan untuk menyenangkan untuk digunakan penuh waktu, apakah Anda bekerja di terminal karena Anda lebih suka (seperti saya), atau karena Anda perlu (over ssh).

Tangkapan layar & tema warna

Ini hampir sempurna. Pilihan shift-panah bekerja dengan sempurna. Control-C (cut), Control-V (paste), Control-Z (undo), Control-S (save) semua berfungsi seperti yang diharapkan. Itu juga indentasi dan membatalkan pilihan dengan sempurna.

Anda memerlukan emulator terminal yang mendukung dengan benar tombol shift. Terminator berfungsi dengan baik di luar kotak. Beberapa terminal berbasis Android tidak mendukung pemilihan shift, tetapi JuiceSSH (paling populer di Google Play) berfungsi, meskipun saya belum mengujinya secara luas.

PJ Brunet
sumber
2
Dan dukungan mouse yang luar biasa, dan highlight sintaks yang indah.
PJ Brunet
Ini mungkin yang paling "modern", sebagaimana dibuktikan oleh skema warna default dan pilihan bahasa yang didukung. Namun, pengikat tombol berbeda secara signifikan dari sesuatu seperti Sublime, ini adalah PIA untuk mengubahnya, dan banyak pintasan keyboard sama sekali tidak didukung.
Aleksandr Dubinsky
9

joeadalah, IMO, yang terbaik dari editor-yang-bukan-vi. Ini adalah editor berfitur lengkap yang layak, bukan editor minimal tanpa cacat seperti ini nano.

Jika dipanggil sebagai jstaratau joe, ikatan-kunci default adalah WordStar- like yang juga telah digunakan di banyak program lain selama bertahun-tahun, termasuk editor di Borland Turbo Pascal & IDE C Turbo, jadi seharusnya sudah tidak asing lagi bagi banyak pengguna. Jika dipanggil sebagaijmac kunci-binding- emacslike. Binding kunci dapat dikonfigurasi dan jika Anda tidak dapat menemukan konfigurasi yang cocok untuk Anda, Anda dapat menambahkan sendiri atau menyalin dan memodifikasi yang sudah ada.

Saya terlalu banyak vipengguna untuk menggunakannya sendiri, tetapi saya sering merekomendasikannya kepada orang-orang yang tidak suka atau ingin belajar editor modal sepertivi , dengan hasil yang baik.

Berikut deskripsi dalam paket debian:

Joe, atau Editor Sendiri Joe, memiliki kesan sebagian besar editor teks PC: urutan kuncinya mengingatkan pada editor WordStar dan Turbo C, tetapi rangkaian fitur jauh lebih besar daripada yang ada. Joe memiliki semua fitur yang diharapkan oleh pengguna Unix: penggunaan penuh termcap / terminfo, integrasi Unix VI-style yang lengkap, file konfigurasi yang kuat, dan sistem pencarian ekspresi reguler. Ini juga memiliki enam kartu referensi bantuan yang selalu tersedia, dan antarmuka pengguna yang intuitif, sederhana, dan dipikirkan dengan matang.

Joe memiliki algoritma pengoptimalan pembaruan layar yang hebat, banyak jendela (melalui / di antaranya Anda dapat menggulir) dan tidak memiliki gagasan membingungkan tentang buffer bernama. Ini memiliki sejarah perintah, ekspansi TAB dalam menu pemilihan file, fungsi undo dan redo, (un) indentasi dan pemformatan paragraf, memfilter blok yang disorot melalui perintah Unix eksternal, mengedit pipa ke dalam atau keluar dari suatu perintah, dan blok memindahkan, menyalin, hapus atau filter.

Melalui file konfigurasi gaya QEdit sederhana, Joe dapat diatur untuk meniru editor seperti Pico dan Emacs, bersama dengan imitasi lengkap WordStar, dan versi mode terbatas (memungkinkan Anda mengedit hanya file yang ditentukan pada baris perintah). Joe juga memiliki pembaruan layar yang ditangguhkan untuk menangani typeahead, dan memastikan penangguhan tidak dilewati oleh tty buffering. Ini dapat digunakan bahkan pada 2400 baud, dan itu akan bekerja pada semua jenis terminal waras.

AFAIK, dipaket untuk semua distro, dan sumber tersedia di http://joe-editor.sourceforge.net/ - sumber debianised harus dikompilasi di Raspian jika belum ada paket biner.

cas
sumber
1
Terima kasih atas sarannya. Ini mungkin bermanfaat bagi seseorang, tetapi saya tidak pernah menyukai pintasan gaya Wordstar. Saya dapat mempertimbangkan kembali ketika saya membutuhkan editor yang lebih kaya fitur.
Greg Woods
11
-1: Pintasan keyboard Joe tampaknya sama "tidak lazim" dengan vim atau nano. Misalnya, CTRL + A tidak 'pilih semua', CTL + F tidak 'menemukan'.
Garrett
Saya telah menggunakan Joe sejak 1994, dan saya pikir ini bukan jawaban terbaik untuk pertanyaan itu, meskipun Joe relatif mudah dibandingkan dengan Vim. Saya perhatikan Joe hilang dari beberapa distro sekarang, tetapi Anda dapat dengan mudah mendapatkan "Jupp" (berdasarkan Joe) dengan yum atau apt-get. Jupp memang memiliki pilihan SHIFT. Potong dan tempel agak aneh dengan Jupp, tetapi mudah dipelajari, Control-J untuk bantuan.
PJ Brunet
3
Maaf, tetapi apakah ini benar-benar menjawab pertanyaan? joesama sulitnya untuk keluar dari vim, dan hotkey Windows tidak berfungsi.
mafu
Saya dibawa kembali ke jawaban ini dengan suara positif. Seperti yang ditunjukkan Gilles dalam jawabannya , ada ikatan kunci CUA yang tersedia joe.
cas
7

Coba Editor Teks FTE . Ada beberapa versi yang tersedia; yang Anda inginkan mungkin sfteyang ada dalam fte-terminalpaket Debian .

masukkan deskripsi gambar di sini

Jim Paris
sumber
Saran yang bagus, tetapi hanya mencoba Shift + DownArrow untuk memilih teks yang menyebabkan banyak pesan 'FIXME' merusak layar. Pintasan langsung dari tahun delapan puluhan ... Ctrl-Ins untuk menyalin? Alt-Backspace untuk Undo? Beberapa opsi adalah linux geek murni: "Copy - Append"? Saya tidak harus membaca manual untuk perintah Salin! Di sisi positifnya saya menyukai browser direktori ketika Anda memulai.
Greg Woods
1
Aneh. Hal pertama yang saya coba adalah Shift + DownArrow untuk memilih teks, diikuti oleh Ctrl-C dan Ctrl-V untuk menyalin dan menempel, karena saya pikir itu yang akan Anda coba juga. Mereka semua bekerja untuk saya.
Jim Paris
Hmm. Aneh. Saya berada di versi terminal yang saya dapatkan dengan sudo apt-get install fte-terminal. Saya akan mencoba lagi ketika saya punya beberapa menit.
Greg Woods
1
Sama disini. Mungkin itu tergantung pada terminal emulator yang digunakan; punyaku adalah xterm.
Jim Paris
itu masuk akal, karena Diakonos tidak bekerja dengan baik. Saya harus melihat melalui opsi yang tersedia di PutTY
Greg Woods
7

Singkat cerita: Gunakan nano

Anda dapat dengan mudah menyesuaikan nanoagar sesuai dengan kebutuhan Anda, terutama yang terkait dengan pintasan keyboard yang Anda inginkan. Untuk melakukannya, lihat bindparameter yang dapat Anda atur di ~/.nanorcfile lokal Anda . Tentu saja, Anda juga dapat mengunduh file konfigurasi yang sudah jadi (lihat di bawah).

Anda dapat mengikat kombinasi tombol yang dimodelkan Ctrl+dengan yang sebelumnya ^dan Alt+dengan M-("Meta"). Sayangnya, sepertinya tidak ada cara untuk mengikat kombinasi yang berisi Shiftkunci. The nano default untuk melewati wordwise adalah Ctrl+Spacedan Meta+Space. Dan seolah-olah itu tidak cukup, Anda juga tidak dapat mengikat tombol panah . Tapi mungkin Anda bisa hidup dengan kekurangan ini.

Karena lihatlah sisi baiknya: Sebenarnya, ada paket di github , sebagian besar berisi penyorotan sintaksis yang ditingkatkan, tetapi juga datang dengan hampir semua ikatan kunci yang Anda inginkan . Instal dengan menelepon make, tetapi perlu diketahui bahwa saat ini Anda ~/.nanorcakan ditimpa selama proses.

Saya pikir Anda harus mencobanya, walaupun Shift+Arrowpemilihan itu tampaknya menjadi salah satu prioritas tertinggi Anda. Di nano, Anda akan menggunakan Ctrl+Auntuk memulai mode pemilihan, sehingga Anda bahkan tidak harus terus Shiftditekan ke bawah! Dan Anda selalu dapat menggunakan Ctrl+Shift+Xpintasan dll. Yang disediakan terminal Anda. Seperti yang mungkin Anda kenal, saya cukup senang nano, mungkin sebagian karena menjadi mantan pengguna Windows.


Sunting: Berikut adalah tangkapan layar yang menunjukkan beberapa ikatan kunci terkait di bilah bantuan bawah.

Editor Nano dilengkapi dengan paket pengaturan github.com/craigbarnes/nanorc

J. Katzwinkel
sumber
5

Cream adalah konfigurasi vim yang modeless dan yang menggunakan semua pintasan keyboard seperti Ctrl + X, Ctrl + V yang mungkin Anda harapkan.

Tidak seperti Vim, itu tidak asing bagi orang yang terbiasa dengan aplikasi Windows GUI seperti Notepad. Jika Anda dapat menggunakan Notepad, Anda dapat menggunakan Cream.

  • Dapat digunakan untuk mengedit file konfigurasi
  • Berbasis teks serta GUI
  • Tersedia untuk rasa Raspian dari Debian
  • Tidak diperlukan pembelajaran untuk pengguna Windows / Mac GUI
  • Manfaatkan sepenuhnya tombol yang ditemukan pada keyboard modern, yaitu home, end, pgup, pgdn, del
  • Gunakan pintasan keyboard yang ditemukan di hampir semua aplikasi GUI, mis. Undo (Ctrl-Z), Redo (Shift-Ctrl-Z), Pilih Semua (Ctrl-A), Potong (Ctrl-X), Salin (Ctrl-C), Rekatkan (Ctrl-V), Perluas pilihan (Shift-Arrow), Abaikan kata (Ctrl-Arrow), Hapus pilihan (Del) dll
  • Dukungan mouse untuk mengubah posisi kursor dan memilih teks
RedGrittyBrick
sumber
Butuh waktu beberapa saat untuk menemukannya, cream -vmembawa Anda ke mode teks, dan F12 memberi Anda menu.
PJ Brunet
4

Emacs hadir dengan mode binding CUA . Tambahkan baris

(cua-mode 1)

untuk Anda ~/.emacs.

Joe adalah editor mode teks kecil hingga sedang dengan ikatan kunci yang dapat dikonfigurasi. Ada satu set binding CUA (tidak dalam distribusi standar, saya pikir, jadi instal di direktori home Anda).

Gilles 'SANGAT berhenti menjadi jahat'
sumber
3
Wow, ada nama untuk apa yang saya cari "Akses Pengguna Biasa" en.wikipedia.org/wiki/IBM_Common_User_Access Terima kasih untuk itu!
Greg Woods
3

Diakonos juga memenuhi sebagian besar persyaratan:

Frustrasi oleh editor konsol lain itu? Anda sudah tahu tombol apa yang harus ditekan dalam aplikasi GUI Anda untuk membuka, menyimpan, menyalin, memotong, menempel dan membatalkan. Mengapa editor teks konsol Anda berperilaku berbeda? Jawab: seharusnya tidak.

Selamat datang di Diakonos, editor teks konsol dengan pemetaan kunci yang praktis sudah Anda ketahui. Mudah digunakan dan mudah dikonfigurasi, tetapi kuat di tangan pengguna listrik.

Paket Debian ada, saya tidak punya informasi tentang rasa yang diminta.

manatwork
sumber
Terima kasih untuk sarannya. Saya bisa mendapatkan di Raspian. Masih tidak dapat menggeser-pilih dan fungsi lainnya. Tapi seperti yang disarankan @ jim-paris, kemungkinan ada masalah emulator terminal.
Greg Woods
2

Lihatlah editor Sanos:

http://www.jbox.dk/sanos/editor.htm

Hanya biner 28k yang dapat melakukan apa yang semua editor lain coba - dan gagal.

Itu melakukan persis apa yang diminta OP:

Shift + panah untuk menyorot teks

Ctrl-X, C, V untuk cut / copy / paste

Anda juga dapat memiliki beberapa file terbuka secara bersamaan, dan "pipa" perintah ke dalamnya. Misalnya, tekan Ctrl-P dan saat diminta masuk:

cat yourfile

dan itu akan memasukkan file Anda di posisi kursor. Dengan cara ini kekuatan penuh dari perintah bash siap membantu Anda (gunakan grep untuk mendapatkan hanya bagian-bagian tertentu dari file yang disisipkan).

ernobe
sumber
1

Jawabannya adalah kitty + tilde (KiTTY adalah garpu dari versi 0.66 dari Putty) kawan! Seluruh hidupku adalah dusta: D

http://www.9bis.net/kitty/?page=Download

Ini telah memperbaiki bug tombol panah + yang dikirim dengan dempul (juga tombol shift + panah tidak berfungsi di klien ssh lainnya)

BioHazard
sumber
Tampaknya setidaknya sebagian dari masalah memang berasal dari terminal, jadi saya akan menantikan untuk mencoba ini.
Greg Woods
1

Berikut ini telah diuji menggunakan nano dari terminal di MS-Windows.
Ini akan membuat nano Anda selangkah lebih dekat mendukung pintasan "universal" untuk menyalin / memotong / menempel dll. (Setidaknya di dunia Windows).
Tambahkan baris ini ke file/etc/nanorc

bind ^c copytext main
bind ^x cut main
bind ^v uncut main
bind ^z undo main
bind ^y redo main
bind ^f whereis main
bind F3 findnext main
bind ^h replace main

Ketahuilah bahwa itu berfungsi per baris jika Anda tidak memilih teks terlebih dahulu: - /

Jika Anda memiliki masalah dalam memilih teks dalam nano dengan shift+arrow-keysmaka waspadai ini tampaknya tidak terkait dengan nano tetapi program terminal Anda! Itu tidak bekerja di Putty, tetapi itu misalnya bekerja di Kitty (garpu Putty, versi Windows / versi Linux ) atau klien SSH Google untuk Chrome.

(Saya menggunakan buster Debian)

Tuan Calvin
sumber
0

Le adalah solusi lain. Ini seperti Norton Commander (dari ketenaran Midnight Commander) tetapi mungkin lebih intuitif.

Di MC Anda menekan F3 untuk memulai dan mengakhiri pemilihan wilayah, lalu gunakan F5 atau F6 untuk menyalin atau memindahkannya. Pada le F5 mulai seleksi dan jika Anda bergerak maju, F6 akan mengakhirinya. Jika Anda bergerak maju melewati pilihan sebelumnya, F6 akan menambahkan semuanya, atau jika Anda mundur dan menekan F5 semuanya akan ditambahkan. Jadi, Anda dapat menggunakan F5 atau F6 jika F3 di MC. Jika Anda menekan F5 dan bergerak mundur dan menekannya lagi itu memilih wilayah itu. Jika Anda menekan F6 dan bergerak maju dan menekannya lagi itu memilih wilayah itu.

Untuk menginstal gunakan:

apt-get install le

atau unduh sumber dan bangun (saya sudah mengujinya di sisi Debian):

http://lav.yar.ru/download/le/le-1.14.9.tar.gz

Ini paket Debian: http://packages.debian.org/sid/le

ernobe
sumber
0

Saya sudah mencoba Nano, Joe, Pico dll. Walaupun mereka lebih mudah daripada Emacs atau Vi [m], mereka semua memiliki UI yang aneh dan aneh, tidak seperti program lain sejak 1980-an.

Tapi disana yang modern, CUA-compliant editor untuk Linux di luar sana!

Seseorang merekomendasikan FTE. Sudah lama tidak dirawat, tetapi ada garpu saat ini yang disebut eFTE: http://sourceforge.net/projects/efte/

Itu cukup bagus; misalnya, ia dapat menjebak tombol Alt untuk akses menu bahkan ketika berjalan di jendela terminal-emulator X.

Ada satu lagi yang saya suka juga, disebut Tilde, yang saat ini dikelola dan memiliki paket terbaru yang tersedia. http://os.ghalkes.nl/tilde/

Liam Terbukti
sumber
1
Editor Tilde harus menjadi jawaban yang tepat. Editor ini sangat bagus!
0

Baru-baru ini menemukan MinEd [ http://towo.net/mined/]

# Option "emul": emulation mode, especially control key function mapping; 
# takes a single-letter value: 
# e: emacs mode 
# s: WordStar mode 
# w: Windows keyboard mode 
# W: Windows behaviour (-w, CRLF for new files, cmd.exe with ESC !) 
# p: pico mode 
# m: mined default 
#emul m
go2null
sumber
Tampaknya ini dalam pengujian Debian dan memiliki dukungan mouse, tapi saya belum mencobanya.
PJ Brunet
0

Fiflo adalah solusi minimalis. Pintasan keyboard yang didukung: Ctrl+Arrows Ctrl+Backslash Ctrl+D Ctrl+O Ctrl+Q Ctrl+O Ctrl+F1-F4 .

Saya menggunakannya karena saya tidak punya waktu untuk membuka etc/nanorc.

Szymon Talachna
sumber
0

mcedit adalah yang terbaik. setidaknya mengirim Anda ke tahun 90-an dengan UI. tidak ada SHIFT-panah seperti dengan semua editor yang disebutkan, tetapi sangat antarmuka Norton Commander, tombol Fx, CtrlO untuk melihat shell. Mengingat posisi ketika kembali, mengenali penyorotan bahkan untuk file yang tidak mungkin (tanpa ekstensi). Lebih cerdas, dekat dengan alternatif Windows, dan jauh dari alternatif Unix juga (lebih baik).

pengguna533385
sumber