You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+12-9Lines changed: 12 additions & 9 deletions
Original file line number
Diff line number
Diff line change
@@ -9,16 +9,22 @@
9
9
10
10
Julia has `@edit`, `@less`, etc. which are very handy for reading the implementation of functions. However, you need to specify a "good enough" set of (type) parameters for them to find the location of the code.
11
11
12
-
Instead, `InteractiveCodeSearch` provides a way to interactively choose the code you want to read.
12
+
Instead, `InteractiveCodeSearch` provides a few macros to interactively choose the code you want to read.
13
+
14
+
## Features
15
+
16
+
* Interactively choose a method signature before opening the code location in your editor.
17
+
* Various ways to search methods, such as: by function name `@search show`, function call expression `@search show(stdout, "hello")`, function call signature `@search show(::IO, ::String)`, module name `@search Base`, argument value `@searchmethods 1`, argument type `@searchmethods ::Int`, and return type `@searchreturn Int`.
18
+
* Interactively search history. It works in IJulia as well.
13
19
14
20
## Examples
15
21
16
22
```julia
17
23
using InteractiveCodeSearch
18
24
@search show # search method definitions
19
25
@searchmethods1# search methods defined for integer
20
-
@searchhistory# search history (Julia >= 0.7)
21
-
@searchreturn String Pkg # search methods returning a given type (Julia >= 0.7)
26
+
@searchhistory# search history (Julia ≥ 0.7)
27
+
@searchreturn String Pkg # search methods returning a given type (Julia ≥ 0.7)
22
28
```
23
29
24
30
## Requirements
@@ -159,14 +165,11 @@ InteractiveCodeSearch.CONFIG.auto_open = false # open matcher even when there
159
165
160
166
**Using InteractiveCodeSearch.jl by default**
161
167
162
-
Use the same trick as [Revise.jl](https://github.com/timholy/Revise.jl/tree/v0.6); i.e., put the following code in your `~/.julia/config/startup.jl` (>= Julia 0.7) or `~/.juliarc.jl` (Julia 0.6):
168
+
Put the following code in your `~/.julia/config/startup.jl` (≥ Julia 0.7) or `~/.juliarc.jl` (Julia 0.6):
0 commit comments