Skip to content

Commit c3828e8

Browse files
authored
calling the command sc will act as calling the command searchcode (#24)
2 parents 287a323 + 4c4acdf commit c3828e8

5 files changed

Lines changed: 33 additions & 32 deletions

File tree

README.md

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -2,18 +2,23 @@
22
<p align="center"></p>
33

44
```commandline
5-
searchcode --help
5+
searchcode search "import module"
6+
```
7+
8+
Or simply:
9+
10+
```commandline
11+
sc search "import module"
612
```
713

814
```python
15+
from pprint import pprint
916
from searchcode import Searchcode
1017

1118
sc = Searchcode(user_agent="My-Searchcode-script")
1219
search = sc.search(query="import module")
1320

14-
results = search.get("results")
15-
for result in results:
16-
print(result)
21+
pprint(search)
1722
```
1823

1924
## Installation
@@ -62,14 +67,13 @@ searchcode "import module"
6267
#### SDK
6368

6469
```python
70+
from pprint import pprint
6571
from searchcode import Searchcode
6672

6773
sc = Searchcode(user_agent="My-Searchcode-script")
6874
search = sc.search(query="import module")
6975

70-
results = search.get("results")
71-
for result in results:
72-
print(result)
76+
pprint(search)
7377
```
7478

7579
---
@@ -90,8 +94,7 @@ from searchcode import Searchcode
9094
sc = Searchcode(user_agent="My-Searchcode-script")
9195
search = sc.search(query="import module", languages=["Java", "JavaScript"])
9296

93-
results = search.get("results")
94-
for result in results:
97+
for result in search.get("results"):
9598
print(result.language)
9699
```
97100

@@ -113,8 +116,7 @@ from searchcode import Searchcode
113116
sc = Searchcode(user_agent="My-Searchcode-script")
114117
search = sc.search(query="import module", sources=["BitBucket", "CodePlex"])
115118

116-
results = search.get("results")
117-
for result in results:
119+
for result in search.get("results"):
118120
print(result.filename)
119121
```
120122

@@ -136,9 +138,8 @@ from searchcode import Searchcode
136138

137139
sc = Searchcode(user_agent="My-Searchcode-script")
138140
search = sc.search(query="import module", lines_of_code_gt=500, lines_of_code_lt=1000)
139-
results = search.get("results")
140141

141-
for result in results:
142+
for result in search.get("results"):
142143
print(result)
143144
```
144145

pyproject.toml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[tool.poetry]
22
name = "searchcode"
3-
version = "0.3.0"
3+
version = "0.3.1"
44
description = "Simple, comprehensive code search."
55
authors = ["Ritchie Mwewa <rly0nheart@duck.com>"]
66
license = "GPLv3+"
@@ -31,4 +31,5 @@ requires = ["poetry-core"]
3131
build-backend = "poetry.core.masonry.api"
3232

3333
[tool.poetry.scripts]
34+
sc = "searchcode.cli:cli" # shortened command
3435
searchcode = "searchcode.cli:cli"

searchcode/api.py

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,6 @@ def search(
5757
:rtype: Dict
5858
"""
5959

60-
results: t.List = []
6160
language_ids = (
6261
[] if not languages else get_language_ids(language_names=languages)
6362
)
@@ -97,16 +96,16 @@ def code(self, __id: int) -> str:
9796
return response.get("code")
9897

9998
# This is deprecated (for now).
100-
# def related(_id: int) -> SimpleNamespace:
99+
# def related(_id: int) -> Dict:
101100
# """
102101
# Returns an array of results given a searchcode unique code id which are considered to be duplicates.
103102
#
104103
# The matching is slightly fuzzy allowing so that small differences between files are ignored.
105104

106105
# :param _id: The unique identifier of the code result.
107106
# :type _id: int
108-
# :return: A list of related results as a SimpleNamespace object.
109-
# :rtype: SimpleNamespace
107+
# :return: A list of related results as a dictobject.
108+
# :rtype: Dict
110109
# """
111110

112111
# response = _get_response(endpoint=f"{_BASE_API_ENDPOINT}/related_results/{_id}")

searchcode/cli.py

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
from typing import Optional, List, Dict
1+
import typing as t
22

33
import rich_click as click
44
from rich import print as rprint, box
@@ -17,7 +17,7 @@
1717
@click.group()
1818
def cli():
1919
"""
20-
Searchcode CLI
20+
Searchcode
2121
2222
Simple, comprehensive code search.
2323
"""
@@ -69,11 +69,11 @@ def search(
6969
page: int = 0,
7070
per_page: int = 100,
7171
pretty: bool = False,
72-
lines_of_code_lt: Optional[int] = None,
73-
lines_of_code_gt: Optional[int] = None,
74-
languages: Optional[str] = None,
75-
sources: Optional[str] = None,
76-
callback: Optional[str] = None,
72+
lines_of_code_lt: t.Optional[int] = None,
73+
lines_of_code_gt: t.Optional[int] = None,
74+
languages: t.Optional[str] = None,
75+
sources: t.Optional[str] = None,
76+
callback: t.Optional[str] = None,
7777
):
7878
"""
7979
Query the code index and (returns 100 results by default).
@@ -120,12 +120,12 @@ def code(id: int):
120120
rprint(syntax)
121121

122122

123-
def __print_table(records: List[Dict], ignore_keys: List[str] = None) -> None:
123+
def __print_table(records: t.List[t.Dict], ignore_keys: t.List[str] = None) -> None:
124124
"""
125125
Creates a rich table from a list of dict objects,
126126
ignoring specified keys.
127127
128-
:param records: List of SimpleNamespace instances.
128+
:param records: List of dict objects.
129129
:param ignore_keys: List of keys to exclude from the table.
130130
:return: None. Prints the table using rich.
131131
"""

searchcode/filters.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
from typing import Literal, List
1+
import typing as t
22

33

44
__all__ = ["CODE_LANGUAGES", "CODE_SOURCES", "get_language_ids", "get_source_ids"]
55

6-
CODE_SOURCES = Literal[
6+
CODE_SOURCES = t.Literal[
77
"Google Code",
88
"GitHub",
99
"BitBucket",
@@ -21,7 +21,7 @@
2121
"Sr.ht",
2222
]
2323

24-
CODE_LANGUAGES = Literal[
24+
CODE_LANGUAGES = t.Literal[
2525
"XAML",
2626
"ASP.NET",
2727
"HTML",
@@ -370,7 +370,7 @@
370370
]
371371

372372

373-
def get_source_ids(source_names: List[CODE_SOURCES]) -> List[int]:
373+
def get_source_ids(source_names: t.List[CODE_SOURCES]) -> t.List[int]:
374374
"""
375375
Gets a list of source IDs corresponding to the given source names.
376376
@@ -401,7 +401,7 @@ def get_source_ids(source_names: List[CODE_SOURCES]) -> List[int]:
401401
return [sources[name] for name in source_names if name in sources]
402402

403403

404-
def get_language_ids(language_names: List[CODE_LANGUAGES]) -> List:
404+
def get_language_ids(language_names: t.List[CODE_LANGUAGES]) -> t.List:
405405
"""
406406
Gets a list of language IDs corresponding to the given language names.
407407

0 commit comments

Comments
 (0)