PageRenderTime 31ms CodeModel.GetById 19ms app.highlight 5ms RepoModel.GetById 1ms app.codeStats 0ms

/contrib/tcsh/WishList

https://bitbucket.org/freebsd/freebsd-head/
#! | 309 lines | 231 code | 78 blank | 0 comment | 0 complexity | edebdb3835dbd103fa3ddfb39a8d4976 MD5 | raw file
  1
  2                                [Home] WishList
  3
  4   Home | RecentChanges | Preferences
  5     _________________________________________________________________
  6
  7   Surprised by this behavior...is this a bug?
  8
  9   (Goal:  e.g.  distinguish  between  completely  numeric args/names and
 10   those containing non-numerics)
 11
 12 % touch 1023 pex103 pex103a 104a z101 16a02 1999 2001 2001_A_Space_Odyssey
 13 % ls -1 *[^0-9]*
 14 104a
 15 16a02
 16 2001_A_Space_Odyssey
 17 pex103
 18 pex103a
 19 z101
 20 # (great, looks good to me. Got everything containing a nonnumeric, no more, n
 21o less.)
 22
 23 % foreach p ( 1023 pex103 pex103a 104a z101 16a02 1999 2001 2001_A_Space_Odyss
 24ey )
 25 foreach? if ( $p !~ *[^0-9]* ) echo $p
 26 foreach? end
 27 # (no output. Huh?)
 28
 29 % foreach p ( 1023 pex103 pex103a 104a z101 16a02 1999 2001 2001_A_Space_Odyss
 30ey )
 31 foreach? if ( $p =~ *[^0-9]* ) echo $p
 32 foreach? end
 33 1023           (!)
 34 pex103
 35 pex103a
 36 104a
 37 z101
 38 16a02
 39 1999           (!)
 40 2001           (!)
 41 2001_A_Space_Odyssey
 42 # (Huh?)
 43
 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
 48   something.
 49
 50   tcsh 6.09.00
 51
 52   - bhooglan
 53     _________________________________________________________________
 54
 55   Wish "tcsh -l" would accept other flags. At least "-c".
 56
 57   Currently I can't get ssh to have the right environment unless it is a
 58   login  shell. The .ssh/environment doesn't work for me because I login
 59   to  different  machines  with  different environments. One thing to do
 60   would  be  to not have the different environment for login compared to
 61   other shells, but what I would really like is something like...
 62
 63   ssh remote_application_server "tcsh -l -c application"
 64
 65   The "ssh -t" doesn't work for me and I don't know why.
 66
 67   Thanks Tim
 68
 69   Fix limit vmemoryuse in Linux
 70
 71   In  Linux  tcsh  is  unable  to  limit  vmemoryuse.  This  is  because
 72   RLIMIT_VMEM isn't defined, instead Linux has RLIMIT_AS which means the
 73   same.  On  Google  groups  I  found  patches  suggested by Komazaki at
 74   http://groups.google.com/groups?hl=sv&lr=&ie=UTF-8&oe=ISO-2022-JP&selm
 75   =m3snmczvfc.wl%40thinkpad.osk.3web.ne.jp.osk.3web.ne.jp    and   Ogawa
 76   Hirofumi suggests a patch at
 77   http://groups.google.com/groups?hl=sv&lr=&ie=UTF-8&selm=87snmba4id.fsf
 78   %40devron.myhome.or.jp  None  of  these  patches  seems  to  have been
 79   included in version 6.12 as 6.12 still has this problem.
 80
 81   /Henrik??
 82
 83   New  idea:  use  last  line  (or  n'th line) of output as input to new
 84   command.
 85
 86   I often find myself typing something like:
 87
 88   >locate lshort
 89   /usr/local/stow/share/texmf/doc/latex/general/lshort.dvi    .    .   .
 90   /usr/local/store/share/texmf/doc/latex/general/lshort.dvi
 91
 92   >xdvi /usr/local/store/share/texmf/doc/latex/general/lshort.dvi
 93
 94   Now the way I accomplish writing the last line, is by moving the mouse
 95   over  the  last line, and the copy paste it. It would be very nice, if
 96   the  shell could keep the last n lines of output in a buffer. This way
 97   one could avoid using the mouse by typing something like:
 98
 99   >xdvi <M-1>
100
101   which  would  insert  the  last  line of output, similarly <M-2> could
102   insert  the second last line of output. (the exact commands used is of
103   course configured via bindkey).
104
105   This  could  save  me  a  couple  of  times  to  the  mouse everyday -
106   di010070@diku.dk
107
108          The shell does not capture any output from commands it runs, so
109          this  is really more a feature for the terminal (be it hardware
110          or software). --Kim
111
112   Fix  memory  leak  related  to  aliasrun().  Precmd,  Cwdcmd etc. leak
113   memory.
114
115   Fix migrate -site $$... Seems to hang... (aix370)
116
117   Fix history in loops.
118
119   New idea: sed operations on variables.
120
121   Lots  of  people  seem  to  like  the  idea  to be able to do sed type
122   operations  on  shell variables. Maybe we can extend the syntax of the
123   variable  editing  to understand string operations. So I would like to
124   be able to use:
125
126> set a="this is a STRING"
127> echo $a:[3-]
128is is a STRING
129> echo $a:[#]
13016
131> echo $a:[6-7]
132is
133> echo $a:[-2]
134ng
135> echo $a:[-20]
136Subscript out of bounds.
137> echo $a:[2-20]
138Subscript out of bounds.
139> echo $a:[1-1]:u$a:[2-].
140This is a string.
141
142   </blockquote>
143
144   Fix pipelines that contain builtins so that they behave correctly.
145
146   I  tried  to  fix  that (most of the code is in sh.sem.c, but it works
147   only  for  non  POSIX  machines  cause otherwise the setpgid() I added
148   fails).
149
150   Fix the correct code... How to do that involves A.I....
151
152   Rewrite  the  whole  thing.  It  has  taken  to  much beating over the
153   years...
154
155   Add  another  hook  like  precmd  to  be executed after the prompt but
156   before the command.
157
158   Add instructions for using configure in the README file.
159
160   Make manual page references links in the HTML version of the manual.
161
162   It is possible to match the words with ([0-9]) after them. Links could
163   be  using the manual page CGI at http://www.tac.eu.org/cgi-bin/man-cgi
164   for content.
165
166   Add OpenBSD?? to the Makefile, etc.
167
168   A  Csh compatability mode would be nice: I know tcsh is supposed to be
169   fully  csh  compatible,  but csh scripts containing such constructs as
170   '$<'  ,  'if  ( -d $file ) cd $file' or any of a great number of other
171   valid  csh commands, will produce syntax errors or the like with tcsh,
172   which  is  frustrating when writing/maintaining csh scripts which have
173   to  run on systems with only tcsh and systems with only csh. If such a
174   thing  exists, I couldn't find it after searching the man page for two
175   hours, and it should be better documented
176
177   Add  hooks  for  command  completion  Either  for a dynamically loaded
178   library,  or a callback to another program that allows another pass to
179   complete the command. As a trivial example, the module could duplicate
180   the  functionality of aliases. A tcsh_mud.so could define sigh, groan,
181   cheer,  lol,  etc  to  produce  output  if they weren't actually valid
182   commands.
183
184   Properly deal with : in filename substitution
185
186   Given something like
187
188   blah.foo:*.foo
189
190   expand it properly to something like
191
192   blah.foo:baz.foo:bob.foo:bar.foo
193
194   It already does this, if you have a file named like that... --Kim
195
196   Directory  commands  don't  handle  blanks  in filenames. If I have an
197   environment variable such as:
198
199% setenv TOMCAT '/c/Program? Files/Apache? Software Foundation/Tomcat? 5.0'
200and then do the following, setenv complains that it has too many arguments.
201% cd /tmp
202% cd "$TOMCAT"
203setenv: Too many arguments
204% dirs
205/c/Program? Files/Apache? Software Foundation/Tomcat? 5.0 /tmp
206% pushd "$TOMCAT"
207/c/Program? Files/Apache? Software Foundation/Tomcat? 5.0
208setenv: Too many arguments.
209% pushd /tmp
210/tmp /c/Program? Files/Apache? Software Foundation/Tomcat? 5.0
211% pushd
212/c/Program? Files/Apache? Software Foundation/Tomcat? 5.0 /tmp
213setenv: Too many arguments.
214
215   Wish  tcsh  would feature fc (fix command) as in bash !Wish tcsh would
216   featuer fc (fix command) as in bash !
217
218   i  wish  for  read-only  CVS  access  to  the  sources (as i am on the
219   bleeding egde)
220
221   Functions  would be useful! As would being able to redirect stderr (or
222   other file descriptors) independently of stdout! -- Rohan Talip
223
224   Don't  complete  commands  with non-executable files. For example if I
225   have a file called README in a directory in the PATH, and I type R TAB
226   tcsh will complete README as a command. But README does not have the x
227   bit set, so it's kind of pointless to have that completion.
228
229   -->  Setting the shell variable "recognize_only_executables" will give
230   you this behavior. --Waz
231
232   If  I  have  in  my  .tcshrc:  complete  {cd,pushd}  p/1/d/ and I type
233   "complete cd" at the shell prompt nothing is printed. It would be nice
234   if {cd,pushd} p/1/d/ was printed.
235
236   -->  I  had programmed this feature a while ago but have not submitted
237   it  because  the implementation is not robust enough to keep TCSH from
238   crashing  when  special  characters  are part of the pattern. I'll get
239   back to it at some point! --Waz
240
241   It would be nice if "set autolist" would be on by default.
242
243   ---
244
245   Unicode  (UTF-8) doesn't seem to work. It's not even possible to "make
246   catalogs"  in  unicode  environment.  Also  unicode support (and other
247   multibyte   encodings)   should   depend   on   environment  variables
248   (LC_CTYPE),  not  on  "set dspmbyte". On unicode terminal translations
249   show empty characters instead of messages.
250
251   In addition to message catalogs, there are more problems:
252ipi:~/test/tcsh/bin> ls
253tcsh  едц
254ipi:~/test/tcsh/bin> set dspmbyte utf8
255ipi:~/test/tcsh/bin> ls ???
256ls: No match.
257
258   Unicode is used more and more, and is default on many environments, so
259   this really should be fixed. --mpaananen
260     _________________________________________________________________
261
262   When I have a script called from complete I would like to have the the
263   existing  text  from the command line passed to that script so that it
264   can  look  at  all existing words to detemine what it should output as
265   the completion list.
266
267   For example:
268
269   complete prog 'n/-x/`myscript`'
270
271   Then when I do this:
272
273   > prog -a A -b B -x <TAB>
274
275   The script would get 'prog -a A -b B -x ' which would allow the script
276   to  base  its -x completions on the options given for -a and -b (or if
277   they  aren't  present give nothing - or a message saying that they are
278   required).  Setting  a temporary environment variable before executing
279   the command would also work and would probably be safer.
280
281   Perhaps  this info is already available as a special variable that can
282   be  manually  passed  to  the  script:  complete  prog 'n/-x/`myscript
283   $cmd_line`'?
284
285   Update:  I  looked  into this further by actually downloading the code
286   and  looking  through  it.  It  doesn't  seem that this information is
287   available  anywhere,  but  I  did  manage  to achieve what I wanted by
288   adding  the  following  two lines around the call to tw_complete (line
289   278, tw.parse.c 6.12.00):
290
291   added> tsetenv(STRCURRCMDLINE, (Char *)&qline);
292        looking = tw_complete(cmd_start, &wordp, &pat, looking, &suf);
293
294   added> Unsetenv(STRCURRCMDLINE);
295
296   And I added a definition for STRCURRCMDLINE to be "CURRCMDLINE".
297
298   This   provides   the   environment   variable   CURRCMDLINE   to  any
299   script/program running under complete. The only issue I see is picking
300   a  sufficiently obscure environment variable that noone else is likely
301   to  use,  but have it readable enough to understand what it is for. It
302   also  shouldn't overwrite an existing ENV variable if it is already in
303   use.
304     _________________________________________________________________
305
306   Home | RecentChanges | Preferences
307   Edit text of this page | View other revisions
308   Last edited March 25, 2004 10:27 (diff)
309   Search: ____________________