LilyTerm(1)

πŸ“¦ version 0.9.9.4+git20150208.f600c0, in ubuntu jammy, ubuntu noble

πŸ’– LilyTerm(1) β€” a light and eazy-to-use terminal emulator πŸ’–

hiii bestie, welcome to the LilyTerm(1) manual page!! ✨ this is the whole thing, every single flag and keybinding, just... with the vibes turned all the way up. no cap, nothing got left out. let's go 🫢


🌸 NAME 🌸

LilyTerm β€” A light and eazy-to-use terminal emulator for X. πŸ’…


✨ SYNOPSIS ✨

okay so here's the whole entire vibe of how you launch her:

lilyterm [-? | -h | --help] [-T TITLE | --title TITLE] [-R ROLE | --role
         ROLE] [-t NUMBER | --tab NUMBER] [-n TAB NAMES | --tab_names
         TAB NAMES] [-d DIRECTORY | --directory DIRECTORY] [-g GEOMETRY
         | --geometry GEOMETRY] [-l | -ls | --login] [-ut] [-H | --hold]
         [-s | --separate] [-j | --join] [-p | --profile] [-u PROFILE |
         --user_profile PROFILE] [-v | --version] [-e COMMAND | -x
         COMMAND | --execute COMMAND]

πŸ¦‹ DESCRIPTION πŸ¦‹

LilyTerm is a terminal emulator for the X Window System, based on the libvte library, and she aims to be fast and lightweight. she's not doing too much, she's just doing it perfectly. main character energy fr fr πŸ‘‘


πŸŽ€ OPTIONS πŸŽ€

every single flag, in order, no skips, we're not doing that:

  • -?, -h, --help β€” Display a brief help message. little "what do i do" moment πŸ₯Ί
  • -T TITLE, --title TITLE β€” Specify the window title. name her whatever you want bestie.
  • -R ROLE, --role ROLE β€” Specify the WM_WINDOW_ROLE string of window.
  • -t NUMBER, --tab NUMBER β€” Open multi tabs when starting up. tabs on tabs on tabs 😌
  • -n TAB NAMES, --tab_names TAB NAMES β€” Specify the tab names, separate with <Space>.
  • -d DIRECTORY, --directory DIRECTORY β€” Specify the init directory when starting up. where she wakes up, basically.
  • -g GEOMETRY, --geometry GEOMETRY β€” Specify the geometry of window when starting. A reasonable example value is "80x24+0+0", witch means "width x height {+-} xoffset {+-} yoffset" (without space). yes it literally says "witch", we're keeping it, iconic typo behavior πŸ’€
  • -l, -ls, --login β€” Make the shell invoked as a login shell.
  • -ut β€” Disable recording the session in lastlog, utmp and wtmp. ghost mode activated πŸ™ˆ
  • -H, --hold β€” Hold the terminal window open when the command following -e/-x terminated.
  • -s, --separate β€” Run in separate process.
  • -j, --join β€” Integrate new created tabs to the last accessed window. It may be useful for launching multi commands with LilyTerm in a shell script. (iykyk)
  • -p, --profile β€” Got a profile sample.
  • -u PROFILE, --user_profile PROFILE β€” Use a specified profile.
  • -v, --version β€” Show the version information.
  • -e COMMAND, -x COMMAND, --execute COMMAND β€” Run a command when starting up. Must be the final option. like, she has to be last, that's the rule bestie 🚨

⌨️ KEYBOARD CONTROL ⌨️

