aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/reader.cpp
Commit message (Collapse)AuthorAge
* Style fixes.Gravatar Aaron Gyes2016-06-23
|
* Lint CleanupGravatar Aaron Gyes2016-06-14
| | | | | | | This remove some stores that clang assures me are very dead. And an assert() for an unlikely NULL pointer dereference I can't quite figure out.
* Restyle touched .cpp filesGravatar Aaron Gyes2016-06-12
|
* Repair various invalid HeaderDoc comments.Gravatar Aaron Gyes2016-06-05
| | | | | Enable build setting to allow Xcode to complain about invalid comments.
* Don't insert prefix for non-prefix matchesGravatar Fabian Homborg2016-06-02
| | | | | | | | | | | | | | | | | | The issue here is that when inserting a common prefix for e.g. a substring match, we increase the amount of available candidates again to things the user didn't want. An example is in share/functions - a completion for "inter" would previously expand to "__fish_" because it matched: - __fish_config_interactive.fish - __fish_print_interfaces.fish - __fish_print_lpr_printers.fish The completion afterwards would then show 189 possible matches, only three of which (the above) actually matched the original "inter". Fixes #3089.
* Allow suggestion when selecting in pagerGravatar Fabian Homborg2016-05-27
| | | | Also mentioned in #3016.
* Allow autosuggestion after completionGravatar Fabian Homborg2016-05-27
| | | | | | | | | It seems kinda silly to not directly do it, but it was explicitly stopped in the code. I'm quite good at deleting that, aren't I? Fixes #3016.
* tty driver ignore lnext (\cV) and werase (\cW)Gravatar Kurtis Rader2016-05-25
| | | | | | | | | | Configure the tty driver to ignore the lnext (\cV) and werase (\cW) characters so they can be bound to fish functions. Correct the `fish_key_bindings` program to initialize the tty in the same manner as the `fish` program. Fixes #3064
* rename get_is_interactive and remove stupid testGravatar Kurtis Rader2016-05-14
| | | | | | I'm doing this as part of fixing issue #2980. The code for managing tty modes and job control is a horrible mess. This is a very tiny step towards improving the situation.
* lint: screen.cpp low hanging fruitGravatar Kurtis Rader2016-05-04
| | | | | The remaining lint work to be done on screen.cpp will require refactoring several functions that are way too large and complex.
* lint cleanup: eliminate "redundant" errorsGravatar Kurtis Rader2016-05-04
| | | | | This removes some pointless parentheses but the primary focus is removing redundancies like unnecessary "else" clauses.
* restyle reader module to match project styleGravatar Kurtis Rader2016-05-03
| | | | | | Reduces lint errors from 338 to 205 (-39%). Line count from 4650 to 3654 (-21%). Another step in resolving issue #2902.
* Issue a \r in fish_title, except when executing it for the promptGravatar ridiculousfish2016-04-29
| | | | | | | | | | | fish_title currently outputs some escaped text, which can confuse the line driver (#2453). Issue a carriage return so the line driver knows we are at the beginning of the line, unless we are writing the title as part of the prompt. In that case, we may have text from the previous command still on the line and we don't want to move the cursor. Fixes #2453
* add better support for IWYU and fix thingsGravatar Kurtis Rader2016-04-26
| | | | | | | | | Remove the "make iwyu" build target. Move the functionality into the recently introduced lint.fish script. Fix a lot, but not all, of the include-what-you-use errors. Specifically, it fixes all of the IWYU errors on my OS X server but only removes some of them on my Ubuntu 14.04 server. Fixes #2957
* implement swap-selection-start-stop functionGravatar Federico Ferri2016-03-20
| | | | | | | | | The swap-selection-start-stop function goes to the other end of the highlighted text, the equivalent of `o' for vim visual mode. Add binding to the swap-selection-start-stop function, `o' when in visual mode. Document swap-selection-start-stop, begin-selection, end-selection, kill-selection.
* reduce number of Unicode private-use charactersGravatar Kurtis Rader2016-02-28
| | | | | | | | | This narrows the range of Unicode codepoints fish reserves for its own use from U+E000 thru U+F8FE (6399 codepoints) to U+F600 thru U+F73F (320 codepoints). This is still not ideal since fish shouldn't be using any Unicode private-use codepoints but it's a step in the right direction. This partially addresses issue #2684.
* Re-use the parse tree generated during error detection for executionGravatar ridiculousfish2016-02-28
| | | | | | | Prior to this fix, read_ni would use parse_util_detect_errors to lint the script to run, and then parser_t::eval() to execute it. Both functions would parse the script into a parse tree. This allows us to re-use the parse tree, improving perfomance.
* Send BEL to terminal to flash/beep while trying to complete something not ↵Gravatar Aaron Gyes2016-02-25
| | | | completeable.
* Remove autosuggest_suggest_specialGravatar ridiculousfish2016-02-18
|
* Additional work on unifying cd autosuggestions with completeGravatar ridiculousfish2016-02-18
|
* Complete to take a pointer to output completions, not a mutable refGravatar ridiculousfish2016-02-18
|
* Migrate sort_and_prioritize to complete.cppGravatar ridiculousfish2016-02-18
|
* Switch autosuggest_suggest_special to returning a completion_tGravatar ridiculousfish2016-02-18
|
* Prefer special autosuggestions to match caseGravatar ridiculousfish2016-02-04
| | | | Fixes #2672
* Autosuggestions to follow same prioritization as tab completionsGravatar ridiculousfish2016-02-04
| | | | Partial fix for #2672
* only swith to shell tty mode if interactiveGravatar Kurtis Rader2015-12-27
| | | | | | | | | | | | My PR #2578 had the unexpected side-effect of altering the tty modes of commands run via "fish -c command" or "fish scriptname". This change fixes that; albeit incompletely. The correct solution is to unconditionally set shell tty modes if stdin is attached to a tty and restore the appropriate modes whenever an external command is run -- regardless of the path used to run the external command. The proper fix should be done as part of addressing issues #2315 and #1041. Resolves issue #2619
* Ensure interactive tty modes are set ASAPGravatar Kurtis Rader2015-12-08
| | | | | | | | | It is critical that we ensure our interactive tty modes are in effect at the earliest possible moment. This achieves that goal and is harmless if stdin is not tied to a tty. The reason for doing this is to ensure that \r characters are not converted to \n if we're running on the slave side of a pty controlled by a program like tmux that is stuffing keystrokes into the pty before we issue our first prompt.
* allow \cJ (\n) to be bound separate from \cM (\r)Gravatar Kurtis Rader2015-12-08
| | | | | | | This makes it possible (on UNIX systems, don't know about MS Windows) to bind \cJ (\n) independently of \cM (\r, aka [enter]). Resolves #217
* Revert "reader.cpp: send carriage return after printing the window title"Gravatar ridiculousfish2015-10-21
| | | | | This fix introduced #2499 This reverts commit 13479fbc2a130d97caeb66f7f56fb89c6be8c489.
* reader.cpp: send carriage return after printing the window titleGravatar David Adam2015-10-16
| | | | | | | Terminals can get confused by all the non-printed characters about the line position. Closes #2453.
* Migrate fish_history from config to data dirGravatar Jeff Kowalski2015-10-16
| | | | | | | | | New implementation of migration code within the history_t class will copy the contents of the old fish_history found in the config directory to its new location in the data directory. The old file is left intact. This is done only in the event that a fish_history is not already found in the data directory ($XDG_DATA_HOME/fish or ~/.local/share/fish).
* Revert "reader.cpp: send smkx/rmkx when entering/leaving interactive mode"Gravatar David Adam2015-10-15
| | | | | | | This reverts commit a66d44054c4aae44c307b10bb10469b4565e5027 due to https://github.com/fish-shell/fish-shell/issues/2406 - entering keypad mode causes various terminals to send undocumented and highly variable escapes for keys not specified in the terminfo specification.
* reader.cpp: send smkx/rmkx when entering/leaving interactive modeGravatar David Adam2015-09-10
| | | | Closes #2139.
* Remove unused original_pid variableGravatar ridiculousfish2015-08-18
|
* Initial implementation of intermediate fuzzy completionGravatar ridiculousfish2015-08-08
| | | | e.g. /u/l/b<tab> may be expanded to /usr/local/bin
* Merge branch 'iwyu'Gravatar David Adam2015-07-29
|\ | | | | | | http://include-what-you-use.org/
* | Continue to refine tokenizer interfaceGravatar ridiculousfish2015-07-26
| | | | | | | | Migrate some functions into tokenizer instance methods
* | Continue migration to the new tokenizer interfaceGravatar ridiculousfish2015-07-26
| |
* | Early reworking of tokenizer interfaceGravatar ridiculousfish2015-07-25
| |
| * Merge branch 'master' into iwyuGravatar David Adam2015-07-26
|/
* Migrate source files into src/ directoryGravatar ridiculousfish2015-07-24
This change moves source files into a src/ directory, and puts object files into an obj/ directory. The Makefile and xcode project are updated accordingly. Fixes #1866