summaryrefslogtreecommitdiff
path: root/hsettings.el
AgeCommit message (Collapse)Author
2019-06-29Remove conditionals on xemacsMats Lidell
Remove all featurep checks on xemacs and emacs.
2019-02-03Merge branch 'master' of git.sv.gnu.org:/srv/git/hyperbole with changesBob Weiner
2019-02-03Large set of BW changes for V7.0.2b pre-release.Bob Weiner
2018-05-20Add default search term for web searchesMats Lidell
When region is active and not to big the selected text is used as a default search term. This make it convenient to mark text and use that for different types of web searches.
2017-12-29Fixed issue with inhibit-hyperbole-messaging not be set properlyBob Weiner
2017-12-127.0.2a test update:Bob Weiner
company completion support; ripgrep match handling; directional movement of buffers across windows; hkey-{drag, replace, swap, throw} commands integrated with ace-window; hmouse-click commands to perform cross-window drags, replacements and throws with 3 mouse clicks; * hversion.el: Pushed 7.0.2a test update. * hmouse-drv.el (hkey-throw): Modified to show a message if the frame of release is different than the frame of depress, since this frame is typically hidden by the depress frame. * hmouse-tag.el (smart-lisp-mode-p): Added change-log-mode since such files often contain Lisp references. * hypb.el (hypb:select-window-frame): Added and used in hmouse-item-to-window. (hypb:save-selected-window-and-input-focus): Added and used in hkey-throw. * kotl/kotl-mode.el (kotl-mode): Fixed setq close paren error that skipped 4 settings of paragraph-start, selective-display, selective-display-ellipses and track-eol. 2017-12-10 Bob Weiner <rsw@gnu.org> * man/hyperbole.texi (Menu Commands, HyRolo Menu): Documented how to invoke the Koutliner and HyRolo popup menus in Emacs. * hyrolo-menu.el (hyrolo-menubar-menu): kotl/kmenu.el (kotl-menubar-menu): For GNU Emacs, use standard binding of C-mouse-3 to popup mode-specific menu instead of mouse-3. 2017-12-08 Bob Weiner <rsw@gnu.org> * hmouse-drv.el (hkey-ace-window-setup): Autoloaded since might be added to an init file before Hyperbole is loaded. * hycontrol.el (hycontrol-quit-frames-mode, hycontrol-quit-windows-mode): Added conditionals to allow for quitting from help buffers with {q} while remaining in HyControl, e.g. if display a key binding help window. Added {Q} binding to unconditionally quit from HyControl. * hmouse-drv.el (hkey-buffer-move): Added directional movement commands that call this function. hkey-buffer-move-left, hkey-buffer-move-right, hkey-buffer-move-down and hkey-buffer-move-up. 2017-12-07 Bob Weiner <rsw@gnu.org> * hload-path.el (hyperb:emacs-p): Removed Emacs19 test. (hyperb:kotl-p): Removed since all versions of Emacs in use now support the Koutliner. * hlvar.el - Removed this since colons are now handled by Emacs 26 in local variable names. * hypb.el (hypb:rgrep): Added support for ripgrep. hibtypes.el (ripgrep-msg): Added implicit button support for ripgrep (rg) messages where the associated pathname is output once before all mataching lines. See "https://github.com/BurntSushi/ripgrep". 2017-12-04 Bob Weiner <rsw@gnu.org> * hmouse-drv.el (hmouse-alist): Reload the def of this variable if its value is null. (hkey-mouse-click-to-replace): Added to allow moving buffers with the mouse by clicking on the from and to windows. (hmouse-click-to-drag, hmouse-click-to-drag-to, hmouse-click-to-replace, hmouse-click-to-throw, hmouse-choose-windows): Added to perform cross-window drags, replacements and throws with 3 mouse clicks. 2017-12-03 Bob Weiner <rsw@gnu.org> * hui-treemacs.el: Removed replacements for treemacs functions; as of Treemacs 1.14, all needed changes are included. 2017-12-01 Bob Weiner <rsw@gnu.org> * hmouse-drv.el (hkey-drag-stay, hkey-replace): Added for use as ace-window commands. (hkey-throw): Rewrote so if not on an item, then throws the current buffer. hkey-replace is the inverse, it grabs the specified buffer and places it into the selected window ({p} command key for ace-window). hkey-drag-stay does a drag but leaves point in the originally selected window. (hmouse-click-to-drag, hmouse-click-to-drag-stay, hmouse-click-to-drag-to) hmouse-click-to-replace, hmouse-click-to-swap, hmouse-click-to-throw): Added to click with the mouse twice on two different windows to select the windows using hmouse-choose-windows. (hkey-drag, hkey-drag-stay, hkey-drag-to, hkey-replace, hkey-swap, hkey-throw): Added and made interactive with ace-window window parameter selection. (hkey-buffer-to): Added to copy a buffer from-window to-window, using ace-window to select the windows. (hkey-swap-buffers): Added to swap buffers between from-window and to-window, using ace-window to select the windows. * hui-treemacs.el (smart-treemacs): Added standard Hyperbole end-of-line scrolling support. * hui-mouse.el (smart-company-to-definition, smart-company-help): Added to support company completion mode. hmouse-sh.el (hmouse-shifted-setup, hmouse-unshifted-setup): Added Action and Assist Key local bindings for company-mode for GNU Emacs. 2017-11-30 Bob Weiner <rsw@gnu.org> * man/hyperbole.texi (Glossary): Added Jedi item with link to its home page. Added link to the OO-Browser home page in its item. * hmouse-tag.el (smart-python-jedi-to-definition-p): Added and called in smart-python to use the Jedi package when its server is running. It jumps to the proper definition of multi-level module references definitions, e.g. a.b.c. Also fixed error where the default action was not jumping to a tag definition at point because it was testing that the identifier parameter was non-nil (no identifier is sent in such usage). * hui-mouse.el (hkey-alist): Moved smart-python prior to Imenu for more advanced definition lookups * hyperbole.el (temp-buffer-show-hook, temp-buffer-show-function): Added Hyperbole hkey-help-show function rather than replacing any existing hook values. 2017-11-29 Bob Weiner <rsw@gnu.org> * hibtypes.el (markdown-internal-link): Rewrote (and added support functions) to handle markdown infile links properly. Previous use of markdown-do was removed because that now does things other than following links. 2017-11-28 Bob Weiner <rsw@gnu.org> * hmouse-drv.el (hkey-help-show): Added conditionals to support org-mode org-goto *Org Help* buffer properly. 2017-11-27 Bob Weiner <rsw@gnu.org> * hmouse-drv.el (hkey-ace-window-setup): Made new ace-window frames (window id = z) inherit the size of the prior selected frame; same as HyWindow. * hui-window.el (hmouse-kill-and-yank-region, hmouse-yank-region): Added select-frame-set-input-focus in case released in a different frame. 2017-11-26 Bob Weiner <rsw@gnu.org> * hmouse-drv.el (hkey-throw): Restored input focus to start-win rather than just making it the selected window. (hkey-drag-to): Fixed predicate test to call hmouse-at-item-p instead of hmouse-drag-item-to-display and set input focus to release-window if dragging an item.
2017-11-02Updated HY-NEWS with all new features for next major release.Bob Weiner
* HY-NEWS: Updated for next major release * man/hyperbole.texi (Button Colors): Added doc on hproperty:but-highlight-flag. (Hook Variables): Added doc of: action-key-depress-hook, action-key-release-hook, assist-key-depress-hook and assist-key-release-hook. * hsettings.el (hproperty:but-highlight-flag): Added as a setting. hui-em-but.el (hproperty:but-highlight-p): Renamed to hproperty:but-highlight-flag. (hproperty:but-emphasize-p): Renamed to hproperty:but-highlight-flag. hui-xe-but.el (hproperty:but-highlight-p): Renamed to hproperty:but-highlight-flag. (hproperty:but-emphasize-p): Renamed to hproperty:but-highlight-flag.
2017-11-01Corrected mouse-position and mouse-pixel-position to return selected frame; ↵Bob Weiner
added key sequences with args support. * hib-kbd.el (kbd-key:special-sequence-p): Added and used in implicit button type kbd-key and kbd-key:act. (kbd-key:key-and-arguments): Added to allow for key sequences with interactive arguments and added an example in DEMO. * hui-mini.el (hui:menus): hui-menu.el (hui-menu-key-bindings): Added Find Web and Jump Thing key binding change entries. * hyperbole.el (mouse-position-function): Added this setting to make mouse-position and mouse-pixel-position always return the selected frame. * hsettings.el (helm-allow-mouse): Changed to require Hyperbole-modified branch of Helm named global_mouse and set helm-allow-mouse to the proper value of 'global-mouse-bindings.
2017-10-24HyControl changes: now a global minor mode; added @ window grid creation ↵Bob Weiner
command; inverted selected mode-line for emphasis 2017-10-24 Bob Weiner <rsw@gnu.org> * hycontrol.el (hycontrol-universal-arg-digit): Removed first argument and replaced with global hycontrol-arg, so could set this value internally. (hycontrol--debug, hycontrol-setup): Changed from -1 to 0 as debug setting since -1 is used to turn off HyControl minor modes. (hycontrol-debug): Renamed from hycontrol--debug. Made public so can be set directly. (hycontrol-setup, hycontrol-frames, hycontrol-windows): : Removed debug parameter; no longer needed since all events are handled normally by Emacs now. (hycontrol-windows-mode-map): [ and ] bindings; don't call these interactively because a prefix arg of 1 tries to make one window 1 line tall. (hycontrol-split-windows-repeatedly): Added to allow rapid visual testing of various window layouts until satisfied. (hycontrol-post-command-hook): Made this automatically quit from HyControl whenever a minibuffer prompt becomes active so can use regular keys to type. (hycontrol-invert-mode-line-flag, hycontrol-invert-mode-line): Added to invert mode-line to emphasize the special key bindings in effect in HyControl modes. 2017-10-23 Bob Weiner <rsw@gnu.org> * hycontrol.el (hycontrol-split-windows-buffer-list): Added to prefix buffer-list with any marked items when in a Dired, Buffer-Menu or iBuffer listing buffer. If any such items exist, the buffer-list is not filtered by hycontrol-display-buffer-predicate-list. (hycontrol-pre-command-hook): Added and changed setting of prefix-arg to pre-command-hook. This set it properly for HyControl commands. (hycontrol--prompt-format): Added to generalize help prompt handling. (hycontrol-post-command-hook): Replaced windows and frames post-command-hook with this one. (hycontrol-frames-mode, hycontrol-windows-mode): Made these global minor modes and added their variables to the hyperbole-screen group. Buffer local minor modes renamed to hycontrol-local-*-mode. (hycontrol-quit-frames-mode, hycontrol-quit-windows-mode): Changed defs to disable its global minor mode. (hycontrol-post-command-hook): Fixed so HyControl help messages are not logged to the *Messages* buffer. (hycontrol-disable-modes): Added. * set.el (set:create): Added autoload in case is ever used without a require. * hycontrol.el (hycontrol-split-windows, hycontrol-split-windows-rows-columns, hycontrol-split-windows-by-major-mode): Incredible new autoloaded commands that split a frame into a number of balanced windows specified by rows and columns (typically as prefix arg digits). Each window shows a different buffer, if possible, with the by-major-mode command preferring buffers with the specified major mode. The hycontrol-split-windows chooses the by-major-mode command when given a prefix arge of 0; otheriwse, the rows-column one. (hycontrol-window-display-buffer, hycontrol-display-buffer-predicate-list) hycontrol--invert-display-buffer-predicates): Added to support new commands. (require 'set): Added for set:create used in hycontrol-split-windows-by-major-mode. (hycontrol-*-mode-map): Bound {@} to hycontrol-split-windows-rows-columns, also in Buffer-menu, IBuffer and Dired modes. * hycontrol.el (hycontrol--initial-which-key-inhibit): Added. (hycontrol-end-mode, hycontrol-frames, hycontrol-windows): Used above flag. (hycontrol-setup): Refactored common parts of hycontrol-frames and hycontrol-windows here. (hycontrol-frames-setup, hycontrol-windows-setup): Added and used in hycontrol-frames and hycontrol-windows, respectively. 2017-10-22 Bob Weiner <rsw@gnu.org> * Makefile ($(pkg_dir)/hyperbole-$(HYPB_VERSION).tar): Ensured `topwin' script was made executable. hmouse-drv.el (hmouse-window-at-absolute-pixel-position): Changed to find `topwin' executable in hyperb:dir so no additional installation is necessary. * hycontrol.el (hycontrol-window-to-new-frame): Fixed to duplicate prior selected window size properly. * hui-window.el man/hkey-help.txt: Noted that a modeline click on a dired Buffer ID shows the parent directory. 2017-10-20 Bob Weiner <rsw@gnu.org> * hycontrol.el (hycontrol-help-flag): (hycontrol-toggle-help): Added to allow toggling minibuffer key binding help off. (hycontrol-frames-mode, hycontrol-windows-mode): Made HyControl modes into minor modes. (hycontrol-enable-frames-mode, hycontrol-enable-windows-mode): Renamed from hycontrol-toggle-to-*-mode. man/hyperbole.texi (HyControl): Updated documentation with these changes. * hbut.el (ibtype:create): Expanded this doc for defact, explaining how actions are connected to its 'at-p' parameter. * hycontrol.el (hycontrol-abort-mode): Added and used when {C-g} is pressed; exits HyControl and executes (keyboard-quit). (hycontrol-end-mode, hycontrol-quit-frames-mode, hycontrol-quit-windows-mode, hycontrol-toggle-to-frames-mode, hycontrol-toggle-to-windows-mode): Added and used as key bindings. (hycontrol-exit-mode): Deleted and replaced with above commands. (hycontrol-frame-fit-to-screen): Changed to adjust width and height separately which fixed a bug in our call to set-frame-size which kept increasing the frame height slightly. (hycontrol-frames, hycontrol-windows): Prevented `which-key' package from popping up its key help and interferring with the minibuffer message while in HyControl. Otherwise, the which-key help could be left onscreen after a quit of HyControl. * hui-window.el (hmouse-pulse-flag): Made t the default because timing and display issues with pulsing drag items were resolved now. 2017-10-19 Bob Weiner <rsw@gnu.org> * Makefile (pkg): Changed hyperbole source dir from hyperbole-<version> to hyperbole since that is the name of the git repo top-level directory from which packages are now built. * hui-jmenu.el (hui-menu-hywconfig): Fixed improper variable reference that kept Delete-Name and Restore-Name from ever being active.
2017-09-112017-09-10 Bob Weiner <rsw@gnu.org>Bob Weiner
* hui-mouse.el (smart-helm, smart-helm-assist, smart-helm-line-has-action): hsettings.el (helm-allow-mouse): Set to t. New helm completion activation support. Added to allow mouse direct selection of helm completion items. The smart-helm function behaves similarly to the {C-j} and {C-z} key bindings that helm mode provides when a helm completion is active but the Smart Keys work in the completions buffer regardless of whether a helm completion is active or not. * hsys-www.el (www-url): Added Action and Assist Key support for browsing links in eww (the Emacs web browser) and for activating history links in the eww history buffer. 2017-09-08 Bob Weiner <rsw@gnu.org> * hpath.el (hpath:url-regexp3): Added a third pattern match for URLs, allowing for partial http urls with non-www site names preceded by the literal url or URL followed by a : or =. For example: url:photos.google.com or url=calendar.google.com 2017-09-07 Bob Weiner <rsw@gnu.org> * hui-menu.el (hui-menu-browser): Changed the Default setting to always use the current setting of browse-url-default-browser since that is the default in browse-url (eliminated use of browse-url-generic). * hypb.el (hypb:decode-url): Added. hpath.el (hpath:is-p): Fixed to handle and decode encoded URL paths before returning the path. 2017-09-06 Bob Weiner <rsw@gnu.org> * hui-mouse.el (hkey-alist): Changed Python predicate to match more broadly, namely in any non-file buffer whose name includes Pydoc: or Python (case-sensitive). * hmouse-tag.el (smart-python-at-tag-p): Expanded to handle tags with periods embedded such as `sys.path'. 2017-09-04 Bob Weiner <rsw@gnu.org> * hibtypes.el (debugger-source): Added support for Python pdb stack trace lines. 2017-08-31 Bob Weiner <rsw@gnu.org> * hibtypes.el (pathname): Wrapped mode-name reference in format-mode-line call since mode-name is not always a string. * hui-em-but.el (hproperty:but-highlight-p): Added to allow disabling of explicit button highlighting. (hproperty:but-create-all): Used this new flag. hui-xe-but.el (hproperty:but-highlight-p): Added to allow disabling of explicit button highlighting. (hproperty:but-create-all): Used this new flag. * hbut.el (ebut:map): Changed to ignore explicit button matches in programming languages when outside of a comment. For example, syntax like this in a Rust buffer had been improperly matched: fn parse_kv(kv_list: Vec<(syn::Ident, syn::StrLit)>, function: &Function) -> LispFnArgs 2017-08-25 Bob Weiner <rsw@gnu.org> * hui-mouse.el (smart-ibuffer-menu): Ibuffer calling conventions have changed across time (as of Emacs25) to allow for regional arguments; updated to account for these. * hpath.el (hpath:remote-at-p): For Emacs 26 where tramp-file-name-structure is now a function instead of a variable, call the function. * hyrolo.el (hyrolo-kill): Triggered error if FILE contains a '*' character, mainly in case a buffer name is passed as an argument. (hyrolo-file-list-initialize): Added this function so can re-initialize the hyrolo-file-list later if BBDB or Google Contacts support is loaded after the Hyperbole Rolo is initialized. * hbut.el (hbut:source): Allowed for spaces in buffer names. * hyrolo.el (hyrolo-edit-entry): Avoided error if bbdb-file is nil. * hbut.el (ebut:label-p): Added one-line-flag to constrain label search to a single line. hibtypes.el (Info-node): Constrained Info-node hyper-button matches to a single line. * hyrolo.el: Added support for Google Contacts when the google-contacts package is in use and a public key package is available for Google authorization. 2016-09-08 Bob Weiner <rsw@gnu.org> * man/hyperbole.texi: Documented Pages Directory Listing handling. * kotl/klink.el: (require 'hbut): Added to define defib when compiled. 2016-08-26 Bob Weiner <rsw@gnu.org> * hui-mouse.el (hkey-alist): Added Smart Key jump to associated page in pages-directory-mode (page-ext.el). man/hkey-help.txt: Documented Pages Directory Listing and Imenu Programming Identifier handling.
2016-08-08* hactypes.el (link-to-web-search): Added so Hyperbole global and explicit ↵Bob Weiner
buttons can execute web searches. hsettings.el (hyperbole-read-web-search-arguments): Added and used in hyperbole-web-search and link-to-web-search. DEMO (Sample Explicit Buttons and Types): man/hyperbole.texi (Action Types): Documented link-to-web-search. * INSTALL, README, README.md, README.md.html: Added Browsing the Source section with ftp tarball download information. * hpath.el (hpath:delimited-possible-path): Added non-ascii quote characters to possible delimiters. (hpath:delete-trailer): Added quoting characters to deletion to fix bug where remote pathname retrieval would include a trailing quote mark. * hargs.el (hargs:delimited): Added support for up to 2-line delimited regions as long as point is on the first line. Normalized any newline followed by whitespace to a single space in the string returned. Added (require 'hypb).
2016-08-052016-08-05 Bob Weiner <rsw@gnu.org>Bob Weiner
* hib-social.el (social-reference): Disabled this implicit button type in html and related modes so in-file link references are not matched as social hash tags and made the list of modes a variable, hpath.el (hpath:to-html-anchor): Added. (hpath:find): Rewrote to follow HTML in-file anchor references. 2016-08-04 Bob Weiner <rsw@gnu.org> * hpath.el (hpath:html-suffix-regexp, hpath:html-anchor-id-pattern, hpath:html-link-anchor-regexp): Added. * README, README.md, README.md.html: Added a new testimonial. * Makefile (elpa, ftp): Added these targets to install Hyperbole releases for ELPA or ftp download. Changed so release target depends on package target so you can build a package prior to a release. * hpath.el (hpath:remote-available-p): Fixed tramp package check prior to loading by adding a test for tramp-autoload-file-name-handler. * README.md.html: Fixed bookmarks/in-file link ids. 2016-08-03 Bob Weiner <rsw@gnu.org> * hsettings.el (hyperbole-web-search-alist): Made any edit update all Hyperbole menus with the new value. DEMO (Hyperbole Menus): Added description and exercise using the new Find/Web menu. hui-mini.el (Cust/Web-Search): Added to allow setting of hyperbole-web-search-browser-function. hui-menu.el (infodock-hyperbole-menu): Added optional rebuild-flag to force rebuilding of the Hyperbole menubar menu. * man/hyperbole.texi (HyControl): Documented ESC as a way to quit from HyControl.
2016-08-02* README.md.html - Added.Bob Weiner
2016-08-01 Bob Weiner <rsw@gnu.org> * hui-menu.el (hui-menu-browser): Added to allow setting of hyperbole-web-search-browser-function. (infodock-hyperbole-menu): Added missing quote in Display-Referents-in setq, fixing invalid code generation. * README.md (Invocation): HY-ANNOUNCE (Invocation): INSTALL (Invocation): README (Files): DEMO (HyControl): Added pointer to HyControl video and {C-c \} binding. hyperbole.texi (HyControl): Updated {C-c \} binding description. * hycontrol.el (hycontrol-frames, hycontrol-windows): Added ESC as an additional key that quits form HyControl. * man/hyperbole.texi (Global Key Bindings): Documented {C-c /} prefix key. (Menus): Added Find/Web menu.
2016-07-31* Changes: Renamed this file from ChangeLog since Elpa release buildsBob Weiner
overwrite any file named ChangeLog with git log information which has less history than Hyperbole's Changes. * hui-mini.el (hui-search-web): Added so can invoke the Hyperbole Find/Web search menu directly. hyperbole.el (hkey-initialize): Bound above command to {C-c /}. * hsettings.el (hyperbole-web-search-browser-function): (hyperbole-web-search-alist): (hyperbole-web-search): Added. hui-mini.el (hui:menu-web-search): Added and called within hui:menus. hui-menu.el (hui-menu-web-search): Added and called in infodock-hyperbole-menu. * hinit.el (hyperb:init-menubar): Fixed so sets after-init-hook only if not after-init-time. Also forced a return value of nil. hui-menu.el (hyperbole-menubar-menu): Changed so this always updates the menubar with the latest version of the Hyperbole menu; previously it only added the menu if it was not there.
2016-07-25* README: Renamed this file from HY-README. Moved installation and invocationBob Weiner
instructions to "INSTALL" file. These changes were to eliminate release problems with INSTALL and README being symbolic links. * hmouse-tag.el (smart-tags-display): Added with-no-warnings around find-tag call to prevent obsolete warnings and removed setting of byte-compile-warnings.
2016-07-21* hsettings.el: Renamed this from hsite.el to prevent Hyperbole V4 users fromBob Weiner
accidentally loading it manually. * hyperbole.el (hyperbole-autoloads): If this exists and autoloads kotl-mode, then skip setup to generate hyperbole-autoloads with autoloads from the kotl/ subdirectory.