- Microsoft Edit adalah editor teks sederhana yang memberi penghormatan kepada MS-DOS Editor klasik
- Menyediakan antarmuka modern dan kontrol input yang mirip dengan VS Code
- Tujuan pengembangannya adalah menyediakan lingkungan penyuntingan yang dapat diakses bahkan oleh pengguna yang tidak terbiasa dengan terminal
- Memiliki dependensi opsional pada pustaka ICU untuk fitur Search and Replace
- Mencakup panduan tentang penamaan executable yang jelas untuk package manager serta opsi variabel lingkungan
Gambaran umum proyek open source
- Microsoft Edit adalah editor teks bergaya editor klasik untuk pekerjaan sederhana
- Ciri utamanya adalah reinterpretasi modern dari MS-DOS Editor, dengan UI dan metode input yang familier bergaya VS Code
- Dirancang dengan penekanan khusus pada kesederhanaan agar mudah digunakan bahkan oleh pengguna yang minim pengalaman menggunakan terminal
Karakteristik dan fitur
- Dengan kompleksitas yang minimal, pengguna dapat melakukan pekerjaan penyuntingan teks dasar dengan mudah
- Antarmukanya memberikan nuansa yang familier dan mengutamakan aksesibilitas serta kemudahan penggunaan
- Memiliki dependensi opsional pada pustaka ICU (International Components for Unicode) untuk mendukung fitur Search and Replace
Hal yang perlu diperhatikan untuk package manager dan pengelola packaging
Penamaan paket
- Nama executable bawaan adalah "edit", dan nama alternatifnya adalah "msedit"
- Karena potensi konflik dengan perintah sistem yang sudah ada yaitu "edit", penamaan alternatif seperti "msedit" direkomendasikan
- Disarankan untuk menghindari nama seperti "ms-edit"
Penamaan pustaka ICU (SONAME)
- Pustaka ICU dapat digunakan untuk fitur Search and Replace
- Pustaka yang dicari secara default pada masing-masing OS adalah sebagai berikut
- Windows:
icuuc.dll
- macOS:
libicuuc.dylib
- UNIX dan lainnya:
libicuuc.so
- Jika nama pustaka (SONAME) berbeda tergantung lingkungan sistem, pengaturan dapat dilakukan melalui berbagai variabel lingkungan (
EDIT_CFG_ICUUC_SONAME, EDIT_CFG_ICUI18N_SONAME, dll.)
- Tersedia variabel lingkungan tambahan untuk menangani kasus ketika aturan penamaan ICU export symbol berbeda
Lainnya
- Ada opsi tambahan seperti deteksi otomatis ICU renaming dan dukungan simbol C++
- Untuk memverifikasi pengaturan tersebut, pengujian dapat dilakukan dengan perintah
cargo test -- --ignored
Kesimpulan
- Sebuah editor open source yang menekankan kesederhanaan dan aksesibilitas, sekaligus memungkinkan konfigurasi lingkungan yang fleksibel
- Menyediakan pedoman yang jelas serta kompatibilitas tinggi bagi pengembang, kontributor open source, dan package manager
1 komentar
Opini Hacker News
Ini pada dasarnya cerita tentang proyek yang dibuat hanya karena “aku ingin melakukannya”, dan aku juga ingat pernah sering membuat sesuatu dengan cara begitu sambil belajar memahami cara kerja internalnya. Tapi versi yang menulis ulang Turbo Vision dengan FPC dan bisa dikompilasi untuk berbagai target itu sebenarnya sudah ada sekitar 20 tahun. Menurutku Turbo Vision adalah pustaka jendela mode teks terbaik. Bagian yang benar-benar seru dimulai dari pemetaan seluruh layar teks ke sebuah array. var Screen: Array[1..80,1..25] Of Byte Absolute $B800 Kurang lebih seperti itu kalau tidak salah. Yang benar-benar inovatif dari Turbo Vision adalah jendelanya yang bisa dipindah-pindah, baik modal maupun non-modal. Jadi pada akhirnya array itu diputar dalam loop dan terus ditulis ulang. Cukup cepat. Aku juga ingat pernah menghasilkan lumayan banyak uang dengan pustaka itu
Buat yang penasaran, ada versi C++ Turbo Vision modern, termasuk port dengan dukungan Unicode https://github.com/magiblot/tvision
Array di TP menggunakan row-major. Satu karakter terdiri dari 2 byte (huruf + atribut). Jadi bahkan ada kemudahan seperti
array[1..25, 1..80] of packed record ch: char; attr: byte end absolute $B800:0000. Untuk layar teks monokrom, cukup ganti$B800menjadi$B000. Misalnya untuk lingkungan seperti HerculesAkan sangat bagus kalau antarmuka seperti itu bisa dipakai di terminal dari VSCode, bahkan secara remote
Penasaran bagaimana kamu bisa menghasilkan uang dari pustaka itu. Semoga mau berbagi rahasianya
Setiap kali melihat framework TUI baru sekarang, yang selalu terlintas adalah rasa sayang karena “masih kalah dibanding Turbo Vision”
Di sisi lain, mereka malah memaksakan beban tak perlu seperti AI Copilot ke Notepad. Setahuku inti Notepad dulu adalah melakukan satu hal dengan benar tanpa fitur macam-macam
Edit yang baru ini juga tidak sepenuhnya bebas dari keputusan seperti itu. Di era Satya, MS memang berpura-pura menyukai FOSS, tapi ingatanku justru masa Gates/Balmer jauh lebih ramah bagi developer Windows. Sekarang framework web dan desktop bercampur-aduk, dan bahkan secara internal pun tidak terlalu dipakai. Bukan lagi wizard atau plugin Visual Studio seperti dulu, melainkan alat CLI yang sekadar men-dump file Excel. Ini cukup menunjukkan kurangnya budaya pengembangan Windows lintas generasi dan kurangnya pengalaman di jajaran manajemen
Raymond Chen pernah bilang Notepad ternyata dipakai untuk banyak pengujian. Fungsinya memang sederhana, tapi sering dipakai sebagai alat eksperimen https://devblogs.microsoft.com/oldnewthing/20180521-00/?p=98795
Aku sempat menempel screenshot ke Paint baru di Windows 11, dan bahkan saat diminimalkan pun ia terus memakai CPU 5% serta memakan sekitar 250MB memori. Soal RAM mungkin masih bisa dimaklumi, tapi membuang CPU seperti itu rasanya tidak benar. Dulu rasanya masih ada kebanggaan dan kontrol kualitas
Saat ISP mengalami gangguan sesekali (masalah IPv4/MTU), Notepad bahkan tidak bisa menyimpan. Baru bisa kalau dipaksa tutup. Saat itu aku sedang menyiapkan bypass sementara dengan Wireguard
Kalau modern notepad dihapus, notepad lama juga tidak muncul saat dicari di Start Menu
Aku ingat sekitar sebulan lalu mendengar bahwa MS merilis distro Linux yang lebih familier bagi pengguna Windows. Kalau tidak salah, isinya hanya lingkungan GNOME biasa dan tidak ada yang terlalu istimewa. Padahal saat membuat distro Linux sendiri, MS bisa saja mengganti bash dengan powershell, vim/nano dengan Edit, dan memasukkan .NET atau Visual Studio Code sebagai alat pengembangan bawaan... Kalau MS memanfaatkannya sebagai distro default WSL, mungkin mereka memang tidak akan memenangkan perang, tetapi setidaknya pangsa pengguna bisa naik. Meskipun MS tidak menguasai kernel, mereka tetap bisa menguasai userland. Banyak pengguna Windows pada akhirnya akan memakai alat buatan MS secara alami kalau itu menjadi aplikasi bawaan. Sekarang Microsoft Edit juga bisa dipakai di Linux. Powershell dan aplikasi lain juga begitu. Andai strategi seperti ini dijalankan 10 tahun lalu, mungkin distro MS di WSL hari ini bisa masuk 5 besar. Agak tidak nyaman membayangkan perusahaan besar (M$) bisa memperluas pengaruhnya sampai ke PC pribadiku. Pada akhirnya aku jadi membayangkan hari ketika Microsoft Edit akan dibundel dengan Co-Pilot secara default
Suatu hari nanti kupikir MS setidaknya akan mulai bergerak perlahan ke Linux di area tertentu seperti Windows Server atau Windows tertanam. Dalam jangka panjang, desktop Windows juga mungkin akan berubah bertahap hingga muncul opsi ‘Windows Legacy’ vs ‘Windows Linux Workstation’. Aku membayangkan evolusinya menjadi kernel Linux + WINE yang sudah dituning + VM terintegrasi untuk sebagian beban legacy. Masalahnya, kernel NT dalam banyak hal secara desain masih lebih unggul dari Linux (misalnya bisa pulih setelah seluruh driver GPU crash). Tetapi Windows sendiri makin lama makin berubah dari aset menjadi beban. Secara nyata, mesin pertumbuhan MS adalah Azure & Office 365, sedangkan lisensi Windows nyaris stagnan. Setidaknya, Windows Server dan workstation berbasis Linux masih terasa mungkin terjadi
Azure Linux (sebelumnya CBL-Mariner) adalah distro Linux resmi MS untuk container, VM, dan server. Ini perlu dibedakan dari sekadar skin atau desktop environment untuk pengguna Windows biasa
Dulu MS pernah punya distro Linux bernama “Xenix”, tapi seingatku performanya tidak bagus
Latar belakang lahirnya WSL adalah karena developer di perusahaan besar makin membutuhkan lingkungan Linux. Tim dukungan TI tidak terlalu paham Linux, dan juga tidak terlalu ingin mendukungnya. WSL menyelesaikan masalah itu. Kenyataannya, banyak developer juga sebenarnya tidak ingin memakai Linux dan kurang mahir menggunakan terminal. Mereka bergantung pada alat GUI
Agak tidak realistis kalau MS diam-diam memelihara distro sendiri hanya demi memuaskan selera pengguna Windows
Topik ini cukup ramai sampai terbit 3 kali dalam seminggu
Dulu edit.com (sejak DOS 6.22, lalu 7.0/Win95) adalah IDE pertamaku. Awalnya qbasic, dan itu hampir program yang sama dengan edit.com. Saat belajar C/C++ lewat djgpp pun aku terus memakai edit.com. “File proyekku” adalah
e.bat, jadi aku bisa membuka banyak file sekaligus sepertiedit file1.cpp file2.cpp.... Editor lain terasa kurang nyaman untuk pindah antar banyak file, tapi aku suka karena di sini bisa langsung pindah dengan alt-1,2,3.... Sampai sekarang pun saat mengganti shortcut editor, gaya itu selalu kupertahankan. Memang sebagai editor kode ia cukup buruk. Tidak ada syntax highlighting, dan dukungan indentasinya juga kurang bagus (makanya awalnya aku pakai indentasi dua spasi, karena lebih mudah dilakukan manual). Tapi umpan balik langsung terhadap kode yang kutulis dan rasa familiernya benar-benar unggul. Ada editor seperti qedit, tetapi itu bukan seleraku; editor bergaya Unix menurutku kurang cocok di DOS. Editor baru ini memang mendukung multi-buffer, tetapi tampaknya tidak memakai gaya key binding yang sudah kukenalSebaiknya jadikan issue. Umpan balik seperti ini sering benar-benar diterapkan kalau disampaikan sejak awal. Dan ini bukan cuma mirip, edit.com memang sama seperti qbasic yang dijalankan dengan satu flag tambahan. Aku bahkan pernah langsung memberi flag itu ke qbasic dan memakainya begitu https://news.ycombinator.com/item?id=44037509
Tidak ada syntax highlighting, tetapi ada kapitalisasi sintaks otomatis (misalnya reserved word otomatis menjadi huruf besar). Jadi walau satu baris diketik semua dengan huruf kecil, saat menekan Enter reserved word akan otomatis berubah menjadi huruf besar. Memang bukan hal besar, tapi cukup nyaman
Dibanding era
copy con, edit benar-benar terasa seperti penyelamatAda banyak hal yang kusukai dari berbagai sisi. Pertama, daftar dependensinya bersih dan tanpa embel-embel! Aku benar-benar jatuh cinta. Sulit dipercaya mereka membangun seluruh TUI sendiri hanya untuk editor ini. Bahkan ada dialog dan file browser. Aku ingin mencoba menerapkannya ke proyekku juga. Kalau ada orang terkait di sini, aku penasaran kenapa mereka tidak memakai Ratatui. Kualitas kodenya sangat bagus. Singkatnya: Bravo!
Dulu aku biasa merekomendasikan micro[1] kepada orang yang mencari editor teks seperti ini. Sekarang aku bingung harus merekomendasikan apa
https://micro-editor.github.io/
Menurutku tidak perlu mengubah rekomendasi. edit, setidaknya dari yang kucoba, bahkan tidak mendukung syntax highlighting
Terakhir kali kucek, ukuran file binernya begitu besar sampai rasanya lebih cocok disebut macro daripada micro
Ada juga opsi dte[1]. Dukungan Unicode, key binding CUA, sangat sederhana tapi kuat. Aku puas memakainya sebagai editor terminal pengganti nano https://craigbarnes.gitlab.io/dte/
Di Windows, kamu bisa memasangnya cukup dengan
winget install zyedidia.micro. Rasanya seperti editor dari era 8-bit/16-bit duluAku benar-benar penasaran bagaimana proyek seperti ini bisa disetujui di organisasi sebesar MS. Apakah ini sekadar side project developer, bagian dari product roadmap, atau ada proses meyakinkan pimpinan di baliknya
Editor teks adalah target yang sangat cocok untuk serangan integrasi copilot
Seperti terlihat dari penjelasannya, mereka memang membutuhkan editor yang berjalan di command line (untuk instalasi Windows Core Server), dan juga harus bisa dipakai lewat SSH (karena sejak beberapa tahun lalu Windows menyertakan SSH server secara bawaan), serta diperlukan editor non-modal untuk admin Windows yang tidak punya pengalaman vi. Kebutuhan-kebutuhan itulah yang mengarah ke proyek ini
Kadang tiap tim memang harus mengisi semacam kuota sehingga mereka mengajukan ide, kadang juga karena arahan pimpinan (misalnya penggunaan copilot), atau bermula dari acara seperti hackathon lalu berkembang. Di organisasi riset, saat tenaga teknis sedang punya waktu luang, hal seperti ini juga bisa muncul; atau setelah analisis panjang, barulah anggaran turun. Dari jumlah committer saja kelihatan ini cukup merupakan investasi strategis. Ini bukan proyek yang muncul tiba-tiba dalam semalam
Aku berharap EDLIN versi dengan dukungan Unicode juga keluar. EDLIN bisa menerima input tombol lewat pipe dari batch file secara skriptif untuk mengotomatisasi tugas tertentu. Semacam pengganti sebagian fungsi sed atau awk. Menurutku vi juga punya arsitektur yang mirip, meski seberapa abnormal itu adalah soal lain
ed. Dengan opsi-s, itu sangat cocok untuk skripDiskusi terkait (271 poin, 185 komentar) https://news.ycombinator.com/item?id=44031529