WezTerm उपयोग अनुभव
शुरू करने से पहले
- WezTerm इंस्टॉल होना चाहिए
- macOS उपयोगकर्ता Homebrew से इंस्टॉल कर सकते हैं (
$ brew install wezterm)
Lua के बारे में
- WezTerm की सेटिंग्स Lua में परिभाषित होती हैं
- Lua अन्य dynamic programming languages जैसी है, इसलिए इसे पढ़ना आसान है
- जटिल सेटिंग्स के लिए Lua को गहराई से सीखना उपयोगी है
कॉन्फ़िग फ़ाइल और फ़ीडबैक लूप
- कॉन्फ़िग फ़ाइल
$XDG_CONFIG_HOME/wezterm/wezterm.lua में होती है
- कॉन्फ़िग फ़ाइल बदलने पर यह अपने आप reload हो जाती है
- debug overlay (
CTRL + SHIFT + L) से logs देखे जा सकते हैं
appearance सेटिंग्स
color theme
- WezTerm 1,000 से अधिक color themes देता है
- उदाहरण:
config.color_scheme = 'Tokyo Night'
dynamic color theme
- हर बार नई window खोलने पर random color theme बदलने के लिए example code दिया गया है
system appearance का सम्मान
- सिस्टम के appearance mode के अनुसार color theme अपने आप बदलती है
appearance.lua फ़ाइल बनाकर सेट किया जा सकता है
font सेटिंग
- डिफ़ॉल्ट font JetBrains Mono है
- उदाहरण:
config.font = wezterm.font({ family = 'Berkeley Mono' })
window styling
- window background transparency और blur सेट किए जा सकते हैं
- उदाहरण:
config.window_background_opacity = 0.9
status bar सेटिंग
- tab bar के दाईं ओर powerline style status bar जोड़ा जा सकता है
- WezTerm के event API का उपयोग
key सेटिंग्स
default key mapping
- default key mappings को रखा जा सकता है या disable किया जा सकता है (
config.disable_default_key_bindings = true)
key mapping उदाहरण
Option + Left Arrow और Option + Right Arrow को शब्दों के बीच move करने के लिए map किया जा सकता है
- कॉन्फ़िग फ़ाइल खोलने के लिए shortcut सेट करना (
CMD + ,)
multiplexing फीचर
- WezTerm के multiplexing फीचर का उपयोग
- window split shortcut सेट करना (
CTRL + SHIFT + P)
leader key सेटिंग
- leader key को
CTRL + A पर सेट करना
- window split shortcut को leader key के साथ उपयोग करना
pane movement
- panes के बीच move करने के लिए key mapping सेट करना (vim direction keys का उपयोग)
pane resizing
- pane size बदलने के लिए key table सेट करना
- leader key के साथ pane size adjust करना
project workspace
workspace बनाना और बदलना
projects.lua फ़ाइल बनाकर project switch function जोड़ना
- project चुनने पर नया WezTerm workspace बनता है
GN⁺ का सारांश
- WezTerm, Lua आधारित flexible configuration की वजह से गहरे customization की सुविधा देता है
- auto reload और debug overlay की वजह से settings बदलना आसान है
- multiplexing और workspace management फीचर्स मजबूत हैं, और विभिन्न key mappings से productivity बढ़ाई जा सकती है
- समान फीचर्स देने वाले अन्य terminals में Alacritty और kitty शामिल हैं
1 टिप्पणियां
Hacker News राय
हाल ही में WezTerm पर स्विच किया और इससे बहुत संतुष्ट हूँ। पहले kitty इस्तेमाल करता था, और iTerm2 की settings और सादगी पसंद थी। WezTerm की built-in functionality उससे कहीं बेहतर है। terminal config इतनी छोटी है कि पूरी editor screen पर दिख जाती है। उसके बाद terminal की चिंता ही नहीं करनी पड़ती
WezTerm GitHub issues पर बहुत तेज़ी से प्रतिक्रिया देता है, और आमतौर पर एक-दो दिन में समस्या ठीक कर देता है। SSH के जरिए modifier keys से जुड़ी एक छोटी समस्या को छोड़कर functionality लगभग perfect है। तेज़ है और अच्छा है
Kubuntu से Ubuntu पर स्विच करते समय Konsole की कुछ सुविधाएँ (infinite scrollback, scrollback search) चाहिए थीं, लेकिन Konsole install नहीं करना चाहता था, इसलिए WezTerm install किया। WezTerm तुरंत पसंद आ गया, हालांकि इसकी कई सुविधाएँ आसानी से दिखती नहीं हैं। documentation बहुत अच्छी है, और लेखक बहुत सक्रिय और मददगार हैं
Mac Terminal, iTerm2, Kitty, Warp वगैरह आज़माए, लेकिन आखिरकार WezTerm पर टिक गया। इसे configure करना आसान है, तेज़ है, और दिखने में अच्छा है। एक theme भी बनाई
WezTerm का बड़ा फायदा क्या है? WezTerm पूरी तरह cross-OS support देता है, इसलिए इसे Linux, macOS, Windows सब पर इस्तेमाल किया जा सकता है। terminal config कई OS में साझा की जा सकती है
लगभग 1 साल से WezTerm इस्तेमाल कर रहा हूँ, और GitHub पर Wez को sponsor भी करता हूँ। WezTerm एक शानदार terminal है, और developer भी शानदार है। quick copy और दूसरे copy modes का अक्सर उपयोग करता हूँ
iTerm2 का इस्तेमाल जारी रखने की वजह "Edit->Selection Respects Soft Boundaries" feature है। यह feature pipe character | को panel separator की तरह समझता है, इसलिए selection उसी हिसाब से wrap होती है
यहाँ दूसरे users की राय से सहमत हूँ। macOS इस्तेमाल करना शुरू किए लगभग 10 साल हो गए हैं, और iTerm2 इस्तेमाल करता आया हूँ। हाल में यह धीमा होने लगा। cmd-tab करने पर terminal दिखने तक 1 सेकंड से ज़्यादा इंतज़ार करना पड़ता था
Wez Rust में system programming पर एक किताब प्रकाशित करने वाले हैं
OT: HashiCorp के संस्थापक द्वारा बनाए गए Ghostty का सबसे ज़्यादा इंतज़ार है