Customize Command Prompt trên window - Hóa phù thủy terminal với Clink, Starship và Alias, giúp tăng hiệu suất làm việc với termial

Posted on:27 tháng 11, 2023 at 09:30

Xin chào các bạn, Nếu bạn là một lập trình viên Frontend hay thường xuyên làm việc với Git, Nodejs thì chẳng lạ gì với cái command prompt đen sì của window nữa nhỉ 😆.

Trong công việc hàng ngày của mình, mình thao tác khá nhiều với git và đặc biệt mình là một người lười gõ, mình hay sử dụng tool trên visual studio và visual studio code để thao tác nhanh với git nhưng nó thật sự không ngầu một tẹo nào.

Và nếu bạn cũng lười gõ lệnh như mình thi chắc chắn rồi, việc customize một terminal vừa cool ngầu, vừa tiện ích sẽ giúp ích rất nhiều trong công việc của bạn, khiến đồng nghiệp đi qua ai cũng trầm trồ .

Thôi không lan man nữa, đi ngay vào vấn đề thôi nào .

Table of contents

Open Table of contents

Thành quả đạt được

Một chiếc Command Prompt cool ngầu và màu mè 😱

image

Chuẩn bị

Vì mình sử dụng window nên bài viết này mình chỉ nói về command prompt trên window thôi nhé, mình nhớ không lầm là linux hay mac có cái oh my zsh cũng siêu cấp vip pro nhé nếu bạn dùng linux hoặc mac thì bạn có thể tham khảo bài viết này để customize terminal của mình nhé.

Đầu tiên chúng ta phải tải về một Nerd Font. Nôm na thì nerd font nó là một bộ font mở rộng giúp làm việc với các biểu tượng và ký tự đặc biệt tốt hơn.

Bạn có thể vào đây và chọn một bộ font ưng ý nhé , ở đây mình chọn font Cascadia Mono. Bạn chọn font yêu thích, tải xuống và cài đặt theo sở thích của mình.

Sau khi cài xong font, ta đổi font mặc định của Command Prompt thành font vừa cài nhé.

image

Cài đặt font ở Visual studio code

image

Clink là một tiện ích mở rộng cho Command Prompt trên Windows.

Nó cung cấp nhiều tính năng như gợi ý dòng lệnh, lịch sử tương tác và tìm kiếm lịch sử dòng lệnh.

Điều này giúp người dùng dễ dàng tìm kiếm lệnh trước đó và tiết kiệm thời gian.

Ngoài ra, Clink còn hỗ trợ tùy chỉnh màu sắc, tạo giao diện dễ nhìn và dễ sử dụng.

Tải Clink tại đây và cài đặt.

Giới thiệu cài đặt Starship

Starship là một công cụ dòng lệnh đa chức năng và dễ nhìn, thay thế cho prompt dòng lệnh thông thường.

Nó cho phép người dùng tùy chỉnh giao diện và hiển thị thông tin của prompt.

Starship tương thích với nhiều loại môi trường và hỗ trợ các shell phổ biến.

Với tính linh hoạt và khả năng tùy chỉnh mạnh mẽ, Starship đã trở thành công cụ ưa thích của người dùng yêu thích giao diện đẹp mắt và chức năng mở rộng trên dòng lệnh.

Tải Starship tại đây và cài đặt.

Cấu hình Starship

Sau khi đã cài đặt thành công Clink và Starship chúng ta bắt đầu tiến hành config để chạy Starship mặc định với clink.

Thêm file starship.lua vào thư lục clink bên trong AppData/Local Nhấn tổ hợp phim Window + r để mở cửa sổ run và pate đường dẫn bên dưới vào để đi tới thư mục clink.

1
%localappdata%\clink

Tạo file starship.lua và thêm nội dung bên dưới vào và lưu lại.

starship.lua
1
load(io.popen('starship init cmd'):read("*a"))()

Customize Starship Theme

Để terminal trở nên màu mè và cool ngầu hơn chúng ta tiến hành custom config cho starship.

