Package Exports
- volt-lsp
- volt-lsp/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (volt-lsp) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
โก Volt LSP
The Blazing-Fast, Termux-Native TypeScript Language Server
๐ Visi Proyek
Volt LSP hadir untuk menghancurkan batasan pengembangan perangkat lunak modern di perangkat mobile. Dirancang khusus untuk lingkungan Termux yang luar biasa, Volt LSP menyediakan pengalaman pengembangan TypeScript/JavaScript kelas satu yang tidak hanya berjalan di Termux, tetapi dilahirkan untuk Termux.
Kami percaya bahwa performa bukanlah sebuah kemewahan, melainkan sebuah hak.
โจ Fitur Utama
- ๐ Performa Super Ringan: Waktu startup instan dan penggunaan RAM minimal
- ๐ค Integrasi Termux-API Mendalam: Notifikasi error, aksi salin & bagikan ke aplikasi Android lain
- โก Inline Task Runner: Jalankan
npm testataunpm run builddan lihat hasilnya langsung di editor - ๐ Info Dependensi & Cache Offline: Hover pada dependensi di package.json untuk melihat deskripsi
- ๐ก Aksi Kode Cerdas: Workflow efisien untuk menyalin dan membagikan kode
- ๐ Zero-Config Philosophy: Install dan langsung gunakan dengan konfigurasi minimal
๐ Prasyarat
Pastikan sistem Termux Anda memiliki paket-paket berikut:
# Update sistem
pkg update && pkg upgrade
# Install Node.js (LTS direkomendasikan)
pkg install nodejs
# Install Git
pkg install git
# Install Termux API (PENTING untuk fitur unggulan!)
pkg install termux-api
# Install Neovim (v0.8+)
pkg install neovimPenting: Pastikan aplikasi Termux:API terinstall di Android Anda dan telah dijalankan sekali untuk mengaktifkan integrasi.
๐ง Instalasi
Instalasi Global (Direkomendasikan)
npm install -g volt-lspInstalasi dari Source
# Clone repository
git clone https://github.com/volt-lsp/volt-lsp.git
cd volt-lsp
# Install dependencies
npm install
# Link secara global
npm linkโ๏ธ Konfigurasi Neovim
Tambahkan konfigurasi berikut ke file ~/.config/nvim/init.lua:
-- Konfigurasi Volt LSP
local lspconfig = require('lspconfig')
-- Setup Volt LSP
lspconfig.volt_lsp = {
default_config = {
cmd = { 'volt-lsp' },
filetypes = { 'typescript', 'javascript', 'typescriptreact', 'javascriptreact', 'json' },
root_dir = lspconfig.util.root_pattern('package.json', 'tsconfig.json', '.git'),
single_file_support = true,
},
}
-- Auto-start untuk file yang didukung
vim.api.nvim_create_autocmd('FileType', {
pattern = { 'typescript', 'javascript', 'typescriptreact', 'javascriptreact', 'json' },
callback = function()
lspconfig.volt_lsp.launch()
end
})
-- Keymaps (opsional tapi direkomendasikan)
vim.keymap.set('n', '<space>ca', vim.lsp.buf.code_action, { desc = 'Code Actions' })
vim.keymap.set('n', 'K', vim.lsp.buf.hover, { desc = 'Hover Info' })
vim.keymap.set('n', 'gd', vim.lsp.buf.definition, { desc = 'Go to Definition' })๐ฏ Panduan Penggunaan
1. Inline Task Runner
Jalankan tugas npm langsung dari dalam editor:
:LspExecuteCommand volt-lsp:runTest
:LspExecuteCommand volt-lsp:runBuildHasil error akan muncul sebagai diagnostic di editor Anda!
2. Aksi Kode Cerdas
- Seleksi kode dalam mode Visual
- Tekan
<space>ca(atau keymap code action Anda) - Pilih
[Volt] Copy to Android Clipboardatau[Volt] Share Code Snippet - Kode akan disalin/dibagikan melalui Termux-API
3. Info Dependensi Offline
- Buka
package.json - Hover cursor pada nama dependensi
- Info paket akan muncul dengan deskripsi, versi, dan detail lainnya
- Bekerja offline setelah cache terbangun!
4. Notifikasi Termux
Volt LSP akan mengirim notifikasi Android untuk:
- Task completion/failure
- Error diagnostics
- Status updates
๐ง Perintah yang Tersedia
| Perintah | Deskripsi |
|---|---|
volt-lsp:runTest |
Menjalankan test suite proyek |
volt-lsp:runBuild |
Menjalankan build/compile |
volt-lsp:copyToClipboard |
Salin kode terpilih ke clipboard Android |
volt-lsp:shareCode |
Bagikan kode melalui aplikasi Android |
volt-lsp:clearCache |
Bersihkan cache dependensi |
๐ Struktur Proyek
volt-lsp/
โโโ package.json # Package configuration
โโโ bin/
โ โโโ volt-lsp # Executable script
โโโ src/
โ โโโ lsp-connection.js # LSP protocol handler
โ โโโ tsserver-proxy.js # TypeScript server proxy
โ โโโ termux-api-manager.js # Termux API integration
โ โโโ task-runner.js # Inline task execution
โ โโโ dependency-info-provider.js # Package info provider
โ โโโ logger.js # Logging system
โโโ index.js # Main server entry point
โโโ README.md # Documentation๐ Konfigurasi Environment
Volt LSP mendukung konfigurasi melalui environment variables:
# Log level (error, warn, info, debug)
export VOLT_LSP_LOG_LEVEL=info
# Log file path (opsional)
export VOLT_LSP_LOG_FILE="/data/data/com.termux/files/home/.volt-lsp.log"
# Disable colors in console output
export VOLT_LSP_NO_COLORS=1๐งช Testing
# Run tests
npm test
# Run with development mode
npm run dev๐ Performance
Volt LSP dioptimalkan untuk lingkungan terbatas:
- Memory Usage: ~50MB (vs ~200MB untuk LSP standar)
- Startup Time: <2 detik
- Battery Impact: Minimal dengan sleep mode otomatis
๐ Troubleshooting
LSP tidak bisa connect
# Cek apakah volt-lsp tersedia
which volt-lsp
# Test manual
volt-lsp --helpTermux-API tidak berfungsi
# Cek instalasi termux-api
pkg list-installed | grep termux-api
# Test API
termux-notification --title "Test" --content "Working"TypeScript server error
# Install/update TypeScript
npm install -g typescript
# Cek tsserver
which tsserverCache issues
# Clear cache manual
rm ~/.volt-lsp-cache.json
# Atau via LSP command
:LspExecuteCommand volt-lsp:clearCache๐บ๏ธ Roadmap
โ v0.2.x (Current Release)
- โ Fondasi LSP yang stabil
- โ Inline Task Runner (Jest & tsc parser)
- โ Aksi Kode (Salin & Bagikan)
- โ Info Dependensi dengan Cache Offline
- โ Notifikasi Diagnostik via Termux-API
๐ฏ v0.3.x (Next: Expansion & Stability)
- ๐ Dukungan parser untuk test runner lain (Vitest, Mocha)
- ๐ Peningkatan logika parsing error
- ๐ Perintah kustom tambahan
- ๐ Optimasi performa lebih lanjut
๐ v0.4.x (Future: Advanced Features)
- ๐ฎ Fitur refactoring dasar
- ๐ฎ Integrasi git untuk info blame
- ๐ฎ Pengaturan yang dapat dikustomisasi
๐ Visi Jangka Panjang
- ๐ฎ Dukungan bahasa lain (Python, Go, Rust)
- ๐ฎ Menjadi standar de-facto untuk development mobile
๐ค Contributing
Kontribusi sangat diterima! Silakan:
- Fork repository ini
- Buat feature branch (
git checkout -b feature/amazing-feature) - Commit perubahan (
git commit -m 'Add amazing feature') - Push ke branch (
git push origin feature/amazing-feature) - Buat Pull Request
๐ License
Proyek ini dilisensikan di bawah MIT License.
๐ Acknowledgments
- Tim TypeScript untuk tsserver yang luar biasa
- Komunitas Termux untuk platform yang menakjubkan
- Kontributor LSP specification
๐ Support
- ๐ Bug Reports: GitHub Issues
- ๐ฌ Discussions: GitHub Discussions
- ๐ง Email: volt-lsp@example.com
Dibuat dengan โค๏ธ untuk komunitas developer mobile
"Performa bukan kemewahan, tapi hak setiap developer" - Volt LSP Team