ridiculousfish
4621e763b6
Fix wildcard expansion in directories without read permissions
...
When performing wildcard expansion with a literal path segment,
instead of enumerating the files in the directory, simply apply the
path segment as if we found the directory and continue on. This
enables us to expand strings that contain unreadable directory
components (common with $HOME) and also improves performance, since
we don't waste time enumerating directories unnecessarily. Adds
a test too.
Fixes #2099
2015-06-20 12:32:30 -07:00
ridiculousfish
b511550917
Revert "Prepend ./ to "flag-like file" wildcard expansions and completions"
...
This reverts commit 316d7004a3
.
Reverts fix for 1519 in light of #1713
Conflicts:
fish_tests.cpp
2014-09-25 22:18:36 -07:00
Kevin Ballard
35595dbffd
Make escape() return a wcstring
...
This avoids the potential for leaking the resulting string.
2014-09-25 18:20:03 -07:00
ridiculousfish
316d7004a3
Prepend ./ to "flag-like file" wildcard expansions and completions
...
If a wildcard or completion expands to a file that begins with
one or more dashes, prepend a ./ to it so that it doesn't get
parsed as an option.
Fixes #1519
2014-09-24 22:06:43 -07:00
Kevin Ballard
8a3cf144f2
Don't include child directories of $PATH in completions
...
Directories are completed like commands, because of implicit cd.
However, directories found inside $PATH entries should not be completed,
as implicit cd doesn't work there. Similarly, directories should not be
completed after the `command` builtin.
Fixes #1695 .
2014-09-20 00:31:33 -07:00
ridiculousfish
9419191aa6
Clean up variable expansion, and properly handle embedded NULs
2014-08-24 14:39:56 -07:00
ridiculousfish
91aadab3dd
Enhance file_id_t to have richer information, to guard against inode
...
recycling on Linux filesystems
2014-04-28 15:14:33 -07:00
ridiculousfish
cf766b55cc
Fix formatting
2013-10-26 15:27:39 -07:00
ridiculousfish
ee3b355c34
Fix certain wildcard tab completions -
...
https://github.com/fish-shell/fish-shell/issues/929
2013-09-11 02:33:44 -07:00
ridiculousfish
464187491f
Formatting
2013-06-02 01:14:26 -07:00
ridiculousfish
908b07527e
Support for fuzzy completions
...
https://github.com/fish-shell/fish-shell/issues/568
https://github.com/fish-shell/fish-shell/issues/528
2013-05-25 15:41:18 -07:00
ridiculousfish
2da81b0ae7
Formatting and style updates
2013-05-05 02:33:17 -07:00
ridiculousfish
eb3a1f6739
Fix for reported "out of memory" for filesystems that return -1 as _PC_NAME_MAX
2013-04-26 11:46:49 -07:00
ridiculousfish
b65f8d81fc
Don't block "hidden files" for wildcard expansions that aren't files (like case)
...
https://github.com/fish-shell/fish-shell/issues/667
2013-04-20 12:41:02 -07:00
ridiculousfish
b8f34cdd35
Teach case-insensitive completions about tildes. Fixes https://github.com/fish-shell/fish-shell/issues/647
2013-04-07 23:54:43 -07:00
ridiculousfish
4d19bb17a9
Break out COMPLETE_NO_CASE and COMPLETE_REPLACES_TOKEN into separate flags, in preparation for upcoming fuzzy completion work
2013-03-05 20:54:16 -08:00
ridiculousfish
4416753df0
More cleanup based on static analysis
...
https://github.com/fish-shell/fish-shell/issues/575
2013-02-16 02:38:13 -08:00
Jan Kanis
9a89da3b33
merge branch 'bug-537' and branch 'bug-read-ctrlC'. This should fix both #537 and #516
2013-02-05 23:16:18 +01:00
Jan Kanis
3f5c02bf92
rename reader_cancel_thread to reader_thread_job_is_stale, update comments
2013-02-05 21:28:23 +01:00
ridiculousfish
ad8d68dd43
Make subcommands modify $status, and make builtin_set not modify status unless it fails
...
https://github.com/fish-shell/fish-shell/issues/547
https://github.com/fish-shell/fish-shell/issues/214
2013-01-31 15:57:08 -08:00
Jan Kanis
70a75dc88a
implement reader_cancel_thread using __thread thread-local storage
2013-01-23 00:19:29 +01:00
Jan Kanis
c58278758c
reader_interrupted() should only be called on the main thread. fixes #537
2013-01-22 10:27:14 +01:00
ridiculousfish
984a498063
More work towards incremental history. Added some tests.
2012-12-02 23:38:38 -08:00
ridiculousfish
26678682ca
Fix indentation of switch statements
2012-11-19 00:31:03 -08:00
ridiculousfish
9992b8eb0e
Apply new indentation, brace, and whitespace style
2012-11-18 16:30:30 -08:00
Łukasz Niemier
47df1ae40a
Remove trailing whitespaces and change tabs to spaces
2012-11-18 11:23:22 +01:00
ridiculousfish
833abc27cc
Make wildcards beginning with dots not match . and ..
...
https://github.com/fish-shell/fish-shell/issues/270
2012-10-15 18:16:47 -07:00
ridiculousfish
670e33ab27
Properly handle empty completions (e.g. tab-complete 'foo' with extant files 'foo' and 'foobar' should offer both)
...
Fixes issue described in https://github.com/fish-shell/fish-shell/issues/290
2012-08-20 13:09:21 -07:00
ridiculousfish
7d029778e6
Disable file completion descriptions per https://github.com/fish-shell/fish-shell/issues/279
2012-08-15 18:20:44 -07:00
ridiculousfish
1e328c3546
Better handle symlink loops in recursive wildcards (**)
...
https://github.com/fish-shell/fish-shell/issues/268
2012-08-07 02:50:12 -07:00
ridiculousfish
2e1b3325c6
Warning cleanup
2012-08-04 11:34:45 -07:00
ridiculousfish
d06d6c6964
Various changes to reduce fish's compiled code size
...
OS X release build executable size dropped from 672k to 511k
2012-07-17 12:47:01 -07:00
ridiculousfish
86645b32e1
Work towards getting function.h off of shared_ptr
2012-05-17 19:38:08 -07:00
ridiculousfish
9bcc7df96f
Lots of modernization changed
...
Removed wcsdupcat
2012-05-09 02:33:42 -07:00
ridiculousfish
0bc644abf0
Fix lots of bugs related to the static analyzer
...
Improved how screen.cpp interacts with output_set_writer()
2012-03-26 01:21:10 -07:00
ridiculousfish
a0bb2cdc6e
removed some string_buffer
2012-03-03 19:37:55 -08:00
ridiculousfish
a515db4aea
Some work to allow completions to be evaluated off of the main thread
2012-02-24 12:19:31 -08:00
ridiculousfish
2206e221bd
Removed array_list_t (!)
2012-02-21 10:47:21 -08:00
Siteshwar Vashisht
74a7303c23
Modified functions in function.h/.cpp to use wcstring instead wchar_t*, other files also modified to use wcstring.
2012-02-19 22:55:15 +05:30
Siteshwar Vashisht
7b3d670e23
Removing some unnecessary calls to c_str(), and added str2wcstring(std::string) in common.cpp.
2012-02-18 23:28:54 +05:30
Siteshwar Vashisht
c9f4e91df8
Modified most functions in wutil.h/.cpp to use wcstring instead of wchar_t*, removing calls to c_str() while calling these functions in other files.
2012-02-18 22:41:22 +05:30
ridiculousfish
e2ff77b4ec
Clean up make_path and some memory allocations
2012-02-13 22:44:29 -08:00
ridiculousfish
caf7a93382
Fix for busted completions (tab completion of directories was failing)
2012-02-13 22:37:09 -08:00
ridiculousfish
910863e9ea
Final removal of halloc. It's like Christmas Morning.
2012-02-09 19:26:44 -08:00
ridiculousfish
19cd7a248d
Cleanup of wildcard.cpp, removing ad-hoc hash table and halloc
2012-02-09 16:06:24 -08:00
ridiculousfish
f1b1d1ca75
Get rid of some string buffer
2012-02-09 10:14:06 -08:00
ridiculousfish
5f686ebb47
Clean up exec_subshell, removing al_list from it
2012-02-07 23:35:41 -08:00
ridiculousfish
a0a43046b3
Removed discriminated union from block_t type, allowing us to store wcstrings in it
2012-02-07 17:36:54 -08:00
ridiculousfish
6afc06b97e
Migrate some al_list to std::vector
2012-02-02 14:27:13 -08:00
ridiculousfish
cdd5b1ed26
Fixed a crash doing completion of commands
2012-02-02 14:11:20 -08:00