FvwmConsoleC.pl(1)

πŸ’– FvwmConsoleC.pl(1) πŸ’–

okay bestie, this one lives in the Fvwm Modules crowd πŸ¦‹ and it's a command editor for the fvwm command input interface. literally the line-editing main character ✨

✨ NAME ✨

FvwmConsoleC.pl β€” the command editor for the fvwm command input interface πŸ’…

πŸŽ€ SYNOPSIS πŸŽ€

FvwmConsole -e /usr/X11/lib/fvwm/FvwmConsoleC.pl

that's the whole synopsis, no cap πŸ™ˆ

Copyright 1996, Toshi Isogai. Toshi isn't making any guarantees or warranties, so use this program at your own risk πŸ’€. You're free to use it for any purpose, as long as the copyright stays intact 🫢.

🌸 DESCRIPTION 🌸

FvwmConsoleC.pl gives you editing powers while you're typing out a line 😭. By default the line editing commands are similar to emacs 🧚. It also does substitution, which swaps a pattern out for a string before the command gets sent off πŸ”₯.

πŸ‘‘ FUNCTIONS πŸ‘‘

Functions get bound to a key or key combo so you can invoke them. Here's the full list with their default key bindings, iconic πŸ’–

  • bind (Meta-k, Ctrl-x Ctrl-b) β€” lists up key bindings and substitutions πŸ—‚οΈ
  • boh β€” moves you to the beginning of history βͺ
  • boh_ign_mode (Esc-<) β€” moves you to the beginning of history. If you're in search mode, it keeps going πŸ”
  • bol (Home, Ctrl-a) β€” moves the cursor to the beginning of the line πŸŒ…
  • bs[(n)] (BackSpace, Ctrl-h) β€” backspaces n times. The default for n is 1 ⬅️
  • cancel (Ctrl-x Ctrl-k) β€” cancels the current input πŸ™…
  • del_back_line β€” deletes the line from the beginning to the cursor 🧹
  • del_back_word (Ctrl-w) β€” deletes the word from the beginning to the cursor πŸ’¨
  • del_char [(n)] (Delete, Ctrl-d) β€” deletes n characters from the cursor to the right. The default for n is 1 πŸ—‘οΈ
  • del_forw_line (Ctrl-k) β€” deletes the line from the cursor to the end πŸ‘‹
  • del_forw_word (Meta-d) β€” deletes the word from the cursor to the end βœ‚οΈ
  • del_line (Ctrl-u) β€” deletes the entire line πŸ’₯
  • enter (Enter, Ctrl-j, Ctrl-m) β€” performs substitution if it applies and sends the line to fvwm πŸš€
  • enter_wo_subst (Meta-Enter) β€” sends the line to fvwm without any substitution 🫸
  • eoh β€” moves you to the end of history ⏩
  • eoh_ign_mode (Esc->) β€” moves you to the end of history. If you're in search mode, it keeps going πŸ”Ž
  • eol (End, Ctrl-e) β€” moves the cursor to the end of the line πŸŒ‡
  • ins_char (str) β€” inserts a string at the cursor 🧁
  • ins_last_word (Esc-.) β€” inserts the last argument of the previous command at the cursor πŸͺ„
  • ins_nth_word (Meta-[1..9]) β€” inserts the n-th argument of the previous command at the cursor πŸ”’
  • list_func (Meta-l) β€” lists up the available editing functions πŸ“œ
  • next_char (Right, Ctrl-f) β€” moves the cursor to the next character ➑️
  • next_line (Down, Ctrl-n) β€” moves to the next line in history ⬇️
  • next_word (Meta-f) β€” moves the cursor to the next word 🦘
  • prefix β€” waits for the next character you type for a multi-key binding ⏳
  • prev_char (Left, Ctrl-b) β€” moves the cursor to the previous character ⬅️
  • prev_line (Up, Ctrl-p) β€” moves to the previous line in history ⬆️
  • prev_word (Meta-b) β€” moves the cursor to the previous word 🐾
  • quote (Ctrl-q) β€” inserts the next character you type into the buffer literally 🎭
  • search (Ctrl-s) β€” searches for a pattern in history πŸ•΅οΈ
  • search_rev (Ctrl-r) β€” searches for a pattern in history in reverse order πŸ”™
  • subst (Meta-s) β€” substitutes all patterns with strings and reprints the line 🌈. The substitutions aren't nested, and they're performed in the order they were defined.

πŸ› οΈ CONFIGURATION πŸ› οΈ

The key bindings can be overridden or defined in the fvwm module configuration πŸŽ€

*FvwmConsole: Key \ck prev_line

Non-space character sequences don't need to be quoted. To undefine a binding, just omit the last argument:

*FvwmConsole: Key \ck
heads up: non-meta characters are case sensitive πŸ‘€. \c means control key, \e means escape, and \m is alt key.

FvwmConsole also takes Subst configuration. Y'all input long fvwm commands over and over, so Subst lets you swap a particular input sequence for a string you define 🫢. Like this:

*FvwmConsole: Subst '^bigx' 'Exec xterm -g 120x60+0+0 -fn 10x20 -fg black -bg lemonchiffon'

Typing bigx<return> in FvwmConsole will launch xterm πŸš€. The ^ means beginning of line in a regular expression, so pl in the middle of a command won't get replaced πŸ™…. Even though the format looks different, it's a Perl regular expression. It just uses a single or double quote as the delimiter. Single and double quotes work the same, but they have to match, and the quote character can't appear inside the string itself πŸ’….

*FvwmConsole: Subst '^g\s*(\d+)' 'Desk 0 0\nGotoPage 0 $1\nFocus'

Entering g4 or g 4 will jump to desk 0 page 0 4 and focus 🧚✨

🎬 INVOCATION 🎬

FvwmConsoleC.pl should be invoked by FvwmConsole πŸ’–

πŸ”— SEE ALSO πŸ”—

FvwmConsole(1x), perlre(1) πŸ“š

πŸ’œ AUTHOR πŸ’œ

Toshi Isogai 🫢


And that's the whole page, bestie πŸ’… Source is 3rd Berkeley Distribution, version 2.7.0, dated 19 October 2022, for FvwmConsoleC.pl(1). Stay iconic πŸŒˆπŸ’–