i3 configuration rau lub laptop: yuav ua li cas txo kev ua tau zoo rau 100%?

Tsis ntev los no kuv pom tau hais tias kuv lub laptop tsis muaj zog txaus. Nws tsis muaj lub zog txaus los coj txhua yam ua ke: Vim (+ 20 plugins), VSCode (+ tib tus lej txuas ntxiv), Google Chrome (+ 20 tabs) thiab lwm yam. Nws yuav zoo li yog ib qho teeb meem tshwm sim ntawm lub laptops nrog 4 GB ntawm RAM, tab sis kuv tsis tso tseg. Kuv nyiam laptops vim lawv yog compact thiab kuj vim hais tias lawv muaj peev xwm khiav ntawm roj teeb fais fab nyob qhov twg. Kuv tsuas yog xav paub seb yuav ua li cas tso RAM ntxiv thiab ua kom lub zog ua haujlwm tau zoo.

i3 configuration rau lub laptop: yuav ua li cas txo kev ua tau zoo rau 100%?

Yog tias koj xav tau configs tam sim ntawd, ces nqes mus rau ntu "Parsing the installation"

operating system

Txij li thaum kuv xav tau OS uas yuav noj tsawg kawg ntawm RAM thiab roj teeb, kuv xaiv Arch Linux. Classic, tsis muaj dab tsi tshiab. Nws repositories yuav cia kuv automate ntau yam tsis tsim nyog ua hauj lwm, thiab AUR yuav txuag tau ntau lub sijhawm.

Qhov rai manager

Kuv txiav txim siab los siv tus thawj tswj qhov rais es tsis yog qhov chaw ua haujlwm puv ntoob. Txawm hais tias kuv nyiam khau ntaub (KDE), lawv tseem noj ntau heev, vim qhov tseeb tias lawv rub tawm ntau lub tsev qiv ntawv thiab kev vam khom. Zoo, DE nws tus kheej siv ntau heev vim yog txhua yam ntawm cov khoom siv tsis tsim nyog.

i3 configuration rau lub laptop: yuav ua li cas txo kev ua tau zoo rau 100%?

Cia peb disassemble lub installation

Ua ntej peb yuav tsum nruab tag nrho cov pob khoom tseem ceeb (peb yuav tsum teeb tsa ib yam dab tsi)

sudo pacman -Sy --noconfirm i3 i3-gaps base-devel rofi okular feh vim code picom kitty ranger git xdotool xautolock i3lock-color scrot imagemagick rxvt-unicode urxvt-perls

Ntawm no yog ib daim duab ntxhib ntawm yuav ua li cas txhua yam yuav ua haujlwm

i3 configuration rau lub laptop: yuav ua li cas txo kev ua tau zoo rau 100%?

Cov pob twg xav tau rau dab tsi?

Pob
Dab tsi xav tau rau

xwinwrap
Yuav tsum tau nruab cov ntaub ntawv nrog .gif extension li animated wallpapers

polybar
Xav tau rau lub topbar kom pom nyob rau hauv lub qhov rais manager

i3
Tus thawj tswj qhov rais nws tus kheej

i3-khoob
Qhov rai manager extension

puag-devel
Cheebtsam yuav tsum tau rau nruab polybar

rofi ua
Daim ntawv thov launcher

okular
Cov ntaub ntawv saib

zathura
Cov ntaub ntawv saib (tsis txhawb ntau qhov txuas ntxiv, tab sis yog qhov tsawg dua)

feh ib
Ib qho kev pab cuam rau saib cov duab thiab kuj rau teeb tsa cov duab tom qab

vim
Main editor

code
Tus editor ntxiv

piv
Composer (ib qho kev pab cuam uas tsim duab ntxoov ntxoo, pob tshab, tom qab plooj)

miv
Main davhlau ya nyob twg

urxvt ua
Ntxiv lub davhlau ya nyob twg

stow
Tus thawj tswj ntaub ntawv

git
Version tswj system

xdotool
Ib qho txiaj ntsig uas yuav pab tsim cov ntawv sau thiab cuam tshuam nrog windows

xautolock
Ib qho khoom siv uas kaw lub computer thaum tsis ua haujlwm thiab tso tawm i3-lock

i3lock xim
Txhim kho version ntawm i3lock. Qhov kev zov me nyuam yuav tsum tau xauv lub computer thiab sau tus password

scrot
Minimalist app rau kev thaij duab