The following key bindings may custom or disable by the right click menu [Set key binding]. so you can remap or straight up turn them off, your call πŸ’…

  • <Ctrl><>` β€” Disable/Enable hyperlinks, function keys and right click menu for temporary.
  • <Ctrl><T> β€” Add a New tab with current directory.
  • <Ctrl><PgUp/PgDn> β€” Switch to Prev/Next tab.
  • <Ctrl><Home/End> β€” Switch to First/Last tab.
  • <Ctrl><[/]> β€” Move current tab Forward/Backward.
  • <Ctrl><Up/Down> β€” Move current tab to First/Last.
  • <Ctrl><F1~F12> β€” Switch to 1st ~ 12th tab.
  • <Ctrl><O> β€” Select all the text in the Vte Terminal box.
  • <Ctrl><+/-/Enter> β€” Increase/Decrease/Reset the font size of current tab.
  • <Alt><F11/Enter> β€” Switch between fullwindow/unfullwindow and fullscreen/unfullscreen state.
  • <Shift><Left/Right> β€” Emulate a mouse Scroll Up/Down event on Vte Terminal box.
  • <Shift><Up/Down> β€” Asks to scroll Up/Down 1 line on Vte Terminal box.
  • <Shift><PgUp/PgDn> β€” Asks to scroll Up/Down on Vte Terminal box.
  • <Ctrl><Delete/Insert> β€” Copy the text to clipboard / Paste the text in clipboard.
  • <Shift><Delete/Insert> β€” Copy the text to primary clipboard / Paste the text in primary clipboard. i.e. Emulate a middle button mouse click to copy/paste the text.

✿ some extra ones, off by default but lowkey useful ✿

Some key bindings that disabled by default but maybe useful:

  • <Ctrl><Q> β€” Close current tab.
Using <Ctrl><D> or 'exit' to close tabs is recommended. (just trust, bestie 🫢)
  • <Ctrl><N> β€” Open a new window with current directory.
  • <Ctrl><E> β€” Rename the current tab.

πŸ“ FILE πŸ“

  • /etc/xdg/lilyterm.conf β€” System configure file
  • ~/.config/lilyterm/default.conf β€” User's profile.

Use [Save settings] in the right click menu to save the current tab's settings as default to the specified profile. lock it in πŸ”’


πŸ’‘ TIPS πŸ’‘

✨ Display UTF-8 character under C locale

Execute the following command under LilyTerm:

bind "set convert-meta off"
bind "set output-meta on"

And use the right click menu to set the text encoding to "UTF-8".

✨ Launch LilyTerm under a chroot jail

Extract xauth info to a file (under X):

xauth extract /PathToChroot/tmp/display $DISPLAY

Mount the devpts device and /tmp (may not necessary) before chroot into a chroot jail:

mount /dev/pts /PathToChroot/dev/pts -t devpts
mount -o bind /tmp /PathToChroot/tmp (may not necessary)

Merge the extracted xauth info and set the DISPLAY environ after chroot into the chroot jail:

xauth merge /tmp/display
export DISPLAY=:0

Launch LilyTerm directly, or run it under Xnest/Xephyr:

xinit ~/.xinitrc -- /usr/bin/Xnest :1 -ac -geometry 800x600

or

xinit ~/.xinitrc -- /usr/bin/Xephyr :1 -ac -screen 800x600

✨ <Ctrl><S> and <Ctrl><Q> don't work under VIM

Use the following command to turn off 'flow-Control' under LilyTerm:

stty raw

or

stty -ixon

✨ BSD Users

Please mount the procfs before launch LilyTerm:

mount -t procfs procfs /proc

🌈 ENVIRONMENT 🌈

  • TERM β€” Sets what type of terminal attempts to emulate. Please always set to "xterm" under LilyTerm. like, always always. no cap.
  • VTE_CJK_WIDTH β€” Controls the width of some ideographs should be "single width (narrow)" or "double width (wide)" in a vte teminal. This environment should be set before creating a vte widget. In LilyTerm, you may set the VTE_CJK_WIDTH of a new tab to 'wide' with right click menu 'New tab with specified locale' -> 'xx_XX.UTF-8 (Wide)' or 'UTF-8 (Wide)'.
  • PROMPT_COMMAND β€” Customs the "Window Title" for shell. The following is a reasonable example ~/.bashrc for bash:
case $TERM in
    xterm*)
        PROMPT_COMMAND='echo -ne "\033]0;${HOSTNAME}:
${PWD}\007"'
        ;;
    *)
        ;;
esac

The following is a reasonable example ~/.cshrc for csh/tcsh:

switch ($TERM)
    case "xterm*":
        setenv TITLE "%{\033]0;%m: %~\007%}"
        breaksw
endsw

set prompt = "${TITLE}%# "

Please visit http://tldp.org/HOWTO/Xterm-Title.html for more details.


πŸ’œ AUTHOR πŸ’œ

Lu, Chao-Ming (Tetralet) <tetralet@gmail.com>


πŸ‘€ SEE ALSO πŸ‘€

xterm(1)


and that's the whole page bestie!! πŸŽ€ this was LilyTerm 0.9.9.5, from March 2013 β€” yes she's an elder but she ATE and she's still serving. go forth and open some tabs, ily, mwah πŸ’–βœ¨πŸ¦‹

πŸ“¦ where this page comes from