Age | Commit message (Collapse) | Author |
|
(cmd_meta): optionally use the KEY passed in as an argument.
|
|
to this executable.
|
|
|
|
|
|
|
|
doc updates
|
|
to sbuf_nconcat.
(sbuf_nconcat): new function
* src/globals.c (init_globals): new function
* src/main.c (main): call init_globals.
* src/globals.c: include unistd.h.
(x_export_selection): new function
(set_nselection): likewise
(set_selection): call x_export_selection
(get_cut_buffer): new function
(get_primary_selection): likewise
(get_selection): likewise
* src/editor.c (editor_kill_word): add the deleted text to the X11
selection
(editor_backward_kill_word): likewise
(editor_kill_line): likewise
(backward_kill_line): new fuction
(editor_backward_kill_line): add the deleted text to the X11
selection. call backward_kill_line.
(paste_cut_buffer): remove function
(paste_primary_selection): likewise
(editor_paste_selection): call get_selection to get the X11
selection.
(editor_complete): call backward_kill_line instead of
editor_backward_kill_line.
* src/ratpoison.h: Include string.h. Include X11/XAtom.h.
* src/globals.c (selection): new global
(set_selection): new function
* src/events.c: include X11/Xmd.h
(selection_request): new function
(selection_clear): new function
(delegate_event): call selection_request and selection_clear for
SelectionRequest and SelectionClear events.
* src/actions.c (user_commands): remove duplicate focusprev entry. Add putsel. Add getsel.
(cmd_putsel): new function
(cmd_getsel): new function
* contrib/genrpbindings: add a missing paren to the elisp bindings.
|
|
|
|
|
|
|
|
(cmd_ratrelwarp): likewise
(cmd_ratwarp): likewise
(user_commands): new commands ratclick, ratrelwarp, ratwarp.
* contrib/genrpbindings: add common lisp bindings
|
|
(cmd_fselect): in interactive mode, return 'abort' when the user
aborts, the frame number when they select one, or 'No such frame'
when they selected a nonexistent one.
(cmd_version): return the version string in non-interactive mode.
|
|
(cmd_sselect): new function. added prototype.
|
|
found and compile without history support.
* src/ratpoison.h: change ifdef to check for HAVE_HISTORY.
* src/manage.c (get_state): change data to an unsigned char and
cast data to a long* when it's used.
* src/main.c (main): change ifdef to check for HAVE_HISTORY.
(clean_up): likewise
* src/history.c: change ifdef to check for HAVE_HISTORY.
* src/events.c (receive_command): make prop_return an unsigned char.
* src/editor.c (editor_history_previous): change ifdef to check for HAVE_HISTORY.
(editor_history_next): likewise
(editor_enter): likewise
|
|
|
|
(x11_mask_to_rp_mask): likewise
(keysym_to_keycode_mod): Make sure lower != keysym before adding
the shift mask.
(keysym_to_string): handle the shift modifier. use 's' for super
instead of 'S'
(cook_keycode): keep the shift modifier if XLookupString didn't
gobble it.
* src/data.h (RP_SHIFT_MASK): new define
* src/actions.c (parse_keydesc): parse the shift modifier change
super to 's' from 'S'.
|
|
|
|
|
|
|
|
(grab_keys_all_wins): likewise
* src/manage.c (grab_top_level_keys): renamed from
grab_prefix_key (all callers updated). Grab all keys in the top level keymap.
(ungrab_top_level_keys): renamed from ungrab_prefix_key (all callers updated). ungrab
all keys in the top level keymap.
(ungrab_keys_all_wins): new function
(grab_keys_all_wins): likewise
* src/globals.c: (rp_key_hook): rename from
rp_prefix_hook. Dependant code updated.
(set_rp_window_focus): change 'prefix' hook to 'key' hook.
* src/events.c (handle_key): handle a top level key press.
(handle_key): new arguments ks, and mod.
(key_press): pass the keysym and modifier to handle_key
* src/conf.h (TOP_KEYMAP): new define
* src/actions.c (cmd_v_split, cmd_h_split): swap names.
(user_commands): bind split to cmd_v_split.
(initialize_default_keybindings): initialize the top level keymap
(cmd_definekey): update the keys grabbed when changing a key on
the top level keymap.
(cmd_escape): update the escape key in the top level map.
(cmd_delkmap): don't allow the deletion of the top level keymap.
|
|
(user_commands): bind split to cmd_v_split.
|
|
* src/data.h (struct rp_defaults): new field, frame_selectors.
* src/actions.h (cmd_defframesels): new prototype
* src/actions.c (user_commands): new command defframesels
(frame_selector): new function
(frame_selector_match): likewise
(cmd_defframesels): likewise
(cmd_fselect): use default.frame_selectors to select a frame.
|
|
|
|
|
|
(ratpoison_opts): add f: option
(print_help): print help for --file option
(read_startup_files): take an alternative rc file as an argument
and use it if it is non-NULL.
(main): parse the --file option. pass alt_rcfile to
read_startup_files.
|
|
|
|
the help binding.
(clean_up): call free_keymaps and not free_keybindings.
* src/events.c (handle_key): call cmd_readkey to hand actually
reading a key from the keyboard.
* src/data.h (typedef rp_keymap): new typedef
(struct rp_keymap): new struct
* src/conf.h (ROOT_KEYMAP): new define
* src/actions.h (cmd_readkey): new prototype
(cmd_newkmap): likewise
(cmd_delkmap): likewise
(cmd_definekey): likewise
(find_keymap): likewise
(keymap_free): likewise
(free_keymaps): likewise
* src/actions.c (rp_keymaps): new global. remove globals
key_actions, key_actions_last, and key_actions_table_size.
(user_commands): remove bind and unbind. New commands readkey,
newkmap, delkmap, and definekey.
(find_keybinding_by_action): take a rp_keymap argument and operate
on it. All callers updated.
(find_keybinding): likewise
(find_command_by_keydesc): likewise
(resolve_command_from_keydesc): likewise
(add_keybinding): likewise
(remove_keybinding): likewise
(cmd_definekey): new function
(cmd_newkmap): likewise
(cmd_delkmap): likewise
(keymap_new): likewise
(keymap_free): likewise
(find_keymap): likewise
(free_keymaps): likewise
(cmd_bind): remove function. Prototype removed.
(cmd_unbind): likewise
(initialize_default_keybindings): add aliases for unbind and bind.
(ungrab_rat): moved from events.c
(grab_rat): likewise
|
|
current screen.
* src/group.h (group_delete_group): new prototype
* src/group.c (group_last_window): find the last window in the
current screen.
(group_next_window): find next window in current screen.
(group_prev_window): find previous window in current screen.
* src/manage.c (force_maximize): call XSync() after first resize.
* src/globals.h (GROUP_DELETE_GROUP_OK): new define
(GROUP_DELETE_GROUP_NONEMPTY): likewise
* src/actions.h (cmd_gdelete): new prototype
* src/actions.c (user_commands): new command gdelete
(cmd_gdelete): new command
|
|
|
|
|
|
|
|
|
|
COMPLETION_PREVIOUS, then set last_match to it's previous entry.
|
|
specified by the user could not be found.
|
|
group.
(find_window_name): search the current group for a matching
window.
(find_window_other): likewise.
(format_window_name): take a rp_window_elem as an argument, not an
rp_window. Print the group window's number, not the window's
internal number.
(get_window_list): loop through the current group.
* src/split.c (find_window_for_frame): search the current group
for a window to fit in the frame.
* src/ratpoison.h: include globals.h and group.h
* src/manage.c (unmanage): remove the window from any groups it
was in.
(map_window): map the window in any groups it is in.
(withdraw_window): unmap the window in any groups it is in.
* src/main.c: Move all globals to globals.h
(main): initialize the group functions.
* src/data.h: Move all defines and extern globals to globals.h
(struct rp_window_elem): new struct
(struct rp_group): likewise
* src/actions.h (cmd_gnext): new prototype
(cmd_gprev): likewise
(cmd_gnew): likewise
* src/actions.c (user_commands): new commands gnext, gprev, and gnew
(cmd_prev): fix to work with new group code.
(cmd_next): likewise
(cmd_gnext): new function
(cmd_gprev): likewise
(cmd_gnew): likewise
* src/Makefile.am (ratpoison_SOURCES): add files globals.h,
globals.c, group.h and group.c
|
|
|
|
|
|
|
|
debugging.
(main): parse the screen argument and process it.
|
|
option.
(print_help): add --display option. Add text to demonstrate
--display and --command take an argument.
(ratpoison_longopts): add display.
|
|
one client requests a command (fix infinite loop bug).
|
|
|
|
and value using strtok.
* src/window.c (add_to_window_list): init the window's frame_number to EMPTY.
* src/number.h (numset_clear): new prototype
* src/manage.c (unmanage)[AUTO_CLOSE]: code update for new globals.
* src/frame.c (frame_new): init f->last_access to 0.
(frame_dump): dump the X11 window ID, not the window number.
(frame_read): new function
* src/events.c (destroy_window): just unmanage the window.
* src/actions.h (cmd_fdump): new prototype
(cmd_frestore): likewise
* src/actions.c (user_commands): new commands "fdump" and "frestore".
(cmd_fdump): new function
(cmd_frestore): likewise
* src/number.c (numset_clear): new function.
|
|
* src/split.c (show_frame_message): new function
* src/main.c (init_screen): listen for key release events in the
key_window and input_window.
* src/input.c (read_key): new argument, gobble_rel. All callers
updated.
* src/actions.c (cmd_remove): only remove the current frame if it
isn't the ONLY one.
(cmd_remove): display a message informing the user if the frame
cannot be removed.
(cmd_resize): clean up resize loop.
(cmd_resize): display a window indicating which frame is being
resized.
|
|
for fselect and resize. Move keybinding for curframe.
* src/split.c (create_initial_frame): call frame_new to allocate a frame.
(split_frame): likewise
* src/main.c (free_screen): call frame_free to free the screen
frames.
* src/frame.h (frame_new): new prototype
(frame_free): likewise
* src/frame.c (frame_new): new function.
(frame_free): likewise
|
|
|
|
* src/manage.c (scanwins): added better debugging output
* src/events.c (cleanup_frame): move to split.c
(handle_key): ungrab the rat right after we read the key.
* src/actions.h (cmd_tmpwm): new prototype.
* src/actions.c (spawn): return the pid of the child
process. prototype updated.
(cmd_tmpwm): new function
(user_commands): new command, tmp_wm.
|
|
preprocessor.
* src/ratpoison.h (PRINT_LINE): new macro.
(PRE_PRINT_LOCATION): remove macro
(PRINT_ERROR): takes one argument which is the argument list
,parens and all, to be passed to printf. Callers updated.
* src/actions.c (cmd_number): use list delete entry macro
(cmd_number): likewise
(cmd_escape): use list looping macro
(cmd_escape): likewise
(cmd_defpadding): likewise
(cmd_defborder): likewise
* src/events.c (mapping_notify): use list looping macro
(mapping_notify): likewise
* src/list.c: rename rp_unmapped_window_sentinel to
rp_unmapped_window and rp_mapped_window_sentinel to
rp_mapped_window. Use LIST_HEAD to create them. externs updated.
(add_to_window_list): use list add entry macro.
(find_window_in_list): list head is of type list_head. Prototype
and callers updated.
(find_window_in_list): use list looping macro
(init_window_list): remove function
(find_window_number): use list looping macro
(find_window_name): likewise
(find_window_prev): use list previous entry macro
(find_window_next): use list next entry macro
(find_window_other): use list looping macro
(append_to_list): remove function
(insert_into_list): use list looping macro
(insert_into_list): use list add entry macro
(remove_from_list): remove function
(get_window_list): use list looping macro
* src/main.c (main): do not call init_window_list()
* src/manage.c (unmanage): use list delete macro
(map_window): likewise
(withdraw_window): use list moving macro to move entry to
another list.
(hide_others): use list looping macro
* src/split.c (num_frames): use list looping macro
(frames_screen): likewise
(maximize_all_windows_in_frame): likewise
(delete_frame_from_list): remove function
(create_initial_frame): remove list init code. Add current frame
to screen's frame list.
(init_frame_list): use list init macro
(find_last_frame): use list looping macro
(find_windows_frame): likewise
(find_frame_next): use list next entry macro
(find_frame_prev): use list previous entry macro
(find_window_for_frame): use list looping macro
(split_frame): use list add entry macro
(remove_all_splits): use list looping macro
(resize_frame_vertically): likewise
(resize_frame_horizontally): likewise
(total_frame_area): likewise
(frame_overlaps): likewise
(remove_frame): likewise
(find_frame_up): likewise
(find_frame_down): likewise
(find_frame_left): likewise
(find_frame_right): likewise
|
|
|
|
(chld_handler): new function
* src/events.c: include sys/wait.h
(handle_signals): Print an error message in the case of a child
signal.
* src/data.h (struct rp_child_info): New struct.
(child_info): New global.
(chld_signalled): likewise
* src/actions.c (spawn): Let the SIGCHLD handler handle process
completion instead of doing an ugly dance.
|