kev xav tswv yim
Ib qho kev pab cuam uas yuav pab koj cuam tshuam nrog cov duab (blurs lawv ua ntej, hloov lawv, hloov kev daws teeb meem)

Configuring i3

i3 - Tus thawj tswj qhov rais uas tsis siv ntau cov peev txheej, yog li nws yuav muaj txiaj ntsig zoo rau peb txhawm rau "emulate" lwm tus thawj tswj qhov rais. (Qhov khoom plig, tau kawg, los nrog tiling - lub peev xwm ntawm tus thawj tswj qhov rais qhib cov ntawv thov mus rau tag nrho qhov dawb ntawm qhov screen)

Kuv yuav muab cov config i3 nyob rau hauv qhov chaw, yog li ntawd txawm beginners to taub txhua yam. Cia peb pib nrog qhov tseem ceeb tshaj plaws - khawm $Mod. Nws pab cuam tshuam nrog i3. Tag nrho cov hotkeys loj yuav dhau los ntawm nws.

### Tweaks ###
# Set main key (Win)
set $mod Mod4

Tom ntej no, peb yuav qhia peb tus thawj tswj qhov rais kom txav lub qhov rais nrog nas thaum nias $mod

# Press MOD key and click on mouse to move your window
floating_modifier $mod

# Focus doesn't follow the mouse
focus_follows_mouse no

Peb yuav nruab fonts rau peb daim ntawv thov, nrog rau cov ntawv thov uas nyob ntawm i3

# Fonts
font pango: JetBrains Mono 10

Kuv lub tswv yim yog ua kom tag nrho cov qhov rais pib ya (uas, raws li nws muab tawm, yog yooj yim heev). Kom meej meej: hauv i3 muaj ntau hom docking windows (Tilling, Fullscreen, Tabbed, Float, Stacking), tag nrho cov ntawm lawv yog qhov yooj yim nyob rau hauv ntau qhov xwm txheej, tab sis kuv tsis pom lub ntsiab lus ua. tag nrho windows sau tag nrho lub vijtsam. Zoo dua cia lawv sau nws thaum nias $mod + f, tab sis dai hauv huab cua los ntawm lub neej ntawd, uas yog qhov kuv tau ua hauv cov cai hauv qab no:

# Maximum width for floating windows
floating_minimum_size 400 x 350
floating_maximum_size 1800 x 900

# (1920 - 10)/2 and (1080 - 10)/2
for_window [class=".*"] floating enable
for_window [class=".*"] resize set 955 535
for_window [class=".*"] focus

Yog li ntawd koj tsis tau tsis meej pem los ntawm kev qhia (1920 - 10)/2 and (1080 - 10)/2 txhais tau hais tias txhua lub qhov rais yuav nyob ib lub hlis twg ntawm qhov screen, thiab tseem yuav muaj ib qho indentation (los ntawm ib leeg) ntawm 5 pixels (5 ntawm txhua sab).

Tom ntej no, cia peb khi tag nrho cov ntawv thov tseem ceeb. Tag nrho cov hotkeys sim ua kom haum cov tswv yim no

i3 configuration rau lub laptop: yuav ua li cas txo kev ua tau zoo rau 100%?

## Keyboard Settings ##
# Apps
bindsym $mod+Return exec kitty
bindsym $mod+Mod1+r exec "kitty sh -c 'ranger'"
bindsym $mod+Mod1+g exec google-chrome-stable
bindsym $mod+Mod1+c exec code
bindsym $mod+Mod1+v exec dolphin
bindsym Print exec spectacle

Tsis tas li ntawd, peb yuav khi tag nrho cov haujlwm tseem ceeb uas peb ua tsis tau xav, thiab qhov twg yuav tsum yog

# System / Volume
bindsym XF86AudioMute "exec amixer -D pulse sset Master toggle && notify-send "Volume" "Sound is (un)muted" --urgency low"
bindsym XF86AudioRaiseVolume "exec amixer -D pulse sset Master 5%+ && notify-send "Volume" "Volume added +5%n    Volume level is now $(amixer -D pulse get Master | awk -F 'Left:|[][]' 'BEGIN {RS=""}{ print $3 }')" --urgency low"
bindsym XF86AudioLowerVolume "exec amixer -D pulse sset Master 5%- && notify-send "Volume" "Volume added -5%n    Volume level is now $(amixer -D pulse get Master | awk -F 'Left:|[][]' 'BEGIN {RS=""}{ print $3 }')" --urgency low"

