4 Home | RecentChanges | Preferences
5 _________________________________________________________________
7 Surprised by this behavior...is this a bug?
9 (Goal: e.g. distinguish between completely numeric args/names and
10 those containing non-numerics)
12 % touch 1023 pex103 pex103a 104a z101 16a02 1999 2001 2001_A_Space_Odyssey
20 # (great, looks good to me. Got everything containing a nonnumeric, no more, n
23 % foreach p ( 1023 pex103 pex103a 104a z101 16a02 1999 2001 2001_A_Space_Odyss
25 foreach? if ( $p !~ *[^0-9]* ) echo $p
29 % foreach p ( 1023 pex103 pex103a 104a z101 16a02 1999 2001 2001_A_Space_Odyss
31 foreach? if ( $p =~ *[^0-9]* ) echo $p
44 The [MAN page description] for =~ and !~ just refer to "(see [Filename
45 substitution])', but evidently there is a (unexplained) difference.
46 The actual filename globbing looks correct to me, but the pattern
47 matching operator behavior is unexpected, if I'm not missing
53 _________________________________________________________________
55 I'm a long-time faithful user of tcsh, and one thing has always bugged
56 me -- the need to type "rehash" at a prompt when adding a new command.
57 My suggestions is to change tcsh so before printing "Command not
58 found.", it first searches its entire path and rebuilds its hash
59 table. Only after doing this, and if the command is still not in the
60 path, then print "Command not found.". I realize there are some
61 extreme cases in which this is suboptimal, but in most cases with
62 normal users this would be a big win, and simplify the manual and
63 perhaps even the code.
64 _________________________________________________________________
66 Wish "tcsh -l" would accept other flags. At least "-c".
68 Currently I can't get ssh to have the right environment unless it is a
69 login shell. The .ssh/environment doesn't work for me because I login
70 to different machines with different environments. One thing to do
71 would be to not have the different environment for login compared to
72 other shells, but what I would really like is something like...
74 ssh remote_application_server "tcsh -l -c application"
76 The "ssh -t" doesn't work for me and I don't know why.
80 Fix limit vmemoryuse in Linux
82 In Linux tcsh is unable to limit vmemoryuse. This is because
83 RLIMIT_VMEM isn't defined, instead Linux has RLIMIT_AS which means the
84 same. On Google groups I found patches suggested by Komazaki at
85 http://groups.google.com/groups?hl=sv&lr=&ie=UTF-8&oe=ISO-2022-JP&selm
86 =m3snmczvfc.wl%40thinkpad.osk.3web.ne.jp.osk.3web.ne.jp and Ogawa
87 Hirofumi suggests a patch at
88 http://groups.google.com/groups?hl=sv&lr=&ie=UTF-8&selm=87snmba4id.fsf
89 %40devron.myhome.or.jp None of these patches seems to have been
90 included in version 6.12 as 6.12 still has this problem.
94 New idea: use last line (or n'th line) of output as input to new
97 I often find myself typing something like:
100 /usr/local/stow/share/texmf/doc/latex/general/lshort.dvi . . .
101 /usr/local/store/share/texmf/doc/latex/general/lshort.dvi
103 >xdvi /usr/local/store/share/texmf/doc/latex/general/lshort.dvi
105 Now the way I accomplish writing the last line, is by moving the mouse
106 over the last line, and the copy paste it. It would be very nice, if
107 the shell could keep the last n lines of output in a buffer. This way
108 one could avoid using the mouse by typing something like:
112 which would insert the last line of output, similarly <M-2> could
113 insert the second last line of output. (the exact commands used is of
114 course configured via bindkey).
116 This could save me a couple of times to the mouse everyday -
119 The shell does not capture any output from commands it runs, so
120 this is really more a feature for the terminal (be it hardware
123 Fix memory leak related to aliasrun(). Precmd, Cwdcmd etc. leak
126 Fix migrate -site $$... Seems to hang... (aix370)
128 Fix history in loops.
130 New idea: sed operations on variables.
132 Lots of people seem to like the idea to be able to do sed type
133 operations on shell variables. Maybe we can extend the syntax of the
134 variable editing to understand string operations. So I would like to
137 > set a="this is a STRING"
147 Subscript out of bounds.
149 Subscript out of bounds.
150 > echo $a:[1-1]:u$a:[2-].
155 Fix pipelines that contain builtins so that they behave correctly.
157 I tried to fix that (most of the code is in sh.sem.c, but it works
158 only for non POSIX machines cause otherwise the setpgid() I added
161 Fix the correct code... How to do that involves A.I....
163 Rewrite the whole thing. It has taken to much beating over the
166 Add another hook like precmd to be executed after the prompt but
169 Add instructions for using configure in the README file.
171 Make manual page references links in the HTML version of the manual.
173 It is possible to match the words with ([0-9]) after them. Links could
174 be using the manual page CGI at http://www.tac.eu.org/cgi-bin/man-cgi
177 Add OpenBSD?? to the Makefile, etc.
179 A Csh compatability mode would be nice: I know tcsh is supposed to be
180 fully csh compatible, but csh scripts containing such constructs as
181 '$<' , 'if ( -d $file ) cd $file' or any of a great number of other
182 valid csh commands, will produce syntax errors or the like with tcsh,
183 which is frustrating when writing/maintaining csh scripts which have
184 to run on systems with only tcsh and systems with only csh. If such a
185 thing exists, I couldn't find it after searching the man page for two
186 hours, and it should be better documented
188 Add hooks for command completion Either for a dynamically loaded
189 library, or a callback to another program that allows another pass to
190 complete the command. As a trivial example, the module could duplicate
191 the functionality of aliases. A tcsh_mud.so could define sigh, groan,
192 cheer, lol, etc to produce output if they weren't actually valid
195 Properly deal with : in filename substitution
201 expand it properly to something like
203 blah.foo:baz.foo:bob.foo:bar.foo
205 It already does this, if you have a file named like that... --Kim
207 Directory commands don't handle blanks in filenames. If I have an
208 environment variable such as:
210 % setenv TOMCAT '/c/Program? Files/Apache? Software Foundation/Tomcat? 5.0'
211 and then do the following, setenv complains that it has too many arguments.
214 setenv: Too many arguments
216 /c/Program? Files/Apache? Software Foundation/Tomcat? 5.0 /tmp
218 /c/Program? Files/Apache? Software Foundation/Tomcat? 5.0
219 setenv: Too many arguments.
221 /tmp /c/Program? Files/Apache? Software Foundation/Tomcat? 5.0
223 /c/Program? Files/Apache? Software Foundation/Tomcat? 5.0 /tmp
224 setenv: Too many arguments.
226 Wish tcsh would feature fc (fix command) as in bash !Wish tcsh would
227 featuer fc (fix command) as in bash !
229 i wish for read-only CVS access to the sources (as i am on the
232 Functions would be useful! As would being able to redirect stderr (or
233 other file descriptors) independently of stdout! -- Rohan Talip
235 Don't complete commands with non-executable files. For example if I
236 have a file called README in a directory in the PATH, and I type R TAB
237 tcsh will complete README as a command. But README does not have the x
238 bit set, so it's kind of pointless to have that completion.
240 --> Setting the shell variable "recognize_only_executables" will give
241 you this behavior. --Waz
243 If I have in my .tcshrc: complete {cd,pushd} p/1/d/ and I type
244 "complete cd" at the shell prompt nothing is printed. It would be nice
245 if {cd,pushd} p/1/d/ was printed.
247 --> I had programmed this feature a while ago but have not submitted
248 it because the implementation is not robust enough to keep TCSH from
249 crashing when special characters are part of the pattern. I'll get
250 back to it at some point! --Waz
252 It would be nice if "set autolist" would be on by default.
256 Unicode (UTF-8) doesn't seem to work. It's not even possible to "make
257 catalogs" in unicode environment. Also unicode support (and other
258 multibyte encodings) should depend on environment variables
259 (LC_CTYPE), not on "set dspmbyte". On unicode terminal translations
260 show empty characters instead of messages.
262 In addition to message catalogs, there are more problems:
263 ipi:~/test/tcsh/bin> ls
265 ipi:~/test/tcsh/bin> set dspmbyte utf8
266 ipi:~/test/tcsh/bin> ls ???
269 Unicode is used more and more, and is default on many environments, so
270 this really should be fixed. --mpaananen
271 _________________________________________________________________
273 When I have a script called from complete I would like to have the the
274 existing text from the command line passed to that script so that it
275 can look at all existing words to detemine what it should output as
280 complete prog 'n/-x/`myscript`'
284 > prog -a A -b B -x <TAB>
286 The script would get 'prog -a A -b B -x ' which would allow the script
287 to base its -x completions on the options given for -a and -b (or if
288 they aren't present give nothing - or a message saying that they are
289 required). Setting a temporary environment variable before executing
290 the command would also work and would probably be safer.
292 Perhaps this info is already available as a special variable that can
293 be manually passed to the script: complete prog 'n/-x/`myscript
296 Update: I looked into this further by actually downloading the code
297 and looking through it. It doesn't seem that this information is
298 available anywhere, but I did manage to achieve what I wanted by
299 adding the following two lines around the call to tw_complete (line
300 278, tw.parse.c 6.12.00):
302 added> tsetenv(STRCURRCMDLINE, (Char *)&qline);
303 looking = tw_complete(cmd_start, &wordp, &pat, looking, &suf);
305 added> Unsetenv(STRCURRCMDLINE);
307 And I added a definition for STRCURRCMDLINE to be "CURRCMDLINE".
309 This provides the environment variable CURRCMDLINE to any
310 script/program running under complete. The only issue I see is picking
311 a sufficiently obscure environment variable that noone else is likely
312 to use, but have it readable enough to understand what it is for. It
313 also shouldn't overwrite an existing ENV variable if it is already in
315 _________________________________________________________________
317 Home | RecentChanges | Preferences
318 Edit text of this page | View other revisions
319 Last edited March 25, 2004 10:27 (diff)
320 Search: ____________________