Nếu bạn lười như mình thì có thể xử dụng các theme có sẵn do cộng đồng custom từ trước hoặc có thể tự custom theo sở thích của mình.

Nếu bạn muốn vọc vạch thì có thể tham khảo thêm doc của starship tại đây.

Vào đây để chọn các theme có sẵn, ở đây mình chọn theme Plain Text Symbols và custom lại một chút, đây là file starship.toml của mình. Các bạn gõ Window + r và paste đoạn text bên dưới để đến thư mục chứa config và tạo file starship.toml

1
%USERPROFILE%\.config

Nội dung file starship.toml

starship.toml
1
format = """
2
$os\
3
$username\
4
$directory\
5
$git_branch\
6
$git_status\
7
$nodejs\
8
$docker_context\
9
$time\
10
\n$character"""
11
12
[character]
13
success_symbol = '[➜](bold green)'
14
error_symbol = "[x](bold red)"
15
vimcmd_symbol = "[<](bold green)"
16
17
[git_commit]
18
tag_symbol = " tag "
19
20
[git_status]
21
ahead = ">"
22
behind = "<"
23
diverged = "<>"
24
renamed = "r"
25
deleted = "x"
26
27
[time]
28
disabled = false
29
utc_time_offset = "+7"
30
time_format = "%I:%M:%S %p"
31
format = '[ 🕙 $time ]($style)'
32
33
[dotnet]
34
symbol = ".NET "
35
36
[directory]
37
read_only = " ro"
38
39
[docker_context]
40
symbol = "docker "
41
42
[git_branch]
43
symbol = " "
44
45
[golang]
46
symbol = "go "
47
48
[nodejs]
49
symbol = " "
50
51
[os]
52
format = "on [($name ) ]($style)"
53
style = "bold blue"
54
disabled = false
55
56
[status]
57
symbol = "[x](bold red) "

Bùm chíu terminal của bạn đã có vẻ xịn sò hơn trước rất nhiều rồi nhưng để nó xịn hơn thì chúng ta cần phải thêm alias command cho nó, Ví dụ bình thường khi chạy một project bằng React, hoặc Angular thì ta thường gõ

Terminal window
1
npm run start

Nhưng khi có alias rồi ta chỉ cần gõ

Terminal window
1
nrs #alias for npm run start

Để làm được điều đó chúng ta mở file clink.bat tại folder clink trong Programfile(x86) để thêm doskey, các bạn có thể tham khảo các alias mà mình tự thêm và tự custom alias cho riêng mình.

Các bạn gõ Window + r và paste đoạn text bên dưới để đến thư mục chứa file clink.bat nhé

1
C:\Program Files (x86)\clink

Đây là nội dung file clink.bat của mình

Terminal window
1
:: Copyright (c) 2012 Martin Ridgers
2
:: License: http://opensource.org/licenses/MIT
3
4
@echo off
5
doskey ip=ipconfig $*
6
doskey ls=dir $*
7
doskey gcm=git commit -m $*
8
doskey ga=git add . $*
9
doskey gcd=git checkout develop $*
10
doskey gpd=git pull origin develop $*
11
doskey gcb=git checkout -b $*
12
doskey grb=git rebase $*
13
doskey grbd=git rebase develop $*
14
doskey grbc=git rebase --continue $*
15
doskey gca=git commit --amend --no-edit $*
16
doskey gpf=git push -f $*
17
doskey gcp=git cherry-pick $*
18
doskey gs=git stash $*
19
doskey gsp=git stash pop $*
20
doskey gl1=git log --oneline -1 $*
21
doskey gl=git log $*
22
doskey glo=git log --oneline -$*
23
doskey nrb=npm run build $*
24
doskey gc=git checkout $*
25
doskey nrs=npm run start $*
26
doskey nrd=npm run dev $*
27
doskey ni=npm i $*
28
doskey nun=npm un $*
29
doskey pi=pnpm i $*
30
31
... Nộ dung mặc định của file

Đây là terminal Command Prompt bên trong Visual studio code của mình.

image

Chúc các bạn làm thành công!