# System / Brightness
bindsym XF86MonBrightnessDown exec xbacklight -dec 5
bindsym XF86MonBrightnessUp exec xbacklight -inc 5

# Moving from one window to another
bindsym $mod+h focus left
bindsym $mod+j focus down
bindsym $mod+k focus up
bindsym $mod+l focus right

# Choose one of your workspaces
bindsym $mod+1 workspace $workspace1
bindsym $mod+2 workspace $workspace2
bindsym $mod+3 workspace $workspace3
bindsym $mod+4 workspace $workspace4

# Move window to the workspace
bindsym $mod+Shift+1 move container to workspace $workspace1
bindsym $mod+Shift+2 move container to workspace $workspace2
bindsym $mod+Shift+3 move container to workspace $workspace3
bindsym $mod+Shift+4 move container to workspace $workspace4

## Floating manipulation ##
# Make window floating
bindsym $mod+f floating toggle
# Change focus
bindsym $mod+Shift+f focus mode_toggle

# Move windows
bindsym $mod+Shift+h move left 20px
bindsym $mod+Shift+j move down 20px
bindsym $mod+Shift+k move up 20px
bindsym $mod+Shift+l move right 20px

# Resizing Windows
bindsym $mod+Ctrl+l resize shrink width 10 px or 10 ppt
bindsym $mod+Ctrl+k resize grow height 10 px or 10 ppt
bindsym $mod+Ctrl+j resize shrink height 10 px or 10 ppt
bindsym $mod+Ctrl+h resize grow width 10 px or 10 ppt

# Make window fullscreen
bindcode 95 fullscreen toggle

# Reload Configuration
bindsym $mod+p reload

# Kill a window
bindsym $mod+x exec xdotool getwindowfocus windowkill

Cia peb ua ntu autostart

### Autostart ###
# Lockscreen after 10min delay
exec --no-startup-id "$HOME/.config/i3/lockscreen"
# Convert background gif to jpg
exec --no-startup-id convert -verbose $HOME/.config/i3/{gif.gif,gif.jpg}
# Generate Colorscheme
exec_always --no-startup-id wal -i $HOME/.config/i3/gif-0.jpg
# Compositor
exec_always --no-startup-id "killall -q picom; picom --config $HOME/.config/picom.conf"
# Language
exec --no-startup-id setxkbmap -model pc105 -layout us,ru -option grp:win_space_toggle
# Dunst
exec --no-startup-id dunst
# Kitty
exec kitty
# Dropbox
exec --no-startup-id dropbox &
# Polybar
exec_always --no-startup-id $HOME/.config/polybar/launch.sh
# Cursor
exec_always --no-startup-id xsetroot -cursor_name left_ptr

i3-khoob yog i3 tsim uas ntxiv ntau yam tshiab. Ib tug ntawm lawv yog ntxiv indents (qhov khoob), uas visually zoo heev.

### i3-gaps ###
# Borders for windows
for_window [class=".*"] border pixel 5

# Gaps for i3bar
for_window [class="i3bar"] gaps outer current set 10

# Gaps
gaps inner 10
gaps outer 4

### Topbar and color theme ###
# Color theme of borders
client.focused              #bf616a #2f343f #d8dee8 #bf616a #d8dee8
client.focused_inactive     #2f343f #kf343f #d8dee8 #2f343f #2f343f
client.unfocused            #2f343f #2f343f #d8dee8 #2f343f #2f343f
client.urgent               #2f343f #2f343f #d8dee8 #2f343f #2f343f
client.placeholder          #2f343f #2f343f #d8dee8 #2f343f #2f343f
client.background           #2f343f

Dab tsi tshwm sim?

Thiab qhov tshwm sim yog qhov sib dhos me me ntawm i3, uas ua haujlwm sai heev ntawm lub laptops thiab muab kev ua haujlwm zoo

i3 configuration rau lub laptop: yuav ua li cas txo kev ua tau zoo rau 100%?

Txij li thaum kuv tau sau ntau qhov kev teeb tsa (uas pom meej meej hauv lub screenshot), lawv tuaj yeem pom hauv qhov chaw cia khoom. Zoo heev i3.

Ob peb ntxiv screenshots

i3 configuration rau lub laptop: yuav ua li cas txo kev ua tau zoo rau 100%?

i3 configuration rau lub laptop: yuav ua li cas txo kev ua tau zoo rau 100%?

i3 configuration rau lub laptop: yuav ua li cas txo kev ua tau zoo rau 100%?

Tau qhov twg los: www.hab.com

Ntxiv ib saib