1
2
3
4
5
6
7
8
9
10
|
# -*- tclsh -*-
# FILE: "/home/joze/src/tclreadline/tclreadlineCompleter.tcl"
# LAST MODIFICATION: "Tue Sep 21 21:19:07 1999 (joze)"
# (C) 1998, 1999 by Johannes Zellner, <johannes@zellner.org>
# $Id$
# ---
#
# tclreadline -- gnu readline for tcl
# Copyright (C) 1999 Johannes Zellner
#
|
|
|
1
2
3
4
5
6
7
8
9
10
|
# -*- tclsh -*-
# FILE: "/home/joze/src/tclreadline/tclreadlineCompleter.tcl"
# LAST MODIFICATION: "Thu Sep 23 02:16:55 1999 (joze)"
# (C) 1998, 1999 by Johannes Zellner, <johannes@zellner.org>
# $Id$
# ---
#
# tclreadline -- gnu readline for tcl
# Copyright (C) 1999 Johannes Zellner
#
|
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
|
# was found. Check, if it's a proc and return the
# arguments.
#
if {![string length ${namespc}]} {
set namespc ::
}
if {[string length [uplevel [info level] \
namespace eval ${namespc} [list ::info proc $alias]]]} {
set args [uplevel [info level] \
namespace eval ${namespc} [list info args $alias]]
set arg [lindex $args [expr $pos - 1]]
if {"" != $arg && "args" != $arg} {
if {[uplevel [info level] namespace eval \
${namespc} [list info default $alias $arg junk]]} {
return [DisplayHints ?$arg?]
} else {
return [DisplayHints <$arg>]
}
}
}
# check if the command is an object of known class.
#
if [ObjectClassCompleter ${part} ${start} ${end} ${line} ${pos} res] {
return ${res}
|
|
>
>
|
|
|
|
|
|
|
|
|
|
>
>
>
|
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
|
# was found. Check, if it's a proc and return the
# arguments.
#
if {![string length ${namespc}]} {
set namespc ::
}
if {[string length [uplevel [info level] \
namespace eval ${namespc} [list ::info proc $alias]]]
} {
if ![string length [string trim $part]] {
set args [uplevel [info level] \
namespace eval ${namespc} [list info args $alias]]
set arg [lindex $args [expr $pos - 1]]
if {"" != $arg && "args" != $arg} {
if {[uplevel [info level] namespace eval \
${namespc} [list info default $alias $arg junk]]} {
return [DisplayHints ?$arg?]
} else {
return [DisplayHints <$arg>]
}
}
} else {
return ""; # enable file name completion
}
}
# check if the command is an object of known class.
#
if [ObjectClassCompleter ${part} ${start} ${end} ${line} ${pos} res] {
return ${res}
|