Metriche repository
- Star
- (8813 stelle)
- Metriche merge PR
- (Merge medio 2g 21h) (1 PR mergiata in 30 g)
Descrizione
I'm submitting a BUG
Current Behavior
I am using Pycharm in my i3wm, and when I open the setting window or Run configuration window, the location of the window moving up a little bit everytime, until it total move out of the screen. And then it appears at the bottom of the screen again.
Expected Behavior
Hopefully, everytime I open the Run Configuration window, it locates at the same location where it was closed.
Reproduction Instructions
Open pycharm, create a python file, run it with pycharm. Then open the Run configuration, close it , open it again. You will find that the window move up a little bit. Repeat that, the location of the window will moving up and up.
Environment
Output of i3 --moreversion 2>&-:
Binary i3 version: 4.19.2-109-g9a02399c © 2009 Michael Stapelberg and contributors
Running i3 version: 4.19.1-144-gd816f6bc (pid 26580)
Loaded i3 config:
/home/fkwong/.config/i3/config (main) (last modified: Tue 31 Aug 2021 02:17:54 PM CST, 1380 seconds ago)
The i3 binary you just called: /usr/local/bin/i3 RUNNING BINARY DIFFERENT FROM BINARY ON DISK! The i3 binary you are running: i3
Please see https://i3wm.org/docs/userguide.html for a complete reference!
Set master key
set $mod Mod4 set $alt Mod1
Define names for default workspaces for which we configure key bindings later on.
We use variables to avoid repeating the names in multiple places.
set $ws1 "1: Term" set $ws2 "2: Editor" set $ws3 "3: Web" set $ws4 "4: Note" set $ws5 "5: Files" set $ws6 "6" set $ws7 "7: Doc" set $ws8 "8: Comm" set $ws9 "9" set $ws10 "10"
Define color variables
set $focus_border #FF9800
set $focus_border #F4B400 set $focus_bground #F57C00 set $focus_text #000000 set $inactive_border #333333 set $inactive_bground #5F676A set $inactive_text #FFFFFF set $unfocused_border #333333 set $unfocused_bground #222222 set $unfocused_text #888888 set $urgent_border #2F343A set $urgent_bground #900000 set $urgent_text #FFFFFF
Theme colors
class border bground text indicator child_border
client.focused $focus_border $focus_bground $focus_text #FF5722 $focus_bground client.focused_inactive $inactive_border $inactive_bground $inactive_text #484E50 $inactive_bground client.unfocused $unfocused_border $unfocused_bground $unfocused_text #292D2E $unfocused_bground client.urgent $urgent_border $urgent_bground $urgent_text #900000 $urgent_bground client.placeholder #000000 #0C0C0C #FFFFFF #000000 #0C0C0C client.background #FFFFFF
Refresh i3status after change volume
set $refresh_i3status killall -SIGUSR1 i3status
Font for window titles. Will also be used by the bar unless a different font
is used in the bar {} block below.
font pango:Noto 10
This font is widely installed, provides lots of unicode glyphs, right-to-left text rendering and scalability on retina/hidpi displays (thanks to pango).
#font pango:DejaVu Sans Mono 8
Focus not follow mouse
focus_follows_mouse no popup_during_fullscreen smart
Use Mouse+$mod to drag floating windows to their wanted position
floating_modifier $mod
bind workspace with monitor
workspace $ws1 output HDMI-0 eDP-1-1 workspace $ws2 output DP-1-1 eDP-1-1 workspace $ws3 output eDP-1-1 workspace $ws8 output eDP-1-1
default workspace layout
workspace_layout tabbed
Start i3bar to display a workspace bar (plus the system information i3status
finds out, if available)
bar { font pango:FontAwesome, Noto 10 status_command i3status tray_output primary
colors {
background #000000
statusline #FFFFFF
separator #666666
# class border bground text
focused_workspace $focus_border $focus_bground $focus_text
active_workspace $inactive_border $inactive_bground $inactive_text
inactive_workspace $unfocused_border $unfocused_bground $unfocused_text
urgent_workspace $urgent_border $urgent_bground $urgent_text
binding_mode #2F343A #900000 #FFFFFF
}
}
resize window (you can also use the mouse for that)
mode "resize" { # These bindings trigger as soon as you enter the resize mode
# Pressing left will shrink the window’s width.
# Pressing right will grow the window’s width.
# Pressing up will shrink the window’s height.
# Pressing down will grow the window’s height.
bindsym h resize shrink width 10 px or 10 ppt
bindsym j resize grow height 10 px or 10 ppt
bindsym k resize shrink height 10 px or 10 ppt
bindsym l resize grow width 10 px or 10 ppt
# same bindings, but for the arrow keys
bindsym Left resize shrink width 10 px or 10 ppt
bindsym Down resize grow height 10 px or 10 ppt
bindsym Up resize shrink height 10 px or 10 ppt
bindsym Right resize grow width 10 px or 10 ppt
# back to normal: Enter or Escape or $mod+r
bindsym Return mode "default"
bindsym Escape mode "default"
bindsym $mod+r mode "default"
}
Focus
for_window [tiling] focus for_window [floating_from="user"] focus for_window [class="jetbrains-pycharm-ce" title="win0"] floating enable for_window [floating title="debug"] move position center for_window [class="^$"] move position center for_window [instance="wechat.exe"] layout tabbed, focus for_window [class="Slack"] layout tabbed, focus
Dropdown / Scratchpad Windows
for_window [class="__dropdown"] floating enable, resize set 800 495, border pixel 3 for_window [class="__dropdown"] move scratchpad for_window [class="__ipython"] floating enable, resize set 960 520, border pixel 3 for_window [class="__ipython"] move scratchpad
Assignment
assign [class="jetbrains-pycharm-ce"] $ws2
No focus for specify window type
no_focus [window_role="pop-up"]
Start gnome-keyring-daemon which can be used by chrome
exec --no-startup-id /usr/bin/gnome-keyring-daemon --start --components=secrets
Start picom compositor
#exec --no-startup-id picom -CG
The combination of xss-lock, nm-applet and pactl is a popular choice, so
they are included here as an example. Modify as you see fit.
xss-lock grabs a logind suspend inhibit lock and will use i3lock to lock the
screen before suspend. Use loginctl lock-session to lock your screen.
exec --no-startup-id xss-lock --transfer-sleep-lock -- i3lock --nofork
Start blueman
exec --no-startup-id blueman
Create new scratchpad application
exec --no-startup-id "gnome-terminal --class __dropdown -- bash -c 'i3-msg [class=__dropdown] move window to scratchpad; tmux new -As sp'" exec --no-startup-id "gnome-terminal --class __ipython -- bash -c 'i3-msg [class=__ipython] move window to scratchpad; source /home/fkwong/miniconda3/etc/profile.d/conda.sh; conda activate edge; ipython'"
NetworkManager is the most popular way to manage wireless networks on Linux,
and nm-applet is a desktop environment-independent system tray GUI for it.
exec_always --no-startup-id nm-applet
Use autorandr to detect monitor environment
exec_always --no-startup-id autorandr --change
Setting DPI of xscreen
exec --no-startup-id xrandr --dpi 100
Start ibus
exec_always --no-startup-id "ibus-daemon -drx"
Set keyboard repeating rete
exec_always --no-startup-id "xset r rate 240 50"
Remove standby and suspend in DPMS, no screen saver
exec_always --no-startup-id "xset dpms 0 0 240" exec_always --no-startup-id "xset s off"
Setup background
Add to autorandr postswitch to avoid race condition
exec_always --no-startup-id feh --bg-fill /usr/share/backgrounds/hardy_wallpaper_uhd.png
Use pactl to adjust volume in PulseAudio.
bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +10% && $refresh_i3status bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -10% && $refresh_i3status bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle && $refresh_i3status bindsym XF86AudioMicMute exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ toggle && $refresh_i3status
Sreen brightness controls
bindsym XF86MonBrightnessUp exec --no-startup-id brightnessctl -c "backlight" s +10% # increase screen brightness bindsym XF86MonBrightnessDown exec --no-startup-id /home/fkwong/.config/i3/dec_backlight.sh 8%- # decrease screen brightness
Media player controls
bindsym XF86AudioPlay exec playerctl play-pause bindsym XF86AudioNext exec playerctl next bindsym XF86AudioPrev exec playerctl previous
start a terminal
bindsym $mod+Return exec i3-sensible-terminal #bindsym $mod+Return exec urxvt
kill focused window
bindsym $mod+Shift+q kill
start rofi (a program launcher)
bindsym $mod+d exec --no-startup-id "rofi -modi combi,window -show combi -combi-modi drun,run" bindsym $mod+Tab exec --no-startup-id "rofi -modi window,ssh -show window"
change focus
bindsym $mod+h focus left bindsym $mod+j focus down bindsym $mod+k focus up bindsym $mod+l focus right
alternatively, you can use the cursor keys:
bindsym $mod+Left focus left bindsym $mod+Down focus down bindsym $mod+Up focus up bindsym $mod+Right focus right
move focused window
bindsym $mod+Shift+h move left bindsym $mod+Shift+j move down bindsym $mod+Shift+k move up bindsym $mod+Shift+l move right
alternatively, you can use the cursor keys:
bindsym $mod+Shift+Left move left bindsym $mod+Shift+Down move down bindsym $mod+Shift+Up move up bindsym $mod+Shift+Right move right
split in horizontal orientation
bindsym $mod+semicolon split h
split in vertical orientation
bindsym $mod+v split v
enter fullscreen mode for the focused container
bindsym $mod+f fullscreen toggle bindsym $mod+Shift+f fullscreen toggle global
change container layout (stacked, tabbed, toggle split)
bindsym $mod+s layout stacking bindsym $mod+w layout tabbed bindsym $mod+e layout toggle split
toggle tiling / floating
bindsym $mod+Shift+space floating toggle
change focus between tiling / floating windows
bindsym $alt+space focus mode_toggle
focus the parent container
bindsym $mod+a focus parent
focus the child container
bindsym $mod+Shift+d focus child
reload the configuration file
bindsym $mod+Shift+c reload
restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
bindsym $mod+Shift+r restart
exit i3 (logs you out of your X session)
bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -B 'Yes, exit i3' 'i3-msg exit'"
Activate resize mode
bindsym $mod+r mode "resize"
Custom application startup keymap
bindsym $mod+b exec google-chrome bindsym $mod+ctrl+l exec i3lock --color=000000 bindsym $alt+ctrl+w exec --no-startup-id ~/bin/openwechat bindsym $mod+q workspace $ws5; exec --no-startup-id nautilus
Show/Hide dropdown window
bindsym $mod+u [class="__dropdown"] scratchpad show, move position center bindsym $mod+p [class="__ipython"] scratchpad show, move position center
Execute autorandr when change monitor configuration
bindsym $mod+shift+p exec --no-startup-id autorandr --change && feh --bg-fill /usr/share/backgrounds/hardy_wallpaper_uhd.png
Move window to center
bindsym $mod+c move position center
Move workspace
bindsym $mod+ctrl+Left move workspace to output left bindsym $mod+ctrl+Right move workspace to output right