Kurtis Rader
521546a986
fix some lint warnings
...
This fixes some of the IWYU and cppcheck lint warnings. And only on
macOS (formerly OS X). Fixing these types of warnings on a broader set
of platforms should be done but this is a baby step to making `make
lint-all` have few, if any, warnings. This reduces the number of lines
in the `make lint-all` output on macOS by over 500 lines.
2016-11-15 21:15:22 -08:00
Kurtis Rader
5284a133b0
silence "parameter 'notifier' is unused."
2016-11-11 21:07:30 -08:00
Kurtis Rader
5eb1ef4b4a
use enum_map for parser enums
...
This simplifies the parsing code slightly and makes it more consistent
with how we deal with enums in the *builtin.cpp* module.
2016-11-11 18:56:56 -08:00
Kurtis Rader
5d6415b6bf
use binary search for enum map lookups
...
Switch from a linear to a binary search when looking for a matching
string in an enum map. Testing shows this is a little more than twice as
fast when searching for keywords in the sixteen entry keyword_map array.
This speedup doesn't matter much when searching for subbcommands but any
slow down in the parser is unacceptable.
2016-11-11 18:02:43 -08:00
Kurtis Rader
6518b6c6b7
make subcommand lookups table driven
...
I'm going to use the same mechanism elsewhere such as token_type_map
in src/parse_tree.cpp. But this change only affects the recently
introduce subcommand handling for the history and status commands.
2016-11-08 15:30:52 -08:00
Kurtis Rader
609100c196
detect if the magic fish wide chars can be encoded
...
Verified on Cygwin on MS Windows 7 when invoked as
`env LANG=zh_CN.GBK@cjknarrow fish`. No regression seen
when run on other systems with UTF-8 locales.
Fixes #3503
2016-11-07 13:19:09 -08:00
Kurtis Rader
9e922a6e02
make status
saner vis-a-vis arg parsing
...
The `status` command currently silently allows incompatible flags (i.e.,
subcommands). Too, using flags to specify subcommands misleads the user
into thinking they can specify multiple subcommands.
We recently modified the `history` command to deprecate using flags for
subcommands. This change does the same for the `status` command.
Fixes #3509
2016-11-07 12:11:08 -08:00
Kurtis Rader
83c7931afb
treat TERM "tmux" the same as "screen"
...
To the extent that fish special-cases TERM values relevant to the
`screen` program it should do the same for the `tmux` program.
Fixes #3512
2016-11-06 20:27:48 -08:00
Kurtis Rader
1155c4b413
silence false positive errors from some compilers
...
Fixes #3529
2016-11-06 17:48:26 -08:00
Aaron Gyes
034aaaa62b
cppcheck: incorrect printf specifiers
2016-11-06 04:29:47 -08:00
Kurtis Rader
1fb8f4e277
lint: misc cleanups
...
Earlier lint cleanups overlooked a couple of modules because on macOS at
the moment oclint ignores them. I noticed this when I ran `make lint-all`
on Ubuntu.
2016-11-04 20:12:51 -07:00
Kurtis Rader
98863541c3
lint: prefer early exits and continue
...
Fix a location I missed in my earlier cleanup regarding early exits.
2016-11-04 20:12:51 -07:00
Aaron Gyes
d437a84828
Fix two xcode warnings
...
An unused macro and a documentation error.
2016-11-04 18:11:37 -07:00
Kurtis Rader
23c3101440
lint: goto and dead code
2016-11-03 16:53:58 -07:00
Kurtis Rader
003ea83410
lint: too few branches in switch statement
2016-11-03 16:41:51 -07:00
Kurtis Rader
de87419df9
lint: multiple unary operator
2016-11-03 16:37:26 -07:00
Kurtis Rader
4e505efc50
lint: redundant if statement
2016-11-03 16:32:27 -07:00
Kurtis Rader
b7d910a941
lint: long variable name
2016-11-03 16:19:41 -07:00
Kurtis Rader
f05fe4e292
lint: problems with default in switch statements
2016-11-03 16:19:41 -07:00
Kurtis Rader
9b0d45d4fa
lint: unnecessary else statement
2016-11-02 14:44:27 -07:00
Kurtis Rader
5709c81fe0
lint: empty while statement
2016-11-02 14:22:34 -07:00
Kurtis Rader
e35b91d38c
lint: empty else block
2016-11-02 14:17:26 -07:00
Kurtis Rader
4f4d34e664
lint: missing break in switch statement
2016-11-02 14:07:12 -07:00
Kurtis Rader
f6047f02d6
lint: constant conditional operator
2016-11-01 21:19:34 -07:00
Kurtis Rader
71e69b6d75
lint: empty if statement
2016-11-01 20:42:02 -07:00
Kurtis Rader
60c47deca9
lint: avoid branching statement as last in loop
2016-11-01 20:00:09 -07:00
Kurtis Rader
e73226d7e8
lint: unused parameter
2016-11-01 19:12:39 -07:00
Kurtis Rader
50fc3d72df
lint: Use early exit/continue
2016-10-31 18:17:38 -07:00
Kurtis Rader
feaeca4999
lint: Use early exit/continue
2016-10-31 18:17:38 -07:00
Kurtis Rader
d4fb9a0e65
lint: Use early exit/continue
2016-10-31 18:17:38 -07:00
Kurtis Rader
2c38978115
lint: Use early exit/continue
2016-10-31 18:17:37 -07:00
Kurtis Rader
520f810bf9
lint: Use early exit/continue
2016-10-31 18:17:37 -07:00
Kurtis Rader
d441de33e5
lint: Use early exit/continue
2016-10-31 18:17:37 -07:00
Kurtis Rader
46b791240a
lint: Use early exit/continue
2016-10-31 18:17:33 -07:00
Kurtis Rader
3bd24ddb17
lint: Use early exit/continue
2016-10-31 18:14:57 -07:00
Kurtis Rader
26c1430e82
lint: Use early exit/continue
2016-10-31 18:05:10 -07:00
Kurtis Rader
6c3900ff64
lint: Use early exit/continue
2016-10-31 18:05:10 -07:00
Kurtis Rader
6192e2453e
lint: Use early exit/continue
2016-10-31 18:05:09 -07:00
Kurtis Rader
eab836864e
lint: Use early exit/continue
2016-10-31 18:05:01 -07:00
Kurtis Rader
225caa2fe8
lint: Use early exit/continue
2016-10-31 18:03:03 -07:00
Kurtis Rader
4fe2a2921f
lint: Use early exit/continue
2016-10-31 18:00:59 -07:00
Kurtis Rader
7779132595
lint: Use early exit/continue
2016-10-31 17:58:41 -07:00
Kurtis Rader
ca5a4ec1d5
lint: Use early exit/continue
2016-10-31 13:29:10 -07:00
Kurtis Rader
49ed20c8cb
lint: Use early exit/continue
2016-10-31 13:29:10 -07:00
Kurtis Rader
f0ab1331a5
lint: Use early exit/continue
2016-10-29 21:46:11 -07:00
Kurtis Rader
99b729eb4d
lint: Use early exit/continue
2016-10-29 21:20:29 -07:00
Kurtis Rader
9af0797334
lint: Use early exit/continue
2016-10-29 20:51:03 -07:00
Kurtis Rader
6bef7b7be9
lint: constant if expression
2016-10-29 19:01:19 -07:00
Kurtis Rader
b0b2182535
lint: missing default in switch statements
2016-10-29 18:27:51 -07:00
Kurtis Rader
b663b0e818
lint: redundant if statement
2016-10-28 19:15:05 -07:00