BERRYC(1)

πŸ“¦ version 0.1.13, in alpine 3.24, nixpkgs unstable

πŸ’… BERRYC(1) πŸ’…

okay so bestie, welcome to the berryc page β€” yes, the manual is literally called BERRYC(1), and yes we're gonna get into all of it. she's a client. she's for berry. she's the whole vibe. 🫢


✨ NAME ✨

berryc β€” the client for the berry window manager. that's it. that's the whole name. iconic behavior honestly.


🌸 SYNOPSIS 🌸

berryc [-hv] command [args...]

that's the shape of it, bestie: you, the flags, a command, and whatever args that command wants. no cap. πŸŽ€


πŸ¦‹ DESCRIPTION πŸ¦‹

so basically berryc is a simple little command-line client that sends events to the berry window manager. that's her whole job. she's the messenger. she shows up, she delivers the message, she leaves. main character energy but make it a socket. πŸ’…


πŸ‘‘ COMMANDS πŸ‘‘

this is the good part. this is the part. every single one of these is a whole mood, so let's go down the list together, no skipping, we don't do that here πŸ’–

  • window_move x y β€” shift the current window by the given x/y coordinates. little nudge. wee scoot. ✨
  • window_move_absolute x y β€” move the current window to the absolute x/y coordinates. no "relative to where it was," just be here now. πŸ“
  • window_resize w h β€” shrink or grow the current window by the given w/h arguments. chunky or smol, your call. πŸ“
  • window_resize_absolute w h β€” resize the current window to the absolute w/h arguments. she's gonna be that size, periodt. πŸ“
  • window_raise β€” raises the current window to the top of the stack. get her up there, she's the moment. ⬆️
  • window_monocle β€” monocles the current window (yes the curent one, iykyk), and it respects the values of TOP_GAP. respectful king. 🧐
  • window_close β€” closes the current window, which in turn terminates the associated process. polite little exit. bye bestie πŸ‘‹
  • window_kill β€” kills the current window, forcefully terminating the associated process. not polite. nuclear. πŸ’€
  • window_center β€” centers the current window. she's on the 50-yard line. balanced. symmetrical. slay. 🎯
  • window_below β€” toggles "Always Below" on the current window, so it can't rise to the top when activated. she's a background girlie now, and she stays there. πŸ™ˆ
  • switch_workspace i β€” switch to the given workspace i: every window on the new workspace shows up, every window not on it hides. full scene change. 🌈
  • send_to_workspace i β€” sends the current window to the workspace i you specify, but does not switch workspaces. she travels, you stay put. ✈️
  • fullscreen β€” toggle the fullscreen status of the active window. big mode: engaged. πŸ–₯️
  • fullscreen_state β€” toggle the fullscreen status of the active window but don't change the size. it's a vibe, not a resize. 😌
  • snap_left β€” move and resize the current window to fill the left half of the screen. respects TOP_GAP. left girlies rise 🫢
  • snap_right β€” move and resize the current window to fill the right half of the screen. respects TOP_GAP. right girlies also rise 🫢
  • cardinal_focus 1, 2, 3, 4 β€” switch focus to the nearest window in the specified direction. pick a number, get a direction. 🧭
  • cycle_focus β€” switch focus to the next window in the list. round and round we go πŸ”„
  • pointer_focus β€” focus the window underneath the pointer. whatever your cursor is hovering over, that's the one. πŸ–±οΈ
  • focus_color XXXXXX β€” set the color of the outer border for the currently focused window. hex code moment ✨
  • unfocus_color XXXXXX β€” set the color of the outer border for all the windows that are not currently focused. the supporting cast πŸ’œ
  • inner_focus_color XXXXXX β€” set the color of the inner border for the currently focused window. inner beauty, literally πŸŽ€
  • text_focus_color XXXXXX β€” set the color of the title bar text for the focused window. ~typography era~ πŸ–‹οΈ
  • text_unfocus_color XXXXXX β€” set the color of the title bar text for all the unfocused windows. equal treatment, less spotlight 🩰
  • inner_unfocus_color XXXXXX β€” set the color of the inner border for all windows not currently focused. yes there's an inner border for those too, keep up πŸ’…
  • border_width w β€” set the width of the outer border in pixels. chunky borders are a personality trait, ngl πŸ”₯
  • inner_border_width w β€” set the width of the inner border in pixels. the little ring inside. 🍩
  • title_height h β€” set the height of the title bar in pixels. give that bar some room to breathe ⭐
  • save_monitor i j β€” associate the *i*th workspace with the *j*th monitor. match made in heaven, arranged by you πŸ’ž
  • smart_place true/false β€” place newly created windows in unoccupied regions of the screen. otherwise? new clients go in the top left corner of the active workspace. that's the trade-off, bestie, pick your fighter 🧠
  • draw_text true/false β€” determine whether or not to draw text in window title bars. words or no words, that's the question πŸ“
  • set_font font_name β€” set the name of the font to use (e.g. set_font dina-9). font choice is so personal, go off 🎨
  • json_status true/false β€” determine whether or not BERRY_WINDOW_STATUS reports state in JSON format or plain text. yes that's a real environment variable, yes she eats πŸ”₯
  • name_desktop i d_name β€” name the ith desktop d_name. it's used with _NET_DESKTOP_NAMES. give your desktops cute names, i'm begging 🏷️
  • [manage|unmanage] [Dialog|Toolbar|Menu|Splash|Utility] β€” manage, or unmanage, windows of type Dialog, Toolbar, Menu, Splash, or Utility. by default, only Toolbars and Splashes are not managed. know your defaults, know yourself 🌟
  • edge_gap top bottom left right β€” set the edge padding around the screen, and you must include all the params. all four, no shortcuts, no "i'll add the rest later" 🚧
  • decorate_new true/false β€” determine whether new windows are decorated by default. bows on or bows off πŸŽ€
  • focus_button 1-5 β€” determine the button used to focus windows on click, if focus_on_click is enabled. conditional queen πŸ–²οΈ
  • move_button 1-5 β€” determine the button used to move windows using the mouse. drag era πŸ–οΈ
  • move_mask mod1/mod2/mod3/mod4/mod5 β€” determine the key mask used to move windows using the mouse. hold a key, then move. combo move ⌨️
  • resize_button 1-5 β€” determine the button used to resize windows using the mouse. squish squish 🫧
  • resize_mask mod1/mod2/mod3/mod4/mod5 β€” determine the key mask used to resize windows using the mouse. same deal, resize flavour πŸŽ›οΈ
  • pointer_interval n β€” set the minimum interval for processing motion events to n. it's set to a default value of 0. useful for input lag on high refresh rate screens. if you experience input lag on high refresh rate screens, try a value around 15. noted, screenshotting, saving for later πŸ“Έ
  • quit β€” stop the program. that's it. that's the whole description. she said "stop the program." πŸ’€
  • edge_lock true/false β€” bound windows to the edges of the monitor. can't escape. can't slide off. she's contained 🧲
  • toggle_decorations β€” toggle decorations for the currently focused client. bows on, bows off, bows on πŸŽ€
  • focus_follows_pointer true/false β€” focus the window underneath the pointer. your cursor is the focus, she just follows 🐾
  • focus_on_click true/false β€” focus the window on click. click and it's hers. easy πŸ‘†

real talk bestie, every single command above is listed exactly as berry expects it β€” don't get creative with the spelling, don't merge two commands into one, don't add args that aren't there. she's simple, she's specific, she's not taking notes. 🫢

🧚 sign-off 🧚

that's the whole page, bestie!! this one's from March 2020, and it lives up there under the BERRYC(1) header like the little legend she is β€” so like, when you're citing it in a group chat, that's the vibe. go forth, move windows, respect the TOP_GAP, and remember: only Toolbars and Splashes are unmanaged by default. periodt. πŸ’–βœ¨πŸŽ€

πŸ“¦ where this page comes from